:root {
  --ink: #15221d;
  --muted: #718078;
  --line: #e5e9e6;
  --paper: #f5f6f3;
  --white: #fff;
  --green: rgb(69, 168, 70);
  --green-2: #287b36;
  --lime: #dff05a;
  --orange: rgb(253, 105, 13);
  --quote-color: rgb(253, 105, 13);
  --quote-soft: #fff0e7;
  --order-color: rgb(69, 168, 70);
  --order-soft: #eaf7ea;
  --invoice-color: rgb(26, 64, 124);
  --invoice-soft: #e9eef7;
  --blue: rgb(26, 64, 124);
  --shadow: 0 18px 50px rgba(28, 45, 37, .10);
}
* { box-sizing: border-box; }
body { margin: 0; color: var(--ink); background: var(--paper); font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
.hidden { display:none !important; }
.sidebar { position: fixed; inset: 0 auto 0 0; width: 238px; padding: 28px 18px; background: #17311f; color: white; display: flex; flex-direction: column; }
.brand { display: flex; gap: 12px; align-items: center; padding: 0 10px 32px; }
.brand-mark { display:grid; place-items:center; width: 42px; height:42px; border-radius: 12px; color: white; background:var(--orange); font-weight: 900; box-shadow:0 0 0 3px rgba(69,168,70,.35); }
.brand strong, .brand span { display:block; }
.brand strong .brand-rapid { display:inline; color:var(--orange); }
.brand strong { font-size: 18px; letter-spacing: -.3px; }
.brand span { margin-top: 2px; color:#9db2a9; font-size: 11px; }
nav { display: grid; gap: 6px; }
.nav-section-label { margin:13px 14px 2px; color:#708b7e; font-size:8px; font-weight:900; letter-spacing:1.4px; }
.nav-item { display:flex; align-items:center; gap:12px; width:100%; padding:12px 14px; color:#b8c7c0; background:transparent; border:0; border-radius:10px; text-align:left; }
.nav-item span { width:20px; font-size:19px; }
.nav-item b { margin-left:auto; min-width:24px; padding:2px 7px; border-radius:99px; background:#24483a; font-size:11px; text-align:center; }
.nav-item.active { color:white; background:#21483a; }
.nav-item[data-view="quotes"].active { background:var(--quote-color); }
.nav-item[data-view="orders"].active { background:var(--order-color); }
.nav-item[data-view="invoices"].active { background:var(--invoice-color); }
.nav-item[data-view="quotes"] b { background:#7c3713; }
.nav-item[data-view="orders"] b { background:#245f2c; }
.nav-item[data-view="invoices"] b { background:#0f5124; }
.sidebar-note { margin-top:auto; display:flex; gap:10px; align-items:flex-start; padding:14px; border:1px solid #2c4b40; border-radius:12px; background:#15382c; }
.sidebar-note strong, .sidebar-note small { display:block; }
.sidebar-note strong { font-size:12px; }
.sidebar-note small { margin-top:3px; color:#8ba49a; font-size:10px; line-height:1.4; }
.pulse { flex:0 0 auto; width:8px; height:8px; margin-top:4px; border-radius:50%; background:var(--lime); box-shadow:0 0 0 4px rgba(223,240,90,.12); }
main { min-height:100vh; margin-left:238px; padding:30px 42px 60px; }
header { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-bottom:28px; }
h1,h2,h3,p { margin-top:0; }
h1 { margin-bottom:0; font-size:30px; letter-spacing:-1px; }
body[data-current-view="quotes"] #pageTitle { color:var(--quote-color); }
body[data-current-view="orders"] #pageTitle { color:var(--order-color); }
body[data-current-view="invoices"] #pageTitle { color:var(--invoice-color); }
.eyebrow { margin-bottom:7px; color:#8a978f; font-size:10px; font-weight:800; letter-spacing:1.3px; }
.header-actions { display:flex; gap:10px; align-items:center; justify-content:flex-end; flex-wrap:wrap; }
.user-menu-button { display:flex; align-items:center; gap:9px; padding:6px 11px 6px 7px; border:1px solid var(--line); border-radius:10px; color:var(--ink); background:white; text-align:left; }
.user-menu-button>span { display:grid; place-items:center; width:31px; height:31px; border-radius:8px; color:white; background:var(--green); font-size:9px; font-weight:900; }
.user-menu-button strong,.user-menu-button small { display:block; }
.user-menu-button strong { font-size:10px; }
.user-menu-button small { margin-top:2px; color:var(--muted); font-size:8px; }
.search { display:flex; align-items:center; gap:8px; width:260px; padding:10px 13px; border:1px solid var(--line); border-radius:10px; background:white; }
.search input { width:100%; border:0; outline:0; color:var(--ink); }
.primary,.secondary,.light-button { padding:11px 16px; border-radius:10px; border:0; font-weight:700; }
.primary { color:white; background:var(--green); box-shadow:0 5px 14px rgba(69,168,70,.22); }
.secondary { color:var(--ink); background:#eef0ed; }
.view { display:none; }
.view.active { display:block; }
.user-task-panel { padding:25px 28px; border:1px solid var(--line); border-top:5px solid var(--order-color); border-radius:16px; background:white; }
.user-task-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; }
.user-task-heading h2 { margin-bottom:6px; font-size:24px; }
.user-task-heading p:last-child { margin:0; color:var(--muted); font-size:11px; }
.user-task-list { display:grid; gap:8px; margin-top:20px; }
.user-task-row { display:grid; grid-template-columns:32px 1fr auto; gap:12px; align-items:center; padding:13px 14px; border:1px solid var(--line); border-radius:11px; background:#fafbfa; cursor:pointer; transition:.15s ease; }
.user-task-row:hover { border-color:#badcba; background:var(--order-soft); }
.user-task-row strong,.user-task-row span,.user-task-row small { display:block; }
.user-task-row strong { font-size:12px; line-height:1.45; }
.user-task-row>div>span { margin-top:4px; color:var(--muted); font-size:9px; }
.user-task-meta { min-width:145px; text-align:right; }
.user-task-meta .status { display:inline-block; }
.user-task-meta small { margin-top:6px; color:var(--green-2); font-size:8px; font-weight:900; }
.user-task-empty { padding:24px; border:1px dashed #cbd7ce; border-radius:11px; color:var(--muted); background:#fafbfa; text-align:center; }
.user-task-empty strong,.user-task-empty span { display:block; }
.user-task-empty strong { margin-bottom:5px; color:var(--ink); font-size:13px; }
.user-task-empty span { font-size:10px; }
.header-transaction-actions { display:flex; align-items:center; gap:9px; padding:6px 7px 6px 12px; border:1px solid var(--line); border-radius:11px; background:white; }
.header-transaction-actions>span { color:var(--muted); font-size:9px; font-weight:900; text-transform:uppercase; white-space:nowrap; }
.header-transaction-actions>div { display:flex; gap:5px; }
.header-transaction-actions button { padding:8px 10px; border:0; border-radius:8px; color:white; font-size:9px; font-weight:800; white-space:nowrap; }
#dashboardNewQuote { background:var(--quote-color); box-shadow:0 4px 10px rgba(253,105,13,.18); }
#dashboardNewOrder { background:var(--order-color); }
#dashboardNewInvoice { background:var(--invoice-color); }
#addQuoteButton { background:var(--quote-color); box-shadow:0 5px 14px rgba(253,105,13,.22); }
#addOrderButton { background:var(--order-color); }
#addInvoiceButton { background:var(--invoice-color); }
.stats { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin:18px 0; }
.stat { display:block; width:100%; padding:20px; color:var(--ink); background:white; border:1px solid var(--line); border-radius:14px; text-align:left; transition:.16s ease; }
.stat:hover,.dashboard-link-panel:hover,.dept-row:hover { transform:translateY(-2px); box-shadow:0 12px 28px rgba(28,45,37,.08); }
.stat-quote { border-top:4px solid var(--quote-color); }
.stat-order { border-top:4px solid var(--order-color); }
.stat-invoice { border-top:4px solid var(--invoice-color); }
.stat-quote .stat-icon { color:var(--quote-color); background:var(--quote-soft); }
.stat-order .stat-icon { color:var(--order-color); background:var(--order-soft); }
.stat-invoice .stat-icon { color:var(--invoice-color); background:var(--invoice-soft); }
.stat-top { display:flex; justify-content:space-between; align-items:center; }
.stat-icon { display:grid; place-items:center; width:31px; height:31px; border-radius:9px; background:#eff4f0; color:var(--green); }
.stat strong { display:block; margin:14px 0 4px; font-size:26px; letter-spacing:-1px; }
.stat small { color:var(--muted); font-size:11px; }
.widget-link { display:block; margin-top:12px; color:var(--green-2); font-size:9px; font-weight:900; text-transform:uppercase; }
.dashboard-grid { display:grid; grid-template-columns:1.7fr 1fr; gap:18px; }
.invoice-aging-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-top:18px; }
.dashboard-link-panel { cursor:pointer; transition:.16s ease; }
.invoice-aging-grid .panel-heading>strong { font-size:19px; }
.past-due-panel { border-color:#efc9bd; }
.invoice-aging-row { display:flex; align-items:center; justify-content:space-between; gap:15px; width:100%; padding:13px 4px; border:0; border-top:1px solid var(--line); color:var(--ink); background:transparent; text-align:left; }
.invoice-aging-row:hover { color:var(--green-2); }
.invoice-aging-row div>strong,.invoice-aging-row span { display:block; }
.invoice-aging-row div>strong { font-size:11px; }
.invoice-aging-row span { margin-top:4px; color:var(--muted); font-size:9px; }
.invoice-aging-row>strong { font-size:13px; }
.invoice-aging-row.past-due>strong { color:#ac4434; }
.invoice-aging-grid .panel:first-child { border-top:4px solid var(--invoice-color); }
.panel { padding:24px; border:1px solid var(--line); border-radius:15px; background:white; }
.panel-heading { display:flex; justify-content:space-between; align-items:center; margin-bottom:12px; }
.panel h3 { margin-bottom:0; font-size:17px; }
.text-button { border:0; color:var(--green-2); background:transparent; font-size:12px; font-weight:700; }
.attention-job { display:grid; grid-template-columns:auto 1fr auto; gap:13px; align-items:center; padding:15px 0; border-top:1px solid var(--line); cursor:pointer; }
.job-type { display:grid; place-items:center; width:38px; height:38px; border-radius:11px; font-size:12px; font-weight:900; }
.type-Signs { color:#6d3b16; background:#f8e5ce; }.type-Print { color:#25537c; background:#dceaf6; }.type-Apparel { color:#4b5922; background:#e7edcc; }
.attention-job strong,.attention-job small { display:block; }
.attention-job strong { font-size:13px; }
.attention-job small { margin-top:4px; color:var(--muted); font-size:11px; }
.due { text-align:right; font-size:11px; font-weight:800; }
.due.overdue { color:#c34f36; }
.department-chart { display:grid; gap:20px; padding-top:6px; }
.dept-row { width:100%; padding:0; border:0; color:var(--ink); background:transparent; text-align:left; transition:.16s ease; }
.dept-row header { margin:0 0 7px; font-size:12px; }
.dept-row header strong:last-child { margin-left:auto; }
.bar { height:8px; border-radius:99px; background:#edf0ed; overflow:hidden; }
.bar span { display:block; height:100%; border-radius:99px; background:var(--green); }
.pipeline-quote .bar span { background:var(--quote-color); }
.pipeline-order .bar span { background:var(--order-color); }
.pipeline-invoice .bar span { background:var(--invoice-color); }
.section-toolbar { display:flex; justify-content:space-between; gap:14px; margin-bottom:15px; }
.business-tabs { display:flex; gap:7px; margin-bottom:20px; padding:6px; width:max-content; border:1px solid var(--line); border-radius:12px; background:white; }
.business-tabs button { padding:10px 18px; border:0; border-radius:8px; color:var(--muted); background:transparent; font-weight:800; }
.business-tabs button.active { color:white; background:var(--blue); }
.business-panel { display:none; }
.business-panel.active { display:block; }
.tag-management-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.tag-management-card { padding:20px; border:1px solid var(--line); border-radius:14px; background:white; }
.tag-management-card h3 { margin:0 0 4px; font-size:16px; }
.tag-management-card>div:first-child>span { color:var(--muted); font-size:10px; }
.tag-management-add { display:grid; grid-template-columns:1fr auto; gap:8px; margin:16px 0 12px; }
.tag-management-add input { min-width:0; padding:10px 11px; border:1px solid var(--line); border-radius:9px; }
.managed-tag-list { display:flex; flex-wrap:wrap; gap:7px; min-height:34px; }
.managed-tag-list>span { display:inline-flex; align-items:center; gap:7px; padding:7px 9px; border-radius:99px; color:var(--blue); background:var(--invoice-soft); font-size:9px; font-weight:900; }
.managed-tag-list button { display:grid; place-items:center; width:17px; height:17px; padding:0; border:0; border-radius:50%; color:#884536; background:white; font-size:13px; line-height:1; }
.managed-tag-list em { color:var(--muted); font-size:10px; }
.section-heading { margin-bottom:18px; }
.section-heading h2 { margin-bottom:6px; }
.section-heading p:last-child { margin:0; color:var(--muted); font-size:11px; }
.task-create-panel { border-top:5px solid var(--green); }
.task-create-form { display:grid; grid-template-columns:150px minmax(230px,1.4fr) minmax(180px,1fr) 150px auto; gap:12px; align-items:end; margin-top:18px; }
.task-create-form label,.task-toolbar label { color:var(--muted); font-size:9px; font-weight:800; text-transform:uppercase; }
.task-create-form select,.task-create-form input,.task-create-form textarea,.task-toolbar select { display:block; width:100%; margin-top:6px; }
.task-note-field { grid-column:1/-2; }
.task-note-field textarea { min-height:76px; padding:11px 12px; resize:vertical; border:1px solid var(--line); border-radius:9px; }
.task-create-form>button { min-height:42px; }
.task-toolbar { display:flex; gap:12px; margin:18px 0; padding:14px 16px; border:1px solid var(--line); border-radius:12px; background:white; }
.task-toolbar label { min-width:190px; }
.global-task-list { display:grid; gap:10px; }
.global-task-row { display:grid; grid-template-columns:36px minmax(220px,1.4fr) minmax(160px,.7fr) 120px 90px 34px; gap:13px; align-items:center; padding:16px 18px; border:1px solid var(--line); border-left:5px solid var(--green); border-radius:12px; background:white; }
.global-task-row.completed { opacity:.65; border-left-color:#a8b1ac; }
.global-task-row.completed .global-task-main strong { text-decoration:line-through; }
.global-task-main strong,.global-task-main span,.global-task-assignee strong,.global-task-assignee span,.global-task-due strong,.global-task-due span { display:block; }
.global-task-main strong { font-size:12px; line-height:1.45; }
.global-task-main span,.global-task-assignee span,.global-task-due span { margin-top:4px; color:var(--muted); font-size:9px; }
.global-task-assignee strong,.global-task-due strong { font-size:10px; }
.global-task-type { width:max-content; padding:6px 9px; border-radius:99px; color:var(--blue); background:var(--invoice-soft); font-size:8px; font-weight:900; text-transform:uppercase; }
.global-task-open { padding:8px 10px; border:0; border-radius:8px; color:var(--green-2); background:var(--order-soft); font-size:9px; font-weight:900; }
.global-task-delete { width:32px; height:32px; border:0; border-radius:8px; color:#9b473d; background:#fff0ed; font-weight:900; }
.report-toolbar { display:flex; flex-wrap:wrap; gap:12px; margin-bottom:18px; padding:18px; border:1px solid var(--line); border-radius:14px; background:white; }
.report-toolbar label { min-width:180px; color:var(--muted); font-size:9px; font-weight:800; text-transform:uppercase; }
.report-toolbar select,.report-toolbar input { display:block; width:100%; margin-top:6px; }
.tax-settings-grid { display:grid; grid-template-columns:1.15fr .85fr; gap:18px; }
.tax-level-list { display:grid; gap:10px; margin-top:18px; }
.tax-level-row { display:grid; grid-template-columns:1fr 1.2fr 110px auto 34px; gap:9px; align-items:end; padding:14px; border:1px solid var(--line); border-radius:11px; background:#fafbfa; }
.tax-level-row label,.document-tax-editor label { color:var(--muted); font-size:9px; font-weight:800; }
.tax-level-row input,.document-tax-editor input,.document-tax-editor select { display:block; width:100%; margin-top:6px; padding:9px 10px; border:1px solid var(--line); border-radius:8px; background:white; }
.tax-level-save { height:38px; padding:8px 12px; }
.tax-level-delete { width:34px; height:38px; }
.tax-exemption-row { grid-template-columns:1fr 150px auto 34px; }
.report-sheet { padding:25px; border:1px solid var(--line); border-radius:15px; background:white; }
.report-sheet-orders { border-top:5px solid var(--order-color); }
.report-sheet-invoices,.report-sheet-cash,.report-sheet-tax { border-top:5px solid var(--invoice-color); }
.report-sheet-orders .report-heading .eyebrow { color:var(--order-color); }
.report-sheet-invoices .report-heading .eyebrow,.report-sheet-cash .report-heading .eyebrow,.report-sheet-tax .report-heading .eyebrow { color:var(--invoice-color); }
.report-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; padding-bottom:18px; border-bottom:1px solid var(--line); }
.report-heading h2 { margin:0; }
.report-heading>strong { padding:8px 11px; border-radius:8px; background:#eef2ef; font-size:10px; }
.report-summary { display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:10px; margin:20px 0; }
.report-summary>div { padding:16px; border-radius:11px; background:#f2f5f2; }
.report-summary span,.report-summary strong,.report-summary small { display:block; }
.report-summary span { color:var(--muted); font-size:8px; font-weight:900; text-transform:uppercase; }
.report-summary strong { margin-top:7px; font-size:20px; }
.report-summary small { margin-top:5px; color:var(--muted); font-size:8px; }
.report-table-wrap { overflow:auto; border:1px solid var(--line); border-radius:11px; }
.report-table { min-width:720px; }
.report-table td strong,.report-table td small { display:block; }
.report-document-row { cursor:pointer; }
.report-empty { display:block; padding:35px; }
.filters { display:flex; gap:6px; flex-wrap:wrap; }
.filter { padding:8px 12px; border:1px solid var(--line); border-radius:99px; color:var(--muted); background:white; font-size:11px; font-weight:700; }
.filter.active { color:white; border-color:var(--green); background:var(--green); }
select { padding:9px 12px; border:1px solid var(--line); border-radius:9px; color:var(--ink); background:white; }
.job-table-wrap { overflow:hidden; border:1px solid var(--line); border-radius:15px; background:white; }
table { width:100%; border-collapse:collapse; }
th { padding:13px 18px; color:#8a978f; background:#fafbfa; font-size:10px; letter-spacing:.7px; text-align:left; text-transform:uppercase; }
td { padding:16px 18px; border-top:1px solid var(--line); font-size:12px; }
tbody tr { cursor:pointer; }
tbody tr:hover { background:#fafcf9; }
td strong,td small { display:block; } td small { margin-top:3px; color:var(--muted); }
.money { text-align:right; }
.status { display:inline-block; padding:5px 8px; border-radius:99px; background:#eef1ee; font-size:10px; font-weight:800; }
.status-Production,.status-Installation { color:#8e3d22; background:#ffe5da; }.status-Scheduling,.status-ScheduleInstallation { color:#235c3f; background:#dff2e6; }.status-Design { color:#27597f; background:#dcebf6; }
.status-Awaitingapproval { color:#6c5620; background:#f8edc8; }.status-Approved,.status-Quality { color:#31547b; background:#e1ecf8; }.status-Completed { color:#275d43; background:#dcf0e3; }
.empty-state { display:none; padding:50px; color:var(--muted); text-align:center; }
.customer-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:15px; }
.customer-card { padding:21px; border:1px solid var(--line); border-radius:14px; background:white; }
.customer-avatar { display:grid; place-items:center; width:42px; height:42px; margin-bottom:18px; border-radius:12px; color:white; background:var(--green); font-weight:900; }
.customer-card h3 { margin-bottom:5px; font-size:15px; }
.customer-card p { min-height:18px; margin-bottom:17px; color:var(--muted); font-size:11px; }
.customer-meta { display:flex; justify-content:space-between; padding-top:14px; border-top:1px solid var(--line); font-size:11px; }
.catalog-intro { display:flex; justify-content:space-between; align-items:center; gap:24px; margin-bottom:18px; padding:25px 28px; border:1px solid var(--line); border-radius:15px; background:white; }
.catalog-intro h2 { margin-bottom:6px; font-size:23px; }
.catalog-intro p:last-child { margin:0; color:var(--muted); font-size:12px; }
.catalog-summary { min-width:110px; padding:14px 18px; border-radius:12px; color:white; background:var(--green); text-align:center; }
.catalog-summary strong,.catalog-summary span { display:block; }
.catalog-summary strong { font-size:25px; }.catalog-summary span { color:#bdd0c8; font-size:10px; }
.website-product-import { display:grid; grid-template-columns:minmax(220px,1fr) minmax(260px,1.2fr) auto auto; gap:12px; align-items:center; margin-bottom:18px; padding:18px 20px; border:1px solid #d4dfd6; border-left:5px solid var(--orange); border-radius:14px; background:white; }
.website-product-import h3 { margin:0 0 4px; font-size:15px; }
.website-product-import>div>span { color:var(--muted); font-size:9px; }
.website-product-import select { width:100%; }
.website-product-import a { color:var(--green-2); font-size:9px; font-weight:900; text-decoration:none; white-space:nowrap; }
.website-product-import a:hover { text-decoration:underline; }
.product-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:15px; }
.product-card { display:flex; flex-direction:column; min-height:260px; padding:21px; border:1px solid var(--line); border-radius:15px; background:white; cursor:pointer; transition:.18s ease; }
.product-card:hover { transform:translateY(-2px); box-shadow:0 12px 30px rgba(28,45,37,.08); }
.product-card-top { display:flex; justify-content:space-between; align-items:flex-start; gap:12px; }
.product-category { display:inline-block; padding:5px 8px; border-radius:99px; color:var(--green); background:#ebf2ed; font-size:9px; font-weight:900; letter-spacing:.6px; text-transform:uppercase; }
.product-rate { text-align:right; }.product-rate strong,.product-rate small { display:block; }.product-rate strong { font-size:18px; }.product-rate small { color:var(--muted); font-size:9px; }
.product-card h3 { margin:22px 0 8px; font-size:17px; }
.product-description { margin-bottom:20px; color:var(--muted); font-size:11px; line-height:1.55; }
.product-options { display:flex; flex-wrap:wrap; gap:5px; margin-top:auto; }
.option-chip { padding:5px 7px; border:1px solid var(--line); border-radius:6px; color:#5e6a64; background:#fafbfa; font-size:9px; }
.product-card-footer { display:flex; justify-content:space-between; align-items:center; margin-top:16px; padding-top:14px; border-top:1px solid var(--line); color:var(--green-2); font-size:10px; font-weight:800; }
.product-empty { border:1px dashed #ccd5cf; border-radius:15px; background:white; }
.product-empty p { color:var(--muted); }
dialog { width:min(640px,calc(100% - 30px)); max-height:92vh; padding:0; border:0; border-radius:18px; box-shadow:var(--shadow); overflow:auto; }
.wide-dialog { width:min(760px,calc(100% - 30px)); }
.large-dialog { width:min(920px,calc(100% - 30px)); }
.transaction-dialog { width:min(1120px,calc(100% - 24px)); }
.document-preview-dialog { width:calc(100vw - 32px); max-width:1440px; height:calc(100vh - 32px); max-height:none; }
dialog::backdrop { background:rgba(10,25,19,.55); backdrop-filter:blur(3px); }
dialog form,#jobDetail,#productDetail,#recordDetail,#customerDetail,#jobDetailPreview { padding:28px; }
.user-dialog-content { padding:28px; }
.user-sign-in-list { display:grid; gap:8px; }
.user-card { display:flex; align-items:center; gap:12px; width:100%; padding:13px; border:1px solid var(--line); border-radius:11px; color:var(--ink); background:#fafbfa; text-align:left; }
.user-card.active { border-color:#7fa18e; background:#edf4ef; }
.user-avatar { display:grid; place-items:center; flex:0 0 auto; width:38px; height:38px; border-radius:10px; color:white; background:var(--green); font-size:10px; font-weight:900; }
.user-card strong,.user-card small { display:block; }
.user-card strong { font-size:12px; }
.user-card small { margin-top:3px; color:var(--muted); font-size:9px; }
.user-card .signed-in { margin-left:auto; color:var(--green-2); font-size:9px; font-weight:900; }
.user-create-form,.user-login-form { margin-top:22px; padding:20px !important; border:1px solid var(--line); border-radius:12px; background:#f7f9f7; }
.user-create-form h3,.user-login-form h3 { margin:0 0 15px; }
.user-login-form { border-color:#cbd9d0; background:#f1f6f2; }
#recordDetail { min-height:100%; padding:38px 44px; }
#jobDetailPreview { min-height:100%; padding:38px 44px; }
#recordDetail .detail-top { padding-bottom:24px; border-bottom:1px solid var(--line); }
#recordDetail .detail-top h2 { margin-bottom:7px; font-size:30px; letter-spacing:-.8px; }
#recordDetail .detail-lines { margin-top:28px; }
#recordDetail .detail-line { padding:20px 4px; }
#recordDetail .detail-line>strong { font-size:14px; }
#recordDetail .detail-line>div>strong { font-size:13px; }
#recordDetail .detail-line small { font-size:10px; line-height:1.5; }
#recordDetail .document-summary { width:100%; margin:0; padding:18px 22px; border-radius:12px; background:#f3f5f2; box-sizing:border-box; }
#recordDetail .document-summary>div { padding:8px 0; font-size:11px; }
#recordDetail .document-summary>div:last-child { font-size:16px; }
#recordDetail .order-jobs { margin-top:30px; padding:22px; }
#recordDetail .order-jobs h3 { font-size:16px; }
#recordDetail .order-jobs>div { padding:12px 0; font-size:11px; }
#recordDetail .record-actions { position:sticky; bottom:-38px; margin:30px -44px -38px; padding:18px 44px; border-top:1px solid var(--line); background:rgba(255,255,255,.96); backdrop-filter:blur(8px); }
#recordDetail .document-parties { margin-top:24px; }
.document-edit-toolbar { display:flex; justify-content:flex-end; gap:8px; margin-top:18px; }
.document-product-toolbar { margin-top:25px; margin-bottom:-18px; }
.document-action-menu { display:flex; align-items:center; gap:7px; color:var(--muted); font-size:9px; font-weight:900; text-transform:uppercase; }
.document-action-menu select { min-width:165px; text-transform:none; }
.document-header-actions { display:flex; align-items:center; gap:10px; }
.document-header-actions .gmail-button { padding:9px 12px; }
.document-top-row { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; margin-top:14px; }
.document-top-meta { display:flex; flex-wrap:wrap; gap:9px; margin-top:18px; }
.document-top-row .document-top-meta { flex:0 0 auto; margin-top:0; }
.document-top-meta>div { min-width:165px; padding:12px 14px; border:1px solid var(--line); border-radius:10px; background:#fafbfa; }
.document-top-meta span,.document-top-meta strong { display:block; }
.document-top-meta span { margin-bottom:5px; color:var(--muted); font-size:8px; font-weight:900; text-transform:uppercase; }
.document-top-meta strong { font-size:12px; }
.document-tag-editor { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-top:12px; padding:14px 16px; border:1px solid var(--line); border-radius:11px; background:#fafbfa; }
.document-tag-editor .job-tags { margin:6px 0 0; }
.document-tag-editor .job-tag-entry { flex:0 0 310px; max-width:310px; margin:0; }
.document-tag-editor .job-tag-entry select { min-width:0; padding:7px 9px; font-size:9px; }
.document-tag-editor .job-tag-entry button { padding:7px 10px; font-size:9px; }
@media(max-width:700px){.document-tag-editor{align-items:stretch;flex-direction:column}.document-tag-editor .job-tag-entry{flex:auto;max-width:none}.transaction-tag-picker{align-items:stretch;flex-direction:column}}
.document-totals-panel { width:min(480px,100%); margin:24px 0 0 auto; }
.document-pricing-editors { width:100%; margin-top:10px; }
.document-pricing-editor { display:grid; grid-template-columns:1fr auto; gap:10px; align-items:end; width:100%; padding:16px; border:1px solid #b9d2bd; border-radius:11px; background:#f5faf5; box-shadow:0 9px 24px rgba(40,73,45,.08); box-sizing:border-box; }
.document-pricing-editor[hidden] { display:none; }
.document-pricing-editor>div { grid-column:1/-1; }
.document-pricing-editor label { min-width:0; }
.document-pricing-editor label select,.document-pricing-editor label input { width:100%; box-sizing:border-box; }
.document-pricing-editor h3 { margin:0 0 4px; font-size:14px; }
.document-pricing-editor>div>span { color:var(--muted); font-size:9px; }
.document-pricing-editor button { min-height:38px; white-space:nowrap; }
.gmail-button { display:inline-flex; align-items:center; padding:10px 14px; border-radius:9px; color:white; background:#b63b32; font-size:10px; font-weight:800; text-decoration:none; box-shadow:0 5px 14px rgba(182,59,50,.18); }
.gmail-button:hover { background:#9d3029; }
.dialog-heading { display:flex; justify-content:space-between; align-items:flex-start; margin-bottom:23px; }
.dialog-heading h2 { margin:0; }
.icon-button { display:grid; place-items:center; width:34px; height:34px; border:0; border-radius:50%; background:#f0f2ef; font-size:23px; }
.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:15px; }
.form-grid.three-column { grid-template-columns:repeat(3,1fr); }
.form-grid label { color:#4f5e56; font-size:11px; font-weight:700; }
.form-grid .wide { grid-column:1/-1; }
.form-grid .span-two { grid-column:span 2; }
.form-grid input,.form-grid select,.form-grid textarea { display:block; width:100%; margin-top:7px; padding:11px 12px; border:1px solid #dce2de; border-radius:9px; outline:none; }
.select-with-action { display:grid; grid-template-columns:1fr auto; gap:7px; align-items:end; }
.select-with-action select { min-width:0; }
.select-with-action button { height:40px; padding:8px 12px; white-space:nowrap; }
.form-grid textarea { min-height:80px; resize:vertical; }
.product-tax-setting { display:flex; align-items:center; gap:8px; align-self:end; min-height:40px; padding:0 12px; border:1px solid #dce2de; border-radius:9px; background:#f8faf8; box-sizing:border-box; font-weight:800; }
.product-tax-setting input { width:auto; margin:0; }
.dialog-actions { display:flex; justify-content:flex-end; gap:9px; margin-top:22px; }
.packing-slip-toolbar { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-bottom:14px; padding:13px 15px; border:1px solid var(--line); background:#f4f7f8; }
.packing-slip-toolbar strong,.packing-slip-toolbar span { display:block; }
.packing-slip-toolbar strong { font-size:11px; }
.packing-slip-toolbar span { margin-top:4px; color:var(--muted); font-size:9px; }
.packing-slip-products { display:grid; gap:8px; }
.packing-slip-product { display:grid; grid-template-columns:22px 1fr auto; gap:12px; align-items:center; padding:13px 15px; border:1px solid var(--line); background:white; cursor:pointer; }
.packing-slip-product:has(input:checked) { border-color:#91bd96; background:#f2f8f3; }
.packing-slip-product input { width:17px; height:17px; accent-color:var(--green); }
.packing-slip-product strong,.packing-slip-product small { display:block; }
.packing-slip-product strong { font-size:11px; }
.packing-slip-product small { margin-top:5px; color:var(--muted); font-size:8px; line-height:1.45; }
.packing-slip-product b { color:var(--blue); font-size:10px; white-space:nowrap; }
.small-button { padding:8px 11px; border:0; font-size:10px; font-weight:800; }
.option-editor { margin-top:23px; padding-top:21px; border-top:1px solid var(--line); }
.option-editor-heading { display:flex; justify-content:space-between; align-items:center; }
.option-editor-heading h3 { margin:0; font-size:15px; }
.helper-text { margin:6px 0 12px; color:var(--muted); font-size:10px; }
.option-group-card { margin-top:14px; padding:14px; border:1px solid #d6dfd8; border-radius:12px; background:#f8faf8; }
.option-group-header { display:grid; grid-template-columns:1fr auto auto; gap:9px; align-items:end; }
.option-group-header label { color:var(--muted); font-size:9px; font-weight:800; text-transform:uppercase; }
.option-group-header input { width:100%; margin-top:5px; padding:10px 11px; border:1px solid #cfd9d1; border-radius:9px; color:var(--ink); background:white; font-size:12px; font-weight:800; text-transform:none; }
.option-selection-head,.option-row { display:grid; grid-template-columns:1.35fr 1.15fr 110px 82px 34px; gap:9px; }
.option-selection-head { margin-top:15px; padding:0 2px; color:var(--muted); font-size:9px; font-weight:800; text-transform:uppercase; }
.option-row { margin-top:8px; }
.option-row input,.option-row select { width:100%; padding:10px 11px; border:1px solid #dce2de; border-radius:9px; background:white; }
.option-default-control { display:flex; align-items:center; justify-content:center; gap:6px; min-height:40px; padding:0 8px; border:1px solid #dce2de; border-radius:9px; color:var(--green-2); background:white; font-size:8px; font-weight:900; text-transform:uppercase; cursor:pointer; }
.option-default-control input { width:auto; margin:0; padding:0; accent-color:var(--green); }
.option-group-empty { margin:12px 0 0; padding:12px; border:1px dashed #ccd8cf; border-radius:9px; color:var(--muted); font-size:10px; text-align:center; }
.tier-head,.tier-row { display:grid; grid-template-columns:1fr 1fr 1fr 34px; gap:9px; }
.tier-head { margin-top:14px; padding:0 2px; color:var(--muted); font-size:9px; font-weight:800; text-transform:uppercase; }
.tier-row { margin-top:8px; }
.tier-row input { width:100%; padding:10px; border:1px solid #dce2de; border-radius:9px; }
.product-size-preset-editor { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:15px; padding:14px; border:1px solid #dce2de; border-radius:11px; background:#f8faf8; }
.product-size-preset-editor label { color:var(--muted); font-size:9px; font-weight:800; }
.product-size-preset-editor select,.product-size-preset-editor input { display:block; width:100%; margin-top:7px; padding:10px 12px; border:1px solid #dce2de; border-radius:9px; background:white; }
.product-size-preset-actions { display:flex; grid-column:1/-1; justify-content:flex-end; gap:8px; padding-top:2px; }
.decoration-head,.decoration-row { display:grid; grid-template-columns:1fr 150px 150px; gap:9px; }
.decoration-head { margin-top:18px; color:var(--muted); font-size:9px; font-weight:800; text-transform:uppercase; }
.decoration-row { margin-top:8px; }
.decoration-row input { width:100%; padding:10px; border:1px solid #dce2de; border-radius:9px; background:white; }
.product-type-section.hidden { display:none; }
.remove-option { border:0; border-radius:9px; color:#9b4c3b; background:#fff0eb; font-size:18px; }
.calculator { display:grid; grid-template-columns:1.15fr .85fr; gap:20px; margin-top:22px; }
.quick-price-workspace { max-width:980px; margin:0 auto; border-top:5px solid var(--orange); }
.quick-price-workspace .option-editor-heading { margin-bottom:15px; }
.quick-price-line { margin-top:0; padding:22px; }
.quick-price-line .quote-line-top { grid-template-columns:1fr; }
.quick-price-line .line-price-controls { grid-template-columns:140px 150px; }
.quick-price-summary { display:grid; grid-template-columns:1.4fr repeat(2,.7fr) 1fr; gap:10px; margin-top:16px; }
.quick-price-summary>div { padding:16px; border:1px solid var(--line); border-radius:11px; background:#f7f9f7; }
.quick-price-summary span,.quick-price-summary strong,.quick-price-summary small { display:block; }
.quick-price-summary span { margin-bottom:6px; color:var(--muted); font-size:8px; font-weight:900; text-transform:uppercase; }
.quick-price-summary strong { font-size:14px; }
.quick-price-summary small { margin-top:7px; color:var(--muted); font-size:9px; line-height:1.45; }
.quick-price-summary .quick-price-grand-total { color:white; border-color:var(--green); background:var(--green); }
.quick-price-summary .quick-price-grand-total span { color:#d7efd8; }
.quick-price-summary .quick-price-grand-total strong { font-size:24px; }
.quick-price-summary .quick-price-detail { grid-column:1/-1; }
.quick-price-empty { grid-column:1/-1; text-align:center; }
.quick-price-empty strong { margin-bottom:5px; }
.quick-price-empty span { margin:0; text-transform:none; }
.calculator-panel { padding:19px; border:1px solid var(--line); border-radius:13px; background:#fafbfa; }
.calculator-panel h3 { margin-bottom:15px; font-size:15px; }
.dimension-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:9px; }
.dimension-grid label { color:var(--muted); font-size:9px; font-weight:800; text-transform:uppercase; }
.dimension-grid input { width:100%; margin-top:6px; padding:10px; border:1px solid var(--line); border-radius:8px; background:white; }
.dimension-grid.quantity-only { grid-template-columns:minmax(180px,1fr); }
.dimension-field.hidden { display:none; }
.line-product-note { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:10px; color:var(--muted); font-size:9px; }
.line-product-note:empty { display:none; }
.line-product-note a,.supplier-product-link { color:var(--green-2); font-weight:800; text-decoration:none; }
.supplier-product-link { display:inline-block; margin-top:10px; }
.calc-options { display:grid; gap:8px; margin-top:16px; }
.calc-option { display:flex; justify-content:space-between; align-items:center; gap:10px; padding:9px 10px; border:1px solid var(--line); border-radius:8px; background:white; font-size:10px; }
.calc-option label { display:flex; gap:8px; align-items:center; cursor:pointer; }
.price-result { display:flex; flex-direction:column; justify-content:space-between; padding:21px; border-radius:13px; color:white; background:var(--green); }
.price-result .eyebrow { color:var(--lime); }
.price-total { display:block; margin:7px 0 2px; font-size:38px; letter-spacing:-1.5px; }
.price-breakdown { display:grid; gap:8px; margin-top:20px; padding-top:16px; border-top:1px solid rgba(255,255,255,.2); }
.price-line { display:flex; justify-content:space-between; gap:12px; color:#c7d8d1; font-size:10px; }
.price-line.total-line { padding-top:8px; border-top:1px solid rgba(255,255,255,.16); color:white; font-size:12px; font-weight:800; }
.product-detail-actions { display:flex; gap:8px; margin-top:19px; }
.danger-button { margin-left:auto; padding:10px 13px; border:0; border-radius:9px; color:#a24431; background:#fff0eb; font-size:10px; font-weight:800; }
.workflow-banner { display:flex; align-items:center; gap:12px; margin-bottom:17px; padding:13px 17px; border:1px solid var(--line); border-radius:12px; color:#9aa49f; background:white; font-size:10px; font-weight:800; }
.invoice-view-filters { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-bottom:16px; }
.invoice-view-filters button { padding:18px 20px; border:1px solid var(--line); border-top:4px solid var(--invoice-color); border-radius:13px; color:var(--ink); background:white; text-align:left; }
.invoice-view-filters button.active { border-color:#aebdd6; background:var(--invoice-soft); box-shadow:0 10px 22px rgba(26,64,124,.08); }
.invoice-view-filters button.past-due { border-top-color:#b84d39; }
.invoice-view-filters span,.invoice-view-filters strong,.invoice-view-filters small { display:block; }
.invoice-view-filters span { color:var(--muted); font-size:9px; font-weight:900; text-transform:uppercase; }
.invoice-view-filters strong { margin:6px 0 3px; font-size:21px; }
.invoice-view-filters small { color:var(--muted); font-size:9px; }
#quotesView .workflow-step.active { color:var(--quote-color); }
#ordersView .workflow-step.active { color:var(--order-color); }
.record-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:15px; }
#orderGrid { display:block; }
.order-record-group { margin-bottom:28px; }
.order-group-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin-bottom:12px; padding:14px 16px; border-radius:12px; background:#edf1ed; }
.order-group-heading { border-left:4px solid var(--order-color); background:var(--order-soft); }
.order-group-heading h3 { margin:0; font-size:17px; }
.order-group-heading span { color:var(--muted); font-size:10px; }
.completed-order-group .order-group-heading { border:1px solid #d6e4b2; background:#f5f9e8; }
.record-card { padding:20px; border:1px solid var(--line); border-radius:14px; background:white; cursor:pointer; transition:.18s ease; }
.record-card-quote { border-top:4px solid var(--quote-color); }
.record-card-order { border-top:4px solid var(--order-color); }
.record-card-invoice { border-top:4px solid var(--invoice-color); }
.record-card-quote .record-number { color:var(--quote-color); }
.record-card-order .record-number { color:var(--order-color); }
.record-card-invoice .record-number { color:var(--invoice-color); }
.record-card:hover { transform:translateY(-2px); box-shadow:0 12px 30px rgba(28,45,37,.08); }
.record-card-top { display:flex; justify-content:space-between; align-items:flex-start; gap:12px; }
.record-number { display:block; margin-bottom:6px; color:var(--green-2); font-size:9px; font-weight:900; letter-spacing:.8px; }
.record-card h3 { margin:0; font-size:16px; }
.record-card>p { margin:13px 0; color:var(--muted); font-size:10px; }
.record-lines { display:grid; gap:5px; min-height:45px; color:#4f5e56; font-size:10px; }
.record-card-tags { display:flex; flex-wrap:wrap; gap:5px; margin:-4px 0 12px; }
.record-card-tags span { padding:5px 7px; border-radius:99px; color:var(--blue); background:var(--invoice-soft); font-size:8px; font-weight:900; text-transform:uppercase; }
.record-card-quote .record-card-tags span { color:#9a3c08; background:var(--quote-soft); }
.record-card-order .record-card-tags span { color:#24612d; background:var(--order-soft); }
.record-total { display:flex; justify-content:space-between; margin-top:15px; padding-top:14px; border-top:1px solid var(--line); font-size:11px; }
.record-total strong { font-size:15px; }
.status-Draft { color:#695a31; background:#f6edce; }.status-Converted,.status-Invoiced,.status-Paid { color:#275d43; background:#dcf0e3; }
.status-InProduction,.status-Unpaid { color:#89462f; background:#ffe6db; }.status-ReadytoInvoice { color:#245a7a; background:#ddecf5; }
.status-AwaitingJobCreation { color:#76521f; background:#fff0cf; }
.status-Completed-NotInvoiced { color:#5d6723; background:#eef4cf; }
.status-PartiallyPaid { color:#6c5620; background:#f8edc8; }
#transactionDialog[data-document-type="quote"] .dialog-heading { padding-bottom:17px; border-bottom:4px solid var(--quote-color); }
#transactionDialog[data-document-type="order"] .dialog-heading { padding-bottom:17px; border-bottom:4px solid var(--order-color); }
#transactionDialog[data-document-type="invoice"] .dialog-heading { padding-bottom:17px; border-bottom:4px solid var(--invoice-color); }
#transactionDialog[data-document-type="quote"] #saveTransaction { background:var(--quote-color); }
#transactionDialog[data-document-type="order"] #saveTransaction { background:var(--order-color); }
#transactionDialog[data-document-type="invoice"] #saveTransaction { background:var(--invoice-color); }
#recordDialog[data-document-type="quote"] #recordDetail { border-top:8px solid var(--quote-color); }
#recordDialog[data-document-type="order"] #recordDetail { border-top:8px solid var(--order-color); }
#recordDialog[data-document-type="invoice"] #recordDetail { border-top:8px solid var(--invoice-color); }
#recordDialog[data-document-type="quote"] .detail-top .eyebrow { color:var(--quote-color); }
#recordDialog[data-document-type="order"] .detail-top .eyebrow { color:var(--order-color); }
#recordDialog[data-document-type="invoice"] .detail-top .eyebrow { color:var(--invoice-color); }
#recordDialog[data-document-type="quote"] .record-actions .primary { background:var(--quote-color); }
#recordDialog[data-document-type="quote"] #addRecordProduct { background:var(--quote-color); }
#recordDialog[data-document-type="order"] .record-actions .primary,
#recordDialog[data-document-type="order"] .payment-ledger .primary { background:var(--order-color); }
#recordDialog[data-document-type="order"] #addRecordProduct { background:var(--order-color); }
#recordDialog[data-document-type="invoice"] .payment-ledger .primary { background:var(--invoice-color); }
#recordDialog[data-document-type="invoice"] #addRecordProduct { background:var(--invoice-color); }
#recordProductDialog[data-document-type="quote"] .dialog-heading { border-bottom:4px solid var(--quote-color); }
#recordProductDialog[data-document-type="quote"] #saveRecordProduct { background:var(--quote-color); }
#recordProductDialog[data-document-type="order"] .dialog-heading { border-bottom:4px solid var(--order-color); }
#recordProductDialog[data-document-type="order"] #saveRecordProduct { background:var(--order-color); }
#recordProductDialog[data-document-type="invoice"] .dialog-heading { border-bottom:4px solid var(--invoice-color); }
#recordProductDialog[data-document-type="invoice"] #saveRecordProduct { background:var(--invoice-color); }
#recordDialog[data-document-type="quote"] .document-summary { background:var(--quote-soft); }
#recordDialog[data-document-type="order"] .document-summary { background:var(--order-soft); }
#recordDialog[data-document-type="invoice"] .document-summary { background:var(--invoice-soft); }
.production-board { display:grid; gap:10px; }
.production-list-toolbar { display:flex; align-items:center; justify-content:space-between; gap:16px; margin:18px 0 10px; }
.production-list-toolbar h3 { margin:2px 0 0; font-size:17px; }
.production-view-switcher { display:flex; gap:4px; padding:4px; border:1px solid var(--line); border-radius:10px; background:#eef2ef; }
.production-view-switcher button { display:flex; align-items:center; gap:7px; padding:8px 11px; border:0; border-radius:7px; color:var(--muted); background:transparent; font:inherit; font-size:9px; font-weight:800; cursor:pointer; }
.production-view-switcher button span { font-size:14px; line-height:1; }
.production-view-switcher button.active { color:white; background:var(--green-2); box-shadow:0 3px 8px rgba(34,84,49,.18); }
.production-filter-workspace { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr); gap:16px; align-items:start; margin-bottom:16px; }
.production-filter-panel { min-width:0; padding:16px; border:1px solid var(--line); border-radius:13px; background:white; }
.production-filter-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.production-filter-heading h3 { margin:2px 0 0; font-size:15px; }
.production-filter-heading>div:last-child { display:flex; align-items:center; gap:12px; }
.production-filter-heading strong { color:var(--green-2); font-size:11px; }
.production-filter-grid { display:grid; grid-template-columns:repeat(2,minmax(150px,1fr)); gap:10px; margin-top:14px; }
.production-filter-grid label { color:var(--muted); font-size:8px; font-weight:900; text-transform:uppercase; }
.production-filter-grid select { width:100%; margin-top:5px; padding:9px 10px; border:1px solid #d7dfd9; border-radius:8px; color:var(--ink); background:#f9faf9; font-size:10px; font-weight:700; text-transform:none; }
.production-date-filter input { display:block; width:100%; margin-top:6px; padding:8px 9px; border:1px solid #d7dfd9; border-radius:8px; color:var(--ink); background:white; box-sizing:border-box; font-size:10px; }
.production-date-filter input[hidden] { display:none; }
.production-filter-actions { display:flex; align-items:center; justify-content:flex-end; gap:14px; margin-top:14px; padding-top:13px; border-top:1px solid var(--line); }
.production-filter-actions span { color:var(--muted); font-size:9px; }
.production-filter-actions button { min-width:145px; }
.saved-production-filters { min-width:0; padding:16px; border:1px solid var(--line); border-radius:13px; background:#f8faf8; }
.saved-filter-heading { display:flex; align-items:stretch; flex-direction:column; gap:12px; }
.saved-filter-heading h3 { margin:2px 0 0; font-size:15px; }
.save-filter-form { display:flex; gap:8px; }
.save-filter-form input { min-width:0; flex:1; padding:9px 11px; border:1px solid #d7dfd9; border-radius:8px; }
.saved-filter-list { display:grid; grid-template-columns:1fr; gap:9px; margin-top:13px; }
.saved-filter-row { display:grid; grid-template-columns:1fr auto 32px; gap:8px; align-items:center; padding:10px; border:1px solid #dce3de; border-radius:9px; background:white; }
.saved-filter-row strong,.saved-filter-row span { display:block; }
.saved-filter-row strong { font-size:10px; }
.saved-filter-row span { margin-top:3px; color:var(--muted); font-size:8px; }
.saved-filter-row .remove-option { width:32px; height:32px; }
.production-card { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:17px 19px; border:1px solid var(--line); border-radius:13px; background:white; }
.production-job-open { cursor:pointer; transition:border-color .15s,box-shadow .15s,transform .15s; }
.production-job-open:hover { border-color:#9ebea5; box-shadow:0 7px 20px rgba(31,66,42,.08); transform:translateY(-1px); }
.production-job-open:focus-visible { outline:3px solid rgba(69,168,70,.25); outline-offset:2px; }
.production-job-info { flex:1; min-width:0; }
.production-card h3 { margin:0 0 5px; font-size:14px; }
.production-card p { margin:0; color:var(--muted); font-size:10px; }
.production-dates { display:flex; flex-wrap:wrap; gap:7px; margin-top:11px; }
.production-dates span { padding:7px 9px; border-radius:8px; color:#5f6d65; background:#f1f4f1; font-size:9px; }
.production-dates strong { margin-right:5px; color:var(--ink); }
.production-dates .must-have-date { color:#8d3428; background:#fff0eb; }
.stage-control { display:grid; gap:8px; }
.stage-control select { min-width:145px; font-weight:700; }
.outsource-vendor-control { display:grid; gap:7px; padding:11px; border:1px solid #e4cf9c; border-radius:9px; background:#fff8e7; }
.outsource-vendor-control label { color:#76501e; font-size:8px; font-weight:900; text-transform:uppercase; }
.outsource-vendor-control label select { display:block; width:100%; margin-top:5px; border-color:#d9bd79; background:white; text-transform:none; }
.outsource-vendor-control.compact { min-width:190px; padding:8px; }
.outsource-vendor-control.compact label select { min-width:0; padding:8px; font-size:9px; }
.inline-vendor-add { display:grid; grid-template-columns:minmax(120px,1fr) auto auto; gap:6px; }
.inline-vendor-add input { min-width:0; padding:8px; border:1px solid #d9bd79; background:white; }
.inline-vendor-add.hidden { display:none; }
.job-tags { display:flex; flex-wrap:wrap; gap:6px; margin-top:12px; }
.job-tags button,.job-tags span { padding:6px 9px; border:0; border-radius:99px; color:#345143; background:#e9f0eb; font-size:9px; font-style:normal; font-weight:800; }
.job-tags .inherited-tag { color:#24466f; background:var(--invoice-soft); }
.job-tags button:hover { color:#8f3e31; background:#fbe9e5; }
.job-tags em { color:var(--muted); font-size:9px; }
.job-tags.large { margin:16px 0; }
.job-tags.large button,.job-tags.large span { padding:9px 12px; font-size:10px; }
.production-task-summary { display:flex; gap:8px; align-items:center; margin-top:10px; color:var(--muted); font-size:9px; }
.production-task-summary strong { color:#76501e; }
.production-columns-view { display:block; overflow-x:auto; border:1px solid var(--line); border-radius:13px; background:white; }
.production-column-table { min-width:1080px; }
.production-column-head,.production-column-row { display:grid; grid-template-columns:minmax(190px,1.25fr) minmax(175px,1.1fr) minmax(165px,1fr) minmax(160px,1fr) minmax(145px,.9fr) 165px; gap:14px; align-items:center; }
.production-column-head { padding:11px 14px; color:#66746b; background:#eef2ef; font-size:8px; font-weight:900; letter-spacing:.05em; text-transform:uppercase; }
.production-column-row { padding:13px 14px; border-top:1px solid var(--line); background:white; }
.production-column-row:first-of-type { border-top:0; }
.production-column-row>div { min-width:0; }
.production-column-row strong,.production-column-row span { display:block; }
.production-column-row strong { overflow:hidden; font-size:10px; text-overflow:ellipsis; white-space:nowrap; }
.production-column-row span { margin-top:4px; color:var(--muted); font-size:8px; line-height:1.35; }
.production-column-job span { margin:0 0 4px; color:var(--green-2); font-weight:900; }
.production-column-job strong { font-size:11px; }
.production-column-dates .must-have-date-text { color:#a63b2e; }
.production-column-assigned span { margin-top:2px; }
.job-tags.compact { margin-top:0; }
.job-tags.compact span { display:inline-block; margin:0 3px 3px 0; padding:4px 6px; font-size:7px; }
.production-column-task { margin-top:5px!important; color:#76501e!important; font-weight:800; }
.production-column-row .stage-control select { width:100%; min-width:0; padding:8px; font-size:9px; }
.job-tag-entry { display:flex; gap:8px; max-width:590px; margin-top:10px; }
.job-tag-entry input,.job-tag-entry select { flex:1; min-width:170px; padding:9px 11px; border:1px solid var(--line); border-radius:9px; background:#fff; }
.transaction-tag-picker { display:flex; gap:8px; margin-top:7px; }
.transaction-tag-picker select { flex:0 1 300px; max-width:300px; margin-top:0; padding:7px 9px; font-size:9px; }
.transaction-tag-picker button { padding:7px 10px; font-size:9px; white-space:nowrap; }
.job-task-section,.job-tag-section,.job-stage-section,.job-date-section { margin-top:24px; padding:24px; border:1px solid var(--line); border-radius:12px; background:#fff; }
.job-task-section h3,.job-tag-section h3,.job-stage-section h3,.job-date-section h3 { margin:3px 0 0; font-size:18px; }
.job-date-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; }
.job-date-heading>div:last-child { padding:10px 13px; border-radius:9px; background:#eef2ef; text-align:right; }
.job-date-heading span,.job-date-heading strong { display:block; }
.job-date-heading span { margin-bottom:4px; color:var(--muted); font-size:8px; font-weight:800; text-transform:uppercase; }
.job-date-fields { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-top:18px; }
.job-date-fields label { color:var(--muted); font-size:9px; font-weight:800; }
.job-date-fields input,.job-date-fields select { width:100%; margin-top:6px; padding:10px 11px; border:1px solid var(--line); border-radius:9px; background:#fff; }
.job-date-fields input[readonly] { color:#456052; background:#edf3ef; }
.job-artwork-toggle,.must-have-toggle { display:flex; align-items:center; gap:8px; margin-top:15px; padding:10px 12px; border-radius:9px; background:#eef3ef; font-size:10px; font-weight:800; }
.must-have-toggle { color:#8d3428; background:#fff0eb; }
.must-have-notice { margin-top:13px; padding:11px 13px; border-radius:9px; color:#8d3428; background:#fff0eb; font-size:10px; font-weight:900; }
.job-stage-section { display:flex; align-items:center; justify-content:space-between; gap:20px; background:#f6f8f6; }
.job-stage-section select { min-width:230px; font-weight:800; }
.job-stage-controls { display:grid; gap:10px; width:min(100%,300px); }
.job-stage-controls>select { width:100%; }
.job-two-column-layout { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(390px,.8fr); gap:20px; align-items:start; margin-top:18px; }
.job-left-column,.job-right-column { min-width:0; }
.job-left-column>section:first-child,.job-right-column>section:first-child { margin-top:0; }
.job-right-column { position:sticky; top:0; }
.job-right-column .job-date-fields { grid-template-columns:1fr 1fr; }
.job-right-column .job-stage-section { align-items:stretch; flex-direction:column; }
.job-right-column .job-stage-section select { width:100%; min-width:0; }
.job-right-column .job-stage-controls { width:100%; }
.job-right-column .job-detail-summary { grid-template-columns:1fr; margin-top:14px; }
.job-right-column .job-detail-summary>div { min-height:0; }
.job-right-column .job-price-summary { grid-template-columns:1fr; width:100%; margin-top:14px; }
.job-assignment-section,.job-assets-section { margin-top:18px; padding:20px; border:1px solid var(--line); border-radius:12px; background:#fff; }
.job-assignment-section h3,.job-assets-section h3 { margin:3px 0 0; font-size:17px; }
.job-assignment-fields { display:grid; gap:11px; margin-top:16px; }
.job-assignment-fields label { color:var(--muted); font-size:9px; font-weight:800; }
.job-assignment-fields select { width:100%; margin-top:6px; padding:10px 11px; border:1px solid var(--line); border-radius:9px; background:white; }
.role-assignment { padding:10px 12px; border-left:4px solid transparent; border-radius:9px; }
.role-assignment select { font-weight:800; }
.role-sales { border-color:var(--quote-color); color:#914013 !important; background:var(--quote-soft); }
.role-sales select { border-color:#f3b28c; }
.role-designer { border-color:var(--invoice-color); color:#244b80 !important; background:var(--invoice-soft); }
.role-designer select { border-color:#afc2df; }
.role-installer { border-color:var(--order-color); color:#286d32 !important; background:var(--order-soft); }
.role-installer select { border-color:#abd2ae; }
.compact-job-tasks { margin-top:14px; padding:16px; }
.compact-task-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.compact-task-heading>span { padding:5px 8px; border-radius:99px; color:#76501e; background:#f8edc8; font-size:8px; font-weight:900; }
.compact-job-tasks .job-task-list { gap:6px; margin-top:12px; }
.compact-job-tasks .job-task { grid-template-columns:27px 1fr 25px; gap:8px; padding:9px; }
.compact-job-tasks .task-check { width:25px; height:25px; }
.compact-job-tasks .task-delete { width:24px; height:24px; font-size:14px; }
.compact-job-tasks .job-task strong { font-size:9px; line-height:1.35; }
.compact-job-tasks .job-task span { margin-top:3px; font-size:8px; }
.prominent-task-entry { margin-top:12px; padding:12px; border:2px solid #b9cdbf; background:#f4f8f5; }
.prominent-task-entry textarea { min-height:110px; font-size:11px; }
.prominent-task-entry>div { display:grid; grid-template-columns:minmax(0,1fr) auto; }
.prominent-task-entry button { min-width:112px; }
.job-assets-list { display:grid; gap:8px; margin-top:14px; }
.job-asset-row { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px; border:1px solid var(--line); border-radius:9px; background:#fafbfa; }
.job-asset-row strong,.job-asset-row span { display:block; }
.job-asset-row strong { font-size:10px; }
.job-asset-row span { margin-top:4px; color:var(--muted); font-size:8px; }
.job-asset-actions { display:flex; align-items:center; gap:7px; }
.job-asset-actions button { height:30px; border:0; border-radius:7px; font-weight:800; }
.job-asset-actions .job-asset-download { width:auto; padding:0 10px; color:#24466f; background:var(--invoice-soft); font-size:8px; }
.job-asset-actions .job-asset-remove { width:30px; padding:0; color:#9b4c3b; background:#fff0eb; font-size:17px; }
.job-task-list { display:grid; gap:8px; margin-top:17px; }
.job-task { display:grid; grid-template-columns:32px 1fr 30px; gap:11px; align-items:start; padding:13px; border:1px solid var(--line); border-radius:10px; background:#fafbfa; }
.job-task strong,.job-task span { display:block; }
.job-task strong { font-size:11px; line-height:1.5; white-space:pre-wrap; }
.job-task span { margin-top:5px; color:var(--muted); font-size:9px; }
.job-task.completed strong { color:#8c9891; text-decoration:line-through; }
.task-check { display:grid; place-items:center; width:30px; height:30px; border:1px solid #b8c6bd; border-radius:8px; color:white; background:white; font-weight:900; }
.job-task.completed .task-check { border-color:var(--green); background:var(--green); }
.task-delete { width:28px; height:28px; border:0; border-radius:7px; color:#9b4c3b; background:#fff0eb; font-size:17px; }
.job-task-entry { margin-top:14px; padding:14px; border:1px solid var(--line); border-radius:10px; background:#fafbfa; }
.job-task-entry textarea { width:100%; min-height:88px; padding:11px; resize:vertical; border:1px solid var(--line); border-radius:9px; font:inherit; }
.job-task-entry>div { display:flex; gap:8px; margin-top:9px; }
.job-task-entry input,.job-task-entry select { flex:1; padding:9px 11px; border:1px solid var(--line); border-radius:9px; background:white; }
.job-date-section-top { margin-top:14px; border-color:#cfdbd3; background:#f8faf8; }
.job-tag-section-top { margin-top:10px; }
.transaction-role-defaults { display:grid; grid-template-columns:repeat(3,minmax(125px,1fr)); gap:7px; flex:1; max-width:560px; padding:9px 10px; border:1px solid #d6dfd9; border-radius:10px; background:#f7faf7; }
.transaction-role-defaults.with-due-date { grid-template-columns:repeat(4,minmax(115px,1fr)); max-width:720px; }
.transaction-role-defaults label { min-width:0; }
.transaction-role-defaults span { display:block; margin-bottom:4px; color:var(--muted); font-size:7px; font-weight:900; letter-spacing:.3px; text-transform:uppercase; }
.transaction-role-defaults input,.transaction-role-defaults select { width:100%; min-width:0; height:31px; padding:5px 7px; border:1px solid #ccd8cf; border-radius:7px; color:var(--ink); background:white; font-size:8px; font-weight:800; box-sizing:border-box; }
.empty-inline { padding:25px 0; color:var(--muted); font-size:11px; text-align:center; }
.tier-display { display:grid; grid-template-columns:repeat(3,1fr); gap:9px; margin-top:20px; }
.tier-display>div { padding:12px; border:1px solid var(--line); border-radius:9px; background:#fafbfa; }
.tier-display span,.tier-display strong { display:block; }.tier-display span { margin-bottom:5px; color:var(--muted); font-size:9px; }.tier-display strong { font-size:11px; }
.global-cost-summary { margin:18px 0 0; padding:12px 14px; border-radius:9px; color:var(--muted); background:#f1f6f1; font-size:11px; }
.global-cost-summary strong { color:var(--ink); }
.product-tax-status { display:inline-flex; margin-top:10px; padding:6px 9px; border-radius:99px; color:#275d3a; background:#e7f3ea; font-size:9px; font-weight:900; }
.product-tax-status.exempt { color:#7a4c18; background:#fff1d9; }
.line-builder { margin-top:23px; padding-top:20px; border-top:1px solid var(--line); }
.line-option-groups { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; width:100%; }
.line-options .line-option-group { display:block; padding:0; border:0; color:var(--muted); background:transparent; font-size:9px; font-weight:800; text-transform:uppercase; }
.line-option-group select { width:100%; margin-top:5px; color:var(--ink); font-size:11px; font-weight:600; text-transform:none; }
.record-product-builder { margin-top:0; padding-top:0; border-top:0; }
.record-product-builder .quote-line { margin-top:0; }
.quote-line { margin-top:12px; padding:16px; border:1px solid var(--line); border-radius:12px; background:#fafbfa; }
.quote-line-top { display:grid; grid-template-columns:1fr 34px; gap:9px; margin-bottom:12px; }
.quote-line-top select { width:100%; background:white; }
.remove-line { border:0; border-radius:9px; color:#9b4c3b; background:#fff0eb; font-size:18px; }
.line-options { display:flex; flex-wrap:wrap; gap:7px; margin-top:12px; }
.line-options label { padding:7px 9px; border:1px solid var(--line); border-radius:8px; background:white; font-size:9px; }
.line-options strong { color:var(--green-2); }
.line-price { display:flex; justify-content:space-between; align-items:end; gap:16px; margin-top:13px; padding-top:12px; border-top:1px solid var(--line); color:var(--muted); font-size:10px; }
.line-price-description { flex:1; padding-bottom:9px; }
.line-price-controls { display:grid; grid-template-columns:110px 120px auto; gap:8px; align-items:end; }
.line-price-controls label { color:var(--muted); font-size:8px; font-weight:900; text-transform:uppercase; }
.line-price-controls input[type="number"] { width:100%; margin-top:5px; padding:8px 9px; border:1px solid #ccd8cf; border-radius:8px; box-sizing:border-box; color:var(--ink); background:white; font-weight:800; }
.line-price-controls .line-taxable-control { display:flex; align-items:center; gap:6px; min-height:34px; padding:0 9px; border:1px solid #ccd8cf; border-radius:8px; color:var(--ink); background:white; text-transform:none; }
.line-taxable-control input { margin:0; }
.quote-total { display:flex; justify-content:flex-end; align-items:center; gap:25px; margin-top:18px; font-size:12px; }
.quote-total strong { font-size:23px; }
.detail-lines { margin-top:22px; border-top:1px solid var(--line); }
.detail-line { display:flex; justify-content:space-between; gap:20px; padding:15px 0; border-bottom:1px solid var(--line); }
.detail-line strong,.detail-line small { display:block; }.detail-line small { margin-top:5px; color:var(--muted); font-size:9px; }
.order-jobs { margin-top:22px; padding:17px; border-radius:11px; background:#f4f6f3; }
.order-jobs h3 { margin:0; font-size:13px; }
.order-jobs-heading { display:flex; justify-content:space-between; align-items:flex-start; gap:20px; padding-bottom:10px; }
.order-jobs-heading>span { color:var(--muted); font-size:9px; font-weight:800; }
.order-jobs>div { display:flex; justify-content:space-between; padding:8px 0; border-top:1px solid #e2e7e3; font-size:10px; }
.order-jobs>button { display:grid; grid-template-columns:1fr auto auto; gap:18px; align-items:center; width:100%; padding:12px 0; border:0; border-top:1px solid #e2e7e3; color:var(--ink); background:transparent; font-size:10px; text-align:left; }
.order-jobs>button:hover { color:var(--green-2); }
.order-jobs>button small { color:var(--green-2); font-weight:800; }
.order-jobs .uncreated-job-row { display:grid; grid-template-columns:minmax(220px,1fr) 170px 150px 150px 100px; gap:12px; align-items:end; padding:14px 0; }
.order-jobs .uncreated-job-row.selected { margin:0 -10px; padding:14px 10px; border-radius:9px; background:#eaf7ea; }
.uncreated-job-row label { color:var(--muted); font-size:8px; font-weight:900; text-transform:uppercase; }
.uncreated-job-row label input[type="date"] { display:block; width:100%; margin-top:6px; padding:8px 9px; border:1px solid var(--line); border-radius:8px; background:white; }
.job-create-select { display:flex; align-items:center; gap:10px; color:var(--ink) !important; text-transform:none !important; cursor:pointer; }
.job-create-select>input { width:18px; height:18px; accent-color:var(--green); }
.job-create-select>span { min-width:0; }
.uncreated-job-row strong,.uncreated-job-row small { display:block; }
.uncreated-job-row small { margin-top:4px; color:var(--muted); }
.artwork-needed-checkbox,.must-have-checkbox { display:flex; align-items:center; gap:7px; min-height:35px; padding:8px; border-radius:8px; background:#f4f6f4; cursor:pointer; }
.job-schedule-note { grid-column:1/-1; padding:8px 10px; border-radius:8px; background:#f3f6f3; }
.must-have-checkbox { display:flex; align-items:center; gap:7px; min-height:38px; padding:8px; border:1px solid #e7cba1; border-radius:8px; color:#84551d !important; background:#fff8eb; cursor:pointer; }
.must-have-checkbox input { accent-color:var(--orange); }
.job-creation-actions { display:flex !important; justify-content:flex-end !important; align-items:center; gap:10px; padding-top:16px !important; }
@media(max-width:900px){.order-jobs .uncreated-job-row{grid-template-columns:1fr 1fr}.job-create-select{grid-column:1/-1}.job-creation-actions{align-items:stretch;flex-direction:column}.job-creation-actions button{width:100%}}
.record-actions { display:flex; justify-content:flex-end; align-items:center; margin-top:22px; }
.quote-approval-action { display:flex; align-items:center; justify-content:space-between; gap:18px; width:100%; }
.quote-approval-history { display:flex; align-items:center; gap:18px; color:var(--muted); font-size:9px; }
.quote-approval-history span { display:block; }
.quote-approval-history strong { display:block; margin-bottom:3px; color:var(--ink); font-size:8px; text-transform:uppercase; }
.converted-quote-button:disabled { color:#8a6b59 !important; background:#f6d9c7 !important; box-shadow:none; cursor:not-allowed; opacity:1; }
.form-section { margin-top:23px; padding-top:21px; border-top:1px solid var(--line); }
.crm-card { cursor:pointer; transition:.18s ease; }
.crm-card:hover { transform:translateY(-2px); box-shadow:0 12px 30px rgba(28,45,37,.08); }
.customer-card-head { display:flex; justify-content:space-between; align-items:flex-start; }
.crm-tags { display:flex; flex-wrap:wrap; gap:5px; }
.crm-tags span { padding:5px 7px; border-radius:6px; color:#466054; background:#edf3ef; font-size:8px; font-weight:800; }
.crm-entry { margin-top:12px; padding:16px; border:1px solid var(--line); border-radius:12px; background:#fafbfa; }
.crm-entry-head { display:flex; justify-content:space-between; align-items:center; margin-bottom:13px; font-size:11px; }
.remove-entry { border:0; color:#9b4c3b; background:transparent; font-size:9px; font-weight:800; }
.tag-checks { display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
.tag-checks label { padding:7px 9px; border:1px solid var(--line); border-radius:8px; background:white; font-size:9px; cursor:pointer; }
.crm-summary { display:grid; grid-template-columns:repeat(auto-fit,minmax(130px,1fr)); gap:9px; margin-top:20px; }
.crm-summary>div { padding:14px; border-radius:10px; background:#f2f5f2; }
.crm-summary small,.crm-summary strong { display:block; }.crm-summary small { margin-bottom:5px; color:var(--muted); font-size:9px; }
.crm-summary span { display:block; margin-top:5px; color:var(--muted); font-size:8px; }
.customer-financial-summary .past-due-summary { color:#943e30; background:#fff0eb; }
.customer-direct-panel { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:9px; margin-top:18px; }
.customer-direct-panel button { min-width:0; padding:12px 11px; border:1px solid var(--line); border-top-width:4px; border-radius:10px; color:var(--ink); background:white; text-align:left; transition:.16s ease; }
.customer-direct-panel button:hover { border-color:var(--blue); box-shadow:0 7px 18px rgba(26,64,124,.12); transform:translateY(-1px); }
.customer-direct-panel button span,.customer-direct-panel button strong { display:block; }
.customer-direct-panel button span { color:var(--muted); font-size:8px; font-weight:900; text-transform:uppercase; }
.customer-direct-panel button strong { overflow:hidden; margin-top:5px; font-size:15px; text-overflow:ellipsis; }
.customer-direct-panel button:nth-child(1) { border-top-color:var(--quote-color); }
.customer-direct-panel button:nth-child(2) { border-top-color:var(--order-color); }
.customer-direct-panel button:nth-child(3) { border-top-color:var(--invoice-color); }
.customer-direct-panel button:nth-child(4),.customer-direct-panel button:nth-child(5) { border-top-color:#64748b; }
.customer-invoice-section { margin-top:20px; padding:18px; border:1px solid var(--line); border-radius:12px; }
.customer-payment-section { margin-top:20px; padding:18px; border:1px solid var(--line); border-radius:12px; background:#f8fafc; }
.customer-payment-section .panel-heading { margin-bottom:10px; }
.customer-payment-list { overflow:hidden; border:1px solid var(--line); border-radius:10px; background:white; }
.customer-payment-list button { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:18px; width:100%; padding:12px 14px; border:0; color:var(--ink); background:transparent; text-align:left; }
.customer-payment-list button+button { border-top:1px solid var(--line); }
.customer-payment-list button:hover { background:#f1f5f9; }
.customer-payment-list button strong,.customer-payment-list button span { display:block; }
.customer-payment-list button span { margin-top:4px; color:var(--muted); font-size:8px; }
.customer-payment-list button>strong { color:var(--green-2); font-size:12px; }
.crm-detail-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-top:22px; }
.crm-detail-grid section { padding:18px; border:1px solid var(--line); border-radius:12px; }
.crm-detail-grid h3 { font-size:14px; }
.crm-detail-item { padding:13px 0; border-top:1px solid var(--line); }
.crm-detail-item p { margin:6px 0 10px; color:var(--muted); font-size:10px; line-height:1.55; }
@media(max-width:900px){.customer-direct-panel{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:620px){.customer-direct-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.customer-payment-list button{gap:10px;padding:11px}}
.transaction-info { grid-template-columns:repeat(3,1fr); }
.transaction-party-preview,.document-parties { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; margin-top:18px; }
.transaction-party-preview>div,.document-parties>div { min-height:112px; padding:15px; border:1px solid var(--line); border-radius:10px; background:#fafbfa; }
.transaction-party-preview strong,.transaction-party-preview span,.document-parties strong,.document-parties span { display:block; }
.transaction-party-preview strong,.document-parties strong { margin-bottom:7px; font-size:11px; }
.transaction-party-preview span,.document-parties span { color:var(--muted); font-size:9px; line-height:1.6; }
.document-customer-heading { display:flex; align-items:baseline; gap:12px; flex-wrap:wrap; }
.document-customer-heading h2 { margin-bottom:3px; }
.document-customer-heading span { padding-left:12px; border-left:1px solid #cbd4ce; color:var(--muted); font-size:12px; font-weight:800; }
.editable-party-card { position:relative; cursor:pointer; transition:.16s ease; }
.editable-party-card:hover,.editable-party-card:focus-visible { border-color:#82b588; background:#f5faf5; box-shadow:0 8px 20px rgba(35,74,42,.08); outline:none; transform:translateY(-1px); }
.editable-party-card small { position:absolute; right:12px; bottom:10px; color:var(--green-2); font-size:7px; font-weight:900; letter-spacing:.3px; text-transform:uppercase; opacity:0; transition:.16s ease; }
.editable-party-card:hover small,.editable-party-card:focus-visible small { opacity:1; }
.transaction-totals { width:min(420px,100%); margin:20px 0 0 auto; padding:17px; border-radius:12px; background:#f3f5f2; }
.transaction-totals>div,.document-summary>div { display:flex; justify-content:space-between; gap:20px; padding:6px 0; font-size:10px; }
.document-summary .editable-summary-row { margin:0 -9px; padding:7px 9px; border-radius:7px; cursor:pointer; transition:.15s ease; }
.document-summary .editable-summary-row:hover,.document-summary .editable-summary-row:focus-visible { color:var(--green-2); background:#edf6ee; outline:none; }
.editable-summary-row span small { display:none; margin-left:6px; color:var(--green-2); font-size:7px; font-weight:900; text-transform:uppercase; }
.editable-summary-row:hover span small,.editable-summary-row:focus-visible span small { display:inline; }
.transaction-totals .grand-total,.document-summary>div:last-child { margin-top:7px; padding-top:12px; border-top:1px solid #dbe1dc; font-size:14px; }
.transaction-totals .balance-total,.document-summary .balance-due { margin-top:4px; padding-top:10px; border-top:1px solid #cdd7d0; color:var(--green); font-size:14px; }
.document-summary { width:100%; }
.document-products { margin-top:28px; border:1px solid var(--line); border-radius:12px; overflow:hidden; }
.document-product-head,.document-product-row { display:grid; grid-template-columns:minmax(250px,2fr) 115px 55px 105px 105px 82px; gap:12px; align-items:center; }
.document-product-head { padding:12px 18px; color:var(--muted); background:#f4f6f3; font-size:8px; font-weight:900; letter-spacing:.7px; text-transform:uppercase; }
.document-product-row { padding:18px; border-top:1px solid var(--line); font-size:10px; }
.job-link-row { cursor:pointer; transition:.15s ease; }
.job-link-row:hover { background:#f7faf7; box-shadow:inset 3px 0 var(--green); }
.open-job-hint { color:var(--green-2) !important; font-weight:800; }
.job-not-created-hint { display:block !important; width:max-content; margin:0 0 8px !important; padding:6px 9px; border-radius:6px; color:white !important; background:#c9362b; font-size:8px !important; font-weight:900; letter-spacing:.35px; text-transform:uppercase; box-shadow:0 4px 10px rgba(201,54,43,.2); }
.document-product-row:first-of-type { border-top:0; }
.document-product-row>span small,.document-product-row>div>small { display:block; margin-top:5px; color:var(--muted); font-size:8px; line-height:1.45; }
.document-line-price input { width:100%; padding:8px; border:1px solid #cdd8d0; border-radius:7px; box-sizing:border-box; font-size:10px; font-weight:800; }
.document-line-price small { text-align:left; }
.document-line-tax { display:flex; align-items:center; gap:6px; font-size:9px; font-weight:800; }
.document-line-tax input { margin:0; }
.selected-options { display:flex; flex-wrap:wrap; gap:5px; margin-top:8px; }
.selected-options span { padding:4px 6px; border-radius:5px; color:var(--green-2); background:#edf3ef; font-size:8px; font-weight:800; }
.payment-ledger { margin-top:30px; padding:22px; border:1px solid var(--line); border-radius:12px; }
.payment-ledger-heading { display:flex; justify-content:space-between; align-items:center; margin-bottom:14px; }
.payment-ledger-heading h3 { margin:0; font-size:16px; }
.payment-table { overflow:hidden; border:1px solid var(--line); border-radius:10px; }
.payment-table-head,.payment-row { display:grid; grid-template-columns:110px 130px 1fr 170px 110px 34px; gap:12px; align-items:center; }
.payment-table-head { padding:10px 13px; color:var(--muted); background:#f5f7f5; font-size:8px; font-weight:900; letter-spacing:.6px; text-transform:uppercase; }
.payment-row { padding:13px; border-top:1px solid var(--line); font-size:9px; }
.payment-row:first-of-type { border-top:0; }
.payment-row>strong:nth-last-child(2) { text-align:right; font-size:11px; }
.payment-row button { width:27px; height:27px; border:0; border-radius:7px; color:#9b4c3b; background:#fff0eb; }
.payment-status { color:var(--green-2); font-weight:800; }
.payment-balance-banner { display:flex; justify-content:space-between; align-items:center; margin-bottom:20px; padding:16px 18px; border-radius:11px; color:white; background:var(--green); }
.payment-balance-banner strong { font-size:21px; }
.stripe-note { display:flex; gap:5px; flex-direction:column; margin-top:16px; padding:13px 15px; border:1px solid #d9e3f4; border-radius:9px; color:#31547b; background:#f0f6ff; }
.stripe-note strong { font-size:10px; }.stripe-note span { font-size:9px; line-height:1.45; }
.email-sender-banner { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-bottom:18px; }
.email-sender-banner>div { padding:14px 16px; border-radius:10px; color:white; background:var(--blue); }
.email-sender-banner span,.email-sender-banner strong { display:block; }
.email-sender-banner span { margin-bottom:5px; color:#c9d7ed; font-size:8px; font-weight:900; text-transform:uppercase; }
.email-sender-banner strong { font-size:11px; }
.email-template-panel { margin-bottom:16px; padding:15px; border:1px solid var(--line); border-radius:11px; background:#f7f9f7; }
.email-template-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:15px; }
.email-template-heading h3 { margin:0; font-size:14px; }
.email-template-heading>span { color:var(--muted); font-size:8px; }
.email-template-controls { display:grid; grid-template-columns:minmax(180px,1fr) auto auto auto; gap:7px; margin-top:12px; }
.email-template-controls select { min-width:0; }
.email-template-controls .danger-button { margin:0; padding:8px 11px; }
.email-template-controls button:disabled { opacity:.45; cursor:not-allowed; }
.email-template-tokens { margin-top:10px; color:var(--muted); font-size:8px; line-height:1.7; }
.email-template-tokens code { padding:2px 4px; border-radius:4px; color:var(--blue); background:var(--invoice-soft); }
.email-message { min-height:190px !important; line-height:1.55; }
.email-attachment-card { display:flex; align-items:center; gap:14px; margin-top:16px; padding:14px 16px; border:1px solid #b9d2bd; border-radius:10px; background:#f1f8f2; }
.email-attachment-card>span { padding:7px 9px; border-radius:7px; color:white; background:#b63b32; font-size:8px; font-weight:900; }
.email-attachment-card strong,.email-attachment-card small { display:block; }
.email-attachment-card strong { font-size:11px; }
.email-attachment-card small { margin-top:4px; color:var(--muted); font-size:9px; }
.email-delivery-note { margin-top:10px; padding:11px 13px; border-radius:9px; color:#665424; background:#fff7da; font-size:9px; line-height:1.5; }
@media(max-width:700px){.email-sender-banner{grid-template-columns:1fr}.email-template-heading{flex-direction:column}.email-template-controls{grid-template-columns:1fr 1fr}.email-template-controls select{grid-column:1/-1}}
.job-detail-toolbar { display:flex; justify-content:space-between; align-items:center; margin-top:20px; }
.job-detail-header { padding-bottom:20px; border-bottom:1px solid var(--line); }
.job-heading { min-width:0; }
.job-switcher { display:block; width:min(520px,100%); margin-bottom:14px; padding:10px 12px; border:1px solid #d6dfd9; border-left:4px solid var(--green); border-radius:10px; color:var(--muted); background:#f8faf8; font-size:8px; font-weight:900; text-transform:uppercase; }
.job-switcher span { display:block; margin-bottom:6px; }
.job-switcher select { width:100%; padding:9px 10px; border:1px solid var(--line); border-radius:8px; color:var(--ink); background:white; font-size:10px; font-weight:800; text-transform:none; }
.job-heading h2 { margin:4px 0 5px; font-size:27px; }
.job-heading>p:last-child { color:var(--muted); font-size:11px; }
.job-header-right { display:flex; align-items:flex-start; justify-content:flex-end; gap:14px; width:min(480px,52%); }
.job-header-right>.icon-button { flex:0 0 auto; order:2; }
.job-header-tags { flex:1; padding:14px; border:1px solid #d6dfd9; border-radius:11px; background:#f8faf8; }
.job-header-tags-title { display:flex; align-items:baseline; justify-content:space-between; gap:12px; }
.job-header-tags-title span { color:var(--muted); font-size:8px; }
.job-header-tags .job-tags { justify-content:flex-end; margin-top:8px; }
.job-header-tags .job-tag-entry.compact { display:grid; grid-template-columns:minmax(130px,1fr) auto; gap:7px; margin-top:9px; }
.job-header-tags .job-tag-entry.compact select,.job-header-tags .job-tag-entry.compact button { min-height:34px; padding:7px 9px; font-size:9px; }
.approved-proof-section { display:grid; grid-template-columns:minmax(220px,1fr) 240px; gap:20px; align-items:center; margin-top:20px; padding:18px; border:2px solid #74b879; border-radius:14px; background:#f0f9f0; }
.approved-proof-heading { display:flex; justify-content:space-between; align-items:flex-start; gap:18px; }
.approved-proof-heading h3 { margin-bottom:5px; font-size:16px; }
.approved-proof-heading span { color:var(--muted); font-size:9px; }
.approved-proof-heading>strong { padding:8px 12px; border-radius:99px; color:white; background:var(--green); font-size:9px; letter-spacing:.8px; }
.approved-proof-section .proof-preview { width:240px; min-height:120px; max-height:170px; margin:0; padding:8px; background:white; border-color:#acd2ae; }
.approved-proof-section .proof-preview img { max-height:150px; }
.approved-proof-section .proof-preview embed { height:150px; }
.approved-proof-reference { margin-top:16px; padding:14px; border-radius:9px; color:#276a34; background:#e7f5e8; font-size:10px; font-weight:800; }
.document-approved-artwork { margin-top:26px; padding:20px; border:1px solid #b9dbbd; border-radius:12px; background:#f4faf4; }
.approved-artwork-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; }
.approved-artwork-heading h3 { margin:0; font-size:16px; }
.approved-artwork-heading>span { padding:6px 9px; border-radius:99px; color:#276a34; background:#dff1e1; font-size:8px; font-weight:900; }
.approved-artwork-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(230px,1fr)); gap:10px; margin-top:14px; }
.document-fulfillment { margin-top:26px; padding:20px; border:1px solid #cfd9e4; border-radius:12px; background:#f7f9fc; }
.fulfillment-heading { display:flex; justify-content:space-between; gap:18px; align-items:flex-start; }
.fulfillment-heading h3 { margin:0 0 4px; font-size:16px; }
.fulfillment-heading span { color:var(--muted); font-size:9px; }
.fulfillment-heading>strong { padding:6px 10px; border-radius:99px; color:var(--blue); background:var(--invoice-soft); font-size:9px; white-space:nowrap; }
.fulfillment-job-list { margin-top:14px; border:1px solid var(--line); border-radius:10px; overflow:hidden; background:white; }
.fulfillment-job-row { display:grid; grid-template-columns:minmax(220px,1fr) minmax(190px,.7fr) minmax(250px,1fr); gap:14px; align-items:center; padding:14px; }
.fulfillment-job-row+.fulfillment-job-row { border-top:1px solid var(--line); }
.fulfillment-job-row.fulfilled { background:#f2f9f3; }
.fulfillment-job-open { border:0; background:transparent; text-align:left; color:var(--ink); }
.fulfillment-job-open span,.fulfillment-job-open strong,.fulfillment-job-open small { display:block; }
.fulfillment-job-open span { color:var(--green-2); font-size:8px; font-weight:900; }
.fulfillment-job-open strong { margin-top:3px; font-size:11px; }
.fulfillment-job-open small { margin-top:4px; color:var(--muted); font-size:8px; }
.fulfillment-job-row label { color:var(--muted); font-size:8px; font-weight:900; text-transform:uppercase; }
.fulfillment-job-row select { display:block; width:100%; margin-top:6px; padding:9px; border:1px solid var(--line); border-radius:8px; background:white; text-transform:none; }
.fulfillment-status { display:flex; align-items:center; justify-content:flex-end; gap:12px; }
.fulfillment-status span,.fulfillment-status strong { display:block; }
.fulfillment-status span { color:var(--muted); font-size:8px; text-align:right; }
.fulfillment-status strong { color:var(--green-2); font-size:9px; }
@media(max-width:900px){.fulfillment-job-row{grid-template-columns:1fr 1fr}.fulfillment-status{grid-column:1/-1;justify-content:space-between}.fulfillment-status span{text-align:left}}
@media(max-width:620px){.fulfillment-heading{flex-direction:column}.fulfillment-job-row{grid-template-columns:1fr}.fulfillment-status{grid-column:auto;align-items:stretch;flex-direction:column}.fulfillment-status span{text-align:left}.fulfillment-status button{width:100%}}
.approved-artwork-card { display:grid; grid-template-columns:92px 1fr; gap:12px; align-items:center; padding:10px; border:1px solid #cfe2d0; border-radius:10px; background:white; cursor:pointer; transition:.15s ease; }
.approved-artwork-card:hover { border-color:#74b879; box-shadow:0 7px 18px rgba(43,91,49,.09); }
.approved-artwork-thumbnail { display:grid; place-items:center; width:92px; height:72px; overflow:hidden; border-radius:7px; background:#eef3ee; }
.approved-artwork-thumbnail img { display:block; max-width:100%; max-height:72px; }
.approved-artwork-thumbnail embed { width:92px; height:72px; border:0; pointer-events:none; }
.approved-artwork-card strong,.approved-artwork-card span,.approved-artwork-card small { display:block; }
.approved-artwork-card strong { font-size:10px; }
.approved-artwork-card span { margin-top:4px; color:var(--muted); font-size:8px; line-height:1.4; }
.approved-artwork-card small { margin-top:7px; color:var(--green-2); font-size:8px; font-weight:900; }
.job-detail-summary { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; margin-top:22px; }
.job-detail-summary>div { min-height:108px; padding:16px; border:1px solid var(--line); border-radius:11px; background:#fafbfa; }
.job-detail-summary strong,.job-detail-summary span { display:block; }
.job-detail-summary strong { margin-bottom:7px; font-size:12px; }
.job-detail-summary span { color:var(--muted); font-size:9px; line-height:1.55; }
.job-specifications { display:grid; grid-template-columns:1.1fr .9fr; gap:0; margin-top:18px; overflow:hidden; border:1px solid var(--line); border-radius:12px; background:white; }
.job-specifications>div { padding:24px; }
.job-specifications>div+div { border-left:1px solid var(--line); background:#fafbfa; }
.job-specifications h3 { margin-bottom:8px; font-size:18px; }
.job-specifications p { color:var(--muted); font-size:10px; line-height:1.6; }
.job-product-facts { display:grid; grid-template-columns:repeat(4,1fr); gap:8px; margin-top:20px; }
.job-product-facts>span { padding:11px; border-radius:9px; background:#f1f4f1; }
.job-product-facts small,.job-product-facts strong { display:block; }
.job-product-facts small { margin-bottom:5px; color:var(--muted); font-size:8px; font-weight:800; text-transform:uppercase; }
.job-product-facts strong { font-size:12px; }
.job-options-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.job-options-heading>strong { display:grid; place-items:center; width:30px; height:30px; border-radius:99px; color:white; background:var(--green); font-size:10px; }
.job-option-list { margin-top:14px; overflow:hidden; border:1px solid var(--line); border-radius:9px; background:white; }
.job-option-row { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:11px 13px; border-top:1px solid var(--line); font-size:10px; }
.job-option-row:first-child { border-top:0; }
.job-option-row span { font-weight:700; }
.job-option-row strong { flex:0 0 auto; color:var(--green-2); font-size:9px; }
.selected-options.large span { padding:8px 10px; font-size:9px; }
.job-details-editor { margin-top:18px; padding:20px; border:2px solid #b9d2bd; border-radius:12px; background:#f5faf5; }
.job-details-editor.unavailable { border-width:1px; border-color:#e0c8c2; background:#fff6f3; }
.job-details-editor.unavailable h3 { margin-bottom:5px; }
.job-details-editor.unavailable p:last-child { margin:0; color:var(--muted); font-size:9px; }
.job-details-editor-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; }
.job-details-editor-heading h3 { margin:0 0 4px; font-size:17px; }
.job-details-editor-heading span { color:var(--muted); font-size:9px; }
.job-details-fields { display:grid; grid-template-columns:repeat(3,minmax(120px,1fr)); gap:10px; margin-top:16px; }
.job-details-fields.quantity-only { grid-template-columns:minmax(160px,260px); }
.job-details-fields label,.job-details-options label { color:var(--muted); font-size:8px; font-weight:900; text-transform:uppercase; }
.job-details-fields input,.job-details-options select { display:block; width:100%; margin-top:6px; padding:10px 11px; border:1px solid #cbd9ce; border-radius:8px; color:var(--ink); background:white; box-sizing:border-box; font-size:10px; font-weight:700; text-transform:none; }
.job-details-options { display:grid; grid-template-columns:repeat(2,minmax(180px,1fr)); gap:10px; margin-top:12px; }
.job-details-price-preview { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-top:14px; padding:12px 14px; border-radius:9px; color:#315b39; background:#e5f3e7; }
.job-details-price-preview span { font-size:9px; }
.job-details-price-preview strong { font-size:17px; }
.job-price-summary { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; width:min(600px,100%); margin:24px 0 0 auto; }
.job-price-summary>div { padding:17px; border-radius:10px; background:#f1f4f1; }
.job-price-summary span,.job-price-summary strong { display:block; }
.job-price-summary span { margin-bottom:7px; color:var(--muted); font-size:9px; }
.job-price-summary strong { font-size:16px; }
.proofing-workspace { margin-top:24px; padding:24px; border:1px solid var(--line); border-radius:12px; background:#fafbfa; }
.proofing-header,.proofing-actions,.proof-review-actions { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; }
.proofing-header h3 { margin:3px 0 0; font-size:18px; }
.proofing-actions { justify-content:flex-start; margin-top:18px; }
.proof-upload-input { display:none; }
.proof-preview { display:grid; place-items:center; min-height:260px; margin-top:18px; padding:14px; overflow:hidden; border:1px dashed #c8cfca; border-radius:12px; background:#fff; }
.proof-preview img { display:block; max-width:100%; max-height:560px; border-radius:8px; box-shadow:0 8px 26px rgba(32,43,36,.12); }
.proof-preview embed { width:100%; height:560px; border:0; border-radius:8px; }
.proof-preview-compact { width:min(520px,100%); min-height:150px; max-height:300px; margin-right:auto; }
.proof-preview-compact img { max-height:270px; }
.proof-preview-compact embed { height:270px; }
.proof-empty { text-align:center; color:var(--muted); }
.proof-empty strong,.proof-empty span { display:block; }
.proof-empty strong { margin-bottom:6px; color:var(--ink); }
.proof-meta { display:flex; justify-content:space-between; gap:12px; margin-top:12px; color:var(--muted); font-size:9px; }
.job-proof-note { margin-top:16px; padding:20px; border:2px solid #edc8ba; border-radius:11px; background:#fff5f1; }
.job-proof-note strong { display:block; color:#713728; font-size:16px; line-height:1.55; white-space:pre-wrap; }
.proof-review-dialog { background:#eef1ee; }
.proof-review-shell { width:min(980px,100%); margin:0 auto; padding:34px; background:#fff; box-shadow:0 18px 50px rgba(28,40,32,.15); }
.proof-review-brand { display:flex; justify-content:space-between; gap:20px; padding-bottom:20px; border-bottom:1px solid var(--line); }
.proof-review-brand h2 { margin:4px 0 5px; font-size:25px; }
.proof-review-brand p { color:var(--muted); }
.proof-review-details { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-top:20px; }
.proof-review-details>div { padding:15px; border:1px solid var(--line); border-radius:10px; background:#fafbfa; }
.proof-review-details strong,.proof-review-details span { display:block; }
.proof-review-details span { margin-top:5px; color:var(--muted); font-size:9px; }
.proof-review-note { margin-top:20px; }
.proof-review-note label strong { display:block; font-size:17px; }
.proof-review-note textarea { width:100%; min-height:190px; margin-top:10px; padding:16px; resize:vertical; border:2px solid #bbc6bf; border-radius:10px; font:inherit; font-size:15px; line-height:1.55; }
.proof-review-actions { justify-content:flex-end; margin-top:16px; }
.proof-approved { color:#24643b; background:#e6f4ea; }
.proof-rejected { color:#a43b32; background:#fbe9e7; }
.proof-awaiting { color:#7d5b00; background:#fff4d6; }
.toast { position:fixed; right:28px; bottom:28px; padding:12px 17px; border-radius:10px; color:white; background:#173f31; box-shadow:var(--shadow); opacity:0; transform:translateY(15px); transition:.25s; pointer-events:none; font-size:12px; font-weight:700; }
.toast.show { opacity:1; transform:translateY(0); }
.detail-top { display:flex; justify-content:space-between; gap:20px; }
.detail-total { font-size:24px; font-weight:900; }
.detail-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin:24px 0; }
.detail-box { padding:14px; border-radius:11px; background:#f3f5f2; }
.detail-box small,.detail-box strong { display:block; }.detail-box small { margin-bottom:5px; color:var(--muted); }
.detail-notes { padding:16px; border-left:3px solid var(--lime); background:#fafbf4; font-size:12px; line-height:1.6; }
.status-control { display:flex; gap:8px; align-items:center; margin-top:20px; }
.status-control select { flex:1; }

/* Dense shop-management interface */
@media not all {
:root {
  --ink:#202b35;
  --muted:#687783;
  --line:#d9e0e5;
  --paper:#edf1f4;
  --white:#fff;
  --green-2:#277b38;
  --shadow:0 12px 32px rgba(28,43,54,.16);
}
body { color:var(--ink); background:var(--paper); font-size:13px; }
.sidebar { width:210px; padding:0 0 18px; border-right:1px solid #17334f; background:#223f5d; box-shadow:3px 0 12px rgba(17,34,51,.12); }
.brand { min-height:64px; padding:11px 14px; gap:10px; border-bottom:1px solid rgba(255,255,255,.12); background:#193550; }
.brand-mark { width:36px; height:36px; border-radius:4px; box-shadow:none; font-size:12px; }
.brand strong { font-size:16px; }
.brand span { color:#b9c9d7; font-size:10px; }
.sidebar nav { gap:0; padding:9px 0; }
.nav-section-label { margin:12px 15px 4px; color:#8fa6b8; font-size:8px; }
.nav-item { min-height:38px; gap:10px; padding:8px 13px; border-left:3px solid transparent; border-radius:0; color:#d5e0e8; font-size:11px; font-weight:650; }
.nav-item:hover { color:white; background:rgba(255,255,255,.07); }
.nav-item span { width:19px; font-size:15px; text-align:center; }
.nav-item b { min-width:21px; padding:2px 6px; color:#dce7ee; background:rgba(0,0,0,.18); font-size:9px; }
.nav-item.active { border-left-color:var(--orange); color:white; background:#2d526f; box-shadow:inset 0 1px rgba(255,255,255,.04); }
.nav-item[data-view="quotes"].active,.nav-item[data-view="orders"].active,.nav-item[data-view="invoices"].active { border-left-color:white; }
.sidebar-note { margin:8px 12px 0; padding:10px; border-color:rgba(255,255,255,.1); border-radius:4px; background:rgba(0,0,0,.12); }
.sidebar-note strong { font-size:10px; }
.sidebar-note small { color:#a9bcc9; font-size:8px; }
.sidebar-note.cloud-active .pulse { background:#70d47b; box-shadow:0 0 0 5px rgba(112,212,123,.14); }
.sidebar-note.cloud-active strong { color:#d9ffdd; }
.sidebar-note.cloud-error .pulse { background:#fd690d; box-shadow:0 0 0 5px rgba(253,105,13,.14); }
.sidebar-note.cloud-error strong { color:#ffd9c1; }
.cloud-login-dialog::backdrop { background:rgba(12,28,42,.82); }
.cloud-login-intro { margin-bottom:20px; color:var(--muted); font-size:10px; line-height:1.65; }
.cloud-login-error { margin-top:14px; padding:11px 13px; color:#8e3327; background:#fff0eb; font-size:10px; font-weight:800; }
.form-save-error { position:sticky; z-index:10; top:0; margin:0 0 16px; padding:16px 18px; border:2px solid #c94d36; color:#742719; background:#fff0eb; box-shadow:0 8px 24px rgba(90,35,24,.2); font-size:13px; font-weight:800; line-height:1.55; white-space:pre-wrap; overflow-wrap:anywhere; }
.cloud-account-summary { display:flex; align-items:center; gap:12px; padding:16px; border:1px solid var(--line); background:#f7f9fa; }
.cloud-account-summary .user-avatar { display:grid; place-items:center; width:42px; height:42px; border-radius:6px; color:white; background:var(--green); font-size:12px; font-weight:900; }
.cloud-account-summary strong,.cloud-account-summary small { display:block; }
.cloud-account-summary small { margin-top:4px; color:var(--muted); }
.team-management-grid { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr); gap:18px; }
.team-member-list { display:grid; gap:9px; margin-top:12px; }
.team-member-row { display:grid; grid-template-columns:minmax(160px,1fr) 150px auto auto; align-items:center; gap:9px; padding:11px; border:1px solid var(--line); background:white; }
.team-member-row strong,.team-member-row small { display:block; }
.team-member-row small { margin-top:3px; color:var(--muted); }
.team-member-row select { min-width:0; }
.team-member-row .secondary { padding:8px 10px; }
@media(max-width:900px){.team-management-grid{grid-template-columns:1fr}.team-member-row{grid-template-columns:1fr 1fr}.team-member-row>div{grid-column:1/-1}}
main { margin-left:210px; padding:0 24px 42px; }
main>header { position:sticky; z-index:20; top:0; min-height:64px; margin:0 -24px 18px; padding:9px 24px; border-bottom:1px solid #d1d9df; background:rgba(255,255,255,.97); box-shadow:0 2px 8px rgba(35,54,68,.06); backdrop-filter:blur(9px); }
main>header h1 { font-size:20px; letter-spacing:-.35px; }
main>header .eyebrow { margin-bottom:3px; font-size:8px; }
.header-actions { flex-wrap:nowrap; }
.search { width:250px; padding:8px 10px; border-radius:4px; background:#f6f8f9; }
.search input { background:transparent; font-size:11px; }
.user-menu-button { padding:4px 9px 4px 5px; border-radius:4px; }
.user-menu-button>span { width:28px; height:28px; border-radius:3px; }
.header-transaction-actions { padding:4px 5px 4px 9px; border-radius:4px; }
.header-transaction-actions>span { font-size:8px; }
.header-transaction-actions button { padding:7px 9px; border-radius:3px; font-size:8px; }
.primary,.secondary,.light-button { padding:9px 13px; border-radius:4px; box-shadow:none; font-size:10px; }
.primary:hover { filter:brightness(.94); }
.secondary { border:1px solid #cfd8de; background:#f5f7f8; }
.eyebrow { margin-bottom:4px; color:#758592; font-size:8px; letter-spacing:1px; }
.panel,.user-task-panel,.catalog-intro,.tag-management-card,.report-sheet,.production-filter-panel,.saved-production-filters,.job-table-wrap { border-color:#d3dce2; border-radius:5px; box-shadow:0 1px 3px rgba(30,46,58,.05); }
.panel { padding:17px; }
.panel-heading { margin:-17px -17px 12px; padding:11px 14px; border-bottom:1px solid var(--line); background:#f7f9fa; }
.panel h3,.panel-heading h3 { font-size:13px; }
.text-button { color:#346f9d; font-size:9px; }
.user-task-panel { padding:0; border-top:0; }
.user-task-heading { padding:15px 17px 12px; border-bottom:1px solid var(--line); background:#f7f9fa; }
.user-task-heading h2 { margin-bottom:3px; font-size:16px; }
.user-task-list { gap:0; margin:0; }
.user-task-row { grid-template-columns:27px 1fr auto; margin:0; padding:10px 14px; border:0; border-bottom:1px solid #e4e9ec; border-radius:0; background:white; }
.user-task-row:last-child { border-bottom:0; }
.stats { gap:10px; margin:12px 0; }
.stat { padding:14px 15px; border-radius:5px; }
.stat:hover,.dashboard-link-panel:hover,.dept-row:hover { transform:none; box-shadow:0 3px 10px rgba(28,45,37,.09); }
.stat-top .eyebrow { margin:0; }
.stat-icon { width:27px; height:27px; border-radius:3px; }
.stat strong { margin:8px 0 2px; font-size:21px; }
.stat small { font-size:9px; }
.widget-link { margin-top:8px; font-size:8px; }
.dashboard-grid,.invoice-aging-grid { gap:10px; }
.invoice-aging-grid { margin-top:10px; }
.attention-job { padding:10px 0; }
.job-type { width:31px; height:31px; border-radius:3px; font-size:9px; }
.attention-job strong { font-size:11px; }
.attention-job small { font-size:9px; }
.workflow-banner { gap:8px; margin-bottom:10px; padding:9px 12px; border-radius:4px; background:#f8fafb; font-size:8px; }
.workflow-step { padding:3px 6px; border-radius:3px; background:#edf1f4; }
.section-toolbar { margin-bottom:10px; padding:8px; border:1px solid var(--line); border-radius:4px; background:white; }
.filter { padding:6px 9px; border-radius:3px; font-size:9px; }
.business-tabs { gap:0; margin-bottom:12px; padding:0; border-radius:4px; overflow:hidden; }
.business-tabs button { padding:9px 14px; border-right:1px solid var(--line); border-radius:0; font-size:10px; }
.catalog-intro { min-height:76px; margin-bottom:10px; padding:14px 17px; }
.catalog-intro h2 { margin-bottom:3px; font-size:18px; }
.catalog-intro p:last-child { font-size:10px; }
.catalog-summary { min-width:95px; padding:10px 14px; border-radius:4px; }
.catalog-summary strong { font-size:20px; }
.website-product-import { margin-bottom:10px; padding:12px 14px; border-radius:4px; }
.record-grid,.customer-grid,.product-grid { gap:10px; }
.record-card,.customer-card,.product-card { border-radius:5px; box-shadow:0 1px 2px rgba(32,47,58,.04); }
.record-card { padding:14px; }
.record-card:hover,.product-card:hover { transform:none; border-color:#aebcc6; box-shadow:0 4px 12px rgba(28,45,37,.09); }
.record-card-top { margin:-14px -14px 0; padding:10px 12px; border-bottom:1px solid var(--line); background:#f8fafb; }
.record-card-quote,.record-card-order,.record-card-invoice { border-top-width:3px; }
.record-card h3 { font-size:13px; }
.record-card>p { margin:9px 0; font-size:8px; }
.record-lines { min-height:36px; font-size:9px; }
.record-total { margin-top:10px; padding-top:9px; }
.record-total strong { font-size:13px; }
.status { padding:4px 6px; border-radius:3px; font-size:8px; }
.customer-card { padding:15px; }
.customer-avatar { width:34px; height:34px; margin-bottom:11px; border-radius:3px; font-size:10px; }
.customer-card h3 { font-size:13px; }
.customer-card p { margin-bottom:11px; font-size:9px; }
.customer-meta { padding-top:10px; font-size:9px; }
.product-card { min-height:220px; padding:15px; }
.product-card h3 { margin:15px 0 6px; font-size:14px; }
.product-description { margin-bottom:13px; font-size:9px; }
.product-card-footer { margin-top:11px; padding-top:10px; }
.production-filter-workspace { gap:10px; margin-bottom:10px; }
.production-filter-panel,.saved-production-filters { padding:13px; }
.production-filter-heading h3,.saved-filter-heading h3 { font-size:13px; }
.production-filter-grid { gap:8px; margin-top:10px; }
.production-filter-grid select { padding:7px 8px; border-radius:3px; }
.production-filter-actions { margin-top:10px; padding-top:10px; }
.production-list-toolbar { margin:10px 0 7px; padding:8px 11px; border:1px solid var(--line); border-radius:4px; background:white; }
.production-list-toolbar h3 { font-size:13px; }
.production-view-switcher { padding:2px; border-radius:3px; }
.production-view-switcher button { padding:6px 8px; border-radius:2px; }
.production-card { padding:12px 14px; border-radius:4px; }
.production-card h3 { font-size:12px; }
.production-dates { margin-top:8px; }
.production-dates span { padding:5px 7px; border-radius:3px; font-size:8px; }
.production-columns-view { border-radius:4px; }
.production-column-head { background:#e8edf1; }
.production-column-row { padding:10px 12px; }
.task-toolbar,.report-toolbar { margin:10px 0; padding:10px 12px; border-radius:4px; }
.global-task-list { gap:6px; }
.global-task-row { padding:11px 13px; border-left-width:3px; border-radius:4px; }
select,input,textarea { border-radius:3px !important; }
.form-grid { gap:10px; }
.form-grid input,.form-grid select,.form-grid textarea { margin-top:4px; padding:9px 10px; border-radius:3px; }
.form-grid label { font-size:9px; }
dialog { border-radius:5px; }
dialog::backdrop { background:rgba(19,34,46,.58); backdrop-filter:none; }
.dialog-heading { margin:-28px -28px 18px; padding:15px 20px; border-bottom:1px solid var(--line); background:#f4f7f8; }
.dialog-heading h2 { font-size:17px; }
.icon-button { width:29px; height:29px; border-radius:3px; font-size:18px; }
#recordDetail,#jobDetailPreview { padding:24px 28px; background:#f8fafb; }
#recordDetail .detail-top,#jobDetailPreview .detail-top { margin:-24px -28px 0; padding:17px 22px; border-bottom:1px solid #ccd6dd; background:white; }
#recordDetail .detail-top h2 { font-size:22px; }
#recordDetail .record-actions { bottom:-24px; margin:24px -28px -24px; padding:12px 28px; }
.document-top-meta>div,.document-tag-editor,.editable-party-card,.document-summary,.order-jobs,.document-fulfillment,.payment-ledger,.job-left-column>section,.job-right-column>section { border-radius:4px !important; }
.document-parties { gap:8px; }
.editable-party-card { padding:12px !important; background:white !important; }
.document-products { border-radius:4px !important; background:white; }
.document-product-head { background:#e8edf1 !important; }
.document-product-row { border-bottom:1px solid #e1e6e9; }
.document-edit-toolbar { margin-top:10px; }
.document-tag-editor { margin-top:8px; padding:10px 12px; background:white; }
.job-two-column-layout { gap:12px; }
.job-details-editor,.proofing-workspace,.approved-proof-section { border-radius:4px; }
.job-details-editor { padding:14px; }
.toast { right:18px; bottom:18px; border-radius:4px; }
}
.transaction-list-toolbar { display:flex; align-items:center; justify-content:space-between; gap:16px; margin:0 0 12px; padding:12px 15px; border:1px solid var(--line); border-radius:12px; background:white; }
.transaction-list-toolbar h3 { margin:2px 0 0; font-size:16px; }
.transaction-list-container { overflow-x:auto; }
.transaction-list-table { min-width:1020px; overflow:hidden; border:1px solid var(--line); border-radius:13px; background:white; }
.transaction-list-head,.transaction-list-row { display:grid; grid-template-columns:145px minmax(175px,1.2fr) minmax(220px,1.5fr) minmax(130px,.8fr) 120px 110px; gap:14px; align-items:center; }
.transaction-list-head { padding:11px 14px; color:var(--muted); background:#f1f4f1; font-size:8px; font-weight:900; letter-spacing:.65px; text-transform:uppercase; }
.transaction-list-row { min-height:72px; padding:12px 14px; border-top:1px solid var(--line); cursor:pointer; transition:.15s ease; }
.transaction-list-row:hover { background:#f8faf8; }
.transaction-list-row:focus-visible { outline:3px solid rgba(69,168,70,.22); outline-offset:-3px; }
.transaction-list-row strong,.transaction-list-row>div>span { display:block; }
.transaction-list-row strong { overflow:hidden; font-size:10px; text-overflow:ellipsis; white-space:nowrap; }
.transaction-list-row>div>span:not(.status) { margin-top:4px; overflow:hidden; color:var(--muted); font-size:8px; text-overflow:ellipsis; white-space:nowrap; }
.transaction-list-number strong { font-size:11px; }
.transaction-list-row-quote .transaction-list-number strong { color:var(--quote-color); }
.transaction-list-row-order .transaction-list-number strong { color:var(--order-color); }
.transaction-list-row-invoice .transaction-list-number strong { color:var(--invoice-color); }
.transaction-list-tags { display:flex; flex-wrap:wrap; gap:4px; }
.transaction-list-tags span { padding:4px 6px; border-radius:99px; color:var(--blue)!important; background:var(--invoice-soft); font-size:7px!important; font-weight:900; }
.transaction-list-row-quote .transaction-list-tags span { color:#9a3c08!important; background:var(--quote-soft); }
.transaction-list-row-order .transaction-list-tags span { color:#24612d!important; background:var(--order-soft); }
.transaction-list-tags em { color:var(--muted); font-size:8px; }
.transaction-list-total { text-align:right; }
.transaction-list-total strong { font-size:13px; }
.transaction-list-total span { text-align:right; }
.settings-list { display:grid; gap:10px; margin-top:18px; }
.settings-row { display:grid; gap:9px; align-items:end; padding:14px; border:1px solid var(--line); border-radius:11px; background:#fafbfa; }
.markup-setting-row { grid-template-columns:minmax(220px,1fr) 160px auto 34px; }
.payment-term-row { grid-template-columns:minmax(220px,1fr) 150px 150px auto 34px; }
.vendor-setting-row { grid-template-columns:1.1fr 1fr 1.2fr 150px auto 34px; }
.settings-row label { color:var(--muted); font-size:9px; font-weight:800; }
.settings-row input { display:block; width:100%; margin-top:6px; padding:9px 10px; border:1px solid var(--line); border-radius:8px; background:white; }
.settings-row .setting-save { height:38px; }
.settings-row .setting-delete { width:34px; height:38px; }
.field-note { display:block; min-height:14px; margin-top:5px; color:var(--green-2); font-size:8px; font-weight:800; }
.product-preset-panel { margin-top:18px; }
.size-range-preset-card { padding:15px; border:1px solid var(--line); border-radius:12px; background:#fafbfa; }
.size-range-preset-heading { display:grid; grid-template-columns:minmax(220px,1fr) auto; gap:10px; align-items:end; }
.size-range-preset-heading label { color:var(--muted); font-size:9px; font-weight:800; }
.size-range-preset-heading input,.preset-tier-row input { display:block; width:100%; margin-top:6px; padding:9px 10px; border:1px solid var(--line); border-radius:8px; background:white; }
.preset-tier-head,.preset-tier-row { display:grid; grid-template-columns:1fr 1fr 1fr 34px; gap:9px; }
.preset-tier-head { margin-top:14px; padding:0 2px; color:var(--muted); font-size:8px; font-weight:900; text-transform:uppercase; }
.preset-tier-row { margin-top:8px; align-items:end; }
.preset-tier-row input { margin-top:0; }
.size-range-preset-actions { display:flex; justify-content:flex-end; gap:8px; margin-top:13px; padding-top:12px; border-top:1px solid var(--line); }
.product-thumbnail-editor { display:flex; align-items:center; gap:14px; margin-top:7px; padding:12px; border:1px solid #dce2de; border-radius:9px; background:#fafbfa; }
.product-thumbnail-editor>div:last-child { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.product-thumbnail-editor input { width:auto; margin:0; padding:0; border:0; }
.product-thumbnail-preview { display:grid; place-items:center; flex:0 0 100px; width:100px; height:76px; overflow:hidden; border:1px dashed #bdcac1; border-radius:9px; color:var(--muted); background:white; font-size:9px; }
.product-thumbnail-preview img { width:100%; height:100%; object-fit:cover; }
.product-card-thumbnail { width:calc(100% + 42px); height:135px; margin:-21px -21px 18px; object-fit:cover; border-radius:15px 15px 0 0; background:#eef2ef; }
.product-detail-heading { display:flex; align-items:flex-start; gap:18px; }
.product-detail-thumbnail { width:130px; height:100px; object-fit:cover; border:1px solid var(--line); border-radius:10px; background:#f1f4f1; }
.line-product-note:has(.line-product-thumbnail) { justify-content:flex-start; }
.line-product-note>div strong,.line-product-note>div span,.line-product-note>div a { display:block; }
.line-product-thumbnail { flex:0 0 66px; width:66px; height:50px; padding:0; overflow:hidden; border:1px solid var(--line); border-radius:8px; background:white; }
.line-product-thumbnail img { width:100%; height:100%; object-fit:cover; }
.outsourced-vendor-badge { display:inline-flex; align-items:center; gap:6px; margin-top:9px; padding:7px 9px; border-radius:8px; color:#614411; background:#fff0c9; font-size:9px; }
.outsourced-vendor-badge strong { color:#8a5c0b; }
.production-column-assigned strong { margin-top:4px; color:#8a5c0b; font-size:8px; }
.job-outsourced-vendor { display:block; margin-top:7px; padding:7px 9px; border-radius:7px; color:#76501e; background:#fff0cf; font-size:9px; }
.status-Outsourced { color:#76501e; background:#fff0cf; }
.dialog-select-label { display:block; color:var(--muted); font-size:10px; font-weight:800; }
.dialog-select-label select { display:block; width:100%; margin-top:7px; }
@media(max-width:900px){.vendor-setting-row{grid-template-columns:1fr 1fr}.vendor-setting-row .setting-save,.vendor-setting-row .setting-delete{align-self:end}}
@media(max-width:900px){.payment-term-row{grid-template-columns:1fr 1fr 1fr}.payment-term-row .term-save,.payment-term-row .term-delete{align-self:end}}
@media(max-width:620px){.markup-setting-row,.payment-term-row,.vendor-setting-row{grid-template-columns:1fr}.settings-row .setting-delete{width:100%}.product-thumbnail-editor,.product-detail-heading{align-items:flex-start;flex-direction:column}.size-range-preset-heading,.product-size-preset-editor{grid-template-columns:1fr}.product-size-preset-actions{align-items:stretch;flex-direction:column;grid-column:auto}.preset-tier-head{display:none}.preset-tier-row{grid-template-columns:1fr 1fr}.preset-tier-row .remove-option{grid-column:1/-1}.size-range-preset-actions{align-items:stretch;flex-direction:column}}
@media(max-width:1100px){.job-two-column-layout{grid-template-columns:1fr}.job-right-column{position:static}.job-right-column .job-price-summary{grid-template-columns:repeat(3,1fr)}}
@media(max-width:1100px){.production-filter-workspace{grid-template-columns:1fr}.saved-filter-heading{flex-direction:row;align-items:center;justify-content:space-between}.saved-filter-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.document-top-row{flex-direction:column}.transaction-role-defaults,.transaction-role-defaults.with-due-date{grid-template-columns:1fr 1fr;width:100%;max-width:none}}
@media(max-width:620px){.transaction-role-defaults,.transaction-role-defaults.with-due-date{grid-template-columns:1fr}}
@media(max-width:620px){.production-filter-heading,.saved-filter-heading{align-items:flex-start;flex-direction:column}.production-filter-heading>div:last-child{width:100%;justify-content:space-between}.production-filter-grid,.saved-filter-list{grid-template-columns:1fr}.production-filter-actions{align-items:stretch;flex-direction:column}.production-filter-actions button{width:100%}.save-filter-form{width:100%;flex-direction:column}.save-filter-form input{min-width:0;width:100%;box-sizing:border-box}}
@media(max-width:700px){.line-price{align-items:stretch;flex-direction:column}.line-price-description{padding-bottom:0}.line-price-controls{grid-template-columns:1fr 1fr}.line-price-controls .line-taxable-control{grid-column:1/-1}.product-tax-setting{align-self:stretch}}
@media(max-width:700px){.quick-price-summary{grid-template-columns:1fr 1fr}.quick-price-summary .quick-price-detail,.quick-price-empty{grid-column:1/-1}.quick-price-workspace .option-editor-heading{align-items:flex-start;flex-direction:column;gap:10px}.quick-price-workspace .option-editor-heading button{width:100%}}
@media(max-width:700px){.quote-approval-action{align-items:stretch;flex-direction:column}.quote-approval-history{align-items:flex-start;flex-wrap:wrap}.quote-approval-action button{width:100%}}
@media(max-width:900px){.sidebar{width:78px;padding:24px 12px}.brand>div:last-child,.nav-item:not(.active) b,.nav-item,.nav-section-label{font-size:0}.brand{padding:0 6px 30px}.nav-item span{font-size:20px}.sidebar-note{display:none}main{margin-left:78px;padding:25px}header{align-items:flex-start;flex-direction:column}.header-actions{justify-content:flex-start}.stats{grid-template-columns:1fr 1fr}.dashboard-grid,.invoice-aging-grid,.tax-settings-grid,.tag-management-grid{grid-template-columns:1fr}.customer-grid,.product-grid,.record-grid{grid-template-columns:1fr 1fr}.website-product-import{grid-template-columns:1fr 1fr}.search{display:none}.calculator{grid-template-columns:1fr}.transaction-info,.form-grid.three-column{grid-template-columns:1fr 1fr}.crm-detail-grid{grid-template-columns:1fr}.transaction-party-preview,.document-parties{grid-template-columns:1fr 1fr}.document-product-head,.document-product-row{grid-template-columns:minmax(220px,2fr) 105px 45px 90px 90px 75px}.payment-table{overflow-x:auto}.payment-table-head,.payment-row{min-width:760px}.document-pricing-editor{grid-template-columns:1fr 1fr}.document-pricing-editor>div{grid-column:1/-1}.job-detail-header{align-items:flex-start}.job-header-right{width:min(400px,55%)}.job-detail-summary{grid-template-columns:1fr 1fr}.job-specifications{grid-template-columns:1fr}.job-specifications>div+div{border-top:1px solid var(--line);border-left:0}.job-date-fields{grid-template-columns:1fr 1fr}.task-create-form{grid-template-columns:1fr 1fr}.task-note-field{grid-column:1/-1}.global-task-row{grid-template-columns:36px 1fr 140px}.global-task-type,.global-task-due{grid-column:2}.global-task-open,.global-task-delete{grid-row:1}}
@media(max-width:700px){.job-details-editor-heading{flex-direction:column}.job-details-editor-heading button{width:100%}.job-details-fields,.job-details-options{grid-template-columns:1fr}.job-details-price-preview{align-items:flex-start;flex-direction:column}}
@media(max-width:620px){main{padding:20px 14px}.sidebar{display:none}main{margin-left:0}header{align-items:flex-start}.header-actions{width:100%;flex-direction:column;align-items:stretch}.header-transaction-actions{align-items:stretch;flex-direction:column}.header-transaction-actions>div{display:grid;grid-template-columns:1fr}.header-transaction-actions button{width:100%;padding:10px}.user-menu-button{justify-content:flex-start}.user-task-heading{align-items:flex-start;flex-direction:column}.user-task-row{grid-template-columns:32px 1fr}.user-task-meta{grid-column:2;text-align:left}.stats,.invoice-view-filters{grid-template-columns:1fr}.customer-grid,.product-grid,.record-grid,.website-product-import{grid-template-columns:1fr}.tax-level-row,.tax-exemption-row,.document-pricing-editor{grid-template-columns:1fr}.document-pricing-editor>div{grid-column:auto}.tax-level-row,.tax-exemption-row{grid-template-columns:1fr}.job-table-wrap{overflow-x:auto}table{min-width:720px}.form-grid,.transaction-info,.form-grid.three-column{grid-template-columns:1fr}.form-grid .wide,.form-grid .span-two{grid-column:auto}.catalog-intro{align-items:flex-start}.dimension-grid{grid-template-columns:1fr}.option-selection-head,.tier-head,.decoration-head{display:none}.option-group-header{grid-template-columns:1fr auto}.option-group-header label{grid-column:1/-1}.option-row{grid-template-columns:1fr 1fr}.option-row .option-pricing-type,.option-row .option-amount{grid-column:auto}.option-row .remove-option{grid-column:1/-1}.tier-row,.decoration-row{grid-template-columns:1fr 1fr}.tier-row .remove-option{grid-column:1/-1}.line-option-groups{grid-template-columns:1fr}.workflow-banner{overflow-x:auto}.production-card{align-items:flex-start;flex-direction:column}.stage-control,.stage-control select{width:100%}.tier-display{grid-template-columns:1fr}.crm-summary{grid-template-columns:1fr 1fr}.document-preview-dialog{width:100vw;height:100vh;border-radius:0}.document-preview-dialog #recordDetail,.document-preview-dialog #jobDetailPreview{padding:24px 18px}.document-preview-dialog #recordDetail .record-actions{bottom:-24px;margin:24px -18px -24px;padding:14px 18px}.transaction-party-preview,.document-parties{grid-template-columns:1fr}.document-products{overflow-x:auto}.document-product-head,.document-product-row{min-width:850px}.document-header-actions{flex-wrap:wrap;justify-content:flex-end}.document-product-toolbar{justify-content:stretch;flex-direction:column;margin-bottom:-18px}.document-product-toolbar>*{justify-content:center;width:100%}.job-detail-header{flex-direction:column}.job-header-right{width:100%}.job-header-tags{order:2}.job-header-tags .job-tags{justify-content:flex-start}.job-header-right>.icon-button{margin-left:auto}.job-product-facts{grid-template-columns:1fr 1fr}.job-detail-summary,.job-price-summary,.proof-review-details,.job-date-fields{grid-template-columns:1fr}.job-detail-toolbar{align-items:stretch;flex-direction:column;gap:10px}.approved-proof-section{grid-template-columns:1fr}.approved-proof-section .proof-preview{width:100%;max-width:240px}.proof-review-shell{padding:20px}.proof-meta{display:block}.order-group-heading,.job-date-heading{align-items:flex-start;flex-direction:column}.job-tag-entry,.job-task-entry>div,.job-stage-section{align-items:stretch;flex-direction:column}.job-tag-entry input,.job-tag-entry select,.job-stage-section select{width:100%}.job-date-heading>div:last-child{text-align:left}}
