:root{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:#dce4d3;background:#151e1d;font-synthesis:none;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:1px solid #455047;background:#25312b;color:#dce4d3;border-radius:5px;padding:9px 12px;transition:background .15s}button:hover{background:#35473b}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid #e1ba75;outline-offset:4px}a{color:inherit;text-decoration:none}header{height:70px;border-bottom:1px solid #39433b;display:flex;align-items:center;justify-content:space-between;padding:0 30px;background:#1c2822}.brand{font-size:14px;letter-spacing:3px;font-weight:750;display:flex;align-items:center;gap:12px}.brand small{font-size:9px;color:#97a38d;border-left:1px solid #59624e;padding-left:12px;letter-spacing:1.5px}.mark{font:30px Georgia;color:#d4b77d}.top-actions{display:flex;align-items:center;gap:20px}.local{font-size:10px;letter-spacing:2px;color:#b1c88d}main{display:grid;grid-template-columns:270px minmax(360px,1fr) 260px;min-height:calc(100vh - 120px)}aside{padding:30px 25px}.author{background:#202c25;border-right:1px solid #39433b}.eyebrow{font-size:9px;font-weight:700;letter-spacing:2px;color:#a5b599;margin:0 0 13px}h1{font:48px/.97 Georgia,serif;letter-spacing:-2px;margin:22px 0}h1 em{font-weight:400;color:#c8ce96}h2{font:24px/1.2 Georgia,serif;font-weight:400;margin:6px 0 0}.intro{color:#aab7a4;line-height:1.65;margin:24px 0;font-size:13px}.field{display:block;font-size:10px;letter-spacing:.6px;margin:17px 0;color:#bac7ad}.field input,.field select{display:block;width:100%;margin-top:9px;border:1px solid #50604b;background:#18251e;color:#e1e8d6;padding:10px;border-radius:4px;font-size:12px}.palette-title{display:flex;flex-direction:column;gap:6px;margin-top:24px;font-size:9px;letter-spacing:1px}.palette-title small{font-size:10px;color:#9aab94;letter-spacing:0}.palette{display:flex;gap:8px;margin-top:12px}.palette label{flex:1;min-width:0;text-align:center;font:9px monospace;color:#a6b498}.palette input{width:100%;height:34px;border:0;padding:0;background:none;display:block;margin-bottom:6px;cursor:pointer}.divider{height:1px;background:#3a4b3c;margin:26px 0}.help{font-size:11px;color:#a6b49f;line-height:1.65}.primary{display:flex;justify-content:space-between;width:100%;background:#c7d3a0;color:#223024;border:0;margin:16px 0;font-weight:700}.primary:hover{background:#dfebbc}.primary span{font-size:18px}details{font-size:11px;line-height:1.65;color:#b4c0ac}summary{cursor:pointer}.workspace{padding:28px 28px 20px;min-width:0;background:radial-gradient(ellipse at 40% 30%,#23332a,#17211e 65%)}.viewbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.viewbar h2{max-width:430px;overflow-wrap:anywhere}.viewbar .eyebrow{color:#9ba78d}.segmented{display:flex;white-space:nowrap}.segmented button{font-size:10px;border-radius:0;background:#19251f;color:#aebaa5}.segmented button:first-child{border-radius:5px 0 0 5px}.segmented button:last-child{border-radius:0 5px 5px 0}.segmented button[aria-pressed=true]{background:#d4d8b5;color:#253222}.canvas{position:relative;margin-top:15px;-webkit-user-select:none;user-select:none;touch-action:none}.canvas svg{display:block;width:100%;max-height:calc(100vh - 330px);min-height:300px;overflow:visible;cursor:crosshair}.canvas-note{text-align:center;color:#9cae97;font:10px monospace;margin:0 0 24px}.canvas-note span{margin:0 12px;color:#788a6d}.transport{display:flex;align-items:center;gap:5px;padding:14px 0;border-top:1px solid #3c4839;border-bottom:1px solid #3c4839}.transport button{font-size:11px;padding:8px;background:transparent;border-color:transparent}.transport .play{background:#35442e;border-color:#546345;white-space:nowrap}.transport input{min-width:40px;flex:1;margin:0 8px;accent-color:#c7d3a0}.transport strong{font:12px monospace;white-space:nowrap}.transport strong span{color:#84947c}.invariants{display:grid;grid-template-columns:repeat(4,1fr);padding:23px 0 10px}.invariants>div{display:flex;flex-direction:column;gap:8px;text-align:center;border-right:1px solid #354530}.invariants>div:last-child{border:none}.invariants strong{font:27px Georgia;color:#dbdec4}.invariants span{font-size:8px;letter-spacing:1px;color:#9aaa90}.invariants .pass strong{color:#b5ce8f}.status{font-size:11px;line-height:1.6;min-height:32px;color:#c3cba9;border:1px solid #3b4b35;padding:12px;border-radius:4px;background:#1f2b21}.ledger{border-left:1px solid #39433b;background:#1c2822}.ledger h2{font-size:22px}.score-list{margin-top:22px;max-height:340px;overflow:auto}.score-list button{width:100%;display:flex;align-items:center;gap:12px;text-align:left;border-radius:0;border:0;border-left:2px solid #45503c;background:transparent;margin:0 0 1px;padding:12px 8px;color:#c5d0b7}.score-list button.active{border-left-color:#d4bd7b;background:#303c2a}.score-list button>span{font:10px monospace;color:#9fac8d}.score-list button div{flex:1;font-size:11px}.score-list small{display:block;font:9px monospace;color:#97a78b;margin-top:6px}.score-list b{font-size:17px;color:#c6ce99}.export{border-top:1px solid #42503a;margin-top:25px;padding-top:24px}.export button{display:block;background:none;width:100%;text-align:left;font-size:11px;margin:6px 0;border-color:#3f513a}footer{display:flex;align-items:center;justify-content:space-between;padding:16px 30px;border-top:1px solid #3b4936;color:#8b9d7d;font-size:9px;letter-spacing:1px;gap:20px}footer i{margin:0 10px}footer details{max-width:520px;font-size:10px;letter-spacing:0}footer button{margin:5px;font-size:10px}.studio:fullscreen{overflow:auto}input[type=range]{cursor:pointer}@media(min-width:1600px){main{grid-template-columns:310px minmax(360px,1fr) 300px}.author,.ledger{padding:35px}.workspace{padding:35px 45px}}@media(max-width:1100px){main{grid-template-columns:230px minmax(350px,1fr)}.author{padding:25px 20px}.ledger{grid-column:1/-1;border-top:1px solid #3b4936;display:grid;grid-template-columns:1fr 2fr;gap:12px}.ledger .score-list{grid-row:1/5;grid-column:2;max-height:240px}.ledger .export{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px}.export .eyebrow{width:100%}.export button{width:auto}.canvas svg{max-height:none}}@media(max-width:680px){header{padding:0 16px;height:60px}.local,.brand small{display:none}.top-actions button{font-size:10px}main{display:flex;flex-direction:column}.workspace{order:0;padding:20px 16px}.author{order:1;border-top:1px solid #3b4936;display:block;padding:25px}h1{font-size:40px}h1 br{display:none}.intro{margin:12px 0}.ledger{order:2;display:block}.viewbar h2{font-size:20px;max-width:200px}.canvas svg{min-height:240px}.transport{gap:1px}.transport button{padding:6px}.transport input{margin:0 4px}.invariants span{font-size:7px}.score-list{max-height:260px}footer{align-items:start;flex-direction:column;padding:20px}.canvas-note{font-size:9px}.segmented button{padding:7px}.palette{max-width:280px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}.warning{padding:12px;border:1px solid #cba56e;background:#3d3424;color:#f0d5a4;font-size:12px;line-height:1.6;border-radius:4px}.viewbar h2{white-space:pre-wrap;overflow-wrap:anywhere;min-width:0}.viewbar>div:first-child{min-width:0;flex:1}
