:root{--gold:#d7b45a;--dark:#121212;--ink:#1f2937;--muted:#6b7280;--paper:#fffdf8;--bg:#f7f3ea;--line:#e7ddc9;--danger:#b42318;--success:#087443;--warn:#b54708;--brand:#6f4e37;--rose:#fff4ed;--shadow:0 18px 50px rgba(36,24,9,.12);--radius:22px}*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,'Noto Sans Bengali',sans-serif;background:linear-gradient(135deg,#fffaf0,#f4eee2 45%,#fff);color:var(--ink);min-height:100vh}.topbar{position:sticky;top:0;z-index:20;background:rgba(255,253,248,.88);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:14px 28px}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;color:var(--dark)}.brand small{display:block;color:var(--muted);font-size:12px;margin-top:2px}.logoMark{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,#121212,#6f4e37);color:#f8df93;font-weight:900;box-shadow:0 10px 25px rgba(111,78,55,.25)}.nav{display:flex;align-items:center;gap:6px}.nav a,.btn{appearance:none;border:0;text-decoration:none;font-weight:800;border-radius:999px;padding:11px 16px;color:var(--ink);background:transparent;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer}.nav a:hover,.btn.ghost:hover{background:#fff2d3}.btn.primary{background:linear-gradient(135deg,#121212,#6f4e37);color:white;box-shadow:0 18px 35px rgba(111,78,55,.25)}.btn.gold{background:linear-gradient(135deg,#f5d578,#d7b45a);color:#1a1304}.btn.danger{background:#fee4e2;color:#b42318}.btn.small{padding:8px 11px;font-size:12px}.btn.block{width:100%}.navToggle{display:none;border:0;background:#151515;color:white;border-radius:12px;padding:10px 13px}.page{width:min(1180px,calc(100% - 28px));margin:0 auto;padding:28px 0 50px}.footer{text-align:center;color:var(--muted);padding:28px;border-top:1px solid var(--line);background:#fffaf2}.hero{position:relative;overflow:hidden;border:1px solid var(--line);background:radial-gradient(circle at 15% 20%,rgba(215,180,90,.32),transparent 35%),linear-gradient(135deg,#fffdf8,#fff4df);box-shadow:var(--shadow);border-radius:34px;padding:58px;display:grid;grid-template-columns:1.05fr .95fr;gap:32px;align-items:center}.hero h1{font-size:clamp(36px,6vw,76px);line-height:.95;margin:0 0 18px;color:#171717;letter-spacing:-2px}.hero p{font-size:18px;line-height:1.7;color:#55483a;margin:0 0 26px}.heroArt{min-height:360px;border-radius:32px;background:radial-gradient(circle at 50% 35%,#f5d578,transparent 22%),linear-gradient(145deg,#19100b,#67452f);position:relative;box-shadow:inset 0 0 0 1px rgba(255,255,255,.15),0 25px 60px rgba(42,27,14,.25);overflow:hidden}.heroArt:before{content:'৳';position:absolute;font-size:170px;font-weight:900;color:rgba(255,255,255,.09);right:40px;top:20px}.heroArt:after{content:'Invoice • Payment • B2B • Reports';position:absolute;left:28px;bottom:28px;color:white;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);border-radius:20px;padding:16px 20px;backdrop-filter:blur(12px);font-weight:900}.statGrid,.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:22px 0}.card,.panel{background:rgba(255,255,255,.84);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:var(--radius);padding:22px}.card h3,.panel h2,.panel h3{margin:0 0 10px}.metric{font-size:30px;font-weight:950;color:#151515}.muted{color:var(--muted)}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:20px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.appLayout{display:grid;grid-template-columns:230px 1fr;gap:20px}.sidebar{position:sticky;top:86px;align-self:start;background:#19140d;border-radius:24px;padding:12px;box-shadow:var(--shadow)}.sidebar a{display:block;color:#fff4dc;text-decoration:none;padding:13px 14px;border-radius:16px;font-weight:800;margin-bottom:4px}.sidebar a:hover,.sidebar a.active{background:rgba(245,213,120,.18);color:#fff}.toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:18px}.tableWrap{overflow:auto;border-radius:20px;border:1px solid var(--line);background:white}.table{width:100%;border-collapse:collapse;min-width:760px}.table th,.table td{text-align:left;padding:14px;border-bottom:1px solid #f0eadf;vertical-align:top}.table th{background:#fff5dd;color:#4d3818;font-size:13px;text-transform:uppercase;letter-spacing:.04em}.table tr:hover td{background:#fffdfa}.formGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.field label{display:block;font-weight:850;margin:0 0 7px;color:#2c2419}.field input,.field select,.field textarea{width:100%;border:1px solid #ddd1bd;background:#fffdfa;border-radius:15px;padding:13px 14px;font:inherit;outline:none}.field textarea{min-height:110px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--gold);box-shadow:0 0 0 4px rgba(215,180,90,.18)}.field.full{grid-column:1/-1}.flash{padding:14px 16px;border-radius:16px;margin:0 0 18px;font-weight:800}.flash.success{background:#ecfdf3;color:#027a48}.flash.error{background:#fef3f2;color:#b42318}.flash.info{background:#eff8ff;color:#175cd3}.badge{border-radius:999px;padding:5px 9px;font-size:12px;font-weight:900;display:inline-block}.badge.success{background:#dcfae6;color:#067647}.badge.warning{background:#fff4cc;color:#93370d}.badge.danger{background:#fee4e2;color:#b42318}.badge.muted{background:#f2f4f7;color:#475467}.loginBox{max-width:460px;margin:50px auto}.invoicePaper{background:white;border:1px solid #e4d8c4;border-radius:28px;box-shadow:var(--shadow);padding:34px}.invoiceHead{display:flex;justify-content:space-between;gap:20px;border-bottom:3px solid #f5d578;padding-bottom:20px;margin-bottom:20px}.invoiceBrand{font-size:36px;font-weight:950;color:#151515;letter-spacing:-1px}.invoiceTable{width:100%;border-collapse:collapse;margin:20px 0;font-family:Georgia,'Noto Serif Bengali',serif}.invoiceTable th{background:#ffff00;color:#000;border:2px solid #d9d900;font-size:24px;text-align:center;padding:8px}.invoiceTable td{border:2px solid #d4d4d4;text-align:center;padding:10px;font-size:20px}.invoiceTable tfoot td{background:#dceaf8;font-weight:900}.printBar{display:flex;gap:10px;justify-content:flex-end;margin-bottom:16px;flex-wrap:wrap}.mini{font-size:12px;color:var(--muted)}.pillRow{display:flex;gap:9px;flex-wrap:wrap;margin-top:12px}.pill{background:#fff2d3;border:1px solid #eed597;border-radius:999px;padding:8px 11px;font-weight:850;color:#513b14}.dangerText{color:var(--danger);font-weight:900}.successText{color:var(--success);font-weight:900}.chartBar{height:12px;background:#f1e4cc;border-radius:999px;overflow:hidden}.chartBar span{display:block;height:100%;background:linear-gradient(90deg,#d7b45a,#6f4e37)}.empty{padding:32px;text-align:center;color:var(--muted)}.actionRow{display:flex;gap:8px;flex-wrap:wrap}.notice{padding:14px 16px;background:#fff8e6;border:1px solid #edd7a1;border-radius:16px;color:#523c13}.kpiGrid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.kpi{padding:18px;border-radius:20px;background:linear-gradient(145deg,#fff,#fff4df);border:1px solid var(--line)}.kpi b{font-size:24px;display:block}.printOnly{display:none}@media(max-width:900px){.hero,.grid2,.appLayout{grid-template-columns:1fr}.statGrid,.cards,.grid3,.kpiGrid{grid-template-columns:1fr 1fr}.sidebar{position:relative;top:auto;display:grid;grid-template-columns:1fr 1fr}.formGrid{grid-template-columns:1fr}.navToggle{display:block}.nav{display:none;position:absolute;right:16px;top:68px;background:white;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:10px;flex-direction:column;align-items:stretch}.nav.open{display:flex}.hero{padding:32px}.heroArt{min-height:250px}.invoiceHead{flex-direction:column}.invoiceTable th,.invoiceTable td{font-size:16px}}@media(max-width:560px){.statGrid,.cards,.grid3,.kpiGrid,.sidebar{grid-template-columns:1fr}.topbar{padding:12px 14px}.page{width:min(100% - 18px,1180px)}.invoicePaper{padding:16px;border-radius:18px}.invoiceTable th,.invoiceTable td{font-size:13px;padding:7px}.hero h1{letter-spacing:-1px}}@media print{body{background:white}.topbar,.footer,.printBar,.sidebar,.noPrint{display:none!important}.page{width:100%;padding:0;margin:0}.invoicePaper{box-shadow:none;border:0;border-radius:0}.printOnly{display:block}.invoiceTable th{background:#ffff00!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.invoiceTable tfoot td{background:#dceaf8!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}}

/* FEHAMD Billing Portal v1.2 refinements */
.invoiceCreatePanel h2{margin-top:24px}.innerToolbar{margin-top:18px}.invoiceBuilderTable th:nth-child(1),.invoiceBuilderTable td:nth-child(1){width:70px;text-align:center;font-weight:950}.invoiceBuilderTable th:nth-child(3),.invoiceBuilderTable td:nth-child(3){width:120px}.invoiceBuilderTable th:nth-child(4),.invoiceBuilderTable td:nth-child(4){width:170px}.invoiceBuilderTable th:nth-child(5),.invoiceBuilderTable td:nth-child(5){width:150px;font-weight:950}.invoiceBuilderTable input{min-width:120px}.totalNotice{font-size:18px}.totalNotice span{font-weight:950;color:#151515}
.fehInvoice{position:relative;overflow:hidden;background:linear-gradient(145deg,#fffdf8,#fffaf1 55%,#fff);border:1px solid #eadcc1;border-radius:30px;box-shadow:0 24px 70px rgba(54,35,10,.14);padding:34px;color:#1d1a16}.fehInvoice:before{content:'';position:absolute;inset:0 0 auto 0;height:10px;background:linear-gradient(90deg,#151515,#6f4e37,#d7b45a,#151515)}.fehInvoiceTop{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px;padding-top:8px}.fehBrandBlock{display:flex;align-items:center;gap:14px}.fehLogoMini{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(135deg,#17120b,#79533a);color:#f8df93;font-weight:950;font-size:30px;box-shadow:0 16px 32px rgba(111,78,55,.22)}.fehBrandName{font-size:38px;line-height:1;font-weight:950;letter-spacing:-1.2px;color:#14110d}.fehTagline{margin-top:6px;color:#6d5f4e;font-weight:750}.fehInvoiceBadge{text-align:right;background:#15120e;color:white;border-radius:22px;padding:16px 18px;min-width:245px;box-shadow:0 18px 45px rgba(20,17,13,.20)}.fehInvoiceBadge span{display:block;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#f3d98d;font-weight:900;margin-bottom:6px}.fehInvoiceBadge b{font-size:22px}.fehMetaGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:18px 0 22px}.fehMetaCard{background:#fff;border:1px solid #eadcc1;border-radius:18px;padding:14px 16px}.fehMetaCard span{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#8a7558;font-weight:900;margin-bottom:6px}.fehMetaCard b{font-size:15px;color:#181511}.fehInfoGrid{display:grid;grid-template-columns:1.1fr .9fr;gap:16px;margin-bottom:20px}.fehInfoBox{background:rgba(255,255,255,.78);border:1px solid #eadcc1;border-radius:24px;padding:20px}.fehInfoBox h3,.fehPaymentInstructions h3{margin:0 0 12px;color:#33210f}.fehInfoBox p{margin:7px 0;color:#4d4238}.fehCustomerName{font-size:22px!important;font-weight:950;color:#151515!important}.fehAmountRow,.fehTotalsBox div{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:10px 0;border-bottom:1px dashed #e7d8bd}.fehAmountRow b{font-size:22px}.fehAmountRow.paid b{color:#087443}.fehAmountRow.due b,.fehTotalsBox .due b{color:#b42318}.fehTableWrap{border:1px solid #eadcc1;border-radius:24px;overflow:hidden;background:white;margin:20px 0}.fehItemTable{width:100%;border-collapse:collapse}.fehItemTable th{background:linear-gradient(135deg,#19140d,#6f4e37);color:#fff9ea;text-align:left;padding:15px 16px;font-size:13px;text-transform:uppercase;letter-spacing:.08em}.fehItemTable th:first-child,.fehItemTable td:first-child{text-align:center;width:70px}.fehItemTable th:nth-child(3),.fehItemTable td:nth-child(3){text-align:center;width:100px}.fehItemTable th:nth-child(4),.fehItemTable td:nth-child(4),.fehItemTable th:nth-child(5),.fehItemTable td:nth-child(5){text-align:right;width:150px}.fehItemTable td{padding:16px;border-bottom:1px solid #f0e7d7;color:#241c12}.fehItemTable tbody tr:nth-child(even) td{background:#fffaf1}.fehItemTable tbody tr:last-child td{border-bottom:0}.fehBottomGrid{display:grid;grid-template-columns:1fr 360px;gap:16px;align-items:start}.fehPaymentInstructions{background:#fff9ea;border:1px solid #ead59b;border-radius:22px;padding:18px;color:#3c2b14}.fehTotalsBox{background:#17120e;color:white;border-radius:22px;padding:18px;box-shadow:0 18px 45px rgba(20,17,13,.18)}.fehTotalsBox div{border-bottom-color:rgba(255,255,255,.13)}.fehTotalsBox span{color:#e9d8bd}.fehTotalsBox .grand{margin:8px -6px;padding:15px 6px;border-radius:14px;background:rgba(245,213,120,.12);border-bottom:0}.fehTotalsBox .grand b{font-size:24px;color:#f5d578}.fehNotes{margin-top:18px;background:#fff;border:1px solid #eadcc1;border-radius:18px;padding:16px;color:#463728}.fehInvoiceFooter{display:grid;grid-template-columns:1fr 1.4fr;gap:18px;margin-top:22px;padding-top:18px;border-top:1px solid #eadcc1;color:#675745;font-size:13px}.fehFooterNote{text-align:right}.area-invoice .topbar{display:none}.area-invoice .footer{display:none}.area-invoice .page{padding-top:28px}
@media(max-width:900px){.fehInvoiceTop,.fehInvoiceFooter{grid-template-columns:1fr;display:grid}.fehInvoiceBadge{text-align:left;min-width:0}.fehMetaGrid,.fehInfoGrid,.fehBottomGrid{grid-template-columns:1fr}.fehBrandName{font-size:32px}.fehInvoice{padding:22px}.fehFooterNote{text-align:left}.fehItemTable{min-width:720px}.fehTableWrap{overflow:auto}}
@media print{.fehInvoice{box-shadow:none;border:0;border-radius:0;padding:14px}.fehInvoice:before{height:8px}.fehMetaGrid{grid-template-columns:repeat(4,1fr)}.fehInfoGrid{grid-template-columns:1.1fr .9fr}.fehBottomGrid{grid-template-columns:1fr 330px}.fehInvoiceFooter{grid-template-columns:1fr 1.4fr}.fehItemTable th{background:#19140d!important;color:#fff9ea!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.fehItemTable tbody tr:nth-child(even) td{background:#fffaf1!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.fehTotalsBox{background:#17120e!important;color:white!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.fehTotalsBox .grand b{color:#f5d578!important}.fehPaymentInstructions{background:#fff9ea!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}}
