:root{--bg: #0e130d;--bg-soft: #131a10;--card: #1a2216;--card-hi: #212b1b;--line: #2b3524;--lime: #cdf24a;--lime-dim: #a8c93d;--teal: #4fd1c5;--coral: #ef6a6a;--amber: #f59e0b;--indigo: #6366f1;--text: #f4f7ec;--muted: #9aa78a;--muted2: #6d7862}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:radial-gradient(circle at 12% 8%,rgba(205,242,74,.06),transparent 40%),radial-gradient(circle at 90% 15%,rgba(79,209,197,.07),transparent 45%),var(--bg);color:var(--text);font-family:Inter,system-ui,sans-serif;min-height:100vh;-webkit-font-smoothing:antialiased;overflow-x:hidden}.display{font-family:Bebas Neue,sans-serif;letter-spacing:.5px}.bubble{position:fixed;border-radius:50%;border:1.5px solid rgba(205,242,74,.15);pointer-events:none;z-index:0}.b1{width:70px;height:70px;top:6%;left:4%}.b2{width:34px;height:34px;top:18%;left:88%;border-color:#4fd1c52e}.b3{width:18px;height:18px;top:70%;left:92%}.b4{width:46px;height:46px;top:80%;left:6%;border-color:#4fd1c524}@media(max-width:600px){.bubble{display:none}}.wrap{position:relative;z-index:1;max-width:760px;margin:0 auto;padding:18px 16px 60px}header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:14px}.brand{display:flex;align-items:center;gap:10px;min-width:0}.cup{width:30px;height:34px;position:relative;flex-shrink:0}.cup svg{width:100%;height:100%;display:block}.brand h1{font-size:28px;margin:0;line-height:.9;color:var(--lime);white-space:nowrap}.brand span{display:block;font-family:Inter,sans-serif;font-size:10px;letter-spacing:2px;color:var(--muted);font-weight:600;margin-top:2px;white-space:nowrap}.header-right{display:flex;align-items:center;gap:6px}.nav-bar{display:flex;align-items:center;gap:6px;background:var(--card);border:1px solid var(--line);padding:4px;border-radius:14px;margin-bottom:16px;overflow-x:auto}.nav-item{flex:1;background:transparent;border:none;color:var(--muted);font-size:12px;font-weight:700;padding:8px 12px;border-radius:10px;cursor:pointer;text-align:center;white-space:nowrap;transition:all .15s ease;min-height:38px;display:flex;align-items:center;justify-content:center;gap:6px}.nav-item:hover{color:var(--text);background:#ffffff0a}.nav-item.active{background:var(--lime);color:#122008}.nav-badge{background:var(--coral);color:#fff;font-size:10px;font-weight:800;padding:2px 6px;border-radius:10px;min-width:18px;line-height:1}.nav-item.active .nav-badge{background:#122008;color:var(--lime)}.sales-chip{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:6px 10px;text-align:right;min-width:88px;flex-shrink:0;font-family:inherit;cursor:pointer;transition:border-color .15s ease}.sales-chip:hover{border-color:var(--teal)}.sales-chip .lbl{font-size:8.5px;letter-spacing:1.5px;color:var(--muted2);text-transform:uppercase;font-weight:700;white-space:nowrap}.sales-chip .val{font-family:Bebas Neue,sans-serif;font-size:18px;color:var(--teal);letter-spacing:.5px}.logout-btn{background:transparent;border:1px solid var(--line);color:var(--muted);font-size:10.5px;padding:7px 10px;border-radius:10px;cursor:pointer;font-weight:600;transition:all .15s ease;min-height:38px}.logout-btn:hover{border-color:var(--coral);color:var(--coral)}.toolbar{display:flex;gap:10px;margin-bottom:16px}.takeaway-btn{flex:1;background:linear-gradient(135deg,#4fd1c526,#4fd1c50d);border:1px solid rgba(79,209,197,.4);color:var(--teal);border-radius:14px;padding:12px 16px;font-weight:700;font-size:13.5px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .15s ease;min-height:44px}.takeaway-btn:hover,.takeaway-btn:active{background:#4fd1c540;border-color:var(--teal);transform:translateY(-1px)}.section-title{font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--muted);font-weight:700;margin:16px 2px 10px}.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}@media(min-width:480px){.grid{grid-template-columns:repeat(3,1fr)}}.table-card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:14px 12px 12px;cursor:pointer;text-align:left;transition:transform .12s ease,border-color .12s ease,background .12s ease,box-shadow .2s ease;position:relative;overflow:hidden;min-height:100px}.table-card:active{transform:scale(.96)}.table-card.occ{border-color:#cdf24a73;background:linear-gradient(160deg,var(--card-hi),var(--card))}.table-card.pulse-update{animation:pulseGlow .6s ease-out}.table-card .num{font-family:Bebas Neue,sans-serif;font-size:34px;line-height:1;color:var(--text)}.table-card .status{display:flex;align-items:center;gap:6px;margin-top:6px}.dot{width:7px;height:7px;border-radius:50%;background:var(--muted2)}.table-card.occ .dot{background:var(--lime);box-shadow:0 0 8px #cdf24ab3}.status-txt{font-size:10.5px;color:var(--muted);font-weight:600;letter-spacing:.3px}.table-card.occ .status-txt{color:var(--lime-dim)}.amt{margin-top:10px;font-family:Bebas Neue,sans-serif;font-size:18px;color:var(--muted2)}.table-card.occ .amt{color:var(--teal)}.add-table{background:transparent;border:1.5px dashed var(--line);border-radius:16px;color:var(--muted);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:14px 12px;cursor:pointer;min-height:100px;transition:border-color .12s ease,color .12s ease}.add-table:hover,.add-table:active{border-color:var(--lime);color:var(--lime-dim)}.add-table .plus-ic{font-family:Bebas Neue,sans-serif;font-size:26px;line-height:1}.add-table .lbl-ic{font-size:10.5px;font-weight:700;letter-spacing:.5px}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg);z-index:50;display:flex;flex-direction:column;transform:translateY(100%);transition:transform .22s cubic-bezier(.16,1,.3,1);overflow:hidden}.overlay.open{transform:translateY(0)}.ov-head{display:flex;align-items:center;justify-content:space-between;padding:16px;border-bottom:1px solid var(--line);flex-shrink:0;background:var(--bg-soft)}.back-btn{background:var(--card);border:1px solid var(--line);color:var(--text);width:38px;height:38px;border-radius:10px;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center}.ov-head .title{font-family:Bebas Neue,sans-serif;font-size:24px;color:var(--lime)}.ov-head .title small{display:block;font-family:Inter,sans-serif;font-size:10px;color:var(--muted);letter-spacing:1px;font-weight:600}.free-btn{background:transparent;border:1px solid var(--line);color:var(--muted);font-size:11px;padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:600;min-height:38px}.client-input-wrap{padding:12px 16px 0}.client-input-wrap input{width:100%;background:var(--card);border:1px solid var(--line);color:var(--lime);border-radius:12px;padding:10px 14px;font-size:14px;font-weight:600;font-family:Inter,sans-serif}.client-input-wrap input:focus{outline:none;border-color:var(--lime)}.menu-scroll{flex:1;overflow-y:auto;padding:14px 16px 10px}.cat-lbl{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted2);font-weight:700;margin:14px 2px 8px}.cat-lbl:first-child{margin-top:0}.item-row{display:flex;align-items:center;justify-content:space-between;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:11px 12px;margin-bottom:8px}.item-info .nm{font-size:14.5px;font-weight:700}.item-info .pr{font-size:12px;color:var(--muted);margin-top:2px}.stepper{display:flex;align-items:center;gap:8px}.stepper button{width:38px;height:38px;border-radius:10px;border:1px solid var(--line);background:var(--bg-soft);color:var(--text);font-size:17px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-weight:700;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.stepper button.plus{background:var(--lime);color:#122008;border-color:var(--lime)}.stepper .qty{min-width:18px;text-align:center;font-weight:800;font-size:15px}.ov-foot{border-top:1px solid var(--line);padding:14px 16px calc(14px + env(safe-area-inset-bottom));flex-shrink:0;background:var(--bg-soft)}.total-row{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:12px}.total-row .lbl{font-size:12px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);font-weight:700}.total-row .val{font-family:Bebas Neue,sans-serif;font-size:30px;color:var(--lime)}.charge-btn{width:100%;background:var(--lime);color:#122008;border:none;border-radius:14px;padding:14px;font-weight:800;font-size:14.5px;letter-spacing:.3px;cursor:pointer;min-height:48px}.charge-btn:disabled{background:var(--card);color:var(--muted2);cursor:not-allowed}.charge-btn:active:not(:disabled){transform:scale(.98)}.queue-container{padding:14px 16px;flex:1;overflow-y:auto}.focal-card{background:linear-gradient(145deg,#1c2717,#141c10);border:2px solid var(--lime);border-radius:20px;padding:18px 16px;margin-bottom:20px;box-shadow:0 8px 24px #cdf24a26;animation:slideInUp .3s cubic-bezier(.16,1,.3,1)}.focal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.focal-tag{background:var(--lime);color:#122008;font-weight:800;font-size:12px;padding:4px 10px;border-radius:10px;text-transform:uppercase;letter-spacing:.5px}.focal-counter{font-size:11px;color:var(--muted);font-weight:700}.focal-title{font-family:Bebas Neue,sans-serif;font-size:32px;color:var(--text);line-height:1}.focal-items{margin:14px 0;border-top:1px dashed var(--line);border-bottom:1px dashed var(--line);padding:12px 0}.focal-item-row{display:flex;justify-content:space-between;font-size:15px;font-weight:700;padding:4px 0}.focal-actions{display:flex;gap:8px}.btn-ready{flex:1;background:var(--lime);color:#122008;border:none;padding:14px;border-radius:14px;font-weight:800;font-size:15px;cursor:pointer;text-align:center;min-height:48px;transition:transform .12s ease}.btn-ready:active{transform:scale(.97)}.queue-card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:12px 14px;margin-bottom:10px;animation:slideInUp .3s ease}.queue-card-head{display:flex;justify-content:space-between;align-items:center}.queue-badge{font-size:10px;font-weight:700;padding:3px 8px;border-radius:6px;text-transform:uppercase}.badge-table{background:#4fd1c526;color:var(--teal);border:1px solid rgba(79,209,197,.3)}.badge-takeaway{background:#f59e0b26;color:var(--amber);border:1px solid rgba(245,158,11,.3)}.badge-ready{background:#cdf24a26;color:var(--lime);border:1px solid rgba(205,242,74,.3)}.queue-items{font-size:12px;color:var(--muted);margin:6px 0;line-height:1.4}.queue-actions{display:flex;gap:6px;margin-top:8px}.btn-sm{padding:7px 11px;border-radius:8px;font-weight:700;font-size:11px;cursor:pointer;border:1px solid var(--line);background:var(--bg-soft);color:var(--text);min-height:36px}.btn-sm.deliver{background:var(--teal);color:#0c2220;border:none}.btn-sm.pay{background:var(--lime);color:#122008;border:none}.admin-container{padding:16px;flex:1;overflow-y:auto}.admin-date-picker{display:flex;align-items:center;gap:10px;margin-bottom:16px}.admin-date-picker label{font-size:12px;font-weight:700;color:var(--muted)}.admin-date-picker input{background:var(--card);border:1px solid var(--line);color:var(--lime);padding:8px 12px;border-radius:10px;font-family:Inter,sans-serif;font-weight:700}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:20px}.stat-card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:12px 14px}.stat-card .lbl{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:var(--muted2);font-weight:700}.stat-card .val{font-family:Bebas Neue,sans-serif;font-size:24px;color:var(--text);margin-top:2px}.stat-card.accent .val{color:var(--lime)}.stat-card.void .val{color:var(--coral)}.admin-table{width:100%;border-collapse:collapse;font-size:12px}.admin-table th{text-align:left;color:var(--muted2);font-size:10px;text-transform:uppercase;letter-spacing:1px;padding:8px 6px;border-bottom:1px solid var(--line)}.admin-table td{padding:10px 6px;border-bottom:1px solid var(--line)}.badge-deleted{background:#ef6a6a26;color:var(--coral);padding:2px 6px;border-radius:4px;font-size:9.5px;font-weight:700}.badge-paid{background:#cdf24a26;color:var(--lime);padding:2px 6px;border-radius:4px;font-size:9.5px;font-weight:700}.history-row{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:12px 14px;margin-bottom:10px}.history-row.voided{opacity:.6;border-color:var(--coral)}.h-top{display:flex;justify-content:space-between;align-items:center}.h-mesa{font-weight:800;font-size:15px}.h-time{font-size:11px;color:var(--muted);margin-left:8px}.h-badge{font-size:10px;background:var(--coral);color:#fff;padding:2px 6px;border-radius:6px;margin-left:6px;font-weight:700}.h-total{font-family:Bebas Neue,sans-serif;font-size:20px;color:var(--teal)}.h-items{font-size:12px;color:var(--muted);margin-top:6px}.h-actions{margin-top:8px;text-align:right}.h-del-btn{background:transparent;border:1px solid var(--line);color:var(--coral);font-size:10.5px;font-weight:700;padding:4px 8px;border-radius:6px;cursor:pointer}.history-empty{text-align:center;color:var(--muted);padding:40px 0;font-size:14px}@keyframes pulseGlow{0%{box-shadow:0 0 #cdf24a00}50%{box-shadow:0 0 16px #cdf24a66;border-color:var(--lime)}to{box-shadow:0 0 #cdf24a00}}@keyframes slideInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%) translateY(20px);background:var(--card);border:1px solid var(--lime);color:var(--text);padding:10px 16px;border-radius:12px;font-size:13px;font-weight:600;opacity:0;transition:all .25s ease;z-index:100;pointer-events:none}.toast.show{opacity:1;transform:translate(-50%) translateY(0)}.status-bar{font-size:11px;color:var(--muted2);text-align:center;margin-top:24px;display:flex;align-items:center;justify-content:center;gap:6px}.status-dot{width:6px;height:6px;border-radius:50%;background:var(--lime);display:inline-block}.status-dot.offline{background:var(--coral)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:150;display:flex;align-items:center;justify-content:center;padding:20px;opacity:0;pointer-events:none;transition:opacity .2s ease}.modal-backdrop.open{opacity:1;pointer-events:auto}.modal-card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:22px;width:100%;max-width:320px;text-align:center;box-shadow:0 10px 30px #00000080}.modal-card h3{font-family:Bebas Neue,sans-serif;font-size:22px;color:var(--lime);margin:0 0 4px;letter-spacing:.5px}.modal-card p{font-size:11.5px;color:var(--muted);margin:0 0 16px;line-height:1.3}.modal-card input{width:100%;background:var(--bg-soft);border:1px solid var(--line);color:var(--lime);border-radius:11px;padding:12px;font-size:24px;text-align:center;font-family:Bebas Neue,sans-serif;letter-spacing:6px;margin-bottom:10px}.modal-card input:focus{outline:none;border-color:var(--lime)}.modal-btns{display:flex;gap:8px}.modal-btns button{flex:1;padding:12px;border-radius:10px;font-weight:700;font-size:13px;cursor:pointer;border:none;min-height:44px}.btn-cancel{background:transparent;border:1px solid var(--line)!important;color:var(--muted)}.btn-confirm{background:var(--coral);color:#fff}.modal-err{color:var(--coral);font-size:11.5px;font-weight:600;min-height:14px;margin-top:8px}#loginScreen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;background:var(--bg);padding:20px}.login-card{width:100%;max-width:320px;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:26px 22px 22px;text-align:center}.login-card .cup{width:34px;height:38px;margin:0 auto 10px}.login-card h2{font-family:Bebas Neue,sans-serif;font-size:26px;color:var(--lime);margin:0 0 2px;letter-spacing:.5px}.login-card p{font-size:11.5px;color:var(--muted);margin:0 0 20px}.login-card input{width:100%;background:var(--bg-soft);border:1px solid var(--line);color:var(--text);border-radius:11px;padding:12px 13px;font-size:14px;margin-bottom:10px;font-family:Inter,sans-serif}.login-card input:focus{outline:none;border-color:var(--lime)}.login-card button{width:100%;background:var(--lime);color:#122008;border:none;border-radius:11px;padding:12px;font-weight:800;font-size:14px;cursor:pointer;margin-top:6px;min-height:44px;transition:opacity .15s ease}.login-card button:disabled{opacity:.6;cursor:not-allowed}.login-err{color:var(--coral);font-size:12px;font-weight:600;min-height:16px;margin-top:10px}.spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(18,32,8,.3);border-radius:50%;border-top-color:#122008;animation:spin .6s linear infinite;vertical-align:middle}
