/* ===== Demo Planificador de Comidas (menta) ===== */
body.demo{background:var(--bg)}
.demo-nav{position:sticky;top:0;z-index:30;background:rgba(244,250,248,.92);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.demo-nav-inner{max-width:1000px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:12px 20px}
.brand{display:flex;align-items:center;gap:.6rem}
.brand-mark{width:38px;height:38px;border-radius:11px;background:var(--m-600);color:#fff;display:grid;place-items:center;flex:none}.brand-mark svg{width:21px;height:21px}
.brand-name{display:flex;flex-direction:column;font-weight:700;font-size:1.02rem;line-height:1.1}.brand-name small{font-weight:500;font-size:.68rem;color:var(--muted)}
.badge{display:inline-flex;align-items:center;gap:.5em;font-size:.8rem;font-weight:600;color:var(--m-700);background:var(--m-100);padding:.4em .85em;border-radius:999px}
.badge-dot{width:7px;height:7px;border-radius:50%;background:var(--m-500)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;font-weight:600;border-radius:999px;padding:.7rem 1.15rem;font-size:.95rem;text-decoration:none;transition:.18s;color:var(--ink)}
.btn--primary{background:var(--m-600);color:#fff}.btn--primary:hover{background:var(--m-700)}
.btn--sm{padding:.5rem .95rem;font-size:.88rem}.btn--lg{padding:1rem 1.5rem;font-size:1.05rem}
.demo-hero{max-width:1000px;margin:0 auto;padding:40px 20px 30px;display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.demo-hero-text h1{font-size:2.4rem;line-height:1.12;letter-spacing:-.02em;margin:.7rem 0 .7rem}
.demo-hero-text h1 .hl{color:var(--m-600)}
.demo-hero-text p{color:var(--ink-soft);font-size:1.05rem;max-width:460px}
.calc-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);padding:24px;box-shadow:var(--shadow-lg)}
.pick-lab{font-size:.86rem;font-weight:700;color:var(--ink);margin-bottom:12px}
.pick-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px}
.pick{display:flex;align-items:center;gap:.6rem;background:var(--m-50);border:1.5px solid var(--line);border-radius:var(--radius-sm);padding:.6rem .7rem;text-align:left;font-size:.88rem;font-weight:600;transition:.14s}
.pick:hover{border-color:var(--m-300)}
.pick.is-on{background:var(--m-100);border-color:var(--m-400)}
.pick .pe{font-size:1.15rem;flex:none}
.pick .pc{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pick .pk{width:20px;height:20px;border-radius:6px;border:2px solid var(--line);flex:none;display:grid;place-items:center;color:transparent;font-size:.7rem;font-weight:900}
.pick.is-on .pk{background:var(--m-500);border-color:var(--m-500);color:#fff}
.calc-hint{text-align:center;font-size:.9rem;color:var(--muted);margin-top:10px}
.calc-result{border-top:1px solid var(--line);padding-top:16px;margin-top:12px}
.cr-top{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:12px}
.cr-top span{color:var(--ink-soft);font-size:.9rem}
.cr-top b{font-size:1.4rem;font-weight:800;color:var(--m-700);letter-spacing:-.01em}
.cr-aisles{display:flex;flex-direction:column;gap:12px}
.cr-aisle .an{font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--m-700);margin-bottom:5px;display:flex;align-items:center;gap:.35rem}
.cr-aisle .items{display:flex;flex-wrap:wrap;gap:6px}
.cr-aisle .it{font-size:.82rem;background:var(--bg);border:1px solid var(--line);border-radius:999px;padding:.3rem .7rem;color:var(--ink-soft)}
.cr-note{text-align:center;font-size:.9rem;color:var(--ink-soft);margin-top:1rem}

.demo-locked{max-width:1000px;margin:0 auto;padding:40px 20px}
.locked-head{text-align:center;max-width:560px;margin:0 auto 26px}
.locked-head h2{font-size:1.8rem;letter-spacing:-.01em}.locked-head p{color:var(--ink-soft);margin-top:.5rem}
.locked-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.feat{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow-sm)}
.feat-ico{font-size:1.8rem}.feat h3{font-size:1.02rem;margin:.5rem 0 .3rem}.feat p{font-size:.88rem;color:var(--ink-soft)}
.demo-compare{max-width:840px;margin:0 auto;padding:30px 20px 40px;text-align:center}
.demo-compare h2{font-size:1.8rem;margin-bottom:1.4rem;letter-spacing:-.01em}
.cmp{display:grid;grid-template-columns:1fr 1fr;gap:16px;text-align:left}
.cmp-col{border-radius:var(--radius);padding:22px}.cmp-col h3{font-size:1.1rem;margin-bottom:.9rem}
.cmp-col ul{list-style:none;display:flex;flex-direction:column;gap:.7rem}
.cmp-col li{display:flex;gap:.6rem;font-size:.92rem;align-items:flex-start}.cmp-col li::before{font-weight:700;flex:none}
.cmp-col--bad{background:#fff;border:1px solid var(--line)}.cmp-col--bad h3{color:var(--muted)}.cmp-col--bad li{color:var(--ink-soft)}.cmp-col--bad li::before{content:"✕";color:var(--red)}
.cmp-col--good{background:linear-gradient(160deg,var(--m-50),#fff);border:1.5px solid var(--m-300)}.cmp-col--good h3{color:var(--m-700)}.cmp-col--good li::before{content:"✓";color:var(--m-600)}
.demo-cta{padding:30px 20px 50px}
.cta-card{max-width:560px;margin:0 auto;background:linear-gradient(150deg,var(--m-800),var(--m-600) 60%,var(--m-500));color:#fff;border-radius:var(--radius-lg);padding:38px 28px;text-align:center;box-shadow:var(--shadow-lg);position:relative;overflow:hidden}
.cta-card::after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;background:rgba(255,255,255,.12);top:-120px;right:-80px}
.cta-card *{position:relative;z-index:1}
.badge--light{background:rgba(255,255,255,.2);color:#fff}
.cta-card h2{font-size:1.9rem;margin:.8rem 0 .5rem;letter-spacing:-.01em}.cta-card p{opacity:.95;max-width:400px;margin:0 auto}
.price{display:flex;align-items:baseline;justify-content:center;gap:.6rem;margin:1.3rem 0}
.price-now{font-size:2.6rem;font-weight:800;letter-spacing:-.02em}.price-old{font-size:1.2rem;opacity:.7;text-decoration:line-through}
.btn--white{background:#fff;color:var(--m-700)}.btn--white:hover{background:var(--m-50);transform:translateY(-1px)}
.cta-foot{font-size:.86rem;margin-top:1rem!important;opacity:.92}.cta-foot a{color:#fff;text-decoration:underline}
.demo-foot{text-align:center;padding:24px 20px 40px;color:var(--muted);font-size:.82rem;border-top:1px solid var(--line)}.demo-foot p{max-width:600px;margin:0 auto}
@media (max-width:760px){.demo-hero{grid-template-columns:1fr;gap:24px}.demo-hero-text h1{font-size:2rem}.locked-grid{grid-template-columns:1fr 1fr}.cmp{grid-template-columns:1fr}}
@media (max-width:460px){.locked-grid{grid-template-columns:1fr}.cta-card h2{font-size:1.6rem}.pick-grid{grid-template-columns:1fr}}
