/* Banniz Finance & Business web apps */
:root{--brand:#0d2951;--acc:#c9a24a;--ink:#1f2636;--muted:#4b5468;--line:#dde3ea;--mist:#f3f6f9;--good:#0b7a68;--good-bg:#e3f4ef;--bad:#a3261c;--bad-bg:#fbe5e2;--warn:#7a5a00;--warn-bg:#fbf1d6;--head:"Inter Display","Inter","Segoe UI",Arial,sans-serif;--body:"Inter","Segoe UI",Arial,sans-serif}
*{box-sizing:border-box}[hidden]{display:none!important}
body{margin:0;background:var(--mist);color:var(--ink);font:16px/1.55 var(--body)}
button,input,select{font:inherit}
.top{background:var(--brand);color:#fff}.top .in{max-width:1240px;margin:0 auto;padding:12px 16px;display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.top .logo{width:44px;height:44px;border-radius:10px;background:#fff;object-fit:contain;padding:3px}
.top .who{display:grid;line-height:1.2}.top .who b{font:800 1.15rem var(--head)}.top .who small{opacity:.8}
.top .acts{margin-left:auto;display:flex;flex-wrap:wrap;gap:8px}
.b{border:1.5px solid rgba(255,255,255,.4);background:transparent;color:#fff;border-radius:999px;padding:8px 14px;font-weight:700;cursor:pointer;min-height:40px}
.b:hover{background:rgba(255,255,255,.1)}.b[disabled]{opacity:.45;cursor:not-allowed}
.btn{border:1.5px solid var(--line);background:#fff;color:var(--brand);border-radius:12px;padding:9px 14px;font-weight:700;cursor:pointer;min-height:42px}
.btn.pri{background:var(--brand);color:#fff;border-color:var(--brand)}.btn.sm{min-height:34px;padding:5px 10px;font-size:.88rem}
.mode{background:var(--warn-bg);color:var(--warn);border-bottom:1px solid #eedc9f}.mode .in{max-width:1240px;margin:0 auto;padding:10px 16px;font-weight:600}
.mode.full{background:var(--good-bg);color:var(--good);border-color:#bfe5da}
main{max-width:1240px;margin:0 auto;padding:18px 16px 60px;display:grid;gap:18px}
.tabs{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px}.tabs button{flex:none;border:1.5px solid var(--line);background:#fff;border-radius:999px;padding:9px 15px;font-weight:700;color:var(--brand);cursor:pointer}
.tabs button[aria-selected="true"]{background:var(--brand);color:#fff;border-color:var(--brand)}
.card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px;display:grid;grid-template-columns:minmax(0,1fr);gap:12px;min-width:0}.card>*{min-width:0}main{grid-template-columns:minmax(0,1fr)}
.card h2{margin:0;font:800 1.2rem var(--head);color:var(--brand)}.card h3{margin:0;font:800 1rem var(--head);color:var(--brand)}
.hint{color:var(--muted);font-size:.92rem;margin:0}
.kpis{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px}
.kpi{background:var(--mist);border-radius:14px;padding:12px 14px;border-left:4px solid var(--acc)}.kpi span{display:block;font-size:.86rem;color:var(--muted)}.kpi b{font:800 1.3rem var(--head);color:var(--brand)}
.kpi.bad{border-left-color:var(--bad)}.kpi.good{border-left-color:var(--good)}
.tw{overflow-x:auto;border:1px solid var(--line);border-radius:12px}
table{border-collapse:collapse;width:100%;font-size:.92rem}th,td{border-bottom:1px solid var(--line);padding:6px 8px;text-align:left;white-space:nowrap}
th{background:var(--brand);color:#fff;font-weight:700;position:sticky;top:0}td.n,th.n{text-align:right}tr.tot td{font-weight:800;background:var(--mist)}
td input,td select{width:100%;min-width:90px;border:1px solid #c8d1db;border-radius:8px;padding:6px 8px;background:#fffbea;color:#1d3cbf}
td input[type=number]{text-align:right;min-width:86px}td input.wide{min-width:180px}
td .x{border:0;background:none;color:var(--bad);font-weight:900;cursor:pointer;font-size:1.1rem}
.row{display:flex;flex-wrap:wrap;gap:10px;align-items:end}.fld{display:grid;gap:4px}.fld label{font-weight:700;font-size:.88rem;color:var(--brand)}
.fld input,.fld select{border:1.5px solid #aebbc9;border-radius:10px;padding:9px 10px;min-height:44px;background:#fff}
.flag-ok{color:var(--good);font-weight:700}.flag-buf{color:var(--warn);font-weight:700;background:var(--warn-bg)}.flag-neg{color:var(--bad);font-weight:800;background:var(--bad-bg)}
.chart svg{width:100%;height:auto;display:block}.legend{display:flex;gap:14px;font-size:.88rem;color:var(--muted)}.legend i{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:6px;vertical-align:-1px}
.two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px}@media(max-width:900px){.two{grid-template-columns:1fr}}
dialog{border:0;border-radius:18px;padding:0;max-width:520px;width:calc(100% - 32px)}dialog::backdrop{background:rgba(6,21,43,.55)}
.dlg{padding:20px;display:grid;gap:12px}.dlg h2{margin:0;font:800 1.2rem var(--head);color:var(--brand)}.dlg .fld input{width:100%}
.logo-prev{width:64px;height:64px;border:1px dashed #aebbc9;border-radius:12px;object-fit:contain;background:#fff}
.foot{color:var(--muted);font-size:.85rem;text-align:center}
@media print{.top .acts,.mode,.tabs,.noprint,dialog{display:none!important}body{background:#fff}.card{border:0;padding:0}main{padding:0}td input,td select{border:0;background:none;color:#000}}
