:root{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:#f2eee4;background:#191d26;font-synthesis:none;color-scheme:dark}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{border:1px solid #4e535b;background:#282d36;color:#ecebdf;border-radius:7px;padding:9px 12px;cursor:pointer;transition:background .18s,transform .18s}button:hover:not(:disabled){background:#41464d;transform:translateY(-1px)}button:disabled{opacity:.35;cursor:default}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #ffcd72;outline-offset:3px}input,select,textarea{width:100%;background:#252a31;color:#ecebdf;border:1px solid #4e535b;border-radius:5px;padding:9px;min-width:0}textarea{min-height:90px;resize:vertical}label{display:flex;flex-direction:column;gap:6px;font-size:11px;color:#aeb7bd;text-transform:uppercase;letter-spacing:.06em}header{display:flex;align-items:center;justify-content:space-between;padding:24px 3vw;border-bottom:1px solid #353943;gap:25px}.brand{display:flex;align-items:center;gap:16px}.logo{font:italic 42px Georgia;color:#ffc87b;border:1px solid #665340;border-radius:50%;width:64px;height:64px;text-align:center;position:relative}.logo span{font:22px system-ui;position:absolute;right:1px;top:0}.eyebrow{font-size:9px;letter-spacing:.2em;color:#b9ab94;margin:0 0 7px}h1{font-size:20px;font-weight:500;margin:0;letter-spacing:-.02em}h1 em{font-family:Georgia;font-weight:400;color:#ffc87b}.header-actions{display:flex;align-items:center;gap:25px}.local{font-size:11px;color:#b1c9b2}main{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(430px,1fr);min-height:calc(100dvh - 114px)}.stage{padding:34px 3vw;background:radial-gradient(ellipse at 50% 35%,#35343a,#1a1e27 65%);position:relative}.stage-top{display:flex;align-items:center;justify-content:space-between;font-size:8px;letter-spacing:.14em;color:#aaa69d;gap:15px}.pill{border:1px solid #605345;color:#edc48f;border-radius:20px;padding:8px 12px}.stage h2{font:normal clamp(32px,3.8vw,61px)/1.04 Georgia,serif;max-width:640px;margin:40px 0 16px;white-space:pre-wrap;overflow-wrap:anywhere;letter-spacing:-.035em}.subhead{color:#bbb9b4;font-size:13px;line-height:1.7}.world{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;padding:80px 0 26px;margin:15px 0;border-bottom:1px solid #53504c}.spotlights{position:absolute;inset:0;background:linear-gradient(65deg,transparent 25%,#efc27b07 25%,#efc27b0a 45%,transparent 45%);pointer-events:none}.player{text-align:center;min-width:0;z-index:1}.avatar{height:83px;position:relative;border-radius:55% 55% 35% 35%;background:radial-gradient(ellipse at 30% 20%,hsl(var(--hue) 55% 76%),hsl(var(--hue) 36% 50%));width:clamp(45px,6vw,83px);margin:0 auto 16px;box-shadow:0 12px 28px #0004;transition:transform .35s ease}.avatar>span{font-size:31px;display:block;padding-top:8px;color:#1e2836}.avatar small{position:absolute;bottom:6px;left:0;right:0;color:#1e2836}.player h3{font-size:12px;overflow-wrap:anywhere;white-space:pre-wrap;margin:0 0 5px;color:hsl(var(--hue) 45% 78%)}.position{font-size:9px;color:#a8a7a4}.stats{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin:10px auto 0;max-width:85px;font:10px ui-monospace,monospace;color:#ccc6bb}.stats span{background:#ffffff08;border-radius:4px;padding:4px}.narration{min-height:140px;margin-top:28px}.narration>p{font:22px/1.5 Georgia;overflow-wrap:anywhere;white-space:pre-wrap;margin:9px 0}.narration strong{font-weight:400;color:#ffcc82}.narration em{color:#b6cabb}.changes{display:flex;gap:5px;flex-wrap:wrap;font-size:10px}.changes span{border:1px solid #4b5551;border-radius:5px;padding:6px;color:#c0d4c6}.transport{display:flex;flex-wrap:wrap;gap:8px}.primary{background:#e9bd79;color:#252727;border-color:#e9bd79}.primary:hover:not(:disabled){background:#f6d299}.note{color:#9fa6aa;font-size:10px;line-height:1.6;max-width:550px}.proof{border:1px solid #4c6857;background:#9bb5930b;padding:15px;border-radius:9px;font:11px/1.6 ui-monospace,monospace;margin-top:20px}.proof strong{color:#b6d5b6}.proof small{display:block;color:#adb9b1;margin-top:10px}.workbench{border-left:1px solid #3a3c42;background:#20242c;display:flex;flex-direction:column;min-width:0}nav{display:flex;border-bottom:1px solid #41434a;padding:0 22px;gap:6px}nav button{border:0;border-bottom:2px solid transparent;border-radius:0;background:none;font-size:11px;padding:20px 14px;color:#b2b3b7}nav button.active{border-color:#efc389;color:#efc389}nav button:hover:not(:disabled){transform:none;background:#ffffff05}.editor{padding:26px;flex:1}.editor-title{display:flex;align-items:center;justify-content:space-between;gap:10px}.editor-title h2{font-size:16px;font-weight:500;margin:0}.editor-title>span{font:8px ui-monospace,monospace;color:#9b9da4;letter-spacing:.1em}.hint{color:#a9adb5;font-size:11px;line-height:1.65;margin:14px 0 22px}.clause{border:1px solid #454850;border-radius:9px;margin-bottom:12px;background:#292d35;overflow:hidden}.clause.playing{border-color:#dcac64;box-shadow:0 0 0 2px #dcac6411}.clause-head{display:flex;align-items:center;gap:6px;padding:8px 12px;background:#ffffff03}.clause-head>span{flex:1;font:9px ui-monospace,monospace;letter-spacing:.08em;color:#c7b697}.clause-head small{font-size:8px;color:#8d929b;margin-left:6px}.clause-head button,.grip{padding:3px 7px;font-size:12px;border-color:transparent;background:transparent}.grip{cursor:grab;color:#c8b28c}.sentence{display:grid;grid-template-columns:1fr 1.15fr 1fr;gap:8px;padding:12px}.sentence label{font-size:8px}.sentence select{font-size:12px;text-transform:none;padding:8px 4px}.binding{display:flex;align-items:center;gap:8px;padding:0 12px 12px;flex-wrap:wrap}.binding>span{background:#c2ae7d1a;border:1px solid #8c764b6e;color:#ead09b;padding:4px 8px;border-radius:5px;font:11px Georgia}.binding small{color:#9e988a;font:8px ui-monospace,monospace}.binding>small{margin-left:auto;font-size:7px}.add{width:100%;background:none;border-style:dashed;color:#bdc8bd;font-size:12px;padding:14px}.section-label{display:flex;justify-content:space-between;font-size:12px;margin:27px 0 14px;font-weight:500}.section-label span{color:#a7a3a0;font:9px ui-monospace}.modifier{display:flex;gap:10px;align-items:center;margin-bottom:10px;padding:10px;background:#363128;border:1px solid #6b5840;border-radius:7px}.modifier label{flex:1;font-size:8px}.modifier select{font-size:11px;background:#292720}.modifier>button:last-child{padding:4px 7px;background:none;border:0}.row{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.row button{font-size:10px}.initial,.puzzle{border:1px solid #464a50;padding:17px;border-radius:9px;margin:16px 0}.initial-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin-top:14px}.initial-stats input{padding:8px 4px}.puzzle h3{font:23px Georgia;margin:12px 0;color:#e8c695}.puzzle p{font-size:12px;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere}.puzzle button{font-size:10px;margin-top:12px}.puzzle label{margin-top:10px}details{border-top:1px solid #43474c;padding:14px 0;color:#c1c4c6;font-size:11px;line-height:1.7}summary{cursor:pointer;color:#d9bd94}.json{min-height:220px;font:11px/1.6 ui-monospace,monospace;text-transform:none;margin-top:8px}footer{border-top:1px solid #464950;padding:12px 25px 18px;font-size:10px;color:#adb3b7}footer p{line-height:1.5}.warning{color:#ffd49b;background:#6e4b2929;padding:10px;border-radius:6px}.editor>label{margin-top:15px}.editor>button{font-size:11px}p,small{overflow-wrap:anywhere}@media(min-width:1100px){.stage{position:sticky;top:0;height:100dvh;overflow:auto}.workbench{max-height:calc(100dvh - 114px)}.editor{overflow:auto}}@media(max-width:850px){main{grid-template-columns:1fr}.stage{padding:25px}.workbench{border-left:0}.world{padding-top:45px}.stage h2{font-size:44px}.avatar{width:66px}.header-actions .local{display:none}header{padding:20px}h1{font-size:17px}.logo{display:none}.editor{padding:20px}nav{padding:0 10px;justify-content:space-between}nav button{padding:18px 10px}}@media(max-width:420px){header{padding:16px;gap:10px}.header-actions button{font-size:10px;padding:9px}.eyebrow{font-size:7px}.stage{padding:20px}.avatar{width:47px;height:66px}.avatar>span{font-size:24px}.world{gap:5px}.stage-top{font-size:7px}.sentence{gap:5px;padding:10px}.sentence select{font-size:10px}.initial-stats{grid-template-columns:repeat(3,1fr)}.transport button{font-size:11px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}.puzzle h3{white-space:pre-wrap;overflow-wrap:anywhere;min-width:0;max-width:100%}.changes{min-width:0;max-width:100%}.changes span{min-width:0;max-width:100%;white-space:pre-wrap;overflow-wrap:anywhere}
