@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-B2xhLi22.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-CMZtQduZ.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-CGAr0uHJ.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CaVNZxsx.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-CFHvXkgd.woff2) format("woff2-variations");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-C2S99t-D.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Saira;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/saira-vietnamese-700-normal-CGN20Pz1.woff2) format("woff2"),url(/assets/saira-vietnamese-700-normal-hoMYUsWB.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Saira;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/saira-latin-ext-700-normal-Dob8CXW3.woff2) format("woff2"),url(/assets/saira-latin-ext-700-normal-DcH4HMht.woff) format("woff");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Saira;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/saira-latin-700-normal-pPwF8tW_.woff2) format("woff2"),url(/assets/saira-latin-700-normal-CCC9TRaI.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Saira;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/saira-vietnamese-800-normal-B80jjlBU.woff2) format("woff2"),url(/assets/saira-vietnamese-800-normal--a5wN7D1.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Saira;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/saira-latin-ext-800-normal-DqswdTLa.woff2) format("woff2"),url(/assets/saira-latin-ext-800-normal-BFW2hobd.woff) format("woff");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Saira;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/saira-latin-800-normal-BGlKZe67.woff2) format("woff2"),url(/assets/saira-latin-800-normal-7-0Fj3_q.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Saira;font-style:italic;font-display:swap;font-weight:700;src:url(/assets/saira-vietnamese-700-italic-Bkt88A2M.woff2) format("woff2"),url(/assets/saira-vietnamese-700-italic-BrwdPV1G.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Saira;font-style:italic;font-display:swap;font-weight:700;src:url(/assets/saira-latin-ext-700-italic-BvI1KAjz.woff2) format("woff2"),url(/assets/saira-latin-ext-700-italic-DeHF9Mq1.woff) format("woff");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Saira;font-style:italic;font-display:swap;font-weight:700;src:url(/assets/saira-latin-700-italic-8fIMttPW.woff2) format("woff2"),url(/assets/saira-latin-700-italic-CdXOg4r8.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Saira;font-style:italic;font-display:swap;font-weight:800;src:url(/assets/saira-vietnamese-800-italic-Cobgi1c2.woff2) format("woff2"),url(/assets/saira-vietnamese-800-italic-bTsNMhMg.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Saira;font-style:italic;font-display:swap;font-weight:800;src:url(/assets/saira-latin-ext-800-italic-2z9WwMfv.woff2) format("woff2"),url(/assets/saira-latin-ext-800-italic-DxuUtlCc.woff) format("woff");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Saira;font-style:italic;font-display:swap;font-weight:800;src:url(/assets/saira-latin-800-italic-Cvh_Ftq7.woff2) format("woff2"),url(/assets/saira-latin-800-italic-wGuyKhO1.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--tg-green-50: #F1FDE9;--tg-green-100: #DDFAC9;--tg-green-200: #BCF396;--tg-green-300: #8FE85B;--tg-green-400: #5FDD26;--tg-green-500: #34D606;--tg-green-600: #29AD05;--tg-green-700: #1F8205;--tg-green-800: #1A6508;--tg-green-900: #17530C;--tg-green-950: #0A2E03;--tg-ink-0: #FFFFFF;--tg-ink-50: #F5F7F5;--tg-ink-100: #EBEEEC;--tg-ink-200: #D7DCD9;--tg-ink-300: #B5BCB8;--tg-ink-400: #8A928E;--tg-ink-500: #646C68;--tg-ink-600: #4A514D;--tg-ink-700: #333937;--tg-ink-800: #222725;--tg-ink-850: #181C1A;--tg-ink-900: #101312;--tg-ink-950: #050606;--tg-bg: #F5F7F5;--tg-surface: #FFFFFF;--tg-surface-2: #EBEEEC;--tg-surface-inverse: #050606;--tg-line: #D7DCD9;--tg-line-strong: #8A928E;--tg-fg: #050606;--tg-fg-muted: #4A514D;--tg-fg-subtle: #646C68;--tg-fg-inverse: #F5F7F5;--tg-primary: #34D606;--tg-primary-hover: #29AD05;--tg-on-primary: #050606;--tg-primary-text: #1F8205;--tg-primary-soft: #DDFAC9;--tg-on-primary-soft: #1A6508;--tg-focus: #1F8205;--tg-warning: #F5A524;--tg-warning-text: #8A5300;--tg-warning-soft: #FFF1D6;--tg-danger: #B4232A;--tg-danger-soft: #FDE4E5;--tg-on-danger: #FFFFFF;--tg-info: #1D5FC0;--tg-info-soft: #E3EEFD;--tg-scrim: rgba(5,6,6,.56);--tg-font-display: "Saira", "Arial Narrow", system-ui, sans-serif;--tg-font-sans: "Inter", "Segoe UI", system-ui, sans-serif;--tg-font-mono: "JetBrains Mono", ui-monospace, monospace;--tg-text-display: italic 800 40px/44px var(--tg-font-display);--tg-text-timer: 700 88px/88px var(--tg-font-display);--tg-text-metric: 700 32px/36px var(--tg-font-display);--tg-text-h1: 700 28px/34px var(--tg-font-display);--tg-text-h2: 700 22px/28px var(--tg-font-display);--tg-text-button: 700 17px/20px var(--tg-font-display);--tg-text-h3: 600 18px/24px var(--tg-font-sans);--tg-text-body: 400 16px/24px var(--tg-font-sans);--tg-text-body-strong: 600 16px/24px var(--tg-font-sans);--tg-text-body-sm: 400 14px/20px var(--tg-font-sans);--tg-text-label: 500 14px/20px var(--tg-font-sans);--tg-text-overline: 600 12px/16px var(--tg-font-sans);--tg-space-1: 4px;--tg-space-2: 8px;--tg-space-3: 12px;--tg-space-4: 16px;--tg-space-5: 20px;--tg-space-6: 24px;--tg-space-8: 32px;--tg-space-10: 40px;--tg-space-12: 48px;--tg-space-14: 56px;--tg-space-16: 64px;--tg-radius-xs: 4px;--tg-radius-sm: 8px;--tg-radius-md: 12px;--tg-radius-lg: 16px;--tg-radius-xl: 24px;--tg-radius-full: 999px;--tg-shadow-sm: 0 1px 2px rgba(5,6,6,.08);--tg-shadow-md: 0 4px 16px rgba(5,6,6,.12);--tg-shadow-lg: 0 12px 32px rgba(5,6,6,.18);--tg-touch-min: 48px;--tg-touch-primary: 56px;--tg-content-max: 680px;--tg-coach-max: 1280px;--tg-skew: -12deg;--tg-ease: cubic-bezier(.2, 0, 0, 1);--tg-dur-fast: .12s;--tg-dur: .2s;--tg-dur-slow: .32s;color-scheme:light}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--tg-bg: #050606;--tg-surface: #101312;--tg-surface-2: #181C1A;--tg-surface-inverse: #F5F7F5;--tg-line: #2A302D;--tg-line-strong: #5B635F;--tg-fg: #F5F7F5;--tg-fg-muted: #A3ABA7;--tg-fg-subtle: #8A928E;--tg-fg-inverse: #050606;--tg-primary: #34D606;--tg-primary-hover: #5FDD26;--tg-on-primary: #050606;--tg-primary-text: #5FDD26;--tg-primary-soft: #12300A;--tg-on-primary-soft: #8FE85B;--tg-focus: #8FE85B;--tg-warning: #F5A524;--tg-warning-text: #F5B54A;--tg-warning-soft: #33240A;--tg-danger: #FF6B70;--tg-danger-soft: #3A1214;--tg-on-danger: #050606;--tg-info: #6AA8FF;--tg-info-soft: #0F2440;--tg-scrim: rgba(0,0,0,.72);--tg-shadow-sm: 0 1px 2px rgba(0,0,0,.5);--tg-shadow-md: 0 4px 16px rgba(0,0,0,.5);--tg-shadow-lg: 0 12px 32px rgba(0,0,0,.6);color-scheme:dark}}:root[data-theme=dark]{--tg-bg: #050606;--tg-surface: #101312;--tg-surface-2: #181C1A;--tg-surface-inverse: #F5F7F5;--tg-line: #2A302D;--tg-line-strong: #5B635F;--tg-fg: #F5F7F5;--tg-fg-muted: #A3ABA7;--tg-fg-subtle: #8A928E;--tg-fg-inverse: #050606;--tg-primary: #34D606;--tg-primary-hover: #5FDD26;--tg-on-primary: #050606;--tg-primary-text: #5FDD26;--tg-primary-soft: #12300A;--tg-on-primary-soft: #8FE85B;--tg-focus: #8FE85B;--tg-warning: #F5A524;--tg-warning-text: #F5B54A;--tg-warning-soft: #33240A;--tg-danger: #FF6B70;--tg-danger-soft: #3A1214;--tg-on-danger: #050606;--tg-info: #6AA8FF;--tg-info-soft: #0F2440;--tg-scrim: rgba(0,0,0,.72);--tg-shadow-sm: 0 1px 2px rgba(0,0,0,.5);--tg-shadow-md: 0 4px 16px rgba(0,0,0,.5);--tg-shadow-lg: 0 12px 32px rgba(0,0,0,.6);color-scheme:dark}@media (prefers-reduced-motion: reduce){:root{--tg-dur-fast: 0ms;--tg-dur: 0ms;--tg-dur-slow: 0ms}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--tg-bg);color:var(--tg-fg);font:var(--tg-text-body);-webkit-font-smoothing:antialiased}h1,h2,h3,h4,p{margin:0}a{color:var(--tg-primary-text)}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--tg-focus);outline-offset:2px}img{max-width:100%;display:block}.app{min-height:100dvh;display:flex;flex-direction:column}.main{flex:1;width:100%;max-width:var(--tg-content-max);margin:0 auto;padding:16px 16px 112px;display:flex;flex-direction:column;gap:20px}.main.wide{max-width:var(--tg-coach-max)}.main.center{justify-content:center;min-height:100dvh;padding-bottom:40px}.topbar{position:sticky;top:0;z-index:30;background:color-mix(in srgb,var(--tg-bg) 92%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--tg-line)}.topbar-in{max-width:var(--tg-coach-max);margin:0 auto;height:56px;padding:0 12px;display:flex;align-items:center;gap:8px}.topbar .logo{width:104px;color:var(--tg-fg)}.topbar .title{font:var(--tg-text-h3);flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar .spacer{flex:1}.topnav{display:none;gap:2px}.topnav a{padding:8px 12px;border-radius:8px;color:var(--tg-fg-muted);text-decoration:none;font:var(--tg-text-label)}.topnav a.active{background:var(--tg-surface-2);color:var(--tg-fg);font-weight:600}@media (min-width:880px){.topnav{display:flex}.bottomnav{display:none!important}.main{padding-bottom:48px}}.bottomnav{position:fixed;left:0;right:0;bottom:0;z-index:30;background:var(--tg-surface);border-top:1px solid var(--tg-line);display:grid;grid-auto-flow:column;grid-auto-columns:1fr;padding:6px 4px calc(8px + env(safe-area-inset-bottom))}.bottomnav a{display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 0;text-decoration:none;color:var(--tg-fg-subtle);font:600 11px/1 var(--tg-font-sans);min-height:48px;justify-content:center}.bottomnav a.active{color:var(--tg-primary-text)}.bottomnav svg{width:22px;height:22px}.h1{font:var(--tg-text-h1)}.h2{font:var(--tg-text-h2)}.h3{font:var(--tg-text-h3)}.display{font:var(--tg-text-display);text-transform:uppercase}.ov{font:var(--tg-text-overline);text-transform:uppercase;letter-spacing:.08em;color:var(--tg-fg-muted)}.muted{color:var(--tg-fg-muted)}.small{font:var(--tg-text-body-sm)}.go{color:var(--tg-primary-text)}.danger-text{color:var(--tg-danger)}.stack{display:flex;flex-direction:column;gap:12px}.stack-lg{display:flex;flex-direction:column;gap:20px}.row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.between{display:flex;align-items:center;justify-content:space-between;gap:10px}.grid2{display:grid;gap:12px}@media (min-width:640px){.grid2{grid-template-columns:1fr 1fr}}.grid3{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}hr.sep{border:0;border-top:1px solid var(--tg-line);margin:4px 0}.card{background:var(--tg-surface);border:1px solid var(--tg-line);border-radius:var(--tg-radius-lg);padding:16px;display:flex;flex-direction:column;gap:10px}.card.click{cursor:pointer;text-decoration:none;color:inherit;transition:border-color var(--tg-dur-fast)}.card.click:hover{border-color:var(--tg-line-strong)}.card.inverse{background:#050606;color:#f5f7f5;border-color:#2a302d;position:relative;overflow:hidden}.card.inverse .ov,.card.inverse .muted{color:#a3aba7}.slash{position:absolute;right:-40px;top:-30px;width:96px;height:200px;background:var(--tg-green-500);transform:skew(var(--tg-skew))}.card.inverse>*:not(.slash){position:relative}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--tg-touch-min);padding:0 18px;border:0;border-radius:var(--tg-radius-md);font:var(--tg-text-button);letter-spacing:.02em;cursor:pointer;text-decoration:none;transition:background var(--tg-dur-fast) var(--tg-ease),transform var(--tg-dur-fast);white-space:nowrap}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.lg{min-height:var(--tg-touch-primary);padding:0 24px;font-size:18px}.btn.block{display:flex;width:100%}.btn.sm{min-height:36px;padding:0 12px;font-size:14px}.btn.primary{background:var(--tg-primary);color:var(--tg-on-primary)}.btn.primary:hover:not(:disabled){background:var(--tg-primary-hover)}.btn.secondary{background:var(--tg-surface);color:var(--tg-fg);box-shadow:inset 0 0 0 1.5px var(--tg-line-strong)}.btn.secondary:hover:not(:disabled){background:var(--tg-surface-2)}.btn.ghost{background:transparent;color:var(--tg-fg)}.btn.ghost:hover:not(:disabled){background:var(--tg-surface-2)}.btn.danger{background:var(--tg-danger);color:var(--tg-on-danger)}.btn svg{width:20px;height:20px;flex:none}.iconbtn{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:12px;border:0;background:transparent;color:var(--tg-fg);cursor:pointer}.iconbtn:hover{background:var(--tg-surface-2)}.iconbtn svg{width:22px;height:22px}.field{display:flex;flex-direction:column;gap:6px}.field>label,.field>.lbl{font:var(--tg-text-label)}.field input:not([type=checkbox]):not([type=radio]),.field select,.field textarea{background:var(--tg-surface);border:1.5px solid var(--tg-line-strong);border-radius:var(--tg-radius-sm);min-height:48px;padding:10px 14px;width:100%;font:var(--tg-text-body)}.field textarea{min-height:90px;resize:vertical}.field .help{font:var(--tg-text-body-sm);color:var(--tg-fg-muted)}.field .err{font:var(--tg-text-body-sm);color:var(--tg-danger)}.field.invalid input,.field.invalid select{border-color:var(--tg-danger)}.check{display:flex;gap:12px;align-items:flex-start;padding:12px;border-radius:12px;border:1.5px solid var(--tg-line);cursor:pointer;background:var(--tg-surface)}.check input{width:22px;height:22px;margin:1px 0 0;accent-color:var(--tg-green-600);flex:none}.check.on{border-color:var(--tg-primary-text);background:var(--tg-primary-soft)}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 14px;border-radius:999px;background:var(--tg-surface-2);border:1.5px solid transparent;font:var(--tg-text-label);cursor:pointer;color:var(--tg-fg)}.chip.on{background:var(--tg-primary-soft);color:var(--tg-on-primary-soft);border-color:var(--tg-primary-text);font-weight:600}.opts{display:grid;gap:10px}.opt{display:flex;flex-direction:column;gap:4px;text-align:left;padding:14px 16px;border-radius:var(--tg-radius-md);border:1.5px solid var(--tg-line-strong);background:var(--tg-surface);cursor:pointer}.opt b{font:var(--tg-text-body-strong)}.opt span{font:var(--tg-text-body-sm);color:var(--tg-fg-muted)}.opt.on{border-color:var(--tg-primary-text);background:var(--tg-primary-soft)}.opt.on span{color:var(--tg-on-primary-soft)}.yn{display:grid;grid-template-columns:1fr 1fr;gap:8px}.yn button{min-height:48px;border-radius:12px;border:0;box-shadow:inset 0 0 0 1.5px var(--tg-line-strong);background:var(--tg-surface);font:var(--tg-text-button);cursor:pointer}.yn button.on{background:var(--tg-fg);color:var(--tg-bg);box-shadow:none}.week-pick{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.week-pick button{min-height:48px;border-radius:10px;border:0;background:var(--tg-surface-2);font:700 15px var(--tg-font-display);cursor:pointer;color:var(--tg-fg)}.week-pick button.on{background:var(--tg-primary);color:var(--tg-on-primary)}.stepper{display:inline-flex;align-items:center;border:1.5px solid var(--tg-line-strong);border-radius:12px;background:var(--tg-surface)}.stepper button{width:48px;height:48px;border:0;background:transparent;font:700 22px/1 var(--tg-font-display);cursor:pointer;border-radius:12px;color:var(--tg-fg)}.stepper button:hover{background:var(--tg-surface-2)}.stepper output{min-width:56px;text-align:center;font:700 22px/1 var(--tg-font-display);font-variant-numeric:tabular-nums}.badge{display:inline-flex;align-items:center;height:24px;padding:0 10px;border-radius:4px;font:600 12px/1 var(--tg-font-sans);transform:skew(var(--tg-skew));white-space:nowrap}.badge>span{transform:skew(calc(-1*var(--tg-skew)))}.badge.ok{background:var(--tg-primary);color:var(--tg-on-primary)}.badge.warn{background:var(--tg-warning);color:#050606}.badge.bad{background:var(--tg-danger);color:var(--tg-on-danger)}.badge.info{background:var(--tg-info-soft);color:var(--tg-info)}.badge.neutral{background:var(--tg-surface-2);color:var(--tg-fg-muted)}.alert{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border-radius:var(--tg-radius-md);background:var(--tg-info-soft);font:var(--tg-text-body-sm)}.alert svg{flex:none;width:20px;height:20px;color:var(--tg-info);margin-top:1px}.alert b{display:block;font-weight:600;margin-bottom:2px}.alert.warn{background:var(--tg-warning-soft)}.alert.warn svg{color:var(--tg-warning-text)}.alert.bad{background:var(--tg-danger-soft)}.alert.bad svg{color:var(--tg-danger)}.alert.ok{background:var(--tg-primary-soft)}.alert.ok svg{color:var(--tg-on-primary-soft)}.progress{height:10px;background:var(--tg-surface-2);border-radius:2px;overflow:hidden;transform:skew(var(--tg-skew))}.progress i{display:block;height:100%;background:var(--tg-primary);transition:width var(--tg-dur) var(--tg-ease)}.week{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.day{border-radius:10px;padding:8px 0;text-align:center;background:var(--tg-surface-2);font:var(--tg-text-body-sm);color:var(--tg-fg-muted);display:flex;flex-direction:column;gap:2px;border:0;cursor:pointer}.day b{font:700 16px/1.2 var(--tg-font-display);color:var(--tg-fg)}.day.done{background:var(--tg-primary-soft);color:var(--tg-on-primary-soft)}.day.done b{color:var(--tg-on-primary-soft)}.day.today{background:var(--tg-fg);color:var(--tg-bg)}.day.today b{color:var(--tg-bg)}.day.sel{outline:2px solid var(--tg-primary-text);outline-offset:1px}.lo-head{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:12px;background:var(--tg-surface-2)}.lo-head svg{width:88px;height:28px;flex:none}.lo-head b{font:700 16px/20px var(--tg-font-display);display:block}.ex-row{display:flex;gap:12px;align-items:flex-start;padding:12px 0;border-bottom:1px solid var(--tg-line);text-decoration:none;color:inherit}.ex-row:last-child{border-bottom:0}.ex-row .thumb{width:64px;height:48px;border-radius:8px;object-fit:cover;background:var(--tg-surface-2);flex:none}.ex-row b{font:var(--tg-text-body-strong);display:block}.ex-row .meta{font:var(--tg-text-body-sm);color:var(--tg-fg-muted)}.kpis{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}.kpi{background:var(--tg-surface);border:1px solid var(--tg-line);border-radius:12px;padding:12px}.kpi small{font:var(--tg-text-body-sm);color:var(--tg-fg-muted);display:block}.kpi b{font:var(--tg-text-metric)}.kpi.al b{color:var(--tg-danger)}.table{width:100%;border-collapse:collapse;background:var(--tg-surface);border:1px solid var(--tg-line);border-radius:12px;overflow:hidden;font:var(--tg-text-body-sm)}.table th{text-align:left;font:var(--tg-text-overline);text-transform:uppercase;letter-spacing:.08em;color:var(--tg-fg-muted);padding:10px 12px;background:var(--tg-surface-2);border-bottom:1px solid var(--tg-line)}.table td{padding:10px 12px;border-bottom:1px solid var(--tg-line);vertical-align:middle}.table tr:last-child td{border-bottom:0}.tablewrap{overflow-x:auto;border-radius:12px}.spinner{width:28px;height:28px;border-radius:50%;border:3px solid var(--tg-surface-2);border-top-color:var(--tg-primary);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.center-box{display:grid;place-items:center;gap:14px;padding:40px 0;text-align:center}.banner{position:sticky;top:56px;z-index:25;padding:8px 16px;text-align:center;font:var(--tg-text-body-sm);background:var(--tg-warning-soft);color:var(--tg-fg)}.tabs{display:flex;gap:4px;background:var(--tg-surface-2);border-radius:12px;padding:4px;overflow-x:auto}.tabs button{flex:1;min-height:40px;border:0;border-radius:9px;background:transparent;font:var(--tg-text-label);color:var(--tg-fg-muted);cursor:pointer;white-space:nowrap;padding:0 12px}.tabs button.on{background:var(--tg-surface);color:var(--tg-fg);font-weight:600;box-shadow:var(--tg-shadow-sm)}.sheet-back{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--tg-scrim);z-index:60;display:flex;align-items:flex-end;justify-content:center}.sheet{background:var(--tg-surface);width:100%;max-width:560px;border-radius:24px 24px 0 0;padding:20px 16px calc(20px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:14px;max-height:90dvh;overflow:auto}@media (min-width:640px){.sheet-back{align-items:center}.sheet{border-radius:24px}}.prose{display:flex;flex-direction:column;gap:12px}.prose h2{font:var(--tg-text-h2);margin-top:12px}.prose h3{font:var(--tg-text-h3);margin-top:8px}.prose p,.prose li{color:var(--tg-fg)}.prose ul{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:6px}.player{min-height:100dvh;background:#050606;color:#f5f7f5;display:flex;flex-direction:column;--tg-fg:#F5F7F5;--tg-fg-muted:#A3ABA7;--tg-fg-subtle:#8A928E;--tg-bg:#050606;--tg-surface:#101312;--tg-surface-2:#181C1A;--tg-line:#2A302D;--tg-line-strong:#5B635F;--tg-primary-text:#5FDD26;--tg-primary-soft:#12300A;--tg-on-primary-soft:#8FE85B;--tg-warning-soft:#33240A;--tg-warning-text:#F5B54A;--tg-danger:#FF6B70;--tg-danger-soft:#3A1214;--tg-on-danger:#050606;--tg-info-soft:#0F2440;--tg-info:#6AA8FF;--tg-focus:#8FE85B;color-scheme:dark}.player-in{flex:1;width:100%;max-width:560px;margin:0 auto;padding:12px 16px calc(16px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:14px}.player .topline{display:flex;justify-content:space-between;align-items:center;font:600 13px/1 var(--tg-font-sans);color:#a3aba7}.player .topline b{font:700 16px var(--tg-font-display);color:#f5f7f5;font-variant-numeric:tabular-nums}.pills{display:flex;gap:6px;flex-wrap:wrap}.pill{width:40px;height:40px;border-radius:8px;display:grid;place-items:center;font:700 16px/1 var(--tg-font-display);background:var(--tg-surface-2);color:var(--tg-fg-muted);border:0}.pill.done{background:var(--tg-primary);color:var(--tg-on-primary)}.pill.cur{background:var(--tg-surface);color:var(--tg-fg);box-shadow:inset 0 0 0 2px var(--tg-fg)}.kv{background:var(--tg-surface);border:1px solid var(--tg-line);border-radius:12px;padding:10px 12px;flex:1;min-width:90px}.kv small{display:block;font:var(--tg-text-overline);text-transform:uppercase;letter-spacing:.08em;color:var(--tg-fg-muted)}.kv b{font:700 20px/1.25 var(--tg-font-display)}.timer{font:var(--tg-text-timer);font-variant-numeric:tabular-nums;text-align:center;letter-spacing:-.02em;margin:12px 0}.ring{position:relative;width:min(240px,70vw);aspect-ratio:1;margin:0 auto}.ring svg{width:100%;height:100%;transform:rotate(-90deg)}.ring .t{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font:700 64px/1 var(--tg-font-display);font-variant-numeric:tabular-nums}.player .bottom{margin-top:auto;display:flex;flex-direction:column;gap:8px}.ex-img{width:100%;max-height:200px;object-fit:contain;border-radius:12px;background:#fff}.table input,.table select{min-height:38px;border:1.5px solid var(--tg-line-strong);border-radius:8px;padding:0 8px;background:var(--tg-surface);color:var(--tg-ink);font:inherit}
