@font-face{font-family:Saira Semi Condensed;src:url(/assets/fonts/SairaSemiCondensed-400.ttf)format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Saira Semi Condensed;src:url(/assets/fonts/SairaSemiCondensed-500.ttf)format("truetype");font-style:normal;font-weight:500;font-display:swap}@font-face{font-family:Saira Semi Condensed;src:url(/assets/fonts/SairaSemiCondensed-600.ttf)format("truetype");font-style:normal;font-weight:600;font-display:swap}@font-face{font-family:Saira Semi Condensed;src:url(/assets/fonts/SairaSemiCondensed-700.ttf)format("truetype");font-style:normal;font-weight:700;font-display:swap}@font-face{font-family:Saira Semi Condensed;src:url(/assets/fonts/SairaSemiCondensed-800.ttf)format("truetype");font-style:normal;font-weight:800;font-display:swap}:root{--color-brand-primary:#e93b52;--color-brand-dark:#434343;--color-text-primary:var(--color-brand-dark);--color-text-secondary:#625b64;--color-surface:#fff;--color-surface-muted:#f8f7f7;--color-border:#e5e2e3;--color-action:var(--color-brand-primary);--color-action-subtle:color-mix(in srgb, var(--color-brand-primary) 10%, transparent);--color-action-border:color-mix(in srgb, var(--color-brand-primary) 50%, transparent);--shadow-card:0 10px 15px -3px #4343431a, 0 4px 6px -2px #4343430d;--font-sans:"Saira Semi Condensed", system-ui, sans-serif;--sondrich-document-font:var(--font-sans);--font-heading:var(--font-sans);--font-mono:ui-monospace, Consolas, monospace;--text:var(--color-text-secondary);--text-h:var(--color-text-primary);--bg:var(--color-surface);--border:var(--color-border);--code-bg:var(--color-surface-muted);--accent:var(--color-action);--accent-bg:var(--color-action-subtle);--accent-border:var(--color-action-border);--social-bg:var(--color-surface-muted);--shadow:var(--shadow-card);--sans:var(--font-sans);--heading:var(--font-heading);--mono:var(--font-mono)}.quotation-document,.invoice-document,.receipt-document,.statement-document{font-family:var(--sondrich-document-font)}*{box-sizing:border-box}body{background:var(--color-surface-muted);color:var(--color-text-primary);font-family:var(--font-sans);margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--color-action-subtle);outline-offset:2px}.app-shell{min-height:100svh;display:flex}.sidebar{background:var(--color-brand-dark);color:#fff;flex-direction:column;width:248px;min-height:100svh;padding:20px 12px;display:flex}.brand{letter-spacing:.04em;align-items:center;gap:10px;padding:5px 10px 28px;font-weight:800;display:flex}.brand b{background:var(--color-brand-primary);border-radius:8px;place-items:center;width:29px;height:29px;display:grid}.brand small{color:#f6a3af}.nav-group{margin-bottom:20px}.nav-group p{color:#c9c5c5;text-transform:uppercase;margin:0 10px 7px;font-size:.72rem;font-weight:700}.nav-link{color:#e8e5e5;border-radius:7px;padding:9px 12px;font-size:.9rem;text-decoration:none;display:block}.nav-link:hover{background:#ffffff17}.nav-link--active{background:var(--color-brand-primary);font-weight:700}.sidebar footer{border-top:1px solid #ffffff26;margin-top:auto;padding:14px 10px 3px;font-size:.76rem}.sidebar footer span{color:#bbb}.app-main{flex:1;min-width:0}.topbar{border-bottom:1px solid var(--color-border);background:var(--color-surface);align-items:center;height:66px;padding:0 28px;display:flex}.topbar>span{flex:1}.menu-button{background:0 0;border:0;font-size:1.35rem;display:none}.profile-button{color:var(--color-brand-dark);background:0 0;border:0;align-items:center;gap:9px;font-size:.82rem;display:flex}.profile-button span,.profile-button small{display:block}.profile-button small{color:var(--color-text-secondary);font-size:.68rem}.profile-button b{color:#a71932;background:#f8d8dd;border-radius:50%;place-items:center;width:32px;height:32px;display:grid}.content{max-width:1440px;margin:auto;padding:36px 40px}.page-heading{margin-bottom:28px}.page-heading h1{letter-spacing:-.035em;margin:2px 0 8px;font-size:clamp(1.65rem,2.8vw,2.25rem)}.page-heading p{color:var(--color-brand-primary);text-transform:uppercase;letter-spacing:.1em;margin:0;font-size:.74rem;font-weight:700}.page-heading span,.empty-state p{color:var(--color-text-secondary)}.metric-grid{grid-template-columns:repeat(4,1fr);gap:18px;display:grid}.metric-card,.content-card{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-card);border-radius:12px;padding:20px}.metric-card{min-height:190px}.empty-state{text-align:center;justify-items:center;margin:20px auto;padding:25px 12px;display:grid}.empty-state i{color:var(--color-brand-primary);font-size:1.7rem}.empty-state h2{margin:10px 0 5px;font-size:1rem}.empty-state p{margin:0;font-size:.86rem}.empty-state.compact{text-align:left;justify-items:start;margin:10px 0;padding:10px 0}.compact i{display:none}.compact h2{margin:0 0 4px;font-size:.84rem}.breadcrumbs{color:var(--color-text-secondary);margin-bottom:21px;font-size:.8rem}.breadcrumbs a{color:inherit}.input,.textarea{border:1px solid var(--color-border);border-radius:7px;width:100%;min-height:40px;padding:8px 10px}.textarea{min-height:96px}.check{accent-color:var(--color-brand-primary)}.button,.pagination button{border:1px solid #0000;border-radius:7px;min-height:40px;padding:8px 14px;font-weight:700}.button.primary{background:var(--color-brand-primary);color:#fff}.button.secondary,.pagination button{color:var(--color-brand-dark);border-color:var(--color-border);background:#fff}.button.ghost{background:0 0}.button.danger{color:#fff;background:#a71932}.table-wrap{overflow:auto}.table{border-collapse:collapse;width:100%}.table th,.table td{border-bottom:1px solid var(--color-border);text-align:left;padding:12px 14px}.badge{border-radius:999px;padding:3px 8px;font-size:.75rem;font-weight:700}.badge.neutral{background:#eee}.badge.success{color:#166438;background:#dff5e8}.badge.warning{color:#865a00;background:#fff0cf}.badge.danger{color:#a71932;background:#fbe1e5}.dropdown{position:relative}.dropdown summary{cursor:pointer}.dropdown>div{z-index:5;border:1px solid var(--color-border);min-width:180px;box-shadow:var(--shadow-card);background:#fff;border-radius:8px;margin-top:7px;padding:8px;position:absolute;right:0}.tabs{border-bottom:1px solid var(--color-border);gap:20px;display:flex}.tabs button{background:0 0;border:0;border-bottom:2px solid #0000;padding:9px 1px}.tabs [aria-selected=true]{color:var(--color-brand-primary);border-color:var(--color-brand-primary)}.pagination{align-items:center;gap:12px;display:flex}.tooltip{display:inline-flex;position:relative}.tooltip [role=tooltip]{background:var(--color-brand-dark);color:#fff;opacity:0;border-radius:5px;width:max-content;padding:5px 8px;font-size:.75rem;position:absolute;bottom:calc(100% + 7px);left:50%;transform:translate(-50%)}.tooltip:hover [role=tooltip],.tooltip:focus [role=tooltip]{opacity:1}.alert{border-left:3px solid;border-radius:6px;padding:12px 14px}.alert.info{background:#eaf5fc;border-color:#2773a5}.alert.success{background:#e6f6ec;border-color:#23864d}.alert.warning{background:#fff6df;border-color:#a56a00}.alert.error{border-color:var(--color-brand-primary);background:#fdebed}.dialog{border:0;border-radius:12px;width:min(500px,100% - 32px);padding:0;box-shadow:0 24px 48px #0004}.dialog::backdrop{background:#0006}.dialog header,.dialog footer{justify-content:space-between;align-items:center;padding:18px 22px;display:flex}.dialog header{border-bottom:1px solid var(--color-border)}.dialog header h2{margin:0;font-size:1rem}.dialog header button{background:0 0;border:0;font-size:1.4rem}.dialog-body{padding:22px}.dialog footer{border-top:1px solid var(--color-border);justify-content:end;gap:10px}.state-message{text-align:center;padding:24px}.mobile-scrim{display:none}@media (width<=960px){.sidebar{z-index:20;transition:transform .2s;position:fixed;transform:translate(-100%)}.sidebar--open{transform:translate(0)}.mobile-scrim:not([hidden]){z-index:10;background:#0006;border:0;display:block;position:fixed;inset:0}.menu-button{display:block}.metric-grid{grid-template-columns:repeat(2,1fr)}.content{padding:30px 24px}}@media (width<=560px){.content{padding:24px 16px}.profile-button span{display:none}.metric-grid{grid-template-columns:1fr}}.brand{padding:5px 10px 28px}.brand img{width:100%;max-width:176px;height:auto;display:block}.topbar-logo{width:auto;height:30px;display:none}@media (width<=960px){.topbar-logo{margin-left:14px;display:block}}@media (width<=900px){.invoice-document{width:100%;min-height:auto;padding:24px}.invoice-edit{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.invoice-filters,.invoice-screen-actions{flex-direction:column;align-items:stretch}.invoice-filters .input:first-child,.invoice-filters select{max-width:none}.invoice-edit,.invoice-document__header,.invoice-parties,.invoice-financials{grid-template-columns:1fr}.invoice-header-right,.invoice-meta span{text-align:left}}@media print{@page{size:Letter;margin:0}html,body{margin:0!important;padding:0!important}body{background:#fff}.sidebar,.topbar,.no-print{display:none!important}.app-main,.content{max-width:none;margin:0;padding:0;display:block}.invoice-document{aspect-ratio:auto;box-sizing:border-box;width:8.5in;min-height:11in;box-shadow:none;margin:0;padding:.45in}.invoice-document,.invoice-document *{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.invoice-items thead{display:table-header-group}.invoice-items thead,.invoice-items th{color:#fff!important;background:#e93b52!important}.invoice-totals .grand-total{color:#fff!important;background:#e93b52!important;font-weight:700!important}.invoice-totals .grand-total *{color:#fff!important}.invoice-items tr,.invoice-totals div,.payment-method,.cash-payment-instruction,.invoice-document>footer{break-inside:avoid;page-break-inside:avoid}}.quotation-preview-actions{justify-content:space-between;align-items:center;gap:12px;max-width:215.9mm;margin:0 auto 18px;display:flex}.quotation-preview-actions>div{gap:8px;display:flex}.quotation-document{aspect-ratio:8.5/11;box-sizing:border-box;width:8.5in;min-height:11in;color:var(--color-brand-dark);box-shadow:var(--shadow-card);font-family:var(--sondrich-document-font);background:#fff;flex-direction:column;margin:0 auto;padding:.45in;display:flex;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.quotation-document__header{grid-template-columns:minmax(0,1.25fr) minmax(250px,.75fr);align-items:start;gap:36px;padding-bottom:18px;display:grid}.quotation-document__header img{width:245px;max-width:100%;height:auto;display:block}.quotation-document__header>div{text-align:right}.quotation-document__header h1{color:var(--color-brand-primary);letter-spacing:.04em;margin:0 0 20px;font-size:3.15rem;font-weight:800;line-height:.95}.quotation-document__header dl{gap:6px;margin:0;display:grid}.quotation-document__header dl div{grid-template-columns:82px minmax(0,1fr);gap:14px;font-size:.74rem;display:grid}.quotation-document__header dt{text-align:left;font-weight:700}.quotation-document__header dd{text-align:right;overflow-wrap:anywhere;margin:0}.quotation-parties{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:50px;padding:12px 0 22px;display:grid}.quotation-parties h2{color:var(--color-brand-primary);letter-spacing:.08em;margin:0 0 10px;font-size:.75rem}.quotation-parties strong{margin-bottom:10px;font-size:1.08rem;display:block}.quotation-parties p{margin:0 0 8px;font-size:.75rem;line-height:1.4}.quotation-document__items{border-collapse:collapse;width:100%}.quotation-document__items th{background:var(--color-brand-primary);color:#fff;text-align:left;text-transform:uppercase;padding:8px 9px;font-size:.74rem}.quotation-document__items th:nth-child(n+3),.quotation-document__items td:nth-child(n+3){text-align:right}.quotation-document__items td{border-bottom:1px solid var(--color-border);vertical-align:top;padding:9px;font-size:.76rem}.quotation-document__items td:first-child{width:16%}.quotation-document__items td:nth-child(2){width:42%}.quotation-document__items td strong{font-weight:600}.quotation-financials{grid-template-columns:minmax(0,1fr) 275px;align-items:start;gap:34px;margin:18px 0;display:grid}.quotation-financials p{margin:0 0 9px;font-size:.75rem}.quotation-due-wording{font-weight:600}.quotation-financials dl{margin:0}.quotation-financials dl div{justify-content:space-between;gap:20px;padding:5px 9px;font-size:.8rem;display:flex}.quotation-financials dd{text-align:right;margin:0;font-weight:600}.quotation-financials .quotation-grand-total{background:var(--color-brand-primary);color:#fff;margin-top:5px;padding:9px;font-size:.94rem;font-weight:700}.quotation-terms{columns:2;column-gap:32px;margin-top:14px}.quotation-terms h2,.quotation-terms h3,.quotation-terms p,.quotation-terms ul{break-inside:avoid}.quotation-terms h2{color:var(--color-brand-primary);margin:0 0 7px;font-size:.82rem}.quotation-terms h2:not(:first-child){margin-top:14px}.quotation-terms h3{margin:8px 0 3px;font-size:.73rem}.quotation-terms p,.quotation-terms li{font-size:.7rem;line-height:1.4}.quotation-terms p{margin:0 0 6px}.quotation-terms ul{margin:3px 0 8px;padding-left:18px}.quotation-document>footer{border-top:1px solid var(--color-border);color:var(--color-text-secondary);text-align:center;margin-top:auto;padding-top:8px;font-size:.66rem}@media (width<=900px){.quotation-document{width:100%;min-height:auto;padding:24px}}@media (width<=600px){.quotation-preview-actions{flex-direction:column;align-items:stretch}.quotation-document__header,.quotation-parties,.quotation-financials{grid-template-columns:1fr}.quotation-document__header>div,.quotation-document__header dd{text-align:left}.quotation-terms{columns:1}}@media print{@page{size:Letter;margin:0}html,body{margin:0!important;padding:0!important}body{background:#fff}.sidebar,.topbar,.no-print{display:none!important}.app-main,.content{max-width:none;margin:0;padding:0;display:block}.quotation-document{aspect-ratio:auto;box-sizing:border-box;width:8.5in;min-height:11in;box-shadow:none;margin:0;padding:.45in}.quotation-document,.quotation-document *{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.quotation-document__header{grid-template-columns:minmax(0,1.25fr) minmax(250px,.75fr)}.quotation-parties{grid-template-columns:repeat(2,minmax(0,1fr))}.quotation-financials{grid-template-columns:minmax(0,1fr) 275px}.quotation-document__items thead{display:table-header-group}.quotation-document__items thead,.quotation-document__items th{color:#fff!important;background:#e93b52!important}.quotation-grand-total{color:#fff!important;background:#e93b52!important;font-weight:700!important}.quotation-grand-total *{color:#fff!important}.quotation-document__items tr,.quotation-financials dl div,.quotation-terms h2,.quotation-terms h3,.quotation-terms p,.quotation-terms ul,.quotation-document>footer{break-inside:avoid;page-break-inside:avoid}}.access-heading{justify-content:space-between;align-items:end;display:flex}.access-filters{grid-template-columns:2fr 1fr 1fr;gap:12px;margin:18px 0;display:grid}.access-form{margin:18px 0}.access-form-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin-top:18px;display:grid}.access-form-grid label,.role-basics label{gap:6px;font-size:.82rem;font-weight:700;display:grid}.access-security-note{color:var(--color-text-secondary);font-size:.8rem}.access-error{border-left:3px solid var(--color-action);background:var(--color-action-subtle);padding:10px}.access-actions{white-space:nowrap}.access-actions .button{min-height:auto;padding:4px 6px;font-size:.72rem}.role-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:18px;display:grid}.role-cards>article{flex-direction:column;min-width:0;display:flex}.role-cards header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.role-cards header>.badge{white-space:nowrap;flex:none;justify-content:center;align-self:flex-start;align-items:center;width:fit-content;height:fit-content;min-height:0;padding:5px 10px;display:inline-flex}.role-cards h2,.role-cards p{margin:0}.role-cards p,.role-cards span{color:var(--color-text-secondary)}.role-cards strong,.role-cards span{margin-top:10px;display:block}.role-cards footer{justify-content:space-between;gap:8px;margin-top:auto;padding-top:16px;display:flex}.role-basics{grid-template-columns:1fr 1fr 2fr;gap:14px;display:grid}.permission-matrix{margin-top:18px}.permission-matrix td{flex-wrap:wrap;gap:16px;display:flex}.permission-matrix label{text-transform:capitalize;align-items:center;gap:5px;display:flex}.access-detail{margin:18px 0}.access-detail dl{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.access-detail dl div{background:var(--color-surface-muted);padding:12px}.access-detail dt{color:var(--color-text-secondary);text-transform:uppercase;font-size:.75rem;font-weight:700}.access-detail dd{margin:5px 0}.access-denied{text-align:center;max-width:620px;margin:60px auto}.access-denied p{color:var(--color-action);font-weight:700}.access-denied a{margin-top:18px;display:inline-block}@media (width<=900px){.access-form-grid,.role-cards,.access-detail dl{grid-template-columns:repeat(2,minmax(0,1fr))}.role-basics{grid-template-columns:1fr}}@media (width<=600px){.access-heading{flex-direction:column;align-items:stretch}.access-filters,.access-form-grid,.role-cards,.access-detail dl{grid-template-columns:1fr}}.settings-heading{justify-content:space-between;align-items:end;display:flex}.settings-heading>div:last-child{gap:10px;display:flex}.settings-panel{margin-top:18px}.settings-panel h2{margin-top:0}.settings-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.settings-grid label,.settings-text label{text-transform:capitalize;gap:6px;font-size:.82rem;font-weight:700;display:grid}.settings-text{grid-template-columns:1fr 1fr;gap:14px;display:grid}.settings-logo{background:var(--color-surface-muted);align-items:center;gap:18px;margin-top:20px;padding:14px;display:flex}.settings-logo img{width:190px}.settings-safe{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.settings-safe div{background:var(--color-surface-muted);padding:13px}.settings-safe dt{color:var(--color-text-secondary);text-transform:uppercase;font-size:.74rem;font-weight:700}.settings-safe dd{margin:5px 0}.settings-brand{grid-template-columns:40px 1fr 40px 1fr;align-items:center;gap:12px;display:grid}.settings-brand div{border:1px solid var(--color-border);border-radius:8px;width:40px;height:40px}@media (width<=900px){.settings-grid,.settings-safe{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.settings-heading{flex-direction:column;align-items:stretch}.settings-grid,.settings-safe,.settings-text{grid-template-columns:1fr}}.catalog-heading{justify-content:space-between;align-items:end;gap:16px;display:flex}.catalog-filters{grid-template-columns:2fr repeat(4,1fr);gap:12px;margin-bottom:18px;display:grid}.catalog-actions{white-space:nowrap}.catalog-actions .button{min-height:auto;padding:4px 6px;font-size:.75rem}.catalog-form{margin-bottom:22px}.catalog-form-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin-top:20px;display:grid}.catalog-form-grid label{gap:6px;font-size:.83rem;font-weight:700;display:grid}.catalog-form-grid .wide{grid-column:span 4}.catalog-error{border-left:3px solid var(--color-action);background:var(--color-action-subtle);padding:10px}.catalog-detail dl{grid-template-columns:repeat(4,1fr);gap:14px;margin-top:20px;display:grid}.catalog-detail dl div{background:var(--color-surface-muted);border-radius:7px;padding:14px}.catalog-detail dt{color:var(--color-text-secondary);text-transform:uppercase;font-size:.75rem;font-weight:700}.catalog-detail dd{margin:5px 0 0}@media (width<=1000px){.catalog-filters,.catalog-form-grid,.catalog-detail dl{grid-template-columns:repeat(2,1fr)}.catalog-form-grid .wide{grid-column:span 2}}@media (width<=600px){.catalog-heading{flex-direction:column;align-items:stretch}.catalog-filters,.catalog-form-grid,.catalog-detail dl{grid-template-columns:1fr}.catalog-form-grid .wide{grid-column:auto}}.attachments-panel{margin-top:18px}.attachments-panel>header,.attachments-panel>footer,.attachment-list article{align-items:center;gap:10px;display:flex}.attachments-panel>header{justify-content:space-between}.attachments-panel h2,.attachments-panel p{margin:0}.attachment-upload{border:1px dashed var(--color-border);border-radius:8px;grid-template-columns:1fr 2fr auto;gap:10px;margin:14px 0;padding:16px;display:grid}.attachment-upload small{color:var(--color-text-secondary);grid-column:1/-1}.attachment-list article{border-top:1px solid var(--color-border);padding:11px 0}.attachment-list article>div{flex:1;min-width:0}.attachment-list b,.attachment-list span,.attachment-list small{overflow-wrap:anywhere;display:block}.attachment-list span,.attachment-list small{color:var(--color-text-secondary);font-size:.75rem}.attachments-panel>footer{justify-content:flex-end;margin-top:12px}@media (width<=650px){.attachment-upload{grid-template-columns:1fr}.attachment-list article{flex-wrap:wrap;align-items:flex-start}.attachment-list article>div{flex-basis:100%}}.customers-heading{justify-content:space-between;align-items:end;gap:16px;display:flex}.customer-filters{gap:12px;margin-bottom:18px;display:flex}.customer-filters .input{max-width:360px}.customer-filters select{max-width:180px}.customer-actions{white-space:nowrap}.customer-actions .button{min-height:auto;padding:4px 6px;font-size:.75rem}.customer-form{margin-bottom:22px}.customer-form-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin-top:20px;display:grid}.customer-form label{gap:6px;font-size:.83rem;font-weight:700;display:grid}.customer-form .wide{grid-column:span 3}.customer-detail{grid-template-columns:repeat(3,1fr);gap:18px;margin:22px 0 0;display:grid}.customer-detail div{background:var(--color-surface-muted);border-radius:7px;padding:12px}.customer-detail dt{color:var(--color-text-secondary);text-transform:uppercase;margin-bottom:5px;font-size:.75rem;font-weight:700}.customer-detail dd{margin:0;font-size:.9rem}@media (width<=800px){.customer-form-grid,.customer-detail{grid-template-columns:repeat(2,1fr)}.customer-form .wide{grid-column:span 2}}@media (width<=560px){.customers-heading,.customer-filters{flex-direction:column;align-items:stretch}.customer-filters .input,.customer-filters select{max-width:none}.customer-form-grid,.customer-detail{grid-template-columns:1fr}.customer-form .wide{grid-column:auto}}.invoice-page-heading,.invoice-screen-actions{justify-content:space-between;align-items:center;gap:16px;display:flex}.invoice-filters{gap:12px;margin-bottom:18px;display:flex}.invoice-filters .input:first-child{max-width:380px}.invoice-filters select{max-width:190px}.invoice-screen-actions{max-width:215.9mm;margin:0 auto 18px}.invoice-screen-actions>div{gap:8px;display:flex}.invoice-edit{border:1px solid var(--color-border);background:var(--color-surface);border-radius:10px;grid-template-columns:repeat(4,1fr) auto;align-items:end;gap:12px;max-width:215.9mm;margin:0 auto 18px;padding:16px;display:grid}.invoice-edit label{gap:5px;font-size:.78rem;font-weight:700;display:grid}.invoice-document{aspect-ratio:8.5/11;box-sizing:border-box;width:8.5in;min-height:11in;color:var(--color-brand-dark);box-shadow:var(--shadow-card);font-family:var(--sondrich-document-font);background:#fff;flex-direction:column;margin:0 auto;padding:.45in;display:flex;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.invoice-document__header{grid-template-columns:minmax(0,1.25fr) minmax(250px,.75fr);align-items:start;gap:36px;padding-bottom:18px;display:grid}.invoice-logo{object-fit:contain;width:245px;max-width:100%;height:auto;display:block}.invoice-header-right{text-align:right}.invoice-header-right h1{color:var(--color-brand-primary);letter-spacing:.055em;margin:0 0 20px;font-size:3.5rem;font-weight:800;line-height:.9}.invoice-meta{gap:6px;display:grid}.invoice-meta p{grid-template-columns:82px minmax(0,1fr);gap:14px;margin:0;font-size:.74rem;line-height:1.35;display:grid}.invoice-meta b{text-align:left}.invoice-meta span{text-align:right;overflow-wrap:anywhere}.invoice-parties{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:50px;padding:12px 0 24px;display:grid}.invoice-parties h2{color:var(--color-brand-primary);letter-spacing:.08em;margin:0 0 10px;font-size:.75rem}.invoice-parties strong{margin-bottom:11px;font-size:1.08rem;display:block}.invoice-parties p{margin:0 0 9px;font-size:.76rem;line-height:1.4}.invoice-from p{grid-template-columns:68px minmax(0,1fr);gap:7px;display:grid}.invoice-from p b{font-weight:600}.invoice-parties span{overflow-wrap:anywhere}.invoice-items{border-collapse:collapse;width:100%}.invoice-items th{background:var(--color-brand-primary);color:#fff;text-align:left;text-transform:uppercase;padding:8px 9px;font-size:.74rem}.invoice-items th:nth-child(n+3),.invoice-items td:nth-child(n+3){text-align:right}.invoice-items td{border-bottom:1px solid var(--color-border);vertical-align:top;padding:9px;font-size:.76rem}.invoice-items td:first-child{width:16%}.invoice-items td:nth-child(2){width:42%}.invoice-items td strong{font-weight:600}.invoice-financials{grid-template-columns:minmax(0,1fr) 275px;align-items:start;gap:34px;margin:18px 0 16px;display:grid}.invoice-lower-copy p{margin:0 0 10px;font-size:.76rem}.invoice-due-wording{font-weight:600}.invoice-notes{color:var(--color-text-secondary)}.invoice-totals{margin:0}.invoice-totals div{justify-content:space-between;gap:20px;padding:5px 9px;font-size:.8rem;display:flex}.invoice-totals dd{text-align:right;margin:0;font-weight:600}.invoice-totals .grand-total{background:var(--color-brand-primary);color:#fff;margin-top:5px;padding:9px;font-size:.94rem;font-weight:700}.payment-section{margin-top:10px}.payment-section h2{color:var(--color-brand-primary);margin:0 0 7px;font-size:.82rem}.payment-section>p{margin:0 0 12px;font-size:.75rem}.payment-method{margin:0 0 13px}.payment-method h3{margin:0 0 5px;font-size:.75rem}.payment-method p{grid-template-columns:105px minmax(0,240px);gap:12px;margin:0 0 3px;font-size:.72rem;line-height:1.35;display:grid}.payment-method p b{font-weight:600}.cash-payment-instruction{background:0 0!important;border:0!important;padding:0!important}.invoice-document>footer{border-top:1px solid var(--color-border);color:var(--color-text-secondary);text-align:center;margin-top:auto;padding-top:8px;font-size:.66rem}@media (width<=900px){.invoice-document{width:100%;min-height:auto;padding:24px}.invoice-edit{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.invoice-filters,.invoice-screen-actions{flex-direction:column;align-items:stretch}.invoice-filters .input:first-child,.invoice-filters select{max-width:none}.invoice-edit,.invoice-document__header,.invoice-parties,.invoice-financials{grid-template-columns:1fr}.invoice-header-right,.invoice-meta span{text-align:left}}@media print{@page{size:Letter;margin:0}html,body{margin:0!important;padding:0!important}body{background:#fff}.sidebar,.topbar,.no-print{display:none!important}.app-main,.content{max-width:none;margin:0;padding:0;display:block}.invoice-document{aspect-ratio:auto;box-sizing:border-box;width:8.5in;min-height:11in;box-shadow:none;margin:0;padding:.45in}.invoice-document,.invoice-document *{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.invoice-items thead{display:table-header-group}.invoice-items thead,.invoice-items th{color:#fff!important;background:#e93b52!important}.invoice-totals .grand-total{color:#fff!important;background:#e93b52!important;font-weight:700!important}.invoice-totals .grand-total *{color:#fff!important}.invoice-items tr,.invoice-totals div,.payment-method,.cash-payment-instruction,.invoice-document>footer{break-inside:avoid;page-break-inside:avoid}}.quotation-page-heading{justify-content:space-between;align-items:end;gap:16px;display:flex}.quotation-filters{gap:12px;margin-bottom:18px;display:flex}.quotation-filters .input:first-child{max-width:360px}.quotation-filters select{max-width:180px}.quotation-workflow{color:var(--color-text-secondary);flex-wrap:wrap;gap:8px;margin-top:18px;font-size:.82rem;display:flex}.quotation-workflow span{background:var(--color-surface);border:1px solid var(--color-border);border-radius:999px;padding:6px 9px}.quotation-editor{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-card);border-radius:12px;padding:24px}.quotation-item-source{gap:6px;display:grid}.quotation-item-source small{font-size:.72rem;font-weight:600}.editor-heading,.line-items__heading,.quotation-actions{justify-content:space-between;align-items:center;gap:12px;display:flex}.editor-heading h2,.line-items__heading h3{margin:0}.editor-heading p,.quotation-editor small{color:var(--color-text-secondary)}.quotation-message{background:var(--color-action-subtle);color:var(--color-brand-dark);border-radius:6px;margin:16px 0;padding:10px}.quotation-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin:24px 0;display:grid}.quotation-grid label,.quotation-item label,.quotation-bottom label{gap:6px;font-size:.83rem;font-weight:700;display:grid}.quotation-grid small{font-weight:400}.line-items{border-top:1px solid var(--color-border);padding-top:20px}.quotation-item{border-bottom:1px solid var(--color-border);grid-template-columns:minmax(155px,1.25fr) minmax(160px,1.5fr) repeat(4,minmax(82px,.75fr)) auto;align-items:end;gap:10px;padding:12px 0;display:grid}.quotation-bottom{grid-template-columns:1fr 280px;gap:28px;margin-top:22px;display:grid}.quotation-totals{background:var(--color-surface-muted);border-radius:8px;padding:16px}.quotation-totals p,.quotation-totals strong{justify-content:space-between;margin:0 0 9px;display:flex}.quotation-totals strong{border-top:1px solid var(--color-border);margin-top:13px;padding-top:13px}.quotation-actions{border-top:1px solid var(--color-border);justify-content:end;margin-top:24px;padding-top:20px}@media (width<=900px){.quotation-grid,.quotation-item{grid-template-columns:repeat(2,1fr)}.quotation-bottom{grid-template-columns:1fr}.quotation-totals{max-width:none}}@media (width<=560px){.quotation-page-heading,.quotation-filters,.quotation-actions{flex-direction:column;align-items:stretch}.quotation-filters .input:first-child,.quotation-filters select{max-width:none}.quotation-grid,.quotation-item{grid-template-columns:1fr}}.receipts-heading{justify-content:space-between;align-items:end;display:flex}.receipt-filters{grid-template-columns:2fr 1fr 1fr;gap:12px;margin-bottom:18px;display:grid}.receipt-actions{justify-content:space-between;max-width:8.5in;margin:0 auto 12px;display:flex}.receipt-actions>div{align-items:center;gap:10px;display:flex}.receipt-document{box-sizing:border-box;background:var(--color-surface);width:min(8.5in,100%);min-height:11in;box-shadow:var(--shadow-card);color:var(--color-brand-dark);flex-direction:column;margin:0 auto;padding:.48in;display:flex}.receipt-document__header{border-bottom:3px solid var(--color-action);justify-content:space-between;align-items:start;padding-bottom:18px;display:flex}.receipt-document__header img{object-fit:contain;object-position:left top;width:180px;max-height:82px}.receipt-document__header h1{color:var(--color-action);margin:0;font-size:2.6rem}.receipt-document dl{margin:8px 0 0}.receipt-document dl div{justify-content:space-between;gap:24px;display:flex}.receipt-document dt{color:var(--color-text-secondary);font-weight:700}.receipt-document dd{margin:0}.receipt-from{grid-template-columns:1fr 1fr;gap:40px;margin-top:26px;display:grid}.receipt-from h2,.receipt-payment h2{color:var(--color-action);letter-spacing:.08em;margin:0 0 8px;font-size:.82rem}.receipt-from p{line-height:1.5}.receipt-amount{text-align:center;background:var(--color-action);color:#fff;margin:28px 0;padding:22px}.receipt-amount span{letter-spacing:.1em;font-size:.8rem;font-weight:700}.receipt-amount strong{margin:5px;font-size:2rem;display:block}.receipt-amount p{margin:0}.receipt-payment{background:var(--color-surface-muted);padding:18px}.receipt-payment dl{grid-template-columns:1fr 1fr;gap:10px 30px;display:grid}.receipt-balances{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:22px;display:grid}.receipt-balances div{border:1px solid var(--color-border);padding:14px}.receipt-balances span,.receipt-balances strong{display:block}.receipt-balances span{color:var(--color-text-secondary);font-size:.75rem}.receipt-document footer{border-top:1px solid var(--color-border);text-align:center;flex-direction:column;gap:4px;margin-top:auto;padding-top:18px;display:flex}.receipt-void{border:2px solid var(--color-action);color:var(--color-action);text-align:center;margin-top:14px;padding:8px;font-size:1.1rem;font-weight:800}@media print{@page{size:Letter;margin:0}html,body{margin:0!important;padding:0!important}.sidebar,.topbar,.no-print{display:none!important}.app-main,.content{max-width:none;margin:0;padding:0;display:block}.receipt-document{width:8.5in;min-height:11in;box-shadow:none;margin:0;padding:.48in}.receipt-document,.receipt-document *{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}}@media (width<=650px){.receipt-filters,.receipt-from,.receipt-payment dl,.receipt-balances{grid-template-columns:1fr}.receipt-document{min-height:auto;padding:24px}.receipt-document__header{gap:16px}.receipt-document__header img{width:130px}}.payments-heading{justify-content:space-between;align-items:end;gap:16px;display:flex}.payment-filters{grid-template-columns:2fr repeat(3,1fr);gap:12px;margin-bottom:18px;display:grid}.payment-form{margin-bottom:20px}.payment-form h2{margin-top:0}.payment-form-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.payment-form label{gap:6px;font-size:.83rem;font-weight:700;display:grid}.payment-form .wide{grid-column:span 3}.payment-summary,.payment-detail dl{grid-template-columns:repeat(4,1fr);gap:12px;margin:18px 0;display:grid}.payment-summary div,.payment-detail dl div{background:var(--color-surface-muted);border-radius:7px;padding:12px}.payment-summary dt,.payment-detail dt{color:var(--color-text-secondary);text-transform:uppercase;font-size:.75rem;font-weight:700}.payment-summary dd,.payment-detail dd{margin:5px 0 0;font-weight:600}.payment-form-actions{justify-content:flex-end;gap:10px;display:flex}.payment-detail{margin-top:18px}.payment-detail header{justify-content:space-between;align-items:start;display:flex}.payment-detail h1,.payment-detail p{margin:0}@media (width<=900px){.payment-filters,.payment-form-grid,.payment-summary,.payment-detail dl{grid-template-columns:repeat(2,1fr)}.payment-form .wide{grid-column:span 2}}@media (width<=560px){.payments-heading,.payment-filters{flex-direction:column;align-items:stretch;display:flex}.payment-form-grid,.payment-summary,.payment-detail dl{grid-template-columns:1fr}.payment-form .wide{grid-column:auto}}.expenses-heading{justify-content:space-between;align-items:end;gap:16px;display:flex}.expense-summary{grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px;display:grid}.expense-summary div{border:1px solid var(--color-border);background:var(--color-surface);border-radius:10px;padding:16px}.expense-summary span,.expense-summary strong{display:block}.expense-summary span{color:var(--color-text-secondary);font-size:.78rem}.expense-summary strong{margin-top:7px;font-size:1.35rem}.expense-filters{grid-template-columns:2fr repeat(4,1fr);gap:12px;margin-bottom:18px;display:grid}.expense-actions{white-space:nowrap}.expense-actions .button{min-height:auto;padding:4px 6px;font-size:.72rem}.expense-form{margin-bottom:20px}.expense-form-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin-top:20px;display:grid}.expense-form-grid label{gap:6px;font-size:.83rem;font-weight:700;display:grid}.expense-form-grid .wide{grid-column:span 4}.expense-error{border-left:3px solid var(--color-action);background:var(--color-action-subtle);padding:10px}.expense-detail{margin-top:16px}.expense-detail header{justify-content:space-between;display:flex}.expense-detail h1,.expense-detail header p{margin:0}.expense-detail dl{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.expense-detail dl div{background:var(--color-surface-muted);padding:14px}.expense-detail dt{color:var(--color-text-secondary);text-transform:uppercase;font-size:.74rem;font-weight:700}.expense-detail dd{margin:5px 0 0}@media (width<=1000px){.expense-filters,.expense-form-grid,.expense-detail dl{grid-template-columns:repeat(2,1fr)}.expense-form-grid .wide{grid-column:span 2}}@media (width<=600px){.expenses-heading{flex-direction:column;align-items:stretch}.expense-summary,.expense-filters,.expense-form-grid,.expense-detail dl{grid-template-columns:1fr}.expense-form-grid .wide{grid-column:auto}}.projects-heading,.project-detail-actions{justify-content:space-between;align-items:end;gap:16px;display:flex}.project-filters{grid-template-columns:2fr repeat(4,1fr);gap:12px;margin-bottom:18px;display:grid}.project-actions{white-space:nowrap}.project-actions .button{min-height:auto;padding:4px 6px;font-size:.72rem}.project-form{margin-bottom:20px}.project-form-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin-top:20px;display:grid}.project-form-grid>label{gap:6px;font-size:.83rem;font-weight:700;display:grid}.project-form-grid .wide{grid-column:span 4}.project-links{border:1px solid var(--color-border);flex-wrap:wrap;gap:10px 18px;padding:14px;display:flex}.project-links label{align-items:center;gap:6px;font-size:.82rem;display:flex}.project-error{border-left:3px solid var(--color-action);background:var(--color-action-subtle);padding:10px}.project-progress{background:var(--color-border);border-radius:999px;min-width:110px;height:22px;position:relative;overflow:hidden}.project-progress span{background:var(--color-action);height:100%;display:block}.project-progress b{text-align:center;font-size:.72rem;position:absolute;inset:2px}.project-detail-actions{align-items:center;margin-bottom:16px}.project-detail>header{justify-content:space-between;align-items:start;display:flex}.project-detail h1,.project-detail header p{margin:0}.project-detail h2{margin-top:28px;font-size:1rem}.project-overview,.project-financial{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.project-overview div,.project-financial div{background:var(--color-surface-muted);padding:13px}.project-detail dt{color:var(--color-text-secondary);text-transform:uppercase;font-size:.73rem;font-weight:700}.project-detail dd{margin:5px 0 0}.project-activity{padding:0;list-style:none}.project-activity li{border-bottom:1px solid var(--color-border);justify-content:space-between;gap:20px;padding:9px 0;display:flex}.project-activity time{color:var(--color-text-secondary);font-size:.76rem}@media (width<=1000px){.project-filters,.project-form-grid,.project-overview,.project-financial{grid-template-columns:repeat(2,1fr)}.project-form-grid .wide{grid-column:span 2}}@media (width<=650px){.projects-heading,.project-detail-actions{flex-direction:column;align-items:stretch}.project-filters,.project-form-grid,.project-overview,.project-financial{grid-template-columns:1fr}.project-form-grid .wide{grid-column:auto}}.finance-form{margin-bottom:1rem}.finance-form h2{margin-top:0}.finance-form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-bottom:1rem;display:grid}.finance-form-grid label,.finance-form-grid .wide{gap:.35rem;display:grid}.finance-form-grid .wide{grid-column:1/-1}.finance-filters{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-bottom:1rem;display:grid}.finance-summary{grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem;margin-bottom:1rem;display:grid}.finance-summary article{background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-card);border-radius:12px;padding:1rem}.finance-summary span,.finance-summary strong{display:block}.finance-summary strong{color:var(--color-text-primary);margin-top:.35rem;font-size:1.25rem}.finance-actions{white-space:nowrap}.ledger-transaction-table{min-width:1420px}.ledger-transaction-table th{font-size:12px;font-weight:600}.ledger-transaction-table td{font-size:12.5px;line-height:1.35}.ledger-transaction-table th:nth-child(2),.ledger-transaction-table td:nth-child(2),.ledger-transaction-table th:nth-child(4),.ledger-transaction-table td:nth-child(4),.ledger-transaction-table th:nth-child(9),.ledger-transaction-table td:nth-child(9),.ledger-transaction-table th:nth-child(12),.ledger-transaction-table td:nth-child(12){white-space:nowrap;width:1%}.ledger-transaction-table th:nth-child(3),.ledger-transaction-table td:nth-child(3){min-width:150px}.ledger-transaction-table th:nth-child(5),.ledger-transaction-table td:nth-child(5){min-width:210px}.ledger-transaction-table th:nth-child(6),.ledger-transaction-table td:nth-child(6){min-width:135px}.ledger-transaction-table th:nth-child(7),.ledger-transaction-table td:nth-child(7),.ledger-transaction-table th:nth-child(8),.ledger-transaction-table td:nth-child(8){white-space:nowrap;text-align:right;font-variant-numeric:tabular-nums;min-width:155px}.ledger-transaction-table th:nth-child(10),.ledger-transaction-table td:nth-child(10),.ledger-transaction-table th:nth-child(11),.ledger-transaction-table td:nth-child(11){min-width:130px}.accounts-payable-table{min-width:1420px}.accounts-payable-table th{font-size:12px;font-weight:600}.accounts-payable-table td{font-size:12.5px;line-height:1.35}.accounts-payable-table th:first-child,.accounts-payable-table td:first-child,.accounts-payable-table th:nth-child(6),.accounts-payable-table td:nth-child(6),.accounts-payable-table th:nth-child(9),.accounts-payable-table td:nth-child(9),.accounts-payable-table th:nth-child(10),.accounts-payable-table td:nth-child(10),.accounts-payable-table th:nth-child(12),.accounts-payable-table td:nth-child(12){white-space:nowrap;width:1%}.accounts-payable-table th:nth-child(2),.accounts-payable-table td:nth-child(2){min-width:165px}.accounts-payable-table th:nth-child(3),.accounts-payable-table td:nth-child(3){min-width:210px}.accounts-payable-table th:nth-child(4),.accounts-payable-table td:nth-child(4),.accounts-payable-table th:nth-child(5),.accounts-payable-table td:nth-child(5){min-width:125px}.accounts-payable-table th:nth-child(7),.accounts-payable-table td:nth-child(7),.accounts-payable-table th:nth-child(8),.accounts-payable-table td:nth-child(8){white-space:nowrap;text-align:right;font-variant-numeric:tabular-nums;min-width:165px}.accounts-payable-table th:nth-child(11),.accounts-payable-table td:nth-child(11){min-width:135px}@media (width<=950px){.finance-summary,.finance-form-grid,.finance-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.finance-summary,.finance-form-grid,.finance-filters{grid-template-columns:1fr}}.auth-page{background:linear-gradient(135deg, var(--color-brand-primary) 0%, var(--color-brand-dark) 100%);place-items:center;min-height:100svh;padding:28px;display:grid}.auth-card{border:1px solid var(--color-border);background:var(--color-surface);border-radius:16px;width:min(100%,430px);padding:36px;box-shadow:0 22px 55px #00000038}.auth-card>img{width:180px;max-width:100%;height:auto;margin:0 auto 24px;display:block}.auth-card header{text-align:center;margin-bottom:26px}.auth-card header p{color:var(--color-action);letter-spacing:.08em;margin:0;font-weight:700}.auth-card h1{color:var(--color-text-primary);margin:0 0 6px;font-weight:600}.auth-card header span,.auth-card>p{color:var(--color-text-secondary)}.auth-form{gap:18px;display:grid}.auth-form label{color:var(--color-text-primary);gap:6px;font-weight:600;display:grid}.auth-form a{color:var(--color-action);text-align:center;font-weight:600}.auth-form .button{width:100%}.auth-error,.auth-success{border-radius:8px;margin:0;padding:10px 12px}.auth-error{color:#8b1e2d;background:color-mix(in srgb, var(--color-action) 10%, white)}@media (width<=520px){.auth-page{padding:18px}.auth-card{border-radius:14px;padding:28px 22px}.auth-card>img{width:155px;margin-bottom:22px}}.auth-success{color:#22643c;background:#eef8f1}.mfa-code{text-align:center;letter-spacing:.35em;font-variant-numeric:tabular-nums;font-size:1.5rem}.mfa-qr{border:1px solid var(--color-border);background:#fff;border-radius:10px;width:min(240px,100%);height:auto;margin:0 auto;padding:8px}.mfa-secret{text-align:center;gap:6px;display:grid}.mfa-secret span{color:var(--color-text-secondary);font-weight:600}.mfa-secret code{overflow-wrap:anywhere;background:color-mix(in srgb, var(--color-surface) 88%, var(--color-brand-dark));-webkit-user-select:all;user-select:all;border-radius:8px;padding:10px}.dashboard-heading{justify-content:space-between;align-items:end;gap:16px;display:flex}.dashboard-actions,.quick-actions{gap:10px;display:flex}.dashboard-actions a,.quick-actions a{text-decoration:none}.dashboard-kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 16px;display:grid}.dashboard-kpi{border:1px solid var(--color-border);background:var(--color-surface);min-height:146px;box-shadow:var(--shadow-card);color:inherit;border-radius:12px;flex-direction:column;padding:18px;text-decoration:none;display:flex}.dashboard-kpi:hover{border-color:var(--color-action)}.dashboard-kpi span{color:var(--color-text-secondary);font-size:.8rem;font-weight:700}.dashboard-kpi strong{margin:12px 0 5px;font-size:2rem}.dashboard-kpi small{color:var(--color-text-secondary)}.dashboard-grid{grid-template-columns:1fr 1fr;gap:18px;margin-top:18px;display:grid}.dashboard-grid h2{margin:0;font-size:1rem}.financial-list{margin:14px 0 0}.financial-list div,.status-list div,.activity-list li{border-bottom:1px solid var(--color-border);justify-content:space-between;padding:10px 0;display:flex}.financial-list dt,.status-list span,.activity-list small{color:var(--color-text-secondary)}.financial-list dd{margin:0;font-weight:700}.status-list{text-transform:capitalize;margin-top:12px}.activity-list{margin:12px 0 0;padding:0;list-style:none}.activity-list li{gap:10px}.quick-actions{flex-wrap:wrap;margin-top:14px}@media (width<=1000px){.dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=680px){.dashboard-heading,.dashboard-actions{flex-direction:column;align-items:stretch}.dashboard-kpis,.dashboard-grid{grid-template-columns:1fr}.dashboard-actions,.dashboard-actions a .button{width:100%}}.statement-controls{grid-template-columns:1.4fr repeat(3,1fr) auto;align-items:end;gap:12px;margin-bottom:18px;display:grid}.statement-controls label{gap:6px;font-size:.8rem;font-weight:700;display:grid}.statement-overview{justify-content:space-between;align-items:center;gap:16px;display:flex}.statement-overview h2,.statement-overview p{margin:0}.statement-actions{justify-content:space-between;max-width:8.5in;margin:0 auto 14px;display:flex}.statement-document{box-sizing:border-box;width:8.5in;min-height:11in;color:var(--color-brand-dark);box-shadow:var(--shadow-card);font-family:var(--sondrich-document-font);background:#fff;flex-direction:column;margin:0 auto;padding:.45in;display:flex;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.statement-header{grid-template-columns:1fr 1fr;align-items:start;gap:32px;display:grid}.statement-header img{width:235px}.statement-header>div{text-align:right}.statement-header h1{color:var(--color-brand-primary);margin:0 0 18px;font-size:2.55rem;line-height:1}.statement-header dl{margin:0}.statement-header dl div{justify-content:space-between;gap:15px;font-size:.73rem;display:flex}.statement-header dd{margin:0}.statement-customer{margin:25px 0}.statement-customer h2{color:var(--color-brand-primary);margin:0 0 8px;font-size:.76rem}.statement-customer p{margin:3px 0;font-size:.74rem}.statement-summary{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:20px;display:grid}.statement-summary div{border:1px solid var(--color-border);padding:12px}.statement-summary span,.statement-summary strong{display:block}.statement-summary span{font-size:.68rem}.statement-summary strong{margin-top:5px}.statement-summary .statement-closing{background:var(--color-brand-primary);color:#fff}.statement-transactions{border-collapse:collapse;width:100%}.statement-transactions th{background:var(--color-brand-primary);color:#fff;text-align:left;padding:8px;font-size:.7rem}.statement-transactions th:nth-child(n+4),.statement-transactions td:nth-child(n+4){text-align:right}.statement-transactions td{border-bottom:1px solid var(--color-border);padding:8px;font-size:.7rem}.statement-empty{color:var(--color-text-secondary);text-align:center!important}.statement-document>footer{border-top:1px solid var(--color-border);color:var(--color-text-secondary);text-align:center;margin-top:auto;padding-top:8px;font-size:.66rem}@media (width<=900px){.statement-controls{grid-template-columns:repeat(2,1fr)}.statement-document{width:100%;min-height:auto;padding:24px}}@media (width<=600px){.statement-controls,.statement-summary,.statement-header{grid-template-columns:1fr}.statement-header>div{text-align:left}}@media print{@page{size:Letter;margin:0}html,body{margin:0!important;padding:0!important}.sidebar,.topbar,.no-print{display:none!important}.app-main,.content{max-width:none;margin:0;padding:0;display:block}.statement-document{width:8.5in;min-height:11in;box-shadow:none;margin:0;padding:.45in}.statement-document,.statement-document *{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.statement-transactions thead{display:table-header-group}.statement-transactions tr,.statement-summary,.statement-document>footer{break-inside:avoid;page-break-inside:avoid}}.reports-heading{justify-content:space-between;align-items:end;display:flex}.reports-heading>div:last-child{gap:10px;display:flex}.report-controls{flex-wrap:wrap;align-items:end;gap:12px;margin-bottom:18px;display:flex}.report-controls label{gap:5px;min-width:150px;font-size:.8rem;font-weight:700;display:grid}.report-controls label:last-child{min-width:230px}.report-kpis{gap:18px;margin-bottom:20px;display:grid}.report-kpis-primary,.report-kpis-secondary{gap:16px;display:grid}.report-kpis-primary{grid-template-columns:repeat(4,minmax(0,1fr))}.report-kpis-secondary{grid-template-columns:repeat(3,minmax(0,1fr))}.report-kpis-primary article,.report-kpis-secondary article,.report-summary-grid article,.report-category-totals article{border:1px solid var(--color-border);background:var(--color-surface);border-radius:9px;padding:14px}.report-kpis-primary span,.report-kpis-primary strong,.report-kpis-secondary span,.report-kpis-secondary strong,.report-summary-grid span,.report-summary-grid strong,.report-category-totals span,.report-category-totals strong{display:block}.report-kpis-primary span,.report-kpis-secondary span,.report-summary-grid span,.report-category-totals span{color:var(--color-text-secondary);font-size:.74rem}.report-kpis-primary strong,.report-kpis-secondary strong,.report-summary-grid strong,.report-category-totals strong{margin-top:7px;font-size:1.1rem}.report-print-heading{justify-content:space-between;align-items:end;margin:20px 0 14px;display:flex}.report-print-heading h2{margin:0}.report-chart{margin-bottom:16px}.report-chart h3{margin-top:0}.chart-row{grid-template-columns:72px 1fr 1fr 210px;align-items:center;gap:10px;margin:8px 0;display:grid}.chart-track{background:var(--color-border);height:12px}.chart-track i{height:100%;display:block}.chart-revenue{background:var(--color-brand-primary)}.chart-expense{background:var(--color-brand-dark)}.report-summary-grid,.report-category-totals{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.report-category-totals{margin-bottom:14px}.report-table{padding:0}.report-table th,.report-table td{font-size:.78rem}.report-table tr{break-inside:avoid}@media (width<=1100px){.report-kpis-primary,.report-kpis-secondary{grid-template-columns:repeat(2,minmax(0,1fr))}.report-summary-grid,.report-category-totals{grid-template-columns:repeat(2,1fr)}}@media (width<=650px){.reports-heading{flex-direction:column;align-items:stretch}.report-kpis-primary,.report-kpis-secondary,.report-summary-grid,.report-category-totals{grid-template-columns:1fr}.chart-row{grid-template-columns:60px 1fr 1fr}.chart-row small{grid-column:2/4}}@media print{@page{size:Letter;margin:.45in}.sidebar,.topbar,.no-print{display:none!important}.app-main,.content{max-width:none;margin:0;padding:0;display:block}.reports-page{font-family:var(--sondrich-document-font);color:var(--color-brand-dark)}.report-kpis-primary{grid-template-columns:repeat(4,minmax(0,1fr))}.report-kpis-secondary{grid-template-columns:repeat(3,minmax(0,1fr))}.report-chart,.report-table,.report-summary-grid article{break-inside:avoid}.report-table thead{display:table-header-group}.report-table{box-shadow:none;border:0}.report-table table{width:100%}}.inventory-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-bottom:1rem;display:grid}.inventory-summary article{background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-card);border-radius:12px;padding:1rem}.inventory-summary span,.inventory-summary strong{display:block}.inventory-summary strong{margin-top:.35rem;font-size:1.25rem}.inventory-tools{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-bottom:1rem;display:grid}.inventory-actions{gap:.6rem;margin-bottom:1rem;display:flex}.inventory-form{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:1rem 0;display:grid}.inventory-form label{gap:.35rem;display:grid}.inventory-data-table{min-width:1250px}.inventory-data-table th{font-size:12px;font-weight:600}.inventory-data-table td{font-size:12.5px;line-height:1.35}.inventory-data-table td:nth-last-child(-n+3){white-space:nowrap}@media (width<=850px){.inventory-summary{grid-template-columns:repeat(2,1fr)}.inventory-tools,.inventory-form{grid-template-columns:1fr}}.audit-filters{grid-template-columns:2fr repeat(5,1fr);gap:10px;margin:16px 0;display:grid}.audit-table{font-size:.78rem}.audit-table td small{color:var(--color-text-secondary);display:block}.audit-pagination{justify-content:flex-end;align-items:center;gap:10px;margin-top:14px;display:flex}.audit-pagination span{margin-right:auto}.audit-modal{z-index:50;background:#0008;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.audit-modal>section{width:min(720px,100%);max-height:85vh;overflow:auto}.audit-modal header{justify-content:space-between;align-items:center;display:flex}.audit-modal dl{grid-template-columns:1fr 1fr;gap:10px;display:grid}.audit-modal dl div{background:var(--color-surface-muted);padding:10px}.audit-modal dt{text-transform:uppercase;color:var(--color-text-secondary);font-size:.72rem}.audit-modal dd{white-space:pre-wrap;overflow-wrap:anywhere;margin:4px 0}.audit-changes{grid-template-columns:1fr!important}@media (width<=900px){.audit-filters{grid-template-columns:1fr 1fr}}@media (width<=600px){.audit-filters,.audit-modal dl{grid-template-columns:1fr}.audit-pagination{flex-wrap:wrap}}.procurement-form{margin-bottom:1rem}.procurement-form h2{margin-top:0}.procurement-form-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-bottom:1rem;display:grid}.procurement-form-grid label{gap:.35rem;display:grid}.procurement-form-grid .wide{grid-column:1/-1}.procurement-filters{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-bottom:1rem;display:grid}.procurement-item{grid-template-columns:1.1fr 1.8fr .6fr .6fr .9fr .6fr auto;align-items:end;gap:.5rem;margin-bottom:.6rem;display:grid}.procurement-actions{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.procurement-actions strong{margin-left:auto}.po-detail{margin-bottom:1rem}.po-detail dl{grid-template-columns:repeat(4,1fr);gap:1rem;display:grid}.po-detail dt{color:var(--color-text-secondary)}.po-detail dd{color:var(--color-text-primary);margin:.25rem 0 0}.procurement-data-table{min-width:1350px}.procurement-data-table th{font-size:12px;font-weight:600}.procurement-data-table td{font-size:12.5px;line-height:1.35}.suppliers-data-table th:first-child,.suppliers-data-table td:first-child,.suppliers-data-table th:nth-child(4),.suppliers-data-table td:nth-child(4),.suppliers-data-table th:nth-child(6),.suppliers-data-table td:nth-child(6),.suppliers-data-table th:nth-child(9),.suppliers-data-table td:nth-child(9),.suppliers-data-table th:nth-child(10),.suppliers-data-table td:nth-child(10){white-space:nowrap;width:1%}.suppliers-data-table th:nth-child(2),.suppliers-data-table td:nth-child(2){min-width:175px}.suppliers-data-table th:nth-child(3),.suppliers-data-table td:nth-child(3),.suppliers-data-table th:nth-child(7),.suppliers-data-table td:nth-child(7),.suppliers-data-table th:nth-child(8),.suppliers-data-table td:nth-child(8){min-width:150px}.suppliers-data-table th:nth-child(5),.suppliers-data-table td:nth-child(5){min-width:185px}.purchase-requests-data-table th:first-child,.purchase-requests-data-table td:first-child,.purchase-requests-data-table th:nth-child(2),.purchase-requests-data-table td:nth-child(2),.purchase-requests-data-table th:nth-child(3),.purchase-requests-data-table td:nth-child(3),.purchase-requests-data-table th:nth-child(9),.purchase-requests-data-table td:nth-child(9),.purchase-requests-data-table th:nth-child(10),.purchase-requests-data-table td:nth-child(10){white-space:nowrap;width:1%}.purchase-requests-data-table th:nth-child(4),.purchase-requests-data-table td:nth-child(4),.purchase-requests-data-table th:nth-child(5),.purchase-requests-data-table td:nth-child(5),.purchase-requests-data-table th:nth-child(8),.purchase-requests-data-table td:nth-child(8){min-width:150px}.purchase-requests-data-table th:nth-child(6),.purchase-requests-data-table td:nth-child(6){min-width:220px}.purchase-requests-data-table th:nth-child(7),.purchase-requests-data-table td:nth-child(7){white-space:nowrap;text-align:right;font-variant-numeric:tabular-nums;min-width:170px}.purchase-orders-data-table{min-width:1400px}.purchase-orders-data-table th:first-child,.purchase-orders-data-table td:first-child,.purchase-orders-data-table th:nth-child(2),.purchase-orders-data-table td:nth-child(2),.purchase-orders-data-table th:nth-child(5),.purchase-orders-data-table td:nth-child(5),.purchase-orders-data-table th:nth-child(6),.purchase-orders-data-table td:nth-child(6),.purchase-orders-data-table th:nth-child(10),.purchase-orders-data-table td:nth-child(10),.purchase-orders-data-table th:nth-child(11),.purchase-orders-data-table td:nth-child(11){white-space:nowrap;width:1%}.purchase-orders-data-table th:nth-child(3),.purchase-orders-data-table td:nth-child(3){min-width:175px}.purchase-orders-data-table th:nth-child(4),.purchase-orders-data-table td:nth-child(4){min-width:160px}.purchase-orders-data-table th:nth-child(7),.purchase-orders-data-table td:nth-child(7){white-space:nowrap;text-align:right;font-variant-numeric:tabular-nums;min-width:170px}.purchase-orders-data-table th:nth-child(8),.purchase-orders-data-table td:nth-child(8),.purchase-orders-data-table th:nth-child(9),.purchase-orders-data-table td:nth-child(9){white-space:nowrap;text-align:right;font-variant-numeric:tabular-nums;min-width:100px}@media (width<=1050px){.procurement-form-grid,.procurement-item{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.procurement-form-grid,.procurement-filters,.procurement-item,.po-detail dl{grid-template-columns:1fr}}
