:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#1a2533;background:#f7f8fa;font-synthesis:none;--ink:#1a2533;--muted:#7b8798;--accent:#ea654f;--accent-dark:#d95140;--navy:#182b3e;--line:#e9edf1;--panel:#fff;--soft:#f6f7f9;--green:#26856a;--shadow:0 8px 36px rgba(21,39,55,.035)}
*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #f6b19f;outline-offset:3px}svg.icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.icon-defs{position:absolute;width:0;height:0;overflow:hidden}.app-shell{min-height:100vh;display:grid;grid-template-columns:244px minmax(0,1fr)}.sidebar{background:#fff;border-right:1px solid var(--line);padding:29px 17px 22px;display:flex;flex-direction:column;min-height:100vh}.brand{display:flex;gap:10px;align-items:center;margin:4px 12px 59px}.brand-mark{width:45px;height:45px;background:var(--accent);color:#fff;border-radius:14px;display:grid;place-items:center;font-size:29px;font-weight:850;letter-spacing:-3px;padding-right:4px}.brand-dot{color:#ffd7cc}.brand-name{font-size:21px;letter-spacing:1.6px;font-weight:850;line-height:1.03}.brand-sub{display:block;font-size:8px;color:#9ca6b1;letter-spacing:2px;margin-top:6px;font-weight:800}.sidebar-label,.topbar-eyebrow{font-size:10px;color:#a0a9b5;letter-spacing:1.5px;font-weight:800}.sidebar-label{margin:0 15px 13px}.side-nav{display:grid;gap:7px}.nav-item{display:flex;align-items:center;gap:13px;padding:13px 15px;border-radius:12px;font-size:13px;color:#7b8798;font-weight:650;border:0;background:transparent;width:100%;text-align:left}.nav-item:hover,.nav-item.active{background:#fff0ec;color:var(--accent-dark)}.nav-item.active{font-weight:800}.sidebar-bottom{margin-top:auto;padding:18px 4px 0}.sidebar-tip{background:#193043;color:#fff;border-radius:17px;padding:21px 17px;min-height:165px}.sidebar-tip span{display:block;color:#ed9d85;font-size:9px;letter-spacing:1.2px;font-weight:850;margin-bottom:15px}.sidebar-tip strong{font-size:17px;line-height:1.35;display:block}.sidebar-tip p{font-size:11px;color:#b2c1ce;line-height:1.6}.sidebar-version{text-align:center;font-size:10px;color:#a2abb6;margin-top:18px}.app-main{min-width:0;padding:0 42px}.topbar{height:94px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:12px}.topbar-left{display:grid;gap:6px}.topbar-left strong{font-size:16px}.topbar-right{display:flex;align-items:center;gap:16px}.today-pill{font-size:11px;color:#8792a0;background:#fff;border:1px solid #eceff2;border-radius:50px;padding:10px 14px;white-space:nowrap}.avatar{border:none;background:#fee4da;color:#b85c47;font-size:14px;font-weight:850;width:38px;height:38px;border-radius:50%}.main-footer{font-size:10px;color:#a1aab4;text-align:center;padding:30px 0 37px;line-height:1.5}.mobile-nav{display:none}#view{max-width:1300px;margin:0 auto;padding:32px 0 0;outline:none}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:25px}.kicker{font-size:10px;font-weight:850;color:var(--accent);letter-spacing:1.8px;text-transform:uppercase;margin:0 0 9px}.page-heading h1{font-size:clamp(25px,3vw,35px);letter-spacing:-1.5px;line-height:1.13;margin:0}.subheading{font-size:13px;color:var(--muted);margin:10px 0 0;line-height:1.6}.btn{border:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;border-radius:11px;font-weight:750;font-size:12px;transition:transform .15s,background .15s;white-space:nowrap}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn-primary{color:#fff;background:var(--accent)}.btn-primary:hover{background:var(--accent-dark)}.btn-ghost{color:#38475a;background:#f0f3f6}.btn-outline{color:#445467;background:#fff;border:1px solid #e4eaf0}.btn-dark{background:#fff;color:#1c3141}.btn-small{padding:9px 12px;font-size:11px}.btn .icon{width:16px;height:16px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(278px,1fr);gap:20px}.hero{min-height:238px;border-radius:20px;padding:29px 31px;background:linear-gradient(118deg,#162b3d 8%,#294154 72%,#425265);color:#fff;position:relative;overflow:hidden;display:flex;align-items:center}.hero-content{z-index:1;max-width:69%}.hero-kicker{font-size:10px;font-weight:750;color:#ffb8a7;letter-spacing:1.8px}.hero h2{font-size:clamp(25px,3vw,36px);letter-spacing:-1.3px;line-height:1.13;margin:12px 0}.hero p{font-size:12px;color:#cfdae2;line-height:1.65;max-width:320px;margin:0 0 21px}.hero-orb{position:absolute;width:280px;height:280px;border:45px solid rgba(255,255,255,.08);border-radius:50%;right:-50px;top:35px;box-shadow:0 0 0 35px rgba(255,255,255,.045),0 0 0 85px rgba(255,255,255,.025)}.hero-number{position:absolute;right:22px;bottom:-32px;font-size:220px;line-height:1;font-weight:900;letter-spacing:-18px;color:rgba(255,255,255,.07)}.panel{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:var(--shadow);min-width:0}.panel-head,.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:19px}.panel h2,.section-head h2{font-size:16px;margin:0;letter-spacing:-.45px}.panel small,.light{font-size:11px;color:#95a0ad}.section-head{margin:27px 0 14px}.section-head h2{font-size:17px}.text-link{border:none;background:none;color:var(--accent-dark);font-size:11px;font-weight:800;padding:6px 0}.text-link:hover{text-decoration:underline}.progress-track{height:8px;background:#f0f2f4;border-radius:10px;overflow:hidden}.progress-bar{height:100%;background:var(--accent);border-radius:10px;transition:width .2s}.metric-large{font-size:37px;font-weight:850;letter-spacing:-1.7px}.metric-large small{font-size:13px;color:#a4aeb7;font-weight:500;letter-spacing:0}.metric-label{color:var(--muted);font-size:11px;margin-top:4px}.metric-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:19px}.metric-chip{background:#f7f8fa;border-radius:12px;padding:12px}.metric-chip strong{display:block;font-size:18px;letter-spacing:-.5px}.metric-chip span{display:block;color:#929daa;font-size:10px;margin-top:5px}.mini-line{height:1px;background:var(--line);margin:17px 0}.daily-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.daily-card{border:1px solid var(--line);background:white;border-radius:17px;padding:21px;display:flex;flex-direction:column;min-height:176px}.card-icon{width:40px;height:40px;border-radius:12px;background:#fff0eb;color:var(--accent);display:grid;place-items:center;margin-bottom:15px}.card-icon.green{background:#eaf6f1;color:#2a9775}.daily-card h3{margin:0 0 7px;font-size:14px}.daily-card p{font-size:11px;line-height:1.6;color:#8894a2;margin:0 0 16px}.daily-card .text-link{margin-top:auto;align-self:flex-start}.badge{display:inline-block;border-radius:30px;background:#e9f7f0;color:#248462;font-size:10px;font-weight:800;padding:7px 10px}.badge-soft{background:#fff2eb;color:#ca6445}.badge-muted{background:#f2f4f7;color:#6c7d8b}.training-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(270px,.7fr);gap:20px}.weekday-row{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-bottom:21px}.day-tile{border:1px solid #e9edf1;background:#fff;border-radius:12px;padding:11px 4px;display:grid;justify-items:center;gap:9px;color:#94a0ac;min-height:69px}.day-tile strong{font-size:11px}.day-tile span{width:8px;height:8px;border-radius:50%;background:#e8edf0}.day-tile.has-workout span{background:#eda08b}.day-tile.today{background:#fff1eb;color:var(--accent-dark);border-color:#f4bda9}.day-tile.is-selected{outline:2px solid var(--accent);outline-offset:1px}.day-tile.is-done span{background:var(--green)}.session-banner{background:#fff7f3;border:1px solid #ffeadf;border-radius:14px;padding:17px;margin-bottom:18px;display:flex;justify-content:space-between;align-items:center;gap:10px}.session-banner strong{font-size:14px}.session-banner p{margin:6px 0 0;color:#9a857c;font-size:11px}.exercise-row{display:grid;grid-template-columns:37px minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}.exercise-row:last-child{border:0}.exercise-num{width:35px;height:35px;display:grid;place-items:center;background:#f5f6f8;color:#8190a0;border-radius:10px;font-size:12px;font-weight:750}.exercise-name{font-size:12px;font-weight:750;line-height:1.45}.exercise-detail{font-size:10px;color:#929daa;margin-top:5px;line-height:1.5}.check-wrap{display:flex;align-items:center;gap:8px;font-size:11px;color:#68788a}.check-wrap input{accent-color:var(--accent);width:17px;height:17px}.info-note{font-size:11px;line-height:1.6;color:#84919e;background:#f7f8fa;border-radius:12px;padding:13px 15px}.session-side{display:grid;gap:14px;align-content:start}.side-stat{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid var(--line);font-size:12px}.side-stat:last-child{border-bottom:0}.side-stat span{color:#8995a2}.side-stat strong{font-size:13px}.meal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.meal-card{display:flex;flex-direction:column;overflow:hidden;background:white;border:1px solid var(--line);border-radius:18px;min-height:294px}.meal-art{height:108px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.meal-art:before,.meal-art:after{content:"";position:absolute;border-radius:50%;width:125px;height:125px;border:23px solid rgba(255,255,255,.22);right:-18px;top:8px}.meal-art:after{width:60px;height:60px;left:10px;top:43px;border-width:13px}.meal-art span{position:relative;z-index:1;font-size:44px;filter:drop-shadow(0 5px 5px rgba(0,0,0,.08))}.meal-art.breakfast{background:#f8dfc9}.meal-art.lunch{background:#e2e8d8}.meal-art.dinner{background:#e5e2f4}.meal-body{padding:17px;display:flex;flex-direction:column;flex:1;gap:10px}.meal-eyebrow{font-size:10px;font-weight:800;color:var(--accent-dark);text-transform:uppercase;letter-spacing:1px}.meal-body h3{font-size:15px;line-height:1.35;margin:0}.meal-body p{color:#8794a1;font-size:11px;line-height:1.65;margin:0}.meal-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:auto}.meal-tags span{font-size:9px;color:#73808d;background:#f2f4f6;padding:5px 8px;border-radius:20px}.meal-actions{padding:0 17px 17px;display:flex;justify-content:space-between;gap:7px}.meal-actions .btn{font-size:10px;padding:9px 10px}.weight-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,.8fr);gap:20px}.chart-wrap{height:218px;position:relative}.chart-wrap svg{width:100%;height:100%;overflow:visible}.chart-empty{height:218px;display:grid;place-content:center;text-align:center;gap:8px;color:#94a0ac;font-size:12px}.chart-empty strong{color:#3d4f60;font-size:15px}.form-group{display:grid;gap:7px;margin-bottom:14px}.form-group label{font-size:11px;color:#667688;font-weight:750}.field{min-height:42px;border:1px solid #e3e9ef;border-radius:10px;background:#fff;padding:10px 12px;color:var(--ink);width:100%;font-size:13px}.field:focus{border-color:#e88b76;outline:2px solid #fce1d9}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 13px}.form-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:16px}.profile-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:20px}.history-row{display:flex;justify-content:space-between;align-items:center;gap:8px;border-bottom:1px solid var(--line);padding:13px 0;font-size:11px}.history-row:last-child{border:0}.history-row strong{font-size:12px}.history-row span{color:#8e99a6}.empty{text-align:center;color:#919ba7;font-size:12px;padding:24px 8px;line-height:1.7}.notice{padding:12px 15px;border-radius:12px;background:#fff5ed;color:#9a6244;font-size:11px;line-height:1.55}.notice strong{color:#865139}.modal-scrim{position:fixed;inset:0;z-index:50;background:rgba(14,29,42,.55);display:flex;align-items:center;justify-content:center;padding:18px;overflow-y:auto}.modal{background:#fff;border-radius:22px;max-width:530px;width:100%;padding:28px;box-shadow:0 24px 80px rgba(0,0,0,.2);max-height:calc(100dvh - 36px);overflow-y:auto}.modal h2{font-size:27px;letter-spacing:-1px;margin:8px 0 10px}.modal p{font-size:12px;color:#7d8997;line-height:1.6}.modal-top{display:flex;justify-content:space-between;gap:12px;align-items:start}.x-btn{background:#f2f4f6;border:0;border-radius:8px;font-size:20px;width:33px;height:33px;color:#586674}.toast{position:fixed;bottom:23px;left:50%;transform:translate(-50%,20px);background:#203748;color:#fff;padding:12px 18px;border-radius:12px;font-size:12px;z-index:100;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;text-align:center;max-width:min(440px,90vw)}.toast.show{opacity:1;transform:translate(-50%,0)}.version-line{font-size:11px;color:#9aa5af;margin-top:24px}.steps{display:flex;gap:6px;margin:17px 0}.steps span{height:5px;flex:1;border-radius:5px;background:#f1f3f6}.steps span.done{background:var(--accent)}.intro-illustration{height:95px;border-radius:16px;background:linear-gradient(110deg,#fff2ec,#e5eef0);display:flex;align-items:center;justify-content:center;font-size:43px;margin:14px 0}.danger{color:#b84d43}.btn-danger{color:#b84d43;background:#fff0ee}.muted-small{color:#8996a3;font-size:11px;line-height:1.7}.desktop-only{display:inline}.full-span{grid-column:1/-1}
@media(max-width:1180px){.app-main{padding:0 26px}.sidebar{width:215px}.app-shell{grid-template-columns:215px minmax(0,1fr)}.dashboard-grid{grid-template-columns:minmax(0,1.3fr) minmax(245px,.8fr)}}
@media(max-width:900px){.sidebar{display:none}.app-shell{display:block}.app-main{padding:0 22px}.topbar{height:75px}.mobile-nav{display:flex;position:fixed;z-index:20;bottom:0;left:0;right:0;background:#fff;border-top:1px solid var(--line);padding:7px max(7px,env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(7px,env(safe-area-inset-left));justify-content:space-around;box-shadow:0 -5px 20px rgba(28,43,55,.04)}.mobile-nav .nav-item{flex:1;display:grid;justify-items:center;gap:5px;text-align:center;padding:8px 2px;border-radius:11px;font-size:9px;white-space:nowrap}.mobile-nav .nav-item .icon{width:20px;height:20px}.main-footer{padding-bottom:105px}.toast{bottom:88px}}
@media(max-width:680px){.app-main{padding:0 15px}.topbar{height:70px}.topbar-left strong{font-size:13px}.topbar-eyebrow{font-size:9px}.today-pill{display:none}.topbar-right{gap:5px}#view{padding-top:23px}.page-heading{align-items:start;margin-bottom:19px}.page-heading h1{font-size:27px}.page-heading>.btn{font-size:10px;padding:9px}.subheading{font-size:12px}.dashboard-grid,.training-layout,.weight-grid,.profile-grid{grid-template-columns:1fr;gap:14px}.hero{min-height:218px;padding:25px 21px}.hero-content{max-width:78%}.hero h2{font-size:29px}.hero-number{font-size:160px;right:0;bottom:-19px}.hero-orb{right:-120px}.panel{padding:18px}.daily-cards{gap:10px}.daily-card{padding:15px;min-height:190px}.daily-card h3{font-size:12px}.daily-card p{font-size:10px}.metric-row{gap:8px}.metric-chip{padding:10px}.metric-chip strong{font-size:15px}.metric-chip span{font-size:9px}.meal-grid{grid-template-columns:1fr;gap:13px}.meal-card{min-height:0}.meal-art{height:77px}.meal-art span{font-size:35px}.meal-body{gap:7px}.meal-actions{padding-bottom:15px}.weekday-row{gap:4px}.day-tile{min-height:61px;padding:9px 1px}.day-tile strong{font-size:9px}.exercise-row{grid-template-columns:30px minmax(0,1fr) auto;gap:7px}.exercise-num{width:29px;height:29px}.exercise-name{font-size:11px}.check-wrap{font-size:10px}.check-wrap input{width:16px;height:16px}.modal{padding:20px}.modal h2{font-size:23px}.form-grid{gap:0 8px}.section-head{margin-top:23px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;scroll-behavior:auto!important}}

/* v0.2.0 · carácter deportivo, tarjetas musculares y selector de material */
:root{--accent:#f45f42;--accent-dark:#d94c32;--navy:#111d30;--ink:#122037;--soft:#f1f4f8;--shadow:0 12px 36px rgba(10,27,48,.055)}
.hero{background:linear-gradient(120deg,#101d31,#263d56 75%,#f45f42 180%)}
.hero-kicker,.kicker{font-weight:900}.page-heading h1,.hero h2{font-weight:900}.brand-mark{border-radius:11px;transform:skew(-5deg)}
.exercise-row{grid-template-columns:67px minmax(0,1fr) auto;gap:13px;min-height:106px}.muscle-tile{width:62px;height:89px;border-radius:13px;background:#edf1f6;display:grid;place-items:center}.muscle-art{width:52px;height:77px}.muscle-label{font-size:10px;color:#d4553b;font-weight:800;margin-top:4px}.gear-fields{border:1px solid #e0e6ed;border-radius:13px;padding:16px;margin:0 0 15px}.gear-fields legend{font-weight:850;font-size:12px;padding:0 5px}.gear-fields p{font-size:11px;line-height:1.5;color:#6e7d8d;margin:3px 0 13px}.gear-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.gear-option{display:flex;align-items:center;gap:9px;padding:11px;background:#f5f7fa;border:1px solid #e9edf2;border-radius:10px;font-size:11px;font-weight:700}.gear-option input{accent-color:var(--accent);flex-shrink:0}.gear-option:has(input:checked){background:#fff1eb;border-color:#ffc4b5}[hidden]{display:none!important}
@media(max-width:680px){.exercise-row{grid-template-columns:51px minmax(0,1fr) auto;gap:9px}.muscle-tile{width:49px;height:75px}.muscle-art{width:43px;height:66px}.gear-list{grid-template-columns:1fr}.gear-fields{padding:12px}.exercise-detail{line-height:1.65}}

/* FORMA v0.3.0 · Diario de entrenamiento y registros de series */
.journal-guide{font-size:12px;line-height:1.65;color:#6c7a8b;background:#f5f7fb;border:1px solid #e9edf3;border-radius:12px;padding:13px 15px;margin:0 0 17px}
.exercise-journal{background:#fff;border:1px solid #e8edf2;border-radius:18px;padding:16px;margin:0 0 13px;box-shadow:0 8px 22px rgba(20,37,58,.035)}
.journal-heading{display:flex;gap:14px;align-items:center;margin-bottom:14px}.journal-heading .muscle-tile{flex-shrink:0;width:52px;height:66px}.journal-heading .muscle-art{width:39px;height:60px}.journal-heading h3{font-size:15px;line-height:1.35;letter-spacing:-.2px;margin:4px 0}.journal-heading p{color:#8896a3;font-size:10px;line-height:1.55;margin:2px 0}.journal-index{font-size:9px;letter-spacing:.9px;color:#e45b3e;font-weight:900}
.sets-labels,.set-row{display:grid;grid-template-columns:42px minmax(0,1fr) minmax(0,1fr) 48px;align-items:center;gap:8px}.sets-labels{font-size:10px;color:#8492a2;font-weight:800;letter-spacing:.2px;padding:0 0 7px}.set-row{background:#f5f7fa;border:1px solid #eaf0f4;border-radius:11px;padding:7px 8px;margin-bottom:7px;min-height:49px}.set-row:has(.set-field:first-of-type:last-of-type){grid-template-columns:42px minmax(0,1fr) 48px}.exercise-journal:has(.sets-labels span:nth-child(3):last-child) .sets-labels{grid-template-columns:42px minmax(0,1fr) 48px}.set-row.set-complete{background:#eef7f2;border-color:#d5eada}.set-index{font-weight:900;color:#556578;font-size:13px;padding-left:9px}.set-field{width:100%;min-width:0;height:35px;border-radius:8px;background:#fff;border:1px solid #e1e7ee;color:#1c2a3a;padding:7px 8px;font-size:13px;font-weight:800;font-variant-numeric:tabular-nums}.set-field:disabled{background:transparent;border-color:transparent;color:#24795b;opacity:1}.set-field::placeholder{color:#b1bbc7;font-weight:500}.set-check{display:grid;justify-content:center;cursor:pointer;position:relative}.set-check input{position:absolute;opacity:0;width:34px;height:34px;cursor:pointer;margin:0}.set-check span{width:31px;height:31px;display:grid;place-items:center;border:1.5px solid #c9d4df;background:white;color:transparent;border-radius:9px;font-weight:900}.set-check input:checked+span{color:white;background:#248260;border-color:#248260}.set-check input:focus-visible+span{outline:3px solid #f6b19f;outline-offset:2px}.journal-actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:13px}.journal-action{border:0;background:transparent;color:#de5639;display:flex;align-items:center;gap:4px;font-weight:800;font-size:11px;padding:6px 2px}.journal-action:disabled{color:#a9b1ba}.journal-action .icon{width:15px;height:15px}.journal-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;border:1px solid #f8cbbf;background:#fff6f2;border-radius:16px;padding:18px;margin-top:20px}.journal-footer strong{font-size:13px}.journal-footer p{font-size:11px;color:#8d746a;margin:6px 0 0;line-height:1.5}.journal-footer .btn{max-width:100%}.saved-exercise{padding:14px 3px;border-bottom:1px solid var(--line);font-size:12px;display:grid;gap:9px}.saved-exercise:last-child{border:0}.saved-sets{display:flex;gap:7px;flex-wrap:wrap}.saved-sets span{padding:7px 9px;border-radius:7px;background:#eef7f2;color:#24795b;font-size:11px;font-weight:750}.history-entry{border-bottom:1px solid var(--line)}.history-entry:last-child{border-bottom:0}.history-entry .history-row{border:0}.history-details{padding:0 0 14px}.history-details summary{cursor:pointer;color:#d95140;font-size:11px;font-weight:800;padding:4px 0 10px}.history-exercise{display:grid;gap:4px;font-size:11px;padding:9px 7px;background:#f6f8fa;border-radius:8px;margin-bottom:5px}.history-exercise span{color:#6b7987;line-height:1.6;overflow-wrap:anywhere}
@media(max-width:680px){.exercise-journal{padding:12px;border-radius:13px}.journal-heading{gap:10px}.journal-heading h3{font-size:13px}.sets-labels,.set-row{grid-template-columns:33px minmax(0,1fr) minmax(0,1fr) 39px;gap:5px}.set-row:has(.set-field:first-of-type:last-of-type){grid-template-columns:33px minmax(0,1fr) 39px}.exercise-journal:has(.sets-labels span:nth-child(3):last-child) .sets-labels{grid-template-columns:33px minmax(0,1fr) 39px}.set-row{padding:6px}.set-index{padding-left:5px}.set-field{font-size:12px}.journal-footer{padding:14px}.journal-footer .btn{width:100%;justify-content:center}}

.journal-skipped{background:#f3f5f8;border:1px dashed #c9d2dd;color:#637386;border-radius:10px;padding:15px;line-height:1.6;font-size:12px;margin:10px 0}.journal-action[data-action="toggle-skip"]{color:#5a6878;font-weight:750}.set-check input:disabled+span{opacity:.4;cursor:not-allowed}

/* FORMA v0.4.0 · Pantalla Progreso: tarjetas compactas, jerarquía y accesibilidad. */
:root{--accent:#f05e43;--accent-dark:#cc412a;--navy:#112b3c;--line:#e5eaf0;--shadow:0 15px 45px rgba(16,39,56,.048)}
.progress-hero{background:linear-gradient(112deg,#142c3e,#233e4c 75%,#33494b);border-radius:23px;color:#fff;padding:28px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:24px;position:relative;overflow:hidden;align-items:center}
.progress-hero::after{content:'';position:absolute;width:270px;height:270px;border:52px solid rgba(255,255,255,.035);border-radius:50%;right:-75px;top:-130px;pointer-events:none}
.progress-hero-intro,.progress-hero-stats{position:relative;z-index:1}.progress-overline{font-size:10px;color:#fa8068;letter-spacing:1.5px;font-weight:850;display:block;margin:0 0 9px}.progress-hero h2{font-size:clamp(21px,2.5vw,30px);line-height:1.16;letter-spacing:-1px;margin:0 0 11px;max-width:320px}.progress-hero p{font-size:12px;line-height:1.65;color:#c3d1d9;max-width:320px;margin:0}
.progress-hero-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.progress-stat{background:rgba(255,255,255,.085);border:1px solid rgba(255,255,255,.095);border-radius:15px;padding:17px 12px;min-width:0;display:flex;flex-direction:column;gap:6px}.progress-stat strong{font-size:34px;letter-spacing:-1.3px;font-variant-numeric:tabular-nums}.progress-stat>span{font-size:12px;font-weight:800}.progress-stat small{color:#b7c9d5;font-size:10px;line-height:1.45}
.progress-weight-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.8fr);gap:16px;margin-top:18px;align-items:stretch}.weight-chart-panel,.weight-entry-panel{min-height:0}.weight-chart-panel .panel-head{margin-bottom:12px}.weight-chart-panel .chart-wrap{height:155px}.weight-chart-panel .chart-wrap svg{height:100%}.weight-empty{min-height:98px;display:flex;align-items:center;gap:14px;padding:12px 3px}.weight-empty-icon{flex:0 0 43px;height:43px;border-radius:13px;background:#fff0eb;color:#d95140;display:grid;place-items:center}.weight-empty strong{display:block;font-size:13px;line-height:1.45}.weight-empty p{margin:4px 0 0;color:#8793a1;font-size:11px;line-height:1.5}.weight-helper{font-size:10px;color:#8995a2;line-height:1.55;margin:9px 0 0}.weight-entry-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.weight-number{font-size:34px;font-weight:850;letter-spacing:-1px;font-variant-numeric:tabular-nums}.weight-number small{font-size:13px;font-weight:550;color:#8d9baa}.weight-date{display:block;color:#8091a0;font-size:11px;margin-top:3px}.weight-entry-symbol{width:41px;height:41px;display:grid;place-items:center;border-radius:12px;background:#f5f7f9;color:#f05e43}.weight-inline-form{margin-top:15px}.weight-inline-form>label{display:block;font-weight:800;font-size:11px;margin-bottom:8px}.weight-inline-form label small{font-weight:500;color:#8793a1}.weight-entry-controls{display:flex;align-items:stretch;gap:8px}.weight-entry-controls .field{min-width:0;flex:1}.weight-entry-controls .btn{flex:0 0 auto}
.history-title-row{margin:28px 0 14px;display:flex;justify-content:space-between;gap:14px;align-items:end}.history-title-row h2{margin:0;font-size:22px;letter-spacing:-.7px}.history-title-row p:not(.progress-overline){margin:7px 0 0;color:#8794a1;font-size:12px;line-height:1.5}.history-total{background:#fff1eb;color:#bc523a;border-radius:30px;padding:8px 11px;font-size:11px;font-weight:800;white-space:nowrap}
.progress-history{display:grid;gap:11px}.history-card{background:#fff;border:1px solid var(--line);border-radius:17px;box-shadow:0 8px 32px rgba(19,43,58,.035);overflow:hidden}.progress-accordion>summary{display:flex;align-items:center;gap:14px;padding:18px;cursor:pointer;list-style:none;user-select:none}.progress-accordion>summary::-webkit-details-marker{display:none}.progress-accordion>summary:hover{background:#fffaf7}.progress-accordion>summary:focus-visible{outline:3px solid #f6b19f;outline-offset:-4px;border-radius:15px}.history-card-icon{height:43px;width:43px;border-radius:12px;background:#fff1eb;color:var(--accent-dark);display:grid;place-items:center;flex:0 0 auto}.history-card-main{display:grid;gap:5px;min-width:0;flex:1}.history-card-date{color:#8896a4;font-size:10px}.history-card-main strong{font-size:14px;line-height:1.25}.history-card-meta{font-size:11px;color:#8494a1}.history-card-side{display:grid;justify-items:end;gap:10px;flex-shrink:0}.history-status{display:inline-flex;align-items:center;gap:4px;color:#26775e;background:#eaf7f0;border-radius:30px;font-size:10px;font-weight:800;padding:6px 9px}.history-status .icon{width:12px;height:12px}.history-action{font-size:11px;color:#ce4c30;font-weight:800}.accordion-chevron{display:inline-block;font-size:16px;transition:transform .15s;margin-left:3px}.progress-accordion[open] .accordion-chevron{transform:rotate(180deg)}.history-expanded{border-top:1px solid var(--line);padding:13px 18px 17px;background:#fdfdfd;display:grid;gap:9px}.history-exercise-new{border:1px solid #e9edf1;background:#fff;border-radius:12px;padding:12px;min-width:0}.history-exercise-top{display:flex;align-items:center;gap:11px}.history-muscle{width:42px;height:48px;flex:0 0 42px;border-radius:10px;background:#f3f6f8;display:grid;place-items:center;overflow:hidden}.history-muscle .muscle-art{width:31px;height:44px}.history-exercise-title{min-width:0;display:grid;gap:3px;flex:1}.history-exercise-title small{font-size:10px;color:#8795a3}.history-exercise-title strong{font-size:12px;line-height:1.35}.history-set-count,.history-skip{font-size:10px;border-radius:30px;background:#edf6f0;color:#348465;padding:5px 8px;white-space:nowrap}.history-skip{background:#f2f3f5;color:#8b959e}.history-set-list{display:flex;gap:7px;flex-wrap:wrap;margin-top:11px}.history-set-list>span{background:#f3f6f9;color:#344556;border-radius:7px;padding:7px 9px;font-size:11px;font-variant-numeric:tabular-nums}.history-set-list b{color:#e15a3f;margin-right:5px}.compare-note{background:#f5f7fa;border-radius:9px;margin-top:10px;padding:10px;color:#566678;font-size:11px;display:grid;gap:5px;line-height:1.5}.compare-up{background:#edf7f1;color:#256d53}.compare-new{background:#fff5ed;color:#995e4a}.comparison-label{font-size:9px;font-weight:850;letter-spacing:.8px;color:#8995a1}.compare-note small{color:#768898;font-size:10px}.compare-delta{font-weight:850}.history-disclaimer{color:#8a96a4;font-size:10px;line-height:1.55;margin:4px 2px 0}.history-zero{min-height:170px;border:1px dashed #dfe7ee;background:white;border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;text-align:center;gap:9px}.history-zero>div{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;color:var(--accent);background:#fff1eb}.history-zero strong{font-size:14px}.history-zero p,.history-limit{font-size:11px;color:#8592a0;line-height:1.5;margin:0}.history-zero .btn{margin-top:6px}.history-limit{margin-top:12px}.last-session-note{display:inline-block;color:#b45a43;background:#fff1ec;border-radius:8px;font-size:10px;font-weight:750;padding:6px 8px;margin-top:7px}
@media(max-width:1120px){.progress-hero{grid-template-columns:1fr}.progress-hero-intro h2,.progress-hero-intro p{max-width:none}.progress-weight-grid{grid-template-columns:1fr}}
@media(max-width:650px){.progress-hero{padding:20px 16px;gap:18px;border-radius:18px}.progress-hero h2{font-size:25px}.progress-hero-stats{gap:6px}.progress-stat{padding:12px 8px;border-radius:11px}.progress-stat strong{font-size:26px}.progress-stat>span{font-size:10px;line-height:1.3}.progress-stat small{font-size:9px}.progress-weight-grid{margin-top:12px;gap:12px}.weight-chart-panel,.weight-entry-panel{padding:17px}.weight-entry-controls .btn{padding:11px 13px}.history-title-row{align-items:center}.history-title-row h2{font-size:19px}.history-title-row p:not(.progress-overline){font-size:11px}.progress-accordion>summary{gap:10px;padding:13px}.history-card-icon{width:36px;height:36px;border-radius:10px}.history-card-main strong{font-size:12px}.history-card-meta{font-size:10px}.history-status{font-size:0;padding:7px}.history-status .icon{width:15px;height:15px}.history-action{font-size:10px}.history-expanded{padding:10px;gap:8px}.history-exercise-new{padding:10px}.history-exercise-title strong{font-size:11px}.history-set-count,.history-skip{font-size:9px}.weight-chart-panel .chart-wrap{height:145px}}
@media(max-width:375px){.history-card-icon{display:none}.progress-stat small{display:none}.history-total{font-size:10px;padding:6px}.history-set-count{display:none}}

/* FORMA v0.4.1 — nueva identidad visual deportiva, independiente de otros proyectos */
:root{--ink:#edf2f6;--muted:#9baab7;--accent:#39e2c2;--accent-dark:#39e2c2;--navy:#111820;--line:#293641;--panel:#171f28;--soft:#202b35;--green:#39e2c2;--shadow:none;color-scheme:dark;background:#0b1118;color:#edf2f6}
body{background:#0b1118;color:#edf2f6;font-family:Inter,ui-sans-serif,system-ui,Arial,sans-serif}
.sidebar{background:#101820;border-right:1px solid #293641}.app-main{background:radial-gradient(ellipse at 80% 0%,#172431 0%,#0b1118 48%)}
.brand{margin-bottom:35px}.brand-mark{background:#39e2c2;color:#101820;border-radius:5px;transform:none}.brand-dot{color:#101820}.brand-name{font-style:italic;letter-spacing:2.5px}.brand-sub,.sidebar-label,.topbar-eyebrow{color:#93a3b0}.sidebar-tip{background:#1a2731;border:1px solid #35444e;border-radius:7px;min-height:0}.sidebar-tip span{color:#39e2c2}.sidebar-tip strong{font-size:16px}.sidebar-tip p,.sidebar-version{color:#adbac5}
.nav-item{color:#b4c0ca;border-radius:5px}.nav-item:hover,.nav-item.active{background:#39e2c2;color:#101820}.nav-item.active .icon{stroke:#101820}
.topbar{border-bottom:1px solid #293641}.topbar-left strong{color:#f1f6f9}.today-pill,.avatar{background:#202b35;color:#e1edf4;border-color:#394650;border-radius:5px}.avatar{color:#39e2c2}.page-heading h1,.progress-hero h2,.hero h2{font-size:clamp(29px,3.7vw,49px);font-weight:950;line-height:1.04;text-transform:uppercase;letter-spacing:-1.6px;font-style:italic}.subheading,.muted-small,.light{color:#adbbc7}.kicker,.progress-overline,.hero-kicker{color:#39e2c2;letter-spacing:2.2px}
.panel,.daily-card,.meal-card,.exercise-journal,.history-card{background:#17212b;border:1px solid #30404c;border-radius:7px;box-shadow:none}.hero,.progress-hero{background:linear-gradient(115deg,#1b2d37,#14212c);border:1px solid #394d56;border-left:5px solid #39e2c2;border-radius:7px}.hero-orb,.hero-number,.progress-hero::after{opacity:.24}.progress-stat{background:#111e27;border:1px solid #4b5e63;border-radius:5px}.progress-stat strong{color:#39e2c2}.progress-stat small,.progress-stat span{color:#c3d0d8}.progress-hero-intro p,.hero p{color:#c3d0d8}
.btn{border-radius:5px}.btn-primary{background:#39e2c2;color:#111a21}.btn-primary:hover{background:#39e2c2}.btn-ghost,.btn-outline{background:#25333e;color:#edf5f8;border:1px solid #49606c}.btn-dark{background:#39e2c2;color:#111a21}.text-link{color:#39e2c2}.badge,.badge-soft,.badge-muted{border-radius:4px;background:#2b3c39;color:#d0ff92}.badge-soft{background:#344026;color:#39e2c2}
.metric-chip,.weight-chart-panel,.weight-form-panel,.history-exercise,.history-exercise-detail,.history-detail,.journal-guide,.session-banner,.info-note,.notice,.exercise-num,.muscle-tile,.card-icon,.card-icon.green,.day-tile,.meal-tags span,.chart-empty,.field,.modal,.modal-scrim .modal{background:#202e39;color:#edf2f6;border-color:#3a4e5a;border-radius:5px}.metric-chip span,.metric-label,.panel small,.history-exercise small,.exercise-detail,.meal-body p,.chart-empty span{color:#aebeca}.field{color-scheme:dark}.field::placeholder{color:#a4b3bd}.field:focus{border-color:#39e2c2;outline:2px solid #607a34}.day-tile.is-selected,.day-tile.today{background:#354529;color:#dbff98;outline-color:#39e2c2}.day-tile.has-workout span,.day-tile.is-done span,.progress-bar{background:#39e2c2}.progress-track{background:#30414c}.main-footer{color:#8495a3}.session-banner{background:#202e39}.session-banner p,.journal-guide{color:#bcc9d3}.journal-heading h3,.exercise-name,.meal-body h3,.panel h2,.section-head h2,.history-title-row h2{color:#edf5f9}.history-card .history-card-head,.history-card-header{background:#17212b}.history-set-count,.history-total{color:#39e2c2}.mini-line{background:#364752}.modal-scrim{background:rgba(1,6,10,.8)}.modal p{color:#c0cbd4}.x-btn{background:#31414c;color:#fff}.toast{background:#39e2c2;color:#121b22}.form-group label{color:#d1dce4}
@media(max-width:900px){.mobile-nav{background:#121d26;border-top:1px solid #384b55;box-shadow:0 -8px 28px #050a0e88}.mobile-nav .nav-item{color:#bdcbd3}.mobile-nav .nav-item.active{color:#111a21;background:#39e2c2;border-radius:5px}}
@media(max-width:680px){.app-main{background:#0b1118}.topbar{height:66px}.page-heading h1{font-size:32px}.panel,.history-card,.exercise-journal{border-radius:6px}.progress-hero{border-radius:6px}.progress-hero h2{font-size:28px}.progress-stat{padding:10px 7px}.mobile-nav .nav-item{min-height:50px}}


/* FORMA v0.4.2 — Corrección de contraste y coherencia. Nada de CSS de temas claros.
   Unifica TODOS los estados de tarjetas, campos, historiales y opciones de material. */
:root {
  --ink:#f1f6fa;
  --muted:#b6c5cf;
  --accent:#39e2c2;
  --accent-dark:#39e2c2;
  --line:#41525d;
  --panel:#192630;
  --soft:#253540;
  color-scheme:dark;
}
body,.app-shell,.app-main {color:var(--ink);background:#0b1118}
button,input,select,textarea {font-family:inherit}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,
textarea:focus-visible,summary:focus-visible {outline:3px solid #39e2c2;outline-offset:3px}
.panel,.daily-card,.meal-card,.exercise-journal,.history-card {color:var(--ink);background:#192630;border-color:#455560}
.panel h2,.panel h3,.daily-card h3,.history-card strong,.meal-body h3 {color:#f1f6fa}
.subheading,.light,.muted-small,.main-footer,.version-line,.metric-label,.metric-chip span,
.panel small,.daily-card p,.meal-body p,.history-title-row p:not(.progress-overline),
.weight-helper,.weight-date,.weight-empty p,.history-card-date,.history-card-meta,
.history-exercise-title small,.history-disclaimer,.history-zero p,.history-limit,
.exercise-detail,.journal-heading p,.history-row span,.side-stat span,.progress-stat small,
.progress-hero p,.hero p,.gear-fields p {color:#b9c8d2}
.metric-large small,.weight-number small,.weight-inline-form label small {color:#c3d0d8}
/* Profile and onboarding — every label has legible dark-on-dark or lime-on-dark treatment. */
.gear-fields {color:#f1f6fa;background:#16222c;border:1px solid #586875;border-radius:7px;padding:15px}
.gear-fields legend {color:#eff5f8;font-size:13px;padding:0 6px}
.gear-fields p {font-size:12px;line-height:1.55}
.gear-list {gap:10px}
.gear-option {color:#eff5f8;background:#273744;border:1px solid #526572;
  border-radius:6px;min-height:48px;padding:12px 13px;font-size:13px;
  font-weight:750;line-height:1.35;cursor:pointer;transition:border-color .12s,background .12s}
.gear-option:hover {background:#324652;border-color:#39e2c2}
.gear-option:has(input:checked) {background:#31432c;border:2px solid #39e2c2;color:#f3ffdd;padding:11px 12px}
.gear-option:focus-within {outline:3px solid #39e2c2;outline-offset:2px}
.gear-option input {width:19px;height:19px;accent-color:#39e2c2}
.field,.set-field {color:#f1f6fa;background:#263743;border:1px solid #60727e;color-scheme:dark;border-radius:6px}
.field::placeholder,.set-field::placeholder {color:#b6c4ce;opacity:1}
.field:focus,.set-field:focus {border-color:#39e2c2;outline:2px solid #39e2c2;outline-offset:1px}
.field option {color:#f1f6fa;background:#263743}
/* Training journal: old light rows, disabled values and checkmarks were invisible. */
.journal-guide,.info-note,.notice,.journal-skipped {background:#253540;color:#e0eaf0;border:1px solid #50616d;border-radius:6px}
.notice strong {color:#f1f6fa}
.exercise-journal,.journal-footer {color:#eff6f9;background:#192630;border:1px solid #455560;border-radius:7px}
.journal-footer p,.journal-heading p,.sets-labels,.exercise-row .check-wrap {color:#c1cfd7}
.set-row {background:#263743;border:1px solid #526572;border-radius:6px}
.set-row.set-complete {background:#2a3d2a;border-color:#39e2c2}
.set-index {color:#f1f6fa}
.set-field:disabled {color:#d6ff9b;background:#293c35;border-color:#54754b;opacity:1}
.set-check span {background:#253642;color:#253642;border-color:#adbec7;border-radius:5px}
.set-check input:checked+span {background:#39e2c2;border-color:#39e2c2;color:#101820}
.set-check input:focus-visible+span {outline:3px solid #39e2c2}
.journal-action,.journal-action[data-action="toggle-skip"],.history-details summary {color:#39e2c2}
.journal-action:disabled {color:#a0aeb8}
/* Progress: all nested history surfaces must remain dark even when expanded. */
.history-card,.history-exercise-new,.history-expanded,.history-zero,
.history-exercise,.history-exercise-detail,.history-detail {color:#f1f6fa;background:#192630;border-color:#485b66;border-radius:7px}
.progress-accordion>summary {background:#192630;color:#f1f6fa}
.progress-accordion>summary:hover {background:#273743}
.progress-accordion>summary:focus-visible {outline:3px solid #39e2c2;border-radius:6px}
.history-expanded {background:#15212b;border-top:1px solid #4b5d68}
.history-exercise-new {background:#22313c;border:1px solid #4d606a}
.history-exercise-new strong,.history-card-main strong,.history-exercise-title strong {color:#f4f8fb}
.history-card-date,.history-card-meta,.history-exercise-title small {color:#b9c8d2}
.history-card-icon,.history-muscle,.weight-empty-icon,.weight-entry-symbol,
.history-zero>div,.card-icon,.card-icon.green,.muscle-tile {background:#30434e;color:#39e2c2;border-radius:6px}
.history-status,.history-set-count,.history-total,.history-skip,.badge,.badge-soft,.badge-muted {
  color:#dcffab;background:#34472d;border:1px solid #648047;border-radius:5px}
.history-action,.history-details summary {color:#39e2c2}
.history-set-list>span {color:#f2f7fb;background:#30434e;border:1px solid #51646f}
.history-set-list b,.journal-index {color:#39e2c2}
.last-session-note {color:#d7ff9d;background:#2a4128}
.history-disclaimer,.history-zero p,.history-limit {color:#b9c8d2}
.progress-hero-stats .progress-stat {color:#f1f6fa}
/* Home / menus / meals: no white islands with light text. */
.metric-chip,.weight-chart-panel,.weight-entry-panel,.meal-tags span,.chart-empty,
.session-banner,.exercise-num,.day-tile {color:#f1f6fa;background:#263743;border:1px solid #465b68;border-radius:6px}
.metric-chip span,.meal-tags span,.chart-empty {color:#c5d1d9}
.chart-empty strong {color:#f1f6fa}
.session-banner strong,.day-tile strong {color:#f1f6fa}
.day-tile.has-workout span,.day-tile.is-done span {background:#39e2c2}
.day-tile.is-selected,.day-tile.today {background:#33442a;color:#f1ffdc;border-color:#39e2c2}
.day-tile.is-selected strong,.day-tile.today strong {color:#f1ffdc}
.day-tile:not(.has-workout) span {background:#b3c1cd}
.meal-tags span {border:1px solid #526572;color:#f1f6fa}
.meal-eyebrow {color:#39e2c2}
.modal {color:#f1f6fa;background:#192630;border:1px solid #50616d;border-radius:8px}
.modal p {color:#c3d0d8}
.btn-danger {color:#ffd4ca;background:#512d2b;border:1px solid #b87c75}
.btn-ghost,.btn-outline {color:#f1f6fa;background:#2c3c48;border:1px solid #6d818d}
.btn-primary:disabled,.btn-dark:disabled {opacity:.65}
/* Even tiny captions need reliable contrast; responsive tiles shouldn't squash labels. */
@media (max-width:680px){
  .gear-list{grid-template-columns:1fr}
  .gear-option{font-size:14px;min-height:51px}
  .history-card-meta,.history-card-date,.history-exercise-title small{font-size:11px}
  .history-card-main strong,.history-exercise-title strong{font-size:13px}
  .history-set-list>span{font-size:12px}
  .mobile-nav .nav-item.active{color:#111a21;background:#39e2c2}
}
@media(prefers-reduced-motion:reduce){.btn,.gear-option{transition:none}.btn:hover:not(:disabled){transform:none}}
/* Exercise comparison notices: remove the last light cards from expanded Progress. */
.compare-note,.compare-note.compare-new,.compare-note.compare-up {
  background:#293a45;color:#e4edf3;border:1px solid #526671;border-radius:6px
}
.compare-note.compare-new {border-left:3px solid #39e2c2}
.compare-note.compare-up {background:#2d442b;border-color:#39e2c2}
.compare-note strong,.compare-delta {color:#39e2c2}
.comparison-label,.compare-note small {color:#c6d4dc}
/* Saved session read-only chips: formerly white islands from the light theme. */
.saved-sets span {color:#e9f7d2;background:#2e4336;border:1px solid #648454;border-radius:5px;font-size:12px}
.saved-exercise strong {color:#f1f6fa}

/* FORMA v0.4.3: controles de copia local. */
.backup-panel{border-color:#5a7041;background:#1a2932}.backup-panel h2{color:#eaf4fa}.backup-count{color:#c1d1dd;line-height:1.55;font-size:12px}.backup-count strong{color:#dcff93}.backup-buttons{display:flex;flex-wrap:wrap;gap:9px;margin:16px 0}.backup-buttons .btn{white-space:normal;text-align:center;min-height:43px}.backup-panel .btn-outline{background:#2a3b46;color:#edf5f8;border:1px solid #677b86}.backup-panel .btn-outline:hover{border-color:#39e2c2}.backup-file-input{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px}@media(max-width:680px){.backup-buttons{display:grid;grid-template-columns:1fr}.backup-buttons .btn{width:100%}}

/* v0.5.0 · Biblioteca y cambio de variante: superficies oscuras legibles en Android. */
.variant-control{margin:13px 0;padding:12px;background:#23343f;border:1px solid #516777;border-radius:7px;display:grid;gap:7px}
.variant-control label{font-size:11px;font-weight:850;letter-spacing:.11em;color:#dcff9a}
.variant-control .variant-field{width:100%;max-width:100%;min-width:0;min-height:48px;font-size:14px}
.variant-control small{color:#cbdae3;font-size:11px;line-height:1.5}
.exercise-guide{margin:11px 0 16px;padding:10px 12px;border-radius:7px;border:1px solid #526772;background:#1e2f3a;color:#e8f1f6}
.exercise-guide>summary,.exercise-library>summary,.library-card details>summary{cursor:pointer;color:#39e2c2;font-weight:750;line-height:1.5}
.exercise-guide:focus-within,.exercise-library:focus-within{border-color:#39e2c2}
.exercise-guide-body{display:flex;gap:12px;align-items:center;margin-top:13px}
.exercise-guide-body .muscle-tile{flex:0 0 58px}
.exercise-guide-body strong{color:#f2f8fb;font-size:13px}
.exercise-guide-body p{color:#e2edf3;font-size:12px;margin:5px 0}
.exercise-guide-body small{font-size:11px;line-height:1.5;color:#c4d1db}
.exercise-library{margin-top:18px;padding:20px}
.exercise-library>summary{font-size:15px;letter-spacing:.035em}
.exercise-library>.muted-small{margin:13px 0}
.library-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.library-card{display:flex;gap:12px;min-width:0;padding:14px;background:#243540;border:1px solid #506470;border-radius:8px}
.library-art{flex:0 0 52px}
.library-art .muscle-art{width:52px;height:75px}
.library-card>div:last-child{min-width:0}
.library-card h3{margin:4px 0;font-size:14px;line-height:1.4;color:#f3f8fc}
.library-card p,.library-card li{font-size:12px;line-height:1.55;color:#d2e0e9}
.library-card ul{padding-left:19px;margin:9px 0}
.library-card li+li{margin-top:5px}
.library-card details{margin-top:9px}
.library-group{color:#39e2c2;font-weight:800;font-size:10px;letter-spacing:.025em}
@media(max-width:760px){.library-grid{grid-template-columns:1fr}.exercise-library{padding:14px}.variant-control .variant-field{font-size:16px}.exercise-guide-body{align-items:flex-start}}

/* v0.5.1 · Calendario flexible y modo de ejercicio (responsive, sin imágenes externas). */
.week-controls{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:14px;flex-wrap:wrap}
.week-controls .btn{font-size:12px;padding:10px;min-height:42px}.week-controls strong{color:#ebf5f9;font-size:12px}
.preview-banner{border:1px solid #809956;background:#253329;color:#f1f8ec;padding:17px;margin:14px 0;border-radius:8px}
.preview-banner strong{font-size:16px}.preview-banner p{font-size:13px;line-height:1.6;margin:9px 0 15px;color:#d6e5d0}
.preview-banner .btn:disabled{opacity:.5;cursor:not-allowed}
.focus-toolbar{display:flex;align-items:center;gap:10px;justify-content:space-between;background:#15242c;border:1px solid #566a75;padding:12px;margin:15px 0;border-radius:8px;flex-wrap:wrap}
.focus-toolbar span{font-weight:800;color:#39e2c2}.focus-toolbar .btn{min-height:44px}
.focus-controls{margin:10px 0}.focus-controls .btn{min-height:44px}
.focus-art{display:none}.exercise-focused{border:1px solid #39e2c2;box-shadow:0 0 0 2px #b8f23e18}
.exercise-focused .focus-art{display:flex;justify-content:center;align-items:center;min-height:175px;background:radial-gradient(circle,#2b3d47,#18252e);border-radius:9px;margin:12px 0}
.exercise-focused .focus-art .muscle-art{width:110px;height:160px;max-width:100%}
.exercise-focused .journal-heading h3{font-size:clamp(22px,4vw,30px)}
@media(max-width:680px){.week-controls{display:grid;grid-template-columns:1fr 1fr}.week-controls strong{grid-row:1;grid-column:1/-1;text-align:center}.week-controls .btn{font-size:11px}.focus-toolbar .btn{font-size:12px;flex:1}.focus-toolbar span{order:-1;flex:1 0 100%;text-align:center}.exercise-focused .set-field{min-width:0}}

/* FORMA v0.6.0 · Sistema original de ilustraciones esquemáticas.
   No son fotografías, animaciones ni instrucciones de técnica. */
.forma-mini-art{display:flex;align-items:center;justify-content:center;min-width:0;width:100%;height:100%;border-radius:8px;background:#243843;overflow:hidden}
.forma-mini-art .forma-figure{width:100%;height:100%;max-height:110px;display:block}
.muscle-tile{width:62px;min-width:62px;height:80px;padding:3px}
.journal-heading .muscle-tile{width:76px;min-width:76px;height:98px}
.history-muscle{min-width:50px;min-height:65px}
.history-muscle .forma-mini-art{width:44px;height:64px}
.library-art{width:72px;flex:0 0 72px;height:105px}
.library-art .forma-mini-art{width:72px;height:105px}
.library-card{align-items:flex-start}
.exercise-guide-body .muscle-tile{width:72px;min-width:72px;height:97px}
.exercise-focused .focus-art{display:block;min-height:0;padding:0;margin:16px 0 18px;background:none;border:0}
.forma-muscle-hero{border:1px solid #566c78;border-radius:10px;padding:16px;background:radial-gradient(ellipse at 50% 36%,#2a3e48 0%,#15232d 75%);color:#f1f6fa;max-width:100%;overflow:hidden}
.forma-muscle-hero-title{display:grid;gap:6px;text-align:center}
.forma-muscle-hero-title span{font-size:11px;letter-spacing:.2em;color:#39e2c2;font-weight:850}
.forma-muscle-hero-title strong{font-size:clamp(16px,4vw,22px);font-weight:850}
.forma-body-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:440px;margin:10px auto 4px;align-items:start}
.forma-body-view{display:flex;flex-direction:column;align-items:center;gap:0;min-width:0}
.forma-body-view .forma-figure{display:block;width:100%;height:clamp(160px,28vw,245px);max-width:164px}
.forma-body-view span{font-size:10px;font-weight:850;letter-spacing:.17em;color:#cad8df;margin-top:4px}
.forma-visual-key{display:flex;align-items:center;justify-content:center;gap:7px;font-size:12px;color:#e6efdc;text-align:center;line-height:1.4;margin-top:12px}
.forma-visual-key i{width:11px;height:11px;display:inline-block;background:#39e2c2;border-radius:2px;flex:none}
.forma-visual-caution{font-size:11px;line-height:1.6;color:#c3d1da;text-align:center;max-width:430px;margin:12px auto 0}
.exercise-focused .journal-heading h3{font-size:clamp(21px,4vw,30px);line-height:1.2}
@media(max-width:680px){.journal-heading .muscle-tile{width:58px;min-width:58px;height:77px}.forma-muscle-hero{padding:14px 10px}.forma-body-pair{gap:4px}.forma-body-view .forma-figure{height:205px;max-width:115px}.library-art,.library-art .forma-mini-art{width:62px;height:93px}.library-art{flex-basis:62px}.forma-visual-caution{font-size:11px}}


/* v0.6.1 · Anatomía visual: figuras anatómicas originales generadas para FORMA.
   Los trazos en verde son orientativos, no delimitaciones anatómicas de precisión. */
.forma-mini-art{background:radial-gradient(ellipse at center,#33414b,#192630);border:1px solid #425562}
.forma-figure{display:block;position:relative;aspect-ratio:582/1199;width:100%;height:auto;min-width:0;flex:none;isolation:isolate}
.forma-figure img{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:contain}
.forma-mini-art .forma-figure{width:auto;height:100%;max-width:100%;max-height:none}
.journal-heading .muscle-tile,.exercise-guide-body .muscle-tile{overflow:hidden}
.forma-muscle-hero{padding:15px;background:radial-gradient(ellipse at 50% 26%,#263640,#101b23 80%);border:1px solid #50606c}
.forma-muscle-hero-title{gap:4px}
.forma-body-pair{max-width:505px;gap:12px;margin:12px auto 3px;align-items:end}
.forma-body-view{gap:6px;justify-content:end}
.forma-body-view .forma-figure{width:auto;height:clamp(210px,28vw,325px);max-width:100%;max-height:none}
.forma-body-view span{font-size:10px;letter-spacing:.19em}
.forma-visual-key{font-size:11px;margin-top:11px}
.forma-visual-caution{font-size:11px;margin-top:8px;line-height:1.4}
.exercise-focused .focus-art{margin:12px 0 14px}
.library-art,.library-art .forma-mini-art{height:105px}
@media(max-width:680px){
  .forma-body-pair{gap:7px;max-width:100%;margin:10px auto 3px}
  .forma-body-view .forma-figure{height:clamp(190px,66vw,292px);width:auto;max-width:100%}
  .forma-muscle-hero{padding:14px 8px}
  .forma-muscle-hero-title strong{font-size:17px}
  .forma-visual-key{font-size:10px}
  .forma-visual-caution{font-size:10px}
  .library-art,.library-art .forma-mini-art{width:62px;height:92px}
}

/* v0.6.4: UNA imagen prerenderizada por figura, sin overlays CSS/DOM. */
.forma-figure{overflow:hidden}
.forma-figure .forma-anatomy{position:static;inset:auto;display:block;width:100%;height:100%;object-fit:contain;pointer-events:none;user-select:none}
.forma-figure-back{aspect-ratio:583/1199}

/* FORMA v0.7.0 · Sesión en foco: controles grandes, un ejercicio y atlas opcional. */
.training-focus-shell{max-width:1050px;margin:0 auto 24px;color:#eff6fb;min-width:0}
.focus-top{display:flex;gap:12px;align-items:center;justify-content:space-between;margin:0 0 17px;flex-wrap:wrap}
.focus-top>.btn{min-height:46px}.focus-date{color:#bfccd6;font-size:13px}.focus-total{font-size:13px;font-weight:800;color:#39e2c2}
.focus-stepper{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin-bottom:18px}
.focus-step{min-width:0;border:1px solid #495966;border-radius:9px;background:#24343e;color:#dce9f1;min-height:58px;display:grid;place-items:center;gap:0;padding:5px}
.focus-step>span{font-weight:900;font-size:18px}.focus-step>small{font-size:11px;color:#d1dce4}.focus-step.current{border:2px solid #39e2c2;background:#334529;color:#ecffcf}.focus-step.skipped{opacity:.64}
.focus-main{display:grid;grid-template-columns:minmax(0,1fr) minmax(200px,.30fr);gap:16px;align-items:start}
.focus-primary,.focus-side{background:#1c2a33;border:1px solid #405562;border-radius:13px;padding:22px;min-width:0}
.focus-primary{border-top:3px solid #39e2c2}.focus-eyebrow,.focus-side-title{font-size:11px;font-weight:850;color:#39e2c2;letter-spacing:.13em;margin:0 0 13px}
.focus-heading{display:flex;align-items:center;gap:15px}.focus-heading h1{font-size:clamp(22px,3.5vw,34px);line-height:1.18;letter-spacing:-.04em;margin:0 0 8px;color:#f7fbfd}.focus-heading p{font-size:13px;color:#c3d0da;line-height:1.5;margin:0}
.focus-thumb{width:67px;height:98px;flex:none;border:1px solid #526673;border-radius:8px;background:#263843;display:grid;place-items:center;overflow:hidden}.focus-thumb .forma-mini-art{height:100%;width:100%}
.focus-progress-bar{height:7px;border-radius:10px;background:#40515b;overflow:hidden;margin:17px 0 12px}.focus-progress-bar>div{height:100%;background:#39e2c2;border-radius:10px;transition:width .18s}
.focus-preview-note{border:1px solid #667b58;background:#283729;color:#e6f0d9;border-radius:8px;padding:12px;font-size:13px;line-height:1.55}
.focus-no-prior{font-size:12px;color:#beced8;margin:13px 0}
.focus-previous{border:1px solid #526673;border-radius:8px;padding:12px;margin:12px 0;color:#d4e1e9}
.focus-previous summary{cursor:pointer;font-weight:750;font-size:12px;color:#39e2c2}
.focus-prior-sets{display:flex;flex-wrap:wrap;gap:7px;margin:10px 0}.focus-prior-sets span{background:#324651;border-radius:5px;padding:6px;font-size:12px}.focus-previous small{font-size:11px;line-height:1.5}
.focus-sets-head{display:flex;justify-content:space-between;align-items:center;margin:20px 0 12px}.focus-sets-head h2{font-size:12px;letter-spacing:.14em;color:#39e2c2;margin:0}.focus-sets-head span{font-size:12px;font-weight:800;color:#eaf2f6}
.focus-set{padding:15px;background:#253741;border:1px solid #445b66;border-radius:10px;margin-bottom:10px;display:grid;gap:12px}
.focus-set.is-next{border-color:#39e2c2}.focus-set.is-done{background:#273d33;border-color:#719b54}
.focus-set-label{display:flex;justify-content:space-between;align-items:center}.focus-set-label span{font-size:15px;font-weight:800}.focus-set-label strong{font-size:11px;color:#d3e0e9}
.focus-input-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.focus-input-grid label{display:grid;gap:5px;font-size:12px;color:#c9d7de}.focus-input-grid:has(label:only-child){grid-template-columns:1fr}
.focus-input-grid .set-field{width:100%;min-width:0;min-height:49px;font-size:18px;background:#1a2931;color:#f3f8fc;border:1px solid #6c7e87;border-radius:7px;padding:8px 12px}
.focus-input-grid .set-field:disabled{opacity:.72;color:#d0d9df}
.focus-log{min-height:50px;width:100%;border:0;border-radius:8px;background:#39e2c2;color:#142024;font-weight:900;font-size:14px;white-space:normal;padding:10px}
.focus-log.logged{background:#385844;color:#eefff1;border:1px solid #82bd8c}.focus-log:disabled{background:#42525a;color:#d7e2e7;cursor:not-allowed}
.focus-actions{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0 18px}.focus-actions .btn{min-height:44px;white-space:normal}
.focus-extra{border:1px solid #566a74;border-radius:10px;padding:12px;color:#eef5f8}.focus-extra>summary{color:#39e2c2;font-size:13px;font-weight:850;cursor:pointer}.focus-extra-inner{margin-top:16px}.focus-extra .forma-muscle-hero{margin-bottom:12px}
.focus-side>strong{display:block;color:#f3f8fb;font-size:20px;margin:7px 0}.focus-side>p{font-size:13px;color:#bdcbd5;line-height:1.5}.focus-side-stat{background:#2b3d46;border-radius:8px;padding:12px;font-weight:800;color:#39e2c2;font-size:13px}
.focus-bottom{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin:17px 0}.focus-bottom .btn{min-height:48px;white-space:normal}.focus-edit-back{display:flex;justify-content:flex-end;margin:8px 0}.focus-disclaimer{line-height:1.6}
@media(max-width:860px){.focus-main{grid-template-columns:1fr}.focus-side{display:none}}
@media(max-width:680px){#view:has(.training-focus-shell){padding-top:13px}.focus-primary{padding:15px}.focus-top{display:grid;grid-template-columns:1fr auto}.focus-top>.btn{grid-row:1;grid-column:1/-1;justify-self:start}.focus-date,.focus-total{font-size:11px}.focus-stepper{gap:5px}.focus-step{min-height:52px}.focus-heading{gap:11px}.focus-thumb{width:54px;height:78px}.focus-heading h1{font-size:22px}.focus-input-grid .set-field{font-size:17px}.focus-bottom{position:sticky;bottom:85px;background:#131e26;border:1px solid #42525b;border-radius:10px;padding:8px;z-index:6;display:grid;grid-template-columns:1fr 1fr}.focus-bottom .btn{width:100%;font-size:12px;padding:11px 8px}.focus-bottom .btn-primary{grid-column:1/-1}.focus-disclaimer{padding-bottom:12px}}
@media(max-width:680px){.focus-bottom .btn-primary:disabled{display:none}}

/* FORMA v0.7.1: series registradas se compactan sin cambiar los datos */
.focus-set-compact{display:flex;align-items:center;gap:10px;padding:9px 12px;min-height:49px;margin-bottom:7px;background:#253d32;border-color:#608a55}
.focus-compact-label{font-weight:800;color:#d6ff94;white-space:nowrap;font-size:13px}
.focus-compact-value{margin-left:auto;font-weight:750;color:#f3fbf4;font-size:13px;text-align:right}
.focus-compact-edit{min-height:34px;padding:5px 9px;background:#314b3e;color:#f1fff4;border:1px solid #8db78f;border-radius:6px;font-size:12px;font-weight:800;cursor:pointer}
.focus-set.is-later{padding:10px 12px;gap:8px;background:#202f38}

.focus-set.is-later .focus-set-label{cursor:pointer}
.focus-done-note{padding:12px;border-radius:8px;color:#d6ff94;background:#283f31;font-weight:800}
.focus-load-note{font-size:12px;line-height:1.55;color:#c7d5dd}
@media(max-width:430px){.focus-set-compact{gap:6px;padding:8px}.focus-compact-label,.focus-compact-value{font-size:12px}.focus-compact-edit{font-size:11px;padding:5px}}

/* v0.7.2 · contexto de carga, visible y legible en móvil */
.load-basis{display:grid;gap:8px;padding:14px;background:#243640;border:1px solid #556b78;border-radius:10px;margin:14px 0}
.load-basis label{font-size:11px;letter-spacing:.12em;font-weight:900;color:#39e2c2}
.load-basis .field{width:100%;min-height:47px;font-size:14px;background:#15252e;border:1px solid #83939d;color:#f4f9fc;padding:9px 11px}
.load-basis .field:focus{outline:2px solid #39e2c2;outline-offset:2px}
.load-basis small,.basis-history{font-size:12px;color:#d0dfe9;line-height:1.45}
.basis-history{display:block;margin-top:8px}
@media(max-width:430px){.load-basis{padding:11px}.load-basis .field{font-size:13px}}

/* v0.7.3 — separación visible y accesible de los modos. */
.mode-switch{border:1px solid #39e2c2;background:#2a3832;color:#39e2c2;padding:10px 12px;border-radius:9px;font-size:10px;font-weight:850;letter-spacing:.4px;line-height:1.3;max-width:210px;cursor:pointer}
.mode-switch.is-personal{border-color:#7db7cc;color:#d5f4ff;background:#263942}
.mode-notice{display:flex;gap:9px;justify-content:space-between;align-items:center;flex-wrap:wrap;background:#2a3726;border:1px solid #39e2c2;color:#deffae;border-radius:11px;padding:11px 15px;margin:0 0 18px;font-size:12px;line-height:1.4}
.mode-notice.personal{background:#24353e;border-color:#52899e;color:#d0efff}
.mode-notice span{color:#d0d8d8}
.mode-info{margin:0 0 20px}.mode-info h2{margin:0 0 8px}.mode-info p{color:var(--muted);line-height:1.5;font-size:13px}
@media(max-width:760px){.topbar-right{gap:8px}.mode-switch{font-size:9px;max-width:140px;padding:9px 7px}.today-pill{display:none}.mode-notice{font-size:11px}.mode-notice span{max-width:100%}}

/* FORMA v0.8.0 · Plan personal por ciclos, sin modificar la identidad visual existente. */
.plan-config { margin: 18px 0 22px; border: 1px solid #526947; background: linear-gradient(145deg,#20352d,#1d2b34 65%); }
.plan-config > h2 { margin: 8px 0 12px; font-size: clamp(1.25rem,2.2vw,1.65rem); }
.plan-config > p { line-height: 1.55; max-width: 74ch; }
.plan-config > .btn { margin: 16px 0 12px; width: fit-content; max-width: 100%; }
:is(.plan-template-list, .plan-preview-list) { display: grid; gap: 7px; margin: 16px 0 4px; }
:is(.plan-template-list, .plan-preview-list) > div { display: grid; grid-template-columns: minmax(76px, 105px) minmax(0,1fr); gap: 12px; align-items: center; padding: 11px 13px; border: 1px solid #465b65; border-radius: 9px; background: #233541; }
:is(.plan-template-list, .plan-preview-list) strong { color: #39e2c2; font-size: .86rem; }
:is(.plan-template-list, .plan-preview-list) span { color: #f2f7fb; font-size: .91rem; line-height: 1.4; overflow-wrap: anywhere; }
.plan-alert { background: #423a24; border-left: 3px solid #f6ca6e; color: #ffe9b0; padding: 10px 12px; border-radius: 6px; }
.plan-workout-notice { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-bottom: 16px; border: 1px solid #4d684a; background: #22352f; border-radius: 10px; padding: 12px 15px; }
.plan-workout-notice strong { color: #39e2c2; font-size: .77rem; letter-spacing: .11em; }
.plan-workout-notice span { flex: 1 1 180px; color: #f3f8fa; line-height: 1.4; font-size: .9rem; }
.plan-workout-notice .btn { flex: 0 0 auto; }
@media(max-width:550px){
 .plan-config { padding: 19px 15px; }
 .plan-config > .btn { width: 100%; white-space: normal; line-height: 1.35; }
 :is(.plan-template-list, .plan-preview-list) > div { grid-template-columns: minmax(63px,85px) minmax(0,1fr); gap: 8px; padding: 10px; }
 .plan-workout-notice { align-items: flex-start; flex-direction: column; }
 .plan-workout-notice .btn { width: 100%; }
}

/* v0.8.1: planificación resumida; se mantienen los formularios existentes al abrir la sesión. */
.plan-overview{margin:18px 0;padding:20px;background:#182630;border:1px solid #40535e;border-radius:16px}.plan-overview-top .kicker{color:#39e2c2}.plan-overview-top h2{margin:5px 0 8px;font-size:clamp(1.25rem,3vw,1.8rem)}.plan-overview-top p{color:#bfccd2;margin:0}.plan-overview-stats{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.plan-overview-stats span{padding:6px 10px;background:#293c45;border-radius:7px;color:#d4e0e5}.plan-overview-list{display:grid;gap:8px;margin:12px 0 18px}.plan-overview-exercise{display:flex;gap:12px;align-items:center;padding:11px;background:#25353f;border:1px solid #41515a;border-radius:10px}.plan-overview-number{flex:0 0 30px;text-align:center;color:#39e2c2;font-weight:900;font-size:1.15rem}.plan-overview-exercise strong,.plan-overview-exercise small{display:block}.plan-overview-exercise small{color:#bfccd2;margin-top:3px}.plan-overview-open{width:100%;min-height:48px}.day-tile[aria-pressed="true"]{outline-offset:3px}

/* v0.8.2 · Selector accesible de días de entrenamiento */
.weekday-picker{min-width:0;border:1px solid #48616b;border-radius:13px;padding:15px;margin:2px 0 16px;color:#f2f7fa}
.weekday-picker legend{font-weight:800;color:#39e2c2;letter-spacing:.04em;padding:0 7px}
.weekday-picker p{font-size:.9rem;margin:5px 0 12px;color:#c7d3dd}
.weekday-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.weekday-option{display:flex;align-items:center;justify-content:center;position:relative;min-height:48px;cursor:pointer;border:1px solid #536674;border-radius:9px;background:#263741;font-size:.85rem;text-align:center;padding:8px 4px;font-weight:700}
.weekday-option:has(input:checked){border-color:#39e2c2;background:#31442b;color:#d9ffa1}
.weekday-option:has(input:focus-visible){outline:2px solid #39e2c2;outline-offset:3px}
.weekday-option input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}
.weekday-picker small{display:block;min-height:1.4em;color:#c5d1d8;margin-top:10px}
@media(max-width:520px){.weekday-options{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* FORMA v0.9.1 — Hotfix responsive: campos de perfil y resumen del plan.
   No modifica datos, preferencias, sesiones ni lógica de planificación. */
.form-grid > .form-group {
  min-width: 0;
  align-content: start; /* No estirar un selector por el texto de ayuda en la otra columna. */
  grid-auto-rows: max-content;
}
.form-grid > .form-group > label {line-height: 1.45;}
.form-grid > .form-group > .field {
  display: block;
  width: 100%;
  height: 50px;
  min-height: 50px;
  max-height: 50px;
  padding: 10px 32px 10px 12px;
  font-size: 14px;
  line-height: 1.4;
}
.form-grid > .form-group > select.field {
  white-space: nowrap;
  text-overflow: ellipsis;
}
.form-grid > .form-group > small {
  display: block;
  font-size: 12px;
  line-height: 1.45;
  color: #c8d6df;
}
/* No usar flex-basis vertical de 180px en la tarjeta apilada. */
@media (max-width: 760px) {
  .form-grid {grid-template-columns: minmax(0,1fr);gap:0 0;}
  .form-grid > .form-group {margin-bottom:17px;}
  .form-grid > .form-group > .field {font-size:16px;}
  .plan-workout-notice {min-height:0;}
  .plan-workout-notice > span {flex:0 1 auto;align-self:stretch;min-height:0;width:100%;}
  .plan-workout-notice > strong {flex:0 0 auto;}
}
/* FORMA v0.9.2 — sustitución controlada de ejercicios */
.movement-control{margin:13px 0;padding:12px;background:#1d3039;border:1px solid #56705f;border-radius:7px;display:grid;gap:7px}
.movement-control label{font-size:11px;font-weight:850;letter-spacing:.11em;color:#39e2c2}
.movement-control .movement-field{width:100%;max-width:100%;min-width:0;min-height:48px;font-size:14px}
.movement-control small{color:#cbd8dd;font-size:11px;line-height:1.5}
@media(max-width:760px){.movement-control .movement-field{font-size:16px}}


/* FORMA v0.10.0 — Nutrición semanal */
.nutrition-week-panel{margin-bottom:18px}.nutrition-week-head{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:16px}.nutrition-week-head h2{font-size:20px;margin:0}.nutrition-week-actions{display:flex;gap:8px;flex-wrap:wrap}.nutrition-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.nutrition-day{border:1px solid #455a66;background:#202e39;color:#d8e3e9;border-radius:7px;padding:11px 5px;min-height:76px;display:grid;place-items:center;gap:3px}.nutrition-day strong{font-size:11px}.nutrition-day span{font-size:9px;color:#9fb0bb}.nutrition-day small{font-size:10px;color:#39e2c2}.nutrition-day.is-selected{outline:2px solid #39e2c2;outline-offset:1px;background:#354529}.nutrition-day.is-today:not(.is-selected){border-color:#39e2c2}.nutrition-day-summary{display:flex;justify-content:space-between;align-items:end;gap:16px;margin:22px 0 14px}.nutrition-day-summary h2{font-size:25px;margin:0 0 6px}.nutrition-day-summary p{margin:0;max-width:720px;color:#aebeca;font-size:12px;line-height:1.6}.nutrition-progress{display:grid;justify-items:end;flex:none}.nutrition-progress strong{font-size:34px;line-height:1;color:#39e2c2}.nutrition-progress strong small{font-size:14px;color:#aebeca}.nutrition-progress span{font-size:10px;color:#9fb0bb;margin-top:5px}.meal-card-premium{min-height:330px}.meal-card-top{display:flex;justify-content:space-between;gap:10px;align-items:center}.meal-option-count{font-size:9px;color:#9fb0bb;white-space:nowrap}.meal-ingredients{margin-top:5px;border-top:1px solid #3c4f5b;padding-top:10px}.meal-ingredients summary{cursor:pointer;color:#39e2c2;font-size:10px;font-weight:800}.ingredient-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.ingredient-chips span{font-size:9px;border:1px solid #526572;border-radius:999px;padding:5px 8px;color:#dbe5eb}.shopping-panel{margin-top:18px}.shopping-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:15px}.shopping-item{border:1px solid #3f5260;background:#202e39;border-radius:6px;padding:10px 12px;display:grid;gap:4px}.shopping-item span{font-size:11px;font-weight:750;color:#eef5f8}.shopping-item small{font-size:9px;color:#99abb7}
@media(max-width:760px){.nutrition-week-head{align-items:start;flex-direction:column}.nutrition-week-actions{width:100%;display:grid;grid-template-columns:repeat(3,1fr)}.nutrition-week-actions .btn{padding:9px 5px;font-size:9px}.nutrition-days{gap:4px}.nutrition-day{padding:8px 1px;min-height:67px}.nutrition-day strong{font-size:9px}.nutrition-day span{font-size:8px}.nutrition-day-summary{align-items:start}.nutrition-day-summary h2{font-size:22px}.nutrition-day-summary p{font-size:11px}.nutrition-progress strong{font-size:29px}.shopping-grid{grid-template-columns:1fr 1fr}.meal-card-premium{min-height:0}}
@media(max-width:390px){.nutrition-day span{display:none}.nutrition-day{min-height:58px}.shopping-item{padding:9px 8px}.shopping-item span{font-size:10px}}

/* v0.10.1 — Ingredientes medidos y raciones; responsive sin tarjetas de gran altura. */
.servings-control{display:grid;grid-template-columns:minmax(0,1fr) minmax(130px,165px);gap:12px;align-items:center;margin-top:10px;border:1px solid #425767;background:#1b2a35;padding:11px 12px;border-radius:8px}
.servings-control label{color:#dce8ef;font-size:12px;font-weight:750}
.servings-control .field{width:100%;min-width:0;height:43px;min-height:43px;padding:6px 10px;color:#eff7fa}
.measured-ingredients{list-style:none;padding:0;margin:10px 0 6px;display:grid;gap:6px}
.measured-ingredients li{display:flex;align-items:baseline;justify-content:space-between;gap:14px;border-bottom:1px solid #3c4e58;padding:6px 0;font-size:11px;color:#d9e4eb}
.measured-ingredients li strong{white-space:nowrap;color:#39e2c2;font-size:12px;font-variant-numeric:tabular-nums}
.shopping-item{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:7px;min-width:0}
.shopping-item strong{color:#39e2c2;white-space:nowrap;font-size:12px;font-variant-numeric:tabular-nums}
@media(max-width:460px){.servings-control{grid-template-columns:1fr;gap:6px}.shopping-grid{grid-template-columns:1fr}.meal-card-premium{min-width:0}}

.recipe-method{margin-top:12px;border-top:1px solid #3c4e58;padding-top:10px;color:#d5e3eb;font-size:11px;line-height:1.55}.recipe-method strong{color:#39e2c2}.recipe-method ol{margin:7px 0 0;padding-left:21px}.recipe-method li{margin-bottom:5px}

/* v0.11.0 — estimación energética solo en memoria; sin tocar las tarjetas validadas. */
.energy-panel{margin-bottom:18px;border-left:3px solid #39e2c2}
.energy-heading{display:flex;align-items:start;justify-content:space-between;gap:16px}
.energy-heading h2{font-size:23px;line-height:1.2;margin:7px 0 9px;color:#f0f6f9}
.energy-heading p{color:#aec0cc;font-size:12px;line-height:1.5;margin:0 0 14px}
.energy-privacy{flex:none;color:#d7ff88;background:#32462b;padding:7px 10px;border-radius:6px;font-size:10px;font-weight:800}
.energy-details>summary{cursor:pointer;color:#d8ff87;font-size:13px;font-weight:800;padding:13px 0;border-top:1px solid #40535e;list-style:revert}
.energy-form{border:1px solid #49606b;background:#1d2c37;border-radius:8px;padding:17px;margin:12px 0}
.energy-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.energy-fields label{min-width:0;display:grid;gap:8px;color:#e0eaf0;font-size:12px;font-weight:700}
.energy-fields .field{min-width:0;color:#f3f8fa;font-size:14px}
.energy-wide{grid-column:1/-1}
.energy-help,.energy-sources{font-size:11px;line-height:1.65;color:#b2c4ce;margin:14px 0}
.energy-sources a{color:#d8ff89;text-decoration:underline;text-underline-offset:3px}
.energy-consent{display:flex;align-items:flex-start;gap:11px;color:#e0eaf0;font-size:11px;line-height:1.6;margin:17px 0}
.energy-consent input{margin-top:2px;min-width:21px;min-height:21px;accent-color:#39e2c2}
.energy-actions{display:flex;gap:9px;flex-wrap:wrap}
.energy-actions .btn{min-height:45px;font-size:12px}
.energy-result{background:#30412e;border:1px solid #39e2c2;border-radius:8px;padding:17px;margin-top:16px;color:#f2f8ef}
.energy-result[hidden]{display:none}
.energy-result strong{font-size:13px}
.energy-number{font-weight:850;color:#d8ff87;font-size:clamp(23px,4vw,31px);line-height:1.3;margin:8px 0;font-variant-numeric:tabular-nums}
.energy-result p{font-size:12px;line-height:1.6;margin:8px 0}
.energy-result .energy-error{color:#ffdbb1}
.energy-bridge{margin-top:15px;padding:14px;border:1px solid #39e2c2;border-radius:10px;background:linear-gradient(135deg,#21362d,#172c2f)}
.energy-bridge-head{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:10px}
.energy-bridge-head span{font-size:9px;font-weight:850;letter-spacing:.11em;color:#39e2c2}
.energy-bridge-head strong{font-size:clamp(22px,3.4vw,31px);color:#d7ff88;font-variant-numeric:tabular-nums;white-space:nowrap}
.energy-bridge-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0}
.energy-bridge-grid>div{background:#17272c;border:1px solid #3f565b;border-radius:8px;padding:10px;min-width:0}
.energy-bridge-grid span{display:block;color:#aebfc6;font-size:10px;margin-bottom:4px}
.energy-bridge-grid strong{display:block;color:#eff7f4;font-size:13px;overflow-wrap:anywhere}
.energy-bridge p{font-size:11px!important;color:#c4d1d3!important;line-height:1.55!important;margin:10px 0 12px!important}
.energy-bridge .btn{width:100%}
@media(max-width:560px){.energy-bridge-head{align-items:flex-start;flex-direction:column;gap:3px}.energy-bridge-grid{grid-template-columns:1fr}.energy-bridge-head strong{white-space:normal}}
@media(max-width:600px){.energy-heading{flex-direction:column;gap:4px}.energy-heading h2{font-size:22px}.energy-fields{grid-template-columns:1fr}.energy-form{padding:13px}.energy-actions{display:grid;grid-template-columns:1fr}.energy-actions .btn{width:100%}}

/* v0.11.1 — Ayudas de lectura para el estimador, sin alterar su comportamiento. */
.energy-fields .energy-field-help{font-size:12px;line-height:1.55;font-weight:400;margin:-8px 0 1px;color:#bbcbd5;max-width:66ch}
.energy-method{border:1px solid #485d68;background:#172630;border-radius:9px;margin-top:17px;padding:0 13px}
.energy-method>summary{padding:13px 0;cursor:pointer;color:#d9ff89;font-size:12px;font-weight:780;line-height:1.45}
.energy-method-body{border-top:1px solid #425662;padding:12px 0 15px;color:#ccd9e1;font-size:12px;line-height:1.6}
.energy-method-body strong{display:block;color:#eef6f8;margin-top:9px}
.energy-method-body p{margin:7px 0}
.energy-fields select.field{width:100%;height:50px;min-height:50px;text-overflow:ellipsis}
@media(max-width:600px){.energy-fields .energy-field-help{font-size:12px;margin:-10px 0 3px}.energy-fields select.field{font-size:14px}.energy-method{padding:0 12px}}
/* v0.11.2: ficha de nutrición trazable; solo en la receta piloto. */
.verified-facts{margin:14px 0;padding:15px;border:1px solid #39e2c2;border-radius:14px;background:#182b25;color:#f2f6f7}
.verified-facts-label{display:block;color:#39e2c2;font-size:.72rem;font-weight:850;letter-spacing:.085em;margin-bottom:12px}
.verified-facts-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.verified-facts-grid>span{background:#293a38;border-radius:9px;min-width:0;padding:9px 5px;display:flex;flex-direction:column;align-items:center;gap:2px;text-align:center}
.verified-facts-grid strong{font-size:1.22rem;line-height:1.15;font-variant-numeric:tabular-nums}
.verified-facts-grid small{color:#d0dddf;font-size:.69rem;line-height:1.3}
.verified-facts p{font-size:.8rem;color:#c7d2d6;line-height:1.5;margin:10px 0 0}
.verified-facts details{margin-top:8px}.verified-facts details summary{font-size:.8rem;color:#39e2c2;cursor:pointer}
.verified-facts a{color:#39e2c2;text-decoration:underline;overflow-wrap:anywhere}
@media(max-width:380px){.verified-facts-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* FORMA v0.12.1 — compra agrupada y base de ingredientes */
.shopping-categories{display:grid;gap:16px}.shopping-category{display:grid;gap:10px}.shopping-category h3{margin:0;color:var(--lime);font-size:.82rem;letter-spacing:.08em;text-transform:uppercase}.ingredient-foundation{display:flex;gap:8px;flex-direction:column;margin:10px 0 14px;padding:12px 14px;border:1px solid rgba(57,226,194,.25);background:rgba(57,226,194,.06);border-radius:14px}.ingredient-foundation strong{color:var(--text)}.ingredient-foundation span{color:var(--muted);font-size:.86rem;line-height:1.45}

/* FORMA v0.12.5 — selector directo de recetas; accesible y apto para móvil. */
.meal-picker{border:1px solid #506875;background:#15222b;border-radius:8px;margin:10px 0 4px;min-width:0}
.meal-picker>summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:13px 12px;color:#39e2c2;font-size:12px;font-weight:800;list-style:none;min-height:46px}
.meal-picker>summary::-webkit-details-marker{display:none}
.meal-picker>summary:before{content:'▸';margin-right:4px;flex:0 0 auto}
.meal-picker[open]>summary:before{content:'▾'}
.meal-picker>summary span{font-size:10px;color:#cfdae1;font-weight:600;white-space:nowrap;margin-left:auto}
.meal-choice-list{padding:4px 9px 11px;display:grid;gap:8px}
.meal-choice{display:flex;align-items:flex-start;text-align:left;gap:9px;width:100%;min-width:0;padding:11px 9px;border-radius:7px;background:#253643;border:1px solid #526777;color:#edf5f9;cursor:pointer;font:inherit}
.meal-choice:hover:not(:disabled),.meal-choice:focus-visible{border-color:#39e2c2;background:#30432f}
.meal-choice:focus-visible{outline:2px solid #39e2c2;outline-offset:2px}
.meal-choice.is-current,.meal-choice:disabled{background:#293b2e;border-color:#39e2c2;opacity:1;cursor:default}
.meal-choice-number{display:grid;place-content:center;border-radius:5px;background:#344754;color:#39e2c2;font-weight:800;font-size:12px;min-width:26px;height:26px;flex:none}
.meal-choice-copy{min-width:0;flex:1;display:grid;gap:4px}
.meal-choice-copy strong{font-size:12px;line-height:1.3;overflow-wrap:anywhere}
.meal-choice-copy small{font-size:10px;color:#c3d1d9;line-height:1.4}
.meal-choice-copy em{font-size:10px;font-style:normal;color:#39e2c2;line-height:1.4}
.meal-choice-state{font-size:10px;white-space:nowrap;color:#39e2c2;font-weight:800;margin-top:5px}
.meal-picker>.muted-small{padding:0 12px 12px;margin:0}
@media(max-width:460px){.meal-picker>summary{font-size:11px}.meal-choice{flex-wrap:wrap}.meal-choice-state{margin-left:35px;margin-top:0}}

/* FORMA v0.13.0 — estado y resumen diario; no mostrar macros parciales. */
.daily-nutrition{margin:16px 0 21px;border:1px solid #4b626b;background:linear-gradient(125deg,#20313c,#19252e);border-radius:18px;padding:22px;min-width:0}
.daily-nutrition-head{display:flex;justify-content:space-between;align-items:start;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.daily-nutrition-head h2{font-size:24px;line-height:1.2;margin:5px 0 3px;color:#f4f8fb}
.daily-nutrition-head p{color:#b9c8d0;font-size:12px;margin:0}
.daily-coverage{padding:7px 10px;border-radius:9px;background:#364049;color:#d6e2e8;border:1px solid #5b7079;font-weight:800;font-size:12px;white-space:nowrap}
.daily-coverage.is-complete{background:#33482b;color:#39e2c2;border-color:#39e2c2}
.daily-nutrition-grid,.daily-person-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:14px 0}
.daily-nutrition-grid div,.daily-person-grid div{background:#293d43;border:1px solid #50616b;border-radius:12px;padding:13px 8px;min-width:0;display:grid;gap:5px;text-align:center}
.daily-nutrition-grid strong,.daily-person-grid strong{font-size:23px;line-height:1.15;color:#39e2c2;font-variant-numeric:tabular-nums}
.daily-nutrition-grid span,.daily-person-grid span{font-size:11px;color:#e3edf0}
.daily-nutrition-note,.daily-nutrition-disclaimer{font-size:12px;line-height:1.55;color:#cbd8dd;margin:12px 0 0}
.daily-nutrition-disclaimer{border-top:1px solid #455b64;padding-top:12px;margin-top:16px}
.daily-nutrition-pending{border:1px solid #64715a;background:#2b342c;border-radius:10px;padding:12px 14px;color:#eaf3e7;font-weight:750;line-height:1.5;font-size:13px;margin:0}
.daily-nutrition-missing{display:grid;gap:7px;padding:0;margin:12px 0;list-style:none}
.daily-nutrition-missing li{border:1px solid #4c606b;background:#263641;border-radius:9px;padding:10px 12px;display:flex;gap:5px;flex-direction:column;color:#fff;font-size:12px;overflow-wrap:anywhere}
.daily-nutrition-missing li span{color:#aebfc9;line-height:1.45}
@media(max-width:560px){.daily-nutrition{padding:16px}.daily-nutrition-head h2{font-size:21px}.daily-nutrition-grid,.daily-person-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.daily-nutrition-grid strong,.daily-person-grid strong{font-size:21px}}

/* v0.13.1: diferenciar de forma inequívoca ración individual y lote preparado. */
.daily-person-summary{border:1px solid #39e2c2;background:#243a34;border-radius:14px;padding:13px;margin:12px 0 16px}
.daily-person-summary h3,.daily-batch-heading{font-size:16px;color:#f7fff3;margin:8px 0 7px;line-height:1.35}
.daily-summary-label{font-size:11px;font-weight:900;letter-spacing:.1em;color:#39e2c2}
.daily-person-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:12px 0}
.daily-person-grid div{background:#293d43;border:1px solid #50616b;border-radius:12px;padding:13px 8px;min-width:0;display:grid;gap:5px;text-align:center}
.daily-person-grid strong{font-size:23px;line-height:1.15;color:#39e2c2;font-variant-numeric:tabular-nums}
.daily-person-grid span{font-size:11px;color:#e3edf0}
@media(max-width:560px){.daily-person-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.daily-person-grid strong{font-size:21px}}

/* v0.13.3: repetir recetas en otros días sin copiar el registro de consumo. */
.meal-repeat{margin:11px 0 5px;border:1px solid #4f6972;background:#1a2b34;border-radius:10px;min-width:0}
.meal-repeat>summary{list-style:none;cursor:pointer;min-height:46px;padding:13px;color:#39e2c2;font-size:12px;font-weight:800}
.meal-repeat>summary::-webkit-details-marker{display:none}
.meal-repeat>summary:before{content:'▸ ';color:#39e2c2}
.meal-repeat[open]>summary:before{content:'▾ '}
.meal-repeat-body{padding:0 12px 14px;display:grid;gap:11px}
.meal-repeat-body>p,.meal-repeat-body>small{font-size:12px;line-height:1.5;color:#c9d8df;margin:0}
.meal-repeat-days{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.meal-repeat-day{display:flex;align-items:center;gap:9px;border:1px solid #50636c;background:#263844;border-radius:8px;padding:10px;min-width:0;color:#f3f8fa;min-height:53px;cursor:pointer}
.meal-repeat-day:has(input:checked){background:#30442b;border-color:#39e2c2}
.meal-repeat-day input{width:21px;height:21px;flex:none;accent-color:#39e2c2}
.meal-repeat-day span{display:grid;gap:3px;min-width:0}.meal-repeat-day strong{font-size:12px}.meal-repeat-day small{color:#c2d0d8;font-size:10px;line-height:1.3}
.meal-repeat-day.is-locked{opacity:.62;cursor:not-allowed}
.meal-repeat-apply{width:100%;min-height:44px;white-space:normal}
@media(max-width:380px){.meal-repeat-days{grid-template-columns:1fr}}

/* v0.13.4 · Vista semanal: lectura rápida, sin sustituir la edición de cada día. */
.weekly-overview{margin:15px 0 20px;min-width:0}
.weekly-overview-head{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}
.weekly-overview-head h2{margin:6px 0;font-size:clamp(19px,3vw,25px);line-height:1.2}
.weekly-overview-head p,.weekly-overview-hint{color:#c2d0d8;font-size:13px;line-height:1.55;margin:7px 0}
.weekly-overview-head .btn{white-space:normal;min-height:43px}
.weekly-overview-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-top:15px}
.weekly-overview-day{min-width:0;border-radius:13px;border:1px solid #49616b;background:#1b2a34;padding:13px;display:grid;gap:12px}
.weekly-overview-day.is-current{border-color:#39e2c2;background:#24372f}
.weekly-overview-day-head{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.weekly-overview-day-head>div{display:grid;gap:5px;min-width:0;flex:1 1 180px}
.weekly-overview-day-head span{color:#e9f5fa;font-size:14px;font-weight:800}
.weekly-overview-day-head strong{color:#c5ef85;font-size:12px;line-height:1.4;font-weight:750}
.weekly-overview-day-head .btn{white-space:normal;font-size:12px;min-height:40px}
.weekly-overview-meals{display:grid;gap:7px;min-width:0}
.weekly-overview-meals>div{background:#293b46;border:1px solid #3c525e;border-radius:9px;padding:9px 11px;display:grid;gap:4px;min-width:0}
.weekly-overview-meals span{font-size:10px;letter-spacing:.04em;color:#ccf184;font-weight:800;text-transform:uppercase}
.weekly-overview-meals strong{font-size:13px;font-weight:750;color:#f5f7f9;line-height:1.35;overflow-wrap:anywhere}
.weekly-overview-meals small{font-size:11px;color:#c6d3dd;line-height:1.4}
.weekly-overview>.muted-small{margin-top:12px;line-height:1.55}
@media(max-width:840px){.weekly-overview-list{grid-template-columns:1fr}}
@media(max-width:440px){.weekly-overview-head>.btn,.weekly-overview-head .btn{width:100%}.weekly-overview-day-head>.btn{width:100%}.weekly-overview-day{padding:11px}}

/* v0.13.5: exportación accesible, sin reducir el ancho útil del móvil. */
.shopping-export-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:16px 0 12px}
.shopping-export-actions .btn{white-space:normal;min-height:46px}
.shopping-export-actions span{color:#c6d3dd;font-size:12px;line-height:1.55;flex:1 1 190px}
@media(max-width:480px){.shopping-export-actions .btn{width:100%}}

/* FORMA v0.13.6 · Descarga discreta del menú completo. */
.weekly-overview-export{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:15px 0 8px}
.weekly-overview-export span{flex:1 1 220px;font-size:.85rem;line-height:1.5;opacity:.8}

/* FORMA v0.14.0 · Progreso de solo lectura */
.exercise-trends{margin-top:22px}.exercise-trends-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:12px;margin-top:18px}.exercise-trend-card{padding:17px;border:1px solid var(--line,rgba(128,128,128,.25));border-radius:16px;display:flex;flex-direction:column;gap:8px;min-width:0}.exercise-trend-card>strong{overflow-wrap:anywhere}.exercise-trend-card small,.exercise-trend-card p{color:var(--muted,#8b919a);font-size:.82rem}.exercise-trend-card p{margin:0}.exercise-trend-value{font-size:1.7rem;font-weight:800}.exercise-trend-value span{font-size:.85rem}.exercise-trend-card details{margin-top:4px}.exercise-trend-card summary{cursor:pointer;font-weight:650}.exercise-trend-card ol{padding-left:20px;max-height:240px;overflow:auto}.exercise-trend-card li{margin:7px 0;font-size:.83rem}

/* v0.14.1: gráficos de evolución por ejercicio */
.exercise-graphs{width:100%;min-width:0}.exercise-chart{margin:14px 0;padding:12px;border-radius:12px;background:rgba(125,155,160,.07);min-width:0}.exercise-chart>strong{display:block;font-size:.85rem;margin-bottom:6px}.exercise-chart svg{width:100%;height:auto;display:block;max-height:170px;overflow:visible}.exercise-chart p{margin:4px 0 0}.exercise-graphs>p{margin:12px 0}

/* FORMA 0.14.2: resumen de actividad compacto y adaptable */
.weekly-activity-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}
.weekly-activity-card{min-width:0;padding:15px;border:1px solid var(--border,rgba(150,160,160,.24));border-radius:14px;background:rgba(127,127,127,.055)}
.weekly-activity-card strong{display:block;margin:9px 0;font-size:clamp(23px,3vw,32px);line-height:1.15}
.weekly-activity-card strong span{font-size:13px;font-weight:500}
.weekly-activity-card p{margin:4px 0;font-size:13px}
.weekly-activity-card small{overflow-wrap:anywhere}
@media(max-width:700px){.weekly-activity-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.weekly-activity-card{padding:12px}}
@media(max-width:350px){.weekly-activity-grid{grid-template-columns:1fr}}

/* v0.14.3: guía de primera visita, sin cambios al estado */
.welcome-roadmap{margin:16px 0;padding-left:24px;display:grid;gap:10px;font-size:.92rem;line-height:1.5}.welcome-roadmap li::marker{color:#39e2c2;font-weight:800}.welcome-roadmap strong{color:inherit}.modal:has(.welcome-roadmap){max-height:min(92dvh,900px);overflow-y:auto;overscroll-behavior:contain}@media(max-width:600px){.welcome-roadmap{font-size:.88rem;gap:8px}.modal:has(.welcome-roadmap){max-height:94dvh}}

/* v0.14.5 · Referencias del historial en la vista previa del entrenamiento */
.plan-overview-exercise .training-reference{display:block;margin-top:6px;color:#39e2c2;font-size:11px;line-height:1.45;font-weight:650;overflow-wrap:anywhere}
.plan-overview-exercise .training-reference.is-empty{color:#aebeca;font-weight:450}
@media(max-width:650px){.plan-overview-exercise .training-reference{font-size:10px;line-height:1.5}}

/* v0.14.6 · una única serie editable y las restantes en espera */
.focus-set-waiting{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:5px;min-height:48px;padding:9px 12px;background:#1c2b33;border-color:#3e515a}
.focus-set-waiting .focus-set-label{flex:1;min-width:130px}
.focus-set-waiting small{font-size:11px;color:#bdccd5;line-height:1.4}
@media(max-width:480px){.focus-set-waiting{padding:8px 10px}.focus-set-waiting small{width:100%}}

/* v0.14.7 · registro informativo, separado del menú previsto */
.meal-registration-summary{margin:0 0 20px;padding:18px;background:#1d2c35;border:1px solid #4b626b;border-radius:16px;min-width:0}
.meal-registration-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.meal-registration-head h2{font-size:19px;line-height:1.3;margin:4px 0;color:#f1f7f7}
.meal-registration-head>strong{white-space:nowrap;color:#39e2c2;font-size:23px}
.meal-registration-summary>p{color:#c3d2d8;font-size:12px;line-height:1.55;margin:10px 0 14px}
.meal-registration-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.meal-registration-list li{border:1px solid #465b64;border-radius:10px;padding:10px 12px;display:flex;align-items:start;justify-content:space-between;gap:7px;flex-wrap:wrap}
.meal-registration-list li.is-marked{border-color:#71834e;background:#28392f}
.meal-registration-list li>span:first-child{display:grid;gap:3px;min-width:0;flex:1}
.meal-registration-list li strong{font-size:13px;color:#f1f7f7}
.meal-registration-list li small{font-size:11px;color:#c3d2d8;overflow-wrap:anywhere}
.meal-registration-status{font-size:11px;white-space:nowrap;color:#d6fa8a}
.meal-registration-reference{flex-basis:100%;line-height:1.5}
@media(max-width:560px){.meal-registration-summary{padding:14px}.meal-registration-head h2{font-size:17px}}

/* v0.14.9 — simulación de porciones personales, compacta en móvil */
.individual-portions{border-top:1px solid rgba(180,200,190,.2);margin-top:18px;padding-top:16px}
.individual-portion-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:12px;margin:12px 0}
.energy-portion-field{display:flex;flex-direction:column;gap:7px;font-weight:600}
.energy-portion-field small{font-weight:400;opacity:.8;line-height:1.4}
.energy-portion-field .field{width:100%;min-width:0}

/* v0.14.12 — vista visual de nutrición, sin alterar resultados ni persistencia */
.premium-nutrition{--premium-lime:#39e2c2;overflow:hidden}
.premium-section-head{margin-bottom:15px}
.premium-section-head h2,.premium-section-head h3{margin:4px 0 7px;letter-spacing:-.025em}
.premium-section-head p{font-size:13px;line-height:1.48;color:#bccdd4;margin:0 0 12px}
.premium-result{margin:15px 0;padding:16px;border:1px solid #435c62;border-radius:15px;background:linear-gradient(145deg,#22333a,#1b2932);min-width:0}
.premium-energy-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.premium-energy-hero span{font-size:12px;color:#ccdde0;max-width:220px}
.premium-energy-hero strong{font-size:clamp(29px,4vw,43px);font-variant-numeric:tabular-nums;color:#39e2c2;line-height:1.1;letter-spacing:-.04em}
.premium-energy-hero strong small{font-size:14px;letter-spacing:0;color:#d6e8d0}
.premium-energy-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:10px}
.premium-energy-metrics>div{background:#17262d;border:1px solid #344a51;padding:10px;border-radius:10px;min-width:0}
.premium-energy-metrics span,.premium-macro-grid span{display:block;color:#b9c9d0;font-size:11px;margin-bottom:5px}
.premium-energy-metrics strong{font-size:16px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.premium-energy-track{height:9px;border-radius:50px;background:#3e5157;overflow:hidden;margin:10px 0 5px}
.premium-energy-track>span{display:block;height:100%;border-radius:50px;background:linear-gradient(90deg,#39e2c2,#39e2c2)}
.premium-energy-legend{font-size:10px;color:#b6c9ce;line-height:1.45}
.premium-macro-grid,.premium-meal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}
.premium-macro-grid>div,.premium-meal-grid>div{border:1px solid #3f565d;background:#17262d;border-radius:10px;padding:10px;min-width:0}
.premium-macro-grid strong{font-size:18px;display:block;font-variant-numeric:tabular-nums;line-height:1.15}
.premium-macro-grid strong small{font-size:11px;color:#b9c9d0}
.macro-bar{height:3px;border-radius:5px;display:block;margin-top:9px;background:#39e2c2}
.macro-carbs{background:#f0be62}.macro-fat{background:#86b9ef}
.premium-meal-grid>div{display:flex;flex-direction:column;gap:3px}
.premium-meal-grid strong{color:#39e2c2;font-size:23px;line-height:1.1}
.premium-meal-grid small{color:#bdcdd3;font-size:11px}
.premium-range-alert{margin-top:12px;border:1px solid #b19457;background:#443822;color:#f4dc9c;padding:10px;border-radius:9px;font-size:12px;line-height:1.5}
.premium-method{border-top:1px solid #415159;padding-top:11px;margin-top:15px}
.premium-method summary{color:#d0edaa;cursor:pointer;font-size:12px;font-weight:650;list-style:revert}
.premium-method p{font-size:12px;color:#c7d5d9;line-height:1.55;margin:10px 0 2px}
.premium-preview{margin-top:10px;width:100%;max-width:340px}
@media(max-width:580px){.premium-result{padding:12px}.premium-energy-hero{align-items:start;flex-direction:column;gap:4px}.premium-energy-metrics strong{font-size:14px}.premium-macro-grid,.premium-meal-grid{gap:5px}.premium-macro-grid>div,.premium-meal-grid>div{padding:8px 6px}.premium-macro-grid strong{font-size:16px}.premium-meal-grid strong{font-size:21px}.premium-preview{max-width:none}}
@media(max-width:350px){.premium-energy-metrics{grid-template-columns:1fr}.premium-macro-grid strong{font-size:14px}}

/* v0.14.13 — vista previa de cocina; no escribe en el diario */
.premium-preparation{margin-top:20px;border-top:1px solid #435c62;padding-top:18px;min-width:0}
.premium-preparation-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:12px}
.premium-preparation-card{border:1px solid #4a6067;border-radius:14px;padding:14px;background:#192930;min-width:0}
.premium-preparation-slot{color:#39e2c2;font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.03em}
.premium-preparation-card h4{font-size:16px;margin:8px 0 14px;color:#f2f8f8;overflow-wrap:anywhere}
.premium-preparation-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.premium-preparation-stats>div{background:#22363e;border-radius:9px;padding:10px;min-width:0}
.premium-preparation-stats small{font-size:10px;display:block;color:#b9ccd3;line-height:1.4}
.premium-preparation-stats strong{display:block;color:#d8ff91;margin-top:5px;font-size:15px;overflow-wrap:anywhere}
.premium-preparation-remain,.premium-preparation-note{font-size:12px;color:#c4d1d5;line-height:1.5}
.premium-preparation-ingredients{border-top:1px solid #40565d;margin-top:10px;padding-top:10px}
.premium-preparation-ingredients summary{color:#d1f6a0;cursor:pointer;font-size:12px;font-weight:650}
.premium-preparation-ingredients ul{list-style:none;margin:10px 0;padding:0}
.premium-preparation-ingredients li{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #344850;padding:7px 0;font-size:12px}
.premium-preparation-ingredients li span{overflow-wrap:anywhere;min-width:0}
.premium-preparation-ingredients li strong{text-align:right;white-space:nowrap}
.premium-preparation-ingredients>small{display:block;color:#bccdd4;font-size:11px;line-height:1.5;overflow-wrap:anywhere}

/* v0.14.15 — recorrido guiado, círculo de comparación puramente matemática */
.guided-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0 24px}
.guided-steps span{display:flex;align-items:center;gap:8px;min-width:0;padding:11px 9px;background:#192b32;border:1px solid #425b60;border-radius:11px;font-size:12px;font-weight:650}
.guided-steps b{display:grid;place-items:center;flex:none;border-radius:50%;width:25px;height:25px;background:#39e2c2;color:#17220d}
.guided-step-head{margin-top:8px}.guided-step-head h3{margin:5px 0 12px}
.guided-nutrition .individual-proposal,.guided-nutrition .guided-saved{margin-top:22px;padding-top:20px;border-top:1px solid #43585e}
.guided-save{margin-top:12px}.guided-save .premium-preview{max-width:none;font-size:14px;min-height:46px}
.guided-saved{background:#172a30}.guided-saved .premium-meal-grid strong{font-size:16px;line-height:1.3}
.guided-status{display:inline-flex;font-size:11px;color:#18270b;background:#39e2c2;padding:4px 8px;border-radius:999px;vertical-align:middle;margin-left:6px}
.guided-extras-head{margin-top:30px;padding-top:20px;border-top:1px solid #43585e}
.guided-extras-head h3{margin:5px 0}.guided-extras-head p{font-size:12px;color:#bfccd2}
.guided-donut-row{display:flex;align-items:center;gap:15px;margin:16px 0}
.guided-donut{width:114px;height:114px;flex:0 0 114px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#39e2c2 0 var(--progress),#3d535b var(--progress) 100%)}
.guided-donut>div{width:88px;height:88px;border-radius:50%;background:#1a2c34;display:flex;flex-direction:column;justify-content:center;align-items:center}
.guided-donut strong{font-size:24px;font-variant-numeric:tabular-nums}.guided-donut small{font-size:10px;color:#c1d2d8}
.guided-donut-row p{font-size:12px;line-height:1.55;color:#c5d4d8;max-width:320px}
@media(max-width:580px){.guided-steps{gap:4px}.guided-steps span{padding:8px 5px;font-size:10px;gap:4px}.guided-steps b{width:21px;height:21px}.guided-donut{width:96px;height:96px;flex-basis:96px}.guided-donut>div{width:72px;height:72px}.guided-donut strong{font-size:19px}.guided-donut-row{gap:10px}.guided-status{margin-left:0}}

/* FORMA 0.14.16 · Vistas de nutrición por tarea; sin alterar estado persistido. */
.meal-view-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 18px;position:sticky;top:0;z-index:5;padding:9px;background:#111a22;border:1px solid #344852;border-radius:13px}
.meal-view-tab{cursor:pointer;min-width:0;padding:13px 9px;border:1px solid #41535e;border-radius:8px;background:#22323d;color:#e2ebef;font-weight:800;font-size:12px}
.meal-view-tab.is-active{background:#39e2c2;color:#132021;border-color:#39e2c2}
.meal-view-tab:focus-visible{outline:3px solid #39e2c2;outline-offset:2px}
.meal-view-content[hidden]{display:none!important}
.meal-day-picker{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:15px;font-size:12px;color:#bfd0d7}
.meal-day-hero{background:linear-gradient(125deg,#223a3a,#1b2b34);border-color:#4e665c;margin:0 0 20px}
.meal-day-hero-head{display:flex;justify-content:space-between;align-items:start;gap:10px}
.meal-day-hero-head h2{font-size:23px;margin:6px 0}.meal-day-hero-head p{font-size:11px;color:#b3c4ca;margin:0}
.meal-hero-status{border:1px solid #68834b;color:#d5ff8e;border-radius:999px;padding:6px 10px;font-size:10px;white-space:nowrap}
.meal-hero-metrics{display:grid;grid-template-columns:128px minmax(0,1fr);gap:18px;align-items:center;margin:16px 0}
.meal-mini-donut{height:125px;width:125px;border-radius:50%;padding:10px;background:conic-gradient(#39e2c2 0 var(--progress),#40545a var(--progress) 100%);display:grid;place-items:center}
.meal-mini-donut>div{display:grid;place-items:center;align-content:center;background:#20313b;color:white;border-radius:50%;height:104px;width:104px;gap:2px}
.meal-mini-donut strong{font-size:22px;color:#d5ff8e;line-height:1}.meal-mini-donut small{font-size:9px;color:#c0ced3}
.meal-hero-stats{display:grid;gap:8px}.meal-hero-stats>span,.meal-hero-stats>small{font-size:11px;color:#b7c8cd}.meal-hero-stats>strong{font-size:24px;color:#d5ff8e}.meal-hero-stats .btn{width:max-content;max-width:100%}
.meal-hero-macros{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.meal-hero-macros span{display:grid;gap:6px;border:1px solid #456068;border-radius:9px;padding:10px;font-size:10px;color:#c8d5d8}.meal-hero-macros strong{color:#f4fffa;font-size:15px}.meal-hero-clarity{display:block;margin-top:12px;font-size:10px;color:#b3c1c5}
.meal-day-title{display:flex;justify-content:space-between;align-items:center;margin:16px 0}.meal-day-title h2{margin:0;font-size:19px}.meal-day-title span{font-size:11px;color:#d5ff8e}.meal-day-footer{margin:17px 0;width:100%}
.meal-adjust-note{margin:15px 0}
.meal-art-illustrated{background:#253b3f!important;overflow:hidden}.meal-art-illustrated img{display:block;width:100%;height:100%;object-fit:cover}
@media(max-width:680px){.meal-view-tabs{gap:4px;padding:5px;top:0}.meal-view-tab{padding:11px 5px;font-size:10px}.meal-day-picker{font-size:10px}.meal-day-hero-head{flex-wrap:wrap}.meal-day-hero-head h2{font-size:20px}.meal-hero-metrics{grid-template-columns:102px minmax(0,1fr);gap:11px}.meal-mini-donut{width:100px;height:100px;padding:8px}.meal-mini-donut>div{width:85px;height:85px}.meal-mini-donut strong{font-size:18px}.meal-hero-stats>strong{font-size:19px}.meal-hero-stats .btn{font-size:10px;padding:9px}.meal-hero-macros span{font-size:9px;padding:8px}.meal-hero-macros strong{font-size:12px}.meal-art-illustrated{height:115px}}

/* FORMA v0.14.17 — fotografía concreta, fallback SVG y legibilidad en móvil. */
.meal-art-illustrated img.recipe-photo{width:100%;height:100%;object-fit:cover;object-position:center;display:block;filter:saturate(.96) contrast(1.04)}
.meal-art-illustrated:has(img.recipe-photo){background:#26343b!important}

/* FORMA v0.14.20 — resumen semanal de porciones individuales guardadas; solo lectura. */
.personal-week-panel{margin-top:16px;background:linear-gradient(145deg,#1b2b34,#18272e);border-color:#425b60}
.personal-week-head{display:flex;justify-content:space-between;gap:14px;align-items:start;margin-bottom:14px}
.personal-week-head h2{margin:5px 0 6px;font-size:21px}
.personal-week-head p{margin:0;color:#b9c8ce;font-size:12px;line-height:1.5;max-width:670px}
.personal-week-badge{flex:none;border:1px solid #6d894c;background:#243a2d;color:#d9ff97;padding:7px 10px;border-radius:999px;font-size:11px;font-weight:800}
.personal-week-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:12px}
.personal-week-metrics>div{border:1px solid #40565d;background:#21343b;border-radius:11px;padding:11px;min-width:0}
.personal-week-metrics strong{display:block;color:#d8ff91;font-size:23px;line-height:1.05;font-variant-numeric:tabular-nums}
.personal-week-metrics span{display:block;color:#b7c7cd;font-size:10px;line-height:1.35;margin-top:5px}
.personal-week-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}
.personal-week-day{display:flex;flex-direction:column;gap:8px;border:1px solid #41545c;background:#17272e;border-radius:11px;padding:10px;min-width:0}
.personal-week-day.is-selected{box-shadow:inset 0 0 0 1px #39e2c2}
.personal-week-day-top{display:flex;flex-direction:column;gap:5px}.personal-week-day-top>span{font-size:10px;color:#b9cbd0}.personal-week-day-top em{font-style:normal;font-size:9px;font-weight:800;width:max-content;max-width:100%;padding:4px 6px;border-radius:999px;background:#31434a;color:#dbe5e8}
.personal-week-day.is-complete .personal-week-day-top em{background:#324727;color:#dfffaa}.personal-week-day.is-review .personal-week-day-top em{background:#4a3a24;color:#f6d48b}.personal-week-day.is-partial .personal-week-day-top em{background:#293e50;color:#b9dcff}
.personal-week-day>strong{font-size:11px;line-height:1.4;color:#eef5f5;overflow-wrap:anywhere;min-height:32px}
.personal-week-day .btn{margin-top:auto;width:100%;font-size:9px;padding:7px 6px;white-space:normal}
.personal-week-average{display:flex;justify-content:space-between;gap:12px;margin-top:12px;border-top:1px solid #3e535b;padding-top:12px;font-size:11px;color:#bdccd1}
.personal-week-average strong{color:#eef6f3;text-align:right}
@media(max-width:1100px){.personal-week-days{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:680px){.personal-week-head{flex-direction:column}.personal-week-badge{align-self:flex-start}.personal-week-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.personal-week-metrics>div{padding:8px 6px}.personal-week-metrics strong{font-size:18px}.personal-week-metrics span{font-size:8.5px}.personal-week-days{grid-template-columns:1fr 1fr;gap:6px}.personal-week-day{padding:9px}.personal-week-average{flex-direction:column}.personal-week-average strong{text-align:left}}
@media(max-width:360px){.personal-week-days{grid-template-columns:1fr}.personal-week-metrics{grid-template-columns:1fr 1fr}.personal-week-metrics>div:last-child{grid-column:1/-1}}


/* FORMA v0.14.21 — selección de menú visible y separada del ajuste de porciones. */
.meal-menu-selector{margin:0 0 20px;background:linear-gradient(145deg,#1b2b34,#17252d);border-color:#50645c}
.meal-menu-selector-head{display:flex;justify-content:space-between;align-items:start;gap:14px;margin-bottom:13px}
.meal-menu-selector-head h2{font-size:21px;margin:5px 0 5px}
.meal-menu-selector-head p{margin:0;color:#bac9ce;font-size:11px;line-height:1.5;max-width:720px}
.meal-menu-selector-badge{flex:none;border:1px solid #70884c;background:#263a2a;color:#d9ff94;border-radius:999px;padding:6px 9px;font-size:10px;font-weight:800}
.meal-menu-selector-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.meal-menu-choice{appearance:none;text-align:left;cursor:pointer;border:1px solid #445961;background:#21333a;color:#eef5f3;border-radius:10px;padding:11px;display:grid;gap:6px;min-width:0}
.meal-menu-choice:hover,.meal-menu-choice:focus-visible{border-color:#39e2c2;box-shadow:inset 0 0 0 1px #39e2c2;outline:none}
.meal-menu-choice>span{font-size:9px;color:#aebfc5;text-transform:uppercase;letter-spacing:.06em;font-weight:800}
.meal-menu-choice>strong{font-size:13px;line-height:1.35;overflow-wrap:anywhere}
.meal-menu-choice>small{font-size:10px;color:#d8ff91;font-weight:800}
.meal-menu-selector-next{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid #40555d;margin-top:12px;padding-top:12px}
.meal-menu-selector-next>span{font-size:10px;color:#b5c5ca;line-height:1.5}
.meal-recipe-jump{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px;background:#1b2b33;border-color:#50615f}
.meal-recipe-jump>div{display:grid;gap:4px}.meal-recipe-jump strong{font-size:16px}.meal-recipe-jump p{margin:0;color:#b7c7cc;font-size:11px;line-height:1.45}
@media(max-width:680px){
  .meal-menu-selector-head{flex-direction:column}.meal-menu-selector-badge{align-self:flex-start}
  .meal-menu-selector-grid{grid-template-columns:1fr}
  .meal-menu-choice{padding:10px}
  .meal-menu-selector-next{align-items:stretch;flex-direction:column}
  .meal-menu-selector-next .btn{width:100%}
  .meal-recipe-jump{align-items:stretch;flex-direction:column}.meal-recipe-jump .btn{width:100%}
}


/* v0.14.22 · propuesta semanal automática */
.weekly-auto-plan{margin-top:16px;background:linear-gradient(145deg,#1b2b34,#17262d);border-color:#51655a}
.weekly-auto-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:14px}
.weekly-auto-head h2{margin:5px 0 6px;font-size:22px;line-height:1.15}
.weekly-auto-head p{margin:0;color:#bdcbd0;font-size:12px;line-height:1.55;max-width:760px}
.weekly-auto-badge{flex:none;border:1px solid #718b4b;background:#263a2b;color:#ddff9c;border-radius:999px;padding:7px 10px;font-size:10px;font-weight:850}
.weekly-auto-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;margin:12px 0}
.weekly-auto-day{border:1px solid #40565e;background:#14242b;border-radius:11px;padding:9px;display:grid;gap:7px;min-width:0}
.weekly-auto-day-head{display:flex;justify-content:space-between;gap:5px;align-items:center;border-bottom:1px solid #334851;padding-bottom:7px}
.weekly-auto-day-head strong{font-size:11px;color:#f4f7f7}.weekly-auto-day-head span{font-size:9px;color:#9fb0b7}
.weekly-auto-meal{border-radius:8px;padding:7px;background:#21343c;border:1px solid #344a53;display:grid;gap:3px;min-width:0}
.weekly-auto-meal>span{font-size:8px;text-transform:uppercase;letter-spacing:.05em;color:#aebdc2;font-weight:800}
.weekly-auto-meal>strong{font-size:10px;line-height:1.3;color:#f4f7f7;overflow-wrap:anywhere}
.weekly-auto-meal>small{font-size:8px;line-height:1.25;color:#b8c7cb}
.weekly-auto-meal.is-proposal{border-color:#69884a;background:#23372c}.weekly-auto-meal.is-proposal>small{color:#d9ff96;font-weight:800}
.weekly-auto-meal.is-kept{opacity:.78}
.weekly-auto-actions{display:flex;justify-content:flex-end;gap:9px;flex-wrap:wrap;margin-top:13px}
.weekly-auto-actions .btn{white-space:normal}
@media(max-width:1180px){.weekly-auto-days{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:720px){.weekly-auto-head{flex-direction:column}.weekly-auto-badge{align-self:flex-start}.weekly-auto-days{grid-template-columns:1fr 1fr}.weekly-auto-actions{display:grid;grid-template-columns:1fr}.weekly-auto-actions .btn{width:100%}}
@media(max-width:370px){.weekly-auto-days{grid-template-columns:1fr}}

/* v0.14.23 · propuesta semanal de recetas + porciones */
.weekly-reference-form{display:grid;gap:7px;margin:14px 0 10px}
.weekly-reference-form>label{font-size:11px;font-weight:800;color:#e7eff1}
.weekly-reference-form>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}
.weekly-auto-secondary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:10px;border-top:1px solid #34474e}
.weekly-auto-secondary span{font-size:11px;color:#aebdc2}
.weekly-auto-plan.is-personalized{border-color:#39e2c2;box-shadow:inset 0 1px 0 rgba(57,226,194,.06)}
.weekly-personal-energy{display:grid;gap:2px;padding:7px;border-radius:8px;background:#20352a;border:1px solid #638044}
.weekly-personal-energy strong{font-size:15px;color:#39e2c2}.weekly-personal-energy span{font-size:8px;color:#c8d7d9}
.weekly-personal-blocked{display:grid;gap:2px;padding:7px;border-radius:8px;background:#2a3034;border:1px solid #4b5b62}
.weekly-personal-blocked strong{font-size:10px;color:#f1f5f6}.weekly-personal-blocked span{font-size:8px;color:#acbbc0}
.weekly-personal-day.is-review{border-color:#876f41}.weekly-personal-day.is-protected{opacity:.78}
.weekly-auto-meal em{font-size:8px;font-style:normal;color:#a7b7bc}
@media(max-width:720px){.weekly-reference-form>div{grid-template-columns:1fr}.weekly-reference-form .btn{width:100%}.weekly-auto-secondary{align-items:stretch;flex-direction:column}.weekly-auto-secondary .btn{width:100%}}

/* v0.14.24 · afinado opcional por macros + resumen semanal visual */
.weekly-reference-main{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}
.weekly-macro-options{margin-top:2px;border:1px solid #40565d;border-radius:10px;background:#17272e;padding:0 10px}
.weekly-macro-options>summary{cursor:pointer;padding:10px 0;font-size:11px;font-weight:850;color:#eef5f3;list-style:none}
.weekly-macro-options>summary::-webkit-details-marker{display:none}
.weekly-macro-options>summary::before{content:'›';display:inline-block;margin-right:7px;color:#39e2c2;transform:rotate(0);transition:transform .15s ease}
.weekly-macro-options[open]>summary::before{transform:rotate(90deg)}
.weekly-macro-options>summary span{margin-left:5px;padding:3px 6px;border-radius:999px;background:#263b2e;border:1px solid #607b46;color:#dfffaa;font-size:8px;text-transform:uppercase;letter-spacing:.05em}
.weekly-macro-options>p{margin:0 0 9px;color:#b5c4c9;font-size:10px;line-height:1.45}
.weekly-macro-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.weekly-macro-fields label{display:grid;gap:5px;color:#c6d3d6;font-size:9px;font-weight:800}
.weekly-macro-options>small{display:block;margin:8px 0 10px;color:#90a3a9;font-size:9px}
.weekly-balance-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:10px 0 6px}
.weekly-balance-summary>div{border:1px solid #40585f;background:#1a2c33;border-radius:10px;padding:9px;min-width:0}
.weekly-balance-summary span{display:block;color:#aebfc4;font-size:8px;text-transform:uppercase;letter-spacing:.05em;margin-bottom:5px}
.weekly-balance-summary strong{display:block;color:#eaffc6;font-size:15px;line-height:1.15;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.weekly-balance-summary small{color:#8fa3aa;font-size:9px;font-weight:700}
.weekly-variety-line{margin:6px 0 10px;padding:8px 10px;border-left:3px solid #39e2c2;background:#1d3028;color:#c8d6d0;font-size:10px;line-height:1.45;border-radius:0 8px 8px 0}
.weekly-variety-line strong{color:#39e2c2;font-size:14px}
.weekly-day-macros{display:block;margin-top:4px;padding-top:4px;border-top:1px solid #3c5547;color:#bcd0c7!important;font-size:7.5px!important;line-height:1.3}
@media(max-width:720px){.weekly-reference-main{grid-template-columns:1fr}.weekly-reference-main .btn{width:100%}.weekly-macro-fields{grid-template-columns:1fr 1fr 1fr}.weekly-balance-summary{grid-template-columns:1fr 1fr}.weekly-balance-summary strong{font-size:14px}}
@media(max-width:390px){.weekly-macro-fields{grid-template-columns:1fr}.weekly-balance-summary{grid-template-columns:1fr 1fr}}

/* v0.14.26 · puesta a punto nutricional guiada */
.nutrition-setup-guide{margin-bottom:16px;background:linear-gradient(145deg,#17272e,#1a2d34);border-color:#5d714d;box-shadow:inset 0 1px 0 rgba(57,226,194,.05)}
.nutrition-setup-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px}.nutrition-setup-head h2{font-size:22px;margin:5px 0 6px}.nutrition-setup-head p{margin:0;color:#bdcbd0;font-size:11px;line-height:1.5;max-width:760px}.nutrition-setup-badge{flex:none;border:1px solid #718b4b;background:#263a2b;color:#ddff9c;border-radius:999px;padding:7px 10px;font-size:10px;font-weight:850}
.nutrition-setup-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:13px 0}.nutrition-setup-step{border:1px solid #40565e;background:#14242b;border-radius:12px;padding:10px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:start;min-width:0}.nutrition-setup-step>.btn{grid-column:1/-1;width:100%;white-space:normal}.nutrition-step-number{width:27px;height:27px;border-radius:9px;display:grid;place-items:center;background:#24363e;color:#c9d7da;font-weight:900;font-size:11px}.nutrition-setup-step small{display:block;color:#92a6ac;font-size:8px;letter-spacing:.06em;font-weight:850;margin-bottom:4px}.nutrition-setup-step strong{display:block;color:#f2f6f5;font-size:12px;line-height:1.3;overflow-wrap:anywhere}.nutrition-setup-step p{margin:4px 0 0;color:#aebfc4;font-size:9px;line-height:1.4}.nutrition-setup-step.is-ready{border-color:#617d46;background:#1e3128}.nutrition-setup-step.is-ready .nutrition-step-number{background:#39e2c2;color:#17231d}.nutrition-setup-step.is-optional{border-color:#4f6670}.nutrition-setup-step.is-pending .nutrition-step-number{border:1px solid #62747c}
.nutrition-setup-inline{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(260px,1.2fr) auto;gap:9px;align-items:end;border-top:1px solid #3b5058;padding-top:12px}.nutrition-setup-inline>div{display:grid;gap:5px}.nutrition-setup-inline label{font-size:9px;color:#c8d5d8;font-weight:800}.nutrition-setup-inline details{border:1px solid #40565d;border-radius:10px;background:#17272e;padding:0 10px;min-width:0}.nutrition-setup-inline details>summary{cursor:pointer;padding:10px 0;font-size:10px;font-weight:850;color:#eef5f3}.nutrition-setup-macros{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding-bottom:9px}.nutrition-setup-macros label{display:grid;gap:4px}.nutrition-setup-note{margin:10px 0 0;color:#92a6ac;font-size:9px;line-height:1.45}.meal-setup-shortcut{border:0;background:transparent;color:#39e2c2;font-size:10px;font-weight:800;padding:5px 0 0;text-align:left;cursor:pointer}.meal-setup-shortcut:hover{text-decoration:underline}
@media(max-width:1100px){.nutrition-setup-steps{grid-template-columns:1fr 1fr}.nutrition-setup-inline{grid-template-columns:1fr 1fr}.nutrition-setup-inline>.btn{grid-column:1/-1;width:100%}}
@media(max-width:680px){.nutrition-setup-head{flex-direction:column}.nutrition-setup-badge{align-self:flex-start}.nutrition-setup-steps{grid-template-columns:1fr}.nutrition-setup-step{grid-template-columns:auto minmax(0,1fr) auto;align-items:center}.nutrition-setup-step>.btn{grid-column:auto;width:auto;min-width:92px}.nutrition-setup-inline{grid-template-columns:1fr}.nutrition-setup-inline>.btn{grid-column:auto}.nutrition-setup-macros{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:390px){.nutrition-setup-step{grid-template-columns:auto minmax(0,1fr)}.nutrition-setup-step>.btn{grid-column:1/-1;width:100%}.nutrition-setup-macros{grid-template-columns:1fr}}

/* FORMA v0.15.2 · preparación de la próxima sesión */
.training-prep-card{margin:14px 0;padding:15px;background:linear-gradient(145deg,#21362f,#1b2d33);border:1px solid #66834f;border-radius:11px;display:grid;gap:10px}.training-prep-card.is-muted{background:#1d2c34;border-color:#465b66}.training-prep-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.training-prep-head>div{display:grid;gap:3px}.training-prep-head span{font-size:9px;letter-spacing:.12em;font-weight:850;color:#39e2c2}.training-prep-head strong{font-size:14px;color:#f1f7f9}.training-prep-badge{padding:5px 7px;border-radius:999px;background:#30473a;white-space:nowrap}.training-prep-card p{margin:0;color:#cad7dc;font-size:12px;line-height:1.55}.training-prep-card>small{color:#9fb0ba;font-size:10px;line-height:1.5}.training-prep-apply{justify-self:start}.plan-prep-note{margin:6px 0 14px;color:#c6d3d9;font-size:11px;line-height:1.5}.plan-overview-stats span:last-child{border:1px solid #58733f;color:#d8ff8e}
@media(max-width:520px){.training-prep-head{align-items:stretch}.training-prep-badge{align-self:start}.training-prep-apply{width:100%;justify-content:center}.training-prep-card{padding:12px}}


/* FORMA v0.15.3 · progresión explicable por ejercicio */
.training-strategy-card{margin:12px 0 15px;padding:14px;border:1px solid #4f6871;border-radius:11px;background:linear-gradient(145deg,#182a31,#1d3037);display:grid;gap:10px}.training-strategy-card.is-consider-progress{border-color:#39e2c2;background:linear-gradient(145deg,#20352b,#1b2e34)}.training-strategy-card.is-consolidate-new-load{border-color:#6b8752}.training-strategy-card.is-consolidate{border-color:#8a754a}.training-strategy-card.is-maintain{border-color:#58727a}.training-strategy-card.is-variable,.training-strategy-card.is-insufficient{border-color:#475d66}.training-strategy-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.training-strategy-head>div{display:grid;gap:4px}.training-strategy-head span{color:#39e2c2;font-size:8px;letter-spacing:.1em;font-weight:900}.training-strategy-head h3{margin:0;color:#f4f8f8;font-size:16px;line-height:1.25}.training-strategy-badge{flex:none;border:1px solid #647c4b;background:#2b3c31;border-radius:999px;padding:5px 7px;color:#dfff9e!important;white-space:nowrap}.training-strategy-card>p{margin:0;color:#c3d1d5;font-size:11px;line-height:1.55}.training-trend-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.training-trend-strip>div{min-width:0;padding:8px;border-radius:9px;border:1px solid #3f555e;background:#14252c;display:grid;gap:2px}.training-trend-strip small{color:#93a7ad;font-size:8px}.training-trend-strip strong{color:#eff6f7;font-size:12px;overflow-wrap:anywhere}.training-trend-strip span{color:#39e2c2!important;font-size:9px!important;letter-spacing:0!important}.training-strategy-card details{border-top:1px solid #40545c;padding-top:8px}.training-strategy-card summary{cursor:pointer;color:#d8e6e9;font-size:10px;font-weight:800}.training-strategy-card details p{margin:7px 0 0;color:#9eb0b6;font-size:9px;line-height:1.5}
@media(max-width:520px){.training-strategy-head{flex-direction:column}.training-strategy-badge{align-self:flex-start}.training-trend-strip{grid-template-columns:1fr 1fr}.training-trend-strip>div:nth-child(3){grid-column:1/-1}}
@media(max-width:360px){.training-trend-strip{grid-template-columns:1fr}.training-trend-strip>div:nth-child(3){grid-column:auto}}

/* FORMA v0.15.4 — primera experiencia de beta privada */
.welcome-beta{max-width:640px}
.welcome-brand{display:flex;align-items:center;gap:12px;margin-bottom:18px}
.welcome-brand>span{width:48px;height:48px;display:grid;place-items:center;border-radius:10px;background:#39e2c2;color:#0c151b;font-weight:950;font-size:28px;line-height:1;transform:skew(-4deg)}
.welcome-brand>div{display:grid;gap:1px}.welcome-brand strong{font-size:20px;font-style:italic;letter-spacing:1px}.welcome-brand small{font-size:9px;letter-spacing:2px;color:#39e2c2;font-weight:850}
.welcome-value-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:18px 0}
.welcome-value-grid>div{border:1px solid #3a4e5a;background:#202e39;border-radius:8px;padding:13px;display:grid;gap:6px;align-content:start}
.welcome-value-grid .icon{width:20px;height:20px;color:#39e2c2}.welcome-value-grid strong{font-size:12px}.welcome-value-grid span{font-size:10px;line-height:1.45;color:#aebeca}
.welcome-privacy{display:grid;gap:3px;border-left:3px solid #39e2c2;background:#213329;padding:12px 14px;margin:0 0 18px;border-radius:0 7px 7px 0}.welcome-privacy strong{font-size:11px;color:#eaffbd}.welcome-privacy span{font-size:10px;line-height:1.5;color:#bfd0c2}
.beta-tester-card{border-color:#607a34;background:linear-gradient(145deg,#1b2c2b,#1c2932)}
.beta-tester-card .panel-head{align-items:flex-start}.beta-tester-card h2{margin-top:5px}.beta-tester-card>p{font-size:11px;line-height:1.65;color:#bfccd4;max-width:720px}
.beta-pill{border:1px solid #39e2c2;background:#293a2d;color:#d6ff8a;border-radius:999px;padding:6px 9px;font-size:9px;font-weight:850;letter-spacing:.5px}
.beta-checks{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.beta-checks span{display:flex;align-items:center;gap:5px;border:1px solid #40545f;background:#21313b;border-radius:999px;padding:7px 9px;font-size:9px;color:#c6d4dc}.beta-checks .icon{width:13px;height:13px;color:#39e2c2}
@media(max-width:600px){.welcome-value-grid{grid-template-columns:1fr}.welcome-value-grid>div{grid-template-columns:24px auto;column-gap:8px}.welcome-value-grid>div span{grid-column:2}.welcome-beta{padding:19px}.beta-checks{display:grid}.beta-checks span{border-radius:7px}}

/* FORMA v0.15.5 — Beta Control Center */
.beta-control-center{border-color:#607a34;background:linear-gradient(145deg,#15262a,#1a2932);padding:18px}
.beta-control-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:15px}.beta-control-head h2{margin:4px 0 5px;font-size:22px}.beta-control-head p{margin:0;max-width:650px;color:#b7c6ce;font-size:11px;line-height:1.55}
.beta-control-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.beta-control-card{border:1px solid #405660;border-radius:12px;background:linear-gradient(145deg,#1d3037,#1d2b35);padding:14px;display:grid;grid-template-columns:36px minmax(0,1fr);gap:11px;min-width:0}.beta-control-card>div:last-child{min-width:0}.beta-status-card{border-color:#668347;background:linear-gradient(145deg,#20352f,#1b2e34)}.beta-card-icon{width:36px;height:36px;border-radius:10px;background:#2a3d45;border:1px solid #4c626b;display:grid;place-items:center;color:#39e2c2}.beta-card-icon .icon{width:18px;height:18px}.beta-card-label{display:block;color:#39e2c2;font-size:8px;font-weight:900;letter-spacing:.12em;margin-bottom:4px}.beta-control-card h3{margin:0 0 4px;color:#f4f8f8;font-size:15px}.beta-control-card p{margin:0 0 9px;color:#b6c6cd;font-size:10px;line-height:1.5}.beta-control-card small{display:block;color:#8fa3ab;font-size:8.5px;line-height:1.45;margin-top:8px}.beta-meta-row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px;align-items:center;border-top:1px solid #3b5058;padding-top:8px;margin-top:4px;font-size:9px;color:#9fb0b7}.beta-meta-row code{color:#ddff9d;font-size:10px;font-weight:850;letter-spacing:.05em}.beta-card-action{min-height:38px;padding:8px 11px;font-size:9px}.beta-card-buttons{display:flex;flex-wrap:wrap;gap:7px}.beta-progress{height:6px;border-radius:999px;background:#334851;overflow:hidden;margin:9px 0}.beta-progress>span{display:block;height:100%;border-radius:inherit;background:#39e2c2}.beta-checklist{display:grid;grid-template-columns:1fr 1fr;gap:6px}.beta-checklist label{display:flex;align-items:center;gap:6px;border:1px solid #3f545d;background:#17272e;border-radius:8px;padding:7px 8px;color:#c8d5da;font-size:9px;cursor:pointer}.beta-checklist input{accent-color:#39e2c2}.beta-control-footer{display:flex;flex-wrap:wrap;gap:8px;margin-top:13px}.beta-control-footer span{display:flex;align-items:center;gap:5px;border:1px solid #3d535d;background:#1b2c34;border-radius:999px;padding:7px 9px;color:#c4d3d9;font-size:9px}.beta-control-footer .icon{width:13px;height:13px;color:#39e2c2}.beta-control-privacy{margin:10px 0 0!important;color:#82969f!important;font-size:8.5px!important;line-height:1.45!important}
@media(max-width:760px){.beta-control-grid{grid-template-columns:1fr}.beta-control-center{padding:14px}.beta-control-head h2{font-size:19px}.beta-checklist{grid-template-columns:1fr 1fr}}
@media(max-width:390px){.beta-control-head{flex-direction:column}.beta-control-card{grid-template-columns:32px minmax(0,1fr);padding:11px}.beta-card-icon{width:32px;height:32px}.beta-checklist{grid-template-columns:1fr}.beta-card-buttons{display:grid}.beta-card-buttons .btn{width:100%}}

/* FORMA v0.16.2 — Account Ready + backend DEV separado, sin autenticación falsa. */
.account-ready-card{border-color:#435a63;background:linear-gradient(145deg,#13242b,#17242d);overflow:hidden}
.account-ready-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.account-ready-head h2{margin:.2rem 0 .45rem}.account-ready-head p{max-width:760px;margin:0;color:#b9c7cd}
.account-status{border:1px solid #647783;border-radius:999px;padding:8px 12px;font-size:.72rem;font-weight:900;letter-spacing:.08em;white-space:nowrap}.account-status.is-ready{color:#39e2c2;border-color:#39e2c2;background:#223421}.account-status.is-review{color:#ffd17a;background:#3b3020}
.account-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0}.account-status-grid article{background:#20343d;border:1px solid #3e5661;border-radius:14px;padding:14px}.account-status-grid span{display:block;color:#91a5ae;font-size:.7rem;font-weight:900;letter-spacing:.08em}.account-status-grid strong{display:block;margin:7px 0;font-size:1.05rem}.account-status-grid small{color:#aebdc4;line-height:1.4}.account-status-grid code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}
.account-provider-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.account-provider{appearance:none;border:1px solid #435a63;background:#182a33;color:#eaf1f3;border-radius:14px;padding:13px 14px;display:grid;grid-template-columns:auto 1fr auto;gap:12px;text-align:left;align-items:center;opacity:1}.account-provider:disabled{cursor:not-allowed}.account-provider svg{width:24px;height:24px}.account-provider span strong,.account-provider span small{display:block}.account-provider span small{margin-top:3px;color:#9db0b8}.account-provider em{font-style:normal;color:#9fb0b7;font-size:.72rem;font-weight:800}.provider-g{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#f4f6f7;color:#111;font-weight:950;font-size:1rem}
.account-ready-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.account-ready-note{margin:13px 0 0;color:#aabac1;font-size:.82rem;line-height:1.55}.account-ready-note strong{color:#eaf1f3}
.account-readiness-modal{max-width:650px}.account-checks{display:grid;gap:8px;margin:18px 0}.account-check{display:flex;gap:11px;padding:11px 12px;border:1px solid #3f5660;border-radius:12px;background:#172932}.account-check>span{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;border:1px solid #60737c}.account-check.ok>span{color:#39e2c2;border-color:#39e2c2;background:#223521}.account-check.bad>span{color:#ffd17a}.account-check strong,.account-check small{display:block}.account-check small{margin-top:3px;color:#9eb0b7}.account-migration-flow{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.account-migration-flow>div{display:flex;gap:9px;background:#20343d;border:1px solid #405761;border-radius:12px;padding:11px}.account-migration-flow b{width:25px;height:25px;flex:0 0 25px;border-radius:50%;background:#39e2c2;color:#0b1118;display:grid;place-items:center}.account-migration-flow strong,.account-migration-flow small{display:block}.account-migration-flow small{margin-top:4px;color:#9fb1b9}
@media(max-width:760px){.account-ready-head{display:block}.account-status{display:inline-block;margin-top:12px}.account-status-grid,.account-provider-grid,.account-migration-flow{grid-template-columns:1fr}.account-ready-actions .btn{width:100%}.account-provider{grid-template-columns:auto 1fr}.account-provider em{grid-column:2}}
/* v0.16.3 · migración DEV opt-in */
.dev-migration-modal{max-width:760px}.dev-note{padding:10px 12px;border:1px solid #39e2c2;border-radius:10px;background:#20341f;color:#dce7d7}.dev-account-chip{margin:14px 0;padding:13px 14px;border:1px solid #465f69;border-radius:13px;background:#172a33}.dev-account-chip span,.dev-account-chip strong,.dev-account-chip small{display:block}.dev-account-chip span{font-size:.7rem;letter-spacing:.09em;font-weight:900;color:#9cafb7}.dev-account-chip strong{margin:5px 0;color:#eaf1f3}.dev-account-chip small{color:#9fb1b9}.dev-connect-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}.dev-connect-card{border:1px solid #405862;background:#172a33;border-radius:14px;padding:14px}.dev-connect-card>span{font-size:.7rem;letter-spacing:.09em;font-weight:900;color:#39e2c2}.dev-connect-card h3{margin:.4rem 0}.dev-connect-card p{color:#aabac1}.dev-connect-card label{display:block;margin:10px 0;color:#c8d4d8;font-weight:750}.dev-connect-card input{width:100%;margin-top:5px}.dev-migration-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:16px 0}.dev-migration-grid article{border:1px solid #415862;background:#20343d;border-radius:13px;padding:13px}.dev-migration-grid span,.dev-migration-grid strong,.dev-migration-grid small{display:block}.dev-migration-grid span{font-size:.68rem;letter-spacing:.09em;font-weight:900;color:#91a5ae}.dev-migration-grid strong{margin:6px 0;color:#eaf1f3;font-size:1.05rem}.dev-migration-grid small{color:#a9bac1}.dev-warning{display:flex;gap:8px;flex-direction:column;margin:14px 0;padding:12px 13px;border:1px solid #9a7c3d;border-radius:12px;background:#362d20}.dev-warning strong{color:#ffd17a}.dev-warning span{color:#d8c9ac;line-height:1.5}.dev-credentials{display:grid;grid-template-columns:1fr;gap:6px;margin:16px 0;padding:14px;border:1px solid #39e2c2;border-radius:13px;background:#20341f}.dev-credentials span{font-size:.72rem;font-weight:900;letter-spacing:.08em;color:#a7b99e}.dev-credentials code{padding:9px;border-radius:9px;background:#102027;color:#eaf1f3;overflow-wrap:anywhere}
@media(max-width:760px){.dev-connect-grid,.dev-migration-grid{grid-template-columns:1fr}.dev-migration-modal .form-actions .btn{width:100%}}

/* v0.16.4 · sincronización DEV controlada por revisiones */
.dev-sync-modal{max-width:780px}.sync-revision-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:16px 0}.sync-revision-grid article{border:1px solid #405862;background:#1a2d35;border-radius:13px;padding:13px;min-width:0}.sync-revision-grid span,.sync-revision-grid strong,.sync-revision-grid small{display:block}.sync-revision-grid span{font-size:.68rem;font-weight:900;letter-spacing:.09em;color:#91a5ae}.sync-revision-grid strong{margin:6px 0;font-size:1.05rem;color:#f2f7f8}.sync-revision-grid small{font-size:.78rem;color:#9fb1b9;overflow-wrap:anywhere}.sync-state{display:flex;flex-direction:column;gap:4px;margin:14px 0;padding:13px 14px;border:1px solid #4b626c;border-radius:13px;background:#1a2d35}.sync-state strong{font-size:.92rem;letter-spacing:.04em}.sync-state span{color:#b2c1c7;line-height:1.5}.sync-state-ok{border-color:#39e2c2;background:#20341f}.sync-state-ok strong{color:#39e2c2}.sync-state-local{border-color:#4f7f69;background:#1b3430}.sync-state-local strong{color:#8ee6c3}.sync-state-remote{border-color:#4e7387;background:#1a303b}.sync-state-remote strong{color:#9bdcf6}.sync-state-conflict{border-color:#9a6a45;background:#38271f}.sync-state-conflict strong{color:#ffbd7c}.sync-state-review{border-color:#6c7580;background:#252f36}.sync-state-review strong{color:#e6edf0}.dev-sync-modal .form-actions{gap:8px;flex-wrap:wrap}
@media(max-width:760px){.sync-revision-grid{grid-template-columns:1fr}.dev-sync-modal .form-actions .btn{width:100%}}

/* v0.16.8 · Google Identity Services */
.google-signin-slot{min-height:46px;display:flex;align-items:center;justify-content:center;margin:1rem 0 .75rem}
.google-signin-slot:empty::before{content:'Preparando acceso seguro con Google…';font-size:.86rem;color:var(--muted,#7b8794)}


/* FORMA v0.18.0 — Automatic Cloud Sync */
.cloud-sync-status{min-height:34px;padding:8px 11px;border:1px solid #526572;border-radius:9px;background:#263743;color:#d8e6ee;font-size:10px;font-weight:850;letter-spacing:.25px;white-space:nowrap;transition:border-color .15s,background .15s,color .15s}
.cloud-sync-status:hover{border-color:#8aa06d}.cloud-sync-status.is-synced{background:#293c2d;border-color:#63834f;color:#dcffad}.cloud-sync-status.is-syncing{background:#243844;border-color:#5d8799;color:#d9f4ff}.cloud-sync-status.is-offline{background:#3b3526;border-color:#8a7646;color:#ffe0a0}.cloud-sync-status.is-review{background:#472f2d;border-color:#9b625c;color:#ffd4ce}.cloud-sync-status.is-error{background:#3d3032;border-color:#81575d;color:#ffccd3}.cloud-sync-status[hidden]{display:none!important}
@media(max-width:760px){.cloud-sync-status{font-size:9px;padding:8px 7px;max-width:104px;overflow:hidden;text-overflow:ellipsis}.topbar-right{gap:5px}}

/* =========================================================
   FORMA v0.19.4 · PERFORMANCE PREMIUM / HOME + TRAINING + NUTRITION
   ========================================================= */
:root{
  --forma-bg:#081116;
  --forma-surface:#101b23;
  --forma-surface-2:#16232c;
  --forma-line:#2e3d46;
  --forma-lime:#39e2c2;
  --forma-lime-bright:#39e2c2;
  --forma-text:#f4f7f8;
  --forma-muted:#9eacb6;
}
body,.app-shell,.app-main{background:var(--forma-bg)}
.app-main{background:
  radial-gradient(circle at 82% -5%,rgba(57,226,194,.065),transparent 31%),
  radial-gradient(circle at 15% 16%,rgba(34,71,86,.16),transparent 32%),
  var(--forma-bg)}
.sidebar{background:#0b151c;border-right-color:#22323c}
.brand{gap:11px}
.brand-mark{
  width:46px;height:46px;border-radius:7px;background:linear-gradient(145deg,var(--forma-lime-bright),#39e2c2);
  color:#071015;font-family:"Arial Black",Impact,system-ui,sans-serif;font-size:28px;font-style:italic;
  letter-spacing:-4px;padding-right:5px;box-shadow:0 0 34px rgba(57,226,194,.12)
}
.brand-dot{display:none}
.brand-name{font-size:22px;letter-spacing:2.8px;font-weight:950;font-style:italic;color:#f7fafb}
.brand-sub{color:#aebac3;letter-spacing:2.4px;font-size:7px}
.nav-item{border-radius:7px}
.nav-item:hover{background:#14212a;color:#e9f3f6}
.nav-item.active{background:var(--forma-lime);color:#081116;box-shadow:0 8px 28px rgba(57,226,194,.08)}
.sidebar-tip{background:linear-gradient(155deg,#17252e,#0f1b22);border-color:#31434d}
.topbar{border-color:#22333d}.topbar-eyebrow{color:#7591a1}.today-pill{background:#14212a;border-color:#31424c;color:#dfe9ee}
.cloud-sync-status.is-synced{box-shadow:0 0 0 1px rgba(57,226,194,.09),0 0 24px rgba(57,226,194,.05)}

.premium-home{display:grid;gap:22px;padding-bottom:8px}
.premium-home-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:2px 0 2px}
.premium-home-heading h1{
  margin:0;color:var(--forma-text);font-size:clamp(34px,4.8vw,66px);line-height:.98;letter-spacing:-2.5px;
  font-weight:950;font-style:italic;text-transform:uppercase
}
.premium-home-heading h1 span{font-style:normal;font-size:.68em;display:inline-block;transform:translateY(-4px)}
.premium-home-heading>div>p:last-child{margin:11px 0 0;color:#a9b6bf;font-size:13px}
.premium-home-brand-note{display:grid;text-align:right;gap:2px;padding-bottom:4px}
.premium-home-brand-note span{font-size:16px;font-weight:950;font-style:italic;letter-spacing:2.4px;color:#ecf3f6}
.premium-home-brand-note small{font-size:8px;letter-spacing:2px;color:#6f8491;font-weight:800}

.premium-home-hero{
  min-height:460px;position:relative;overflow:hidden;border:1px solid #344750;border-radius:12px;background:#101b22;
  isolation:isolate;box-shadow:0 26px 80px rgba(0,0,0,.22)
}
.premium-home-hero-image{position:absolute;inset:0 0 0 auto;width:67%;height:100%;object-fit:cover;object-position:50% 24%;z-index:-3;filter:saturate(.94) contrast(1.03)}
.premium-home-hero-shade{position:absolute;inset:0;z-index:-2;background:
  linear-gradient(90deg,#071016 0%,rgba(7,16,22,.98) 31%,rgba(7,16,22,.76) 52%,rgba(7,16,22,.22) 77%,rgba(7,16,22,.12) 100%),
  linear-gradient(0deg,rgba(6,13,18,.72),transparent 50%)}
.premium-home-hero::after{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--forma-lime);box-shadow:0 0 28px rgba(57,226,194,.28)}
.premium-home-hero-content{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-height:460px;width:min(58%,690px);padding:44px 44px 42px 50px}
.premium-overline{display:block;color:var(--forma-lime);font-size:10px;font-weight:900;letter-spacing:2.1px;text-transform:uppercase}
.premium-home-hero h2{margin:13px 0 13px;font-size:clamp(38px,5vw,69px);max-width:760px;line-height:.93;letter-spacing:-2.5px;color:#f8fafb;font-weight:950;font-style:italic;text-transform:uppercase;text-wrap:balance}
.premium-home-hero-content>p{max-width:560px;margin:0;color:#c1cdd4;font-size:13px;line-height:1.7}
.premium-hero-stats{display:flex;flex-wrap:wrap;gap:8px;margin:23px 0 19px}
.premium-hero-stats>span{min-width:108px;display:grid;gap:4px;padding:11px 13px;background:rgba(16,29,37,.72);border:1px solid rgba(119,143,155,.32);border-radius:7px;backdrop-filter:blur(6px)}
.premium-hero-stats strong{color:#f6fafb;font-size:12px;line-height:1.25}
.premium-hero-stats small{color:#8fa1ac;font-size:9px;letter-spacing:.5px}
.premium-cta{min-height:49px;padding:13px 20px;background:var(--forma-lime);color:#081116;border-radius:7px;font-weight:950;font-size:12px;box-shadow:0 12px 34px rgba(57,226,194,.09)}
.premium-cta:hover{background:#39e2c2;transform:translateY(-1px)}
.premium-home-hero-signature{position:absolute;right:20px;bottom:16px;display:flex;align-items:center;gap:7px;color:rgba(244,248,249,.82);font-size:10px;font-weight:900;font-style:italic;letter-spacing:1.4px}
.premium-home-hero-signature b{display:grid;place-items:center;width:26px;height:26px;background:var(--forma-lime);color:#071015;border-radius:5px;font-size:17px;letter-spacing:-2px;padding-right:2px}

.premium-home-cards{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(285px,.86fr);gap:16px}
.premium-route-card,.premium-progress-card{min-width:0;overflow:hidden;background:linear-gradient(155deg,#14212a,#0e1920);border:1px solid #2f414b;border-radius:10px}
.premium-route-card{display:grid;grid-template-rows:188px 1fr}
.premium-route-media{position:relative;overflow:hidden;background:#111d24}
.premium-route-media::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,15,20,.9),transparent 58%)}
.premium-route-media img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .35s ease,filter .35s ease}
.premium-route-training .premium-route-media img{object-position:50% 20%}
.premium-route-food .premium-route-media img{object-position:center}
.premium-route-card:hover .premium-route-media img{transform:scale(1.025);filter:saturate(1.05)}
.premium-route-tag{position:absolute;left:16px;bottom:14px;z-index:1;color:#eaf2f5;font-size:9px;font-weight:900;letter-spacing:1.8px}
.premium-route-tag::before{content:"";display:inline-block;width:7px;height:7px;background:var(--forma-lime);margin-right:8px;border-radius:2px}
.premium-route-body{padding:18px 18px 17px;display:flex;flex-direction:column;gap:14px}
.premium-route-body h2,.premium-progress-card h2{margin:0;color:#f4f8fa;font-size:20px;line-height:1.08;letter-spacing:-.6px}
.premium-route-body p{margin:7px 0 0;color:#9fafb9;font-size:11px;line-height:1.55}
.premium-route-meta{display:flex;flex-wrap:wrap;gap:6px}
.premium-route-meta span{font-size:9px;color:#c9d4da;background:#1b2b34;border:1px solid #334751;padding:6px 8px;border-radius:5px}
.premium-card-link{margin-top:auto;border:0;background:transparent;color:var(--forma-lime);display:inline-flex;align-items:center;gap:7px;padding:5px 0;font-weight:900;font-size:11px;align-self:flex-start}
.premium-card-link .icon{width:15px;height:15px}.premium-card-link:hover{color:#39e2c2}

.premium-progress-card{padding:20px;display:flex;flex-direction:column;min-height:100%}
.premium-progress-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}
.premium-progress-head h2{margin-top:8px;max-width:185px}
.premium-progress-head>strong{font-size:42px;letter-spacing:-2px;line-height:1;color:#f8fafb}.premium-progress-head>strong small{font-size:13px;color:#8fa0aa;letter-spacing:0}
.premium-progress-track{height:7px;background:#263842;border-radius:20px;overflow:hidden;margin:24px 0 19px}.premium-progress-track i{display:block;height:100%;background:linear-gradient(90deg,#39e2c2,var(--forma-lime-bright));border-radius:inherit;box-shadow:0 0 15px rgba(57,226,194,.2)}
.premium-progress-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:20px}
.premium-progress-metrics span{display:grid;gap:4px;background:#172630;border:1px solid #30434d;padding:10px 8px;border-radius:6px}
.premium-progress-metrics strong{font-size:16px;color:#f0f6f8}.premium-progress-metrics small{font-size:8px;color:#8fa0aa;line-height:1.25}

@media(max-width:1120px){
  .premium-home-hero{min-height:420px}.premium-home-hero-content{min-height:420px;width:64%;padding-left:38px}.premium-home-hero-image{width:69%}
  .premium-home-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.premium-progress-card{grid-column:1/-1}.premium-progress-card{min-height:0}
}
@media(max-width:760px){
  #view{padding-top:20px}.premium-home{gap:15px}.premium-home-heading{align-items:flex-start}.premium-home-heading h1{font-size:clamp(31px,10vw,43px);letter-spacing:-1.8px}.premium-home-heading>div>p:last-child{font-size:11px;margin-top:8px}.premium-home-brand-note{display:none}
  .premium-home-hero{min-height:510px;border-radius:8px}.premium-home-hero-image{width:100%;height:64%;inset:0 0 auto 0;object-position:50% 18%}.premium-home-hero-shade{background:linear-gradient(0deg,#071016 0%,#071016 42%,rgba(7,16,22,.93) 55%,rgba(7,16,22,.26) 86%,rgba(7,16,22,.08) 100%)}
  .premium-home-hero-content{width:100%;min-height:510px;justify-content:flex-end;padding:210px 20px 23px 24px}.premium-home-hero h2{font-size:34px;line-height:.96;letter-spacing:-1.4px;margin:9px 0}.premium-home-hero-content>p{font-size:11px;line-height:1.55;max-width:92%}.premium-hero-stats{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:15px 0 13px}.premium-hero-stats>span{min-width:0;padding:9px 8px}.premium-hero-stats strong{font-size:10px}.premium-hero-stats small{font-size:8px}.premium-cta{width:100%;min-height:46px}.premium-home-hero-signature{display:none}
  .premium-home-cards{grid-template-columns:1fr;gap:12px}.premium-progress-card{grid-column:auto}.premium-route-card{grid-template-rows:164px 1fr}.premium-route-body{padding:15px}.premium-route-body h2,.premium-progress-card h2{font-size:19px}.premium-progress-card{padding:17px}.premium-progress-head>strong{font-size:36px}
}
@media(max-width:390px){
  .premium-home-heading h1{font-size:30px}.premium-home-hero{min-height:500px}.premium-home-hero-content{min-height:500px;padding-left:20px;padding-right:16px}.premium-home-hero h2{font-size:31px}.premium-route-card{grid-template-rows:150px 1fr}
}
@media(prefers-reduced-motion:reduce){.premium-route-media img{transition:none}.premium-route-card:hover .premium-route-media img{transform:none}}

/* ============================================================
   FORMA v0.19.3 · PERFORMANCE PREMIUM / TRAINING
   Visual layer only. Training engine and data contracts unchanged.
   ============================================================ */
.premium-training-page{display:grid;gap:18px;padding-bottom:8px}
.premium-training-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin:2px 0 1px}
.premium-training-heading h1{margin:5px 0 0;color:#f7fafb;font-size:clamp(32px,4.5vw,58px);line-height:.94;letter-spacing:-2.5px;font-weight:950;font-style:italic;text-transform:uppercase}
.premium-training-heading p{margin:9px 0 0;color:#9dafb9;font-size:12px;line-height:1.55}
.premium-training-heading-mark{display:grid;text-align:right;color:#eef5f7;font-weight:950;font-style:italic;letter-spacing:2px;font-size:15px}
.premium-training-heading-mark small{font-size:7px;letter-spacing:1.7px;color:#6f8491;margin-top:3px}

.premium-training-hero{position:relative;min-height:455px;overflow:hidden;border:1px solid #31454f;border-left:5px solid var(--forma-lime);border-radius:10px;background:#071016;isolation:isolate}
.premium-training-hero-image{position:absolute;inset:0 0 0 auto;width:65%;height:100%;object-fit:cover;object-position:53% 18%;z-index:-3;filter:saturate(.94) contrast(1.04)}
.premium-training-hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#071016 0%,#071016 35%,rgba(7,16,22,.92) 47%,rgba(7,16,22,.32) 78%,rgba(7,16,22,.1) 100%),linear-gradient(0deg,rgba(4,10,14,.7),transparent 45%)}
.premium-training-hero-copy{min-height:455px;width:min(59%,700px);padding:46px 42px 40px 48px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.premium-training-hero-copy h2{margin:11px 0 11px;color:#f8fafb;font-size:clamp(42px,5.6vw,76px);line-height:.91;letter-spacing:-3px;font-weight:950;font-style:italic;text-transform:uppercase;text-wrap:balance;max-width:760px}
.premium-training-hero-copy>p{margin:0;max-width:560px;color:#c0cdd4;font-size:13px;line-height:1.65}
.premium-training-hero-stats{display:flex;flex-wrap:wrap;gap:8px;margin:23px 0 19px}
.premium-training-hero-stats>span{min-width:116px;display:grid;gap:3px;padding:11px 13px;background:rgba(15,29,37,.74);border:1px solid rgba(119,143,155,.34);border-radius:7px;backdrop-filter:blur(6px)}
.premium-training-hero-stats b{color:#f8fbfc;font-size:13px;line-height:1.2;overflow-wrap:anywhere}
.premium-training-hero-stats small{color:#8fa2ad;font-size:8px;letter-spacing:.55px}
.premium-training-start{min-height:50px;padding:13px 20px;background:var(--forma-lime);color:#071015;border-radius:7px;font-size:12px;font-weight:950;box-shadow:0 12px 34px rgba(57,226,194,.1)}
.premium-training-start:hover{background:#39e2c2;color:#071015}
.premium-training-hero-status{position:absolute;right:18px;bottom:16px;display:flex;align-items:center;gap:9px;padding:8px 10px;border-radius:6px;background:rgba(7,16,22,.74);border:1px solid rgba(109,130,142,.35);backdrop-filter:blur(7px);font-size:9px;color:#aab9c1}
.premium-training-hero-status strong{color:#d8ff8d;font-size:9px}
.premium-training-hero.is-rest .premium-training-hero-image{filter:saturate(.72) brightness(.78);object-position:52% 21%}
.premium-training-hero.is-rest .premium-training-hero-shade{background:linear-gradient(90deg,#071016 0%,#071016 39%,rgba(7,16,22,.9) 55%,rgba(7,16,22,.3) 100%)}

.premium-training-calendar{padding:17px 18px 16px;background:linear-gradient(145deg,#121f28,#0e1920);border:1px solid #2f424c;border-radius:9px}
.premium-training-plan-note{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:0 2px 13px;margin-bottom:13px;border-bottom:1px solid #273a44}
.premium-training-plan-note>span{color:var(--forma-lime);font-size:8px;font-weight:950;letter-spacing:1.5px}
.premium-training-plan-note p{margin:0;flex:1 1 260px;color:#9eb0ba;font-size:10px;line-height:1.5}
.premium-inline-link{border:0;background:transparent;color:var(--forma-lime);font-size:9px;font-weight:900;padding:5px 0}
.premium-training-week-controls{display:flex;align-items:center;justify-content:center;gap:14px;margin:0 0 12px}
.premium-training-week-controls strong{min-width:180px;text-align:center;color:#e7eff2;font-size:10px;letter-spacing:.2px}
.premium-week-arrow{width:31px;height:31px;border:1px solid #354b56;background:#172630;color:#dbe6ea;border-radius:6px;font-weight:900}
.premium-week-arrow:hover{border-color:#39e2c2;color:#d9ff8e}
.premium-training-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}
.premium-training-day{min-width:0;min-height:68px;border:1px solid #30434e;background:#172630;border-radius:7px;color:#8fa1ac;display:grid;justify-items:center;align-content:center;gap:4px;padding:8px 3px;position:relative}
.premium-training-day span{font-size:7px;font-weight:900;letter-spacing:1px}.premium-training-day strong{font-size:15px;color:#d6e0e5}.premium-training-day i{width:6px;height:6px;border-radius:50%;background:#4b606b}
.premium-training-day.has-workout i{background:#39e2c2}.premium-training-day.is-done i{background:var(--forma-lime);box-shadow:0 0 9px rgba(57,226,194,.28)}
.premium-training-day.today{border-color:#61783d}.premium-training-day.is-selected{background:#283b2d;border-color:var(--forma-lime);box-shadow:0 0 0 1px rgba(57,226,194,.22)}
.premium-training-day.is-selected span,.premium-training-day.is-selected strong{color:#efffd5}

.premium-training-main-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.75fr);gap:16px}
.premium-training-session-card,.premium-training-week-card{min-width:0;background:linear-gradient(155deg,#14222b,#0d181f);border:1px solid #30434e;border-radius:9px;padding:20px}
.premium-training-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:16px}
.premium-training-section-head h2{margin:6px 0 0;color:#f3f8fa;font-size:22px;line-height:1.05;letter-spacing:-.7px}
.premium-training-section-head>small{color:#899ca7;font-size:9px;text-align:right}
.premium-session-date{color:#899ca7;font-size:9px;white-space:nowrap}
.premium-training-exercise-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-bottom:16px}
.premium-training-exercise{min-width:0;display:grid;grid-template-columns:66px minmax(0,1fr) auto;gap:10px;align-items:center;padding:7px;border:1px solid #2f434d;background:#17262f;border-radius:7px;overflow:hidden}
.premium-training-exercise-media{position:relative;width:66px;height:48px;overflow:hidden;border-radius:5px;background:#0b151b}
.premium-training-exercise-media img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}
.premium-training-exercise-media::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,12,16,.55),transparent 65%);pointer-events:none}
.premium-training-exercise-media>span{position:absolute;z-index:1;left:5px;bottom:4px;display:grid;place-items:center;min-width:23px;height:20px;padding:0 4px;background:rgba(8,17,22,.82);border:1px solid rgba(57,226,194,.38);border-radius:4px;color:var(--forma-lime);font-size:8px;font-weight:950}
.premium-training-exercise strong{display:block;color:#eaf2f5;font-size:10px;line-height:1.3;overflow-wrap:anywhere}
.premium-training-exercise small{display:block;margin-top:3px;color:#8397a2;font-size:8px;line-height:1.3}
.premium-training-exercise b{color:#d8ff8e;border:1px solid #506a36;background:#273522;border-radius:4px;padding:4px 5px;font-size:6px;letter-spacing:.7px;white-space:nowrap}
.premium-training-secondary{width:100%;min-height:47px;background:#39e2c2;color:#071015;border-radius:7px;font-size:11px;font-weight:950}
.premium-training-secondary:hover{background:#39e2c2;color:#071015}

.premium-training-week-card{display:flex;flex-direction:column}.premium-week-score{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin:13px 0 14px}
.premium-week-score strong{color:#f6fafb;font-size:48px;line-height:.9;letter-spacing:-2.2px}.premium-week-score strong small{font-size:16px;color:#7f939f;letter-spacing:0}.premium-week-score>span{color:#94a7b1;font-size:9px;padding-bottom:4px}
.premium-training-progress{height:7px;background:#263a45;border-radius:99px;overflow:hidden}.premium-training-progress i{display:block;height:100%;background:linear-gradient(90deg,#39e2c2,var(--forma-lime));border-radius:inherit}
.premium-week-meta{display:grid;gap:7px;margin:17px 0}.premium-week-meta>span{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid #263943}.premium-week-meta small{color:#7f939f;font-size:8px}.premium-week-meta b{color:#dce7eb;font-size:9px;text-align:right}
.premium-training-week-card>p{margin:auto 0 0;color:#8497a2;font-size:9px;line-height:1.55}

.premium-training-programs{padding:19px;background:linear-gradient(145deg,#111f27,#0c171e);border:1px solid #2d404a;border-radius:9px}
.premium-program-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}
.premium-program-card{overflow:hidden;border:1px solid #30434d;background:#15242d;border-radius:8px;min-width:0}.premium-program-card.is-active{border-color:#39e2c2;box-shadow:inset 0 0 0 1px rgba(57,226,194,.14)}
.premium-program-media{position:relative;height:150px;overflow:hidden;background:#0c151b}.premium-program-media::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(6,14,18,.9),transparent 63%)}
.premium-program-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}.premium-program-card:hover img{transform:scale(1.025)}
.premium-program-media>span{position:absolute;z-index:1;left:12px;bottom:10px;color:#eff5f7;font-size:7px;font-weight:950;letter-spacing:1.25px}.premium-program-card.is-active .premium-program-media>span{color:var(--forma-lime)}
.premium-program-body{padding:13px}.premium-program-body>small{color:var(--forma-lime);font-size:7px;font-weight:900;letter-spacing:1.2px}.premium-program-body h3{margin:5px 0 6px;color:#f0f6f8;font-size:14px;line-height:1.05;letter-spacing:-.35px}.premium-program-body p{margin:0;color:#8fa1ab;font-size:8px;line-height:1.45;min-height:34px}.premium-program-body>div{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px}.premium-program-body>div span{padding:4px 6px;border:1px solid #324751;background:#1c2c35;border-radius:4px;color:#b9c6cc;font-size:7px}

/* El diario conserva su lógica pero adopta el lenguaje visual premium. */
.premium-training-detail .panel{background:linear-gradient(155deg,#14222b,#0f1b22);border-color:#324650}
.premium-training-detail .plan-overview{background:linear-gradient(145deg,#15252e,#101d24);border-color:#415760;border-radius:9px}
.premium-training-detail .plan-overview-top h2{font-size:clamp(24px,3vw,34px);font-style:italic;text-transform:uppercase;letter-spacing:-1.2px}
.premium-training-detail .plan-overview-exercise{background:#172832;border-color:#344a55;border-radius:7px}
.premium-training-detail .exercise-journal{background:linear-gradient(150deg,#172832,#111e26);border-color:#405661;border-radius:9px}
.premium-training-detail .journal-heading h3{font-size:17px;letter-spacing:-.4px}.premium-training-detail .journal-index{color:var(--forma-lime)}
.premium-training-detail .set-row{background:#172832;border-color:#344b56}.premium-training-detail .set-field{background:#0f1b22;border-color:#3a505b;color:#f0f6f8}
.premium-training-detail .journal-footer{background:#1d2d27;border-color:#556f3b}.premium-training-detail .journal-footer p{color:#aebdb3}

@media(max-width:1000px){
  .premium-training-hero{min-height:420px}.premium-training-hero-copy{min-height:420px;width:65%;padding-left:38px}.premium-training-hero-image{width:68%}
  .premium-training-main-grid{grid-template-columns:1fr}.premium-training-week-card{min-height:0}.premium-program-media{height:136px}
}
@media(max-width:680px){
  .premium-training-page{gap:13px}.premium-training-heading{align-items:flex-start}.premium-training-heading-mark{display:none}.premium-training-heading h1{font-size:35px;letter-spacing:-1.6px}.premium-training-heading p{font-size:10px}
  .premium-training-hero{min-height:510px;border-radius:8px}.premium-training-hero-image{width:100%;height:64%;inset:0 0 auto 0;object-position:52% 17%}.premium-training-hero-shade{background:linear-gradient(0deg,#071016 0%,#071016 43%,rgba(7,16,22,.94) 56%,rgba(7,16,22,.26) 87%,rgba(7,16,22,.08) 100%)}
  .premium-training-hero-copy{width:100%;min-height:510px;justify-content:flex-end;padding:215px 20px 22px}.premium-training-hero-copy h2{font-size:35px;line-height:.94;letter-spacing:-1.5px;margin:8px 0}.premium-training-hero-copy>p{font-size:10px;line-height:1.55}.premium-training-hero-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;gap:6px;margin:14px 0 12px}.premium-training-hero-stats>span{min-width:0;padding:8px 7px}.premium-training-hero-stats b{font-size:10px}.premium-training-hero-stats small{font-size:7px}.premium-training-start{width:100%;min-height:46px}.premium-training-hero-status{display:none}
  .premium-training-calendar{padding:13px 11px}.premium-training-plan-note{align-items:flex-start}.premium-training-week-controls{margin-bottom:9px}.premium-training-week-controls strong{min-width:0;flex:1;font-size:9px}.premium-training-days{gap:4px}.premium-training-day{min-height:58px;border-radius:6px;padding:6px 2px}.premium-training-day span{font-size:6px}.premium-training-day strong{font-size:13px}
  .premium-training-session-card,.premium-training-week-card,.premium-training-programs{padding:15px}.premium-training-section-head{align-items:flex-start}.premium-training-section-head h2{font-size:19px}.premium-training-section-head>small{display:none}.premium-training-exercise-list{grid-template-columns:1fr}.premium-training-exercise{grid-template-columns:74px minmax(0,1fr) auto}.premium-training-exercise-media{width:74px;height:52px}.premium-week-score strong{font-size:42px}
  .premium-program-grid{grid-template-columns:1fr;gap:9px}.premium-program-card{display:grid;grid-template-columns:118px minmax(0,1fr)}.premium-program-media{height:100%;min-height:126px}.premium-program-body p{min-height:0}
}
@media(max-width:380px){
  .premium-training-heading h1{font-size:32px}.premium-training-hero-copy{padding-left:17px;padding-right:15px}.premium-training-hero-copy h2{font-size:31px}.premium-training-days{gap:3px}.premium-training-day{min-height:55px}.premium-program-card{grid-template-columns:105px minmax(0,1fr)}
}
@media(prefers-reduced-motion:reduce){.premium-program-media img{transition:none}.premium-program-card:hover img{transform:none}}
/* Compatibilidad de contrato con el antiguo aviso de plan: mismo hook, layout premium compacto. */
.premium-training-plan-note.plan-workout-notice{display:flex;flex-direction:row;align-items:center;gap:10px;margin:0 0 13px;padding:0 2px 13px;border:0;border-bottom:1px solid #273a44;background:transparent;border-radius:0;min-height:0}
.premium-training-plan-note.plan-workout-notice>span{flex:0 0 auto;width:auto;align-self:auto;min-height:0;color:var(--forma-lime);font-size:8px;font-weight:950;letter-spacing:1.5px}
.premium-training-plan-note.plan-workout-notice>p{flex:1 1 260px;margin:0;color:#9eb0ba;font-size:10px;line-height:1.5}
@media(max-width:680px){.premium-training-plan-note.plan-workout-notice{flex-direction:row;align-items:flex-start;min-height:0}.premium-training-plan-note.plan-workout-notice>span{width:auto;align-self:auto}.premium-training-plan-note.plan-workout-notice>p{min-height:0}}

/* ============================================================
   FORMA v0.19.4 · PERFORMANCE PREMIUM / NUTRITION
   ============================================================ */
.premium-nutrition-hero{padding:0!important;display:grid;grid-template-columns:minmax(360px,.95fr) minmax(0,1.35fr);min-height:430px;overflow:hidden;background:#101b22;border-color:#40535d;box-shadow:0 24px 70px rgba(0,0,0,.24)}
.premium-nutrition-hero-media{position:relative;min-height:430px;overflow:hidden;background:#17252c}
.premium-nutrition-hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,15,19,.06),rgba(7,15,19,.2) 55%,rgba(7,15,19,.82)),linear-gradient(0deg,rgba(7,15,19,.55),transparent 50%)}
.premium-nutrition-hero-media img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;filter:saturate(1.06) contrast(1.03)}
.premium-nutrition-photo-label{position:absolute;left:20px;bottom:18px;z-index:1;color:#d9ff8b;font-size:9px;letter-spacing:.18em;font-weight:900}
.premium-nutrition-hero-content{padding:32px 34px;display:flex;flex-direction:column;justify-content:center;min-width:0}
.premium-nutrition-hero .meal-day-hero-head{align-items:flex-start;margin-bottom:12px}
.premium-nutrition-hero .meal-day-hero-head h2{font-size:clamp(34px,4.4vw,58px);line-height:.92;letter-spacing:-.045em;font-style:italic;margin:10px 0 14px;color:#f6f8f8}
.premium-nutrition-hero .meal-day-hero-head h2 em{font-style:inherit;color:#39e2c2}
.premium-nutrition-hero .meal-day-hero-head p{font-size:12px;line-height:1.55;max-width:520px;color:#bdc9cd}
.premium-nutrition-recipes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:4px 0 16px}
.premium-nutrition-recipes span{border:1px solid #3f535c;background:rgba(18,33,40,.8);border-radius:10px;padding:9px;min-width:0;display:grid;gap:4px}
.premium-nutrition-recipes small{font-size:8px;color:#39e2c2;font-weight:900;letter-spacing:.11em;text-transform:uppercase}
.premium-nutrition-recipes strong{font-size:10px;color:#eef4f3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.premium-nutrition-hero .meal-hero-metrics{grid-template-columns:112px minmax(0,1fr);margin:0 0 13px;gap:16px}
.premium-nutrition-hero .meal-mini-donut{width:108px;height:108px}
.premium-nutrition-hero .meal-mini-donut>div{width:89px;height:89px}
.premium-nutrition-hero .meal-hero-stats>strong{font-size:23px}
.premium-nutrition-hero .meal-hero-macros{margin-top:auto}
.premium-nutrition-hero .meal-hero-macros span{background:#162831;border-color:#405862}
.premium-nutrition-hero .meal-hero-macros strong{color:#dfff98;font-size:17px}
.premium-nutrition-hero .meal-hero-clarity{margin-top:10px}
.premium-meal-selector{padding:25px!important;background:linear-gradient(145deg,#13232a,#101b21);border-color:#3c5059}
.premium-meal-selector .meal-menu-selector-head h2{font-size:27px;letter-spacing:-.03em}
.premium-meal-selector .meal-menu-selector-head p{max-width:680px;color:#aebec4}
.premium-meal-selector .meal-menu-selector-grid{gap:12px}
.premium-meal-choice{padding:0!important;display:grid!important;grid-template-columns:105px minmax(0,1fr);min-height:105px;overflow:hidden;background:#172831!important;border-color:#435963!important;text-align:left}
.premium-meal-choice:hover{border-color:#39e2c2!important;transform:translateY(-1px)}
.premium-meal-choice-media{display:block;min-height:105px;background:#203139;overflow:hidden}
.premium-meal-choice-media img{display:block;width:100%;height:100%;min-height:105px;object-fit:cover}
.premium-meal-choice-copy{padding:14px 14px 13px;display:grid;align-content:center;gap:5px;min-width:0}
.premium-meal-choice-copy small{font-size:8px;color:#39e2c2;letter-spacing:.13em;font-weight:900;text-transform:uppercase}
.premium-meal-choice-copy strong{font-size:13px;color:#f4f7f6;line-height:1.25;overflow-wrap:anywhere}
.premium-meal-choice-copy em{font-size:10px;color:#39e2c2;font-style:normal;font-weight:850}
.meal-day-title{margin-top:30px!important}.meal-day-title h2{font-size:24px!important;letter-spacing:-.035em}
.meal-card-premium{background:#122129!important;border-color:#40535d!important;box-shadow:0 18px 45px rgba(0,0,0,.14);transition:transform .18s,border-color .18s}
.meal-card-premium:hover{transform:translateY(-2px);border-color:#58716b!important}
.meal-card-premium .meal-art{height:190px!important;background:#1a2b33!important}
.meal-card-premium .meal-body{padding:19px!important}
.meal-card-premium .meal-card-top{align-items:center}.meal-card-premium .meal-eyebrow{color:#39e2c2!important;letter-spacing:.12em}
.meal-card-premium .meal-option-count{color:#95aab1}
.meal-card-premium h3{font-size:20px!important;line-height:1.08;margin:1px 0 3px!important;letter-spacing:-.035em;color:#f5f7f6}
.meal-card-premium .meal-body>p{color:#aebdc2!important;line-height:1.5}
.meal-card-premium .meal-tags span{background:#21343d!important;border:1px solid #40535c;color:#d6e1e4!important}
.premium-meal-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:2px 0 4px}
.premium-meal-facts span{display:grid;gap:3px;text-align:center;background:#172a31;border:1px solid #40545c;border-radius:9px;padding:10px 5px;min-width:0}
.premium-meal-facts strong{font-size:16px;color:#f2f7f4;font-variant-numeric:tabular-nums}
.premium-meal-facts small{font-size:8px;color:#93a8af;line-height:1.15}
.meal-card-premium .meal-actions{padding:0 19px 19px!important;gap:8px}
.meal-card-premium .meal-actions .btn{flex:1}
.meal-card-premium .meal-actions .btn-primary{background:#39e2c2!important;color:#101c1c!important}
.meal-card-premium .meal-actions .btn-ghost{background:#20313a!important;color:#39e2c2!important;border:1px solid #435861}
.meal-view-tabs{backdrop-filter:blur(14px);background:rgba(15,25,32,.92)!important}
.meal-view-tab.is-active{box-shadow:0 0 0 1px rgba(57,226,194,.16),0 8px 22px rgba(57,226,194,.08)}
@media(max-width:1050px){.premium-nutrition-hero{grid-template-columns:.85fr 1.15fr}.premium-nutrition-hero-content{padding:26px}.premium-nutrition-recipes{grid-template-columns:1fr}.premium-nutrition-recipes span{grid-template-columns:85px minmax(0,1fr);align-items:center}.premium-meal-choice{grid-template-columns:82px minmax(0,1fr)}}
@media(max-width:760px){.premium-nutrition-hero{grid-template-columns:1fr}.premium-nutrition-hero-media{min-height:245px}.premium-nutrition-hero-media:after{background:linear-gradient(0deg,#101b22 0%,rgba(16,27,34,.08) 70%)}.premium-nutrition-hero-content{padding:20px}.premium-nutrition-hero .meal-day-hero-head h2{font-size:38px}.premium-nutrition-recipes{display:none}.premium-nutrition-hero .meal-hero-metrics{grid-template-columns:96px minmax(0,1fr)}.premium-nutrition-hero .meal-mini-donut{width:94px;height:94px}.premium-nutrition-hero .meal-mini-donut>div{width:77px;height:77px}.premium-meal-selector{padding:17px!important}.premium-meal-selector .meal-menu-selector-grid{grid-template-columns:1fr!important}.premium-meal-choice{grid-template-columns:104px minmax(0,1fr)}.meal-card-premium .meal-art{height:210px!important}}
@media(max-width:430px){.premium-nutrition-hero-media{min-height:220px}.premium-nutrition-hero-content{padding:17px}.premium-nutrition-hero .meal-day-hero-head{gap:7px}.premium-nutrition-hero .meal-day-hero-head h2{font-size:34px}.premium-nutrition-hero .meal-hero-status{font-size:8px;padding:5px 8px}.premium-nutrition-hero .meal-hero-metrics{grid-template-columns:1fr}.premium-nutrition-hero .meal-mini-donut{display:none}.premium-nutrition-hero .meal-hero-macros{grid-template-columns:repeat(3,minmax(0,1fr))}.premium-nutrition-hero .meal-hero-macros span{padding:8px 5px}.premium-nutrition-hero .meal-hero-macros strong{font-size:13px}.premium-meal-choice{grid-template-columns:88px minmax(0,1fr)}.premium-meal-choice-media,.premium-meal-choice-media img{min-height:94px}.premium-meal-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.meal-card-premium .meal-art{height:180px!important}}

/* ============================================================
   FORMA v0.19.5 · NUTRITION POLISH
   Ajustar porciones + Semana y compra
   ============================================================ */
.nutrition-adjust-view,.nutrition-week-view{--np-lime:#39e2c2;--np-bg:#101b22;--np-surface:#14242c;--np-surface-2:#182b33;--np-border:#3f555f}
.nutrition-recipe-jump-premium{position:relative;overflow:hidden;padding:18px 20px!important;background:linear-gradient(115deg,#162932,#101c23)!important;border-color:#405862!important}
.nutrition-recipe-jump-premium:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--np-lime)}
.nutrition-recipe-jump-premium strong{font-size:18px!important;color:#f3f7f7}.nutrition-recipe-jump-premium .btn{flex:none}

.nutrition-adjust-premium{padding:0!important;overflow:hidden;background:linear-gradient(155deg,#101c23,#13242b)!important;border-color:#405761!important;box-shadow:0 22px 60px rgba(0,0,0,.18)}
.nutrition-adjust-hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:28px;padding:30px 32px 24px;background:radial-gradient(circle at 82% 22%,rgba(57,226,194,.1),transparent 35%),linear-gradient(145deg,#13252d,#0e1a20);border-bottom:1px solid #334a54}
.nutrition-adjust-hero h2{margin:8px 0 12px!important;font-size:clamp(34px,4.4vw,58px)!important;line-height:.9!important;letter-spacing:-.05em!important;font-style:italic;color:#f6f8f8}
.nutrition-adjust-hero h2 em{font-style:inherit;color:var(--np-lime)}
.nutrition-adjust-hero p{margin:0!important;max-width:560px;color:#b6c5ca!important;font-size:12px!important;line-height:1.6!important}
.nutrition-adjust-snapshot{align-self:center;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.nutrition-adjust-snapshot>div{min-width:0;padding:14px 10px;border:1px solid #3d535c;border-radius:11px;background:rgba(21,38,46,.82);text-align:center}
.nutrition-adjust-snapshot strong{display:block;color:#dfff95;font-size:22px;line-height:1;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.nutrition-adjust-snapshot span{display:block;margin-top:6px;color:#8fa3aa;font-size:8px;line-height:1.3;text-transform:uppercase;letter-spacing:.06em}
.nutrition-adjust-premium>.nutrition-adjust-steps{margin:0;padding:17px 32px;background:#0e1920;border-bottom:1px solid #31464f}
.nutrition-adjust-steps span{background:#15262e!important;border-color:#3b515a!important;border-radius:10px!important;padding:10px 12px!important}
.nutrition-adjust-steps span b{width:29px!important;height:29px!important;background:#39e2c2!important;color:#0b1419!important;font-size:11px}
.nutrition-adjust-steps span i{font-style:normal;color:#e6eef0;font-size:11px;font-weight:850}
.nutrition-adjust-premium>.guided-step-head,.nutrition-adjust-premium>.energy-reference-form,.nutrition-adjust-premium>.energy-reference-output,.nutrition-adjust-premium>.premium-method,.nutrition-adjust-premium>.individual-proposal,.nutrition-adjust-premium>.guided-save,.nutrition-adjust-premium>.guided-saved,.nutrition-adjust-premium>.guided-extras-head,.nutrition-adjust-premium>.individual-portions,.nutrition-adjust-premium>.premium-preparation,.nutrition-adjust-premium>.muted-small,.nutrition-adjust-premium>.energy-reference-alert{margin-left:32px;margin-right:32px}
.nutrition-adjust-premium>.guided-step-head{margin-top:25px}
.nutrition-adjust-premium>.premium-method{margin-bottom:0}
.nutrition-adjust-premium>.premium-preparation,.nutrition-adjust-premium>.individual-portions{margin-bottom:28px}
.nutrition-adjust-premium>.guided-saved{border:1px solid #3d555e;border-radius:14px;padding:18px!important;background:#14262d!important;margin-top:22px!important}

.nutrition-polish-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.nutrition-polish-head>div{min-width:0}.nutrition-polish-badge{flex:none;border:1px solid #617d42;background:#24362b;color:#dfff9a;border-radius:999px;padding:7px 10px;font-size:9px;font-weight:900;letter-spacing:.05em}
.nutrition-portion-studio{border-top:1px solid #3c535c!important;padding-top:24px!important}
.nutrition-portion-studio .individual-portion-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0 16px}
.nutrition-portion-card{position:relative;overflow:hidden;padding:15px;border:1px solid #405862;border-radius:13px;background:linear-gradient(145deg,#172a32,#132129);gap:7px!important;min-width:0}
.nutrition-portion-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#607c45;transition:background .18s}
.nutrition-portion-card:focus-within{border-color:#39e2c2;box-shadow:0 0 0 1px rgba(57,226,194,.2)}.nutrition-portion-card:focus-within:before{background:#39e2c2}
.nutrition-portion-slot{color:#39e2c2;font-size:8px;font-weight:950;letter-spacing:.14em;text-transform:uppercase}
.nutrition-portion-card>strong{display:block;min-height:33px;color:#f0f5f5;font-size:13px;line-height:1.3;overflow-wrap:anywhere}
.nutrition-portion-control{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:center;margin-top:5px;padding-top:10px;border-top:1px solid #334a53}
.nutrition-portion-control>span{font-size:9px;color:#9eb0b6;font-weight:800}
.nutrition-portion-control .field{min-height:42px!important;background:#0f1c23!important;border-color:#50656e!important;color:#e8f1f1!important;font-size:13px!important;font-weight:850!important;padding:8px 10px!important}
.nutrition-portion-card>small{font-size:8.5px!important;color:#82979f!important;line-height:1.4!important}
.nutrition-portion-result{border-color:#526d4a!important;background:radial-gradient(circle at 80% 0,rgba(57,226,194,.06),transparent 30%),linear-gradient(145deg,#1b3032,#17262e)!important}

.nutrition-week-dashboard{padding:0!important;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(310px,.75fr);overflow:hidden;background:radial-gradient(circle at 85% 20%,rgba(57,226,194,.11),transparent 34%),linear-gradient(145deg,#13252d,#0d181f)!important;border-color:#405762!important;margin-bottom:16px}
.nutrition-week-dashboard-copy{padding:30px 32px}.nutrition-week-dashboard-copy h2{margin:9px 0 12px;font-size:clamp(34px,4.2vw,55px);line-height:.92;letter-spacing:-.05em;font-style:italic;color:#f6f8f8}.nutrition-week-dashboard-copy h2 em{font-style:inherit;color:#39e2c2}.nutrition-week-dashboard-copy p{max-width:620px;margin:0;color:#b5c4c9;font-size:12px;line-height:1.58}
.nutrition-week-dashboard-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:#324851;border-left:1px solid #324851}
.nutrition-week-dashboard-metrics>div{display:flex;flex-direction:column;justify-content:center;align-items:center;min-width:0;padding:20px 10px;background:#101d24;text-align:center}
.nutrition-week-dashboard-metrics strong{color:#dfff92;font-size:31px;line-height:1;font-variant-numeric:tabular-nums}.nutrition-week-dashboard-metrics span{margin-top:8px;color:#8ea2a9;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.07em;line-height:1.35}
.nutrition-week-selector-premium{padding:20px!important;background:linear-gradient(145deg,#15262e,#111e25)!important;border-color:#3f555e!important}.nutrition-week-selector-premium .nutrition-week-head{align-items:center}.nutrition-week-selector-premium .nutrition-week-head p{margin:6px 0 0;color:#8fa2a9;font-size:10px}.nutrition-week-selector-premium .nutrition-days{gap:7px}.nutrition-week-selector-premium .nutrition-day{min-height:88px;border-radius:11px;background:#182a32;border-color:#3d535d;transition:transform .16s,border-color .16s,background .16s}.nutrition-week-selector-premium .nutrition-day:hover{transform:translateY(-1px);border-color:#637c58}.nutrition-week-selector-premium .nutrition-day.is-selected{outline:0;border-color:#39e2c2;background:linear-gradient(145deg,#273d2d,#1a2d29);box-shadow:0 0 0 1px rgba(57,226,194,.18)}.nutrition-week-selector-premium .nutrition-day strong{font-size:12px}.nutrition-week-selector-premium .nutrition-day span{font-size:8px}.nutrition-week-selector-premium .nutrition-day small{font-size:9px}

.nutrition-week-view .weekly-overview,.nutrition-week-view .personal-week-panel,.nutrition-week-view .weekly-auto-plan,.nutrition-week-view .daily-nutrition,.nutrition-week-view .meal-registration-summary{background:linear-gradient(145deg,#14252d,#101d24);border-color:#3c535c}
.nutrition-week-view .weekly-overview{padding:20px}.nutrition-week-view .weekly-overview-head h2,.nutrition-week-view .personal-week-head h2{font-size:24px;letter-spacing:-.035em}.nutrition-week-view .weekly-overview-hint{border:1px dashed #425a64;background:#13242c;border-radius:12px;padding:15px;color:#9fb1b7}.nutrition-week-view .weekly-overview-day{background:#172932;border-color:#3d555f}.nutrition-week-view .weekly-overview-day.is-current{background:#1d3229;border-color:#39e2c2}

.nutrition-shopping-premium{padding:0!important;overflow:hidden;background:linear-gradient(150deg,#13242c,#0f1b22)!important;border-color:#405761!important;box-shadow:0 20px 55px rgba(0,0,0,.15)}
.nutrition-shopping-head{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 26px;background:radial-gradient(circle at 80% 0,rgba(57,226,194,.09),transparent 35%),#13242c;border-bottom:1px solid #334a53}.nutrition-shopping-head h2{margin:5px 0 7px;font-size:28px;letter-spacing:-.04em}.nutrition-shopping-head p{margin:0;color:#9fb0b6;font-size:11px;line-height:1.5}.nutrition-shopping-summary{flex:none;display:grid;justify-items:end;gap:9px}.nutrition-shopping-summary>span{color:#9db0b6;font-size:9px;text-transform:uppercase;letter-spacing:.06em}.nutrition-shopping-summary>span strong{color:#dfff94;font-size:20px;margin-right:4px}.nutrition-shopping-summary .btn{min-width:140px}
.nutrition-shopping-foundation{margin:18px 26px!important;background:#162a25!important;border-color:#496646!important;border-radius:11px!important;padding:12px 14px!important}.nutrition-shopping-foundation strong{font-size:10px}.nutrition-shopping-foundation span{font-size:9px!important}
.nutrition-shopping-categories{padding:0 26px 6px;gap:12px!important}.nutrition-shopping-category{border:1px solid #394f58;border-radius:13px;background:#13232b;overflow:hidden;gap:0!important}.nutrition-shopping-category-head{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px 13px;border-bottom:1px solid #334a53;background:#172a32}.nutrition-shopping-category-head>span{width:30px;height:30px;display:grid;place-items:center;border-radius:8px;background:#24372b;color:#39e2c2;font-size:9px;font-weight:950}.nutrition-shopping-category-head h3{margin:0!important;font-size:11px!important;color:#edf4f4!important;letter-spacing:.04em!important}.nutrition-shopping-category-head em{font-style:normal;color:#869ba3;font-size:8.5px;white-space:nowrap}.nutrition-shopping-category .shopping-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:0!important;margin:0!important}.nutrition-shopping-item{border:0!important;border-right:1px solid #2d424b!important;border-bottom:1px solid #2d424b!important;border-radius:0!important;background:#101f26!important;padding:12px 13px!important;min-height:50px}.nutrition-shopping-item span{font-size:10px!important;color:#d7e1e3!important}.nutrition-shopping-item strong{font-size:11px!important;color:#d9ff8e!important}.nutrition-shopping-export{margin:18px 26px 12px!important;padding-top:17px;border-top:1px solid #334b54}.nutrition-shopping-closed{margin:0 26px 20px;padding:19px;border:1px dashed #50645c;border-radius:13px;background:linear-gradient(145deg,#16272e,#122128);display:grid;gap:5px}.nutrition-shopping-closed>span{color:#39e2c2;font-size:8px;font-weight:950;letter-spacing:.14em}.nutrition-shopping-closed strong{font-size:17px;color:#f0f5f4}.nutrition-shopping-closed small{color:#91a5ac;font-size:10px;line-height:1.5}.nutrition-shopping-premium>.muted-small{margin:0 26px 20px!important}

@media(max-width:1000px){.nutrition-adjust-hero,.nutrition-week-dashboard{grid-template-columns:1fr}.nutrition-adjust-snapshot{max-width:520px}.nutrition-week-dashboard-metrics{border-left:0;border-top:1px solid #324851}.nutrition-shopping-category .shopping-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.nutrition-recipe-jump-premium{padding:15px!important}.nutrition-adjust-hero{padding:23px 19px 20px;gap:18px}.nutrition-adjust-hero h2,.nutrition-week-dashboard-copy h2{font-size:37px!important}.nutrition-adjust-snapshot{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.nutrition-adjust-snapshot>div{padding:10px 5px}.nutrition-adjust-snapshot strong{font-size:18px}.nutrition-adjust-snapshot span{font-size:7px}.nutrition-adjust-premium>.nutrition-adjust-steps{padding:13px 18px}.nutrition-adjust-premium>.guided-step-head,.nutrition-adjust-premium>.energy-reference-form,.nutrition-adjust-premium>.energy-reference-output,.nutrition-adjust-premium>.premium-method,.nutrition-adjust-premium>.individual-proposal,.nutrition-adjust-premium>.guided-save,.nutrition-adjust-premium>.guided-saved,.nutrition-adjust-premium>.guided-extras-head,.nutrition-adjust-premium>.individual-portions,.nutrition-adjust-premium>.premium-preparation,.nutrition-adjust-premium>.muted-small,.nutrition-adjust-premium>.energy-reference-alert{margin-left:18px;margin-right:18px}.nutrition-portion-studio .individual-portion-grid{grid-template-columns:1fr}.nutrition-portion-card>strong{min-height:0}.nutrition-polish-head{flex-direction:column}.nutrition-polish-badge{align-self:flex-start}.nutrition-week-dashboard-copy{padding:23px 19px}.nutrition-week-dashboard-metrics strong{font-size:23px}.nutrition-week-selector-premium{padding:15px!important}.nutrition-week-selector-premium .nutrition-week-head{align-items:flex-start;flex-direction:column}.nutrition-week-selector-premium .nutrition-days{grid-template-columns:repeat(4,minmax(0,1fr))}.nutrition-week-selector-premium .nutrition-day{min-height:72px}.nutrition-shopping-head{align-items:flex-start;flex-direction:column;padding:20px 18px}.nutrition-shopping-summary{width:100%;grid-template-columns:1fr auto;align-items:center;justify-items:start}.nutrition-shopping-summary .btn{min-width:0}.nutrition-shopping-foundation{margin:16px 18px!important}.nutrition-shopping-categories{padding:0 18px 5px}.nutrition-shopping-category .shopping-grid{grid-template-columns:1fr 1fr}.nutrition-shopping-export{margin:16px 18px 10px!important}.nutrition-shopping-closed{margin:0 18px 18px}.nutrition-shopping-premium>.muted-small{margin:0 18px 18px!important}}
@media(max-width:430px){.nutrition-adjust-hero h2,.nutrition-week-dashboard-copy h2{font-size:32px!important}.nutrition-adjust-snapshot{grid-template-columns:1fr 1fr}.nutrition-adjust-snapshot>div:last-child{grid-column:1/-1}.nutrition-adjust-steps{gap:4px!important}.nutrition-adjust-steps span{padding:8px!important}.nutrition-adjust-steps span i{font-size:9px}.nutrition-week-dashboard-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.nutrition-week-dashboard-metrics>div{padding:15px 5px}.nutrition-week-dashboard-metrics strong{font-size:20px}.nutrition-week-dashboard-metrics span{font-size:7px}.nutrition-week-selector-premium .nutrition-days{grid-template-columns:repeat(2,minmax(0,1fr))}.nutrition-shopping-category-head{grid-template-columns:30px minmax(0,1fr)}.nutrition-shopping-category-head em{grid-column:2}.nutrition-shopping-category .shopping-grid{grid-template-columns:1fr}.nutrition-shopping-summary{grid-template-columns:1fr}.nutrition-shopping-summary .btn{width:100%}.nutrition-shopping-export{display:grid!important}.nutrition-shopping-export .btn{width:100%}}

/* ==========================================================
   FORMA v0.19.6 · WEEK & SHOPPING CLARITY
   Reduce texto visible: estados, chips y ayuda bajo demanda.
   ========================================================== */
.weekly-overview-clarity .weekly-overview-head{align-items:flex-start}
.weekly-overview-summary{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}
.weekly-overview-summary>span{display:inline-flex;align-items:baseline;gap:5px;padding:7px 9px;border:1px solid #3b535c;border-radius:999px;background:#172831;color:#8fa4ab;font-size:8.5px;font-weight:850;text-transform:none;letter-spacing:.025em}
.weekly-overview-summary strong{color:#dfff91;font-size:12px;letter-spacing:0}
.weekly-overview-quick{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:17px}
.weekly-overview-quick>div{min-width:0;padding:15px 12px;border:1px solid #344d57;border-radius:12px;background:linear-gradient(145deg,#172a32,#112129);display:grid;gap:5px}
.weekly-overview-quick strong{font-size:22px;line-height:1;color:#e8f8bc;font-variant-numeric:tabular-nums}
.weekly-overview-quick span{color:#859aa2;font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:.07em}
.weekly-overview-export{padding-top:15px;border-top:1px solid #314952}
.weekly-overview-export span{font-size:9px!important;color:#859aa2!important;text-transform:uppercase;letter-spacing:.055em}
.nutrition-info-details{margin-top:13px;border:1px solid #314951;border-radius:10px;background:#0f1d24;overflow:hidden}
.nutrition-info-details summary{cursor:pointer;list-style:none;padding:10px 12px;color:#9fb3ba;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.055em;display:flex;align-items:center;justify-content:space-between;gap:10px}
.nutrition-info-details summary::-webkit-details-marker{display:none}
.nutrition-info-details summary::after{content:'+';color:#39e2c2;font-size:15px;line-height:1;font-weight:700}
.nutrition-info-details[open] summary::after{content:'–'}
.nutrition-info-details p{margin:0;padding:0 12px 12px;color:#8fa3aa;font-size:10px;line-height:1.55}
.weekly-overview-info{margin-top:14px}

.daily-nutrition-clarity .daily-nutrition-head{margin-bottom:14px}
.daily-head-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.daily-head-chips span{padding:6px 8px;border:1px solid #3b525b;border-radius:999px;background:#172832;color:#99adb4;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.045em}
.daily-nutrition-clarity .daily-coverage{align-self:flex-start;min-width:92px;text-align:center}
.daily-nutrition-pending{display:flex;align-items:center;gap:11px!important;padding:13px 14px!important;background:linear-gradient(145deg,#2a3029,#222a26)!important}
.daily-pending-mark{flex:none;width:31px;height:31px;border-radius:9px;display:grid;place-items:center;background:#3d472f;color:#dfff8b;font-size:17px;font-weight:950}
.daily-nutrition-pending>div{display:grid;gap:3px;min-width:0}
.daily-nutrition-pending strong{font-size:12px;color:#f1f5ef}
.daily-nutrition-pending small{font-size:9px;color:#a9b5aa;font-weight:650;line-height:1.45}
.daily-nutrition-missing{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px!important}
.daily-nutrition-missing li{padding:10px!important;background:#172a32!important;border-color:#38505a!important}
.daily-nutrition-missing li strong{font-size:10px;color:#dfff91}
.daily-nutrition-missing li span{font-size:9px!important;line-height:1.35!important}
.daily-batch-heading-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:15px}
.daily-batch-heading-row .daily-batch-heading{margin:0}
.daily-batch-heading-row span{padding:6px 8px;border-radius:999px;background:#1b3036;border:1px solid #3d545d;color:#95a9b0;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}

.meal-registration-clarity .meal-registration-list{margin-top:13px}
.meal-registration-clarity .meal-registration-reference{color:#92a7ae!important;font-size:8px!important;text-transform:uppercase;letter-spacing:.035em}

@media(max-width:700px){
  .weekly-overview-quick{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
  .weekly-overview-quick>div{padding:12px 8px}
  .weekly-overview-quick strong{font-size:18px}
  .weekly-overview-quick span{font-size:7px}
  .daily-nutrition-missing{grid-template-columns:1fr}
}
@media(max-width:430px){
  .weekly-overview-summary{gap:5px}
  .weekly-overview-summary>span{padding:6px 7px;font-size:7px}
  .weekly-overview-summary strong{font-size:10px}
  .weekly-overview-quick{grid-template-columns:1fr 1fr}
  .weekly-overview-quick>div:last-child{grid-column:1/-1}
  .daily-head-chips{gap:5px}
  .daily-head-chips span{font-size:7px}
}

/* ============================================================
   FORMA v0.21.0 · PREMIUM PROGRESS + PROFILE
   Capa visual. No cambia cálculos, persistencia ni contratos.
   ============================================================ */
.premium-progress-page,.premium-profile-page{display:grid;gap:18px;padding-bottom:8px}
.premium-progress-heading,.premium-profile-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin:2px 0 1px}
.premium-progress-heading h1,.premium-profile-heading h1{margin:5px 0 0;color:#f7fafb;font-size:clamp(32px,4.5vw,58px);line-height:.94;letter-spacing:-2.5px;font-weight:950;font-style:italic;text-transform:uppercase}
.premium-progress-heading h1 em,.premium-profile-heading h1 em{font-style:inherit;color:var(--forma-lime)}
.premium-progress-heading p,.premium-profile-heading p{margin:9px 0 0;max-width:700px;color:#9dafb9;font-size:12px;line-height:1.55}
.premium-progress-heading-mark,.premium-profile-heading-mark{display:grid;text-align:right;color:#eef5f7;font-weight:950;font-style:italic;letter-spacing:2px;font-size:15px}
.premium-progress-heading-mark small,.premium-profile-heading-mark small{font-size:7px;letter-spacing:1.7px;color:#6f8491;margin-top:3px}

.premium-progress-hero{min-height:340px!important;display:grid!important;grid-template-columns:minmax(0,1.4fr) minmax(220px,.6fr)!important;gap:28px!important;padding:38px 42px!important;align-items:center!important;border-radius:10px!important;background:radial-gradient(circle at 82% 28%,rgba(57,226,194,.12),transparent 25%),linear-gradient(125deg,#071016,#12212a 65%,#17272f)!important;border-left:5px solid var(--forma-lime)!important;box-shadow:0 24px 70px rgba(0,0,0,.2)}
.premium-progress-hero::after{content:""!important;position:absolute!important;width:420px!important;height:420px!important;right:-110px!important;top:-140px!important;border:1px solid rgba(57,226,194,.13)!important;box-shadow:0 0 0 56px rgba(57,226,194,.025),0 0 0 112px rgba(57,226,194,.018)!important;opacity:1!important}
.premium-progress-hero-copy{position:relative;z-index:1;min-width:0}
.premium-progress-hero-copy h2{margin:12px 0 12px!important;max-width:760px!important;color:#f8fafb!important;font-size:clamp(39px,5.2vw,70px)!important;line-height:.91!important;letter-spacing:-3px!important;font-weight:950!important;font-style:italic!important;text-transform:uppercase!important}
.premium-progress-hero-copy h2 em{font-style:inherit;color:var(--forma-lime)}
.premium-progress-hero-copy>p{margin:0;max-width:620px!important;color:#b7c6ce!important;font-size:12px!important;line-height:1.65!important}
.premium-progress-hero-stats{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:7px!important;margin-top:24px}
.premium-progress-hero-stats .progress-stat{min-width:0;padding:13px 11px!important;border-radius:7px!important;background:rgba(16,30,38,.82)!important;border-color:#334b55!important;backdrop-filter:blur(5px)}
.premium-progress-hero-stats .progress-stat strong{font-size:28px!important;line-height:1!important;color:#e8ffb2!important}
.premium-progress-hero-stats .progress-stat>span{font-size:9px!important;text-transform:uppercase;letter-spacing:.065em;color:#d6e1e5!important}
.premium-progress-hero-stats .progress-stat small{font-size:8px!important;color:#8397a1!important}
.premium-progress-hero-orbit{position:relative;z-index:1;justify-self:center;width:190px;height:190px;border-radius:50%;display:grid;place-content:center;text-align:center;background:radial-gradient(circle,#14272e 0 54%,transparent 55%),conic-gradient(var(--forma-lime) 0 68%,#243942 68% 100%);box-shadow:0 0 0 11px rgba(57,226,194,.03),0 18px 60px rgba(0,0,0,.3)}
.premium-progress-hero-orbit::before{content:"";position:absolute;inset:9px;border-radius:50%;border:1px solid rgba(57,226,194,.16)}
.premium-progress-hero-orbit span{font-size:54px;line-height:.9;color:#f4f8fa;font-weight:950;letter-spacing:-3px;font-variant-numeric:tabular-nums}.premium-progress-hero-orbit small{margin-top:8px;color:#9aadad;font-size:8px;letter-spacing:.18em;font-weight:900}

.premium-progress-snapshot{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}
.premium-progress-snapshot article{padding:17px 18px;border:1px solid #334a54;border-radius:9px;background:linear-gradient(145deg,#152730,#0f1d24);display:grid;gap:5px;min-width:0}
.premium-progress-snapshot article>span{font-size:8px}.premium-progress-snapshot article>strong{font-size:24px;color:#f1f7f8;letter-spacing:-.7px;overflow-wrap:anywhere}.premium-progress-snapshot article>small{font-size:9px;line-height:1.45;color:#8fa2aa}
.premium-progress-weight-grid{margin-top:0!important;grid-template-columns:minmax(0,1.4fr) minmax(300px,.6fr)!important}
.premium-weight-chart,.premium-weight-entry{background:linear-gradient(150deg,#14252e,#101d24)!important;border-color:#344b55!important;border-radius:9px!important}
.premium-weight-chart .panel-head{align-items:flex-start}.premium-weight-chart .panel-head h2,.premium-weight-entry h2{font-size:20px}
.premium-weight-chart .chart-wrap{height:190px!important}.premium-weight-chart .chart-wrap svg{color:#9eb1b9}.premium-weight-chart .chart-wrap path[stroke="#73e0af"]{stroke:#39e2c2!important}.premium-weight-chart .chart-wrap circle{fill:#39e2c2!important}
.premium-weight-chart .weight-empty-icon,.premium-weight-entry .weight-entry-symbol{background:#23392a!important;color:#39e2c2!important}
.premium-progress-info,.premium-profile-details{margin-top:13px;border-top:1px solid #304851;padding-top:10px}.premium-progress-info summary,.premium-profile-details summary{cursor:pointer;color:#a7bac1;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.055em}.premium-progress-info p,.premium-profile-details p{margin:9px 0 0;color:#8fa2aa;font-size:10px;line-height:1.55}
.premium-weight-entry .weight-number{color:#f5f8f9;font-size:44px}.premium-weight-entry .weight-number small{color:#8fa2aa}.premium-weight-delta{display:grid;gap:3px;margin:15px 0 4px;padding:11px 12px;border:1px solid #334b54;border-radius:7px;background:#112129}.premium-weight-delta span{font-size:8px;color:#8da0a8;text-transform:uppercase;letter-spacing:.06em}.premium-weight-delta strong{font-size:15px;color:#dfff91}.premium-weight-delta small{font-size:8px;color:#7f939c}
.premium-progress-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-top:5px;padding:0 2px}.premium-progress-section-head h2{margin:5px 0 0;color:#f0f6f8;font-size:24px;letter-spacing:-.7px}.premium-progress-section-head p{margin:0;color:#81969f;font-size:9px;text-align:right}
.premium-progress-page .weekly-activity,.premium-progress-page .exercise-trends{margin-top:0!important;background:linear-gradient(150deg,#14252e,#101d24)!important;border-color:#344b55!important;border-radius:9px!important}
.premium-progress-page .weekly-activity>.panel-head,.premium-progress-page .exercise-trends>.panel-head{display:none}
.premium-progress-page .weekly-activity>p:first-of-type,.premium-progress-page .exercise-trends>p:first-of-type{margin-top:0;color:#8fa3ab;font-size:9px}
.premium-progress-page .weekly-activity-grid{gap:8px}.premium-progress-page .weekly-activity-card{background:#112129;border-color:#304750;border-radius:8px;padding:13px}.premium-progress-page .weekly-activity-card strong{color:#eff7f8}.premium-progress-page .weekly-activity-card strong span{color:#899da5}.premium-progress-page .weekly-activity-card p{color:#c3d1d6;font-size:10px}.premium-progress-page .weekly-activity-card small{color:#82969f;font-size:8px}
.premium-progress-page .exercise-trends-grid{gap:9px}.premium-progress-page .exercise-trend-card{background:#112129;border-color:#304750;border-radius:8px;padding:14px}.premium-progress-page .exercise-trend-card>strong{color:#f0f6f7;font-size:12px}.premium-progress-page .exercise-trend-value{color:#dfff91;font-size:25px}.premium-progress-page .exercise-trend-card small,.premium-progress-page .exercise-trend-card p{color:#879aa3;font-size:9px}.premium-progress-page .exercise-trend-card summary{color:#c2d3d8;font-size:9px}.premium-progress-page .exercise-chart{background:#0e1c23;border:1px solid #29414a;border-radius:7px}
.premium-history-title{margin-top:4px}.premium-history-title .progress-overline{color:var(--forma-lime)}.premium-progress-history .history-card{background:linear-gradient(145deg,#14252e,#101d24)!important;border-color:#334b54!important;border-radius:9px!important}.premium-progress-history .progress-accordion>summary:hover{background:#172a32}.premium-progress-history .history-card-icon{background:#253a2b!important;color:#39e2c2!important}.premium-progress-history .history-status{background:#263c2b;color:#dcff9c}.premium-progress-history .history-action{color:#39e2c2}.premium-progress-history .history-expanded{background:#0f1d24!important;border-color:#2f454e!important}.premium-progress-history .history-exercise-new{background:#152831!important;border-color:#334b55!important}.premium-progress-history .history-set-list>span{background:#0e1d24;color:#cbd8dd}.premium-progress-history .history-set-list b{color:#39e2c2}

.premium-profile-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,1.05fr);gap:26px;align-items:center;padding:28px 30px;border:1px solid #344b55;border-left:5px solid var(--forma-lime);border-radius:10px;background:radial-gradient(circle at 93% 20%,rgba(57,226,194,.09),transparent 30%),linear-gradient(145deg,#14252e,#0e1b22)}
.premium-profile-identity{display:flex;align-items:center;gap:19px;min-width:0}.premium-profile-avatar{width:78px;height:78px;flex:0 0 78px;border-radius:18px;background:linear-gradient(145deg,var(--forma-lime-bright),#39e2c2);display:grid;place-items:center;color:#071015;font-size:38px;font-weight:950;font-style:italic;box-shadow:0 16px 45px rgba(57,226,194,.08)}
.premium-profile-identity h2{margin:6px 0 5px;color:#f7fafb;font-size:clamp(27px,3.4vw,43px);line-height:1;letter-spacing:-1.4px}.premium-profile-identity p{margin:0;color:#9eb0b8;font-size:11px}.premium-profile-statuses{display:flex;gap:6px;flex-wrap:wrap;margin-top:12px}.premium-profile-statuses span{display:inline-flex;align-items:center;gap:5px;padding:6px 8px;border:1px solid #3b535d;border-radius:999px;background:#12242b;color:#b9c8ce;font-size:8px}.premium-profile-statuses .icon{width:11px;height:11px;color:#39e2c2}
.premium-profile-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.premium-profile-facts article{padding:12px;border:1px solid #344b54;border-radius:7px;background:rgba(15,30,38,.82);min-width:0}.premium-profile-facts span{display:block;color:#7f959e;font-size:7px;font-weight:900;letter-spacing:.1em;margin-bottom:5px}.premium-profile-facts strong{display:block;color:#ecf4f6;font-size:10px;line-height:1.4;overflow-wrap:anywhere}
.premium-mode-info{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0!important;padding:16px 18px!important;border-radius:8px!important;background:#102027!important;border-color:#304750!important}.premium-mode-info h2{font-size:14px!important;margin:3px 0!important}.premium-mode-info p{margin:0!important;font-size:9px!important;color:#869aa2!important}.premium-mode-info .btn{flex:none}
.premium-profile-page .account-ready-card{border-radius:9px!important;background:linear-gradient(145deg,#14262e,#101e25)!important;border-color:#354d57!important}.premium-profile-page .account-ready-head h2{font-size:22px}.premium-profile-page .account-ready-head p{font-size:10px;color:#8ea2aa}.premium-profile-page .account-status-grid{gap:7px}.premium-profile-page .account-status-grid article{border-radius:8px;background:#10222a;border-color:#324a54;padding:12px}.premium-profile-page .account-status-grid span{font-size:7px}.premium-profile-page .account-status-grid strong{font-size:12px}.premium-profile-page .account-status-grid small{font-size:8px}.premium-profile-page .account-provider{border-radius:8px;background:#11232b;border-color:#334c56}.premium-profile-page .account-ready-note{font-size:9px;color:#83979f}
.premium-profile-page .beta-control-center{border-radius:9px!important;background:linear-gradient(145deg,#14262d,#101e24)!important;border-color:#425b48!important}.premium-profile-page .beta-control-head p{font-size:9px;color:#879aa1}.premium-profile-page .beta-control-card{border-radius:8px;background:#11232b}.premium-profile-page .beta-control-privacy{font-size:8px!important}
.premium-profile-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-top:4px;padding:0 2px}.premium-profile-section-head h2{margin:5px 0 0;color:#f0f6f8;font-size:24px;letter-spacing:-.7px}.premium-profile-section-head p{margin:0;color:#81969f;font-size:9px;text-align:right}.premium-profile-page .plan-config{margin:0;background:linear-gradient(150deg,#14252e,#101d24);border-color:#344b55;border-radius:9px}.premium-profile-page .plan-config h2{font-size:22px}.premium-profile-page .plan-template-list>div,.premium-profile-page .plan-preview-list>div{background:#112129;border-color:#304750;border-radius:7px}
.premium-profile-grid{grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr)!important}.premium-profile-preferences,.premium-data-card,.premium-backup-card{background:linear-gradient(150deg,#14252e,#101d24)!important;border-color:#344b55!important;border-radius:9px!important}.premium-profile-preferences .panel-head{align-items:flex-start}.premium-profile-preferences .panel-head h2,.premium-data-card h2,.premium-backup-card h2{font-size:20px;margin-top:5px}.premium-profile-preferences .field{background:#0f1e25;border-color:#354d57;border-radius:7px}.premium-profile-preferences .weekday-option span{background:#11232b;border-color:#334b55}.premium-profile-preferences .weekday-option input:checked+span{background:#33472c;border-color:#39e2c2;color:#ddff99}.premium-profile-preferences .preference-note{background:#172a25;border:1px solid #39523d;color:#9db1a0;border-radius:7px}
.premium-data-status{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:12px 0}.premium-data-status>span{padding:10px 8px;background:#102129;border:1px solid #314a53;border-radius:7px;display:grid;gap:4px;min-width:0}.premium-data-status small{font-size:7px!important;color:#7f949c!important;text-transform:uppercase;letter-spacing:.06em}.premium-data-status strong{font-size:10px;color:#dfff91;overflow-wrap:anywhere}.premium-backup-count{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:13px 0}.premium-backup-count>span{padding:11px;border:1px solid #314a53;border-radius:7px;background:#102129;display:grid;gap:3px}.premium-backup-count strong{font-size:22px;color:#f0f7f8}.premium-backup-count small{font-size:8px!important;color:#83969e!important}.premium-backup-card .backup-buttons{display:grid;grid-template-columns:1fr 1fr;gap:7px}.premium-backup-card .backup-buttons .btn{white-space:normal}

@media(max-width:1000px){.premium-progress-hero{grid-template-columns:1fr!important}.premium-progress-hero-orbit{position:absolute;right:28px;top:28px;width:130px;height:130px;opacity:.5}.premium-progress-hero-orbit span{font-size:38px}.premium-progress-hero-copy{padding-right:135px}.premium-progress-weight-grid{grid-template-columns:1fr!important}.premium-profile-hero{grid-template-columns:1fr}.premium-profile-facts{grid-template-columns:repeat(4,minmax(0,1fr))}.premium-profile-grid{grid-template-columns:1fr!important}}
@media(max-width:700px){.premium-progress-page,.premium-profile-page{gap:13px}.premium-progress-heading,.premium-profile-heading{align-items:flex-start}.premium-progress-heading-mark,.premium-profile-heading-mark{display:none}.premium-progress-heading h1,.premium-profile-heading h1{font-size:35px;letter-spacing:-1.6px}.premium-progress-heading p,.premium-profile-heading p{font-size:10px}.premium-progress-hero{min-height:0!important;padding:24px 18px!important;display:block!important}.premium-progress-hero-copy{padding-right:0}.premium-progress-hero-copy h2{font-size:36px!important;line-height:.94!important;letter-spacing:-1.5px!important}.premium-progress-hero-copy>p{font-size:10px!important}.premium-progress-hero-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important;margin-top:16px}.premium-progress-hero-orbit{display:none}.premium-progress-snapshot{grid-template-columns:1fr 1fr}.premium-progress-snapshot article:last-child{grid-column:1/-1}.premium-progress-snapshot article{padding:13px}.premium-progress-snapshot article>strong{font-size:20px}.premium-progress-section-head,.premium-profile-section-head{align-items:flex-start;flex-direction:column;gap:3px}.premium-progress-section-head h2,.premium-profile-section-head h2{font-size:20px}.premium-progress-section-head p,.premium-profile-section-head p{text-align:left}.premium-progress-page .weekly-activity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.premium-progress-page .exercise-trends-grid{grid-template-columns:1fr}.premium-profile-hero{padding:20px 17px;gap:18px}.premium-profile-identity{align-items:flex-start}.premium-profile-avatar{width:60px;height:60px;flex-basis:60px;border-radius:13px;font-size:29px}.premium-profile-identity h2{font-size:27px}.premium-profile-facts{grid-template-columns:1fr 1fr}.premium-mode-info{align-items:flex-start;flex-direction:column}.premium-mode-info .btn{width:100%}.premium-data-status{grid-template-columns:1fr 1fr}.premium-data-status>span:last-child{grid-column:1/-1}.premium-backup-card .backup-buttons{grid-template-columns:1fr}}
@media(max-width:390px){.premium-progress-heading h1,.premium-profile-heading h1{font-size:31px}.premium-progress-hero-copy h2{font-size:31px!important}.premium-progress-hero-stats{gap:5px}.premium-progress-hero-stats .progress-stat strong{font-size:24px!important}.premium-progress-snapshot{grid-template-columns:1fr}.premium-progress-snapshot article:last-child{grid-column:auto}.premium-profile-facts{grid-template-columns:1fr}.premium-profile-statuses{display:grid}.premium-profile-statuses span{justify-content:center}.premium-profile-identity{gap:12px}.premium-profile-avatar{width:52px;height:52px;flex-basis:52px;font-size:25px}}

/* FORMA v0.24.0 — Beta Readiness + Commercial Foundation */
/* FORMA v0.25.0 — Beta Feedback Delivery */
.beta-feedback-fab{position:fixed;right:22px;bottom:22px;z-index:45;border:1px solid rgba(57,226,194,.42);background:#39e2c2;color:#081014;border-radius:999px;padding:10px 14px;font:900 10px/1 inherit;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 12px 34px rgba(0,0,0,.28);cursor:pointer;transition:transform .16s ease,box-shadow .16s ease}
.beta-feedback-fab:hover{transform:translateY(-2px);box-shadow:0 16px 40px rgba(0,0,0,.34)}.beta-feedback-fab[hidden]{display:none!important}
.beta-start-card{display:grid;grid-template-columns:minmax(260px,.85fr) minmax(420px,1.35fr);gap:18px;align-items:center;padding:18px 20px;border:1px solid #395044;border-left:4px solid var(--forma-lime);border-radius:10px;background:linear-gradient(135deg,#13242a,#0f1e23);position:relative;overflow:hidden}
.beta-start-card:after{content:'BETA';position:absolute;right:-8px;top:-20px;font-size:72px;font-weight:950;font-style:italic;color:rgba(57,226,194,.035);pointer-events:none}.beta-start-copy h2{margin:5px 0 7px;color:#f5fafb;font-size:20px;letter-spacing:-.5px}.beta-start-copy p{margin:0;color:#8ea2a9;font-size:9px;line-height:1.6}.beta-start-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.beta-start-step{display:flex;gap:9px;align-items:flex-start;text-align:left;padding:10px;border:1px solid #314850;border-radius:8px;background:#102129;color:#dce7ea;cursor:pointer}.beta-start-step>span{display:grid;place-items:center;width:25px;height:25px;flex:0 0 25px;border-radius:7px;background:#1b313a;color:#39e2c2;font-weight:950}.beta-start-step strong{display:block;font-size:9px}.beta-start-step small{display:block;margin-top:3px;color:#81969e;font-size:7px;line-height:1.4}.beta-start-step.is-done{border-color:#415a3d;background:#14271f}.beta-start-step.is-done>span{background:#2b452a}.beta-start-dismiss{position:absolute;left:20px;bottom:10px;border:0;background:transparent;color:#657981;font-size:7px;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.beta-quickstart-modal{width:min(720px,calc(100vw - 28px))!important}.beta-quickstart-modal>p{color:#95a8af;max-width:650px}.beta-quickstart-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:18px 0}.beta-quickstart-item{display:flex;gap:11px;text-align:left;padding:13px;border:1px solid #334b54;background:#102129;border-radius:8px;color:#e9f1f3;cursor:pointer}.beta-quickstart-item>span{display:grid;place-items:center;width:30px;height:30px;flex:0 0 30px;border-radius:8px;background:#20353d;color:#39e2c2;font-weight:950}.beta-quickstart-item strong{display:block;font-size:10px}.beta-quickstart-item small{display:block;color:#81959d;font-size:8px;margin-top:3px;line-height:1.4}.beta-quickstart-item.is-done{border-color:#45613e;background:#14271f}.beta-quickstart-item.is-done>span{background:#314f2e}
.beta-feedback-modal{width:min(680px,calc(100vw - 28px))!important}.beta-feedback-modal>p{color:#90a3aa;line-height:1.6}.feedback-field{display:grid;gap:6px;margin:14px 0;color:#cdd9dd;font-size:9px;font-weight:800}.beta-feedback-text{min-height:132px;resize:vertical;line-height:1.5}.feedback-privacy{display:flex;gap:10px;align-items:flex-start;padding:11px 12px;border:1px solid #3d5145;border-radius:8px;background:#13241e;color:#8fa29a;font-size:8px}.feedback-privacy strong{color:#dfff98;white-space:nowrap}.feedback-privacy span{line-height:1.5}
.feedback-delivery-note{margin:10px 0 0!important;padding:9px 11px;border-radius:8px;background:rgba(57,226,194,.08);border:1px solid rgba(57,226,194,.22);color:#b8c8bd!important;font-size:8px!important}.feedback-delivery-note.is-local{background:rgba(255,255,255,.035);border-color:#34434a;color:#8ea0a6!important}.feedback-submit-status{margin:10px 0 0!important;padding:9px 11px;border-radius:8px;font-size:8px!important;font-weight:800;line-height:1.45}.feedback-submit-status.is-info{background:#172126;color:#b9c9cf}.feedback-submit-status.is-success{background:#15271c;color:#dfff98;border:1px solid #3b5b3d}.feedback-submit-status.is-error{background:#2b1919;color:#ffc0b8;border:1px solid #623b38}
.commercial-foundation{margin-top:4px!important;background:radial-gradient(circle at 92% 10%,rgba(57,226,194,.08),transparent 30%),linear-gradient(145deg,#14262e,#101e25)!important;border-color:#3a5046!important;border-radius:10px!important}.commercial-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.commercial-head h2{margin:5px 0 7px;font-size:22px;color:#eff6f7;letter-spacing:-.6px}.commercial-head p{margin:0;color:#8da0a8;font-size:9px;max-width:720px;line-height:1.6}.commercial-badge{display:inline-flex;align-items:center;justify-content:center;min-width:58px;padding:8px 11px;border-radius:999px;background:#39e2c2;color:#081015;font-size:8px;font-weight:950;letter-spacing:.08em}.commercial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:16px}.commercial-grid article{padding:13px;border:1px solid #334b54;border-radius:8px;background:#102129;display:grid;gap:4px}.commercial-grid article>span{color:#748991;font-size:7px;font-weight:900;letter-spacing:.1em}.commercial-grid strong{color:#ecf5f6;font-size:11px}.commercial-grid small{color:#7f939b;font-size:8px;line-height:1.45}
@media(max-width:900px){.beta-start-card{grid-template-columns:1fr}.beta-start-dismiss{position:static;justify-self:start;margin-top:-7px}.commercial-grid{grid-template-columns:1fr 1fr}.commercial-grid article:last-child{grid-column:1/-1}}
@media(max-width:700px){.beta-feedback-fab{right:12px;bottom:76px;padding:9px 11px;font-size:8px}.beta-start-card{padding:16px 14px;gap:13px}.beta-start-copy h2{font-size:18px}.beta-start-steps{grid-template-columns:1fr}.beta-quickstart-grid{grid-template-columns:1fr}.commercial-head{flex-direction:column}.commercial-grid{grid-template-columns:1fr}.commercial-grid article:last-child{grid-column:auto}.beta-feedback-modal,.beta-quickstart-modal{max-height:88vh;overflow:auto}}

/* FORMA v0.26.0 — Beta Operations / Feedback Inbox */
.beta-operations-card{display:flex;align-items:center;justify-content:space-between;gap:18px;border-color:#4a623f;background:linear-gradient(135deg,#13251f,#102128);padding:18px 20px}.beta-operations-card-copy{min-width:0}.beta-operations-card h2{margin:4px 0 6px;font-size:20px;color:#f4faf6}.beta-operations-card p{margin:0 0 5px;color:#bac9c2;font-size:10px}.beta-operations-card small{display:block;max-width:760px;color:#7f948b;font-size:8px;line-height:1.5}
.beta-operations-modal{width:min(920px,calc(100vw - 28px))!important;max-height:90vh;overflow:auto}.beta-ops-title-row{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.beta-ops-title-row h2{margin:4px 0 5px}.beta-ops-title-row p{margin:0;color:#91a4aa;font-size:9px}.beta-ops-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0 12px}.beta-ops-summary article{border:1px solid #344a43;border-radius:8px;background:#10231f;padding:11px 12px}.beta-ops-summary span{display:block;color:#82968f;font-size:7px;font-weight:900;letter-spacing:.12em}.beta-ops-summary strong{display:block;margin-top:4px;color:#eaffbb;font-size:22px}.beta-ops-filters{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:12px}.beta-ops-filters button{border:1px solid #354b53;background:#12242b;color:#aebfc5;border-radius:999px;padding:7px 10px;font:800 8px/1 inherit;cursor:pointer}.beta-ops-filters button span{margin-left:4px;color:#70868e}.beta-ops-filters button.is-active{border-color:#39e2c2;background:#203222;color:#e5ffad}.beta-ops-filters button.is-active span{color:#39e2c2}.beta-ops-list{display:grid;gap:9px;max-height:52vh;overflow:auto;padding-right:3px}.beta-ops-item{border:1px solid #334a52;border-left:4px solid #7b8a90;border-radius:9px;background:#102129;padding:12px 13px}.beta-ops-item.is-new{border-left-color:#39e2c2}.beta-ops-item.is-reviewed{border-left-color:#a7bcc4}.beta-ops-item.is-resolved{border-left-color:#557060;opacity:.86}.beta-ops-item-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.beta-ops-item-head>div{display:flex;gap:8px;align-items:center;min-width:0}.beta-ops-item-head strong{color:#f1f6f7;font-size:10px}.beta-ops-item-head time{color:#778c94;font-size:8px;white-space:nowrap}.beta-ops-status{border:1px solid #48613f;border-radius:999px;padding:4px 7px;color:#dfff9b;background:#17291c;font-size:7px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.beta-ops-item.is-reviewed .beta-ops-status{border-color:#4a5b61;background:#1a292f;color:#c6d2d6}.beta-ops-item.is-resolved .beta-ops-status{border-color:#405149;background:#17251f;color:#95aa9d}.beta-ops-item>p{margin:10px 0;color:#d4dfe2;font-size:10px;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}.beta-ops-meta{display:flex;flex-wrap:wrap;gap:5px}.beta-ops-meta span{border:1px solid #2f454d;background:#0d1c22;border-radius:999px;padding:5px 7px;color:#84989f;font-size:7px}.beta-ops-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.beta-ops-action{min-height:32px;padding:7px 10px;font-size:8px}.beta-ops-empty{display:grid;gap:5px;place-items:center;padding:30px 18px;border:1px dashed #38505a;border-radius:9px;color:#95a7ae}.beta-ops-empty strong{font-size:11px}.beta-ops-empty span{font-size:8px;color:#71858d}
@media(max-width:700px){.beta-operations-card{align-items:stretch;flex-direction:column;padding:15px}.beta-operations-card .btn{width:100%}.beta-ops-title-row{flex-direction:column}.beta-ops-title-row>.btn{width:100%}.beta-ops-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.beta-ops-summary article{padding:9px}.beta-ops-summary strong{font-size:18px}.beta-ops-list{max-height:48vh}.beta-ops-item-head{flex-direction:column}.beta-ops-item-head>div{flex-wrap:wrap}.beta-ops-actions{display:grid;grid-template-columns:1fr}.beta-ops-actions .btn{width:100%}}
@media(max-width:390px){.beta-ops-summary{grid-template-columns:1fr 1fr}.beta-ops-summary article:last-child{grid-column:1/-1}.beta-ops-filters{display:grid;grid-template-columns:1fr 1fr}.beta-ops-filters button{width:100%}}

/* FORMA v0.27.0 — Private Beta Launch / Access Control */
.beta-ops-card-buttons{display:flex;gap:8px;flex:none}.beta-access-state{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:15px 0 12px;padding:10px 12px;border:1px solid #334b54;border-radius:9px;background:#102129}.beta-access-state small{color:#879aa2;font-size:8px;line-height:1.45}.beta-access-gate{display:inline-flex;align-items:center;border:1px solid #53636a;border-radius:999px;padding:6px 9px;color:#aebdc2;background:#17262c;font-size:7px;font-weight:950;letter-spacing:.08em}.beta-access-gate.is-on{border-color:#638340;background:#1c3020;color:#dfff9c}.beta-access-invite{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:end;margin:12px 0}.beta-access-invite label{display:grid;gap:5px;color:#aebfc4;font-size:8px;font-weight:850}.beta-access-invite .field{min-height:40px}.beta-access-item.is-invited{border-left-color:#39e2c2}.beta-access-item.is-active{border-left-color:#39e2c2}.beta-access-item.is-revoked{border-left-color:#785c5c;opacity:.82}.beta-access-item.is-active .beta-ops-status{border-color:#638340;background:#1c3020;color:#dfff9c}.beta-access-item.is-revoked .beta-ops-status{border-color:#684b4b;background:#2a1d1d;color:#e3b8b8}.beta-access-item>p{font-size:9px;color:#8fa2a9}.beta-access-modal .beta-ops-list{max-height:42vh}
@media(max-width:700px){.beta-ops-card-buttons{display:grid;grid-template-columns:1fr 1fr;width:100%}.beta-ops-card-buttons .btn{width:100%}.beta-access-invite{grid-template-columns:1fr}.beta-access-invite .btn{width:100%}}
@media(max-width:390px){.beta-ops-card-buttons{grid-template-columns:1fr}.beta-access-state{align-items:flex-start;flex-direction:column}}

/* FORMA v0.27.1 — Private App Gate */
body.private-beta-locked{overflow:auto;background:#07100f}
body.private-beta-locked .app-shell,
body.private-beta-locked .mobile-nav,
body.private-beta-locked .beta-feedback-fab{display:none!important}
.private-beta-gate[hidden]{display:none!important}
.private-beta-gate{min-height:100dvh;display:grid;place-items:center;padding:32px;background:
  radial-gradient(circle at 12% 8%,rgba(57,226,194,.12),transparent 34%),
  radial-gradient(circle at 88% 92%,rgba(75,165,141,.12),transparent 34%),#07100f;color:#eef6f0}
.private-gate-shell{width:min(1080px,100%);display:grid;grid-template-columns:minmax(0,1.04fr) minmax(380px,.96fr);border:1px solid #223432;border-radius:28px;overflow:hidden;background:#0d1717;box-shadow:0 32px 90px rgba(0,0,0,.28)}
.private-gate-brand{position:relative;padding:48px;display:flex;flex-direction:column;min-height:650px;background:linear-gradient(145deg,#101f1d 0%,#0c1716 72%)}
.private-gate-brand:after{content:"";position:absolute;right:-70px;bottom:-95px;width:290px;height:290px;border-radius:50%;border:54px solid rgba(57,226,194,.045);pointer-events:none}
.private-gate-logo{display:flex;align-items:center;gap:14px;position:relative;z-index:1}
.private-gate-logo>span{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:#39e2c2;color:#0b1210;font-size:27px;font-weight:950;box-shadow:0 10px 26px rgba(57,226,194,.13)}
.private-gate-logo>div{display:grid;gap:2px}.private-gate-logo strong{font-size:20px;letter-spacing:.09em}.private-gate-logo small{font-size:9px;letter-spacing:.18em;color:#81918c;font-weight:800}
.private-gate-copy{margin:auto 0 34px;position:relative;z-index:1;max-width:560px}.private-gate-copy .premium-overline{color:#39e2c2}.private-gate-copy h1{font-size:clamp(38px,4.2vw,62px);line-height:1.02;letter-spacing:-.045em;margin:16px 0 20px;max-width:720px}.private-gate-copy p{font-size:17px;line-height:1.7;color:#aab9b4;max-width:520px}
.private-gate-pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;position:relative;z-index:1}.private-gate-pillars>div{display:flex;gap:10px;align-items:center;padding:13px;border:1px solid #233633;background:#11201e;border-radius:14px}.private-gate-pillars .icon{width:19px;height:19px;color:#39e2c2;flex:none}.private-gate-pillars span{display:grid;gap:2px}.private-gate-pillars strong{font-size:12px}.private-gate-pillars small{font-size:10px;color:#81918c}
.private-gate-foot{position:relative;z-index:1;margin:22px 0 0;color:#65766f;font-size:11px}
.private-gate-access{padding:42px 40px;background:#f4f7f4;color:#132019;display:flex;flex-direction:column;justify-content:center}
.private-gate-access-head{margin-bottom:22px}.private-gate-label{display:block;font-size:10px;letter-spacing:.16em;font-weight:900;color:#4f6d60}.private-gate-access-head h2,.private-gate-method h2{font-size:30px;line-height:1.1;margin:9px 0 8px;color:#102018}.private-gate-access-head p,.private-gate-method p,.private-gate-invite-note p{margin:0;color:#607068;line-height:1.55;font-size:13px}
.private-gate-status{margin-bottom:18px;padding:12px 14px;border-radius:12px;border:1px solid #d6dfd9;background:#fff;color:#425349;font-size:12px;line-height:1.45}.private-gate-status.is-checking{display:flex;align-items:center;gap:9px}.private-gate-status.is-checking span{width:10px;height:10px;border:2px solid #9faea6;border-top-color:#39e2c2;border-radius:50%;animation:privateGateSpin .8s linear infinite}@keyframes privateGateSpin{to{transform:rotate(360deg)}}
.private-gate-google{width:100%;display:flex;align-items:center;gap:13px;text-align:left;border:1px solid #ccd6d0;background:#fff;border-radius:13px;padding:13px 15px;color:#132019;cursor:pointer;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.private-gate-google:hover{transform:translateY(-1px);border-color:#9caf9f;box-shadow:0 8px 24px rgba(18,32,25,.07)}.private-gate-google .provider-g{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:#f1f4f2;font-weight:900}.private-gate-google>span:nth-child(2){display:grid;gap:2px}.private-gate-google strong{font-size:13px}.private-gate-google small{font-size:10px;color:#718078}
.private-gate-divider{display:flex;align-items:center;gap:12px;margin:18px 0;color:#8a9890;font-size:10px;font-weight:800;letter-spacing:.08em}.private-gate-divider:before,.private-gate-divider:after{content:"";height:1px;background:#dce3de;flex:1}
.private-gate-form{display:grid;gap:12px}.private-gate-form label{display:grid;gap:6px;font-size:11px;font-weight:800;color:#3d5046}.private-gate-form input{width:100%;border:1px solid #ccd7d0;background:#fff;color:#132019;border-radius:10px;padding:12px 13px;font:inherit;outline:none}.private-gate-form input:focus{border-color:#39e2c2;box-shadow:0 0 0 3px rgba(57,226,194,.16)}.private-gate-form .btn{width:100%;justify-content:center;margin-top:2px}.private-gate-link{justify-self:start;border:0;background:transparent;color:#52705f;padding:3px 0;font-size:11px;font-weight:800;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.private-gate-method{margin-top:22px;padding-top:22px;border-top:1px solid #dbe3de}.private-gate-method h2{font-size:20px;margin-top:7px}.private-gate-method p{margin-bottom:14px}.private-gate-invite-note{margin-top:22px;padding:15px 16px;border:1px solid #d8e2dc;border-radius:13px;background:#edf2ee}.private-gate-invite-note strong{display:block;margin:6px 0 5px;font-size:13px}.private-gate-security{display:grid;gap:3px;margin-top:22px;padding-top:17px;border-top:1px solid #dbe3de}.private-gate-security strong{font-size:11px;color:#35493e}.private-gate-security span{font-size:10px;line-height:1.5;color:#78867e}
@media(max-width:820px){.private-beta-gate{padding:0;place-items:stretch}.private-gate-shell{grid-template-columns:1fr;border:0;border-radius:0;min-height:100dvh}.private-gate-brand{min-height:auto;padding:28px 22px 26px}.private-gate-copy{margin:38px 0 24px}.private-gate-copy h1{font-size:36px}.private-gate-copy p{font-size:14px}.private-gate-pillars{grid-template-columns:1fr}.private-gate-pillars>div{padding:10px 12px}.private-gate-foot{margin-top:16px}.private-gate-access{padding:30px 22px 38px}.private-gate-access-head h2{font-size:27px}}
@media(max-width:390px){.private-gate-brand{padding:23px 18px}.private-gate-copy{margin:30px 0 20px}.private-gate-copy h1{font-size:32px}.private-gate-access{padding:27px 18px 34px}}

/* FORMA v0.28.0 — Beta Pilot Launch */
.beta-pilot-badge{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:0 9px;border:1px solid rgba(57,226,194,.34);border-radius:999px;background:rgba(57,226,194,.08);color:#dfff9b;font-size:7px;font-weight:950;letter-spacing:.12em;white-space:nowrap}
.beta-pilot-badge[hidden]{display:none!important}
.beta-pilot-summary{grid-template-columns:repeat(4,minmax(0,1fr))}
.beta-pilot-meta{display:grid;grid-template-columns:1.35fr .7fr .9fr .65fr;gap:7px;margin:10px 0 2px}
.beta-pilot-meta>span{min-width:0;padding:8px 9px;border:1px solid #2f454d;border-radius:8px;background:#0d1c22;display:grid;gap:3px}
.beta-pilot-meta small{font-size:6px;font-weight:900;letter-spacing:.11em;color:#6f858d}
.beta-pilot-meta strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:8px;color:#dce8eb}
@media(max-width:760px){.beta-pilot-badge{display:none!important}.beta-pilot-summary{grid-template-columns:1fr 1fr}.beta-pilot-meta{grid-template-columns:1fr 1fr}}
@media(max-width:390px){.beta-pilot-summary article:last-child{grid-column:auto}.beta-pilot-meta{grid-template-columns:1fr}.beta-pilot-meta strong{white-space:normal}}

/* FORMA v0.28.1 — Sync Reliability & Recovery */
.sync-recovery-modal{max-width:720px}.sync-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}.sync-choice-grid article{display:flex;flex-direction:column;gap:8px;padding:16px;border:1px solid #405862;border-radius:14px;background:#172a33}.sync-choice-grid span{font-size:.68rem;font-weight:900;letter-spacing:.1em;color:#39e2c2}.sync-choice-grid strong{font-size:1rem;color:#f2f7f8}.sync-choice-grid small{min-height:42px;color:#aebdc3;line-height:1.45}.sync-choice-grid .btn{margin-top:auto;width:100%}.sync-safety-note{display:flex;flex-direction:column;gap:4px;margin:14px 0;padding:12px 13px;border:1px solid #536f45;border-radius:12px;background:#1d3224}.sync-safety-note strong{color:#39e2c2}.sync-safety-note span{color:#c3d1c5;line-height:1.5}.sync-advanced{margin:16px 0;border-top:1px solid #405862;padding-top:12px}.sync-advanced summary{cursor:pointer;font-weight:800;color:#aebdc3}.sync-advanced[open] summary{margin-bottom:10px}.sync-advanced .btn{margin-top:10px}
@media(max-width:760px){.sync-choice-grid{grid-template-columns:1fr}.sync-choice-grid small{min-height:0}.sync-recovery-modal{max-width:none}}

/* FORMA v0.29.0 · Nutrition Integrity + Release Notes */
.meal-preparation{margin-top:8px;border:1px solid #435b63;border-radius:8px;background:linear-gradient(145deg,#15262d,#112129);overflow:hidden}
.meal-preparation>summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:46px;padding:12px 13px;color:#ecf6f4;font-size:11px;font-weight:850;list-style:none}
.meal-preparation>summary::-webkit-details-marker{display:none}
.meal-preparation>summary:before{content:'▸';color:var(--forma-lime);font-size:12px;flex:0 0 auto}
.meal-preparation[open]>summary:before{content:'▾'}
.meal-preparation>summary span{margin-left:auto;color:#9fb1b8;font-size:9px;font-weight:700}
.meal-preparation ol{list-style:none;display:grid;gap:8px;margin:0;padding:0 12px 12px}
.meal-preparation li{display:grid;grid-template-columns:28px minmax(0,1fr);gap:9px;align-items:start;padding:9px;border:1px solid #334b54;border-radius:7px;background:#102027}
.meal-preparation li>span{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#33472c;border:1px solid #64843a;color:#dcff91;font-size:10px;font-weight:900}
.meal-preparation li p{margin:3px 0 0;color:#d4e0e4;font-size:10px;line-height:1.5}
.meal-preparation>small{display:block;padding:0 12px 12px;color:#82969e;font-size:8px;line-height:1.5}

.release-notes-card{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:20px 22px!important;border-color:#455c48!important;background:radial-gradient(circle at 92% 18%,rgba(57,226,194,.09),transparent 28%),linear-gradient(145deg,#14262d,#101e24)!important}
.release-notes-card-copy{min-width:0}.release-notes-card-copy h2{margin:5px 0 6px;color:#f3f8f9;font-size:21px;letter-spacing:-.5px}.release-notes-card-copy p{margin:0;max-width:720px;color:#91a5ad;font-size:10px;line-height:1.55}
.release-notes-card-actions{display:grid;justify-items:end;gap:7px;flex:none}.release-notes-card-actions>span{color:#7f949d;font-size:8px;text-transform:uppercase;letter-spacing:.08em;font-weight:850}
.release-notes-modal{width:min(680px,calc(100vw - 28px));max-height:min(820px,calc(100vh - 28px));overflow:auto;padding:28px!important;background:radial-gradient(circle at 90% 7%,rgba(57,226,194,.12),transparent 29%),linear-gradient(155deg,#20343e,#152630 62%,#122129)!important;border-color:#50666f!important}
.release-notes-brand{display:flex;align-items:center;gap:12px;margin-bottom:20px}.release-notes-mark{width:48px;height:48px;border-radius:12px;display:grid;place-items:center;background:var(--forma-lime);color:#071015;font-size:27px;font-weight:950;font-style:italic}.release-notes-brand>div:last-child{display:grid;gap:3px}.release-notes-brand strong{color:#dfff91;font-size:12px;letter-spacing:.08em}
.release-notes-modal h2{margin:0;color:#f6fafb;font-size:clamp(27px,5vw,38px);line-height:1;letter-spacing:-1.2px}.release-notes-summary{margin:12px 0 18px;color:#a9bbc2;font-size:12px;line-height:1.6}
.release-notes-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.release-notes-list li{display:grid;grid-template-columns:28px minmax(0,1fr);gap:9px;align-items:start;padding:10px 11px;border:1px solid #3a525b;border-radius:8px;background:rgba(14,31,38,.78)}.release-notes-list li>span{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#31462b;color:#d9ff86}.release-notes-list li .icon{width:12px;height:12px}.release-notes-list li p{margin:3px 0 0;color:#d8e3e7;font-size:10px;line-height:1.5}
.release-notes-try{margin:14px 0 2px;padding:12px 13px;border-left:3px solid var(--forma-lime);background:#172b25;border-radius:0 7px 7px 0}.release-notes-try span{color:#39e2c2;font-size:8px;font-weight:900;letter-spacing:.1em}.release-notes-try p{margin:5px 0 0;color:#b7c8bd;font-size:10px;line-height:1.5}
.release-history-modal{width:min(820px,calc(100vw - 28px));max-height:min(860px,calc(100vh - 28px));overflow:auto;padding:26px!important;background:linear-gradient(155deg,#20343e,#14252e)!important;border-color:#50666f!important}.release-history-modal .beta-ops-title-row{align-items:flex-start}.release-history-modal .beta-ops-title-row h2{font-size:31px;margin-top:5px}.release-history-modal .beta-ops-title-row p{max-width:630px}
.release-history-list{display:grid;gap:10px;margin-top:18px}.release-history-entry{padding:15px;border:1px solid #3b535d;border-radius:9px;background:#102128}.release-history-entry.is-current{border-color:#39e2c2;background:linear-gradient(145deg,#172a26,#102128)}.release-history-head{display:flex;justify-content:space-between;gap:16px;align-items:start}.release-history-head>div{display:grid;gap:3px}.release-history-head span{color:#39e2c2;font-size:9px;font-weight:900;letter-spacing:.08em}.release-history-head strong{color:#edf5f7;font-size:14px}.release-history-head time{color:#81959d;font-size:8px;white-space:nowrap}.release-history-entry>p{margin:9px 0;color:#9eb0b8;font-size:10px;line-height:1.5}.release-history-entry>ul{list-style:none;margin:0;padding:0;display:grid;gap:5px}.release-history-entry>ul li{display:grid;grid-template-columns:20px 1fr;gap:7px;align-items:start}.release-history-entry>ul li>span{width:18px;height:18px;border-radius:50%;display:grid;place-items:center;background:#263d2c;color:#39e2c2}.release-history-entry>ul li .icon{width:9px;height:9px}.release-history-entry>ul p{margin:1px 0 0;color:#c2d0d5;font-size:9px;line-height:1.45}
@media(max-width:700px){.release-notes-card{align-items:stretch;display:grid;gap:14px;padding:17px!important}.release-notes-card-actions{justify-items:stretch}.release-notes-card-actions>span{text-align:left}.release-notes-modal,.release-history-modal{width:calc(100vw - 18px);max-height:calc(100vh - 18px);padding:20px 16px!important}.release-notes-modal .form-actions,.release-history-modal .form-actions{display:grid}.release-notes-modal .form-actions .btn,.release-history-modal .form-actions .btn{width:100%}.release-history-modal .beta-ops-title-row{display:grid}.release-history-modal .beta-ops-title-row>.btn{width:100%}.release-history-head{gap:9px}.meal-preparation li{grid-template-columns:26px 1fr;padding:8px}.meal-preparation li>span{width:26px;height:26px}}

/* FORMA v0.31.0 · Muscle Map 2.0: atlas canónico con resaltados SVG normalizados. */
.forma-figure .forma-muscle-overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible;filter:drop-shadow(0 0 7px rgba(57,226,194,.18))}
.forma-muscle-overlay .muscle-primary{fill:rgba(57,226,194,.66);stroke:rgba(220,255,148,.92);stroke-width:3;stroke-linejoin:round}
.forma-muscle-overlay .muscle-secondary{fill:rgba(91,215,200,.50);stroke:rgba(151,246,234,.82);stroke-width:3;stroke-linejoin:round}
.forma-muscle-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:7px;margin:10px auto 2px;max-width:460px}
.muscle-chip{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:850;letter-spacing:.02em;border:1px solid #4e626d;background:#1d2b34;color:#e8f1f5}
.muscle-chip i,.forma-visual-key i{display:inline-block;flex:none;border-radius:999px}
.muscle-chip i{width:8px;height:8px}
.muscle-chip-primary i,.forma-visual-key .key-primary{background:#39e2c2;box-shadow:0 0 0 2px rgba(57,226,194,.14)}
.muscle-chip-secondary i,.forma-visual-key .key-secondary{background:#5bd7c8;box-shadow:0 0 0 2px rgba(91,215,200,.14)}
.forma-visual-key{gap:14px;flex-wrap:wrap}
.forma-visual-key>span{display:inline-flex;align-items:center;gap:6px}
.forma-visual-key i{width:10px;height:10px}
@media(max-width:680px){.forma-muscle-chips{gap:5px;margin-top:8px}.muscle-chip{font-size:9px;padding:4px 7px}.forma-visual-key{gap:10px}}

/* FORMA v0.32.0 — Beta Insights & Feedback Intelligence */
.beta-insights-modal{width:min(1040px,calc(100vw - 28px))!important}.beta-insights-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:16px 0 12px}.beta-insights-summary article{border:1px solid #344a43;border-radius:10px;background:linear-gradient(145deg,#10231f,#102129);padding:12px}.beta-insights-summary article.is-attention{border-color:#705b36;background:linear-gradient(145deg,#29241a,#17241f)}.beta-insights-summary span{display:block;color:#82968f;font-size:7px;font-weight:950;letter-spacing:.12em}.beta-insights-summary strong{display:block;margin-top:4px;color:#eaffbb;font-size:23px}.beta-insights-summary article.is-attention strong{color:#ffd889}.beta-insights-summary small{display:block;margin-top:3px;color:#71868d;font-size:7px;line-height:1.35}.beta-insights-patterns{margin:0 0 12px;padding:12px;border:1px solid #30474f;border-radius:10px;background:#0e1c22}.beta-insights-patterns.is-empty{opacity:.78}.beta-insights-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:8px}.beta-insights-head span{color:#39e2c2;font-size:8px;font-weight:950;letter-spacing:.12em}.beta-insights-head small{color:#71868d;font-size:7px}.beta-pattern-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.beta-pattern-grid article{border:1px solid #2f454d;border-radius:8px;background:#12242b;padding:9px}.beta-pattern-grid strong{display:block;color:#e7eff1;font-size:9px;line-height:1.35}.beta-pattern-grid span{display:block;margin-top:4px;color:#84989f;font-size:7px;line-height:1.4}.beta-triage-chip,.beta-priority-chip{display:inline-flex;align-items:center;border-radius:999px;padding:4px 7px;font-size:7px;font-weight:900;letter-spacing:.04em;white-space:nowrap}.beta-triage-chip{border:1px solid #3c535b;background:#14252c;color:#a9bcc2}.beta-triage-chip.kind-bug{border-color:#7a4a4a;background:#2b1d1d;color:#ffc3c3}.beta-triage-chip.kind-ux{border-color:#4e637d;background:#1b2734;color:#c5dcff}.beta-triage-chip.kind-request{border-color:#655d3d;background:#282519;color:#efe2a0}.beta-triage-chip.kind-opportunity{border-color:#486d52;background:#192c20;color:#c8f6cf}.beta-priority-chip{border:1px solid #3f5158;background:#17262c;color:#9fb0b6}.beta-priority-chip.is-high{border-color:#856a3c;background:#2b2518;color:#ffdc91}.beta-priority-chip.is-critical{border-color:#874a4a;background:#321d1d;color:#ffc0c0}.beta-priority-chip.is-low{opacity:.72}.beta-ops-item.priority-high{box-shadow:inset 0 0 0 1px rgba(255,205,110,.12)}.beta-ops-item.priority-critical{box-shadow:inset 0 0 0 1px rgba(255,127,127,.22)}.beta-triage-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.72fr) auto;gap:7px;align-items:end;margin-top:10px;padding-top:10px;border-top:1px solid #263c44}.beta-triage-controls label{display:grid;gap:4px;color:#8fa3aa;font-size:7px;font-weight:850}.beta-triage-controls .field{min-height:34px;padding:7px 9px;font-size:8px}.beta-triage-controls .btn{min-height:34px}
@media(max-width:760px){.beta-insights-summary{grid-template-columns:1fr 1fr}.beta-pattern-grid{grid-template-columns:1fr}.beta-insights-head{align-items:flex-start;flex-direction:column}.beta-triage-controls{grid-template-columns:1fr 1fr}.beta-triage-controls .btn{grid-column:1/-1;width:100%}}
@media(max-width:390px){.beta-insights-summary{grid-template-columns:1fr 1fr}.beta-insights-summary article{padding:10px}.beta-insights-summary strong{font-size:20px}.beta-triage-controls{grid-template-columns:1fr}.beta-triage-controls .btn{grid-column:auto}.beta-ops-item-head>div{gap:6px}.beta-triage-chip,.beta-priority-chip{font-size:6.5px}}

/* FORMA v0.32.1 · Goal Clarity + Feedback Closure */
.goal-choice-group{display:grid;gap:8px}.goal-choice-help{display:grid;gap:5px;padding:13px 14px;border:1px solid rgba(57,226,194,.2);border-radius:12px;background:rgba(57,226,194,.055)}.goal-choice-help strong{font-size:12px;color:#eaf7df}.goal-choice-help span{font-size:11px;line-height:1.55;color:#c7d5cf}.goal-choice-help small,.goal-context-copy{font-size:10px;line-height:1.55;color:#8fa39a}.feedback-resolution-context{display:grid;gap:5px;padding:14px 15px;margin:14px 0 16px;border-radius:13px;background:#132522;border:1px solid #29433d}.feedback-resolution-context span{font-size:9px;letter-spacing:.12em;color:#39e2c2;font-weight:850}.feedback-resolution-context strong{font-size:14px}.feedback-resolution-context small{color:#8ea39a}.feedback-resolution-notify{display:flex;align-items:flex-start;gap:11px;margin:14px 0;padding:14px;border:1px solid #31504a;border-radius:13px;background:#10211e}.feedback-resolution-notify input{margin-top:3px;accent-color:#39e2c2}.feedback-resolution-notify span{display:grid;gap:4px}.feedback-resolution-notify strong{font-size:12px}.feedback-resolution-notify small{font-size:10px;line-height:1.55;color:#91a69d}.beta-resolution-summary{display:grid;gap:5px;margin:12px 0;padding:12px 13px;border-left:3px solid #39e2c2;border-radius:0 10px 10px 0;background:rgba(57,226,194,.055)}.beta-resolution-summary span{font-size:9px;letter-spacing:.11em;font-weight:900;color:#39e2c2}.beta-resolution-summary strong{font-size:11px;line-height:1.55}.beta-resolution-summary small{font-size:9px;color:#90a49b}.feedback-closed-modal .release-notes-try{border-color:rgba(57,226,194,.35)}
@media(max-width:680px){.goal-choice-help{padding:11px 12px}.feedback-resolution-notify{padding:12px}.feedback-resolution-context{padding:12px}.beta-resolution-summary{padding:10px 11px}}

/* v0.33.0 — Commercial Readiness */
.commercial-readiness-card{position:relative;overflow:hidden}.commercial-badge.is-premium{background:#39e2c2;color:#081015}.commercial-badge.is-admin{background:#d9e4e8;color:#0b1418}.commercial-badge.is-trial{background:#62ddd1;color:#071314}.commercial-badge.is-expired{background:#4b5b63;color:#dbe5e8}.commercial-admin-modal{width:min(980px,94vw);max-height:90vh;overflow:auto}.commercial-summary{margin:14px 0}.commercial-readiness-banner{display:grid;gap:4px;margin:12px 0 16px;padding:12px 14px;border:1px solid #486052;border-radius:9px;background:#10261f}.commercial-readiness-banner strong{color:#39e2c2;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.commercial-readiness-banner span{color:#aab8bd;font-size:9px;line-height:1.55}.commercial-admin-item{gap:10px}.commercial-source-chip{font-size:8px;font-weight:800;color:#a8bbc1;border:1px solid #38515a;border-radius:999px;padding:6px 8px;white-space:nowrap}.commercial-gift-controls{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.commercial-gift-controls .field{min-width:135px}.commercial-events{margin-top:16px;padding:14px;border:1px solid #314a53;border-radius:10px;background:#0d1d24}.commercial-events ul{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:8px}.commercial-events li{display:flex;justify-content:space-between;gap:14px;padding-top:8px;border-top:1px solid #263a42}.commercial-events li:first-child{border-top:0;padding-top:0}.commercial-events strong{font-size:9px;color:#e8f2f4}.commercial-events span{font-size:8px;color:#82969e;text-align:right}.feedback-suggestion-note{display:block;margin-top:6px;color:#89a0a8;font-size:8px;line-height:1.45}.commercial-foundation .form-actions{margin-top:13px}
@media(max-width:700px){.commercial-admin-modal{width:96vw}.commercial-gift-controls{display:grid;grid-template-columns:1fr}.commercial-gift-controls .field{width:100%}.commercial-events li{display:grid}.commercial-events span{text-align:left}}


/* v0.34.0 — Plans & Monetization Design */
.commercial-plans-scrim{background:rgba(3,8,11,.86);backdrop-filter:blur(9px)}
.commercial-plans-modal{width:min(940px,calc(100vw - 28px));max-height:min(92vh,900px);overflow:auto;padding:0;background:linear-gradient(155deg,#13232c 0%,#0b171e 58%,#081218 100%);border:1px solid #3c535e;border-top:3px solid var(--forma-lime);box-shadow:0 28px 80px rgba(0,0,0,.52)}
.commercial-plans-hero{padding:31px 34px 22px;background:radial-gradient(circle at 82% 0%,rgba(57,226,194,.13),transparent 38%),linear-gradient(135deg,rgba(31,49,58,.78),rgba(9,19,25,.38));border-bottom:1px solid #2e414b}
.commercial-plans-hero h2{margin:8px 0 10px;color:#f7fbfc;font-size:clamp(30px,4.5vw,52px);line-height:.96;letter-spacing:-1.8px;font-weight:950;font-style:italic;text-transform:uppercase}
.commercial-plans-hero>p{max-width:700px;margin:0;color:#bdcbd2;font-size:13px;line-height:1.65}
.commercial-inline-note{margin-top:15px;padding:10px 12px;border:1px solid rgba(57,226,194,.35);background:rgba(57,226,194,.08);border-radius:8px;color:#e8f6c9;font-size:11px}
.commercial-trial-pills{display:flex;flex-wrap:wrap;gap:7px;margin-top:19px}.commercial-trial-pills span{padding:7px 9px;border:1px solid #3a4e58;border-radius:999px;background:#13242d;color:#dbe5e9;font-size:9px;font-weight:850;letter-spacing:.35px}
.commercial-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:22px 34px 8px}.commercial-benefits article{display:flex;gap:10px;align-items:flex-start;padding:12px 13px;border:1px solid #2e424c;background:#102029;border-radius:9px}.commercial-benefits i{display:grid;place-items:center;flex:0 0 23px;height:23px;border-radius:50%;background:var(--forma-lime);color:#081116;font-style:normal;font-weight:950}.commercial-benefits strong{display:block;color:#f1f7f9;font-size:11px}.commercial-benefits span{display:block;margin-top:4px;color:#8fa4af;font-size:9px;line-height:1.45}
.commercial-plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:14px 34px}.commercial-plan-card{position:relative;padding:19px;border:1px solid #3a4f5a;background:#0d1b22;border-radius:11px}.commercial-plan-card.is-featured{border-color:var(--forma-lime);box-shadow:inset 0 0 0 1px rgba(57,226,194,.16)}.commercial-plan-card>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:9px}.commercial-plan-card span{color:#dce6ea;font-size:11px;font-weight:900}.commercial-plan-card b{padding:5px 7px;border-radius:999px;background:var(--forma-lime);color:#071015;font-size:7px;letter-spacing:.8px}.commercial-plan-card>strong{display:block;margin:14px 0 8px;color:#fff;font-size:24px;letter-spacing:-.7px}.commercial-plan-card p{min-height:45px;margin:0 0 15px;color:#91a4ae;font-size:9px;line-height:1.5}.commercial-plan-card button{width:100%}
.commercial-trial-cta{display:block;width:calc(100% - 68px);margin:3px 34px 12px;min-height:49px}.commercial-billing-note{display:flex;gap:10px;align-items:flex-start;margin:6px 34px 10px;padding:12px;border:1px solid #354952;border-radius:8px;background:#0b171e}.commercial-billing-note strong{color:#dfe8eb;font-size:10px;white-space:nowrap}.commercial-billing-note span{color:#8297a2;font-size:9px;line-height:1.45}.commercial-plans-modal>.form-actions{padding:7px 34px 27px}
.commercial-reminder-modal{width:min(520px,calc(100vw - 28px));padding:30px;background:linear-gradient(155deg,#182a33,#0b171e);border:1px solid #405762;border-top:3px solid var(--forma-lime);text-align:center}.commercial-reminder-count{display:grid;place-items:center;width:86px;height:86px;margin:17px auto;border:1px solid rgba(57,226,194,.55);border-radius:50%;background:rgba(57,226,194,.09);color:var(--forma-lime);font-size:40px;font-weight:950;letter-spacing:-2px}.commercial-reminder-modal h2{margin:0;color:#f5f9fa;font-size:29px;line-height:1.02}.commercial-reminder-modal p{margin:13px auto 19px;max-width:410px;color:#9fb0b9;font-size:11px;line-height:1.6}.commercial-reminder-actions{display:grid;gap:8px}.commercial-reminder-actions .btn{width:100%}
@media(max-width:640px){.commercial-plans-modal{width:calc(100vw - 18px);max-height:94vh}.commercial-plans-hero{padding:24px 18px 18px}.commercial-plans-hero h2{font-size:33px}.commercial-benefits{grid-template-columns:1fr;padding:16px 18px 6px}.commercial-plan-grid{grid-template-columns:1fr;padding:10px 18px}.commercial-plan-card p{min-height:0}.commercial-trial-cta{width:calc(100% - 36px);margin:3px 18px 10px}.commercial-billing-note{display:grid;margin:6px 18px 8px}.commercial-plans-modal>.form-actions{padding:6px 18px 20px}.commercial-reminder-modal{padding:25px 20px}.commercial-reminder-modal h2{font-size:26px}}
@media(prefers-reduced-motion:reduce){.commercial-plans-modal,.commercial-reminder-modal{scroll-behavior:auto}}

/* FORMA v0.35.0 · Training UX — temporizador integrado para ejercicios por tiempo. */
.core-timer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px;border:1px solid #48606b;border-radius:9px;background:linear-gradient(145deg,#172832,#102029);box-shadow:inset 0 1px 0 rgba(255,255,255,.025)}
.core-timer-copy{display:grid;gap:3px;min-width:0}.core-timer-copy>span{font-size:8px;font-weight:950;letter-spacing:1.5px;color:var(--forma-lime)}
.core-timer-copy>strong{font-size:32px;line-height:1;font-variant-numeric:tabular-nums;letter-spacing:-1px;color:#f5fafb}.core-timer-copy>small{max-width:520px;color:#91a5af;font-size:9px;line-height:1.45}
.core-timer-actions{display:flex;gap:7px;align-items:center}.core-timer-toggle,.core-timer-reset{min-height:42px;border-radius:7px;padding:8px 14px;font-size:11px;font-weight:900;cursor:pointer}
.core-timer-toggle{border:1px solid var(--forma-lime);background:var(--forma-lime);color:#0b1419}.core-timer-toggle.is-running{background:#253741;color:#ecf5f7;border-color:#7c949f}.core-timer-reset{border:1px solid #536974;background:#1c2d36;color:#dce7eb}.core-timer button:disabled{opacity:.52;cursor:not-allowed}
@media(max-width:560px){.core-timer{grid-template-columns:1fr;padding:12px;gap:10px}.core-timer-copy>strong{font-size:38px}.core-timer-actions{display:grid;grid-template-columns:1fr 1fr}.core-timer-toggle,.core-timer-reset{width:100%;min-height:44px}}

/* FORMA v0.37.0 · Exercise Motion Premium — media humana local, curada y progresiva. */
.exercise-motion-card{margin:18px 0;border:1px solid rgba(108,137,149,.72);border-radius:18px;background:linear-gradient(145deg,#162833,#0d1920);overflow:hidden;color:#eef5f8;box-shadow:0 18px 45px rgba(0,0,0,.24)}
.exercise-motion-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px 10px;background:linear-gradient(90deg,rgba(57,226,194,.035),transparent 55%)}
.exercise-motion-head>div{display:grid;gap:2px}.exercise-motion-head span:first-child{font-size:10px;letter-spacing:.2em;font-weight:950;color:#39e2c2}.exercise-motion-head strong{font-size:15px;letter-spacing:.01em}
.motion-loop-badge{border:1px solid rgba(57,226,194,.35);border-radius:999px;padding:5px 9px;font-size:9px!important;letter-spacing:.11em!important;font-weight:900;color:#dfffa0!important;background:rgba(57,226,194,.08)}
.premium-motion-stage{position:relative;isolation:isolate;max-width:390px;aspect-ratio:4/5;margin:0 auto 2px;background:#071015;overflow:hidden;border-radius:14px;border:1px solid rgba(104,133,145,.38);box-shadow:inset 0 0 40px rgba(0,0,0,.48)}
.premium-motion-media{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover;object-position:center;filter:saturate(.94) contrast(1.04)}
.premium-motion-vignette{position:absolute;z-index:2;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(3,8,11,.18) 0%,transparent 18%,transparent 70%,rgba(3,8,11,.62) 100%),radial-gradient(circle at 50% 40%,transparent 45%,rgba(3,8,11,.20) 100%)}
.premium-motion-mark{position:absolute;z-index:3;left:13px;bottom:12px;display:flex;align-items:baseline;gap:6px;color:#f0f7f8;text-shadow:0 2px 10px rgba(0,0,0,.55)}.premium-motion-mark b{font-size:12px;letter-spacing:.18em}.premium-motion-mark small{font-size:8px;letter-spacing:.2em;color:#39e2c2;font-weight:900}
.premium-motion-copy{padding:13px 16px 16px;border-top:1px solid rgba(86,108,120,.45);display:grid;gap:8px}.premium-motion-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.premium-motion-title strong{font-size:14px}.premium-motion-title span{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:#9bb0b9;font-weight:800}.premium-motion-copy p{margin:0;color:#d4e0e4;font-size:12px;line-height:1.5}.premium-motion-copy small{color:#8fa3ad;font-size:10px;line-height:1.45}
.premium-motion-chips{display:flex;gap:6px;flex-wrap:wrap}.premium-motion-chips span{border:1px solid rgba(57,226,194,.26);border-radius:999px;background:rgba(57,226,194,.055);color:#dfffa0;padding:5px 8px;font-size:9px;font-weight:800}
@media(max-width:680px){.exercise-motion-card{margin:14px 0;border-radius:15px}.exercise-motion-head{padding:11px 12px 8px}.premium-motion-stage{max-width:min(100%,360px);border-radius:11px}.premium-motion-copy{padding:10px 12px 13px}.premium-motion-copy p{font-size:11px}.premium-motion-title{align-items:flex-start;flex-direction:column;gap:2px}.premium-motion-title span{font-size:8px}}
@media(prefers-reduced-motion:reduce){.premium-motion-media{animation:none!important}}

/* FORMA v0.40.0 — Onboarding 2.0 Premium */
.onboarding-scrim{padding:20px;overflow:auto;overscroll-behavior:contain}
.onboarding-premium{width:min(1120px,96vw);max-width:none;height:min(760px,94dvh);padding:0;display:grid;grid-template-columns:minmax(310px,.84fr) minmax(0,1.35fr);overflow:hidden;border:1px solid #43545f;background:#101a22;box-shadow:0 28px 90px #0009}
.onboarding-visual{position:relative;min-height:0;overflow:hidden;background:#111d26}
.onboarding-visual>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:52% 35%;filter:saturate(.72) contrast(1.05)}
.onboarding-visual-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,13,18,.08),rgba(8,13,18,.45) 45%,rgba(8,13,18,.94) 100%),linear-gradient(90deg,rgba(12,19,25,.18),rgba(12,19,25,.02))}
.onboarding-brand{position:absolute;z-index:2;top:28px;left:28px;display:flex;align-items:center;gap:11px}
.onboarding-brand>span{width:48px;height:48px;display:grid;place-items:center;background:#39e2c2;color:#0f171d;font-size:29px;font-weight:950;line-height:1;transform:skew(-4deg)}
.onboarding-brand>div{display:grid;gap:2px}.onboarding-brand strong{font-style:italic;letter-spacing:2px;font-size:20px}.onboarding-brand small{font-size:8px;letter-spacing:2px;color:#39e2c2;font-weight:850}
.onboarding-visual-copy{position:absolute;z-index:2;left:28px;right:28px;bottom:66px}.onboarding-visual-copy h2{margin:10px 0 10px;font-size:clamp(34px,4vw,57px);line-height:.96;letter-spacing:-2px;font-style:italic}.onboarding-visual-copy p{max-width:330px;margin:0;color:#d0d9df;font-size:12px;line-height:1.55}
.onboarding-visual-foot{position:absolute;z-index:2;left:28px;bottom:25px;font-size:9px;font-weight:850;letter-spacing:1.7px;color:#95a6b1}
.onboarding-flow{min-width:0;min-height:0;display:flex;flex-direction:column;background:linear-gradient(180deg,#182630,#111c24)}
.onboarding-flow-top{padding:24px 30px 16px;border-bottom:1px solid #33444f;display:grid;gap:12px}.onboarding-flow-top>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px}.onboarding-flow-top span{font-size:10px;font-weight:900;letter-spacing:1.8px;color:#39e2c2}.onboarding-flow-top small{font-size:8px;font-weight:800;letter-spacing:1.5px;color:#80919d}.onboarding-progress{height:4px;background:#2b3b46;overflow:hidden}.onboarding-progress span{display:block;height:100%;background:#39e2c2;transition:width .25s ease}
#onboarding-form{min-height:0;flex:1;display:flex;flex-direction:column}.onboarding-step{min-height:0;flex:1;padding:34px 38px 18px;overflow:auto}.onboarding-step[hidden]{display:none!important}.onboarding-kicker{display:block;color:#39e2c2;font-size:9px;font-weight:900;letter-spacing:2.2px;margin-bottom:10px}.onboarding-step h1{margin:0 0 10px;color:#f5f8fa;font-size:clamp(30px,3vw,44px);line-height:1.02;letter-spacing:-1.7px;font-style:italic;text-transform:uppercase}.onboarding-step>p{max-width:690px;margin:0 0 24px;color:#b8c7d0;font-size:12px;line-height:1.65}
.onboarding-intro h1{max-width:620px}.onboarding-intro>p{max-width:650px}.onboarding-value-grid{margin-top:22px}.onboarding-existing{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:13px}.onboarding-existing>span{font-size:10px;color:#aebcc5;margin-right:auto}.onboarding-skip{display:inline-flex;margin-top:14px;padding:7px 0;border:0;background:transparent;color:#9cacb7;font-size:10px;text-decoration:underline;text-underline-offset:3px}
.onboarding-text-field,.onboarding-select-field{display:grid;gap:8px;margin:0 0 22px}.onboarding-text-field>span,.onboarding-select-field>span{color:#dce6eb;font-size:11px;font-weight:800}.onboarding-text-field>span small{font-weight:500;color:#95a7b2}.onboarding-text-field .field{max-width:420px;padding:14px 15px;font-size:14px}.onboarding-select-field .field{width:100%;padding:13px 14px}.onboarding-select-field>small{font-size:10px;color:#95a7b2;line-height:1.5}
.onboarding-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.onboarding-choice-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.onboarding-choice-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.onboarding-choice-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.onboarding-choice-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:19px}.onboarding-choice{display:block;min-width:0}.onboarding-choice>input{position:absolute;opacity:0;pointer-events:none}.onboarding-choice>span{min-height:72px;height:100%;display:flex;flex-direction:column;justify-content:center;gap:5px;padding:13px 14px;border:1px solid #435763;background:#22313b;color:#eaf1f5;cursor:pointer;transition:border-color .15s,background .15s,transform .15s}.onboarding-choice>span:hover{background:#293a45;border-color:#6c814d}.onboarding-choice strong{font-size:12px;line-height:1.3}.onboarding-choice small{color:#9fb0ba;font-size:9px;line-height:1.45}.onboarding-choice>input:checked+span{border:2px solid #39e2c2;background:#2c402a;color:#f1ffda;padding:12px 13px}.onboarding-choice>input:checked+span small{color:#d5e6be}.onboarding-choice>input:focus-visible+span{outline:3px solid #39e2c2;outline-offset:2px}
.onboarding-weekdays{margin-top:18px;background:#17242d;border-color:#455965}.onboarding-weekdays .weekday-options{grid-template-columns:repeat(7,minmax(0,1fr))}.onboarding-weekdays .weekday-option span{min-height:45px;display:grid;place-items:center;padding:8px 4px;text-align:center}.onboarding-gear{margin-top:18px}.onboarding-gear[hidden]{display:none!important}.onboarding-gear .gear-fields{max-height:285px;overflow:auto}.onboarding-gear .gear-list{grid-template-columns:repeat(2,minmax(0,1fr))}
.onboarding-subquestion{display:grid;gap:9px;margin:0 0 20px}.onboarding-subquestion>strong{font-size:10px;letter-spacing:1.1px;color:#aebdc7}.onboarding-choice-grid.meals .onboarding-choice>span{min-height:90px}
.onboarding-review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.onboarding-review-grid article{display:grid;gap:5px;padding:13px 14px;background:#202f39;border:1px solid #40535f;min-height:70px}.onboarding-review-grid span{font-size:8px;font-weight:900;letter-spacing:1.4px;color:#8fa0ab}.onboarding-review-grid strong{font-size:11px;line-height:1.4;color:#edf4f6}.onboarding-safe-note{margin-top:14px;display:flex;gap:10px;align-items:flex-start;padding:12px 14px;background:#263a29;border-left:3px solid #39e2c2}.onboarding-safe-note .icon{color:#39e2c2;margin-top:1px}.onboarding-safe-note span{display:grid;gap:2px;font-size:10px;color:#bacab7;line-height:1.45}.onboarding-safe-note strong{color:#edffdd}
.onboarding-controls{padding:16px 30px 22px;border-top:1px solid #33444f;display:flex;justify-content:flex-end;gap:10px;background:#111c24}.onboarding-controls .btn-ghost{margin-right:auto}.onboarding-controls [hidden]{display:none!important}
.onboarding-build{width:min(520px,92vw);text-align:center;padding:38px 34px;background:#16232c;border:1px solid #455964}.onboarding-build-mark{width:54px;height:54px;margin:0 auto 20px;display:grid;place-items:center;background:#39e2c2;color:#111a20;font-weight:950;font-size:32px;transform:skew(-4deg)}.onboarding-build h2{margin:9px 0 8px;font-size:28px;letter-spacing:-1px}.onboarding-build>p{font-size:12px;line-height:1.6}.onboarding-build-list{display:grid;gap:8px;margin:23px auto 18px;max-width:320px;text-align:left}.onboarding-build-list span{display:flex;align-items:center;gap:10px;color:#c3d0d8;font-size:11px}.onboarding-build-list i{width:9px;height:9px;border-radius:50%;background:#536670;box-shadow:0 0 0 4px #22323c}.onboarding-build.is-building .onboarding-build-list span:nth-child(1) i{animation:onboardingPulse .7s .05s forwards}.onboarding-build.is-building .onboarding-build-list span:nth-child(2) i{animation:onboardingPulse .7s .28s forwards}.onboarding-build.is-building .onboarding-build-list span:nth-child(3) i{animation:onboardingPulse .7s .5s forwards}.onboarding-build-bar{height:5px;background:#2a3a44;overflow:hidden;margin:20px 0}.onboarding-build-bar span{display:block;width:0;height:100%;background:#39e2c2}.onboarding-build.is-building .onboarding-build-bar span{animation:onboardingBuild 1s ease forwards}.onboarding-build>small{color:#8fa0aa;font-size:9px}@keyframes onboardingBuild{to{width:100%}}@keyframes onboardingPulse{to{background:#39e2c2;box-shadow:0 0 0 4px #3a4c2b}}
@media(max-width:900px){.onboarding-scrim{padding:0}.onboarding-premium{width:100vw;height:100dvh;max-height:none;border:0;border-radius:0;grid-template-columns:1fr}.onboarding-visual{display:none}.onboarding-flow-top{padding:17px 18px 12px}.onboarding-step{padding:25px 19px 12px}.onboarding-step h1{font-size:31px}.onboarding-controls{padding:12px 18px calc(14px + env(safe-area-inset-bottom))}.onboarding-choice-grid,.onboarding-choice-grid.compact{grid-template-columns:1fr 1fr}.onboarding-choice-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.onboarding-weekdays .weekday-options{grid-template-columns:repeat(4,minmax(0,1fr))}.onboarding-review-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.onboarding-flow-top>div:first-child{align-items:flex-start}.onboarding-flow-top small{text-align:right}.onboarding-step>p{margin-bottom:18px}.onboarding-choice-grid,.onboarding-choice-grid.two,.onboarding-choice-grid.three,.onboarding-choice-grid.compact{grid-template-columns:1fr}.onboarding-choice-grid.four{grid-template-columns:1fr 1fr}.onboarding-choice>span{min-height:62px}.onboarding-choice-grid.meals .onboarding-choice>span{min-height:66px}.onboarding-review-grid{grid-template-columns:1fr}.onboarding-gear .gear-list{grid-template-columns:1fr}.onboarding-weekdays .weekday-options{grid-template-columns:repeat(4,minmax(0,1fr))}.onboarding-controls .btn{flex:1}.onboarding-controls .btn-ghost{flex:0 0 auto;padding-inline:12px}.onboarding-existing .btn{width:100%}.onboarding-existing>span{width:100%}}
@media(prefers-reduced-motion:reduce){.onboarding-progress span,.onboarding-choice>span{transition:none}.onboarding-build.is-building .onboarding-build-list i,.onboarding-build.is-building .onboarding-build-bar span{animation-duration:.01ms;animation-delay:0s}}

/* === VERUNIVA v0.40.0 NATIVE PRODUCT IDENTITY · PREVIEW 2 START === */
:root{
  --veruniva-bg:#071114;
  --veruniva-bg-soft:#09171b;
  --veruniva-panel:#0d1b20;
  --veruniva-panel-2:#10242a;
  --veruniva-panel-3:#132a30;
  --veruniva-border:#1d3a40;
  --veruniva-border-soft:rgba(126,185,187,.16);
  --veruniva-text:#f4f8f7;
  --veruniva-muted:#8fa8ad;
  --veruniva-muted-2:#6f898e;
  --veruniva-accent:#39e2c2;
  --veruniva-accent-2:#64edd3;
  --veruniva-accent-deep:#139f92;
  --veruniva-accent-soft:rgba(57,226,194,.10);
  --veruniva-accent-line:rgba(57,226,194,.24);
  --veruniva-shadow:0 22px 60px rgba(0,0,0,.34);

  /* Compatibilidad con los tokens existentes. */
  --bg:var(--veruniva-bg);
  --background:var(--veruniva-bg);
  --surface:var(--veruniva-panel);
  --panel:var(--veruniva-panel);
  --panel2:var(--veruniva-panel-2);
  --panel-2:var(--veruniva-panel-2);
  --card:var(--veruniva-panel);
  --border:var(--veruniva-border);
  --text:var(--veruniva-text);
  --muted:var(--veruniva-muted);
  --accent:var(--veruniva-accent);
  --accent2:var(--veruniva-accent-2);
  --accent-2:var(--veruniva-accent-2);
  --lime:var(--veruniva-accent);
  --green:var(--veruniva-accent);
  --primary:var(--veruniva-accent);
  --shadow:var(--veruniva-shadow);
}

html{
  background:var(--veruniva-bg);
  color-scheme:dark;
}
html,body{
  background:
    radial-gradient(circle at 78% -12%,rgba(57,226,194,.105),transparent 32rem),
    radial-gradient(circle at -8% 30%,rgba(41,120,132,.075),transparent 30rem),
    var(--veruniva-bg) !important;
  color:var(--veruniva-text);
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-1;
  background:
    linear-gradient(180deg,rgba(255,255,255,.012),transparent 19rem),
    radial-gradient(circle at 50% 0%,rgba(57,226,194,.022),transparent 42rem);
}
::selection{background:rgba(57,226,194,.28);color:#fff}

/* Marca. El símbolo se dibuja en CSS para no depender de un asset legado. */
:is(.brand-mark,.logo-mark,.app-mark,[class*="brand"][class*="mark"],[class*="logo"][class*="mark"]){
  position:relative !important;
  display:inline-block !important;
  width:42px !important;
  min-width:42px !important;
  height:38px !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:transparent !important;
  font-size:0 !important;
  overflow:visible !important;
}
:is(.brand-mark,.logo-mark,.app-mark,[class*="brand"][class*="mark"],[class*="logo"][class*="mark"])::before,
:is(.brand-mark,.logo-mark,.app-mark,[class*="brand"][class*="mark"],[class*="logo"][class*="mark"])::after{
  content:"";
  position:absolute;
  top:2px;
  width:10px;
  height:34px;
  border-radius:2px;
  transform-origin:center top;
}
:is(.brand-mark,.logo-mark,.app-mark,[class*="brand"][class*="mark"],[class*="logo"][class*="mark"])::before{
  left:9px;
  background:linear-gradient(180deg,#65efd6,#29d9bb);
  transform:rotate(-27deg);
}
:is(.brand-mark,.logo-mark,.app-mark,[class*="brand"][class*="mark"],[class*="logo"][class*="mark"])::after{
  right:9px;
  background:linear-gradient(180deg,#f5fbfa,#cfe5e4);
  transform:rotate(27deg);
}
:is(.brand-name,.app-brand,.logo-wordmark,[class*="brand"][class*="name"],[class*="logo"][class*="word"]){
  color:var(--veruniva-text) !important;
  font-style:normal !important;
  letter-spacing:.24em !important;
  font-weight:850 !important;
}
:is(.brand-sub,[class*="brand"][class*="sub"]){
  color:color-mix(in srgb,var(--veruniva-accent) 70%,var(--veruniva-muted)) !important;
  letter-spacing:.16em !important;
}

/* Superficies: misma profundidad que la landing. */
:is(.card,.panel,.surface,.sheet,.modal,.dialog,.drawer,.premium-card,.home-card,.profile-card,.progress-card,.nutrition-card,.training-card){
  border-color:var(--veruniva-border-soft) !important;
  box-shadow:0 18px 48px rgba(0,0,0,.20);
}
:is(.card,.panel,.surface,.sheet,.modal,.dialog,.drawer){
  background-color:color-mix(in srgb,var(--veruniva-panel) 95%,transparent) !important;
}
:is(.sidebar,.side-panel,.app-sidebar){
  background:
    linear-gradient(180deg,rgba(57,226,194,.018),transparent 18rem),
    #08161a !important;
  border-color:rgba(126,185,187,.14) !important;
}
:is(.topbar,.app-topbar,.header){
  border-color:rgba(126,185,187,.13) !important;
}

/* Controles. */
:is(input,select,textarea){
  color:var(--veruniva-text) !important;
  background:rgba(8,21,25,.72) !important;
  border-color:rgba(143,168,173,.22) !important;
}
:is(input,select,textarea):focus{
  border-color:var(--veruniva-accent) !important;
  box-shadow:0 0 0 3px rgba(57,226,194,.10) !important;
  outline:none !important;
}
:is(button,.btn,[role="button"],.button){
  transition:transform .16s ease,border-color .16s ease,background-color .16s ease,color .16s ease,box-shadow .16s ease;
}
:is(button,.btn,[role="button"],.button):focus-visible,a:focus-visible{
  outline:2px solid var(--veruniva-accent) !important;
  outline-offset:3px;
}
:is(button,.btn,[role="button"],.button):not(:disabled):active{transform:translateY(1px)}
:is(.primary,.btn-primary,.button-primary,[data-variant="primary"]){
  background:linear-gradient(135deg,var(--veruniva-accent),var(--veruniva-accent-2)) !important;
  color:#04211d !important;
  border-color:transparent !important;
  box-shadow:0 12px 34px rgba(57,226,194,.16) !important;
}
:is(.primary,.btn-primary,.button-primary,[data-variant="primary"]):hover{
  filter:brightness(1.04);
  box-shadow:0 16px 40px rgba(57,226,194,.22) !important;
}

/* Navegación y selección. */
:is(.nav-item,.tab,.segmented button,.bottom-nav button,.mobile-nav button).active,
:is(.nav-item,.tab,.segmented button,.bottom-nav button,.mobile-nav button)[aria-current="page"]{
  color:var(--veruniva-text) !important;
  border-color:var(--veruniva-accent-line) !important;
  background:linear-gradient(135deg,rgba(57,226,194,.13),rgba(57,226,194,.05)) !important;
  box-shadow:inset 0 0 0 1px rgba(57,226,194,.035);
}
:is(.eyebrow,.label,.kicker,.overline){
  color:color-mix(in srgb,var(--veruniva-accent) 74%,var(--veruniva-muted)) !important;
}
:is(.muted,.secondary-copy,.helper,.hint){color:var(--veruniva-muted) !important}
a{color:var(--veruniva-accent)}
a:hover{color:var(--veruniva-accent-2)}

/* Chips y estados no semánticos. Los errores/alertas mantienen sus colores. */
:is(.tag,.chip,.badge,.pill):not(.negative):not(.danger):not(.warning):not(.error){
  border-color:rgba(57,226,194,.18);
}
:is(.tag,.chip,.badge,.pill).positive,
:is(.tag,.chip,.badge,.pill).success{
  color:var(--veruniva-accent) !important;
  background:rgba(57,226,194,.075) !important;
  border-color:rgba(57,226,194,.20) !important;
}

progress{accent-color:var(--veruniva-accent)}
input[type="checkbox"],input[type="radio"],input[type="range"]{accent-color:var(--veruniva-accent)}

::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-track{background:#071114}
::-webkit-scrollbar-thumb{background:#214047;border:2px solid #071114;border-radius:999px}
::-webkit-scrollbar-thumb:hover{background:#2a555c}

@media(max-width:760px){
  html,body{
    background:
      radial-gradient(circle at 80% -5%,rgba(57,226,194,.08),transparent 22rem),
      var(--veruniva-bg) !important;
  }
  :is(.card,.panel,.surface,.sheet,.modal,.dialog,.drawer){
    box-shadow:0 12px 34px rgba(0,0,0,.18);
  }
}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{
    scroll-behavior:auto !important;
    transition-duration:.001ms !important;
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
  }
}
/* === VERUNIVA v0.40.0 NATIVE PRODUCT IDENTITY · PREVIEW 2 END === */

/* === VERUNIVA v0.40.0 IDENTITY POLISH · PREVIEW 3 START === */

/* -----------------------------------------------------------------
   VERUNIVA selected states
   Elimina el fondo oliva/verde heredado del onboarding y selectores.
   ----------------------------------------------------------------- */
:is(
  [class*="onboarding"],
  [class*="wizard"],
  [class*="setup"],
  [class*="preference"],
  [class*="choice"],
  [class*="option"],
  [class*="day"],
  [class*="equipment"]
) :is(
  .selected,
  .active,
  [aria-selected="true"],
  [aria-pressed="true"]
),
:is(
  [class*="onboarding"],
  [class*="wizard"],
  [class*="setup"],
  [class*="preference"],
  [class*="choice"],
  [class*="option"],
  [class*="day"],
  [class*="equipment"]
):is(
  .selected,
  .active,
  [aria-selected="true"],
  [aria-pressed="true"]
),
input:checked + label,
label:has(> input:checked){
  background:
    linear-gradient(135deg,rgba(57,226,194,.15),rgba(57,226,194,.065)) !important;
  border-color:#39e2c2 !important;
  box-shadow:
    inset 0 0 0 1px rgba(57,226,194,.08),
    0 10px 28px rgba(0,0,0,.10) !important;
  color:#f4f8f7 !important;
}

:is(
  [class*="onboarding"],
  [class*="wizard"],
  [class*="setup"],
  [class*="preference"],
  [class*="choice"],
  [class*="option"],
  [class*="day"],
  [class*="equipment"]
) :is(
  .selected,
  .active,
  [aria-selected="true"],
  [aria-pressed="true"]
) :is(small,p,span){
  color:#d8e8e6 !important;
}

/* Inputs del onboarding más próximos a la landing. */
:is([class*="onboarding"],[class*="wizard"],[class*="setup"]) :is(input,select,textarea){
  background:#102229 !important;
  border-color:rgba(126,185,187,.28) !important;
}

/* -----------------------------------------------------------------
   CTAs y navegación.
   ----------------------------------------------------------------- */
:is(
  .primary,
  .btn-primary,
  .button-primary,
  [data-variant="primary"],
  [class*="continue"],
  [class*="next"]
):not(.danger):not(.warning){
  background:linear-gradient(135deg,#39e2c2,#65ecd3) !important;
  color:#04211d !important;
  border-color:transparent !important;
}

:is(.nav-item,.tab,[role="tab"]).active,
:is(.nav-item,.tab,[role="tab"])[aria-selected="true"],
:is(.nav-item,.tab)[aria-current="page"]{
  background:linear-gradient(135deg,rgba(57,226,194,.13),rgba(57,226,194,.055)) !important;
  border-color:rgba(57,226,194,.22) !important;
}

/* -----------------------------------------------------------------
   Badges / pills no semánticos.
   Evitamos el amarillo-verde antiguo en Nutrición y Progreso.
   ----------------------------------------------------------------- */
:is(.tag,.chip,.badge,.pill,[class*="badge"],[class*="pill"])
:not(.danger):not(.error):not(.warning):not(.negative){
  border-color:rgba(57,226,194,.26) !important;
}

:is(
  .tag,.chip,.badge,.pill,
  [class*="badge"],
  [class*="pill"]
):not(.danger):not(.error):not(.warning):not(.negative)
:is(.positive,.success,.active,.selected),
:is(
  .tag,.chip,.badge,.pill,
  [class*="badge"],
  [class*="pill"]
).positive,
:is(
  .tag,.chip,.badge,.pill,
  [class*="badge"],
  [class*="pill"]
).success{
  color:#39e2c2 !important;
  background:rgba(57,226,194,.075) !important;
  border-color:rgba(57,226,194,.22) !important;
}

/* Valores destacados que todavía heredaban lima. */
:is(
  [class*="nutrition"],
  [class*="progress"],
  [class*="metric"],
  [class*="stat"],
  [class*="summary"]
) :is(.positive,.accent,[class*="accent"],[class*="positive"]){
  color:#39e2c2 !important;
}

/* Barra de progreso y controles nativos. */
progress{accent-color:#39e2c2 !important}
input[type="checkbox"],
input[type="radio"],
input[type="range"]{accent-color:#39e2c2 !important}

/* -----------------------------------------------------------------
   Micro-branding.
   ----------------------------------------------------------------- */
:is(.brand-sub,[class*="brand"][class*="sub"]){
  color:#39e2c2 !important;
}

/* El pequeño sello lateral/secundario deja de competir con el logo principal. */
:is([class*="performance-system"],[class*="brand-system"],[class*="system-mark"]){
  color:#8fa8ad !important;
  opacity:.78;
}

/* Feedback: mismo lenguaje de la landing, menos neón. */
:is(.feedback-button,[class*="feedback"][class*="button"]){
  background:linear-gradient(135deg,#39e2c2,#63ead2) !important;
  color:#05201d !important;
  border-color:transparent !important;
  box-shadow:0 12px 32px rgba(57,226,194,.14) !important;
}

/* Consistencia móvil. */
@media(max-width:760px){
  :is(
    [class*="onboarding"],
    [class*="wizard"],
    [class*="setup"]
  ) :is(
    .selected,
    .active,
    [aria-selected="true"],
    [aria-pressed="true"]
  ){
    box-shadow:inset 0 0 0 1px rgba(57,226,194,.06) !important;
  }
}

/* === VERUNIVA v0.40.0 IDENTITY POLISH · PREVIEW 3 END === */

/* === VERUNIVA v0.40.0 NATIVE MARK CLEANUP · PREVIEW 5 START === */
:where(.brand-mark,.veruniva-brand-mark,.veruniva-inline-mark,.onboarding-build-mark,.release-notes-mark){
  display:inline-block!important;position:relative!important;flex:0 0 auto;
  width:42px!important;min-width:42px!important;height:42px!important;
  border:0!important;border-radius:0!important;background-color:transparent!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 64 64%22%3E%3Cpath fill=%22%2344e5c8%22 d=%22M6 7h16l14 38-8 12z%22/%3E%3Cpath fill=%22%23eef8f6%22 d=%22M42 7h16L36 57h-8z%22/%3E%3C/svg%3E")!important;
  background-repeat:no-repeat!important;background-position:center!important;background-size:contain!important;
  box-shadow:none!important;color:transparent!important;font-size:0!important;line-height:0!important;overflow:visible!important
}
:where(.brand-mark,.veruniva-brand-mark,.veruniva-inline-mark,.onboarding-build-mark,.release-notes-mark)::before,
:where(.brand-mark,.veruniva-brand-mark,.veruniva-inline-mark,.onboarding-build-mark,.release-notes-mark)::after{
  content:none!important;display:none!important
}
.brand-name{color:#f4f8f7!important;letter-spacing:.23em!important;font-style:normal!important}
.brand-sub{color:#39e2c2!important;letter-spacing:.14em!important}
.onboarding-brand>.veruniva-brand-mark{width:44px!important;min-width:44px!important;height:44px!important;margin-right:4px}
.private-gate-logo>.veruniva-brand-mark{width:46px!important;min-width:46px!important;height:46px!important}
.release-notes-mark{width:38px!important;min-width:38px!important;height:38px!important}
.premium-home-hero-signature>.veruniva-inline-mark{width:25px!important;min-width:25px!important;height:25px!important}
#avatar{border-color:rgba(57,226,194,.18)!important;background:#12242a!important;color:#39e2c2!important}
/* === VERUNIVA v0.40.0 NATIVE MARK CLEANUP · PREVIEW 5 END === */

/* === VERUNIVA v0.40.0 BRAND LOCKUP · PREVIEW 6 START === */

/* Marca principal: isotipo real + wordmark, como en la landing. */
.veruniva-lockup-mark{
  width:40px;
  min-width:40px;
  height:38px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
}
.veruniva-mark-svg{
  width:100%;
  height:100%;
  display:block;
  overflow:visible;
  filter:drop-shadow(0 7px 15px rgba(57,226,194,.14));
}

/* Sidebar principal. */
.sidebar .brand{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
}
.sidebar .brand .veruniva-lockup-mark{
  width:42px;
  min-width:42px;
  height:40px;
}
.sidebar .brand-name{
  display:flex!important;
  flex-direction:column;
  gap:2px;
  color:#f4f8f7!important;
  font-size:17px!important;
  font-weight:850!important;
  letter-spacing:.22em!important;
  line-height:1!important;
}
.sidebar .brand-sub{
  display:block!important;
  color:#39e2c2!important;
  font-size:8px!important;
  font-weight:800!important;
  letter-spacing:.13em!important;
  white-space:nowrap;
}

/* Onboarding: mismo isotipo, sin cuadrado heredado. */
.onboarding-brand{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
}
.onboarding-brand .veruniva-lockup-mark{
  width:44px;
  min-width:44px;
  height:42px;
}
.onboarding-brand strong{
  color:#f4f8f7!important;
  letter-spacing:.08em;
}
.onboarding-brand small{
  color:#39e2c2!important;
}

/* Acceso privado. */
.private-gate-logo{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
}
.private-gate-logo .veruniva-lockup-mark{
  width:46px;
  min-width:46px;
  height:44px;
}

/* Novedades / actualización / feedback resuelto. */
.release-notes-mark{
  width:38px!important;
  min-width:38px!important;
  height:36px!important;
  display:grid!important;
  place-items:center!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.release-notes-mark .veruniva-mark-svg{
  width:100%;
  height:100%;
}

/* Firma de Home: isotipo pequeño, no una letra. */
.premium-home-hero-signature .veruniva-lockup-mark{
  width:24px;
  min-width:24px;
  height:23px;
}

/* Evita que estilos antiguos de las previews interfieran. */
.brand-mark,
.veruniva-brand-mark,
.veruniva-inline-mark{
  background-image:none!important;
}
.brand-mark::before,
.brand-mark::after,
.veruniva-brand-mark::before,
.veruniva-brand-mark::after,
.veruniva-inline-mark::before,
.veruniva-inline-mark::after{
  content:none!important;
  display:none!important;
}

/* Tablet: conserva el isotipo aunque ocultemos el texto del sidebar. */
@media(min-width:761px) and (max-width:1100px){
  .sidebar .brand{
    justify-content:center!important;
  }
  .sidebar .brand .veruniva-lockup-mark{
    width:38px;
    min-width:38px;
    height:36px;
  }
  .sidebar .brand-name{
    display:none!important;
  }
}

/* Móvil: lockup completo dentro del drawer. */
@media(max-width:760px){
  .sidebar .brand{
    justify-content:flex-start!important;
  }
  .sidebar .brand-name{
    display:flex!important;
  }
}

/* === VERUNIVA v0.40.0 BRAND LOCKUP · PREVIEW 6 END === */

/* === VERUNIVA v0.40.0 SECONDARY BRAND · PREVIEW 7 START === */

/*
  Perfil: el bloque de identidad usa el isotipo real de VERUNIVA.
  El avatar de usuario de la barra superior sigue siendo un avatar,
  no se convierte en logo.
*/
.premium-profile-avatar.veruniva-profile-brand{
  display:grid!important;
  place-items:center!important;
  width:78px!important;
  min-width:78px!important;
  height:78px!important;
  border-radius:20px!important;
  background:
    radial-gradient(circle at 30% 20%,rgba(57,226,194,.10),transparent 65%),
    #0b1b20!important;
  border:1px solid rgba(57,226,194,.23)!important;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.018),
    0 16px 36px rgba(0,0,0,.18)!important;
  color:transparent!important;
  font-size:0!important;
  overflow:hidden!important;
}

.premium-profile-avatar.veruniva-profile-brand .veruniva-mark-svg{
  width:48px!important;
  height:48px!important;
  display:block!important;
  filter:drop-shadow(0 8px 16px rgba(57,226,194,.16));
}

/* Sello superior derecho del perfil: menos "system", más marca de producto. */
.premium-profile-heading-mark{
  opacity:.78;
}
.premium-profile-heading-mark span{
  color:#f4f8f7!important;
  letter-spacing:.16em!important;
}
.premium-profile-heading-mark small{
  color:#8fa8ad!important;
  letter-spacing:.13em!important;
}

/* Mantiene el isotipo nítido en móvil. */
@media(max-width:760px){
  .premium-profile-avatar.veruniva-profile-brand{
    width:68px!important;
    min-width:68px!important;
    height:68px!important;
    border-radius:18px!important;
  }
  .premium-profile-avatar.veruniva-profile-brand .veruniva-mark-svg{
    width:42px!important;
    height:42px!important;
  }
}

/* === VERUNIVA v0.40.0 SECONDARY BRAND · PREVIEW 7 END === */

/* === VERUNIVA v0.40.0 ASSET PREP · PREVIEW 8 START === */

/* 1) Onboarding: el isotipo necesita contraste, no más saturación. */
.onboarding-brand .veruniva-lockup-mark{
  width:46px!important;
  min-width:46px!important;
  height:46px!important;
  padding:7px!important;
  border-radius:13px!important;
  background:
    linear-gradient(145deg,rgba(6,26,31,.88),rgba(10,35,40,.78))!important;
  border:1px solid rgba(57,226,194,.26)!important;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.025),
    0 10px 30px rgba(0,0,0,.24)!important;
}
.onboarding-brand .veruniva-mark-svg{
  width:100%!important;
  height:100%!important;
  filter:drop-shadow(0 5px 12px rgba(57,226,194,.11))!important;
}
.onboarding-brand strong{
  color:#f4f8f7!important;
}
.onboarding-brand small{
  color:#46d9c0!important;
  opacity:.92;
}

/* 2) Home hero: prioriza la cabeza y hombros del atleta.
      El objetivo es mostrar más zona superior sin perder presencia. */
.premium-home-hero-image{
  object-position:62% 26%!important;
}

/* Las tarjetas pequeñas no necesitan el mismo recorte que el hero. */
.premium-route-training .premium-route-media img{
  object-position:55% 24%!important;
}

/* 3) Mantener el logo secundario legible sobre fotografía. */
.premium-home-hero-signature{
  background:rgba(5,21,25,.58)!important;
  border:1px solid rgba(57,226,194,.18)!important;
  backdrop-filter:blur(5px);
  -webkit-backdrop-filter:blur(5px);
}

/* Ajuste móvil: aún más prioridad a la cara. */
@media(max-width:760px){
  .premium-home-hero-image{
    object-position:61% 18%!important;
  }
  .onboarding-brand .veruniva-lockup-mark{
    width:42px!important;
    min-width:42px!important;
    height:42px!important;
    padding:6px!important;
  }
}

/* === VERUNIVA v0.40.0 ASSET PREP · PREVIEW 8 END === */

/* === VERUNIVA v0.40.0 ASSET INTEGRATION · PREVIEW 9 START === */

.premium-home-hero-image{
  object-position:50% 18%!important;
}
.premium-route-training .premium-route-media img{
  object-position:50% 22%!important;
}
.onboarding-visual > img{
  object-position:50% 18%!important;
}
.premium-training-hero-image{
  object-position:50% 18%!important;
}

.premium-home-hero-image,
.premium-route-media img,
.onboarding-visual > img,
.premium-training-hero-image,
.premium-training-program-card img,
.premium-training-exercise-image{
  filter:none!important;
}

.premium-home-hero-shade,
.onboarding-visual-shade,
.premium-training-hero-shade{
  background:
    linear-gradient(90deg,rgba(5,16,20,.90) 0%,rgba(5,16,20,.62) 45%,rgba(5,16,20,.16) 78%,rgba(5,16,20,.08) 100%)!important;
}

@media(max-width:760px){
  .premium-home-hero-image{object-position:50% 10%!important}
  .onboarding-visual > img{object-position:50% 12%!important}
  .premium-training-hero-image{object-position:50% 12%!important}
}

/* === VERUNIVA v0.40.0 ASSET INTEGRATION · PREVIEW 9 END === */

/* === VERUNIVA v0.40.0 NAV ICON CONSISTENCY · PREVIEW 9 HOTFIX 4 START === */

/* Estado normal: iconos secundarios legibles y consistentes. */
.sidebar nav a,
.sidebar-nav a,
.nav-item,
.app-nav-item,
.side-nav-item,
[data-nav-item]{
  --veruniva-nav-icon-color:#9bb0b5;
}

.sidebar nav a svg,
.sidebar-nav a svg,
.nav-item svg,
.app-nav-item svg,
.side-nav-item svg,
[data-nav-item] svg{
  color:var(--veruniva-nav-icon-color)!important;
  opacity:1!important;
  filter:none!important;
}

/* Estado activo/seleccionado:
   el icono NO se oscurece; pasa al acento VERUNIVA. */
.sidebar nav a.active,
.sidebar nav a.is-active,
.sidebar nav a[aria-current="page"],
.sidebar-nav a.active,
.sidebar-nav a.is-active,
.sidebar-nav a[aria-current="page"],
.nav-item.active,
.nav-item.is-active,
.nav-item[aria-current="page"],
.app-nav-item.active,
.app-nav-item.is-active,
.app-nav-item[aria-current="page"],
.side-nav-item.active,
.side-nav-item.is-active,
.side-nav-item[aria-current="page"],
[data-nav-item].active,
[data-nav-item].is-active,
[data-nav-item][aria-current="page"]{
  --veruniva-nav-icon-color:#39e2c2;
}

.sidebar nav a.active svg,
.sidebar nav a.is-active svg,
.sidebar nav a[aria-current="page"] svg,
.sidebar-nav a.active svg,
.sidebar-nav a.is-active svg,
.sidebar-nav a[aria-current="page"] svg,
.nav-item.active svg,
.nav-item.is-active svg,
.nav-item[aria-current="page"] svg,
.app-nav-item.active svg,
.app-nav-item.is-active svg,
.app-nav-item[aria-current="page"] svg,
.side-nav-item.active svg,
.side-nav-item.is-active svg,
.side-nav-item[aria-current="page"] svg,
[data-nav-item].active svg,
[data-nav-item].is-active svg,
[data-nav-item][aria-current="page"] svg{
  color:#39e2c2!important;
  opacity:1!important;
  filter:none!important;
}

/* Lucide/Feather-style icons suelen usar currentColor en stroke.
   Forzamos el stroke sin rellenar iconos outline. */
.sidebar nav a svg *,
.sidebar-nav a svg *,
.nav-item svg *,
.app-nav-item svg *,
.side-nav-item svg *,
[data-nav-item] svg *{
  stroke:currentColor!important;
}

/* Evita que reglas de estado activo apliquen filtros oscuros a iconos raster. */
.sidebar nav a.active img,
.sidebar nav a.is-active img,
.sidebar nav a[aria-current="page"] img,
.sidebar-nav a.active img,
.sidebar-nav a.is-active img,
.sidebar-nav a[aria-current="page"] img,
.nav-item.active img,
.nav-item.is-active img,
.nav-item[aria-current="page"] img,
.app-nav-item.active img,
.app-nav-item.is-active img,
.app-nav-item[aria-current="page"] img,
.side-nav-item.active img,
.side-nav-item.is-active img,
.side-nav-item[aria-current="page"] img{
  opacity:1!important;
  filter:none!important;
}

/* === VERUNIVA v0.40.0 NAV ICON CONSISTENCY · PREVIEW 9 HOTFIX 4 END === */

/* VERUNIVA v0.40.0 RC39 — Access Gate Premium Dark Polish */
.private-beta-gate{
  background:
    radial-gradient(circle at 10% 8%,rgba(57,226,194,.14),transparent 31%),
    radial-gradient(circle at 88% 88%,rgba(57,226,194,.08),transparent 30%),
    linear-gradient(180deg,#061012 0%,#071114 100%);
}
.private-gate-shell{
  border-color:#1f3a40;
  background:#0a171b;
  box-shadow:0 34px 100px rgba(0,0,0,.42);
}
.private-gate-brand{
  background:
    radial-gradient(circle at 85% 80%,rgba(57,226,194,.08),transparent 34%),
    linear-gradient(145deg,#0d1b20 0%,#081518 78%);
}
.private-gate-brand:after{border-color:rgba(57,226,194,.055)}
.private-gate-logo>span{
  background:linear-gradient(145deg,#39e2c2,#66f0d6);
  box-shadow:0 12px 32px rgba(57,226,194,.16);
}
.private-gate-logo small{color:#8fa8ad}
.private-gate-copy p{color:#a7bcc0}
.private-gate-pillars>div{
  border-color:#234047;
  background:rgba(13,27,32,.78);
}
.private-gate-pillars small{color:#8fa8ad}
.private-gate-foot{color:#6f898e}

.private-gate-access{
  position:relative;
  background:
    radial-gradient(circle at 100% 0%,rgba(57,226,194,.08),transparent 36%),
    linear-gradient(180deg,#0d1b20 0%,#0a171b 100%);
  color:#f4f8f7;
  border-left:1px solid #1f3a40;
}
.private-gate-access:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(115deg,rgba(255,255,255,.018),transparent 38%);
}
.private-gate-access>*{position:relative;z-index:1}
.private-gate-label{color:#66f0d6}
.private-gate-access-head h2,
.private-gate-method h2{color:#f4f8f7}
.private-gate-access-head p,
.private-gate-method p,
.private-gate-invite-note p{color:#9eb3b8}

.private-gate-status{
  border-color:#29474e;
  background:#102329;
  color:#cfe0e3;
}
.private-gate-status.is-checking span{
  border-color:#456069;
  border-top-color:#39e2c2;
}

.private-gate-google{
  border-color:#2b474e;
  background:#112329;
  color:#f4f8f7;
  box-shadow:0 10px 28px rgba(0,0,0,.12);
}
.private-gate-google:hover{
  border-color:#39e2c2;
  background:#142a31;
  box-shadow:0 12px 30px rgba(0,0,0,.2);
}
.private-gate-google .provider-g{
  background:#e9efee;
  color:#132019;
}
.private-gate-google small{color:#8fa8ad}

.private-gate-divider{color:#718c92}
.private-gate-divider:before,
.private-gate-divider:after{background:#244047}

.private-gate-form label{color:#cbd8db}
.private-gate-form input{
  border-color:#29474e;
  background:#08161a;
  color:#f4f8f7;
  caret-color:#39e2c2;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.012);
}
.private-gate-form input::placeholder{color:#62777d}
.private-gate-form input:hover{border-color:#365960}
.private-gate-form input:focus{
  border-color:#39e2c2;
  background:#0a1b20;
  box-shadow:0 0 0 3px rgba(57,226,194,.12);
}
.private-gate-form .btn.btn-outline{
  border-color:#31545c;
  background:#163039;
  color:#f4f8f7;
}
.private-gate-form .btn.btn-outline:hover{
  border-color:#39e2c2;
  background:#1a3841;
}
.private-gate-form .btn.btn-primary{
  background:linear-gradient(135deg,#39e2c2,#66f0d6);
  color:#061315;
  border-color:transparent;
  box-shadow:0 10px 26px rgba(57,226,194,.12);
}
.private-gate-link{color:#66f0d6}
.private-gate-link:hover{color:#a0fff0}

.private-gate-method{border-top-color:#244047}
.private-gate-invite-note{
  border-color:#29474e;
  background:#102329;
}
.private-gate-invite-note strong{color:#edf7f5}
.private-gate-security{border-top-color:#244047}
.private-gate-security strong{color:#dbe8ea}
.private-gate-security span{color:#82999f}

@media(max-width:820px){
  .private-gate-access{border-left:0;border-top:1px solid #1f3a40}
}

/* VERUNIVA v0.40.0 RC40 — Access Logo Fix + Mobile Compression */

.private-gate-logo{
  align-items:center;
  gap:13px;
}
.private-gate-logo>.veruniva-lockup-mark{
  width:46px!important;
  min-width:46px!important;
  height:44px!important;
  display:grid!important;
  place-items:center!important;
  flex:0 0 auto!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  color:transparent!important;
  font-size:0!important;
  line-height:0!important;
  overflow:visible!important;
}
.private-gate-logo>.veruniva-lockup-mark::before,
.private-gate-logo>.veruniva-lockup-mark::after{
  content:none!important;
  display:none!important;
}
.private-gate-logo>.veruniva-lockup-mark .veruniva-mark-svg{
  width:100%!important;
  height:100%!important;
  display:block!important;
  overflow:visible!important;
  filter:drop-shadow(0 7px 15px rgba(57,226,194,.14));
}
.private-gate-logo>div{min-width:0}
.private-gate-logo strong{
  color:#f4f8f7;
  font-size:19px;
  font-weight:850;
  letter-spacing:.22em;
  line-height:1;
}
.private-gate-logo small{
  margin-top:4px;
  color:#39e2c2;
  font-size:8px;
  font-weight:800;
  letter-spacing:.14em;
  line-height:1.2;
}

@media(max-width:820px){
  .private-gate-brand{
    padding:22px 20px 18px;
  }
  .private-gate-logo>.veruniva-lockup-mark{
    width:42px!important;
    min-width:42px!important;
    height:40px!important;
  }
  .private-gate-logo strong{
    font-size:18px;
    letter-spacing:.19em;
  }
  .private-gate-logo small{
    font-size:7px;
    letter-spacing:.13em;
  }
  .private-gate-copy{
    margin:24px 0 17px;
    max-width:none;
  }
  .private-gate-copy .premium-overline{font-size:9px}
  .private-gate-copy h1{
    margin:10px 0 12px;
    font-size:clamp(31px,8.7vw,39px);
    line-height:1.01;
    letter-spacing:-.04em;
  }
  .private-gate-copy p{
    max-width:560px;
    font-size:13px;
    line-height:1.5;
  }
  .private-gate-pillars{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:7px;
  }
  .private-gate-pillars>div{
    min-width:0;
    min-height:66px;
    padding:9px 8px;
    gap:7px;
    align-items:flex-start;
    flex-direction:column;
    justify-content:center;
  }
  .private-gate-pillars .icon{
    width:17px;
    height:17px;
  }
  .private-gate-pillars strong{
    font-size:10px;
    line-height:1.1;
  }
  .private-gate-pillars small{display:none}
  .private-gate-foot{
    margin-top:11px;
    font-size:9px;
    line-height:1.4;
  }
  .private-gate-access{
    padding:24px 20px 30px;
  }
  .private-gate-access-head{margin-bottom:17px}
  .private-gate-access-head h2{
    margin:7px 0 7px;
    font-size:26px;
  }
  .private-gate-access-head p{
    font-size:12px;
    line-height:1.45;
  }
  .private-gate-google{padding:11px 13px}
  .private-gate-divider{margin:15px 0}
  .private-gate-form{gap:10px}
  .private-gate-form input{padding:11px 12px}
  .private-gate-method{
    margin-top:18px;
    padding-top:18px;
  }
  .private-gate-invite-note{
    margin-top:18px;
    padding:13px 14px;
  }
  .private-gate-security{
    margin-top:18px;
    padding-top:14px;
  }
}

@media(max-width:390px){
  .private-gate-brand{padding:20px 17px 16px}
  .private-gate-copy{margin:21px 0 15px}
  .private-gate-copy h1{font-size:31px}
  .private-gate-copy p{font-size:12px}
  .private-gate-pillars>div{
    min-height:62px;
    padding:8px 7px;
  }
  .private-gate-access{padding:22px 17px 28px}
}
