*{box-sizing:border-box}:root{font-family:"Yu Gothic","Meiryo",sans-serif;color:#203146;background:#eef3f8;font-size:16px}body{margin:0}header{background:#fff;border-bottom:1px solid #d7e0ea;padding:20px max(24px,calc((100vw - 1280px)/2));display:flex;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:14px}.brand strong{font-size:20px}.brand small{display:block;color:#607287;font-size:14px;margin-top:3px}.mark{display:grid;place-items:center;background:#123f69;color:white;border-radius:8px;width:44px;height:44px;font-size:26px}#account{font-size:14px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}main{max-width:1280px;margin:auto;padding:28px 24px}h1{font-size:30px;margin:4px 0 20px}h2{font-size:20px;margin:0 0 16px}.eyebrow{font-size:12px;letter-spacing:.13em;color:#42647f}.heading,.spread{display:flex;justify-content:space-between;align-items:center;gap:24px}.heading label{min-width:210px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px}.stats article{background:#123f69;color:#fff;padding:22px 26px;border-radius:10px}.stats article:nth-child(2){background:#185581}.stats article:nth-child(3){background:#fff;color:#123f69;border:1px solid #cbd8e5}.stats span{font-size:14px;display:block;margin-bottom:8px}.stats strong{font-size:28px;font-variant-numeric:tabular-nums}nav{display:flex;border-bottom:1px solid #c8d5e3;margin-bottom:24px;gap:4px;overflow:auto}nav button{border:0;background:transparent;border-radius:0;padding:14px 20px;white-space:nowrap;color:#53667a}nav button[aria-current=page]{color:#123f69;border-bottom:3px solid #123f69}.columns{display:grid;grid-template-columns:1fr 1.25fr;gap:24px;align-items:start}.panel{background:#fff;border:1px solid #d7e0ea;border-radius:12px;padding:26px;margin-bottom:24px}.step{background:#e8f0f8;color:#123f69;padding:7px;border-radius:5px;font-size:14px}.muted{font-size:14px;line-height:1.7;color:#5d6f81;margin:10px 0 20px}form{display:grid;gap:16px}label{display:grid;gap:8px;font-size:14px;font-weight:bold}input,select,textarea{font:inherit;font-size:16px;font-weight:400;color:#203146;background:#fff;border:1px solid #bccbd9;border-radius:6px;width:100%;padding:10px 12px;min-height:44px}textarea{min-height:80px;resize:vertical}input:focus,select:focus,textarea:focus,button:focus-visible{outline:3px solid #86bfea;outline-offset:2px}.row{display:grid;grid-template-columns:1fr 1fr;gap:16px}button{font:inherit;font-size:14px;font-weight:600;cursor:pointer;border:1px solid #b6c7d7;color:#123f69;background:#fff;padding:10px 15px;border-radius:6px;min-height:42px}button:hover{background:#eaf2fa}button.primary{background:#123f69;color:#fff;border-color:#123f69}button:disabled{opacity:.55;cursor:wait}.buttons{display:flex;gap:10px;flex-wrap:wrap}.calculation{padding:16px;background:#eaf2fa;border-left:3px solid #1d699c;font-size:14px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}.calculation strong{font-size:20px}.calculation small{width:100%;font-size:14px;color:#536b80}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:14px}th{text-align:left;white-space:nowrap;color:#526b82;background:#f1f5f9}th,td{padding:13px 12px;border-bottom:1px solid #e1e8ef;vertical-align:top}td small{display:block;color:#65788b;font-size:13px;margin-top:4px}td button{min-height:34px;padding:5px 9px;margin:2px}.empty{text-align:center;padding:40px;color:#607287}#notice:empty{display:none}#notice{padding:14px 18px;background:#e2effa;border:1px solid #94b5cf;border-radius:6px;margin-bottom:20px;white-space:pre-wrap}#notice.error{background:#fff0ef;border-color:#e2a49e;color:#8c2b24}.login{max-width:480px;margin:50px auto}.login p{line-height:1.7}.narrow{max-width:560px}footer{font-size:13px;color:#6b7b8b;padding:20px 0}ul{padding-left:22px;line-height:2}.danger{color:#9c352c}[hidden]{display:none!important}@media(max-width:800px){header{padding:16px}.brand strong{font-size:17px}.brand small{display:none}.heading{display:block}.heading label{margin-bottom:18px}.columns{grid-template-columns:1fr}.stats{gap:8px}.stats article{padding:15px 12px}.stats strong{font-size:22px}.panel{padding:20px}main{padding:20px 14px}nav button{padding:12px}.row{gap:12px}}@media print{header,#notice,nav,.stats,footer,button{display:none!important}main{padding:0}.panel{border:0;padding:0}}

.scanner{background:#f0f5fa;padding:18px;border-radius:8px;margin-bottom:20px}.scanner .buttons{margin-top:12px}.scanner video{width:100%;max-height:340px;margin-top:14px;border-radius:8px;background:#102a43}.ticket-context{background:#e8f3ee;border-left:4px solid #25734c;padding:16px;margin-bottom:20px;line-height:1.8}.time-input input{font-size:28px;min-height:65px}details{border:1px solid #d7e0ea;border-radius:7px;padding:14px}details[open]{display:grid;gap:14px}summary{cursor:pointer;font-size:14px;font-weight:bold;margin-bottom:5px}fieldset{border:1px solid #d7e0ea;border-radius:7px;padding:14px;margin:0}legend{font-size:14px;font-weight:bold;padding:0 5px}.choices{display:flex;flex-wrap:wrap;gap:8px}.choices label,.check{display:flex;align-items:center;gap:8px;font-weight:400}.choices label{background:#f4f7fb;border:1px solid #c9d7e4;border-radius:6px;padding:10px;cursor:pointer}.choices input,.check input{width:20px;min-height:20px;accent-color:#123f69}.choices label:has(input:checked){background:#dcecf9;border-color:#22648e}#master-form{margin:22px 0}.qr-image{width:220px;height:220px;image-rendering:pixelated}#ticket-output .ticket-heading{font-size:24px}.ticket-details{line-height:1.9}.ticket-token{font-size:12px;overflow-wrap:anywhere;color:#61768a}.paper-table td{height:40px}.qr-help{font-size:14px;color:#506c82}@media print{body.print-ticket>*{display:none!important}body.print-ticket main,body.print-ticket #workspace,body.print-ticket #qr,body.print-ticket #qr .columns,body.print-ticket #ticket-output{display:block!important}body.print-ticket main>*:not(#workspace),body.print-ticket #workspace>*:not(#qr),body.print-ticket #qr .columns>*:not(#ticket-output){display:none!important}body.print-ticket #ticket-output{margin:0;padding:0;border:0}.qr-image{width:45mm;height:45mm}.ticket-token{display:none}.paper-table{font-size:12px}.ticket-details{font-size:14px}}

.record-columns{grid-template-columns:1.25fr 1fr}@media(max-width:800px){.record-columns{grid-template-columns:1fr}}

body.record-mode .heading,body.record-mode .stats,body.record-mode footer,body.record-mode .brand small{display:none}body.record-mode main{padding-top:12px}body.record-mode #record{max-width:680px;margin:auto}body.record-mode #record .panel{padding:20px}body.record-mode .calculation{display:none}body.record-mode .scanner{padding:12px;margin-bottom:12px}body.record-mode #record .muted{display:none}body.record-mode #log-form{gap:12px}#order-entry{max-width:760px;margin:auto}

.user-role-row{border-top:1px solid #d7e0ea;padding:16px 0}.user-role-row small{display:block;margin:8px 0}.user-role-row .choices{margin-bottom:12px}progress{width:100px;accent-color:#25734c}
body.progress-mode .heading,body.progress-mode .stats,body.progress-mode footer,body.progress-mode .brand small{display:none}body.progress-mode main{padding-top:12px}body.progress-mode header,body.record-mode header{padding-top:10px;padding-bottom:10px}body.progress-mode nav,body.record-mode nav{margin-bottom:12px}body.progress-mode #progress .panel{padding:18px}body.progress-mode #progress h2{margin-bottom:0}.progress-toolbar{display:flex;gap:12px;flex-wrap:wrap;align-items:end;margin:16px 0}.progress-toolbar label{min-width:160px}#progress-layout{margin-bottom:16px}#progress-columns{max-height:360px;overflow:auto}.column-option{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e1e8ef;padding:8px;gap:16px}.column-option button{min-height:34px;padding:4px 12px}.process-state{display:inline-block;padding:6px 12px;border-radius:5px;font-weight:bold;white-space:nowrap}.process-state.waiting{background:#eef2f6;color:#52677b}.process-state.started{background:#fff0cf;color:#765112}.process-state.done{background:#deeee4;color:#226843}.staff-detail{margin-top:10px;padding:7px;font-size:12px;min-width:130px}.staff-detail div{padding:7px 0}.staff-detail summary{font-size:12px}.not-applicable{color:#8b9bab}#progress-head button{border:0;background:transparent;padding:0;min-height:30px;white-space:nowrap}#active-run-list{margin-bottom:16px}#active-run-items{display:grid;gap:8px}#active-run-items button{text-align:left}#active-run-items small{display:block;margin-top:4px}#active-run-items [aria-current=true]{background:#e8f3ee;border-color:#25734c}@media(max-width:800px){.progress-toolbar{gap:8px}.progress-toolbar label{min-width:120px;flex:1}#progress .spread{align-items:start;gap:12px}#progress-company-label{min-width:130px}}#admin .columns:has(#company-admin-panel[hidden]){grid-template-columns:1fr;max-width:850px;margin:auto}
#progress-table td{padding:10px 12px}#progress-table .staff-detail{border:0;padding:0;margin-top:5px;min-width:0}#progress-table .staff-detail summary{margin:0;font-weight:400}#progress-table .staff-detail[open]{display:block}#progress-table .process-state{padding:4px 10px}#progress-table td small{margin-top:3px}
.sort-condition{display:flex;flex-wrap:wrap;gap:8px;align-items:end;padding:8px 0}.sort-condition>span{min-width:54px;padding-bottom:12px}.sort-condition label:first-of-type{min-width:170px}.sort-condition label:last-of-type{min-width:100px}#progress-sort-conditions{flex-basis:100%}#progress-config-fields{display:grid;gap:14px}.multiline-cell{white-space:pre-wrap}#progress-settings .narrow{max-width:780px}

.progress-toggle-bar{display:flex;justify-content:flex-end;margin-bottom:8px;position:sticky;top:0;z-index:5;pointer-events:none}.progress-toggle-bar button{pointer-events:auto;font-size:12px;min-height:34px;padding:6px 12px;box-shadow:0 1px 4px #20314612}body.progress-focus header,body.progress-focus nav,body.progress-focus .heading,body.progress-focus .stats,body.progress-focus footer,body.progress-focus #progress .spread,body.progress-focus .progress-toolbar,body.progress-focus #progress-layout,body.progress-focus #progress>.panel>.muted,body.progress-focus #notice:not(.error){display:none!important}body.progress-focus main{max-width:none;padding:8px}body.progress-focus #progress>.panel{padding:8px;border:0;border-radius:6px;margin-bottom:0}body.progress-focus #progress-table th{padding-top:8px;padding-bottom:8px}@media print{.progress-toggle-bar{display:none!important}}

.progress-qr-wait{display:flex;gap:12px;align-items:center;margin-bottom:8px}.progress-qr-wait label{display:flex;align-items:center;gap:8px;font-size:12px}.progress-qr-wait input{width:280px;min-height:34px;padding:6px 10px;font-size:13px}#progress-qr-status{font-size:13px;color:#8c2b24}#progress-record-dialog{width:min(760px,96vw);max-height:94vh;border:1px solid #b6c7d7;border-radius:12px;padding:16px;color:#203146}#progress-record-dialog::backdrop{background:#20314688}.dialog-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}#progress-record-dialog .panel{padding:16px;margin-bottom:0}#progress-record-notice{white-space:pre-wrap;font-size:14px;margin-bottom:10px}#progress-record-notice.error{color:#8c2b24}

.column-drag-name{cursor:grab;user-select:none;padding:8px 4px}.column-drag-name:active{cursor:grabbing}.column-option.dragging{opacity:.45}.column-option.drop-before{box-shadow:inset 0 3px #22648e}.column-option.drop-after{box-shadow:inset 0 -3px #22648e}

#order-extra-fields{display:grid;gap:16px}
.record-layout-panel{display:flex;flex-direction:column;gap:12px}.record-layout-panel>#log-title{order:-20;margin-bottom:0}.record-layout-panel>#record-layout-settings{order:-10}.record-layout-panel>#ticket-context{order:0}.record-layout-panel>#log-form{display:contents}.record-layout-panel>#log-form>.buttons{order:1000}.record-item-hidden{display:none!important}#record-layout-items{display:grid;gap:8px}#record-layout-items .column-option{display:flex;align-items:center;gap:12px;flex-wrap:wrap}#record-layout-items .column-drag-name{flex:1;min-width:180px}

.order-field-options{display:flex;gap:12px}.order-field-options label{font-size:12px}.order-field-options input{width:200px}.order-field-options select{width:65px}#order-config-fields .column-option{flex-wrap:wrap}@media(max-width:600px){.order-field-options{width:100%}}
#record-layout-items .column-option label{display:flex;align-items:center;gap:6px;margin:0}#record-layout-items .column-option input{width:18px;height:18px;min-height:0;margin:0}#record-layout-items .column-option button{min-height:34px;padding:4px 10px}
.progress-qr-wait{flex-wrap:wrap}#progress-camera{width:min(420px,100%);max-height:320px;object-fit:contain;background:#111;border-radius:8px}#progress-qr-status{flex-basis:100%}
#progress-table button.process-state{cursor:pointer;min-height:32px;font:inherit}#progress-table button.process-state:hover{outline:2px solid #22648e}#progress-table button.process-state:focus-visible{outline:3px solid #22648e;outline-offset:2px}
.delivery-batch{display:flex;gap:12px;align-items:center;flex-wrap:wrap;border-bottom:1px solid #dce4ec;padding:12px 0}.delivery-batch label{margin:0}.delivery-batch small{width:100%}.delivery-lines{min-width:1100px}.delivery-lines input{width:105px;min-height:36px;padding:6px}.delivery-lines td:nth-child(2){min-width:220px;white-space:normal}.delivery-lines td:last-child input{width:170px}.delivery-lines td[data-delivery-total]{text-align:right;white-space:nowrap}#delivery .buttons{margin:16px 0}

#progress-record-dialog.popup-record-mode .dialog-heading{gap:24px;flex-wrap:wrap}#progress-record-dialog.popup-record-mode .dialog-heading>strong{margin-right:auto}#progress-record-dialog.popup-record-mode #manual-task{margin-right:24px;max-width:100%;font-size:13px}#progress-record-dialog.popup-record-mode #close-progress-record{margin-left:auto}#progress-record-dialog.popup-record-mode #record-layout-settings{order:2000}#pending-record-identity{order:15;display:grid;gap:12px}#pending-record-identity[hidden]{display:none}#progress-record-dialog #manual-fields .row:has(>label:only-child){grid-template-columns:1fr}
#progress-record-dialog .dialog-heading>strong{order:-1}#progress-record-dialog .dialog-heading>#manual-task{order:0!important}#progress-record-dialog .dialog-heading>#close-progress-record{order:1}

#progress-compact-metrics{display:flex;gap:8px;align-items:center;flex-wrap:wrap}#progress-compact-metrics>span{display:inline-flex;gap:6px;align-items:center;min-height:42px;padding:8px 12px;border:1px solid #b6c7d7;border-radius:6px;background:#fff;font-size:13px;white-space:nowrap}#progress-compact-metrics strong{font-size:14px;font-variant-numeric:tabular-nums}@media(max-width:800px){#progress-compact-metrics{gap:6px}#progress-compact-metrics>span{padding:6px 8px}}
#completed-run-list{order:1900}#completed-run-items{display:grid;gap:12px}#completed-run-items .buttons{align-items:center;justify-content:space-between}#active-run-items>[data-run-cancel]{justify-self:end;min-height:34px;padding:6px 12px}

.daily-quantity-total{vertical-align:middle;text-align:right;background:#e8f3ee;font-variant-numeric:tabular-nums}

#order-extra-fields{grid-template-columns:repeat(4,minmax(0,1fr))}#order-registration-settings{margin:24px 0}#add-registration-field{margin-bottom:20px}.order-field-options{flex-wrap:wrap}.order-field-options select[data-order-width]{width:170px}@media(max-width:600px){#order-extra-fields{grid-template-columns:minmax(0,1fr)}#order-extra-fields>label{grid-column:1!important}}

#order-layout-editor{width:min(820px,96vw);max-height:94vh;border:1px solid #b6c7d7;border-radius:12px;padding:24px;color:#203146}#order-layout-editor::backdrop{background:#20314688}.layout-preview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.layout-preview-item{min-width:0;padding:10px;border:1px solid #b6c7d7;border-radius:8px;background:#f5f8fc;display:grid;gap:8px;align-content:start}.layout-preview-handle{cursor:grab;font-size:14px;font-weight:bold;overflow-wrap:anywhere}.layout-preview-input{background:white;border:1px solid #bccbd9;border-radius:6px;padding:10px;color:#8090a0;font-size:13px}.layout-preview-item label{font-size:12px;gap:4px}.layout-preview-item select{font-size:13px;min-height:34px;padding:6px}.layout-preview-item .buttons{gap:4px}.layout-preview-item button{padding:4px 10px;min-height:30px}.layout-drop-before{box-shadow:inset 5px 0 #22648e}.layout-drop-after{box-shadow:inset -5px 0 #22648e}#order-layout-editor [data-layout-message]{color:#9c352c}#order-layout-editor>.buttons{position:sticky;bottom:-24px;background:#fff;padding:12px 0;margin-top:12px}#open-order-layout-editor{margin-top:16px}

#progress-body tr[data-progress-edit-order]{cursor:pointer}#progress-body tr[data-progress-edit-order]:hover>td{background:#edf5fc}#progress-body tr[data-progress-edit-order]:focus-visible{outline:3px solid #86bfea;outline-offset:-3px}

#order-extras-editor{width:min(640px,96vw);max-height:94vh;border:1px solid #b6c7d7;border-radius:12px;padding:24px;color:#203146}#order-extras-editor::backdrop{background:#20314688}[data-extra-fields]{display:grid;gap:16px}[data-extra-message]{color:#9c352c}

.merged-date-cell{vertical-align:middle;white-space:pre-wrap;background:#f4f8fc}

.choice-color-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:8px 0}.choice-color-row>span{min-width:140px;overflow-wrap:anywhere}.choice-color-row input[type=color]{width:56px;min-height:36px;padding:3px}.choice-color-value{display:inline-block;padding:4px 8px;border-radius:4px;white-space:pre-wrap}

.progress-toggle-bar{gap:12px;flex-wrap:wrap}#toggle-completed-orders[aria-pressed=true]{background:#e8f3ee;border-color:#25734c}

.progress-toggle-bar .completed-range{pointer-events:auto;display:flex;align-items:center;gap:6px;font-size:12px;font-weight:400}.completed-range input{width:70px;min-height:34px;padding:6px;font-size:13px}

.completed-range input[type=date]{width:150px}

#stage-summary .row{margin-bottom:16px}#stage-summary-processes{margin-top:12px}.stage-summary-group{margin:24px 0;padding:16px;background:#f5f8fc;border:1px solid #d7e0ea;border-radius:8px}.stage-summary-group h3{margin:0 0 8px}.stage-summary-group td{text-align:right;font-variant-numeric:tabular-nums}.stage-summary-group tbody tr:last-child{background:#e8f3ee}

#barcode-input{max-width:680px;margin:auto}.barcode-order-input input{font-size:24px;min-height:60px}

.barcode-run-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 0;border-bottom:1px solid #d7e0ea;flex-wrap:wrap}.barcode-run-row small{display:block;margin-top:4px;color:#607287}#barcode-work-message{padding:12px;background:#e8f3ee;border-radius:6px}#barcode-work-message:empty{display:none}

.finish-extra-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}@media(max-width:600px){.finish-extra-fields{grid-template-columns:1fr}}

/* Keep the headings inside the same horizontal and vertical scroll area. */
#progress-table-scroll{max-height:70vh;max-height:70dvh;overflow:auto;scrollbar-gutter:stable}
body.progress-focus #progress-table-scroll{max-height:calc(100vh - 180px);max-height:max(220px,calc(100dvh - 180px))}
#progress-table{border-collapse:separate;border-spacing:0}
#progress-table thead th{position:sticky;top:0;z-index:2;background:#f1f5f9;box-shadow:0 1px 0 #bccbd9}
@media print{#progress-table-scroll,body.progress-focus #progress-table-scroll{max-height:none;overflow:visible}#progress-table thead th{position:static;box-shadow:none}#progress-table thead{display:table-header-group}}

#progress-table tbody .progress-frozen-cell{position:sticky;z-index:3;background:#fff}
#progress-table thead .progress-frozen-cell{z-index:4}
#progress-table .progress-frozen-edge{box-shadow:2px 0 0 #bccbd9}
@media print{#progress-table .progress-frozen-cell{position:static!important;box-shadow:none!important}}

#progress-table th{padding-right:18px;white-space:normal}
#progress-table th>button{max-width:100%;white-space:normal;overflow-wrap:anywhere}
#progress-table td{overflow-wrap:anywhere}
.progress-column-resizer{position:absolute;top:0;right:0;width:10px;height:100%;cursor:col-resize;touch-action:none;user-select:none;z-index:5;border-right:2px solid transparent}
.progress-column-resizer:hover,.progress-column-resizer:focus-visible{border-right-color:#22648e;background:#22648e22}
#progress-table.resizing-columns{user-select:none;cursor:col-resize}
@media print{.progress-column-resizer{display:none!important}#progress-table{width:100%!important;table-layout:auto!important}}

#progress-table.hide-progress-staff .progress-staff-count,#progress-table.hide-progress-staff .staff-detail{display:none!important}

.saved-user-roles{padding:10px 12px;background:#eef5fb;border-left:3px solid #22648e;font-size:14px;line-height:1.7}#new-user-registration{margin-top:24px}
