/* --- RESET & VARIABLES --- */
        * { margin: 0; padding: 0; box-sizing: border-box; -webkit-tap-highlight-color: transparent; }
        :root {
            --bg-primary: #ffffff;
            --bg-secondary: #f8f9fa;
            --bg-tertiary: #e9ecef;
            --text-primary: #212529;
            --text-secondary: #6c757d;
            --border: #dee2e6;
            --accent: #2563eb;
            --green: #10b981;
            --red: #ef4444;
            --shadow: rgba(0, 0, 0, 0.08);
        }
        [data-theme="dark"] {
            --bg-primary: #1a1a1a;
            --bg-secondary: #0d0d0d;
            --bg-tertiary: #262626;
            --text-primary: #f5f5f5;
            --text-secondary: #a3a3a3;
            --border: #404040;
        }

        body { 
            font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
            background: var(--bg-secondary); 
            color: var(--text-primary); 
            line-height: 1.6;
        }

        .header { background: var(--bg-primary); border-bottom: 1px solid var(--border); padding: 1rem 1.5rem; position: sticky; top: 0; z-index: 100; box-shadow: 0 2px 8px var(--shadow); }
        .header-content { max-width: 1200px; margin: 0 auto; display: flex; justify-content: space-between; align-items: center; }
        .site-title { font-size: 1.35rem; font-weight: 800; color: var(--accent); letter-spacing: -0.02em; }
        
        .container { max-width: 1200px; margin: 1.5rem auto; padding: 0 1rem; }
        
        /* DASHBOARD */
        .results-grid { 
            display: grid; 
            grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); 
            gap: 1.25rem; 
            margin-bottom: 1.5rem; 
        }
        .result-box { 
            padding: 1.75rem; 
            border-radius: 16px; 
            color: white; 
            text-align: center; 
            box-shadow: 0 4px 15px var(--shadow);
        }
        .box-green { background: linear-gradient(135deg, #10b981, #059669); }
        .box-blue { background: linear-gradient(135deg, #2563eb, #1d4ed8); }
        .box-red { background: linear-gradient(135deg, #ef4444, #dc2626); }
        
        .result-label { font-size: 0.75rem; text-transform: uppercase; font-weight: 700; opacity: 0.9; margin-bottom: 8px; letter-spacing: 0.05em; }
        .result-val { font-size: 2.4rem; font-weight: 800; line-height: 1; }
        .result-sub { font-size: 0.8rem; opacity: 0.85; margin-top: 8px; font-weight: 500; }

        .car-tabs { display: flex; gap: 0.5rem; margin-bottom: 1.5rem; overflow-x: auto; padding-bottom: 5px; scrollbar-width: none; }
        .car-tabs::-webkit-scrollbar { display: none; }
        .car-tab { padding: 0.75rem 1.25rem; background: var(--bg-primary); border: 2px solid var(--border); border-radius: 10px; cursor: pointer; min-width: 120px; text-align: center; font-weight: 600; white-space: nowrap; transition: 0.2s; }
        .car-tab.active { background: var(--accent); color: white; border-color: var(--accent); }

        .card { background: var(--bg-primary); border-radius: 16px; padding: 2rem; margin-bottom: 1.5rem; box-shadow: 0 2px 12px var(--shadow); border: 1px solid var(--border); }
        .form-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 1.25rem; }
        .form-group { display: flex; flex-direction: column; }
        label { font-size: 0.75rem; font-weight: 700; color: var(--text-secondary); margin-bottom: 0.5rem; text-transform: uppercase; }
        input, select { padding: 0.85rem; border: 2px solid var(--border); border-radius: 8px; background: var(--bg-secondary); color: var(--text-primary); font-size: 1rem; width: 100%; }

        .method-selector { display: flex; gap: 10px; margin: 1.5rem 0; overflow-x: auto; }
        .method-btn { flex: 1; padding: 0.9rem; border: 2px solid var(--border); border-radius: 10px; cursor: pointer; background: var(--bg-secondary); font-weight: 600; transition: 0.2s; white-space: nowrap; }
        .method-btn.active { background: var(--accent); color: white; border-color: var(--accent); }

        .summary-banner { background: var(--bg-tertiary); padding: 1.25rem; border-radius: 12px; margin: 1.5rem 0; border-left: 5px solid var(--accent); }
        .chart-container { height: 400px; margin-top: 1.5rem; position: relative; }
        .table-wrapper { overflow-x: auto; }
        .comp-table { width: 100%; border-collapse: collapse; min-width: 650px; }
        .comp-table td, .comp-table th { padding: 1rem; border-bottom: 1px solid var(--border); text-align: left; }

        .trust-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 1.5rem; margin-top: 1.5rem; }
        .trust-item { background: var(--bg-secondary); padding: 1.5rem; border-radius: 12px; border-left: 4px solid var(--accent); }
        .trust-item h3 { font-size: 1rem; margin-bottom: 0.5rem; color: var(--accent); }

        .footer { background: var(--bg-primary); border-top: 1px solid var(--border); padding: 3rem 1rem; text-align: center; margin-top: 3rem; }
        .hidden { display: none !important; }

        @media (max-width: 768px) {
            .results-grid { grid-template-columns: 1fr; }
            .form-grid { grid-template-columns: 1fr; }
            .result-val { font-size: 2.1rem; }
        }