/* Level 2: warm editorial framing around the playable kitchen. */
:root{--gold:#ecd5a8;--gold-d:#d9b57a;--cyan:#bbd8c9;--green:#acc8ad;--text:#f6f1e7;--muted:#c0c9bd;--panel:rgba(34,49,44,.94);--line:rgba(236,225,199,.2)}
body{background:#d4ded8;font-family:'Nunito',system-ui,sans-serif}
button,a,select{-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid #d6a760!important;outline-offset:4px}
#hud-top{top:24px;left:24px;width:264px;padding:20px;border-radius:4px 18px 18px 18px;box-shadow:0 10px 35px #172b2325;border-color:#ffffff26}
.hud-title{font-family:inherit;font-size:13px;letter-spacing:.03em;text-shadow:none;font-weight:800;color:#f7e5c5}
.hud-caret{border:0;background:transparent;padding:4px 7px;color:var(--text);font-size:16px;cursor:pointer}
.hud-subtitle{font-size:11px;letter-spacing:0;text-transform:none;font-weight:600;margin:5px 0 17px}
#routine-progress{font-size:12px;color:#e2d1af;padding-bottom:14px}
.meter-row{font-size:11px;gap:7px;margin:7px 0}
.meter-name{min-width:76px}.meter-value{font-family:inherit;font-size:10px;min-width:40px}
.meter-track{height:4px;border:0;background:#ffffff16}
.fill-trust{background:#aec8a9}.fill-influence{background:#dcc194}
.mission-list{gap:4px;margin-top:14px;padding-top:14px;list-style:none}
.mission-row{font-size:11px;line-height:1.5;padding:8px 6px;color:#afb9ae;border:0;border-radius:5px;background:transparent;gap:8px}
.mission-row.active{color:#fff3db;background:#ffffff12;border:0}
.mission-row .check{font-size:11px;min-width:16px}.mission-row.done{background:transparent;color:#afc5aa;opacity:1}
#guide-btn{width:100%;border:1px solid #ecd5a85c;border-radius:6px;padding:10px;margin-top:14px;background:#ecd5a8;color:#284838;font:800 11px 'Nunito',sans-serif;cursor:pointer;text-align:left}
#guide-btn:disabled{opacity:.65;cursor:default}
#status-pill{top:auto;bottom:73px;left:50%;right:auto;transform:translateX(-50%);border-radius:7px;font-size:12px;letter-spacing:0;padding:10px 18px;max-width:calc(100vw - 32px);white-space:nowrap}
#status-pill .dot{animation:none;box-shadow:none;width:6px;height:6px;margin-right:10px}
#exit-btn,#avatar-pick,#talk-btn,#recenter-btn,#dialog-skip{border-radius:8px;font-size:11px;letter-spacing:0;text-transform:none;padding:10px 14px;box-shadow:0 4px 15px #172b2312}
#exit-btn{top:24px;right:24px}#avatar-pick{top:72px;right:24px;max-width:190px}#talk-btn{top:120px;right:24px}
#chat-bubble{top:170px;right:24px;font-size:12px;border-radius:10px;width:260px}
#controls-hint{font-size:11px;border:0;border-radius:7px;padding:12px 20px;bottom:24px;background:#344a40dd}
#controls-hint b{color:#efe0c2;font-weight:800}
#recenter-btn{bottom:24px;right:24px}
#hud-top.collapsed #routine-progress,#hud-top.collapsed #hud-hearts{display:none}
#begin-overlay{align-items:flex-start;justify-content:center;text-align:left;padding:5vw;background:linear-gradient(90deg,#21382eef 0%,#21382ed9 27%,#21382e88 45%,#21382e00 72%)}
#begin-overlay .episode{font-family:inherit;font-weight:800;font-size:11px;letter-spacing:.18em;color:#e3d6ba;margin-bottom:26px;text-transform:uppercase}
.episode span{opacity:.4;margin:0 8px}
#begin-overlay h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(40px,5vw,76px);font-weight:400;letter-spacing:-.05em;color:#fcf2df;text-shadow:none;line-height:1.06;margin-bottom:22px}
#begin-overlay .tagline{max-width:335px;color:#d0d9cc;font-size:14px;line-height:1.8;margin-bottom:25px}
.chapter-details{display:flex;gap:18px;color:#e6d6b7;font-size:10px;letter-spacing:.08em;text-transform:uppercase;margin-bottom:30px}
.chapter-details span+span{border-left:1px solid #ffffff35;padding-left:18px}
#begin-overlay .start-btn{background:#ecd5a8;box-shadow:none;border-radius:6px;padding:15px 21px;font-family:inherit;font-size:12px;letter-spacing:0;text-transform:none;color:#233b30;gap:40px}
#begin-overlay .start-btn:hover{box-shadow:0 7px 24px #172b2344;background:#f7e7c8}
#begin-overlay .hint{font-size:9px;letter-spacing:.18em;color:#c6d2c5;margin-top:24px}
.chapter-ready #hud-top,.chapter-ready #status-pill,.chapter-ready #avatar-pick,.chapter-ready #talk-btn,.chapter-ready #controls-hint,.chapter-ready #recenter-btn,.chapter-ready #dpad,.chapter-ready #act-btn{visibility:hidden}
.chapter-ready #exit-btn{z-index:45}
#dialog-box{background:#233b31f0;border:1px solid #e3ce9f66;border-radius:10px;box-shadow:0 12px 35px #0002;bottom:130px;max-width:480px;padding:16px 20px}
#dialog-box .name-tag{font-family:inherit;font-size:11px;text-shadow:none;letter-spacing:.08em;text-transform:uppercase}
#dialog-box .speaker-portrait{width:27px;height:27px;border:0;font-size:17px;background:#ffffff15}
#dialog-box .text{font-size:13px;line-height:1.6}#dialog-box .arrow{display:none}
#dialog-skip{bottom:130px;right:24px}
#toast{top:auto;bottom:145px;left:24px;transform:translateY(10px);width:264px;padding:20px;text-align:left;background:#f6eddd;border:1px solid #fff9ee;border-radius:12px;box-shadow:0 12px 35px #233b3133}
#toast.show{transform:translateY(0)}#toast .toast-eyebrow{font-family:inherit;font-size:9px;color:#567768}
#toast .toast-title{font-family:Georgia,serif;font-size:23px;letter-spacing:-.025em;text-shadow:none;color:#2d4437;line-height:1.1;margin:8px 0}
#toast .toast-body{font-size:12px;color:#607061}#toast .toast-rewards{justify-content:flex-start;gap:5px;font-family:inherit;font-size:9px}
#toast .reward-pill,#toast .reward-pill.trust,#toast .reward-pill.followers{padding:4px 7px;background:#d8e2cf;color:#365641;border:0}
#celebration{background:#21382ef2}#celebration h1{font-family:Georgia,serif;font-weight:400;text-shadow:none;letter-spacing:-.04em}
#celebration .btn-gold{background:#ecd5a8;box-shadow:none}#celebration .btn{border-radius:8px;text-transform:none}
@media(max-width:760px){
  #hud-top{left:14px;top:14px;width:min(230px,calc(100vw - 160px));padding:12px 14px}
  #exit-btn{top:14px;right:14px;padding:10px 12px}
  #avatar-pick{top:65px;right:14px;font-size:10px;max-width:126px;padding:8px}
  #talk-btn{top:107px;right:14px;font-size:10px;padding:8px}
  #begin-overlay{padding:28px;justify-content:flex-end;background:linear-gradient(0deg,#21382efc 0%,#21382ee8 35%,#21382e22 83%);padding-bottom:50px}
  #begin-overlay h1{font-size:47px;margin-bottom:16px}#begin-overlay .episode{margin-bottom:18px}
  #begin-overlay .tagline{font-size:13px;max-width:310px;margin-bottom:20px}
  #begin-overlay .hint{margin-top:18px}.chapter-details{margin-bottom:22px}
  #controls-hint{display:none}#status-pill{bottom:190px;font-size:11px}
  #dialog-box{bottom:238px;left:14px;right:14px;transform:none;width:auto;max-width:none;padding:12px 15px}
  #dialog-skip{bottom:195px;right:14px;padding:7px 10px;font-size:10px}
  body:has(#dialog-box.show) #status-pill{visibility:hidden}
  #chat-bubble{top:150px;right:14px;max-height:150px}
  #toast{bottom:238px;left:14px;width:calc(100vw - 28px);max-width:none;padding:16px}
  body:has(#toast.show) #dialog-box{visibility:hidden}
  #dpad{display:grid;bottom:18px;left:10px;grid-template-columns:44px 44px 44px;grid-template-rows:44px 44px 44px}
  .dpad-btn{background:#2f493eed;border-color:#e4d6b74d;border-radius:10px;font-size:17px}
  #act-btn{display:flex;right:20px;bottom:50px;width:64px;height:64px;background:#ecd5a8;box-shadow:none;border:1px solid #fff3d8;color:#233b30;font-family:inherit;font-size:13px;font-weight:800;letter-spacing:0}
  #recenter-btn{right:14px;bottom:133px;padding:8px 12px}
}
@media(max-height:550px){#hud-top{padding:10px 14px}.mission-row{padding:4px}.meter-row{display:none}#hud-hearts{margin:0!important}#begin-overlay{justify-content:center;padding:25px 5vw}#begin-overlay h1{font-size:42px}#begin-overlay .hint,.chapter-details{display:none}#begin-overlay .tagline{margin-bottom:16px}#dialog-box{bottom:110px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
