*{box-sizing:border-box}html{color-scheme:dark}body{margin:0;background:#101e25;color:#e5e8da;font:15px/1.5 system-ui,sans-serif;background-image:radial-gradient(ellipse at 50% 0,#264c4b77,transparent 65%)}main{max-width:1180px;padding:34px 28px;margin:auto}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px}.eyebrow{font-size:9px;letter-spacing:.24em;color:#96b2ad;margin:0 0 12px}h1{font:clamp(32px,5vw,55px)/1.05 Georgia,serif;letter-spacing:-.025em;margin:0;color:#f1e4ca}.subtitle{color:#a2b9b3;font:italic 17px Georgia,serif;margin:14px 0 0}.motif{font:55px Georgia,serif;color:#cfb287;display:flex;gap:16px;transform:rotate(-10deg)}.motif span{opacity:.4;margin-top:20px}.desk{border:1px solid #4b625e;border-radius:14px;background:#152b30;box-shadow:0 22px 90px #0006;overflow:hidden}.topline{display:flex;justify-content:space-between;padding:16px 22px;gap:15px;border-bottom:1px solid #3b5351}.topline label{font-size:9px;letter-spacing:.17em;display:flex;align-items:center;gap:12px}.topbuttons{display:flex;gap:8px}button,select{background:#213e40;border:1px solid #54716a;color:#e9e4d3;border-radius:5px;font:12px system-ui;padding:10px 13px;cursor:pointer;min-height:40px}button:hover{background:#365653}button:disabled{opacity:.45;cursor:wait}button:focus-visible,select:focus-visible,canvas:focus-visible,a:focus-visible{outline:2px solid #f0ca90;outline-offset:3px}#start,#playchord{background:#d3bc92;color:#172c30;border-color:#d3bc92;font-weight:600}.scorehead{display:flex;justify-content:space-between;align-items:center;padding:21px 26px}h2{font:26px Georgia,serif;margin:0}.scorehead p{font-size:11px;color:#a6bbb2;margin:5px 0 0}.folio{text-align:right;font-variant-numeric:tabular-nums}.folio span{font:34px Georgia,serif;color:#f0d2a1}.folio small{display:block;font-size:10px;color:#9eb6af}.stage{position:relative;aspect-ratio:2.45;background:#0f252b;border-block:1px solid #3b5351;overflow:hidden}canvas{width:100%;height:100%;display:block;touch-action:none}#curtain{position:absolute;inset:0;background:#10282de8;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;text-align:center;padding:18px;backdrop-filter:blur(3px)}#curtain[hidden]{display:none}.tiny{font-size:8px;letter-spacing:.23em;color:#a9beb3}#curtain strong{font:30px Georgia,serif;color:#f3ddba}#curtain p{font-size:12px;color:#b1c2b9;margin:0 0 2px}#start{min-width:160px}.dynamics{position:absolute;right:12px;top:22px;bottom:45px;display:flex;flex-direction:column;align-items:center;pointer-events:none;font-size:7px;letter-spacing:.1em;color:#78978e}.dynamics i{width:1px;flex:1;background:linear-gradient(#bda981,transparent);margin:10px}.stagehint{position:absolute;bottom:8px;left:24px;margin:0;font:italic 11px Georgia,serif;color:#91aaa1;pointer-events:none}.transport{padding:16px 22px;display:flex;gap:8px;flex-wrap:wrap;align-items:center}kbd{font:9px monospace;border:1px solid #5b6d5d;padding:2px 4px;border-radius:3px;margin-left:5px}.tempo{margin-left:auto;font-size:9px;color:#a6bbb2;display:flex;gap:8px;align-items:center}.tempo select{font-size:10px;min-height:36px;padding:8px}.bottomline{border-top:1px solid #3b5351;padding:14px 22px;display:flex;gap:15px;align-items:center;font-size:10px;color:#aec2b8}progress{height:5px;width:140px;accent-color:#d3bc92}#record{margin-left:auto;color:#cdbb98}#instructions{margin-top:18px;padding:24px;border:1px solid #4b625e;border-radius:10px;color:#b8cbc0;background:#182f33}#instructions h2{font-size:23px;color:#ead9bb}#instructions p{font-size:13px;max-width:900px}footer{display:flex;justify-content:space-between;gap:16px;color:#8da79e;font-size:10px;margin:18px 0}footer p{margin:0}a{color:#c6ccba;text-underline-offset:3px}@media(max-width:650px){main{padding:22px 12px}.motif{display:none}header{margin-bottom:20px}.eyebrow{font-size:8px}.subtitle{font-size:15px}.topline{padding:12px;flex-wrap:wrap}.topline label{width:100%}.topline select{flex:1}.topbuttons button{min-height:36px}.scorehead{padding:18px}.scorehead h2{font-size:23px}.stage{aspect-ratio:1.1}#curtain strong{font-size:25px}.tiny{font-size:7px;letter-spacing:.14em}.transport{padding:12px;gap:7px}.transport button{min-height:44px}#playchord{flex:1}.tempo{margin:5px 0 0;width:100%;justify-content:space-between}.bottomline{padding:12px;flex-wrap:wrap;gap:9px}progress{width:100%}#record{margin-left:0;width:100%}.stagehint{left:14px;font-size:10px}footer{display:block}footer p{margin:8px 0}}