html,body,#pos-root{height:100%}body{overflow:hidden}.pos{flex-direction:column;height:100%;display:flex}.pos-top{background:var(--surface);border-bottom:1px solid var(--line);flex-shrink:0;align-items:center;gap:12px;height:60px;padding:0 18px;display:flex}.pos-logo{width:78px;height:auto}.pos-title{border-left:1px solid var(--line-strong);color:var(--ink-2);white-space:nowrap;padding-left:12px;font-weight:600}.pos-branch{min-width:160px;height:38px;font-weight:600}.pos-branch-name{color:var(--blue);white-space:nowrap;font-weight:600}.pos-offline,.pos-sound{white-space:nowrap;border-radius:999px;align-items:center;gap:6px;height:32px;padding:0 12px;font-size:12.5px;display:inline-flex}.pos-offline{background:var(--red-soft);color:var(--red)}.pos-sound{background:var(--amber-soft);color:var(--ink)}.pos-spacer{flex:1}.pos-user{color:var(--ink-2);white-space:nowrap;font-size:13px}.pos-empty-state{text-align:center;color:var(--ink-2);padding:60px}.pos-body{flex:1;min-height:0;display:flex}.pos-queue{border-right:1px solid var(--line);background:var(--paper);flex-direction:column;flex-shrink:0;width:420px;padding:16px;display:flex}.pos-search{align-items:center;display:flex;position:relative}.pos-search>svg{color:var(--ink-3);pointer-events:none;position:absolute;left:16px}.pos-search input{letter-spacing:.08em;border-radius:18px;width:100%;height:58px;padding:0 48px;font-size:22px;font-weight:600}.pos-search input::placeholder{letter-spacing:0;font-size:16px;font-weight:400}.pos-search button{background:var(--sky);width:32px;height:32px;color:var(--ink-2);border-radius:50%;place-items:center;display:grid;position:absolute;right:12px}.pos-tabs{background:var(--blue-soft);border-radius:16px;gap:4px;margin:14px 0 10px;padding:4px;display:flex}.pos-tabs button{height:42px;color:var(--ink-2);white-space:nowrap;border-radius:12px;flex:1;justify-content:center;align-items:center;gap:6px;font-size:13.5px;font-weight:500;display:flex}.pos-tabs button span{background:#ffffffb3;border-radius:999px;min-width:22px;height:22px;padding:0 6px;font-size:12px;line-height:22px}.pos-tabs button.active{background:var(--surface);color:var(--blue);font-weight:600;box-shadow:0 1px 3px #0034981f}.pos-tabs button.active span{background:var(--blue);color:#fff}.pos-list{-webkit-overflow-scrolling:touch;flex:1;min-height:0;margin:0;padding:2px;list-style:none;overflow-y:auto}.pos-list li+li{margin-top:8px}.pos-list-empty{text-align:center;color:var(--ink-3);padding:40px 0}.pos-card{background:var(--surface);width:100%;box-shadow:var(--shadow);text-align:left;border:2px solid #0000;border-radius:18px;align-items:center;gap:14px;padding:12px 14px;display:flex}.pos-card.selected{border-color:var(--blue)}.pos-card-code{letter-spacing:.04em;min-width:74px;color:var(--blue);font-size:30px;font-weight:700}.pos-card.status-cancelled .pos-card-code{color:var(--ink-3);text-decoration:line-through}.pos-card-main{flex:1;min-width:0}.pos-card-main b{font-size:15px;display:block}.pos-card-main small{display:block}.pos-timer{background:var(--amber-soft);white-space:nowrap;border-radius:999px;padding:5px 10px;font-size:12.5px;font-weight:600}.pos-timer.urgent{background:var(--red-soft);color:var(--red)}.pos-chip{background:var(--sky);color:var(--ink-2);white-space:nowrap;border-radius:999px;padding:5px 10px;font-size:12px}.pos-card.status-paid .pos-chip{background:var(--green-soft);color:var(--green)}.pos-detail{flex-direction:column;flex:1;min-width:0;padding:22px 28px 20px;display:flex;overflow-y:auto}.pos-placeholder{text-align:center;color:var(--ink-3);margin:auto}.pos-placeholder p{color:var(--ink-2);margin-top:14px;font-size:15px}.pos-detail-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-end;gap:20px;padding-bottom:16px;display:flex}.pos-detail-label{color:var(--ink-2);font-size:13px;display:block}.pos-detail-code{letter-spacing:.05em;color:var(--blue);font-size:72px;font-weight:700;line-height:1;display:block}.pos-detail-meta{text-align:right;flex-direction:column;align-items:flex-end;gap:4px;display:flex}.pos-status{background:var(--amber-soft);border-radius:999px;padding:6px 14px;font-size:14px;font-weight:600}.pos-status.status-paid{background:var(--green-soft);color:var(--green)}.pos-status.status-done{background:var(--sky);color:var(--ink-2)}.pos-status.status-cancelled{background:var(--red-soft);color:var(--red)}.pos-detail-timer{color:var(--amber);font-weight:600}.pos-lines{margin:8px 0 0;padding:0;list-style:none}.pos-lines li{border-bottom:1px solid var(--line);align-items:flex-start;gap:14px;padding:12px 0;font-size:16px;display:flex}.pos-qty{min-width:40px;color:var(--blue);font-size:18px;font-weight:700}.pos-line-name{flex:1;min-width:0}.pos-line-name b{font-weight:600;display:block}.pos-line-name small{margin-top:2px;font-size:13.5px;display:block}.pos-line-price{white-space:nowrap;font-weight:600}.pos-note{background:var(--amber-soft);color:var(--ink);border-radius:12px;margin-top:12px;padding:10px 14px;font-size:15px}.pos-total{justify-content:space-between;align-items:baseline;margin-top:14px;padding:14px 0;display:flex}.pos-total span{color:var(--ink-2);font-size:16px}.pos-total strong{color:var(--blue);font-size:34px;font-weight:700}.pos-actions{gap:12px;margin-top:auto;padding-top:12px;display:flex}.pos-btn{border-radius:20px;justify-content:center;align-items:center;gap:10px;height:68px;padding:0 24px;font-size:18px;font-weight:600;display:inline-flex}.pos-btn.primary{background:var(--blue);color:#fff;flex:1;box-shadow:0 10px 24px -12px #003498b3}.pos-btn.primary:active{background:var(--blue-press)}.pos-btn.ghost{border:1.5px solid var(--line-strong);background:var(--surface);color:var(--ink-2)}.pos-btn.ghost:active{background:var(--sky)}.pos-autoprint{color:var(--ink-2);margin-top:12px}.pos-btn.ghost.danger{color:var(--red);border-color:#f1cbc7}.pos-btn.full{width:100%;margin-top:14px}.pos-sub{color:var(--ink-2);justify-content:space-between;align-items:baseline;gap:12px;padding:6px 0;font-size:14.5px;display:flex}.pos-sub b{color:var(--ink)}.notice-link{text-align:left;justify-content:space-between;align-items:center;gap:10px;width:100%;font-weight:600;display:flex}.pos-overlay{z-index:30;background:#233a6b59;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.pos-sheet{background:var(--paper);border-radius:24px;flex-direction:column;width:760px;max-width:100%;max-height:100%;display:flex;overflow:hidden;box-shadow:0 24px 60px -12px #00349859}.pos-sheet.wide{width:1240px;height:100%}.pos-sheet>header{background:var(--surface);border-bottom:1px solid var(--line);flex-shrink:0;align-items:center;gap:12px;height:64px;padding:0 14px 0 24px;display:flex}.pos-sheet>header h2{font-size:18px}.pos-sheet-body{flex:1;min-height:0;padding:20px 24px;overflow-y:auto}.pos-sheet.wide .pos-sheet-body{padding:0;overflow:hidden}.editor{height:100%;display:flex}.editor-menu{border-right:1px solid var(--line);flex-direction:column;flex:1;min-width:0;padding:16px;display:flex}.editor-filters{flex-direction:column;gap:10px;display:flex}.editor-filters .pos-tabs{margin:0}.pos-search.small input{letter-spacing:0;height:46px;font-size:16px;font-weight:400}.editor-grid{flex:1;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));align-content:start;gap:10px;min-height:0;margin-top:12px;display:grid;overflow-y:auto}.editor-item{background:var(--surface);box-shadow:var(--shadow);text-align:left;border-radius:18px;flex-direction:column;align-items:stretch;padding:8px 8px 10px;display:flex}.editor-item:active{box-shadow:0 0 0 2px var(--blue)}.editor-item img,.editor-noimg{background:var(--sky);object-fit:contain;mix-blend-mode:multiply;border-radius:12px;width:100%;height:92px;padding:4px;display:block}.editor-item b{margin-top:8px;font-size:13.5px;font-weight:600;line-height:1.3;display:block}.editor-item small{font-size:11.5px;display:block}.editor-item strong{color:var(--blue);margin-top:2px;font-weight:700;display:block}.editor-cart{background:var(--surface);flex-direction:column;flex-shrink:0;width:440px;padding:16px 20px;display:flex}.editor-lines{flex:1;min-height:0;margin:0;padding:0;list-style:none;overflow-y:auto}.editor-lines li{border-bottom:1px solid var(--line)}.editor-lines li.open{background:var(--paper)}.editor-line{align-items:center;gap:10px;padding:10px 4px;display:flex}.editor-line-name{text-align:left;flex:1;min-width:0}.editor-line-name b{font-weight:600;display:block}.editor-line-name small{color:var(--blue);display:block}.editor-qty{background:var(--sky);border-radius:999px;align-items:center;gap:2px;padding:3px;display:flex}.editor-qty button{background:var(--surface);width:34px;height:34px;color:var(--blue);border-radius:50%;place-items:center;display:grid}.editor-qty span{text-align:center;min-width:26px;font-weight:700}.editor-line-price{text-align:right;width:92px;font-weight:600}.editor-options{flex-wrap:wrap;gap:6px;padding:0 4px 12px;display:flex}.opt{border:1px solid var(--line-strong);background:var(--surface);height:38px;color:var(--ink-2);border-radius:999px;padding:0 12px;font-size:13px}.opt.on{border-color:var(--blue);background:var(--blue-soft);color:var(--blue);font-weight:600}.editor-note{width:100%;margin-top:10px}.payment{height:100%;display:flex}.payment-summary{border-right:1px solid var(--line);flex-direction:column;flex:1;min-width:0;padding:18px 24px;display:flex;overflow-y:auto}.pos-lines.compact li{padding:8px 0;font-size:14.5px}.discount{background:var(--surface);box-shadow:var(--shadow);border-radius:16px;margin-top:10px;padding:12px 14px}.discount>span{color:var(--ink-2);font-size:13px}.discount-row{align-items:center;gap:10px;margin:6px 0;display:flex}.discount-row input{width:140px;font-size:18px;font-weight:600}.discount-row b{color:var(--red);margin-left:auto}.discount>input{width:100%}.seg{background:var(--sky);border-radius:12px;padding:3px;display:flex}.seg button{width:44px;height:34px;color:var(--ink-2);border-radius:9px;font-weight:600}.seg button.on{background:var(--surface);color:var(--blue);box-shadow:0 1px 3px #0034981f}.pos-total.due{margin-top:auto}.payment-method{background:var(--surface);flex-direction:column;flex-shrink:0;width:480px;padding:18px 24px;display:flex;overflow-y:auto}.pos-tabs.big button{height:52px;font-size:16px}.cash-readout{grid-template-columns:1fr 1fr;gap:10px;margin-top:6px;display:grid}.cash-readout>div{background:var(--paper);border-radius:16px;padding:12px 14px}.cash-readout span{color:var(--ink-2);font-size:13px;display:block}.cash-readout strong{color:var(--blue);font-size:24px;font-weight:700;display:block}.cash-readout>div.short strong{color:var(--red);font-size:15px;line-height:36px}.quick-cash{flex-wrap:wrap;gap:8px;margin:12px 0;display:flex}.quick-cash button{border:1px solid var(--line-strong);background:var(--surface);min-width:80px;height:46px;color:var(--ink);white-space:nowrap;border-radius:14px;flex:1;padding:0 8px;font-weight:600}.quick-cash button.on{border-color:var(--blue);background:var(--blue-soft);color:var(--blue)}.keypad{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.keypad button{background:var(--sky);height:56px;color:var(--ink);border-radius:14px;place-items:center;font-size:22px;font-weight:600;display:grid}.keypad button:active{background:var(--blue-soft)}.transfer-hint{background:var(--paper);color:var(--ink-2);border-radius:16px;margin:16px 0 auto;padding:16px;font-size:15px;line-height:1.6}.report.compact .stat-row{grid-template-columns:repeat(4,1fr)}.takeaway-tag{background:var(--amber-soft);color:var(--ink);vertical-align:2px;border-radius:999px;margin-left:8px;padding:2px 8px;font-size:11.5px;font-style:normal;font-weight:700}.service-badge{background:var(--sky);color:var(--ink-2);border-radius:999px;margin-top:6px;padding:4px 12px;font-size:13px;font-weight:600;display:inline-block}.service-badge.takeaway{background:var(--amber-soft);color:var(--ink);font-size:15px;font-weight:700}.service-toggle{margin:10px 0 0}.pos-actions.secondary{margin-top:10px;padding-top:0}.pos-actions.secondary .pos-btn{height:52px;font-size:15px}.refund-row span,.refund-row b{color:var(--red)}.refund-lines{margin:0;padding:0;list-style:none}.refund-lines li{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:12px 0;display:flex}.refund-lines li.off{opacity:.45}.refund-reason{width:100%;margin-top:14px}.pos-btn.danger-fill{background:var(--red);box-shadow:none}@media (max-width:900px){.pos-queue{width:320px}.editor-cart,.payment-method{width:360px}.pos-title,.pos-user{display:none}.pos-detail-code{font-size:56px}}.receipt{display:none}@media print{@page{size:80mm auto;margin:0}html,body,#pos-root{background:#fff;height:auto;overflow:visible}.pos>:not(.receipt),.toast{display:none!important}.receipt{width:72mm;height:auto;margin:0 auto;display:block}.receipt+.receipt{break-before:page;page-break-before:always}}.pos-autoprint{color:var(--ink-2);flex-wrap:wrap;align-items:center;gap:16px;margin-top:12px;display:flex}.pos-autoprint .check-line{margin:0}.pos-total.fee{opacity:.8;font-size:15px}.pos-total.fee strong{font-size:16px}
