:root{--p:#14A3A8;--p-d:#0E7C80;--p-l:#E3F5F5;--a:#F7931E;--a-d:#B65F00;--a-l:#FFEBD3;--t:#7B3FA0;--t-d:#5E2C7E;--t-l:#EFE4F6;--bg:#FFF8EE;--ink:#22313F;--mut:#5F6B78;--line:#E6E9EC;--red:#C62828;--red-l:#FDECEC;--ok:#2E7D32;--ok-l:#E8F5E9;--ts:1}
@font-face{font-family:MontserratW;src:url(fonts/montserrat.woff2) format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:PacificoW;src:url(fonts/pacifico.woff2) format("woff2");font-display:swap}
*{box-sizing:border-box}
html{font-size:calc(16px * var(--ts));-webkit-text-size-adjust:100%}
body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:var(--bg);line-height:1.42;min-height:100vh;-webkit-tap-highlight-color:transparent}
body.hc{--ink:#000;--mut:#222;--line:#555;--bg:#fff;--p-d:#005357;--a-d:#7A3E00}
body.hc .card{box-shadow:none;border:2px solid #000}
a{color:var(--p-d)}
.M,h1,h2,h3,.btn{font-family:MontserratW,system-ui,sans-serif}
h1{font-weight:800;font-size:1.6rem;line-height:1.15;margin:.2rem 0 .5rem}
h2{font-weight:800;font-size:1.15rem;line-height:1.2;margin:0 0 .4rem}
h3{font-weight:700;font-size:1rem;margin:0 0 .3rem}
.logo{font-family:PacificoW,cursive;color:var(--a);font-size:1.55rem;line-height:1;text-decoration:none}
.logo i{color:var(--p);font-style:normal}
.script{font-family:PacificoW,cursive;color:var(--a);font-weight:400}
.wrap{max-width:560px;margin:0 auto;padding:0 14px 120px}
.top{position:sticky;top:0;z-index:20;background:var(--bg);display:flex;align-items:center;gap:10px;padding:calc(10px + env(safe-area-inset-top)) 14px 10px;max-width:560px;margin:0 auto}
.top .sp{flex:1}
.pill{display:inline-block;font:800 .68rem MontserratW,sans-serif;letter-spacing:.04em;padding:3px 8px;border-radius:99px;background:var(--t-l);color:var(--t-d);vertical-align:middle}
.pill.orange{background:var(--a-l);color:var(--a-d)}.pill.teal{background:var(--p-l);color:var(--p-d)}.pill.red{background:var(--red-l);color:var(--red)}.pill.green{background:var(--ok-l);color:var(--ok)}
.ex{font:800 .62rem MontserratW,sans-serif;color:var(--a-d);background:var(--a-l);border-radius:5px;padding:1px 5px;margin-left:4px;letter-spacing:.03em;vertical-align:middle}
.card{background:#fff;border-radius:18px;padding:14px 16px;margin:0 0 12px;box-shadow:0 2px 6px rgba(34,49,63,.08)}
.card.teal{background:var(--p);color:#fff}.card.teal a{color:#fff}
.card.purple{background:var(--t);color:#fff}
.card.orange{background:var(--a-l)}
.card.tl{background:var(--p-l);box-shadow:none}.card.pl{background:var(--t-l);box-shadow:none}
.card.flat{box-shadow:none;border:1.5px solid var(--line)}
.card.warn{background:var(--red-l);border:2px solid var(--red);box-shadow:none}
.card.good{background:var(--ok-l);border:1.5px solid #9CCC9F;box-shadow:none}
.muted{color:var(--mut)}.small{font-size:.85rem}.tiny{font-size:.75rem}
.btn{display:block;width:100%;text-align:center;font-weight:800;font-size:1.02rem;color:#fff;background:var(--a);border-radius:16px;padding:14px 12px;margin:0 0 10px;border:0;cursor:pointer;text-decoration:none;min-height:48px}
.btn:active{transform:scale(.99)}
.btn.teal{background:var(--p)}.btn.purple{background:var(--t)}.btn.ghost{background:#fff;color:var(--p-d);border:2px solid var(--p)}.btn.red{background:var(--red)}
.btn.sm{font-size:.88rem;padding:9px 10px;border-radius:12px;min-height:40px;width:auto;display:inline-block;margin:0}
.btn[disabled]{opacity:.5}
.row{display:flex;gap:8px;align-items:center}.row.wrap2{flex-wrap:wrap}.grow{flex:1;min-width:0}
label.f{display:block;font-weight:700;font-size:.9rem;margin:10px 0 4px}
input[type=text],input[type=email],input[type=password],input[type=number],textarea,select{width:100%;font:inherit;font-size:1rem;padding:12px 13px;border-radius:12px;border:1.5px solid #CBD2D9;background:#fff;color:var(--ink)}
input:focus,textarea:focus,select:focus,button:focus-visible,a:focus-visible{outline:3px solid var(--a);outline-offset:1px}
.code-in{font:800 1.3rem MontserratW,monospace;letter-spacing:.08em;text-transform:uppercase;text-align:center}
.tick{display:flex;gap:10px;align-items:flex-start;margin:10px 0;font-size:.92rem;cursor:pointer}
label.tick{width:auto;max-width:100%;height:auto;line-height:1.4}label.tick>span{flex:1 1 auto;min-width:0}
.tick input{width:24px;height:24px;flex:none;margin:1px 0 0;accent-color:var(--p-d)}
.chips{display:flex;flex-wrap:wrap;gap:7px;margin:6px 0}
.chip{border:1.5px solid #CBD2D9;background:#fff;border-radius:99px;padding:8px 12px;font:600 .88rem system-ui,sans-serif;color:var(--ink);cursor:pointer;min-height:38px}
.chip.on{background:var(--p);border-color:var(--p);color:#fff}
.chip.s-intolerance{background:#FFF3C4;border-color:#E0B300;color:#5B4300}
.chip.s-allergy{background:var(--a);border-color:var(--a-d);color:#fff}
.chip.s-severe{background:var(--red);border-color:var(--red);color:#fff}
.bubble{display:flex;gap:10px;align-items:flex-end;margin:6px 0 14px}
.bubble .face{width:42px;height:42px;flex:none;border-radius:50%;background:var(--a-l);display:flex;align-items:center;justify-content:center;font-size:24px}
.bubble .say{background:#fff;border-radius:18px 18px 18px 4px;padding:11px 14px;box-shadow:0 2px 6px rgba(34,49,63,.08);font-size:1rem}
.steps{display:flex;gap:4px;margin:4px 0 12px}.steps i{flex:1;height:5px;border-radius:3px;background:#D9DEE3}.steps i.on{background:var(--p)}
.day{display:flex;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}
.day:last-child{border-bottom:0}
.day .em{font-size:1.9rem;width:46px;height:46px;flex:none;border-radius:14px;background:var(--a-l);display:flex;align-items:center;justify-content:center}
.day .dn{font:800 .72rem MontserratW,sans-serif;color:var(--p-d);text-transform:uppercase;letter-spacing:.05em}
.day .rn{font-weight:700;font-size:1rem;line-height:1.2}
.day a.rn{color:var(--ink);text-decoration:none}
.aisle{font:800 .78rem MontserratW,sans-serif;text-transform:uppercase;letter-spacing:.06em;color:var(--t-d);margin:14px 0 4px}
.item{display:flex;gap:10px;align-items:flex-start;padding:9px 0;border-bottom:1px solid var(--line)}
.item input{width:24px;height:24px;flex:none;accent-color:var(--p-d);margin-top:2px}
.item.have .nm{text-decoration:line-through;color:var(--mut)}
.links a{font:700 .78rem system-ui;margin-right:8px;white-space:nowrap}
.nav{position:fixed;left:0;right:0;bottom:0;z-index:30;background:#fff;border-top:1px solid var(--line);display:flex;justify-content:space-around;padding:6px 0 calc(6px + env(safe-area-inset-bottom))}
.nav a{flex:1;text-align:center;text-decoration:none;color:var(--mut);font:700 .7rem MontserratW,sans-serif;padding:4px 0}
.nav a span{display:block;font-size:1.35rem;line-height:1.2}
.nav a.on{color:var(--p-d)}
.fab{position:fixed;right:14px;bottom:calc(76px + env(safe-area-inset-bottom));z-index:52;width:62px;height:62px;border-radius:50%;border:3px solid #fff;background:var(--t);color:#fff;font-size:28px;box-shadow:0 6px 16px rgba(34,49,63,.25);cursor:pointer;display:flex;align-items:center;justify-content:center}
.fab .lbl{position:absolute;top:-8px;right:-6px;background:var(--a);color:#fff;font:800 .6rem MontserratW;padding:2px 6px;border-radius:99px}
.fab.nonav{bottom:calc(18px + env(safe-area-inset-bottom))}
.nudge{position:fixed;right:14px;left:14px;max-width:420px;margin-left:auto;bottom:calc(146px + env(safe-area-inset-bottom));z-index:55;background:#fff;border-radius:18px;padding:12px 14px;box-shadow:0 8px 24px rgba(34,49,63,.25);border:2px solid var(--t-l)}
.sheet-bg{position:fixed;inset:0;background:rgba(34,49,63,.45);z-index:60;display:flex;align-items:flex-end;justify-content:center}
.sheet{background:var(--bg);width:100%;max-width:560px;max-height:88vh;border-radius:22px 22px 0 0;display:flex;flex-direction:column;padding-bottom:env(safe-area-inset-bottom)}
.sheet .hd{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--line)}
.sheet .bd{overflow:auto;padding:12px 16px;flex:1}
.sheet .ft{padding:10px 16px 14px;border-top:1px solid var(--line);background:#fff}
.x{background:none;border:0;font-size:1.6rem;line-height:1;cursor:pointer;color:var(--mut);padding:4px 8px;min-width:44px;min-height:44px}
.msg{max-width:85%;padding:9px 13px;border-radius:16px;margin:6px 0;font-size:.95rem;white-space:pre-wrap;word-wrap:break-word}
.msg.u{margin-left:auto;background:var(--p);color:#fff;border-bottom-right-radius:4px}
.msg.a{background:#fff;border-bottom-left-radius:4px;box-shadow:0 1px 4px rgba(34,49,63,.08)}
.msg .meta{display:block;font-size:.68rem;opacity:.75;margin-top:3px}
.cook{position:fixed;inset:0;z-index:50;background:var(--bg);display:flex;flex-direction:column;padding:calc(10px + env(safe-area-inset-top)) 16px calc(14px + env(safe-area-inset-bottom))}
.cook .stepno{font:800 .85rem MontserratW;color:var(--p-d);text-transform:uppercase;letter-spacing:.05em}
.cook .txt{font-size:calc(1.55rem * var(--cs,1));font-weight:600;line-height:1.35;flex:1;overflow:auto;padding:10px 0}
.timer{font:800 2.4rem MontserratW,monospace;text-align:center;color:var(--t-d);margin:6px 0}
.timer.done{color:var(--red);animation:blink 1s infinite}@keyframes blink{50%{opacity:.35}}
.cook .ctl{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.cook .ctl .btn{margin:0}
.hiw{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.hiw div{background:#fff;border-radius:16px;padding:8px;text-align:center;font-size:.82rem;font-weight:600;box-shadow:0 2px 6px rgba(34,49,63,.06)}
.hiw img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:12px;display:block;margin-bottom:6px}
.hiw b{display:block;font:800 .72rem MontserratW;color:var(--a-d)}
.foot{text-align:center;font-size:.8rem;color:var(--mut);margin:24px 0 10px}
.foot a{margin:0 6px}
.err{color:var(--red);font-weight:700;font-size:.9rem;margin:6px 0}
.toast{position:fixed;left:50%;transform:translateX(-50%);top:calc(14px + env(safe-area-inset-top));z-index:90;background:var(--ink);color:#fff;padding:10px 16px;border-radius:12px;font-weight:600;font-size:.9rem;max-width:90vw}
.person{border:1.5px solid var(--line);border-radius:14px;padding:10px 12px;margin:0 0 10px;background:#fff}
.person summary{font-weight:800;cursor:pointer;font-family:MontserratW,sans-serif;list-style:none;display:flex;align-items:center;gap:8px;min-height:36px}
.person summary::-webkit-details-marker{display:none}
.av{width:34px;height:34px;border-radius:50%;background:var(--t-l);color:var(--t-d);font:800 .9rem MontserratW;display:inline-flex;align-items:center;justify-content:center;flex:none}
.seg{display:flex;border:1.5px solid #CBD2D9;border-radius:12px;overflow:hidden}.seg button{flex:1;border:0;background:#fff;padding:9px 4px;font:600 .85rem system-ui;cursor:pointer;color:var(--ink);min-height:40px}.seg button.on{background:var(--p);color:#fff}
.legal h2{margin-top:18px}.legal p,.legal li{font-size:.97rem}
.banner-draft{background:var(--a-l);color:var(--a-d);font:800 .8rem MontserratW;padding:8px 12px;border-radius:10px;margin:8px 0}
.act{font-size:.82rem;color:var(--t-d);background:var(--t-l);border-radius:10px;padding:6px 10px;margin:4px 0}
input[type=range]{width:100%;accent-color:var(--p-d);height:32px}
.hide{display:none!important}
@media (min-width:700px){.hiw{grid-template-columns:repeat(4,1fr)}}

.tp{margin-top:3px;line-height:1.35}.tp .tpp{color:#0E7C80}.tp a{color:inherit;text-decoration:underline}

.card.bad{background:#FDECEC;border-color:#F5B5B5;color:#7A1C1C}
.heart{background:none;border:0;font-size:1.45rem;line-height:1;color:#C2185B;cursor:pointer;padding:2px 6px;vertical-align:middle;min-width:36px;min-height:36px}
.heart.on{animation:pop .3s ease}
@keyframes pop{50%{transform:scale(1.35)}}
.xs{background:none;border:1px solid var(--line);border-radius:8px;font:700 .72rem MontserratW,sans-serif;color:var(--mut);padding:2px 7px;margin-left:4px;cursor:pointer}
.links .xs{margin-left:auto}
.addl{white-space:nowrap}
.toast .undo{background:#fff;color:var(--ink);border:0;border-radius:8px;font:800 .8rem MontserratW,sans-serif;padding:4px 10px;margin-left:8px;cursor:pointer}
.nps .chip{min-width:38px;justify-content:center;padding:8px 0}
.thanks-bg{position:fixed;inset:0;z-index:95;background:rgba(34,49,63,.55);display:flex;align-items:center;justify-content:center;padding:20px;overflow:hidden}
.thanks-card{position:relative;z-index:2;background:var(--cream,#FFF8EE);border-radius:22px;padding:26px 22px 20px;max-width:380px;text-align:center;box-shadow:0 18px 50px rgba(0,0,0,.25);border:3px solid #F7931E}
.thanks-card h1{color:#7B3FA0;margin:8px 0 6px}
.thanks-card p{font-size:1.02rem;line-height:1.45}
.thanks-card .badge{display:inline-block;background:linear-gradient(90deg,#F7931E,#7B3FA0);color:#fff;font:800 .75rem MontserratW,sans-serif;letter-spacing:.08em;border-radius:20px;padding:5px 12px;margin-bottom:10px}
.confetti{position:absolute;inset:0;pointer-events:none;z-index:1}
.confetti i{position:absolute;top:-20px;width:9px;height:14px;border-radius:2px;opacity:.95;animation-name:fall;animation-timing-function:linear;animation-iteration-count:2}
@keyframes fall{to{top:105%;transform:rotate(720deg) translateX(40px)}}
@media (prefers-reduced-motion:reduce){.confetti{display:none}.heart.on{animation:none}}
.nav a{font-size:.66rem}

/* ===== v1.6: mock-up look ===== */
body{font-family:MontserratW,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
.how{min-height:100vh;background:var(--bg)}
.howh{font-family:PacificoW,cursive;font-weight:400;color:var(--p-d);font-size:2rem;margin:.2rem 0 .4rem}
.hiwlist{display:flex;flex-direction:column;gap:12px;margin:6px 0 14px}
.hiwrow{display:flex;align-items:center;gap:14px;background:#fff;border-radius:22px;padding:10px 14px 10px 10px;box-shadow:0 2px 6px rgba(34,49,63,.08)}
.hiwimg{position:relative;flex:none}
.hiwimg img{width:104px;height:104px;border-radius:50%;object-fit:cover;display:block;background:var(--p-l);border:4px solid var(--p-l)}
.hiwimg b{position:absolute;left:-2px;top:-2px;width:30px;height:30px;border-radius:50%;background:var(--a);color:#fff;font:800 .95rem MontserratW,sans-serif;display:flex;align-items:center;justify-content:center;border:3px solid #fff}
.hiwrow p{margin:0;font:700 1.05rem/1.25 MontserratW,sans-serif;color:var(--ink)}
.dots{display:flex;gap:8px;justify-content:center;margin:4px 0 14px}.dots i{width:10px;height:10px;border-radius:50%;background:#D9DEE3}.dots i.on{background:var(--a);width:26px;border-radius:6px}
.hero-l{text-align:center;padding:6px 4px 10px}
.hl-face{width:86px;height:86px;border-radius:50%;background:var(--a-l);display:flex;align-items:center;justify-content:center;font-size:46px;margin:0 auto 6px}
.hl-h{font-size:1.7rem;margin:.1rem 0}
.hl-h .script{font-size:2.1rem}
.hl-big{font:800 1.45rem MontserratW,sans-serif;color:var(--p-d);margin:.2rem 0}
.hl-sub{margin:.3rem auto 0;max-width:30em;color:var(--mut)}
.nav a span{font-size:1.25rem}
.fp,.th{width:58px;height:58px;flex:none;border-radius:14px;object-fit:cover;display:block;background:var(--a-l)}
.fpe{display:flex!important;align-items:center;justify-content:center;font-size:1.9rem}
.rhero{position:relative;margin:0 -14px 10px}
.rimg{width:100%;height:auto;aspect-ratio:4/3;max-height:340px;object-fit:cover;display:block;border-radius:0 0 22px 22px;background:var(--a-l)}
.rimg.fpe{height:160px;font-size:4rem}
.rh{position:absolute;right:16px;bottom:12px;background:#fff;border-radius:50%;padding:4px 6px;box-shadow:0 2px 6px rgba(0,0,0,.15)}
.tonight{display:block;padding:0;overflow:hidden;text-decoration:none;color:var(--ink)}
.tonight .hero{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.tonight .tn{padding:10px 14px 12px}.tonight h2{margin:4px 0 2px}
.tiles{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:6px 0 14px}
.tile{display:flex;flex-direction:column;gap:2px;border-radius:18px;padding:12px;text-decoration:none;color:var(--ink);min-height:98px}
.tile span{font-size:1.6rem}.tile b{font:800 .92rem/1.2 MontserratW,sans-serif}.tile i{font-style:normal;font-size:.76rem;color:var(--mut)}
.t-teal{background:var(--p-l)}.t-orange{background:var(--a-l)}.t-purple{background:var(--t-l)}
.notif{background:#fff;border-left:5px solid var(--a)}.notif .ne{font-size:1.6rem}.notif .nh{font:800 .66rem MontserratW,sans-serif;letter-spacing:.05em;color:var(--mut);margin-bottom:2px}
.wx{background:var(--p-l);box-shadow:none}
.modes{margin-bottom:8px}.modes .snap{display:flex;align-items:center;justify-content:center;cursor:pointer}
.seg{display:flex;gap:4px;background:#EEF1F3;border-radius:14px;padding:4px;flex-wrap:wrap}
.seg>button,.seg>a,.seg>label{flex:1;border:0;background:transparent;border-radius:10px;padding:9px 6px;font:700 .85rem MontserratW,sans-serif;color:var(--ink);text-align:center;text-decoration:none;min-height:40px;cursor:pointer}
.seg>.on{background:#fff;color:var(--p-d);box-shadow:0 1px 3px rgba(0,0,0,.12)}
.seg>button[disabled]{opacity:.55}
.areas{margin:8px 0 10px}
.found{margin:4px 0 2px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}.found b{margin-right:4px}
.kitem{display:flex;gap:10px;align-items:flex-start;padding:9px 0;border-bottom:1px solid var(--line)}.kitem:last-child{border-bottom:0}
.kitem .ke{font-size:1.5rem;width:34px;text-align:center}.kitem .kq{width:96px;padding:8px;font-size:.85rem}
.chips.sm{gap:4px;margin:4px 0 0}.chip.xsm{min-height:28px;padding:3px 9px;font-size:.74rem}
.phs{display:flex;gap:8px;flex-wrap:wrap}.ph{position:relative;width:96px}.ph img{width:96px;height:96px;object-fit:cover;border-radius:12px;display:block}.ph .x{position:absolute;right:2px;top:2px;background:#fff;border-radius:50%}
.hv{display:flex;gap:12px;align-items:flex-start}.hvp{width:84px;height:84px;flex:none;border-radius:16px;object-fit:cover}.hvb{flex:1;min-width:0}.hv h3{margin:0 0 2px}.hv .ok{color:var(--ok);font-weight:800}
.faces{display:flex;gap:6px;margin-top:6px}.face{border:2px solid var(--line);background:#fff;border-radius:50%;width:40px;height:40px;font-size:1.3rem;cursor:pointer;line-height:1}
.face.on{border-color:var(--a);background:var(--a-l);transform:scale(1.08)}.faces.big .face{width:54px;height:54px;font-size:1.8rem}
.weekhd{background:var(--p);color:#fff;border-radius:20px;padding:14px 16px;margin:0 0 12px}.weekhd h1{color:#fff}.weekhd .ex{background:#fff}
.wkm{text-align:right;font:800 1.3rem MontserratW,sans-serif}
.bbar{height:8px;background:rgba(255,255,255,.35);border-radius:5px;margin-top:8px;overflow:hidden}.wrap>.bbar,.card .bbar{background:#E6E9EC}
.bbar i{display:block;height:100%;background:var(--a);border-radius:5px}.bbar i.over{background:var(--red)}
.dn2{width:40px;flex:none;font:800 .78rem MontserratW,sans-serif;color:var(--p-d);text-transform:uppercase;text-align:center;line-height:1.2}
.wxi{display:block;font-size:.7rem;font-weight:600;color:var(--mut);text-transform:none}
.grade{width:28px;height:28px;flex:none;border-radius:8px;font:800 .9rem MontserratW,sans-serif;display:inline-flex;align-items:center;justify-content:center;color:#fff}
.gA{background:#2E9D4F}.gB{background:#F2B01E;color:#3b2c00}.gC{background:#F7931E}
.hs{display:flex;gap:12px;align-items:center}.hs .grade{width:42px;height:42px;font-size:1.3rem;border-radius:12px}
.item.have{opacity:.6}
.tline{display:flex;gap:10px;padding:6px 0;border-bottom:1px dashed rgba(0,0,0,.12);font-size:.9rem}.tline b{width:96px;flex:none}
.stamps{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin:10px 0 4px}
.stamp{border:2px dashed #C9CFD5;border-radius:12px;padding:6px 2px;text-align:center;font-size:.62rem;font-weight:700;color:var(--mut)}.stamp span{display:block;font-size:1.4rem;filter:grayscale(1);opacity:.45}
.stamp.got{border:2px solid var(--t);color:var(--t-d);background:var(--t-l)}.stamp.got span{filter:none;opacity:1}
.stickers{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.stk{text-align:center;font-size:.75rem;display:flex;flex-direction:column;align-items:center;gap:2px}
.stk img{width:72px;height:72px;border-radius:50%;filter:grayscale(1);opacity:.4}.stk.got img{filter:none;opacity:1}
.passport{background:linear-gradient(180deg,#fff,var(--t-l))}.ppimg{border-radius:14px}
.nat{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid var(--line)}
.sw{appearance:none;-webkit-appearance:none;width:48px;height:28px;border-radius:99px;background:#CBD2D9;position:relative;flex:none;cursor:pointer;transition:background .15s}
.sw::after{content:"";position:absolute;left:3px;top:3px;width:22px;height:22px;border-radius:50%;background:#fff;transition:left .15s}
.sw:checked{background:var(--p)}.sw:checked::after{left:23px}
.wd{padding:4px 0}
.stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:6px 0 12px}.stats div{background:#fff;border-radius:16px;padding:12px;text-align:center;box-shadow:0 2px 6px rgba(34,49,63,.08)}
.stats b{display:block;font:800 1.5rem MontserratW,sans-serif;color:var(--p-d)}.stats span{font-size:.78rem;color:var(--mut)}
.slider{width:100%;accent-color:var(--a)}
.bad-t{color:var(--red);font-weight:700}
#printcard{display:none}
/* recipe card styles: used by print and by the PDF copy (PRINTKIT), so they live outside @media print */
.pc{font-family:MontserratW,sans-serif;color:#22313F;padding:0}.pch{display:flex;justify-content:space-between;align-items:center;border-bottom:3px solid #14A3A8;padding-bottom:6px;margin-bottom:8px}
.pc .logo{font-size:22pt}.pcimg{width:100%;max-height:7cm;object-fit:cover;border-radius:10px}.pc h1{font-size:20pt;margin:6px 0 2px}
.pcc{display:grid;grid-template-columns:1fr 1.6fr;gap:16px;font-size:10.5pt}.pcc h2{font-size:12pt;color:#0E7C80}.pca{font-size:9.5pt;background:#E3F5F5;padding:6px 8px;border-radius:6px}.pcf{font-size:8pt;color:#666;margin-top:10px}
@media print{
 body.print-card>*:not(#printcard){display:none!important}
 body.print-card #printcard{display:block}
 body.print-list .nav,body.print-list .top,body.print-list .fab,body.print-list .foot,body.print-list .btn,body.print-list form,body.print-list .links,body.print-list #pkbar{display:none!important}
 #pkbar,.pk-toast{display:none!important}
 body.print-passport .nav,body.print-passport .top,body.print-passport .fab,body.print-passport .foot{display:none!important}
 body.print-passport .card:not(.passport),body.print-passport h1,body.print-passport .bubble,body.print-passport .row>.btn{display:none!important}
}

.week .day{gap:9px}.week .th{width:52px;height:52px}.week .rn{font-size:.95rem}
.dcol{display:flex;flex-direction:column;align-items:center;gap:6px;flex:none}
.swp{width:34px;height:30px;border-radius:9px;border:2px solid var(--p);color:var(--p-d);display:flex;align-items:center;justify-content:center;text-decoration:none;font-weight:800;font-size:1rem}
.pls{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:2px;max-width:calc(100vw - 190px)}
.pls .chip{flex:none}

.warnline{background:var(--a-l);border-radius:10px;padding:8px 10px}
.glabel{width:100%;max-width:320px;margin:0 auto 14px;border:3px solid var(--p);border-radius:22px;padding:14px 16px;background:#fff;text-align:center;font-family:MontserratW,sans-serif}
.glh{font:400 1rem PacificoW,cursive;color:var(--a)}.glt{font:800 1.35rem/1.2 MontserratW,sans-serif;color:var(--p-d);margin:2px 0}
.glf{font-size:.78rem;color:var(--mut);margin-bottom:8px}.gli{font-size:.76rem;text-align:left}.gla{font-size:.76rem;font-weight:800;margin-top:6px;color:var(--ink)}
.gln{font-size:.74rem;font-style:italic;margin-top:4px}.glb{margin-top:8px;font:400 .95rem PacificoW,cursive;color:var(--p)}.glb i{font-style:normal;color:var(--a)}
textarea{width:100%;font:inherit;border:2px solid var(--line);border-radius:12px;padding:10px}
@media print{.glsheet{display:grid;grid-template-columns:1fr 1fr;gap:8mm}.glsheet .glabel{max-width:none;margin:0;break-inside:avoid;border-color:#14A3A8}}
.pk-host .glsheet{display:grid;grid-template-columns:1fr 1fr;gap:30px}.pk-host .glsheet .glabel{max-width:none;margin:0;border-color:#14A3A8}

/* v1.6b World Kitchen: featured kitchens + illustrated stamps */
.feat{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.ftile{display:flex;flex-direction:column;align-items:center;gap:3px;text-align:center;text-decoration:none;color:inherit;background:#fff;border:2px solid var(--t-l);border-radius:16px;padding:8px 4px;font-size:.8rem;min-height:44px}
.ftile img{width:72px;height:72px;border-radius:50%}
.stamp img.stampimg{display:block;width:44px;height:44px;margin:0 auto 2px;border-radius:50%;filter:grayscale(1);opacity:.45}.stamp.got img.stampimg{filter:none;opacity:1}
.ctry img{border-radius:50%;flex:none}.ctry{margin-bottom:6px;gap:12px}
.rrow{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--line);text-decoration:none;color:inherit;min-height:44px}.rrow:last-of-type{border-bottom:0}
.ctstk{border-radius:50%;filter:grayscale(1);opacity:.45}.ctstk.got{filter:none;opacity:1}
/* v1.6b check-in chat */
.ckchat{display:flex;flex-direction:column}
.ckchat .msg.a{display:flex;gap:8px;align-items:flex-end;background:none;box-shadow:none;padding:0;max-width:92%}
.ckchat .msg.a .say{background:#fff;border-radius:16px 16px 16px 4px;padding:9px 13px;box-shadow:0 1px 4px rgba(34,49,63,.08)}
.ckchat .msg.a .fc{width:30px;height:30px;flex:none;border-radius:50%;background:var(--a-l);display:flex;align-items:center;justify-content:center;font-size:17px}
.ckchat .typing .say{letter-spacing:3px;color:var(--mut)}
.qr{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end;margin:6px 0 10px}
.qr .chip{min-width:44px;min-height:44px}
.qr.nps .chip{min-width:44px;padding:0 6px}
.ckin{display:flex;gap:8px;margin-top:8px;position:sticky;bottom:calc(76px + env(safe-area-inset-bottom));background:var(--bg);padding:6px 0}
.ckin textarea{flex:1;min-height:44px;max-height:120px;border-radius:14px;border:2px solid var(--line);padding:9px 12px;font:inherit;resize:none}
.ckend{text-align:center;margin:14px 0}.ckend .badge{display:inline-block;background:linear-gradient(90deg,#F7931E,#7B3FA0);color:#fff;font:800 .8rem MontserratW,sans-serif;letter-spacing:.08em;border-radius:20px;padding:6px 14px;margin-bottom:4px}
.minifetti{position:fixed;inset:0;pointer-events:none;z-index:70;overflow:hidden}

#ckq{padding-bottom:8px}

.chip.addc{border-style:dashed;border-color:var(--p);color:var(--p-d);background:#fff}
.cchip{display:inline-flex;align-items:stretch}
.cchip .chip{border-top-right-radius:0;border-bottom-right-radius:0;border-right:0}
.cchip .cx{border:1.5px solid #CBD2D9;border-left:0;background:#fff;border-radius:0 99px 99px 0;padding:0 11px 0 7px;font:700 1rem system-ui,sans-serif;color:var(--mut);cursor:pointer;min-height:38px}
.cchip.on .cx{background:var(--p);border-color:var(--p);color:#fff}
.chip small{font-weight:400;opacity:.85}
.fform{border:1.5px solid var(--p-l);background:var(--p-l);border-radius:14px;padding:10px 12px;margin:6px 0 0}
.fform input[type=text],.fform input[type=date]{display:block;width:100%;margin:4px 0 8px}
.fform #femo input{display:inline-block;width:96px;margin:0}

.badd input[type=text]{margin:0}
.seg2{display:flex;gap:7px;margin:0 0 8px}
.dmp{display:flex;gap:8px;flex:1}
.dmp select{flex:1;min-height:44px;font:inherit;font-size:1rem;padding:10px 12px;border-radius:12px;border:1.5px solid #CBD2D9;background:#fff;color:var(--ink);-webkit-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--mut) 50%),linear-gradient(135deg,var(--mut) 50%,transparent 50%);background-position:calc(100% - 16px) 50%,calc(100% - 11px) 50%;background-size:5px 5px;background-repeat:no-repeat;padding-right:26px}
.fform .dmp{margin:4px 0 8px}

.kitem.used{border-left:4px solid var(--p);background:var(--p-l);margin:0 -16px;padding-left:12px;padding-right:16px}
.kitem .kn{display:block;line-height:1.3}
.kmeta{display:flex;align-items:center;gap:8px;margin:5px 0 0;flex-wrap:wrap}
.kitem .kmeta .kq{width:118px;padding:6px 9px;font-size:.85rem;margin:0}
.kuse{display:flex;flex-wrap:wrap;gap:5px;margin:6px 0 0}
.kbadge{display:inline-block;background:var(--p-d);color:#fff;border-radius:99px;padding:3px 10px;font:600 .74rem system-ui,sans-serif;text-decoration:none}
.kbadge.more{background:#fff;color:var(--p-d);border:1px solid var(--p)}
.kitem .pls{max-width:none;margin-top:6px;flex-wrap:wrap;overflow:visible}

input[type=date],input[type=time]{font:inherit;font-size:1rem;padding:10px 12px;border-radius:12px;border:1.5px solid #CBD2D9;background:#fff;color:var(--ink);min-height:44px;-webkit-appearance:none;appearance:none}
.when input[type=text]{margin:0 0 8px}
.dchips{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:2px}.dchips .chip{flex:none}
.gbadge{display:inline-block;background:var(--a-l);color:var(--a-d);border-radius:99px;padding:2px 8px;font:600 .72rem system-ui,sans-serif;margin-left:2px}

.bubble .face{position:relative}.ckchat .fc{position:relative;display:inline-block}
.aitag{position:absolute;right:-6px;bottom:-4px;background:var(--t);color:#fff;font:800 .55rem/1 system-ui,sans-serif;letter-spacing:.04em;padding:2px 4px;border-radius:6px;border:1.5px solid #fff}
.aitag.inl{position:static;display:inline-block;vertical-align:middle;border:0;margin-left:2px}

.newdot{position:absolute;top:6px;right:6px;background:var(--a);color:#fff;font:800 .55rem/1 system-ui,sans-serif;font-style:normal;letter-spacing:.04em;padding:3px 5px;border-radius:6px}
.tile{position:relative}
.nav a span{position:relative}.ndot{position:absolute;top:-2px;right:-6px;width:9px;height:9px;border-radius:50%;background:var(--a);border:2px solid #fff}
.wnc{background:var(--t-l);text-decoration:none;color:inherit;gap:10px;align-items:center}
.wn{display:flex;gap:10px;align-items:flex-start;padding:10px 0;border-bottom:1px solid var(--line);text-decoration:none;color:inherit}.wn:last-child{border-bottom:0}.wn .em{font-size:1.4rem;width:1.8rem;text-align:center}.wn.fresh b{color:var(--t-d)}
.updbar{position:fixed;left:10px;right:10px;top:calc(env(safe-area-inset-top,0px) + 8px);z-index:99;background:var(--t);color:#fff;border:0;border-radius:14px;padding:13px 14px;font:700 .95rem system-ui,sans-serif;box-shadow:0 6px 18px rgba(0,0,0,.25);cursor:pointer;text-align:center}

button.tick{flex:none;width:34px;height:34px;border-radius:10px;border:2px solid var(--p);background:#fff;color:var(--p-d);font-size:1.2rem;line-height:1;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center}
button.tick:disabled{background:var(--p);color:#fff}
.todo .tstep{display:flex;gap:10px;align-items:flex-start;padding:8px 0;border-top:1px solid rgba(0,0,0,.06);font-size:.92rem;transition:opacity .3s,transform .3s}
.todo h2+.tstep{border-top:0}
.gone{opacity:0;transform:translateX(40px)}
.alldone{margin:4px 0 0;font-weight:700;color:var(--ok)}
.notif .row{align-items:flex-start}.notif{transition:opacity .3s,transform .3s}
.notif.done{opacity:.85}
.todo.aimee{background:var(--bg);border-left:5px solid var(--a)}.todo.aimee .tick{border-color:var(--a);color:var(--a-d)}.todo.aimee .tick:disabled{background:var(--a);color:#fff}
.rsvphead{text-align:center}.gift{text-align:center}.giftqr canvas{width:180px;height:180px;border-radius:10px;background:#fff;padding:6px}
.script{font-family:PacificoW,cursive}
.invprev{width:100%;max-width:340px;display:block;margin:8px auto 0;border-radius:12px;box-shadow:0 4px 14px rgba(0,0,0,.12)}
.lnk{background:none;border:0;padding:0;color:var(--p-d);font:inherit;font-weight:700;text-decoration:underline;cursor:pointer}
.tyrow{display:flex;gap:6px;align-items:center;margin:6px 0}.tyrow b{min-width:70px}.tyrow input{flex:1;min-width:0}
#rf select{width:auto;min-width:72px;flex:none}#rf .row label{padding-right:8px}
.hv.planned{opacity:.62;background:#F6F7F8}.hv.planned .faces{opacity:1}.hv.planned .pill{margin:2px 0 4px}

/* Home Screen task (8 Nov 2026) */
.hstask{border:2px dashed var(--teal,#14A3A8)}
.hstask .hsol{margin:6px 0 0;padding-left:20px}
.hstask .hsol li{margin:3px 0}
.hstask .ico{display:inline-block;min-width:1.2em;text-align:center}
.hstask .tick.on{background:var(--teal,#14A3A8);color:#fff}

.invq .seg{max-width:220px}
.invrow{background:rgba(255,255,255,.14);border-radius:12px;padding:8px 10px;margin:6px 0}

.nfrow{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 8px;padding:8px 0;border-bottom:1px solid #eee}
.nfrow:last-child{border-bottom:0}
.nfrow input[type=time]{width:auto;min-width:96px;padding:6px 8px;margin:0}
.nfrow select{width:auto;display:inline-block;padding:2px 6px;margin:0 0 0 4px}
.nfl{display:flex;align-items:center;gap:8px;font-size:1rem;cursor:pointer;flex:1;min-width:0}
.nfl input[type=checkbox]{width:22px;height:22px;margin:0;flex:none;accent-color:var(--p-d)}

.uucam{position:relative;border-radius:14px;overflow:hidden;background:#000;margin:0 0 6px;aspect-ratio:4/3}
.uucam video{width:100%;height:100%;object-fit:cover;display:block}
.uucam .uuline{position:absolute;left:10%;right:10%;top:50%;height:2px;background:#ff4d4d;box-shadow:0 0 8px #ff4d4d}
.uucam .x{position:absolute;top:6px;right:6px;background:#fff}
.seg.modes a{display:flex;align-items:center;justify-content:center;text-decoration:none;color:inherit}

.warnbox{background:#fff6e5;border:2px solid #f0a020}
.mgc{display:block;text-decoration:none;color:inherit}
.mgi{padding:4px 0;border-bottom:1px solid #f0f0f0}
.mgi:last-of-type{border-bottom:0}

.petrow{padding:6px 0;border-bottom:1px solid #f0f0f0}
.pband{padding:6px 8px;border-radius:10px;margin:2px 0}
.pband.on{background:#e6f6f4}
/* >>> PREPPER PATCH CSS */
/* 🛡️ Prepper Patch */
.pgrp h2{margin-bottom:.2rem}
.pitem{display:flex;gap:10px;align-items:flex-start;padding:9px 0;border-top:1px solid rgba(0,0,0,.06)}.pgrp h2+.pitem{border-top:0}
.pitem.na{opacity:.55}
.ptick{flex:none;width:34px;height:34px;border-radius:10px;border:2px solid var(--p);background:#fff;color:var(--p-d);font-size:1.25rem;line-height:1;cursor:pointer;padding:0}
.ptick[aria-pressed="true"]{background:var(--p);color:#fff}
.ptick:disabled{border-color:var(--line);color:var(--mut)}
.linkb{background:none;border:0;padding:4px 0 0;color:var(--t-d);text-decoration:underline;cursor:pointer;font:inherit}
.prow{display:flex;gap:8px;align-items:flex-start;padding:10px 0;border-top:1px solid rgba(0,0,0,.06)}
.prow.off{opacity:.6}
.prow .prin{flex-wrap:wrap;gap:6px 12px;margin-top:6px}.prow .prin label{display:flex;flex:0 0 auto;align-items:center;gap:6px;width:auto;margin:0;white-space:nowrap;font-weight:600}
.prow .prin input[type=number]{width:66px;min-height:38px;padding:6px 8px;margin:0}.prow .prin input[type=date]{width:152px;min-height:38px;padding:5px 6px;margin:0}
.pst{flex:none;max-width:112px;text-align:right;font:800 .72rem MontserratW,sans-serif;color:var(--a-d);padding-top:2px}
.pst.ok{color:var(--ok)}.pst.soon{color:var(--a-d)}.pst.expired{color:var(--red)}.pst.short{color:var(--t-d)}
.card.prog b{font-family:MontserratW,sans-serif}
.card.pon{border:2px solid var(--p);box-shadow:none;background:#fff}
#prot .pitem .btn{flex:none}
.bad-t{color:var(--red)}
/* <<< PREPPER PATCH CSS */

/* Shopping list: bought items tucked away (9 Nov 2026) */
.btoggle{display:block;width:100%;margin:10px 0 0;padding:9px 12px;border:1px dashed #c9d3da;border-radius:10px;background:transparent;color:#5b6b78;font:600 .9rem Montserrat,system-ui,sans-serif;text-align:left;cursor:pointer}
.bought{margin-top:6px;opacity:.75}
.lempty{margin:4px 0}
/* First-visit tips (9 Nov 2026) */
.tipbox{position:fixed;left:10px;right:10px;bottom:84px;z-index:60;background:#FFF8EE;border:2px solid #7B3FA0;border-radius:16px;padding:8px 10px;box-shadow:0 8px 24px rgba(34,49,63,.25);max-width:480px;margin:0 auto}
.tipbox .bubble{margin:0}
.tip-pulse{position:relative;z-index:2;animation:tipPulse 1.4s ease-in-out infinite;border-radius:12px}
@keyframes tipPulse{0%,100%{box-shadow:0 0 0 0 rgba(247,147,30,.75)}50%{box-shadow:0 0 0 8px rgba(247,147,30,0)}}
@media (prefers-reduced-motion:reduce){.tip-pulse{animation:none;outline:3px solid #F7931E}}

/* 🍳 Cook page (9 Nov 2026): Top 10, cooked badges, what to buy, Cook this, requests */
a.chip{text-decoration:none;display:inline-flex;align-items:center}
.ckrow{border-bottom:1px solid var(--line);padding-bottom:4px}.ckrow:last-child{border-bottom:0}.ckrow>.day{align-items:flex-start;border-bottom:0}.ckrow .th{margin-top:2px}.ckrow>.needp{margin:0 0 10px}
.rank{flex:none;width:26px;height:26px;border-radius:50%;background:var(--a);color:#fff;font:800 .82rem MontserratW,sans-serif;display:flex;align-items:center;justify-content:center;margin-top:16px}
.top10 .ckrow:first-child .rank{background:var(--t)}
.ckrow .why{color:var(--t-d);font-weight:600;margin:2px 0 1px}
.badges{display:flex;flex-wrap:wrap;gap:4px;margin:3px 0 2px}.badges .gbadge{margin-left:0}
.gbadge.ckd{background:var(--ok-l);color:var(--ok)}.gbadge.newb{background:var(--t-l);color:var(--t-d)}
.ckbtns{display:flex;flex-direction:row;gap:6px;margin-top:6px;flex-wrap:wrap}.ckbtns .btn{display:inline-flex;align-items:center;flex:none;width:auto;padding:6px 12px;min-height:38px;font-size:.85rem;margin:0}
.needp{background:#FAFBFC;border:1px solid var(--line);border-radius:12px;padding:8px 10px;margin-top:8px}
.needp .item.nb{padding:6px 0;border-bottom:1px dashed var(--line)}.needp .item.nb:last-of-type{border-bottom:0}
#needc .needp{background:none;border:0;padding:0;margin:0}
.dgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.dpick{border:1.5px solid #CBD2D9;background:#fff;border-radius:12px;padding:6px 4px;min-height:52px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;cursor:pointer;color:var(--ink);font:600 .78rem system-ui,sans-serif;text-align:center;overflow:hidden}
.dpick b{font:800 .74rem MontserratW,sans-serif;color:var(--p-d)}.dpick span{font-size:.68rem;line-height:1.15;max-width:100%;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.dpick i{color:var(--ok);font-style:normal}
.dpick.on{background:var(--p);border-color:var(--p);color:#fff}.dpick.on b,.dpick.on i{color:#fff}
.rqc{border:2px dashed var(--a)}.rqc input[type=text],.rqc textarea{width:100%}
.rqrow{display:flex;gap:8px;padding:6px 0;border-top:1px solid var(--line)}
.rqhome{border:2px solid var(--t);background:var(--t-l);align-items:center;gap:10px}
#ckq{width:100%}

/* 💬 Aimee chat, full screen (phase 1, 9 Nov 2026) */
body.chat-on{overflow:hidden}
.aichat{position:fixed;inset:0;z-index:90;background:var(--bg);display:flex;flex-direction:column;max-width:640px;margin:0 auto}
.aichat .ach{display:flex;align-items:center;gap:10px;padding:calc(10px + env(safe-area-inset-top)) 12px 10px;background:#fff;border-bottom:1px solid var(--line)}
.aichat .ach .x{font-size:2rem;padding:0 6px;color:var(--ink)}
.aichat .ach .face{width:40px;height:40px;border-radius:50%;background:var(--a-l);display:flex;align-items:center;justify-content:center;font-size:24px}
.aichat .acb{flex:1;overflow-y:auto;padding:12px 12px 6px;-webkit-overflow-scrolling:touch}
.aichat .msg.old{opacity:.75}
.aichat .msg.typing{letter-spacing:3px;color:var(--mut)}
.aichat .accard{margin-top:8px;padding:8px 10px;border-radius:10px;background:var(--p-l);font-size:.88rem;white-space:normal}
.aichat .accard div{padding:2px 0}
.aichat .acchips{margin:2px 0 10px}
.aichat .acchips.confirm .chip:first-child:not(:disabled){background:var(--p);border-color:var(--p);color:#fff}
.aichat .acchips.undo .chip{border-style:dashed}
.aichat .chip:disabled{opacity:.55}
.aichat .chip.on:disabled{opacity:1}
.aichat .acf{display:flex;gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--line)}
.aichat .acf input{flex:1;min-width:0;border:1.5px solid #CBD2D9;border-radius:99px;padding:11px 16px;font-size:1rem}
.aichat .acf .btn{margin:0;width:auto;padding:0 18px;border-radius:99px}
.btn.cop{background:var(--t);border-color:var(--t);color:#fff;margin:2px 0 12px}
.rn.outn{font-weight:700;color:var(--t-d)}
/* Home: Aimee's rolling greeting */
.bubble.roll{align-items:flex-start}
.bubble.roll .face{border:0;cursor:pointer;padding:0}
.bubble.roll .rsay{display:block;width:100%;text-align:left;border:0;cursor:pointer;font:inherit;color:inherit;min-height:66px}
.bubble.roll .rsay.in{animation:rollin .35s ease}
.rdots{display:flex;gap:6px;justify-content:center;margin-top:6px}
.rdots button{width:8px;height:8px;border-radius:50%;border:0;background:#CBD2D9;padding:0;cursor:pointer}
.rdots button.on{background:var(--p);width:18px;border-radius:4px}
@keyframes rollin{from{opacity:0;transform:translateX(10px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion: reduce){.bubble.roll .rsay.in{animation:none}}
.outpic{width:56px;height:56px;flex:none;border-radius:12px;background:var(--t-l);display:flex;align-items:center;justify-content:center;font-size:28px}
