@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@1,600&display=swap');
:root{--ink:#173e35;--ink2:#24554a;--cream:#f6f3ec;--paper:#fffdf9;--line:#e7e1d6;--muted:#7d827d;--orange:#e1783d;--green:#3f8a67;--shadow:0 18px 50px rgba(34,48,42,.11)}
*{box-sizing:border-box}body{margin:0;font-family:'DM Sans',system-ui,sans-serif;color:#202923;background:var(--cream)}button,input,select{font:inherit}button{cursor:pointer}.hidden{display:none!important}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.18em;color:#809087;margin:0 0 10px}.login-shell{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr}.login-art{background:var(--ink);color:white;padding:8vh 9vw;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}.login-art:after{content:"";position:absolute;width:460px;height:460px;border:1px solid rgba(255,255,255,.1);border-radius:50%;right:-190px;bottom:-130px;box-shadow:0 0 0 70px rgba(255,255,255,.025),0 0 0 140px rgba(255,255,255,.018)}.brand-mark{width:54px;height:54px;border:1px solid rgba(255,255,255,.35);display:grid;place-items:center;font-family:Georgia;font-style:italic;font-size:26px;border-radius:50%;margin-bottom:55px}.login-art h1{font-size:clamp(42px,5vw,74px);line-height:1.02;letter-spacing:-.04em;margin:0;max-width:700px}.login-art h1 em{font-family:'Playfair Display',serif;color:#ebb98f;font-weight:600}.login-copy{max-width:490px;color:#c1d0ca;line-height:1.7;font-size:16px}.art-status{position:absolute;bottom:7vh;font-size:13px;color:#b9cac4}.art-status span{display:inline-block;width:8px;height:8px;border-radius:50%;background:#6dcc8e;margin-right:8px;box-shadow:0 0 0 4px rgba(109,204,142,.15)}.login-panel{display:grid;place-items:center;padding:40px;background:var(--paper)}.login-card{width:min(390px,100%)}.login-card h2{font-size:34px;letter-spacing:-.04em;margin:0 0 32px}.login-card label{display:block;font-size:13px;font-weight:600;margin:0 0 19px}.login-card input,.form-grid input,.form-grid select,.field{width:100%;border:1px solid var(--line);background:white;border-radius:10px;padding:14px;margin-top:8px;outline:none;transition:.2s}.login-card input:focus,.field:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(63,138,103,.12)}.btn{border:0;border-radius:10px;padding:12px 18px;font-weight:700;background:#e9ece8;color:var(--ink)}.btn.primary{background:var(--ink);color:white}.btn.orange{background:var(--orange);color:white}.btn.danger{background:#b94f48;color:white}.btn.wide{width:100%;padding:15px;display:flex;justify-content:space-between}.btn:disabled{opacity:.45;cursor:not-allowed}.error{color:#b84239;min-height:20px;font-size:13px}.login-card details{margin-top:22px;color:var(--muted);font-size:12px}.demo-users{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.demo-users button{border:1px solid var(--line);background:white;border-radius:6px;padding:5px 8px;color:var(--ink)}
.app-shell{min-height:100vh;display:grid;grid-template-columns:235px 1fr}.sidebar{position:fixed;inset:0 auto 0 0;width:235px;background:var(--ink);color:white;padding:26px 18px;display:flex;flex-direction:column;z-index:20}.sidebar-brand{display:flex;align-items:center;gap:11px;padding:0 8px 30px;border-bottom:1px solid rgba(255,255,255,.1)}.brand-mark.small{width:38px;height:38px;font-size:18px;margin:0;flex:0 0 auto}.sidebar-brand b{display:block}.sidebar-brand small{font-size:8px;letter-spacing:.14em;color:#9db1aa}.sidebar nav{padding:26px 0;display:grid;gap:5px}.nav-btn{border:0;background:transparent;color:#aebfb9;text-align:left;border-radius:8px;padding:12px 13px;font-weight:600;font-size:13px}.nav-btn span{display:inline-grid;width:25px}.nav-btn:hover,.nav-btn.active{background:rgba(255,255,255,.1);color:white}.side-user{margin-top:auto;border-top:1px solid rgba(255,255,255,.1);padding:20px 5px 0;display:flex;align-items:center;gap:10px}.side-user>div{width:34px;height:34px;border-radius:50%;background:#e3a677;color:var(--ink);display:grid;place-items:center;font-weight:700}.side-user p{margin:0;min-width:0;flex:1}.side-user b,.side-user small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.side-user b{font-size:12px}.side-user small{font-size:10px;color:#93aaa2}.side-user button{background:none;border:0;color:#b2c5be;font-size:18px}.workspace{grid-column:2;min-width:0}.topbar{height:105px;padding:25px 38px;border-bottom:1px solid var(--line);background:rgba(255,253,249,.92);display:flex;align-items:center;gap:20px;position:sticky;top:0;z-index:10;backdrop-filter:blur(10px)}.topbar h1{font-size:25px;margin:0;letter-spacing:-.03em}.topbar .eyebrow{margin:0 0 3px}.top-actions{margin-left:auto;display:flex;align-items:center;gap:17px;color:var(--muted);font-size:12px}.connection{background:#e5f1e9;color:#327452;padding:7px 10px;border-radius:20px}.connection i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#42a06b;margin-right:5px}.connection.offline{background:#f7e4e0;color:#a34c42}.connection.offline i{background:#c65a4e}.icon-btn{display:none;border:0;background:transparent;font-size:22px}.content{padding:32px 38px 60px;max-width:1500px;margin:auto}.summary-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:28px}.metric{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:17px 19px}.metric small{color:var(--muted);display:block}.metric b{font-size:24px;margin-top:7px;display:block}.section-head{display:flex;justify-content:space-between;align-items:center;margin:25px 0 14px}.section-head h2{font-size:18px;margin:0}.zone-tabs{display:flex;gap:6px}.zone-tabs button{border:1px solid var(--line);background:var(--paper);padding:8px 14px;border-radius:20px;font-size:12px}.zone-tabs button.active{background:var(--ink);color:white}.table-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(205px,1fr));gap:14px}.table-card{border:1px solid var(--line);background:var(--paper);border-radius:14px;padding:18px;text-align:left;box-shadow:0 2px 0 transparent;transition:.2s;min-height:145px;display:flex;flex-direction:column}.table-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.table-card .table-top{display:flex;justify-content:space-between;color:var(--muted);font-size:11px}.table-card h3{font-size:20px;margin:19px 0 4px}.table-card p{margin:0;color:var(--muted);font-size:12px}.table-card .status{margin-top:auto;align-self:flex-start;border-radius:20px;padding:5px 9px;font-size:10px;font-weight:700}.status.EMPTY{background:#eef0ed;color:#6e756f}.status.OPEN,.status.ORDERING{background:#e3edf7;color:#3c6d9c}.status.SENT_KITCHEN{background:#fff0c7;color:#946a0e}.status.IN_PROGRESS{background:#ffeadc;color:#b2602c}.status.READY{background:#dff2e4;color:#387c50}.status.REQUEST_PAY{background:#eee4f6;color:#7b4a9a}.modal{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px}.modal-backdrop{position:absolute;inset:0;background:rgba(17,34,28,.56);backdrop-filter:blur(3px)}.modal-card{position:relative;background:var(--paper);width:min(760px,100%);max-height:92vh;overflow:auto;border-radius:18px;padding:28px;box-shadow:var(--shadow)}.modal-x{position:absolute;right:17px;top:13px;border:0;background:transparent;font-size:25px;color:var(--muted)}.order-head{padding-right:35px;display:flex;justify-content:space-between}.order-head h2{margin:0}.order-head p{margin:5px 0;color:var(--muted)}.order-items{margin:22px 0;border-top:1px solid var(--line)}.order-row{display:grid;grid-template-columns:1fr auto;gap:10px;padding:13px 0;border-bottom:1px solid var(--line)}.order-row b,.order-row small{display:block}.order-row small{color:var(--muted);margin-top:3px}.order-total{display:flex;justify-content:space-between;font-size:18px;font-weight:700}.modal-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:22px;flex-wrap:wrap}.add-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:9px;margin:15px 0}.menu-choice{border:1px solid var(--line);background:white;border-radius:10px;padding:12px;text-align:left}.menu-choice b,.menu-choice small{display:block}.menu-choice small{color:var(--orange);margin-top:5px}.menu-choice.selected{border-color:var(--green);background:#edf5f0}.inline-fields{display:grid;grid-template-columns:90px 1fr;gap:10px}.empty{text-align:center;padding:55px;color:var(--muted);background:var(--paper);border:1px dashed var(--line);border-radius:14px}.kds-shell{display:grid;grid-template-columns:1fr 300px;gap:18px}.kds-orders{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:14px;align-content:start}.ticket{background:var(--paper);border:1px solid var(--line);border-radius:14px;overflow:hidden}.ticket-head{padding:14px 16px;background:var(--ink);color:white;display:flex;justify-content:space-between}.ticket-head h3{margin:0}.ticket-head small{color:#bcd0c9}.ticket-items{padding:6px 15px}.ticket-item{padding:12px 0;border-bottom:1px solid var(--line)}.ticket-item:last-child{border:0}.ticket-item>div:first-child{display:flex;gap:9px}.qty{width:28px;height:28px;background:#f3e4d6;color:#a85e30;border-radius:7px;display:grid;place-items:center;font-weight:700}.ticket-item p{margin:0;flex:1}.ticket-item small{display:block;color:var(--muted)}.ticket-actions{display:flex;gap:6px;margin-top:9px}.ticket-actions button{padding:6px 8px;font-size:10px;border:0;border-radius:6px}.summary-panel{background:var(--ink);color:white;border-radius:14px;padding:20px;height:max-content;position:sticky;top:132px}.summary-panel h2{font-size:17px;margin:0 0 16px}.summary-line{padding:12px 0;border-top:1px solid rgba(255,255,255,.1);display:flex;gap:10px}.summary-line b:first-child{color:#edb487;font-size:20px;min-width:28px}.summary-line p{margin:0}.summary-line small{color:#a9bdb6;display:block}.admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.panel{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:20px}.panel h2{font-size:17px;margin:0 0 16px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.form-grid .btn{align-self:end}.list{margin-top:14px}.list-row{padding:10px 0;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;font-size:13px}.list-row small{color:var(--muted)}.report-hero{background:var(--ink);color:white;border-radius:18px;padding:30px;display:grid;grid-template-columns:1fr auto;align-items:end}.report-hero small{color:#b5c8c1}.report-hero b{font-size:42px;display:block;margin-top:10px}.network-card{max-width:700px}.link-box{background:#f0f1ec;border-radius:10px;padding:13px;margin:8px 0 18px;display:flex;justify-content:space-between;word-break:break-all}.qr{width:180px;border:8px solid white;border-radius:10px;box-shadow:0 5px 20px rgba(0,0,0,.08)}.toast{position:fixed;right:25px;bottom:25px;background:var(--ink);color:white;padding:13px 18px;border-radius:9px;z-index:200;opacity:0;transform:translateY(10px);transition:.25s;pointer-events:none}.toast.show{opacity:1;transform:none}
.btn{text-decoration:none;display:inline-block}.out-of-stock b{text-decoration:line-through;color:#a04d47}.out-of-stock{background:#fff2ef!important;opacity:.78}.category-filter{display:flex;gap:7px;overflow:auto;padding:12px 0}.category-filter button{white-space:nowrap;border:1px solid var(--line);background:white;border-radius:20px;padding:8px 13px}.category-filter button.active{background:var(--ink);color:white}.menu-search{font-size:16px}.menu-choice{position:relative;min-height:78px}.count-badge{position:absolute;right:8px;top:8px;width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:var(--orange);color:white;font-weight:700}.minus-badge{position:absolute;right:8px;bottom:8px;width:31px;height:31px;border-radius:50%;display:grid;place-items:center;background:#f6ded9;color:#a84339;border:1px solid #e9b9b2;font-size:22px;line-height:1;font-weight:900;box-shadow:0 3px 10px rgba(168,67,57,.15)}.minus-badge:active{transform:scale(.94)}.cart-summary{margin-top:12px;padding:11px 14px;background:#edf5f0;color:var(--ink);border-radius:9px;font-weight:600}.change-box{margin-top:10px;background:#edf5f0;border-radius:10px;padding:15px;display:flex;justify-content:space-between;font-size:17px}.split-list{display:grid;gap:8px;margin:15px 0}.split-list label{display:grid;grid-template-columns:auto 1fr 75px;align-items:center;gap:8px;padding:10px;border:1px solid var(--line);border-radius:9px}.split-qty{width:70px;padding:8px;border:1px solid var(--line);border-radius:7px}.danger-mini{background:#f6ded9!important;color:#a84339!important}.zone-revenue{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;margin:18px 0}.history-grid .ticket-head{background:#53665f}.history-grid .ticket{opacity:.9}
.order-line-actions{display:grid;gap:6px;justify-items:end}.mini-delete{border:0;border-radius:7px;padding:5px 8px;background:#f6ded9;color:#a84339;font-size:11px;font-weight:700}.permission-note{background:#fff7df;border:1px solid #efd89b;color:#82600d;border-radius:10px;padding:11px;margin:10px 0}.cash-input{font-size:22px;font-weight:700;text-align:right}.cash-keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}.cash-keypad button{border:1px solid var(--line);background:white;border-radius:12px;padding:18px 0;font-size:21px;font-weight:800;color:var(--ink)}.quick-cash{display:grid;grid-template-columns:repeat(auto-fit,minmax(105px,1fr));gap:7px;margin-bottom:10px}.quick-cash button{border:1px solid var(--line);background:#f9f7f0;border-radius:10px;padding:10px;font-weight:700}.ticket-head-actions{display:grid;gap:7px;justify-items:end}.ticket-head-actions button{border:0;border-radius:8px;background:#e5f1e9;color:#173e35;padding:7px 9px;font-size:11px;font-weight:800}.auto-refresh-note{color:var(--muted)}.alert-btn{border:0;border-radius:999px;background:#b94f48;color:white;min-width:34px;height:34px;font-weight:800;box-shadow:0 4px 12px rgba(185,79,72,.25)}.alert-list{display:grid;gap:8px;margin-top:14px}.alert-row{border:1px solid var(--line);background:white;border-radius:12px;padding:13px;text-align:left}.alert-row b,.alert-row small{display:block}.alert-row small{color:var(--muted);margin-top:4px}
.reset-box{grid-column:1/-1;border:1px dashed var(--line);border-radius:12px;padding:13px;background:#fffaf2}.reset-box b,.reset-box small{display:block}.reset-box small{color:var(--muted);margin:6px 0 10px}.report-filter{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin-bottom:16px}.report-filter label{min-width:190px}.report-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}.paid-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.list-row{gap:14px}.list-row>div:first-child{min-width:0;line-height:1.35}.list-row b{display:block;word-break:break-word}.list-row small{display:block;margin-top:4px;line-height:1.35;word-break:break-word}.list-row .btn{flex:0 0 auto}.kds-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:850px){.login-shell{grid-template-columns:1fr}.login-art{display:none}.login-panel{min-height:100vh}.app-shell{display:block}.sidebar{transform:translateX(-100%);transition:.25s}.sidebar.open{transform:none}.workspace{grid-column:1}.icon-btn{display:block}.topbar{height:84px;padding:17px 18px}.topbar h1{font-size:20px}.top-actions #clock{display:none}.content{padding:20px 15px 50px}.summary-strip{grid-template-columns:1fr 1fr}.kds-shell{grid-template-columns:1fr}.summary-panel{grid-row:1;position:static}.admin-grid{grid-template-columns:1fr}.report-grid{grid-template-columns:1fr}.modal-card{padding:22px 17px}.table-grid{grid-template-columns:1fr 1fr}.table-card{min-height:130px;padding:14px}.report-hero b{font-size:30px}}
@media(max-width:430px){.table-grid{grid-template-columns:1fr 1fr;gap:9px}.summary-strip{gap:8px}.metric{padding:13px}.metric b{font-size:20px}.top-actions .connection{font-size:0}.form-grid{grid-template-columns:1fr}.inline-fields{grid-template-columns:75px 1fr}}
.top-logout{border:0;border-radius:999px;background:var(--ink);color:white;padding:8px 12px;font-weight:800}.sound-btn{border:1px solid var(--line);border-radius:999px;background:#fff7df;color:#82600d;padding:8px 11px;font-weight:800}.payment-qr,.admin-qr-preview{display:block;max-width:220px;width:100%;border:8px solid white;border-radius:14px;box-shadow:0 8px 26px rgba(34,48,42,.12);margin:12px auto}.transfer-box{background:#f8f6ef;border:1px solid var(--line);border-radius:14px;padding:16px;text-align:center;margin-top:12px}.transfer-box p{margin:0;color:var(--ink);font-weight:700}.qr-admin-form{margin-top:16px;border-top:1px solid var(--line);padding-top:16px}.qr-admin-form h3{margin:0 0 10px;font-size:15px}.empty.mini{padding:18px}.menu-choice.with-img{display:grid;grid-template-columns:62px 1fr;align-items:center;gap:11px;min-height:92px}.menu-choice-img{width:62px;height:62px;border-radius:12px;object-fit:cover;background:#f3efe6;border:1px solid var(--line)}.menu-choice-img.placeholder,.admin-menu-thumb.placeholder{display:grid;place-items:center;color:#b8875e;font-size:22px}.menu-choice-text{min-width:0}.menu-choice-text b{font-size:15px;color:#0f7bdc}.admin-menu-line{display:flex;align-items:center;gap:11px;min-width:0}.admin-menu-thumb{width:48px;height:48px;border-radius:10px;object-fit:cover;border:1px solid var(--line);background:#f3efe6;flex:0 0 auto}.menu-image-edit{grid-column:1/-1;border:1px dashed var(--line);border-radius:12px;padding:13px;background:#fffaf2}.menu-image-edit small{display:block;color:var(--muted);margin-top:6px}body.kds-mode .sidebar{display:none}body.kds-mode .app-shell{grid-template-columns:1fr}body.kds-mode .workspace{grid-column:1}body.kds-mode .icon-btn{display:none}body.kds-mode .content{max-width:none}
.network-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:14px}.network-grid article{border:1px solid var(--line);border-radius:14px;background:#fffaf2;padding:18px}.network-grid h3{margin:0 0 10px}.network-grid p{color:var(--muted);line-height:1.55;margin:12px 0 0}.network-grid .qr{display:block;margin:14px auto 0}
.network-card{max-width:980px}.network-settings{margin-top:18px;border:1px solid var(--line);border-radius:14px;background:#f8f6ef;padding:18px}.network-settings h3{margin:0 0 12px}.network-settings label{display:block;font-weight:800}.network-settings small{display:block;color:var(--muted);margin-top:10px}.network-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.network-output{white-space:pre-wrap;word-break:break-word;background:#173e35;color:#e8f4ee;border-radius:12px;padding:13px;max-height:220px;overflow:auto;margin:14px 0 0;font-size:12px}
.priority-badge{display:inline-block;background:#edb487;color:#173e35;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:900;margin-bottom:7px}.kds-status{display:inline-block;margin-top:6px;border-radius:999px;padding:4px 8px;font-size:10px;font-weight:900}.kds-status.PENDING{background:#fff0c7;color:#946a0e}.kds-status.MAKING{background:#e3edf7;color:#3c6d9c}.priority-line{align-items:flex-start}.summary-item-name{display:block;font-weight:900}.summary-stats{color:#a9bdb6!important;margin-top:5px}.summary-note{color:#ff6b5f!important;background:rgba(255,107,95,.12);border:1px solid rgba(255,107,95,.35);border-radius:8px;padding:5px 7px;font-weight:900;margin-top:7px}.priority-list{display:grid;gap:6px;margin-top:9px}.priority-chip{display:block;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:7px 8px}.priority-chip b{display:block;color:#edb487;font-size:12px}.priority-chip small{color:#d8eee4!important;margin-top:2px}.priority-chip.making{background:rgba(227,237,247,.13);border-color:rgba(227,237,247,.24)}#togglePriority{background:#fffaf2;color:#173e35;border:1px solid var(--line)}
.summary-line-new{background:rgba(237,180,135,.12);border-radius:12px;padding-left:8px;padding-right:8px;animation:newPulse 1.1s ease-in-out 2}.new-badge{display:inline-block;margin-left:6px;background:#e1783d;color:white;border-radius:999px;padding:2px 7px;font-size:11px;font-style:normal;font-weight:900}.summary-status-row{display:flex;gap:6px;flex-wrap:wrap;margin-top:7px}.summary-pill{display:inline-block!important;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:900}.summary-pill.making{background:rgba(227,237,247,.16);color:#dff0ff!important;border:1px solid rgba(227,237,247,.25)}.summary-pill.pending{background:rgba(255,240,199,.16);color:#ffd48a!important;border:1px solid rgba(255,240,199,.28)}.summary-pill.new{background:rgba(225,120,61,.25);color:#ffd8bd!important;border:1px solid rgba(225,120,61,.45)}.summary-scope{display:block!important;color:#cfe2da!important;background:rgba(255,255,255,.08);border-radius:10px;padding:8px 10px;margin:-8px 0 8px;line-height:1.35}#toggleSound{background:#fff7df;color:#82600d;border:1px solid #efd89b}@keyframes newPulse{50%{background:rgba(225,120,61,.24);transform:translateX(2px)}}
.kds-main{min-width:0}.kds-picker{background:#fffdf9;border:1px solid var(--line);border-radius:14px;padding:14px 16px;margin-bottom:14px;display:flex;justify-content:space-between;gap:14px;align-items:center}.kds-picker b,.kds-picker small{display:block}.kds-picker small{color:var(--muted);margin-top:4px;line-height:1.35}.kds-picker-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.pick-mode{border:1px solid var(--line);background:#f8f6ef;color:var(--ink);border-radius:999px;padding:8px 12px;font-weight:900}.pick-mode.active{background:var(--ink);border-color:var(--ink);color:white}.pick-mode.start{background:#e1783d;border-color:#e1783d;color:white}.pick-mode.clear{background:#f6ded9;color:#a84339}.pick-count{display:flex;align-items:center;gap:6px;background:#fff7df;border:1px solid #efd89b;color:#82600d;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:900}.pick-count input{width:52px;border:0;background:white;border-radius:999px;padding:6px 7px;text-align:center;font-weight:900;color:var(--ink)}.ticket.selected{border-color:#e1783d;box-shadow:0 0 0 2px rgba(225,120,61,.16)}.ticket.dimmed{opacity:.55}.ticket-select-btn{background:#fff7df!important;color:#82600d!important;border:1px solid #efd89b!important}.ticket-select-btn.active{background:#e1783d!important;color:white!important;border-color:#e1783d!important}
.ticket.making-ticket{border-color:#78a9d6;box-shadow:0 0 0 2px rgba(120,169,214,.18)}
.ticket.making-ticket .ticket-head{background:linear-gradient(135deg,#1d5267,#173e35)}
.ticket.making-ticket .priority-badge{background:#dcefff;color:#1d5267}
.ticket.dimmed{opacity:1}.ticket.dimmed .ticket-items,.ticket.dimmed .ticket-head>div:first-child,.ticket.dimmed .ticket-head-actions small,.ticket.dimmed [data-complete-order],.ticket.dimmed [data-start-order]{opacity:.42}.ticket.dimmed .ticket-select-btn{opacity:1!important;box-shadow:0 0 0 2px rgba(255,247,223,.28);transform:scale(1.02)}.start-ticket-btn{background:#e1783d!important;color:white!important;border:1px solid rgba(255,255,255,.18)!important}.summary-new-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.summary-new-actions button{border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:6px 9px;font-size:11px;font-weight:900}.summary-new-actions [data-summary-make]{background:#e1783d;color:white;border-color:#e1783d}.summary-new-actions [data-summary-wait]{background:rgba(255,255,255,.08);color:#d8eee4}.summary-new-actions .deliver{background:#3f8a67;color:white;border-color:#3f8a67}.summary-line-new{animation:newPulse 1.1s ease-in-out infinite}
.summary-line{position:relative;overflow:hidden}.summary-delivering{background:rgba(248,176,116,.22);border-radius:12px;padding-left:8px;padding-right:8px;transform:translateX(4px);box-shadow:inset 4px 0 0 #f8b074;transition:transform .2s ease,background .2s ease,box-shadow .2s ease}.summary-delivering:before{content:"";position:absolute;inset:0 auto 0 -50%;width:50%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);animation:deliverSweep .85s ease forwards;pointer-events:none}.summary-delivered{background:rgba(63,138,103,.34)!important;animation:deliverPop .9s ease forwards}.summary-delivered .deliver{background:#3f8a67;color:white}.summary-delivered:after{content:"✓ Đã giao";position:absolute;right:10px;top:10px;background:#3f8a67;color:white;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:900;box-shadow:0 6px 18px rgba(63,138,103,.24)}.summary-new-actions button:disabled{opacity:.75;cursor:wait}@keyframes deliverSweep{to{left:110%}}@keyframes deliverPop{0%{transform:translateX(4px) scale(1)}35%{transform:translateX(9px) scale(1.025)}70%{transform:translateX(0) scale(1)}100%{transform:translateX(10px) scale(.992);opacity:.92}}
@media(max-width:850px){body.kds-mode .app-shell{display:block}body.kds-mode .sidebar{display:none!important}body.kds-mode .topbar{height:88px}.menu-choice.with-img{grid-template-columns:54px 1fr}.menu-choice-img{width:54px;height:54px}.top-actions{gap:9px}.top-logout{padding:8px 10px}.kds-picker{display:block}.kds-picker-actions{justify-content:flex-start;margin-top:11px}.pick-count{border-radius:12px}}
@media(max-width:850px){.network-grid{grid-template-columns:1fr}}
.table-card.has-draft{border-color:#efaaa2;background:#fff7f5;box-shadow:0 0 0 2px rgba(185,79,72,.06)}
.table-card.has-draft p{color:#b94f48;font-weight:800}
.status.ORDERING{background:#ffe1dd!important;color:#b84239!important}
.draft-warning{margin:16px 0 0;background:#fff1ef;border:1px solid #efaaa2;color:#a83d35;border-radius:12px;padding:12px 14px;font-weight:800;line-height:1.45}
.order-row.draft{background:#fff7f5;border:1px solid #efaaa2;border-radius:12px;padding:13px 10px;margin:0 -10px;color:#8f2f29;box-shadow:inset 4px 0 0 #b94f48}
.order-row.draft small{color:#b84239;font-weight:900}
.order-row.draft .order-line-actions b{color:#b84239}
.ticket-item{position:relative;overflow:hidden}
.ticket-item-delivering{background:#edf8f1;border-radius:12px;margin:0 -8px;padding-left:8px;padding-right:8px;max-height:150px;box-shadow:inset 4px 0 0 #3f8a67;animation:kdsItemLift .22s ease forwards}
.ticket-item-delivering:before{content:"";position:absolute;inset:0 auto 0 -50%;width:50%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.8),transparent);animation:kdsItemSweep .75s ease forwards;pointer-events:none}
.ticket-item-delivered{animation:kdsItemDone .95s ease forwards}
.ticket-item-delivered:after{content:"✓ Đã xong";position:absolute;right:9px;top:9px;background:#3f8a67;color:white;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:900;box-shadow:0 7px 18px rgba(63,138,103,.22)}
@keyframes kdsItemLift{to{transform:translateX(4px)}}
@keyframes kdsItemSweep{to{left:112%}}
@keyframes kdsItemDone{0%{opacity:1;transform:translateX(4px) scale(1)}45%{opacity:1;transform:translateX(10px) scale(1.015)}100%{opacity:0;transform:translateX(34px) scale(.98);max-height:0;padding-top:0;padding-bottom:0;margin-top:0;margin-bottom:0;border-bottom-color:transparent}}
.ticket.deferred-ticket{opacity:.58}
.ticket-item.deferred-wait{opacity:.58;background:#f7f2e8;border-radius:10px;margin:0 -8px;padding-left:8px;padding-right:8px}
.kds-status.DEFERRED{background:#efe3c6;color:#7d5b12}
.deferred-note{display:inline-block;border-radius:999px;background:#fff7df;color:#82600d;padding:6px 8px;font-size:10px;font-weight:900}
.deferred-panel{margin-top:18px;padding:15px 0 0;border-top:1px solid rgba(255,255,255,.16)}
.deferred-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}
.deferred-panel .eyebrow{color:#edb487}
.deferred-head .eyebrow{margin:0 0 3px}
.deferred-head small{display:block!important;color:#cfe2da!important;font-size:11px;line-height:1.35}
.deferred-toggle{display:flex;align-items:center;gap:7px;border:1px solid rgba(237,180,135,.5);background:linear-gradient(180deg,rgba(255,247,223,.18),rgba(255,247,223,.08));color:#fff4d8;border-radius:999px;padding:8px 11px;font-size:11px;font-weight:900;white-space:nowrap;box-shadow:0 6px 18px rgba(0,0,0,.09)}
.deferred-toggle b{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#edb487;color:#173e35;font-size:9px;line-height:1}
.deferred-empty{display:block;color:#a9bdb6!important;line-height:1.45}
.deferred-line{display:flex;gap:10px;border-top:1px solid rgba(255,255,255,.1);padding:12px 0}
.deferred-line>b{color:#ffd48a;font-size:20px;min-width:28px}
.deferred-line p{margin:0;min-width:0}
.deferred-line small{color:#cfe2da!important;display:block;margin-top:4px}
.deferred-line button{margin-top:8px;border:1px solid #edb487;background:#fff7df;color:#82600d;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:900}
.summary-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}
.summary-head .eyebrow{margin:0}
.summary-compact-toggle{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);color:#d8eee4;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:900}
.summary-compact-toggle:hover{background:rgba(255,255,255,.14)}
.row-actions{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.bulk-table-form{margin-top:14px;padding-top:14px;border-top:1px dashed var(--line);display:grid;grid-template-columns:1fr 1fr;gap:10px}
.bulk-table-form h3{grid-column:1/-1;margin:0;font-size:14px}
.bulk-table-form small{grid-column:1/-1;color:var(--muted);line-height:1.4}
.bulk-table-form button{align-self:end}

.admin-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.admin-panel-head h2{margin:0!important}
.admin-panel-body{margin-top:14px}
.admin-panel-toggle{border:1px solid var(--line);background:#f8f6ef;color:var(--ink);border-radius:999px;padding:7px 12px;font-size:11px;font-weight:900;white-space:nowrap}
.admin-collapsible.collapsed .admin-panel-body{display:none}
.admin-filter{display:grid;grid-template-columns:1fr;gap:8px;margin:10px 0 12px}
.admin-filter.table-filter{grid-template-columns:160px 1fr auto;align-items:end}
.admin-filter.table-filter .btn{margin-top:8px;white-space:nowrap}

.report-hero{padding:20px 30px!important;min-height:0;align-items:center;gap:24px}
.report-hero>div:first-child>b{font-size:34px!important;margin-top:6px!important;line-height:1.05}
.report-hero>div:first-child span{font-size:14px}
.report-hero>div:last-child{min-width:180px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:13px;padding:12px 14px}
.report-hero p{margin:4px 0;font-size:13px}
.report-hero>div:last-child b{display:inline!important;font-size:15px!important;margin:0 0 0 6px!important}

@media(max-width:850px){
  .admin-filter.table-filter{grid-template-columns:1fr}
  .report-hero{grid-template-columns:1fr;padding:18px!important}
  .report-hero>div:first-child>b{font-size:28px!important}
}
