*{box-sizing:border-box}body{margin:0;background:#f3f6fb;color:#182033;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}main{padding:0 28px 34px;max-width:1800px;margin:auto}.topbar{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.97);backdrop-filter:blur(8px);border-bottom:1px solid #dbe3ef;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 2px 10px;margin:0 -28px 20px;padding-left:28px;padding-right:28px;box-shadow:0 3px 14px #0f172a12}.top-brand{display:flex;align-items:center;gap:22px;min-width:0}.brand{font-weight:850;font-size:18px;color:#111827;white-space:nowrap}.brand span{display:block;color:#64748b;font-size:10px;font-weight:550;margin-top:4px}.topnav{display:flex;gap:4px;flex-wrap:wrap;background:#0f172a;padding:5px;border-radius:12px}.topnav button{border:0;background:transparent;color:#cbd5e1;padding:9px 10px;border-radius:8px;font-weight:700;font-size:13px;white-space:nowrap;cursor:pointer}.topnav button.active,.topnav button:hover{background:#ea580c;color:#fff}.top-meta{display:flex;align-items:center;gap:10px;flex-shrink:0}.top-meta label{font-size:9px;color:#64748b;font-weight:800;letter-spacing:.5px}.top-meta input,.top-meta select{display:block;padding:6px 8px;border:0;border-radius:6px;background:#fff7ed;color:#9a3412;font-weight:750}.top-meta select{min-width:174px;cursor:pointer}.quiet{border:0;background:#eef2f7;padding:9px 12px;border-radius:8px;color:#475569;cursor:pointer}.page-head{background:#0f172a;color:white;padding:16px 20px;border-radius:12px;display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.page-head h1{margin:0;font-size:25px}.page-head p{margin:5px 0 0;color:#cbd5e1}.page-head #actions{display:flex;gap:8px}.btn{border:0;background:linear-gradient(135deg,#ea580c,#c2410c);color:#fff;padding:10px 14px;border-radius:9px;font-size:13px;font-weight:700;cursor:pointer}.btn.gray{background:#64748b}.btn.red{background:#dc2626}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.card,.panel{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:17px;box-shadow:0 5px 18px #0f172a0a}.card{border-top:4px solid #f97316}.card .label{font-size:11px;color:#64748b}.card .num{font-size:25px;font-weight:780;margin-top:8px}.card small{display:block;margin-top:7px;color:#64748b}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:15px}.panel h3{margin:0 0 12px}.toolbar{display:flex;gap:10px;justify-content:space-between;align-items:center;margin-bottom:13px}.toolbar .left{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.search{width:min(440px,55vw);padding:10px 12px;border:1px solid #d7dce5;border-radius:8px;font:inherit}.tablewrap{background:white;border:1px solid #e2e8f0;border-radius:13px;overflow:auto;box-shadow:0 4px 16px #0f172a08}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:12px 13px;border-bottom:1px solid #edf0f4;text-align:left;font-size:13px;white-space:nowrap}.table th{font-size:10px;letter-spacing:.35px;color:#475569;background:#fff7ed}.table tr:last-child td{border-bottom:0}.link{color:#ea580c;font-weight:700;cursor:pointer}.link:hover{text-decoration:underline}.muted{color:#64748b}.empty{text-align:center!important;padding:30px!important;color:#64748b}.badge{display:inline-block;padding:4px 8px;border-radius:20px;font-size:10px;background:#fff7ed;color:#9a3412;font-weight:750}.badge.good{background:#dcfce7;color:#166534}.badge.warn{background:#fef3c7;color:#92400e}.badge.bad{background:#fee2e2;color:#991b1b}.modal{position:fixed;inset:0;z-index:40;display:flex;align-items:center;justify-content:center;padding:16px;background:#0007;overflow:auto}.modal.hidden{display:none}.modalbox{position:relative;background:white;border-radius:15px;width:min(840px,calc(100vw - 28px));max-height:calc(100dvh - 28px);overflow:auto;padding:22px}.x{position:sticky;top:0;float:right;border:1px solid #dbe3ef;background:white;border-radius:50%;height:38px;width:38px;font-size:25px;cursor:pointer;z-index:2}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field label{display:block;font-size:11px;color:#64748b;font-weight:700;margin-bottom:5px}.field input,.field select,.field textarea{width:100%;padding:10px;border:1px solid #d7dce5;border-radius:8px;font:inherit}.field textarea{min-height:80px}.full{grid-column:1/-1}.actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.login{position:fixed;inset:0;z-index:100;background:linear-gradient(135deg,#0f172a,#9a3412);display:grid;place-items:center;padding:18px}.login.hidden{display:none}.login-card{width:min(410px,100%);background:white;padding:28px;border-radius:18px;box-shadow:0 24px 70px #0005}.login-card h1{font-size:22px;margin:22px 0 4px}.login-card p{color:#64748b;font-size:13px}.login-card label{display:block;margin:14px 0 6px;font-size:12px;font-weight:700;color:#334155}.login-card input{display:block;width:100%;padding:11px;border:1px solid #cbd5e1;border-radius:8px;margin-top:5px;font:inherit}.login-card .btn{width:100%;margin-top:12px}.login-card #loginError{color:#b91c1c;font-size:12px;min-height:18px;margin-top:7px}.notice{border-left:4px solid #ea580c;background:#fff7ed;color:#334155;padding:12px;border-radius:8px;margin-bottom:12px;line-height:1.5}.right{text-align:right!important}.green{color:#15803d}.redtext{color:#b91c1c}@media(max-width:1150px){.topbar{align-items:flex-start}.top-brand{align-items:flex-start;display:block}.brand{margin-bottom:8px}.top-meta{display:none}.topnav{max-height:85px;overflow:auto}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){main{padding:0 11px 20px}.topbar{margin:0 -11px 14px;padding:8px 11px}.top-brand{width:100%}.brand{font-size:16px}.topnav{max-height:122px}.topnav button{font-size:11px;padding:7px}.page-head{padding:13px;align-items:flex-start}.page-head h1{font-size:21px}.cards{grid-template-columns:1fr 1fr;gap:8px}.card,.panel{padding:12px}.card .num{font-size:19px}.grid2{grid-template-columns:1fr}.toolbar{align-items:stretch;flex-direction:column}.toolbar .left{width:100%}.search{width:100%;max-width:none}.table th,.table td{padding:10px;font-size:12px}.formgrid{grid-template-columns:1fr}.full{grid-column:auto}.modal{align-items:flex-start;padding:8px}.modalbox{width:100%;max-height:calc(100dvh - 16px);padding:15px}.x{position:sticky;top:0}}@media print{.topbar,.toolbar .btn,.page-head #actions{display:none}.modal{position:static;background:#fff}}

.card.clickable{cursor:pointer;transition:transform .15s,box-shadow .15s}.card.clickable:hover,.card.clickable:focus{transform:translateY(-2px);box-shadow:0 8px 22px #0f172a18;outline:2px solid #fdba74}

.clickable-row{cursor:pointer}.clickable-row:hover{background:#fff7ed}

.table-filter,.inline-filter select,#ledgerType,#ledgerYear{padding:9px 10px;border:1px solid #d7dce5;border-radius:8px;background:#fff;color:#334155;font:inherit;max-width:260px}.inline-filter{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:700;color:#64748b}.toolbar .left{flex-wrap:wrap}

.receivables{margin-top:18px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 10px}.section-heading h2{margin:0 0 4px;font-size:20px}.section-heading p{margin:0}.section-heading>strong{font-size:22px;color:#9a3412}
/* Dashboard receivables: clearer, larger customer names and figures. */
.receivables .link{color:#111827}.receivables .table th{font-size:11px}.receivables .table td{font-size:14px}.receivables .section-heading h2{font-size:21px}.receivables .section-heading p{font-size:13px}.receivables .section-heading>strong{font-size:23px}
