:root,[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--surface-0:#f5f5f7;--surface-1:#fff;--surface-2:#f5f5f7;--surface-3:#fff;--fill-hover:#0000000a;--fill-pressed:#00000012;--fill-control:#7676801f;--chrome-sidebar:#fff;--chrome-topbar:#f5f5f7;--text-primary:#1d1d1f;--text-secondary:#6e6e73;--text-tertiary:#86868b;--text-disabled:#00000042;--text-on-accent:#fff;--border-subtle:#0000000f;--border-default:#0000001a;--border-strong:#00000029;--border-focus:#2563eb;--border-divider:#d2d2d7;--accent-50:#eff4ff;--accent-100:#dbe6fe;--accent-200:#bfd3fe;--accent-300:#93b4fd;--accent-400:#6090fa;--accent-500:#3b6ef5;--accent-600:#2563eb;--accent-700:#1d4fc4;--accent-800:#1a40a0;--accent-900:#172f72;--accent-core:var(--accent-500);--accent-bright:var(--accent-600);--accent-hover:var(--accent-700);--accent-deep:var(--accent-800);--accent-wash:#2563eb1a;--accent-wash-strong:#2563eb29;--accent-ring:#2563eb47;--accent-ink:#fff;--success:#1f7a3a;--warning:#a05a00;--error:#d70015;--info:#2563eb;--success-wash:#34c75924;--warning-wash:#ff950024;--error-wash:#ff3b301f;--info-wash:#2563eb1a;--switch-on:#34c759;--chart-1:#2563eb;--chart-2:#f43f5e;--chart-3:#8b5cf6;--chart-4:#0e9f6e;--chart-5:#cc6c00;--chart-6:#0891b2;--chart-neutral:#7c7c80;--chart-grid:#0000000f;--chart-axis:#00000029;--gradient-icon-sheen:linear-gradient(180deg, #ffffff38 0%, #fff0 60%);--shadow-card:0 1px 2px #0000000a;--shadow-card-hover:0 4px 12px #0000000a, 0 16px 32px #00000014;--shadow-control:0 1px 1px #0000000a, 0 2px 6px #00000014;--shadow-overlay:0 0 0 .5px #00000014, 0 10px 30px #0000001f, 0 2px 6px #0000000a;--font-text:-apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", "Helvetica Neue", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", Roboto, sans-serif;--font-display:-apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "Helvetica Neue", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", Roboto, sans-serif;--font-mono:ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, monospace;--font-brand:var(--font-gsf,"Google Sans Flex"), var(--font-text);--fs-large:34px;--lh-large:41px;--fs-title1:28px;--lh-title1:34px;--fs-title2:22px;--lh-title2:28px;--fs-title3:17px;--lh-title3:22px;--fs-body:14px;--lh-body:21px;--fs-callout:13px;--lh-callout:18px;--fs-footnote:12px;--lh-footnote:16px;--fs-caption:11px;--lh-caption:13px;--fs-figure:32px;--lh-figure:38px;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--tracking-large:-.021em;--tracking-title:-.016em;--tracking-body:-.006em;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--space-9:96px;--space-10:128px;--radius-xs:6px;--radius-sm:10px;--radius-md:18px;--radius-lg:22px;--radius-icon:22.37%;--radius-full:980px;--control-sm:28px;--control-md:36px;--control-lg:44px;--sidebar-w:248px;--topbar-h:52px;--container-page:1200px;--container-form:640px;--measure-body:70ch;--breakpoint-bp:800px;--opacity-disabled:.4;--duration-instant:.12s;--duration-quick:.2s;--duration-smooth:.32s;--duration-sheet:.45s;--ease-out:cubic-bezier(.25, .1, .25, 1);--ease-spring:cubic-bezier(.32, .72, 0, 1);--ease-inout:cubic-bezier(.42, 0, .58, 1);--z-base:0;--z-raised:10;--z-sticky:100;--z-overlay:400;--z-toast:600}html{-webkit-text-size-adjust:100%}body{background-color:var(--surface-0);color:var(--text-primary);font-family:var(--font-text);font-size:var(--fs-body);line-height:var(--lh-body);letter-spacing:var(--tracking-body);font-weight:var(--weight-regular);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0}:focus-visible{outline:2px solid var(--accent-bright);outline-offset:2px;border-radius:6px}::selection{background:var(--accent-200)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}
.t-display{font-family:var(--font-display);font-size:var(--fs-large);line-height:var(--lh-large);font-weight:var(--weight-bold);letter-spacing:var(--tracking-large)}.t-h1{font-family:var(--font-display);font-size:var(--fs-title1);line-height:var(--lh-title1);font-weight:var(--weight-bold);letter-spacing:var(--tracking-large)}.t-h2{font-family:var(--font-display);font-size:var(--fs-title2);line-height:var(--lh-title2);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-title)}.t-h3{font-size:var(--fs-title3);line-height:var(--lh-title3);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-title)}.t-body{font-size:var(--fs-body);line-height:var(--lh-body)}.t-small{font-size:var(--fs-callout);line-height:var(--lh-callout)}.t-fine{font-size:var(--fs-footnote);line-height:var(--lh-footnote)}.t-caption{font-size:var(--fs-caption);line-height:var(--lh-caption);letter-spacing:0}.t-eyebrow{font-size:var(--fs-footnote);line-height:var(--lh-footnote);font-weight:var(--weight-semibold);color:var(--text-secondary);letter-spacing:0}.t-secondary{color:var(--text-secondary)}.t-tertiary{color:var(--text-tertiary)}.t-num{font-variant-numeric:tabular-nums}.t-mono{font-family:var(--font-mono);letter-spacing:0;font-size:.9em}h1,h2,h3,h4,p{margin:0}a,.link{color:var(--accent-bright);transition:color var(--duration-instant) var(--ease-out);text-decoration:none}a:hover,.link:hover{text-underline-offset:2px;text-decoration:underline}code,.code{font-family:var(--font-mono);letter-spacing:0;background:var(--fill-control);border-radius:var(--radius-xs);padding:1px 6px;font-size:12.5px}.btn{height:var(--control-md);border-radius:var(--radius-full);font:inherit;font-size:var(--fs-body);font-weight:var(--weight-medium);letter-spacing:var(--tracking-body);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color var(--duration-quick) var(--ease-out), color var(--duration-quick) var(--ease-out), box-shadow var(--duration-quick) var(--ease-out), transform var(--duration-instant) var(--ease-out);border:0;justify-content:center;align-items:center;gap:6px;padding:0 18px;line-height:1;display:inline-flex;position:relative;text-decoration:none!important}.btn:active{transform:scale(.97)}.btn svg{flex:none;width:16px;height:16px}.btn-primary{background:var(--accent-bright);color:var(--accent-ink)}.btn-primary:hover{background:var(--accent-hover);color:var(--accent-ink)}.btn-primary:active{background:var(--accent-deep)}.btn-secondary{background:var(--fill-control);color:var(--text-primary)}.btn-secondary:hover{color:var(--text-primary);background:#7676802e}.btn-tinted{background:var(--accent-wash);color:var(--accent-bright)}.btn-tinted:hover{background:var(--accent-wash-strong);color:var(--accent-bright)}.btn-tertiary{color:var(--accent-bright);background:0 0;padding:0 10px}.btn-tertiary:hover{background:var(--fill-hover);color:var(--accent-bright)}.btn-plain-neutral{color:var(--text-secondary);background:0 0;padding:0 10px}.btn-plain-neutral:hover{background:var(--fill-hover);color:var(--text-primary)}.btn-danger{background:var(--error);color:#fff}.btn-danger:hover{color:#fff;background:#b00012}.btn-sm{height:var(--control-sm);font-size:var(--fs-callout);padding:0 12px}.btn-lg{height:var(--control-lg);padding:0 24px;font-size:15px}.btn-icon{width:var(--control-md);padding:0}.btn-icon.btn-sm{width:var(--control-sm);padding:0}.btn[disabled],.btn[aria-disabled=true]{opacity:var(--opacity-disabled);pointer-events:none}.btn[aria-busy=true]:before{content:"";border:2px solid;border-right-color:#0000;border-radius:50%;width:14px;height:14px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.badge{border-radius:var(--radius-full);background:var(--fill-control);height:22px;color:var(--text-secondary);font-size:var(--fs-footnote);font-weight:var(--weight-semibold);letter-spacing:0;white-space:nowrap;align-items:center;gap:5px;padding:0 9px;display:inline-flex}.badge-plain{font-weight:var(--weight-medium)}.badge-success{background:var(--success-wash);color:var(--success)}.badge-warning{background:var(--warning-wash);color:var(--warning)}.badge-error{background:var(--error-wash);color:var(--error)}.badge-info{background:var(--info-wash);color:var(--info)}.chip{border-radius:var(--radius-full);background:var(--fill-control);height:30px;color:var(--text-primary);font:inherit;font-size:var(--fs-callout);font-weight:var(--weight-medium);cursor:pointer;transition:background-color var(--duration-quick) var(--ease-out), color var(--duration-quick) var(--ease-out);border:0;align-items:center;gap:6px;padding:0 14px;display:inline-flex}.chip:hover{background:#7676802e}.chip[aria-pressed=true],.chip.is-selected{background:var(--text-primary);color:#fff}.card{background:var(--surface-1);border-radius:var(--radius-md);padding:var(--space-5);box-shadow:var(--shadow-card)}.card-tight{padding:18px}.card .card{background:var(--surface-2);box-shadow:none}.card-head{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);display:flex}a.card,.card-link{color:inherit;transition:box-shadow var(--duration-smooth) var(--ease-spring), transform var(--duration-smooth) var(--ease-spring);display:block;text-decoration:none!important}a.card:hover,.card-link:hover{color:inherit;box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}a.card:active,.card-link:active{transform:translateY(0)scale(.995)}.group-label{padding:0 var(--space-1) var(--space-2);font-size:var(--fs-footnote);font-weight:var(--weight-semibold);color:var(--text-secondary);letter-spacing:0}.field{flex-direction:column;gap:6px;display:flex}.label{font-size:var(--fs-callout);font-weight:var(--weight-medium);color:var(--text-primary)}.label .req{color:var(--text-tertiary);font-weight:var(--weight-regular);margin-left:2px}.hint{font-size:var(--fs-footnote);color:var(--text-secondary)}.field-error .hint,.error-text{color:var(--error)}.input,.select,.textarea{box-sizing:border-box;width:100%;height:var(--control-md);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-1);color:var(--text-primary);font:inherit;font-size:var(--fs-body);transition:border-color var(--duration-quick) var(--ease-out), box-shadow var(--duration-quick) var(--ease-out);padding:0 12px}.input::placeholder,.textarea::placeholder{color:var(--text-tertiary)}.input:hover,.select:hover,.textarea:hover{border-color:#0000003d}.input:focus,.select:focus,.textarea:focus{border-color:var(--border-focus);box-shadow:0 0 0 4px var(--accent-ring);outline:none}.input:disabled,.select:disabled,.textarea:disabled{background:var(--surface-2);color:var(--text-disabled);border-color:var(--border-subtle);cursor:not-allowed}.field-error .input,.field-error .select,.field-error .textarea,.input[aria-invalid=true]{border-color:var(--error);box-shadow:0 0 0 4px var(--error-wash)}.textarea{resize:vertical;height:auto;min-height:88px;line-height:var(--lh-body);padding:10px 12px}.select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%231d1d1f' stroke-opacity='.55' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m3 4.5 3-3 3 3M3 7.5l3 3 3-3'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:34px}.input-group{align-items:center;display:flex;position:relative}.input-group>svg{width:15px;height:15px;color:var(--text-secondary);pointer-events:none;position:absolute;left:10px}.input-group>.input{background:var(--fill-control);border-radius:var(--radius-sm);border-color:#0000;padding-left:32px}.input-group>.input:hover{border-color:#0000}.input-group>.input:focus{background:var(--surface-1);border-color:var(--border-focus)}.input-group>.kbd{position:absolute;right:8px}.kbd{border-radius:var(--radius-xs);background:var(--surface-1);height:20px;color:var(--text-secondary);font-size:var(--fs-caption);font-family:var(--font-text);align-items:center;padding:0 6px;display:inline-flex;box-shadow:0 0 0 .5px #0000001f,0 1px #00000014}.check{align-items:center;gap:var(--space-2);font-size:var(--fs-body);cursor:pointer;display:inline-flex}.check input{width:16px;height:16px;accent-color:var(--accent-bright);cursor:pointer;margin:0}.switch{cursor:pointer;font-size:var(--fs-body);align-items:center;gap:10px;display:inline-flex}.switch input{appearance:none;border-radius:var(--radius-full);cursor:pointer;width:40px;height:24px;transition:background-color var(--duration-smooth) var(--ease-out);background:#78788033;margin:0;position:relative}.switch input:after{content:"";width:20px;height:20px;transition:transform var(--duration-smooth) var(--ease-spring);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 2px 6px #00000026,0 0 0 .5px #0000000a}.switch input:checked{background:var(--switch-on)}.switch input:checked:after{transform:translate(16px)}.segmented{background:var(--fill-control);border-radius:9px;padding:2px;display:inline-flex}.segmented button{height:28px;color:var(--text-primary);font:inherit;font-size:var(--fs-callout);font-weight:var(--weight-medium);cursor:pointer;transition:background-color var(--duration-quick) var(--ease-out), box-shadow var(--duration-quick) var(--ease-out);background:0 0;border:0;border-radius:7px;padding:0 14px}.segmented button[aria-pressed=true]{background:var(--surface-1);box-shadow:var(--shadow-control);font-weight:var(--weight-semibold)}.dropzone{align-items:center;gap:var(--space-2);padding:var(--space-6) var(--space-4);border-radius:var(--radius-md);background:var(--surface-2);color:var(--text-secondary);text-align:center;font-size:var(--fs-callout);transition:border-color var(--duration-quick) var(--ease-out), background-color var(--duration-quick) var(--ease-out);border:1.5px dashed #00000029;flex-direction:column;display:flex}.dropzone:hover,.dropzone.is-over{border-color:var(--accent-bright);background:var(--accent-wash)}.shell{grid-template-columns:var(--sidebar-w) 1fr;min-height:100vh;display:grid}.sidebar{box-sizing:border-box;height:100vh;padding:var(--space-3) 10px var(--space-4);background:var(--chrome-sidebar);border-right:1px solid var(--border-default);flex-direction:column;gap:2px;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar-brand{height:40px;margin-bottom:var(--space-3);font-family:var(--font-display);font-weight:var(--weight-semibold);align-items:center;gap:10px;padding:0 8px;font-size:15px;display:flex}.nav-group{margin-top:var(--space-4);font-size:var(--fs-caption);font-weight:var(--weight-semibold);color:var(--text-tertiary);letter-spacing:0;padding:0 10px 4px}.nav-item{height:32px;color:var(--text-primary);font-size:var(--fs-body);transition:background-color var(--duration-instant) var(--ease-out), color var(--duration-instant) var(--ease-out);border-radius:8px;align-items:center;gap:10px;padding:0 10px;display:flex;text-decoration:none!important}.nav-item svg{width:17px;height:17px;color:var(--accent-bright);flex:none}.nav-item:hover{background:var(--fill-hover);color:var(--text-primary)}.nav-item[aria-current=page]{background:var(--accent-bright);color:#fff;font-weight:var(--weight-medium)}.nav-item[aria-current=page] svg{color:#fff}.nav-item .count{font-size:var(--fs-footnote);color:var(--text-tertiary);font-variant-numeric:tabular-nums;margin-left:auto}.nav-item[aria-current=page] .count{color:#fffc}.main{flex-direction:column;min-width:0;display:flex}.topbar{z-index:var(--z-sticky);align-items:center;gap:var(--space-3);height:var(--topbar-h);padding:0 var(--space-6);background:var(--chrome-topbar);border-bottom:1px solid var(--border-default);display:flex;position:sticky;top:0}.topbar .grow{flex:1}.page{width:100%;max-width:var(--container-page);box-sizing:border-box;padding:var(--space-6) var(--space-6) var(--space-8);gap:var(--space-5);flex-direction:column;margin:0 auto;display:flex}.page-head{justify-content:space-between;align-items:flex-end;gap:var(--space-4);padding-top:var(--space-2);display:flex}.page-head p{color:var(--text-secondary);margin-top:6px;font-size:15px;line-height:22px}.avatar{color:#fff;width:28px;height:28px;font-size:var(--fs-footnote);font-weight:var(--weight-semibold);background:linear-gradient(#a1a1a6,#7c7c80);border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.avatar-lg{width:40px;height:40px;font-size:var(--fs-body)}.tabs{gap:var(--space-5);border-bottom:1px solid var(--border-default);display:flex}.tab{padding:var(--space-2) 0 var(--space-3);font:inherit;font-size:var(--fs-body);color:var(--text-secondary);cursor:pointer;transition:color var(--duration-instant) var(--ease-out);background:0 0;border:0;position:relative}.tab:hover{color:var(--text-primary)}.tab[aria-selected=true]{color:var(--text-primary);font-weight:var(--weight-semibold)}.tab[aria-selected=true]:after{content:"";background:var(--text-primary);border-radius:2px;height:2px;position:absolute;bottom:-1px;left:0;right:0}.breadcrumb{font-size:var(--fs-callout);color:var(--text-secondary);align-items:center;gap:6px;display:flex}.breadcrumb a{color:var(--text-secondary)}.breadcrumb a:hover{color:var(--text-primary);text-decoration:none}.breadcrumb>span:last-child{color:var(--text-primary);font-weight:var(--weight-medium)}.breadcrumb svg{color:var(--text-tertiary)}.pagination{justify-content:space-between;align-items:center;gap:var(--space-3);font-size:var(--fs-callout);color:var(--text-secondary);display:flex}.pagination .pages{gap:2px;display:flex}.page-btn{min-width:28px;height:28px;font:inherit;font-size:var(--fs-callout);color:var(--text-primary);cursor:pointer;font-variant-numeric:tabular-nums;background:0 0;border:0;border-radius:8px;padding:0 6px}.page-btn:hover{background:var(--fill-hover)}.page-btn[aria-current=page]{background:var(--text-primary);color:#fff;font-weight:var(--weight-semibold)}.table-wrap{background:var(--surface-1);border-radius:var(--radius-md);box-shadow:var(--shadow-card);overflow:auto}.toolbar{align-items:center;gap:var(--space-2);padding:14px var(--space-5);flex-wrap:wrap;display:flex}.toolbar .grow{flex:1}.table{border-collapse:collapse;width:100%;font-size:var(--fs-body)}.table th{z-index:1;height:34px;padding:0 var(--space-4);background:var(--surface-1);color:var(--text-secondary);font-size:var(--fs-footnote);font-weight:var(--weight-semibold);letter-spacing:0;text-align:left;white-space:nowrap;border-bottom:1px solid var(--border-default);position:sticky;top:0}.table th:first-child,.table td:first-child{padding-left:var(--space-5)}.table th:last-child,.table td:last-child{padding-right:var(--space-4)}.table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.table th.sortable:hover,.table th[aria-sort]{color:var(--text-primary)}.table td{height:52px;padding:0 var(--space-4);border-bottom:1px solid var(--border-default);white-space:nowrap}.table tbody tr{transition:background-color var(--duration-instant) var(--ease-out)}.table tbody tr:hover{background:var(--fill-hover)}.table tbody tr[aria-selected=true]{background:var(--accent-wash)}.table tbody tr:last-child td{border-bottom:0}.table .num{text-align:right;font-variant-numeric:tabular-nums}.table .muted{color:var(--text-secondary)}.table .sticky-col{background:inherit;position:sticky;left:0}.table-compact td{height:40px}.table-foot{padding:12px var(--space-5);border-top:1px solid var(--border-default)}.kpi{flex-direction:column;gap:6px;display:flex}.kpi-label{font-size:var(--fs-callout);font-weight:var(--weight-medium);color:var(--text-secondary);align-items:center;gap:6px;display:flex}.kpi-value{font-family:var(--font-display);font-size:var(--fs-figure);line-height:var(--lh-figure);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-large);font-variant-numeric:tabular-nums;color:var(--text-primary)}.kpi-value .unit{font-size:17px;font-weight:var(--weight-medium);color:var(--text-secondary);letter-spacing:0;margin-left:3px}.kpi-delta{font-size:var(--fs-footnote);font-weight:var(--weight-semibold);letter-spacing:0;align-items:center;gap:4px;display:inline-flex}.kpi-delta.up{color:var(--success)}.kpi-delta.down{color:var(--error)}.kpi-delta .vs{color:var(--text-secondary);font-weight:var(--weight-regular)}.progress{border-radius:var(--radius-full);background:var(--fill-control);height:6px;overflow:hidden}.progress>span{border-radius:inherit;background:var(--accent-bright);height:100%;transition:width var(--duration-smooth) var(--ease-spring);display:block}.timeline{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.timeline li{gap:var(--space-3);grid-template-columns:20px 1fr;padding-bottom:18px;display:grid;position:relative}.timeline li:before{content:"";background:var(--border-default);width:1.5px;position:absolute;top:18px;bottom:0;left:9px}.timeline li:last-child:before{display:none}.timeline .dot{background:#0000002e;border-radius:50%;width:10px;height:10px;margin:5px 0 0 5px}.timeline .dot.on{background:var(--accent-bright);box-shadow:0 0 0 4px var(--accent-wash)}.timeline .when{font-size:var(--fs-footnote);color:var(--text-secondary)}.rows{margin:0;padding:0;list-style:none}.rows>li{align-items:center;gap:var(--space-3);min-height:44px;box-shadow:inset 0 -1px 0 var(--border-default);padding:10px 0;display:flex}.rows>li:last-child{box-shadow:none}details.disclosure{box-shadow:inset 0 1px 0 var(--border-default)}details.disclosure>summary{align-items:center;gap:var(--space-3);cursor:pointer;min-height:44px;font-weight:var(--weight-medium);list-style:none;display:flex}details.disclosure>summary::-webkit-details-marker{display:none}details.disclosure>summary:after{content:"";border-right:1.75px solid var(--text-tertiary);border-bottom:1.75px solid var(--text-tertiary);width:8px;height:8px;transition:transform var(--duration-smooth) var(--ease-spring);margin-left:auto;transform:rotate(-45deg)}details.disclosure[open]>summary:after{transform:rotate(45deg)translate(-2px,-2px)}details.disclosure>div{padding-bottom:var(--space-4);color:var(--text-secondary)}.select-root{position:relative}.select-root>.select{text-align:left;cursor:pointer}.select-menu{z-index:var(--z-overlay);max-height:320px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto}.select-menu .menu-item{align-items:flex-start;height:auto;min-height:32px;padding:6px 10px}.select-menu .menu-item:hover{background:var(--fill-hover);color:var(--text-primary)}.select-menu .menu-item.is-active{background:var(--accent-bright);color:#fff}.select-menu .menu-item.is-active .select-hint{color:#fffc}.select-check{width:14px;font-weight:var(--weight-semibold);flex:none}.select-text{flex-direction:column;gap:1px;display:flex}.select-hint{font-size:var(--fs-footnote);color:var(--text-secondary)}.menu{background:var(--surface-3);min-width:200px;box-shadow:var(--shadow-overlay);border-radius:12px;padding:5px}.menu-item{align-items:center;gap:var(--space-2);border-radius:var(--radius-xs);width:100%;height:30px;font:inherit;font-size:var(--fs-body);color:var(--text-primary);text-align:left;cursor:pointer;background:0 0;border:0;padding:0 10px;display:flex}.menu-item:hover,.menu-item:focus-visible{background:var(--accent-bright);color:#fff;outline:none}.menu-item.danger{color:var(--error)}.menu-item.danger:hover{background:var(--error);color:#fff}.menu-sep{background:var(--border-default);height:1px;margin:5px 10px}.tooltip{color:#fff;font-size:var(--fs-footnote);line-height:var(--lh-footnote);background:#1d1d1f;border-radius:7px;align-self:flex-start;padding:5px 9px;display:inline-block}.scrim{z-index:var(--z-overlay);padding:var(--space-4);background:#0000003d;place-items:center;display:grid;position:fixed;inset:0}.dialog{box-sizing:border-box;background:var(--surface-3);border-radius:var(--radius-lg);width:min(440px,100%);box-shadow:var(--shadow-overlay);animation:sheet-in var(--duration-sheet) var(--ease-spring);flex-direction:column;display:flex}@keyframes sheet-in{0%{opacity:0;transform:translateY(12px)scale(.98)}}.dialog-head{padding:var(--space-5) var(--space-5) 0;flex-direction:column;gap:6px;display:flex}.dialog-head p{color:var(--text-secondary)}.dialog-body{padding:var(--space-4) var(--space-5);gap:var(--space-4);flex-direction:column;display:flex}.dialog-foot{padding:var(--space-2) var(--space-5) var(--space-5);justify-content:flex-end;gap:var(--space-2);display:flex}.dialog-foot .btn{min-width:88px}.drawer{width:min(460px,100% - 16px);z-index:var(--z-overlay);background:var(--surface-3);border-radius:var(--radius-lg);box-shadow:var(--shadow-overlay);flex-direction:column;display:flex;position:fixed;top:8px;bottom:8px;right:8px}.toast{align-items:flex-start;gap:var(--space-3);box-sizing:border-box;width:360px;max-width:100%;padding:14px var(--space-4);background:var(--surface-3);box-shadow:var(--shadow-overlay);border-radius:16px;display:flex}.toast .icon,.alert .icon{flex:none;width:18px;height:18px;margin-top:1px}.toast-title{font-weight:var(--weight-semibold)}.toast-body{font-size:var(--fs-callout);color:var(--text-secondary);margin-top:2px}.alert{gap:var(--space-3);padding:12px var(--space-4);font-size:var(--fs-callout);background:var(--surface-1);box-shadow:var(--shadow-card);color:var(--text-primary);border-radius:12px;display:flex}.alert b{font-weight:var(--weight-semibold)}.alert-info .icon{color:var(--info)}.alert-success .icon{color:var(--success)}.alert-warning .icon{color:var(--warning)}.alert-error .icon{color:var(--error)}.alert-error{background:var(--error-wash);box-shadow:none}.alert-error b{color:var(--error)}.empty{padding:var(--space-8) var(--space-4);text-align:center;flex-direction:column;align-items:center;gap:6px;display:flex}.empty .glyph{background:var(--fill-control);width:52px;height:52px;color:var(--text-secondary);margin-bottom:var(--space-3);border-radius:50%;place-items:center;display:grid}.empty .glyph svg{width:24px;height:24px}.empty p{color:var(--text-secondary);max-width:38ch}.empty .btn{margin-top:var(--space-4)}.skeleton{animation:shimmer 1.6s var(--ease-inout) infinite;background:linear-gradient(90deg,#ececef 0%,#f6f6f8 50%,#ececef 100%) 0 0/200% 100%;border-radius:6px;display:block}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.app-tile{align-items:flex-start;gap:14px;display:flex}.app-icon{width:44px;height:44px;font-family:var(--font-display);font-weight:var(--weight-semibold);color:#fff;background:var(--accent-bright);border-radius:22.37%;flex:none;place-items:center;font-size:19px;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 0 0 .5px #00000014,0 1px 2px #00000014}.app-icon:after{content:"";background:var(--gradient-icon-sheen);position:absolute;inset:0}.app-icon>svg{z-index:1;fill:none;stroke:currentColor;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round;width:54%;height:54%;position:relative}.app-icon.c1{background:linear-gradient(135deg,#3b82f6,#8b5cf6)}.app-icon.c2{background:linear-gradient(135deg,#fb923c,#ec4899)}.app-icon.c3{background:linear-gradient(135deg,#a78bfa,#ec4899)}.app-icon.c4{background:linear-gradient(135deg,#34d399,#0891b2)}.app-icon.c5{background:linear-gradient(135deg,#facc15,#f97316)}.app-icon.c6{background:linear-gradient(135deg,#22d3ee,#2563eb)}.app-icon.c7{background:linear-gradient(#5e5e63,#2c2c2e)}.app-meta{flex-direction:column;gap:3px;min-width:0;display:flex}.app-name{font-weight:var(--weight-semibold);letter-spacing:var(--tracking-title);align-items:center;gap:var(--space-2);font-size:15px;display:flex}.app-desc{font-size:var(--fs-callout);color:var(--text-secondary);text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.app-foot .grow{flex:1}.app-foot{align-items:center;gap:var(--space-2);box-shadow:inset 0 1px 0 var(--border-default);font-size:var(--fs-footnote);color:var(--text-secondary);margin-top:14px;padding-top:12px;display:flex}.grid{gap:var(--space-4);display:grid}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.stack{gap:var(--space-4);flex-direction:column;display:flex}.row{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}@media (max-width:1023px){.grid-4,.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:799px){.shell{grid-template-columns:1fr}.sidebar{display:none}.topbar,.page{padding-left:var(--space-4);padding-right:var(--space-4)}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.page-head{flex-direction:column;align-items:flex-start}}
.sidebar-foot{align-items:center;gap:var(--space-2);padding:var(--space-3) 10px 0;box-shadow:inset 0 1px 0 var(--border-default);margin-top:auto;display:flex}.sidebar-foot .who{flex-direction:column;flex:1;min-width:0;display:flex}.sidebar-foot .who b{font-size:var(--fs-callout);font-weight:var(--weight-medium);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sidebar-foot .who span{font-size:var(--fs-caption);color:var(--text-secondary)}.nav-item.is-soon{color:var(--text-tertiary);pointer-events:none}.nav-item.is-soon svg{color:var(--text-tertiary)}.nav-item .soon{font-size:var(--fs-caption);color:var(--text-tertiary);margin-left:auto}.login-wrap{min-height:100vh;padding:var(--space-4);place-items:center;display:grid}.login-card{box-sizing:border-box;width:min(400px,100%);padding:var(--space-6);gap:var(--space-4);text-align:center;flex-direction:column;display:flex}.login-card form{gap:var(--space-3);text-align:left;flex-direction:column;display:flex}.form-actions{justify-content:flex-end;gap:var(--space-2);display:flex}.token-box{align-items:center;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-sm);background:var(--surface-2);font-family:var(--font-mono);word-break:break-all;font-size:12.5px;display:flex}.kv{gap:10px var(--space-4);font-size:var(--fs-body);grid-template-columns:112px 1fr;display:grid}.kv dt{color:var(--text-secondary)}.kv dd{overflow-wrap:anywhere;min-width:0;margin:0}.prose-guide{gap:var(--space-3);color:var(--text-primary);flex-direction:column;display:flex}.prose-guide pre{padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);background:var(--surface-2);font-family:var(--font-mono);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:12.5px}.prose-guide ol,.prose-guide ul{flex-direction:column;gap:6px;margin:0;padding-left:20px;display:flex}.segmented .seg-link{height:28px;color:var(--text-primary);font-size:var(--fs-callout);font-weight:var(--weight-medium);transition:background-color var(--duration-quick) var(--ease-out);border-radius:7px;align-items:center;padding:0 14px;text-decoration:none;display:inline-flex}.segmented .seg-link[aria-current=page]{background:var(--surface-1);box-shadow:var(--shadow-control);font-weight:var(--weight-semibold)}.color-pick{cursor:pointer;position:relative}.color-pick input{opacity:0;width:0;height:0;position:absolute}.color-pick .app-icon{width:30px;height:30px;transition:box-shadow var(--duration-quick) var(--ease-out)}.color-pick input:checked+.app-icon{box-shadow:0 0 0 2px var(--surface-1), 0 0 0 4px var(--accent-bright)}.color-pick input:focus-visible+.app-icon{outline:2px solid var(--accent-bright);outline-offset:4px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.vis-form .vis-dept,.vis-form .vis-emails{display:none}:is(.vis-form:has(input[name=visibility][value=department]:checked) .vis-dept,.vis-form:has(input[name=visibility][value=custom]:checked) .vis-dept,.vis-form:has(input[name=visibility][value=custom]:checked) .vis-emails){display:flex}.vis-form .vis-reason{display:none}.vis-form:has(input[name=visibility][value=org]:checked) .vis-reason{display:flex}.shortcuts{gap:var(--space-5);padding:0 var(--space-1);flex-wrap:wrap;display:flex}.shortcut{width:64px;color:var(--text-primary);font-size:var(--fs-footnote);text-align:center;flex-direction:column;align-items:center;gap:6px;display:flex;text-decoration:none!important}.shortcut .app-icon{transition:transform var(--duration-quick) var(--ease-spring)}.shortcut:hover .app-icon{transform:translateY(-2px)}.try-row{gap:var(--space-2);flex-wrap:wrap;display:flex}.try-row .chip{height:34px;padding:0 14px}.try-row .chip svg{width:14px;height:14px;color:var(--accent-bright)}.project-tabs{align-self:flex-start;position:relative}.seg-more{position:relative}.seg-more>summary{cursor:pointer;color:var(--text-secondary);gap:4px;list-style:none}.seg-more>summary::-webkit-details-marker{display:none}.seg-more>summary svg{transition:transform var(--duration-quick) var(--ease-out);transform:rotate(90deg)}.seg-more[open]>summary svg{transform:rotate(-90deg)}.seg-more>.menu{min-width:160px;z-index:var(--z-overlay);position:absolute;top:calc(100% + 6px);right:0}.seg-more .menu-item{text-decoration:none}
