:root{font:16px system-ui,-apple-system,'PingFang TC',sans-serif;--bg:#102123;--panel:#193135;--line:#52676a;--accent:#efc680;--text:#f2f1e8;--muted:#b9c9ca;color:var(--text);background:var(--bg)}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-underline-offset:5px}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:default}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:4px}header{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:20px 5vw;border-bottom:1px solid #ffffff20}.brand{font-size:18px;letter-spacing:2px;text-decoration:none;font-weight:700}.brand small{display:block;font-size:12px;letter-spacing:2px;color:var(--muted);margin-top:4px}.quiet{background:transparent;color:var(--text);border:1px solid var(--line);border-radius:5px;padding:10px 13px;min-height:44px;font-size:14px}header>div{display:flex;gap:8px}main{max-width:1120px;margin:auto;padding:0 28px 45px}main:has(.cover){max-width:1500px;padding:0}.cover{display:grid;grid-template-columns:1fr 1fr;min-height:calc(100dvh - 100px)}.cover-art{position:relative;min-height:650px}.cover-art img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:45% center}.cover-art:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#081719ee,transparent)}.cover-title{position:absolute;z-index:1;bottom:40px;left:40px;right:20px}.cover-title h1{font:clamp(40px,5.2vw,76px)/1.3 Georgia,'Songti TC',serif;letter-spacing:4px;margin:10px 0}.cover-title h1 span{color:var(--accent)}.eyebrow{font-size:14px;letter-spacing:2px;color:var(--accent);line-height:1.8}.cover-copy{padding:50px clamp(25px,4vw,70px);align-self:center}h1{font:clamp(30px,4vw,48px)/1.45 Georgia,'Songti TC',serif;letter-spacing:1px}h2{font-size:26px;line-height:1.6}h3{font-size:20px;line-height:1.6}p{line-height:1.9}.small{font-size:14px;color:var(--muted);line-height:1.8}.primary,.choice,.secondary{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:16px 21px;border-radius:6px;line-height:1.7;min-height:50px;text-align:left}.primary{background:var(--accent);color:#182b2d;border:1px solid var(--accent);font-weight:700;width:100%;margin:23px 0 12px}.primary:not(:disabled):hover{background:#ffdda3}.choice{background:#244246;border:1px solid #8da4a5;color:var(--text);width:100%;margin:10px 0;text-decoration:none}.choice:hover,.secondary:hover{background:#36565b}.secondary{background:#294b50;border:1px solid #8da4a5;color:var(--text)}details{padding:16px 0;border-top:1px solid var(--line)}summary{cursor:pointer;line-height:1.8}.chapter-head{padding:35px 0 10px;max-width:850px}nav{max-width:1120px;margin:auto;display:grid;grid-template-columns:repeat(5,1fr);gap:8px;padding:20px 28px 5px}nav span{font-size:13px;color:var(--muted);padding-bottom:12px;border-bottom:2px solid #ffffff1c}nav b{display:block;font-size:14px;margin-top:7px;font-weight:500}nav .active{color:var(--accent);border-color:var(--accent)}.headline{padding:25px 30px;background:#3a3230;border-left:4px solid #ddac88}.headline small{font-size:14px;color:#e6bf9d}.headline h2{font:25px/1.6 Georgia,'Songti TC',serif;margin:10px 0}.brief{padding:10px 0 25px}.evidence-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.exhibit{display:block;text-align:left;width:100%;background:var(--panel);border:1px solid var(--line);border-top:4px solid #819b9e;border-radius:4px;padding:24px;color:var(--text)}.exhibit.read{border-top-color:var(--accent)}.exhibit small{color:var(--accent);font-size:14px}.exhibit h3{margin:12px 0}.exhibit span{font-size:14px;color:var(--muted);line-height:1.7}.puzzle-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:20px 0}.puzzle{padding:26px;background:var(--panel);border:1px solid var(--line);border-radius:8px}.time-grid{display:grid;gap:10px;margin:25px 0;grid-template-columns:1fr 1fr}.time-grid>div{padding:16px 12px;background:#0c2023}.time-grid strong{display:block;font-family:monospace;font-size:26px;letter-spacing:1px;margin:10px 0}.time-grid small,.time-grid span{font-size:14px;display:block;line-height:1.7;color:var(--muted)}label{display:block;line-height:1.8;margin:15px 0 8px}input:not([type=radio]):not([type=checkbox]),textarea,select{padding:13px;border:1px solid #8da4a5;border-radius:4px;background:#0b2124;color:var(--text);width:100%;min-height:48px;font-size:16px}textarea{line-height:1.9;resize:vertical}.input-row{display:flex;gap:10px}.input-row input{min-width:0}.answer{padding:15px 18px;border-left:3px solid var(--accent);background:#ffffff08;font-size:16px;line-height:1.9}.answer strong{display:block}blockquote{padding:20px 24px;margin:20px 0;background:#ffffff08;border-left:3px solid #95b8b8;font-size:20px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}.link{border:0;background:transparent;color:var(--accent);padding:14px 0;text-decoration:underline;text-underline-offset:5px;font-size:16px}.error{color:#ffd0b9;line-height:1.8}.arguments{display:grid;grid-template-columns:1fr 1fr;gap:20px}.arguments section{padding:23px;background:var(--panel);border-top:3px solid #88aaa9}.arguments span{font-size:16px;color:var(--accent)}fieldset{min-width:0;border:1px solid var(--line);padding:20px;margin:25px 0;border-radius:6px}legend{padding:0 7px;line-height:1.8}.radio{display:flex;align-items:baseline;gap:12px;padding:12px;background:var(--panel);margin:10px 0}.radio input,[type=checkbox]{accent-color:var(--accent);width:18px;height:18px;flex-shrink:0}.citation-options{display:grid;grid-template-columns:1fr 1fr;gap:8px}.citation-options label{display:flex;align-items:baseline;gap:9px;font-size:15px;margin:5px 0}.result{padding:28px;background:#294348;border:1px solid #9ab4b3;margin:30px 0;scroll-margin-top:25px}.seats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:25px 0}.seats>div{padding:13px;border:1px solid #91aaa9;border-radius:5px}.seats .yes{background:#44533e}.seats .no{background:#23343e}.seats b,.seats span{display:block;font-size:14px;line-height:1.8}.tags{display:flex;flex-wrap:wrap;gap:8px}.tags button{padding:10px 15px;min-height:44px;background:#213f45;border:1px solid #8da4a5;color:var(--text);border-radius:4px}.tags .selected{opacity:1;background:var(--accent);color:var(--bg)}.sentence{margin-top:40px;padding-top:10px;border-top:1px solid var(--line)}table{border-collapse:collapse;width:100%;margin:20px 0;font-size:16px}th,td{border-bottom:1px solid #829897;padding:12px;text-align:left}caption{text-align:left;font-size:14px;margin-bottom:12px;color:var(--muted)}.ending{max-width:780px;margin:auto;padding-top:40px}.lead{font-size:21px}.summary{padding:20px 25px;background:var(--panel)}footer{max-width:1120px;margin:auto;padding:25px 28px;display:flex;justify-content:space-between;gap:15px;font-size:14px;color:var(--muted)}dialog{width:calc(100% - 28px);max-width:730px;max-height:90dvh;overflow:auto;background:var(--bg);color:var(--text);padding:28px;border:1px solid #9ab4b3;border-radius:8px}dialog::backdrop{background:#030b0dea}dialog a{color:var(--accent);overflow-wrap:anywhere}dialog li{line-height:1.9;margin:15px 0}dialog .exhibit{margin:12px 0}.result,.answer{animation:reveal .25s ease}@keyframes reveal{from{opacity:.2;transform:translateY(6px)}to{opacity:1;transform:none}}@media(max-width:760px){header{padding:14px 16px}.brand{font-size:16px}.quiet{padding:9px 10px}.cover{display:block}.cover-art{min-height:400px;height:52dvh}.cover-title{left:23px;bottom:20px}.cover-title h1{font-size:43px;letter-spacing:2px}.cover-copy{padding:28px 23px}main{padding:0 20px 30px}nav{padding:15px 20px 0;gap:7px}nav b{font-size:13px}nav span{font-size:12px}.chapter-head{padding-top:25px}h1{font-size:31px}h2{font-size:24px}.evidence-grid,.puzzle-grid,.arguments,.citation-options{grid-template-columns:1fr}.puzzle{padding:22px 18px}.time-grid strong{font-size:24px}.exhibit{padding:20px}.headline{padding:20px}.headline h2{font-size:22px}fieldset{padding:18px 14px}.result{padding:20px 17px}.ending{padding-top:25px}.lead{font-size:19px}blockquote{font-size:18px}footer{flex-direction:column}dialog{padding:23px}.seats>div{padding:10px}.primary{font-size:16px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
