:root{--paper:#e7e5da;--ink:#252c28;--orange:#ed633b;--line:#b9bcb1;--green:#b9e6b0}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Courier New',monospace}main{max-width:1350px;margin:auto;padding:26px 48px}header{display:flex;align-items:center;border-bottom:2px solid var(--ink);padding-bottom:20px;gap:28px}.brand{font-size:27px;font-weight:bold;letter-spacing:-2px;color:var(--ink);text-decoration:none}.brand span{color:var(--orange);margin:0 5px}.header-meta{font-size:10px;line-height:1.6;letter-spacing:1px}.header-meta span{color:#6d756d}.small{margin-left:auto;font-size:10px;background:transparent;padding:8px 12px;border:1px solid var(--ink)}button{font-family:inherit;cursor:pointer;color:inherit}button:hover{filter:brightness(.94)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--orange);outline-offset:4px}button:disabled{opacity:.4;cursor:not-allowed}.title{display:flex;align-items:center;justify-content:space-between;margin:38px 0 32px}.eyebrow{font-size:10px;letter-spacing:2px}h1{font-family:Impact,'Arial Black',sans-serif;font-size:clamp(58px,7.8vw,104px);letter-spacing:-4px;line-height:1;margin:12px 0}h1 span{color:var(--orange)}h1 sup{font-family:Arial;font-size:20px;vertical-align:top;letter-spacing:0;margin-left:8px}.title p{font-size:12px;margin:15px 0 0}.edition{border:2px solid var(--ink);padding:12px 16px;display:flex;gap:8px;font-size:60px;line-height:1;font-weight:bold;transform:rotate(5deg)}.edition span{font-size:13px;line-height:1.3;align-self:center}.workspace{display:grid;grid-template-columns:.95fr 1.3fr;gap:20px}.panel{border:1px solid var(--ink);background:#efeee6}.panel-top{height:43px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--ink);padding:0 18px;font-size:10px;letter-spacing:1px}.live{display:flex;gap:6px;align-items:center}.live i{width:6px;height:6px;background:#438d4b;display:inline-block}.terminal{background:#d4d6c9}.monitor{background:#142921;color:var(--green);margin:16px 16px 0;padding:14px 16px 8px;position:relative;overflow:hidden;box-shadow:inset 0 0 45px #071811}.monitor-caption{font-size:8px;letter-spacing:1.5px;opacity:.6}#robot{display:block;height:136px;width:156px;margin:13px auto 0;image-rendering:pixelated;filter:drop-shadow(0 0 7px #b9e6b033)}#robot-message{text-align:center;font-size:13px;letter-spacing:3px;margin:4px 0 0}#scope{width:100%;height:52px;display:block}.screen-foot{display:flex;justify-content:space-between;font-size:8px;letter-spacing:1px;opacity:.6}.monitor-bottom{display:flex;justify-content:space-between;padding:14px 18px;font-size:8px;letter-spacing:1px}.compose{padding-bottom:13px}.input-label{display:block;font-size:10px;margin:22px 22px 12px;letter-spacing:1px}textarea{display:block;width:calc(100% - 44px);height:106px;resize:vertical;margin:0 22px;background:transparent;border:none;border-bottom:1px solid var(--line);font-family:inherit;font-size:20px;line-height:1.45;color:var(--ink);padding:0 0 10px}.quick{display:flex;align-items:center;gap:7px;margin:14px 22px;font-size:8px;flex-wrap:wrap}.quick button{background:transparent;border:1px solid var(--line);padding:5px 7px;font-size:8px}.voice-note{margin:0 22px;color:#72786e;font-size:9px}.actions{display:flex;gap:9px;margin:22px 22px 12px}.actions button{border:1px solid var(--ink);font-size:11px;font-weight:bold;padding:16px 13px;box-shadow:2px 3px 0 var(--ink)}.primary{background:var(--orange);flex:1}.stop{background:#e1dfd3}.export{background:transparent}#status{font-size:8px;margin:0 22px;min-height:12px;letter-spacing:.6px}.preset-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:15px}.preset{text-align:left;background:transparent;border:1px solid var(--line);padding:12px;position:relative}.preset span{float:right;color:#8b9185;font-size:9px}.preset strong{display:block;font-size:10px}.preset small{display:block;font-size:9px;margin-top:8px;color:#6d756d}.preset.active{background:var(--ink);color:var(--paper);border-color:var(--ink)}.preset.active small{color:#bfc4b8}.text-button{background:none;border:none;font-size:9px}.sliders{display:grid;grid-template-columns:1fr 1fr;padding:22px;gap:23px 32px}.sliders label{font-size:10px;letter-spacing:.5px}.sliders output{float:right;color:#b34c30}input[type=range]{display:block;width:100%;height:16px;margin:13px 0 7px;accent-color:var(--orange);cursor:pointer}.sliders small{font-size:8px;color:#7c8277}footer{margin-top:25px;display:flex;align-items:center;justify-content:space-between;font-size:8px;color:#747b6e;gap:15px}footer b{color:var(--orange);font-size:21px;vertical-align:middle;margin-right:6px}.playing #robot{animation:bob .22s steps(2) infinite}.playing #mouth{animation:mouth .15s steps(2) infinite;transform-origin:center}.crt .monitor:after{content:'';pointer-events:none;position:absolute;inset:0;background:repeating-linear-gradient(transparent 0 2px,#0003 2px 4px)}@keyframes bob{50%{transform:translateY(-3px)}}@keyframes mouth{50%{transform:scaleY(1.7)}}@media(max-width:800px){main{padding:20px}.workspace{grid-template-columns:1fr}.title{margin:28px 0}.edition{display:none}.header-meta{font-size:8px}h1{letter-spacing:-3px}footer{flex-wrap:wrap}.monitor{min-height:250px}.preset-grid{grid-template-columns:1fr 1fr}}@media(prefers-reduced-motion:reduce){.playing #robot,.playing #mouth{animation:none}}

/* Formant laboratory additions */
.mode-switch{display:flex;margin:16px 22px 0;border:1px solid var(--ink)}.mode-switch button{flex:1;padding:11px 8px;border:0;background:transparent;font-size:10px}.mode-switch button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.compose .input-label{margin-top:17px}.compose textarea{font-size:16px;height:100px}.actions{flex-wrap:wrap}.actions .replay{background:transparent}.compose .voice-note{line-height:1.6}#tempo-wrap{display:block;font-size:9px;margin:12px 22px}#tempo-wrap[hidden]{display:none}#tempo-wrap output{float:right}#tempo-wrap input{height:10px;margin:8px 0}#phoneme{text-align:center;font-size:9px;letter-spacing:1px;height:15px;color:#d3e9ad}.vowel-lab{grid-column:1/-1}.vowel-body{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding:22px}.vowel-body canvas{width:100%;height:190px;display:block;touch-action:none;cursor:crosshair}.pad-caption{font-size:8px;margin-top:8px;color:#747b6e}.vowel-settings h2{font-size:18px;margin:0 0 8px}.vowel-settings p{font-size:10px;line-height:1.6;color:#747b6e;margin:0 0 12px;max-width:400px}.vowel-buttons{display:flex;gap:8px}.vowel-buttons button{background:var(--ink);color:var(--green);border:1px solid var(--ink);padding:8px 15px}.vowel-sliders{display:grid;grid-template-columns:130px 1fr;gap:6px 14px;align-items:center;font-size:9px;margin:12px 0}.vowel-sliders input{margin:0}.vowel-sliders output{color:#b34c30}.vowel-bottom{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.vowel-bottom button{background:var(--orange);border:1px solid var(--ink);padding:9px 12px;font-size:10px}.vowel-bottom span{font-size:9px}.lab-note{padding:12px 22px;border-top:1px solid var(--line);font-size:8px;line-height:1.6;color:#747b6e}.monitor{padding-top:14px}#robot{height:120px}textarea[readonly]{color:#697264;background:#e4e5db;padding:8px}.primary{min-width:190px}@media(max-width:800px){.vowel-body{grid-template-columns:1fr;gap:22px}.vowel-lab{grid-column:1}.vowel-sliders{grid-template-columns:120px 1fr}}
/* Composition editor */
[hidden]{display:none!important}.composer-panel{grid-column:1/-1}.composer-content{padding:22px}.composer-instructions h2{font-size:20px;margin:0 0 9px}.composer-instructions p{font-size:11px;line-height:1.7;max-width:800px;color:#687364}.field-label{display:block;font-size:9px;margin:18px 0 10px;letter-spacing:1px}#composer-lyrics{width:100%;margin:0;height:68px;font-size:18px;line-height:1.5;border:1px solid var(--line);padding:10px;background:#e7e8dc}.composer-toolbar{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:16px 0}.composer-toolbar label{font-size:9px;display:block}.composer-toolbar select{display:block;margin-top:7px;min-height:35px;font-family:inherit;font-size:10px;border:1px solid var(--line);background:transparent;padding:8px;color:var(--ink)}.composer-toolbar button,.score-actions button,.midi-import button{border:1px solid var(--ink);background:transparent;font-family:inherit;font-size:10px;padding:11px 13px;min-height:35px}#build-score{background:var(--orange)}.score-legend{font-size:10px;line-height:1.8;margin:10px 0 16px;color:#72786e}.roll-scroll{overflow-x:auto;background:#142921;padding:12px 10px 0;border:1px solid var(--ink)}#piano-roll{display:block;max-width:none}#piano-roll rect{cursor:pointer}#piano-roll text{pointer-events:none}.score-scroll{overflow:auto;max-height:350px;border:1px solid var(--line);margin-top:14px}.score-table{width:100%;border-collapse:collapse;min-width:600px}.score-table th{text-align:left;font-size:9px;padding:12px 8px;background:#dedfd3;position:sticky;top:0;z-index:1}.score-table th small{font-weight:normal;font-size:8px}.score-table td{border-top:1px solid var(--line);padding:6px;font-size:10px}.score-table tr.sounding{background:#f6c9a6}.score-table input,.score-table select{width:100%;font-family:inherit;font-size:11px;background:transparent;border:1px solid #c7cbbd;padding:8px;min-height:33px;color:var(--ink)}.score-table td:nth-child(1){width:35px;color:#72786e}.score-table td:nth-child(2){width:21%}.score-table td:nth-child(3){width:23%}.score-table td:nth-child(4){width:26%}.score-table td:nth-child(5){width:15%}.score-table td:last-child{width:32px}.score-table td:last-child button{background:none;border:0;font-size:20px}.score-actions{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}.score-actions .primary{background:var(--orange);flex:0 1 auto;min-width:200px}.midi-import{display:flex;align-items:center;gap:14px;flex-wrap:wrap;border-top:1px dashed var(--line);padding-top:16px}.midi-import>span{font-size:9px;color:#72786e}.file-label{font-size:10px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}#midi-file{font-family:inherit;font-size:10px;max-width:240px}#midi-track-picker{display:flex;align-items:center;gap:12px;width:100%;flex-wrap:wrap}#midi-track-picker label{font-size:9px}#midi-track{font-family:inherit;font-size:11px;max-width:100%;padding:8px;flex:1;background:transparent;border:1px solid var(--line)}#composer-message{font-size:10px;line-height:1.8;padding-top:14px;color:#687364;min-height:34px}#composer-message.error{color:#a73b27;font-weight:bold}.mode-switch button{font-size:9px;padding:11px 5px}.composer-panel .panel-top{height:auto;min-height:43px;flex-wrap:wrap;gap:8px;padding-top:10px;padding-bottom:10px}#score-summary{font-size:9px}@media(max-width:800px){.composer-panel{grid-column:1}.composer-content{padding:15px}.composer-toolbar{gap:10px}.composer-toolbar label{flex:1}.composer-toolbar select{width:100%}.composer-toolbar button{flex:1}.composer-instructions p{font-size:10px}.mode-switch{margin-left:15px;margin-right:15px}}
.composer-toolbar input[type=number]{display:block;margin-top:7px;width:110px;min-height:35px;font-family:inherit;font-size:12px;border:1px solid var(--line);background:transparent;padding:8px;color:var(--ink)}
#song-section-wrap{display:block;font-size:9px;margin:12px 22px;line-height:1.6}#song-section{display:block;font-family:inherit;font-size:11px;color:var(--ink);background:transparent;border:1px solid var(--line);padding:8px;width:100%;margin-top:6px}

.site-return{font-size:9px;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--line);padding:5px 0;white-space:nowrap}@media(max-width:600px){header{gap:12px;flex-wrap:wrap}.header-meta{flex:1}.site-return{order:3}}
