*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:14px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#f8fafc;color:#1e293b;line-height:1.5;min-height:100vh}#root{min-height:100vh}h1{font-size:1.5rem;font-weight:700;color:#0f172a;letter-spacing:-.01em}h2{font-size:1.15rem;font-weight:600;color:#1e293b;margin-bottom:16px;letter-spacing:-.01em}h3{font-size:.9rem;font-weight:600;color:#334155;margin-bottom:12px}.dashboard{max-width:1400px;margin:0 auto;padding:0 24px 48px}.dashboard-header{position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid #e2e8f0;padding:16px 24px;margin:0 -24px 24px}.header-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.last-updated{font-size:.78rem;color:#94a3b8;font-weight:400}.period-label{font-size:.85rem;color:#64748b;margin-bottom:12px}.dashboard-section{margin-bottom:32px;animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.filter-bar{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;padding:8px 12px;background:#f1f5f9b3;border-radius:8px;border:1px solid #e2e8f0}.filter-select{display:flex;flex-direction:column;gap:2px}.filter-select label{font-size:.7rem;font-weight:500;color:#64748b;text-transform:uppercase;letter-spacing:.04em}.filter-select select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2364748b' d='M3 5l3 3 3-3'/%3E%3C/svg%3E") no-repeat right 8px center;border:1px solid #cbd5e1;border-radius:6px;padding:6px 28px 6px 10px;font-size:.85rem;color:#1e293b;cursor:pointer;min-width:100px;transition:border-color .15s,box-shadow .15s}.filter-select select:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.filter-reset{background:transparent;border:1px solid #cbd5e1;border-radius:6px;padding:6px 14px;font-size:.8rem;color:#64748b;cursor:pointer;transition:all .15s}.filter-reset:hover{background:#f1f5f9;border-color:#94a3b8;color:#475569}.kpi-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-bottom:24px}.kpi-grid-4{grid-template-columns:repeat(4,1fr)}.kpi-grid-5{grid-template-columns:repeat(5,1fr)}.kpi-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:16px;display:flex;flex-direction:column;gap:4px;transition:box-shadow .15s,transform .15s}.kpi-card:hover{box-shadow:0 4px 12px #0000000f;transform:translateY(-1px)}.kpi-label{font-size:.75rem;font-weight:500;color:#64748b;text-transform:uppercase;letter-spacing:.04em}.kpi-value{font-size:1.6rem;font-weight:700;color:#0f172a;line-height:1.2;letter-spacing:-.02em}.kpi-change{font-size:.8rem;font-weight:500}.change-positive{color:#10b981}.change-negative{color:#ef4444}.kpi-sparkline{margin-top:6px}.sparkline{display:block;width:100%}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px}.chart-container{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:16px;min-height:200px}.table-wrapper{overflow-x:auto;background:#fff;border:1px solid #e2e8f0;border-radius:10px}.data-table{width:100%;border-collapse:collapse;font-size:.85rem}.data-table thead{position:sticky;top:0;z-index:1}.data-table th{background:#f8fafc;border-bottom:2px solid #e2e8f0;padding:10px 14px;font-weight:600;color:#475569;text-align:left;white-space:nowrap;-webkit-user-select:none;user-select:none}.data-table th.sortable{cursor:pointer}.data-table th.sortable:hover{color:#6366f1}.th-content{display:inline-flex;align-items:center;gap:4px}.sort-indicator{font-size:.7rem;color:#6366f1}.data-table td{padding:9px 14px;border-bottom:1px solid #f1f5f9;color:#334155}.data-table tbody tr:nth-child(2n){background:#fafbfc}.data-table tbody tr:hover{background:#f1f5f9}.text-right{text-align:right}.empty-state{text-align:center;padding:32px 16px;color:#94a3b8;font-size:.9rem}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.stat-item{display:flex;flex-direction:column;gap:2px;padding:10px;background:#f8fafc;border-radius:8px;border:1px solid #f1f5f9}.stat-label{font-size:.7rem;font-weight:500;color:#94a3b8;text-transform:uppercase;letter-spacing:.04em}.stat-value{font-size:1.1rem;font-weight:600;color:#1e293b}.stat-positive .stat-value{color:#10b981}.stat-negative .stat-value{color:#ef4444}.social-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.social-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:16px}.social-card h3{margin-bottom:12px;font-size:.95rem}.cash-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.cash-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:20px 16px;display:flex;flex-direction:column;gap:6px;text-align:center}.cash-highlight{background:#f0f0ff;border-color:#c7d2fe}.cash-label{font-size:.75rem;font-weight:500;color:#64748b;text-transform:uppercase;letter-spacing:.04em}.cash-value{font-size:1.5rem;font-weight:700;color:#0f172a}.cash-burn{color:#ef4444}.loading-state{display:flex;align-items:center;justify-content:center;min-height:120px;color:#94a3b8;font-size:.9rem}.loading-state:before{content:"";width:16px;height:16px;border:2px solid #e2e8f0;border-top-color:#6366f1;border-radius:50%;margin-right:8px;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-state{display:flex;align-items:center;justify-content:center;min-height:120px;color:#ef4444;font-size:.9rem;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:16px}.visx-tooltip-portal{pointer-events:none}[class*=visx-legend]{font-size:.75rem!important;color:#64748b!important}@media(max-width:1200px){.kpi-grid,.cash-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:900px){.two-col{grid-template-columns:1fr}.kpi-grid,.kpi-grid-4,.kpi-grid-5,.cash-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){html{font-size:13px}.dashboard{padding:0 12px 32px}.dashboard-header{padding:12px;margin:0 -12px 16px}.kpi-grid,.kpi-grid-4,.kpi-grid-5,.cash-grid{grid-template-columns:1fr}.filter-bar{flex-direction:column;align-items:stretch}.filter-select select{width:100%}.stat-grid{grid-template-columns:repeat(2,1fr)}}
