.prototype-banner { padding:12px 20px; background:#eaf0fb; border-bottom:1px solid #c5d4f0; font-size:12px; line-height:1.6; }
.prototype-banner strong { color:#254577; }
.scenario-panel { margin:0 0 24px; padding:16px; border:1px solid #c8d4ea; border-radius:8px; background:#f5f8fd; }
.scenario-panel h1 { font-size:20px; letter-spacing:-.4px; margin-bottom:8px; }
.scenario-panel p, .scenario-note { font-size:12px; line-height:1.6; color:var(--text-dim); margin:8px 0; }
.scenario-input-row { display:grid; grid-template-columns:1fr 95px; gap:8px; margin:10px 0; }
.scenario-panel input, .scenario-panel select { width:100%; min-width:0; padding:8px; border:1px solid var(--border2); border-radius:4px; background:white; color:var(--text); font:12px var(--sans); }
.scenario-panel input[type=checkbox] { width:auto; }
.scenario-panel label { display:block; font-size:11px; line-height:1.5; }
.scenario-panel details { border-top:1px solid var(--border2); margin-top:15px; padding-top:12px; }
.scenario-panel summary { cursor:pointer; font-size:12px; font-weight:500; }
.scenario-panel .ev-fields { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:12px; }
.scenario-panel button { margin-top:12px; }
.scenario-error { color:#a52922; font-size:12px; line-height:1.5; margin-top:8px; }
.scenario-report { margin-bottom:28px; }
.scenario-report h2 { font-size:24px; letter-spacing:-.5px; margin:4px 0 10px; }
.scenario-report h3 { font-size:17px; margin-bottom:8px; }
.scenario-toolbar { display:flex; flex-wrap:wrap; gap:8px; margin:12px 0 18px; }
.scenario-site { background:white; border:1px solid var(--border); border-radius:8px; padding:16px; margin-bottom:16px; }
.scenario-overflow { overflow-x:auto; }
.scenario-table { width:100%; border-collapse:collapse; font-size:12px; line-height:1.5; }
.scenario-table th { background:#f1f3ef; font-weight:500; text-align:left; padding:10px; }
.scenario-table td { border-bottom:1px solid var(--border); padding:10px; vertical-align:top; min-width:125px; }
.scenario-table .scenario-asset { min-width:175px; max-width:250px; overflow-wrap:anywhere; }
.scenario-pill { display:inline-block; padding:3px 7px; border-radius:4px; font-size:11px; background:#edf1f8; color:#244778; }
.scenario-pill.below { background:#fff0e5; color:#853f18; }
.scenario-pill.not_comparable { background:#f1f2f0; color:#555e56; }
.scenario-subtle { display:block; margin-top:5px; font-size:11px; color:var(--text-dim); }
.scenario-site a { color:var(--accent); }
.scenario-print { display:none; }
@media (max-width:600px) {
  .prototype-banner { padding:10px 16px; }
  .main { padding:16px; }
  .scenario-site { padding:12px; }
  .scenario-table td { min-width:135px; }
  .scenario-report h2 { font-size:22px; }
}
@media print {
  .prototype-banner, .scenario-screen, .scenario-toolbar { display:none !important; }
  .scenario-print { display:block !important; }
  .scenario-report { margin-bottom:20px; }
  .scenario-report h2 { font-size:18px; }
  .scenario-print article { break-inside:avoid; padding:10px 0; border-bottom:1px solid #ccc; font-size:10px; line-height:1.6; }
  .scenario-print table { width:100%; border-collapse:collapse; }
  .scenario-print td, .scenario-print th { padding:4px; text-align:left; border-bottom:1px solid #eee; }
}
@media (max-width:600px) {
  header { position:static; height:auto; flex-wrap:wrap; padding:12px 16px; gap:10px; }
  .tool-nav { margin-left:0; width:100%; gap:14px; flex-wrap:wrap; }
  .tool-nav a { height:24px; }
  .header-right { margin-left:0; width:100%; flex-wrap:wrap; }
  .field-inline { min-width:0; }
  #apiBase, #apiKey { width:145px; }
  .summary-bar { flex-wrap:wrap; }
  .results-toolbar { flex-wrap:wrap; gap:10px; }
  .results-actions { flex-wrap:wrap; }
}
@media print {
  /* The scenario export has its own flat report, independent of legacy table width. */
  #mainContent:has(#scenarioResults .scenario-print) > :not(#scenarioResults) { display:none !important; }
}

.scenario-verdicts, .scenario-limits, .scenario-source-summary { margin: 16px 0; font-size: 12px; line-height: 1.6; }
.scenario-report section table { width: 100%; border-collapse: collapse; }
.scenario-report section th, .scenario-report section td { text-align: left; padding: 6px; border-bottom: 1px solid #ccc; overflow-wrap: anywhere; }
@media print {
  .scenario-overflow { overflow: visible; }
  .scenario-report section table { table-layout: fixed; font-size: 9px; }
  .scenario-report thead { display: table-header-group; }
  .scenario-report tr { break-inside: avoid; }
  .scenario-print article { overflow-wrap: anywhere; }
  .scenario-report h3 { break-after: avoid; }
}
