:root{--bg-canvas:#f5f7f9;--bg-surface:#fff;--bg-subtle:#f0f2f5;--bg-row-hover:#f8fafc;--bg-input:#fff;--border-subtle:#e0e5eb;--border-strong:#c3cbd5;--text-primary:#171f30;--text-secondary:#515e70;--text-muted:#7f8c9f;--accent-emerald:#158458;--accent-emerald-bg:#e6faf0;--accent-emerald-border:#a8e6c9;--accent-teal:#137b9a;--accent-teal-bg:#e4f7fb;--accent-teal-border:#a5dbe9;--accent-amber:#b66c0c;--accent-amber-bg:#fef3e2;--accent-amber-border:#f3d39b;--accent-crimson:#c51b32;--accent-crimson-bg:#fde7ea;--accent-crimson-border:#f2b0b7;--shadow-sm:0 1px 2px #0f172a0a;--shadow-md:0 6px 20px #0f172a14;--shadow-drawer:-8px 0 30px #0f172a1f;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono:"JetBrains Mono", monospace}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-canvas);color:var(--text-primary);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;font-size:13.5px;line-height:1.45}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.app-shell{flex-direction:column;max-width:1560px;min-height:100vh;margin:0 auto;padding:0 24px 48px;display:flex}.top-header{border-bottom:1px solid var(--border-subtle);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:14px 0;display:flex}.brand-group{align-items:center;gap:11px;display:flex}.brand-mark{background:var(--accent-emerald);color:#fff;width:34px;height:34px;font-family:var(--font-mono);box-shadow:var(--shadow-sm);border-radius:8px;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex}.brand-title{letter-spacing:-.02em;color:var(--text-primary);align-items:center;gap:8px;font-size:16px;font-weight:700;display:flex}.region-tag{font-family:var(--font-mono);background:var(--bg-subtle);border:1px solid var(--border-subtle);color:var(--text-secondary);border-radius:4px;padding:2px 7px;font-size:10.5px;font-weight:600}.brand-subtitle{color:var(--text-muted);font-size:12px}.nav-tabs{background:var(--bg-subtle);border:1px solid var(--border-subtle);border-radius:8px;align-items:center;gap:4px;padding:3px;display:flex}.nav-tab{color:var(--text-secondary);font-family:var(--font-sans);cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:12.5px;font-weight:600;transition:all .15s;display:inline-flex}.nav-tab:hover{color:var(--text-primary)}.nav-tab.active{background:var(--bg-surface);color:var(--text-primary);box-shadow:var(--shadow-sm)}.header-actions{align-items:center;gap:8px;display:flex}.btn{cursor:pointer;border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-primary);box-shadow:var(--shadow-sm);border-radius:6px;align-items:center;gap:6px;padding:7px 12px;font-size:12.5px;font-weight:600;transition:all .15s;display:inline-flex}.btn:hover:not(:disabled){background:var(--bg-subtle)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--accent-emerald);border-color:var(--accent-emerald);color:#fff}.btn-primary:hover:not(:disabled){background:#13724c;border-color:#13724c}.market-ticker{background:var(--bg-surface);border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm);color:var(--text-secondary);border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:12px 0;padding:9px 14px;font-size:12px;display:flex}.ticker-items{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.ticker-stat{align-items:center;gap:5px;display:inline-flex}.ticker-stat strong{color:var(--text-primary);font-family:var(--font-mono)}.filter-bar{background:var(--bg-surface);border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm);border-radius:8px;flex-direction:column;gap:10px;margin-bottom:10px;padding:10px 14px;display:flex}.filter-primary-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.filter-popover-grid{border-top:1px solid var(--border-subtle);flex-wrap:wrap;align-items:flex-end;gap:10px;padding-top:10px;display:flex}.filter-group{flex-direction:column;gap:3px;display:flex}.filter-group label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);font-size:10.5px;font-weight:600}.input-control,.select-control{background:var(--bg-input);border:1px solid var(--border-strong);color:var(--text-primary);font-size:12.5px;font-family:var(--font-sans);border-radius:6px;min-height:32px;padding:6px 9px}.input-control:focus,.select-control:focus{border-color:var(--accent-teal);box-shadow:0 0 0 2px var(--accent-teal-bg);outline:none}.feature-pills{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.pill-toggle{border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-secondary);cursor:pointer;border-radius:6px;align-items:center;gap:5px;padding:5px 10px;font-size:12px;font-weight:500;transition:all .12s;display:inline-flex}.pill-toggle:hover{background:var(--bg-subtle);color:var(--text-primary)}.pill-toggle.active{background:var(--accent-teal-bg);border-color:var(--accent-teal-border);color:var(--accent-teal);font-weight:600}.pill-toggle.trap-guard.active{background:var(--accent-emerald-bg);border-color:var(--accent-emerald-border);color:var(--accent-emerald)}.triage-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.triage-tabs{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.triage-tab{color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;align-items:center;gap:5px;padding:5px 10px;font-size:12px;font-weight:600;display:inline-flex}.triage-tab:hover{background:var(--bg-surface);color:var(--text-primary)}.triage-tab.active{background:var(--bg-surface);border-color:var(--border-strong);color:var(--text-primary);box-shadow:var(--shadow-sm)}.table-container{background:var(--bg-surface);border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm);border-radius:10px;overflow-x:auto}.screener-table{border-collapse:collapse;text-align:left;width:100%}.screener-table th{background:var(--bg-subtle);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border-subtle);white-space:nowrap;padding:10px 14px;font-size:11px;font-weight:700}.screener-table td{border-bottom:1px solid var(--border-subtle);vertical-align:middle;padding:12px 14px}.screener-row{cursor:pointer;transition:background-color .1s}.screener-row:hover{background-color:var(--bg-row-hover)}.screener-row.selected-row{background-color:var(--accent-teal-bg)}.screener-row.visited-row{opacity:.72}.screener-row.trap-row{background-color:#fef8f9}.triage-actions{align-items:center;gap:4px;display:flex}.icon-btn{border:1px solid var(--border-subtle);background:var(--bg-surface);width:28px;height:28px;color:var(--text-muted);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;transition:all .12s;display:inline-flex}.icon-btn:hover{color:var(--text-primary);border-color:var(--border-strong);background:var(--bg-subtle)}.icon-btn.starred{color:var(--accent-amber);border-color:var(--accent-amber-border);background:var(--accent-amber-bg)}.icon-btn.visited{color:var(--accent-teal);border-color:var(--accent-teal-border);background:var(--accent-teal-bg)}.score-pill{font-family:var(--font-mono);border-radius:5px;align-items:center;gap:5px;width:fit-content;padding:3px 8px;font-size:11.5px;font-weight:700;display:inline-flex}.score-strong{background:var(--accent-emerald-bg);border:1px solid var(--accent-emerald-border);color:var(--accent-emerald)}.score-good{background:var(--accent-teal-bg);border:1px solid var(--accent-teal-border);color:var(--accent-teal)}.score-fair{background:var(--accent-amber-bg);border:1px solid var(--accent-amber-border);color:var(--accent-amber)}.score-overpriced,.score-trap{background:var(--accent-crimson-bg);border:1px solid var(--accent-crimson-border);color:var(--accent-crimson)}.trap-badge{background:var(--accent-crimson-bg);border:1px solid var(--accent-crimson-border);color:var(--accent-crimson);border-radius:4px;align-items:center;gap:4px;padding:2px 7px;font-size:11px;font-weight:700;display:inline-flex}.spread-badge{font-family:var(--font-mono);background:var(--accent-amber-bg);border:1px solid var(--accent-amber-border);color:var(--accent-amber);border-radius:4px;align-items:center;gap:4px;padding:2px 7px;font-size:11px;font-weight:600;display:inline-flex}.delta-pos{font-family:var(--font-mono);color:var(--accent-emerald);font-weight:700}.delta-neutral{font-family:var(--font-mono);color:var(--accent-amber);font-weight:700}.delta-neg{font-family:var(--font-mono);color:var(--accent-crimson);font-weight:700}.source-pill-link{background:var(--bg-surface);border:1px solid var(--border-strong);color:var(--text-primary);border-radius:6px;justify-content:space-between;align-items:center;gap:8px;padding:5px 9px;font-size:12px;font-weight:500;text-decoration:none;transition:all .12s;display:inline-flex}.source-pill-link:hover{border-color:var(--accent-teal);background:var(--bg-subtle)}.source-pill-link.cheapest{border-color:var(--accent-emerald-border);background:var(--accent-emerald-bg);color:var(--accent-emerald)}.drawer-backdrop{z-index:40;background:#0f172a40;justify-content:flex-end;display:flex;position:fixed;inset:0}.drawer-panel{background:var(--bg-surface);border-left:1px solid var(--border-subtle);width:100%;max-width:520px;height:100%;box-shadow:var(--shadow-drawer);flex-direction:column;gap:16px;padding:20px 22px;display:flex;overflow-y:auto}.drawer-section{background:var(--bg-canvas);border:1px solid var(--border-subtle);border-radius:8px;flex-direction:column;gap:8px;padding:13px 14px;display:flex}.drawer-section h4{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:11px}.progress-track{background:var(--border-subtle);border-radius:99px;width:100%;height:6px;overflow:hidden}.progress-fill{border-radius:99px;height:100%}.section-card{background:var(--bg-surface);border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm);border-radius:10px;margin-bottom:14px;padding:16px}.connector-grid{grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:12px;margin-top:12px;display:grid}.connector-card{background:var(--bg-canvas);border:1px solid var(--border-subtle);border-radius:8px;flex-direction:column;gap:8px;padding:13px;display:flex}.connector-card.tripped{border-color:var(--accent-crimson-border);background:var(--accent-crimson-bg)}.textarea-code{background:var(--bg-canvas);border:1px solid var(--border-strong);width:100%;min-height:160px;color:var(--text-primary);font-family:var(--font-mono);resize:vertical;border-radius:6px;padding:10px;font-size:12px}.kpi-card{background:var(--bg-canvas);border:1px solid var(--border-subtle);border-radius:8px;flex-direction:column;gap:2px;padding:8px 12px;display:flex}.kpi-label{text-transform:uppercase;color:var(--text-muted);font-size:10.5px;font-weight:600}.kpi-value{font-family:var(--font-mono);font-weight:700}.budget-bar-track{background:var(--border-subtle);border-radius:99px;width:100%;height:6px;overflow:hidden}.budget-bar-fill{background:var(--accent-emerald);border-radius:99px;height:100%;transition:width .25s}.zone-title{color:var(--text-primary);align-items:center;gap:8px;font-size:13.5px;font-weight:700;display:flex}.zone-sub{color:var(--text-secondary);font-size:11.5px}
