:root{--bg-page: #b3b7be;--bg-surface: rgba(255, 255, 255, .58);--bg-surface-solid: #d7e1e9;--text-main: #111827;--text-muted: #4b5563;--line-soft: rgba(209, 213, 219, .9);--btn-main: #151618;--btn-main-hover: #232529;--btn-secondary: #2d3035;--btn-danger: #8f1d1d;--accent: #4f72f5;--accent-glow: rgba(79, 114, 245, .28);--shadow-sm: 0 2px 10px rgba(15, 23, 42, .08);--shadow-md: 0 8px 28px rgba(15, 23, 42, .13);--shadow-lg: 0 18px 48px rgba(15, 23, 42, .22);--card-radius: 14px;font-family:Manrope,Segoe UI,Helvetica Neue,Arial,sans-serif;color:var(--text-main);background-color:var(--bg-page)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:linear-gradient(160deg,#2d3139,#6b7280 42%,#c8d3dc);scroll-behavior:smooth}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInDown{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes pop{0%{transform:scale(1)}40%{transform:scale(1.18)}70%{transform:scale(.94)}to{transform:scale(1)}}@keyframes pulse-timer{0%,to{opacity:1}50%{opacity:.62}}@keyframes slideNotify{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.topbar{position:sticky;top:0;z-index:100;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 2rem;height:64px;background:transparent;border-bottom:1px solid transparent;transition:background .35s ease,border-color .35s ease,box-shadow .35s ease,backdrop-filter .35s ease;animation:slideInDown .4s ease both}.topbar--scrolled{background:#0a1c32ed;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.07);box-shadow:0 4px 22px #00000047}.topbar-brand{font-size:1.05rem;font-weight:800;letter-spacing:-.03em;white-space:nowrap;background:linear-gradient(120deg,#fff,#a5b4fc,#5eead4);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;justify-self:center;border:none;box-shadow:none;padding:0;cursor:pointer;transition:opacity .15s}.topbar-brand:hover{opacity:.75;background:linear-gradient(120deg,#fff,#a5b4fc,#5eead4);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;box-shadow:none;transform:none}.topbar-nav{display:flex;gap:.15rem;justify-self:start}.topbar-nav-btn{background:none;border:none;color:#ffffffa6;font-size:.875rem;font-weight:500;padding:.4rem .7rem;border-radius:6px;cursor:pointer;transition:color .15s;box-shadow:none}.topbar-nav-btn:not(:disabled):hover{color:#fff;background:none;border:none;transform:none;box-shadow:none}.topbar-nav-btn:not(:disabled):active{transform:none;box-shadow:none}.topbar-nav-btn.active{color:#a5b4fc;background:none;border:none}.topbar-login-btn{background:#4f72f5e6;color:#fff;border:none;border-radius:8px;padding:.42rem 1.1rem;font-size:.875rem;font-weight:700;cursor:pointer;transition:background .15s,box-shadow .15s;box-shadow:0 2px 12px #4f72f559}.topbar-login-btn:hover{background:#4f72f5;box-shadow:0 4px 18px #4f72f58c;transform:none}.topbar-login-btn.active{background:#4f72f5}.topbar-right{display:flex;align-items:center;gap:.6rem;justify-self:end}.topbar-user{font-size:.82rem;color:#cfd4dc;white-space:nowrap}.topbar-logout{background:#ffffff1a;color:#f1f5f9;border:1px solid rgba(255,255,255,.16);font-size:.8rem;padding:.3rem .75rem;border-radius:6px;cursor:pointer;margin-top:0;box-shadow:none;transition:background .15s,border-color .15s}.topbar-logout:not(:disabled):hover{background:#ffffff2e;border-color:#ffffff4d;transform:none;box-shadow:none}.topbar-logout:not(:disabled):active{transform:none}.container{max-width:700px;margin:0 auto;padding:1.75rem 1.25rem 3rem}.auth-card{max-width:380px;margin:2rem auto 0}.card{background:var(--bg-surface);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-radius:var(--card-radius);padding:1.35rem;margin-bottom:1.1rem;border:1px solid rgba(255,255,255,.68);box-shadow:var(--shadow-md);animation:fadeInUp .45s ease both;transition:box-shadow .25s ease,transform .25s ease}.card:nth-child(2){animation-delay:.07s}.card:nth-child(3){animation-delay:.14s}.card:nth-child(4){animation-delay:.21s}.card:nth-child(5){animation-delay:.28s}.card:nth-child(6){animation-delay:.35s}.card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}form{display:grid;gap:.75rem}input,textarea,button{font:inherit;padding:.6rem .75rem;border-radius:8px;border:1px solid var(--line-soft)}input,textarea{background:#cdd5e2a6;color:var(--text-main);transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}input:focus,textarea:focus{outline:none;border-color:var(--accent);background:#dce4f8c7;box-shadow:0 0 0 3px var(--accent-glow)}select{font:inherit;transition:border-color .2s ease,box-shadow .2s ease}select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}button{cursor:pointer;background:var(--btn-main);color:#fff;border:none;box-shadow:0 3px 10px #00000038;transition:transform .15s ease,box-shadow .2s ease,background-color .18s ease}button.secondary{background:var(--btn-secondary);margin-top:.75rem}button.danger{background:var(--btn-danger)}button:disabled{opacity:.5;cursor:not-allowed}button:not(:disabled):hover{background:var(--btn-main-hover);transform:translateY(-2px);box-shadow:0 8px 22px #00000052}button:not(:disabled):active{transform:translateY(0) scale(.97);box-shadow:0 3px 10px #00000047}ul{list-style:none;padding:0;margin:0;display:grid;gap:.75rem}li{border:1px solid var(--line-soft);border-radius:8px;padding:.75rem;background:#ffffff59;transition:background .2s,box-shadow .2s,transform .18s}li.program-card-li{position:relative;padding-right:2.2rem}li:hover{background:#ffffff8c;box-shadow:var(--shadow-sm);transform:translate(2px)}.program-edit{display:grid;gap:.5rem}.programs-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.programs-header h2{margin:0}.programs-header button{margin-top:0;padding:.4rem 1rem;font-size:.875rem}.add-program-form{border-top:1px solid var(--line-soft);padding-top:1rem;margin-top:.25rem;display:grid;gap:.75rem}.actions{display:flex;gap:.5rem;margin-top:.5rem}.dropdown-row{display:flex;gap:.5rem;margin:.25rem 0 .5rem}.dropdown-panel{border:1px solid var(--line-soft);border-radius:10px;padding:.85rem;background:#ffffff4d}.custom-dropdown{position:relative;flex:1}.dropdown-trigger{width:100%;text-align:left;background:var(--btn-secondary);color:#f9fafb;border:1px solid #3c4148}.dropdown-trigger:not(:disabled):hover{background:#383d45}.dropdown-menu{position:absolute;z-index:50;width:100%;margin-top:.4rem;border:1px solid rgba(255,255,255,.55);border-radius:10px;background:#ffffffeb;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:.5rem;box-shadow:var(--shadow-md);animation:scaleIn .18s ease}.dropdown-options{margin-top:.5rem;max-height:220px;overflow-y:auto;display:grid;gap:.35rem}.dropdown-option{width:100%;text-align:left;background:#25282e;color:#f9fafb;border:1px solid #3c4148;transition:background .14s}.dropdown-option:not(:disabled):hover{background:#30343c;transform:none;box-shadow:0 2px 8px #00000040}.selector-actions{display:grid;grid-template-columns:1fr auto;gap:.5rem;align-items:start}.selector-actions>button{margin-top:0}.program-items{display:grid;gap:.75rem}.program-item{border:1px solid var(--line-soft);border-radius:9px;padding:.85rem;background:#ffffff52;animation:fadeInUp .3s ease both}.numbers-row{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-top:.5rem}.numbers-row label{display:grid;gap:.35rem}.field-hint{font-size:.8rem;color:var(--text-muted);margin:0}.program-readonly-items{list-style:disc;margin:.5rem 0 0 1.25rem;padding:0;display:block}.program-readonly-items li{border:none;border-radius:0;padding:0;background:none;transition:none}.program-readonly-items li:hover{background:none;box-shadow:none;transform:none}.program-header-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.details-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.details-header .secondary{margin-top:0}.detail-list{display:grid;gap:.75rem;margin-top:.75rem}.detail-item{border:1px solid var(--line-soft);border-radius:9px;padding:.85rem;background:#ffffff59;animation:fadeInUp .3s ease both;transition:box-shadow .2s,transform .18s}.detail-item:hover{box-shadow:var(--shadow-sm);transform:translate(3px)}.date-tracking{margin-top:1rem;border-top:1px solid var(--line-soft);padding-top:1rem}.manual-date-row{display:grid;grid-template-columns:1fr auto;gap:.5rem;margin-top:.5rem}.manual-date-row .secondary{margin-top:0}.date-list{margin-top:.75rem;display:grid;gap:.5rem;list-style:none;padding:0}.date-list li{display:flex;align-items:center;justify-content:space-between;gap:.5rem;border:1px solid var(--line-soft);border-radius:8px;padding:.6rem;animation:slideNotify .25s ease}.date-list .danger{margin-top:0}.deleted-badge{font-size:.8rem;font-weight:700;color:#991b1b;background:#fee2e2;border:1px solid #fecaca;border-radius:999px;padding:.15rem .5rem}.bulk-input{min-height:220px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.bulk-result{margin-top:.75rem;border:1px solid var(--line-soft);border-radius:8px;padding:.75rem;background:#fff6;animation:fadeInUp .3s ease}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#0a12238c;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:grid;place-items:center;padding:1rem;animation:fadeInUp .2s ease}.modal-card{width:min(560px,100%);background:#f8faffed;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-radius:var(--card-radius);border:1px solid rgba(255,255,255,.78);padding:1.25rem;display:grid;gap:.75rem;box-shadow:var(--shadow-lg);animation:scaleIn .22s ease}.modal-card textarea{min-height:120px}.modal-actions{display:flex;gap:.5rem;justify-content:flex-end}.advice-box{margin-top:.75rem;border:1px solid var(--line-soft);border-radius:10px;padding:.9rem;background:#ffffff4d;display:grid;gap:.5rem}.advice-box .field-hint{margin-top:0}.advice-result{margin-top:.5rem;border-top:1px solid var(--line-soft);padding-top:.75rem;display:grid;gap:.25rem;animation:fadeInUp .4s ease}.advice-result-title{font-size:1rem;font-weight:700;margin:0 0 .4rem;color:#1f2937}.advice-body{display:grid;gap:.5rem}.advice-heading{font-size:.9rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#374151;margin:.5rem 0 .1rem;padding-bottom:2px;border-bottom:2px solid var(--line-soft)}.advice-para{margin:0;font-size:.92rem;line-height:1.55;color:#374151}.advice-list{margin:0;padding-left:1.4rem;display:grid;gap:.3rem}.advice-list li{font-size:.92rem;line-height:1.55;color:#374151;border:none;border-radius:0;padding:0;background:none;transition:none}.advice-list li:hover{background:none;box-shadow:none;transform:none}.advice-safety{display:flex;align-items:flex-start;gap:.5rem;background:#fffbebe6;border:1px solid #fde68a;border-radius:6px;padding:.5rem .7rem;font-size:.88rem;color:#92400e;line-height:1.5}.advice-safety-icon{flex-shrink:0;font-size:1rem}.streaks-card h2{margin-top:0;margin-bottom:.75rem}.streaks-grid{display:flex;gap:.75rem;flex-wrap:wrap}.streak-item{flex:1;min-width:110px;background:linear-gradient(135deg,#1a2744,#2d4a8a,#1e3a6e);color:#f1f5f9;border-radius:12px;padding:1rem .85rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.25rem;box-shadow:0 6px 22px #1d3a7861;border:1px solid rgba(100,140,240,.22);animation:fadeInUp .5s ease both;transition:transform .22s ease,box-shadow .22s ease}.streak-item:nth-child(1){animation-delay:.05s}.streak-item:nth-child(2){background:linear-gradient(135deg,#1a3533,#0f766e,#134e4a);box-shadow:0 6px 22px #0f766e61;border-color:#2dd4bf38;animation-delay:.12s}.streak-item:nth-child(3){background:linear-gradient(135deg,#2a1a44,#6d28d9,#4c1d95);box-shadow:0 6px 22px #6d28d961;border-color:#a78bfa38;animation-delay:.19s}.streak-item:hover{transform:translateY(-5px) scale(1.03);box-shadow:0 14px 36px #1d3a787a}.streak-number{font-size:2.2rem;font-weight:800;line-height:1;animation:pop .65s ease .55s both}.streak-label{font-size:.76rem;color:#f1f5f9b8;text-transform:uppercase;letter-spacing:.07em}.streak-badge{font-size:1.4rem;margin-top:.15rem}.streaks-empty{color:var(--text-muted);font-size:.875rem;margin-top:.5rem}.pr-card h2{margin-top:0;margin-bottom:.75rem}.pr-form{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem;border:1px solid var(--line-soft);border-radius:10px;padding:.9rem;background:#ffffff40}.pr-form>input{padding:.4rem .6rem;border:1px solid var(--line-soft);border-radius:6px;font-size:.875rem}.pr-numbers{display:flex;align-items:flex-end;gap:.6rem;flex-wrap:wrap}.pr-numbers label{display:flex;flex-direction:column;gap:.1rem;font-size:.8rem;color:var(--text-muted)}.pr-numbers input{width:100px;padding:.35rem .5rem;border:1px solid var(--line-soft);border-radius:6px;font-size:.875rem}.pr-numbers button{padding:.4rem 1rem;font-size:.875rem}.pr-feedback{color:#166534;font-weight:600;font-size:.875rem;background:#dcfce7e6;border-radius:6px;padding:.4rem .7rem;animation:slideNotify .25s ease}.pr-empty{color:var(--text-muted);font-size:.875rem}.pr-list{list-style:none;padding:0;margin:.5rem 0 0;display:flex;flex-direction:column;gap:.4rem}.pr-item{display:flex;align-items:center;justify-content:space-between;background:#f8fafcb8;border:1px solid var(--line-soft);border-left:3px solid var(--btn-main);border-radius:9px;padding:.55rem .8rem;transition:background .2s,box-shadow .2s,transform .18s;animation:fadeInUp .3s ease both}.pr-item:hover{background:#ffffffe0;box-shadow:var(--shadow-sm);transform:translate(3px)}.pr-item-info{display:flex;flex-wrap:wrap;gap:.5rem;align-items:baseline}.pr-item-info strong{font-size:.9rem}.pr-item-info span{font-size:.825rem;color:var(--text-muted)}.pr-date{font-size:.75rem!important;color:#94a3b8!important}.pr-delete{padding:.15rem .5rem;font-size:1rem;line-height:1;min-width:unset}.metrics-log-card h2{margin-top:0;margin-bottom:.75rem}.metrics-log-form{margin-bottom:.75rem}.metrics-log-inputs{display:flex;align-items:flex-end;gap:.6rem;flex-wrap:wrap;border:1px solid var(--line-soft);border-radius:10px;padding:.9rem;background:#ffffff40}.metrics-log-inputs label{display:flex;flex-direction:column;gap:.1rem;font-size:.8rem;color:var(--text-muted)}.metrics-log-inputs input{width:110px;padding:.35rem .5rem;border:1px solid var(--line-soft);border-radius:6px;font-size:.875rem}.metrics-log-inputs input[type=text]{width:160px}.metrics-log-inputs button{padding:.4rem 1rem;font-size:.875rem}.metrics-log-empty{color:var(--text-muted);font-size:.875rem}.metrics-log-list{list-style:none;padding:0;margin:.5rem 0 0;display:flex;flex-direction:column;gap:.35rem}.metrics-log-item{display:flex;align-items:center;justify-content:space-between;background:#f8fafcb8;border:1px solid var(--line-soft);border-left:3px solid #6b7280;border-radius:8px;padding:.45rem .7rem;animation:fadeInUp .3s ease both;transition:background .2s,transform .18s}.metrics-log-item:hover{background:#ffffffe0;transform:translate(2px)}.metrics-log-item-info{display:flex;flex-wrap:wrap;gap:.6rem;align-items:baseline;font-size:.85rem}.metrics-log-date{color:#64748b;font-size:.8rem;min-width:75px}.metrics-log-note{color:var(--text-muted);font-style:italic;font-size:.8rem}.rest-timer{margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--line-soft)}.rest-timer h3{margin:0 0 .5rem;font-size:1rem}.rest-timer-display{text-align:center;padding:.85rem 0 .6rem}.rest-timer-display[data-active=true]{animation:pulse-timer 1.4s ease-in-out infinite}.rest-timer-time{font-size:3rem;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:.05em;color:var(--text-main);display:block;line-height:1;text-shadow:0 2px 10px rgba(0,0,0,.12);transition:color .3s ease,text-shadow .3s ease}.rest-timer-display[data-active=true] .rest-timer-time{color:#0f766e;text-shadow:0 2px 18px rgba(15,118,110,.32)}.rest-timer-progress{height:5px;background:var(--line-soft);border-radius:99px;overflow:hidden;margin:0 0 .85rem}.rest-timer-progress-bar{height:100%;background:linear-gradient(90deg,#0f766e,#14b8a6);border-radius:99px;transition:width 1s linear}.rest-timer-presets{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:.5rem}.rest-timer-presets button{padding:.3rem .8rem;font-size:.82rem;min-width:unset;border-radius:999px}.rest-timer-custom{display:flex;gap:.4rem;align-items:center}.rest-timer-custom input{width:70px;padding:.3rem .45rem;border:1px solid var(--line-soft);border-radius:6px;font-size:.85rem}.rest-timer-custom button{padding:.3rem .7rem;font-size:.825rem;min-width:unset}.equipment-selector{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.body-metrics-section{margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--line-soft)}.body-metrics-section h3{margin:0 0 .4rem;font-size:1rem}.metrics-hint{color:#b45309;font-size:.85rem;background:#fef3c7e0;border:1px solid #fde68a;border-radius:6px;padding:.45rem .7rem;margin-bottom:.6rem}.metrics-row{display:flex;align-items:flex-end;gap:.75rem;flex-wrap:wrap}.metrics-row label{display:flex;flex-direction:column;gap:.15rem;font-size:.82rem;color:var(--text-muted)}.metrics-row input{width:110px;padding:.35rem .5rem;border:1px solid var(--line-soft);border-radius:6px;font-size:.875rem}.metrics-row button{padding:.4rem 1rem;font-size:.875rem}.equipment-selector label{font-size:.875rem;white-space:nowrap}.equipment-selector select{flex:1;min-width:160px;padding:.35rem .5rem;border:1px solid var(--line-soft);border-radius:6px;font-size:.875rem;background:#cdd5e2b8;cursor:pointer}p{margin:.25rem 0}.message{color:#166534;text-align:center;animation:slideNotify .25s ease}.error{color:#b91c1c;text-align:center;animation:slideNotify .25s ease}.about-hint{margin:0 0 .6rem;font-size:.82rem;color:var(--text-muted);text-align:center}.auth-meta-hint{margin:.6rem 0 0;font-size:.8rem;color:var(--text-muted);text-align:center}.auth-wait-hint{margin:0;font-size:.86rem;color:#4b5563;background:#eef2f7d1;border:1px solid var(--line-soft);border-radius:8px;padding:.55rem .65rem;animation:slideNotify .25s ease}.account-card{max-width:440px;margin:2rem auto 0}.account-title{font-size:1.6rem;font-weight:800;letter-spacing:-.04em;margin:0 0 .25rem;background:linear-gradient(120deg,#fff,#a5b4fc 38%,#5eead4 65%,#fff);background-size:260% 260%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:gradientShift 6s ease-in-out infinite;display:inline-block}.account-subtitle{font-size:.88rem;color:var(--text-muted);margin:0 0 1.25rem}.account-subtitle strong{color:var(--text-main)}.account-section{border-top:1px solid var(--line-soft);padding-top:1rem}.account-section-title{font-size:.95rem;font-weight:700;margin:0 0 1rem;color:var(--text-main);text-transform:uppercase;letter-spacing:.05em}.account-pw-form{display:grid;gap:.75rem}.account-field-label{display:grid;gap:.3rem;font-size:.82rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.account-field-label input{font-size:.95rem;text-transform:none;letter-spacing:0}.account-success{color:#166534;font-weight:600;font-size:.875rem;background:#dcfce7e6;border:1px solid #86efac;border-radius:8px;padding:.5rem .75rem;margin:0;animation:slideNotify .25s ease}.account-error{color:#991b1b;font-weight:600;font-size:.875rem;background:#fee2e2e6;border:1px solid #fca5a5;border-radius:8px;padding:.5rem .75rem;margin:0;animation:slideNotify .25s ease}.landing-hero{width:100%;min-height:100vh;padding:5rem 2rem 6rem;display:flex;flex-direction:column;justify-content:center;position:relative;background:radial-gradient(ellipse at 30% 60%,rgba(79,114,245,.12) 0%,transparent 60%),radial-gradient(ellipse at 70% 20%,rgba(94,234,212,.08) 0%,transparent 50%);border-bottom:1px solid rgba(100,120,255,.12)}.landing-scroll-arrow{position:absolute;bottom:2rem;left:50%;transform:translate(-50%);color:#a5b4fc8c;display:flex;flex-direction:column;align-items:center;gap:.15rem;animation:landing-bounce 2.2s ease-in-out infinite;cursor:default}.landing-scroll-arrow svg{display:block}@keyframes landing-bounce{0%,to{transform:translate(-50%) translateY(0);opacity:.55}50%{transform:translate(-50%) translateY(9px);opacity:1}}.landing-hero-inner{max-width:960px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.landing-hero-left{display:flex;flex-direction:column;gap:1.5rem}.landing-title{font-size:3.2rem;font-weight:900;letter-spacing:-.06em;line-height:1.05;margin:0;background:linear-gradient(120deg,#fff,#a5b4fc 40%,#5eead4,#fff);background-size:260% 260%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:fadeInUp .45s ease .1s both,gradientShift 6s ease-in-out infinite .55s}.landing-subtitle{font-size:1.1rem;line-height:1.75;color:#cbd5e1d9;margin:0;animation:fadeInUp .45s ease .2s both}.landing-subtitle strong{color:#a5b4fc;font-weight:700}.landing-cta-group{display:flex;flex-direction:row;flex-wrap:wrap;gap:.85rem;align-items:center;animation:fadeInUp .45s ease .3s both}.landing-cta-primary{font-size:1.15rem;font-weight:800;padding:1rem 2.4rem;border-radius:12px;background:linear-gradient(135deg,#4f72f5,#6c8fff);color:#fff;border:none;cursor:pointer;box-shadow:0 8px 28px #4f72f573;letter-spacing:-.01em;transition:transform .15s,box-shadow .15s,filter .15s}.landing-cta-primary:hover{transform:translateY(-2px);box-shadow:0 14px 36px #4f72f599;filter:brightness(1.08)}.landing-cta-secondary{font-size:.97rem;font-weight:600;padding:0;background:none;border:none;color:#a5b4fcd9;cursor:pointer;text-decoration:underline;text-underline-offset:3px;transition:color .15s}.landing-cta-secondary:hover{color:#a5b4fc}.landing-hero-right{display:flex;justify-content:center;align-items:center;animation:fadeInUp .5s ease .35s both}.landing-mockup{background:#0c1228eb;border:1px solid rgba(100,120,255,.25);border-radius:14px;overflow:hidden;box-shadow:0 24px 60px #0000008c,inset 0 0 0 1px #ffffff0d;width:100%;max-width:360px}.landing-mockup-topbar{display:flex;align-items:center;gap:.4rem;padding:.65rem 1rem;background:#ffffff0a;border-bottom:1px solid rgba(100,120,255,.15)}.landing-mockup-dot{width:10px;height:10px;border-radius:50%;background:#ffffff26;display:inline-block}.landing-mockup-prog{font-size:.82rem;font-weight:700;color:#a5b4fcd9;margin-left:auto;letter-spacing:.03em}.landing-mockup-body{padding:1rem;display:flex;flex-direction:column;gap:.45rem}.landing-mockup-row{display:flex;justify-content:space-between;align-items:center;padding:.45rem .7rem;background:#ffffff0d;border-radius:7px;font-size:.87rem;color:#e2e8f0;border-left:3px solid rgba(165,180,252,.5)}.landing-mockup-sets{font-size:.8rem;font-weight:700;color:#a5b4fc}.landing-mockup-divider{height:1px;background:#6478ff2e;margin:.2rem 0}.landing-mockup-ai{display:flex;gap:.5rem;align-items:flex-start;padding:.55rem .7rem;background:#4f72f51a;border:1px solid rgba(79,114,245,.2);border-radius:7px;font-size:.82rem;color:#a5b4fce6;margin-top:.1rem}.landing-mockup-ai em{font-style:italic;line-height:1.5}.link-btn{background:none;border:none;padding:0;font:inherit;color:var(--accent);cursor:pointer;text-decoration:underline;box-shadow:none}.link-btn:hover{opacity:.8;transform:none;box-shadow:none}.info-cta{font-size:1rem;font-weight:700;padding:.85rem 2.5rem;border-radius:12px;letter-spacing:.01em;background:linear-gradient(135deg,#151618,#2d3035);box-shadow:0 6px 22px #0000004d}.info-cta:not(:disabled):hover{background:linear-gradient(135deg,#232529,#3a3f47);transform:translateY(-3px);box-shadow:0 12px 30px #0006}.landing-stats-bar{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;border-top:1px solid rgba(100,120,255,.12);border-bottom:1px solid rgba(100,120,255,.12);background:#0a0f2080;padding:1.5rem 2rem;gap:0}.landing-stat{display:flex;flex-direction:column;align-items:center;gap:.2rem;padding:.5rem 2.5rem;border-right:1px solid rgba(100,120,255,.18)}.landing-stat:last-child{border-right:none}.landing-stat-num{font-size:1.6rem;font-weight:900;letter-spacing:-.04em;line-height:1;color:#fbbf24}.landing-stat:nth-child(2) .landing-stat-num{color:#60a5fa}.landing-stat:nth-child(3) .landing-stat-num{color:#34d399}.landing-stat:nth-child(4) .landing-stat-num{color:#c084fc}.landing-stat-label{font-size:.72rem;font-weight:600;color:#cbd5e199;text-transform:uppercase;letter-spacing:.07em}.landing-features{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;max-width:960px;margin:3rem auto;padding:0 2rem}.landing-feature-card{background:#0a0f20b8;border:1px solid rgba(100,120,255,.15);border-radius:13px;padding:1.5rem 1.25rem;display:flex;flex-direction:column;gap:.6rem;transition:transform .2s,box-shadow .2s,border-color .2s;animation:fadeInUp .4s ease both}.landing-feature-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px #4f72f52e;border-color:#6478ff59}.landing-feature-card:nth-child(1){animation-delay:.1s}.landing-feature-card:nth-child(2){animation-delay:.17s}.landing-feature-card:nth-child(3){animation-delay:.24s}.landing-feature-card:nth-child(4){animation-delay:.31s}.landing-feature-card:nth-child(5){animation-delay:.38s}.landing-feature-card:nth-child(6){animation-delay:.45s}.landing-feature-icon{font-size:1.8rem;line-height:1}.landing-feature-title{font-size:1rem;font-weight:800;margin:0;color:#e2e8f0;letter-spacing:-.02em}.landing-feature-desc{font-size:.87rem;line-height:1.65;color:#cbd5e1b3;margin:0}.about-tiles{display:flex;gap:.75rem;flex-wrap:wrap;max-width:700px;margin:1.25rem auto}.about-tile{flex:1;min-width:130px;color:#f1f5f9;border-radius:13px;padding:1.1rem 1rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.3rem;border:1px solid rgba(255,255,255,.12);animation:fadeInUp .5s ease both;transition:transform .22s ease,box-shadow .22s ease;cursor:default}.about-tile:hover{transform:translateY(-6px) scale(1.04)}.about-tile:nth-child(1){animation-delay:.08s}.about-tile:nth-child(2){animation-delay:.16s}.about-tile:nth-child(3){animation-delay:.24s}.about-tile:nth-child(4){animation-delay:.32s}.about-tile--blue{background:linear-gradient(135deg,#1a2744,#2d4a8a 55%,#1e3a6e);box-shadow:0 8px 28px #1d3a7873;border-color:#648cf040}.about-tile--blue:hover{box-shadow:0 18px 42px #1d3a7899}.about-tile--teal{background:linear-gradient(135deg,#1a3533,#0f766e 55%,#134e4a);box-shadow:0 8px 28px #0f766e73;border-color:#2dd4bf40}.about-tile--teal:hover{box-shadow:0 18px 42px #0f766e99}.about-tile--purple{background:linear-gradient(135deg,#2a1a44,#6d28d9 55%,#4c1d95);box-shadow:0 8px 28px #6d28d973;border-color:#a78bfa40}.about-tile--purple:hover{box-shadow:0 18px 42px #6d28d999}.about-tile--amber{background:linear-gradient(135deg,#3b1a08,#b45309 55%,#78350f);box-shadow:0 8px 28px #b4530973;border-color:#fbbf2440}.about-tile--amber:hover{box-shadow:0 18px 42px #b4530999}.about-tile-icon{font-size:1.6rem;line-height:1;animation:pop .7s ease .6s both;display:block}.about-tile-value{font-size:1.55rem;font-weight:800;line-height:1;letter-spacing:-.02em}.about-tile-label{font-size:.72rem;color:#f1f5f9ad;text-transform:uppercase;letter-spacing:.08em}.info-example{max-width:960px;margin:0 auto 3rem;padding:0 2rem;animation:fadeInUp .55s ease .15s both}.info-example-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;align-items:start}.info-example-left,.info-example-right{background:#0a0f20b8;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(100,120,255,.18);border-radius:var(--card-radius);padding:1.35rem;box-shadow:0 16px 52px #080c2399,inset 0 0 0 1px #ffffff0d}.info-example-right{min-height:200px;display:flex;flex-direction:column;gap:.75rem}.info-example-heading{font-size:1.2rem;font-weight:800;letter-spacing:-.03em;margin:0 0 .25rem;background:linear-gradient(120deg,#fff,#a5b4fc 38%,#5eead4 65%,#fff);background-size:260% 260%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:gradientShift 6s ease-in-out infinite}.info-example-sub{font-size:.88rem;color:#cbd5e1bf;margin:0 0 1rem}.example-program-card{padding:0;margin-bottom:0}.example-program-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.75rem;flex-wrap:wrap;color:#e2e8f0}.example-equipment-badge{font-size:.78rem;font-weight:600;background:#a5b4fc1f;border:1px solid rgba(165,180,252,.3);border-radius:999px;padding:.2rem .65rem;color:#a5b4fc}.example-exercises{list-style:none;padding:0;margin:0;display:grid;gap:.35rem}.example-exercises li{border:none;border-radius:7px;padding:.42rem .7rem;font-size:.88rem;background:#ffffff12;border-left:3px solid rgba(165,180,252,.65);color:#e2e8f0;transition:background .18s,transform .18s,box-shadow .18s;animation:fadeInUp .35s ease both}.example-exercises li:nth-child(1){animation-delay:.1s}.example-exercises li:nth-child(2){animation-delay:.17s}.example-exercises li:nth-child(3){animation-delay:.24s}.example-exercises li:nth-child(4){animation-delay:.31s}.example-exercises li:nth-child(5){animation-delay:.38s}.example-exercises li:nth-child(6){animation-delay:.45s}.example-exercises li:nth-child(7){animation-delay:.52s}.example-exercises li:hover{background:#a5b4fc1f;transform:translate(5px);box-shadow:0 2px 12px #6478ff2e}.info-example-btn{width:100%;font-size:.95rem;font-weight:700;padding:.7rem 1.5rem;border-radius:10px}.example-advice-result{margin-top:1rem;background:#ffffff0d;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border:1px solid rgba(165,180,252,.15);border-radius:10px;padding:1rem;box-shadow:0 4px 18px #0000004d;animation:fadeInUp .4s ease}.example-advice-title{font-size:.95rem;font-weight:700;margin:0 0 .5rem;color:#a5b4fc;text-transform:uppercase;letter-spacing:.04em}@media (max-width: 640px){.topbar{height:auto;min-height:52px;padding:.45rem 1rem;flex-wrap:wrap;gap:.3rem}.topbar-brand{flex:1;font-size:.95rem}.topbar-right{margin-left:0;order:3;width:100%;padding-bottom:.25rem;justify-content:flex-end}.topbar-nav{order:2;flex-wrap:wrap}.topbar-nav-btn{font-size:.8rem;padding:.3rem .65rem}.container{padding:1.2rem .85rem 2.5rem}.about-tiles{gap:.5rem}.about-tile{min-width:110px;padding:.9rem .7rem}.about-tile-value{font-size:1.3rem}.streaks-grid{gap:.5rem}.streak-item{min-width:95px;padding:.85rem .65rem}.streak-number{font-size:1.85rem}.pr-numbers{flex-direction:column;align-items:stretch}.pr-numbers input{width:100%}.metrics-log-inputs{flex-direction:column;align-items:stretch}.metrics-log-inputs input,.metrics-log-inputs input[type=text]{width:100%}.metrics-row{flex-direction:column;align-items:stretch}.metrics-row input{width:100%}.dropdown-row{flex-direction:column}.landing-hero{padding:3rem 1.25rem 5rem}.landing-hero-inner{grid-template-columns:1fr;gap:2.5rem}.landing-hero-right{order:2}.landing-title{font-size:2.2rem}.landing-features{grid-template-columns:repeat(2,1fr);padding:0 1.25rem;margin:2rem auto}.info-example{padding:0 1.25rem}.info-example-grid{grid-template-columns:1fr}.landing-stat{padding:.5rem 1.5rem}.info-cta{padding:.75rem 1.85rem}}@media (max-width: 480px){.topbar-user{display:none}.card{padding:1rem}.landing-title{font-size:1.8rem}.landing-features{grid-template-columns:1fr}.landing-stat{padding:.5rem 1rem;border-right:none;border-bottom:1px solid rgba(100,120,255,.15)}.landing-stat:last-child{border-bottom:none}.landing-cta-group{flex-direction:column;align-items:flex-start}.about-tiles{gap:.4rem}.about-tile{min-width:80px;padding:.75rem .5rem}.about-tile-value{font-size:1.15rem}.about-tile-icon{font-size:1.3rem}.streaks-grid{gap:.4rem}.streak-item{min-width:80px;padding:.7rem .5rem}.streak-number{font-size:1.6rem}.streak-badge{font-size:1.1rem}.rest-timer-time{font-size:2.4rem}.pr-numbers button,.metrics-log-inputs button,.metrics-row button{width:100%;margin-top:.25rem}.actions{flex-direction:column}.manual-date-row,.numbers-row{grid-template-columns:1fr}.modal-card{padding:1rem}.info-title{font-size:1.45rem}}.tools-page{max-width:1060px;margin:0 auto;padding:2.5rem 1.25rem 4rem}.tools-title{font-size:clamp(1.6rem,4vw,2.5rem);font-weight:900;text-align:center;background:linear-gradient(120deg,#fff,#a5b4fc 38%,#5eead4 65%,#fff);background-size:260% 260%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:gradientShift 6s ease-in-out infinite;margin-bottom:.35rem}.tools-subtitle{text-align:center;color:#f1f5f98c;font-size:.95rem;margin-bottom:2.5rem}.tools-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:1.5rem;align-items:start}.tool-card{background:#0a0f20b8;border:1px solid rgba(100,120,255,.18);border-radius:18px;box-shadow:0 16px 52px #080c2399,inset 0 0 0 1px #ffffff0d;padding:0 0 1.5rem;overflow:hidden;animation:fadeInUp .55s ease both;display:flex;flex-direction:column}.tool-card:nth-child(2){animation-delay:.1s}.tool-card:nth-child(3){animation-delay:.2s}.tool-card-header{display:flex;align-items:center;gap:.65rem;padding:1.1rem 1.4rem;border-bottom:1px solid rgba(255,255,255,.06)}.tool-card-header--blue{background:linear-gradient(110deg,#3b82f638,#6366f11f)}.tool-card-header--teal{background:linear-gradient(110deg,#14b8a638,#6366f11f)}.tool-card-header--purple{background:linear-gradient(110deg,#8b5cf640,#6366f11f)}.tool-card-icon{font-size:1.5rem}.tool-card-title{font-size:1.05rem;font-weight:800;color:#f1f5f9;margin:0}.tool-card-desc{font-size:.83rem;color:#f1f5f980;padding:.9rem 1.4rem .5rem;line-height:1.5;margin:0}.tool-form{display:flex;flex-direction:column;gap:.75rem;padding:.5rem 1.4rem 0}.tool-row{display:grid;grid-template-columns:1fr 1fr;gap:.65rem}.tool-label{display:flex;flex-direction:column;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#f1f5f98c;gap:.3rem}.tool-label input,.tool-label select{background:#ffffff12;border:1px solid rgba(255,255,255,.12);border-radius:9px;color:#f1f5f9;padding:.5rem .7rem;font-size:.9rem;font-family:inherit;transition:border-color .2s,box-shadow .2s;outline:none}.tool-label input:focus,.tool-label select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.tool-label select option{background:#1a1f35;color:#f1f5f9}.tool-form button{background:var(--btn-main);border:1px solid rgba(255,255,255,.1);border-radius:10px;color:#f1f5f9;font-size:.88rem;font-weight:700;padding:.55rem 1rem;cursor:pointer;transition:background .2s,box-shadow .2s,transform .1s;font-family:inherit;margin-top:.1rem}.tool-form button:hover{background:#252831;box-shadow:0 0 0 2px var(--accent-glow);transform:translateY(-1px)}.tool-result{margin:1.1rem 1.4rem 0;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:1rem;animation:scaleIn .3s cubic-bezier(.34,1.56,.64,1) both}.tool-result--gauge{display:flex;flex-direction:column;align-items:center;gap:.4rem}.bmi-gauge-svg{width:150px;height:100px}.tool-result-label{font-size:1.1rem;font-weight:800;margin:0}.bmi-zones{display:grid;grid-template-columns:1fr 1fr;gap:.25rem .75rem;font-size:.72rem;color:#f1f5f999}.tool-result--tdee{display:flex;flex-direction:column;gap:.45rem}.tdee-row{display:flex;justify-content:space-between;align-items:center;padding:.35rem 0;border-bottom:1px solid rgba(255,255,255,.05)}.tdee-row:last-child{border-bottom:none}.tdee-main .tdee-label,.tdee-main .tdee-value{font-size:1rem;font-weight:800}.tdee-label{font-size:.8rem;color:#f1f5f999}.tdee-value{font-size:.9rem;font-weight:700}.orm-max{font-size:.92rem;color:#f1f5f9bf;margin:0 0 .75rem}.orm-table{width:100%;border-collapse:collapse;font-size:.8rem}.orm-table th{color:#f1f5f973;font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;padding:.2rem .4rem .4rem;text-align:left;border-bottom:1px solid rgba(255,255,255,.08)}.orm-table td{padding:.28rem .4rem;border-bottom:1px solid rgba(255,255,255,.04);color:#f1f5f9cc}.orm-table tr:last-child td{border-bottom:none}.orm-use{color:#f1f5f973!important;font-size:.72rem!important}@media (max-width: 640px){.tools-grid,.tool-row{grid-template-columns:1fr}}html.dark{--bg-page: #13151f;--bg-surface: rgba(22, 26, 42, .92);--bg-surface-solid: #1e2232;--text-main: #f1f5f9;--text-muted: #94a3b8;--line-soft: rgba(51, 65, 85, .8);--btn-main: #4f72f5;--btn-main-hover: #6b8af7;--btn-secondary: #2d3550;--btn-danger: #ef4444;--accent: #6b8af7;--accent-glow: rgba(107, 138, 247, .25);--shadow-sm: 0 2px 10px rgba(0, 0, 0, .35);--shadow-md: 0 8px 28px rgba(0, 0, 0, .45);--shadow-lg: 0 18px 48px rgba(0, 0, 0, .6);color:var(--text-main);background-color:var(--bg-page)}html.dark body{background:linear-gradient(160deg,#090b12,#111827 42%,#1a2035)}html.dark .card{border-color:#ffffff12}html.dark input,html.dark textarea{background:#1e263cd9;color:var(--text-main);border-color:#4755698c}html.dark input::placeholder,html.dark textarea::placeholder{color:#94a3b88c}html.dark input:focus,html.dark textarea:focus{background:#283450f2;border-color:var(--accent)}html.dark select{background:#1e263cd9;color:var(--text-main);border-color:#4755698c}html.dark select option{background:#1e2640;color:var(--text-main)}html.dark .modal-card,html.dark .dropdown-menu{background:#1a2038;border-color:#ffffff17}html.dark .dropdown-option:hover{background:#6b8af72e}html.dark .detail-item,html.dark .program-item,html.dark .metrics-log-item,html.dark .pr-item{background:#1e2841b3;border-color:#ffffff12}html.dark .metrics-log-item:hover,html.dark .pr-item:hover{background:#283658e0}html.dark .auth-wait-hint{background:#162037d1;border-color:#ffffff14;color:var(--text-muted)}html.dark .account-success{background:#063c2c73;border-color:#34d3994d;color:#6ee7b7}html.dark .account-error,html.dark .deleted-badge{background:#64141466;border-color:#f871714d;color:#fca5a5}html.dark .metrics-log-date,html.dark .pr-date,html.dark .pr-item span{color:var(--text-muted)}html.dark .about-tile{background:#1e2841bf;border-color:#ffffff12}html.dark .example-program-card{background:#1e284199;border-color:#ffffff14}html.dark .advice-result-title,html.dark .advice-heading,html.dark .advice-para,html.dark .advice-list li{color:var(--text-main)}html.dark .advice-heading{border-bottom-color:var(--line-soft)}html.dark .metrics-log-date{color:var(--text-muted)}html.dark .rest-timer-display[data-active=true] .rest-timer-time{color:#2dd4bf;text-shadow:0 2px 18px rgba(45,212,191,.32)}html.dark .message{color:#6ee7b7}html.dark .advice-safety{background:#eab3081a;border-color:#eab3084d}html.dark .tool-card{background:#161c32e6;border-color:#ffffff12}html.dark .tool-result--orm,html.dark .tool-result--tdee{background:#1e284199}html.dark .orm-table th,html.dark .orm-table td{border-color:#ffffff0f}html.dark .date-list li{border-color:#ffffff12}.topbar-darkmode{background:#ffffff14;border:1px solid rgba(255,255,255,.12);color:#f9fafb;font-size:1rem;padding:.3rem .55rem;border-radius:7px;cursor:pointer;transition:background .18s;line-height:1;box-shadow:none;margin-top:0}.topbar-darkmode:hover{background:#ffffff29;transform:none;box-shadow:none}.weight-chart-wrap{margin:.75rem 0 .5rem}.weight-chart-label{font-size:.78rem;color:var(--text-muted);margin:0 0 .35rem;font-weight:600;letter-spacing:.02em}.weight-chart-svg{width:100%;height:auto;max-height:130px;display:block;color:var(--text-main)}.workout-calendar{-webkit-user-select:none;user-select:none}.cal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.6rem}.cal-month-label{font-size:.92rem;font-weight:700;color:var(--text-main)}.cal-nav{background:#4f72f526;border:1px solid rgba(79,114,245,.3);color:var(--accent);font-size:1.1rem;padding:.15rem .6rem;border-radius:6px;cursor:pointer;line-height:1.4;box-shadow:none;transition:background .15s;margin-top:0}.cal-nav:hover{background:#4f72f547;transform:none;box-shadow:none}.cal-weekdays{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;margin-bottom:.3rem}.cal-weekdays span{font-size:.7rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;padding:.2rem 0}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.cal-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.35rem .15rem;border-radius:7px;font-size:.78rem;font-weight:500;color:var(--text-main);position:relative;cursor:default;min-height:34px;transition:background .15s}.cal-cell--worked{cursor:pointer}.cal-cell--worked:hover{background:#34d39947;transform:scale(1.08)}.cal-cell--today.cal-cell--worked:hover{background:#4f72f559}.cal-cell[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);white-space:nowrap;background:#0f172aeb;color:#f1f5f9;font-size:.72rem;font-weight:500;padding:.3rem .6rem;border-radius:6px;pointer-events:none;opacity:0;transition:opacity .12s ease;z-index:50;max-width:200px;white-space:normal;text-align:center;line-height:1.3;box-shadow:0 4px 12px #0000004d}.cal-cell[data-tooltip]:hover:after{opacity:1}.cal-cell--empty{background:transparent}.cal-cell--today{background:#4f72f533;border:1px solid rgba(79,114,245,.5);font-weight:800;color:var(--accent)}.cal-cell--worked{background:#34d39926;border:1px solid rgba(52,211,153,.3)}.cal-cell--today.cal-cell--worked{background:#4f72f540;border-color:#4f72f599}.cal-dot{display:block;width:5px;height:5px;border-radius:50%;background:#34d399;margin-top:2px}.cal-legend{font-size:.7rem;color:var(--text-muted);margin:.5rem 0 0;text-align:center}.history-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.4rem}.history-item{display:flex;align-items:center;justify-content:space-between;padding:.5rem .65rem;border-radius:8px;background:#4f72f50f;border:1px solid rgba(79,114,245,.12);gap:.75rem}.history-date{font-size:.78rem;color:var(--text-muted);white-space:nowrap}.history-program{font-size:.82rem;font-weight:600;color:var(--text-main);text-align:right}.history-delete-btn{margin-left:auto;flex-shrink:0;background:none;border:none;color:var(--text-muted);font-size:1rem;line-height:1;padding:0 .2rem;cursor:pointer;border-radius:4px;transition:color .15s,background .15s;box-shadow:none}.history-delete-btn:hover{color:var(--btn-danger);background:#ef44441a;transform:none;box-shadow:none}.history-more{font-size:.75rem;color:var(--text-muted);margin:.6rem 0 0;text-align:center}.account-danger-zone{margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid rgba(239,68,68,.25)}.danger-title{color:#ef4444!important}.account-danger-desc{font-size:.82rem;color:var(--text-muted);margin:0 0 .85rem;line-height:1.5}.delete-account-modal{border-top:3px solid #ef4444}.delete-modal-title{color:#ef4444;margin:0 0 .5rem}.delete-modal-desc{font-size:.82rem;color:var(--text-muted);margin:0 0 1rem;line-height:1.5}.advice-limit-msg{display:flex;align-items:flex-start;gap:.5rem;padding:.7rem .85rem;border-radius:9px;background:#eab3081a;border:1px solid rgba(234,179,8,.3);font-size:.84rem;color:#ca8a04;margin-top:.5rem;line-height:1.5}html.dark .advice-limit-msg{color:#fbbf24;background:#eab30814}.advice-limit-icon{font-size:1rem;flex-shrink:0;margin-top:.05rem}.advice-result-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.5rem;margin-bottom:.5rem}.advice-result-header .advice-result-title{margin:0}.advice-meta{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.advice-source-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .55rem;border-radius:100px;font-size:.72rem;font-weight:600;background:#4f72f524;color:var(--accent);border:1px solid rgba(79,114,245,.28);letter-spacing:.01em}.advice-timestamp{font-size:.7rem;color:var(--text-muted);white-space:nowrap}.advice-guest-notice{display:flex;gap:1rem;align-items:flex-start;padding:1rem 1.2rem;background:#4f72f514;border:1px solid rgba(79,114,245,.22);border-radius:10px;margin-bottom:1.4rem}.advice-guest-notice-icon{font-size:1.5rem;flex-shrink:0;line-height:1;margin-top:.1rem}.advice-guest-notice strong{display:block;font-size:1rem;color:var(--text-main);margin-bottom:.35rem}.advice-guest-notice p{font-size:.88rem;color:var(--text-muted);margin:0;line-height:1.5}html.dark .advice-guest-notice{background:#4f72f51a;border-color:#4f72f54d}.advice-guest-example-section{display:flex;flex-direction:column;gap:.75rem}.advice-generic-disclaimer{padding:.6rem .9rem;background:#eab3081a;border:1px solid rgba(234,179,8,.3);border-radius:8px;font-size:.82rem;color:#ca8a04;line-height:1.4;margin-bottom:.25rem}html.dark .advice-generic-disclaimer{color:#fbbf24;background:#eab30814}:root{--sidebar-width: 240px;--sidebar-bg: rgba(22, 24, 28, .96);--sidebar-border: rgba(255, 255, 255, .07);--sidebar-item-hover: rgba(255, 255, 255, .07);--sidebar-item-active: rgba(79, 114, 245, .18);--sidebar-text: rgba(255, 255, 255, .82);--sidebar-text-muted: rgba(255, 255, 255, .42);--mobile-topbar-h: 52px}.app-layout{display:flex;min-height:100vh;position:relative}.sidebar{position:fixed;top:0;left:0;width:var(--sidebar-width);height:100vh;background:var(--sidebar-bg);border-right:1px solid var(--sidebar-border);display:flex;flex-direction:column;z-index:200;overflow-y:auto;overflow-x:hidden;transition:transform .25s cubic-bezier(.4,0,.2,1);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.sidebar-logo{display:flex;align-items:center;gap:.6rem;padding:1.25rem 1.1rem 1rem;cursor:pointer;-webkit-user-select:none;user-select:none;border-bottom:1px solid var(--sidebar-border);margin-bottom:.5rem;flex-shrink:0}.sidebar-logo-icon{font-size:1.4rem}.sidebar-logo-text{font-size:1rem;font-weight:700;color:#fff;letter-spacing:-.01em}.sidebar-nav{display:flex;flex-direction:column;gap:2px;padding:0 .5rem;flex:1}.sidebar-item{display:flex;align-items:center;gap:.65rem;width:100%;padding:.62rem .75rem;border:none;border-radius:8px;background:transparent;color:var(--sidebar-text);font-size:.875rem;font-weight:500;cursor:pointer;text-align:left;transition:background .15s,color .15s}.sidebar-item:hover{background:var(--sidebar-item-hover)}.sidebar-item.active{background:var(--sidebar-item-active);color:#fff;font-weight:600}.sidebar-icon{font-size:1rem;width:1.25rem;text-align:center;flex-shrink:0}.sidebar-spacer{flex:1}.sidebar-bottom{padding:.5rem .5rem 1rem;flex-shrink:0}.sidebar-divider{height:1px;background:var(--sidebar-border);margin:.5rem .25rem .75rem}.sidebar-darkmode-btn{color:var(--sidebar-text)}.sidebar-user-row{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;gap:.5rem;margin-top:.25rem}.sidebar-username{font-size:.78rem;color:var(--sidebar-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.sidebar-logout-btn{border:1px solid rgba(255,255,255,.18);background:transparent;color:var(--sidebar-text);border-radius:6px;padding:.28rem .65rem;font-size:.75rem;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:background .15s,border-color .15s}.sidebar-logout-btn:hover{background:#ffffff14;border-color:#ffffff52}.main-content{margin-left:var(--sidebar-width);flex:1;min-height:100vh;display:flex;flex-direction:column}.page-container{max-width:1000px;width:100%;margin:0 auto;padding:2rem 1.5rem 4rem;display:flex;flex-direction:column;gap:1.5rem;animation:pageEnter .18s ease both}@keyframes pageEnter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.mobile-topbar{display:none;position:sticky;top:0;z-index:200;height:var(--mobile-topbar-h);background:#16181cf7;border-bottom:1px solid var(--sidebar-border);padding:0 1rem;align-items:center;justify-content:space-between;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);flex-shrink:0;gap:.5rem}.mobile-app-title{font-size:.95rem;font-weight:700;color:#fff;flex-shrink:0}.mobile-topbar-right{display:flex;align-items:center;gap:.5rem;margin-left:auto}.mobile-username{font-size:.78rem;color:#ffffff8c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100px}.mobile-icon-btn{background:transparent;border:none;font-size:1.1rem;cursor:pointer;padding:.25rem;line-height:1;min-height:unset}.mobile-logout-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.18);color:#ffffffd9;border-radius:6px;font-size:.78rem;font-weight:600;padding:.3rem .65rem;cursor:pointer;white-space:nowrap;min-height:unset}.mobile-logout-btn:hover{background:#ffffff2e}.mobile-nav{display:none;position:sticky;top:var(--mobile-topbar-h);z-index:199;background:#16181cf7;border-bottom:2px solid var(--sidebar-border);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);flex-shrink:0;flex-direction:column}.mobile-nav-item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.9rem 1.25rem;background:transparent;border:none;border-bottom:3px solid var(--accent);cursor:pointer;color:#fff;font-size:1rem;font-weight:600;min-height:unset;-webkit-tap-highlight-color:transparent;transition:background .15s}.mobile-nav-item:hover,.mobile-nav-item.open{background:#ffffff0d}.mobile-nav-current{font-size:1rem;font-weight:600}.mobile-nav-chevron{font-size:1.1rem;color:#fff9;transition:transform .2s ease;display:inline-block}.mobile-nav-chevron.rotated{transform:rotate(180deg)}.mobile-nav-dropdown{display:flex;flex-direction:column;background:#121418fc;border-top:1px solid var(--sidebar-border);animation:slideUpSheet .18s ease;max-height:70vh;overflow-y:auto}.mobile-nav-dd-item{display:flex;align-items:center;gap:.75rem;width:100%;padding:1rem 1.25rem;background:transparent;border:none;border-bottom:1px solid rgba(255,255,255,.06);cursor:pointer;color:#ffffffb8;font-size:1rem;font-weight:500;text-align:left;min-height:unset;-webkit-tap-highlight-color:transparent;transition:background .12s,color .12s}.mobile-nav-dd-item:last-child{border-bottom:none}.mobile-nav-dd-item:hover{background:#ffffff12;color:#fff}.mobile-nav-dd-item.active{color:#fff;background:#4f72f52e;border-left:3px solid var(--accent);padding-left:calc(1.25rem - 3px);font-weight:700}.sidebar-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000085;z-index:150;animation:fadeIn .18s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (max-width: 1024px){.sidebar{display:none}.sidebar-overlay{display:none!important}.app-layout{flex-direction:column}.mobile-topbar,.mobile-nav{display:flex}.main-content{margin-left:0;width:100%}.page-container{padding:1.25rem 1rem 3rem}}html.dark .sidebar{--sidebar-bg: rgba(14, 15, 18, .98)}.calendar-card .container,.calendar-card{overflow:visible}.guest-banner{display:flex;align-items:flex-start;gap:.6rem;padding:.7rem 1rem;background:#fbbf241f;border:1px solid rgba(251,191,36,.35);border-radius:10px;font-size:.875rem;line-height:1.5;color:var(--text-main)}.guest-banner-icon{font-size:1rem;flex-shrink:0;margin-top:1px}.guest-banner-text{flex:1}.guest-banner-link{background:none;border:none;padding:0;font:inherit;font-weight:700;color:#f59e0b;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.guest-banner-link:hover{color:#fbbf24}html.dark .guest-banner{background:#fbbf2414;border-color:#fbbf2440}.sidebar-signup-cta{color:#fbbf24!important;font-weight:600!important}.sidebar-signup-cta:hover{background:#fbbf241f!important}.info-cta-group{display:flex;flex-direction:column;gap:.6rem;align-items:center}.info-cta-guest{background:transparent;border:1px solid rgba(255,255,255,.28);color:#ffffffc7;border-radius:8px;padding:.6rem 1.2rem;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.info-cta-guest:hover{background:#ffffff14;border-color:#ffffff80;color:#fff}.info-cta-guest--hero{background:linear-gradient(135deg,#dc2626,#ef4444);border:none;color:#fff;font-size:1.1rem;font-weight:800;padding:.9rem 2rem;border-radius:10px;box-shadow:0 6px 24px #dc262673;letter-spacing:-.01em;transition:transform .15s,box-shadow .15s,filter .15s}.info-cta-guest--hero:hover{background:linear-gradient(135deg,#dc2626,#ef4444);border:none;color:#fff;transform:translateY(-2px);box-shadow:0 10px 32px #dc262699;filter:brightness(1.08)}.program-delete-x{position:absolute;top:.5rem;right:.5rem;width:1.6rem;height:1.6rem;padding:0;display:flex;align-items:center;justify-content:center;background:transparent;color:var(--text-muted);border:none;border-radius:50%;font-size:1.15rem;line-height:1;box-shadow:none;transition:background .15s,color .15s}.program-delete-x:hover{background:#ef44441f;color:#ef4444;transform:none;box-shadow:none}.program-actions{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.program-actions button{margin-top:0}.program-action-btn{flex:1;min-width:0;text-align:center;padding:.38rem .5rem;font-size:.78rem;white-space:nowrap}.program-checkin-btn{background:#166534;color:#fff;border:none}.program-checkin-btn:hover:not(:disabled){background:#15803d;box-shadow:none;transform:none}html.dark .program-checkin-btn{background:#14532d;color:#bbf7d0}html.dark .program-checkin-btn:hover:not(:disabled){background:#166534}.auth-divider{display:flex;align-items:center;gap:.75rem;color:var(--text-muted);font-size:.8rem;margin:.25rem 0}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--line-soft)}.auth-guest-hint{font-size:.75rem;color:var(--text-muted);margin:0;text-align:center}.empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;padding:2.5rem 1rem 1.5rem;gap:.6rem}.empty-state-icon{font-size:2.8rem;line-height:1;margin-bottom:.25rem}.empty-state-title{font-size:1.15rem;font-weight:700;color:var(--text-main);margin:0}.empty-state-desc{font-size:.88rem;color:var(--text-muted);max-width:340px;line-height:1.55;margin:0 0 .5rem}.loading-banner{display:flex;align-items:center;gap:.75rem;padding:.85rem 1.1rem;background:#4f72f514;border:1px solid rgba(79,114,245,.2);border-radius:10px;font-size:.88rem;color:var(--text-muted);margin-bottom:1rem}.loading-spinner{width:18px;height:18px;border:2px solid rgba(79,114,245,.25);border-top-color:var(--accent);border-radius:50%;flex-shrink:0;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}html.dark .loading-banner{background:#4f72f51a;border-color:#4f72f547}.not-found-card{margin-top:3rem}.nutrition-card{display:flex;flex-direction:column;gap:1.75rem}.nutrition-log-card{display:flex;flex-direction:column;gap:0}.nutrition-log-title{margin:0 0 1.25rem;font-size:1.1rem;font-weight:700;color:var(--text-main)}.nutrition-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem}.nutrition-header h2{margin:0}.nutrition-header-actions{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.nutrition-header input[type=date]{padding:.6rem 1rem;border-radius:8px;border:1px solid var(--border);background:var(--bg-input);color:var(--text-main);font-size:1rem;font-weight:500}.nutrition-add-food-btn{padding:.45rem 1rem;border-radius:8px;font-size:.88rem;font-weight:600;background:var(--accent);color:#fff;border:none;cursor:pointer;transition:opacity .15s;white-space:nowrap}.nutrition-add-food-btn:hover{opacity:.88}.nutrition-search-section h3,.nutrition-log-section h3{margin:0 0 .75rem;font-size:1rem;font-weight:600;color:var(--text-main)}.add-food-modal{background:var(--bg-card);border-radius:16px;width:100%;max-width:520px;display:flex;flex-direction:column;max-height:85vh;overflow:hidden;box-shadow:0 20px 60px #00000059}.add-food-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem 1rem;border-bottom:1px solid var(--border)}.add-food-modal-header h3{margin:0;font-size:1.1rem;font-weight:700}.add-food-modal-close{background:transparent;border:none;color:var(--text-muted);font-size:1.1rem;cursor:pointer;padding:.2rem .4rem;border-radius:6px;line-height:1}.add-food-modal-close:hover{background:#ff50501f;color:#f87171}.add-food-modal-body{padding:1.25rem 1.5rem;overflow-y:auto;display:flex;flex-direction:column;gap:.75rem}.add-food-modal-body>input[type=text]{width:100%;box-sizing:border-box}.nutrition-hint{font-size:.85rem;color:var(--text-muted);margin:.5rem 0 0}.nutrition-guest-note{font-size:.82rem;color:var(--text-muted);margin:0 0 .75rem;padding:.5rem .75rem;border-radius:7px;background:#4f72f512;border:1px solid rgba(79,114,245,.18)}.nutrition-results{margin-top:.5rem;border:1px solid var(--border);border-radius:10px;overflow:hidden;max-height:260px;overflow-y:auto}.nutrition-result-item{display:flex;align-items:center;gap:.6rem;width:100%;padding:.65rem .9rem;background:transparent;border:none;border-bottom:1px solid var(--border);text-align:left;cursor:pointer;transition:background .15s;font-size:.88rem}.nutrition-result-item:last-child{border-bottom:none}.nutrition-result-item:hover{background:var(--bg-hover)}.nutrition-result-name{flex:1;font-weight:500;color:var(--text-main);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nutrition-result-brand{font-size:.8rem;color:var(--text-muted);white-space:nowrap}.nutrition-result-cal{font-size:.8rem;color:var(--accent);font-weight:600;white-space:nowrap}.nutrition-add-form{margin-top:.75rem;border:1px solid var(--border);border-radius:10px;padding:.9rem 1rem;display:flex;flex-direction:column;gap:.75rem;background:var(--bg-card-alt, var(--bg-card))}.nutrition-selected-food{font-size:.9rem;color:var(--text-main);display:flex;align-items:center;flex-wrap:wrap;gap:.25rem}.nutrition-selected-cal{color:var(--text-muted)}.nutrition-deselect{margin-left:auto;background:transparent;border:none;color:var(--text-muted);cursor:pointer;font-size:1rem;padding:.1rem .3rem;border-radius:4px;line-height:1}.nutrition-deselect:hover{background:#ff50501f;color:#f87171}.nutrition-add-row{display:flex;align-items:flex-end;gap:.75rem;flex-wrap:wrap}.nutrition-add-label{display:flex;flex-direction:column;gap:.3rem;font-size:.82rem;font-weight:500;color:var(--text-muted)}.nutrition-add-label input,.nutrition-add-label select{padding:.45rem .65rem;border-radius:7px;border:1px solid var(--border);background:var(--bg-input);color:var(--text-main);font-size:.88rem;min-width:100px}.nutrition-add-btn{padding:.5rem 1.1rem;border-radius:8px;font-size:.88rem;font-weight:600;align-self:flex-end}.nutrition-preview{font-size:.84rem;color:var(--text-muted);margin:0;padding:.4rem .6rem;background:#4f72f512;border-radius:6px}.nutrition-preview strong{color:var(--accent)}.nutrition-log{display:flex;flex-direction:column;gap:0}.nutrition-meal-group{padding:1rem 0 .5rem}.nutrition-meal-group+.nutrition-meal-group{border-top:2px solid var(--border);margin-top:.75rem;padding-top:1.25rem}.nutrition-meal-header{display:flex;justify-content:space-between;align-items:center;padding:0 0 .65rem;margin-bottom:.25rem;border-bottom:1px solid var(--border)}.nutrition-meal-name{font-size:.85rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--text-main)}.nutrition-meal-cals{font-size:.85rem;font-weight:700;color:var(--accent)}.nutrition-log-entry{display:flex;align-items:center;gap:.75rem;padding:.45rem 0;border-bottom:1px solid var(--line-soft);font-size:.87rem}.nutrition-log-entry:last-child{border-bottom:none}.nutrition-entry-main{flex:1;display:flex;align-items:center;gap:.5rem;min-width:0}.nutrition-entry-name{font-weight:500;color:var(--text-main);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nutrition-entry-grams{font-size:.8rem;color:var(--text-muted);white-space:nowrap}.nutrition-entry-macros{display:flex;gap:.5rem;font-size:.8rem;color:var(--text-muted);flex-wrap:nowrap}.nutrition-remove-btn{background:transparent;border:none;color:var(--text-muted);cursor:pointer;font-size:.85rem;padding:.2rem .35rem;border-radius:4px;line-height:1;flex-shrink:0}.nutrition-remove-btn:hover{background:#ff50501f;color:#f87171}.nutrition-summary{display:flex;gap:.75rem;margin-top:1rem;flex-wrap:wrap}.nutrition-summary-item{flex:1;min-width:90px;border:1px solid var(--border);border-radius:10px;padding:.65rem .9rem;display:flex;flex-direction:column;gap:.2rem;text-align:center}.nutrition-summary-cal{border-color:#4f72f566;background:#4f72f50f}.nutrition-summary-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.nutrition-summary-value{font-size:1.05rem;font-weight:700;color:var(--text-main)}.nutrition-summary-cal .nutrition-summary-value{color:var(--accent)}.calorie-setup-banner{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.calorie-setup-banner-icon{font-size:2rem;flex-shrink:0}.calorie-setup-banner-text{flex:1;min-width:180px}.calorie-setup-banner-text strong{display:block;font-size:1rem;margin-bottom:.2rem}.calorie-setup-banner-text p{margin:0;font-size:.85rem;color:var(--text-muted)}.calorie-modal{width:min(460px,100%);background:#f8fafff7;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:var(--card-radius);border:1px solid rgba(255,255,255,.8);box-shadow:var(--shadow-lg);animation:scaleIn .22s ease;display:flex;flex-direction:column;min-height:440px}html.dark .calorie-modal{background:#191e28f7;border-color:#ffffff14}.calorie-modal-header{display:flex;align-items:center;gap:.75rem;padding:1.1rem 1.25rem .8rem;border-bottom:1px solid var(--border)}.calorie-modal-steps{display:flex;gap:.35rem;align-items:center}.calorie-step-dot{width:8px;height:8px;border-radius:99px;background:var(--line-soft);transition:width .25s ease,background .25s ease}.calorie-step-dot.current{width:22px;background:var(--accent)}.calorie-step-dot.done{background:var(--accent);opacity:.45}.calorie-modal-step-label{flex:1;font-size:.78rem;color:var(--text-muted);font-weight:500}.calorie-modal-close{background:none;border:none;color:var(--text-muted);font-size:1rem;cursor:pointer;padding:.2rem .4rem;border-radius:6px;line-height:1;transition:background .15s,color .15s}.calorie-modal-close:hover{background:var(--bg-hover);color:var(--text-main)}.calorie-modal-body{flex:1;padding:1.25rem 1.25rem .5rem;display:flex;flex-direction:column;gap:1rem}.calorie-modal-body h3{margin:0;font-size:1.2rem;font-weight:700}.calorie-modal-sub{margin:-.5rem 0 0;font-size:.84rem;color:var(--text-muted)}.calorie-gender-btns{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.calorie-gender-btn{display:flex;flex-direction:column;align-items:center;gap:.4rem;padding:1.1rem 1rem;border-radius:12px;border:2px solid var(--border);background:transparent;cursor:pointer;font-size:.95rem;font-weight:600;color:var(--text-main);transition:border-color .15s,background .15s}.calorie-gender-btn.active{border-color:var(--accent);background:var(--accent-glow)}.calorie-gender-icon{font-size:1.6rem;line-height:1}.calorie-setup-label{display:flex;flex-direction:column;gap:.4rem;font-size:.88rem;font-weight:600;color:var(--text-main)}.calorie-setup-label input{padding:.65rem .85rem;border-radius:8px;border:1px solid var(--border);background:var(--bg-input);color:var(--text-main);font-size:1rem;width:100%}.calorie-setup-label--big input{font-size:1.6rem;font-weight:700;text-align:center;padding:.75rem}.calorie-unit-label{font-size:.82rem;color:var(--text-muted);font-weight:400;text-align:center}.calorie-setup-fields{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.calorie-activity-list{display:flex;flex-direction:column;gap:.45rem}.calorie-activity-option{display:flex;flex-direction:column;align-items:flex-start;padding:.65rem .9rem;border-radius:10px;border:2px solid var(--border);background:transparent;cursor:pointer;text-align:left;width:100%;transition:border-color .15s,background .15s}.calorie-activity-option.active{border-color:var(--accent);background:var(--accent-glow)}.calorie-activity-label{font-size:.9rem;font-weight:600;color:var(--text-main)}.calorie-activity-desc{font-size:.78rem;color:var(--text-muted);margin-top:.1rem}.calorie-weeks-display{text-align:center;font-size:3rem;font-weight:800;color:var(--accent);line-height:1}.calorie-weeks-display span{font-size:1rem;font-weight:500;color:var(--text-muted);margin-left:.3rem}.calorie-weeks-slider{width:100%;accent-color:var(--accent);cursor:pointer;height:6px}.calorie-weeks-labels{display:flex;justify-content:space-between;font-size:.75rem;color:var(--text-muted);margin-top:-.25rem}.calorie-weeks-warning{background:#f871711a;border:1px solid rgba(248,113,113,.45);border-radius:8px;padding:.7rem .9rem;font-size:.83rem;color:#dc2626;line-height:1.5}html.dark .calorie-weeks-warning{color:#f87171;background:#f8717112}.calorie-preview-box{background:var(--accent-glow);border:1px solid rgba(79,114,245,.3);border-radius:8px;padding:.8rem 1rem;font-size:.9rem;color:var(--text-main);text-align:center}.calorie-modal-footer{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.9rem 1.25rem 1.1rem;border-top:1px solid var(--border)}.calorie-progress-section{display:flex;flex-direction:column;gap:.55rem;padding:1rem 1.1rem;background:var(--accent-glow);border:1px solid rgba(79,114,245,.2);border-radius:10px}.calorie-progress-header{display:flex;align-items:center;justify-content:space-between}.calorie-progress-title{font-weight:600;font-size:.88rem;color:var(--text-main)}.calorie-recalc-btn{background:none;border:none;color:var(--accent);font-size:.78rem;cursor:pointer;padding:0;text-decoration:underline;text-underline-offset:2px}.calorie-bar-track{height:10px;border-radius:99px;background:#4f72f526;overflow:hidden}.calorie-bar-fill{height:100%;border-radius:99px;transition:width .45s ease;min-width:4px}.calorie-bar-stats{display:flex;justify-content:space-between;font-size:.81rem;color:var(--text-muted)}.calorie-remaining{color:#34d399;font-weight:600}.calorie-over{color:#f87171;font-weight:600}.macro-donuts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;padding-top:.75rem;border-top:1px solid rgba(79,114,245,.15)}.single-macro-donut{display:flex;flex-direction:column;align-items:center;gap:.3rem}.single-macro-svg{width:100%;max-width:110px;height:auto}.single-macro-label{font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.macro-legend-pct{font-size:.76rem;font-weight:600;color:var(--text-muted)}.macro-legend-pct--done{color:#34d399}.macro-legend-pct--mid{color:#fbbf24}.admin-divider{border:none;border-top:1px solid var(--border);margin:1.75rem 0}.admin-section{margin-top:1.25rem}.admin-section h3{font-size:.95rem;font-weight:600;margin:0 0 .6rem;color:var(--text-main)}.admin-hint{font-size:.84rem;color:var(--text-muted);margin:0 0 .65rem}.admin-update-row{display:flex;gap:.65rem;flex-wrap:wrap;align-items:center;margin-bottom:.75rem}.admin-update-btn{font-size:.9rem;padding:.6rem 1.3rem}.admin-log{background:#0d1117;border:1px solid #30363d;border-radius:8px;padding:.75rem 1rem;font-family:Consolas,Monaco,Courier New,monospace;font-size:.8rem;line-height:1.6;max-height:280px;overflow-y:auto;margin-bottom:.75rem;display:flex;flex-direction:column;gap:.1rem}.admin-log-line{color:#8b949e}.admin-log-line--start{color:#79c0ff;font-weight:600}.admin-log-line--progress{color:#8b949e}.admin-log-line--ok{color:#56d364}.admin-log-line--error{color:#f85149}.admin-log-line--done{color:#ffa657;font-weight:700;margin-top:.3rem;border-top:1px solid #30363d;padding-top:.3rem}.admin-food-form{display:flex;flex-direction:column;gap:.65rem}.admin-food-row{display:flex;gap:.65rem;flex-wrap:wrap}.admin-food-label{display:flex;flex-direction:column;gap:.3rem;font-size:.82rem;font-weight:500;color:var(--text-muted);flex:1;min-width:120px}.admin-food-label input{padding:.4rem .6rem;font-size:.87rem}.admin-food-list{margin-top:.65rem;display:flex;flex-direction:column;gap:.35rem;max-height:360px;overflow-y:auto}.admin-food-item{display:flex;align-items:center;gap:.6rem;padding:.5rem .75rem;border:1px solid var(--border);border-radius:8px;font-size:.85rem;flex-wrap:wrap}.admin-food-name{flex:1;font-weight:500;color:var(--text-main);min-width:100px}.admin-food-brand{font-size:.8rem;color:var(--text-muted)}.admin-food-cal{font-size:.8rem;font-weight:600;color:var(--accent);white-space:nowrap}.admin-food-source{font-size:.75rem;color:var(--text-muted);background:var(--bg-hover);padding:.15rem .45rem;border-radius:4px;white-space:nowrap}.admin-food-delete{font-size:.8rem;padding:.3rem .65rem;margin-left:auto}.wc-modal{background:var(--bg-surface-solid);border-radius:var(--card-radius);box-shadow:var(--shadow-lg);padding:1.5rem;width:min(440px,92vw);display:flex;flex-direction:column;gap:1.25rem}.wc-modal-header{display:flex;align-items:center;justify-content:space-between}.wc-modal-title{font-size:1.1rem;font-weight:700;margin:0}.wc-modal-close{background:none;border:none;font-size:1.1rem;cursor:pointer;color:var(--text-muted);padding:.2rem .4rem;line-height:1;border-radius:4px;transition:background .15s}.wc-modal-close:hover{background:var(--line-soft)}.wc-modal-body{display:flex;flex-direction:column;gap:1.1rem}.wc-slider-row{display:flex;flex-direction:column;gap:.35rem}.wc-slider-meta{display:flex;justify-content:space-between;align-items:baseline}.wc-slider-label{font-size:.85rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.wc-slider-val{font-size:1rem;font-weight:700;color:var(--accent);min-width:4rem;text-align:right}.wc-weight-input-wrap{display:flex;align-items:baseline;gap:.3rem}.wc-weight-input{width:5rem;font-size:1rem;font-weight:700;color:var(--accent);background:transparent;border:none;border-bottom:2px solid var(--accent);border-radius:0;padding:0 .15rem;text-align:right;outline:none;-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.wc-weight-input::-webkit-outer-spin-button,.wc-weight-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.wc-weight-input:focus{border-bottom-color:var(--accent)}.wc-weight-unit{font-size:.8rem;color:var(--text-muted);white-space:nowrap}.wc-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:6px;border-radius:3px;background:var(--line-soft);outline:none;cursor:pointer}.wc-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 3px var(--accent-glow);cursor:pointer;transition:box-shadow .15s}.wc-slider::-webkit-slider-thumb:hover{box-shadow:0 0 0 5px var(--accent-glow)}.wc-slider::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:var(--accent);border:none;cursor:pointer}.wc-slider-ends{display:flex;justify-content:space-between;font-size:.72rem;color:var(--text-muted)}.wc-modal-footer{display:flex;justify-content:flex-end;gap:.75rem}.program-item{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.6rem .8rem;border-radius:8px;background:#ffffff40;border:1px solid var(--line-soft)}.program-item-info{display:flex;flex-direction:column;gap:.15rem;min-width:0}.program-item-info strong{font-size:.92rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.workout-summary{font-size:.8rem;color:var(--text-muted)}.program-item-actions{display:flex;gap:.5rem;flex-shrink:0}.program-item-actions button{font-size:.8rem;padding:.3rem .65rem}.rest-day-banner{display:flex;align-items:flex-start;gap:.85rem;background:#fbbf241f;border:1px solid rgba(251,191,36,.4);border-radius:var(--card-radius);padding:1rem 1.25rem;margin-bottom:.5rem}.rest-day-icon{font-size:1.5rem;flex-shrink:0}.rest-day-banner strong{display:block;margin-bottom:.2rem}.dashboard-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:.5rem}@media (max-width: 800px){.dashboard-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.dashboard-grid{grid-template-columns:1fr 1fr}}.dash-card{background:var(--bg-surface);border:1px solid var(--line-soft);border-radius:var(--card-radius);padding:1.1rem 1rem;display:flex;align-items:center;gap:.85rem;box-shadow:var(--shadow-sm)}.dash-card-icon{font-size:1.6rem;flex-shrink:0}.dash-card-body{display:flex;flex-direction:column;min-width:0}.dash-card-value{font-size:1.4rem;font-weight:800;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dash-card-label{font-size:.75rem;color:var(--text-muted);margin-top:.15rem}.dash-cal-goal{font-size:.9rem;font-weight:500;color:var(--text-muted)}.dashboard-nav-card h2{margin-bottom:.75rem}.dashboard-quick-links{display:flex;flex-wrap:wrap;gap:.6rem}.dashboard-quick-links button{display:flex;align-items:center;gap:.4rem;font-size:.9rem;padding:.5rem 1rem}.heatmap-card{overflow-x:auto}.heatmap-wrap{overflow-x:auto;padding-bottom:.5rem}.heatmap-months{position:relative;height:18px;margin-bottom:4px}.heatmap-month-label{position:absolute;font-size:.7rem;color:var(--text-muted);white-space:nowrap}.heatmap-body{display:flex;gap:6px;align-items:flex-start}.heatmap-days{display:flex;flex-direction:column;justify-content:space-around;height:102px;padding-top:2px}.heatmap-days span{font-size:.65rem;color:var(--text-muted);line-height:12px}.heatmap-grid{display:grid;grid-auto-flow:column;grid-template-rows:repeat(7,12px)}.heatmap-cell{width:12px;height:12px;border-radius:2px;background:var(--line-soft);cursor:default}.heatmap-cell--empty{background:transparent}.heatmap-cell--active{background:var(--accent)}.heatmap-cell--today{outline:2px solid var(--accent);outline-offset:1px}.heatmap-legend{display:flex;align-items:center;gap:.4rem;font-size:.72rem;color:var(--text-muted);margin-top:.6rem}.heatmap-legend-box{display:inline-block;width:12px;height:12px;border-radius:2px;background:var(--accent);flex-shrink:0}.metrics-charts{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:.5rem}@media (max-width: 640px){.metrics-charts{grid-template-columns:1fr}}.goals-form .goals-inputs{display:flex;flex-wrap:wrap;gap:.75rem;align-items:flex-end}.goals-form label{display:flex;flex-direction:column;gap:.25rem}.goals-message{margin-top:.5rem;font-size:.85rem;color:var(--accent)}.goals-progress{margin-top:1rem;display:flex;flex-direction:column;gap:1rem}.goals-progress-row{display:flex;flex-direction:column;gap:.4rem}.goals-progress-meta{display:flex;justify-content:space-between;font-size:.85rem;flex-wrap:wrap;gap:.3rem}.goals-diff{font-size:.8rem;font-weight:600}.goals-diff--down{color:#34d399}.goals-diff--up{color:#f87171}.goals-bar-track{height:8px;background:var(--line-soft);border-radius:4px;overflow:hidden}.goals-bar-fill{height:100%;background:var(--accent);border-radius:4px;transition:width .4s ease}.goals-eta{font-size:.75rem;color:var(--text-muted);margin:0}.skeleton-page{display:flex;flex-direction:column;gap:1rem}.skeleton-card{background:var(--bg-surface);border:1px solid var(--line-soft);border-radius:var(--card-radius);padding:1.5rem;display:flex;flex-direction:column;gap:.75rem}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.45}}.skeleton{border-radius:6px;background:var(--line-soft);animation:skeleton-pulse 1.5s ease-in-out infinite}.skeleton-title{height:20px;width:40%}.skeleton-line{height:14px;width:100%}.skeleton-line--short{width:65%}.log-session-modal{background:var(--bg-surface-solid);border-radius:var(--card-radius);box-shadow:var(--shadow-lg);padding:1.5rem;width:min(560px,95vw);max-height:85vh;display:flex;flex-direction:column;gap:1.25rem}.log-session-body{overflow-y:auto;display:flex;flex-direction:column;gap:1rem;flex:1}.log-session-empty{color:var(--text-muted);font-size:.9rem}.log-ex-row{display:flex;flex-direction:column;gap:.4rem;padding:.75rem .85rem;border-radius:8px;background:#fff3;border:1px solid var(--line-soft)}.log-ex-name{font-weight:700;font-size:.95rem}.log-ex-inputs{display:flex;gap:.75rem;flex-wrap:wrap}.log-ex-inputs label{display:flex;flex-direction:column;gap:.2rem;flex:1;min-width:80px}.log-ex-inputs input{width:100%}.log-notes-label{display:flex;flex-direction:column;gap:.3rem}.log-notes-label textarea{resize:vertical;min-height:56px;font-family:inherit;font-size:.9rem}.program-log-btn{background:var(--btn-secondary);color:#fff;border:none}.program-log-btn:not(:disabled):hover{background:var(--btn-main-hover)}.overload-card h2{margin-bottom:.35rem}.overload-intro{font-size:.85rem;color:var(--text-muted);margin-bottom:.75rem}.overload-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.overload-item{display:flex;justify-content:space-between;align-items:center;padding:.55rem .8rem;border-radius:8px;background:#34d3991a;border:1px solid rgba(52,211,153,.3);flex-wrap:wrap;gap:.3rem}.overload-item strong{font-size:.92rem}.overload-item span{font-size:.82rem;color:var(--text-muted)}.ex-history-search{display:flex;gap:.6rem;margin-bottom:.75rem}.ex-history-search input{flex:1}.ex-history-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.4rem}.ex-history-item{display:flex;justify-content:space-between;align-items:center;font-size:.88rem;padding:.45rem .75rem;border-radius:6px;background:#fff3;border:1px solid var(--line-soft);flex-wrap:wrap;gap:.3rem}.ex-history-date{font-weight:600;color:var(--text-muted);font-size:.8rem}.ex-history-empty{font-size:.85rem;color:var(--text-muted)}.session-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.session-item{padding:.85rem 1rem;border-radius:10px;background:#fff3;border:1px solid var(--line-soft);display:flex;flex-direction:column;gap:.4rem}.session-item-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem}.session-item-meta{display:flex;flex-direction:column;gap:.1rem}.session-item-meta strong{font-size:.95rem}.session-item-date{font-size:.78rem;color:var(--text-muted)}.session-exercises{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.2rem;font-size:.84rem;color:var(--text-muted)}.session-notes{font-size:.82rem;color:var(--text-muted);font-style:italic;margin:0;padding-top:.25rem;border-top:1px solid var(--line-soft)}.share-modal{max-width:480px}.share-modal-hint{font-size:.85rem;color:var(--text-muted);margin-bottom:.75rem}.share-url-row{display:flex;gap:.5rem;margin-bottom:.75rem}.share-url-input{flex:1;font-size:.82rem;background:var(--bg-surface)}.plan-gen-card h2{margin-bottom:.4rem}.plan-gen-desc{font-size:.9rem;color:var(--text-muted);margin-bottom:1.25rem}.plan-gen-form{display:flex;flex-direction:column;gap:1rem}.plan-gen-row{display:flex;gap:1rem;flex-wrap:wrap}.plan-gen-row label{display:flex;flex-direction:column;gap:.3rem;flex:1;min-width:140px}.plan-gen-equipment-note{font-size:.82rem;color:var(--text-muted);margin:0}.plan-gen-error{color:#f87171;font-size:.88rem;margin-top:.5rem}.plan-result{margin-top:1.5rem}.plan-result-title{font-size:1.1rem;font-weight:700;margin-bottom:1rem}.plan-days-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem}.plan-day-card{background:#fff3;border:1px solid var(--line-soft);border-radius:10px;padding:1rem;display:flex;flex-direction:column;gap:.6rem}.plan-day-header{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:.3rem}.plan-day-label{font-weight:700;font-size:.9rem}.plan-day-focus{font-size:.78rem;color:var(--accent);font-weight:600}.plan-day-exercises{list-style:none;padding:0;margin:0;font-size:.84rem;display:flex;flex-direction:column;gap:.25rem;flex:1}.plan-import-btn{font-size:.82rem;padding:.35rem .7rem;margin-top:auto}.exercises-search{width:100%;margin-bottom:1rem}.exercises-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.75rem}.exercise-card{padding:.85rem 1rem;border-radius:10px;border:1px solid var(--line-soft);background:#fff3;cursor:pointer;transition:box-shadow .15s,transform .15s;display:flex;flex-direction:column;gap:.25rem}.exercise-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.exercise-card-name{font-size:.9rem;font-weight:700}.exercise-card-muscle{font-size:.72rem;background:var(--accent-glow);color:var(--accent);border-radius:4px;padding:.1rem .45rem;display:inline-block;width:fit-content}.exercise-card-desc{font-size:.78rem;color:var(--text-muted);margin:0}.exercise-detail-modal{background:var(--bg-surface-solid);border-radius:var(--card-radius);box-shadow:var(--shadow-lg);padding:1.5rem;width:min(520px,94vw);max-height:80vh;overflow-y:auto;display:flex;flex-direction:column;gap:1rem}.exercise-detail-body{display:flex;flex-direction:column;gap:.75rem}.exercise-detail-muscle{font-size:.88rem;margin:0}.exercise-detail-desc{font-size:.88rem;color:var(--text-muted);margin:0}.exercise-detail-section h4{font-size:.85rem;font-weight:700;margin:0 0 .3rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.exercise-detail-section p{font-size:.9rem;margin:0;white-space:pre-wrap}.exercise-detail-empty{font-size:.85rem;color:var(--text-muted)}.exercise-detail-edit{display:flex;flex-direction:column;gap:.75rem}.exercise-detail-edit label{display:flex;flex-direction:column;gap:.3rem}.exercise-detail-edit textarea{resize:vertical;font-family:inherit;font-size:.9rem}.public-program-header{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-bottom:1rem}.public-program-badge{font-size:.75rem;background:var(--accent-glow);color:var(--accent);border-radius:6px;padding:.2rem .6rem;font-weight:600}.public-program-cta{margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--line-soft)}.public-program-cta p{font-size:.9rem;color:var(--text-muted);margin-bottom:.6rem}@media (max-width: 1024px){.program-actions{flex-wrap:wrap;gap:.4rem}.program-action-btn{font-size:.8rem;padding:.35rem .65rem}.plan-gen-row{flex-direction:column}.log-ex-inputs{flex-direction:column;gap:.5rem}.log-ex-inputs label{flex:unset}.metrics-log-inputs{flex-direction:column}.metrics-log-inputs label{width:100%}.pr-numbers{flex-wrap:wrap}.wc-modal,.log-session-modal,.exercise-detail-modal,.share-modal{width:95vw}.goals-inputs,.share-url-row{flex-direction:column}.exercises-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.plan-days-grid{grid-template-columns:1fr}.heatmap-wrap{font-size:.7rem}.page-container{padding:1rem .75rem 4rem}}@media (max-width: 480px){.dashboard-grid{grid-template-columns:1fr 1fr}.landing-features{grid-template-columns:1fr 1fr!important}.exercises-grid{grid-template-columns:1fr 1fr}.dash-card-value{font-size:1.15rem}.wc-modal{padding:1rem}}@media (max-width: 1024px){input:not([type=range]),select,textarea{font-size:16px!important}button,select{min-height:44px}.sidebar-item{padding:.75rem 1rem;min-height:44px}button,.sidebar-item,a{-webkit-tap-highlight-color:transparent}button{-webkit-user-select:none;user-select:none}.card{padding:1rem}.auth-card{width:100%;max-width:100%}.wc-modal-close,.add-food-modal-close{min-width:40px;min-height:40px;display:flex;align-items:center;justify-content:center;font-size:1.3rem;padding:0}}@supports (padding: env(safe-area-inset-bottom)){.page-container{padding-bottom:calc(2rem + env(safe-area-inset-bottom))}@media (max-width: 1024px){.page-container{padding-bottom:calc(3.5rem + env(safe-area-inset-bottom))}.mobile-topbar{padding-top:env(safe-area-inset-top,0px);height:calc(var(--mobile-topbar-h) + env(safe-area-inset-top,0px))}}}@keyframes slideUpSheet{0%{transform:translateY(40px);opacity:0}to{transform:translateY(0);opacity:1}}@media (max-width: 540px){.modal-overlay{align-items:flex-end;padding:0}.modal-card,.wc-modal,.log-session-modal,.exercise-detail-modal,.share-modal,.add-food-modal{width:100%!important;max-width:100%!important;border-radius:20px 20px 0 0!important;max-height:92vh;overflow-y:auto;animation:slideUpSheet .28s cubic-bezier(.32,.72,0,1);padding:1.25rem 1rem 1.5rem!important}.modal-card:before,.wc-modal:before,.log-session-modal:before,.exercise-detail-modal:before,.share-modal:before{content:"";display:block;width:40px;height:4px;background:#0000002e;border-radius:2px;margin:0 auto 1rem;flex-shrink:0}.add-food-modal-header{padding:.75rem 1rem}.add-food-modal-body{padding:1rem}.modal-actions{flex-direction:column-reverse}.modal-actions button{width:100%}}@media (max-width: 540px){.program-action-btn{min-height:40px;flex:1 1 auto;text-align:center}.program-delete-x{width:2.4rem;height:2.4rem;font-size:1.3rem;top:.4rem;right:.4rem}li.program-card-li{padding-right:2.8rem}.log-ex-inputs{gap:.5rem}.log-ex-inputs label{min-width:0;flex:1 1 calc(33% - .5rem)}}@media (max-width: 480px){.dashboard-quick-links{display:grid;grid-template-columns:1fr 1fr;gap:.4rem}.dashboard-quick-links button{justify-content:center;font-size:.8rem;padding:.45rem .5rem;min-height:40px}.dash-card{padding:.8rem .7rem;gap:.55rem}.dash-card-icon{font-size:1.3rem}}@media (max-width: 540px){.nutrition-header{flex-direction:column;align-items:flex-start}.nutrition-header-actions{width:100%;flex-wrap:nowrap}.nutrition-header input[type=date]{flex:1}.nutrition-entry-macros{display:none}.nutrition-log-entry{padding:.6rem 0}.nutrition-remove-btn{min-width:40px;min-height:40px;display:flex;align-items:center;justify-content:center;padding:0;font-size:1rem}.calorie-goal-form{flex-direction:column;align-items:flex-start}.calorie-goal-form input{width:100%}}@media (max-width: 540px){.metrics-charts>*{overflow-x:auto;min-width:0}.pr-numbers{flex-direction:column;gap:.5rem}.pr-numbers input{width:100%}.metrics-log-inputs{flex-direction:column;gap:.5rem}.metrics-log-inputs label{width:100%}}@media (max-width: 540px){.advice-box{padding:.75rem}.equipment-selector{display:flex;flex-direction:column;gap:.4rem}.equipment-selector select{width:100%}.plan-day-card{padding:.85rem .75rem}.plan-day-import-btn{width:100%;margin-top:.5rem}}@media (max-width: 1024px){.card h2{font-size:1.15rem}.heatmap-wrap{-webkit-overflow-scrolling:touch}.advice-guest-notice{padding:.75rem;gap:.5rem}.sidebar-logout-btn{min-height:44px}.sidebar-overlay{cursor:pointer}.program-delete-x:hover{transform:none}}@media (max-width: 360px){.page-container{padding:.75rem .5rem 3.5rem}.card{padding:.75rem}.program-action-btn{font-size:.75rem;padding:.3rem .4rem}.dash-card-value{font-size:1rem}.dashboard-quick-links button{font-size:.72rem}.streak-number{font-size:1.4rem}}
