:root{--ink:#12364c;--muted:#526e7d;--blue:#078cc6;--sky:#edf8fd;--paper:#fff;--orange:#ff9d25;--line:#d5e8f2;--focus:#0079b8;--shadow:0 12px 34px rgb(18 54 76 / 8%);--ok-bg:#e4f6ec;--ok:#17663d;--bad-bg:#fdeceb;--bad:#9b2c24}
*{box-sizing:border-box}body{margin:0;background:var(--sky);color:var(--ink);font-family:"Noto Sans Bengali","Bai Jamjuree",system-ui,sans-serif;line-height:1.6;letter-spacing:0}header{display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:960px;margin:auto;padding:24px}header img{object-fit:contain}header span{color:var(--muted);font-size:14px}main{max-width:640px;margin:36px auto;padding:0 24px;min-height:60vh}.eyebrow{color:var(--blue);font-size:13px;font-weight:700}h1{font-size:32px;line-height:1.4;margin:12px 0 28px}h2{font-size:22px;margin:0 0 20px;overflow-wrap:anywhere}section{background:var(--paper);border:1px solid var(--line);border-radius:8px;padding:28px;box-shadow:var(--shadow)}dl{margin:0 0 24px}dl div{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:16px 0}dt{color:var(--muted);flex-shrink:0}dd{margin:0;text-align:right;overflow-wrap:anywhere;min-width:0}.total{font-size:26px;font-weight:700}button{font:inherit;border:0;background:var(--orange);color:var(--ink);font-weight:700;cursor:pointer;min-height:48px;border-radius:6px;display:flex;justify-content:center;gap:12px;width:100%;padding:12px 18px}button.secondary{background:var(--sky);margin-top:12px;color:var(--blue)}button:disabled{opacity:.6;cursor:wait}button:focus-visible,a:focus-visible{outline:3px solid var(--focus);outline-offset:4px}a{color:var(--blue);display:block;text-align:center;margin-top:20px}#message{overflow-wrap:anywhere}.security,footer{font-size:13px;color:var(--muted)}footer{text-align:center;padding:24px}[hidden]{display:none!important}@media(max-width:480px){main{margin:18px auto}h1{font-size:26px}section{padding:20px}.total{font-size:22px}dl div{gap:12px}}.site{margin:0 0 4px;color:var(--blue);font-size:14px;font-weight:700}
.admin main{max-width:1120px}.admin form{display:grid;gap:14px;max-width:420px}.admin label{display:grid;gap:6px;font-weight:600}.admin input,.admin select{font:inherit;min-height:44px;border:1px solid var(--line);border-radius:6px;padding:8px 12px;background:var(--paper);color:var(--ink)}.admin input:focus-visible,.admin select:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.filters{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin-bottom:20px}.filters label{min-width:180px}.filters button{width:auto}
.totals{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-bottom:20px}.totals div{background:var(--sky);border:1px solid var(--line);border-radius:8px;padding:14px}.totals strong{display:block;font-size:20px}.totals span{color:var(--muted);font-size:13px}
.table{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:14px;min-width:820px}th,td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--line);vertical-align:top}th{color:var(--muted);font-weight:600}td small{display:block;color:var(--muted)}
.badge{display:inline-block;border-radius:999px;padding:2px 10px;font-size:12px;font-weight:700;background:var(--sky);color:var(--muted)}.badge.paid{background:var(--ok-bg);color:var(--ok)}.badge.failed,.badge.cancelled{background:var(--bad-bg);color:var(--bad)}
