:root{--bg: #f4f7ff;--panel: #ffffff;--panel-elevated: #ecf2ff;--primary: #1b2f64;--primary-strong: #13234d;--primary-soft: #dfe9ff;--text-primary: #132347;--text-secondary: #4b618f;--border: #c9d8f7;--muted: #6f83ad;--on-primary: #ffffff;--radius: 16px;--radius-lg: 20px}:root[data-theme=blue]{--bg: #f4f7ff;--panel: #ffffff;--panel-elevated: #ecf2ff;--primary: #1b2f64;--primary-strong: #13234d;--primary-soft: #dfe9ff;--text-primary: #132347;--text-secondary: #4b618f;--border: #c9d8f7;--muted: #6f83ad;--on-primary: #ffffff}:root[data-theme=dark]{--bg: #000000;--panel: #0b0b0b;--panel-elevated: #141414;--primary: #ffffff;--primary-strong: #e8e8e8;--primary-soft: #1f1f1f;--text-primary: #ffffff;--text-secondary: #cfcfcf;--border: #2e2e2e;--muted: #a7a7a7;--on-primary: #000000}:root[data-theme=pink]{--bg: #fff5fb;--panel: #ffffff;--panel-elevated: #ffe8f5;--primary: #b83280;--primary-strong: #97266d;--primary-soft: #ffd9ee;--text-primary: #661748;--text-secondary: #944b78;--border: #f3b8d9;--muted: #a7688e;--on-primary: #ffffff}:root[data-theme=dark] .btn-outline{background:#101010;color:#fff;border-color:#3a3a3a}:root[data-theme=dark] .btn-outline:hover{background:#191919;border-color:#4a4a4a}:root[data-theme=dark] .install-cta{background:#141414;color:#fff;border-color:#3a3a3a}:root[data-theme=dark] .drawer-nav a{background:#121212;color:#fff;border-color:#3a3a3a}:root[data-theme=dark] .day-scroll-controls{background:#0f0f0f;border-color:#353535}:root[data-theme=dark] .day-scroll-exercise{background:#0f0f0f;border-color:#353535}:root[data-theme=dark] .day-scroll-control{color:#d3d3d3}:root[data-theme=dark] .day-scroll-control input,:root[data-theme=dark] .day-scroll-control select{background:#121212;color:#fff;border-color:#3a3a3a}:root[data-theme=dark] .day-input-sets-header{color:#cdcdcd}:root[data-theme=dark] .day-input-row input{background:#141414;color:#fff;border-color:#3a3a3a}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text-primary);font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}h1,h2,h3{color:var(--primary);font-weight:600;letter-spacing:.5px;margin:0 0 8px}p{color:var(--text-secondary);line-height:1.5;margin:0}.card{width:100%;max-width:420px;margin:0 auto;margin-top:8vh;background:linear-gradient(180deg,var(--panel) 0%,#f8fbff 100%);border-radius:18px;padding:20px;box-shadow:0 16px 32px #10285926,0 0 0 1px #1b2f6414,inset 0 1px #fffc}.stack{display:flex;flex-direction:column;gap:16px}hr{border:none;border-top:1px solid var(--border);margin:16px 0}.outline-wrap{width:100%}.outline-scroll{width:100%;display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;-webkit-overflow-scrolling:touch}.outline-pill{width:auto;flex:0 0 auto;background:var(--panel);color:var(--text-secondary);border:1px solid var(--border);border-radius:999px;padding:8px 14px;font-size:14px;white-space:nowrap}.outline-pill.active{background:linear-gradient(180deg,var(--primary),var(--primary-strong));color:var(--on-primary);border-color:transparent;font-weight:700}.exercise-selector{width:100%}.selector-label{font-size:13px;color:var(--text-secondary);margin-bottom:6px;display:block}.exercise-selector select{width:100%;background:var(--panel);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;font-size:16px}.set-row{display:grid;grid-template-columns:22px 1.2fr 1fr 1.1fr 36px;gap:10px;align-items:center}.exercise-selector-wrap{display:flex;justify-content:center}.exercise-selector{width:100%;max-width:360px}.delete-set-btn{width:32px;height:32px;border-radius:50%;background:var(--panel-elevated);color:var(--primary);border:1px solid var(--border);font-size:18px;line-height:1;display:flex;align-items:center;justify-content:center}.delete-set-btn:hover{background:var(--primary-soft)}.bottom-bar{position:fixed;bottom:0;left:0;right:0;padding:12px 16px;background:linear-gradient(to top,var(--bg),var(--bg));display:flex;justify-content:center;z-index:50;border-top:1px solid var(--border)}:root[data-theme=dark] .bottom-bar{background:linear-gradient(to top,#000,#000);border-top-color:#2e2e2e}.logout-btn{width:100%;max-width:480px;background:var(--primary);color:var(--on-primary);border:1px solid var(--primary-strong)}.page-center{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:1rem}.workout-card{width:100%;max-width:420px;background:var(--panel);border-radius:20px;padding:1.25rem;box-shadow:0 16px 32px #10285926}.set-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:.5rem;margin-bottom:.5rem}.bottom-logout{margin-top:auto;padding:1rem}.app-shell{min-height:100vh;background:var(--bg)}.content{min-height:calc(100vh - 56px);padding:12px;display:grid;place-items:center}.page-card{display:contents}.top-bar{min-height:calc(64px + env(safe-area-inset-top,0px));display:flex;align-items:center;gap:12px;padding:env(safe-area-inset-top,0px) 16px 0 16px;background:var(--panel);border-bottom:1px solid var(--border)}.app-title{color:var(--primary);font-weight:600;font-size:1.05rem}.install-cta{margin-left:0;min-height:38px;border-radius:10px;border:1px solid var(--border);background:var(--primary-soft);color:var(--primary);font-size:.8rem;font-weight:600;padding:0 .65rem}.top-bar .install-cta{width:auto;flex:0 0 auto;white-space:nowrap}.top-bar select.install-cta{min-width:96px}.theme-toggle{margin-left:auto}.install-help{width:min(900px,100%);border:1px solid var(--border);background:var(--panel);border-radius:12px;padding:.65rem .8rem;margin-bottom:.6rem}.install-help-title{color:var(--primary);font-weight:700;font-size:.9rem}.install-help-text{color:var(--text-secondary);font-size:.85rem;margin-top:.25rem}.hamburger{min-width:44px;min-height:44px;border-radius:12px;padding:0}.drawer{position:fixed;top:0;left:-260px;width:260px;height:100vh;background:var(--panel);border-right:1px solid var(--border);transition:left .25s ease;z-index:70;display:flex;flex-direction:column;justify-content:space-between}.drawer.open{left:0}.drawer-nav{display:flex;flex-direction:column;padding:calc(16px + env(safe-area-inset-top,0px)) 16px 16px 16px;gap:12px}.drawer-user{color:var(--text-secondary);font-size:.78rem;background:var(--panel-elevated);border:1px solid var(--border);border-radius:10px;padding:.45rem .55rem;margin-bottom:.25rem;word-break:break-all}.drawer-nav a{color:var(--text-primary);text-decoration:none;min-height:48px;display:flex;align-items:center;justify-content:flex-start;line-height:1.2;padding:0 10px;background:var(--panel-elevated);border:1px solid var(--border);border-radius:12px}.drawer-nav a:hover{background:var(--primary-soft);border-color:#a4bbee}.drawer-footer{padding:16px 16px calc(16px + env(safe-area-inset-bottom,0px)) 16px}.overlay{position:fixed;inset:0;background:#10204547;z-index:60}.bottom-nav{position:fixed;bottom:0;left:0;right:0;height:56px;background:var(--panel);border-top:1px solid var(--border);display:flex;justify-content:space-around;align-items:center}.bottom-nav a{color:var(--muted);text-decoration:none;font-size:14px}.bottom-nav a.active{color:var(--primary);font-weight:600}.page-center{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:.75rem;padding-bottom:calc(90px + env(safe-area-inset-bottom,0px));background:var(--bg)}.workout-card{width:100%;max-width:720px;background:var(--panel);border-radius:20px;padding:1rem;box-shadow:0 16px 32px #10285924}.workout-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.workout-header h2{margin:0}.status{font-size:.85rem;color:var(--primary)}.exercise-selector{margin-bottom:1rem}.exercise-selector label{font-size:.9rem;opacity:.7}.exercise-select-row{display:flex;gap:.5rem}.exercise-select-row select{flex:1;min-height:48px}.exercise-panel h3{margin:.75rem 0;font-size:1.15rem}.sets-header,.set-row{display:grid;grid-template-columns:.5fr 1fr 1fr 1fr auto;gap:.4rem;align-items:center}.sets-header{font-size:.85rem;opacity:.6;margin-bottom:.5rem}.set-row input{width:100%;min-height:46px;font-size:16px}.bottom-bar{width:100%;max-width:720px;margin:0 auto;display:flex;gap:.5rem;padding:.5rem;position:fixed;left:0;right:0;bottom:0;z-index:40;background:linear-gradient(to top,var(--bg),var(--bg));border-top:1px solid var(--border);padding-bottom:calc(.5rem + env(safe-area-inset-bottom,0px))}.bottom-bar>*{flex:1}.centered{min-height:100vh;display:grid;place-items:center;color:var(--text-secondary)}.btn-primary{background:linear-gradient(180deg,var(--primary),var(--primary-strong));color:var(--on-primary);border:none;border-radius:var(--radius);min-height:48px;padding:12px 16px;font-weight:700;font-size:16px}.btn-outline{background:var(--panel);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius);min-height:48px;padding:12px 16px;font-weight:600;font-size:16px}.btn-outline:hover{border-color:#98b2e8;background:var(--primary-soft)}.btn-outline.small{width:48px;min-width:48px;min-height:48px;padding:0}.btn-outline.full{width:100%;margin-top:.75rem}.btn-outline.disabled{opacity:.4;pointer-events:none}.exercise-header{display:flex;justify-content:space-between;align-items:center;gap:.75rem}.btn-outline.danger{color:#c86b6b;border-color:#c86b6b66}.btn-outline.danger:hover{background:#c86b6b26}.set-row .full{grid-column:1 / -1;width:100%}.floating-add-set{position:fixed;left:50%;transform:translate(-50%);bottom:calc(74px + env(safe-area-inset-bottom,0px));width:min(720px,calc(100% - 1rem));z-index:45;box-shadow:0 10px 24px #00000073}@media(max-width:768px){.content{display:block;padding:.5rem}.workout-card{max-width:100%;border-radius:16px}.workout-header h2{font-size:1.35rem}.set-row,.sets-header{grid-template-columns:.6fr 1fr 1fr 1fr auto;gap:.35rem}}.history-day{border:1px solid var(--border);border-radius:14px;padding:.75rem;margin-top:.75rem}.history-date{color:var(--primary);font-weight:600;margin-bottom:.5rem}.history-exercise{display:flex;justify-content:space-between;gap:.75rem;color:var(--text-secondary);font-size:.95rem;padding:.35rem 0;border-top:1px solid var(--border)}.history-name{color:var(--text-primary)}.history-summary{text-align:right}.schedule-day{border:1px solid var(--border);border-radius:14px;padding:.75rem;margin-bottom:.75rem;background:var(--panel)}.schedule-day-title{color:var(--primary);font-weight:700;margin-bottom:.5rem}.schedule-options{display:flex;flex-direction:column;gap:.45rem}.schedule-option{display:flex;align-items:center;justify-content:space-between;min-height:42px;border:1px solid var(--border);border-radius:10px;padding:.4rem .6rem;background:var(--panel-elevated)}.schedule-option-name{color:var(--text-primary);font-size:.95rem}.schedule-checkbox{width:20px;height:20px;accent-color:var(--primary);cursor:pointer}.day-scroll-page{width:100%}.day-scroll-card{max-width:820px}.day-scroll-controls{position:sticky;top:0;z-index:2;display:grid;grid-template-columns:1fr 140px;gap:.6rem;margin-bottom:1rem;padding:.75rem;border:1px solid var(--border);border-radius:14px;background:var(--panel)}.day-scroll-control{display:grid;gap:.35rem;color:var(--text-secondary);font-size:.85rem}.day-scroll-control input,.day-scroll-control select{width:100%;min-height:44px;border:1px solid var(--border);border-radius:10px;background:var(--panel);color:var(--text-primary);padding:0 .7rem;font-size:.95rem}.day-scroll-list{display:grid;gap:.75rem}.day-scroll-exercise{border:1px solid var(--border);border-radius:14px;padding:.75rem;background:var(--panel)}.day-scroll-empty{display:grid;gap:.6rem;justify-items:start}.day-input-sets-header,.day-input-row{display:grid;grid-template-columns:48px 1fr 1fr 1fr 52px;gap:.45rem;align-items:center}.day-input-sets-header{color:var(--text-secondary);font-size:.82rem;margin-bottom:.4rem}.day-input-row{margin-top:.35rem}.day-input-row input{width:100%;min-height:42px;border:1px solid var(--border);border-radius:10px;background:var(--panel-elevated);color:var(--text-primary);padding:0 .55rem}.day-scroll-end-actions{margin-top:1rem}.day-scroll-end-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}@media(max-width:640px){.day-scroll-controls{grid-template-columns:1fr}.day-input-sets-header,.day-input-row{grid-template-columns:40px 1fr 1fr 1fr 46px;gap:.35rem}.day-scroll-end-choices{grid-template-columns:1fr}}.history-page{width:100%}.history-card{max-width:980px}.history-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.history-wide{grid-column:1 / -1}.history-filter-actions{margin-top:.6rem;display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}.history-summary-grid{margin-top:.8rem;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem}.history-stat{border:1px solid var(--border);border-radius:12px;padding:.65rem;background:var(--panel)}.history-stat-label{color:var(--text-secondary);font-size:.8rem}.history-stat-value{margin-top:.2rem;font-size:1.1rem;font-weight:700;color:var(--primary)}.history-profile-box,.history-chart,.history-top-exercises,.history-results{margin-top:.8rem;border:1px solid var(--border);border-radius:12px;padding:.75rem;background:var(--panel)}.history-profile-title{color:var(--primary);font-weight:700;margin-bottom:.5rem}.history-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.history-bars{display:grid;grid-template-columns:repeat(auto-fit,minmax(36px,1fr));gap:.45rem;align-items:end;min-height:130px;padding:.4rem 0}.history-bar-wrap{display:grid;justify-items:center;align-items:end;gap:.25rem;min-height:110px}.history-bar{width:22px;border-radius:8px 8px 4px 4px;background:linear-gradient(180deg,var(--primary),var(--primary-strong))}.history-bar-label{color:var(--text-secondary);font-size:.72rem}.history-exercise-row{display:flex;justify-content:space-between;gap:.6rem;border-top:1px solid var(--border);padding:.45rem 0}.history-workout-card{border-top:1px solid var(--border);padding:.6rem 0}.history-workout-head{display:flex;justify-content:space-between;gap:.75rem}.history-tags{margin-top:.45rem;display:flex;gap:.4rem;flex-wrap:wrap}.history-tag{border:1px solid var(--border);border-radius:999px;padding:.18rem .55rem;font-size:.8rem;color:var(--text-secondary)}@media(max-width:780px){.history-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.history-profile-grid,.history-filters{grid-template-columns:1fr}.history-workout-head{flex-direction:column}}.schedule-session-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.schedule-session-block{border:1px solid var(--border);border-radius:10px;padding:.45rem;background:var(--panel-elevated)}.schedule-session-title{color:var(--primary);font-weight:700;font-size:.86rem;margin-bottom:.4rem}@media(max-width:760px){.schedule-session-grid{grid-template-columns:1fr}}input:not([type=checkbox]):not([type=radio]),select,textarea{width:100%;background:var(--panel);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius);min-height:48px;padding:12px 16px;font-size:16px}input::placeholder{color:var(--text-secondary)}button{background:linear-gradient(180deg,var(--primary),var(--primary-strong));color:var(--on-primary);border:none;border-radius:var(--radius);min-height:48px;padding:12px 18px;font-weight:700;font-size:16px;cursor:pointer;touch-action:manipulation}.auth-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:16px}.auth-card{width:100%;max-width:380px;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px;box-shadow:0 16px 32px #10285924}.auth-card button,.card button.primary-btn,.card button.full-width{width:100%}.auth-card h1{text-align:center;margin-bottom:24px;color:var(--primary)}.login-brand{display:grid;place-items:center;gap:8px;margin-bottom:12px}.login-logo{width:72px;height:72px;border-radius:18px;box-shadow:0 10px 20px #10285938}.error{background:#fbe9e9;color:#9f2020;border:1px solid #f5caca;border-radius:10px;padding:10px;text-align:center}.demo-note{margin-top:10px;border:1px dashed var(--border);background:var(--panel-elevated);border-radius:10px;padding:10px 12px;color:var(--primary);font-weight:700;font-size:.92rem}.demo-note span{display:block;margin-top:4px;color:var(--text-secondary);font-size:.82rem;font-weight:500;line-height:1.4}.about-card{max-width:540px}.about-logo-wrap{display:flex;justify-content:center;margin-bottom:14px}.about-logo{width:min(72vw,280px);height:auto}
