:root{color:#20364a;background:#f4f6f8;font-family:Segoe UI,Arial,sans-serif;font-size:14px;line-height:1.5}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{color:#26465f;cursor:pointer;background:#fff;border:1px solid #ccd6df;border-radius:7px;padding:8px 14px;font-weight:600}button:hover:not(:disabled){background:#eef4f8}button:disabled{opacity:.5;cursor:default}.primary{color:#fff;background:#216c85;border-color:#216c85}.primary:hover:not(:disabled){background:#18596e}.danger{color:#a53636;border-color:#e4bbbb;margin-top:16px}.full{width:100%}input,select,textarea{color:#20364a;background:#fff;border:1px solid #cad5df;border-radius:7px;width:100%;min-height:42px;padding:10px 12px}input:focus,select:focus,textarea:focus,button:focus-visible{outline-offset:2px;outline:3px solid #9cc9da}input:disabled,textarea:disabled{color:#526777;background:#f5f7f9}label{font-size:13px;font-weight:600;display:block}label input,label textarea{margin-top:6px}textarea{resize:vertical;min-height:90px}h1{letter-spacing:-.6px;margin:3px 0 6px;font-size:29px}h2{margin:0;font-size:19px}h3{font-size:16px}p{margin:6px 0 14px}.muted{color:#6b7d8d}.small{font-size:12px}.eyebrow{letter-spacing:1.8px;color:#648293;margin-top:24px;font-size:10px;font-weight:700}.brand{white-space:nowrap;align-items:center;gap:11px;font-size:18px;font-weight:700;display:flex}.brand small{color:#90adbf;font-size:11px;font-weight:400;display:block}.brand-mark{color:#fff;letter-spacing:1px;background:#267f97;border-radius:10px;place-items:center;width:40px;height:40px;font-size:14px;display:grid}.app-shell{min-height:100vh;display:flex}.sidebar{color:#eaf0f5;background:#15354f;flex-direction:column;width:260px;padding:30px 22px;display:flex;position:fixed;inset:0 auto 0 0}.sidebar .eyebrow{color:#8bafc3;margin-top:45px}.workspace-label{color:#b3c9d6;margin-top:12px}.workspace-label select{color:#fff;background:#24445c;border-color:#436076;margin-top:8px;font-size:13px}.nav-item{background:#31536d;border-left:3px solid #7bcbcc;border-radius:7px;margin-top:26px;padding:12px;font-weight:600}.sidebar-footer{flex-direction:column;gap:4px;margin-top:auto;padding-top:40px;font-size:12px;display:flex}.sidebar-footer span{color:#a7c0ce;overflow-wrap:anywhere}.sidebar-footer button{color:#dcebf3;background:0 0;border-color:#527187;margin-top:13px}.workspace{width:calc(100% - 260px);min-width:0;max-width:1640px;margin-left:260px;padding:36px 40px}.page-heading{justify-content:space-between;align-items:center;gap:15px;margin-bottom:26px;display:flex}.page-heading .eyebrow{margin-top:0}.card{background:#fff;border:1px solid #dee5eb;border-radius:11px;margin-bottom:24px;box-shadow:0 2px 5px #17364f05}.toolbar{border-bottom:1px solid #e5ebf0;gap:12px;padding:20px;display:flex}.toolbar input{flex:1;min-width:0}.toolbar select{width:170px}.table-wrap{max-width:100%;position:relative;overflow-x:auto}table{border-collapse:collapse;white-space:nowrap;text-align:left;width:100%}th{letter-spacing:.5px;text-transform:uppercase;color:#6b8090;background:#f8fafb;padding:13px 20px;font-size:11px;font-weight:600}td{border-top:1px solid #edf1f4;padding:15px 20px;font-size:13px}td strong{font-weight:600}.selected-row{background:#f1f8fa}.badge{border-radius:20px;padding:4px 10px;font-size:11px;font-weight:600;display:inline-block}.badge.active{color:#347753;background:#e8f4ed}.badge.inactive{color:#6e7c87;background:#eef1f4}.pager{color:#6b7d8d;border-top:1px solid #e5ebf0;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;font-size:12px;display:flex}.pager button{margin-left:6px;padding:6px 10px;font-size:12px}.empty{text-align:center;color:#708290;padding:40px}.empty h2{color:#334f65;margin-bottom:8px}.details{padding:24px}.section-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.record-meta{color:#7c8c98;align-items:center;gap:12px;margin-bottom:18px;font-size:12px;display:flex}.record-meta button{margin-left:auto;font-size:12px}.form-grid{grid-template-columns:1fr 1fr;gap:18px;margin-bottom:20px;display:grid}fieldset{border:0;min-width:0;margin:0;padding:0}.contacts-section{border-top:1px solid #e5ebf0;margin-top:28px;padding-top:24px}.contacts-section table{border:1px solid #e5ebf0}.contact-editor{background:#f8fafb;border:1px solid #dce6ed;border-radius:8px;margin-top:20px;padding:22px}.contact-editor>button{margin-top:12px}.checkbox{align-items:center;gap:8px;margin-bottom:18px;display:flex}.checkbox input{width:16px;min-height:16px;margin:0}.alert{overflow-wrap:anywhere;border-radius:8px;margin-bottom:18px;padding:13px 16px;font-size:13px}.alert.error{color:#963d3d;background:#fff0f0;border:1px solid #eed0d0}.alert.success{color:#347653;background:#eaf6ef;border:1px solid #cbe6d5}.alert button{margin-left:15px;font-size:12px}.loading{color:#2c7088;font-size:12px}.login-page{background:radial-gradient(circle at 20% 20%,#e6f0f5,#f4f6f8 70%);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:#fff;border:1px solid #dde5eb;border-radius:14px;width:100%;max-width:450px;padding:38px;box-shadow:0 12px 40px #183b5010}.login-card .brand small{color:#7590a0}.login-card h1{margin-top:8px;font-size:25px}.login-card form{margin:28px 0 18px}.login-card label{margin-bottom:18px}.sr-only{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=1000px){.sidebar{width:220px;padding:25px 16px}.workspace{width:calc(100% - 220px);min-width:0;margin-left:220px;padding:28px 20px}.brand{font-size:16px}}@media (width<=700px){.app-shell{display:block}.sidebar{width:100%;padding:20px;position:static}.sidebar .eyebrow{margin-top:18px}.sidebar-footer{grid-template-columns:1fr auto;padding-top:18px;display:grid}.sidebar-footer span{grid-column:1}.sidebar-footer button{grid-area:1/2/3;margin:0}.nav-item{margin-top:14px}.workspace{width:100%;margin:0;padding:24px 14px}.page-heading{align-items:flex-start}h1{font-size:24px}.toolbar{flex-wrap:wrap;padding:14px}.toolbar input{flex-basis:100%}.toolbar select{flex:1}.details{padding:18px}.form-grid{grid-template-columns:1fr}.pager{flex-wrap:wrap;padding:14px}.alert button{margin:12px 0 0;display:block}.record-meta{flex-wrap:wrap}.login-card{padding:25px}.page-heading .primary{white-space:nowrap;font-size:12px}}.module-nav{flex-direction:column;gap:8px;margin-top:26px;display:flex}.module-nav .nav-item{text-align:left;color:#dcebf3;background:0 0;border:1px solid #0000;border-left-width:3px;width:100%;margin:0}.module-nav .nav-item.selected{background:#31536d;border-left-color:#7bcbcc}.module-nav .nav-item:hover:not(:disabled){background:#24445c}.buyer-picker{background:#f8fafb;border:1px solid #dce6ed;border-radius:8px;margin:0 0 20px;padding:16px}.buyer-picker .lookup-tools{gap:8px;margin:10px 0;display:flex}.buyer-picker .lookup-tools input{flex:1;min-width:0}.buyer-picker .pager{border:0;padding:12px 0 0}.style-description{grid-column:1/-1}.style-empty{margin-bottom:0}.buyer-picker select{margin-top:6px}.buyer-picker .small{margin:8px 0 0}.style-record-heading{overflow-wrap:anywhere}@media (width<=700px){.buyer-picker .lookup-tools{flex-wrap:wrap}.buyer-picker .lookup-tools input{flex-basis:100%}.record-meta span{overflow-wrap:anywhere}}.costing-summary{background:#f1f8fa;border:1px solid #d2e6ed;border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0;padding:18px;display:grid}.costing-summary dt{color:#637b8b;font-size:12px}.costing-summary dd{overflow-wrap:anywhere;margin:5px 0 0;font-size:20px;font-weight:700}.costing-summary div{min-width:0}.costing-lines{margin:20px 0}.costing-line{background:#f8fafb;border:1px solid #dee5eb;border-radius:8px;margin:12px 0;padding:16px}.costing-line h3{margin:0}.costing-line .form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:0}.costing-line-description{grid-column:span 2}.costing-line-total{margin:12px 0 0;font-weight:600}.costing-note{max-width:760px}.costing-lines .section-heading{margin-bottom:8px}.costing-fixed{border:1px solid #dce6ed;border-radius:8px;margin:0 0 16px;padding:12px}.costing-fixed p{overflow-wrap:anywhere;margin:0}@media (width<=900px){.costing-summary{grid-template-columns:1fr}.costing-line .form-grid{grid-template-columns:1fr 1fr}}@media (width<=700px){.costing-line .form-grid{grid-template-columns:1fr}.costing-line-description{grid-column:auto}.costing-line .section-heading{flex-wrap:wrap}}.quotation-snapshot{background:#f8fafb;border:1px solid #dce6ed;border-radius:8px;margin:16px 0;padding:16px}.quotation-snapshot dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;display:grid}.quotation-snapshot dt{color:#6b8090;font-size:12px}.quotation-snapshot dd{overflow-wrap:anywhere;white-space:pre-wrap;margin:3px 0 0}.quotation-actions{border-top:1px solid #e5ebf0;margin-top:24px;padding-top:20px}.quotation-actions .action-buttons{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.quotation-actions .danger{margin-top:0}.quotation-details .primary{margin-top:12px}.quotation-reason{white-space:pre-wrap;overflow-wrap:anywhere}.quotation-status{color:#526777;background:#eef1f4}.quotation-status.issued{color:#316599;background:#e9f1fa}.quotation-status.accepted{color:#347753;background:#e8f4ed}.quotation-status.rejected,.quotation-status.cancelled{color:#963d3d;background:#fff0f0}@media (width<=700px){.quotation-snapshot dl{grid-template-columns:1fr}}.quotation-status.confirmed{color:#175c43;background:#d7f0e5}.order-agreement{overflow-wrap:anywhere}.purchase-allocation{border:1px solid #cbd8e2;border-radius:.6rem;margin:1rem 0;padding:1rem}.purchase-allocation p{margin:.4rem 0}.production-stage-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin:1rem 0;display:grid}.production-stage-grid label{min-width:0}.production-guidance{background:#f0f7f6;border-left:3px solid #397d82;margin:1rem 0;padding:.8rem 1rem}.production-history-list{padding:0;list-style:none}.production-history-list li{overflow-wrap:anywhere;border-top:1px solid #dce4e8;padding:1rem 0}.production-history-list p{white-space:pre-wrap}.production-stage-grid output{margin-top:.4rem;font-weight:700;display:block}.badge.not_started{color:#355064;background:#e8edf0}.badge.in_progress{color:#6e4c00;background:#fff1d5}.badge.completed{color:#245c42;background:#e0f0e9}@media (width<=900px){.production-stage-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=480px){.production-stage-grid{grid-template-columns:1fr}}.quality-counts{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.badge.passed{color:#145e35;background:#ddf3e5}.badge.failed{color:#942b2b;background:#fde3e3}.quality-guidance{line-height:1.6}.quality-history{overflow-wrap:anywhere;padding-left:1.2rem}.quality-history li{margin-bottom:1rem}@media (width<=700px){.quality-counts{grid-template-columns:1fr}}.shipment-action{border-top:1px solid var(--border,#dbe3e8);margin-top:1.5rem;padding-top:1rem}.shipment-allocation{background:#eff6fa;border-radius:10px;margin:1rem 0;padding:1rem}.badge.dispatched{color:#234d85;background:#e5efff}.badge.delivered{color:#1b623a;background:#ddf4e7}.history-entry{overflow-wrap:anywhere}@media (width>=701px){.sidebar{scrollbar-gutter:stable;scrollbar-color:#8bafc3 #15354f;overflow:hidden scroll}.sidebar>*{flex-shrink:0}}.receivable-filters{border-bottom:1px solid #e5ebf0;padding:20px}.receivable-filters .form-grid{margin-top:0}.receivable-check{align-items:center;gap:8px;display:flex}.receivable-check input{width:18px;min-height:18px;margin:0}.receivable-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.receivable-currencies{grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:16px;display:grid}.receivable-currency{border:1px solid #dce6ed;border-radius:8px;min-width:0;padding:16px}.receivable-currency dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0 0;display:grid}.receivable-currency dt{color:#6b8090;font-size:12px}.receivable-currency dd{overflow-wrap:anywhere;margin:3px 0 0;font-weight:600}.receivable-buyer{text-align:left;color:#216c85;background:0 0;border:0;padding:0}.badge.unpaid{color:#6e4c00;background:#fff1d5}.badge.partially_paid{color:#234d85;background:#e5efff}.badge.paid{color:#1b623a;background:#ddf4e7}@media (width<=480px){.receivable-currency dl{grid-template-columns:1fr}}.module-nav{gap:2px;margin-top:12px}.module-nav .nav-item{padding:5px 10px;line-height:1.2}.dashboard-status-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:24px;display:grid}.dashboard-card{min-width:0;margin-bottom:0;padding:20px}.dashboard-total{margin:12px 0;font-size:32px;font-weight:700}.dashboard-statuses{margin:0 0 18px}.dashboard-statuses div{border-bottom:1px solid #e5ebf0;justify-content:space-between;gap:12px;padding:8px 0;display:flex}.dashboard-statuses dd{margin:0;font-weight:600}.dashboard-note{background:#eef5f8;border-radius:8px;padding:14px 16px}.dashboard-finance .section-heading{flex-wrap:wrap;gap:12px}.dashboard-finance .receivable-currency h3{margin-top:0}@media (width<=1100px){.dashboard-status-grid{grid-template-columns:1fr}}
