@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#172033;--muted:#7d8799;--line:#e8ebf1;--bg:#f6f7fb;--navy:#15243b;--blue:#4263eb;--green:#179b72}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:14px}.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:248px;background:#fff;border-right:1px solid var(--line);padding:28px 17px 16px;display:flex;flex-direction:column;z-index:2}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:var(--ink);font:800 17px Manrope,sans-serif;letter-spacing:-.5px;padding:0 8px}.brand-mark{height:37px;width:37px;border-radius:12px;background:var(--blue);color:#fff;display:grid;place-items:center;font-size:21px}.brand-light{font-weight:500;color:#657189}.brand small{display:block;font:600 8px 'DM Sans';letter-spacing:1.6px;color:#9aa2b1;margin-top:3px}.nav{display:grid;gap:7px;margin-top:44px}.nav a{height:44px;display:flex;align-items:center;gap:13px;padding:0 12px;color:#737e91;text-decoration:none;border-radius:8px;font-weight:600}.nav a span{font-size:18px;width:20px;text-align:center}.nav a.active,.nav a:hover{background:#edf1ff;color:var(--blue)}.sidebar-bottom{margin-top:auto}.help-card{background:#f6f7fa;padding:14px;border-radius:10px;margin:0 2px 18px}.help-card strong{font-size:12px}.help-card p{font-size:11px;line-height:1.5;color:var(--muted);margin:6px 0}.text-button{padding:0;border:0;background:none;color:var(--blue);font:600 11px 'DM Sans';cursor:pointer}.profile{display:flex;gap:10px;align-items:center;border-top:1px solid var(--line);padding:16px 3px 0}.avatar{flex:none;width:35px;height:35px;background:#e8eaff;border-radius:50%;display:grid;place-items:center;color:#4354c8;font-size:11px;font-weight:700}.profile b{display:block;font-size:11px}.profile small{display:block;color:var(--muted);font-size:10px;margin-top:4px}.dots{margin-left:auto;color:#939bad}.main{margin-left:248px;max-width:1600px;padding:28px 38px 20px}.topbar,.welcome-row,.panel-heading{display:flex;justify-content:space-between;align-items:center}.topbar{margin-bottom:31px}.eyebrow{margin:0 0 8px;color:#929bad;font-size:10px;letter-spacing:1.5px;font-weight:700}.topbar h1{font:700 25px Manrope;margin:0;letter-spacing:-.7px}.topbar h1 span{color:#edbd56;font-size:19px}.top-actions{display:flex;align-items:center;gap:12px}.status-pill{font-size:11px;color:#596579;background:white;border:1px solid var(--line);padding:8px 12px;border-radius:20px}.status-pill i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#27b585;margin-right:6px}.icon-btn{width:35px;height:35px;border-radius:50%;border:1px solid var(--line);background:white;color:#718096;font-size:18px}.welcome-row{margin-bottom:19px}.welcome-row h2{font:700 16px Manrope;margin:0 0 5px}.welcome-row p,.panel-heading p{color:var(--muted);font-size:12px;margin:0}.button{border:0;border-radius:7px;padding:10px 15px;font:600 12px 'DM Sans';cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.primary{background:var(--blue);color:white;box-shadow:0 3px 8px #4263eb35}.primary:hover{background:#3453d7}.secondary{background:#f1f3f7;color:#4c566a}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:17px}.compact-stats{grid-template-columns:repeat(3,minmax(0,1fr));max-width:930px}.stat-card,.panel{background:#fff;border:1px solid var(--line);border-radius:11px}.stat-card{padding:17px 18px}.stat-head{display:flex;justify-content:space-between;align-items:center;color:#667185;font-size:11px;font-weight:600}.stat-icon{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;font-weight:700}.blue{background:#eef2ff;color:#5269e8}.violet{background:#f2edff;color:#8862d8}.green{background:#e7f8f1;color:#20a47a}.orange{background:#fff3e5;color:#e49638}.stat-card>strong{display:block;font:700 24px Manrope;letter-spacing:-.6px;margin:12px 0 6px}.stat-card small{font-size:10px}.positive{color:#179b72;font-weight:700}.positive span{color:#929bad;font-weight:400;margin-left:4px}.muted{color:#929bad}.content-grid{display:grid;grid-template-columns:1.55fr 1fr;gap:15px;margin-bottom:16px}.panel{padding:19px}.panel-heading{gap:12px}.panel-heading h3{font:700 14px Manrope;margin:0 0 5px}.panel-heading p{font-size:11px}.select-static{border:1px solid var(--line);border-radius:6px;padding:7px 10px;color:#687387;font-size:10px}.chart-summary{display:flex;align-items:center;gap:10px;margin-top:18px}.chart-summary strong{font:700 20px Manrope}.chart-summary span{font-size:10px}.chart{height:128px;display:flex;align-items:end;justify-content:space-around;padding:12px 4px 0;gap:12px;position:relative;border-bottom:1px solid var(--line);background:repeating-linear-gradient(to bottom,transparent 0,transparent 31px,#edf0f5 32px)}.bar-col{height:100%;display:flex;flex-direction:column;justify-content:end;align-items:center;gap:7px;z-index:1;flex:1}.bar{width:min(26px,65%);background:#dfe5ff;border-radius:5px 5px 0 0;min-height:8px}.bar.today{background:var(--blue)}.bar-label{font-size:9px;color:#9aa2b1;transform:translateY(18px)}.list{margin-top:12px}.alert-item{display:flex;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid #f0f1f5}.alert-item:last-child{border:0}.product-dot{height:32px;width:32px;border-radius:9px;background:#fff4e9;display:grid;place-items:center;color:#df9842}.alert-item b{font-size:11px;display:block}.alert-item small{font-size:10px;color:#9aa2b1;display:block;margin-top:4px}.stock-count{margin-left:auto;color:#d8872b;font-size:10px;font-weight:700}.link{color:var(--blue);font-size:10px;font-weight:600;text-decoration:none}.table-panel{padding:19px 0 0}.table-panel>.panel-heading{padding:0 19px 16px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}th{font-size:9px;letter-spacing:.7px;color:#98a1b0;background:#fafbfc;font-weight:700;padding:12px 16px;border-top:1px solid #eff1f4;border-bottom:1px solid #eff1f4}td{font-size:11px;color:#586477;padding:13px 16px;border-bottom:1px solid #f0f1f5}tbody tr:last-child td{border-bottom:0}td b{color:#293449;font-weight:600}.customer-cell{display:flex;align-items:center;gap:9px}.mini-avatar{width:27px;height:27px;border-radius:50%;background:#edf0ff;color:#586bd8;display:grid;place-items:center;font-size:9px;font-weight:700}.badge{border-radius:20px;padding:5px 8px;font-size:9px;font-weight:700}.badge.paid,.badge.good{background:#e9f8f1;color:#20946e}.badge.pending,.badge.low{background:#fff3e6;color:#ce842d}.badge.out{background:#ffeded;color:#d46767}.table-actions{border:0;background:none;color:#8c96a8;cursor:pointer;font-size:18px}footer{color:#9ca4b1;text-align:center;font-size:10px;padding:22px 0 0}footer span{margin:0 5px}.search{width:210px;border:1px solid var(--line);border-radius:6px;padding:9px 10px;font:11px 'DM Sans';outline:none}.search:focus,input:focus,select:focus{border-color:#7e91f5;box-shadow:0 0 0 3px #4263eb15;outline:none}dialog{border:0;border-radius:12px;padding:0;width:min(480px,calc(100vw - 30px));box-shadow:0 20px 80px #19294b33}dialog::backdrop{background:#1c2944a8;backdrop-filter:blur(2px)}dialog form{padding:24px}.dialog-heading{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:21px}.dialog-heading h2{font:700 19px Manrope;margin:0 0 5px}.dialog-heading p{font-size:12px;color:var(--muted);margin:0}.close-dialog{border:0;background:#f2f4f8;border-radius:50%;height:28px;width:28px;font-size:19px;color:#69758b;cursor:pointer}label{display:block;font-size:11px;font-weight:600;color:#566176;margin-bottom:14px}input,select{display:block;width:100%;margin-top:7px;padding:10px;border:1px solid #e2e6ed;border-radius:6px;font:12px 'DM Sans';color:#354052;background:white}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.dialog-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:8px}.empty-state{padding:28px!important;text-align:center;color:#939bad}.delete-action{border:0;background:none;color:#bf6a6a;cursor:pointer;font:11px 'DM Sans'}@media(max-width:1000px){.sidebar{width:210px}.main{margin-left:210px;padding:25px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.content-grid{grid-template-columns:1fr}}@media(max-width:680px){.sidebar{position:static;width:auto;height:auto;padding:12px 14px;border-right:0;border-bottom:1px solid var(--line)}.brand small,.sidebar-bottom,.nav a span{display:none}.brand{padding:0}.nav{display:flex;overflow:auto;margin-top:13px;gap:5px}.nav a{height:36px;padding:0 10px;white-space:nowrap;font-size:11px}.main{margin:0;padding:22px 14px}.topbar{margin-bottom:25px}.topbar h1{font-size:21px}.status-pill{display:none}.welcome-row{align-items:flex-start;gap:10px}.welcome-row h2{font-size:14px}.welcome-row p{max-width:250px;line-height:1.5}.button{padding:9px 11px;white-space:nowrap;font-size:10px}.stats-grid,.compact-stats{grid-template-columns:1fr 1fr;gap:9px}.stat-card{padding:13px}.stat-card>strong{font-size:20px}.stat-card small{font-size:9px}.panel{padding:14px}.table-panel{padding:15px 0 0}.table-panel>.panel-heading{padding:0 14px 13px;align-items:flex-start;flex-wrap:wrap}.panel-heading h3{font-size:13px}.search{width:100%}.chart-panel .panel-heading{align-items:flex-start}.form-row{grid-template-columns:1fr}.dialog-actions{margin-top:0}}

/* Supabase sign-in and connection states */
.app-notice{margin:0 0 18px;padding:13px 15px;border:1px solid #f0c7c7;border-radius:8px;background:#fff4f3;color:#9c3636;font-size:13px;line-height:1.5}.app-notice[hidden]{display:none}.app-notice.success{border-color:#bce8d8;background:#f0fbf6;color:#176b4e}.auth-page{min-height:100vh;display:grid;place-items:center;padding:22px;background:radial-gradient(circle at 12% 8%,#e3eaff 0,transparent 34%),#f6f7fb}.auth-card{width:min(440px,100%);background:#fff;border:1px solid var(--line);border-radius:16px;padding:34px;box-shadow:0 18px 55px #1d2c4b12}.auth-brand{padding:0;margin-bottom:35px}.auth-card h1{font:700 24px Manrope,sans-serif;letter-spacing:-.5px;margin:0 0 8px}.auth-intro,.auth-footnote{font-size:14px;line-height:1.55;color:var(--muted)}.auth-intro{margin:0 0 24px}.auth-form label{font-size:14px;margin-bottom:17px}.auth-form input{font-size:16px;padding:12px}.auth-form .button{width:100%;padding:13px;font-size:15px;margin-top:4px}.auth-form .button:disabled{opacity:.7;cursor:wait}.auth-message{margin:0 0 16px;padding:12px;border-radius:8px;font-size:14px;line-height:1.45}.auth-message.error{color:#9c3636;background:#fff1f0;border:1px solid #f0cdca}.auth-message.success{color:#176b4e;background:#f0fbf6;border:1px solid #bce8d8}.auth-message[hidden]{display:none}.auth-footnote{font-size:12px;margin:20px 0 0}
@media(max-width:680px){.auth-card{padding:26px 21px}.auth-brand{margin-bottom:29px}#signOut{padding:8px 10px;font-size:10px}}
.auth-links{display:flex;justify-content:space-between;align-items:center;gap:12px}.auth-links button:disabled{opacity:.6;cursor:wait}.auth-footnote a{text-decoration:none}

/* Orders, credit, invoices and payments */
.finance-top-actions,.finance-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.finance-top-actions .button,.finance-actions .button{min-height:36px}.finance-stats{max-width:1040px}.finance-toolbar{padding:14px 16px;margin-bottom:15px;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.finance-tabs{display:flex;align-items:center;gap:4px;overflow:auto}.finance-tab{border:0;background:transparent;color:#758095;padding:9px 12px;border-radius:7px;font:600 11px 'DM Sans';white-space:nowrap;cursor:pointer}.finance-tab:hover,.finance-tab.active{color:var(--blue);background:#edf1ff}.finance-actions{flex:1;justify-content:flex-end}.finance-actions .search{width:min(210px,100%)}.finance-table-panel{overflow:hidden}.business-label{font-size:10px;color:#929bad}.app-notice{padding:12px 14px;border-radius:8px;margin:0 0 15px;background:#fff0ed;color:#a34132;font-size:12px;line-height:1.5}.app-notice[hidden]{display:none}.app-notice.success{background:#eaf8f1;color:#17734f}.document-items{display:grid;gap:8px}.document-item-row{display:grid;grid-template-columns:minmax(160px,2fr) 75px 100px 90px 22px;align-items:center;gap:7px}.document-item-row input,.document-item-row select{margin-top:0;padding:8px;font-size:11px}.document-item-row strong{font-size:10px;white-space:nowrap}.document-item-row .remove-line{padding:0;font-size:17px}.line-items-heading,.document-total{display:flex;justify-content:space-between;align-items:center;margin:4px 0 10px;font-size:11px}.document-total{border-top:1px solid var(--line);padding-top:12px;margin-top:13px}.document-total strong{font:700 17px Manrope}.finance-table-panel .table-wrap{max-width:100%}.finance-table-panel th,.finance-table-panel td{padding-left:13px;padding-right:13px}
@media(max-width:900px){.finance-actions{justify-content:flex-start}.finance-actions .search{flex-basis:100%;max-width:none}.finance-toolbar{align-items:flex-start}.finance-top-actions{justify-content:flex-end}}
@media(max-width:680px){.finance-top-actions{justify-content:flex-start;width:100%}.finance-top-actions .button{font-size:10px;padding:9px 10px}.finance-toolbar{padding:12px;gap:10px}.finance-tabs{width:100%;border-bottom:1px solid var(--line);padding-bottom:5px}.finance-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}.finance-actions .search{grid-column:1/-1;width:100%}.finance-actions .button{white-space:normal;text-align:center;padding:8px 6px;line-height:1.3}.document-item-row{grid-template-columns:minmax(130px,1fr) 62px 85px 22px;gap:5px}.document-item-row strong{grid-column:1/3;grid-row:2;font-size:10px}.document-item-row .remove-line{grid-column:4;grid-row:1/3}.finance-table-panel .table-wrap{overflow-x:auto}}

/* General journal and trial balance */
.accounting-welcome{align-items:flex-end;gap:20px}.basis-control{display:flex;align-items:flex-end;gap:8px;flex-wrap:wrap}.basis-control label,.accounting-filters label{margin:0;font-size:10px}.basis-control select,.accounting-filters input{min-width:145px;margin-top:5px;padding:9px;font-size:11px}.accounting-stats{margin-top:14px}.accounting-tabs{display:flex;gap:5px;padding:8px;margin:0 0 15px}.accounting-tab{border:0;background:transparent;color:#758095;padding:10px 14px;border-radius:7px;font:600 11px 'DM Sans';cursor:pointer}.accounting-tab.active,.accounting-tab:hover{background:#edf1ff;color:var(--blue)}.accounting-section[hidden]{display:none}.accounting-section .panel-heading{padding:18px 19px 15px}.accounting-filters{display:flex;align-items:end;gap:10px;flex-wrap:wrap;padding:0 19px 15px}.accounting-filters label{min-width:130px}.accounting-filters .filter-search{flex:1;min-width:180px}.accounting-filters input[type=search]{min-width:180px}.accounting-filters .button,.trial-actions .button,.basis-control .button{min-height:35px}.trial-actions{display:flex;gap:7px}.basis-note{font-size:10px;color:var(--muted);padding-bottom:9px}.accounting-section tfoot th{border-top:2px solid #dfe4ed;background:#f8f9fc;font-size:10px}.balance-check{font-size:11px;font-weight:700;margin:12px 19px 17px}.balance-check.balanced{color:#16815e}.balance-check.unbalanced{color:#c45151}.basis-control>label{min-width:145px}.basis-control>label select{width:100%}.journal-lines{display:grid;gap:8px}.journal-line-row{display:grid;grid-template-columns:minmax(145px,1.7fr) minmax(100px,1.2fr) minmax(86px,.7fr) minmax(86px,.7fr) 26px;gap:6px;align-items:center}.journal-line-row input,.journal-line-row select{margin:0;padding:8px;font-size:10px;min-width:0}.remove-line{border:0;background:#fff0ef;color:#b94d4d;border-radius:6px;height:29px;cursor:pointer;font-size:16px}.journal-totals{display:flex;justify-content:space-between;gap:10px;align-items:center;margin:14px 0;color:#667185;font-size:10px}.journal-totals b{color:var(--ink);margin-left:4px}.accounting-welcome p{max-width:520px;line-height:1.5}
@media(max-width:800px){.accounting-welcome{align-items:flex-start;flex-direction:column}.basis-control{width:100%}.accounting-filters{align-items:stretch}.accounting-filters label,.accounting-filters .filter-search{flex:1 1 42%}.accounting-filters .button{flex:1}.journal-line-row{grid-template-columns:1fr 1fr 1fr 1fr 24px}.journal-line-row .line-account{grid-column:1/3}.journal-line-row .line-memo{grid-column:3/5}.journal-line-row .line-debit,.journal-line-row .line-credit{grid-row:2}.journal-line-row .remove-line{grid-column:5;grid-row:1/3}.journal-totals{flex-wrap:wrap}.accounting-section .panel-heading{align-items:flex-start;flex-wrap:wrap}}
@media(max-width:680px){.accounting-tabs{overflow:auto;white-space:nowrap}.accounting-tab{padding:9px 10px;font-size:10px}.basis-control{display:grid;grid-template-columns:1fr 1fr}.basis-control>label{grid-column:1/-1}.accounting-filters{display:grid;grid-template-columns:1fr 1fr;padding:0 12px 13px}.accounting-filters label,.accounting-filters .filter-search{min-width:0}.accounting-filters .filter-search{grid-column:1/-1}.accounting-filters input{min-width:0}.accounting-filters .button{font-size:10px;padding:8px}.accounting-section .panel-heading{padding:15px 12px 12px}.accounting-section .table-wrap{overflow:auto}.accounting-section table{min-width:840px}.journal-line-row{grid-template-columns:1fr 1fr 1fr 1fr 24px}.journal-line-row .line-account{grid-column:1/3}.journal-line-row .line-memo{grid-column:3/5}.journal-line-row .line-debit,.journal-line-row .line-credit{grid-row:2}.journal-line-row .remove-line{grid-column:5;grid-row:1/3}.journal-totals{font-size:9px}.accounting-stats .stat-card>strong{font-size:16px}}
@media print{.sidebar,.topbar,.accounting-welcome,.accounting-tabs,.accounting-stats,.accounting-filters,.trial-actions,footer,#journalPanel,#accountsPanel{display:none!important}.main{margin:0;padding:0}.accounting-section{display:block!important;border:0}.accounting-section .panel-heading{padding:0 0 12px!important}.accounting-section table{min-width:0;font-size:9px}.accounting-section th,.accounting-section td{padding:5px 6px;font-size:8px}.balance-check{margin:10px 0}}
/* Separate bank reconciliation workspace */
.reconciliation-controls{display:grid;grid-template-columns:1.2fr 1fr 1fr auto;gap:12px;align-items:end;margin-top:17px}.reconciliation-controls label{display:grid;gap:6px;color:#647087;font-size:11px;font-weight:600}.reconciliation-controls input,.reconciliation-controls select,.match-control select{min-width:0;width:100%;height:38px;border:1px solid var(--line);border-radius:7px;padding:0 10px;background:#fff;color:var(--ink);font:500 12px 'DM Sans'}.reconciliation-help{margin:12px 0 0;color:var(--muted);font-size:11px;line-height:1.5}.reconciliation-import{margin-bottom:16px}.file-button{position:relative;overflow:hidden}.file-button input{position:absolute;inset:0;opacity:0;cursor:pointer}.reconciliation-actions{display:flex;gap:8px;align-items:center}.reconciliation-stats{max-width:none}.reconciliation-stats .stat-card>strong.positive{color:var(--green)}.match-control{display:flex;gap:7px;min-width:280px;align-items:center}.match-control select{max-width:390px}.match-button{flex:none}.negative{color:#c35b4e}.reconciliation-stats{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1050px){.reconciliation-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.reconciliation-controls>.button{min-height:38px}}
@media(max-width:680px){.reconciliation-controls{grid-template-columns:1fr}.reconciliation-actions{flex-wrap:wrap}.reconciliation-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.match-control{min-width:240px}.reconciliation-import .panel-heading{align-items:flex-start}}
.income-statement-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin:0 19px 13px;padding:13px 15px;border:1px solid #e8ebf1;border-radius:9px;background:#fbfcfe;color:var(--muted);font-size:10px}.income-statement-heading strong{color:var(--ink);font-size:12px}#incomeStatementPanel .income-statement-table{min-width:0;max-width:780px;margin:0 auto}.income-statement-table th:last-child,.income-statement-table td:last-child{text-align:right;white-space:nowrap}.income-statement-table .income-section-row th{text-align:left;background:#f7f8fb;color:#59647a;font-size:10px;letter-spacing:.05em}.income-statement-table .income-detail td:first-child{padding-left:30px;color:#647084}.income-statement-table .income-subtotal td{font-weight:700;border-top:1px solid #e8ebf1}.income-statement-table .income-strong td{font-weight:800;color:#17223c;border-top:1px solid #dce2eb;background:#fbfcfe}.income-statement-table .income-net td{font-weight:800;font-size:12px;color:#fff;background:#344fce;border-top:2px solid #344fce}.income-statement-table .income-net td:first-child{border-radius:0 0 0 7px}.income-statement-table .income-net td:last-child{border-radius:0 0 7px 0}
@media(max-width:680px){.income-statement-heading{margin:0 12px 12px;align-items:flex-start;flex-direction:column}.income-statement-table{min-width:0!important}}
@media print{body.print-income-statement #journalPanel,body.print-income-statement #trialPanel,body.print-income-statement #balanceSheetPanel,body.print-income-statement #accountsPanel{display:none!important}body.print-income-statement #incomeStatementPanel{display:block!important}body.print-income-statement .income-statement-heading{margin:0 0 12px;padding:0;border:0;background:#fff}body.print-balance-sheet #journalPanel,body.print-balance-sheet #trialPanel,body.print-balance-sheet #incomeStatementPanel,body.print-balance-sheet #accountsPanel{display:none!important}body.print-balance-sheet #balanceSheetPanel{display:block!important}body.print-balance-sheet .income-statement-heading{margin:0 0 12px;padding:0;border:0;background:#fff}body.print-balance-sheet #balanceSheetCheck{margin:12px 0}.balance-sheet-table tfoot th:first-child{text-align:left}.balance-sheet-table tfoot th:last-child{text-align:right}}

/* Chart of Accounts management */
.account-actions,.account-row-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.account-row-actions{gap:7px}.account-row-actions .button{padding:6px 9px;font-size:10px}.account-description{max-width:260px;overflow:hidden;text-overflow:ellipsis}.account-history-note{margin:0 0 14px;padding:10px 12px;border-radius:7px;background:#fff7e9;color:#8c6020;font-size:11px;line-height:1.5}.accounting-section .account-row-actions .delete-action{padding:6px 3px}.accounting-section#accountsPanel table{min-width:940px}

/* Reconciliation correction controls */
.statement-row-actions{display:flex;align-items:center;gap:7px}.statement-row-actions .button{padding:6px 9px;font-size:10px}.statement-row-actions .delete-action{white-space:nowrap}.reconciliation-table{min-width:1250px}#statementLineDialog{width:min(480px,calc(100vw - 30px))}

/* Read-only audit history */
.audit-filters{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr)) auto;gap:12px;align-items:end;margin-bottom:16px}.audit-filters label{margin:0}.audit-filters .audit-search{grid-column:1/4}.audit-panel{overflow:hidden}.audit-table{min-width:1360px}.audit-actor{font-family:monospace;font-size:10px}.audit-summary{max-width:440px;white-space:normal;line-height:1.5}.audit-table code{font-size:10px}.audit-details summary{color:var(--blue);cursor:pointer;font-size:10px;font-weight:700}.audit-details>div{position:absolute;z-index:3;right:18px;max-width:min(700px,90vw);max-height:65vh;overflow:auto;background:white;border:1px solid var(--line);border-radius:9px;padding:14px;box-shadow:0 12px 35px #1d2c4b24}.audit-details pre{max-width:650px;white-space:pre-wrap;overflow-wrap:anywhere;background:#f7f8fb;padding:10px;border-radius:6px;font:10px/1.5 monospace}.audit-readonly{padding:8px 12px;border-radius:20px;background:#eaf8f1;color:#17734f;font-size:10px;font-weight:700}
@media(max-width:1000px){.audit-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.audit-filters .audit-search{grid-column:1/-1}}
@media(max-width:680px){.audit-filters{grid-template-columns:1fr 1fr;padding:14px}.audit-filters .audit-search{grid-column:1/-1}.audit-filters .button{grid-column:1/-1}.audit-panel .panel-heading{align-items:flex-start}}

/* Cash flow and shareholders' equity statements */
.report-note{margin:0 19px 12px;padding:10px 13px;border-left:3px solid #8aa0ee;background:#f7f8fc;color:var(--muted);font-size:10px;line-height:1.5}.cash-flow-table,.equity-statement-table{min-width:0!important;max-width:780px;margin:0 auto}.cash-flow-table th:last-child,.cash-flow-table td:last-child,.equity-statement-table th:last-child,.equity-statement-table td:last-child{text-align:right;white-space:nowrap}
@media(max-width:680px){.report-note{margin:0 12px 11px}.cash-flow-table,.equity-statement-table{min-width:0!important}}
@media print{body.print-cash-flow #journalPanel,body.print-cash-flow #trialPanel,body.print-cash-flow #incomeStatementPanel,body.print-cash-flow #balanceSheetPanel,body.print-cash-flow #equityStatementPanel,body.print-cash-flow #accountsPanel{display:none!important}body.print-cash-flow #cashFlowPanel{display:block!important}body.print-cash-flow .income-statement-heading{margin:0 0 12px;padding:0;border:0;background:#fff}body.print-cash-flow .report-note{margin:0 0 12px;padding:0;border:0;background:#fff}body.print-equity-statement #journalPanel,body.print-equity-statement #trialPanel,body.print-equity-statement #incomeStatementPanel,body.print-equity-statement #balanceSheetPanel,body.print-equity-statement #cashFlowPanel,body.print-equity-statement #accountsPanel{display:none!important}body.print-equity-statement #equityStatementPanel{display:block!important}body.print-equity-statement .income-statement-heading{margin:0 0 12px;padding:0;border:0;background:#fff}body.print-equity-statement .report-note{margin:0 0 12px;padding:0;border:0;background:#fff}body.print-cash-flow .accounting-tabs,body.print-equity-statement .accounting-tabs{display:none!important}}

/* Customer receipt delivery */
.checkbox-label{display:flex!important;align-items:flex-start;gap:9px;color:#46536a;font-size:12px;line-height:1.5}.checkbox-label input{width:auto;margin:2px 0 0;accent-color:var(--blue)}#customerReceiptOptions{margin-top:12px;padding:12px;border:1px solid var(--line);border-radius:9px;background:#fafbfe}#customerReceiptOptions[hidden]{display:none!important}.receipt-delivery-status{display:inline-block;padding:5px 9px;border-radius:99px;background:#eef1f6;color:#536078;font-size:10px;text-transform:capitalize;font-weight:700}.receipt-delivery-status.sent{background:#e7f7ef;color:#19744e}.receipt-delivery-status.failed{background:#fff0ed;color:#b3483a}.receipt-delivery-status.sending{background:#fff6df;color:#9a6b16}.receipt-error{display:block;max-width:260px;margin-top:6px;color:#b3483a;white-space:normal;line-height:1.4}.receipt-actions{display:flex;gap:6px}.receipt-actions .button{padding:6px 9px;font-size:10px;white-space:nowrap}
@media(max-width:680px){.receipt-actions{flex-direction:column;align-items:flex-start}}

/* Multi-business selector and team access */
.tenant-switcher{max-width:210px;min-width:130px;padding:8px 32px 8px 11px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font:600 12px 'DM Sans',sans-serif}
.tenant-switcher-wrap{display:flex;align-items:center;gap:7px;padding:5px 8px;border:1px solid var(--line);border-radius:9px;background:#fff}.tenant-switcher-caption{color:#8993a5;font-size:9px;font-weight:700;letter-spacing:.3px}.tenant-switcher-wrap .tenant-switcher{min-width:115px;max-width:190px;padding:4px 22px 4px 5px;border:0;background:transparent;font-size:11px}.tenant-switcher-wrap .tenant-switcher:disabled{opacity:1;color:var(--ink);-webkit-text-fill-color:var(--ink)}
.team-panel{margin:0 0 16px}.team-invite-form{display:grid;grid-template-columns:minmax(180px,1.2fr) minmax(150px,.8fr) auto;gap:12px;align-items:end;margin-top:18px}.team-invite-form label{display:grid;gap:6px;font-weight:600;color:#536075;font-size:12px}.team-invite-form input,.team-invite-form select,.team-controls select{width:100%;padding:10px 11px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--ink);font:400 13px 'DM Sans',sans-serif}.team-note{font-size:11px;line-height:1.6;margin:14px 0 0}.team-controls{white-space:nowrap}.small-button{padding:7px 9px;font-size:11px;margin-left:5px}.nav a[hidden]{display:none}
.approval-settings-form{grid-template-columns:repeat(3,minmax(150px,1fr)) auto}.approval-settings-form small{font-size:10px;font-weight:400;color:var(--muted)}#approvalQueuePanel .table-wrap{overflow-x:auto}
@media(max-width:650px){.team-invite-form{grid-template-columns:1fr}.team-invite-form .button{width:100%}.tenant-switcher{max-width:145px;min-width:110px}.team-controls{min-width:150px}}
@media(max-width:900px){.approval-settings-form{grid-template-columns:1fr 1fr}.approval-settings-form .button{grid-column:1/-1}}
@media(max-width:520px){.approval-settings-form{grid-template-columns:1fr}}
@media(max-width:680px){.topbar{align-items:flex-start;gap:10px}.top-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px;max-width:58%;min-width:0}.tenant-switcher-wrap{max-width:100%;padding:4px 6px}.tenant-switcher-wrap .tenant-switcher{max-width:125px;min-width:92px}.nav{width:100%;min-width:0;max-width:100%;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;touch-action:pan-x;scrollbar-width:thin;scrollbar-color:#b9c2d3 #f0f2f6;padding-bottom:5px}.nav::-webkit-scrollbar{height:5px}.nav::-webkit-scrollbar-track{background:#f0f2f6;border-radius:5px}.nav::-webkit-scrollbar-thumb{background:#b9c2d3;border-radius:5px}.nav a{flex:0 0 auto}}

/* Business workspace creation and owner profile */
.dashboard-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}.business-profile-panel,.business-create-panel,.business-memberships-panel{margin-bottom:16px}.business-form{margin-top:18px}.business-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 15px}.business-form-grid label{display:block}.business-form-grid textarea{display:block;width:100%;margin-top:7px;padding:10px;border:1px solid #e2e6ed;border-radius:6px;font:12px/1.5 'DM Sans';color:#354052;resize:vertical}.business-address{grid-column:1/-1}.business-logo-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:3px 0 15px}.business-logo-row strong{font-size:12px}.business-logo-row p{font-size:10px;margin:5px 0 8px}.business-logo-row input[type=file],.business-logo-input input[type=file]{max-width:330px;font-size:11px;padding:7px}.business-logo-preview{width:132px;height:92px;flex:none;border:1px dashed #d6dce7;background:#fafbfe;border-radius:9px;display:grid;place-items:center;overflow:hidden;color:#929bad;font-size:10px}.business-logo-preview img{width:100%;height:100%;object-fit:contain;background:white}.business-logo-input{display:block;margin:15px 0}.business-logo-input small{display:block;margin-top:5px;font-size:10px}.business-role-badge{display:inline-flex;align-items:center;border-radius:20px;background:#eaf8f1;color:#17734f;padding:7px 10px;font-size:10px;font-weight:700}.business-profile-panel>.panel-heading{padding:0}.business-profile-panel .dialog-actions,.business-create-panel .dialog-actions{margin-top:15px}.business-memberships-panel>.panel-heading{padding:17px 19px}.business-memberships-panel .table-wrap{max-height:320px;overflow:auto}
@media(max-width:680px){.dashboard-actions{width:100%;justify-content:flex-start}.business-form-grid{grid-template-columns:1fr}.business-address{grid-column:auto}.business-logo-row{align-items:flex-start}.business-logo-preview{width:100px;height:78px}.business-profile-panel>.panel-heading{align-items:flex-start}.business-memberships-panel>.panel-heading{padding:14px}}

/* Mobile workspace selector and navigation: keep controls visible and swipeable. */
@media(max-width:680px){
  .topbar{display:flex;flex-wrap:wrap;align-items:flex-start;gap:12px;margin-bottom:22px}
  .topbar>div:first-child{flex:1 1 100%;min-width:0}
  .top-actions{width:100%;max-width:none;min-width:0;justify-content:flex-start;align-items:center;flex-wrap:wrap;gap:8px}
  .tenant-switcher-wrap{display:flex;flex:1 1 190px;min-width:0;max-width:100%;align-items:center;gap:8px;padding:7px 10px}
  .tenant-switcher-caption{flex:0 0 auto;font-size:10px}
  .tenant-switcher-wrap .tenant-switcher{display:block;flex:1 1 auto;width:auto;min-width:0;max-width:none;margin:0;padding:4px 22px 4px 4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .nav{display:flex;flex:0 0 auto;align-self:stretch;width:100%;min-width:0;max-width:100%;flex-wrap:nowrap;gap:5px;margin-top:13px;padding:0 0 7px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;touch-action:pan-x;scrollbar-width:thin;scrollbar-color:#b9c2d3 #f0f2f6}
  .nav a{display:flex;flex:0 0 auto;width:max-content;min-width:max-content;height:38px;white-space:nowrap;padding:0 12px}
}

.document-deduction{margin:14px 0 10px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fafbfe}
.document-deduction>label{margin:0 0 7px;font-size:11px}
.document-deduction-controls{display:grid;grid-template-columns:minmax(150px,1fr) minmax(110px,.65fr);gap:8px;align-items:center}
.document-deduction-controls select,.document-deduction-controls input{margin:0;min-width:0;padding:9px;font-size:12px}
.document-deduction small{display:block;margin-top:7px;color:var(--muted);font-size:10px}
.document-summary{margin-top:12px;border-top:1px solid var(--line);padding-top:9px}
.document-summary>div{display:flex;justify-content:space-between;gap:12px;padding:5px 0;color:#69758a;font-size:11px}
.document-summary>div strong{color:var(--ink);font-weight:600}
.document-summary .document-total{margin:5px 0 0;padding-top:11px;border-top:1px solid var(--line);font-weight:700;color:var(--ink)}
.document-summary .document-total strong{font:700 17px Manrope}
@media(max-width:500px){.document-deduction-controls{grid-template-columns:1fr 105px}}

/* Offline workspace status and locally queued finance documents. */
.offline-status{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:0 0 14px;padding:10px 13px;border:1px solid #cfe8da;border-radius:9px;background:#f1faf5;color:#315b45;font-size:11px;line-height:1.45}
.offline-status strong{font-weight:700}.offline-indicator{width:9px;height:9px;flex:0 0 9px;border-radius:50%;background:#2b9b68;box-shadow:0 0 0 3px #2b9b681c}
.offline-status.offline{border-color:#f1d7a9;background:#fff8eb;color:#77561b}.offline-status.offline .offline-indicator{background:#d98e26;box-shadow:0 0 0 3px #d98e261c}
.offline-pending-link{margin-left:auto;color:#225c3d;font-weight:700;text-decoration:underline;text-underline-offset:2px}.offline-sync-button{border:0;border-radius:6px;padding:6px 10px;background:#225c3d;color:#fff;font:700 10px 'DM Sans';cursor:pointer}
.offline-drafts-panel{margin:0 0 16px;padding:0;overflow:hidden}.offline-drafts-panel[hidden]{display:none!important}.offline-drafts-panel>.panel-heading{padding:15px 18px}.offline-drafts-panel .table-wrap{overflow:auto}.offline-drafts-panel table{min-width:720px}.offline-draft-error{display:block;max-width:300px;margin-top:4px;color:#a34636;white-space:normal;font-size:10px;line-height:1.4}.offline-action{border:0;background:transparent;color:#245d40;font:700 10px 'DM Sans';cursor:pointer;margin-right:8px}.offline-action.danger{color:#a6463b}.offline-state{display:inline-flex;padding:5px 8px;border-radius:20px;background:#fff4dc;color:#8b641c;font-size:9px;font-weight:700}.offline-state.needs_attention{background:#fff0ed;color:#a34636}.offline-state.syncing{background:#eaf0ff;color:#455ec6}
@media(max-width:680px){.offline-status{font-size:10px;gap:7px}.offline-pending-link{margin-left:0}.offline-drafts-panel>.panel-heading{align-items:flex-start;padding:13px}}

/* Dark green navigation with a visible, swipeable mobile tab strip. */
.nav{background:#123f2b;padding:9px;border-radius:12px}
.nav a{color:#e6f1e9}
.nav a.active,.nav a:hover,.nav a:focus-visible{background:#2d704c;color:#fff;outline-color:#b9ddc6}
@media(max-width:680px){
  .nav{padding:8px 9px 12px;scrollbar-width:thin;scrollbar-color:#b8d4c1 #123f2b}
  .nav::-webkit-scrollbar{height:5px}
  .nav::-webkit-scrollbar-track{background:#123f2b;border-radius:5px}
  .nav::-webkit-scrollbar-thumb{background:#b8d4c1;border-radius:5px}
  .nav a{flex:0 0 auto}
}

/* Customer receivables and supplier creditor aging report */
.finance-actions[hidden],.finance-table-panel[hidden],#creditReportsPanel[hidden]{display:none!important}.credit-report-stats{grid-template-columns:repeat(4,minmax(0,1fr));max-width:none}.credit-report-stats .stat-card{min-width:0}@media(max-width:680px){.credit-report-stats{grid-template-columns:1fr 1fr}#creditReportsPanel .table-wrap{overflow-x:auto}#creditReportsPanel table{min-width:1000px}}@media print{body:has(#creditReportsPanel:not([hidden])) .sidebar,body:has(#creditReportsPanel:not([hidden])) .topbar,body:has(#creditReportsPanel:not([hidden])) .welcome-row,body:has(#creditReportsPanel:not([hidden])) .finance-stats:not(.credit-report-stats),body:has(#creditReportsPanel:not([hidden])) .finance-toolbar,body:has(#creditReportsPanel:not([hidden])) .finance-table-panel,body:has(#creditReportsPanel:not([hidden])) #financialAccountRows,body:has(#creditReportsPanel:not([hidden])) #appNotice,body:has(#creditReportsPanel:not([hidden])) footer{display:none!important}body:has(#creditReportsPanel:not([hidden])) .main{margin:0;padding:0}body:has(#creditReportsPanel:not([hidden])) #creditReportsPanel{display:block!important;border:0}body:has(#creditReportsPanel:not([hidden])) #creditReportsPanel .panel-heading{padding:0 0 12px}body:has(#creditReportsPanel:not([hidden])) #creditReportsPanel .accounting-filters,body:has(#creditReportsPanel:not([hidden])) #creditReportsPanel .trial-actions{display:none!important}}

/* Multiple stock locations and transfer controls. */
.location-panel{margin-bottom:16px;padding:0}.location-panel>.panel-heading{padding:17px 19px}.location-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.location-panel .transfer-history-heading{border-top:1px solid var(--line);margin-top:4px;padding:17px 19px 12px}.location-panel>.table-wrap{overflow:auto}.location-panel table{min-width:680px}.inventory-toolbar{display:flex;align-items:center;gap:10px;padding:0 19px 14px}.inventory-toolbar select{max-width:260px}.transfer-history-heading h3{margin:0 0 5px;font:700 14px Manrope}.transfer-history-heading p{margin:0;color:var(--muted);font-size:11px}.location-panel .button:disabled{opacity:.55;cursor:not-allowed}
@media(max-width:680px){.location-panel>.panel-heading{align-items:flex-start;flex-direction:column}.location-actions{width:100%;justify-content:flex-start}.inventory-toolbar{padding:0 14px 12px}.inventory-toolbar select{width:100%;max-width:none}.location-panel table{min-width:650px}}

/* Quick setup and spreadsheet import. */
.quick-import-panel,.import-preview-panel,.import-notes{padding:18px;margin-bottom:16px}
.quick-import-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.quick-import-steps article{display:flex;align-items:center;gap:9px;color:#657084;font-size:12px}
.quick-import-steps article b{display:grid;place-items:center;flex:0 0 27px;height:27px;border-radius:50%;background:#e7f1eb;color:#14583a;font:700 12px Manrope}
.import-controls{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;padding-top:17px}
.import-controls>label{width:min(360px,100%)}.import-actions{display:flex;gap:9px;flex-wrap:wrap}.import-file-button{position:relative;overflow:hidden}
.import-help{margin:12px 0 0;font-size:11px}.import-summary{display:flex;gap:7px;flex-wrap:wrap}.import-summary span{padding:6px 9px;border-radius:20px;background:#edf7f1;font-size:11px;font-weight:700}.import-summary .bad{background:#fff0ed;color:#ad4636}
.import-warning{padding:11px 13px;border-radius:8px;background:#fff6e5;color:#81580c;font-size:12px;margin:0 16px 12px}
.import-table-wrap table{min-width:980px}.import-table-wrap td:last-child{min-width:210px;white-space:normal}.import-row-bad{background:#fff8f6}.import-row-good td:first-child{color:#238261}.import-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:15px}.import-notes h3{margin:0 0 10px;font:700 15px Manrope}.import-notes ul{margin:0;padding-left:20px;color:#6f7b8e;font-size:12px;line-height:1.8}.opening-import-controls{display:grid;grid-template-columns:minmax(160px,.5fr) minmax(250px,1fr);gap:12px;padding-top:14px}.opening-import-controls label{margin:0}
@media(max-width:720px){.quick-import-steps{grid-template-columns:1fr 1fr}.import-controls{align-items:stretch;flex-direction:column}.import-controls>label{width:100%}.import-actions{width:100%}.import-actions>*{flex:1}.import-footer{align-items:stretch;flex-direction:column}.import-footer .button{width:100%}.opening-import-controls{grid-template-columns:1fr}.import-preview-panel,.quick-import-panel,.import-notes{padding:14px}}


/* Desktop navigation: keep all sections reachable in a short laptop viewport. */
@media (min-width: 681px) {
  .sidebar { overflow: hidden; }
  .sidebar > .nav {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    min-height: 0;
    margin-top: 28px;
    padding: 9px 6px;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior-y: contain;
    scrollbar-width: thin;
    scrollbar-color: #b8d4c1 #123f2b;
  }
  .sidebar > .nav a {
    flex: 0 0 44px;
    min-height: 44px;
  }
  .sidebar > .nav::-webkit-scrollbar { width: 6px; }
  .sidebar > .nav::-webkit-scrollbar-track { background: #123f2b; border-radius: 6px; }
  .sidebar > .nav::-webkit-scrollbar-thumb { background: #b8d4c1; border-radius: 6px; }
  .sidebar-bottom { flex: 0 0 auto; }
}

/* Customer return / credit note workflow */
.finance-stats{max-width:1280px}
.return-lines{display:grid;gap:8px;max-height:280px;overflow:auto;margin:10px 0 16px}
.return-line{display:grid;grid-template-columns:minmax(0,1fr) 90px minmax(72px,auto);align-items:center;gap:10px;padding:11px;border:1px solid var(--line);border-radius:8px;margin:0!important}
.return-line>span:first-child{font-size:12px}
.return-line small{display:block;color:var(--muted);font-size:10px;margin:4px 0 0 23px}
.return-line input[type=checkbox]{width:auto;margin:0 7px 0 0;vertical-align:middle}
.return-line input[type=number]{margin:0;padding:8px}
.return-line>span:last-child{text-align:right;color:#667185;font-size:10px;white-space:nowrap}
.credit-note-preview{padding:12px;border-radius:8px;background:#eef8f3;color:#16674d;font-weight:700;margin:12px 0;font-size:13px}
@media(max-width:700px){.return-line{grid-template-columns:minmax(0,1fr) 75px}.return-line>span:last-child{grid-column:1/-1;text-align:left;margin-left:24px}.finance-stats{max-width:none}}
.finance-stats{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:700px){.finance-stats{grid-template-columns:1fr 1fr}}
.finance-actions #openReturnCreditPicker[hidden],.finance-actions #openRefundCreditPicker[hidden]{display:none!important}

/* Barcode labels, camera scanning, and stock count workflow */
.stock-count-panel{margin:0 0 16px}.stock-count-panel .panel-heading{gap:14px}.stock-count-panel .panel-heading h3{margin:0 0 5px}.barcode-scan-field{margin:0 0 9px}.barcode-scan-field input{max-width:420px}.barcode-camera-dialog{width:min(560px,calc(100vw - 28px))}.barcode-camera-content{padding:22px}.barcode-camera-content video{display:block;width:100%;max-height:62vh;object-fit:cover;background:#111;border-radius:9px}.barcode-camera-content p{font-size:12px;line-height:1.5}.count-table-wrap{max-height:45vh;overflow:auto;margin:8px 0 16px}.count-table-wrap table{min-width:510px}.count-table-wrap input{width:100px;margin:0;padding:8px}.count-table-wrap small{color:var(--muted)}#countCameraScan,#saleCameraScan,#documentCameraScan{margin:-6px 0 12px}

/* Shared BusinessHub card palette: forest green with restrained tinted surfaces. */
:root{--card-green:#236b4b;--card-border:#d7e7dd;--card-shadow:0 7px 22px rgba(27,75,51,.055)}
.stat-card,.panel,.auth-card,.help-card,.business-create-panel,.business-memberships-panel,.business-profile-panel,.import-preview-panel,.location-panel,.offline-drafts-panel,.quick-import-panel,.stock-count-panel,.team-panel{background:linear-gradient(145deg,#fff 0%,#f5faf7 100%);border-color:var(--card-border);box-shadow:var(--card-shadow)}
.stat-card{border-top:3px solid #3c8060;transition:transform .16s ease,box-shadow .16s ease}
.stat-card:has(.stat-icon.blue){border-top-color:#4f79b6;background:linear-gradient(145deg,#fff 0%,#f3f7fc 100%)}
.stat-card:has(.stat-icon.violet){border-top-color:#8063a9;background:linear-gradient(145deg,#fff 0%,#f8f5fc 100%)}
.stat-card:has(.stat-icon.orange){border-top-color:#bd8743;background:linear-gradient(145deg,#fff 0%,#fcf8f1 100%)}
.panel{border-top:3px solid #c2ddcd}
.auth-card{border-top:4px solid var(--card-green)}
.help-card{border:1px solid var(--card-border)}
@media(prefers-reduced-motion:no-preference){.stat-card:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(27,75,51,.10)}}

/* Expenses and cash management */
#cashManagementPanel .panel-heading{gap:14px;flex-wrap:wrap}#cashManagementPanel .finance-top-actions{justify-content:flex-end}#cashManagementPanel .accounting-filters{display:flex;align-items:end;gap:10px;flex-wrap:wrap;padding:0 18px 16px}#cashManagementPanel .accounting-filters label{min-width:150px}#cashManagementPanel .table-wrap{overflow-x:auto}#cashManagementPanel table{min-width:850px}#cashManagementPanel td:nth-child(6){min-width:190px;white-space:normal}#cashTransactionDialog{max-width:560px}#cashTransactionDialog small{display:block;line-height:1.5;margin-top:8px}@media(max-width:680px){#cashManagementPanel .panel-heading{align-items:flex-start}#cashManagementPanel .finance-top-actions{width:100%;justify-content:stretch}#cashManagementPanel .finance-top-actions .button{flex:1}#cashManagementPanel .accounting-filters{display:grid;grid-template-columns:1fr 1fr;padding-left:12px;padding-right:12px}#cashManagementPanel .accounting-filters label{min-width:0}#cashManagementPanel .accounting-filters .button{width:100%}}

/* Local payment, tax profile and operational alerts */
.business-settings-form{display:grid;gap:16px;padding:0 18px 18px}.business-settings-form fieldset{border:1px solid var(--line);border-radius:12px;padding:16px;min-width:0}.business-settings-form legend{padding:0 8px;font:700 14px Manrope;color:var(--ink)}.business-settings-form fieldset>p{margin:0 0 12px;line-height:1.5}.business-settings-form .form-row{margin:10px 0}.business-settings-form .checkbox-label{display:flex;align-items:center;gap:8px}.business-settings-form input[type=checkbox]{width:auto;margin:0;accent-color:#176b4d}.payment-method-options{display:flex;gap:18px;flex-wrap:wrap}.payment-method-options label,.business-settings-form fieldset label>span{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600}.business-alert-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:4px 18px 18px}.business-alert-summary article{display:grid;gap:5px;padding:15px;border:1px solid var(--line);border-radius:11px;background:#f8fafb}.business-alert-summary b{font:700 22px Manrope;color:#155b43}.business-alert-summary span{font-size:11px;color:var(--muted)}#businessAlertsPanel .table-wrap{overflow-x:auto}#businessAlertsPanel table{min-width:780px}@media(max-width:680px){.business-settings-form{padding:0 12px 14px}.business-settings-form fieldset{padding:12px}.business-settings-form .form-row{grid-template-columns:1fr}.payment-method-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.business-alert-summary{grid-template-columns:1fr 1fr;padding-left:12px;padding-right:12px}.business-alert-summary article:last-child{grid-column:1/-1}}
.industry-template-row{display:flex;align-items:flex-end;gap:12px;padding:13px 0;border-bottom:1px solid var(--line);margin-bottom:12px}.industry-template-row label,.industry-template-select{display:block;max-width:440px;flex:1}.industry-template-row select,.industry-template-select select{display:block;width:100%;margin-top:7px;padding:10px 12px;border:1px solid #dce3eb;border-radius:8px;background:#fff;color:#354052;font:12px 'DM Sans',sans-serif}.industry-template-select{margin:0 0 12px}.industry-template-select small{display:block;margin-top:5px}.industry-template-preview{background:#f2f7f4;border:1px solid #deebe2;border-radius:10px;padding:12px 14px;margin:0 0 16px;color:#42534a;font-size:11px;line-height:1.7}.industry-template-preview>strong{display:block;color:#176545;font-size:12px;margin-bottom:6px}.industry-template-preview>div{display:grid;grid-template-columns:1fr 1fr;gap:12px}.industry-template-preview span{display:block}.industry-template-preview span b{display:block;color:#263b31;margin-bottom:3px}.industry-template-preview>small{display:block;color:#77837c;margin-top:7px}@media(max-width:680px){.industry-template-row{align-items:stretch;flex-direction:column}.industry-template-row label{max-width:none}.industry-template-preview>div{grid-template-columns:1fr}}
.bundle-panel .table-wrap{overflow-x:auto}.bundle-panel table{min-width:680px}.bundle-component-row{display:grid;grid-template-columns:minmax(0,1fr) 130px auto;align-items:end;gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}.bundle-component-row label{margin:0}.bundle-component-row input,.bundle-component-row select{margin-top:6px}.bundle-document-tools{display:grid;grid-template-columns:minmax(0,1fr) 110px auto;align-items:end;gap:10px;padding:12px;border:1px solid var(--line);border-radius:10px;background:#f6faf7;margin:12px 0}.bundle-document-tools label{margin:0}.bundle-document-tools small{grid-column:1/-1}.bundle-document-tools select,.bundle-document-tools input{margin-top:5px}.item-unit{min-width:105px}.document-item-row{grid-template-columns:minmax(150px,1.6fr) minmax(90px,.8fr) minmax(75px,.55fr) minmax(90px,.7fr) auto auto!important}@media(max-width:680px){.bundle-component-row{grid-template-columns:1fr 100px}.bundle-component-row .remove-bundle-component{grid-column:1/-1}.bundle-document-tools{grid-template-columns:1fr 90px}.bundle-document-tools #addDocumentBundle{grid-column:1/-1}.bundle-document-tools small{grid-column:1/-1}.document-item-row{grid-template-columns:minmax(135px,1.4fr) minmax(90px,.7fr) minmax(70px,.5fr) minmax(85px,.7fr) auto auto!important}}
#recurringPanel h4{font:700 13px Manrope,sans-serif;margin:20px 0 9px;color:#253447}.recurring-note{padding:10px 12px;background:#f1f7f3;border-radius:8px;line-height:1.55}.finance-tabs{flex-wrap:nowrap;scrollbar-width:thin}.finance-tabs .finance-tab{flex:none}@media(max-width:680px){#recurringPanel>.panel-heading{align-items:flex-start;flex-direction:column}#recurringPanel .table-wrap{overflow-x:auto}#recurringPanel table{min-width:680px}}

/* Customer and supplier portal */
.portal-panel{margin-top:18px}.portal-invite-form{display:grid;grid-template-columns:1fr 1.4fr 1.3fr auto;gap:14px;align-items:end;padding:18px 22px 22px}.portal-invite-form label,.portal-account-picker label{display:grid;gap:7px;color:var(--ink,#253148);font-weight:600}.portal-invite-form input,.portal-invite-form select,.portal-account-picker select{min-width:0;width:100%;padding:12px 13px;border:1px solid #dfe4ec;border-radius:10px;background:white;color:#263246;font:inherit}.portal-stats{margin:18px 0 24px}.portal-account-picker{display:flex;align-items:end;justify-content:space-between;gap:16px;padding:20px 22px 0}.portal-account-picker label{min-width:min(100%,420px)}.portal-footnote{padding:8px 22px 20px}.portal-panel .table-wrap{margin-top:12px}.button.small{padding:8px 12px;font-size:.85rem}.button.danger{background:#fff0ef;color:#a62c25;border:1px solid #ffd4d0}.badge.success{background:#e5f6ef;color:#14734e}@media(max-width:850px){.portal-invite-form{grid-template-columns:1fr 1fr}.portal-invite-form button{min-height:46px}.portal-account-picker{align-items:start;flex-direction:column}}@media(max-width:560px){.portal-invite-form{grid-template-columns:1fr;padding:16px}.portal-account-picker{padding:16px 16px 0}.portal-footnote{padding-inline:16px}}

/* Keep mobile navigation above page content and make every tab reachable by swiping. */
@media(max-width:680px){
  .app-shell{display:flex;flex-direction:column;min-height:100vh}
  .sidebar{position:sticky;inset:0 0 auto;z-index:100;display:flex;flex:0 0 auto;flex-direction:column;width:100%;height:auto;box-sizing:border-box;padding:10px 12px;background:#fff;border-right:0;border-bottom:1px solid var(--line);box-shadow:0 4px 14px rgba(20,35,60,.08)}
  .brand{flex:0 0 auto;min-width:0}
  .nav{display:flex;flex:0 0 auto;align-self:stretch;box-sizing:border-box;width:100%;min-width:0;max-width:100%;flex-wrap:nowrap;gap:6px;margin:10px 0 0;padding:7px 8px 11px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;touch-action:pan-x;scrollbar-width:thin;scrollbar-color:#b8d4c1 #123f2b}
  .nav a{display:flex;flex:0 0 auto;width:max-content;min-width:max-content;height:40px;white-space:nowrap;padding:0 13px;font-size:12px}
  .main{position:relative;z-index:0;flex:1 0 auto;width:100%;min-width:0;box-sizing:border-box;margin:0;padding:20px 14px}
}
