:root{--primary-orange: #F97316;--secondary-yellow: #FBBF24;--primary-green: #10B981;--primary-dark: #EA580C;--danger: #EF4444;--bg-primary: #0F172A;--bg-secondary: #1E293B;--bg-dark: #0F172A;--text-primary: #F8FAFC;--text-secondary: #94A3B8;--text-light: #F8FAFC;--border-color: #334155;--input-bg: #0F172A;--text-muted: #64748B;--shadow: rgba(0, 0, 0, .3)}body.light-mode{--bg-primary: #F8FAFC;--bg-secondary: #FFFFFF;--bg-dark: #F1F5F9;--text-primary: #0F172A;--text-secondary: #1E293B;--text-light: #0F172A;--border-color: #E2E8F0;--input-bg: #FFFFFF;--text-muted: #475569;--shadow: rgba(0, 0, 0, .05)}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}html,body{width:100%;position:relative;-webkit-overflow-scrolling:touch}body{font-family:Inter,system-ui,-apple-system,sans-serif;background-color:var(--bg-primary);color:var(--text-primary);line-height:1.5;font-size:.9375rem;width:100%;min-height:100dvh}a{color:var(--primary-green);text-decoration:none}input,button,select{font-family:inherit}.btn{background-color:var(--primary-green);color:#fff;border:none;padding:.6rem 1.25rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.btn:hover{background-color:var(--primary-dark);transform:translateY(-1px)}.btn-outline{background-color:transparent;border:1px solid var(--primary-green);color:var(--primary-green)}.btn-outline:hover{background-color:#10b9811a}.btn-action{background-color:var(--primary-green);color:#fff;border:none;padding:.5rem 1rem;font-size:.85rem;border-radius:10px;font-weight:600;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:.4rem}.btn-action-outline{background-color:transparent;border:1px solid var(--border-color);color:var(--text-primary);padding:.5rem 1rem;font-size:.85rem;border-radius:10px;font-weight:600;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:.4rem}.btn-action-outline:hover{border-color:var(--primary-green);color:var(--primary-green)}.card{background-color:var(--bg-secondary);border-radius:12px;padding:1.25rem;box-shadow:0 4px 6px -1px var(--shadow),0 2px 4px -1px var(--shadow);border:1px solid var(--border-color)}.input-group{margin-bottom:.75rem}.input-group label{display:block;margin-bottom:.5rem;font-size:.875rem;font-weight:500;color:var(--text-secondary)}.input-group input,.input-group select{width:100%;padding:.75rem;border-radius:6px;border:1px solid var(--border-color);background-color:var(--input-bg);font-size:.9375rem;transition:all .2s;color:var(--text-primary)}select option{background:var(--bg-secondary);color:var(--text-primary);padding:10px}body:not(.light-mode) select{background-color:var(--bg-dark);color:var(--text-primary)}body:not(.light-mode) select option:checked,body:not(.light-mode) select option:hover{background-color:var(--primary-orange)!important;color:#fff!important}.input-group input:focus,.input-group select:focus{outline:none;border-color:var(--primary-green)}.app-container{display:flex;min-height:100dvh;max-width:100vw}.sidebar{width:250px;flex-shrink:0;background-color:var(--bg-secondary);border-right:1px solid var(--border-color);padding:1rem .75rem;display:flex;flex-direction:column;position:sticky;top:0;height:100dvh;transition:width .3s cubic-bezier(.4,0,.2,1);overflow:visible;z-index:1002}.sidebar.collapsed{width:84px;padding:1.5rem .75rem}.sidebar-logo{font-size:1.5rem;font-weight:800;color:var(--primary-green);margin-bottom:1.5rem;padding:0 1rem}.nav-link{padding:.45rem .75rem;border-radius:8px;color:var(--text-secondary);display:flex;align-items:center;gap:.75rem;transition:all .2s;margin-bottom:.15rem;font-size:.85rem}.nav-link:hover,.nav-link.active{background-color:#10b9811a;color:var(--primary-green)}.sidebar.collapsed .nav-link{justify-content:center;padding:.75rem;gap:0}.sidebar.collapsed .nav-link span,.sidebar.collapsed .gradient-text,.sidebar.collapsed .sidebar-version,.sidebar.collapsed .premium-badge-text,.sidebar.collapsed .sidebar-section-title{display:none}.sidebar-toggle{position:absolute;right:-15px;top:32px;width:30px;height:30px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-secondary);z-index:1005;box-shadow:4px 0 10px var(--shadow);transition:all .2s cubic-bezier(.4,0,.2,1)}.sidebar-toggle:hover{color:var(--primary-orange);border-color:var(--primary-orange);transform:scale(1.1)}@media(max-width:768px){.sidebar-toggle{display:none}}.main-content{flex:1;display:flex;flex-direction:column;height:100dvh;transition:all .3s ease;width:100%;min-width:0;overflow-y:auto;overflow-x:hidden;position:relative}.mobile-menu-btn,.mobile-close-btn{display:none;background:none;border:none;color:var(--text-primary);cursor:pointer;padding:.5rem}.top-header{height:70px;min-height:70px;flex-shrink:0;background:var(--bg-secondary);border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;padding:0 1.5rem;position:-webkit-sticky;position:sticky;top:0;z-index:1000;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.top-header.sticky{position:-webkit-sticky;position:sticky;top:0}.header-actions-top{display:flex;flex-direction:column;align-items:flex-end;gap:.75rem}@media(max-width:768px){.header-actions-top,.header-actions-right{align-items:center!important;width:100%!important;margin-top:1rem}.header-actions-row,.one-line-filter{justify-content:center!important;width:100%!important}.centered-mobile{text-align:center}}.quick-actions-dashboard{display:flex;gap:.75rem;margin-top:1.25rem;flex-wrap:wrap}@media(max-width:768px){.quick-actions-dashboard{justify-content:center}}.premium-badge-sidebar{display:none!important}.page-container{flex:1;padding:1.5rem 2rem}.icon-xs{width:12px!important;height:12px!important}.icon-sm{width:14px!important;height:14px!important}.icon-md{width:18px!important;height:18px!important}.icon-lg{width:24px!important;height:24px!important}.icon-xl{width:32px!important;height:32px!important}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;gap:1.5rem;flex-wrap:wrap}.page-header h1{display:flex;align-items:center;gap:.6rem;color:var(--text-primary)}.page-title-icon{color:var(--primary-orange)!important;flex-shrink:0}.header-actions{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--bg-primary) 0%,#064E3B 100%)}.auth-card{width:100%;max-width:400px;text-align:center}.auth-card h1{margin-bottom:2rem;color:var(--text-primary)}.auth-card .input-group{text-align:left}.error-text{color:var(--danger);font-size:.875rem;margin-top:.5rem}.table-container,.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}table{width:100%;border-collapse:collapse}table th,table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--border-color);font-size:.9rem}table th{background:var(--bg-dark);color:var(--text-primary);font-weight:700;text-align:left;padding:1rem;font-size:.8125rem;text-transform:uppercase;letter-spacing:.025em;border-bottom:2px solid var(--border-color)}tr:last-child td{border-bottom:none}.text-success{color:#10b981!important}.text-danger{color:#ef4444!important}.btn-primary-gradient{background:linear-gradient(135deg,var(--primary-orange) 0%,var(--secondary-yellow) 100%);color:#fff;border:none}.gradient-text{background:linear-gradient(135deg,var(--primary-orange) 0%,var(--secondary-yellow) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;color:transparent}.navbar-logo{height:52px!important;width:auto;object-fit:contain}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:2rem}@media(max-width:1400px){.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}}@media(max-width:1100px){.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}}@media(max-width:600px){.kpi-grid{grid-template-columns:1fr;gap:1rem}}.kpi-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1rem 1.25rem;display:flex;align-items:center;gap:1rem}.kpi-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px -10px var(--shadow);border-color:var(--primary-green)}.kpi-icon-container{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;padding:.6rem}.kpi-label{color:var(--text-secondary);font-size:.6rem;margin-bottom:.1rem;font-weight:500}.kpi-value{font-size:.95rem;font-weight:700;margin:0;color:var(--text-primary);white-space:nowrap}.mobile-menu-btn,.mobile-close-btn{display:none;background:none;border:none;color:var(--text-primary);cursor:pointer;padding:.5rem;transition:all .2s}.mobile-menu-btn:hover,.mobile-close-btn:hover{background:#ffffff1a;border-radius:8px}.one-line-filter{display:flex;align-items:center;gap:.5rem;flex-wrap:nowrap}@media(max-width:768px){.sidebar{position:fixed;top:0;left:0;height:100vh;z-index:1000;transform:translate(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1);box-shadow:10px 0 15px -3px #0003;overflow-y:auto;padding:.75rem;width:280px;background:var(--bg-primary)}.sidebar.is-open{transform:translate(0)}.nav-link{padding:.4rem .75rem;margin-bottom:.15rem;font-size:.85rem;border-radius:6px}.sidebar-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:999}.mobile-menu-btn{display:flex!important;align-items:center;justify-content:center;width:44px;height:44px;color:var(--text-primary);z-index:101}.mobile-close-btn{display:block}.top-header{padding:.75rem 1rem;justify-content:space-between!important}.page-container{padding:1rem}.btn-export-mobile{width:auto!important;padding:.6rem!important;border-radius:10px!important}.btn-export-mobile span{display:none}.page-header{display:flex!important;flex-direction:column!important;align-items:center!important;text-align:center!important;width:100%!important;gap:1.25rem!important;margin-bottom:1.5rem!important}.centered-mobile{display:flex!important;flex-direction:column!important;align-items:center!important;text-align:center!important;width:100%!important;gap:.75rem!important}.header-actions{width:100%!important;gap:.75rem!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important}.header-actions>*,.header-actions-top{width:100%!important;max-width:none!important;display:flex!important;justify-content:center!important;margin:0!important}.premium-badge-top{display:none!important}.premium-badge-sidebar{display:flex!important}.card,.chart-card{width:100%!important;max-width:calc(100vw - 2rem)!important;margin-left:0!important;margin-right:0!important;box-sizing:border-box!important;overflow-x:auto}.mobile-2x2-grid{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:.75rem!important;width:100%!important}.mobile-2x3-grid{display:grid!important;grid-template-columns:repeat(2,1fr)!important;grid-template-rows:repeat(3,auto)!important;gap:.75rem!important;width:100%!important}.kpi-grid{grid-template-columns:repeat(2,1fr)!important;gap:.5rem!important;width:100%!important}.kpi-card{padding:.75rem .5rem!important;gap:.5rem!important;flex-direction:column!important;align-items:center!important;text-align:center!important;min-width:0!important;border-radius:12px!important}.kpi-icon-container{width:36px!important;height:36px!important;border-radius:10px!important}.kpi-icon-container svg{width:18px!important;height:18px!important}.kpi-label{font-size:.65rem!important}.kpi-value{font-size:.85rem!important;word-break:break-word;font-weight:700!important}.page-desc{font-size:.85rem;margin-bottom:1.5rem;color:var(--text-secondary)}}.modal-overlay{position:fixed;inset:0;background-color:#0f172acc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:2000;padding:1rem;animation:fadeIn .2s ease-out}.modal-content{width:100%;max-width:600px;max-height:90vh;overflow-y:auto;position:relative;animation:slideUp .3s cubic-bezier(.16,1,.3,1);padding:2.5rem;background-color:var(--bg-secondary);border:1px solid var(--border-color)}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.modal-actions{display:flex;gap:1rem;margin-top:1rem}.modal-header h2{font-size:1.5rem;margin:0}.modal-close{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:.5rem;transition:color .2s}.modal-close:hover{color:var(--text-primary);background:#ffffff1a;border-radius:50%}.btn-action-icon{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:.35rem;margin:0 .15rem;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;transition:all .2s ease}.btn-action-icon:hover{background:#94a3b81a;color:var(--primary-green);transform:scale(1.1)}.btn-action-icon.danger:hover{background:#ef44441a;color:var(--danger)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.card{transition:transform .2s,box-shadow .2s}h1{font-size:1.75rem;font-weight:800;margin-bottom:1.5rem}h2{font-size:1.25rem;font-weight:700}h3{font-size:1.1rem;font-weight:600}.icon-xs{width:14px;height:14px}.icon-sm{width:16px;height:16px}.icon-md{width:19px;height:19px}.icon-lg{width:22px;height:22px}svg{stroke-width:2;flex-shrink:0}.card:hover{box-shadow:0 10px 25px -5px var(--shadow)}.btn-primary-gradient{background:linear-gradient(135deg,var(--primary-orange) 0%,var(--secondary-yellow) 100%);border:none}.btn-primary-gradient:hover{filter:brightness(1.1);transform:translateY(-2px)}.navbar-logo{height:40px;width:auto;object-fit:contain}.sidebar-logo{height:42px;width:auto;object-fit:contain}.recharts-default-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:15px;padding:0!important;margin:0!important;list-style:none!important}.recharts-legend-item{display:inline-flex!important;align-items:center!important;margin-right:0!important;font-size:.85rem!important}.custom-chart-tooltip{background:var(--bg-secondary)!important;-webkit-backdrop-filter:blur(12px)!important;backdrop-filter:blur(12px)!important;border:1px solid var(--border-color)!important;border-radius:12px!important;padding:.75rem 1rem!important;box-shadow:0 20px 25px -5px #00000080!important;z-index:10}.tooltip-label{font-size:.7rem!important;font-weight:600!important;color:var(--text-secondary)!important;margin-bottom:.5rem!important;text-transform:uppercase!important;letter-spacing:.05em!important}.tooltip-items{display:flex;flex-direction:column;gap:.4rem}.tooltip-item{display:flex;align-items:center;gap:.6rem;font-size:.85rem;white-space:nowrap}.tooltip-dot{width:8px;height:8px;border-radius:50%}.tooltip-name{color:var(--text-secondary)!important;opacity:.8}.tooltip-value{font-weight:700!important;margin-left:auto;color:var(--text-primary)!important}.chart-card{min-height:200px;overflow:visible}.chart-card:hover{transform:translateY(-2px);transition:transform .3s ease}.loading-spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.1);border-top-color:var(--primary-orange);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-container{display:flex;flex-direction:column;gap:1rem;justify-content:center;align-items:center;min-height:60vh}table{width:100%;border-collapse:collapse;font-size:.82rem}table th,table td{padding:.45rem .6rem;line-height:1.3;white-space:nowrap}table th{font-size:.75rem;text-transform:uppercase;letter-spacing:.03em;color:var(--text-secondary);font-weight:600;border-bottom:1px solid var(--border-color)}table tbody tr{border-bottom:1px solid rgba(255,255,255,.04)}table tbody tr:hover{background:#ffffff08}.comparison-carousel::-webkit-scrollbar{display:none}.comparison-carousel{-ms-overflow-style:none;scrollbar-width:none}.comparison-card{transition:all .4s cubic-bezier(.165,.84,.44,1)!important}.comparison-card:hover{transform:translateY(-8px);border-color:var(--primary-orange)!important;box-shadow:0 20px 40px -10px var(--shadow)}.faq-icon{transition:transform .3s ease}details[open] .faq-icon{transform:rotate(90deg)}
