:root{color-scheme:light;font-family:ui-monospace,"SFMono-Regular",Menlo,Consolas,"Liberation Mono",monospace;font-size:16px;color:#111;background:#fff;--hairline:#d4d4d4}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}
button,input,a{font:inherit}button{cursor:pointer;border:0;border-radius:0;background:transparent;color:inherit}button:disabled{cursor:not-allowed;opacity:.38}
a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:4px}
button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid #111;outline-offset:3px}
p,h2{margin:0}
.top{height:72px;border-bottom:1px solid var(--hairline);display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 max(24px,calc((100vw - 1120px)/2));font-size:.79rem;letter-spacing:.03em}
.top .brand{font-weight:400;letter-spacing:inherit;white-space:nowrap}.top>a:last-child{white-space:nowrap}
main{max-width:1120px;margin:auto;padding:0 24px}
.lookup{display:grid;grid-template-columns:auto minmax(120px,1fr) auto auto;align-items:center;gap:24px;border-bottom:1px solid #111;min-height:104px;margin-top:36px}
.lookup label{font-size:.87rem;font-weight:700;white-space:nowrap}.lookup input{border:0;outline:0;background:transparent;min-width:0;width:100%;height:78px;font-size:2.1rem;letter-spacing:-.06em}
.lookup button{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:46px;font-size:.82rem;white-space:nowrap;padding:0;line-height:1}.lookup button[type=submit]{border-bottom:1px solid #111;font-weight:700}.lookup #random{color:#555}.action-icon{display:block;width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:square;stroke-linejoin:miter}
.status-message{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden}
.status-message[data-kind=error]{position:static;clip-path:none;width:auto;height:auto;margin:0;padding:12px 0;color:#a22;font-size:.75rem}
.pair{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:stretch;margin-top:28px}
.art-panel,.score-panel{border:1px solid var(--hairline);min-width:0;aspect-ratio:1;display:flex;flex-direction:column;overflow:hidden}
.panel-head,.panel-foot{height:45px;min-height:45px;flex:0 0 45px;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:0 20px;font-size:.78rem}
.panel-head{border-bottom:1px solid var(--hairline)}.panel-head span:last-child,.panel-head a{color:#666}
.panel-foot{border-top:1px solid var(--hairline);color:#555;font-size:.72rem}.panel-foot span:last-child{text-align:right}
.art-frame{position:relative;background:#fff;flex:1;min-height:0}.art-frame img{display:block;width:100%;height:100%;object-fit:contain;image-rendering:pixelated}
.source-highlight{position:absolute;inset:0;z-index:2;pointer-events:none}
.source-highlight i{position:absolute;display:block;mix-blend-mode:multiply;opacity:.64}
.score-stage{position:relative;overflow:hidden;background:#fff;width:100%;flex:1;min-height:0}
#blocks{position:absolute;inset:0;pointer-events:none}
.ink-block{position:absolute;display:block;pointer-events:auto;overflow:hidden}
.ink-layers{position:absolute;left:0;right:0;bottom:0;height:3px;display:flex;pointer-events:none}.ink-layers i{height:100%;min-width:0}
.ink-block.coda::after{content:"";position:absolute;left:var(--hold-share);right:0;top:0;bottom:0;background:linear-gradient(90deg,transparent,#fff);pointer-events:none}
.playhead{position:absolute;top:5%;bottom:5%;width:1px;background:#888;opacity:0;pointer-events:none}
.playhead.running{opacity:.6;animation:travel var(--duration,2.5s) linear var(--cycles,4) forwards}
@keyframes travel{0%{transform:translateX(0)}90%,100%{transform:translateX(var(--travel,100px))}}
.actions{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:0;margin-top:24px;border:1px solid var(--hairline)}
.actions button{min-height:72px;padding:14px;font-size:.84rem}.actions button+button{border-left:1px solid var(--hairline)}
.actions button:hover:not(:disabled){background:#f5f5f5}.actions button:first-child{background:#111;color:#fff;font-weight:700}
.actions button:first-child:hover:not(:disabled){background:#333}.actions button:first-child span:first-child{margin-right:13px}
.format-foot{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:17px 0;font-size:.74rem;color:#666}
.format-foot>span:last-child{display:flex;gap:24px}.format-foot button{font-size:inherit;color:#111;padding:0}
.receipt{border-top:1px solid #111;border-bottom:1px solid #111;margin-top:76px}
.receipt summary{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:79px;list-style:none;cursor:pointer;font-size:.78rem;font-weight:400}
.receipt summary::-webkit-details-marker{display:none}.receipt summary span:last-child{display:flex;gap:20px;align-items:center;color:#666;font-weight:400}
.receipt summary b{font-size:1rem;line-height:1;font-weight:400;color:#111}.receipt[open] summary b{transform:rotate(45deg)}
.decisions{border-top:1px solid #dedede}.decision{display:grid;grid-template-columns:110px 215px 1fr;gap:18px;border-bottom:1px solid #e5e5e5;padding:15px 0;font-size:.84rem;line-height:1.55}
.decision>span:first-child{font-size:.76rem;color:#777}.decision strong{font-weight:500}.decision>span:last-child{color:#555}
.provenance{display:flex;align-items:start;justify-content:space-between;gap:30px;padding:24px 0;border-bottom:1px solid #dedede;font-size:.74rem}
.provenance span{min-width:0;max-width:620px}.provenance code{display:block;margin-top:10px;font:inherit;overflow-wrap:anywhere;color:#666}.provenance a{white-space:nowrap}
.rule-link{padding:24px 0 34px;font-size:.78rem}
footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:34px 0 70px;font-size:.75rem;color:#666}
dialog{border:1px solid #111;border-radius:0;box-shadow:0 14px 60px #0002;padding:0;width:min(95vw,520px);max-width:none;max-height:90vh;overflow-y:auto;color:#111}
dialog::backdrop{background:#0008}.dialog-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #dedede;padding:20px 25px;font-size:.75rem}
.dialog-head button{font-size:1.5rem;line-height:1}.dialog-head+h2{padding:34px 25px 0;font-size:1.9rem;font-weight:400;letter-spacing:-.055em}
.dialog-head~p{padding:18px 25px 34px;line-height:1.6;font-size:.86rem}.dialog-actions{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #dedede;font-size:.78rem}
.dialog-actions>*{min-height:68px;display:grid;place-items:center;text-align:center}.dialog-actions>*:first-child{border-right:1px solid #dedede}
.dialog-actions>*:hover{background:#f4f4f4;text-decoration:none}
.install-steps{border-top:1px solid var(--hairline)}
.install-steps section{display:grid;grid-template-columns:80px 1fr;gap:18px;padding:22px 25px;border-bottom:1px solid var(--hairline);min-width:0}
.install-steps h3{margin:0;font-size:.8rem;font-weight:400;letter-spacing:.05em}.install-steps p{font-size:.86rem;line-height:1.55}
.crypto-copy{display:block;width:100%;min-height:46px;border-top:1px solid var(--hairline);font-size:.7rem;color:#666;letter-spacing:.02em}.crypto-copy:hover{background:#f4f4f4}[hidden]{display:none!important}
@media(max-width:800px){.pair{gap:16px}.panel-head,.panel-foot{padding:0 14px;font-size:.69rem}.decision{grid-template-columns:100px 155px 1fr;gap:10px}}
@media(max-width:650px){
 .top{height:64px;padding:0 16px;gap:8px;font-size:.64rem}main{padding:0 20px}
 .lookup{grid-template-columns:auto minmax(0,1fr) auto auto;gap:8px;min-height:88px;margin-top:16px}.lookup input{font-size:1.45rem;height:64px}.lookup label,.lookup button{font-size:.68rem}.lookup button{gap:3px}.action-icon{width:18px;height:18px}
 .pair{grid-template-columns:1fr;gap:18px;margin-top:20px}.panel-head,.panel-foot{height:40px;min-height:40px;flex-basis:40px;padding:0 12px;font-size:.68rem}
 .panel-foot{font-size:.64rem}
 .actions{margin-top:18px;grid-template-columns:1fr 1fr}.actions button{min-height:68px;font-size:.73rem}
 .actions button:first-child{grid-column:1/-1;border-bottom:1px solid var(--hairline)}.actions button:nth-child(2){border-left:0}
 .format-foot{align-items:start;font-size:.66rem}.format-foot>span:last-child{flex-direction:column;align-items:end;gap:11px}
 .install-steps section{grid-template-columns:63px 1fr;padding:20px;gap:12px}
 .receipt{margin-top:62px}.receipt summary{font-size:.72rem}.receipt summary span:last-child{font-size:.66rem;gap:9px}
 .decision{grid-template-columns:105px 1fr;gap:2px 12px;padding:14px 0}.decision>span:last-child{grid-column:2}
 .provenance{flex-direction:column;gap:20px}footer{flex-direction:column;align-items:start;padding-bottom:50px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.playhead.running{animation:none;opacity:0}}
