@import "https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=Geist+Mono:wght@400;500&display=swap";
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--neutral-50:#f8f9fb;--neutral-100:#f1f3f7;--neutral-200:#e5e8ee;--neutral-300:#d3d8e2;--neutral-400:#a8b0c0;--neutral-500:#7b8496;--neutral-600:#5b6474;--neutral-700:#414958;--neutral-800:#2a303c;--neutral-900:#171b23;--neutral-950:#0e1117;--primary-50:#eef2ff;--primary-100:#dfe6ff;--primary-200:#c2ceff;--primary-300:#9aadff;--primary-400:#6b84f7;--primary-500:#4360ea;--primary-600:#2f4bd6;--primary-700:#2a3cae;--primary-800:#26348a;--primary-900:#22306e;--success-50:#e8f7f0;--success-100:#cdeddf;--success-500:#0f8a5f;--success-700:#0a6647;--warning-50:#fdf4e3;--warning-100:#f9e6c2;--warning-500:#c07c0c;--warning-700:#8c5906;--danger-50:#fdeeee;--danger-100:#f8d5d5;--danger-500:#cf3b3b;--danger-700:#9d2626;--info-50:var(--primary-50);--info-100:var(--primary-100);--info-500:var(--primary-500);--info-700:var(--primary-700);--color-canvas:var(--neutral-100);--color-surface:#fdfdfe;--color-surface-2:var(--neutral-50);--color-surface-inset:var(--neutral-100);--color-text:var(--neutral-900);--color-text-muted:var(--neutral-600);--color-text-subtle:var(--neutral-500);--color-text-invert:#fdfdfe;--color-border:var(--neutral-200);--color-border-strong:var(--neutral-300);--color-primary:var(--primary-500);--color-primary-hover:var(--primary-600);--color-primary-active:var(--primary-700);--color-primary-soft:var(--primary-50);--color-primary-text:var(--primary-700);--color-focus:var(--primary-400);--color-overlay:#0e11176b;--font-sans:"Geist","Inter var",system-ui,-apple-system,"Segoe UI",sans-serif;--font-mono:"Geist Mono","SF Mono",ui-monospace,Menlo,monospace;--text-2xs:11px;--text-xs:12px;--text-sm:13px;--text-base:14px;--text-md:15px;--text-lg:16px;--text-xl:18px;--text-2xl:22px;--text-3xl:28px;--text-4xl:36px;--text-5xl:46px;--leading-tight:1.2;--leading-snug:1.35;--leading-normal:1.55;--tracking-tight:-.011em;--tracking-caps:.06em;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-full:999px;--shadow-xs:0 1px 2px #0e11170d;--shadow-sm:0 1px 2px #0e11170f,0 2px 6px #0e11170a;--shadow-md:0 2px 4px #0e11170d,0 8px 20px #0e111714;--shadow-lg:0 8px 16px #0e11170f,0 24px 56px #0e111724;--ring:0 0 0 3px #4360ea47;--dur-fast:.11s;--dur-base:.18s;--ease:cubic-bezier(.32,.72,.32,1);--nav-w:236px;--nav-w-collapsed:56px;--header-h:52px;--row-h:44px}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-canvas:#0e1117;--color-surface:#161a22;--color-surface-2:#1c212b;--color-surface-inset:#12161d;--color-text:#e9ecf2;--color-text-muted:#a2abbd;--color-text-subtle:#7b8496;--color-text-invert:#0e1117;--color-border:#252c38;--color-border-strong:#333c4b;--color-primary:var(--primary-400);--color-primary-hover:var(--primary-300);--color-primary-active:var(--primary-200);--color-primary-soft:#4360ea29;--color-primary-text:var(--primary-300);--color-overlay:#05070a99;--success-50:#0f8a5f24;--success-100:#0f8a5f3d;--success-700:#5fd6a6;--warning-50:#c07c0c24;--warning-100:#c07c0c42;--warning-700:#e9b45c;--danger-50:#cf3b3b24;--danger-100:#cf3b3b42;--danger-700:#f08d8d;--shadow-xs:0 1px 2px #0006;--shadow-sm:0 1px 2px #00000073,0 2px 6px #0000004d;--shadow-md:0 2px 4px #0006,0 10px 24px #00000073;--shadow-lg:0 10px 20px #00000073,0 30px 60px #0000008c}*,:before,:after{box-sizing:border-box}body{background:var(--color-canvas);color:var(--color-text);font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);-webkit-font-smoothing:antialiased;font-feature-settings:"cv05" 1,"ss03" 1;margin:0}h1,h2,h3,h4,h5{letter-spacing:var(--tracking-tight);font-weight:600;line-height:var(--leading-tight);color:var(--color-text);margin:0}h1{font-size:var(--text-3xl)}h2{font-size:var(--text-2xl)}h3{font-size:var(--text-xl)}h4{font-size:var(--text-lg)}h5{font-size:var(--text-base)}p{margin:0 0 var(--space-3);text-wrap:pretty;max-width:68ch}a{color:var(--color-primary-text);transition:color var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease);border-bottom:1px solid #4360ea4d;text-decoration:none}a:hover{color:var(--color-primary-hover);border-bottom-color:currentColor}small{font-size:var(--text-xs);color:var(--color-text-muted)}code,kbd{font-family:var(--font-mono);font-size:.92em}hr{border:0;border-top:1px solid var(--color-border);margin:var(--space-6) 0}::selection{background:var(--primary-100);color:var(--primary-900)}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;border-radius:var(--radius-xs)}[disabled],.is-disabled{opacity:.45;pointer-events:none}.display{font-size:var(--text-5xl);letter-spacing:-.02em;font-weight:600;line-height:1.05}.kicker{font-size:var(--text-2xs);text-transform:uppercase;letter-spacing:var(--tracking-caps);color:var(--color-text-subtle);font-weight:600}.muted{color:var(--color-text-muted)}.subtle{color:var(--color-text-subtle)}.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.mono{font-family:var(--font-mono)}.right{text-align:right}.btn{justify-content:center;align-items:center;gap:var(--space-2);height:32px;padding:0 var(--space-3);border-radius:var(--radius-sm);color:var(--color-text);font:500 var(--text-sm)/1 var(--font-sans);letter-spacing:-.005em;cursor:pointer;white-space:nowrap;transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease);background:0 0;border:1px solid #0000;display:inline-flex}.btn:focus-visible{box-shadow:var(--ring);outline:none}.btn svg{flex:none;width:15px;height:15px}.btn-primary{background:var(--color-primary);border-color:var(--color-primary);color:#fff;box-shadow:var(--shadow-xs)}.btn-primary:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.btn-primary:active{background:var(--color-primary-active);border-color:var(--color-primary-active);box-shadow:none}.btn-secondary{background:var(--color-surface);border-color:var(--color-border-strong);color:var(--color-text);box-shadow:var(--shadow-xs)}.btn-secondary:hover{background:var(--color-surface-2);border-color:var(--neutral-400)}.btn-secondary:active{background:var(--color-surface-inset)}.btn-ghost{color:var(--color-text-muted)}.btn-ghost:hover{background:var(--color-surface-inset);color:var(--color-text)}.btn-danger{background:var(--danger-500);border-color:var(--danger-500);color:#fff}.btn-danger:hover{background:var(--danger-700);border-color:var(--danger-700)}.btn-quiet-danger{color:var(--danger-500)}.btn-quiet-danger:hover{background:var(--danger-50)}.btn-sm{height:26px;padding:0 var(--space-2);font-size:var(--text-xs)}.btn-lg{height:38px;padding:0 var(--space-4);font-size:var(--text-base)}.btn-icon{width:32px;padding:0}.btn-icon.btn-sm{width:26px}.btn-icon.btn-lg{width:38px}.btn-block{width:100%}.btn-group{display:inline-flex}.btn-group .btn{border-radius:0;margin-left:-1px}.btn-group .btn:first-child{border-radius:var(--radius-sm) 0 0 var(--radius-sm);margin-left:0}.btn-group .btn:last-child{border-radius:0 var(--radius-sm) var(--radius-sm) 0}.badge{border-radius:var(--radius-full);background:var(--color-surface-inset);height:20px;color:var(--color-text-muted);font:500 var(--text-2xs)/1 var(--font-sans);letter-spacing:.01em;white-space:nowrap;border:1px solid #0000;align-items:center;gap:6px;padding:0 8px;display:inline-flex}.badge:before{content:"";background:currentColor;border-radius:50%;flex:none;width:5px;height:5px}.badge-plain:before{display:none}.badge-neutral{background:var(--color-surface-inset);color:var(--color-text-muted)}.badge-success{background:var(--success-50);color:var(--success-700)}.badge-warning{background:var(--warning-50);color:var(--warning-700)}.badge-danger{background:var(--danger-50);color:var(--danger-700)}.badge-info{background:var(--info-50);color:var(--info-700)}.badge-outline{border-color:var(--color-border-strong);color:var(--color-text-muted);background:0 0}.badge-square{border-radius:var(--radius-xs)}.badge-lock{background:var(--color-surface-inset);color:var(--color-text-subtle)}.field{margin-bottom:var(--space-4);flex-direction:column;gap:6px;display:flex}.field>label,.label{font-size:var(--text-xs);color:var(--color-text-muted);font-weight:500}.label-req:after{content:"*";color:var(--danger-500);margin-left:3px}.hint{font-size:var(--text-xs);color:var(--color-text-subtle)}.error{font-size:var(--text-xs);color:var(--danger-700)}.input,.select,.textarea{width:100%;height:32px;padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);font:400 var(--text-base)/1 var(--font-sans);transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}.textarea{height:auto;min-height:76px;padding:var(--space-2) var(--space-3);line-height:var(--leading-snug);resize:vertical}.input::placeholder,.textarea::placeholder{color:var(--color-text-subtle)}.input:hover,.select:hover,.textarea:hover{border-color:var(--neutral-400)}.input:focus,.select:focus,.textarea:focus{border-color:var(--color-primary);box-shadow:var(--ring);outline:none}.input-invalid,.input-invalid:focus{border-color:var(--danger-500);box-shadow:0 0 0 3px #cf3b3b33}.select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--color-text-subtle) 50%),linear-gradient(135deg,var(--color-text-subtle) 50%,transparent 50%);background-position:calc(100% - 14px) 14px,calc(100% - 9px) 14px;background-repeat:no-repeat;background-size:5px 5px;padding-right:26px}.input-money{font-family:var(--font-mono);font-variant-numeric:tabular-nums;text-align:right}.input-affix{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);align-items:center;display:flex}.input-affix:focus-within{border-color:var(--color-primary);box-shadow:var(--ring)}.input-affix .input{border:0;box-shadow:none!important}.affix{padding:0 var(--space-2) 0 var(--space-3);color:var(--color-text-subtle);font-family:var(--font-mono);font-size:var(--text-sm)}.check{align-items:flex-start;gap:var(--space-2);font-size:var(--text-base);cursor:pointer;display:inline-flex}.check input{appearance:none;border:1px solid var(--color-border-strong);border-radius:var(--radius-xs);background:var(--color-surface);cursor:pointer;width:15px;height:15px;transition:all var(--dur-fast) var(--ease);flex:none;margin:2px 0 0}.check input[type=radio]{border-radius:50%}.check input:checked{background:var(--color-primary);border-color:var(--color-primary)}.check input[type=checkbox]:checked{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='white' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><path d='M3.5 8.5l3 3 6-7'/></svg>");background-position:50%;background-repeat:no-repeat;background-size:12px}.check input[type=radio]:checked{box-shadow:inset 0 0 0 3px var(--color-surface)}.check input:focus-visible{box-shadow:var(--ring);outline:none}.switch{align-items:center;gap:var(--space-2);cursor:pointer;font-size:var(--text-base);display:inline-flex}.switch input{appearance:none;border-radius:var(--radius-full);background:var(--neutral-300);cursor:pointer;width:32px;height:18px;transition:background var(--dur-base) var(--ease);flex:none;margin:0;position:relative}.switch input:after{content:"";width:14px;height:14px;box-shadow:var(--shadow-xs);transition:transform var(--dur-base) var(--ease);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px}.switch input:checked{background:var(--color-primary)}.switch input:checked:after{transform:translate(14px)}.switch input:focus-visible{box-shadow:var(--ring);outline:none}.seg{background:var(--color-surface-inset);border:1px solid var(--color-border);border-radius:var(--radius-sm);gap:2px;padding:2px;display:inline-flex}.seg-opt{height:24px;padding:0 var(--space-3);border-radius:var(--radius-xs);color:var(--color-text-muted);font:500 var(--text-xs)/1 var(--font-sans);cursor:pointer;transition:all var(--dur-fast) var(--ease);background:0 0;border:0;align-items:center;display:inline-flex}.seg-opt:hover{color:var(--color-text)}.seg-opt[aria-selected=true],.seg-opt.is-active{background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-xs)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-xs)}.card-pad{padding:var(--space-5)}.card-head{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border);display:flex}.card-title{font-size:var(--text-md);font-weight:600}.card-body{padding:var(--space-5)}.card-foot{padding:var(--space-3) var(--space-5);border-top:1px solid var(--color-border);background:var(--color-surface-2);border-radius:0 0 var(--radius-md) var(--radius-md)}.stat{padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.stat-label{font-size:var(--text-xs);color:var(--color-text-muted);font-weight:500}.stat-value{color:var(--color-text);font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:var(--text-xl);letter-spacing:-.03em;white-space:nowrap;margin-top:6px;font-weight:500}.stat-delta{font-size:var(--text-xs);align-items:center;gap:4px;margin-top:6px;font-weight:500;display:inline-flex}.delta-up{color:var(--success-700)}.delta-down{color:var(--danger-700)}.delta-flat{color:var(--color-text-subtle)}.table-wrap{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:auto}.table-toolbar{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);display:flex}.table-toolbar .grow{flex:1}table.table{border-collapse:separate;border-spacing:0;width:100%;font-size:var(--text-sm)}.table thead th{z-index:1;padding:0 var(--space-4);background:var(--color-surface-2);border-bottom:1px solid var(--color-border);text-align:left;height:34px;font-size:var(--text-2xs);text-transform:uppercase;letter-spacing:var(--tracking-caps);color:var(--color-text-subtle);white-space:nowrap;font-weight:600;position:sticky;top:0}.table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.table th.sortable:hover{color:var(--color-text)}.table th .caret{opacity:.5;margin-left:4px}.table tbody td{padding:0 var(--space-4);height:var(--row-h);border-bottom:1px solid var(--color-border);vertical-align:middle;color:var(--color-text)}.table tbody td.muted,.table tbody td .muted{color:var(--color-text-muted)}.table tbody tr:last-child td{border-bottom:0}.table tbody tr:hover td{background:var(--color-surface-2)}.table tbody tr.is-selected td{background:var(--color-primary-soft)}.table td.num,.table th.num{text-align:right;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.table th.num{text-align:right}.table td.pin,.table th.pin{background:var(--color-surface);z-index:2;position:sticky;left:0}.table thead th.pin{background:var(--color-surface-2);z-index:3}.table-total td{height:52px;color:var(--color-text);background:var(--color-surface-2);border-top:1px solid var(--color-border-strong);border-bottom:0;font-weight:600}.table-foot{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);border-top:1px solid var(--color-border);font-size:var(--text-xs);color:var(--color-text-muted);display:flex}.cell-person{align-items:center;gap:var(--space-3);min-width:0;display:flex}.cell-person .who{min-width:0}.cell-person .nm{white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.cell-person .sub{font-size:var(--text-xs);color:var(--color-text-subtle);white-space:nowrap}.cell-id{flex-direction:column;min-width:180px;max-width:280px;display:flex}.cell-id>*{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.cell-id>a,.cell-id>b{font-weight:500}.avatar{border-radius:var(--radius-full);background:var(--primary-100);width:28px;height:28px;color:var(--primary-800);font:600 var(--text-xs)/1 var(--font-sans);flex:none;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.avatar-sm{width:22px;height:22px;font-size:var(--text-2xs)}.avatar-lg{width:40px;height:40px;font-size:var(--text-base)}.avatar-xl{width:64px;height:64px;font-size:var(--text-xl)}.avatar-stack{display:inline-flex}.avatar-stack .avatar{box-shadow:0 0 0 2px var(--color-surface);margin-left:-7px}.avatar-stack .avatar:first-child{margin-left:0}.shell{grid-template-columns:var(--nav-w) 1fr;background:var(--color-canvas);min-height:100vh;display:grid}.sidebar{gap:var(--space-1);padding:var(--space-3);background:var(--color-surface);border-right:1px solid var(--color-border);flex-direction:column;display:flex}.brand{align-items:center;gap:var(--space-2);height:36px;padding:0 var(--space-2);margin-bottom:var(--space-3);letter-spacing:-.02em;font-weight:600;font-size:var(--text-md);display:flex}.brand-mark{border-radius:var(--radius-xs);background:var(--color-primary);color:#fff;width:22px;height:22px;font:700 var(--text-xs)/1 var(--font-sans);place-items:center;display:grid}.mark{flex:none;width:22px;height:22px;display:block}.nav-group{margin:var(--space-3) 0 var(--space-1);padding:0 var(--space-2);font-size:var(--text-2xs);text-transform:uppercase;letter-spacing:var(--tracking-caps);color:var(--color-text-subtle);font-weight:600}.nav-item{align-items:center;gap:var(--space-2);height:30px;padding:0 var(--space-2);border-radius:var(--radius-sm);color:var(--color-text-muted);font:500 var(--text-sm)/1 var(--font-sans);cursor:pointer;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease);background:0 0;border:0;text-decoration:none;display:flex}.nav-item:hover{background:var(--color-surface-inset);color:var(--color-text);border-bottom:0}.nav-item.is-active{background:var(--color-primary-soft);color:var(--color-primary-text)}.nav-item svg{opacity:.8;flex:none;width:16px;height:16px}.nav-item .count{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--color-text-subtle);margin-left:auto}.topbar{align-items:center;gap:var(--space-3);height:var(--header-h);padding:0 var(--space-6);background:var(--color-surface);border-bottom:1px solid var(--color-border);z-index:5;display:flex;position:sticky;top:0}.topbar .grow{flex:1}.crumbs{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-text-subtle);display:flex}.crumbs b{color:var(--color-text);font-weight:500}.page{padding:var(--space-6)}.page-head{justify-content:space-between;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-5);display:flex}.page-title{font-size:var(--text-2xl);letter-spacing:-.018em;font-weight:600}.page-sub{font-size:var(--text-sm);color:var(--color-text-muted);margin-top:2px}.tabs{gap:var(--space-4);border-bottom:1px solid var(--color-border);display:flex}.tab{padding:0 0 var(--space-2);color:var(--color-text-muted);font:500 var(--text-sm)/1 var(--font-sans);cursor:pointer;transition:color var(--dur-fast) var(--ease);background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px}.tab:hover{color:var(--color-text)}.tab[aria-selected=true],.tab.is-active{color:var(--color-text);border-bottom-color:var(--color-primary)}.alert{gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-2);font-size:var(--text-sm);display:flex}.alert-title{margin-bottom:2px;font-weight:600}.alert-info{background:var(--info-50);border-color:var(--info-100);color:var(--info-700)}.alert-success{background:var(--success-50);border-color:var(--success-100);color:var(--success-700)}.alert-warning{background:var(--warning-50);border-color:var(--warning-100);color:var(--warning-700)}.alert-danger{background:var(--danger-50);border-color:var(--danger-100);color:var(--danger-700)}.toast{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--neutral-900);color:var(--neutral-50);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);font-size:var(--text-sm);display:flex}.dialog-backdrop{background:var(--color-overlay);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:50;padding:var(--space-6);place-items:center;display:grid;position:fixed;inset:0}.dialog{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:min(480px,100%);box-shadow:var(--shadow-lg);overflow:hidden}.dialog-head{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border);display:flex}.dialog-title{font-size:var(--text-md);font-weight:600}.dialog-body{padding:var(--space-5)}.dialog-actions{justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-top:1px solid var(--color-border);background:var(--color-surface-2);display:flex}.drawer{background:var(--color-surface);border-left:1px solid var(--color-border);width:min(420px,100%);box-shadow:var(--shadow-lg);z-index:50;flex-direction:column;display:flex;position:fixed;top:0;bottom:0;right:0}.empty{place-items:center;gap:var(--space-2);padding:var(--space-12) var(--space-6);text-align:center;border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);display:grid}.empty h4{font-size:var(--text-md)}.empty p{color:var(--color-text-muted);font-size:var(--text-sm);max-width:38ch;margin:0}.progress{border-radius:var(--radius-full);background:var(--color-surface-inset);height:5px;overflow:hidden}.progress>i{border-radius:inherit;background:var(--color-primary);height:100%;transition:width var(--dur-base) var(--ease);display:block}.skeleton{border-radius:var(--radius-xs);background:linear-gradient(90deg,var(--color-surface-inset) 25%,var(--color-surface-2) 50%,var(--color-surface-inset) 75%);background-size:200% 100%;height:12px;animation:1.4s linear infinite sk}@keyframes sk{to{background-position:-200% 0}}.stepper{align-items:center;gap:var(--space-2);display:flex}.step{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-text-subtle);white-space:nowrap;display:flex}.step-dot{border:1px solid var(--color-border-strong);background:var(--color-surface);width:20px;height:20px;font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--color-text-subtle);border-radius:50%;place-items:center;display:grid}.step.is-current{color:var(--color-text);font-weight:500}.step.is-current .step-dot{border-color:var(--color-primary);background:var(--color-primary);color:#fff}.step.is-done{color:var(--color-text-muted)}.step.is-done .step-dot{border-color:var(--success-500);background:var(--success-500);color:#fff}.step-line{background:var(--color-border-strong);width:26px;height:1px}.stack{flex-direction:column;display:flex}.row{align-items:center;display:flex}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-5{gap:var(--space-5)}.gap-6{gap:var(--space-6)}.gap-8{gap:var(--space-8)}.gap-10{gap:var(--space-10)}.gap-12{gap:var(--space-12)}.on-dark{color:var(--color-text);--color-text:var(--neutral-100);--color-text-muted:var(--neutral-400);--color-text-subtle:var(--neutral-500);--color-surface:var(--neutral-800);--color-surface-2:var(--neutral-800);--color-surface-inset:var(--neutral-900);--color-border:var(--neutral-700);--color-border-strong:var(--neutral-600);--color-primary:var(--primary-400);--color-primary-text:var(--primary-300);--color-primary-soft:#4360ea38;--success-50:#0f8a5f29;--success-100:#0f8a5f42;--success-700:#5fd6a6;--warning-50:#c07c0c29;--warning-100:#c07c0c47;--warning-700:#e9b45c;--danger-50:#cf3b3b29;--danger-100:#cf3b3b47;--danger-700:#f08d8d;--info-50:#4360ea2e;--info-100:#4360ea4d;--info-700:var(--primary-300)}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.wrap{flex-wrap:wrap}.split{gap:var(--space-4);grid-template-columns:minmax(0,1fr) 380px;display:grid}.split>*{min-width:0}@media (max-width:1200px){.split{grid-template-columns:minmax(0,1fr)}}@media (max-width:1180px){.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:820px){.grid-3,.grid-2{grid-template-columns:minmax(0,1fr)}}.auth-shell{min-height:100vh;padding:var(--space-6);background:var(--color-canvas);place-items:center;display:grid}.auth-card{width:min(380px,100%)}
html,body{max-width:100vw;height:100%;overflow-x:hidden}@keyframes vAurora1{0%,to{transform:translate(-6%,-4%)scale(1)}50%{transform:translate(8%,6%)scale(1.16)}}@keyframes vAurora2{0%,to{transform:translate(5%,3%)scale(1.08)}50%{transform:translate(-7%,-6%)scale(.94)}}@keyframes vAurora3{0%,to{transform:translate(0)scale(1)}50%{transform:translate(-9%,8%)scale(1.2)}}@keyframes vSheen{0%{transform:translate(-140%)}55%,to{transform:translate(340%)}}@keyframes vSpin{to{transform:rotate(360deg)}}@keyframes vBreathe{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes vHalo{0%,to{opacity:.28;transform:scale(1)}50%{opacity:.6;transform:scale(1.2)}}@keyframes vDrift{0%,to{transform:translate(0)}33%{transform:translate(13%,-10%)}66%{transform:translate(-10%,12%)}}@keyframes vMarquee{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes vPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.82)}}@keyframes vSunRotate{0%{transform:rotate(0)scale(1)}to{transform:rotate(90deg)scale(1)}}.mono-kicker{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:.16em;text-transform:uppercase;color:var(--color-primary-text);align-items:center;gap:8px;display:inline-flex}.mono-tag{border-radius:var(--radius-xs);background:var(--glass-card);border:1px solid var(--hairline);height:20px;font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-subtle);align-items:center;padding:0 8px;display:inline-flex}.numbered-card{border:1px solid var(--hairline);border-radius:var(--radius-md);background:var(--glass-panel);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);flex-direction:column;gap:8px;padding:20px;display:flex;position:relative}.numbered-card .num-index{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-primary-text)}.terminal-window{border:1px solid var(--hairline);border-radius:var(--radius-md);background:var(--float-solid);overflow:hidden;box-shadow:0 30px 70px -30px #00000073}.terminal-titlebar{border-bottom:1px solid var(--hairline);align-items:center;gap:8px;height:36px;padding:0 14px;display:flex}.terminal-dot{background:var(--color-border-strong);border-radius:50%;width:8px;height:8px}.btn-pill{border-radius:var(--radius-full)!important}.grid-auto-2{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));display:grid}.grid-auto-3{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(230px,1fr));display:grid}.grid-auto-4{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(190px,1fr));display:grid}.grid-auto-3-wide{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(300px,1fr));display:grid}.header-nav-links{align-items:center;gap:var(--space-5);display:flex}.header-desktop-actions{align-items:center;gap:var(--space-3);display:flex}.header-burger,.mobile-nav-panel{display:none}@media (max-width:880px){.header-nav-links,.header-desktop-actions{display:none}.header-burger{display:inline-flex}.mobile-nav-panel.is-open{display:flex}}.grid-side-380,.grid-side-400,.grid-side-240,.grid-toc-220{gap:var(--space-4);align-items:start;display:grid}.grid-side-380{grid-template-columns:minmax(0,1fr) 380px}.grid-side-400{grid-template-columns:minmax(0,1fr) minmax(280px,400px);align-items:center}.grid-side-240{grid-template-columns:minmax(0,1fr) 240px;gap:48px}.grid-toc-220{grid-template-columns:220px minmax(0,1fr);gap:48px}.grid-side-380>*,.grid-side-400>*,.grid-side-240>*,.grid-toc-220>*,.grid-auto-2>*,.grid-auto-3>*,.grid-auto-4>*,.grid-auto-3-wide>*{min-width:0}@media (max-width:860px){.grid-side-380,.grid-side-400,.grid-side-240,.grid-toc-220{grid-template-columns:minmax(0,1fr)}}@media (max-width:560px){.hide-mobile{display:none}}
