*{margin:0;padding:0;box-sizing:border-box}
body{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Segoe UI Emoji","Apple Color Emoji","Noto Color Emoji",Tahoma,Geneva,sans-serif;background:#f0f2f5;color:#333}
.header{background:linear-gradient(135deg,#1a1a2e 0%,#16213e 50%,#0f3460 100%);color:#fff;padding:12px 24px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 3px 12px rgba(0,0,0,0.25)}
.header h1{font-size:20px;font-weight:700;letter-spacing:0.5px}
.header .subtitle{font-size:11px;color:#a0aec0;margin-top:1px}
.header .timestamp{font-size:11px;color:#a0aec0;text-align:right}
.tally-bar{background:linear-gradient(135deg,#064e3b,#065f46);color:#fff;padding:10px 30px;display:flex;justify-content:space-between;align-items:center;font-size:12px}
.tally-status{display:flex;align-items:center;gap:8px;font-size:12px}
.tally-dot{width:8px;height:8px;border-radius:50%;display:inline-block;background:#ffffff;box-shadow:0 0 6px rgba(255,255,255,0.85)}
.tally-dot.online{background:#ffffff;box-shadow:0 0 6px rgba(255,255,255,0.85)}
.tally-dot.offline{background:#ffffff;box-shadow:0 0 6px rgba(255,255,255,0.85)}
.tally-dot.loading{background:#ffffff;box-shadow:0 0 6px rgba(255,255,255,0.85);animation:tallyPulse 1s infinite}
@keyframes tallyPulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:0.4;transform:scale(0.85)}}
.tally-tx-count{font-weight:600;font-size:13px;background:linear-gradient(180deg,#ffffff 0%,#e2e8f0 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:#ffffff;margin-left:8px;letter-spacing:0.2px;display:inline-flex;align-items:center}
.filters{background:#fff;padding:10px 24px;display:flex;gap:15px;flex-wrap:wrap;align-items:center;box-shadow:0 2px 6px rgba(0,0,0,0.05);border-bottom:1px solid #e2e8f0}
.filter-group{display:flex;flex-direction:column;gap:3px}
.filter-group label{font-size:10px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:0.5px}
.filter-group select,.filter-group input{padding:6px 10px;border:1px solid #cbd5e1;border-radius:6px;font-size:12px;background:#f8fafc;min-width:150px}
.filter-group select:focus,.filter-group input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,0.1)}
.container{max-width:1400px;margin:0 auto;padding:20px}
.kpi-row{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-bottom:14px}
.kpi-card{background:#fff;border-radius:8px;padding:12px 14px;box-shadow:0 2px 6px rgba(0,0,0,0.05);border-left:4px solid #3b82f6;transition:transform 0.2s}
.kpi-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,0.08)}
.kpi-card .kpi-label{font-size:10px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:0.5px;margin-bottom:4px}
.kpi-card .kpi-value{font-size:18px;font-weight:700}
.kpi-card.income{border-left-color:#10b981}.kpi-card.income .kpi-value{color:#059669}
.kpi-card.expense{border-left-color:#ef4444}.kpi-card.expense .kpi-value{color:#dc2626}
.kpi-card.profit{border-left-color:#3b82f6}.kpi-card.profit .kpi-value{color:#2563eb}
.kpi-card.asset{border-left-color:#10b981}.kpi-card.asset .kpi-value{color:#059669}
.kpi-card.liability{border-left-color:#f59e0b}.kpi-card.liability .kpi-value{color:#d97706}
.kpi-card.networth{border-left-color:#8b5cf6}.kpi-card.networth .kpi-value{color:#7c3aed}
.section-title{font-size:17px;font-weight:800;color:#0f172a;margin:20px 0 14px;padding-bottom:8px;border-bottom:2px solid #e2e8f0}
.charts-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:15px}
.chart-card{background:#fff;border-radius:10px;padding:14px 16px;box-shadow:0 2px 8px rgba(0,0,0,0.05)}
.chart-card h3{font-size:13px;font-weight:600;color:#475569;margin-bottom:10px}
.chart-card canvas{max-height:260px}

/* Highlighted Cash & Bank Balances Section */
.cash-bank-highlight-container{background:linear-gradient(135deg,#f8fafc 0%,#f1f5f9 50%,#e2e8f0 100%);border:2px solid #cbd5e1;border-radius:18px;padding:24px 28px 28px 28px;margin-bottom:28px;box-shadow:0 6px 24px -4px rgba(15,23,42,0.08),0 2px 8px -2px rgba(15,23,42,0.04);position:relative}
.cash-bank-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:12px;padding-bottom:14px;border-bottom:2px solid #cbd5e1}
.cash-bank-header-left{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.cash-bank-header-icon{font-size:26px}
.cash-bank-header-title{font-size:20px;font-weight:800;color:#0f172a;letter-spacing:-0.2px}
.cash-bank-header-badge{background:#dbeafe;color:#1d4ed8;font-size:11px;font-weight:700;padding:4px 12px;border-radius:20px;text-transform:uppercase;letter-spacing:0.5px;border:1px solid #bfdbfe}
.cash-bank-header-hint{font-size:13px;color:#475569;font-weight:600}
.balance-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;margin-bottom:20px}
.balance-card{background:#fff;border-radius:12px;padding:16px 18px 18px 18px;box-shadow:0 2px 8px rgba(0,0,0,0.05);cursor:pointer;transition:all 0.25s ease;border:1.5px solid #e2e8f0;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between}
.balance-card:hover{transform:translateY(-2px);box-shadow:0 6px 18px rgba(0,0,0,0.08);border-color:#3b82f6}
.balance-card::after{content:'Click to view accounts →';position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(59,130,246,0.08));padding:5px;text-align:center;font-size:11px;color:#3b82f6;font-weight:600;opacity:0;transition:opacity 0.2s}
.balance-card:hover::after{opacity:1}
.bal-header{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:4px}
.bal-header .bal-icon{font-size:24px}
.bal-header .bal-title{font-size:15px;font-weight:700;color:#1e293b}
.bal-ob-top{font-size:11px;color:#64748b;margin-bottom:12px;padding-bottom:8px;border-bottom:1px dashed #e2e8f0;text-align:center}
.bal-ob-top .bal-ob-label{color:#64748b;font-weight:500}
.bal-ob-top .bal-ob-val{font-weight:700;margin-left:3px}
.bal-closing-section{text-align:center;padding:8px 0 10px 0}
.bal-closing-heading{font-size:15px;font-weight:700;color:#334155;text-transform:uppercase;letter-spacing:0.5px;margin-bottom:6px;text-align:center}
.bal-closing-val{font-size:23px;font-weight:800;line-height:1.2;text-align:center}
.bal-accounts-preview{margin-top:8px;padding-top:8px;border-top:1px dashed #e2e8f0}
.bal-acct-row{display:flex;justify-content:space-between;align-items:center;padding:4px 0;font-size:12px}
.bal-acct-row .bal-acct-name{color:#475569;font-weight:500}
.bal-acct-row .bal-acct-amt{font-weight:700}
.bal-na{font-size:13px;color:#94a3b8;font-style:italic;text-align:center;padding:12px 0}
@media(max-width:900px){.balance-row{grid-template-columns:1fr}}
.comparison-controls{display:flex;gap:12px;align-items:center;margin-bottom:12px;flex-wrap:wrap}
.comparison-controls select{padding:6px 10px;border:1px solid #cbd5e1;border-radius:6px;font-size:12px;background:#f8fafc}
.comparison-controls label{font-size:11px;font-weight:600;color:#64748b}
.table-container{background:#fff;border-radius:10px;padding:14px 16px;box-shadow:0 2px 8px rgba(0,0,0,0.05);overflow-x:auto;margin-bottom:20px}
.table-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;flex-wrap:wrap;gap:8px}
.table-controls input{padding:6px 12px;border:1px solid #cbd5e1;border-radius:6px;font-size:12px;width:260px}
.table-controls .row-count{font-size:11px;color:#64748b}
table{width:100%;border-collapse:collapse;font-size:12px}
thead th{background:#f1f5f9;padding:8px 8px;text-align:left;font-weight:600;color:#475569;border-bottom:2px solid #e2e8f0;cursor:pointer;white-space:nowrap;user-select:none}
thead th:hover{background:#e2e8f0}
thead th.sort-asc::after{content:" \25B2";font-size:10px}
thead th.sort-desc::after{content:" \25BC";font-size:10px}
tbody td{padding:6px 8px;border-bottom:1px solid #f1f5f9;white-space:nowrap}
tbody tr:hover{background:#f8fafc}
td.amt-dr{color:#dc2626;font-weight:600;text-align:right}
td.amt-cr{color:#059669;font-weight:600;text-align:right}
.neg{color:#dc2626}.pos{color:#059669}
.upload-zone{background:linear-gradient(135deg,#0f3460,#1a1a2e);border:2px dashed #4a90d9;border-radius:12px;padding:20px 25px;text-align:center;cursor:pointer;transition:all 0.3s;margin:12px 24px;position:relative}
.upload-zone:hover,.upload-zone.dragover{border-color:#60a5fa;background:linear-gradient(135deg,#16213e,#1e3a5f);box-shadow:0 0 20px rgba(96,165,250,0.2)}
.upload-zone .upload-icon{font-size:30px;margin-bottom:6px}
.upload-zone .upload-text{color:#a0c4ff;font-size:13px;font-weight:500}
.upload-zone .upload-hint{color:#6b8db5;font-size:11px;margin-top:2px}
.upload-zone input[type=file]{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}
.upload-zone .upload-success{color:#34d399;font-weight:600}
.upload-zone .upload-error{color:#f87171;font-weight:600}
.no-data-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.6);z-index:100;justify-content:center;align-items:center}
.drilldown-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.5);z-index:200;overflow-y:auto;padding:20px}
.drilldown-overlay.show{display:block}
.drilldown-page{background:#f0f2f5;min-height:100%;border-radius:12px;max-width:1200px;margin:0 auto;box-shadow:0 10px 40px rgba(0,0,0,0.3)}
.drilldown-header{background:linear-gradient(135deg,#1a1a2e 0%,#16213e 50%,#0f3460 100%);color:#fff;padding:14px 20px;border-radius:12px 12px 0 0;display:flex;justify-content:space-between;align-items:center}
.drilldown-header h2{font-size:16px;font-weight:700;letter-spacing:0.5px}
.drilldown-header .dd-breadcrumb{font-size:11px;color:#a0aec0;margin-top:2px}
.drilldown-header .dd-breadcrumb span{cursor:pointer;text-decoration:underline;color:#60a5fa}
.drilldown-header .dd-breadcrumb span:hover{color:#93c5fd}
.dd-close{background:none;border:2px solid rgba(255,255,255,0.3);color:#fff;width:30px;height:30px;border-radius:50%;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all 0.2s}
.dd-close:hover{background:rgba(255,255,255,0.15);border-color:rgba(255,255,255,0.5)}
.drilldown-body{padding:16px 20px}
.dd-summary-scroll{overflow-x:auto;overflow-y:hidden;padding-bottom:8px;margin-bottom:14px;-webkit-overflow-scrolling:touch}
.dd-summary-scroll::-webkit-scrollbar{height:6px}
.dd-summary-scroll::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}
.dd-summary-scroll::-webkit-scrollbar-thumb:hover{background:#94a3b8}
.dd-tables-scroll{overflow-x:auto;overflow-y:hidden;padding-bottom:12px;margin-bottom:15px;-webkit-overflow-scrolling:touch}
.dd-tables-scroll::-webkit-scrollbar{height:6px}
.dd-tables-scroll::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}
.dd-tables-scroll::-webkit-scrollbar-thumb:hover{background:#94a3b8}
.dd-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin-bottom:14px}
.dd-summary-card{background:#fff;border-radius:8px;padding:10px 14px;box-shadow:0 2px 6px rgba(0,0,0,0.05);text-align:center}
.dd-summary-card .dd-sum-label{font-size:10px;font-weight:600;color:#64748b;text-transform:uppercase}
.dd-summary-card .dd-sum-val{font-size:18px;font-weight:700;margin-top:2px}
.dd-account-table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 6px rgba(0,0,0,0.05);table-layout:auto}
.dd-account-table thead th{background:#f1f5f9;padding:10px 8px;text-align:left;font-size:11px;font-weight:600;color:#475569;text-transform:uppercase;border-bottom:2px solid #e2e8f0;cursor:pointer;user-select:none;white-space:nowrap}
.dd-account-table thead th:hover{background:#e2e8f0}
.dd-account-table thead th.sort-asc::after{content:" \25B2";font-size:10px}
.dd-account-table thead th.sort-desc::after{content:" \25BC";font-size:10px}
.dd-account-table tbody td{padding:8px 8px;border-bottom:1px solid #f1f5f9;font-size:12px;white-space:nowrap}
.dd-account-table tbody tr{cursor:pointer;transition:background 0.15s}
.dd-account-table tbody tr:hover{background:#eef2ff}
.dd-account-table tbody tr .acct-name{color:#2563eb;font-weight:600;white-space:normal;word-break:break-word}
.dd-account-table tbody tr .acct-name:hover{text-decoration:underline}
.dd-txn-table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 6px rgba(0,0,0,0.05)}
.dd-txn-table thead th{background:#f1f5f9;padding:8px 10px;text-align:left;font-size:11px;font-weight:600;color:#475569;text-transform:uppercase;border-bottom:2px solid #e2e8f0;cursor:pointer;user-select:none}
.dd-txn-table thead th:hover{background:#e2e8f0}
.dd-txn-table thead th.sort-asc::after{content:" \25B2";font-size:10px}
.dd-txn-table thead th.sort-desc::after{content:" \25BC";font-size:10px}
.dd-txn-table tbody td{padding:8px 10px;border-bottom:1px solid #f1f5f9;font-size:12px}
.dd-txn-table tbody tr:hover{background:#f8fafc}
.dd-back-btn{background:#3b82f6;color:#fff;border:none;padding:6px 14px;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;margin-bottom:12px;display:inline-flex;align-items:center;gap:6px}
.dd-back-btn:hover{background:#2563eb}
.dd-search{padding:6px 12px;border:1px solid #cbd5e1;border-radius:6px;font-size:12px;width:240px;margin-bottom:12px;margin-left:12px}
.kpi-card{cursor:pointer}
.dd-bal-positive{color:#059669;font-weight:700}
.dd-bal-negative{color:#dc2626;font-weight:700}
.dd-row-count{font-size:11px;color:#64748b;margin-bottom:8px}
.no-data-overlay.show{display:flex}
.no-data-box{background:#fff;border-radius:16px;padding:40px;text-align:center;max-width:500px;box-shadow:0 20px 60px rgba(0,0,0,0.3)}
.no-data-box .nd-icon{font-size:50px;margin-bottom:12px}
.no-data-box h2{color:#1e293b;margin-bottom:8px}
.no-data-box p{color:#64748b;margin-bottom:16px;line-height:1.5}
.no-data-box .nd-upload{background:linear-gradient(135deg,#0f3460,#1a1a2e);border:2px dashed #4a90d9;border-radius:12px;padding:24px;cursor:pointer;transition:all 0.3s;position:relative}
.no-data-box .nd-upload:hover{border-color:#60a5fa;box-shadow:0 0 20px rgba(96,165,250,0.2)}
.no-data-box .nd-upload input[type=file]{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}
/* Statement Cards */
.stmt-row{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:20px}
.stmt-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 10px rgba(0,0,0,0.06);border-top:4px solid #3b82f6;cursor:pointer;transition:transform 0.2s;display:flex;flex-direction:column}
.stmt-card:hover{transform:translateY(-2px);box-shadow:0 4px 15px rgba(0,0,0,0.1)}
.stmt-card.profit-card{border-top-color:#10b981}
.stmt-card.networth-card{border-top-color:#8b5cf6}
.stmt-card.working-card{border-top-color:#f59e0b}
.stmt-card .stmt-title{font-size:13px;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:0.5px;margin-bottom:12px;text-align:center}
.stmt-card .stmt-components{display:flex;gap:15px;justify-content:space-around;margin-bottom:12px;flex-wrap:wrap;flex:1}
.stmt-card .stmt-comp{text-align:center;cursor:pointer;padding:6px 10px;border-radius:8px;transition:background 0.15s}
.stmt-card .stmt-comp:hover{background:#f1f5f9}
.stmt-card .stmt-comp .comp-label{font-size:10px;font-weight:600;color:#64748b;text-transform:uppercase;margin-bottom:4px}
.stmt-card .stmt-comp .comp-val{font-size:15px;font-weight:700;color:#2563eb;text-decoration:underline;text-decoration-color:rgba(37,99,235,0.3)}
.stmt-card .stmt-comp .comp-val.pos{color:#059669!important;text-decoration-color:rgba(5,150,105,0.3)}
.stmt-card .stmt-comp .comp-val.neg{color:#dc2626!important;text-decoration-color:rgba(220,38,38,0.3)}
.stmt-comp-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px;flex:1}
.stmt-col-stack{display:flex;flex-direction:column;gap:8px}
.stmt-result-split{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding-top:12px;border-top:1px dashed #cbd5e1;margin-top:auto}
.stmt-result-item{text-align:center}
.stmt-result-item .res-label{font-size:10px;font-weight:700;color:#64748b;text-transform:uppercase;margin-bottom:4px;line-height:1.2}
.stmt-result-item .res-val{font-size:20px;font-weight:800}
.stmt-result-item .res-pct{font-size:12px;font-weight:700;margin-top:2px}
.stmt-card .stmt-result{text-align:center;padding-top:12px;border-top:1px dashed #e2e8f0;margin-top:auto}
.stmt-card .stmt-result .res-label{font-size:11px;font-weight:600;color:#64748b;text-transform:uppercase}
.stmt-card .stmt-result .res-val{font-size:24px;font-weight:800}
.stmt-card .stmt-result .res-pct{font-size:13px;font-weight:700;margin-top:2px}
/* Month buttons */
.month-row{background:#fff;padding:6px 24px;display:flex;gap:6px;align-items:center;flex-wrap:wrap;border-bottom:1px solid #e2e8f0}
.month-row label{font-size:10px;font-weight:600;color:#64748b;text-transform:uppercase;margin-right:4px}
.period-btn{padding:4px 12px;border:1px solid #cbd5e1;border-radius:16px;background:#f8fafc;font-size:11px;font-weight:600;cursor:pointer;color:#475569;transition:all 0.15s}
.period-btn:hover{background:#e0e7ff;border-color:#818cf8;color:#4338ca}
.period-btn.active{background:#6366f1;color:#fff;border-color:#6366f1}
.month-btn{padding:4px 10px;border:1px solid #cbd5e1;border-radius:16px;background:#f8fafc;font-size:11px;font-weight:600;cursor:pointer;color:#475569;transition:all 0.15s}
.month-btn:hover{background:#e0e7ff;border-color:#818cf8;color:#4338ca}
.month-btn.active{background:#3b82f6;color:#fff;border-color:#3b82f6}
.fy-select{padding:4px 8px;border:1px solid #cbd5e1;border-radius:6px;font-size:11px;background:#f8fafc;font-weight:600;margin-left:10px}
.nav-btn{padding:5px 12px;background:#e0e7ff;color:#4338ca;border:1px solid #c7d2fe;border-radius:6px;cursor:pointer;font-size:11px;font-weight:600;transition:all 0.15s}
.nav-btn:hover{background:#c7d2fe}
/* Unit report buttons */
.unit-report-section{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.unit-report-btn{padding:8px 16px;background:linear-gradient(135deg,#1a1a2e,#0f3460);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:12px;font-weight:600;transition:all 0.2s;box-shadow:0 2px 6px rgba(0,0,0,0.12)}
.unit-report-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,0.2)}
.audit-btn{padding:8px 16px;background:linear-gradient(135deg,#7c3aed,#4f46e5);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:12px;font-weight:600;transition:all 0.2s;box-shadow:0 2px 6px rgba(124,58,237,0.25)}
.audit-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(124,58,237,0.35)}
.audit-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:12px;cursor:pointer;transition:all 0.2s}
.audit-card:hover{border-color:#7c3aed;transform:translateY(-2px);box-shadow:0 4px 10px rgba(124,58,237,0.12)}
.audit-card-icon{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:18px;margin-bottom:8px}
.audit-card-title{font-size:13px;font-weight:700;color:#1e293b;margin-bottom:2px}
.audit-card-desc{font-size:11px;color:#64748b;margin-bottom:8px;line-height:1.3}
.audit-tag{display:inline-block;font-size:9.5px;padding:2px 6px;border-radius:4px;font-weight:600;margin-right:3px}
.audit-status-matched{background:#dcfce7;color:#166534}
.audit-status-unmatched{background:#fee2e2;color:#991b1b}
.audit-status-minor{background:#fef3c7;color:#92400e}
.audit-filter-btn{padding:6px 14px;font-size:12px;border:1px solid #e2e8f0;border-radius:6px;background:#fff;cursor:pointer;font-weight:500;transition:all 0.15s}
.audit-filter-btn.active{background:#7c3aed;color:#fff;border-color:#7c3aed}
.audit-filter-btn:hover:not(.active){background:#f8fafc}
.cash-verify-btn{padding:4px 12px;font-size:11px;border:1px solid #cbd5e1;border-radius:6px;background:#f8fafc;cursor:pointer;font-weight:600;color:#475569;transition:all 0.15s}
.cash-verify-btn:hover{background:#e2e8f0;border-color:#94a3b8}
.cash-verify-input{width:130px;padding:5px 8px;font-size:12px;border:1.5px solid #7c3aed;border-radius:6px;text-align:right;outline:none;font-weight:600}
.cash-verify-input:focus{box-shadow:0 0 0 3px rgba(124,58,237,0.15)}
.cash-verify-actions{display:inline-flex;gap:4px;margin-left:4px}
.cash-verify-actions button{padding:4px 8px;font-size:11px;border:none;border-radius:4px;cursor:pointer;font-weight:600}
.cash-verify-save{background:#059669;color:#fff}
.cash-verify-save:hover{background:#047857}
.cash-verify-cancel{background:#e2e8f0;color:#475569}
.cash-verify-cancel:hover{background:#cbd5e1}
.cash-verified{background:#dcfce7;color:#166534;padding:4px 10px;border-radius:6px;font-size:11px;font-weight:600;display:inline-flex;align-items:center;gap:4px;cursor:pointer}
.cash-verified:hover{background:#bbf7d0}
.cash-discrepancy{background:#fee2e2;color:#991b1b;padding:4px 10px;border-radius:6px;font-size:11px;font-weight:600;display:inline-flex;align-items:center;gap:4px;cursor:pointer}
.cash-discrepancy:hover{background:#fecaca}
.cash-diff-text{font-size:10px;color:#64748b;display:block;margin-top:2px}
.txn-verify-select{padding:3px 6px;font-size:11px;border:1px solid #cbd5e1;border-radius:5px;cursor:pointer;font-weight:600;background:#f8fafc}
.txn-verify-select.v-verified{background:#dcfce7;color:#166534;border-color:#86efac}
.txn-verify-select.v-observation{background:#fef3c7;color:#92400e;border-color:#fcd34d}
.txn-verify-select.v-nongenuine{background:#fee2e2;color:#991b1b;border-color:#fca5a5}
.txn-remark-input{padding:3px 6px;font-size:11px;border:1px solid #e2e8f0;border-radius:5px;width:140px;outline:none}
.txn-remark-input:focus{border-color:#7c3aed;box-shadow:0 0 0 2px rgba(124,58,237,0.12)}
.audit-summary-card{background:#f8fafc;border-radius:8px;padding:12px 16px;text-align:center}
.audit-summary-card .label{font-size:11px;color:#64748b;font-weight:600;text-transform:uppercase;letter-spacing:0.5px}
.audit-summary-card .value{font-size:20px;font-weight:700;margin-top:4px}
.audit-summary-card.clickable{cursor:pointer;transition:all 0.18s cubic-bezier(0.4, 0, 0.2, 1);user-select:none}
.audit-summary-card.clickable:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,0.08)}
.audit-summary-card.active-verified{background:#f0fdf4!important;border:1.5px solid #059669!important;box-shadow:0 0 0 2px rgba(5,150,105,0.2),0 4px 12px rgba(5,150,105,0.12)!important}
.audit-summary-card.active-discrepancy{background:#fef2f2!important;border:1.5px solid #dc2626!important;box-shadow:0 0 0 2px rgba(220,38,38,0.2),0 4px 12px rgba(220,38,38,0.12)!important}
.audit-summary-card.active-pending{background:#f8fafc!important;border:1.5px solid #64748b!important;box-shadow:0 0 0 2px rgba(100,116,139,0.2),0 4px 12px rgba(100,116,139,0.12)!important}
.audit-table{width:100%;border-collapse:collapse;font-size:12px}
.audit-table th{text-align:left;padding:10px 8px;color:#64748b;font-weight:600;border-bottom:2px solid #e2e8f0;font-size:11px;text-transform:uppercase}
.audit-table td{padding:10px 8px;border-bottom:1px solid #f1f5f9}
.audit-table tr:hover{background:#f8fafc}
.audit-table tr.row-danger{background:#fef2f2}
.audit-table tr.row-warning{background:#fffbeb}
@media(max-width:1200px){.stmt-row{grid-template-columns:1fr 1fr}.kpi-row{grid-template-columns:repeat(3,1fr)}}
@media(max-width:768px){
  .header{flex-direction:column;align-items:flex-start;gap:14px;padding:16px 20px}
  .header-actions{width:100%;flex-wrap:wrap;justify-content:space-between;gap:10px!important}
  .header h1{font-size:20px}
  .header .subtitle{font-size:11px}
  .tally-bar{flex-direction:column;gap:8px;padding:10px 16px;text-align:center}
  .filters{flex-direction:column;align-items:stretch;padding:16px;gap:12px}
  .filter-group select,.filter-group input{width:100%;min-width:100%}
  .kpi-row{grid-template-columns:repeat(2,1fr);gap:10px}
  .kpi-card{padding:14px;border-left-width:3px}
  .kpi-card .kpi-value{font-size:18px}
  .stmt-row{grid-template-columns:1fr}
  .charts-grid{grid-template-columns:1fr}
  .balance-row{grid-template-columns:1fr}
  .comparison-controls{flex-direction:column;align-items:stretch}
  .table-controls{flex-direction:column;align-items:stretch;gap:10px}
  .table-controls input{width:100%}
  .table-container{padding:12px;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .form-row-2col{grid-template-columns:1fr!important;gap:10px!important}
  .modal-card{width:95%!important;max-height:92vh!important;padding:18px!important}
}

/* Drilldown Modal Overlay & Unbreakable Layout */
.drilldown-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(15, 23, 42, 0.75);
  backdrop-filter: blur(4px);
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  box-sizing: border-box;
}

.drilldown-page {
  background: #ffffff;
  width: 100%;
  max-width: 1280px;
  max-height: 90vh;
  height: 90vh;
  border-radius: 16px;
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.35);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  animation: modalFadeIn 0.2s ease-out;
}

@keyframes modalFadeIn {
  from { opacity: 0; transform: scale(0.97); }
  to { opacity: 1; transform: scale(1); }
}

.drilldown-header {
  background: linear-gradient(135deg, #0f172a, #1e293b);
  color: #ffffff;
  padding: 16px 24px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid #334155;
  flex-shrink: 0;
}

.drilldown-header h2 {
  margin: 0;
  font-size: 18px;
  font-weight: 700;
  color: #f8fafc;
  letter-spacing: -0.2px;
}

.dd-breadcrumb {
  font-size: 12px;
  color: #94a3b8;
  margin-top: 4px;
}

.dd-breadcrumb span {
  color: #60a5fa;
  cursor: pointer;
  text-decoration: underline;
  transition: color 0.15s;
}

.dd-breadcrumb span:hover {
  color: #93c5fd;
}

.dd-breadcrumb strong {
  color: #f1f5f9;
}

.dd-close {
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.2);
  color: #ffffff;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  transition: all 0.15s;
}

.dd-close:hover {
  background: rgba(239, 68, 68, 0.8);
  border-color: #ef4444;
}

.drilldown-body {
  padding: 24px;
  overflow-y: auto;
  overflow-x: hidden;
  flex: 1;
  background: #f8fafc;
  box-sizing: border-box;
}

/* Modal Content Components */
.dd-back-btn {
  background: #2563eb;
  color: #ffffff;
  border: none;
  padding: 8px 16px;
  border-radius: 6px;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  margin-bottom: 16px;
  transition: background 0.15s;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.dd-back-btn:hover {
  background: #1d4ed8;
}

.dd-summary {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 12px;
  margin-bottom: 16px;
}

.dd-summary-card {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  padding: 10px 12px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
  min-width: 0;
  overflow: hidden;
  text-align: center;
  box-sizing: border-box;
}

.dd-sum-label {
  font-size: 10px;
  font-weight: 600;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: 0.3px;
  margin-bottom: 4px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.dd-sum-val {
  font-size: 14.5px;
  font-weight: 700;
  color: #0f172a;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.dd-bal-positive {
  color: #059669 !important;
}

.dd-bal-negative {
  color: #dc2626 !important;
}

.dd-search {
  width: 100%;
  max-width: 320px;
  padding: 8px 12px;
  border: 1px solid #cbd5e1;
  border-radius: 6px;
  font-size: 13px;
  margin-bottom: 12px;
  outline: none;
  transition: border-color 0.15s, box-shadow 0.15s;
}

.dd-search:focus {
  border-color: #2563eb;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.15);
}

.dd-row-count {
  font-size: 12px;
  color: #64748b;
  font-weight: 600;
  margin-bottom: 8px;
}

/* Unbreakable Table Container & Responsive Scrolling */
.dd-table-container {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
  margin-bottom: 16px;
}

.dd-account-table, .dd-txn-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 12px;
  min-width: 850px;
}

.dd-account-table th, .dd-txn-table th {
  background: #f1f5f9;
  color: #475569;
  font-weight: 700;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  padding: 10px 14px;
  border-bottom: 2px solid #e2e8f0;
  white-space: nowrap;
  position: sticky;
  top: 0;
  z-index: 10;
}

.dd-account-table td, .dd-txn-table td {
  padding: 10px 14px;
  border-bottom: 1px solid #f1f5f9;
  color: #334155;
  white-space: nowrap;
}

.dd-account-table tr:hover, .dd-txn-table tr:hover {
  background: #f8fafc;
}

.dd-account-table td.acct-name, .dd-txn-table td.acct-name {
  font-weight: 600;
  color: #2563eb;
  cursor: pointer;
}

/* Responsive Breakpoints */
@media (max-width: 768px) {
  .drilldown-overlay {
    padding: 10px;
  }
  .drilldown-page {
    max-width: 100%;
    height: 95vh;
    max-height: 95vh;
    border-radius: 12px;
  }
  .drilldown-header {
    padding: 12px 16px;
  }
  .drilldown-header h2 {
    font-size: 16px;
  }
  .drilldown-body {
    padding: 14px;
  }
  .dd-summary {
    grid-template-columns: repeat(2, 1fr);
  }
}

