.admin-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:18px 0}.admin-users{list-style:none;display:grid;gap:18px;padding:0}.admin-users>li{border:1px solid #42516a;background:#142033;border-radius:16px;padding:20px;overflow-wrap:anywhere}.admin-user-heading{display:flex;gap:12px;flex-wrap:wrap;align-items:center;justify-content:space-between}.admin-status{font-size:.8rem;padding:5px 10px;border-radius:30px;background:#26394a;color:#d3e9ff}.admin-status.pending{background:#473920;color:#ffdb95}.admin-status.deleting{background:#4d2633;color:#ffc0cc}.admin-users dl{display:grid;grid-template-columns:1fr 1.5fr;gap:8px;font-size:.9rem}.admin-users dd{margin:0}.admin-users dt,.admin-users small{color:#c2cedf}.admin-users small{display:block;margin:6px 0}.admin-delete{border:1px solid #e68696;background:#3a202a;padding:20px;border-radius:16px;margin:20px 0}.admin-delete input{width:100%}.admin-delete h3{overflow-wrap:anywhere}.access-pending{max-width:560px;margin:auto}.user-management .btn{min-height:44px}.account-admin-button{width:100%;margin:14px 0}.fitness-action{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:13px 21px;border:1px solid transparent;border-radius:14px;font:inherit;font-weight:750;line-height:1.25;cursor:pointer;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease;touch-action:manipulation}.fitness-action-primary{background:linear-gradient(135deg,var(--cyan,#23c6dc),#79e2ed);color:#062338;box-shadow:0 5px 16px #00172540,inset 0 1px #ffffff45}.fitness-action-secondary{background:#123352;color:#dceff8;border-color:#426780;box-shadow:inset 0 1px #ffffff0a}.fitness-action:hover:not(:disabled){transform:translateY(-1px)}.fitness-action-primary:hover:not(:disabled){background:linear-gradient(135deg,#4ed9e8,#a3eef4);box-shadow:0 7px 20px #00172555,inset 0 1px #ffffff70}.fitness-action-secondary:hover:not(:disabled){background:#174261;border-color:var(--cyan,#23c6dc);color:#fff}.fitness-action:active:not(:disabled){transform:translateY(0);box-shadow:inset 0 2px 5px #00172530}.fitness-action:focus-visible{outline:3px solid #a8f5fc;outline-offset:4px}.fitness-action:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.fitness-action-icon{display:inline-flex;flex-shrink:0}.fitness-action-icon.is-busy{animation:fitness-action-spin 1.1s linear infinite}.fitness-session-actions{gap:12px}.fitness-catalog-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px;align-items:center}.fitness-catalog-actions>.secondary{min-height:50px;padding:13px 21px;border-radius:14px;font:inherit;font-weight:650;cursor:pointer}@keyframes fitness-action-spin{to{transform:rotate(360deg)}}@media(max-width:560px){.fitness-session-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);width:100%}.fitness-session-actions .fitness-action{padding:13px 12px}.fitness-catalog-actions .fitness-action,.fitness-catalog-actions>.secondary{width:100%}}@media(prefers-reduced-motion:reduce){.fitness-action{transition:none}.fitness-action:hover:not(:disabled){transform:none}.fitness-action-icon.is-busy{animation:none}}.exercise-catalog-list .fitness-edit-exercise{align-self:flex-start;min-height:44px;padding:10px 16px;border-radius:12px;margin-top:8px}.fitness-session-form{padding:20px}.fitness-session-form .profile-grid{gap:14px}.fitness-session-form .profile-field{gap:5px}.fitness-session-form .profile-field label{font-size:.88rem}.fitness-session-form .profile-field input,.fitness-session-form .profile-field select{min-height:38px;padding:7px 10px;font-size:16px;border-radius:8px}.fitness-session-form .exercise-row{padding:14px;margin-top:18px}.fitness-session-form .plan-block{padding:12px;margin:12px 0}.fitness-session-form .plan-block-settings{grid-template-columns:minmax(0,240px) minmax(80px,120px);gap:10px}.fitness-session-form .plan-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:10px;margin:10px 0}.fitness-session-form .plan-step{padding:10px}.fitness-session-form .plan-step h4{font-size:.9rem;margin:0 0 8px}.fitness-session-form .plan-step-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-width:320px;margin-bottom:8px}.fitness-session-form .plan-hint,.fitness-session-form .previous-load{font-size:.85rem;line-height:1.4;margin:8px 0}.fitness-session-form .previous-load{padding:8px 10px}.fitness-session-form .plan-remove{margin-top:10px}.fitness-session-form .profile-buttons{gap:10px;margin-top:14px}.fitness-session-form .pap-option{margin:10px 0}.fitness-session-form .pap-activation{padding:10px}.fitness-session-form .workout-notes-field{margin-top:16px}@media(max-width:600px){.fitness-session-form{padding:14px}.fitness-session-form .exercise-row,.fitness-session-form .plan-block{padding:10px}.fitness-session-form .profile-buttons{flex-direction:row}.fitness-session-form .profile-buttons button{width:auto;flex:1}.fitness-session-form .plan-step-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}.exercise-combobox{position:relative}.exercise-combobox input{width:100%}.exercise-combobox ul{list-style:none;margin:4px 0 0;padding:4px;border:1px solid #66748b;border-radius:8px;max-height:230px;overflow:auto;background:#142033;color:#fff}.exercise-combobox li{padding:12px;cursor:pointer;overflow-wrap:anywhere}.exercise-combobox li:hover,.exercise-combobox li[aria-selected=true]{background:#314763}.muscle-groups{margin:16px 0;display:grid;gap:12px}.muscle-groups label{display:flex;align-items:center;gap:10px}.muscle-groups input{width:20px;height:20px;accent-color:#ffb46e}.exercise-catalog-list{list-style:none;padding:0;display:grid;gap:12px}.exercise-catalog-list li{display:flex;flex-direction:column;gap:6px;padding:16px;border:1px solid #49576b;border-radius:10px}.exercise-catalog-list span{font-size:.9rem;color:#b9c4d5}.exercise-group-filter{max-width:400px;margin:14px 0 20px}.exercise-group-filter select{cursor:pointer}:root{--bg: #071b32;--surface: #0e2944;--surface-2: #123352;--border: #264d6b;--text: #eaf4ff;--muted: #a9c2d8;--cyan: #24d1e7;--orange: #ff9d48;--focus: #8ff0fb;font-family:Inter,system-ui,-apple-system,sans-serif;color:var(--text);background:var(--bg);font-synthesis:none;color-scheme:dark}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(ellipse at 80% 10%,#16446a 0%,var(--bg) 55%);background-attachment:fixed}button,select,input{font:inherit}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.brand{font-size:23px;font-weight:900;letter-spacing:1px}.brand span{color:var(--cyan)}select,input{background:var(--surface);color:#fff;border:1px solid #34516b;border-radius:10px;padding:13px}.auth{min-height:100vh;display:flex;flex-direction:column;max-width:1120px;margin:auto;padding:25px}.auth-header{display:flex;justify-content:space-between;align-items:center;gap:12px}.auth .panel{width:min(100%,450px);margin:auto;background:#0e2944dd;border:1px solid var(--border);border-radius:24px;padding:36px;box-shadow:0 20px 65px #0004}.auth .mark{font-size:35px;font-weight:900;color:var(--cyan)}.auth .mark span{color:var(--orange)}.auth h1{font-size:29px;line-height:1.2}.auth h2{font-size:19px}.auth form,.auth label{display:flex;flex-direction:column;gap:12px}.auth form{gap:19px}.auth label{font-size:14px;color:#b9d1e5}.auth input{font-size:16px;width:100%}.auth button{border:0;border-radius:10px;background:var(--cyan);color:#08233b;font-weight:800;padding:14px;cursor:pointer}.auth button:disabled{opacity:.5}.auth .link{background:transparent;color:#b6dce9;padding:5px}.auth .status{overflow-wrap:anywhere;color:#ffba86}.auth .error{color:#ffba86}.auth-footer,.home-footer{text-align:center;color:#8aa6bf;font-size:12px;padding:20px}.home{min-height:100vh;display:flex;flex-direction:column;max-width:1120px;margin:0 auto;padding:20px 16px}.skip{position:absolute;left:16px;top:-100px;z-index:10;background:var(--cyan);color:#08233b;padding:10px 16px;border-radius:10px;font-weight:800;text-decoration:none}.skip:focus{top:16px}.topbar{display:flex;flex-wrap:wrap;align-items:center;gap:14px 20px}.controls{display:flex;align-items:center;gap:10px;margin-left:auto}.lang{padding:10px 12px;font-size:14px}.account-btn{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:10px 14px;border-radius:10px;border:1px solid #34516b;background:var(--surface);color:var(--text);font-weight:700;font-size:14px;cursor:pointer}.account-btn:hover{border-color:var(--cyan)}.mainnav{order:3;width:100%}.mainnav ul{list-style:none;margin:0;padding:4px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;background:#0b2440;border:1px solid var(--border);border-radius:14px}.navitem{width:100%;min-height:44px;padding:10px 14px;border:0;border-radius:10px;background:transparent;color:var(--muted);font-weight:700;font-size:14px;cursor:pointer}.navitem:hover{color:var(--text);background:var(--surface-2)}.navitem[aria-current=page]{background:var(--cyan);color:#08233b}.home-main{flex:1;display:flex;flex-direction:column;gap:28px;padding:32px 0 12px}.hero h1{font-size:clamp(30px,6vw,44px);line-height:1.1;margin:6px 0 12px;text-wrap:balance}.hero h1:focus{outline:none}.hero h1:focus-visible{outline:3px solid var(--focus);outline-offset:4px;border-radius:6px}.eyebrow{margin:0;color:var(--cyan);font-weight:700;font-size:14px;letter-spacing:.3px}.intro{margin:0;max-width:62ch;color:var(--muted);line-height:1.6;font-size:16px;text-wrap:pretty}.block-title{font-size:18px;margin:0 0 14px}.cards{list-style:none;margin:0;padding:0;display:grid;gap:14px;grid-template-columns:1fr}.card{background:#0e2944dd;border:1px solid var(--border);border-radius:20px;padding:20px;display:flex;flex-direction:column;align-items:flex-start;gap:12px}.card-head{display:flex;align-items:center;gap:12px}.card h3{margin:0;font-size:17px}.card p{margin:0;color:var(--muted);line-height:1.55;font-size:14px}.card-icon{display:inline-flex;align-items:center;justify-content:center;flex:none;width:40px;height:40px;border-radius:12px;background:#24d1e71f;color:var(--cyan)}.badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:700;border:1px solid;white-space:nowrap}.badge-empty{color:var(--muted);border-color:#3a5c79;background:#0b2440}.badge-soon,.badge-pending{color:#ffc28d;border-color:#ff9d4866;background:#ff9d4814}.split{display:grid;gap:14px;grid-template-columns:1fr}.panel-block{background:#0e2944dd;border:1px solid var(--border);border-radius:20px;padding:20px}.action{width:100%;display:flex;align-items:center;gap:14px;text-align:left;padding:16px;border-radius:14px;border:1px solid #34516b;background:var(--surface-2);color:var(--text);cursor:pointer}.action:hover{border-color:var(--cyan)}.action:hover .action-arrow{transform:translate(3px)}.action-text{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.action-title{font-weight:800;font-size:15px}.action-body{color:var(--muted);font-size:14px;line-height:1.5}.action-arrow{color:var(--cyan);display:inline-flex;transition:transform .15s}.steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}.step{display:flex;align-items:flex-start;gap:12px;flex-wrap:wrap}.step-num{flex:none;width:30px;height:30px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--cyan);color:var(--cyan);font-weight:800;font-size:14px}.step-text{flex:1 1 200px;min-width:0}.step h3{margin:4px 0;font-size:15px}.step p{margin:0;color:var(--muted);font-size:14px;line-height:1.5}.step .badge{margin-left:42px}.sheet{width:min(100% - 32px,460px);padding:0;border:1px solid var(--border);border-radius:22px;background:var(--surface);color:var(--text);box-shadow:0 24px 70px #0008}.sheet::backdrop{background:#03101fcc}.sheet-body{padding:26px;display:flex;flex-direction:column;align-items:flex-start;gap:12px}.sheet h2{margin:4px 0 0;font-size:22px;line-height:1.25}.sheet p{margin:0;color:var(--muted);line-height:1.6}.sheet-actions{display:flex;flex-wrap:wrap;gap:10px;width:100%;margin-top:8px;justify-content:flex-end}.btn{min-height:44px;padding:12px 18px;border-radius:10px;font-weight:800;cursor:pointer;border:1px solid transparent}.btn:disabled{opacity:.6;cursor:progress}.btn-primary{background:var(--cyan);color:#08233b}.btn-ghost{background:transparent;color:var(--text);border-color:#34516b}.btn-ghost:hover{border-color:var(--cyan)}.btn-danger{background:var(--orange);color:#2a1400}.account-info{margin:4px 0 0;width:100%;padding:14px;border-radius:12px;background:#0b2440;border:1px solid var(--border)}.account-info dt{font-size:13px;color:var(--muted)}.account-info dd{margin:4px 0 0;font-weight:700;overflow-wrap:anywhere}.alert{width:100%;padding:12px 14px;border-radius:12px;background:#ff9d481a;border:1px solid #ff9d4880}.sheet .alert p{color:#ffd2ad}.sheet .alert .alert-detail{font-size:13px;overflow-wrap:anywhere}@media(max-width:500px){.auth{padding:16px}.auth .panel{padding:25px}.sheet-actions .btn{flex:1}}@media(max-width:380px){.account-btn span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.account-btn{padding:10px 12px}}@media(min-width:640px){.home{padding:24px}.mainnav ul{display:flex}.navitem{width:auto}}@media(min-width:768px){.cards{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:960px){.mainnav{order:2;width:auto;flex:1;display:flex;justify-content:center}.controls{order:3;margin-left:0}.split{grid-template-columns:1fr 1.2fr;align-items:start}.home-main{padding-top:44px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}.profile-page{max-width:960px;margin:auto}.privacy{color:#b4cbdc;border-left:3px solid #23c6dc;padding:12px 18px;background:#0e2b43;border-radius:6px}.profile-form{margin-top:24px;padding:28px;border:1px solid #2a4b64;border-radius:22px;background:#0e2a42}.profile-form fieldset{border:0;padding:0;margin:0;min-width:0}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.profile-field{display:flex;flex-direction:column;gap:9px;min-width:0}.profile-field label{font-weight:600;color:#edf6ff}.profile-field input,.profile-field select{box-sizing:border-box;width:100%;max-width:100%;font:inherit;border:1px solid #3b6079;background:#0b2339;color:#f1f7ff;padding:13px;border-radius:10px;min-height:48px}.profile-field [aria-invalid=true]{border-color:#ffae91}.profile-field .error{margin:0}.profile-note{margin-bottom:24px;color:#b4cbdc;line-height:1.6}.profile-buttons{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}.profile-buttons button{min-height:46px}.secondary{background:transparent!important;border:1px solid #4b708b!important;color:#eef7ff!important}.profile-cta{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:26px 0}.profile-form button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:600px){.profile-grid{grid-template-columns:1fr}.profile-form{padding:20px}.profile-buttons{flex-direction:column}.profile-buttons button{width:100%}}.workouts{max-width:1060px;margin:auto}.workout-form{margin-bottom:32px}.profile-form .exercise-row{margin:24px 0;padding:20px;border:1px solid #3b6079;border-radius:15px;min-width:0}.exercise-row legend{font-weight:700;padding:0 8px}.exercise-grid{display:grid;grid-template-columns:2fr 1fr 1.4fr 1.5fr;gap:14px;margin-bottom:16px}.exercise-row .secondary{padding:9px 14px}.exercise-list,.workout-notes-field{margin-top:28px}.workout-notes-field textarea{font:inherit;box-sizing:border-box;width:100%;resize:vertical;border:1px solid #3b6079;background:#0b2339;color:#f1f7ff;border-radius:10px;padding:14px}.workout-history{display:grid;gap:16px;margin:20px 0}.workout-card{border:1px solid #2a4b64;border-radius:16px;background:#0e2a42;padding:20px;min-width:0}.workout-card summary{display:flex;align-items:center;gap:16px;cursor:pointer;flex-wrap:wrap;list-style:revert}.workout-card summary strong{overflow-wrap:anywhere}.workout-card time{color:#9fcee2}.workout-card li{margin:14px 0;overflow-wrap:anywhere}.workout-card li span{display:block;color:#b4cbdc;margin-top:5px}.workout-card .secondary{padding:10px 15px}.workout-notes{white-space:pre-wrap;overflow-wrap:anywhere}.card p{overflow-wrap:anywhere}.exercise-row input{min-width:0}@media(max-width:720px){.exercise-grid{grid-template-columns:1fr 1fr}.exercise-grid>.profile-field:first-child{grid-column:1/-1}.exercise-grid>.profile-field:last-child{grid-column:1/-1}.profile-form .exercise-row{padding:16px}.workout-card summary{display:grid;gap:7px}}.previous-load{padding:.75rem;background:#082538;border-left:3px solid #20c8dd;border-radius:.35rem;overflow-wrap:anywhere}.training-switch{max-width:1060px;margin:0 auto 28px;display:flex;flex-wrap:wrap;gap:12px}.training-switch button,.plan-form button{font:inherit;padding:11px 16px;border-radius:10px;min-height:44px;cursor:pointer}.training-switch button:not(.secondary),.plan-form button[type=submit]{background:var(--cyan);color:#08233b;border:1px solid transparent;font-weight:700}.plan-form .plan-block{border:1px solid #3b6079;border-radius:12px;padding:18px;margin:24px 0}.plan-block legend{font-weight:700;padding:0 8px}.plan-block-settings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.plan-hint{line-height:1.6;color:var(--muted)}.plan-steps{display:grid;gap:14px;margin-bottom:16px}.plan-step{border-radius:10px;background:#082538;padding:16px;min-width:0}.plan-step h4{margin:0 0 14px}.plan-step-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:12px}.plan-remove{margin-top:20px}.plan-block-summary{border-left:2px solid var(--cyan);padding:12px;margin:14px 0;background:#082538;border-radius:6px}.plan-block-summary p{color:var(--muted);line-height:1.6}.plan-block-summary ol{padding-left:20px}.plan-form .error{line-height:1.6}.plan-form .profile-field input{scroll-margin-top:20px}@media(max-width:600px){.plan-block-settings,.plan-step-fields{grid-template-columns:1fr}.plan-form .plan-block,.plan-step{padding:12px}.training-switch button{flex:1}.plan-form .exercise-row{padding:12px}}.plan-step>.profile-field{margin-bottom:18px}.pap-option{margin:0 0 1.25rem;padding:1rem;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}.pap-option>label{display:flex;align-items:center;gap:.7rem;font-weight:650}.pap-option input[type=checkbox]{width:1.25rem;height:1.25rem;min-height:0;flex:0 0 auto;accent-color:var(--cyan)}.pap-activation{margin-top:1rem;border:0;padding:0;min-width:0}.pap-history{border-left:3px solid var(--orange);padding-left:.8rem;margin-bottom:.8rem}.plan-block-summary strong{overflow-wrap:anywhere}.validation-summary{padding:12px 16px;border:1px solid #ffae91;border-radius:10px;background:#36252b}.nutrition-page button{font:inherit;min-height:44px;padding:10px 16px;border-radius:10px;cursor:pointer;background:var(--cyan);border:1px solid transparent;color:#08233b;font-weight:600}.nutrition-page button:disabled{opacity:.45;cursor:not-allowed}.nutrition-calendar{padding:24px;border:1px solid #2a4b64;background:#0e2a42;border-radius:20px;margin:28px 0}.nutrition-calendar-head{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:22px}.nutrition-calendar-head h2{margin:0;flex:1;text-align:center;text-transform:capitalize}.nutrition-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.nutrition-weekday{text-align:center;padding:8px 0;color:var(--muted)}.nutrition-page .nutrition-calendar-day{display:flex;min-height:72px;flex-direction:column;justify-content:space-between;align-items:center;gap:8px;padding:10px 4px;background:#0b2339;color:#eef7ff;border:1px solid #2a4b64;font-variant-numeric:tabular-nums}.nutrition-page .nutrition-calendar-day.selected{background:#174858;border:2px solid var(--cyan);color:#fff}.nutrition-calendar-day[aria-current=date]>span:first-child{text-decoration:underline;text-underline-offset:5px}.nutrition-calendar-day small{font-size:.75rem;color:#8ce2ed}.nutrition-date-jump{max-width:240px;margin-top:22px}.nutrition-day{margin-top:32px}.nutrition-totals{margin:24px 0;padding:20px;border-radius:14px;border:1px solid #315468;background:#082538}.nutrition-totals h3{font-size:1rem;margin:0 0 16px;color:#b4cbdc}.nutrition-totals dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0}.nutrition-totals dt{font-size:.85rem;color:var(--muted);margin-bottom:8px}.nutrition-totals dd{font-size:1.5rem;font-weight:700;color:#8ce2ed;margin:0;font-variant-numeric:tabular-nums}.nutrition-nutrients{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.nutrition-form .nutrition-food{margin-top:22px;border:1px solid #315468;padding:18px}.nutrition-food legend{padding:0 8px}.nutrition-meal-summary{margin-top:20px}.nutrition-meal-summary .nutrition-totals{margin-bottom:0}.nutrition-meal-summary li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px}.nutrition-meal-summary li span{margin:0}.nutrition-page input:focus-visible,.nutrition-page button:focus-visible{outline:3px solid #8ce2ed;outline-offset:3px}@media(max-width:650px){.nutrition-calendar{padding:12px}.nutrition-calendar-grid{gap:4px}.nutrition-page .nutrition-calendar-day{min-height:62px;font-size:.9rem}.nutrition-calendar-unit{display:none}.nutrition-calendar-head{gap:7px}.nutrition-calendar-head h2{font-size:1.15rem}.nutrition-totals dl,.nutrition-nutrients{grid-template-columns:repeat(2,minmax(0,1fr))}.nutrition-totals{padding:15px}.nutrition-totals dd{font-size:1.3rem}.nutrition-calendar-head button{padding:8px 12px}}.photo-import{margin-bottom:32px}.photo-import[hidden]{display:none}.photo-import .profile-buttons{margin-top:18px;margin-bottom:24px}.photo-import-image{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin:22px 0}.photo-import-image img{max-width:100%;max-height:480px;object-fit:contain;background:#fff;border:1px solid #3b6079;border-radius:10px}.photo-import-language{max-width:300px}.photo-review-confirm{margin:24px 0}.photo-review-confirm label{display:flex;align-items:flex-start;gap:12px;line-height:1.5}.photo-review-confirm input{accent-color:var(--cyan);width:22px;height:22px;flex-shrink:0}.photo-import textarea{resize:vertical}.photo-import .profile-grid,.photo-import [role=alert],.shopping-page{margin-top:24px}.shopping-page form fieldset,.shopping-days{border:0;padding:0;min-width:0}.shopping-days{margin:24px 0!important}.shopping-days legend{font-weight:700}.shopping-day-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.shopping-day-options label,.shopping-toggle{display:flex;align-items:center;gap:12px;min-height:44px}.shopping-page input[type=checkbox]{accent-color:var(--cyan);width:22px;height:22px;flex-shrink:0}.shopping-items{list-style:none;padding:0;margin:20px 0;display:grid;gap:10px}.shopping-items li{padding:16px;border:1px solid #315468;border-radius:12px;background:#082538}.shopping-items label{display:flex;align-items:flex-start;gap:14px;cursor:pointer}.shopping-items label>span{display:flex;flex-wrap:wrap;gap:10px;flex:1;min-width:0;align-items:baseline}.shopping-items strong{overflow-wrap:anywhere;flex:1;min-width:0}.shopping-quantity{color:#8ce2ed;font-weight:700;font-variant-numeric:tabular-nums}.shopping-items small{display:block;width:100%;color:var(--muted)}.shopping-done{text-decoration:line-through;color:var(--muted)}.shopping-page button:disabled{opacity:.5;cursor:not-allowed}.shopping-page [type=date]{color-scheme:dark}.weight-page button{font:inherit;min-height:44px;padding:10px 16px;border-radius:10px;cursor:pointer;background:var(--cyan);border:1px solid transparent;color:#08233b;font-weight:600}.weight-page button:disabled{opacity:.5;cursor:not-allowed}.weight-stats{display:grid;grid-template-columns:1fr 1fr;gap:18px}.weight-stats h2{font-size:1rem;color:var(--muted);margin-top:0}.weight-stats strong{font-size:1.9rem;color:#8ce2ed}.weight-chart{margin:10px 0 28px;border:1px solid #315468;background:#082538;border-radius:16px;padding:20px}.weight-chart figcaption{color:var(--muted);line-height:1.6;margin-bottom:12px}.weight-chart svg{display:block;width:100%;height:auto}.weight-table-wrap{overflow-x:auto;border:1px solid #315468;border-radius:14px}.weight-table-wrap table{width:100%;border-collapse:collapse;text-align:left;background:#0e2a42}.weight-table-wrap th,.weight-table-wrap td{padding:16px;border-bottom:1px solid #315468}.weight-table-wrap th{font-weight:600}.weight-table-wrap td{overflow-wrap:anywhere;max-width:350px}.weight-table-wrap tbody tr:last-child>*{border-bottom:0}.weight-page .workout-notes-field textarea{font:inherit;padding:12px;border:1px solid #3b6079;border-radius:10px;background:#0b2339;color:#f1f7ff;width:100%;box-sizing:border-box}.weight-page [type=date]{color-scheme:dark}@media(max-width:600px){.weight-stats{grid-template-columns:1fr;gap:0}.weight-stats .nutrition-totals{margin:12px 0}.weight-chart,.weight-table-wrap th,.weight-table-wrap td{padding:12px}}.diet-generator[hidden]{display:none}.diet-generator{margin-top:28px}.diet-generator fieldset{border:0;padding:0;min-width:0}.generator-foods{margin-top:28px!important}.generator-foods legend{font-size:1.2rem;font-weight:700}.generator-food-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.generator-food-options label{display:flex;align-items:flex-start;gap:12px;line-height:1.5;padding:12px;border:1px solid #315468;border-radius:10px}.generator-food-options input{accent-color:var(--cyan);width:22px;height:22px;flex-shrink:0}.generator-food-options small{display:block;color:var(--muted)}.generator-food-options input:disabled+span{opacity:.5}.generator-proposal{margin-top:32px;scroll-margin-top:20px}.generator-proposal .workout-card{margin-top:16px}.generator-sources{margin-top:24px;line-height:1.7;overflow-wrap:anywhere}.generator-sources summary{cursor:pointer;color:#8ce2ed}.generator-sources a{color:#8ce2ed}.diet-generator .profile-buttons{margin:22px 0}.diet-generator [type=date]{color-scheme:dark}.diet-generator .profile-field input{scroll-margin-top:20px}@media(max-width:650px){.generator-food-options{grid-template-columns:1fr}}.diet-share-preview{width:100%;min-width:0}.diet-share-preview textarea{box-sizing:border-box;width:100%;min-height:220px;max-height:45dvh;resize:vertical;font:inherit;font-size:14px;line-height:1.6;padding:14px;border:1px solid #3b6079;border-radius:10px;background:#0b2339;color:#f1f7ff}.diet-share-notes input{accent-color:var(--cyan);width:22px;height:22px;flex-shrink:0}.diet-share-actions{width:100%;margin-top:0}.sheet .diet-share-actions button,.sheet>.sheet-body>button{min-height:44px}.nutrition-view-switch{display:flex;gap:10px;margin-bottom:24px}.nutrition-week{margin-top:20px}.week-overview{display:grid;grid-template-columns:1fr 1fr;gap:16px}.week-overview p{margin:0;padding:18px;border:1px solid #315468;border-radius:12px;background:#082538;color:var(--muted);line-height:1.5}.week-overview strong{display:block;font-size:1.6rem;color:#8ce2ed;margin-top:8px;font-variant-numeric:tabular-nums}.week-plan-days{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:16px;padding:0;margin:24px 0}.week-plan-day{padding:20px;border:1px solid #315468;border-radius:14px;background:#0b2339;min-width:0;display:flex;flex-direction:column;align-items:stretch}.week-plan-day.selected{border:2px solid var(--cyan);padding:19px}.week-plan-day h3{margin:0 0 16px;font-size:1rem;text-transform:capitalize}.week-plan-day h3 small{display:block;text-transform:none;color:#8ce2ed;font-size:.75rem;font-weight:400;margin-top:8px}.week-kcal{font-size:1.5rem;color:#8ce2ed;font-weight:700;margin:0 0 18px}.week-macros{display:grid;gap:10px;margin:0}.week-macros>div{display:flex;justify-content:space-between;gap:12px;line-height:1.5}.week-macros dt{font-size:.85rem;color:var(--muted)}.week-macros dd{margin:0;font-variant-numeric:tabular-nums}.week-meals{padding-left:18px;margin:18px 0;color:var(--muted);line-height:1.7;overflow-wrap:anywhere}.week-plan-day .profile-buttons{margin-top:auto;padding-top:18px;flex-direction:column}.week-plan-day .profile-buttons button{width:100%;font-size:.9rem}.week-empty{color:var(--muted);line-height:1.6;flex:1}.week-copy-dates{width:100%}.week-copy-dates .profile-buttons{margin:12px 0}.week-copy-dates [aria-pressed=true]{border:2px solid var(--cyan)!important}.nutrition-week h2{font-size:1.3rem}.nutrition-week .nutrition-totals{margin:18px 0}.nutrition-page textarea:focus-visible{outline:3px solid #8ce2ed;outline-offset:3px}@media(max-width:600px){.week-overview{grid-template-columns:1fr}.week-overview p{padding:14px}.nutrition-calendar-head h2{line-height:1.5}.week-plan-day{padding:16px}.week-plan-day.selected{padding:15px}}.progress-page button{font:inherit;padding:11px 16px;border-radius:10px;min-height:44px;cursor:pointer}.progress-page button:disabled{opacity:.5;cursor:not-allowed}.progress-filters{margin:24px 0;grid-template-columns:repeat(3,minmax(0,1fr))}.progress-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.progress-stats .nutrition-totals{margin:16px 0}.progress-stats h2{font-size:.9rem;line-height:1.5;color:var(--muted);margin:0 0 14px}.progress-stats strong{font-size:1.6rem;color:#8ce2ed;overflow-wrap:anywhere}.progress-stats p{font-size:.85rem;color:var(--muted);line-height:1.6}.progress-session-name{display:block;margin:8px 0;font-weight:400}.progress-segments{font-weight:400;font-size:.85rem;color:var(--muted);line-height:1.7;max-width:350px}.progress-segments summary{cursor:pointer;color:#8ce2ed}.progress-segments ul{padding-left:18px}.progress-page th{min-width:125px}.progress-page td{font-variant-numeric:tabular-nums}.progress-page .weight-chart{margin-top:24px}.progress-page select:focus-visible,.progress-page button:focus-visible{outline:3px solid #8ce2ed;outline-offset:3px}@media(max-width:700px){.progress-filters,.progress-stats{grid-template-columns:1fr}.progress-stats{gap:10px}.progress-stats .nutrition-totals{margin:0}.progress-stats{margin:24px 0}.progress-page .weight-chart{padding:12px}}.dashboard-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:20px}.dashboard-heading .block-title{margin:0}.home-dashboard button{font:inherit;min-height:44px;padding:10px 14px;border-radius:10px;cursor:pointer}.home-dashboard button:disabled{opacity:.5;cursor:not-allowed}.home-dashboard .card{display:flex;flex-direction:column;align-items:flex-start}.home-dashboard .card .profile-buttons{width:100%;margin-top:auto;padding-top:20px}.home-dashboard .card .profile-buttons button{width:100%}.home-dashboard .dashboard-value{font-size:1.7rem;font-weight:700;line-height:1.4;color:#8ce2ed;margin:20px 0 0}.dashboard-macros{width:100%;display:grid;gap:12px;line-height:1.5;margin:16px 0}.dashboard-macros>div{display:flex;justify-content:space-between;gap:10px}.dashboard-macros dt{color:var(--muted);font-size:.9rem}.dashboard-macros dd{margin:0;color:#8ce2ed;font-variant-numeric:tabular-nums}.dashboard-comparison-dates{display:block;font-size:.85rem;margin-top:8px}.home-dashboard .badge{max-width:100%;box-sizing:border-box;white-space:normal}.home-dashboard button:focus-visible{outline:3px solid #8ce2ed;outline-offset:3px}@media(max-width:650px){.dashboard-heading{align-items:flex-start;flex-direction:column}.home-dashboard .cards{grid-template-columns:1fr}.home-dashboard .dashboard-value{font-size:1.5rem}}.draft-notice{padding:16px;border:1px solid #315468;border-radius:12px;background:#082538;margin:18px 0;line-height:1.6}.draft-notice p{margin:8px 0}.draft-notice .profile-buttons{margin:14px 0}.draft-notice .plan-hint{font-size:.85rem}.draft-notice button{min-height:44px}.draft-notice time{white-space:nowrap}.install-entry{display:flex;justify-content:center;align-items:center;gap:14px;flex-wrap:wrap;padding:16px 24px 32px;color:var(--muted);font-size:.9rem}.install-entry>button{font:inherit;cursor:pointer;min-height:44px;border-radius:10px;padding:10px 16px}.install-brand{display:flex;align-items:center;gap:14px}.install-brand img{border-radius:14px;flex-shrink:0}.install-brand strong{color:#8ce2ed;font-size:.85rem}.install-brand h2{margin:4px 0}.install-devices{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.install-devices [aria-pressed=true]{border:2px solid var(--cyan);background:#23c6dc;color:#071b32}.install-steps{padding-left:24px;margin:10px 0;line-height:1.7}.install-steps li{padding:5px 0}.install-entry .sheet .plan-hint{font-size:.85rem}.install-entry button:focus-visible{outline:3px solid #8ce2ed;outline-offset:3px}.home-launcher{min-height:100svh;padding:0}.launcher-main{min-height:100svh;display:grid;place-items:center;padding:max(24px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left))}.home-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(14px,3vw,24px);width:min(100%,640px)}.home-tile{appearance:none;width:100%;aspect-ratio:1;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:clamp(12px,3vw,24px);padding:16px;border:1px solid #376281;border-radius:24px;background:linear-gradient(145deg,#183d5c,#0e2944);color:var(--text);cursor:pointer;box-shadow:0 12px 28px #0003;font-size:clamp(15px,2.8vw,23px);font-weight:700;line-height:1.25;text-align:center;overflow-wrap:anywhere;transition:border-color .15s,background .15s}.home-tile svg{width:clamp(68px,19vw,136px);height:clamp(68px,19vw,136px);flex-shrink:0;color:var(--cyan);filter:drop-shadow(0 5px 12px #0003)}.home-tile-nutrition svg{color:#9bdfad}.home-tile-calisthenics svg{color:#c4b4ff}.home-tile-functional svg{color:#ffb46e}.home-tile:hover{border-color:var(--cyan);background:#19415f}.home-tile:active{background:#205173}.install-entry[hidden]{display:none}.future-section{max-width:640px;margin:60px auto}@media(max-width:360px){.launcher-main{padding:16px}.home-tiles{gap:12px}.home-tile{padding:10px;border-radius:18px}}.launcher-content{width:min(100%,640px)}.launcher-welcome{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}.launcher-welcome .eyebrow{text-transform:capitalize;line-height:1.5}.launcher-welcome h1{margin-bottom:0}.launcher-shortcuts{display:flex;gap:10px;flex-shrink:0}.launcher-shortcuts button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;min-height:76px;padding:10px 12px;background:#123352;color:var(--text);border:1px solid #376281;border-radius:16px;cursor:pointer;font-size:13px;font-weight:600}.launcher-shortcuts button:hover{border-color:var(--cyan)}.launcher-shortcuts svg{width:30px;height:30px;color:var(--cyan)}@media(max-width:560px){.launcher-welcome{flex-wrap:wrap;gap:16px;margin-bottom:20px}.launcher-welcome h1{font-size:32px}.launcher-shortcuts{width:100%}.launcher-shortcuts button{flex:1;flex-direction:row;min-height:52px}}.account-photo-section{border-bottom:1px solid var(--border);padding-bottom:20px;margin-bottom:20px}.account-avatar{width:96px;height:96px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:var(--surface-2);border:2px solid var(--cyan);margin:16px 0}.account-avatar img{width:100%;height:100%;object-fit:cover}.account-avatar svg{width:48px;height:48px;color:var(--cyan)}.account-photo-section label,.account-name-form label{display:block;font-weight:600;margin-bottom:8px}.account-photo-section input{width:100%;max-width:100%}.account-name-form{display:grid;gap:10px;margin-bottom:24px}.account-name-form input{min-width:0;width:100%}.account-password{border-top:1px solid var(--border);margin-top:24px;padding-top:12px}.functional-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.functional-routine,.functional-finished,.functional-history{background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:24px;margin:24px 0}.functional-rounds{padding:0;list-style:none;display:grid;gap:10px}.functional-rounds li{display:flex;align-items:center;gap:18px;padding:12px;background:var(--surface-2);border-radius:12px}.functional-rounds strong{font-size:28px;min-width:44px;color:#ffb46e}.functional-start{display:block;width:100%;max-width:360px;background:#d82b3d;color:#fff;font-size:28px;font-weight:800;border:2px solid #ff7381;border-radius:18px;padding:22px;cursor:pointer;margin:24px auto 0}.functional-start:disabled{opacity:.4;cursor:not-allowed}.functional-run{position:fixed;inset:0;z-index:100;background:#071b32;display:flex;flex-direction:column;padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));overflow:auto}.functional-run-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.functional-countdown{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:24px}.functional-countdown strong{font-size:clamp(100px,35vmin,240px);color:#ff7381}.functional-exercise{flex:1;width:100%;border:0;background:transparent;color:var(--text);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:24px 8px;touch-action:manipulation}.functional-timer{font-size:clamp(40px,9vmin,76px);font-variant-numeric:tabular-nums;color:#ffb46e}.functional-position{color:var(--muted);font-size:16px}.functional-reps{font-size:clamp(80px,24vmin,170px);line-height:1;color:var(--cyan)}.functional-exercise-name{font-size:clamp(32px,8vmin,64px)}.functional-tap{font-size:18px;max-width:520px;line-height:1.5}.functional-next{color:var(--muted);font-size:16px}.functional-exercise progress{width:min(90%,400px);height:10px;margin-top:12px;accent-color:var(--cyan)}.functional-sound{text-align:center;color:#ffb46e}.functional-result-time{display:block;font-size:clamp(36px,9vw,64px);color:var(--cyan);font-variant-numeric:tabular-nums}.functional-best{padding:16px;background:#123b4b;border:1px solid #2c8190;border-radius:12px;color:#8ff0fb}.functional-best small{display:block;margin-top:8px;color:var(--muted)}.functional-history table{width:100%;border-collapse:collapse}.functional-history th,.functional-history td{text-align:left;padding:12px 8px;border-bottom:1px solid var(--border)}.functional-history td:last-child{font-variant-numeric:tabular-nums}.functional-page .sheet .btn{margin:8px}.functional-page h1{font-size:clamp(28px,6vw,40px)}dialog.functional-run{margin:0;width:100vw;height:100dvh;max-width:none;max-height:none;border:0;color:var(--text)}.functional-dione-preview{padding:16px;background:var(--surface-2);border-radius:12px}.functional-dione-preview ol{margin:12px 0 0;padding-left:28px;line-height:2}.functional-dione-preview li strong{color:#ffb46e;display:inline-block;min-width:32px}
