@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/ibm-plex-sans-var.woff2) format("woff2-variations")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-400.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/ibm-plex-mono-700.woff2) format("woff2")}:root{--canvas:#d7d9df;--surface-1:#fff;--surface-2:#f7f8fb;--sunken:#eef0f5;--hover:#f4f6f9;--ink:#0e1420;--ink-2:#3d4658;--muted:#79839a;--grid:#edeff4;--border:#e7eaf1;--border-strong:#d3d7e0;--accent:#2f5bea;--accent-hover:#1e46c8;--accent-solid:#2f5bea;--accent-solid-hover:#1e46c8;--accent-mid:#5b80f0;--accent-200:#b9caff;--accent-100:#dbe5ff;--accent-050:#ecf1ff;--on-accent:#fff;--seq-450:#2f5bea;--seq-250:#92aefb;--seq-100:#dbe5ff;--status-critical:#b42318;--status-critical-bg:#fee4e2;--status-critical-border:#fecdca;--status-serious:#b93815;--status-serious-bg:#ffead5;--status-serious-border:#f9dbaf;--status-warning:#854d0e;--status-warning-bg:#fef0c7;--status-warning-border:#fedf89;--violet:#5925dc;--violet-bg:#ece9fe;--violet-border:#d9d6fe;--danger:#b42318;--danger-solid:#b42318;--danger-surface:#fef3f2;--danger-border:#fecdca;--success:#027a48;--success-surface:#ecfdf3;--success-border:#abefc6;--info:#1749c9;--info-surface:#ecf1ff;--info-border:#b9caff;--attention:#b54708;--attention-surface:#fffaeb;--attention-border:#fedf89;--scrim:rgba(12,18,32,.5);--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:24px;--sp-6:32px;--sp-7:48px;--sp-8:10px;--r-sm:6px;--r-md:10px;--r-lg:14px;--r-xl:18px;--r-full:999px;--shadow-1:0 1px 2px rgba(14,20,32,.04);--shadow-2:0 1px 2px rgba(14,20,32,.06),0 8px 20px rgba(14,20,32,.06);--shadow-3:0 18px 44px rgba(14,20,32,.16),0 4px 10px rgba(14,20,32,.08);--shadow-frame:0 24px 60px rgba(14,20,32,.14),0 2px 6px rgba(14,20,32,.06);--font-sans:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",sans-serif;--font-mono:"IBM Plex Mono",ui-monospace,Consolas,monospace;--t-xs:11.5px;--t-sm:12.5px;--t-base:14px;--t-md:15px;--t-lg:17px;--t-xl:21px;--t-2xl:27px;--t-3xl:34px;--lh-tight:1.2;--lh-snug:1.4;--lh-normal:1.6;--dur-fast:120ms;--dur-mid:220ms;--ease:cubic-bezier(0.2,0,0.2,1);--focus-ring:0 0 0 2px var(--surface-1),0 0 0 4px var(--accent-mid);--skeleton-base:#eef0f5;--skeleton-sheen:#f7f8fb;--topbar-h:60px;--sidebar-w:244px}:root[data-theme=dark]{--canvas:#010409;--surface-1:#151b23;--surface-2:#0d1117;--sunken:#010409;--hover:#1f252e;--ink:#f0f6fc;--ink-2:#c9d1d9;--muted:#9198a1;--grid:#262c36;--border:#3d444d;--border-strong:#636c78;--accent:#5c8aff;--accent-hover:#85a8ff;--accent-solid:#1f5fe0;--accent-solid-hover:#3568e5;--accent-mid:#4a79ef;--accent-200:#1e3a70;--accent-100:#172a52;--accent-050:#121d38;--on-accent:#fff;--seq-450:#5c8aff;--seq-250:#33549e;--seq-100:#172a52;--status-critical:#ff7b72;--status-critical-bg:#2b1618;--status-critical-border:#5c2b2b;--status-serious:#f0883e;--status-serious-bg:#2a1a0d;--status-serious-border:#5b3517;--status-warning:#d29922;--status-warning-bg:#2a1f0b;--status-warning-border:#574011;--violet:#ab7df8;--violet-bg:#21173d;--violet-border:#3f2c78;--danger:#ff7b72;--danger-solid:#da3633;--danger-surface:#2b1618;--danger-border:#5c2b2b;--success:#3fb950;--success-surface:#10261a;--success-border:#1f4a2c;--info:#5c8aff;--info-surface:#121d38;--info-border:#1e3a70;--attention:#d29922;--attention-surface:#2a1f0b;--attention-border:#574011;--scrim:rgba(1,4,9,.8);--shadow-1:none;--shadow-2:0 8px 24px rgba(1,4,9,.6);--shadow-3:0 16px 40px rgba(1,4,9,.75);--shadow-frame:none;--skeleton-base:#1c222b;--skeleton-sheen:#2b333e;--focus-ring:0 0 0 2px var(--surface-1),0 0 0 4px var(--accent)}*{box-sizing:border-box}html{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}body{margin:0;background:var(--canvas);color:var(--ink);font-family:var(--font-sans);font-size:var(--t-base);line-height:var(--lh-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img{-webkit-user-drag:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}h1,h2,h3,h4,h5{line-height:var(--lh-tight);font-weight:640;letter-spacing:-.02em}h1{font-size:var(--t-2xl)}h2{font-size:var(--t-xl)}h3{font-size:var(--t-lg)}h4{font-size:var(--t-md)}h5{font-size:var(--t-sm)}a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:2px}a:hover{color:var(--accent-hover)}:focus-visible{outline:none;box-shadow:var(--focus-ring)}::selection{background:var(--accent-100);color:var(--ink)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.muted{color:var(--muted)}.small{font-size:var(--t-sm)}.error{color:var(--danger)}.tnum{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.col-head,.ledger-subtitle,.menu-label,.rail-label{font-size:var(--t-xs);font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}.linklike{background:none;border:none;padding:0;color:var(--accent);cursor:pointer;font:inherit;text-align:left;transition:color var(--dur-fast) var(--ease)}.linklike:hover{color:var(--accent-hover);text-decoration:underline}.linklike:disabled{color:var(--muted);cursor:default;text-decoration:none}.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}.wordmark{display:inline-flex;align-items:center;flex-wrap:wrap;gap:.1em;text-decoration:none;white-space:nowrap;margin-left:10px}.wordmark-logo{display:block;width:auto}.wordmark-logo-mark{display:none}.wordmark-sm .wordmark-logo{height:18px}.wordmark-lg .wordmark-logo,.wordmark-md .wordmark-logo{height:32px}.topbar .wordmark-logo{height:28px}.wordmark-tagline{flex-basis:100%;margin-top:2px;font-family:var(--font-sans);font-weight:500;letter-spacing:.06em;text-transform:uppercase;white-space:normal}.ref,.wordmark-tagline{font-size:var(--t-xs);color:var(--muted)}.ref{font-family:var(--font-mono);font-weight:400;white-space:nowrap}.ref:before{content:"[";color:var(--accent)}.ref:after{content:"]";color:var(--accent)}.ref-link{font-family:var(--font-mono);font-size:var(--t-xs);color:var(--accent);text-decoration:none;border-radius:var(--r-sm);transition:color var(--dur-fast) var(--ease)}.ref-link:before{content:"["}.ref-link:after{content:"]"}.ref-link:hover{color:var(--accent-hover);text-decoration:underline}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);padding:9px var(--sp-4);border:1px solid transparent;border-radius:var(--r-md);font:inherit;font-size:var(--t-base);font-weight:600;line-height:1.2;cursor:pointer;white-space:nowrap;transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}.btn:disabled{opacity:.55;cursor:default}.btn:active:not(:disabled){transform:translateY(.5px)}.btn-primary{background:var(--accent-solid);color:var(--on-accent);box-shadow:var(--shadow-1)}.btn-primary:hover:not(:disabled){background:var(--accent-solid-hover)}.btn-secondary{background:var(--surface-1);border-color:var(--border-strong);color:var(--ink)}.btn-secondary:hover:not(:disabled){background:var(--hover);border-color:var(--muted)}.btn-ghost{background:none;color:var(--ink-2)}.btn-ghost:hover:not(:disabled){background:var(--hover);color:var(--ink)}.btn-danger{background:var(--danger-solid);color:#fff;box-shadow:var(--shadow-1)}.btn-danger:hover:not(:disabled){filter:brightness(1.08)}.btn-block{width:100%}.btn-sm{padding:6px var(--sp-3);font-size:var(--t-sm)}.btn-icon{padding:7px}.btn-spinner{width:14px;height:14px;border:2px solid;border-top:2px solid transparent;border-radius:50%;animation:signoos-spin .7s linear infinite;flex-shrink:0}.field{display:flex;flex-direction:column;gap:var(--sp-2)}.field-label{font-size:var(--t-sm);font-weight:600;color:var(--ink-2);letter-spacing:.01em}.field-hint{font-size:var(--t-xs);color:var(--muted)}.input{width:100%;padding:10px var(--sp-3);border:1px solid var(--border-strong);border-radius:var(--r-md);font:inherit;color:var(--ink);background:var(--surface-1);transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}.input::placeholder{color:var(--muted)}.input:hover:not(:disabled){border-color:var(--muted)}.input:focus-visible{border-color:var(--accent);box-shadow:var(--focus-ring)}.input:disabled{background:var(--sunken);color:var(--muted);cursor:default}.input-invalid{border-color:var(--danger)}.autogrow{resize:none;overflow-y:hidden;line-height:1.5;font:inherit}.input-affix{position:relative;display:flex;align-items:center}.input-affix .input{padding-right:44px}.input-affix-btn{position:absolute;right:var(--sp-1);display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:none;border-radius:var(--r-sm);background:none;color:var(--muted);cursor:pointer;transition:color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease)}.input-affix-btn:hover{color:var(--ink);background:var(--hover)}.notice-box{display:flex;align-items:flex-start;gap:var(--sp-2);padding:10px var(--sp-3);border:1px solid;border-radius:var(--r-md);font-size:var(--t-sm);line-height:var(--lh-snug);text-align:left}.notice-box svg{flex-shrink:0;margin-top:1px}.notice-error{background:var(--danger-surface);border-color:var(--danger-border);color:var(--danger)}.notice-success{background:var(--success-surface);border-color:var(--success-border);color:var(--success)}.notice-info{background:var(--info-surface);border-color:var(--info-border);color:var(--info)}.notice-attention{background:var(--attention-surface);border-color:var(--attention-border);color:var(--attention)}.chip{display:inline-flex;align-items:center;gap:4px;padding:2px 9px;border-radius:var(--r-full);font-size:var(--t-xs);font-weight:600;letter-spacing:.02em;line-height:1.5;border:1px solid transparent;white-space:nowrap}.chip[class*=verdict-]{text-transform:uppercase;font-size:10.5px;letter-spacing:.05em}.verdict-IGNORED{color:var(--status-critical);background:var(--status-critical-bg);border-color:var(--status-critical-border)}.verdict-UNDER_PRIORITIZED{color:var(--status-warning);background:var(--status-warning-bg);border-color:var(--status-warning-border)}.verdict-MISUNDERSTOOD{color:var(--status-serious);background:var(--status-serious-bg);border-color:var(--status-serious-border)}.chip.latent{color:var(--violet);background:var(--violet-bg);border-color:var(--violet-border)}.chip.pill{background:var(--surface-2);border-color:var(--border);color:var(--ink-2);font-weight:500}.skeleton{background:linear-gradient(90deg,var(--skeleton-base) 25%,var(--skeleton-sheen) 50%,var(--skeleton-base) 75%);background-size:200% 100%;border-radius:var(--r-sm);animation:signoos-shimmer 1.4s ease-in-out infinite}@keyframes signoos-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (min-width:961px){body.app-framed{overflow:hidden}}.app-workspace .panel[id]{scroll-margin-top:var(--sp-4)}.app-canvas{height:100dvh;background:var(--canvas)}.app-frame{display:grid;grid-template-rows:var(--topbar-h) minmax(0,1fr);height:100%;margin-inline:auto;background:var(--surface-1);border:1px solid var(--border);box-shadow:var(--shadow-frame);overflow:hidden}.app-body{display:grid;grid-template-columns:var(--sidebar-w) minmax(0,1fr);min-height:0}.app-workspace{min-width:0;overflow-y:auto;overscroll-behavior:contain;background:var(--surface-2);padding:var(--sp-5) var(--sp-6) var(--sp-7)}.app-workspace-inner{max-width:1240px;margin-inline:auto}.app-workspace,.chat-panel,.detail-rail,.inspect-code,.rail{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}.app-workspace::-webkit-scrollbar,.chat-panel::-webkit-scrollbar,.detail-rail::-webkit-scrollbar,.inspect-code::-webkit-scrollbar,.rail::-webkit-scrollbar{width:8px;height:8px}.app-workspace::-webkit-scrollbar-thumb,.chat-panel::-webkit-scrollbar-thumb,.detail-rail::-webkit-scrollbar-thumb,.inspect-code::-webkit-scrollbar-thumb,.rail::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:var(--r-full)}.topbar{display:grid;grid-template-columns:var(--sidebar-w) minmax(0,1fr) auto;align-items:center;grid-gap:var(--sp-4);gap:var(--sp-4);padding-right:var(--sp-4);border-bottom:1px solid var(--border);background:var(--surface-1)}.topbar>*{min-width:0}.topbar-brand{display:flex;align-items:center;height:100%;padding:0 var(--sp-4);text-decoration:none}.topbar-subject{display:inline-flex;align-items:center;justify-self:start;gap:var(--sp-2);min-width:0;padding:6px var(--sp-3);border:1px solid var(--border);border-radius:var(--r-full);background:var(--surface-2);font-size:var(--t-sm);color:var(--ink-2)}.topbar-subject svg{flex-shrink:0;color:var(--accent)}.topbar-subject b{font-weight:600;color:var(--ink)}.topbar-subject-sep{color:var(--border-strong)}.topbar-subject-meta{color:var(--muted)}.subject-switcher{position:relative;padding:0}.subject-button{display:inline-flex;align-items:center;gap:var(--sp-2);min-width:0;max-width:460px;padding:6px var(--sp-3);border:0;border-radius:var(--r-full);background:transparent;font:inherit;color:inherit;cursor:pointer}.subject-button:hover{background:var(--hover)}.subject-button:focus-visible{outline:var(--focus-ring);outline-offset:2px}.subject-button .topbar-subject-meta,.subject-button b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.subject-caret{transform:rotate(90deg);color:var(--muted);width:14px;height:14px}.rail-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;margin-left:auto;border-radius:var(--r-full);background:var(--accent-solid);color:var(--on-accent);font-size:11px;font-weight:600;line-height:1}.chip-quiet{background:var(--sunken);border:1px solid var(--border);color:var(--muted)}.subject-menu{position:absolute;top:calc(100% + 6px);left:0;z-index:40;min-width:320px;max-width:420px;padding:var(--sp-2);border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface-1);box-shadow:var(--shadow-3)}.subject-item,.subject-menu{display:flex;flex-direction:column}.subject-item{gap:2px;padding:var(--sp-2) var(--sp-3);border:0;border-radius:var(--r-md);background:transparent;font:inherit;text-align:left;cursor:pointer}.subject-item:hover{background:var(--hover)}.subject-item:focus-visible{outline:var(--focus-ring);outline-offset:-2px}.subject-item.active{background:var(--accent-050)}.subject-item-name{font-weight:600;color:var(--ink)}.subject-item-meta{font-size:var(--t-xs);color:var(--muted)}.subject-item-new{border-top:1px solid var(--border);border-radius:0 0 var(--r-md) var(--r-md);margin-top:var(--sp-1)}.topbar-actions{display:flex;align-items:center;gap:var(--sp-2);flex:0 0 auto;min-width:0}.avatar{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;flex-shrink:0;border-radius:var(--r-full);background:var(--accent-solid);color:var(--on-accent);font-family:var(--font-mono);font-size:var(--t-sm);font-weight:700;line-height:1;text-transform:uppercase}.rail{display:flex;flex-direction:column;min-height:0;padding:var(--sp-4) var(--sp-3);background:var(--surface-1);border-right:1px solid var(--border);overflow-y:auto}.rail-group+.rail-group{margin-top:var(--sp-5)}.rail-label{display:block;padding:0 var(--sp-3);margin-bottom:var(--sp-2)}.rail-nav{display:flex;flex-direction:column;gap:2px}.rail-link{display:flex;align-items:center;gap:var(--sp-3);padding:9px var(--sp-3);border-radius:var(--r-md);color:var(--ink-2);font-size:var(--t-base);font-weight:500;text-decoration:none;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.rail-link:hover{background:var(--hover);color:var(--ink)}.rail-link svg{flex-shrink:0;color:var(--muted)}.rail-link.active{background:var(--accent-050);font-weight:600}.rail-link.active,.rail-link.active svg{color:var(--accent)}.rail-foot{margin-top:auto;padding-top:var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-3)}.rail-card{padding:var(--sp-3);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-lg)}.rail-card+.rail-card{margin-top:var(--sp-3)}.rail-card-head{margin-bottom:var(--sp-2)}.rail-key{display:grid;grid-gap:var(--sp-2);gap:var(--sp-2)}.rail-key-item{display:grid;grid-gap:2px;gap:2px}.rail-key-item .chip{justify-self:start}.rail-key-text{font-size:var(--t-xs);line-height:var(--lh-snug);color:var(--muted)}.rail-close,.rail-scrim,.topbar-menu{display:none}@media (max-width:1180px){.topbar{gap:var(--sp-3)}.subject-button{max-width:300px}.topbar-subject-meta,.topbar-subject-sep{display:none}}@media (max-width:960px){.app-canvas{padding:0}.app-canvas,.app-frame{height:auto;min-height:100dvh}.app-frame{border:none;border-radius:0;box-shadow:none;overflow-x:clip;overflow-y:visible}.app-body,.app-frame{display:block}.app-workspace{overflow-x:clip;overflow-y:visible;padding:var(--sp-4) var(--sp-4) var(--sp-7)}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:30;grid-template-columns:auto auto minmax(0,1fr) auto;gap:var(--sp-2);height:var(--topbar-h);padding:0 var(--sp-3)}.topbar-menu{display:inline-flex;flex:0 0 auto}.lp-frame-brand,.topbar-brand{border-right:none;padding:0;flex:0 0 auto}.topbar .wordmark-logo-full{display:none}.topbar .wordmark-logo-mark{display:block;height:32px}.topbar-subject{display:inline-flex}.subject-button{max-width:46vw}.subject-menu{position:fixed;top:calc(var(--topbar-h) + 4px);left:var(--sp-3);right:var(--sp-3);min-width:0;max-width:none}.rail{position:fixed;top:0;left:0;z-index:50;width:min(var(--sidebar-w),84vw);height:100dvh;padding:var(--sp-7) var(--sp-3) var(--sp-5);transform:translateX(-100%);visibility:hidden;transition:transform var(--dur-mid) var(--ease),visibility var(--dur-mid);box-shadow:var(--shadow-3)}.rail.open{transform:translateX(0);visibility:visible}.rail-close{display:inline-flex;position:absolute;top:var(--sp-3);right:var(--sp-3)}.rail-scrim{display:block;position:fixed;inset:0;z-index:40;background:var(--scrim);border:none;padding:0}}body.nav-locked{overflow:hidden}.theme-toggle{display:flex;gap:2px;padding:3px;background:var(--sunken);border:1px solid var(--border);border-radius:var(--r-full)}.theme-toggle-btn{flex:1 1;display:inline-flex;align-items:center;justify-content:center;padding:5px;border:none;border-radius:var(--r-full);background:none;color:var(--muted);cursor:pointer;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.theme-toggle-btn:hover{color:var(--ink)}.theme-toggle-btn[aria-pressed=true]{background:var(--surface-1);color:var(--accent);box-shadow:var(--shadow-1)}.subnav{margin:0 0 var(--sp-4);border-bottom:1px solid var(--border);overflow-x:auto;scrollbar-width:none}.subnav::-webkit-scrollbar{display:none}.subnav-list{display:flex;gap:var(--sp-1);min-width:max-content;margin:0;padding:0;list-style:none}.subnav-tab{display:inline-flex;align-items:center;gap:var(--sp-2);padding:8px var(--sp-3) 9px;margin-bottom:-1px;border-bottom:2px solid transparent;border-radius:var(--r-sm) var(--r-sm) 0 0;color:var(--ink-2);font-size:var(--t-base);text-decoration:none;white-space:nowrap;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.subnav-tab:hover{background:var(--hover);color:var(--ink)}.subnav-tab svg{flex-shrink:0;color:var(--muted)}.subnav-tab.active{color:var(--ink);font-weight:600;border-bottom-color:var(--accent)}.subnav-tab.active svg{color:var(--accent)}.subnav-count{padding:0 7px;border:1px solid var(--border);border-radius:var(--r-full);background:var(--sunken);font-size:var(--t-xs);font-weight:500;color:var(--ink-2)}.menu{position:relative;display:inline-flex}.menu-trigger{gap:var(--sp-2)}.menu-caret{width:14px;height:14px;color:var(--muted);transform:rotate(90deg);transition:transform var(--dur-fast) var(--ease)}.menu-trigger[aria-expanded=true] .menu-caret{transform:rotate(-90deg)}.menu-panel{position:absolute;top:calc(100% + 6px);z-index:45;display:flex;flex-direction:column;gap:2px;min-width:240px;max-width:min(320px,calc(100vw - 2 * var(--sp-4)));padding:var(--sp-2);border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface-1);box-shadow:var(--shadow-3)}.menu-end{right:0}.menu-start{left:0}.menu-item{display:flex;align-items:flex-start;gap:var(--sp-2);width:100%;padding:var(--sp-2) var(--sp-3);border:0;border-radius:var(--r-md);background:transparent;font:inherit;color:var(--ink);text-align:left;text-decoration:none;cursor:pointer}.menu-item:hover{background:var(--hover);color:var(--ink)}.menu-item[disabled]{opacity:.55;cursor:not-allowed}.menu-item[disabled]:hover{background:transparent}.menu-item svg{flex-shrink:0;margin-top:2px;color:var(--muted)}.menu-item-text{display:flex;flex-direction:column;gap:1px;min-width:0}.menu-item-label{font-size:var(--t-base);font-weight:500}.menu-item-desc{font-size:var(--t-xs);line-height:var(--lh-snug);color:var(--muted);font-weight:400}.menu-sep{height:1px;margin:var(--sp-1) 0;background:var(--border)}.menu-label{display:block;padding:var(--sp-2) var(--sp-3) var(--sp-1)}.menu-item-check{margin-left:auto;color:var(--accent)}.menu-item[aria-checked=true] .menu-item-label{font-weight:600}.menu-trigger-plain{display:inline-flex;align-items:center;gap:var(--sp-1);padding:3px;border:1px solid transparent;border-radius:var(--r-full);background:none;font:inherit;color:inherit;cursor:pointer;transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease)}.menu-trigger-plain:hover,.menu-trigger-plain[aria-expanded=true]{background:var(--hover);border-color:var(--border)}.menu-head{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-2) var(--sp-3) var(--sp-3)}.menu-head-text{display:flex;flex-direction:column;min-width:0}.menu-head-label{font-size:var(--t-xs);color:var(--muted)}.menu-head-value{font-size:var(--t-sm);font-weight:600;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-menu .menu-panel{min-width:268px}.confirm-scrim{position:fixed;inset:0;z-index:60;background:var(--scrim)}.confirm-layer{position:fixed;inset:0;z-index:61;display:flex;align-items:center;justify-content:center;padding:var(--sp-4);pointer-events:none}.confirm-box{width:min(440px,100%);max-height:calc(100dvh - 2 * var(--sp-4));overflow-y:auto;padding:var(--sp-5);border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface-1);box-shadow:var(--shadow-3);pointer-events:auto}.confirm-title{margin:0 0 var(--sp-2);font-size:var(--t-lg)}.confirm-message{margin:0 0 var(--sp-5);color:var(--ink-2);line-height:var(--lh-snug)}.confirm-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--sp-2)}.dlg-head{display:flex;align-items:flex-start;gap:var(--sp-3);padding:var(--sp-4) var(--sp-5);border-bottom:1px solid var(--border);background:var(--surface-2,var(--hover))}.dlg-head .confirm-title{margin:0;flex:1 1 auto;min-width:0;overflow-wrap:anywhere}.dlg-close{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;margin:-2px -6px 0 0;padding:0;border:1px solid transparent;border-radius:var(--r-sm);background:transparent;color:var(--muted);cursor:pointer;transition:color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease)}.dlg-close:hover:not(:disabled){color:var(--ink);background:var(--hover)}.dlg-close:focus-visible{outline:none;box-shadow:var(--focus-ring)}.dlg-close:disabled{cursor:default;opacity:.5}.dlg-body{flex:1 1 auto;min-height:0;overflow-y:auto;padding:var(--sp-5)}.dlg-foot{flex:0 0 auto;display:flex;flex-wrap:wrap;gap:var(--sp-2);padding:var(--sp-4) var(--sp-5);border-top:1px solid var(--border);background:var(--surface-2,var(--hover))}.dlg-foot .btn{justify-content:center}.dlg-foot-danger{border-top-color:var(--danger-border);background:var(--danger-surface)}@media (max-width:420px){.confirm-box{padding:var(--sp-4)}.confirm-actions{flex-direction:column-reverse}.confirm-actions .btn{width:100%;justify-content:center}.dlg-body,.dlg-foot,.dlg-head{padding-left:var(--sp-4);padding-right:var(--sp-4)}}.route-fallback{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-4);background:var(--canvas)}.route-fallback-spinner{width:30px;height:30px;border:2px solid var(--border-strong);border-top-color:var(--accent);border-radius:50%;animation:signoos-spin .75s linear infinite}@keyframes signoos-spin{to{transform:rotate(1turn)}}.topbar-middle{display:flex;align-items:center;gap:var(--sp-3);min-width:0;justify-content:space-between}.topbar-search{position:relative;flex:1 1;min-width:0;max-width:300px}.topbar-search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none}.topbar-search-input{width:100%;padding:7px 12px 7px 32px;font:inherit;font-size:var(--t-sm);color:var(--ink);background:var(--sunken,var(--surface-2));border:1px solid var(--border);border-radius:var(--r-full)}.topbar-search-input:focus{outline:none;border-color:var(--accent);box-shadow:var(--focus-ring);background:var(--surface-1)}.topbar-search-input::placeholder{color:var(--muted)}.topbar-search-button{margin-left:auto}.search-scrim{position:fixed;inset:0;z-index:55;background:var(--scrim)}.search-overlay{position:fixed;top:calc(var(--topbar-h) + var(--sp-2));left:var(--sp-3);right:var(--sp-3);z-index:56;display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-3);border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface-1);box-shadow:var(--shadow-3)}.search-overlay .topbar-search{flex:1 1;max-width:none}.search-overlay .topbar-search-input{padding-block:9px;font-size:var(--t-base)}.search-overlay-close{flex-shrink:0}@media (max-width:720px){.subject-button{max-width:none}}@media (max-width:560px){.app-workspace{padding:var(--sp-3) var(--sp-3) var(--sp-6)}.topbar{padding:0 var(--sp-2)}.topbar .wordmark-logo-mark{height:22px}.subject-button{padding:5px var(--sp-2);gap:var(--sp-1)}.subject-caret{display:none}.subject-menu{left:var(--sp-2);right:var(--sp-2)}}.single-factor-notice{display:flex;align-items:flex-start;gap:var(--sp-2);margin:0 0 var(--sp-4);padding:var(--sp-3);border:1px solid var(--danger-border);background:var(--danger-surface);border-radius:var(--r-md);font-size:var(--t-sm);line-height:1.55}.single-factor-notice>svg{flex:none;margin-top:2px;color:var(--danger)}.single-factor-notice>span{flex:1 1}.single-factor-notice a{color:var(--danger);font-weight:600}.single-factor-dismiss{flex:none;border:0;background:none;padding:2px;cursor:pointer;color:var(--muted);border-radius:var(--r-sm)}.single-factor-dismiss:hover{color:var(--ink)}.single-factor-dismiss:focus-visible{outline:none;box-shadow:var(--focus-ring)}.wordmark-art{display:contents}.wordmark-art-dark,:root[data-theme=dark] .wordmark-art-light{display:none}:root[data-theme=dark] .wordmark-art-dark{display:contents}html[data-session-hint="1"] .pub{visibility:hidden}