*{box-sizing:border-box}body{margin:0;background:#151515;color:#eee;font:14px/1.6 system-ui,sans-serif}header{height:58px;display:flex;justify-content:space-between;padding:16px 24px;gap:16px}a{color:inherit;text-decoration:none}header span{font-size:12px;color:#aaa}main{display:grid;grid-template-columns:290px 1fr;height:calc(100dvh - 58px)}aside{padding:22px;overflow:auto}h1{font-size:25px;line-height:1.4;margin:0 0 24px}label{display:block;margin:16px 0}input[type=range]{width:100%}.open,button{background:#eee;color:#151515;border:0;border-radius:3px;padding:11px 13px;font:inherit;cursor:pointer}.open input{display:block;width:100%;font-size:12px;margin-top:10px}button{margin:5px 0;width:100%;text-align:left}p{color:#aaa;font-size:12px}#status{color:#eee;overflow-wrap:anywhere}#stage{position:relative;min-width:0;overflow:hidden}canvas{display:block;width:100%;height:100%;touch-action:none}.hint{position:absolute;bottom:12px;left:12px;pointer-events:none;color:#222;background:#ffffffe0;padding:5px 9px;font-size:11px}button:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid #f4c400;outline-offset:3px}@media(max-width:700px){main{display:flex;flex-direction:column;height:auto}aside{order:2;padding:20px}#stage{height:60dvh;min-height:320px}header{padding:14px;font-size:12px}}

.model-open{position:relative;min-height:68px;cursor:pointer;touch-action:manipulation}.model-open>span{display:block;font-size:11px;margin-top:3px;opacity:.7}.model-open input[type=file]{position:absolute;inset:0;display:block;width:100%;height:100%;margin:0;opacity:0;font-size:16px;cursor:pointer}.model-open:focus-within{outline:2px solid #f4c400;outline-offset:3px}

@media(max-width:700px){main>.model-open{margin:8px 14px;flex-shrink:0}.model-open>span{overflow-wrap:anywhere}}
