:root{--bg:#eef3ee;--surface:#fff;--sunk:#f5f8f4;--line:#d7e0d6;--fg:#17231d;--muted:#56655c;--brand:#1f7a4a;--brand-ink:#fff;--brand-soft:#dcf1e4;--tomate:#c2412c;--tomate-soft:#fde7e1;--falta:#8a5a00;--falta-soft:#fff0c2;--ok:#1f7a45;--ok-soft:#e0f4e7;--sol:#9a6500;--sol-s:#fff1c2;--nar:#bf500a;--nar-s:#ffe4cf;--ver:#23854b;--ver-s:#d9f1e1;--ros:#cc2f69;--ros-s:#fde0ea;--azu:#3f51c4;--azu-s:#e2e6fb;--plato:#fff;--display:"Bricolage Grotesque","Segoe UI",system-ui,sans-serif;--body:"Atkinson Hyperlegible","Segoe UI",system-ui,sans-serif;--r:14px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0f1512;--surface:#18211c;--sunk:#131b16;--line:#2c3a32;--fg:#e8efea;--muted:#9fb2a6;--brand:#4fc184;--brand-ink:#0b1a12;--brand-soft:#173325;--tomate:#ff8d75;--tomate-soft:#3b1f19;--falta:#f2c35a;--falta-soft:#3a2f12;--ok:#6fd49a;--ok-soft:#173326;--sol:#f2c14e;--sol-s:#352b10;--nar:#ff9a52;--nar-s:#3a2214;--ver:#5fd08f;--ver-s:#14301f;--ros:#ff7fa9;--ros-s:#3a1726;--azu:#9aa6ff;--azu-s:#1d2148;--plato:#f4f6f3;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#0f1512;--surface:#18211c;--sunk:#131b16;--line:#2c3a32;--fg:#e8efea;--muted:#9fb2a6;--brand:#4fc184;--brand-ink:#0b1a12;--brand-soft:#173325;--tomate:#ff8d75;--tomate-soft:#3b1f19;--falta:#f2c35a;--falta-soft:#3a2f12;--ok:#6fd49a;--ok-soft:#173326;--sol:#f2c14e;--sol-s:#352b10;--nar:#ff9a52;--nar-s:#3a2214;--ver:#5fd08f;--ver-s:#14301f;--ros:#ff7fa9;--ros-s:#3a1726;--azu:#9aa6ff;--azu-s:#1d2148;--plato:#f4f6f3;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:var(--bg);color:var(--fg);font-family:var(--body);padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-block:20px;font-size:16px;line-height:1.45}button,input,select{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--brand);outline-offset:2px}h1,h2,h3{font-family:var(--display);text-wrap:balance;margin:0}.m-sol{--m:var(--sol);--ms:var(--sol-s)}.m-nar{--m:var(--nar);--ms:var(--nar-s)}.m-ver{--m:var(--ver);--ms:var(--ver-s)}.m-ros{--m:var(--ros);--ms:var(--ros-s)}.m-azu{--m:var(--azu);--ms:var(--azu-s)}.top{background:var(--brand);color:var(--brand-ink);align-items:center;gap:8px;padding:14px 14px 12px;display:flex}.top.m-sol,.top.m-nar,.top.m-ver,.top.m-ros,.top.m-azu{background:var(--m)}.top h2{flex:1;min-width:0;font-size:1.2rem;font-weight:800}.top .sub{opacity:.9;font-size:.8rem;font-family:var(--body);font-weight:400;display:block}.ibtn{color:inherit;cursor:pointer;background:0 0;border:0;border-radius:10px;flex:none;place-items:center;width:40px;height:40px;display:grid}.ibtn:hover{background:#ffffff29}.ibtn svg,.btn svg,.bnav svg{width:22px;height:22px}.body{flex-direction:column;flex:1;gap:14px;padding:14px 14px 18px;display:flex;overflow-y:auto}.body>*{flex-shrink:0}.bnav{border-top:1px solid var(--line);background:var(--surface);grid-template-columns:repeat(5,1fr);display:grid}.bnav a{color:var(--muted);flex-direction:column;align-items:center;gap:2px;padding:8px 0 10px;font-size:.72rem;text-decoration:none;display:flex}.bnav a.on{color:var(--brand);font-weight:700}.sec-title{font-family:var(--display);letter-spacing:.07em;text-transform:uppercase;color:var(--muted);margin:4px 2px -6px;font-size:.82rem;font-weight:600}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}.row{border-top:1px solid var(--line);align-items:center;gap:12px;padding:12px 14px;display:flex}.row:first-child{border-top:0}.grow{flex:1;min-width:0}.meal{letter-spacing:.06em;text-transform:uppercase;color:var(--m,var(--muted));font-size:.75rem;font-weight:700}.what{font-weight:700}.det{color:var(--muted);font-size:.88rem}.btn{border:1px solid var(--line);background:var(--surface);cursor:pointer;min-height:46px;color:var(--fg);border-radius:11px;justify-content:center;align-items:center;gap:8px;padding:10px 14px;font-weight:700;text-decoration:none;display:inline-flex}.btn.primary{background:var(--brand);color:var(--brand-ink);border-color:var(--brand)}.btn.danger{color:var(--tomate);border-color:var(--tomate)}.btn[disabled]{opacity:.45;cursor:not-allowed}.btn.block{width:100%}.sbtn{border:1px solid var(--line);background:var(--surface);cursor:pointer;width:42px;height:42px;color:var(--m,var(--brand));border-radius:10px;flex:none;place-items:center;display:grid}.sbtn svg{width:20px;height:20px}.plato{--s:60px;width:var(--s);height:var(--s);background:var(--plato);border:3px solid var(--m);box-shadow:inset 0 0 0 4px var(--ms);border-radius:50%;flex:none;position:relative}.plato svg{width:48%;height:48%;position:absolute}.plato.n1 svg{width:64%;height:64%;top:18%;left:18%}.plato.n2 svg:first-child{top:26%;left:10%}.plato.n2 svg:nth-child(2){top:26%;right:10%}.plato.n3 svg:first-child{top:12%;left:10%}.plato.n3 svg:nth-child(2){top:12%;right:10%}.plato.n3 svg:nth-child(3){bottom:8%;left:26%}.plato.lg{--s:84px}.plato.xl{--s:128px;box-shadow:inset 0 0 0 7px var(--ms);border-width:4px}.fi{flex:none;width:22px;height:22px}.foto{background:#fff;display:block;overflow:hidden}.foto img{object-fit:contain;width:100%;height:100%;display:block}.foto.thumb{border:2px solid var(--m);border-radius:12px;flex:none;width:86px;height:62px}.foto.wide{height:150px;padding:6px 10px}.foto.sm{height:112px}.foto.cre{border-radius:10px;flex:none;width:64px;height:56px}.opt.col{flex-direction:column;align-items:stretch;gap:0;padding:0}.opt-r{align-items:center;gap:12px;padding:10px 14px;display:flex}.opt.col:has(input:checked) .foto{box-shadow:inset 0 0 0 3px var(--m)}.hero .foto.wide{border-radius:12px;align-self:stretch;height:170px}.slot{border-radius:var(--r);background:var(--surface);border:1px solid var(--line);overflow:hidden}.slot-h{background:var(--m);color:#fff;font-family:var(--display);justify-content:space-between;align-items:center;padding:9px 14px;font-size:1.02rem;font-weight:800;display:flex}:root:not([data-theme=light]) .slot-h{color:#fff}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .slot-h{color:#10160f}}:root[data-theme=dark] .slot-h{color:#10160f}.slot-h small{font-family:var(--body);opacity:.92;font-size:.8rem;font-weight:400}.opt{border-top:1px solid var(--line);cursor:pointer;align-items:center;gap:12px;padding:11px 14px;display:flex}.opt:first-of-type{border-top:0}.opt input{opacity:0;pointer-events:none;position:absolute}.opt .tick{border:2.5px solid var(--m);border-radius:50%;flex:none;place-items:center;width:26px;height:26px;display:grid}.opt:has(input:checked){background:var(--ms)}.opt:has(input:checked) .tick{background:var(--m)}.opt:has(input:checked) .tick:after{content:"";border:3px solid #fff;border-width:0 3px 3px 0;width:7px;height:12px;transform:rotate(45deg)translate(-1px,-1px)}.opt:has(input:focus-visible){outline:3px solid var(--m);outline-offset:-3px}.code{background:var(--m);color:#fff;min-width:26px;height:26px;font-weight:800;font-family:var(--display);border-radius:8px;place-items:center;margin-right:6px;padding:0 6px;font-size:.9rem;display:inline-grid}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .code{color:#10160f}}:root[data-theme=dark] .code{color:#10160f}.comp{color:var(--fg);flex-direction:column;gap:2px;margin:.25rem 0 0;padding:0;font-size:.88rem;list-style:none;display:flex}.comp li{gap:6px;display:flex}.comp li:before{content:"";background:var(--m);border-radius:3px;flex:none;width:6px;height:6px;margin-top:.5em}.oneline{color:var(--muted);font-size:.86rem}.day-card{border-radius:var(--r);background:var(--ms);border:1px solid var(--line);overflow:hidden}.dc-in{align-items:flex-start;gap:12px;padding:12px 14px 14px;display:flex}.day-card .meal{margin-bottom:2px}.day-card h3{font-size:1.05rem;font-weight:800}.porcion{background:var(--surface);border-radius:10px;margin-top:8px;padding:7px 10px;font-size:.85rem}.porcion b{color:var(--m)}.days{gap:6px;padding-bottom:2px;display:flex;overflow-x:auto}.days button{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:12px;flex-direction:column;flex:none;align-items:center;min-width:50px;padding:6px 8px;font-size:.8rem;display:flex}.days button b{font-size:1.05rem}.days button .pip{gap:2px;margin-top:4px;display:flex}.days button .pip i{background:var(--line);border-radius:3px;width:6px;height:6px}.days button .pip i.on{background:var(--m)}.days button.sel{background:var(--fg);color:var(--bg);border-color:var(--fg)}.tabs{gap:6px;padding-bottom:2px;display:flex;overflow-x:auto}.tabs button{border:2px solid var(--m);background:var(--surface);color:var(--fg);cursor:pointer;border-radius:999px;flex:none;align-items:center;gap:6px;padding:6px 12px;font-size:.88rem;font-weight:700;display:flex}.tabs button.on{background:var(--m);color:#fff}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .tabs button.on{color:#10160f}}:root[data-theme=dark] .tabs button.on{color:#10160f}.chip{white-space:nowrap;vertical-align:middle;border-radius:999px;align-items:center;gap:4px;padding:2px 9px;font-size:.74rem;font-weight:700;display:inline-flex}.chip.falta{background:var(--falta-soft);color:var(--falta)}.chip.ok{background:var(--ok-soft);color:var(--ok)}.chip.pend{background:var(--tomate-soft);color:var(--tomate)}.banner{border-radius:var(--r);align-items:flex-start;gap:10px;padding:12px 14px;font-size:.92rem;display:flex}.banner>svg{flex:none;width:24px;height:24px;margin-top:1px}.banner.info{background:var(--brand-soft)}.banner.info>svg{color:var(--brand)}.banner.warn{background:var(--falta-soft)}.banner.warn>svg{color:var(--falta)}.banner.err{background:var(--tomate-soft)}.banner.err>svg{color:var(--tomate)}.creatina{background:var(--surface);border:2px dashed var(--brand);border-radius:var(--r);align-items:center;gap:12px;padding:12px 14px;display:flex}.creatina .scoop{flex:none;width:44px;height:44px}.sticky-foot{background:var(--sunk);border-top:1px solid var(--line);flex-direction:column;gap:6px;margin:0 -14px -18px;padding:12px 14px;display:flex;position:sticky;bottom:-18px}.progress{background:var(--line);border-radius:5px;height:10px;display:flex;overflow:hidden}.progress i{background:var(--brand);height:100%;transition:width .3s;display:block}@media (prefers-reduced-motion:reduce){.progress i{transition:none}}.qty{font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right;font-weight:700}.qty small{color:var(--muted);font-size:.78rem;font-weight:400;display:block}.math{color:var(--muted);font-variant-numeric:tabular-nums;margin-top:2px;font-size:.78rem}.sec-ic{background:var(--ms);border-radius:11px;flex:none;place-items:center;width:38px;height:38px;display:grid}.sec-ic svg{width:26px;height:26px}.phead{background:var(--ms);font-family:var(--display);align-items:center;gap:10px;padding:10px 14px;font-weight:800;display:flex}.phead small{font-family:var(--body);color:var(--muted);margin-left:auto;font-size:.8rem;font-weight:400}.check{border-top:1px solid var(--line);cursor:pointer;align-items:center;gap:14px;min-height:66px;padding:12px 14px;display:flex}.check:first-of-type{border-top:0}.check input{appearance:none;border:3px solid var(--m);background:var(--surface);cursor:pointer;border-radius:10px;flex:none;place-items:center;width:36px;height:36px;margin:0;display:grid}.check input:checked{background:var(--m)}.check input:checked:after{content:"";border:3.5px solid #fff;border-width:0 3.5px 3.5px 0;width:9px;height:17px;transform:rotate(45deg)translate(-1px,-2px)}.check:has(input:checked) .what{color:var(--muted);text-decoration:line-through}.check .what{font-size:1.08rem}.stepper{align-items:center;gap:6px;display:flex}.stepper output{text-align:center;font-variant-numeric:tabular-nums;min-width:42px;font-weight:700}.field{border-top:1px solid var(--line);flex-direction:column;gap:4px;padding:12px 14px;display:flex}.field:first-child{border-top:0}.field label{font-size:.9rem;font-weight:700}.field input,.field select{border:1px solid var(--line);background:var(--surface);border-radius:10px;width:100%;min-height:46px;padding:10px}.field .hint{color:var(--muted);font-size:.8rem}.empty{text-align:center;color:var(--muted);padding:24px 18px}.empty b{color:var(--fg);font-family:var(--display);margin-bottom:4px;font-size:1.05rem;display:block}.empty svg{width:56px;height:56px;margin-bottom:6px}.toast{background:var(--fg);color:var(--bg);z-index:5;border-radius:12px;align-items:center;gap:8px;padding:12px 14px;font-weight:700;display:flex;position:absolute;bottom:84px;left:14px;right:14px}.toast svg{width:20px;height:20px}.modal{z-index:6;background:#0a140f80;place-items:end center;display:grid;position:absolute;inset:0}.modal .sheet{background:var(--surface);border-radius:20px 20px 0 0;flex-direction:column;gap:12px;width:100%;padding:18px 16px 22px;display:flex}.modal .acts{grid-template-columns:1fr 1fr;gap:10px;display:grid}.skel{background:linear-gradient(90deg,var(--line),var(--sunk),var(--line));background-size:200% 100%;border-radius:6px;height:14px;animation:1.2s linear infinite sh}@keyframes sh{to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.skel{animation:none}}.hero{background:var(--ms);border-radius:var(--r);text-align:center;flex-direction:column;align-items:center;gap:10px;padding:16px;display:flex}.hero h3{font-size:1.3rem;font-weight:800}.hero .comp{text-align:left;background:var(--surface);border-radius:10px;align-self:stretch;padding:10px 12px}.chiprow{flex-wrap:wrap;gap:6px;padding:12px 14px;display:flex}.fchip{border:1.5px solid var(--m);background:var(--surface);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:4px 10px 4px 5px;font-size:.88rem;font-weight:700;display:inline-flex}.fchip svg{width:24px;height:24px}.fchip.on{background:var(--ms)}.dot{background:var(--tomate);border-radius:5px;flex:none;width:10px;height:10px}.muted{color:var(--muted)}.sel-inline{border:1.5px solid var(--m);background:var(--surface);border-radius:10px;width:100%;min-height:44px;margin-top:4px;padding:8px}html,body{height:100%}body{margin:0;padding:0;font-size:16px}.app{background:var(--sunk);flex-direction:column;max-width:520px;min-height:100%;margin:0 auto;display:flex;position:relative}@media (width>=560px){.app{border-left:1px solid var(--line);border-right:1px solid var(--line)}}.top{top:env(safe-area-inset-top,0px);z-index:4;padding-left:max(14px,env(safe-area-inset-left,0px));padding-right:max(14px,env(safe-area-inset-right,0px));position:sticky}.body{padding-left:max(14px,env(safe-area-inset-left,0px));padding-right:max(14px,env(safe-area-inset-right,0px));padding-bottom:24px}.bnav{z-index:4;padding-bottom:env(safe-area-inset-bottom,0px);position:sticky;bottom:0}.sticky-foot{margin:0 calc(-1*max(14px,env(safe-area-inset-left,0px))) -24px;bottom:0}.ibtn{text-decoration:none;position:relative}.badge{background:var(--tomate);color:#fff;border-radius:9px;place-items:center;min-width:18px;height:18px;padding:0 4px;font-size:.7rem;font-weight:700;display:grid;position:absolute;top:4px;right:4px}a{color:var(--brand)}.opt{text-align:left;background:var(--surface);width:100%;font:inherit;color:inherit;border:0}.opt.on{background:var(--ms)}.opt.on .tick{background:var(--m)}.opt.on .tick:after{content:"";border:3px solid #fff;border-width:0 3px 3px 0;width:7px;height:12px;transform:rotate(45deg)translate(-1px,-1px)}.opt.on.col .foto{box-shadow:inset 0 0 0 3px var(--m)}.opt[disabled]{cursor:default}.inline{display:inline}form{margin:0}.list-link{border-top:1px solid var(--line);color:var(--fg);align-items:center;gap:12px;padding:14px;text-decoration:none;display:flex}.list-link:first-child{border-top:0}.list-link:hover{background:var(--sunk)}.err{color:var(--tomate);font-size:.85rem}textarea{font:inherit;color:inherit;border:1px solid var(--line);background:var(--surface);border-radius:10px;width:100%;min-height:110px;padding:10px}.field textarea{min-height:110px}progress{appearance:none;background:var(--line);border:0;border-radius:5px;width:100%;height:10px;overflow:hidden}progress::-webkit-progress-bar{background:var(--line);border-radius:5px}progress::-webkit-progress-value{background:var(--brand);border-radius:5px}progress::-moz-progress-bar{background:var(--brand);border-radius:5px}.days a{border:1px solid var(--line);background:var(--surface);min-width:50px;color:var(--fg);border-radius:12px;flex-direction:column;flex:none;align-items:center;padding:6px 8px;font-size:.8rem;text-decoration:none;display:flex}.days a b{font-size:1.05rem}.days a .pip{gap:2px;margin-top:4px;display:flex}.days a .pip i{background:var(--line);border-radius:3px;width:6px;height:6px}.days a .pip i.on{background:var(--m)}.days a.sel{background:var(--fg);color:var(--bg);border-color:var(--fg)}.tabs a{border:2px solid var(--m);background:var(--surface);color:var(--fg);border-radius:999px;flex:none;padding:6px 12px;font-size:.88rem;font-weight:700;text-decoration:none}.tabs a.on{background:var(--m);color:#fff}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .tabs a.on{color:#10160f}}:root[data-theme=dark] .tabs a.on{color:#10160f}.week-nav{justify-content:space-between;align-items:center;gap:8px;display:flex}.status{align-items:center;gap:8px;display:flex}.confirm-box[hidden]{display:none}.confirm-box{background:var(--tomate-soft);border-radius:12px;flex-direction:column;gap:10px;margin-top:8px;padding:12px;display:flex}.confirm-box .acts{grid-template-columns:1fr 1fr;gap:8px;display:grid}.check .saving{color:var(--falta);font-size:.75rem}.qty-input{border:1px solid var(--line);background:var(--surface);text-align:right;border-radius:10px;width:96px;min-height:42px;padding:8px}.auth{max-width:420px;padding:40px max(16px,env(safe-area-inset-left,0px)) 24px;flex-direction:column;gap:16px;margin:0 auto;display:flex}.auth h1{color:var(--brand);font-size:1.8rem;font-weight:800}.check-inline{align-items:center;gap:8px;font-size:.95rem;display:flex}.check-inline input{width:22px;height:22px;accent-color:var(--brand)}.pager{justify-content:space-between;gap:8px;display:flex}.sr-sprite{width:0;height:0;position:absolute;overflow:hidden}.toast{width:min(492px,100% - 28px);left:50%;right:auto;bottom:calc(84px + env(safe-area-inset-bottom,0px));position:fixed;transform:translate(-50%)}.sr-only{clip:rect(0,0,0,0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.bnav.c3{grid-template-columns:repeat(3,1fr)}.pad{gap:6px;padding:12px 14px}.steps{flex-direction:column;gap:8px;margin:0;padding:12px 14px 12px 34px;display:flex}.danger-ic{color:var(--tomate)}.dot-off{flex:none;width:10px}.row.total{background:var(--brand-soft)}.qty.big{font-size:1.3rem}.creatina{flex-wrap:wrap}.creatina .grow{min-width:180px}.creatina form,.creatina>.chip{margin-left:auto}@media (width>=900px){.app:not(.guest):not(.bare){border:0;grid-template:"nav top""nav body"1fr/240px minmax(0,1fr);max-width:none;min-height:100vh;display:grid}.app:not(.guest):not(.bare) .top{grid-area:top;padding:16px 32px;top:0}.app:not(.guest):not(.bare) .top h2{font-size:1.4rem}.app:not(.guest):not(.bare) .bnav{border-top:0;border-right:1px solid var(--line);flex-direction:column;grid-area:nav;align-self:start;gap:4px;height:100vh;padding:22px 14px;display:flex;position:sticky;top:0}.app:not(.guest):not(.bare) .bnav:before{content:"Menú Familiar";font-family:var(--display);color:var(--brand);padding:4px 12px 20px;font-size:1.35rem;font-weight:800}.app:not(.guest):not(.bare) .bnav a{border-radius:10px;flex-direction:row;justify-content:flex-start;gap:12px;padding:11px 12px;font-size:1rem}.app:not(.guest):not(.bare) .bnav a:hover{background:var(--sunk)}.app:not(.guest):not(.bare) .bnav a.on{background:var(--brand-soft)}.app:not(.guest):not(.bare) .body{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:18px;width:100%;max-width:1240px;padding:24px 32px 40px;display:grid}.app:not(.guest):not(.bare) .body>*{grid-column:1/-1}.app:not(.guest):not(.bare) .body>.day-card,.app:not(.guest):not(.bare) .body>.panel,.app:not(.guest):not(.bare) .body>.slot:not([id^=comida-]){grid-column:auto}:is(.app:not(.guest):not(.bare) .body>.banner,.app:not(.guest):not(.bare) .body>.panel:has(>.empty)){grid-column:1/-1}.app:not(.guest):not(.bare) .sticky-foot{border:1px solid var(--line);border-radius:var(--r);background:var(--surface);margin:0;position:static}.slot[id^=comida-] form{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));display:grid}.slot[id^=comida-] .opt{border-top:1px solid var(--line);border-right:1px solid var(--line)}.foto.wide{height:180px}.foto.wide.sm{height:140px}.toast{bottom:28px}.days a{min-width:72px}}@media (width>=600px) and (width<=899.98px){.app:not(.guest):not(.bare){border:0;max-width:none}.app:not(.guest):not(.bare) .top{padding-left:24px;padding-right:24px}.app:not(.guest):not(.bare) .body{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px;padding:20px 24px 28px;display:grid}.app:not(.guest):not(.bare) .body>*{grid-column:1/-1}.app:not(.guest):not(.bare) .body>.day-card,.app:not(.guest):not(.bare) .body>.panel,.app:not(.guest):not(.bare) .body>.slot:not([id^=comida-]){grid-column:auto}:is(.app:not(.guest):not(.bare) .body>.banner,.app:not(.guest):not(.bare) .body>.panel:has(>.empty)){grid-column:1/-1}.app:not(.guest):not(.bare) .sticky-foot{margin:0 -24px -28px}.slot[id^=comida-] form{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.slot[id^=comida-] .opt{border-top:1px solid var(--line);border-right:1px solid var(--line)}.bnav a{font-size:.85rem}}.pills{flex-wrap:wrap;gap:8px;padding:4px 14px 14px;display:flex}.pill{border:2px solid var(--m);background:var(--surface);color:var(--fg);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:6px;min-height:46px;padding:10px 16px;font-weight:700;display:inline-flex}.pill:hover:not([disabled]){background:var(--ms)}.pill.on{background:var(--m);color:#fff}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .pill.on{color:#10160f}}:root[data-theme=dark] .pill.on{color:#10160f}.pill[disabled]{cursor:default;opacity:.8}.pill .fi{width:18px;height:18px}.slot[id^=comida-] .foto.wide{border-bottom:1px solid var(--line)}@media (width>=600px){.slot[id^=comida-] form.pills{display:flex}}@media print{.slot-h,.pill.on,.opt.on,.tick,.code{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.copy-day{flex-wrap:wrap;gap:8px;display:flex}.copy-day form,.copy-day>.btn{flex:220px}.copy-day .btn{width:100%}.toast.bad{background:var(--tomate);color:#fff}.cycle{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;display:grid}.cycle-week{background:var(--surface);border:1px solid var(--line);color:var(--fg);--m:var(--tomate);border-radius:12px;flex-direction:column;gap:2px;padding:10px 12px;text-decoration:none;display:flex}.cycle-week.ok{--m:var(--ok);background:var(--ok-soft)}.cycle-week b{font-size:.92rem}.board-wrap{margin:0 -2px;overflow-x:auto}.board{border-collapse:separate;border-spacing:4px;table-layout:fixed;width:100%;min-width:340px}.board thead th{font-family:var(--display);color:var(--m);text-align:center;vertical-align:bottom;padding:0 2px 2px;font-size:.72rem;font-weight:800;line-height:1.1}.board thead th:first-child{width:46px}.board tbody th{color:var(--muted);text-align:center;font-size:.75rem;font-weight:400;line-height:1.1}.board tbody th b{color:var(--fg);font-size:1.05rem;font-family:var(--display);display:block}.board tr.today th b{color:var(--brand)}.board td{padding:0}.cell{aspect-ratio:1/.82;border:2px solid var(--m);background:var(--plato);cursor:pointer;width:100%;color:var(--fg);font:inherit;border-radius:12px;padding:0;display:block;position:relative;overflow:hidden}.cell img{object-fit:cover;width:100%;height:100%;display:block}.cell-code{background:var(--m);color:#fff;min-width:20px;height:20px;font-size:.72rem;font-weight:800;font-family:var(--display);border-radius:6px;place-items:center;display:grid;position:absolute;bottom:4px;left:4px}.cell-code:empty{display:none}.cell-plus{color:var(--m);place-items:center;font-size:.7rem;font-weight:700;display:none;position:absolute;inset:0}.cell.empty{background:var(--ms);border-style:dashed}.cell.empty .cell-plus{display:grid}.cell.empty img{display:none}.cell-txt{text-align:center;background:var(--ms);flex-direction:column;justify-content:center;gap:2px;padding:4px;font-size:.66rem;font-weight:700;line-height:1.15;display:flex;position:absolute;inset:0}.cell.empty .cell-txt span:empty{display:none}.cell-changed{color:var(--tomate);font-size:.8rem;position:absolute;top:2px;right:5px}.cell[disabled]{cursor:default}.cell:not([disabled]):hover{box-shadow:0 0 0 3px var(--ms)}.board-hint{margin:-4px 2px 0}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .cell-code{color:#10160f}}:root[data-theme=dark] .cell-code{color:#10160f}@media (width>=600px){.board thead th{font-size:.85rem}.cell-txt{font-size:.78rem}.cell-plus{font-size:.85rem}}.sheet{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}.sheet-h{background:var(--m);color:#fff;justify-content:space-between;align-items:center;padding:8px 8px 8px 16px;display:flex}.sheet-h h3{font-size:1.1rem;font-weight:800}.sheet-h [data-close]{display:none}.sheet-body{flex-direction:column;gap:10px;padding:12px;display:flex}.sheet .grp{margin:6px 2px -2px}.pick{border:1px solid var(--line);background:var(--surface);border-radius:12px;flex-direction:column;gap:10px;padding:10px;display:flex}.pick-top{align-items:center;gap:12px;display:flex}.pick-img{border-radius:10px;flex:none;width:104px;height:76px}.pick-days{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.dchip{border:2px solid var(--m);background:var(--surface);width:42px;height:42px;color:var(--fg);font:inherit;cursor:pointer;border-radius:50%;padding:0;font-size:.85rem;font-weight:700}.dchip.on{background:var(--m);color:#fff}.dchip.focus-day{box-shadow:0 0 0 3px var(--ms),0 0 0 5px var(--m)}.dall{color:var(--m);font:inherit;cursor:pointer;background:0 0;border:0;margin-left:auto;padding:8px 4px;font-weight:700;text-decoration:underline}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .dchip.on,:root:not([data-theme=light]) .sheet-h{color:#10160f}}:root[data-theme=dark] .dchip.on,:root[data-theme=dark] .sheet-h{color:#10160f}.js-sheets .sheet{display:none}.js-sheets .sheet.open{z-index:30;max-height:88vh;padding-bottom:env(safe-area-inset-bottom,0px);border-radius:20px 20px 0 0;flex-direction:column;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -10px 40px #0a140f4d}.js-sheets .sheet.open .sheet-body{overflow-y:auto}.js-sheets .sheet-h [data-close]{display:grid}.sheet-backdrop{z-index:29;background:#0a140f73;position:fixed;inset:0}.sheet-open{overflow:hidden}@media (width>=900px){.js-sheets .sheet.open{border-radius:16px;width:min(760px,100% - 64px);max-height:86vh;inset:6vh auto auto 50%;transform:translate(-50%)}.board{border-spacing:6px}.board thead th:first-child{width:64px}.cell{aspect-ratio:1/.62}}@media (prefers-reduced-motion:no-preference){.js-sheets .sheet.open{animation:.18s ease-out sheetUp}}@keyframes sheetUp{0%{opacity:.6;transform:translateY(24px)}}@media (width>=900px) and (prefers-reduced-motion:no-preference){.js-sheets .sheet.open{animation:none}}@media (width>=900px){.board-wrap{max-width:980px}.cell{aspect-ratio:auto;height:96px}}.banner.suggested{margin:12px 14px 0}.cell .cell-txt{background:color-mix(in srgb,var(--surface) 88%,transparent);justify-content:flex-end;gap:1px;padding:4px 4px 5px;position:absolute;inset:auto 0 0}.cell.empty .cell-txt{background:0 0;justify-content:center;inset:0}.cell.empty .cell-txt span{display:none}.cell-txt .miss{color:var(--tomate)}.cell.partial{border-style:dashed}.det.missing{color:var(--tomate);font-weight:700}.js-sheets .sheet.open .sheet-body{overscroll-behavior:contain;flex:auto;min-height:0}.sheet-f{display:none}.js-sheets .sheet.open .sheet-f{padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line);background:var(--surface);display:block}.js-sheets .sheet-f [data-close]{display:flex}.board-hint{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;margin:-4px 2px 0;display:flex}.board-hint .det{margin:0}.pick.compact{flex-flow:wrap;align-items:center;gap:8px 10px;padding:8px 10px}.pick.compact .pick-top{flex:140px}.pick.compact .dall{margin-left:0}.pick.compact .dchip{width:36px;height:36px;font-size:.8rem}.grp-col{border-radius:12px;flex-direction:column;gap:8px;scroll-margin-top:8px;display:flex}.grp-col.nudge{box-shadow:0 0 0 3px var(--m)}.sheet-body .fixed{grid-column:1/-1;margin:0}@media (width>=900px){.sheet-body.two{grid-template-columns:1fr 1fr;align-items:start;gap:12px;display:grid}.js-sheets .sheet.open:has(.sheet-body.two){width:min(1100px,100% - 64px)}}.sheet-open .toast{z-index:40;bottom:calc(90px + env(safe-area-inset-bottom,0px))}.math-d summary{color:var(--muted);cursor:pointer;margin-top:2px;font-size:.78rem;list-style:none}.math-d summary::-webkit-details-marker{display:none}.math-d summary:before{content:"+ "}.math-d[open] summary:before{content:"− "}.app.bare{max-width:640px}.app.bare .body{flex-direction:column;display:flex}.app.bare .panel{grid-column:auto}
