:root{
  --nuclear-violet:#7659a7;
  --nuclear-blue:#086bd8;
  --nuclear-ink:#122236;
  --nuclear-paper:#f5f9fd;
  --nuclear-mint:#e8f7ef;
  --nuclear-lilac:#f0ebfb;
  --nuclear-gold:#fff3d1;
}

body{background:linear-gradient(180deg,#f3f8fb 0%,#fbfaf6 100%)}
.nuclear-masthead{align-items:center;background:
  radial-gradient(circle at 84% 20%,rgba(25,185,203,.34),transparent 28%),
  radial-gradient(circle at 66% 86%,rgba(118,89,167,.25),transparent 29%),
  linear-gradient(135deg,#06273e 0%,#14516e 60%,#514572 100%)}
.nuclear-masthead h1{max-width:980px}

.presentation-header .eyebrow{color:var(--nuclear-violet)}
.journey{background:linear-gradient(180deg,#082b43,#174c6a 64%,#514572)}
.point-button.active{color:#17314a;background:#fff}
.ensemble-block{background:var(--nuclear-lilac)}
.decision-block{background:var(--nuclear-mint)}
.primary-button{border-color:var(--nuclear-blue)!important;background:var(--nuclear-blue)!important}

.experiment-content{display:grid;align-content:start;gap:18px;min-height:500px;background:linear-gradient(180deg,#fff 0,#fbfcfc 100%)}
.experiment-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,.7fr);gap:16px}
.concept-card,.research-card,.lab-card,.metric-card,.mini-card{border:1px solid var(--line);border-radius:14px;background:#fff}
.concept-card{padding:20px}
.concept-card h4,.research-card h4,.lab-card h4{margin:0 0 8px;font-size:1.08rem}.concept-card p,.research-card p,.lab-card p{margin:0;color:#56626d;line-height:1.6}
.research-card{position:relative;overflow:hidden;padding:20px;background:linear-gradient(135deg,#f5f0ff,#fff)}
.research-card::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--nuclear-violet)}
.research-label{display:block;margin-bottom:8px;color:var(--nuclear-violet);font-size:.67rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.research-card a{display:inline-flex;margin-top:12px;color:var(--nuclear-blue);font-size:.78rem;font-weight:800;text-decoration:none}.research-card a:hover{text-decoration:underline}

.flow-strip{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:18px;border:1px solid var(--line);border-radius:14px;background:#f7f9fa}.flow-step{padding:9px 11px;border:1px solid #cfd9df;border-radius:9px;background:#fff;font-size:.73rem;font-weight:800}.flow-arrow{color:#7a8792}

.lab-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.lab-card{padding:17px}.lab-card strong{display:block;margin-bottom:7px;color:var(--nuclear-ink)}
.metric-grid-nuclear{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.metric-card{padding:15px;background:#f0f4f6}.metric-card span{display:block;color:#6b7781;font-size:.7rem;font-weight:750}.metric-card strong{display:block;margin-top:5px;font-size:1.25rem}

.control-panel{display:flex;gap:14px;align-items:end;flex-wrap:wrap;padding:16px;border:1px solid var(--line);border-radius:12px;background:#f7f9fa}.control-panel label{display:grid;gap:6px;min-width:190px;color:#65717c;font-size:.69rem;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.control-panel input[type="range"]{width:100%}.control-panel select,.control-panel button{min-height:40px;padding:8px 11px;border:1px solid #cbd4db;border-radius:8px;background:#fff}.control-panel button{font-weight:800;color:#17314a}

.nucleus-scene{position:relative;display:grid;place-items:center;min-height:260px;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:radial-gradient(circle at 50% 45%,#fafcff 0 25%,#eef3f6 60%,#e8edf1 100%)}
.nucleus{position:relative;width:220px;height:180px;border:2px solid #506981;border-radius:48% 52% 45% 55%/56% 45% 55% 44%;background:radial-gradient(circle at 34% 38%,rgba(111,93,151,.22),transparent 28%),radial-gradient(circle at 68% 58%,rgba(43,106,99,.2),transparent 31%),rgba(255,255,255,.68);box-shadow:inset 0 0 24px rgba(26,56,78,.08)}
.chromatin-dot{position:absolute;width:12px;height:12px;border-radius:50%;background:#655a90;box-shadow:0 0 0 5px rgba(101,90,144,.09)}
.chromatin-dot.teal{background:#3b7a72;box-shadow:0 0 0 5px rgba(59,122,114,.09)}
.damage-track{position:absolute;left:42%;top:15%;width:6px;height:70%;border-radius:999px;background:linear-gradient(#e9c269,#c96758);box-shadow:0 0 14px rgba(204,104,84,.35);opacity:.2;transition:.2s ease}.damage-track.active{opacity:1}
.recruitment-ring{position:absolute;left:50%;top:48%;width:38px;height:38px;border:3px solid #4b7e94;border-radius:50%;transform:translate(-50%,-50%) scale(.6);opacity:.18;transition:.25s ease}.recruitment-ring.active{transform:translate(-50%,-50%) scale(1.25);opacity:.9}

.trace-wrap{padding:18px;border:1px solid var(--line);border-radius:14px;background:#fff}.trace{position:relative;height:180px;border-left:1px solid #aeb9c1;border-bottom:1px solid #aeb9c1;background:repeating-linear-gradient(to top,transparent 0 44px,#eef2f4 45px)}.trace-line{position:absolute;inset:0}.trace-line svg{width:100%;height:100%;overflow:visible}.trace-line polyline{fill:none;stroke:#456e8d;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.axis-label{font-size:.68rem;color:#74808a}.trace-footer{display:flex;justify-content:space-between;margin-top:7px}

.state-space{position:relative;height:280px;border:1px solid var(--line);border-radius:16px;background:
  radial-gradient(circle at 28% 65%,rgba(69,110,141,.11),transparent 20%),
  radial-gradient(circle at 70% 34%,rgba(101,90,144,.11),transparent 24%),#fbfcfd}.state-point{position:absolute;width:12px;height:12px;border-radius:50%;background:#456e8d;transition:transform .25s ease,background .25s ease}.state-point.perturbed{background:#7b638f}.state-axis{position:absolute;color:#83909a;font-size:.65rem;font-weight:750}.state-axis.x{right:12px;bottom:8px}.state-axis.y{left:8px;top:12px;writing-mode:vertical-rl;transform:rotate(180deg)}

.spectrum{display:grid;grid-template-columns:repeat(12,1fr);gap:6px;align-items:end;height:220px;padding:18px;border:1px solid var(--line);border-radius:14px;background:#fff}.spectrum-bar{min-height:8px;border-radius:5px 5px 0 0;background:linear-gradient(#5e6f98,#314f70);transition:height .2s ease}.spectrum-bar span{display:none}

.rank-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.rank-item{padding:13px;border:1px solid var(--line);border-radius:10px;background:#fff}.rank-item span{display:block;color:#6e7a84;font-size:.67rem}.rank-item strong{display:block;margin-top:4px}

.plasticity-track{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:8px;align-items:center}.plasticity-state{padding:20px;border:1px solid var(--line);border-radius:13px;background:#fff;text-align:center}.plasticity-state.active{background:#edf4f0;border-color:#adc8bb}.plasticity-arrow{color:#87939c;font-weight:900}

.atlas-table{display:grid;gap:7px}.atlas-row{display:grid;grid-template-columns:130px 1fr 1fr 1fr;gap:7px}.atlas-row>span{padding:9px;border-radius:7px;background:#eef2f4;font-size:.7rem}.atlas-row.header>span{color:#fff;background:#203f63;font-weight:800}

.badge-row{display:flex;flex-wrap:wrap;gap:7px}.state-badge{padding:7px 9px;border-radius:999px;background:#edf1f4;color:#334454;font-size:.69rem;font-weight:800}

.biology-footer{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:24px 40px;border-top:1px solid var(--line);background:#fff;color:#56626d;font-size:.78rem}.biology-footer>div{display:grid;gap:4px}.biology-footer nav{display:flex;gap:16px;flex-wrap:wrap}.biology-footer a{color:#284e70;text-decoration:none;font-weight:750}.biology-footer a:hover{text-decoration:underline}

.python-companion{z-index:1400}.python-stage-note{margin:0 0 12px;color:#5d6872;font-size:.78rem;line-height:1.55}.python-copy-button{margin-top:10px;padding:7px 10px;border:1px solid #cbd4db;border-radius:7px;background:#fff;font-weight:800;cursor:pointer}

@media(max-width:1100px){.masthead-model{display:flex;width:100%;max-width:100%;justify-content:flex-start}.experiment-intro{grid-template-columns:1fr}.metric-grid-nuclear{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.presentation-header{align-items:start;flex-direction:column}.navigation-buttons{width:100%;flex-wrap:wrap}.navigation-buttons button{flex:1 1 auto}.lab-grid,.rank-grid{grid-template-columns:1fr}.metric-grid-nuclear{grid-template-columns:1fr 1fr}.biology-footer{align-items:flex-start;flex-direction:column;padding:22px}.plasticity-track{display:flex;grid-template-columns:none;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;padding-bottom:6px}.plasticity-state{flex:1 0 160px}.plasticity-arrow{flex:0 0 auto;transform:none;text-align:center}.atlas-row{grid-template-columns:1fr 1fr}.atlas-row>span:first-child{grid-column:1/-1}.nuclear-masthead{padding:28px 22px}.nuclear-masthead h1{font-size:clamp(2rem,10vw,3.5rem)}}


/* Nuclear Plasticity Framework: single-row process flow */
.flow-strip {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: nowrap;
  gap: clamp(4px, 0.7vw, 10px);
  overflow-x: auto;
  overflow-y: hidden;
  max-width: 100%;
  padding-inline: clamp(10px, 1.4vw, 18px);
}

.flow-strip > .flow-step {
  flex: 0 0 auto;
  white-space: nowrap;
  padding: 8px clamp(9px, 1vw, 14px);
  font-size: clamp(0.68rem, 0.9vw, 0.82rem);
}

.flow-strip > .flow-arrow {
  flex: 0 0 auto;
  margin: 0;
  white-space: nowrap;
}


/* DENSITY_PASS_20260826: preserve breathing room after redundant content is removed. */
.interpretation-pane {
  align-content: start;
}

.reasoning-block[hidden] {
  display: none !important;
}

.concept-card h4:last-child {
  max-width: 52ch;
  margin-bottom: 0;
  line-height: 1.5;
}

.experiment-intro.sparse {
  grid-template-columns: minmax(0, 0.64fr) minmax(0, 0.36fr);
}

@media (max-width: 1100px) {
  .experiment-intro.sparse {
    grid-template-columns: 1fr;
  }
}
