:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--color-text);background:var(--color-bg);font-synthesis:none;--color-bg: #080b12;--color-text: #f8fafc;--color-accent: #4ade80;--color-accent-contrast: #06100a;--color-panel: color-mix(in srgb, var(--color-text) 9%, var(--color-bg));--color-panel-strong: color-mix(in srgb, var(--color-text) 15%, var(--color-bg));--color-border: color-mix(in srgb, var(--color-text) 12%, transparent);--color-border-soft: color-mix(in srgb, var(--color-text) 5%, transparent);--color-muted: color-mix(in srgb, var(--color-text) 58%, var(--color-bg));--color-accent-soft: color-mix(in srgb, var(--color-accent) 13%, transparent);--color-accent-border: color-mix(in srgb, var(--color-accent) 42%, transparent);--color-accent-light: color-mix(in srgb, var(--color-accent) 55%, white)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at top right,var(--color-accent-soft),transparent 30%),var(--color-bg);padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}button{font:inherit}.app-shell{min-height:100vh;display:grid;grid-template-columns:250px 1fr}.sidebar{position:sticky;top:0;height:100vh;padding:24px 18px;display:flex;flex-direction:column;border-right:1px solid var(--color-border);background:var(--color-panel)}.brand{display:flex;align-items:center;gap:12px;padding:8px 10px 28px}.brand-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;color:var(--color-accent-contrast);background:var(--color-accent);font-weight:900}.brand div:last-child{display:flex;flex-direction:column}.brand strong{font-size:17px}.brand span,.profile-card span{margin-top:3px;color:var(--color-muted);font-size:12px}nav{display:grid;gap:8px}.nav-item{width:100%;padding:13px 14px;display:flex;align-items:center;gap:12px;color:var(--color-muted);background:transparent;border:0;border-radius:13px;cursor:pointer;text-align:left;font-weight:700}.nav-item:hover{color:var(--color-text);background:var(--color-border-soft)}.nav-item.active{color:var(--color-accent-light);background:var(--color-accent-soft)}.nav-item span{width:24px;font-size:18px;text-align:center}.profile-card{margin-top:auto;padding:14px;display:flex;align-items:center;gap:11px;border-radius:16px;background:var(--color-border-soft);border:1px solid var(--color-border)}.profile-info{display:flex;flex-direction:column;flex:1;min-width:0}.profile-info strong,.profile-info span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-card .text-button{flex-shrink:0;white-space:nowrap}.avatar{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;background:var(--color-panel-strong);font-size:13px;font-weight:800}.content{width:min(1280px,100%);padding:48px}.page-header{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:34px}.header-actions{display:flex;flex-wrap:wrap;gap:12px;flex-shrink:0}.page-header h1,.placeholder h1{margin:6px 0 8px;font-size:clamp(34px,5vw,52px);line-height:1;letter-spacing:-.04em}.eyebrow{margin:0;color:var(--color-accent-light);font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.page-description,.placeholder p:last-child{margin:0;color:var(--color-muted);font-size:16px}.wide-button{border:0;border-radius:13px;color:var(--color-accent-contrast);background:var(--color-accent);font-weight:800;cursor:pointer;width:100%;margin-top:24px;padding:14px}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:18px}.stat-card,.panel{border-radius:22px;background:var(--color-panel);border:1px solid var(--color-border);box-shadow:0 18px 50px #00000024}.stat-card{padding:22px;display:flex;flex-direction:column}.stat-label{color:var(--color-muted);font-size:13px}.stat-card strong{margin:12px 0 8px;font-size:32px;letter-spacing:-.04em}.stat-card span:last-child{color:var(--color-muted);font-size:13px}.positive{color:var(--color-accent-light)!important}.negative{color:#ff9ca5!important}.dashboard-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:18px;margin-bottom:18px}.panel{padding:24px}.panel-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.panel-header h2{margin:7px 0 0;font-size:24px}.tag{padding:7px 10px;border-radius:999px;color:var(--color-accent-light);background:var(--color-accent-soft);font-size:12px;font-weight:800}.muted{color:var(--color-muted);font-size:13px}.exercise-list{margin-top:24px;display:grid;gap:10px}.exercise-list>div{padding:13px 0;display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid var(--color-border)}.exercise-list span{font-weight:700}.exercise-list small{color:var(--color-muted)}.activity-summary{margin-top:34px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.activity-summary div{padding:18px 12px;display:flex;flex-direction:column;border-radius:15px;background:var(--color-border-soft)}.activity-summary strong{font-size:21px}.activity-summary span{margin-top:5px;color:var(--color-muted);font-size:12px}.record-box{margin-top:22px;padding:16px;display:flex;flex-direction:column;gap:5px;border-radius:16px;background:#f59e0b14;border:1px solid rgba(245,158,11,.13)}.record-box span{color:#fbbf24;font-size:12px;font-weight:800;text-transform:uppercase}.recent-section{margin-bottom:30px}.text-button{padding:0;color:var(--color-accent-light);background:transparent;border:0;cursor:pointer;font-weight:800}.progress-list{margin-top:28px;display:grid;gap:22px}.progress-row{display:grid;grid-template-columns:180px 1fr 90px;align-items:center;gap:22px}.progress-row>div:first-child{display:flex;flex-direction:column}.progress-row span{margin-top:4px;color:var(--color-muted);font-size:12px}.progress-details-button{margin-top:6px;margin-bottom:0;align-self:flex-start}.progress-bar{height:9px;overflow:hidden;border-radius:999px;background:var(--color-border)}.progress-bar div{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--color-accent),var(--color-accent-light))}.progress-row>strong:last-child{text-align:right}.placeholder{min-height:60vh;display:grid;place-content:center;text-align:center}@media(max-width:1050px){.app-shell{grid-template-columns:210px 1fr}.content{padding:34px 26px}.stats-grid,.dashboard-grid{grid-template-columns:1fr}}@media(max-width:720px){.app-shell{display:block}.sidebar{position:static;width:100%;height:auto;padding:14px}.brand{padding-bottom:14px}nav{grid-template-columns:repeat(5,minmax(70px,1fr));overflow-x:auto}.nav-item{padding:11px 8px;flex-direction:column;gap:6px;font-size:11px;text-align:center}.profile-card{display:none}.content{padding:28px 16px}.page-header{align-items:flex-start;flex-direction:column}.primary-button{width:100%}.stats-grid,.activity-summary{grid-template-columns:1fr}.progress-row{grid-template-columns:1fr;gap:10px}.progress-row>strong:last-child{text-align:left}.exercise-list>div{align-items:flex-start;flex-direction:column;gap:5px}}.secondary-button{padding:14px 20px;border:0;border-radius:13px;background:var(--color-border);color:var(--color-text);cursor:pointer}.workout-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:20px}.workout-summary div{background:var(--color-panel);border:1px solid var(--color-border);border-radius:18px;padding:18px;display:flex;flex-direction:column}.workout-summary span{color:var(--color-muted);font-size:13px}.workout-summary strong{margin-top:8px;font-size:28px}.rest-timer-banner{display:flex;align-items:center;gap:16px;padding:16px 22px;margin-bottom:20px;border-radius:18px;background:var(--color-accent-soft);border:1px solid var(--color-accent-border)}.rest-timer-banner span{color:var(--color-muted);font-size:13px}.rest-timer-banner strong{font-size:24px;color:var(--color-accent-light)}.rest-timer-banner .text-button{margin-left:auto;margin-bottom:0}.workout-layout{display:grid;grid-template-columns:2fr 360px;gap:20px}.workout-exercises{display:grid;gap:20px}.exercise-card-header{display:flex;justify-content:space-between;align-items:center}.exercise-card-toggle{cursor:pointer;border-radius:12px;margin:-8px;padding:8px}.exercise-card-toggle:hover{background:var(--color-border-soft)}.exercise-card-header-right{display:flex;align-items:center;gap:12px}.exercise-check-icon{margin-right:8px;color:var(--color-accent-light)}.exercise-card-completed h2{color:var(--color-muted)}.exercise-chevron{color:var(--color-muted);font-size:16px;transition:transform .2s ease}.exercise-chevron.expanded{transform:rotate(180deg)}.exercise-status{background:var(--color-accent-soft);color:var(--color-accent-light);padding:6px 12px;border-radius:999px;font-size:13px}.exercise-status.pending{background:#3b82f622;color:#93c5fd}.last-training-box{margin:25px 0;padding:18px;border-radius:16px;background:var(--color-panel-strong)}.last-training-box>div:first-child{display:flex;justify-content:space-between;margin-bottom:15px}.last-training-box span{color:var(--color-muted)}.last-set-list{display:flex;gap:10px;flex-wrap:wrap}.last-set-list span{background:var(--color-panel-strong);padding:8px 12px;border-radius:10px}.set-table{display:grid;gap:10px}.set-table-header,.set-row{display:grid;grid-template-columns:60px 120px 1fr 1fr 70px;gap:12px;align-items:center}.set-table-header{color:var(--color-muted);font-size:13px}.set-row{padding:12px;border-radius:14px;background:var(--color-panel-strong)}.set-row.completed{border-left:4px solid var(--color-accent)}.set-row input{width:100%;padding:10px;border-radius:10px;border:none;background:var(--color-panel-strong);color:var(--color-text);font-size:16px}.set-check{height:42px;border:none;border-radius:10px;background:var(--color-accent);color:var(--color-accent-contrast);cursor:pointer}.set-check.empty{background:var(--color-panel-strong)}.set-previous{display:flex;flex-direction:column;justify-content:center;gap:2px}.set-previous small{display:none;color:var(--color-muted);font-size:11px}.set-previous span{color:var(--color-text);font-size:14px}.add-set-button{margin-top:18px;width:100%;padding:14px;border:none;border-radius:12px;background:#1d4ed8;color:#fff;cursor:pointer}.plan-progress{height:10px;border-radius:999px;overflow:hidden;background:var(--color-panel-strong);margin:18px 0}.plan-progress div{height:100%;background:var(--color-accent)}.plan-list{margin-top:20px;display:grid;gap:10px}.plan-list div{display:flex;justify-content:space-between;padding:12px;border-radius:12px;background:var(--color-panel-strong)}.plan-list .done{border-left:4px solid var(--color-accent)}.plan-list .active{border-left:4px solid #3b82f6}.workout-note-card p:last-child{color:var(--color-muted);line-height:1.6}.save-workout-button{width:100%;margin-top:25px;padding:18px;border:none;border-radius:16px;background:var(--color-accent);color:var(--color-accent-contrast);font-size:18px;font-weight:700;cursor:pointer}@media(max-width:1000px){.workout-layout{grid-template-columns:1fr}.workout-summary{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.workout-summary{grid-template-columns:1fr}.set-table-header{display:none}.set-row{grid-template-columns:1fr}.set-previous small{display:block}}.exercises-page{display:flex;flex-direction:column;gap:24px}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.page-description{margin-top:8px;color:var(--color-muted)}.primary-button,.secondary-button,.danger-button{border:0;border-radius:10px;padding:10px 16px;font:inherit;cursor:pointer}.primary-button{background:var(--color-accent);color:var(--color-accent-contrast);font-weight:700}.secondary-button{background:var(--color-panel-strong);color:var(--color-text)}.danger-button{background:#3a2024;color:#ff9ca5}.exercise-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.exercise-card{padding:20px;border:1px solid var(--color-border);border-radius:16px;background:var(--color-panel-strong)}.exercise-card-header{display:flex;justify-content:space-between;gap:16px}.exercise-card h2{margin:0;font-size:20px}.exercise-card-header p{margin-top:6px;color:var(--color-muted)}.exercise-id{color:var(--color-muted);font-size:14px}.exercise-description{margin-top:16px;color:var(--color-muted);line-height:1.5}.exercise-actions{display:flex;gap:10px;margin-top:20px}.empty-state{padding:40px 24px;border:1px dashed var(--color-border);border-radius:16px;background:var(--color-panel-strong);text-align:center}.empty-state h2{margin-bottom:8px}.empty-state p{color:var(--color-muted)}@media(max-width:700px){.page-header{flex-direction:column}.primary-button{width:100%}}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:grid;place-items:center;padding:20px;background:#000000b8}.modal{width:min(100%,520px);border:1px solid var(--color-border);border-radius:18px;background:var(--color-panel-strong);box-shadow:0 24px 70px #00000073}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 22px;border-bottom:1px solid var(--color-border)}.modal-header h2{margin:0}.modal-close{border:0;background:transparent;color:var(--color-muted);font-size:30px;line-height:1;cursor:pointer}.exercise-history{padding:22px;max-height:60vh;overflow-y:auto}.history-entry-list{display:grid;gap:8px}.history-entry-row{display:grid;grid-template-columns:1fr 70px 90px 60px;gap:12px;align-items:center;padding:10px 12px;border-radius:10px;background:var(--color-panel-strong)}.history-entry-header{background:transparent;color:var(--color-muted);font-size:12px;padding:0 12px}.exercise-form{display:flex;flex-direction:column;gap:18px;padding:22px}.exercise-form label{display:flex;flex-direction:column;gap:8px}.exercise-form label span{font-weight:600}.exercise-form input,.exercise-form textarea{width:100%;border:1px solid var(--color-border);border-radius:10px;padding:12px 14px;background:var(--color-panel-strong);color:var(--color-text);font:inherit;font-size:16px;outline:none}.exercise-form input:focus,.exercise-form textarea:focus{border-color:var(--color-accent)}.exercise-form textarea{resize:vertical}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:4px}.form-error{margin:0;color:#ff9ca5}.primary-button:disabled,.secondary-button:disabled{cursor:not-allowed;opacity:.6}.delete-confirmation{display:flex;flex-direction:column;gap:16px;padding:22px}.delete-confirmation p{margin:0}.delete-warning{color:#ff9ca5}.danger-button:disabled{cursor:not-allowed;opacity:.6}.text-button{border:0;padding:0;margin-bottom:18px;background:transparent;color:inherit;cursor:pointer;font:inherit;opacity:.75}.text-button:hover{opacity:1;text-decoration:underline}.exercise-form select{width:100%;padding:12px 14px;border:1px solid var(--color-border);border-radius:10px;background:inherit;color:inherit;font:inherit;font-size:16px}.training-start-card{width:min(620px,100%);padding:30px;display:grid;gap:24px}.training-plan-field{display:grid;gap:10px}.training-plan-field>span{color:var(--color-muted);font-size:13px;font-weight:700}.training-plan-select{width:100%;min-height:52px;padding:0 46px 0 16px;color:var(--color-text);background-color:var(--color-panel-strong);border:1px solid var(--color-border);border-radius:14px;font:inherit;font-size:16px;font-weight:700;outline:none;cursor:pointer}.training-plan-select:hover{border-color:var(--color-accent-border)}.training-plan-select:focus{border-color:var(--color-accent);box-shadow:0 0 0 4px var(--color-accent-soft)}.training-start-card .modal-actions{margin:0}.training-start-card .primary-button{width:100%;min-height:54px;font-size:16px}.training-start-card .primary-button:disabled{cursor:not-allowed;opacity:.65}@media(max-width:760px){.app-shell{display:block}.sidebar{position:relative;width:100%;height:auto;padding:18px 16px 12px;border-right:0;border-bottom:1px solid var(--color-border)}.brand{padding:0 4px 18px}.brand-icon{width:44px;height:44px;border-radius:14px}.brand strong{font-size:18px}nav{display:flex;gap:8px;padding-bottom:6px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none}nav::-webkit-scrollbar{display:none}.nav-item{width:auto;min-width:88px;padding:11px 12px;flex:0 0 auto;flex-direction:column;justify-content:center;gap:5px;border-radius:14px;text-align:center;font-size:12px;white-space:nowrap}.nav-item span{width:auto;font-size:19px}.profile-card{display:none}.content{width:100%;padding:30px 20px 48px}.page-header{display:block;margin-bottom:26px}.page-header h1,.placeholder h1{margin-top:9px;font-size:clamp(36px,11vw,48px);line-height:.98}.page-description{max-width:34rem;font-size:16px;line-height:1.5}.training-start-card{padding:22px;gap:20px;border-radius:20px}.training-plan-select{min-height:56px;font-size:16px}.training-start-card .primary-button{min-height:56px;border-radius:14px}}@media(max-width:420px){.content{padding-inline:16px}.sidebar{padding-inline:12px}.nav-item{min-width:82px;padding-inline:10px}.training-start-card{padding:18px}}.auth-page{min-height:100vh;display:grid;place-items:center;padding:24px}.auth-card{width:min(420px,100%);padding:32px;border-radius:20px;background:var(--color-border-soft);border:1px solid var(--color-border)}.auth-card h1{margin-bottom:20px}.auth-switch{margin-top:16px;display:block;width:100%;text-align:center}.settings-layout{display:flex;flex-direction:column;gap:20px}.settings-section{padding:26px}.settings-section .exercise-form{padding:0}.settings-divider{margin:24px 0;border:none;border-top:1px solid var(--color-border)}.settings-form-label{margin:0 0 -4px;font-weight:700;color:var(--color-muted)}.settings-danger-row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.unit-toggle,.rest-preset-row,.weekday-picker{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}.unit-toggle-option{padding:10px 18px;border-radius:12px;border:1px solid var(--color-border);background:var(--color-border-soft);color:var(--color-muted);cursor:pointer;font-weight:600}.unit-toggle-option.active{border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-accent-light)}.rest-custom-field{max-width:220px}.rest-custom-field input{width:100%;border:1px solid var(--color-border);border-radius:10px;padding:12px 14px;background:var(--color-panel-strong);color:var(--color-text);font-size:16px}.push-status-row{display:flex;flex-direction:column;gap:12px}.notification-rule{padding:16px 0;border-bottom:1px solid var(--color-border)}.notification-rule:last-of-type{border-bottom:none}.notification-toggle-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-weight:600}.notification-toggle-label input{width:18px;height:18px}.notification-rule-fields{display:flex;flex-wrap:wrap;gap:16px;margin-top:14px;padding-left:28px}.notification-rule-fields label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--color-muted)}.notification-rule-fields input{border:1px solid var(--color-border);border-radius:10px;padding:10px 12px;background:var(--color-panel-strong);color:var(--color-text);font-size:16px}.session-list{display:flex;flex-direction:column;gap:10px}.session-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;background:var(--color-border-soft);border:1px solid var(--color-border)}.session-row div{display:flex;flex-direction:column;gap:4px}.session-row span{color:var(--color-muted);font-size:13px}.session-current-badge{margin-left:8px;padding:2px 8px;border-radius:999px;background:var(--color-accent-soft);color:var(--color-accent-light);font-size:11px;font-weight:700;vertical-align:middle}.theme-preset-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;margin-bottom:20px}.theme-preset-option{display:flex;flex-direction:column;gap:8px;padding:10px;border-radius:14px;border:2px solid var(--color-border);background:var(--color-border-soft);cursor:pointer;text-align:left}.theme-preset-option.active{border-color:var(--color-accent)}.theme-preset-swatch{height:44px;border-radius:8px;display:flex;align-items:flex-end;padding:6px;border:1px solid rgba(255,255,255,.12)}.theme-preset-swatch span{width:16px;height:16px;border-radius:50%;display:inline-block}.theme-preset-option strong{font-size:13px}.theme-custom-row{display:flex;flex-wrap:wrap;gap:24px}.theme-custom-field{display:flex;flex-direction:column;gap:8px}.theme-custom-field span{font-size:13px;font-weight:600;color:var(--color-muted)}.theme-color-input{width:64px;height:40px;padding:2px;border-radius:10px;border:1px solid var(--color-border);background:var(--color-panel-strong);cursor:pointer}
