*{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%;overflow:hidden;background:#09060e;font-family:Be Vietnam Pro,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:#f8fafc;-webkit-user-select:none;user-select:none}.diner-viewport{width:100vw;height:100dvh;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 35%,#27150a,#0b0705 70%,#040303)}.diner-9x16-stage{position:relative;width:min(100vw,56.25dvh);height:100dvh;max-width:540px;display:flex;flex-direction:column;justify-content:space-between;border-left:1px solid rgba(251,191,36,.35);border-right:1px solid rgba(251,191,36,.35);box-shadow:0 0 65px #000000e6;overflow:hidden}@media(max-aspect-ratio:9/16){.diner-9x16-stage{width:100vw;height:100dvh;max-width:none;border:none}}.diner-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;z-index:1}.diner-top-stack{position:relative;z-index:10;display:flex;flex-direction:column;gap:5px;margin:6px 8px 0}.diner-top-hud{padding:5px 9px;border-radius:12px;background:linear-gradient(90deg,#451a03eb,#0f172ae6);border:1.5px solid rgba(251,191,36,.58);box-shadow:0 6px 18px #0000008c;display:flex;align-items:center;justify-content:space-between;gap:6px}.diner-khach-guoc-bar{display:flex;align-items:center;gap:5px;padding:4px 7px;border-radius:10px;background:linear-gradient(90deg,#78350feb,#0f172aeb);border:1px solid rgba(250,204,21,.55);box-shadow:0 4px 14px #00000080;overflow:hidden}.diner-khach-guoc-title-btn{background:none;border:none;color:#fde047;font-size:9.5px;font-weight:900;letter-spacing:.02em;white-space:nowrap;cursor:pointer;flex-shrink:0}.diner-khach-guoc-chips{display:flex;align-items:center;gap:4px;flex:1;min-width:0;overflow-x:auto;scrollbar-width:none}.diner-khach-guoc-chips::-webkit-scrollbar{display:none}.diner-khach-guoc-chip{display:inline-flex;align-items:center;gap:3px;padding:2px 6px;border-radius:999px;background:#0f172ae6;border:1px solid rgba(251,191,36,.4);color:#f8fafc;font-size:9px;font-weight:700;white-space:nowrap;cursor:pointer;flex-shrink:0}.diner-khach-guoc-chip.is-top1{background:linear-gradient(90deg,#92400ef2,#b45309f2);border-color:#fde047;color:#fef08a}.diner-kg-name{max-width:68px;overflow:hidden;text-overflow:ellipsis}.diner-kg-count{color:#4ade80;font-weight:800}.diner-khach-guoc-chip.is-top1 .diner-kg-count{color:#fff}.diner-khach-guoc-more-btn{padding:2px 6px;border-radius:6px;background:#facc152e;border:1px solid rgba(250,204,21,.55);color:#fde047;font-size:9px;font-weight:800;white-space:nowrap;cursor:pointer;flex-shrink:0}.diner-brand-badge{display:flex;align-items:center;gap:7px;min-width:0}.diner-brand-icon{font-size:21px;line-height:1}.diner-brand-title{font-size:12.5px;font-weight:900;letter-spacing:.03em;color:#fef08a;white-space:nowrap}.diner-brand-sub{font-size:10px;color:#e2e8f0;white-space:nowrap}.diner-brand-sub strong{color:#fde047}.diner-hud-actions{display:flex;align-items:center;gap:5px;flex-shrink:0}.diner-live-pill{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border-radius:999px;font-size:10px;font-weight:700;background:#0f172ad9;border:1px solid rgba(148,163,184,.4);color:#e2e8f0;max-width:118px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.diner-live-pill.is-live{background:#991b1be6;border-color:#f87171;color:#fef2f2}.diner-live-dot{width:6px;height:6px;border-radius:50%;background:#4ade80;box-shadow:0 0 6px #4ade80;flex-shrink:0}.diner-live-pill.is-live .diner-live-dot{background:#ef4444;box-shadow:0 0 8px #ef4444}.diner-hud-btn{padding:4px 8px;border-radius:8px;font-size:10px;font-weight:800;cursor:pointer;border:1px solid rgba(251,191,36,.55);background:#78350fc7;color:#fef08a;transition:transform .12s ease}.diner-hud-btn:hover{transform:translateY(-1px)}.diner-hud-btn.is-alert{background:#b91c1ce0;border-color:#fca5a5;color:#fff;animation:pulseAlert 1.5s infinite}@keyframes pulseAlert{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}.diner-babay-loudspeaker{position:absolute;top:10.6%;left:50%;transform:translate(-50%);width:92%;z-index:12;padding:5px 10px;border-radius:12px;background:linear-gradient(90deg,#7c2d12f2,#991b1bf2);border:2px solid #fde047;box-shadow:0 8px 25px #000000bf;text-align:center;animation:popInBanner .22s cubic-bezier(.16,1,.3,1)}.diner-babay-loudspeaker.is-vip{background:linear-gradient(90deg,#92400e,#b45309,#78350f);border-color:#fef08a;box-shadow:0 0 28px #facc15a6}.diner-loudspeaker-tag{display:flex;align-items:center;justify-content:center;gap:6px;flex-wrap:wrap;font-size:9px;font-weight:800;letter-spacing:.04em;color:#fde047}.diner-nth-order-pill{padding:1px 6px;border-radius:999px;background:#facc15;color:#7c2d12;font-size:9px;font-weight:900}.diner-loudspeaker-speech{font-size:12.5px;font-weight:900;color:#fff;margin-top:2px;line-height:1.25;text-shadow:0 1px 3px rgba(0,0,0,.8)}.diner-counter-order-bubble{position:absolute;top:19.2%;left:50%;transform:translate(-50%);width:86%;z-index:12;padding:6px 11px;border-radius:13px;background:#0f172af0;border:2px solid #fbbf24;box-shadow:0 10px 28px #000c;animation:popInBanner .22s ease-out}.diner-counter-order-bubble:after{content:"";position:absolute;bottom:-9px;left:50%;transform:translate(-50%);border-width:9px 9px 0;border-style:solid;border-color:#fbbf24 transparent transparent}.diner-bubble-header{display:flex;align-items:center;justify-content:space-between;gap:6px}.diner-bubble-user{font-size:12px;font-weight:900;color:#fef08a;display:inline-flex;align-items:center;gap:4px;flex-wrap:wrap}.diner-bubble-nth-tag{font-size:10px;font-weight:800;color:#4ade80}.diner-bubble-dish-pill{padding:2px 8px;border-radius:999px;font-size:10.5px;font-weight:800;border:1.5px solid;background:#0f172ae6}.diner-bubble-comment{margin-top:4px;font-size:13.5px;font-weight:800;color:#fff}.diner-bubble-status{margin-top:3px;font-size:10.5px;font-weight:700;color:#4ade80}@keyframes popInBanner{0%{opacity:0;transform:translate(-50%,8px) scale(.94)}to{opacity:1;transform:translate(-50%) scale(1)}}.diner-bottom-hud{position:relative;z-index:10;margin:0 10px 8px;display:flex;flex-direction:column;gap:5px}.diner-order-ticker{padding:6px 10px;border-radius:12px;background:#0f172ae0;border:1px solid rgba(251,191,36,.42);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.diner-ticker-title{display:flex;align-items:center;justify-content:space-between;font-size:10px;font-weight:800;color:#fde047;margin-bottom:3px}.diner-ticker-hint{font-size:9px;font-weight:600;color:#94a3b8}.diner-ticker-list{display:flex;flex-direction:column;gap:2px}.diner-ticker-item{display:flex;align-items:center;gap:5px;font-size:10.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.diner-ticker-emoji{font-size:13px}.diner-ticker-user{color:#fef08a;flex-shrink:0}.diner-ticker-text{color:#e2e8f0;overflow:hidden;text-overflow:ellipsis}.diner-ticker-text em{color:#4ade80;font-style:normal;font-weight:700}.diner-center-menu-board{position:absolute;top:56%;left:50%;transform:translate(-50%,-50%);width:92%;z-index:10;padding:6px 8px;border-radius:12px;background:linear-gradient(180deg,#451a03db,#1c0c05e0);border:1.5px solid rgba(251,191,36,.72);box-shadow:0 8px 24px #000000a6;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.diner-menu-header{display:flex;align-items:center;justify-content:center;gap:6px;font-size:9.5px;font-weight:800;color:#fef08a;text-align:center;margin-bottom:5px;letter-spacing:.02em}.diner-menu-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.diner-menu-chip{display:flex;align-items:center;gap:4px;padding:4px 6px;border-radius:8px;background:#0f172ad9;border:1px solid rgba(251,191,36,.42);color:#f8fafc;cursor:pointer;text-align:left;transition:transform .1s ease,border-color .15s ease;overflow:hidden}.diner-menu-chip:hover{transform:translateY(-1px);border-color:#fde047;background:#78350fd9}.diner-chip-emoji{font-size:14px;flex-shrink:0}.diner-chip-name{font-size:9.5px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.diner-drawer-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:50;background:#04060cd1;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:flex-end}.diner-drawer-sheet{width:100%;max-height:86%;background:linear-gradient(180deg,#271206,#0f0a07);border-top:2px solid #fbbf24;border-radius:18px 18px 0 0;padding:14px;overflow-y:auto;display:flex;flex-direction:column;gap:12px}.diner-drawer-header{display:flex;align-items:center;justify-content:space-between}.diner-drawer-header h3{font-size:13.5px;color:#fef08a}.diner-close-btn{padding:4px 10px;border-radius:8px;background:#991b1bcc;border:1px solid #fca5a5;color:#fff;font-size:11px;font-weight:700;cursor:pointer}.diner-drawer-body{display:flex;flex-direction:column;gap:10px}.diner-card{padding:10px;border-radius:12px;background:#0f172ad1;border:1px solid rgba(251,191,36,.35);display:flex;flex-direction:column;gap:8px}.diner-label{font-size:11.5px;font-weight:800;color:#fde047}.diner-row{display:flex;gap:6px}.diner-input{width:100%;padding:7px 10px;border-radius:8px;border:1px solid rgba(148,163,184,.45);background:#090d16f2;color:#f8fafc;font-size:12px}.diner-toggle-row{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#e2e8f0}.diner-btn{padding:7px 11px;border-radius:8px;font-size:11.5px;font-weight:800;cursor:pointer;border:none;white-space:nowrap}.diner-btn.is-primary{background:#2563eb;color:#fff}.diner-btn.is-gold{background:linear-gradient(90deg,#d97706,#eab308);color:#090d16}.diner-btn.is-success{background:#16a34a;color:#fff}.diner-btn.is-danger{background:#dc2626;color:#fff}.diner-btn.is-neutral{background:#334155;color:#e2e8f0}.diner-error{font-size:11px;color:#fca5a5}.diner-leaderboard-subtitle{font-size:11px;line-height:1.4;color:#cbd5e1;background:#78350f59;border:1px solid rgba(250,204,21,.35);padding:8px 10px;border-radius:10px}.diner-leaderboard-subtitle strong{color:#fde047}.diner-leaderboard-list{display:flex;flex-direction:column;gap:7px}.diner-leaderboard-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;border-radius:11px;background:#0f172ad9;border:1px solid rgba(148,163,184,.3)}.diner-leaderboard-row.is-top-1{background:linear-gradient(90deg,#78350fd9,#0f172aeb);border-color:#fde047}.diner-leaderboard-row.is-top-2{background:linear-gradient(90deg,#334155d9,#0f172aeb);border-color:#cbd5e1}.diner-leaderboard-row.is-top-3{background:linear-gradient(90deg,#7c2d12b8,#0f172aeb);border-color:#fb923c}.diner-lb-left{display:flex;align-items:center;gap:8px;min-width:0}.diner-lb-rank{font-size:11px;font-weight:900;color:#fde047;white-space:nowrap;min-width:56px}.diner-lb-name{font-size:12px;font-weight:800;color:#fff;display:flex;align-items:center;gap:5px;flex-wrap:wrap}.diner-lb-guoc-tag{padding:1px 6px;border-radius:999px;background:#eab30838;border:1px solid rgba(250,204,21,.6);color:#fef08a;font-size:9px;font-weight:800}.diner-lb-dish{font-size:10.5px;color:#cbd5e1;margin-top:2px}.diner-lb-dish strong{color:#fef08a}.diner-lb-right{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex-shrink:0}.diner-lb-count-badge{padding:2px 7px;border-radius:999px;background:#16a34a40;border:1px solid #4ade80;color:#4ade80;font-size:10px;font-weight:900;white-space:nowrap}.diner-lb-reorder-btn{padding:4px 8px;border-radius:7px;background:linear-gradient(90deg,#b45309,#d97706);border:1px solid #fde047;color:#fff;font-size:9.5px;font-weight:800;cursor:pointer;white-space:nowrap}.diner-khach-guoc-more-btn{text-decoration:none}.qbb-dash-page{width:100vw;height:100dvh;overflow-y:auto;background:radial-gradient(circle at 50% 10%,#2a1408,#0b0705 70%,#050303);color:#f8fafc;padding:20px 16px 48px}.qbb-dash-container{max-width:1180px;margin:0 auto;display:flex;flex-direction:column;gap:16px}.qbb-dash-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:14px 18px;border-radius:16px;background:linear-gradient(90deg,#451a03eb,#0f172af0);border:1.5px solid rgba(251,191,36,.6);box-shadow:0 10px 30px #0000008c}.qbb-dash-brand{display:flex;align-items:center;gap:12px}.qbb-dash-logo{font-size:34px;line-height:1}.qbb-dash-brand h1{font-size:18px;font-weight:900;color:#fef08a;letter-spacing:.02em}.qbb-dash-brand p{font-size:12.5px;color:#cbd5e1;margin-top:2px}.qbb-dash-header-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.qbb-dash-status-pill{display:inline-flex;align-items:center;gap:7px;padding:7px 13px;border-radius:999px;background:#0f172ae6;border:1px solid rgba(148,163,184,.45);font-size:12px;font-weight:800;color:#e2e8f0}.qbb-dash-status-pill.is-live{background:#991b1beb;border-color:#f87171;color:#fff}.qbb-dash-dot{width:8px;height:8px;border-radius:50%;background:#4ade80;box-shadow:0 0 8px #4ade80}.qbb-dash-stage-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:10px;background:linear-gradient(90deg,#d97706,#eab308);color:#090d16;font-size:12.5px;font-weight:900;text-decoration:none;box-shadow:0 4px 14px #eab30859}.qbb-dash-kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}@media(max-width:860px){.qbb-dash-kpi-grid{grid-template-columns:repeat(2,1fr)}}.qbb-dash-kpi-card{padding:12px 15px;border-radius:14px;background:#0f172adb;border:1px solid rgba(251,191,36,.35);display:flex;flex-direction:column;gap:4px}.qbb-kpi-label{font-size:11.5px;color:#94a3b8;font-weight:700}.qbb-kpi-value{font-size:17px;font-weight:900;color:#f8fafc}.qbb-kpi-value.is-gold{color:#fde047}.qbb-kpi-value.is-green{color:#4ade80}.qbb-dash-main-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:16px;align-items:start}@media(max-width:920px){.qbb-dash-main-grid{grid-template-columns:1fr}}.qbb-dash-col{display:flex;flex-direction:column;gap:16px}.qbb-dash-card{padding:16px;border-radius:16px;background:#0f172ae0;border:1px solid rgba(251,191,36,.38);box-shadow:0 8px 24px #00000073;display:flex;flex-direction:column;gap:12px}.qbb-dash-card h2{font-size:14.5px;font-weight:900;color:#fde047;padding-bottom:8px;border-bottom:1px solid rgba(148,163,184,.2)}.qbb-dash-row{display:flex;gap:8px;flex-wrap:wrap}.qbb-dash-input{flex:1;min-width:180px;padding:9px 12px;border-radius:10px;border:1px solid rgba(148,163,184,.45);background:#090d16f2;color:#f8fafc;font-size:13px}.qbb-dash-btn{padding:9px 14px;border-radius:10px;font-size:12.5px;font-weight:800;cursor:pointer;border:none;white-space:nowrap;transition:transform .1s ease}.qbb-dash-btn:hover{transform:translateY(-1px)}.qbb-dash-btn.is-primary{background:#2563eb;color:#fff}.qbb-dash-btn.is-gold{background:linear-gradient(90deg,#d97706,#eab308);color:#090d16}.qbb-dash-btn.is-success{background:#16a34a;color:#fff}.qbb-dash-btn.is-danger{background:#dc2626;color:#fff}.qbb-dash-btn.is-neutral{background:#334155;color:#e2e8f0}.qbb-dash-error{padding:8px 12px;border-radius:9px;background:#991b1b59;border:1px solid #f87171;color:#fecaca;font-size:12px}.qbb-dash-switch-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:11px;background:#1e293b8c;border:1px solid rgba(148,163,184,.22)}.qbb-dash-switch-row strong{display:block;font-size:13px;color:#f8fafc}.qbb-dash-switch-row p{font-size:11.5px;color:#94a3b8;margin-top:2px}.qbb-dash-field{display:flex;flex-direction:column;gap:6px}.qbb-dash-field label{font-size:12px;font-weight:800;color:#cbd5e1}.qbb-dash-form{display:flex;flex-direction:column;gap:10px}.qbb-dash-menu-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}@media(max-width:560px){.qbb-dash-menu-grid{grid-template-columns:1fr}}.qbb-dash-dish-btn{display:flex;align-items:center;gap:10px;padding:9px 11px;border-radius:11px;background:#1e293bb8;border:1px solid rgba(251,191,36,.35);color:#f8fafc;cursor:pointer;text-align:left;transition:transform .1s ease,border-color .15s ease}.qbb-dash-dish-btn:hover{transform:translateY(-1px);border-color:#fde047;background:#78350fa6}.qbb-dish-emoji{font-size:24px;flex-shrink:0}.qbb-dish-info{display:flex;flex-direction:column;min-width:0}.qbb-dish-info strong{font-size:12.5px;color:#fef08a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.qbb-dish-info span{font-size:11px;color:#cbd5e1;margin-top:1px}.qbb-dash-leaderboard{display:flex;flex-direction:column;gap:7px;max-height:360px;overflow-y:auto}.qbb-dash-lb-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 11px;border-radius:10px;background:#1e293b99;border:1px solid rgba(148,163,184,.25)}.qbb-dash-lb-left{display:flex;align-items:center;gap:10px;min-width:0}.qbb-dash-lb-rank{font-size:12px;font-weight:900;color:#fde047;min-width:44px}.qbb-dash-lb-left strong{display:block;font-size:12.5px;color:#fff}.qbb-dash-lb-left span{display:block;font-size:11px;color:#94a3b8;margin-top:1px}.qbb-dash-lb-right{display:flex;align-items:center;gap:7px;flex-shrink:0}.qbb-dash-lb-badge{padding:3px 8px;border-radius:999px;background:#16a34a38;border:1px solid #4ade80;color:#4ade80;font-size:10.5px;font-weight:800}.qbb-dash-mini-btn{padding:5px 9px;border-radius:7px;background:linear-gradient(90deg,#b45309,#d97706);border:1px solid #fde047;color:#fff;font-size:10.5px;font-weight:800;cursor:pointer}
