*{box-sizing:border-box}
:root{font-family:Arial,Helvetica,sans-serif;color:#17202a;background:#f3f6fa}
body{margin:0;background:#f3f6fa}
button,input,select{font:inherit}
button{border:0;border-radius:8px;padding:10px 14px;cursor:pointer;background:#e7edf3;color:#17202a}
button:hover{filter:brightness(.97)}
button.primary{background:#0b5394;color:#fff}
button.success{background:#198754;color:#fff}
button.danger{background:#dc3545;color:#fff}
button.warning{background:#f0ad4e;color:#111}
.link-btn{background:transparent;color:#0b5394;padding:7px}
.hidden{display:none!important}
.muted{color:#667085}
.message{min-height:22px;margin-top:10px;color:#b42318}
.center-view{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:18px}
.login-card{width:min(420px,100%);background:#fff;padding:24px;border-radius:14px;box-shadow:0 4px 24px #00000012}
.login-card h1{margin:0 0 4px}
.login-card h2{margin:20px 0 10px;font-size:20px}
.login-card input{width:100%;padding:13px;margin:7px 0;border:1px solid #d0d5dd;border-radius:8px}
.login-card button.primary{width:100%;margin-top:8px}
.topbar{background:#fff;border-bottom:1px solid #e4e7ec;padding:14px max(16px,calc((100vw - 1250px)/2));display:flex;justify-content:space-between;align-items:center;gap:12px}
.topbar h1{font-size:22px;margin:0}
.top-actions{display:flex;gap:8px}
.container{width:min(1250px,calc(100% - 24px));margin:14px auto 40px}
.cards{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.card,.panel{background:#fff;border:1px solid #e4e7ec;border-radius:12px}
.card{padding:16px;min-height:92px}
.card span{display:block;color:#667085;font-size:13px}
.card strong{display:block;margin-top:10px;font-size:21px}
.panel{margin-top:14px;padding:14px}
.panel-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}
.panel-head h2{margin:0;font-size:18px}
.panel-head>div{display:flex;flex-wrap:wrap;gap:6px}
.account-list{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.account{border:1px solid #e4e7ec;border-radius:10px;padding:13px}
.account .name{font-weight:bold;font-size:16px}
.account .balance{font-size:20px;margin-top:8px}
.account .meta{color:#667085;font-size:12px;margin-top:5px}
.table-wrap{overflow:auto}
table{width:100%;border-collapse:collapse;min-width:900px}
th,td{padding:9px;border-bottom:1px solid #eaecf0;text-align:left;font-size:13px;white-space:nowrap}
th{background:#f8fafc}
.modal{position:fixed;inset:0;background:#0008;display:flex;align-items:center;justify-content:center;padding:15px;z-index:10}
.modal-card{background:#fff;width:min(520px,100%);max-height:90vh;overflow:auto;border-radius:14px;padding:18px}
.modal-head{display:flex;justify-content:space-between;align-items:center}
.modal-head h2{margin:0}
.modal-head button{font-size:25px;padding:3px 10px}
.form-grid{display:grid;gap:9px}
.form-grid label{font-size:13px;color:#475467}
.form-grid input,.form-grid select{width:100%;padding:11px;border:1px solid #d0d5dd;border-radius:8px}
.form-grid button{margin-top:4px}
@media(max-width:900px){.cards{grid-template-columns:repeat(2,1fr)}.account-list{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.topbar{align-items:flex-start}.topbar h1{font-size:18px}.top-actions{flex-direction:column}.container{width:calc(100% - 14px)}.cards{grid-template-columns:1fr}.account-list{grid-template-columns:1fr}.panel-head{align-items:flex-start;flex-direction:column}.panel-head>div{width:100%}.panel-head>div button{flex:1}.card{min-height:auto}}
