/* A. S. Bookbinding ERP V50.00 — Unified Professional Design System
   One visual contract for every business page, dialog, table, chart, print surface and responsive state. */
:root{
 --as-bg:#f3f5f7;--as-surface:#ffffff;--as-surface-2:#f8f9fb;--as-surface-3:#eef2f5;
 --as-text:#182230;--as-muted:#667085;--as-subtle:#98a2b3;--as-line:#d7dde5;--as-line-strong:#bcc6d1;
 --as-primary:#173b57;--as-primary-hover:#102f47;--as-primary-soft:#eef4f8;
 --as-success:#176b43;--as-success-soft:#edf8f2;--as-warning:#8a5a0a;--as-warning-soft:#fff7e5;
 --as-danger:#a52a22;--as-danger-soft:#fff1f0;--as-info:#315f82;--as-info-soft:#eef5fa;
 --as-radius:6px;--as-radius-sm:4px;--as-control-h:36px;--as-page-pad:24px;
 --as-font:Inter,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
 --as-mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace;
}
*{box-sizing:border-box}
html,body{max-width:100%;overflow-x:hidden;background:var(--as-bg);color:var(--as-text)}
body{font-family:var(--as-font);font-size:14px;line-height:1.42;letter-spacing:0}
body,.page,.modalbox,.panel,.card,[class*="-card"],[class*="-panel"]{background-image:none!important}
main{min-width:0;background:var(--as-bg)}
.page{min-width:0;padding:var(--as-page-pad);animation:none!important}
.page>h1,.page-header h1,.v40-page-header h1,.professional-page-head h1{margin:0 0 16px;font-size:24px;line-height:1.2;font-weight:700;letter-spacing:-.02em;color:var(--as-text)}
.page h2,.modalbox h2{font-size:19px;line-height:1.25;font-weight:700;letter-spacing:-.01em;color:var(--as-text)}
.page h3,.modalbox h3{font-size:15px;line-height:1.3;font-weight:700;color:#344054;letter-spacing:0}
.v40-eyebrow,.professional-kicker,[class*="-kicker"]{font-size:11px!important;font-weight:700!important;letter-spacing:.06em!important;color:var(--as-muted)!important;text-transform:uppercase!important}
.muted,.small,.field small,[class*="-sub"]{color:var(--as-muted)}

/* Sidebar and top shell: quiet, dense, familiar business software. */
.v40-topbar{background:#fff!important;border-bottom:1px solid var(--as-line)!important;box-shadow:none!important}
.v40-sidebar{background:#172b3d!important;border-right:1px solid #0e2233!important;box-shadow:none!important}
.v40-nav-group{margin:0 8px 8px!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
.v40-nav-group .nav-group{padding:9px 10px 5px!important;color:#9fb0bf!important;font-size:10px!important;line-height:1.2!important;font-weight:700!important;letter-spacing:.08em!important;text-transform:uppercase!important}
#nav .v40-nav-group button[data-page]{min-height:34px!important;margin:1px 0!important;padding:7px 10px!important;border:0!important;border-radius:4px!important;background:transparent!important;color:#d9e3ea!important;font-weight:550!important;text-align:left!important;box-shadow:none!important}
#nav .v40-nav-group button[data-page]:hover{background:#203b50!important;color:#fff!important}
#nav .v40-nav-group button[data-page].active{background:#24475f!important;color:#fff!important;box-shadow:inset 3px 0 0 #d6a84f!important;font-weight:700!important}
.v40-nav-footer{border-top:1px solid rgba(255,255,255,.12)!important;background:#132738!important;color:#b8c6d1!important;box-shadow:none!important}
.v40-nav-footer span{display:none!important}.v40-nav-footer b{font-size:11px!important;font-weight:600!important;color:#b8c6d1!important}
.v40-nav-footer button{background:transparent!important;border-color:rgba(255,255,255,.18)!important;color:#dce5eb!important}

/* Surfaces */
.panel,.card,[class*="-card"],[class*="-panel"],.monitor-card,.security-banner,.business-grid>.panel,.report-grid>.panel{
 border:1px solid var(--as-line)!important;border-radius:var(--as-radius)!important;background:var(--as-surface)!important;
 box-shadow:none!important;filter:none!important;
}
.panel,.card,[class*="-panel"]{padding:16px}
[class*="-card"]{box-shadow:none!important}
.business-grid,.report-grid{gap:14px!important}
hr{border:0;border-top:1px solid var(--as-line)}

/* Forms */
.field{min-width:0}.field>label,label{font-size:12px!important;font-weight:650!important;color:#344054!important;letter-spacing:0!important;text-transform:none!important}
input,select,textarea{max-width:100%;border:1px solid #c5ced8!important;border-radius:var(--as-radius-sm)!important;background:#fff!important;color:var(--as-text)!important;box-shadow:none!important;outline:none}
input,select{min-height:var(--as-control-h)!important;padding:7px 9px!important}textarea{padding:8px 9px!important;line-height:1.42!important;resize:vertical}
input:hover,select:hover,textarea:hover{border-color:#9eabb8!important}
input:focus,select:focus,textarea:focus{border-color:#5b7891!important;box-shadow:0 0 0 3px rgba(23,59,87,.10)!important}
input[disabled],select[disabled],textarea[disabled]{background:#f1f3f5!important;color:#7a8591!important}
.grid,.grid2{min-width:0;gap:12px 14px!important}

/* Buttons: one hierarchy everywhere. */
button,.btn,[role="button"]{font-family:var(--as-font);border-radius:var(--as-radius-sm)!important;box-shadow:none!important;filter:none!important;text-shadow:none!important}
button{min-height:34px;padding:6px 11px;border:1px solid #c4cdd7;background:#fff;color:#253445;font-size:13px;font-weight:650;transition:background .1s,border-color .1s,color .1s}
button:hover:not(:disabled){background:#f5f7f9;border-color:#9eabb8}button:active:not(:disabled){transform:none!important;background:#edf1f4}
button.primary,.primary{background:var(--as-primary)!important;border-color:var(--as-primary)!important;color:#fff!important}
button.primary:hover:not(:disabled),.primary:hover{background:var(--as-primary-hover)!important;border-color:var(--as-primary-hover)!important}
button.gold,.gold{background:#fff!important;border-color:#c9a55c!important;color:#6f4b0b!important}
button.green,.green{background:#fff!important;border-color:#7db797!important;color:#176b43!important}
button.danger,.danger{background:#fff!important;border-color:#d9a19d!important;color:var(--as-danger)!important}
button:focus-visible{outline:3px solid rgba(23,59,87,.14);outline-offset:1px}
.toolbar{display:flex;align-items:center;gap:7px!important;flex-wrap:wrap;min-width:0}
.toolbar h1,.toolbar h2,.toolbar h3{margin-right:auto}

/* Tables: dense desktop table; card rows on narrow screens, never page-level sideways scrolling. */
table,.v5000-table{width:100%;max-width:100%;border-collapse:collapse!important;border-spacing:0!important;background:#fff!important;border:1px solid var(--as-line)!important;border-radius:0!important;box-shadow:none!important}
thead th{position:relative;background:#f4f6f8!important;color:#475467!important;font-size:11px!important;line-height:1.25!important;font-weight:700!important;letter-spacing:.02em!important;text-transform:none!important;border-bottom:1px solid var(--as-line-strong)!important;padding:8px 9px!important;white-space:normal!important}
tbody td{padding:8px 9px!important;border-bottom:1px solid #e5e9ee!important;vertical-align:top!important;color:#253445!important;overflow-wrap:anywhere}
tbody tr:last-child td{border-bottom:0!important}tbody tr:hover{background:#fafbfc!important}
.compact-table td,.compact-table th{padding:6px 8px!important}
.scrollbox,.table-wrap,[class*="table-wrap"],[class*="table-scroll"],[class*="-scroll"]{max-width:100%!important;min-width:0!important}
.page .scrollbox,.page .table-wrap,.page [class*="table-wrap"],.page [class*="table-scroll"]{overflow-x:visible!important}

/* Status, warnings, empty states */
.badge,.status-chip,[class*="badge"],[class*="chip"]{border-radius:999px!important;box-shadow:none!important;font-size:11px!important;font-weight:700!important;padding:3px 7px!important;background:#f0f3f6!important;border:1px solid #d3dae2!important;color:#475467!important}
.notice,.warning,.error,.success,.security-banner,[class*="callout"],[class*="alert"]{border-radius:var(--as-radius)!important;box-shadow:none!important;border-width:1px!important;border-style:solid!important;padding:10px 12px!important;background-image:none!important}
.notice,[class*="info"]{background:var(--as-info-soft)!important;border-color:#bed4e3!important;color:#284c68!important}
.warning{background:var(--as-warning-soft)!important;border-color:#e6c886!important;color:#704806!important}
.error{background:var(--as-danger-soft)!important;border-color:#e4b0ac!important;color:#81251f!important}
.success{background:var(--as-success-soft)!important;border-color:#a9d5bf!important;color:#145737!important}
.v34-empty,.empty-state,[class*="empty"]{color:var(--as-muted)!important;background:#fafbfc!important;border:1px dashed #cbd3dc!important;border-radius:var(--as-radius)!important;padding:16px!important;text-align:center!important}

/* KPI and analytics graphics. No glossy cards, gradients, huge numbers, or decorative shadows. */
.kpi-grid,[class*="-kpis"],.v4460-item-kpis{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(145px,1fr))!important;gap:8px!important}
.kpi,[class$="-kpi"],.v4460-item-kpis>div,.v4700-home-mini{min-height:72px!important;padding:10px 12px!important;border:1px solid var(--as-line)!important;border-radius:var(--as-radius)!important;background:#fff!important;box-shadow:none!important;background-image:none!important}
.kpi .label,[class$="-kpi"] span,.v4460-item-kpis span{display:block;color:var(--as-muted)!important;font-size:11px!important;font-weight:650!important;letter-spacing:0!important;text-transform:none!important}
.kpi .value,[class$="-kpi"] b,.v4460-item-kpis b{display:block;margin-top:4px;color:var(--as-text)!important;font-size:21px!important;line-height:1.1!important;font-weight:700!important;letter-spacing:-.02em!important}
.kpi.positive,.kpi.warning,.kpi.danger,[class$="-kpi"].warning,[class$="-kpi"].danger{border-left-width:3px!important}
.kpi.positive{border-left-color:#4c9b72!important}.kpi.warning{border-left-color:#c18a2a!important}.kpi.danger{border-left-color:#c35f57!important}
.mini-chart-wrap{min-height:160px;padding:14px 12px 8px;border:1px solid var(--as-line);background:#fff;border-radius:var(--as-radius)}
.mini-chart{height:130px!important;display:flex!important;align-items:flex-end!important;gap:10px!important;border-bottom:1px solid #aeb9c4!important;background:repeating-linear-gradient(to top,transparent 0,transparent 31px,#edf0f3 32px)!important;padding:0 8px!important}
.mini-chart .bar{min-width:22px!important;max-width:52px!important;flex:1!important;background:var(--as-primary)!important;border-radius:2px 2px 0 0!important;box-shadow:none!important;position:relative!important}
.mini-chart .bar span{position:absolute!important;bottom:-24px!important;left:50%!important;transform:translateX(-50%)!important;font-size:10px!important;color:var(--as-muted)!important;white-space:nowrap!important}
svg{filter:none!important}canvas{max-width:100%!important}
[class*="progress"]{border-radius:3px!important;box-shadow:none!important;background-image:none!important}
[class*="progress"]>[style*="width"],[class*="progress"] .fill{background:var(--as-primary)!important;border-radius:2px!important}

/* Workflow diagrams: restrained process rail, not a collection of giant cards. */
.v40-workflow-strip,.v4800-cycle,.v4800-page-flow,.v4800-modal-flow,[class*="workflow-strip"],[class*="flow-steps"]{background:#fff!important;border:1px solid var(--as-line)!important;border-radius:var(--as-radius)!important;box-shadow:none!important;background-image:none!important}
.v40-workflow-strip{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:0!important;padding:0!important;overflow:hidden!important}
.v40-workflow-strip button{border:0!important;border-right:1px solid var(--as-line)!important;border-radius:0!important;background:#fff!important;min-height:64px!important;padding:9px 10px!important;text-align:left!important}
.v40-workflow-strip button:last-child{border-right:0!important}.v40-workflow-strip button:hover{background:#f6f8fa!important}
.v40-workflow-strip b{font-size:12px!important}.v40-workflow-strip span{font-size:10px!important;color:var(--as-muted)!important}
.v4800-page-flow,.v4800-modal-flow{padding:7px 9px!important;display:flex!important;align-items:center!important;gap:6px!important;flex-wrap:wrap!important;font-size:11px!important;color:var(--as-muted)!important}
.v4800-page-flow b,.v4800-modal-flow .current{color:var(--as-primary)!important;background:var(--as-primary-soft)!important;border:1px solid #cbd9e4!important;border-radius:999px!important;padding:2px 7px!important}

/* Dialogs */
.modal{padding:18px!important;background:rgba(15,27,38,.52)!important;backdrop-filter:none!important}
.modalbox{width:min(1040px,calc(100vw - 36px))!important;max-height:94vh!important;border:1px solid #bfc8d2!important;border-radius:8px!important;background:#fff!important;box-shadow:0 14px 34px rgba(15,27,38,.18)!important;overflow:auto!important}
.modalhead{position:sticky!important;top:0!important;z-index:20!important;min-height:54px!important;margin:0!important;padding:13px 16px!important;background:#fff!important;border-bottom:1px solid var(--as-line)!important;box-shadow:none!important}
.modalhead h2{margin:0!important;font-size:18px!important}.modalhead>button{width:32px!important;min-width:32px!important;height:32px!important;padding:0!important;border-color:transparent!important;background:transparent!important;font-size:17px!important;color:var(--as-muted)!important}
#modalBody{padding:16px!important;min-width:0!important}.v4900-actionbar,.v4800-standard-savebar,.v5000-actionbar{position:sticky!important;bottom:-16px!important;z-index:18!important;display:flex!important;align-items:center!important;gap:7px!important;flex-wrap:wrap!important;margin:18px -16px -16px!important;padding:11px 16px!important;background:#fff!important;border-top:1px solid var(--as-line)!important;box-shadow:0 -5px 14px rgba(15,27,38,.05)!important}
.v4900-actionbar .v4900-action-handoff,.v5000-actionbar .handoff{margin-left:auto!important}

/* Document and OCR intake */
.v4520-intake-grid{gap:12px!important}.v4520-intake-card{min-height:0!important}.v4520-card-title{align-items:flex-start!important}.v4520-icon{display:none!important}
.import-drop,.v4520-drop,.ds52-drop{border:1px dashed #aeb9c4!important;border-radius:var(--as-radius)!important;background:#fafbfc!important;box-shadow:none!important;background-image:none!important}
.v5000-recognition-note{display:flex;gap:8px;align-items:flex-start;margin:10px 0 0;padding:9px 10px;border:1px solid #cbd9e4;border-radius:var(--as-radius);background:#f5f9fc;color:#31536c;font-size:12px}
.v5000-ocr-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 7px;border:1px solid #bcd0df;border-radius:999px;background:#f2f7fa;color:#31536c;font-size:11px;font-weight:700}
.v5000-ocr-low{border-color:#e2c27e;background:#fff8e8;color:#72500d}

/* Print: business documents stay clean and physical-output friendly. */
@media print{
 body{background:#fff!important;color:#000!important;font-family:Arial,Helvetica,sans-serif!important}
 .v40-topbar,.v40-sidebar,.v4050-sync-badge,.no-print,.toolbar:not(.print-toolbar),.v4900-actionbar,.v5000-actionbar{display:none!important}
 main,.page{padding:0!important;margin:0!important;background:#fff!important}
 .invoice-paper,.packing-slip-paper,[class*="print-sheet"]{box-shadow:none!important;border:0!important;border-radius:0!important;background:#fff!important}
 table{border-color:#999!important}thead th,tbody td{color:#000!important;border-color:#bbb!important;background:#fff!important}
}

@media(max-width:1000px){:root{--as-page-pad:18px}.v40-workflow-strip{grid-template-columns:repeat(3,minmax(0,1fr))!important}.v40-workflow-strip button:nth-child(3){border-right:0!important}}
@media(max-width:760px){:root{--as-page-pad:14px}.page{padding:14px!important}.grid,.grid2,.business-grid,.report-grid{grid-template-columns:1fr!important}.modal{padding:0!important}.modalbox{width:100vw!important;max-width:100vw!important;height:100vh!important;max-height:100vh!important;border:0!important;border-radius:0!important}.modalhead{padding:11px 13px!important}#modalBody{padding:13px!important}.v4900-actionbar,.v4800-standard-savebar,.v5000-actionbar{bottom:-13px!important;margin:16px -13px -13px!important;padding:10px 13px!important}.v40-workflow-strip{grid-template-columns:1fr 1fr!important}.v40-workflow-strip button{border-right:1px solid var(--as-line)!important;border-bottom:1px solid var(--as-line)!important}.v40-workflow-strip button:nth-child(even){border-right:0!important}
 /* generic responsive data table */
 table.v5000-responsive-table{display:block!important;border:0!important;background:transparent!important}table.v5000-responsive-table thead{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}table.v5000-responsive-table tbody{display:grid!important;gap:9px!important}table.v5000-responsive-table tr{display:block!important;border:1px solid var(--as-line)!important;border-radius:var(--as-radius)!important;background:#fff!important;padding:7px 10px!important;box-shadow:none!important}table.v5000-responsive-table td{display:grid!important;grid-template-columns:minmax(95px,38%) minmax(0,1fr)!important;gap:8px!important;align-items:start!important;padding:5px 0!important;border:0!important;border-bottom:1px solid #edf0f3!important;min-width:0!important;width:auto!important;max-width:none!important}table.v5000-responsive-table td:last-child{border-bottom:0!important}table.v5000-responsive-table td::before{content:attr(data-label);color:var(--as-muted);font-size:11px;font-weight:700;overflow-wrap:anywhere}table.v5000-responsive-table td[colspan]::before{content:""}table.v5000-responsive-table input,table.v5000-responsive-table select,table.v5000-responsive-table textarea{width:100%!important;min-width:0!important}.v5000-action-cell{display:flex!important;flex-wrap:wrap!important;gap:5px!important}
}
@media(max-width:480px){.v40-workflow-strip{grid-template-columns:1fr!important}.v40-workflow-strip button{border-right:0!important}.v4900-actionbar,.v4800-standard-savebar,.v5000-actionbar{display:grid!important;grid-template-columns:1fr!important}.v4900-actionbar>* ,.v4800-standard-savebar>* ,.v5000-actionbar>*{width:100%!important;margin-left:0!important}.kpi-grid,[class*="-kpis"],.v4460-item-kpis{grid-template-columns:1fr 1fr!important}}

.v5000-system-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.v5000-system-head h1{margin-bottom:4px}.v5000-check-list{display:grid;gap:6px}.v5000-check-row{display:grid;grid-template-columns:72px minmax(170px,.8fr) minmax(0,2fr);gap:10px;padding:9px 10px;border-bottom:1px solid #e6eaee;align-items:start}.v5000-check-row:last-child{border-bottom:0}.v5000-check-row>span{font-size:10px;font-weight:800;letter-spacing:.04em}.v5000-check-row.pass>span{color:#176b43}.v5000-check-row.warn>span{color:#8a5a0a}.v5000-check-row.fail>span{color:#a52a22}.v5000-check-row small{color:#667085;overflow-wrap:anywhere}@media(max-width:760px){.v5000-system-head{display:block}.v5000-system-head .toolbar{margin-top:10px}.v5000-check-row{grid-template-columns:64px 1fr}.v5000-check-row small{grid-column:1/-1}}

/* Sales Order editor: one familiar action hierarchy, no duplicate legacy footer controls. */
.v5000-legacy-actions{display:none!important}
#modalBody.v5000-sales-order{padding-bottom:18px}
#modalBody.v5000-sales-order>.grid:first-of-type{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end}
#modalBody.v5000-sales-order #v4041OrderTotal{margin:8px 0 0!important;padding:8px 10px!important;background:#f7f9fb!important;border:1px solid var(--as-line)!important;border-radius:var(--as-radius)!important}
#modalBody.v5000-sales-order textarea#oNotes{min-height:72px}
#v5000OrderActions .handoff{margin-left:auto!important;background:#fff!important;border-color:#c9a55c!important;color:#6f4b0b!important}
@media(max-width:1050px){#modalBody.v5000-sales-order>.grid:first-of-type{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){#modalBody.v5000-sales-order>.grid:first-of-type{grid-template-columns:1fr 1fr}#v5000OrderActions .handoff{margin-left:0!important;grid-column:1/-1}}
@media(max-width:480px){#modalBody.v5000-sales-order>.grid:first-of-type{grid-template-columns:1fr}#v5000OrderActions .handoff{grid-column:auto}}
