/* LAKANA SOS quick sensitivity component.
   Proof Theater panel contrast is owned by lakana-sos-v21-worldclass.css. */
:root{--lakana-visible-ink:#F4F6F9;--lakana-visible-muted:#E8EDF2;--lakana-deep-ink:#0D1B2A}

/* Quick Sensitivity Check. */
.sos-quick-sensitivity[hidden]{display:none!important}
.sos-quick-sensitivity:not([hidden]){display:block!important;visibility:visible!important;position:relative!important;z-index:8!important;margin:28px 0!important;border-top:1px solid rgba(207,157,42,.28);border-bottom:1px solid rgba(207,157,42,.22);background:radial-gradient(circle at 92% 0,rgba(207,157,42,.12),transparent 22rem),linear-gradient(180deg,#07111f,#0A1625);color:#F4F6F9}
.sos-quick-sensitivity *{box-sizing:border-box}.sos-quick-sensitivity .qs-shell{max-width:1180px;margin:0 auto;padding:46px 18px}.sos-quick-sensitivity .qs-card{border:1px solid rgba(232,237,242,.12);border-left:6px solid #CF9D2A;border-radius:24px;background:radial-gradient(circle at 94% 0,rgba(207,157,42,.10),transparent 22rem),linear-gradient(145deg,rgba(22,42,69,.94),rgba(10,22,37,.98));box-shadow:0 18px 48px rgba(0,0,0,.22);padding:20px}.sos-quick-sensitivity .qs-main-card{border-left-color:#0D7377}.sos-quick-sensitivity .qs-kicker{color:#CF9D2A!important;font-size:.76rem;font-weight:950;letter-spacing:.15em;text-transform:uppercase}.sos-quick-sensitivity h2{margin:8px 0 10px;color:#fff!important;font-size:clamp(1.85rem,4vw,3.35rem);line-height:.98;letter-spacing:-.045em}.sos-quick-sensitivity h3{margin:0 0 8px;color:#fff!important}.sos-quick-sensitivity p,.sos-quick-sensitivity li{color:rgba(244,246,249,.86)!important;line-height:1.55}.sos-quick-sensitivity .qs-grid{display:grid;grid-template-columns:minmax(310px,.85fr) minmax(0,1.15fr);gap:14px;align-items:start}.sos-quick-sensitivity .qs-pillrow{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.sos-quick-sensitivity .qs-pill{border:1px solid rgba(13,115,119,.38);background:rgba(13,115,119,.10);color:#fff!important;border-radius:999px;padding:7px 10px;font-size:.82rem;font-weight:900}.sos-quick-sensitivity .qs-explain,.sos-quick-sensitivity .qs-receipt{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:14px}.sos-quick-sensitivity .qs-explain div,.sos-quick-sensitivity .qs-receipt div,.sos-quick-sensitivity .qs-legend div{border:1px solid rgba(232,237,242,.12);border-radius:16px;background:rgba(232,237,242,.07);padding:10px}.sos-quick-sensitivity .qs-explain b,.sos-quick-sensitivity .qs-receipt b,.sos-quick-sensitivity .qs-legend b{display:block;color:#fff!important}.sos-quick-sensitivity .qs-explain span,.sos-quick-sensitivity .qs-receipt span,.sos-quick-sensitivity .qs-legend span{display:block;color:rgba(244,246,249,.70)!important;font-size:.82rem;margin-top:2px;line-height:1.35}.sos-quick-sensitivity .qs-run{border:0;border-radius:999px;background:linear-gradient(135deg,#0D7377,#7244C4);color:#fff!important;font-weight:1000;padding:13px 16px;cursor:pointer;margin-top:14px;width:100%;box-shadow:0 0 28px rgba(13,115,119,.22)}.sos-quick-sensitivity .qs-run:disabled{opacity:.55;cursor:not-allowed}.sos-quick-sensitivity .qs-status{margin-top:12px;border-radius:16px;background:rgba(232,237,242,.08);border:1px solid rgba(232,237,242,.12);padding:12px;color:#E8EDF2!important}.sos-quick-sensitivity .qs-results{display:grid;gap:10px;margin-top:12px}.sos-quick-sensitivity .qs-row{display:grid;grid-template-columns:minmax(160px,.7fr) 1fr minmax(130px,.32fr);gap:10px;align-items:center;border:1px solid rgba(232,237,242,.10);border-radius:16px;background:rgba(232,237,242,.06);padding:10px}.sos-quick-sensitivity .qs-row strong{color:#fff!important}.sos-quick-sensitivity .qs-row span{color:#E8EDF2!important;font-weight:900}.sos-quick-sensitivity .qs-bar{height:10px;border-radius:999px;background:rgba(232,237,242,.12);overflow:hidden}.sos-quick-sensitivity .qs-bar i{display:block;height:100%;background:linear-gradient(90deg,#0D7377,#CF9D2A)}.sos-quick-sensitivity .qs-note{font-size:.86rem;color:rgba(244,246,249,.72)!important}.sos-quick-sensitivity .qs-legend{display:grid;gap:8px;margin-top:14px}.sos-quick-sensitivity .qs-cta{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.sos-quick-sensitivity .qs-cta a{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:11px 14px;color:#fff!important;text-decoration:none;font-weight:950;border:1px solid rgba(207,157,42,.45);background:rgba(207,157,42,.12)}.sos-quick-sensitivity .qs-cta a.primary{background:linear-gradient(135deg,#0D7377,#7244C4)}
.sos-quick-sensitivity .qs-shell.lakana-shell{max-width:var(--lakana-shell-max);padding:46px 0}
.sos-quick-sensitivity .qs-row{grid-template-columns:minmax(160px,.7fr) minmax(0,1fr) minmax(130px,.32fr)}
.sos-quick-sensitivity .qs-row>*{min-width:0}

/* Reflowed sensitivity layout: full-width bands, no dead left rail. */
.sos-quick-sensitivity .qs-reflowed .qs-grid{display:block}
.sos-quick-sensitivity .qs-utility-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(240px,320px);
  gap:16px;
  margin-bottom:16px;
}
.sos-quick-sensitivity .qs-summary-card{border-left-color:#0D7377}
.sos-quick-sensitivity .qs-actions-card .qs-cta{margin-top:8px}
.sos-quick-sensitivity .qs-bands-card{width:100%}
.sos-quick-sensitivity .qs-results-grid,
.sos-sensitivity-options .sso-sweep-results.qs-results-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:12px;
  width:100%;
}
.sos-quick-sensitivity .qs-results-grid > .qs-note,
.sos-sensitivity-options .qs-results-grid > .qs-note{
  grid-column:1 / -1;
}
.sos-quick-sensitivity .qs-results-grid .qs-band-card,
.sos-sensitivity-options .qs-results-grid .qs-band-card{
  display:flex;
  flex-direction:column;
  gap:8px;
  grid-template-columns:1fr;
  align-items:stretch;
}
.sos-quick-sensitivity .qs-summary-pressure,
.sos-quick-sensitivity .qs-summary-drivers{margin-top:12px}
.sos-quick-sensitivity .qs-summary-block{
  border:1px solid rgba(232,237,242,.12);
  border-radius:16px;
  background:rgba(232,237,242,.06);
  padding:10px;
}
.sos-quick-sensitivity .qs-summary-block b{display:block;color:#fff!important}
.sos-quick-sensitivity .qs-summary-block span,
.sos-quick-sensitivity .qs-driver-list li{color:rgba(244,246,249,.78)!important;font-size:.84rem;line-height:1.45}
.sos-quick-sensitivity .qs-driver-list{margin:6px 0 0;padding-left:18px}

@media(max-width:900px){.sos-quick-sensitivity{margin:18px 0!important}.sos-quick-sensitivity .qs-grid,.sos-quick-sensitivity .qs-row,.sos-quick-sensitivity .qs-explain,.sos-quick-sensitivity .qs-receipt{grid-template-columns:1fr}}
@media(max-width:760px){
  .sos-quick-sensitivity .qs-utility-row{grid-template-columns:1fr}
  .sos-quick-sensitivity .qs-results-grid,
  .sos-sensitivity-options .sso-sweep-results.qs-results-grid{grid-template-columns:1fr}
}

/* Sensitivity Options wrapper (sits between Monte Carlo run result and receipt). */
.sos-sensitivity-options{
  margin:22px 0 0;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.08);
}
.sos-sensitivity-options .sso-kicker{
  text-transform:uppercase;letter-spacing:.1em;font-size:.72rem;font-weight:800;color:#CF9D2A;margin-bottom:6px;
}
.sos-sensitivity-options h3{margin:0 0 8px;font-size:1.2rem;color:#F4F6F9;}
.sos-sensitivity-options .sso-help{
  margin:0 0 16px;font-size:.82rem;line-height:1.55;color:rgba(244,246,249,.78);max-width:80ch;
}
.sos-sensitivity-options .sso-grid{display:grid;gap:16px;}
.sos-sensitivity-options .sos-quick-sensitivity{margin:0!important;border-top:none;border-bottom:none;border-radius:20px;}
.sso-sweep-card{border-left-color:#7244C4!important;}
.sso-presets{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;}
.sso-presets button{
  border:1px solid rgba(114,68,196,.4);border-radius:999px;background:rgba(114,68,196,.08);
  color:#F4F6F9;font-weight:800;font-size:.76rem;padding:8px 14px;cursor:pointer;
}
.sso-presets button.active{background:linear-gradient(135deg,#7244C4,#4a1fb0);border-color:transparent;}
.sso-run-sweep{
  display:block;width:100%;margin-top:14px;border:0;border-radius:999px;
  background:linear-gradient(135deg,#7244C4,#0D7377);color:#fff;font-weight:1000;
  padding:13px 16px;cursor:pointer;
}
.sso-run-sweep:hover{filter:brightness(1.08);}
.sso-sweep-results{margin-top:14px;}
.sso-disclaimer{margin:12px 0 0!important;font-size:.76rem!important;color:rgba(244,246,249,.65)!important;line-height:1.5;}

/* Reviewer explanation block: what sensitivity is for / what the sweep
   does / how to read the result. Mirrors the .qs-explain 3-card pattern
   used elsewhere on this page for visual consistency. */
.sso-explain{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0 18px;}
.sso-explain div{border:1px solid rgba(232,237,242,.12);border-radius:16px;background:rgba(232,237,242,.06);padding:12px;}
.sso-explain b{display:block;color:#F4F6F9;font-size:.84rem;margin-bottom:4px;}
.sso-explain span{display:block;color:rgba(244,246,249,.72);font-size:.8rem;line-height:1.5;}

/* Row sublabels (public layer + source) under each ranked control's name,
   and the plain-English "what this means" paragraph after the rows.
   Not scoped to a specific ancestor so it applies both inside the Quick
   Sensitivity Bands card and the Public Input Influence Sweep card. */
.qs-row strong{display:flex;flex-direction:column;gap:2px;}
.qs-row strong small{font-weight:700;font-size:.68rem;color:rgba(232,237,242,.55);text-transform:none;letter-spacing:0;}
.qs-meaning{margin-top:8px!important;padding-top:10px;border-top:1px solid rgba(232,237,242,.12);font-weight:600!important;}

@media(max-width:900px){
  .sos-sensitivity-options .sso-grid{grid-template-columns:1fr;}
  .sso-explain{grid-template-columns:1fr;}
}
@media(max-width:720px){
  .qs-row{grid-template-columns:1fr!important;text-align:left;}
  .qs-row span{text-align:left!important;}
}

/* The elite readability pass (lakana-sos-capstone-elite.css) repaints
   #sosQuickSensitivity .qs-card to a light paper background and darkens
   h2/h3/b/p/span/li, but its selector list never covered the influence-band
   row label, which is a <strong> (with a nested <small> sublabel) rather
   than one of those tags. Left uncorrected, every band row in the
   Sensitivity Readout rendered white-on-white-ish. Matches the same
   ink/copy colors the elite pass already uses for this card. */
#sosQuickSensitivity .qs-card strong{color:#102437!important}
#sosQuickSensitivity .qs-card strong small{color:#314e65!important}
