:root{--ink:#18241f;--forest:#123d31;--forest-soft:#245b49;--brand-brown:#482016;--cream:#f7f4ed;--surface:#fffdfa;--surface-2:#eef2ed;--accent:#dce96e;--border:#dfe6df;--shadow:0 18px 45px rgba(25,52,42,.09);color-scheme:light}
html{scroll-behavior:smooth}body{min-height:100vh;color:var(--ink);background:linear-gradient(180deg,#edf3ee 0,#f7f4ed 22rem,#f7f4ed 100%);letter-spacing:-.01em}
.topbar{height:72px;padding-inline:max(20px,calc((100% - 1160px)/2));background:rgba(18,61,49,.92);box-shadow:0 8px 28px rgba(10,38,29,.15);backdrop-filter:blur(18px) saturate(130%)}.brand,.admin-link{display:inline-flex;align-items:center;min-height:42px;padding:0 14px;border-radius:12px;text-decoration:none;transition:background .18s,transform .18s}.brand:hover,.admin-link:hover{background:#ffffff14;transform:translateY(-1px)}
main{max-width:1160px;padding-top:32px}.banner{border-bottom:1px solid #ead58c;background:#fff4c9;color:#634b00}
.hero{min-height:350px;border:1px solid #ffffff1a;border-radius:36px;background:radial-gradient(circle at 82% 18%,#3a705d 0,transparent 22rem),linear-gradient(135deg,#102f27,#174c3c);box-shadow:0 28px 70px rgba(18,61,49,.2)}.hero:after{width:430px;height:430px;right:-190px;top:-230px;background:#dce96e1e}.hero .eyebrow{color:#dce96e}.hero h1{font-weight:850;letter-spacing:-.06em}.hero-logo{border:1px solid #fff;box-shadow:0 24px 55px #061d1750;transform:none;transition:transform .25s}.hero:hover .hero-logo{transform:translateY(-4px) rotate(1deg)}
.tools{top:72px;padding:20px 0 12px;background:linear-gradient(180deg,var(--cream) 75%,transparent);backdrop-filter:blur(10px)}.search{color:#46554f}.search input,input,textarea,select{outline:none;border:1px solid var(--border);background:rgba(255,253,250,.95);box-shadow:0 2px 8px rgba(20,48,38,.035);transition:border-color .18s,box-shadow .18s,background .18s}.search input:focus,input:focus,textarea:focus,select:focus{border-color:#5f8a78;box-shadow:0 0 0 4px rgba(62,116,92,.12);background:white}.filters{scrollbar-width:none}.filters::-webkit-scrollbar{display:none}.chip{border-color:var(--border);background:rgba(255,255,255,.76);font-weight:700;transition:.18s}.chip:hover{border-color:#9db1a7;background:white}.chip.active{background:var(--forest);box-shadow:0 7px 18px rgba(18,61,49,.18)}
.section-head{margin-top:28px}.section-head h2{font-size:1.65rem;letter-spacing:-.035em}.menu-meta{background:#e3ebe5;color:var(--forest)}.menu-grid{gap:16px}.menu-card{min-height:250px;padding:16px;border:1px solid rgba(218,226,219,.9);border-radius:25px;background:rgba(255,253,250,.9);box-shadow:0 10px 30px rgba(25,52,42,.055);backdrop-filter:blur(8px)}.menu-card:hover{transform:translateY(-5px);border-color:#cad8ce;box-shadow:var(--shadow)}.product-visual{height:130px;margin:-6px -6px 15px;border-radius:19px;background:linear-gradient(145deg,#edf2ea,#e2e9dd)}.menu-card h3{font-size:1.12rem;letter-spacing:-.02em}.menu-card .mode{display:inline-flex;width:max-content;padding:5px 9px;border-radius:999px;background:#edf2ee;color:#416456;font-weight:750}.menu-card button,.primary{min-height:46px;border-radius:14px;background:var(--forest);color:white;box-shadow:0 8px 18px rgba(18,61,49,.14);transition:transform .16s,filter .16s,box-shadow .16s}.menu-card button:hover,.primary:hover{filter:brightness(1.08);transform:translateY(-1px);box-shadow:0 11px 24px rgba(18,61,49,.2)}.menu-card button:active,.primary:active{transform:translateY(1px)}.menu-card button:disabled{box-shadow:none;filter:none}
.cart-button{min-height:60px;border:1px solid #ffffff1c;border-radius:20px;background:linear-gradient(135deg,#102f27,#245b49);box-shadow:0 16px 38px rgba(13,52,40,.34)}.backdrop{backdrop-filter:blur(5px)}.drawer{padding:24px;border-left:1px solid var(--border);background:rgba(255,253,250,.98);box-shadow:-24px 0 60px #102f2730}.drawer-head{position:sticky;top:-24px;z-index:2;padding:18px 0;background:rgba(255,253,250,.94);backdrop-filter:blur(14px)}.drawer-head h2{font-size:1.7rem;margin:0}.icon-btn{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;background:#edf1ee;color:var(--forest)}.cart-row{padding:17px 0;border-color:var(--border)}.qty button{border-color:var(--border);background:var(--surface)}.checkout{padding-top:4px}.total{border-top:1px solid var(--border);margin-top:17px}
dialog{border:1px solid #e1e7e2;border-radius:26px;background:var(--surface);box-shadow:0 30px 90px rgba(8,31,24,.28)}dialog::backdrop{background:#0c231db3;backdrop-filter:blur(6px)}dialog h2{letter-spacing:-.035em}.choice-grid label{border-color:var(--border);background:#f7f9f6;cursor:pointer}.choice-grid label:has(input:checked){border-color:var(--forest-soft);background:#e4eee8;color:var(--forest);font-weight:800}.success-mark{box-shadow:0 0 0 9px #dff6e955}
.store-hero{padding-top:64px}.store-hero h1{color:var(--forest);font-weight:860}.store-grid{gap:20px}.store-card{padding:16px;border-color:rgba(216,226,218,.9);border-radius:27px;background:rgba(255,253,250,.9);box-shadow:0 12px 34px rgba(25,52,42,.06);backdrop-filter:blur(8px)}.store-card:hover{transform:translateY(-6px);border-color:#cbd8cf;box-shadow:0 24px 52px rgba(25,52,42,.14)}.store-image{border-radius:20px;background:#f0ede5}.store-card h2{font-size:1.35rem;letter-spacing:-.03em}.store-state{display:inline-flex;padding:5px 8px;border-radius:999px;background:#e5f2ea}
.admin-main{max-width:960px}.admin-main .panel,.admin-row,.order-card{border:1px solid var(--border);border-radius:20px;background:rgba(255,253,250,.93);box-shadow:0 8px 26px rgba(25,52,42,.055)}.admin-head h1{font-size:2.5rem;letter-spacing:-.05em}.secondary{min-height:43px;border-color:var(--border);border-radius:13px;background:var(--surface);color:var(--forest);transition:.18s}.secondary:hover{background:#edf3ef;border-color:#b9c9bf}.tabs{padding:5px;width:max-content;border-radius:16px;background:#e7ede8}.tabs .chip{border:0}.inline{box-shadow:none!important}.status-select{min-height:43px;padding:8px 12px;border-radius:12px}.image-preview{border-radius:18px!important}
@media(max-width:640px){main{padding-top:18px}.topbar{height:64px}.tools{top:64px}.hero{min-height:260px;border-radius:28px}.hero-logo{width:86px;height:86px;flex-basis:86px}.menu-grid{gap:10px}.menu-card{min-height:238px;padding:12px;border-radius:20px}.product-visual{height:112px;margin:-3px -3px 12px;border-radius:16px}.store-hero{padding-top:34px}.store-grid{grid-template-columns:1fr}.drawer{padding:20px}.drawer-head{top:-20px}.admin-head h1{font-size:2rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-logo,.brand,.admin-link,.chip,.secondary,.primary{transition:none}}
