:root{--bg:#1a1715;--bg-2:#15120f;--card:#241f1c;--card-2:#2c2622;--card-3:#362f2a;--line:#f4eee617;--line-2:#f4eee629;--ink:#f4eee6;--ink-2:#a89e93;--ink-3:#6e645c;--accent:#ff6a3d;--accent-2:#ff8a5c;--accent-ink:#1a1715;--accent-soft:#ff6a3d24;--accent-line:#ff6a3d66;--good:#6fbf8a;--good-soft:#6fbf8a24;--bad:#e5484d;--bad-soft:#e5484d24;--side:#141110;--side-ink:#f4eee6;--side-ink-2:#8f857a;--heat-0:#3a332e;--heat-1:#6b3a2a;--heat-2:#a8452b;--heat-3:#e0522f;--heat-4:#ff7a45;--body-fill:#2a2521;--body-line:#f4eee61f;--shadow:0 18px 40px #00000059;--r-sm:12px;--r-md:16px;--r-lg:22px;--font:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Inter, Roboto, Helvetica, Arial, sans-serif;--mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace;--top-h:60px;--side-w:236px;--rail-w:72px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--bg:#f5f1ec;--bg-2:#ede8e1;--card:#fff;--card-2:#f4efe9;--card-3:#ebe4dc;--line:#1a171517;--line-2:#1a171529;--ink:#1a1715;--ink-2:#6e645c;--ink-3:#a89e93;--accent:#e0522f;--accent-2:#ff6a3d;--accent-ink:#fff;--accent-soft:#e0522f1f;--accent-line:#e0522f66;--good:#2f8f5b;--good-soft:#2f8f5b1f;--bad:#c9373c;--bad-soft:#c9373c1f;--heat-0:#e6ded5;--heat-1:#f2b79d;--heat-2:#ee8a63;--heat-3:#e0522f;--heat-4:#c43a1a;--body-fill:#ebe4dc;--body-line:#1a171524;--shadow:0 18px 40px #1a17151f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:light){:root:not([data-theme=dark]){--bg:#f5f1ec;--bg-2:#ede8e1;--card:#fff;--card-2:#f4efe9;--card-3:#ebe4dc;--line:#1a171517;--line-2:#1a171529;--ink:#1a1715;--ink-2:#6e645c;--ink-3:#a89e93;--accent:#e0522f;--accent-2:#ff6a3d;--accent-ink:#fff;--accent-soft:#e0522f1f;--accent-line:#e0522f66;--good:#2f8f5b;--good-soft:#2f8f5b1f;--bad:#c9373c;--bad-soft:#c9373c1f;--heat-0:#e6ded5;--heat-1:#f2b79d;--heat-2:#ee8a63;--heat-3:#e0522f;--heat-4:#c43a1a;--body-fill:#ebe4dc;--body-line:#1a171524;--shadow:0 18px 40px #1a17151f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}}*{box-sizing:border-box}html,body{margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;min-height:100dvh;font-size:15px;line-height:1.45}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}input,select,textarea{font:inherit;color:inherit}svg{display:block}h1,h2,h3,h4,p{margin:0}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}.sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.muted{color:var(--ink-2)}.dim{color:var(--ink-3)}.small{font-size:13px}.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.num{font-variant-numeric:tabular-nums}.row{align-items:center;gap:10px;display:flex}.between{justify-content:space-between;align-items:center;gap:12px;display:flex}.wrap{flex-wrap:wrap}.grow{flex:1;min-width:0}.stack{gap:14px;display:grid}.ellipsis{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.shell{grid-template-columns:var(--side-w) 1fr;min-height:100dvh;transition:grid-template-columns .18s;display:grid}.shell.collapsed{grid-template-columns:var(--rail-w) 1fr}.side{background:var(--side);height:100dvh;color:var(--side-ink);border-right:1px solid #ffffff0f;flex-direction:column;gap:6px;padding:18px 14px;display:flex;position:sticky;top:0;overflow:hidden}.side .brand{color:var(--side-ink);align-items:center;gap:10px;padding:4px 6px 16px;display:flex}.side .brand .mark{background:var(--accent);border-radius:9px;flex:none;place-items:center;width:30px;height:30px;display:grid}.side .brand .mark img{width:20px;height:20px}.side .brand b{letter-spacing:-.01em;font-size:17px;font-weight:800}.side .brand .sub{color:var(--side-ink-2);margin-top:-2px;font-size:11px}.side nav{gap:2px;display:grid}.nav-a{color:var(--side-ink-2);border-radius:10px;align-items:center;gap:12px;padding:10px;font-size:14px;font-weight:600;transition:background .12s,color .12s;display:flex;position:relative}.nav-a:hover{color:var(--side-ink);background:#ffffff0d}.nav-a.on{color:#ffb597;background:#ff6a3d24}.nav-a.on svg{color:var(--accent)}.nav-a svg{flex:none;width:20px;height:20px}.nav-a .lbl{white-space:nowrap}.side .foot{gap:6px;margin-top:auto;display:grid}.side .collapse{color:var(--side-ink-2);border-radius:10px;align-items:center;gap:12px;width:100%;padding:10px;font-size:13px;font-weight:600;display:flex}.side .collapse:hover{color:var(--side-ink);background:#ffffff0d}.shell.collapsed .side{align-items:stretch;padding:18px 10px}.shell.collapsed .side .brand{justify-content:center;padding:4px 0 16px}.shell.collapsed .side .brand .txt{display:none}.shell.collapsed .nav-a{justify-content:center;padding:12px 0}.shell.collapsed .nav-a .lbl{background:var(--card-3);color:var(--ink);box-shadow:var(--shadow);opacity:0;pointer-events:none;z-index:30;border-radius:8px;padding:6px 10px;font-size:12px;transition:opacity .12s;position:absolute;top:50%;left:calc(100% + 10px);transform:translateY(-50%)}.shell.collapsed .nav-a:hover .lbl{opacity:1}.shell.collapsed .collapse{justify-content:center}.shell.collapsed .collapse .lbl{display:none}.pro-side{background:linear-gradient(160deg,#ff6a3d38,#ff6a3d0f);border:1px solid #ff6a3d47;border-radius:12px;margin:6px 0 0;padding:12px}.pro-side b{color:#ffcdb8;font-size:13px;display:block}.pro-side p{color:var(--side-ink-2);margin:2px 0 8px;font-size:12px}.shell.collapsed .pro-side{display:none}.main{flex-direction:column;min-width:0;display:flex}.top{z-index:20;height:var(--top-h);background:color-mix(in srgb, var(--bg) 86%, transparent);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:0 22px;display:flex;position:sticky;top:0}.top .title{letter-spacing:-.01em;font-size:16px;font-weight:700}.top .spacer{flex:1}.top .brand-m{display:none}.content{gap:18px;width:100%;max-width:1180px;margin:0 auto;padding:26px 22px 60px;display:grid}.content>*,.grid-ov>*,.grid-2>*,.grid-3>*,.grid-4>*,.stack>*{min-width:0}.icon-btn{width:36px;height:36px;color:var(--ink-2);border:1px solid var(--line);background:var(--card);border-radius:10px;place-items:center;display:grid}.icon-btn:hover{color:var(--ink);border-color:var(--line-2)}.icon-btn svg{width:18px;height:18px}.avatar{background:var(--card-3);width:34px;height:34px;color:var(--ink);border:1px solid var(--line);border-radius:50%;place-items:center;font-size:13px;font-weight:700;display:grid}.avatar.lg{width:56px;height:56px;font-size:20px}.pop{background:var(--card);border:1px solid var(--line-2);min-width:230px;box-shadow:var(--shadow);z-index:40;border-radius:14px;padding:8px;position:absolute;top:calc(100% + 8px);right:0}.pop .who{border-bottom:1px solid var(--line);margin-bottom:6px;padding:8px 10px 10px}.pop .who b{font-size:14px;display:block}.pop .who span{color:var(--ink-2);font-size:12px}.pop a,.pop button.item{text-align:left;width:100%;color:var(--ink);border-radius:9px;align-items:center;gap:10px;padding:9px 10px;font-size:14px;display:flex}.pop a:hover,.pop button.item:hover{background:var(--card-2)}.pop svg{width:16px;height:16px;color:var(--ink-2)}.live{color:var(--ink-2);border:1px solid var(--line);background:var(--card);border-radius:999px;align-items:center;gap:7px;padding:6px 10px;font-size:12px;font-weight:600;display:inline-flex}.live i{background:var(--ink-3);border-radius:50%;width:7px;height:7px}.live.on i{background:var(--good);box-shadow:0 0 0 4px var(--good-soft)}.live.on{color:var(--good)}.live.err i{background:var(--bad)}.imp-banner{top:var(--top-h);z-index:19;color:#1a1715;background:#f0b429;justify-content:center;align-items:center;gap:12px;padding:8px 16px;font-size:13px;font-weight:600;display:flex;position:sticky}.imp-banner button{color:#fff;background:#1a1715;border-radius:8px;padding:4px 10px;font-size:12px;font-weight:700}.tabbar,.sheet-wrap{display:none}@media (max-width:900px){.shell,.shell.collapsed{grid-template-columns:1fr}.side{display:none}.top{padding:0 16px}.top .brand-m{align-items:center;gap:8px;font-weight:800;display:flex}.top .brand-m .mark{background:var(--accent);border-radius:8px;place-items:center;width:26px;height:26px;display:grid}.top .brand-m .mark img{width:17px;height:17px}.top .title{display:none}.content{padding:18px 16px calc(84px + env(safe-area-inset-bottom));gap:14px}.tabbar{z-index:30;background:color-mix(in srgb, var(--bg) 92%, transparent);-webkit-backdrop-filter:blur(14px);border-top:1px solid var(--line);padding:6px 6px calc(6px + env(safe-area-inset-bottom));grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.tab{color:var(--ink-3);border-radius:10px;place-items:center;gap:3px;padding:6px 2px;font-size:10.5px;font-weight:600;display:grid}.tab svg{width:22px;height:22px}.tab.on{color:var(--accent)}.sheet-wrap{z-index:50;display:block;position:fixed;inset:0}.sheet-wrap .bg{background:#00000080;position:absolute;inset:0}.sheet{background:var(--card);padding:10px 14px calc(18px + env(safe-area-inset-bottom));border-top:1px solid var(--line-2);border-radius:20px 20px 0 0;position:absolute;bottom:0;left:0;right:0}.sheet .grab{background:var(--line-2);border-radius:2px;width:40px;height:4px;margin:4px auto 12px}.sheet a,.sheet button.item{text-align:left;border-radius:12px;align-items:center;gap:12px;width:100%;padding:13px 10px;font-size:15px;font-weight:600;display:flex}.sheet a:hover,.sheet button.item:hover{background:var(--card-2)}.sheet svg{width:20px;height:20px;color:var(--ink-2)}.imp-banner{top:var(--top-h)}}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);padding:20px;position:relative}.card.tight{padding:16px}.card h2{letter-spacing:-.005em;font-size:15px;font-weight:700}.card .h{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.card .h .sub{color:var(--ink-2);margin-top:2px;font-size:13px}.eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);font-size:11px;font-weight:700}.big{letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:30px;font-weight:800;line-height:1.05}.big .unit{color:var(--ink-2);letter-spacing:0;margin-left:4px;font-size:15px;font-weight:600}.hero-h{letter-spacing:-.025em;font-size:26px;font-weight:800;line-height:1.15}.hero-p{color:var(--ink-2);overflow-wrap:anywhere;margin-top:4px;font-size:15px}.grid-2{grid-template-columns:1fr 1fr;gap:18px;display:grid}.grid-3{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.grid-4{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.grid-ov{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:start;gap:18px;display:grid}@media (max-width:1040px){.grid-ov{grid-template-columns:1fr}.grid-3,.grid-4{grid-template-columns:1fr 1fr}}@media (max-width:640px){.grid-2,.grid-3{grid-template-columns:1fr}.grid-4{grid-template-columns:1fr 1fr}.card{border-radius:var(--r-md);padding:16px}.big{font-size:26px}.hero-h{font-size:22px}}.stat{border-radius:var(--r-md);background:var(--card-2);border:1px solid var(--line);gap:6px;padding:14px 16px;display:grid}.stat .lbl{color:var(--ink-2);font-size:12.5px;font-weight:600}.stat .val{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:22px;font-weight:800}.stat .val .unit{color:var(--ink-2);letter-spacing:0;margin-left:3px;font-size:13px;font-weight:600}.pill{background:var(--card-2);border:1px solid var(--line);color:var(--ink-2);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:12.5px;font-weight:700;display:inline-flex}.pill.accent{background:var(--accent-soft);border-color:var(--accent-line);color:var(--accent)}.pill.good{background:var(--good-soft);color:var(--good);border-color:#0000}.pill.bad{background:var(--bad-soft);color:var(--bad);border-color:#0000}.pill svg{width:14px;height:14px}.btn{background:var(--card-2);border:1px solid var(--line-2);color:var(--ink);white-space:nowrap;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-size:14px;font-weight:700;transition:transform 80ms,background .12s;display:inline-flex}.btn:hover{background:var(--card-3)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:default}.btn.primary{background:var(--accent);color:var(--accent-ink);border-color:#0000}.btn.primary:hover{background:var(--accent-2)}.btn.ghost{color:var(--ink-2);background:0 0;border-color:#0000}.btn.ghost:hover{background:var(--card-2);color:var(--ink)}.btn.danger{background:var(--bad-soft);color:var(--bad);border-color:#0000}.btn.sm{border-radius:10px;padding:7px 12px;font-size:13px}.btn.block{width:100%}.btn svg{width:16px;height:16px}.seg{background:var(--card-2);border:1px solid var(--line);border-radius:11px;gap:2px;padding:3px;display:inline-flex}.seg button{color:var(--ink-2);border-radius:8px;padding:6px 12px;font-size:13px;font-weight:600}.seg button.on{background:var(--card);color:var(--ink);box-shadow:0 1px 2px #0003}.seg button:disabled{opacity:.55;cursor:default}.seg.sm button{padding:4px 9px;font-size:12px}.field{gap:6px;display:grid}.field label{color:var(--ink-2);font-size:12.5px;font-weight:600}.input{border:1px solid var(--line-2);background:var(--bg);width:100%;color:var(--ink);border-radius:11px;padding:10px 12px;font-size:14px}.input:focus{border-color:var(--accent);outline:none}textarea.input{resize:vertical;min-height:84px;line-height:1.45}.list{display:grid}.list>*+*{border-top:1px solid var(--line)}.item-row{align-items:center;gap:14px;padding:12px 0;display:flex}.item-row .t{font-size:14.5px;font-weight:600}.item-row .s{color:var(--ink-2);margin-top:1px;font-size:12.5px}.item-row .r{text-align:right;font-variant-numeric:tabular-nums}.item-row .r b{font-size:15px;display:block}.item-row .r span{color:var(--ink-2);font-size:12px}a.item-row:hover .t{color:var(--accent)}.empty{text-align:center;color:var(--ink-2);padding:28px 16px;font-size:14px}.empty b{color:var(--ink);margin-bottom:4px;display:block}.notice{background:var(--card-2);border:1px solid var(--line);color:var(--ink-2);border-radius:12px;padding:12px 14px;font-size:13.5px}.notice.ok{background:var(--good-soft);color:var(--good);border-color:#0000}.notice.err{background:var(--bad-soft);color:var(--bad);border-color:#0000}.kv{grid-template-columns:auto 1fr;gap:6px 18px;font-size:14px;display:grid}.kv dt{color:var(--ink-2)}.kv dd{text-align:right;font-variant-numeric:tabular-nums;margin:0;font-weight:600}.table{border-collapse:collapse;width:100%;font-size:14px}.table th{text-align:left;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-3);border-bottom:1px solid var(--line);padding:8px 10px;font-size:11.5px;font-weight:700}.table td{border-bottom:1px solid var(--line);vertical-align:middle;padding:11px 10px}.table tr:last-child td{border-bottom:0}.table td.r,.table th.r{text-align:right;font-variant-numeric:tabular-nums}.table tr.click{cursor:pointer}.table tr.click:hover td{background:var(--card-2)}.table-wrap{overflow-x:auto}.lock{color:var(--ink-2);background:var(--card-2);border:1px dashed var(--line-2);text-align:left;border-radius:10px;align-items:center;gap:8px;max-width:100%;padding:6px 10px 6px 8px;font-size:12.5px;font-weight:600;display:inline-flex}.lock span{min-width:0}.lock:hover{color:var(--ink);border-color:var(--accent-line)}.lock svg{width:14px;height:14px;color:var(--accent)}.lock.block{justify-content:center;padding:14px;display:flex}.lock-over{background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--card) 80%, transparent) 30%, var(--card) 70%);border-radius:inherit;z-index:2;place-items:center;display:grid;position:absolute;inset:0}.lock-over .lock{background:var(--card);box-shadow:var(--shadow)}.mmap{grid-template-columns:1fr;gap:14px;display:grid}.mmap .figure{justify-content:center;align-items:center;min-height:340px;display:flex}.mmap svg.body{width:auto;max-width:100%;height:400px}.mmap.sm svg.body{height:220px}.mmap .body .outline{fill:var(--body-fill);stroke:var(--body-line);stroke-width:2px}.mmap .body path.m{stroke:var(--bg);stroke-width:1.2px;transition:fill .35s,opacity .2s}.mmap .body path.m.hit{cursor:pointer}.mmap .body path.m.hit:hover{filter:brightness(1.15)}.mmap .body path.m.faded{opacity:.25}.mmap .body path.m.sel{stroke:var(--ink);stroke-width:2px}.mmap .ctl{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.legend{color:var(--ink-2);flex-wrap:wrap;gap:6px 14px;font-size:12px;display:flex}.legend span{align-items:center;gap:6px;display:inline-flex}.legend i{border-radius:3px;width:12px;height:12px;display:inline-block}.days{gap:4px;display:flex}.days button{width:34px;height:30px;color:var(--ink-3);background:var(--card-2);border:1px solid var(--line);border-radius:8px;font-size:12px;font-weight:700}.days button.on{color:var(--accent-ink);background:var(--accent);border-color:#0000}.days button.past{color:var(--ink-2)}.mmap .iso{background:var(--card-2);border:1px solid var(--line);border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;font-size:13.5px;display:flex}.mmap .iso b{color:var(--ink)}.mmap .iso button{color:var(--accent);font-size:13px;font-weight:700}@media (max-width:640px){.mmap svg.body{width:100%;height:auto;max-height:340px}.mmap .figure{min-height:0}}.chart{width:100%;height:auto;overflow:visible}.chart text{font-family:var(--font);fill:var(--ink-3);font-size:11px}.chart .grid line{stroke:var(--line)}.chart .area{fill:url(#gradEmber)}.chart .line{fill:none;stroke:var(--accent);stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round}.chart .dot{fill:var(--accent);stroke:var(--card);stroke-width:2px}.chart .bar{fill:var(--accent)}.chart .bar.low{fill:var(--heat-1)}.chart .bar.planned,.chart .bar.locked{fill:var(--card-3)}.chart .bw-line{fill:none;stroke:var(--ink-2);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.chart .bw-dot{fill:var(--ink);stroke:var(--card);stroke-width:2px}.chart-wrap{position:relative}.chart-tip{pointer-events:none;background:var(--card-3);color:var(--ink);white-space:nowrap;box-shadow:var(--shadow);border-radius:8px;padding:6px 9px;font-size:12px;position:absolute;transform:translate(-50%,-110%)}.cgrid{--cell:clamp(14px, 2.6vw, 30px);gap:clamp(4px,.6vw,8px);display:flex}.cgrid .wk{gap:clamp(3px,.4vw,6px);display:grid}.cgrid .d{width:var(--cell);height:var(--cell);background:var(--heat-0);border-radius:5px}.cgrid .d.on{background:var(--accent)}.cgrid .d.rest{background:var(--card-2)}.cgrid .d.today{outline:1.5px solid var(--ink-2);outline-offset:1px}.cgrid .d.future{border:1px dashed var(--line);background:0 0}.streak{background:var(--accent-soft);border:1px solid var(--accent-line);color:var(--accent);border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-size:14px;font-weight:800;display:inline-flex}.streak svg{width:16px;height:16px}.streak span{color:var(--ink-2);font-size:13px;font-weight:600}.ex-block{padding:14px 0}.ex-block+.ex-block{border-top:1px solid var(--line)}.ex-block .name{font-size:15px;font-weight:700}.ex-block .grp{color:var(--ink-2);font-size:12.5px}.sets{font-variant-numeric:tabular-nums;grid-template-columns:36px 1fr 1fr auto;gap:4px 12px;margin-top:10px;font-size:14px;display:grid}.sets .hd{text-transform:uppercase;letter-spacing:.07em;color:var(--ink-3);font-size:11px;font-weight:700}.sets .n{color:var(--ink-3)}.sets .w{font-weight:600}.sets .warm{color:var(--ink-3);font-style:italic}.sets .pr{color:var(--accent);font-size:11px;font-weight:800}.helps{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.helps span{background:var(--card-2);border:1px solid var(--line);color:var(--ink-2);border-radius:999px;padding:3px 8px;font-size:11.5px}.month-h{text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);padding:18px 0 8px;font-size:12px;font-weight:700}.month-h:first-child{padding-top:0}.plan-day{padding:14px 0}.plan-day+.plan-day{border-top:1px solid var(--line)}.plan-day .dn{align-items:center;gap:8px;font-size:15px;font-weight:700;display:flex}.plan-day .dn .pill{padding:3px 8px;font-size:11px}.plan-day ol{gap:6px;margin:8px 0 0;padding:0;list-style:none;display:grid}.plan-day li{justify-content:space-between;gap:12px;font-size:14px;display:flex}.plan-day li span:last-child{color:var(--ink-2);font-variant-numeric:tabular-nums;white-space:nowrap}.modal-wrap{z-index:60;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal-wrap .bg{-webkit-backdrop-filter:blur(4px);background:#0009;position:absolute;inset:0}.modal{background:var(--card);border:1px solid var(--line-2);border-radius:var(--r-lg);width:100%;max-width:480px;max-height:calc(100dvh - 32px);box-shadow:var(--shadow);padding:22px;position:relative;overflow:auto}.modal .x{position:absolute;top:12px;right:12px}.modal h3{letter-spacing:-.02em;font-size:20px;font-weight:800}.modal .lead{color:var(--ink-2);margin-top:4px;font-size:14px}.perks{gap:8px;margin:16px 0;padding:0;font-size:14px;list-style:none;display:grid}.perks li{align-items:flex-start;gap:10px;display:flex}.perks svg{width:16px;height:16px;color:var(--accent);flex:none;margin-top:2px}.plans{gap:8px;display:grid}.plan-opt{text-align:left;border:1px solid var(--line-2);background:var(--card-2);border-radius:14px;align-items:center;gap:12px;width:100%;padding:12px 14px;display:flex}.plan-opt.on{border-color:var(--accent);background:var(--accent-soft)}.plan-opt .radio{border:2px solid var(--line-2);border-radius:50%;flex:none;place-items:center;width:18px;height:18px;display:grid}.plan-opt.on .radio{border-color:var(--accent)}.plan-opt.on .radio:after{content:"";background:var(--accent);border-radius:50%;width:8px;height:8px}.plan-opt .pn{align-items:center;gap:8px;font-size:14.5px;font-weight:700;display:flex}.plan-opt .pd{color:var(--ink-2);font-size:12.5px}.plan-opt .pp{text-align:right;font-variant-numeric:tabular-nums;margin-left:auto}.plan-opt .pp b{font-size:16px;display:block}.plan-opt .pp span{color:var(--ink-2);font-size:11.5px}.tag{text-transform:uppercase;letter-spacing:.06em;background:var(--accent);color:var(--accent-ink);border-radius:999px;padding:2px 7px;font-size:10.5px;font-weight:800}.pay-box{border:1px solid var(--line);background:var(--bg);border-radius:14px;min-height:120px;margin-top:14px;padding:14px}.modal .fine{color:var(--ink-3);margin-top:12px;font-size:12px;line-height:1.5}.modal .fine a{color:var(--ink-2);text-decoration:underline}.pro-card{background:linear-gradient(150deg, #ff6a3d38, #ff6a3d0d 60%), var(--card);border-color:#ff6a3d59}.login{grid-template-columns:1fr 1fr;min-height:100dvh;display:grid}.login .art{background:var(--side);color:var(--side-ink);flex-direction:column;justify-content:space-between;padding:36px;display:flex;position:relative;overflow:hidden}.login .art .glow{pointer-events:none;background:radial-gradient(closest-side,#ff6a3d59,#0000);border-radius:50%;width:640px;height:640px;position:absolute;bottom:-200px;left:-160px}.login .art .brand{align-items:center;gap:10px;font-size:18px;font-weight:800;display:flex}.login .art .brand .mark{background:var(--accent);border-radius:10px;place-items:center;width:34px;height:34px;display:grid}.login .art .brand .mark img{width:22px;height:22px}.login .art .figure{flex:1;place-items:center;padding:24px 0;display:grid;position:relative}.login .art .tag-line{letter-spacing:-.025em;max-width:420px;font-size:28px;font-weight:800;line-height:1.15;position:relative}.login .art .tag-line+p{color:var(--side-ink-2);max-width:420px;margin-top:8px;position:relative}.login .pane{place-items:center;padding:36px 24px;display:grid}.login .box{gap:14px;width:100%;max-width:380px;display:grid}.login .box h1{letter-spacing:-.02em;font-size:24px;font-weight:800}.login .box p{color:var(--ink-2)}.login .sso{border:1px solid var(--line-2);background:var(--card);border-radius:12px;justify-content:center;align-items:center;gap:10px;width:100%;padding:12px 16px;font-size:15px;font-weight:700;display:flex}.login .sso:hover{background:var(--card-2)}.login .sso.apple{color:#fff;background:#000;border-color:#000}.login .sso.apple:hover{background:#111}.login .sso svg{width:18px;height:18px}.login .foot{color:var(--ink-3);font-size:12.5px;line-height:1.5}.login .foot a{color:var(--ink-2);text-decoration:underline}@media (max-width:860px){.login{grid-template-columns:1fr}.login .art{min-height:300px;padding:24px}.login .art .figure{display:none}.login .art .tag-line{margin-top:24px;font-size:22px}}.sk{background:linear-gradient(90deg, var(--card-2), var(--card-3), var(--card-2));background-size:200% 100%;border-radius:10px;animation:1.2s linear infinite sk}@keyframes sk{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
