﻿#accounting{--account-panel:#fbfaf6;color:var(--ink)}
:root[data-theme="dark"] #accounting{--account-panel:#202d26}
.accounting-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 16px}.accounting-tabs button{border:1px solid var(--line);border-radius:999px;padding:8px 16px;background:var(--account-panel);color:var(--ink)}.accounting-tabs button[aria-pressed="true"]{background:var(--green);color:var(--bg);border-color:var(--green)}
.accounting-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:14px}.accounting-card{background:var(--account-panel);border:1px solid var(--line);border-radius:16px;padding:16px 18px;min-width:0}.accounting-card h2{font:600 20px Georgia,serif;margin:0;flex:1}.accounting-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.accounting-row{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.accounting-row small{display:block;color:var(--muted);margin-top:5px;font-size:12px}.accounting-chip{display:inline-block;color:var(--muted);font-size:12px;margin-top:5px}.accounting-dialog{width:min(560px,calc(100vw - 28px));max-height:90vh;overflow:auto;color:var(--ink)}.accounting-dialog form{display:grid;gap:12px}.accounting-dialog label{display:grid;gap:6px}.accounting-dialog label:has(input[type="checkbox"]){display:flex;align-items:center}.accounting-dialog input,.accounting-dialog select,.accounting-dialog textarea{max-width:100%;min-width:0;padding:10px;border:1px solid var(--line);border-radius:8px}.accounting-dialog input[type="checkbox"]{width:auto}.accounting-dialog small{color:var(--muted)}.accounting-error{color:var(--ink);border-left:3px solid #b5482a;padding-left:8px}.accounting-error:empty{display:none}body:has(#accounting.active) #new-project{display:none}@media(max-width:700px){.accounting-row{align-items:flex-start;flex-direction:column}.accounting-tabs button{padding:8px 10px}.accounting-card{padding:14px}.accounting-dialog{padding:18px}}
:root #accounting .accounting-tabs button.secondary[aria-pressed="true"]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.accounting-transactions{grid-column:1/-1}.accounting-transactions>input{padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink);width:min(420px,100%)}.accounting-transactions .accounting-row>div:first-child{min-width:200px;flex:1}.accounting-transactions .accounting-actions{max-width:55%}.accounting-dialog fieldset{border:1px solid var(--line);border-radius:10px;display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:10px 0}.accounting-dialog input,.accounting-dialog select{margin:0}.accounting-dialog fieldset label:first-child,.accounting-dialog fieldset label:nth-child(2){grid-column:1/-1}.accounting-totals{font-weight:700}@media(max-width:700px){.accounting-transactions .accounting-actions{max-width:100%}.accounting-dialog fieldset{grid-template-columns:1fr}}
.accounting-table-scroll{overflow-x:auto;margin-top:20px;max-width:100%}.accounting-table{width:100%;border-collapse:collapse;font-size:13px;min-width:960px}.accounting-table th{text-align:left;font-weight:600;color:var(--muted);font-size:12px;padding:10px}.accounting-table th,.accounting-table td{border-bottom:1px solid var(--line)}.accounting-table td{padding:13px 10px;max-width:200px}.accounting-table .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.accounting-table td:first-child{white-space:nowrap}.accounting-table tbody tr{cursor:pointer}.accounting-table tbody tr:hover,.accounting-table tbody tr:focus{background:var(--bg);outline:2px solid var(--line);outline-offset:-2px}.accounting-table small{display:block;color:var(--muted);margin-top:4px}.accounting-status{display:inline-block;border-radius:999px;padding:4px 9px;font-size:11px;white-space:nowrap}.accounting-status.paid{background:#e0eee3;color:#245d39}.accounting-status.open{background:#fff0cc;color:#805600}.accounting-status.overdue{background:#fbe2df;color:#a13025}.accounting-status.draft{background:#e9e9e6;color:#60645f}.accounting-transactions>.accounting-actions{max-width:none}.accounting-detail h2{font-size:20px}.accounting-payment{border-top:1px solid var(--line);padding:10px 0}:root[data-theme="dark"] .accounting-status.paid{background:#234532;color:#b8e9c6}:root[data-theme="dark"] .accounting-status.open{background:#514323;color:#ffe0a0}:root[data-theme="dark"] .accounting-status.overdue{background:#522d2b;color:#ffc3bc}:root[data-theme="dark"] .accounting-status.draft{background:#3b413d;color:#d5dad6}
.accounting-dashboard,.accounting-reports{grid-column:1/-1;min-width:0}.accounting-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.accounting-kpis h2{font:14px inherit;color:var(--muted)}.accounting-kpis b{display:block;font:600 25px Georgia,serif;margin:10px 0}.accounting-kpis small{font-size:12px;color:var(--muted)}.accounting-two{display:grid;grid-template-columns:1.4fr 1fr;gap:14px;margin-top:14px}.accounting-chart{display:flex;justify-content:space-around;gap:10px;margin-top:25px;border-bottom:1px solid var(--line);padding-bottom:10px}.accounting-month{text-align:center;min-width:0}.accounting-pair{height:165px;display:flex;align-items:flex-end;gap:5px}.accounting-bar{width:20px;border-radius:5px 5px 0 0;position:relative}.accounting-bar.income,.accounting-track i{background:var(--green)}.accounting-bar.expense{background:#d9a48f}.accounting-tooltip{display:none;position:absolute;bottom:100%;left:50%;transform:translateX(-50%);background:var(--ink);color:var(--bg);padding:8px;border-radius:8px;width:150px;z-index:3;font-size:12px}.accounting-bar:hover .accounting-tooltip,.accounting-bar:focus .accounting-tooltip{display:block}.accounting-legend{font-size:13px;word-spacing:4px}.accounting-attention{display:block;text-align:left;width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);padding:14px 0}.accounting-ranking{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:20px;font-size:13px}.accounting-track{grid-column:1/-1;background:var(--line);border-radius:6px;height:7px;overflow:hidden}.accounting-track i{display:block;height:100%}.accounting-report-controls{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 18px}.accounting-report-controls label{display:grid;gap:5px;font-size:12px}.accounting-report-controls input,.accounting-report-controls select{padding:9px;background:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:8px;max-width:100%}.accounting-report-table{min-width:650px}.accounting-reports>h2{margin-bottom:20px}@media(max-width:1100px){.accounting-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:700px){.accounting-kpis,.accounting-two{grid-template-columns:1fr}.accounting-report-controls label{width:100%}.accounting-bar{width:15px}.accounting-ranking{grid-template-columns:1fr}.accounting-kpis b{font-size:26px}}
.accounting-kpis h2{font:500 14px Arial,sans-serif}.accounting-kpis b{font-size:22px;white-space:nowrap;letter-spacing:-.5px}.accounting-legend{display:flex;gap:18px}.accounting-legend span:before{content:'';display:inline-block;width:9px;height:9px;margin-right:6px;border-radius:2px;background:var(--green)}.accounting-legend .expense:before{background:#d9a48f}.accounting-report-table tbody tr:not([tabindex]){cursor:default}@media(max-width:1300px) and (min-width:1101px){.accounting-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}

.accounting-kpis .accounting-delta{display:block;margin-top:8px}.accounting-kpis .positive{color:#247243}.accounting-kpis .negative{color:#b23b30}.accounting-attention{display:flex;justify-content:space-between;align-items:center;gap:14px}.accounting-attention small{display:block;color:var(--muted);margin-top:5px}.accounting-reports>.accounting-actions{margin-bottom:28px}.accounting-pnl{min-width:0;margin-top:24px}.accounting-pnl th{color:var(--ink);font-size:13px;font-weight:400}.accounting-pnl .accounting-section th{padding-top:28px;font-size:16px;font-weight:700}.accounting-pnl .accounting-total th,.accounting-total td,.accounting-net th,.accounting-net td{font-weight:700}.accounting-net.positive{background:#e0eee3;color:#245d39}.accounting-net.negative{background:#fbe2df;color:#a13025}.accounting-net th{color:inherit}.accounting-report-table th.num button{float:right}:root[data-theme="dark"] .accounting-kpis .positive{color:#b8e9c6}:root[data-theme="dark"] .accounting-kpis .negative{color:#ffc3bc}:root[data-theme="dark"] .accounting-net.positive{background:#234532;color:#b8e9c6}:root[data-theme="dark"] .accounting-net.negative{background:#522d2b;color:#ffc3bc}@media(max-width:700px){.accounting-attention{flex-wrap:wrap}.accounting-attention .accounting-status{white-space:normal}.accounting-pnl th,.accounting-pnl td{padding:12px 6px}}

.accounting-demo-empty{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 16px;padding:12px 16px;border:1px dashed var(--line,#e2ded3);border-radius:12px;color:var(--muted,#6b756f)}

.accounting-logo{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:14px 0;padding:12px 0;border-top:1px solid var(--line,#e2ded3)}.accounting-logo strong{flex-basis:100%}.accounting-logo img{max-width:200px;max-height:80px;object-fit:contain;background:#fff;border:1px solid var(--line,#e2ded3);border-radius:8px;padding:6px}

.accounting-status.converted{background:#e0eaf5;color:#315578}:root[data-theme="dark"] .accounting-status.converted{background:#293e53;color:#c8def6}
.recurring-toast{position:fixed;bottom:24px;right:24px;background:var(--bg);color:var(--ink);padding:16px;border:1px solid var(--line);border-radius:10px;z-index:1000}

#accounting>[aria-label="Accounting sections"]{flex-wrap:nowrap;overflow-x:auto;mask-image:linear-gradient(to right,#000 0%,#000 96%,transparent 100%);padding-bottom:8px}#accounting>[aria-label="Accounting sections"] button{flex-shrink:0;white-space:nowrap}
.accounting-status.recurring-active{background:#dfefdf;color:#245d39}.accounting-status.recurring-paused{background:#faebc8;color:#805515}.accounting-status.recurring-ended{background:#e5e7e8;color:#51585d}.accounting-row-menu summary{cursor:pointer;font-size:22px;list-style:none;padding:0 10px}.accounting-row-menu[open]{min-width:150px}.accounting-row-menu>div{display:grid;gap:5px}.accounting-email-log{display:block;font-size:11px;color:var(--muted);white-space:normal}.accounting-email form{display:grid;gap:12px}.accounting-email textarea{min-height:150px}.accounting-email .accounting-actions{gap:8px}

/* Labor adds columns; long project names must wrap within their cell. */
.accounting-report-table td:first-child{white-space:normal;overflow-wrap:anywhere;min-width:180px}.project-time{min-width:0}.time-dialog fieldset{display:grid;gap:8px}.time-dialog fieldset label{display:flex;align-items:center;gap:8px}.time-dialog fieldset input{width:auto}
.project-time .accounting-table{min-width:620px}.project-time .accounting-table td{white-space:normal}.project-time .accounting-table td:last-child{width:70px}.project-time .accounting-table tbody tr{cursor:default}
