.ss-experiments {
  --exp-navy: #101b2d;
  --exp-border: rgba(148, 163, 184, .23);
  --exp-muted: #aebbd0;
  color: #e7edf5;
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
  min-width: 0;
}
.ss-experiments[hidden] { display: none; }
.ss-experiments *, .ss-experiments *::before, .ss-experiments *::after { box-sizing: border-box; }
.ss-experiments h1, .ss-experiments h2, .ss-experiments h3, .ss-experiments p { margin: 0; }
.ss-experiments h1 { font-size: clamp(1.85rem, 3vw, 2.45rem); font-weight: 750; letter-spacing: -.045em; line-height: 1.1; }
.ss-experiments h2 { font-size: 1.3rem; line-height: 1.3; font-weight: 700; letter-spacing: -.025em; overflow-wrap: anywhere; }
.ss-experiments h3 { font-size: .96rem; font-weight: 650; line-height: 1.4; }
.ss-experiments p { line-height: 1.6; }
.ss-experiments a { color: #83bbff; text-decoration: underline; text-underline-offset: 3px; }
.ss-experiments button, .ss-experiments input, .ss-experiments select, .ss-experiments textarea { font: inherit; }
.ss-experiments button { cursor: pointer; }
.ss-experiments button:disabled { cursor: progress; opacity: .55; }
.ss-experiments :focus-visible { outline: 2px solid #7ec2ff; outline-offset: 4px; }
.ss-exp-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; padding: .65rem .15rem .2rem; }
.ss-exp-header > div > p:last-child { margin-top: .7rem; color: var(--exp-muted); font-size: .95rem; }
.ss-exp-eyebrow { color: #79d9cc; font-size: .65rem; font-weight: 750; letter-spacing: .16em; text-transform: uppercase; margin-bottom: .55rem !important; }
.ss-exp-badge { background: #113c38; border: 1px solid #246c61; color: #9ce9d9; padding: .35rem .7rem; border-radius: 999px; font-size: .72rem; font-weight: 650; white-space: nowrap; }
.ss-exp-toolbar { display: flex; flex-wrap: wrap; align-items: end; justify-content: space-between; gap: 1rem; border-top: 1px solid var(--exp-border); padding-top: 1.2rem; }
.ss-exp-toolbar > label { min-width: min(21rem, 100%); max-width: 100%; }
.ss-experiments label { display: flex; flex-direction: column; gap: .48rem; color: #e0e7f0; font-size: .83rem; font-weight: 600; min-width: 0; }
.ss-experiments input, .ss-experiments select, .ss-experiments textarea { display: block; width: 100%; color: #f0f5fa; border: 1px solid #4a586b; background: #0b1422; border-radius: .55rem; padding: .7rem .8rem; line-height: 1.5; min-height: 2.65rem; min-width: 0; color-scheme: dark; font-size: .88rem; font-weight: 400; }
.ss-experiments textarea { resize: vertical; }
.ss-experiments input::placeholder, .ss-experiments textarea::placeholder { color: #8899af; opacity: 1; }
.ss-experiments fieldset { padding: 0; margin: 0; min-width: 0; border: 0; }
.ss-exp-actions, .ss-exp-form-footer { display: flex; flex-wrap: wrap; gap: .65rem; align-items: center; }
.ss-exp-button { border: 1px solid #526078; background: #132238; color: #e4edf9; font-size: .8rem !important; font-weight: 650 !important; border-radius: .6rem; padding: .68rem .9rem; min-height: 2.65rem; line-height: 1.35; transition: background .15s, border-color .15s; }
.ss-exp-button:hover { background: #203651; border-color: #8abaff; }
.ss-exp-button--primary { color: #062820; background: #77ddc6; border-color: #88e7d2; }
.ss-exp-button--primary:hover { color: #03251c; background: #9cebdc; border-color: #aeffed; }
.ss-exp-workspace { display: grid; grid-template-columns: 15rem minmax(0, 1fr); gap: 1.2rem; align-items: start; }
.ss-exp-library { border: 1px solid var(--exp-border); border-radius: .9rem; background: #101722; overflow: hidden; }
.ss-exp-library-title { display: flex; align-items: center; justify-content: space-between; padding: 1rem; gap: .5rem; border-bottom: 1px solid var(--exp-border); }
.ss-exp-library-title h2 { font-size: .82rem; font-weight: 650; letter-spacing: 0; }
.ss-exp-library-title > span { color: var(--exp-muted); font-size: .75rem; }
.ss-exp-library-empty { padding: 1rem; font-size: .83rem; }
.ss-exp-library-item { width: 100%; display: flex; flex-direction: column; align-items: flex-start; gap: .4rem; text-align: left; border: 0; border-bottom: 1px solid var(--exp-border); background: transparent; color: #d4e0ee; padding: 1rem; border-left: 3px solid transparent; overflow-wrap: anywhere; }
.ss-exp-library-item:last-child { border-bottom: 0; }
.ss-exp-library-item:hover { background: #172a40; }
.ss-exp-library-item.is-selected { background: #15322f; border-left-color: #7cdcca; }
.ss-exp-library-item strong { font-size: .87rem; line-height: 1.4; }
.ss-exp-library-item > span { color: #b0bdce; font-size: .73rem; }
.ss-exp-library-item > .ss-exp-library-status { font-size: .62rem; font-weight: 700; letter-spacing: .075em; text-transform: uppercase; color: #86d6c9; }
.ss-exp-content { display: flex; flex-direction: column; min-width: 0; gap: 1.2rem; }
.ss-exp-card { border: 1px solid var(--exp-border); border-radius: 1rem; background: linear-gradient(145deg, #122238, #0e1726 65%); padding: 1.4rem; min-width: 0; box-shadow: 0 15px 42px #0002; }
.ss-exp-section-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; margin-bottom: 1.2rem; }
.ss-exp-section-heading > .ss-exp-button { flex-shrink: 0; }
.ss-exp-empty { padding: clamp(1.4rem, 3vw, 2.4rem); }
.ss-exp-empty > p { max-width: 42rem; margin-top: .8rem; color: #b9c8db; font-size: .91rem; }
.ss-exp-empty > .ss-exp-actions { margin-top: 1.7rem; }
.ss-exp-empty code { display: block; white-space: normal; overflow-wrap: anywhere; border: 1px solid var(--exp-border); border-radius: .5rem; background: #090f1c; padding: .8rem; margin-top: .8rem; font-size: .83rem; }
.ss-exp-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; padding: 0; margin: 1.7rem 0; list-style: none; counter-reset: experiment-step; }
.ss-exp-steps li { border-top: 2px solid #348d81; padding-top: .8rem; counter-increment: experiment-step; }
.ss-exp-steps li::before { content: "0" counter(experiment-step); display: block; color: #79d9cc; font-size: .7rem; font-weight: 700; margin-bottom: .6rem; }
.ss-exp-steps strong { font-size: .95rem; }
.ss-exp-steps span { display: block; color: var(--exp-muted); font-size: .8rem; line-height: 1.5; margin-top: .5rem; }
.ss-exp-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.1rem; margin-top: 1rem; }
.ss-exp-span { grid-column: 1 / -1; }
.ss-exp-help { color: var(--exp-muted); font-size: .74rem; font-weight: 400; line-height: 1.5; }
p.ss-exp-help { margin-top: 1rem; }
.ss-exp-optional { color: var(--exp-muted); font-size: .74rem; font-weight: 400; }
.ss-exp-period { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; border: 1px solid var(--exp-border); border-radius: .65rem; padding: .9rem; background: #101c2c; }
.ss-exp-period h3 { grid-column: 1 / -1; color: #a8caff; font-size: .84rem; }
.ss-exp-form-footer { border-top: 1px solid var(--exp-border); padding-top: 1rem; margin-top: 1.3rem; }
.ss-exp-description { color: #d3dfec; font-size: .94rem; white-space: pre-wrap; overflow-wrap: anywhere; }
.ss-exp-hypothesis { padding: .85rem 1rem; border-left: 2px solid #609be7; background: #19355555; color: #bdcee2; font-size: .86rem; margin-top: 1rem !important; overflow-wrap: anywhere; }
.ss-exp-hypothesis strong { display: block; color: #accdff; font-size: .71rem; letter-spacing: .06em; text-transform: uppercase; margin-bottom: .3rem; }
.ss-exp-plan-facts { display: grid; grid-template-columns: 1fr 1fr .6fr; gap: .9rem; padding: 1.3rem 0; }
.ss-exp-plan-facts span, .ss-exp-plan-facts strong { display: block; }
.ss-exp-plan-facts span { font-size: .69rem; color: var(--exp-muted); margin-bottom: .35rem; }
.ss-exp-plan-facts strong { font-weight: 550; font-size: .84rem; line-height: 1.5; }
.ss-exp-evidence { border-top: 1px solid var(--exp-border); padding-top: .9rem; margin-top: 1rem; min-width: 0; }
.ss-exp-evidence summary { cursor: pointer; color: #a3c8fb; font-size: .8rem; font-weight: 600; line-height: 1.5; }
.ss-exp-evidence p { margin-top: .8rem; font-size: .82rem; color: #bdcadd; overflow-wrap: anywhere; }
.ss-exp-evidence h3 { margin-top: .9rem; font-size: .8rem; }
.ss-exp-id-list { font-family: ui-monospace, monospace; font-size: .76rem !important; }
.ss-exp-muted { color: var(--exp-muted); font-size: .79rem; }
.ss-exp-lineage { margin-top: 1rem !important; font-size: .82rem; color: #b5c3d6; }
.ss-exp-lineage button { padding: .25rem 0; border: 0; background: none; color: #8fc3ff; text-decoration: underline; text-underline-offset: 3px; font-size: .82rem; overflow-wrap: anywhere; }
.ss-exp-metrics { display: grid; grid-template-columns: 1.3fr 1fr 1fr; gap: .7rem; margin-top: 1.2rem; }
.ss-exp-metric { background: #0c1624; padding: 1rem; border: 1px solid #314359; border-radius: .7rem; }
.ss-exp-metric--teal { background: #0f302f; border-color: #397f72; }
.ss-exp-metric > span { font-size: .65rem; text-transform: uppercase; letter-spacing: .08em; color: #b1c4d9; font-weight: 650; display: block; min-height: 2.1rem; }
.ss-exp-metric > strong { display: block; font-size: clamp(1.25rem, 2.1vw, 1.85rem); color: #edf6ff; font-weight: 700; margin-top: .4rem; overflow-wrap: anywhere; }
.ss-exp-metric--teal > strong { color: #8ce5d1; }
.ss-exp-metric small { font-size: .85rem; color: #b9c7d8; }
.ss-exp-metric p { color: #adc0d3; font-size: .71rem; margin-top: .55rem; }
.ss-exp-context { margin-top: 1rem !important; font-size: .79rem; color: #adc0d3; }
.ss-exp-interpretation { color: #d7ebe9; font-size: .91rem; margin-top: 1.15rem !important; border-left: 2px solid #5abbaa; padding-left: .85rem; }
.ss-exp-limitations { color: #b1c0d3; font-size: .79rem; line-height: 1.55; padding-left: 1.1rem; margin: .85rem 0 0; }
.ss-exp-limitations li + li { margin-top: .5rem; }
.ss-exp-notice { border: 1px solid #43668c; border-radius: .65rem; padding: 1rem; background: #163450; color: #d8e9fb; font-size: .83rem; line-height: 1.55; }
.ss-exp-notice--amber { border-color: #8c6534; background: #33281e; color: #f6d6a3; margin-top: 1rem; }
.ss-exp-notice--error { border-color: #b76559; background: #382326; color: #ffc6c0; }
.ss-exp-notice .ss-exp-button { margin-left: .75rem; }
.ss-exp-notice h3 { font-size: .85rem; }
.ss-exp-notice ul { margin: .6rem 0 0; padding-left: 1.1rem; }
.ss-exp-live { color: #94decf; font-size: .85rem; line-height: 1.4; }
.ss-exp-live:empty { display: none; }
.ss-exp-item-results { display: flex; flex-direction: column; gap: 1rem; margin-top: 1.25rem; }
.ss-exp-item { border: 1px solid #34475f; border-radius: .8rem; background: #101d30; padding: 1.1rem; }
.ss-exp-item-heading { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; gap: .8rem; }
.ss-exp-item-heading h3 { font-size: 1rem; overflow-wrap: anywhere; }
.ss-exp-item-heading p { font-size: .74rem; color: #9fb1c9; margin-top: .3rem; overflow-wrap: anywhere; }
.ss-exp-result { color: #8ae5d0; font-size: 1.25rem; font-weight: 700; line-height: 1.1; }
.ss-exp-result small { display: block; font-size: .62rem; color: #a6bfd0; font-weight: 500; margin-top: .4rem; }
.ss-exp-result--muted { color: #e3c291; font-size: .93rem; }
.ss-exp-reasons { font-size: .8rem; color: #edd1a7; padding-left: 1.1rem; margin: .9rem 0; line-height: 1.5; }
.ss-exp-table-wrap { max-width: 100%; overflow-x: auto; margin-top: 1rem; }
.ss-experiments table { width: 100%; border-collapse: collapse; font-size: .79rem; text-align: right; }
.ss-experiments caption { text-align: left; color: #a8bbd1; font-size: .69rem; margin-bottom: .5rem; }
.ss-experiments th, .ss-experiments td { border-bottom: 1px solid #344259; padding: .6rem .45rem; vertical-align: top; }
.ss-experiments thead th { font-size: .69rem; color: #a4b7cf; font-weight: 550; }
.ss-experiments th:first-child { text-align: left; font-weight: 500; }
.ss-exp-id-cell { font-family: ui-monospace, monospace; font-size: .7rem; overflow-wrap: anywhere; max-width: 18rem; }
.ss-exp-peer-label, .ss-exp-peer-warning { display: block; font-family: ui-sans-serif, system-ui, sans-serif; font-size: .69rem; margin-top: .4rem; line-height: 1.5; color: #a7bbd2; }
.ss-exp-peer-warning { color: #eac58d; }
.ss-exp-source { margin-bottom: 0; display: grid; grid-template-columns: 1fr 1fr; gap: .8rem; font-size: .75rem; }
.ss-exp-source dt { color: #95b0ce; margin-bottom: .3rem; }
.ss-exp-source dd { margin: 0; overflow-wrap: anywhere; }
@media (max-width: 1000px) {
  .ss-exp-workspace { grid-template-columns: 12rem minmax(0, 1fr); gap: .8rem; }
  .ss-exp-card { padding: 1.1rem; }
  .ss-exp-period { grid-template-columns: 1fr; }
  .ss-exp-metrics { grid-template-columns: 1fr 1fr; }
  .ss-exp-metric:first-child { grid-column: 1 / -1; }
  .ss-exp-metric > span { min-height: 0; }
}
@media (max-width: 700px) {
  .ss-exp-workspace { grid-template-columns: 1fr; }
  .ss-exp-library { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); max-height: 17rem; overflow-y: auto; }
  .ss-exp-library-title, .ss-exp-library-empty { grid-column: 1 / -1; }
  .ss-exp-library-item { padding: .8rem; }
  .ss-exp-header { flex-wrap: wrap; }
  .ss-exp-card { padding: 1rem; }
  .ss-exp-form-grid { grid-template-columns: 1fr; }
  .ss-exp-period { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ss-exp-toolbar > label { flex: 1 0 100%; }
  .ss-exp-section-heading { flex-wrap: wrap; }
  .ss-exp-plan-facts { grid-template-columns: 1fr; gap: .7rem; }
  .ss-exp-plan-facts > div { display: flex; justify-content: space-between; gap: 1rem; }
  .ss-exp-plan-facts strong { text-align: right; }
  .ss-exp-steps { grid-template-columns: 1fr; gap: 1rem; }
  .ss-exp-steps li { display: grid; grid-template-columns: 1.5rem 1fr; column-gap: .6rem; }
  .ss-exp-steps li::before { grid-row: span 2; padding-top: .2rem; }
  .ss-exp-steps span { margin-top: .25rem; }
  .ss-exp-item { padding: .85rem; }
  .ss-exp-metric { padding: .85rem; }
  .ss-exp-source { grid-template-columns: 1fr; }
  .ss-exp-notice .ss-exp-button { margin: .7rem 0 0; display: block; }
}
@media (prefers-reduced-motion: reduce) { .ss-exp-button { transition: none; } }
@media print { .ss-exp-toolbar, .ss-exp-library, .ss-exp-button { display: none; } .ss-exp-workspace { display: block; } }
