@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-vietnamese-wght-normal-D0rl6rjA.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-latin-ext-wght-normal-D9tNdqV9.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-latin-wght-normal-BhU9QXUp.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #0a0b17;--bg-2: #0f1122;--panel: #14172c;--panel-2: #1a1e38;--panel-3: #222747;--line: rgba(148, 160, 255, .12);--line-2: rgba(148, 160, 255, .22);--text: #e8eaff;--muted: #9aa0c7;--dim: #6b7099;--violet: #8b6cff;--violet-2: #6d4dff;--cyan: #22d3ee;--lime: #a3e635;--green: #34d399;--amber: #fbbf24;--orange: #fb923c;--pink: #fb7185;--radius: 16px;--radius-sm: 10px;--shadow: 0 10px 30px -12px rgba(0, 0, 0, .6);--glow: 0 0 0 1px rgba(139, 108, 255, .35), 0 8px 30px -8px rgba(139, 108, 255, .45);--font: "Inter Variable", system-ui, sans-serif;--display: "Space Grotesk Variable", "Inter Variable", sans-serif;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font);font-size:14px;color:var(--text);background:radial-gradient(1200px 600px at 85% -10%,rgba(109,77,255,.18),transparent 60%),radial-gradient(900px 500px at -10% 110%,rgba(34,211,238,.1),transparent 60%),var(--bg);background-attachment:fixed;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit;color:inherit}a{color:var(--cyan);text-decoration:none}::selection{background:#8b6cff73}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--panel-3);border-radius:10px;border:2px solid var(--bg)}.num{font-variant-numeric:tabular-nums}.mono{font-family:ui-monospace,Cascadia Code,Consolas,monospace;font-size:12.5px}.muted{color:var(--muted)}.dim{color:var(--dim)}.up{color:var(--pink)}.down{color:var(--green)}.ok{color:var(--lime)}h1,h2,h3,h4{font-family:var(--display);margin:0;letter-spacing:-.01em}h1{font-size:28px;font-weight:700}h2{font-size:20px;font-weight:650}h3{font-size:16px;font-weight:600}.shell{display:grid;grid-template-columns:248px 1fr;min-height:100%}.sidebar{position:sticky;top:0;height:100vh;padding:20px 14px;display:flex;flex-direction:column;gap:6px;background:linear-gradient(180deg,#14172ce6,#0a0b17e6);border-right:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;padding:4px 10px 18px}.brand-logo{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,var(--violet),var(--cyan));box-shadow:var(--glow)}.brand b{font-family:var(--display);font-size:19px;letter-spacing:.02em}.brand small{display:block;color:var(--muted);font-size:11px;margin-top:-2px}.nav-section{color:var(--dim);font-size:11px;text-transform:uppercase;letter-spacing:.12em;padding:14px 12px 4px}.nav-link{display:flex;align-items:center;gap:11px;padding:9px 12px;border-radius:12px;color:var(--muted);transition:background .15s,color .15s,transform .15s;font-weight:500}.nav-link:hover{background:var(--panel-2);color:var(--text);transform:translate(2px)}.nav-link.active{background:linear-gradient(90deg,#8b6cff40,#8b6cff0d);color:var(--text);box-shadow:inset 2px 0 0 var(--violet)}.nav-link .badge{margin-left:auto}.sidebar-foot{margin-top:auto}.main{min-width:0;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:14px;padding:12px 28px;background:#0a0b17bf;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.content{padding:26px 28px 60px;max-width:1500px;width:100%}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:22px;flex-wrap:wrap}.page-head p{margin:6px 0 0;color:var(--muted)}.row{display:flex;align-items:center;gap:10px}.row.wrap{flex-wrap:wrap}.spacer{flex:1}.grid{display:grid;gap:16px}.g2{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:repeat(3,minmax(0,1fr))}.g4{grid-template-columns:repeat(4,minmax(0,1fr))}.g-main{grid-template-columns:minmax(0,2fr) minmax(320px,1fr)}@media(max-width:1100px){.g3,.g4,.g-main{grid-template-columns:1fr 1fr}}@media(max-width:800px){.shell{grid-template-columns:1fr}.sidebar{display:none}.g2,.g3,.g4,.g-main{grid-template-columns:1fr}}.card{background:linear-gradient(180deg,var(--panel),rgba(20,23,44,.85));border:1px solid var(--line);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow);position:relative}.card.flat{box-shadow:none}.card.hover{transition:transform .18s,border-color .18s,box-shadow .18s;cursor:pointer}.card.hover:hover{transform:translateY(-3px);border-color:var(--line-2);box-shadow:var(--glow)}.card-title{display:flex;align-items:center;gap:8px;margin-bottom:14px}.card-title h3{flex:1}.stat{display:flex;flex-direction:column;gap:4px}.stat .label{color:var(--muted);font-size:12px;display:flex;align-items:center;gap:6px}.stat .value{font-family:var(--display);font-size:26px;font-weight:700;font-variant-numeric:tabular-nums}.stat .sub{font-size:12px;color:var(--muted)}.icon-bubble{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;flex:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:36px;padding:0 14px;border-radius:11px;border:1px solid var(--line-2);background:var(--panel-2);cursor:pointer;font-weight:600;font-size:13px;transition:transform .1s,background .15s,box-shadow .15s,border-color .15s;white-space:nowrap}.btn:hover{background:var(--panel-3);border-color:#94a0ff59}.btn:active{transform:translateY(1px) scale(.98)}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.btn.primary{background:linear-gradient(135deg,var(--violet),var(--violet-2));border-color:transparent;box-shadow:0 6px 20px -6px #8b6cffb3}.btn.primary:hover{filter:brightness(1.1)}.btn.success{background:linear-gradient(135deg,#84cc16,#22c55e);border-color:transparent;color:#0b1a05;box-shadow:0 6px 20px -6px #84cc1699}.btn.danger{background:#fb71851f;border-color:#fb718566;color:var(--pink)}.btn.ghost{background:transparent;border-color:transparent}.btn.ghost:hover{background:var(--panel-2)}.btn.sm{height:30px;padding:0 10px;font-size:12px;border-radius:9px}.btn.icon{width:36px;padding:0}.btn.sm.icon{width:30px}.input,.select,textarea.input{height:36px;padding:0 12px;border-radius:11px;border:1px solid var(--line-2);background:var(--bg-2);outline:none;transition:border-color .15s,box-shadow .15s;min-width:0}textarea.input{height:auto;padding:10px 12px;resize:vertical}.input:focus,.select:focus{border-color:var(--violet);box-shadow:0 0 0 3px #8b6cff33}.input.sm,.select.sm{height:30px;font-size:12.5px;border-radius:9px;padding:0 9px}.input-icon{position:relative;display:flex;align-items:center}.input-icon svg{position:absolute;left:11px;color:var(--dim);pointer-events:none}.input-icon .input{padding-left:34px;width:100%}.field{display:flex;flex-direction:column;gap:6px}.field>span{font-size:12px;color:var(--muted);font-weight:500}.field .hint{font-size:11.5px;color:var(--dim)}.switch{position:relative;width:40px;height:22px;border-radius:22px;background:var(--panel-3);cursor:pointer;border:1px solid var(--line-2);transition:background .2s;flex:none}.switch:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:var(--muted);transition:transform .2s,background .2s}.switch.on{background:#a3e63540;border-color:#a3e63580}.switch.on:after{transform:translate(18px);background:var(--lime)}.seg{display:inline-flex;padding:3px;gap:2px;background:var(--bg-2);border:1px solid var(--line);border-radius:12px}.seg button{border:0;background:transparent;padding:6px 12px;border-radius:9px;cursor:pointer;color:var(--muted);font-weight:600;font-size:12.5px;display:inline-flex;gap:6px;align-items:center}.seg button.on{background:var(--panel-3);color:var(--text);box-shadow:0 2px 8px #0000004d}.badge{display:inline-flex;align-items:center;gap:5px;height:22px;padding:0 8px;border-radius:20px;font-size:11.5px;font-weight:600;background:var(--panel-3);color:var(--muted);white-space:nowrap}.badge.violet{background:#8b6cff2e;color:#c4b5ff}.badge.cyan{background:#22d3ee24;color:var(--cyan)}.badge.green{background:#34d39926;color:var(--green)}.badge.lime{background:#a3e63526;color:var(--lime)}.badge.amber{background:#fbbf2426;color:var(--amber)}.badge.pink{background:#fb718526;color:var(--pink)}.dot{width:8px;height:8px;border-radius:50%;display:inline-block;flex:none}.chip{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:20px;border:1px solid var(--line-2);background:var(--bg-2);cursor:pointer;font-size:12.5px;font-weight:500;color:var(--muted);transition:all .15s}.chip:hover{color:var(--text);border-color:#94a0ff66}.chip.on{background:#8b6cff33;border-color:var(--violet);color:var(--text)}.bar{height:8px;border-radius:8px;background:var(--bg-2);overflow:hidden;border:1px solid var(--line)}.bar>i{display:block;height:100%;border-radius:8px;background:linear-gradient(90deg,var(--violet),var(--cyan));position:relative;overflow:hidden;transition:width .8s cubic-bezier(.2,.8,.2,1)}.bar>i:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);transform:translate(-100%);animation:shimmer 2.4s infinite}.bar.hp>i{background:linear-gradient(90deg,var(--lime),var(--green))}.bar.warn>i{background:linear-gradient(90deg,var(--amber),var(--orange))}.bar.bad>i{background:linear-gradient(90deg,var(--pink),var(--orange))}.bar.lg{height:12px}@keyframes shimmer{to{transform:translate(100%)}}.player-chip{display:flex;align-items:center;gap:10px;padding:5px 12px 5px 5px;border-radius:30px;background:var(--panel);border:1px solid var(--line);cursor:pointer}.avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--violet),var(--cyan));color:#fff;flex:none;position:relative}.avatar.lg{width:64px;height:64px}.lvl{position:absolute;bottom:-4px;right:-6px;background:var(--lime);color:#0b1a05;font-size:10px;font-weight:800;border-radius:10px;padding:1px 5px;border:2px solid var(--bg);font-family:var(--display)}.table-wrap{overflow:auto;border-radius:var(--radius);border:1px solid var(--line);background:var(--panel)}table.t{width:100%;border-collapse:collapse;font-size:13px}.t th{position:sticky;top:0;z-index:1;text-align:left;font-weight:600;color:var(--muted);font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;padding:11px 12px;background:var(--panel-2);border-bottom:1px solid var(--line);white-space:nowrap}.t td{padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:middle}.t tr:last-child td{border-bottom:0}.t tbody tr{transition:background .12s}.t tbody tr:hover{background:#8b6cff0f}.t tbody tr.sel{background:#8b6cff1f}.t tbody tr.click{cursor:pointer}.t .r{text-align:right}.t .c{text-align:center}.t td.desc{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.t input[type=checkbox]{accent-color:var(--violet);width:15px;height:15px}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#05060f99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:50;animation:fade .15s}.modal{position:fixed;z-index:51;top:50%;left:50%;transform:translate(-50%,-50%);width:min(560px,calc(100vw - 32px));max-height:calc(100vh - 40px);overflow:auto;background:var(--panel);border:1px solid var(--line-2);border-radius:20px;padding:22px;box-shadow:0 30px 80px -20px #000c;animation:pop .2s cubic-bezier(.2,.9,.3,1.3)}.modal.wide{width:min(900px,calc(100vw - 32px))}.drawer{position:fixed;z-index:51;top:0;right:0;bottom:0;width:min(620px,100vw);overflow:auto;background:var(--bg-2);border-left:1px solid var(--line-2);box-shadow:-30px 0 80px -20px #000000b3;animation:slide .22s cubic-bezier(.2,.8,.2,1)}.drawer-head{position:sticky;top:0;z-index:2;padding:18px 22px;background:#0f1122eb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.drawer-body{padding:18px 22px 40px;display:flex;flex-direction:column;gap:14px}@keyframes fade{0%{opacity:0}}@keyframes pop{0%{opacity:0;transform:translate(-50%,-46%) scale(.96)}}@keyframes slide{0%{transform:translate(40px);opacity:0}}.recipe{display:flex;flex-direction:column;gap:0}.step{display:grid;grid-template-columns:34px 1fr auto;gap:12px;align-items:start;padding:12px 0;position:relative}.step:not(:last-child):before{content:"";position:absolute;left:16px;top:42px;bottom:-4px;width:2px;background:linear-gradient(var(--line-2),transparent)}.step-n{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;font-family:var(--display);font-weight:700;background:var(--panel-2);border:1px solid var(--line-2)}.step-v{font-family:var(--display);font-weight:700;font-size:16px;font-variant-numeric:tabular-nums;text-align:right}.step small{display:block;color:var(--muted);font-size:12px;margin-top:2px}.region-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.region{border-radius:14px;padding:12px;background:var(--panel);border:1px solid var(--line)}.region b{font-family:var(--display);font-size:18px;display:block;margin-top:4px;font-variant-numeric:tabular-nums}.toasts{position:fixed;right:20px;bottom:20px;z-index:80;display:flex;flex-direction:column;gap:10px;align-items:flex-end}.toast{display:flex;align-items:center;gap:10px;padding:11px 14px;border-radius:14px;background:var(--panel-2);border:1px solid var(--line-2);box-shadow:var(--shadow);animation:toastIn .3s cubic-bezier(.2,.9,.3,1.3);max-width:420px}.toast.error{border-color:#fb718580}.toast.xp{background:linear-gradient(135deg,#a3e63533,#22d3ee26);border-color:#a3e63580;font-family:var(--display);font-weight:700}@keyframes toastIn{0%{transform:translateY(20px) scale(.9);opacity:0}}.levelup{text-align:center;padding:10px 0}.levelup .big{font-family:var(--display);font-size:64px;font-weight:800;background:linear-gradient(135deg,var(--lime),var(--cyan));-webkit-background-clip:text;background-clip:text;color:transparent;line-height:1}.empty{padding:40px;text-align:center;color:var(--muted)}.skeleton{background:linear-gradient(90deg,var(--panel),var(--panel-2),var(--panel));background-size:200% 100%;animation:sk 1.2s infinite;border-radius:10px}@keyframes sk{to{background-position:-200% 0}}.mission{display:flex;align-items:center;gap:12px;padding:12px;border-radius:14px;background:var(--bg-2);border:1px solid var(--line);cursor:pointer;transition:all .15s}.mission:hover{border-color:var(--line-2);transform:translate(3px)}.mission .reward{margin-left:auto;font-family:var(--display);font-weight:700;color:var(--lime);font-size:12px;white-space:nowrap}.achv{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;padding:12px 6px;border-radius:14px;background:var(--bg-2);border:1px solid var(--line)}.achv .ic{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,#fbbf244d,#fb923c33);color:var(--amber)}.achv.locked{opacity:.38;filter:grayscale(1)}.achv b{font-size:12px}.achv span{font-size:10.5px;color:var(--muted)}.tree{list-style:none;margin:0;padding-left:18px;border-left:1px dashed var(--line-2)}.tree li{padding:4px 0}.tree-node{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:10px;background:var(--panel);border:1px solid var(--line);cursor:pointer}.tree-node:hover{border-color:var(--line-2)}.timeline{display:flex;flex-direction:column;gap:10px}.version-card{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:14px;border-radius:14px;background:var(--bg-2);border:1px solid var(--line)}.version-card.published{border-color:#a3e63573;background:linear-gradient(90deg,rgba(163,230,53,.08),var(--bg-2))}.version-card.draft{border-color:#8b6cff73}.v-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center}.bulkbar{position:sticky;bottom:16px;z-index:5;margin-top:12px;display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:16px;background:#222747f2;border:1px solid var(--violet);box-shadow:var(--glow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);flex-wrap:wrap}.login-wrap{min-height:100%;display:grid;grid-template-columns:1.1fr 1fr}.login-art{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;padding:48px;border-right:1px solid var(--line)}.login-art:before{content:"";position:absolute;top:-20%;right:-20%;bottom:-20%;left:-20%;background:conic-gradient(from 200deg at 60% 40%,#8b6cff59,#22d3ee33,#a3e63526,#8b6cff59);filter:blur(80px);animation:spin 22s linear infinite}.login-art>*{position:relative}@keyframes spin{to{transform:rotate(360deg)}}.login-form{display:grid;place-items:center;padding:32px}.login-form form{width:min(380px,100%);display:flex;flex-direction:column;gap:14px}@media(max-width:900px){.login-wrap{grid-template-columns:1fr}.login-art{display:none}}.pager{display:flex;align-items:center;gap:8px;justify-content:flex-end;padding:12px 2px;color:var(--muted)}.kbd{font-family:ui-monospace,monospace;font-size:11px;padding:1px 6px;border-radius:6px;background:var(--panel-3);border:1px solid var(--line-2)}.delta-pill{display:inline-flex;padding:2px 7px;border-radius:8px;font-size:11.5px;font-weight:700;font-variant-numeric:tabular-nums}.delta-pill.up{background:#fb718521}.delta-pill.down{background:#34d39921}.delta-pill.eq{background:var(--panel-3);color:var(--dim)}.ring{--p: 0;width:120px;height:120px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--lime) calc(var(--p) * 1%),var(--panel-3) 0);position:relative}.ring:before{content:"";position:absolute;top:10px;right:10px;bottom:10px;left:10px;border-radius:50%;background:var(--panel)}.ring>div{position:relative;text-align:center}.ring b{font-family:var(--display);font-size:28px;display:block}.sep{height:1px;background:var(--line);margin:6px 0}.spin{animation:spin 1s linear infinite}.shell{transition:grid-template-columns .22s cubic-bezier(.2,.8,.2,1)}.shell.mini{grid-template-columns:72px 1fr}.shell.mini .sidebar{padding:20px 10px;align-items:center}.shell.mini .label{display:none}.shell.mini .brand{padding:4px 0 18px}.shell.mini .nav-section{font-size:0;padding:8px 0 4px;width:32px;border-top:1px solid var(--line);margin-top:8px}.shell.mini .nav-link{justify-content:center;padding:10px;width:46px}.shell.mini .nav-link:hover{transform:none}.shell.mini .sidebar-foot .nav-link{width:46px!important;justify-content:center!important}.sidebar{overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:transparent transparent}.sidebar:hover{scrollbar-color:var(--panel-3) transparent}.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-thumb{background:transparent;border:0}.sidebar:hover::-webkit-scrollbar-thumb{background:var(--panel-3)}.sidebar>*{flex-shrink:0}.sidebar-foot{padding-top:12px}.content:has(>.arena){padding:12px 18px;max-width:none}.arena{display:flex;flex-direction:column;gap:10px;height:calc(100vh - 86px);min-height:480px}.arena-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.kpis{display:flex;gap:6px;flex-wrap:wrap;margin-left:8px}.kpi{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 10px;border-radius:9px;background:var(--panel);border:1px solid var(--line);font-size:12px;color:var(--muted);cursor:default}button.kpi{cursor:pointer}button.kpi:hover,.kpi.on{border-color:var(--violet);color:var(--text)}.kpi b{color:var(--text);font-family:var(--display);font-variant-numeric:tabular-nums}.seg.sm button{padding:4px 10px;font-size:12px}.grid-panel{flex:1;min-height:0;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--panel)}.grid-scroll{flex:1;min-height:0;border:0;border-radius:0}.grid-foot{display:flex;align-items:center;gap:8px;padding:8px 12px;border-top:1px solid var(--line);background:var(--panel-2);font-size:12.5px;flex-wrap:wrap}.t.dense td{padding:5px 10px;font-size:12.5px}.t.dense th{padding:8px 10px}.t th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.t th.sortable:hover{color:var(--text)}.t th.sorted{color:var(--violet)}.th-in{display:inline-flex;align-items:center;gap:4px}.t th.r .th-in{justify-content:flex-end;width:100%}.t tbody tr:nth-child(2n){background:#ffffff04}.t tbody tr.cur{background:#22d3ee1f;box-shadow:inset 3px 0 0 var(--cyan)}.t .stick-0,.t .stick-1{position:sticky;z-index:1;background:var(--panel)}.t th.stick-0,.t th.stick-1{z-index:3;background:var(--panel-2)}.t .stick-0{left:0}.t .stick-1{left:37px;box-shadow:1px 0 0 var(--line)}.t th.stick-0:not(.c){box-shadow:1px 0 0 var(--line)}.t td.stick-0,.t td.stick-1{background:inherit}.t tbody tr td.stick-0,.t tbody tr td.stick-1{background-color:var(--panel)}.t tbody tr.sel td.stick-0,.t tbody tr.sel td.stick-1{background-color:#1f2042}.t tbody tr.cur td.stick-0,.t tbody tr.cur td.stick-1{background-color:#12283a}.menu{position:absolute;right:0;top:36px;z-index:10;min-width:200px;padding:8px;border-radius:14px;background:var(--panel-2);border:1px solid var(--line-2);box-shadow:var(--shadow);display:flex;flex-direction:column;gap:2px}.menu-item{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:8px;cursor:pointer;font-size:13px}.menu-item:hover{background:var(--panel-3)}.menu-item input{accent-color:var(--violet)}.overlay.light{background:#05060f26;-webkit-backdrop-filter:none;backdrop-filter:none}.drawer.wide{width:min(1100px,100vw)}.insight{border-left:3px solid var(--sev)}.insight-metric{font-family:var(--display);font-size:30px;font-weight:800;font-variant-numeric:tabular-nums;line-height:1}.content:has(>.studio){padding:12px 18px;max-width:none}.studio{display:flex;flex-direction:column;gap:10px;height:calc(100vh - 86px);min-height:520px}.studio-body{flex:1;min-height:0;display:grid;grid-template-columns:150px 1fr 320px;gap:10px}.studio-pages,.studio-props{overflow:auto;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:10px}.studio-props{padding:14px}.studio-pages{display:flex;flex-direction:column;gap:8px}.page-thumb{padding:6px;border-radius:10px;border:1px solid var(--line);cursor:pointer;display:flex;flex-direction:column;gap:5px;background:var(--bg-2)}.page-thumb:hover{border-color:var(--line-2)}.page-thumb.on{border-color:var(--violet);box-shadow:0 0 0 2px #8b6cff59}.thumb{width:100%;height:auto;border-radius:4px;background:#fff;display:block}.thumb-wrap{background:var(--bg-2);border-radius:10px;padding:8px;display:grid;place-items:center}.studio-canvas{position:relative;overflow:auto;background:repeating-conic-gradient(#11132a,#11132a 25%,#0d0f22 0%,#0d0f22 50%) 0 0 / 22px 22px;border:1px solid var(--line);border-radius:var(--radius)}.canvas-wrap{padding:20px;min-height:100%}.sheet{position:relative;margin:0 auto;width:fit-content;box-shadow:0 20px 60px -10px #000000b3;background:#fff}.sheet canvas{display:block}.sheet.placing{cursor:crosshair}.box{position:absolute;line-height:1;white-space:nowrap;cursor:move;outline:1px dashed rgba(139,108,255,.55);outline-offset:1px;-webkit-user-select:none;user-select:none;touch-action:none;min-height:6px}.box:hover{outline-color:var(--violet);background:#8b6cff14}.box.on{outline:2px solid var(--violet);background:#8b6cff1f;z-index:2}.box.text{outline-color:#22d3ee8c}.box.warn{outline:1px dashed #e11d48;background:#e11d4814}.box-warn{color:#e11d48;font-style:italic;font-size:.85em}.box-handle{position:absolute;right:-5px;top:50%;width:9px;height:16px;margin-top:-8px;border-radius:4px;background:var(--violet);border:2px solid #fff;cursor:ew-resize}.tool-float{position:sticky;top:10px;z-index:5;display:flex;gap:4px;width:fit-content;margin:10px auto 0;padding:5px;border-radius:12px;background:#1a1e38f2;border:1px solid var(--line-2);box-shadow:var(--shadow)}.preview-chip{padding:10px 12px;border-radius:10px;background:#fff;color:#111;font-family:var(--display);font-weight:700;font-size:16px;text-align:center}.dropzone{display:flex;flex-direction:column;align-items:center;gap:6px;padding:26px;border:2px dashed var(--line-2);border-radius:14px;cursor:pointer;text-align:center}.dropzone:hover{border-color:var(--violet);background:#8b6cff0f}.dropzone input{display:none}@media(max-width:1100px){.studio-body{grid-template-columns:110px 1fr 270px}}.wordmark{display:block;width:auto;max-width:100%;align-self:flex-start;object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;filter:drop-shadow(0 4px 18px rgba(139,108,255,.35))}.brand small{margin-top:6px;letter-spacing:.04em}.brand-symbol{width:44px;height:auto;display:block;filter:drop-shadow(0 4px 14px rgba(139,108,255,.45));-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.mini-only{display:none!important}.shell.mini .mini-only{display:block!important}@keyframes pulse{50%{opacity:.45;transform:scale(.94)}}.pulse{animation:pulse 1.4s ease-in-out infinite}.content:has(>.arena) .help-strip{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:12px;background:#fbbf2414;border:1px solid rgba(251,191,36,.3);font-size:12.5px;line-height:1.55;color:var(--muted)}.help-strip b{color:var(--text)}.formula-kpi{gap:5px}.readj-strip{display:flex;gap:6px;flex-wrap:wrap}.readj-chip{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 6px 0 10px;border-radius:9px;background:#fbbf241a;border:1px solid rgba(251,191,36,.3);font-size:12px}.readj-chip b{color:var(--amber);font-family:var(--display)}.readj-chip button{border:0;background:transparent;color:var(--dim);cursor:pointer;display:grid;place-items:center;padding:2px;border-radius:6px}.readj-chip button:hover{color:var(--pink);background:#fb71851f}.t th.col-used{color:var(--lime)}.t td.col-used{background:#a3e6350f}.t td.col-used b{color:var(--lime);font-family:var(--display)}.cell-edit{display:inline-flex;align-items:center;gap:6px;border:1px dashed transparent;background:transparent;color:var(--text);font:inherit;font-variant-numeric:tabular-nums;padding:3px 6px;border-radius:7px;cursor:text}.cell-edit svg{opacity:0;color:var(--violet)}.cell-edit:hover{border-color:var(--violet);background:#8b6cff14}.cell-edit:hover svg{opacity:1}.link-btn{border:0;background:transparent;color:var(--cyan);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer;text-decoration:underline dotted;padding:0}.chart-wrap{position:relative;width:100%}.chart-wrap svg{display:block;overflow:visible}.chart-tip{position:absolute;z-index:5;width:200px;pointer-events:none;transform:translateY(-100%);margin-top:-6px;background:var(--panel-3);border:1px solid var(--line-2);border-radius:10px;padding:8px 10px;font-size:12px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:4px}.chart-tip .row{gap:6px}.legend{display:flex;flex-wrap:wrap;gap:14px;font-size:12px;color:var(--muted);margin-top:6px}.legend span{display:inline-flex;align-items:center;gap:6px}.legend i{width:10px;height:10px;border-radius:3px;display:inline-block}.hbars{display:flex;flex-direction:column;gap:2px}.hbar{display:grid;grid-template-columns:minmax(130px,1.7fr) minmax(60px,1.3fr) 76px 58px;gap:10px;align-items:center;border:0;background:transparent;padding:5px 6px;border-radius:8px;text-align:left;color:var(--text);font-size:12.5px}.hbar:not(:disabled){cursor:pointer}.hbar:not(:disabled):hover,.hbar.on{background:#94a0ff12}.hbar.on{box-shadow:inset 2px 0 0 var(--violet)}.hbar-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}.hbar-track{height:10px;background:#94a0ff12;border-radius:4px;overflow:hidden}.hbar-track i{display:block;height:100%;border-radius:0 4px 4px 0}.hbar-val{text-align:right;font-weight:600}.hbar-extra{text-align:right}.sales-filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:16px}.sales-filters .select,.sales-filters .input{height:34px;font-size:13px}.sales-filters .select{max-width:220px}.milestone{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid var(--line);border-radius:12px;cursor:pointer;background:var(--bg-2);text-align:left;color:var(--text);width:100%}.milestone:hover{border-color:var(--line-2)}.milestone.on{border-color:var(--violet);box-shadow:var(--glow)}.milestone.off{opacity:.55}.verdict{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border-radius:12px;background:var(--bg-2);border:1px solid var(--line);line-height:1.5}.kpi-compare{display:flex;flex-direction:column;gap:2px}.kpi-compare .label{font-size:12px;color:var(--muted)}.kpi-compare .value{font-family:var(--display);font-size:20px;font-weight:650}.kpi-compare .sub{font-size:12px;color:var(--dim)}.books-section{margin-top:16px;padding-top:14px;border-top:1px dashed var(--line-2)}.book-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px}.book-card{padding:12px;border-radius:14px;background:var(--bg-2);border:1px solid var(--line);transition:border-color .15s}.book-card:hover{border-color:#fb718573}.pdf-chip{display:inline-flex;align-items:center;gap:6px;margin-top:8px;padding:4px 10px;border-radius:20px;border:1px solid rgba(251,113,133,.35);background:#fb718514;color:#fda4af;font:inherit;font-size:12px;font-weight:600;cursor:pointer}.pdf-chip:hover,.pdf-chip.on{background:#fb718529}.pdf-list{margin-top:8px;display:flex;flex-direction:column;gap:6px}.pdf-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:6px 10px;border-radius:10px;background:var(--panel);border:1px solid var(--line);font-size:12.5px}.login-min{position:relative;min-height:100%;display:grid;place-items:center;overflow:hidden;padding:24px}.login-min:before{content:"";position:absolute;width:900px;height:900px;left:50%;top:50%;transform:translate(-50%,-50%);background:conic-gradient(from 200deg,#8b6cff47,#22d3ee24,#8b6cff0f,#8b6cff47);filter:blur(110px);border-radius:50%;animation:spin 30s linear infinite;pointer-events:none}.login-box{position:relative;width:min(340px,100%);display:flex;flex-direction:column;gap:12px}.login-symbol{width:84px;align-self:center;margin-bottom:4px;filter:drop-shadow(0 6px 24px rgba(139,108,255,.5));-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.login-wordmark{height:30px;align-self:center;margin-bottom:26px;filter:none;opacity:.92}.login-box .input{height:46px;padding:0 16px;border-radius:13px;background:#0f1122b3;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.login-box .btn{height:46px;border-radius:13px;margin-top:6px;font-size:14px}.login-err{font-size:12.5px;color:var(--pink);text-align:center}.home{display:flex;flex-direction:column;gap:30px;max-width:1200px}.home-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}.home-hero h1{font-size:32px}.home-hero p{margin:6px 0 0;font-size:15px}.home-current{display:flex;align-items:center;gap:10px;padding:8px 8px 8px 14px;border-radius:14px;background:var(--panel);border:1px solid var(--line);font-size:13px;flex-wrap:wrap}.home-section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.home-section-head h2{font-size:17px}.flow{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;counter-reset:none}.flow-step{position:relative;display:flex;flex-direction:column;gap:6px;padding:14px;border-radius:14px;background:var(--panel);border:1px solid var(--line);cursor:pointer;transition:border-color .15s,transform .15s;font-size:12.5px;line-height:1.45}.flow-step:hover{border-color:var(--line-2);transform:translateY(-2px)}.flow-step b{font-size:14px}.flow-n{position:absolute;top:12px;right:14px;font-family:var(--display);font-weight:700;color:var(--dim);font-size:13px}.flow.vertical{grid-template-columns:1fr}.flow.vertical .flow-step{flex-direction:row;align-items:center;gap:12px}.flow.vertical .flow-n{position:static;width:18px}@media(max-width:1100px){.flow{grid-template-columns:repeat(2,minmax(0,1fr))}}.shortcut-group{margin-bottom:14px}.shortcuts{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:8px}.shortcut{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:12px;border:1px solid var(--line);background:var(--bg-2);color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:border-color .15s,background .15s}.shortcut:hover{border-color:var(--line-2);background:var(--panel)}.shortcut svg:first-child{color:var(--violet);flex:none}.shortcut div{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.shortcut span{font-size:12px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.guide{display:grid;grid-template-columns:200px minmax(0,900px);gap:32px}.guide-toc{position:sticky;top:88px;align-self:start;display:flex;flex-direction:column;gap:2px}.guide-toc button{border:0;background:transparent;color:var(--muted);text-align:left;padding:7px 10px;border-radius:9px;font:inherit;font-size:13px;cursor:pointer}.guide-toc button:hover{background:var(--panel-2);color:var(--text)}.guide-body{display:flex;flex-direction:column;gap:36px;line-height:1.6}.guide-body section{scroll-margin-top:90px}.guide-body h2{font-size:20px;margin-bottom:10px}.guide-body p{margin:0 0 10px}.formula-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0 16px}.formula-steps>div{position:relative;display:flex;flex-direction:column;gap:3px;padding:14px 14px 14px 52px;border-radius:14px;background:var(--panel);border:1px solid var(--line)}.formula-steps span{font-family:var(--display);color:var(--cyan)}.formula-steps small{color:var(--dim);font-size:12px}.fs-n{position:absolute;left:14px;top:14px;width:26px;height:26px;border-radius:8px;display:grid;place-items:center;background:var(--panel-3);color:var(--text)!important;font-weight:700;font-size:13px}.example{max-width:560px}.lifecycle{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px}.lifecycle>div{display:flex;flex-direction:column;gap:2px;padding:12px 16px;border-radius:14px;background:var(--panel);border:1px solid var(--line);min-width:170px}.lifecycle span{font-size:12px;color:var(--muted)}.screen-card h3{font-size:15px}.screen-card p{color:var(--muted);font-size:13px;margin:8px 0}.screen-card ul{margin:0;padding-left:18px;font-size:13px;color:var(--muted);display:flex;flex-direction:column;gap:4px}.tip{margin-top:10px;font-size:12px;color:var(--amber);display:flex;gap:6px;align-items:flex-start}.glossary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0}.glossary div{padding:10px 12px;border-radius:12px;background:var(--panel);border:1px solid var(--line)}.glossary dt{font-weight:700;font-size:13px}.glossary dd{margin:2px 0 0;color:var(--muted);font-size:12.5px}@media(max-width:1000px){.guide{grid-template-columns:1fr}.guide-toc{display:none}.formula-steps,.glossary{grid-template-columns:1fr}}.similar{padding:12px;border-radius:14px;background:var(--bg-2);border:1px solid var(--line)}.similar-list{display:flex;flex-direction:column;gap:6px;max-height:330px;overflow:auto}.similar-item{display:flex;align-items:center;gap:12px;padding:9px 10px;border-radius:12px;border:1px solid var(--line);background:var(--panel);cursor:pointer;transition:border-color .15s,background .15s}.similar-item:hover{border-color:var(--line-2)}.similar-item.on{border-color:var(--violet);background:#8b6cff1a}.similar-score{flex:none;width:46px;text-align:center;font-family:var(--display);font-weight:700;font-size:13px;color:var(--violet)}.similar-desc{font-size:12.5px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.picked-acc{height:40px;padding:0 6px 0 12px;border-radius:11px;border:1px solid var(--line-2);background:var(--bg-2);font-size:13px}
