:root{--navy:#122d47;--soft:#f4f7fb}body{background:#f3f6fa}.tabs button{min-height:45px}.tabs{flex-wrap:wrap}.saved-card{align-items:flex-start;flex-direction:column}.saved-card .actions{gap:6px}.status-badge{font-size:10px;text-transform:uppercase;letter-spacing:.5px;display:inline-block;padding:4px 8px;border-radius:20px;margin-left:5px}.status-badge.draft{background:#fff0c9;color:#8f6205}.status-badge.issued{background:#e2f4ee;color:#08765c}.insight-hero{background:linear-gradient(115deg,#102b44,#135b84);padding:30px;border-radius:16px;color:white;display:flex;gap:20px;justify-content:space-between;align-items:center;margin-bottom:18px}.insight-hero .eyebrow{color:#8cd8f6;letter-spacing:1.6px;margin:0 0 10px}.insight-hero h2{font-size:29px;font-weight:650;letter-spacing:-.7px;margin:0 0 10px}.insight-hero p{color:#d0e0ee;font-size:13px;margin:0}.insight-hero button{border-color:#ffffff35}.filter-panel{padding:22px}.report-filters.advanced{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.filter-actions{margin-top:18px;align-items:center}.filter-actions .hint{margin-left:auto}.report-range{display:flex;justify-content:space-between;color:#6a7d90;font-size:12px;margin:24px 2px 13px;gap:10px;flex-wrap:wrap}.analytics-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}.metric{background:white;border:1px solid #dde6ee;border-radius:14px;padding:22px}.metric.featured{background:#eaf5fc;border-color:#cce4f5}.metric>span{font-size:12px;color:#5f7287}.metric>strong{font-size:29px;display:block;letter-spacing:-.8px;color:#133c5b;margin:10px 0}.metric>small{font-size:11px;color:#62798c;line-height:1.5;display:block}.mix-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:20px}.chart-card{background:white;border:1px solid #dde6ee;border-radius:14px;padding:23px;min-width:0;margin-bottom:0}.chart-title{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:18px}.chart-title h3{font-size:16px;margin:0;letter-spacing:-.3px}.chart-title>span{font-size:10px;color:#718598;text-align:right}.donut-wrap{display:flex;justify-content:center;padding:4px 0 18px}.donut{width:184px;height:184px;border-radius:50%;padding:24px;box-shadow:0 3px 15px #12304a08}.donut-hole{height:100%;border-radius:50%;background:white;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:9px}.donut-hole span{font-size:9px;letter-spacing:1px;color:#8291a0}.donut-hole strong{font-size:20px;letter-spacing:-.6px}.legend-row{border:0;border-bottom:1px solid #eff3f7;border-radius:0;background:white;display:grid;grid-template-columns:9px minmax(0,1fr) 44px 75px;gap:9px;align-items:center;width:100%;padding:11px 0;font-size:10px;text-align:left;font-weight:400}.legend-row b{font-size:11px;text-align:right}.legend-row>span:last-child{text-align:right;font-variant-numeric:tabular-nums}.legend-row:disabled{color:inherit;cursor:default;opacity:1}.legend-dot{width:8px;height:8px;border-radius:50%}.legend-name{overflow-wrap:anywhere;line-height:1.5}.chart-caption{font-size:10px;color:#8291a0;line-height:1.6;margin:15px 0 0}.insight-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:18px;margin-bottom:20px}.trend-scroll{overflow:auto;max-width:100%;padding-top:15px}.trend-scroll svg{width:100%;height:240px;display:block}.snapshot-row{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:12px 0;border-bottom:1px solid #edf2f6;font-size:11px}.snapshot-row strong{text-align:right;max-width:60%;font-size:12px}.coverage-track{height:7px;background:#e7f0f7;border-radius:10px;margin-top:14px;overflow:hidden}.coverage-track i{display:block;height:100%;background:#23b3a2;border-radius:10px}.comparison-box{margin-top:14px;padding:14px;background:#f2f7fb;border-radius:9px;display:grid;gap:7px}.comparison-box span,.comparison-box small{font-size:10px;color:#6c8294}.comparison-box strong{font-size:20px}.report-footnote{color:#7d8d9c;font-size:10px;line-height:1.8;padding:4px 3px 20px}.report-table th{font-size:10px;text-transform:uppercase;letter-spacing:.3px}.report-table td{font-size:12px}.report-table tbody tr:hover{background:#f6fafe}.report-mode .workspace{max-width:1480px}.invoice-site{color:var(--blue);text-decoration:none}.email-dialog{border:0;border-radius:16px;box-shadow:0 25px 100px #102b4460;max-width:560px;width:calc(100% - 30px);padding:28px;color:var(--ink)}.email-dialog::backdrop{background:#102b4470}.email-dialog h2{margin-top:0}.email-dialog label{margin-top:13px}.email-dialog .actions{margin-top:20px}.email-dialog textarea{min-height:130px}.email-dialog .hint{line-height:1.7}.email-dialog input{margin-bottom:4px}.email-dialog .error{color:#ab3142}.email-attachment{background:#f0f6fb;border-radius:7px;padding:12px;margin:16px 0;font-size:12px}
@media(max-width:1100px){.mix-grid{grid-template-columns:1fr 1fr}.mix-grid .chart-card:last-child{grid-column:1/-1}.mix-grid .chart-card:last-child .chart-legend{max-width:600px;margin:auto}.analytics-kpis{grid-template-columns:1fr 1fr}.insight-grid{grid-template-columns:1fr}.report-filters.advanced{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:650px){.insight-hero{align-items:flex-start;flex-direction:column;padding:22px}.insight-hero h2{font-size:24px}.mix-grid{grid-template-columns:1fr}.mix-grid .chart-card:last-child{grid-column:auto}.report-filters.advanced{grid-template-columns:1fr 1fr}.filter-actions .hint{width:100%;margin-left:0}.analytics-kpis{gap:10px}.metric{padding:16px}.metric>strong{font-size:23px}.chart-card{padding:19px}.report-range{font-size:11px}.report-table{min-width:720px}}
@media print{body.printing-report .editor{display:block!important}body.printing-report .preview,body.printing-report .tabs,body.printing-report .filter-panel,body.printing-report header.app,body.printing-report button,body.printing-report #editTab,body.printing-report #savedTab,body.printing-report #settingsTab{display:none!important}body.printing-report #reportsTab{display:block!important}body.printing-report .workspace{padding:0!important}body.printing-report .insight-hero{padding:18px;background:#123651!important}body.printing-report .mix-grid{grid-template-columns:repeat(3,minmax(0,1fr))}body.printing-report .chart-card{padding:12px;break-inside:avoid}body.printing-report .analytics-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}body.printing-report .metric{padding:12px}body.printing-report .metric>strong{font-size:20px}body.printing-report .donut{width:135px;height:135px;padding:18px}body.printing-report .donut-hole strong{font-size:14px}body.printing-report .legend-row{display:grid!important;font-size:8px;grid-template-columns:6px minmax(0,1fr) 30px 53px;gap:4px;padding:7px 0}body.printing-report .legend-row b{font-size:8px}body.printing-report .chart-legend{max-width:none}body.printing-report .chart-title h3{font-size:13px}body.printing-report .insight-grid{grid-template-columns:1fr}body.printing-report .report-table{min-width:0;font-size:9px}body.printing-report .report-table td,body.printing-report .report-table th{font-size:9px;padding:7px}body.printing-report .report-scroll{overflow:visible}body.printing-report .trend-scroll{overflow:hidden}body.printing-report .trend-scroll svg{min-width:0!important}body.printing-report .report-range{margin-top:10px}.email-dialog{display:none!important}}
.report-mode #saveDraftBtn,.report-mode #saveBtn,.report-mode #printBtn,.report-mode #pdfBtn,.report-mode #sendInvoiceBtn{display:none}
.customer-finder{border-bottom:1px solid var(--line);padding-bottom:14px}.customer-match{display:block;width:100%;text-align:left;border:1px solid #e2ebf2;border-radius:7px;padding:10px;margin-top:5px}.customer-match strong,.customer-match small{display:block}.customer-match small{font-size:10px;font-weight:400;color:#718598;margin-top:5px}#customerSelection{font-size:10px}#newCustomerBtn{font-size:11px;padding:7px 9px}#customersTab .saved-card{overflow-wrap:anywhere}#customersTab .preview-head{align-items:flex-start}
.library-mode .workspace{display:block;max-width:1350px}.library-mode .preview{display:none}.library-mode .tabs{max-width:720px}.archive-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.archive-filter-grid .wide{grid-column:span 2}.invoice-number-link{font-weight:750;font-size:16px;color:#087bbd;text-decoration:none}.invoice-number-link:hover,.text-link:hover{text-decoration:underline}.record-header{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.status-badge.archived{background:#eee9f8;color:#72558d}.invoice-record{padding:18px;border:1px solid #e0e9f1;margin:12px 0;border-radius:12px}.invoice-record .hint{margin:7px 0;line-height:1.7}.text-link{border:0;background:transparent;color:#087bbd;padding:0;font:inherit;cursor:pointer;text-decoration:none;text-align:left}.report-range button{font-size:12px}.library-mode #printBtn,.library-mode #pdfBtn,.library-mode #sendInvoiceBtn{display:none}@media(max-width:700px){.archive-filter-grid{grid-template-columns:1fr 1fr}.archive-filter-grid .wide{grid-column:1/-1}.invoice-record{padding:14px}.invoice-record .actions button{font-size:11px;padding:8px}}
.aging-section{margin-bottom:20px;scroll-margin-top:110px}.aging-section .eyebrow{margin:0 0 8px}.aging-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:15px 0}.aging-summary>div{border-radius:10px;background:#f2f7fb;padding:17px}.aging-summary span{font-size:11px;color:#6c8194}.aging-summary strong{display:block;font-size:24px;margin-top:8px}.aging-summary>div:nth-child(2){background:#fff4e8}.aging-summary>div:nth-child(3){background:#fceef0}.aging-contact{display:block;font-size:10px;font-weight:400;line-height:1.7;margin-top:5px}.aging-contact a{color:#087bbd;text-decoration:none}.aging-table{margin-top:15px;min-width:950px}.aging-table td:first-child{min-width:210px}.aging-table .aging-late{color:#b74252;font-weight:700}.aging-table tfoot th{background:#eef5fa}.aging-detail{margin-top:20px}.aging-section .amount{text-align:right}.aging-detail summary{color:#087bbd;font-size:12px}@media(max-width:650px){.aging-summary{grid-template-columns:1fr 1fr}.aging-summary strong{font-size:20px}}@media print{.aging-table{min-width:0!important}.aging-summary{grid-template-columns:repeat(4,1fr)}.aging-summary strong{font-size:17px}.aging-contact{font-size:8px}.aging-table td:first-child{min-width:130px}.aging-section{break-inside:auto!important}}
