
:root{--bg:#030303;--fg:#f4f4f4;--dim:#858585;--line:#2b2b2b}*{box-sizing:border-box}html{background:var(--bg);scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--fg);font-family:"Courier New",Courier,monospace;font-size:15px;line-height:1.55}a{color:var(--fg);text-decoration:none}.shell{width:min(900px,calc(100% - 32px));margin:auto}header{border-bottom:1px solid var(--line);padding:20px 0 15px;position:sticky;top:0;background:rgba(3,3,3,.96);z-index:10}.header-inner{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.brand{font-weight:700;letter-spacing:.1em;margin-right:auto}nav{display:flex;gap:18px}nav a{color:var(--dim)}nav a.active,nav a:hover{color:var(--fg)}main{padding:48px 0 96px}.eyebrow{color:var(--dim);letter-spacing:.12em;font-size:12px;margin-bottom:10px}h1{font-size:clamp(26px,4vw,40px);line-height:1.1;margin:0 0 12px;letter-spacing:.03em}.lede{max-width:760px;color:#cfcfcf}.notice{border:1px solid var(--line);padding:14px 16px;margin:26px 0;color:#aaa}.notice strong{color:var(--fg)}.promo{display:block;border:1px solid #555;padding:12px 14px;margin:20px 0 0;font-weight:700}.promo:hover{background:#0d0d0d}.promo-primary{background:#f4f4f4;color:#030303;border-color:#f4f4f4;padding:15px 16px;letter-spacing:.04em}.promo-primary:hover{background:#dcdcdc;text-decoration:none}.tap-hint{margin:18px 0 0;color:#777;font-size:11px;letter-spacing:.12em}.section{margin-top:18px;border-bottom:1px solid var(--line)}.section-title{list-style:none;cursor:pointer;display:flex;gap:12px;align-items:center;font-weight:700;letter-spacing:.08em;padding:17px 4px;user-select:none}.section-title::-webkit-details-marker{display:none}.section-title:before{content:">";color:#777;display:inline-block;transition:transform .15s ease}.section[open]>.section-title:before{transform:rotate(90deg)}.section-title:hover{background:#0b0b0b}.section-body{border-top:1px solid var(--line)}.entry{padding:21px 0;border-bottom:1px solid var(--line)}.entry-head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:9px}.entry-name{font-size:17px;font-weight:700}.source-chip{font-size:11px;border:1px solid #666;padding:3px 7px;color:#f0f0f0;letter-spacing:.08em;font-weight:700}.meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 14px;margin:12px 0 14px}.meta div{border-left:1px solid #333;padding-left:9px}.label{display:block;font-size:10px;color:#777;letter-spacing:.1em;margin-bottom:2px}.value{font-size:13px;color:#ddd}.why{margin:8px 0 0}.notes{color:#aaa;margin:6px 0 0}footer{border-top:1px solid var(--line);padding:22px 0 46px;color:#777;font-size:12px}.source-row{display:grid;grid-template-columns:minmax(170px,1fr) 100px 92px;gap:14px;align-items:center;border-bottom:1px solid var(--line);padding:13px 0}.source-row a{text-decoration:underline;text-underline-offset:3px}.tba{color:#666}.tag{font-size:10px;border:1px solid #444;padding:2px 5px;width:max-content;color:#aaa;letter-spacing:.08em}@media(max-width:700px){.shell{width:min(100% - 24px,900px)}header{padding-top:16px}.header-inner{gap:12px}nav{width:100%;gap:16px}main{padding-top:34px}.meta{grid-template-columns:1fr 1fr}.source-row{grid-template-columns:1fr auto}.source-row .tag{display:none}}@media(max-width:430px){.meta{grid-template-columns:1fr}.entry{padding:18px 0}}

.trusted-source{margin-top:22px;border:1px solid var(--line);padding:18px 18px 20px}
.trusted-source-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:14px}
.trusted-source-name{font-size:18px;font-weight:700;letter-spacing:.08em}
.source-action{font-size:12px;font-weight:700;border:1px solid #666;padding:6px 8px;white-space:nowrap}
.source-action:hover{background:#f4f4f4;color:#030303;text-decoration:none}
.trusted-source p{color:#bcbcbc}
@media(max-width:520px){.trusted-source-head{align-items:center}.trusted-source{padding:16px}}


/* v6 header/nav tweaks */
.brand{font-size:18px}
nav a{font-size:15px;font-weight:700;letter-spacing:.05em}

/* tiny fixed nocturnal apothecary */
.pixel-marine{
  --mascot-x:0px;
  --mascot-y:0px;
  position:fixed;
  right:18px;
  top:8px;
  width:68px;
  height:auto;
  z-index:40;
  pointer-events:none;
  filter:drop-shadow(0 4px 0 rgba(0,0,0,.72));
  transform:translate3d(var(--mascot-x),var(--mascot-y),0);
  transition:transform 430ms cubic-bezier(.22,.78,.28,1);
  transform-origin:50% 100%;
}
.pixel-marine .sprite-inner{
  position:relative;
  width:100%;
  animation:marineIdle 1.65s steps(2,end) infinite;
}
.pixel-marine svg{
  display:block;
  width:100%;
  height:auto;
  image-rendering:pixelated;
}
.pixel-marine.is-walking .sprite-inner{
  animation:marineWalk .16s steps(2,end) infinite;
}
.pixel-marine.is-tugging .sprite-inner{
  animation:marineTug .20s steps(2,end) 2;
}
.pixel-marine.is-pushing .sprite-inner{
  animation:marinePush .20s steps(2,end) 2;
}

/* tiny "grab line" that appears when he reaches the accordion */
.pixel-marine.is-tugging::after,
.pixel-marine.is-pushing::after{
  content:"";
  position:absolute;
  left:-17px;
  top:47%;
  width:19px;
  border-top:2px solid #9aa0a8;
  opacity:.9;
}
.pixel-marine.is-tugging::before,
.pixel-marine.is-pushing::before{
  content:"";
  position:absolute;
  left:-19px;
  top:calc(47% - 2px);
  width:4px;
  height:5px;
  background:#c9cdd2;
}

@keyframes marineIdle{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-4px)}
}
@keyframes marineWalk{
  0%{transform:translateY(0) rotate(-2deg)}
  50%{transform:translateY(-5px) rotate(2deg)}
  100%{transform:translateY(0) rotate(-2deg)}
}
@keyframes marineTug{
  0%{transform:translateX(0) rotate(0)}
  50%{transform:translateX(5px) rotate(5deg)}
  100%{transform:translateX(0) rotate(-2deg)}
}
@keyframes marinePush{
  0%{transform:translateX(0) rotate(0)}
  50%{transform:translateX(-5px) rotate(-5deg)}
  100%{transform:translateX(0) rotate(2deg)}
}

.section-title.being-operated{
  background:#0d0d0d;
  outline:1px solid #242424;
}

.mascot-busy details.section > summary{
  cursor:wait;
}

@media(prefers-reduced-motion:reduce){
  .pixel-marine,
  .pixel-marine .sprite-inner{
    transition:none!important;
    animation:none!important;
  }
}

/* change log */
.change-body{padding:0 4px 8px}
.changelog-intro{padding:16px 0 4px;color:#888;font-size:12px;letter-spacing:.05em}
.change-entry{padding:18px 0;border-bottom:1px solid var(--line)}
.change-top{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}
.change-date{font-size:11px;color:#777;letter-spacing:.08em;margin-bottom:4px}
.change-compound{font-size:16px;font-weight:700}
.change-type{font-size:10px;border:1px solid #555;padding:3px 6px;color:#bbb;letter-spacing:.08em;white-space:nowrap}
.change-route{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin:12px 0;color:#aaa}
.change-route strong{color:#fff}
.change-arrow{color:#666}
.change-rationale{color:#aaa;margin:0 0 10px}
.changelog-future{padding:14px 0 4px;margin:0}

@media(max-width:700px){
  nav a{font-size:14px}
  .pixel-marine{width:54px;right:8px;top:10px;opacity:.96}
}
@media(max-width:430px){
  .pixel-marine{width:46px;right:6px;top:13px}
}

.changelog-section{margin-top:46px;}
