:root{--petrol:#0b3432;--petrol-2:#0e4440;--mint:#00d1a0;--navy:#101c2c;--gold:#f2c66d;--ice:#f5f7fa;--f-display:"Plus Jakarta Sans","Segoe UI",system-ui,sans-serif;--f-body:"Inter","Segoe UI",system-ui,-apple-system,sans-serif;--f-mono:"Inter","Segoe UI",system-ui,sans-serif;--r:16px;--r-sm:10px;--side:256px;--ease:cubic-bezier(.2,.8,.2,1);--bg:#f5f7fa;--bg-2:#edf1f5;--surface:#fff;--raise:#fff;--sunk:#f0f3f7;--line:#e3e8ef;--line-2:#cfd7e2;--ink:#101c2c;--ink-2:#3e4c5e;--muted:#6b7a8f;--vital:#00a27c;--vital-fill:#00d1a0;--on-vital:#06231f;--xp:#b07d1e;--xp-fill:#f2c66d;--on-xp:#2e2108;--alarm:#d6404e;--warn:#c27a0a;--cyan:#1e7fb8;--violet:#6e5bd8;--grad-vital:linear-gradient(135deg,#00d1a0,#00b38c);--grad-xp:linear-gradient(135deg,#f6d58e,#e8b24a);--grad-alarm:linear-gradient(135deg,#e5484d,#d6404e);--tint-vital:#00d1a01f;--tint-xp:#f2c66d38;--tint-alarm:#d6404e1a;--tint-cyan:#1e7fb81a;--tint-violet:#6e5bd81a;--shadow:0 1px 2px #101c2c0f,0 4px 16px -6px #101c2c1a;--shadow-lg:0 2px 4px #101c2c0f,0 18px 40px -18px #101c2c47;--card:#fff;--card-ink:#101c2c;--card-line:#e3e8ef;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--bg:#071318;--bg-2:#0a1a20;--surface:#0e1f26;--raise:#13282f;--sunk:#0a1a20;--line:#cee8e217;--line-2:#cee8e22b;--ink:#eaf3f1;--ink-2:#aec1be;--muted:#7a918e;--vital:#00d1a0;--vital-fill:#00d1a0;--on-vital:#04211b;--xp:#f2c66d;--xp-fill:#f2c66d;--on-xp:#2e2108;--alarm:#ff6b78;--warn:#f2b44c;--cyan:#5db8ea;--violet:#9d8cff;--tint-vital:#00d1a021;--tint-xp:#f2c66d24;--tint-alarm:#ff6b7821;--tint-cyan:#5db8ea21;--tint-violet:#9d8cff24;--shadow:0 1px 0 #ffffff08 inset,0 8px 24px -14px #000000b3;--shadow-lg:0 1px 0 #ffffff0a inset,0 24px 50px -22px #000000d9;--card:#f5f7fa;--card-ink:#101c2c;--card-line:#dce3eb;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html{background:var(--bg)}body{background:var(--bg);color:var(--ink);font:15px/1.55 var(--f-body);-webkit-font-smoothing:antialiased;margin:0;transition:background .25s,color .25s;overflow-x:hidden}button,input,select,textarea{font:inherit;color:inherit}h1,h2,h3{font-family:var(--f-display);letter-spacing:-.02em;text-wrap:balance;margin:0;line-height:1.15}p{margin:0}::selection{background:#00d1a047}:focus-visible{outline:2px solid var(--vital-fill);outline-offset:2px;border-radius:6px}.mono{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.muted{color:var(--muted)}.label{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:.7rem;font-weight:700}.note{color:var(--muted);font-size:.82rem}.icon{vertical-align:-.2em;flex:none;width:1.15em;height:1.15em}code{background:var(--sunk);border:1px solid var(--line);border-radius:6px;padding:1px 6px;font-size:.85em}.backdrop{display:none}.logo{cursor:pointer;color:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:11px;padding:0;display:flex}.logo-mark{flex:none;width:40px;height:40px}.logo-word{font-family:var(--f-display);letter-spacing:-.03em;font-size:1.32rem;font-weight:800;line-height:1}.logo-word em{color:var(--mint);font-style:normal}.logo small{letter-spacing:.16em;white-space:nowrap;color:#ffffff8c;text-transform:uppercase;margin-top:5px;font-size:.54rem;font-weight:700;display:block}.shell{grid-template-columns:var(--side) minmax(0,1fr);min-height:100vh;display:grid}.side{background:var(--petrol);color:#e6f2ef;flex-direction:column;gap:22px;height:100vh;padding:22px 14px 16px;display:flex;position:sticky;top:0;overflow-y:auto}:root[data-theme=dark] .side{border-right:1px solid var(--line);background:#082725}.side .logo{padding:2px 8px}.side .logo-word{color:#fff}.nav-group{flex-direction:column;gap:2px;display:flex}.nav-group>span{letter-spacing:.18em;text-transform:uppercase;color:#e6f2ef73;padding:0 12px 6px;font-size:.62rem;font-weight:700}.navlist{flex-direction:column;gap:18px;display:flex}.navlist button{color:#e6f2efc7;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:11px;align-items:center;gap:12px;width:100%;padding:10px 12px;font-weight:600;transition:background .15s,color .15s;display:flex;position:relative}.navlist button .icon{opacity:.8;width:20px;height:20px}.navlist button:hover{color:#fff;background:#ffffff0f}.navlist button[aria-current=page]{color:#fff;background:#00d1a029}.navlist button[aria-current=page] .icon{color:var(--mint);opacity:1}.navlist button[aria-current=page]:before{content:"";background:var(--mint);border-radius:0 3px 3px 0;width:3px;position:absolute;top:9px;bottom:9px;left:-14px}.count{background:var(--alarm);color:#fff;font-variant-numeric:tabular-nums;border-radius:999px;place-items:center;min-width:20px;height:20px;margin-left:auto;padding:0 6px;font-size:.68rem;font-weight:800;display:grid}.count.ok{background:var(--gold);color:var(--on-xp)}.side-foot{flex-direction:column;gap:10px;margin-top:auto;display:flex}.mini-level{background:#ffffff0f;border-radius:14px;flex-direction:column;gap:8px;padding:12px;display:flex}.mini-level .row{align-items:center;gap:10px;display:flex}.mini-level .lv{background:var(--gold);width:38px;height:38px;color:var(--on-xp);font-variant-numeric:tabular-nums;border-radius:11px;place-items:center;font-weight:800;display:grid}.mini-level b{color:#fff;font-size:.9rem;display:block}.mini-level small{color:#e6f2ef99;font-size:.75rem}.mini-level .note{color:#e6f2ef8c}.mini-level .bar{background:#ffffff1a}.side .btn.ghost{color:#e6f2efd9}.side .btn.ghost:hover{color:#fff;background:#ffffff0f}.side .btn.ghost .note{color:#e6f2ef8c}.main{flex-direction:column;min-width:0;display:flex}.topbar{z-index:20;background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);align-items:center;gap:8px;padding:12px 28px;display:flex;position:sticky;top:0}.topbar .title{min-width:0;margin-right:auto}.topbar .title h1{white-space:nowrap;text-overflow:ellipsis;font-size:1.1rem;font-weight:700;overflow:hidden}.topbar .m-brand{display:none}.content{width:100%;max-width:1220px;margin:0 auto;padding:26px 28px 80px}.chip{background:var(--surface);border:1px solid var(--line);white-space:nowrap;height:36px;color:var(--ink);font-variant-numeric:tabular-nums;border-radius:999px;align-items:center;gap:7px;padding:0 12px;font-size:.85rem;font-weight:600;display:inline-flex}button.chip{cursor:pointer;transition:border-color .15s,background .15s}button.chip:hover{border-color:var(--line-2)}.chip.xp{background:var(--tint-xp);border-color:#0000}.chip.xp .lvl{color:var(--xp);font-weight:800}.chip.streak .icon{color:#f08a3c}.chip.streak.cold .icon{color:var(--muted)}.chip.streak.risk{border-color:var(--warn)}.chip .shield{color:var(--cyan);align-items:center;gap:2px;font-size:.78rem;display:inline-flex}.chip.pomo.focus{background:var(--vital-fill);color:var(--on-vital);border-color:#0000}.chip.pomo.break{border-color:var(--cyan);color:var(--cyan)}.tabbar{display:none}.subtabs{border-bottom:1px solid var(--line);scrollbar-width:none;gap:4px;margin:-6px 0 22px;display:flex;overflow-x:auto}.subtabs button{color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:7px;margin-bottom:-1px;padding:10px 14px;font-weight:700;display:flex}.subtabs button[aria-current=page]{color:var(--ink);border-bottom-color:var(--vital-fill)}.subtabs button:hover{color:var(--ink)}.btn{border:1px solid var(--line-2);background:var(--surface);height:42px;color:var(--ink);cursor:pointer;white-space:nowrap;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-weight:700;transition:transform .12s,background .15s,border-color .15s,box-shadow .15s,filter .15s;display:inline-flex}.btn:hover{border-color:var(--muted)}.btn:active{transform:translateY(1px)}.btn[disabled]{opacity:.45;cursor:not-allowed;transform:none}.btn.sm{border-radius:10px;height:34px;padding:0 12px;font-size:.85rem}.btn.lg{border-radius:14px;height:52px;padding:0 24px;font-size:1.02rem}.btn.ghost{color:var(--ink-2);background:0 0;border-color:#0000}.btn.ghost:hover{background:var(--sunk);color:var(--ink)}.btn.primary{background:var(--vital-fill);color:var(--on-vital);border-color:#0000;box-shadow:0 6px 18px -8px #00d1a0b3}.btn.primary:hover{filter:brightness(1.05)}.btn.xp{background:var(--xp-fill);color:var(--on-xp);border-color:#0000;box-shadow:0 6px 18px -8px #f2c66dcc}.btn.danger{color:var(--alarm)}.btn.danger-solid{background:var(--alarm);color:#fff;border-color:#0000}.btn.danger-solid[disabled]{background:var(--tint-alarm);color:var(--alarm)}.btn.pulse{animation:2.6s ease-in-out infinite cta}@keyframes cta{0%,to{box-shadow:0 0 #00d1a059}50%{box-shadow:0 0 0 8px #00d1a000}}.iconbtn{border-radius:11px;width:38px;height:38px;padding:0}.btn.sm.iconbtn{width:32px;height:32px}.glass{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);position:relative}.panel{flex-direction:column;gap:14px;padding:18px;display:flex}.panel-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.panel-head h2,.sec{align-items:center;gap:8px;font-size:1rem;font-weight:700;display:flex}.panel-head h2 .icon,.sec .icon{color:var(--vital)}.lift{transition:transform .18s var(--ease),box-shadow .18s,border-color .18s}.lift:hover{box-shadow:var(--shadow-lg);border-color:var(--line-2);transform:translateY(-2px)}.page{flex-direction:column;gap:22px;min-width:0;display:flex}.dash{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:22px;display:grid}.col{flex-direction:column;gap:22px;min-width:0;display:flex}.grid2{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:20px;display:grid}.grid3{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.grid4{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.row-gap{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.between{justify-content:space-between}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.page-head h1{font-size:clamp(1.55rem,2.8vw,2.1rem);font-weight:800}.page-head p{color:var(--ink-2);max-width:62ch;margin-top:6px}.grad-text{color:var(--vital)}.grad-text.xp{color:var(--xp)}.reveal>*{animation:rise .35s var(--ease) both;animation-delay:calc(var(--i,0) * 40ms)}@keyframes rise{0%{opacity:0;transform:translateY(8px)}}.hero{background:var(--petrol);color:#eaf3f1;border-color:#0000;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;padding:26px 28px;display:grid;overflow:hidden}:root[data-theme=dark] .hero{background:linear-gradient(135deg,#0b3432,#0a2a2e)}.hero h1{color:#fff;font-size:clamp(1.6rem,3.2vw,2.4rem);font-weight:800}.hero .grad-text{color:var(--mint)}.hero .grad-text.xp{color:var(--gold)}.hero .sub{color:#eaf3f1c7;max-width:54ch;margin-top:8px}.hero .label{color:#eaf3f199!important}.hero .readouts{flex-wrap:wrap;gap:30px;margin:22px 0;display:flex}.readout .v{font-variant-numeric:tabular-nums;font-size:2.3rem;font-weight:800;line-height:1;font-family:var(--f-display);color:#fff;display:block}.readout .v.vital{color:var(--mint)}.readout .v.cyan{color:#8fd3f5}.readout .v.alarm{color:#ff8e98}.readout .v small{color:#eaf3f180!important}.readout .label{margin-top:6px;display:block}.hero .btn{color:#fff;background:#ffffff12;border-color:#ffffff2e}.hero .btn.primary{background:var(--mint);color:var(--on-vital);border-color:#0000}.hero .ring .track{stroke:#ffffff1f}.hero .ring .center small,.hero .note{color:#eaf3f199}.hero .ring+div b{color:#fff}.ecg{opacity:.22;pointer-events:none;height:56px;position:absolute;bottom:0;left:0;right:0}.ecg path{fill:none;stroke:var(--mint);stroke-width:1.6px;stroke-linejoin:round}.ring{flex:none;place-items:center;display:grid;position:relative}.ring svg{overflow:visible;transform:rotate(-90deg)}.ring .track{fill:none;stroke:var(--sunk)}.ring .bar{fill:none;stroke-linecap:round;transition:stroke-dashoffset .9s var(--ease)}.ring .center{text-align:center;flex-direction:column;justify-content:center;align-items:center;line-height:1.1;display:flex;position:absolute;inset:0}.ring .center .big{font-family:var(--f-display);font-variant-numeric:tabular-nums;font-size:2.3rem;font-weight:800}.ring .center small{color:var(--muted);font-size:.72rem;font-weight:600}.vital-tile{align-items:center;gap:14px;min-width:0;padding:16px;display:flex}.vital-tile .txt{min-width:0}.vital-tile .v{font-family:var(--f-display);font-variant-numeric:tabular-nums;font-size:1.6rem;font-weight:800;line-height:1.1}.vital-tile .d{color:var(--muted);font-size:.78rem}.vt-icon{border-radius:12px;flex:none;place-items:center;width:44px;height:44px;display:grid}.vt-icon .icon{width:22px;height:22px}.vt-icon.vital{background:var(--tint-vital);color:var(--vital)}.vt-icon.xp{background:var(--tint-xp);color:var(--xp)}.vt-icon.cyan{background:var(--tint-cyan);color:var(--cyan)}.vt-icon.violet{background:var(--tint-violet);color:var(--violet)}.vt-icon.alarm{background:var(--tint-alarm);color:var(--alarm)}.vt-icon.flame .icon{color:#f08a3c}.bar{background:var(--sunk);border-radius:99px;height:8px;position:relative;overflow:hidden}:root[data-theme=dark] .bar{background:#ffffff12}.bar i{background:var(--vital-fill);height:100%;transition:width .7s var(--ease);border-radius:99px;display:block}.bar.xp i{background:var(--xp-fill)}.bar.violet i{background:var(--violet)}.bar.thin{height:5px}.split{color:var(--ink-2);justify-content:space-between;align-items:baseline;gap:8px;font-size:.85rem;display:flex}.missions{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.mission{background:var(--sunk);border:1px solid var(--line);border-radius:13px;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:4px 12px;padding:12px;display:grid}.mission .mi{background:var(--tint-violet);width:40px;height:40px;color:var(--violet);border-radius:11px;grid-row:span 2;place-items:center;display:grid}.mission .txt{font-size:.9rem;font-weight:600}.mission .sub{color:var(--muted);grid-column:2/4;align-items:center;gap:10px;font-size:.78rem;display:flex}.mission .sub .bar{flex:1}.mission .reward{color:var(--xp);font-variant-numeric:tabular-nums;font-size:.8rem;font-weight:700}.mission.ready{border-color:var(--xp-fill);background:var(--tint-xp)}.mission.ready .mi{background:var(--xp-fill);color:var(--on-xp)}.mission.claimed{opacity:.6}.mission.claimed .mi{background:var(--tint-vital);color:var(--vital)}.mission.claimed .txt{text-decoration:line-through}.rank{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.rank li{border-radius:11px;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 10px;font-size:.9rem;display:grid}.rank li .pos{background:var(--sunk);width:26px;height:26px;color:var(--ink-2);font-variant-numeric:tabular-nums;border-radius:8px;place-items:center;font-size:.78rem;font-weight:800;display:grid}.rank li:first-child .pos{background:var(--gold);color:var(--on-xp)}.rank li:nth-child(2) .pos{color:#2a3646;background:#d5dee8}.rank li:nth-child(3) .pos{color:#3a1e0b;background:#e8b48c}.rank li .who{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.rank li .who small{color:var(--muted);font-weight:500}.rank li .who small .icon{color:#f08a3c;width:.95em;height:.95em}.rank li .pts{color:var(--ink-2);font-variant-numeric:tabular-nums;font-size:.85rem;font-weight:700}.rank li.me{background:var(--tint-vital)}.rank li.me .pts{color:var(--vital)}.seg{background:var(--sunk);border:1px solid var(--line);border-radius:12px;flex-wrap:wrap;gap:3px;padding:4px;display:inline-flex}.seg button{color:var(--muted);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;border-radius:9px;max-width:160px;padding:6px 12px;font-size:.82rem;font-weight:700;overflow:hidden}.seg button[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow)}.decks{grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:16px;display:grid}.deck{flex-direction:column;gap:14px;padding:18px;display:flex}.deck-top{align-items:flex-start;gap:14px;display:flex}.deck-emoji{background:var(--tint-vital);border-radius:14px;flex:none;place-items:center;width:50px;height:50px;font-size:1.5rem;display:grid}.deck h3{letter-spacing:-.01em;font-size:1rem;font-weight:700}.pills{flex-wrap:wrap;gap:6px;display:flex}.pill{background:var(--sunk);height:24px;color:var(--ink-2);white-space:nowrap;font-variant-numeric:tabular-nums;border-radius:999px;align-items:center;gap:5px;padding:0 9px;font-size:.74rem;font-weight:700;display:inline-flex}.pill.alarm{background:var(--tint-alarm);color:var(--alarm)}.pill.vital{background:var(--tint-vital);color:var(--vital)}.pill.xp{background:var(--tint-xp);color:var(--xp)}.pill.cyan{background:var(--tint-cyan);color:var(--cyan)}.pill.violet{background:var(--tint-violet);color:var(--violet)}.deck-foot{flex-wrap:wrap;align-items:center;gap:6px 8px;margin-top:auto;display:flex}.form{flex-direction:column;gap:14px;padding:20px;display:flex}.fields{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;display:grid}.field{color:var(--ink-2);flex-direction:column;gap:6px;min-width:0;font-size:.8rem;font-weight:600;display:flex}input[type=text],input[type=email],input[type=password],input[type=number],input[type=date],select,textarea{border:1px solid var(--line-2);background:var(--surface);width:100%;height:44px;color:var(--ink);border-radius:11px;padding:0 13px;font-size:.95rem;transition:border-color .15s,box-shadow .15s}textarea{resize:vertical;height:auto;min-height:88px;padding:11px 13px;line-height:1.45}input:focus,select:focus,textarea:focus{border-color:var(--vital-fill);outline:none;box-shadow:0 0 0 4px #00d1a026}input::placeholder,textarea::placeholder{color:var(--muted);opacity:.8}.chips{flex-wrap:wrap;gap:7px;display:flex}.chips button,.chips .add{border:1px solid var(--line-2);background:var(--surface);cursor:pointer;height:34px;color:var(--ink-2);border-radius:999px;align-items:center;gap:6px;padding:0 13px;font-size:.84rem;font-weight:600;transition:all .15s;display:inline-flex}.chips button:hover{border-color:var(--muted);color:var(--ink)}.chips button[aria-pressed=true]{background:var(--petrol);border-color:var(--petrol);color:#fff}:root[data-theme=dark] .chips button[aria-pressed=true]{background:var(--mint);border-color:var(--mint);color:var(--on-vital)}.chips button.custom{border-style:dashed}.chips button.custom[aria-pressed=true]{border-style:solid}.chips .x{opacity:.65;border-radius:50%;place-items:center;width:18px;height:18px;margin-right:-6px;font-size:.8rem;display:grid}.chips .x:hover{opacity:1;background:#00000026}.chips .add{color:var(--vital);border-style:dashed;border-color:var(--vital)}.chips .restore{border:1px dashed var(--xp);height:34px;color:var(--xp);cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:6px;padding:0 13px;font-size:.84rem;font-weight:600;display:inline-flex}.chips .new{gap:6px;display:flex}.chips .new input{border-radius:999px;width:180px;height:34px}.stepper{border:1px solid var(--line-2);background:var(--surface);border-radius:11px;align-items:center;height:44px;display:flex;overflow:hidden}.stepper button{width:40px;height:100%;color:var(--ink-2);cursor:pointer;background:0 0;border:0;font-size:1.2rem}.stepper button:hover{background:var(--sunk);color:var(--ink)}.stepper input{text-align:center;-moz-appearance:textfield;font-variant-numeric:tabular-nums;height:100%;font-size:1.05rem;font-weight:700;box-shadow:none!important;background:0 0!important;border:0!important}.stepper input::-webkit-inner-spin-button{display:none}.input-prefix{border:1px solid var(--line-2);background:var(--surface);border-radius:11px;align-items:center;transition:border-color .15s,box-shadow .15s;display:flex}.input-prefix:focus-within{border-color:var(--vital-fill);box-shadow:0 0 0 4px #00d1a026}.input-prefix span{color:var(--vital);padding-left:13px;font-weight:700}.input-prefix input{padding-left:4px;box-shadow:none!important;background:0 0!important;border:0!important}.hint-line{color:var(--muted);font-size:.76rem;font-weight:500}.hint-line.good{color:var(--vital)}.hint-line.bad{color:var(--alarm)}.list{flex-direction:column;display:flex;overflow:hidden}.list>.item{border-top:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:4px 14px;padding:14px 18px;display:grid}.list>.item:first-child{border-top:0}.item .dot{border-radius:50%;width:10px;height:10px}.item .t{overflow-wrap:anywhere;font-weight:600}.item .m{color:var(--muted);flex-wrap:wrap;gap:10px;margin-top:2px;font-size:.8rem;display:flex}.item .r{text-align:right;font-variant-numeric:tabular-nums;font-weight:700}.item .r small{color:var(--muted);font-size:.72rem;font-weight:600;display:block}.acc-bar{width:90px}.good{color:var(--vital)}.mid{color:var(--warn)}.bad{color:var(--alarm)}.empty{text-align:center;color:var(--muted);flex-direction:column;align-items:center;gap:10px;padding:28px;display:flex}.empty .icon{width:34px;height:34px;color:var(--line-2)}.people{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.people li{border-radius:12px;align-items:center;gap:12px;padding:9px 10px;display:flex}.people li:hover{background:var(--sunk)}.people li.hl{background:var(--tint-xp)}.pp{flex-direction:column;flex:1;min-width:0;line-height:1.25;display:flex}.pp b{text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.pp small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.pp small .icon{color:#f08a3c;width:.95em;height:.95em}.avatar{color:#05121a;font-weight:800;font-family:var(--f-display);letter-spacing:-.02em;border-radius:50%;flex:none;place-items:center;display:inline-grid}.err-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px;display:grid}.err-card{perspective:1000px;cursor:pointer;text-align:left;background:0 0;border:0;min-height:168px;padding:0}.err-card .inner{width:100%;height:100%;min-height:168px;transition:transform .5s var(--ease);transform-style:preserve-3d;position:relative}.err-card.flip .inner{transform:rotateY(180deg)}.err-card .face{backface-visibility:hidden;color:var(--card-ink);background:var(--card);border:1px solid var(--card-line);border-top:4px solid var(--alarm);box-shadow:var(--shadow);border-radius:14px;flex-direction:column;gap:8px;padding:14px;display:flex;position:absolute;inset:0;overflow:hidden}.err-card .face.back{border-top-color:var(--vital-fill);transform:rotateY(180deg)}.err-card .q{-webkit-line-clamp:4;-webkit-box-orient:vertical;font-size:.92rem;font-weight:700;line-height:1.4;display:-webkit-box;overflow:hidden}.err-card .meta{flex-wrap:wrap;align-items:center;gap:6px;margin-top:auto;display:flex}.tagp{color:#4a5a6e;text-transform:uppercase;letter-spacing:.05em;background:#eaf0f5;border-radius:99px;align-items:center;height:22px;padding:0 9px;font-size:.68rem;font-weight:800;display:inline-flex}.tagp.red{color:#b42335;background:#fce4e6}.tagp.green{color:#047a5e;background:#d6f7ee}.study{flex-direction:column;gap:18px;width:100%;max-width:660px;margin:0 auto;display:flex}.study-top{align-items:center;gap:14px;display:flex}.study-top .prog{flex-direction:column;flex:1;gap:6px;display:flex}.combo{background:var(--surface);border:1px solid var(--line);height:36px;color:var(--muted);font-variant-numeric:tabular-nums;border-radius:999px;align-items:center;gap:6px;padding:0 12px;font-size:.9rem;font-weight:800;display:inline-flex}.combo.hot{color:var(--on-xp);background:var(--xp-fill);border-color:#0000}.combo.bump{animation:.3s bump}@keyframes bump{40%{transform:scale(1.18)}}.session-xp{color:var(--xp);font-weight:800}.stage{perspective:1400px;touch-action:pan-y;height:min(60vh,460px);min-height:340px;position:relative}.stage .glow-l,.stage .glow-r{opacity:0;pointer-events:none;border-radius:20px;width:80px;transition:opacity .12s;position:absolute;top:0;bottom:0}.stage .glow-l{background:linear-gradient(90deg,var(--tint-alarm),transparent);box-shadow:inset 3px 0 0 var(--alarm);left:-12px}.stage .glow-r{background:linear-gradient(270deg,var(--tint-vital),transparent);box-shadow:inset -3px 0 0 var(--vital-fill);right:-12px}.fc{cursor:grab;-webkit-user-select:none;user-select:none;will-change:transform;width:100%;max-width:560px;height:100%;margin:auto;position:absolute;inset:0}.fc.dragging{cursor:grabbing}.fc.behind{pointer-events:none;transition:transform .3s var(--ease),opacity .3s}.fc .flipper{width:100%;height:100%;transform-style:preserve-3d;transition:transform .55s cubic-bezier(.3,1.2,.4,1);position:relative}.fc.flipped .flipper{transform:rotateY(180deg)}.fc .face{backface-visibility:hidden;color:var(--card-ink);background:var(--card);border:1px solid var(--card-line);border-top:5px solid var(--petrol);box-shadow:var(--shadow-lg);border-radius:20px;flex-direction:column;gap:14px;padding:24px 28px 20px;display:flex;position:absolute;inset:0;overflow:hidden}:root[data-theme=dark] .fc .face{border-top-color:var(--mint)}.fc .face.back{border-top-color:var(--mint);background:var(--card);transform:rotateY(180deg)}.fc .face-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.fc .kind{letter-spacing:.16em;text-transform:uppercase;color:#6b7a8f;font-size:.7rem;font-weight:800}.fc .text{font-family:var(--f-display);white-space:pre-wrap;overflow-wrap:anywhere;letter-spacing:-.01em;flex:1;align-items:center;font-size:clamp(1.25rem,3.3vw,1.7rem);font-weight:700;line-height:1.32;display:flex;overflow:auto}.fc .face.back .text{font-family:var(--f-body);font-size:clamp(1.05rem,2.7vw,1.25rem);font-weight:500;line-height:1.55}.fc .hint{color:#6b7a8f;justify-content:center;align-items:center;gap:6px;font-size:.78rem;font-weight:700;display:flex}.stamp{z-index:3;font-family:var(--f-display);letter-spacing:.06em;opacity:0;pointer-events:none;color:#fff;border-radius:999px;padding:6px 14px;font-size:1.05rem;font-weight:800;position:absolute;top:70px}.stamp.no{background:var(--alarm);right:26px}.stamp.yes{background:#00a27c;left:26px}.fc.fly{transition:transform .38s cubic-bezier(.4,0,.6,1),opacity .38s}.fc.snap{transition:transform .35s cubic-bezier(.3,1.3,.5,1)}.study-actions{justify-content:center;align-items:center;gap:26px;display:flex}.big-act{cursor:pointer;color:var(--ink-2);background:0 0;border:0;flex-direction:column;align-items:center;gap:6px;font-size:.82rem;font-weight:700;display:flex}.big-act .circle{border-radius:50%;place-items:center;width:68px;height:68px;transition:transform .15s,background .15s;display:grid}.big-act .circle .icon{width:28px;height:28px}.big-act.no .circle{background:var(--tint-alarm);color:var(--alarm);box-shadow:inset 0 0 0 2px var(--alarm)}.big-act.yes .circle{background:var(--tint-vital);color:var(--vital);box-shadow:inset 0 0 0 2px var(--vital-fill)}.big-act:hover .circle{transform:scale(1.06)}.big-act small{color:var(--muted);font-variant-numeric:tabular-nums;font-weight:600}.big-act[disabled]{opacity:.3;cursor:not-allowed}.big-act[disabled] .circle{transform:none}.flip-btn .circle{background:var(--sunk);width:56px;height:56px;color:var(--ink-2);box-shadow:inset 0 0 0 2px var(--line-2)}.keys{color:var(--muted);justify-content:center;gap:14px;font-size:.75rem;display:flex}kbd{font-family:var(--f-body);background:var(--surface);border:1px solid var(--line-2);color:var(--ink-2);border-radius:6px;padding:2px 7px;font-size:.72rem}.flash{pointer-events:none;z-index:30;animation:.45s ease-out forwards flash;position:fixed;inset:0}.flash.no{box-shadow:inset 0 0 0 4px var(--alarm)}.flash.yes{box-shadow:inset 0 0 0 4px var(--vital-fill)}@keyframes flash{0%{opacity:.9}to{opacity:0}}.shake{animation:.35s shake}@keyframes shake{25%{transform:translate(-6px)}50%{transform:translate(5px)}75%{transform:translate(-3px)}}.float{pointer-events:none;font-family:var(--f-display);color:var(--xp);z-index:35;font-size:1.35rem;font-weight:800;animation:1s ease-out forwards floatup;position:fixed}.float.no{color:var(--alarm);font-size:.95rem}@keyframes floatup{0%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-70px)}}.particle{pointer-events:none;z-index:34;border-radius:2px;width:7px;height:7px;animation:.8s cubic-bezier(.1,.8,.3,1) forwards pop;position:fixed}@keyframes pop{to{transform:translate(var(--x),var(--y)) rotate(var(--r));opacity:0}}.summary{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:26px;padding:26px;display:grid}.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.stat{background:var(--sunk);border:1px solid var(--line);border-radius:13px;padding:14px}.stat .v{font-family:var(--f-display);font-variant-numeric:tabular-nums;font-size:1.6rem;font-weight:800;line-height:1.1}.focus-page{text-align:center;flex-direction:column;align-items:center;gap:22px;max-width:560px;margin:0 auto;display:flex}.focus-page .glass{width:100%;padding:28px 24px}.pomo-panel{flex-direction:column;align-items:center;gap:14px;display:flex}.pomo-clock{font-family:var(--f-display);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:2.4rem;font-weight:800;line-height:1}.pomo-mode{letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-top:6px;font-size:.7rem;font-weight:700}.pomo-panel .fields{width:100%}.focus-page .pomo-clock{font-size:3.6rem}.kpi{flex-direction:column;gap:4px;min-width:0;padding:18px;display:flex}.kpi .label{align-items:center;gap:6px;display:flex}.kpi .v{font-family:var(--f-display);font-variant-numeric:tabular-nums;font-size:1.9rem;font-weight:800;line-height:1.1}.kpi .d{color:var(--muted);font-size:.78rem}.chart{flex-direction:column;gap:10px;min-width:0;margin:0;padding:18px;display:flex}.chart h3{font-family:var(--f-display);font-size:1rem;font-weight:700}.chart .cap{color:var(--muted);font-size:.8rem}.chart svg{display:block;overflow:visible}.chart .axis{fill:var(--muted);font-size:11px;font-family:var(--f-body);font-variant-numeric:tabular-nums}.chart .gridl{stroke:var(--line);stroke-width:1px}.chart .val{fill:var(--ink);font-variant-numeric:tabular-nums;font-size:11px;font-weight:700}.chart .lbl{fill:var(--ink-2);font-size:12px;font-weight:600}.chart .line{fill:none;stroke:var(--vital-fill);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.chart .area{fill:var(--vital-fill);opacity:.1}.chart .dot{fill:var(--vital-fill);stroke:var(--surface);stroke-width:2px}.chart .cross{stroke:var(--line-2);stroke-width:1px}.mark{fill:var(--vital-fill)}.hit{fill:#0000}g.hov:hover .mark{filter:brightness(1.08)}.tip{pointer-events:none;background:var(--navy);color:#fff;white-space:nowrap;z-index:4;box-shadow:var(--shadow-lg);border-radius:8px;padding:6px 10px;font-size:.78rem;position:absolute;transform:translate(-50%,calc(-100% - 10px))}.tip b{color:var(--mint);font-variant-numeric:tabular-nums}.table-toggle{align-self:flex-start}table.data{border-collapse:collapse;width:100%;font-size:.82rem}table.data th,table.data td{text-align:left;border-top:1px solid var(--line);padding:6px 8px}table.data td.n{text-align:right;font-variant-numeric:tabular-nums}.heat{grid-template-rows:repeat(7,14px);grid-auto-columns:14px;grid-auto-flow:column;gap:4px;padding:2px;display:grid;overflow-x:auto}.heat i,.legend-scale i{background:var(--sunk);border-radius:4px;display:block}:root[data-theme=dark] .heat i,:root[data-theme=dark] .legend-scale i{background:#ffffff0f}.heat i[data-l="1"],.legend-scale i[data-l="1"]{background:#00d1a040!important}.heat i[data-l="2"],.legend-scale i[data-l="2"]{background:#00d1a073!important}.heat i[data-l="3"],.legend-scale i[data-l="3"]{background:#00d1a0b3!important}.heat i[data-l="4"],.legend-scale i[data-l="4"]{background:var(--mint)!important}.heat i.out{visibility:hidden}.legend-scale{color:var(--muted);align-items:center;gap:4px;font-size:.72rem;display:flex}.legend-scale i{width:12px;height:12px}.cal{grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;display:grid}.cal .wd{color:var(--muted);text-align:center;text-transform:uppercase;letter-spacing:.08em;font-size:.68rem;font-weight:700}.cal .day{aspect-ratio:1;background:var(--sunk);min-width:0;color:var(--ink-2);border-radius:10px;flex-direction:column;justify-content:space-between;padding:5px 7px;font-size:.75rem;display:flex}.cal .day.blank{background:0 0}.cal .day.past{opacity:.4}.cal .day.today{box-shadow:inset 0 0 0 2px var(--vital-fill)}.cal .day .n{font-variant-numeric:tabular-nums;align-self:flex-end;font-size:.8rem;font-weight:800}.cal .day[data-l="1"]{background:#00d1a024}.cal .day[data-l="2"]{background:#00d1a047}.cal .day[data-l="3"]{color:var(--ink);background:#00d1a080}.cal .day[data-l="4"]{background:var(--mint);color:var(--on-vital)}.cal-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.badges{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px;display:grid}.badge{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:18px 14px;display:flex}.badge .bt{font-family:var(--f-display);font-size:.92rem;font-weight:700;line-height:1.2}.badge .bd{color:var(--muted);font-size:.74rem;line-height:1.35}.badge .bp{width:100%;color:var(--muted);font-variant-numeric:tabular-nums;flex-direction:column;gap:4px;font-size:.7rem;display:flex}.badge:not(.on) .medal{filter:grayscale();opacity:.45}.badge:not(.on) .bt{color:var(--ink-2)}.badge.on.t3{border-color:var(--xp-fill)}.medal{filter:drop-shadow(0 4px 8px #00000040);flex:none;width:72px;height:72px}.medal .glyph{fill:none;stroke:#fff;stroke-width:2.6px;stroke-linecap:round;stroke-linejoin:round}.profile-card{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:22px;padding:24px;display:grid}.profile-card h1{font-size:1.7rem;font-weight:800}.profile-actions{flex-direction:column;gap:8px;display:flex}.theme-pick{background:var(--sunk);border:1px solid var(--line);border-radius:12px;gap:3px;padding:4px;display:inline-flex}.theme-pick button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:9px;align-items:center;gap:6px;padding:6px 10px;font-size:.8rem;font-weight:700;display:flex}.theme-pick button[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow)}dialog{border:1px solid var(--line);background:var(--surface);color:var(--ink);width:min(560px,100vw - 24px);box-shadow:var(--shadow-lg);border-radius:18px;padding:0}dialog[open]{animation:dlg .2s var(--ease)}@keyframes dlg{0%{opacity:0;transform:translateY(10px)}}dialog::backdrop{background:#0713188c}.dlg{flex-direction:column;gap:16px;max-height:86vh;padding:24px;display:flex;overflow:auto}.dlg h2{font-size:1.25rem}.dlg fieldset{border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:12px;margin:0;padding:14px 16px;display:flex}.dlg legend{color:var(--ink-2);padding:0 6px;font-size:.85rem;font-weight:700}.dlg label{color:var(--ink-2);flex-direction:column;gap:6px;font-size:.8rem;font-weight:600;display:flex}.dlg .acts{flex-wrap:wrap;gap:8px;display:flex}.msg{background:var(--sunk);border-radius:10px;padding:10px 12px;font-size:.85rem}.msg.err{color:var(--alarm);background:var(--tint-alarm)}.toasts{left:50%;bottom:calc(24px + env(safe-area-inset-bottom,0px));z-index:60;pointer-events:none;flex-direction:column;align-items:center;gap:8px;width:max-content;max-width:calc(100vw - 24px);display:flex;position:fixed;transform:translate(-50%)}.toast{background:var(--navy);color:#fff;box-shadow:var(--shadow-lg);animation:toast .25s var(--ease);border-radius:12px;align-items:center;gap:10px;padding:10px 16px;font-size:.9rem;font-weight:600;display:flex}.toast .ti{border-radius:7px;flex:none;place-items:center;width:24px;height:24px;display:grid}.toast.xp .ti{background:var(--gold);color:var(--on-xp)}.toast.info .ti{color:var(--mint);background:#00d1a033}.toast.err{background:#5a1620}.toast.err .ti{color:#fff;background:#ffffff26}@keyframes toast{0%{opacity:0;transform:translateY(10px)}}.celebrate{z-index:80;background:#071318b3;place-items:center;padding:16px;animation:.2s fade;display:grid;position:fixed;inset:0}.celebrate .box{text-align:center;background:var(--surface);border:1px solid var(--line);width:min(380px,100%);box-shadow:var(--shadow-lg);border-radius:22px;flex-direction:column;align-items:center;gap:12px;padding:32px 28px 24px;animation:.4s cubic-bezier(.2,1.4,.4,1) pop2;display:flex;position:relative}.celebrate .rays{pointer-events:none;background:radial-gradient(circle,#f2c66d59,#0000 65%);width:300px;height:300px;margin:-150px 0 0 -150px;position:absolute;top:78px;left:50%}.celebrate .kicker{letter-spacing:.2em;text-transform:uppercase;color:var(--xp);font-size:.72rem;font-weight:800;position:relative}.celebrate h2{font-size:1.6rem;font-weight:800;position:relative}.celebrate .lvl{width:104px;height:104px;font-family:var(--f-display);background:var(--gold);color:var(--on-xp);border-radius:28px;place-items:center;font-size:3.2rem;font-weight:800;display:grid;position:relative;box-shadow:0 12px 30px -10px #f2c66de6}.celebrate p{color:var(--ink-2);position:relative}.celebrate .medal{width:110px;height:110px;position:relative}.burst{pointer-events:none;border-radius:2px;width:8px;height:8px;animation:1.1s cubic-bezier(.1,.8,.3,1) forwards burst;position:absolute;top:80px;left:50%}@keyframes fade{0%{opacity:0}}@keyframes pop2{0%{opacity:0;transform:scale(.8)}}@keyframes burst{0%{transform:translate(0)}to{transform:translate(var(--x),var(--y)) rotate(300deg);opacity:0}}.callout{background:var(--tint-xp);border:1px solid color-mix(in srgb,var(--xp-fill) 60%,transparent);border-radius:14px;flex-wrap:wrap;align-items:center;gap:12px;padding:14px 16px;display:flex}.callout.alarm{background:var(--tint-alarm);border-color:color-mix(in srgb,var(--alarm) 40%,transparent)}.callout p{flex:1;min-width:200px}.callout .icon{width:22px;height:22px;color:var(--xp)}.callout.alarm .icon{color:var(--alarm)}.auth{grid-template-columns:minmax(0,1.1fr) minmax(360px,520px);min-height:100vh;display:grid}.auth-art{background:var(--petrol);color:#eaf3f1;flex-direction:column;justify-content:space-between;gap:40px;padding:44px 56px;display:flex;position:relative;overflow:hidden}.auth-art h1{color:#fff;max-width:15ch;font-size:clamp(2.1rem,3.8vw,3.3rem);font-weight:800}.auth-art h1 .grad-text{color:var(--mint)}.auth-art p{color:#eaf3f1c7;max-width:46ch;margin-top:16px;font-size:1.05rem}.auth-art .logo-word{color:#fff}.auth-points{flex-direction:column;gap:12px;margin:28px 0 0;padding:0;list-style:none;display:flex}.auth-points li{color:#eaf3f1d9;align-items:center;gap:12px;display:flex}.auth-points .icon{width:34px;height:34px;color:var(--mint);background:#00d1a029;border-radius:10px;padding:7px}.auth-quote{font-family:var(--f-display);color:#eaf3f1b3;max-width:30ch;font-size:1.15rem;font-style:italic;font-weight:600}.auth-quote b{color:var(--mint);font-weight:700}.auth-ecg{display:none}.auth-panel{background:var(--bg);place-items:center;padding:32px 24px;display:grid}.auth-card{flex-direction:column;gap:18px;width:100%;max-width:420px;padding:28px;display:flex}.auth-card h2{font-size:1.45rem;font-weight:800}.auth-form{flex-direction:column;gap:14px;display:flex}.auth-tabs{width:100%}.auth-tabs button{flex:1;max-width:none;padding:9px}.auth-loading{place-content:center;justify-items:center;gap:16px;min-height:100vh;display:grid}.pulse-mark{width:64px;height:64px;animation:1.6s ease-in-out infinite breathe}@keyframes breathe{50%{opacity:.5;transform:scale(.96)}}.auth-mobile-logo{display:none}.podium{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:10px;padding:10px 4px 0;display:grid}.podium:has(>:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}.pod{text-align:center;flex-direction:column;align-items:center;gap:6px;min-width:0;display:flex}.pod-name{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.88rem;overflow:hidden}.pod-xp{color:var(--ink-2);font-variant-numeric:tabular-nums;font-size:.8rem;font-weight:700}.pod-step{width:100%;font-family:var(--f-display);border-radius:12px 12px 4px 4px;place-items:start center;padding-top:8px;font-size:1.3rem;font-weight:800;display:grid}.pod.p1 .pod-step{background:var(--gold);height:88px;color:var(--on-xp)}.pod.p2 .pod-step{color:#2a3646;background:#d5dee8;height:62px}.pod.p3 .pod-step{color:#3a1e0b;background:#e8b48c;height:46px}.pod.me .pod-name{color:var(--vital)}.rooms{grid-template-columns:300px minmax(0,1fr);align-items:start;gap:18px;display:grid}.room-list{flex-direction:column;gap:10px;display:flex}.room-item{text-align:left;color:inherit;font:inherit;cursor:pointer;align-items:center;gap:12px;width:100%;padding:14px;display:flex}.room-item.on{border-color:var(--vital-fill);box-shadow:0 0 0 1px var(--vital-fill)}.room-badge{background:var(--petrol);width:42px;height:42px;color:var(--mint);border-radius:12px;flex:none;place-items:center;display:grid}.room-badge .icon{width:22px;height:22px}.invite-box{background:var(--sunk);border:1px dashed var(--line-2);border-radius:14px;flex-direction:column;gap:10px;padding:14px;display:flex}.invites{border-color:var(--xp-fill)}ul.usage{flex-direction:column;gap:2px;margin:6px 0 4px;padding-left:18px;display:flex}.choice{flex-direction:column;gap:8px;display:flex}.choice label{border:1px solid var(--line-2);cursor:pointer;border-radius:13px;align-items:flex-start;padding:12px 14px;flex-direction:row!important;gap:12px!important;display:flex!important}.choice label.on{border-color:var(--vital-fill);background:var(--tint-vital)}.choice label.danger.on{border-color:var(--alarm);background:var(--tint-alarm)}.choice input{accent-color:var(--vital-fill);width:auto;height:auto;margin-top:3px}.choice label.danger input{accent-color:var(--alarm)}.choice span{color:var(--ink);flex-direction:column;gap:2px;font-size:.9rem;display:flex}.choice small{color:var(--muted);font-size:.8rem;font-weight:500}.tour{z-index:90;position:fixed;inset:0}.tour-block{position:absolute;inset:0}.tour-spot{pointer-events:none;box-shadow:0 0 0 9999px #071318b8,0 0 0 2px var(--mint);transition:left .4s var(--ease),top .4s var(--ease),width .4s var(--ease),height .4s var(--ease);border-radius:14px;position:fixed}.tour-spot.none{box-shadow:0 0 0 9999px #071318c7}.tour-balloon{box-shadow:var(--shadow-lg);animation:balloon .25s var(--ease);transition:left .3s var(--ease),top .3s var(--ease);flex-direction:column;gap:10px;padding:18px 18px 14px;display:flex;position:fixed}@keyframes balloon{0%{opacity:0;transform:translateY(6px)}}.tour-balloon h2{font-size:1.12rem;font-weight:800}.tour-balloon p{color:var(--ink-2);font-size:.9rem;line-height:1.55}.tour-balloon p b{color:var(--ink)}.tour-top{justify-content:space-between;align-items:center;gap:8px;margin:-4px -6px -2px 0;display:flex}.tour-actions{justify-content:space-between;align-items:center;gap:8px;margin-top:2px;display:flex}.tour-arrow{background:var(--surface);border:1px solid var(--line);width:14px;height:14px;position:absolute;transform:rotate(45deg)}.side-bottom .tour-arrow{border-bottom:0;border-right:0;top:-8px}.side-top .tour-arrow{border-top:0;border-left:0;bottom:-8px}.side-right .tour-arrow{border-top:0;border-right:0;left:-8px}.side-left .tour-arrow{border-bottom:0;border-left:0;right:-8px}.swipe-demo{background:var(--sunk);border-radius:12px;justify-content:space-between;align-items:center;height:96px;padding:0 8px;display:flex;position:relative;overflow:hidden}.sd-l,.sd-r{letter-spacing:.06em;text-transform:uppercase;font-size:.72rem;font-weight:800}.sd-l{color:var(--alarm)}.sd-r{color:var(--vital)}.sd-card{width:96px;height:72px;color:var(--card-ink);background:var(--card);border:1px solid var(--card-line);border-top:3px solid var(--petrol);box-shadow:var(--shadow);border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:2px;margin-left:-48px;animation:4s cubic-bezier(.4,0,.2,1) infinite sdcard;display:flex;position:absolute;top:12px;left:50%}.sd-card b{font-family:var(--f-display);font-size:1.4rem;line-height:1}.sd-card span{color:#6b7a8f;font-size:.6rem;font-weight:700}@keyframes sdcard{0%,8%{opacity:1;transform:none}18%,24%{transform:rotateY(180deg)scaleX(-1)}40%{opacity:0;transform:translate(90px)rotate(12deg)}41%{opacity:0;transform:none}52%,58%{opacity:1;transform:none}68%,74%{transform:rotateY(180deg)scaleX(-1)}90%{opacity:0;transform:translate(-90px)rotate(-12deg)}91%,to{opacity:0;transform:none}}.card-rows{border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:6px;max-height:min(52vh,520px);margin:0;padding:6px;list-style:none;display:flex;overflow:auto}.card-rows li{border-radius:10px;align-items:flex-start;gap:12px;padding:10px;display:flex}.card-rows li:hover{background:var(--sunk)}.card-rows li.on{background:var(--tint-alarm)}.card-rows input[type=checkbox]{width:18px;height:18px;accent-color:var(--alarm);flex:none;margin-top:3px}.cr-text{cursor:pointer;flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.cr-text b{overflow-wrap:anywhere;font-weight:600;line-height:1.35}.cr-text span{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.84rem;line-height:1.4;display:-webkit-box;overflow:hidden}.confirm-list{border:1px solid var(--line);border-radius:14px;flex-direction:column;margin:0;display:flex;overflow:hidden}.confirm-list>div{border-top:1px solid var(--line);grid-template-columns:110px minmax(0,1fr);gap:12px;padding:12px 16px;display:grid}.confirm-list>div:first-child{border-top:0}.confirm-list dt{color:var(--muted);font-size:.82rem;font-weight:600}.confirm-list dd{overflow-wrap:anywhere;margin:0;font-weight:700}.list>.item{grid-template-columns:auto minmax(0,1fr) auto auto}.sugg-list{flex-direction:column;gap:10px;max-height:560px;margin:0;padding:0;list-style:none;display:flex;overflow:auto}.sugg-list li{background:var(--sunk);border:1px solid var(--line);border-radius:13px;flex-direction:column;gap:8px;padding:14px;display:flex}.sugg-msg{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.55}.sugg-reply{background:var(--tint-vital);border-left:3px solid var(--vital-fill);border-radius:10px;padding:10px 12px}.sugg-reply b{color:var(--vital);text-transform:uppercase;letter-spacing:.08em;font-size:.78rem}.sugg-reply p{white-space:pre-wrap;margin-top:4px}.sugg-admin{flex-direction:column;gap:14px;display:flex}.kpi-on{border-color:var(--vital-fill)!important;box-shadow:0 0 0 1px var(--vital-fill)!important}@media (width<=640px){.sugg-admin .fields{grid-template-columns:minmax(0,1fr)!important}}.admin-table{max-height:70vh;overflow:auto}.admin-table table{border-collapse:collapse;width:100%;min-width:1100px;font-size:.86rem}.admin-table th{z-index:1;background:var(--surface);text-align:left;border-bottom:1px solid var(--line-2);white-space:nowrap;padding:0;position:sticky;top:0}.admin-table thead th:first-child{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:12px;font-size:.7rem;font-weight:700}.admin-table th button{width:100%;text-align:inherit;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);cursor:pointer;background:0 0;border:0;padding:12px;font-size:.7rem;font-weight:700}.admin-table th button.on{color:var(--ink)}.admin-table th.n button{text-align:right}.admin-table td{border-bottom:1px solid var(--line);white-space:nowrap;font-variant-numeric:tabular-nums;padding:10px 12px}.admin-table td.n{text-align:right}.admin-table td small{font-size:.76rem}.admin-table td .icon{color:#f08a3c;width:.95em;height:.95em}.admin-table tbody tr{cursor:pointer}.admin-table tbody tr:hover td,.admin-table tbody tr.open td{background:var(--sunk)}.admin-table tr.detail td{cursor:default;background:var(--sunk);white-space:normal}.detail-grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px 18px;padding:4px 0 8px 42px;display:grid}.detail-grid span{flex-direction:column;font-weight:600;display:flex}.detail-grid small{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:.72rem;font-weight:600}@media (width<=1100px){.dash{grid-template-columns:minmax(0,1fr)}.grid4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=900px){.shell{grid-template-columns:minmax(0,1fr)}.side{display:none}.topbar{gap:6px;padding:10px 14px}.topbar .title{display:none}.topbar .m-brand{margin-right:auto;display:flex}.content{padding:16px 14px 108px}.tabbar{z-index:40;padding:6px 6px calc(6px + env(safe-area-inset-bottom,0px));background:var(--surface);border-top:1px solid var(--line);display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 24px -16px #0006}.tabbar button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:12px;flex-direction:column;flex:1;align-items:center;gap:3px;padding:7px 2px;font-size:.66rem;font-weight:700;display:flex;position:relative}.tabbar button .icon{width:22px;height:22px}.tabbar button[aria-current=page]{color:var(--vital)}.tabbar button[aria-current=page] .icon{background:var(--tint-vital);border-radius:10px;width:34px;height:28px;padding:3px}.tabbar .count{min-width:16px;height:16px;padding:0 4px;font-size:.6rem;position:absolute;top:0;right:calc(50% - 22px)}.grid2,.grid3{grid-template-columns:minmax(0,1fr)}.hero{grid-template-columns:minmax(0,1fr);padding:20px}.hero [data-tour=level]{justify-self:center}.summary{grid-template-columns:minmax(0,1fr);justify-items:center}.profile-card{grid-template-columns:auto minmax(0,1fr)}.profile-actions{flex-flow:wrap;grid-column:1/-1}.rooms{grid-template-columns:minmax(0,1fr)}.room-list{flex-direction:row;padding-bottom:4px;overflow-x:auto}.room-item{min-width:230px}.auth{grid-template-columns:minmax(0,1fr)}.auth-art{display:none}.auth-panel{align-items:start;padding:28px 16px 40px}.auth-mobile-logo{justify-content:center;margin-bottom:6px;display:flex}.auth-mobile-logo .logo-word{color:var(--ink)}}@media (width<=520px){.chip{height:32px;padding:0 9px;font-size:.8rem}.chip.xp .xpnum{display:none}.grid4{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.vital-tile{flex-direction:column;align-items:flex-start;gap:8px;padding:14px}.vt-icon{width:36px;height:36px}.vital-tile .v{font-size:1.3rem}.readout .v{font-size:1.9rem}.hero .readouts{gap:20px}.fc .face{padding:20px 20px 16px}.study-actions{gap:18px}.big-act .circle{width:62px;height:62px}.focus-page .pomo-clock{font-size:3rem}}button,a,label,select,summary{touch-action:manipulation}@media (hover:none){.keys{display:none}}@media (width<=900px){.hide-m{display:none!important}input,select,textarea{font-size:16px}.topbar{-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--bg)}.page{gap:16px}.page-head{align-items:stretch;gap:12px}.page-head>div>.label{display:none}.page-head p{margin-top:4px;font-size:.92rem}.page-head>.btn,.page-head>.row-gap{width:100%}.page-head>.btn{justify-content:center}.page-head>.row-gap>.btn{flex:1}.subtabs{margin:-6px -14px 14px;padding:0 10px}.subtabs button{gap:6px;padding:10px;font-size:.88rem}.toasts{bottom:calc(86px + env(safe-area-inset-bottom,0px))}.hero .readouts{gap:18px;margin:16px 0}.hero .row-gap>.btn.primary{flex:1}.dlg{padding:18px}dialog,.dlg{max-height:calc(100dvh - 24px)}}@media (width<=520px){.content{padding:12px 12px 100px}.subtabs{margin:-2px -12px 12px}.subtabs button .icon{display:none}.subtabs button{padding:10px 9px}.glass.panel,.panel,.form{padding:16px}.hero{padding:18px 16px}.hero h1{font-size:1.45rem}.hero .sub{font-size:.92rem}.hero>div>.label{display:none}.hero .readouts{grid-template-columns:repeat(3,auto);justify-content:space-between;gap:10px;margin:14px 0;display:grid}.hero .readout .v{font-size:1.6rem}.hero .readout .label{font-size:.58rem}.grid4.compact{gap:8px}.grid4.compact.c3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid4.compact .vital-tile{gap:2px;padding:12px}.grid4.compact .vital-tile>:not(.txt),.grid4.compact .vital-tile .d{display:none}.grid3.compact{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.compact .vital-tile{gap:2px;padding:10px 12px}.compact .vt-icon,.compact .vital-tile .d{display:none}.compact .vital-tile .label{letter-spacing:.04em;font-size:.58rem}.decks{grid-template-columns:minmax(0,1fr);gap:12px}.page-head h1{font-size:1.4rem}.kpi{padding:14px}.kpi .v{font-size:1.5rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
