:root{font-family:Arial,sans-serif;color:#eeeede;background:#102522;font-synthesis:none;color-scheme:dark}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,.file{border:1px solid #62786c;background:transparent;color:inherit;padding:12px 16px;border-radius:4px;cursor:pointer;min-height:44px}button:hover,.file:hover{background:#345048}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #efc78c;outline-offset:4px}header{padding:26px 4vw;border-bottom:1px solid #395148;display:flex;justify-content:space-between;gap:24px;align-items:center}.brand{display:flex;gap:12px;font-size:30px;color:#eac790;text-decoration:none}.brand span{font-size:13px;letter-spacing:3px;line-height:1.5}.edition,.eyebrow{font-size:11px;letter-spacing:2px;line-height:1.7;color:#bfccb9}.edition{margin-right:auto}.tools{display:flex;gap:10px;flex-wrap:wrap}main{max-width:1550px;margin:auto;padding:0 4vw}.intro{display:grid;grid-template-columns:1.2fr 1fr;gap:8vw;padding:55px 0 40px;align-items:center}h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(45px,5vw,76px);line-height:1.03;margin:16px 0 20px;letter-spacing:-2px}h1 em{color:#e6bf82;font-weight:400}.lede{color:#b9cbbf;line-height:1.7;max-width:470px}.scene{padding:28px 32px;border:1px solid #526053;background:linear-gradient(135deg,#253e34,#1b302c);position:relative}.scene:before{content:"✧";font-size:42px;color:#d6b77c;position:absolute;right:24px;top:8px}.scene p{font:21px/1.55 Georgia,serif;max-width:540px}small{font-size:12px;line-height:1.6;color:#bac8bc}.bar{display:flex;justify-content:space-between;gap:12px;padding:20px 0;border-top:1px solid #476154;border-bottom:1px solid #476154;font-size:12px;color:#bccabc}.bar b{font-size:20px;color:#eeeede;margin-right:4px}.conserved{color:#b6d6b1}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:32px;padding:35px 0}.section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.section-title h2{margin:0;font:26px Georgia,serif}.section-title>span{font-size:10px;letter-spacing:1.5px;color:#b9c6b7}.role-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.role{background:#1c342e;border:1px solid #426052;padding:20px}.role-top{display:flex;align-items:center;gap:12px}.number{font:25px Georgia,serif;color:#d5b37a}h3{font:21px Georgia,serif;margin:0}.badge{font-size:10px;padding:5px;border:1px solid #5b7265;margin-left:auto}.mixture{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:22px 0}.mixture div{text-align:center;border-right:1px solid #3a5147}.mixture div:last-child{border:0}.mixture span{font:32px Georgia,serif;display:block;margin-bottom:7px}.mixture small{font-size:10px}details{border-top:1px solid #3a5147;padding:12px 0 0}summary{cursor:pointer;font-size:12px;min-height:30px;line-height:1.6}details p{font-size:13px;line-height:1.6;color:#c9d4c9}.encounter{background:#efe9d6;color:#20372f;padding:26px;border-radius:3px;align-self:start}.encounter h2{font:33px/1.1 Georgia,serif;margin:15px 0}.encounter .eyebrow,.encounter .muted{color:#516156}.muted{font-size:13px;line-height:1.6}.pair{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0}label{display:block;font-size:12px;line-height:1.7}select,input:not([type=radio]):not([type=range]):not([type=file]),textarea{display:block;width:100%;background:#f7f3e7;color:#243a30;border:1px solid #b5bdab;border-radius:3px;padding:10px;min-height:44px}select{font-size:12px}fieldset{padding:0;border:0;margin:0}legend{font-size:12px;margin-bottom:10px}.trait{display:flex;align-items:center;gap:10px;padding:11px;border:1px solid #c6ccbc;border-radius:3px;margin-bottom:8px;cursor:pointer;line-height:1.4}.trait.chosen{background:#243d33;color:#fff;border-color:#243d33}.trait input{accent-color:#b18a4b}.trait span{font-size:12px}.proposal{border:1px solid #b8c1ac;padding:14px;margin:18px 0}.proposal b{font:25px Georgia,serif}.proposal p{font-size:13px;line-height:1.5}.proposal small{color:#5b5748}.prompt p{font:19px/1.4 Georgia,serif}.primary{background:#234636;color:#fff;border-color:#234636;width:100%;font-weight:700;margin:12px 0}.secondary{display:flex;gap:8px}.secondary button{flex:1}.encounter details p{color:#46594b}.status{font-size:12px;line-height:1.5;min-height:36px}.replay{margin-top:32px}.diagram{border:1px solid #405b4f}.diagram svg{display:block;width:100%;height:auto}.replay input{width:100%;accent-color:#dcba7e;margin:14px 0}.legend{display:grid;grid-template-columns:1fr 1fr;gap:8px;font-size:11px;line-height:1.5}.archive{padding:28px 0;border-top:1px solid #496254}.archive h2{font:30px Georgia,serif}.archive p{color:#bdcbbd}.archive ol{list-style:none;padding:0}.archive li button{display:flex;gap:16px;width:100%;text-align:left;border:0;border-bottom:1px solid #385348;border-radius:0}.archive li span{margin-left:auto;color:#b8c5b5}.archive li button[aria-current]{background:#355246}.archive small{display:block;margin-top:14px}.empty{padding:24px;border:1px dashed #476252}.file input{display:block;max-width:190px;font-size:10px}.file{font-size:12px}footer{padding:25px 0 35px;display:flex;gap:50px;justify-content:space-between;border-top:1px solid #3a5147}footer details{max-width:700px;border:0}footer>span{font-size:10px;letter-spacing:2px;min-width:200px}.author{padding:35px;background:#102522;min-height:100vh}.author section{max-width:850px;margin:auto}.author label{margin:14px 0}.author textarea{min-height:80px}.matrix-row{display:grid;grid-template-columns:1fr repeat(4,90px);gap:10px;align-items:center}.author p{line-height:1.6;color:#bdcbbd}body:has(.author) header,body:has(.author) main{display:none}@media(max-width:1050px){.workspace{grid-template-columns:1fr 320px;gap:18px}.role-grid{grid-template-columns:1fr}.intro{gap:30px}.edition{display:none}}@media(max-width:750px){header{flex-wrap:wrap}.intro,.workspace{grid-template-columns:1fr}.intro{padding-top:30px}.role-grid{grid-template-columns:1fr 1fr}.scene{padding:22px}.bar{flex-wrap:wrap}.encounter{order:-1}.archive li button{flex-wrap:wrap}.archive li span{margin-left:0;width:100%}footer{flex-direction:column}.matrix-row{grid-template-columns:repeat(4,1fr)}.matrix-row>span{grid-column:1/-1}.author{padding:20px}.role-top{flex-wrap:wrap}.badge{margin-left:0}}@media(max-width:480px){.role-grid,.legend{grid-template-columns:1fr}.tools{gap:6px}.tools button{font-size:12px}h1{font-size:49px}.bar b{font-size:17px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
