:root{--ink:#243d40;--gold:#a77830;--sage:#e9eee6;--paper:#faf7ef;--line:#dcded3;--muted:#62716c}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 Georgia,serif}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:#fffdf8;border:1px solid var(--line);padding:9px 14px;border-radius:7px}button:hover{background:var(--sage)}button:disabled{opacity:.45;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.primary{background:var(--ink);color:white;border-color:var(--ink)}.primary:hover{background:#36585a}.danger{color:#9a3b31}.quiet{background:transparent;border:0}.small{font:12px/1.5 Arial,sans-serif}.eyebrow{font:10px/1.6 Arial,sans-serif;text-transform:uppercase;letter-spacing:2px;color:var(--gold);margin-bottom:12px}.muted{color:var(--muted);font-size:13px}h1,h2,h3,p{margin-top:0}h1{font-weight:normal;font-size:clamp(40px,5vw,70px);line-height:1.08;letter-spacing:-1.5px}h2{font-weight:normal;font-size:28px;line-height:1.25}h3{font-weight:normal;font-size:21px;margin-bottom:12px}header{display:flex;align-items:center;justify-content:space-between;padding:20px 4%;border-bottom:1px solid var(--line);gap:20px}#brand{display:flex;gap:12px;align-items:center;text-decoration:none;color:var(--ink);font-size:25px;line-height:1.2}#brand small{display:block;font:9px/2.2 Arial,sans-serif;letter-spacing:2px}nav{display:flex;gap:8px}nav button{font:12px Arial,sans-serif;background:transparent;border:0}main{max-width:1580px;margin:auto;min-height:80vh}.hero{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding:50px 7%}.heroCopy{align-self:center}.hero img{width:100%;height:570px;object-fit:cover;border-radius:170px 170px 12px 12px}.hero .lead{font-size:19px;color:var(--muted)}.actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.welcomeNote{padding:0 7% 35px}.panel{padding:24px;border:1px solid var(--line);background:#fffdf8;border-radius:12px}.form{max-width:600px;margin:35px auto}.form label,label{display:block;font:12px/1.5 Arial,sans-serif;margin:14px 0 6px}input,select,textarea{width:100%;padding:11px;border:1px solid #cbd1c7;background:#fffefa;border-radius:6px}textarea{line-height:1.8;resize:vertical}.form button{margin-top:15px}.notice{border-left:3px solid var(--gold);background:#f2eddd;padding:12px 16px;font-size:14px;margin:16px 0}.topbar{padding:22px 3%;display:flex;align-items:center;justify-content:space-between;gap:20px}.topbar h2{margin-bottom:2px}.code{font:18px monospace;letter-spacing:3px}.badge{display:inline-block;border-radius:20px;background:var(--sage);padding:4px 10px;font:11px/1.6 Arial,sans-serif}.workspace{display:grid;grid-template-columns:215px minmax(340px,1fr) 335px;gap:20px;padding:0 3% 30px;align-items:start}.roster{padding:18px}.seat{padding:12px 0;border-bottom:1px solid var(--line);font-size:14px}.seat strong{font-weight:normal;display:block}.seat .disc{font-size:12px;color:var(--muted)}.seat.active{padding-left:8px;border-left:3px solid var(--gold);background:#f4eddc}.dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#aaa;margin-right:6px}.dot.online{background:#658a59}.hostControls{margin-top:20px}.hostControls button{display:block;width:100%;font:12px Arial,sans-serif;margin:8px 0}.sceneImg{width:100%;height:210px;object-fit:cover;border-radius:10px}.scene{margin-bottom:20px}.scene h2{margin-top:18px}.anchor{border-left:3px solid var(--gold);padding-left:15px;margin:16px 0}.anchor a{font-size:12px;color:var(--muted)}.anchor p{font-size:15px;margin-bottom:5px}.journal textarea{min-height:250px;background:repeating-linear-gradient(#fffef9,#fffef9 30px,#e6e6d9 31px);line-height:31px;padding-top:5px}.journal .choice{width:100%;text-align:left;margin:4px 0;font-size:14px}.choice.selected{background:#f2ecd8;border-color:var(--gold)}#journalStatus{font:11px/1.6 Arial,sans-serif;margin:8px 0 12px;min-height:18px}#conflictBox{background:#f6e5de;padding:12px}.chat{position:sticky;top:15px;padding:18px}.chatTabs{display:flex;gap:5px;margin:12px 0}.chatTabs button{flex:1;font:12px Arial,sans-serif}.chatTabs .selected{background:var(--ink);color:white}.turnBanner{padding:14px;background:var(--sage);border-radius:8px;font-size:15px}.messages{height:350px;overflow-y:auto;margin:15px 0;scrollbar-width:thin}.message{padding:10px 0;border-bottom:1px solid var(--line);font-size:14px;overflow-wrap:anywhere}.message p{white-space:pre-wrap;margin:4px 0}.message small{font:10px Arial,sans-serif;color:var(--muted)}.message .removeMsg{float:right;border:0;background:transparent;padding:0 4px;font:10px Arial,sans-serif}.chat textarea{height:100px;min-height:70px;font-size:14px}.chat .actions{margin-top:10px}.chatHint{font:11px/1.5 Arial,sans-serif;color:var(--muted);margin:10px 0}.toolrow{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.toolrow button{font:11px Arial,sans-serif}.connectionStatus{font:11px Arial,sans-serif;color:var(--muted)}.bookPage{padding:30px 5%}.book{max-width:810px;margin:30px auto;padding:45px;background:white;border:1px solid var(--line)}.bookCover{text-align:center;margin-bottom:40px;padding:25px 0 50px;border-bottom:1px solid var(--line)}.bookCover img{width:170px;height:220px;object-fit:cover;border-radius:90px 90px 0 0}.book h1{font-size:42px;margin-top:20px}.book .entry{margin:35px 0}.entry p{white-space:pre-wrap;overflow-wrap:anywhere}.bookSettings{display:grid;grid-template-columns:1fr 1fr;gap:18px}.hidden,[hidden]{display:none!important}dialog{max-width:680px;width:calc(100% - 30px);max-height:90vh;border:1px solid var(--line);border-radius:12px;background:var(--paper);padding:28px;color:var(--ink)}dialog::backdrop{background:#173b3be0}#closeModal{float:right;border:0;background:transparent;font-size:24px;padding:0 5px}.recovery{font:12px monospace;overflow-wrap:anywhere;background:#ecefe6;padding:15px;user-select:all}#toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;padding:12px 18px;border-radius:8px;z-index:99;max-width:90%;display:none;font:14px/1.5 Arial,sans-serif}footer{border-top:1px solid var(--line);padding:25px;text-align:center;font:12px Arial,sans-serif;color:var(--muted)}footer a{color:inherit}@media(max-width:1200px){.workspace{grid-template-columns:200px minmax(0,1fr)}.chat{position:static;grid-column:2}.messages{height:290px}}@media(max-width:700px){header{padding:15px 4%}#brand{font-size:19px}#brand small{font-size:7px}nav{gap:0}nav button{padding:8px;font-size:11px}.hero{grid-template-columns:1fr;padding:30px 5%;gap:25px}.hero img{height:350px}.workspace{display:flex;flex-direction:column;padding:0 4% 25px}.workspace>*{width:100%}.roster{order:3}.chat{order:2}.middle{order:1}.topbar{padding:20px 4%;align-items:start}.code{font-size:14px}.panel{padding:18px}.bookSettings{grid-template-columns:1fr}.book{padding:23px}.form{margin:25px 4%}}@media print{@page{size:letter;margin:.7in}header,footer,.noPrint,dialog,#toast{display:none!important}body{background:white;color:black}.bookPage,.book{padding:0;margin:0;border:0;max-width:none}.bookCover{break-after:page;border:0}.entry h3{break-after:avoid}.entry p{orphans:3;widows:3}}
