[hidden]{display:none!important}
:root{--hangar-cursor:url("assets/cursor-arrow.png") 6 3,default}
html,body,#viewport canvas,#capture,#retry,.brand,.controls,.controls :is(button,a,input,select,label){cursor:var(--hangar-cursor)}
.identity h1{font-size:calc(clamp(43px,6vw,76px) * var(--ship-name-scale,1))}
.identity h1 .ship-name{font:inherit;letter-spacing:inherit;vertical-align:baseline;border:0;padding:0;margin:0;color:inherit}
.controls>label[for=surface]{margin:17px 0 0}.controls>#surface{margin-bottom:18px}
.controls .ship-picker{font:9px Consolas,monospace;letter-spacing:1.1px;color:var(--teal);margin:0}
#shipSelect{margin-top:8px;margin-bottom:18px;border-color:#92c6bb80;color:var(--cream);background:#243b43;font-weight:600}
.controls{top:110px;max-height:calc(100dvh - 185px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:#526e72 transparent}
.controls{-webkit-user-select:none;user-select:none}
/* Keep the visible rail thin, but give native pointer dragging a full-height hit area. */
.controls input[type=range]{height:24px;margin:2px 0 0;background:transparent;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-appearance:none;appearance:none}
.controls input[type=range]::-webkit-slider-runnable-track{height:3px;border:0;border-radius:2px;background:#3c5357}
.controls input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:12px;height:18px;margin-top:-7.5px;border:0;border-radius:2px;background:var(--teal);cursor:var(--hangar-cursor)}
.controls input[type=range]::-moz-range-track{height:3px;border:0;border-radius:2px;background:#3c5357}
.controls input[type=range]::-moz-range-thumb{width:12px;height:18px;border:0;border-radius:2px;background:var(--teal);cursor:var(--hangar-cursor)}
.separation{display:block;margin-bottom:0}
button:disabled,select:disabled,input:disabled{opacity:.4;cursor:default}
button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid var(--red);outline-offset:3px}
#error{z-index:5}#retry{display:block;margin-top:12px;border:1px solid #dc9d83;background:transparent;padding:7px 12px;color:#ffe2cf;cursor:pointer}
noscript{position:absolute;top:150px;left:25px;background:#522e2c;padding:20px}
@media(max-height:850px) and (min-width:601px){.controls{top:86px;max-height:calc(100dvh - 153px);padding:16px}.controls .panelhead{padding-bottom:11px;margin-bottom:13px}.controls>label[for=surface]{margin-top:10px}#shipSelect{margin-bottom:10px}.controls>#surface{margin-bottom:14px}.controls .toggle{margin:11px 0}.controls .separation{padding-top:12px;margin-top:13px}.controls .viewLabel{margin-top:16px}.controls .download{margin-top:15px}}
@media(max-width:600px){.controls{top:auto;bottom:64px;max-height:46dvh;overflow-y:auto;padding:12px;gap:10px 16px}.controls .panelhead{grid-column:1/-1}.controls .ship-picker{align-self:center}.controls #shipSelect{margin:0}.controls>label[for=surface]{align-self:center;margin:0}.controls>#surface{margin:0}.controls .separation{margin:0;padding:0}.controls .viewLabel{display:none}.identity{top:78px}.identity p{max-width:calc(100vw - 35px)}.controls .download{margin:0}.controls .blendlink{margin:0}.axis{display:none}#error{bottom:calc(46dvh + 80px);left:16px;right:16px;padding:14px;font-size:12px}footer{bottom:16px}.spec{max-width:70%;line-height:1.4}.controls label.rangeLabel{margin:0}}
