.cc-chain-first-look {
  color: #eaf5f5;
  background: linear-gradient(140deg, #122c36, #22434b);
  border: 1px solid #638a8f;
  border-radius: 16px;
  padding: clamp(.8rem, 2vw, 1.25rem);
  box-shadow: inset 0 1px rgba(255,255,255,.12), 0 10px 30px rgba(0,18,25,.16);
  overflow: hidden;
}
.cc-chain-first-look * { box-sizing: border-box; }
.cc-chain-kicker {
  margin: 0 0 .28rem;
  color: #b8e0dd;
  font: 800 .66rem/1.3 system-ui, sans-serif;
  letter-spacing: .15em;
}
.cc-chain-first-look h4 { color: white; margin: 0 0 .7rem; font-size: clamp(1.05rem, 2vw, 1.35rem); }
.cc-chain-prompt { max-width: 76ch; line-height: 1.44; margin: 0 0 .85rem; }
.cc-chain-button {
  appearance: none;
  border: 1px solid #a6c4c7;
  border-radius: 9px;
  background: #edf5f3;
  color: #133c42;
  padding: .55rem .72rem;
  font: 750 .82rem/1.32 system-ui, sans-serif;
  cursor: pointer;
  text-align: left;
}
.cc-chain-button:hover, .cc-chain-button:focus-visible { background: #fff; border-color: #39c4b8; }
.cc-chain-button:focus-visible { outline: 3px solid #ffdf8c; outline-offset: 2px; }
.cc-chain-button[aria-pressed="true"] { color: #07383a; background: #59d9cb; border-color: #59d9cb; }
.cc-chain-pacing-stage, .cc-chain-clock-grid, .cc-chain-lead-map {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 13rem), 1fr));
  gap: .6rem;
  margin: .7rem 0;
}
.cc-chain-lane, .cc-chain-clock-lane, .cc-chain-lead-zone, .cc-chain-view-status {
  min-width: 0;
  padding: .78rem;
  background: #edf6f5;
  color: #153a40;
  border: 1px solid #c2d8d9;
  border-radius: 11px;
}
.cc-chain-lane { display: flex; flex-direction: column; gap: .6rem; border-top: 4px solid #89beb9; }
.cc-chain-lane.is-electrical { border-top-color: #b5bed7; }
.cc-chain-lane.is-circulation { border-top-color: #dfa5a0; }
.cc-chain-lane small, .cc-chain-lead-zone small, .cc-chain-view-status span, .cc-chain-clock-event small {
  display: block;
  color: #416a70;
  font: 800 .65rem/1.3 system-ui, sans-serif;
  letter-spacing: .07em;
}
.cc-chain-lane strong { display: block; font-size: .89rem; line-height: 1.38; flex: 1; }
.cc-chain-lead-row { display: flex; flex-wrap: wrap; gap: .4rem; margin-top: .5rem; }
.cc-chain-lead-row .cc-chain-button { min-width: 3.3rem; text-align: center; }
.cc-chain-view-status strong { display: block; margin: .32rem 0; }
.cc-chain-view-status p { margin: .25rem 0; }
.cc-chain-case-note { border-left: 4px solid #f3c98c; padding-left: .65rem; font-weight: 700; }
.cc-chain-clock-lane h5 { margin: 0 0 .6rem; color: #17434b; font-size: .9rem; }
.cc-chain-clock-event {
  background: white;
  border: 1px solid #c3d7d9;
  border-left: 4px solid #79c0b8;
  border-radius: 9px;
  padding: .65rem;
  margin: .46rem 0;
}
.cc-chain-clock-event[data-phase="pending"], .cc-chain-clock-event[data-phase="unavailable"] { border-left-color: #d9aa75; }
.cc-chain-clock-event[data-phase="planned"] { border-left-color: #b7a6cd; }
.cc-chain-clock-event strong { display: block; margin: .27rem 0 .48rem; font-size: .85rem; line-height: 1.36; }
.cc-chain-clock-event p { margin: .5rem 0 0; font-size: .8rem; line-height: 1.38; }
.cc-chain-actions { display: flex; gap: .5rem; flex-wrap: wrap; margin-top: .85rem; }
.cc-chain-feedback {
  margin-top: .8rem;
  padding: .75rem;
  color: #153a40;
  background: #e0f0ee;
  border: 1px solid #9fceca;
  border-radius: 10px;
  line-height: 1.42;
}
.cc-chain-feedback strong { display: block; margin-bottom: .3rem; }
.cc-chain-feedback p { margin: .25rem 0; }
.cc-chain-boundary { margin: .7rem 0 0; color: #c7dddd; font-size: .74rem; line-height: 1.4; }
@media (max-width: 420px) {
  .cc-chain-first-look { padding: .72rem; border-radius: 12px; }
  .cc-chain-pacing-stage, .cc-chain-clock-grid, .cc-chain-lead-map { grid-template-columns: 1fr; }
  .cc-chain-actions .cc-chain-button { flex: 1 1 100%; }
}
