@import url('https://fonts.googleapis.com/css2?family=Kaushan+Script&display=swap');

:root{--night:#111213;--surface:#1a1a1b;--surface-2:#232324;--hair:#39393a;--cream:#faf8f4;--soft:#a9a9ab;--scarlet:#ed1c2f;--scarlet-dark:#b8091c}
[hidden]{display:none!important}
body{background:#090909;color:var(--cream)}
.shell{max-width:1280px;background:var(--night);box-shadow:0 0 70px #000;overflow:clip}
.topbar{height:78px;padding:0 25px;background:#111213;border-bottom:1px solid #222;position:sticky;top:0;z-index:7}
.brand{gap:9px;min-width:0;color:#fff}
.brand-logo{width:70px;height:70px;object-fit:contain;border:0;border-radius:0;flex:none}
.brand-name{display:flex;align-items:baseline;gap:8px;position:relative;padding-bottom:16px;white-space:nowrap;min-width:0}
.brand-name span{font-family:'Kaushan Script','Brush Script MT',cursive;font-size:26px;font-weight:400;line-height:1.1}
.brand-name strong{font-size:25px;line-height:1;color:var(--scarlet);font-weight:800}
.brand-name small{position:absolute;bottom:0;left:4px;color:#eee;letter-spacing:3px;font-size:9px;font-weight:650;white-space:nowrap}
.top-actions{display:flex;align-items:center;gap:9px;position:relative}
.top-icon,.product-nav{border:0;background:transparent;color:#fff;display:grid;place-items:center;width:42px;height:42px;padding:8px}
.top-icon svg,.product-nav svg,.cart-fab svg{width:25px;height:25px;stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round}
.top-icon:hover,.product-nav:hover{color:var(--scarlet)}
.nav-popover{position:absolute;right:0;top:52px;width:178px;background:#222;border:1px solid #4c4c4c;box-shadow:0 14px 30px #0009;padding:6px;display:grid;gap:3px;border-radius:5px}
.nav-popover button{border:0;background:transparent;color:#f7f7f7;text-align:left;padding:12px 10px;border-radius:3px;font-size:14px}
.nav-popover button:hover{background:#373737}
.hero{margin:0;min-height:295px;height:320px;border:0;border-radius:0;display:block;background:#080808;overflow:hidden}
.hero>img{position:absolute;inset:0;width:100%;height:100%;max-height:none;min-height:0;object-fit:cover;object-position:center 56%;opacity:.92;mask-image:none}
.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#080808a8 0%,transparent 68%),linear-gradient(0deg,#0808082b,transparent 60%);pointer-events:none}
.hero-copy{position:absolute;z-index:1;left:37px;top:32px;padding:0;color:#fff}
.hero h1{font-family:'Kaushan Script','Brush Script MT',cursive;font-size:39px;font-weight:400;line-height:1.13;margin:0;max-width:none;transform:rotate(-4deg);text-shadow:0 2px 12px #000b;letter-spacing:0}
.hero-brush{display:block;width:240px;height:8px;background:var(--scarlet);margin:16px 0 0 12px;transform:rotate(-8deg) skewX(-25deg);clip-path:polygon(0 43%,100% 0,92% 100%,8% 86%)}
.hero-side{position:absolute;z-index:1;right:35px;bottom:28px;color:#fff;font-family:'Kaushan Script','Brush Script MT',cursive;font-size:20px;line-height:1.2;transform:rotate(-9deg);text-align:left;text-shadow:0 1px 8px #000;letter-spacing:0}
.hero-side:after{content:'';display:block;height:5px;width:100%;margin-top:8px;background:var(--scarlet);transform:skewX(-30deg)}
.content{padding:0 24px 100px;background:#111213;color:var(--cream)}
.section-head{height:0;margin:0;overflow:visible;display:block}
.section-head h2,.section-head p{position:absolute;width:1px;height:1px;clip:rect(0 0 0 0);overflow:hidden}
.search{position:absolute;z-index:5;top:81px;right:16px;width:min(370px,calc(100% - 32px));background:#222!important;color:#fff!important;border:1px solid #555!important;box-shadow:0 14px 30px #0009}
.search:not(.search-open){display:none}
.filters{display:flex;flex-wrap:nowrap;gap:7px;overflow:auto;scrollbar-width:none;padding:8px 0 10px;margin:0;justify-content:space-between}
.filters::-webkit-scrollbar{display:none}
.filter{flex:1;min-width:76px;max-width:155px;min-height:86px;border:1px solid transparent;border-radius:9px;background:#151516;color:#f6f6f6;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;font-size:13px;padding:8px 5px;white-space:nowrap;font-weight:550}
.filter:hover{border-color:#626262}
.filter.active{background:linear-gradient(145deg,#6d0d17,#d50d23);border-color:#ef2739;color:#fff;box-shadow:0 6px 18px #db172944}
.filter-icon{height:34px;display:grid;place-items:center;font-size:28px;line-height:1;color:#fff}
.filter-icon svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.order-strip{display:flex;align-items:end;gap:12px;flex-wrap:nowrap;margin:0 0 14px;padding:10px 0 12px;border-top:1px solid #313131;border-bottom:1px solid #313131;color:#fff}
.order-strip>.field:first-child{flex:1;min-width:0}.order-strip .field label{font-size:11px;text-transform:uppercase;letter-spacing:.6px;color:#a6a6a6}
.order-strip .seg{background:#1b1b1c;border:1px solid #464646;width:100%;min-height:40px}
.order-strip .seg button{color:#c7c7c7;font-size:12px;padding:8px 10px;min-width:0;flex:1;white-space:nowrap}
.order-strip .seg button.active{background:var(--scarlet);color:#fff}
.order-strip .table-field{margin:0;min-width:112px;width:124px;flex:none}
.order-strip .field select{background:#252526;color:#fff;border:1px solid #5a5a5a;min-height:46px;width:100%;padding:8px;font-size:13px}
.order-strip .table-field.hide{display:none!important}
.menu-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.item{background:#1d1d1e;border:1px solid #4a4a4b;border-radius:10px;box-shadow:none;position:relative;min-width:0;transition:transform .18s ease,border-color .18s ease}
.item:hover{border-color:#858585;box-shadow:none;transform:translateY(-2px)}
.item-photo{aspect-ratio:1.64;height:auto;object-fit:cover;background:#171717}
.item-info{padding:10px 14px 12px;min-height:88px}
.item-line{display:block;padding-right:51px}
.item h3{font-size:17px;line-height:1.18;color:#fff;font-weight:760;margin:0 0 4px;overflow-wrap:anywhere}
.item .cn{display:block;color:#d8d8d8;font-size:13px;margin:2px 0 0}
.price{display:block;color:#d9d9d9;font-size:13px;font-weight:600;margin:6px 0 0}
.item .desc,.item .unit{display:none}
.item-foot{position:absolute;bottom:10px;right:10px}
.plus{background:var(--scarlet);color:#fff;width:44px;height:44px;border-radius:50%;font-size:31px;font-weight:300;display:grid;place-items:center;line-height:1}
.plus:hover,.btn.primary:hover{background:#fb293d}
.plus:disabled{background:#48484a;color:#aaa;cursor:not-allowed}
.cart-fab{width:min(560px,calc(100% - 28px));bottom:14px;min-height:70px;padding:8px 8px 8px 20px;background:#22191b;border:1px solid #b82835;border-radius:20px;box-shadow:0 8px 28px #000a;color:#fff;gap:8px}
.cart-fab-main{display:flex;align-items:center;gap:10px;min-width:0}.cart-fab-main svg{width:32px;height:32px;flex:none}
.cart-count{position:absolute;left:39px;top:1px;background:var(--scarlet);border-radius:50%;font-size:12px;min-width:22px;height:22px;display:grid;place-items:center}
.cart-fab-label{font-size:15px;font-weight:780;text-align:left;white-space:nowrap}.cart-fab-label small{display:block;color:#c7c0c0;font-size:12px;font-weight:400}
.cart-fab-action{background:var(--scarlet);border-radius:15px;padding:14px 18px;min-width:120px;font-weight:750;display:flex;align-items:center;justify-content:space-between;gap:16px}
.btn.primary{background:var(--scarlet);border-color:var(--scarlet);color:#fff}
.btn{background:#29292a;border:1px solid #515152;color:#fff}
.btn:hover{border-color:#aaa}.btn.dark{background:#111;color:#fff;border-color:#444}
.empty{border-color:#535353;color:#bcbcbc;background:#202021}
.toast{background:#333;color:#fff;border:1px solid #555}
.overlay{background:#000c;z-index:15}
.drawer{width:min(510px,100%);background:#171718;color:#fff;padding:22px 22px calc(22px + env(safe-area-inset-bottom));box-shadow:-12px 0 40px #000c}
.drawer-head{border-bottom:1px solid #383838;padding-bottom:12px}.drawer-head h2{font-size:24px;color:#fff}
.icon-btn{background:#333;color:#fff;border-radius:4px}
.cart-row{border-bottom:1px solid #383838;padding:17px 0}.cart-title{align-items:center}.cart-title strong{font-size:15px;color:#fff}.muted{color:#a2a2a2}.cart-row .muted{font-size:12px}
.cart-summary{display:flex;gap:12px;align-items:center}.cart-thumb{width:62px;height:62px;object-fit:cover;border-radius:5px;flex:none}.cart-summary .cart-title{flex:1;min-width:0}.cart-summary .cart-title>div{min-width:0}.cart-summary .cart-title strong{display:block}.cart-summary .cart-title .muted{line-height:1.35;margin-top:4px}.cart-summary .cart-title>strong{white-space:nowrap;font-size:13px}.cart-note{font-size:12px;color:#c4c4c4;margin:9px 0}
.cart-row .method button,.qty-controls button{border-color:#5e5e5e;background:#282829;color:#f3f3f3;min-height:36px}
.cart-row .method button.active{background:#a81020;color:#fff;border-color:#e42a3c}
.qty-controls .remove{width:auto;min-width:52px;white-space:nowrap;color:#e7a4a8;border:0;background:transparent}
.checkout-fields{gap:12px}.checkout-fields .notice{background:#282225;color:#e6c3c4;border-color:#5e333b}.checkout-fields .field label{color:#ddd}
.checkout-service{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:4px}.checkout-service button{border:1px solid #595959;background:#29292a;color:#eee;border-radius:5px;min-height:43px}.checkout-service button.active{border-color:#ed293a;background:#a50b1d;color:#fff;font-weight:750}
.checkout-fields .field input,.checkout-fields .field select,.checkout-fields .field textarea{background:#252526;color:#fff;border:1px solid #565656;min-height:44px}
.checkout-fields .field input::placeholder,.checkout-fields .field textarea::placeholder{color:#aaa}
.total{border-color:#4a4a4a;color:#fff}.drawer .wide{min-height:50px}
#itemModal{z-index:20;background:#000e;display:grid;place-items:center;padding:0}
#itemModal .product-sheet{width:min(520px,100%);height:min(100dvh,920px);max-height:100dvh;padding:0;background:#171718;border-radius:10px;overflow:auto;position:relative;color:#fff;box-shadow:0 18px 55px #000b}
.product-visual{height:41%;min-height:285px;position:relative;background:#0d0d0d;overflow:hidden}
.product-visual>img{width:100%;height:100%;object-fit:cover;display:block}
.product-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#000a 0%,transparent 27%,transparent 60%,#0009 100%);pointer-events:none}
.product-top{position:absolute;z-index:2;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:13px 15px;color:#fff}
.product-nav{font-size:38px;font-weight:200;line-height:1;flex:none}
.product-brand{display:flex;align-items:center;gap:5px;min-width:0;font-family:'Kaushan Script','Brush Script MT',cursive;font-size:16px;white-space:nowrap;text-shadow:0 2px 7px #000}
.product-brand img{height:46px;width:46px;object-fit:contain}.product-brand b{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:16px;color:var(--scarlet);font-weight:900}
.product-photo-copy{position:absolute;z-index:2;left:22px;bottom:25px;font-family:'Kaushan Script','Brush Script MT',cursive;font-size:25px;line-height:1.08;transform:rotate(-5deg);text-shadow:0 2px 7px #000}
.product-photo-copy:after{content:'';display:block;height:5px;background:var(--scarlet);margin:10px 0 0;transform:rotate(-4deg)}
.product-info{padding:18px 22px 24px;background:#171718;min-height:50%;display:flex;flex-direction:column}
.product-info h2{font-size:32px;line-height:1.08;margin:0 0 4px;font-weight:790;color:#fff}
.product-cn{font-size:19px;font-weight:700;color:#fff}.product-desc{color:#b9b9ba;font-size:14px;margin:10px 0 18px}
.product-options{border:1px solid #444;border-radius:18px;padding:17px;margin-bottom:16px;background:#1d1d1e}
.option-title{font-size:15px;font-weight:760;margin:0 0 10px}
.product-options .method{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:0}
.product-options .method button{display:grid;grid-template-columns:auto 1fr;column-gap:8px;align-content:center;text-align:left;min-height:67px;border:1px solid #555;background:#202021;color:#fff;border-radius:11px;padding:8px 11px;font-size:14px}
.product-options .method button.active{border:2px solid #f52b3d;background:#b50a20;color:#fff}
.product-options .method button>span{grid-row:span 2;font-size:26px;align-self:center}.product-options .method button strong{font-size:19px;line-height:1.2}.product-options .method button small{font-size:11px;color:#e8e8e8}
.product-options .method.hide{display:none!important}
.product-config{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}
.product-config .field label,.product-note label{color:#fff;font-size:14px;font-weight:700;margin-bottom:5px}.product-note label span{font-weight:400;color:#aaa}
.item-qty{display:grid;grid-template-columns:39px 1fr 39px;border:1px solid #5c5c5c;border-radius:10px;overflow:hidden;height:47px}
.item-qty button{border:0;background:#2b2b2c;color:#fff;font-size:23px}.item-qty input{min-width:0;width:100%;height:100%;border:0!important;background:#252526!important;color:#fff;text-align:center;padding:0!important;appearance:textfield}
.item-qty input::-webkit-inner-spin-button,.item-qty input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.product-config select,.product-note input{background:#29292a!important;color:#fff!important;border:1px solid #5b5b5b!important;min-height:47px!important;width:100%}
.product-note{margin-top:15px}.product-note input::placeholder{color:#aaa}
.product-buy{margin-top:auto;display:grid;grid-template-columns:1fr 1.6fr;align-items:center;gap:12px;padding:15px 0 0;background:#171718}
.product-buy>div span{display:block;color:#aaa;font-size:11px;text-transform:uppercase}.product-buy strong{font-size:22px;white-space:nowrap}.product-buy button{min-height:55px;font-size:17px;border-radius:10px}
.product-buy button span{margin-left:10px}
.admin{background:#171718;color:#fff}.admin-nav{background:#131313}.admin-main{background:#181819}
.admin-title h1,.panel-head h2,.stat strong{color:#fff}.admin-brand{color:#fff}.admin-brand img{border-radius:0;object-fit:contain}
.panel,.stat{background:#222223;border-color:#414141;color:#fff}.panel-head{border-color:#414141}
.admin-table th,.admin-table td{border-color:#444}.admin-table th{color:#aaa}.order-card{border-color:#4a4a4a}.order-meta,.order-items{color:#ccc}
.tabs button{background:#343435;color:#ddd}.tabs button.active{background:var(--scarlet)}.status{color:#693c00}
.price-edit{color:#fff;background:#303031;border-color:#666}
.modal:not(#itemModal) .modal-box{background:#242425;color:#fff}.modal:not(#itemModal) .field input{background:#303031;color:#fff;border-color:#555}
.orders-mode .section-head{height:auto;display:flex;align-items:center;padding:18px 0 8px}.orders-mode .section-head h2{position:static;width:auto;height:auto;clip:auto;overflow:visible;color:#fff;font-size:20px}.orders-mode .section-head p{position:static;width:auto;height:auto;clip:auto;overflow:visible;font-size:12px;color:#aaa}.orders-mode .filters,.orders-mode .order-strip{display:none}.orders-mode .panel{width:100%}
@media(max-width:850px){.menu-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.hero{height:300px}.item-photo{aspect-ratio:1.45}}
@media(max-width:600px){
  .shell{width:100%;max-width:none}.topbar{height:76px;padding:0 10px;gap:4px}.brand{gap:1px;flex:1;min-width:0}.brand-logo{width:67px;height:67px;margin-left:-6px}.brand-name{gap:4px;padding-bottom:13px}.brand-name span{font-size:clamp(15px,4.6vw,22px);max-width:45vw;overflow:hidden;text-overflow:ellipsis}.brand-name strong{font-size:clamp(17px,5vw,23px)}.brand-name small{font-size:7px;letter-spacing:2px;left:2px}.top-actions{gap:0}.top-icon{width:37px;height:40px;padding:7px}.top-icon svg{width:23px;height:23px}
  .hero{height:253px;min-height:0;margin:0}.hero>img{object-position:64% center}.hero:after{background:linear-gradient(90deg,#070707ac 0%,#0808082a 58%,transparent 100%),linear-gradient(0deg,#06060666,transparent 60%)}.hero-copy{top:28px;left:18px;padding:0}.hero h1{font-size:clamp(20px,6.1vw,26px);max-width:240px}.hero-brush{width:165px;height:6px;margin:10px 0 0 7px}.hero-side{right:12px;bottom:15px;font-size:15px}
  .content{padding:0 12px calc(104px + env(safe-area-inset-bottom))}.filters{margin:0 -3px;padding:7px 0 8px;gap:3px;justify-content:flex-start}.filter{min-width:70px;max-width:none;min-height:69px;flex:1;padding:5px 3px;font-size:11px;border-radius:8px}.filter-icon{height:29px}.filter-icon svg{width:24px;height:24px}
  .order-strip{gap:7px;padding:8px 0 10px;margin-bottom:10px}.order-strip .field label{font-size:10px}.order-strip .seg button{font-size:10px;padding:8px 3px}.order-strip .table-field{min-width:90px;width:90px}.order-strip .field select{font-size:11px;min-height:43px;padding:6px}.order-strip .seg{min-height:37px}
  .menu-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.item{border-radius:8px}.item-photo{aspect-ratio:1.55}.item-info{padding:8px 10px 10px;min-height:73px}.item h3{font-size:13px;margin-bottom:2px}.item .cn{font-size:11px}.price{font-size:12px;margin-top:4px}.item-line{padding-right:38px}.item-foot{bottom:8px;right:8px}.plus{width:34px;height:34px;font-size:25px}
  .cart-fab{width:calc(100% - 24px);bottom:calc(9px + env(safe-area-inset-bottom));min-height:62px;padding:6px 6px 6px 16px;border-radius:16px}.cart-fab-main svg{width:29px;height:29px}.cart-count{left:31px;top:0}.cart-fab-action{min-width:100px;padding:12px 14px;font-size:13px;border-radius:12px}.cart-fab-label{font-size:13px}.cart-fab-label small{font-size:11px}
  #itemModal .product-sheet{width:100%;height:100dvh;border-radius:0;max-height:none}.product-visual{height:38dvh;min-height:245px;max-height:360px}.product-info{padding:15px 16px calc(17px + env(safe-area-inset-bottom))}.product-info h2{font-size:30px}.product-options{padding:14px;border-radius:15px}.product-buy{position:sticky;bottom:0;padding-bottom:5px}.product-buy strong{font-size:19px}.product-buy button{font-size:15px;min-height:51px}.product-top{padding:8px 9px}.product-brand{font-size:14px}.product-brand img{height:42px;width:42px}
  .overlay{align-items:stretch}.drawer{height:100dvh;max-height:none;width:100%;border-radius:0;padding:16px 16px calc(18px + env(safe-area-inset-bottom))}.drawer-head h2{font-size:22px}
  .admin{min-height:calc(100vh - 76px)}.admin-nav{top:76px}.admin-main{padding:16px 12px 32px}.admin-title h1{font-size:20px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.order-card{grid-template-columns:1fr}.panel-head{flex-wrap:wrap}.admin-table{min-width:610px}.table-wrap{overflow:auto}
}
@media(max-width:360px){.brand-logo{width:55px;height:55px}.brand-name span{font-size:14px}.brand-name strong{font-size:16px}.top-icon{width:33px}.filter{min-width:65px;font-size:10px}.hero{height:235px}.hero h1{font-size:20px}.hero-side{font-size:13px}.item h3{font-size:12px}.product-options .method button{padding:7px;font-size:13px}.product-buy{grid-template-columns:1fr 1.5fr}}

.promotions{padding:20px 24px 22px;background:#111213;border-bottom:1px solid #303031;color:#fff}
.promotions-head{display:flex;justify-content:space-between;align-items:end;gap:12px;margin-bottom:13px}
.promotions-kicker{display:block;color:#f14a57;font-size:10px;font-weight:800;letter-spacing:1.5px;margin-bottom:4px}
.promotions-head h2{margin:0;font-size:21px;line-height:1.2;font-weight:800}.promotions-head h2 small{font-size:13px;font-weight:500;color:#a6a6a8;margin-left:5px}
.promotions-count{font-size:12px;color:#aaa;white-space:nowrap;padding-bottom:2px}.promotions-empty{color:#aaa;font-size:13px;margin:4px 0 0}
.promotions-track{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.promotion-card{height:168px;min-width:0;position:relative;overflow:hidden;border:1px solid #49494a;border-radius:7px;padding:0;text-align:left;color:#fff;background:#252526}
.promotion-card:hover{border-color:#d32a39}.promotion-card img{display:block;width:100%;height:100%;object-fit:cover}.promotion-shade{position:absolute;inset:0;background:linear-gradient(180deg,#0007,transparent 36%,#000d 100%)}
.promotion-state{display:inline-flex;align-items:center;justify-content:center;min-height:25px;padding:4px 8px;background:#343436;color:#e1e1e1;border:1px solid #656567;border-radius:4px;font-size:11px;font-weight:750;white-space:nowrap}
.promotion-state.active{background:#ae1022;color:#fff;border-color:#f33b4e}.promotion-state.scheduled{background:#79502c;color:#fff;border-color:#b38652}.promotion-state.draft{background:#414146}
.promotion-card>.promotion-state{position:absolute;top:9px;left:9px;z-index:1}
.promotion-copy{position:absolute;z-index:1;left:12px;right:12px;bottom:11px;display:grid;gap:1px}.promotion-copy strong{font-size:17px;line-height:1.15}.promotion-copy>span{font-size:13px;font-weight:650;color:#fff}.promotion-copy small{font-size:11px;color:#ddd}
.promotion-overlay{position:fixed;inset:0;z-index:30;background:#000d;display:grid;place-items:center;padding:16px}
.promotion-dialog{width:min(510px,100%);max-height:calc(100dvh - 32px);overflow:auto;position:relative;background:#202021;border:1px solid #555;border-radius:7px;color:#fff;box-shadow:0 22px 70px #000c}
.promotion-dialog>img{width:100%;height:250px;display:block;object-fit:cover}.promotion-close{position:absolute;z-index:2;top:10px;right:10px;width:36px;height:36px;border:0;border-radius:4px;background:#171717d9;color:#fff;font-size:25px;line-height:1}
.promotion-dialog-body{padding:18px 20px 22px}.promotion-dialog-body h2{font-size:24px;margin:10px 0 7px}.promotion-dialog-body strong{font-size:17px;color:#fff}.promotion-dialog-body p{font-size:14px;color:#ccc;line-height:1.5;margin:12px 0}.promotion-dialog-body small{color:#aaa;font-size:12px}
.promo-admin-list{display:grid;gap:0;border-top:1px solid #454545}.promo-admin-row{display:grid;grid-template-columns:80px minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:13px 0;border-bottom:1px solid #454545}.promo-admin-row>img{width:80px;height:67px;object-fit:cover;border-radius:4px}.promo-admin-info{min-width:0;display:grid;gap:3px}.promo-admin-info strong{font-size:15px}.promo-admin-info span{font-size:13px;color:#ddd}.promo-admin-info small{font-size:11px;color:#aaa}.promo-admin-actions{display:flex;gap:6px}
.promo-editor{padding:20px}.promotion-editor-head{position:relative;margin-bottom:14px}.promotion-editor-head h2{margin:0;font-size:22px}.promo-editor .promotion-close{top:-4px;right:-4px}
.promotion-editor-fields{display:grid;gap:11px}.promotion-editor-fields label{display:grid;gap:5px;color:#ddd;font-size:12px;font-weight:700}.promotion-editor-fields input,.promotion-editor-fields select,.promotion-editor-fields textarea{width:100%;min-width:0;min-height:39px;background:#2d2d2e;border:1px solid #636363;border-radius:4px;padding:8px;color:#fff}.promotion-editor-fields textarea{resize:vertical}.promotion-date-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.promo-editor-error{margin:0;color:#ff8d98;font-size:12px}.promotion-editor-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:17px}
@media(max-width:600px){.promotions{padding:17px 12px 15px}.promotions-head h2{font-size:18px}.promotions-head h2 small{font-size:11px}.promotions-count{font-size:10px}.promotions-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin-right:-12px;padding-right:12px}.promotions-track::-webkit-scrollbar{display:none}.promotion-card{width:235px;flex:0 0 235px;height:148px;scroll-snap-align:start}.promotion-copy strong{font-size:15px}.promotion-copy>span{font-size:12px}.promo-admin-row{grid-template-columns:62px minmax(0,1fr) auto;gap:9px}.promo-admin-row>img{width:62px;height:62px}.promo-admin-row>.promotion-state{grid-column:3;grid-row:1}.promo-admin-actions{grid-column:2/-1;justify-content:flex-start}.promo-editor{padding:16px}.promotion-dialog>img{height:210px}}

.insights-note{margin:0 0 18px;padding:10px 12px;border-left:3px solid #e42d35;background:#242426;color:#c9c9c9;font-size:12px;line-height:1.5}
.insight-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 22px;border-block:1px solid #3b3b3d;padding:16px 0}
.insight-stat{min-width:0;border-right:1px solid #3b3b3d;padding-right:10px}.insight-stat:last-child{border:0}.insight-stat span{display:block;font-size:12px;color:#aaa}.insight-stat strong{display:block;margin-top:5px;font-size:23px;color:#fff;line-height:1.2;overflow-wrap:anywhere}
.insight-section{margin:0 0 28px}.insight-section-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;border-bottom:1px solid #48484a;padding:0 0 10px;margin-bottom:10px}.insight-section-head h2{margin:0;font-size:17px}.insight-section-head>span{color:#aaa;font-size:12px;text-align:right}
.insight-table{min-width:760px}.insight-table td{vertical-align:middle}.insight-table td strong,.insight-table td small{display:block}.insight-table td small{font-size:11px;color:#aaa;margin-top:3px;max-width:240px;overflow-wrap:anywhere}.insight-table td a,.insight-observations a{color:#ff898c}.insight-table em{font-size:10px;color:#ffc18d;font-style:normal;white-space:nowrap}.insight-table .btn{white-space:nowrap}
.insight-empty{padding:24px 12px;color:#bcbcbc;font-size:13px;border-bottom:1px solid #3d3d3f}.insight-controls{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 16px}.insight-segment{display:inline-flex;gap:2px;background:#242426;border:1px solid #454547;padding:3px;border-radius:6px}.insight-segment button{border:0;background:transparent;color:#ddd;padding:7px 12px;border-radius:4px;font-size:13px}.insight-segment button.active{background:#e52530;color:#fff;font-weight:750}
.insight-cost{width:90px;max-width:100%;border:1px solid #666;background:#222;color:#fff;border-radius:4px;padding:7px}.insight-floor{color:#bbb;font-size:12px;white-space:nowrap}.insight-floor input{width:56px;background:#242426;color:#fff;border:1px solid #666;border-radius:4px;padding:6px}.insight-explain{font-size:12px;line-height:1.5;color:#aaa;margin:10px 0 16px}.insight-recommendations{display:grid;gap:0}.insight-recommendation{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 0;border-bottom:1px solid #414143}.insight-recommendation h3{font-size:16px;margin:6px 0}.insight-recommendation p{font-size:13px;color:#c8c8c8;margin:0;line-height:1.5;max-width:680px}.insight-recommendation .btn{flex:none}.insight-tag{font-size:10px;font-weight:800;color:#ff777d;letter-spacing:0}.insight-observations{display:grid}.insight-observations>div{display:grid;grid-template-columns:1fr 2fr 1.5fr;gap:12px;padding:12px 0;border-bottom:1px solid #414143;font-size:13px}.insight-observations span{color:#ddd}.insight-observations small{font-size:11px;color:#aaa}
.insight-overlay{position:fixed;inset:0;z-index:31;background:#000d;display:grid;place-items:center;padding:15px}.insight-dialog{width:min(480px,100%);max-height:calc(100dvh - 30px);overflow:auto;background:#222224;color:#fff;border:1px solid #555;border-radius:8px;padding:20px}.insight-dialog-head{display:flex;justify-content:space-between;align-items:center}.insight-dialog h2{font-size:20px;margin:0 0 16px}.insight-close{background:none;border:0;color:#fff;font-size:25px}.insight-form{display:grid;gap:12px}.insight-form label{display:grid;gap:5px;color:#ddd;font-size:13px}.insight-form input,.insight-form select,.insight-form textarea{width:100%;min-width:0;background:#171718;color:#fff;border:1px solid #606063;border-radius:5px;padding:10px}.insight-dialog-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:18px}.insight-confirm p{font-size:13px;color:#bbb}
@media(max-width:600px){.admin-nav{overflow-x:auto;scrollbar-width:none}.admin-nav::-webkit-scrollbar{display:none}.admin-nav .nav-btn{flex:0 0 auto;width:auto;white-space:nowrap}.admin-title{align-items:flex-start}.admin-title .btn{font-size:12px;white-space:nowrap}.insight-stats{gap:8px}.insight-stat strong{font-size:17px}.insight-section-head{align-items:flex-start}.insight-section-head>span{max-width:45%}.insight-recommendation{align-items:flex-start;flex-direction:column}.insight-observations>div{grid-template-columns:1fr;gap:4px}.insight-table{min-width:750px}}

.loyalty-view{min-height:calc(100dvh - 76px);background:#151516;color:#fff;padding:28px 22px 70px}.loyalty-inner{max-width:840px;margin:auto}.loyalty-head{display:flex;align-items:center;gap:14px;border-bottom:1px solid #39393b;padding-bottom:15px}.loyalty-head>div{flex:1}.loyalty-head span{color:#f55c62;font-size:10px;font-weight:800}.loyalty-head h1{font-size:23px;margin:1px 0 0}.loyalty-head img{width:54px;height:54px;object-fit:contain}.loyalty-back{border:0;background:transparent;color:#fff;font-size:38px;line-height:1;width:36px;height:44px}.loyalty-hero{display:flex;justify-content:space-between;align-items:end;gap:14px;padding:28px 0 23px;border-bottom:1px solid #39393b}.loyalty-hero>div>span{font-size:11px;letter-spacing:1px;color:#ff6970;font-weight:800}.loyalty-hero strong{display:block;font-size:60px;line-height:1.1;margin:6px 0;font-weight:800}.loyalty-hero p{font-size:13px;color:#bbb;margin:0}.loyalty-rule{color:#fff;background:#c71928;border-radius:4px;padding:7px 10px;font-size:12px;font-weight:800;white-space:nowrap}.loyalty-phone{margin:18px 0 8px}.loyalty-phone label{display:block;color:#bbb;font-size:12px;margin-bottom:7px}.loyalty-phone>div{display:flex;gap:8px}.loyalty-phone input{flex:1;min-width:0;border:1px solid #555;background:#242426;color:#fff;border-radius:5px;padding:11px}.loyalty-caveat{font-size:11px;color:#aaa;line-height:1.5;max-width:720px;margin:8px 0 28px}.loyalty-section{margin-top:24px}.loyalty-section-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px;border-bottom:1px solid #48484a;padding-bottom:9px;margin-bottom:12px}.loyalty-section-head h2{font-size:18px;margin:0}.loyalty-section-head span{font-size:11px;color:#aaa}.loyalty-rewards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.loyalty-reward{border:1px solid #444;background:#202021;border-radius:7px;padding:17px;display:flex;align-items:end;justify-content:space-between;gap:12px;min-height:132px}.loyalty-reward h3{font-size:15px;margin:8px 0 3px}.loyalty-reward p{font-size:12px;color:#f17a7f;margin:0;font-weight:750}.loyalty-reward-icon{font-size:26px;line-height:1}.loyalty-reward .btn{white-space:nowrap;font-size:12px}.loyalty-reward .btn:disabled{background:#444;border-color:#444;color:#aaa;cursor:not-allowed}.loyalty-empty{padding:18px 0;color:#bcbcbc;font-size:13px}.loyalty-history>div{display:flex;justify-content:space-between;gap:8px;padding:11px 0;border-bottom:1px solid #39393b}.loyalty-history strong,.loyalty-history small{display:block}.loyalty-history strong{font-size:13px}.loyalty-history small{font-size:11px;color:#aaa;margin-top:3px}.loyalty-history b{color:#f06e74}.loyalty-history>p{font-size:13px;color:#aaa}.loyalty-overlay{position:fixed;inset:0;z-index:35;background:#000d;display:grid;place-items:center;padding:16px}.loyalty-dialog{width:min(410px,100%);background:#242425;color:#fff;border:1px solid #555;border-radius:8px;padding:20px}.loyalty-dialog h2{font-size:19px;margin:0 0 10px}.loyalty-dialog p{font-size:13px;color:#ccc;line-height:1.5}.loyalty-dialog>div{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}
.loyalty-phone .btn{white-space:nowrap}
.loyalty-search,.loyalty-admin-rewards input,.loyalty-add-reward input{background:#242426;color:#fff;border:1px solid #636365;border-radius:4px;padding:8px 9px;min-width:0}.loyalty-search{width:min(260px,48%);font-size:12px}.loyalty-admin-redemptions>div{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #414143}.loyalty-admin-redemptions strong,.loyalty-admin-redemptions small{display:block}.loyalty-admin-redemptions strong{font-size:13px}.loyalty-admin-redemptions small{color:#aaa;font-size:11px;margin-top:3px}.loyalty-admin-actions{display:flex;gap:6px}.loyalty-admin-rewards form{display:flex;align-items:center;gap:9px;padding:9px 0;border-bottom:1px solid #414143}.loyalty-admin-rewards form>input{flex:1}.loyalty-admin-rewards label{font-size:12px;color:#bbb;white-space:nowrap}.loyalty-admin-rewards label input{width:76px}.loyalty-admin-rewards .loyalty-checkbox input{width:auto}.loyalty-add-reward{display:flex;gap:8px;margin-top:14px}.loyalty-add-reward input:first-child{flex:1}.loyalty-add-reward input:nth-child(2){width:90px}.loyalty-add-reward button{white-space:nowrap}
@media(max-width:600px){.loyalty-view{padding:16px 14px 60px}.loyalty-head h1{font-size:21px}.loyalty-head img{width:46px;height:46px}.loyalty-hero strong{font-size:53px}.loyalty-rewards{grid-template-columns:1fr}.loyalty-reward{min-height:105px}.loyalty-admin-redemptions>div{grid-template-columns:1fr auto}.loyalty-admin-actions{grid-column:1/-1}.loyalty-admin-rewards form{flex-wrap:wrap}.loyalty-admin-rewards form>input{flex-basis:100%}.loyalty-add-reward{flex-wrap:wrap}.loyalty-add-reward input:first-child{flex-basis:100%}}
.admin-page #searchSwitch,.admin-page #menuSwitch,.admin-page #navPopover{display:none!important}
.promo-confirm{padding:22px;width:min(390px,100%)}.promo-confirm h2{margin:0 0 10px;font-size:21px}.promo-confirm p{margin:0;color:#c9c9c9;font-size:14px;line-height:1.5}
