/* Komponenty UI przeniesione z prototypu „LLMinator — redesign UI/UX” (artboardy Design).
   Reguły wspólne są globalne; reguły różne między ekranami są przypięte do :where(body[data-page]) — bez zmiany specyficzności. */
@font-face{font-family:'PolySans Neutral';src:url('../fonts/polysans-neutral.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
body{margin:0;background:var(--bg)}
body:where([data-page="login"]){margin:0;background:var(--inverse)}
body:where([data-page="modals"]){margin:0;background:revert}
*{box-sizing:border-box}
a{color:var(--lav-text)}
:where([data-page="home"]) a{color:var(--lav-text);text-decoration:none}
:where([data-page="catalog"]) a{color:var(--lav-text);text-decoration:none}
:where([data-page="answer"]) a{color:var(--lav-text);text-decoration:none}
:where([data-page="admin"]) a{color:var(--lav-text);text-decoration:none}
.app{--ink:#1D1E1F;--ink2:#313233;--g1:#454647;--g2:#737375;--g3:#A4A6A8;--line:#E0E2E5;--line2:#EBEDF0;--muted:#F2F4F7;--paper:#FAFBFC;--mint:#A2F5E7;--mint2:#B6FDF1;--mint3:#CFFDF5;--mint50:#E3FCF7;--teal4:#83EBD9;--teal7:#3EAD9E;--teal8:#007A6A;--lav:#C5C3EE;--lav1:#E8E9FC;--lav50:#F2F3FC;--lav6:#636294;--lav7:#444366;--red:#B42335;--note:#DC2626;--chg:#F97316;--ease:cubic-bezier(.22,1,.36,1);--disp:'PolySans Neutral','Inter',system-ui,sans-serif;
--pad-x:40px;--card:24px;--gap:24px;
font-family:'Inter',system-ui,sans-serif;color:var(--fg);display:flex;flex-wrap:wrap;min-height:100vh;background:var(--bg);font-size:14px;line-height:1.45;font-variant-numeric:tabular-nums}
:where([data-page="login"]) .app{--ink:#1D1E1F;--ink2:#313233;--g1:#454647;--g2:#737375;--g3:#A4A6A8;--line:#E0E2E5;--line2:#EBEDF0;--muted:#F2F4F7;--paper:#FAFBFC;--mint:#A2F5E7;--teal4:#83EBD9;--lav:#C5C3EE;--lav1:#E8E9FC;--lav6:#636294;--lav7:#444366;--red:#B42335;--ease:cubic-bezier(.22,1,.36,1);--disp:'PolySans Neutral','Inter',system-ui,sans-serif;
font-family:'Inter',system-ui,sans-serif;color:var(--fg);min-height:100vh;display:flex;flex-wrap:wrap;background:var(--bg);font-size:14px;line-height:1.45;font-variant-numeric:revert}
:where([data-page="home"]) .app{--ink:#1D1E1F;--ink2:#313233;--g1:#454647;--g2:#737375;--g3:#A4A6A8;--line:#E0E2E5;--line2:#EBEDF0;--muted:#F2F4F7;--paper:#FAFBFC;--mint:#A2F5E7;--mint2:#B6FDF1;--mint3:#CFFDF5;--mint50:#E3FCF7;--teal4:#83EBD9;--teal7:#3EAD9E;--teal8:#007A6A;--lav:#C5C3EE;--lav1:#E8E9FC;--lav50:#F2F3FC;--lav6:#636294;--lav7:#444366;--red:#B42335;--ease:cubic-bezier(.22,1,.36,1);--disp:'PolySans Neutral','Inter',system-ui,sans-serif;--pad-x:40px;--card:24px;--gap:24px;
font-family:'Inter',system-ui,sans-serif;color:var(--fg);display:flex;flex-wrap:wrap;min-height:100vh;background:var(--bg);font-size:14px;line-height:1.45;font-variant-numeric:tabular-nums}
:where([data-page="catalog"]) .app{--ink:#1D1E1F;--ink2:#313233;--g1:#454647;--g2:#737375;--g3:#A4A6A8;--line:#E0E2E5;--line2:#EBEDF0;--muted:#F2F4F7;--paper:#FAFBFC;--mint:#A2F5E7;--mint2:#B6FDF1;--mint3:#CFFDF5;--mint50:#E3FCF7;--teal4:#83EBD9;--teal7:#3EAD9E;--teal8:#007A6A;--lav:#C5C3EE;--lav1:#E8E9FC;--lav50:#F2F3FC;--lav6:#636294;--lav7:#444366;--red:#B42335;--ease:cubic-bezier(.22,1,.36,1);--disp:'PolySans Neutral','Inter',system-ui,sans-serif;--pad-x:40px;--card:24px;--gap:24px;
font-family:'Inter',system-ui,sans-serif;color:var(--fg);display:flex;flex-wrap:wrap;min-height:100vh;background:var(--bg);font-size:14px;line-height:1.45;font-variant-numeric:tabular-nums}
:where([data-page="answer"]) .app{--ink:#1D1E1F;--ink2:#313233;--g1:#454647;--g2:#737375;--g3:#A4A6A8;--line:#E0E2E5;--line2:#EBEDF0;--muted:#F2F4F7;--paper:#FAFBFC;--mint:#A2F5E7;--mint2:#B6FDF1;--mint3:#CFFDF5;--mint50:#E3FCF7;--teal4:#83EBD9;--teal7:#3EAD9E;--teal8:#007A6A;--lav:#C5C3EE;--lav1:#E8E9FC;--lav50:#F2F3FC;--lav6:#636294;--lav7:#444366;--red:#B42335;--ease:cubic-bezier(.22,1,.36,1);--disp:'PolySans Neutral','Inter',system-ui,sans-serif;--pad-x:40px;--card:24px;--gap:24px;
font-family:'Inter',system-ui,sans-serif;color:var(--fg);display:flex;flex-wrap:wrap;min-height:100vh;background:var(--bg);font-size:14px;line-height:1.45;font-variant-numeric:tabular-nums}
:where([data-page="admin"]) .app{--ink:#1D1E1F;--ink2:#313233;--g1:#454647;--g2:#737375;--g3:#A4A6A8;--line:#E0E2E5;--line2:#EBEDF0;--muted:#F2F4F7;--paper:#FAFBFC;--mint:#A2F5E7;--mint2:#B6FDF1;--mint3:#CFFDF5;--mint50:#E3FCF7;--teal4:#83EBD9;--teal7:#3EAD9E;--teal8:#007A6A;--lav:#C5C3EE;--lav1:#E8E9FC;--lav50:#F2F3FC;--lav6:#636294;--lav7:#444366;--red:#B42335;--ease:cubic-bezier(.22,1,.36,1);--disp:'PolySans Neutral','Inter',system-ui,sans-serif;--pad-x:40px;--card:24px;--gap:24px;
font-family:'Inter',system-ui,sans-serif;color:var(--fg);display:flex;flex-wrap:wrap;min-height:100vh;background:var(--bg);font-size:14px;line-height:1.45;font-variant-numeric:tabular-nums}
:where([data-page="login"]) button, :where([data-page="login"]) input{font:inherit;color:inherit}
button{cursor:pointer}
:focus-visible{outline:none;box-shadow:0 0 0 4px var(--tint-lav-2),0 0 0 1.5px var(--lav-line) !important}
:where([data-page="login"]) .left{flex:1 1 520px;background:var(--inverse);color:#fff;padding:48px 56px;display:flex;flex-direction:column;justify-content:space-between;gap:48px;position:relative;overflow:hidden}
:where([data-page="login"]) .left>*{position:relative;z-index:1}
:where([data-page="login"]) .left>.lens{position:absolute;z-index:0;right:-12%;bottom:-14%;width:min(84%,660px);aspect-ratio:1;object-fit:cover;pointer-events:none;opacity:0;filter:brightness(.84) contrast(1.15) saturate(1.3);-webkit-mask-image:radial-gradient(closest-side,#000 22%,rgba(0,0,0,.45) 55%,transparent 92%);mask-image:radial-gradient(closest-side,#000 22%,rgba(0,0,0,.45) 55%,transparent 92%);animation:lens-in 1.4s var(--ease) .2s forwards}
@keyframes lens-in{to{opacity:.74}}
@media (prefers-reduced-motion:reduce){:where([data-page="login"]) .left>.lens{animation:none;opacity:.74}}
:where([data-page="login"]) .wm{display:flex;align-items:center;gap:14px}
:where([data-page="login"]) .wm b{font-family:var(--disp);font-weight:400;font-size:26px}
:where([data-page="login"]) .wm>div>span{font-size:13px;color:var(--fg-subtle)}
:where([data-page="login"]) .left h1{font-family:var(--disp);font-weight:400;font-size:56px;line-height:1.02;margin:0;max-width:15ch;animation:rise .6s var(--ease) both}
:where([data-page="login"]) .left p{color:#D5D6D9;font-size:16px;max-width:44ch;margin:20px 0 0;animation:rise .6s var(--ease) .08s both}
:where([data-page="login"]) .orbit{display:flex;gap:12px;flex-wrap:wrap}
:where([data-page="login"]) .lg{width:52px;height:52px;border-radius:50%;background:#fff;display:grid;place-items:center;box-shadow:0 0 0 6px rgba(255,255,255,.06);animation:float 5s ease-in-out infinite}
:where([data-page="login"]) .lg img{width:26px;height:26px}
:where([data-page="login"]) .lg:nth-child(2){animation-delay:.4s}
:where([data-page="login"]) .lg:nth-child(3){animation-delay:.8s}
:where([data-page="login"]) .lg:nth-child(4){animation-delay:1.2s}
:where([data-page="login"]) .lg:nth-child(5){animation-delay:1.6s}
:where([data-page="login"]) .lg:nth-child(6){animation-delay:2s}
:where([data-page="login"]) .foot{font-size:12.5px;color:var(--fg-subtle)}
:where([data-page="login"]) .right{flex:1 1 440px;display:grid;place-items:center;padding:48px 24px}
.form{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px 24px}
:where([data-page="login"]) .form{width:min(400px,100%);display:flex;flex-direction:column;gap:20px;animation:rise .5s var(--ease) .1s both;grid-template-columns:revert}
:where([data-page="catalog"]) .form{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}
:where([data-page="login"]) .form h2{font-family:var(--disp);font-weight:400;font-size:32px;line-height:1.1;margin:0}
.muted{color:var(--fg-muted);margin:4px 0 0;font-size:13.5px}
:where([data-page="login"]) .muted{color:var(--fg-muted);margin:6px 0 0;font-size:14px}
:where([data-page="answer"]) .muted{color:var(--fg-muted);margin:0;font-size:13.5px}
.flbl{display:block;font-size:13px;font-weight:600;margin-bottom:8px}
.inp{height:40px;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:0 12px;font-size:14px;min-width:260px}
:where([data-page="login"]) .inp{display:flex;align-items:center;gap:8px;height:48px;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:0 14px;color:var(--fg-muted);transition:box-shadow .2s,border-color .2s;font-size:revert;min-width:revert}
:where([data-page="modals"]) .inp{width:100%;height:40px;border:1px solid var(--border);border-radius:8px;padding:0 12px;background:var(--surface);font-size:revert;min-width:revert}
:where([data-page="login"]) .inp:focus-within{box-shadow:0 0 0 4px var(--lav1);border-color:#8080BD}
:where([data-page="login"]) .inp[data-err="true"]{border-color:var(--red)}
:where([data-page="login"]) .inp input{flex:1;border:0;outline:0;height:44px;background:transparent;color:var(--fg);font-size:15px;min-width:0}
:where([data-page="login"]) .inp input:focus-visible{box-shadow:none !important}
:where([data-page="login"]) .eye{border:0;background:none;width:32px;height:32px;border-radius:6px;display:grid;place-items:center;color:var(--fg-muted)}
:where([data-page="login"]) .eye:hover{background:var(--surface-2)}
.row{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:13.5px}
:where([data-page="modals"]) .row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:revert;font-size:revert}
:where([data-page="login"]) .row label{display:flex;align-items:center;gap:8px}
:where([data-page="login"]) .row input{width:18px;height:18px;margin:0;accent-color:var(--ink2)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 16px;border-radius:8px;border:1px solid var(--g2);background:var(--bg);color:var(--fg-ink2);font-weight:500;letter-spacing:.02em;white-space:nowrap;transition:background-color .15s,transform .25s var(--ease),box-shadow .25s var(--ease)}
:where([data-page="login"]) .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:48px;padding:0 20px;border-radius:8px;border:1px solid var(--border-ink2);background:var(--inverse-2);color:#fff;font-weight:500;letter-spacing:.02em;text-decoration:none;transition:transform .25s var(--ease),background-color .15s;white-space:revert}
:where([data-page="answer"]) .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 16px;border-radius:8px;border:1px solid var(--g2);background:var(--bg);color:var(--fg-ink2);font-weight:500;white-space:nowrap;transition:transform .25s var(--ease);letter-spacing:revert}
:where([data-page="modals"]) .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 16px;border-radius:8px;border:1px solid var(--g2);background:var(--bg);color:var(--fg-ink2);font-weight:500;white-space:nowrap;letter-spacing:revert;transition:revert}
:where([data-page="admin"]) .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 16px;border-radius:8px;border:1px solid var(--g2);background:var(--bg);color:var(--fg-ink2);font-weight:500;white-space:nowrap;transition:transform .25s var(--ease);letter-spacing:revert}
.btn:hover{transform:translateY(-1px)}
:where([data-page="login"]) .btn:hover{transform:translateY(-1px);background:#000}
:where([data-page="login"]) .btn:disabled{opacity:.4;cursor:not-allowed;transform:none;background:var(--inverse-2)}
:where([data-page="login"]) .inp:has(input:disabled){background:var(--surface-2)}
:where([data-page="login"]) .inp input:disabled{cursor:not-allowed;background:transparent}
.btn.lav{background:var(--lav);border-color:var(--lav);color:var(--ink)}
.err{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;color:var(--danger-text-2);background:var(--tint-red);border-radius:8px;padding:12px 14px;animation:shake .4s var(--ease)}
:where([data-page="modals"]) .err{display:flex;gap:10px;font-size:13px;color:var(--danger-text-2);background:var(--tint-red);border-radius:8px;padding:12px 14px;align-items:revert;animation:revert}
:where([data-page="login"]) .ok{display:flex;flex-direction:column;gap:16px;align-items:flex-start;animation:rise .4s var(--ease) both}
.okic{width:56px;height:56px;border-radius:50%;background:var(--mint);display:grid;place-items:center}
:where([data-page="modals"]) .okic{width:48px;height:48px;border-radius:50%;background:var(--mint);display:grid;place-items:center}
:where([data-page="login"]) .help{font-size:13px;color:var(--fg-muted);border-top:1px solid var(--border-2);padding-top:20px}
@keyframes rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@keyframes shake{0%,100%{transform:none}25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}
button,input,select,textarea{font:inherit;color:inherit}
svg.i{width:18px;height:18px;flex:none}
[data-tip]{position:relative}
[data-tip]:hover::after{content:attr(data-tip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);background:var(--inverse);color:#fff;font:500 12px/1.2 'Inter',sans-serif;padding:6px 9px;border-radius:6px;white-space:nowrap;z-index:15;pointer-events:none}
.ml{width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 1px var(--line);display:inline-grid;place-items:center;flex:none;vertical-align:middle}
:where([data-page="home"]) .ml{width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 1px var(--line),0 0 0 2px #fff;display:inline-grid;place-items:center;flex:none;margin-left:-6px;vertical-align:revert}
:where([data-page="catalog"]) .ml{width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 1px var(--line),0 0 0 2px #fff;display:inline-grid;place-items:center;flex:none;margin-left:-6px;vertical-align:revert}
:where([data-page="answer"]) .ml{width:28px;height:28px;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 1px var(--line);display:inline-grid;place-items:center;flex:none;vertical-align:revert}
:where([data-page="modals"]) .ml{width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 1px var(--line);display:inline-grid;place-items:center;flex:none;vertical-align:revert}
.ml:first-child{margin-left:0}
.ml img{width:14px;height:14px;display:block}
:where([data-page="answer"]) .ml img{width:16px;height:16px;display:block}
:where([data-page="modals"]) .ml img{width:14px;height:14px;display:revert}
.mlstack{display:flex;align-items:center}
.side{flex:0 0 260px;width:260px;align-self:flex-start;position:sticky;top:0;height:100vh;overflow-y:auto;scrollbar-width:none;z-index:7;background:var(--inverse);color:#E0E2E5;padding:20px 16px;display:flex;flex-direction:column;gap:10px}
:where([data-page="home"]) .side{flex:0 0 260px;width:260px;align-self:flex-start;position:sticky;top:0;height:100vh;overflow-y:auto;scrollbar-width:none;z-index:7;background:var(--inverse);color:#E0E2E5;padding:24px 16px;display:flex;flex-direction:column;gap:12px}
:where([data-page="catalog"]) .side{flex:0 0 260px;width:260px;align-self:flex-start;position:sticky;top:0;height:100vh;overflow-y:auto;scrollbar-width:none;z-index:7;background:var(--inverse);color:#E0E2E5;padding:24px 16px;display:flex;flex-direction:column;gap:12px}
:where([data-page="answer"]) .side{flex:0 0 260px;width:260px;align-self:flex-start;position:sticky;top:0;height:100vh;overflow-y:auto;scrollbar-width:none;background:var(--inverse);color:#E0E2E5;padding:20px 16px;display:flex;flex-direction:column;gap:10px;z-index:7}
:where([data-page="admin"]) .side{flex:0 0 260px;width:260px;align-self:flex-start;position:sticky;top:0;height:100vh;overflow-y:auto;scrollbar-width:none;background:var(--inverse);color:#E0E2E5;padding:24px 16px;display:flex;flex-direction:column;gap:12px;z-index:7}
.side::-webkit-scrollbar{display:none}
.main{flex:999 1 560px;min-width:0;display:flex;flex-direction:column}
.brand-row{display:flex;align-items:baseline;gap:8px;padding:0 8px 8px;display:flex !important;align-items:center !important;gap:10px !important;padding:0 8px 8px}
:where([data-page="answer"]) .brand-row{display:flex;align-items:center;gap:10px;padding:0 8px 8px}
:where([data-page="admin"]) .brand-row{display:flex;align-items:center;gap:10px;padding:0 8px 8px}
.wordmark{font-family:var(--disp);font-size:22px;line-height:1;color:#fff;letter-spacing:.01em}
:where([data-page="home"]) .wordmark{font-family:var(--disp);font-size:22px;line-height:1;color:#fff;letter-spacing:revert}
:where([data-page="catalog"]) .wordmark{font-family:var(--disp);font-size:22px;line-height:1;color:#fff;letter-spacing:revert}
:where([data-page="answer"]) .wordmark{font-family:var(--disp);font-size:22px;line-height:1;color:#fff;letter-spacing:revert}
:where([data-page="admin"]) .wordmark{font-family:var(--disp);font-size:22px;line-height:1;color:#fff;letter-spacing:revert}
.by{font-size:12px;color:var(--fg-subtle);display:flex;align-items:center;gap:5px;line-height:1}
:where([data-page="answer"]) .by{display:flex;align-items:center;gap:5px;line-height:1;font-size:12px;color:var(--fg-subtle)}
:where([data-page="admin"]) .by{display:flex;align-items:center;gap:5px;line-height:1;font-size:12px;color:var(--fg-subtle)}
.search{display:flex;align-items:center;gap:8px;width:100%;padding:0 12px;height:40px;border:1px solid #3a3b3c;border-radius:8px;background:transparent;color:var(--fg-subtle);text-align:left}
kbd{margin-left:auto;font-family:inherit;font-size:11px;line-height:16px;border:1px solid #4a4b4c;border-radius:5px;padding:0 6px;color:var(--fg-subtle)}
.nav-h{font-size:12px;font-weight:500;color:var(--fg-subtle);padding:12px 12px 6px}
:where([data-page="home"]) .nav-h{font-size:12px;font-weight:500;color:var(--fg-subtle);padding:16px 12px 8px}
:where([data-page="catalog"]) .nav-h{font-size:12px;font-weight:500;color:var(--fg-subtle);padding:16px 12px 8px}
:where([data-page="admin"]) .nav-h{font-size:12px;font-weight:500;color:var(--fg-subtle);padding:16px 12px 8px}
.nav{display:flex;align-items:center;gap:12px;width:100%;height:38px;padding:0 12px;border:0;border-radius:8px;background:transparent;text-align:left;color:#D5D6D9;font-weight:500;transition:background-color .15s,color .15s}
:where([data-page="home"]) .nav{display:flex;align-items:center;gap:12px;width:100%;height:40px;padding:0 12px;border:0;border-radius:8px;background:transparent;text-align:left;color:#D5D6D9;font-weight:500;transition:background-color .15s,color .15s}
:where([data-page="catalog"]) .nav{display:flex;align-items:center;gap:12px;width:100%;height:40px;padding:0 12px;border:0;border-radius:8px;background:transparent;text-align:left;color:#D5D6D9;font-weight:500;transition:background-color .15s}
:where([data-page="answer"]) .nav{display:flex;align-items:center;gap:12px;width:100%;height:38px;padding:0 12px;border-radius:8px;color:#D5D6D9;font-weight:500;transition:background-color .15s;border:revert;background:revert;text-align:revert}
:where([data-page="admin"]) .nav{display:flex;align-items:center;gap:12px;width:100%;height:40px;padding:0 12px;border:0;border-radius:8px;background:transparent;text-align:left;color:#D5D6D9;font-weight:500;transition:background-color .15s}
.nav:hover{background:#2a2b2c;color:#fff}
.nav[data-on="true"]{background:var(--tint-mint-2);color:var(--fg)}
:where([data-page="home"]) .nav .fav{width:22px;height:22px;font-size:11px;border-radius:6px}
.cnt{margin-left:auto;font-size:12px;opacity:.75;font-weight:500}
:where([data-page="home"]) .cnt{margin-left:auto;font-size:12px;opacity:.75;font-weight:revert}
:where([data-page="catalog"]) .cnt{margin-left:auto;font-size:12px;opacity:.75;font-weight:revert}
.side-foot{margin-top:auto;border-top:1px solid #333435;padding-top:12px;display:flex;flex-direction:column;gap:2px}
:where([data-page="home"]) .side-foot{margin-top:auto;border-top:1px solid #333435;padding-top:12px;display:revert;flex-direction:revert;gap:revert}
:where([data-page="catalog"]) .side-foot{margin-top:auto;border-top:1px solid #333435;padding-top:12px;display:revert;flex-direction:revert;gap:revert}
.fav{width:32px;height:32px;border-radius:8px;background:var(--mint);color:var(--ink);display:grid;place-items:center;font-family:var(--disp);font-size:16px;line-height:1;flex:none}
:where([data-page="home"]) .fav{width:32px;height:32px;border-radius:8px;background:var(--mint);color:var(--ink);display:grid;place-items:center;font-family:var(--disp);font-size:15px;line-height:1;flex:none}
:where([data-page="catalog"]) .fav{width:32px;height:32px;border-radius:8px;background:var(--mint);color:var(--ink);display:grid;place-items:center;font-family:var(--disp);font-size:15px;line-height:1;flex:none}
.hero{background:var(--inverse);color:#fff;padding:32px var(--pad-x);display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:24px}
:where([data-page="catalog"]) .hero{background:var(--inverse);color:#fff;padding:32px var(--pad-x);display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:24px;position:relative}
:where([data-page="answer"]) .hero{background:var(--inverse);color:#fff;padding:28px var(--pad-x) 32px;display:flex;flex-direction:column;gap:16px;flex-wrap:revert;align-items:revert;justify-content:revert}
:where([data-page="admin"]) .hero{background:var(--inverse);color:#fff;padding:32px var(--pad-x);display:revert;flex-wrap:revert;align-items:revert;justify-content:revert;gap:revert}
.kicker{font-size:13px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--teal4);line-height:1}
.hero h1{font-family:var(--disp);font-weight:400;font-size:48px;line-height:1.05;letter-spacing:.01em;margin:12px 0 0;animation:rise .5s var(--ease) both}
:where([data-page="home"]) .hero h1{font-family:var(--disp);font-weight:400;font-size:48px;line-height:1.05;margin:12px 0 0;animation:rise .5s var(--ease) both;letter-spacing:revert}
:where([data-page="catalog"]) .hero h1{font-family:var(--disp);font-weight:400;font-size:48px;line-height:1.05;margin:12px 0 0;animation:rise .5s var(--ease) both;letter-spacing:revert}
:where([data-page="answer"]) .hero h1{font-family:var(--disp);font-weight:400;font-size:40px;line-height:1.1;margin:0;max-width:30ch;animation:rise .5s var(--ease) both;letter-spacing:revert}
:where([data-page="admin"]) .hero h1{font-family:var(--disp);font-weight:400;font-size:48px;line-height:1.05;margin:12px 0 0;letter-spacing:revert;animation:revert}
.lead{margin:12px 0 0;color:#D5D6D9;max-width:62ch;font-size:15px}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
:where([data-page="answer"]) .chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:revert}
:where([data-page="modals"]) .chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:revert}
.chip{display:inline-flex;align-items:center;gap:8px;height:32px;font-size:13.5px;font-weight:500;color:var(--ink2);background:var(--mint);border-radius:8px;padding:0 12px}
:where([data-page="catalog"]) .chip{display:inline-flex;align-items:center;height:32px;font-size:13.5px;font-weight:500;color:var(--ink2);background:var(--mint);border-radius:8px;padding:0 12px;gap:revert}
.btn.ink{background:var(--inverse-2);border-color:var(--border-ink2);color:#FAFBFC}
:where([data-page="modals"]) .btn.ink{background:var(--inverse-2);border-color:var(--border-ink2);color:#fff}
:where([data-page="admin"]) .btn.ink{background:var(--inverse-2);border-color:var(--border-ink2);color:#fff}
.btn.lav:hover{background:#B6B4E6;box-shadow:0 8px 20px -8px rgba(99,98,148,.55)}
.btn.ghost{border-color:transparent;background:transparent}
.btn.ghost:hover{background:var(--surface-2)}
.btn.sm{height:32px;padding:0 12px;font-size:13px}
.btn[disabled]{opacity:.4;cursor:not-allowed;transform:none;box-shadow:none}
:where([data-page="home"]) .btn[disabled]{opacity:.4;cursor:not-allowed;transform:none;box-shadow:revert}
:where([data-page="catalog"]) .btn[disabled]{opacity:.4;cursor:not-allowed;transform:none;box-shadow:revert}
:where([data-page="modals"]) .btn[disabled]{opacity:.4;cursor:revert;transform:revert;box-shadow:revert}
:where([data-page="admin"]) .btn[disabled]{opacity:.4;cursor:not-allowed;transform:none;box-shadow:revert}
.pills{display:inline-flex;align-items:center;height:36px;background:var(--surface-2);border-radius:999px;padding:3px;gap:2px}
:where([data-page="catalog"]) .pills{display:inline-flex;align-items:center;height:36px;background:var(--surface-2);border-radius:999px;padding:3px;gap:2px;flex-wrap:wrap}
:where([data-page="answer"]) .pills{display:inline-flex;align-items:center;height:36px;background:var(--surface-2);border-radius:999px;padding:3px;gap:2px;flex-wrap:wrap}
.pills button{display:inline-flex;align-items:center;border:0;background:transparent;height:30px;padding:0 14px;border-radius:999px;font-size:13.5px;color:var(--fg-2);white-space:nowrap;transition:background-color .2s var(--ease),color .2s}
:where([data-page="home"]) .pills button{display:inline-flex;align-items:center;gap:8px;border:0;background:transparent;height:30px;padding:0 14px;border-radius:999px;font-size:13.5px;color:var(--fg-2);white-space:nowrap;transition:background-color .2s var(--ease)}
:where([data-page="catalog"]) .pills button{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;height:30px;padding:0 14px;border-radius:999px;font-size:13.5px;color:var(--fg-2);white-space:nowrap;transition:background-color .2s var(--ease)}
:where([data-page="answer"]) .pills button{display:inline-flex;align-items:center;gap:8px;border:0;background:transparent;height:30px;padding:0 14px;border-radius:999px;font-size:13.5px;color:var(--fg-2);white-space:nowrap;transition:revert}
:where([data-page="admin"]) .pills button{border:0;background:transparent;height:30px;padding:0 14px;border-radius:999px;font-size:13.5px;color:var(--fg-2);white-space:nowrap;display:revert;align-items:revert;transition:revert}
.pills button[data-on="true"]{background:var(--tint-mint-3);color:var(--fg);font-weight:500}
:where([data-page="home"]) .pills em{font-style:normal;font-size:12px;color:var(--fg-muted)}
.sel{height:36px;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:0 12px;font-size:13.5px;min-width:160px;max-width:100%}
:where([data-page="home"]) .sel{height:40px;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:0 12px;font-size:13.5px;min-width:150px}
:where([data-page="catalog"]) .sel{height:40px;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:0 12px;font-size:13.5px;min-width:150px}
.sel.sm{height:32px;min-width:0}
.inpw{display:flex;align-items:center;gap:8px;height:40px;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:0 12px;color:var(--fg-muted);transition:box-shadow .2s}
:where([data-page="home"]) .inpw{display:flex;align-items:center;gap:8px;height:40px;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:0 12px;color:var(--fg-muted);transition:revert}
:where([data-page="catalog"]) .inpw{display:flex;align-items:center;gap:8px;height:40px;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:0 12px;color:var(--fg-muted);transition:revert}
:where([data-page="modals"]) .inpw{display:flex;align-items:center;gap:8px;height:40px;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:0 12px;color:var(--fg-muted);transition:revert}
:where([data-page="admin"]) .inpw{display:flex;align-items:center;gap:8px;height:40px;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:0 12px;color:var(--fg-muted);transition:revert}
.inpw:focus-within{box-shadow:0 0 0 4px var(--lav1);border-color:#8080BD}
.inpw input{border:0;outline:0;height:36px;min-width:240px;background:transparent;color:var(--fg)}
:where([data-page="catalog"]) .inpw input{border:0;outline:0;height:36px;min-width:220px;background:transparent;color:var(--fg)}
:where([data-page="modals"]) .inpw input{border:0;outline:0;flex:1;height:36px;background:transparent;min-width:revert;color:revert}
:where([data-page="admin"]) .inpw input{border:0;outline:0;height:36px;min-width:220px;background:transparent;color:var(--fg)}
.inpw input:focus-visible{box-shadow:none !important}
.content{padding:32px var(--pad-x) 64px;width:100%;max-width:1400px}
:where([data-page="answer"]) .content{padding:32px var(--pad-x) 64px;width:100%;max-width:1400px;display:flex;flex-direction:column;gap:var(--gap)}
.sec{display:flex;flex-direction:column;gap:var(--gap);animation:fade .35s var(--ease) both}
:where([data-page="admin"]) .sec{display:flex;flex-direction:column;gap:var(--gap);animation:fade .3s var(--ease) both}
.toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}
:where([data-page="answer"]) .toolbar{position:sticky;top:0;z-index:5;background:var(--surface-glass);backdrop-filter:blur(10px);padding:12px var(--pad-x);display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;border-bottom:1px solid var(--border);justify-content:revert}
.fgroup{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.flabel{font-size:12.5px;color:var(--fg-muted);font-weight:500}
.card{background:var(--surface);border-radius:8px;padding:var(--card);box-shadow:0 4px 32px 0 rgba(29,29,29,.05),inset 0 0 0 1px var(--border-2)}
.card.flush{padding:0;overflow:hidden}
h2{margin:0;font-family:var(--disp);font-weight:400;font-size:22px;line-height:1.2;letter-spacing:.01em}
:where([data-page="home"]) h2{margin:0;font-family:var(--disp);font-weight:400;font-size:22px;line-height:1.2;letter-spacing:revert}
:where([data-page="catalog"]) h2{margin:0;font-family:var(--disp);font-weight:400;font-size:22px;line-height:1.2;letter-spacing:revert}
:where([data-page="admin"]) h2{margin:0;font-family:var(--disp);font-weight:400;font-size:22px;line-height:1.2;letter-spacing:revert}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:var(--gap)}
:where([data-page="catalog"]) .grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--gap)}
.ccard{display:flex;flex-direction:column;gap:16px;background:var(--surface);border-radius:8px;padding:var(--card);box-shadow:0 4px 32px 0 rgba(29,29,29,.05),inset 0 0 0 1px var(--border-2);color:var(--fg);position:relative;transition:transform .3s var(--ease),box-shadow .3s var(--ease);animation:rise .45s var(--ease) both}
.ccard:hover{transform:translateY(-3px);box-shadow:0 16px 40px -12px rgba(29,30,31,.18),inset 0 0 0 1px var(--border)}
.ccard .stripe{position:absolute;left:0;top:0;right:0;height:6px;border-radius:8px 8px 0 0}
[data-tip-pos="b"]:hover::after{bottom:auto;top:calc(100% + 8px)}
[data-tip]:focus-visible::after{content:attr(data-tip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);background:var(--inverse);color:#fff;font:500 12px/1.2 'Inter',sans-serif;padding:6px 9px;border-radius:6px;white-space:nowrap;z-index:15;pointer-events:none}
[data-tip-pos="r"]:hover::after{left:auto;right:0;transform:none}
.ccard h3{font-family:var(--disp);font-weight:400;font-size:24px;line-height:1.15;margin:4px 0 0}
.ccard p{margin:0;color:var(--fg-muted);font-size:13.5px;min-height:40px}
.ctop{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.favstack{display:flex;min-height:28px;align-items:center}
.favstack .favnone{height:28px;display:inline-flex;align-items:center;padding:0 10px;border:1px dashed var(--border);border-radius:999px;font-size:12px;color:var(--fg-subtle)}
.favstack .fav{width:28px;height:28px;font-size:13px;margin-left:-6px;box-shadow:0 0 0 2px var(--surface)}
.favstack .fav:first-child{margin-left:0}
.favstack .fav.more{background:var(--inverse-2);color:#fff;font-family:inherit;font-size:11px;font-weight:600}
.tag.paused{background:var(--tint-red);color:var(--danger-text)}
.cstats{display:grid;grid-template-columns:repeat(3,auto);justify-content:space-between;gap:8px 16px;border-top:1px solid var(--border-2);padding-top:16px}
.clast{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--fg-muted);margin-top:-4px}
.ldot2{width:8px;height:8px;border-radius:50%;background:#5DF584;flex:none}
.cstats div{display:flex;flex-direction:column;gap:2px}
.cstats div>b{font-family:var(--disp);font-weight:400;font-size:clamp(18px,1.5vw,22px);line-height:1;white-space:nowrap}
.cstats div>span{font-size:12px;color:var(--fg-muted)}
.ctags{display:flex;flex-wrap:wrap;gap:4px}
.tag{display:inline-flex;align-items:center;height:22px;font-size:12px;color:var(--lav-text);background:var(--tint-lav);border-radius:6px;padding:0 8px;font-weight:500}
:where([data-page="answer"]) .tag{display:inline-flex;align-items:center;height:24px;font-size:12px;border-radius:6px;padding:0 8px;background:var(--inverse-2);color:var(--mint);font-weight:500}
.iconbtn{width:40px;height:40px;border-radius:8px;border:1px solid #454647;background:transparent;color:#fff;display:grid;place-items:center;flex:none;transition:background-color .15s}
:where([data-page="home"]) .iconbtn{width:32px;height:32px;border-radius:8px;border:1px solid var(--border);background:var(--surface);display:grid;place-items:center;flex:none;color:var(--fg-2);transition:revert}
:where([data-page="catalog"]) .iconbtn{width:32px;height:32px;border-radius:8px;border:1px solid var(--border);background:var(--surface);display:grid;place-items:center;flex:none;color:var(--fg-2);transition:revert}
.iconbtn:hover{background:var(--inverse-2)}
:where([data-page="home"]) .iconbtn:hover{background:var(--surface-2)}
:where([data-page="catalog"]) .iconbtn:hover{background:var(--surface-2)}
.newcard{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;border:1.5px dashed #ABABE0;border-radius:8px;background:var(--tint-lav);color:var(--lav-text);font-weight:600;min-height:260px;transition:background-color .2s}
.newcard:hover{background:var(--tint-lav-2)}
.newcard .plus{width:48px;height:48px;border-radius:50%;background:var(--lav);display:grid;place-items:center;color:var(--ink)}
.scroll{overflow-x:auto}
.thead,.trow{display:grid;align-items:center;column-gap:16px;padding:0 24px}
.thead{font-size:12px;font-weight:500;color:var(--fg-muted);text-transform:uppercase;letter-spacing:.05em;height:48px;border-bottom:1px solid var(--border-2)}
:where([data-page="home"]) .thead button{border:0;background:none;padding:0;font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit;display:inline-flex;align-items:center;gap:4px;justify-self:start}
:where([data-page="home"]) .thead button[data-on="true"]{color:var(--fg)}
.trow{min-height:68px;padding-top:10px;padding-bottom:10px;border-bottom:1px solid var(--border-2);transition:background-color .15s}
:where([data-page="home"]) .trow{min-height:64px;border-bottom:1px solid var(--border-2);transition:background-color .15s;padding-top:revert;padding-bottom:revert}
:where([data-page="admin"]) .trow{min-height:56px;border-bottom:1px solid var(--border-2);padding-top:revert;padding-bottom:revert;transition:revert}
.trow:hover{background:var(--bg)}
.g-p{grid-template-columns:minmax(200px,2fr) minmax(96px,1fr) 80px 112px 64px 104px 128px minmax(96px,1fr) 32px;column-gap:16px !important;min-width:1080px}
:where([data-page="catalog"]) .g-p{grid-template-columns:minmax(220px,2fr) 90px 120px 70px 110px 132px minmax(100px,1fr) 76px;column-gap:16px !important;min-width:1070px}
.pname{display:flex;align-items:center;gap:12px;color:var(--fg);font-weight:600}
.pname:hover span{text-decoration:underline;text-decoration-color:var(--mint);text-decoration-thickness:3px;text-underline-offset:3px}
.pname small{display:block;font-weight:400;color:var(--fg-muted);font-size:12.5px}
.typ{display:inline-flex;align-items:center;height:24px;font-size:12px;border-radius:6px;padding:0 8px;background:var(--surface-2);color:var(--fg-2);justify-self:start;font-weight:500}
:where([data-page="home"]) .typ{display:inline-flex;align-items:center;height:24px;font-size:12px;border-radius:6px;padding:0 8px;background:var(--surface-2);color:var(--fg-2);font-weight:500;justify-self:start;white-space:nowrap}
:where([data-page="catalog"]) .typ{display:inline-flex;align-items:center;height:24px;font-size:12px;border-radius:6px;padding:0 8px;background:var(--surface-2);color:var(--fg-2);font-weight:500;justify-self:start;white-space:nowrap}
.typ.dup{background:var(--tint-amber);color:var(--warn-text)}
.typ.off{background:var(--tint-red);color:var(--danger-text)}
.ring{display:inline-flex;align-items:center;gap:10px;font-weight:600}
.ring svg{width:32px;height:32px;transform:rotate(-90deg);flex:none}
:where([data-page="home"]) .ring svg{width:32px;height:32px;transform:rotate(-90deg);flex:revert}
:where([data-page="catalog"]) .ring svg{width:32px;height:32px;transform:rotate(-90deg);flex:revert}
.c{justify-self:center;text-align:center}
:where([data-page="admin"]) .c{text-align:center;justify-self:center}
.pager{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:center;padding:16px 24px;border-top:1px solid var(--border-2)}
:where([data-page="answer"]) .pager{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:center;padding:revert;border-top:revert}
:where([data-page="modals"]) .pager{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:13px;color:var(--fg-muted);flex-wrap:revert;padding:revert;border-top:revert}
.pg-r{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
:where([data-page="admin"]) .pg-r{display:flex;align-items:center;gap:6px;flex-wrap:revert}
.pgb{min-width:36px;height:36px;padding:0 10px;border-radius:8px;border:1px solid var(--border);background:var(--surface);font-size:13.5px;font-weight:500;color:var(--fg-2);transition:all .15s}
:where([data-page="catalog"]) .pgb{min-width:36px;height:36px;padding:0 10px;border-radius:8px;border:1px solid var(--border);background:var(--surface);font-size:13.5px;font-weight:500;color:var(--fg-2);transition:revert}
:where([data-page="answer"]) .pgb{min-width:36px;height:36px;padding:0 10px;border-radius:8px;border:1px solid var(--border);background:var(--surface);font-size:13.5px;font-weight:500;color:var(--fg-2);transition:revert}
:where([data-page="modals"]) .pgb{min-width:32px;height:32px;padding:0 8px;border-radius:8px;border:1px solid var(--border);background:var(--surface);font-size:13px;display:inline-grid;place-items:center;color:var(--fg-2);font-weight:revert;transition:revert}
:where([data-page="admin"]) .pgb{min-width:36px;height:36px;padding:0 10px;border-radius:8px;border:1px solid var(--border);background:var(--surface);font-size:13.5px;font-weight:500;color:var(--fg-2);transition:revert}
.pgb:hover{border-color:var(--fg-subtle)}
.pgb[data-on="true"]{background:var(--inverse-2);border-color:var(--border-ink2);color:#fff}
.pgb[disabled]{opacity:.35;cursor:not-allowed}
.pggap{min-width:24px;text-align:center;color:var(--fg-muted)}
.overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(15,16,17,.45);z-index:20;display:grid;place-items:center;padding:24px;animation:fadein .2s ease both}
.backdrop{position:fixed;top:0;left:0;right:0;bottom:0;width:100%;height:100%;background:rgba(15,16,17,.45);border:0;z-index:20;padding:0;cursor:default;animation:fadein .25s ease both}
:where([data-page="home"]) .backdrop{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;border:0;background:transparent;padding:0;cursor:default;z-index:revert;animation:revert}
:where([data-page="catalog"]) .backdrop{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;border:0;background:transparent;padding:0;cursor:default;z-index:revert;animation:revert}
.modal{position:relative;width:min(560px,100%);max-height:90vh;overflow-y:auto;background:var(--surface);border-radius:16px;box-shadow:0 32px 80px rgba(15,16,17,.35);animation:modal .3s var(--ease) both}
:where([data-page="catalog"]) .modal{position:relative;width:min(720px,100%);max-height:92vh;display:flex;flex-direction:column;background:var(--surface);border-radius:16px;box-shadow:0 32px 80px rgba(15,16,17,.35);animation:modal .3s var(--ease) both;overflow:hidden;overflow-y:revert}
.mh{padding:24px 24px 0;display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.mb{padding:20px 24px;display:flex;flex-direction:column;gap:20px}
:where([data-page="catalog"]) .mb{padding:24px;display:flex;flex-direction:column;gap:20px;overflow-y:auto;animation:fade .25s var(--ease) both}
:where([data-page="modals"]) .mb{padding:20px 24px;display:flex;flex-direction:column;gap:18px}
.mf{padding:16px 24px;border-top:1px solid var(--border-2);display:flex;justify-content:space-between;gap:12px;align-items:center}
:where([data-page="home"]) .fi input, :where([data-page="home"]) .fi textarea{width:100%;height:40px;border:1px solid var(--border);border-radius:8px;padding:0 12px;background:var(--surface)}
.fi textarea{height:88px;padding:10px 12px}
:where([data-page="home"]) .fi textarea{height:80px;padding:10px 12px}
:where([data-page="catalog"]) .fi textarea{height:80px;padding:10px 12px}
.sw{display:inline-block;width:16px;height:3px;border-radius:2px;margin-right:8px}
:where([data-page="home"]) .sw{display:flex;gap:10px;width:revert;height:revert;border-radius:revert;margin-right:revert}
:where([data-page="modals"]) .sw{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;border-radius:8px;background:var(--bg);box-shadow:inset 0 0 0 1px var(--border-2);width:revert;height:revert;margin-right:revert}
.swc{width:36px;height:36px;border-radius:50%;border:0;box-shadow:inset 0 0 0 1px rgba(0,0,0,.08);transition:transform .2s var(--ease)}
.swc[data-on="true"]{box-shadow:0 0 0 3px var(--surface),0 0 0 5px var(--ink2)}
.swc:hover{transform:scale(1.08)}
.empty{padding:40px 24px;text-align:center;color:var(--fg-muted)}
:where([data-page="answer"]) .empty{padding:40px 24px;text-align:center;color:var(--fg-muted);background:var(--surface);border:1px solid var(--border-2);border-radius:16px}
.toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);background:var(--inverse);color:#fff;height:48px;padding:0 20px;border-radius:8px;z-index:40;font-size:14px;box-shadow:0 16px 40px rgba(0,0,0,.25);display:flex;gap:10px;align-items:center;animation:toast .4s var(--ease) both}
:where([data-page="home"]) .toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);background:var(--inverse);color:#fff;height:48px;padding:0 20px;border-radius:8px;z-index:40;font-size:14px;display:flex;gap:10px;align-items:center;animation:toast .4s var(--ease) both;box-shadow:revert}
:where([data-page="catalog"]) .toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);background:var(--inverse);color:#fff;height:48px;padding:0 20px;border-radius:8px;z-index:40;font-size:14px;display:flex;gap:10px;align-items:center;animation:toast .4s var(--ease) both;box-shadow:revert}
:where([data-page="admin"]) .toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);background:var(--inverse);color:#fff;height:48px;padding:0 20px;border-radius:8px;z-index:40;font-size:14px;display:flex;align-items:center;animation:toast .4s var(--ease) both;box-shadow:revert;gap:revert}
.proj-t strong,.proj-t small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lmlogo{width:40px;height:40px;flex:none;display:block}
:where([data-page="answer"]) .lmlogo{width:40px;height:40px;flex:none;display:revert}
:where([data-page="admin"]) .lmlogo{width:40px;height:40px;flex:none;display:revert}
.bwrap{display:flex;flex-direction:column;gap:4px}
.illogo{height:11px;width:auto;display:block;opacity:.85}
:where([data-page="answer"]) .illogo{height:11px;width:auto;opacity:.85;display:revert}
:where([data-page="admin"]) .illogo{height:11px;width:auto;opacity:.85;display:revert}
.app[data-side="jasny"] .illogo{filter:invert(1)}
@keyframes fade{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
@keyframes fadein{from{opacity:0}to{opacity:1}}
@keyframes modal{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
@keyframes toast{from{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%,0)}}
.dotc{width:10px;height:10px;border-radius:50%;flex:none}
:where([data-page="catalog"]) .hero::before{content:'';position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--mint)}
.crumb{font-size:13px;color:var(--fg-subtle);display:flex;gap:8px;align-items:center}
:where([data-page="answer"]) .crumb{font-size:13px;color:var(--fg-subtle);display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.crumb a{color:var(--fg-subtle)}
.crumb a:hover{color:#fff}
h3{margin:0 0 12px;font-size:14px;font-weight:600}
:where([data-page="catalog"]) h3{margin:0;font-size:14px;font-weight:600}
.typ.live{background:var(--tint-mint);color:var(--accent-text)}
.pcard{display:flex;flex-direction:column;gap:14px;background:var(--surface);border-radius:8px;padding:var(--card);box-shadow:0 4px 32px 0 rgba(29,29,29,.05),inset 0 0 0 1px var(--border-2);color:var(--fg);transition:transform .3s var(--ease),box-shadow .3s var(--ease);animation:rise .4s var(--ease) both}
.pcard:hover{transform:translateY(-3px);box-shadow:0 16px 40px -12px rgba(29,30,31,.18),inset 0 0 0 1px var(--border)}
.pcard .top{display:flex;gap:12px;align-items:center}
.pcard h3{font-size:16px}
.pcard p{margin:0;color:var(--fg-muted);font-size:13.5px;min-height:40px}
.pcard .meta{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--border-2);padding-top:14px}
.pager.free{border-top:0;padding:0}
.steps{display:flex;gap:8px;padding:20px 24px 0}
.stp{flex:1;display:flex;align-items:center;gap:10px;border:0;background:none;padding:0 0 12px;border-bottom:3px solid var(--border-2);text-align:left;color:var(--fg-muted);font-weight:500;transition:border-color .25s var(--ease),color .2s}
.stp b{font-family:var(--disp);font-weight:400;font-size:20px;line-height:1}
.stp[data-on="true"]{border-bottom-color:var(--border-ink2);color:var(--fg)}
.stp[data-done="true"]{border-bottom-color:var(--teal7);color:var(--accent-text)}
.fi input,.fi select,.fi textarea{width:100%;height:40px;border:1px solid var(--border);border-radius:8px;padding:0 12px;background:var(--surface)}
.fi small{display:block;color:var(--fg-muted);font-size:12.5px;margin-top:6px}
.full{grid-column:1/-1}
.req{color:var(--danger-text)}
.tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.tile{display:flex;align-items:center;gap:10px;height:48px;padding:0 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface);text-align:left;font-weight:500;transition:all .2s var(--ease)}
:where([data-page="modals"]) .tile{display:flex;flex-direction:column;gap:14px;align-items:revert;height:revert;padding:revert;border:revert;border-radius:revert;background:revert;text-align:revert;font-weight:revert;transition:revert}
:where([data-page="catalog"]) .tile .ml{margin:0;width:28px;height:28px}
:where([data-page="catalog"]) .tile[data-on="true"]{border-color:var(--border-ink2);box-shadow:inset 0 0 0 1px var(--ink2);background:var(--bg)}
:where([data-page="catalog"]) .tile[data-on="false"]{color:var(--fg-muted)}
:where([data-page="catalog"]) .tile[data-on="false"] img{opacity:.35;filter:grayscale(1)}
:where([data-page="catalog"]) .tile .ck{margin-left:auto;width:18px;height:18px;border-radius:5px;border:1.5px solid var(--fg-subtle);display:grid;place-items:center}
:where([data-page="catalog"]) .tile[data-on="true"] .ck{background:var(--inverse-2);border-color:var(--border-ink2)}
.chipsx{display:flex;flex-wrap:wrap;gap:8px}
.tchip{display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 12px 0 8px;border-radius:8px;border:1px solid var(--border);background:var(--surface);font-size:13.5px;transition:all .15s}
:where([data-page="catalog"]) .tchip{display:inline-flex;align-items:center;gap:8px;height:32px;padding:0 12px 0 8px;border-radius:8px;border:1px solid var(--border);background:var(--surface);font-size:13.5px;transition:revert}
.tchip[data-on="true"]{border-color:var(--border-ink2);box-shadow:inset 0 0 0 1px var(--ink2)}
.chipx{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 4px 0 12px;border-radius:8px;background:var(--tint-mint-2);font-size:13.5px;font-weight:500}
:where([data-page="catalog"]) .chipx{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 4px 0 12px;border-radius:8px;background:var(--tint-mint-2);font-size:13.5px;font-weight:500;animation:fade .2s var(--ease) both}
.chipx.lock{padding-right:12px;background:var(--surface-2);color:var(--fg-2)}
.chipx button{border:0;background:none;width:24px;height:24px;border-radius:6px;display:grid;place-items:center;color:var(--fg-2)}
.chipx .dotc{width:8px;height:8px}
.addrow{display:flex;gap:8px;margin-top:10px}
.addrow input{flex:1;height:40px;border:1px solid var(--border);border-radius:8px;padding:0 12px}
.hint{font-size:13px;color:var(--fg-2);background:var(--surface-2);border-radius:8px;padding:12px 16px;margin:16px 0 0}
:where([data-page="catalog"]) .hint{font-size:13px;color:var(--fg-2);background:var(--surface-2);border-radius:8px;padding:12px 16px;margin:10px 0 0}
:where([data-page="modals"]) .hint{font-size:13px;color:var(--fg-2);background:var(--surface-2);border-radius:8px;padding:12px 14px;margin:revert}
.warn{font-size:13px;color:var(--danger-text-2);background:var(--tint-red);border-radius:8px;padding:12px 16px;margin:16px 0 0}
:where([data-page="catalog"]) .warn{display:flex;gap:10px;font-size:13px;color:var(--warn-text-2);background:var(--tint-amber);border-radius:8px;padding:12px 16px;animation:fade .25s var(--ease) both;margin:revert}
:where([data-page="modals"]) .warn{display:flex;gap:10px;font-size:13px;color:var(--warn-text-2);background:var(--tint-amber);border-radius:8px;padding:12px 14px;margin:revert}
.checks{display:flex;flex-direction:column;gap:10px}
.checks label{display:flex;gap:10px;align-items:flex-start;font-size:13.5px}
.checks input{width:18px;height:18px;margin:2px 0 0;accent-color:var(--ink2)}
.checks small{display:block;color:var(--fg-muted)}
.divider{height:1px;background:var(--surface-3)}
a:hover{color:var(--link-hover)}
.disp{font-family:var(--disp);font-weight:400;letter-spacing:.01em}
[data-tip]:hover::after,[data-tip]:focus-visible::after{content:attr(data-tip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);background:var(--inverse);color:#fff;font:500 12px/1.2 'Inter',sans-serif;letter-spacing:0;padding:6px 9px;border-radius:6px;white-space:nowrap;z-index:15;pointer-events:none;animation:tip .16s var(--ease) both}
[data-tip-pos="b"]:hover::after,[data-tip-pos="b"]:focus-visible::after{bottom:auto;top:calc(100% + 8px)}
[data-tip-pos="b"]:hover::before,[data-tip-pos="b"]:focus-visible::before{bottom:auto;top:calc(100% - 2px);border-top-color:transparent;border-bottom-color:var(--border-ink)}
[data-tip]:hover::before,[data-tip]:focus-visible::before{content:'';position:absolute;bottom:calc(100% + 3px);left:50%;transform:translateX(-50%);border:5px solid transparent;border-top-color:var(--border-ink);z-index:15;pointer-events:none}
.ml.lg{width:30px;height:30px}
:where([data-page="answer"]) .ml.lg{width:40px;height:40px}
.ml.lg img{width:17px;height:17px}
:where([data-page="answer"]) .ml.lg img{width:22px;height:22px}
:where([data-page="project"],[data-page="answer"]) .mlstack .ml{margin-left:-6px;box-shadow:inset 0 0 0 1px var(--line),0 0 0 2px #fff}
:where([data-page="project"],[data-page="answer"]) .mlstack .ml:first-child{margin-left:0}
:where([data-page="project"],[data-page="answer"]) .app[data-side="jasny"] .side{background:var(--surface);color:var(--fg);border-right:1px solid var(--border)}
:where([data-page="project"],[data-page="answer"]) .app[data-side="jasny"] .wordmark{color:var(--fg)}
:where([data-page="project"],[data-page="answer"]) .app[data-side="jasny"] .by{color:var(--fg-muted)}
.proj{display:flex;align-items:center;gap:12px;width:100%;padding:0 12px;border:1px solid #3a3b3c;border-radius:8px;background:#262728;text-align:left;height:56px;color:#fff;transition:background-color .15s}
:where([data-page="answer"]) .proj{display:flex;align-items:center;gap:12px;width:100%;padding:0 12px;border:1px solid #3a3b3c;border-radius:8px;background:#262728;height:56px;color:#fff;text-align:revert;transition:revert}
:where([data-page="project"],[data-page="answer"]) .proj:hover{background:#2f3031}
:where([data-page="project"],[data-page="answer"]) .app[data-side="jasny"] .proj{background:var(--bg);border-color:var(--border);color:var(--fg)}
:where([data-page="project"],[data-page="answer"]) .proj-t{display:flex;flex-direction:column;flex:1;min-width:0;line-height:1.3}
:where([data-page="project"],[data-page="answer"]) .proj-t small{color:var(--fg-subtle);font-size:12px}
.projlist{border:1px solid #3a3b3c;border-radius:8px;padding:4px;display:flex;flex-direction:column;gap:2px;background:#262728;animation:pop .22s var(--ease)}
.app[data-side="jasny"] .projlist{background:var(--surface);border-color:var(--border)}
.projlist button{display:flex;align-items:center;gap:12px;border:0;background:none;border-radius:6px;height:40px;padding:0 8px;text-align:left;color:inherit}
.projlist button:hover{background:#333435}
.app[data-side="jasny"] .projlist button:hover{background:var(--surface-2)}
.projlist .fav{width:24px;height:24px;font-size:12px;border-radius:6px}
:where([data-page="project"],[data-page="answer"]) .app[data-side="jasny"] .search{border-color:var(--border);color:var(--fg-muted)}
.side .search{white-space:nowrap;overflow:hidden}
:where([data-page="project"],[data-page="answer"]) .app[data-side="jasny"] .nav-h{color:var(--fg-muted)}
:where([data-page="project"],[data-page="answer"]) .app[data-side="jasny"] .nav{color:var(--fg-2)}
:where([data-page="project"],[data-page="answer"]) .app[data-side="jasny"] .nav:hover{background:var(--surface-2);color:var(--fg)}
:where([data-page="project"],[data-page="answer"]) .nav[data-on="true"], :where([data-page="project"],[data-page="answer"]) .app[data-side="jasny"] .nav[data-on="true"]{background:var(--tint-mint-2);color:var(--fg)}
:where([data-page="project"],[data-page="answer"]) .app[data-side="jasny"] .side-foot{border-color:var(--border)}
:where([data-page="project"],[data-page="answer"]) .kicker>span{color:var(--fg-subtle)}
:where([data-page="project"],[data-page="answer"]) .hero .lead{margin:12px 0 0;color:#D5D6D9;max-width:62ch;font-size:15px;line-height:1.5}
:where([data-page="project"],[data-page="answer"]) .chip.ghost{background:transparent;color:#D5D6D9;box-shadow:inset 0 0 0 1px #454647}
.pulse{width:8px;height:8px;border-radius:50%;background:#5DF584;animation:pulse 2.4s infinite}
:where([data-page="project"],[data-page="answer"]) .btn:active{transform:none}
:where([data-page="project"],[data-page="answer"]) .btn.ink:hover{background:#000}
.lnk{border:0;background:none;color:var(--lav-text);font-weight:600;font-size:13.5px;padding:0;height:32px;text-decoration:underline;text-decoration-color:var(--lav);text-underline-offset:4px;text-decoration-thickness:2px;transition:text-decoration-color .15s}
.lnk:hover{text-decoration-color:var(--lav-text)}
.filters{position:sticky;top:0;z-index:6;background:var(--surface-glass);backdrop-filter:blur(10px);padding:12px var(--pad-x);display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;border-bottom:1px solid var(--border)}
:where([data-page="project"],[data-page="answer"]) .pills button:hover{color:var(--fg)}
.mchip{display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 12px 0 6px;border-radius:999px;border:1px solid var(--border);background:var(--surface);font-size:13px;color:var(--fg-muted);transition:all .2s var(--ease)}
:where([data-page="modals"]) .mchip{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 12px 0 6px;border-radius:999px;border:1px solid var(--border);font-size:13px;color:var(--fg-2);background:revert;transition:revert}
:where([data-page="project"],[data-page="answer"]) .mchip .ml{width:24px;height:24px;box-shadow:none;background:var(--muted)}
:where([data-page="project"],[data-page="answer"]) .mchip[data-on="true"]{color:var(--fg);border-color:var(--border-ink2)}
:where([data-page="project"],[data-page="answer"]) .mchip[data-on="true"] .ml{background:#fff;box-shadow:inset 0 0 0 1px var(--line)}
:where([data-page="project"],[data-page="answer"]) .mchip[data-on="false"]{background:var(--surface-2)}
:where([data-page="project"],[data-page="answer"]) .mchip[data-on="false"] .ml img{opacity:.3;filter:grayscale(1)}
.toggle{display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 14px;border:1px solid var(--border);border-radius:999px;background:var(--surface);font-size:13.5px;color:var(--fg-2);transition:all .2s var(--ease)}
.toggle[data-on="true"]{border-color:var(--lav);background:var(--tint-lav-2);color:var(--lav-text);font-weight:500}
.card-h{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 16px;margin-bottom:20px}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
:where([data-page="admin"]) .kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}
.kpi{padding:var(--card);border-radius:8px;background:var(--surface);box-shadow:0 4px 32px 0 rgba(29,29,29,.05),inset 0 0 0 1px var(--border-2);display:flex;flex-direction:column;align-items:flex-start;gap:8px;animation:rise .5s var(--ease) both}
:where([data-page="admin"]) .kpi{padding:var(--card);border-radius:8px;background:var(--surface);box-shadow:inset 0 0 0 1px var(--border-2);display:flex;flex-direction:column;gap:6px;align-items:revert;animation:revert}
:where([data-page="project"],[data-page="answer"]) .kpi:nth-child(2){animation-delay:.05s}
:where([data-page="project"],[data-page="answer"]) .kpi:nth-child(3){animation-delay:.1s}
:where([data-page="project"],[data-page="answer"]) .kpi:nth-child(4){animation-delay:.15s}
.kpi.feat{background:var(--inverse);color:#fff;box-shadow:none}
.kpi-l{font-size:13.5px;color:var(--fg-muted);line-height:1.3}
.kpi.feat .kpi-l{color:var(--fg-subtle)}
.kpi-v{font-family:var(--disp);font-size:52px;line-height:1;letter-spacing:.01em}
.kpi.feat .kpi-v{color:var(--teal4)}
.kpi-v small{font-size:22px;color:var(--fg-muted)}
.kpi-s{font-size:12.5px;color:var(--fg-muted)}
.kpi.feat .kpi-s{color:var(--fg-subtle)}
.delta{display:inline-flex;align-items:center;gap:4px;height:22px;font-size:12.5px;font-weight:600;white-space:nowrap;border-radius:6px;padding:0 8px}
.delta[data-dir="up"]{color:var(--accent-text);background:var(--tint-mint)}
.delta[data-dir="down"]{color:var(--danger-text);background:var(--tint-red)}
.delta[data-dir="flat"]{color:var(--fg-muted);background:var(--surface-2)}
.kpi.feat .delta[data-dir="up"]{background:rgba(93,245,132,.14);color:#5DF584}
.kpi.feat .delta[data-dir="down"]{background:rgba(252,116,130,.16);color:#FC7482}
.chart-card{padding:var(--card) var(--card) 0}
.ctools{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center}
.legend{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:20px}
.lchip{display:inline-flex;align-items:center;gap:8px;height:32px;padding:0 12px;border-radius:999px;border:1px solid var(--border);background:var(--surface);font-size:13px;color:var(--fg-muted);transition:all .2s var(--ease)}
.lchip[data-on="true"]{color:var(--fg);border-color:var(--border-ink2)}
.lchip[data-on="false"] .ldot{opacity:.25}
.ldot{width:10px;height:10px;border-radius:50%}
.legend .sep{width:1px;height:20px;background:var(--surface-4);margin:0 4px}
.lkey{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;color:var(--fg-muted)}
.mk-note{width:10px;height:10px;background:var(--note);border-radius:2px;display:inline-block}
.mk-chg{width:10px;height:10px;background:var(--chg);border-radius:50%;display:inline-block}
.sw-vis{background:var(--teal8)}
.sw-pos{background:var(--lav6)}
:where([data-page="project"],[data-page="answer"]) .pills button[data-on="false"] .sw{opacity:.3}
.chartwrap{display:grid;grid-template-columns:44px minmax(0,1fr) 32px;column-gap:12px}
.axhead{font-size:11.5px;font-weight:500;color:var(--fg-muted);height:20px}
.axhead.r{text-align:left}
.axhead.l{text-align:right}
.axhead[data-on="false"],.yax[data-on="false"]{visibility:hidden}
.yax{position:relative;height:280px;font-size:11.5px;color:var(--fg-muted)}
.yax>span{position:absolute;right:0;transform:translateY(-50%);line-height:1}
.yax>span:first-child{transform:none}
.yax>span:last-child{transform:translateY(-100%)}
.yax.r>span{left:0;right:auto}
.plot{position:relative;height:280px}
.plot svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.xax{grid-column:2;position:relative;height:52px;font-size:12px;color:var(--fg-muted)}
.xax>span{position:absolute;top:24px;white-space:nowrap;line-height:1}
.radar{display:grid;grid-template-columns:minmax(300px,440px) minmax(0,1fr);gap:32px;align-items:center}
:where([data-page="modals"]) .radar{position:relative;width:100%;aspect-ratio:1/1;display:revert;grid-template-columns:revert;gap:revert;align-items:revert}
.rwrap{position:relative;aspect-ratio:1/1;width:100%}
.rwrap svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.rpoly{transform-origin:180px 180px;animation:rgrow .7s var(--ease) both;transition:all .4s var(--ease)}
.rlab{position:absolute;transform:translate(-50%,-50%);display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:500;white-space:nowrap;background:var(--surface);padding:3px 8px 3px 3px;border-radius:999px;box-shadow:0 0 0 1px var(--border-2)}
.rtick{position:absolute;left:50%;transform:translate(4px,-50%);font-size:11px;color:var(--fg-muted)}
.rside{display:flex;flex-direction:column;gap:20px;min-width:0}
.rtags{display:flex;flex-wrap:wrap;gap:6px}
.rchip{display:inline-flex;align-items:center;gap:7px;height:32px;padding:0 12px;border-radius:999px;border:1px solid var(--border);background:var(--surface);font-size:13px;color:var(--fg-muted);transition:all .2s var(--ease)}
.rchip[data-on="true"]{color:var(--fg);border-color:var(--border-ink2);font-weight:500}
.rchip[data-on="false"] .ldot{background:var(--surface-4) !important}
.rchip[disabled]{opacity:.45;cursor:not-allowed}
.rleg{border-top:1px solid var(--border-2)}
.rlh,.rlr{display:grid;grid-template-columns:minmax(120px,1fr) 80px 110px 110px;gap:12px;align-items:center}
.rlh{height:40px;font-size:12px;font-weight:500;color:var(--fg-muted);text-transform:uppercase;letter-spacing:.05em}
.rlr{height:44px;border-top:1px solid var(--border-2);font-size:13.5px}
.rlr>span:first-child{display:inline-flex;align-items:center}
.csub{font-family:'Inter',sans-serif;font-size:10.5px;font-weight:500;opacity:.7;line-height:1}
.cal{position:absolute;top:calc(100% + 12px);left:0;z-index:12;background:var(--surface);border-radius:12px;box-shadow:0 24px 64px rgba(15,16,17,.22),0 0 0 1px var(--border-2);display:flex;flex-wrap:wrap;animation:pop .2s var(--ease) both;width:max-content;max-width:calc(100vw - 260px - 2 * var(--pad-x))}
:where([data-page="modals"]) .cal{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;font-size:12.5px;text-align:center;position:revert;top:revert;left:revert;z-index:revert;background:revert;border-radius:revert;box-shadow:revert;flex-wrap:revert;animation:revert;width:revert;max-width:revert}
.cal-main{min-width:0;flex:1;padding:16px 20px;display:flex;flex-direction:column;gap:12px}
.cal-months{overflow-x:auto;padding-bottom:4px;display:flex;gap:32px}
.cal-pre{display:flex;flex-direction:column;gap:2px;padding:16px 10px;border-right:1px solid var(--border-2);min-width:176px}
.cpre{border:0;background:none;text-align:left;height:36px;padding:0 10px;border-radius:8px;font-size:13.5px;color:var(--fg-2)}
.cpre:hover{background:var(--surface-2)}
.cpre[data-on="true"]{background:var(--tint-mint-2);color:var(--fg);font-weight:500}
.cal-nav{display:flex;justify-content:space-between;align-items:center}
.cnav{width:32px;height:32px;border-radius:8px;border:1px solid var(--border);background:var(--surface);font-size:16px;color:var(--fg-2)}
.cnav[disabled]{opacity:.35;cursor:not-allowed}
.cal-t{font-family:var(--disp);font-size:17px;text-align:center;margin-bottom:8px}
.cal-g{display:grid;grid-template-columns:repeat(7,38px);row-gap:2px}
.dow{font-size:11px;color:var(--fg-muted);text-align:center;height:24px;line-height:24px}
.cday{width:38px;height:38px;border:0;background:transparent;font-size:13px;border-radius:8px;position:relative;padding:0 0 6px;color:var(--fg);transition:background-color .12s}
.cday::after{content:'';position:absolute;left:50%;bottom:5px;width:5px;height:5px;border-radius:50%;transform:translateX(-50%)}
.cday[data-st="hit"]::after{background:#3EAD9E}
.cday[data-st="miss"]::after{background:#E0475B}
.cday[data-st="none"]::after{background:#D5D6D9}
.cday:hover{background:var(--surface-2)}
.cday[data-in="true"]{background:var(--tint-mint);border-radius:0}
.cday[data-today="true"]{font-weight:700}
.cday[data-sel="true"]{background:var(--inverse-2);color:#fff;border-radius:8px}
.cday[data-sel="true"]::after{box-shadow:0 0 0 1.5px var(--surface)}
.cday[disabled]{color:var(--border-c8);cursor:not-allowed;background:transparent}
.cday[disabled]::after{display:none}
.cal-leg{display:flex;gap:16px;flex-wrap:wrap;font-size:12.5px;color:var(--fg-muted)}
.cal-leg>span{display:inline-flex;align-items:center;gap:6px}
.cd{display:inline-block;width:8px;height:8px;border-radius:50%}
.cal-f{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;border-top:1px solid var(--border-2);padding-top:12px;font-size:13px}
.mov{position:fixed;top:0;left:0;right:0;bottom:0;z-index:25;display:grid;place-items:center;padding:24px;background:rgba(15,16,17,.45);animation:fadein .2s ease both}
.mbd{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;border:0;background:transparent;padding:0;cursor:default}
.mdl{position:relative;width:min(640px,100%);max-height:90vh;display:flex;flex-direction:column;background:var(--surface);border-radius:16px;box-shadow:0 32px 80px rgba(15,16,17,.35);animation:modalin .3s var(--ease) both;overflow:hidden}
:where([data-page="modals"]) .mdl{background:var(--surface);border-radius:16px;box-shadow:0 32px 80px rgba(0,0,0,.35);overflow:hidden;display:flex;flex-direction:column;position:revert;width:revert;max-height:revert;animation:revert}
.mdl-h{padding:24px 24px 0;display:flex;justify-content:space-between;gap:16px;align-items:flex-start}
.mdl-b{padding:20px 24px;overflow-y:auto;display:flex;flex-direction:column;gap:18px}
.mdl-f{padding:16px 24px;border-top:1px solid var(--border-2);display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}
.mdl:focus,.drawer:focus{outline:none}
.xbtn{width:36px;height:36px;border-radius:8px;border:1px solid var(--border);background:var(--surface);display:grid;place-items:center;color:var(--fg-2);flex:none}
.xbtn:hover{background:var(--surface-2)}
.cbl{display:flex;flex-direction:column;border-radius:8px;box-shadow:inset 0 0 0 1px var(--border-2);overflow:hidden}
.cbr{display:flex;align-items:center;gap:12px;min-height:52px;padding:8px 14px;border:0;border-top:1px solid var(--border-2);background:var(--surface);font-size:13.5px;text-align:left;width:100%}
:where([data-page="modals"]) .cbr{display:flex;align-items:center;gap:12px;min-height:52px;padding:8px 14px;border-top:1px solid var(--border-2);font-size:13.5px;border:revert;background:revert;text-align:revert;width:revert}
.cbr:first-child{border-top:0}
:where([data-page="project"],[data-page="answer"]) .cbr[data-on="true"]{background:var(--tint-lav)}
.cbr small{display:block;color:var(--fg-muted);font-size:12px}
.cbr .grow{flex:1;min-width:0}
.ck{width:18px;height:18px;border-radius:5px;border:1.5px solid var(--fg-subtle);flex:none;display:grid;place-items:center}
:where([data-page="project"],[data-page="answer"]) .ck svg{opacity:0}
:where([data-page="project"],[data-page="answer"]) [data-on="true"]>.ck{background:var(--inverse-2);border-color:var(--border-ink2)}
:where([data-page="project"],[data-page="answer"]) [data-on="true"]>.ck svg{opacity:1}
.prog{height:10px;border-radius:999px;background:var(--surface-2);overflow:hidden}
:where([data-page="project"],[data-page="answer"]) .prog>span{display:block;height:100%;background:linear-gradient(90deg,var(--teal7),var(--teal4));border-radius:999px;transition:width .25s var(--ease)}
.okb{display:flex;gap:10px;font-size:13px;color:var(--ok-text);background:var(--tint-mint);border-radius:8px;padding:12px 14px}
.cmpc{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.cmpk{background:var(--surface);border-radius:8px;box-shadow:inset 0 0 0 1px var(--border-2);padding:16px;display:flex;flex-direction:column;gap:6px}
.cmpk small{color:var(--fg-muted);font-size:12.5px}
.cmpk .v{font-family:var(--disp);font-size:24px;line-height:1.15;white-space:nowrap}
.cmpk .v>span{color:var(--fg-subtle)}
.cper{display:flex;flex-wrap:wrap;gap:8px 24px;align-items:center;font-size:13.5px}
.cper i{display:inline-block;width:14px;height:0;border-top:3px solid var(--teal8);margin-right:8px;vertical-align:middle}
.cper i.p2{border-top:2px dashed var(--teal8)}
.g-cmp{grid-template-columns:minmax(260px,1fr) 110px 110px 120px;min-width:700px}
.sortb{border:0;background:none;padding:0;font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit;display:inline-flex;gap:4px;align-items:center}
.sortb[data-on="true"]{color:var(--fg)}
.patl{display:flex;flex-direction:column;gap:6px;width:100%;margin-top:4px;padding-top:12px;border-top:1px solid var(--border-ink2);animation:fade .25s var(--ease) both}
.patr{display:grid;grid-template-columns:1fr 44px;gap:8px;align-items:center;font-size:13px;color:#D5D6D9}
.patr .bar{grid-column:1/-1;height:4px;background:var(--inverse-2)}
.patr .bar>span{background:var(--teal4)}
.patb{border:0;background:none;color:var(--teal4);font-size:12.5px;font-weight:600;padding:0;height:24px;display:inline-flex;align-items:center;gap:4px}
.axnote{font-size:12.5px;color:var(--fg-muted);margin:0 0 16px}
.pats{font-size:12px;color:var(--fg-2);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;margin-top:4px}
.hist{font-size:12px;color:var(--fg-muted);margin-top:4px;display:flex;align-items:center;gap:6px}
.pen{border:0;background:none;width:26px;height:26px;border-radius:6px;display:inline-grid;place-items:center;color:var(--fg-muted);vertical-align:middle}
.pen:hover{background:var(--surface-2);color:var(--fg)}
.spark{width:96px;height:28px;overflow:visible;display:block}
.vlogos{display:flex;align-items:center;flex-wrap:wrap;gap:3px;margin-top:8px}
.vlogos .ml{width:20px;height:20px;margin-left:0;box-shadow:inset 0 0 0 1px var(--line)}
.vlogos .ml:first-child{margin-left:0}
.vlogos .ml img{width:12px;height:12px}
.dett{display:grid;align-items:center;column-gap:12px;padding:0 24px}
.dett.h{height:56px;border-bottom:1px solid var(--border-2);font-size:12px;font-weight:500;color:var(--fg-muted)}
.dett.r{min-height:56px;border-bottom:1px solid var(--border-2);font-size:13.5px}
.dett .cc{text-align:center;justify-self:center}
.pcell small{display:block;font-family:'Inter',sans-serif;font-size:11px;opacity:.75}
.pcell{display:inline-grid;place-items:center;min-width:44px;min-height:30px;padding:2px 6px;text-align:center;line-height:1.15;border-radius:6px;font-family:var(--disp);font-size:16px}
.pcell[data-lvl="3"]{background:var(--teal4)}
.pcell[data-lvl="2"]{background:var(--tint-mint-2)}
.pcell[data-lvl="1"]{background:var(--surface-2);color:var(--fg-2)}
.pcell[data-lvl="0"]{color:var(--fg-subtle);font-family:inherit}
.mchart{position:relative;height:140px}
.mchart svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.histl .cbr{min-height:56px}
.repwarn{display:flex;gap:10px;font-size:13px;color:var(--warn-text-2);background:var(--tint-amber);border-radius:8px;padding:12px 16px;margin-top:16px}
.lq{max-height:240px;overflow-y:auto}
@keyframes modalin{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
.mail{background:var(--surface);border-radius:8px;box-shadow:0 2px 12px rgba(0,0,0,.06);overflow:hidden}
.mail-h{display:flex;gap:10px;align-items:center;padding:16px 20px;background:var(--inverse);color:#fff}
.mail-h small{display:block;color:var(--fg-subtle);font-size:12px}
.mail-s{padding:16px 20px;border-top:1px solid var(--border-2);display:flex;flex-direction:column;gap:12px}
.mail-s h3{margin:0}
.mail-k{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.mail-k>div{background:var(--bg);border-radius:8px;padding:10px 12px}
.mail-k small,.mail-g small,.mail-c small,.mail-t{display:block;font-size:12px;color:var(--fg-muted)}
.mail-k b{font-family:var(--disp);font-weight:400;font-size:24px}
.mail-g{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;font-size:12.5px}
.mail-g ol{margin:6px 0 0;padding-left:18px;display:flex;flex-direction:column;gap:3px;word-break:break-all}
.mail-tb{border-radius:8px;box-shadow:inset 0 0 0 1px var(--border-2);overflow:hidden;font-size:12.5px}
.mail-r{display:grid;grid-template-columns:minmax(0,1fr) 70px 70px 70px;gap:8px;padding:8px 12px;border-top:1px solid var(--border-2)}
.mail-r.h{border-top:0;background:var(--bg);color:var(--fg-muted);font-weight:500}
.mail-r>span:not(:first-child){text-align:center}
.cmpcharts{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);gap:16px}
.pstrip{display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px}
.pbox{display:flex;flex-direction:column;gap:4px;padding:2px 0 2px 16px;border-left:3px solid var(--teal8);min-width:0}
.pbox.p2{border-left:2px dashed var(--teal8)}
.pbox small{font-size:12px;font-weight:500;color:var(--fg-muted);text-transform:uppercase;letter-spacing:.05em}
.pbox strong{font-family:var(--disp);font-size:24px;line-height:1.15;font-weight:500;white-space:nowrap}
.pbox .muted{margin:0;font-size:13px}
.pvs{font-family:var(--disp);font-size:18px;color:var(--fg-subtle)}
.pnote{margin-left:auto;display:flex;flex-direction:column;align-items:flex-end;gap:10px;max-width:360px;text-align:right}
.qcper{padding:16px 24px;border-bottom:1px solid var(--border-2)}
.g-cc{grid-template-columns:minmax(200px,1fr) 180px 96px 104px 96px 96px;min-width:880px}
.ccv{display:flex;flex-direction:column;gap:6px}
.ccv .bar{max-width:150px}
.cmpch{background:var(--surface);border-radius:8px;min-width:0;box-shadow:inset 0 0 0 1px var(--border-2);padding:16px 18px}
.cch-h{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}
.cleg{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:12.5px;color:var(--fg-2);margin-bottom:10px}
.cleg>span{display:inline-flex;align-items:center;gap:8px}
.cleg i{display:inline-block;width:18px;height:0}
.cleg i.l1{border-top:3px solid var(--teal8)}
.cleg i.l2{border-top:2px dashed var(--teal8)}
.cleg i.b1,.cleg i.b2{width:12px;height:12px;border-radius:3px}
.cleg i.b1{background:var(--teal7)}
.cleg i.b2{background:var(--lav)}
.cplot{display:grid;grid-template-columns:40px minmax(0,1fr) 28px;column-gap:10px}
.cplot .yax{height:220px}
.cpl{position:relative;height:220px}
.cpl svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.cpl .chgmk,.cpl .notemk{cursor:default}
.cpl .notemk{bottom:auto !important;top:-5px !important}
.cpl .notemk::after{height:214px}
.cxax{display:flex;justify-content:space-between;font-size:12px;color:var(--fg-muted);margin:8px 38px 0 50px}
.gbars{display:flex;align-items:flex-end;gap:10px;height:250px}
.gb{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0}
.gbp{height:180px;width:100%;display:flex;align-items:flex-end;justify-content:center}
.gbc{display:flex;align-items:flex-end;gap:3px;height:100%}
.gbc>span{width:14px;border-radius:4px 4px 0 0;transform-origin:bottom;animation:growy .8s var(--ease) both;min-height:2px}
.gb1{background:var(--teal7)}
.gb2{background:var(--lav)}
@keyframes growy{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@keyframes rgrow{from{transform:scale(.2);opacity:0}to{transform:none;opacity:1}}
:where([data-page="project"],[data-page="answer"]) a.nav{text-decoration:none}
.draw{}
.plot svg,.mchart svg,.cpl svg{animation:reveal 1.2s var(--ease) both}
@keyframes reveal{from{clip-path:inset(-24px 100% -24px -24px)}to{clip-path:inset(-24px -24px -24px -24px)}}
.areafade{opacity:0;animation:fadein .8s ease .7s forwards}
.hovgrid{position:absolute;top:0;bottom:0;display:flex;z-index:3}
.hcol:first-child,.hcol:last-child{flex:.5}
.hcol{flex:1;border:0;background:transparent;padding:0;cursor:crosshair;min-width:0}
.hcol:focus-visible{box-shadow:inset 0 0 0 2px var(--lav6) !important}
.xline{position:absolute;top:0;bottom:0;width:1px;background:var(--inverse-2);opacity:.35;pointer-events:none;z-index:2}
.dot{position:absolute;width:12px;height:12px;border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 3px var(--surface),0 2px 6px rgba(0,0,0,.25);pointer-events:none;z-index:4;animation:popd .2s var(--ease) both}
:where([data-page="modals"]) .dot{width:8px;height:8px;border-radius:50%;display:inline-block;flex:none;position:revert;transform:revert;box-shadow:revert;pointer-events:revert;z-index:revert;animation:revert}
.dot.small{width:8px;height:8px;box-shadow:0 0 0 2px var(--surface)}
.enddot{position:absolute;width:10px;height:10px;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none;z-index:2}
.enddot::after{content:'';position:absolute;inset:-6px;border-radius:50%;background:inherit;opacity:.25;animation:ring 2.4s var(--ease) infinite}
.ctip{position:absolute;top:12px;z-index:8;width:240px;background:var(--inverse);color:#fff;border-radius:8px;padding:12px 14px;box-shadow:0 16px 40px rgba(15,16,17,.3);pointer-events:none;font-size:13px;animation:fade .15s var(--ease) both}
.ctip .td{font-weight:600;margin-bottom:8px;color:var(--teal4)}
.ctip .tr{display:flex;justify-content:space-between;gap:12px;padding:2px 0}
.ctip .tr>span:first-child{display:inline-flex;align-items:center;gap:8px;color:#D5D6D9}
.ctip .tr strong{font-weight:600}
.ctip .tn{margin-top:8px;padding-top:8px;border-top:1px solid #3a3b3c;display:flex;gap:8px;align-items:flex-start;color:#E0E2E5;line-height:1.35}
.ctip .tn i{margin-top:3px;flex:none}
.notemk{position:absolute;top:-5px;width:12px;height:12px;background:var(--note);border:2px solid var(--surface);border-radius:3px;transform:translateX(-50%);z-index:5;padding:0;box-shadow:0 2px 6px rgba(220,38,38,.4);transition:transform .2s var(--ease)}
.notemk:hover{transform:translateX(-50%) scale(1.25)}
.notemk::after{content:'';position:absolute;left:50%;top:10px;width:1px;height:280px;background:repeating-linear-gradient(var(--note) 0 3px,transparent 3px 7px);opacity:.35;transform:translateX(-50%);pointer-events:none}
.chgmk{position:absolute;top:-6px;width:12px;height:12px;background:var(--chg);border:2px solid var(--surface);border-radius:50%;transform:translateX(-50%);z-index:5;padding:0;box-shadow:0 2px 6px rgba(249,115,22,.45);transition:transform .2s var(--ease)}
.chgmk:hover{transform:translateX(-50%) scale(1.25)}
.noteform{display:flex;flex-wrap:wrap;gap:12px;align-items:center;background:var(--tint-lav);border-radius:8px;padding:12px 16px;margin-bottom:20px;animation:rise .3s var(--ease) both}
.noteform .nd{font-size:13px;color:var(--lav-text)}
.noteform .nd strong{color:var(--fg)}
.noteform input{flex:1;min-width:220px;height:40px;border:1px solid var(--border);border-radius:8px;padding:0 12px;background:var(--surface)}
.events{border-top:1px solid var(--border-2);margin:0 calc(-1 * var(--card));padding:16px var(--card) 20px}
.events h3{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.evl{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:4px 24px}
.ev{display:flex;align-items:center;gap:12px;width:100%;border:0;background:none;text-align:left;padding:8px;border-radius:8px;font-size:13.5px;min-height:40px;transition:background-color .15s}
.ev:hover{background:var(--bg)}
.ev time{font-weight:600;color:var(--fg-2);width:44px;flex:none}
.ev>span:last-child{flex:1;min-width:0}
.two{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(360px,100%),1fr));gap:var(--gap)}
:where([data-page="admin"]) .two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
.list{list-style:none;margin:0 -8px;padding:0;display:flex;flex-direction:column}
.row-btn{display:flex;align-items:center;gap:16px;width:100%;border:0;background:none;text-align:left;padding:0 8px;border-radius:8px;height:48px;transition:background-color .15s}
.row-btn:hover{background:var(--bg)}
.row-btn:hover .row-t{text-decoration:underline;text-decoration-color:var(--mint);text-decoration-thickness:3px;text-underline-offset:3px}
.row-t{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.num{font-weight:600;min-width:48px;text-align:right}
.ranks{margin:0 -8px}
.rank{display:grid;grid-template-columns:32px minmax(100px,150px) 1fr 48px;align-items:center;gap:12px;height:48px;padding:0 8px;font-size:14px;border-radius:8px}
.rank .rn{font-family:var(--disp);font-size:24px;line-height:1;color:var(--fg-subtle);text-align:center}
.rank[data-own="true"]{background:var(--tint-mint);font-weight:600}
.rank[data-own="true"] .rn{color:var(--accent-text)}
.bar{height:8px;background:var(--surface-2);border-radius:999px;overflow:hidden}
.bar>span{display:block;height:100%;border-radius:999px;background:var(--teal7);transform-origin:left;animation:grow .9s var(--ease) both}
.star{color:var(--danger-text);font-weight:700;margin-left:4px}
:where([data-page="project"],[data-page="answer"]) .trow:last-child{border-bottom:0}
.trow[data-sel="true"]{background:var(--tint-lav)}
:where([data-page="admin"]) .trow[data-sel="true"]{background:var(--tint-red-soft)}
:where([data-page="project"],[data-page="answer"]) .trow[data-own="true"]{background:var(--tint-mint)}
.g-q{grid-template-columns:20px minmax(280px,1fr) 150px 72px 104px 100px 128px;min-width:1000px}
.g-c{grid-template-columns:32px minmax(200px,1fr) 110px 200px 88px 104px 96px 72px;min-width:1080px}
:where([data-page="admin"]) .g-c{grid-template-columns:minmax(180px,1.4fr) repeat(7,minmax(96px,1fr));min-width:1000px}
.g-d{grid-template-columns:minmax(200px,1fr) 128px 90px 70px 84px 150px 170px;min-width:1050px}
:where([data-page="admin"]) .g-d{grid-template-columns:20px 64px minmax(260px,2fr) repeat(3,minmax(110px,1fr));min-width:880px}
.g-l{grid-template-columns:minmax(300px,1fr) 90px 90px 150px 128px;min-width:820px}
.qbtn{border:0;background:none;text-align:left;padding:0;font-weight:500;color:var(--fg);line-height:1.4;font-size:14px}
.qbtn:hover{text-decoration:underline;text-decoration-color:var(--mint);text-decoration-thickness:3px;text-underline-offset:3px}
.tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}
.ring .arc{transition:stroke-dasharray .6s var(--ease)}
.vcell{display:flex;align-items:center;gap:12px}
.vcell .bar{flex:1}
.switch{width:40px;height:24px;border-radius:999px;border:0;background:var(--surface-4);position:relative;padding:0;flex:none;transition:background-color .25s var(--ease)}
:where([data-page="modals"]) .switch{width:40px;height:24px;border-radius:999px;background:var(--teal7);position:relative;flex:none;border:revert;padding:revert;transition:revert}
:where([data-page="project"],[data-page="answer"]) .switch>span{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:var(--surface);box-shadow:0 1px 3px rgba(16,24,40,.2);transition:left .25s var(--ease)}
:where([data-page="project"],[data-page="answer"]) .switch[data-on="true"]{background:var(--teal7)}
:where([data-page="project"],[data-page="answer"]) .switch[data-on="true"]>span{left:19px}
.swrap{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--fg-muted)}
.cb{width:18px;height:18px;margin:0;accent-color:var(--ink2)}
:where([data-page="admin"]) .cb{width:18px;height:18px;margin:0;accent-color:var(--red)}
.bulk{display:flex;flex-wrap:wrap;align-items:center;gap:8px;background:var(--inverse);color:#fff;border-radius:8px;padding:8px 8px 8px 20px;animation:rise .3s var(--ease) both}
.bulk .btn{background:transparent;color:#fff;border-color:#454647;height:36px;font-size:13.5px}
.bulk .btn:hover{background:var(--inverse-2)}
.addp{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:24px}
textarea.ta{width:100%;min-height:132px;border:1px solid var(--border);border-radius:8px;padding:12px;resize:vertical;font-size:14px}
.drop{border:1.5px dashed #ABABE0;border-radius:8px;padding:20px;display:flex;flex-direction:column;gap:8px;justify-content:center;align-items:flex-start;color:var(--fg-muted);font-size:13.5px;min-height:132px;background:var(--tint-lav)}
.mtx{display:grid;align-items:center;column-gap:8px;padding:0 24px;min-width:780px}
.mtx.h{font-size:12px;font-weight:500;color:var(--fg-muted);height:72px;border-bottom:1px solid var(--border-2)}
.mtx.r{border-bottom:1px solid var(--border-2);height:60px}
.mhd{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center}
.cell{width:100%;height:44px;border-radius:8px;border:1px solid transparent;font-family:var(--disp);font-size:18px;line-height:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;transition:transform .2s var(--ease),box-shadow .2s var(--ease)}
.cell[data-lvl="3"]{background:var(--teal4);color:var(--ink)}
.cell[data-lvl="2"]{background:var(--tint-mint-2);color:var(--fg)}
.cell[data-lvl="1"]{background:var(--surface-2);color:var(--fg-2)}
.cell[data-lvl="0"]{background:var(--surface);border:1px dashed var(--border);color:var(--fg-muted);font-family:inherit;font-size:14px}
.cell:hover{transform:translateY(-2px);box-shadow:0 8px 18px -8px rgba(29,30,31,.35)}
.leg{display:flex;flex-wrap:wrap;gap:16px;font-size:13px;color:var(--fg-muted);align-items:center}
.leg>span{display:inline-flex;align-items:center;gap:8px}
.leg i{display:inline-block;width:14px;height:14px;border-radius:4px}
:where([data-page="project"],[data-page="answer"]) .typ[data-own="true"]{background:var(--mint);color:var(--ink)}
.urlc{display:flex;flex-direction:column;min-width:0}
.urlc>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}
.urlc>small{color:var(--fg-muted)}
.exp{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:var(--gap);align-items:start}
.step{display:flex;gap:16px;align-items:flex-start;margin-bottom:20px}
.stepn{font-family:var(--disp);font-size:28px;line-height:1;color:var(--teal7);width:24px;flex:none}
.opts{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}
:where([data-page="modals"]) .opts{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.opt{display:flex;gap:12px;align-items:flex-start;text-align:left;border:1px solid var(--border);background:var(--surface);border-radius:8px;padding:16px;min-height:44px;transition:border-color .2s,background-color .2s,box-shadow .2s var(--ease)}
:where([data-page="modals"]) .opt{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--border);border-radius:8px;padding:12px;font-size:13.5px;text-align:revert;background:revert;min-height:revert;transition:revert}
:where([data-page="project"],[data-page="answer"]) .opt:hover{border-color:var(--fg-subtle)}
:where([data-page="project"],[data-page="answer"]) .opt[data-on="true"]{border-color:var(--border-ink2);background:var(--bg);box-shadow:inset 0 0 0 1px var(--ink2)}
:where([data-page="project"],[data-page="answer"]) .opt strong{display:block;font-size:14px;font-weight:600;line-height:18px}
.opt small{display:block;color:var(--fg-muted);font-size:12.5px;margin-top:4px}
:where([data-page="modals"]) .opt small{display:block;color:var(--fg-muted);font-size:12px;margin-top:2px}
.opt .badge{display:inline-flex;align-items:center;height:18px;padding:0 6px;border-radius:5px;background:var(--chg);color:#fff;font-size:11px;font-weight:600;margin-left:6px;vertical-align:1px}
.radio{width:18px;height:18px;border-radius:50%;border:1.5px solid var(--fg-subtle);flex:none;transition:border .2s var(--ease)}
.opt[data-on="true"] .radio{border:6px solid var(--border-ink2)}
.chk{width:18px;height:18px;border-radius:5px;border:1.5px solid var(--fg-subtle);flex:none;display:grid;place-items:center;transition:all .2s var(--ease)}
.chk svg{opacity:0;transform:scale(.6);transition:all .2s var(--ease)}
.opt[data-on="true"] .chk{background:var(--inverse-2);border-color:var(--border-ink2)}
.opt[data-on="true"] .chk svg{opacity:1;transform:scale(1)}
.opt.center{align-items:center}
.sum{position:sticky;top:84px;background:var(--inverse);color:#fff;box-shadow:none}
.sum h2{color:#fff;margin-bottom:8px}
.sumrow{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--border-ink2);font-size:13.5px}
:where([data-page="admin"]) .sumrow{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:14px;font-size:13px;color:var(--fg-muted);justify-content:revert;padding:revert;border-bottom:revert}
:where([data-page="project"],[data-page="answer"]) .sumrow>span:first-child{color:var(--fg-subtle)}
:where([data-page="project"],[data-page="answer"]) .sumrow>span:last-child{font-weight:600;text-align:right}
.sum .btn.lav{width:100%;height:48px;margin-top:20px}
.sum .note{color:var(--fg-subtle);font-size:12.5px;margin:16px 0 0;line-height:1.5}
.setl{display:grid;grid-template-columns:232px minmax(0,1fr);gap:var(--gap);align-items:start}
.stabs{display:flex;flex-direction:column;gap:4px}
.stab{display:flex;align-items:center;height:40px;padding:0 12px;border:0;background:none;border-radius:8px;text-align:left;color:var(--fg-2);font-weight:500;transition:background-color .15s}
.stab:hover{background:var(--surface-2)}
.stab[data-on="true"]{background:var(--tint-mint-2);color:var(--fg)}
.sh{margin-bottom:24px}
.mcards{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}
:where([data-page="project"],[data-page="answer"]) .chipx button:hover{background:rgba(0,0,0,.06)}
.blk{margin-top:24px}
.blk .pills{flex-wrap:wrap;height:auto;border-radius:20px;max-width:100%}
.savebar{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid var(--border-2)}
.drawer{position:fixed;top:0;right:0;bottom:0;width:min(720px,100%);background:var(--bg);z-index:21;box-shadow:-24px 0 64px rgba(15,16,17,.25);display:flex;flex-direction:column;animation:slidein .4s var(--ease) both}
.drawer-h{padding:24px 28px 0;background:var(--inverse);color:#fff;display:flex;flex-direction:column;gap:16px}
.drawer-b{padding:24px 28px 40px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:20px}
.dtop{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}
.dtitle{font-family:var(--disp);font-weight:400;font-size:26px;margin:0;line-height:1.2;letter-spacing:.01em}
.drawer-h .tags{margin:0 0 8px}
.drawer-h .tag{background:var(--inverse-2);color:var(--mint)}
.dacts{display:flex;flex-wrap:wrap;gap:8px}
.dacts .btn{background:transparent;color:#fff;border-color:#454647}
.dacts .btn:hover{background:var(--inverse-2)}
.tabs{display:flex;gap:4px}
.tab{border:0;background:none;height:48px;padding:0 16px;border-bottom:3px solid transparent;color:var(--fg-subtle);font-weight:500;transition:color .2s,border-color .25s var(--ease)}
.tab:hover{color:#fff}
.tab[data-on="true"]{color:#fff;border-bottom-color:var(--mint)}
.mini{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.mini .kpi{padding:16px}
.mini .kpi-v{font-size:36px}
.brk{display:grid;grid-template-columns:24px 88px 1fr 48px;gap:12px;align-items:center;height:40px;font-size:13.5px}
.mtabs{display:flex;flex-wrap:wrap;gap:8px}
.mtab{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 14px 0 6px;border:1px solid var(--border);border-radius:999px;background:var(--surface);font-size:13.5px;transition:all .2s var(--ease)}
.mtab:hover{border-color:var(--fg-subtle)}
.mtab .ml{width:28px;height:28px}
.mtab[data-on="true"]{border-color:var(--border-ink2);background:var(--inverse-2);color:#fff;font-weight:500}
.mtab[data-on="true"] .ml{box-shadow:none}
.mtab em{font-style:normal;font-size:12.5px;color:var(--fg-muted);font-weight:600}
.mtab[data-on="true"] em{color:var(--mint)}
.ans{display:grid;grid-template-columns:minmax(0,1fr) 192px;gap:20px}
.anstext{font-size:14.5px;line-height:1.7;border-radius:8px;padding:20px;background:var(--surface);box-shadow:inset 0 0 0 1px var(--border-2);animation:fade .3s var(--ease) both}
.anstext p{margin:0 0 12px;max-width:72ch}
.anstext p:last-child{margin:0}
.rail{display:flex;flex-direction:column;gap:6px}
:where([data-page="answer"]) .rail{border-left:1px solid var(--border-2);background:var(--bg);padding:var(--card) 20px;overflow:hidden;transition:all .3s var(--ease);display:revert;flex-direction:revert;gap:revert}
.railrow{display:flex;align-items:center;gap:10px;font-size:13.5px;height:36px;padding:0 10px;border-radius:8px;background:var(--surface);box-shadow:inset 0 0 0 1px var(--border-2)}
.railrow[data-own="true"]{background:var(--mint);box-shadow:none;font-weight:600}
.railrow b{font-family:var(--disp);font-weight:400;font-size:18px;line-height:1;width:20px;text-align:center}
.srcl{display:flex;flex-direction:column;gap:6px}
.srci{display:flex;align-items:center;gap:8px;font-size:13.5px;height:40px;padding:0 12px;background:var(--surface);box-shadow:inset 0 0 0 1px var(--border-2);border-radius:8px}
.srci[data-own="true"]{background:var(--tint-mint);box-shadow:inset 0 0 0 1px var(--teal4)}
.srci>span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
:where([data-page="project"],[data-page="answer"]) .toast[data-type="warn"]{background:#7A3A07 !important}
:where([data-page="project"],[data-page="answer"]) .toast[data-type="err"]{background:#7A1E2A !important}
.cmdk{position:fixed;top:12%;left:50%;width:min(640px,94%);background:var(--surface);border-radius:16px;box-shadow:0 32px 80px rgba(15,16,17,.35);z-index:31;overflow:hidden;transform:translateX(-50%);animation:cmdk .3s var(--ease) both}
.cmdk-i{display:flex;align-items:center;gap:12px;padding:0 20px;border-bottom:1px solid var(--border-2);color:var(--fg-muted)}
.cmdk-i input{border:0;outline:0;height:60px;flex:1;font-size:16px;color:var(--fg);background:transparent}
.cmdk-i input:focus-visible{box-shadow:none !important}
.cmdk-i kbd{border-color:var(--border)}
.cmdk-l{padding:8px;max-height:400px;overflow-y:auto;display:flex;flex-direction:column;gap:2px}
.cmdk-r{display:flex;align-items:center;gap:16px;border:0;background:none;text-align:left;border-radius:8px;height:44px;padding:0 12px;transition:background-color .12s}
.cmdk-r:hover{background:var(--tint-mint-2)}
.cmdk-g{font-size:12px;font-weight:500;color:var(--fg-muted);width:84px;flex:none}
.cmdk-f{padding:12px 20px;border-top:1px solid var(--border-2);font-size:12.5px;color:var(--fg-muted);display:flex;gap:20px;flex-wrap:wrap}
mark.hl{background:linear-gradient(transparent 55%,var(--mint) 55%);color:inherit;padding:0 2px;font-weight:600}
@keyframes tip{from{opacity:0;transform:translate(-50%,4px)}to{opacity:1;transform:translate(-50%,0)}}
@keyframes pop{from{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:none}}
@keyframes popd{from{transform:translate(-50%,-50%) scale(0)}to{transform:translate(-50%,-50%) scale(1)}}
@keyframes draw{to{stroke-dashoffset:0}}
@keyframes grow{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes slidein{from{transform:translateX(48px);opacity:0}to{transform:none;opacity:1}}
@keyframes cmdk{from{opacity:0;transform:translate(-50%,-8px) scale(.98)}to{opacity:1;transform:translate(-50%,0) scale(1)}}
@keyframes ring{0%{transform:scale(.6);opacity:.45}100%{transform:scale(1.8);opacity:0}}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(93,245,132,.55)}70%{box-shadow:0 0 0 8px rgba(93,245,132,0)}100%{box-shadow:0 0 0 0 rgba(93,245,132,0)}}
button,input,select{font:inherit;color:inherit}
.proj small{display:block;color:var(--fg-subtle);font-size:12px}
.nav svg.i{flex:none}
.hrow{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px}
.dnav{display:flex;align-items:center;gap:8px;background:#262728;border:1px solid #3a3b3c;border-radius:10px;padding:4px}
.dnav button{width:36px;height:36px;border:0;border-radius:8px;background:transparent;color:#fff;display:grid;place-items:center}
.dnav button:hover{background:#3a3b3c}
.dnav button[disabled]{opacity:.3;cursor:not-allowed}
.dnav .dt{padding:0 8px;min-width:200px;text-align:center;line-height:1.2}
.dnav .dt>strong{display:block;font-size:14px}
.dnav .dt>span{font-size:12px;color:var(--fg-subtle)}
.pills .ml{width:22px;height:22px}
.pills .ml img{width:13px;height:13px}
.acard{background:var(--surface);border-radius:8px;box-shadow:0 4px 32px 0 rgba(29,29,29,.05),inset 0 0 0 1px var(--border-2);overflow:hidden;animation:rise .4s var(--ease) both}
.ah{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:18px var(--card);border-bottom:1px solid var(--border-2)}
.ah h2{margin:0;font-family:var(--disp);font-weight:400;font-size:22px;line-height:1.1}
.ah small{display:block;font-size:12.5px;color:var(--fg-muted);margin-top:2px}
.ahl{display:flex;align-items:center;gap:12px}
.pos{display:inline-flex;align-items:center;gap:8px;height:32px;padding:0 12px;border-radius:8px;font-size:13.5px;font-weight:600}
.pos[data-hit="true"]{background:var(--mint);color:var(--ink)}
.pos[data-hit="false"]{background:var(--tint-red);color:var(--danger-text)}
.ab{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:0}
.ab[data-rail="false"]{grid-template-columns:minmax(0,1fr) 0}
.atext{padding:var(--card);font-size:14.5px;line-height:1.7;min-width:0}
.atext p{margin:0 0 12px;max-width:76ch}
.atext p:last-child{margin:0}
.ab[data-rail="false"] .rail{padding:0;border:0}
.rail h3{margin:0 0 4px;font-size:13.5px;font-weight:600}
.rail p{margin:0 0 12px;font-size:12px;color:var(--fg-muted)}
.rr{display:flex;align-items:center;gap:10px;font-size:13.5px;height:36px;padding:0 10px;border-radius:8px;background:var(--surface);box-shadow:inset 0 0 0 1px var(--border-2);margin-bottom:6px}
.rr[data-own="true"]{background:var(--mint);box-shadow:none;font-weight:600}
.rr b{font-family:var(--disp);font-weight:400;font-size:18px;line-height:1;width:20px;text-align:center}
.railbtn{border:0;background:none;color:var(--lav-text);font-weight:600;font-size:13px;height:32px;padding:0 4px;text-decoration:underline;text-decoration-color:var(--lav);text-underline-offset:4px;text-decoration-thickness:2px}
.extras{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;padding:0 var(--card) var(--card)}
.xb{border-radius:8px;background:var(--bg);box-shadow:inset 0 0 0 1px var(--border-2);padding:16px}
.xb h4{margin:0 0 10px;font-size:13px;font-weight:600;display:flex;justify-content:space-between}
.xb h4>span{color:var(--fg-muted);font-weight:500}
.xb ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px;font-size:13px}
.xb li{display:flex;gap:8px;align-items:flex-start;min-width:0}
.xb li a{color:var(--lav-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-decoration:underline;text-decoration-color:var(--lav);text-underline-offset:3px}
.xb li[data-own="true"] a{color:var(--accent-text);text-decoration-color:var(--teal4);font-weight:600}
.prod{display:flex;justify-content:space-between;gap:8px;width:100%}
.prod>span:last-child{color:var(--fg-muted);white-space:nowrap}
.quote{border-left:3px solid var(--lav);padding-left:10px;color:var(--fg-2)}
.qlink{display:block;margin-top:4px;font-size:13px;font-weight:600;color:var(--lav-text);text-decoration:underline;text-decoration-color:var(--lav);text-underline-offset:3px}
.tsum{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;background:var(--surface);border:1px solid var(--border-2);border-radius:16px;padding:20px 24px;margin-bottom:16px}
.tsum h2{margin:0;font-size:18px}
.tsum .muted{margin:4px 0 0}
.tsk{display:flex;gap:28px}
.tsk div{display:flex;flex-direction:column;align-items:center;gap:2px}
.tsk b{font-family:"PolySans",Inter,sans-serif;font-size:22px;font-weight:600}
.tsk span{font-size:12px;color:var(--fg-muted)}
:where([data-page="modals"]) .app{--ink:#1D1E1F;--ink2:#313233;--g1:#454647;--g2:#737375;--g3:#A4A6A8;--line:#E0E2E5;--line2:#EBEDF0;--muted:#F2F4F7;--paper:#FAFBFC;--mint:#A2F5E7;--mint2:#B6FDF1;--mint3:#CFFDF5;--mint50:#E3FCF7;--teal4:#83EBD9;--teal7:#3EAD9E;--teal8:#007A6A;--lav:#C5C3EE;--lav1:#E8E9FC;--lav50:#F2F3FC;--lav6:#636294;--lav7:#444366;--red:#B42335;--disp:'PolySans Neutral','Inter',system-ui,sans-serif;
width:2960px;min-height:2700px;background:#2A2B2C;padding:48px;font-family:'Inter',system-ui,sans-serif;color:var(--fg);font-size:14px;line-height:1.45;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:48px 40px;align-items:start}
:where([data-page="modals"]) .cap{color:#E0E2E5;font-size:13px;display:flex;justify-content:space-between;gap:12px}
:where([data-page="modals"]) .cap b{font-family:var(--disp);font-weight:400;font-size:20px;color:#fff}
:where([data-page="modals"]) .cap span{color:var(--fg-subtle);text-align:right}
:where([data-page="modals"]) .mh h2{margin:0;font-family:var(--disp);font-weight:400;font-size:24px;line-height:1.15}
:where([data-page="modals"]) .x{width:32px;height:32px;border-radius:8px;border:1px solid var(--border);background:var(--surface);display:grid;place-items:center;flex:none;color:var(--fg-2)}
:where([data-page="modals"]) .btn.danger{border-color:transparent;background:transparent;color:var(--danger-text)}
.btn.dangerf{background:var(--red);border-color:var(--red);color:#fff}
:where([data-page="modals"]) textarea.inp{height:88px;padding:10px 12px;resize:none}
:where([data-page="modals"]) .sw small{display:block;color:var(--fg-muted);font-size:12.5px}
:where([data-page="modals"]) .switch::after{content:'';position:absolute;top:3px;left:19px;width:18px;height:18px;border-radius:50%;background:var(--surface)}
:where([data-page="modals"]) .switch.off{background:var(--surface-4)}
:where([data-page="modals"]) .switch.off::after{left:3px}
:where([data-page="modals"]) .chipx i{font-style:normal;width:24px;height:24px;display:grid;place-items:center;color:var(--fg-2)}
:where([data-page="modals"]) .chipx.auto{background:var(--surface-2);color:var(--fg-2);padding-right:12px}
:where([data-page="modals"]) .chipx.auto em{font-style:normal;font-size:11.5px;color:var(--fg-muted);font-weight:500}
:where([data-page="modals"]) .pills span{display:inline-flex;align-items:center;height:30px;padding:0 14px;border-radius:999px;font-size:13.5px;color:var(--fg-2)}
:where([data-page="modals"]) .pills span.on{background:var(--tint-mint-3);color:var(--fg);font-weight:500}
:where([data-page="modals"]) .cbr.sel{background:var(--tint-lav)}
:where([data-page="modals"]) .ck.on{background:var(--inverse-2);border-color:var(--border-ink2)}
:where([data-page="modals"]) .rd{width:18px;height:18px;border-radius:50%;border:1.5px solid var(--fg-subtle);flex:none}
:where([data-page="modals"]) .rd.on{border:6px solid var(--border-ink2)}
:where([data-page="modals"]) .tagc{display:inline-flex;align-items:center;gap:6px;height:22px;font-size:12px;color:var(--lav-text);background:var(--tint-lav);border-radius:6px;padding:0 8px;font-weight:500}
:where([data-page="modals"]) .opt.on{border-color:var(--border-ink2);box-shadow:inset 0 0 0 1px var(--ink2);background:var(--bg)}
:where([data-page="modals"]) .opt.dis{opacity:.45}
:where([data-page="modals"]) .mrow{display:flex;flex-wrap:wrap;gap:6px}
:where([data-page="modals"]) .mchip.on{border-color:var(--border-ink2);color:var(--fg);font-weight:500}
:where([data-page="modals"]) .cal .dw{font-size:11px;color:var(--fg-muted);height:22px;line-height:22px}
:where([data-page="modals"]) .cal .d{height:32px;line-height:28px;border-radius:6px;position:relative}
:where([data-page="modals"]) .cal .d::after{content:'';position:absolute;left:50%;bottom:3px;width:4px;height:4px;border-radius:50%;transform:translateX(-50%);background:#3EAD9E}
:where([data-page="modals"]) .cal .d.m::after{background:#E0475B}
:where([data-page="modals"]) .cal .d.in{background:var(--tint-mint);border-radius:0}
:where([data-page="modals"]) .cal .d.s{background:var(--inverse-2);color:#fff;border-radius:6px}
:where([data-page="modals"]) .cal .d.f{color:var(--border-c8)}
:where([data-page="modals"]) .cal .d.f::after{display:none}
:where([data-page="modals"]) .calt{font-family:var(--disp);font-size:15px;text-align:center;margin-bottom:6px}
:where([data-page="modals"]) .twoc{display:grid;grid-template-columns:1fr 1fr;gap:16px}
:where([data-page="modals"]) .prog span{display:block;height:100%;width:64%;background:linear-gradient(90deg,var(--teal7),var(--teal4));border-radius:999px}
:where([data-page="modals"]) .big{font-family:var(--disp);font-size:44px;line-height:1}
:where([data-page="modals"]) .kgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
:where([data-page="modals"]) .kc{border-radius:8px;box-shadow:inset 0 0 0 1px var(--border-2);padding:14px}
:where([data-page="modals"]) .kc small{color:var(--fg-muted);font-size:12.5px}
:where([data-page="modals"]) .kc .v{font-family:var(--disp);font-size:30px;line-height:1.1;margin-top:6px}
:where([data-page="modals"]) .kc .d{font-size:12.5px;font-weight:600;color:var(--accent-text)}
:where([data-page="modals"]) .kc .d.n{color:var(--danger-text)}
:where([data-page="modals"]) .thd{display:grid;grid-template-columns:1fr 96px 96px 72px;gap:8px;font-size:12px;font-weight:500;color:var(--fg-muted);text-transform:uppercase;letter-spacing:.05em;padding:0 14px 6px}
:where([data-page="modals"]) .tr{display:grid;grid-template-columns:1fr 96px 96px 72px;gap:8px;align-items:center;height:44px;padding:0 14px;border-top:1px solid var(--border-2);font-size:13.5px}
:where([data-page="modals"]) .up{color:var(--accent-text);font-weight:600}
:where([data-page="modals"]) .down{color:var(--danger-text);font-weight:600}
:where([data-page="modals"]) .pgb.on{background:var(--inverse-2);border-color:var(--border-ink2);color:#fff}
:where([data-page="modals"]) .note{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border-top:1px solid var(--border-2)}
:where([data-page="modals"]) .note:first-child{border-top:0}
:where([data-page="modals"]) .note i{width:10px;height:10px;border-radius:2px;background:#DC2626;margin-top:5px;flex:none}
:where([data-page="modals"]) .note time{font-weight:600;width:84px;flex:none;font-size:13px}
:where([data-page="modals"]) .note p{margin:0;flex:1;font-size:13.5px}
:where([data-page="modals"]) .ib{width:32px;height:32px;border-radius:8px;border:1px solid var(--border);display:grid;place-items:center;color:var(--fg-2);flex:none;background:var(--surface)}
:where([data-page="modals"]) .url{font-weight:600;word-break:break-all}
:where([data-page="modals"]) .stat{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
:where([data-page="modals"]) .stat div{border-radius:8px;background:var(--bg);box-shadow:inset 0 0 0 1px var(--border-2);padding:12px}
:where([data-page="modals"]) .stat b{display:block;font-family:var(--disp);font-weight:400;font-size:28px;line-height:1}
:where([data-page="modals"]) .stat span{font-size:12.5px;color:var(--fg-muted)}
:where([data-page="modals"]) .state{border-radius:8px;box-shadow:inset 0 0 0 1px var(--border-2);padding:16px;display:flex;flex-direction:column;gap:10px}
:where([data-page="modals"]) .state h3{margin:0;font-size:15px;font-weight:600;display:flex;align-items:center;gap:10px}
:where([data-page="modals"]) .state p{margin:0;font-size:13px;color:var(--fg-2)}
:where([data-page="modals"]) .radar svg{position:absolute;inset:0;width:100%;height:100%}
:where([data-page="modals"]) .rl{position:absolute;transform:translate(-50%,-50%);display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:500;background:var(--surface);padding:2px 8px 2px 2px;border-radius:999px;box-shadow:0 0 0 1px var(--border-2);white-space:nowrap}
:where([data-page="modals"]) .rl .ml{width:20px;height:20px}
:where([data-page="modals"]) .rl .ml img{width:12px;height:12px}
:where([data-page="modals"]) .mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px;background:var(--surface-2);border-radius:6px;padding:10px 12px;color:var(--fg-2);white-space:pre-line}
:where([data-page="admin"]) .tools{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(340px,100%),1fr));gap:var(--gap)}
:where([data-page="admin"]) .tool{display:flex;flex-direction:column;gap:16px;min-width:0}
:where([data-page="admin"]) .tool h3{margin:0;font-size:15px;font-weight:600}
:where([data-page="admin"]) .tool .grow{flex:1;display:flex;flex-direction:column;gap:12px}
:where([data-page="admin"]) .tg{display:inline-flex;align-items:center;height:22px;font-size:12px;border-radius:6px;padding:0 8px;background:var(--tint-lav);color:var(--lav-text);font-weight:500}
:where([data-page="admin"]) .fi{display:flex;flex-direction:column;gap:6px}
:where([data-page="admin"]) .fi label{font-size:12.5px;font-weight:600}
:where([data-page="admin"]) .fi input, :where([data-page="admin"]) .fi select, :where([data-page="admin"]) .sel{height:40px;border:1px solid var(--border);border-radius:8px;padding:0 12px;background:var(--surface);font-size:13.5px}
:where([data-page="admin"]) .two .fi{min-width:0}
:where([data-page="admin"]) .two .fi input, :where([data-page="admin"]) .two .fi select{width:100%;min-width:0;text-overflow:ellipsis}
:where([data-page="admin"]) .two [data-full="true"]{grid-column:1/-1}
:where([data-page="admin"]) .tchecks{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:13px;font-weight:400}
:where([data-page="admin"]) .tchecks label, :where([data-page="admin"]) .tcheck{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:400}
:where([data-page="admin"]) .tchecks input, :where([data-page="admin"]) .tcheck input{width:16px;height:16px;accent-color:#1D1E1F}
:where([data-page="admin"]) .sumrow strong{color:var(--fg)}
:where([data-page="admin"]) .prov{display:flex;gap:14px;font-size:12px;color:var(--fg-muted);margin-top:6px}
:where([data-page="admin"]) .prov strong{color:var(--fg)}
:where([data-page="admin"]) .last{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 12px;border-top:1px solid var(--border-2);padding-top:14px;font-size:12.5px;color:var(--fg-muted)}
:where([data-page="admin"]) .st{display:inline-flex;align-items:center;gap:6px;flex:1 1 150px;min-width:0}
:where([data-page="admin"]) .st i{flex:none;width:8px;height:8px;border-radius:50%;display:inline-block}
:where([data-page="admin"]) .last .btn{flex:none;white-space:nowrap}
:where([data-page="admin"]) .kpi>small{font-size:13px;color:var(--fg-muted)}
:where([data-page="admin"]) .kpi.feat>small{color:var(--fg-subtle)}
:where([data-page="admin"]) .kpi>b{font-family:var(--disp);font-weight:400;font-size:40px;line-height:1}
:where([data-page="admin"]) .kpi.feat>b{color:var(--teal4)}
:where([data-page="admin"]) .bars{display:flex;align-items:flex-end;gap:6px;height:200px;padding-top:8px}
:where([data-page="admin"]) .bars div{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:6px;height:100%;justify-content:flex-end}
:where([data-page="admin"]) .bars div>span{width:100%;border-radius:6px 6px 0 0;background:var(--teal7);transform-origin:bottom;animation:growy .8s var(--ease) both}
:where([data-page="admin"]) .bars div>span.f{background:repeating-linear-gradient(135deg,var(--teal4) 0 6px,var(--tint-mint-2) 6px 12px)}
:where([data-page="admin"]) .bars em{font-style:normal;font-size:11px;color:var(--fg-muted);white-space:nowrap;line-height:1;height:11px}
:where([data-page="admin"]) .bars div:nth-child(even) em{visibility:hidden}
:where([data-page="admin"]) .g-m{grid-template-columns:minmax(180px,1.4fr) repeat(6,minmax(90px,1fr));min-width:860px}
:where([data-page="admin"]) .g-b{grid-template-columns:20px 64px minmax(180px,1.4fr) minmax(140px,1fr) repeat(3,minmax(90px,.8fr));min-width:880px}
:where([data-page="admin"]) .r{text-align:center;justify-self:center}
:where([data-page="admin"]) .two2{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(380px,100%),1fr));gap:var(--gap)}
:where([data-page="admin"]) .g-a{grid-template-columns:minmax(140px,1.4fr) repeat(3,minmax(70px,1fr));min-width:420px}
:where([data-page="admin"]) .g-e{grid-template-columns:minmax(140px,1.4fr) minmax(150px,1.2fr) 80px;min-width:420px}
:where([data-page="admin"]) .histbtn{border:0;background:none;padding:0;font:inherit;font-weight:600;color:var(--lav-text);text-decoration:underline;text-decoration-color:var(--lav);text-underline-offset:4px;text-decoration-thickness:2px;cursor:pointer}
:where([data-page="admin"]) .thead>*, :where([data-page="admin"]) .trow>*{min-width:0}
:where([data-page="admin"]) .sel[disabled]{opacity:.5;cursor:not-allowed;background:var(--surface-2)}
:where([data-page="admin"]) .danger{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;background:var(--tint-red);border-radius:8px;padding:12px 16px;color:var(--danger-text-2);animation:fade .25s var(--ease) both}
:where([data-page="admin"]) .danger input{height:36px;border:1px solid #F3B8BF;border-radius:8px;padding:0 10px;width:120px;background:var(--surface)}
:where([data-page="admin"]) .miss{font-weight:600}
:where([data-page="admin"]) .miss[data-z="true"]{color:var(--fg-subtle);font-weight:400}
:where([data-page="admin"]) .miss[data-hi="true"]{color:var(--danger-text)}
@media (prefers-reduced-motion:reduce){
*{animation:none !important;transition:none !important}
*,*::before,*::after{animation:none !important;transition:none !important}
.draw{stroke-dashoffset:0}
.areafade{opacity:1}
}
@media (max-width:900px){
.left{padding:32px 16px}
.left h1{font-size:40px}
.side{flex:1 1 100%;width:auto;position:static;height:auto;overflow:visible}
:where([data-page="answer"]) .side{flex:1 1 100%;width:auto;position:static;height:auto;overflow:revert}
:where([data-page="admin"]) .side{flex:1 1 100%;width:auto;position:static;height:auto;overflow:revert}
:where([data-page="catalog"]) .side{flex:1 1 100%;width:auto;position:static;height:auto;overflow:visible}
:where([data-page="home"]) .side{flex:1 1 100%;width:auto;position:static;height:auto;overflow:visible}
.app{--pad-x:16px;--card:16px}
:where([data-page="admin"]) .app{--pad-x:16px;--card:16px}
:where([data-page="answer"]) .app{--pad-x:16px;--card:16px}
:where([data-page="catalog"]) .app{--pad-x:16px;--card:16px}
:where([data-page="home"]) .app{--pad-x:16px;--card:16px}
:where([data-page="login"]) .app{--pad-x:16px;--card:16px}
.hero h1{font-size:36px}
:where([data-page="answer"]) .hero h1{font-size:30px}
:where([data-page="admin"]) .hero h1{font-size:36px}
:where([data-page="catalog"]) .hero h1{font-size:36px}
:where([data-page="home"]) .hero h1{font-size:36px}
.tiles{grid-template-columns:1fr 1fr}
.cal{max-width:calc(100vw - 32px)}
:where([data-page="modals"]) .cal{max-width:calc(100vw - 32px)}
.exp,.setl,.ans{grid-template-columns:1fr}
.sum{position:static}
.mini{grid-template-columns:1fr}
.drawer-h,.drawer-b{padding-left:16px;padding-right:16px}
.chartwrap{grid-template-columns:36px minmax(0,1fr) 20px;column-gap:6px}
.ab{grid-template-columns:1fr}
.rail{border-left:0;border-top:1px solid var(--border-2)}
:where([data-page="answer"]) .rail{border-left:0;border-top:1px solid var(--border-2)}
}
@media (max-width:1180px){
.cal-pre{flex-direction:row;flex-wrap:wrap;border-right:0;border-bottom:1px solid var(--border-2);min-width:0;width:100%}
.cal-months{gap:16px}
.pnote{margin-left:0;align-items:flex-start;text-align:left;max-width:none}
.cmpcharts{grid-template-columns:1fr}
}
@media (max-width:1300px){
.filters{position:static}
}
@media (max-width:1000px){
.cmpc{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:1100px){
.radar{grid-template-columns:1fr}
:where([data-page="modals"]) .radar{grid-template-columns:1fr}
}
