:root{color-scheme:dark;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background:#080c10;color:#bacbd3;font-synthesis:none;font-size:12px;line-height:1.5}
*{box-sizing:border-box}html,body{margin:0;min-width:0;width:100%;height:100%;overflow:hidden}button,a,summary{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button,a,summary{outline-offset:4px}button:focus-visible,a:focus-visible,summary:focus-visible,canvas:focus-visible{outline:1px solid #8edbdf}a{color:inherit;text-decoration:none}a:hover{color:#d6f2f3}button{font:inherit;color:#8097a3;border:1px solid transparent;background:transparent;padding:7px 10px;border-radius:3px;cursor:pointer;min-height:44px}button:hover{color:#def4f5;background:#112028}button[aria-pressed=true]{color:#b6e7e9;border-color:#284650;background:#102028}button:disabled{opacity:.5;cursor:wait}[hidden]{display:none!important}
.workspace{height:100%;height:100dvh;display:grid;grid-template-rows:auto minmax(120px,1fr) auto;max-width:100%;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}
.toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 20px;border-bottom:1px solid #17232b;flex-wrap:wrap;min-width:0}.identity{display:flex;align-items:center;gap:18px;min-width:0}h1{font-size:12px;font-weight:500;letter-spacing:.04em;color:#c7d8de;margin:0;white-space:nowrap}.back{font-size:11px;color:#6e8794;white-space:nowrap}.controls{display:flex;align-items:center;gap:14px;flex-wrap:wrap;min-width:0}.modes,.view-controls{display:flex;align-items:center;gap:2px}.view-controls{border-left:1px solid #1e2c34;padding-left:12px}.download{font-size:11px;white-space:nowrap;color:#8db7bf;padding:8px 4px;min-height:44px}
.viewport{position:relative;overflow:hidden;min-width:0;min-height:0;background:radial-gradient(ellipse at 48% 50%,#0d1820 0%,#080c10 72%)}canvas{display:block;width:100%;height:100%;touch-action:none;cursor:grab}canvas:active{cursor:grabbing}.hint,.mode-label{position:absolute;pointer-events:none;font-size:10px;color:#536c79;margin:0;bottom:18px;letter-spacing:.01em}.hint{left:20px}.mode-label{right:20px;color:#72969f}.status{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:24px;text-align:center;color:#8ca6b2;pointer-events:none}.status p{margin:0;max-width:380px}.status button{pointer-events:auto;border-color:#29434f}.status.is-error{color:#d8b4a3;background:#080c10ee}.status.is-error button{color:#bad4dc}
.metadata{border-top:1px solid #17232b;padding:12px 20px 14px;display:flex;gap:14px;justify-content:space-between;align-items:flex-start;min-width:0;font-size:10px;color:#728b98}.dataset{margin:0;padding-top:1px;white-space:normal}.metadata details{max-width:min(560px,65%);min-width:0}.metadata summary{list-style:none;cursor:pointer;color:#8ba7b2;text-align:right;white-space:nowrap}.metadata summary::-webkit-details-marker{display:none}.metadata summary:after{content:" +";color:#557984}.metadata details[open] summary:after{content:" −"}.source-content{max-height:33dvh;overflow:auto;overscroll-behavior:contain;padding-top:8px}.source-content p{margin:0 0 8px}.source-links{display:flex;gap:16px;flex-wrap:wrap;color:#89bdc3}.integrity{font-size:9px;color:#516e7a;overflow-wrap:anywhere}.noscript{position:fixed;inset:35% 12%;color:#c0d4dc;background:#080c10;padding:20px;text-align:center}
@media(max-width:620px){.toolbar{padding:13px 14px;gap:12px}.identity{width:100%;justify-content:space-between;gap:10px}.controls{width:100%;gap:8px;justify-content:space-between}.modes button{padding:7px 8px}.view-controls{padding-left:7px;gap:0}.view-controls button{padding:7px 8px}.download{padding:8px 0}.metadata{padding:11px 14px 13px;display:block}.metadata details{max-width:100%;margin-top:8px}.metadata summary{text-align:left}.source-content{max-height:28dvh}.hint{left:14px;right:14px;bottom:13px;font-size:9px}.mode-label{top:14px;bottom:auto;right:14px;font-size:9px}}
@media(max-width:350px){.controls{gap:7px}.modes{flex:1 0 100%}.view-controls{border-left:0;padding-left:0}.download{margin-left:auto}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}

.back{display:inline-flex;align-items:center;min-height:44px}.metadata summary{min-height:44px;display:flex;align-items:center;justify-content:flex-end}@media(max-width:620px){.metadata summary{justify-content:flex-start}}
