:root{font-family:Arial,Helvetica,sans-serif;color:#233e3b;background:#e8e9e1;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer;background:#fffdf6;border:1px solid #bac7bd;border-radius:5px;padding:9px 11px;color:inherit}button:hover{background:#e1eee2}button:disabled{opacity:.4;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #b76e32;outline-offset:2px}header{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:25px 30px;border-bottom:1px solid #b7c4b8;background:#f3f2e9}.eyebrow{font:11px monospace;letter-spacing:2px;color:#63736a}h1{font:30px Georgia,serif;margin:8px 0}h1 span{display:block;font:13px Arial;margin-top:6px;color:#64726a}.actions{display:flex;gap:8px}.workbench{display:grid;grid-template-columns:245px minmax(320px,1fr) 240px;min-height:calc(100vh - 175px)}aside{padding:22px 18px;background:#f2f2e9;border-right:1px solid #c6d0c5}aside:last-child{border-right:0;border-left:1px solid #c6d0c5}h2{font:12px monospace;letter-spacing:2px;margin:5px 0 20px;color:#678073}label{display:block;font-size:12px;margin:14px 0 6px}input:not([type=checkbox]),select,output{display:block;width:100%;padding:8px;border:1px solid #bcc9bd;background:#fffdf6;border-radius:4px;margin-top:6px;color:#233e3b}input[type=color]{height:38px}input[type=range]{padding:0}aside>button{width:100%;margin-top:7px}.line-tabs,.pair{display:flex;gap:4px;margin:10px 0}.line-tabs button{flex:1;padding:8px}.pair button{flex:1}.chosen{background:#234c41!important;color:#fff!important}.tree{max-height:240px;overflow:auto;border:1px solid #ccd2c7;border-radius:5px;margin-top:14px;padding:5px}.tree-node{display:block;width:100%;text-align:left;border:0;background:transparent;padding:6px 4px;font:12px monospace;border-radius:3px}.tree-node small{float:right;opacity:.6}.hint{font-size:11px;line-height:1.6;color:#6b786f}.center{min-width:0;padding:20px}.stage-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;font:10px monospace;color:#637269;margin-bottom:16px}.stage-bar label{margin:0;font-size:11px}.paper-scroll{max-height:calc(100vh - 270px);min-height:430px;overflow:auto;background:#d3d9cd;border:1px solid #c5cdbf;padding:20px}.paper{position:relative;min-width:500px;box-shadow:0 5px 20px #233e3b19;background:#f9f5eb}.art svg{display:block;width:100%;height:auto}.rail{position:absolute;top:65px;bottom:10px;padding:0;width:16px;transform:translate(-50%);border:0;border-left:1px dashed #45977f;border-radius:0;background:transparent;touch-action:none}.rail:hover{background:#4ca48415}.rail span{display:block;background:#226b56;color:#fff;width:25px;height:25px;position:absolute;top:-25px;left:-13px;line-height:25px;border-radius:50%;font:12px/25px monospace}.rail-setting{display:flex;align-items:end;gap:7px}.rail-setting label{flex:1}.rail-setting button{margin-bottom:6px}.primary{background:#234c41;color:#fff}.readout{padding:15px 0;font-size:12px;color:#637269;line-height:1.5}details{font-size:12px;line-height:1.5}summary{cursor:pointer}footer{padding:15px 25px;display:flex;justify-content:space-between;gap:30px;border-top:1px solid #c5cfc3;font:10px monospace}footer details{max-width:650px;font:11px Arial}footer p{line-height:1.6}footer button{margin-right:8px}code{white-space:pre-wrap}output{font-family:monospace}@media(max-width:1050px){.workbench{grid-template-columns:210px minmax(300px,1fr)}aside:last-child{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}aside:last-child h2,aside:last-child>.hint{grid-column:1/-1}}@media(max-width:680px){header{padding:18px;display:block}.actions{margin-top:18px;flex-wrap:wrap}.workbench{display:flex;flex-direction:column}aside{border:0}.tree{max-height:160px}.center{padding:12px}.paper-scroll{min-height:420px}aside:last-child{display:block}footer{display:block}footer details{margin-top:15px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
