/* Shared Yume finish; the same routes, forms and management actions remain. */
:root{--red:#ff0026;--bg:#101010;--panel:#191715;--line:#403830;--muted:#bcb5ad;--gold:#f1ce90}
body{background:var(--bg)}
.primary{background:linear-gradient(135deg,#ff1237,#d90022);box-shadow:0 5px 18px #d9002218}
.primary:hover{background:#e90026}.secondary{border-color:#51473e;background:#211c18}
.panel{background:linear-gradient(130deg,#201c18,#151414);border-color:var(--line);border-radius:20px}
input,select,textarea{background:#121212;border-color:#51473e;border-radius:13px}
input:focus,select:focus,textarea:focus{outline:2px solid var(--gold);outline-offset:2px}
.field-hint{display:block;font-size:12px;line-height:1.4;color:#c6b8a3;margin:7px 0 0;letter-spacing:0}
body:not(.menu-page)>header{max-width:1100px;display:grid;grid-template-columns:minmax(0,1fr) auto;padding:18px 24px 12px;gap:12px;border-color:var(--line);background:radial-gradient(ellipse at top left,#351616,transparent 65%)}
body:not(.menu-page) .brand{letter-spacing:-.3px;font-size:23px;gap:12px;min-width:0}
body:not(.menu-page) .brand #brand-logo{width:50px;height:50px;flex:0 0 50px}
body:not(.menu-page) #brand-name{line-height:1.05;max-width:145px}
body:not(.menu-page) #header-service{grid-column:1/-1;grid-row:2;border:0;padding:10px 0 0;margin:0;border-top:1px solid #403830}
body:not(.menu-page) .header-status{display:flex;align-items:center;flex-wrap:wrap;gap:6px 16px;padding:0;font-size:12px}
body:not(.menu-page) .header-status>span{font-weight:600}.header-status small{font-size:12px}
body:not(.menu-page) .header-status .text-link{font-size:12px;min-height:30px;padding:2px 0;margin-left:auto}
body:not(.menu-page) .bag-button{grid-column:2;grid-row:1;display:flex;align-items:center;padding:10px 12px;gap:7px;background:#231a17;border-color:#674c39;border-radius:16px;font-size:12px;text-transform:none}
body:not(.menu-page) .bag-button:before{content:none}.bag-prefix{display:none!important}
body:not(.menu-page) .bag-icon{display:block;width:24px;height:24px}.bag-button b{margin:0!important}
body:not(.menu-page) main{max-width:1100px;padding:24px 24px 130px}
.page-heading{margin-bottom:22px}.page-heading h1{font-size:clamp(29px,5vw,43px);letter-spacing:-1px;margin:10px 0}
.page-heading p{max-width:580px;line-height:1.6}.page-heading .back{display:block;width:max-content;padding:7px 12px;margin:0 0 18px;background:#211c18;border:1px solid var(--line);border-radius:20px;font-size:13px;min-height:36px}
.empty{background:radial-gradient(ellipse at top,#302118,#161414 70%);border:1px solid var(--line);padding:36px 22px;border-radius:22px}
.empty h2,.empty h3{font-size:24px}.empty p{max-width:360px;margin:14px auto 24px;line-height:1.6}
.empty-icon{display:grid;place-items:center;width:68px;height:68px;background:#30221d;color:var(--gold);border:1px solid #715036;border-radius:50%;margin:0 auto 22px}
.empty-icon svg{width:32px;height:32px}.bag-line{border-color:var(--line)}.line-tools{row-gap:10px}.bag-footer{margin-top:12px}
.order-card{text-align:left;border-color:#514235;padding:24px}.order-card h3{font-size:23px;margin-top:16px}.order-card .badge{border-radius:8px;background:#33251a;color:var(--gold)}
.timeline li.current>span{background:var(--red)}.timeline li.current strong{color:var(--gold)}
.management-account{flex-wrap:wrap;gap:8px 16px;padding:12px 16px;background:#211b16;border:1px solid var(--line);border-radius:14px}
.management-account>span{flex:1;min-width:160px}.management-account .text-link{font-size:13px;min-height:36px}
.admin-tabs{position:sticky;top:0;z-index:12;background:#101010f5;backdrop-filter:blur(12px);padding:12px 0;border-bottom:1px solid var(--line);scrollbar-width:thin}
.admin-tabs button{font-size:13px;border-radius:24px}.admin-tabs .selected{background:var(--red)}
.order-stats>div{background:linear-gradient(140deg,#2c2018,#171514);border-color:#514235;border-radius:18px}
.order-stats strong{color:var(--gold)}.managed-order{border-color:var(--line);border-radius:14px;background:#161413}
.admin-product{padding-block:18px;border-color:var(--line)}.admin-product strong{font-size:15px}.admin-product .secondary{min-height:42px;font-size:13px}
.auth-panel{margin:24px auto;padding:28px}.auth-panel .primary{min-height:50px}.auth-panel .small{line-height:1.6}
.checkout-compact{border-radius:20px;background:linear-gradient(130deg,#201c18,#151414)}
.checkout-compact .field-hint{font-size:11px;line-height:1.4;margin-top:6px}
.checkout-compact .checkout-submit .primary{background:#22824e;box-shadow:none}
.checkout-compact .copy-pix{background:#24201b;border-color:#64513b;color:var(--gold)}
.mobile-nav,.menu-page .mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:40;max-width:1100px;margin:auto;background:#141210f5;backdrop-filter:blur(12px);border-color:#443b32;min-height:78px;padding:10px 0 max(10px,env(safe-area-inset-bottom));justify-content:space-around;gap:0}
.mobile-nav button,.menu-page .mobile-nav button{display:flex;flex:1;flex-direction:column;align-items:center;font-size:12px;gap:6px;color:#bcb8b2;min-height:54px}
.mobile-nav .nav-icon,.menu-page .mobile-nav .nav-icon{height:28px}.mobile-nav svg,.menu-page .mobile-nav svg{width:28px;height:28px}
.mobile-nav .active,.menu-page .mobile-nav .active{color:var(--red)}.mobile-nav b{background:var(--red);color:#fff}
/* Native vertical scrolling and pinch zoom stay available over the posters. */
.promotions,.promotions .promotion-slide{touch-action:pan-y pinch-zoom}
.promotions .promotion-slide{user-select:none;-webkit-user-select:none;transform:translateX(var(--swipe-x,0));animation:none!important}
.promotions .promotion-slide img{-webkit-user-drag:none}.promotions.is-dragging .promotion-slide{cursor:grabbing}
.menu-page .hero-dots{gap:4px;bottom:1.2%}.menu-page .hero-dots button{width:36px;height:36px}
.menu-page .hero-dots .hero-pause{height:32px;width:32px;bottom:2px;left:calc(100% + 8px)}
/* Category links navigate the existing catalog, grouped in saved order. */
.category-navigation{position:sticky;top:0;z-index:20;padding:10px 0 0;background:#101010f7;backdrop-filter:blur(12px)}
.category-rail{position:relative;display:flex;align-items:flex-start;gap:4px;padding-right:31px}
.menu-page .category-nav{display:flex;position:static;z-index:0;align-items:stretch;justify-content:flex-start;flex:1;min-width:0;margin:0;padding:3px 0 6px;gap:6px;background:transparent;border:0;scrollbar-width:none;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity}
.menu-page .category-nav::-webkit-scrollbar{display:none}
.menu-page .category-nav button{display:flex;flex-direction:column;align-items:center;gap:8px;flex:0 0 calc((100% - 18px)/4);min-width:0;white-space:normal;border:0;border-radius:12px;background:transparent;padding:0 1px;color:#f6f0e7;font-size:12px;line-height:1.25;scroll-snap-align:start}
.menu-page .category-nav button.active{color:#fff;background:transparent;border:0}
.category-icon{display:grid;place-items:center;width:min(100%,54px);aspect-ratio:1;border-radius:50%;border:1px solid #756144;background:radial-gradient(ellipse at top left,#211c14,#14120e);color:#e9c889}
.category-icon svg{width:73%;height:73%}.category-label{max-width:100%;min-height:30px}
.category-nav .active .category-icon{background:linear-gradient(135deg,#f83142,#df0018);border-color:#ed5963;color:white}
.category-arrow{position:absolute;top:8px;right:0;display:grid;place-items:center;width:29px;height:44px;border:0;background:transparent;color:#e9c889;padding:0;z-index:2}
.category-arrow svg{width:28px;height:28px;border:1px solid #987644;border-radius:50%;background:#211b11;fill:none;stroke:currentColor;stroke-width:2.6;padding:5px}
.category-arrow.previous{right:auto;left:-13px;filter:drop-shadow(3px 0 3px #000)}
.category-arrow:disabled{visibility:hidden}.category-arrow:focus-visible,.category-nav button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.menu-count{padding:12px 0 4px;font-size:12px;color:var(--muted)}
.menu-category{padding-top:22px;margin-bottom:18px;scroll-margin-top:112px}
.category-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}
.category-heading h2{font-size:clamp(23px,4vw,30px);letter-spacing:-.4px}.category-heading>span{color:var(--gold);font-size:12px;white-space:nowrap}
.category-empty{font-size:14px;padding:16px;border:1px solid var(--line);border-radius:14px}
@media(max-width:760px){
 body:not(.menu-page)>header{padding:14px 16px 10px;gap:10px}
 body:not(.menu-page) .brand{font-size:20px;gap:9px}body:not(.menu-page) .brand #brand-logo{width:43px;height:43px;flex-basis:43px}
 body:not(.menu-page) #brand-name{max-width:110px}body:not(.menu-page) .bag-button{padding:9px;font-size:12px}
 body:not(.menu-page) #header-service{padding-top:8px}.header-status small{font-size:11px}body:not(.menu-page) .header-status .text-link{margin-left:0}
 body:not(.menu-page) main{padding:20px 16px 120px}.page-heading h1{font-size:30px}.page-heading .back{margin-bottom:16px}
 .panel{border-radius:18px}.order-stats{gap:8px}.order-stats>div{padding:16px 10px}.order-stats>div strong{font-size:28px}.order-stats>div span{font-size:11px}
 .admin-tabs{gap:8px}.admin-tabs button{font-size:12px}.auth-panel{padding:22px}.admin-product{flex-wrap:wrap}.admin-product>div:nth-child(2){min-width:130px}
 .checkout-page .mobile-nav{display:none}.checkout-page main{padding-bottom:24px}.checkout-compact>.panel{padding:18px 16px}
 .checkout-compact .form-grid{grid-template-columns:1fr}.checkout-compact .form-grid:has(select){grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}
 .checkout-compact input:not([type=checkbox]),.checkout-compact select{min-height:46px}.checkout-compact label{font-size:13px;margin:10px 0}
 .empty{padding:30px 22px}.empty h2,.empty h3{font-size:23px}
}
@media(min-width:761px){.menu-page .mobile-nav{max-width:920px}.mobile-nav button{flex:0 1 220px}.menu-page .category-nav{gap:14px}.menu-page .category-nav button{flex-basis:calc((100% - 84px)/7);font-size:13px}.category-icon{width:min(100%,60px)}.category-arrow{top:11px}}
@media print{body:not(.menu-page)>header,.mobile-nav,.menu-page .mobile-nav,.admin-tabs{display:none!important}.panel{background:white;color:black}}
