
:root { color-scheme:dark; --bg:#07080a; --panel:#111318; --panel2:#171a20; --line:#2b2f37; --text:#f7f4ec; --muted:#9da3ae; --accent:#f6c85f; --danger:#ff737b; --success:#72d6a0; }
* { box-sizing:border-box; }
[hidden] { display:none !important; }
html { -webkit-text-size-adjust:100%; touch-action:manipulation; }
body { margin:0; min-height:100vh; color:var(--text); background:radial-gradient(circle at 50% -20%,#1a1d24 0,var(--bg) 44%); font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
html:has(> body.auth-body),html:has(> body.admin-body) { width:100%; max-width:100%; overflow-x:clip; overscroll-behavior-x:none; }
.auth-body,.admin-body { width:100%; max-width:100%; overflow-x:clip; overscroll-behavior-x:none; touch-action:pan-y pinch-zoom; }
.auth-body { display:grid; grid-template-columns:minmax(0,1fr); place-items:center; padding:22px; }
.auth-card,.admin-main,.admin-header,.user-heading > div,.shortcut-device-list > div > * { min-width:0; }
.auth-card h1,.user-heading h2,.shortcut-device-list strong,.shortcut-device-list small,.auth-card .notice { overflow-wrap:anywhere; }
.auth-card .button-row > *,.admin-body .button-row > * { min-width:0; max-width:100%; }
.auth-card button,.auth-card .button-link { max-width:100%; white-space:normal; overflow-wrap:anywhere; }
.shortcut-device-list > div { flex-wrap:wrap; }
@media(max-width:480px){.auth-body{padding:14px}.auth-body .auth-card{padding:22px}.auth-card .pair-code{font-size:clamp(1.5rem,8vw,2.5rem);letter-spacing:.08em}}
.apple-setup-status { position:fixed; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.auth-card { width:min(100%,440px); padding:34px; border:1px solid var(--line); border-radius:22px; background:rgba(17,19,24,.95); box-shadow:0 30px 80px rgba(0,0,0,.45); }
.brand-icon { width:64px; height:64px; border-radius:15px; margin-bottom:18px; }
.eyebrow { color:var(--accent); font-size:.74rem; font-weight:850; letter-spacing:.15em; }
h1 { margin:8px 0 10px; font-size:clamp(2rem,6vw,2.7rem); letter-spacing:-.04em; }
h2 { margin:0 0 8px; font-size:1.2rem; }
.muted,.fine-print { color:var(--muted); line-height:1.55; }
.fine-print { margin:20px 0 0; font-size:.82rem; }
a { color:var(--accent); }
form { display:grid; gap:13px; margin-top:24px; }
label { display:grid; gap:7px; color:#cdd1d8; font-size:.86rem; font-weight:750; }
input,select { width:100%; min-width:0; padding:13px 14px; color:white; background:#090a0d; border:1px solid #363b45; border-radius:11px; outline:none; font:inherit; font-size:16px; }
input:focus,select:focus { border-color:var(--accent); box-shadow:0 0 0 3px rgba(246,200,95,.13); }
button,.button-link { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:11px 16px; border:0; border-radius:11px; color:#171006; background:var(--accent); font:inherit; font-weight:850; text-decoration:none; cursor:pointer; }
button:disabled { opacity:.45; cursor:not-allowed; }
button.secondary,.button-link.secondary { color:var(--text); background:#242832; }
button.danger { color:white; background:#8f3037; }
.secondary-form { margin-top:12px; }
.app-version { margin-top:24px; padding-top:18px; border-top:1px solid var(--line); color:var(--muted); font-size:.76rem; letter-spacing:.04em; text-align:center; }
.stage-device-section { margin-top:24px; padding-top:22px; border-top:1px solid var(--line); }
.stage-device-section h2 { margin-top:7px; }
.stage-link-list { display:grid; gap:12px; margin-top:18px; }
.stage-link-card { display:grid; gap:10px; padding:14px; border:1px solid var(--line); border-radius:13px; background:#0b0c10; }
.stage-link-card strong,.stage-link-card small { display:block; }
.stage-link-card small { margin-top:3px; color:var(--muted); }
.stage-link-card input { font-size:.8rem; }
.short-stage-link { display:grid; gap:10px; margin-top:16px; }
.short-stage-link > strong { color:var(--accent); font-size:2rem; letter-spacing:.15em; }
.apple-install-link { display:grid; gap:9px; margin-top:16px; }
.apple-install-link > strong { color:var(--accent); font-size:.86rem; }
.setup-steps { display:grid; gap:12px; margin:20px 0 0; padding-left:22px; color:#d7d9de; line-height:1.5; }
.direct-nfc-link label { color:var(--accent); font-size:1.35rem; letter-spacing:.04em; }
.pair-code { margin-top:18px; padding:18px; border:1px solid #69561e; border-radius:14px; color:var(--accent); background:#181408; font-size:clamp(2.3rem,12vw,3.4rem); font-weight:900; letter-spacing:.16em; text-align:center; }
.pair-expiry { margin-top:9px; }
.shortcut-device-list { display:grid; gap:8px; margin-top:16px; }
.shortcut-device-list > div { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:11px 12px; border:1px solid var(--line); border-radius:11px; background:#0b0c10; }
.shortcut-device-list small { color:var(--muted); text-align:right; }
.stage-apps-card { width:min(100%,620px); }
.stage-app-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:22px; }
.stage-app-card { display:grid; grid-template-columns:48px minmax(0,1fr); align-items:center; gap:12px; min-height:92px; padding:15px; border:1px solid var(--line); border-radius:14px; color:var(--text); background:#0b0c10; text-decoration:none; }
.stage-app-icon { width:48px; height:48px; border-radius:11px; object-fit:cover; }
.stage-app-card span { display:grid; gap:4px; min-width:0; }
.stage-app-card strong { font-size:1.05rem; }
.stage-app-card small { color:var(--muted); line-height:1.4; }
.notice { margin:18px 0 0; padding:11px 13px; border:1px solid #315c45; border-radius:11px; color:#b9f3d1; background:#14271d; }
.notice.error { color:#ffc0c4; border-color:#6b2a30; background:#2b1417; }
.button-row,.row-actions,.pills { display:flex; align-items:center; flex-wrap:wrap; gap:9px; }
.button-row { margin-top:24px; }
.button-row form,.row-actions form { margin:0; }
.status-pill { display:inline-flex; padding:6px 9px; border-radius:999px; color:#b9f3d1; background:#193326; font-size:.75rem; font-weight:800; }
.status-pill.online { color:#d8ffe9; background:#145d39; box-shadow:0 0 0 1px rgba(114,214,160,.35) inset; }
.status-pill.warn { color:#ffe2a0; background:#3d3016; }
.status-pill.off { color:#ffb6ba; background:#3a191d; }
.admin-body { padding:28px; }
.admin-header { width:min(1180px,100%); margin:0 auto 22px; display:flex; align-items:center; justify-content:space-between; gap:20px; }
.admin-header h1 { margin-bottom:0; }
.admin-main { width:min(1180px,100%); margin:0 auto; }
.admin-presence-meta { margin:0 0 16px; color:var(--muted); font-size:.84rem; }
.admin-presence-meta strong { color:#d8ffe9; }
.create-card,.user-card,.empty { padding:24px; border:1px solid var(--line); border-radius:18px; background:rgba(17,19,24,.95); }
.create-form { grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) auto; align-items:end; margin-top:18px; }
.user-list { display:grid; gap:14px; margin-top:18px; }
.user-card.disabled { opacity:.72; }
.user-card[open] { border-color:#424957; }
.user-summary { list-style:none; cursor:pointer; }
.user-summary::-webkit-details-marker { display:none; }
.user-summary::after { content:"Show controls"; display:inline-block; margin-top:13px; color:var(--accent); font-size:.78rem; font-weight:850; }
.user-card[open] > .user-summary::after { content:"Hide controls"; }
.user-details { padding-top:2px; }
.user-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; }
.user-heading h2 { display:flex; align-items:center; gap:9px; }
.online-dot { width:10px; height:10px; flex:0 0 10px; border-radius:50%; background:var(--success); box-shadow:0 0 0 3px rgba(114,214,160,.13),0 0 12px rgba(114,214,160,.65); }
.user-heading p { margin:0; font-size:.84rem; }
.inline-form { grid-template-columns:minmax(240px,1fr) auto auto; align-items:end; padding-top:18px; margin-top:18px; border-top:1px solid var(--line); }
.check { display:flex; grid-auto-flow:column; align-items:center; justify-content:start; padding-bottom:11px; }
.check input { width:18px; height:18px; }
.row-actions { margin-top:13px; }
.delete-control { width:100%; color:var(--danger); }
.delete-control summary { cursor:pointer; font-size:.85rem; font-weight:800; }
.delete-control form { max-width:360px; margin-top:10px; }
.apple-google-body { min-height:100svh; background:#fff; color:#202124; }
.apple-google-body.apple-google-dark { background:#202124; color:#f1f3f4; }
.apple-google-page { min-height:100svh; display:grid; grid-template-rows:auto 1fr auto; font-family:Arial,sans-serif; }
.apple-cover-body { position:fixed; inset:0; width:100vw; height:100dvh; min-height:0; overflow:hidden; background:#fff; }
.apple-cover-body.apple-cover-google-dark { background:#202124; }
@media(prefers-color-scheme:dark){.apple-cover-body.apple-cover-google-system{background:#202124}}
.apple-cover-page { position:fixed; inset:0; display:block; width:100vw; height:100dvh; overflow:hidden; color:inherit; text-decoration:none; cursor:pointer; -webkit-tap-highlight-color:transparent; user-select:none; }
.apple-cover-page > picture { display:contents; }
.apple-cover-page > img,.apple-cover-page > picture > img { display:block; width:100%; height:100%; object-fit:fill; object-position:center top; pointer-events:none; -webkit-user-drag:none; }
.apple-google-page header { min-height:94px; display:grid; grid-template-columns:auto auto 1fr auto 52px; align-items:center; gap:28px; padding:18px 40px; font-size:18px; }
.apple-google-page header strong { color:#1967d2; border-bottom:3px solid #1967d2; padding:29px 4px 20px; }
.apple-google-page header span { color:#5f6368; font-weight:700; }
.apple-google-dark .apple-google-page header span { color:#bdc1c6; }
.apple-google-page header b { font-size:25px; letter-spacing:5px; }
.apple-google-page header em { width:52px; height:52px; border-radius:50%; background:#0695d6; }
.apple-google-page section { display:grid; place-content:start center; justify-items:center; padding:100px 20px 40px; }
.apple-google-page section h1 { margin:0 0 42px; color:inherit; font-size:clamp(4rem,18vw,7rem); font-weight:500; letter-spacing:-.08em; }
.apple-google-search { width:min(92vw,760px); min-height:78px; display:grid; grid-template-columns:1fr auto auto auto; align-items:center; gap:26px; padding:0 28px; border:1px solid #dfe1e5; border-radius:40px; color:#5f6368; font-size:30px; }
.apple-google-dark .apple-google-search { border:0; background:#5f6368; color:#e8eaed; }
.apple-google-page section p { margin-top:54px; color:#5f6368; font-size:18px; }
.apple-google-dark .apple-google-page section p { color:#bdc1c6; }
.apple-google-page footer { display:flex; flex-wrap:wrap; justify-content:center; gap:24px 34px; padding:34px; border-top:1px solid #dadce0; color:#3c4043; background:#f2f2f2; font-size:17px; }
.apple-google-dark .apple-google-page footer { border-color:#3c4043; color:#bdc1c6; background:#17181b; }
@media (max-width:760px) { .admin-body { padding:18px; } .admin-header,.user-heading { align-items:flex-start; flex-direction:column; } .create-form,.inline-form { grid-template-columns:1fr; } .check { padding:0; } .row-actions > form,.row-actions button { width:100%; } }
@media (max-width:520px) { .apple-google-page header { min-height:74px; gap:18px; padding:8px 20px; font-size:15px; } .apple-google-page header strong { padding:24px 2px 17px; } .apple-google-page header em { width:42px; height:42px; } .apple-google-page section { padding-top:78px; } .apple-google-search { min-height:64px; gap:18px; padding:0 22px; font-size:24px; } .apple-google-page footer { gap:18px 26px; padding:28px 20px; font-size:15px; } }
@media (max-width:480px) { .stage-app-grid { grid-template-columns:1fr; } }


.xploy-mode-access { padding-top:18px; margin-top:18px; border-top:1px solid var(--line); }
.xploy-mode-access h3 { margin:4px 0 5px; font-size:1rem; }
.xploy-mode-access form { margin-top:13px; }
.xploy-mode-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:9px; }
.xploy-mode-choice { display:flex; grid-auto-flow:column; align-items:center; justify-content:start; gap:9px; min-height:44px; padding:9px 11px; border:1px solid #343943; border-radius:11px; background:#0b0d11; }
.xploy-mode-choice:has(input:checked) { color:#fff2c7; border-color:#66551e; background:#18150d; }
.xploy-mode-choice input { width:19px; height:19px; margin:0; accent-color:var(--accent); }
.xploy-mode-save { justify-self:start; }
@media (max-width:520px) { .xploy-mode-grid { grid-template-columns:1fr 1fr; } .xploy-mode-save { width:100%; } }

/* Xploy 2026.09.08.5 - Ember orange, warm paper and charcoal. */
body.dashboard-page, body.xploy-backstage-embed, body.auth-body, body.admin-body, body.xploy-library-page {
  color-scheme: dark;
  --bg: #0c0b0a;
  --panel: #171412;
  --panel2: #201b17;
  --line: #40352c;
  --border: #40352c;
  --text: #f2f1ea;
  --muted: #b9afa5;
  --accent: #ff8a24;
  --accent-soft: #352216;
  --accent-glow: #ff8a2433;
  --accent-border: #aa642f;
  --on-accent: #211105;
  --gold: var(--accent);
  --green: var(--accent);
  --red: #ff8585;
  --danger: #ff8585;
  --success: var(--accent);
  font-family: 'Avenir Next', 'Avenir', 'Trebuchet MS', sans-serif;
  color: var(--text);
  background: radial-gradient(ellipse at 86% 0, color-mix(in srgb, var(--accent) 4%, transparent), transparent 42rem), var(--bg);
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
}
.dashboard-page [hidden], .xploy-backstage-embed [hidden] { display: none !important; }
.admin-body .theme-color-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(130px,1fr)); gap:16px; width:100%; }
.admin-body .theme-color-grid label { display:grid; gap:8px; }
.admin-body .theme-preview { grid-column:1/-1; padding:18px; border-radius:12px; background:var(--preview-bg); }
.admin-body .theme-preview > div { padding:18px; border:1px solid var(--preview-line); border-radius:10px; background:var(--preview-panel); }
.admin-body .theme-preview strong { color:var(--preview-text); }
.admin-body .theme-preview p { color:var(--preview-muted); }
.admin-body .theme-preview span { display:inline-block; border-radius:9px; padding:9px 15px; background:var(--preview-accent); color:var(--preview-onAccent); box-shadow:0 0 18px color-mix(in srgb,var(--preview-accent) 25%,transparent); }
.admin-body .theme-color-grid input[type="color"] { width:100%; height:52px; padding:5px; border:1px solid var(--line); border-radius:10px; cursor:pointer; }
.admin-body form:has(.theme-color-grid) { padding:20px; border:1px solid var(--line); border-radius:14px; background:var(--bg); }
.profile-narration-settings { margin-top:26px; padding-top:20px; border-top:1px solid var(--line); }
.profile-narration-settings .profile-slideshow-options { display:grid; grid-template-columns:minmax(0,1fr) minmax(140px,1fr); margin:18px 0; }
.profile-narration-settings :is(select,input[type="number"]) { width:100%; min-width:0; max-width:100%; }
.profile-narration-settings details { margin:18px 0; }
.profile-narration-settings summary { cursor:pointer; color:var(--accent); padding:10px 0; }
#profile-narration-sections label { overflow-wrap:anywhere; align-items:start; }
@media (max-width:520px) { .profile-narration-settings .profile-slideshow-options { grid-template-columns:minmax(0,1fr); gap:8px; } .profile-narration-settings select { margin-bottom:12px; } }
.profile-slide-audio { display:flex; align-items:center; gap:12px; flex-wrap:wrap; font-size:13px; color:var(--muted); }
.profile-slide-audio button { padding:8px 12px; min-height:42px; font-size:13px; }
.dashboard-page { --space: clamp(20px, 3.5vw, 52px); }
/* All operator documents use these tokens, including legacy iframe controls. */
.dashboard-page .account-shortcut-links { display:flex; gap:20px; margin:8px auto 0; max-width:1496px; }
.dashboard-page .account-shortcut-links a { color:var(--accent); padding:8px 0; font-size:14px; text-decoration:none; }
.dashboard-page :is(.call-mode-panel,.pin-mode-panel,.pin-attempts-panel,.call-config-card,.call-history-row) { background:var(--panel) !important; border-color:var(--line) !important; box-shadow:none; }
.dashboard-page :is(.call-role-form input,.call-role-form select,.call-role-form textarea,.call-role-notes) { background:var(--bg); color:var(--text); border-color:var(--line); }
.xploy-backstage-embed .backstage-top > a { background:var(--accent) !important; color:var(--on-accent) !important; border-color:var(--accent-border) !important; }
.xploy-backstage-embed { --blue: var(--accent); --yellow: var(--accent); --green: var(--accent); --gold: var(--accent); --card: var(--panel); --card2: var(--panel2); }
.xploy-backstage-embed :is(.hero, .status-card, .status-grid > article, .control-card, .mirror-card, .result-card, .library-card, .recording-card, .footer-card, .settings-card, .prediction-card, .edit-card, .gmail-admin, .gmail-tools, .step, .show-row, .preview-shell, .upload-zone, .transcript-box, .library-empty, .result-grid > article, .card, .panel) { background: var(--panel) !important; border-color: var(--line) !important; color: var(--text); box-shadow: none; }
.xploy-backstage-embed :is(.show-row.active, .status-pill:not(.offline), .status.ready, .status.revealed, .list-tabs button.active) { background: var(--accent-soft) !important; color: var(--accent) !important; border-color: var(--accent-border) !important; }
.xploy-backstage-embed :is(.field, .control, .url, .local-note, .placeholder-help, .placeholder-token, .warning, .empty, .event, .list-tabs, .recording-actions, .current-prediction) { border-color: var(--line) !important; color: var(--muted); }
.xploy-backstage-embed :is(.url, .local-note, .placeholder-token, .warning, .empty) { background: var(--panel2) !important; }
.xploy-backstage-embed :is(button, .button, .btn, .backstage-button, .stage-app-launch, .install-row a) { background: var(--accent) !important; border-color: var(--accent-border) !important; color: var(--on-accent) !important; box-shadow: none; }
.xploy-backstage-embed :is(button, .button, .btn, .backstage-button):is(.secondary, .ghost, [aria-selected="false"], [aria-pressed="false"]) { background: var(--panel2) !important; color: var(--text) !important; border-color: var(--line) !important; }
.xploy-backstage-embed :is(button, .button, .btn, .backstage-button).danger { background: color-mix(in srgb, var(--danger) 10%, var(--panel)) !important; color: var(--danger) !important; border-color: color-mix(in srgb, var(--danger) 35%, var(--line)) !important; }
.xploy-backstage-embed :is(input, textarea, select) { background: var(--bg) !important; color: var(--text) !important; border-color: var(--line) !important; accent-color: var(--accent) !important; max-width: 100%; }
.xploy-backstage-embed :is(input, textarea, select):focus { border-color: var(--accent) !important; box-shadow: 0 0 0 3px var(--accent-glow) !important; }
.xploy-backstage-embed :is(h1,h2,h3,strong,label,dt,dd,.result-grid p) { color: var(--text); }
.xploy-backstage-embed :is(small, .fine-print, .muted, .support-note) { color: var(--muted); }
.xploy-backstage-embed :is(.eyebrow, label output, .placeholder-token) { color: var(--accent); }
.xploy-backstage-embed .stage-app-launch-arrow { color: var(--accent); background: var(--accent-soft); }
.xploy-backstage-embed :is(.notice:not(.error), .notice.good, .backstage-notice) { background: var(--accent-soft) !important; color: var(--text) !important; border-color: var(--accent-border) !important; }
.xploy-backstage-embed :is(.notice.error, .notice.bad) { background: color-mix(in srgb, var(--danger) 10%, var(--panel)) !important; color: var(--danger) !important; border-color: color-mix(in srgb, var(--danger) 35%, var(--line)) !important; }
.dashboard-page :is(.profile-slideshow-sections, .profile-slideshow-scroll-controls) { padding: 18px; background: var(--panel2); border: 1px solid var(--line); border-radius: 12px; }
.dashboard-page .profile-slideshow-sections { display: grid; grid-template-columns: repeat(auto-fit,minmax(160px,1fr)); gap: 12px; }
.dashboard-page .profile-slideshow-sections > p { grid-column: 1 / -1; margin-top: 0; }
.dashboard-page .profile-slideshow-section { display: flex; gap: 10px; align-items: center; min-height: 42px; color: var(--text); }
.dashboard-page .profile-slideshow-section input { width: 19px; height: 19px; flex: 0 0 19px; margin: 0; }
.dashboard-page :is(.show-data-actions select, .show-data-actions .contact-search) { background: var(--bg); color: var(--text); border-color: var(--line); }
/* A bounded grid prevents the non-wrapping tool strip from sizing the whole PWA. */
html:has(> body.dashboard-page) { width: 100%; height: 100%; overflow: hidden; overscroll-behavior: none; }
body.dashboard-page { position: fixed; inset: 0; width: 100%; max-width: 100%; height: 100%; height: 100dvh; min-width: 0; min-height: 0; overflow: hidden; overscroll-behavior: none; grid-template-columns: minmax(0, 1fr); grid-template-rows: auto minmax(0, 1fr); }
body.dashboard-page > .topbar, body.dashboard-page > main { min-width: 0; width: 100%; max-width: 100%; }
body.dashboard-page > main { min-height: 0; overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain; }
/* Lock the app frame, including top-layer dialogs, while retaining inner panning. */
html:has(> body.dashboard-page), body.dashboard-page, body.dashboard-page dialog { touch-action: pan-x pan-y; }
body.dashboard-page dialog { overscroll-behavior: none; }
.dashboard-page .topbar-main, .dashboard-page .tab-panel { min-width: 0; max-width: 100%; }
.dashboard-page .top-actions { width: 100%; min-width: 0; justify-content: flex-start; -webkit-overflow-scrolling: touch; touch-action: pan-x; }
.dashboard-page .workspace-tabs { min-width: 0; max-width: 100%; overflow-x: auto; overscroll-behavior-x: contain; touch-action: pan-x; }
.dashboard-page > .topbar { display: block; min-height: 0; padding: max(22px, env(safe-area-inset-top)) var(--space) 24px; background: var(--bg)ed; border-color: var(--line); }
.topbar-main { display: flex; align-items: center; justify-content: space-between; gap: 20px; max-width: 1496px; margin: auto; }
.dashboard-page .topbar h1 { font-size: clamp(28px, 3vw, 42px); font-weight: 650; letter-spacing: -.065em; line-height: 1.1; }
.dashboard-page .topbar h1 small { display: inline-block; margin-left: 14px; color: var(--muted); font-size: 13px; font-weight: 500; letter-spacing: .02em; vertical-align: middle; }
.dashboard-page .eyebrow { color: var(--muted); font-size: 10px; letter-spacing: .16em; line-height: 1.5; }
.dashboard-page .topbar .eyebrow { margin-bottom: 8px; }
.dashboard-page #cleanup-show { min-height: 44px; padding: 10px 15px; border: 1px solid color-mix(in srgb, var(--danger) 35%, var(--line)); background: color-mix(in srgb, var(--danger) 10%, var(--panel)); color: var(--danger); font-size: 12px; white-space: nowrap; box-shadow: none; }
.dashboard-page .top-actions { display: flex; flex-wrap: nowrap; overflow-x: auto; overscroll-behavior-x: contain; scrollbar-width: thin; scrollbar-color: var(--line) transparent; gap: 12px; max-width: 1496px; margin: 25px auto 0; padding-bottom: 8px; scroll-padding-inline: 4px; }
.dashboard-page .top-actions > * { display: flex; justify-content: center; align-items: center; min-height: 52px; margin: 0; padding: 12px 20px; border: 1px solid var(--line); border-radius: 10px; background: var(--panel); color: var(--text); font-size: 14px; font-weight: 600; }
.dashboard-page .top-actions .workspace-shortcut { justify-content: space-between; text-align: left; }
.dashboard-page .top-actions > * { flex: 0 0 auto; white-space: nowrap; }
.dashboard-page .top-actions .workspace-shortcut { min-width: 180px; gap: 28px; }
.dashboard-page .explore-panel { display: block; min-width: 0; }
.explore-status { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; margin: 20px 0; padding: 16px; border: 1px solid var(--line); border-radius: 12px; }
.explore-status .muted { flex: 1 1 220px; }
.explore-status .muted { font-size: 12px; line-height: 1.6; }
.explore-tabs, .explore-buttons { display: flex; gap: 10px; flex-wrap: wrap; margin: 16px 0; }
.explore-tabs button[aria-pressed="true"] { background: var(--accent); color: var(--on-accent); }
.explore-live-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)); gap: 18px; }
.explore-live-grid article { min-width: 0; border: 1px solid var(--line); border-radius: 12px; padding: 20px; background: var(--panel); }
.explore-live-grid pre { white-space: pre-wrap; overflow-wrap: anywhere; font: inherit; color: var(--text); min-height: 150px; max-height: 55vh; overflow-y: auto; }
.explore-panel form { display: grid; gap: 12px; margin: 20px 0; max-width: 720px; }
.explore-panel label { display: grid; gap: 8px; }
.explore-panel .explore-toggle { display: flex; align-items: center; gap: 12px; }
.explore-keyword-row { display:grid;grid-template-columns:minmax(0,1fr) 76px auto;gap:10px;align-items:end; }
.dashboard-page .explore-panel input[type=color] { padding:4px;min-height:46px;cursor:pointer; }
.explore-context-counts { display:grid;grid-template-columns:1fr 1fr;gap:12px; }
.explore-live-grid mark { border-radius:3px;padding:0 2px;box-decoration-break:clone;-webkit-box-decoration-break:clone; }
.explore-custom-app { display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0; }
@media(max-width:450px){.explore-keyword-row{grid-template-columns:minmax(0,1fr) 60px}.explore-keyword-row>button{grid-column:1/-1;justify-self:start}.explore-context-counts{gap:8px}}
.explore-toggle input { width: 20px; height: 20px; }
.explore-panel h3 { margin-top: 24px; }
.explore-panel details { border-top: 1px solid var(--line); margin-top: 28px; padding-top: 20px; }
.dashboard-page .workspace-shortcut span:last-child { font-size: 20px; color: var(--accent); }
.dashboard-page .top-actions .workspace-shortcut.active { border-color: var(--accent); background: var(--accent-glow); color: var(--accent); box-shadow: inset 3px 0 var(--accent); }
.dashboard-page > main { max-width: 1600px; padding: 24px var(--space) max(50px, env(safe-area-inset-bottom)); scrollbar-color: var(--line) var(--bg); }
.dashboard-page .workspace-tabs { gap: 3px; padding: 0 0 13px; margin: 0 0 32px; border: 0; border-bottom: 1px solid var(--line); border-radius: 0; background: transparent; scrollbar-width: thin; scrollbar-color: var(--line) transparent; }
.dashboard-page .workspace-tabs .workspace-tab { flex: 0 0 auto; min-height: 44px; padding: 11px 16px; border-radius: 7px; color: var(--muted); font-size: 13px; font-weight: 600; white-space: nowrap; }
.dashboard-page .workspace-tabs .workspace-tab.active { background: var(--accent); color: var(--on-accent); box-shadow: none; }
.dashboard-page :is(button, .button-link) { min-height: 44px; border-radius: 9px; font-weight: 650; }
.dashboard-page :is(button, a, input, select, textarea):focus-visible, .xploy-backstage-embed :is(button, a, input, select, textarea):focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; }
.dashboard-page :is(input, textarea, select), .xploy-backstage-embed :is(input, textarea, select) { color: var(--text); background-color: var(--bg); border-color: var(--line); font: inherit; }
.dashboard-page :is(input, select):not([type=checkbox]):not([type=radio]):not([type=range]) { min-height: 46px; }
.dashboard-page :is(input[type=checkbox], input[type=radio]) { accent-color: var(--accent); }
/* Shared backstage surfaces; stage screens and live mirrors retain their app appearance. */
.dashboard-page :is(.camera-ai-panel, .camera-pin-panel, .camera-ai-key-panel, .map-peek-research, .map-peek-source, .map-nearby-item, .map-radius-control, .map-profile-control, .pin-attempt-card, .call-role-card, .capture-device, .show-data-client, .profile-photo-range, .profile-key-location-row, .profile-copyable-row, .profile-contact-photo, .profile-contact-placeholder, .guide-tip, .guide-mode-card details, .guide-jumps, .guide-help, .guide-checks, .guide-shot-bar, .xploy-instructions-toolbar) { background: var(--panel); border-color: var(--line); color: var(--text); }
.dashboard-page :is(.map-peek-controls > label, .map-poi-options label, .camera-setting-toggle, .camera-ai-enable, .map-control-tabs) { background: var(--panel2); border-color: var(--line); color: var(--text); }
.dashboard-page :is(.map-control-tab.active, .profile-next-badge.armed, .camera-ai-pill.armed, .call-ready-pill.ready, .camera-ai-key-status.connected, .camera-pin-copy span.configured, .map-peek-controls button.is-success) { background: var(--accent-soft); border-color: var(--accent-border); color: var(--accent); }
.dashboard-page :is(.profile-report-card h4, .profile-contact-copy strong, .pin-attempt-card strong, .map-profile-control strong, .map-nearby-item strong, .map-view-details dd, .guide-card-copy h3, .guide-mode-card strong, .guide-mode-card summary, .guide-manual-card .guide-subhead, .show-photo-copy .show-photo-place-title) { color: var(--text); }
.dashboard-page :is(.team-panel .support-note, .guide-hero-copy p, .guide-mode-card ol, .guide-mode-card details ul, .guide-real-shot figcaption, .show-photo-copy .show-photo-place-detail) { color: var(--muted); }
.dashboard-page :is(.guide-jumps a, .guide-mode-card a, .guide-help a, .profile-report-card a, .map-peek-source a, .explore-panel a) { color: var(--accent); }
.dashboard-page .profile-next-fetch :is([data-action-state="saved"], [data-action-state="opening"]) { background: var(--accent); color: var(--on-accent); animation: xploy-button-confirm .55s ease 2; }
.dashboard-page .profile-next-fetch [data-action-state="saving"] { box-shadow: 0 0 0 3px var(--accent-glow); }
.dashboard-page :is(.profile-private-link button, .profile-next-actions button):active { box-shadow: 0 0 0 4px var(--accent-glow); }
@keyframes xploy-button-confirm { 50% { box-shadow: 0 0 0 5px var(--accent-glow); transform: scale(.98); } }
.dashboard-page :is(.profile-next-fetch, .calculator-panel, .camera-panel, .team-panel, .call-panel, .map-mode-panel, .pin-panel, .explore-panel) { min-width: 0; max-width: 100%; }
.dashboard-page :is(input, textarea, select) { max-width: 100%; }
.dashboard-page :is(.profile-source-option label, .profile-summary-toggle span, .profile-slideshow-toggle span, .calculator-heading > div, .camera-heading > div) { min-width: 0; overflow-wrap: anywhere; }
.dashboard-page .explore-panel :is(input:not([type=checkbox]), textarea, select) { width: 100%; min-width: 0; padding: 12px 14px; border: 1px solid var(--line); border-radius: 9px; }
.dashboard-page .explore-tabs button { background: var(--panel2); color: var(--muted); border: 1px solid var(--line); }
.dashboard-page .explore-tabs button[aria-pressed="true"] { color: var(--on-accent); border-color: var(--accent); background: var(--accent); }
.dashboard-page .explore-panel :is(.button-link, button:not(.danger)):not([data-explore-tab]) { background: var(--accent); color: var(--on-accent); border-color: var(--accent); }
.dashboard-page .explore-panel .danger { background: color-mix(in srgb, var(--danger) 10%, var(--panel)); color: var(--danger); border: 1px solid color-mix(in srgb, var(--danger) 35%, var(--line)); }
.dashboard-page dialog { background: var(--panel); color: var(--text); border-color: var(--line); }
.xploy-backstage-embed { --card: var(--panel); --card2: var(--panel2); --surface: var(--panel); --surface2: var(--panel2); --input: var(--bg); --subtle: var(--muted); --yellow: var(--accent); }
.xploy-backstage-embed :is(header, .header, .toolbar, .tabs, .tabbar, .subtabs, .card-header, .panel-header, .section-header, details, summary, .empty, .empty-state, .status, .preview-card, .setting-row) { background-color: var(--panel); border-color: var(--line); color: var(--text); }
.xploy-backstage-embed :is(button, .button, .btn) { font: inherit; border-radius: 9px; min-height: 44px; }
.xploy-backstage-embed :is(button, .button, .btn):not(.danger):not(.ghost):not(.google):not([aria-selected="false"]) { background-color: var(--accent); border-color: var(--accent); color: var(--on-accent); }
.xploy-backstage-embed :is(.ghost, button[aria-selected="false"]) { background-color: var(--panel2); border-color: var(--line); color: var(--text); }
body:is(.auth-body, .admin-body, .xploy-library-page) :is(.auth-card, .create-card, .user-card, .empty, .stage-link-card, .stage-app-card, .shortcut-card, .install-intro, .shortcut-device-list > div) { background: var(--panel); border-color: var(--line); color: var(--text); }
body:is(.auth-body, .admin-body, .xploy-library-page) :is(label, .setup-steps) { color: var(--text); }
body:is(.auth-body, .admin-body, .xploy-library-page) :is(input, select, textarea) { background: var(--bg); border-color: var(--line); color: var(--text); accent-color: var(--accent); }
body:is(.auth-body, .admin-body, .xploy-library-page) :is(input, select, textarea):focus { border-color: var(--accent); box-shadow: 0 0 0 3px var(--accent-glow); }
body:is(.auth-body, .admin-body, .xploy-library-page) :is(button.secondary, .button-link.secondary, .ghost-link) { background: var(--panel2); border: 1px solid var(--line); color: var(--text); }
body:is(.auth-body, .admin-body, .xploy-library-page) :is(.pair-code, .status-pill.online, .notice:not(.error)) { background: var(--accent-soft); border-color: var(--accent-border); color: var(--accent); }
.dashboard-page :is(.camera-pin-box, .camera-ai-key-box) { background: var(--panel); border-color: var(--line); min-width: 0; }
@media (max-width: 1000px) {
  .dashboard-page :is(.camera-pin-box, .camera-ai-key-box) { flex-direction: column; align-items: stretch; }
  .dashboard-page :is(.camera-pin-controls, .camera-ai-key-controls) { width: 100%; min-width: 0; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dashboard-page :is(.camera-pin-controls, .camera-ai-key-controls) input { grid-column: 1 / -1; }
}
.dashboard-page :is(.calculator-panel, .camera-panel, .team-panel, .call-panel, .pin-panel, .map-panel, .guide-hero, .guide-mode-card, .shortcut-card) { padding: clamp(22px, 3vw, 38px); border: 1px solid var(--line); border-radius: 18px; background: var(--panel); box-shadow: 0 16px 45px #0000001a; }
.dashboard-page :is(.calculator-heading, .camera-heading, .section-heading) { gap: 20px; }
.dashboard-page :is(h2, h3) { color: var(--text); letter-spacing: -.035em; }
.dashboard-page h2 { font-size: clamp(25px, 3vw, 35px); line-height: 1.2; }
.dashboard-page .calculator-heading h2 { margin-top: 8px; }
.dashboard-page .muted { color: var(--muted); line-height: 1.65; }
.dashboard-page .stage-app-actions { gap: 12px; margin-top: 24px; }
.dashboard-page .stage-app-launch { background: var(--accent); border-color: var(--accent); color: var(--on-accent); box-shadow: none; }
.dashboard-page .stage-app-launch-arrow { background: var(--accent-soft); color: var(--accent); }
.dashboard-page .show-live-button { color: var(--text); border-color: var(--line); background: var(--accent-soft); }
.dashboard-page .show-live-button[aria-pressed=true] { color: var(--on-accent); background: var(--accent); }
.dashboard-page :is(.count, .variant-badge, .profile-next-badge) { color: var(--accent); border-color: var(--accent-border); background: var(--accent-soft); }
.dashboard-page .calculator-control { padding-top: 10px; }
.dashboard-page .calculator-result-row { margin-top: 18px; padding: 14px 0; border-color: var(--line); }
.dashboard-page .calculator-form label { margin-bottom: 10px; line-height: 1.5; }
.dashboard-page .profile-builder-panel { gap: 28px; }
.dashboard-page .profile-builder-panel > div:first-child { max-width: 760px; }
.dashboard-page .profile-builder-panel .support-note { color: var(--muted); line-height: 1.65; }
.dashboard-page .profile-next-fetch { padding: clamp(18px, 2.5vw, 30px); gap: 20px; border-color: var(--line); background: var(--bg); border-radius: 14px; overflow: visible; }
.dashboard-page .profile-next-fetch > p { margin: 0; }
.profile-settings-tabs { display: flex; gap: 6px; padding: 5px; background: var(--bg); border: 1px solid var(--line); border-radius: 11px; overflow-x: auto; }
.profile-settings-tabs button { flex: 1 0 auto; padding: 12px 16px; background: transparent; color: var(--muted); font-size: 13px; }
.profile-settings-tabs button[aria-selected=true] { color: var(--accent); background: var(--accent-soft); }
.profile-settings-panel { display: grid; gap: 20px; min-width: 0; }
.dashboard-page .profile-source-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.dashboard-page :is(.profile-source-option, .profile-source-grid > label) { min-height: 72px; padding: 16px; border-color: var(--line); border-radius: 10px; background: var(--panel2); gap: 12px; line-height: 1.45; }
.dashboard-page .profile-source-option { flex-wrap: wrap; }
.dashboard-page .profile-source-option label { flex: 1 1 140px; gap: 12px; }
.dashboard-page .profile-source-option > .muted { flex-basis: 100%; padding-left: 31px; font-size: 11px; }
.dashboard-page .profile-source-option select { flex: 0 0 66px; width: 66px; }
.dashboard-page :is(.profile-source-option, .profile-source-grid > label):has(input:checked) { border-color: var(--accent-border); background: var(--accent-soft); box-shadow: inset 3px 0 var(--accent); }
.dashboard-page .profile-source-grid input { flex: 0 0 19px; }
.dashboard-page .profile-delete-option { padding: 18px; background: var(--panel2); border-color: var(--line); }
.dashboard-page .profile-delete-option input { accent-color: var(--accent); }
.profile-setting-intro h3 { margin: 8px 0 12px; font-size: clamp(24px, 3vw, 34px); line-height: 1.15; }
.profile-setting-intro p { max-width: 680px; margin: 0; }
.profile-summary-toggle, .profile-slideshow-toggle { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 22px; border: 1px solid var(--line); border-radius: 12px; background: var(--panel2); cursor: pointer; }
.profile-summary-toggle span, .profile-slideshow-toggle span { display: grid; gap: 6px; }
.profile-summary-toggle small, .profile-slideshow-toggle small { color: var(--muted); font-size: 12px; line-height: 1.6; }
.profile-summary-toggle input, .profile-slideshow-toggle input { appearance: none; flex: 0 0 48px; width: 48px; height: 28px; border: 1px solid var(--line); border-radius: 99px; background: var(--panel2); cursor: pointer; position: relative; }
.profile-summary-toggle input::after, .profile-slideshow-toggle input::after { content: ''; position: absolute; width: 18px; height: 18px; top: 4px; left: 4px; border-radius: 50%; background: var(--muted); transition: transform .18s ease; }
.profile-summary-toggle input:checked, .profile-slideshow-toggle input:checked { background: var(--accent); border-color: var(--accent); }
.profile-summary-toggle input:checked::after, .profile-slideshow-toggle input:checked::after { background: var(--on-accent); transform: translateX(20px); }
.profile-summary-prompt { display: grid; gap: 12px; }
.profile-summary-prompt textarea { display: block; width: 100%; min-height: 170px; padding: 18px; border: 1px solid var(--line); border-radius: 10px; line-height: 1.65; resize: vertical; }
.profile-summary-prompt textarea::placeholder { color: var(--muted); }
.profile-summary-prompt small { color: var(--muted); }
.profile-slideshow-options { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; }
.profile-slideshow-options select { padding: 10px 14px; border-radius: 9px; }
.profile-slideshow-options button { margin-left: auto; }
.dashboard-page .profile-next-actions { gap: 12px; padding-top: 20px; border-top: 1px solid var(--line); }
.dashboard-page .profile-private-link { gap: 16px 24px; padding: 24px; border-color: var(--line); background: var(--panel); }
.dashboard-page .profile-private-link legend { color: var(--text); }
.dashboard-page .document-section { margin-top: 36px; }
.dashboard-page .section-heading { margin-bottom: 20px; }
.dashboard-page :is(.profile-capture, .profile-report-card, .profile-contact-card, .show-photo-card, .document-card, .profile-voice-memo-card) { background: var(--panel); border-color: var(--line); border-radius: 12px; }
.dashboard-page .profile-capture > summary { padding: 22px; }
.dashboard-page .profile-capture-body { padding: 22px; gap: 22px; }
.dashboard-page .profile-report-card { padding: 22px; }
.dashboard-page .profile-report-card pre { line-height: 1.75; color: var(--text); }
.dashboard-page .profile-play-saved { justify-self: start; margin-bottom: 8px; color: var(--accent); border-color: var(--accent-border); }
.dashboard-page .mail-mode-embed { margin-top: 24px; padding-top: 24px; border-color: var(--line); }
.dashboard-page .mail-mode-embed iframe { background: var(--bg) !important; border-radius: 10px; }
.dashboard-page .notice { padding: 18px 22px; border-color: var(--accent-border); background: var(--accent-soft); color: var(--text); }
.dashboard-page .guide-hero { background: radial-gradient(ellipse at 85% 0, var(--accent-glow), transparent 65%), var(--panel); }
.dashboard-page .guide-hero-steps > div { background: var(--panel2); border-color: var(--line); }
.dashboard-page .guide-account-note { background: var(--panel); border-color: var(--line); }
/* Ember glow stays on active controls, not behind reading surfaces. */
.dashboard-page .top-actions .workspace-shortcut.active { box-shadow: inset 3px 0 var(--accent), inset 0 0 14px var(--accent-glow), 0 0 12px var(--accent-glow); text-shadow: 0 0 12px var(--accent-glow); }
.dashboard-page :is(.workspace-tab.active, .explore-tabs button[aria-pressed="true"], .stage-app-launch) { box-shadow: 0 0 14px var(--accent-glow); }
.dashboard-page :is(.profile-source-option, .profile-source-grid > label):has(input:checked) { box-shadow: inset 3px 0 var(--accent), 0 0 10px var(--accent-glow); }
.dashboard-page .guide-mode-card { --guide-color: var(--accent); }
.dashboard-page :is(.guide-reset, .guide-checks > p, .guide-real-shot) { background: var(--panel2); border-color: var(--line); color: var(--text); }
.dashboard-page :is(.status-pill, .camera-edit-badge, .camera-edit-badge.processing, .camera-edit-badge.pending) { background: var(--accent-soft); border-color: var(--accent-border); color: var(--accent); }
.dashboard-page :is(.camera-actions select, .camera-ai-grid input, .camera-ai-grid select, .camera-ai-prompt-label textarea, .camera-pin-controls input, .camera-ai-key-controls input, .apple-controls select, .apple-controls input, .profile-source-option select, .call-role-form input, .call-role-form select, .call-role-form textarea, .call-role-notes, .profile-key-location-row input) { background: var(--bg); color: var(--text); border-color: var(--line); }
.xploy-backstage-embed :is(.panel, .card, .settings, .section, .edit-card, .gmail-admin, .gmail-tools) { background-color: var(--panel); border-color: var(--line); }
.xploy-backstage-embed :is(.field input, .field textarea, .field select, .control input, .control select) { padding: 13px 15px; border-color: var(--line); background: var(--bg); color: var(--text); }
.xploy-backstage-embed :is(.panel-body, .section-body) { padding-top: 22px; padding-bottom: 22px; }
.xploy-backstage-embed .button:not(.ghost):not(.danger):not(.google) { background: var(--accent); border-color: var(--accent); color: var(--on-accent); }
.xploy-backstage-embed .eyebrow { color: var(--accent); }
.xploy-backstage-embed :is(h1, h2, h3) { letter-spacing: -.035em; }
#profile-slideshow { position: fixed; inset: 0; margin: 0; width: 100%; max-width: none; height: 100%; height: 100dvh; max-height: none; padding: 0; border: 0; border-radius: 0; background: radial-gradient(ellipse at 100% 0, var(--accent-glow), transparent 65%), var(--bg); color: var(--text); overflow: hidden; }
#profile-slideshow[open] { display: grid; grid-template-rows: auto auto minmax(0, 1fr) auto; }
#profile-slideshow::backdrop { background: #000e; }
.profile-slide-header { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: max(24px, env(safe-area-inset-top)) clamp(22px, 5vw, 80px) 16px; border-bottom: 1px solid var(--line); position: relative; z-index: 2; background: var(--bg); }
.profile-slide-header > div { min-width: 0; overflow-wrap: anywhere; }
.profile-slide-header form { flex: 0 0 auto; margin: 0; }
.profile-slide-header .eyebrow { color: var(--accent); }
.profile-slide-header p { margin: 5px 0 0; color: var(--muted); font-size: 12px; }
#profile-slide-close { min-width: 72px; min-height: 48px; padding: 10px 14px; border: 1px solid var(--line); background: var(--panel2); color: var(--text); font-size: 16px; touch-action: manipulation; }
.profile-slide-heading { padding: clamp(20px, 4vh, 44px) clamp(22px, 5vw, 80px) 18px; }
#profile-slide-title { margin: 6px 0 0; font-size: clamp(32px, 5vw, 72px); line-height: 1.05; letter-spacing: -.055em; }
#profile-slide-content { min-height: 0; min-width: 0; position: relative; z-index: 0; contain: paint; overflow: auto; overscroll-behavior: contain; padding: 8px clamp(22px, 5vw, 80px) 32px; scrollbar-color: var(--line) var(--bg); }
#profile-slide-content .profile-report-card { padding: 0; border: 0; background: transparent; max-width: 1100px; margin: auto; }
#profile-slide-content .profile-report-card > h4 { display: none; }
#profile-slide-content pre { max-height: none; overflow: visible; white-space: pre-wrap; overflow-wrap: anywhere; font: 400 calc(clamp(18px, 2.1vw, 28px) * var(--slide-font-scale, 1))/1.75 'Avenir Next', 'Avenir', 'Trebuchet MS', sans-serif; color: var(--text); }
#profile-slide-content figure { margin: 0; height: 100%; min-height: 180px; display: grid; grid-template-rows: minmax(0, 1fr) auto; gap: 14px; }
#profile-slide-content figure img { display: block; width: 100%; height: 100%; min-height: 0; object-fit: contain; }
#profile-slide-content figcaption { color: var(--muted); font-size: 13px; text-align: center; overflow-wrap: anywhere; }
#profile-slide-content iframe { display: block; width: 100%; height: 90%; min-height: 200px; margin-top: 15px; border: 1px solid var(--line); }
#profile-slide-content a { color: var(--accent); }
#profile-slide-content .profile-contact-card { padding: 22px; }
#profile-slide-content .profile-contact-copy strong { font-size: calc(24px * var(--slide-font-scale, 1)); }
#profile-slide-content .profile-contact-copy small { font-size: calc(16px * var(--slide-font-scale, 1)); line-height: 1.7; }
#profile-slide-content .profile-voice-memo-card { max-width: 800px; margin: 30px auto; padding: 32px; }
#profile-slide-content audio { width: 100%; margin: 24px 0; }
.profile-slide-footer { display: flex; justify-content: space-between; align-items: center; position: relative; gap: 20px; padding: 18px clamp(22px, 5vw, 80px) max(22px, env(safe-area-inset-bottom)); border-top: 1px solid var(--line); background: var(--panel); }
#profile-slide-position { color: var(--muted); font-size: 14px; font-variant-numeric: tabular-nums; }
.profile-slide-controls { display: flex; gap: 10px; }
.profile-slide-controls button { min-width: 50px; min-height: 46px; border: 1px solid var(--line); color: var(--text); background: var(--accent-soft); touch-action: manipulation; }
.profile-slide-footer { z-index: 2; flex-wrap: wrap; }
.profile-slide-track { pointer-events: none; }
.profile-slide-controls #profile-slide-pause { min-width: 88px; background: var(--accent); color: var(--on-accent); border-color: var(--accent); }
.profile-slide-track { position: absolute; bottom: 0; left: 0; width: 100%; height: 3px; background: var(--line); }
#profile-slide-progress { display: block; height: 100%; background: var(--accent); transition: width .3s ease; }
.slide-enter { animation: profile-slide-enter .32s ease both; }
@keyframes profile-slide-enter { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: none; } }
@media (min-width: 1200px) { .dashboard-page .profile-source-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 700px) {
  .dashboard-page .explore-panel { padding: 16px; }
  .explore-panel > h2 { margin: 10px 0; }
  .explore-panel > .muted { font-size: 14px; }
  .explore-status { margin: 12px 0; padding: 12px; gap: 8px; }
  .dashboard-page { --space: 18px; }
  .dashboard-page > .topbar { padding-bottom: 18px; }
  .dashboard-page .topbar h1 small { display: none; }
  .dashboard-page .top-actions { gap: 9px; margin-top: 22px; }
  .dashboard-page .top-actions > * { min-height: 46px; padding: 11px 14px; font-size: 13px; }
  .dashboard-page .top-actions > .button-link { min-height: 40px; padding: 7px 14px; font-size: 12px; background: transparent; }
  .dashboard-page > main { padding-top: 18px; }
  .dashboard-page .workspace-tabs { margin-bottom: 22px; }
  .dashboard-page .workspace-tabs .workspace-tab { padding: 10px 14px; }
  .dashboard-page :is(.calculator-panel, .camera-panel, .team-panel, .call-panel, .pin-panel, .map-panel) { padding: 22px 18px; }
  .dashboard-page .profile-source-grid { grid-template-columns: 1fr; }
  .dashboard-page .profile-next-fetch { padding: 16px; }
  .dashboard-page .profile-source-option > .muted { flex-basis: auto; padding-left: 0; }
  .dashboard-page .profile-private-link { grid-template-columns: 1fr; padding: 18px; }
  .dashboard-page .profile-private-link > * { grid-column: 1 !important; }
  .profile-slideshow-options button { width: 100%; margin: 8px 0 0; }
  .profile-settings-tabs button { flex: 1 1 0; min-width: 0; padding: 10px 8px; font-size: 11px; white-space: normal; }
  .profile-summary-toggle, .profile-slideshow-toggle { padding: 18px; gap: 16px; }
  .dashboard-page .profile-next-heading { align-items: flex-start; }
  .dashboard-page .profile-next-heading h3 { font-size: 18px; }
}
@media (prefers-reduced-motion: reduce) {
  .slide-enter { animation: none; }
  #profile-slide-progress, .profile-summary-toggle input::after, .profile-slideshow-toggle input::after { transition: none; }
}

/* Shared operator metrics. Never applied inside spectator documents or mirrors. */
body.dashboard-page, body.xploy-backstage-embed {
  --backstage-title-size:28px;
  --backstage-section-size:22px;
  --backstage-icon-size:56px;
  --backstage-card-space:clamp(18px,3vw,26px);
}
.xploy-backstage-embed, .dashboard-page .tab-panel { font-size:15px; line-height:1.55; }
.xploy-backstage-embed:not(.embedded):not(.embed-mode) > main { width:min(1180px,100%); margin:0 auto; padding:var(--backstage-card-space); }
/* The dashboard already supplies the outer gutter. Do not inset Safari twice. */
body.xploy-backstage-embed.embed-mode > main { width:100%; max-width:none; margin:0; padding:0; }
.dashboard-page #tab-safari > .safari-backstage-frame { border-radius:0; background:transparent; }
.xploy-backstage-embed .hero small { display:block; }
.xploy-backstage-embed form { gap:14px; }
.xploy-backstage-embed :is(h1,h2,h3), .dashboard-page .tab-panel :is(h2,h3) { font-family:inherit; font-weight:700; letter-spacing:-.035em; line-height:1.2; }
.xploy-backstage-embed h1 { font-size:var(--backstage-title-size); margin:5px 0 8px; }
.xploy-backstage-embed h2, .dashboard-page .tab-panel h2 { font-size:var(--backstage-section-size); margin:5px 0 8px; }
.xploy-backstage-embed h3, .dashboard-page .tab-panel h3 { font-size:18px; }
.dashboard-page :is(.calculator-heading,.camera-heading,.call-mode-heading,.pin-mode-heading) h2 { font-size:var(--backstage-title-size); margin:5px 0 8px; }
.xploy-backstage-embed :is(.hero,.backstage-top) p, .dashboard-page :is(.calculator-heading,.camera-heading,.call-mode-heading,.pin-mode-heading) p { font-size:15px; line-height:1.55; margin:0; }
.xploy-backstage-embed :is(small,.eyebrow), .dashboard-page .tab-panel .eyebrow { font-size:11px; line-height:1.5; }
.xploy-backstage-embed :is(.hero small,.eyebrow), .dashboard-page .tab-panel .eyebrow { font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
.xploy-backstage-embed label, .dashboard-page .tab-panel label { font-family:inherit; font-size:14px; font-weight:650; line-height:1.5; text-transform:none; letter-spacing:normal; }
.xploy-backstage-embed :is(button,.button,.btn,.backstage-button,.stage-app-launch,.backstage-top > a,.install-row a), .dashboard-page .tab-panel :is(button,.button-link) { font-family:inherit; font-size:14px; font-weight:650; line-height:1.35; min-height:46px; padding:11px 16px; border-radius:10px; max-width:100%; white-space:normal; }
.xploy-backstage-embed :is(input,select,textarea):not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]), .dashboard-page .tab-panel :is(input,select,textarea):not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]) { font-family:inherit; font-size:16px; line-height:1.4; min-height:46px; border-radius:10px; }
.xploy-backstage-embed :is(.hero,.card,.control-card,.mirror-card,.result-card,.library-card,.footer-card), .dashboard-page :is(.calculator-panel,.camera-panel,.call-mode-panel,.pin-mode-panel) { padding:var(--backstage-card-space); border-radius:18px; }
.xploy-backstage-embed :is(.hero,.backstage-top) > div { min-width:0; }
.xploy-backstage-embed .hero { display:grid; grid-template-columns:var(--backstage-icon-size) minmax(0,1fr) auto; gap:16px; align-items:start; }
.xploy-backstage-embed .hero > img, .dashboard-page :is(.calculator-card-icon,.camera-card-icon,.call-card-icon,.pin-card-icon) { display:block; width:var(--backstage-icon-size); height:var(--backstage-icon-size); flex:0 0 var(--backstage-icon-size); object-fit:contain; border-radius:14px; }
.dashboard-page :is(.calculator-heading,.camera-heading,.call-mode-heading,.pin-mode-heading) { align-items:start; gap:16px; }
.xploy-backstage-embed .stage-app-launch, .dashboard-page .tab-panel .stage-app-launch { display:inline-flex; align-items:center; justify-content:space-between; gap:16px; width:min(100%,220px); margin-top:14px; text-decoration:none; }
.xploy-backstage-embed .stage-app-launch-arrow, .dashboard-page .tab-panel .stage-app-launch-arrow { display:grid; place-items:center; flex:0 0 24px; width:24px; height:24px; padding:0; border-radius:7px; font-size:16px; line-height:1; color:var(--accent); background:var(--accent-soft); }
.xploy-backstage-embed .hero .status-pill { font-size:11px; font-weight:700; line-height:1.4; padding:7px 10px; margin:0; }
.xploy-backstage-embed .status-pill.offline { color:var(--muted); background:var(--panel2); border-color:var(--line); }
.xploy-backstage-embed .card-title i { flex:0 0 10px; width:10px; height:10px; background:var(--muted); box-shadow:none; }
.xploy-backstage-embed .card-title i.ready { background:var(--accent); box-shadow:0 0 14px var(--accent-glow); }
@media (max-width:600px) {
  .xploy-backstage-embed .hero { grid-template-columns:var(--backstage-icon-size) minmax(0,1fr); }
  .xploy-backstage-embed .hero > .status-pill { grid-column:2; grid-row:auto; justify-self:start; width:max-content; }
}
.explore-history-toolbar { display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:14px 0; }
.explore-reading-tools{margin:16px 0;padding:16px;border:1px solid var(--line);border-radius:14px}.explore-reading-tools>details{margin-top:16px}.explore-saved-run{display:flex;gap:8px;align-items:center;margin:10px 0}.explore-saved-run>button:first-child{flex:1;overflow-wrap:anywhere;text-align:left}
#explore-reader{display:none;position:fixed;inset:0;width:min(1100px,calc(100% - 24px));height:94dvh;max-height:94dvh;max-width:none;padding:0;margin:auto;border:1px solid var(--line,#554637);border-radius:18px;background:var(--panel,#17130f);color:var(--text,#f5f0e8);overflow:hidden;box-shadow:0 20px 80px #0009}
#explore-reader[open]{display:flex;flex-direction:column}#explore-reader::backdrop{background:#000b;backdrop-filter:blur(5px)}
#explore-reader .explore-reader-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px;border-bottom:1px solid var(--line);flex-shrink:0}#explore-reader h2{margin:0;font-size:20px}#explore-reader button{min-height:40px;padding:8px 12px;font-size:13px}#explore-reader label{display:flex;flex-direction:column;gap:4px;min-width:0;font-size:12px;font-weight:650}
.explore-reader-tools{display:grid;grid-template-columns:minmax(120px,1fr) minmax(160px,2fr);gap:8px;padding:12px 18px;border-bottom:1px solid var(--line);flex-shrink:0;max-height:47dvh;overflow:auto}.explore-reader-tools>details,.explore-reader-tools>.explore-reader-navigation,.explore-reader-keywords,.explore-reader-tools>p{grid-column:1/-1}.explore-reader-tools input,.explore-reader-tools select{width:100%;min-width:0;max-width:100%;box-sizing:border-box;height:40px;font:inherit}.explore-reader-tools summary{font-size:13px;cursor:pointer}.explore-reader-tools p{margin:0;font-size:12px;color:var(--muted)}
.explore-reader-keywords,.explore-reader-navigation{display:flex;flex-wrap:wrap;gap:6px}.explore-reader-keywords button{border-width:2px!important;background:var(--panel-2,#201910)!important;color:var(--text,#f5f0e8)!important}.explore-reader-settings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding-top:12px}.explore-reader-settings input[type=range]{padding:0}
#explore-reader-results{padding:10px 18px;overflow:auto;max-height:25dvh;border-bottom:1px solid var(--line);flex-shrink:0}#explore-reader-results[hidden]{display:none}#explore-reader-hits{display:grid;gap:6px;margin-bottom:10px}#explore-reader-hits button{display:flex;flex-direction:column;gap:5px;text-align:left;background:var(--panel-2,#231b14);color:var(--text,#f5f0e8)}#explore-reader-hits small{color:var(--muted);font-size:11px}#explore-reader-hits button[aria-current=true]{outline:2px solid var(--accent,#ff8d18)}
#explore-reader-scroll{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;scroll-behavior:auto;padding:22px clamp(18px,4vw,48px) 40px;--explore-reader-size:24px}#explore-reader-text article{padding:0 0 35px;margin:0 0 28px;border-bottom:1px solid var(--line)}#explore-reader-text h3{font-size:12px;line-height:1.4;color:var(--muted);font-weight:600;margin:0 0 18px}.explore-reader-passage{white-space:pre-wrap;overflow-wrap:anywhere;font-size:var(--explore-reader-size);line-height:1.65}.explore-reader-passage mark{border-radius:3px;padding:0 2px}.explore-current-match{outline:2px solid var(--text,#fff);outline-offset:1px;margin-inline:4px}#explore-reader-earlier,#explore-reader-later{margin:8px 0 22px}#explore-reader [hidden]{display:none!important}
@media(max-width:520px){#explore-reader{width:100%;height:100dvh;max-height:100dvh;border-radius:0}.explore-reader-tools{padding:10px 12px;grid-template-columns:minmax(90px,1fr) minmax(145px,1.5fr)}#explore-reader .explore-reader-header{padding:10px 12px}.explore-reader-navigation button{flex:1}.explore-reader-tools>details{padding:4px 0}.explore-saved-run{flex-wrap:wrap}}

.explore-image-control{border:1px solid #39332b;border-radius:16px;padding:18px;margin-top:24px;background:#15120f}.explore-image-control h3{margin-top:0}.explore-image-control input[type=file]{max-width:100%;padding:12px}.explore-image-control input[type=file]::file-selector-button{margin-right:12px;padding:10px;border:0;border-radius:8px;background:#ff901d;color:#16100a;font:inherit}.explore-image-control img{display:block;width:100%;max-width:420px;max-height:320px;object-fit:contain;background:#000;border-radius:12px;margin:16px 0}.explore-image-control img[hidden]{display:none}.explore-image-control p{overflow-wrap:anywhere}

/* Keep iPhone reader fields legible without focus zoom or clipped select text. */
#explore-reader .explore-reader-tools :is(input:not([type=range]),select){font-family:inherit;font-size:16px;font-weight:500;line-height:24px;min-height:48px;height:48px;padding:10px 12px;-webkit-appearance:none;appearance:none}
#explore-reader .explore-reader-tools select{padding-right:36px;background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-position:calc(100% - 19px) 21px,calc(100% - 13px) 21px;background-size:6px 6px;background-repeat:no-repeat}
@media(max-width:520px){#explore-reader .explore-reader-tools{grid-template-columns:minmax(140px,1fr) minmax(0,1.5fr)}}
@media(max-width:360px){#explore-reader .explore-reader-tools{grid-template-columns:minmax(0,1fr)}}

/* Section order uses the same themed rows as the rest of Stealth Profiler. */
.dashboard-page .profile-slideshow-sections { grid-template-columns: minmax(0,1fr); }
.dashboard-page .profile-slideshow-section { display:grid; grid-template-columns:minmax(0,1fr) 44px; gap:12px; width:100%; min-height:44px; }
.dashboard-page .profile-slideshow-section > label { min-width:0; display:flex; align-items:center; gap:10px; }
.dashboard-page .profile-slideshow-section .profile-section-handle { display:grid; place-items:center; width:44px; height:44px; min-width:44px; padding:10px; margin:0; color:var(--muted); background:transparent; border:0; box-shadow:none; border-radius:8px; cursor:grab; touch-action:none; -webkit-appearance:none; appearance:none; }
.dashboard-page .profile-section-handle > span { display:grid; gap:4px; width:20px; pointer-events:none; }
.dashboard-page .profile-section-handle i { display:block; height:2px; width:20px; border-radius:1px; background:currentColor; }
.dashboard-page .profile-section-handle:active { color:var(--text); cursor:grabbing; }
.dashboard-page .profile-section-handle:focus-visible { outline:2px solid var(--green); outline-offset:1px; }

.dashboard-page #profile-slideshow-sections .profile-slideshow-section.is-dragging { outline:2px solid var(--accent); outline-offset:4px; border-radius:6px; background:var(--accent-soft); box-shadow:0 0 0 5px var(--accent-soft); }
.dashboard-page .profile-slideshow-section.is-dragging .profile-section-handle { color:var(--accent); }

.dashboard-page .profile-section-availability { margin-left:auto; color:var(--muted); font-size:11px; font-weight:400; white-space:nowrap; }

/* Saved summary presets use the same account controls and stay within mobile width. */
.profile-prompt-library{display:grid;gap:10px;margin:16px 0;min-width:0}
.profile-prompt-library input,.profile-prompt-library select,#profile-run-delays select{width:100%;max-width:100%;min-width:0;box-sizing:border-box}
.profile-prompt-buttons{display:flex;flex-wrap:wrap;gap:8px}
.profile-prompt-library small{color:var(--muted);line-height:1.5}
#profile-run-delays label{min-width:0}
