:root{color-scheme:dark;--bg: #0c0c0e;--surface: #141416;--surface-2: #1a1a1e;--border: rgba(255, 255, 255, .07);--border-hover: rgba(255, 255, 255, .14);--text: #ececee;--text-secondary: #8e8e93;--text-tertiary: #5e5e63;--accent: #e8833a;--accent-muted: rgba(232, 131, 58, .12);--accent-text: #f9a86c;--radius: 10px;--radius-lg: 14px;font-family:-apple-system,Inter,Segoe UI,system-ui,sans-serif;font-size:14px;line-height:1.5}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-height:100vh;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}a{color:var(--accent-text);text-decoration:none}a:hover{text-decoration:underline}.app-shell{max-width:1520px;margin:0 auto;padding:0 24px 48px}.top-bar{display:flex;align-items:center;gap:16px;padding:16px 0;border-bottom:1px solid var(--border);margin-bottom:24px}.top-bar-logo{font-weight:600;font-size:15px;letter-spacing:-.01em;white-space:nowrap}.top-bar-logo span{color:var(--accent)}.top-bar-stats{display:flex;gap:20px;margin-left:auto;font-size:13px;color:var(--text-secondary)}.top-bar-stats strong{color:var(--text);font-weight:600}.workspace-grid{display:grid;grid-template-columns:280px minmax(0,1fr);gap:20px}.filters-panel{position:sticky;top:12px;height:fit-content;display:flex;flex-direction:column;gap:2px}.sidebar-section{padding:12px 0;border-bottom:1px solid var(--border)}.sidebar-section:last-child{border-bottom:none}.sidebar-label{display:block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-tertiary);margin-bottom:8px}.sidebar-select,.sidebar-input{width:100%;padding:8px 10px;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:13px;transition:border-color .12s}.sidebar-select:focus,.sidebar-input:focus{outline:none;border-color:var(--accent)}.selection-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;background:var(--accent-muted);color:var(--accent-text);font-size:12px;font-weight:600}.sidebar-actions{display:flex;gap:8px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:7px 14px;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:13px;font-weight:500;cursor:pointer;transition:background .1s,border-color .1s;white-space:nowrap}.btn:hover{background:var(--surface-2);border-color:var(--border-hover)}.btn:disabled{opacity:.35;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.btn-primary:hover{background:#d87530;border-color:#d87530}.btn-ghost{background:transparent;border-color:transparent;color:var(--text-secondary)}.btn-ghost:hover{color:var(--text);background:var(--surface)}.btn-sm{padding:4px 10px;font-size:12px}.btn-danger{color:#f87171;border-color:#f8717133;background:#f871710f}.btn-danger:hover{background:#f871711f}.results-panel{display:flex;flex-direction:column;gap:16px}.section-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.section-header h2{margin:0;font-size:15px;font-weight:600}.section-header p{margin:0;color:var(--text-secondary);font-size:13px}.button-row{display:flex;gap:6px}.chart-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);padding:12px;min-height:760px}.chart-canvas{width:100%;height:720px}.empty-state{min-height:720px;display:grid;place-content:center;text-align:center;color:var(--text-tertiary);font-size:13px}.model-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:10px}.model-card{display:flex;flex-direction:column;gap:8px;padding:14px 16px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);transition:border-color .12s,background .12s;cursor:default}.model-card:hover{border-color:var(--border-hover)}.model-card.selected{border-color:#e8833a66;background:#e8833a0a}.model-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.model-card-top h3{margin:0;font-size:14px;font-weight:600;line-height:1.3}.manufacturer-badge{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--accent-text);margin:0 0 2px}.meta-line{font-size:12px;color:var(--text-secondary);margin:0}.spec-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:2px}.spec-chip{font-size:12px;padding:3px 8px;border-radius:6px;background:var(--surface-2);color:var(--text-secondary);white-space:nowrap}.spec-chip strong{color:var(--text);font-weight:600}.model-card.custom-model{border-style:dashed}.modal-overlay{position:fixed;inset:0;z-index:1000;background:#0009;display:grid;place-items:center;padding:24px;animation:fadeIn .15s ease}@keyframes fadeIn{0%{opacity:0}}.modal-panel{width:100%;max-width:640px;max-height:calc(100vh - 48px);overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px}.modal-title{margin:0 0 20px;font-size:16px;font-weight:600}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid .full-width{grid-column:1 / -1}.form-field{display:flex;flex-direction:column;gap:4px}.form-field label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary)}.form-field input,.form-field select{padding:8px 10px;border-radius:var(--radius);border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:13px}.form-field input:focus,.form-field select:focus{outline:none;border-color:var(--accent)}.form-field input[type=number]{-moz-appearance:textfield}.form-separator{grid-column:1 / -1;height:1px;background:var(--border);margin:4px 0}.form-section-label{grid-column:1 / -1;font-size:12px;font-weight:600;color:var(--text-secondary);margin-top:2px}.form-actions{grid-column:1 / -1;display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.form-error{grid-column:1 / -1;padding:8px 12px;border-radius:var(--radius);background:#f8717114;border:1px solid rgba(248,113,113,.2);color:#f87171;font-size:13px}.modal-panel-wide{max-width:780px}.modal-subtitle{margin:-12px 0 16px;color:var(--text-secondary);font-size:13px}.form-section-hint{font-weight:400;color:var(--text-tertiary);font-size:11px}.csv-paste-area{width:100%;padding:8px 10px;border-radius:var(--radius);border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:12px;font-family:SF Mono,Fira Code,Consolas,monospace;resize:vertical;min-height:80px}.csv-paste-area:focus{outline:none;border-color:var(--accent)}.dyno-table-wrap{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.dyno-table{width:100%;border-collapse:collapse;font-size:13px}.dyno-table thead{background:var(--surface-2)}.dyno-table th{padding:8px 10px;text-align:left;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary);border-bottom:1px solid var(--border)}.dyno-table td{padding:4px 6px;border-bottom:1px solid var(--border);vertical-align:middle}.dyno-table tr:last-child td{border-bottom:none}.dyno-input{width:100%;padding:6px 8px;border-radius:6px;border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:13px;-moz-appearance:textfield}.dyno-input:focus{outline:none;border-color:var(--accent)}.hp-computed{color:var(--accent-text);font-weight:600;font-size:13px;padding-left:10px;white-space:nowrap}.dyno-table-actions{display:flex;gap:8px;padding:8px 10px;background:var(--surface-2)}.dyno-summary{display:flex;gap:16px;flex-wrap:wrap;padding:12px 14px;border-radius:var(--radius);background:var(--accent-muted);border:1px solid rgba(232,131,58,.15)}.dyno-summary-item{display:flex;flex-direction:column;gap:2px}.dyno-summary-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary)}.dyno-summary-value{font-size:14px;font-weight:600;color:var(--accent-text)}.empty-catalog{text-align:center;padding:48px 24px;border:1px dashed var(--border);border-radius:var(--radius-lg);background:var(--surface);color:var(--text-secondary);font-size:14px}.empty-catalog p{margin:4px 0}.empty-catalog strong{color:var(--accent-text)}@media(max-width:1024px){.workspace-grid{grid-template-columns:1fr}.filters-panel{position:static;flex-direction:row;flex-wrap:wrap;gap:12px}.sidebar-section{border-bottom:none;padding:0;flex:1;min-width:180px}}@media(max-width:600px){.app-shell{padding:0 12px 32px}.top-bar{flex-wrap:wrap}.top-bar-stats{margin-left:0}.form-grid,.model-grid{grid-template-columns:1fr}.chart-canvas{height:540px}.chart-card{min-height:560px}.empty-state{min-height:540px}}
