:root{
  --brand:#9a5b12;--brand-2:#b7791f;--brand-soft:#f8f1e8;--ink:#171717;--text:#3f3f46;--muted:#71717a;--line:#e7e5e4;--bg:#f6f3ef;--card:#fff;--green:#15803d;--red:#b91c1c;--blue:#1d4ed8;--shadow:0 10px 28px rgba(24,24,27,.055);--radius:14px
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--text);background:var(--bg);line-height:1.5;font-size:14px;font-weight:400}a{color:var(--brand);text-decoration:none}img{max-width:100%;display:block}h1,h2,h3{color:var(--ink);letter-spacing:-.015em;font-weight:500}h1{font-size:clamp(24px,3vw,34px);line-height:1.16;margin:0 0 8px}h2{font-size:18px;margin:0 0 12px}h3{font-size:15px;margin:0}p{color:var(--muted);margin:0 0 10px}b,strong{font-weight:500}small,.muted{color:var(--muted);font-size:12px}.wrap{max-width:1220px;margin:0 auto;padding:22px}.admin-wrap{max-width:none}.grid{display:grid;gap:16px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.products{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px}.compact.products{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));max-height:calc(100vh - 220px);overflow:auto;padding-right:4px}.wide,.table-wrap{overflow:auto}.center{text-align:center}.qr{max-width:340px;margin:16px auto}.qr-mini{width:82px;height:82px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:6px}.copy-input{min-width:240px;font-size:12px}.nav-mark{min-width:32px;height:24px;border:1px solid rgba(255,255,255,.12);border-radius:7px;display:inline-flex;align-items:center;justify-content:center;font-size:10px;color:#d4d4d8;background:rgba(255,255,255,.06)}
.logo-dot{width:36px;height:36px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;background:#1c1917;color:#fff;font-weight:500}.brand{display:flex;align-items:center;gap:10px;color:var(--ink);font-weight:500;font-size:16px}.site-header{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border-bottom:1px solid rgba(231,229,228,.95)}.site-nav{max-width:1220px;margin:0 auto;padding:11px 22px;display:flex;align-items:center;justify-content:space-between;gap:14px}.site-nav nav{display:flex;align-items:center;gap:3px;flex-wrap:wrap}.site-nav nav a{color:#52525b;font-weight:400;padding:7px 10px;border-radius:9px}.site-nav nav a:hover{background:#fafaf9;color:var(--brand)}.foot{display:flex;justify-content:center;align-items:center;gap:14px;flex-wrap:wrap;border-top:1px solid var(--line);margin-top:42px;padding:22px;color:var(--muted);background:#fff}.foot b{color:var(--ink)}
.hero{position:relative;overflow:hidden;border-radius:18px;background:#fff;padding:38px 34px;margin:8px 0 24px;box-shadow:var(--shadow);border:1px solid rgba(154,91,18,.10)}.hero:before{content:'';position:absolute;right:-100px;top:-100px;width:260px;height:260px;border-radius:50%;background:rgba(154,91,18,.055)}.hero h1{max-width:720px}.hero p{font-size:15px;max-width:650px;color:#57534e}.menu-head{display:flex;justify-content:space-between;align-items:flex-end;gap:14px;margin-bottom:12px}.table-banner{background:#fff;border:1px solid #ead9c3;color:#6b3f0c;border-radius:12px;padding:10px 12px;margin:0 0 12px}.menu-tabs{position:sticky;top:60px;z-index:15;background:rgba(246,243,239,.94);padding:8px 0;overflow:auto;flex-wrap:nowrap}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 18px}.pill{white-space:nowrap;border:1px solid var(--line);border-radius:999px;padding:7px 12px;color:#44403c;background:#fff;font-weight:400}.pill:hover{border-color:#d6a15c;background:#fffaf3;color:#7c4a0c}.mini-cart-bar{position:fixed;left:50%;bottom:16px;transform:translateX(-50%);z-index:999;width:min(720px,calc(100% - 28px));margin:0;background:#1c1917;color:#fff;border-radius:14px;padding:10px 12px;box-shadow:0 18px 45px rgba(24,24,27,.28);display:flex;align-items:center;justify-content:space-between;gap:12px}.mini-cart-bar b,.mini-cart-bar span{display:block;color:#fff}.mini-cart-bar span{font-size:12px;color:#e7e5e4}.mini-cart-bar .btn{box-shadow:none}
.card,.product{background:var(--card);border:1px solid rgba(231,229,228,.96);border-radius:var(--radius);box-shadow:var(--shadow)}.card{padding:18px}.product{padding:10px;display:flex;flex-direction:column;gap:8px;transition:.12s ease}.product:hover{transform:translateY(-1px);box-shadow:0 12px 30px rgba(24,24,27,.08)}.product img{height:142px;width:100%;object-fit:cover;border-radius:10px;background:#f4f4f5}.product h3{font-size:14px;line-height:1.28;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.product p{font-size:12px;line-height:1.35;min-height:32px;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.price-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.product b{font-size:15px;color:#733f0a}.product del{color:#a8a29e;font-size:12px}.quick-add{display:flex;margin-top:auto}.quick-add .btn{width:100%;padding:8px 10px}.customize-link{font-size:12px;text-align:center;color:#57534e}.product-detail{display:grid;grid-template-columns:minmax(260px,410px) 1fr;gap:24px}.product-detail img{border-radius:14px;background:#f4f4f5}
.btn,button{appearance:none;border:0;display:inline-flex;align-items:center;justify-content:center;gap:7px;background:var(--brand);color:#fff;border-radius:10px;padding:9px 13px;font-weight:500;cursor:pointer;box-shadow:0 8px 20px rgba(154,91,18,.14);transition:.12s ease}.btn:hover,button:hover{background:#7c4a0c;transform:translateY(-1px)}.btn.ghost,button.ghost{background:#fff;color:var(--brand);border:1px solid rgba(154,91,18,.24);box-shadow:none}.small{padding:6px 9px;border-radius:8px;font-size:12px}.danger{background:var(--red)!important;color:#fff!important;box-shadow:0 8px 18px rgba(185,28,28,.12)!important}.form{display:grid;gap:12px}label{display:grid;gap:6px;font-weight:400;color:#3f3f46}input,select,textarea{width:100%;border:1px solid #d6d3d1;border-radius:10px;padding:9px 11px;font:inherit;background:#fff;outline:none;transition:.12s ease}input:focus,select:focus,textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px rgba(154,91,18,.10)}textarea{min-height:90px}.inline{display:inline-flex!important;gap:9px;align-items:center;flex-wrap:wrap}.checks{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:8px;margin:8px 0}.checks label{display:flex;align-items:center;gap:7px;font-weight:400}.switch{display:flex!important;grid-template-columns:none!important;align-items:center;gap:9px}.switch input{display:none}.switch span{width:38px;height:21px;background:#d6d3d1;border-radius:999px;position:relative;transition:.15s}.switch span:after{content:'';width:15px;height:15px;border-radius:50%;background:#fff;position:absolute;top:3px;left:3px;transition:.15s;box-shadow:0 2px 7px rgba(24,24,27,.12)}.switch input:checked+span{background:var(--brand)}.switch input:checked+span:after{left:20px}
.admin-shell{min-height:100vh;display:grid;grid-template-columns:270px 1fr}.sidebar{position:sticky;top:0;height:100vh;background:#18181b;color:#fff;padding:16px;display:flex;flex-direction:column;gap:14px;overflow:auto}.admin-brand{display:flex;gap:10px;align-items:center;color:#fff;padding:6px}.admin-brand b{display:block;color:#fff;font-weight:500}.admin-brand small{display:block;color:#a1a1aa;margin-top:1px}.side-nav{display:grid;gap:5px}.side-nav a{display:flex;gap:9px;align-items:center;color:#d4d4d8;border-radius:10px;padding:9px 10px;font-weight:400}.side-nav a:hover{background:rgba(255,255,255,.07);color:#fff}.side-card{margin-top:auto;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.05);border-radius:12px;padding:12px;display:grid;gap:4px}.side-card b{color:#fff;font-weight:500}.side-card a{color:#f5c26b;font-weight:400}.admin-main{min-width:0}.admin-topbar{position:sticky;top:0;z-index:20;background:rgba(246,243,239,.92);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:13px 22px}.admin-topbar b{font-size:16px;color:var(--ink);font-weight:500}.admin-topbar small{display:block;color:var(--muted)}.top-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:18px}.page-head p{margin:0}.eyebrow{text-transform:uppercase;letter-spacing:.10em;color:var(--brand);font-weight:500;font-size:11px}.admin-grid{display:grid;grid-template-columns:minmax(280px,390px) minmax(0,1fr);gap:18px;align-items:start}.form-card{position:sticky;top:82px}.data-card{min-width:0}.card-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}.badge{display:inline-flex;padding:4px 8px;background:#f4f4f5;border-radius:999px;color:#52525b;font-weight:400;font-size:12px}.quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.quick-grid a{border:1px solid var(--line);border-radius:12px;padding:14px;color:var(--ink);display:grid;gap:3px}.quick-grid a:hover{border-color:#c89b5c;background:#fffaf3}.pos{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:18px}.pos-toolbar{display:grid;grid-template-columns:1fr 240px;gap:12px;margin-bottom:14px}.pos-summary{position:sticky;top:82px}.positem input[type=number]{padding:8px}.positem{cursor:pointer}.bill{max-width:380px;margin:auto;background:#fff;padding:16px;border:1px solid var(--line)}
table{width:100%;border-collapse:separate;border-spacing:0}th,td{border-bottom:1px solid var(--line);padding:10px 11px;text-align:left;vertical-align:middle}th{font-size:11px;text-transform:uppercase;letter-spacing:.045em;color:#71717a;background:#fafaf9;position:sticky;top:0;font-weight:500}tr:hover td{background:#fffaf3}.row-actions{min-width:145px}.thumb-sm{width:68px;height:50px;object-fit:cover;border-radius:9px;background:#f4f4f5;border:1px solid var(--line)}.upload-box{display:grid;grid-template-columns:110px 1fr;gap:12px;align-items:start;border:1px dashed #d6a15c;background:#fffaf3;border-radius:12px;padding:11px}.upload-preview{width:110px;height:110px;border-radius:10px;object-fit:cover;background:#fff;border:1px solid #ead7ba}.upload-box small{display:block;margin-top:6px}.status{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;font-size:12px;font-weight:400;background:#f4f4f5;color:#52525b}.status-active,.status-completed,.status-paid{background:#dcfce7;color:#166534}.status-hidden,.status-inactive{background:#f4f4f5;color:#71717a}.status-out_of_stock,.status-cancelled{background:#fee2e2;color:#991b1b}.status-pending,.status-confirmed{background:#fef3c7;color:#92400e}.flash{background:#ecfdf5;border:1px solid #bbf7d0;color:#166534;border-radius:12px;padding:11px 14px;margin-bottom:16px;font-weight:400}.error{background:#fef2f2;border-color:#fecaca;color:#991b1b}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin-bottom:18px}.stat{background:#18181b;color:#fff;border-radius:14px;padding:16px;box-shadow:var(--shadow)}.stat.orange{background:#7c4a0c}.stat.red{background:#991b1b}.stat b{display:block;font-size:24px;color:#fff;margin:5px 0;font-weight:500}.stat span{color:rgba(255,255,255,.86);font-weight:400}.stat small{color:rgba(255,255,255,.72)}code{background:#f4f4f5;border-radius:6px;padding:2px 6px}.login{max-width:410px;margin:56px auto}
@media(max-width:1100px){.admin-shell{grid-template-columns:1fr}.sidebar{position:relative;height:auto}.side-nav{grid-template-columns:repeat(auto-fit,minmax(145px,1fr))}.side-card{display:none}.form-card,.pos-summary{position:static}.admin-grid,.grid.two,.grid.three,.product-detail,.pos{grid-template-columns:1fr}.admin-topbar{position:static}.page-head{align-items:flex-start;flex-direction:column}.quick-grid{grid-template-columns:1fr 1fr}.pos-toolbar{grid-template-columns:1fr}.compact.products{max-height:none}}
@media(max-width:700px){body{font-size:13px}.wrap{padding:14px}.site-nav,.admin-topbar{padding:10px 14px;align-items:flex-start;flex-direction:column}.site-nav nav{width:100%;overflow:auto;flex-wrap:nowrap}.site-nav nav a{padding:7px 9px;white-space:nowrap}.hero{padding:28px 18px;border-radius:16px}.hero p{font-size:14px}.menu-head{align-items:flex-start;flex-direction:column}.menu-tabs{top:52px;margin-left:-14px;margin-right:-14px;padding:8px 14px}.admin-grid{gap:14px}.card{padding:14px}.products,.menu-products{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.product{padding:7px;border-radius:11px;gap:6px}.product img{height:84px;border-radius:8px}.product h3{font-size:12px;line-height:1.25}.product p{font-size:10px;line-height:1.25;min-height:25px}.product b{font-size:12px}.product del{font-size:10px}.quick-add .btn{font-size:11px;padding:6px}.customize-link{font-size:10px}.upload-box{grid-template-columns:1fr}.upload-preview{width:100%;height:170px}.quick-grid{grid-template-columns:1fr}.inline{display:grid!important;width:100%}.copy-input{min-width:170px}.mini-cart-bar{left:10px;right:10px;bottom:10px;border-radius:12px}.pos .products,.compact.products{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.positem input[type=number]{font-size:12px;padding:6px}}
@media(max-width:460px){.top-actions{width:100%}.top-actions .btn{flex:1}.stats{grid-template-columns:1fr}.brand{font-size:15px}.logo-dot{width:34px;height:34px}.pill{font-size:12px;padding:6px 10px}th,td{padding:8px 9px}.pos-summary{padding-bottom:72px}}

/* Update 2.1: quantity steppers, checkout online payment, modal CRUD */
.media-submit{display:block;width:100%;padding:0;border:0;background:transparent;box-shadow:none;border-radius:10px;cursor:pointer}.media-submit:hover{transform:none;background:transparent}.product-photo-add{display:block;margin:0}.product-photo-add+.product-info{margin-top:0}.qty-stepper{display:grid;grid-template-columns:38px minmax(58px,1fr) 38px;gap:6px;align-items:center}.qty-stepper input{text-align:center;padding:8px 6px}.qty-stepper.mini{grid-template-columns:30px minmax(40px,1fr) 30px;gap:4px}.qty-stepper.mini input{padding:6px 4px;font-size:12px}.qty-btn{padding:0;min-height:36px;border-radius:9px;font-size:17px;font-weight:600;box-shadow:none}.qty-stepper.mini .qty-btn{min-height:30px;font-size:15px;border-radius:8px}.qty-photo{cursor:pointer;user-select:none}.pos-photo:hover,.qty-photo:hover{filter:brightness(.97)}.checkout-layout{display:grid;grid-template-columns:minmax(0,1fr) 430px;gap:18px;align-items:start}.checkout-form{position:sticky;top:82px}.order-preview table{font-size:13px}.vietqr-live{border:1px solid #fde68a;background:#fffbeb;border-radius:14px;padding:14px;display:grid;gap:8px;justify-items:center;text-align:center}.vietqr-live h3{margin:0;font-size:16px}.vietqr-live .qr{width:190px;max-width:100%;background:#fff;border-radius:12px;padding:8px;border:1px solid #f5d789}.payment-page{max-width:560px;margin:auto}.pay-amount{font-size:24px;color:#7c2d12}.modal{position:fixed;inset:0;z-index:100;display:none}.modal.is-open{display:block}.modal-backdrop{position:absolute;inset:0;background:rgba(24,24,27,.52);backdrop-filter:blur(3px)}.modal-panel{position:relative;z-index:2;width:min(720px,calc(100% - 24px));max-height:calc(100vh - 32px);overflow:auto;margin:16px auto;border-radius:16px}.full-data-card{width:100%}.muted{color:var(--muted);font-weight:400}.center{text-align:center}.qr{max-width:280px;width:100%;height:auto}.qr-mini{width:76px;height:76px}.copy-input{font-size:12px;padding:7px 9px;background:#fafaf9}
@media(max-width:1100px){.checkout-layout{grid-template-columns:1fr}.checkout-form{position:static}}
@media(max-width:700px){.qty-stepper{grid-template-columns:32px minmax(44px,1fr) 32px}.qty-btn{min-height:32px}.checkout-layout{gap:12px}.vietqr-live .qr{width:160px}.modal-panel{width:calc(100% - 18px);margin:9px auto}.product .media-submit img{height:84px}.product-media.media-submit{height:auto}.positem label{font-size:10px}.positem .qty-stepper.mini{grid-template-columns:25px 1fr 25px}.positem .qty-stepper.mini .qty-btn{min-height:26px}.positem .qty-stepper.mini input{font-size:11px;padding:4px 2px}}

/* Update 2.2: table-order workflow, linked admin forms, mobile no top jump */
.table-checkout-box{border:1px solid #d7ccc0;background:#fafaf9;border-radius:14px;padding:12px 14px;display:grid;gap:4px;color:#3f3f46}.table-checkout-box b{font-size:18px;color:#1c1917}.checkout-table-mode{display:grid;gap:4px}.checkout-table-mode span{display:block;color:#57534e;font-size:13px}.table-order-board{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}.table-order-card{border:1px solid #e7e5e4;background:#fff;border-radius:15px;padding:13px;display:grid;gap:11px;box-shadow:0 10px 24px rgba(24,24,27,.05)}.table-order-head,.table-order-foot{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.table-order-head b{display:block;font-size:17px;color:#1c1917}.table-order-head small,.table-order-foot small{display:block;color:#71717a;font-size:12px}.order-items-mini{list-style:none;margin:0;padding:0;display:grid;gap:6px}.order-items-mini li{display:flex;justify-content:space-between;gap:10px;border-bottom:1px dashed #e7e5e4;padding-bottom:5px;font-size:13px}.order-items-mini li:last-child{border-bottom:0;padding-bottom:0}.order-items-mini b{white-space:nowrap}.order-detail .note-box{background:#fffbeb;border:1px solid #fde68a;border-radius:12px;padding:10px 12px;margin:10px 0}.order-meta-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin:8px 0 12px}.product:target{outline:2px solid rgba(154,91,18,.25);outline-offset:2px}.product:target:after{content:'Đã thêm';position:absolute;right:8px;top:8px;background:#166534;color:#fff;border-radius:999px;padding:3px 7px;font-size:10px}.product{position:relative;scroll-margin-top:112px}
@media(max-width:700px){.table-order-board{grid-template-columns:1fr}.table-order-card{padding:11px}.checkout-table-mode span{font-size:12px}.order-meta-grid{grid-template-columns:1fr}.product{scroll-margin-top:92px}}

/* Sticky cart bar fix */
body{padding-bottom:env(safe-area-inset-bottom)}
.mini-cart-bar .btn{white-space:nowrap}
@media(max-width:700px){.mini-cart-bar{width:calc(100% - 20px);left:10px;right:10px;bottom:10px;transform:none;padding:9px 10px}.mini-cart-bar b{font-size:13px}.mini-cart-bar span{font-size:11px}.mini-cart-bar .btn{font-size:11px;padding:7px 9px}}


/* Update 2.4: visual cart, order sound dashboard, kitchen workflow */
.cart-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:16px;align-items:start}.cart-list{display:grid;gap:12px}.cart-item{display:grid;grid-template-columns:minmax(220px,1fr) minmax(280px,1.2fr);gap:16px}.cart-item-main{display:grid;grid-template-columns:92px 1fr;gap:12px;align-items:start}.cart-item-main img{width:92px;height:92px;object-fit:cover;border-radius:12px;background:#f4f4f5}.cart-item-main h3{font-size:16px;margin:0 0 4px}.cart-item-main p{font-size:12px;min-height:0}.cart-controls{display:grid;gap:10px}.cart-option-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.cart-topping-checks{grid-template-columns:repeat(auto-fit,minmax(145px,1fr));font-size:12px}.cart-summary{position:sticky;top:82px;display:grid;gap:12px}.summary-line{display:flex;justify-content:space-between;gap:12px;border-bottom:1px dashed var(--line);padding-bottom:8px}.summary-line.total{font-size:18px;border-bottom:0}.live-orders{margin-bottom:18px;border-color:#f3d19a;background:linear-gradient(180deg,#fff,#fffaf3)}.work-label{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;font-size:12px}.work-label.todo{background:#fef3c7;color:#92400e}.work-label.doing{background:#dbeafe;color:#1d4ed8}.work-label.done{background:#dcfce7;color:#166534}.work-label.cancel{background:#fee2e2;color:#991b1b}.work-card{position:relative}.work-card.work-todo{border-color:#f5c56f}.work-card.work-doing{border-color:#93c5fd}.priority-time{background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;border-radius:10px;padding:7px 9px;font-size:12px}.order-card-actions{display:flex;gap:8px;flex-wrap:wrap}.order-card-actions form{display:inline-flex}.order-items-mini small{display:block;color:#71717a;font-size:11px;margin-top:2px}.order-toast{position:fixed;right:18px;bottom:18px;z-index:2000;background:#18181b;color:#fff;border-radius:14px;padding:12px 14px;box-shadow:0 18px 46px rgba(24,24,27,.28);transform:translateY(20px);opacity:0;pointer-events:none;transition:.18s ease}.order-toast.show{transform:translateY(0);opacity:1}.admin-body .table-order-board{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
@media(max-width:900px){.cart-layout{grid-template-columns:1fr}.cart-summary{position:static}.cart-item{grid-template-columns:1fr}.cart-item-main{grid-template-columns:76px 1fr}.cart-item-main img{width:76px;height:76px}.cart-option-row{grid-template-columns:1fr}}
@media(max-width:700px){.cart-item{padding:12px}.cart-controls textarea{min-height:62px}.cart-topping-checks{grid-template-columns:1fr}.order-toast{left:10px;right:10px;bottom:86px}.admin-body .table-order-board{grid-template-columns:1fr}}


/* Update 2.5: cron, clean mobile cart, topping modal, expenses and cashflow reports */
.cart-layout-clean{grid-template-columns:minmax(0,1fr) 330px}.cart-list-clean{gap:10px}.cart-item-clean{grid-template-columns:minmax(0,1fr) minmax(260px,.95fr);padding:14px}.cart-controls-clean{gap:8px}.cart-row-main{display:grid;grid-template-columns:160px minmax(140px,1fr);gap:10px;align-items:end}.cart-line-note{font-size:12px;color:var(--muted);min-height:0;margin:2px 0 6px}.topping-compact{display:flex;align-items:center;gap:8px;flex-wrap:wrap;border:1px dashed var(--line);border-radius:12px;padding:8px;background:#fafaf9}.topping-compact span{font-size:12px;color:#57534e}.topping-button-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.topping-chip{display:flex!important;align-items:center;justify-content:space-between;gap:8px;border:1px solid var(--line);border-radius:12px;padding:10px;background:#fff;cursor:pointer}.topping-chip input{width:auto}.topping-chip span{font-size:13px}.topping-chip b{font-size:12px;color:#7c2d12}.cart-summary-clean{position:sticky;top:82px}.report-stats{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.cashflow-chart{height:260px;display:flex;align-items:stretch;gap:6px;border:1px solid var(--line);border-radius:14px;padding:14px 10px 32px;background:linear-gradient(180deg,#fff,#fafaf9);overflow-x:auto}.cash-day{min-width:34px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:6px}.cash-day small{font-size:10px;color:#71717a;white-space:nowrap;transform:rotate(-35deg);transform-origin:center}.bar-wrap{height:190px;display:flex;align-items:flex-end;gap:3px;width:28px}.bar{display:block;width:7px;min-height:2px;border-radius:4px 4px 0 0}.bar.revenue{background:#16a34a}.bar.expense{background:#dc2626}.bar.net{background:#2563eb}.bar.net.neg{background:#a855f7}.chart-legend{display:flex;gap:14px;flex-wrap:wrap;margin-top:10px;color:#57534e;font-size:13px}.chart-legend i{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:5px}.revenue-dot{background:#16a34a}.expense-dot{background:#dc2626}.net-dot{background:#2563eb}pre{white-space:pre-wrap;background:#18181b;color:#fafafa;border-radius:12px;padding:12px;overflow:auto}.admin-body .cashflow-chart{height:280px}
@media(max-width:900px){.cart-layout-clean{grid-template-columns:1fr}.cart-summary-clean{position:static}.cart-item-clean{grid-template-columns:1fr}.cart-row-main{grid-template-columns:1fr 1fr}.cashflow-chart{height:230px}}
@media(max-width:700px){.cart-layout-clean{gap:10px}.cart-item-clean{padding:10px;border-radius:14px}.cart-item-main{grid-template-columns:64px 1fr;gap:9px}.cart-item-main img{width:64px;height:64px;border-radius:10px}.cart-item-main h3{font-size:13px;line-height:1.25}.cart-item-main b{font-size:13px}.cart-line-note{font-size:11px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cart-controls-clean textarea{min-height:46px;font-size:12px}.cart-row-main,.cart-option-row{grid-template-columns:1fr 1fr;gap:8px}.topping-compact{padding:7px;gap:6px}.topping-compact .btn{padding:7px 9px;font-size:11px}.topping-compact span{font-size:11px;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.topping-button-grid{grid-template-columns:1fr}.cart-summary-clean{padding:12px}.summary-line.total{font-size:15px}.cashflow-chart{height:210px;padding:10px 8px 30px;gap:4px}.cash-day{min-width:28px}.bar-wrap{height:150px;width:24px}.bar{width:6px}.chart-legend{font-size:12px}.modal-panel{max-height:calc(100vh - 18px)}}


/* Update 2.6: logo/favicon, dashboard icons, no jump, home cart */
html{scroll-behavior:auto!important}
.brand-logo-img{width:38px;height:38px;object-fit:contain;border-radius:10px;background:#fff;border:1px solid var(--line);padding:3px}
.admin-brand .brand-logo-img{width:42px;height:42px;flex:0 0 42px}
.brand .brand-logo-img{width:34px;height:34px;flex:0 0 34px}
.site-logo-preview{height:70px!important;width:140px!important;object-fit:contain!important;background:#fff!important}
.favicon-preview{width:64px!important;height:64px!important;object-fit:contain!important;background:#fff!important}
.nav-mark{font-size:14px;min-width:32px!important;width:32px!important;height:28px!important;justify-content:center!important}
.nav-mark i{line-height:1;color:#f8f1e8}
.stats .stat{position:relative;overflow:hidden}.stats .stat:before{font-family:"Font Awesome 6 Free";font-weight:900;position:absolute;right:14px;top:14px;font-size:22px;color:rgba(154,91,18,.22)}
.stats .stat:nth-child(1):before{content:"\f51e"}.stats .stat:nth-child(2):before{content:"\f543"}.stats .stat:nth-child(3):before{content:"\f0f3"}.stats .stat:nth-child(4):before{content:"\f02b"}
.product:target{outline:none!important}.product:target:after{display:none!important}.product-info p{display:none}.product{scroll-margin-top:0!important}
.data-table th:nth-child(9),.data-table td:nth-child(9),.data-table th:nth-child(10),.data-table td:nth-child(10){max-width:120px}
.mini-cart-bar{position:fixed!important;left:50%;right:auto;bottom:14px;z-index:1600;transform:translateX(-50%);width:min(560px,calc(100% - 28px));display:flex;align-items:center;justify-content:space-between;gap:12px;background:#171717;color:#fff;border-radius:16px;padding:12px 14px;box-shadow:0 18px 45px rgba(0,0,0,.24)}
.mini-cart-bar div{display:grid;gap:1px}.mini-cart-bar b,.mini-cart-bar span{color:#fff}.mini-cart-bar .btn{background:#fff;color:#171717;border-color:#fff}
body:has(.mini-cart-bar){padding-bottom:82px}
@media(max-width:700px){.brand-logo-img{width:30px;height:30px}.site-nav{gap:8px}.site-nav nav{gap:8px}.mini-cart-bar{bottom:8px;width:calc(100% - 16px);left:8px;right:8px;transform:none;border-radius:14px}.mini-cart-bar b{font-size:13px}.mini-cart-bar span{font-size:12px}.mini-cart-bar .btn{font-size:11px;padding:8px 10px}.product-info p{display:none!important}}


/* Update 2.7: bill VietQR, location, kitchen checklist, home full menu */
.kitchen-check-list li{display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:start;gap:8px}
.kitchen-check-form{margin:0}.kitchen-check{width:24px;height:24px;border-radius:7px;padding:0;background:#fff;color:#15803d;border:1px solid #bbf7d0;box-shadow:none;font-weight:600;line-height:1}.kitchen-check:hover{background:#dcfce7;transform:none}.kitchen-check-list li.is-prepared span{text-decoration:line-through;color:#71717a}.kitchen-check-list li.is-prepared .kitchen-check{background:#16a34a;color:#fff;border-color:#16a34a}
.bill-qr{display:block;width:160px!important;height:160px!important;object-fit:contain}.bill .center{text-align:center}.bill hr{border:0;border-top:1px dashed #d6d3d1;margin:8px 0}.bill table{width:100%}.bill table td{border-bottom:1px dashed #eee!important}
#locationStatus a{font-weight:500;text-decoration:underline}.menu-products{padding-bottom:10px}.quick-add button[disabled]{opacity:.65;cursor:wait}.order-card-actions form{margin:0}.order-card-actions .btn{white-space:nowrap}
@media(max-width:700px){.kitchen-check-list li{grid-template-columns:28px minmax(0,1fr) auto}.kitchen-check{width:23px;height:23px}.table-order-card .order-card-actions{gap:6px}.table-order-card .order-card-actions .btn{font-size:11px;padding:7px 8px}}


/* Update 2.8: standalone touch POS, AJAX kitchen check, Vietnamese labels, stronger location helper */
.pos-touch-body{margin:0;background:#f4f1ed;color:var(--text);overflow:hidden;font-size:14px}
.pos-touch-screen{height:100vh;display:grid;grid-template-rows:auto 1fr;gap:0}
.pos-touch-head{height:64px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 16px;background:#171717;color:#fff;border-bottom:1px solid rgba(255,255,255,.08)}
.pos-touch-head b{display:block;color:#fff;font-size:17px;font-weight:500}.pos-touch-head span{display:block;color:#d6d3d1;font-size:12px}.pos-touch-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.pos-touch-actions .btn.ghost{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.16);color:#fff}
.pos-touch-form{min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:0}.pos-touch-products{min-width:0;min-height:0;display:grid;grid-template-rows:auto 1fr;padding:14px}.pos-touch-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.pos-touch-toolbar label{position:relative;display:block;max-width:520px;width:100%}.pos-touch-toolbar i{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:#78716c}.pos-touch-toolbar input{height:44px;border-radius:14px;padding-left:38px;background:#fff}.pos-touch-toolbar span{white-space:nowrap;color:#57534e}
.pos-touch-grid{min-height:0;overflow:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(135px,1fr));gap:12px;padding:0 4px 16px 0}.pos-touch-item{background:#fff;border:1px solid var(--line);border-radius:16px;padding:8px;display:grid;gap:7px;box-shadow:var(--shadow);touch-action:manipulation}.pos-touch-photo{display:block;width:100%;padding:0;border:0;background:transparent;box-shadow:none;border-radius:12px;overflow:hidden}.pos-touch-photo:hover{transform:none;background:transparent}.pos-touch-photo img{width:100%;height:96px;object-fit:cover;border-radius:12px;background:#f4f4f5}.pos-touch-info{min-height:46px}.pos-touch-info h3{font-size:13px;line-height:1.24;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0 0 2px}.pos-touch-info b{font-size:13px;color:#7c4a0c}.qty-stepper.touch{display:grid;grid-template-columns:42px 1fr 42px;gap:6px}.qty-stepper.touch button{height:38px;border-radius:12px;font-size:20px;padding:0}.qty-stepper.touch input{text-align:center;height:38px;padding:6px;font-size:16px;font-weight:500}.pos-touch-summary{height:calc(100vh - 64px);overflow:auto;background:#fff;border-left:1px solid var(--line);padding:14px}.pos-touch-summary .card{box-shadow:none;border-radius:16px}.pos-submit{width:100%;height:48px;font-size:15px}.pos-flash{position:fixed;top:74px;left:50%;transform:translateX(-50%);z-index:1000;width:min(560px,calc(100% - 28px))}.kitchen-check[disabled]{opacity:.55;cursor:wait}.kitchen-check-list li{transition:background .12s ease}.kitchen-check-list li.is-prepared{background:#f0fdf4;border-radius:9px}.geo-help{display:block;margin-top:4px;color:#7c2d12}
@media(max-width:980px){.pos-touch-form{grid-template-columns:1fr}.pos-touch-summary{position:fixed;left:0;right:0;bottom:0;height:auto;max-height:46vh;border-left:0;border-top:1px solid var(--line);z-index:40}.pos-touch-products{padding-bottom:46vh}.pos-touch-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.pos-touch-item{border-radius:13px;padding:6px}.pos-touch-photo img{height:82px}.pos-touch-info h3{font-size:12px}.pos-touch-head{height:auto;align-items:flex-start}.pos-touch-actions .btn{font-size:11px;padding:7px 8px}.qty-stepper.touch{grid-template-columns:34px 1fr 34px}.qty-stepper.touch button,.qty-stepper.touch input{height:34px}}
@media(max-width:520px){.pos-touch-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.pos-touch-products{padding:9px 8px 48vh}.pos-touch-photo img{height:76px}.pos-touch-info{min-height:43px}.pos-touch-info h3{font-size:11px}.pos-touch-info b{font-size:12px}.pos-touch-toolbar{margin-bottom:8px}.pos-touch-toolbar input{height:40px}.pos-touch-summary{padding:9px}.pos-touch-summary textarea{min-height:50px}.pos-touch-summary .card{padding:12px}.pos-touch-head{padding:8px 10px}}

/* Update 2.9: POS bill console with QR and mobile touch layout */
.pos-bill-console{height:calc(100vh - 64px);display:grid;grid-template-columns:minmax(320px,46%) minmax(320px,54%);gap:16px;padding:16px;overflow:hidden;background:#f4f1ed}
.pos-bill-left,.pos-bill-right{min-height:0;overflow:auto}.pos-bill-paper{max-width:430px;margin:0 auto;background:#fff;border:1px solid #e7e5e4;border-radius:16px;padding:18px;box-shadow:0 12px 35px rgba(24,24,27,.08);color:#27272a}.bill-center{text-align:center}.bill-center h2{margin:0 0 4px;font-size:21px}.bill-center p{font-size:12px;line-height:1.35}.dash-line{border-top:1px dashed #d6d3d1;margin:10px 0}.pos-bill-table th,.pos-bill-table td{position:static!important;border-bottom:1px dashed #eee;padding:7px 4px;background:#fff!important;font-size:12px}.pos-bill-table th{text-transform:none;letter-spacing:0;color:#57534e}.pos-bill-table td:nth-child(2),.pos-bill-table th:nth-child(2){text-align:center;width:42px}.pos-bill-table td:nth-child(3),.pos-bill-table th:nth-child(3){text-align:right;width:86px}.pos-bill-table small{font-size:11px;color:#71717a}.pos-bill-table tfoot td{font-weight:500}.pos-bill-table .bill-total td{font-size:15px;color:#111}.bill-print-qr img{width:150px;height:150px;object-fit:contain;margin:6px auto}.bill-print-qr small{display:block;line-height:1.35}.pos-payment-card{height:100%;min-height:520px;background:#fff;border:1px solid #e7e5e4;border-radius:18px;padding:20px;box-shadow:0 12px 35px rgba(24,24,27,.08);display:grid;grid-template-rows:auto auto auto minmax(220px,1fr) auto auto;gap:12px;align-items:center;text-align:center}.pos-payment-card h1{font-size:clamp(30px,5vw,54px);margin:0;color:#7c4a0c}.status-row{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.pos-payment-qr{width:min(360px,80%);max-height:360px;object-fit:contain;margin:0 auto;background:#fff;border:1px solid #f1f1f1;border-radius:18px;padding:10px}.qr-info{display:grid;gap:4px;color:#57534e}.qr-info b{font-size:18px;color:#111}.pos-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;align-self:end}.pos-action-grid form{display:grid;margin:0}.pos-action-grid .btn{width:100%;min-height:48px}.pos-action-grid .done{background:#15803d}.pos-action-grid .done:hover{background:#166534}
@media print{body.pos-touch-body{background:#fff!important;overflow:visible!important}.pos-touch-head,.pos-bill-right,.noprint{display:none!important}.pos-bill-console{display:block;height:auto;overflow:visible;padding:0;background:#fff}.pos-bill-left{overflow:visible}.pos-bill-paper{width:80mm;max-width:80mm;border:0;box-shadow:none;border-radius:0;margin:0;padding:0 4mm}.bill-print-qr img{width:36mm!important;height:36mm!important}.pos-bill-table th,.pos-bill-table td{font-size:11px;padding:4px 0}}
@media(max-width:980px){.pos-bill-console{height:calc(100vh - 58px);grid-template-columns:1fr;overflow:auto;padding:10px;gap:10px}.pos-bill-left,.pos-bill-right{overflow:visible}.pos-bill-paper{max-width:none;border-radius:14px;padding:12px}.pos-payment-card{min-height:auto;padding:14px;border-radius:14px;grid-template-rows:auto}.pos-payment-card h1{font-size:30px}.pos-payment-qr{width:min(260px,75%)}.pos-action-grid{grid-template-columns:1fr 1fr}.pos-action-grid .btn{min-height:44px;font-size:13px}.pos-touch-body{overflow:auto}.pos-touch-screen{min-height:100vh;height:auto}.pos-touch-form{min-height:calc(100vh - 58px);grid-template-columns:1fr;display:flex;flex-direction:column}.pos-touch-products{padding:10px 8px 180px;display:block}.pos-touch-grid{overflow:visible;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:0}.pos-touch-summary{position:fixed;left:0;right:0;bottom:0;height:auto;max-height:42vh;overflow:auto;border-top:1px solid var(--line);background:#fff;z-index:80;padding:8px}.pos-touch-summary .card{padding:10px;border:0;box-shadow:0 -10px 25px rgba(24,24,27,.10)}.pos-touch-summary h2{font-size:14px;margin-bottom:6px}.pos-touch-summary label{gap:3px;font-size:12px}.pos-touch-summary input,.pos-touch-summary select,.pos-touch-summary textarea{padding:7px 8px;border-radius:9px;font-size:13px}.pos-touch-summary textarea{min-height:42px}.pos-submit{height:42px}.pos-touch-photo img{height:76px}.pos-touch-info h3{font-size:11px}.pos-touch-info b{font-size:12px}.qty-stepper.touch{grid-template-columns:32px 1fr 32px;gap:4px}.qty-stepper.touch button,.qty-stepper.touch input{height:32px;border-radius:10px;font-size:14px}.pos-touch-head{min-height:56px;padding:8px 10px}.pos-touch-head b{font-size:14px}.pos-touch-head span{font-size:11px}.pos-touch-actions{gap:5px}.pos-touch-actions .btn{font-size:10px;padding:6px 7px}}
@media(max-width:520px){.pos-bill-console{padding:8px}.pos-action-grid{grid-template-columns:1fr}.pos-payment-qr{width:min(230px,82%)}.pos-bill-paper{font-size:12px}.pos-bill-table td,.pos-bill-table th{font-size:11px}.pos-touch-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.pos-touch-products{padding-bottom:190px}.pos-touch-photo img{height:70px}.pos-touch-info{min-height:40px}.pos-touch-item{padding:5px;border-radius:12px}.pos-touch-toolbar input{height:38px;font-size:13px}.pos-touch-toolbar span{font-size:12px}.pos-touch-summary{max-height:44vh}.pos-touch-summary .muted{display:none}}


/* POS kiosk: ẩn header POS, màn hình bán hàng toàn màn hình */
.pos-touch-body .pos-touch-head{display:none!important;}
.pos-touch-body .pos-touch-screen{padding-top:10px!important;}


/* Update 3.0: RBAC phân quyền chuẩn */
.acl-layout{grid-template-columns:320px minmax(0,1fr);align-items:start}.role-list{display:grid;gap:8px}.role-row{display:grid;gap:3px;padding:12px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--text)}.role-row b{color:var(--ink);font-weight:500}.role-row small{font-size:12px;color:var(--muted);line-height:1.35}.role-row.active,.role-row:hover{border-color:#c08a3a;background:#fffaf3}.permission-group{border:1px solid var(--line);border-radius:14px;padding:12px;margin-bottom:12px;background:#fff}.permission-group h3{font-size:14px;margin:0 0 10px}.permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.permission-check{display:flex!important;align-items:flex-start;gap:9px;border:1px solid #eee;border-radius:11px;padding:9px;background:#fafaf9;font-weight:400}.permission-check input{width:auto;margin-top:3px}.permission-check b{display:block;font-size:13px;color:#27272a}.permission-check small{display:block;font-size:11px;line-height:1.35;color:#71717a}.permission-check:has(input:checked){border-color:#d4a45f;background:#fff8ec}@media(max-width:900px){.acl-layout{grid-template-columns:1fr}.permission-grid{grid-template-columns:1fr}}

/* Update 3.1: đồng bộ live time cho bếp, quầy, dashboard */
[data-live-orders-board]{position:relative}.live-sync-pulse{animation:livePulse .22s ease}.live-order-update button[disabled],.kitchen-check-form button[disabled]{opacity:.58;cursor:wait}.table-order-card{transition:background .16s ease,border-color .16s ease,transform .12s ease}.table-order-card.sync-new{animation:orderNew .55s ease}.kitchen-check-list li.is-prepared span{text-decoration:line-through;color:#52525b}.kitchen-check{width:30px;height:30px;border-radius:9px;border:1px solid #d6d3d1;background:#fff;color:#15803d;font-weight:600;display:inline-grid;place-items:center;padding:0}.kitchen-check-list li.is-prepared .kitchen-check{background:#16a34a;color:#fff;border-color:#16a34a}.live-status-dot{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#166534}.live-status-dot:before{content:'';width:7px;height:7px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 5px rgba(34,197,94,.13)}@keyframes livePulse{0%{opacity:.72}100%{opacity:1}}@keyframes orderNew{0%{transform:scale(.985);background:#fff7ed}100%{transform:scale(1);background:#fff}}

/* Mobile input zoom fix: keep form fields at 16px on touch devices so iOS/Chrome mobile does not auto-zoom while typing. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
@media (max-width: 900px){
  input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="hidden"]),
  select,
  textarea{
    font-size:16px!important;
    line-height:1.35!important;
  }
  .pos-touch-summary input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="hidden"]),
  .pos-touch-summary select,
  .pos-touch-summary textarea,
  .pos-touch-toolbar input,
  .qty-stepper input,
  .qty-stepper.touch input,
  .modal input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="hidden"]),
  .modal select,
  .modal textarea,
  .cart-controls input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="hidden"]),
  .cart-controls select,
  .cart-controls textarea{
    font-size:16px!important;
    line-height:1.35!important;
  }
}
@media (pointer: coarse){
  input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="hidden"]),
  select,
  textarea{
    font-size:16px!important;
  }
}


/* Update 3.3: sửa POS mobile bị che món, đơn đang làm gọn hơn, in bill đúng khổ */
.admin-body .table-order-board{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))!important;gap:10px!important;align-items:start}
.table-order-card{padding:10px!important;gap:8px!important;border-radius:13px!important;box-shadow:0 6px 18px rgba(24,24,27,.04)!important}
.table-order-head,.table-order-foot{gap:8px!important;align-items:flex-start!important}
.table-order-head b{font-size:15px!important;line-height:1.2!important;font-weight:600!important}
.table-order-head small,.table-order-foot small{font-size:11px!important;line-height:1.25!important}
.work-label{padding:4px 8px!important;font-size:11px!important;white-space:nowrap!important}
.priority-time{min-height:0!important;height:auto!important;padding:6px 8px!important;border-radius:9px!important;font-size:12px!important;line-height:1.25!important;display:block!important;margin:0!important}
.order-items-mini{gap:0!important}
.order-items-mini li{font-size:13px!important;padding:6px 0!important;min-height:0!important;line-height:1.25!important;align-items:center!important}
.kitchen-check-list li{grid-template-columns:28px minmax(0,1fr) auto!important;gap:7px!important}
.kitchen-check{width:28px!important;height:28px!important;border-radius:9px!important;font-size:15px!important;flex:0 0 28px!important}
.order-items-mini b{font-size:12px!important;align-self:center!important}.order-items-mini small{font-size:10.5px!important;margin-top:1px!important}
.table-order-foot span{font-size:15px!important;font-weight:500!important}.order-card-actions{gap:6px!important}.order-card-actions .btn{font-size:12px!important;padding:8px 9px!important;min-height:36px!important}.order-card-actions form{margin:0!important}

@media(max-width:980px){
  .pos-touch-body{height:100dvh;overflow:hidden!important}
  .pos-touch-screen{height:100dvh;overflow:hidden!important}
  .pos-touch-form{height:100dvh;min-height:100dvh;overflow:hidden!important;display:flex!important;flex-direction:column!important}
  .pos-touch-products{flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;padding:10px 8px calc(42dvh + 30px)!important;display:block!important}
  .pos-touch-grid{overflow:visible!important;padding-bottom:12px!important}
  .pos-touch-summary{position:fixed!important;left:0!important;right:0!important;bottom:0!important;max-height:40dvh!important;overflow:auto!important;-webkit-overflow-scrolling:touch!important;z-index:120!important;box-shadow:0 -12px 32px rgba(24,24,27,.12)!important}
  .pos-touch-summary .card{padding:10px!important}
  .pos-touch-summary label{font-size:12px!important;margin-bottom:5px!important}
  .pos-touch-summary input,.pos-touch-summary select,.pos-touch-summary textarea{min-height:38px!important;padding:7px 9px!important}
}
@media(max-width:520px){
  .pos-touch-products{padding:8px 7px calc(44dvh + 34px)!important}
  .pos-touch-summary{max-height:42dvh!important;padding:7px!important}
  .pos-touch-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important}
  .pos-touch-photo img{height:72px!important}.pos-touch-info{min-height:38px!important}.pos-touch-info h3{font-size:11px!important}.pos-touch-info b{font-size:12px!important}
  .table-order-board{grid-template-columns:1fr!important}.table-order-card{padding:9px!important;gap:7px!important}.order-card-actions .btn{font-size:11px!important;padding:7px 8px!important}
}

@page{size:80mm auto;margin:0}
@media print{
  body.pos-touch-body{width:80mm!important;margin:0!important;padding:0!important;background:#fff!important;overflow:visible!important}
  body.pos-touch-body *{visibility:hidden!important}
  body.pos-touch-body #posBillPrint,body.pos-touch-body #posBillPrint *{visibility:visible!important}
  body.pos-touch-body #posBillPrint{position:absolute!important;left:0!important;top:0!important;width:76mm!important;max-width:76mm!important;margin:0!important;padding:2mm!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:#fff!important;color:#111!important}
  body.pos-touch-body .pos-bill-table{width:100%!important;border-collapse:collapse!important}
  body.pos-touch-body .pos-bill-table th,body.pos-touch-body .pos-bill-table td{font-size:10.5px!important;padding:3px 0!important;line-height:1.22!important}
  body.pos-touch-body .bill-center h2{font-size:15px!important;margin:0 0 2px!important}
  body.pos-touch-body .bill-center p{font-size:10.5px!important;margin:2px 0!important}
  body.pos-touch-body .bill-print-qr img{width:34mm!important;height:34mm!important;margin:2mm auto!important}
  body.pos-touch-body .dash-line{margin:5px 0!important}
}

/* Update 3.8: sửa in bill không bị nhỏ ở một góc trên mọi khổ giấy */
@page{size:auto;margin:8mm}
@media print{
  body.pos-touch-body{width:auto!important;margin:0!important;padding:0!important;background:#fff!important;overflow:visible!important}
  body.pos-touch-body *{visibility:hidden!important}
  body.pos-touch-body #posBillPrint,body.pos-touch-body #posBillPrint *{visibility:visible!important}
  body.pos-touch-body #posBillPrint{position:static!important;left:auto!important;top:auto!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:#fff!important;color:#111!important}
  body.pos-touch-body .pos-bill-console{display:block!important;height:auto!important;overflow:visible!important;padding:0!important;background:#fff!important}
  body.pos-touch-body .pos-bill-left{overflow:visible!important;width:100%!important;max-width:none!important}
  body.pos-touch-body .pos-bill-right,.pos-touch-head,.noprint{display:none!important}
  body.pos-touch-body .pos-bill-paper{width:100%!important;max-width:none!important;border:0!important;box-shadow:none!important;border-radius:0!important;margin:0!important;padding:0!important;background:#fff!important}
  body.pos-touch-body .pos-bill-table{width:100%!important;border-collapse:collapse!important}
  body.pos-touch-body .pos-bill-table th,body.pos-touch-body .pos-bill-table td{font-size:12px!important;padding:5px 0!important;line-height:1.28!important}
  body.pos-touch-body .bill-center h2{font-size:19px!important;margin:0 0 3px!important}
  body.pos-touch-body .bill-center p{font-size:12px!important;margin:3px 0!important}
  body.pos-touch-body .bill-print-qr img{width:46mm!important;height:46mm!important;margin:4mm auto 2mm!important}
  body.pos-touch-body .dash-line{margin:7px 0!important}
}

/* Reports phase 2: professional report center */
.reports-page{display:grid;gap:14px}.reports-head{align-items:flex-start}.report-head-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.report-filter-toggle{display:none}.report-filter-bar{position:sticky;top:8px;z-index:25;display:grid;grid-template-columns:repeat(6,minmax(140px,1fr));gap:9px;align-items:end;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);border:1px solid var(--line);border-radius:16px;padding:12px;box-shadow:0 12px 28px rgba(24,24,27,.06)}.report-filter-bar label{font-size:12px;color:var(--muted);display:grid;gap:4px;margin:0}.report-filter-bar input,.report-filter-bar select{height:38px;font-size:14px;border-radius:10px;background:#fff}.report-filter-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.report-tabs{display:flex;gap:7px;overflow-x:auto;padding:2px 0 8px;scrollbar-width:thin}.report-tabs a{white-space:nowrap;text-decoration:none;color:#57534e;border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 12px;font-size:13px}.report-tabs a.active{background:#171717;color:#fff;border-color:#171717}.report-kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.report-kpi{display:grid;grid-template-columns:36px minmax(0,1fr);gap:10px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:12px;box-shadow:0 8px 22px rgba(24,24,27,.045);min-height:96px}.report-kpi-icon{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;background:#f5f5f4;color:#57534e}.report-kpi.green .report-kpi-icon{background:#ecfdf5;color:#047857}.report-kpi.blue .report-kpi-icon{background:#eff6ff;color:#2563eb}.report-kpi.orange .report-kpi-icon{background:#fff7ed;color:#c2410c}.report-kpi.red .report-kpi-icon{background:#fef2f2;color:#dc2626}.report-kpi span{display:block;color:#78716c;font-size:12px;line-height:1.25}.report-kpi b{display:block;color:#18181b;font-size:18px;line-height:1.2;font-weight:600;margin:3px 0;white-space:normal;overflow:hidden;text-overflow:ellipsis}.report-kpi em{display:block;font-style:normal;font-size:11px;line-height:1.25;color:#a16207}.report-delta{display:block!important;margin-top:3px;font-size:11px!important}.report-delta.up{color:#15803d!important}.report-delta.down{color:#b91c1c!important}.report-note{display:flex;align-items:center;gap:8px;background:#fffbeb;border:1px solid #fde68a;color:#92400e;border-radius:14px;padding:10px 12px;font-size:13px}.report-chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.report-chart-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:12px;box-shadow:0 8px 22px rgba(24,24,27,.045);min-width:0}.report-chart-card:first-child{grid-column:1/-1}.report-chart-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:8px}.report-chart-head h3{margin:0;font-size:15px;font-weight:600}.report-chart-head p{margin:2px 0 0;color:#78716c;font-size:12px}.report-chart-wrap{min-height:230px;position:relative}.report-fallback{margin-top:8px}.report-fallback summary{cursor:pointer;color:#7c4a0c;font-size:12px}.report-quick-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:12px}.data-table.compact th,.data-table.compact td{padding:8px 9px;font-size:12px}.report-placeholder{text-align:center;max-width:780px;margin:12px auto;padding:34px}.report-placeholder i{font-size:32px;color:#a16207;background:#fff7ed;width:64px;height:64px;border-radius:20px;display:inline-grid;place-items:center;margin-bottom:8px}.report-placeholder h2{font-weight:600;margin-bottom:8px}.report-placeholder p{color:#57534e;max-width:560px;margin:0 auto 16px}@media print{.admin-sidebar,.admin-top,.report-filter-bar,.report-tabs,.report-head-actions,.report-filter-toggle,.report-fallback{display:none!important}.admin-main{margin:0!important;padding:0!important}.reports-page{display:block}.report-kpi-grid{grid-template-columns:repeat(3,1fr)!important}.report-chart-grid,.report-quick-grid{grid-template-columns:1fr!important}.report-chart-card,.report-kpi,.card{break-inside:avoid;box-shadow:none!important}}
@media(max-width:1180px){.report-filter-bar{grid-template-columns:repeat(4,minmax(130px,1fr))}.report-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.report-quick-grid{grid-template-columns:1fr}}
@media(max-width:860px){.report-head-actions{width:100%}.report-head-actions .btn{flex:1 1 auto}.report-filter-toggle{display:inline-flex}.report-filter-bar{display:none;position:relative;top:0;grid-template-columns:repeat(2,minmax(0,1fr));padding:10px}.report-filter-bar.open{display:grid}.report-filter-actions{grid-column:1/-1}.report-filter-actions .btn{flex:1}.report-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.report-kpi{grid-template-columns:30px minmax(0,1fr);gap:8px;padding:10px;min-height:86px}.report-kpi-icon{width:30px;height:30px;border-radius:10px}.report-kpi b{font-size:15px}.report-kpi span{font-size:11px}.report-chart-grid{grid-template-columns:1fr}.report-chart-wrap{min-height:210px}.report-chart-card:first-child{grid-column:auto}.report-tabs a{font-size:12px;padding:7px 10px}.reports-page input,.reports-page select,.reports-page textarea{font-size:16px!important}}
@media(max-width:520px){.report-filter-bar{grid-template-columns:1fr}.report-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-kpi{display:block}.report-kpi-icon{margin-bottom:6px}.report-kpi b{font-size:14px}.report-chart-wrap{min-height:190px}.report-placeholder{padding:22px 14px}.data-table.compact th,.data-table.compact td{padding:7px;font-size:11.5px}}


/* Reports phase 3-5: revenue, orders, payments, profit, products, inventory */
.report-page-head{align-items:flex-start}.report-actions{display:flex;gap:8px;flex-wrap:wrap}.report-tab-content{display:grid;gap:14px}.report-chart-card canvas{width:100%!important;height:230px!important}.report-note.warning{background:#fef2f2;border-color:#fecaca;color:#991b1b}.danger-text{color:#b91c1c;font-weight:600}.report-export-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px;margin-top:12px}.reports-page .data-table a{color:#0f766e;text-decoration:none;font-weight:600}.reports-page .data-table a:hover{text-decoration:underline}.reports-page .card h2{font-size:16px;font-weight:600;margin-bottom:10px}.reports-page .data-table th{white-space:nowrap}.reports-page .data-table td{vertical-align:top}.reports-page .report-kpi b{word-break:break-word}.reports-page .report-chart-grid + .card,.reports-page .report-kpi-grid + .card{margin-top:0}@media(max-width:860px){.report-actions{width:100%}.report-actions .btn{flex:1 1 auto;justify-content:center}.report-chart-card canvas{height:210px!important}.report-export-grid{grid-template-columns:1fr 1fr}.reports-page .page-head{gap:10px}}@media(max-width:520px){.report-export-grid{grid-template-columns:1fr}.reports-page .data-table{min-width:720px}.reports-page .report-kpi{min-height:82px}.reports-page .report-kpi em{display:none}}

/* Reports phase 6-7: export, print, cron snapshot, QA polish */
.report-export-panel{display:grid;gap:14px}.report-export-form{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;align-items:end}.report-export-form label{display:grid;gap:5px;margin:0;color:#57534e;font-size:12px}.report-export-form input,.report-export-form select{min-height:39px;border-radius:10px}.report-export-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.quick-export{border-top:1px solid var(--line);padding-top:12px}.report-print-only{display:none!important}@media(max-width:980px){.report-export-form{grid-template-columns:repeat(2,minmax(0,1fr))}.report-export-actions{grid-column:1/-1}.report-export-actions .btn{flex:1 1 auto;justify-content:center}}@media(max-width:560px){.report-export-form{grid-template-columns:1fr}.report-export-actions{display:grid;grid-template-columns:1fr}.reports-page .data-table{font-size:12px}}
@media print{body:not(.pos-touch-body){background:#fff!important}.admin-shell,.admin-body{display:block!important}.admin-sidebar,.admin-top,.admin-header,.report-actions,.report-filter-bar,.report-tabs,.report-export-actions,.quick-export,.noprint{display:none!important}.admin-main,.content,.main{margin:0!important;padding:0!important;width:auto!important;max-width:none!important}.reports-page{display:block!important}.reports-page .page-head{border-bottom:2px solid #111;margin-bottom:12px;padding-bottom:10px}.reports-page .page-head h1{font-size:22px!important}.report-kpi-grid{grid-template-columns:repeat(3,1fr)!important;gap:8px!important}.report-kpi,.report-chart-card,.card{box-shadow:none!important;border:1px solid #d4d4d4!important;break-inside:avoid}.report-chart-wrap{min-height:180px!important}.reports-page .data-table{min-width:0!important;width:100%!important;font-size:11px!important}.reports-page .data-table th,.reports-page .data-table td{padding:5px!important}a{color:#111!important;text-decoration:none!important}}

/* Update reports export/print fix: XLSX, VND format, filter action alignment */
.report-filter-actions{grid-column:span 3;align-self:end;display:flex;align-items:center;gap:8px;flex-wrap:nowrap;min-width:0}
.report-filter-actions .btn{min-height:38px;white-space:nowrap;line-height:1;align-self:center}
.report-filter-actions .btn.ghost{background:#fff}
.report-export-actions .btn{white-space:nowrap}
.reports-page .money,.reports-page .vnd{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
@media(max-width:1180px){.report-filter-actions{grid-column:1/-1;flex-wrap:wrap}.report-filter-actions .btn{flex:0 0 auto}}
@media(max-width:860px){.report-filter-actions{display:grid!important;grid-template-columns:1fr 1fr;width:100%}.report-filter-actions .btn{width:100%}}
@media(max-width:520px){.report-filter-actions{grid-template-columns:1fr}}

/* Update inventory/suppliers/expenses professional module */
.inv-page{display:flex;flex-direction:column;gap:16px}.inv-tabs{display:flex;gap:8px;overflow-x:auto;padding:8px 0 2px}.inv-tabs a{white-space:nowrap;text-decoration:none;border:1px solid #e7ddcf;border-radius:12px;padding:9px 12px;background:#fff;color:#5f4630;font-weight:500}.inv-tabs a.active{background:#8a4f09;color:#fff;border-color:#8a4f09}.inv-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:6px 0}.inv-kpi{background:#fff;border:1px solid #eee2d6;border-radius:16px;padding:14px;display:flex;flex-direction:column;gap:5px;min-height:108px}.inv-kpi i{font-size:19px;color:#9a5a0d}.inv-kpi span{color:#6b7280;font-size:13px}.inv-kpi b{font-size:21px;font-weight:600;color:#171717}.inv-kpi.warn{background:#fff8e7}.inv-kpi.danger{background:#fff0f0}.inv-filter{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;align-items:end}.inv-filter label{display:flex;flex-direction:column;gap:5px;color:#6b7280}.inv-filter .check-line{flex-direction:row;align-items:center;gap:8px;margin-bottom:12px}.inv-form .upload-box,.inv-stock-form .upload-box{border:1px dashed #e5d5c1;border-radius:12px;padding:10px}.inv-thumb{width:50px;height:50px;object-fit:cover;border-radius:10px;border:1px solid #eadfce;background:#fafafa}.inv-block{border:1px solid #f0e4d8;border-radius:15px;padding:14px;margin:12px 0;background:#fffdf9}.inv-block h2{font-size:17px;margin:0 0 10px;font-weight:600}.inv-item-row{display:grid;grid-template-columns:1.4fr .7fr .6fr .8fr .8fr .8fr 1fr auto;gap:8px;align-items:center;margin-bottom:8px}.inv-stock-form input,.inv-stock-form select,.inv-stock-form textarea,.inv-filter input,.inv-filter select{font-size:16px}.inv-total-box{display:flex;gap:18px;justify-content:flex-end;background:#fff7ec;border:1px solid #eadbc6;border-radius:14px;padding:12px;margin:12px 0}.actions{display:flex;gap:8px;flex-wrap:wrap}.actions a{color:#8a4f09;text-decoration:none;font-weight:500}.link-danger{border:0;background:transparent;color:#b91c1c;cursor:pointer;padding:0}.badge{display:inline-flex;padding:4px 8px;border-radius:999px;background:#f3f4f6;color:#374151;font-size:12px}.warn-row td{background:#fff8e7}.danger-row td{background:#fff0f0}.table-wrap{overflow-x:auto}.inv-page table th{font-weight:600}.inv-page input,.inv-page select,.inv-page textarea{font-size:16px}.modal-panel{max-width:720px;width:min(720px,calc(100vw - 28px))}@media(max-width:900px){.inv-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.inv-filter{grid-template-columns:1fr 1fr}.inv-item-row{grid-template-columns:1fr 1fr}.inv-total-box{flex-direction:column;align-items:flex-start}.inv-tabs{margin-left:-4px;margin-right:-4px}.inv-page .page-head{align-items:flex-start}}@media(max-width:560px){.inv-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.inv-kpi{padding:11px;min-height:96px}.inv-kpi b{font-size:17px}.inv-filter{grid-template-columns:1fr}.inv-item-row{grid-template-columns:1fr}.inv-page .report-actions{display:grid;grid-template-columns:1fr}.inv-page .btn{width:100%;justify-content:center}.inv-thumb{width:44px;height:44px}}

/* Products + Orders Pro update */
.po-filter{align-items:end;gap:12px}.po-filter label{min-width:180px}.po-filter .btn{height:42px;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}.po-thumb{width:54px;height:54px;object-fit:cover;border-radius:12px;border:1px solid #eee;background:#fafafa}.po-table .num{text-align:right;white-space:nowrap}.po-form .card{margin-bottom:16px}.po-repeat-row{display:grid;grid-template-columns:1.5fr .7fr .7fr;gap:10px;margin:8px 0;align-items:center}.po-repeat-row input,.po-repeat-row select{min-width:0}.topping-checks{max-height:220px;overflow:auto;padding:8px;border:1px solid #eee;border-radius:14px}.po-tabs{overflow-x:auto;white-space:nowrap;margin:12px 0}.po-order-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.po-order-card{border:1px solid #eee;border-radius:18px;padding:14px;background:#fff;display:grid;gap:8px;box-shadow:0 8px 20px rgba(0,0,0,.04)}.po-order-card small{display:block;color:#6b7280}.po-order-money b{font-size:20px}.po-order-money small{color:#6b7280}.po-kitchen-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.po-kitchen-card{background:#fff;border:1px solid #e9e1d6;border-radius:18px;padding:14px;box-shadow:0 10px 26px rgba(0,0,0,.05)}.po-kitchen-card .card-head{margin-bottom:8px}.po-kitchen-card ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}.po-kitchen-card li{display:flex;gap:10px;align-items:flex-start;padding:10px;border-radius:14px;background:#faf7f2}.po-kitchen-card li.is-prepared{opacity:.62;text-decoration:line-through}.po-kitchen-card li small{display:block;color:#6b7280;margin-top:3px}.kitchen-check{width:32px;height:32px;border-radius:10px;border:1px solid #d9c4a4;background:#fff;font-weight:600;cursor:pointer}.print-a4{max-width:820px;margin:0 auto;padding:18px;background:#fff;color:#111}.print-a4 table{width:100%;border-collapse:collapse}.print-a4 th,.print-a4 td{border:1px solid #ddd;padding:8px;text-align:left}.print-a4 th{background:#f7f7f7}.upload-box{display:flex;gap:14px;align-items:center}.upload-box input[type=file],.upload-box input[type=text],.upload-box input:not([type]){display:block;margin:6px 0;width:100%}
@media(max-width:900px){.po-order-cards{grid-template-columns:1fr}.po-kitchen-board{grid-template-columns:1fr}.po-repeat-row{grid-template-columns:1fr}.po-filter{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.po-filter label{min-width:0}.row-actions{display:flex;flex-wrap:wrap;gap:6px}.row-actions form{display:inline-flex}.po-thumb{width:48px;height:48px}.po-table{font-size:13px}}
@media(max-width:640px){.po-filter{grid-template-columns:1fr}.page-head .top-actions{display:flex;flex-wrap:wrap;gap:8px}.po-order-card{border-radius:14px;padding:12px}.po-form .grid.two,.po-form .grid.three{grid-template-columns:1fr!important}.po-kitchen-card{padding:12px}input,select,textarea{font-size:16px!important}}
@media print{body{background:#fff!important}.admin-shell,.sidebar,.admin-topbar,.noprint{display:none!important}.print-a4{max-width:none!important;margin:0!important;padding:0!important;box-shadow:none!important}.print-a4 h1{font-size:24px}.print-a4 th,.print-a4 td{font-size:13px;padding:6px}}

/* Update: order popup actions + kitchen print option formatting */
.link-like{border:0;background:transparent;color:inherit;padding:0;margin:0;text-align:left;font:inherit;cursor:pointer}
.link-like:hover{text-decoration:underline}
.po-order-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.po-order-actions form{display:inline-flex;margin:0}
.btn.danger,.btn.small.danger{background:#b91c1c!important;color:#fff!important;border-color:#b91c1c!important}
.danger-text{color:#b91c1c;background:#fff1f2;border:1px solid #fecdd3;border-radius:12px;padding:10px 12px}
body.po-modal-open{overflow:hidden}
.po-modal{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center;padding:16px}
.po-modal.is-open{display:flex}
.po-modal-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.55);backdrop-filter:blur(2px)}
.po-modal-panel{position:relative;z-index:1;width:min(560px,96vw);max-height:90vh;overflow:auto;background:#fff;border-radius:18px;box-shadow:0 24px 70px rgba(15,23,42,.28);padding:20px;border:1px solid rgba(148,163,184,.25)}
.po-modal-panel.wide{width:min(980px,98vw)}
.po-modal-panel h2{font-size:22px;line-height:1.25;margin:0 0 14px;font-weight:600}
.po-modal-panel h3{font-size:16px;margin:18px 0 8px;font-weight:600}
.po-modal-x{position:absolute;top:10px;right:12px;width:34px;height:34px;border:1px solid #e5e7eb;border-radius:999px;background:#fff;font-size:22px;line-height:1;cursor:pointer}
.po-modal-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:10px 0 14px}
.po-modal-summary span,.po-modal-summary b{display:block;background:#f8fafc;border:1px solid #e5e7eb;border-radius:10px;padding:8px 10px;font-weight:500}
.modal-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;align-items:center}
.po-repeat-row{display:grid;grid-template-columns:minmax(180px,1fr) 90px minmax(160px,1fr);gap:8px;margin-bottom:8px;align-items:center}
.po-repeat-row select,.po-repeat-row input,.po-modal-panel input,.po-modal-panel select,.po-modal-panel textarea{font-size:16px!important}
.po-kitchen-card small{display:block;color:#64748b;line-height:1.4;margin-top:3px}
@media(max-width:700px){.po-modal{padding:8px;align-items:flex-end}.po-modal-panel,.po-modal-panel.wide{width:100%;max-height:92vh;border-radius:18px 18px 0 0;padding:16px}.po-modal-summary{grid-template-columns:1fr}.po-repeat-row{grid-template-columns:1fr 82px}.po-repeat-row input[name="item_note[]"]{grid-column:1/-1}.po-order-actions{gap:5px}.po-order-actions .btn{padding:8px 10px;font-size:13px}}
@media print{.po-modal{display:none!important}}

/* Update: product delete + professional edit product form */
.po-product-editor{display:flex;flex-direction:column;gap:14px}.po-product-head{align-items:flex-start}.po-product-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:16px;align-items:start}.po-product-main{display:flex;flex-direction:column;gap:14px}.po-product-side{display:flex;flex-direction:column;gap:14px;min-width:0}.po-section,.po-side-card{border:1px solid #eadfce;border-radius:18px;background:#fff;box-shadow:0 10px 26px rgba(24,24,27,.045)}.po-section-title{display:flex;gap:12px;align-items:flex-start;margin-bottom:14px}.po-section-title i{width:38px;height:38px;border-radius:13px;background:#fff6e8;color:#9a5a0d;display:inline-flex;align-items:center;justify-content:center;font-size:16px;flex:0 0 auto}.po-section-title h2,.po-side-card h2{font-size:18px;font-weight:600;margin:0 0 3px}.po-section-title p{margin:0;color:#6b7280;font-size:13px;line-height:1.4}.po-field-grid label,.po-side-card label{display:flex;flex-direction:column;gap:6px;color:#5f4630;font-size:13px;font-weight:500}.po-field-grid label b{color:#b91c1c}.po-field-grid .span-2{grid-column:1/-1}.po-product-form input,.po-product-form select,.po-product-form textarea{font-size:16px!important;border-radius:12px}.po-switch-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.po-switch-grid label,.po-switch-list label{border:1px solid #eadfce;background:#fffaf3;border-radius:13px;padding:10px 12px;display:flex;gap:8px;align-items:center;color:#374151;font-weight:500}.po-switch-list{display:grid;gap:8px;margin:12px 0}.po-repeat-list{display:grid;gap:8px}.po-repeat-row.pro{grid-template-columns:minmax(110px,1fr) 120px 130px auto}.po-repeat-row.recipe{grid-template-columns:minmax(180px,1fr) 120px 120px auto}.po-repeat-row.pro,.po-repeat-row.recipe{background:#fffdf9;border:1px solid #f0e4d8;border-radius:14px;padding:8px;margin:0}.po-topping-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-height:260px;overflow:auto;padding:10px;border:1px solid #eadfce;border-radius:14px;background:#fffdf9}.po-topping-grid label{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 8px;align-items:center;border:1px solid #f2e7db;border-radius:12px;padding:8px;background:#fff}.po-topping-grid small{grid-column:2;color:#9a5a0d;font-weight:500}.po-image-preview{display:flex;justify-content:center;align-items:center;background:#fffaf3;border:1px dashed #e5d5c1;border-radius:16px;min-height:190px;margin-bottom:12px}.po-image-preview .po-thumb{width:min(220px,100%);height:170px;border-radius:14px;object-fit:cover}.po-side-card small{display:block;color:#6b7280;line-height:1.4}.po-sticky-card{position:sticky;top:84px}.po-product-savebar{position:sticky;bottom:12px;z-index:20;background:rgba(255,255,255,.94);border:1px solid #eadfce;border-radius:18px;box-shadow:0 18px 45px rgba(24,24,27,.12);padding:10px;display:flex;gap:8px;align-items:center;justify-content:flex-end;backdrop-filter:blur(8px)}.po-product-savebar .btn{min-height:42px}.row-actions .btn.danger{background:#b91c1c!important;border-color:#b91c1c!important;color:#fff!important}.po-table .row-actions{min-width:260px}.po-table .row-actions form{margin:0;display:inline-flex}
@media(max-width:1080px){.po-product-layout{grid-template-columns:1fr}.po-product-side{order:-1}.po-sticky-card{position:static}.po-image-preview{min-height:140px}.po-image-preview .po-thumb{height:130px}.po-switch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.po-topping-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.po-product-head .top-actions{width:100%;display:grid;grid-template-columns:1fr;gap:8px}.po-section,.po-side-card{border-radius:14px;padding:12px}.po-section-title i{width:34px;height:34px}.po-field-grid,.po-product-form .grid.two,.po-product-form .grid.three{grid-template-columns:1fr!important}.po-switch-grid,.po-topping-grid{grid-template-columns:1fr}.po-repeat-row.pro,.po-repeat-row.recipe{grid-template-columns:1fr}.po-product-savebar{left:8px;right:8px;bottom:8px;display:grid;grid-template-columns:1fr;z-index:80}.po-product-savebar .btn{width:100%;justify-content:center}body:has(.po-product-savebar){padding-bottom:150px}.po-table .row-actions{min-width:220px}.po-table .row-actions .btn{padding:7px 9px;font-size:12px}}

/* Update 4.2: POS tóm tắt đơn hàng + popup topping/size từng món + live board khi đang trống */
.pos-touch-form-pro{grid-template-columns:minmax(0,1fr) 410px!important}.pos-touch-item .btn.small{width:100%;justify-content:center;min-height:34px}.pos-badge{position:absolute;top:6px;right:6px;border-radius:999px;padding:3px 7px;font-size:10px;background:#fef3c7;color:#92400e}.pos-badge.danger{background:#fee2e2;color:#991b1b}.pos-touch-photo{position:relative}.pos-touch-summary-pro{display:grid;gap:12px;align-content:start}.pos-order-panel{border-color:#f1d7ad!important;background:#fffaf3}.pos-cart-list{display:grid;gap:8px;max-height:34vh;overflow:auto;padding-right:2px}.pos-cart-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;border:1px solid #ead7ba;background:#fff;border-radius:12px;padding:9px}.pos-cart-row b{display:block;font-size:13px;font-weight:600}.pos-cart-row small{display:block;color:#6b7280;font-size:11px;line-height:1.35;margin-top:2px}.pos-cart-row span{display:block;color:#92400e;font-weight:600;font-size:12px;margin-top:3px}.pos-cart-actions{display:grid;grid-template-columns:30px 28px 30px 30px;gap:3px;align-items:center}.pos-cart-actions button{min-height:30px;padding:0;border-radius:8px;box-shadow:none}.pos-cart-actions button.danger{background:#fee2e2;color:#991b1b;border-color:#fecaca}.pos-cart-actions em{text-align:center;font-style:normal;font-weight:600}.pos-summary-lines{display:grid;gap:7px;margin-top:10px}.pos-summary-lines>div{display:flex;justify-content:space-between;gap:12px;border-top:1px dashed #ead7ba;padding-top:7px}.pos-summary-lines .total{font-size:18px;color:#7c2d12}.pos-summary-lines b{font-weight:600}.pos-option-modal[hidden]{display:none!important}.pos-option-modal{position:fixed;inset:0;z-index:3000}.pos-option-backdrop{position:absolute;inset:0;background:rgba(24,24,27,.52);backdrop-filter:blur(3px)}.pos-option-panel{position:relative;z-index:2;width:min(680px,calc(100% - 22px));max-height:calc(100dvh - 28px);overflow:auto;margin:14px auto;background:#fff;border:1px solid #ead7ba;border-radius:18px;box-shadow:0 28px 80px rgba(24,24,27,.28);padding:16px}.pos-option-x{position:absolute;right:10px;top:10px;width:36px;height:36px;border-radius:999px;padding:0;background:#f4f4f5;color:#111}.pos-option-head{display:grid;grid-template-columns:84px 1fr;gap:12px;align-items:center;padding-right:42px;margin-bottom:12px}.pos-option-head img{width:84px;height:84px;object-fit:cover;border-radius:14px;background:#f4f4f5;border:1px solid var(--line)}.pos-option-head h2{margin:0 0 4px;font-size:20px}.pos-option-body{display:grid;gap:12px}.pos-opt-block{border:1px solid #eee2cf;border-radius:14px;padding:12px;background:#fffaf3}.pos-opt-block h3{margin:0 0 10px;font-size:14px}.pos-choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.pos-choice{display:block;cursor:pointer}.pos-choice input{display:none}.pos-choice span{display:block;border:1px solid #e4d2b6;background:#fff;border-radius:12px;padding:10px;font-size:13px}.pos-choice input:checked+span{border-color:#a2600a;background:#fff7ed;color:#7c2d12;font-weight:600}.pos-modal-bottom{display:grid;grid-template-columns:180px 1fr;gap:10px;align-items:center}.pos-modal-open{overflow:hidden!important}.table-order-board:empty:before{content:'Hiện chưa có đơn nào cần xử lý.';color:#71717a}.live-orders .table-order-board{min-height:34px}
@media(max-width:980px){.pos-touch-form-pro{grid-template-columns:1fr!important}.pos-cart-list{max-height:18vh}.pos-touch-summary-pro{gap:8px}.pos-order-panel{padding:10px!important}.pos-option-panel{margin:8px auto;padding:12px}.pos-modal-bottom{grid-template-columns:1fr}.pos-choice-grid{grid-template-columns:1fr 1fr}.pos-touch-products{padding-bottom:calc(44dvh + 48px)!important}.pos-touch-summary{max-height:44dvh!important}.pos-cart-row{padding:7px}.pos-cart-row small{display:none}.pos-summary-lines .total{font-size:15px}}
@media(max-width:520px){.pos-choice-grid{grid-template-columns:1fr}.pos-option-head{grid-template-columns:64px 1fr}.pos-option-head img{width:64px;height:64px}.pos-option-head h2{font-size:17px}.pos-cart-actions{grid-template-columns:28px 24px 28px 28px}.pos-cart-actions button{min-height:28px}.pos-cart-list{max-height:16vh}.pos-touch-summary .card:not(.pos-order-panel){display:block}.pos-touch-summary h2{font-size:13px!important}.pos-order-panel h2{display:block!important}}

/* Update 4.4: menu sidebar thu gọn/mở rộng, header mobile 3 gạch, popup close rõ màu, offline sync */
.sidebar-head{display:flex;align-items:center;gap:8px;min-width:0}.sidebar-head .admin-brand{flex:1;min-width:0}.sidebar-head .admin-brand span{min-width:0}.sidebar-collapse-btn{width:34px;height:34px;min-width:34px;border-radius:10px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);box-shadow:none;color:#fff;padding:0;font-size:22px;line-height:1}.sidebar-collapse-btn:hover{background:rgba(255,255,255,.14);transform:none}.admin-mobile-menu{display:none;width:40px;height:40px;border-radius:12px;padding:0;box-shadow:none;background:#fff;color:#18181b;border:1px solid var(--line);font-size:22px}.admin-top-title{min-width:0}.offline-sync-badge{display:inline-flex;align-items:center;justify-content:center;border:1px solid #fed7aa;background:#fff7ed;color:#9a3412;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:500;white-space:nowrap}.is-offline .offline-sync-badge{border-color:#fecaca;background:#fef2f2;color:#991b1b}.admin-sidebar-backdrop{display:none}
.admin-shell.sidebar-collapsed{grid-template-columns:82px 1fr}.admin-shell.sidebar-collapsed .sidebar{padding:14px 10px;overflow-x:hidden}.admin-shell.sidebar-collapsed .admin-brand span,.admin-shell.sidebar-collapsed .side-card small,.admin-shell.sidebar-collapsed .side-card b,.admin-shell.sidebar-collapsed .side-card a,.admin-shell.sidebar-collapsed .side-nav a{font-size:0;gap:0;justify-content:center}.admin-shell.sidebar-collapsed .admin-brand{justify-content:center;padding:4px}.admin-shell.sidebar-collapsed .admin-brand .logo-dot{width:40px;height:40px}.admin-shell.sidebar-collapsed .nav-mark{min-width:38px;height:34px;font-size:14px}.admin-shell.sidebar-collapsed .side-nav a{padding:8px}.admin-shell.sidebar-collapsed .side-card{padding:8px;align-items:center}.admin-shell.sidebar-collapsed .sidebar-collapse-btn{transform:rotate(180deg)}
.po-modal-x,.pos-option-x{background:#991b1b!important;color:#fff!important;border:1px solid #991b1b!important;box-shadow:0 8px 22px rgba(153,27,27,.18)!important;font-weight:600!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}.po-modal-x:hover,.pos-option-x:hover{background:#7f1d1d!important;border-color:#7f1d1d!important;color:#fff!important;transform:none!important}.po-modal-panel{position:relative}.modal-panel .btn[data-modal-close],.modal-panel button[data-modal-close]{color:var(--brand)!important}.is-offline body:before{content:'Đang mất kết nối. Các thao tác hỗ trợ offline sẽ được lưu tạm và tự đồng bộ khi có mạng.';position:fixed;left:50%;top:10px;transform:translateX(-50%);z-index:5000;background:#991b1b;color:#fff;border-radius:999px;padding:8px 14px;font-size:13px;box-shadow:0 12px 30px rgba(0,0,0,.18);max-width:calc(100% - 24px);text-align:center}
@media(max-width:920px){.admin-shell{display:block}.admin-main{min-width:0}.admin-mobile-menu{display:inline-flex;align-items:center;justify-content:center}.admin-topbar{gap:10px;padding:10px 12px}.admin-top-title{flex:1}.admin-topbar .top-actions{gap:5px}.admin-topbar .top-actions .btn{padding:7px 8px;font-size:12px}.sidebar{position:fixed;left:0;top:0;bottom:0;width:min(310px,86vw);height:100dvh;z-index:2200;transform:translateX(-104%);transition:transform .16s ease;border-right:1px solid rgba(255,255,255,.08)}.admin-shell.sidebar-open .sidebar{transform:translateX(0)}.admin-sidebar-backdrop{position:fixed;inset:0;z-index:2190;background:rgba(24,24,27,.46);backdrop-filter:blur(2px)}.admin-shell.sidebar-open .admin-sidebar-backdrop{display:block}.admin-shell.sidebar-collapsed{grid-template-columns:none}.admin-shell.sidebar-collapsed .sidebar{padding:16px;overflow:auto}.admin-shell.sidebar-collapsed .admin-brand span,.admin-shell.sidebar-collapsed .side-card small,.admin-shell.sidebar-collapsed .side-card b,.admin-shell.sidebar-collapsed .side-card a,.admin-shell.sidebar-collapsed .side-nav a{font-size:inherit;gap:9px;justify-content:flex-start}.admin-shell.sidebar-collapsed .nav-mark{min-width:32px;height:24px;font-size:10px}.admin-shell.sidebar-collapsed .sidebar-collapse-btn{transform:none}.admin-wrap{padding:14px}.po-modal-x,.pos-option-x{width:42px!important;height:42px!important;font-size:24px!important}.offline-sync-badge{padding:5px 8px;font-size:11px}.is-offline body:before{top:auto;bottom:10px;border-radius:14px}}

/* Update: POS order result layout - remove inner scrollbars and fit bill/QR cleanly */
body.pos-order-view{min-height:100vh!important;height:auto!important;overflow:auto!important;background:#f4f1ed!important}
body.pos-order-view .pos-touch-screen{height:auto!important;min-height:100vh!important;overflow:visible!important;padding:0!important;background:#f4f1ed!important}
body.pos-order-view .pos-bill-console{height:auto!important;min-height:100vh!important;overflow:visible!important;display:grid!important;grid-template-columns:minmax(360px,42%) minmax(420px,1fr)!important;align-items:start!important;gap:16px!important;padding:18px!important;background:#f4f1ed!important}
body.pos-order-view .pos-bill-left,body.pos-order-view .pos-bill-right{height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important}
body.pos-order-view .pos-bill-paper{max-width:500px!important;width:100%!important;margin:0 auto!important;border-radius:18px!important;padding:18px 20px!important;box-shadow:0 12px 32px rgba(24,24,27,.075)!important}
body.pos-order-view .pos-bill-table{width:100%!important}
body.pos-order-view .pos-bill-table th,body.pos-order-view .pos-bill-table td{font-size:13px!important;padding:8px 5px!important;line-height:1.35!important}
body.pos-order-view .bill-center h2{font-size:21px!important;margin:0 0 4px!important}
body.pos-order-view .bill-center p{font-size:12px!important;margin:3px 0!important;line-height:1.35!important}
body.pos-order-view .bill-print-qr img{width:138px!important;height:138px!important;object-fit:contain!important;margin:6px auto 0!important}
body.pos-order-view .pos-payment-card{height:auto!important;min-height:0!important;overflow:visible!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;gap:10px!important;padding:20px 24px!important;border-radius:18px!important}
body.pos-order-view .pos-payment-card h1{font-size:clamp(34px,4vw,50px)!important;line-height:1.05!important;margin:4px 0!important;color:#7c4a0c!important}
body.pos-order-view .pos-payment-card p{margin:0!important;font-size:14px!important;color:#57534e!important}
body.pos-order-view .pos-payment-qr{width:min(330px,62vw)!important;max-width:100%!important;height:auto!important;max-height:330px!important;object-fit:contain!important;margin:0 auto!important;padding:10px!important;border-radius:18px!important;background:#fff!important}
body.pos-order-view .qr-info{font-size:14px!important;line-height:1.35!important;gap:3px!important}
body.pos-order-view .qr-info b{font-size:16px!important}
body.pos-order-view .pos-action-grid{width:100%!important;margin-top:10px!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;align-self:stretch!important}
body.pos-order-view .pos-action-grid .btn,body.pos-order-view .pos-action-grid button{min-height:46px!important;width:100%!important;border-radius:12px!important}
@media(max-width:1180px){body.pos-order-view .pos-bill-console{grid-template-columns:1fr!important;padding:12px!important}body.pos-order-view .pos-bill-paper{max-width:560px!important}body.pos-order-view .pos-payment-card{max-width:720px!important;width:100%!important;margin:0 auto!important}body.pos-order-view .pos-payment-qr{width:min(300px,72vw)!important}}
@media(max-width:640px){body.pos-order-view .pos-bill-console{gap:10px!important;padding:8px!important}body.pos-order-view .pos-bill-paper{padding:13px!important;border-radius:14px!important}body.pos-order-view .pos-payment-card{padding:14px!important;border-radius:14px!important}body.pos-order-view .pos-payment-card h1{font-size:32px!important}body.pos-order-view .pos-payment-qr{width:min(240px,78vw)!important;max-height:240px!important}body.pos-order-view .pos-action-grid{grid-template-columns:1fr!important}.bill-print-qr img{width:120px!important;height:120px!important}}

/* Update 4.6: front-end mobile hamburger menu */
.site-menu-btn{display:none;width:42px;height:42px;min-width:42px;border-radius:13px;padding:0;background:#fff;color:#18181b;border:1px solid var(--line);box-shadow:none;font-size:22px;line-height:1}
.site-menu-btn:hover{background:#fafaf9;color:var(--brand);transform:none}
.site-menu-backdrop{display:none}
@media(max-width:760px){
  .site-header{z-index:1100}
  .site-nav{padding:10px 14px;min-height:60px}
  .site-nav .brand{min-width:0;flex:1;font-size:15px}
  .site-nav .brand span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .site-menu-btn{display:inline-flex;align-items:center;justify-content:center;position:relative;z-index:1115}
  .site-nav .site-menu{position:fixed;left:12px;right:12px;top:70px;z-index:1110;display:grid!important;grid-template-columns:1fr;gap:6px;padding:12px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 18px 45px rgba(24,24,27,.18);transform:translateY(-8px);opacity:0;visibility:hidden;pointer-events:none;max-height:calc(100dvh - 92px);overflow:auto}
  .site-nav .site-menu a{display:flex;align-items:center;justify-content:space-between;width:100%;padding:13px 14px;border-radius:13px;font-size:16px;color:#27272a;border:1px solid #f3f0eb;background:#fff}
  .site-nav .site-menu a:hover{background:#fff7ed;color:var(--brand)}
  .site-menu-backdrop{position:fixed;inset:0;z-index:1105;background:rgba(24,24,27,.42);backdrop-filter:blur(2px)}
  body.site-menu-open{overflow:hidden}
  body.site-menu-open .site-menu-backdrop{display:block}
  body.site-menu-open .site-nav .site-menu{transform:translateY(0);opacity:1;visibility:visible;pointer-events:auto}
  body.site-menu-open .site-menu-btn{background:#18181b;color:#fff;border-color:#18181b}
}

/* Update 4.7: front-end mobile header logo left, hamburger right */
@media(max-width:760px){
  .site-nav{
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px!important;
    width:100%!important;
  }
  .site-nav .brand{
    order:1!important;
    flex:1 1 auto!important;
    justify-content:flex-start!important;
    max-width:calc(100% - 56px)!important;
  }
  .site-menu-btn{
    order:2!important;
    margin-left:auto!important;
    flex:0 0 42px!important;
  }
  .site-nav .site-menu{
    order:3!important;
  }
}

/* Update: category product count + delete action */
.row-actions form{display:inline-flex;margin:0}
.danger-zone{border-color:#fecaca;background:#fff7f7}
.table-wrap td .btn.danger.small{padding:7px 10px}

/* Update 4.9: chỉ hiển thị logo, bỏ site name và nền logo */
.brand-logo-img,
.admin-brand .brand-logo-img,
.brand .brand-logo-img{
  width:auto!important;
  height:auto!important;
  max-width:150px!important;
  max-height:48px!important;
  object-fit:contain!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  padding:0!important;
  box-shadow:none!important;
}
.site-header .brand-logo-img{max-height:46px!important;max-width:170px!important}
.sidebar .admin-brand .brand-logo-img{max-height:52px!important;max-width:172px!important}
.brand-logo-only,.admin-brand-logo-only{gap:0!important;display:inline-flex!important;align-items:center!important;min-width:0!important}
.brand-logo-only span,.admin-brand-logo-only span{display:none!important}
.sidebar-head .admin-brand-logo-only{justify-content:flex-start!important;flex:1 1 auto!important;padding:4px 0!important}
.foot-logo{display:inline-flex;align-items:center;justify-content:center}
.foot-logo .brand-logo-img{max-height:42px!important;max-width:150px!important}
.admin-shell.sidebar-collapsed .admin-brand-logo-only{justify-content:center!important}
.admin-shell.sidebar-collapsed .admin-brand-logo-only .brand-logo-img{max-width:46px!important;max-height:46px!important}
@media(max-width:760px){
  .site-nav .brand-logo-only{flex:1 1 auto!important;justify-content:flex-start!important;max-width:calc(100% - 58px)!important}
  .site-nav .brand-logo-img{max-height:42px!important;max-width:155px!important}
}

/* Update: Việt hóa trạng thái bếp, bỏ nút hoàn thành đơn trên màn hình bếp */
.kitchen-status-items li{align-items:flex-start;gap:12px}
.kitchen-item-main{display:flex;flex-direction:column;gap:3px;flex:1;min-width:0}
.kitchen-item-main b{font-weight:600;color:#2f1d10}
.kitchen-item-main span{font-size:13px;color:#7a4b1b}
.kitchen-item-main small{display:block;color:#6f5b4d;line-height:1.45}
.kitchen-item-main em{font-style:normal;display:inline-flex;width:max-content;margin-top:4px;padding:3px 8px;border-radius:999px;background:#f7eadb;color:#8a4d0b;font-size:12px;font-weight:600}
.kitchen-items li.is-preparing{background:#fff8ed;border-color:#f1c27a}
.kitchen-items li.is-prepared{background:#eefaf0;border-color:#9bd7a6}
.kitchen-items li.is-prepared .kitchen-item-main em{background:#dff5e4;color:#166534}
.kitchen-items li.is-preparing .kitchen-item-main em{background:#fff0d2;color:#92400e}
.kitchen-action-row{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;align-items:center}
.kitchen-status-btn{white-space:nowrap;min-height:34px;line-height:1}
.kitchen-status-btn.active{background:#8a4d0b!important;color:#fff!important;border-color:#8a4d0b!important;box-shadow:0 8px 18px rgba(138,77,11,.18)}
@media(max-width:700px){.kitchen-items li{display:block}.kitchen-action-row{justify-content:flex-start;margin-top:10px}.kitchen-status-btn{flex:1;min-width:120px}.kitchen-item-main em{margin-top:6px}}


/* Update: live dashboard stats + kitchen icon trạng thái */
#adminLiveClock{font-variant-numeric:tabular-nums;color:#6b7280}
.work-label.icon-only{width:38px;height:32px;display:inline-grid;place-items:center;border-radius:999px;font-size:18px;font-weight:600;line-height:1;border:1px solid transparent;box-shadow:none}
.work-label.icon-only span{display:inline-block;line-height:1}
.work-label.icon-only.todo{background:#fff7ed;color:#a2600a;border-color:#fed7aa}
.work-label.icon-only.doing{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}
.work-label.icon-only.done{background:#ecfdf5;color:#15803d;border-color:#bbf7d0}
.work-label.icon-only.doing span{animation:cbmClockPulse 1.1s ease-in-out infinite}
@keyframes cbmClockPulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.08);opacity:.72}}
.kitchen-check:empty:before{content:'…';color:#a2600a;font-weight:600}
.kitchen-check-list li.is-preparing{background:#eff6ff;border-radius:9px}
.kitchen-check-list li.is-preparing .kitchen-check{background:#dbeafe;color:#1d4ed8;border-color:#bfdbfe}
.table-order-board.live-sync-pulse{animation:livePulse .25s ease}
[data-live-stat]{font-variant-numeric:tabular-nums}
@media(max-width:700px){.work-label.icon-only{width:34px;height:30px;font-size:16px}}

/* Update: front-end mobile product uploaded image visibility fix */
.product-media.media-submit,
.product-photo-add,
.menu-products .product-media{
  display:block!important;
  width:100%!important;
  min-height:120px;
  overflow:hidden;
}
.menu-products .product-media img,
.menu-products .product img,
.product-compact .product-media img{
  display:block!important;
  width:100%!important;
  height:142px!important;
  min-height:84px!important;
  object-fit:cover!important;
  background:#f4f4f5!important;
  opacity:1!important;
  visibility:visible!important;
}
@media(max-width:700px){
  .product-media.media-submit,
  .product-photo-add,
  .menu-products .product-media{
    min-height:84px!important;
  }
  .menu-products .product-media img,
  .menu-products .product img,
  .product-compact .product-media img{
    height:84px!important;
  }
}

/* Update 5.1: bếp live realtime trên mobile */
.kitchen-live-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:8px;font-size:13px;color:#6b7280}
.kitchen-live-meta .live-dot{width:9px;height:9px;border-radius:999px;background:#16a34a;box-shadow:0 0 0 4px rgba(22,163,74,.12)}
.kitchen-live-meta b{font-weight:600;color:#166534}
.kitchen-live-meta b.is-error{color:#b91c1c}
.kitchen-live-meta b.is-error + span,.kitchen-live-meta b.is-error ~ span{color:#b91c1c}
.po-kitchen-board.live-sync-pulse{animation:none;outline:2px solid rgba(162,96,10,.18);outline-offset:3px;border-radius:16px}
.kitchen-empty-state{padding:18px;border:1px dashed rgba(162,96,10,.24);border-radius:16px;background:#fffaf2}
.po-kitchen-card[data-kitchen-order-id]{transition:none}
@media(max-width:760px){.kitchen-page-head{align-items:flex-start}.kitchen-page-head .btn.enable-order-sound{width:100%;justify-content:center}.kitchen-live-meta{font-size:12px}.po-kitchen-board{min-height:160px}.kitchen-action-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.kitchen-action-row form,.kitchen-action-row .btn{width:100%}}

/* Update: hiển thị công thức từng ly trên màn hình bếp */
.kitchen-recipe-box{
  margin:10px 0 12px;
  padding:10px 12px;
  border:1px solid rgba(162,96,10,.18);
  background:linear-gradient(180deg,#fffaf1,#fffdf8);
  border-radius:14px;
}
.kitchen-recipe-box .recipe-title{
  display:flex;
  align-items:center;
  gap:8px;
  margin-bottom:8px;
  color:#7a4708;
  font-weight:600;
  font-size:14px;
}
.kitchen-recipe-box .recipe-title i{
  width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;
  border-radius:9px;background:#fff1d6;color:#a2600a;
}
.kitchen-recipe-box .recipe-title b{
  margin-left:auto;
  font-size:12px;
  color:#8a6b3d;
  font-weight:500;
}
.recipe-chip-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(140px,1fr));
  gap:7px;
}
.recipe-chip{
  display:flex;
  justify-content:space-between;
  gap:8px;
  padding:8px 10px;
  border-radius:12px;
  background:#fff;
  border:1px solid rgba(0,0,0,.06);
  box-shadow:0 3px 10px rgba(0,0,0,.035);
}
.recipe-chip strong{
  font-size:13px;
  color:#16181d;
  font-weight:600;
  line-height:1.25;
}
.recipe-chip em{
  font-style:normal;
  white-space:nowrap;
  color:#a2600a;
  font-weight:600;
  font-size:13px;
}
.recipe-chip.stock-warn{
  border-color:rgba(219,12,31,.25);
  background:#fff7f7;
}
.kitchen-recipe-empty{
  background:#f8fafc;
  border-color:#e5e7eb;
  color:#6b7280;
}
.kitchen-recipe-empty p{margin:0;font-size:13px;}
@media(max-width:640px){
  .kitchen-recipe-box{padding:9px;margin:9px 0 11px;border-radius:12px;}
  .recipe-chip-grid{grid-template-columns:1fr;gap:6px;}
  .recipe-chip{padding:8px;}
  .kitchen-recipe-box .recipe-title{font-size:13px;}
}

/* Update: hard fix live bếp + layout công thức không bị chồng/lệch */
.po-kitchen-card{overflow:visible!important;max-width:100%;}
.po-kitchen-card .card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;}
.kitchen-status-items li,
.po-kitchen-card li{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 108px!important;
  grid-template-areas:"main actions" "recipe actions";
  align-items:start!important;
  gap:10px 12px!important;
  width:100%;
  box-sizing:border-box;
}
.kitchen-item-main{grid-area:main;min-width:0;width:100%;}
.kitchen-recipe-box{grid-area:recipe;width:100%;box-sizing:border-box;min-width:0;}
.kitchen-action-row{grid-area:actions;align-self:start;display:grid!important;grid-template-columns:1fr!important;gap:8px!important;justify-content:stretch!important;width:100%;}
.kitchen-action-row form,.kitchen-action-row button{width:100%!important;}
.recipe-chip-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))!important;}
.recipe-chip{min-width:0;align-items:center;}
.recipe-chip strong{word-break:break-word;}
.recipe-chip em{font-style:normal!important;white-space:nowrap!important;width:auto!important;margin:0!important;padding:0!important;background:transparent!important;border-radius:0!important;box-shadow:none!important;color:#a2600a!important;}
.kitchen-live-meta b.is-error{color:#b91c1c!important;}
.kitchen-live-meta b:not(.is-error){color:#166534!important;}
@media(max-width:900px){
  .kitchen-status-items li,.po-kitchen-card li{grid-template-columns:minmax(0,1fr)!important;grid-template-areas:"main" "recipe" "actions"!important;}
  .kitchen-action-row{grid-template-columns:1fr 1fr!important;}
  .recipe-chip-grid{grid-template-columns:1fr 1fr!important;}
}
@media(max-width:520px){
  .recipe-chip-grid{grid-template-columns:1fr!important;}
  .kitchen-action-row{grid-template-columns:1fr 1fr!important;}
  .kitchen-recipe-box .recipe-title{flex-wrap:wrap;}
  .kitchen-recipe-box .recipe-title b{margin-left:0;}
}

/* Update: công thức bếp thu gọn 2 hàng */
.kitchen-recipe-box{
  margin:6px 0 8px!important;
  padding:7px 8px!important;
  border-radius:12px!important;
}
.kitchen-recipe-box .recipe-title{
  margin-bottom:5px!important;
  gap:6px!important;
  font-size:12px!important;
  line-height:1.25!important;
}
.kitchen-recipe-box .recipe-title i{
  width:22px!important;
  height:22px!important;
  border-radius:8px!important;
  font-size:12px!important;
}
.kitchen-recipe-box .recipe-title b{
  font-size:11px!important;
  white-space:nowrap!important;
}
.recipe-chip-grid{
  grid-template-columns:repeat(auto-fit,minmax(92px,1fr))!important;
  gap:5px!important;
  align-items:start!important;
}
.recipe-chip{
  padding:5px 7px!important;
  border-radius:9px!important;
  min-height:30px!important;
  box-shadow:none!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:5px!important;
}
.recipe-chip strong{
  font-size:12px!important;
  line-height:1.15!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.recipe-chip em{
  font-size:12px!important;
  line-height:1.15!important;
}
.kitchen-recipe-box.is-compact:not(.is-expanded) .recipe-chip-grid{
  max-height:70px!important;
  overflow:hidden!important;
}
.recipe-toggle{
  margin-top:6px!important;
  border:1px solid rgba(162,96,10,.22)!important;
  background:#fffaf3!important;
  color:#9a5a0d!important;
  border-radius:999px!important;
  font-size:12px!important;
  font-weight:600!important;
  padding:5px 10px!important;
  line-height:1!important;
  cursor:pointer!important;
}
.recipe-toggle:hover{background:#fff2dc!important;}
.kitchen-recipe-box.is-expanded .recipe-chip-grid{max-height:none!important;overflow:visible!important;}
@media(max-width:900px){
  .recipe-chip-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .kitchen-recipe-box.is-compact:not(.is-expanded) .recipe-chip-grid{max-height:72px!important;}
}
@media(max-width:430px){
  .recipe-chip-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .recipe-chip{grid-template-columns:1fr!important;gap:2px!important;align-items:start!important;}
  .recipe-chip strong,.recipe-chip em{font-size:11.5px!important;}
  .kitchen-recipe-box.is-compact:not(.is-expanded) .recipe-chip-grid{max-height:86px!important;}
}

/* Update: ẩn công thức khỏi màn hình bếp theo yêu cầu vận hành */
.po-kitchen-board .kitchen-recipe-box,.po-kitchen-board .recipe-chip-grid,.po-kitchen-board .recipe-toggle{display:none!important;}

/* Expense receipt camera + orientation preview */
.inv-camera-field small{display:block;margin-top:6px;color:#6b7280;font-size:12px;line-height:1.45}
.inv-camera-input{padding:10px;background:#fff;border:1px dashed #d1d5db;border-radius:12px}
.inv-receipt-preview{margin:12px 0 14px;padding:12px;border:1px solid #e5e7eb;border-radius:16px;background:#fff7ed;display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.inv-receipt-preview[hidden]{display:none!important}
.inv-receipt-preview-frame{width:140px;height:140px;border-radius:14px;background:#111827;display:flex;align-items:center;justify-content:center;overflow:hidden;border:1px solid rgba(0,0,0,.08)}
.inv-receipt-preview-frame img{max-width:100%;max-height:100%;object-fit:contain;transition:transform .18s ease}
.inv-receipt-tools{display:flex;gap:8px;align-items:center;flex-wrap:wrap;flex:1;min-width:220px}
.inv-receipt-tools span{width:100%;font-size:13px;color:#7c2d12;font-weight:700}
.inv-thumb-link{display:inline-flex;align-items:center;justify-content:center}
.inv-thumb{object-fit:cover;border-radius:8px;border:1px solid #e5e7eb;background:#fff}
@media(max-width:640px){.inv-receipt-preview{align-items:flex-start}.inv-receipt-preview-frame{width:110px;height:110px}.inv-receipt-tools{min-width:0}.inv-receipt-tools .btn{padding:7px 9px;font-size:12px}}

/* Expense live web camera capture */
.inv-expense-modal-panel{max-width:min(960px,calc(100vw - 22px));}
.inv-live-camera-card{margin:14px 0;padding:14px;border:1px solid #e5e7eb;border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(15,23,42,.05)}
.inv-live-camera-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px;flex-wrap:wrap}
.inv-live-camera-head b{display:block;color:#111827;font-size:15px;margin-bottom:3px}
.inv-live-camera-head small,.inv-file-picker-row small,.inv-camera-status{display:block;color:#6b7280;font-size:12px;line-height:1.45}
.inv-live-camera-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.inv-file-picker-row{margin-bottom:12px}
.inv-live-camera-box{border:1px solid #fed7aa;border-radius:16px;background:#fff7ed;padding:10px;overflow:hidden}
.inv-live-camera-box[hidden]{display:none!important}
.inv-live-camera-box video{width:100%;max-height:46vh;display:block;border-radius:14px;background:#111827;object-fit:contain}
.inv-live-camera-box video.is-mirrored{transform:scaleX(-1)}
.inv-live-camera-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:10px 0 7px}
.inv-live-camera-toolbar .btn:first-child{font-weight:800}
@media(max-width:640px){.inv-expense-modal-panel{max-width:calc(100vw - 12px);padding:12px}.inv-live-camera-head{display:block}.inv-live-camera-actions{justify-content:flex-start;margin-top:10px}.inv-live-camera-actions .btn,.inv-live-camera-toolbar .btn{padding:8px 9px;font-size:12px}.inv-live-camera-box video{max-height:54vh}.inv-live-camera-card{padding:11px;border-radius:15px}}

/* Expense modal mobile compact hardfix: tránh popup rộng/kéo dài trên mobile */
.inv-expense-modal-panel,
.inv-expense-modal-panel *{max-width:100%;}
.inv-expense-modal-panel{overflow-x:hidden;}
.inv-expense-modal-panel form{min-width:0;}
.inv-expense-modal-panel .grid.two{min-width:0;}
.inv-camera-field{display:block;min-width:0;overflow:hidden;}
.inv-camera-input{width:100%;max-width:100%;min-width:0;display:block;}
.inv-file-picker-row{min-width:0;}
.expense-modal-open{overflow:hidden!important;}
@media(max-width:700px){
  #expenseModal.modal.is-open{display:flex;align-items:flex-end;justify-content:center;overflow:hidden;}
  #expenseModal .modal-backdrop{position:fixed;}
  .inv-expense-modal-panel{
    width:100vw!important;
    max-width:100vw!important;
    height:min(92dvh,calc(100dvh - 8px));
    max-height:calc(100dvh - 8px)!important;
    margin:0!important;
    border-radius:18px 18px 0 0!important;
    padding:12px!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch;
  }
  .inv-expense-modal-panel .page-head{display:flex!important;align-items:center!important;gap:8px!important;margin-bottom:10px!important;position:sticky;top:-12px;background:#fff;z-index:3;padding:4px 0 9px;border-bottom:1px solid #f1e7dc;}
  .inv-expense-modal-panel .page-head h2{font-size:18px!important;margin:0!important;line-height:1.2!important;}
  .inv-expense-modal-panel .page-head p{display:none!important;}
  .inv-expense-modal-panel .page-head .btn{width:auto!important;min-width:66px!important;padding:8px 11px!important;}
  .inv-expense-modal-panel .form{display:block!important;}
  .inv-expense-modal-panel .grid.two{display:grid!important;grid-template-columns:1fr!important;gap:9px!important;}
  .inv-expense-modal-panel label{gap:4px!important;margin-bottom:8px!important;}
  .inv-expense-modal-panel input,
  .inv-expense-modal-panel select,
  .inv-expense-modal-panel textarea{width:100%!important;max-width:100%!important;min-width:0!important;}
  .inv-expense-modal-panel textarea{min-height:64px!important;}
  .inv-live-camera-card{margin:10px 0!important;padding:10px!important;border-radius:14px!important;}
  .inv-live-camera-head{display:block!important;margin-bottom:8px!important;}
  .inv-live-camera-head b{font-size:14px!important;margin-bottom:0!important;}
  .inv-live-camera-head small,
  .inv-camera-field small,
  .inv-receipt-tools span{display:none!important;}
  .inv-live-camera-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px!important;margin-top:8px!important;justify-content:stretch!important;}
  .inv-live-camera-actions .btn{width:100%!important;padding:8px 7px!important;font-size:12px!important;min-height:36px!important;white-space:normal!important;}
  .inv-file-picker-row{margin-bottom:8px!important;}
  .inv-camera-field{font-size:13px!important;line-height:1.25!important;}
  .inv-camera-input{padding:8px!important;border-radius:10px!important;font-size:13px!important;}
  .inv-live-camera-box{padding:8px!important;border-radius:13px!important;}
  .inv-live-camera-box video{max-height:38dvh!important;border-radius:12px!important;object-fit:contain!important;}
  .inv-live-camera-toolbar{display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px!important;margin:8px 0 4px!important;}
  .inv-live-camera-toolbar .btn{width:100%!important;padding:8px 7px!important;font-size:12px!important;min-height:36px!important;}
  .inv-camera-status{font-size:11px!important;line-height:1.3!important;margin-top:5px!important;display:block!important;}
  .inv-receipt-preview{display:grid!important;grid-template-columns:96px minmax(0,1fr)!important;gap:9px!important;padding:9px!important;margin:8px 0 10px!important;border-radius:13px!important;align-items:start!important;}
  .inv-receipt-preview-frame{width:96px!important;height:96px!important;border-radius:11px!important;}
  .inv-receipt-tools{display:grid!important;grid-template-columns:1fr 1fr!important;gap:6px!important;min-width:0!important;width:100%!important;}
  .inv-receipt-tools .btn{width:100%!important;padding:7px 6px!important;font-size:11px!important;min-height:34px!important;white-space:normal!important;}
  .inv-expense-modal-panel > form > .btn,
  .inv-expense-modal-panel form > button.btn{width:100%!important;min-height:42px!important;margin-top:4px!important;}
}
@media(max-width:380px){
  .inv-live-camera-actions,.inv-live-camera-toolbar,.inv-receipt-tools{grid-template-columns:1fr!important;}
  .inv-receipt-preview{grid-template-columns:82px minmax(0,1fr)!important;}
  .inv-receipt-preview-frame{width:82px!important;height:82px!important;}
}

/* Expense mobile popup final compact v2: khóa tràn ngang, rút gọn camera/preview trên iPhone/Android */
#expenseModal,
#expenseModal *{
  box-sizing:border-box!important;
}
#expenseModal input,
#expenseModal select,
#expenseModal textarea,
#expenseModal button{
  max-width:100%!important;
}
#expenseModal input[type="date"],
#expenseModal input[type="number"],
#expenseModal select{
  min-width:0!important;
  appearance:auto;
  -webkit-appearance:auto;
}
#expenseModal .inv-camera-input{
  width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
  font-size:14px!important;
}
#expenseModal .inv-file-picker-row,
#expenseModal .inv-camera-field,
#expenseModal .inv-live-camera-card,
#expenseModal .inv-live-camera-box,
#expenseModal .inv-receipt-preview{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
}
#expenseModal .inv-live-camera-actions .btn,
#expenseModal .inv-live-camera-toolbar .btn,
#expenseModal .inv-receipt-tools .btn{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
@media(max-width:700px){
  html,
  body.expense-modal-open{
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
  }
  body.expense-modal-open{
    overscroll-behavior:contain!important;
    touch-action:auto!important;
  }
  #expenseModal.modal.is-open{
    position:fixed!important;
    inset:0!important;
    width:100dvw!important;
    max-width:100dvw!important;
    height:100dvh!important;
    max-height:100dvh!important;
    padding:0 8px!important;
    display:flex!important;
    align-items:flex-end!important;
    justify-content:center!important;
    overflow:hidden!important;
  }
  #expenseModal .modal-backdrop{
    position:fixed!important;
    inset:0!important;
  }
  #expenseModal .modal-panel.inv-expense-modal-panel,
  .inv-expense-modal-panel{
    position:relative!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    top:auto!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:auto!important;
    max-height:calc(100svh - 14px)!important;
    margin:0!important;
    padding:10px!important;
    border-radius:16px 16px 0 0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    contain:layout paint!important;
  }
  #expenseModal .inv-expense-modal-panel .page-head{
    position:sticky!important;
    top:-10px!important;
    z-index:20!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 72px!important;
    align-items:center!important;
    gap:8px!important;
    background:#fff!important;
    padding:6px 0 8px!important;
    margin:0 0 8px!important;
    border-bottom:1px solid #f1e7dc!important;
  }
  #expenseModal .inv-expense-modal-panel .page-head > div{
    min-width:0!important;
    overflow:hidden!important;
  }
  #expenseModal .inv-expense-modal-panel .page-head h2{
    font-size:18px!important;
    line-height:1.15!important;
    margin:0!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  #expenseModal .inv-expense-modal-panel .page-head p{
    display:none!important;
  }
  #expenseModal .inv-expense-modal-panel .page-head .btn{
    width:72px!important;
    min-width:0!important;
    padding:8px 6px!important;
    justify-content:center!important;
  }
  #expenseModal .inv-expense-modal-panel .form,
  #expenseModal .inv-expense-modal-panel .grid.two{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:8px!important;
    width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
  }
  #expenseModal .inv-expense-modal-panel label{
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    gap:4px!important;
    overflow:hidden!important;
  }
  #expenseModal .inv-expense-modal-panel input,
  #expenseModal .inv-expense-modal-panel select,
  #expenseModal .inv-expense-modal-panel textarea{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    font-size:16px!important;
    line-height:1.25!important;
    padding:10px 11px!important;
  }
  #expenseModal .inv-expense-modal-panel textarea{
    min-height:58px!important;
  }
  #expenseModal .inv-live-camera-card{
    margin:4px 0!important;
    padding:8px!important;
    border-radius:12px!important;
    box-shadow:none!important;
    display:grid!important;
    gap:7px!important;
  }
  #expenseModal .inv-live-camera-head{
    margin:0!important;
    display:grid!important;
    gap:6px!important;
  }
  #expenseModal .inv-live-camera-head b{
    font-size:14px!important;
    line-height:1.2!important;
  }
  #expenseModal .inv-live-camera-head small,
  #expenseModal .inv-camera-field small,
  #expenseModal .inv-receipt-tools span{
    display:none!important;
  }
  #expenseModal .inv-live-camera-actions{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:5px!important;
    margin:0!important;
    width:100%!important;
  }
  #expenseModal .inv-live-camera-actions .btn,
  #expenseModal .inv-live-camera-toolbar .btn,
  #expenseModal .inv-receipt-tools .btn{
    width:100%!important;
    min-height:34px!important;
    padding:7px 5px!important;
    font-size:12px!important;
    line-height:1.15!important;
    border-radius:10px!important;
  }
  #expenseModal .inv-file-picker-row{
    margin:0!important;
  }
  #expenseModal .inv-camera-field{
    display:grid!important;
    gap:5px!important;
    font-size:13px!important;
    line-height:1.15!important;
  }
  #expenseModal .inv-camera-input{
    padding:8px!important;
    border-radius:10px!important;
    font-size:13px!important;
    line-height:1.15!important;
  }
  #expenseModal .inv-live-camera-box{
    padding:7px!important;
    border-radius:12px!important;
    display:grid!important;
    gap:6px!important;
  }
  #expenseModal .inv-live-camera-box[hidden]{display:none!important;}
  #expenseModal .inv-live-camera-box video{
    width:100%!important;
    height:min(34svh,280px)!important;
    max-height:min(34svh,280px)!important;
    min-height:160px!important;
    display:block!important;
    border-radius:11px!important;
    object-fit:cover!important;
    background:#111827!important;
  }
  #expenseModal .inv-live-camera-toolbar{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:5px!important;
    margin:0!important;
    width:100%!important;
  }
  #expenseModal .inv-camera-status{
    font-size:11px!important;
    line-height:1.25!important;
    margin:0!important;
    max-height:28px!important;
    overflow:hidden!important;
  }
  #expenseModal .inv-receipt-preview{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:7px!important;
    padding:7px!important;
    margin:4px 0!important;
    border-radius:12px!important;
    align-items:start!important;
  }
  #expenseModal .inv-receipt-preview[hidden]{display:none!important;}
  #expenseModal .inv-receipt-preview-frame{
    width:100%!important;
    height:min(30svh,220px)!important;
    max-height:min(30svh,220px)!important;
    min-height:120px!important;
    border-radius:10px!important;
  }
  #expenseModal .inv-receipt-preview-frame img{
    width:100%!important;
    height:100%!important;
    max-width:100%!important;
    max-height:100%!important;
    object-fit:contain!important;
  }
  #expenseModal .inv-receipt-tools{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:5px!important;
    width:100%!important;
    min-width:0!important;
  }
  #expenseModal .inv-expense-modal-panel > form > .btn,
  #expenseModal .inv-expense-modal-panel form > button.btn{
    width:100%!important;
    min-height:40px!important;
    margin-top:2px!important;
  }
}
@media(max-width:390px){
  #expenseModal .inv-live-camera-actions,
  #expenseModal .inv-live-camera-toolbar{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  #expenseModal .inv-live-camera-actions .btn,
  #expenseModal .inv-live-camera-toolbar .btn,
  #expenseModal .inv-receipt-tools .btn{
    font-size:11px!important;
    padding-left:4px!important;
    padding-right:4px!important;
  }
  #expenseModal .inv-receipt-tools{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

/* Expense detail/edit popup update */
.expense-action-row{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.expense-action-row form{display:inline-flex;margin:0}.expense-action-row .btn,.expense-action-row button{white-space:nowrap}.expense-note-cell{max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inv-expense-detail-panel{max-width:min(760px,calc(100vw - 24px))}.inv-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:8px}.inv-detail-grid>div,.inv-detail-note{border:1px solid #f0dfc7;background:#fffaf3;border-radius:14px;padding:12px}.inv-detail-grid span,.inv-detail-note span{display:block;color:#78716c;font-size:12px;margin-bottom:4px}.inv-detail-grid b{display:block;color:#1f2937;font-weight:600;word-break:break-word}.inv-detail-note{margin-top:10px}.inv-detail-note p{margin:0;white-space:pre-wrap;color:#374151}.inv-detail-receipt{margin-top:12px;border:1px solid #ead7ba;background:#fff;border-radius:16px;padding:10px;text-align:center}.inv-detail-receipt img{max-width:100%;max-height:58vh;object-fit:contain;border-radius:12px}.inv-existing-receipt{display:flex;flex-wrap:wrap;gap:10px;align-items:center;border:1px dashed #e7c89a;border-radius:12px;padding:9px 10px;margin:8px 0;background:#fff7ed}.inv-existing-receipt a{font-weight:600;color:#92400e}.inv-existing-receipt label{margin:0!important;display:inline-flex!important;flex-direction:row!important;align-items:center!important;gap:6px!important;color:#7c2d12}.inv-existing-receipt input[type="checkbox"]{width:auto!important}.expense-table td:last-child{min-width:150px}
@media(max-width:700px){.expense-table td:last-child{min-width:0}.expense-action-row{gap:5px}.expense-action-row .btn,.expense-action-row button{padding:7px 9px!important;font-size:12px!important}.inv-expense-detail-panel{width:calc(100vw - 14px)!important;margin:8px auto!important;max-height:calc(100dvh - 16px)!important;overflow:auto!important;border-radius:18px!important}.inv-detail-grid{grid-template-columns:1fr;gap:8px}.inv-detail-grid>div,.inv-detail-note{padding:10px;border-radius:12px}.inv-detail-receipt img{max-height:46vh}.expense-note-cell{max-width:140px}.inv-existing-receipt{font-size:13px}}

/* Expense receipt lightbox */
.inv-thumb-link.inv-img-lightbox-trigger{border:0;background:transparent;padding:0;margin:0;cursor:zoom-in;border-radius:10px;line-height:0}
.inv-thumb-link.inv-img-lightbox-trigger:hover .inv-thumb{box-shadow:0 0 0 2px rgba(154,90,13,.25)}
.inv-detail-receipt-btn{display:inline-flex;flex-direction:column;align-items:center;gap:7px;border:0;background:transparent;padding:0;margin:0;cursor:zoom-in;color:#92400e;font-weight:600;max-width:100%}
.inv-detail-receipt-btn img{display:block;max-width:100%;max-height:58vh;object-fit:contain;border-radius:12px}
.inv-existing-receipt-link{border:0;background:transparent;color:#92400e;font-weight:600;padding:0;cursor:zoom-in;text-decoration:underline;text-underline-offset:3px}
.inv-image-lightbox[hidden]{display:none!important}
.inv-image-lightbox{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:14px}
.inv-image-lightbox-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.78);backdrop-filter:blur(2px)}
.inv-image-lightbox-panel{position:relative;z-index:1;width:min(1120px,calc(100vw - 24px));height:min(92dvh,860px);background:#fff;border-radius:22px;box-shadow:0 24px 70px rgba(0,0,0,.34);display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(255,255,255,.42)}
.inv-image-lightbox-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-bottom:1px solid #f0dfc7;background:#fffaf3}
.inv-image-lightbox-head b{font-size:15px;color:#1f2937;font-weight:600}
.inv-image-lightbox-toolbar{display:flex;gap:6px;align-items:center;justify-content:center;flex-wrap:wrap;padding:8px;border-bottom:1px solid #f1e7dc;background:#fff}
.inv-image-lightbox-toolbar .btn{width:auto!important;min-width:42px!important;padding:7px 10px!important}
.inv-image-lightbox-stage{flex:1;min-height:0;overflow:hidden;background:#111827;display:flex;align-items:center;justify-content:center;touch-action:none;user-select:none;position:relative;cursor:grab;overscroll-behavior:contain;-webkit-user-select:none}
.inv-image-lightbox-stage img{max-width:92%;max-height:92%;object-fit:contain;transform-origin:center center;will-change:transform;transition:none!important;border-radius:8px;box-shadow:0 10px 35px rgba(0,0,0,.35);user-select:none;-webkit-user-select:none;-webkit-user-drag:none;pointer-events:none;backface-visibility:hidden}
.inv-image-lightbox-help{display:block;padding:8px 12px;color:#6b7280;background:#fff;border-top:1px solid #f1e7dc;text-align:center}
body.inv-lightbox-open{overflow:hidden!important}
@media(max-width:700px){
  .inv-image-lightbox{padding:6px}
  .inv-image-lightbox-panel{width:calc(100vw - 12px);height:calc(100dvh - 18px);border-radius:16px}
  .inv-image-lightbox-head{padding:8px 9px}
  .inv-image-lightbox-toolbar{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding:7px}
  .inv-image-lightbox-toolbar .btn{min-width:40px!important;padding:7px 9px!important;font-size:12px!important;white-space:nowrap}
  .inv-image-lightbox-stage img{max-width:96%;max-height:96%}
  .inv-image-lightbox-help{font-size:12px;padding:7px 9px;text-align:left}
  .inv-detail-receipt-btn img{max-height:46vh}
}

/* Expense image lightbox smooth drag fix */
.inv-image-lightbox-stage,.inv-image-lightbox-stage *{box-sizing:border-box}
.inv-image-lightbox-toolbar button{touch-action:manipulation}
body.inv-lightbox-open .modal.is-open{pointer-events:none}
body.inv-lightbox-open .inv-image-lightbox{pointer-events:auto}

/* Expense image high-quality view fix */
.inv-image-lightbox-toolbar #invImageLightboxOriginal{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
.inv-image-lightbox-stage img{image-rendering:auto}


/* Expense lightbox original-pixel quality fix */
.inv-image-lightbox-stage{contain:layout paint; background:#0b1020!important}
.inv-image-lightbox-stage img{
  max-width:none!important;
  max-height:none!important;
  width:auto;
  height:auto;
  object-fit:contain;
  image-rendering:auto!important;
  filter:none!important;
  transform-origin:center center!important;
}
.inv-image-lightbox-toolbar #invImageLightboxFit,
.inv-image-lightbox-toolbar #invImageLightboxActual{min-width:78px!important}
.inv-image-lightbox-help{font-variant-numeric:tabular-nums}
@media(max-width:700px){
  .inv-image-lightbox-toolbar #invImageLightboxFit,
  .inv-image-lightbox-toolbar #invImageLightboxActual{min-width:70px!important}
}

/* Product image clipboard paste box */
.po-paste-image{border:1px dashed rgba(148,163,184,.9);border-radius:14px;padding:12px;margin:10px 0;background:rgba(248,250,252,.8);cursor:pointer;display:flex;flex-direction:column;gap:5px;outline:none}
.po-paste-image:focus,.po-paste-image.has-pasted{border-color:#0f766e;background:rgba(240,253,250,.9)}
.po-paste-image b{font-size:14px}
.po-paste-image span{font-size:12px;color:#64748b;line-height:1.35}
.po-paste-image button{align-self:flex-start;margin-top:4px}

/* Update: home product image height 100% + screen menu page */
.site-body .menu-products .product-media,
.site-body .product-photo-add,
.site-body .product-media.media-submit{
  height:100%!important;
}
.site-body .menu-products .product-media img,
.site-body .menu-products .product img,
.site-body .product-compact .product-media img{
  height:100%!important;
  object-fit:cover!important;
}

.screen-menu-body{margin:0;background:#100703;color:#fff;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;overflow:hidden}
.screen-menu-page{--fit-scale:1;box-sizing:border-box;width:calc(100vw / var(--fit-scale));height:calc(100vh / var(--fit-scale));transform:scale(var(--fit-scale));transform-origin:top left;padding:18px;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:14px;background:radial-gradient(circle at 12% 0%,rgba(255,210,120,.28),transparent 32%),radial-gradient(circle at 90% 15%,rgba(251,146,60,.20),transparent 28%),linear-gradient(135deg,#170903 0%,#311407 48%,#120704 100%);overflow:hidden}
.screen-menu-hero{display:grid;grid-template-columns:minmax(320px,1.15fr) minmax(260px,1fr) auto;align-items:center;gap:18px;padding:16px 20px;border:1px solid rgba(255,255,255,.15);border-radius:26px;background:linear-gradient(135deg,rgba(255,255,255,.14),rgba(255,255,255,.06));box-shadow:0 20px 70px rgba(0,0,0,.26);backdrop-filter:blur(14px)}
.screen-menu-brand{display:flex;align-items:center;gap:16px;min-width:0}.screen-menu-logo{width:78px;height:78px;border-radius:24px;background:#fff7e8;display:flex;align-items:center;justify-content:center;overflow:hidden;box-shadow:0 16px 34px rgba(0,0,0,.24);color:#9a3412;font-size:40px;font-weight:900;flex:0 0 auto}.screen-menu-logo img{width:100%;height:100%;object-fit:contain;padding:8px;box-sizing:border-box}.screen-menu-brand small{display:inline-flex;padding:5px 10px;border-radius:999px;background:rgba(255,216,155,.16);border:1px solid rgba(255,216,155,.28);letter-spacing:.18em;color:#ffd89b;font-weight:900;font-size:12px}.screen-menu-brand h1{font-size:clamp(30px,3.5vw,64px);line-height:.9;margin:8px 0 0;font-weight:950;letter-spacing:-.06em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.screen-menu-marquee{min-width:0;color:#fff0d1;font-size:clamp(14px,1.2vw,20px);line-height:1.35}.screen-menu-marquee b{display:block;color:#fff;font-size:clamp(17px,1.6vw,27px);margin-bottom:4px}.screen-menu-marquee span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.screen-menu-time{text-align:right;min-width:135px}.screen-menu-time b{display:block;font-size:clamp(34px,3.8vw,66px);line-height:.9;color:#ffd89b;font-weight:950;letter-spacing:-.06em}.screen-menu-time span{display:block;margin-top:8px;color:#fff2d7;font-size:16px;font-weight:800}
.screen-menu-board{min-height:0;display:grid;grid-template-columns:repeat(var(--screen-menu-cols),minmax(260px,1fr));gap:14px;overflow:hidden}.screen-menu-cat{min-width:0;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);border-radius:26px;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(255,248,237,.96));color:#20130b;padding:13px;box-shadow:0 20px 58px rgba(0,0,0,.24);border:1px solid rgba(255,255,255,.45);overflow:hidden}.screen-menu-cat-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;padding:7px 10px 10px;border-bottom:2px dashed rgba(180,83,9,.22)}.screen-menu-cat h2{margin:0;color:#9a3412;font-size:clamp(22px,2.1vw,42px);font-weight:950;letter-spacing:-.055em;line-height:.98;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.screen-menu-cat-head span{flex:0 0 auto;border-radius:999px;background:#ffedd5;color:#9a3412;padding:6px 10px;font-size:13px;font-weight:900}.screen-menu-items{min-height:0;display:grid;grid-auto-rows:minmax(0,1fr);gap:8px;overflow:hidden}.screen-menu-items.screen-menu-many{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(0,1fr);gap:8px}.screen-menu-item{min-width:0;min-height:58px;display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:9px;align-items:center;padding:7px;border-radius:18px;background:linear-gradient(135deg,#fffaf3,#fff2e1);border:1px solid #f1dec5;box-shadow:0 7px 18px rgba(120,53,15,.07);overflow:hidden}.screen-menu-photo{width:58px;height:58px;border-radius:16px;overflow:hidden;background:#f4f4f5;box-shadow:inset 0 0 0 1px rgba(0,0,0,.05);flex:0 0 auto}.screen-menu-photo img{width:100%;height:100%;object-fit:cover;display:block}.screen-menu-info{min-width:0}.screen-menu-info h3{margin:0 0 3px;font-size:clamp(14px,1.18vw,24px);font-weight:950;color:#23120a;line-height:1.05;letter-spacing:-.025em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.screen-menu-info p{margin:0;color:#765f49;font-size:clamp(10px,.82vw,15px);line-height:1.2;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.screen-menu-price{font-size:clamp(14px,1.22vw,25px);font-weight:950;color:#b45309;white-space:nowrap;align-self:center;padding-left:4px}.screen-menu-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 18px;border-radius:20px;background:rgba(0,0,0,.30);border:1px solid rgba(255,255,255,.10);color:#ffe7bf;font-weight:800;font-size:clamp(13px,1vw,18px)}.screen-menu-empty{color:#6b5b4b;font-size:18px;margin:14px}
@media(max-width:1180px){.screen-menu-page{overflow:auto}.screen-menu-hero{grid-template-columns:1fr auto}.screen-menu-marquee{grid-column:1/-1}.screen-menu-board{grid-template-columns:1fr;overflow:visible}.screen-menu-body{overflow:auto}.screen-menu-page{height:auto;min-height:100vh;transform:none;width:100%}.screen-menu-items.screen-menu-many{grid-template-columns:1fr}.screen-menu-footer{flex-direction:column;align-items:flex-start}}@media(max-width:720px){.screen-menu-page{padding:12px;gap:12px}.screen-menu-hero{grid-template-columns:1fr;padding:14px}.screen-menu-brand h1{white-space:normal}.screen-menu-logo{width:64px;height:64px;border-radius:20px}.screen-menu-time{text-align:left}.screen-menu-item{grid-template-columns:52px minmax(0,1fr);}.screen-menu-photo{width:52px;height:52px}.screen-menu-price{grid-column:2;justify-self:start}.screen-menu-marquee span{white-space:normal}}

/* Download watermark menu: ảnh ngoài site vẫn hiển thị gốc, tải xuống qua ảnh có tên miền */
.cbm-wm-menu{position:fixed;z-index:99999;min-width:190px;background:#fff;border:1px solid #eadfce;border-radius:14px;box-shadow:0 18px 50px rgba(24,24,27,.18);padding:8px;display:grid;gap:6px;font-family:inherit}.cbm-wm-menu a,.cbm-wm-menu button{appearance:none;border:0;border-radius:10px;background:#fff7ed;color:#7c2d12;text-align:left;text-decoration:none;font:600 14px/1.2 inherit;padding:10px 12px;cursor:pointer}.cbm-wm-menu button{background:#f9fafb;color:#374151}.site-body img{-webkit-touch-callout:none;-webkit-user-drag:none;user-select:none}

/* Screen menu reference design: TV horizontal board */
.screen-menu-body{margin:0;overflow:hidden;background:#03180e;color:#fff;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
.screen-menu-reference{--fit-scale:1;box-sizing:border-box;width:calc(100vw / var(--fit-scale));height:calc(100vh / var(--fit-scale));transform:scale(var(--fit-scale));transform-origin:top left;display:grid;grid-template-columns:minmax(310px,27vw) minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto;gap:12px;padding:16px 18px 8px;overflow:hidden;background:radial-gradient(circle at 7% 9%,rgba(35,116,65,.45),transparent 22%),radial-gradient(circle at 0 72%,rgba(22,101,52,.45),transparent 28%),radial-gradient(circle at 86% 3%,rgba(255,207,111,.11),transparent 28%),linear-gradient(135deg,#02140c 0%,#06351e 41%,#051c12 100%);position:relative}
.screen-menu-reference:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 3% 4%,rgba(255,255,255,.10),transparent 17%),radial-gradient(ellipse at 13% 98%,rgba(255,255,255,.05),transparent 18%),linear-gradient(90deg,rgba(0,0,0,.22),transparent 45%);pointer-events:none}
.screen-menu-reference:after{content:"";position:absolute;left:-60px;top:-50px;width:360px;height:270px;background:radial-gradient(ellipse at center,rgba(19,83,45,.40),transparent 64%);filter:blur(2px);pointer-events:none}
.screen-menu-side,.screen-menu-content,.screen-menu-footer{position:relative;z-index:1}
.screen-menu-side{grid-row:1;min-width:0;min-height:0;border-radius:26px;padding:10px 0 0;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;gap:12px;overflow:hidden;color:#ffe7ad}
.screen-menu-side-brand{text-align:center;padding:0 10px}.screen-menu-logo{width:94px;height:94px;margin:0 auto 8px;border-radius:50%;border:3px solid #e9bd62;background:rgba(2,24,14,.92);display:flex;align-items:center;justify-content:center;overflow:hidden;box-shadow:0 18px 50px rgba(0,0,0,.30),inset 0 0 0 1px rgba(255,255,255,.12);color:#f7ce74;font-size:46px;font-family:Georgia,serif;font-weight:900}.screen-menu-logo img{display:block;width:100%;height:100%;object-fit:contain;padding:9px;box-sizing:border-box}.screen-menu-side-brand h1{margin:0;color:#f5c76d;font-family:Georgia,"Times New Roman",serif;font-size:clamp(34px,3.5vw,64px);line-height:.92;font-weight:900;letter-spacing:.02em;text-shadow:0 3px 0 rgba(0,0,0,.16),0 16px 34px rgba(0,0,0,.24)}
.screen-menu-brand-line{width:min(260px,78%);height:17px;margin:8px auto 0;background:linear-gradient(90deg,transparent,#ba8c37 18%,#ba8c37 36%,transparent 36%,transparent 64%,#ba8c37 64%,#ba8c37 82%,transparent);position:relative}.screen-menu-brand-line:after{content:"✦";position:absolute;left:50%;top:-4px;transform:translateX(-50%);font-size:18px;color:#f1c86d}
.screen-menu-side-copy{text-align:center;color:#fff8e6;text-shadow:0 2px 10px rgba(0,0,0,.34);font-family:Georgia,"Times New Roman",serif}.screen-menu-side-copy b{display:block;font-size:clamp(17px,1.45vw,28px);font-style:italic;font-weight:500;margin-bottom:10px}.screen-menu-side-copy span{display:block;font-size:clamp(14px,1.08vw,20px);line-height:1.65}
.screen-menu-hero-photo{min-height:0;border-radius:30px;overflow:hidden;align-self:stretch;box-shadow:0 24px 70px rgba(0,0,0,.40);background:linear-gradient(135deg,#174326,#071a10);position:relative}.screen-menu-hero-photo:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 45%,transparent 48%,rgba(0,0,0,.38) 78%);z-index:1;pointer-events:none}.screen-menu-hero-photo img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.03)}
.screen-menu-values{border:1.5px solid #d7a84a;border-radius:16px;padding:12px 8px;margin:0 0 8px;display:grid;grid-template-columns:repeat(4,1fr);gap:6px;background:rgba(2,28,16,.76);box-shadow:inset 0 0 0 1px rgba(255,255,255,.05),0 16px 42px rgba(0,0,0,.22)}.screen-menu-values div{min-width:0;text-align:center;border-right:1px solid rgba(230,184,89,.45);padding:0 4px}.screen-menu-values div:last-child{border-right:0}.screen-menu-values b{display:block;color:#f2c768;font-size:clamp(18px,1.6vw,31px);line-height:1.1;margin-bottom:6px}.screen-menu-values span{display:block;color:#ffe7ad;font-size:clamp(8px,.68vw,13px);text-transform:uppercase;line-height:1.55;font-weight:800}
.screen-menu-content{grid-row:1;min-width:0;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);gap:10px;overflow:hidden}
.screen-menu-topbar{min-width:0;display:grid;grid-template-columns:minmax(410px,1fr) minmax(240px,.34fr) auto;align-items:center;gap:12px;padding:10px 12px 10px 22px;border:2px solid #dca94a;border-radius:20px;background:linear-gradient(135deg,rgba(2,34,20,.97),rgba(4,50,28,.94));box-shadow:0 20px 52px rgba(0,0,0,.25),inset 0 0 0 1px rgba(255,255,255,.07)}
.screen-menu-title{display:flex;align-items:center;justify-content:center;gap:14px;min-width:0;text-align:center;color:#f2c768}.screen-menu-title small{font-size:clamp(24px,2vw,40px);line-height:1}.screen-menu-title h2{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(34px,4.1vw,68px);line-height:.92;letter-spacing:.025em;color:#f5c76d;text-shadow:0 12px 34px rgba(0,0,0,.30);white-space:nowrap}.screen-menu-title p{margin:5px 0 0;font-size:clamp(12px,1vw,18px);font-weight:900;letter-spacing:.035em;color:#f1cf80;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.screen-menu-contact{min-width:0;border-radius:14px;padding:11px 14px;background:rgba(0,0,0,.16);border:1px solid rgba(244,201,116,.13);color:#fff6df;font-family:Georgia,"Times New Roman",serif;font-size:clamp(12px,.95vw,17px);line-height:1.45}.screen-menu-contact span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.screen-menu-time{min-width:145px;border-radius:18px;background:linear-gradient(135deg,#f6d488,#dba245);color:#061b0f;text-align:center;padding:12px 16px;box-shadow:0 16px 35px rgba(0,0,0,.25)}.screen-menu-time b{display:block;font-size:clamp(34px,3.8vw,58px);line-height:.88;font-weight:950;letter-spacing:-.055em}.screen-menu-time span{display:block;margin-top:8px;font-size:clamp(13px,1vw,17px);font-weight:900}
.screen-menu-board{min-width:0;min-height:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(0,1fr);gap:9px;overflow:hidden}.screen-menu-cat{min-width:0;min-height:0;overflow:hidden;border-radius:17px;background:radial-gradient(circle at 50% 0%,#fffef9 0%,#fff8eb 52%,#fff3df 100%);color:#12351e;border:2px solid #dca94a;box-shadow:0 18px 46px rgba(0,0,0,.26),inset 0 0 40px rgba(144,80,24,.08);display:grid;grid-template-rows:auto minmax(0,1fr);padding:10px}.screen-menu-cat-feature{grid-column:span 2}.screen-menu-cat-head{padding:2px 4px 8px;text-align:center;border:0;margin:0}.screen-menu-cat-head h2{margin:0;color:#12351e;font-family:Georgia,"Times New Roman",serif;font-size:clamp(22px,2vw,34px);line-height:1;font-weight:900;letter-spacing:-.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.screen-menu-cat-head h2 em{font-style:normal;color:#bc8430;font-weight:400;margin:0 10px}.best-badge{display:inline-flex;width:46px;height:46px;margin:-2px 10px -10px 0;vertical-align:middle;border-radius:50%;align-items:center;justify-content:center;background:#f2cc82;color:#8b5019;font-size:9px;line-height:1.05;font-family:Arial,sans-serif;font-weight:950;border:1px solid #b98232;box-shadow:0 7px 14px rgba(105,49,8,.16)}
.screen-menu-items{min-width:0;min-height:0;overflow:hidden}.screen-menu-items-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(98px,1fr));align-items:stretch;gap:4px}.screen-menu-items-list{display:grid;grid-auto-rows:minmax(0,1fr);gap:7px}.screen-menu-item{min-width:0;min-height:0;background:rgba(255,255,255,.38);border:1px solid rgba(211,163,82,.28);box-shadow:0 8px 18px rgba(92,48,8,.06);overflow:hidden}.screen-menu-product-tile{display:grid;grid-template-rows:minmax(74px,1fr) auto auto;align-items:center;justify-items:center;text-align:center;border-radius:13px;padding:5px 5px 8px}.screen-menu-product-row{display:grid;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:8px;border-radius:12px;padding:5px 8px}.screen-menu-photo{background:transparent;box-shadow:none;overflow:visible}.screen-menu-product-tile .screen-menu-photo{width:min(104px,100%);height:clamp(74px,7.2vw,116px);border-radius:50%;filter:drop-shadow(0 8px 9px rgba(0,0,0,.22))}.screen-menu-product-row .screen-menu-photo{width:56px;height:56px;border-radius:50%;filter:drop-shadow(0 6px 8px rgba(0,0,0,.16));flex:0 0 auto}.screen-menu-photo img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}.screen-menu-info{min-width:0}.screen-menu-info h3{margin:0;color:#18110b;font-family:Georgia,"Times New Roman",serif;font-size:clamp(12px,.92vw,17px);line-height:1.16;font-weight:900;letter-spacing:-.015em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.screen-menu-product-row .screen-menu-info h3{-webkit-line-clamp:1;text-align:left}.screen-menu-info p{margin:3px 0 0;color:#65513a;font-size:clamp(9px,.72vw,12px);line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.screen-menu-price{color:#9c3515;font-family:Georgia,"Times New Roman",serif;font-size:clamp(12px,.92vw,17px);font-weight:950;white-space:nowrap}.screen-menu-product-tile .screen-menu-price{margin-top:5px}.screen-menu-product-row .screen-menu-price{padding-left:4px;text-align:right}.screen-menu-empty{color:#68533c;font-size:18px;text-align:center;margin:22px}.screen-menu-footer{grid-column:1/-1;height:28px;display:flex;align-items:center;justify-content:center;gap:18px;color:#f1c86d;font-family:Georgia,"Times New Roman",serif;letter-spacing:.22em;text-align:center;text-transform:uppercase;border-top:1px solid rgba(232,186,92,.55);font-size:clamp(13px,1.1vw,21px);text-shadow:0 8px 18px rgba(0,0,0,.35);padding:0;background:transparent;border-radius:0}.screen-menu-footer b{font-weight:800}.screen-menu-footer span{font-size:24px;line-height:1}
@media(max-width:1180px){.screen-menu-reference{width:100%;height:auto;min-height:100vh;transform:none;grid-template-columns:1fr;grid-template-rows:auto auto auto;overflow:auto}.screen-menu-body{overflow:auto}.screen-menu-side{grid-row:auto}.screen-menu-content{grid-row:auto}.screen-menu-topbar{grid-template-columns:1fr}.screen-menu-contact,.screen-menu-time{text-align:center}.screen-menu-board{grid-template-columns:1fr 1fr;overflow:visible}.screen-menu-cat-feature{grid-column:span 1}.screen-menu-footer{height:auto;min-height:36px;flex-wrap:wrap}}
@media(max-width:760px){.screen-menu-reference{padding:10px}.screen-menu-board{grid-template-columns:1fr}.screen-menu-title h2{font-size:34px}.screen-menu-title{gap:6px}.screen-menu-title small{display:none}.screen-menu-side-brand h1{font-size:36px}.screen-menu-values{grid-template-columns:repeat(2,1fr)}.screen-menu-values div:nth-child(2){border-right:0}.screen-menu-product-row{grid-template-columns:52px minmax(0,1fr)}.screen-menu-product-row .screen-menu-price{grid-column:2;text-align:left}.screen-menu-contact span{white-space:normal}.screen-menu-footer{letter-spacing:.08em}}


/* Screen menu fit fix v5.1.7: chống vỡ layout khi chiếu màn hình ngang thấp */
.screen-menu-reference{grid-template-columns:minmax(290px,26.5vw) minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto;gap:9px;padding:12px 15px 6px}
.screen-menu-side{gap:8px;padding-top:4px;grid-template-rows:auto auto minmax(0,1fr) auto}
.screen-menu-logo{width:76px;height:76px;margin-bottom:6px;border-width:2px}.screen-menu-logo img{padding:7px}
.screen-menu-side-brand{padding:0 8px}.screen-menu-side-brand h1{font-size:clamp(30px,2.85vw,52px);line-height:.88;letter-spacing:.005em;word-spacing:.05em}
.screen-menu-brand-line{height:12px;margin-top:6px}.screen-menu-brand-line:after{top:-6px;font-size:16px}
.screen-menu-side-copy b{font-size:clamp(15px,1.23vw,22px);margin-bottom:5px}.screen-menu-side-copy span{font-size:clamp(12px,.94vw,16px);line-height:1.45}
.screen-menu-hero-photo{border-radius:22px;box-shadow:0 18px 48px rgba(0,0,0,.33)}
.screen-menu-values{padding:9px 6px;margin-bottom:4px;border-radius:14px;gap:4px}.screen-menu-values b{font-size:clamp(15px,1.35vw,23px);margin-bottom:3px}.screen-menu-values span{font-size:clamp(7px,.58vw,10px);line-height:1.35}
.screen-menu-content{gap:8px}
.screen-menu-topbar{grid-template-columns:minmax(350px,1fr) minmax(215px,.32fr) auto;gap:9px;padding:8px 10px 8px 16px;border-radius:18px}
.screen-menu-title{gap:10px}.screen-menu-title small{font-size:clamp(20px,1.55vw,30px)}.screen-menu-title h2{font-size:clamp(30px,3.55vw,60px);line-height:.90;letter-spacing:.018em}.screen-menu-title p{margin-top:4px;font-size:clamp(10px,.82vw,15px);letter-spacing:.03em}
.screen-menu-contact{padding:8px 10px;border-radius:12px;font-size:clamp(10px,.76vw,14px);line-height:1.35}.screen-menu-time{min-width:118px;border-radius:15px;padding:8px 11px}.screen-menu-time b{font-size:clamp(28px,3.0vw,46px)}.screen-menu-time span{margin-top:5px;font-size:clamp(11px,.82vw,14px)}
.screen-menu-board{gap:7px;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:minmax(0,1.26fr) minmax(0,.88fr) minmax(0,.88fr);grid-auto-rows:minmax(0,.88fr)}
.screen-menu-cat{border-radius:15px;padding:7px;box-shadow:0 12px 32px rgba(0,0,0,.22),inset 0 0 34px rgba(144,80,24,.06)}
.screen-menu-cat-head{padding:0 2px 5px}.screen-menu-cat-head h2{font-size:clamp(18px,1.62vw,29px);line-height:.98;letter-spacing:-.025em}.screen-menu-cat-head h2 em{margin:0 6px}.best-badge{width:36px;height:36px;margin:-1px 6px -8px 0;font-size:7px}
.screen-menu-items-tiles{grid-template-columns:repeat(auto-fit,minmax(70px,1fr));grid-auto-rows:minmax(0,1fr);gap:3px;align-items:stretch}.screen-menu-product-tile{grid-template-rows:minmax(42px,1fr) auto auto;border-radius:10px;padding:2px 3px 4px}.screen-menu-product-tile .screen-menu-photo{width:min(72px,100%);height:clamp(42px,4.6vw,72px);filter:drop-shadow(0 5px 6px rgba(0,0,0,.18))}.screen-menu-product-tile .screen-menu-info h3{font-size:clamp(9.5px,.69vw,12.5px);line-height:1.08;-webkit-line-clamp:2}.screen-menu-product-tile .screen-menu-price{font-size:clamp(10px,.74vw,13px);margin-top:2px}
.screen-menu-items-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(22px,1fr);gap:4px 5px;align-items:stretch}.screen-menu-product-row{grid-template-columns:28px minmax(0,1fr) auto;gap:4px;border-radius:9px;padding:3px 5px}.screen-menu-product-row .screen-menu-photo{width:28px;height:28px;filter:drop-shadow(0 3px 4px rgba(0,0,0,.14))}.screen-menu-product-row .screen-menu-info h3{font-size:clamp(9.4px,.63vw,12px);line-height:1.04;-webkit-line-clamp:1}.screen-menu-product-row .screen-menu-info p{display:none}.screen-menu-product-row .screen-menu-price{font-size:clamp(9.2px,.61vw,11.5px);padding-left:1px;text-align:right}.screen-menu-cat-dense .screen-menu-items-list{gap:3px 4px;grid-auto-rows:minmax(18px,1fr)}.screen-menu-cat-dense .screen-menu-product-row{grid-template-columns:22px minmax(0,1fr) auto;gap:3px;padding:2px 4px;border-radius:8px}.screen-menu-cat-dense .screen-menu-product-row .screen-menu-photo{width:22px;height:22px}.screen-menu-cat-dense .screen-menu-product-row .screen-menu-info h3{font-size:clamp(8.8px,.56vw,10.6px)}.screen-menu-cat-dense .screen-menu-product-row .screen-menu-price{font-size:clamp(8.6px,.54vw,10px)}
.screen-menu-footer{height:22px;font-size:clamp(11px,.86vw,16px);gap:12px;letter-spacing:.18em}.screen-menu-footer span{font-size:18px}
@media(max-aspect-ratio:16/9){.screen-menu-reference{grid-template-columns:minmax(280px,25.5vw) minmax(0,1fr);padding:10px 13px 5px;gap:7px}.screen-menu-side{gap:6px}.screen-menu-logo{width:66px;height:66px}.screen-menu-side-brand h1{font-size:clamp(28px,2.55vw,46px)}.screen-menu-side-copy b{font-size:clamp(14px,1.05vw,19px)}.screen-menu-side-copy span{font-size:clamp(11px,.82vw,14px);line-height:1.35}.screen-menu-values{padding:7px 5px}.screen-menu-topbar{padding:7px 9px 7px 14px}.screen-menu-title h2{font-size:clamp(28px,3.2vw,54px)}.screen-menu-title p{font-size:clamp(9px,.74vw,13px)}.screen-menu-board{gap:6px;grid-template-rows:minmax(0,1.18fr) minmax(0,.91fr) minmax(0,.91fr)}.screen-menu-cat{padding:6px}.screen-menu-cat-head h2{font-size:clamp(17px,1.45vw,26px)}.screen-menu-product-tile .screen-menu-photo{height:clamp(38px,4vw,62px);width:min(62px,100%)}.screen-menu-items-list{gap:3px 4px}.screen-menu-product-row{grid-template-columns:24px minmax(0,1fr) auto}.screen-menu-product-row .screen-menu-photo{width:24px;height:24px}.screen-menu-product-row .screen-menu-info h3{font-size:clamp(8.8px,.56vw,10.5px)}.screen-menu-product-row .screen-menu-price{font-size:clamp(8.5px,.54vw,10px)}}
/* Screen menu fit fix v5.1.7b: reset grid cũ cho thẻ sản phẩm dạng ô */
.screen-menu-product-tile{display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:minmax(42px,1fr) auto auto!important;align-content:stretch;align-items:center;justify-items:center}
.screen-menu-items-tiles{grid-template-columns:repeat(5,minmax(0,1fr))!important}
.screen-menu-product-tile .screen-menu-info{width:100%;align-self:end}.screen-menu-product-tile .screen-menu-price{justify-self:center;text-align:center;width:100%;align-self:end}.best-badge{margin:0 7px 0 0!important}
@media(max-aspect-ratio:16/9){.screen-menu-product-tile{grid-template-rows:minmax(38px,1fr) auto auto!important}.screen-menu-items-tiles{grid-template-columns:repeat(5,minmax(0,1fr))!important}}


/* Screen menu v5.1.8: bỏ topbar, đổi font dễ đọc, chống thiếu tên món và giá */
.screen-menu-body{font-family:"Segoe UI",Tahoma,Arial,sans-serif!important;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
.screen-menu-reference{grid-template-columns:minmax(292px,26vw) minmax(0,1fr)!important;grid-template-rows:minmax(0,1fr) auto!important;gap:8px!important;padding:9px 14px 5px!important}
.screen-menu-content{grid-template-rows:minmax(0,1fr)!important;gap:0!important;overflow:hidden!important}
.screen-menu-topbar{display:none!important}
.screen-menu-side{gap:7px!important;padding-top:2px!important}
.screen-menu-side-brand h1,.screen-menu-side-copy,.screen-menu-cat-head h2,.screen-menu-info h3,.screen-menu-price,.screen-menu-footer{font-family:"Segoe UI",Tahoma,Arial,sans-serif!important;letter-spacing:0!important;font-variant-ligatures:none!important}
.screen-menu-side-brand h1{font-size:clamp(29px,2.8vw,51px)!important;line-height:1.02!important;word-break:keep-all!important;overflow-wrap:normal!important;text-shadow:0 3px 0 rgba(0,0,0,.16),0 12px 28px rgba(0,0,0,.22)!important}
.screen-menu-side-copy b{font-size:clamp(14px,1.05vw,21px)!important;line-height:1.25!important}.screen-menu-side-copy span{font-size:clamp(11px,.78vw,14px)!important;line-height:1.38!important}
.screen-menu-values{padding:7px 5px!important;margin-bottom:2px!important}.screen-menu-values span{font-size:clamp(7px,.54vw,9.5px)!important;line-height:1.28!important}
.screen-menu-board{height:100%!important;min-height:0!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-template-rows:minmax(0,1.12fr) minmax(0,1fr) minmax(0,1fr)!important;grid-auto-rows:minmax(0,1fr)!important;gap:7px!important;overflow:hidden!important}
.screen-menu-cat{border-radius:14px!important;padding:6px!important;grid-template-rows:auto minmax(0,1fr)!important;overflow:hidden!important}
.screen-menu-cat-head{padding:0 2px 4px!important;margin:0!important;min-height:0!important;text-align:center!important}
.screen-menu-cat-head h2{font-size:clamp(17px,1.42vw,26px)!important;line-height:1.06!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;word-break:keep-all!important;overflow-wrap:normal!important;text-align:center!important}
.screen-menu-cat-head h2 em{margin:0 5px!important}.best-badge{width:34px!important;height:34px!important;font-size:7px!important;margin:0 5px 0 0!important;vertical-align:middle!important}
.screen-menu-items{min-height:0!important;overflow:hidden!important;align-content:stretch!important}.screen-menu-items-tiles{gap:4px!important;align-items:stretch!important;grid-auto-rows:minmax(0,1fr)!important}.screen-menu-count-1 .screen-menu-items-tiles{grid-template-columns:repeat(1,minmax(0,1fr))!important}.screen-menu-count-2 .screen-menu-items-tiles{grid-template-columns:repeat(2,minmax(0,1fr))!important}.screen-menu-count-3 .screen-menu-items-tiles{grid-template-columns:repeat(3,minmax(0,1fr))!important}.screen-menu-count-4 .screen-menu-items-tiles{grid-template-columns:repeat(4,minmax(0,1fr))!important}.screen-menu-count-5 .screen-menu-items-tiles{grid-template-columns:repeat(5,minmax(0,1fr))!important}.screen-menu-count-6 .screen-menu-items-tiles{grid-template-columns:repeat(6,minmax(0,1fr))!important}.screen-menu-count-7 .screen-menu-items-tiles,.screen-menu-count-8 .screen-menu-items-tiles,.screen-menu-count-9 .screen-menu-items-tiles,.screen-menu-count-10 .screen-menu-items-tiles{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.screen-menu-product-tile{grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto minmax(2.1em,auto) auto!important;gap:2px!important;align-content:center!important;align-items:center!important;justify-items:center!important;border-radius:10px!important;padding:3px 3px 5px!important;overflow:hidden!important}.screen-menu-product-tile .screen-menu-photo{width:min(58px,100%)!important;height:clamp(42px,3.5vw,60px)!important;margin:0 auto!important}.screen-menu-product-tile .screen-menu-info{width:100%!important;align-self:center!important}.screen-menu-product-tile .screen-menu-info h3{font-size:clamp(8.4px,.57vw,10.8px)!important;line-height:1.06!important;display:block!important;-webkit-line-clamp:initial!important;-webkit-box-orient:initial!important;overflow:visible!important;word-break:keep-all!important;overflow-wrap:normal!important;white-space:normal!important;text-align:center!important;max-height:none!important}.screen-menu-product-tile .screen-menu-price{font-size:clamp(8.8px,.62vw,11.5px)!important;line-height:1!important;margin-top:1px!important;display:block!important;overflow:visible!important;white-space:nowrap!important;text-align:center!important;width:100%!important;color:#a43d16!important}
.screen-menu-items-list{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-rows:minmax(0,1fr)!important;gap:3px 4px!important}.screen-menu-product-row{grid-template-columns:22px minmax(0,1fr) auto!important;gap:3px!important;align-items:center!important;border-radius:8px!important;padding:2px 4px!important;min-height:0!important;overflow:hidden!important}.screen-menu-product-row .screen-menu-photo{width:22px!important;height:22px!important}.screen-menu-product-row .screen-menu-info h3{font-size:clamp(7.9px,.51vw,9.8px)!important;line-height:1.05!important;display:block!important;-webkit-line-clamp:initial!important;-webkit-box-orient:initial!important;overflow:visible!important;text-overflow:clip!important;white-space:normal!important;word-break:keep-all!important;overflow-wrap:normal!important;text-align:left!important}.screen-menu-product-row .screen-menu-price{font-size:clamp(7.8px,.50vw,9.5px)!important;line-height:1!important;text-align:right!important;padding-left:1px!important;white-space:nowrap!important;color:#a43d16!important;display:block!important;overflow:visible!important}
.screen-menu-cat-many .screen-menu-product-row,.screen-menu-cat-dense .screen-menu-product-row{grid-template-columns:18px minmax(0,1fr) auto!important;gap:2px!important;padding:2px 3px!important}.screen-menu-cat-many .screen-menu-product-row .screen-menu-photo,.screen-menu-cat-dense .screen-menu-product-row .screen-menu-photo{width:18px!important;height:18px!important}.screen-menu-cat-many .screen-menu-product-row .screen-menu-info h3,.screen-menu-cat-dense .screen-menu-product-row .screen-menu-info h3{font-size:clamp(7.2px,.46vw,8.8px)!important;line-height:1.02!important}.screen-menu-cat-many .screen-menu-product-row .screen-menu-price,.screen-menu-cat-dense .screen-menu-product-row .screen-menu-price{font-size:clamp(7.1px,.44vw,8.6px)!important}.screen-menu-info p{display:none!important}
.screen-menu-photo img{object-fit:cover!important}.screen-menu-footer{height:21px!important;font-size:clamp(10px,.72vw,14px)!important;letter-spacing:.12em!important;gap:10px!important}
@media(max-aspect-ratio:16/9){.screen-menu-reference{grid-template-columns:minmax(280px,25vw) minmax(0,1fr)!important;padding:8px 12px 4px!important}.screen-menu-board{gap:6px!important;grid-template-rows:minmax(0,1.08fr) minmax(0,1fr) minmax(0,1fr)!important}.screen-menu-product-tile .screen-menu-photo{width:min(52px,100%)!important;height:clamp(36px,3.1vw,52px)!important}.screen-menu-product-tile .screen-menu-info h3{font-size:clamp(7.8px,.50vw,9.5px)!important}.screen-menu-product-tile .screen-menu-price{font-size:clamp(8px,.53vw,9.8px)!important}.screen-menu-cat-head h2{font-size:clamp(15px,1.2vw,23px)!important}.screen-menu-product-row{grid-template-columns:18px minmax(0,1fr) auto!important}.screen-menu-product-row .screen-menu-photo{width:18px!important;height:18px!important}.screen-menu-product-row .screen-menu-info h3{font-size:clamp(7px,.43vw,8.6px)!important}.screen-menu-product-row .screen-menu-price{font-size:clamp(7px,.42vw,8.4px)!important}}


/* Screen menu v5.1.9: logo lớn, bỏ H1, thu side, giá nằm dưới tên món */
.screen-menu-reference{
  grid-template-columns:minmax(230px,22vw) minmax(0,1fr)!important;
  gap:7px!important;
  padding:8px 12px 4px!important;
}
.screen-menu-side{gap:6px!important;padding-top:0!important;grid-template-rows:auto auto minmax(0,1fr) auto!important}
.screen-menu-side-brand{padding:0 4px!important}
.screen-menu-side-brand h1{display:none!important}
.screen-menu-logo{
  width:min(185px,82%)!important;
  height:92px!important;
  margin:0 auto 2px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}
.screen-menu-logo img{width:100%!important;height:100%!important;object-fit:contain!important;padding:0!important;background:transparent!important}
.screen-menu-brand-line{width:min(170px,72%)!important;height:12px!important;margin:2px auto 0!important}
.screen-menu-side-copy b{font-size:clamp(13px,.92vw,18px)!important;margin-bottom:4px!important}
.screen-menu-side-copy span{font-size:clamp(10px,.72vw,13px)!important;line-height:1.30!important}
.screen-menu-hero-photo{border-radius:18px!important}.screen-menu-values{padding:6px 4px!important}
.screen-menu-board{gap:7px!important;grid-template-rows:minmax(0,1.10fr) minmax(0,1fr) minmax(0,1fr)!important}
.screen-menu-cat{padding:6px!important;border-radius:14px!important}
.screen-menu-cat-head{padding:0 2px 4px!important}.screen-menu-cat-head h2{font-size:clamp(17px,1.32vw,25px)!important;line-height:1.08!important}
.screen-menu-product-tile{grid-template-rows:auto minmax(2.2em,auto) auto!important;padding:3px 4px 5px!important;gap:2px!important}
.screen-menu-product-tile .screen-menu-photo{width:min(54px,100%)!important;height:clamp(36px,3.05vw,54px)!important}
.screen-menu-product-tile .screen-menu-info h3{font-size:clamp(9.2px,.62vw,12px)!important;line-height:1.08!important;font-weight:900!important}
.screen-menu-product-tile .screen-menu-price{font-size:clamp(9.3px,.64vw,12px)!important;line-height:1.05!important;margin-top:2px!important;font-weight:950!important;text-align:center!important}
.screen-menu-items-list{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:4px!important;grid-auto-rows:minmax(0,1fr)!important}
.screen-menu-product-row,
.screen-menu-cat-many .screen-menu-product-row,
.screen-menu-cat-dense .screen-menu-product-row{
  display:grid!important;
  grid-template-columns:22px minmax(0,1fr)!important;
  grid-template-rows:auto auto!important;
  column-gap:4px!important;
  row-gap:1px!important;
  align-items:center!important;
  padding:3px 5px!important;
  border-radius:9px!important;
  overflow:hidden!important;
}
.screen-menu-product-row .screen-menu-photo,
.screen-menu-cat-many .screen-menu-product-row .screen-menu-photo,
.screen-menu-cat-dense .screen-menu-product-row .screen-menu-photo{
  grid-column:1!important;
  grid-row:1 / span 2!important;
  width:22px!important;
  height:22px!important;
}
.screen-menu-product-row .screen-menu-info{grid-column:2!important;grid-row:1!important;width:100%!important;min-width:0!important;align-self:end!important}
.screen-menu-product-row .screen-menu-info h3,
.screen-menu-cat-many .screen-menu-product-row .screen-menu-info h3,
.screen-menu-cat-dense .screen-menu-product-row .screen-menu-info h3{
  font-size:clamp(8.8px,.58vw,11.2px)!important;
  line-height:1.06!important;
  font-weight:900!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  display:block!important;
  word-break:keep-all!important;
  overflow-wrap:normal!important;
}
.screen-menu-product-row .screen-menu-price,
.screen-menu-cat-many .screen-menu-product-row .screen-menu-price,
.screen-menu-cat-dense .screen-menu-product-row .screen-menu-price{
  grid-column:2!important;
  grid-row:2!important;
  justify-self:start!important;
  align-self:start!important;
  text-align:left!important;
  padding-left:0!important;
  margin-top:1px!important;
  font-size:clamp(8.9px,.58vw,11.2px)!important;
  line-height:1.05!important;
  font-weight:950!important;
  white-space:nowrap!important;
  color:#a43d16!important;
}
.screen-menu-info p{display:none!important}
@media(max-aspect-ratio:16/9){
  .screen-menu-reference{grid-template-columns:minmax(220px,21.5vw) minmax(0,1fr)!important;padding:7px 10px 4px!important;gap:6px!important}
  .screen-menu-logo{width:min(160px,80%)!important;height:76px!important}
  .screen-menu-side-copy b{font-size:clamp(12px,.84vw,16px)!important}.screen-menu-side-copy span{font-size:clamp(9.5px,.65vw,12px)!important}
  .screen-menu-product-row,.screen-menu-cat-many .screen-menu-product-row,.screen-menu-cat-dense .screen-menu-product-row{grid-template-columns:19px minmax(0,1fr)!important;padding:2px 4px!important;column-gap:3px!important}
  .screen-menu-product-row .screen-menu-photo,.screen-menu-cat-many .screen-menu-product-row .screen-menu-photo,.screen-menu-cat-dense .screen-menu-product-row .screen-menu-photo{width:19px!important;height:19px!important}
  .screen-menu-product-row .screen-menu-info h3,.screen-menu-cat-many .screen-menu-product-row .screen-menu-info h3,.screen-menu-cat-dense .screen-menu-product-row .screen-menu-info h3{font-size:clamp(7.7px,.49vw,9.5px)!important;line-height:1.04!important}
  .screen-menu-product-row .screen-menu-price,.screen-menu-cat-many .screen-menu-product-row .screen-menu-price,.screen-menu-cat-dense .screen-menu-product-row .screen-menu-price{font-size:clamp(7.7px,.49vw,9.5px)!important}
}


/* Update 5.2.0 - screen menu logo, footer removal, cleaner font, larger readable product text */
.screen-menu-body,
.screen-menu-reference,
.screen-menu-reference *{
  font-family:"Be Vietnam Pro","Nunito","Inter","Segoe UI",Arial,sans-serif!important;
}
.screen-menu-reference{
  grid-template-columns:minmax(250px,22.2vw) minmax(0,1fr)!important;
  grid-template-rows:minmax(0,1fr)!important;
  padding:8px 12px 8px!important;
  gap:8px!important;
}
.screen-menu-footer{display:none!important;height:0!important;min-height:0!important;padding:0!important;margin:0!important;border:0!important;overflow:hidden!important}
.screen-menu-side{grid-template-rows:auto auto minmax(0,1fr) auto!important;gap:8px!important}
.screen-menu-side-brand.screen-menu-logo-only .screen-menu-logo{
  width:clamp(118px,24.2vw,270px)!important;
  height:clamp(76px,7vw,122px)!important;
  margin:0 auto!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
  color:#f5c76d!important;
}
.screen-menu-side-brand.screen-menu-logo-only .screen-menu-logo img{
  width:100%!important;height:100%!important;object-fit:contain!important;padding:0!important;background:transparent!important;filter:drop-shadow(0 8px 20px rgba(0,0,0,.22))!important;
}
.screen-menu-side-brand h1,.screen-menu-brand h1{display:none!important}
.screen-menu-brand-line{height:8px!important;margin:0 auto!important;opacity:.75!important}
.screen-menu-side-copy b{font-size:clamp(13px,1.08vw,20px)!important;line-height:1.25!important;margin-bottom:6px!important}
.screen-menu-side-copy span{font-size:clamp(12px,.92vw,17px)!important;line-height:1.35!important;font-weight:800!important;letter-spacing:.01em!important;display:block!important;max-width:95%!important;margin:0 auto!important}
.screen-menu-board{gap:8px!important;grid-auto-flow:dense!important}
.screen-menu-cat{padding:7px!important;border-radius:15px!important}
.screen-menu-cat-head{padding:0 2px 5px!important;margin-bottom:4px!important}
.screen-menu-cat-head h2{font-size:clamp(19px,1.50vw,30px)!important;line-height:1.06!important;font-weight:950!important;letter-spacing:-.035em!important}
.screen-menu-items{gap:5px!important}
.screen-menu-items-list{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:5px!important;grid-auto-rows:minmax(0,1fr)!important}
.screen-menu-cat-onecol{grid-row:span 2!important}
.screen-menu-cat-onecol .screen-menu-items-list{grid-template-columns:1fr!important;grid-auto-rows:minmax(0,1fr)!important;gap:5px!important}
.screen-menu-cat-onecol .screen-menu-product-row,
.screen-menu-cat-onecol.screen-menu-cat-many .screen-menu-product-row,
.screen-menu-cat-onecol.screen-menu-cat-dense .screen-menu-product-row{
  grid-template-columns:30px minmax(0,1fr)!important;
  grid-template-rows:auto auto!important;
  padding:4px 8px!important;
  gap:0 6px!important;
  min-height:0!important;
}
.screen-menu-cat-onecol .screen-menu-product-row .screen-menu-photo,
.screen-menu-cat-onecol.screen-menu-cat-many .screen-menu-product-row .screen-menu-photo,
.screen-menu-cat-onecol.screen-menu-cat-dense .screen-menu-product-row .screen-menu-photo{
  width:30px!important;height:30px!important;grid-row:1 / span 2!important;
}
.screen-menu-cat-onecol .screen-menu-product-row .screen-menu-info h3,
.screen-menu-cat-onecol.screen-menu-cat-many .screen-menu-product-row .screen-menu-info h3,
.screen-menu-cat-onecol.screen-menu-cat-dense .screen-menu-product-row .screen-menu-info h3{
  font-size:clamp(9.4px,.68vw,13px)!important;line-height:1.08!important;font-weight:950!important;text-align:left!important;
}
.screen-menu-cat-onecol .screen-menu-product-row .screen-menu-price,
.screen-menu-cat-onecol.screen-menu-cat-many .screen-menu-product-row .screen-menu-price,
.screen-menu-cat-onecol.screen-menu-cat-dense .screen-menu-product-row .screen-menu-price{
  font-size:clamp(9.2px,.66vw,12.5px)!important;line-height:1.08!important;text-align:left!important;justify-self:start!important;margin-top:1px!important;
}
.screen-menu-product-row,
.screen-menu-cat-many .screen-menu-product-row,
.screen-menu-cat-dense .screen-menu-product-row{
  grid-template-columns:27px minmax(0,1fr)!important;
  grid-template-rows:auto auto!important;
  column-gap:5px!important;
  row-gap:1px!important;
  padding:4px 6px!important;
  align-items:center!important;
}
.screen-menu-product-row .screen-menu-photo,
.screen-menu-cat-many .screen-menu-product-row .screen-menu-photo,
.screen-menu-cat-dense .screen-menu-product-row .screen-menu-photo{
  width:27px!important;height:27px!important;grid-column:1!important;grid-row:1 / span 2!important;
}
.screen-menu-product-row .screen-menu-info{grid-column:2!important;grid-row:1!important;align-self:end!important;min-width:0!important;width:100%!important}
.screen-menu-product-row .screen-menu-info h3,
.screen-menu-cat-many .screen-menu-product-row .screen-menu-info h3,
.screen-menu-cat-dense .screen-menu-product-row .screen-menu-info h3{
  font-size:clamp(9.1px,.64vw,12.4px)!important;
  line-height:1.08!important;
  font-weight:950!important;
  letter-spacing:-.015em!important;
  display:block!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  word-break:keep-all!important;
  overflow-wrap:normal!important;
}
.screen-menu-product-row .screen-menu-price,
.screen-menu-cat-many .screen-menu-product-row .screen-menu-price,
.screen-menu-cat-dense .screen-menu-product-row .screen-menu-price{
  grid-column:2!important;grid-row:2!important;
  justify-self:start!important;align-self:start!important;text-align:left!important;
  font-size:clamp(9px,.62vw,12.2px)!important;line-height:1.07!important;font-weight:950!important;color:#a43d16!important;margin-top:1px!important;padding-left:0!important;
}
.screen-menu-product-tile .screen-menu-info h3{font-size:clamp(10.2px,.72vw,13.5px)!important;line-height:1.08!important;font-weight:950!important;letter-spacing:-.015em!important}
.screen-menu-product-tile .screen-menu-price{font-size:clamp(10px,.70vw,13px)!important;line-height:1.05!important;font-weight:950!important;color:#a43d16!important;margin-top:2px!important}
.screen-menu-photo img{object-fit:contain!important;background:#fff8ef!important}
@media(max-aspect-ratio:16/9){
  .screen-menu-reference{grid-template-columns:minmax(220px,20.8vw) minmax(0,1fr)!important;padding:7px 10px 7px!important;gap:7px!important}
  .screen-menu-side-brand.screen-menu-logo-only .screen-menu-logo{width:clamp(118px,20vw,220px)!important;height:clamp(72px,6.2vw,112px)!important}
  .screen-menu-side-copy span{font-size:clamp(10.5px,.75vw,14px)!important}
  .screen-menu-cat-head h2{font-size:clamp(17px,1.28vw,25px)!important}
  .screen-menu-product-row,.screen-menu-cat-many .screen-menu-product-row,.screen-menu-cat-dense .screen-menu-product-row{grid-template-columns:24px minmax(0,1fr)!important;padding:3px 5px!important}
  .screen-menu-product-row .screen-menu-photo,.screen-menu-cat-many .screen-menu-product-row .screen-menu-photo,.screen-menu-cat-dense .screen-menu-product-row .screen-menu-photo{width:24px!important;height:24px!important}
  .screen-menu-product-row .screen-menu-info h3,.screen-menu-cat-many .screen-menu-product-row .screen-menu-info h3,.screen-menu-cat-dense .screen-menu-product-row .screen-menu-info h3{font-size:clamp(8.4px,.54vw,10.8px)!important;line-height:1.05!important}
  .screen-menu-product-row .screen-menu-price,.screen-menu-cat-many .screen-menu-product-row .screen-menu-price,.screen-menu-cat-dense .screen-menu-product-row .screen-menu-price{font-size:clamp(8.3px,.53vw,10.5px)!important}
  .screen-menu-cat-onecol .screen-menu-product-row,.screen-menu-cat-onecol.screen-menu-cat-many .screen-menu-product-row,.screen-menu-cat-onecol.screen-menu-cat-dense .screen-menu-product-row{grid-template-columns:25px minmax(0,1fr)!important;padding:3px 6px!important}
  .screen-menu-cat-onecol .screen-menu-product-row .screen-menu-photo,.screen-menu-cat-onecol.screen-menu-cat-many .screen-menu-product-row .screen-menu-photo,.screen-menu-cat-onecol.screen-menu-cat-dense .screen-menu-product-row .screen-menu-photo{width:25px!important;height:25px!important}
  .screen-menu-cat-onecol .screen-menu-product-row .screen-menu-info h3,.screen-menu-cat-onecol.screen-menu-cat-many .screen-menu-product-row .screen-menu-info h3,.screen-menu-cat-onecol.screen-menu-cat-dense .screen-menu-product-row .screen-menu-info h3{font-size:clamp(8.4px,.55vw,11px)!important}
  .screen-menu-cat-onecol .screen-menu-product-row .screen-menu-price,.screen-menu-cat-onecol.screen-menu-cat-many .screen-menu-product-row .screen-menu-price,.screen-menu-cat-onecol.screen-menu-cat-dense .screen-menu-product-row .screen-menu-price{font-size:clamp(8.2px,.53vw,10.6px)!important}
}

/* Update 5.2.1 - bố cục menu TV: top không mất giá, trà sữa + trà trái cây full chiều cao */
.screen-menu-body,
.screen-menu-reference,
.screen-menu-reference *{
  font-family:"SVN-Gilroy","Be Vietnam Pro","Montserrat","Inter","Segoe UI",Arial,sans-serif!important;
}
.screen-menu-reference{
  grid-template-columns:minmax(220px,19.2vw) minmax(0,1fr)!important;
  gap:8px!important;
  padding:7px 10px!important;
}
.screen-menu-side-brand.screen-menu-logo-only .screen-menu-logo{
  width:clamp(138px,20.2vw,300px)!important;
  height:clamp(82px,7.7vw,136px)!important;
}
.screen-menu-brand-line{height:7px!important;opacity:.72!important;margin:0 auto!important}
.screen-menu-side-copy b{font-size:clamp(14px,1.05vw,20px)!important;line-height:1.18!important}
.screen-menu-side-copy span{font-size:clamp(12px,.86vw,16px)!important;line-height:1.18!important;font-weight:900!important;white-space:nowrap!important}
.screen-menu-footer{display:none!important}
.screen-menu-content{min-height:0!important;height:100%!important;overflow:hidden!important}
.screen-menu-board{
  height:100%!important;
  min-height:0!important;
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  grid-template-rows:minmax(176px,.76fr) repeat(2,minmax(0,1fr))!important;
  grid-auto-flow:dense!important;
  grid-auto-rows:minmax(0,1fr)!important;
  gap:7px!important;
  overflow:hidden!important;
}
.screen-menu-cat{min-height:0!important;padding:6px!important;border-radius:14px!important;overflow:hidden!important}
.screen-menu-cat-head{padding:0 2px 4px!important;margin:0!important;min-height:0!important;flex:0 0 auto!important}
.screen-menu-cat-head h2{font-size:clamp(18px,1.35vw,29px)!important;line-height:1!important;font-weight:950!important;letter-spacing:-.035em!important;white-space:nowrap!important;overflow:visible!important;text-overflow:clip!important;text-align:center!important}
.screen-menu-cat-head h2 em{margin:0 6px!important;color:#bd7c24!important;font-size:.74em!important}
.best-badge{width:34px!important;height:34px!important;font-size:7px!important;margin-right:5px!important;vertical-align:middle!important}
.screen-menu-cat-best{grid-column:1 / span 2!important;grid-row:1!important}
.screen-menu-cat-traditional{grid-column:3 / span 3!important;grid-row:1!important}
.screen-menu-cat-flan{grid-column:1!important;grid-row:2!important}
.screen-menu-cat-tauhu{grid-column:2!important;grid-row:2!important}
.screen-menu-cat-suachua{grid-column:1!important;grid-row:3!important}
.screen-menu-cat-olong{grid-column:2!important;grid-row:3!important}
.screen-menu-cat-trasua{grid-column:3!important;grid-row:2 / span 2!important}
.screen-menu-cat-tratraicay{grid-column:4!important;grid-row:2 / span 2!important}
.screen-menu-cat-sinhto{grid-column:5!important;grid-row:2 / span 2!important}
.screen-menu-items{min-height:0!important;overflow:hidden!important;align-content:stretch!important}
.screen-menu-cat-feature .screen-menu-items-tiles{
  display:grid!important;
  gap:5px!important;
  grid-auto-rows:minmax(0,1fr)!important;
  align-items:stretch!important;
}
.screen-menu-cat-best .screen-menu-items-tiles{grid-template-columns:repeat(6,minmax(0,1fr))!important}
.screen-menu-cat-traditional .screen-menu-items-tiles{grid-template-columns:repeat(5,minmax(0,1fr))!important}
.screen-menu-cat-feature .screen-menu-product-tile{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:minmax(46px,.78fr) minmax(2.2em,auto) auto!important;
  gap:2px!important;
  justify-items:center!important;
  align-content:center!important;
  padding:4px 3px 5px!important;
  border-radius:10px!important;
  overflow:hidden!important;
}
.screen-menu-cat-feature .screen-menu-photo{width:min(62px,100%)!important;height:clamp(42px,4vw,66px)!important;margin:0 auto!important;align-self:end!important}
.screen-menu-cat-feature .screen-menu-info{width:100%!important;min-width:0!important;align-self:end!important}
.screen-menu-cat-feature .screen-menu-info h3{
  font-size:clamp(9.6px,.68vw,13px)!important;
  line-height:1.04!important;
  min-height:2.05em!important;
  max-height:2.15em!important;
  display:block!important;
  overflow:visible!important;
  text-align:center!important;
  white-space:normal!important;
  word-break:keep-all!important;
  overflow-wrap:normal!important;
  font-weight:950!important;
}
.screen-menu-cat-feature .screen-menu-price{
  width:100%!important;
  display:block!important;
  text-align:center!important;
  font-size:clamp(9.5px,.68vw,13px)!important;
  line-height:1!important;
  font-weight:950!important;
  color:#a43d16!important;
  white-space:nowrap!important;
  overflow:visible!important;
  padding:0!important;
  margin:1px 0 0!important;
}
.screen-menu-items-list{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-rows:minmax(0,1fr)!important;gap:5px!important}
.screen-menu-product-row,
.screen-menu-cat-many .screen-menu-product-row,
.screen-menu-cat-dense .screen-menu-product-row{
  grid-template-columns:28px minmax(0,1fr)!important;
  grid-template-rows:auto auto!important;
  column-gap:5px!important;
  row-gap:1px!important;
  padding:4px 6px!important;
  align-items:center!important;
  min-height:0!important;
}
.screen-menu-product-row .screen-menu-photo,
.screen-menu-cat-many .screen-menu-product-row .screen-menu-photo,
.screen-menu-cat-dense .screen-menu-product-row .screen-menu-photo{width:28px!important;height:28px!important;grid-row:1 / span 2!important}
.screen-menu-product-row .screen-menu-info h3,
.screen-menu-cat-many .screen-menu-product-row .screen-menu-info h3,
.screen-menu-cat-dense .screen-menu-product-row .screen-menu-info h3{
  font-size:clamp(9.8px,.68vw,13px)!important;
  line-height:1.06!important;
  font-weight:950!important;
  letter-spacing:-.01em!important;
  display:block!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  word-break:keep-all!important;
  overflow-wrap:normal!important;
}
.screen-menu-product-row .screen-menu-price,
.screen-menu-cat-many .screen-menu-product-row .screen-menu-price,
.screen-menu-cat-dense .screen-menu-product-row .screen-menu-price{
  grid-column:2!important;grid-row:2!important;justify-self:start!important;text-align:left!important;padding:0!important;margin-top:1px!important;
  font-size:clamp(9.6px,.66vw,12.6px)!important;line-height:1.02!important;font-weight:950!important;color:#a43d16!important;white-space:nowrap!important;overflow:visible!important
}
.screen-menu-cat-trasua .screen-menu-items-list,
.screen-menu-cat-tratraicay .screen-menu-items-list{
  grid-template-columns:1fr!important;
  grid-auto-rows:minmax(0,1fr)!important;
  gap:5px!important;
}
.screen-menu-cat-trasua .screen-menu-product-row,
.screen-menu-cat-tratraicay .screen-menu-product-row,
.screen-menu-cat-trasua.screen-menu-cat-many .screen-menu-product-row,
.screen-menu-cat-tratraicay.screen-menu-cat-many .screen-menu-product-row,
.screen-menu-cat-trasua.screen-menu-cat-dense .screen-menu-product-row,
.screen-menu-cat-tratraicay.screen-menu-cat-dense .screen-menu-product-row{
  grid-template-columns:32px minmax(0,1fr)!important;
  padding:4px 8px!important;
}
.screen-menu-cat-trasua .screen-menu-photo,
.screen-menu-cat-tratraicay .screen-menu-photo{width:32px!important;height:32px!important}
.screen-menu-cat-trasua .screen-menu-info h3,
.screen-menu-cat-tratraicay .screen-menu-info h3{font-size:clamp(10.4px,.74vw,14px)!important;line-height:1.05!important}
.screen-menu-cat-trasua .screen-menu-price,
.screen-menu-cat-tratraicay .screen-menu-price{font-size:clamp(10px,.70vw,13.5px)!important}
.screen-menu-photo img{object-fit:contain!important;background:#fff8ef!important}
@media(max-aspect-ratio:16/9){
  .screen-menu-reference{grid-template-columns:minmax(205px,18.5vw) minmax(0,1fr)!important;padding:6px 9px!important;gap:7px!important}
  .screen-menu-board{grid-template-rows:minmax(160px,.72fr) repeat(2,minmax(0,1fr))!important;gap:6px!important}
  .screen-menu-side-brand.screen-menu-logo-only .screen-menu-logo{width:clamp(130px,19vw,270px)!important;height:clamp(78px,7vw,126px)!important}
  .screen-menu-side-copy b{font-size:clamp(13px,.95vw,18px)!important}.screen-menu-side-copy span{font-size:clamp(10.5px,.72vw,13.5px)!important}
  .screen-menu-cat-head h2{font-size:clamp(16.5px,1.15vw,24px)!important}
  .screen-menu-cat-feature .screen-menu-photo{height:clamp(36px,3.3vw,56px)!important;width:min(56px,100%)!important}
  .screen-menu-cat-feature .screen-menu-info h3{font-size:clamp(8.4px,.55vw,10.6px)!important;line-height:1.02!important}
  .screen-menu-cat-feature .screen-menu-price{font-size:clamp(8.3px,.55vw,10.6px)!important}
  .screen-menu-product-row,.screen-menu-cat-many .screen-menu-product-row,.screen-menu-cat-dense .screen-menu-product-row{grid-template-columns:24px minmax(0,1fr)!important;padding:3px 5px!important}
  .screen-menu-product-row .screen-menu-photo,.screen-menu-cat-many .screen-menu-product-row .screen-menu-photo,.screen-menu-cat-dense .screen-menu-product-row .screen-menu-photo{width:24px!important;height:24px!important}
  .screen-menu-product-row .screen-menu-info h3,.screen-menu-cat-many .screen-menu-product-row .screen-menu-info h3,.screen-menu-cat-dense .screen-menu-product-row .screen-menu-info h3{font-size:clamp(8.4px,.53vw,10.8px)!important;line-height:1.04!important}
  .screen-menu-product-row .screen-menu-price,.screen-menu-cat-many .screen-menu-product-row .screen-menu-price,.screen-menu-cat-dense .screen-menu-product-row .screen-menu-price{font-size:clamp(8.2px,.52vw,10.4px)!important}
  .screen-menu-cat-trasua .screen-menu-product-row,.screen-menu-cat-tratraicay .screen-menu-product-row{grid-template-columns:27px minmax(0,1fr)!important}
  .screen-menu-cat-trasua .screen-menu-photo,.screen-menu-cat-tratraicay .screen-menu-photo{width:27px!important;height:27px!important}
  .screen-menu-cat-trasua .screen-menu-info h3,.screen-menu-cat-tratraicay .screen-menu-info h3{font-size:clamp(8.8px,.58vw,11px)!important}
}


/* Update 5.2.2 - fix sidebar clipping + top feature cards no hidden title/price */
.screen-menu-reference{
  grid-template-columns:minmax(260px,23vw) minmax(0,1fr)!important;
  gap:8px!important;
}
.screen-menu-side{
  overflow:hidden!important;
  min-width:0!important;
}
.screen-menu-side-brand.screen-menu-logo-only .screen-menu-logo{
  width:clamp(138px,20.5vw,285px)!important;
  height:clamp(82px,7.6vw,132px)!important;
  max-width:96%!important;
}
.screen-menu-side-copy{
  padding:0 8px!important;
  overflow:visible!important;
}
.screen-menu-side-copy b{
  white-space:normal!important;
  overflow:visible!important;
}
.screen-menu-side-copy span{
  max-width:100%!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  font-size:clamp(11px,.80vw,15px)!important;
  line-height:1.22!important;
}
.screen-menu-board{
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  grid-template-rows:minmax(190px,.82fr) repeat(2,minmax(0,1fr))!important;
  gap:7px!important;
}
.screen-menu-cat-best,
.screen-menu-cat-traditional{
  grid-template-rows:auto minmax(0,1fr)!important;
  min-height:0!important;
}
.screen-menu-cat-best .screen-menu-cat-head,
.screen-menu-cat-traditional .screen-menu-cat-head{
  padding:0 2px 3px!important;
  margin:0!important;
}
.screen-menu-cat-best .screen-menu-cat-head h2,
.screen-menu-cat-traditional .screen-menu-cat-head h2{
  font-size:clamp(18px,1.36vw,28px)!important;
  line-height:1.02!important;
  white-space:nowrap!important;
  overflow:visible!important;
}
.screen-menu-cat-best .screen-menu-items-tiles,
.screen-menu-cat-traditional .screen-menu-items-tiles{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(78px,1fr))!important;
  grid-template-rows:minmax(0,1fr)!important;
  grid-auto-rows:minmax(0,1fr)!important;
  gap:5px!important;
  align-items:stretch!important;
  overflow:hidden!important;
}
.screen-menu-cat-best .screen-menu-product-tile,
.screen-menu-cat-traditional .screen-menu-product-tile{
  grid-template-rows:minmax(48px,.62fr) minmax(2.15em,auto) 1.15em!important;
  align-content:center!important;
  align-items:center!important;
  justify-items:center!important;
  gap:2px!important;
  padding:4px 3px 5px!important;
  overflow:hidden!important;
}
.screen-menu-cat-best .screen-menu-product-tile .screen-menu-photo,
.screen-menu-cat-traditional .screen-menu-product-tile .screen-menu-photo{
  width:min(58px,100%)!important;
  height:clamp(42px,3.25vw,58px)!important;
  margin:0 auto!important;
  align-self:center!important;
}
.screen-menu-cat-best .screen-menu-product-tile .screen-menu-info,
.screen-menu-cat-traditional .screen-menu-product-tile .screen-menu-info{
  width:100%!important;
  min-width:0!important;
  align-self:center!important;
}
.screen-menu-cat-best .screen-menu-product-tile .screen-menu-info h3,
.screen-menu-cat-traditional .screen-menu-product-tile .screen-menu-info h3{
  min-height:0!important;
  max-height:none!important;
  font-size:clamp(9.4px,.63vw,12.5px)!important;
  line-height:1.06!important;
  font-weight:950!important;
  text-align:center!important;
  display:block!important;
  overflow:visible!important;
  white-space:normal!important;
  word-break:keep-all!important;
  overflow-wrap:normal!important;
}
.screen-menu-cat-best .screen-menu-product-tile .screen-menu-price,
.screen-menu-cat-traditional .screen-menu-product-tile .screen-menu-price{
  display:block!important;
  width:100%!important;
  font-size:clamp(9.5px,.65vw,12.5px)!important;
  line-height:1.05!important;
  font-weight:950!important;
  color:#a43d16!important;
  text-align:center!important;
  white-space:nowrap!important;
  overflow:visible!important;
  margin:0!important;
  padding:0!important;
}
.screen-menu-cat-traditional.screen-menu-count-6 .screen-menu-items-tiles,
.screen-menu-cat-traditional.screen-menu-count-7 .screen-menu-items-tiles,
.screen-menu-cat-traditional.screen-menu-count-8 .screen-menu-items-tiles{
  grid-template-columns:repeat(auto-fit,minmax(78px,1fr))!important;
}
.best-badge{
  flex:0 0 auto!important;
  width:30px!important;
  height:30px!important;
  font-size:6.4px!important;
  margin-right:4px!important;
}
@media(max-aspect-ratio:16/9){
  .screen-menu-reference{
    grid-template-columns:minmax(245px,22.4vw) minmax(0,1fr)!important;
    gap:7px!important;
  }
  .screen-menu-board{
    grid-template-rows:minmax(174px,.78fr) repeat(2,minmax(0,1fr))!important;
    gap:6px!important;
  }
  .screen-menu-side-brand.screen-menu-logo-only .screen-menu-logo{
    width:clamp(132px,20vw,270px)!important;
    height:clamp(78px,7vw,124px)!important;
  }
  .screen-menu-side-copy span{
    font-size:clamp(10px,.66vw,13px)!important;
    line-height:1.18!important;
  }
  .screen-menu-cat-best .screen-menu-cat-head h2,
  .screen-menu-cat-traditional .screen-menu-cat-head h2{
    font-size:clamp(16px,1.08vw,23px)!important;
  }
  .screen-menu-cat-best .screen-menu-items-tiles,
  .screen-menu-cat-traditional .screen-menu-items-tiles{
    grid-template-columns:repeat(auto-fit,minmax(68px,1fr))!important;
    gap:4px!important;
  }
  .screen-menu-cat-best .screen-menu-product-tile,
  .screen-menu-cat-traditional .screen-menu-product-tile{
    grid-template-rows:minmax(38px,.58fr) minmax(2.1em,auto) 1.05em!important;
    padding:3px 2px 4px!important;
  }
  .screen-menu-cat-best .screen-menu-product-tile .screen-menu-photo,
  .screen-menu-cat-traditional .screen-menu-product-tile .screen-menu-photo{
    width:min(48px,100%)!important;
    height:clamp(34px,2.85vw,48px)!important;
  }
  .screen-menu-cat-best .screen-menu-product-tile .screen-menu-info h3,
  .screen-menu-cat-traditional .screen-menu-product-tile .screen-menu-info h3{
    font-size:clamp(7.8px,.49vw,9.8px)!important;
    line-height:1.04!important;
  }
  .screen-menu-cat-best .screen-menu-product-tile .screen-menu-price,
  .screen-menu-cat-traditional .screen-menu-product-tile .screen-menu-price{
    font-size:clamp(7.9px,.50vw,10px)!important;
  }
}


/* Screen menu v5.2.3 - Best seller giữ 1 hàng, hiện đủ giá */
.screen-menu-cat-best{
  min-width:0!important;
  overflow:hidden!important;
}
.screen-menu-cat-best .screen-menu-items-tiles{
  display:grid!important;
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  grid-template-rows:minmax(0,1fr)!important;
  grid-auto-flow:column!important;
  grid-auto-columns:minmax(0,1fr)!important;
  gap:5px!important;
  overflow:hidden!important;
  align-items:stretch!important;
}
.screen-menu-cat-best .screen-menu-product-tile{
  height:100%!important;
  min-width:0!important;
  min-height:0!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:minmax(38px,.48fr) minmax(2.05em,auto) 1.15em!important;
  align-content:center!important;
  align-items:center!important;
  justify-items:center!important;
  gap:1px!important;
  padding:3px 2px 5px!important;
  overflow:hidden!important;
}
.screen-menu-cat-best .screen-menu-product-tile .screen-menu-photo{
  width:min(52px,100%)!important;
  height:clamp(34px,2.9vw,52px)!important;
  margin:0 auto!important;
  align-self:center!important;
  flex:0 0 auto!important;
}
.screen-menu-cat-best .screen-menu-product-tile .screen-menu-info{
  width:100%!important;
  min-width:0!important;
  align-self:center!important;
  overflow:visible!important;
}
.screen-menu-cat-best .screen-menu-product-tile .screen-menu-info h3{
  display:block!important;
  -webkit-line-clamp:initial!important;
  -webkit-box-orient:initial!important;
  max-height:none!important;
  min-height:0!important;
  overflow:visible!important;
  text-overflow:clip!important;
  white-space:normal!important;
  word-break:keep-all!important;
  overflow-wrap:normal!important;
  text-align:center!important;
  font-size:clamp(8.2px,.55vw,10.4px)!important;
  line-height:1.02!important;
  font-weight:950!important;
  letter-spacing:-.035em!important;
}
.screen-menu-cat-best .screen-menu-product-tile .screen-menu-price{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  color:#a43d16!important;
  text-align:center!important;
  white-space:nowrap!important;
  overflow:visible!important;
  font-size:clamp(8.6px,.58vw,10.8px)!important;
  line-height:1.04!important;
  font-weight:950!important;
  align-self:center!important;
}
.screen-menu-cat-best.screen-menu-count-6 .screen-menu-items-tiles,
.screen-menu-cat-best.screen-menu-count-7 .screen-menu-items-tiles,
.screen-menu-cat-best.screen-menu-count-8 .screen-menu-items-tiles,
.screen-menu-cat-best.screen-menu-count-9 .screen-menu-items-tiles,
.screen-menu-cat-best.screen-menu-count-10 .screen-menu-items-tiles{
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
}
.screen-menu-cat-best .screen-menu-product-tile:nth-child(n+7){display:none!important}
@media(max-aspect-ratio:16/9){
  .screen-menu-cat-best .screen-menu-items-tiles{grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:4px!important}
  .screen-menu-cat-best .screen-menu-product-tile{grid-template-rows:minmax(32px,.46fr) minmax(2em,auto) 1.08em!important;padding:2px 2px 4px!important}
  .screen-menu-cat-best .screen-menu-product-tile .screen-menu-photo{width:min(46px,100%)!important;height:clamp(30px,2.55vw,46px)!important}
  .screen-menu-cat-best .screen-menu-product-tile .screen-menu-info h3{font-size:clamp(7.2px,.46vw,9px)!important;line-height:1.01!important;letter-spacing:-.04em!important}
  .screen-menu-cat-best .screen-menu-product-tile .screen-menu-price{font-size:clamp(7.6px,.49vw,9.4px)!important;line-height:1.02!important}
}


/* Mobile topping display fix v5.2.4 */
.product-topping-block{display:grid;gap:8px;min-width:0}
.product-topping-checks{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))!important;gap:10px!important;margin:8px 0!important;min-width:0!important;max-width:100%!important}
.product-topping-option{display:grid!important;grid-template-columns:22px minmax(0,1fr)!important;align-items:center!important;gap:10px!important;padding:10px 12px!important;border:1px solid var(--line)!important;border-radius:12px!important;background:#fff!important;box-shadow:0 6px 14px rgba(24,24,27,.04)!important;line-height:1.25!important;min-width:0!important;max-width:100%!important;box-sizing:border-box!important;cursor:pointer!important}
.product-topping-option input{width:18px!important;height:18px!important;margin:0!important;justify-self:center!important;flex:0 0 auto!important}
.product-topping-text{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;min-width:0!important;width:100%!important;text-align:left!important}
.product-topping-name{font-weight:600!important;color:#27272a!important;min-width:0!important;overflow-wrap:anywhere!important;word-break:normal!important}
.product-topping-price{font-weight:800!important;color:#7c2d12!important;white-space:nowrap!important}
@media(max-width:700px){
  .product-topping-checks{grid-template-columns:1fr!important;gap:8px!important;width:100%!important;overflow:visible!important}
  .product-topping-option{grid-template-columns:24px minmax(0,1fr)!important;gap:10px!important;padding:11px 12px!important;min-height:50px!important}
  .product-topping-text{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important}
  .product-topping-name{font-size:14px!important;line-height:1.22!important}
  .product-topping-price{font-size:13px!important;line-height:1.1!important}
}
@media(max-width:380px){
  .product-topping-option{padding:10px!important}
  .product-topping-text{grid-template-columns:1fr!important;gap:3px!important}
  .product-topping-price{justify-self:start!important}
}

/* Mobile header menu alignment fix v5.2.5 */
@media(max-width:760px){
  .site-header{
    position:sticky!important;
    top:0!important;
    z-index:1500!important;
    overflow:visible!important;
  }
  .site-nav{
    position:relative!important;
    width:100%!important;
    max-width:none!important;
    min-height:64px!important;
    padding:10px 14px!important;
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px!important;
  }
  .site-nav .brand,
  .site-nav .brand-logo-only{
    position:relative!important;
    z-index:1510!important;
    flex:1 1 auto!important;
    min-width:0!important;
    max-width:calc(100% - 58px)!important;
    justify-content:flex-start!important;
    overflow:hidden!important;
  }
  .site-nav .brand-logo-img{
    max-width:min(170px,58vw)!important;
    max-height:44px!important;
    object-fit:contain!important;
  }
  .site-menu-btn{
    position:relative!important;
    z-index:1530!important;
    flex:0 0 46px!important;
    width:46px!important;
    height:46px!important;
    min-width:46px!important;
    margin-left:auto!important;
    border-radius:14px!important;
    background:#18181b!important;
    color:#fff!important;
    border-color:#18181b!important;
  }
  .site-menu-backdrop{
    position:fixed!important;
    left:0!important;
    right:0!important;
    top:64px!important;
    bottom:0!important;
    z-index:1490!important;
    background:rgba(24,24,27,.32)!important;
    backdrop-filter:blur(1.5px)!important;
  }
  .site-nav .site-menu{
    position:fixed!important;
    left:50%!important;
    right:auto!important;
    top:78px!important;
    z-index:1520!important;
    width:min(440px,calc(100vw - 24px))!important;
    max-width:calc(100vw - 24px)!important;
    margin:0!important;
    padding:12px!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    border-radius:18px!important;
    background:#fff!important;
    border:1px solid rgba(231,229,228,.95)!important;
    box-shadow:0 18px 45px rgba(24,24,27,.18)!important;
    max-height:calc(100dvh - 94px)!important;
    overflow:auto!important;
    box-sizing:border-box!important;
    transform:translate(-50%,-8px)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
  body.site-menu-open .site-nav .site-menu{
    transform:translate(-50%,0)!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }
  .site-nav .site-menu a{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    width:100%!important;
    min-height:56px!important;
    padding:13px 16px!important;
    border-radius:14px!important;
    background:#fff!important;
    border:1px solid #f0e8de!important;
    color:#2f2f33!important;
    font-size:16px!important;
    font-weight:500!important;
    line-height:1.25!important;
    text-align:left!important;
    white-space:normal!important;
  }
  body.site-menu-open .site-menu-btn{
    background:#18181b!important;
    color:#fff!important;
    border-color:#18181b!important;
  }
}

/* Update 5.3.0: dùng ảnh thumbnail nhẹ và không cắt hình sản phẩm */
.product-card img,
.product-detail img,
.qty-photo,
.pos-touch-photo img,
.thumb-sm,
.upload-preview,
.screen-menu-photo img{
  object-fit:contain!important;
}
.product-card img,
.pos-touch-photo img,
.screen-menu-photo img{
  background:#fff!important;
}
