:root{--bg:#08090b;--surface:#111318;--surface-2:#181b22;--surface-3:#21252e;--border:#272c36;--border-bright:#3a4150;--text:#f4f6fa;--muted:#8d95a5;--muted-dim:#5d6473;--accent:#d4ff3f;--accent-dim:#a8cc2f;--accent-ink:#0d1400;--danger:#ff5a5a;--warn:#ffb020;--good:#3ee08a;--radius:14px;--radius-sm:10px;--radius-lg:20px;--shell:620px;--font:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,"Helvetica Neue",Arial,sans-serif}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overscroll-behavior-y:none}body{padding-bottom:env(safe-area-inset-bottom)}a{color:inherit;text-decoration:none}button,input,select,textarea{font-family:inherit}.num{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.shell{max-width:var(--shell);margin:0 auto;padding:0 16px 112px;min-height:100dvh}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 0 14px;background:linear-gradient(var(--bg) 72%,rgba(8,9,11,0));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.topbar h1{margin:0;font-size:26px;font-weight:800;letter-spacing:-.03em}.topbar .sub{margin:2px 0 0;font-size:13px;color:var(--muted);font-weight:500}.wordmark{font-size:20px;font-weight:900;letter-spacing:-.05em;text-transform:lowercase}.wordmark span{color:var(--accent)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px}.card+.card{margin-top:12px}.card-tap{display:block;transition:border-color .15s ease,transform .1s ease,background .15s ease}.card-tap:active{transform:scale(.99)}@media (hover:hover){.card-tap:hover{border-color:var(--border-bright);background:var(--surface-2)}}.section-head{display:flex;align-items:baseline;justify-content:space-between;margin:26px 0 10px}.section-head h2{margin:0;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.section-head a{font-size:13px;color:var(--accent);font-weight:600}.ch-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.ch-name{margin:0;font-size:17px;font-weight:700;letter-spacing:-.02em;line-height:1.25}.ch-meta{margin:5px 0 0;font-size:12.5px;color:var(--muted);display:flex;flex-wrap:wrap;gap:4px 8px}.ch-meta,.pill{align-items:center}.pill{display:inline-flex;gap:5px;padding:3px 9px;border-radius:999px;font-size:10.5px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;white-space:nowrap}.pill-solo{background:rgba(141,149,165,.16);color:#b9c1d0}.pill-h2h{background:rgba(255,176,32,.16);color:var(--warn)}.pill-group{background:rgba(212,255,63,.15);color:var(--accent)}.pill-done{background:rgba(93,100,115,.18);color:var(--muted-dim)}.pips{display:flex;gap:5px;margin-top:14px}.pip{flex:1 1;height:7px;border-radius:4px;background:var(--surface-3)}.pip.on{background:var(--accent)}.pip.over{background:var(--good)}.progress-line{display:flex;align-items:baseline;justify-content:space-between;margin-top:10px;font-size:12.5px;color:var(--muted)}.progress-line b{color:var(--text);font-size:15px;font-weight:800}.rank-row{display:flex;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid var(--border)}.rank-row:last-child{border-bottom:none}.rank-no{width:22px;font-size:13px;font-weight:800;color:var(--muted-dim);text-align:center;flex-shrink:0}.rank-row.lead .rank-no{color:var(--accent)}.avatar{width:34px;height:34px;border-radius:999px;background:var(--surface-3);border:1px solid var(--border);display:grid;place-items:center;font-size:16px;flex-shrink:0}.avatar.lg{width:44px;height:44px;font-size:20px}.avatar.sm{width:28px;height:28px;font-size:13px}.rank-body{flex:1 1;min-width:0}.rank-name{font-size:14.5px;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rank-sub{font-size:12px;color:var(--muted);margin-top:1px}.rank-score{font-size:19px;font-weight:850;letter-spacing:-.02em;flex-shrink:0}.rank-score small{font-size:11px;font-weight:600;color:var(--muted-dim);margin-left:2px}.you-tag{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:5px;background:var(--accent);color:var(--accent-ink);font-size:9.5px;font-weight:900;letter-spacing:.06em;vertical-align:middle}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:50px;padding:0 18px;border:1px solid var(--border-bright);border-radius:var(--radius);background:var(--surface-2);color:var(--text);font-size:15px;font-weight:700;cursor:pointer;transition:filter .15s ease,transform .08s ease}.btn:active{transform:scale(.985)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn-danger,.btn-ghost{background:transparent}.btn-danger{border-color:rgba(255,90,90,.4);color:var(--danger)}.btn-sm{min-height:38px;font-size:13.5px;width:auto;border-radius:var(--radius-sm)}.field{margin-bottom:14px}.field label{display:block;font-size:12px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);margin-bottom:7px}.field .hint{font-size:12px;color:var(--muted-dim);margin-top:6px;font-weight:400;letter-spacing:0;text-transform:none}.input,.select,.textarea{width:100%;min-height:50px;padding:13px 14px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-size:16px;outline:none;transition:border-color .15s ease}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent)}.textarea{min-height:84px;resize:vertical;line-height:1.45}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:none}.seg{display:flex;gap:8px}.seg-opt{flex:1 1;padding:13px 8px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);text-align:center;cursor:pointer;transition:all .15s ease}.seg-opt .t{font-size:14px;font-weight:750}.seg-opt .d{font-size:11px;color:var(--muted);margin-top:3px;line-height:1.3}.seg-opt.sel{border-color:var(--accent);background:rgba(212,255,63,.08)}.seg-opt.sel .t{color:var(--accent)}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{display:inline-flex;align-items:center;gap:7px;padding:8px 13px 8px 8px;border:1px solid var(--border);border-radius:999px;background:var(--surface-2);font-size:13.5px;font-weight:600;cursor:pointer;transition:all .15s ease}.chip.sel{border-color:var(--accent);background:rgba(212,255,63,.1)}.num-row{display:flex;align-items:center;gap:14px}.num-btn{width:46px;height:46px;border-radius:999px;border:1px solid var(--border-bright);background:var(--surface-2);color:var(--text);font-size:22px;font-weight:700;cursor:pointer;display:grid;place-items:center}.num-val{font-size:30px;font-weight:850;min-width:44px;text-align:center;letter-spacing:-.03em}.num-cap{font-size:12.5px;color:var(--muted)}.post{padding:0;overflow:hidden}.post-head{display:flex;align-items:center;gap:10px;padding:13px 14px}.post-head .who{flex:1 1;min-width:0}.post-head .nm{font-size:14px;font-weight:700}.post-head .tm{font-size:11.5px;color:var(--muted-dim);margin-top:1px}.post-photo{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;background:var(--surface-2)}.post-note{padding:12px 14px 0;font-size:14.5px;line-height:1.45}.post-foot{display:flex;gap:8px;padding:12px 14px;flex-wrap:wrap}.post-foot,.react{align-items:center}.react{display:inline-flex;gap:5px;padding:6px 11px;border-radius:999px;border:1px solid var(--border);background:var(--surface-2);font-size:13px;font-weight:700;cursor:pointer;color:var(--text);transition:all .13s ease}.react:active{transform:scale(.94)}.react.mine{border-color:var(--accent);background:rgba(212,255,63,.12)}.react .n{font-size:12px;color:var(--muted)}.react.mine .n{color:var(--accent)}.cmt{display:flex;gap:9px;padding:9px 14px;border-top:1px solid var(--border)}.cmt-body{flex:1 1;font-size:13.5px;line-height:1.45}.cmt-body b{font-weight:700;margin-right:6px}.cmt-form{display:flex;gap:8px;padding:11px 14px;border-top:1px solid var(--border)}.cmt-form input{flex:1 1;min-height:42px;padding:9px 13px;background:var(--surface-2);border:1px solid var(--border);border-radius:999px;color:var(--text);font-size:15px;outline:none}.cmt-form input:focus{border-color:var(--border-bright)}.cmt-form button{min-height:42px;padding:0 16px;border-radius:999px;border:none;background:var(--accent);color:var(--accent-ink);font-weight:800;font-size:13.5px;cursor:pointer}.nav{position:fixed;left:0;right:0;bottom:0;z-index:50;background:rgba(17,19,24,.92);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid var(--border);padding-bottom:env(safe-area-inset-bottom)}.nav-inner{max-width:var(--shell);margin:0 auto;display:grid;grid-template-columns:repeat(5,1fr);align-items:center}.nav-item{display:flex;flex-direction:column;align-items:center;gap:3px;padding:9px 0 10px;color:var(--muted-dim);font-size:10px;font-weight:700;letter-spacing:.02em}.nav-item svg{width:22px;height:22px}.nav-item.on{color:var(--accent)}.nav-log{display:grid;place-items:center}.nav-log .fab{width:50px;height:50px;border-radius:999px;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;box-shadow:0 4px 18px rgba(212,255,63,.28)}.nav-log .fab svg{width:26px;height:26px}.empty{text-align:center;padding:42px 20px;color:var(--muted)}.empty .ico{font-size:34px}.empty p{margin:0 0 4px;font-size:15px;font-weight:650;color:var(--text)}.empty small{font-size:13px;line-height:1.5;display:block;max-width:260px;margin:0 auto}.err{background:rgba(255,90,90,.1);border:1px solid rgba(255,90,90,.32);color:#ffb4b4;border-radius:var(--radius-sm);line-height:1.45}.err,.ok{padding:11px 13px;font-size:13.5px;margin-bottom:14px}.ok{background:rgba(62,224,138,.09);border:1px solid rgba(62,224,138,.3);color:#93f0bf;border-radius:var(--radius-sm)}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px}.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:13px 12px;text-align:center}.stat .v{font-size:25px;font-weight:850;letter-spacing:-.03em;line-height:1.1}.stat .k{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-top:4px}.stat .v.hot{color:var(--accent)}.divider{height:1px;background:var(--border);margin:18px 0}.center-page{min-height:100dvh;display:flex;flex-direction:column;justify-content:center;max-width:420px;margin:0 auto;padding:32px 20px}.link-btn{background:none;border:none;color:var(--accent);font-size:14px;font-weight:650;cursor:pointer;padding:0}.code-box{display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--surface-2);border:1px dashed var(--border-bright);border-radius:var(--radius);padding:13px 14px}.code-box code{font-size:13px;color:var(--accent);font-weight:700;word-break:break-all;line-height:1.4}.spin{width:17px;height:17px;border:2px solid rgba(13,20,0,.28);border-top:2px solid var(--accent-ink);border-radius:999px;animation:sp .6s linear infinite}@keyframes sp{to{transform:rotate(1turn)}}.empty .ico{font-size:0;margin-bottom:10px;display:grid;place-items:center;color:var(--muted-dim)}.empty .ico svg,.react svg{display:block}.react svg{opacity:.82}.react.mine svg{opacity:1;color:var(--accent)}.metric.locked{display:inline-flex;align-items:center;gap:5px}.row-title{display:flex;align-items:center;gap:7px;font-size:14px;font-weight:700}.ph-ico{display:grid;place-items:center;margin-bottom:6px;color:var(--muted)}.hs-empty-ico{display:grid;place-items:center;color:var(--muted-dim)}.cd-icon{display:grid;place-items:center;color:var(--danger)}.avatar.initials{font-size:12.5px;font-weight:800;letter-spacing:.02em;color:var(--muted);background:var(--surface-3)}.avatar.initials.sm{font-size:10.5px}.avatar.lg.initials{font-size:16px}.avatar.xl.initials{font-size:22px}.share-box{margin-top:4px}.share-row{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}.share-row .btn{width:auto;flex:1 1 30%;min-width:108px;min-height:44px;font-size:13.5px;padding:0 12px;text-decoration:none}.share-code{font-size:12px;color:var(--muted-dim);margin-top:10px}.share-code b{color:var(--accent);letter-spacing:.05em}.waiting-card{margin-top:12px;border-color:rgba(212,255,63,.28)}.waiting-head{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--accent)}.waiting-card p{margin:8px 0 12px;font-size:13.5px}.note-box,.waiting-card p{line-height:1.5;color:var(--muted)}.note-box{display:flex;gap:10px;align-items:flex-start;padding:12px 13px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);font-size:13px}.note-box svg{flex-shrink:0;margin-top:1px;color:var(--muted-dim)}.hs-inline{display:flex;gap:13px;align-items:flex-start}.btn-google{background:var(--surface-2);border-color:var(--border-bright)}.btn-google svg{color:var(--text)}.or-line{display:flex;align-items:center;gap:12px;margin:16px 0;color:var(--muted-dim);font-size:12px;letter-spacing:.08em;text-transform:uppercase}.or-line:after,.or-line:before{content:"";flex:1 1;height:1px;background:var(--border)}.hs-zoom-ico{display:grid;place-items:center;color:var(--muted-dim)}.install-banner{display:flex;align-items:center;gap:11px;padding:12px 13px;margin-bottom:14px;border:1px solid rgba(212,255,63,.28);border-radius:var(--radius);background:var(--surface-2);position:relative}.install-banner>svg{flex-shrink:0;color:var(--accent)}.install-banner-body{flex:1 1;min-width:0;padding-right:14px}.install-banner-body b{display:block;font-size:13.5px;font-weight:700}.install-banner-body span{display:block;font-size:12px;color:var(--muted);line-height:1.4;margin-top:2px}.install-banner .btn{flex-shrink:0}.install-banner-x{position:absolute;top:5px;right:7px;background:none;border:0;color:var(--muted-dim);font-size:12px;cursor:pointer;padding:3px 5px;line-height:1}.steps{list-style:none;margin:0;padding:0}.steps li{display:flex;gap:12px;align-items:flex-start;padding:13px 14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);margin-bottom:8px;font-size:13.5px;line-height:1.55;color:var(--muted)}.steps li b{color:var(--text);font-weight:650}.steps li svg{vertical-align:-3px;color:var(--accent)}.steps-n{flex-shrink:0;width:24px;height:24px;border-radius:999px;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;font-size:12.5px;font-weight:800}.quick-card{border:1px solid rgba(212,255,63,.3);border-radius:var(--radius);background:var(--surface);padding:13px 14px;margin-bottom:10px}.quick-card.did{border-color:var(--border);background:var(--surface-2)}.quick-card.closed{opacity:.62;border-color:var(--border)}.quick-top{display:flex;align-items:flex-start;gap:11px}.quick-flash{flex-shrink:0;width:32px;height:32px;border-radius:9px;display:grid;place-items:center;background:rgba(212,255,63,.12);color:var(--accent)}.quick-card.closed .quick-flash,.quick-card.did .quick-flash{background:var(--surface-3);color:var(--muted)}.quick-title{font-size:15px;font-weight:700;line-height:1.3}.quick-meta{font-size:12px;color:var(--muted-dim);margin-top:2px}.quick-detail{margin:9px 0 0;font-size:13px;color:var(--muted);line-height:1.45}.quick-x{background:none;border:0;color:var(--muted-dim);cursor:pointer;padding:4px;flex-shrink:0}.quick-x:hover{color:var(--danger)}.quick-foot{justify-content:space-between;gap:10px;margin-top:12px;flex-wrap:wrap}.quick-faces,.quick-foot{display:flex;align-items:center}.quick-faces{gap:5px}.quick-faces .avatar{margin-right:-7px;border:2px solid var(--surface)}.quick-count{font-size:12.5px;color:var(--muted);margin-left:12px}.quick-undo{color:var(--accent);border-color:rgba(212,255,63,.4)}.quick-empty{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit}.quick-empty>svg:first-child{color:var(--accent);flex-shrink:0}.quick-empty>svg:last-child{color:var(--muted-dim);flex-shrink:0}.quick-empty div{flex:1 1;min-width:0}.quick-empty b{display:block;font-size:14px;font-weight:700}.quick-empty span{display:block;font-size:12.5px;color:var(--muted);line-height:1.45;margin-top:2px}.quick-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:8px;gap:8px}.quick-pick{display:flex;align-items:center;gap:10px;padding:13px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--muted);font-size:13px;font-weight:600;text-align:left;cursor:pointer;transition:all .13s ease}.quick-pick svg{flex-shrink:0}.quick-pick.sel{border-color:var(--accent);background:rgba(212,255,63,.1);color:var(--text)}.quick-pick.sel svg{color:var(--accent)}.live-bar{display:flex;align-items:center;gap:11px;padding:12px 14px;border-radius:var(--radius);border:1px solid rgba(212,255,63,.42);background:linear-gradient(90deg,rgba(212,255,63,.13),rgba(212,255,63,.04));margin-top:14px}.live-dot{width:9px;height:9px;border-radius:999px;background:var(--accent);flex-shrink:0;animation:pulse 1.6s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.82)}}.live-bar .lbl{font-size:9.5px;font-weight:900;letter-spacing:.13em;color:var(--accent)}.live-bar .who{font-size:14px;font-weight:700;margin-top:2px}.live-bar .when{font-size:11.5px;color:var(--muted)}.step-in{display:flex;gap:10px;margin-top:14px}.metrics{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.metric{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:7px;background:var(--surface-3);font-size:12px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:#c8d0de}.metric.locked{color:var(--muted-dim);border:1px dashed var(--border-bright);background:transparent}.metric-row{display:flex;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid var(--border)}.metric-row:last-child{border-bottom:none}.metric-row .mlabel{flex:1 1;font-size:14.5px;font-weight:620}.metric-row .msub{font-size:11.5px;color:var(--muted-dim);margin-top:1px;font-weight:400}.metric-row input[type=number]{width:84px;min-height:42px;padding:9px 11px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-size:16px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right;outline:none}.metric-row input[type=number]:focus{border-color:var(--accent)}.lock{width:40px;height:40px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-2);display:grid;place-items:center;cursor:pointer;font-size:15px;flex-shrink:0;transition:all .14s ease}.lock.on{border-color:var(--warn);background:rgba(255,176,32,.12)}.privacy-note{font-size:11.5px;color:var(--muted-dim);margin-top:10px;line-height:1.5}.rpe-row{display:flex;gap:4px}.rpe-cell{flex:1 1;height:38px;border-radius:7px;border:1px solid var(--border);background:var(--surface-2);color:var(--muted);font-size:12.5px;font-weight:750;cursor:pointer;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.rpe-cell.on{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.when-chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.dt-row{display:flex;gap:10px}.dt-row input{flex:1 1;min-height:48px;padding:11px 13px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-size:15px;outline:none;color-scheme:dark}.dt-row input:focus{border-color:var(--accent)}.cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.cal-head .mo{font-size:17px;font-weight:800;letter-spacing:-.02em}.cal-nav{width:38px;height:38px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-2);color:var(--text);cursor:pointer;font-size:16px}.cal-nav:disabled{opacity:.35;cursor:default}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:5px;gap:5px}.cal-dow{text-align:center;font-size:9.5px;font-weight:800;letter-spacing:.08em;color:var(--muted-dim);padding-bottom:5px}.cal-cell{aspect-ratio:1;border-radius:9px;border:1px solid transparent;background:var(--surface);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;cursor:pointer;transition:all .12s ease;position:relative}.cal-cell.pad{background:transparent;cursor:default}.cal-cell .d{font-size:12.5px;font-weight:650;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--muted)}.cal-cell.has{background:var(--surface-2);border-color:var(--border)}.cal-cell.has .d{color:var(--text)}.cal-cell.mine{background:rgba(212,255,63,.14);border-color:rgba(212,255,63,.4)}.cal-cell.mine .d{color:var(--accent);font-weight:800}.cal-cell.today{border-color:var(--text)}.cal-cell.sel{outline:2px solid var(--accent);outline-offset:1px}.cal-dots{display:flex;gap:2px;height:4px}.cal-dot{width:4px;height:4px;border-radius:999px;background:var(--muted-dim)}.cal-dot.me{background:var(--accent)}.cal-dot.meal{background:var(--warn)}.cal-legend{display:flex;gap:14px;justify-content:center;margin-top:12px;font-size:11px;color:var(--muted-dim)}.cal-legend span{display:inline-flex;align-items:center;gap:5px}.day-entry{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid var(--border)}.day-entry:last-child{border-bottom:none}.day-thumb{width:56px;height:56px;border-radius:10px;object-fit:cover;background:var(--surface-3);flex-shrink:0}.day-thumb.ph{display:grid;place-items:center;font-size:22px}.day-body{flex:1 1;min-width:0}.day-time{font-size:11px;color:var(--muted-dim);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:.03em}.rec-btn{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:999px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-size:13px;font-weight:700;cursor:pointer;transition:all .14s ease}.rec-btn.recording{border-color:var(--danger);background:rgba(255,90,90,.14);color:#ffb4b4}.rec-dot{width:8px;height:8px;border-radius:999px;background:var(--danger);animation:pulse 1s ease-in-out infinite}.vn{display:flex;align-items:center;gap:10px;padding:10px 14px;border-top:1px solid var(--border)}.vn audio{flex:1 1;height:34px;min-width:0}.vn .vn-who{font-size:12.5px;font-weight:700;white-space:nowrap}.vn-card{display:flex;align-items:center;gap:11px;padding:13px 14px}.recap-hero{border-radius:var(--radius-lg);border:1px solid var(--border-bright);background:linear-gradient(160deg,var(--surface-2),var(--surface));padding:22px 18px;text-align:center;margin-bottom:14px}.recap-hero .kicker{font-size:10px;font-weight:900;letter-spacing:.16em;color:var(--accent);text-transform:uppercase}.recap-hero .big{font-size:44px;font-weight:900;letter-spacing:-.045em;line-height:1;margin:10px 0 4px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.recap-hero .cap{font-size:13.5px;color:var(--muted)}.tape-row{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;grid-gap:10px;gap:10px;padding:12px 0;border-bottom:1px solid var(--border)}.tape-row:last-child{border-bottom:none}.tape-side{display:flex;align-items:center;gap:8px;min-width:0}.tape-side.right{justify-content:flex-end}.tape-name{font-size:13.5px;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tape-score{font-size:17px;font-weight:850;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;min-width:26px;text-align:center}.tape-vs{font-size:10px;font-weight:900;letter-spacing:.1em;color:var(--muted-dim)}.tape-win{color:var(--accent)}.push-card{border:1px solid rgba(212,255,63,.3);background:rgba(212,255,63,.05)}.tabs{display:flex;gap:4px;padding:4px;background:var(--surface-2);margin-bottom:18px}.tab,.tabs{border-radius:999px}.tab{flex:1 1;padding:10px 8px;border:none;background:transparent;color:var(--muted);font-size:13.5px;font-weight:750;cursor:pointer;transition:all .15s ease}.tab.on{background:var(--accent);color:var(--accent-ink)}.act-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px}.act{padding:14px 6px;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface-2);text-align:center;cursor:pointer;transition:all .14s ease}.act .e{font-size:24px;line-height:1}.act .l{font-size:11.5px;font-weight:650;margin-top:6px;line-height:1.25;color:var(--muted)}.act.on{border-color:var(--accent);background:rgba(212,255,63,.1)}.act.on .l{color:var(--accent)}.photo-slot{border-radius:var(--radius);border:2px dashed var(--border-bright);background:var(--surface);min-height:116px;display:grid;place-items:center;cursor:pointer;overflow:hidden;text-align:center;padding:16px}.photo-slot.filled{border-style:solid;padding:0;min-height:0}.photo-slot img{width:100%;display:block;max-height:330px;object-fit:cover}.avatar{overflow:hidden;position:relative;padding:0}.avatar.has-photo{background:var(--surface-3)}.avatar img{width:100%;height:100%;object-fit:cover;display:block}.avatar.xl{width:74px;height:74px;font-size:32px}.avatar.ghost{border-style:dashed;border-color:var(--border-bright);opacity:.55}.hs-wrap{display:grid;place-items:center;margin:6px 0 14px}.hs-ring{width:214px;height:214px;border-radius:999px;border:2px dashed var(--border-bright);background:var(--surface);display:grid;place-items:center;overflow:hidden;cursor:pointer;transition:border-color .15s ease}.hs-ring.filled{border-style:solid;border-color:var(--accent)}.hs-ring{position:relative}.hs-ring>img.hs-live{position:absolute;left:50%;top:50%;transform-origin:center center;max-width:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.hs-guide{position:absolute;inset:0;border-radius:999px;pointer-events:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.22),inset 0 0 44px rgba(0,0,0,.42)}.hs-zoom{display:flex;align-items:center;gap:12px;max-width:260px;margin:0 auto 12px}.hs-zoom-ico{opacity:.55;line-height:1}.hs-zoom input[type=range]{flex:1 1;-webkit-appearance:none;-moz-appearance:none;appearance:none;height:4px;border-radius:999px;background:var(--surface-3);outline:none}.hs-zoom input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:22px;height:22px;border-radius:999px;background:var(--accent);border:none;cursor:pointer}.hs-zoom input[type=range]::-moz-range-thumb{width:22px;height:22px;border-radius:999px;background:var(--accent);border:none;cursor:pointer}.hs-empty{text-align:center;color:var(--muted)}.hs-hint{font-size:12.5px;color:var(--muted-dim);text-align:center;line-height:1.5;margin:0 0 20px}.hs-banner{align-items:center;gap:12px;margin-top:14px;padding:13px 14px;border-radius:var(--radius);border:1px solid rgba(212,255,63,.34);background:rgba(212,255,63,.06)}.hs-banner,.hs-faces{display:flex}.hs-faces>*{margin-left:-9px;border:2px solid var(--bg)!important}.hs-faces>:first-child{margin-left:0}.vr-backdrop{position:fixed;inset:0;z-index:200;background:rgba(4,5,7,.78);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:flex-end;justify-content:center;padding:16px 16px calc(16px + env(safe-area-inset-bottom));animation:vrfade .16s ease}@media(min-width:520px){.vr-backdrop{align-items:center}}@keyframes vrfade{0%{opacity:0}to{opacity:1}}.vr-sheet{width:100%;max-width:400px;background:var(--surface);border:1px solid var(--border-bright);border-radius:var(--radius-lg);padding:18px;text-align:center;box-shadow:0 24px 60px rgba(0,0,0,.6);animation:vrup .2s cubic-bezier(.2,.9,.3,1)}@keyframes vrup{0%{transform:translateY(18px);opacity:0}to{transform:translateY(0);opacity:1}}.vr-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.vr-title{font-size:15px;font-weight:750;letter-spacing:-.01em}.vr-x{width:32px;height:32px;border-radius:999px;border:1px solid var(--border);background:var(--surface-2);color:var(--muted);font-size:13px;cursor:pointer;display:grid;place-items:center}.vr-x:disabled{opacity:.4}.vr-orb{width:112px;height:112px;border-radius:999px;border:none;display:grid;place-items:center;cursor:pointer;margin:6px auto 16px;transition:transform .12s ease}.vr-orb:active{transform:scale(.95)}.vr-orb.start{background:var(--accent);box-shadow:0 0 0 8px rgba(212,255,63,.12)}.vr-orb.stop{background:var(--danger);box-shadow:0 0 0 8px rgba(255,90,90,.16);animation:vrpulse 1.6s ease-in-out infinite}@keyframes vrpulse{0%,to{box-shadow:0 0 0 8px rgba(255,90,90,.16)}50%{box-shadow:0 0 0 18px rgba(255,90,90,.05)}}.vr-mic{font-size:40px;line-height:1}.vr-square{width:34px;height:34px;border-radius:7px;background:#fff}.vr-label{font-size:16px;font-weight:750;display:flex;align-items:center;justify-content:center;gap:8px}.vr-sub{font-size:12.5px;color:var(--muted);margin-top:6px;line-height:1.45}.vr-live-dot{width:9px;height:9px;border-radius:999px;background:var(--danger);animation:pulse 1s ease-in-out infinite}.vr-timer{font-size:34px;font-weight:850;letter-spacing:-.03em;margin-top:10px}.vr-bar{height:4px;border-radius:999px;background:var(--surface-3);margin-top:12px;overflow:hidden}.vr-bar span{display:block;height:100%;background:var(--danger);transition:width .2s linear}.vr-player{margin:14px 0 16px}.vr-player audio{height:40px}.act .e{display:grid;place-items:center;height:26px;color:var(--muted)}.act.on .e{color:var(--accent)}.tm-ico{vertical-align:-2px;margin-right:5px;opacity:.75}.day-thumb.ph{color:var(--muted)}.wk{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:12px 10px 10px;margin-bottom:14px}.wk-head{display:flex;align-items:center;justify-content:space-between;padding:0 4px 10px}.wk-label{font-size:12.5px;font-weight:700;color:var(--muted)}.wk-nav{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;color:var(--text);font-size:17px;background:var(--surface-2);border:1px solid var(--border)}.wk-nav.off{opacity:.28}.wk-row{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:4px;gap:4px}.wk-day{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 0 7px;border-radius:10px;border:1px solid transparent;transition:all .12s ease}.wk-dow{font-size:9.5px;font-weight:800;letter-spacing:.08em;color:var(--muted-dim)}.wk-num{font-size:14.5px;font-weight:700;color:var(--muted)}.wk-day.today .wk-num{color:var(--text)}.wk-day.sel{background:var(--surface-3);border-color:var(--border-bright)}.wk-day.sel .wk-num{color:var(--text)}.wk-day.future{opacity:.32}.wk-marks{display:flex;gap:2.5px;height:5px;align-items:center}.wk-dot{width:5px;height:5px;border-radius:999px;background:var(--muted-dim);display:block}.wk-dot.me{background:var(--accent);width:6px;height:6px}.day-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.day-title{font-size:19px;font-weight:800;letter-spacing:-.02em}.day-meta{font-size:12.5px;color:var(--muted);margin-top:2px}.hl-row{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;grid-gap:8px;gap:8px}.hl{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 11px}.hl-k{font-size:9.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--muted-dim)}.hl-v{font-size:13px;font-weight:700;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sk-title{font-size:10.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}.sk-row{display:flex;align-items:center;gap:9px;padding:5px 0}.sk-name{font-size:13px;font-weight:650;width:62px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sk-bar{flex:1 1;height:6px;background:var(--surface-3);overflow:hidden}.sk-bar,.sk-bar i{border-radius:999px}.sk-bar i{display:block;height:100%;background:var(--accent)}.sk-n{font-size:12.5px;font-weight:750;color:var(--muted);width:26px;text-align:right}.cd-sheet{padding:22px 18px}.cd-icon{font-size:34px;line-height:1;margin-bottom:10px}.cd-title{font-size:18px;font-weight:800;letter-spacing:-.02em;margin-bottom:7px}.cd-body{font-size:13.5px;color:var(--muted);line-height:1.55;margin-bottom:18px}.cd-label{display:block;font-size:12px;color:var(--muted);margin-bottom:8px;text-align:left}.cd-label b{color:var(--danger);font-weight:800;letter-spacing:.04em}.cd-input{text-align:center;letter-spacing:.06em;margin-bottom:14px}.cd-input:focus{border-color:var(--danger)}.cd-go:disabled{opacity:.35}.danger-zone{border:1px solid rgba(255,90,90,.3);background:rgba(255,90,90,.05);border-radius:var(--radius);padding:16px}.kv{display:flex;justify-content:space-between;gap:14px;padding:8px 0;border-bottom:1px solid var(--border);font-size:13.5px}.kv:last-of-type{border-bottom:none}.kv span{color:var(--muted)}.kv b{font-weight:700;text-align:right}