body,html{margin:0;padding:0;background:var(--bg)}:root{--bg:#0b0d12;--panel:#11141b;--panel-2:#171b24;--text:#e8eaf0;--text-strong:#ffffff;--mix-ink:#ffffff;--ink-a03:rgba(255,255,255,0.03);--ink-a04:rgba(255,255,255,0.04);--ink-a05:rgba(255,255,255,0.05);--ink-a06:rgba(255,255,255,0.06);--ink-a07:rgba(255,255,255,0.07);--ink-a08:rgba(255,255,255,0.08);--ink-a09:rgba(255,255,255,0.09);--ink-a10:rgba(255,255,255,0.1);--ink-a12:rgba(255,255,255,0.12);--ink-a14:rgba(255,255,255,0.14);--ink-a15:rgba(255,255,255,0.15);--ink-a25:rgba(255,255,255,0.25);--ink-a35:rgba(255,255,255,0.35);--ink-a40:rgba(255,255,255,0.4);--ink-a50:rgba(255,255,255,0.5);--ink-a55:rgba(255,255,255,0.55);--ink-a60:rgba(255,255,255,0.6);--ink-a65:rgba(255,255,255,0.65);--ink-a70:rgba(255,255,255,0.7);--ink-a85:rgba(255,255,255,0.85);--ink-a90:rgba(255,255,255,0.9);--hue-green:#4ade80;--hue-green-soft:#6ee7a0;--hue-green-dim:rgba(74,222,128,0.85);--hue-green-bg:rgba(74,222,128,0.18);--hue-blue:#5b9eff;--hue-blue-soft:#9dc3ff;--hue-blue-dim:rgba(91,158,255,0.9);--hue-blue-bg:rgba(91,158,255,0.18);--hue-purple:#a78bfa;--hue-purple-soft:#c4b5fd;--hue-purple-dim:rgba(167,139,250,0.85);--hue-purple-bg:rgba(167,139,250,0.18);--hue-red:#f2a6a0;--hue-red-strong:#f28b82;--hue-red-bg:rgba(242,139,130,0.16);--hue-red-border:rgba(242,139,130,0.35);--hue-amber:#fbbf24;--hue-gray:#9aa4b2;--pub-stage-in-review:var(--hue-purple);--pub-stage-planned:var(--hue-amber);--pub-stage-in-progress:var(--hue-blue);--pub-stage-completed:var(--hue-green);--pub-stage-rejected:var(--hue-red-strong);--overlay:rgba(3,5,10,0.72);--shadow-modal:0 24px 60px rgba(0,0,0,0.5);--pub-auth-success-text:#86efac;--pub-auth-success-surface:#173927;--pub-auth-success-border:#4ade80;color-scheme:dark}.pub-root{display:flex;flex-direction:column;background:var(--bg);color:var(--text);min-height:100vh;font-family:system-ui,sans-serif}.pub-header{justify-content:space-between;padding:18px 28px;border-bottom:1px solid var(--ink-a08)}.pub-brand,.pub-header{display:flex;align-items:center}.pub-brand{gap:12px}.pub-logo{height:40px;width:auto}.pub-brand-tag{font-size:13px;letter-spacing:.4px;color:var(--ink-a50);border-left:1px solid var(--ink-a15);padding-left:12px}.pub-header-right{display:flex;align-items:center;gap:16px}.pub-feedback-btn{font-size:13px;font-weight:600;padding:8px 16px;border-radius:8px;background:var(--accent);color:#08111f;text-decoration:none;white-space:nowrap}.pub-feedback-btn:hover{filter:brightness(1.08)}.pub-switch{display:flex;gap:8px;font-size:13px}.pub-switch [data-on]{color:var(--accent);font-weight:600}.pub-switch a{color:var(--ink-a60);text-decoration:none}.pub-main{flex:1 0 auto;max-width:1100px;margin:0 auto;padding:28px}.pub-hero{margin-bottom:36px}.pub-hero-label{text-transform:uppercase;letter-spacing:.6px;font-size:12px;opacity:.7;margin-bottom:12px}.pub-grid,.pub-hero-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.pub-section{--lane:var(--hue-gray);margin-bottom:26px;padding:16px 18px 18px;border-radius:14px;border:1px solid color-mix(in srgb,var(--lane) 22%,transparent);border-left:4px solid var(--lane);background:linear-gradient(180deg,color-mix(in srgb,var(--lane) 7%,transparent),color-mix(in srgb,var(--lane) 3%,transparent))}.pub-section[data-tone=progress]{--lane:var(--hue-blue)}.pub-section[data-tone=planned]{--lane:var(--hue-purple)}.pub-section[data-tone=considering]{--lane:var(--hue-amber)}.pub-section[data-tone=released]{--lane:var(--hue-green)}.pub-section-head{display:flex;align-items:center;gap:10px;margin-bottom:14px}.pub-section-dot{width:10px;height:10px;border-radius:50%;background:var(--lane);box-shadow:0 0 10px color-mix(in srgb,var(--lane) 70%,transparent)}.pub-section-head h2{font-size:15px;margin:0;text-transform:uppercase;letter-spacing:.06em;color:color-mix(in srgb,var(--lane) 80%,var(--mix-ink))}.pub-count{font-size:11px;font-weight:700;background:color-mix(in srgb,var(--lane) 20%,transparent);color:color-mix(in srgb,var(--lane) 85%,var(--mix-ink));padding:2px 9px;border-radius:10px}.pub-card{display:flex;flex-direction:column;width:100%;text-align:left;font:inherit;background:var(--ink-a04);border:1px solid var(--ink-a08);border-radius:10px;overflow:hidden;text-decoration:none;color:inherit;cursor:pointer;padding:0;transition:border-color .12s ease,transform .12s ease}.pub-card:hover{border-color:color-mix(in srgb,var(--accent) 55%,transparent);transform:translateY(-2px)}.pub-card-img{flex-shrink:0;width:100%;height:120px;background-size:cover;background-position:50%;display:flex;align-items:center;justify-content:center;font-size:30px}.pub-card-img--ph{opacity:.85}.pub-card-body{display:flex;flex-direction:column;flex:1;width:100%;box-sizing:border-box;padding:12px 14px}.pub-card-top{display:flex;gap:6px;align-items:center;margin-bottom:6px}.pub-status{font-size:10px;padding:2px 7px;border-radius:10px;background:color-mix(in srgb,var(--accent) 22%,transparent);color:var(--accent);font-weight:600}.pub-tag{font-size:9px;background:var(--ink-a08);padding:2px 6px;border-radius:6px;opacity:.85}.pub-card-title{font-size:14px;margin:0 0 5px}.pub-card-blurb{font-size:12px;opacity:.7;margin:0 0 10px;line-height:1.4}.pub-card-foot{margin-top:auto;border-top:1px solid var(--ink-a07);padding-top:8px}.pub-vote{font-size:12px;font-weight:600;background:var(--ink-a06);padding:3px 10px;border-radius:8px}.pub-vote--empty{opacity:.6;font-weight:400}.pub-tabs{display:flex;gap:4px;flex-wrap:wrap;align-items:center;border-bottom:1px solid var(--ink-a10);margin-bottom:18px;padding-bottom:2px}.pub-tabs :is(button,a){font-size:14px;font-weight:600;padding:8px 14px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--ink-a60);cursor:pointer}.pub-tabs :is(button,a):hover{color:var(--ink-a90)}.pub-tabs :is(button,a)[data-on=true]{color:var(--accent);border-bottom-color:var(--accent)}.pub-secondary{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.pub-secondary .pub-chips,.pub-secondary .pub-search{margin-bottom:0}.pub-chips{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:20px}.pub-chips button{font-size:12px;padding:4px 10px;border-radius:8px;border:1px solid var(--ink-a12);background:transparent;color:inherit;cursor:pointer}.pub-chips button[data-on=true]{background:var(--accent);color:#000;border-color:var(--accent)}.pub-chips button:disabled{opacity:.45;cursor:default}.pub-search{width:100%;max-width:320px;margin-bottom:20px;padding:7px 12px;border-radius:8px;border:1px solid var(--ink-a12);background:transparent;color:inherit;font-size:13px}.pub-search::placeholder{color:var(--ink-a40)}.pub-released summary{cursor:pointer;font-size:14px;font-weight:600}.pub-released-list{list-style:none;padding:10px 0 0;margin:0}.pub-released-list li a{display:flex;gap:8px;align-items:center;padding:6px 0;color:inherit;text-decoration:none;font-size:13px;opacity:.85}.pub-footer{text-align:center;padding:28px;border-top:1px solid var(--ink-a08)}.pub-footer a,.pub-released-list li a:hover{color:var(--accent)}.pub-fb-cta{margin:24px 0 8px;padding:18px 20px;border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);background:color-mix(in srgb,var(--accent) 10%,transparent);border-radius:12px;text-align:center}.pub-fb-cta a{color:var(--accent);font-weight:600;font-size:14px;text-decoration:none}.pub-fb-cta a:hover{text-decoration:underline}@media (max-width:760px){.pub-grid,.pub-hero-grid{grid-template-columns:1fr}}@media (max-width:520px){.pub-header{flex-wrap:wrap;gap:10px;padding:14px 16px}.pub-main{padding:20px 14px}.pub-modal{padding:0}.pub-modal-overlay{padding:4vh 10px}}.pub-detail{max-width:760px;margin:0 auto}.pub-back{color:var(--accent);text-decoration:none;font-size:13px}.pub-detail h1{font-size:26px;margin:14px 0 8px}.pub-detail-img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:12px;margin:16px 0}.pub-prose{line-height:1.6;opacity:.9;margin:16px 0 24px}.pub-prose a{color:var(--accent)}.pub-tabs :is(button,a)[data-state=released]{color:var(--hue-green-dim)}.pub-tabs :is(button,a)[data-state=under_development]{color:var(--hue-blue-dim)}.pub-tabs :is(button,a)[data-state=future]{color:var(--hue-purple-dim)}.pub-tabs :is(button,a)[data-on=true][data-state=released]{border-bottom-color:var(--hue-green);color:var(--hue-green)}.pub-tabs :is(button,a)[data-on=true][data-state=under_development]{border-bottom-color:var(--hue-blue);color:var(--hue-blue)}.pub-tabs :is(button,a)[data-on=true][data-state=future]{border-bottom-color:var(--hue-purple);color:var(--hue-purple)}.pub-release-meta{display:flex;align-items:center;gap:10px;font-size:12px;opacity:.75;margin:-6px 0 16px}.pub-release-state{font-size:11px;font-weight:700;padding:2px 9px;border-radius:10px}.pub-release-state[data-state=released]{background:var(--hue-green-bg);color:var(--hue-green-soft)}.pub-release-state[data-state=under_development]{background:var(--hue-blue-bg);color:var(--hue-blue-soft)}.pub-release-state[data-state=future]{background:var(--hue-purple-bg);color:var(--hue-purple-soft)}.pub-tag[data-state=released]{background:var(--hue-green-bg);color:var(--hue-green-soft)}.pub-tag[data-state=under_development]{background:var(--hue-blue-bg);color:var(--hue-blue-soft)}.pub-tag[data-state=future]{background:var(--hue-purple-bg);color:var(--hue-purple-soft)}.pub-modal-overlay{position:fixed;inset:0;background:var(--overlay);backdrop-filter:blur(3px);display:flex;align-items:flex-start;justify-content:center;padding:6vh 16px;z-index:100;overflow-y:auto}.pub-modal{position:relative;width:min(960px,100%);max-width:100%;background:var(--panel);border:1px solid var(--ink-a10);border-radius:12px;padding:0;box-shadow:var(--shadow-modal)}.pub-modal-close{position:absolute;top:12px;right:14px;font-size:26px;line-height:1;background:transparent;border:0;color:var(--ink-a55);cursor:pointer}.pub-modal-close:hover{color:var(--text-strong)}.pub-modal-top{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:10px}.pub-modal-title{font-size:22px;margin:0 0 14px}.pub-modal-img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:10px;margin-bottom:14px}.pub-modal-empty{font-size:13px;opacity:.6;margin:8px 0}.pub-modal-fb{margin-top:20px;padding-top:18px;border-top:1px solid var(--ink-a08)}.pub-fb-btn{display:inline-block;font-size:14px;font-weight:600;padding:10px 18px;border-radius:9px;background:var(--accent);color:#08111f;text-decoration:none}.pub-fb-btn:hover{filter:brightness(1.08)}.pub-fb-feedback{margin-top:16px}.pub-fb-stats{display:flex;gap:16px;font-size:13px;font-weight:600;opacity:.85;margin-bottom:10px}.pub-fb-comments{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.pub-fb-comments li{background:var(--ink-a04);border-radius:8px;padding:8px 12px;font-size:13px}.pub-fb-author{display:block;font-weight:600;font-size:12px;opacity:.75;margin-bottom:2px}.pub-fb-text{line-height:1.45;opacity:.9}.pub-fbx{display:flex;flex-direction:column;gap:14px;margin-top:4px}.pub-fbx-bar{display:flex;align-items:center;gap:14px}.pub-fbx-votegroup{display:inline-flex;align-items:stretch;border-radius:10px;border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);background:color-mix(in srgb,var(--accent) 10%,transparent);overflow:hidden}.pub-fbx-vdown,.pub-fbx-vup{font-size:13px;font-weight:700;padding:9px 14px;border:0;background:transparent;color:var(--accent);cursor:pointer;transition:background .15s ease}.pub-fbx-vdown:hover:not(:disabled),.pub-fbx-vup:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 22%,transparent)}.pub-fbx-vup[data-on=true]{background:var(--accent);color:#08111f}.pub-fbx-vdown:disabled,.pub-fbx-vup:disabled:not([data-on=true]){opacity:.35;cursor:default}.pub-fbx-vup[data-on=true]:disabled{cursor:default}.pub-fbx-vote-count{display:inline-flex;align-items:center;justify-content:center;min-width:34px;padding:0 6px;font-size:14px;font-weight:700;color:var(--accent);font-variant-numeric:tabular-nums;border-left:1px solid color-mix(in srgb,var(--accent) 25%,transparent);border-right:1px solid color-mix(in srgb,var(--accent) 25%,transparent)}.pub-fbx-ext:focus-visible,.pub-fbx-ghost:focus-visible,.pub-fbx-primary:focus-visible,.pub-fbx-vdown:focus-visible,.pub-fbx-vup:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 70%,transparent);outline-offset:-2px}@media (prefers-reduced-motion:reduce){.pub-fbx-vdown,.pub-fbx-vup{transition:none}}.pub-fbx-count{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;opacity:.85;font-variant-numeric:tabular-nums}.pub-fbx-ext{margin-left:auto;font-size:12px;color:var(--accent);text-decoration:none;white-space:nowrap}.pub-fbx-ext:hover{text-decoration:underline}.pub-fbx-id{border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);background:color-mix(in srgb,var(--accent) 6%,transparent);border-radius:12px;padding:14px 16px}.pub-fbx-id p{margin:0 0 12px;font-size:12.5px;line-height:1.5;opacity:.8}.pub-fbx-id-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:12px}.pub-fbx-field{flex:1 1 180px;min-width:0;display:flex;flex-direction:column;gap:4px}.pub-fbx-field span{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;opacity:.6}.pub-fbx-comment textarea,.pub-fbx-field input{background:var(--ink-a06);border:1px solid var(--ink-a14);border-radius:8px;color:inherit;font:inherit;font-size:13px;padding:9px 11px;width:100%;box-sizing:border-box}.pub-fbx-comment textarea::placeholder,.pub-fbx-field input::placeholder{color:var(--ink-a35)}.pub-fbx-comment textarea:focus,.pub-fbx-field input:focus{outline:2px solid color-mix(in srgb,var(--accent) 60%,transparent);outline-offset:1px}.pub-fbx-id-actions{display:flex;gap:8px}.pub-fbx-primary{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:600;padding:9px 18px;border-radius:8px;border:0;background:var(--accent);color:#08111f;cursor:pointer;transition:filter .15s ease}.pub-fbx-primary:hover:not(:disabled){filter:brightness(1.1)}.pub-fbx-primary:disabled{opacity:.45;cursor:default}.pub-fbx-ghost{font-size:13px;font-weight:600;padding:9px 14px;border-radius:8px;border:0;background:transparent;color:var(--ink-a60);cursor:pointer}.pub-fbx-ghost:hover{color:var(--ink-a90)}.pub-fbx-comment{display:flex;gap:8px;align-items:flex-end}.pub-fbx-comment textarea{flex:1;resize:vertical;min-height:44px}.pub-fbx-error{margin:0;font-size:12px;color:var(--hue-red-strong)}.pub-fbx-comments{list-style:none;margin:2px 0 0;padding:0;display:flex;flex-direction:column;gap:12px}.pub-fbx-comments li{display:flex;gap:10px;align-items:flex-start}.pub-fbx-avatar{flex:0 0 28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;background:color-mix(in srgb,var(--accent) 22%,transparent);color:var(--accent);margin-top:2px}.pub-fbx-comment-body{flex:1;min-width:0;background:var(--ink-a04);border-radius:10px;padding:8px 12px}.pub-fbx-comment-meta{display:flex;align-items:baseline;gap:8px;margin-bottom:2px}.pub-fbx-comment-author{font-weight:600;font-size:12.5px}.pub-fbx-comment-time{font-size:11px;opacity:.5}.pub-fbx-comment-text{margin:0;font-size:13px;line-height:1.5;opacity:.9;overflow-wrap:anywhere}.pub-fbx-skeleton{display:inline-block;border-radius:8px;background:linear-gradient(100deg,var(--ink-a05) 40%,var(--ink-a10) 50%,var(--ink-a05) 60%);background-size:200% 100%;animation:pub-fbx-shimmer 1.4s linear infinite}@keyframes pub-fbx-shimmer{to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.pub-fbx-skeleton{animation:none}}.pub-fbx-spinner{box-sizing:border-box;width:13px;height:13px;border-radius:50%;border:2px solid;border-top:2px solid transparent;display:inline-block;animation:pub-fbx-spin .7s linear infinite}@media (prefers-reduced-motion:reduce){.pub-fbx-spinner{animation:none}}@keyframes pub-fbx-spin{to{transform:rotate(1turn)}}@media (max-width:520px){.pub-fbx-bar{flex-wrap:wrap}.pub-fbx-ext{margin-left:0;flex-basis:100%}.pub-fbx-comment{flex-direction:column;align-items:stretch}}.pub-fbx{--vote-down:var(--hue-red-strong);--vote-down-soft:var(--hue-red-bg)}.pub-fbx-vdown:hover:not(:disabled):not([data-on=true]){background:var(--vote-down-soft);color:var(--vote-down)}.pub-fbx-vdown[data-on=true]{background:var(--vote-down);color:#1c0d10}.pub-fbx-vdown[data-on=true]:hover:not(:disabled){filter:brightness(1.06)}.pub-card-foot{display:flex;align-items:center;gap:10px}.pub-vote{font-variant-numeric:tabular-nums}.pub-card-comments{display:inline-flex;align-items:center;gap:5px;font-size:11px;opacity:.6;font-variant-numeric:tabular-nums}.pub-sort{display:flex;gap:6px;flex-wrap:wrap}.pub-sort button{font-size:12px;padding:4px 10px;border-radius:8px;border:1px solid var(--ink-a12);background:transparent;color:inherit;cursor:pointer}.pub-sort button[data-on=true]{background:var(--accent);color:#000;border-color:var(--accent)}.pub-sort button:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 70%,transparent);outline-offset:1px}.pub-fbx-modprompt{border:1px dashed var(--ink-a25);border-radius:12px;padding:12px 14px}.pub-fbx-modprompt p{margin:0 0 10px;font-size:12.5px;line-height:1.5;opacity:.8}.pub-fbx-modprompt-row{display:flex;gap:8px}.pub-fbx-modprompt-row input{flex:1;min-width:0;background:var(--ink-a06);border:1px solid var(--ink-a14);border-radius:8px;color:inherit;font:inherit;font-size:13px;padding:9px 11px;box-sizing:border-box}.pub-fbx-modprompt-row input::placeholder{color:var(--ink-a35)}.pub-fbx-modprompt-row input:focus{outline:2px solid color-mix(in srgb,var(--accent) 60%,transparent);outline-offset:1px}.pub-fbx-modbar{display:flex;align-items:center;gap:8px;margin-bottom:12px}.pub-fbx-modbadge{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:3px 9px;border-radius:10px;background:var(--vote-down-soft,var(--hue-red-bg));color:var(--hue-red)}.pub-fbx-modexit{font-size:11px;font-weight:600;padding:3px 9px;border-radius:8px;border:1px solid var(--ink-a15);background:transparent;color:var(--ink-a60);cursor:pointer}.pub-fbx-modexit:hover{color:var(--ink-a90);border-color:var(--ink-a35)}.pub-fbx-modbtn:focus-visible,.pub-fbx-modexit:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 70%,transparent);outline-offset:1px}.pub-fbx-comments li[data-hidden=true] .pub-fbx-comment-body{opacity:.55;border:1px dashed var(--hue-red-border)}.pub-fbx-hidden-tag{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:1px 6px;border-radius:6px;background:var(--hue-red-bg);color:var(--hue-red)}.pub-fbx-modbtn{margin-left:auto;font-size:11px;font-weight:600;padding:2px 8px;border-radius:6px;border:1px solid var(--ink-a15);background:transparent;color:var(--ink-a70);cursor:pointer;transition:border-color .15s ease,color .15s ease}.pub-fbx-modbtn:hover{color:var(--text-strong);border-color:var(--ink-a35)}.pub-fbx-modbtn-danger{margin-left:0}.pub-fbx-modbtn-danger:hover{color:var(--hue-red);border-color:var(--hue-red-border)}@media (prefers-reduced-motion:reduce){.pub-fbx-modbtn{transition:none}}@media (max-width:520px){.pub-fbx-modprompt-row{flex-wrap:wrap}.pub-sort{order:2}}button.pub-feedback-btn{border:0;cursor:pointer;font-family:inherit;line-height:inherit}.pub-idea-modal{max-width:520px}.pub-idea-form{display:flex;flex-direction:column;gap:14px}.pub-idea-hint{margin:0;font-size:13px;line-height:1.5;opacity:.7}.pub-idea-form .pub-fbx-field textarea{background:var(--ink-a06);border:1px solid var(--ink-a14);border-radius:8px;color:inherit;font:inherit;font-size:13px;padding:9px 11px;width:100%;box-sizing:border-box;resize:vertical;min-height:88px}.pub-idea-form .pub-fbx-field textarea::placeholder{color:var(--ink-a35)}.pub-idea-form .pub-fbx-field textarea:focus{outline:2px solid color-mix(in srgb,var(--accent) 60%,transparent);outline-offset:1px}.pub-idea-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:2px}.pub-idea-success{display:flex;align-items:center;gap:10px;margin:8px 0 4px;font-size:14px;font-weight:600}.pub-idea-success svg{color:var(--accent);flex-shrink:0}.pub-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.pub-adm{margin:4px 0 14px;border:1px dashed color-mix(in srgb,var(--accent) 40%,transparent);background:color-mix(in srgb,var(--accent) 5%,transparent);border-radius:10px;padding:10px 12px}.pub-adm-bar{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.pub-adm-btn{font-size:12px;font-weight:600;padding:6px 12px;border-radius:8px;border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);background:transparent;color:var(--accent);cursor:pointer}.pub-adm-btn:hover{background:color-mix(in srgb,var(--accent) 15%,transparent)}.pub-adm-dash,.pub-adm-link{font-size:12px;font-weight:600;color:var(--accent);text-decoration:none;white-space:nowrap}.pub-adm-dash:hover,.pub-adm-link:hover{text-decoration:underline}.pub-adm-status{margin-left:auto;font-size:12px;color:var(--text-secondary)}.pub-adm-form{margin-top:16px}.pub-adm-fields,.pub-adm-form{display:flex;flex-direction:column;gap:16px}.pub-adm-fields{border:0;padding:0;margin:0;min-width:0}.pub-adm-btn,.pub-adm-link,.pub-adm-status{display:inline-flex;align-items:center;gap:6px;min-height:36px}.pub-adm-field small,.pub-adm-help{font-size:12px;line-height:1.5;color:var(--muted);margin:0}.pub-adm-image{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.pub-adm-image img{object-fit:cover;border-radius:8px}.pub-adm-image .pub-adm-field{flex:1;min-width:180px}.pub-adm-editor>div{background:var(--ink-a06);border-color:var(--ink-a14);color:inherit}.pub-adm-editor .tiptap{min-height:160px;max-height:360px;overflow-y:auto;color:inherit;padding:12px}.pub-adm-editor button{color:inherit;min-width:32px;min-height:32px;border:0;background:transparent;border-radius:6px;cursor:pointer}.pub-adm-editor button:hover{background:var(--ink-a14)}.pub-adm-editor>div>div:first-child{display:flex;flex-wrap:wrap;gap:4px;padding:8px;border-bottom:1px solid var(--ink-a14)}.pub-adm-editor>div{border:1px solid var(--ink-a14);border-radius:8px;overflow:hidden}.pub-dx-main:has(.pub-adm-form)>.pub-readmore{display:none}.pub-adm-editor :focus-visible{outline:2px solid var(--accent);outline-offset:2px}.pub-adm-form details>summary{cursor:pointer;font-size:13px;padding:8px 0}.pub-adm-error{border:1px solid #fca5a5;background:#fca5a514;color:#fca5a5;padding:12px;border-radius:8px;font-size:13px}.pub-adm-field select:disabled{opacity:.65;cursor:not-allowed}.pub-adm-field option{background:var(--bg);color:var(--text)}@media (max-width:600px){.pub-adm-field input,.pub-adm-field select,.pub-adm-field textarea{font-size:16px;min-height:44px}.pub-adm-btn,.pub-adm-editor button,.pub-adm-link,.pub-adm-status{min-height:44px}.pub-adm-editor button{min-width:44px}}.pub-adm-row{display:flex;gap:12px;flex-wrap:wrap}.pub-adm-row .pub-adm-field{flex:1 1 200px}.pub-adm-field{display:flex;flex-direction:column;gap:4px}.pub-adm-field span{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;opacity:.6}.pub-adm-field input,.pub-adm-field select,.pub-adm-field textarea{background:var(--ink-a06);border:1px solid var(--ink-a14);border-radius:8px;color:inherit;font:inherit;font-size:13px;padding:8px 10px;width:100%;box-sizing:border-box}.pub-adm-field input:focus,.pub-adm-field select:focus,.pub-adm-field textarea:focus{outline:2px solid color-mix(in srgb,var(--accent) 60%,transparent);outline-offset:1px}.pub-adm-check{display:inline-flex;align-items:center;gap:6px;font-size:13px}.pub-adm-actions{display:flex;gap:8px}.pub-composer-modal{max-width:720px}.pub-composer{display:flex;flex-direction:column;gap:10px;position:relative}.pub-composer-title{border:0;background:transparent;color:inherit;font-size:24px;font-weight:700;padding:6px 44px 6px 0;box-sizing:border-box;outline:none;width:calc(100% - 36px)}.pub-composer-title::placeholder{color:var(--ink-a35)}.pub-composer-body{min-height:140px;max-height:46vh;overflow-y:auto;outline:none;font-size:14.5px;line-height:1.55;padding:2px 0 8px}.pub-composer-body:empty:before{content:attr(data-placeholder);color:var(--ink-a35);pointer-events:none}.pub-composer-body img{max-width:100%;border-radius:8px;display:block;margin:8px 0}.pub-composer-body a{color:var(--accent)}.pub-composer-body ul{padding-left:22px}.pub-composer-toolbar{display:flex;gap:4px;padding-top:6px;border-top:1px solid var(--ink-a07)}.pub-composer-toolbar button{width:34px;height:30px;border:0;border-radius:7px;background:transparent;color:var(--ink-a65);font-size:14px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.pub-composer-toolbar button:hover:not(:disabled){background:var(--ink-a08);color:var(--text-strong)}.pub-composer-b{font-weight:800}.pub-composer-i{font-style:italic;font-family:Georgia,serif}.pub-composer-pop{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:10px 12px;border:1px solid var(--ink-a12);border-radius:10px;background:var(--panel-2)}.pub-composer-pop input{flex:1 1 200px;background:var(--ink-a06);border:1px solid var(--ink-a14);border-radius:8px;color:inherit;font:inherit;font-size:13px;padding:8px 10px;min-width:0}.pub-composer-emojis button{width:34px;height:32px;font-size:17px;border:0;border-radius:7px;background:transparent;cursor:pointer}.pub-composer-emojis button:hover{background:var(--ink-a10)}.pub-composer-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:12px;border-top:1px solid var(--ink-a09)}.pub-composer-adminrow{display:flex;gap:8px;flex-wrap:wrap}.pub-composer-chip{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:600;padding:7px 12px;border-radius:9px;border:1px solid var(--ink-a14);background:var(--ink-a05);color:var(--ink-a85);cursor:pointer;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pub-composer-chip:hover{background:var(--ink-a10)}.pub-stage-dot{width:8px;height:8px;border-radius:50%;flex:0 0 auto}.pub-stage-dot[data-stage=in_review]{background:var(--pub-stage-in-review)}.pub-stage-dot[data-stage=planned]{background:var(--pub-stage-planned)}.pub-stage-dot[data-stage=in_progress]{background:var(--pub-stage-in-progress)}.pub-stage-dot[data-stage=completed]{background:var(--pub-stage-completed)}.pub-stage-dot[data-stage=rejected]{background:var(--pub-stage-rejected)}.pub-composer-stages,.pub-composer-team{flex-direction:column;align-items:stretch;gap:2px}.pub-composer-stages button,.pub-composer-team button{display:flex;align-items:center;gap:10px;padding:8px 10px;border:0;border-radius:7px;background:transparent;color:inherit;font-size:13.5px;text-align:left;cursor:pointer}.pub-composer-stages button:hover,.pub-composer-team button:hover{background:var(--ink-a08)}.pub-composer-stages button[data-on=true],.pub-composer-team button[data-on=true]{background:color-mix(in srgb,var(--accent) 16%,transparent)}.pub-composer-taglist{display:flex;gap:6px;flex-wrap:wrap}.pub-composer-taglist button{font-size:12px;padding:4px 10px;border-radius:999px;border:1px solid color-mix(in srgb,var(--accent) 40%,transparent);background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent);cursor:pointer}.pub-composer-id{border-top:1px solid var(--ink-a07);padding-top:12px}.pub-requests-link{font-size:13px;color:var(--ink-a70);text-decoration:none}.pub-requests-link:hover{color:var(--text-strong)}.pub-requests-head h1{font-size:24px;margin:0 0 4px}.pub-requests-head p{margin:0 0 20px;font-size:14px;opacity:.65}.pub-req-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.pub-req{border:1px solid var(--ink-a08);background:var(--ink-a03);border-radius:12px;overflow:hidden}.pub-req[data-open=true]{border-color:color-mix(in srgb,var(--accent) 40%,transparent)}.pub-req-row{display:flex;align-items:stretch;gap:0}.pub-req-vote{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:58px;padding:10px 8px;border:0;border-right:1px solid var(--ink-a07);background:transparent;color:var(--accent);font-size:14px;font-weight:700;font-variant-numeric:tabular-nums;cursor:pointer;min-height:44px;text-decoration:none}.pub-req-vote:hover{background:color-mix(in srgb,var(--accent) 12%,transparent)}.pub-req-vote[data-on=true]{background:var(--accent);color:#08111f}.pub-req-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px;padding:10px 14px;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.pub-req-main:hover{background:var(--ink-a03)}.pub-req-comment-count{display:inline-flex;align-items:center;gap:4px}.pub-req-title{font-size:14.5px;font-weight:600}.pub-req-meta{display:flex;align-items:center;gap:10px;font-size:12px;opacity:.75;flex-wrap:wrap}.pub-req-stage{display:inline-flex;align-items:center;gap:6px;font-weight:600}.pub-req-body{border-top:1px solid var(--ink-a07);padding:14px 16px 16px;display:flex;flex-direction:column;gap:12px}.pub-req-body .pub-prose{margin:0;font-size:14px}.pub-req-body .pub-prose img{max-width:min(100%,480px);border-radius:8px}@media (max-width:520px){.pub-requests-link{display:none}}.pub-detail-panel{background:var(--panel);border:1px solid var(--ink-a10);border-radius:12px;margin-top:14px;box-shadow:0 1px 3px rgba(0,0,0,.06)}.pub-detail{max-width:980px}.pub-dx-grid{display:grid;grid-template-columns:minmax(0,1fr) 280px}.pub-dx-main{padding:26px 30px 30px;min-width:0}.pub-dx-side{border-left:1px solid var(--ink-a08);padding:22px 22px 26px;font-size:14px}.pub-dx-title{font-size:18px;font-weight:600;line-height:1.35;color:var(--text);margin:0 0 14px;padding-right:20px}.pub-dx-body{position:relative}.pub-dx-body[data-clamped=true]:not(.pub-readmore) .pub-dx-body-inner{max-height:480px;overflow:hidden}.pub-dx-body-inner .pub-prose{font-size:15px;line-height:1.5;color:var(--ink-a85);opacity:1;margin:0 0 8px}.pub-dx-img{width:100%;border-radius:10px;margin:2px 0 14px}.pub-dx-fade{position:absolute;inset:auto 0 -.375rem;z-index:1;width:100%;height:4rem;display:flex;align-items:flex-end;justify-content:center;padding:0;border:0;border-radius:0;background:linear-gradient(to top,var(--panel),transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);cursor:pointer}.pub-dx-more{margin-bottom:.5rem;font-size:.875rem;line-height:1.25rem;font-weight:500;color:var(--ink-a85);background:var(--panel-2);border:.5px solid var(--ink-a09);border-radius:10px;padding:.125rem .5rem;box-shadow:0 1px 2px #0000003b,0 3px 8px -4px #0003;transition:background-color .15s cubic-bezier(0,0,.2,1),color .15s cubic-bezier(0,0,.2,1)}.pub-dx-fade:hover .pub-dx-more{background:var(--ink-a06);color:var(--text-strong)}.pub-dx-composer{display:flex;align-items:flex-start;gap:10px;margin:18px 0 6px}.pub-dx-composer textarea{flex:1;background:var(--ink-a04);border:1px solid var(--ink-a12);border-radius:10px;color:var(--text);font:inherit;font-size:14px;padding:8px 12px;resize:vertical;min-height:20px}.pub-dx-composer textarea:focus{outline:none;border-color:var(--ink-a35)}.pub-dx-composer-reply{margin:10px 0 2px}.pub-dx-chdr{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:var(--text);margin:22px 0 4px;padding-bottom:10px;border-bottom:1px solid var(--ink-a08)}.pub-dx-chdr-count{font-size:12px;font-weight:600;color:var(--ink-a60);background:var(--ink-a08);border-radius:999px;padding:1px 8px}.pub-dx-comments{list-style:none;margin:0;padding:0}.pub-dx-comments>.pub-dx-c{padding:14px 0 4px;border-bottom:1px solid var(--ink-a06)}.pub-dx-comments>.pub-dx-c:last-child{border-bottom:0}.pub-dx-c{display:flex;gap:10px}.pub-dx-c[data-hidden]>.pub-dx-c-body>.pub-dx-c-text{opacity:.45}.pub-dx-c-body{min-width:0;flex:1}.pub-dx-c-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.pub-dx-c-author{font-size:14px;font-weight:600;color:var(--ink-a90)}.pub-dx-c-text{font-size:14px;line-height:1.5;color:var(--ink-a85);margin:3px 0 4px;white-space:pre-wrap;overflow-wrap:anywhere}.pub-dx-c-actions{display:flex;gap:14px;margin-bottom:6px}.pub-dx-c-reply{font-size:13px;font-weight:500;color:var(--ink-a55);background:none;border:0;padding:0;cursor:pointer}.pub-dx-c-reply:hover{color:var(--text-strong)}.pub-dx-replies{list-style:none;margin:6px 0 0;padding:0 0 0 14px;border-left:2px solid var(--ink-a08);display:flex;flex-direction:column;gap:12px}.pub-dx-avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;color:#fff;font-weight:600;flex:none;user-select:none}.pub-dx-siderow{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 0}.pub-dx-sidelabel{font-size:14px;font-weight:500;color:var(--ink-a55)}.pub-dx-sideval{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:500;color:var(--ink-a85);min-width:0;text-align:right}.pub-dx-sidesep{border:0;border-top:1px solid var(--ink-a08);margin:10px 0}.pub-dx-avatarstack{display:inline-flex}.pub-dx-avatarstack .pub-dx-avatar{margin-left:-6px;border:2px solid var(--panel)}.pub-dx-avatarstack .pub-dx-avatar:first-child{margin-left:0}.pub-dx-votern{font-weight:600}.pub-dx-status{font-size:12px;font-weight:500;padding:4px 9px;border-radius:10px;white-space:nowrap}.pub-dx-status[data-tone=green]{color:var(--hue-green-soft);background:var(--hue-green-bg)}.pub-dx-status[data-tone=blue]{color:var(--hue-blue-soft);background:var(--hue-blue-bg)}.pub-dx-status[data-tone=purple]{color:var(--hue-purple-soft);background:var(--hue-purple-bg)}.pub-dx-status[data-tone=amber]{color:var(--hue-amber);background:color-mix(in srgb,var(--hue-amber) 16%,transparent)}.pub-dx-status[data-tone=gray]{color:var(--ink-a70);background:var(--ink-a08)}.pub-dx-chip{font-size:12px;font-weight:500;color:var(--ink-a70);border:1px solid var(--ink-a12);border-radius:999px;padding:3px 9px;white-space:nowrap}.pub-contribution-signin{min-height:44px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.pub-dx-c-reply:focus-visible,.pub-dx-vdown:focus-visible,.pub-dx-vup:focus-visible,.pub-fbx-primary:focus-visible,.pub-req-main:focus-visible,.pub-req-vote:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.pub-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (max-width:860px){.pub-dx-grid{grid-template-columns:1fr}.pub-dx-side{border-left:0;border-top:1px solid var(--ink-a08)}.pub-dx-main{padding:22px 18px 24px}}.pub-search-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.pub-modal{box-sizing:border-box}.pub-dx-c>.pub-profile-avatar{width:30px;height:30px;margin-top:1px}.pub-dx-replies .pub-dx-c>.pub-profile-avatar{width:24px;height:24px}.pub-dx-replies .pub-dx-c>.pub-profile-avatar .pub-profile-avatar-fallback{font-size:10px}.pub-dx-composer>.pub-profile-avatar{width:30px;height:30px;margin-top:3px}.pub-dx-composer-reply>.pub-profile-avatar{width:24px;height:24px}.pub-dx-author{display:inline-flex;align-items:center;gap:7px;color:inherit;text-decoration:none}a.pub-dx-author:hover{color:var(--text-strong)}a.pub-dx-c-author:hover{color:var(--accent)}.pub-dx-avatarstack,.pub-dx-commenters{display:inline-flex;align-items:center;padding-left:6px}.pub-dx-avatarstack .pub-dx-author,.pub-dx-commenters .pub-dx-author{margin-left:-6px}.pub-dx-avatarstack .pub-dx-author>span:last-child,.pub-dx-commenters .pub-dx-author>span:last-child{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.pub-dx-avatarstack .pub-profile-avatar,.pub-dx-commenters .pub-profile-avatar{width:22px;height:22px;border:2px solid var(--panel)}.pub-dx-avatarstack .pub-profile-avatar-fallback,.pub-dx-commenters .pub-profile-avatar-fallback{font-size:9px}.pub-dx-chdr{justify-content:space-between}.pub-dx-chdr-title{gap:8px}.pub-dx-chdr-title,.pub-dx-chdr-tools{display:inline-flex;align-items:center}.pub-dx-chdr-tools{gap:12px}.pub-dx-sort{position:relative;display:inline-flex;align-items:center;color:var(--ink-a60)}.pub-dx-sort select{appearance:none;border:1px solid var(--ink-a12);border-radius:8px;padding:4px 26px 4px 9px;background:transparent;color:var(--ink-a70);cursor:pointer;font:inherit;font-size:12px;font-weight:500}.pub-dx-sort select:hover{border-color:var(--ink-a25);color:var(--text-strong)}.pub-dx-sort svg{position:absolute;right:8px;pointer-events:none}.pub-dx-signin{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:18px 0 6px;padding:12px 14px;border:1px solid var(--ink-a08);border-radius:10px;background:var(--ink-a03)}.pub-dx-signin .pub-fbx-primary{text-decoration:none}.pub-dx-signin>span{font-size:13px;color:var(--ink-a55)}.pub-dx .pub-back{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:500;color:var(--ink-a60);text-decoration:none}.pub-dx .pub-back:hover{color:var(--text-strong)}.pub-dx-c-time{font-size:13px;color:var(--ink-a50)}.pub-dx .pub-back:focus-visible,.pub-dx-c-reply:focus-visible,.pub-dx-fade:focus-visible,.pub-dx-sort select:focus-visible,.pub-dx-vdown:focus-visible,.pub-dx-vup:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (max-width:560px){.pub-dx-chdr,.pub-dx-composer{flex-wrap:wrap}}@media (prefers-reduced-motion:reduce){.pub-card{transition:none}.pub-card:hover{transform:none}.pub-dx-more{transition:none}}.pub-dx-c-author,.pub-dx-c-reply{text-decoration:none}.pub-account-banner,.pub-account-message-success,.pub-idea-success{display:block;border:1px solid var(--pub-auth-success-border);border-radius:8px;padding:9px 12px;background:var(--pub-auth-success-surface);color:var(--pub-auth-success-text);font-size:12px}.pub-tabs a{text-decoration:none;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;min-height:44px}.pub-tab-released-label{font-size:10px;line-height:1.2;opacity:.85}.pub-readmore{overflow:hidden;transition:height .3s cubic-bezier(.16,1,.3,1)}.pub-readmore .pub-dx-body-inner{display:flow-root;max-height:none;overflow:visible}.pub-readmore .pub-dx-body-inner:focus{outline:none}.pub-readmore .pub-dx-fade{bottom:0;transition:opacity .15s ease}.pub-readmore .pub-dx-fade:after{content:"";position:absolute;inset:auto 0 0;height:1px;background:linear-gradient(to right,transparent,var(--ink-a09) 15%,var(--ink-a09) 85%,transparent);pointer-events:none}.pub-readmore .pub-dx-more{margin-bottom:1rem}.pub-readmore .pub-dx-fade[data-expanded=true]{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s ease,visibility 0s .15s}@media (prefers-reduced-motion:reduce){.pub-readmore,.pub-readmore .pub-dx-fade{transition:none}}.pub-sr-only,.pub-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.pub-skip-link{position:fixed;z-index:200;top:8px;left:8px;padding:8px 14px;border-radius:8px;background:var(--accent);color:#08111f;font-size:13px;font-weight:600;text-decoration:none;transform:translateY(calc(-100% - 16px))}.pub-skip-link:focus-visible{transform:translateY(0)}.pub-account-menu,.pub-account-nav{position:relative}.pub-account-trigger{display:inline-flex;align-items:center;gap:8px;height:32px;box-sizing:border-box;border:1px solid var(--ink-a15);border-radius:8px;padding:0 10px 0 4px;background:transparent;color:var(--ink-a70);cursor:pointer;font:inherit;font-size:13px;font-weight:500;text-decoration:none;list-style:none;white-space:nowrap}a.pub-account-trigger{padding:0 12px}.pub-account-trigger::-webkit-details-marker{display:none}.pub-account-menu[open]>.pub-account-trigger,.pub-account-trigger:hover{color:var(--text-strong);border-color:var(--ink-a35)}.pub-account-avatar,.pub-account-avatar-fallback{display:inline-flex;width:22px;height:22px;align-items:center;justify-content:center;overflow:hidden;border-radius:50%}.pub-account-avatar{background:var(--ink-a08)}.pub-account-avatar img{width:100%;height:100%;object-fit:cover}.pub-account-avatar-fallback{background:var(--accent);color:#08111f;font-size:10px;font-weight:700}.pub-account-name{max-width:140px;overflow:hidden;text-overflow:ellipsis}.pub-account-menu-panel{position:absolute;z-index:120;top:calc(100% + 8px);right:0;width:224px;overflow:hidden;border:1px solid var(--ink-a12);border-radius:10px;background:var(--panel);box-shadow:var(--shadow-modal)}.pub-account-menu-panel a,.pub-account-menu-panel button{display:block;box-sizing:border-box;width:100%;border:0;padding:10px 13px;background:transparent;color:var(--text);cursor:pointer;font:inherit;font-size:13px;text-align:left;text-decoration:none}.pub-account-menu-panel a:hover,.pub-account-menu-panel button:hover{background:var(--ink-a06)}.pub-account-admin-links,.pub-account-menu-panel form{border-top:1px solid var(--ink-a08)}.pub-account-admin-links{border-bottom:1px solid var(--ink-a08);padding:6px 0}.pub-account-admin-links>span{display:block;padding:5px 13px 4px;color:var(--ink-a50);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.pub-profile-avatar{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;overflow:hidden;border-radius:50%;background:var(--ink-a08);color:var(--text)}.pub-profile-avatar[data-size=small]{width:28px;height:28px}.pub-profile-avatar[data-size=large]{width:88px;height:88px}.pub-profile-avatar img{width:100%;height:100%;object-fit:cover}.pub-profile-avatar-fallback{font-size:11px;font-weight:700}.pub-profile-avatar[data-size=large] .pub-profile-avatar-fallback{font-size:24px}.pub-account-settings,.pub-auth-shell,.pub-profile-page{max-width:760px;margin:0 auto}.pub-auth-shell{display:flex;justify-content:center;padding:8vh 0}.pub-auth-card{box-sizing:border-box;width:100%;max-width:520px;border:1px solid var(--ink-a10);border-radius:12px;padding:24px;background:var(--panel);color:var(--text)}.pub-account-settings-heading h1,.pub-auth-card h1{margin:6px 0 10px;font-size:24px}.pub-auth-card h2{margin:0 0 8px;font-size:16px}.pub-auth-eyebrow,.pub-profile-eyebrow{margin:0;color:var(--accent);font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.pub-account-settings-heading>p,.pub-auth-help,.pub-auth-intro,.pub-profile-bio,.pub-profile-organization,.pub-profile-total{color:var(--ink-a65);font-size:13px;line-height:1.5}.pub-profile-heading-copy .pub-profile-organization{display:flex;align-items:center;gap:8px;margin:12px 0;color:var(--text);overflow-wrap:anywhere}.pub-profile-organization>svg{flex-shrink:0;color:var(--ink-a65)}.pub-account-settings-stack,.pub-auth-form{display:flex;flex-direction:column;gap:14px}.pub-auth-input{box-sizing:border-box;width:100%;border:1px solid var(--ink-a12);border-radius:8px;padding:8px 11px;background:var(--ink-a04);color:var(--text);font:inherit;font-size:13px;line-height:1.45}.pub-auth-input::placeholder{color:var(--ink-a40)}.pub-auth-submit,.pub-profile-more,.pub-profile-pagination a{flex:0 0 auto;border:0;border-radius:8px;padding:9px 14px;background:var(--accent);color:#08111f;cursor:pointer;font:inherit;font-size:12px;font-weight:600;text-decoration:none}.pub-auth-submit:disabled{cursor:default;opacity:.5}.pub-auth-submit{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px}.pub-auth-local{margin-top:18px}.pub-auth-local form{display:flex;flex-direction:column;gap:10px}.pub-auth-local .pub-auth-help{margin:0}.pub-auth-divider{display:flex;align-items:center;gap:12px;margin-bottom:14px;color:var(--ink-a50);font-size:11px;font-weight:600;letter-spacing:.35px;text-transform:uppercase}.pub-auth-divider:after,.pub-auth-divider:before{height:1px;flex:1;background:var(--ink-a10);content:""}.pub-auth-local-submit{min-height:40px;border:1px solid var(--ink-a14);border-radius:8px;padding:0 16px;background:var(--ink-a04);color:var(--text);cursor:pointer;font:inherit;font-size:13px;font-weight:600;transition:border-color .15s ease,background-color .15s ease}.pub-auth-local-submit:hover{border-color:var(--ink-a25);background:var(--ink-a08)}.pub-auth-field{display:flex;flex-direction:column;gap:6px}.pub-auth-label{font-size:12px;font-weight:600}.pub-auth-actions{display:flex;align-items:center;gap:10px}.pub-auth-secondary,.pub-auth-text-link{color:var(--accent);font-size:12px}.pub-auth-secondary{border:0;background:transparent;cursor:pointer;font:inherit;font-size:12px}.pub-auth-error-slot{min-height:22px}.pub-auth-form .pub-auth-error-slot{min-height:0}.pub-auth-form .pub-auth-help{margin:0}.pub-auth-alert{display:flex;align-items:flex-start;gap:10px;padding:12px;margin-top:8px;border:1px solid color-mix(in srgb,var(--hue-red) 45%,transparent);border-radius:8px;background:color-mix(in srgb,var(--hue-red) 10%,transparent);color:var(--hue-red);font-size:13px;line-height:1.5}.pub-auth-alert svg{flex-shrink:0;margin-top:1px}.pub-auth-form .pub-auth-error-slot .pub-auth-alert p{margin:4px 0 0;font-size:13px;font-weight:400}.pub-auth-agreement{display:grid;gap:8px}.pub-auth-check{display:flex;align-items:center;gap:10px;min-height:44px;font-size:13px;cursor:pointer}.pub-auth-check input{width:18px;height:18px;margin:0;flex-shrink:0;accent-color:var(--accent)}.pub-auth-check a{color:inherit;text-decoration:underline;text-underline-offset:3px}.fb-auth-back:focus-visible,.pub-auth-check input:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.pub-auth-success{display:flex;flex-direction:column;gap:12px;font-size:14px;line-height:1.5;overflow-wrap:anywhere}.pub-auth-success svg{color:var(--accent)}.fb-auth-modal .pub-auth-success{display:flex}.pub-auth-error-slot p:not(.pub-account-message-success){margin:0;color:var(--hue-red);font-size:12px;font-weight:600}.pub-account-settings-heading{margin-bottom:20px}.pub-account-settings-content{display:flex;flex-direction:column;gap:12px}.pub-account-settings-stack .pub-auth-card{max-width:none}.pub-account-avatar-preview{display:flex;width:80px;height:80px;align-items:center;justify-content:center;overflow:hidden;border-radius:50%;background:var(--ink-a08)}.pub-account-avatar-preview img{width:100%;height:100%;object-fit:cover}.pub-profile-back,.pub-profile-moderation-link,.pub-profile-private-back{color:var(--accent);font-size:13px;text-decoration:none}.pub-profile-layout{margin-top:18px}.pub-profile-back{display:inline-flex;align-items:center;gap:8px;min-height:36px;border-radius:6px;color:var(--fb-muted,var(--ink-a65));font-weight:500;line-height:20px;transition:color .16s ease}.pub-profile-back svg{flex-shrink:0}.pub-profile-back:hover{color:var(--text)}.pub-profile-back:focus-visible{outline:2px solid var(--accent);outline-offset:4px}@media (prefers-reduced-motion:reduce){.pub-profile-back{transition:none}}.pub-profile-header{display:flex;align-items:flex-start;gap:18px;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--ink-a08)}.pub-profile-header>.pub-profile-avatar{position:relative;background:linear-gradient(var(--ink-a08),var(--ink-a08)),var(--panel)}.pub-profile-heading-copy h1{margin:4px 0 6px;font-size:24px}.pub-profile-heading-copy p{margin:4px 0}.pub-profile-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.pub-profile-section-heading h2{margin:4px 0 0;font-size:16px}.pub-profile-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0 18px}.pub-profile-tab{display:inline-flex;gap:6px;border:1px solid var(--ink-a12);border-radius:8px;padding:5px 10px;color:var(--text);font-size:12px;text-decoration:none}.pub-profile-tab:hover{border-color:var(--ink-a25)}.pub-profile-tab[aria-current=page]{border-color:var(--fb-primary-border);background:var(--fb-primary);color:var(--fb-white)}.pub-contribution-list{display:flex;flex-direction:column;gap:10px;list-style:none;margin:0;padding:0}.pub-contribution-card{position:relative;transition:background-color .16s ease,border-color .16s ease;border:1px solid var(--ink-a08);border-radius:10px;padding:13px 14px;background:var(--ink-a03)}.pub-contribution-card[data-hidden=true]{opacity:.6}.pub-contribution-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;color:var(--ink-a55);font-size:11px}.pub-contribution-kind{color:var(--accent);font-weight:600}.pub-contribution-hidden{color:var(--hue-amber);font-weight:600}.pub-contribution-title{display:inline-block;margin:7px 0 4px;color:var(--text);font-size:14px;font-weight:600;text-decoration:none}.pub-contribution-title:hover{color:var(--accent)}.pub-contribution-card>p{margin:4px 0 8px;color:var(--ink-a70);font-size:12px;line-height:1.45}.pub-contribution-author{display:inline-flex;align-items:center;gap:7px;color:var(--ink-a70);font-size:11px;text-decoration:none}.pub-contribution-author:hover{color:var(--text-strong)}.pub-profile-empty{border:1px dashed var(--ink-a15);border-radius:10px;padding:22px;text-align:center}.pub-profile-empty h3{margin:0 0 6px;font-size:15px}.pub-profile-empty p{color:var(--ink-a60);font-size:12px}.pub-profile-empty a{color:var(--accent);font-size:12px}.pub-profile-more{display:inline-block;margin-top:14px}.pub-profile-pagination{display:flex;gap:8px;margin-top:14px}.pub-people-heading{margin-bottom:18px}.pub-people-heading h1{margin:5px 0 6px;font-size:24px}.pub-people-heading p{color:var(--ink-a65);font-size:13px}:where(.pub-account-trigger,.pub-account-menu-panel a,.pub-account-menu-panel button,.pub-auth-shell input,.pub-auth-shell button,.pub-auth-shell a,.pub-account-settings input,.pub-account-settings textarea,.pub-account-settings button,.pub-profile-page a):focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (max-width:760px){.pub-profile-header{flex-direction:column}.pub-account-name{display:none}.pub-account-trigger{padding:0 4px}a.pub-account-trigger{padding:0 10px}}.pub-auth-input:focus-visible,.pub-auth-submit:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.pub-contribution-card:hover{background:var(--fb-input);border-color:var(--fb-border)}.pub-contribution-title:after{content:"";position:absolute;inset:0;border-radius:10px}.pub-contribution-title:focus-visible{outline:none}.pub-contribution-title:focus-visible:after{outline:2px solid var(--fb-purple);outline-offset:2px}.pub-contribution-kind,.pub-contribution-stats,.pub-contribution-stats>span{display:inline-flex;align-items:center;gap:5px}.pub-contribution-meta{font-size:12px}.pub-contribution-meta time{margin-left:auto}.pub-contribution-meta .fb-stage{border:1px solid color-mix(in srgb,var(--fb-stage-dot) 20%,transparent);border-radius:10px;color:var(--fb-stage-dot);background:color-mix(in srgb,var(--fb-stage-dot) 10%,transparent);font-size:11px;line-height:16px;padding:1px 7px}.pub-contribution-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-top:12px}.pub-contribution-author{position:relative;z-index:1}.pub-contribution-stats{flex-wrap:wrap;gap:12px;color:var(--fb-muted);font-size:12px;font-variant-numeric:tabular-nums}.pub-contribution-stats svg{flex-shrink:0}.pub-contribution-board{color:var(--fb-text)}.pub-profile-empty .fb-empty-illustration{display:block;width:64px;height:64px;margin-bottom:16px}.fb-comment[id],.pub-dx-c[id]{scroll-margin-block:80px}.fb-comment[data-linked=true],.pub-dx-c[data-linked=true]{border-radius:8px;background:color-mix(in srgb,var(--fb-purple) 8%,transparent);outline:1px solid color-mix(in srgb,var(--fb-purple) 35%,transparent);outline-offset:6px}@media (max-width:480px){.pub-contribution-meta time{margin-left:0}.pub-contribution-footer{align-items:flex-start}.pub-contribution-stats{width:100%}}@media (prefers-reduced-motion:reduce){.pub-contribution-card{transition:none}}.pub-contribution-meta .fb-stage:before{display:none}.pub-avatar-picker{min-width:0;color:var(--text)}.pub-avatar-picker>label{display:block;margin-bottom:8px;font-size:14px;font-weight:500}.pub-avatar-picker>input[type=file]{display:block;width:100%;min-width:0;font:inherit;font-size:13px;color:var(--text)}.pub-avatar-picker button,.pub-avatar-picker input::file-selector-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;padding:8px 12px;border:1px solid var(--ink-a12);border-radius:8px;background:var(--panel);color:var(--text);font:inherit;font-size:13px;cursor:pointer;transition:background-color .16s ease}.pub-avatar-picker input::file-selector-button{margin-right:10px}.pub-avatar-picker button:hover:not(:disabled){background:var(--ink-a08)}.pub-avatar-picker button:disabled{opacity:.5;cursor:default}.pub-avatar-editor{margin-top:12px;padding:14px;border:1px solid var(--ink-a12);border-radius:12px;background:var(--panel)}.pub-avatar-crop{position:relative;width:min(240px,100%);aspect-ratio:1;overflow:hidden;margin:12px auto 16px;border-radius:8px;background:#171a23;outline:1px solid var(--ink-a20);touch-action:none;cursor:grab}.pub-avatar-crop:active{cursor:grabbing}.pub-avatar-crop img{position:absolute;max-width:none;user-select:none;pointer-events:none}.pub-avatar-crop-grid{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 33%,#ffffff40 0,#ffffff40 33.5%,transparent 0,transparent 66%,#ffffff40 0,#ffffff40 66.5%,transparent 0),linear-gradient(180deg,transparent 33%,#ffffff40 0,#ffffff40 33.5%,transparent 0,transparent 66%,#ffffff40 0,#ffffff40 66.5%,transparent 0)}.pub-avatar-picker .pub-avatar-editor label{display:block;margin:8px 0 0;font-size:12px;color:var(--ink-a65)}.pub-avatar-editor input[type=range]{display:block;width:100%;min-height:28px;margin:0;padding:0;accent-color:var(--accent)}.pub-avatar-actions,.pub-avatar-ready{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:12px}.pub-avatar-picker .pub-avatar-apply{margin-left:auto;background:#443071;color:white}.pub-avatar-picker .pub-avatar-apply:hover:not(:disabled){background:#533a86}.pub-avatar-ready img{border-radius:10px}.pub-avatar-ready output{font-size:12px;flex:1}.pub-avatar-picker :is(input,button):focus-visible{outline:2px solid var(--accent);outline-offset:3px}.pub-modal.fb-profile-settings{max-height:calc(100dvh - 40px);overflow-y:auto}.fb-profile-settings footer{flex-wrap:wrap;gap:8px}@media (prefers-reduced-motion:reduce){.pub-avatar-picker button{transition:none}}