[data-nt-app] .sim-stage,
.nt-view .sim-stage { position: relative; overflow: hidden; background: #000; color: #fff; }
[data-nt-app] .sim-stage *,
.nt-view .sim-stage * { box-sizing: border-box; }
[data-nt-app] .sim-stage [hidden],
.nt-view .sim-stage [hidden] { display: none !important; }
[data-nt-app] .sim-stage p,
.nt-view .sim-stage p { margin: 0; }
[data-nt-app] .sim-check,
.nt-view .sim-check { display: flex; align-items: center; gap: .5rem; font-size: .875rem; }
[data-nt-app] .sim-check input,
.nt-view .sim-check input { width: 1rem; height: 1rem; }
[data-nt-app] .sim-name-editor summary,
.nt-view .sim-name-editor summary { cursor: pointer; font-size: 12px; }
[data-nt-app] .sim-peer-fields,
.nt-view .sim-peer-fields { display: grid; gap: 10px; margin-top: 12px; }
[data-nt-app] .sim-os,
.nt-view .sim-os { position: absolute; inset: 0; overflow: hidden; font: 400 clamp(11px, 2.8cqw, 30px)/1.55 'Segoe UI', Arial, sans-serif; }
[data-nt-app] .sim-os-center,
.nt-view .sim-os-center { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 1.2cqh; padding: 5cqw; text-align: center; }
[data-nt-app] .sim-os-foot,
.nt-view .sim-os-foot { position: absolute; bottom: 9%; left: 6%; right: 6%; text-align: center; font-size: .82em; }
[data-nt-app] .sim-win10,
.nt-view .sim-win10 { background: #0078d7; font-weight: 300; }
[data-nt-app] .sim-win11,
.nt-view .sim-win11 { background: #080808; font-weight: 300; }
[data-nt-app] .sim-win11 .sim-os-center,
.nt-view .sim-win11 .sim-os-center { padding-bottom: 12cqh; }
[data-nt-app] .sim-ring,
.nt-view .sim-ring { flex: none; width: 5cqw; height: 5cqw; min-width: 20px; min-height: 20px; border: max(1px, .27cqw) solid #ffffff28; border-top-color: currentColor; border-right-color: currentColor; border-radius: 50%; animation: sim-spin 1.15s linear infinite; margin-bottom: 3cqh; }
[data-nt-app] .sim-win-dots,
.nt-view .sim-win-dots { width: 5cqw; height: 5cqw; position: relative; margin-bottom: 4cqh; }
[data-nt-app] .sim-win-dots i,
.nt-view .sim-win-dots i { position: absolute; inset: 0; animation: sim-orbit 2.8s cubic-bezier(.2,.7,.8,.3) infinite; }
[data-nt-app] .sim-win-dots i::before,
.nt-view .sim-win-dots i::before { content: ''; display: block; width: .7cqw; height: .7cqw; min-width: 2px; min-height: 2px; background: #fff; border-radius: 50%; }
[data-nt-app] .sim-win-dots i:nth-child(2), .nt-view .sim-win-dots i:nth-child(2) { animation-delay: .14s; }
[data-nt-app] .sim-win-dots i:nth-child(3), .nt-view .sim-win-dots i:nth-child(3) { animation-delay: .28s; }
[data-nt-app] .sim-win-dots i:nth-child(4), .nt-view .sim-win-dots i:nth-child(4) { animation-delay: .42s; }
[data-nt-app] .sim-win-dots i:nth-child(5), .nt-view .sim-win-dots i:nth-child(5) { animation-delay: .56s; }
[data-nt-app] .sim-progress,
.nt-view .sim-progress { appearance: none; width: 30cqw; height: max(3px, .65cqw); border: 0; border-radius: 5px; overflow: hidden; background: #ffffff35; color: #fff; }
[data-nt-app] .sim-progress::-webkit-progress-bar,
.nt-view .sim-progress::-webkit-progress-bar { background: #ffffff35; }
[data-nt-app] .sim-progress::-webkit-progress-value,
.nt-view .sim-progress::-webkit-progress-value { background: #fff; }
[data-nt-app] .sim-progress::-moz-progress-bar,
.nt-view .sim-progress::-moz-progress-bar { background: #fff; }
[data-nt-app] .sim-xp-update,
.nt-view .sim-xp-update { background: #00309b; font-family: Tahoma, Arial, sans-serif; font-size: clamp(10px, 2.5cqw, 26px); }
[data-nt-app] .sim-xp-update-band,
.nt-view .sim-xp-update-band { position: absolute; inset: 17% 0 16%; background: linear-gradient(100deg, #7395e8, #557bd5 70%); border-top: max(1px, .3cqw) solid #91b5fa; border-bottom: max(2px, .5cqw) solid #ed9b32; display: flex; align-items: center; justify-content: center; }
[data-nt-app] .sim-xp-update-content,
.nt-view .sim-xp-update-content { display: flex; flex-direction: column; align-items: flex-end; gap: 1cqh; }
[data-nt-app] .sim-xp-logo,
.nt-view .sim-xp-logo { color: #fff; display: flex; align-items: center; gap: 1cqw; line-height: 1; text-shadow: 0 1px 2px #0004; }
[data-nt-app] .sim-xp-flag,
.nt-view .sim-xp-flag { width: 10cqw; height: 9cqw; filter: drop-shadow(1px 2px 1px #0005); }
[data-nt-app] .sim-flag-red, .nt-view .sim-flag-red { fill: #f15b29; }
[data-nt-app] .sim-flag-green, .nt-view .sim-flag-green { fill: #86c440; }
[data-nt-app] .sim-flag-blue, .nt-view .sim-flag-blue { fill: #29a8df; }
[data-nt-app] .sim-flag-yellow, .nt-view .sim-flag-yellow { fill: #ffcb04; }
[data-nt-app] .sim-xp-wordmark,
.nt-view .sim-xp-wordmark { font: 600 5.2cqw/1 Tahoma, Arial, sans-serif; letter-spacing: -.25cqw; }
[data-nt-app] .sim-xp-wordmark small,
.nt-view .sim-xp-wordmark small { display: block; font: 400 1.7cqw/1.4 Arial, sans-serif; letter-spacing: 0; }
[data-nt-app] .sim-xp-wordmark span,
.nt-view .sim-xp-wordmark span { display: inline-block; color: #ff812c; font-size: 3.2cqw; vertical-align: top; letter-spacing: -.15cqw; }
[data-nt-app] .sim-xp-update .sim-progress,
.nt-view .sim-xp-update .sim-progress { width: 24cqw; margin-top: 1cqh; }
[data-nt-app] .sim-macos,
.nt-view .sim-macos { background: #000; font-family: -apple-system, BlinkMacSystemFont, Arial, sans-serif; }
[data-nt-app] .sim-apple,
.nt-view .sim-apple { width: 9cqw; height: 11cqw; margin-bottom: 8cqh; }
[data-nt-app] .sim-mac-time,
.nt-view .sim-mac-time { font-size: clamp(8px, 1.2cqw, 17px); margin-top: 2cqh !important; color: #d0d0d0; }
[data-nt-app] .sim-macos .sim-os-foot,
.nt-view .sim-macos .sim-os-foot { bottom: 15%; font-size: clamp(8px, 1.3cqw, 19px); color: #c0c0c0; }
[data-nt-app] .sim-ubuntu,
.nt-view .sim-ubuntu { background: #2c001e; font-family: Ubuntu, 'Trebuchet MS', sans-serif; }
[data-nt-app] .sim-ubuntu-mark,
.nt-view .sim-ubuntu-mark { width: 9cqw; height: 9cqw; }
[data-nt-app] .sim-ubuntu-word,
.nt-view .sim-ubuntu-word { font-size: 5cqw; letter-spacing: -.25cqw; line-height: 1.1; }
[data-nt-app] .sim-ubuntu-dots,
.nt-view .sim-ubuntu-dots { display: flex; gap: 2.2cqw; margin: 4cqh 0 2cqh; }
[data-nt-app] .sim-ubuntu-dots i,
.nt-view .sim-ubuntu-dots i { width: .8cqw; height: .8cqw; background: #fff; border-radius: 50%; animation: sim-ubuntu-dot 2.5s infinite; }
[data-nt-app] .sim-ubuntu-dots i:nth-child(2), .nt-view .sim-ubuntu-dots i:nth-child(2) { animation-delay: .25s; }
[data-nt-app] .sim-ubuntu-dots i:nth-child(3), .nt-view .sim-ubuntu-dots i:nth-child(3) { animation-delay: .5s; }
[data-nt-app] .sim-ubuntu-dots i:nth-child(4), .nt-view .sim-ubuntu-dots i:nth-child(4) { animation-delay: .75s; }
[data-nt-app] .sim-ubuntu-dots i:nth-child(5), .nt-view .sim-ubuntu-dots i:nth-child(5) { animation-delay: 1s; }
[data-nt-app] .sim-chromeos,
.nt-view .sim-chromeos { background: #202124; color: #e8eaed; font-family: Roboto, Arial, sans-serif; }
[data-nt-app] .sim-chrome-block,
.nt-view .sim-chrome-block { position: absolute; top: 26%; left: 10%; width: 80%; }
[data-nt-app] .sim-chrome-brand,
.nt-view .sim-chrome-brand { display: flex; align-items: center; gap: 1cqw; font-size: 2.7cqw; padding-bottom: 2cqh; }
[data-nt-app] .sim-chrome-logo,
.nt-view .sim-chrome-logo { display: inline-block; width: 3cqw; height: 3cqw; border-radius: 50%; background: conic-gradient(#ea4335 0 33%, #fbbc05 33% 66%, #34a853 66%); position: relative; }
[data-nt-app] .sim-chrome-logo::after,
.nt-view .sim-chrome-logo::after { content: ''; position: absolute; inset: 28%; background: #4285f4; border: .15cqw solid #fff; border-radius: 50%; }
[data-nt-app] .sim-chrome-main,
.nt-view .sim-chrome-main { border-block: 1px solid #5f6368; padding: 4cqh 2cqw; display: flex; align-items: center; gap: 4cqw; }
[data-nt-app] .sim-chrome-main .sim-ring,
.nt-view .sim-chrome-main .sim-ring { color: #8ab4f8; margin: 0; }
[data-nt-app] .sim-chrome-sub,
.nt-view .sim-chrome-sub { color: #9aa0a6; font-size: .8em; }
[data-nt-app] .sim-chrome-main .sim-progress,
.nt-view .sim-chrome-main .sim-progress { width: 42cqw; height: max(2px,.35cqw); }
[data-nt-app] .sim-android-update,
.nt-view .sim-android-update { background: #0085d8; font-family: Roboto, Arial, sans-serif; }
[data-nt-app] .sim-android,
.nt-view .sim-android { width: 13cqw; height: 15cqw; margin-bottom: 4cqh; }
[data-nt-app] .sim-android-update .sim-progress,
.nt-view .sim-android-update .sim-progress { width: 36cqw; border-radius: 0; margin-top: 1cqh; }
[data-nt-app] .sim-bsod10,
.nt-view .sim-bsod10 { background: #0078d7; padding: 7cqh 10cqw; display: flex; flex-direction: column; justify-content: center; gap: 3cqh; font: 300 clamp(9px, 2.8cqw, 42px)/1.35 'Segoe UI', Arial, sans-serif; }
[data-nt-app] .sim-bsod-face,
.nt-view .sim-bsod-face { font-size: 11cqw; line-height: 1; margin-bottom: 1cqh; }
[data-nt-app] .sim-bsod-details,
.nt-view .sim-bsod-details { font-size: .48em; line-height: 1.6; display: grid; gap: 2cqh; }
[data-nt-app] .sim-bsod-xp,
.nt-view .sim-bsod-xp { padding: 4cqh 4cqw; background: #0000aa; font: 400 clamp(8px, 1.9cqw, 25px)/1.3 'Lucida Console', 'Courier New', monospace; display: flex; flex-direction: column; justify-content: flex-start; gap: 2cqh; text-align: left; }
[data-nt-app] .sim-xp-boot,
.nt-view .sim-xp-boot { background: #000; }
[data-nt-app] .sim-xp-boot .sim-xp-logo,
.nt-view .sim-xp-boot .sim-xp-logo { flex-direction: column; align-items: flex-start; position: relative; padding-top: 14cqw; }
[data-nt-app] .sim-xp-boot .sim-xp-flag,
.nt-view .sim-xp-boot .sim-xp-flag { position: absolute; right: 1cqw; top: 0; width: 17cqw; height: 15cqw; }
[data-nt-app] .sim-xp-boot .sim-xp-wordmark,
.nt-view .sim-xp-boot .sim-xp-wordmark { font-size: 6.6cqw; }
[data-nt-app] .sim-xp-track,
.nt-view .sim-xp-track { width: 20cqw; height: 2.2cqw; margin-top: 5cqh; padding: .3cqw; border: max(1px, .15cqw) solid #8c8c8c; border-radius: .7cqw; overflow: hidden; position: relative; }
[data-nt-app] .sim-xp-train,
.nt-view .sim-xp-train { position: absolute; inset: .3cqw auto .3cqw 0; width: 5cqw; display: flex; gap: .25cqw; animation: sim-xp-load 1.8s linear infinite; }
[data-nt-app] .sim-xp-train i,
.nt-view .sim-xp-train i { flex: 1; background: linear-gradient(#92b4ff, #527ce1 45%, #153b9e); }
[data-nt-app] .sim-xp-corner,
.nt-view .sim-xp-corner { position: absolute; bottom: 5%; right: 7%; font: italic 700 2cqw Arial, sans-serif; }
[data-nt-app] .sim-stage:is([data-sim-phase='paused'],[data-sim-phase='holding'],[data-sim-phase='complete']) .sim-motion,
[data-nt-app] .sim-stage:is([data-sim-phase='paused'],[data-sim-phase='holding'],[data-sim-phase='complete']) .sim-motion *,
.nt-view .sim-stage:is([data-sim-phase='paused'],[data-sim-phase='holding'],[data-sim-phase='complete']) .sim-motion,
.nt-view .sim-stage:is([data-sim-phase='paused'],[data-sim-phase='holding'],[data-sim-phase='complete']) .sim-motion * { animation-play-state: paused; }

/* Each call owns its toolbar and grid; external controls inherit the site UI. */
[data-nt-app] .sim-call,
.nt-view .sim-call { --sim-accent: #a8c7fa; --sim-surface: #303134; --sim-background: #202124; --sim-text: #f1f3f4; position: absolute; inset: 0; display: grid; grid-template-rows: 10% minmax(0,1fr) 16%; background: var(--sim-background); color: var(--sim-text); font: 400 clamp(7px, 1.35cqw, 21px)/1.3 Arial, sans-serif; overflow: hidden; cursor: default; }
[data-nt-app] .sim-call button,
.nt-view .sim-call button { cursor: pointer; font: inherit; color: inherit; background: var(--sim-surface); border: 0; border-radius: .8cqw; padding: 1cqw; }
[data-nt-app] .sim-call button:hover,
.nt-view .sim-call button:hover { filter: brightness(1.22); }
[data-nt-app] .sim-call button:focus-visible,
.nt-view .sim-call button:focus-visible { outline: 2px solid var(--sim-accent); outline-offset: 2px; }
[data-nt-app] .sim-call-top,
.nt-view .sim-call-top { display: flex; gap: 2cqw; align-items: center; padding: 0 2cqw; white-space: nowrap; }
[data-nt-app] .sim-call-brand,
.nt-view .sim-call-brand { font-size: 1.8cqw; color: var(--sim-accent); }
[data-nt-app] .sim-call-title,
.nt-view .sim-call-title { flex: 1; overflow: hidden; text-overflow: ellipsis; }
[data-nt-app] .sim-call-top time,
.nt-view .sim-call-top time { font-variant-numeric: tabular-nums; }
[data-nt-app] .sim-call-workspace,
.nt-view .sim-call-workspace { display: flex; gap: 1cqw; min-height: 0; overflow: hidden; padding: 0 1.5cqw; }
[data-nt-app] .sim-call-content,
.nt-view .sim-call-content { min-width: 0; min-height: 0; flex: 1; display: flex; flex-direction: column; gap: 1cqw; }
[data-nt-app] .sim-call-grid,
.nt-view .sim-call-grid { display: grid; flex: 1; gap: 1cqw; min-width: 0; min-height: 0; }
[data-nt-app] .sim-call-tile,
.nt-view .sim-call-tile { --sim-avatar: #6877a7; background: var(--sim-surface); border-radius: 1.1cqw; position: relative; overflow: hidden; display: flex; align-items: center; justify-content: center; min-width: 0; min-height: 0; }
[data-nt-app] .sim-call-tile[data-tone='1'], .nt-view .sim-call-tile[data-tone='1'] { --sim-avatar: #98695b; }
[data-nt-app] .sim-call-tile[data-tone='2'], .nt-view .sim-call-tile[data-tone='2'] { --sim-avatar: #517c75; }
[data-nt-app] .sim-call-tile[data-tone='3'], .nt-view .sim-call-tile[data-tone='3'] { --sim-avatar: #9b7247; }
[data-nt-app] .sim-call-tile[data-tone='4'], .nt-view .sim-call-tile[data-tone='4'] { --sim-avatar: #865c8d; }
[data-nt-app] .sim-call-tile[data-tone='5'], .nt-view .sim-call-tile[data-tone='5'] { --sim-avatar: #587c9b; }
[data-nt-app] .sim-avatar,
.nt-view .sim-avatar { width: min(9cqw, 60%); max-height: 65%; aspect-ratio: 1; border-radius: 50%; background: var(--sim-avatar); color: #fff; display: flex; align-items: center; justify-content: center; font-size: 3cqw; }
[data-nt-app] .sim-call-grid[data-count='1'] .sim-avatar,
.nt-view .sim-call-grid[data-count='1'] .sim-avatar { width: 14cqw; font-size: 5cqw; }
[data-nt-app] .sim-tile-name,
.nt-view .sim-tile-name { position: absolute; bottom: .9cqw; left: 1cqw; right: 2cqw; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: clamp(6px, 1.3cqw, 18px); z-index: 1; }
[data-nt-app] .sim-tile-mic,
.nt-view .sim-tile-mic { position: absolute; top: .7cqw; right: .8cqw; border-radius: 50%; background: #0004; color: #fff; width: 2.6cqw; height: 2.6cqw; text-align: center; line-height: 2.6cqw; }
[data-nt-app] .sim-tile-speaking,
.nt-view .sim-tile-speaking { box-shadow: inset 0 0 0 max(1px,.3cqw) var(--sim-accent); }
[data-nt-app] .sim-tile-speaking .sim-tile-mic,
.nt-view .sim-tile-speaking .sim-tile-mic { color: var(--sim-accent); }
[data-nt-app] .sim-avatar-scene,
.nt-view .sim-avatar-scene { display: none; position: absolute; inset: 0; background: linear-gradient(120deg, #d4c7b0 0 33%, #aab9ae 33% 67%, #6b8580 67%); }
[data-nt-app] .sim-avatar-scene i,
.nt-view .sim-avatar-scene i { position: absolute; width: 20%; aspect-ratio: 1; border-radius: 50%; left: 40%; top: 15%; background: #dbc3ab; box-shadow: 0 -1cqw 0 -.2cqw #3a3431; }
[data-nt-app] .sim-avatar-scene i::after,
.nt-view .sim-avatar-scene i::after { content: ''; position: absolute; top: 90%; left: -60%; width: 220%; height: 300%; border-radius: 40% 40% 0 0; background: #2c5262; }
[data-nt-app] .sim-video-on .sim-avatar-scene,
.nt-view .sim-video-on .sim-avatar-scene { display: block; }
[data-nt-app] .sim-video-on .sim-tile-name,
.nt-view .sim-video-on .sim-tile-name { color: #fff; text-shadow: 0 1px 3px #000; }
[data-nt-app] .sim-video-note,
.nt-view .sim-video-note { display: none; position: absolute; top: 1cqw; left: 1cqw; z-index: 1; color: #fff; background: #0008; padding: .2cqw .5cqw; border-radius: .3cqw; font-size: .75em; }
[data-nt-app] .sim-video-on .sim-video-note,
.nt-view .sim-video-on .sim-video-note { display: block; }
[data-nt-app] .sim-call-toolbar,
.nt-view .sim-call-toolbar { display: flex; align-items: center; justify-content: center; gap: 1cqw; padding: 1cqw 2cqw; min-width: 0; }
[data-nt-app] .sim-call-button,
.nt-view .sim-call-button { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .5cqw; min-width: 8cqw; height: 100%; max-height: 8cqw; white-space: nowrap; }
[data-nt-app] .sim-call-button svg,
.nt-view .sim-call-button svg { width: 2.7cqw; height: 2.7cqw; min-height: 10px; min-width: 10px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
[data-nt-app] .sim-call-button span,
.nt-view .sim-call-button span { font-size: clamp(6px, 1.1cqw, 16px); }
[data-nt-app] .sim-call-button[aria-pressed='true'],
.nt-view .sim-call-button[aria-pressed='true'] { background: var(--sim-accent); color: #172326; }
[data-nt-app] .sim-call-button[data-action='call-leave'],
.nt-view .sim-call-button[data-action='call-leave'] { background: #d93025; color: #fff; }
[data-nt-app] .sim-call-meet .sim-call-button,
.nt-view .sim-call-meet .sim-call-button { border-radius: 3cqw; }
[data-nt-app] .sim-call-zoom,
.nt-view .sim-call-zoom { --sim-background: #111; --sim-surface: #232323; --sim-accent: #35cb6b; grid-template-rows: 8% minmax(0,1fr) 16%; }
[data-nt-app] .sim-call-zoom .sim-call-brand,
.nt-view .sim-call-zoom .sim-call-brand { color: #a3c5ff; }
[data-nt-app] .sim-call-zoom .sim-call-toolbar,
.nt-view .sim-call-zoom .sim-call-toolbar { background: #1d1d1d; justify-content: space-between; margin-top: 1cqw; }
[data-nt-app] .sim-call-zoom .sim-call-button,
.nt-view .sim-call-zoom .sim-call-button { background: transparent; }
[data-nt-app] .sim-call-zoom .sim-call-button[data-action='call-share'],
.nt-view .sim-call-zoom .sim-call-button[data-action='call-share'] { color: #35cb6b; }
[data-nt-app] .sim-call-zoom .sim-call-button[data-action='call-leave'],
.nt-view .sim-call-zoom .sim-call-button[data-action='call-leave'] { background: #c62027; }
[data-nt-app] .sim-call-zoom .sim-call-button[aria-pressed='true'],
.nt-view .sim-call-zoom .sim-call-button[aria-pressed='true'] { background: #334438; color: #8febad; }
[data-nt-app] .sim-call-zoom .sim-call-tile,
.nt-view .sim-call-zoom .sim-call-tile { border-radius: .4cqw; }
[data-nt-app] .sim-call-zoom .sim-tile-name,
.nt-view .sim-call-zoom .sim-tile-name { background: #0008; width: fit-content; max-width: 85%; padding: .25cqw .6cqw; }
[data-nt-app] .sim-call-teams,
.nt-view .sim-call-teams { --sim-background: #1f1f1f; --sim-surface: #333232; --sim-accent: #b5b6f2; font-family: 'Segoe UI', Arial, sans-serif; grid-template-rows: 9% 13% minmax(0,1fr); }
[data-nt-app] .sim-call-teams .sim-call-toolbar,
.nt-view .sim-call-teams .sim-call-toolbar { grid-row: 2; grid-column: 1; justify-content: flex-end; padding-top: 0; border-bottom: 1px solid #444; }
[data-nt-app] .sim-call-teams .sim-call-workspace,
.nt-view .sim-call-teams .sim-call-workspace { grid-row: 3; padding-top: 1.5cqw; padding-bottom: 1.5cqw; }
[data-nt-app] .sim-call-teams .sim-call-button,
.nt-view .sim-call-teams .sim-call-button { background: transparent; }
[data-nt-app] .sim-call-teams .sim-call-button[aria-pressed='true'],
.nt-view .sim-call-teams .sim-call-button[aria-pressed='true'] { background: #4a4965; color: #fff; }
[data-nt-app] .sim-call-teams .sim-call-button[data-action='call-leave'],
.nt-view .sim-call-teams .sim-call-button[data-action='call-leave'] { background: #c4314b; }
[data-nt-app] .sim-call-slack,
.nt-view .sim-call-slack { --sim-background: #24142a; --sim-surface: #3a2441; --sim-accent: #d8b5e3; background: radial-gradient(ellipse at 80% 70%, #4b2851, #231428); padding-left: 5cqw; grid-template-rows: 14% minmax(0,1fr) 19%; }
[data-nt-app] .sim-call-slack::before,
.nt-view .sim-call-slack::before { content: '✳'; position: absolute; top: 0; left: 0; bottom: 0; width: 5cqw; background: #180d1c; text-align: center; padding-top: 2cqw; color: #fff; font-size: 3cqw; }
[data-nt-app] .sim-call-slack .sim-call-tile,
.nt-view .sim-call-slack .sim-call-tile { border-radius: 1.6cqw; background: #482e4e; }
[data-nt-app] .sim-call-slack .sim-call-button,
.nt-view .sim-call-slack .sim-call-button { border-radius: 1.5cqw; }
[data-nt-app] .sim-call-sidebar,
.nt-view .sim-call-sidebar { flex: 0 0 29%; min-width: 0; background: var(--sim-surface); padding: 1.3cqw; border-radius: 1cqw; overflow: auto; font-size: clamp(7px,1.2cqw,18px); }
[data-nt-app] .sim-sidebar-head,
.nt-view .sim-sidebar-head { display: flex; align-items: center; justify-content: space-between; gap: .5cqw; margin-bottom: 1cqw; }
[data-nt-app] .sim-sidebar-head button,
.nt-view .sim-sidebar-head button { font-size: 2.3cqw; padding: 0 .5cqw; }
[data-nt-app] [data-people-list] p,
.nt-view [data-people-list] p { padding: 1cqw 0; border-bottom: 1px solid #ffffff20; overflow-wrap: anywhere; }
[data-nt-app] .sim-chat,
.nt-view .sim-chat { display: flex; flex-direction: column; gap: 1cqw; }
[data-nt-app] .sim-chat label,
.nt-view .sim-chat label { display: grid; gap: .5cqw; }
[data-nt-app] .sim-chat input,
.nt-view .sim-chat input { width: 100%; min-width: 0; color: inherit; background: #0002; border: 1px solid #ffffff60; border-radius: .5cqw; padding: .7cqw; font: inherit; }
[data-nt-app] .sim-chat-log,
.nt-view .sim-chat-log { min-height: 6cqh; max-height: 24cqh; overflow-y: auto; }
[data-nt-app] .sim-chat-log p,
.nt-view .sim-chat-log p { padding-bottom: 1.5cqw; overflow-wrap: anywhere; }
[data-nt-app] .sim-chat-log strong,
.nt-view .sim-chat-log strong { display: block; color: var(--sim-accent); margin-bottom: .5cqw; }
[data-nt-app] .sim-chat [data-action='call-send-message'],
.nt-view .sim-chat [data-action='call-send-message'] { background: var(--sim-accent); color: #18212b; }
[data-nt-app] .sim-presentation,
.nt-view .sim-presentation { flex: 1; min-height: 0; padding: 3cqw; border-radius: .6cqw; background: #f4f0e6; color: #153f39; overflow: auto; }
[data-nt-app] .sim-presentation h2,
.nt-view .sim-presentation h2 { font: 600 3.5cqw/1.1 Georgia, serif; margin: 1cqw 0 2cqw; }
[data-nt-app] .sim-presentation > span,
.nt-view .sim-presentation > span { font-size: 1cqw; letter-spacing: .2cqw; }
[data-nt-app] .sim-slide-columns,
.nt-view .sim-slide-columns { display: flex; justify-content: space-between; gap: 2cqw; border-top: 1px solid #153f3960; padding-top: 1cqw; }
[data-nt-app] .sim-presentation small,
.nt-view .sim-presentation small { display: block; margin-top: 1.3cqw; font-size: .8em; }
[data-nt-app] .sim-is-sharing .sim-call-grid,
.nt-view .sim-is-sharing .sim-call-grid { flex: 0 0 23%; display: flex; overflow-x: auto; }
[data-nt-app] .sim-is-sharing .sim-call-tile,
.nt-view .sim-is-sharing .sim-call-tile { flex: 0 0 17%; }
[data-nt-app] .sim-is-sharing .sim-avatar,
.nt-view .sim-is-sharing .sim-avatar { width: 4cqw; font-size: 1.8cqw; }
[data-nt-app] .sim-call-reactions,
.nt-view .sim-call-reactions { position: absolute; bottom: 18%; right: 12%; background: var(--sim-surface); padding: .7cqw; border-radius: 1cqw; box-shadow: 0 1cqw 4cqw #0005; display: flex; gap: .5cqw; z-index: 4; }
[data-nt-app] .sim-call-reactions button,
.nt-view .sim-call-reactions button { font-size: 3cqw; }
[data-nt-app] .sim-call-teams .sim-call-reactions,
.nt-view .sim-call-teams .sim-call-reactions { bottom: auto; top: 22%; }
[data-nt-app] .sim-call-reaction,
.nt-view .sim-call-reaction { position: absolute; bottom: 22%; left: 5%; max-width: 80%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 4cqw; pointer-events: none; text-shadow: 0 1px 8px #000; z-index: 3; }
[data-nt-app] .sim-call-ended,
.nt-view .sim-call-ended { position: absolute; inset: 10% 0 0; background: var(--sim-background); display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2cqw; z-index: 5; }
[data-nt-app] .sim-call-ended h2,
.nt-view .sim-call-ended h2 { font: 500 3.5cqw/1.2 Arial, sans-serif; margin: 0; }
[data-nt-app] .sim-ended-symbol,
.nt-view .sim-ended-symbol { width: 8cqw; height: 8cqw; border-radius: 50%; display: grid; place-items: center; background: var(--sim-surface); color: var(--sim-accent); font-size: 4cqw; }
[data-nt-app] .sim-call-ended button,
.nt-view .sim-call-ended button { background: var(--sim-accent); color: #18212b; padding: 1.2cqw 4cqw; }
@keyframes sim-spin { to { transform: rotate(360deg); } }
@keyframes sim-orbit { 0% { transform: rotate(0deg); opacity: 0; } 12%,80% { opacity: 1; } 100% { transform: rotate(720deg); opacity: 0; } }
@keyframes sim-ubuntu-dot { 0%,70%,100% { background: #fff; } 15%,50% { background: #e95420; } }
@keyframes sim-xp-load { from { transform: translateX(-6cqw); } to { transform: translateX(21cqw); } }
@media (prefers-reduced-motion: reduce) {
  [data-nt-app] .sim-motion, [data-nt-app] .sim-motion *,
  .nt-view .sim-motion, .nt-view .sim-motion * { animation-duration: 5s; }
}

[data-nt-app] .sim-bsod-details { grid-template-columns:12cqw minmax(0,1fr); column-gap:3cqw; }
[data-nt-app] .sim-bsod-qr { grid-row:1 / span 3; align-self:start; width:12cqw; height:12cqw; background:#fff; }
/* A camera-off huddle uses an avatar row, distinct from a video meeting grid. */
[data-nt-app] .sim-call-slack { --sim-background:#fff; --sim-surface:#f6f6f7; --sim-accent:#5d236a; color:#1d1c1d; background:#fff; padding-left:0; }
[data-nt-app] .sim-call-slack::before { display:none; }
[data-nt-app] .sim-call-slack .sim-call-grid { display:flex; flex-wrap:wrap; align-content:center; justify-content:center; gap:2cqw; background:#fafafa; border:1px solid #ddd; border-radius:2cqw; padding:3cqw; }
[data-nt-app] .sim-call-slack .sim-call-tile { flex:0 0 12cqw; height:22cqh; background:transparent; border:0; border-radius:0; }
[data-nt-app] .sim-call-slack .sim-avatar { width:8cqw; height:8cqw; }
[data-nt-app] .sim-call-slack .sim-tile-name { text-align:center; left:0; right:0; color:#1d1c1d; font-size:clamp(6px,1.25cqw,18px); }
[data-nt-app] .sim-call-slack .sim-call-toolbar { background:#fff; }
[data-nt-app] .sim-call-slack .sim-call-button { color:#1d1c1d; background:#f0f0f0; }
[data-nt-app] .sim-call-slack .sim-call-button[data-action='call-leave'] { color:#9c1e28; background:#fbe7e8; }
[data-nt-app] .sim-call-slack .sim-call-ended button, [data-nt-app] .sim-call-slack .sim-chat [data-action='call-send-message'] { color:#fff; }
[data-nt-app] .sim-call-slack .sim-call-ended { color:#1d1c1d; }

/* Portrait fullscreen has much more height than the thumbnail: keep text readable. */
[data-nt-app] .nt-view.is-fullscreen .sim-os { font-size:clamp(16px,2cqw,30px); }
[data-nt-app] .nt-view.is-fullscreen .sim-bsod-xp { font-size:clamp(11px,1.25cqw,25px); line-height:1.35; }
[data-nt-app] .nt-view.is-fullscreen .sim-mac-time,
[data-nt-app] .nt-view.is-fullscreen .sim-macos .sim-os-foot { font-size:clamp(12px,1.3cqw,19px); }
[data-nt-app] .nt-view.is-fullscreen .sim-apple { width:clamp(70px,9cqw,150px); height:auto; max-height:22cqh; }
[data-nt-app] .nt-view.is-fullscreen .sim-android { width:clamp(65px,13cqw,200px); height:auto; max-height:26cqh; }
[data-nt-app] .nt-view.is-fullscreen .sim-call-button { min-height:40px; }
[data-nt-app] .nt-view.is-fullscreen .sim-call-button span { font-size:clamp(9px,1.2cqw,18px); }
[data-nt-app] .nt-view.is-fullscreen .sim-tile-name { font-size:clamp(10px,1.3cqw,20px); }
[data-nt-app] .sim-local-camera { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transform:scaleX(-1); z-index:0; }
[data-nt-app] .sim-has-camera .sim-avatar, [data-nt-app] .sim-has-camera .sim-avatar-scene { display:none; }
[data-nt-app] .sim-has-camera .sim-tile-mic, [data-nt-app] .sim-has-camera .sim-video-note { z-index:2; }
[data-nt-app] .sim-call-slack .sim-has-camera .sim-tile-name { color:#fff; background:#0008; text-shadow:0 1px 3px #000; }
