:root{--bg:#edf1f6;--ink:#192c43;--muted:#566779;--blue:#205dcc;--line:#d6dfeb;--green:#176d54}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--bg);font:16px/1.5 "Microsoft YaHei",sans-serif}button,input,select{font:inherit;color:inherit;border:1px solid #c7d3e3;border-radius:8px;background:#fff;padding:9px 13px}button{min-height:44px;cursor:pointer}button:disabled{opacity:.45;cursor:default}button.primary,button.selected{background:var(--blue);color:white;border-color:var(--blue)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #ed9c22;outline-offset:2px}a{color:inherit;text-decoration:none}header{display:flex;align-items:center;gap:18px;padding:11px 20px;background:#192e49;color:#fff}header strong{font-size:23px}header>a{font-size:15px}header #identity{margin-left:auto;font-size:14px;color:#c9d9ef}header button{color:white;background:#304a6b;border-color:#70839c}.demo{background:#fff3d4;color:#76531a;padding:6px 20px;font-size:13px}#message{margin:0;padding:8px 20px;min-height:40px;background:#fff;border-bottom:1px solid var(--line);font-size:14px;color:#3e526b}#message.error{background:#fff1e8;color:#9e311d}h1{font-size:27px;margin:0 0 15px}h2{font-size:22px;margin:0 0 12px}#login{max-width:480px;margin:50px auto;background:#fff;padding:30px;border:1px solid var(--line);border-radius:15px}#login label{display:block;margin:18px 0}#login input,#login select{display:block;width:100%;margin-top:7px}#login button{width:100%}main{padding:0 16px 16px;max-width:2400px;margin:auto}.toolbar{display:flex;align-items:center;gap:15px;padding:11px 0;flex-wrap:wrap}.toolbar nav{display:flex;gap:8px;flex-wrap:wrap}.toolbar nav button span{font-size:14px;background:#e9eff9;color:#234b8b;border-radius:5px;padding:2px 7px;margin-left:5px}.toolbar nav button.selected span{background:#fff;color:#205dcc}.connection{margin-left:auto;display:flex;gap:9px;align-items:center;font-size:14px}#connection{color:#166c51}#connection.offline{color:#ac3e20}.secondary{border-top:1px solid #d5deea;border-bottom:1px solid #d5deea;gap:16px}.search,.category-label{display:flex;gap:8px;align-items:center;font-size:14px}.search input{width:190px;min-width:80px}#summary{margin-left:auto;font-size:14px;color:#4c6079}.attention{border:1px solid #e1b460;border-radius:9px;background:#fff1d4;padding:14px 17px;margin:10px 0;color:#76521d}#pending p{margin:6px 0}#pending button{margin:6px 10px 0 0}.changes{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:11px 0;background:#fff1d4;border-left:5px solid #d5911f;border-radius:7px;padding:10px 14px;font-size:14px}.changes strong{font-size:15px;margin-right:12px}#change-items{display:flex;gap:7px 20px;flex-wrap:wrap;margin-top:5px}.change-item.cancel{color:#a6332e}#queue{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:max-content;gap:13px;align-content:start;margin-top:14px}.ticket{min-width:0;align-self:start;border:1px solid #cdd8e8;border-radius:10px;background:#fff;overflow:hidden}.ticket-head{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:5px solid #3975c5;background:#e3ecfa;padding:10px 13px}.ticket-head.ready{background:#e0f0e8;border-color:#277d60}.ticket-head.history{background:#e7eaf0;border-color:#7b889a}.table-no{font-size:27px;font-weight:bold;line-height:1.25}.elapsed{font-size:16px;font-weight:600;text-align:right}.ticket-meta{padding:6px 13px;border-bottom:1px solid #e0e7f0;color:#617085;font-size:13px}.task{padding:13px;border-bottom:1px solid #e0e7f0}.task:last-child{border-bottom:0}.item-title{display:flex;gap:12px;align-items:baseline;justify-content:space-between;font-size:21px;font-weight:bold}.item-title .amount{font-size:27px;white-space:nowrap}.item-facts{display:flex;flex-wrap:wrap;gap:4px 12px;color:#586b80;font-size:13px;margin:7px 0}.stage-caption{font-size:13px;color:#3a659a;margin:4px 0}.task .actions{display:flex;gap:8px;margin-top:10px}.task .actions button{flex:1;padding:9px 10px;font-size:15px}.task .actions .partial{flex:0 0 auto}.table-label{display:inline-block;font-size:15px;font-weight:bold;padding:2px 8px;background:#edf2f9;border-radius:4px;margin-bottom:6px}.blocked{color:#a5432b;background:#fff1e8;padding:6px 8px;border-radius:5px;font-size:13px}.task-mark{color:#a3451e;font-size:12px;margin-left:8px}.empty{grid-column:1/-1;padding:55px 20px;text-align:center;background:white;border:1px dashed #c1cde0;border-radius:10px}.empty h2{font-size:24px;margin-bottom:8px}.empty p{color:#5c6e84}footer{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:12px 0;color:#556b84;font-size:12px}.help{border-top:1px solid var(--line);padding:10px 0;color:#607086;font-size:13px}.help summary{cursor:pointer}.help p{margin:7px 0}.saving{color:#87651b}dialog{padding:25px;border:1px solid #b6c5db;border-radius:15px;max-width:480px;width:92vw;color:var(--ink);box-shadow:0 15px 80px #0004}dialog::backdrop{background:#13223a77}.dialog-close{position:absolute;right:10px;top:10px;border:0;font-size:25px;background:none;min-height:35px;padding:0 10px}dialog h2{padding-right:25px}dialog p{font-size:14px;color:#597087}.stepper{display:flex;gap:10px;margin:20px 0}.stepper input{width:100%;min-width:0;text-align:center;font-size:30px}.stepper button{min-width:52px;font-size:25px}#quantity-presets{display:flex;gap:8px;flex-wrap:wrap}.dialog-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}#quantity-error{color:#ad322a;min-height:20px;margin:10px 0 0}#quantity-dialog[open]{max-height:90vh;overflow:auto}[hidden]{display:none!important}
@media(min-width:1800px){#queue{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(max-width:1250px){#queue{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:950px){#queue{grid-template-columns:repeat(2,minmax(0,1fr))}header #identity{font-size:12px}.search input{width:160px}.connection{margin-left:0}#summary{margin-left:0}}@media(max-width:580px){header{padding:10px 12px;gap:10px;flex-wrap:wrap}header strong{font-size:20px}header #identity{width:100%;order:3;margin:0}header #logout{margin-left:auto}main{padding:0 10px 10px}#message{padding:8px 12px}.demo{padding:6px 12px}#login{margin:25px 12px;padding:24px}#queue{grid-template-columns:1fr}.toolbar{gap:10px}.toolbar nav{gap:6px}.toolbar nav button{font-size:14px;padding:8px 9px}.search{flex:1}.search input{flex:1;width:130px}.category-label{flex:1;white-space:nowrap}.category-label select{width:100%;min-width:80px}.changes{align-items:flex-start}.changes button{white-space:nowrap}.table-no{font-size:26px}}
