:root{color-scheme:dark;--bg:#07111f;--surface:#0d1826;--border:#26384d;--text:#eef4fb;--muted:#a7b7c8;--accent:#79c7ff}*{box-sizing:border-box}body{margin:0;background:linear-gradient(160deg,#07111f,#0b1828);color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans SC","Noto Sans JP",sans-serif}.dr-page{width:min(1080px,calc(100% - 28px));margin:auto;padding:30px 0 64px}.dr-page>small{color:var(--accent);letter-spacing:.12em}.dr-page>h1{font-size:clamp(2rem,5vw,3.5rem);line-height:1.03;margin:8px 0;max-width:none}.dr-page>p,.dr-copy p{color:var(--muted);line-height:1.65}.dr-lab{display:grid;grid-template-columns:1.2fr .8fr;gap:16px;margin:24px 0}.dr-view,.dr-controls,.dr-copy{border:1px solid var(--border);border-radius:17px;background:var(--surface);padding:16px}.dr-scene{height:250px;border-radius:13px;background:linear-gradient(90deg,#01040a 0%,#09111c 28%,#44516a 62%,#fff1c7 100%);position:relative;overflow:hidden}.dr-scene:after{content:"stars + foreground → bright Moon / twilight";position:absolute;left:16px;right:16px;bottom:14px;color:#fff;font-size:.72rem;text-shadow:0 2px 8px #000}html[data-locale='zh'] .dr-scene:after{content:"星空 + 前景 → 明亮月面 / 暮光"}html[data-locale='ja'] .dr-scene:after{content:"星空 + 前景 → 明るい月 / 薄明"}.dr-verdicts{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.dr-verdicts>div{padding:10px 12px;border:1px solid var(--border);border-radius:11px;background:var(--surface2)}.dr-verdicts small{display:block;color:var(--muted);font-size:.72rem}.dr-verdicts strong{display:block;margin-top:4px;font-size:.86rem}.dr-verdicts>div[data-ok='1']{border-color:var(--ok);background:color-mix(in srgb,var(--ok) 8%,var(--surface2))}.dr-verdicts>div[data-ok='0']{border-color:var(--danger);background:color-mix(in srgb,var(--danger) 8%,var(--surface2))}
.histogram{height:90px;margin-top:12px;position:relative;border:1px solid var(--border);border-radius:12px;background:linear-gradient(90deg,#060b12,#172130);overflow:hidden}.histogram:before,.histogram:after{content:"";position:absolute;top:0;bottom:0;width:1px;background:#ffffff35}.histogram:before{left:15%}.histogram:after{right:15%}.hist-fill{position:absolute;bottom:0;height:72%;border-radius:50% 50% 0 0;background:linear-gradient(90deg,#4c79b5,#b7c9df,#ffe0a2);opacity:.85}.hist-fill[data-shadow-clipped='1']{box-shadow:-18px 0 18px #ff8f7066}.hist-fill[data-highlight-clipped='1']{box-shadow:18px 0 18px #ffd27a66}.dr-metrics{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.dr-metrics div{padding:10px;border-radius:10px;background:var(--surface2)}.dr-metrics small{display:block;color:var(--muted)}.dr-metrics strong{display:block;margin-top:4px}.dr-status{padding:11px;border-left:3px solid var(--warn);background:var(--surface2)}.dr-status[data-ok='1']{border-color:var(--ok)}.dr-note{color:#8397ad;font-size:.76rem;line-height:1.5}.dr-controls label{display:block;margin-bottom:18px;color:var(--muted)}.dr-controls input{width:100%;margin-top:8px}.dr-value{float:right;color:var(--text)}.dr-flow{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.dr-copy h2{margin-top:0}.dr-links{display:flex;gap:8px;flex-wrap:wrap}.dr-links a{color:var(--accent)}@media(max-width:760px){.dr-page{padding-top:18px}.dr-lab,.dr-flow{grid-template-columns:1fr}.dr-scene{height:210px}.dr-page>h1{font-size:1.85rem}}
/* parameter-visual-contract */
.dr-scene{filter:brightness(var(--scene-bright,1)) contrast(calc(.82 + var(--scene-contrast,.5)*.45));transition:filter .16s}.dr-scene:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .16s}.dr-scene[data-shadow-clipped='1']:before{opacity:.42;background:linear-gradient(90deg,#000 0 28%,transparent 52%)}.dr-scene[data-highlight-clipped='1']:before{opacity:.38;background:linear-gradient(90deg,transparent 55%,#fff 100%)}.dr-scene[data-shadow-clipped='1'][data-highlight-clipped='1']:before{opacity:.42;background:linear-gradient(90deg,#000 0 22%,transparent 42% 58%,#fff 100%)}.hist-fill{transition:left .16s,width .16s,clip-path .16s}

/* Detail pages start with the decision and interactive model, not duplicated course artwork. */
.course-overview-image{display:none}


/* WTS lesson split alignment v1 — 2026-09-23 */
@media(min-width:1024px){.dr-lab{grid-template-columns:minmax(0,1.45fr) minmax(340px,.72fr);gap:22px;margin:28px 0}.dr-lab>*{min-width:0;align-self:start}.dr-metrics{gap:10px;grid-auto-rows:1fr}.dr-flow{gap:14px;grid-auto-rows:1fr}.dr-flow>*{height:100%}}

@media(max-width:430px){.dr-verdicts{grid-template-columns:1fr}}
