:root{
  --bg:#0b0705; --bg2:#130b07; --card:#ffffff; --soft:#f6f7fb; --ink:#211a16; --muted:#8b827b;
  --brown:#2a160c; --brown2:#44230f; --gold:#ffc44d; --orange:#ff7627; --mint:#60c3a1; --mint2:#82e0bf;
  --line:rgba(35,22,14,.10); --shadow:0 18px 48px rgba(25,14,8,.16); --darkShadow:0 24px 70px rgba(0,0,0,.28);
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Tahoma, sans-serif;
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent} html,body,#app{margin:0;min-height:100%}
body{background:#e9e9e9;color:var(--ink)} button,input,textarea,select{font:inherit} button{border:0;cursor:pointer} b,strong{font-weight:900}
.app{width:min(430px,100vw);min-height:100vh;margin:0 auto;background:linear-gradient(180deg,#f7f8fb 0,#f4f5f9 100%);position:relative;overflow:hidden;box-shadow:0 0 0 1px rgba(0,0,0,.08)}
.app.dark{background:radial-gradient(circle at 60% -8%,rgba(255,118,39,.20),transparent 34%),linear-gradient(180deg,#120b08 0,#0a0604 100%);color:#fff7ed}
.shell{padding-bottom:100px}.hide{display:none!important}.muted{color:var(--muted)}
.topbar{height:92px;padding:16px 18px 14px;background:linear-gradient(135deg,#17100c 0,#26130b 58%,#46240e 100%);color:#fff;display:flex;align-items:center;gap:12px;border-bottom:1px solid rgba(255,196,77,.20)}
.logo{width:52px;height:52px;border-radius:18px;background:linear-gradient(135deg,var(--gold),var(--orange));color:#1b0b03;display:grid;place-items:center;font-weight:1000;box-shadow:0 12px 28px rgba(255,118,39,.28)}
.brand{flex:1;line-height:1.08}.brand h1{font-size:20px;margin:0;letter-spacing:-.02em}.brand p{margin:4px 0 0;color:#d6c8ba;font-size:12px}.circle-btn{width:48px;height:48px;border-radius:18px;background:rgba(255,255,255,.12);color:#fff;display:grid;place-items:center;border:1px solid rgba(255,255,255,.10)}
.header-mint{height:98px;background:linear-gradient(135deg,#58bd9b,#8ee0c0);color:#fff;padding:18px 22px;display:flex;align-items:center;gap:12px;font-size:26px;font-weight:1000;box-shadow:0 12px 28px rgba(73,168,136,.20)}
.header-mint .circle-btn{background:rgba(255,255,255,.20);border:1px solid rgba(255,255,255,.22)}
.page{padding:16px 16px 20px;animation:fadeUp .22s ease}.page.tight{padding-top:10px}.dark .page{color:#fff7ed}
@keyframes fadeUp{from{opacity:.5;transform:translateY(8px)}to{opacity:1;transform:none}}
.hero{margin-top:2px;border-radius:28px;padding:24px 22px;min-height:218px;color:#fff;background:radial-gradient(circle at 78% 18%,rgba(255,196,77,.36),transparent 34%),linear-gradient(145deg,#2b160b 0,#130b07 74%);box-shadow:var(--darkShadow);border:1px solid rgba(255,196,77,.18);position:relative;overflow:hidden}.hero:after{content:"";position:absolute;right:-20px;top:40px;width:128px;height:128px;border-radius:44px;background:linear-gradient(145deg,rgba(255,196,77,.38),rgba(255,118,39,.20));border:1px solid rgba(255,255,255,.13);transform:rotate(-8deg)}
.hero small{position:relative;z-index:1;color:#f7d9af;font-size:16px;font-weight:800}.hero h2{position:relative;z-index:1;margin:10px 0 22px;font-size:35px;line-height:1.02;letter-spacing:-.06em}.primary{border-radius:18px;padding:14px 22px;background:linear-gradient(135deg,var(--gold),var(--orange));color:#170904;font-weight:1000;box-shadow:0 12px 24px rgba(255,118,39,.28)}.primary.full{width:100%;font-size:17px}.ghost{border-radius:18px;padding:13px 16px;background:#fff;color:var(--ink);font-weight:900;border:1px solid var(--line)}.dark .ghost{background:rgba(255,255,255,.10);color:#fff;border-color:rgba(255,255,255,.12)}
.promo{margin-top:14px;border-radius:26px;min-height:120px;padding:18px 18px;color:#fff;background:linear-gradient(135deg,rgba(255,118,39,.78),rgba(255,196,77,.32)),linear-gradient(145deg,#552a10,#281309);box-shadow:var(--shadow);overflow:hidden}.promo h3{margin:10px 0 8px;font-size:24px;line-height:1.05}.promo p{margin:0;color:#fff0d8;font-weight:800;font-size:14px}.dots{display:flex;gap:7px;margin-top:15px}.dots i{width:8px;height:8px;border-radius:999px;background:rgba(255,255,255,.42)}.dots i:first-child{width:28px;background:#fff}
.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0 18px}.quick{min-height:94px;border-radius:24px;background:#fff;border:1px solid var(--line);box-shadow:0 10px 24px rgba(23,15,8,.06);display:grid;place-items:center;text-align:center;font-weight:1000;color:#201915;padding:10px}.quick svg{width:30px;height:30px;color:#f2a12a}.dark .quick{background:rgba(255,255,255,.08);color:#fff;border-color:rgba(255,255,255,.10)}
.section-title{display:flex;align-items:center;justify-content:space-between;margin:14px 0 10px}.section-title h2{margin:0;font-size:21px;letter-spacing:-.03em}.section-title button{background:transparent;color:#f2a12a;font-weight:1000}.products{display:grid;gap:12px}.product{display:grid;grid-template-columns:92px 1fr 46px;gap:12px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:26px;padding:12px;box-shadow:0 12px 28px rgba(31,17,8,.08)}.dark .product{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.10)}
.bottle{height:92px;border-radius:22px;background:radial-gradient(circle at 72% 18%,rgba(255,255,255,.28),transparent 24%),linear-gradient(145deg,#6b3713,#2b1207 70%);position:relative;display:grid;place-items:center;overflow:hidden}.bottle:before{content:"";width:28px;height:70px;border-radius:12px 12px 16px 16px;background:linear-gradient(90deg,#4b2610,#c9883b 55%,#3b1b0b);box-shadow:inset 8px 0 14px rgba(255,255,255,.18),0 0 0 3px rgba(255,255,255,.06)}.bottle:after{content:"";position:absolute;top:9px;left:9px;border-radius:999px;padding:4px 8px;background:rgba(0,0,0,.30);color:#ffd574;font-size:10px;font-weight:1000}.product[data-tag]:not([data-tag=""]) .bottle:after{content:attr(data-tag)}
.info{min-width:0}.info em{font-style:normal;color:#f2a12a;font-size:12px;font-weight:1000}.info h3{margin:3px 0 4px;font-size:18px;line-height:1.12;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.info p{margin:0;color:#8a7d72;font-size:13px;font-weight:700;line-height:1.25}.dark .info p{color:#c9b9a8}.price{margin-top:7px;font-weight:1000;color:#1c130e}.dark .price{color:#fff}.add{width:46px;height:46px;border-radius:17px;background:linear-gradient(135deg,var(--gold),var(--orange));color:#160804;font-weight:1000;font-size:20px}
.bottom-nav{position:fixed;z-index:20;left:50%;bottom:12px;transform:translateX(-50%);width:min(398px,calc(100vw - 28px));height:84px;border-radius:28px;background:rgba(255,255,255,.86);backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.72);box-shadow:0 18px 50px rgba(0,0,0,.18);display:grid;grid-template-columns:repeat(5,1fr);padding:9px}.dark .bottom-nav{background:rgba(33,20,13,.84);border-color:rgba(255,255,255,.10)}.bottom-nav button{background:transparent;border-radius:22px;color:#9b9ca5;font-size:12px;font-weight:1000;display:grid;place-items:center;gap:2px}.bottom-nav svg{width:25px;height:25px}.bottom-nav .on{background:rgba(96,195,161,.16);color:#4cae8d}.dark .bottom-nav .on{background:rgba(255,196,77,.13);color:#ffc44d}.cart-pill{position:fixed;z-index:21;left:50%;bottom:102px;transform:translateX(-50%);width:min(340px,calc(100vw - 80px));height:54px;border-radius:18px;background:linear-gradient(135deg,var(--gold),var(--orange));color:#170904;font-weight:1000;box-shadow:0 16px 36px rgba(255,118,39,.34)}
.auth{min-height:100vh;background:radial-gradient(circle at 70% -10%,rgba(255,118,39,.26),transparent 30%),linear-gradient(180deg,#120b08,#070403);color:#fff;padding:22px 18px;display:grid;align-content:center;gap:16px}.auth-card{border-radius:30px;padding:22px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.10);box-shadow:var(--darkShadow)}.auth h1{font-size:43px;line-height:.98;margin:14px 0 10px;letter-spacing:-.06em}.auth p{color:#d7c4af;margin:0;font-weight:700}.tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;background:rgba(0,0,0,.22);padding:6px;border-radius:20px;margin-bottom:12px}.tabs button{border-radius:16px;padding:12px;background:transparent;color:#d3c5b6;font-weight:1000}.tabs button.on{background:linear-gradient(135deg,var(--gold),var(--orange));color:#160804}label{display:block;margin:10px 0;font-weight:900}input,textarea,select{width:100%;margin-top:7px;border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:14px 15px;background:rgba(255,255,255,.08);color:inherit;outline:none}textarea{min-height:92px;resize:vertical}.light-input input,.light-input textarea,.light-input select{background:#fff;color:#201915;border:1px solid var(--line)}
.panel{background:#fff;border:1px solid var(--line);border-radius:26px;padding:16px;box-shadow:0 12px 28px rgba(31,17,8,.08)}.dark .panel{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.10)}.order-row{display:grid;grid-template-columns:64px 1fr auto;gap:12px;align-items:center;margin-bottom:10px}.order-row .bottle{height:64px;border-radius:18px}.stepper{display:flex;gap:6px;align-items:center}.stepper button{width:34px;height:34px;border-radius:13px;background:#f0f1f5;font-weight:1000}.dark .stepper button{background:rgba(255,255,255,.10);color:#fff}.total{display:grid;gap:8px;margin:14px 0}.total div{display:flex;justify-content:space-between}.status-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;background:#fff;border-radius:24px;padding:10px;box-shadow:0 10px 28px rgba(31,17,8,.07);margin-bottom:18px}.status-tabs button{min-height:70px;border-radius:22px;background:#eef0f5;color:#747986;font-weight:1000}.status-tabs button.on{background:linear-gradient(135deg,#64c4a3,#4cae8d);color:#fff}.empty{text-align:center;padding:70px 10px;color:#9a9ea8;font-size:20px;font-weight:800}.empty svg{width:72px;height:72px;color:#dfccfa}.card-list{display:grid;gap:12px}.order-card{border-radius:24px;background:#fff;border:1px solid var(--line);box-shadow:0 12px 28px rgba(31,17,8,.07);padding:15px}.dark .order-card{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.10)}.order-card h3{margin:0 0 6px}.chip{display:inline-flex;border-radius:999px;padding:6px 10px;background:#f0f1f5;color:#646975;font-size:12px;font-weight:1000}.dark .chip{background:rgba(255,255,255,.10);color:#e7d8c8}.actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.small{padding:10px 12px;border-radius:14px;font-size:13px}.drawer-shade{position:fixed;inset:0;background:rgba(0,0,0,.42);z-index:29}.drawer{position:fixed;right:0;top:0;bottom:0;width:min(330px,82vw);z-index:30;background:rgba(255,255,255,.94);backdrop-filter:blur(20px);border-radius:30px 0 0 30px;box-shadow:-20px 0 60px rgba(0,0,0,.28);overflow:hidden;color:#201915}.drawer-head{padding:26px 24px 22px;background:linear-gradient(135deg,#62c7a4,#8be2c3);color:#fff}.avatar{width:72px;height:72px;border-radius:22px;background:linear-gradient(135deg,var(--gold),var(--orange));display:grid;place-items:center;color:#1b0b03;font-weight:1000;font-size:24px;border:4px solid rgba(255,255,255,.45)}.drawer-head h2{margin:12px 0 2px}.drawer-row{width:100%;display:flex;align-items:center;gap:15px;padding:16px 24px;background:transparent;color:#211a16;font-weight:900;font-size:18px;text-align:left}.drawer-row svg{width:28px;height:28px;color:#60c3a1}.danger{color:#a8322d}.profile-card{border-radius:28px;background:linear-gradient(135deg,#1b2324,#0c1013);color:#fff;padding:22px;min-height:180px;box-shadow:var(--darkShadow)}.tier{font-size:54px;font-weight:1000;line-height:1}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.reward{min-height:110px;display:grid;place-items:center;text-align:center}.reward svg{width:32px;height:32px;color:#4cae8d}.toast{position:fixed;z-index:80;left:50%;bottom:28px;transform:translateX(-50%);max-width:360px;padding:13px 16px;border-radius:18px;background:#17110d;color:#fff;font-weight:900;box-shadow:0 14px 38px rgba(0,0,0,.28)}.toast.bad{background:#9e2a22}.toast.ok{background:#1b8a62}
@media(max-width:374px){.hero h2{font-size:31px}.product{grid-template-columns:82px 1fr 42px}.bottle{height:82px}.topbar{padding-left:14px;padding-right:14px}.page{padding-left:12px;padding-right:12px}}

.productVisual{width:96px;height:96px;border-radius:22px;overflow:hidden;background:linear-gradient(135deg,#3b1608,#8b3b13);display:grid;place-items:center;flex:0 0 auto}.productVisual img{width:100%;height:100%;object-fit:cover}.productVisual .bottle{transform:scale(.95)}
