/* KLEOS I — Legacy Room exhibition */
body[data-mission="legacy"] { --accent: var(--gold); --accent-ink:#1a1405; }
.legacy-entrance { min-height:calc(100svh - var(--header-h)); display:grid; align-items:center; position:relative; overflow:hidden; isolation:isolate; background:radial-gradient(ellipse at 78% 40%,rgba(92,110,166,.22),transparent 42%),radial-gradient(ellipse at 15% 85%,rgba(113,65,92,.18),transparent 42%),linear-gradient(150deg,#050814,#0c1429 65%,#090d1b); }
.legacy-stars:before,.legacy-stars:after { content:""; position:absolute; inset:0; pointer-events:none; background-image:radial-gradient(1px 1px at 8% 18%,#fff 50%,transparent 60%),radial-gradient(1px 1px at 26% 72%,#fff 50%,transparent 60%),radial-gradient(2px 2px at 48% 26%,#dce7ff 50%,transparent 60%),radial-gradient(1px 1px at 72% 16%,#fff 50%,transparent 60%),radial-gradient(1px 1px at 91% 62%,#fff 50%,transparent 60%); opacity:.55; }
.legacy-stars:after { transform:translate(13px,22px); opacity:.25; }
.legacy-entrance__inner { position:relative; z-index:1; padding-block:clamp(5rem,12vw,9rem); max-width:900px; }
.legacy-kicker { color:var(--ice); font:500 .75rem var(--mono); letter-spacing:.2em; text-transform:uppercase; }
.legacy-entrance h1 { font-size:clamp(3.5rem,10vw,8.5rem); line-height:.84; letter-spacing:-.075em; margin:1.4rem 0; }
.legacy-entrance h1 span,.legacy-ending h2 span { color:var(--gold); }
.legacy-subtitle { font-size:clamp(1.2rem,3vw,2rem); font-weight:700; color:#e5e9f5; margin-bottom:1rem; }
.legacy-intro { max-width:55ch; color:#c2cbe0; font-size:1.12rem; margin-bottom:1.8rem; }
.legacy-small { margin-top:1.5rem; color:var(--faint); font: .7rem var(--mono); letter-spacing:.13em; text-transform:uppercase; }
.legacy-exhibits { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.legacy-exhibit { display:grid; grid-template-columns:minmax(120px,.8fr) minmax(0,1.2fr); gap:1.1rem; align-items:center; padding:1rem; border:1px solid var(--line); background:var(--card); border-radius:var(--radius); }
.legacy-exhibit img { width:100%; height:190px; object-fit:cover; border-radius:12px; background:#111a2b; }
.legacy-exhibit h3 { font-size:1.45rem; margin:.25rem 0 .5rem; }
.legacy-exhibit p:not(.mono) { color:var(--muted); font-size:.93rem; }
.legacy-exhibit .mono { color:var(--accent); font-size:.65rem; }
.legacy-detail { margin-top:2rem; padding:clamp(1.2rem,3vw,2rem); border:1px solid var(--accent-line); border-radius:var(--radius); background:linear-gradient(145deg,rgba(255,207,90,.08),rgba(255,255,255,.025)); scroll-margin-top:90px; }
.legacy-detail__head { display:flex; justify-content:space-between; gap:1rem; align-items:flex-start; }
.legacy-detail__head h3 { font-size:clamp(1.8rem,4vw,2.5rem); }
.legacy-detail__head p:last-child { color:var(--muted); }
.legacy-facts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.7rem; margin:1.3rem 0; }
.legacy-fact { padding:.9rem; background:rgba(0,0,0,.2); border:1px solid var(--line); border-radius:12px; }
.legacy-fact b,.legacy-fact span { display:block; }
.legacy-fact b { color:var(--gold); font: .65rem var(--mono); text-transform:uppercase; letter-spacing:.08em; margin-bottom:.4rem; }
.legacy-fact span { font-size:.88rem; color:var(--muted); }
.legacy-tabs { display:flex; flex-wrap:wrap; gap:.5rem; border-bottom:1px solid var(--line); padding-bottom:.8rem; }
.legacy-tabs button,.silence-select button { background:rgba(255,255,255,.04); color:var(--muted); border:1px solid var(--line-2); padding:.65rem .9rem; border-radius:999px; cursor:pointer; font-size:.88rem; }
.legacy-tabs button[aria-selected="true"],.silence-select button.is-active { background:var(--accent); color:var(--accent-ink); border-color:var(--accent); font-weight:800; }
.legacy-tab-content { max-width:78ch; padding:1.3rem .2rem .2rem; color:#d3daea; }
.fact-note { border-left:3px solid var(--ice); padding:.8rem 1rem; background:rgba(143,211,255,.07); color:var(--muted); }
.achievement-layout { display:grid; grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr); gap:1.2rem; }
.achievement-list { display:grid; gap:.6rem; align-content:start; }
.achievement-choice { text-align:left; padding:1rem; border:1px solid var(--line); border-radius:12px; background:var(--card); color:var(--muted); cursor:pointer; font-weight:700; }
.achievement-choice.is-active { border-color:var(--accent); background:var(--accent-soft); color:var(--ink); }
.achievement-detail { padding:clamp(1.2rem,3vw,2rem); border:1px solid var(--line); border-radius:var(--radius); background:var(--panel); }
.achievement-detail h3 { font-size:1.8rem; margin:.4rem 0 1rem; }
.achievement-detail .mono { color:var(--accent); }
.achievement-detail dl { margin:0; display:grid; gap:.9rem; }
.achievement-detail dl div { display:grid; grid-template-columns:145px minmax(0,1fr); gap:1rem; border-top:1px solid var(--line); padding-top:.8rem; }
.achievement-detail dt { color:var(--gold); font-weight:800; }
.achievement-detail dd { margin:0; color:var(--muted); }
.silence-select { display:flex; flex-wrap:wrap; gap:.5rem; margin-bottom:1rem; }
.silence-detail { border:1px solid var(--line); background:var(--panel); border-radius:var(--radius); padding:clamp(1.2rem,3vw,2rem); }
.silence-detail h3 { font-size:1.7rem; }
.silence-last { color:var(--gold); font-weight:800; margin:.7rem 0 1.3rem; }
.silence-timeline { list-style:none; padding:0; margin:0 0 1.4rem; border-left:1px solid var(--accent-line); }
.silence-timeline li { position:relative; padding:0 0 1.1rem 1.2rem; margin-left:.5rem; }
.silence-timeline li:before { content:""; position:absolute; left:-.33rem; top:.4rem; width:.55rem; height:.55rem; background:var(--accent); border-radius:50%; }
.silence-timeline time { font: .72rem var(--mono); color:var(--accent); }
.silence-timeline p { color:var(--muted); margin:.2rem 0 0; }
.silence-notes { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.silence-notes div { padding:1rem; background:rgba(255,255,255,.04); border-radius:12px; }
.silence-notes b { color:var(--gold); }
.silence-notes p { margin:.45rem 0 0; color:var(--muted); }
.compare-controls { display:flex; flex-wrap:wrap; gap:1rem; margin-bottom:1rem; }
.compare-controls label { display:grid; gap:.4rem; color:var(--muted); font-size:.85rem; font-weight:700; }
.compare-controls select { min-width:220px; background:var(--panel-2); color:var(--ink); border:1px solid var(--line-2); border-radius:10px; padding:.8rem 2.2rem .8rem .9rem; font:inherit; }
.comparison { overflow-x:auto; border:1px solid var(--line); border-radius:var(--radius); }
.compare-table { border-collapse:collapse; width:100%; min-width:650px; background:var(--panel); }
.compare-table th,.compare-table td { text-align:left; vertical-align:top; padding:1rem; border-bottom:1px solid var(--line); }
.compare-table thead th { color:var(--gold); background:rgba(255,207,90,.07); }
.compare-table tbody th { width:160px; color:var(--ice); font-size:.9rem; }
.compare-table td { color:var(--muted); font-size:.9rem; }
.reflection-form { display:grid; gap:1rem; max-width:800px; }
.reflection-form label { display:grid; gap:.45rem; font-weight:700; }
.reflection-form textarea { width:100%; resize:vertical; min-height:76px; padding:.85rem 1rem; color:var(--ink); background:var(--panel); border:1px solid var(--line-2); border-radius:12px; font:inherit; }
.reflection-form textarea:focus { outline:3px solid rgba(255,207,90,.25); border-color:var(--gold); }
.reflection-actions { display:flex; flex-wrap:wrap; gap:1rem; align-items:center; }
#reflection-status { color:var(--ice); font-size:.88rem; }
.legacy-ending { padding:clamp(4rem,10vw,8rem) 0; background:radial-gradient(ellipse at 70% 30%,rgba(255,207,90,.12),transparent 40%),linear-gradient(180deg,#0a1020,#050814); border-top:1px solid var(--line); }
.legacy-ending h2 { font-size:clamp(2.4rem,6vw,5rem); line-height:1.02; margin:1rem 0 2rem; }
.legacy-poem { max-width:650px; color:#c6cee0; font-size:clamp(1.08rem,2vw,1.35rem); }
.legacy-poem p { margin-bottom:1rem; }
.legacy-poem .last-line { color:var(--gold); font-weight:800; margin-top:1.8rem; }
.legacy-ending__actions { display:flex; flex-wrap:wrap; gap:.8rem; margin-top:2.2rem; }
[hidden] { display:none !important; }
@media(max-width:850px) {
 .legacy-exhibits { grid-template-columns:1fr; }
 .legacy-facts { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .achievement-layout { grid-template-columns:1fr; }
}
@media(max-width:560px) {
 .legacy-exhibit { grid-template-columns:1fr; }
 .legacy-exhibit img { height:210px; }
 .legacy-detail__head { display:block; }
 .legacy-detail__head .btn { margin-top:.8rem; }
 .legacy-tabs { display:grid; grid-template-columns:1fr 1fr; }
 .legacy-tabs button { border-radius:10px; text-align:left; }
 .legacy-facts { grid-template-columns:1fr 1fr; }
 .achievement-detail dl div { grid-template-columns:1fr; gap:.25rem; }
 .silence-notes { grid-template-columns:1fr; }
 .compare-controls { display:grid; }
 .compare-controls select { width:100%; }
}
@media(prefers-reduced-motion:reduce) {
 .legacy-entrance *, .legacy-ending * { animation:none !important; transition:none !important; scroll-behavior:auto !important; }
}
.achievement-source { margin:1rem 0 0; font-size:.88rem; }
.achievement-source a { color:var(--ice); }
