:root{color:#ecf3f4;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--app-bg:#081015;--panel-bg:#0a1217e0;--panel-border:#c1dbdf1f;--panel-strong:#f4f8f8;--panel-muted:#95a8ad;--panel-accent:#d4b86b;--panel-danger:#ff7d7d;--track:#ffffff14;--track-fill:#d4b86b;--button-bg:#ffffff0f;--button-hover:#ffffff1f;--sidebar-gap:16px;--sidebar-width:min(380px, calc(100vw - (2 * var(--sidebar-gap)) - var(--safe-left) - var(--safe-right)));--app-height:100vh;--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--viewer-grid:linear-gradient(#ffffff08 1px, transparent 1px), linear-gradient(90deg, #ffffff08 1px, transparent 1px);background:radial-gradient(circle at 0 0,#58798447,#0000 32%),linear-gradient(#11171b 0%,#091015 100%);font-family:Avenir Next,Segoe UI,sans-serif;font-weight:400;line-height:1.5}@supports (height:100svh){:root{--app-height:100svh}}@supports (height:100dvh){:root{--app-height:100dvh}}*{box-sizing:border-box}html,body,#app{width:100%;min-width:320px;height:100%;margin:0}body{background:var(--app-bg);overflow:hidden}button,input,select{font:inherit}button{border:1px solid var(--panel-border);background:var(--button-bg);color:var(--panel-strong);cursor:pointer;border-radius:999px;padding:.7rem 1rem;transition:background-color .16s,border-color .16s,transform .16s}button:hover{background:var(--button-hover);border-color:#d4b86b80;transform:translateY(-1px)}button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:2px;outline:2px solid #d4b86bcc}input,select{border:1px solid var(--panel-border);width:100%;color:var(--panel-strong);background:#ffffff0a;border-radius:14px;padding:.75rem .85rem}input[type=color]{min-height:3rem;padding:.35rem}input[type=checkbox],input[type=radio]{accent-color:var(--track-fill)}input[type=range]{accent-color:var(--track-fill);padding:0}code{font-family:SF Mono,IBM Plex Mono,monospace}.app-shell{width:100%;height:var(--app-height);position:relative;overflow:hidden}.viewport-shell{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;background:radial-gradient(circle at 20% 20%,#d4b86b14,#0000 24%),radial-gradient(circle at 80% 0,#5785ab2e,#0000 24%),linear-gradient(#070c10f2,#05090c);width:100%;height:100%;position:relative;overflow:hidden}.viewport-shell:before{content:"";background-image:var(--viewer-grid);opacity:.35;pointer-events:none;background-size:48px 48px;position:absolute;inset:0}.viewport-stage,.viewer-canvas{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-user-drag:none;touch-action:none;width:100%;height:100%;position:absolute;inset:0}.viewport-overlay{opacity:0;pointer-events:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#060a0d9e;place-items:center;transition:opacity .18s;display:grid;position:absolute;inset:0}.viewport-overlay.is-active{opacity:1}.overlay-card{text-align:center;background:#091015e0;border:1px solid #d4b86b59;border-radius:20px;padding:1rem 1.35rem;box-shadow:0 24px 90px #00000059}.environment-load-toast{top:calc(var(--sidebar-gap) + var(--safe-top));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);pointer-events:none;opacity:0;z-index:6;background:linear-gradient(#0a121ae0,#0a121a9e);border:1px solid #ffffff1f;border-radius:16px;gap:.38rem;width:min(23rem,100vw - 2rem);padding:.8rem .95rem;transition:opacity .18s,transform .18s;display:grid;position:absolute;left:50%;transform:translate(-50%,-.35rem);box-shadow:0 18px 50px #00000047}.environment-load-toast--visible{opacity:1;transform:translate(-50%)}.environment-load-toast__message{text-overflow:ellipsis;white-space:nowrap;color:#eff4f9f5;min-width:0;font-size:.9rem;font-weight:600;overflow:hidden}.environment-load-toast__meta{letter-spacing:.05em;text-transform:uppercase;color:#f1d58dd1;min-height:1em;font-size:.72rem;font-weight:600}.environment-load-toast__progress{background:#ffffff1a;border-radius:999px;height:.32rem;position:relative;overflow:hidden}.environment-load-toast__progress-fill{border-radius:inherit;background:linear-gradient(90deg,#f1d58dc7,#7ecee5eb);width:0;height:100%;transition:width .14s;box-shadow:0 0 18px #7ecee53d}.environment-load-toast--indeterminate .environment-load-toast__progress-fill{width:36%;animation:1.1s ease-in-out infinite environment-load-toast-indeterminate}.sidebar{top:calc(var(--sidebar-gap) + var(--safe-top));bottom:calc(var(--sidebar-gap) + var(--safe-bottom));left:calc(var(--sidebar-gap) + var(--safe-left));z-index:4;width:var(--sidebar-width);-webkit-backdrop-filter:blur(18px)saturate(120%);backdrop-filter:blur(18px)saturate(120%);background:linear-gradient(#0f181db8,#080e12c7),radial-gradient(circle at 0 0,#d4b86b17,#0000 32%);border:1px solid #c1dbdf29;border-radius:26px;grid-template-rows:auto minmax(0,1fr);gap:.75rem;padding:1rem;display:grid;position:absolute;overflow:hidden;box-shadow:0 24px 80px #00000052,inset 0 1px #ffffff14}.sidebar--collapsed{-webkit-backdrop-filter:none;backdrop-filter:none;width:auto;box-shadow:none;background:0 0;border:0;padding:0;bottom:auto;overflow:visible}.sidebar-header{align-items:center;gap:.75rem;display:flex}.sidebar-fps-slot{flex:auto;justify-content:flex-end;min-width:0;display:flex}.sidebar-toggle-row{flex:none;display:flex}.sidebar-toggle{color:#eff4f9f0;width:2rem;height:2rem;font:inherit;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:linear-gradient(#0a121ae6,#0a121a9e);border:1px solid #ffffff24;border-radius:999px;place-items:center;padding:0;font-size:.92rem;line-height:1;display:grid;box-shadow:0 12px 28px #0000003d}.sidebar-toggle:hover,.sidebar-toggle:focus-visible{border-color:#f1d58d6b}.sidebar-toggle-icon{display:block;transform:translate(.03rem)}.sidebar-performance{text-align:right;color:#ecf3f48f;letter-spacing:.04em;pointer-events:none;-webkit-user-select:none;user-select:none;font-variant-numeric:tabular-nums;text-shadow:0 1px 2px #0006;white-space:nowrap;min-width:0;font-size:.78rem;font-weight:500}.sidebar--collapsed .sidebar-fps-slot{flex:none}.sidebar-scroll{min-height:0;padding-right:.15rem;overflow:auto}.sidebar-inner{flex-direction:column;gap:.9rem;padding:0 0 .2rem;display:flex}.eyebrow{color:var(--panel-accent);letter-spacing:.18em;text-transform:uppercase;margin:0;font-size:.72rem}.hint{color:var(--panel-muted);margin:.25rem 0 0;font-size:.92rem}.sidebar-section{border-top:1px solid #ffffff14;flex-direction:column;gap:.2rem;padding-top:.9rem;display:flex}.sidebar-section:first-child{border-top:0;padding-top:0}.sidebar-section h2{letter-spacing:.04em;text-transform:uppercase;margin:0 0 .75rem;font-size:1rem}.control-group{flex-direction:column;gap:.45rem;margin-bottom:.85rem;display:flex}.radio-group,.color-row span,.radio-row span,.control-group>span,.range-label span,.checkbox-row span,.stat-grid span,.runtime-stack span{color:var(--panel-muted);font-size:.85rem}.color-row,.inline-field,.button-row,.radio-row,.radio-group,.radio-option,.range-label,.checkbox-row{align-items:center;display:flex}.color-row,.inline-field,.button-row,.radio-row,.radio-group{gap:.55rem}.button-row button,.inline-field button{flex:1}.button-row select{flex:1;min-width:0}.color-row{flex-direction:row;justify-content:space-between;margin-bottom:.85rem}.color-row input[type=color]{appearance:none;border:1px solid var(--panel-border);cursor:pointer;background:#ffffff0a;border-radius:999px;width:3.6rem;min-width:3.6rem;height:1.7rem;min-height:1.7rem;padding:0;overflow:hidden}.color-row input[type=color]::-webkit-color-swatch-wrapper{padding:0}.color-row input[type=color]::-webkit-color-swatch{border:0;border-radius:999px}.color-row input[type=color]::-moz-color-swatch{border:0;border-radius:999px}.popup-selector{width:100%;min-width:0}.preset-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.62rem;display:grid}.preset-actions{align-items:center;gap:.5rem;display:inline-flex}.preset-action-button{border-radius:12px;padding:.62rem .9rem}.preset-action-button--icon{border-radius:12px;place-items:center;width:2.65rem;height:2.65rem;padding:0;display:inline-grid}.preset-action-button--icon svg{width:1rem;height:1rem}.popup-selector__trigger{width:100%;min-width:0;color:inherit;background:#060c12b8;border:1px solid #ffffff24;border-radius:12px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.72rem;padding:.42rem .5rem;transition:border-color .16s,background-color .16s,transform .16s;display:grid}.popup-selector__trigger:disabled{cursor:default;opacity:.56;transform:none}.popup-selector__trigger:hover,.popup-selector__trigger:focus-visible,.popup-selector__trigger--active{background:#080e16e0;border-color:#d4b86b61;outline:none}.popup-selector__trigger:hover,.popup-selector__trigger:focus-visible{transform:translateY(-1px)}.popup-selector__trigger--compact{grid-template-columns:minmax(0,1fr) auto}.popup-selector__trigger-thumb{aspect-ratio:2;object-fit:cover;object-position:center;background:#ffffff0f;border-radius:9px;width:4.8rem;box-shadow:inset 0 0 0 1px #ffffff14}.popup-selector__trigger-thumb--square{aspect-ratio:1}.popup-selector__trigger-label{text-align:left;text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.popup-selector__trigger-chevron{color:#eff4f9a8;font-size:.82rem;transition:transform .16s}.popup-selector__trigger--active .popup-selector__trigger-chevron{transform:rotate(180deg)}.popup-selector__popup{z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(#0a121af0,#0a121ad1);border:1px solid #ffffff1f;border-radius:18px;position:fixed;overflow:hidden;box-shadow:0 22px 60px #00000057}.popup-selector__list{max-height:inherit;gap:.32rem;padding:.52rem;display:grid;overflow:auto}.popup-selector__option{width:100%;min-width:0;color:inherit;text-align:left;background:0 0;border:1px solid #0000;border-radius:13px;grid-template-columns:6.4rem minmax(0,1fr);align-items:center;gap:.74rem;padding:.44rem;transition:border-color .16s,background-color .16s,transform .16s;display:grid}.popup-selector__option--square{grid-template-columns:3.9rem minmax(0,1fr)}.popup-selector__option:hover,.popup-selector__option:focus-visible{background:#ffffff0b;border-color:#d4b86b4d;outline:none;transform:translateY(-1px)}.popup-selector__option--selected{background:#7ecee514;border-color:#7ecee55c}.popup-selector__option-thumb{aspect-ratio:2;object-fit:cover;object-position:center;background:#ffffff0f;border-radius:10px;width:100%;box-shadow:inset 0 0 0 1px #ffffff14}.popup-selector__option-thumb--square{aspect-ratio:1}.popup-selector__option-label{letter-spacing:.01em;color:#eff4f9f0;min-width:0;font-size:.85rem;font-weight:600}.preset-dialog-backdrop{z-index:30;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#03070b6b;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.preset-dialog-backdrop[hidden]{display:none}.preset-dialog{background:linear-gradient(#0a121af5,#0a121ad6);border:1px solid #ffffff1f;border-radius:18px;gap:.9rem;width:min(21rem,100vw - 2rem);padding:1rem;display:grid;box-shadow:0 24px 64px #0000005c}.preset-dialog-title{letter-spacing:.03em;color:#eff4f9f5;margin:0;font-size:.92rem;font-weight:700}.preset-dialog-thumbnail{aspect-ratio:1;object-fit:cover;object-position:center;background:#ffffff0f;border-radius:14px;width:6.25rem;box-shadow:inset 0 0 0 1px #ffffff14,0 14px 32px #0000003d}.preset-dialog-field{gap:.38rem;display:grid}.preset-dialog-field-label{letter-spacing:.08em;text-transform:uppercase;color:#d4b86bd6;font-size:.72rem;font-weight:600}.preset-dialog-input{width:100%;min-width:0;color:inherit;font:inherit;background:#060c12d1;border:1px solid #ffffff24;border-radius:12px;padding:.7rem .8rem;font-size:.88rem}.preset-dialog-input:focus-visible{border-color:#d4b86b6b;outline:none}.preset-dialog-actions{justify-content:flex-end;gap:.55rem;display:flex}.preset-dialog-button--secondary{background:#ffffff0a}.radio-group{flex-wrap:wrap}.radio-row{justify-content:space-between;margin-bottom:.85rem}.cavity-row{flex-direction:column;align-items:stretch;gap:.75rem;margin-bottom:.85rem;display:flex}.cavity-toggle-row{justify-content:center;display:flex}.cavity-toggle-button{justify-content:center;align-items:center;width:min(100%,15rem);display:inline-flex}.cavity-toggle-button[aria-pressed=true]{background:var(--panel-accent);border-color:var(--panel-accent);color:#211600;box-shadow:0 10px 26px #d4b86b38}.cavity-toggle-button[aria-pressed=true]:hover{background:#e0c171;border-color:#f1d58d}.cavity-type-row{justify-content:flex-start;margin-bottom:0}.radio-option{gap:.45rem}.radio-option input{width:auto;margin:0}.range-label,.checkbox-row{justify-content:space-between;gap:.75rem}.checkbox-row input{width:auto}.stat-grid,.runtime-stack{gap:.75rem;margin-top:.5rem;display:grid}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-grid div,.runtime-stack div{flex-direction:column;gap:.15rem;display:flex}.stat-grid strong,.runtime-stack strong,.range-label strong{color:var(--panel-strong);font-weight:600}.slider-test-options{flex-direction:column;gap:.35rem;margin-top:.5rem;display:flex}.slider-test-readout{color:var(--panel-muted);margin-top:.5rem;font-size:.85rem}.slider-test-readout strong{color:var(--panel-strong);font-variant-numeric:tabular-nums}@keyframes environment-load-toast-indeterminate{0%{transform:translate(-110%)}55%{transform:translate(130%)}to{transform:translate(130%)}}@media (width<=820px){:root{--sidebar-gap:12px;--sidebar-width:min(360px, calc(100vw - (2 * var(--sidebar-gap)) - var(--safe-left) - var(--safe-right)))}.sidebar{border-radius:22px;padding:.9rem}.sidebar-scroll{padding-right:.05rem}.stat-grid{grid-template-columns:1fr}}@media (width<=560px){.preset-row{grid-template-columns:minmax(0,1fr)}.preset-actions{justify-self:end}.button-row{flex-direction:column}}
