:root{--navy-950:#142a3d;--navy-800:#1e4059;--navy-700:#285875;--blue-100:#eaf3f8;--ink:#1b2731;--muted:#61717e;--line:#d5dee5;--surface:#fff;--canvas:#f3f6f8;--accent:#c96720;--danger:#b42318;--danger-soft:#feeceb;--warning:#9a6700;--warning-soft:#fff4ce;--success:#16704a;--success-soft:#e8f6ef;--info:#1769aa;--info-soft:#e8f3fb;--shadow:0 2px 8px rgba(20,42,61,.08);--radius:.65rem;--focus:#f0a020}*{box-sizing:border-box}html{font-size:16px}body{margin:0;color:var(--ink);background:var(--canvas);font-family:"Segoe UI",system-ui,sans-serif;line-height:1.5}a{color:var(--navy-700)}button,input,select,textarea{font:inherit}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:100;background:#fff;padding:.75rem 1rem}.skip-link:focus{top:1rem}.app-shell{min-height:100vh;display:grid;grid-template-columns:16rem 1fr}.app-sidebar{position:sticky;top:0;height:100vh;background:var(--navy-950);color:#fff;padding:1.3rem 1rem;display:flex;flex-direction:column;z-index:20}.brand{display:flex;align-items:center;gap:.75rem;font-size:1.05rem;line-height:1.2;padding:.25rem .4rem 1.4rem}.brand small{color:#c8d7e1;font-weight:400}.brand-mark{display:grid;place-items:center;width:2.4rem;height:2.4rem;border-radius:.55rem;background:#fff;color:var(--navy-950);font-weight:800;font-size:1.35rem}.side-nav{display:grid;gap:.25rem}.side-nav a{color:#eaf2f7;text-decoration:none;padding:.75rem .85rem;border-radius:.45rem;min-height:44px}.side-nav a:hover,.side-nav a:focus{background:var(--navy-800);color:#fff}.sidebar-footer{margin-top:auto;font-size:.8rem;color:#aebfca;border-top:1px solid #355064;padding-top:1rem}.app-column{min-width:0}.app-header{min-height:4.4rem;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:flex-end;gap:1rem;padding:.7rem 1.5rem;position:sticky;top:0;z-index:10}.user-summary{display:flex;align-items:center;gap:.6rem}.header-actions{display:flex;align-items:center;gap:.35rem}.header-actions form{margin:0}.prototype-banner{background:var(--warning-soft);border-bottom:1px solid #ead38e;color:#5d4800;padding:.6rem 1.5rem}.app-main{max-width:96rem;margin:0 auto;padding:1.5rem 2rem 3rem}.page-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.page-heading h1{font-size:1.85rem;line-height:1.2;margin:.25rem 0 0}.breadcrumb{color:var(--muted);font-size:.88rem}.button{border:1px solid transparent;border-radius:.45rem;min-height:44px;padding:.62rem 1rem;font-weight:650;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:.35rem}.button-primary{background:var(--navy-700);color:#fff}.button-primary:hover{background:var(--navy-800)}.button-secondary{background:#fff;border-color:var(--navy-700);color:var(--navy-700)}.button-quiet{background:#fff;border-color:var(--line);color:var(--ink)}.button-danger{background:#fff;border-color:#d92d20;color:var(--danger)}.button-row{display:flex;gap:.6rem;flex-wrap:wrap;align-items:center}.nav-toggle{display:none}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(10rem,1fr));gap:1rem;margin-bottom:1.25rem}.metric-card,.panel,.form-section,.order-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.metric-card{padding:1.05rem}.metric-card .label{display:block;color:var(--muted);font-weight:600;font-size:.9rem}.metric-card .value{display:block;font-size:1.9rem;font-weight:750;margin:.18rem 0}.metric-card small{color:var(--muted)}.metric-card.danger{border-left:5px solid var(--danger)}.metric-card.warning{border-left:5px solid var(--warning)}.metric-card.success{border-left:5px solid var(--success)}.metric-card.info{border-left:5px solid var(--info)}.panel{padding:1.1rem;margin-bottom:1.25rem}.panel-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.85rem}.panel h2,.form-section h2{font-size:1.15rem;margin:0}.two-column{display:grid;grid-template-columns:2fr 1fr;gap:1.25rem}.three-column{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.badge{display:inline-flex;align-items:center;border-radius:999px;padding:.22rem .58rem;font-size:.8rem;font-weight:700;white-space:nowrap}.badge-neutral{background:#edf1f4;color:#354653}.badge-danger{background:var(--danger-soft);color:var(--danger)}.badge-warning{background:var(--warning-soft);color:#755000}.badge-success{background:var(--success-soft);color:var(--success)}.badge-info{background:var(--info-soft);color:var(--info)}.status-New,.status-Needs-Review{background:var(--info-soft);color:var(--info)}.status-Waiting-on-Customer,.status-Waiting-on-Materials{background:var(--warning-soft);color:#755000}.status-Ready-to-Make,.status-In-Production{background:#eeeafa;color:#5940a5}.status-Quality-Check-Packaging{background:#f5e9f6;color:#7b2c83}.status-Ready-to-Ship-or-Pick-Up,.status-Completed{background:var(--success-soft);color:var(--success)}.status-Cancelled{background:#edf1f4;color:#56636c}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:#fff}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.78rem .8rem;border-bottom:1px solid var(--line);vertical-align:top}th{background:#edf3f6;color:#354653;font-size:.82rem;text-transform:uppercase;letter-spacing:.025em}tr:last-child td{border-bottom:0}.urgent-row{background:#fff8f7}.overdue{color:var(--danger);font-weight:750}.filters{display:grid;grid-template-columns:repeat(6,minmax(8rem,1fr));gap:.8rem;align-items:end}.field label,.field-label{display:block;font-weight:650;margin-bottom:.3rem}.field input,.field select,.field textarea{width:100%;min-height:44px;border:1px solid #9aaab5;border-radius:.4rem;padding:.58rem .65rem;background:#fff}.field textarea{min-height:6rem;resize:vertical}.form-section{padding:1.2rem;margin-bottom:1rem}.form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.span-2{grid-column:span 2}.span-3{grid-column:span 3}.alert{border-radius:.5rem;padding:.8rem 1rem;margin-bottom:1rem;border:1px solid}.alert-success{background:var(--success-soft);border-color:#9fd3ba;color:#12583c}.alert-info{background:var(--info-soft);border-color:#a8cee8;color:#124e7c}.alert-warning{background:var(--warning-soft);border-color:#e7cf82;color:#644b00}.alert-error{background:var(--danger-soft);border-color:#efaaa5;color:var(--danger)}.definition-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.definition-grid div{border-bottom:1px solid var(--line);padding-bottom:.65rem}.definition-grid dt{font-size:.82rem;color:var(--muted);font-weight:650}.definition-grid dd{margin:.2rem 0 0;font-weight:600}.activity-list,.status-history{list-style:none;padding:0;margin:0}.activity-list li,.status-history li{padding:.7rem 0;border-bottom:1px solid var(--line)}.activity-list li:last-child,.status-history li:last-child{border-bottom:0}.quick-actions{display:flex;gap:.65rem;flex-wrap:wrap}.order-card{padding:1rem;border-left:5px solid var(--navy-700)}.order-card.urgent{border-left-color:var(--danger)}.order-card h3{margin:.2rem 0}.order-card-grid{display:grid;grid-template-columns:2fr repeat(4,1fr);gap:1rem;align-items:center}.prototype-note{font-size:.88rem;color:var(--muted)}.work-order{background:#fff;color:#111;max-width:58rem;margin:0 auto;padding:1.5rem;border:1px solid var(--line)}.work-order-header{display:flex;justify-content:space-between;border-bottom:3px solid #222;padding-bottom:1rem}.check-list{display:grid;grid-template-columns:repeat(2,1fr);gap:.6rem}.check-box{border:1px solid #555;width:1.1rem;height:1.1rem;display:inline-block;vertical-align:middle;margin-right:.4rem}.public-header{background:var(--navy-950);color:#fff;padding:1rem 2rem;display:flex;justify-content:space-between}.public-main{max-width:34rem;margin:4rem auto;padding:0 1rem}.public-main .card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.5rem}.auth-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:2rem}.auth-card h1{margin:0 0 .5rem;font-size:1.85rem}.auth-card>p{margin:0 0 1.5rem;color:var(--muted)}.auth-form{display:grid;gap:1rem}.auth-submit{width:100%;margin-top:.25rem}.error{color:var(--danger)}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}@media(max-width:1100px){.metric-grid{grid-template-columns:repeat(2,1fr)}.filters{grid-template-columns:repeat(3,1fr)}.form-grid{grid-template-columns:repeat(2,1fr)}.span-3{grid-column:span 2}.two-column{grid-template-columns:1fr}.definition-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:800px){.app-shell{display:block}.app-sidebar{display:none;position:fixed;width:min(19rem,88vw);box-shadow:0 0 0 100vmax rgba(0,0,0,.35)}.app-sidebar.is-open{display:flex}.nav-toggle{display:inline-flex;margin-right:auto}.app-header{padding:.55rem .8rem;gap:.5rem}.user-summary{display:none}.prototype-banner{padding:.55rem .9rem}.app-main{padding:1.1rem .9rem 2rem}.page-heading{align-items:start}.order-card-grid{grid-template-columns:1fr 1fr}.order-card-grid>div:first-child{grid-column:span 2}.three-column{grid-template-columns:1fr}}@media(max-width:560px){.header-actions .button{padding:.55rem .65rem}.metric-grid,.filters,.form-grid,.definition-grid{grid-template-columns:1fr}.span-2,.span-3{grid-column:span 1}.page-heading{display:block}.page-heading .button{margin-top:.75rem;width:100%}.order-card-grid{grid-template-columns:1fr}.order-card-grid>div:first-child{grid-column:span 1}.button-row,.quick-actions{display:grid}.button-row .button,.quick-actions .button{width:100%}.check-list{grid-template-columns:1fr}.public-main{margin:2rem auto}.auth-card{padding:1.25rem}}@media print{body{background:#fff}.no-print,.app-sidebar,.app-header,.prototype-banner,.page-heading,.alert{display:none!important}.app-shell,.app-column{display:block}.app-main{padding:0;max-width:none}.work-order{border:0;padding:0;max-width:none;box-shadow:none}a{color:#000;text-decoration:none}@page{margin:.55in}}
.choice-group{border:0;padding:0;margin:0;display:flex;gap:1.25rem;flex-wrap:wrap}.choice-group legend{font-weight:700;margin-bottom:.4rem}.choice-group label{display:flex;align-items:center;gap:.4rem;min-height:44px}.customer-summary{display:grid;gap:.15rem;background:var(--blue-100);border:1px solid #bdd4e2;border-radius:.5rem;padding:.8rem 1rem}.customer-summary strong{font-size:1.05rem}.customer-summary span{color:#3d5668}
/* CSP-compatible layout helpers */
.top-space { margin-top: 1.25rem; }
.top-space-small { margin-top: 1rem; }
.bottom-space { margin-bottom: 1rem; }
.stacked-panels { display: grid; gap: 1rem; }
.pos-access-panels + .stacked-panels { display: none; }
.select-control { min-height: 44px; }
.desktop-queue { display: block; }
.mobile-queue { display: none; }
.queue-table-actions { display: grid; gap: .4rem; min-width: 11rem; }
.queue-table-actions .button { width: 100%; }
.readiness-grid { display: grid; gap: .75rem; }
.readiness-grid > div { display: flex; justify-content: space-between; gap: 1rem; align-items: center; }
.readiness-summary { display: grid; gap: .25rem; padding: 1rem; border-radius: .5rem; margin-bottom: 1rem; }
.readiness-summary.ready { background: #eaf6ee; border: 1px solid #43895a; }
.readiness-summary.not-ready { background: #fff3e6; border: 1px solid #b86b17; }
.recovery-code-list { columns: 2; }
.setup-key, .setup-value { overflow-wrap: anywhere; }
.supplier-product-dialog { width: min(94vw, 90rem); max-height: 92vh; overflow: auto; }
.supplier-product-dialog::backdrop { background: rgba(20, 42, 61, .58); }
.supplier-variation-row input, .supplier-variation-row select { min-width: 8rem; width: 100%; margin-bottom: .35rem; }
.supplier-variation-row output { font-family: ui-monospace, monospace; overflow-wrap: anywhere; }
.receiving-destination { display: grid; gap: .45rem; }
.receiving-destination select, .split-allocation select, .split-allocation input { width: 100%; min-width: 0; min-height: 44px; }
.split-location { margin-top: .7rem; min-width: 0; }
.split-allocation { display: grid; grid-template-columns: minmax(6rem, .55fr) minmax(11rem, 1fr) minmax(15rem, 1.7fr) auto; gap: .65rem; align-items: end; padding: .65rem 0; border-bottom: 1px solid var(--line); }
.split-allocation label { font-size: .84rem; font-weight: 650; }
.allocation-total { display: block; padding-top: .65rem; font-weight: 700; }
.add-storage-spot { margin-top: .45rem; }
.receipt-confirmation, .storage-spot-dialog { width: min(94vw, 52rem); max-height: 90vh; overflow: auto; border: 1px solid var(--line); border-radius: var(--radius); padding: 1.25rem; }
.receipt-confirmation::backdrop, .storage-spot-dialog::backdrop { background: rgba(20, 42, 61, .62); }
.receipt-summary-line { padding: .8rem; margin-bottom: .65rem; border: 1px solid var(--line); border-radius: .45rem; background: var(--surface); }
.receipt-summary-line strong, .receipt-summary-line small { display: block; }
.receipt-summary-line small { color: var(--muted); }
.site-level-exception { display: block; margin-top: .4rem; font-size: .84rem; }
.site-level-exception small { display: block; color: var(--muted); margin: .2rem 0 .45rem; }
.split-allocation .site-level-exception { grid-column: 1 / -1; padding: .65rem; background: var(--warning-soft); border-radius: .4rem; }
.bulk-assignment > summary { cursor: pointer; }
.validation-summary-valid { display: none; }
.receiving-workspace { width: min(94vw, 96rem); height: 94vh; max-width: none; max-height: none; overflow-x: hidden; overflow-y: auto; border: 1px solid var(--line); border-radius: var(--radius); padding: 1rem; }
.receiving-workspace::backdrop { background: rgba(20, 42, 61, .7); }
.receiving-workspace-header { position: sticky; top: -1rem; z-index: 3; display: flex; justify-content: space-between; align-items: center; gap: 1rem; background: #fff; border-bottom: 1px solid var(--line); padding: .75rem 0; margin-bottom: .75rem; }
.receiving-workspace-header h1 { margin: 0; font-size: 1.45rem; }
.receiving-workspace-header span { color: var(--muted); font-size: .9rem; }
.receiving-po-summary { padding: .75rem 1rem; margin-bottom: .75rem; }
.receiving-po-facts { display: grid; grid-template-columns: repeat(auto-fit, minmax(9rem, 1fr)); gap: .5rem 1rem; margin: 0; }
.receiving-po-facts div { min-width: 0; }
.receiving-po-facts dt, .receiving-order-facts span { color: var(--muted); font-size: .78rem; font-weight: 650; }
.receiving-po-facts dd { margin: .05rem 0 0; font-weight: 650; overflow-wrap: anywhere; }
.receiving-po-facts .po-notes { grid-column: 1 / -1; border-top: 1px solid var(--line); padding-top: .4rem; }
.receiving-lines-section { padding: 1rem; }
.receiving-lines-header { align-items: flex-start; }
.receiving-lines-header p { margin: .2rem 0 0; color: var(--muted); }
.receiving-lines-header .button-row { justify-content: flex-end; }
.auto-collapse { display: inline-flex; align-items: center; gap: .35rem; min-height: 44px; font-size: .85rem; }
.receiving-line-list { display: grid; gap: .75rem; }
.receiving-line-card { border: 1px solid var(--line); border-radius: var(--radius); background: #fff; overflow: clip; }
.receiving-line-card details > summary { list-style: none; }
.receiving-line-card details > summary::-webkit-details-marker { display: none; }
.receiving-line-summary { display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: .75rem 1rem; cursor: pointer; background: #f8fafb; }
.receiving-line-summary:hover { background: var(--blue-100); }
.receiving-line-summary strong, .receiving-line-summary small { display: block; }
.receiving-line-summary small { margin-top: .15rem; color: var(--muted); font-weight: 500; }
.receiving-line-body { padding: .85rem 1rem 1rem; }
.receiving-order-facts { display: grid; grid-template-columns: repeat(auto-fit, minmax(8rem, 1fr)); gap: .55rem 1rem; padding-bottom: .7rem; border-bottom: 1px solid var(--line); }
.receiving-order-facts div { min-width: 0; }
.receiving-order-facts strong { display: block; overflow-wrap: anywhere; }
.receiving-po-line-note { margin: .55rem 0 0; }
.receiving-card-section { padding-top: .75rem; }
.receiving-card-section h3, .storage-allocations h3 { margin: 0 0 .5rem; font-size: .95rem; text-transform: uppercase; letter-spacing: .02em; color: var(--navy-800); }
.receiving-quantity-grid { display: grid; grid-template-columns: repeat(5, minmax(7.5rem, 1fr)); gap: .65rem; align-items: start; }
.checkbox-label { display: flex!important; align-items: center; gap: .35rem; margin-top: .25rem; font-size: .8rem; font-weight: 500!important; }
.checkbox-label input { width: auto!important; min-height: auto!important; }
.storage-allocations { margin: .8rem 0; padding: .8rem; background: var(--blue-100); border-radius: var(--radius); }
.storage-allocations > p { margin: -.25rem 0 .3rem; }
.receiving-line-footer { display: grid; grid-template-columns: minmax(12rem, .8fr) minmax(18rem, 2fr); gap: .75rem; }
.receiving-actions { position: sticky; bottom: -1rem; z-index: 2; display: flex; gap: .6rem; justify-content: flex-end; padding: .75rem 0; margin-top: .5rem; background: #fff; border-top: 1px solid var(--line); }
.split-allocation[hidden] { display: none; }
.split-allocation .button { margin-bottom: .05rem; }
.receiving-workspace .receiving-destination[hidden] { display: none; }
.purchase-order-lines-header { align-items: flex-start; }
.purchase-order-lines-header .button-row { justify-content: flex-end; }
.po-line-list { display: grid; gap: .85rem; }
.po-line-card { min-width: 0; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; overflow: hidden; }
.po-line-card-header { display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: .75rem 1rem; background: #f8fafb; border-bottom: 1px solid var(--line); }
.po-line-card-header strong, .po-line-card-header small { display: block; }
.po-line-card-header small { margin-top: .15rem; color: var(--muted); }
.po-line-fields { display: grid; grid-template-columns: repeat(4, minmax(8rem, 1fr)); gap: .75rem; padding: 1rem; }
.po-line-fields label { min-width: 0; font-weight: 650; }
.po-line-fields input, .po-line-fields select { display: block; width: 100%; min-width: 0; min-height: 44px; margin-top: .3rem; border: 1px solid #9aaab5; border-radius: .4rem; padding: .58rem .65rem; background: #fff; }
.po-product-field, .po-line-notes { grid-column: 1 / -1; }
.po-warning { display: block; min-height: 1.35rem; margin-top: .3rem; font-weight: 500; }
.po-line-calculation { display: grid; grid-template-columns: repeat(4, minmax(9rem, 1fr)); gap: .65rem; margin: 0; padding: .8rem 1rem; background: var(--blue-100); border-top: 1px solid var(--line); }
.po-line-calculation div { min-width: 0; }
.po-line-calculation dt { color: var(--muted); font-size: .78rem; font-weight: 650; }
.po-line-calculation dt small { display: block; margin-top: .1rem; font-weight: 500; }
.po-line-calculation dd { margin: .15rem 0 0; font-weight: 750; overflow-wrap: anywhere; }
.valuation-filters { display: grid; grid-template-columns: repeat(4, minmax(10rem, 1fr)); gap: .8rem; align-items: end; }
.valuation-search { grid-column: span 2; }
.valuation-search small { display: block; margin-top: .25rem; color: var(--muted); }
.valuation-check { display: flex; align-items: center; gap: .45rem; min-height: 44px; font-weight: 650; }
.valuation-check input { width: auto; }
.valuation-filter-actions { grid-column: 1 / -1; }
.valuation-metrics { grid-template-columns: repeat(auto-fit, minmax(11rem, 1fr)); }
.valuation-group-list { display: grid; gap: 1rem; }
.valuation-group { margin-bottom: 0; padding: 0; overflow: hidden; }
.valuation-group-summary { display: grid; gap: .8rem; padding: 1rem 1.1rem; cursor: pointer; list-style: none; touch-action: manipulation; }
.valuation-group-summary::-webkit-details-marker { display: none; }
.valuation-group-summary:hover { background: var(--blue-100); }
.valuation-group-heading { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: .65rem; align-items: center; }
.valuation-group-heading strong, .valuation-group-heading small { display: block; }
.valuation-group-heading > span > strong { font-size: 1.15rem; }
.valuation-group-heading small { color: var(--muted); }
.valuation-disclosure::before { content: "▸"; display: inline-block; color: var(--navy-700); font-size: 1.25rem; font-weight: 800; transition: transform .15s ease; }
.valuation-group[open] .valuation-disclosure::before { transform: rotate(90deg); }
.valuation-view-label { color: var(--navy-700); font-weight: 700; white-space: nowrap; }
.valuation-view-open { display: none; }
.valuation-group[open] .valuation-view-closed { display: none; }
.valuation-group[open] .valuation-view-open { display: inline; }
.valuation-summary-metrics { display: grid; grid-template-columns: repeat(auto-fit, minmax(7.5rem, 1fr)); gap: .55rem; }
.valuation-summary-metrics > span { min-width: 0; padding: .45rem .55rem; border-radius: .4rem; background: var(--canvas); }
.valuation-summary-metrics small, .valuation-summary-metrics strong { display: block; overflow-wrap: anywhere; }
.valuation-summary-metrics small { color: var(--muted); font-size: .76rem; }
.valuation-row-list { padding: 0 1.1rem 1.1rem; }
.valuation-group-header { align-items: flex-start; }
.valuation-group-header p { margin: .15rem 0 0; color: var(--muted); }
.valuation-group-totals { margin-bottom: .85rem; }
.valuation-row-list { display: grid; gap: .55rem; }
.valuation-row { display: grid; gap: .75rem; border: 1px solid var(--line); border-radius: .5rem; padding: .75rem; background: #fff; }
.valuation-row > div { min-width: 0; }
.valuation-row span, .valuation-row small { display: block; color: var(--muted); font-size: .78rem; }
.valuation-row strong { display: block; overflow-wrap: anywhere; }
.valuation-row-identity { display: grid; grid-template-columns: repeat(6, minmax(7.5rem, 1fr)); gap: .65rem; padding-bottom: .65rem; border-bottom: 1px solid var(--line); }
.valuation-row-values { display: grid; grid-template-columns: repeat(7, minmax(7.5rem, 1fr)); gap: .65rem; }
.valuation-price-warning { margin: 0; padding: .55rem .7rem; }
.valuation-future-event { border-top: 1px solid var(--line); margin: .8rem 0 0; padding-top: .65rem; }
.catalog-category-body { display: grid; gap: 1rem; padding: 0 1.1rem 1.1rem; }
.catalog-product-group { min-width: 0; border: 1px solid var(--line); border-radius: .55rem; overflow: hidden; background: var(--canvas); }
.catalog-product-header, .catalog-variation-header { display: flex; align-items: center; justify-content: space-between; gap: .75rem; }
.catalog-product-header { padding: .8rem; border-bottom: 1px solid var(--line); background: #fff; }
.catalog-product-header h3, .catalog-variation-header h4 { margin: 0; }
.catalog-product-count { margin-left: .45rem; color: var(--muted); font-size: .84rem; }
.catalog-variation-list { display: grid; gap: .75rem; padding: .75rem; }
.catalog-variation-card { min-width: 0; padding: .85rem; border: 1px solid var(--line); border-radius: .5rem; background: #fff; }
.catalog-variation-header small { color: var(--muted); }
.catalog-physical-details { margin: .55rem 0 0; color: var(--muted); }
.catalog-variation-details { display: grid; grid-template-columns: repeat(4, minmax(9rem, 1fr)); gap: .65rem; margin: .8rem 0 0; }
.catalog-variation-details > div { min-width: 0; padding: .55rem; border-radius: .4rem; background: var(--canvas); }
.catalog-variation-details dt { color: var(--muted); font-size: .76rem; font-weight: 650; }
.catalog-variation-details dd { margin: .15rem 0 0; font-weight: 650; overflow-wrap: anywhere; }
#channel-sku-mappings { scroll-margin-top: 6rem; }
.channel-sku-mappings .mapping-identity { margin-bottom: 1rem; }
.mapping-editor { border-top: 1px solid var(--line); padding: .8rem 0; }
.mapping-editor summary { min-height: 44px; cursor: pointer; display: flex; align-items: center; gap: .55rem; }
.mapping-editor form { margin-top: .8rem; }
.catalog-channel-mappings { grid-column: span 2; }
.catalog-channel-mappings ul { margin: 0; padding-left: 1.1rem; }
.catalog-row-actions { margin-top: .8rem; padding-top: .8rem; border-top: 1px solid var(--line); }
@media (max-width: 1000px) {
    .catalog-variation-details { grid-template-columns: repeat(2, minmax(9rem, 1fr)); }
}
.fair-pos-sale { display: grid; gap: .55rem; }
.fair-pos-sale select { width: 100%; min-height: 44px; }
.fair-pos-summary { display: grid; grid-template-columns: repeat(3, 1fr); gap: .4rem; padding: .55rem; border-radius: .4rem; background: var(--blue-100); }
.fair-pos-summary span { display: grid; color: var(--muted); font-size: .78rem; }
.fair-pos-summary strong { color: var(--ink); font-size: 1rem; }
.pos-only-shell { background: var(--surface); overflow-x: hidden; }
.pos-only-shell > main { padding: 1rem; max-width: 1600px; margin: 0 auto; }
.pos-only-header { display: flex; justify-content: space-between; align-items: center; padding: .75rem 1rem; background: var(--navy); color: white; }
.pos-focus-mode .pos-only-header { display: none; }
.pos-focus-mode.pos-only-shell > main { max-width: none; padding: .35rem; }
.pos-toolbar, .pos-search, .pos-categories { display: flex; align-items: center; gap: .55rem; flex-wrap: wrap; }
.pos-toolbar { justify-content: space-between; }
.pos-toolbar div { display: grid; }
.pos-session-toolbar { min-height: 48px; padding: .3rem .55rem; border-bottom: 1px solid var(--line); background: #fff; }
.pos-session-identity { gap: 0; }
.pos-session-identity span { color: var(--muted); font-size: .82rem; }
.pos-session-actions { display: flex !important; gap: .4rem; align-items: center; }
.pos-session-actions form { margin: 0; }
.pos-session-actions .button { min-height: 44px; padding: .45rem .7rem; }
.pos-command-bar { display: grid; grid-template-columns: minmax(15rem, 1fr) auto; gap: .45rem; align-items: center; padding: .4rem .55rem; background: #fff; border-bottom: 1px solid var(--line); }
.pos-command-bar > label { position: absolute; width: 1px; height: 1px; overflow: hidden; }
.pos-search-row, .pos-mode-switch { display: flex; gap: .4rem; align-items: center; }
.pos-search-row input[type="search"] { flex: 1 1 auto; min-width: 0; min-height: 44px; font-size: 16px; }
.pos-mode-switch .button { min-height: 44px; white-space: nowrap; }
.pos-categories { margin: .7rem 0; overflow-x: auto; flex-wrap: nowrap; padding-bottom: .35rem; }
.pos-categories .button { white-space: nowrap; min-height: 44px; }
.pos-workspace { display: grid; grid-template-columns: minmax(0, 2fr) minmax(20rem, 1fr); gap: .65rem; align-items: start; overflow-x: clip; }
.pos-catalog { min-width: 0; }
.pos-quick-access { display: flex; justify-content: space-between; align-items: center; gap: .6rem; margin-bottom: .35rem; padding: .35rem 0; }
.pos-quick-access h2, .pos-quick-access p { margin: 0; }
.pos-quick-access h2 { font-size: .9rem; }
.pos-quick-access p { color: var(--muted); font-size: .88rem; }
.pos-quick-tabs { display: flex; gap: .35rem; flex-wrap: nowrap; overflow-x: auto; }
.pos-quick-tabs .button, .pos-categories .button { min-height: 44px; font-size: .92rem; padding: .45rem .65rem; }
.pos-products { display: grid; grid-template-columns: repeat(auto-fill, minmax(10.5rem, 1fr)); gap: .55rem; }
.pos-product-card { display: grid; gap: .32rem; min-height: 15.5rem; padding: .55rem; border: 1px solid var(--line); border-radius: .65rem; background: white; box-shadow: 0 2px 7px rgba(15, 35, 48, .07); touch-action: manipulation; }
.pos-touch-tile:not(.sold-out) { cursor: pointer; }
.pos-product-card img { width: 100%; height: 6rem; object-fit: contain; border-radius: .4rem; }
.pos-image-placeholder { display: grid; place-items: center; width: 100%; height: 6rem; border-radius: .4rem; background: var(--blue-100); color: var(--navy-700); font-size: 2rem; font-weight: 800; }
.pos-product-heading { display: flex; justify-content: space-between; gap: .5rem; align-items: start; }
.pos-product-heading h2 { font-size: 1.1rem; line-height: 1.25; }
.pos-favorite { color: #b66b00; font-size: 1.35rem; line-height: 1; }
.pos-product-card h2, .pos-product-card p { margin: 0; }
.pos-product-card .pos-product-action { min-height: 44px; margin-top: auto; font-size: .92rem; }
.pos-variation { min-height: 2rem; color: var(--muted); font-size: .86rem; }
.pos-price { font-size: 1.2rem; font-weight: 800; }
.pos-customization { display: grid; gap: .25rem; font-weight: 700; }
.pos-customization textarea { min-height: 5rem; }
.pos-favorite-form .button { width: 100%; min-height: 44px; }
.pos-product-card.sold-out { opacity: .65; }
.pos-product-card[hidden] { display: none; }
.pos-no-results { text-align: center; color: var(--muted); }
.pos-variation-dialog { width: min(92vw, 42rem); max-height: 88vh; border: 1px solid var(--line); border-radius: .75rem; padding: 1rem; }
.pos-variation-dialog::backdrop { background: rgba(20, 42, 61, .65); }
.pos-variation-dialog header { display: flex; justify-content: space-between; gap: 1rem; align-items: start; margin-bottom: .8rem; }
.pos-variation-dialog header div { display: grid; }
.pos-variation-dialog header strong { font-size: 1.25rem; }
.pos-variation-dialog header span { color: var(--muted); }
.pos-variation-list { display: grid; gap: .6rem; }
.pos-variation-option { display: flex; justify-content: space-between; align-items: center; gap: 1rem; width: 100%; min-height: 76px; padding: .75rem; border: 1px solid var(--line); border-radius: .55rem; background: #fff; color: var(--ink); text-align: left; cursor: pointer; }
.pos-variation-option:hover:not(:disabled) { border-color: var(--navy-700); background: var(--blue-100); }
.pos-variation-option:disabled { opacity: .55; cursor: not-allowed; }
.pos-variation-option span { display: grid; gap: .12rem; }
.pos-variation-option span:last-child { text-align: right; }
.pos-variation-option small { color: var(--muted); }
.pos-cart { position: sticky; top: .35rem; min-width: 0; padding: .55rem; }
.pos-cart-drawer > summary { display: none; font-size: 1.2rem; font-weight: 800; cursor: pointer; }
.pos-cart-content { display: flex; flex-direction: column; max-height: calc(100vh - 8.5rem); max-height: calc(100dvh - 8.5rem); min-height: 0; }
.pos-cart-lines { display: grid; gap: .3rem; overflow-y: auto; min-height: 0; overscroll-behavior: contain; }
.pos-cart-line { display: grid; gap: .4rem; min-width: 0; padding: .5rem 0; border-bottom: 1px solid var(--line); }
.pos-cart-line[aria-busy="true"] { opacity: .72; }
.pos-cart-line small { display: block; color: var(--muted); }
.pos-cart-line-header { display: flex; justify-content: space-between; align-items: start; gap: .75rem; min-width: 0; }
.pos-cart-identity { display: grid; gap: .15rem; min-width: 0; }
.pos-cart-product-name { font-size: 1rem; line-height: 1.3; overflow-wrap: normal; word-break: normal; }
.pos-cart-sku { font-size: .82rem; overflow-wrap: anywhere; }
.pos-cart-remove { flex: 0 0 auto; }
.pos-cart-primary-controls { display: grid; grid-template-columns: minmax(9rem, 1fr) minmax(6rem, .65fr); gap: .45rem; align-items: end; }
.pos-cart-control-group { display: grid; gap: .25rem; min-width: 0; color: var(--muted); font-size: .82rem; font-weight: 700; }
.pos-cart-line-summary { display: grid; gap: .1rem; padding: .35rem .45rem; border-radius: .4rem; background: var(--surface); font-size: .84rem; }
.pos-engraving-service { display: grid; grid-template-columns: minmax(9rem, auto) minmax(6rem, .55fr); align-items: end; gap: .4rem; padding: .45rem; border-radius: .5rem; background: var(--blue-100); }
.pos-engraving-service label { display: grid; gap: .25rem; font-size: .85rem; font-weight: 700; }
.pos-engraving-service input { width: 100%; }
.pos-engraving-instructions { grid-column: 1 / -1; width: 100%; }
.pos-engraving-instructions textarea { width: 100%; min-height: 3.5rem; resize: vertical; font-size: 16px; }
.pos-notes-toggle { justify-self: start; min-height: 44px; }
.pos-cart-save-status { margin: 0; color: var(--muted); font-size: .875rem; }
.pos-cart-save-status.error { color: var(--danger); font-weight: 700; }
.pos-mode-banner { grid-column: 1 / -1; margin: 0; padding: .25rem .55rem; border-bottom: 1px solid var(--line); background: var(--surface); font-size: .82rem; }
.pos-quantity-control { display: grid; grid-template-columns: 2.5rem 3.5rem 2.5rem; gap: .2rem; }
.pos-quantity-control .button { min-width: 0; min-height: 44px; padding: .35rem; font-size: 1.2rem; }
.pos-quantity-control input { width: 100%; min-width: 0; text-align: center; }
.pos-checkout { display: grid; gap: .35rem; margin-top: .35rem; position: sticky; bottom: 0; background: #fff; border-top: 1px solid var(--line); box-shadow: 0 -.4rem .8rem rgb(255 255 255 / 92%); }
.pos-checkout-controls { display: grid; gap: .4rem; padding-top: .4rem; }
.pos-checkout label { display: grid; gap: .25rem; }
.pos-checkout .fair-pos-summary { grid-template-columns: repeat(4, 1fr); }
.pos-payment-row { display: grid; grid-template-columns: minmax(6rem, .65fr) minmax(10rem, 1fr); gap: .45rem; }
.pos-payment-row input, .pos-payment-row select { min-height: 44px; font-size: 16px; }
.pos-pay { min-height: 48px; font-size: 1.05rem; }
.pos-sale-complete { display: flex; align-items: center; justify-content: space-between; gap: .75rem; padding: .55rem .75rem; border: 1px solid #79b890; border-radius: .55rem; background: #eaf7ee; }
.pos-sale-complete div { display: grid; }
.pos-gate { max-width: 46rem; margin: 4rem auto; }
.event-actions { display: flex; gap: .55rem; flex-wrap: wrap; position: sticky; top: 0; z-index: 4; }
.event-metrics > div { display: grid; gap: .2rem; color: var(--muted); }
.event-metrics strong { color: var(--ink); font-size: 1.15rem; }
.event-prepare-callout, .event-prepare-header { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.event-prepare-header h1, .event-preparation-card h2 { margin: 0; }
.event-prepare-header p, .event-preparation-card p { margin: .25rem 0; }
.event-prepare-filters { align-items: end; }
.event-price-tools { display: grid; grid-template-columns: minmax(16rem, 1fr) minmax(30rem, 2fr); gap: 1rem; align-items: end; }
.event-price-actions { display: flex; flex-wrap: wrap; gap: .55rem; align-items: end; }
.event-price-actions label { display: grid; gap: .2rem; min-width: 9rem; }
.event-price-actions input { max-width: 9rem; }
.event-preparation-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 34rem), 1fr)); gap: .8rem; margin: .8rem 0; }
.event-preparation-card { display: grid; gap: .85rem; margin: 0; }
.event-preparation-card > header { display: grid; grid-template-columns: auto 4rem minmax(12rem, 1fr) auto; gap: .7rem; align-items: center; }
.event-preparation-card header img, .event-product-placeholder { width: 4rem; height: 4rem; border-radius: .6rem; object-fit: contain; background: var(--blue-100); }
.event-product-placeholder { display: grid; place-items: center; font-size: 1.5rem; font-weight: 800; color: var(--muted); }
.event-include { align-self: start; display: grid; justify-items: center; gap: .15rem; font-weight: 700; }
.event-include input { width: 1.35rem; height: 1.35rem; }
.event-source-split { display: grid; gap: .45rem; padding: .7rem; border: 1px solid var(--line); border-radius: .6rem; background: var(--canvas); }
.event-source-summary { display: flex; justify-content: space-between; gap: .7rem; }
.event-source-summary span { color: var(--muted); font-size: .9rem; }
.event-source-split > label { display: grid; grid-template-columns: minmax(12rem, 1fr) minmax(6rem, 8rem); gap: .65rem; align-items: center; }
.event-source-split label span { display: flex; justify-content: space-between; gap: .5rem; }
.event-source-split small { color: var(--muted); }
.event-send-total { text-align: right; }
.event-price-grid { display: grid; grid-template-columns: repeat(2, minmax(9rem, 1fr)); gap: .65rem; align-items: end; }
.event-price-grid > div, .event-price-grid > label { display: grid; gap: .2rem; }
.event-price-grid span, .event-price-grid small { color: var(--muted); }
.event-prepare-submit { position: sticky; bottom: .5rem; z-index: 5; display: flex; justify-content: space-between; align-items: center; gap: 1rem; box-shadow: 0 .4rem 1.5rem rgb(0 0 0 / 18%); }
.event-prepare-submit div { display: grid; }
.event-preparation-card:has(.event-include input:not(:checked)) { opacity: .78; }
.event-preparation-card:has(.event-include input:checked) { border-color: var(--navy-700); box-shadow: 0 0 0 2px rgb(40 88 117 / 20%); }
.event-prepare-list { display: grid; gap: .55rem; margin: .8rem 0; }
.event-favorite-manager > summary { min-height: 48px; cursor: pointer; }
.event-favorite-buttons { display: flex; gap: .55rem; flex-wrap: wrap; margin-top: .75rem; }
.event-favorite-buttons form { margin: 0; }
.event-stock-row { display: grid; grid-template-columns: 4rem minmax(14rem, 2fr) minmax(10rem, 1fr) minmax(8rem, .7fr); gap: .75rem; align-items: center; border: 1px solid var(--line); border-radius: .5rem; padding: .65rem; }
.event-stock-row img { width: 4rem; height: 4rem; object-fit: contain; }
.event-stock-row div { display: grid; }
.event-stock-row span, .event-stock-row small { color: var(--muted); }

@media (min-width: 801px) and (max-width: 1200px) {
    .pos-only-shell > main { padding: .45rem; }
    .pos-workspace { grid-template-columns: minmax(0, 1.9fr) minmax(20rem, 1fr); }
    .pos-products { grid-template-columns: repeat(auto-fill, minmax(9.75rem, 1fr)); }
    .pos-product-card { min-height: 14.75rem; }
    .pos-product-card img, .pos-image-placeholder { height: 5.25rem; }
    .pos-cart-content { max-height: calc(100vh - 9.75rem); max-height: calc(100dvh - 9.75rem); }
    .pos-cart-product-name { font-size: .93rem; }
    .pos-cart-sku { font-size: .74rem; }
    .pos-cart-primary-controls { grid-template-columns: minmax(8.5rem, 1fr) minmax(5.5rem, .62fr); }
}

@media (max-width: 950px) {
    .valuation-filters { grid-template-columns: repeat(2, minmax(10rem, 1fr)); }
    .valuation-row-identity, .valuation-row-values { grid-template-columns: repeat(2, minmax(7.5rem, 1fr)); }
    .purchase-order-lines-header { display: block; }
    .purchase-order-lines-header .button-row { justify-content: flex-start; margin-top: .65rem; }
    .po-line-fields, .po-line-calculation { grid-template-columns: repeat(2, minmax(8rem, 1fr)); }
    .po-landed-calculation { grid-column: span 2; }
    .receiving-lines-header { display: block; }
    .receiving-lines-header .button-row { justify-content: flex-start; margin-top: .65rem; }
    .receiving-quantity-grid { grid-template-columns: repeat(3, minmax(7rem, 1fr)); }
    .split-allocation { grid-template-columns: minmax(6rem, .6fr) minmax(10rem, 1fr) minmax(13rem, 1.6fr); }
    .split-allocation > .button { grid-column: 1 / -1; justify-self: start; }
}

@media (max-width: 800px) {
    .pos-workspace { grid-template-columns: 1fr; }
    .pos-cart { position: static; min-width: 0; }
    .pos-command-bar { grid-template-columns: 1fr; }
    .pos-mode-switch .button { flex: 1 1 0; }
    .pos-session-toolbar { align-items: stretch; }
    .pos-cart-drawer > summary { display: flex; justify-content: space-between; align-items: center; min-height: 52px; }
    .pos-cart-drawer:not([open]) .pos-cart-content { display: none; }
    .pos-quick-access { align-items: stretch; flex-direction: column; }
    .pos-products { grid-template-columns: repeat(auto-fill, minmax(11rem, 1fr)); }
    .pos-product-card { min-height: 15rem; }
    .pos-cart-content { max-height: none; }
    .pos-cart-lines { overflow-y: visible; }
    .pos-cart-line { width: 100%; }
    .event-stock-row { grid-template-columns: 3rem minmax(10rem, 1fr); }
    .event-prepare-callout, .event-prepare-header, .event-source-summary, .event-prepare-submit { align-items: stretch; flex-direction: column; }
    .event-price-tools, .event-price-grid { grid-template-columns: 1fr; }
    .event-preparation-card > header { grid-template-columns: auto 3.25rem minmax(8rem, 1fr); }
    .event-preparation-card > header > .badge { grid-column: 2 / -1; justify-self: start; }
    .event-preparation-card header img, .event-product-placeholder { width: 3.25rem; height: 3.25rem; }
    .event-source-split > label { grid-template-columns: 1fr 7rem; }
    .desktop-queue { display: none; }
    .mobile-queue { display: block; }
    .recovery-code-list { columns: 1; }
    .receiving-workspace { width: 98vw; height: 96vh; padding: .7rem; }
    .receiving-workspace-header { top: -.7rem; }
    .receiving-line-summary { align-items: flex-start; }
    .receiving-quantity-grid { grid-template-columns: repeat(2, minmax(7rem, 1fr)); }
    .split-allocation { grid-template-columns: minmax(6rem, .65fr) minmax(10rem, 1fr); }
    .split-allocation > label:nth-of-type(3) { grid-column: 1 / -1; }
    .receiving-line-footer { grid-template-columns: 1fr; }
    .receiving-actions { bottom: -.7rem; }
}

@media (max-width: 520px) {
    .pos-cart-line-header { align-items: stretch; flex-direction: column; }
    .pos-cart-remove { align-self: start; }
    .pos-cart-primary-controls, .pos-engraving-service { grid-template-columns: 1fr; }
    .pos-engraving-instructions { grid-column: 1; }
    .pos-checkout .fair-pos-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 560px) {
    .pos-products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .55rem; }
    .pos-product-card { min-height: 14.5rem; padding: .55rem; }
    .pos-quick-tabs { display: grid; grid-template-columns: repeat(2, 1fr); }
    .pos-quick-tabs .button { width: 100%; }
    .valuation-filters, .valuation-row-identity, .valuation-row-values { grid-template-columns: 1fr; }
    .valuation-search { grid-column: span 1; }
    .valuation-group-heading { grid-template-columns: auto minmax(0, 1fr); }
    .valuation-view-label { grid-column: 2; white-space: normal; }
    .valuation-group-header { display: grid; }
    .po-line-card-header { display: grid; }
    .po-line-card-header .button-row, .purchase-order-lines-header .button-row { display: grid; }
    .po-line-fields, .po-line-calculation { grid-template-columns: 1fr; }
    .catalog-product-header, .catalog-variation-header { align-items: flex-start; flex-direction: column; }
    .catalog-variation-details { grid-template-columns: 1fr; }
    .catalog-channel-mappings { grid-column: auto; }
    .po-landed-calculation { grid-column: auto; }
    .receiving-line-summary { display: grid; }
    .receiving-quantity-grid, .split-allocation { grid-template-columns: 1fr; }
    .split-allocation > label:nth-of-type(3) { grid-column: auto; }
    .receiving-lines-header .button-row { display: grid; }
}
.finished-goods-intro + form.panel.form-grid ~ form:not([class]) { display: none; }
.recipe-materials-intro + section.panel ~ form:not([class]) { display: none; }
.transfer-line { display: grid; grid-template-columns: minmax(18rem, 2fr) repeat(3, minmax(8rem, 1fr)) minmax(10rem, 1fr) auto; gap: .8rem; align-items: end; margin-block: .8rem; }
.transfer-line output { display: block; min-height: 2.6rem; padding: .65rem .75rem; border: 1px solid var(--line); border-radius: .4rem; background: var(--canvas); }
@media (max-width: 1000px) { .transfer-line { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .transfer-line { grid-template-columns: 1fr; } }

.order-details-workspace { display: grid; gap: 1rem; min-width: 0; }
.order-primary-actions { display: flex; flex-wrap: wrap; gap: .55rem; }
.order-summary h1, .order-summary .eyebrow, .order-action-panel h2, .order-action-panel p { margin: 0; }
.eyebrow { color: var(--muted); font-size: .78rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.order-facts { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 10rem), 1fr)); gap: .8rem; margin: 1rem 0 0; }
.order-facts > div, .order-item-facts > div { min-width: 0; }
.order-facts dt, .order-item-facts dt { color: var(--muted); font-size: .78rem; font-weight: 800; text-transform: uppercase; }
.order-facts dd, .order-item-facts dd { margin: .18rem 0 0; }
.order-facts .order-contact { grid-column: span 2; }
.order-warnings { padding: .85rem 1rem; border: 1px solid #d5a83b; border-radius: .65rem; background: #fff8e7; }
.order-warnings h2 { margin: 0; font-size: 1rem; }
.order-warnings ul { margin: .45rem 0 0; padding-left: 1.2rem; }
.order-item-list { display: grid; gap: .8rem; }
.order-item-card { min-width: 0; padding: .9rem; border: 1px solid var(--line); border-radius: .6rem; background: var(--canvas); }
.order-item-card h3 { margin: 0; }
.order-item-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem 1rem; margin: .8rem 0; }
.order-item-facts .span-2 { grid-column: span 2; }
.order-item-card details summary { min-height: 44px; padding-block: .7rem; cursor: pointer; font-weight: 700; }
.sku-value { overflow-wrap: anywhere; }
.instruction-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .8rem; }
.instruction-grid > div { min-width: 0; padding: .75rem; border-radius: .5rem; background: var(--canvas); }
.instruction-grid h3 { margin: 0 0 .35rem; font-size: 1rem; }
.instruction-grid p { margin: 0; white-space: pre-wrap; overflow-wrap: anywhere; }
.order-action-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(9rem, 1fr)); gap: .55rem; }

.order-dialog { width: min(94vw, 72rem); max-width: none; max-height: 90vh; max-height: 90dvh; margin: auto; padding: 0; overflow-x: hidden; overflow-y: auto; border: 1px solid var(--line); border-radius: .75rem; background: #fff; color: var(--ink); box-shadow: 0 1.25rem 3.5rem rgb(0 0 0 / 30%); }
.order-dialog::backdrop { background: rgb(12 28 40 / 66%); backdrop-filter: blur(2px); }
.order-dialog-compact { width: min(94vw, 52rem); }
.order-dialog-header { position: sticky; top: 0; z-index: 3; display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; padding: 1rem; border-bottom: 1px solid var(--line); background: #fff; }
.order-dialog-header h2, .order-dialog-header p { margin: 0; }
.order-dialog-header p { margin-top: .25rem; color: var(--muted); }
.order-dialog > form, .order-dialog > .history-grid, .order-dialog > .order-dialog-section { padding: 1rem; }
.order-dialog-current { margin: 0; padding: .8rem 1rem 0; }
.order-dialog form { min-width: 0; }
.order-dialog fieldset { min-width: 0; }
.order-dialog-section { min-width: 0; margin: 0; border: 0; border-top: 1px solid var(--line); }
.order-dialog-section:first-of-type { border-top: 0; }
.order-dialog-section legend { padding-inline: .25rem; font-weight: 800; }
.order-dialog-actions { position: sticky; bottom: 0; z-index: 2; display: flex; flex-wrap: wrap; justify-content: flex-end; gap: .55rem; margin-top: 1rem; padding: .75rem 1rem; border-top: 1px solid var(--line); background: rgb(255 255 255 / 96%); }
.order-dialog form > .order-dialog-actions { margin-inline: -1rem; margin-bottom: -1rem; }
.history-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.history-grid > section { min-width: 0; padding: .8rem; border: 1px solid var(--line); border-radius: .55rem; }
.history-grid h3 { margin-top: 0; }
.history-grid .span-2 { grid-column: span 2; }
body:has(.order-dialog[open]) { overflow: hidden; }

@media (max-width: 800px) {
    .order-dialog { width: calc(100vw - 1rem); height: calc(100vh - 1rem); height: calc(100dvh - 1rem); max-height: none; margin: .5rem; border-radius: .55rem; }
    .order-dialog .form-grid, .order-item-facts, .instruction-grid, .history-grid { grid-template-columns: 1fr; }
    .order-dialog .span-2, .order-dialog .span-3, .order-item-facts .span-2, .history-grid .span-2, .order-facts .order-contact { grid-column: auto; }
    .order-dialog-header { padding: .75rem; }
    .order-dialog > form, .order-dialog > .history-grid, .order-dialog > .order-dialog-section { padding: .75rem; }
    .order-dialog form > .order-dialog-actions { margin-inline: -.75rem; margin-bottom: -.75rem; }
    .order-action-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 520px) {
    .order-action-grid { grid-template-columns: 1fr; }
    .order-primary-actions .button { flex: 1 1 100%; }
}

.workboard-actions { position: sticky; top: .5rem; z-index: 5; display: grid; grid-template-columns: minmax(12rem, 1fr) auto; gap: .8rem 1.2rem; align-items: center; margin-bottom: 1rem; padding: 1rem; border: 1px solid var(--line); border-radius: .7rem; background: rgb(255 255 255 / 97%); box-shadow: 0 .35rem 1rem rgb(12 28 40 / 8%); }
.workboard-actions h2, .workboard-actions p { margin: 0; }
.workboard-routing-options { grid-column: 1 / -1; }
.workboard-routing-options > summary, .workboard-lane > details > summary, .workboard-order-details > summary { min-height: 44px; padding-block: .65rem; cursor: pointer; font-weight: 750; }
.daily-workboard { display: grid; gap: 1rem; min-width: 0; }
.workboard-lane { min-width: 0; border: 1px solid var(--line); border-radius: .7rem; background: #fff; }
.workboard-lane > details > summary { display: flex; align-items: center; justify-content: space-between; gap: .8rem; padding-inline: 1rem; font-size: 1.08rem; }
.workboard-lane-tools { padding: .4rem 1rem; border-top: 1px solid var(--line); background: var(--canvas); }
.workboard-order-list { display: grid; }
.workboard-order { display: grid; grid-template-columns: minmax(7rem, .7fr) minmax(17rem, 2.3fr) repeat(4, minmax(8rem, 1fr)); gap: .75rem; align-items: start; min-width: 0; padding: .9rem 1rem; border-top: 1px solid var(--line); }
.workboard-order.urgent { border-inline-start: .35rem solid var(--danger); }
.workboard-order-select { display: flex; align-items: center; gap: .5rem; min-height: 44px; }
.workboard-order-select input { width: 1.25rem; height: 1.25rem; }
.workboard-order-primary, .workboard-order > div { min-width: 0; overflow-wrap: anywhere; }
.workboard-order-details { grid-column: 2 / -1; }
.workboard-item-detail { margin-block: .65rem; padding: .7rem; border-radius: .45rem; background: var(--canvas); }
.batch-cover { break-after: page; }
.batch-production-card { break-before: page; }

@media (max-width: 1100px) {
    .workboard-order { grid-template-columns: minmax(7rem, .7fr) minmax(15rem, 2fr) repeat(2, minmax(8rem, 1fr)); }
    .workboard-order-details { grid-column: 2 / -1; }
}

@media (max-width: 800px) {
    .workboard-actions { position: static; grid-template-columns: 1fr; }
    .workboard-routing-options { grid-column: auto; }
    .workboard-order { grid-template-columns: minmax(7rem, .7fr) minmax(0, 2fr); }
    .workboard-order-details { grid-column: 1 / -1; }
    .workboard-actions .button-row .button { flex: 1 1 13rem; min-height: 44px; }
}

@media (max-width: 520px) {
    .workboard-order { grid-template-columns: 1fr; }
    .workboard-order-details { grid-column: auto; }
    .workboard-actions .button-row { display: grid; }
}

@media print {
    .batch-cover, .batch-production-card { box-shadow: none; border-color: #777; }
    .batch-cover { break-after: page; }
    .batch-production-card { break-before: page; }
}
.preserve-source-text { white-space: pre-wrap; }
