@font-face{font-family:ViewerTajawal;src:url('./fonts/tajawal-regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:ViewerTajawal;src:url('./fonts/tajawal-medium.ttf') format('truetype');font-style:normal;font-weight:500 800;font-display:swap}
:is(.medical-studio,.experience-studio){--ink:#203438;--subtle:#718285;--accent:#167466;--surface:rgba(255,255,255,.97);--line:#e4e9e8;font-family:ViewerTajawal,Tahoma,sans-serif;background:#f5f7f7;color:var(--ink)}
:is(.medical-studio,.experience-studio) button,:is(.medical-studio,.experience-studio) input,:is(.medical-studio,.experience-studio) select{font-family:inherit}:is(.medical-studio,.experience-studio) button{font-weight:500;transition:background .15s,color .15s}:is(.medical-studio,.experience-studio) button:focus-visible,:is(.medical-studio,.experience-studio) input:focus-visible,:is(.medical-studio,.experience-studio) select:focus-visible{outline:2px solid var(--accent);outline-offset:3px}:is(.medical-studio,.experience-studio) button:disabled{opacity:.38}.studio-icon{display:block;width:22px;height:22px;flex:none}:is(.medical-studio,.experience-studio) [data-icon]{display:inline-flex;align-items:center;justify-content:center}:is(.medical-studio,.experience-studio) .med-layout{display:block;position:relative}:is(.medical-studio,.experience-studio) .stage-card{height:clamp(540px,76vh,960px);position:relative;overflow:hidden;border:1px solid var(--line);border-radius:22px;background:#edf1f2}:is(.medical-studio,.experience-studio) .med-stage{position:absolute;inset:0;height:auto;min-height:0;max-height:none}:is(.medical-studio,.experience-studio) .med-stage::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 50% 40%,transparent 50%,#192f3910);pointer-events:none}:is(.medical-studio,.experience-studio) #viewer-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}:is(.medical-studio,.experience-studio) .canvas-caption{position:absolute;top:25px;inset-inline-start:25px;z-index:2;max-width:calc(100% - 190px);pointer-events:none}.canvas-kicker{font-size:10px;letter-spacing:.2em;color:#7e9194;font-weight:500}:is(.medical-studio,.experience-studio) .canvas-caption h2{font-size:19px;line-height:1.5;font-weight:500;margin:7px 0 3px}.model-view-label{display:flex;align-items:center;gap:7px;font-size:12px;pointer-events:auto;color:var(--subtle)}:is(.medical-studio,.experience-studio) #model-view{background:transparent;border:0;padding:3px 0;font-size:12px;color:var(--accent);border-radius:4px;max-width:165px}:is(.medical-studio,.experience-studio)[data-scene-theme=dark] .canvas-caption h2,:is(.medical-studio,.experience-studio)[data-scene-theme=dark] .canvas-hint{color:#e4efef}:is(.medical-studio,.experience-studio)[data-scene-theme=dark] #model-view{color:#9cdbcb}:is(.medical-studio,.experience-studio)[data-scene-theme=dark] #model-view option{color:#203438;background:white}
:is(.medical-studio,.experience-studio) .viewer-dock{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);z-index:5;display:flex;align-items:center;gap:4px;padding:6px 8px;background:var(--surface);border:1px solid #ffffffb3;border-radius:18px;box-shadow:0 9px 35px #203b431a,0 1px 5px #203b4308;max-width:calc(100% - 24px)}:is(.medical-studio,.experience-studio) .viewer-dock button{background:transparent;border:0;color:#617276;border-radius:12px;padding:8px 9px;min-width:57px;min-height:55px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;font-size:11px;line-height:1}:is(.medical-studio,.experience-studio) .viewer-dock button[aria-expanded=true]{background:#e7f3ee;color:var(--accent)}:is(.medical-studio,.experience-studio) .viewer-dock .dock-icon{min-width:42px;padding:9px;min-height:45px}:is(.medical-studio,.experience-studio) .dock-divider{height:26px;width:1px;flex:none;background:var(--line);margin:0 3px}:is(.medical-studio,.experience-studio) .viewer-dock button:hover{background:#edf4f1;color:var(--accent)}:is(.medical-studio,.experience-studio) .zoom-controls{position:absolute;inset-inline-end:22px;bottom:120px;display:flex;flex-direction:column;z-index:3;background:var(--surface);border:1px solid white;border-radius:13px;box-shadow:0 4px 20px #203b4310;overflow:hidden}:is(.medical-studio,.experience-studio) .zoom-controls button{display:grid;place-items:center;width:42px;height:42px;background:transparent;color:var(--ink);border:0;border-radius:0;padding:8px}:is(.medical-studio,.experience-studio) .zoom-controls button+button{border-top:1px solid var(--line)}:is(.medical-studio,.experience-studio) .canvas-hint{position:absolute;bottom:102px;left:50%;transform:translateX(-50%);font-size:11px;color:#7c8d90;white-space:nowrap;pointer-events:none;display:flex;align-items:center;gap:8px}.canvas-hint span{width:3px;height:3px;border-radius:50%;background:currentColor}:is(.medical-studio,.experience-studio).tools-open .canvas-hint{display:none}:is(.medical-studio,.experience-studio) .stage-empty>span{display:grid;place-items:center;border:1px solid #d5e1df;width:66px;height:66px;border-radius:20px;margin:auto;color:#527b75}:is(.medical-studio,.experience-studio) .stage-empty .studio-icon{width:32px;height:32px}:is(.medical-studio,.experience-studio) .stage-empty p{font-size:14px}
:is(.medical-studio,.experience-studio) .studio-panel{position:absolute;z-index:4;inset:auto auto 110px 20px;width:320px;max-height:calc(100% - 215px);padding:0;border:1px solid #ffffffb3;border-radius:19px;background:var(--surface);box-shadow:0 12px 40px #203b4321;display:flex;flex-direction:column;overflow:hidden;animation:panel-enter .18s ease-out}:is(.medical-studio,.experience-studio) .panel-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px 14px;flex:none;border-bottom:1px solid var(--line)}:is(.medical-studio,.experience-studio) .panel-header h2{font-size:18px;font-weight:500;margin:4px 0 0}.panel-eyebrow{font-size:10px;color:var(--subtle)}:is(.medical-studio,.experience-studio) #tools-close{padding:8px;background:#f1f5f4;color:#5b7072;width:36px;height:36px;border-radius:50%;display:grid;place-items:center}:is(.medical-studio,.experience-studio) #tools-close .studio-icon{width:18px;height:18px}.panel-content{padding:16px 18px;overflow:auto;overscroll-behavior:contain;min-height:0;scrollbar-width:thin;scrollbar-color:#cfdbd7 transparent}:is(.medical-studio,.experience-studio) .parts-search{display:flex;align-items:center;gap:9px;background:#f0f4f3;border:1px solid transparent;border-radius:11px;padding:0 11px;color:#7e9190}.parts-search .studio-icon{width:18px;height:18px}:is(.medical-studio,.experience-studio) #parts-search{min-width:0;width:100%;height:42px;border:0;outline:none;background:transparent;color:var(--ink);font-size:13px}.parts-search:focus-within{border-color:var(--accent)}.parts-meta{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--subtle);margin:16px 0 7px}:is(.medical-studio,.experience-studio) .text-button{padding:5px 0;color:var(--accent);font-size:11px;background:none;border:0}:is(.medical-studio,.experience-studio) .parts-list{max-height:none;margin:0 0 14px;overflow:visible}:is(.medical-studio,.experience-studio) .part-tree,:is(.medical-studio,.experience-studio) .part-children{gap:1px}:is(.medical-studio,.experience-studio) .part-children{margin-block-start:0;margin-inline-start:10px;padding-inline-start:4px;border-color:#e5ece9}:is(.medical-studio,.experience-studio) .part-row{grid-template-columns:26px minmax(0,1fr) 40px;gap:0;border-radius:9px;min-height:43px}:is(.medical-studio,.experience-studio) .part-row button{background:none;color:#536a6e;border:0;padding:8px 6px;border-radius:9px;font-size:12px;line-height:1.5;min-height:40px}:is(.medical-studio,.experience-studio) .part-row button[data-select-part]{text-align:start}:is(.medical-studio,.experience-studio) .part-row button[aria-pressed=true]{background:#e4f1eb;color:#146c5e;font-weight:500}:is(.medical-studio,.experience-studio) .part-toggle{display:grid;place-items:center}:is(.medical-studio,.experience-studio) .part-toggle .studio-icon{width:13px;height:13px;transform:rotate(180deg);transition:transform .15s}:is(.medical-studio,.experience-studio) .part-toggle[aria-expanded=true] .studio-icon{transform:rotate(90deg)}:is(.medical-studio,.experience-studio) .part-spacer{width:26px}:is(.medical-studio,.experience-studio) .part-visibility{display:grid;place-items:center}:is(.medical-studio,.experience-studio) .part-visibility .studio-icon{width:17px;height:17px}:is(.medical-studio,.experience-studio) .part-visibility[data-state=hidden]{color:#b4bfbe}:is(.medical-studio,.experience-studio) .part-visibility[data-state=transparent]{color:#329987}:is(.medical-studio,.experience-studio) .part-row:has([aria-pressed=true]){background:#e4f1eb}:is(.medical-studio,.experience-studio) .selection-card{background:#f2f7f5;border:0;border-radius:12px;padding:13px;margin:12px 0}:is(.medical-studio,.experience-studio) .selection-card h3{margin:0;font-size:13px}:is(.medical-studio,.experience-studio) .selection-card p{font-size:11px;line-height:1.65;color:#738483;margin:6px 0 12px}:is(.medical-studio,.experience-studio) .selection-actions{gap:5px}:is(.medical-studio,.experience-studio) .selection-actions button{font-size:11px;border:1px solid #dce8e2;background:white;color:var(--accent);padding:7px 9px;border-radius:8px}:is(.medical-studio,.experience-studio) .selection-actions button:disabled{display:none}:is(.medical-studio,.experience-studio) .selection-card:has(#part-focus:disabled){display:none}
:is(.medical-studio,.experience-studio) .panel-content select{width:100%;height:43px;background:#f4f7f6;border:1px solid #e4ebe7;border-radius:10px;font-size:13px;color:var(--ink);padding:8px 12px}.field-label{display:block;font-size:12px;color:#536a6e;margin:17px 0 8px}.field-label:first-child{margin-top:0}.field-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px;margin:20px 0 10px}:is(.medical-studio,.experience-studio) .field-heading select{width:auto;max-width:55%;height:38px}:is(.medical-studio,.experience-studio) output{font-size:12px;font-weight:500;color:var(--accent);background:#edf6f0;padding:4px 8px;border-radius:6px}:is(.medical-studio,.experience-studio) input[type=range]{width:100%;height:22px;accent-color:var(--accent);cursor:pointer}:is(.medical-studio,.experience-studio) .check-row{display:flex;align-items:center;gap:9px;font-size:12px;margin:15px 0}:is(.medical-studio,.experience-studio) input[type=checkbox]{accent-color:var(--accent)}.switch-row{display:flex;align-items:center;justify-content:space-between;gap:15px}.switch-row strong{font-weight:500;font-size:14px}.switch-row small{display:block;color:var(--subtle);font-size:11px;margin-top:5px}:is(.medical-studio,.experience-studio) .switch-row input{appearance:none;width:40px;height:24px;background:#dbe4e0;border-radius:20px;position:relative;flex:none;cursor:pointer}:is(.medical-studio,.experience-studio) .switch-row input::before{content:'';position:absolute;top:3px;left:3px;width:18px;height:18px;background:white;border-radius:50%;box-shadow:0 1px 4px #0002;transition:transform .15s}:is(.medical-studio,.experience-studio) .switch-row input:checked{background:var(--accent)}:is(.medical-studio,.experience-studio) .switch-row input:checked::before{transform:translateX(16px)}.panel-note{font-size:12px;line-height:1.8;color:var(--subtle);margin:15px 0}:is(.medical-studio,.experience-studio) .secondary-tools{margin-top:18px;border-top:1px solid var(--line)}:is(.medical-studio,.experience-studio) summary{font-size:12px;font-weight:500;padding:16px 0;color:#65797a}:is(.medical-studio,.experience-studio) .visibility-actions{display:flex;gap:5px}:is(.medical-studio,.experience-studio) .visibility-actions button{display:flex;align-items:center;justify-content:center;gap:5px;flex:1;font-size:11px;padding:9px 4px;background:#f0f5f2;color:var(--ink)}:is(.medical-studio,.experience-studio) .visibility-actions .studio-icon{width:16px;height:16px}:is(.medical-studio,.experience-studio) .camera-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}:is(.medical-studio,.experience-studio) .camera-grid button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;min-height:75px;background:#f0f5f3;color:#4b696c;font-size:12px;border:1px solid #e2eae6;border-radius:12px}:is(.medical-studio,.experience-studio) .selection-peek{position:absolute;bottom:104px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:6px;padding:5px 7px 5px 12px;max-width:calc(100% - 100px);background:white;box-shadow:0 4px 22px #203b4314;border-radius:12px;z-index:3}.selection-peek>span{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:is(.medical-studio,.experience-studio) .selection-peek button{padding:7px;background:#f0f6f2;color:var(--accent);border-radius:8px}.selection-peek .studio-icon{width:17px;height:17px}:is(.medical-studio,.experience-studio).tools-open .selection-peek{display:none}:is(.medical-studio,.experience-studio) .panel-handle{display:none}
:is(.medical-studio,.experience-studio).medical-embedded{padding:0}:is(.medical-studio,.experience-studio).medical-embedded main{height:100dvh;display:flex}:is(.medical-studio,.experience-studio).medical-embedded .med-layout{height:100%;flex:1}:is(.medical-studio,.experience-studio).medical-embedded .stage-card{height:100%;border:0;border-radius:0;display:block}:is(.medical-studio,.experience-studio).medical-embedded .med-stage{height:auto;min-height:0;flex:none}:is(.medical-studio,.experience-studio).medical-embedded #view-tools{display:flex}:is(.medical-studio,.experience-studio).medical-embedded #view-fullscreen{display:none}:is(.medical-studio,.experience-studio).medical-embedded .studio-panel{display:flex;inset:auto auto 110px 20px}:is(.medical-studio,.experience-studio) .stage-card.expanded{height:auto;position:fixed;inset:0;border:0;border-radius:0}:is(.medical-studio,.experience-studio) .stage-card.expanded .med-stage{height:auto;min-height:0;flex:none}:is(.medical-studio,.experience-studio) [hidden]{display:none!important}
@keyframes panel-enter{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:600px){:is(.medical-studio,.experience-studio) .stage-card{height:75dvh;min-height:500px;border-radius:16px}:is(.medical-studio,.experience-studio).medical-embedded .stage-card{min-height:0}:is(.medical-studio,.experience-studio) .canvas-caption{top:22px;inset-inline-start:20px;max-width:calc(100% - 160px)}:is(.medical-studio,.experience-studio) .canvas-caption h2{font-size:15px;line-height:1.5;margin:6px 0}.canvas-kicker{font-size:9px;letter-spacing:.13em}:is(.medical-studio,.experience-studio) .model-view-label{font-size:0}:is(.medical-studio,.experience-studio) #model-view{font-size:11px;max-width:155px}:is(.medical-studio,.experience-studio) .viewer-dock{bottom:calc(18px + env(safe-area-inset-bottom,0px));padding:5px;gap:2px;border-radius:17px}:is(.medical-studio,.experience-studio) .viewer-dock button{min-width:52px;padding:7px 8px;font-size:10px;min-height:51px;gap:5px}:is(.medical-studio,.experience-studio) .viewer-dock .dock-icon{min-width:36px;padding:7px}:is(.medical-studio,.experience-studio) .viewer-dock .studio-icon{width:21px;height:21px}:is(.medical-studio,.experience-studio) .canvas-hint{bottom:88px;font-size:10px}:is(.medical-studio,.experience-studio) .zoom-controls{bottom:111px;inset-inline-end:18px}:is(.medical-studio,.experience-studio) .zoom-controls button{width:38px;height:40px}:is(.medical-studio,.experience-studio) .studio-panel,:is(.medical-studio,.experience-studio).medical-embedded .studio-panel{inset:auto 10px calc(92px + env(safe-area-inset-bottom,0px)) 10px;width:auto;height:min(43dvh,370px);max-height:calc(100% - 200px);border-radius:20px}:is(.medical-studio,.experience-studio) .panel-handle{display:block;width:32px;height:3px;flex:none;border-radius:8px;background:#d2ddda;margin:8px auto 0}:is(.medical-studio,.experience-studio) .panel-header{padding:9px 17px 11px}:is(.medical-studio,.experience-studio) .panel-header h2{font-size:16px;margin:0}:is(.medical-studio,.experience-studio) .panel-eyebrow{display:none}:is(.medical-studio,.experience-studio) #tools-close{width:30px;height:30px;padding:6px}:is(.medical-studio,.experience-studio) .panel-content{padding:12px 17px}:is(.medical-studio,.experience-studio).tools-open .med-stage{bottom:calc(min(43dvh,370px) + 97px + env(safe-area-inset-bottom,0px))}:is(.medical-studio,.experience-studio).tools-open .zoom-controls{display:none}:is(.medical-studio,.experience-studio) .selection-peek{bottom:96px}:is(.medical-studio,.experience-studio) .parts-meta{margin-top:12px}:is(.medical-studio,.experience-studio) .selection-peek>span{max-width:100px}}
@media(prefers-reduced-motion:reduce){:is(.medical-studio,.experience-studio) *{animation:none!important;transition:none!important}}

/* Static atmosphere layers: no textures, extra draw calls, or animation. */
:is(.medical-studio,.experience-studio){--atmosphere-clean:var(--viewer-atmosphere)}
:is(.medical-studio,.experience-studio) .med-stage,:is(.medical-studio,.experience-studio) [data-theme=clean]{background:var(--atmosphere-clean)}
:is(.medical-studio,.experience-studio){--atmosphere-dark:radial-gradient(ellipse at 52% 88%,#409b9c40,transparent 40%),radial-gradient(ellipse at 25% 24%,#234d68,transparent 62%),linear-gradient(180deg,#091624,#163947 62%,#0b202d)}
:is(.medical-studio,.experience-studio) .med-stage[data-scene-theme=dark],:is(.medical-studio,.experience-studio) [data-theme=dark]{background:var(--atmosphere-dark)}
:is(.medical-studio,.experience-studio){--atmosphere-soft:radial-gradient(ellipse at 72% 25%,#ffffffb0,transparent 38%),radial-gradient(ellipse at 22% 48%,#effaffb0,transparent 45%),linear-gradient(180deg,#74b8e5,#c4e7fa 60%,#edf7ff 78%,#a1cce5)}
:is(.medical-studio,.experience-studio) .med-stage[data-scene-theme=soft],:is(.medical-studio,.experience-studio) [data-theme=soft]{background:var(--atmosphere-soft)}
:is(.medical-studio,.experience-studio) .stage-empty{z-index:3;inset:20% 16px 25%;justify-items:center;align-content:center;gap:12px;pointer-events:none}
:is(.medical-studio,.experience-studio) .stage-empty p{max-width:360px;padding:12px 18px;border-radius:14px;background:#ffffffed;color:var(--ink);line-height:1.7;margin:0}
:is(.medical-studio,.experience-studio) .stage-empty>span{color:#638d91}
:is(.medical-studio,.experience-studio) #load-progress{width:min(280px,80vw);padding:14px 18px;background:#ffffffed;border-radius:14px;color:var(--ink)}
:is(.medical-studio,.experience-studio) #load-bar{display:block;width:100%;height:8px;accent-color:var(--accent);direction:ltr}
:is(.medical-studio,.experience-studio) #load-percent{display:block;font-size:13px;margin-top:10px;font-variant-numeric:tabular-nums}
:is(.medical-studio,.experience-studio) #viewer-retry{pointer-events:auto;min-height:44px;background:var(--accent);color:white}

:is(.medical-studio,.experience-studio) .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
body:is(.medical-studio,.experience-studio) .med-header{position:relative!important;inset:auto!important;transform:none!important;width:100%!important;margin-bottom:16px;color:#f3fbe8}
:is(.medical-studio,.experience-studio) .med-header h1{font-size:18px;margin:0;white-space:normal}
:is(.medical-studio,.experience-studio) .med-header a{display:grid;place-items:center;width:44px;height:44px;padding:8px}
:is(.medical-studio,.experience-studio):dir(rtl) .med-header a svg{transform:scaleX(-1)}
:is(.medical-studio,.experience-studio) .viewer-dock button{min-width:44px;min-height:44px;padding:10px}
:is(.medical-studio,.experience-studio) .viewer-dock .dock-icon{min-width:44px}
:is(.medical-studio,.experience-studio) .panel-header h2{margin:0;display:flex;align-items:center}
:is(.medical-studio,.experience-studio) .selection-actions button,:is(.medical-studio,.experience-studio) .text-button,:is(.medical-studio,.experience-studio) #viewer-retry{min-width:44px;min-height:44px;display:grid;place-items:center}
:is(.medical-studio,.experience-studio) .atmosphere-options{display:flex;gap:10px;margin:18px 0}
:is(.medical-studio,.experience-studio) .atmosphere-swatch{flex:1;min-width:44px;height:58px;border:2px solid transparent;border-radius:12px;position:relative}
:is(.medical-studio,.experience-studio) .atmosphere-swatch[aria-pressed=true]{border-color:var(--accent);outline:2px solid white;outline-offset:-5px}
:is(.medical-studio,.experience-studio) .atmosphere-swatch[aria-pressed=true]::after{content:'✓';position:absolute;inset-inline-end:7px;bottom:5px;width:20px;height:20px;border-radius:50%;background:#fff;color:#167466;display:grid;place-items:center;font:14px Arial}
:is(.medical-studio,.experience-studio) .icon-field{margin-top:12px;margin-bottom:6px}
:is(.medical-studio,.experience-studio) .icon-field .studio-icon{width:19px;height:19px}
:is(.medical-studio,.experience-studio) .part-row button[data-select-part]{text-align:start}
:is(.medical-studio,.experience-studio):dir(ltr) .part-toggle .studio-icon{transform:rotate(0)}
:is(.medical-studio,.experience-studio):dir(ltr) .part-toggle[aria-expanded=true] .studio-icon{transform:rotate(90deg)}
:is(.medical-studio,.experience-studio) .canvas-caption{max-width:calc(100% - 40px)}

:is(.medical-studio,.experience-studio).medical-embedded .med-header{display:none!important}

:is(.medical-studio,.experience-studio) .icon-options{display:flex;gap:8px}:is(.medical-studio,.experience-studio) .icon-options button{flex:1;display:grid;place-items:center;min-height:44px;background:#f0f5f3;color:#526f70;border:1px solid #dfe8e4;border-radius:10px}:is(.medical-studio,.experience-studio) .icon-options button[aria-pressed=true]{background:#e4f1eb;color:var(--accent);border-color:var(--accent)}
:is(.medical-studio,.experience-studio) summary .studio-icon{display:inline-block;vertical-align:middle}

/* Settings has its own left-corner control, aligned with the bottom dock. */
:is(.medical-studio,.experience-studio) .viewer-settings{position:absolute;left:20px;bottom:22px;z-index:5;display:grid;place-items:center;width:56px;height:58px;padding:10px;background:var(--surface);color:#617276;border:1px solid #ffffffb3;border-radius:18px;box-shadow:0 9px 35px #203b431a,0 1px 5px #203b4308}
:is(.medical-studio,.experience-studio) .viewer-settings:hover,:is(.medical-studio,.experience-studio) .viewer-settings[aria-expanded=true]{background:#e7f3ee;color:var(--accent)}
@media(max-width:600px){:is(.medical-studio,.experience-studio) .viewer-settings{left:18px;bottom:calc(18px + env(safe-area-inset-bottom,0px));width:54px;height:56px;border-radius:17px}:is(.medical-studio,.experience-studio) .viewer-dock{left:auto;right:18px;transform:none}}
@media(max-width:360px){:is(.medical-studio,.experience-studio) .viewer-settings{left:12px;width:44px}:is(.medical-studio,.experience-studio) .viewer-dock{right:12px;gap:0;padding-inline:4px}:is(.medical-studio,.experience-studio) .viewer-dock button,:is(.medical-studio,.experience-studio) .viewer-dock .dock-icon{min-width:40px;padding-inline:8px}:is(.medical-studio,.experience-studio) .dock-divider{margin-inline:2px}}

:is(.medical-studio,.experience-studio) .rotation-controls{position:absolute;top:22px;right:22px;z-index:5;display:flex;direction:ltr;gap:3px;padding:5px;border:1px solid #ffffffb3;border-radius:16px;background:var(--surface);box-shadow:0 4px 20px #203b4310}
:is(.medical-studio,.experience-studio) .rotation-controls button{display:grid;place-items:center;width:44px;height:44px;padding:10px;border:1px solid transparent;border-radius:11px;background:transparent;color:#617276}
:is(.medical-studio,.experience-studio) .rotation-controls button[aria-pressed=true]{background:#e7f3ee;color:var(--accent);border-color:#b4d9ce}
:is(.medical-studio,.experience-studio) .rotation-controls[data-paused=true] button[aria-pressed=true]{border-style:dashed}
:is(.medical-studio,.experience-studio) .canvas-caption{left:22px;right:auto;max-width:calc(100% - 200px)}
@media(max-width:600px){:is(.medical-studio,.experience-studio) .rotation-controls{top:18px;right:18px}:is(.medical-studio,.experience-studio) .canvas-caption{left:18px;max-width:calc(100% - 190px)}}

/* Shared viewer composition: one atmosphere, dock, settings panel and motion system.
   Scientific colours remain on the subject, never grayscale-filtered. */
:root{--viewer-atmosphere:radial-gradient(ellipse at 50% 88%,#73797e24,transparent 40%),radial-gradient(ellipse at 28% 18%,#ffffffed,transparent 60%),linear-gradient(180deg,#d5d8db,#eef0f1 57%,#c5c9cc);--viewer-enter:220ms;--viewer-ease:cubic-bezier(.2,.8,.2,1)}
.experience-studio.lm-tool{padding:0;border:0;box-shadow:none;background:transparent}
.experience-studio{width:100%;max-width:100%;min-width:0;box-sizing:border-box}
.experience-studio .experience-stage{isolation:isolate;container-type:inline-size;width:100%;max-width:100%;min-width:0;box-sizing:border-box;min-height:440px;height:clamp(440px,72dvh,900px);margin:0;background:var(--viewer-atmosphere);animation:viewer-enter var(--viewer-enter) var(--viewer-ease)}
.experience-studio .experience-viewport{position:absolute;inset:68px 16px 124px;display:grid;place-items:center;min-width:0;min-height:0;overflow:hidden;transition:inset 220ms var(--viewer-ease)}
.experience-studio .experience-stage.tools-open .experience-viewport{inset-inline-start:16px}
.experience-studio .experience-viewport>svg,.experience-studio .experience-viewport>.lm-geometry-frame,.experience-studio .experience-viewport>.lm-tool-stage-card,.experience-studio .experience-viewport>.lm-tool-plot-frame,.experience-studio .experience-viewport>.lm-tool-molecule-stage,.experience-studio .experience-viewport>.lm-tool-diagram{width:100%;height:100%;max-height:none;min-height:0;box-sizing:border-box;margin:0;border:0;border-radius:0;background:transparent}
.experience-studio .experience-viewport>.lm-tool-diagram{display:flex;flex-direction:column;justify-content:center;align-items:stretch;overflow:hidden}
.experience-studio .experience-viewport>.lm-tool-diagram>.lm-tool-note{flex:none;margin:0 8px 6px;text-align:center}
.experience-studio .experience-viewport>.lm-tool-diagram>.lm-tool-solution-svg{width:100%;height:auto;max-height:calc(100% - 2.6rem)}
.experience-studio .experience-viewport svg{max-height:100%;background:transparent}
.experience-studio .experience-viewport canvas{max-width:100%;max-height:100%;background:transparent}
.experience-studio .experience-viewport .lm-geometry-canvas{width:100%;height:100%}
.experience-studio .experience-viewport .lm-geometry-svg{width:100%;height:100%;max-height:none}
.experience-studio .experience-viewport .lm-tool-stage{display:grid;place-items:center;height:100%;min-height:0;padding:0}
.experience-studio .experience-viewport .lm-tool-canvas-caption{display:none}
.experience-studio .experience-viewport .lm-tool-stage-card{padding:0}
.experience-studio .experience-native-actions{display:contents!important}
.experience-studio .viewer-dock{max-width:calc(100% - 112px);overflow-x:auto;scrollbar-width:thin;justify-content:flex-start}
.experience-studio .viewer-dock button{flex:none;min-width:44px;min-height:44px;margin:0;transition:background var(--viewer-enter) var(--viewer-ease),color var(--viewer-enter) var(--viewer-ease),transform var(--viewer-enter) var(--viewer-ease)}
.experience-studio .viewer-dock button:active,.experience-studio .viewer-settings:active{transform:scale(.94)}
.experience-studio .viewer-dock button[aria-pressed=true]{background:#e4f1eb;color:var(--accent);border-color:var(--accent)}
.experience-studio .canvas-caption{left:auto;inset-inline-start:20px;max-width:calc(100% - 44px);top:16px}
.experience-studio .canvas-caption h3{font-size:clamp(14px,2vw,18px);line-height:1.5;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.experience-studio .experience-readout{position:absolute;inset-inline:18px;bottom:90px;max-height:3.6em;overflow:auto;text-align:center;direction:ltr;unicode-bidi:isolate;font-size:clamp(1.15rem,2.6cqi,2.25rem);line-height:1.45;pointer-events:auto}
.experience-studio .experience-readout .experience-observation{font-size:1em;font-weight:650;color:var(--ink)}
.experience-studio[dir=rtl] .experience-stage:not(.tools-open):has(.zoom-controls) .experience-readout{left:76px;right:18px}
.experience-studio[dir=ltr] .experience-stage:not(.tools-open):has(.zoom-controls) .experience-readout{left:18px;right:76px}
.experience-studio .experience-readout>*{margin:0;box-shadow:none;background:transparent;border:0;padding:0;min-height:0}
.experience-studio .experience-readout .lm-geometry-readout{justify-content:center;gap:8px}
.experience-studio .experience-readout .lm-tool-chip{padding:2px 6px;background:#ffffffa8;font-size:12px}
.experience-studio .experience-settings-panel{display:flex;inset:auto auto 96px 16px;inset-inline-start:16px;inset-inline-end:auto;max-height:calc(100% - 160px);animation:none}
.experience-studio .experience-stage:not(.tools-open) .experience-settings-panel{pointer-events:none}
.experience-studio .experience-notes.is-secondary{margin-top:16px;border-top:1px solid var(--line);padding-top:12px}
.experience-studio .experience-settings-panel .panel-header h2{font-size:14px;display:flex;align-items:center;gap:8px}
.experience-studio .experience-settings-panel .panel-header button{border:0;border-radius:50%;min-width:44px;min-height:44px;background:transparent;color:var(--ink)}
.experience-studio .experience-settings-panel .panel-content>div,.experience-studio .experience-settings-panel .panel-content>form{margin:0}
.experience-studio .experience-settings-panel .lm-geometry-controls{display:grid;grid-template-columns:1fr;margin:0}
.lm-geometry-control>.answer-select{grid-column:1/-1;width:100%}
.experience-studio .experience-settings-panel .lm-tool-explore,.experience-studio .experience-settings-panel .lm-school-controls,.experience-studio .experience-settings-panel .lm-tool-molecule-controls{background:transparent;border:0;padding:0;margin:0}
.experience-studio .experience-settings-panel input:not([type=range]):not([type=checkbox]),.experience-studio .experience-settings-panel textarea{box-sizing:border-box;width:100%;min-height:44px;font:inherit;color:var(--ink);background:#f4f7f6;border:1px solid var(--line);border-radius:10px;padding:8px}
.experience-studio.lm-tool{--accent:#167466}
.experience-studio.lm-tool .experience-settings-panel input:is([type=number],[inputmode=decimal],[inputmode=numeric]){text-align:center;font-size:20px;font-weight:600;font-variant-numeric:tabular-nums;direction:ltr}
.experience-studio .experience-settings-panel input[type=range]{accent-color:#167466;min-height:30px}
.experience-studio .simulation-question [role=alert]{font-size:13px;line-height:1.6;color:var(--ink);padding:12px;background:#f4f7f6;border:1px solid var(--line);border-radius:10px}
.experience-studio.lm-tool .lm-school-scene :is(circle,rect,text){transition:cx 120ms linear,cy 120ms linear,x 120ms linear,y 120ms linear,fill 180ms ease-out}
.experience-studio .experience-settings-panel label{font-size:13px}
.experience-studio .experience-settings-panel .lm-tool-explore-heading,.experience-studio .experience-settings-panel .lm-tool-explore-note{display:none}
.experience-studio .experience-settings-panel .lm-tool-step{max-width:100%;overflow:auto}
.experience-studio .experience-stage>.stage-empty{position:absolute;inset:25% 16px 30%;display:grid;place-items:center;align-content:center;gap:12px;z-index:6}
.experience-studio .viewer-loading progress{width:min(260px,60vw);height:5px;accent-color:var(--accent)}
.experience-studio .viewer-loading>span{width:54px;height:54px}
.experience-studio .viewer-loading p{font-size:12px;padding:6px 12px;margin:0}
.experience-studio .viewer-feedback{position:absolute;top:16px;inset-inline-end:16px;z-index:3;display:flex;align-items:center;gap:6px;max-width:calc(100% - 36px);padding:6px 10px;border-radius:12px;background:var(--surface);color:var(--accent);pointer-events:none;font-size:12px;box-shadow:0 4px 20px #203b4310}
.experience-studio .viewer-feedback .studio-icon{width:18px;height:18px}
.experience-studio .viewer-feedback:empty,.experience-studio [hidden]{display:none!important}
.experience-studio .experience-scene{text-align:center;direction:ltr}
.experience-studio .experience-scene text{font:16px system-ui,sans-serif;fill:var(--ink);direction:ltr;unicode-bidi:isolate}
.experience-studio .experience-scene circle[role=button]{cursor:pointer;transition:fill var(--viewer-enter),r var(--viewer-enter)}
.experience-studio .experience-scene circle[role=button]:focus{stroke:var(--accent);stroke-width:3px;outline:none}
.experience-studio .experience-zoom-subject{transform-origin:center;transition:transform var(--viewer-enter) var(--viewer-ease)}
.experience-studio .experience-viewport.is-updated{animation:viewer-update 240ms ease-out}
.experience-studio .experience-stage.is-fullscreen{height:100dvh;border-radius:0}
.simulation-host{background:#f5f7f7!important;color:#203438!important}
.simulation-host main{max-width:none;padding:12px!important}
.simulation-host main>header{display:none}
.simulation-host .experience-stage{height:calc(100dvh - 24px);min-height:440px;border-radius:18px}
.simulation-host .lm-tool{margin:0}
.library-player{background:#f5f7f7!important}
.library-player .library-close{position:absolute;z-index:10;inset-inline-end:12px;top:10px;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;padding:8px;margin:0;background:#ffffffeb;color:#203438;box-shadow:0 4px 20px #203b4310}
.library-player iframe{height:100%;flex:1;min-height:0}
.library-player .viewer-loading{position:absolute;inset:0;z-index:8;display:grid;place-items:center;align-content:center;gap:12px;background:var(--viewer-atmosphere)}
.library-player .studio-icon{width:22px;height:22px}
@keyframes viewer-enter{from{opacity:0;transform:translateY(6px) scale(.99)}to{opacity:1;transform:none}}
.simulation-library .studio-icon{width:24px;height:24px;vertical-align:middle}
.simulation-library h4{display:flex;align-items:center;gap:8px}
.library-player .viewer-loading progress{width:min(260px,60vw);height:5px;accent-color:#167466}
.library-player .viewer-loading>span .studio-icon{width:54px;height:54px}
.medical-studio.medical-embedded .canvas-caption{inset-inline-start:72px}
.experience-studio .lm-school-scene :is(circle,rect,line,polygon),.experience-studio .lm-geometry-svg :is(circle,rect,line,polygon){transition:fill 180ms ease-out,stroke 180ms ease-out}
.simulation-library .library-search-label{position:relative}
.simulation-library .library-search-icon{position:absolute;inset-inline-start:12px;top:12px;pointer-events:none}
.simulation-library .library-search-label input{padding-inline-start:44px}
.lm-medical-player .medical-viewer-header{position:absolute;inset-inline-start:12px;top:12px;z-index:10;background:transparent;border:0;padding:0;height:auto}
.lm-medical-player .medical-viewer-header button{background:#ffffffeb;color:#203438;border:0;border-radius:50%;width:44px;height:44px;display:grid;place-items:center;padding:8px;cursor:pointer}
.lm-medical-player:dir(rtl) .medical-viewer-header button svg{transform:scaleX(-1)}
.experience-studio .experience-viewport .lm-tool-stage-card::after{display:none}
.experience-studio .experience-viewport .lm-tool-stage-svg{width:100%;height:100%;max-height:none}
.experience-studio .experience-viewport .lm-tool-stage-card iframe{height:100%;width:100%}
.experience-studio.lm-tool-periodic{display:flex;flex-direction:column;align-items:stretch}
.experience-studio .experience-viewport:has(>.lm-atom-visual),.experience-studio .experience-viewport:has(>.lm-atom-layout){place-items:stretch;overflow:hidden}
.experience-studio .experience-viewport>.lm-atom-layout,.experience-studio .experience-viewport>.lm-atom-visual{width:100%;height:100%;min-height:0;max-height:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;margin:0;padding:0;border:0;background:transparent;box-sizing:border-box}
.experience-studio .lm-atom-scene{flex:none;width:min(100%,280px);max-width:280px;min-height:0;height:auto;aspect-ratio:1;overflow:visible}
.experience-studio .lm-atom-caption,.experience-studio .lm-atom-shells{flex:none;margin:4px 0}
.experience-studio>.lm-atom-information{flex:none;width:100%;min-width:0;min-height:0;max-height:none;margin:12px 0 0;overflow:visible}
.lm-tool[data-viewer-pending]{visibility:hidden}
.simulation-host .simulation-boot{position:fixed;inset:12px;z-index:9;border-radius:18px;display:grid;place-items:center;align-content:center;gap:12px;background:var(--viewer-atmosphere)}
.experience-studio[data-experience-id="school.balance_water"] .lm-school-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
:is(.medical-studio,.experience-studio) .med-stage{transition:inset 220ms var(--viewer-ease)}
.simulation-host .simulation-boot progress{width:min(260px,60vw);height:5px;accent-color:#167466}
.simulation-host[data-simulation-loading] .simulation-question{visibility:hidden}
.experience-studio{position:relative;container-type:inline-size;width:100%;max-width:100%;min-width:0;box-sizing:border-box}
.experience-studio>.viewer-loading{position:absolute;inset:0;z-index:8;display:grid;place-items:center;align-content:center;gap:12px;min-height:320px;background:var(--viewer-atmosphere)}
@keyframes viewer-update{from{opacity:.72}to{opacity:1}}
@media(max-width:600px){.experience-studio .experience-stage{min-height:440px;height:72dvh}.experience-studio .experience-viewport{inset:58px 12px 130px}.experience-studio .experience-settings-panel{inset:auto 10px 88px;width:auto;max-height:calc(100% - 150px);height:auto}.experience-studio .experience-readout{bottom:86px}.simulation-host .experience-stage{height:calc(100dvh - 24px)}}
@media(prefers-reduced-motion:reduce){.experience-studio *{animation:none!important;transition:none!important}}
@media(max-width:600px){.experience-studio .experience-stage.tools-open .experience-viewport{inset-inline-start:12px;bottom:calc(130px + min(34dvh,280px))}.experience-studio .experience-settings-panel{inset-inline:10px;height:min(34dvh,280px)}.experience-studio .experience-stage.tools-open .experience-readout{bottom:calc(96px + min(34dvh,280px));max-height:3.2em}.experience-studio .experience-stage.tools-open .zoom-controls{display:none}}
@container(max-width:600px){.experience-studio .experience-stage.tools-open{height:max(72dvh,calc(368px + min(34dvh,280px)))}.experience-studio .experience-stage.tools-open .experience-viewport{inset-inline-start:12px;bottom:calc(130px + min(34dvh,280px))}.experience-studio .experience-settings-panel{inset-inline:10px;height:min(34dvh,280px)}.experience-studio .experience-stage.tools-open .experience-readout{bottom:calc(96px + min(34dvh,280px));max-height:3.2em}.experience-studio .experience-stage.tools-open .zoom-controls{display:none}.simulation-host .experience-stage.tools-open{height:calc(100dvh - 24px)}}
.experience-studio .experience-stage:fullscreen{height:100dvh;min-height:0;border-radius:0}
.experience-studio .viewer-feedback{top:auto;bottom:156px;max-width:min(280px,calc(100% - 36px))}
@container(max-width:600px){.experience-studio .experience-stage.tools-open .viewer-feedback{bottom:calc(150px + min(34dvh,280px))}}
/* Chemistry uses the same viewer/drawer/dock. These rules only arrange its content. */
.lm-chemistry-scene{position:relative;width:100%;height:100%;min-height:0;min-width:0;display:grid;place-items:center;touch-action:pan-y}
.lm-chemistry-scene>svg{position:absolute;inset:0;width:100%;height:100%;max-height:100%;overflow:visible}
.lm-chemistry-materials{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.lm-chemistry-material.dock-icon{width:100%;height:48px;display:flex;gap:3px;flex-direction:column;font-size:11px}
.lm-chemistry-material .studio-icon{width:18px;height:18px}
.lm-chemistry-material[aria-pressed=true]{background:#d8eee7;outline:2px solid #167466}
.lm-chemistry-table{width:100%;border-collapse:collapse;font-size:12px;margin-block:8px}
.lm-chemistry-table th,.lm-chemistry-table td{padding:8px 4px;border-bottom:1px solid #d8e3df;text-align:start;vertical-align:middle;overflow-wrap:anywhere}
.lm-chemistry-table th{font-weight:600}
.lm-chemistry-table select{width:100%;min-height:42px;min-width:0}
.lm-chemistry-table input[type=number],.lm-chemistry-pots input{width:58px;min-height:42px;text-align:center;font-size:20px;font-weight:600}
.lm-chemistry-table .lm-chemistry-formula{box-sizing:border-box;width:100%;min-width:0;min-height:42px;margin-block-start:5px;font-size:16px;text-align:center;direction:ltr}
.lm-chemistry-table{table-layout:fixed}.lm-chemistry-table th:first-child{width:50%}.lm-chemistry-table th:last-child{width:58px}
.lm-chemistry-pots{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-block:10px}
.lm-chemistry-author{display:grid;grid-template-columns:1fr 44px;align-items:center;gap:6px;font-size:12px;margin-block:10px}
.lm-chemistry-author input{grid-column:1;box-sizing:border-box;width:100%;min-width:0;min-height:44px;font-size:15px}
.experience-studio .experience-settings-panel .lm-chemistry-pots input[type=number]{width:64px;flex:0 0 64px;font-size:20px}
.experience-studio .experience-settings-panel .lm-chemistry-formula{font-size:16px}
.lm-chemistry-table td:last-child{width:70px;text-align:center}
.lm-chemistry-atoms{direction:ltr;unicode-bidi:isolate;font-size:11px}
.lm-chemistry-table .lm-chemistry-equation{width:auto;text-align:center;font-size:12px;line-height:1.6}
.lm-chemistry-lab .experience-native-actions{display:flex;gap:4px}
.lm-chemistry-scene [data-vessel]:focus{outline:none;filter:drop-shadow(0 0 3px #167466)}
.lm-chemistry-inputs thead{display:none}
.lm-chemistry-inputs tbody{display:block}
.lm-chemistry-inputs tr{display:grid;grid-template-columns:minmax(0,1fr) 88px;gap:8px;padding-block:10px;border-bottom:1px solid #d8e3df}
.lm-chemistry-inputs td{display:block;border:0;padding:0;min-width:0;width:auto!important;text-align:start!important}
.lm-chemistry-inputs td:first-child{grid-column:1/-1}
.lm-chemistry-inputs td:not(:first-child)::before{content:attr(data-label);display:block;margin-block-end:5px;font-size:13px}
.lm-chemistry-full-name{display:block;line-height:1.6;font-size:14px;margin-block-end:6px;overflow-wrap:anywhere}
.experience-studio .experience-settings-panel .lm-chemistry-inputs select{font-size:14px;padding-inline:12px 28px}
.lm-chemistry-result-state{display:block;font-size:13px;line-height:1.6;color:#167466}
.lm-chemistry-table .lm-chemistry-result-note{width:auto;text-align:start;font-size:14px;line-height:1.7}
.lm-chemistry-product-heading,.lm-chemistry-observation{display:block;line-height:1.6}
.lm-chemistry-predictions{margin:10px 0;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:#f4f7f6}
.lm-chemistry-predictions legend{padding:0 4px;color:var(--accent);font-size:13px}
.lm-chemistry-prediction{display:block;width:100%;margin:4px 0;min-height:44px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);text-align:start;font:inherit;font-size:13px;cursor:pointer}
.lm-chemistry-prediction[aria-pressed=true]{background:#e7f3ee;border-color:var(--accent);color:var(--accent)}
.lm-chemistry-prediction-result{margin:8px 0 0;font-size:14px;line-height:1.6;color:var(--accent)}
.lm-chemistry-lab .lm-tool-readout{max-width:none;font-size:16px;direction:inherit}
.lm-chemistry-lab.chemistry-has-result .experience-readout{max-height:140px;direction:inherit}
.lm-chemistry-lab.chemistry-has-result .experience-stage:not(.tools-open) .experience-viewport{bottom:240px}
.lm-chemistry-lab.chemistry-has-result .experience-stage.tools-open .experience-readout{max-height:60px}
.lm-chemistry-lab .experience-stage .viewer-feedback,.lm-chemistry-lab .experience-stage.tools-open .viewer-feedback{top:58px;bottom:auto}
.lm-chemistry-source-pager{display:flex;align-items:center;justify-content:center;gap:12px;margin-block:8px}
.lm-chemistry-source-pager output{font-size:14px;direction:ltr;unicode-bidi:isolate}
.lm-chemistry-results td[colspan]{width:auto;text-align:start;font-size:14px;line-height:1.7}
.lm-chemistry-atoms strong{display:block;direction:inherit}
.lm-chemistry-atoms bdi{display:inline-block;margin-inline-end:12px;white-space:nowrap}
.experience-studio .experience-settings-panel input[type=number]{text-align:center;font-size:20px}

/* Shared pot-focused editing: reuse the studio panel and original form controls. */
.experience-studio .lm-chemistry-pot-editor{display:flex;inset:auto;height:auto;max-height:calc(100% - 150px);z-index:6}
.lm-chemistry-pot-editor .panel-header h2{display:flex;align-items:center;gap:8px;font-size:14px;margin:0}
.lm-chemistry-pot-editor .panel-header button{border:0;background:transparent;color:var(--ink);min-width:44px;min-height:44px;border-radius:50%}
.lm-chemistry-pot-editor input{box-sizing:border-box;min-height:44px;font:inherit;color:var(--ink);background:#f4f7f6;border:1px solid var(--line);border-radius:10px;padding:8px}
.lm-chemistry-pot-editor input[type=number]{width:100%;font-size:20px;font-weight:600;text-align:center}
.lm-chemistry-pot-editor .lm-chemistry-full-name{display:none}
.lm-chemistry-inputs tr{grid-template-columns:minmax(0,1fr) 80px}
.lm-chemistry-inputs .answer-select{width:100%;min-width:0}
.lm-chemistry-inputs .answer-select-trigger{gap:6px;padding-inline:10px;font-size:14px}
.lm-chemistry-pot-button{width:100%;min-height:40px;display:flex;align-items:center;justify-content:center;gap:8px;padding:6px;border:1px solid var(--line);border-radius:12px;background:#ffffffcf;color:var(--ink);font-family:inherit;font-size:14px;line-height:1.3;cursor:pointer}
.lm-chemistry-pot-button b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lm-chemistry-pot-button .studio-icon{width:18px;height:18px;flex:none}
.lm-chemistry-pot-button:hover,.lm-chemistry-pot-button[aria-expanded=true]{background:#e7f3ee;border-color:var(--accent);color:var(--accent)}
.lm-chemistry-pot-button:focus-visible{outline:2px solid var(--accent);outline-offset:-3px}
.lm-chemistry-pot-labels{position:absolute;inset:0;pointer-events:none;z-index:2}
.lm-chemistry-pot-labels .lm-chemistry-pot-button{position:absolute;pointer-events:auto;box-sizing:border-box;height:44px;min-height:44px;transform:translate(-50%,-100%)}
@media(max-width:600px){.lm-chemistry-pot-labels .lm-chemistry-pot-button{height:32px;min-height:32px;font-size:12px;padding:4px;gap:5px}}
/* Desktop settings float above the scene; small embedded/mobile viewers retain their sheet layout. */
@media(min-width:601px){@container(min-width:601px){
 .experience-studio .experience-stage.tools-open .experience-viewport{inset-inline-start:16px}
 .lm-chemistry-lab.chemistry-has-result .experience-stage.tools-open .experience-viewport{bottom:240px}
 .lm-chemistry-lab.chemistry-has-result .experience-stage.tools-open .experience-readout{max-height:140px}
 .experience-studio[dir=rtl] .experience-stage.tools-open:has(.zoom-controls) .experience-readout{left:76px;right:18px}
 .experience-studio[dir=ltr] .experience-stage.tools-open:has(.zoom-controls) .experience-readout{left:18px;right:76px}
}}
.lm-chemistry-environment summary{display:flex;align-items:center;gap:8px;cursor:pointer;min-height:44px;color:var(--accent)}
.lm-chemistry-environment-control{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-block:10px}
.experience-studio .experience-settings-panel .lm-chemistry-environment-control input{width:84px;flex:0 0 84px}
.lm-chemistry-heaters{display:flex;flex-wrap:wrap;align-items:center;gap:8px;border-top:1px solid var(--line);padding-top:10px}
.lm-chemistry-heaters>span{width:100%;font-size:13px}
.lm-chemistry-heaters button{min-width:44px;min-height:44px;border:1px solid var(--line);border-radius:12px;background:#f4f7f6;color:var(--ink)}
.lm-chemistry-heaters button[aria-pressed=true]{background:#e7f3ee;border-color:var(--accent);color:var(--accent)}
.lm-chemistry-environment-readout{display:block;font-size:12px;color:var(--accent);line-height:1.6}
:is(.medical-studio,.experience-studio) .viewer-settings{left:auto;right:20px}
@media(max-width:600px){:is(.medical-studio,.experience-studio) .viewer-settings{left:auto;right:18px}:is(.medical-studio,.experience-studio) .viewer-dock{left:18px;right:auto;transform:none}}
@media(max-width:360px){:is(.medical-studio,.experience-studio) .viewer-settings{right:12px}:is(.medical-studio,.experience-studio) .viewer-dock{left:12px;right:auto}}
