*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif}.dashboard-grid{grid-template-columns:repeat(4,1fr);gap:20px;margin-top:20px;display:grid}.kpi-card{background:#fff;border:1px solid #ddd;border-radius:10px;padding:20px;box-shadow:0 2px 8px #0000000f}.kpi-card h3{margin:0 0 12px;font-size:14px;font-weight:600}.kpi-card p{margin:0;font-size:28px;font-weight:700}@media (width<=900px){.dashboard-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.dashboard-grid{grid-template-columns:1fr}}.chart-card{background:#fff;border:1px solid #ddd;border-radius:10px;margin-top:24px;padding:20px;box-shadow:0 2px 8px #0000000f}.chart-card h3{margin-top:0}.chart-container{width:100%;height:300px}.decision-legend{justify-content:center;gap:20px;display:flex}.legend-item{align-items:center;gap:6px;display:flex}.legend-marker{border-radius:2px;width:10px;height:10px}.table-container h2{color:#1e293b;margin:0 0 20px;font-size:24px;font-weight:600}.table-scroll{width:100%;overflow-x:auto}.transaction-table{border-collapse:collapse;color:#334155;background:#fff;width:100%;margin-top:20px;font-size:14px}.transaction-table th,.transaction-table td{text-align:left;white-space:nowrap;border:1px solid #ddd;padding:12px}.transaction-table th{background-color:#f5f5f5;font-weight:600}.transaction-table tbody tr:nth-child(2n){background-color:#f1f5f9}.transaction-table tbody tr:nth-child(odd){background-color:#fff}.transaction-table tbody tr:hover{background-color:#dbeafe}.btn-primary{color:#fff;cursor:pointer;background-color:#2563eb;border:none;border-radius:6px;padding:8px 14px;font-size:14px;font-weight:500;transition:background-color .2s}.btn-primary:hover{background-color:#1d4ed8}.pagination{justify-content:center;align-items:center;gap:16px;margin-top:20px;display:flex}.pagination button{cursor:pointer;padding:8px 16px}.pagination button:disabled{cursor:not-allowed}.fraud-details{background-color:#fff;border:1px solid #ddd;border-radius:10px;margin-top:30px;padding:24px;box-shadow:0 2px 8px #00000014}.fraud-details table{border-collapse:collapse;width:100%;margin-top:15px}.fraud-details td{border:1px solid #ddd;padding:10px}.fraud-details th{text-align:left;background:#f5f5f5;border:1px solid #ddd;padding:10px}.decision{letter-spacing:.3px;border-radius:999px;padding:4px 10px;font-size:13px;font-weight:700;display:inline-block}.decision.approve{color:#166534;background-color:#dcfce7}.decision.review{color:#854d0e;background-color:#fef9c3}.decision.reject{color:#991b1b;background-color:#fee2e2}.transaction-filters{flex-wrap:wrap;align-items:end;gap:12px;margin-bottom:20px;display:flex}.filter-field{flex-direction:column;gap:4px;display:flex}.filter-field label{font-size:13px;font-weight:600}.filter-field input,.filter-field select{min-width:160px;padding:8px 10px}.date-range-filter{align-items:center;gap:8px;display:flex}.date-range-filter label{font-size:13px;font-weight:600}.transaction-filters button{height:36px}.table-container{padding:24px;overflow-x:auto}.rules-table{border-collapse:collapse;background:#fff;border-radius:8px;width:100%;overflow:hidden;box-shadow:0 2px 8px #00000014}.rules-table th{text-align:left;background-color:#f5f7fa;border-bottom:1px solid #ddd;padding:14px 16px;font-weight:600}.rules-table td{border-bottom:1px solid #eee;padding:14px 16px}.rules-table tbody tr:hover{background-color:#f9fbfc}.status{border-radius:999px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-block}.enabled{color:#166534;background-color:#dcfce7}.disabled{color:#991b1b;background-color:#fee2e2}.modal-overlay{background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.edit-modal{background:#fff;border-radius:8px;min-width:400px;padding:24px;box-shadow:0 8px 24px #0003}.rules-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.rules-header h2{color:#333;margin:0;font-size:1.75rem}.add-rule-btn{color:#fff;cursor:pointer;background-color:#2563eb;border:none;border-radius:8px;justify-content:center;align-items:center;width:38px;height:38px;font-size:1.5rem;font-weight:600;line-height:1;transition:background-color .2s,transform .1s;display:inline-flex;position:relative}.add-rule-btn:hover{background-color:#1d4ed8;transform:scale(1.05)}.add-rule-btn:active{transform:scale(.98)}.add-rule-btn:after{content:attr(data-tooltip);color:#fff;white-space:nowrap;opacity:0;visibility:hidden;pointer-events:none;z-index:10;background-color:#1e293b;border-radius:4px;margin-top:6px;padding:6px 10px;font-size:.75rem;font-weight:500;transition:opacity .2s,visibility .2s;position:absolute;top:100%;right:0;box-shadow:0 4px 6px -1px #0000001a}.add-rule-btn:hover:after{opacity:1;visibility:visible}body{background-color:#f5f7fa;margin:0;font-family:Arial,Helvetica,sans-serif}.layout{flex-direction:column;min-height:100vh;display:flex}.header{color:#fff;background-color:#1e293b;align-items:center;height:64px;padding:0 24px;display:flex}.header h1{margin:0}.content{flex:1;display:flex}.sidebar{color:#fff;background-color:#0f172a;width:240px;padding:20px}.sidebar ul{margin:0;padding:0;list-style:none}.sidebar li{margin-bottom:8px}.sidebar a{color:inherit;cursor:pointer;border-radius:6px;padding:12px 16px;text-decoration:none;display:block}.sidebar a:hover{background-color:#1e293b}.sidebar a.active-link{color:#fff;background-color:#2563eb}.main-content{flex:1;min-width:0;padding:24px}
