@font-face{font-family:Geist;src:url(/assets/Geist-Variable-BNK-hTUD.woff2)format("woff2");font-weight:100 900;font-display:swap}@font-face{font-family:Geist Mono;src:url(/assets/GeistMono-Variable-BoRIzn25.woff2)format("woff2");font-weight:100 900;font-display:swap}@font-face{font-family:Bebas Neue;src:url(/assets/bebas-neue-latin-400-normal-9mHNbWWO.woff2)format("woff2");font-weight:400;font-display:swap;unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215}@font-face{font-family:Bebas Neue;src:url(/assets/bebas-neue-latin-ext-400-normal-DWiEslNC.woff2)format("woff2");font-weight:400;font-display:swap;unicode-range:U+100-2AF,U+304,U+308,U+329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#080706;--surface:#12100e;--surface-2:#1a1714;--surface-3:#24201c;--line:#ffecdc17;--line-2:#ffecdc2b;--text:#fbf7f3;--muted:#fbf7f3a3;--faint:#fbf7f36b;--glass:#181411b3;--accent:#ff5a1f;--accent-hi:#ff7a3d;--accent-ink:#1c0800;--accent-soft:#ff5a1f24;--hot:linear-gradient(135deg, #ff8a2a 0%, #ff5a1f 48%, #e3261f 100%);--gold:#ffb547;--gold-soft:#ffb54724;--ok:#3ddc97;--ok-ink:#04170e;--danger:#ff4d5e;--danger-soft:#ff4d5e1f;--link:var(--accent-hi);--hover:#ffffff0f;--invert-bg:#fbf7f3;--invert-ink:#120d0a;--fig-bg:#000;--fig-filter:invert(1) contrast(1.15);--head-bg:#080706d1;--glow:#ffffff1a;--shadow:#0009;--danger-text:#ffd5d9;--radius:22px;--radius-sm:14px;--sans:"Geist", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono:"Geist Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--display:"Bebas Neue", "Arial Narrow", Impact, sans-serif;--safe-b:env(safe-area-inset-bottom,0px);--safe-t:env(safe-area-inset-top,0px);--nav-h:68px;--ease:cubic-bezier(.2, .8, .2, 1)}@media (prefers-color-scheme:light){:root:not([data-theme=dark]){--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f5f1ec;--surface:#fff;--surface-2:#f2ede7;--surface-3:#e8e1d9;--line:#28180a1a;--line-2:#28180a2e;--text:#17110c;--muted:#17110ca8;--faint:#17110c75;--glass:#ffffffc7;--gold:#a8660c;--ok:#12925a;--ok-ink:#fff;--danger:#d42b3d;--link:#c9400b;--hover:#28180a0d;--invert-bg:#17110c;--invert-ink:#fbf7f3;--fig-bg:#fff;--fig-filter:none;--head-bg:#f5f1ecd9;--glow:#ff5a1f1f;--shadow:#28180a2e;--danger-text:#a3142a}}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f5f1ec;--surface:#fff;--surface-2:#f2ede7;--surface-3:#e8e1d9;--line:#28180a1a;--line-2:#28180a2e;--text:#17110c;--muted:#17110ca8;--faint:#17110c75;--glass:#ffffffc7;--gold:#a8660c;--ok:#12925a;--ok-ink:#fff;--danger:#d42b3d;--link:#c9400b;--hover:#28180a0d;--invert-bg:#17110c;--invert-ink:#fbf7f3;--fig-bg:#fff;--fig-filter:none;--head-bg:#f5f1ecd9;--glow:#ff5a1f1f;--shadow:#28180a2e;--danger-text:#a3142a}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);margin:0}body{font-family:var(--sans);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;min-height:100dvh;font-size:16px;line-height:1.45;overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}img,svg{display:block}::selection{background:var(--accent);color:var(--accent-ink)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.mono{font-family:var(--mono);font-feature-settings:"tnum";letter-spacing:-.01em}.display{font-family:var(--display);letter-spacing:.01em;text-transform:uppercase;font-weight:400;line-height:.92}.muted{color:var(--muted)}.faint{color:var(--faint)}.eyebrow{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--faint);font-size:12px}.h1{font-family:var(--display);text-transform:uppercase;margin:0;font-size:clamp(44px,9vw,64px);line-height:.9}.h2{font-family:var(--display);text-transform:uppercase;margin:0;font-size:34px;line-height:.95}.h3{letter-spacing:-.01em;margin:0;font-size:17px;font-weight:600}.small{font-size:13px}.row{align-items:center;gap:12px;display:flex}.row.between{justify-content:space-between}.stack{flex-direction:column;gap:12px;display:flex}.stack.lg{gap:20px}.grow{flex:1;min-width:0}.ellipsis{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.clamp2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.center{text-align:center}.hidden{display:none!important}.btn{border:1px solid var(--line-2);letter-spacing:-.01em;height:48px;transition:transform .15s var(--ease), background .2s, opacity .2s;white-space:nowrap;-webkit-user-select:none;user-select:none;background:0 0;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 22px;font-size:15px;font-weight:600;display:inline-flex}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.4;pointer-events:none}.btn.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);box-shadow:0 8px 28px -10px #ff5a1fb3}.btn.primary:hover{background:var(--accent-hi);border-color:var(--accent-hi);background:#e9e9e9}.btn.ghost{border-color:#0000}.btn.ghost:hover,.btn:not(.primary):hover{background:var(--hover)}.btn.sm{height:36px;padding:0 14px;font-size:14px}.btn.lg{height:56px;padding:0 28px;font-size:16px}.btn.block{width:100%}.btn.danger{color:var(--danger);border-color:#ff4d5e66}.icon-btn{border:1px solid var(--line);background:var(--surface-2);border-radius:999px;flex:none;place-items:center;width:42px;height:42px;display:inline-grid}.icon-btn:active{transform:scale(.94)}.icon-btn.plain{background:0 0;border-color:#0000}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:18px}.card.flush{padding:0;overflow:hidden}.card.hover{transition:background .2s,border-color .2s}.card.hover:hover{background:var(--surface-2);border-color:var(--line-2)}.divider{background:var(--line);border:0;height:1px;margin:0}.list>*+*{border-top:1px solid var(--line)}.list-row{align-items:center;gap:14px;min-height:64px;padding:14px 18px;display:flex}a.list-row:hover,button.list-row:hover{background:var(--surface-2)}button.list-row{text-align:left;background:0 0;border:0;width:100%}.tag{border:1px solid var(--line-2);height:24px;color:var(--muted);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:600;display:inline-flex}.tag.solid{background:var(--gold-soft);color:var(--gold);border-color:#ffb54773}.tag.dot{color:var(--ok);border-color:#3ddc9759}.tag.bad{color:var(--danger);border-color:#ff4d5e66}.tag.dot:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.chips{scrollbar-width:none;gap:8px;margin:0 -20px;padding-bottom:2px;padding-left:20px;padding-right:20px;display:flex;overflow-x:auto}.chips::-webkit-scrollbar{display:none}.chip{border:1px solid var(--line-2);height:36px;color:var(--muted);background:0 0;border-radius:999px;flex:none;padding:0 16px;font-size:14px;font-weight:500}.chip[aria-pressed=true]{background:var(--invert-bg);color:var(--invert-ink);border-color:var(--invert-bg)}.field{flex-direction:column;gap:8px;display:flex}.field label{color:var(--muted);font-size:13px;font-weight:500}.input,.select,.textarea{border-radius:var(--radius-sm);border:1px solid var(--line-2);background:var(--surface);outline:none;width:100%;height:52px;padding:0 16px;font-size:16px;transition:border-color .2s,background .2s}.textarea{resize:vertical;height:auto;min-height:96px;padding:14px 16px}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent);background:var(--surface-2)}.input::placeholder,.textarea::placeholder{color:var(--faint)}.select{-webkit-appearance:none;appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--text) 50%), linear-gradient(135deg, var(--text) 50%, transparent 50%);background-position:calc(100% - 22px) 23px,calc(100% - 17px) 23px;background-repeat:no-repeat;background-size:5px 5px;padding-right:40px}.input.num{text-align:center;font-family:var(--mono);height:44px;padding:0 6px}.form-error{border-radius:var(--radius-sm);background:var(--danger-soft);color:var(--danger-text);border:1px solid #ff4d5e73;padding:12px 14px;font-size:14px;font-weight:500}.form-note{color:var(--muted);font-size:13px}.search{position:relative}.search svg{color:var(--faint);position:absolute;top:50%;left:16px;transform:translateY(-50%)}.search .input{border-radius:999px;padding-left:46px}.app{min-height:100dvh}.page{max-width:760px;padding:calc(var(--safe-t) + 18px) 20px calc(var(--nav-h) + var(--safe-b) + 40px);margin:0 auto}.page.wide{max-width:1080px}.page-head{justify-content:space-between;align-items:flex-end;gap:16px;margin:6px 0 22px;display:flex}.topbar{align-items:center;gap:10px;min-height:44px;margin-bottom:18px;display:flex}.topbar .title{font-size:16px;font-weight:600}.nav{z-index:40;left:50%;bottom:calc(12px + var(--safe-b));background:var(--glass);border:1px solid var(--line-2);-webkit-backdrop-filter:blur(22px)saturate(140%);backdrop-filter:blur(22px)saturate(140%);box-shadow:0 10px 40px var(--shadow);border-radius:999px;gap:2px;padding:6px;display:flex;position:fixed;transform:translate(-50%)}.nav a{width:64px;height:54px;color:var(--faint);transition:color .2s, background .25s var(--ease);border-radius:999px;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:10.5px;font-weight:500;display:flex;position:relative}.nav a[aria-current=page]{color:var(--accent-ink);background:var(--accent)}.nav .badge{background:var(--accent);min-width:16px;height:16px;color:var(--accent-ink);font-size:10px;font-weight:700;font-family:var(--mono);border-radius:99px;place-items:center;padding:0 4px;display:grid;position:absolute;top:6px;right:14px}.nav a[aria-current=page] .badge{background:var(--accent-ink);color:var(--accent)}@media (min-width:960px){.nav{border-radius:28px;flex-direction:column;justify-content:flex-start;gap:6px;width:92px;padding:14px 10px;top:20px;bottom:20px;left:20px;transform:none}.nav .nav-logo{margin:4px auto 18px;display:block}.nav a{border-radius:20px;width:70px;height:62px}.with-rail .page{max-width:892px;padding-left:132px}.with-rail .page.wide{max-width:1212px}}.nav-logo{width:58px;display:none}.fig{aspect-ratio:1;background:var(--fig-bg);border-radius:var(--radius-sm);position:relative;overflow:hidden}.fig img{object-fit:contain;width:88%;height:88%;filter:var(--fig-filter);position:absolute;top:6%;bottom:6%;left:6%;right:6%}.fig.anim img:nth-child(2){animation:1.8s step-end infinite fig-swap}.fig.anim img:first-child{animation:1.8s step-end infinite reverse fig-swap}@keyframes fig-swap{0%{opacity:0}50%{opacity:1}to{opacity:0}}.fig.thumb{border:1px solid var(--line);border-radius:12px;flex:none;width:56px;height:56px}.fig.thumb img{width:92%;height:92%;top:4%;bottom:4%;left:4%;right:4%}@media (prefers-reduced-motion:reduce){.fig.anim img{animation-duration:3.2s}}.ex-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}@media (min-width:640px){.ex-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width:1100px){.ex-grid{grid-template-columns:repeat(4,1fr)}}.ex-card{border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);flex-direction:column;gap:10px;padding:10px;transition:border-color .2s,background .2s;display:flex}.ex-card:hover{border-color:var(--line-2);background:var(--surface-2)}.ex-card .name{padding:0 4px;font-size:14px;font-weight:600;line-height:1.25}.ex-card .meta{color:var(--faint);padding:0 4px 4px;font-size:12px}.stats{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.stat{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px}.stat .v{font-family:var(--mono);letter-spacing:-.03em;font-size:28px;font-weight:600;line-height:1}.stat .l{color:var(--muted);margin-top:8px;font-size:12px}.stats.four{grid-template-columns:repeat(2,1fr)}@media (min-width:720px){.stats.four{grid-template-columns:repeat(4,1fr)}}.week{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.week .d{border:1px solid #0000;border-radius:16px;flex-direction:column;align-items:center;gap:8px;padding:10px 0 12px;display:flex}.week .d .n{font-family:var(--mono);font-size:15px;font-weight:600}.week .d .l{color:var(--faint);text-transform:uppercase;letter-spacing:.06em;font-size:11px}.week .d .dot{border:1px solid var(--line-2);background:0 0;border-radius:50%;width:6px;height:6px}.week .d.done .dot{background:var(--accent);border-color:var(--accent)}.week .d.today{border-color:var(--line-2);background:var(--surface)}.today-card{background:var(--hot);color:var(--accent-ink);border-radius:28px;flex-direction:column;min-height:360px;padding:22px;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 60px -28px #ff5a1fbf}.today-card .fig{pointer-events:none;background:0 0;width:46%;max-width:210px;position:absolute;bottom:92px;right:-10px}.today-card>:not(.fig){z-index:1;position:relative}.today-card .fig img{filter:none;mix-blend-mode:multiply}.today-card .eyebrow{color:#00000080}.today-card .title{font-family:var(--display);text-transform:uppercase;max-width:56%;margin:10px 0 0;font-size:clamp(44px,12vw,64px);line-height:.88}.today-card .meta{color:#0000009e;font-size:13px;font-family:var(--mono);gap:14px;margin-top:12px;display:flex}.today-card .btn{z-index:2;color:#fff;background:#0d0604;border-color:#0d0604;align-self:flex-start;margin-top:auto}.today-card .btn:hover{background:#222}.bar{background:var(--surface-3);border-radius:99px;height:6px;overflow:hidden}.bar>i{background:var(--hot);height:100%;transition:width .4s var(--ease);border-radius:99px;display:block}.chart{grid-auto-columns:1fr;grid-auto-flow:column;align-items:end;gap:6px;height:120px;display:grid}.chart .c{flex-direction:column;justify-content:flex-end;gap:6px;height:100%;display:flex}.chart .c i{background:var(--hot);border-radius:6px 6px 3px 3px;min-height:3px;display:block}.chart .c i.zero{background:var(--surface-3)}.chart .c span{font-family:var(--mono);color:var(--faint);text-align:center;font-size:10px}.player-head{z-index:20;background:var(--head-bg);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);margin:calc(-18px - var(--safe-t)) -20px 0;padding:calc(var(--safe-t) + 12px) 20px 14px;border-bottom:1px solid var(--line);position:sticky;top:0}.ex-block{border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);transition:border-color .2s;overflow:hidden}.ex-block.open{border-color:var(--line-2)}.ex-block.complete .ex-head .h3{color:var(--muted)}.ex-head{text-align:left;background:0 0;border:0;align-items:center;gap:14px;width:100%;padding:12px;display:flex}.sets{grid-template-columns:34px 1fr 1fr 48px;align-items:center;gap:8px;padding:0 14px 14px;display:grid}.sets .hdr{color:var(--faint);text-transform:uppercase;letter-spacing:.06em;text-align:center;font-size:11px}.sets .idx{font-family:var(--mono);color:var(--muted);text-align:center}.check{border:1px solid var(--line-2);width:44px;height:44px;color:var(--faint);background:0 0;border-radius:999px;place-items:center;transition:background .2s,color .2s,transform .15s;display:grid}.check[aria-pressed=true]{background:var(--ok);color:var(--ok-ink);border-color:var(--ok)}.check:active{transform:scale(.92)}.set-done .input.num{color:var(--muted)}.scrim{z-index:60;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fade .2s var(--ease);background:#0000009e;position:fixed;top:0;bottom:0;left:0;right:0}.sheet{z-index:61;background:var(--surface);border-top:1px solid var(--line-2);max-height:92dvh;padding:10px 20px calc(24px + var(--safe-b));animation:rise .32s var(--ease);border-radius:28px 28px 0 0;position:fixed;bottom:0;left:0;right:0;overflow:auto}.sheet .grab{background:var(--line-2);border-radius:99px;width:40px;height:5px;margin:0 auto 16px}@media (min-width:720px){.sheet{border:1px solid var(--line-2);width:min(560px,100vw - 40px);animation:pop .25s var(--ease);border-radius:28px;max-height:86dvh;top:50%;bottom:auto;left:50%;right:auto;transform:translate(-50%,-50%)}.sheet .grab{display:none}}@keyframes fade{0%{opacity:0}}@keyframes rise{0%{opacity:0;transform:translateY(40px)}}@keyframes pop{0%{opacity:0;transform:translate(-50%,-48%)scale(.98)}}.rest{z-index:50;left:12px;right:12px;bottom:calc(12px + var(--safe-b));background:var(--hot);max-width:520px;color:var(--accent-ink);box-shadow:0 20px 60px var(--shadow);animation:rise .3s var(--ease);border-radius:28px;align-items:center;gap:14px;margin:0 auto;padding:16px 18px;display:flex;position:fixed}.rest .t{font-family:var(--mono);letter-spacing:-.04em;font-size:40px;font-weight:600;line-height:1}.rest .icon-btn{color:#000;background:#0000000f;border-color:#0000001a}.rest .btn{color:#000;border-color:#000}.toast{z-index:80;left:50%;bottom:calc(96px + var(--safe-b));background:var(--invert-bg);color:var(--invert-ink);animation:rise .25s var(--ease);border-radius:999px;max-width:calc(100vw - 40px);padding:12px 18px;font-size:14px;font-weight:600;position:fixed;transform:translate(-50%);box-shadow:0 10px 30px #00000080}.empty{text-align:center;border:1px dashed var(--line-2);border-radius:var(--radius);padding:48px 20px}.empty .h3{margin-bottom:6px}.spinner{border:2px solid var(--line-2);border-top-color:var(--accent);border-radius:50%;width:22px;height:22px;margin:60px auto;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.landing{overflow:hidden}.l-nav{z-index:30;padding:calc(var(--safe-t) + 12px) 20px 12px;background:linear-gradient(var(--bg), color-mix(in srgb, var(--bg) 60%, transparent) 60%, transparent);justify-content:space-between;align-items:center;display:flex;position:fixed;top:0;left:0;right:0}.l-nav .brand{font-family:var(--display);letter-spacing:.02em;align-items:center;gap:10px;font-size:22px;display:flex}.l-nav .brand img{width:44px}.l-hero{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100dvh;padding:110px 20px 60px;display:flex;position:relative}.l-hero:before{content:"";background:radial-gradient(60% 45% at 50% 38%, var(--glow), transparent 70%);pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0}.l-hero .logo{width:min(440px,82vw);filter:drop-shadow(0 0 60px var(--glow));animation:logo-in 1s var(--ease) both}.l-hero h1{font-family:var(--display);text-transform:uppercase;letter-spacing:.005em;animation:up .9s .15s var(--ease) both;margin:28px 0 0;font-size:clamp(56px,13vw,132px);font-weight:400;line-height:.86}.l-hero h1 .o{color:#0000;background:var(--hot);-webkit-background-clip:text;background-clip:text}.l-hero p{max-width:520px;color:var(--muted);animation:up .9s .25s var(--ease) both;margin:20px auto 0;font-size:17px}.l-hero .cta{animation:up .9s .35s var(--ease) both;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:30px;display:flex}@keyframes logo-in{0%{opacity:0;filter:blur(8px);transform:scale(.94)}}@keyframes up{0%{opacity:0;transform:translateY(18px)}}.marquee{border-top:1px solid var(--line);border-bottom:1px solid var(--line);white-space:nowrap;padding:18px 0;overflow:hidden}.marquee div{font-family:var(--display);letter-spacing:.02em;font-size:40px;animation:38s linear infinite marquee;display:inline-block}.marquee span{margin:0 26px}.marquee span.o{-webkit-text-stroke:1px var(--accent);color:#0000}@keyframes marquee{to{transform:translate(-50%)}}.l-section{max-width:1120px;margin:0 auto;padding:96px 20px}.l-section .h-sec{font-family:var(--display);text-transform:uppercase;margin:14px 0 0;font-size:clamp(48px,9vw,96px);line-height:.88}.steps{gap:14px;margin-top:44px;display:grid}@media (min-width:860px){.steps{grid-template-columns:repeat(3,1fr)}}.step{border:1px solid var(--line);background:var(--surface);border-radius:28px;flex-direction:column;min-height:240px;padding:26px;display:flex}.step .num{font-family:var(--mono);color:var(--faint);font-size:13px}.step h3{font-family:var(--display);text-transform:uppercase;margin:auto 0 10px;font-size:40px;font-weight:400;line-height:.9}.step p{color:var(--muted);margin:0;font-size:15px}.showcase{gap:14px;margin-top:44px;display:grid}@media (min-width:860px){.showcase{grid-template-columns:1.1fr 1fr}}.show-figs{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.show-figs .fig{border:1px solid var(--line)}.feature-list{flex-direction:column;display:flex}.feature-list>div{border-bottom:1px solid var(--line);gap:16px;padding:20px 0;display:flex}.feature-list>div:first-child{padding-top:4px}.feature-list .k{font-family:var(--mono);color:var(--faint);flex:none;width:28px;padding-top:3px;font-size:13px}.feature-list h4{letter-spacing:-.01em;margin:0 0 4px;font-size:18px}.feature-list p{color:var(--muted);margin:0;font-size:15px}.big-cta{text-align:center;border:1px solid var(--line-2);background:radial-gradient(80% 120% at 50% 0%, var(--glow), transparent 60%), var(--surface);border-radius:36px;padding:64px 22px}.l-foot{border-top:1px solid var(--line);padding:28px 20px calc(28px + var(--safe-b));color:var(--faint);flex-wrap:wrap;justify-content:space-between;gap:12px;max-width:1120px;margin:0 auto;font-size:13px;display:flex}.reveal-on .reveal{opacity:0;transition:opacity .8s var(--ease), transform .8s var(--ease);transform:translateY(24px)}.reveal-on .reveal.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.reveal-on .reveal{opacity:1;transition:none;transform:none}}.auth{min-height:100dvh;padding:calc(var(--safe-t) + 24px) 20px calc(var(--safe-b) + 24px);place-items:center;display:grid}.auth-box{width:100%;max-width:420px}.auth-box .logo{width:150px;margin:0 auto 26px}.auth-box h1{font-family:var(--display);text-transform:uppercase;text-align:center;margin:0 0 8px;font-size:52px;font-weight:400;line-height:.9}.auth-box .sub{color:var(--muted);text-align:center;margin:0 0 28px}.auth-switch{text-align:center;color:var(--muted);margin-top:22px;font-size:14px}.legal{max-width:720px;padding:calc(var(--safe-t) + 28px) 20px calc(var(--safe-b) + 48px);margin:0 auto}.legal .logo{margin-bottom:22px;display:block}.legal h2{margin:30px 0 8px;font-size:18px}.legal p,.legal li{color:var(--muted)}.legal ul,.legal ol{margin:0;padding-left:20px}.legal li+li{margin-top:6px}.legal a,.l-foot a{color:inherit;text-underline-offset:3px;text-decoration:underline}.made-by{color:var(--faint);padding:6px 0;font-size:13px;display:inline-block;text-decoration:none!important}.made-by strong{color:var(--muted);font-weight:600;transition:color .15s}.made-by:hover strong{color:var(--accent)}.made-by:focus-visible strong{color:var(--accent)}.auth-credit{text-align:center;margin:22px auto calc(6px + var(--safe-b));display:block}.auth-switch a{color:var(--link);text-underline-offset:3px;font-weight:600;text-decoration:underline}.table{width:100%}.client-row{grid-template-columns:40px 1fr auto;align-items:center;gap:14px;padding:14px 18px;display:grid}.client-row:hover{background:var(--surface-2)}.avatar{background:var(--surface-3);border:1px solid var(--line);border-radius:50%;flex:none;place-items:center;width:40px;height:40px;font-size:14px;font-weight:600;display:grid}.avatar.lg{width:64px;height:64px;font-size:22px}.cols{grid-template-columns:minmax(0,1fr);gap:14px;display:grid}.cols>*,.item-nums>*{min-width:0}@media (min-width:960px){.cols.two{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:start}}.day-block{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.day-block .day-head{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:12px 12px 12px 16px;display:flex}.day-block .day-head .input{background:0 0;border-color:#0000;height:42px;padding:0 8px;font-weight:600}.day-block .day-head .input:focus{border-color:var(--line-2)}.item-edit{grid-template-columns:minmax(0,1fr);gap:10px;padding:12px 14px;display:grid}.item-edit .icon-btn{flex:none;width:36px;height:36px}.item-edit+.item-edit{border-top:1px solid var(--line)}.item-nums{grid-template-columns:minmax(0,.8fr) minmax(0,1.9fr) minmax(0,1fr);gap:8px;display:grid}.item-nums label{color:var(--faint);text-transform:uppercase;letter-spacing:.06em;text-align:center;margin-bottom:4px;font-size:11px;display:block}.picker-list{max-height:56dvh;margin:0 -20px;overflow:auto}.picker-list .list-row{min-height:0;padding:10px 20px}.reset-card{background:linear-gradient(180deg, var(--gold-soft), transparent 70%), var(--surface);border-color:#ffb54766}.temp-pass{font-family:var(--mono);letter-spacing:.12em;border-radius:var(--radius-sm);background:var(--surface-2);border:1px dashed var(--line-2);padding:10px 14px;font-size:20px}.notify-card{align-items:flex-start;gap:14px;margin-bottom:14px;display:flex}.notify-icon{background:var(--surface-2);width:40px;height:40px;color:var(--accent);border-radius:12px;flex:none;place-items:center;display:grid}.weekday-pick{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.weekday-pick .chip{justify-content:center;padding-inline-start:0;padding-inline-end:0}.theme-pick{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.theme-pick .chip{justify-content:center;padding-inline-start:8px;padding-inline-end:8px}
