:root{--ink:#09152f;--muted:#6b7280;--red:#ef3128;--red2:#ff6b2c;--gold:#f6bf1f;--gold-soft:#ffd978;--blue:#173f7a;--blue-soft:#244f8f;--bg:#f7f8fc;--card:#ffffff;--line:#e7eaf0;--radius:22px;--shadow:0 18px 55px rgba(9,21,47,.12)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:#fff}button,input,select,textarea{font:inherit}a{text-decoration:none;color:inherit}.site-header{height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;position:sticky;top:0;background:rgba(255,255,255,.95);backdrop-filter:blur(16px);z-index:30;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;font-weight:900}.brand img{width:52px;height:52px;border-radius:50%;object-fit:cover}.site-header nav{display:flex;align-items:center;gap:24px;font-weight:700}.menu-btn{display:none;border:0;background:none;font-size:26px}.btn{border:0;background:linear-gradient(135deg,var(--red),var(--red2));color:#fff;padding:14px 22px;border-radius:13px;font-weight:800;cursor:pointer;box-shadow:0 8px 22px rgba(215,44,36,.24);display:inline-block}.btn:hover{transform:translateY(-1px)}.btn-small{padding:10px 16px}.btn-ghost{background:transparent;border:1px solid rgba(255,255,255,.55);box-shadow:none}.btn-light{background:#fff;color:var(--red);box-shadow:none}.btn.secondary{background:#fff;color:var(--ink);border:1px solid var(--line);box-shadow:none}.btn.danger{background:#b42318}.full{width:100%}.hero{min-height:690px;position:relative;display:flex;align-items:center;padding:80px 8vw;background:linear-gradient(110deg,#0d1020 0%,rgba(13,16,32,.93) 46%,rgba(13,16,32,.45) 100%),url('assets/images/hero-run-muscle-logo.png') center 28%/cover}.hero-content{position:relative;color:#fff;max-width:730px}.eyebrow{font-size:.78rem;font-weight:900;letter-spacing:.16em;color:var(--red2)}.hero h1{font-size:clamp(2.8rem,6vw,5.7rem);line-height:.98;margin:14px 0 22px}.hero p{font-size:1.2rem;line-height:1.7;color:#e6e8ef}.actions{display:flex;gap:12px;margin:30px 0}.hero small{color:#cbd0db}.stats{max-width:1180px;margin:-45px auto 0;position:relative;z-index:3;background:#fff;border-radius:20px;box-shadow:var(--shadow);padding:28px;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.stats div{display:flex;flex-direction:column;border-right:1px solid var(--line);padding:0 18px}.stats div:last-child{border:0}.stats strong{font-size:1.1rem}.stats span{color:var(--muted);font-size:.9rem;margin-top:5px}.section{padding:100px 7vw}.section.alt{background:var(--bg)}.section-head{text-align:center;max-width:760px;margin:0 auto 45px}.section-head h2,.profile-section h2{font-size:clamp(2rem,4vw,3.4rem);margin:10px 0}.section-head p{color:var(--muted);line-height:1.7}.cards{display:grid;gap:22px;max-width:1180px;margin:auto}.cards.three{grid-template-columns:repeat(3,1fr)}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:28px;box-shadow:0 10px 35px rgba(16,24,40,.06)}.icon-card span{font-size:2rem}.card h3{margin:15px 0 10px}.card p{color:var(--muted);line-height:1.65}.price{font-size:2.4rem;font-weight:900;margin:12px 0}.price small{font-size:.9rem;color:var(--muted)}.features{padding:0;list-style:none}.features li{padding:8px 0}.features li:before{content:'✓';color:#12a150;font-weight:900;margin-right:10px}.product-img{width:100%;height:170px;object-fit:cover;border-radius:15px;background:#eee}.profile-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:65px;align-items:center}.profile-photo img{width:100%;max-height:600px;object-fit:cover;object-position:center top;border-radius:28px;box-shadow:var(--shadow)}.profile-section p{line-height:1.8;color:var(--muted)}.notice{background:#fff7e6;border:1px solid #ffd894;padding:16px;border-radius:14px;margin:20px 0}.cta{padding:75px 8vw;background:linear-gradient(135deg,var(--red),#ff7a32);color:#fff;display:flex;align-items:center;justify-content:space-between}.cta h2{font-size:clamp(2rem,4vw,3.5rem);max-width:760px}footer{padding:48px 7vw;background:#0e1320;color:#fff}footer p{color:#abb3c3}.fine{font-size:.85rem}.modal{position:fixed;inset:0;background:rgba(10,14,24,.7);display:none;align-items:center;justify-content:center;z-index:50;padding:20px}.modal.open{display:flex}.modal-card{background:#fff;border-radius:24px;padding:32px;width:min(480px,100%);position:relative;box-shadow:var(--shadow)}.close{position:absolute;right:18px;top:12px;border:0;background:none;font-size:28px;cursor:pointer}.modal label{display:block;margin:15px 0;font-weight:700}.modal input{width:100%;margin-top:7px;padding:13px;border:1px solid #ccd2dc;border-radius:11px}.modal label input[type=checkbox]{width:auto}.demo-box{background:var(--bg);padding:14px;border-radius:12px;margin-top:16px;display:grid;gap:6px}.quick-access-box{background:var(--bg);border:1px solid var(--line);padding:18px;border-radius:16px;margin:16px 0}.quick-access-box p{margin:12px 0;color:var(--muted);line-height:1.5}.quick-access-box small{display:block;margin-top:12px;color:var(--muted);line-height:1.45}.quick-access-actions{display:grid;gap:10px}.login-divider{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:.82rem;margin:20px 0 8px}.login-divider:before,.login-divider:after{content:'';height:1px;background:var(--line);flex:1}.form-msg{font-weight:700}.portal-body{background:var(--bg);min-height:100vh}.sidebar{position:fixed;left:0;top:0;bottom:0;width:270px;background:#101728;color:#fff;padding:22px;overflow:auto;z-index:20}.sidebar .brand{margin-bottom:24px}.user-badge{background:#1d2940;border-radius:14px;padding:14px;margin-bottom:20px}.user-badge small{color:#aab3c3;display:block}.sidebar nav{display:grid;gap:6px}.side-link{width:100%;border:0;background:transparent;color:#dce1ea;text-align:left;padding:12px;border-radius:10px;cursor:pointer;font-weight:700}.side-link:hover,.side-link.active{background:#26344f;color:#fff}.side-link.danger{margin-top:25px;color:#ffb3ad}.portal-top{position:fixed;left:270px;right:0;top:0;height:74px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 28px;z-index:15;gap:16px}.portal-top>div{flex:1;display:flex;flex-direction:column}.portal-top small{color:var(--muted)}#sideToggle{display:none;border:0;background:none;font-size:24px}.notification{border:0;background:#f4f6fa;border-radius:12px;padding:10px;position:relative}.notification span{position:absolute;right:-5px;top:-5px;background:var(--red);color:#fff;border-radius:50%;font-size:10px;width:18px;height:18px;display:grid;place-items:center}.portal-main{margin-left:270px;padding:105px 30px 50px}.dashboard-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.metric{background:#fff;padding:22px;border-radius:18px;border:1px solid var(--line)}.metric strong{font-size:1.7rem;display:block}.metric small{color:var(--muted)}.panel{background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px;margin-top:20px;overflow:auto}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px}.panel h2{margin:0}.data-table{width:100%;border-collapse:collapse;min-width:760px}.data-table th,.data-table td{text-align:left;padding:13px;border-bottom:1px solid var(--line);font-size:.9rem}.badge{display:inline-block;padding:6px 10px;border-radius:100px;background:#edf2ff;color:#31549a;font-weight:800;font-size:.75rem}.badge.green{background:#e8f8ee;color:#187a3f}.badge.orange{background:#fff0dd;color:#a35209}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.form-grid .wide{grid-column:1/-1}.form-grid label{font-weight:750;font-size:.9rem}.form-grid input,.form-grid select,.form-grid textarea{width:100%;border:1px solid #ccd2dc;border-radius:10px;padding:11px;margin-top:6px}.week-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:10px;min-width:900px}.day-card{border:1px solid var(--line);border-radius:14px;padding:12px;background:#fafbfc}.day-card strong{display:block;margin-bottom:8px}.progress-bar{height:10px;background:#e9edf3;border-radius:100px;overflow:hidden}.progress-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--red),var(--gold))}.chart{height:230px;display:flex;align-items:end;gap:12px;padding:22px 0}.bar{flex:1;background:linear-gradient(180deg,var(--red2),var(--red));min-height:8px;border-radius:8px 8px 0 0;position:relative}.bar span{position:absolute;bottom:-25px;font-size:.72rem;color:var(--muted)}.toast{position:fixed;right:25px;bottom:25px;background:#101728;color:#fff;padding:14px 18px;border-radius:12px;opacity:0;transform:translateY(20px);transition:.25s;z-index:99}.toast.show{opacity:1;transform:none}@media(max-width:900px){.site-header nav{display:none;position:absolute;top:82px;left:0;right:0;background:#fff;padding:20px;flex-direction:column}.site-header nav.open{display:flex}.menu-btn{display:block}.stats{grid-template-columns:1fr 1fr;margin:0;border-radius:0}.cards.three{grid-template-columns:1fr 1fr}.profile-section{grid-template-columns:1fr}.sidebar{transform:translateX(-100%);transition:.25s}.sidebar.open{transform:none}.portal-top{left:0}.portal-main{margin-left:0}.dashboard-grid{grid-template-columns:1fr 1fr}#sideToggle{display:block}}@media(max-width:620px){.hero{min-height:620px;padding:60px 6vw}.hero h1{font-size:2.7rem}.actions{flex-direction:column;align-items:flex-start}.stats,.cards.three,.dashboard-grid,.grid-2,.form-grid{grid-template-columns:1fr}.stats div{border-right:0;border-bottom:1px solid var(--line);padding:15px}.section{padding:70px 5vw}.cta{flex-direction:column;align-items:flex-start}.portal-main{padding:95px 14px 30px}}
.sponsor-section{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center;background:linear-gradient(135deg,#fff7ef,#fff)}.sponsor-section h2{font-size:clamp(2.3rem,4vw,4rem);margin:10px 0}.sponsor-copy p{font-size:1.1rem;line-height:1.7;color:var(--muted)}.sponsor-image img{width:100%;border-radius:22px;box-shadow:var(--shadow)}.coupon{display:flex;align-items:center;gap:14px;margin:24px 0}.coupon span{font-size:.8rem;font-weight:900;letter-spacing:.15em;color:var(--muted)}.coupon strong{font-size:2rem;padding:8px 20px;border:2px dashed var(--red);border-radius:12px;color:var(--red)}.check-list{display:grid;gap:12px;padding-left:22px}.calendar-title{text-align:center;text-transform:capitalize;font-size:1.5rem;font-weight:900;margin:12px 0 20px}.calendar-weekdays,.month-grid{display:grid;grid-template-columns:repeat(7,1fr)}.calendar-weekdays b{text-align:center;padding:9px;color:var(--muted)}.calendar-cell{min-height:110px;border:1px solid var(--line);padding:8px;background:#fff}.calendar-cell.empty{background:#f8f9fb}.calendar-cell>strong{display:block;margin-bottom:7px}.calendar-event{display:block;font-size:.75rem;background:#fff0e7;color:#9b331e;padding:6px;border-radius:8px;margin-top:5px}.calorie-ring{--pct:0;width:210px;height:210px;border-radius:50%;margin:25px auto;display:grid;place-items:center;background:conic-gradient(var(--red) calc(var(--pct)*1%),#edf0f4 0);position:relative}.calorie-ring:before{content:'';position:absolute;width:158px;height:158px;border-radius:50%;background:#fff}.calorie-ring span{position:relative;text-align:center;font-size:2rem;font-weight:900}.calorie-ring small{display:block;font-size:.75rem;color:var(--muted);font-weight:700}.negative{color:#b42318}.big-number{font-size:3rem}.form-grid textarea{min-height:90px}.data-table button{padding:8px 12px}.portal-main .notice{background:#fff7e6}.hero-content{z-index:2}@media(max-width:900px){.sponsor-section{grid-template-columns:1fr}.month-grid{min-width:760px}.panel:has(.month-grid){overflow:auto}}@media(max-width:620px){.sponsor-section{padding:65px 5vw}.calendar-cell{min-height:90px}.calorie-ring{width:180px;height:180px}.calorie-ring:before{width:136px;height:136px}}


/* Avisos legales */
.legal-section{background:#fffaf7}.legal-cards .card{border-left:4px solid var(--accent,#d72c24)}.legal-cards h3{margin-top:0}.legal-master{margin:24px auto 0;max-width:1100px}.consent-check{display:flex!important;gap:10px;align-items:flex-start}.consent-check input{width:auto!important;margin-top:4px}.fine a{color:inherit;text-decoration:underline}.legal-section .card p{line-height:1.65}.legal-section .section-head{max-width:900px}
.book-sale{max-width:1050px;margin:auto;display:grid;grid-template-columns:.8fr 1.2fr;gap:45px;align-items:center}.book-cover{aspect-ratio:8.5/11;background:linear-gradient(145deg,#111827,#1f2937);color:#fff;border:8px solid #e33b2f;border-radius:8px;padding:45px;display:flex;flex-direction:column;justify-content:center;box-shadow:var(--shadow)}.book-cover img{width:110px;height:110px;object-fit:cover;border-radius:50%;margin-bottom:40px}.book-cover span{letter-spacing:.18em;font-weight:900;color:#ff6b4a}.book-cover h3{font-size:3rem;line-height:1;margin:18px 0}.book-details{background:#fff;border-radius:24px;padding:35px;box-shadow:var(--shadow)}.code-box{background:#f4f6fa;border:2px dashed #d72c24;border-radius:14px;padding:18px;text-align:center;margin-top:18px}.code-box code{font-size:1.4rem;font-weight:900;display:block;margin:8px}.risk-stop{background:#fff1f0;border:1px solid #f4aaa3;padding:18px;border-radius:14px}.profile-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.profile-summary div{background:#f7f8fb;padding:14px;border-radius:12px}.book-link{display:inline-block;margin-top:10px}@media(max-width:800px){.book-sale{grid-template-columns:1fr}.book-cover{max-width:430px;margin:auto}.profile-summary{grid-template-columns:1fr 1fr}}

.day-card details{margin-top:14px;border-top:1px solid #dfe5ef;padding-top:10px}.day-card summary{cursor:pointer;font-weight:800;color:#173b86}.day-card details p{font-size:.9rem;line-height:1.45;margin:9px 0}.book-ref{display:inline-block;margin-top:5px;font-weight:800;color:#c92b21;text-decoration:none}.day-card.next-day{outline:3px solid #f0a23a;background:#fffaf0}.day-card.next-day>strong{color:#a34d00}

.plan-reason{font-size:.78rem;color:#526079;background:#eef3fb;border-radius:8px;padding:7px 9px;margin:10px 0}.calendar-today{outline:2px solid #d72c24;outline-offset:-2px}.day-card.next-day{box-shadow:0 0 0 2px #d72c24 inset}.day-card>strong{display:block;line-height:1.35}

/* Membresías ATH Móvil */
.membership-section{background:linear-gradient(180deg,#fff,#f7f9fc)}.membership-plans{max-width:1100px;margin:32px auto;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.membership-plan{background:#fff;border:1px solid var(--line);border-radius:22px;padding:25px;display:flex;flex-direction:column;gap:12px;box-shadow:0 10px 30px rgba(16,24,40,.06)}.membership-plan.featured{outline:3px solid var(--red);transform:translateY(-6px)}.membership-plan h3{font-size:1.45rem;margin:5px 0}.membership-plan>strong{font-size:2rem}.membership-plan small{color:var(--muted);min-height:35px}.membership-modal-card{width:min(900px,94vw);max-height:90vh;overflow:auto}.payment-summary{padding:18px;background:#f5f7fb;border-radius:15px;display:flex;justify-content:space-between;align-items:center}.payment-summary strong{font-size:1.8rem;color:var(--red)}.legal-acceptance{border:1px solid #f0c6a7;background:#fff8ef;border-radius:15px;padding:18px}.legal-acceptance p{line-height:1.6}.tiny{padding:7px 10px!important;font-size:.78rem}.document-list{display:grid;gap:10px;margin-top:20px}.document-row{display:grid;grid-template-columns:1fr auto auto auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:13px;padding:13px}.document-row small{display:block;color:var(--muted);margin-top:4px}.plan-preview{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:20px}.plan-preview div{background:#f7f8fb;padding:14px;border-radius:12px;display:grid;gap:4px}.plan-preview span{font-size:1.3rem;font-weight:900}.client-documents{display:grid;gap:14px}.client-document{border:1px solid var(--line);padding:18px;border-radius:15px;display:flex;justify-content:space-between;align-items:center;gap:20px}.formatted-text{white-space:normal;line-height:1.75}.pending-card{max-width:760px;margin:40px auto!important;text-align:center;padding:40px}.pending-card h2{margin-top:18px}.portal-main textarea{min-height:130px}@media(max-width:900px){.membership-plans{grid-template-columns:1fr 1fr}.plan-preview{grid-template-columns:1fr 1fr}}@media(max-width:620px){.membership-plans{grid-template-columns:1fr}.membership-plan.featured{transform:none}.document-row{grid-template-columns:1fr 1fr}.document-row>div{grid-column:1/-1}.client-document{align-items:flex-start;flex-direction:column}.membership-modal-card .form-grid{grid-template-columns:1fr}}

/* V10: membresías, progreso visible y coach inteligente */
.membership-brand{max-width:950px;margin:28px auto 0;display:flex;align-items:center;gap:20px;background:#fff;border:1px solid #e4e8ef;border-radius:22px;padding:22px;box-shadow:0 14px 35px rgba(20,28,45,.08)}
.membership-brand img{width:88px;height:88px;border-radius:50%;object-fit:cover}.membership-brand p{margin:6px 0 0;color:#5b6474}
.coach-card{background:linear-gradient(135deg,#121c31,#243554);color:#fff;border-radius:24px;padding:28px;margin-bottom:22px;box-shadow:0 18px 42px rgba(15,25,45,.2)}.coach-card span{font-size:.78rem;letter-spacing:.18em;color:#ff6a52;font-weight:800}.coach-card h2{margin:10px 0;font-size:1.55rem}.coach-card p{color:#dbe2ef;margin:0}
.badge-wall{display:flex;gap:12px;flex-wrap:wrap}.badge-wall span{background:#fff5e9;border:1px solid #ffd7a5;border-radius:999px;padding:10px 14px;font-weight:700}
.badge.red{background:#fde8e7;color:#a7211b}.generation-card{text-align:center;max-width:650px;margin:70px auto}.generation-progress{height:12px;background:#e9edf3;border-radius:99px;overflow:hidden;margin:25px 0}.generation-progress span{display:block;height:100%;width:100%;background:linear-gradient(90deg,#ec3028,#ff7258);animation:generate 2.2s ease-in-out forwards;transform-origin:left}@keyframes generate{from{transform:scaleX(.08)}to{transform:scaleX(1)}}
@media(max-width:700px){.membership-brand{align-items:flex-start}.membership-brand img{width:68px;height:68px}}

.calorie-target-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:22px 0}.calorie-target{border:1px solid var(--line);background:#f8fafc;border-radius:18px;padding:20px;display:flex;flex-direction:column;gap:5px;position:relative}.calorie-target.active{border:2px solid var(--red);background:#fff6f3;box-shadow:0 10px 28px rgba(215,44,36,.12)}.calorie-target.active:after{content:'META ACTUAL';position:absolute;right:12px;top:12px;font-size:.65rem;font-weight:900;color:var(--red)}.calorie-target small{font-weight:800;color:var(--muted)}.calorie-target strong{font-size:2.25rem;line-height:1}.calorie-target span{font-size:.82rem;font-weight:800;color:var(--muted)}.calorie-target p{margin:8px 0 0;color:var(--muted);line-height:1.45}.calorie-target.aggressive{background:#fffaf2}.mifflin-details{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:18px 0}.mifflin-details div{background:#f4f6fa;border-radius:12px;padding:13px}.mifflin-details b,.mifflin-details span{display:block}.mifflin-details span{margin-top:5px;font-size:1.05rem}.formula-box{background:#f7f8fb;border:1px solid var(--line);border-radius:14px;padding:14px;margin:16px 0}.formula-box summary{cursor:pointer;font-weight:850}.formula-box p{line-height:1.6;color:var(--muted)}.calorie-goal-form{display:flex;align-items:end;gap:12px;margin-top:18px}.calorie-goal-form label{font-weight:800;flex:1}.calorie-goal-form select{width:100%;margin-top:7px;padding:12px;border:1px solid #ccd2dc;border-radius:10px;background:#fff}.aggressive-warning{background:#fff1f0;border:1px solid #f2a39d;color:#7a271a;padding:15px;border-radius:13px;margin-top:15px;line-height:1.55}.field-help{display:block;color:var(--muted);font-weight:500;line-height:1.4;margin-top:6px}@media(max-width:900px){.calorie-target-grid{grid-template-columns:1fr}.mifflin-details{grid-template-columns:1fr 1fr}}@media(max-width:620px){.mifflin-details{grid-template-columns:1fr}.calorie-goal-form{align-items:stretch;flex-direction:column}.calorie-goal-form .btn{width:100%}}


/* V12: escáner de alimentos y constructor de comidas */
.food-hero{display:flex;justify-content:space-between;align-items:center;gap:24px;background:linear-gradient(135deg,#fff,#fff4ee)}.food-hero h2{margin:.25rem 0}.food-balance{text-align:center;background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px 28px;min-width:170px}.food-balance strong{display:block;font-size:2.2rem;color:var(--red)}.food-balance span{font-size:.8rem;color:var(--muted);font-weight:800}.food-tool-tabs{display:flex;gap:10px;overflow:auto;margin:0 0 18px}.food-tab{border:1px solid var(--line);background:#fff;padding:12px 16px;border-radius:999px;font-weight:850;white-space:nowrap;cursor:pointer}.food-tab.active{background:#172033;color:#fff;border-color:#172033}.hidden{display:none!important}.scanner-grid,.meal-builder{display:grid;grid-template-columns:1fr 1fr;gap:24px}.camera-box{min-height:290px;border:2px dashed #cbd2dc;border-radius:18px;background:#121722;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;position:relative;padding:18px;text-align:center}.camera-box video{width:100%;max-height:240px;object-fit:cover;border-radius:12px}.scan-line{position:absolute;left:12%;right:12%;top:50%;height:2px;background:#ff4b3e;box-shadow:0 0 10px #ff4b3e}.scanner-actions{display:flex;gap:8px;position:relative;z-index:2}.product-result{display:grid;grid-template-columns:150px 1fr;gap:22px;border:1px solid var(--line);border-radius:18px;padding:20px;margin-top:20px;background:#fafbfc}.product-result>img{width:150px;height:150px;object-fit:contain;background:#fff;border-radius:12px}.product-result label{display:inline-grid;margin:8px 10px 8px 0;font-weight:800}.product-result input,.product-result select,.meal-builder input,.meal-builder select{padding:10px;border:1px solid #ccd2dc;border-radius:9px;background:#fff}.product-nutrients{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.product-nutrients span,.product-nutrients b{background:#eef2f7;border-radius:999px;padding:7px 10px;font-size:.82rem}.loading-food{text-align:center;padding:28px;font-weight:800}.meal-builder>div{min-width:0}.meal-builder label{display:grid;gap:7px;font-weight:800;margin-bottom:14px}.food-catalog{display:grid;gap:8px;max-height:430px;overflow:auto}.food-option{text-align:left;border:1px solid var(--line);border-radius:12px;background:#fff;padding:12px;cursor:pointer}.food-option:hover{border-color:var(--red)}.food-option b,.food-option small{display:block}.food-option small{color:var(--muted);margin-top:4px}.meal-cart{background:#f7f8fb;border-radius:18px;padding:18px}.meal-item{display:grid;grid-template-columns:1fr 90px 80px 32px;gap:8px;align-items:center;background:#fff;border-radius:11px;padding:10px;margin-bottom:8px}.meal-item small{display:block;color:var(--muted)}.meal-item label{font-size:.7rem;margin:0}.meal-item input{width:100%}.icon-delete{border:0;background:#fde8e7;color:#a7211b;width:30px;height:30px;border-radius:50%;font-size:1.2rem;cursor:pointer}.empty-state{text-align:center;color:var(--muted);padding:30px}.meal-analysis{display:grid;grid-template-columns:95px 1fr;gap:15px;margin:18px 0}.meal-score{width:85px;height:85px;border-radius:50%;background:#172033;color:#fff;display:grid;place-content:center;text-align:center}.meal-score strong{font-size:1.8rem;line-height:1}.meal-score span{font-size:.7rem}.meal-score small{font-size:.55rem}.learn-eating{background:#fff4e8;border-left:4px solid #ec5c35;padding:12px;border-radius:8px}.learn-eating p{margin:6px 0}.learn-eating a{font-weight:850;color:#b32920}.photo-drop{border:2px dashed #bcc6d4;border-radius:20px;padding:38px;text-align:center;display:grid;gap:8px;cursor:pointer;background:#fafbfc}.photo-drop input{display:none}.photo-drop span{font-size:2.4rem}.photo-drop small{color:var(--muted)}.photo-result{display:grid;grid-template-columns:220px 1fr;gap:20px;align-items:center;margin-top:20px}.photo-result img{width:220px;height:170px;object-fit:cover;border-radius:15px}.nutrition-summary{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.nutrition-summary div{background:#f5f7fa;border-radius:13px;padding:15px;text-align:center}.nutrition-summary strong,.nutrition-summary span{display:block}.nutrition-summary strong{font-size:1.25rem}.nutrition-summary span{font-size:.75rem;color:var(--muted);margin-top:4px}@media(max-width:850px){.scanner-grid,.meal-builder{grid-template-columns:1fr}.nutrition-summary{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.food-hero{align-items:stretch;flex-direction:column}.food-balance{width:100%}.product-result,.photo-result{grid-template-columns:1fr}.product-result>img,.photo-result img{width:100%;height:210px}.meal-item{grid-template-columns:1fr 80px 65px 30px}.meal-analysis{grid-template-columns:1fr}.nutrition-summary{grid-template-columns:1fr 1fr}}

/* V13 Ambassador Program */
.ambassador-cta{background:linear-gradient(135deg,#ff6b00,#ff9d00);border-color:transparent;color:#fff}.ambassador-section{background:linear-gradient(180deg,#fff 0%,#fff7f0 100%)}.ambassador-hero{display:grid;grid-template-columns:1.5fr .7fr;gap:32px;align-items:center;margin-bottom:28px}.ambassador-mark{min-height:260px;border-radius:28px;background:linear-gradient(145deg,#171717,#343434);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:0 18px 45px #0002}.ambassador-mark span{font-size:70px}.ambassador-mark strong{font-size:1.15rem;letter-spacing:.12em;margin-top:10px}.ambassador-mark small{color:#ff8a24;margin-top:8px}.ambassador-benefits{margin-top:24px;padding:26px;border-radius:22px;background:#171717;color:#fff}.ambassador-benefits p{color:#ddd;max-width:850px}.ambassador-benefits .btn{margin-top:8px}.goal-alert{border-left:5px solid #ff7a00;background:#fff4e8;padding:12px;border-radius:10px}.ambassador-code{font-weight:800;letter-spacing:.08em}.admin-notification{padding:14px;border-radius:14px;background:#fff3dc;border:1px solid #ffc978;margin-bottom:12px}.reward-box{display:grid;gap:8px;min-width:240px}.reward-box input,.reward-box textarea{width:100%}@media(max-width:760px){.ambassador-hero{grid-template-columns:1fr}.ambassador-mark{min-height:210px}}


/* V14 · Configuración de descuentos y cupones de embajadores */
.ambassador-admin-list{display:grid;gap:18px}.ambassador-admin-card{border:1px solid var(--line,#d9dee7);border-radius:18px;padding:18px;background:#fff;box-shadow:0 8px 24px rgba(15,23,42,.06)}.ambassador-admin-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.ambassador-admin-head h3{margin:0 0 5px}.coupon-number{display:block;text-align:right;margin-top:6px;font-weight:700}.coupon-admin-grid{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:12px;margin:16px 0}.coupon-admin-grid label{display:flex;flex-direction:column;gap:6px;font-weight:700}.coupon-admin-grid input,.coupon-admin-grid select{width:100%}.coupon-admin-grid small{font-weight:400}.coupon-stats{display:flex;flex-direction:column;justify-content:center;padding:12px;border-radius:12px;background:#f7f8fa}.coupon-actions{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:15px}.reward-box h4{margin:0 0 8px}.field-help.code-available{color:#167443}.field-help.code-unavailable{color:#b42318}@media(max-width:800px){.coupon-admin-grid{grid-template-columns:1fr 1fr}.ambassador-admin-head{flex-direction:column}.coupon-number{text-align:left}}@media(max-width:520px){.coupon-admin-grid{grid-template-columns:1fr}}
.table-scroll{width:100%;overflow-x:auto}.admin-master-table{min-width:1250px}.admin-master-table td{vertical-align:top;min-width:145px}.table-input{width:86px}.reward-locked{margin-top:14px;padding:14px;border:1px dashed #cbd5e1;border-radius:12px;background:#f8fafc;color:#64748b;font-size:.92rem}.guide-chapter-link{display:inline-flex;margin-top:10px;font-weight:800;color:#e66516;text-decoration:none}.guide-chapter-link:hover{text-decoration:underline}.coupon-actions{display:flex;gap:8px;flex-wrap:wrap}

.birthday-banner{display:flex;align-items:center;gap:16px;padding:20px 24px;margin-bottom:18px;border-radius:18px;background:linear-gradient(135deg,#fff2d8,#ffe2bc);border:1px solid #f2b75f;box-shadow:0 8px 24px rgba(148,84,0,.10)}
.birthday-banner>span{font-size:42px}.birthday-banner strong{font-size:1.25rem;color:#9a3f00}.birthday-banner p{margin:.35rem 0 0;color:#5f3a1d}

/* Alineación de casillas en la evaluación inicial */
.onboarding-check{display:flex!important;align-items:flex-start!important;justify-content:flex-start!important;gap:10px!important;margin:2px 0!important;line-height:1.45;cursor:pointer}
.onboarding-check input[type="checkbox"]{width:18px!important;height:18px!important;min-width:18px!important;flex:0 0 18px!important;margin:2px 0 0!important;padding:0!important}
.onboarding-check span{display:block;flex:1}


/* Alineación de la casilla en Registro diario */
.daily-check{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:10px!important;margin:2px 0!important;line-height:1.4;cursor:pointer}
.daily-check input[type="checkbox"]{width:18px!important;height:18px!important;min-width:18px!important;flex:0 0 18px!important;margin:0!important;padding:0!important}
.daily-check span{display:block;flex:0 1 auto}

/* V21: pestañas principales de nutrición */
.nutrition-main-tabs .food-tab:not(.active){
  background:#fff0e6;
  color:#c2410c;
  border-color:#f97316;
}
.nutrition-main-tabs .food-tab:not(.active):hover{
  background:#ffe2cc;
  border-color:#ea580c;
}

/* V22 · Asistente flotante Run and Muscle PR */
.rm-coach{position:fixed;right:22px;bottom:18px;z-index:1200;font-family:inherit}.rm-coach-launcher{width:92px;height:92px;border:0;border-radius:50%;padding:0;background:transparent;cursor:pointer;filter:drop-shadow(0 10px 16px rgba(15,23,42,.28));animation:rmCoachFloat 3s ease-in-out infinite}.rm-coach-launcher img{width:100%;height:100%;border-radius:50%;object-fit:cover;border:4px solid #f97316;background:#fff}.rm-coach-launcher:hover{transform:scale(1.06)}.rm-coach-pulse{position:absolute;right:3px;top:2px;width:22px;height:22px;border-radius:50%;background:#ef2f27;color:#fff;display:grid;place-items:center;font-size:.72rem;font-weight:900;border:2px solid #fff}.rm-coach-panel{position:absolute;right:0;bottom:105px;width:min(390px,calc(100vw - 28px));max-height:min(650px,calc(100vh - 150px));overflow:auto;border-radius:22px;background:#fff;border:1px solid #dfe4ec;box-shadow:0 22px 65px rgba(15,23,42,.25);display:none}.rm-coach.open .rm-coach-panel{display:block;animation:rmCoachOpen .22s ease-out}.rm-coach-head{display:flex;align-items:center;gap:12px;padding:15px;background:linear-gradient(135deg,#111827,#25324a);color:#fff;position:sticky;top:0;z-index:2}.rm-coach-head img{width:52px;height:52px;border-radius:50%;object-fit:cover;border:2px solid #fb923c}.rm-coach-head strong,.rm-coach-head small{display:block}.rm-coach-head small{color:#fed7aa;margin-top:3px}.rm-coach-close{margin-left:auto;border:0;background:#ffffff1c;color:#fff;width:34px;height:34px;border-radius:50%;font-size:1.2rem;cursor:pointer}.rm-coach-body{padding:16px}.rm-coach-message{background:#fff5eb;border-left:4px solid #f97316;border-radius:12px;padding:13px 14px;line-height:1.48;margin-bottom:13px}.rm-coach-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.rm-coach-action{border:1px solid #f97316;background:#fff;color:#9a3412;border-radius:12px;padding:11px 10px;font-weight:850;cursor:pointer}.rm-coach-action.primary{background:linear-gradient(135deg,#ef3128,#ff5c3f);color:#fff;border-color:transparent}.rm-coach-action.wide{grid-column:1/-1}.rm-coach-action:hover{transform:translateY(-1px)}.rm-coach-insights{margin-top:12px;display:grid;gap:8px}.rm-coach-insight{background:#f5f7fb;border-radius:11px;padding:11px;font-size:.9rem}.rm-coach-note{font-size:.75rem;color:#667085;line-height:1.4;margin-top:12px}.rm-coach-mini{position:absolute;right:82px;bottom:62px;background:#fff;border:1px solid #f7b267;border-radius:12px;padding:9px 12px;box-shadow:0 8px 24px #0002;font-weight:800;white-space:nowrap;animation:rmCoachHint 7s ease both}.rm-coach.open .rm-coach-mini{display:none}@keyframes rmCoachFloat{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-8px) rotate(1deg)}}@keyframes rmCoachOpen{from{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:none}}@keyframes rmCoachHint{0%,75%{opacity:0;transform:translateY(8px)}80%,95%{opacity:1;transform:none}100%{opacity:0}}@media(max-width:620px){.rm-coach{right:12px;bottom:12px}.rm-coach-launcher{width:76px;height:76px}.rm-coach-panel{bottom:87px}.rm-coach-mini{display:none}.rm-coach-actions{grid-template-columns:1fr}}

/* V23 · Mascota sin círculo, con brazos, expresión y vapor animados */
.rm-coach-launcher{width:128px;height:112px;border-radius:0;overflow:visible;filter:drop-shadow(0 12px 12px rgba(15,23,42,.24));animation:rmCoachFloat 3s ease-in-out infinite}
.rm-coach-character{position:absolute;inset:-18px -8px -8px -8px;display:block;transform-origin:50% 78%}
.rm-coach-character img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;border:0!important;border-radius:0!important;background:transparent!important;pointer-events:none}
.rm-coach-base{z-index:1}.rm-coach-arm{z-index:2}
.rm-coach-arm-left{clip-path:polygon(0 18%,43% 18%,43% 92%,0 92%);transform-origin:38% 64%;animation:rmLeftFlex 2.6s ease-in-out infinite}
.rm-coach-arm-right{clip-path:polygon(57% 18%,100% 18%,100% 92%,57% 92%);transform-origin:62% 64%;animation:rmRightFlex 2.6s ease-in-out infinite}
.rm-coach:hover .rm-coach-arm-left,.rm-coach.mood-flex .rm-coach-arm-left{animation:rmLeftCelebrate .45s ease-in-out 2}
.rm-coach:hover .rm-coach-arm-right,.rm-coach.mood-flex .rm-coach-arm-right{animation:rmRightCelebrate .45s ease-in-out 2}
.rm-steam{position:absolute;z-index:4;left:50%;bottom:73%;width:7px;height:30px;border:3px solid rgba(255,255,255,.9);border-left-color:transparent;border-bottom-color:transparent;border-radius:50%;filter:drop-shadow(0 1px 2px rgba(0,0,0,.2));opacity:0;pointer-events:none}
.steam-one{margin-left:-17px;animation:rmSteam 2.4s ease-out infinite}.steam-two{margin-left:-1px;animation:rmSteam 2.4s .75s ease-out infinite}.steam-three{margin-left:13px;animation:rmSteam 2.4s 1.45s ease-out infinite}
.rm-coach-head-avatar{width:58px!important;height:58px!important;object-fit:contain!important;border:0!important;border-radius:0!important;background:transparent!important}
.rm-coach.mood-serious .rm-coach-character{animation:rmSeriousNod .65s ease-in-out}.rm-coach.mood-happy .rm-coach-character{animation:rmHappyBounce .55s ease-out}
@keyframes rmLeftFlex{0%,100%{transform:rotate(0deg)}50%{transform:rotate(-4deg) translate(-1px,-2px)}}
@keyframes rmRightFlex{0%,100%{transform:rotate(0deg)}50%{transform:rotate(4deg) translate(1px,-2px)}}
@keyframes rmLeftCelebrate{0%,100%{transform:rotate(0)}50%{transform:rotate(-11deg) translate(-3px,-6px)}}
@keyframes rmRightCelebrate{0%,100%{transform:rotate(0)}50%{transform:rotate(11deg) translate(3px,-6px)}}
@keyframes rmSteam{0%{opacity:0;transform:translateY(4px) scale(.7) rotate(8deg)}25%{opacity:.9}100%{opacity:0;transform:translateY(-28px) translateX(6px) scale(1.15) rotate(-10deg)}}
@keyframes rmHappyBounce{0%{transform:scale(.94)}55%{transform:scale(1.08)}100%{transform:scale(1)}}
@keyframes rmSeriousNod{0%,100%{transform:rotate(0)}45%{transform:rotate(-4deg) translateY(2px)}}
@media(max-width:620px){.rm-coach-launcher{width:104px;height:92px}.rm-coach-panel{bottom:100px}}
@media(prefers-reduced-motion:reduce){.rm-coach-launcher,.rm-coach-arm,.rm-steam,.rm-coach-character{animation:none!important}}

/* V24 · Brazos separados: la taza nunca se corta ni se abre */
.rm-coach-base{z-index:2}
.rm-coach-arm{z-index:1;will-change:transform}
.rm-coach-arm-left{clip-path:none;transform-origin:28% 58%;animation:rmLeftFlexV24 2.15s ease-in-out infinite}
.rm-coach-arm-right{clip-path:none;transform-origin:72% 58%;animation:rmRightFlexV24 2.15s ease-in-out infinite}
.rm-coach:hover .rm-coach-arm-left,.rm-coach.mood-flex .rm-coach-arm-left{animation:rmLeftCelebrateV24 .42s ease-in-out 3}
.rm-coach:hover .rm-coach-arm-right,.rm-coach.mood-flex .rm-coach-arm-right{animation:rmRightCelebrateV24 .42s ease-in-out 3}
@keyframes rmLeftFlexV24{0%,100%{transform:rotate(0deg) translate(0,0)}50%{transform:rotate(-8deg) translate(-3px,-5px)}}
@keyframes rmRightFlexV24{0%,100%{transform:rotate(0deg) translate(0,0)}50%{transform:rotate(8deg) translate(3px,-5px)}}
@keyframes rmLeftCelebrateV24{0%,100%{transform:rotate(-2deg)}50%{transform:rotate(-15deg) translate(-5px,-10px)}}
@keyframes rmRightCelebrateV24{0%,100%{transform:rotate(2deg)}50%{transform:rotate(15deg) translate(5px,-10px)}}

/* V25 · Taza completamente fija; solo brazos, rostro y vapor animados */
.rm-coach-launcher{
  animation:none!important;
  transform:none!important;
}
.rm-coach-launcher:hover{
  transform:none!important;
}
.rm-coach-character{
  animation:none!important;
  transform:none!important;
}
.rm-coach.mood-serious .rm-coach-character,
.rm-coach.mood-happy .rm-coach-character,
.rm-coach.mood-flex .rm-coach-character{
  animation:none!important;
  transform:none!important;
}
.rm-coach-base{
  z-index:2;
  animation:none!important;
  transform:none!important;
  will-change:auto;
}
.rm-coach-arm{
  z-index:1;
  will-change:transform;
}
.rm-coach-arm-left{
  transform-origin:27% 58%;
  animation:rmLeftCurlV25 1.8s ease-in-out infinite!important;
}
.rm-coach-arm-right{
  transform-origin:73% 58%;
  animation:rmRightCurlV25 1.8s ease-in-out infinite!important;
}
.rm-coach:hover .rm-coach-arm-left,
.rm-coach.mood-flex .rm-coach-arm-left{
  animation:rmLeftStrongCurlV25 .5s ease-in-out 3!important;
}
.rm-coach:hover .rm-coach-arm-right,
.rm-coach.mood-flex .rm-coach-arm-right{
  animation:rmRightStrongCurlV25 .5s ease-in-out 3!important;
}
@keyframes rmLeftCurlV25{
  0%,100%{transform:rotate(1deg) translate(0,0)}
  50%{transform:rotate(-12deg) translate(-4px,-8px)}
}
@keyframes rmRightCurlV25{
  0%,100%{transform:rotate(-1deg) translate(0,0)}
  50%{transform:rotate(12deg) translate(4px,-8px)}
}
@keyframes rmLeftStrongCurlV25{
  0%,100%{transform:rotate(0deg) translate(0,0)}
  50%{transform:rotate(-18deg) translate(-6px,-12px)}
}
@keyframes rmRightStrongCurlV25{
  0%,100%{transform:rotate(0deg) translate(0,0)}
  50%{transform:rotate(18deg) translate(6px,-12px)}
}
.rm-steam{
  animation-play-state:running!important;
}
@media(prefers-reduced-motion:reduce){
  .rm-coach-launcher,.rm-coach-character,.rm-coach-base{animation:none!important;transform:none!important}
}

/* V26 · Corrección definitiva: taza entera e inmóvil; brazos completos e independientes */
.rm-coach-launcher{
  width:150px!important;
  height:132px!important;
  animation:none!important;
  transform:none!important;
  overflow:visible!important;
}
.rm-coach-character{
  position:absolute!important;
  inset:-24px -14px -12px -14px!important;
  animation:none!important;
  transform:none!important;
  overflow:visible!important;
}
.rm-coach-character img{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  transform:none;
}
.rm-coach-base{
  z-index:3!important;
  animation:none!important;
  transform:none!important;
}
.rm-coach-arm{
  z-index:2!important;
  overflow:visible!important;
  will-change:transform;
}
.rm-coach-arm-left{
  transform-origin:31% 55%!important;
  animation:rmLeftCurlV26 1.55s ease-in-out infinite!important;
}
.rm-coach-arm-right{
  transform-origin:69% 55%!important;
  animation:rmRightCurlV26 1.55s ease-in-out infinite!important;
}
.rm-coach:hover .rm-coach-arm-left,
.rm-coach.mood-flex .rm-coach-arm-left{
  animation:rmLeftStrongCurlV26 .42s ease-in-out 4!important;
}
.rm-coach:hover .rm-coach-arm-right,
.rm-coach.mood-flex .rm-coach-arm-right{
  animation:rmRightStrongCurlV26 .42s ease-in-out 4!important;
}
@keyframes rmLeftCurlV26{
  0%,100%{transform:rotate(0deg) translate(0,0)}
  50%{transform:rotate(-10deg) translate(-2px,-8px)}
}
@keyframes rmRightCurlV26{
  0%,100%{transform:rotate(0deg) translate(0,0)}
  50%{transform:rotate(10deg) translate(2px,-8px)}
}
@keyframes rmLeftStrongCurlV26{
  0%,100%{transform:rotate(0deg) translate(0,0)}
  50%{transform:rotate(-18deg) translate(-4px,-13px)}
}
@keyframes rmRightStrongCurlV26{
  0%,100%{transform:rotate(0deg) translate(0,0)}
  50%{transform:rotate(18deg) translate(4px,-13px)}
}
.rm-coach.mood-serious .rm-coach-character,
.rm-coach.mood-happy .rm-coach-character,
.rm-coach.mood-flex .rm-coach-character{
  animation:none!important;
  transform:none!important;
}
.rm-steam{z-index:5!important;animation-play-state:running!important}
@media(max-width:620px){.rm-coach-launcher{width:124px!important;height:110px!important}}

/* V27 · La taza jamás se transforma: solo se animan las capas independientes de los brazos */
.rm-coach-launcher,
.rm-coach-launcher:hover,
.rm-coach-character,
.rm-coach.mood-happy .rm-coach-character,
.rm-coach.mood-serious .rm-coach-character,
.rm-coach.mood-flex .rm-coach-character,
.rm-coach-base {
  animation: none !important;
  transform: none !important;
}
.rm-coach-base {
  z-index: 4 !important;
  pointer-events: none;
}
.rm-coach-arm {
  z-index: 3 !important;
  pointer-events: none;
  will-change: transform;
}
.rm-coach-arm-left {
  transform-origin: 24% 55% !important;
  animation: rmLeftArmOnlyV27 1.7s ease-in-out infinite !important;
}
.rm-coach-arm-right {
  transform-origin: 76% 55% !important;
  animation: rmRightArmOnlyV27 1.7s ease-in-out infinite !important;
}
.rm-coach:hover .rm-coach-arm-left,
.rm-coach.mood-flex .rm-coach-arm-left {
  animation: rmLeftArmPressV27 .44s ease-in-out 4 !important;
}
.rm-coach:hover .rm-coach-arm-right,
.rm-coach.mood-flex .rm-coach-arm-right {
  animation: rmRightArmPressV27 .44s ease-in-out 4 !important;
}
@keyframes rmLeftArmOnlyV27 {
  0%,100% { transform: rotate(7deg) translate(1px,4px); }
  50% { transform: rotate(-11deg) translate(-3px,-8px); }
}
@keyframes rmRightArmOnlyV27 {
  0%,100% { transform: rotate(-7deg) translate(-1px,4px); }
  50% { transform: rotate(11deg) translate(3px,-8px); }
}
@keyframes rmLeftArmPressV27 {
  0%,100% { transform: rotate(5deg) translate(0,2px); }
  50% { transform: rotate(-17deg) translate(-5px,-13px); }
}
@keyframes rmRightArmPressV27 {
  0%,100% { transform: rotate(-5deg) translate(0,2px); }
  50% { transform: rotate(17deg) translate(5px,-13px); }
}

/* V26 — Mascota completamente estática; solo cambia la expresión feliz */
.rm-coach-launcher,
.rm-coach-launcher:hover,
.rm-coach-character,
.rm-coach.open .rm-coach-character,
.rm-coach.mood-happy .rm-coach-character,
.rm-coach.mood-serious .rm-coach-character,
.rm-coach.mood-flex .rm-coach-character{
  animation:none!important;
  transform:none!important;
}
.rm-coach-launcher{width:132px!important;height:118px!important;overflow:visible!important}
.rm-coach-character{position:absolute!important;inset:-16px -8px -8px -8px!important;display:block!important;transform:none!important}
.rm-coach-full{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  pointer-events:none!important;
  transform:none!important;
  animation:none!important;
}
.rm-coach-arm,.rm-coach-base{display:none!important}
.rm-coach-face{
  position:absolute;
  left:38.2%;
  top:48.2%;
  width:25%;
  height:27%;
  border-radius:48%;
  background:radial-gradient(ellipse at center,#fff 58%,rgba(255,255,255,.94) 76%,rgba(255,255,255,0) 79%);
  z-index:4;
  pointer-events:none;
}
.rm-eye{position:absolute;top:22%;width:19%;height:25%;border:2px solid #191919;border-top-width:3px;border-radius:50%;background:#fff}
.rm-eye::after{content:"";position:absolute;width:42%;height:50%;left:29%;top:27%;border-radius:50%;background:#5b321f;box-shadow:inset 0 0 0 2px #181818}
.rm-eye.left{left:16%}.rm-eye.right{right:16%}
.rm-mouth{position:absolute;left:27%;bottom:13%;width:46%;height:27%;background:#1b1b1b;border-radius:15% 15% 55% 55%;border:2px solid #1b1b1b;overflow:hidden}
.rm-mouth::before{content:"";position:absolute;left:8%;top:0;width:84%;height:34%;background:#fff;border-radius:0 0 50% 50%}
.rm-mouth::after{content:"";position:absolute;left:29%;bottom:-2%;width:42%;height:34%;background:#ef6e62;border-radius:50% 50% 0 0}
.rm-coach-character.happy-b .rm-eye{height:10%;top:31%;border:0;border-top:3px solid #1b1b1b;background:transparent;border-radius:50%}
.rm-coach-character.happy-b .rm-eye::after{display:none}
.rm-coach-character.happy-b .rm-mouth{left:30%;width:40%;height:20%;bottom:16%;border-radius:10% 10% 60% 60%}
.rm-coach-character.happy-c .rm-eye{transform:scaleY(.9)}
.rm-coach-character.happy-c .rm-mouth{left:23%;width:54%;height:31%;bottom:10%}
.rm-steam{z-index:5!important;animation:rmSteamRise 2.8s ease-in-out infinite!important}
@keyframes rmSteamRise{0%{opacity:0;transform:translateY(8px) scale(.8)}30%{opacity:.8}100%{opacity:0;transform:translateY(-18px) scale(1.08)}}
@media(max-width:620px){.rm-coach-launcher{width:116px!important;height:104px!important}}
@media(prefers-reduced-motion:reduce){.rm-steam{animation:none!important}}


/* V27 — taza fija con imagen completa, manos completas y cara feliz original */
.rm-coach-launcher,
.rm-coach-launcher:hover,
.rm-coach-character,
.rm-coach.open .rm-coach-character,
.rm-coach.mood-happy .rm-coach-character,
.rm-coach.mood-serious .rm-coach-character,
.rm-coach.mood-flex .rm-coach-character,
.rm-coach-base,
.rm-coach-arm,
.rm-coach-face,
.rm-steam{
  animation:none !important;
  transform:none !important;
}
.rm-coach-launcher{
  width:132px !important;
  height:118px !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  overflow:visible !important;
  padding:0 !important;
}
.rm-coach-character{
  position:absolute !important;
  inset:-12px -10px -8px -10px !important;
  display:block !important;
}
.rm-coach-full{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center bottom !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  display:block !important;
}
.rm-coach-head-avatar{
  object-fit:contain !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
}
@media(max-width:620px){
  .rm-coach-launcher{width:116px !important;height:104px !important;}
}


/* V27 · Mascota final: una sola imagen completa, fija y sin recortes */
.rm-coach-launcher{
  width:150px!important;
  height:118px!important;
  overflow:visible!important;
  border-radius:0!important;
  animation:none!important;
  transform:none!important;
  background:transparent!important;
  padding:0!important;
}
.rm-coach-launcher:hover,
.rm-coach-launcher:active,
.rm-coach.open .rm-coach-launcher{
  transform:none!important;
}
.rm-coach-character{
  position:absolute!important;
  inset:-36px -18px -16px -18px!important;
  display:block!important;
  overflow:visible!important;
  animation:none!important;
  transform:none!important;
}
.rm-coach-full{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  clip-path:none!important;
  animation:none!important;
  transform:none!important;
}
.rm-coach-face,.rm-eye,.rm-mouth,.rm-coach-arm,.rm-coach-base{display:none!important}
.rm-coach-character.happy-a,
.rm-coach-character.happy-b,
.rm-coach-character.happy-c,
.rm-coach.mood-happy .rm-coach-character,
.rm-coach.mood-flex .rm-coach-character,
.rm-coach.mood-serious .rm-coach-character{
  animation:none!important;
  transform:none!important;
}
.rm-coach-head-avatar{
  content:url('assets/images/coach_muscle_cup_complete.png');
  object-fit:contain!important;
  object-position:center!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
}
@media(max-width:620px){
  .rm-coach-launcher{width:132px!important;height:104px!important}
  .rm-coach-character{inset:-32px -16px -14px -16px!important}
}

/* V28 · Mascota exactamente como el logo suministrado: estática, sin estrellas ni cambios de rostro */
.rm-coach-launcher,
.rm-coach-launcher:hover,
.rm-coach-launcher:active,
.rm-coach.open .rm-coach-launcher,
.rm-coach-character,
.rm-coach-character img,
.rm-coach-full,
.rm-coach-head-avatar{
  animation:none!important;
  transform:none!important;
}
.rm-coach-launcher{
  width:150px!important;
  height:118px!important;
  overflow:visible!important;
  border-radius:0!important;
  background:transparent!important;
  padding:0!important;
}
.rm-coach-character{
  position:absolute!important;
  inset:-12px -8px -8px -8px!important;
  overflow:visible!important;
}
.rm-coach-full{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  clip-path:none!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
}
.rm-coach-face,.rm-eye,.rm-mouth,.rm-coach-arm,.rm-coach-base,.rm-steam{
  display:none!important;
}
.rm-coach-head-avatar{
  content:url('assets/images/coach_muscle_cup_complete.png');
  object-fit:contain!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
}
@media(max-width:620px){
  .rm-coach-launcher{width:132px!important;height:104px!important}
}


/* V29 · Burbuja de pensamiento encima de la mascota */
.rm-coach-mini{
  position:absolute!important;
  right:4px!important;
  bottom:118px!important;
  max-width:220px!important;
  white-space:normal!important;
  text-align:center!important;
  color:#111827!important;
  background:#ffffff!important;
  border:2px solid #f97316!important;
  border-radius:18px!important;
  padding:10px 14px!important;
  font-weight:900!important;
  font-size:.9rem!important;
  line-height:1.3!important;
  box-shadow:0 10px 28px rgba(15,23,42,.18)!important;
  z-index:8!important;
  opacity:1!important;
  transform:none!important;
  animation:rmCoachThought 7s ease both!important;
  display:block!important;
}
.rm-coach-mini::before,
.rm-coach-mini::after{
  content:"";
  position:absolute;
  border-radius:50%;
  background:#fff;
  border:2px solid #f97316;
}
.rm-coach-mini::before{
  width:14px;height:14px;
  right:28px;
  bottom:-11px;
}
.rm-coach-mini::after{
  width:8px;height:8px;
  right:16px;
  bottom:-22px;
}
.rm-coach.open .rm-coach-mini{display:none!important}
@keyframes rmCoachThought{
  0%,12%{opacity:0;transform:translateY(8px) scale(.96)}
  18%,82%{opacity:1;transform:translateY(0) scale(1)}
  92%,100%{opacity:0;transform:translateY(-4px) scale(.98)}
}
@media(max-width:620px){
  .rm-coach-mini{
    right:0!important;
    bottom:108px!important;
    max-width:185px!important;
    font-size:.82rem!important;
  }
}

/* V30 · Coach integrado debajo de Cerrar sesión en el menú lateral */
.sidebar{
  display:flex;
  flex-direction:column;
}
.sidebar #portalNav{
  flex:0 0 auto;
}
.sidebar #logout{
  flex:0 0 auto;
}
.sidebar .rm-coach{
  position:relative!important;
  right:auto!important;
  bottom:auto!important;
  margin-top:auto!important;
  width:100%!important;
  min-height:164px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-end;
  padding-top:58px;
  z-index:25;
}
.sidebar .rm-coach-launcher{
  width:150px!important;
  height:112px!important;
  position:relative!important;
  flex:0 0 auto;
}
.sidebar .rm-coach-character{
  inset:-26px -15px -12px -15px!important;
}
.sidebar .rm-coach-mini{
  right:auto!important;
  left:50%!important;
  bottom:112px!important;
  width:172px!important;
  max-width:172px!important;
  transform:translateX(-50%)!important;
  color:#c2410c!important;
  background:#fffaf2!important;
  border-color:#fb923c!important;
  font-size:.82rem!important;
  line-height:1.22!important;
  padding:9px 11px!important;
  animation:rmCoachThoughtSidebar 7s ease both!important;
}
.sidebar .rm-coach-mini::before,
.sidebar .rm-coach-mini::after{
  border-color:#fb923c!important;
  background:#fffaf2!important;
}
.sidebar .rm-coach-panel{
  position:fixed!important;
  left:286px!important;
  right:auto!important;
  bottom:20px!important;
  width:min(390px,calc(100vw - 310px))!important;
  max-height:calc(100vh - 40px)!important;
  z-index:1300!important;
}
@keyframes rmCoachThoughtSidebar{
  0%,12%{opacity:0;transform:translate(-50%,8px) scale(.96)}
  18%,82%{opacity:1;transform:translate(-50%,0) scale(1)}
  92%,100%{opacity:0;transform:translate(-50%,-4px) scale(.98)}
}
@media(max-width:900px){
  .sidebar .rm-coach-panel{
    left:16px!important;
    right:16px!important;
    bottom:16px!important;
    width:auto!important;
    max-height:calc(100vh - 32px)!important;
  }
}
@media(max-width:620px){
  .sidebar .rm-coach{
    min-height:148px;
    padding-top:54px;
  }
  .sidebar .rm-coach-launcher{
    width:136px!important;
    height:102px!important;
  }
  .sidebar .rm-coach-mini{
    bottom:102px!important;
    width:160px!important;
    max-width:160px!important;
    font-size:.78rem!important;
  }
}
/* V31 · Premium AI Insights, leaderboard and voice */
.ai-insights-hero{background:linear-gradient(135deg,#101728,#26344f);color:#fff}.ai-insights-hero p{color:#e5e7eb}.insights-grid{display:grid;gap:14px}.insight-card{display:grid;grid-template-columns:55px 1fr;gap:14px;border:1px solid var(--line);padding:18px;border-radius:16px;background:#fff}.insight-icon{font-size:2rem}.insight-card h3{margin:8px 0}.insight-card footer{display:flex;justify-content:space-between;color:var(--muted);font-size:.8rem}.profile-photo-panel{display:grid;grid-template-columns:180px 1fr;gap:24px;align-items:center}.profile-photo-wrap{display:grid;gap:10px;text-align:center}.profile-photo-wrap img{width:150px;height:150px;border-radius:50%;object-fit:cover;border:5px solid #f97316}.leaderboard-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.leaderboard-list{list-style:none;padding:0;margin:0;display:grid;gap:8px}.leaderboard-list li{display:grid;grid-template-columns:32px 1fr auto;align-items:center;padding:11px;border-radius:12px;background:#f5f7fb}.leaderboard-list li.me{border:2px solid #f97316;background:#fff5eb}.monthly-progress-card{display:flex;justify-content:space-between;align-items:center;gap:20px;background:linear-gradient(135deg,#fff3e8,#fff)}.voice-input-row{display:flex;gap:8px}.voice-input-row input{flex:1}.voice-food-btn{border:0;border-radius:10px;background:#f97316;color:#fff;font-weight:800;padding:0 14px;cursor:pointer}@media(max-width:850px){.leaderboard-columns{grid-template-columns:1fr}.profile-photo-panel{grid-template-columns:1fr}.monthly-progress-card{align-items:stretch;flex-direction:column}.voice-input-row{flex-direction:column}.voice-food-btn{padding:12px}}

/* V32 · Mi perfil organizado en pestañas */
.profile-tool-tabs{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 20px}
.profile-tab{border:1px solid #f97316;background:#fff1e8;color:#9a3412;border-radius:999px;padding:12px 18px;font-weight:850;cursor:pointer;transition:.18s ease}
.profile-tab:hover{transform:translateY(-1px);border-color:#ea580c}
.profile-tab.active{background:#111827;color:#fff;border-color:#111827;box-shadow:0 8px 20px rgba(17,24,39,.16)}
.profile-tab-panel{display:none}
.profile-tab-panel.active{display:block}
.profile-overview-card{display:grid;grid-template-columns:180px 1fr;gap:28px;align-items:center}
.profile-overview-card .profile-photo-wrap{display:grid;gap:12px;justify-items:center}
.profile-overview-card .profile-photo-wrap img{width:150px;height:150px;border-radius:50%;object-fit:cover;border:5px solid #f97316;background:#fff}
.profile-overview-main h2{margin:4px 0 8px}
.profile-overview-main .profile-summary{margin-top:20px}
.profile-coach-top{margin-top:20px}
@media(max-width:760px){.profile-tool-tabs{display:grid;grid-template-columns:1fr 1fr}.profile-tab{border-radius:14px;padding:11px 8px}.profile-overview-card{grid-template-columns:1fr;text-align:center}.profile-overview-main .profile-summary{grid-template-columns:1fr 1fr}}

/* V33 · Asesor de membresías exclusivo para la página pública */
.public-membership-coach{position:fixed;right:24px;bottom:18px;z-index:1250;font-family:inherit}
.public-coach-launcher{width:142px;height:122px;padding:0;border:0;background:transparent;cursor:pointer;filter:drop-shadow(0 12px 14px rgba(15,23,42,.25))}
.public-coach-launcher img{width:100%;height:100%;object-fit:contain;display:block}
.public-coach-pulse{position:absolute;right:4px;top:4px;width:23px;height:23px;border-radius:50%;display:grid;place-items:center;background:#e72f27;color:#fff;border:2px solid #fff;font-size:.72rem;font-weight:900}
.public-coach-thought{position:absolute;right:8px;bottom:126px;min-width:158px;padding:11px 14px;border:2px solid #f97316;border-radius:17px;background:#fff;color:#9a3412;text-align:center;font-weight:900;box-shadow:0 9px 25px rgba(15,23,42,.16)}
.public-coach-thought:before,.public-coach-thought:after{content:'';position:absolute;border-radius:50%;background:#fff;border:2px solid #f97316}
.public-coach-thought:before{right:22px;bottom:-15px;width:12px;height:12px}.public-coach-thought:after{right:11px;bottom:-27px;width:7px;height:7px}
.public-coach-panel{display:none;position:absolute;right:0;bottom:136px;width:min(390px,calc(100vw - 28px));border:1px solid #dfe4ec;border-radius:22px;background:#fff;box-shadow:0 22px 65px rgba(15,23,42,.27);overflow:hidden}
.public-membership-coach.open .public-coach-panel{display:block}.public-membership-coach.open .public-coach-thought{display:none}
.public-coach-head{display:flex;align-items:center;gap:11px;padding:14px 15px;background:linear-gradient(135deg,#111827,#27344c);color:#fff}
.public-coach-head img{width:54px;height:54px;object-fit:contain}.public-coach-head strong,.public-coach-head small{display:block}.public-coach-head small{margin-top:3px;color:#fed7aa}
.public-coach-close{margin-left:auto;width:34px;height:34px;border:0;border-radius:50%;background:#ffffff1c;color:#fff;font-size:1.25rem;cursor:pointer}
.public-coach-body{padding:17px}.public-coach-progress{height:7px;border-radius:999px;background:#edf0f5;overflow:hidden;margin-bottom:16px}.public-coach-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,#ef3128,#ff8a00);transition:width .25s ease}
.public-coach-question{margin:0 0 13px;line-height:1.5;font-weight:800}.public-coach-question strong{font-size:1.08rem}.public-coach-question span{display:block;margin-top:7px;color:#667085;font-weight:500}
.public-coach-options{display:grid;gap:9px}.public-coach-option{width:100%;padding:12px 13px;border:1px solid #f97316;border-radius:12px;background:#fff;color:#9a3412;font-weight:850;text-align:left;cursor:pointer}.public-coach-option:hover{background:#fff4e8}.public-coach-option.primary{background:linear-gradient(135deg,#ef3128,#ff5c3f);border-color:transparent;color:#fff;text-align:center}
.public-coach-restart{margin-top:13px;border:0;background:none;color:#667085;text-decoration:underline;cursor:pointer;font-size:.82rem}
@media(max-width:650px){.public-membership-coach{right:10px;bottom:10px}.public-coach-launcher{width:112px;height:98px}.public-coach-thought{bottom:101px;min-width:142px;font-size:.8rem}.public-coach-panel{bottom:108px}}

/* V34 · Paleta visual basada en el logo de Run and Muscle PR */
body{
  background:linear-gradient(180deg,#ffffff 0%,#f8f9fd 100%);
}
.site-header{
  box-shadow:0 12px 30px rgba(9,21,47,.06);
}
.site-header nav a{
  position:relative;
  transition:color .2s ease;
}
.site-header nav a:hover{
  color:var(--red);
}
.site-header nav a::after{
  content:'';
  position:absolute;
  left:0;
  bottom:-8px;
  width:0;
  height:3px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--red),var(--gold));
  transition:width .22s ease;
}
.site-header nav a:hover::after{
  width:100%;
}
.brand span,
.section-head h2,
.panel h2,
.sponsor-section h2{
  color:var(--ink);
}
.hero{
  background:
    linear-gradient(105deg,rgba(9,21,47,.98) 0%,rgba(13,27,62,.96) 36%,rgba(23,63,122,.72) 62%,rgba(246,191,31,.18) 100%),
    url('assets/images/hero-run-muscle-logo.png') center 28%/cover;
}
.hero-content{
  max-width:760px;
}
.hero .eyebrow,
.section .eyebrow{
  color:var(--gold-soft);
  text-shadow:0 1px 0 rgba(0,0,0,.1);
}
.actions .ambassador-cta{
  background:linear-gradient(135deg,var(--gold),#ff9800);
  color:var(--ink);
  border:0;
  box-shadow:0 10px 26px rgba(246,191,31,.30);
}
.actions .ambassador-cta:hover{
  transform:translateY(-1px);
}
.stats{
  border:1px solid rgba(23,63,122,.08);
  background:linear-gradient(180deg,#ffffff 0%,#fffdf8 100%);
}
.stats strong{
  color:var(--ink);
}
.stats div:first-child strong,
.stats div:nth-child(2) strong{
  color:var(--red);
}
.stats div:nth-child(3) strong,
.stats div:nth-child(4) strong{
  color:var(--blue);
}
.membership-section,
.ambassador-section,
.legal-section{
  position:relative;
}
.membership-section::before,
.ambassador-section::before,
.legal-section::before{
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  background:radial-gradient(circle at top right,rgba(246,191,31,.08),transparent 32%);
}
.card,
.metric,
.panel,
.modal-card,
.membership-brand,
.ambassador-benefits,
.sponsor-section{
  box-shadow:0 16px 40px rgba(9,21,47,.06);
}
.card{
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.card:hover{
  transform:translateY(-4px);
  border-color:rgba(239,49,40,.22);
  box-shadow:0 20px 48px rgba(9,21,47,.10);
}
.card h3{
  color:var(--ink);
}
.icon-card span{
  display:inline-grid;
  place-items:center;
  width:54px;
  height:54px;
  border-radius:16px;
  background:linear-gradient(135deg,rgba(239,49,40,.12),rgba(246,191,31,.18));
}
.notice,
.legal-master{
  background:linear-gradient(135deg,#fff8e7,#fffdf9);
  border-color:#f6d38a;
}
.cta{
  background:linear-gradient(135deg,var(--red),var(--red2) 52%,var(--gold) 100%);
}
.sponsor-section{
  border:1px solid rgba(239,49,40,.10);
}
.coupon{
  display:inline-flex;
  align-items:center;
  gap:12px;
  background:linear-gradient(135deg,#fff7e9,#fff);
  border:1px solid #ffd28a;
  border-radius:16px;
  padding:12px 16px;
  margin:18px 0 24px;
}
.coupon span{
  color:var(--muted);
  font-size:.8rem;
  font-weight:900;
  letter-spacing:.08em;
}
.coupon strong{
  color:var(--red);
  font-size:1.35rem;
}
footer{
  background:linear-gradient(135deg,#09152f 0%,#10234a 100%);
}
/* Paleta de colores */
.brand-palette-section{
  padding-top:72px;
  padding-bottom:72px;
  background:linear-gradient(180deg,#fff8ee 0%,#ffffff 100%);
}
.brand-palette-grid{
  max-width:1180px;
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}
.palette-card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:24px;
  padding:22px;
  box-shadow:0 14px 36px rgba(9,21,47,.07);
}
.palette-card strong{
  display:block;
  margin:14px 0 6px;
  font-size:1.12rem;
}
.palette-card span{
  display:inline-block;
  font-weight:900;
  color:var(--blue);
  margin-bottom:8px;
}
.palette-card small{
  display:block;
  color:var(--muted);
  line-height:1.55;
}
.palette-swatch{
  width:100%;
  height:96px;
  border-radius:18px;
  border:1px solid rgba(9,21,47,.08);
}
.palette-swatch.ink{background:#09152F}
.palette-swatch.red{background:#EF3128}
.palette-swatch.orange{background:#FF6B2C}
.palette-swatch.gold{background:#F6BF1F}
.palette-swatch.blue{background:#173F7A}
.palette-swatch.white{background:linear-gradient(180deg,#ffffff,#f4f6fb)}
@media(max-width:900px){
  .brand-palette-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
  .brand-palette-grid{grid-template-columns:1fr}
}

/* V34 · Paleta visual tomada del logo Run and Muscle PR (solo página principal) */
.home-body{
  --rm-navy:#071426;
  --rm-navy-2:#102a49;
  --rm-red:#d92525;
  --rm-red-deep:#a9151a;
  --rm-orange:#f47a1f;
  --rm-gold:#f3c322;
  --rm-silver:#e8edf3;
  --rm-white:#ffffff;
  --rm-ink:#101823;
  background:var(--rm-white);
  color:var(--rm-ink);
}
.home-body .site-header{
  background:rgba(7,20,38,.97);
  border-bottom:3px solid var(--rm-gold);
  box-shadow:0 8px 24px rgba(0,0,0,.18);
}
.home-body .site-header .brand,
.home-body .site-header nav a{color:#fff}
.home-body .site-header nav a:hover{color:var(--rm-gold)}
.home-body .site-header .menu-btn{color:#fff}
.home-body .site-header .btn-small{
  background:linear-gradient(135deg,var(--rm-red),var(--rm-orange));
  box-shadow:0 8px 22px rgba(217,37,37,.30)
}
.home-body .hero{
  background:
    linear-gradient(105deg,rgba(3,11,24,.98) 0%,rgba(7,20,38,.94) 45%,rgba(16,42,73,.48) 100%),
    url('assets/images/hero-run-muscle-logo.png') center 28%/cover;
  border-bottom:6px solid var(--rm-red);
}
.home-body .hero .eyebrow{color:var(--rm-gold)}
.home-body .hero h1{text-shadow:0 3px 18px rgba(0,0,0,.35)}
.home-body .hero p{color:#eef3f8}
.home-body .btn{
  background:linear-gradient(135deg,var(--rm-red),var(--rm-orange));
  box-shadow:0 8px 22px rgba(217,37,37,.25)
}
.home-body .btn:hover{filter:brightness(1.06)}
.home-body .btn-ghost{
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.58);
  color:#fff;
  box-shadow:none
}
.home-body .btn-ghost:hover{border-color:var(--rm-gold);color:var(--rm-gold)}
.home-body .ambassador-cta{
  background:linear-gradient(135deg,var(--rm-gold),var(--rm-orange));
  color:var(--rm-navy);
  border:0
}
.home-body .stats{
  border-top:5px solid var(--rm-gold);
  box-shadow:0 18px 48px rgba(7,20,38,.16)
}
.home-body .stats strong{color:var(--rm-navy-2)}
.home-body .stats div:nth-child(2) strong{color:var(--rm-red)}
.home-body .stats div:nth-child(3) strong{color:#b67c00}
.home-body .stats div:nth-child(4) strong{color:var(--rm-orange)}
.home-body .section-head .eyebrow{color:var(--rm-red)}
.home-body .section-head h2{color:var(--rm-navy)}
.home-body .section.alt{
  background:linear-gradient(180deg,#eef2f6 0%,#f8fafc 100%);
  border-top:1px solid #d7dee7;
  border-bottom:1px solid #d7dee7
}
.home-body .card{
  border:1px solid #dce2ea;
  box-shadow:0 10px 30px rgba(7,20,38,.07);
  position:relative;
  overflow:hidden
}
.home-body .card::before{
  content:"";
  position:absolute;
  left:0;right:0;top:0;
  height:5px;
  background:var(--rm-red)
}
.home-body .card:nth-child(3n+2)::before{background:var(--rm-gold)}
.home-body .card:nth-child(3n)::before{background:var(--rm-orange)}
.home-body .card h3{color:var(--rm-navy-2)}
.home-body .membership-section{
  background:linear-gradient(180deg,#fff 0%,#fff9ec 100%)
}
.home-body .membership-brand{
  border:1px solid #d8dee7;
  border-left:6px solid var(--rm-gold);
  background:#fff
}
.home-body .ambassador-section{
  background:linear-gradient(145deg,var(--rm-navy) 0%,var(--rm-navy-2) 72%,#203d61 100%);
  color:#fff;
  border-top:6px solid var(--rm-gold)
}
.home-body .ambassador-section .eyebrow{color:var(--rm-gold)}
.home-body .ambassador-section h2,
.home-body .ambassador-section h3{color:#fff}
.home-body .ambassador-section p{color:#dce5ef}
.home-body .ambassador-section .card{
  background:#fff;
  color:var(--rm-ink)
}
.home-body .ambassador-section .card h3{color:var(--rm-navy)}
.home-body .ambassador-section .card p{color:#667085}
.home-body .ambassador-mark{
  background:linear-gradient(145deg,#090f19,#172b45);
  border:2px solid var(--rm-gold)
}
.home-body .ambassador-benefits{
  background:rgba(255,255,255,.08);
  border:1px solid rgba(243,195,34,.45)
}
.home-body .sponsor-section{
  background:linear-gradient(135deg,#fff5dc,#fff 52%,#eef2f6);
  border-top:5px solid var(--rm-orange)
}
.home-body .coupon{
  background:var(--rm-navy);
  color:#fff;
  border:2px dashed var(--rm-gold)
}
.home-body .legal-section{background:#f4f6f9}
.home-body .legal-master{
  background:#fff8df;
  border-color:#e8bd42;
  border-left:6px solid var(--rm-gold)
}
.home-body footer{
  background:linear-gradient(135deg,#050b13,var(--rm-navy));
  border-top:5px solid var(--rm-red)
}
.home-body footer .brand span{color:#fff}
.home-body footer a{color:var(--rm-gold)}
.home-body .modal-card{border-top:6px solid var(--rm-red)}
.home-body .rm-home-coach-panel{border-top:5px solid var(--rm-gold)}
.home-body .rm-home-coach-option.primary,
.home-body .rm-home-coach-result .btn{background:linear-gradient(135deg,var(--rm-red),var(--rm-orange))}
@media(max-width:850px){
  .home-body .site-header nav{background:var(--rm-navy)}
}


/* V36 · Editor visual del administrador */
.cms-editor details{border:1px solid var(--line);border-radius:16px;margin:14px 0;background:#fafbfc;overflow:hidden}
.cms-editor summary{cursor:pointer;font-weight:900;padding:16px 18px;background:#f2f4f8}
.cms-editor details>.cms-grid,.cms-editor details>.cms-toggle-grid{padding:18px}
.cms-grid textarea{min-height:90px}
.cms-grid input[type=color]{height:48px;padding:4px;cursor:pointer}
.cms-toggle-grid{display:grid;grid-template-columns:repeat(3,minmax(160px,1fr));gap:12px}
.cms-toggle-grid label{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px;font-weight:800;display:flex;align-items:center;gap:9px}
.cms-toggle-grid input{width:18px;height:18px}
.cms-save{margin-top:18px}
@media(max-width:760px){.cms-toggle-grid{grid-template-columns:1fr}.cms-editor .panel-head{align-items:flex-start;flex-direction:column}}

/* V37 · Redes sociales y copyright */
.footer-socials{display:flex;gap:10px;align-items:center;margin:16px 0 12px}.footer-socials a{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.22);color:#fff;transition:transform .2s ease,background .2s ease,border-color .2s ease}.footer-socials a:hover{transform:translateY(-2px);background:var(--rm-orange,#ff6b2c);border-color:var(--rm-gold,#f6bf1f)}.footer-socials a[hidden]{display:none!important}.footer-socials svg{width:22px;height:22px;fill:currentColor;stroke:currentColor;stroke-width:0}.footer-socials a[data-social="instagram"] svg rect,.footer-socials a[data-social="instagram"] svg circle{fill:none;stroke:currentColor;stroke-width:2}.home-body footer .fine{color:#d5dbea;line-height:1.55}

/* V38 · Registro detallado por tipo de entrenamiento */
.workout-details{margin-top:2px}
.workout-subpanel{background:#f7f9fc;border:1px solid var(--line);border-radius:16px;padding:18px}
.workout-subpanel h3{margin:0 0 14px}
.workout-subpanel p{margin:4px 0 0;color:var(--muted)}
.workout-subhead{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}
.workout-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.workout-field-grid .wide{grid-column:1/-1}
.strength-exercise-list{display:grid;gap:10px}
.strength-exercise-row{display:grid;grid-template-columns:minmax(180px,2fr) repeat(4,minmax(90px,1fr)) 36px;gap:9px;align-items:end;background:#fff;border:1px solid var(--line);border-radius:13px;padding:12px}
.strength-exercise-row label{margin:0}
.strength-exercise-row input,.strength-exercise-row select{width:100%}
.strength-exercise-row .icon-delete{margin-bottom:3px}
@media(max-width:980px){.strength-exercise-row{grid-template-columns:1fr 1fr 1fr}.strength-exercise-row label:first-child{grid-column:1/-1}.strength-exercise-row .icon-delete{align-self:end}}
@media(max-width:620px){.workout-subhead{align-items:stretch;flex-direction:column}.workout-field-grid,.strength-exercise-row{grid-template-columns:1fr}.strength-exercise-row label:first-child{grid-column:auto}.strength-exercise-row .icon-delete{width:100%;border-radius:9px}}
/* V39 · Perfil obligatorio e idioma por usuario */
.onboarding-welcome{max-width:1180px;margin:0 auto}.onboarding-welcome>.badge{margin-bottom:10px}.account-language-control{margin:14px 0 20px;padding:14px;border:1px solid var(--line);border-radius:14px;background:#f8fafc}.account-language-control label{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,300px);gap:14px;align-items:center}.account-language-control select{width:100%;padding:11px;border:1px solid #ccd2dc;border-radius:10px;background:#fff}@media(max-width:620px){.account-language-control label{grid-template-columns:1fr}}


/* V40 · Mejor contraste en textos del Coach Muscle Cup */
.rm-coach-message{color:#111827!important}
.rm-coach-action{color:#111827!important}
.rm-coach-action.primary{color:#ffffff!important}
.rm-coach-note{color:#475467!important}


/* V41 · Título de Descubrimientos de tu IA en blanco */
.ai-insights-hero h1,
.ai-insights-hero h2,
.ai-insights-hero h3,
.ai-insights-hero .section-title,
.ai-insights-hero strong {
  color:#ffffff!important;
}
.ai-insights-hero p,
.ai-insights-hero .eyebrow {
  color:#ffffff!important;
}

/* V43 · Sistema de sugerencias y feedback */
.feedback-client-panel .panel-head{align-items:flex-start}
.feedback-client-form[hidden]{display:none!important}
.feedback-client-form{margin-top:18px;padding:20px;border:1px solid var(--line);border-radius:16px;background:#f8fafc}
.feedback-client-form textarea{min-height:130px;resize:vertical}
.feedback-client-form small{color:var(--muted);font-weight:500}
.feedback-history{margin-top:18px;border-top:1px solid var(--line);padding-top:15px}
.feedback-history summary{cursor:pointer;font-weight:850}
.feedback-history article{margin-top:12px;padding:14px;border-radius:13px;background:#f5f7fb;border:1px solid var(--line)}
.feedback-history article .badge{float:right}
.feedback-history article p{white-space:pre-wrap}
.feedback-admin-filters{display:flex;align-items:end;justify-content:space-between;gap:14px;margin:14px 0 20px}
.feedback-admin-filters label{display:grid;gap:6px;font-weight:800}
.feedback-admin-list{display:grid;gap:16px}
.feedback-admin-card{border:1px solid var(--line);border-radius:18px;padding:18px;background:#fff;box-shadow:0 8px 25px rgba(15,23,42,.06)}
.feedback-admin-card-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}
.feedback-admin-card h3{margin:8px 0 4px}
.feedback-rating{font-size:1.25rem;color:#f59e0b;white-space:nowrap}
.feedback-message-box{white-space:pre-wrap;background:#f8fafc;border-left:4px solid var(--secondaryColor,#ff6b2c);padding:14px;border-radius:10px;margin:12px 0}
.feedback-admin-controls{display:grid;grid-template-columns:220px 1fr;gap:12px;align-items:end}
.feedback-admin-controls label{display:grid;gap:6px;font-weight:800}
.feedback-admin-controls .wide{grid-column:1/-1}
.feedback-admin-controls textarea{min-height:90px;resize:vertical}
.feedback-admin-actions{display:flex;gap:8px;justify-content:flex-end}
@media(max-width:720px){.feedback-admin-filters,.feedback-admin-card-head{align-items:stretch;flex-direction:column}.feedback-admin-controls{grid-template-columns:1fr}.feedback-admin-actions{justify-content:stretch}.feedback-admin-actions button{flex:1}}


/* V44 · Promoción discreta de Colón Colón Engineering & Construction */
.developer-promo{margin-top:28px;display:flex;justify-content:center}
.developer-promo-link{display:inline-flex;align-items:center;gap:10px;padding:9px 12px;border:1px solid rgba(255,255,255,.18);border-radius:14px;background:rgba(255,255,255,.06);color:#fff;transition:.2s ease;max-width:100%}
.developer-promo-link:hover{transform:translateY(-1px);background:rgba(255,255,255,.11);border-color:rgba(255,255,255,.32)}
.developer-promo-question{font-size:.78rem;color:#d8deea}
.developer-promo-contact{font-size:.8rem;font-weight:900;color:#ffb24a}
.developer-promo-logo-wrap{width:46px;height:46px;display:grid;place-items:center;border-radius:10px;background:#fff;padding:4px;overflow:hidden;flex:0 0 auto}
.developer-promo-logo-wrap img{width:100%;height:100%;object-fit:contain;display:block}
@media(max-width:620px){.developer-promo-link{flex-wrap:wrap;justify-content:center;text-align:center}.developer-promo-question{width:100%}}

/* V45 · Pie de página y promoción totalmente centralizados */
.home-body footer{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  gap:8px;
}
.home-body footer > .brand{
  justify-content:center;
  margin:0 auto 8px;
}
.home-body footer > p{
  margin:4px 0;
  text-align:center;
}
.home-body footer .footer-socials{
  justify-content:center;
  margin:14px auto 10px;
}
.home-body footer .fine{
  width:100%;
  text-align:center;
  margin:4px 0 8px;
}
.developer-promo{
  width:100%;
  margin:24px auto 0;
  display:flex;
  justify-content:center;
  align-items:center;
}
.developer-promo-link{
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  gap:8px;
  width:min(360px,100%);
  margin:0 auto;
  padding:16px 20px;
  text-align:center;
  border:1px solid rgba(255,255,255,.22);
  border-radius:18px;
  background:rgba(255,255,255,.07);
}
.developer-promo-question{
  display:block;
  font-size:.88rem;
  line-height:1.35;
  color:#e7ecf4;
}
.developer-promo-contact{
  display:block;
  font-size:.95rem;
  font-weight:900;
  color:#ffb24a;
}
.developer-promo-logo-wrap{
  width:96px;
  height:96px;
  margin-top:4px;
  border-radius:16px;
  padding:7px;
  background:#fff;
  box-shadow:0 8px 22px rgba(0,0,0,.24);
}
.developer-promo-logo-wrap img{
  width:100%;
  height:100%;
  object-fit:contain;
}
@media(max-width:620px){
  .developer-promo-link{width:min(320px,100%);padding:14px 16px}
  .developer-promo-logo-wrap{width:84px;height:84px}
}


/* V46 · Pie de página equilibrado: marca izquierda, compañía centro, mascota flotante derecha */
.site-footer-balanced{padding:48px 5vw!important}
.footer-layout-balanced{width:100%;display:grid;grid-template-columns:minmax(280px,1fr) minmax(340px,480px) minmax(280px,1fr);align-items:center;gap:34px}
.footer-brand-block{justify-self:start;text-align:left;display:flex;flex-direction:column;align-items:flex-start}
.footer-brand-block .brand{justify-content:flex-start}
.footer-brand-block .footer-socials{justify-content:flex-start}
.site-footer-balanced .developer-promo{margin-top:0;justify-self:center;width:100%;display:flex;justify-content:center}
.site-footer-balanced .developer-promo-link{width:min(100%,420px);min-height:190px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:10px;padding:20px 24px}
.site-footer-balanced .developer-promo-question{font-size:.9rem}
.site-footer-balanced .developer-promo-contact{font-size:1rem}
.site-footer-balanced .developer-promo-logo-wrap{width:108px;height:108px;border-radius:16px;padding:7px}
.footer-balance-space{min-height:190px}
@media(max-width:1000px){.footer-layout-balanced{grid-template-columns:1fr 1fr}.footer-balance-space{display:none}.footer-brand-block{justify-self:center;text-align:center;align-items:center}.footer-brand-block .footer-socials{justify-content:center}}
@media(max-width:700px){.footer-layout-balanced{grid-template-columns:1fr}.footer-brand-block{justify-self:center}.site-footer-balanced .developer-promo{justify-self:center}.site-footer-balanced .developer-promo-link{min-height:auto}.site-footer-balanced .developer-promo-logo-wrap{width:96px;height:96px}}

/* V47 · Contenido de Run and Muscle PR centrado dentro de la columna izquierda */
.footer-brand-block{
  justify-self:start;
  width:min(100%,430px);
  display:flex;
  flex-direction:column;
  align-items:center!important;
  text-align:center!important;
}
.footer-brand-block .brand{
  justify-content:center!important;
  width:100%;
  margin:0 auto 10px;
}
.footer-brand-block > p{
  width:100%;
  margin:5px 0;
  text-align:center!important;
}
.footer-brand-block .footer-socials{
  width:100%;
  justify-content:center!important;
  margin:18px auto 12px;
}
.footer-brand-block .fine{
  width:100%;
  text-align:center!important;
  margin:6px 0 0;
}
@media(max-width:1000px){
  .footer-brand-block{justify-self:center}
}


/* V48 · Bloque Run and Muscle PR en esquina inferior izquierda */
.site-footer-balanced{padding-left:24px!important;padding-right:5vw!important}
.footer-brand-block{
  justify-self:start!important;
  align-self:end!important;
  width:min(100%,430px)!important;
  align-items:flex-start!important;
  text-align:left!important;
}
.footer-brand-block .brand{
  justify-content:flex-start!important;
  width:auto!important;
  margin:0 0 12px!important;
}
.footer-brand-block > p,
.footer-brand-block .fine{
  width:auto!important;
  text-align:left!important;
  margin:6px 0!important;
}
.footer-brand-block .footer-socials{
  width:auto!important;
  justify-content:flex-start!important;
  margin:16px 0 12px!important;
}
.footer-contact-line strong{color:#fff}
@media(max-width:1000px){
  .footer-brand-block{justify-self:start!important;align-items:flex-start!important;text-align:left!important}
}
@media(max-width:700px){
  .site-footer-balanced{padding-left:20px!important;padding-right:20px!important}
  .footer-brand-block{justify-self:start!important}
}

/* V52 · Catálogo de alimentos filtrado por tipo de comida */
.food-filter-note{margin:0 0 10px;padding:10px 12px;border-radius:10px;background:#fff4e8;color:#9a3412;font-size:.84rem;border:1px solid #fed7aa}


/* V53 · Métodos de pago PayPal y ATH Móvil Personal */
.payment-methods-box{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0 18px}.payment-methods-box>div{border:1px solid var(--line);border-radius:12px;background:#f8fafc;padding:12px;display:grid;gap:4px}.payment-methods-box strong{color:var(--ink)}.payment-methods-box span{font-size:.9rem;color:var(--muted);word-break:break-word}@media(max-width:620px){.payment-methods-box{grid-template-columns:1fr}}


/* V54 · Selección dinámica de PayPal o ATH Móvil Personal */
.payment-method-selector{border:1px solid var(--line);border-radius:16px;padding:16px;display:grid;grid-template-columns:1fr 1fr;gap:12px;background:#f8fafc}
.payment-method-selector legend{font-weight:900;padding:0 7px}
.payment-choice{display:flex!important;align-items:center;gap:12px;margin:0!important;padding:15px;border:2px solid #d9dee8;border-radius:14px;background:#fff;cursor:pointer}
.payment-choice:has(input:checked){border-color:var(--secondaryColor,#ff6b2c);background:#fff7ed;box-shadow:0 7px 20px rgba(249,115,22,.12)}
.payment-choice input{width:20px!important;height:20px;margin:0!important;accent-color:var(--secondaryColor,#ff6b2c)}
.payment-choice span{display:grid;gap:3px}.payment-choice small{color:var(--muted);font-weight:500}
.payment-detail-panel{border:1px solid #d9dee8;border-left:5px solid var(--secondaryColor,#ff6b2c);border-radius:14px;padding:17px;background:#fffaf5}
.payment-detail-panel[hidden]{display:none!important}.payment-detail-panel h3{margin:0 0 7px}.payment-detail-panel p{margin:0 0 13px;color:#475467}
@media(max-width:620px){.payment-method-selector{grid-template-columns:1fr}}


/* V56 · Foto temporal, descripción por voz y estimación de comida */
.photo-voice-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}
.photo-voice-grid label{display:grid;gap:7px;font-weight:800}
.photo-voice-grid select,.photo-voice-grid textarea{width:100%;border:1px solid #ccd2dc;border-radius:11px;padding:12px;background:#fff}
.voice-meal-panel{border:1px solid var(--line);border-radius:16px;padding:18px;background:#f8fafc}
.voice-meal-panel h3{margin-top:0}.voice-meal-panel ol{padding-left:22px;color:var(--muted);line-height:1.55}
.voice-meal-panel .btn{margin:8px 0 10px}.photo-estimate-card{margin-top:18px;display:grid;grid-template-columns:1fr 220px;gap:14px;align-items:end;border:1px solid #fdba74;border-left:5px solid #f97316;border-radius:16px;padding:18px;background:#fffaf5}
.photo-estimate-card .wide{grid-column:1/-1}.photo-estimate-card label{display:grid;gap:7px;font-weight:800}.photo-estimate-card input{width:100%;padding:11px;border:1px solid #ccd2dc;border-radius:10px}
@media(max-width:800px){.photo-voice-grid,.photo-estimate-card{grid-template-columns:1fr}.photo-estimate-card .wide{grid-column:auto}}

/* V57 · Análisis de calorías por cuatro respuestas explícitas */
.meal-question-list{display:grid;gap:12px;margin:14px 0}.meal-question-list label{display:grid;gap:6px;font-weight:800}.meal-question-list textarea{width:100%;border:1px solid #ccd2dc;border-radius:11px;padding:12px;resize:vertical;background:#fff}.photo-estimate-card p{line-height:1.55}

/* V58 · Actividades personalizadas en calendario y plan semanal */
.calendar-manager .panel-head{align-items:flex-start}
.calendar-activity-form{margin:18px 0 26px;padding:20px;border:1px solid var(--line);border-radius:16px;background:#f8fafc}
.calendar-activity-form[hidden]{display:none!important}
.calendar-plan-check{display:flex!important;align-items:center;gap:10px;padding:14px;border:1px solid #fed7aa;border-radius:12px;background:#fff7ed}
.calendar-plan-check input{width:19px!important;height:19px;margin:0!important}
.calendar-events{display:grid;gap:5px;margin-top:8px}
.custom-calendar-event{display:flex!important;align-items:center;justify-content:space-between;gap:6px;background:#eaf4ff!important;border-left:3px solid #2563eb;color:#173f7a!important}
.custom-calendar-event button{border:0;background:transparent;color:#b42318;font-size:18px;line-height:1;cursor:pointer;padding:0 2px}
@media(max-width:720px){.calendar-manager .panel-head{flex-direction:column}.calendar-manager .panel-head .btn{width:100%}}


/* V60 · Prueba gratuita */
.trial-cta{background:linear-gradient(135deg,#f6bf1f,#ff8a24)!important;color:#09152f!important}
.trial-dashboard-card,.trial-expired-card{margin:0 0 20px;border-radius:20px;padding:22px;background:linear-gradient(135deg,#fff8e6,#fff);border:1px solid #f6bf1f;box-shadow:0 12px 35px rgba(9,21,47,.10)}
.trial-expired-card{display:flex;align-items:center;justify-content:space-between;gap:20px;border-color:#ff8a24;background:#fff6ed}
.trial-topline{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.trial-progress{height:11px;border-radius:999px;background:#e8ebf0;overflow:hidden;margin-bottom:18px}.trial-progress i{display:block;height:100%;background:linear-gradient(90deg,#ef3128,#f6bf1f);border-radius:inherit}.trial-card-grid{display:grid;grid-template-columns:1fr auto;gap:22px;align-items:center}.trial-card-grid h2{margin:0 0 8px}.trial-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.trial-reminder{margin-top:12px;padding:11px 13px;border-radius:11px;background:#fff0dd;color:#9a3412;font-weight:800}
#trialModal .modal-card{max-height:92vh;overflow:auto}.trial-expired-card h2{margin:8px 0}
@media(max-width:760px){.trial-card-grid{grid-template-columns:1fr}.trial-actions{justify-content:flex-start}.trial-topline,.trial-expired-card{align-items:flex-start;flex-direction:column}}


/* V62 · Acceso de producción */
.login-intro{margin:0 0 18px;color:var(--muted);line-height:1.55}
#loginForm label{display:block;margin:15px 0;font-weight:750}
#loginForm input{width:100%;margin-top:7px;padding:13px;border:1px solid #ccd2dc;border-radius:11px;background:#fff;color:var(--ink)}


/* V76 — Nutrición voice-first */
.nutrition-simple-dashboard{display:grid;gap:14px;margin-bottom:18px}.nutrition-cal-main{background:linear-gradient(135deg,#0d1b35,#17294c);color:#fff;padding:24px;border-radius:24px;box-shadow:0 16px 35px #07142618}.nutrition-cal-main>div:first-child{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;flex-wrap:wrap}.nutrition-cal-main span{font-weight:800}.nutrition-cal-main strong{font-size:2rem}.nutrition-cal-main strong small{font-size:.85rem;font-weight:600;opacity:.75}.nutrition-progress{height:14px;background:#ffffff20;border-radius:99px;overflow:hidden;margin:16px 0 10px}.nutrition-progress i{display:block;height:100%;background:linear-gradient(90deg,#ef3128,#ff8a24);border-radius:inherit}.nutrition-macros-sub{display:flex;gap:12px;flex-wrap:wrap}.nutrition-macros-sub span{background:#fff;border:1px solid #e5e9f2;padding:10px 14px;border-radius:14px;font-size:.92rem}.nutrition-voice-home{text-align:center;padding:34px 24px}.nutrition-voice-home h2{font-size:2rem;margin:.25rem 0}.nutrition-mic-primary{width:min(330px,100%);min-height:90px;margin:18px auto 10px;border:0;border-radius:24px;background:linear-gradient(135deg,#ef3128,#ff7625);color:#fff;display:flex;align-items:center;justify-content:center;gap:14px;font-size:1.15rem;font-weight:900;box-shadow:0 14px 28px #ef312833;cursor:pointer}.nutrition-mic-primary span{font-size:2rem}.nutrition-mic-primary.listening,.method-card.listening{animation:voicePulse 1s infinite alternate}.nutrition-write-link{border:0;background:transparent;text-decoration:underline;font-weight:800;cursor:pointer;padding:10px}.nutrition-add-btn{width:100%;font-size:1.05rem;padding:16px;margin:0 0 18px}.nutrition-capture{scroll-margin-top:20px}.close-inline{border:0;background:#eef1f6;width:38px;height:38px;border-radius:50%;font-size:1.3rem;cursor:pointer}.nutrition-methods{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.method-card{border:1px solid #e0e5ee;background:#fff;border-radius:18px;padding:18px;display:grid;gap:5px;text-align:center;font-size:1.4rem;cursor:pointer}.method-card b{font-size:1rem}.method-card small{font-size:.76rem;color:#687386}.method-card.primary{border-color:#ef3128;background:#fff7f4}.nutrition-input-area{display:grid;gap:10px;margin-top:18px}.nutrition-input-area textarea{width:100%;resize:vertical;min-height:95px;border:1px solid #d7deea;border-radius:16px;padding:14px;font:inherit}.natural-review{margin-top:20px;border-top:1px solid #e6eaf0;padding-top:20px}.natural-meal-group{margin:16px 0}.natural-food-row{display:grid;grid-template-columns:36px 1fr auto 38px;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid #edf0f4}.natural-food-row>span{font-size:1.5rem}.natural-food-row small{display:block;color:#6c7688}.natural-edit-one{border:0;background:#f3f5f8;border-radius:10px;height:34px;cursor:pointer}.natural-edit-fields{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:10px;background:#f7f9fc;border-radius:12px}.natural-edit-fields input{width:100%}.natural-total{display:grid;gap:3px;padding:18px;margin:14px 0;background:#101d36;color:#fff;border-radius:18px}.natural-total strong{font-size:1.7rem}.natural-total small{opacity:.8}.natural-actions{display:flex;gap:8px;flex-wrap:wrap}.size-question{background:#fff8e5;border:1px solid #f0cc65;border-radius:14px;padding:14px;margin:12px 0}.size-question div{display:flex;gap:8px;margin-top:9px}.size-question button{border:1px solid #d8b54e;background:#fff;border-radius:10px;padding:8px 12px;cursor:pointer}.frequent-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.frequent-grid button{border:1px solid #e3e7ef;background:#fff;border-radius:15px;padding:12px;text-align:left;display:grid;gap:4px;cursor:pointer}.frequent-grid small{color:#6a7485}.nutrition-day-list{display:grid;gap:8px}.nutrition-day-list article{display:grid;grid-template-columns:1fr auto 36px;align-items:center;gap:10px;border:1px solid #e8ebf0;border-radius:14px;padding:12px}.nutrition-day-list article>div{display:flex;align-items:center;gap:10px}.nutrition-day-list article>div>span{font-size:1.35rem}.nutrition-day-list small{display:block;color:#6d7787}.nutrition-advanced summary{cursor:pointer;font-weight:900}.nutrition-advanced[open] summary{margin-bottom:18px}@keyframes voicePulse{from{transform:scale(1);box-shadow:0 0 0 0 #ef312855}to{transform:scale(1.02);box-shadow:0 0 0 12px #ef312800}}
@media(max-width:700px){.nutrition-cal-main strong{font-size:1.55rem}.nutrition-methods{grid-template-columns:1fr}.frequent-grid{grid-template-columns:1fr 1fr}.natural-edit-fields{grid-template-columns:1fr}.natural-food-row{grid-template-columns:32px 1fr auto}.natural-edit-one{grid-column:2/4;justify-self:end}.nutrition-day-list article{grid-template-columns:1fr auto}.nutrition-day-list .icon-delete{grid-column:2}.nutrition-macros-sub{display:grid;grid-template-columns:1fr 1fr}.nutrition-macros-sub span:last-child{grid-column:1/-1}}

/* Cloud status is outside form panels so rerenders do not hide pending writes. */
#cloudStatus{position:fixed;bottom:12px;left:12px;right:12px;z-index:15000;display:flex;gap:12px;align-items:center;justify-content:center;padding:12px 16px;border-radius:12px;background:#173c2c;color:#fff;box-shadow:0 4px 20px #0003;font-size:14px}
#cloudStatus[data-state="pending"],#cloudStatus[data-state="offline"]{background:#694b12}
#cloudStatus[data-state="error"],#cloudStatus[data-state="conflict"]{background:#7c2525}
#cloudStatus button,#cloudUpdate,.cloud-conflict button{border:1px solid currentColor;border-radius:8px;padding:8px 12px;cursor:pointer}
#cloudStatus button{color:inherit;background:transparent}
#cloudUpdate{position:fixed;top:80px;right:16px;z-index:14000;background:#fff;color:#173452;max-width:320px}
.cloud-conflict{max-width:min(760px,95vw);max-height:85vh;overflow:auto;padding:24px;border:0;border-radius:16px}
.cloud-conflict pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#f0f3f7;color:#172033;padding:12px;max-height:220px;overflow:auto}
body.portal-body{padding-bottom:90px}

#cloudRecovery{position:fixed;top:120px;left:16px;right:16px;z-index:14000;background:#fff3cd;color:#422d00;padding:14px;border-radius:10px;box-shadow:0 3px 14px #0002}#cloudRecovery button{padding:8px;margin-left:10px}
