:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#070707;--bg-soft:#0c0c0c;--surface:#111;--surface-raised:#181818;--surface-active:#202020;--surface-inset:#0a0a0a;--border:#2a2a2a;--border-soft:#1d1d1d;--border-strong:#3a3a3a;--text:#f2f2f2;--muted:#969696;--dim:#676767;--accent:#b7ff3c;--accent-strong:#a8ff1f;--accent-soft:#b7ff3c29;--danger:#ff5a5a;--shadow:0 28px 80px #0000008c;--shadow-soft:0 16px 42px #00000057;--safe-area-top:env(safe-area-inset-top,0px);--safe-area-bottom:env(safe-area-inset-bottom,0px);--top-safe-padding:max(22px, calc(var(--safe-area-top) + 12px));background:var(--bg);color:var(--text);font-synthesis:none;text-rendering:optimizelegibility;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:var(--bg);touch-action:pan-x pan-y;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;width:100%;height:100%;overflow:hidden}body{overscroll-behavior:none;touch-action:pan-x pan-y;background:linear-gradient(#101010 0%,#060606 44%,#030303 100%);width:100%;min-width:320px;height:100%;min-height:100vh;margin:0;overflow:hidden}#root{touch-action:pan-x pan-y;height:100%;min-height:100vh;overflow:hidden}button,input,textarea{font:inherit}input,textarea{font-size:max(16px,1em)}button{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border:0;transition:color .14s,background .14s,border-color .14s,box-shadow .14s,transform .14s}button:active{transform:translateY(1px)scale(.99)}button:focus-visible,input:focus-visible,textarea:focus-visible{outline-offset:3px;outline:2px solid #b7ff3cc7}.app-shell{place-items:center;height:100vh;min-height:100vh;padding:24px;display:grid;overflow:hidden}.phone-frame{border:1px solid var(--border);background:linear-gradient(180deg, #ffffff07, transparent 14rem), var(--bg);width:min(100%,430px);height:min(920px,100vh - 48px);min-height:680px;box-shadow:var(--shadow);border-radius:32px;grid-template-rows:auto auto minmax(0,1fr) auto auto;display:grid;position:relative;overflow:hidden}.auth-frame{padding:calc(28px + var(--safe-area-top)) 28px calc(28px + var(--safe-area-bottom));grid-template-rows:1fr;place-items:center}.auth-panel{gap:16px;width:100%;max-width:340px;display:grid}.auth-brand{gap:8px;margin-bottom:8px;display:grid}.auth-brand h1{margin:0;font-size:1.9rem;line-height:1.05}.auth-mark{width:48px;height:48px;color:var(--accent);background:#b7ff3c14;border:1px solid #b7ff3c47;border-radius:16px;place-items:center;display:grid}.auth-field{color:var(--muted);text-transform:uppercase;gap:8px;font-size:.76rem;font-weight:900;display:grid}.auth-field input{width:100%;height:54px;color:var(--text);border:1px solid var(--border);background:var(--surface);border-radius:16px;outline:none;padding:0 15px;box-shadow:inset 0 1px #ffffff08}.auth-field input:focus{border-color:#b7ff3c8c}.auth-submit,.auth-switch{border-radius:16px;width:100%;height:52px;font-weight:900}.auth-submit{color:#0b0b0b;background:linear-gradient(180deg, var(--accent), var(--accent-strong));justify-content:center;align-items:center;gap:9px;display:inline-flex;box-shadow:0 14px 28px #b7ff3c29}.auth-submit:disabled{cursor:wait;opacity:.72}.passkey-submit{margin-top:6px}.auth-create{gap:9px;padding-top:4px;display:grid}.auth-create>p{color:var(--dim);text-transform:uppercase;margin:0;font-size:.72rem;font-weight:850}.auth-switch{color:var(--text);border:1px solid var(--border);background:var(--surface)}.auth-status{color:var(--muted);margin:0;font-size:.82rem;line-height:1.35}.top-bar{padding:var(--top-safe-padding) 18px 13px;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#070707db;grid-row:1;justify-content:space-between;align-items:center;gap:16px;display:flex}.top-bar>div:first-child{min-width:0}.date-label,.summary-label{color:var(--muted);letter-spacing:0;text-transform:uppercase;margin:0;font-size:.73rem;font-weight:700}.top-bar h1{text-overflow:ellipsis;white-space:nowrap;margin:4px 0 0;font-size:1.45rem;font-weight:800;line-height:1.05;overflow:hidden}.top-actions{align-items:center;gap:8px;display:flex}.sync-pill{color:#d6e9b1;white-space:nowrap;background:#b7ff3c12;border:1px solid #b7ff3c38;border-radius:999px;justify-content:center;align-items:center;min-width:50px;height:32px;padding:0 9px;font-size:.68rem;font-weight:900;line-height:1;display:inline-flex;box-shadow:inset 0 1px #ffffff0a}.sync-pill.synced{color:var(--accent)}.icon-button,.mini-button,.check-button{color:var(--text);background:var(--surface-raised);border:1px solid var(--border);place-items:center;display:inline-grid;box-shadow:inset 0 1px #ffffff09}.icon-button{border-radius:14px;flex:none;width:42px;height:42px}.icon-button:hover,.mini-button:hover,.check-button:hover{border-color:var(--border-strong);background:var(--surface-active)}.rest-timer-show{color:var(--accent);background:#b7ff3c14;border-color:#b7ff3c3d}.rest-timer-show.running{box-shadow:0 0 0 1px #b7ff3c33}.calendar-shell{overscroll-behavior:contain;touch-action:pan-x;grid-row:2;gap:7px;padding-bottom:7px;display:grid}.calendar-controls{touch-action:none;grid-template-columns:38px minmax(0,1fr) 38px;gap:8px;padding:0 18px;display:grid}.calendar-controls button{min-width:0;height:34px;color:var(--muted);border:1px solid var(--border-soft);background:linear-gradient(#141414,#101010);border-radius:12px}.calendar-controls button:disabled{opacity:.68}.calendar-week-current{text-align:left;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:0 11px;display:grid}.calendar-week-current span{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;font-weight:850;overflow:hidden}.calendar-week-current strong{color:var(--dim);text-transform:uppercase;font-size:.66rem;font-weight:900}.day-strip{overscroll-behavior-x:contain;overscroll-behavior-y:none;scrollbar-width:none;touch-action:pan-x;gap:6px;padding:0 18px;display:flex;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 18px calc(100% - 18px),#0000 100%);mask-image:linear-gradient(90deg,#0000 0,#000 18px calc(100% - 18px),#0000 100%)}.day-strip::-webkit-scrollbar{display:none}.day-pill{width:56px;min-width:56px;color:var(--muted);text-align:center;border:1px solid var(--border-soft);background:linear-gradient(#141414,#101010);border-radius:13px;justify-items:center;gap:3px;padding:7px 6px;display:grid;position:relative;box-shadow:inset 0 1px #ffffff09}.day-pill span{color:var(--dim);font-size:.64rem;font-weight:800;line-height:1}.day-pill strong{color:inherit;font-size:1rem;font-weight:900;line-height:1}.day-pill small{display:none}.day-pill.active{color:var(--text);background:linear-gradient(#b7ff3c33,#b7ff3c1c);border-color:#b7ff3cad;box-shadow:inset 0 1px #ffffff14,0 10px 22px #b7ff3c14}.day-pill.completed:not(.active){background:linear-gradient(#b7ff3c14,#111111f2);border-color:#b7ff3c38}.day-completed-marker{background:var(--accent);border-radius:999px;width:5px;height:5px;position:absolute;bottom:6px;right:7px;box-shadow:0 0 10px #b7ff3c59}.workout-picker{overscroll-behavior-x:contain;overscroll-behavior-y:none;scrollbar-width:none;touch-action:pan-x;grid-row:2;gap:8px;padding:0 18px 8px;display:flex;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 18px calc(100% - 18px),#0000 100%);mask-image:linear-gradient(90deg,#0000 0,#000 18px calc(100% - 18px),#0000 100%)}.workout-picker::-webkit-scrollbar{display:none}.workout-pill{width:142px;min-width:142px;color:var(--muted);text-align:left;border:1px solid var(--border-soft);background:linear-gradient(#141414,#101010);border-radius:14px;gap:4px;padding:9px 10px;display:grid;box-shadow:inset 0 1px #ffffff09}.workout-pill span,.workout-pill small{color:var(--dim);text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:.62rem;font-weight:900;line-height:1;overflow:hidden}.workout-pill strong{color:inherit;text-overflow:ellipsis;white-space:nowrap;font-size:.84rem;font-weight:950;line-height:1.12;overflow:hidden}.workout-pill.active{color:var(--text);background:linear-gradient(#b7ff3c1a,#0000 4rem),linear-gradient(#171717,#101010);border-color:#b7ff3c75}.workout-pill.active span{color:var(--accent)}.rest-timer{background:linear-gradient(#ffffff0b,#0000),#070707b8;border:1px solid #ffffff16;border-radius:17px;grid-template-columns:auto minmax(46px,52px) minmax(84px,1fr) minmax(46px,52px) 42px;align-items:center;gap:5px;min-width:0;min-height:54px;padding:5px;display:grid;box-shadow:inset 0 1px #ffffff09,0 8px 18px #0000002e}.rest-timer-label{color:var(--muted);text-transform:uppercase;padding:0 6px 0 7px;font-size:.66rem;font-weight:900;line-height:1}.rest-timer button{min-width:0;min-height:44px;color:var(--muted);-webkit-user-select:none;user-select:none;background:#141414;border:1px solid #ffffff12;border-radius:13px;justify-content:center;align-items:center;display:inline-flex}.rest-timer button:hover{color:var(--text);border-color:var(--border-strong);background:var(--surface-active)}.rest-timer-adjust{gap:2px;padding:0 6px}.rest-timer-adjust span{min-width:0;color:var(--dim);text-overflow:ellipsis;white-space:nowrap;font-size:.58rem;font-weight:950;line-height:1;overflow:hidden}.rest-timer-display{font-variant-numeric:tabular-nums;letter-spacing:0;gap:7px;width:100%;font-size:.98rem;font-weight:900;color:var(--text)!important;background:linear-gradient(180deg, #ffffff09, transparent), var(--surface-inset)!important;border-color:#ffffff1f!important}.rest-timer-action-icon{color:#101010;background:var(--muted);border-radius:999px;flex:none;place-items:center;width:22px;height:22px;display:inline-grid}.rest-timer-time{text-align:left;min-width:4ch}.rest-timer.running{border-color:#b7ff3c57;box-shadow:inset 0 1px #ffffff0a,0 0 0 1px #b7ff3c0a,0 12px 24px #0003}.rest-timer.running .rest-timer-display{color:var(--accent)!important;background:linear-gradient(#b7ff3c1f,#b7ff3c0e),#111!important;border-color:#b7ff3c6b!important}.rest-timer.running .rest-timer-action-icon{color:#0b0b0b;background:var(--accent)}.rest-timer-hide{width:42px;padding:0;color:var(--dim)!important;background:0 0!important;border-color:#0000!important}.workout-toolbar.has-timer.has-finish .rest-timer{grid-template-columns:42px minmax(74px,1fr) 42px 38px;gap:4px}.workout-toolbar.has-timer.has-finish .rest-timer-label,.workout-toolbar.has-timer.has-finish .rest-timer-adjust span{display:none}.workout-toolbar.has-timer.has-finish .rest-timer-hide{width:38px}.content-region{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#2f2f2f transparent;touch-action:pan-y;grid-row:3;min-height:0;padding:0 18px 18px;overflow-y:auto}.session-summary{background:linear-gradient(180deg, var(--bg) 72%, #07070700);grid-template-columns:1.15fr .75fr 1fr;gap:8px;padding:11px 0 13px;display:grid;position:relative}.session-summary>div{border:1px solid var(--border-soft);background:linear-gradient(#141414,#101010);border-radius:14px;gap:4px;min-width:0;padding:11px;display:grid;box-shadow:inset 0 1px #ffffff06}.session-summary strong{text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;line-height:1.1;overflow:hidden}.session-note-button{width:100%;min-height:38px;color:var(--muted);border:1px solid var(--border-soft);background:#101010;border-radius:13px;justify-content:center;align-items:center;gap:8px;margin:-3px 0 11px;font-size:.76rem;font-weight:900;display:inline-flex}.session-note-button.has-note{color:#e1e1e1;background:linear-gradient(#171717,#101010);border-color:#ffffff29}.session-note-button.has-note svg{color:var(--accent)}.exercise-stack{gap:14px;display:grid}.exercise-group{gap:8px;display:grid}.exercise-card,.rest-panel,.simple-panel{border:1px solid var(--border);background:linear-gradient(180deg, #ffffff09, transparent 4.5rem), linear-gradient(180deg, var(--surface-raised), var(--surface));box-shadow:var(--shadow-soft);border-radius:20px}.exercise-card{padding:14px}.exercise-card-complete{background:linear-gradient(180deg, #b7ff3c12, transparent 5rem), linear-gradient(180deg, var(--surface-raised), var(--surface));border-color:#b7ff3c57}.exercise-header{grid-template-columns:minmax(0,1fr);gap:11px;display:grid}.exercise-heading{gap:9px;min-width:0;display:grid}.exercise-header h2,.rest-panel h2,.simple-panel h2{margin:0;font-size:1rem;line-height:1.15}.exercise-title-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;max-width:100%;display:grid}.exercise-title-row h2{overflow-wrap:anywhere;min-width:0}.exercise-title-actions{grid-auto-columns:40px;grid-auto-flow:column;justify-content:end;gap:7px;display:grid}.exercise-info-button{color:#d6e9b1;-webkit-user-select:none;user-select:none;background:#b7ff3c12;border:1px solid #b7ff3c3d;border-radius:14px;place-items:center;width:40px;height:40px;padding:0;line-height:0;display:inline-grid;position:relative;box-shadow:inset 0 1px #ffffff09}.exercise-info-button svg{width:16px;height:16px}.exercise-info-button:hover{color:var(--accent);background:#b7ff3c1f;border-color:#b7ff3c6b}.exercise-note-toggle{color:var(--muted);border-color:var(--border);background:#131313}.exercise-note-toggle.has-note{color:var(--accent);background:#b7ff3c14;border-color:#b7ff3c57}.exercise-header p,.rest-panel p,.simple-panel p{color:var(--muted);margin:6px 0 0;font-size:.82rem;line-height:1.35}.prescription-row{flex-wrap:wrap;gap:7px 8px;margin-top:0;display:flex}.prescription-row span{color:#d4d4d4;background:#121212;border:1px solid #2f2f2f;border-radius:9px;align-items:center;gap:6px;min-height:26px;padding:0 9px;font-size:.72rem;font-weight:800;line-height:1;display:inline-flex;box-shadow:inset 0 1px #ffffff06}.prescription-row strong{color:var(--dim);text-transform:uppercase;font-size:.64rem;font-weight:900}.set-actions{grid-template-columns:minmax(0,1fr) minmax(0,1.22fr) minmax(0,1fr);gap:8px;width:100%;display:grid}.mini-button{border-radius:12px;width:34px;height:34px}.exercise-control-row{background:linear-gradient(#ffffff0a,#0000),#ffffff05;border:1px solid #ffffff16;border-radius:17px;min-width:0;padding:6px}.set-actions .mini-button{width:100%;min-width:0;min-height:44px;color:var(--muted);text-transform:uppercase;-webkit-user-select:none;user-select:none;background:#141414;border-radius:13px;justify-content:center;align-items:center;gap:6px;padding:0 8px;font-size:.66rem;font-weight:900;line-height:1;display:inline-flex}.set-actions .mini-button svg{flex:none}.set-actions .mini-button span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.confirm-all-button{color:#dcff9c;background:linear-gradient(#b7ff3c12,#b7ff3c09),#141414;border-color:#b7ff3c33}.confirm-all-button:hover{background:linear-gradient(#b7ff3c1f,#b7ff3c0f),#141414;border-color:#b7ff3c70}.confirm-all-button[aria-pressed=true]{color:#0b0b0b;border-color:var(--accent);background:linear-gradient(180deg, var(--accent), var(--accent-strong))}.exercise-info-overlay{z-index:8;padding:18px 14px calc(96px + var(--safe-area-bottom));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0000006b;align-items:end;display:grid;position:absolute;inset:0}.exercise-info-dialog{background:linear-gradient(#b7ff3c12,#0000 5rem),linear-gradient(#181818,#0e0e0e);border:1px solid #b7ff3c3d;border-radius:20px;gap:12px;width:100%;max-height:min(46vh,360px);padding:14px;display:grid;overflow-y:auto;box-shadow:0 18px 46px #00000094}.exercise-info-dialog-header{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.exercise-info-dialog h2{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:1rem;line-height:1.15;overflow:hidden}.exercise-info-dialog .icon-button{border-radius:12px;width:36px;height:36px}.exercise-info-dialog p{color:#d8d8d8;margin:0;font-size:.9rem;font-weight:650;line-height:1.42}.note-dialog,.settings-dialog{max-height:min(68vh,560px)}.note-dialog textarea{resize:vertical;width:100%;min-height:106px;color:var(--text);border:1px solid var(--border);background:var(--surface-inset);border-radius:14px;outline:none;padding:12px;font-size:.94rem;font-weight:650;line-height:1.35}.note-dialog textarea:focus{border-color:#b7ff3c70}.note-field{gap:7px;display:grid}.note-field>span,.note-reference>span,.previous-note-list>span,.note-dialog-actions>span{color:var(--muted);text-transform:uppercase;font-size:.66rem;font-weight:900;line-height:1}.note-reference{background:#b7ff3c0f;border:1px solid #b7ff3c2e;border-radius:14px;gap:7px;padding:11px;display:grid}.previous-note-list{gap:8px;display:grid}.previous-note-list article{border:1px solid var(--border-soft);background:#ffffff06;border-radius:14px;gap:6px;padding:10px 11px;display:grid}.previous-note-list small{color:var(--dim);text-transform:uppercase;font-size:.64rem;font-weight:900;line-height:1}.note-dialog-actions{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.note-dialog-actions button,.settings-export-button{color:#0b0b0b;background:linear-gradient(180deg, var(--accent), var(--accent-strong));border-radius:13px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:0 13px;font-size:.8rem;font-weight:950;display:inline-flex}.settings-export-button{width:100%}.set-table{border-top:1px solid #ffffff0f;gap:8px;margin-top:11px;padding-top:11px;display:grid}.set-row{grid-template-columns:28px minmax(116px,1fr) minmax(108px,1fr) 46px;align-items:center;gap:6px;min-height:52px;display:grid}.set-row:not(.table-head){background:0 0;border:1px solid #0000;border-radius:17px;margin:0 -4px;padding:6px 8px 6px 12px;transition:background .14s,border-color .14s,box-shadow .14s;position:relative}.set-row:not(.table-head)>span:first-child{color:#cfcfcf;justify-self:center;font-weight:700}.set-cluster-label{min-width:0;min-height:46px;color:var(--muted);letter-spacing:0;text-transform:uppercase;background:linear-gradient(90deg,#ffffff0e,#ffffff05),#101010;border:1px solid #ffffff14;border-radius:15px;justify-content:space-between;align-items:center;gap:8px;margin:9px 2px 1px 13px;padding:5px 6px 5px 11px;font-size:.68rem;font-weight:900;display:flex}.set-cluster-meta{align-items:center;gap:8px;min-width:0;display:flex}.set-cluster-label span{color:#d8d8d8;flex:none}.set-cluster-label small{min-width:0;color:var(--dim);font:inherit;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.set-cluster-actions{flex:none;grid-template-columns:repeat(2,40px);gap:6px;display:grid}.set-cluster-actions .mini-button{border-radius:13px;width:40px;height:40px}.set-cluster-actions .mini-button:disabled{cursor:default;opacity:.42}.table-head{min-height:auto;color:var(--dim);text-transform:uppercase;font-size:.68rem;font-weight:800}.table-head span:nth-child(2),.table-head span:nth-child(3),.table-head span:nth-child(4){justify-self:center}.value-stepper{border:1px solid var(--border-soft);background:#111;border-radius:15px;grid-template-columns:36px minmax(32px,1fr) 36px;align-items:center;min-width:0;display:grid;overflow:hidden;box-shadow:inset 0 1px #ffffff05}.value-stepper button{color:#a5a5a5;-webkit-user-select:none;user-select:none;background:#ffffff05;place-items:center;width:100%;min-height:46px;display:grid}.value-stepper button:first-child{border-right:1px solid #ffffff0e}.value-stepper button:last-child{border-left:1px solid #ffffff0e}.value-stepper button:active{color:var(--accent);background:#b7ff3c1a}.value-stepper input{width:100%;min-width:0;height:46px;color:var(--text);text-align:center;background:0 0;border:0;outline:none;font-weight:750}.value-stepper input::-webkit-outer-spin-button{appearance:none;margin:0}.value-stepper input::-webkit-inner-spin-button{appearance:none;margin:0}.value-stepper input[type=number]{appearance:textfield}.value-stepper:focus-within{border-color:#b7ff3c8c}.check-button{border-radius:15px;width:46px;height:46px}.set-row.autofilled{background:repeating-linear-gradient(135deg,#ffffff12 0 6px,#ffffff05 6px 12px),#ffffff09;border-color:#fff3;box-shadow:inset 4px 0 #dcdcdc94,0 0 0 1px #ffffff06}.set-row.autofilled input{color:#a8a8a8}.set-row.autofilled .value-stepper{background:#1b1b1b;border-color:#fff3}.set-row.autofilled>span:first-child{color:var(--muted)}.set-row.autofilled .check-button{background:#171717;border-color:#ffffff1f}.set-row.grouped-set{margin-left:10px}.set-row.grouped-set:before{content:"";background:#fff3;border-radius:0;width:3px;position:absolute;top:-7px;bottom:-7px;left:-9px}.set-row.grouped-set.group-start:before{border-top-left-radius:999px;border-top-right-radius:999px;top:5px}.set-row.grouped-set.group-end:before{border-bottom-right-radius:999px;border-bottom-left-radius:999px;bottom:5px}.set-row.rest-pause-set:not(.completed){border-color:#ffffff29}.set-row.rest-pause-set:not(.completed):before{background:#d2d2d26b}.set-row.rest-pause-set.completed:before{background:#b7ff3cb8}.set-row.user-filled{background:#ffffff05;border-color:#ffffff1f;box-shadow:inset 4px 0 #ffffff24}.set-row.user-filled input{color:#f4f4f4}.set-row.user-filled .value-stepper{background:#131313;border-color:#ffffff1f}.set-row.user-filled .check-button{color:var(--muted);background:#ffffff09;border-color:#ffffff1f}.set-row.completed{box-shadow:inset 4px 0 0 var(--accent);background:#b7ff3c13;border-color:#b7ff3c61}.set-row.completed input{color:var(--accent)}.set-row.completed .value-stepper{background:#b7ff3c1a;border-color:#b7ff3c61}.check-button[aria-pressed=true]{color:#0b0b0b;border-color:var(--accent);background:linear-gradient(180deg, var(--accent), var(--accent-strong));box-shadow:0 8px 18px #b7ff3c29}.rest-panel,.simple-panel{gap:10px;padding:18px;display:grid}.plans-screen,.progress-screen,.history-screen{gap:12px;padding-bottom:12px;display:grid}.progress-header{justify-content:space-between;align-items:end;gap:12px;padding:12px 0 2px;display:flex}.progress-header h2{margin:4px 0 0;font-size:1.2rem;line-height:1.1}.progress-header>span{min-width:54px;color:var(--accent);text-align:center;background:#b7ff3c14;border:1px solid #b7ff3c3d;border-radius:12px;padding:8px 10px;font-size:.76rem;font-weight:900}.progress-summary-grid,.progress-day-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.progress-summary-grid>div,.progress-day-stats>div{border:1px solid var(--border-soft);background:linear-gradient(#141414,#101010);border-radius:14px;gap:4px;min-width:0;padding:11px;display:grid}.progress-summary-grid span,.progress-day-stats span{color:var(--muted);text-transform:uppercase;font-size:.68rem;font-weight:900;line-height:1}.progress-summary-grid strong,.progress-day-stats strong{text-overflow:ellipsis;white-space:nowrap;font-size:.92rem;line-height:1.1;overflow:hidden}.progress-day-strip{overscroll-behavior-x:contain;overscroll-behavior-y:none;scrollbar-width:none;touch-action:pan-x;gap:8px;padding:2px 0 4px;display:flex;overflow-x:auto}.progress-day-strip::-webkit-scrollbar{display:none}.progress-day-pill{min-width:0;color:var(--muted);border:1px solid var(--border-soft);text-align:left;background:#111;border-radius:16px;flex:0 0 132px;gap:4px;padding:10px;display:grid}.progress-day-pill span,.progress-day-pill small{text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:.66rem;font-weight:900;line-height:1;overflow:hidden}.progress-day-pill strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;line-height:1.1;overflow:hidden}.progress-day-pill.active{color:var(--accent);background:#b7ff3c1a;border-color:#b7ff3c6b}.progress-day-card,.progress-exercise-card{border:1px solid var(--border);background:linear-gradient(180deg, #ffffff09, transparent 4.5rem), linear-gradient(180deg, var(--surface-raised), var(--surface));box-shadow:var(--shadow-soft);border-radius:20px;gap:12px;padding:15px;display:grid}.progress-card-header{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;display:grid}.progress-card-header h2{text-overflow:ellipsis;margin:4px 0 0;font-size:1rem;line-height:1.15;overflow:hidden}.progress-card-header>span{color:var(--accent);white-space:nowrap;background:#b7ff3c14;border:1px solid #b7ff3c3d;border-radius:11px;padding:6px 8px;font-size:.76rem;font-weight:900}.progress-exercise-stack{gap:12px;display:grid}.progress-chart{gap:6px;display:grid}.progress-chart svg{width:100%;height:96px;overflow:visible}.chart-grid{fill:none;stroke:#ffffff0f;stroke-linecap:round;stroke-width:1px}.chart-line{fill:none;stroke:var(--accent);stroke-linecap:round;stroke-linejoin:round;stroke-width:4px;filter:drop-shadow(0 0 8px #b7ff3c33)}.chart-dot{fill:var(--accent);stroke:#0b0b0b;stroke-width:2px}.chart-caption{color:var(--dim);grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;font-size:.68rem;font-weight:850;display:grid}.chart-caption strong{color:var(--text);font-size:.74rem}.chart-caption span:last-child{text-align:right}.progress-bars{align-items:end;gap:7px;height:108px;padding:8px 2px 0;display:flex}.progress-bar-item{flex:0 0 30px;grid-template-rows:minmax(0,1fr) auto;align-items:end;gap:6px;min-width:0;height:100%;display:grid}.progress-bar-svg{align-self:end;width:100%;height:100%;overflow:visible}.progress-bar-svg .progress-bar-fill{fill:var(--accent);filter:drop-shadow(0 0 12px #b7ff3c1f)}@supports (fill:color-mix(in srgb, white, black)){.progress-bar-svg .progress-bar-fill{fill:color-mix(in srgb, var(--accent) 76%, #222 24%)}}.progress-bar-item small{color:var(--dim);text-align:center;text-overflow:ellipsis;font-size:.58rem;font-weight:850;line-height:1;overflow:hidden}.history-header{justify-content:space-between;align-items:end;gap:12px;padding:12px 0 2px;display:flex}.history-header h2{margin:4px 0 0;font-size:1.2rem;line-height:1.1}.history-header>span{min-width:48px;color:var(--accent);text-align:center;background:#b7ff3c14;border:1px solid #b7ff3c3d;border-radius:12px;padding:8px 10px;font-size:.76rem;font-weight:900}.history-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.history-summary-grid>div,.history-week-stats>div{border:1px solid var(--border-soft);background:linear-gradient(#141414,#101010);border-radius:14px;gap:4px;min-width:0;padding:11px;display:grid}.history-summary-grid span,.history-week-stats span{color:var(--muted);text-transform:uppercase;font-size:.66rem;font-weight:900;line-height:1}.history-summary-grid strong,.history-week-stats strong{text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;line-height:1.1;overflow:hidden}.history-week-stack{gap:12px;display:grid}.history-week-card{border:1px solid var(--border);background:linear-gradient(180deg, #ffffff09, transparent 4.5rem), linear-gradient(180deg, var(--surface-raised), var(--surface));box-shadow:var(--shadow-soft);border-radius:20px;gap:12px;padding:15px;display:grid}.history-week-header{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;display:grid}.history-week-header h2{text-overflow:ellipsis;white-space:nowrap;margin:4px 0 0;font-size:1rem;line-height:1.15;overflow:hidden}.history-week-stat{color:var(--muted);text-transform:uppercase;justify-items:end;gap:2px;font-size:.64rem;font-weight:900;line-height:1;display:grid}.history-week-stat strong{color:var(--accent);font-size:1rem}.history-week-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.history-day-row{grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;display:grid}.history-day-chip{border:1px solid var(--border-soft);text-align:center;background:#0d0d0d;border-radius:12px;justify-items:center;gap:3px;min-width:0;padding:8px 3px 7px;display:grid}.history-day-chip span,.history-day-chip small,.history-session-card span,.history-session-card small{width:100%;color:var(--muted);text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:.58rem;font-weight:900;line-height:1;display:block;overflow:hidden}.history-day-chip strong{max-width:100%;color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:.62rem;line-height:1;overflow:hidden}.history-day-chip.completed{background:#b7ff3c14;border-color:#b7ff3c52}.history-day-chip.completed small{color:var(--accent)}.history-day-chip.skipped{background:#ff5a5a0e;border-color:#ff5a5a38}.history-day-chip.skipped small{color:#ff9999e6}.history-day-chip.rest{background:#0a0a0a}.history-day-chip.planned{border-style:dashed}.history-session-list{gap:8px;display:grid}.history-session-card{width:100%;color:inherit;text-align:left;border:1px solid var(--border-soft);background:#ffffff06;border-radius:14px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px;display:grid}.history-session-card:hover{border-color:var(--border-strong);background:#ffffff0a}.history-session-card>div{gap:4px;min-width:0;display:grid}.history-session-card>div:last-child{text-align:right;justify-items:end}.history-session-card strong{text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;line-height:1.08;overflow:hidden}.history-session-card small{color:var(--dim);text-transform:none}.history-note-marker{justify-content:end;align-items:center;gap:4px;width:auto!important;color:var(--accent)!important;display:inline-flex!important}.history-detail-dialog{max-height:min(72vh,600px)}.history-detail-dialog .exercise-info-dialog-header{align-items:start}.history-detail-dialog .date-label{margin-bottom:4px}.history-detail-note,.history-detail-exercises article{border:1px solid var(--border-soft);background:#ffffff06;border-radius:14px;gap:7px;padding:11px;display:grid}.history-detail-note span,.history-detail-exercises small{color:var(--muted);text-transform:uppercase;font-size:.66rem;font-weight:900;line-height:1}.history-detail-note p,.history-detail-exercises p{color:#d8d8d8;margin:0;font-size:.86rem;font-weight:650;line-height:1.38}.history-detail-exercises{gap:8px;display:grid}.history-detail-exercises article>div{gap:5px;display:grid}.history-detail-exercises strong{overflow-wrap:anywhere;font-size:.9rem;line-height:1.12}.history-empty-week{color:var(--muted);margin:0;padding:10px 2px 0;font-size:.78rem;line-height:1.35}.plans-header{justify-content:space-between;align-items:end;gap:12px;padding:12px 0 2px;display:flex}.plans-header h2{margin:4px 0 0;font-size:1.2rem;line-height:1.1}.plans-header span{min-width:34px;height:34px;color:var(--accent);background:#b7ff3c14;border:1px solid #b7ff3c3d;border-radius:12px;place-items:center;font-weight:900;display:inline-grid}.plan-create-form{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px;display:grid}.plan-create-controls{gap:7px;min-width:0;display:grid}.plan-create-form input{width:100%;min-width:0;height:44px;color:var(--text);border:1px solid var(--border);background:var(--surface);border-radius:13px;outline:none;padding:0 12px;font-weight:800}.plan-create-form input:focus{border-color:#b7ff3c8c}.plan-mode-toggle{border:1px solid var(--border);background:#ffffff08;border-radius:13px;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px;display:grid}.plan-mode-toggle button{min-width:0;height:32px;color:var(--muted);background:0 0;border-radius:9px;font-size:.72rem;font-weight:900}.plan-mode-toggle button.active{color:#0b0b0b;background:linear-gradient(180deg, var(--accent), var(--accent-strong))}.plan-create-form button,.plan-card button{color:#0b0b0b;background:linear-gradient(180deg, var(--accent), var(--accent-strong));white-space:nowrap;border-radius:13px;justify-content:center;align-items:center;gap:6px;height:44px;padding:0 12px;font-size:.82rem;font-weight:900;display:inline-flex}.plan-create-form .plan-mode-toggle button,.plan-editor .plan-mode-toggle button{height:32px;color:var(--muted);box-shadow:none;background:0 0;border-radius:9px;padding:0 8px;font-size:.72rem}.plan-create-form .plan-mode-toggle button.active,.plan-editor .plan-mode-toggle button.active{color:#0b0b0b;background:linear-gradient(180deg, var(--accent), var(--accent-strong))}.plan-card-actions{justify-content:flex-end;gap:7px;display:flex}.plan-card button:disabled{cursor:default;color:var(--accent);background:#b7ff3c14;border:1px solid #b7ff3c47}.plan-card .plan-delete-button{color:#f4f4f4;background:#181818;border:1px solid #ffffff24;width:44px;padding:0}.plan-card .plan-delete-button:active{background:#ff5c5c1f;border-color:#ff5c5c80}.plan-status{color:var(--accent);margin:-4px 0 0;font-size:.76rem;font-weight:800}.plan-list{gap:10px;display:grid}.plan-card{border:1px solid var(--border);background:linear-gradient(180deg, #ffffff08, transparent 4rem), linear-gradient(180deg, var(--surface-raised), var(--surface));box-shadow:var(--shadow-soft);border-radius:18px;gap:10px;padding:14px;display:grid}.plan-card.active{background:linear-gradient(180deg, #b7ff3c12, transparent 4.5rem), linear-gradient(180deg, var(--surface-raised), var(--surface));border-color:#b7ff3c57}.plan-card-header{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px;display:grid}.plan-card h3{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:1rem;line-height:1.15;overflow:hidden}.plan-card small{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:800}.plan-card p{color:var(--muted);margin:0;font-size:.82rem;line-height:1.35}.plan-meta{flex-wrap:wrap;gap:6px;display:flex}.plan-meta span{color:#d4d4d4;background:#121212;border:1px solid #2f2f2f;border-radius:9px;min-height:25px;padding:6px 8px;font-size:.7rem;font-weight:850;line-height:1}.plan-editor{gap:10px;display:grid}.plan-editor-details,.plan-day-editor,.plan-exercise-editor{border:1px solid var(--border);background:linear-gradient(180deg, #ffffff08, transparent 3.5rem), var(--surface)}.plan-editor-details{border-radius:16px;gap:8px;padding:12px;display:grid}.plan-editor input,.plan-editor select,.plan-editor textarea{width:100%;min-width:0;color:var(--text);border:1px solid var(--border);background:#0c0c0c;border-radius:12px;outline:none;font-weight:850}.plan-editor input,.plan-editor select{height:40px}.plan-editor input{padding:0 11px}.plan-editor textarea{resize:vertical;min-height:78px;padding:10px 11px;line-height:1.3}.plan-editor select{appearance:none;padding:0 34px 0 11px}.plan-editor input:focus,.plan-editor select:focus,.plan-editor textarea:focus{border-color:#b7ff3c8c}.plan-editor input:disabled,.plan-editor textarea:disabled{color:var(--muted);background:#ffffff0a}.plan-day-editor{border-radius:18px;gap:10px;padding:12px;display:grid}.plan-day-editor.rest{background:linear-gradient(#ffffff05,#0000 3.5rem),#101010}.plan-day-header{grid-template-columns:76px minmax(0,1fr) 58px;align-items:center;gap:8px;display:grid}.plan-day-header>span{color:var(--accent);font-size:.78rem;font-weight:950;line-height:1.05}.plan-day-kind{height:40px;color:var(--text);border:1px solid var(--border);background:#171717;border-radius:12px;place-items:center;font-size:.76rem;font-weight:900;display:inline-grid}.plan-day-kind[aria-pressed=true]{color:var(--muted);background:#ffffff0a}.plan-day-kind.remove{color:#f4f4f4;background:#ffffff0a}.plan-day-kind-placeholder{height:40px}.plan-rest-note{color:var(--muted);margin:-2px 0 0 84px;font-size:.8rem;font-weight:800}.plan-exercise-editor-list{gap:8px;display:grid}.plan-exercise-editor{border-radius:14px;gap:9px;padding:10px;display:grid}.plan-exercise-editor-title{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.plan-exercise-editor-title strong{text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;line-height:1.15;overflow:hidden}.plan-exercise-editor-title .icon-button{border-radius:12px;width:36px;height:36px}.plan-exercise-editor-title input{height:36px}.plan-exercise-actions{gap:6px;display:flex}.plan-exercise-fields{grid-template-columns:.68fr minmax(0,1fr) minmax(0,1fr);gap:7px;display:grid}.plan-exercise-fields label{gap:5px;min-width:0;display:grid}.plan-exercise-fields span{color:var(--muted);text-transform:uppercase;font-size:.62rem;font-weight:950}.plan-exercise-fields input{text-align:center;height:38px}.plan-exercise-info-field{grid-column:1/-1}.plan-exercise-info-field textarea{text-align:left}.plan-add-exercise{grid-template-columns:minmax(0,1fr) 74px;gap:8px;display:grid}.plan-add-exercise button{color:#0b0b0b;background:linear-gradient(180deg, var(--accent), var(--accent-strong));border-radius:12px;justify-content:center;align-items:center;gap:5px;height:40px;font-size:.78rem;font-weight:950;display:inline-flex}.plan-add-workout{color:#0b0b0b;background:linear-gradient(180deg, var(--accent), var(--accent-strong));border-radius:13px;justify-content:center;align-items:center;gap:6px;height:42px;font-size:.82rem;font-weight:950;display:inline-flex}.rest-panel svg{color:var(--accent)}.workout-toolbar{z-index:4;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0d0d0df0;border:1px solid #b7ff3c33;border-radius:14px;grid-row:4;align-items:center;gap:8px;margin:0 12px 6px;padding:6px;display:grid;position:relative;box-shadow:0 10px 24px #00000057}.workout-toolbar.has-timer.has-finish{grid-template-columns:minmax(0,1fr) auto}.finish-bar{grid-template-columns:1fr auto;align-items:center;gap:8px;min-width:0;display:grid}.workout-toolbar.has-timer .finish-bar{grid-template-columns:auto}.workout-toolbar.has-timer .finish-bar span{display:none}.finish-bar span{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;font-weight:750;overflow:hidden}.finish-bar button{color:#0b0b0b;background:linear-gradient(180deg, var(--accent), var(--accent-strong));border-radius:11px;justify-content:center;align-items:center;gap:5px;height:42px;padding:0 14px;font-size:.86rem;font-weight:900;display:inline-flex;box-shadow:0 8px 16px #b7ff3c24}.finish-bar button:disabled{cursor:wait;opacity:.72}.app-update-prompt{right:14px;bottom:calc(84px + var(--safe-area-bottom));z-index:7;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#090909f5;border:1px solid #b7ff3c47;border-radius:18px;grid-template-columns:minmax(0,1fr) auto 36px;align-items:center;gap:9px;padding:10px;display:grid;position:absolute;left:14px;box-shadow:0 16px 38px #00000075}.app-update-prompt.raised{bottom:calc(176px + var(--safe-area-bottom))}.app-update-prompt div{gap:2px;min-width:0;display:grid}.app-update-prompt strong{text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;line-height:1.1;overflow:hidden}.app-update-prompt span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;font-weight:750;overflow:hidden}.app-update-action{color:#0b0b0b;background:linear-gradient(180deg, var(--accent), var(--accent-strong));border-radius:12px;justify-content:center;align-items:center;gap:6px;min-width:78px;height:36px;font-size:.78rem;font-weight:900;display:inline-flex}.app-update-dismiss{width:36px;height:36px;color:var(--muted);border:1px solid var(--border-soft);background:var(--surface);border-radius:12px;place-items:center;display:grid}.bottom-tabs{z-index:3;padding:10px 12px calc(16px + var(--safe-area-bottom));border-top:1px solid var(--border-soft);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);overscroll-behavior:none;touch-action:none;background:#070707f0;grid-row:5;grid-template-columns:repeat(4,1fr);gap:2px;display:grid;position:relative}.tab-button{min-width:0;height:50px;color:var(--dim);touch-action:none;background:0 0;border-radius:14px;place-items:center;gap:5px;display:grid}.tab-button:hover{color:var(--muted);background:#ffffff09}.tab-button span{font-size:.68rem;font-weight:800}.tab-button[aria-current=page]{color:var(--accent);background:#b7ff3c17;box-shadow:inset 0 1px #b7ff3c17}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}@media (width<=520px){.app-shell{height:100dvh;min-height:100dvh;padding:0;display:block}.phone-frame{width:100%;height:100dvh;min-height:100dvh;box-shadow:none;border:0;border-radius:0}}@media (width<=380px){.top-bar{gap:10px;padding-left:14px;padding-right:14px}.top-actions{gap:6px}.sync-pill{min-width:44px;padding:0 8px}.calendar-controls,.day-strip,.content-region{padding-left:14px;padding-right:14px}.workout-toolbar{margin-left:8px;margin-right:8px}.workout-toolbar.has-timer.has-finish{gap:5px}.workout-toolbar.has-timer.has-finish .rest-timer{grid-template-columns:42px minmax(74px,1fr) 42px 36px;gap:4px}.workout-toolbar.has-timer.has-finish .rest-timer-hide{width:36px}.workout-toolbar.has-timer.has-finish .finish-bar button{gap:3px;padding:0 8px;font-size:.78rem}.rest-timer{grid-template-columns:42px minmax(74px,1fr) 42px 38px;gap:4px;min-height:54px}.rest-timer-label,.rest-timer-adjust span{display:none}.rest-timer-hide{width:38px}.exercise-card{padding:12px}.exercise-title-actions{grid-auto-columns:40px;gap:6px}.exercise-info-button{width:40px;height:40px}.exercise-control-row{padding:5px}.set-actions{gap:6px}.set-actions .mini-button{gap:4px;min-height:44px;padding:0 6px;font-size:.62rem}.set-row{grid-template-columns:24px minmax(88px,1fr) minmax(84px,1fr) 44px;gap:5px;min-height:54px}.set-row:not(.table-head){margin-left:-4px;margin-right:-4px;padding-left:10px;padding-right:6px}.value-stepper{grid-template-columns:32px minmax(24px,1fr) 32px}.value-stepper button{min-height:44px}.value-stepper input{height:44px}.check-button{width:44px;height:44px}.set-cluster-label{margin-left:11px}.set-cluster-actions{grid-template-columns:repeat(2,38px)}.set-cluster-actions .mini-button{width:38px;height:38px}}
