:root{
  --ink:#101417;--muted:#66717b;--paper:#ffffff;--paper-2:#f5f9fd;
  --blue:#86a9d7;--blue-deep:#557fae;--sky:#dceafb;--gold:#9d8258;--gold-soft:#e8decf;
  --line:#dfe8f1;--shadow:0 24px 70px rgba(39,63,86,.10)
}
html[data-theme="dark"]{--ink:#f2f6f8;--muted:#94a5b2;--paper:#0d1921;--paper-2:#09131a;--blue:#9dbce3;--blue-deep:#bdd3ee;--sky:#183044;--gold:#c9b28c;--gold-soft:#5b4b37;--line:#203644;--shadow:0 26px 70px rgba(0,0,0,.34)}
body{background:linear-gradient(180deg,#fafdff 0%,#f3f8fc 45%,#eef4f8 100%);color:var(--ink)}
html[data-theme="dark"] body{background:linear-gradient(180deg,#071118 0%,#0a151d 46%,#081219 100%)}
body:before{background:radial-gradient(circle at 8% 10%,rgba(134,169,215,.16),transparent 30%),radial-gradient(circle at 92% 4%,rgba(157,130,88,.07),transparent 24%)}
.page{max-width:1280px}.mast{height:82px;border-bottom:1px solid var(--line);background:rgba(250,253,255,.84)}
html[data-theme="dark"] .mast{background:rgba(7,17,24,.82)}
.brand-lockup img{width:58px;height:38px}.brand-copy b{font-family:"Arial Narrow",Arial,sans-serif;font-size:18px;letter-spacing:1px;color:var(--ink)}.brand-copy small{color:var(--blue-deep);letter-spacing:2.4px}
.icon-btn,.theme-toggle{background:rgba(255,255,255,.72);border-color:var(--line);box-shadow:none}.icon-btn:hover,.theme-toggle:hover{border-color:var(--blue);transform:translateY(-1px)}
html[data-theme="dark"] .icon-btn,html[data-theme="dark"] .theme-toggle{background:#0f1f29;color:#e8f3fa}
.hero{min-height:540px;grid-template-columns:minmax(0,.92fr) minmax(390px,1.08fr);gap:58px}.hero-art{min-height:470px}.hero-art:before{width:440px;height:440px;border:1px solid rgba(134,169,215,.30);box-shadow:0 0 0 22px rgba(134,169,215,.055),0 0 0 23px rgba(134,169,215,.10)}.hero-art:after{background:linear-gradient(90deg,transparent,var(--blue),transparent)}.hero-logo{width:min(88%,560px);filter:drop-shadow(0 22px 36px rgba(66,96,129,.10))}
.eyebrow{color:var(--blue-deep);letter-spacing:2.6px}.eyebrow:before{background:var(--blue)}.hero h1{font-family:"Arial Narrow",Tahoma,sans-serif;color:var(--ink);font-weight:800;letter-spacing:-2px}.hero h1 em{color:var(--blue-deep);font-style:normal}.hero-note{color:var(--ink)}.hero-note span{border-color:var(--line);color:var(--blue-deep);background:var(--paper)}
.menu-shell{background:rgba(255,255,255,.78);border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow)}
html[data-theme="dark"] .menu-shell{background:rgba(13,25,33,.78)}
.searchbox{background:var(--paper);border-color:var(--line)}.searchbox span{color:var(--blue-deep)}.cat-btn{border-color:var(--line);color:var(--muted)}.cat-btn.active{background:var(--ink);border-color:var(--ink);box-shadow:none}.catalog-head h2{font-family:"Arial Narrow",Tahoma,sans-serif;color:var(--ink);font-weight:800}
.product-card{background:var(--paper);border-color:var(--line);border-radius:20px;min-height:350px;box-shadow:0 8px 28px rgba(48,72,95,.04)}.product-card:hover{border-color:rgba(134,169,215,.65);box-shadow:0 22px 48px rgba(55,79,102,.12)}.product-media{background:linear-gradient(145deg,#f5f9fc,#eaf2f9)}html[data-theme="dark"] .product-media{background:linear-gradient(145deg,#122430,#0e1d26)}.product-kicker{color:var(--blue-deep)}.product-title b{color:var(--blue-deep)}.product-add{background:var(--ink);border-color:var(--paper);box-shadow:0 10px 22px rgba(26,35,43,.18)}
.primary{background:linear-gradient(135deg,#6f95c3,#91b5df);color:#0d1720;box-shadow:0 12px 26px rgba(104,145,192,.18)}.primary:hover{filter:brightness(1.03)}.soft{background:var(--paper-2);color:var(--ink);border-color:var(--line)}
.overlay{background:rgba(5,14,20,.64);backdrop-filter:blur(18px)}.detail-card,.success-card{background:var(--paper);border-color:var(--line);box-shadow:0 42px 110px rgba(0,0,0,.30)}.detail-card h2,.cart-head h2,.success-card h2{font-family:"Arial Narrow",Tahoma,sans-serif;color:var(--ink);font-weight:800}.detail-card small,.cart-head small,.success-card small{color:var(--blue-deep)}.detail-media{background:linear-gradient(145deg,#f4f8fb,#eaf2fa)}.close{background:var(--paper-2);color:var(--ink)}
.cart-panel{background:var(--paper);border-right-color:var(--line)}.order-form{background:var(--paper-2);border-color:var(--line)}.type-switch span,.order-form>input,.order-form>textarea{background:var(--paper);border-color:var(--line);color:var(--ink)}.type-switch input:checked+span{background:#edf5fd;border-color:#a9c4e3;color:#416b9c}.geo-box{background:#edf5fd;border-color:#d7e6f5;color:#40658d}
.mobile-dock{background:rgba(8,19,27,.94);border-color:#1b3544}.mobile-dock .main-cart{background:linear-gradient(135deg,#6f95c3,#9abce3);color:#0c1720}
.welcome-intro{background:linear-gradient(180deg,#ffffff 0%,#f5f9fd 100%)}html[data-theme="dark"] .welcome-intro{background:linear-gradient(180deg,#071118 0%,#0b1821 100%)}.welcome-logo{width:min(72vw,520px);filter:drop-shadow(0 20px 42px rgba(90,122,157,.12))}.welcome-kicker{color:var(--blue-deep);letter-spacing:4px}.welcome-content h1{font-family:"Arial Narrow",Tahoma,sans-serif;color:var(--ink);font-weight:800}
.options-overlay{background:radial-gradient(circle at 15% 20%,rgba(134,169,215,.14),transparent 28%),rgba(4,12,18,.78)}.option-picker-card{background:linear-gradient(160deg,var(--paper) 0%,var(--paper-2) 100%);border-color:rgba(134,169,215,.28);box-shadow:0 50px 130px rgba(0,0,0,.42)}.option-picker-card:before{background:linear-gradient(90deg,var(--blue-deep),var(--blue),transparent)}.option-picker-card:after{background:url('assets/cafe-butterfly-mark.png') center/contain no-repeat;opacity:.055}.option-picker-card h2,.option-picker-group-head b,.option-picker-foot #optionsTotal{color:var(--ink)}.option-picker-group{background:rgba(255,255,255,.66);border-color:var(--line)}html[data-theme="dark"] .option-picker-group{background:rgba(14,31,41,.78)}.option-picker-group:before{background:var(--blue)}.option-choice:has(input:checked){border-color:rgba(134,169,215,.65)!important;background:rgba(134,169,215,.12)}.option-choice input{accent-color:#789dcc}.option-choice-copy small{background:rgba(134,169,215,.12);color:var(--blue-deep)}
@media(max-width:820px){.hero{grid-template-columns:1fr;gap:8px;padding-top:18px}.hero-art{min-height:300px;order:-1}.hero-art:before{width:290px;height:290px}.hero-copy{padding:0}.hero h1{font-size:46px}.menu-shell{border-radius:24px;padding:16px}}
