:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#edf3fa;background:#111b29;color-scheme:dark;font-size:16px}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,input,summary{font:inherit}button,summary,input[type=checkbox],input[type=color],input[type=range]{cursor:pointer}button{color:inherit}button:focus-visible,summary:focus-visible,input:focus-visible,canvas:focus-visible{outline:2px solid #7bd9ee;outline-offset:4px}#viewport{position:fixed;inset:0}canvas{display:block;touch-action:none;width:100%;height:100%}.identity{position:fixed;left:50%;top:28px;transform:translateX(-50%);text-align:center;pointer-events:none}.eyebrow{font-size:.75rem;font-weight:650;letter-spacing:.19em;color:#8ea2ba}h1{font-size:1.25rem;letter-spacing:-.03em;margin:5px 0;font-weight:550}.panel{position:fixed;top:24px;width:252px;border:1px solid #344356;border-radius:14px;background:#172332ed;box-shadow:0 12px 38px #0003;backdrop-filter:blur(16px)}.floors{left:24px}.materials{right:24px}.panel summary{padding:17px 18px;display:flex;justify-content:space-between;align-items:center;font-size:.94rem;font-weight:600;list-style:none;user-select:none}.panel summary::-webkit-details-marker{display:none}.chevron{color:#8ba0b8;font-size:1.25rem;line-height:1;transition:transform .15s}.panel:not([open]) .chevron{transform:rotate(-90deg)}.panel-body{padding:0 18px 16px;max-height:calc(100dvh - 180px);overflow:auto;scrollbar-width:thin}.panel-note{font-size:.75rem;color:#93a6ba;margin:0 0 16px;line-height:1.5}.floor-group{border-top:1px solid #304054;padding:13px 0 8px}.floor-title{display:flex;align-items:center;gap:10px;font-weight:600;font-size:.875rem;margin-bottom:9px}.floor-title span{flex:1}.floor-title small{color:#93a6ba;font-size:.75rem;font-weight:400}.layer{display:flex;align-items:center;gap:10px;font-size:.875rem;color:#b9c8da;padding:6px 0 6px 24px;line-height:1.3}input[type=checkbox]{accent-color:#7bd9ee;width:16px;height:16px;flex:none;margin:0}.swatch{width:7px;height:7px;flex:none;border-radius:2px;margin-left:auto}.material-row{border-top:1px solid #304054;padding:15px 0}.material-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:.875rem;font-weight:550}input[type=color]{padding:2px;width:36px;height:28px;background:#243447;border:1px solid #536579;border-radius:6px}.alpha-label{display:flex;justify-content:space-between;align-items:center;font-size:.75rem;color:#93a6ba;margin-top:12px}.alpha-label output{font-variant-numeric:tabular-nums;color:#dbe7f4}input[type=range]{width:100%;accent-color:#7bd9ee;height:20px;margin:6px 0 0}.text-button{border:0;background:transparent;padding:7px 0;color:#9cc8da;font-size:.875rem}.camera-bar{position:fixed;bottom:55px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:8px;background:#172332ee;border:1px solid #344356;border-radius:12px;padding:6px;box-shadow:0 8px 28px #0003}.camera-bar button{border:0;background:transparent;border-radius:7px;padding:10px 13px;font-size:.875rem;white-space:nowrap}.camera-bar button:hover{background:#293c50}.segmented{display:flex;gap:3px}.camera-bar button[aria-pressed=true]{background:#315162;color:#c6f4ff}.divider{width:1px;height:23px;background:#344356}footer{position:fixed;bottom:21px;width:100%;text-align:center;font-size:.75rem;color:#8ea2ba;pointer-events:none}footer b{margin:0 8px;font-weight:400;color:#566d83}.touch-help{display:none}#status{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#172332ee;padding:16px 22px;border:1px solid #344356;border-radius:10px;text-align:center;max-width:85vw}#status:empty{display:none}#status.error{color:#ffb7ab}@media(max-width:850px){.identity{top:19px}.panel{top:86px;width:224px}.floors{left:16px}.materials{right:16px}.panel-body{max-height:calc(100dvh - 240px)}}@media(max-width:560px){.identity{top:16px}.eyebrow{font-size:.7rem}h1{font-size:1.125rem}.panel{width:calc(50% - 14px);top:78px;border-radius:11px}.floors{left:10px}.materials{right:10px}.panel summary{padding:13px 11px;font-size:.875rem}.panel-body{padding:0 10px 10px;max-height:44dvh}.panel-note{font-size:.75rem}.layer{padding-left:10px;gap:6px}.floor-title{gap:6px}.floor-title small{display:none}.material-heading{gap:4px}.camera-bar{bottom:55px;gap:2px;padding:5px}.camera-bar button{font-size:.8125rem;padding:10px 9px}.desktop-help{display:none}.touch-help{display:inline}footer{padding:0 16px;line-height:1.5}.material-row{padding:10px 0}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
