:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f3f2ef;--surface:#fcfcfb;--text:#0b0b0b;--text-2:#52514e;--muted:#7a7973;--line:#dddcd7;--accent:#2a78d6;--accent-ink:#fff;--test:#b45309;--danger:#c0302f;--series-1:#2a78d6;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.4}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#111110;--surface:#1a1a19;--text:#f0efec;--text-2:#c3c2b7;--muted:#8f8e86;--line:#2e2e2c;--accent:#3987e5;--test:#f59e0b;--danger:#e66767;--series-1:#3987e5}}*{box-sizing:border-box}body{margin:0}header,nav,main{max-width:720px;margin:0 auto;padding:0 12px}header{align-items:center;gap:12px;padding-top:12px;display:flex}h1{letter-spacing:.02em;margin:0;font-size:1.25rem}h2{margin:0 0 4px;font-size:1.1rem}.banner{aspect-ratio:16/6;object-fit:cover;background:#14213d;border-radius:11px 11px 0 0;width:calc(100% + 28px);margin:-14px -14px 14px;display:block}.banner.hero{aspect-ratio:16/9}.empty-art{aspect-ratio:1;border-radius:16px;width:min(240px,60vw);margin:0 auto 12px;display:block}.logo{border-radius:7px;width:28px;height:28px;margin-right:-4px}.who{color:var(--text-2);font-weight:600}.login{max-width:360px;margin:10vh auto 0;overflow:hidden}.login button.primary{width:100%}.notice{border-top:1px solid var(--line);margin-top:14px;padding-top:4px}.saving{color:var(--muted);margin-left:auto;font-size:.8rem}nav{background:var(--bg);z-index:2;gap:4px;margin-top:10px;padding-top:4px;padding-bottom:8px;display:flex;position:sticky;top:0;overflow-x:auto}nav button{white-space:nowrap;border-radius:8px;flex:1}nav button.active{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}button,select,input{font:inherit;color:inherit;background:var(--surface);border:1px solid var(--line);border-radius:6px;min-height:44px;padding:8px 12px}button{cursor:pointer}button:disabled{opacity:.5;cursor:default}button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:600}button.danger{color:var(--danger)}button.link{color:var(--accent);background:0 0;border:none;min-height:32px;padding:4px 0}label{color:var(--text-2);flex-direction:column;gap:4px;margin:12px 0;font-size:.9rem;display:flex}label>input,label>select{color:var(--text);font-size:1rem}.card{background:var(--surface);border:1px solid var(--line);border-radius:12px;margin:12px 0;padding:14px}.card>select{width:100%;margin-bottom:12px}.card-head{flex-wrap:wrap;align-items:baseline;column-gap:10px;display:flex}.card-title{align-items:center;gap:12px;display:flex}.ex-icon{border-radius:10px;flex-shrink:0;width:56px;height:56px}.muted{color:var(--muted);font-weight:400}.small{font-size:.85rem}.error{background:color-mix(in srgb, var(--danger) 15%, var(--surface));border:1px solid var(--danger);border-radius:8px;max-width:696px;margin:8px auto;padding:10px 12px}.empty,.loading{text-align:center;color:var(--muted);padding:40px 0}.weeks{flex-wrap:wrap;gap:3px;margin:10px 0;padding:0;list-style:none;display:flex}.weeks li{border:1px solid var(--line);font-variant-numeric:tabular-nums;border-radius:6px;flex-direction:column;align-items:center;min-width:38px;padding:2px 4px;display:flex}.weeks .wk{color:var(--muted);font-size:.7rem}.weeks .sc{min-height:1.2em;font-size:.9rem}.weeks li.current{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.weeks li.skipped .sc{color:var(--muted)}.nowrap{white-space:nowrap}.history tr.cycle td{border-bottom:none;padding-bottom:0}.history tr.cycle-weeks .weeks{margin:4px 0 2px}.history .weeks li{min-width:34px}.plan{border-top:1px solid var(--line);padding-top:10px}.plan-week{color:var(--text-2);align-items:baseline;gap:10px;display:flex}.plan-week strong{color:var(--text);font-size:1.1rem}.plan-week strong.test{color:var(--test)}.plan-kg{font-variant-numeric:tabular-nums;margin-top:6px;font-size:2.6rem;font-weight:700;line-height:1.1}.plan-plates{color:var(--text-2);margin-bottom:4px}.entry{gap:8px;margin-top:12px;display:flex}.entry input{text-align:right;width:6.5em;font-size:1.2rem}.card-actions{flex-wrap:wrap;column-gap:18px;margin-top:8px;display:flex}.card-actions button{white-space:nowrap}.settings{border-top:1px solid var(--line);margin-top:8px}.row{flex-wrap:wrap;gap:8px;display:flex}.program-preview li{white-space:nowrap}.program-preview{columns:2 16em;margin:4px 0 0;padding-left:0;font-size:.9rem;list-style:none}table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:6px 4px}th{color:var(--muted);font-size:.8rem;font-weight:600}.num{text-align:right;white-space:nowrap}tr.group th{color:var(--text-2);text-transform:uppercase;letter-spacing:.05em;padding-top:14px;font-size:.85rem}tr.group .group-icon{vertical-align:middle;border-radius:6px;width:32px;height:32px;margin-right:8px}tr.clickable{cursor:pointer}tr.clickable:hover td{background:color-mix(in srgb, var(--accent) 8%, transparent)}.badge{color:var(--accent);margin-left:6px;font-size:.75rem}.viz{margin:8px 0 16px;position:relative}.viz svg{touch-action:pan-y;width:100%;height:auto;display:block}.viz .grid{stroke:var(--line);stroke-width:1px}.viz .tick{fill:var(--muted);font-size:11px}.viz .line{fill:none;stroke:var(--series-1);stroke-width:2px;stroke-linejoin:round}.viz .dot{fill:var(--series-1);stroke:var(--surface);stroke-width:2px}.viz .crosshair{stroke:var(--muted);stroke-width:1px;stroke-dasharray:3 3}.viz .tooltip{background:var(--surface);border:1px solid var(--line);pointer-events:none;white-space:nowrap;border-radius:6px;flex-direction:column;padding:4px 8px;font-size:.85rem;display:flex;position:absolute;top:0;transform:translate(-50%);box-shadow:0 2px 8px #00000026}.viz figcaption{margin-top:2px}.picker-title{color:var(--text-2);align-items:center;gap:12px;margin:12px 0 8px;font-size:.9rem;display:flex}.picker-title span{color:var(--text);font-weight:600}.tiles{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;margin:0 0 12px;padding:0;list-style:none;display:grid}.tiles button{text-align:center;border-radius:10px;flex-direction:column;align-items:center;gap:2px;width:100%;height:100%;padding:6px;line-height:1.2;display:flex}.tiles button:hover,.tiles button:focus-visible{border-color:var(--accent)}.tiles .badge{margin:0}.tile-art{aspect-ratio:1;object-fit:cover;color:#c3c2b7;background:#14213d;border-radius:8px;place-items:center;width:100%;margin-bottom:4px;font-size:1.3rem;font-weight:700;display:grid}.tile-name{font-size:.85rem}.picked{align-items:center;gap:12px;margin:12px 0;display:flex}.picked .tile-art{flex-shrink:0;width:64px;margin:0}.picked>div{flex:1}.plan-week .timer-open{border-color:var(--accent);min-height:36px;color:var(--accent);margin-left:auto;padding:4px 12px;font-weight:600}.timer{z-index:10;background:var(--bg);max-width:720px;padding:12px 16px calc(16px + env(safe-area-inset-bottom));flex-direction:column;margin:0 auto;display:flex;position:fixed;inset:0}.timer-head{align-items:center;gap:12px;display:flex}.timer-title{flex:1}.timer-art{aspect-ratio:1;border-radius:16px;width:min(55vw,240px);margin-bottom:8px}.timer-body{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;display:flex}.timer-phase{text-transform:uppercase;letter-spacing:.06em;font-size:1.6rem;font-weight:700}.timer-phase.lift,.timer-big.lift{color:var(--accent)}.timer-phase.rest{color:var(--text-2)}.timer-big{font-variant-numeric:tabular-nums;font-size:min(36vw,11rem);font-weight:700;line-height:1}.timer-rep{min-height:1.4em;font-size:1.4rem;font-weight:600}.timer-bar{background:var(--line);border-radius:4px;width:100%;height:8px;margin:8px 0 16px;overflow:hidden}.timer-bar>div{background:var(--accent);height:100%;transition:width .1s linear}.timer-main{width:100%;max-width:360px;min-height:64px;font-size:1.3rem}.timer-row{justify-content:center;width:100%;max-width:360px}.timer-row button{flex:1}.howto h3{text-transform:uppercase;letter-spacing:.05em;color:var(--text-2);margin:12px 0 4px;font-size:.85rem}.howto ol,.howto ul{margin:0 0 4px;padding-left:1.3em}.howto li{margin:3px 0}.adjust{color:var(--text-2);font-variant-numeric:tabular-nums;align-items:center;gap:12px;margin-top:8px;display:flex}.adjust button{min-width:44px;min-height:40px;font-size:1.3rem;line-height:1}.card-actions-end{column-gap:18px;margin-left:auto;display:flex}.card-actions button.end{color:var(--test)}.card-actions button.danger{color:var(--danger)}
