:root{
  --paper:#F6EFE4;--paper-2:#FBF6EC;--surface:#FFFDF8;--ink:#24101C;--ink-2:#56384B;--ink-3:#6B5462;
  --line:rgba(36,16,28,.16);--line-soft:rgba(36,16,28,.08);--accent:#7A1C4F;--accent-ink:#FFF6EE;
  --plum:#551935;--plum-deep:#150912;--lotus:#A93A87;--chili:#A9301A;--gold:#8A6412;--gold-line:#C8A63F;
  --lime:#7BA428;--lime-deep:#4E7A12;--on-dark:#F7EFE6;
  --heat-1:#4E8C2A;--heat-2:#9A8A12;--heat-3:#C4741A;--heat-4:#B84A17;--heat-5:#A32E19;--heat-6:#7C1610;
  --display:"Zodiak","Iowan Old Style",Georgia,serif;--body:"Satoshi",-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --r:10px;--r-lg:18px;--shadow:0 1px 2px rgba(20,16,10,.06),0 14px 34px -20px rgba(20,16,10,.55);
  --ease:cubic-bezier(.2,.8,.2,1);
}
*{box-sizing:border-box}
html,body{margin:0;height:100%}
body{font-family:var(--body);color:var(--ink);background:#E9E1D5;-webkit-font-smoothing:antialiased}
button{font:inherit;color:inherit;cursor:pointer}
:focus-visible{outline:3px solid var(--gold-line);outline-offset:2px}

/* Demo bar */
.demo-bar{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;align-items:center;justify-content:space-between;padding:.6rem 1rem;background:var(--plum-deep);color:var(--on-dark);font-size:.85rem}
.demo-note{max-width:60ch;line-height:1.35}
.demo-ctrls{display:flex;flex-wrap:wrap;gap:.5rem .9rem;align-items:center}
.demo-ctrls label{display:flex;gap:.4rem;align-items:center}
.demo-ctrls select,.demo-ctrls button{background:#2A1622;color:var(--on-dark);border:1px solid rgba(247,239,230,.25);border-radius:6px;padding:.35rem .55rem;font-size:.85rem}
#demoControls[hidden]{display:none!important}
.data-src{font-size:.78rem;opacity:.8}

/* Stage */
.stage{display:flex;gap:1rem;padding:1rem;align-items:flex-start;min-height:calc(100vh - 60px)}
.tablet-wrap{flex:1 1 auto;min-width:0}
.tablet-scaler{position:relative;width:100%}
.tablet{position:absolute;top:0;left:0;width:1366px;height:1024px;transform-origin:0 0;background:var(--paper);border-radius:34px;box-shadow:0 0 0 14px #1a1418,0 0 0 16px #3a3036,0 30px 60px -20px rgba(0,0,0,.5);overflow:hidden;isolation:isolate}
.caption{font-size:.8rem;color:var(--ink-3);text-align:center;margin:.6rem 0 0}
.terminal{flex:0 0 400px;background:#101418;color:#EDEFF2;border-radius:18px;min-height:600px;overflow:hidden;box-shadow:0 20px 40px -20px rgba(0,0,0,.6)}
body.v-tablet .terminal{display:none}
body.v-terminal .tablet-wrap{display:none}
body.v-terminal .terminal{flex:1 1 auto;max-width:900px;margin:0 auto}
body.bare .demo-bar,body.bare .caption,body.bare .terminal{display:none}
body.bare .stage{padding:0}
body.bare .tablet{border-radius:0;box-shadow:none}

/* ---------- Tablet ---------- */
.t-screen{position:absolute;inset:0 0 96px 0;overflow:hidden}
.t-scroll{position:absolute;inset:0;overflow-y:auto;overscroll-behavior:contain;padding:40px 56px 40px}
.dock{position:absolute;left:0;right:0;bottom:0;height:96px;display:flex;align-items:center;gap:12px;padding:0 24px;background:var(--surface);border-top:1px solid var(--line)}
.dock .d-btn{display:flex;align-items:center;gap:10px;height:64px;padding:0 22px;border-radius:32px;border:1px solid var(--line);background:transparent;font-size:20px;font-weight:500}
.dock .d-btn svg{width:26px;height:26px}
.dock .d-btn.on{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.dock .spacer{flex:1}
.dock .d-order{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);font-weight:700}
.dock .d-order .n{display:inline-grid;place-items:center;min-width:32px;height:32px;border-radius:16px;background:var(--accent-ink);color:var(--accent);font-size:17px;padding:0 8px}
.dock .d-order.bump{animation:bump .5s var(--ease)}
@keyframes bump{30%{transform:scale(1.08)}}
.dock .tbl{font-size:16px;color:var(--ink-3);padding-left:6px}
.dock .tbl b{color:var(--ink)}
.lang{display:flex;gap:4px}
.lang button{height:48px;min-width:52px;border-radius:24px;border:1px solid var(--line);background:transparent;font-weight:700;font-size:16px}
.lang button.on{background:var(--ink);color:var(--paper)}

/* Attract */
.attract{position:absolute;inset:0;background:radial-gradient(120% 90% at 30% 20%,#3a1430 0%,var(--plum-deep) 60%);color:var(--on-dark);display:grid;place-items:center;text-align:center;cursor:pointer;z-index:5}
.attract .dala-row{position:absolute;left:0;right:0;bottom:26px;display:flex;justify-content:center;align-items:flex-end;gap:34px;pointer-events:none}
.attract .dala-row img{height:60px;width:auto;display:block;animation:trot 2.4s ease-in-out infinite}
.attract .dala-row img:nth-child(even){height:46px}
@keyframes trot{0%,100%{transform:translateY(0) rotate(0)}30%{transform:translateY(-5px) rotate(-2deg)}70%{transform:translateY(-3px) rotate(2deg)}}
.attract h1{font-family:var(--display);font-weight:500;font-size:96px;margin:0;letter-spacing:-.01em}
.attract .mark{width:250px;margin:0 auto 16px;filter:drop-shadow(0 10px 30px rgba(0,0,0,.4))}
.attract p.sub{font-size:26px;opacity:.85;margin:.5rem 0 2.5rem;text-shadow:0 1px 10px rgba(9,20,14,.85),0 0 2px rgba(9,20,14,.6)}
.attract .tap{display:inline-flex;gap:12px;align-items:center;font-size:22px;border:1px solid rgba(247,239,230,.4);padding:18px 30px;border-radius:40px;animation:pulse 2.4s ease-in-out infinite}
@keyframes pulse{50%{box-shadow:0 0 0 14px rgba(200,166,63,.12);border-color:var(--gold-line)}}
.attract .langs{margin-top:34px;display:flex;gap:12px;justify-content:center}
.attract .langs button{background:rgba(16,26,20,.45);border:1px solid rgba(247,239,230,.35);color:var(--on-dark);border-radius:28px;height:56px;padding:0 26px;font-size:20px;text-shadow:0 1px 6px rgba(9,20,14,.7)}
.attract .langs button.on{background:var(--on-dark);color:var(--plum-deep)}
.attract .venue{position:absolute;top:26px;right:26px;width:88px;height:88px;z-index:4;filter:drop-shadow(0 4px 12px rgba(0,0,0,.45));perspective:260px}
.attract .venue img{width:100%;height:100%;display:block;border-radius:50%;animation:venueSpin 44s linear infinite}
@keyframes venueSpin{to{transform:rotateY(360deg)}}
@media(prefers-reduced-motion:reduce){.attract .venue img{animation:none}}
.attract .tourn-row{margin-top:22px}
.attract .tourn{display:inline-flex;align-items:center;gap:10px;padding:12px 22px;border:1px solid rgba(247,239,230,.4);border-radius:32px;color:var(--on-dark);text-decoration:none;background:rgba(16,26,20,.45);text-align:left}
.attract .tourn:hover{background:rgba(16,26,20,.7)}
.attract .tourn svg{width:22px;height:22px;flex-shrink:0}
.attract .tourn b{display:block;font-size:17px;line-height:1.2}
.attract .tourn small{display:block;font-size:13px;line-height:1.3;opacity:.8}
.attract .season{position:absolute;bottom:40px;left:0;right:0;font-size:20px;color:var(--gold-line)}
.attract.lucia{background:radial-gradient(90% 70% at 50% 30%,#4a3312 0%,#1b0d10 65%)}
.candles{position:absolute;inset:auto 0 110px 0;display:flex;justify-content:center;gap:46px}
.candle{width:14px;height:70px;background:#f3ead8;border-radius:3px;position:relative}
.candle::before{content:"";position:absolute;left:50%;top:-26px;width:16px;height:26px;margin-left:-8px;border-radius:50% 50% 45% 45%;background:radial-gradient(circle at 50% 70%,#fff6c0,#f7b733 60%,transparent 70%);animation:flicker 1.6s infinite alternate}
@keyframes flicker{to{transform:scale(.88) translateY(2px);opacity:.85}}
.fireworks{position:absolute;inset:0;pointer-events:none}
.fw{position:absolute;width:6px;height:6px;border-radius:50%;box-shadow:0 0 0 0 transparent;animation:boom 2.2s ease-out infinite}
@keyframes boom{0%{box-shadow:0 0 0 0 #f7d774;opacity:1}100%{box-shadow:0 -90px 0 -2px #f7d774,64px -64px 0 -2px #e86a8c,90px 0 0 -2px #9fd36b,64px 64px 0 -2px #f7d774,0 90px 0 -2px #e86a8c,-64px 64px 0 -2px #9fd36b,-90px 0 0 -2px #f7d774,-64px -64px 0 -2px #e86a8c;opacity:0}}

/* Home */
.home-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:28px}
.home-head h2{font-family:var(--display);font-size:58px;font-weight:500;margin:0;line-height:1}
.home-head .when{font-size:20px;color:var(--ink-3)}
.logo-btn{background:none;border:0;padding:0;display:flex;align-items:center;gap:14px}
.logo-btn img{height:60px;width:auto;transition:filter .6s}
.tiles{display:grid;grid-template-columns:1.25fr 1fr 1fr;grid-template-rows:300px 300px;gap:20px}
.tile{position:relative;border:0;border-radius:var(--r-lg);overflow:hidden;text-align:left;padding:28px;display:flex;flex-direction:column;justify-content:flex-end;color:#fff;background:#333;box-shadow:var(--shadow);transition:transform .3s var(--ease);opacity:0;animation:rise .6s var(--ease) forwards}
.tile:active{transform:scale(.98)}
.tile{isolation:isolate}
.tile:nth-child(2){animation-delay:.06s}.tile:nth-child(3){animation-delay:.12s}.tile:nth-child(4){animation-delay:.18s}.tile:nth-child(5){animation-delay:.24s}
@keyframes rise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
.tile .bg{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform 6s ease-out;z-index:-1}
.tile:hover .bg{transform:scale(1.06)}
.tile::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(20,8,15,.78),rgba(20,8,15,.05) 60%);z-index:-1}
.tile h3{font-family:var(--display);font-size:40px;font-weight:500;margin:0}
.tile p{font-size:19px;margin:.3rem 0 0;opacity:.9}
.tile.big{grid-row:span 2}
.tile.big h3{font-size:56px}
.tile.kids{background:linear-gradient(135deg,#F2C14E,#E8805A)}
.tile.kids::after{background:linear-gradient(to top,rgba(90,30,10,.55),transparent 60%)}
.tile.concept{background:var(--lime-deep)}
.tile .illo{position:absolute;right:18px;top:18px;width:150px;height:150px;animation:bob 5s ease-in-out infinite}
@keyframes bob{50%{transform:translateY(-10px) rotate(-4deg)}}
.w-org{display:inline-block;margin-left:10px;padding:2px 10px;border-radius:12px;background:rgba(169,58,135,.12);color:var(--lotus);font-size:13px;font-weight:700;vertical-align:middle;letter-spacing:.04em}
.home-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-top:20px}
.themecard{position:relative;overflow:hidden;border:1px solid var(--line);padding:0;min-height:160px;text-align:left;cursor:pointer;transition:transform .25s var(--ease),box-shadow .25s var(--ease)}
.themecard:hover,.themecard:focus-visible{transform:translateY(-2px);box-shadow:0 6px 18px rgba(21,9,18,.18)}
.themecard .tc-bg{position:absolute;inset:0;background-size:cover;background-position:center;background-color:var(--dx-dark,#7A1C4F)}
.themecard .tc-veil{position:absolute;inset:0;background:linear-gradient(90deg,rgba(21,9,18,.78) 0%,rgba(21,9,18,.35) 62%,rgba(21,9,18,.08) 100%)}
.themecard .tc-body{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:5px;padding:20px 24px;height:100%;color:#FFF6EE}
.themecard .tc-body b{font-family:var(--display);font-size:25px;font-weight:500;line-height:1.15;color:#FFF6EE;margin:0}
.themecard .tc-body .lbl{color:rgba(255,246,238,.82)}
.themecard .tc-go{margin-top:auto;font-weight:700;font-size:15px;letter-spacing:.02em;color:#FFF6EE}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:22px 26px}
.card .lbl{font-size:15px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);margin:0 0 6px}
.word b{font-family:var(--display);font-size:34px;font-weight:500}
.word .pr{color:var(--ink-3);font-size:17px;margin-left:10px}
.word p{margin:.3rem 0 0;font-size:19px;color:var(--ink-2)}
.egg-banner{background:#FFF4D6;border:1px solid var(--gold-line);border-radius:var(--r-lg);padding:18px 24px;font-size:20px;display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;animation:rise .6s var(--ease)}
.egg-banner button{border:0;background:var(--ink);color:var(--paper);border-radius:24px;height:48px;padding:0 22px;font-size:17px;white-space:nowrap}

/* Moose */
.moose{position:absolute;width:46px;height:46px;border:0;background:none;padding:0;opacity:.55;transition:opacity .3s}
.moose:hover{opacity:.9}
.moose.found{opacity:1;animation:wave 1s var(--ease)}
.moose svg{width:100%;height:100%}
@keyframes wave{25%{transform:rotate(-14deg) scale(1.3)}60%{transform:rotate(10deg) scale(1.3)}}

/* Menu */
.menu-layout{position:absolute;inset:0;display:grid;grid-template-columns:260px 1fr}
.rail{border-right:1px solid var(--line);padding:28px 16px;overflow-y:auto;background:var(--paper-2)}
.rail h4{font-size:14px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin:18px 12px 8px}
.rail button{display:block;width:100%;text-align:left;border:0;background:none;padding:14px 14px;border-radius:12px;font-size:19px}
.rail button.on{background:var(--ink);color:var(--paper)}
.rail button .h{display:block;font-size:14px;opacity:.7}
.rail button.later{opacity:.55}
.menu-main{position:relative;overflow-y:auto;padding:28px 36px 40px}
.menu-top{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:18px}
.menu-top h2{font-family:var(--display);font-size:46px;font-weight:500;margin:0}
.menu-top .intro{font-size:18px;color:var(--ink-2);margin:.3rem 0 0;max-width:52ch}
.heat-filter{display:flex;gap:6px;align-items:center;font-size:15px;color:var(--ink-3)}
.heat-filter button{height:44px;min-width:44px;border-radius:22px;border:1px solid var(--line);background:var(--surface);font-weight:700}
.heat-filter button.on{background:var(--ink);color:var(--paper)}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.dish{position:relative;text-align:left;border:1px solid var(--line);background:var(--surface);border-radius:var(--r-lg);padding:0;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow);opacity:0;animation:rise .45s var(--ease) forwards;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
.dish .ph{height:120px;display:grid;place-items:center;font-family:var(--display);font-size:22px;color:rgba(255,255,255,.95);background:linear-gradient(135deg,var(--c1,#b25b3a),var(--c2,#6e2344));position:relative}
.dish .ph small{position:absolute;left:10px;bottom:8px;font-family:var(--body);font-size:12px;opacity:.8}
.dish .bd{padding:14px 16px 16px;display:flex;flex-direction:column;gap:6px;flex:1}
.dish .nm{font-size:20px;font-weight:700;line-height:1.2}
.dish .ds{font-size:16px;color:var(--ink-2);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.dish .ft{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:8px;font-size:17px}
.dish .pr{font-weight:700}
.dish .pr small{font-weight:400;color:var(--ink-3);font-size:14px;margin-left:6px}
.detail-pr small{font-weight:500;color:var(--ink-3);font-size:15px;margin-left:8px;white-space:nowrap}
.dish.out{opacity:.45!important}
.dish.out .ph::after{content:attr(data-out);position:absolute;inset:auto 0 0 0;background:var(--ink);color:var(--paper);font-family:var(--body);font-size:15px;padding:6px;text-align:center}
.tags{display:flex;gap:6px}
.tag{font-size:13px;border:1px solid var(--line);border-radius:10px;padding:2px 8px;color:var(--ink-2)}
.hdot{display:inline-flex;gap:3px;align-items:center}
.hdot i{width:9px;height:9px;border-radius:50%;background:var(--line)}
.hdot i.on{background:var(--hc)}
.sec-head{font-family:var(--display);font-size:28px;font-weight:500;margin:26px 0 12px;position:relative}
.sec-head:first-of-type{margin-top:4px}

/* Sheet */
.sheet-bg{position:absolute;inset:0;background:rgba(20,8,15,.5);z-index:20;display:flex;justify-content:flex-end;animation:fade .25s}
@keyframes fade{from{opacity:0}}
.sheet{width:620px;height:100%;background:var(--surface);padding:34px 38px 30px;overflow-y:auto;animation:slide .35s var(--ease);display:flex;flex-direction:column;gap:18px}
@keyframes slide{from{transform:translateX(60px);opacity:0}}
.sheet h3{font-family:var(--display);font-size:38px;font-weight:500;margin:0;line-height:1.1}
.sheet .ds{font-size:19px;color:var(--ink-2);line-height:1.45;margin:0}
.sheet .close{align-self:flex-end;border:1px solid var(--line);background:none;border-radius:24px;height:48px;padding:0 20px;font-size:17px}
.og h5{font-size:15px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin:0 0 8px}
.og .ch{display:flex;flex-wrap:wrap;gap:8px}
.og .ch button{min-height:52px;padding:0 18px;border-radius:26px;border:1px solid var(--line);background:var(--paper-2);font-size:18px}
.og .ch button.on{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.og.req h5::after{content:" *";color:var(--chili)}
.og.shake{animation:shake .4s}
@keyframes shake{25%{transform:translateX(-8px)}75%{transform:translateX(8px)}}
.heatpick{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}
.heatpick button{border:2px solid transparent;border-radius:14px;background:var(--paper-2);padding:12px 6px;font-size:14px;display:flex;flex-direction:column;align-items:center;gap:6px;min-height:88px}
.heatpick button .fl{width:26px;height:26px;border-radius:50%;background:var(--hc)}
.heatpick button.on{border-color:var(--hc);background:#fff}
.qty{display:flex;align-items:center;gap:14px;font-size:22px}
.qty button{width:56px;height:56px;border-radius:28px;border:1px solid var(--line);background:var(--paper-2);font-size:26px}
textarea{width:100%;min-height:80px;border:1px solid var(--line);border-radius:12px;padding:12px;font:inherit;font-size:17px;background:var(--paper-2)}
.addbar{margin-top:auto;display:flex;gap:12px;align-items:center}
.primary{flex:1;height:68px;border:0;border-radius:34px;background:var(--accent);color:var(--accent-ink);font-size:21px;font-weight:700}
.primary[disabled]{background:#b7a9b1;cursor:not-allowed}
.ghost{height:56px;border:1px solid var(--line);border-radius:28px;background:none;padding:0 22px;font-size:18px}

/* Cart */
.cart{width:600px}
.line{display:grid;grid-template-columns:1fr auto auto;gap:6px 14px;padding:14px 0;border-bottom:1px solid var(--line-soft);align-items:start}
.line .nm{font-weight:700;font-size:19px}
.line .op{grid-column:1/2;font-size:15px;color:var(--ink-3)}
.line .rm{border:0;background:none;color:var(--ink-3);font-size:15px;text-decoration:underline}
.sum{display:flex;justify-content:space-between;font-size:22px;font-weight:700;padding-top:14px}
.sum small{display:block;font-weight:400;font-size:15px;color:var(--ink-3);text-align:right}
.status{border-radius:14px;padding:14px 16px;background:var(--paper-2);font-size:17px;display:flex;gap:12px;align-items:center}
.status .dot{width:14px;height:14px;border-radius:50%;background:var(--gold-line);flex:none;animation:pulse2 1.4s infinite}
.status.ok .dot{background:var(--lime);animation:none}
@keyframes pulse2{50%{transform:scale(1.5);opacity:.5}}
.warn{background:#FFF4D6;border:1px solid var(--gold-line);border-radius:12px;padding:12px 14px;font-size:16px}
.fine{font-size:14px;color:var(--ink-3)}

/* Sharing */
.share-hero{display:grid;grid-template-columns:1.1fr 1fr;gap:26px;margin-bottom:24px}
.share-hero h2{font-family:var(--display);font-size:52px;font-weight:500;margin:0 0 12px;line-height:1.05}
.share-hero p{font-size:20px;line-height:1.5;color:var(--ink-2);margin:0 0 10px}
.calc{background:var(--plum-deep);color:var(--on-dark);border-radius:var(--r-lg);padding:26px}
.calc .big{font-family:var(--display);font-size:64px}
.calc .row{display:flex;justify-content:space-between;font-size:18px;padding:6px 0;border-bottom:1px solid rgba(247,239,230,.12)}
.calc .row:last-child{border:0}
.meter{display:flex;gap:8px;margin:14px 0}
.meter i{flex:1;height:14px;border-radius:7px;background:rgba(247,239,230,.18);transition:background .3s}
.meter i.on{background:var(--gold-line)}
.meter i.x{background:var(--lotus)}

/* Story */
.story{position:absolute;inset:0;background:#000;color:#fff;overflow:hidden}
.chap{position:absolute;inset:0;opacity:0;transition:opacity .9s}
.chap.on{opacity:1}
.chap .ph{position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1.02)}
.chap.on .ph{animation:kb 12s ease-out forwards}
@keyframes kb{to{transform:scale(1.14) translate(-2%,-1%)}}
.chap::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.1) 65%)}
.chap .tx{position:absolute;left:70px;bottom:120px;max-width:620px;z-index:2}
.chap .tx .n{font-size:18px;letter-spacing:.14em;color:var(--gold-line)}
.chap .tx h2{font-family:var(--display);font-size:66px;font-weight:500;line-height:1.02;margin:12px 0}
.chap .tx p{font-size:24px;line-height:1.5;opacity:.92}
.chap.on .tx>*{animation:rise .8s var(--ease) both}
.chap.on .tx p{animation-delay:.2s}
.story .nav{position:absolute;right:50px;bottom:60px;display:flex;gap:12px;z-index:3}
.story .nav button{width:72px;height:72px;border-radius:36px;border:1px solid rgba(255,255,255,.5);background:rgba(0,0,0,.3);color:#fff;font-size:28px}
.story .dots{position:absolute;left:70px;bottom:60px;display:flex;gap:10px;z-index:3}
.story .dots i{width:40px;height:4px;background:rgba(255,255,255,.35);border-radius:2px;overflow:hidden}
.story .dots i.on::before{content:"";display:block;height:100%;background:#fff;animation:prog 9s linear forwards}
.story .dots i.done{background:#fff}
@keyframes prog{from{width:0}to{width:100%}}
.story .credit{position:absolute;top:26px;right:40px;z-index:3;font-size:14px;opacity:.75}

/* Concept */
.heat-lab{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:30px;margin-top:22px;display:grid;grid-template-columns:1fr 300px;gap:30px;align-items:center}
.heat-lab input[type=range]{width:100%;height:60px;accent-color:var(--hc,var(--heat-3))}
.heat-lab .lvl{font-family:var(--display);font-size:46px}
.heat-lab .feel{font-size:21px;color:var(--ink-2)}
.chili-meter{height:240px;display:flex;align-items:flex-end;justify-content:center}
.chili-meter svg{height:100%}
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.pillars .card h3{font-family:var(--display);font-size:30px;font-weight:500;margin:0 0 8px}
.pillars .card p{font-size:19px;color:var(--ink-2);line-height:1.45;margin:0}

/* Kids */
.kids-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.kid-tile{border:0;border-radius:24px;min-height:320px;padding:24px;display:flex;flex-direction:column;justify-content:flex-end;text-align:left;font-size:28px;font-family:var(--display);color:#3a1a08;box-shadow:var(--shadow);position:relative;overflow:hidden;opacity:0;animation:rise .5s var(--ease) forwards}
.kid-tile small{font-family:var(--body);font-size:17px;margin-top:6px}
.kid-tile svg{position:absolute;top:26px;left:50%;width:150px;height:150px;margin-left:-75px;animation:bob 4s ease-in-out infinite}
.pic-group{align-self:center;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin-left:12px}
.pics .ghost.on{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.pic-cap{margin:14px 4px 0;font-size:16px;color:var(--ink-2);max-width:60ch}
.colour-wrap{display:grid;grid-template-columns:1fr 200px;grid-template-rows:minmax(0,1fr);gap:24px;height:760px}
.colour-wrap .paper{background:#fff;border-radius:24px;border:1px solid var(--line);display:grid;place-items:center;overflow:hidden}
.colour-wrap .paper canvas{display:block;max-width:94%;max-height:94%;width:auto;height:auto;cursor:crosshair;touch-action:manipulation}
.colour-side{display:grid;grid-template-rows:auto 1fr;gap:14px}
.art-progress{padding:0 4px}
.art-progress-bar{height:10px;border-radius:6px;background:rgba(21,9,18,.1);overflow:hidden}
.art-progress-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--lotus),#F2C14E);border-radius:6px;transition:width .35s var(--ease)}
.art-progress span{display:block;margin-top:6px;font-size:14px;font-weight:700;color:var(--ink-3)}
.palette{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-content:start}
.palette button{height:72px;border-radius:36px;border:3px solid transparent}
.palette button.on{border-color:var(--ink);transform:scale(1.06)}
.pics{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px}
.riddle{perspective:1200px;height:420px}
.riddle .inner{position:relative;height:100%;transition:transform .7s var(--ease);transform-style:preserve-3d}
.riddle.flip .inner{transform:rotateY(180deg)}
.riddle .face{position:absolute;inset:0;backface-visibility:hidden;border-radius:28px;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:50px;text-align:center;font-size:32px;line-height:1.35}
.riddle .front{background:#FFF4D6}
.riddle .back{background:var(--lime-deep);color:#fff;transform:rotateY(180deg);font-family:var(--display);font-size:84px}
.mem{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.mem button{aspect-ratio:1;border-radius:20px;border:0;background:var(--plum);position:relative;perspective:600px;padding:0}
.mem button .f{position:absolute;inset:0;border-radius:20px;display:grid;place-items:center;backface-visibility:hidden;transition:transform .45s var(--ease)}
.mem button .fb{background:linear-gradient(135deg,var(--plum),var(--lotus))}
.mem button .ff{background:#FFF8EA;transform:rotateY(180deg)}
.mem button.up .fb{transform:rotateY(180deg)}
.mem button.up .ff{transform:rotateY(360deg)}
.mem button.done .ff{background:#E4F2CF}
.mem svg{width:60%;height:60%}
.kid-top{display:flex;align-items:center;gap:16px;margin-bottom:20px}
.kid-top h2{font-family:var(--display);font-size:44px;font-weight:500;margin:0}
.hunt{display:flex;gap:20px;margin-top:20px}
.hunt .m{width:120px;height:120px;border-radius:60px;background:var(--paper-2);border:2px dashed var(--line);display:grid;place-items:center}
.hunt .m.ok{background:#E4F2CF;border-style:solid;border-color:var(--lime)}
.hunt .m svg{width:70%;opacity:.25}
.hunt .m.ok svg{opacity:1}

/* Idle / modal */
.modal-bg{position:absolute;inset:0;background:rgba(20,8,15,.62);z-index:40;display:grid;place-items:center;animation:fade .3s}
.modal{background:var(--surface);border-radius:28px;padding:44px 50px;max-width:720px;text-align:center}
.modal h3{font-family:var(--display);font-size:46px;font-weight:500;margin:0 0 12px}
.modal p{font-size:21px;color:var(--ink-2);line-height:1.5}
.modal .count{font-family:var(--display);font-size:90px;color:var(--accent);line-height:1}
.modal .primary{width:100%;margin-top:18px}
.t-toast{position:absolute;left:50%;top:26px;transform:translate(-50%,-140%);background:var(--ink);color:var(--paper);padding:16px 26px;border-radius:30px;font-size:19px;z-index:50;transition:transform .45s var(--ease);max-width:80%;text-align:center}
.t-toast.on{transform:translate(-50%,0)}
.xmas-tomte{position:absolute;right:-6px;bottom:96px;width:130px;z-index:4;animation:peek 6s ease-in-out infinite}
@keyframes peek{0%,20%,100%{transform:translateX(90px)}40%,80%{transform:translateX(0)}}

/* ---------- Terminal ---------- */
.tm-head{padding:16px 18px;background:#1B2229;display:flex;justify-content:space-between;align-items:center;gap:10px}
.tm-head h2{font-size:17px;margin:0}
.tm-head .mode{font-size:12px;background:#2E3B47;padding:4px 8px;border-radius:6px}
.tm-body{padding:14px 16px 20px;display:flex;flex-direction:column;gap:14px}
.tm-sec h3{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#8C99A6;margin:0 0 8px}
.tables{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}
.tables button{height:46px;border-radius:8px;border:1px solid #2E3B47;background:#161C22;font-weight:700;font-size:15px;position:relative}
.tables button.open{background:#1F3A2A;border-color:#3F7A52}
.tables button.alert{background:#5A2D12;border-color:#E58A3A;animation:tmflash 1s infinite}
.tables button.sel{outline:2px solid #EDEFF2}
.tables button .pad{position:absolute;top:2px;right:4px;font-size:9px;color:#9fd36b}
@keyframes tmflash{50%{background:#8A4A1C}}
.tbl-panel{background:#161C22;border:1px solid #2E3B47;border-radius:10px;padding:12px}
.tbl-panel .r{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:6px 0}
.step{display:flex;align-items:center;gap:8px}
.step button{width:36px;height:36px;border-radius:18px;border:1px solid #3A4854;background:#1F2830;font-size:18px}
.tbtn{height:40px;padding:0 14px;border-radius:8px;border:0;background:#EDEFF2;color:#101418;font-weight:700}
.tbtn.sec{background:#2E3B47;color:#EDEFF2}
.tbtn.go{background:#9fd36b;color:#0d1a05}
.tbtn.warnb{background:#E58A3A;color:#1d0d02}
.order{background:#161C22;border:1px solid #2E3B47;border-radius:10px;padding:12px;margin-bottom:8px}
.order.pending{border-color:#E58A3A;box-shadow:0 0 0 1px #E58A3A}
.order .oh{display:flex;justify-content:space-between;font-size:14px;color:#8C99A6;margin-bottom:6px}
.order .oh b{color:#EDEFF2;font-size:16px}
.oline{display:flex;gap:8px;align-items:flex-start;padding:6px 0;border-top:1px solid #222B33;font-size:14px}
.oline input{width:20px;height:20px;margin-top:1px;accent-color:#9fd36b}
.oline .q{font-weight:700;min-width:26px}
.oline .o{display:block;color:#9FB0BF;font-size:13px}
.oline .sku{margin-left:auto;font-family:ui-monospace,Menlo,monospace;font-size:11px;color:#8C99A6;white-space:nowrap}
.oline .heat{display:inline-block;padding:1px 6px;border-radius:5px;background:var(--hc);color:#fff;font-size:12px;font-weight:700;margin-top:2px}
.order .acts{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap}
.calls .c{display:flex;justify-content:space-between;align-items:center;background:#3A2410;border:1px solid #E58A3A;border-radius:10px;padding:10px 12px;margin-bottom:6px;font-size:15px}
.oos{max-height:220px;overflow-y:auto;border:1px solid #2E3B47;border-radius:10px}
.oos label{display:flex;justify-content:space-between;gap:8px;padding:8px 10px;border-bottom:1px solid #222B33;font-size:14px}
.oos input{accent-color:#E58A3A}
.muted{color:#8C99A6;font-size:13px}
.tm-foot{font-size:12px;color:#8C99A6;border-top:1px solid #222B33;padding-top:10px;line-height:1.45}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
@media (max-width:1000px){.stage{flex-direction:column;align-items:stretch}.terminal{flex:none;width:100%}}

.noanim .dish,.noanim .tile,.noanim .kid-tile{animation:none!important;opacity:1}
.noanim .sheet,.noanim .sheet-bg,.noanim .modal-bg{animation:none}
.dish.picked{outline:3px solid var(--accent);outline-offset:-3px}
.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,160%);background:#101418;color:#EDEFF2;padding:12px 20px;border-radius:10px;font-size:14px;z-index:99;transition:transform .4s var(--ease)}
.toast.on{transform:translate(-50%,0)}

/* ---------- v2: lek- och påskäggslager ---------- */
#tabInner{position:absolute;inset:0}
#life{position:absolute;inset:0;z-index:15;pointer-events:none;overflow:hidden}
#fx{position:absolute;inset:0;width:1366px;height:1024px;z-index:70;pointer-events:none}
.critter{position:absolute;top:0;left:0;pointer-events:auto;background:none;border:0;padding:0;cursor:pointer;touch-action:manipulation}
.critter svg{width:100%;height:100%;display:block}
.critter::after{content:"";position:absolute;inset:-24px}
.butterfly .wing{transform-origin:40px 30px;animation:flap .22s ease-in-out infinite alternate}
.butterfly .wing.r{animation-delay:.11s}
@keyframes flap{to{transform:scaleX(.25)}}
.toucan .wing{transform-origin:60px 50px;animation:tflap .3s ease-in-out infinite alternate}
@keyframes tflap{to{transform:scaleY(-.6)}}
.hummingbird .wing{transform-origin:60px 56px;animation:flap .16s ease-in-out infinite alternate}
.sloth svg{animation:sloth-sway 3.2s ease-in-out infinite alternate}
@keyframes sloth-sway{to{transform:rotate(3deg)}}
.dala svg{animation:gallop .35s ease-in-out infinite alternate}
@keyframes gallop{to{transform:translateY(-14px) rotate(-4deg)}}
.frog svg{animation:gallop .26s ease-in-out infinite alternate}
.crown svg{animation:glint 1s ease-in-out infinite alternate}
@keyframes glint{to{filter:brightness(1.25)}}
.bubble{position:absolute;background:#fff;color:#24101C;font:700 26px/1 var(--font-display,serif);padding:12px 18px;border-radius:18px;border:2px solid #C8A63F;white-space:nowrap}
.drop{position:absolute;width:56px;height:56px}
.stink{position:absolute;left:50%;top:48%;width:340px}
.stink .waft path{animation:waft 1.2s ease-in-out infinite alternate}
@keyframes waft{to{transform:translateY(-10px) skewX(10deg)}}
.discoball{position:absolute;left:50%;top:0;width:180px}
.maypole{position:absolute;left:50%;bottom:120px;width:200px}
.head-r{display:flex;align-items:center;gap:12px}
.pill-btn{display:inline-flex;align-items:center;gap:8px;min-height:48px;padding:0 16px;border-radius:999px;border:1.5px solid var(--line,#d9cfc4);background:var(--paper-2,#fff);font:600 17px var(--font-body,sans-serif);color:inherit;cursor:pointer}
.pill-btn.snd.on{background:var(--plum,#4a1f3d);color:#fff;border-color:transparent}
.heatcard{text-align:left;cursor:pointer;font:inherit;color:inherit;border:0;display:flex;flex-direction:column;gap:10px}
.heatcard .hc-lvl{font:600 24px var(--font-display,serif);color:var(--hc)}
.heatcard .flames{display:flex;gap:8px}
.heatcard .flames i{width:22px;height:30px;border-radius:50% 50% 45% 45%/60% 60% 40% 40%;background:#e9e1d8;transition:background .25s,transform .25s}
.heatcard .flames i.on{background:var(--hc);transform:translateY(-4px) scale(1.1)}
.word{cursor:pointer}
.kid-sun{width:84px;height:84px;cursor:pointer;display:inline-block;animation:spin 18s linear infinite}
.kid-sun svg{width:100%;height:100%}
@keyframes spin{to{transform:rotate(360deg)}}
.kid-tile small{display:block;font-size:18px;opacity:.75}
.eggs{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px}
.egg{display:grid;grid-template-columns:64px 1fr;grid-template-rows:auto auto;column-gap:14px;align-items:center;background:var(--paper-2,#fff);border-radius:20px;padding:16px;animation:eggrise .5s both;animation-delay:var(--d)}
.egg .shell{grid-row:span 2;width:56px;height:70px;border-radius:50% 50% 46% 46%/60% 60% 40% 40%;border:3px dashed #cbbfb2;display:grid;place-items:center;font:700 26px var(--font-display,serif);color:#b3a597}
.egg.ok .shell{border:0;background:var(--ec);box-shadow:inset -8px -8px 0 rgba(0,0,0,.08);animation:wobble 2.4s ease-in-out infinite}
.egg{border:1px solid transparent;font:inherit;text-align:left;cursor:pointer}
.egg.ok{cursor:default}
.egg .rar{display:flex;gap:4px;margin-top:6px}
.egg .rar i{width:11px;height:11px;background:#C8A63F;border-radius:50% 50% 46% 46%/60% 60% 40% 40%}
.rar.big{display:flex;gap:5px;justify-content:center;margin-top:14px}
.rar.big i{width:16px;height:16px;background:#C8A63F;border-radius:50% 50% 46% 46%/60% 60% 40% 40%}
.book-sub{font-size:21px;color:var(--ink-2);margin:-6px 0 20px;display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.title-chip{background:var(--ink);color:var(--paper);border-radius:20px;padding:4px 14px;font-size:15px;font-weight:700}
.tipcard{background:var(--paper-2,#fff);border:1px solid var(--line);border-radius:20px;padding:16px 20px;margin:0 0 18px}
.tipcard .lbl{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin:0 0 4px}
.tipcard p{font-size:18px;margin:0}
.tipcard .fine{font-size:14px;margin-top:6px}
.juiced{animation:juice .18s cubic-bezier(.34,1.56,.64,1)}
@keyframes juice{0%{transform:scale(.96)}60%{transform:scale(1.02)}100%{transform:scale(1)}}
.pill-btn.calm.on{background:var(--ink);color:var(--paper)}
.steaming{position:relative;animation:cardShake .5s}
.steaming::after{content:"";position:absolute;left:50%;top:-52px;width:74px;height:64px;transform:translateX(-50%);background:radial-gradient(circle at 50% 78%,rgba(255,255,255,.9),rgba(255,255,255,0) 70%);filter:blur(6px);border-radius:50%;pointer-events:none;animation:steamUp 2.2s ease-out forwards}
@keyframes steamUp{from{opacity:.9;transform:translateX(-50%) translateY(0) scale(.6)}to{opacity:0;transform:translateX(-50%) translateY(-44px) scale(1.6)}}
@keyframes cardShake{0%,100%{transform:translateX(0)}25%{transform:translateX(-4px)}50%{transform:translateX(3px)}75%{transform:translateX(-2px)}}
.ll-hat{position:absolute;z-index:60;pointer-events:none;width:130px;left:-150px}
.lotus-chip{background:rgba(200,166,63,.14);border:1px solid rgba(200,166,63,.35);color:#7a6420;border-radius:20px;padding:3px 12px;font-size:15px}
.dx-lotus{position:absolute;width:36px;height:28px;background:none;border:0;padding:4px;cursor:pointer;color:rgba(255,255,255,.55);opacity:.55;transition:opacity .3s;z-index:5}
.dx-lotus:hover{opacity:.95}
.dx-lotus svg{width:100%;height:100%;display:block;filter:drop-shadow(0 1px 1px rgba(0,0,0,.25))}
.dx-lotus.found{color:#F5D372;opacity:1;animation:lotusGlow 1.2s ease-out}
@keyframes lotusGlow{0%{transform:scale(1)}40%{transform:scale(2)}100%{transform:scale(1)}}
.egg b{font-size:19px}
.egg small{font-size:15px;color:var(--ink-2);line-height:1.3}
@keyframes wobble{0%,80%,100%{transform:rotate(0)}85%{transform:rotate(-8deg)}90%{transform:rotate(8deg)}95%{transform:rotate(-4deg)}}
@keyframes eggrise{from{opacity:0;transform:translateY(16px)}}
.home .tile:active,.kid-tile:active,.heatcard:active,.word:active{transform:scale(.97)}
@media (prefers-reduced-motion:reduce){.critter svg,.kid-sun,.egg.ok .shell,.butterfly .wing,.toucan .wing,.hummingbird .wing,.sloth svg{animation:none!important}}

.portrait{position:absolute;z-index:5;margin:0;background:#FFFDF8;padding:12px 12px 10px;border:3px solid #C8A63F;border-radius:14px;text-align:center}
.portrait .ph-frame{position:relative;background:#EDE3D3;border-radius:8px;overflow:hidden;display:grid;place-items:center}
.portrait img{width:100%;height:100%;object-fit:cover;display:none}
.portrait.has-img img{display:block}.portrait.has-img .ph-miss{display:none}
.portrait .ph-miss{position:absolute;inset:0;display:grid;place-items:center;padding:12px;font:600 16px var(--font-body,sans-serif);color:#7B5A28}
.portrait figcaption{font:600 20px var(--font-display,serif);color:#24101C;margin-top:8px}
.portrait.royal{left:50%;top:170px;width:420px}.portrait.royal .ph-frame{height:300px}
.portrait.guest{top:300px;width:220px;pointer-events:auto;cursor:pointer}.portrait.guest .ph-frame{height:240px}
.portrait.guest.r{right:0}.portrait.guest.l{left:0}
.portrait .photo-credit{display:block;pointer-events:auto;font:12px/1.4 sans-serif;color:#7B5A28;margin-top:6px}
.portrait.royal .ph-frame{height:262px}
.portrait.royal img{object-fit:contain}
.portrait.guest img{object-position:50% 25%}
.theme-badge{display:block;margin-top:5px;padding:3px 8px;max-width:300px;border:1px solid #C8A63F;border-radius:8px;background:#FFFDF8;color:#7B5A28;font:500 15px/1.4 var(--body,sans-serif);cursor:pointer;text-align:left}
.attract .attract-theme{font-size:20px;line-height:1.4;max-width:640px;margin:26px auto 0;color:#F2E3C4;text-shadow:0 1px 8px rgba(9,20,14,.85)}
#tabInner[data-theme=jungle] .attract:not(.lucia){background:#0E2E22}
#tabInner[data-theme=sweden] .attract:not(.lucia){background:#193348}
#tabInner[data-theme=royal] .attract:not(.lucia){background:#321A2C}
#tabInner[data-theme=party] .attract:not(.lucia){background:#3D1A45}

/* ---- v6.10: evening menu reading mode ---- */
.rail button.read{opacity:.66}
.rail .readtag{font-style:normal;font-size:11px;font-weight:700;background:#2f5d50;color:#fff;border-radius:7px;padding:1px 7px;margin-left:7px;vertical-align:1px;letter-spacing:.03em}
.read-banner{background:#fff8e8;border:1px solid #e3d3ac;border-radius:12px;padding:10px 14px;margin-bottom:14px;font-size:15px;line-height:1.5;color:#4a432e;max-width:640px}

/* ---------- Fas 3: den levande plattan, riktiga data ---------- */
/* Skymningsljus runt verklig solnedgång, bara på startskärmens scen. */
.attract.dusk .dx-attract-art::after {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(180deg, rgba(224,138,74,.28), rgba(120,66,60,.16) 55%, rgba(30,24,40,.12));
}
/* Månen med verklig fas, övre högra hörnet av scenen. */
.amb-moon {
  position: absolute; top: 7%; right: 9%; width: 64px; height: 64px;
  padding: 0; border: 0; background: none; cursor: pointer;
  filter: drop-shadow(0 0 12px rgba(242,233,200,.35));
  animation: amb-moon-in 1.6s ease-out;
}
.amb-moon svg { width: 100%; height: 100%; display: block; }
.amb-moon:active { transform: scale(.94); }
@keyframes amb-moon-in { from { opacity: 0; transform: translateY(-14px); } to { opacity: 1; transform: none; } }
/* Tidvatteninfo, havstemat. Källa NOAA, Puntarenas. */
.amb-tide {
  position: absolute; left: 4%; bottom: 6%;
  font: 600 13px/1.2 inherit; color: #DCEFF0;
  background: rgba(20,63,83,.72); border: 1px solid rgba(220,239,240,.35);
  border-radius: 999px; padding: 6px 12px; pointer-events: none;
}
.amb-tide i { display: inline-block; width: 10px; height: 10px; margin-right: 6px;
  border-radius: 50% 50% 0 0; background: #9FD3E8; vertical-align: -1px; }
/* Syssla, glimtar i skymning och natt. */
.critter.firefly svg .glow { animation: firefly-glow 1.8s ease-in-out infinite alternate; }
@keyframes firefly-glow { from { opacity: .15; } to { opacity: .6; } }
/* Grön blick, endast vid verifierad åska. */
.greenflash {
  position: absolute; left: 0; top: 0; width: 90px; height: 200px;
  padding: 0; border: 0; background: none; cursor: pointer; z-index: 30;
  filter: drop-shadow(0 0 18px rgba(95,240,154,.55));
}
/* Respektera nedsatt rörelse: inga nya animationer. */
@media (prefers-reduced-motion: reduce) {
  .amb-moon, .critter.firefly svg .glow { animation: none; }
}

/* ---------- Fas 2: dagens ratt fran terminalen ---------- */
.today-wrap { max-width: 900px; margin: 0 auto 14px; }
.today-dish { display: block; width: 100%; position: relative; text-align: left; border: 2px solid var(--lotus, #6e2344); background: var(--surface); border-radius: var(--r-lg); padding: 16px 18px; box-shadow: var(--shadow); }
.today-dish .today-badge { display: inline-block; font-size: 12px; font-weight: 700; letter-spacing: .4px; text-transform: uppercase; color: #fff; background: var(--lotus, #6e2344); border-radius: 999px; padding: 3px 12px; margin-bottom: 8px; }
.today-dish b { display: block; font-size: 19px; }
.today-dish p { margin: 4px 0 0; font-size: 14px; opacity: .8; }
.today-dish .pr { display: block; margin-top: 6px; font-weight: 700; }

.dock .d-more{width:64px;justify-content:center;padding:0}
