:root{--bg-primary: #111111;--bg-secondary: #1a1a1a;--bg-card: #1e1e1e;--bg-input: #252525;--bg-hover: #2a2a2a;--bg-active: #333333;--text-primary: #f0f0f0;--text-secondary: #a0a0a0;--text-muted: #666666;--text-on-inverse-hover: #d0d0d0;--color-danger: #ff4d4d;--color-danger-bg-subtle: rgba(255, 77, 77, .1);--color-danger-bg-flash: rgba(255, 77, 77, .18);--border-color: #2e2e2e;--border-light: #3a3a3a;--border-soft: rgba(255, 255, 255, .04);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4), 0 1px 1px rgba(0, 0, 0, .25);--shadow-md: 0 6px 18px rgba(0, 0, 0, .45), 0 2px 4px rgba(0, 0, 0, .3);--shadow-lg: 0 18px 48px rgba(0, 0, 0, .55), 0 6px 16px rgba(0, 0, 0, .35);--shadow-inset-top: inset 0 1px 0 rgba(255, 255, 255, .04);--focus-ring: 0 0 0 2px rgba(240, 240, 240, .18);--focus-ring-strong: 0 0 0 2px rgba(240, 240, 240, .35);--ease: cubic-bezier(.2, .8, .2, 1);--transition-fast: .14s var(--ease);--transition-base: .22s var(--ease);font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;font-weight:400;color-scheme:dark;color:var(--text-primary);background-color:var(--bg-primary);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box}html{font-size:100%}body{margin:0;min-width:320px;min-height:100vh;background-color:var(--bg-primary);background-image:radial-gradient(ellipse 80% 60% at 50% -10%,rgba(255,255,255,.035),transparent 60%),radial-gradient(ellipse 70% 50% at 50% 110%,rgba(255,77,77,.025),transparent 60%);background-attachment:fixed;color:var(--text-primary);padding-top:56px}a{color:var(--text-secondary);text-decoration:none;transition:color .2s}a:hover{color:var(--text-primary)}h1,h2,h3,h4{color:var(--text-primary);margin:0 0 .5em;font-weight:600;letter-spacing:-.012em}h1{font-size:1.8em;letter-spacing:-.018em}h2{font-size:1.4em;letter-spacing:-.014em}h3{font-size:1.15em}button{border-radius:var(--radius-sm);border:1px solid var(--border-light);padding:.5em 1em;font-size:.9em;font-weight:500;font-family:inherit;background-color:var(--bg-card);color:var(--text-primary);cursor:pointer;box-shadow:var(--shadow-sm),var(--shadow-inset-top);transition:background-color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}button:hover{background-color:var(--bg-hover);border-color:var(--text-muted)}button:active{transform:translateY(1px);box-shadow:none}button:focus-visible{outline:none;box-shadow:var(--shadow-sm),var(--shadow-inset-top),var(--focus-ring-strong)}input[type=text],input[type=email],input[type=password],input[type=tel],input[type=number],input[type=time],input[type=date],select,textarea{background-color:var(--bg-input);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:.5em .75em;font-size:.9em;font-family:inherit;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background-color var(--transition-fast)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--text-muted)}input::placeholder,textarea::placeholder{color:var(--text-muted)}label{color:var(--text-secondary);font-size:.9em}nav{width:100%;height:56px;background-color:#1a1a1ad9;-webkit-backdrop-filter:saturate(140%) blur(12px);backdrop-filter:saturate(140%) blur(12px);border-bottom:1px solid var(--border-color);padding:0 2rem;display:flex;justify-content:center;align-items:center;gap:.5rem;position:fixed;top:0;left:0;z-index:1000;box-shadow:var(--shadow-sm)}nav a{color:var(--text-secondary);font-weight:500;font-size:.85rem;letter-spacing:.02em;padding:.5rem 1rem;border-radius:var(--radius-sm);transition:color var(--transition-fast),background-color var(--transition-fast)}nav a:hover{color:var(--text-primary);background-color:var(--bg-hover)}nav a.active{color:var(--text-primary);background-color:var(--bg-active);box-shadow:var(--shadow-inset-top)}nav>button{flex-shrink:0}.mode-tab{color:var(--text-secondary);font-weight:500;font-size:.9rem;padding:.5rem 1rem;border-radius:var(--radius-sm);border:none;background:none;cursor:pointer;box-shadow:none;transition:color var(--transition-fast),background-color var(--transition-fast)}.mode-tab:focus-visible{box-shadow:var(--focus-ring)}.mode-tab:hover{color:var(--text-primary);background-color:var(--bg-hover)}.mode-tab.active{color:var(--text-primary);background-color:var(--bg-active)}main{min-height:calc(100vh - 56px);padding:1.5rem}.content-wrapper{min-height:100vh}.login-page{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - 56px);padding:2rem}.login-card{background-color:var(--bg-secondary);background-image:radial-gradient(circle at 50% -20%,rgba(255,255,255,.05),transparent 55%);border:1px solid var(--border-color);border-top-color:var(--border-light);border-radius:var(--radius-lg);padding:3rem 2.5rem;width:100%;max-width:400px;display:flex;flex-direction:column;gap:1.75rem;box-shadow:var(--shadow-lg),var(--shadow-inset-top)}.login-card h1{font-size:1.85em;text-align:center;margin-bottom:.25rem;letter-spacing:-.022em}.login-card form{display:flex;flex-direction:column;gap:1.25rem}.login-card input{width:100%;padding:.75rem 1rem}.login-card .button-group{display:flex;gap:1rem;margin-top:.25rem}.login-card .button-group button{flex:1}.login-card .btn-primary{background-color:var(--text-primary);color:var(--bg-primary);border-color:transparent;font-weight:600;letter-spacing:.01em;box-shadow:0 1px #ffffff2e inset,0 8px 20px #00000059,0 2px 4px #00000040}.login-card .btn-primary:hover{background-color:var(--text-on-inverse-hover);transform:translateY(-1px);box-shadow:0 1px #ffffff38 inset,0 12px 28px #0006,0 3px 6px #0000004d}.login-card .btn-primary:active{transform:translateY(0)}.login-card .message{text-align:center;font-size:.85em;color:var(--text-secondary)}.login-card .message--error{color:var(--color-danger)}.form-inline-error{color:var(--color-danger);font-size:.85rem;margin:.5rem 0 0;width:100%}.food-inline-error{color:var(--color-danger);font-size:.85rem;margin-top:.5rem;text-align:center}.food-analyzed-summary{font-size:.95rem;text-align:center;color:var(--text-secondary)}.food-unit-select-wrap{position:relative;display:inline-flex;flex:.7 1 4rem;min-width:0;max-width:5.75rem}.food-unit-select-wrap:after{content:"";position:absolute;right:clamp(.35rem,1.5vw,.7rem);top:50%;width:.65rem;height:.65rem;transform:translateY(-50%);pointer-events:none;opacity:.65;background:url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23a0a0a0' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") center / contain no-repeat}.food-unit-select{height:2.3rem;width:100%;min-width:0;padding:0 clamp(1rem,3vw,1.55rem) 0 clamp(.25rem,1.5vw,.5rem);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:clamp(.65rem,2.4vw,.9rem);line-height:1.2;color:inherit;text-align:center;text-align-last:center;background-color:transparent;box-sizing:border-box;cursor:pointer;appearance:none;-webkit-appearance:none;transition:border-color .15s}.food-input-row{width:100%;min-width:0}.food-input-row .combo-root{flex:1 1 clamp(7rem,48%,17.5rem);width:auto;max-width:17.5rem;min-width:0}.food-input-row .combo-input-wrapper{width:100%;min-width:0;box-sizing:border-box;padding-left:clamp(.35rem,1.5vw,.75rem);padding-right:clamp(1.35rem,4vw,2rem)}.food-input-row .combo-input{min-width:0;font-size:clamp(.65rem,2.4vw,.9rem);text-overflow:ellipsis}.food-unit-select:hover{border-color:var(--text-muted)}.food-unit-select:focus{outline:none;border-color:var(--text-muted)}.food-unit-select option{background-color:var(--bg-secondary);color:var(--text-primary)}.login-card .forgot-link{text-align:center;font-size:.85em}#container{display:flex;flex-direction:column;gap:.75rem;padding:1.5rem;width:100%;margin:0 auto}#table-container{width:100%}.exercise-card{display:flex;align-items:center;background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:.75rem 1.25rem;gap:1rem;box-shadow:var(--shadow-sm),var(--shadow-inset-top);transition:background-color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}.exercise-card:hover{background-color:var(--bg-card);border-color:var(--border-light);transform:translateY(-1px);box-shadow:var(--shadow-md),var(--shadow-inset-top)}.exercise-card--bare,.exercise-card--bare:hover{background:transparent;border:none;box-shadow:none;transform:none}.gradient-bar{width:.25rem;height:2rem;background:var(--text-muted);border-radius:2px;flex-shrink:0;opacity:.5;transition:opacity .15s,background .15s}.gradient-bar.active{background:var(--text-secondary);opacity:.85;box-shadow:0 0 8px var(--text-primary)}.exercise-card.exercise-drag-handle{cursor:grab;touch-action:none}.exercise-card.exercise-drag-handle:active{cursor:grabbing}.exercise-card:has(.combo-root){position:relative;z-index:10}body.onboarding-page .timer-bar{display:none}.onboarding-nav{position:sticky;top:0;z-index:10;width:100%;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.55rem 1rem;background:var(--bg-secondary);border-bottom:1px solid var(--border-color);box-sizing:border-box}.onboarding-step-pill{display:inline-flex;align-items:center;gap:.4rem;padding:.2rem .65rem;border:1px solid var(--border-color);border-radius:999px;background:var(--bg-card);color:var(--text-secondary);font-size:.78rem;letter-spacing:.02em;white-space:nowrap}.onboarding-step-pill .step-num{color:var(--text-primary);font-weight:600}.onboarding-next-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .95rem;font-size:.9rem;font-weight:600;line-height:1.2;letter-spacing:.01em;color:var(--bg-primary);background:var(--text-primary);border:1px solid var(--text-primary);border-radius:var(--radius-sm);cursor:pointer;box-shadow:0 1px #ffffff2e inset,0 4px 12px #0000004d,0 1px 2px #00000040;transition:background-color var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast)}.onboarding-next-btn:hover{background:var(--text-on-inverse-hover);border-color:var(--text-on-inverse-hover);transform:translateY(-1px);box-shadow:0 1px #ffffff38 inset,0 8px 18px #00000059,0 2px 4px #00000047}.onboarding-next-btn:active{background:var(--text-secondary);border-color:var(--text-secondary)}.onboarding-next-btn svg{display:block}.onboarding-nav-actions{display:inline-flex;align-items:center;gap:.5rem}.onboarding-back-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .85rem;font-size:.9rem;font-weight:500;line-height:1.2;color:var(--text-primary);background:transparent;border:1px solid var(--border-light);border-radius:var(--radius-sm);cursor:pointer;box-shadow:none;transition:background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.onboarding-back-btn:focus-visible{box-shadow:var(--focus-ring)}.onboarding-back-btn:hover{background:var(--bg-hover);border-color:var(--text-muted)}.onboarding-back-btn:active{background:var(--bg-active)}.onboarding-back-btn svg{display:block}.onboarding-content{width:100%;max-width:620px;margin:1.75rem auto 2rem;padding:0 1rem;box-sizing:border-box;display:flex;flex-direction:column;gap:1.25rem}.onboarding-hero{display:flex;flex-direction:column;gap:.35rem;padding:.25rem .15rem 0}.onboarding-hero h1{margin:0;font-size:1.55rem;font-weight:700;letter-spacing:-.01em;color:var(--text-primary);line-height:1.2}.onboarding-hero p{margin:0;font-size:.95rem;color:var(--text-secondary);line-height:1.4}.onboarding-card{display:flex;flex-direction:column;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-secondary);overflow:hidden;box-sizing:border-box}.onboarding-card-header{display:flex;align-items:center;gap:.5rem;padding:.7rem 1rem;background:var(--bg-card);border-bottom:1px solid var(--border-color);font-weight:600;color:var(--text-primary);font-size:.95rem}.onboarding-card-body{padding:1.1rem 1rem 1.25rem}.onboarding-card-body .settings-section{padding:0}.onboarding-card-body .settings-section form{gap:1.1rem}@media(max-width:480px){.onboarding-content{margin:1.25rem auto 1.5rem;padding:0 .75rem;gap:1rem}.onboarding-hero h1{font-size:1.35rem}.onboarding-card-body{padding:1rem .85rem 1.1rem}}.timer-bar{position:fixed;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;gap:1.5rem;padding:.75rem 1rem;background:#1e1e1ee0;-webkit-backdrop-filter:saturate(140%) blur(12px);backdrop-filter:saturate(140%) blur(12px);border-top:1px solid var(--border-color);z-index:50;box-shadow:0 -8px 24px #00000073;transition:background-color var(--transition-fast),border-color var(--transition-fast)}.timer-bar.alerting{animation:timer-flash .5s ease-in-out 3}.timer-bar.alerting .timer-display{color:var(--color-danger)}@keyframes timer-flash{0%,to{background:var(--bg-card);border-top-color:var(--border-color)}50%{background:var(--color-danger-bg-flash);border-top-color:var(--color-danger)}}.timer-display{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1.6rem;font-variant-numeric:tabular-nums;color:var(--text-primary);min-width:4ch;text-align:center}.timer-controls{display:flex;gap:.5rem}.timer-btn{background:var(--bg-input);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:.4rem .9rem;font-size:.9rem;cursor:pointer;transition:background-color .15s,border-color .15s}.timer-btn:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border-light)}.timer-btn:disabled{opacity:.4;cursor:not-allowed}#container{padding-bottom:5rem}.exercise-name{font-size:.95rem;color:var(--text-primary);text-transform:lowercase;flex:1;min-width:5rem}.separator{width:1px;height:1.5rem;background-color:var(--border-color);flex-shrink:0}.numeric-section{display:flex;align-items:center;gap:.25rem;justify-content:center}.numeric-value{font-size:.95rem;color:var(--text-secondary)}.delete-section{margin-left:auto}.delete-btn{background:none;border:none;color:var(--text-secondary);font-size:1rem;cursor:pointer;padding:.25rem .5rem;border-radius:var(--radius-sm);box-shadow:none;transition:color var(--transition-fast),background-color var(--transition-fast)}.delete-btn:focus-visible{box-shadow:var(--focus-ring)}.delete-btn:hover{color:var(--color-danger);background-color:var(--color-danger-bg-subtle)}#container.food-tracker-list{padding-left:clamp(.25rem,2vw,1.5rem);padding-right:clamp(.25rem,2vw,1.5rem);box-sizing:border-box;max-width:100%}.exercise-card.food-tracker-row{container-type:inline-size;min-width:0;overflow:hidden;flex-wrap:nowrap;gap:clamp(.25rem,1.5cqi,1rem);padding-left:clamp(.4rem,2cqi,1.25rem);padding-right:clamp(.4rem,2cqi,1.25rem)}.exercise-card.food-tracker-row .exercise-name{min-width:0;font-size:clamp(.55rem,3cqi,.95rem);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.exercise-card.food-tracker-row .numeric-section{min-width:0;flex-shrink:1}.exercise-card.food-tracker-row .numeric-value{font-size:clamp(.5rem,2.4cqi,.95rem);white-space:nowrap}.workout-add-plus{color:var(--text-secondary);font-size:1.25rem}.exercise-form{display:flex;align-items:center}.number-input{width:4.5rem;height:2rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:.25rem;font-size:.9rem;text-align:center;background-color:var(--bg-input);color:var(--text-primary)}.number-input:focus{outline:none;border-color:var(--text-muted)}.number-input::-webkit-inner-spin-button,.number-input::-webkit-outer-spin-button{opacity:.5;cursor:pointer}.macro-input::-webkit-inner-spin-button,.macro-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.macro-input{-moz-appearance:textfield;appearance:textfield}.shopping-container{display:flex;flex-direction:column;align-items:center;padding:2rem 1.5rem;gap:1rem;width:100%;margin:0 auto}.shopping-container>h2{align-self:flex-start}.shopping-card{width:100%;background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:1.25rem;display:flex;align-items:center;gap:1rem;box-shadow:var(--shadow-sm),var(--shadow-inset-top);transition:border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}.shopping-card:hover{border-color:var(--border-light);transform:translateY(-1px);box-shadow:var(--shadow-md),var(--shadow-inset-top)}.shopping-card-image{width:64px;height:64px;border-radius:var(--radius-sm);background-color:var(--bg-input);object-fit:cover;flex-shrink:0}.shopping-card-info{flex:1;display:flex;flex-direction:column;gap:.25rem}.shopping-card-name{font-size:1rem;font-weight:500;color:var(--text-primary);text-transform:capitalize}.shopping-card-qty{font-size:.85rem;color:var(--text-secondary)}.shopping-card-controls{display:flex;align-items:center;gap:.5rem}.qty-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;padding:0;font-size:1rem;border-radius:var(--radius-sm)}.settings-container{min-height:calc(100vh - 56px);padding:1.5rem;width:100%;margin:0 auto}.settings-tabs-container{display:flex;gap:1.5rem}.settings-tabs{display:flex;flex-direction:column;gap:.25rem;min-width:140px;flex-shrink:0}.settings-tab{padding:.6rem 1rem;text-align:left;border:none;background:transparent;color:var(--text-secondary);border-radius:var(--radius-sm);font-size:.9rem;box-shadow:none;transition:color var(--transition-fast),background-color var(--transition-fast)}.settings-tab:focus-visible{box-shadow:var(--focus-ring)}.settings-tab:hover{background-color:var(--bg-hover);color:var(--text-primary)}.settings-tab.active{background-color:var(--bg-active);color:var(--text-primary);font-weight:600}.settings-content{flex:1;background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:1.5rem;box-shadow:var(--shadow-md),var(--shadow-inset-top)}.section-header{background-color:var(--bg-secondary);padding:.6rem 1rem;border-radius:var(--radius-sm);margin-bottom:1.25rem;border-bottom:1px solid var(--border-color)}.section-header h2{margin:0;font-size:1.2em}.settings-section h2{border-radius:var(--radius-sm);margin:0 -1.5rem 1.25rem;font-size:1.1em;padding:.6rem 1rem .6rem 1.5rem}.settings-section form{display:flex;flex-direction:column;gap:1.25rem}.settings-section form>div{display:flex;flex-direction:column;gap:.4rem}.settings-section label{font-weight:500;color:var(--text-secondary);font-size:.9em}.settings-section input[type=text],.settings-section input[type=email],.settings-section input[type=password],.settings-section input[type=tel],.settings-section input[type=number],.settings-section input[type=time],.settings-section input[type=date],.settings-section select,.settings-section textarea{width:100%;max-width:100%;box-sizing:border-box;min-width:0;min-height:2.5rem;padding:.55em .75em;border:1px solid var(--border-color);background-color:var(--bg-input);color:var(--text-primary);border-radius:var(--radius-sm);font-size:.9em;font-family:inherit;transition:border-color .15s,background-color .15s}.settings-section input[type=date]{display:block;-webkit-appearance:none;appearance:none}.settings-section input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:1;width:1.125rem;height:1.125rem;margin-left:.25rem;padding:0;background-color:transparent;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23a0a0a0' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2'/%3E%3Cpath d='M16 2v4M8 2v4M3 10h18'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;background-size:contain}.settings-section input[type=text]:focus,.settings-section input[type=email]:focus,.settings-section input[type=password]:focus,.settings-section input[type=tel]:focus,.settings-section input[type=number]:focus,.settings-section input[type=time]:focus,.settings-section input[type=date]:focus,.settings-section select:focus,.settings-section textarea:focus{outline:none;border-color:var(--border-light);background-color:var(--bg-input)}.settings-section select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23a0a0a0' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75em center;padding-right:2em}.settings-section input[type=checkbox],.settings-section input[type=radio]{accent-color:var(--text-primary);margin-right:.4rem}.settings-section form>div>div{display:flex;align-items:center;gap:.4rem;margin-bottom:.25rem}.settings-section>div:first-of-type,.settings-section h2+div{display:flex;align-items:center;gap:.75rem}.App>div:first-of-type{display:flex;align-items:center;gap:.75rem}.split-options,.rotation-options{display:flex;flex-direction:row;gap:1rem;flex-wrap:wrap}.purpose-fieldset{border:none;margin:0;padding:0;min-width:0}.purpose-legend{font-weight:500;color:var(--text-secondary);font-size:.9em;padding:0;margin-bottom:.4rem}.purpose-phase-row{margin-top:.25rem}.purpose-block-label{display:block;font-weight:500;color:var(--text-secondary);font-size:.9em;margin:0 0 .4rem}.purpose-calorie-sign-wrap{margin-bottom:.65rem}.purpose-calorie-sign-row{margin-top:0}.purpose-input-bar{width:100%;max-width:100%;box-sizing:border-box;padding:.65em .85em;min-height:2.75rem}.purpose-maintenance-row{display:flex;flex-direction:row;gap:.5rem;align-items:stretch;width:100%}.purpose-maintenance-row .purpose-input-bar{flex:1;min-width:0}.purpose-calc-btn{flex:0 0 auto;padding:0 1rem;min-height:2.75rem;font-size:.95rem;font-weight:600;color:var(--text-primary);background-color:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;transition:background-color .15s,border-color .15s}.purpose-calc-btn:hover{background-color:var(--bg-hover)}.purpose-calc-btn:active{background-color:var(--bg-active)}.purpose-calc-btn:disabled{opacity:.6;cursor:not-allowed}.purpose-maintenance-msg{margin:.4rem 0 0;font-size:.85em;color:var(--text-secondary)}.purpose-subtract-row{display:flex;align-items:center;gap:.5rem;cursor:pointer}.purpose-subtract-row input[type=checkbox]:disabled+span{opacity:.5}.purpose-subtract-row input[type=checkbox]:disabled{cursor:not-allowed}.purpose-subtract-hint{font-size:.85em;color:var(--text-secondary)}.schedule-form-actions{margin-top:.25rem;padding-top:1.25rem;border-top:1px solid var(--border-color)}.schedule-create-btn{width:100%;max-width:100%;box-sizing:border-box;padding:.65rem 1rem;font-size:.95rem;font-weight:600;color:var(--text-primary);background-color:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;transition:background-color .15s,border-color .15s}.schedule-create-btn:hover{background-color:var(--bg-hover)}.schedule-create-btn:active{background-color:var(--bg-active)}.general-unit-row{margin:.35rem 0 .5rem}.general-fieldset{border:none;margin:0;padding:0;min-width:0}.general-fieldset legend{font-weight:500;color:var(--text-secondary);font-size:.9em;padding:0;margin-bottom:.4rem}.general-activity-list{display:flex;flex-direction:column;gap:.5rem}.general-activity-option{display:flex;align-items:flex-start;gap:.6rem}.general-activity-option>input[type=radio]{margin-top:.2rem;flex-shrink:0}.general-activity-option>label{display:flex;flex-direction:column;gap:.15rem;cursor:pointer}.general-activity-label{font-weight:500;color:var(--text-primary)}.general-activity-description{font-size:.85em;color:var(--text-muted);line-height:1.35}.other-tab-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1.25rem}.other-tab-row .other-tab-label{flex:1;min-width:60%}.other-tab-row .other-tab-label label{display:block;font-weight:600;margin-bottom:.25rem}.toggle-switch{display:flex;align-items:center;gap:.75rem}.toggle-switch span{font-size:.85rem;color:var(--text-muted);transition:color .2s}.toggle-switch span.active{font-weight:600;color:var(--text-primary)}.toggle-button{position:relative;width:48px;height:26px;border:1px solid var(--border-light);background:var(--bg-input);border-radius:13px;cursor:pointer;padding:0;box-shadow:none}.toggle-button:focus-visible{box-shadow:var(--focus-ring)}.toggle-slider{position:absolute;top:2px;left:2px;width:20px;height:20px;background:var(--text-secondary);border-radius:50%;transition:transform .2s ease}.toggle-button.at-max .toggle-slider{transform:translate(22px);background:var(--text-primary)}.toggle-button.at-min .toggle-slider{transform:translate(0)}.task{display:flex;align-items:center;justify-content:space-between;gap:1rem;background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:.5rem .75rem;margin-bottom:.4rem}#exerciseTask{flex:1;color:var(--text-primary)}#setsTask{display:flex;align-items:center;gap:.5rem}#setsTask button,button#save,button#add{color:var(--text-primary)}.combo-root{position:relative;width:280px;font-family:inherit}.combo-input-wrapper{background:var(--bg-input);border-radius:var(--radius-sm);padding:.5rem 2rem .5rem .75rem;border:1px solid var(--border-color);display:flex;align-items:center}.combo-input{flex:1;background:transparent;border:none;outline:none;color:var(--text-primary);font-size:.9rem}.combo-input::placeholder{color:var(--text-muted)}.exercise-card .combo-input-wrapper{height:2.3rem;padding-top:0;padding-bottom:0;box-sizing:border-box}.combo-caret{position:absolute;right:.75rem;border:none;background:transparent;color:var(--text-muted);cursor:pointer;font-size:.85rem;box-shadow:none;padding:0}.combo-caret:hover{background:transparent;color:var(--text-secondary)}.combo-caret:focus-visible{box-shadow:var(--focus-ring)}.combo-dropdown{position:absolute;top:110%;left:0;width:100%;background:var(--bg-secondary);border-radius:var(--radius-md);padding:.4rem 0;margin-top:.25rem;box-shadow:var(--shadow-lg),var(--shadow-inset-top);border:1px solid var(--border-light);z-index:2000;max-height:min(16rem,45vh);overflow-y:auto;-webkit-overflow-scrolling:touch}.combo-option{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;color:var(--text-secondary);font-size:.9rem;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .1s}.combo-option+.combo-option{margin-top:1px}.combo-option-highlighted{background-color:var(--bg-hover);color:var(--text-primary)}.combo-option-selected{font-weight:500;color:var(--text-primary)}.combo-option-empty{opacity:.5;cursor:default}.combo-check{font-size:1rem}.not-found-page{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:calc(100vh - 56px);gap:1rem;color:var(--text-secondary)}.not-found-page h1{font-size:4em;color:var(--text-muted);margin:0}@media(max-width:768px){html{font-size:93.75%}nav{padding:0 1rem;gap:.25rem;justify-content:safe center;overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;scrollbar-width:thin}nav a{font-size:.85rem;padding:.4rem .7rem;flex-shrink:0}#container{padding:1rem;max-width:100%}.exercise-card{padding:.6rem 1rem;overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch}.exercise-card .exercise-name{min-width:0}.exercise-card input.number-input[type=number]{width:4rem;height:2rem;padding:.25rem .375rem}.exercise-card input.number-input[type=text]{width:4.5rem;height:2rem;padding:.25rem .375rem}.exercise-card .separator{height:1.375rem}.settings-combo-delete-row{flex-wrap:wrap}.settings-combo-delete-row>button{width:100%;min-width:0}.settings-tabs-container{flex-direction:column}.settings-tabs{flex-direction:row;flex-wrap:wrap;min-width:unset}.settings-tab{padding:.5rem .75rem;font-size:.85rem}.settings-content{padding:1.25rem}.settings-section h2{margin-left:-1.25rem;margin-right:-1.25rem;padding-left:1.25rem}.combo-root{width:100%}}@media(max-width:480px){html{font-size:87.5%}body{padding-top:48px}main{min-height:calc(100vh - 48px)}.login-page,.settings-container,.not-found-page{min-height:calc(100vh - 48px)}nav{height:48px;padding:0 .75rem}nav a{font-size:.8rem;padding:.35rem .5rem}#container{padding:.75rem;gap:.5rem}.exercise-card{padding:.5rem .75rem;gap:.35rem}.exercise-card input.number-input[type=number]{width:3.625rem;height:1.875rem;padding:.125rem .25rem}.exercise-card input.number-input[type=text]{width:4rem;height:1.875rem;padding:.125rem .25rem}.exercise-card .separator{height:1.125rem}.exercise-card .numeric-section{gap:.125rem}.gradient-bar{height:1.5rem}.timer-bar{flex-wrap:wrap;gap:.5rem 1rem;padding:.5rem .75rem}.timer-display{font-size:1.25rem}.not-found-page h1{font-size:min(3rem,18vw)}.purpose-maintenance-row{flex-direction:column}.purpose-calc-btn{width:100%}.login-card{padding:1.5rem}.shopping-card{padding:1rem}}@media(max-width:768px){input,select,textarea{font-size:16px!important}}
