:root{color:#f4f7fb;background:#11151b;font-family:system-ui,sans-serif}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}.viewer-shell{width:100%;height:100%;position:relative;overflow:hidden}.viewer-shell canvas{width:100%;height:100%;display:block}.status-panel{z-index:2;background:#11151be6;border:1px solid #ffffff24;border-radius:.6rem;gap:.35rem;max-width:min(28rem,100% - 2rem);padding:.8rem 1rem;display:grid;position:absolute;top:1rem;left:1rem;box-shadow:0 .5rem 2rem #00000040}.status-panel span,.panel-hint,.empty-hint{color:#b9c4d1;overflow-wrap:anywhere}.status-error{border-color:#f08181}.control-panel{flex-wrap:wrap;gap:.45rem;display:flex}.control-panel button{color:#f4f7fb;background:#243242;border:1px solid #4c6278;border-radius:.35rem;padding:.45rem .65rem}.control-panel button:hover:not(:disabled){background:#31506c}.axis-view-overlay{z-index:6;pointer-events:none;width:8.25rem;height:7rem;position:absolute;top:.75rem;right:.75rem}.axis-view-overlay svg{width:100%;height:100%;position:absolute;inset:0}.axis-line{fill:none;stroke-width:3px;stroke-linecap:round}.axis-line-x{stroke:#ff2020}.axis-line-y{stroke:#20df40}.axis-line-z{stroke:#2080ff}.axis-origin{fill:#f4f7fb;stroke:#11151b;stroke-width:2px}.axis-hit{color:#fff;pointer-events:auto;width:1.55rem;height:1.55rem;opacity:var(--axis-opacity,1);border:0;border-radius:50%;padding:0;font-weight:700;line-height:1;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #00000073}.axis-hit:hover:not(:disabled){filter:brightness(1.25);transform:translate(-50%,-50%)scale(1.08)}.axis-hit:disabled{cursor:not-allowed;opacity:.4}.axis-hit-x{background:#e11d2e;top:3.7rem;left:.8rem}.axis-hit-y{background:#16a34a;top:2.65rem;right:.7rem}.axis-hit-z{background:#1d4ed8;top:.35rem;left:5.05rem}.scene-location-marker{color:#10213a;white-space:nowrap;background:#8ab4f8;border:1px solid #8ab4f8;border-radius:999px;padding:.35rem .7rem;transform:translateY(-50%);box-shadow:0 .2rem .8rem #0000004d}.scene-location-marker:hover:not(:disabled),.scene-location-marker.selected{background:#b4d1ff;outline:2px solid #fff}.scene-location-marker:disabled{cursor:not-allowed;opacity:.5}.dev-config-panel{z-index:4;color:#e8eaf0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0a0c14f0;border:1px solid #ffffff29;border-radius:.7rem;width:min(22rem,50% - 1.5rem);max-height:calc(100% - 11rem);padding:.8rem;position:absolute;top:10rem;right:1rem;overflow:auto;box-shadow:0 .8rem 2.8rem #00000073}.dev-config-header{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.7rem;display:flex}.dev-config-header button,.dev-config-collapsed{color:#e8eaf0;background:#ffffff14;border:1px solid #ffffff29;border-radius:.35rem}.dev-config-header button{width:1.8rem;height:1.6rem}.dev-panel-select-label{color:#aeb9c5;margin-bottom:.25rem;font-size:.75rem;display:block}.dev-config-panel>select{color:#f8fafc;background:#000;border:1px solid #ffffff29;border-radius:.35rem;width:100%;height:2rem;margin-bottom:.7rem;padding:0 .45rem}.dev-config-body h3{margin:0 0 .7rem;font-size:.95rem}.dev-config-body section{gap:.6rem;display:grid}.dev-field{color:#b9c4d1;grid-template-columns:1fr 6.5rem;align-items:center;gap:.5rem;font-size:.78rem;display:grid}.dev-field input{color:#f4f7fb;background:#111b25;border:1px solid #4c6278;border-radius:.3rem;width:100%;padding:.3rem .4rem}.dev-vector-grid{background:#ffffff08;border:1px solid #ffffff14;border-radius:.35rem;gap:.35rem;padding:.45rem;display:grid}.dev-config-body section>button{color:#f4f7fb;background:#243242;border:1px solid #4c6278;border-radius:.35rem;padding:.4rem .6rem}.dev-config-footer{border-top:1px solid #ffffff1f;gap:.45rem;margin-top:.8rem;padding-top:.8rem;display:grid}.dev-config-footer button{color:#f4f7fb;background:#243242;border:1px solid #4c6278;border-radius:.35rem;padding:.4rem .6rem}.location-list{gap:.35rem;max-height:10rem;display:grid;overflow:auto}.location-list button{color:#dce7f2;text-align:left;background:#1c2733;border:0;border-radius:.3rem;padding:.45rem}.location-list button.active{background:#31506c}.location-form{border-top:1px solid #ffffff1f;gap:.55rem;padding-top:.75rem;display:grid}.location-form label{color:#b9c4d1;gap:.25rem;font-size:.78rem;display:grid}.location-form input{color:#f4f7fb;background:#111b25;border:1px solid #4c6278;border-radius:.3rem;width:100%;padding:.3rem .4rem}.location-form .danger{color:#f4f7fb;background:#512c2c;border:1px solid #925858;border-radius:.35rem;padding:.4rem .6rem}.dev-checkbox{color:#b9c4d1;align-items:center;gap:.45rem;font-size:.8rem;display:flex}.dev-write-hint{color:#b9c4d1;margin:0;font-size:.78rem;line-height:1.5}.dev-write-hint code{color:#f4c95d}.dev-save-button{background:#5b4218!important;border-color:#b78b31!important}.dev-save-state{color:#f4c95d;min-height:1.2rem;margin:0;font-size:.8rem}.dev-config-collapsed{z-index:4;padding:.45rem .8rem;position:absolute;top:10rem;right:1rem}.measurement-panel{z-index:3;background:#11151beb;border:1px solid #ffffff24;border-radius:.6rem;width:min(24rem,50% - 1.5rem);max-height:min(32rem,100% - 11rem);padding:.8rem;position:absolute;top:10rem;left:1rem;overflow:auto;box-shadow:0 .5rem 2rem #00000040}.measurement-section{gap:.55rem;display:grid}.measurement-section+.measurement-section{border-top:1px solid #ffffff1f;margin-top:.8rem;padding-top:.8rem}.measurement-view-buttons,.measurement-mode-buttons,.measurement-actions{flex-wrap:wrap;gap:.4rem;display:flex}.measurement-panel button{color:#f4f7fb;background:#243242;border:1px solid #4c6278;border-radius:.35rem;padding:.4rem .55rem}.measurement-panel button:hover:not(:disabled),.measurement-panel button.active{background:#31506c;border-color:#72a1c7}.measurement-panel button:disabled{cursor:not-allowed;opacity:.45}.measurement-hint,.measurement-summary{color:#b9c4d1;margin:0;font-size:.78rem;line-height:1.45}.measurement-hint select{color:#f4f7fb;background:#111b25;border:1px solid #4c6278;border-radius:.3rem;width:100%;margin-top:.3rem;padding:.3rem;display:block}.measurement-label{color:#061c1a;white-space:nowrap;pointer-events:none;background:#5eead4;border:1px solid #5eead4;border-radius:.3rem;padding:.25rem .45rem;font-size:.78rem;display:inline-block}.measurement-label.current{background:#f4c95d;border-color:#f4c95d}@media (width<=700px){.axis-view-overlay{top:.75rem;right:.75rem}.dev-config-panel{width:calc(100% - 1rem);max-height:30%;top:auto;bottom:12rem;right:.5rem}.measurement-panel{width:calc(100% - 1rem);max-height:30%;top:8rem;left:.5rem}}
