*{box-sizing:border-box}body{color:#172723;background:#edf1f0;margin:0;font-family:Arial,Helvetica,sans-serif}button,input{font:inherit}button{color:#163d34;cursor:pointer;background:#fff;border:1px solid #b2c5be;border-radius:8px;min-height:44px;padding:10px 16px;font-weight:700}button:disabled{opacity:.48;cursor:default}button:hover:not(:disabled){background:#e3f2ec}button:focus-visible,input:focus-visible,article:focus-visible,summary:focus-visible{outline-offset:3px;outline:3px solid #087e66}.skip-link{z-index:10;background:#fff;padding:12px;position:fixed;top:-60px}.skip-link:focus{top:0}.sr-only{clip:rect(0,0,0,0);width:1px;height:1px;position:absolute;overflow:hidden}.topbar{background:#fff;border-bottom:1px solid #cbd8d3;flex-wrap:wrap;align-items:center;gap:24px;min-height:80px;padding:16px 28px;display:flex}.brand{letter-spacing:-1px;color:#14745f;font-size:30px;font-weight:800}.brand span{letter-spacing:1px;color:#405c52;margin-left:5px;font-size:12px}.station{border-left:1px solid #cedbd5;padding-left:24px;font-size:24px}.header-right{align-items:center;gap:12px;margin-left:auto;display:flex}.operator{font-weight:700}.connection{color:#126547;font-size:13px}.connection:before{content:"";background:currentColor;border-radius:50%;width:7px;height:7px;margin-right:6px;display:inline-block}.paused{color:#906017}.notice{color:#523c00;background:#fff2cb;border-bottom:1px solid #dbc680;padding:16px 28px;font-size:17px}.view-label{align-items:center;gap:18px;padding:24px 28px 18px;display:flex}.view-label h1{margin:0;font-size:21px}.view-label>span{color:#476358;font-size:15px}.view-label .hint{margin-left:auto}.tickets{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));align-items:start;gap:20px;padding:0 28px 28px;display:grid}.ticket{touch-action:manipulation;-webkit-user-select:none;user-select:none;background:#fff;border:2px solid #ccd8d3;border-radius:12px;overflow:hidden;box-shadow:0 3px 8px #183a2b08}.ticket.selected{border-color:#08795f;box-shadow:0 0 0 3px #08795f28}.ticket.pending{border-color:#bd830b}.ticket-head{color:#fff;background:#183f34;justify-content:space-between;align-items:center;gap:10px;padding:19px 18px;display:flex}.waiting .ticket-head{background:#455b53}.ticket-context{text-transform:capitalize;font-size:20px;font-weight:700;display:block}.kind{color:#d9e9df;margin-top:7px;font-size:13px;display:block}.elapsed{font-variant-numeric:tabular-nums;letter-spacing:-1px;white-space:nowrap;font-size:35px;font-weight:800}.items{margin:0;padding:0;list-style:none}.items li{border-bottom:1px solid #e1e7e4;gap:13px;padding:20px 18px;display:flex}.quantity{color:#174e3c;min-width:35px;font-size:25px;font-weight:800}.item-detail{flex-direction:column;gap:6px;min-width:0;display:flex}.item-detail strong{overflow-wrap:anywhere;font-size:23px;line-height:1.2}.variant{font-size:17px;font-weight:600}.modifier{color:#435c50;font-size:18px}.course,.item-station{color:#52695d;font-size:13px;font-weight:700}.course{margin-top:6px}.ticket-footer{color:#435b4e;justify-content:space-between;align-items:center;gap:8px;min-height:60px;padding:8px 16px;font-size:13px;display:flex}.bump-action{opacity:0;pointer-events:none;color:#fff;background:#16765e;border:0;min-height:40px;padding:8px 14px}.ticket.selected .bump-action,.ticket:focus-within .bump-action{opacity:1;pointer-events:auto}.bump-action:focus-visible{opacity:1}.bump-action:hover:not(:disabled){color:#fff;background:#105641}.center-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:calc(100vh - 170px);padding:32px;display:flex}.center-state h1,.center-state h2{margin:20px 0 10px;font-size:30px;line-height:1.2}.center-state p{color:#52695d;font-size:18px;line-height:1.5}.caught-up{color:#19704e;background:#d6e9df;border-radius:50%;place-items:center;width:64px;height:64px;font-size:36px;display:grid}.lock-panel{text-align:center;width:min(100% - 40px,360px);margin:50px auto}.lock-panel h1{margin-bottom:8px;font-size:28px}.lock-panel p{color:#536b60;font-size:17px}.pin-input{text-align:center;letter-spacing:17px;background:#fff;border:2px solid #b9cec3;border-radius:10px;width:100%;height:64px;margin:14px 0 20px;padding-left:17px;font-size:32px}.keypad{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.keypad button{border-color:#c3d3cb;height:64px;font-size:26px}.keypad button:nth-last-child(3){font-size:16px}.go{color:#fff;background:#13755b;width:100%;height:58px;margin-top:18px;font-size:21px}.go:hover:not(:disabled){color:#fff;background:#0d5944}.registration{width:100%;max-width:360px;margin-top:28px}.registration summary{cursor:pointer;padding:12px}.registration form{text-align:left;flex-direction:column;gap:12px;display:flex}.registration input{border:1px solid #a6bfb0;border-radius:6px;max-width:100%;height:48px;padding:8px}.registration button{align-self:center}@media (min-width:1600px){.tickets{grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.item-detail strong{font-size:26px}.elapsed{font-size:40px}.items li{padding:24px 20px}}@media (max-width:700px){.topbar{gap:14px;min-height:72px;padding:14px 16px}.brand{font-size:27px}.station{padding-left:14px;font-size:21px}.header-right{flex-wrap:wrap;gap:8px;width:100%}.header-right button{padding:8px 12px}.operator{margin-right:auto}.view-label{flex-wrap:wrap;gap:12px;padding:20px 16px 16px}.view-label .hint{width:100%;margin:0}.tickets{grid-template-columns:1fr;gap:16px;padding:0 16px 20px}.notice{padding:14px 16px}.lock-panel{margin-top:28px}.ticket-context{font-size:21px}}.note{color:#8a3b00;font-size:18px;font-weight:700}.code-input{letter-spacing:6px;text-transform:uppercase;padding-left:6px}.code-input::placeholder{letter-spacing:2px;color:#8aa197;font-size:18px}.lock-feedback{color:#7a4b00;min-height:24px;font-size:16px}.ticket.warn .ticket-head{background:#8a5a00}.ticket.late .ticket-head{background:#a3261b}.ticket.waiting .ticket-head{background:#455b53}.ticket-head{padding:12px 16px;display:block}.ticket-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.ticket-row+.ticket-row{margin-top:8px}.ticket-head .ticket-context{font-size:24px}.ticket-head .elapsed{font-size:30px}.order-number{font-variant-numeric:tabular-nums;font-size:22px;font-weight:800}.ticket-chips{gap:6px;min-width:0;display:flex}.chip{white-space:nowrap;text-overflow:ellipsis;background:#ffffff26;border:1px solid #ffffff40;border-radius:6px;align-items:center;gap:5px;max-width:170px;padding:3px 9px;font-size:17px;font-weight:700;display:inline-flex;overflow:hidden}.course-heading{color:#3c5a4f;background:#e7eeeb;border-bottom:1px solid #d6e1dc;margin:0;padding:7px 18px;font-size:15px;font-weight:700}.away,.hold{text-align:center;letter-spacing:.5px;font-variant-numeric:tabular-nums;border-bottom:1px solid #d6e1dc;padding:8px 18px;font-size:24px;font-weight:800}.away{color:#16533f;background:#dcefe5}.away.warn{color:#8a5a00;background:#fbefd6}.away.late{color:#b42318;background:#fde4e1}.hold{color:#b42318;background:#eef1f0}.ticket.held .ticket-head{background:#2d3a36}.ticket.held .items{background:#f3f5f4}.ticket.held .item-detail strong{color:#5b6d66;font-style:italic}.ticket.warn .ticket-head,.ticket.late .ticket-head{background:#183f34}.recall-dialog{border:1px solid #cbd8d3;border-radius:14px;width:min(640px,100vw - 32px);max-height:80vh;padding:0}.recall-dialog::backdrop{background:#0b1a1580}.recall-dialog header{background:#fff;border-bottom:1px solid #e1e7e4;justify-content:space-between;align-items:center;padding:18px 22px;display:flex;position:sticky;top:0}.recall-dialog h2{margin:0;font-size:22px}.recall-dialog>p{color:#52695d;padding:22px;font-size:17px}.recall-dialog ul{margin:0;padding:0;list-style:none}.recall-dialog li{border-bottom:1px solid #e1e7e4;align-items:center;gap:16px;padding:16px 22px;display:flex}.recall-dialog li>div{flex:1;gap:4px;min-width:0;display:grid}.recall-dialog li strong{font-size:19px}.recall-dialog li span{color:#435c50;overflow-wrap:anywhere}.recall-dialog li small{color:#6b8177}.recall-dialog .go{width:auto;height:52px;margin:0;padding:0 22px;font-size:18px}.tickets.layout-dynamic{columns:300px;column-gap:20px;display:block}.tickets.layout-dynamic .ticket{break-inside:avoid;margin:0 0 20px;display:block}@media (min-width:1600px){.tickets.layout-dynamic{columns:350px}}@media (max-width:700px){.tickets.layout-dynamic{columns:1}}.tickets.layout-grid{align-items:stretch}.tickets.layout-grid .ticket{flex-direction:column;display:flex}.tickets.layout-grid .ticket-footer{border-top:1px solid #e1e7e4;margin-top:auto}.items li.voided .item-detail strong,.items li.voided .quantity,.items li.voided .variant,.items li.voided .modifier{color:#8a9a94;text-decoration:line-through}.void-label{color:#b42318;font-size:16px;font-weight:800}
