@import "https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Syne:wght@600;700;800&display=swap";*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%}html,body{width:100%}html{scrollbar-gutter:stable}body,#root{overflow:visible}body{font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}:root{--canvas-start:#020712;--canvas-mid:#071225;--canvas-end:#101a31;--surface:#0a1426d6;--surface-strong:#0d1a31;--border:#94a3b83d;--border-soft:#94a3b824;--text-main:#e2e8f0;--text-muted:#9eb0c8;--text-subtle:#7f93ad;--accent-blue:#38bdf8;--accent-orange:#fb923c;--accent-emerald:#34d399;--shadow-lg:0 32px 70px #02061775;--shadow-md:0 18px 40px #02061761;--radius-xl:32px;--radius-lg:24px}body{color:var(--text-main);background:radial-gradient(circle at 12% 6%, #38bdf833, transparent 28%), radial-gradient(circle at 82% 12%, #fb923c2e, transparent 34%), linear-gradient(165deg, var(--canvas-start) 0%, var(--canvas-mid) 48%, var(--canvas-end) 100%);font-family:Manrope,Segoe UI,sans-serif;overflow-x:hidden}h1,h2,h3{margin:0}.dashboard-shell{min-height:100vh;padding:30px 0 20px;position:relative;overflow:hidden}.dashboard-shell:before,.dashboard-shell:after{content:"";pointer-events:none;z-index:0;border-radius:999px;width:460px;height:460px;position:absolute}.dashboard-shell:before{background:radial-gradient(circle,#38bdf842 0%,#38bdf800 72%);top:-220px;right:-120px}.dashboard-shell:after{background:radial-gradient(circle,#34d3993d 0%,#34d39900 74%);bottom:-120px;left:-150px}.app-container{z-index:1;gap:22px;width:min(1340px,100% - 30px);margin:0 auto;display:grid;position:relative}.card-panel{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);animation:.55s both rise-in;position:relative;overflow:hidden}.card-panel:before{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(125deg,#38bdf817,#38bdf800 42%),radial-gradient(circle at 78% 18%,#fb923c14,#0000 42%);position:absolute;inset:0}.hero-panel{grid-template-columns:1.55fr 1fr;gap:24px;padding:34px;display:grid}.hero-copy-wrap{z-index:1;max-width:760px;position:relative}.eyebrow{text-transform:uppercase;letter-spacing:.31em;color:var(--accent-blue);margin:0 0 12px;font-size:.74rem;font-weight:800}.hero-panel h1{letter-spacing:-.03em;max-width:12ch;margin-bottom:16px;font-family:Syne,Manrope,sans-serif;font-size:clamp(2.3rem,5vw,4rem);line-height:.98}.hero-copy{color:var(--text-muted);max-width:60ch;margin:0;font-size:1rem;line-height:1.75}.hero-chip-row{flex-wrap:wrap;gap:10px;margin-top:24px;display:flex}.hero-chip{color:#e0f2fe;background:#38bdf829;border:1px solid #38bdf85c;border-radius:999px;align-items:center;gap:8px;padding:10px 16px;font-size:.83rem;font-weight:700;display:inline-flex}.hero-chip.muted{color:#cbd5e1;background:#94a3b81f;border-color:#94a3b83d}.hero-stat-grid{z-index:1;grid-template-columns:repeat(2,minmax(140px,1fr));gap:14px;display:grid;position:relative}.hero-stat-card{border:1px solid var(--border);background:linear-gradient(160deg,#0d1a31e0,#071225e6);border-radius:20px;flex-direction:column;justify-content:center;min-height:130px;padding:18px 18px 16px;transition:transform .2s,border-color .2s;display:flex}.hero-stat-card:hover{border-color:#38bdf880;transform:translateY(-3px)}.hero-stat-card span{color:var(--text-main);font-family:Syne,Manrope,sans-serif;font-size:2.15rem;line-height:1}.hero-stat-card p{color:var(--text-muted);margin:10px 0 0;font-size:.9rem;font-weight:600}.insight-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:16px;display:grid}.insight-card{border:1px solid var(--border-soft);background:#0c182db3;border-radius:18px;gap:6px;padding:16px 17px;display:grid}.insight-card h3{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);font-size:.8rem}.insight-card p{color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:1.13rem;font-weight:800;overflow:hidden}.insight-card span{color:var(--text-subtle);font-size:.82rem}.filter-bar{gap:18px;padding:22px;display:grid}.filter-topline{z-index:1;justify-content:space-between;align-items:flex-end;gap:16px;display:flex;position:relative}.filter-eyebrow{text-transform:uppercase;letter-spacing:.16em;color:var(--accent-emerald);margin:0 0 6px;font-size:.72rem;font-weight:800}.filter-topline h2{font-family:Syne,Manrope,sans-serif;font-size:1.46rem;line-height:1.1}.filter-badge{color:#e0f2fe;white-space:nowrap;background:#38bdf826;border:1px solid #38bdf866;border-radius:999px;padding:8px 14px;font-size:.82rem;font-weight:800}.filter-fields{z-index:1;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px;display:grid;position:relative}.filter-group{gap:8px;display:grid}.filter-fields>.search-group{grid-column:span 4}.filter-fields>.filter-group:not(.search-group){grid-column:span 2}.filter-fields>.date-group{grid-column:span 4;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.filter-fields>.filter-actions{grid-column:span 2;justify-content:flex-end;align-items:flex-end;display:flex}.filter-group label{text-transform:uppercase;letter-spacing:.09em;color:var(--text-subtle);font-size:.8rem;font-weight:700}.filter-bar input,.filter-bar select{border:1px solid var(--border);width:100%;min-height:48px;color:var(--text-main);background:var(--surface-strong);border-radius:14px;outline:none;padding:12px 14px;font:500 .94rem Manrope,Segoe UI,sans-serif;transition:border-color .2s,box-shadow .2s,transform .2s}.filter-bar input:focus,.filter-bar select:focus{border-color:#38bdf88c;box-shadow:0 0 0 4px #38bdf82e}.filter-actions button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#0ea5e9,#2563eb);border:none;border-radius:14px;min-height:48px;padding:0 18px;font-size:.9rem;font-weight:800;transition:transform .2s,filter .2s;box-shadow:0 14px 24px #2563eb33}.filter-actions button:hover{filter:brightness(1.04);transform:translateY(-2px)}.kpi-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.kpi-card{border-radius:var(--radius-lg);min-height:150px;box-shadow:var(--shadow-md);background:linear-gradient(160deg,#0d1a31f2,#0a1426e6);align-content:center;gap:10px;padding:22px;transition:transform .2s;display:grid}.kpi-card:hover{transform:translateY(-4px)}.kpi-card h3{text-transform:uppercase;letter-spacing:.09em;color:var(--text-subtle);font-size:.86rem;font-weight:800}.kpi-card p{margin:0;font-family:Syne,Manrope,sans-serif;font-size:2.05rem;line-height:1}.kpi-card small{color:var(--text-muted);font-size:.82rem}.chart-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:20px;display:grid}.chart-grid>.chart-container:first-child{grid-column:span 8}.chart-grid>.chart-container:nth-child(2){grid-column:span 4}.chart-grid>.chart-container:nth-child(3){grid-column:1/-1}.chart-container{border-radius:var(--radius-lg);border:1px solid var(--border-soft);box-shadow:var(--shadow-md);background:#0a1426d1;padding:20px 20px 16px;animation:.55s both rise-in;position:relative;overflow:hidden}.chart-header{margin-bottom:12px}.listing-panel{gap:18px;padding:24px;display:grid}.listing-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.listing-header h2{margin:0;font-size:1.1rem}.listing-header p,.listing-pagination-summary{color:var(--text-muted);font-size:.92rem}.listing-table-wrap{background:#070f1ee6;border:1px solid #94a3b824;border-radius:18px;overflow-x:auto}.listing-table{border-collapse:collapse;width:100%;min-width:860px}.listing-table th,.listing-table td{text-align:left;border-bottom:1px solid #94a3b81f;padding:14px 16px}.listing-table th{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:.8rem}.listing-table td{color:var(--text-main);vertical-align:top;font-size:.95rem}.table-loading,.table-empty{text-align:center;color:var(--text-muted);padding:36px 0;font-weight:600}.pagination-controls{flex-wrap:wrap;justify-content:flex-end;gap:12px;display:flex}.pagination-controls button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#0ea5e9,#2563eb);border:none;border-radius:14px;min-width:110px;padding:11px 16px;font-weight:700;transition:transform .2s,filter .2s}.pagination-controls button:disabled{opacity:.45;cursor:not-allowed}.pagination-controls button:hover:not(:disabled){transform:translateY(-2px)}.chart-header h2{letter-spacing:.01em;font-size:1.07rem;font-weight:800}.chart-header p{color:var(--text-muted);margin:6px 0 0;font-size:.84rem}.chart-container .recharts-default-tooltip{border-radius:12px!important}.chart-container .recharts-legend-wrapper{max-height:none;padding-right:0;position:static!important;overflow:visible!important}.chart-container .recharts-default-legend{overflow:visible!important}.message-box{color:#dbeafe;box-shadow:var(--shadow-md);background:#081528cc;border:1px solid #38bdf857;border-radius:16px;padding:14px 16px;font-weight:600}.message-box.error{color:#fecaca;background:#450a0a73;border-color:#f8717166}@keyframes rise-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (width<=1200px){.hero-panel{grid-template-columns:1fr}.insight-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-fields>.search-group{grid-column:span 6}.filter-fields>.filter-group:not(.search-group){grid-column:span 3}.filter-fields>.date-group{grid-column:span 6}.filter-fields>.filter-actions{grid-column:span 3}}@media (width<=980px){.chart-grid>.chart-container:first-child,.chart-grid>.chart-container:nth-child(2),.chart-grid>.chart-container:nth-child(3){grid-column:1/-1}.kpi-cards,.filter-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-fields>.search-group,.filter-fields>.date-group,.filter-fields>.filter-group:not(.search-group),.filter-fields>.filter-actions{grid-column:auto}.filter-fields>.filter-actions{justify-content:flex-start}}@media (width<=720px){.dashboard-shell{padding-top:18px}.app-container{gap:16px;width:min(1340px,100% - 18px)}.hero-panel,.filter-bar{padding:20px}.hero-panel h1{font-size:clamp(2rem,8vw,3rem)}.hero-stat-grid,.insight-strip,.kpi-cards,.filter-fields,.date-group{grid-template-columns:1fr}.filter-topline{flex-direction:column;align-items:flex-start}.chart-container{padding:16px 14px 12px}}
