@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Space+Grotesk:wght@500;600;700&display=swap');
:root{--bg:#f4f7fb;--surface:#fff;--surface2:#f8fafc;--ink:#0b1728;--muted:#68778d;--line:#e4eaf2;--nav:#07111f;--nav2:#0b192b;--primary:#5b5ff7;--primary2:#746cff;--cyan:#16b8d4;--green:#16a574;--amber:#e99b24;--red:#e25563;--shadow:0 10px 30px rgba(15,23,42,.055);--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,system-ui,sans-serif;font-size:13px}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}.app-shell{min-height:100vh}.sidebar{position:fixed;z-index:50;inset:0 auto 0 0;width:268px;background:linear-gradient(180deg,#07111f 0%,#081423 55%,#07101c 100%);color:#aab8cb;padding:20px 15px 14px;display:flex;flex-direction:column;overflow:auto;box-shadow:14px 0 40px rgba(2,8,23,.12)}.brand{display:flex;align-items:center;gap:11px;padding:4px 9px 17px}.brand-mark{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(145deg,#6d6bff,#3c8fff);box-shadow:0 8px 24px rgba(91,95,247,.3);color:#fff;font-family:'Space Grotesk';font-weight:700}.brand-mark span{font-size:18px}.brand-title{color:#fff;font-family:'Space Grotesk';font-size:17px;font-weight:700;letter-spacing:.02em}.brand-sub{font-size:9px;color:#71839a;letter-spacing:.08em;text-transform:uppercase;margin-top:2px}.workspace-chip{margin:0 6px 17px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.035);border-radius:10px;padding:8px 10px;display:flex;align-items:center;gap:7px;font-size:10px;color:#8fa0b5}.pulse,.status-dot{width:7px;height:7px;border-radius:50%;background:#31d49a;box-shadow:0 0 0 4px rgba(49,212,154,.1);display:inline-block}.nav-section{font-size:9px;font-weight:800;color:#52647b;letter-spacing:.14em;text-transform:uppercase;padding:13px 10px 7px}.nav{display:flex;flex-direction:column;gap:3px}.nav a{display:flex;align-items:center;gap:10px;padding:10px;border-radius:11px;color:#8494aa;font-size:11px;font-weight:600;transition:.16s}.nav a:hover{background:rgba(255,255,255,.045);color:#e8eef7}.nav a.active{background:linear-gradient(90deg,rgba(91,95,247,.2),rgba(91,95,247,.06));color:#fff;box-shadow:inset 2px 0 #6e72ff}.nav-icon{width:26px;height:26px;display:grid;place-items:center;border-radius:8px;background:rgba(255,255,255,.035);font-size:13px}.nav a.active .nav-icon{background:rgba(113,116,255,.2);color:#aeb1ff}.sidebar-bottom{margin-top:auto}.user-card{display:flex;align-items:center;gap:9px;padding:10px;border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.035);border-radius:13px}.avatar{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:linear-gradient(145deg,#323e55,#5866a9);color:#fff;font-weight:800}.user-copy{min-width:0;flex:1}.user-copy strong{display:block;color:#fff;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-copy span{display:block;color:#73849b;font-size:9px;margin-top:2px}.logout-mini{color:#71839a;padding:5px}.build-label{font-size:8px;color:#43546a;text-align:center;margin-top:9px}.build-label span{float:right}.main{margin-left:268px;min-height:100vh}.topbar{height:76px;background:rgba(255,255,255,.84);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 32px;position:sticky;top:0;z-index:40}.topbar-left{display:flex;align-items:center;gap:14px}.mobile-toggle{display:none;border:1px solid var(--line);background:#fff;color:var(--ink);padding:8px 10px;border-radius:10px}.eyebrow{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.14em;font-weight:800}.eyebrow.accent{color:#6469ec}.eyebrow.light{color:#8295ad}.page-title{font-family:'Space Grotesk';font-size:20px;font-weight:700;margin-top:2px}.topbar-right{display:flex;align-items:center;gap:10px}.system-status{font-size:10px;color:#62738a;border:1px solid var(--line);background:#fff;border-radius:999px;padding:7px 10px;display:flex;gap:7px;align-items:center}.icon-btn{width:36px;height:36px;border:1px solid var(--line);border-radius:10px;background:#fff;display:grid;place-items:center;color:#55657a}.content{padding:28px 32px 44px;max-width:1680px;margin:auto}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:21px}.page-head h1{font-family:'Space Grotesk';font-size:29px;line-height:1.1;margin:6px 0 0;letter-spacing:-.04em}.page-head p{margin:7px 0 0;color:var(--muted);font-size:12px}.actions{display:flex;gap:8px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:10px;padding:10px 14px;font-weight:700;font-size:11px;cursor:pointer;transition:.18s}.btn:hover{transform:translateY(-1px)}.btn-primary{background:linear-gradient(135deg,var(--primary),#7a6dfb);color:#fff;box-shadow:0 8px 22px rgba(91,95,247,.2)}.btn-secondary{background:#fff;color:#34445a;border-color:var(--line)}.btn-secondary:hover{background:#f8fafc;border-color:#ccd6e4}.btn-small{padding:7px 9px;font-size:10px}.btn-large{padding:13px 15px;font-size:12px}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px}.kpi{position:relative;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:17px;padding:17px;box-shadow:var(--shadow)}.kpi-glow{position:absolute;width:130px;height:130px;border-radius:50%;right:-55px;bottom:-75px;background:rgba(91,95,247,.08)}.kpi-cyan .kpi-glow{background:rgba(22,184,212,.09)}.kpi-green .kpi-glow{background:rgba(22,165,116,.09)}.kpi-amber .kpi-glow{background:rgba(233,155,36,.1)}.kpi-top{display:flex;align-items:center;justify-content:space-between}.kpi-label{font-size:9px;color:#738197;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.kpi-icon{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#eff0ff;color:#5b5ff7;font-weight:800}.kpi-cyan .kpi-icon{background:#eafafd;color:#0a9ab8}.kpi-green .kpi-icon{background:#eafaf3;color:#109a6d}.kpi-amber .kpi-icon{background:#fff7e9;color:#d28a1d}.kpi-value{font-family:'Space Grotesk';font-size:27px;font-weight:700;letter-spacing:-.04em;margin-top:12px}.kpi-foot{font-size:10px;color:#8290a3;margin-top:6px}.up{color:#149b6d;font-weight:700}.dashboard-grid{display:grid;grid-template-columns:1.38fr .62fr;gap:16px}.panel{background:#fff;border:1px solid var(--line);border-radius:17px;box-shadow:var(--shadow);overflow:hidden}.panel-head{min-height:65px;padding:16px 18px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px}.panel-title{font-size:12px;font-weight:800}.panel-sub{font-size:10px;color:#8794a7;margin-top:4px}.panel-body{padding:17px 18px}.text-link{font-size:10px;color:#5b5ff7;font-weight:800}.branch-list{padding-top:4px}.branch-row{display:grid;grid-template-columns:1.2fr 1.3fr .6fr;gap:18px;align-items:center;padding:14px 0;border-bottom:1px solid #eef2f7}.branch-row:last-child{border-bottom:0}.branch-ident{display:flex;align-items:center;gap:10px}.branch-avatar{width:35px;height:35px;border-radius:10px;display:grid;place-items:center;background:linear-gradient(145deg,#edf0ff,#e9f7ff);color:#5459d8;font-weight:800}.branch-avatar.large{width:46px;height:46px;font-size:15px}.branch-name{font-size:11px;font-weight:800}.branch-meta{font-size:9px;color:#8a97a9;margin-top:3px}.bar-label{display:flex;justify-content:space-between;font-size:9px;color:#8290a3;margin-bottom:6px}.bar-label strong{color:#26364c}.progress{height:6px;border-radius:99px;background:#edf1f6;overflow:hidden}.progress span{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#6266f4,#20b9cf)}.branch-amount{text-align:right;font-size:11px;font-weight:800}.quick-grid{display:grid;grid-template-columns:1fr;gap:9px}.quick{display:grid;grid-template-columns:36px 1fr 15px;align-items:center;gap:10px;border:1px solid var(--line);border-radius:12px;padding:11px;background:#fbfcfe;transition:.18s}.quick:hover{background:#f8f8ff;border-color:#d7d9ff;transform:translateY(-1px)}.quick-accent{background:linear-gradient(135deg,#f4f3ff,#fbfcff);border-color:#dfe0ff}.quick-icon{width:35px;height:35px;border-radius:9px;display:grid;place-items:center;background:#eef0ff;color:#5b5ff7;font-weight:800}.quick strong{display:block;font-size:10px}.quick span{display:block;font-size:9px;color:#8290a3;margin-top:3px}.quick b{color:#929daf}.insight-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:14px}.insight-strip>div{background:#fff;border:1px solid var(--line);border-radius:12px;padding:11px 13px;font-size:9px;color:#7c899b;display:flex;align-items:center;gap:7px;flex-wrap:wrap}.insight-strip strong{color:#2b3a50}.insight-dot{width:7px;height:7px;border-radius:50%;display:inline-block}.insight-dot.green{background:#19ae78}.insight-dot.blue{background:#5b5ff7}.insight-dot.amber{background:#e9a32d}.toolbar{display:flex;align-items:center;gap:10px;margin-bottom:12px}.toolbar-meta{margin-left:auto;color:#7e8b9d;font-size:10px}.searchbox{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:0 11px;min-width:320px}.searchbox span{color:#8a98aa;font-size:16px}.searchbox input{border:0;outline:0;background:transparent;padding:10px 0;width:100%;font-size:11px}.searchbox.compact{min-width:250px}.data-table{width:100%;border-collapse:separate;border-spacing:0}.data-table th{text-align:left;padding:10px 14px;background:#f8fafc;border-bottom:1px solid var(--line);color:#7b899c;font-size:8px;text-transform:uppercase;letter-spacing:.11em;white-space:nowrap}.data-table td{padding:12px 14px;border-bottom:1px solid #edf1f6;font-size:10px;white-space:nowrap}.data-table tbody tr:hover{background:#fafbff}.data-table tbody tr:last-child td{border-bottom:0}.data-table td small{display:block;color:#8b98aa;font-size:8px;margin-top:3px}.mono{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;color:#526174;font-size:9px}.amount{font-weight:800;color:#1a2a3f}.branch-pill,.mode-pill{display:inline-flex;align-items:center;padding:4px 6px;border-radius:6px;background:#f0f2ff;color:#555bd7;font-size:8px;font-weight:800;margin-right:4px}.mode-pill{background:#eef8fa;color:#13879a}.badge{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:5px 7px;font-size:8px;font-weight:800}.badge:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}.badge-success{color:#12875f;background:#eaf9f2}.badge-warning{color:#ae7016;background:#fff6e6}.badge-danger{color:#bd4554;background:#fff0f2}.badge-info{color:#555bd7;background:#eef0ff}.badge-neutral{color:#5f6d80;background:#eef2f6}.dpd{display:inline-grid;place-items:center;min-width:28px;padding:4px 6px;border-radius:6px;background:#edf7f2;color:#12875f;font-size:8px;font-weight:800}.dpd.warning{background:#fff5e4;color:#aa701b}.dpd.critical{background:#fff0f2;color:#bc4353}.network-chip{display:flex;align-items:center;gap:7px;border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 11px;color:#6f7d91;font-size:10px}.branch-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-bottom:15px}.branch-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px;box-shadow:var(--shadow);transition:.18s}.branch-card:hover{transform:translateY(-2px);box-shadow:0 14px 35px rgba(15,23,42,.08)}.branch-card-top{display:flex;justify-content:space-between;align-items:center}.branch-card h3{font-family:'Space Grotesk';font-size:16px;margin:15px 0 4px}.branch-card p{margin:0;color:#7e8b9e;font-size:10px}.branch-code{display:inline-block;margin-top:12px;font-family:ui-monospace;color:#58667a;font-size:9px;background:#f4f6f9;padding:5px 7px;border-radius:6px}.branch-card-foot{border-top:1px solid #edf1f5;margin-top:15px;padding-top:11px;display:flex;justify-content:space-between;color:#8a97a9;font-size:9px}.msg{padding:11px 13px;border-radius:11px;margin-bottom:14px;border:1px solid #bcebd8;background:#effbf6;color:#127354;font-size:10px;display:flex;gap:8px;align-items:center}.msg.error{border-color:#ffd0d5;background:#fff2f3;color:#b44351}.empty{padding:38px;text-align:center;color:#8a97a9;font-size:11px}.form-layout{display:grid;grid-template-columns:1.35fr .65fr;gap:15px}.form-panel form{padding:20px}.field{margin-bottom:14px}.field label{display:block;font-size:9px;font-weight:800;color:#526174;margin-bottom:6px}.field label em{color:#e25563;font-style:normal;margin-left:3px}.field input,.field select,.field textarea,.field input[type=file]{width:100%;padding:10px 11px;border:1px solid #dce3ec;border-radius:9px;background:#fff;color:var(--ink);outline:0;font-size:11px}.field input:focus,.field select:focus,.field textarea:focus{border-color:#8589fa;box-shadow:0 0 0 3px rgba(91,95,247,.09)}.field small{display:block;color:#8b98aa;font-size:8px;margin-top:5px}.field-error{color:#c24351;font-size:9px;margin-top:5px}.form-actions{border-top:1px solid var(--line);margin-top:18px;padding-top:15px;display:flex;justify-content:flex-end;gap:8px}.steps{padding:10px 18px 18px}.steps>div{display:flex;align-items:center;gap:11px;padding:12px 0;border-bottom:1px solid #edf1f6;font-size:10px}.steps>div:last-child{border-bottom:0}.steps b{width:28px;height:28px;border-radius:8px;background:#eef0ff;color:#5b5ff7;display:grid;place-items:center;font-size:8px}.recon-banner{display:flex;align-items:center;gap:12px;background:linear-gradient(135deg,#0b1728,#101e34);color:#fff;border-radius:15px;padding:15px 17px;margin-bottom:13px;box-shadow:0 14px 30px rgba(7,17,31,.13)}.recon-icon{width:37px;height:37px;border-radius:10px;background:rgba(110,114,255,.18);color:#a7aaff;display:grid;place-items:center;font-size:17px}.recon-banner strong{display:block;font-size:11px}.recon-banner span{display:block;color:#91a2b9;font-size:9px;margin-top:4px}.recon-rule{margin-left:auto;font-size:8px;color:#9faec2;border:1px solid rgba(255,255,255,.1);border-radius:999px;padding:6px 8px}.truncate{max-width:220px;overflow:hidden;text-overflow:ellipsis}.match-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:15px}.transaction-card{display:grid;grid-template-columns:1fr 1fr;padding:20px;gap:16px}.transaction-card>div{padding:11px;border:1px solid var(--line);border-radius:10px;background:#fbfcfe}.transaction-card .wide{grid-column:1/-1}.transaction-card span{display:block;color:#8a97a9;font-size:8px;text-transform:uppercase;letter-spacing:.08em}.transaction-card strong{display:block;margin-top:5px;font-size:11px}.candidate-list{padding:7px 18px}.candidate{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #edf1f6}.candidate:last-child{border-bottom:0}.candidate div strong{display:block;font-size:10px}.candidate div span{display:block;color:#8794a7;font-size:8px;margin-top:3px}.candidate>strong{font-size:10px}.stat-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:13px}.stat-strip.four{grid-template-columns:repeat(4,1fr)}.mini-stat{padding:11px 12px;border:1px solid var(--line);border-radius:11px;background:#fff}.mini-stat span{display:block;color:#8290a3;font-size:8px;text-transform:uppercase;letter-spacing:.06em}.mini-stat strong{display:block;margin-top:5px;font-size:11px}.report-hero{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,#0a1728,#12233a);color:#fff;border-radius:16px;padding:20px;margin-bottom:14px}.report-hero span{display:block;color:#8ea0b8;font-size:9px;text-transform:uppercase;letter-spacing:.1em}.report-hero strong{display:block;font-family:'Space Grotesk';font-size:20px;margin-top:5px}.report-hero p{color:#91a2b9;font-size:9px;margin:5px 0 0}.report-mark{width:52px;height:52px;border-radius:15px;background:rgba(100,105,238,.18);display:grid;place-items:center;color:#a9adff;font-size:23px}.rank{width:24px;height:24px;border-radius:7px;display:grid;place-items:center;background:#f0f2ff;color:#5b5ff7;font-weight:800;font-size:9px}.report-bar{width:140px;height:5px;background:#edf1f6;border-radius:99px;overflow:hidden}.report-bar span{display:block;height:100%;background:linear-gradient(90deg,#6468f5,#16b8d4);border-radius:99px}.report-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:13px}.report-card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:14px}.report-card span{font-size:8px;color:#8a97a9;text-transform:uppercase;letter-spacing:.1em}.report-card strong{display:block;font-family:'Space Grotesk';font-size:14px;margin-top:5px}.report-card p{font-size:9px;color:#7f8ca0;line-height:1.5}.login-page{background:#07111f}.login-shell{min-height:100vh;display:grid;grid-template-columns:1.18fr .82fr}.login-visual{position:relative;overflow:hidden;padding:42px 56px;color:#fff;background:radial-gradient(circle at 18% 18%,rgba(91,95,247,.35),transparent 30%),radial-gradient(circle at 75% 75%,rgba(22,184,212,.16),transparent 28%),linear-gradient(145deg,#07111f,#0b1b2e)}.login-grid{position:absolute;inset:0;opacity:.45;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:45px 45px;mask-image:linear-gradient(135deg,#000,transparent 78%)}.login-content{position:relative;height:100%;display:flex;flex-direction:column}.login-brand{padding:0}.login-copy{margin-top:auto;margin-bottom:34px}.login-copy h1{font-family:'Space Grotesk';font-size:52px;line-height:1.01;letter-spacing:-.055em;max-width:700px;margin:10px 0 16px}.login-copy p{color:#9badc3;font-size:14px;line-height:1.7;max-width:590px}.login-pills{display:flex;gap:7px;flex-wrap:wrap}.login-pills span{padding:7px 9px;border:1px solid rgba(255,255,255,.09);border-radius:999px;background:rgba(255,255,255,.035);color:#b8c6d8;font-size:8px}.hero-orbit{position:absolute;right:7%;top:19%;width:230px;height:230px;border:1px solid rgba(121,128,255,.16);border-radius:50%;display:grid;place-items:center;opacity:.8}.hero-orbit:before,.hero-orbit:after{content:"";position:absolute;border:1px solid rgba(121,128,255,.11);border-radius:50%}.hero-orbit:before{inset:22px}.hero-orbit:after{inset:54px}.orbit-core{width:80px;height:80px;border-radius:25px;display:grid;place-items:center;background:linear-gradient(145deg,#6569ff,#318edc);box-shadow:0 20px 55px rgba(91,95,247,.35);font-family:'Space Grotesk';font-size:11px;font-weight:700}.hero-orbit i{position:absolute;width:7px;height:7px;background:#4fe0bb;border-radius:50%;top:9px;left:50%;box-shadow:0 0 15px #4fe0bb}.hero-orbit i:nth-of-type(2){top:auto;bottom:25px;left:12%}.hero-orbit i:nth-of-type(3){top:46%;left:auto;right:-3px;background:#7275ff;box-shadow:0 0 15px #7275ff}.login-form-wrap{display:grid;place-items:center;padding:35px;background:#f5f7fb}.login-card{width:min(420px,100%);background:#fff;border:1px solid var(--line);border-radius:22px;padding:32px;box-shadow:0 25px 70px rgba(15,23,42,.12)}.login-card-top{display:flex;align-items:center;gap:7px;color:#6c7a8d;font-size:9px;margin-bottom:18px}.security-icon{width:23px;height:23px;border-radius:7px;display:grid;place-items:center;background:#eaf9f2;color:#149a6d;font-weight:800}.login-card h2{font-family:'Space Grotesk';font-size:25px;margin:0}.login-card>p{color:#8290a3;font-size:10px;margin:7px 0 22px}.field{margin-bottom:14px}.login-card .field label{display:block;font-size:9px;font-weight:800;color:#526174;margin-bottom:6px}.login-card .field input{width:100%;padding:11px;border:1px solid #dce3ec;border-radius:9px;outline:0}.login-card .field input:focus{border-color:#7e82fa;box-shadow:0 0 0 3px rgba(91,95,247,.08)}.form-error{padding:9px;border-radius:8px;background:#fff1f2;color:#b44351;font-size:9px;margin-bottom:13px}.login-footer{display:flex;justify-content:center;gap:6px;color:#9aa5b4;font-size:8px;margin-top:20px}.mobile-overlay{display:none}@media(max-width:1200px){.kpi-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.form-layout,.match-layout{grid-template-columns:1fr}.branch-cards{grid-template-columns:repeat(2,1fr)}.hero-orbit{right:2%;transform:scale(.8)}}@media(max-width:850px){.sidebar{transform:translateX(-100%);transition:.2s}.sidebar.open{transform:translateX(0)}.mobile-overlay.show{display:block;position:fixed;inset:0;background:rgba(5,13,25,.48);z-index:45}.main{margin-left:0}.mobile-toggle{display:grid}.topbar{padding:0 15px}.system-status{display:none}.content{padding:20px 15px 30px}.page-head{align-items:flex-start;flex-direction:column}.branch-cards,.report-cards{grid-template-columns:1fr}.insight-strip{grid-template-columns:1fr}.stat-strip,.stat-strip.four{grid-template-columns:repeat(2,1fr)}.searchbox{min-width:0;flex:1}.toolbar{flex-wrap:wrap}.toolbar-meta{margin-left:0}.login-shell{grid-template-columns:1fr}.login-visual{display:none}.transaction-card{grid-template-columns:1fr}.transaction-card .wide{grid-column:auto}}@media(max-width:560px){.kpi-grid{grid-template-columns:1fr}.stat-strip,.stat-strip.four{grid-template-columns:1fr}.topbar{height:68px}.page-title{font-size:17px}.page-head h1{font-size:25px}.quick-grid{grid-template-columns:1fr}.branch-row{grid-template-columns:1fr}.branch-amount{text-align:left}.bar-wrap{order:3}.searchbox.compact{min-width:0;width:100%}.panel-head{align-items:flex-start;flex-direction:column}.candidate{grid-template-columns:1fr auto}.candidate .btn{grid-column:1/-1}.report-bar{width:90px}}
@media print{.sidebar,.topbar,.actions,.system-status{display:none!important}.main{margin:0}.content{padding:0}.panel,.report-card{box-shadow:none}}
/* LDCMS v3.3 — premium module workspace */
.module-hero{position:relative;overflow:hidden;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:24px 25px;margin-bottom:14px;border:1px solid rgba(111,118,255,.18);border-radius:22px;background:radial-gradient(circle at 88% 15%,rgba(22,184,212,.12),transparent 24%),radial-gradient(circle at 70% 100%,rgba(91,95,247,.13),transparent 30%),linear-gradient(135deg,#fff 0%,#f8f9ff 58%,#f4fbfd 100%);box-shadow:0 18px 45px rgba(29,42,75,.07)}.module-hero:after{content:"";position:absolute;right:-90px;top:-100px;width:270px;height:270px;border:1px solid rgba(91,95,247,.1);border-radius:50%;box-shadow:0 0 0 30px rgba(91,95,247,.025),0 0 0 60px rgba(91,95,247,.018);pointer-events:none}.module-hero-main{display:flex;align-items:center;gap:16px;position:relative;z-index:1}.module-icon{width:58px;height:58px;flex:0 0 58px;display:grid;place-items:center;border-radius:17px;color:#fff;font:700 21px 'Space Grotesk';background:linear-gradient(145deg,#6266f5,#398edc);box-shadow:0 13px 30px rgba(91,95,247,.24)}.module-icon.module-banks,.module-icon.module-bank_accounts{background:linear-gradient(145deg,#0e9db7,#506af4)}.module-icon.module-employees,.module-icon.module-customers{background:linear-gradient(145deg,#735df4,#c55ee7)}.module-icon.module-loans{background:linear-gradient(145deg,#1677c9,#12b5c7)}.module-icon.module-branches{background:linear-gradient(145deg,#3e62d9,#6e6af7)}.module-hero h1{font:700 27px/1.1 'Space Grotesk';letter-spacing:-.045em;margin:4px 0 4px}.module-hero p{margin:0;color:#77869a;font-size:11px}.module-actions{display:flex;gap:8px;position:relative;z-index:2}.module-action{display:flex;align-items:center;gap:9px;padding:10px 12px;border:1px solid #dfe5ef;border-radius:12px;background:rgba(255,255,255,.84);min-width:150px;transition:.18s}.module-action:hover{transform:translateY(-2px);border-color:#c8cdfc;box-shadow:0 9px 22px rgba(53,67,110,.08)}.module-action>span{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:#eef0ff;color:#5b5ff7;font-weight:800}.module-action strong{display:block;font-size:10px}.module-action small{display:block;color:#8a97a9;font-size:8px;margin-top:3px}.module-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}.module-stat{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px 14px;box-shadow:0 8px 25px rgba(15,23,42,.035)}.module-stat small{display:block;color:#8290a3;font-size:8px;text-transform:uppercase;letter-spacing:.08em}.module-stat strong{display:block;font:700 13px 'Space Grotesk';margin-top:4px}.stat-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;font-weight:800}.stat-icon.blue{background:#eef0ff;color:#5b5ff7}.stat-icon.green{background:#eafaf3;color:#11986a}.stat-icon.cyan{background:#eafafd;color:#0a99b6}.stat-icon.amber{background:#fff6e7;color:#d18b1d}.module-workspace{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:14px;align-items:start}.module-panel-head{min-height:72px}.panel-heading-with-icon{display:flex;align-items:center;gap:10px}.small-icon{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;font-weight:800}.small-icon.blue{background:#eef0ff;color:#5b5ff7}.small-icon.green{background:#eafaf3;color:#11986a}.small-icon.red{background:#fff0f2;color:#c54856}.small-icon.cyan{background:#eafafd;color:#0a99b6}.secure-chip,.exception-count,.record-count{font-size:8px;color:#68778d;border:1px solid #e3e8f0;border-radius:999px;padding:6px 8px;background:#fafbfd}.secure-chip i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#17ad78;margin-right:5px;box-shadow:0 0 0 3px rgba(23,173,120,.09)}.pro-import-form{padding:17px}.dropzone{position:relative;min-height:145px;border:1px dashed #cbd4e3;border-radius:16px;background:linear-gradient(135deg,#fbfcff,#f8fbfd);display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;transition:.18s}.dropzone:hover{border-color:#8589f7;background:linear-gradient(135deg,#fafaff,#f5fcff);box-shadow:inset 0 0 0 1px rgba(91,95,247,.06)}.dropzone:before{content:"";position:absolute;inset:14px;border:1px solid rgba(91,95,247,.05);border-radius:12px;pointer-events:none}.dropzone input{position:absolute;opacity:0;inset:0;width:100%;height:100%;cursor:pointer}.upload-orb{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(145deg,#6266f5,#2db3cf);color:#fff;font-size:17px;box-shadow:0 9px 24px rgba(91,95,247,.22)}.drop-copy{text-align:center;margin-top:10px}.drop-copy strong{display:block;font-size:11px}.drop-copy span{display:block;color:#8794a7;font-size:9px;margin-top:4px}.file-pill{margin-top:9px;padding:5px 9px;border-radius:999px;background:#fff;border:1px solid #e2e7ef;color:#7e8b9d;font-size:8px;max-width:80%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.import-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px}.import-rules{display:flex;gap:9px;flex-wrap:wrap;color:#7b899b;font-size:8px}.import-rules span{padding:6px 8px;border-radius:7px;background:#f5f7fa}.schema-strip{border-top:1px solid var(--line);padding:12px 17px;background:#fbfcfe;display:flex;gap:14px;align-items:center}.schema-strip>div:first-child{min-width:125px}.schema-strip>div:first-child span{display:block;font-size:9px;font-weight:800}.schema-strip>div:first-child small{display:block;color:#8b98aa;font-size:7px;margin-top:3px}.schema-chips{display:flex;gap:5px;flex-wrap:wrap}.schema-chips span{font:8px ui-monospace,SFMono-Regular,Menlo,monospace;color:#5e6d82;padding:5px 7px;border-radius:6px;background:#f0f3f7;border:1px solid #e7ebf0}.control-list{padding:8px 12px 13px}.control-list>a{display:grid;grid-template-columns:32px 1fr 10px;gap:9px;align-items:center;padding:10px 6px;border-bottom:1px solid #edf1f6}.control-list>a:last-of-type{border-bottom:0}.control-list>a:hover{background:#fafbff;border-radius:9px}.control-icon{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;font-weight:800}.control-icon.violet{background:#efefff;color:#5b5ff7}.control-icon.cyan{background:#eafafd;color:#0a99b6}.control-list strong{display:block;font-size:9px}.control-list small{display:block;color:#8996a8;font-size:8px;margin-top:3px}.control-list>a>b{color:#a0aaba}.control-note{display:flex;gap:9px;padding:11px 6px 4px;color:#66758a}.control-note>span{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:#eef4ff;color:#5b6de0;font-weight:800;font-size:9px}.control-note strong{display:block;font-size:8px;color:#536278}.control-note small{font-size:8px;line-height:1.45}.exception-panel{margin-top:14px}.exception-count{color:#b84451;background:#fff2f3;border-color:#ffd7dc}.row-tag{display:inline-grid;place-items:center;min-width:28px;padding:4px 6px;border-radius:6px;background:#fff1f2;color:#b84451;font:700 8px ui-monospace}.records-panel{margin-top:14px}.records-tools{display:flex;align-items:center;gap:8px}.pro-table-wrap{max-height:580px}.pro-table thead th{position:sticky;top:0;z-index:2;background:#f9fbfd}.pro-table tbody tr{transition:.12s}.pro-table tbody tr:hover{background:#fafbff}.pro-table td{white-space:nowrap}.status-pill{display:inline-flex;align-items:center;gap:4px;padding:5px 7px;border-radius:999px;font-size:8px;font-weight:800;background:#f0f3f7;color:#6f7d90}.status-pill.success{background:#eaf9f2;color:#11845e}.status-pill.info{background:#eef0ff;color:#5459d8}.status-pill.warning{background:#fff5e5;color:#b97813}.status-pill.muted{background:#f1f3f6;color:#7f8b9d}.empty-pro{padding:54px 20px;text-align:center}.empty-pro>div{width:48px;height:48px;margin:0 auto 10px;display:grid;place-items:center;border-radius:15px;background:#eef0ff;color:#5b5ff7;font-size:20px}.empty-pro strong{display:block;font-size:12px}.empty-pro span{display:block;color:#8996a8;font-size:9px;margin:5px 0 13px}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
@media(max-width:1100px){.module-workspace{grid-template-columns:1fr}.module-side{order:2}.module-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.module-hero{align-items:flex-start;flex-direction:column;padding:18px}.module-actions{width:100%}.module-action{flex:1;min-width:0}.module-stats{grid-template-columns:1fr 1fr}.schema-strip{align-items:flex-start;flex-direction:column}.import-footer{align-items:flex-start;flex-direction:column}.import-footer .btn{width:100%}}
@media(max-width:500px){.module-stats{grid-template-columns:1fr}.module-actions{flex-direction:column}.module-action{width:100%}.module-hero h1{font-size:23px}}

/* v3.4 stability: logout is a real POST form (Django 5.x safe logout). */
.logout-form{margin:0;padding:0;display:inline-flex;align-items:center}
.logout-form .logout-mini{border:0;background:transparent;cursor:pointer;color:inherit;font:inherit;display:inline-flex;align-items:center;justify-content:center}
.pro-editor-form{padding:28px}.editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.editor-grid .field-wide{grid-column:1/-1}.editor-grid label{display:block;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}.editor-grid label b{color:#e25a5b}.editor-grid input,.editor-grid select,.editor-grid textarea{width:100%;box-sizing:border-box;border:1px solid rgba(120,140,180,.25);background:rgba(10,18,35,.04);border-radius:12px;padding:13px 14px;font:inherit;outline:none}.editor-grid input:focus,.editor-grid select:focus,.editor-grid textarea:focus{border-color:#5c7cfa;box-shadow:0 0 0 3px rgba(92,124,250,.12)}.editor-grid textarea{min-height:110px;resize:vertical}.check-field{display:flex!important;gap:12px;align-items:center;padding:15px;border:1px solid rgba(120,140,180,.2);border-radius:12px}.check-field input{width:auto}.check-field span{display:flex;flex-direction:column;gap:3px}.check-field small{font-weight:500;text-transform:none;letter-spacing:0;opacity:.65}.editor-footer{display:flex;justify-content:space-between;align-items:center;margin-top:26px;padding-top:20px;border-top:1px solid rgba(120,140,180,.15)}.editor-footer span{font-size:12px;opacity:.65}@media(max-width:800px){.editor-grid{grid-template-columns:1fr}.editor-grid .field-wide{grid-column:auto}.editor-footer{gap:15px;flex-direction:column;align-items:stretch}}

/* v3.7 functional workflow surfaces */
.batch-layout{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:14px;align-items:start}.batch-layout .form-panel{position:sticky;top:18px}.batch-total{display:flex;align-items:center;justify-content:space-between;margin:14px 0;padding:15px;border:1px solid #dfe5ef;border-radius:14px;background:linear-gradient(135deg,#f7f8ff,#f5fcff)}.batch-total span{font-size:10px;color:#7b899c;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.batch-total strong{font:700 22px 'Space Grotesk';color:#4651d8}.batch-check{width:16px;height:16px;accent-color:#5b5ff7}.filter-panel{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;margin-bottom:14px}.filter-links{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.filter-links .searchbox{margin-left:auto}.records-panel{margin-top:14px}
@media(max-width:1000px){.batch-layout{grid-template-columns:1fr}.batch-layout .form-panel{position:static}}
@media(max-width:650px){.filter-panel{align-items:stretch;flex-direction:column}.filter-links{width:100%}.filter-links .searchbox{width:100%;margin-left:0}}
/* v3.8 operations control */
.action-form{display:flex;gap:10px;align-items:center;margin:10px 0}.action-form textarea{width:100%;min-height:78px;border:1px solid #dfe5ef;border-radius:12px;padding:10px;box-sizing:border-box;font:inherit}.action-form{flex-wrap:wrap}.action-form .btn{white-space:nowrap}.btn-danger{background:#c54856;color:#fff;border-color:#c54856}.btn-danger:hover{filter:brightness(.96)}


/* v3.10 FUTURISTIC UI SYSTEM */
:root{--neon:#7c83ff;--neon2:#28d7ee;--glass:rgba(255,255,255,.72);--glass-dark:rgba(8,18,32,.78)}
body{background:radial-gradient(circle at 82% 4%,rgba(112,116,255,.07),transparent 26%),radial-gradient(circle at 8% 80%,rgba(22,184,212,.045),transparent 25%),var(--bg)}
body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.28;background-image:linear-gradient(rgba(90,100,140,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(90,100,140,.025) 1px,transparent 1px);background-size:32px 32px;mask-image:linear-gradient(to bottom,#000,transparent 80%);z-index:-1}
.sidebar{border-right:1px solid rgba(255,255,255,.055);box-shadow:18px 0 60px rgba(2,8,23,.16)}
.brand-mark{position:relative;overflow:hidden}.brand-mark:after{content:"";position:absolute;inset:-50%;background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.45),transparent 65%);transform:translateX(-100%) rotate(20deg);animation:brandSweep 4s infinite}@keyframes brandSweep{55%,100%{transform:translateX(100%) rotate(20deg)}}
.main{transition:margin-left .24s ease}.topbar{box-shadow:0 8px 30px rgba(15,23,42,.035)}
.sidebar-toggle{width:32px;height:32px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--muted);cursor:pointer;display:grid;place-items:center;font-size:18px;transition:.18s}.sidebar-toggle:hover{color:var(--primary);transform:translateY(-1px)}
.command-btn{height:34px;min-width:145px;display:flex;align-items:center;gap:8px;padding:0 9px;border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.7);color:#718096;cursor:pointer;box-shadow:0 4px 15px rgba(15,23,42,.035)}.command-btn span:first-child{width:21px;height:21px;border-radius:6px;display:grid;place-items:center;background:#eef0ff;color:#5b5ff7;font-weight:800}.command-label{font-size:10px;flex:1;text-align:left}.command-btn kbd{font-size:8px;border:1px solid #dfe4ec;border-bottom-width:2px;border-radius:5px;padding:2px 5px;color:#8a96a8;background:#fafbfc}
.icon-btn{transition:.18s}.icon-btn:hover{transform:translateY(-1px);border-color:#cfd5ff;color:var(--primary)}
.panel,.kpi,.module-stat,.module-hero{box-shadow:0 12px 35px rgba(15,23,42,.045);transition:transform .18s,box-shadow .18s,border-color .18s}.panel:hover{box-shadow:0 16px 42px rgba(15,23,42,.065)}
.kpi{position:relative;overflow:hidden}.kpi:after{content:"";position:absolute;width:130px;height:130px;border-radius:50%;right:-50px;top:-65px;background:radial-gradient(circle,rgba(124,131,255,.11),transparent 70%);pointer-events:none}.kpi-glow{filter:blur(3px)}
.btn{position:relative;overflow:hidden;transition:transform .16s,box-shadow .16s}.btn:hover{transform:translateY(-1px);box-shadow:0 8px 22px rgba(30,50,90,.1)}.btn-primary{box-shadow:0 7px 20px rgba(91,95,247,.18)}
.nav a{position:relative}.nav a.active:after{content:"";position:absolute;right:7px;width:4px;height:4px;border-radius:50%;background:#7c83ff;box-shadow:0 0 12px #7c83ff}
.content{animation:contentIn .32s ease both}@keyframes contentIn{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
.table-wrap,.pro-table-wrap{border-radius:14px}.pro-table tbody tr{position:relative}.pro-table tbody tr:hover{box-shadow:inset 3px 0 var(--primary)}
input,select,textarea{transition:border-color .16s,box-shadow .16s,background .16s}input:focus,select:focus,textarea:focus{background:#fff!important;box-shadow:0 0 0 4px rgba(91,95,247,.08)!important}
.msg{animation:toastIn .25s ease both}@keyframes toastIn{from{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:none}}
.command-overlay{position:fixed;inset:0;background:rgba(3,10,22,.54);backdrop-filter:blur(10px);z-index:200;display:none;align-items:flex-start;justify-content:center;padding-top:12vh}.command-overlay.show{display:flex}.command-modal{width:min(620px,calc(100vw - 30px));background:rgba(250,252,255,.96);border:1px solid rgba(255,255,255,.65);border-radius:20px;box-shadow:0 30px 90px rgba(0,0,0,.28);overflow:hidden}.command-head{display:flex;align-items:center;justify-content:space-between;padding:18px 18px 12px}.command-head strong{display:block;font:700 15px 'Space Grotesk';margin-top:4px}.command-search{width:calc(100% - 28px);margin:0 14px 12px;padding:14px 15px;border:1px solid #e1e6ef;border-radius:12px;background:#fff;outline:none}.command-results{max-height:390px;overflow:auto;padding:4px 10px 12px}.command-result{display:flex;align-items:center;gap:11px;padding:10px;border-radius:11px}.command-result:hover,.command-result.selected{background:#eef0ff}.command-result .cr-icon{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;background:#f1f3ff;color:#5b5ff7}.command-result strong{display:block;font-size:10px}.command-result small{display:block;color:#8996a8;font-size:8px;margin-top:3px}.command-result kbd{margin-left:auto;font-size:8px;color:#9aa5b5}
body.futuristic-dark{--bg:#06101d;--surface:#0b1728;--surface2:#0e1c2e;--ink:#e8eef8;--muted:#91a0b4;--line:#1a2b40}.futuristic-dark .topbar{background:rgba(7,17,31,.82);border-color:#1a2b40}.futuristic-dark .panel,.futuristic-dark .kpi,.futuristic-dark .module-stat{background:linear-gradient(145deg,#0c192a,#0a1524);border-color:#1a2b40;color:var(--ink)}.futuristic-dark .panel-sub,.futuristic-dark .kpi-foot,.futuristic-dark .muted{color:#8291a7}.futuristic-dark .btn-secondary,.futuristic-dark input,.futuristic-dark select,.futuristic-dark textarea{background:#0d1b2d;color:#e8eef8;border-color:#21344b}.futuristic-dark .table th{background:#0c192a}.futuristic-dark .table td{border-color:#1a2b40}.futuristic-dark .command-btn{background:#0d1b2d;color:#91a0b4;border-color:#203249}.futuristic-dark .command-modal{background:#0b1728;border-color:#203249}.futuristic-dark .command-search{background:#091522;color:#e8eef8;border-color:#203249}.futuristic-dark .command-result:hover,.futuristic-dark .command-result.selected{background:#152444}
.sidebar-collapsed .sidebar{width:78px}.sidebar-collapsed .main{margin-left:78px}.sidebar-collapsed .brand>div:not(.brand-mark),.sidebar-collapsed .workspace-chip span:not(.pulse),.sidebar-collapsed .nav-section,.sidebar-collapsed .nav a span:not(.nav-icon),.sidebar-collapsed .user-copy,.sidebar-collapsed .logout-mini{display:none}.sidebar-collapsed .brand{justify-content:center;padding-left:0;padding-right:0}.sidebar-collapsed .nav a{justify-content:center}.sidebar-collapsed .user-card{justify-content:center}.sidebar-collapsed .build-label{display:none}.sidebar-collapsed .sidebar-toggle{transform:rotate(180deg)}
@media(max-width:900px){.sidebar-toggle{display:none}.command-btn{min-width:36px;width:36px;padding:0;justify-content:center}.command-label,.command-btn kbd{display:none}.topbar{padding:0 16px}.topbar-right{gap:6px}}
@media(max-width:700px){.topbar{height:68px}.page-title{font-size:17px}.system-status{display:none}.content{padding:16px}.sidebar{width:280px;transform:translateX(-100%);transition:transform .22s}.sidebar.open{transform:none}.main{margin-left:0!important}.sidebar-collapsed .sidebar{width:280px}.command-overlay{padding-top:8vh}}

/* v3.11 MIS COMMAND CENTER — visual correction */
.kpi-card{position:relative;overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:17px;padding:17px;box-shadow:var(--shadow)}
.reports-shell{max-width:1500px;margin:0 auto}.report-hero-pro{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px 30px;margin-bottom:16px;border-radius:22px;color:#fff;background:radial-gradient(circle at 78% 20%,rgba(124,131,255,.3),transparent 25%),radial-gradient(circle at 92% 80%,rgba(40,215,238,.18),transparent 25%),linear-gradient(135deg,#07111f,#10243b);box-shadow:0 22px 55px rgba(7,17,31,.16)}.report-hero-pro:after{content:"";position:absolute;width:280px;height:280px;right:-110px;top:-150px;border:1px solid rgba(255,255,255,.08);border-radius:50%;box-shadow:0 0 0 28px rgba(255,255,255,.02),0 0 0 56px rgba(255,255,255,.015)}.report-hero-pro h1{font:700 29px 'Space Grotesk';letter-spacing:-.04em;margin:7px 0 5px}.report-hero-pro p{color:#9db0c8;font-size:11px;margin:0;max-width:650px}.report-meta{display:flex;align-items:center;gap:7px;color:#7187a1;font-size:9px;margin-top:14px}.live-dot{width:7px;height:7px;border-radius:50%;background:#36d7a4;box-shadow:0 0 0 4px rgba(54,215,164,.11),0 0 14px rgba(54,215,164,.35);display:inline-block}.report-hero-actions{position:relative;z-index:2;display:flex;gap:7px;flex-wrap:wrap}.report-hero-pro .btn-secondary{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.12);color:#e8eef7}.report-hero-pro .btn-secondary:hover{background:rgba(255,255,255,.12)}.panel-pro{background:rgba(255,255,255,.88);backdrop-filter:blur(16px);border:1px solid rgba(214,222,235,.9);border-radius:18px;box-shadow:0 12px 35px rgba(15,23,42,.045)}.report-filter{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 16px;margin-bottom:15px}.filter-heading{display:flex;align-items:center;gap:10px}.filter-icon{width:35px;height:35px;border-radius:10px;display:grid;place-items:center;background:#eff0ff;color:#5b5ff7;font-weight:800}.filter-heading strong{display:block;font-size:11px}.filter-heading small{display:block;color:#8491a3;font-size:8px;margin-top:3px}.report-period-form{display:flex;align-items:flex-end;gap:8px}.report-period-form label span{display:block;color:#77859a;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;margin:0 0 4px 2px}.report-period-form input{height:36px;border:1px solid var(--line);background:#fff;border-radius:9px;padding:0 10px;color:var(--ink);font-size:10px}.period-arrow{color:#a0aabd;font-size:14px;padding-bottom:9px}.reset-link{font-size:9px;font-weight:800;color:#6674ec;padding:0 5px 10px}.report-kpis{display:grid;grid-template-columns:repeat(6,1fr);gap:11px;margin-bottom:13px}.report-kpi{position:relative;overflow:hidden;min-height:132px;padding:15px;border-radius:17px;border:1px solid var(--line);background:#fff;box-shadow:var(--shadow)}.report-kpi:before{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,var(--primary),transparent)}.report-kpi.blue:before{background:linear-gradient(90deg,#4789ff,transparent)}.report-kpi.green:before{background:linear-gradient(90deg,#17aa77,transparent)}.report-kpi.cyan:before{background:linear-gradient(90deg,#15b7d2,transparent)}.report-kpi.amber:before{background:linear-gradient(90deg,#e7a126,transparent)}.report-kpi.slate:before{background:linear-gradient(90deg,#7b8798,transparent)}.rk-top{display:flex;justify-content:space-between;align-items:center;color:#748197;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.rk-top i{font-style:normal;width:27px;height:27px;border-radius:8px;background:#f0f2ff;color:#5b5ff7;display:grid;place-items:center;font-size:10px}.green .rk-top i{background:#eafaf3;color:#15996d}.cyan .rk-top i{background:#e8fbff;color:#0d9db8}.amber .rk-top i{background:#fff7e8;color:#ce891d}.slate .rk-top i{background:#eff2f6;color:#5d6b7f}.report-kpi>strong{display:block;font:700 23px 'Space Grotesk';letter-spacing:-.04em;margin-top:15px}.report-kpi small{display:block;color:#8794a7;font-size:8px;margin-top:5px}.rk-glow{position:absolute;width:90px;height:90px;border-radius:50%;right:-45px;bottom:-45px;background:rgba(91,95,247,.09)}.blue .rk-glow{background:rgba(71,137,255,.08)}.green .rk-glow{background:rgba(23,170,119,.08)}.cyan .rk-glow{background:rgba(21,183,210,.08)}.amber .rk-glow{background:rgba(231,161,38,.09)}.insight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;margin-bottom:14px}.insight-card{padding:13px 15px;background:#fff;border:1px solid var(--line);border-radius:15px}.insight-card>div:first-child{display:flex;align-items:center;justify-content:space-between}.insight-card span{font-size:8px;text-transform:uppercase;letter-spacing:.08em;color:#7e8ba0;font-weight:800}.insight-card strong{font:700 15px 'Space Grotesk'}.insight-card small{display:block;color:#8a97a9;font-size:8px;margin-top:7px}.meter{height:5px;background:#edf0f5;border-radius:99px;margin-top:9px;overflow:hidden}.meter span{display:block;height:100%;min-width:0;border-radius:99px;background:linear-gradient(90deg,#6468f5,#7e82ff)}.cyan-meter span{background:linear-gradient(90deg,#12abc5,#56dff0)}.green-meter span{background:linear-gradient(90deg,#17a777,#4dd7aa)}.report-grid-two{display:grid;grid-template-columns:1.15fr .85fr;gap:14px;margin-bottom:14px}.report-panel{overflow:hidden}.panel-pro-head{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:17px 18px;border-bottom:1px solid var(--line)}.section-kicker{display:block;color:#6874e8;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.panel-pro-head h2{font:700 15px 'Space Grotesk';margin:4px 0 2px;letter-spacing:-.02em}.panel-pro-head p{color:#8794a7;font-size:8px;margin:0}.head-badge{padding:6px 8px;border-radius:999px;background:#f0f2ff;color:#5963d8;font-size:8px;font-weight:800}.branch-report-list{padding:5px 18px 9px}.branch-report-row{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid #eef2f7}.branch-report-row:last-child{border-bottom:0}.rank-badge{width:24px;height:24px;border-radius:7px;display:grid;place-items:center;background:#f1f3ff;color:#5c64d9;font-size:8px;font-weight:900}.branch-report-main>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:8px}.branch-report-main strong{font-size:9px}.branch-report-main span{font-size:8px;color:#8996a8}.report-progress{height:4px;background:#edf1f6;border-radius:99px;overflow:hidden;margin-top:7px}.report-progress span{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#6468f5,#21bed3);width:var(--w,50%)}.amount{font-size:10px;white-space:nowrap}.mode-report-list{padding:6px 18px 10px}.mode-report-row{display:flex;align-items:center;gap:10px;padding:13px 0;border-bottom:1px solid #eef2f7}.mode-report-row:last-child{border-bottom:0}.mode-icon{width:31px;height:31px;border-radius:9px;background:#eff8ff;color:#4389e8;display:grid;place-items:center;font-weight:900}.mode-report-row>div:nth-child(2){flex:1}.mode-report-row strong{display:block;font-size:9px}.mode-report-row span{display:block;color:#8996a8;font-size:8px;margin-top:3px}.status-report-list{padding:8px 18px 12px}.status-report-row{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;padding:11px 0;border-bottom:1px solid #eef2f7}.status-report-row:last-child{border-bottom:0}.status-pill{display:inline-flex;align-items:center;width:max-content;padding:5px 8px;border-radius:999px;font-size:8px;font-weight:900;letter-spacing:.03em}.status-pill.success{background:#eafaf3;color:#11865f}.status-pill.warning{background:#fff7e8;color:#b77816}.status-pill.danger{background:#fff0f2;color:#b34451}.control-metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;padding:14px 18px}.control-metrics>div{padding:11px;border:1px solid #edf1f6;border-radius:11px;background:#fbfcfe}.control-metrics span,.bvps-grid span{display:block;color:#8a97a9;font-size:8px;text-transform:uppercase;letter-spacing:.06em}.control-metrics strong,.bvps-grid strong{display:block;font:700 13px 'Space Grotesk';margin-top:5px}.exception-callout{margin:0 18px 15px;padding:10px 11px;display:flex;align-items:center;gap:8px;border-radius:10px;background:#fff8e9;border:1px solid #f7e2b5}.exception-callout strong{display:block;font-size:8px}.exception-callout small{display:block;color:#8c7a54;font-size:8px;margin-top:2px}.amber-dot{background:#e5a029;box-shadow:0 0 0 4px rgba(229,160,41,.1)}.report-empty{min-height:170px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:25px;color:#8b98aa}.report-empty div{width:42px;height:42px;border-radius:13px;background:#f2f4f8;display:grid;place-items:center;color:#6976e9;font-size:18px;margin-bottom:9px}.report-empty strong{font-size:10px;color:#56657a}.report-empty span{font-size:8px;margin-top:4px;max-width:260px;line-height:1.5}.report-empty.compact{min-height:135px}.bvps-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:15px 18px 18px}.bvps-grid>div{padding:13px;border:1px solid #edf1f6;border-radius:11px;background:#fbfcfe}.success-stat{background:#f1fbf6!important;border-color:#d7f1e5!important}.warning-stat{background:#fff9ed!important;border-color:#f7e6bf!important}.danger-stat{background:#fff2f3!important;border-color:#f7d6da!important}.text-link{font-size:9px;color:#5b5ff7;font-weight:800}.futuristic-dark .panel-pro{background:rgba(11,23,40,.9);border-color:#1b3047}.futuristic-dark .report-filter,.futuristic-dark .report-kpi,.futuristic-dark .insight-card,.futuristic-dark .branch-report-row,.futuristic-dark .mode-report-row,.futuristic-dark .status-report-row{border-color:#1b3047}.futuristic-dark .report-kpi,.futuristic-dark .insight-card,.futuristic-dark .control-metrics>div,.futuristic-dark .bvps-grid>div{background:#0d1b2d}.futuristic-dark .report-period-form input{background:#0d1b2d;color:#e8eef8;border-color:#203249}.futuristic-dark .filter-icon,.futuristic-dark .rank-badge{background:#172548}.futuristic-dark .report-empty div{background:#132239}.futuristic-dark .exception-callout{background:#2a2416;border-color:#4b3d1e}
@media(max-width:1250px){.report-kpis{grid-template-columns:repeat(3,1fr)}}
@media(max-width:950px){.report-hero-pro{align-items:flex-start;flex-direction:column}.report-filter{align-items:flex-start;flex-direction:column}.report-period-form{width:100%;flex-wrap:wrap}.report-grid-two{grid-template-columns:1fr}.insight-grid{grid-template-columns:1fr}.bvps-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.report-kpis{grid-template-columns:1fr 1fr}.report-hero-pro{padding:22px}.report-hero-pro h1{font-size:24px}.report-period-form{align-items:stretch}.report-period-form label{flex:1}.report-period-form input{width:100%}.period-arrow{display:none}.status-report-row{grid-template-columns:1fr auto}.status-report-row span:last-child{grid-column:1/-1}.bvps-grid{grid-template-columns:1fr}.report-kpis{grid-template-columns:1fr}.branch-report-row{grid-template-columns:25px 1fr}.branch-report-row .amount{grid-column:2}.report-hero-actions{width:100%}}

/* v3.12 — unified Data & MIS visual system */
.data-mis-shell{max-width:100%;}
.data-hero{background:radial-gradient(circle at 88% 10%,rgba(21,183,210,.12),transparent 24%),radial-gradient(circle at 70% 100%,rgba(91,95,247,.14),transparent 32%),linear-gradient(135deg,#fff 0%,#f8f9ff 55%,#f4fbfd 100%);}
.data-kpis{grid-template-columns:repeat(4,1fr);}
.data-filter-form{align-items:flex-end;flex-wrap:wrap;}
.data-filter-form label{min-width:150px;}
.data-filter-form select,.data-filter-form input{height:36px;border:1px solid var(--line);background:#fff;border-radius:9px;padding:0 10px;color:var(--ink);font-size:10px;min-width:150px;box-sizing:border-box;}
.data-grid-wide{grid-template-columns:1.5fr .5fr;}
.data-table-wrap{max-height:570px;overflow:auto;}
.pro-data-table{width:100%;min-width:860px;}
.pro-data-table th{position:sticky;top:0;z-index:2;background:#f8fafc;}
.pro-data-table td{font-size:9px;vertical-align:middle;}
.pro-data-table tbody tr{transition:.14s;}
.pro-data-table tbody tr:hover{background:#f8faff;}
.pro-data-table td small{display:block;color:#8a97a9;font-size:8px;margin-top:3px;}
.data-type-pill{display:inline-flex;padding:5px 7px;border-radius:7px;background:#eef0ff;color:#5b62d8;font-size:8px;font-weight:900;letter-spacing:.05em;}
.positive-number{color:#11865f!important;font-weight:800;}
.negative-number{color:#b54855!important;font-weight:800;}
.audit-code{display:block;max-width:360px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#66758a;background:#f6f8fb;border:1px solid #edf1f5;border-radius:7px;padding:5px 7px;font-size:8px;}
.audit-table-wrap{max-height:650px;}
.demand-filter-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px;}
.demand-filter-row .filter-links{display:flex;gap:7px;flex-wrap:wrap;}
.searchbox.compact{height:34px;display:flex;align-items:center;gap:7px;padding:0 9px;border:1px solid var(--line);border-radius:9px;background:#fff;min-width:230px;}
.searchbox.compact input{border:0;outline:0;background:transparent;font-size:9px;width:100%;}
.futuristic-dark .data-hero{background:radial-gradient(circle at 88% 10%,rgba(21,183,210,.1),transparent 24%),linear-gradient(135deg,#0d1b2d,#0b1727);}
.futuristic-dark .data-filter-form select,.futuristic-dark .data-filter-form input,.futuristic-dark .searchbox.compact{background:#0d1b2d;color:#e8eef8;border-color:#203249;}
.futuristic-dark .pro-data-table th{background:#0d1b2d;}
.futuristic-dark .pro-data-table tbody tr:hover{background:#101f34;}
.futuristic-dark .audit-code{background:#101f34;border-color:#1b3047;color:#c5d0df;}
.futuristic-dark .data-type-pill{background:#172548;color:#aeb6ff;}
@media(max-width:1100px){.data-kpis{grid-template-columns:repeat(2,1fr)}.data-grid-wide{grid-template-columns:1fr;}}
@media(max-width:700px){.data-kpis{grid-template-columns:1fr 1fr}.data-filter-form{width:100%;}.data-filter-form label{flex:1;min-width:130px}.data-filter-form select,.data-filter-form input{width:100%;min-width:0}.demand-filter-row{align-items:stretch;flex-direction:column}.searchbox.compact{min-width:0;width:100%;box-sizing:border-box}.data-grid-wide{grid-template-columns:1fr}.data-hero .report-hero-actions{display:grid;grid-template-columns:1fr 1fr}.data-hero .report-hero-actions .btn{width:100%;}}
@media(max-width:480px){.data-kpis{grid-template-columns:1fr}.data-hero .report-hero-actions{grid-template-columns:1fr}.data-filter-form{display:grid;grid-template-columns:1fr}.data-filter-form label{width:100%;}.data-filter-form .btn,.data-filter-form .reset-link{width:100%;text-align:center;}}

/* v3.17.0 — detailed cross-page UX polish: consistent spacing, forms, tables, states and responsive behavior */
:root{--focus-ring:0 0 0 3px rgba(91,95,247,.18);--shadow-soft:0 5px 18px rgba(15,23,42,.045)}
html{scroll-padding-top:92px}body{line-height:1.5;-webkit-font-smoothing:antialiased}button,a,input,select,textarea{touch-action:manipulation}button,a{ -webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:0;box-shadow:var(--focus-ring)}
.content{width:100%;min-width:0}.content>*{min-width:0}.page-head{align-items:center}.page-head h1{line-height:1.16}.page-head p{max-width:760px;line-height:1.6}.actions .btn{min-height:38px}.btn{min-height:36px;line-height:1.35;white-space:normal}.btn:disabled,button:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}
/* predictable layout and card rhythm across modules */
.panel,.kpi,.module-stat,.report-kpi,.insight-card,.form-panel,.filter-panel,.records-panel{min-width:0}.panel{box-shadow:var(--shadow-soft)}.panel-head,.panel-pro-head{flex-wrap:wrap}.panel-title{line-height:1.4}.panel-sub{line-height:1.5}.kpi{min-height:132px}.kpi-value{overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.module-stats{align-items:stretch}.module-stat{min-width:0}.module-stat strong,.report-kpi>strong,.insight-card strong{font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
/* forms: consistent labels, help, errors, controls */
form:not(.logout-form){min-width:0}label{line-height:1.45}input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea{max-width:100%;min-height:38px;border:1px solid #dce4ef;border-radius:10px;padding:9px 11px;color:var(--ink);background:#fff}textarea{min-height:96px;resize:vertical}input::placeholder,textarea::placeholder{color:#9aa6b7}input:focus,select:focus,textarea:focus{border-color:#777af8!important;box-shadow:var(--focus-ring)!important;outline:0}input[type=checkbox],input[type=radio]{accent-color:var(--primary)}input[type=file]{max-width:100%;font-size:11px}form p{line-height:1.55}form .helptext,.help-text,.field-help,.form-text{display:block;color:#7e8b9e;font-size:11px;line-height:1.55;margin-top:5px}form .errorlist,.errorlist,.field-error{color:#b42332;background:#fff1f2;border:1px solid #ffd6da;border-radius:9px;padding:8px 11px;font-size:11px;list-style:none;margin:5px 0}.msg{line-height:1.5;overflow-wrap:anywhere}.msg.error,.msg.warning{border-radius:12px}
/* tables: sticky headings, readable row density, horizontal scroll rather than broken layout */
.table-wrap,.data-table-wrap,.pro-table-wrap,.audit-table-wrap,.records-table-wrap,.table-responsive{max-width:100%;overflow:auto;overscroll-behavior-x:contain;border-radius:0 0 14px 14px}.data-table,.pro-table,.pro-data-table{font-variant-numeric:tabular-nums}.data-table th,.pro-table th,.pro-data-table th{line-height:1.4;vertical-align:bottom}.data-table td,.pro-table td,.pro-data-table td{line-height:1.45}.data-table tbody tr:last-child td,.pro-table tbody tr:last-child td,.pro-data-table tbody tr:last-child td{border-bottom:0}.data-table tbody tr:hover td,.pro-table tbody tr:hover td,.pro-data-table tbody tr:hover td{transition:background .12s}.data-table td a,.pro-table td a,.pro-data-table td a{color:#555de0;font-weight:700}.data-table td a:hover,.pro-table td a:hover,.pro-data-table td a:hover{text-decoration:underline}.table-actions,.records-tools{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.table-actions .btn{min-height:30px}.toolbar{flex-wrap:wrap}.searchbox{max-width:100%}.pagination,.pager{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap;padding:12px 16px}.pagination a,.pager a,.pagination span,.pager span{padding:7px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;font-size:11px}
/* consistent empty, warning, success and destructive states */
.empty-state,.empty-pro{color:#718096}.empty-state{padding:36px 20px;text-align:center}.empty-state strong{display:block;color:#34445a;margin-bottom:5px}.empty-state p{max-width:460px;margin:0 auto;color:#8794a7;line-height:1.6}.status-pill,.badge,.data-type-pill{white-space:normal;line-height:1.3}.btn-danger{box-shadow:none}.danger-zone{border:1px solid #f5cbd0;background:#fff8f8;border-radius:13px;padding:14px}.confirm-note{font-size:11px;color:#7a8798;line-height:1.55}
/* content hierarchy and import flows */
.section-title,.panel-heading{line-height:1.35}.form-panel,.editor-panel{overflow:hidden}.form-panel .panel-head,.form-panel .panel-pro-head{background:linear-gradient(180deg,#fff,#fbfcff)}.dropzone:focus-within{border-color:#7378f6;box-shadow:var(--focus-ring)}.schema-strip{flex-wrap:wrap}.schema-chips{min-width:0}.schema-chips span{overflow-wrap:anywhere}.filter-panel{flex-wrap:wrap}.filter-panel form,.data-filter-form{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}.filter-panel label,.data-filter-form label{display:flex;flex-direction:column;gap:5px;color:#66758a;font-size:10px;font-weight:700}.filter-panel input,.filter-panel select{min-width:140px}
/* keyboard navigation and motion preferences */
@media(hover:hover){.btn:hover,.icon-btn:hover,.quick:hover{filter:brightness(.99)}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
@media(max-width:1100px){.content{padding:22px 22px 34px}.topbar{padding:0 22px}.dashboard-grid,.module-workspace,.data-grid-wide{grid-template-columns:minmax(0,1fr)}.module-workspace{gap:12px}.batch-layout{grid-template-columns:minmax(0,1fr)}}
@media(max-width:760px){.content{padding:18px 14px 28px}.topbar{padding:0 14px}.topbar-right{gap:6px}.system-status{display:none}.page-head{align-items:flex-start;flex-direction:column;gap:12px}.page-head h1{font-size:25px}.page-head .actions{width:100%}.page-head .actions .btn{flex:1}.kpi-grid,.module-stats,.data-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.kpi{padding:13px;min-height:118px}.kpi-value{font-size:23px}.toolbar{align-items:stretch}.toolbar .searchbox,.searchbox,.searchbox.compact{min-width:0;width:100%}.toolbar-meta{margin-left:0}.panel-head,.panel-pro-head{padding:13px 14px}.panel-body{padding:14px}.data-table th,.data-table td,.pro-table th,.pro-table td,.pro-data-table th,.pro-data-table td{padding:9px 10px}.insight-strip{grid-template-columns:1fr}.editor-grid{gap:14px}.pro-editor-form{padding:18px}.import-footer{align-items:stretch;flex-direction:column}.schema-strip{align-items:flex-start}.batch-layout .form-panel{position:static}}
@media(max-width:480px){.topbar{height:64px}.page-title{font-size:17px}.eyebrow{font-size:8px}.mobile-toggle{padding:7px 9px}.topbar-left{gap:8px}.topbar-right .command-btn{padding:7px}.command-label,.command-btn kbd{display:none}.icon-btn{width:32px;height:32px}.kpi-grid,.module-stats,.data-kpis,.report-kpis{grid-template-columns:minmax(0,1fr)}.kpi{min-height:auto}.kpi-value{margin-top:8px}.actions .btn{flex:1}.panel{border-radius:13px}.panel-head{align-items:flex-start}.records-tools{width:100%}.records-tools>*{max-width:100%}.editor-footer{align-items:stretch}.editor-footer .btn{width:100%}.pagination,.pager{justify-content:center}.branch-row{grid-template-columns:1fr;gap:8px}.branch-amount{text-align:left}.status-report-row{grid-template-columns:1fr auto}.content{padding-inline:11px}}
/* dark mode contrast and form consistency */
.futuristic-dark input:not([type=checkbox]):not([type=radio]):not([type=file]),.futuristic-dark select,.futuristic-dark textarea{background:#0d1b2d;color:#e8eef8;border-color:#26384f}.futuristic-dark input::placeholder,.futuristic-dark textarea::placeholder{color:#75869d}.futuristic-dark .pagination a,.futuristic-dark .pager a,.futuristic-dark .pagination span,.futuristic-dark .pager span{background:#0d1b2d;color:#e8eef8;border-color:#26384f}.futuristic-dark .empty-state strong{color:#e8eef8}

/* v3.17.1 — deeper page-level usability pass */
:root{--surface-raised:#fff;--table-head:#f7f9fd;--focus-strong:#4f46e5}
/* Clear page landmarks and more robust data-dense layouts */
main,.main,.content,.app-shell{min-width:0}h1,h2,h3,h4{scroll-margin-top:100px}p{overflow-wrap:anywhere}.page-head .actions{align-items:center}.page-head .actions form{display:inline-flex;flex-wrap:wrap;gap:8px}.panel,.panel-pro,.report-panel,.form-panel,.records-panel{scroll-margin-top:94px}
/* Tables remain readable without making the whole page overflow */
.table-wrap,.table-responsive,.data-table-wrap,.pro-table-wrap,.audit-table-wrap,.records-table-wrap{width:100%;max-width:100%;-webkit-overflow-scrolling:touch}.data-table,.pro-table,.pro-data-table{min-width:640px;border-collapse:separate;border-spacing:0}.data-table thead th,.pro-table thead th,.pro-data-table thead th{position:sticky;top:0;z-index:2;background:var(--table-head);box-shadow:inset 0 -1px var(--line)}.data-table td,.pro-table td,.pro-data-table td{overflow-wrap:anywhere}.data-table td.amount,.pro-table td.amount,.pro-data-table td.amount,.amount,.mono{font-variant-numeric:tabular-nums}.data-table tbody tr:nth-child(even),.pro-table tbody tr:nth-child(even),.pro-data-table tbody tr:nth-child(even){background:#fcfdff}
/* Import/reconciliation actions: communicate selected file and processing state */
.file-name{display:block;margin-top:7px;color:#5965d9;font-size:11px;font-weight:700;overflow-wrap:anywhere}.import-footer,.editor-footer,.form-actions,.toolbar,.records-tools{gap:9px}.btn[aria-busy="true"]{opacity:.75;pointer-events:none}.btn[aria-busy="true"]::before{content:"";width:12px;height:12px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:ldcms-spin .7s linear infinite}@keyframes ldcms-spin{to{transform:rotate(360deg)}}
/* Status and alert messages must be distinct and accessible */
.msg{display:flex;align-items:flex-start;gap:9px;padding:11px 13px;margin:0 0 12px;border:1px solid #dbe7f4;background:#f7fbff;color:#34445a;border-radius:11px}.msg.success{border-color:#b8ead5;background:#f0fdf6;color:#126746}.msg.warning{border-color:#f4d7a2;background:#fff9eb;color:#87550a}.msg.error,.msg.danger{border-color:#f4c4ca;background:#fff3f4;color:#9f2330}.msg.info{border-color:#c8d9ff;background:#f4f7ff;color:#314b9b}
/* Search, filter and forms: consistent keyboard and touch target behavior */
.filter-panel,.filter-panel form,.data-filter-form,.toolbar{min-width:0}.filter-panel button,.data-filter-form button,.toolbar button{min-height:36px}.field{min-width:0}.field input,.field select,.field textarea,.form-grid input,.form-grid select,.form-grid textarea{width:100%;min-width:0}.field label,.form-grid label{display:block;margin-bottom:5px;font-weight:700;color:#59687c}.required,.required-indicator{color:#c63b4a}.form-grid{align-items:start}.form-grid>*{min-width:0}
/* Dialog and mobile navigation focus treatment */
.command-overlay{overscroll-behavior:contain}.command-modal{max-height:min(80vh,720px);overflow:auto}.command-search{width:100%}.command-result{min-height:48px}.mobile-overlay{touch-action:pan-y}.sidebar{overscroll-behavior:contain}.nav a:focus-visible{outline:2px solid #8e92ff;outline-offset:2px}
/* Print-friendly reports and tables */
@media print{.sidebar,.topbar,.mobile-overlay,.command-overlay,.actions,.toolbar,.filter-panel,.pagination,.pager,button,.btn{display:none!important}.main{margin:0!important}.content{max-width:none!important;padding:0!important}.panel,.report-panel,.kpi{box-shadow:none!important;border:1px solid #ccd3dc!important;break-inside:avoid}.table-wrap,.table-responsive,.data-table-wrap,.pro-table-wrap,.audit-table-wrap,.records-table-wrap{overflow:visible!important}.data-table,.pro-table,.pro-data-table{min-width:0!important;width:100%!important;font-size:9pt!important}.data-table thead th,.pro-table thead th,.pro-data-table thead th{position:static!important}.page-head h1{font-size:20pt!important}body{background:#fff!important;color:#000!important}}
@media(max-width:760px){.data-table,.pro-table,.pro-data-table{min-width:700px}.page-head .actions form{width:100%}.page-head .actions form .btn{width:100%}.form-grid{grid-template-columns:minmax(0,1fr)!important}.panel-head .actions,.panel-pro-head .actions{width:100%}.panel-head .actions .btn,.panel-pro-head .actions .btn{flex:1}.command-modal{width:calc(100vw - 24px);max-width:560px}}
@media(prefers-contrast:more){:root{--line:#b7c2d1;--muted:#4e5b6d}.btn-secondary,.icon-btn{border-color:#9aa7b8}.eyebrow,.kpi-label,.panel-sub{color:#4e5b6d}}

/* v3.17.2 screenshot-driven fixes */
.data-hero{color:var(--ink)!important;background:radial-gradient(circle at 88% 10%,rgba(21,183,210,.12),transparent 24%),radial-gradient(circle at 70% 100%,rgba(91,95,247,.10),transparent 32%),linear-gradient(135deg,#fff 0%,#f8f9ff 55%,#f4fbfd 100%)!important;border:1px solid #dfe6f1;}
.data-hero h1{color:#101d30!important}.data-hero p,.data-hero .report-meta,.data-hero .report-meta span{color:#65758d!important}.data-hero .eyebrow.accent{color:#5b5ff7!important}.data-hero .report-hero-actions .btn-secondary{background:#fff!important;border-color:#dce4ef!important;color:#34445a!important}.data-hero .report-hero-actions .btn-secondary:hover{background:#f6f8ff!important}.data-hero .report-hero-actions .btn-primary{color:#fff!important}
/* Do not let sticky table headers overlap the fixed application toolbar during page scrolling. */
.data-table thead th,.pro-table thead th,.pro-data-table thead th{position:static!important;top:auto!important}
.deposit-history{margin-top:16px}.deposit-history .panel-head{border-radius:17px 17px 0 0}.deposit-history .table-wrap{overflow-x:auto}
.batch-layout{align-items:start;gap:18px}.batch-layout>.panel{min-width:0}.batch-layout .form-panel{position:static;top:auto}.batch-layout .form-panel form{padding:18px}.batch-layout .field{margin-bottom:14px}.batch-layout .field textarea{min-height:94px}.batch-total strong{font-variant-numeric:tabular-nums}.records-panel{margin-top:16px}
.loan-detail .panel-title,.panel .panel-title{line-height:1.35}.panel-head+.table-wrap{min-width:0}.data-table td,.data-table th{vertical-align:middle}.data-table td.amount{font-variant-numeric:tabular-nums}
@media(max-width:900px){.data-hero .report-hero-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.data-hero .report-hero-actions .btn{white-space:normal}.batch-layout{grid-template-columns:minmax(0,1fr)!important}}
@media(max-width:560px){.data-hero .report-hero-actions{grid-template-columns:minmax(0,1fr)}.batch-layout .form-panel form{padding:14px}}


/* v3.17.4 — hard layout correction for screenshot-reported page overlap.
   Keep every content section in normal document flow; only the application topbar/sidebar may be fixed/sticky. */
.content > .panel, .content > .panel-pro, .content > .report-panel,
.content > .records-panel, .content > section, .content .deposit-history {
  position: relative !important; inset: auto !important; float: none !important;
  transform: none; clear: both;
}
.batch-layout { display: grid; grid-template-columns: minmax(0, 1.8fr) minmax(320px, .9fr); align-items: start; gap: 18px; }
.batch-layout + .deposit-history { display: block; width: 100%; margin: 18px 0 0 !important; z-index: auto !important; }
.deposit-history .panel-head, .deposit-history .table-wrap { position: static !important; }
.report-hero-pro, .data-hero { position: relative !important; isolation: isolate; color: var(--ink) !important; }
.report-hero-pro h1, .report-hero-pro h2, .report-hero-pro p, .report-hero-pro a, .data-hero h1, .data-hero p { opacity: 1 !important; visibility: visible !important; }
/* Do not pin table headers to the application toolbar; this avoids overlap while scrolling. */
.table-wrap thead th, .table-responsive thead th, .data-table-wrap thead th,
.pro-table-wrap thead th, .audit-table-wrap thead th, .records-table-wrap thead th { position: static !important; top: auto !important; }
@media (max-width: 900px) { .batch-layout { grid-template-columns: minmax(0, 1fr) !important; } }


/* v3.17.5 screenshot-specific layout fixes */
/* Import Control Center: this hero uses a light surface, so all inherited dark-hero text styles must be explicitly overridden. */
.report-hero-pro.data-hero { color: #101d30 !important; background: radial-gradient(circle at 88% 10%,rgba(21,183,210,.12),transparent 24%),radial-gradient(circle at 70% 100%,rgba(91,95,247,.10),transparent 32%),linear-gradient(135deg,#fff 0%,#f8f9ff 55%,#f4fbfd 100%) !important; min-height: 210px; display:flex; align-items:flex-start; justify-content:space-between; gap:28px; }
.report-hero-pro.data-hero > div:first-child { position:relative; z-index:2; min-width:0; flex:1 1 380px; }
.report-hero-pro.data-hero h1 { color:#101d30 !important; line-height:1.18; margin:8px 0 10px; }
.report-hero-pro.data-hero p { color:#65758d !important; line-height:1.6; max-width:650px; }
.report-hero-pro.data-hero .report-meta { color:#65758d !important; line-height:1.5; flex-wrap:wrap; }
.report-hero-pro.data-hero .report-hero-actions { position:relative; z-index:3; flex:1 1 420px; display:grid; grid-template-columns:repeat(2,minmax(150px,1fr)); align-content:start; gap:9px; }
.report-hero-pro.data-hero .report-hero-actions .btn { min-height:42px; white-space:normal; text-align:center; line-height:1.35; padding:10px 12px; }
.report-hero-pro.data-hero .report-hero-actions .btn-secondary { background:#fff !important; color:#34445a !important; border:1px solid #dce4ef !important; }
.report-hero-pro.data-hero .report-hero-actions .btn-primary { color:#fff !important; }
/* Loan 360: table section headings must have the same padding and height as other panels. */
.loan-detail-lower > .panel > .panel-head, .loan-reconciliation-panel > .panel-head { min-height:58px; padding:14px 18px; margin:0; border-bottom:1px solid var(--line); }
.loan-detail-lower > .panel > .table-wrap, .loan-reconciliation-panel > .table-wrap { width:100%; min-width:0; overflow-x:auto; }
.loan-detail-lower { align-items:start; gap:16px; margin-top:16px; }
.loan-detail-lower > .panel, .loan-reconciliation-panel { min-width:0; overflow:hidden; }
.loan-detail-lower .data-table { min-width:640px; }
.loan-detail-lower .data-table td:nth-child(4) { max-width:360px; overflow-wrap:anywhere; white-space:normal; }
/* Deposit batch: history always follows the two-column work area, never overlays it. */
.content .batch-layout { position:relative !important; display:grid !important; grid-template-columns:minmax(0,1.8fr) minmax(320px,.9fr) !important; align-items:start !important; gap:18px !important; margin-bottom:18px; }
.content .batch-layout > .panel { position:relative !important; inset:auto !important; align-self:start; min-width:0; }
.content > .deposit-history, .content .deposit-history { position:relative !important; display:block !important; clear:both !important; float:none !important; inset:auto !important; width:100% !important; margin:18px 0 0 !important; transform:none !important; z-index:1 !important; }
.content .deposit-history .panel-head { position:relative !important; display:flex; padding:16px 18px; min-height:65px; }
.content .deposit-history .table-wrap { position:relative !important; overflow-x:auto !important; }
/* Prevent table and long reference text from forcing the entire viewport wider. */
.table-wrap { max-width:100%; min-width:0; }
.data-table { max-width:100%; }
@media(max-width:900px) {
 .report-hero-pro.data-hero { flex-direction:column; min-height:0; }
 .report-hero-pro.data-hero .report-hero-actions { width:100%; flex:1 1 auto; grid-template-columns:repeat(2,minmax(0,1fr)); }
 .content .batch-layout { grid-template-columns:minmax(0,1fr) !important; }
 .loan-detail-lower { grid-template-columns:minmax(0,1fr); }
}
@media(max-width:560px) {
 .report-hero-pro.data-hero .report-hero-actions { grid-template-columns:minmax(0,1fr); }
 .loan-detail-lower .data-table { min-width:580px; }
}


/* v3.18.1 — dashboard portfolio KPI readability */
/* Keep large financial values on one line; summary values are rounded to whole rupees in the template. */
.panel .kpi-grid .kpi-value{white-space:nowrap;overflow-wrap:normal;word-break:normal;letter-spacing:-.035em;font-size:clamp(18px,1.55vw,28px);line-height:1.25;max-width:100%;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;}
.panel .kpi-grid .kpi{min-width:0;padding:20px 18px;}
.panel .kpi-grid .kpi-label{line-height:1.45;overflow-wrap:normal;}
@media(max-width:1100px){.panel .kpi-grid .kpi-value{font-size:clamp(18px,2.15vw,25px);}}
@media(max-width:760px){.panel .kpi-grid .kpi-value{font-size:clamp(18px,3.1vw,23px);}.panel .kpi-grid .kpi{padding:14px 12px;}}
@media(max-width:480px){.panel .kpi-grid .kpi-value{font-size:23px;}.panel .kpi-grid .kpi{padding:15px;}}


/* v3.18.4 — Loan Master table usability and action-column repair */
.loan-page-head{align-items:center;gap:20px;flex-wrap:wrap}.loan-page-head>div:first-child{min-width:240px;flex:1 1 300px}.loan-page-actions{display:flex;flex:0 1 auto;gap:10px;flex-wrap:wrap;justify-content:flex-end}.loan-page-actions .btn{min-height:44px;white-space:nowrap;padding:11px 16px}.loan-filter-panel{padding:14px 16px;overflow:visible}.loan-filter-toolbar{width:100%;min-width:0}.loan-filter-toolbar .searchbox{flex:1 1 280px;min-width:240px}.loan-filter-toolbar select{min-width:155px}.loan-filter-toolbar .btn{white-space:nowrap;min-height:42px}.loan-register-table{width:max-content;min-width:3000px;table-layout:auto}.loan-register-table th,.loan-register-table td{vertical-align:middle;white-space:nowrap;overflow-wrap:normal;word-break:normal}.loan-register-table .loan-actions-heading,.loan-register-table .loan-actions-cell{width:170px;min-width:170px;max-width:170px;text-align:center;background:#fbfcff}.loan-row-actions{display:flex;align-items:center;justify-content:center;gap:7px;min-width:150px;flex-wrap:nowrap}.loan-row-actions .btn{display:inline-flex;align-items:center;justify-content:center;min-width:66px;min-height:36px;padding:8px 10px;white-space:nowrap;word-break:keep-all;overflow-wrap:normal;line-height:1.15;font-size:11px}.loan-register-table tbody tr{height:58px}.loan-register-table tbody tr:hover{background:#f5f7ff}.loan-register-table a:not(.btn){white-space:nowrap}.loan-register-table .loan-actions-cell{position:sticky;right:0;z-index:1;box-shadow:-8px 0 14px rgba(25,42,70,.04)}.loan-register-table thead .loan-actions-heading{position:sticky;right:0;z-index:3}
@media(max-width:900px){.loan-page-actions{width:100%;justify-content:flex-start}.loan-page-actions .btn{flex:1 1 180px}.loan-filter-toolbar .searchbox{flex-basis:100%;min-width:0}.loan-register-table .loan-actions-heading,.loan-register-table .loan-actions-cell{width:160px;min-width:160px;max-width:160px}.loan-row-actions{min-width:145px;gap:5px}}
@media(max-width:560px){.loan-page-actions{display:grid;grid-template-columns:1fr;width:100%}.loan-page-actions .btn{width:100%;white-space:normal}.loan-filter-toolbar{align-items:stretch!important}.loan-filter-toolbar select,.loan-filter-toolbar button,.loan-filter-toolbar>a{width:100%;max-width:none!important}.loan-register-table .loan-actions-heading,.loan-register-table .loan-actions-cell{width:150px;min-width:150px;max-width:150px}.loan-row-actions .btn{font-size:10px;padding:7px 8px}}


/* v3.18.5 — Loan edit form polish and guaranteed single-line row actions */
.loan-row-actions{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center;justify-content:center;gap:8px;white-space:nowrap;min-width:158px}
.loan-row-actions .btn{flex:0 0 auto!important;width:auto!important;min-width:70px;white-space:nowrap!important;word-break:normal!important;overflow-wrap:normal!important;padding:9px 11px;font-size:11px;line-height:1.15}
.loan-register-table .loan-actions-heading,.loan-register-table .loan-actions-cell{width:178px;min-width:178px;max-width:178px}
.loan-edit-page{max-width:1600px;margin:0 auto}.loan-edit-head{align-items:center;margin-bottom:24px}.loan-edit-intro{max-width:980px;min-width:0}.loan-edit-intro h1{font-size:clamp(26px,2.4vw,36px);letter-spacing:-.045em}.loan-edit-intro p{max-width:900px;line-height:1.7;font-size:13px}.loan-edit-form{overflow:hidden;border-radius:20px;border-color:#dfe6f0;box-shadow:0 18px 48px rgba(24,43,76,.07)}.loan-edit-form-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;background:linear-gradient(115deg,#fff 0%,#f8f9ff 100%);border-bottom:1px solid var(--line)}.loan-edit-form-head .panel-title{font-size:15px}.loan-edit-reference{display:inline-flex;align-items:center;padding:7px 11px;border-radius:999px;background:#eef0ff;color:#5057d8;font-size:11px;font-weight:800;white-space:nowrap}.loan-edit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:19px 20px;padding:24px}.loan-edit-field{min-width:0}.loan-edit-field label{display:block;margin:0 0 7px;color:#52627a;font-size:11px;font-weight:750;line-height:1.4;overflow-wrap:anywhere}.loan-edit-field label span{color:#d14a55}.loan-edit-field .form-control{display:block;width:100%;min-width:0;height:46px;padding:0 13px;border:1px solid #d8e1ee;border-radius:11px;background:#fff;color:#152238;font-size:13px;outline:none;transition:border-color .15s,box-shadow .15s,background .15s}.loan-edit-field .form-control:hover{border-color:#bac7db}.loan-edit-field .form-control:focus{border-color:#777bff;box-shadow:0 0 0 4px rgba(91,95,247,.13);background:#fff}.loan-edit-field .form-control[readonly]{background:#f4f6fa;color:#69778b;cursor:not-allowed}.loan-edit-notice{display:flex;flex-direction:column;gap:5px;margin:0 24px 22px;padding:14px 16px;border:1px solid #e2e5ff;border-radius:12px;background:#f7f7ff;color:#65718a;font-size:11px;line-height:1.6}.loan-edit-notice strong{color:#3d469f;font-size:11px}.loan-edit-footer{display:flex;justify-content:flex-end;align-items:center;gap:10px;padding:17px 24px;border-top:1px solid var(--line);background:#fbfcfe}.loan-edit-footer .btn{min-height:42px;min-width:120px}.loan-edit-footer .btn-primary{order:2}.loan-edit-footer .btn-secondary{order:1}
@media(max-width:1100px){.loan-edit-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.loan-edit-form-head{padding:18px 20px}.loan-edit-grid{padding:20px}.loan-edit-notice{margin-left:20px;margin-right:20px}}
@media(max-width:760px){.loan-edit-head{align-items:flex-start}.loan-edit-top-actions{width:auto!important}.loan-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;padding:16px}.loan-edit-form-head{padding:16px;align-items:flex-start}.loan-edit-notice{margin:0 16px 16px}.loan-edit-footer{padding:14px 16px}.loan-row-actions .btn{font-size:10px;padding:8px 8px;min-width:65px}}
@media(max-width:480px){.loan-edit-grid{grid-template-columns:minmax(0,1fr)}.loan-edit-field .form-control{height:44px}.loan-edit-form-head{flex-direction:column}.loan-edit-footer{flex-direction:column-reverse;align-items:stretch}.loan-edit-footer .btn{width:100%;order:initial}.loan-edit-intro h1{font-size:25px}.loan-edit-intro p{font-size:12px}}


/* v3.18.6: consistent master and loan CRUD actions */
.master-row-actions,.loan-row-actions{display:flex;align-items:center;justify-content:flex-start;gap:8px;flex-wrap:nowrap;white-space:nowrap;min-width:max-content}
.inline-delete-form{display:inline-flex;margin:0;padding:0;align-items:center}
.btn-danger{background:#fff1f1!important;border:1px solid #efb7b7!important;color:#a51f2b!important}
.btn-danger:hover{background:#ffe3e3!important;border-color:#df8585!important}
.loan-actions-cell{min-width:260px;width:260px}
.loan-actions-heading{min-width:260px}
@media(max-width:760px){.master-row-actions,.loan-row-actions{gap:6px}.loan-actions-cell,.loan-actions-heading{min-width:250px;width:250px}}

/* v3.21.3 — targeted UI/UX refinement for Loan 360, Payment Operations and Import Control Center */
/* Shared page rhythm and financial-data readability */
.page-head{gap:24px;align-items:center;margin-bottom:22px}
.page-head h1{letter-spacing:-.035em;line-height:1.12}
.page-head p{max-width:760px;line-height:1.65}
.kpi-grid{gap:14px;margin:20px 0}
.kpi-card{min-width:0;padding:20px 22px;border:1px solid #e1e7f0;border-radius:18px;background:linear-gradient(145deg,#fff 0%,#fbfcff 100%);box-shadow:0 5px 18px rgba(25,43,78,.035)}
.kpi-card>span{display:block;margin-bottom:9px;color:#63728a;font-size:12px;font-weight:650;line-height:1.45}
.kpi-card>strong{display:inline-block;color:#152238;font-size:clamp(20px,1.7vw,27px);font-weight:760;letter-spacing:-.035em;line-height:1.25;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.kpi-card>small{display:block;margin-top:7px;color:#74839b;font-size:11px;line-height:1.55}
body:has(.loan-detail-lower) .panel{margin-bottom:18px;border:1px solid #e0e7f1;border-radius:20px;box-shadow:0 8px 28px rgba(28,43,70,.035);overflow:hidden}
body:has(.loan-detail-lower) .panel-head{gap:18px;padding:20px 22px;border-bottom:1px solid #e7ecf4}
body:has(.loan-detail-lower) .panel-title{font-size:15px;font-weight:760;letter-spacing:-.015em}
body:has(.loan-detail-lower) .panel-sub{max-width:850px;margin-top:6px;font-size:12px;line-height:1.65}
body:has(.loan-detail-lower) .grid-2[style*="margin-bottom"]{gap:14px;padding:16px 18px 0}
body:has(.loan-detail-lower) .grid-2[style*="margin-bottom"] .kpi-card{padding:17px 18px;background:#f8faff;box-shadow:none}
body:has(.loan-detail-lower) .table-wrap{margin:0 18px 18px;border:1px solid #e8edf4;border-radius:12px}
body:has(.loan-detail-lower) .data-table th{background:#f6f8fc;color:#66758c;font-size:10px;letter-spacing:.055em;text-transform:uppercase}
body:has(.loan-detail-lower) .data-table td,body:has(.loan-detail-lower) .data-table th{padding:13px 15px;white-space:nowrap}
body:has(.loan-detail-lower) .loan-detail-lower{gap:18px;align-items:start}
body:has(.loan-detail-lower) .loan-detail-lower>.panel{min-width:0}
/* Payment operations: a compact, task-first import workspace */
body:has(.report-cards) .report-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:22px 0 16px}
body:has(.report-cards) .report-card{min-width:0;padding:19px 20px;border:1px solid #e1e8f2;border-radius:17px;background:#fff;box-shadow:0 5px 20px rgba(25,43,78,.03)}
body:has(.report-cards) .report-card>span{font-size:10px;font-weight:750;letter-spacing:.09em;text-transform:uppercase;color:#7b8aa2}
body:has(.report-cards) .report-card>strong{display:block;margin:9px 0 7px;color:#17243a;font-size:17px;font-weight:750}
body:has(.report-cards) .report-card p{margin:0;color:#73839b;font-size:12px;line-height:1.6}
body:has(.report-cards) .panel{margin-bottom:18px;border:1px solid #e0e7f1;border-radius:19px;box-shadow:0 7px 24px rgba(28,43,70,.035);overflow:hidden}
body:has(.report-cards) .panel-head{padding:19px 22px;border-bottom:1px solid #e8edf5;gap:14px}
body:has(.report-cards) .panel-title{font-size:15px;font-weight:760}
body:has(.report-cards) .panel-sub{font-size:12px;line-height:1.6;margin-top:5px}
body:has(.report-cards) form.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px;padding:22px}
body:has(.report-cards) form.form-grid .field{display:flex;flex-direction:column;gap:8px;min-width:0;margin:0}
body:has(.report-cards) form.form-grid .field-wide{grid-column:1/-1;padding-top:2px}
body:has(.report-cards) form.form-grid label{color:#52627b;font-size:12px;font-weight:700;line-height:1.4}
body:has(.report-cards) form.form-grid .form-control{width:100%;min-width:0;min-height:46px;padding:11px 13px;border:1px solid #d8e1ee;border-radius:11px;background:#fff;color:#1d2b40;font-size:13px;box-shadow:none}
body:has(.report-cards) form.form-grid .form-control:focus{outline:none;border-color:#7775ff;box-shadow:0 0 0 3px rgba(99,96,255,.12)}
body:has(.report-cards) form.form-grid small{color:#7a8aa3;font-size:11px;line-height:1.55}
body:has(.report-cards) form.form-grid .btn{min-height:44px;padding:0 20px}
body:has(.report-cards) .data-table{min-width:980px}
body:has(.report-cards) .data-table th{background:#f7f9fc;color:#65758e;font-size:10px;letter-spacing:.05em;text-transform:uppercase}
body:has(.report-cards) .data-table td,body:has(.report-cards) .data-table th{padding:13px 14px}
body:has(.report-cards) .data-table td small{display:block;margin-top:4px;color:#7b8aa0;font-size:10px}
/* Import Control Center: consistent action grid, whitespace and responsive sections */
.data-mis-shell{display:flex;flex-direction:column;gap:18px;min-width:0}
.data-mis-shell .data-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(380px,.95fr);align-items:center;gap:28px;padding:30px 32px!important;border:1px solid #dfe7f2;border-radius:24px;overflow:hidden}
.data-mis-shell .data-hero h1{margin:10px 0 12px;font-size:clamp(28px,3vw,36px);letter-spacing:-.04em;line-height:1.15}
.data-mis-shell .data-hero p{max-width:640px;line-height:1.7}
.data-mis-shell .report-hero-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0}
.data-mis-shell .report-hero-actions .btn{display:flex;justify-content:center;align-items:center;min-height:46px;padding:10px 14px;text-align:center;white-space:normal;line-height:1.35}
.data-mis-shell .report-panel{min-width:0;margin:0!important;padding:22px;border:1px solid #dfe7f1;border-radius:20px;background:#fff;box-shadow:0 6px 22px rgba(26,42,73,.03);overflow:hidden}
.data-mis-shell>.panel-pro.report-panel[style*="display:flex"]{align-items:center;gap:24px;padding:22px 24px!important}
.data-mis-shell .section-kicker{display:inline-block;color:#6667ff;font-size:10px;font-weight:800;letter-spacing:.11em;line-height:1.5;text-transform:uppercase}
.data-mis-shell .report-panel h2{font-size:18px;line-height:1.35;letter-spacing:-.025em;margin:7px 0 6px!important}
.data-mis-shell .report-panel p{font-size:12px;line-height:1.65;color:#75849b}
.data-mis-shell .report-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0}
.data-mis-shell .report-kpi{min-width:0;min-height:142px;padding:20px;border:1px solid #e0e7f1;border-radius:18px;box-shadow:0 5px 18px rgba(25,43,78,.025);overflow:hidden}
.data-mis-shell .report-kpi .rk-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.data-mis-shell .report-kpi .rk-top span{font-size:10px;font-weight:750;letter-spacing:.07em;text-transform:uppercase;color:#7b8ba3}
.data-mis-shell .report-kpi>strong{display:block;margin:16px 0 5px;font-size:clamp(23px,2vw,29px);line-height:1.2;letter-spacing:-.035em;overflow-wrap:anywhere}
.data-mis-shell .report-kpi>small{font-size:11px;line-height:1.5;color:#8492a8}
.data-mis-shell .report-filter{display:flex;align-items:center;justify-content:space-between;gap:22px;flex-wrap:wrap;margin:0;padding:18px 20px;border:1px solid #dfe7f1;border-radius:18px;background:#fff}
.data-mis-shell .data-filter-form{display:flex;align-items:end;gap:10px;flex-wrap:wrap}
.data-mis-shell .data-filter-form label{display:flex;flex-direction:column;gap:7px;min-width:150px}
.data-mis-shell .data-filter-form label>span{font-size:10px;font-weight:750;letter-spacing:.07em;text-transform:uppercase;color:#7b8ba3}
.data-mis-shell .data-filter-form select{min-height:42px;padding:9px 12px;border:1px solid #dce4ef;border-radius:10px;background:#fff;color:#26364d;font-size:12px}
.data-mis-shell .data-filter-form .btn{min-height:42px}
.data-mis-shell .report-grid-two{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,.8fr);gap:18px;min-width:0}
.data-mis-shell .report-grid-two>.report-panel{min-width:0}
.data-mis-shell .panel-pro-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}
.data-mis-shell .data-table-wrap{max-width:100%;overflow:auto;border:1px solid #e8edf4;border-radius:12px}
.data-mis-shell .pro-data-table{min-width:760px}
.data-mis-shell .pro-data-table th{background:#f6f8fc;color:#687891;font-size:10px;letter-spacing:.045em;text-transform:uppercase}
.data-mis-shell .pro-data-table td,.data-mis-shell .pro-data-table th{padding:12px 13px}
.data-mis-shell .control-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.data-mis-shell .control-metrics>div{min-width:0;padding:14px;border:1px solid #e7edf5;border-radius:12px;background:#fafbfe}
.data-mis-shell .control-metrics span{display:block;color:#7a8aa2;font-size:10px;line-height:1.5}
.data-mis-shell .control-metrics strong{display:block;margin-top:6px;color:#1c2a40;font-size:14px;overflow-wrap:anywhere}
@media(max-width:1100px){.data-mis-shell .data-hero{grid-template-columns:1fr;gap:20px}.data-mis-shell .report-grid-two{grid-template-columns:minmax(0,1fr)}.data-mis-shell .report-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.page-head{align-items:flex-start;flex-direction:column}.page-head .actions{display:flex;flex-wrap:wrap;width:100%}.page-head .actions .btn{flex:1 1 auto}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px}.kpi-card{padding:15px}.kpi-card>strong{font-size:21px}body:has(.report-cards) .report-cards{grid-template-columns:1fr;gap:10px}body:has(.report-cards) form.form-grid{grid-template-columns:1fr;padding:16px}body:has(.report-cards) form.form-grid .field-wide{grid-column:auto}.data-mis-shell .data-hero{padding:22px 18px!important}.data-mis-shell .report-hero-actions{grid-template-columns:1fr 1fr}.data-mis-shell .report-panel{padding:17px}.data-mis-shell .report-filter{align-items:stretch}.data-mis-shell .data-filter-form{width:100%}.data-mis-shell .data-filter-form label{flex:1 1 140px}.data-mis-shell>.panel-pro.report-panel[style*="display:flex"]{align-items:flex-start;flex-direction:column}.data-mis-shell .report-kpis{gap:10px}.data-mis-shell .report-kpi{padding:15px;min-height:125px}}
@media(max-width:480px){.data-mis-shell .report-hero-actions{grid-template-columns:1fr}.data-mis-shell .report-kpis{grid-template-columns:1fr 1fr}.data-mis-shell .report-kpi>strong{font-size:22px}.data-mis-shell .data-filter-form{display:grid;grid-template-columns:1fr;width:100%}.data-mis-shell .data-filter-form label{min-width:0}.data-mis-shell .control-metrics{grid-template-columns:1fr 1fr}.page-head .actions .btn{width:100%}}


/* LDCMS v3.21.4 — application-wide UX system refresh */
:root{--bg:#f3f6fb;--surface:#fff;--surface2:#f8faff;--ink:#142238;--muted:#697991;--line:#e1e8f2;--primary:#5b5ff7;--primary2:#7775ff;--shadow:0 8px 26px rgba(23,39,68,.045);--radius:16px}
html{scroll-padding-top:92px}body{font-size:13px;line-height:1.5;-webkit-font-smoothing:antialiased}button,a,input,select,textarea{outline-offset:3px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(91,95,247,.32)}
.sidebar{width:260px;padding:18px 13px 14px;box-shadow:8px 0 28px rgba(12,25,47,.08)}.main{margin-left:260px}.brand{padding-bottom:15px}.nav-section{padding-top:15px}.nav a{min-height:40px;font-size:12px;padding:7px 9px}.nav-icon{flex:0 0 28px}.nav a.active{background:rgba(101,105,255,.17);box-shadow:inset 3px 0 #7775ff}.topbar{height:auto;min-height:76px;padding:13px 26px;gap:18px}.topbar-right{flex-wrap:wrap;justify-content:flex-end}.page-title{font-size:19px}.content{padding:27px 28px 46px;max-width:1900px}.page-head{align-items:center;margin-bottom:22px}.page-head h1{font-size:clamp(25px,2.2vw,32px);letter-spacing:-.035em}.page-head p{font-size:13px;line-height:1.65;max-width:850px}.eyebrow{font-size:10px;letter-spacing:.12em}.actions{align-items:center}.btn{min-height:38px;padding:10px 14px;font-size:12px;border-radius:10px;white-space:normal;line-height:1.3}.btn-small,.btn-sm{min-height:31px;padding:7px 10px;font-size:11px}.btn-primary{box-shadow:0 5px 14px rgba(91,95,247,.14)}.btn:hover{transform:translateY(-1px)}
.panel,.panel-pro,.report-panel{border-radius:16px;box-shadow:var(--shadow);border-color:var(--line)}.panel-head,.panel-pro-head{padding:17px 20px;gap:14px}.panel-title{font-size:13px;line-height:1.4}.panel-sub{font-size:11px;line-height:1.6;max-width:950px}.panel-body{padding:20px}.report-panel{padding:0}.report-panel>.panel-pro-head{padding:20px 22px}.section-kicker{font-size:9px;letter-spacing:.11em}.report-panel h2,.panel-pro-head h2{font-size:17px;line-height:1.35;margin:6px 0}.report-panel p,.panel-pro-head p{font-size:11px;line-height:1.65;color:#74839a;max-width:760px}.head-badge{font-size:10px;padding:6px 10px;white-space:nowrap}
.kpi-grid{gap:14px}.kpi,.kpi-card,.report-kpi{border-radius:16px;box-shadow:0 4px 15px rgba(22,38,65,.035)}.kpi-card{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;min-height:112px;padding:19px 20px;background:#fff;gap:0}.kpi-card>span{display:block;margin:0 0 10px;color:#66758d;font-size:12px;line-height:1.45;font-weight:650}.kpi-card>strong{display:block;font-size:clamp(21px,1.75vw,28px);line-height:1.25;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.kpi-card>small{display:block;margin-top:7px;font-size:11px;line-height:1.5;color:#78879d}.loan-detail-lower{align-items:start}.repayment-summary{padding:16px;gap:14px;margin:0!important;border-bottom:1px solid var(--line);background:#f9fbff}.repayment-summary .kpi-card{min-height:0;border-radius:12px;background:#fff;padding:15px 17px;box-shadow:none}.repayment-summary .kpi-card>span{font-size:12px}.repayment-summary .kpi-card>strong{font-size:23px}
/* Forms: consistent label hierarchy, usable controls and predictable grids */
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:22px 20px 24px;align-items:start}.form-grid .field{min-width:0}.form-grid .field-wide{grid-column:1/-1}.field label,.form-grid label,.loan-edit-field label{display:block;margin:0 0 7px;color:#3f5068;font-size:11px;font-weight:750;line-height:1.45}.field small,.form-grid small{display:block;margin-top:7px;color:#7b8aa0;font-size:10px;line-height:1.55}.form-control,.field input,.field select,.field textarea,.form-grid input,.form-grid select,.form-grid textarea,.data-filter-form select,.data-filter-form input{width:100%;min-width:0;min-height:43px;padding:10px 12px;border:1px solid #d8e1ed;border-radius:10px;background:#fff;color:#17263b;font-size:12px;box-shadow:0 1px 2px rgba(17,35,63,.015);transition:border-color .15s,box-shadow .15s}.form-control:focus,.field input:focus,.field select:focus,.field textarea:focus,.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:#8b8eff;box-shadow:0 0 0 3px rgba(91,95,247,.11)}.form-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;padding-top:8px}.form-panel{overflow:hidden}.pro-editor-form{padding:22px}.editor-grid{gap:17px}.loan-edit-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:17px 20px;padding:23px}.loan-edit-form-head{padding:18px 23px}.loan-edit-field .form-control{min-height:43px}.loan-edit-notice{font-size:11px;line-height:1.6}
/* Tables: strong headers, comfortable rows, consistent horizontal scroll */
.table-wrap,.data-table-wrap,.pro-table-wrap{max-width:100%;overflow:auto;overscroll-behavior-x:contain;border-radius:0 0 15px 15px}.data-table,.pro-table,.pro-data-table{width:100%;border-collapse:separate;border-spacing:0}.data-table th,.pro-table th,.pro-data-table th{padding:12px 14px;background:#f6f8fc;color:#66768e;font-size:10px;letter-spacing:.065em;font-weight:800;line-height:1.45;border-bottom:1px solid #e3e9f2}.data-table td,.pro-table td,.pro-data-table td{padding:13px 14px;color:#35445b;font-size:11px;line-height:1.5;border-bottom:1px solid #edf1f6;vertical-align:middle}.data-table td strong,.pro-data-table td strong{color:#1b2b42}.data-table tbody tr:hover,.pro-data-table tbody tr:hover{background:#f8faff}.data-table td small{font-size:10px;line-height:1.5}.data-table .empty{padding:30px 20px;text-align:center;color:#7a899e;white-space:normal;line-height:1.6}.status-pill,.badge{font-size:10px;line-height:1.25;padding:5px 9px;white-space:nowrap}.toolbar,.records-tools{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}.searchbox{min-height:42px;min-width:min(320px,100%);border-radius:11px}.searchbox input{font-size:12px}.filter-panel{padding:15px 17px}.filter-links{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.filter-links .btn{min-height:32px}.stat-strip{gap:12px;margin-bottom:16px}.mini-stat{border-radius:12px;padding:15px 16px}
/* Dashboards and analytics */
.dashboard-grid{gap:18px}.dashboard-grid>.panel,.grid-2>.panel{min-width:0}.report-hero-pro,.data-hero{border-radius:20px;padding:30px;min-height:0;gap:28px}.report-hero-pro h1,.data-hero h1{font-size:clamp(27px,2.4vw,35px);letter-spacing:-.04em}.report-hero-pro p,.data-hero p{font-size:13px;line-height:1.7}.report-hero-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-content:center;min-width:min(390px,45%)}.report-hero-actions .btn{min-height:45px;padding:12px 14px}.report-meta{font-size:11px;line-height:1.6}.report-kpis{gap:14px;margin:16px 0}.report-kpi{padding:20px;min-height:135px}.report-kpi .rk-top span{font-size:10px;line-height:1.4}.report-kpi>strong{font-size:clamp(23px,2vw,30px);line-height:1.25}.report-kpi>small{font-size:11px;line-height:1.5}.report-grid-two{gap:16px;margin-bottom:16px;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr)}.report-filter{padding:17px 20px;border-radius:15px;gap:16px}.data-filter-form{gap:10px}.data-filter-form label{min-width:155px}.data-filter-form label>span{font-size:10px}.control-metrics{gap:10px;padding:18px 20px}.control-metrics>div{padding:13px;border-radius:11px}.control-metrics span{font-size:10px;line-height:1.45}.control-metrics strong{font-size:14px;line-height:1.4}.exception-callout{margin:0 20px 20px;padding:13px 14px}.exception-callout strong{font-size:11px}.exception-callout small{font-size:10px;line-height:1.55}.report-empty{padding:30px 22px}.report-empty strong{font-size:12px}.report-empty span{font-size:10px;line-height:1.6}
/* Import Control Center: remove crowded inline layouts and establish a clear action hierarchy */
.import-template-callout{margin-top:16px!important;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;padding:22px 24px!important;min-width:0}.import-template-callout>div:first-child{min-width:240px;flex:1 1 360px}.import-template-callout h2{font-size:17px;line-height:1.35;margin:6px 0}.import-template-callout p{margin:0;line-height:1.6}.import-template-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.import-template-actions .btn{min-height:42px}.data-grid-wide{grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr)}
/* Payment operations: group inputs into a balanced two-column workflow */
.payment-process-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 16px}.payment-process-cards .report-card{min-width:0;padding:20px 21px;border:1px solid var(--line);border-radius:15px;background:#fff;box-shadow:var(--shadow)}.payment-process-cards .report-card>span{font-size:10px;line-height:1.45;letter-spacing:.08em}.payment-process-cards .report-card>strong{display:block;margin-top:8px;font-size:16px;line-height:1.4}.payment-process-cards .report-card p{font-size:11px;line-height:1.6;margin:8px 0 0}.payment-import-panel .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 18px;padding:22px}.payment-import-form .field-wide{display:flex;align-items:center;justify-content:flex-start}.payment-import-form .field-wide .btn{min-width:190px;min-height:43px}.payment-import-panel .panel-head{padding:19px 22px}.payment-import-panel+.panel{margin-top:16px}
/* Master modules, branch cards, edit forms and control panels */
.module-hero{padding:24px;border-radius:17px;gap:20px}.module-hero-main{min-width:0}.module-actions{gap:10px}.module-action{min-height:40px;border-radius:10px}.module-stats{gap:12px}.module-stat{padding:15px;border-radius:12px}.branch-cards{gap:14px}.branch-card{border-radius:15px;padding:20px}.branch-card-top{gap:12px}.branch-card-foot{margin-top:16px;padding-top:14px}.report-cards{gap:14px;margin:0 0 16px}.report-card{min-width:0;padding:19px 20px;border:1px solid var(--line);border-radius:15px;background:#fff;box-shadow:var(--shadow)}.report-card>span{font-size:10px;letter-spacing:.07em}.report-card>strong{font-size:16px;line-height:1.4;margin-top:8px}.report-card p{font-size:11px;line-height:1.6;margin-top:8px}.grid-2{gap:16px}.match-layout{gap:16px}.candidate{padding:14px;border-radius:12px}.transaction-card{padding:18px;border-radius:14px}.steps{gap:10px}.step{border-radius:12px;padding:13px}
/* Alerts, errors and confirmations */
.msg{border-radius:12px;padding:12px 15px;margin:0 0 14px;font-size:12px;line-height:1.5}.field-error,.form-error{font-size:11px;line-height:1.5;color:#b42332}.validation-dialog{border-radius:16px;box-shadow:0 24px 80px rgba(15,23,42,.24)}.exception-panel{border-color:#f1d9dc}.empty-pro{padding:28px;text-align:center;line-height:1.6}
/* Responsive behavior */
@media(max-width:1250px){.topbar{padding:12px 20px}.content{padding:23px 20px 36px}.topbar-right{gap:7px}.system-status{display:none}.report-grid-two,.data-grid-wide{grid-template-columns:minmax(0,1fr)}.report-hero-actions{min-width:300px}}
@media(max-width:1000px){.sidebar{width:250px}.main{margin-left:250px}.topbar{align-items:flex-start}.topbar-right{max-width:55%}.global-branch-switcher{flex-wrap:wrap}.global-branch-switcher select{max-width:190px!important}.dashboard-grid{grid-template-columns:minmax(0,1fr)}.loan-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-hero-pro,.data-hero{flex-direction:column;align-items:stretch}.report-hero-actions{width:100%;min-width:0;grid-template-columns:repeat(3,minmax(0,1fr))}.payment-process-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.sidebar{width:min(300px,86vw)}.main{margin-left:0}.topbar{position:sticky;min-height:66px;padding:10px 13px;align-items:center;gap:8px}.topbar-left{gap:9px;min-width:0}.topbar-left>div{min-width:0}.mobile-toggle{display:inline-flex;align-items:center;justify-content:center}.sidebar-toggle{display:none}.page-title{font-size:15px;line-height:1.35}.topbar .eyebrow{font-size:8px}.topbar-right{max-width:58%;gap:6px;align-items:center}.topbar-right .command-btn{display:none}.global-branch-switcher{max-width:100%;gap:4px!important}.global-branch-switcher label{display:none}.global-branch-switcher select{width:130px;min-width:0!important;max-width:130px!important;padding:7px!important;font-size:10px}.icon-btn{width:33px;height:33px;flex:0 0 33px}.content{padding:18px 13px 30px}.page-head{align-items:flex-start;flex-direction:column;gap:13px;margin-bottom:17px}.page-head h1{font-size:26px}.page-head p{font-size:12px}.page-head .actions{width:100%;display:flex;flex-wrap:wrap}.page-head .actions .btn{flex:1 1 auto}.kpi-grid,.report-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px}.kpi-card{padding:15px;min-height:100px}.kpi-card>strong{font-size:22px}.panel-head,.panel-pro-head{padding:15px;align-items:flex-start}.panel-body{padding:15px}.report-hero-pro,.data-hero{padding:22px 17px;border-radius:16px}.report-hero-pro h1,.data-hero h1{font-size:26px}.report-hero-actions{grid-template-columns:repeat(2,minmax(0,1fr));min-width:0}.report-hero-actions .btn{min-height:42px;font-size:11px;padding:10px}.report-kpi{min-height:118px;padding:15px}.report-kpi>strong{font-size:23px}.report-filter{align-items:stretch;padding:15px}.data-filter-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.data-filter-form label{min-width:0}.data-filter-form .btn{align-self:end}.form-grid,.payment-import-panel .form-grid{grid-template-columns:minmax(0,1fr)!important;padding:16px;gap:15px}.form-grid .field-wide{grid-column:auto}.payment-process-cards{grid-template-columns:minmax(0,1fr);gap:10px}.payment-process-cards .report-card{padding:16px}.payment-import-form .field-wide .btn{width:100%}.import-template-callout{align-items:stretch;padding:17px!important;gap:14px}.import-template-callout>div:first-child{flex-basis:auto}.import-template-actions{display:grid;grid-template-columns:minmax(0,1fr)}.import-template-actions .btn{width:100%}.loan-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:16px}.loan-edit-form-head{padding:16px}.loan-edit-notice{margin:0 16px 16px}.loan-edit-footer{padding:14px 16px}.toolbar{align-items:stretch}.searchbox,.searchbox.compact{width:100%;min-width:0}.toolbar-meta{margin-left:0}.stat-strip{grid-template-columns:repeat(2,minmax(0,1fr))!important}.grid-2,.dashboard-grid{grid-template-columns:minmax(0,1fr)}.report-grid-two{grid-template-columns:minmax(0,1fr)}.table-wrap,.data-table-wrap,.pro-table-wrap{border-radius:0 0 13px 13px}.data-table,.pro-table,.pro-data-table{min-width:720px}.table-wrap:focus-visible{outline:3px solid rgba(91,95,247,.25)}.module-hero{padding:18px}.module-actions{display:flex;flex-wrap:wrap}.module-action{flex:1 1 130px}.branch-cards{grid-template-columns:minmax(0,1fr)}.branch-card{padding:16px}.report-cards{grid-template-columns:minmax(0,1fr)}.report-card{padding:16px}.bvps-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.control-metrics{padding:15px}.exception-callout{margin:0 15px 15px}.match-layout{grid-template-columns:minmax(0,1fr)}.form-actions{flex-direction:column-reverse}.form-actions .btn{width:100%}}
@media(max-width:480px){.topbar-right .icon-btn:last-child{display:none}.global-branch-switcher select{width:110px;max-width:110px!important}.page-head h1{font-size:24px}.actions .btn{flex:1 1 100%}.kpi-grid,.report-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}.kpi-card{padding:13px}.kpi-card>span{font-size:11px}.kpi-card>strong{font-size:20px}.report-hero-actions{grid-template-columns:minmax(0,1fr)}.data-filter-form{grid-template-columns:minmax(0,1fr)}.data-filter-form .btn{width:100%}.loan-edit-grid{grid-template-columns:minmax(0,1fr)}.stat-strip{grid-template-columns:minmax(0,1fr)!important}.bvps-grid{grid-template-columns:minmax(0,1fr)}.report-kpi>strong{font-size:21px}.repayment-summary{grid-template-columns:minmax(0,1fr)}.panel-head{flex-wrap:wrap}.panel-head .actions{width:100%}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* v3.22 — monetary values consistently use two decimals; MIS KPI figures stay on one line */
.report-kpi{min-width:0}
.report-kpi>strong{white-space:nowrap;overflow:visible;font-size:clamp(13px,1.45vw,22px);letter-spacing:-.045em;line-height:1.15;font-variant-numeric:tabular-nums}
.report-kpi small{line-height:1.35}
@media (max-width:1100px){.report-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.report-kpi>strong{font-size:clamp(14px,2vw,21px)}}
@media (max-width:620px){.report-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.report-kpi{padding:12px}.report-kpi>strong{font-size:clamp(13px,3.2vw,18px)}}

/* v3.23 — MIS / Command Center KPI readability and responsive layout */
.report-kpis{grid-template-columns:repeat(6,minmax(0,1fr));align-items:stretch}
.report-kpis-secondary{grid-template-columns:repeat(3,minmax(0,1fr))}
.report-kpi{min-width:0;display:flex;flex-direction:column;justify-content:flex-start}
.report-kpi .rk-top{min-height:30px;gap:8px}
.report-kpi .rk-top span{line-height:1.35;max-width:calc(100% - 36px)}
.report-kpi>strong{display:block;max-width:100%;white-space:nowrap;overflow:visible;text-overflow:clip;font-size:clamp(12px,1.15vw,18px);line-height:1.25;letter-spacing:-.035em;font-variant-numeric:tabular-nums;margin-top:13px}
.report-kpi small{line-height:1.45;min-height:2.5em}
.report-hero-actions{display:flex;flex-wrap:wrap;gap:8px}
@media (max-width:1180px){
  .report-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}
  .report-kpi>strong{font-size:clamp(14px,1.7vw,20px)}
}
@media (max-width:640px){
  .report-kpis,.report-kpis-secondary{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .report-kpi{padding:12px}
  .report-kpi>strong{font-size:clamp(12px,3.1vw,17px);letter-spacing:-.04em}
  .report-kpi .rk-top{font-size:8px}
}
@media (max-width:380px){
  .report-kpis,.report-kpis-secondary{grid-template-columns:minmax(0,1fr)}
}

/* Phoenix Capital brand theme override */
:root {
  --primary: #c33233;
  --primary2: #e25a5b;
  --red: #c33233;
  --focus-ring: 0 0 0 4px rgba(195, 50, 51, .12);
}
.eyebrow.accent,
.text-link,
.nav a.active .nav-icon,
.sidebar-toggle:hover,
.icon-btn:hover {
  color: #c33233;
}
.nav a.active {
  background: linear-gradient(90deg, rgba(195,50,51,.24), rgba(195,50,51,.07));
  box-shadow: inset 3px 0 #c33233;
}
.nav a.active:after {
  background: #e25a5b;
  box-shadow: 0 0 12px rgba(226,90,91,.65);
}
.brand-mark,
.module-icon,
.upload-orb {
  background: linear-gradient(145deg, #c33233, #e25a5b);
  box-shadow: 0 8px 24px rgba(195,50,51,.20);
}
.btn-primary {
  background: linear-gradient(135deg, #c33233, #e25a5b);
  box-shadow: 0 8px 22px rgba(195,50,51,.20);
}
input:focus,
select:focus,
textarea:focus,
.field input:focus,
.field select:focus,
.field textarea:focus {
  border-color: #c33233 !important;
  box-shadow: 0 0 0 3px rgba(195,50,51,.10) !important;
}

/* LDCMS PHOENIX THEME FIX 2026-10 */
:root {
  --primary: #c33233 !important;
  --primary2: #e25a5b !important;
  --red: #c33233 !important;
  --nav: #172b4d !important;
  --nav2: #0d1b2d !important;
  --focus-ring: 0 0 0 3px rgba(195,50,51,.18) !important;
}

/* Main actions, selected navigation and brand elements */
.btn-primary,
button.btn-primary,
a.btn-primary {
  background: linear-gradient(135deg,#c33233,#e25a5b) !important;
  border-color: #c33233 !important;
  color: #fff !important;
}
.nav a.active {
  background: linear-gradient(90deg,rgba(195,50,51,.26),rgba(195,50,51,.08)) !important;
  box-shadow: inset 3px 0 #c33233 !important;
}
.nav a.active .nav-icon {
  background: rgba(195,50,51,.20) !important;
  color: #fff !important;
}
.brand-mark,
.module-icon,
.upload-orb {
  background: linear-gradient(145deg,#c33233,#e25a5b) !important;
  box-shadow: 0 8px 24px rgba(195,50,51,.20) !important;
}

/* Replace hard-coded blue/purple interactive accents */
.editor-grid input:focus,
.editor-grid select:focus,
.editor-grid textarea:focus,
input:focus,
select:focus,
textarea:focus,
.field input:focus,
.field select:focus,
.field textarea:focus {
  border-color: #c33233 !important;
  box-shadow: 0 0 0 3px rgba(195,50,51,.12) !important;
}
.sidebar-toggle:hover,
.icon-btn:hover,
.text-link,
.eyebrow.accent {
  color: #c33233 !important;
}
.avatar {
  background: linear-gradient(145deg,#172b4d,#344b70) !important;
}

/* LDCMS PHOENIX CAPITAL BRAND FINISH */
:root {
  --primary: #c33233 !important;
  --primary2: #e25a5b !important;
  --red: #c33233 !important;
  --focus-ring: 0 0 0 3px rgba(195,50,51,.16) !important;
}
.brand-logo {
  width: 60px;
  height: 52px;
  min-width: 60px;
  padding: 3px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  background: #fff !important;
  border: 1px solid rgba(195,50,51,.18);
  border-radius: 10px;
}
.brand-logo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.nav a.active {
  background: linear-gradient(90deg,rgba(195,50,51,.24),rgba(195,50,51,.07)) !important;
  box-shadow: inset 3px 0 #c33233 !important;
}
.btn-primary, button.btn-primary, a.btn-primary {
  background: linear-gradient(135deg,#c33233,#e25a5b) !important;
  border-color: #c33233 !important;
  color: #fff !important;
}
.eyebrow.accent, .text-link, .reset-link {
  color: #c33233 !important;
}
input:focus, select:focus, textarea:focus {
  border-color: #c33233 !important;
  box-shadow: 0 0 0 3px rgba(195,50,51,.12) !important;
}
.kpi:after, .rk-glow {
  background: radial-gradient(circle,rgba(195,50,51,.08),transparent 70%) !important;
}
.meter span, .report-progress span {
  background: linear-gradient(90deg,#c33233,#e25a5b) !important;
}

/* LDCMS READABILITY THEME PATCH 3.34 */
:root {
  --primary: #c33233;
  --primary2: #e25a5b;
  --red: #c33233;
}
body { font-size: 14px; line-height: 1.5; }
.topbar .eyebrow {
  color: #34445a;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .02em;
  text-transform: none;
}
.field label { font-size: 12px; color: #34445a; }
.field input, .field select, .field textarea { font-size: 13px; }
.data-table th, .data-table td { font-size: 12px; }
.btn-primary {
  background: linear-gradient(135deg, #c33233, #e25a5b);
  box-shadow: 0 5px 14px rgba(195,50,51,.16);
}
.nav a.active {
  background: linear-gradient(90deg, rgba(195,50,51,.24), rgba(195,50,51,.07));
  box-shadow: inset 3px 0 #e25a5b;
}
input:focus-visible, select:focus-visible, textarea:focus-visible,
button:focus-visible, a:focus-visible {
  outline: 3px solid rgba(195,50,51,.3);
  outline-offset: 2px;
}
body.futuristic-dark {
  --bg: #07111f;
  --surface: #0b1728;
  --surface2: #0e1c2e;
  --ink: #e8eef8;
  --muted: #b1bfd2;
  --line: #26384f;
  background: var(--bg);
  color: var(--ink);
}
body.futuristic-dark .topbar,
body.futuristic-dark .panel,
body.futuristic-dark .kpi,
body.futuristic-dark .branch-card,
body.futuristic-dark .report-card,
body.futuristic-dark .insight-card,
body.futuristic-dark .mini-stat,
body.futuristic-dark .quick,
body.futuristic-dark .panel-pro {
  background: #0b1728;
  border-color: #26384f;
  color: #e8eef8;
}
body.futuristic-dark .page-title,
body.futuristic-dark .page-head h1,
body.futuristic-dark .panel-title,
body.futuristic-dark .kpi-value,
body.futuristic-dark .data-table td {
  color: #e8eef8;
}
body.futuristic-dark .topbar .eyebrow,
body.futuristic-dark .page-head p,
body.futuristic-dark .panel-sub,
body.futuristic-dark .field label,
body.futuristic-dark .kpi-label,
body.futuristic-dark .kpi-foot {
  color: #b1bfd2;
}
body.futuristic-dark .data-table th {
  background: #102035;
  color: #d5e0ef;
}
body.futuristic-dark .data-table td { border-color: #26384f; }
body.futuristic-dark input:not([type=checkbox]):not([type=radio]):not([type=file]),
body.futuristic-dark select,
body.futuristic-dark textarea {
  background: #0d1b2d;
  color: #e8eef8;
  border-color: #344b66;
}

/* PHOENIX CAPITAL MIS VISUAL FIX 3.35 */
:root {
  --primary: #c33233;
  --primary2: #e25a5b;
  --red: #c33233;
}

/* Match the local MIS banner and ensure strong text contrast. */
.report-hero-pro {
  background:
    radial-gradient(circle at 78% 20%, rgba(226,90,91,.24), transparent 27%),
    radial-gradient(circle at 92% 80%, rgba(255,190,170,.12), transparent 26%),
    linear-gradient(125deg, #281319 0%, #641f2a 55%, #7d3946 100%) !important;
  color: #fff !important;
}
.report-hero-pro h1,
.report-hero-pro h2 {
  color: #fff !important;
}
.report-hero-pro p,
.report-hero-pro .report-meta {
  color: #fff !important;
}
.report-hero-pro .section-kicker,
.report-hero-pro .eyebrow {
  color: #ffd0b0 !important;
}
.report-hero-pro .btn-secondary {
  background: #fff !important;
  color: #253047 !important;
  border-color: #fff !important;
}
.report-hero-pro .btn-secondary:hover {
  background: #fff2ed !important;
  color: #8e2028 !important;
}

/* Replace purple report accents with company red. */
.report-hero-pro .live-dot {
  background: #36d7a4;
}
.filter-icon,
.rk-top i,
.report-empty div {
  color: #c33233 !important;
}
.filter-icon {
  background: #fff0e5 !important;
}
.head-badge,
.rank-badge {
  background: #fff0e5 !important;
  color: #a82c31 !important;
}
.text-link,
.reset-link,
.section-kicker {
  color: #b52d35;
}
.meter span,
.report-progress span {
  background: linear-gradient(90deg, #c33233, #e25a5b);
}

/* Readable report labels and controls in light mode. */
.report-filter,
.report-kpi,
.insight-card,
.panel-pro {
  color: #18263b;
}
.report-kpi small,
.insight-card small,
.panel-pro-head p {
  color: #65758c;
}
.report-period-form input {
  color: #18263b;
}
.report-period-form input:focus,
.report-period-form select:focus {
  border-color: #c33233;
  outline-color: rgba(195,50,51,.25);
}

/* Keep report content readable when dark mode is selected. */
body.futuristic-dark .report-hero-pro {
  color: #fff !important;
}
body.futuristic-dark .report-hero-pro h1,
body.futuristic-dark .report-hero-pro h2,
body.futuristic-dark .report-hero-pro p,
body.futuristic-dark .report-hero-pro .report-meta {
  color: #fff !important;
}
body.futuristic-dark .report-kpi,
body.futuristic-dark .insight-card,
body.futuristic-dark .panel-pro {
  color: #e8eef8;
}
body.futuristic-dark .report-kpi small,
body.futuristic-dark .insight-card small,
body.futuristic-dark .panel-pro-head p {
  color: #aab8cb;
}
body.futuristic-dark .report-period-form input {
  background: #0d1b2d;
  color: #e8eef8;
  border-color: #26384f;
}
