*{box-sizing:border-box}body{margin:0;background:#07171e;color:#f3eddf;font:15px/1.55 system-ui}a{color:#e5c987}header{padding:22px 4vw;border-bottom:1px solid #34464b;display:flex;justify-content:space-between;gap:20px}header strong{font:24px Georgia}main{display:grid;grid-template-columns:minmax(0,1fr) 340px;max-width:1800px;margin:auto}.stage{position:relative;height:calc(100dvh - 87px);min-height:580px;background:radial-gradient(ellipse at center,#17313b,#07171e 75%)}#view{width:100%;height:100%;touch-action:none;display:block}.caption{position:absolute;top:25px;left:28px;pointer-events:none}.caption p{color:#c9ad73;font:11px monospace;letter-spacing:2px}.caption h1{font:clamp(25px,3vw,44px) Georgia;margin:8px 0}.hint{position:absolute;bottom:18px;left:28px;color:#b4c5c8;font-size:12px;pointer-events:none}aside{padding:24px;border-left:1px solid #34464b;max-height:calc(100dvh - 87px);overflow:auto;background:#0b2028}button{font:inherit;color:#f3eddf;background:#152f38;border:1px solid #516568;border-radius:4px;padding:9px 12px;cursor:pointer;min-height:44px}button:hover,button[aria-pressed=true]{border-color:#e5c987;background:#28414a}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #f0d188;outline-offset:3px}button:disabled{opacity:.4;cursor:default}.buttons{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}label{display:block}input[type=range]{width:100%;accent-color:#dec383;min-height:35px}.layers{padding:0;list-style:none}.layers li{display:flex;gap:10px;align-items:center;border-bottom:1px solid #34464b;padding:8px 0}.layers input{width:19px;height:19px;accent-color:#d9bb79}.layers button{flex:1;text-align:left;border:none;background:none;padding:4px 7px}.layers small{color:#c3a976}.note{font-size:12px;color:#b2c4c8}.details{min-height:110px;border-left:2px solid #c3a976;padding-left:14px}h2{font:22px Georgia}#error{position:absolute;top:40%;left:10%;right:10%;padding:24px;background:#152f38}#error[hidden]{display:none}@media(max-width:850px){main{grid-template-columns:1fr}.stage{height:65dvh;min-height:440px}aside{max-height:none;border-left:0;border-top:1px solid #34464b}.caption{left:18px;top:12px}header{font-size:12px}header strong{font-size:19px}}
#load-status{position:absolute;bottom:42px;left:28px;right:20px;color:#c9ad73;font-size:12px;pointer-events:none;margin:0}.buttons a{display:inline-flex;align-items:center;min-height:44px;padding:9px 0}#view:focus-visible{outline:2px solid #e5c987;outline-offset:-4px}
.stage #view{position:absolute;top:100px;height:calc(100% - 150px)}
@media(max-width:850px){.stage #load-status{bottom:70px;left:18px}.stage .hint{left:18px;right:18px;bottom:15px}}
