/* CHE evolution: approved Slim Star interaction, isolated to #che-page .che-evolution. */
#che-page .che-evolution {
  --ev-paper:#fffdfa; --ev-ink:#202326; --ev-muted:#50555a; --ev-line:#c7c8c7;
  --ev-star:#de2d2c; --ev-progress:0%;
  display:block; color:var(--ev-ink); border:1px solid #d6d6d2; border-radius:30px;
  background:var(--ev-paper); overflow:hidden; isolation:isolate;
  transition:background-color .7s ease,color .7s ease,border-color .7s ease,box-shadow .7s ease;
}
/* Override the base che.css mask ONLY inside the evolution component. The same approved
   Slim Star silhouette is recolored red or white through currentColor. */
#che-page .che-evolution .che-star-symbol{
  -webkit-mask-image:url("./assets/brand/che-star-slim.svg?v=20261009-canonical1");
  mask-image:url("./assets/brand/che-star-slim.svg?v=20261009-canonical1");
}
#che-page .che-evolution[data-che-era="today"]{
  --ev-paper:#080b0d; --ev-ink:#f4f6f3; --ev-muted:#c6cfcb; --ev-line:#59626b;
  --ev-star:#f7f7f2; --ev-progress:100%;
  border-color:#3d454c; box-shadow:0 22px 80px rgba(0,0,0,.16);
}
#che-page .che-evolution-scene{padding:clamp(24px,4vw,52px)}
#che-page .che-evolution-scene-top{
  display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;
  color:var(--ev-muted);font-size:13px;letter-spacing:.12em;font-weight:750;
  transition:color .7s ease;
}
#che-page .che-evolution-scene-grid{
  display:grid;grid-template-columns:minmax(140px,.8fr) minmax(0,1.25fr);
  align-items:center;gap:clamp(24px,5vw,76px);padding:22px 0 8px;
}
#che-page .che-evolution-symbol{
  height:clamp(200px,25vw,320px);position:relative;display:grid;place-items:center;
}
/* The diffuse ambient light is behind the vector star, never a second symbol. */
#che-page .che-evolution-symbol::before{
  content:"";position:absolute;inset:2% -10%;border-radius:50%;pointer-events:none;
  background:radial-gradient(circle,rgba(225,240,255,.22) 0%,
    rgba(177,212,246,.14) 30%,rgba(118,173,225,.065) 52%,transparent 74%);
  filter:blur(23px);opacity:0;transition:opacity .7s ease;
}
#che-page .che-evolution[data-che-era="today"] .che-evolution-symbol::before{opacity:1}
#che-page .che-evolution-symbol>.che-evolution-large-star{
  width:clamp(145px,18vw,245px);height:clamp(145px,18vw,245px);
  color:var(--ev-star);filter:none;
  transition:color .7s ease,filter .7s ease;
  transform:rotate(0deg);
}
#che-page .che-evolution[data-che-era="today"] .che-evolution-large-star{
  transform:rotate(0deg);
  filter:
    drop-shadow(0 0 3px rgba(255,255,255,.96))
    drop-shadow(0 0 11px rgba(230,244,255,.8))
    drop-shadow(0 0 27px rgba(192,224,255,.44))
    drop-shadow(0 0 54px rgba(133,190,242,.2));
}
#che-page .che-evolution-symbol-ring{
  position:absolute;width:min(90%,310px);aspect-ratio:1;border-radius:50%;pointer-events:none;
  border:1px solid var(--ev-line);opacity:.46;transition:border-color .7s ease,opacity .7s ease;
}
#che-page .che-evolution-state{
  font-size:13px;letter-spacing:.09em;font-weight:800;color:var(--ev-muted);
  margin-bottom:18px;transition:color .7s ease;
}
#che-page .che-evolution-only-today,
#che-page .che-evolution[data-che-era="today"] .che-evolution-only-earlier{display:none}
#che-page .che-evolution[data-che-era="today"] .che-evolution-only-today{display:inline}
#che-page .che-evolution-scene-copy h3{
  color:var(--ev-ink);font-size:clamp(32px,3.7vw,52px);letter-spacing:-.035em;
  line-height:1.13;margin:0 0 22px;max-width:14ch;transition:color .7s ease;
}
#che-page .che-evolution-scene-copy p{
  color:var(--ev-muted);font-size:18px;line-height:1.65;max-width:54ch;margin:0;transition:color .7s ease;
}
#che-page .che-evolution-controls{
  border-top:1px solid var(--ev-line);padding:23px clamp(24px,4vw,52px) 20px;
  transition:border-color .7s ease;
}
#che-page .che-evolution-control-label{
  display:block;font-size:17px;line-height:1.45;font-weight:700;color:var(--ev-ink);
  margin:0 0 24px;transition:color .7s ease;
}
#che-page .che-evolution-rail{
  position:relative;height:52px;margin:0 19px;display:flex;align-items:center;
}
#che-page .che-evolution-rail-line{
  position:absolute;left:0;right:0;height:3px;border-radius:3px;
  background:linear-gradient(90deg,#b93531,#c98f8c 40%,#8a939b 65%,#e5ecf2);
}
#che-page .che-evolution-handle{
  position:absolute;left:var(--ev-progress);top:50%;transform:translate(-50%,-50%);
  width:44px;height:44px;border:2px solid var(--ev-ink);background:var(--ev-paper);
  display:grid;place-items:center;border-radius:50%;box-shadow:0 3px 13px #0002;
  pointer-events:none;transition:left .5s cubic-bezier(.25,.8,.25,1),background-color .7s ease,border-color .7s ease,box-shadow .7s ease;
}
#che-page .che-evolution-handle .che-star-symbol{
  width:25px;height:25px;color:var(--ev-star);transition:color .7s ease,filter .7s ease;
}
#che-page .che-evolution[data-che-era="today"] .che-evolution-handle{
  box-shadow:0 0 0 1px rgba(228,241,255,.42),0 0 16px rgba(179,213,249,.24);
}
#che-page .che-evolution[data-che-era="today"] .che-evolution-handle .che-star-symbol{
  filter:drop-shadow(0 0 2px rgba(255,255,255,.95))
    drop-shadow(0 0 7px rgba(205,230,255,.86))
    drop-shadow(0 0 13px rgba(176,211,247,.44));
}
#che-page .che-evolution-range{
  appearance:none;-webkit-appearance:none;position:absolute;inset:-4px -19px;
  width:calc(100% + 38px);height:60px;margin:0;background:transparent;cursor:grab;
  touch-action:pan-y;opacity:.01;z-index:2;
}
#che-page .che-evolution-range:active{cursor:grabbing}
#che-page .che-evolution-range:focus-visible{outline:0}
#che-page .che-evolution-rail:has(.che-evolution-range:focus-visible) .che-evolution-handle{
  outline:3px solid #1685d3;outline-offset:5px;
}
#che-page .che-evolution-range::-webkit-slider-thumb{
  appearance:none;-webkit-appearance:none;width:44px;height:52px;border:0;background:transparent;
}
#che-page .che-evolution-range::-moz-range-thumb{
  width:44px;height:52px;border:0;background:transparent;
}
#che-page .che-evolution-options{display:flex;justify-content:space-between;gap:20px;margin-top:1px}
#che-page .che-evolution-options button{
  min-height:58px;text-align:left;padding:8px 11px;margin:0 -11px;
  color:var(--ev-muted);background:transparent;border:1px solid transparent;
  border-radius:10px;cursor:pointer;font-family:inherit;font-size:17px;font-weight:700;line-height:1.35;transition:color .2s ease,background .2s ease;
}
#che-page .che-evolution-options button:last-child{text-align:right}
#che-page .che-evolution-options button[aria-pressed="true"]{color:var(--ev-ink)}
#che-page .che-evolution-options button:focus-visible{outline:3px solid #1685d3;outline-offset:3px}
#che-page .che-evolution-option-index{
  display:block;font-size:12.5px;letter-spacing:.05em;opacity:.85;margin-bottom:2px;
}
#che-page .che-evolution-hint{
  font-size:16px;line-height:1.55;color:var(--ev-muted);margin:18px 0 0;transition:color .7s ease;
}
#che-page .che-evolution-sr-only{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0,0,0,0);white-space:nowrap;border:0;
}
#che-page .che-evolution-chapters{
  display:grid;grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr);
  align-items:start;gap:24px;border-top:1px solid var(--ev-line);padding:30px clamp(24px,4vw,52px) 35px;
  transition:border-color .7s ease;
}
#che-page .che-evolution-chapter{
  padding-left:18px;border-left:3px solid var(--ev-line);opacity:.8;
  transition:border-color .7s ease,opacity .7s ease;
}
#che-page .che-evolution[data-che-era="earlier"] [data-evolution-chapter="earlier"]{
  border-color:#cf332e;opacity:1;
}
#che-page .che-evolution[data-che-era="today"] [data-evolution-chapter="today"]{
  border-color:#e1edf7;opacity:1;
}
#che-page .che-evolution-chapter-label{
  color:var(--ev-muted);font-size:13px;font-weight:770;letter-spacing:.07em;margin-bottom:11px;
  transition:color .7s ease;
}
#che-page .che-evolution-chapter h4{
  font-size:clamp(21px,2.1vw,26px);line-height:1.3;color:var(--ev-ink);margin:0 0 12px;
  letter-spacing:-.02em;transition:color .7s ease;
}
#che-page .che-evolution-chapter p{
  color:var(--ev-muted);font-size:17px;line-height:1.65;margin:0;transition:color .7s ease;
}
#che-page .che-evolution-between{
  font-size:22px;line-height:2;color:var(--ev-muted);text-align:center;
}
@media(max-width:700px){
  #che-page .che-evolution{border-radius:23px}
  #che-page .che-evolution-scene-grid{grid-template-columns:1fr;gap:4px}
  #che-page .che-evolution-symbol{height:200px}
  #che-page .che-evolution-symbol>.che-evolution-large-star{width:158px;height:158px}
  #che-page .che-evolution-scene-copy h3{font-size:38px}
  #che-page .che-evolution-controls{padding-top:22px}
  #che-page .che-evolution-chapters{grid-template-columns:1fr;gap:13px}
  #che-page .che-evolution-between{text-align:left;line-height:1;padding-left:19px;transform:rotate(90deg)}
}
@media(prefers-reduced-motion:reduce){
  #che-page .che-evolution,
  #che-page .che-evolution *,
  #che-page .che-evolution *::before{transition:none!important;animation:none!important;scroll-behavior:auto!important}
}

/* Integrated QA: narrow RU heading must not force the scene wider than 320px. */
@media (max-width: 350px) {
  #che-page .che-evolution-scene-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  #che-page .che-evolution-scene-copy {
    min-width: 0;
  }
  #che-page .che-evolution-scene-copy h3 {
    font-size: clamp(29px, 9vw, 32px);
    letter-spacing: -.025em;
    overflow-wrap: break-word;
  }
}
