/*
 CONSTELA 360 PRO · Visual System 1.0 · 2026-10-16
 Presentation-only extension: no scene geometry, state or event changes.
 Intended to load AFTER main.css. Reduced specificity outside page scopes.
 White / Graphite / Blue / Violet. Magenta limited to emphasis.
*/
:root {
  color-scheme: light;
  --constela-white: #FFFFFF;
  --constela-lavender: #F8F7FF;
  --constela-graphite: #1B1A31;
  --constela-blue: #2563D9;
  --constela-violet: #6929C4;
  --constela-magenta: #B72893;
  --constela-muted: #555A70;
  --constela-border: #E4E7EF;
  --constela-hover: #F2F5FD;
  --constela-elevation: 0 12px 30px rgba(27,26,49,.055);
  --constela-focus: 0 0 0 3px rgba(37,99,217,.22);
  --navy: var(--constela-graphite);
  --navy2: #2E334F;
  --blue: var(--constela-blue);
  --gold: var(--constela-violet);
  --goldlight: #DED4F7;
  --cream: var(--constela-white);
  --pastel: var(--constela-lavender);
  --mint: #F2F8FC;
  --rose: #FFF6FC;
  --ink: var(--constela-graphite);
  --muted: var(--constela-muted);
  --line: var(--constela-border);
  --shadow: var(--constela-elevation);
}
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
body { background:#fff; color:var(--constela-graphite); font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif; font-size:16px; -webkit-font-smoothing:antialiased; }
:where(p,li,label,.muted,.mini,.small) {overflow-wrap:break-word;}
a {color:var(--constela-blue);text-underline-offset:3px;}
a:hover {color:#1A4BAF;}
:where(button,input,select,textarea) {font-family:inherit;}
:where(button,a,input,select,textarea,summary):focus-visible {
  outline:3px solid var(--constela-blue);outline-offset:3px;
}
:where(button,input,select,textarea)[disabled] {cursor:not-allowed;opacity:.58;}
:where(input,textarea,select) {accent-color:var(--constela-blue);}
input:not([type="checkbox"]):not([type="radio"]):not([type="color"]),select,textarea {
  color:var(--constela-graphite);border:1px solid #C9D0E0;background:#fff;border-radius:11px;
  min-height:43px;line-height:1.45;
}
input:focus,textarea:focus,select:focus {border-color:var(--constela-blue);box-shadow:var(--constela-focus);outline:none;}
::placeholder {color:#686D80;opacity:1;}
::selection {background:#E6DBFF;color:#24203F;}
/* branding and chrome */
.site-header,.app-header {background:#fff;border-bottom:1px solid var(--constela-border);box-shadow:0 1px 0 rgba(27,26,49,.025);}
.brand {color:#17213A;letter-spacing:-.035em;}
.brand b {color:var(--constela-violet);}
.eyebrow {color:#4E3A82;letter-spacing:.115em;font-weight:780;}
.nav-info,.header-user,.muted {color:var(--constela-muted);}
.footer {border-top:1px solid var(--constela-border);background:#fff;}
/* consistent controls */
.btn,.scene-control,.tool,.mobile-drawer-close,.text-button {
  transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease,color .16s ease;
}
.btn {border-radius:12px;min-height:43px;font-size:.88rem;font-weight:700;letter-spacing:-.012em;}
.btn.primary {
  background:linear-gradient(105deg,var(--constela-violet),var(--constela-blue));
  color:white;border:1px solid transparent;box-shadow:0 3px 8px rgba(68,72,181,.12);
}
.btn.primary:hover {background:linear-gradient(105deg,#5820A9,#2054C3);box-shadow:0 5px 15px rgba(52,62,172,.18);}
.btn.secondary {background:#fff;color:var(--constela-graphite);border-color:#D6DCE9;}
.btn.secondary:hover {background:var(--constela-hover);border-color:#AEBFE9;}
.btn:active,.scene-control:active,.tool:active {transform:translateY(0);}
.btn:focus-visible,.scene-control:focus-visible,.tool:focus-visible {box-shadow:var(--constela-focus);}
.tool {border:1px solid #E1E5F0;border-radius:11px;background:#fff;color:#2C3049;font-size:.85rem;font-weight:650;box-shadow:none;min-height:43px;}
.tool:hover {background:var(--constela-hover);border-color:#C7D6F3;}
.tool.danger {background:#FFF9FA;color:#983846;border-color:#F2D7DC;}
.tool.danger:hover {background:#FFF0F3;}
/* landing / access */
.hero,.landing-content,.ethical,.dashboard {background:#fff;}
.hero h1 em {color:var(--constela-violet);}
.hero-copy .lead,.feature-grid p,.ethical p:last-child {color:var(--constela-muted);}
.hero-art img {box-shadow:var(--constela-elevation);border:1px solid var(--constela-border);}
.feature-grid article,.feature-grid article:nth-child(2),.feature-grid article:nth-child(3) {background:var(--constela-lavender);border-color:var(--constela-border);}
.feature-icon,.session-icon,.empty-icon {color:var(--constela-violet);}
.auth {background:radial-gradient(circle at 96% 6%,rgba(105,41,196,.045),transparent 40%),radial-gradient(circle at 0 95%,rgba(37,99,217,.045),transparent 42%),#fff;}
.auth-card {border-color:var(--constela-border);box-shadow:var(--constela-elevation);}
/* dashboard */
.dashboard {padding-top:clamp(22px,3vw,46px);}
.section-head h1 {color:var(--constela-graphite);font-weight:760;}
.session-card,.admin-strip,.empty {background:#fff;border:1px solid var(--constela-border);box-shadow:var(--constela-elevation);border-radius:18px;}
.session-card:hover {border-color:#C8D7F5;box-shadow:0 15px 32px rgba(27,26,49,.085);}
.admin-strip {background:#F8FAFF;}
.empty {background:linear-gradient(145deg,#fff,#FAF9FF);}
.softlink,.text-button {color:var(--constela-blue);}
/* editor: keep grid, IDs and DOM event targets untouched */
.studio-toolbar {background:#fff;border-color:var(--constela-border);padding:11px clamp(12px,1.7vw,25px);}
.studio-toolbar h1 {font-size:1.14rem;color:var(--constela-graphite);font-weight:750;}
.studio-toolbar .toolbar-actions {gap:7px;}
.studio-toolbar .toolbar-actions .btn {font-size:.79rem;padding:9px 12px;min-height:40px;white-space:nowrap;}
.studio-toolbar .toolbar-actions .btn.primary {padding-inline:17px;}
#saveStatus {color:var(--constela-muted);font-variant-numeric:tabular-nums;}
.participant-owner-status {color:#516073;}
.studio-layout {grid-template-columns:minmax(232px,248px) minmax(0,1fr) minmax(245px,262px);background:#fff;}
.studio-side,.studio-side.left,.studio-side.right {background:#fff;}
.studio-side {padding:20px 15px;scrollbar-color:#CFD8E8 transparent;}
.studio-side h2 {color:var(--constela-graphite);font-weight:750;letter-spacing:-.02em;}
.studio-side hr {border-color:#E9EBF3;}
.studio-side .tool {background:#fff;border-color:var(--constela-border);box-shadow:none;}
.studio-side .tool:hover {background:var(--constela-hover);border-color:#C0CFF1;}
.studio-side .tool.danger {background:#FFF9FA;border-color:#F2D7DC;color:#933E51;}
.studio-side .eyebrow {font-size:11px;}
/* catalogue: preserve scrolling, rendering, and button behavior */
.character-catalog {gap:9px;}
.character-card {background:#fff;border:1px solid #DEE3EF;border-radius:13px;box-shadow:none;overflow:hidden;}
.character-card:hover {border-color:#94ACEB;box-shadow:0 4px 14px rgba(37,99,217,.08);}
.character-card:focus-visible {outline:3px solid var(--constela-blue);outline-offset:2px;}
.character-card img {max-width:100%;}
.catalog-filter,.catalog-filter-label {color:var(--constela-graphite);}
/* 3D area: background is cosmetic only; canvas drawing and WebGL remain untouched */
.scene-wrap {background:#F2F7FA;border-color:var(--constela-border);}
.scene-pill {background:rgba(255,255,255,.93);color:#35405E;border:1px solid #DAE1EF;}
.scene-control {background:rgba(255,255,255,.96);color:#262D49;border-color:#D9E0ED;box-shadow:0 3px 10px rgba(22,33,66,.055);border-radius:10px;min-height:36px;}
.scene-control:hover {background:#F4F7FE;border-color:#A4B9EC;}
.scene-label {background:rgba(255,255,255,.97);color:#242F4B;border-color:#DCE2EF;box-shadow:0 4px 12px rgba(27,26,49,.07);font-size:12px;letter-spacing:0;}
.scene-label.selected {color:#452287;border-color:#9D7ADC;background:#F5F0FF;box-shadow:0 0 0 2px rgba(105,41,196,.16);}
.scene-label-compact {font-size:11px;opacity:.92;}
.scene-bottom {color:#3A4257;background:linear-gradient(90deg,rgba(255,255,255,.8),rgba(255,255,255,0));}
.guide-publish-status,.scene-top .guide-publish-status {color:#3B4966;background:#fff;border-color:#D7DEED;}
.pov-picker {background:rgba(255,255,255,.96);color:#343E5E;border-color:#DBE1EE;}
.pov-picker select {color:var(--constela-graphite);}
.owner-focus-badge {background:#F5F1FF;color:#4A258A;border-color:#CAB6F3;}
/* inspector and colors: never override actual swatch dynamic --swatch */
.inspector-form label,.studio-side label {color:#2D344B;font-weight:680;}
.pro-color-palette {gap:8px;}
.pro-swatch {border-radius:10px;box-shadow:0 0 0 1px #BBC7DD;}
.pro-swatch[aria-pressed="true"] {outline:3px solid var(--constela-violet);outline-offset:2px;}
.pro-swatch:hover,.pro-swatch:focus-visible {box-shadow:0 0 0 2px var(--constela-blue);}
/* overlays and professional panels */
.session-history-pane {background:rgba(255,255,255,.985);border-color:#E0E4EF;box-shadow:0 14px 48px rgba(27,26,49,.15);color:var(--constela-graphite);}
.session-history-header {padding-bottom:12px;border-bottom:1px solid #E8E9F1;}
.session-history-header h2 {color:var(--constela-graphite);}
.history-item,.workspace-template-item,.personal-proposal-card {background:#fff;border-color:#E2E6F0;}
.workspace-pane textarea {background:#fff;color:var(--constela-graphite);}
/* spectator: compact, neutral and visually subordinate to characters */
.viewer {background:#fff;}
.viewer .scene-wrap .viewer-view-modes {background:rgba(255,255,255,.96);border-color:#E0E5F0;box-shadow:0 6px 18px rgba(27,26,49,.09);}
.viewer .view-mode {color:#32364D;border-color:#DCE2EC;}
.viewer .view-mode.active,.viewer .viewer-quick-mode.active {background:#243B80;color:#fff;border-color:#243B80;}
.viewer .viewer-quick-mode {color:#242D4B;}
.viewer .viewer-menu-trigger {color:#343D62;}
.viewer .viewer-advanced-options summary {color:#33446D;}
.viewer .scene-wrap .viewer-compact-controls {background:rgba(255,255,255,.94);border-color:#E0E5F0;box-shadow:0 5px 16px rgba(27,26,49,.095);}
.viewer .scene-wrap .shared-focus-toast.facilitator-focus-only {background:rgba(247,246,255,.96);border-color:#C7B7EC;box-shadow:0 4px 12px rgba(36,28,81,.11);color:#3C296D;}
.viewer .scene-wrap .constela-facilitator-focus-tag {background:#253F86!important;border-color:#fff!important;box-shadow:0 3px 12px rgba(24,45,101,.24),0 0 0 2px rgba(37,99,217,.35)!important;}
.viewer .viewer-footer,.viewer-privacy-summary {background:#fff;color:#61677A;}
/* SaaS and admin */
.saas-main {background:#fff;}
.saas-card,.saas-metric {background:#fff;border:1px solid var(--constela-border);box-shadow:var(--constela-elevation);}
.saas-metric strong {color:var(--constela-graphite);}
.saas-metric span,.saas-use-head span {color:var(--constela-muted);}
.saas-plan {background:#F1EBFF;color:#5524A3;}
.saas-use-track {background:#E9EDF7;}
.saas-use-track span {background:linear-gradient(90deg,var(--constela-violet),var(--constela-blue));}
.saas-organization,.saas-member {border-color:var(--constela-border);}
/* user-facing status and destructive actions remain semantically distinct */
.alert {background:#FFF4F6;color:#88273A!important;border-color:#F1CAD5;}
.network-stats {color:#526078;border-color:#DCE2EF;}
:where(.btn,.tool,.scene-control) {touch-action:manipulation;}
/* compact breakpoints: do not alter drawer visibility / JS-controlled modes */
@media (max-width:1100px) and (min-width:851px){
 .studio-layout{grid-template-columns:195px minmax(0,1fr) 215px;}
 .studio-toolbar .toolbar-actions .btn{padding:8px 9px;font-size:.76rem;}
}
@media (max-width:850px){
 .studio-toolbar{padding:10px 12px;}
 .studio-layout,.studio.tools-collapsed .studio-layout,.studio.inspector-collapsed .studio-layout,.studio.tools-collapsed.inspector-collapsed .studio-layout{display:flex;flex-direction:column;}
 .studio-layout .studio-side.left,.studio-layout .studio-side.right {background:#fff;}
 .mobile-drawer-close {background:#F5F7FE;color:#252F4C;border-color:#DDE4F0;}
 .mobile-drawer-backdrop{background:rgba(16,18,43,.4);}
 .viewer .scene-wrap .viewer-compact-controls {max-width:calc(100% - 76px);}
 .viewer .scene-wrap .viewer-view-modes {border-color:#E1E5F0;}
}
@media (max-width:600px){
 .app-header,.site-header{padding:13px 16px;gap:9px;}
 .brand {font-size:1.12rem;}
 .nav-info,.header-user{font-size:.76rem;}
 .studio-toolbar {gap:7px;}
 .studio-toolbar .toolbar-actions {gap:6px;}
 .studio-toolbar .toolbar-actions .btn {min-height:42px;font-size:.76rem;padding:8px 10px;}
 .studio .scene-top .scene-control {min-height:36px;}
 .scene-label {font-size:12px;max-width:130px;padding:4px 8px;}
 .viewer .scene-wrap .viewer-view-modes {max-width:min(276px,calc(100% - 22px))!important;}
 .session-history-pane {border-radius:16px;}
 .dashboard{padding:22px 14px;}
 .section-head{flex-wrap:wrap;gap:12px;}
 .section-head h1{font-size:clamp(1.7rem,7vw,2.3rem);}
 .session-card,.admin-strip,.empty{padding:18px;border-radius:16px;}
 .admin-strip{flex-wrap:wrap;}
 .feature-grid{grid-template-columns:1fr;}
}
@media (max-width:390px){
 .viewer .scene-wrap .viewer-compact-controls {max-width:calc(100% - 64px);}
 .viewer .viewer-quick-mode {max-width:92px;padding-inline:8px;}
 .viewer .viewer-menu-trigger {min-width:35px;}
 .scene-label {font-size:11px;}
}
@media (max-height:500px) and (orientation:landscape){
 .viewer .scene-wrap .viewer-view-modes {max-height:calc(100dvh - 60px)!important;}
 .viewer .scene-wrap .viewer-compact-controls {top:max(5px,env(safe-area-inset-top,0px));}
}
@media (prefers-reduced-motion:reduce){
 .btn,.scene-control,.tool,.mobile-drawer-close,.text-button {transition:none!important;}
 .btn:hover {transform:none;}
}
@media (forced-colors:active){.btn.primary{background:ButtonFace;color:ButtonText;border:1px solid ButtonText;}.scene-label.selected{outline:2px solid Highlight;}}
/* Legibility baseline for low-vision and older users; maintain compact control layout. */
.mini {font-size:.78rem;line-height:1.5;}
.small {font-size:.875rem;line-height:1.5;}
.studio-side p,.viewer-footer,.saas-main p {line-height:1.55;}
/* Only painted controls change: selected figure, model-color values and touch targets remain functionally identical. */

/* CONSTELA 360 PRO v1.0.0 — Facilitator Workflow & Comfort.
   Overrides only editor composition and neutral scene surfaces. */
.studio .scene-wrap{background:radial-gradient(ellipse at 50% 38%,#f6f8fa 0%,#eef2f5 64%,#e7edf2 100%);}
.studio .scene-labels .scene-label{background:rgba(255,255,255,.97);border-color:#cad4e1;color:#1b1a31;box-shadow:0 3px 11px rgba(27,26,49,.10);}
.studio .scene-bottom > span{background:rgba(255,255,255,.86);border-radius:9px;padding:6px 9px;color:#39445b;}
.studio-side.right .constela-workflow{margin:0 0 8px;padding:0 0 3px;}
.constela-workflow-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 12px;}
.constela-workflow-head h2{font-size:1.04rem;margin:2px 0 0;}
.constela-workflow-head .eyebrow{margin:0;font-size:10px;}
.constela-workflow-scope{display:inline-flex;padding:4px 7px;border:1px solid #dde4f1;border-radius:99px;font-size:10px;font-weight:700;background:#f6f8fd;color:#475470;}
.constela-workflow-undo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;}
.constela-workflow-undo>.tool{min-width:0;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:3px 5px;margin:0;padding:8px 5px;min-height:46px;background:#f8f9fe;border-color:#dbe2ef;}
.constela-workflow-undo>.tool span{font-size:12px;font-weight:760;}
.constela-workflow-undo kbd{font-family:inherit;font-size:10px;line-height:1.1;font-weight:600;color:#556178;background:#fff;padding:3px 5px;border:1px solid #e2e8f2;border-radius:5px;}
.constela-workflow-undo>.tool:disabled,.constela-top-undo button:disabled{opacity:.48;cursor:not-allowed;}
.constela-workflow-actions{display:grid;grid-template-columns:1fr;gap:5px;margin-top:8px;}
.constela-workflow-actions>.tool{margin:0;min-height:38px;padding:8px 10px;font-size:12px;}
.constela-recent{margin-top:9px;padding:0;border:1px solid #e5e9f2;border-radius:9px;background:#fafbfe;overflow:hidden;}
.constela-recent summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:6px;align-items:center;padding:9px 10px;font-weight:720;font-size:12px;color:#303b53;}
.constela-recent summary::-webkit-details-marker{display:none;}
.constela-recent summary span{transition:transform .15s ease;}
.constela-recent[open] summary span{transform:rotate(180deg);}
.constela-recent ol{list-style:disc;margin:0;padding:0 10px 10px 26px;color:#4d5871;font-size:12px;line-height:1.5;}
.constela-recent li+li{margin-top:6px;}
.constela-top-undo{display:flex;align-items:center;gap:4px;border:1px solid #e2e7f1;border-radius:10px;padding:3px;background:#fafbff;}
.studio-toolbar .toolbar-actions .constela-top-undo .btn{width:34px;min-width:34px;padding:5px;min-height:33px;font-size:19px;border:0;background:transparent;color:#273350;}
.studio-toolbar .toolbar-actions .constela-top-undo .btn:hover:not(:disabled){background:#eaf0fc;}
.constela-history-toast{position:fixed;right:max(18px,env(safe-area-inset-right,0px));bottom:max(20px,env(safe-area-inset-bottom,0px));z-index:140;max-width:min(350px,calc(100vw - 24px));border:1px solid #cbd7ec;border-radius:12px;padding:10px 15px;background:#1b1a31;color:#fff;font-size:13px;box-shadow:0 12px 28px rgba(27,26,49,.23);pointer-events:none;}
.constela-history-toast.is-error{background:#8b2538;border-color:#b44955;}
.constela-history-toast[hidden]{display:none!important;}
@media(max-width:1250px){.constela-top-undo{display:none;}}
@media(max-width:1100px) and (min-width:851px){.constela-workflow-undo{gap:4px;}.constela-workflow-undo kbd{display:none;}}
@media(max-width:850px){
 .studio .studio-side.right .constela-workflow{margin-top:4px;}
 .constela-workflow-head h2{font-size:1.08rem;}
 .constela-workflow-undo>.tool{min-height:47px;}
 .constela-workflow-undo kbd{display:inline-block;}
 .constela-history-toast{bottom:max(12px,env(safe-area-inset-bottom,0px));}
}
@media(prefers-reduced-motion:reduce){.constela-recent summary span{transition:none;}}

/* ===============================================================
  CONSTELA 360 PRO · v1.0.1 · Soft Blue Workspace Edition
  Presentation-only CSS: preserves all existing class/ID event hooks.
  Canvas/WebGL palette is matched separately in scene.js.
  =============================================================== */
:root {
  --constela-stage: #EAF0F3;
  --constela-floor: #F7FAFC;
  --constela-ring: #D5DEE5;
  --constela-ring-edge: #CAD6DE;
  --constela-soft-border: #E5EAF0;
  --constela-muted: #59677B;
  --constela-panel-hover: #F5F7FC;
  --constela-elevation: 0 4px 18px rgba(27,26,49,.055);
}
/* 3D stage — neutral, no green cast. Same in fullscreen and guest. */
.studio .scene-wrap,
.viewer .scene-wrap,
.scene-wrap,
.viewer:fullscreen .scene-wrap,
.scene-wrap:fullscreen,
.viewer .scene-wrap.fullscreen-fallback,
.scene-wrap.fullscreen-fallback {
  background:var(--constela-stage);
  background-image:none;
}
.studio-layout { background:#fff; }
.studio-side.left,.studio-side.right {background:#fff;border-color:var(--constela-soft-border);}
/* Top actions: status, view and collaboration remain in their original DOM. */
.studio-toolbar {background:#fff;border-bottom:1px solid #E5EAF0;box-shadow:0 1px 5px rgba(27,26,49,.025);}
.studio-toolbar .toolbar-actions {align-items:center;row-gap:7px;}
.studio-toolbar .toolbar-actions .btn:not(.primary),
.studio-toolbar .toolbar-actions .panel-toggle {border-color:#DDE3ED;background:#fff;color:#263450;}
.studio-toolbar .toolbar-actions .btn:not(.primary):hover {border-color:#B8C8E6;background:#F5F7FF;}
.studio-toolbar .toolbar-actions .btn.primary {box-shadow:0 3px 11px rgba(69,63,178,.14);}
#saveStatus {color:#58677A;}
/* Left library: easy scanning and consistent 3D thumbnails. */
.catalog-filter {min-height:43px;border:1px solid #CBD6E5;border-radius:11px;background:#fff;color:#1B1A31;}
.character-catalog {gap:10px;}
.character-card {padding:8px;gap:7px;background:#fff;border:1px solid #DDE5EE;border-radius:12px;box-shadow:0 1px 5px rgba(27,26,49,.03);}
.character-card img {background:#F4F7FA;border-radius:9px;object-fit:contain;}
.character-card span {color:#243248;font-size:12px;line-height:1.4;overflow-wrap:anywhere;}
.character-card:hover {border-color:#9CB5E1;box-shadow:0 5px 16px rgba(37,99,217,.085);}
.character-card:focus-visible {outline:3px solid rgba(37,99,217,.65);outline-offset:1px;}
/* Right history and inspector — retain functional fields, buttons, and accordions. */
.studio-side.right .constela-workflow {padding-bottom:8px;border-bottom:1px solid #E5EAF0;}
.constela-workflow-head {margin-bottom:11px;}
.constela-workflow-undo>.tool {background:#F7F9FC;border:1px solid #DEE6EF;border-radius:11px;min-height:47px;}
.constela-workflow-undo>.tool:not(:disabled):hover {background:#EDF2FA;border-color:#AFC5E6;}
.constela-workflow-actions>.tool {border-color:#E1E7F0;background:white;}
.constela-recent {border-color:#E3E9F2;background:#F8FAFD;}
.constela-recent summary {color:#263650;}
.studio-side.right hr {border-color:#E7EBF1;}
.inspector-form label,.studio-side label {color:#2B364A;}
/* 3D HUD and labels: subtle shading, clear selection and focus. */
.scene-pill,.scene-control,.pov-picker,.guide-publish-status {
  border-color:#D7E2EE;background:rgba(255,255,255,.96);color:#2D3D59;
  box-shadow:0 2px 9px rgba(31,47,75,.045);
}
.scene-control:hover {background:#F7F9FE;border-color:#AFC2E0;}
.scene-label,.studio .scene-labels .scene-label,
.zone-label {background:rgba(255,255,255,.97);color:#24324B;border:1px solid #D7E0EA;box-shadow:0 3px 9px rgba(21,39,65,.09);}
.scene-label.selected,.studio .scene-labels .scene-label.selected {
  background:#F5F1FF;color:#44227D;border:1px solid #8F68D2;
  box-shadow:0 0 0 2px rgba(105,41,196,.13),0 4px 12px rgba(46,39,91,.10);
}
.scene-label-compact {opacity:.92;}
.zone-label.active {background:#F3F1FE;border-color:#9074C8;color:#482A84;}
.scene-bottom {background:none!important;border-radius:0;padding:0;}
.studio .scene-bottom>span,.scene-bottom>span {background:rgba(255,255,255,.83);color:#41516A;border:1px solid rgba(219,229,240,.8);border-radius:9px;padding:6px 9px;}
/* Viewer: one calm immersive language across all view modes. */
.viewer .scene-wrap .viewer-view-modes,
.viewer .scene-wrap .viewer-compact-controls {background:rgba(255,255,255,.95);border:1px solid #D9E2ED;box-shadow:0 5px 18px rgba(26,42,65,.08);}
.viewer .view-mode.active,.viewer .viewer-quick-mode.active {background:#243B80;color:#fff;border-color:#243B80;}
.viewer .scene-wrap .constela-facilitator-focus-tag {background:#243B80!important;border:1px solid #fff!important;color:#fff!important;}
.viewer .viewer-privacy-summary,.viewer .viewer-footer {color:#566378;background:#fff;}
/* Dashboard and SaaS — avoid dense panels and saturated fills. */
.session-card,.saas-card,.saas-metric,.team-item {border-color:#E1E7F0;box-shadow:0 5px 19px rgba(31,48,73,.045);}
.admin-strip {background:#F8FAFD;border-color:#DFE7F0;}
.saas-use-track {background:#E9EEF6;}
/* Responsive: keep the built-in drawer/fullscreen state and touch gestures untouched. */
@media (max-width:850px) {
  .studio-layout .studio-side.left,.studio-layout .studio-side.right {background:#fff;}
  .scene-wrap {border:0;border-radius:0;}
  .studio-side {scrollbar-color:#CAD4E1 transparent;}
  .viewer .scene-wrap .viewer-view-modes {max-width:calc(100% - 24px);}
}
@media (max-width:600px) {
  .scene-label {font-size:12px;line-height:1.25;padding:5px 8px;}
  .scene-top {gap:6px;}
  .scene-control {min-height:38px;}
  .studio-toolbar .toolbar-actions .btn {min-height:40px;}
  .constela-workflow-undo>.tool {min-height:44px;}
}
@media (prefers-contrast:more){
  .scene-label,.zone-label{border-color:#8B9EB5;color:#17263C;box-shadow:0 0 0 1px #8B9EB5;}
  .scene-label.selected{outline:2px solid #6929C4;}
}
@media (prefers-reduced-motion:reduce){
  .character-card,.scene-control {transition:none!important;}
}

/* ============================================================
   CONSTELA 360 PRO v1.0.2 — Workspace Refinement
   Scoped to the facilitator/editor only. No model or camera changes.
   ============================================================ */
.studio {min-width:0;max-width:100%;}
.studio .studio-toolbar {
 display:grid;grid-template-columns:minmax(155px,max-content) minmax(0,1fr);
 gap:12px;align-items:center;padding:10px clamp(12px,1.5vw,22px);
 position:relative;z-index:12;min-width:0;
}
.studio .studio-toolbar-title {min-width:0;max-width:230px;}
.studio .studio-toolbar-title .softlink{font-size:12px;}
.studio .studio-toolbar-title h1{font-size:clamp(15px,1.25vw,18px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.3;}
.studio .toolbar-actions {display:flex;flex-wrap:nowrap;gap:7px;align-items:center;justify-content:flex-end;min-width:0;position:relative;}
.studio .toolbar-actions>.btn {flex-shrink:0;white-space:nowrap;min-height:39px;padding:8px 13px;font-size:12px;}
.studio .toolbar-actions #saveBtn{order:5;}
.studio .toolbar-actions #shareBtn{order:4;}
.studio .toolbar-actions #saveStatus{order:1;flex:0 1 135px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;text-align:right;}
.studio .toolbar-actions .constela-top-undo{order:2;flex-shrink:0;}
.studio .toolbar-actions>.mobile-pane-btn{order:3;}
.studio .toolbar-actions .toolbar-more-root{order:6;display:flex;position:relative;align-items:center;min-width:0;}
.studio .toolbar-more-trigger {display:none;white-space:nowrap;}
.studio .toolbar-more-panel {display:flex;align-items:center;gap:7px;min-width:0;}
.studio .toolbar-more-panel>.btn {white-space:nowrap;padding:8px 11px;min-height:39px;font-size:12px;}
.studio .toolbar-more-panel #participantOwnerStatus {font-size:10px;max-width:150px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;}
.studio .studio-layout{grid-template-columns:clamp(204px,17vw,248px) minmax(0,1fr) clamp(232px,19vw,274px);min-width:0;}
.studio.tools-collapsed .studio-layout{grid-template-columns:0 minmax(0,1fr) clamp(232px,19vw,274px);}
.studio.inspector-collapsed .studio-layout{grid-template-columns:clamp(204px,17vw,248px) minmax(0,1fr) 0;}
.studio.tools-collapsed.inspector-collapsed .studio-layout{grid-template-columns:0 minmax(0,1fr) 0;}
.studio .studio-side{padding:16px 13px;}
.studio .studio-side.right {scrollbar-gutter:stable;}
.studio .constela-workflow-head h2 {font-size:15px;}
.studio .constela-workflow-undo .tool{min-height:44px;}
.studio .constela-workflow-actions .tool{min-height:37px;}
.studio .constela-workflow{margin-bottom:14px;}
.studio #inspector:has(>p.muted){background:#F8FAFD;border:1px solid #E4EAF2;border-radius:12px;padding:11px 12px;}
.studio #inspector>p.muted {font-size:12px;line-height:1.55;margin:0;}
.studio .constela-security-details{border-top:1px solid #E4EAF2;margin-top:17px;padding-top:4px;}
.studio .constela-security-details summary{display:flex;justify-content:space-between;align-items:center;gap:9px;cursor:pointer;list-style:none;font-size:13px;font-weight:750;color:#253651;padding:12px 2px;}
.studio .constela-security-details summary::-webkit-details-marker{display:none;}
.studio .constela-security-details[open] summary span{transform:rotate(180deg);}
.studio .constela-security-body{padding:2px 0 8px;}
.studio .constela-security-body .tool{margin-bottom:0;}
.studio .scene-wrap {min-width:0;}
/* Secondary actions become a genuine disclosure, not a clipped row. */
@media (max-width:1480px){
 .studio .toolbar-more-trigger {display:inline-flex;min-height:39px;padding:8px 12px;align-items:center;gap:8px;background:#fff;border:1px solid #DDE3ED;border-radius:10px;color:#263450;font-size:12px;font-weight:740;}
 .studio .toolbar-more-trigger span{font-size:19px;line-height:1;}
 .studio .toolbar-more-panel{display:none;position:absolute;right:0;top:calc(100% + 8px);min-width:230px;max-width:min(300px,calc(100vw - 24px));width:max-content;
  padding:10px;background:#fff;border:1px solid #DDE5F0;border-radius:14px;box-shadow:0 18px 45px rgba(27,26,49,.18);z-index:120;flex-direction:column;align-items:stretch;gap:6px;}
 .studio .toolbar-more-root.is-open .toolbar-more-panel{display:flex;}
 .studio .toolbar-more-panel>.btn {width:100%;white-space:normal;text-align:left;justify-content:flex-start;padding:11px 12px;min-height:42px;}
 .studio .toolbar-more-panel #participantOwnerStatus{max-width:none;white-space:normal;overflow:visible;font-size:12px;padding:6px 8px;}
 .studio .toolbar-more-panel .panel-toggle{display:flex!important;}
 .studio .toolbar-more-panel #exportBtn {display:flex!important;}
}
/* Broad landscape tablet: fit actions on a single short row. */
@media (min-width:851px) and (max-width:1100px){
 .studio .studio-toolbar{grid-template-columns:minmax(145px,180px) minmax(0,1fr);padding:9px 12px;gap:9px;}
 .studio .toolbar-actions>.btn{padding:7px 10px;font-size:11px;}
 .studio .toolbar-more-trigger{padding:7px 9px;font-size:11px;}
 .studio .toolbar-actions #saveStatus{max-width:95px;flex-basis:95px;}
 .studio .studio-layout{grid-template-columns:190px minmax(0,1fr) 220px;}
 .studio.tools-collapsed .studio-layout{grid-template-columns:0 minmax(0,1fr) 220px;}
 .studio.inspector-collapsed .studio-layout{grid-template-columns:190px minmax(0,1fr) 0;}
}
/* Mobile: existing official drawers remain the only two panels. */
@media (max-width:850px){
 .studio .studio-toolbar{display:flex;flex-direction:column;align-items:stretch;gap:8px;padding:9px 11px;}
 .studio .studio-toolbar-title{display:flex;max-width:100%;align-items:center;justify-content:space-between;gap:8px;}
 .studio .studio-toolbar-title h1{max-width:65vw;text-align:right;margin:0;}
 .studio .toolbar-actions {display:flex;flex-wrap:wrap;justify-content:flex-start;gap:6px;}
 .studio .toolbar-actions #saveStatus{order:-1;flex:1 1 100%;max-width:100%;text-align:left;}
 .studio .toolbar-actions>.mobile-pane-btn {display:inline-flex!important;}
 .studio .toolbar-actions #saveBtn{order:2;}
 .studio .toolbar-actions #shareBtn{order:3;}
 .studio .toolbar-actions .toolbar-more-root{order:4;}
 .studio .toolbar-actions .constela-top-undo{display:none;}
 .studio .studio-layout,.studio.tools-collapsed .studio-layout,.studio.inspector-collapsed .studio-layout,.studio.tools-collapsed.inspector-collapsed .studio-layout{display:flex;flex-direction:column;}
 .studio .studio-side{padding:17px 15px;}
 .studio .constela-workflow-head h2{font-size:16px;}
}
@media (max-width:530px){
 .studio .toolbar-actions>.btn,.studio .toolbar-more-trigger{min-height:42px;padding:9px 11px;font-size:12px;}
 .studio .toolbar-actions #saveBtn{order:2;}
 .studio .toolbar-actions #shareBtn{order:3;}
 .studio .toolbar-actions .toolbar-more-root{order:4;}
 .studio .toolbar-more-panel{right:0;}
}
@media (prefers-reduced-motion:reduce){.studio .constela-security-details summary span{transition:none;}}
@media (max-width:850px){
 /* Mobile has dedicated drawer buttons: don't expose desktop hide controls. */
 .studio .toolbar-more-panel .panel-toggle{display:none!important;}
}


/* ==============================================================
   CONSTELA PRO v1.0.3 · Menú de acciones nativo + responsive.
   Abierto sólo por <details open>. Evita que el CSS de 1.0.1
   convierta las opciones en otra fila fuera del menú.
   ============================================================= */
.studio .toolbar-actions .toolbar-more-root {
  display:block; order:6; position:relative; flex:0 0 auto;
  align-self:center; min-width:0; z-index:210;
}
.studio .toolbar-more-root > .toolbar-more-trigger {
  display:inline-flex !important; align-items:center; justify-content:center;
  gap:7px; list-style:none; min-height:40px;
  padding:8px 13px; border:1px solid #DDE3ED; border-radius:10px;
  background:#FFFFFF; color:#263450; font-size:12px; font-weight:700;
  cursor:pointer; user-select:none; white-space:nowrap;
}
.studio .toolbar-more-root > .toolbar-more-trigger::-webkit-details-marker {display:none;}
.studio .toolbar-more-root > .toolbar-more-trigger::marker {content:"";}
.studio .toolbar-more-root > .toolbar-more-trigger:hover,
.studio .toolbar-more-root[open] > .toolbar-more-trigger {
  background:#F4F6FF; border-color:#B8C8E6;
}
.studio .toolbar-more-root > .toolbar-more-trigger:focus-visible {
  outline:3px solid rgba(37,99,217,.42); outline-offset:3px;
}
.studio .toolbar-more-root > .toolbar-more-panel,
.studio .toolbar-more-root:not([open]) > .toolbar-more-panel {
  display:none !important;
}
.studio .toolbar-more-root[open] > .toolbar-more-panel {
  display:flex !important; position:absolute !important; top:calc(100% + 8px) !important;
  left:auto; right:0; transform:none;
  width:270px; min-width:0; max-width:calc(100vw - 20px);
  max-height:min(440px,65vh); overflow-x:hidden; overflow-y:auto;
  box-sizing:border-box; padding:10px; z-index:220;
  flex-direction:column; align-items:stretch; gap:6px;
  border:1px solid #DDE5F0; border-radius:14px; background:#FFFFFF;
  box-shadow:0 18px 48px rgba(27,26,49,.18);
  overscroll-behavior:contain;
}
.studio .toolbar-more-root[open] > .toolbar-more-panel > button {
  display:flex !important; width:100%; min-height:44px;
  align-items:center; justify-content:flex-start;
  text-align:left; padding:10px 12px; font-size:13px;
  white-space:normal; border-radius:9px;
}
.studio .toolbar-more-root .participant-owner-status {
  display:block; font-size:12px; color:#536077; line-height:1.45;
  max-width:none; white-space:normal;
  border-top:1px solid #E8ECF3; padding:9px 8px 4px;
}
@media (max-width:850px) {
  .studio .toolbar-actions .toolbar-more-root {order:4;}
  .studio .toolbar-more-root[open] > .toolbar-more-panel > .panel-toggle {display:none !important;}
}
@media (max-width:530px) {
  .studio .toolbar-more-root > .toolbar-more-trigger {min-height:42px;}
  .studio .toolbar-more-root[open] > .toolbar-more-panel {
    width:min(270px,calc(100vw - 20px)); max-height:min(340px,57vh);
  }
}

/* v1.1.0 Premium Library - accessible lightweight catalog, no WebGL layout overrides */
.studio-side.left .catalog-search{display:block;width:100%;min-width:0;box-sizing:border-box;padding:11px 12px;border:1px solid #CAD6E3;border-radius:11px;background:#fff;color:#1B1A31;font-size:14px;line-height:1.35;margin:4px 0 7px}
.studio-side.left .catalog-search:focus-visible{outline:3px solid rgba(37,99,217,.22);outline-offset:1px;border-color:#2563D9}
.studio-side.left .catalog-hint{line-height:1.45;margin:3px 0 11px}
.studio-side.left .character-catalog{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;align-items:stretch}
.studio-side.left .character-card-premium{min-width:0;min-height:0;display:flex;flex-direction:column;align-items:stretch;text-align:left;padding:6px;gap:6px;border:1px solid #DFE6EE;border-radius:13px;background:#fff;box-shadow:0 3px 9px rgba(27,26,49,.035);overflow:hidden;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}
.studio-side.left .character-card-premium:hover{border-color:#9FB8E7;box-shadow:0 7px 18px rgba(27,26,49,.075);transform:translateY(-1px)}
.studio-side.left .character-card-premium:focus-visible{outline:3px solid #2563D9;outline-offset:2px}
.studio-side.left .character-card-art{display:block;width:100%;aspect-ratio:3/4;max-height:168px;border-radius:9px;background:#F2F6F9;overflow:hidden;}
.studio-side.left .character-card-art img{display:block;width:100%;height:100%;object-fit:contain;object-position:50% 50%;margin:0;border:0;border-radius:0;background:transparent}
.studio-side.left .character-card-meta{display:grid;grid-template-columns:1fr;gap:4px;align-content:start;min-width:0}
.studio-side.left .character-card-badge{justify-self:start;font-size:10px;font-weight:700;line-height:1;border:1px solid #D9D5FA;background:#F4F2FF;color:#5140A1;border-radius:999px;padding:4px 6px}
.studio-side.left .character-card-name{font-weight:650;color:#1B1A31;font-size:11px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;min-height:30px}
.studio-side.left .character-card-code{font-size:10px;font-weight:750;color:#56657B}
.studio-side.left .catalog-empty{grid-column:1/-1;padding:13px;border-radius:10px;background:#F7FAFC}
@media (min-width:851px) and (max-width:1100px){.studio-side.left .character-catalog{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:850px){.studio-side.left .character-catalog{grid-template-columns:repeat(2,minmax(0,150px))}.studio-side.left .character-card-art{max-height:150px}}
@media (prefers-reduced-motion:reduce){.studio-side.left .character-card-premium{transition:none}.studio-side.left .character-card-premium:hover{transform:none}}

.studio-side.left .catalog-search{max-width:none;width:100%;flex:none}

/* v1.1.1 — Orientation dial always within reach, no right-panel scrolling. */
.studio #inspectorPane>.rotation-dock{
 position:sticky;top:0;z-index:9;display:block;background:rgba(255,255,255,.98);
 margin:-16px -13px 13px;padding:12px 13px 11px;border-bottom:1px solid #E0E6F1;
 box-shadow:0 7px 17px rgba(27,26,49,.06);backdrop-filter:blur(10px);
}
.rotation-dock-head{display:flex;align-items:center;justify-content:space-between;gap:7px;margin-bottom:7px}
.rotation-dock-head .eyebrow{font-size:10px;margin:0 0 2px;color:#5B6478;letter-spacing:.08em}
.rotation-dock-head strong{font-size:12px;color:#1B1A31;line-height:1.4;display:block;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;max-width:154px}
.rotation-dock-status{font-size:13px;font-weight:750;font-variant-numeric:tabular-nums;padding:5px 7px;border:1px solid #DBE4EF;border-radius:8px;background:#F6F8FC;color:#35435A}
.rotation-dock-body{display:grid;grid-template-columns:92px minmax(0,1fr);align-items:center;gap:10px}
.rotation-dial{width:88px;height:88px;position:relative;border-radius:50%;border:6px solid #E5EAF5;background:radial-gradient(circle at center,#FFFFFF 0 36%,#F8FAFE 37% 100%);box-shadow:inset 0 0 0 1px #C9D5E7,0 2px 7px rgba(27,26,49,.08);cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none;outline-offset:3px;box-sizing:border-box;}
.rotation-dial:focus-visible{outline:3px solid #2563D9}
.rotation-dial[aria-disabled="true"]{cursor:default;opacity:.46}
.rotation-dial-dragging{cursor:grabbing!important;box-shadow:inset 0 0 0 2px #6929C4,0 0 0 4px rgba(105,41,196,.13)}
.rotation-dial-ticks{position:absolute;inset:4px;border-radius:50%;background:repeating-conic-gradient(from -1.5deg,#C1CDDF 0 3deg,transparent 3deg 30deg);mask:radial-gradient(transparent 0 79%,#000 80% 100%);-webkit-mask:radial-gradient(transparent 0 79%,#000 80% 100%);pointer-events:none}
.rotation-dial-arrow{position:absolute;left:50%;top:50%;font-size:47px;font-weight:700;line-height:1;color:#6929C4;text-align:center;width:45px;height:46px;margin:0;transform-origin:center center;pointer-events:none;display:flex;align-items:center;justify-content:center;text-shadow:0 1px 1px #fff}
.rotation-dial-center{position:absolute;width:8px;height:8px;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;border:2px solid #6929C4;border-radius:50%;pointer-events:none}
.rotation-dock-controls{min-width:0;display:grid;gap:8px}
.rotation-readout{display:flex;justify-content:space-between;align-items:center;gap:6px}
.rotation-readout label{font-size:11px!important;font-weight:700!important;color:#42516A!important}
.rotation-degree-field{display:flex;align-items:center;background:#fff;border:1px solid #CCD7E8;border-radius:9px;padding:0 6px;height:36px;min-width:69px}
.rotation-degree-field input{width:42px!important;min-width:0!important;border:0!important;outline:0;background:transparent!important;text-align:right;font-family:inherit;font-size:14px;font-weight:700;line-height:1.3;color:#1B1A31;padding:0!important;margin:0!important;appearance:textfield;-moz-appearance:textfield}
.rotation-degree-field input::-webkit-inner-spin-button,.rotation-degree-field input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.rotation-degree-field span{font-size:12px;color:#617089}
.rotation-degree-field:focus-within{outline:2px solid #2563D9;outline-offset:1px}
.rotation-step-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px}
.rotation-step-row .rotation-step{min-height:33px;min-width:0;padding:3px 1px;border:1px solid #D8E0EE;border-radius:8px;background:#F8FAFE;color:#303C57;font-size:10px;font-weight:750;cursor:pointer;touch-action:manipulation}
.rotation-step-row .rotation-step:disabled{opacity:.45;cursor:default}
.rotation-step-row .rotation-step:not(:disabled):hover,.rotation-step-row .rotation-step:not(:disabled):focus-visible{background:#F2F0FF;border-color:#AFA3E7;color:#5B35AD}
.rotation-dock-help{margin-top:6px;font-size:10px;line-height:1.35;color:#617089}
.rotation-inspector-tip{background:#F8F7FF;border:1px solid #E6E1FC;border-radius:10px;padding:8px}
@media (max-width:850px){
 .studio #inspectorPane>.rotation-dock{margin:0 -15px 12px;padding:11px 15px;top:0;}
 .rotation-dock-body{grid-template-columns:98px minmax(0,1fr);gap:14px}
 .rotation-dial{width:94px;height:94px}
 .rotation-step-row{gap:5px}.rotation-step-row .rotation-step{min-height:40px;font-size:12px}
}
@media (max-width:370px){
 .rotation-dock-body{grid-template-columns:81px minmax(0,1fr);gap:8px}
 .rotation-dial{width:80px;height:80px}
 .rotation-dial-arrow{font-size:38px}
}
@media (prefers-reduced-motion:reduce){.rotation-dial,.rotation-step{transition:none!important}}
@media (min-width:851px) and (max-width:1150px){
 .rotation-dock-body{grid-template-columns:78px minmax(0,1fr);gap:6px}
 .rotation-dial{width:76px;height:76px}
 .rotation-dial-arrow{font-size:39px}
 .rotation-step-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}
 .rotation-step-row .rotation-step{min-height:30px;font-size:10px}
 .rotation-readout{flex-wrap:wrap;gap:3px}
 .rotation-dock-head strong{max-width:114px}
}
@media (max-width:850px){
 .studio #inspectorPane>.rotation-dock{top:54px}
}

/* v1.2.0 — Temporal & relational workspace: presentation-only CSS */
.constela-temporal-settings{padding:13px 10px;margin:12px 0;border:1px solid #DEE5EE;border-radius:13px;background:#F9FBFE}
.constela-temporal-settings h3{font-size:13px;margin:4px 0 10px;color:#25304B;line-height:1.45}
.constela-switch{display:flex;align-items:flex-start;gap:9px;font-size:12px;font-weight:650;line-height:1.45;margin:11px 0;color:#2C3754}
.constela-switch input{accent-color:#2563D9;margin:2px 0 0;width:16px;height:16px;flex:none}
.constela-temporal-settings .mini{margin:7px 0 0;color:#59677A}
.constela-timeline-labels{position:absolute;inset:0;pointer-events:none;z-index:4;overflow:hidden}
.constela-timeline-labels[hidden]{display:none!important}
.constela-time-label{position:absolute;transform:translate(-50%,-50%);font-size:clamp(9px,.76vw,12px);font-weight:800;letter-spacing:.12em;color:#53617B;background:rgba(255,255,255,.86);padding:5px 9px;border:1px solid #DBE4F1;border-radius:99px;box-shadow:0 2px 8px rgba(34,43,72,.06);white-space:nowrap}
.scene-labels .constela-relation-label{position:absolute;transform:translate(-50%,-50%);font-size:11px;font-weight:750;white-space:nowrap;border-radius:8px;padding:4px 7px;background:rgba(255,255,255,.94);border:1px solid var(--relation-color,#97A4B9);color:#2B344A;box-shadow:0 2px 6px rgba(19,35,58,.08);max-width:145px;overflow:hidden;text-overflow:ellipsis;z-index:3}
.constela-links-panel{margin:11px 0;border:1px solid #DEE6F0;border-radius:11px;background:#fff;padding:7px 10px}
.constela-links-panel summary{cursor:pointer;font-size:12px;font-weight:760;color:#2A3855;line-height:1.6}
.constela-link-list{max-height:280px;overflow-y:auto;display:grid;gap:8px;padding:8px 0}
.constela-link-list .mini{margin:3px 0}
.constela-link-item{border:1px solid #E5EAF3;border-radius:9px;padding:8px;display:grid;gap:5px;background:#FCFDFF}
.constela-link-description{font-size:11px;line-height:1.35;color:#58657B;overflow-wrap:anywhere}
.constela-link-item strong{font-size:12px;font-weight:770}
.constela-link-actions{display:flex;gap:6px}
.constela-link-actions button{background:white;border:1px solid #CBD5E2;border-radius:8px;font-size:11px;padding:5px 9px;cursor:pointer;color:#253352}
.constela-link-actions button:disabled{opacity:.45;cursor:not-allowed}
.constela-link-actions .constela-link-remove{color:#9F4051;border-color:#F2D6DC}
.constela-link-editor{border:1px solid #C9D6EE;border-radius:13px;padding:11px;margin:11px 0;background:#F5F8FF;box-shadow:0 4px 15px rgba(25,41,73,.05)}
.constela-link-editor[hidden]{display:none!important}
.constela-link-editor label{font-size:12px;font-weight:700;display:block;margin:10px 0 4px}
.constela-link-editor select,.constela-link-editor input{width:100%;min-width:0;box-sizing:border-box;padding:9px;border-radius:8px;border:1px solid #BAC9DC;background:white;color:#1B1A31;font-size:13px}
.constela-link-editor-actions{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0 2px}
.constela-link-editor-actions .btn{font-size:12px;min-height:36px;flex:1 1 auto;padding:8px}
@media(max-width:800px){.constela-temporal-settings{padding:12px 10px}.constela-time-label{font-size:9px;letter-spacing:.06em;padding:4px 6px}.scene-labels .constela-relation-label{font-size:10px;max-width:115px}}

/* CONSTELA PRO v1.2.1: Compact Compass, Clear Temporal Fields, Relationship Workspace */
.studio #inspectorPane>.rotation-dock.rotation-dock-mini{position:relative!important;top:auto!important;z-index:auto!important;display:flex;align-items:center;justify-content:space-between;gap:9px;padding:9px 11px!important;min-height:69px;max-height:none;margin:0 0 9px!important;border:1px solid #E1E8F1;border-radius:12px;background:#FBFCFF;box-shadow:none;}
.rotation-dock-mini .rotation-mini-meta{display:flex;flex-direction:column;min-width:0;flex:1;gap:3px}
.rotation-dock-mini .rotation-mini-meta .eyebrow{font-size:10px;letter-spacing:.06em;margin:0;color:#5B6478}
.rotation-dock-mini .rotation-mini-meta strong{color:#1B1A31;font-size:12px;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rotation-dock-mini .rotation-dock-status{align-self:flex-start;font-size:11px;padding:2px 5px}
.rotation-dock-mini .rotation-dial{width:65px;height:65px;flex:0 0 65px;border-width:5px;box-shadow:inset 0 0 0 1px #CDD7E9,0 2px 6px rgba(27,26,49,.06)}
.rotation-dock-mini .rotation-dial-arrow{font-size:34px;width:34px;height:35px}
.constela-sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.studio .scene-top .scene-pill[hidden]{display:none!important}
.studio .scene-top .constela-link-toolbar{font-size:12px;font-weight:760;border:1px solid #BEC8EC;background:#fff;color:#43308E;padding:8px 11px;white-space:nowrap}
.studio .scene-top .constela-link-toolbar[aria-expanded="true"],.studio .scene-top .constela-link-picking{background:#F0ECFF;border-color:#8867DB;color:#5627AD}
.constela-relations-workspace{position:absolute;z-index:35;left:13px;top:60px;max-height:min(480px,calc(100% - 86px));width:min(330px,calc(100% - 26px));display:flex;flex-direction:column;overflow-y:auto;padding:13px;background:#fff;border:1px solid #DAE3F1;border-radius:15px;box-shadow:0 16px 46px rgba(18,36,70,.20);box-sizing:border-box}
.constela-relations-workspace[hidden]{display:none!important}
.constela-relations-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.constela-relations-head strong{font-size:14px;color:#1B1A31}
.constela-relations-head button{height:30px;width:30px;border:1px solid #D8E0EE;border-radius:8px;background:#fff;color:#1B1A31;font-size:20px;cursor:pointer}
.constela-link-create{min-height:36px;flex:0 0 auto;margin:5px 0}
.constela-relations-workspace .constela-links-panel{margin:5px 0}
.constela-relations-workspace .constela-link-list{max-height:none;overflow:visible}
.constela-time-legend{position:absolute;z-index:4;left:50%;bottom:61px;transform:translateX(-50%);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:min(410px,calc(100% - 50px));overflow:hidden;border:1px solid #C8D7E7;border-radius:100px;background:rgba(255,255,255,.97);box-shadow:0 4px 15px rgba(32,45,75,.11);pointer-events:none;font-size:11px;font-weight:800;color:#263A55;text-align:center}
.constela-time-legend[hidden]{display:none!important}
.constela-time-legend span{padding:7px 6px}
.constela-time-legend span:nth-child(1){background:#FCE8CB}
.constela-time-legend span:nth-child(2){background:#DCEBFF}
.constela-time-legend span:nth-child(3){background:#DFF3E8}
.constela-time-label{background:rgba(255,255,255,.96);color:#1F3655;border:2px solid #A9BED5;font-size:11px;box-shadow:0 3px 11px rgba(15,37,72,.14)}
.scene-labels .constela-relation-label{font-weight:800;border-width:1.5px}
@media(max-width:800px){.constela-time-legend{bottom:64px;width:min(370px,calc(100% - 32px));font-size:10px}.constela-relations-workspace{top:65px;max-height:calc(100% - 132px)}.studio #inspectorPane>.rotation-dock.rotation-dock-mini{padding:8px 10px!important}.rotation-dock-mini .rotation-dial{width:68px;height:68px;flex-basis:68px}}


/* CONSTELA 360 PRO v1.2.2 — Clean Temporal Field
   Single stationary footer legend; no world-projected text on the board. */
.constela-timeline-labels,.constela-time-label{display:none!important}
.scene-wrap .constela-time-legend.constela-time-legend-clean{
 position:absolute;z-index:6;left:50%;right:auto;bottom:53px;
 transform:translateX(-50%);display:grid;
 grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;
 width:min(350px,calc(100% - 112px));min-width:0;max-width:100%;
 min-height:29px;overflow:hidden;white-space:nowrap;
 background:#FFFFFF;border:1px solid #CEDAE9;border-radius:999px;
 box-shadow:0 3px 12px rgba(22,42,70,.09);
 font-size:11px;font-weight:750;letter-spacing:.01em;color:#263952;
 pointer-events:none;user-select:none;
}
.scene-wrap .constela-time-legend.constela-time-legend-clean[hidden]{display:none!important}
.scene-wrap .constela-time-legend.constela-time-legend-clean span{
 display:flex;align-items:center;justify-content:center;
 min-width:0;min-height:29px;padding:4px 5px;
 box-sizing:border-box;line-height:1.2;
}
.scene-wrap .constela-time-legend.constela-time-legend-clean span:nth-child(1){background:#F6DFC0}
.scene-wrap .constela-time-legend.constela-time-legend-clean span:nth-child(2){background:#CEE0FA}
.scene-wrap .constela-time-legend.constela-time-legend-clean span:nth-child(3){background:#D5F0E2}
.scene-wrap .constela-time-legend.constela-time-legend-clean span+span{border-left:1px solid rgba(255,255,255,.90)}
@media(max-width:600px){
 .scene-wrap .constela-time-legend.constela-time-legend-clean{
  width:min(275px,calc(100% - 108px));bottom:55px;min-height:27px;
  font-size:10px;box-shadow:0 2px 8px rgba(22,42,70,.08)
 }
 .scene-wrap .constela-time-legend.constela-time-legend-clean span{min-height:27px;padding:3px 2px}
}
@media(max-width:360px){
 .scene-wrap .constela-time-legend.constela-time-legend-clean{width:min(230px,calc(100% - 106px));font-size:9px}
}


/* CONSTELA 360 PRO v1.2.3 — Temporal Board Integrated View */
.constela-time-legend,
.scene-wrap .constela-time-legend.constela-time-legend-clean{display:none!important}
.constela-time-board-labels{position:absolute;inset:0;z-index:2;pointer-events:none;user-select:none}
.constela-time-board-label{position:absolute;transform:translate(-50%,-50%);display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;min-height:24px;border-radius:999px;border:1px solid rgba(156,173,195,.52);background:rgba(255,255,255,.56);backdrop-filter:blur(1px);font-size:11px;font-weight:800;letter-spacing:.16em;color:#354764;text-transform:uppercase;opacity:.78;box-shadow:0 2px 8px rgba(24,39,63,.08);white-space:nowrap}
.constela-time-board-label-pasado{background:rgba(247,231,207,.68)}
.constela-time-board-label-presente{background:rgba(220,232,251,.70)}
.constela-time-board-label-futuro{background:rgba(221,242,229,.70)}
@media(max-width:800px){
 .constela-time-board-label{font-size:10px;letter-spacing:.12em;padding:2px 8px;min-height:22px;opacity:.82}
}
@media(max-width:480px){
 .constela-time-board-label{font-size:9px;padding:1px 7px;min-height:20px}
}

/* CONSTELA 360 PRO v1.3.0 G1 — Session colors and safe management */
.g1-dashboard{max-width:1360px;background:transparent}
.g1-dashboard .section-head{margin-bottom:28px}
.g1-section-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:26px 0 18px}
.g1-section-heading h2{font-size:1.35rem;margin:0 0 4px}
.g1-section-heading p{margin:0}
.g1-count{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;font-size:12px;font-weight:750;color:#473475;background:#F8F7FF;border:1px solid #E4DCF8;padding:5px 10px;border-radius:999px}
.g1-sessions-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:18px}
.g1-session-card{position:relative;padding:0 20px 18px;overflow:hidden;transition:box-shadow .18s ease,transform .18s ease;border:1px solid #E3E9F0;border-radius:17px;box-shadow:0 3px 14px #1B1A3109;background:#FFF}
.g1-session-card:hover{box-shadow:0 10px 25px #1B1A3114;transform:translateY(-2px)}
.g1-session-band{height:7px;margin:0 -20px 16px;background:var(--session-accent,#6B29C4)}
.g1-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.g1-session-symbol{font-weight:800;font-size:26px;color:var(--session-accent,#6B29C4);line-height:1}
.g1-session-state{font-size:11px;font-weight:750;color:#505C6C;background:#F4F7FA;border-radius:100px;padding:5px 9px;white-space:nowrap}
.g1-session-card h3{font-size:1.18rem;margin:12px 0 6px;color:#1B1A31;overflow-wrap:anywhere}
.g1-card-updated{margin:0 0 16px;color:#677184}
.g1-palette-row{border-top:1px solid #EDF0F5;padding:12px 0 14px;display:grid;gap:10px}
.g1-palette-row>.mini{font-size:11px;font-weight:700}
.g1-swatches{display:flex;flex-wrap:wrap;gap:7px}
.g1-swatch{position:relative;background:var(--swatch);border:2px solid #FFF;border-radius:50%;padding:0;min-width:27px;min-height:27px;width:27px;height:27px;box-shadow:0 0 0 1px #D9E0EB;transition:box-shadow .15s,transform .15s}
.g1-swatch:hover{transform:scale(1.1)}
.g1-swatch.is-selected{box-shadow:0 0 0 2px #1B1A31,0 0 0 4px #F3F5F8}
.g1-swatch:focus-visible{outline:3px solid #2563D9;outline-offset:3px}
.g1-card-actions{display:flex;gap:6px 12px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.g1-card-actions .btn{font-size:12px;padding:8px 12px;min-height:36px}
.g1-card-actions .text-button{font-size:12px;font-weight:750;text-decoration:none;color:#475E82}
.g1-danger-link{font-size:12px;font-weight:750;color:#A83F49;border:0;border-radius:9px;background:#FFF4F4;padding:8px 12px;min-height:36px}
.g1-danger-link:hover{background:#FBE3E3}
.g1-trash{margin-top:36px;border:1px solid #E3E9F1;border-radius:16px;background:#FFF;overflow:hidden;box-shadow:0 3px 14px #1B1A3108}
.g1-trash>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px;cursor:pointer;list-style:none}
.g1-trash>summary::-webkit-details-marker{display:none}
.g1-trash>summary strong{display:block;font-size:15px;color:#1B1A31}
.g1-trash>summary small{display:block;font-size:12px;font-weight:400;color:#627083;margin-top:5px}
.g1-trash>summary:before{content:'▸';color:#6B29C4;font-size:17px;margin-right:8px}
.g1-trash[open]>summary:before{content:'▾'}
.g1-trash-content{border-top:1px solid #EDF0F5;padding:10px 20px}
.g1-trash-item{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid #EDF0F5}
.g1-trash-item:last-child{border:0}.g1-trash-item b{font-size:13px}.g1-trash-item p{margin:5px 0 0}
.g1-trash-item .btn{min-height:36px;font-size:12px}
.g1-dialog{width:min(94vw,480px);max-height:90vh;overflow:auto;border-radius:20px;border:1px solid #E0E7F1;padding:26px;background:#FFF;color:#1B1A31;box-shadow:0 28px 80px #172B4540}
.g1-dialog::backdrop{background:rgba(17,30,54,.57)}
.g1-dialog h2{font-size:1.48rem;margin:10px 0 8px}
.g1-dialog p{font-size:14px;color:#536179}
.g1-dialog .g1-dialog-session{font-weight:800;color:#1B1A31;font-size:16px;padding:10px 13px;background:#F5F7FA;border-radius:10px;overflow-wrap:anywhere}
.g1-dialog-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#FFF0F0;color:#AE3F50;font-size:25px;font-weight:900}
.g1-dialog label{font-size:14px;font-weight:600;display:block}
.g1-dialog input{display:block;width:100%;margin:8px 0 12px}
.g1-dialog-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px;margin-top:20px}
.g1-delete-final{border:0;border-radius:12px;background:#B33949;color:#FFF;font-weight:750;padding:10px 17px;min-height:45px}
.g1-delete-final:hover:not(:disabled){background:#942A3B}
.g1-delete-final:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:650px){.g1-dashboard{padding:26px 14px}.g1-dashboard .section-head{align-items:flex-start;flex-wrap:wrap;gap:15px}.g1-session-card{padding:0 17px 17px}.g1-session-band{margin:0 -17px 15px}.g1-trash>summary{padding:15px 13px}.g1-trash-item{align-items:flex-start;flex-direction:column}.g1-trash-content{padding:10px 14px}.g1-dialog{padding:18px}}


/* CONSTELA 360 PRO v1.3.2 — G1 color selector, CSP-safe (no HTML inline styles). */
.g1-session-card{overflow:visible;background:linear-gradient(180deg,var(--g1-tint,#F3ECFA),#FFF 74%);border-color:var(--g1-border,#E4D6F2);isolation:isolate;--session-accent:#6B29C4}
.g1-session-card.g1-palette-open{z-index:15}
.g1-session-band{border-radius:16px 16px 0 0}
.g1-palette-row{grid-template-columns:1fr auto;align-items:center;gap:14px;position:relative}
.g1-palette-row>.mini{font-size:12px;font-weight:700}
.g1-color-control{position:relative;display:flex;justify-content:flex-end;min-width:42px}
.g1-color-trigger{display:grid;place-items:center;width:42px;height:42px;min-width:42px;padding:4px;border:1px solid #D4DCEB;border-radius:50%;background:#FFF;color:#1B1A31;box-shadow:0 1px 4px #16264B12;cursor:pointer;transition:box-shadow .15s,transform .15s,border-color .15s;touch-action:manipulation}
.g1-color-trigger:hover,.g1-color-trigger[aria-expanded="true"]{border-color:var(--session-accent);box-shadow:0 0 0 3px #DDD7F155;transform:scale(1.04)}
.g1-color-trigger:focus-visible,.g1-swatch:focus-visible{outline:3px solid #2563D9;outline-offset:3px}
.g1-color-trigger:disabled{opacity:.55;cursor:wait;transform:none}
.g1-color-dot{display:block;width:30px;height:30px;min-width:30px;min-height:30px;border-radius:50%;background-color:var(--session-accent);border:2px solid #FFF;box-shadow:0 0 0 1px #C6C9D7}
.g1-color-popover{position:absolute;z-index:20;top:calc(100% + 10px);right:0;width:267px;max-width:calc(100vw - 38px);padding:16px;border:1px solid #E0DCEC;border-radius:16px;background:#FFF;box-shadow:0 16px 45px #17233B26;text-align:left}
.g1-color-popover[hidden]{display:none!important}
.g1-color-popover-title{display:block;margin:0 0 14px;font-size:13px;line-height:1.4;color:#25233A}
.g1-color-popover .g1-swatches{display:grid;grid-template-columns:repeat(6,29px);justify-content:space-between;gap:11px 8px}
.g1-color-popover .g1-swatch{display:block;width:29px;height:29px;min-width:29px;min-height:29px;border:2px solid #FFF;border-radius:50%;padding:0;box-shadow:0 0 0 1px #B9C5D6;cursor:pointer;touch-action:manipulation;transition:transform .15s,box-shadow .15s}
.g1-color-popover .g1-swatch:hover{transform:scale(1.12)}
.g1-color-popover .g1-swatch.is-selected{box-shadow:0 0 0 2px #1B1A31,0 0 0 4px #EFF1F5}
.g1-color-tip{display:block;margin:14px 0 0;font-size:11px;line-height:1.45;color:#677184}
@media(max-width:350px){.g1-color-popover{width:242px}.g1-color-popover .g1-swatches{gap:9px 7px}}
.g1-session-card.g1-accent-0{--session-accent:#6B29C4;--g1-tint:#EDE5F8;--g1-border:#DBCCF1}
.g1-color-popover .g1-swatch.g1-swatch-0{background-color:#6B29C4}
.g1-session-card.g1-accent-1{--session-accent:#2563D9;--g1-tint:#E5ECFA;--g1-border:#CBDAF6}
.g1-color-popover .g1-swatch.g1-swatch-1{background-color:#2563D9}
.g1-session-card.g1-accent-2{--session-accent:#3F8F7A;--g1-tint:#E8F2EF;--g1-border:#D1E4DF}
.g1-color-popover .g1-swatch.g1-swatch-2{background-color:#3F8F7A}
.g1-session-card.g1-accent-3{--session-accent:#B79245;--g1-tint:#F6F2E9;--g1-border:#EEE5D2}
.g1-color-popover .g1-swatch.g1-swatch-3{background-color:#B79245}
.g1-session-card.g1-accent-4{--session-accent:#C4624B;--g1-tint:#F8ECE9;--g1-border:#F1D9D4}
.g1-color-popover .g1-swatch.g1-swatch-4{background-color:#C4624B}
.g1-session-card.g1-accent-5{--session-accent:#7858AF;--g1-tint:#EFEBF5;--g1-border:#DFD7EC}
.g1-color-popover .g1-swatch.g1-swatch-5{background-color:#7858AF}
.g1-session-card.g1-accent-6{--session-accent:#325D89;--g1-tint:#E6ECF1;--g1-border:#CED8E3}
.g1-color-popover .g1-swatch.g1-swatch-6{background-color:#325D89}
.g1-session-card.g1-accent-7{--session-accent:#A15C85;--g1-tint:#F4EBF0;--g1-border:#E8D8E2}
.g1-color-popover .g1-swatch.g1-swatch-7{background-color:#A15C85}
.g1-session-card.g1-accent-8{--session-accent:#588C9E;--g1-tint:#EBF1F3;--g1-border:#D7E3E8}
.g1-color-popover .g1-swatch.g1-swatch-8{background-color:#588C9E}
.g1-session-card.g1-accent-9{--session-accent:#7B8B55;--g1-tint:#EFF1EB;--g1-border:#DFE3D6}
.g1-color-popover .g1-swatch.g1-swatch-9{background-color:#7B8B55}
.g1-session-card.g1-accent-10{--session-accent:#D7446D;--g1-tint:#FAE9ED;--g1-border:#F5D2DC}
.g1-color-popover .g1-swatch.g1-swatch-10{background-color:#D7446D}
.g1-session-card.g1-accent-11{--session-accent:#EC8B42;--g1-tint:#FDF1E8;--g1-border:#FAE3D2}
.g1-color-popover .g1-swatch.g1-swatch-11{background-color:#EC8B42}
.g1-session-card.g1-accent-12{--session-accent:#E7B92E;--g1-tint:#FCF7E6;--g1-border:#F9EECD}
.g1-color-popover .g1-swatch.g1-swatch-12{background-color:#E7B92E}
.g1-session-card.g1-accent-13{--session-accent:#27A4A6;--g1-tint:#E5F4F4;--g1-border:#CBE9EA}
.g1-color-popover .g1-swatch.g1-swatch-13{background-color:#27A4A6}
.g1-session-card.g1-accent-14{--session-accent:#4C72B8;--g1-tint:#EAEEF6;--g1-border:#D4DDEE}
.g1-color-popover .g1-swatch.g1-swatch-14{background-color:#4C72B8}
.g1-session-card.g1-accent-15{--session-accent:#8F6BC9;--g1-tint:#F2EDF9;--g1-border:#E4DBF2}
.g1-color-popover .g1-swatch.g1-swatch-15{background-color:#8F6BC9}
.g1-session-card.g1-accent-16{--session-accent:#D56E9D;--g1-tint:#FAEEF3;--g1-border:#F5DCE7}
.g1-color-popover .g1-swatch.g1-swatch-16{background-color:#D56E9D}
.g1-session-card.g1-accent-17{--session-accent:#39A66D;--g1-tint:#E7F4ED;--g1-border:#CFEADC}
.g1-color-popover .g1-swatch.g1-swatch-17{background-color:#39A66D}
.g1-session-card.g1-accent-18{--session-accent:#91624B;--g1-tint:#F2ECE9;--g1-border:#E5D9D4}
.g1-color-popover .g1-swatch.g1-swatch-18{background-color:#91624B}
.g1-session-card.g1-accent-19{--session-accent:#748397;--g1-tint:#EEF0F3;--g1-border:#DEE1E6}
.g1-color-popover .g1-swatch.g1-swatch-19{background-color:#748397}
.g1-session-card.g1-accent-20{--session-accent:#D45D5D;--g1-tint:#FAECEC;--g1-border:#F5D8D8}
.g1-color-popover .g1-swatch.g1-swatch-20{background-color:#D45D5D}
.g1-session-card.g1-accent-21{--session-accent:#98A63F;--g1-tint:#F3F4E8;--g1-border:#E6EAD1}
.g1-color-popover .g1-swatch.g1-swatch-21{background-color:#98A63F}
.g1-session-card.g1-accent-22{--session-accent:#43506C;--g1-tint:#E8EAED;--g1-border:#D2D5DC}
.g1-color-popover .g1-swatch.g1-swatch-22{background-color:#43506C}
.g1-session-card.g1-accent-23{--session-accent:#BA69CE;--g1-tint:#F7EDF9;--g1-border:#EEDBF3}
.g1-color-popover .g1-swatch.g1-swatch-23{background-color:#BA69CE}

/* CONSTELA 360 G2 v1.4.0 — Center administration, role management and mobile access */
.g2-screen-reader-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.g2-header,.app-header{gap:12px}
.g2-org-picker{display:inline-flex;align-items:center;max-width:240px;flex:0 1 240px;margin:0}
.g2-org-picker select{width:100%;min-height:38px;padding:7px 32px 7px 12px;border:1px solid #DBE3F0;border-radius:11px;background:#F7F9FD;color:#17213B;font:650 12px/1.3 inherit;cursor:pointer}
.g2-org-picker select:focus-visible,.g2-main input:focus-visible,.g2-main select:focus-visible,.g2-main button:focus-visible{outline:3px solid #7357E5;outline-offset:2px}
.g2-org-name{display:inline-flex;align-items:center;max-width:220px;padding:8px 11px;border:1px solid #E3E9F3;border-radius:10px;background:#F8FAFD;color:#394566;font-size:12px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.g2-team-title{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px;flex-wrap:wrap}
.g2-team-title h2{margin:0}
.g2-main{width:min(1280px,calc(100% - 48px));margin:0 auto;padding:38px 0 70px;color:#14213C}
.g2-page-title,.g2-section-title{display:flex;align-items:flex-start;justify-content:space-between;gap:22px}
.g2-page-title{margin-bottom:24px;align-items:center}
.g2-page-title h1{margin:7px 0 8px;font-size:clamp(29px,3.2vw,40px);letter-spacing:-1.3px;line-height:1.15}
.g2-page-title .muted{max-width:710px;line-height:1.7;margin:0;font-size:14px}
.g2-page-title .btn{white-space:nowrap}
.g2-main h2{font-size:20px;letter-spacing:-.45px;margin:5px 0 12px;line-height:1.3}
.g2-main .eyebrow{letter-spacing:.14em;font-weight:800;font-size:10px;color:#674AB7}
.g2-notice{min-height:43px;padding:11px 14px;border:1px solid #E3E8F3;border-radius:12px;background:#F8FAFE;color:#4C5F7B;font-size:13px;margin-bottom:22px}
.g2-notice[data-kind="success"]{background:#F0F8F5;border-color:#D5EBDD;color:#275B47}
.g2-notice[data-kind="error"]{background:#FFF4F4;border-color:#F3CDCD;color:#942C3E}
.g2-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 20px}
.g2-metric{min-height:122px;padding:19px 20px;border:1px solid #E2E8F2;border-radius:17px;background:#FFF;box-shadow:0 5px 23px #0D29580A;display:flex;flex-direction:column;gap:9px}
.g2-metric>span{font-size:12px;color:#66718B;font-weight:650}
.g2-metric strong{font-size:clamp(18px,2vw,26px);letter-spacing:-.65px;color:#1A2340;line-height:1.25;overflow-wrap:anywhere}
.g2-metric small{font-size:11px;color:#8790A4;margin-top:auto}
.g2-columns{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(290px,1fr);gap:18px;align-items:start}
.g2-panel{padding:24px;border:1px solid #E1E7F1;border-radius:18px;background:#FFF;box-shadow:0 6px 29px #102D5809;min-width:0}
.g2-member-panel{min-width:0}
.g2-create-panel{background:linear-gradient(180deg,#F8F7FF 0,#FFF 60%)}
.g2-section-title{align-items:center;margin-bottom:15px}
.g2-section-title h2{margin-bottom:0}
.g2-search-label{display:flex;flex-direction:column;gap:6px;font-weight:700;font-size:12px;color:#36425F;margin:0;flex:1;min-width:0}
.g2-filter-bar{display:flex;gap:12px;align-items:end;margin:12px 0}
.g2-filter-bar .g2-search-label:first-child{flex:2}
.g2-main input,.g2-main select{box-sizing:border-box;min-width:0;min-height:43px;width:100%;border:1px solid #D8E0EC;border-radius:11px;background:#FFF;color:#1D2941;padding:9px 12px;font:500 13px/1.4 inherit}
.g2-main select{cursor:pointer}
.g2-hint{font-size:12px;color:#75819A;line-height:1.65;margin:12px 0 16px}
.g2-member-list{display:grid;gap:10px}
.g2-member{padding:16px;border:1px solid #E3E9F3;border-radius:13px;background:#FFF;min-width:0;display:grid;gap:13px;box-shadow:0 1px 4px #10234907}
.g2-member-head{display:flex;align-items:center;gap:9px;min-width:0;flex-wrap:wrap}
.g2-identity{display:flex;align-items:center;gap:10px;flex:1 1 210px;min-width:0}
.g2-avatar{width:39px;height:39px;min-width:39px;border-radius:12px;background:#F0EAFD;color:#5A37B4;display:grid;place-items:center;font-weight:800;font-size:15px}
.g2-person{min-width:0;display:flex;flex-direction:column;gap:4px}
.g2-person strong{font-size:13px;font-weight:800;line-height:1.3;color:#1C2944;overflow-wrap:anywhere}
.g2-person span{font-size:11px;color:#76839D;overflow-wrap:anywhere}
.g2-role-pill,.g2-member-status{border-radius:99px;padding:6px 9px;font-size:10px;font-weight:750;white-space:nowrap}
.g2-role-pill{background:#F2F0FB;color:#54358E}
.g2-member-status.is-active{background:#E8F5EE;color:#1C7350}
.g2-member-status.is-inactive{background:#FFF1F1;color:#A33646}
.g2-member-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px}
.g2-member-actions select{width:auto;max-width:190px;flex:1 1 140px;min-height:38px}
.g2-member-actions .btn{min-height:38px;padding:8px 12px;flex:0 0 auto}
.g2-member-actions .g2-suspend{color:#A93847;border-color:#F0D9DC;background:#FFF9FA}
.g2-self-note{color:#77839A;font-size:11px;font-weight:650}
.g2-empty{padding:30px 15px;text-align:center;border:1px dashed #CBD4E3;border-radius:13px;color:#788399;font-size:13px}
.g2-form{display:grid;gap:15px;margin-top:20px}
.g2-form label{display:flex;flex-direction:column;gap:7px;font-weight:750;font-size:12px;color:#3D4964}
.g2-form .btn{min-height:46px;justify-content:center}
.g2-guidance{margin-top:25px;padding:15px 16px;border:1px solid #E8E2FB;background:#F7F4FE;border-radius:13px;color:#4A3A7A}
.g2-guidance strong{font-size:12px}.g2-guidance p{font-size:12px;line-height:1.7;margin:7px 0 0}
.g2-main button:disabled{opacity:.54;cursor:wait}
@media(max-width:1000px){.g2-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.g2-columns{grid-template-columns:minmax(0,1fr)}.g2-create-panel{max-width:none}}
@media(max-width:650px){.g2-main{width:calc(100% - 28px);padding:26px 0 48px}.g2-page-title,.g2-section-title{flex-wrap:wrap}.g2-page-title>.btn{width:100%;justify-content:center}.g2-metrics{gap:10px}.g2-metric{padding:15px 12px;min-height:112px}.g2-metric strong{font-size:19px}.g2-panel{padding:18px 14px;border-radius:15px}.g2-filter-bar{flex-wrap:wrap}.g2-filter-bar .g2-search-label{flex:1 1 100%;width:100%}.g2-member{padding:13px}.g2-member-actions{justify-content:stretch}.g2-member-actions select{flex:1}.g2-member-actions .btn{flex:1}.app-header .user-head{flex-wrap:wrap;justify-content:flex-end;gap:8px}.g2-org-picker{flex:1 1 180px;max-width:100%}.g2-org-name{max-width:160px}}
@media(prefers-reduced-motion:reduce){.g2-main *, .g2-org-picker *{transition:none!important}}

/* CONSTELA 360 — G3 v1.5 · estadísticas agregadas, acordeón y filtros. */
.g3-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px}
.g3-metrics .g2-metric{min-height:116px}
.g3-metric-primary{border-color:#DDD5FF;background:linear-gradient(135deg,#FAF8FF 0%,#F4F5FF 100%)}
.g3-metric-primary strong{color:#542BC9;font-size:clamp(27px,3vw,36px)}
.g3-usage-summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:19px 23px;margin:0 0 9px;background:linear-gradient(110deg,#F6F2FF 0%,#F5F9FF 100%);border:1px solid #E1DFF8;border-radius:17px}
.g3-usage-summary h2{margin:3px 0 5px;font-size:clamp(17px,2vw,21px)}
.g3-usage-summary p:not(.eyebrow){margin:0;font-size:12px;line-height:1.5;color:#66738C}
.g3-adoption-visual{flex:0 0 176px;display:grid;gap:7px;justify-items:end}
.g3-adoption-visual strong{color:#5630BD;font-size:27px;line-height:1.1}
.g3-adoption-progress{width:100%;height:9px;display:block;appearance:none;border:0;border-radius:100px;overflow:hidden;background:#E2DFF3}
.g3-adoption-progress::-webkit-progress-bar{background:#E2DFF3;border-radius:99px}
.g3-adoption-progress::-webkit-progress-value{background:#6B31D8;border-radius:99px}
.g3-adoption-progress::-moz-progress-bar{background:#6B31D8;border-radius:99px}
.g3-definition{color:#6D7790;line-height:1.6;font-size:11px;margin:0 0 22px}
.g3-definition strong{font-weight:750;color:#4A5573}
.g3-filter-bar{display:grid;grid-template-columns:minmax(190px,1.5fr) repeat(3,minmax(128px,1fr));align-items:end;gap:11px}
.g3-filter-bar .g2-search-label:first-child{flex:none}
.g3-filter-bar .g2-search-label{font-size:11px}
.g3-filter-bar .g2-search-label input,.g3-filter-bar .g2-search-label select{width:100%;font-size:12px}
.g3-list-controls{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:14px 0 7px;flex-wrap:wrap}
.g3-list-controls .g2-hint{margin:0;flex:1 1 180px}
.g3-list-actions{display:flex;flex-wrap:wrap;gap:8px}
.g3-list-actions .btn{min-height:36px;padding:6px 11px;font-size:11px}
.g3-access-hint{margin:0 0 14px}
.g2-member.g3-member{display:block;padding:0;gap:0;overflow:hidden;box-shadow:0 1px 5px #10234908}
.g3-member[open]{border-color:#D8CBFB;box-shadow:0 6px 22px #42237A0B}
.g3-member-summary{list-style:none;display:flex;align-items:center;flex-wrap:wrap;gap:9px;min-width:0;padding:15px 16px;cursor:pointer;transition:background .15s ease}
.g3-member-summary::-webkit-details-marker{display:none}
.g3-member-summary::marker{content:''}
.g3-member-summary:hover{background:#FAF9FE}
.g3-member-summary:focus-visible{outline:3px solid #7357E5;outline-offset:-3px}
.g3-member-summary .g2-identity{flex:1 1 190px}
.g3-member-counters{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.g3-count{display:grid;min-width:68px;justify-items:center;gap:3px;padding:5px 8px;background:#F7F9FC;border:1px solid #EBEFF5;border-radius:10px}
.g3-count strong{font-size:16px;line-height:1;color:#263651}
.g3-count small{font-size:10px;color:#66748D;white-space:nowrap}
.g3-count.is-primary{background:#F4EEFF;border-color:#E7DAFD}
.g3-count.is-primary strong{color:#5F2EC7}
.g3-member-pills{display:flex;flex-direction:column;align-items:flex-end;gap:5px;flex:0 0 auto}
.g3-member-pills .g2-role-pill,.g3-member-pills .g2-member-status{padding:4px 7px;font-size:9px}
.g3-chevron{color:#6534C1;font-size:22px;font-weight:800;line-height:1;flex:0 0 auto;width:21px;text-align:center;transition:transform .16s ease}
.g3-member[open] .g3-chevron{transform:rotate(180deg)}
.g3-detail-body{padding:17px 17px 15px;border-top:1px solid #E8EAF4;background:linear-gradient(180deg,#FBFAFF,#FFF)}
.g3-person-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.g3-person-stat{display:flex;flex-direction:column;gap:5px;padding:10px;border:1px solid #E8EAF3;border-radius:10px;background:#FFF}
.g3-person-stat span{font-size:10px;color:#6F7B93}
.g3-person-stat strong{font-size:20px;color:#273654;line-height:1.2}
.g3-person-activity{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:14px 0;padding:0 1px;font-size:11px}
.g3-person-activity span{color:#737D91}
.g3-person-activity strong{color:#404968}
.g3-member-actions{padding:13px 0 8px;border-top:1px solid #E8EAF3}
.g3-permission-hint{display:block;text-align:right;font-size:10px;color:#78859F;line-height:1.45}
@media(max-width:1100px){.g3-filter-bar{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:780px){.g3-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.g3-member-pills{display:none}}
@media(max-width:500px){
 .g3-usage-summary{padding:16px;align-items:stretch;flex-direction:column;gap:10px}
 .g3-adoption-visual{flex:none;width:100%;grid-template-columns:auto 1fr;justify-items:start;align-items:center}
 .g3-metrics .g2-metric{min-height:101px}
 .g3-filter-bar{grid-template-columns:1fr;gap:10px}
 .g3-member-summary{padding:11px;gap:7px}
 .g3-member-summary .g2-identity{flex:1 1 calc(100% - 35px)}
 .g3-member-counters{flex:1 1 auto;justify-content:flex-start;padding-left:0}
 .g3-count{min-width:75px}
 .g3-member-pills{display:flex;flex-direction:row;justify-content:flex-end}
 .g3-chevron{order:2;margin-left:auto}
 .g3-person-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
 .g3-detail-body{padding:12px}
 .g3-list-actions{width:100%}
 .g3-list-actions .btn{flex:1 1 auto;justify-content:center}
 .g3-permission-hint{text-align:left}
}
@media(prefers-reduced-motion:reduce){.g3-member-summary,.g3-chevron{transition:none}}

/* === CONSTELA 360 · G4 Comunicaciones internas (CSP safe / responsive) === */
.g4-main{width:min(1280px,calc(100% - 48px));margin:0 auto;padding:38px 0 70px;color:#18233d}
.g4-main *{min-width:0}
.g4-hero{display:flex;justify-content:space-between;align-items:center;gap:22px;margin-bottom:19px}
.g4-hero h1{font-size:clamp(1.85rem,3.4vw,2.65rem);letter-spacing:-.04em;margin:5px 0 8px;color:#121e36}
.g4-hero .muted{font-size:13px;max-width:700px;margin-bottom:0}
.g4-hero .eyebrow,.g4-main .eyebrow{font-size:10px;letter-spacing:.15em;color:#7141b5;margin:0}
.g4-flash{padding:12px 16px;background:#edf8f4;border:1px solid #d6eae3;border-radius:11px;color:#26644b;font-size:13px;margin:0 0 17px}
.g4-flash[data-state=error]{background:#fff3f4;border-color:#f3d4d9;color:#a12845}
.g4-flash[data-state=info]{background:#f2f6fc;border-color:#e1e9f6;color:#3b5379}
.g4-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}
.g4-kpi,.g4-panel{background:#fff;border:1px solid #e4e9f1;border-radius:17px;box-shadow:0 3px 15px #10234908}
.g4-kpi{padding:19px 20px;display:grid;gap:6px;min-height:122px}
.g4-kpi>span{font-size:12px;color:#687894;font-weight:700}.g4-kpi strong{font-size:30px;color:#202c49;line-height:1.1}.g4-kpi:first-child strong{color:#673bd0}.g4-kpi small{font-size:11px;color:#78859d}
.g4-columns{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(290px,1fr);gap:14px;align-items:start}
.g4-panel{padding:24px}.g4-panel h2{font-size:19px;margin:5px 0 12px;letter-spacing:-.025em}.g4-panel h3{font-size:16px;letter-spacing:-.015em}
.g4-section-header{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.g4-section-header h2{margin-bottom:0}
.g4-main .btn{min-height:38px;padding:9px 14px;font-size:12px;border-radius:10px}
.g4-main .btn.primary{background:linear-gradient(115deg,#6720c7,#315be4);color:#fff}
.g4-filters{display:grid;grid-template-columns:170px minmax(0,1fr);gap:10px;margin-bottom:14px}
.g4-main label{font-size:11px;font-weight:750;color:#3b4964}
.g4-main input,.g4-main select,.g4-main textarea{padding:10px 12px;border-radius:10px;border:1px solid #d7dfee;background:#fff;width:100%;color:#243553;font-size:12px;font-family:inherit}
.g4-main textarea{resize:vertical;line-height:1.6}
.g4-main input:focus-visible,.g4-main select:focus-visible,.g4-main textarea:focus-visible{outline:2px solid #8352ea;outline-offset:1px}
.g4-feed{display:grid;gap:11px}
.g4-post{border:1px solid #e5eaf4;border-radius:15px;background:#fff;padding:17px 18px;overflow-wrap:anywhere}
.g4-post.is-unread{border-color:#d8c5f7;background:linear-gradient(135deg,#fefcff,#fff 42%);box-shadow:inset 3px 0 #7844df}
.g4-post-header,.g4-post-info,.g4-post-actions,.g4-survey-footer{display:flex;align-items:center;flex-wrap:wrap;gap:7px}
.g4-post-header{justify-content:space-between;gap:8px;margin-bottom:10px}
.g4-tag{font-size:10px;font-weight:750;border-radius:999px;padding:4px 9px;background:#f3f5f9;color:#53627e;border:1px solid #edf0f6}
.g4-tag.g4-source{background:#f2ecff;color:#6837c4;border-color:#e8ddff}
.g4-tag.g4-survey{background:#edf4ff;color:#2854ae;border-color:#dbe8ff}
.g4-tag.g4-important{background:#fff3ec;color:#b35625;border-color:#ffe3d4}
.g4-tag.g4-new{background:#e9faf2;color:#24714d;border-color:#d4f0e0}
.g4-tag.g4-closed{background:#f5f5f7;color:#7b8192}
.g4-date{color:#8290a7;font-size:10px}
.g4-post h3{margin:0 0 6px;color:#17223c;font-size:16px;font-weight:800;line-height:1.4}
.g4-post-body{font-size:13px;line-height:1.7;white-space:pre-wrap;color:#45536c;margin-bottom:9px}
.g4-post-author{font-size:10px;color:#7b879b;margin-bottom:9px}
.g4-post-actions{margin-top:12px;border-top:1px solid #f0f1f6;padding-top:12px}
.g4-post-actions .g4-danger{color:#a83b56;border-color:#f2d6dd;background:#fffafb}
.g4-survey-footer{margin:12px 0 10px}
.g4-answer-form{display:grid;gap:12px;padding:14px;border:1px solid #e8e5f5;background:#fbfaff;border-radius:12px}
.g4-answer-form .btn{justify-self:start}
.g4-choice-list{display:grid;gap:7px}
.g4-choice{display:flex!important;align-items:center;gap:9px;font-size:12px!important;background:#fff;padding:10px 12px;border:1px solid #e3e6ef;border-radius:10px;cursor:pointer}
.g4-choice input{width:17px;height:17px;accent-color:#6b37c9;flex:none;margin:0}
.g4-admin-stack{display:grid;gap:14px}.g4-compose{background:linear-gradient(155deg,#fbf9ff,#fff 46%)}
.g4-compose>p.muted{font-size:12px;line-height:1.6}
#g4CreateForm{display:grid;gap:12px}
#g4CreateForm label{display:grid;gap:6px}
#g4SurveyFields{display:grid;gap:12px}
#g4SurveyFields[hidden],#g4OptionsField[hidden],#g4PriorityField[hidden],#g4Workspace[hidden],#g4Setup[hidden]{display:none!important}
#g4CreateBtn{width:100%}
.g4-form-note,.g4-helper{font-size:11px;color:#7a849b;line-height:1.6;margin:12px 0 0}
.g4-results h3{margin:0 0 6px}.g4-result-total{font-size:13px;color:#68758e}
.g4-tally{display:grid;gap:12px;margin:14px 0}.g4-tally-title{display:flex;justify-content:space-between;gap:10px;font-size:11px;color:#56627c}.g4-tally-title strong{color:#432881}
.g4-tally progress{width:100%;height:9px;accent-color:#7750d9;margin-top:6px}
.g4-csv{margin:8px 0 12px}.g4-response-list{display:grid;gap:8px;max-height:420px;overflow:auto;overscroll-behavior:contain}
.g4-response{border:1px solid #e9edf6;border-radius:11px;padding:11px 12px;display:grid;gap:4px;background:#fff}
.g4-response strong{font-size:11px;color:#283752}.g4-response p{font-size:12px;color:#47556a;margin:4px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}
.g4-error{color:#a12f49}.g4-empty{padding:20px;color:#77839c;font-size:12px;text-align:center;border:1px dashed #d8ddea;border-radius:10px;margin:0}
.g4-nav-link{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.g4-nav-pill{background:#6636d5;border-radius:99px;padding:1px 6px;min-width:20px;font-size:10px;font-weight:800;text-align:center;color:white}
.g4-nav-pill[hidden]{display:none!important}
@media(max-width:980px){.g4-columns{grid-template-columns:1fr}.g4-admin-stack{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.g4-main{width:calc(100% - 28px);padding:24px 0 48px}.g4-hero{align-items:flex-start;flex-direction:column}.g4-hero .btn{width:100%}.g4-kpis{gap:7px}.g4-kpi{padding:13px 12px;min-height:105px}.g4-kpi strong{font-size:24px}.g4-kpi span,.g4-kpi small{font-size:10px}.g4-admin-stack{grid-template-columns:1fr}.g4-panel{padding:16px}.g4-filters{grid-template-columns:1fr}.g4-post{padding:14px}.g4-main .g4-post-actions .btn{flex:1 1 auto}.app-header .user-head{flex-wrap:wrap;gap:8px;justify-content:flex-end}.app-header{gap:8px;flex-wrap:wrap}.g4-nav-link{font-size:12px}}
@media(max-width:390px){.g4-kpis{grid-template-columns:1fr 1fr}.g4-kpi:last-child{grid-column:1/-1;min-height:88px}.g4-hero h1{font-size:1.8rem}.app-header .user-head{width:100%;justify-content:flex-start}}
@media(prefers-reduced-motion:reduce){.g4-main *{scroll-behavior:auto}}

/* CONSTELA 360 · G4.1 lectura prioritaria (alto contraste, sin alertas invasivas). */
#g4UnreadSpotlight[hidden]{display:none!important}
.g4-unread-spotlight{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:17px;
 padding:20px 22px;margin:0 0 18px;border:1px solid #5d3dc9;border-radius:18px;
 color:#fff;background:linear-gradient(112deg,#32166f 0%,#5d2fbb 55%,#334ccc 100%);
 box-shadow:0 12px 30px rgba(55,30,131,.17)}
.g4-spotlight-icon{width:52px;height:52px;display:grid;place-items:center;flex:none;border:1px solid #ffffff55;border-radius:15px;background:#ffffff1c;font-size:28px;line-height:1}
.g4-spotlight-content{min-width:0}.g4-spotlight-eyebrow{color:#e6ddff!important;font-size:10px;font-weight:800;letter-spacing:.12em;margin:0 0 6px!important}
.g4-unread-spotlight h2{font-size:clamp(17px,2vw,24px);font-weight:850;line-height:1.2;letter-spacing:-.02em;margin:0 0 6px;color:#fff}
.g4-unread-spotlight #g4UnreadTitle{font-size:14px;font-weight:650;line-height:1.4;color:#fff;margin:0 0 4px;overflow-wrap:anywhere}
.g4-spotlight-detail{font-size:11px;color:#eee9ff;font-weight:600}
.g4-spotlight-button{border:none;border-radius:11px;background:#fff;color:#3d2384;font:inherit;font-size:13px;font-weight:850;padding:12px 17px;min-height:44px;display:flex;align-items:center;justify-content:center;gap:12px;cursor:pointer;white-space:nowrap;box-shadow:0 3px 10px #16054321}
.g4-spotlight-button:hover{background:#f4efff}.g4-spotlight-button:focus-visible{outline:3px solid #ffd778;outline-offset:3px}
.g4-kpi.has-unread{border-color:#bda3f2;background:#faf6ff;box-shadow:inset 0 3px #7b42df}
.g4-post.is-unread{border:2px solid #a279eb;background:linear-gradient(130deg,#faf5ff,#fff 55%);box-shadow:inset 4px 0 #7138d3,0 6px 18px #4c21a810}
.g4-post.is-unread h3{color:#3c1a84}
.g4-tag.g4-new{background:#6837c5;color:#fff;border-color:#6837c5;letter-spacing:.035em}
.g4-post:focus{outline:none}.g4-post:focus-visible{outline:3px solid #7d4bde;outline-offset:2px}
.g4-nav-link.has-unread{background:#f1e9ff;color:#5624b9!important;border-radius:8px;padding:5px 9px;font-weight:800}
.g4-nav-link.has-unread:hover{background:#e9dcff}
@media(max-width:780px){.g4-unread-spotlight{grid-template-columns:auto 1fr;gap:12px;padding:17px}.g4-spotlight-button{grid-column:1/-1;width:100%}}
@media(max-width:420px){.g4-spotlight-icon{height:44px;width:44px;font-size:23px}.g4-unread-spotlight{gap:10px;padding:14px}.g4-spotlight-eyebrow{letter-spacing:.06em}.g4-unread-spotlight #g4UnreadTitle{font-size:13px}}
@media(prefers-reduced-motion:reduce){.g4-spotlight-button{scroll-behavior:auto}}


/* G5 · Salud de centro, accesibilidad movil y conservacion de datos. */
.g5-main{width:min(1140px,calc(100% - 36px));margin:0 auto;padding:36px 0 75px;min-width:0;color:#15243a}
.g5-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin:0 0 20px}
.g5-heading h1{font-size:clamp(26px,3vw,36px);line-height:1.15;margin:5px 0 8px;letter-spacing:-.03em;color:#0c1834}
.g5-heading p{line-height:1.6}.g5-header-actions{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}
.g5-notice{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:15px 18px;border-radius:12px;border:1px solid #dde8e9;background:#f1faf7;margin:0 0 16px;font-size:12px;line-height:1.5}
.g5-notice strong{font-size:14px}.g5-notice span{color:#506678}.g5-ok{border-color:#cfe5da;background:#f1f9f5}.g5-warn{border-color:#efdabc;background:#fffaf0}.g5-issue{border-color:#ecc9d4;background:#fff5f7}
.g5-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin-bottom:14px}
.g5-stat{min-width:0;border:1px solid #e0e6f1;background:#fff;border-radius:15px;padding:18px;box-shadow:0 3px 12px rgba(18,28,48,.025)}
.g5-stat span{font-size:11px;font-weight:700;color:#66748e;display:block}.g5-stat strong{display:block;font-size:30px;line-height:1.2;margin:8px 0 7px;color:#39219c;font-weight:850}
.g5-stat small{font-size:10px;color:#66748e;line-height:1.55;display:block}
.g5-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}
.g5-panel{min-width:0;border:1px solid #e1e7f0;border-radius:17px;padding:20px 22px;background:#fff;box-shadow:0 5px 16px rgba(19,27,48,.025)}
.g5-panel .eyebrow{margin:0 0 5px;color:#5a2fbd;font-size:10px;letter-spacing:.1em}
.g5-panel h2{font-size:19px;line-height:1.3;margin:0 0 17px;color:#13203d}
.g5-check{display:flex;justify-content:space-between;align-items:center;gap:14px;min-width:0;padding:12px 0;border-bottom:1px solid #ecf0f7;font-size:12px;line-height:1.5;color:#45536a}
.g5-check span{min-width:0;overflow-wrap:anywhere}.g5-check strong{white-space:nowrap;font-size:16px;color:#1c2d50}
.g5-check strong.g5-safe{color:#147a5f}.g5-check strong.g5-danger{color:#b11c48}.g5-check strong.g5-neutral{color:#7652a2}
.g5-help{font-size:11px;line-height:1.65;color:#6a778e;margin:9px 0 15px}
.g5-advice{margin-top:12px;background:#fbfaff}.g5-advice-item{font-size:12px;line-height:1.65;margin:8px 0;color:#4b5770;overflow-wrap:anywhere}
.g5-danger-text{color:#a52d50}.g5-main .btn{min-height:42px}
/* Touch targets, focus and narrow viewports. No 3D canvas or renderer changes. */
.g5-main .btn:focus-visible,.g5-admin-link:focus-visible,.g4-nav-link:focus-visible,.g2-member-actions .btn:focus-visible{outline:3px solid #7754d0;outline-offset:2px}
@media(hover:none) and (pointer:coarse){.g4-nav-link,.app-header .softlink{min-height:42px;display:inline-flex;align-items:center}.g2-member-actions .btn,.g4-main .btn{min-height:44px}}
@media(max-width:900px){.g5-grid{grid-template-columns:1fr}.g5-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.g5-heading{flex-wrap:wrap}}
@media(max-width:550px){.g5-main{width:calc(100% - 28px);padding:23px 0 48px}.g5-stats{gap:8px}.g5-stat{padding:15px 12px}.g5-stat strong{font-size:25px}.g5-panel{padding:17px 14px}.g5-header-actions{width:100%;justify-content:stretch}.g5-header-actions .btn{flex:1 1 100%}.g5-notice{align-items:flex-start;flex-direction:column}}
@media(max-width:330px){.g5-stats{grid-template-columns:1fr 1fr}.g5-stat span{font-size:10px}.g5-stat strong{font-size:22px}}

/* CONSTELA 360 v1.7.2 — menú de exportación diferenciada, sin estilos inline/CSP. */
.studio .toolbar-more-panel .constela-export-menu-heading{
  color:#5B31C6;letter-spacing:.075em;text-transform:uppercase;
  font-size:10px;font-weight:800;margin:4px 6px 1px;
}
.studio .toolbar-more-root[open] .toolbar-more-panel>.constela-export-action{
  font-weight:750;border:1px solid #DBDFF4;background:#F9F8FF;
  color:#222D54;
}
.studio .toolbar-more-root[open] .toolbar-more-panel>.constela-export-action:hover{
  border-color:#7957DB;background:#F1EDFF;
}
.studio .toolbar-more-root[open] .toolbar-more-panel>.constela-export-action:focus-visible{
  outline:3px solid rgba(97,59,221,.35);outline-offset:1px;
}
.studio .toolbar-more-panel .constela-export-menu-note{
  font-size:11px;line-height:1.55;color:#566784;margin:2px 6px 5px;
}
.studio .toolbar-more-panel .constela-export-menu-divider{
  height:1px;min-height:1px;width:100%;background:#E5EAF1;margin:4px 0;
}
.constela-export-toast[hidden]{display:none!important}
.constela-export-toast{
  position:fixed;right:max(16px,env(safe-area-inset-right,16px));
  bottom:max(18px,env(safe-area-inset-bottom,18px));z-index:10050;
  width:min(390px,calc(100vw - 30px));box-sizing:border-box;
  padding:15px 19px;border-radius:14px;border:1px solid #C7B7FA;
  background:#F6F2FF;color:#2D2254;box-shadow:0 14px 42px rgba(27,26,49,.19);
  font-size:13px;line-height:1.5;font-weight:650;pointer-events:none;
}
.constela-export-toast[data-state="success"]{background:#EFFAF3;border-color:#A9E4C0;color:#155631}
.constela-export-toast[data-state="error"]{background:#FFF4F4;border-color:#F4BCBC;color:#8C2323}
@media (max-width:530px){
 .studio .toolbar-more-root[open]>.toolbar-more-panel{max-height:min(490px,70vh)}
 .constela-export-toast{right:15px;bottom:15px;left:15px;width:auto}
}

/* ================================================================
   CONSTELA 360 G5.3 PREMIUM · interfaz de facilitación despejada
   Layout estable, navegación compacta y documentos inequívocos.
   ================================================================ */
/* Grid placement is explicit so hiding an aside cannot auto-place the board
   into the newly empty, zero-width first column. */
@media (min-width:851px){
 .studio .studio-layout{display:grid;grid-template-rows:minmax(0,1fr);}
 .studio .studio-layout > #toolsPane{grid-column:1;grid-row:1;min-width:0;}
 .studio .studio-layout > #sceneWrap{grid-column:2;grid-row:1;min-width:0;width:100%;height:100%;}
 .studio .studio-layout > #inspectorPane{grid-column:3;grid-row:1;min-width:0;}
 .studio.tools-collapsed .studio-layout > #toolsPane,
 .studio.inspector-collapsed .studio-layout > #inspectorPane{display:none!important;}
 .studio .studio-toolbar{grid-template-columns:minmax(120px,max-content) minmax(0,1fr);}
 .studio .toolbar-actions{min-width:0;gap:7px;}
 .studio .toolbar-actions .constela-quick-controls{
  order:1;display:flex;align-items:center;flex-shrink:0;gap:5px;
  padding:3px;background:#F7F8FD;border:1px solid #E4E8F2;border-radius:12px;
 }
 .studio .toolbar-actions #saveStatus{order:2;flex:0 1 88px;max-width:88px;}
 .studio .toolbar-actions .constela-top-undo{order:3;}
 .studio .toolbar-actions #shareBtn{order:4;}
 .studio .toolbar-actions #saveBtn{order:5;}
 .studio .toolbar-actions .toolbar-more-root{order:6;}
 .studio .toolbar-actions .constela-quick-controls .constela-quick-toggle{
  display:inline-flex!important;align-items:center;justify-content:center;gap:5px;
  font-size:11px;font-weight:720;white-space:nowrap;
  border:1px solid transparent;background:transparent;color:#283858;
  border-radius:9px;min-height:34px;padding:6px 9px;
 }
 .studio .toolbar-actions .constela-quick-controls .constela-quick-toggle:hover,
 .studio .toolbar-actions .constela-quick-controls .constela-quick-toggle:focus-visible{
  background:#fff;border-color:#CFD7EA;
 }
 .studio .toolbar-actions .constela-quick-controls .constela-quick-toggle.is-collapsed{
  color:#5D42BD;background:#ECE9FF;border-color:#D6CEF9;
 }
 .studio .toolbar-actions .constela-quick-controls .constela-participation-button{
  display:inline-flex;align-items:center;justify-content:center;min-height:34px;
  font-size:11px;font-weight:750;border:1px solid #D4DDF0;
  background:#fff;color:#253857;padding:6px 10px;white-space:nowrap;border-radius:9px;
 }
 .studio .toolbar-actions .constela-quick-controls .constela-participation-button:hover{
  background:#F2F4FF;border-color:#A8BBF5;
 }
 .studio .toolbar-actions .constela-quick-controls .constela-participation-button[aria-pressed="true"]{
  color:#fff;background:#4231A7;border-color:#4231A7;
 }
 .studio .toolbar-actions .constela-quick-controls .constela-control-icon{font-size:15px;line-height:1;color:#6950C4;}
}
/* Wide desktop has just one toolbar row. When the viewport narrows, controls
   wrap into an orderly secondary row instead of squeezing or overlapping. */
@media (min-width:851px) and (max-width:1320px){
 .studio .studio-toolbar{grid-template-columns:clamp(130px,15vw,185px) minmax(0,1fr);align-items:start;}
 .studio .toolbar-actions{flex-wrap:wrap;gap:6px;justify-content:flex-end;}
 .studio .toolbar-actions .constela-quick-controls{margin-right:auto;}
}
@media (min-width:851px) and (max-width:1080px){
 .studio .toolbar-actions #saveStatus{flex-basis:65px;max-width:65px;}
 .studio .toolbar-actions .constela-quick-controls .constela-quick-toggle{padding-inline:7px;}
}
/* Mobile retains the native drawer buttons; no duplicate hide actions. */
@media (max-width:850px){
 .studio .toolbar-actions .constela-quick-controls{order:2;display:flex;align-items:center;gap:6px;flex:0 1 auto;min-width:0;}
 .studio .toolbar-actions .constela-quick-controls .panel-toggle{display:none!important;}
 .studio .toolbar-actions .constela-quick-controls .constela-participation-button{
  display:inline-flex;align-items:center;justify-content:center;min-height:40px;
  padding:8px 11px;font-size:12px;font-weight:700;color:#4932A0;
  background:#F5F2FF;border:1px solid #D8D0F8;border-radius:10px;
 }
 .studio .toolbar-actions .constela-quick-controls .constela-participation-button[aria-pressed="true"]{
  color:#fff;background:#4831AD;
 }
 .studio .toolbar-actions>.mobile-pane-btn{order:1;}
 .studio .toolbar-actions #saveStatus{order:0;}
 .studio .toolbar-actions #shareBtn{order:3;}
 .studio .toolbar-actions #saveBtn{order:4;}
 .studio .toolbar-actions .toolbar-more-root{order:5;}
 .studio .studio-layout > #sceneWrap{flex:0 0 auto;min-width:0;}
}
@media (max-width:530px){
 .studio .toolbar-actions .constela-quick-controls .constela-participation-button{min-height:39px;padding:8px;}
}
/* Accessible live region keeps the participation state without cluttering the bar. */
.studio .constela-participant-status.constela-sr-only{
 position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;
 clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;
}
.studio .toolbar-more-root > .toolbar-more-trigger{background:#F7F8FD;border-color:#D8DEF1;}
.studio .toolbar-more-root[open] > .toolbar-more-panel{width:260px;max-height:min(270px,50vh);}
.studio .toolbar-more-root[open] > .toolbar-more-panel > .constela-export-action{min-height:46px;}
.studio .toolbar-more-root[open] > .toolbar-more-panel > .constela-export-action:hover{
 background:#F0EBFF;border-color:#B6AAEB;
}
.studio .toolbar-more-panel .constela-export-menu-note{line-height:1.5;margin-top:5px;}
.studio .constela-quick-controls :is(button):focus-visible{outline:3px solid rgba(90,55,210,.32);outline-offset:2px;}

/* ================================================================
   CONSTELA 360 G6 · EMOCIONES Y TONOS DE PIEL
   ================================================================ */
.constela-figure-label{display:flex;align-items:center;gap:7px;max-width:190px;padding:5px 9px 5px 7px}
.constela-figure-label-text{font-weight:760;line-height:1.2;max-width:88px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.constela-emotion-badge{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:999px;background:#F4F1FF;border:1px solid #D9D0FB;font-size:13px;flex:0 0 auto;box-shadow:0 1px 2px rgba(44,44,76,.08)}
.constela-figure-emotion{font-size:10px;font-weight:800;line-height:1;color:#5D4E85;text-transform:uppercase;letter-spacing:.04em;max-width:58px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.scene-label-compact .constela-figure-emotion{display:none}
.scene-label.selected .constela-emotion-badge{background:#ECE5FF;border-color:#B59AF2}
.constela-figure-visual-block{display:flex;flex-direction:column;gap:8px;padding:11px 12px;border:1px solid #E2E7F1;border-radius:14px;background:#FBFCFF;margin:8px 0}
.constela-figure-visual-title{font-size:13px;color:#1E2D45}
.constela-emotion-grid{display:grid;grid-template-columns:1fr;gap:7px}
.constela-emotion-option{display:flex;align-items:center;gap:10px;border:1px solid #DCE3F2;background:#fff;border-radius:12px;padding:8px 10px;text-align:left;color:#1C2A43;min-height:52px}
.constela-emotion-option:hover,.constela-emotion-option:focus-visible{border-color:#A68FE9;box-shadow:0 0 0 3px rgba(105,41,196,.12)}
.constela-emotion-option[aria-pressed="true"]{border-color:#8466DB;background:#F5F1FF;box-shadow:0 0 0 3px rgba(105,41,196,.11)}
.constela-emotion-option .emotion-icon{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:999px;background:#F3F6FF;font-size:17px;flex:0 0 auto}
.constela-emotion-option .emotion-copy{display:flex;flex-direction:column;gap:2px;min-width:0}
.constela-emotion-option .emotion-name{font-size:13px;font-weight:760;line-height:1.15}
.constela-emotion-option .emotion-hint{font-size:11px;color:#5E6B84;line-height:1.2}
.constela-skin-selector{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.constela-skin-option{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:8px;border-radius:12px;border:1px solid #D8DFEE;background:#fff;font-size:12px;font-weight:760;color:#21324C}
.constela-skin-option:hover,.constela-skin-option:focus-visible{border-color:#A68FE9;box-shadow:0 0 0 3px rgba(105,41,196,.12)}
.constela-skin-option[aria-pressed="true"]{border-color:#8060D7;background:#F4F0FF;box-shadow:0 0 0 3px rgba(105,41,196,.11)}
.constela-skin-option .skin-dot{display:inline-block;width:18px;height:18px;border-radius:999px;border:1px solid rgba(40,46,68,.16);box-shadow:inset 0 0 0 1px rgba(255,255,255,.35)}
.constela-skin-option.tone-calido .skin-dot{background:#F2C89F}
.constela-skin-option.tone-neutral .skin-dot{background:#EAB18F}
.constela-skin-option.tone-trigueno .skin-dot{background:#B28762}
@media (max-width:1080px){.constela-emotion-grid{grid-template-columns:1fr}.constela-skin-selector{grid-template-columns:1fr}.constela-figure-label{max-width:170px}.constela-figure-label-text{max-width:76px}}
@media (max-width:800px){.constela-figure-emotion{display:none}.constela-emotion-badge{width:20px;height:20px;font-size:12px}}

.scene-label.constela-emotion-neutral{gap:0;padding:5px 8px}
.scene-label.constela-emotion-neutral .constela-emotion-badge,.scene-label.constela-emotion-neutral .constela-figure-emotion{display:none}

/* ================================================================
   CONSTELA 360 · G6.1 PREMIUM — acciones en contexto, inspector ligero
   ================================================================ */
.studio .toolbar-actions .constela-quick-emotions{
 position:relative;order:0;flex:0 0 auto;margin-right:auto;min-width:0;z-index:18;
}
.studio .toolbar-actions .constela-emotion-trigger{
 display:flex;align-items:center;gap:9px;min-height:40px;padding:5px 11px;
 border-radius:12px;border:1px solid #D8D0F4;background:#F8F6FF;
 color:#2C2150;text-align:left;white-space:nowrap;list-style:none;
}
.studio .toolbar-actions .constela-emotion-trigger::-webkit-details-marker{display:none}
.studio .toolbar-actions .constela-emotion-trigger-icon{
 display:grid;place-items:center;width:28px;height:28px;flex-shrink:0;
 border:1px solid #DCD2FA;background:#FFFFFF;border-radius:9px;font-size:16px;
}
.studio .toolbar-actions .constela-emotion-trigger-copy{display:grid;gap:0;line-height:1.18;min-width:85px;}
.studio .toolbar-actions .constela-emotion-trigger-copy strong{font-weight:800;font-size:12px;}
.studio .toolbar-actions .constela-emotion-trigger-copy small{font-size:11px;color:#6B5D88;font-weight:600;white-space:nowrap;max-width:115px;overflow:hidden;text-overflow:ellipsis}
.studio .toolbar-actions .constela-emotion-trigger-chevron{font-size:15px;color:#6E5A9A;margin-left:3px}
.studio .toolbar-actions .constela-quick-emotions[open] .constela-emotion-trigger{
 background:#EEE7FF;border-color:#B29BED;box-shadow:0 0 0 2px rgba(105,41,196,.10)
}
.studio .constela-quick-emotion-panel{
 position:absolute;top:calc(100% + 8px);left:0;z-index:100;
 width:345px;max-width:calc(100vw - 20px);padding:12px;
 background:#FFFFFF;border:1px solid #D9DDEE;border-radius:16px;
 box-shadow:0 22px 50px rgba(35,28,75,.18);
}
.studio .constela-quick-emotion-heading{display:flex;flex-direction:column;gap:2px;padding:3px 3px 12px}
.studio .constela-quick-emotion-heading strong{font-size:13px;color:#263451}
.studio .constela-quick-emotion-heading span{font-size:12px;color:#68748D;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.studio .constela-quick-emotion-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.studio .constela-quick-emotion-option{
 display:grid;place-items:center;gap:3px;padding:7px 4px 8px;min-height:61px;
 border-radius:11px;border:1px solid #E0E5F1;color:#27314C;
 background:#FFF;font-weight:700;font-size:11px;min-width:0;line-height:1.1
}
.studio .constela-quick-emotion-option .quick-emotion-icon{font-size:19px;line-height:1.1}
.studio .constela-quick-emotion-option:hover:not(:disabled),
.studio .constela-quick-emotion-option:focus-visible{background:#F6F1FF;border-color:#A78DEB;outline:2px solid rgba(105,41,196,.16)}
.studio .constela-quick-emotion-option[aria-pressed="true"]{background:#F1EAFE;border-color:#9C7CE7;box-shadow:inset 0 0 0 1px #B196EF;color:#4B278A}
.studio .constela-quick-emotion-option:disabled{cursor:not-allowed;opacity:.5}
.studio .constela-quick-emotions.no-selection .constela-emotion-trigger{background:#F7F8FC;color:#6A7183;border-color:#E1E6EF}
/* Inspector — current state at a glance; detailed choices live in toolbar */
.studio .inspector-form .constela-figure-visual-compact{
 display:flex;align-items:center;flex-wrap:wrap;gap:7px;
 padding:10px;border:1px solid #E2E6F0;border-radius:12px;background:#F9FAFE;margin:2px 0;
}
.studio .constela-figure-visual-compact strong{font-size:12px;color:#253451;flex-basis:100%;}
.studio .constela-figure-visual-compact .constela-current-emotion{font-size:12px;font-weight:800;color:#49328A;margin-right:auto}
.studio .constela-figure-visual-compact .constela-open-emotions{
 min-height:31px;padding:5px 10px;font-size:11px;border-radius:9px;white-space:nowrap
}
.studio .inspector-form .constela-skin-selector{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}
.studio .inspector-form .constela-skin-option{
 min-height:54px;padding:6px 2px;display:flex;flex-direction:column;gap:3px;font-size:10px;
 line-height:1.15;text-align:center;word-break:normal
}
.studio .inspector-form .constela-skin-option .skin-dot{width:22px;height:22px}
.studio .inspector-form .constela-figure-visual-block{padding:9px 10px;margin:2px 0;gap:6px}
.studio .inspector-form .constela-figure-visual-block .mini.muted{margin:0;line-height:1.4}
.studio .inspector-form .pro-color-palette{display:none!important}
@media (min-width:851px) and (max-width:1320px){
 .studio .toolbar-actions .constela-quick-emotions{margin-right:auto}
 .studio .toolbar-actions .constela-emotion-trigger{min-height:36px;padding:4px 9px}
 .studio .toolbar-actions .constela-emotion-trigger-copy{min-width:74px}
}
@media (max-width:850px){
 .studio .toolbar-actions .constela-quick-emotions{order:1;margin-right:0}
 .studio .toolbar-actions .constela-emotion-trigger{min-height:40px}
 .studio .constela-quick-emotion-panel{left:0}
 .studio .inspector-form .constela-skin-selector{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:480px){
 .studio .toolbar-actions .constela-quick-emotions{flex:0 0 auto;max-width:100%}
 .studio .toolbar-actions .constela-emotion-trigger-copy small{max-width:85px}
 .studio .constela-quick-emotion-panel{width:min(310px,calc(100vw - 24px))}
}

/* Keep expanded emotions above other wrapped toolbar actions on narrow screens. */
.studio .toolbar-actions .constela-quick-emotions{z-index:250!important}
.studio .constela-quick-emotion-panel{z-index:260!important}

/* ============================================================
   G6.2 · biblioteca directa y etiquetas con prioridad 3D
   ============================================================ */
.studio-side.left .constela-library-heading{margin:0 0 12px;font-size:15px;letter-spacing:-.012em;line-height:1.25}
.studio-side.left .character-catalog{margin-top:3px;gap:9px}
.studio .scene-labels .scene-label,
.viewer .scene-labels .scene-label{pointer-events:none!important;max-width:185px;isolation:isolate}
.studio .scene-labels .constela-relation-label,
.viewer .scene-labels .constela-relation-label,
.studio .scene-labels .zone-label,
.viewer .scene-labels .zone-label{pointer-events:none!important}

/* G6.3 · identidad oficial, sin alterar la marca entregada */
.brand.constela-brand-logo{display:inline-flex;align-items:center;gap:0;line-height:1;padding:0;text-decoration:none;flex-shrink:0}
.brand.constela-brand-logo img{display:block;width:174px;height:auto;max-height:47px;object-fit:contain;object-position:left center}
.auth-card .constela-auth-brand{display:flex;justify-content:center;margin:0 auto 4px}
.auth-card .constela-auth-brand img{display:block;width:min(215px,65vw);height:auto;max-height:220px;object-fit:contain}
.constela-time-board-labels[hidden],.constela-time-board-label[hidden]{display:none!important}
.scene-top .constela-temporal-button[hidden]{display:none!important}
.scene-top .constela-temporal-button[aria-pressed="false"]{background:#f7f7fb;color:#65718b;border-color:#d4dce9}
.scene-top .constela-temporal-button{white-space:nowrap}
@media(max-width:850px){.brand.constela-brand-logo img{width:145px;max-height:42px}}
@media(max-width:530px){.brand.constela-brand-logo img{width:127px;max-height:37px}.scene-top .constela-temporal-button{min-height:32px;font-size:10px}}


/* ================================================================
   G6.4 · apariencia a un toque · piel + ropa en barra superior
   ================================================================ */
.studio .toolbar-actions .constela-quick-emotions{margin-right:0!important}
.studio .toolbar-actions .constela-visual-quick-tools{
 position:relative;order:0;display:flex;gap:6px;align-items:center;flex:0 0 auto;
 margin-right:auto;z-index:245;min-width:0
}
.studio .toolbar-actions .constela-quick-skin{position:relative;flex:0 0 auto;z-index:246}
.studio .toolbar-actions .constela-skin-trigger{
 display:flex;align-items:center;gap:7px;border:1px solid #DCE2EF;background:#fff;
 border-radius:12px;padding:5px 8px;min-height:40px;list-style:none;color:#22314D
}
.studio .toolbar-actions .constela-skin-trigger::-webkit-details-marker{display:none}
.studio .constela-current-skin-dot{
 display:inline-block;flex:0 0 auto;width:24px;height:24px;border-radius:50%;
 border:1px solid rgba(34,40,61,.18);box-shadow:inset 0 0 0 1px rgba(255,255,255,.5)
}
.studio .constela-current-skin-dot.tone-neutral{background:#EAB18F}
.studio .constela-current-skin-dot.tone-calido{background:#F2C89F}
.studio .constela-current-skin-dot.tone-trigueno{background:#B28762}
.studio .constela-skin-trigger-copy,.studio .constela-wardrobe-copy{display:grid;gap:1px;line-height:1.15}
.studio .constela-skin-trigger-copy strong,.studio .constela-wardrobe-copy strong{font-size:11px;font-weight:800;color:#22314D}
.studio .constela-skin-trigger-copy small,.studio .constela-wardrobe-copy small{font-size:10px;font-weight:650;color:#64718B;max-width:67px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.studio .constela-quick-chevron{font-size:13px;color:#6853A5}
.studio .constela-quick-skin[open]>.constela-skin-trigger{background:#F5F1FF;border-color:#A89BE2}
.studio .constela-quick-skin-panel{
 position:absolute;top:calc(100% + 8px);left:0;width:210px;padding:11px;max-width:calc(100vw - 20px);
 background:#fff;border:1px solid #DCE2EE;border-radius:14px;box-shadow:0 16px 38px rgba(27,26,49,.17);z-index:280
}
.studio .constela-quick-skin-caption{font-size:12px;font-weight:800;color:#30425F;margin:0 0 7px}
.studio .constela-quick-skin-choices{display:grid;gap:6px}
.studio .constela-quick-skin-choice{display:flex;align-items:center;gap:9px;border:1px solid #DDE3EE;background:#fff;color:#26344F;border-radius:10px;padding:8px 9px;min-height:42px;font-size:12px;font-weight:760;text-align:left}
.studio .constela-quick-skin-choice[hidden]{display:none!important}
.studio .constela-quick-skin-choice:hover:not(:disabled),.studio .constela-quick-skin-choice:focus-visible{background:#F5F2FF;border-color:#AC99EA;outline:2px solid rgba(106,78,199,.13)}
.studio .constela-quick-wardrobe{
 position:relative;display:flex;align-items:center;gap:8px;cursor:pointer;
 min-height:40px;max-width:100px;padding:5px 9px;border:1px solid #DCE2EF;border-radius:12px;
 background:#fff;overflow:hidden
}
.studio .constela-wardrobe-swatch{display:inline-block;width:23px;height:24px;flex:0 0 auto;border-radius:7px;border:1px solid rgba(35,42,62,.2);background:#719AB4}
.studio .constela-quick-wardrobe input[type=color]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;z-index:1}
.studio .constela-quick-wardrobe:focus-within{outline:2px solid #936FE2;outline-offset:2px}
.studio .constela-quick-wardrobe.no-selection,.studio .constela-quick-skin.no-selection{opacity:.58}
.studio .constela-quick-wardrobe.no-selection input{cursor:not-allowed}
.studio .toolbar-actions .constela-visual-quick-tools .constela-skin-trigger{white-space:nowrap}
/* Cabecera sin solapamientos: grupos compactos y salto de línea limpio. */
@media(min-width:851px) and (max-width:1580px){
 .studio .toolbar-actions{flex-wrap:wrap;gap:6px;justify-content:flex-end}
 .studio .toolbar-actions .constela-visual-quick-tools{margin-right:auto}
 .studio .toolbar-actions .constela-quick-controls{margin-right:0}
 .studio .toolbar-actions #saveStatus{flex-basis:72px;max-width:72px}
}
@media(max-width:850px){
 .studio .toolbar-actions .constela-visual-quick-tools{order:1;margin-right:0;z-index:245}
 .studio .toolbar-actions .constela-quick-emotions{order:1}
 .studio .toolbar-actions .constela-quick-skin-panel{z-index:280}
}
@media(max-width:450px){
 .studio .constela-skin-trigger{padding:5px 7px;gap:5px}
 .studio .constela-skin-trigger-copy small{max-width:55px}
 .studio .constela-quick-wardrobe{padding:5px 7px;max-width:86px;gap:6px}
 .studio .constela-wardrobe-copy small{max-width:49px}
}

/* At standard desktop widths, split appearance and session actions into two
   intentional, aligned rows instead of leaving only Descargas stranded below. */
@media(min-width:1120px) and (max-width:1580px){
 .studio .toolbar-actions::after{content:"";display:block;flex:0 0 100%;height:0;order:1}
 .studio .toolbar-actions .constela-quick-emotions,
 .studio .toolbar-actions .constela-visual-quick-tools{order:0}
 .studio .toolbar-actions .constela-quick-controls{order:1;margin-left:auto;margin-right:0}
 .studio .toolbar-actions #saveStatus{order:2;margin-left:auto}
 .studio .toolbar-actions .constela-top-undo{order:3}
 .studio .toolbar-actions #shareBtn{order:4}
 .studio .toolbar-actions #saveBtn{order:5}
 .studio .toolbar-actions .toolbar-more-root{order:6}
}


/* ================================================================
   G6.4.2 · refinamiento premium de alineación de cabecera
   ================================================================ */
.studio .toolbar-actions{
  display:flex;align-items:center;justify-content:space-between;gap:10px 12px;flex-wrap:wrap;
}
.studio .toolbar-actions .constela-toolbar-primary,
.studio .toolbar-actions .constela-toolbar-secondary{
  display:flex;align-items:center;gap:8px;min-width:0;
}
.studio .toolbar-actions .constela-toolbar-primary{flex:1 1 auto;flex-wrap:wrap}
.studio .toolbar-actions .constela-toolbar-secondary{flex:0 0 auto;flex-wrap:wrap;justify-content:flex-end;margin-left:auto}
.studio .toolbar-actions .constela-quick-emotions,
.studio .toolbar-actions .constela-visual-quick-tools,
.studio .toolbar-actions .constela-quick-controls{margin:0!important;order:0!important}
.studio .toolbar-actions .constela-visual-quick-tools,
.studio .toolbar-actions .constela-quick-controls{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.studio .toolbar-actions #saveStatus{
  order:0!important;flex:0 0 auto;min-width:78px;max-width:none;margin:0;text-align:right;
  font-size:11px;color:#6B778F;white-space:nowrap
}
.studio .toolbar-actions .constela-top-undo{order:0!important;margin:0}
.studio .toolbar-actions #shareBtn,
.studio .toolbar-actions #saveBtn,
.studio .toolbar-actions .toolbar-more-root{order:0!important;margin:0}
.studio .toolbar-actions .toolbar-more-root{display:flex;align-items:center}
.studio .toolbar-actions .constela-emotion-trigger,
.studio .toolbar-actions .constela-skin-trigger,
.studio .constela-quick-wardrobe,
.studio .toolbar-actions .constela-quick-controls .constela-quick-toggle,
.studio .toolbar-actions .constela-quick-controls .constela-participation-button,
.studio .toolbar-actions #shareBtn,
.studio .toolbar-actions #saveBtn,
.studio .toolbar-actions .toolbar-more-trigger{
  min-height:44px;border-radius:13px;
}
.studio .toolbar-actions .constela-emotion-trigger{padding:6px 12px;min-width:176px}
.studio .toolbar-actions .constela-emotion-trigger-copy{min-width:94px}
.studio .toolbar-actions .constela-skin-trigger{padding:6px 10px;min-width:112px}
.studio .constela-quick-wardrobe{padding:6px 10px;min-width:110px;max-width:none}
.studio .toolbar-actions .constela-quick-controls .constela-quick-toggle{padding:8px 12px}
.studio .toolbar-actions .constela-quick-controls .constela-participation-button{padding:8px 13px}
.studio .toolbar-actions .constela-control-text{font-weight:700}
.studio .toolbar-actions .constela-emotion-trigger-copy small,
.studio .toolbar-actions .constela-skin-trigger-copy small,
.studio .toolbar-actions .constela-wardrobe-copy small{max-width:90px}
.studio .toolbar-actions .constela-quick-emotions{z-index:250!important}
.studio .toolbar-actions .constela-quick-skin{z-index:249!important}
.studio .toolbar-actions .toolbar-more-root{z-index:248!important}
.studio .toolbar-actions .constela-quick-emotion-panel,
.studio .toolbar-actions .constela-quick-skin-panel,
.studio .toolbar-actions .toolbar-more-panel{top:calc(100% + 8px)}
.studio .studio-toolbar-title{max-width:190px}
.studio .studio-toolbar-title h1{line-height:1.2}
.studio .constela-deploy-tag{margin-top:6px}

@media (min-width:1101px) and (max-width:1460px){
  .studio .studio-toolbar{grid-template-columns:minmax(140px,175px) minmax(0,1fr);gap:12px}
  .studio .toolbar-actions .constela-toolbar-primary{flex-basis:100%;order:0}
  .studio .toolbar-actions .constela-toolbar-secondary{order:1;width:100%;justify-content:flex-end}
  .studio .toolbar-actions #saveStatus{margin-right:2px}
}

@media (max-width:1100px){
  .studio .toolbar-actions{justify-content:flex-start;gap:8px}
  .studio .toolbar-actions .constela-toolbar-primary,
  .studio .toolbar-actions .constela-toolbar-secondary{width:100%;justify-content:flex-start}
  .studio .toolbar-actions .constela-toolbar-secondary{margin-left:0}
  .studio .toolbar-actions #saveStatus{min-width:auto;text-align:left}
}

@media (max-width:850px){
  .studio .toolbar-actions .constela-toolbar-primary,
  .studio .toolbar-actions .constela-toolbar-secondary{flex-wrap:wrap;gap:6px}
  .studio .toolbar-actions .constela-emotion-trigger{min-width:0;max-width:100%}
  .studio .toolbar-actions .constela-skin-trigger{min-width:0}
  .studio .constela-quick-wardrobe{min-width:0}
}

@media (max-width:520px){
  .studio .toolbar-actions .constela-toolbar-primary{gap:6px}
  .studio .toolbar-actions .constela-emotion-trigger{padding:5px 9px}
  .studio .toolbar-actions .constela-emotion-trigger-copy strong,
  .studio .toolbar-actions .constela-skin-trigger-copy strong,
  .studio .toolbar-actions .constela-wardrobe-copy strong{font-size:10px}
  .studio .toolbar-actions .constela-emotion-trigger-copy small,
  .studio .toolbar-actions .constela-skin-trigger-copy small,
  .studio .toolbar-actions .constela-wardrobe-copy small{font-size:9px;max-width:72px}
}

.studio .constela-deploy-tag{align-self:flex-start;display:inline-flex;align-items:center;font:700 10px/1 system-ui,sans-serif;letter-spacing:.035em;color:#516387;background:#EFF3FB;border:1px solid #DCE5F3;border-radius:999px;padding:4px 7px;white-space:nowrap;margin-top:6px}

/* ===============================================================
   CONSTELA G6.4.3 · BARRA SUPERIOR PREMIUM CONSOLIDADA
   Las nueve acciones esenciales en una fila donde hay anchura.
   Sin historial duplicado en cabecera; permanece en Inspector.
   =============================================================== */
.studio .studio-toolbar{
  display:grid;grid-template-columns:minmax(96px,112px) minmax(0,1fr);
  align-items:center;column-gap:12px;row-gap:0;
  padding:9px 14px;min-width:0;
}
.studio .studio-toolbar-title{max-width:112px;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:3px}
.studio .studio-toolbar-title .softlink{font-size:11px;white-space:nowrap}
.studio .studio-toolbar-title h1{max-width:100%;font-size:15px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
.studio .constela-deploy-tag{margin-top:0;padding:3px 6px;font-size:9px}
.studio .toolbar-actions{
  display:flex;align-items:center;justify-content:flex-start;
  flex-wrap:nowrap!important;gap:8px;min-width:0;width:100%;
}
.studio .toolbar-actions::after{content:none!important;display:none!important}
.studio .toolbar-actions .constela-toolbar-primary,
.studio .toolbar-actions .constela-toolbar-secondary{
  display:flex;align-items:center;justify-content:flex-start;
  flex:0 0 auto;width:auto;min-width:0;margin:0;gap:6px;
  flex-wrap:nowrap!important;
}
.studio .toolbar-actions .constela-toolbar-secondary{margin-left:auto;justify-content:flex-end}
.studio .toolbar-actions .constela-quick-emotions,
.studio .toolbar-actions .constela-visual-quick-tools,
.studio .toolbar-actions .constela-quick-controls{display:flex;flex:0 0 auto;align-items:center;margin:0!important;gap:6px;order:0!important}
.studio .toolbar-actions .constela-visual-quick-tools .constela-quick-skin{display:block}
.studio .toolbar-actions .constela-emotion-trigger,
.studio .toolbar-actions .constela-skin-trigger,
.studio .constela-quick-wardrobe,
.studio .toolbar-actions .constela-quick-controls .constela-quick-toggle,
.studio .toolbar-actions .constela-quick-controls .constela-participation-button,
.studio .toolbar-actions #shareBtn,
.studio .toolbar-actions #saveBtn,
.studio .toolbar-actions .toolbar-more-trigger{
  box-sizing:border-box;min-height:40px;height:40px;
  border-radius:10px;padding:6px 9px;margin:0;
  font-size:11px;line-height:1.2;white-space:nowrap;
}
.studio .toolbar-actions .constela-emotion-trigger{min-width:143px;max-width:153px;gap:6px}
.studio .toolbar-actions .constela-emotion-trigger-icon{width:25px;height:25px;font-size:15px}
.studio .toolbar-actions .constela-emotion-trigger-copy{min-width:0;max-width:91px}
.studio .toolbar-actions .constela-emotion-trigger-copy strong{font-size:11px}
.studio .toolbar-actions .constela-emotion-trigger-copy small{font-size:10px;max-width:91px}
.studio .toolbar-actions .constela-skin-trigger{min-width:83px;gap:5px}
.studio .constela-current-skin-dot{width:21px;height:21px}
.studio .toolbar-actions .constela-skin-trigger-copy strong,
.studio .toolbar-actions .constela-wardrobe-copy strong{font-size:11px}
.studio .toolbar-actions .constela-skin-trigger-copy small,
.studio .toolbar-actions .constela-wardrobe-copy small{font-size:10px;max-width:50px}
.studio .constela-quick-wardrobe{min-width:73px;max-width:78px;gap:6px}
.studio .constela-wardrobe-swatch{width:20px;height:21px}
.studio .toolbar-actions .constela-quick-controls .constela-quick-toggle{min-width:0;padding:6px 8px;gap:4px}
.studio .toolbar-actions .constela-quick-controls .constela-control-icon{font-size:13px}
.studio .toolbar-actions .constela-quick-controls .constela-control-text{font-size:11px}
.studio .toolbar-actions .constela-quick-controls .constela-participation-button{min-width:0;padding:6px 9px}
.studio .toolbar-actions #shareBtn{padding:6px 10px}
.studio .toolbar-actions #saveBtn{padding:6px 12px}
.studio .toolbar-actions .toolbar-more-trigger{display:inline-flex!important;align-items:center;justify-content:center;gap:4px;padding:6px 9px}
.studio .toolbar-actions .toolbar-more-root{display:flex;position:relative;order:0!important;margin:0}
.studio .toolbar-actions .constela-toolbar-save-status{
  position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);
  clip-path:inset(50%);white-space:nowrap;
}
.studio .toolbar-actions .constela-top-undo{display:none!important}

/* Tablets and smaller desktops: purposeful two-row layout, not accidental wrapping. */
@media (min-width:851px) and (max-width:1230px){
 .studio .studio-toolbar{grid-template-columns:105px minmax(0,1fr);padding:8px 12px;gap:8px}
 .studio .toolbar-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:6px}
 .studio .toolbar-actions .constela-toolbar-primary{justify-content:flex-start;min-width:0}
 .studio .toolbar-actions .constela-toolbar-secondary{margin:0;justify-content:flex-end;min-width:0}
}

/* Mobile: self-contained control strips, readable and without clipped popovers. */
@media (max-width:850px){
 .studio .studio-toolbar{display:flex;flex-direction:column;align-items:stretch;padding:8px 10px;gap:7px}
 .studio .studio-toolbar-title{max-width:100%;display:flex;flex-direction:row;align-items:center;gap:8px;justify-content:flex-start}
 .studio .studio-toolbar-title h1{font-size:14px;max-width:35vw}
 .studio .toolbar-actions{display:flex;flex-direction:column;align-items:stretch;gap:7px}
 .studio .toolbar-actions .constela-toolbar-primary{display:flex;width:100%;flex-wrap:wrap!important;gap:6px}
 .studio .toolbar-actions .constela-toolbar-secondary{display:flex;width:100%;flex-wrap:nowrap!important;justify-content:flex-end;gap:6px;margin:0}
 .studio .toolbar-actions>.constela-toolbar-primary>.mobile-pane-btn{display:inline-flex!important;min-height:38px;height:38px;font-size:11px;padding:6px 8px}
 .studio .toolbar-actions .constela-quick-controls .panel-toggle{display:none!important}
 .studio .toolbar-actions .constela-quick-controls .constela-participation-button{min-height:38px;height:38px}
}
@media (max-width:530px){
 .studio .toolbar-actions .constela-toolbar-primary{align-items:center}
 .studio .toolbar-actions .constela-emotion-trigger{min-width:130px;max-width:145px}
 .studio .toolbar-actions .constela-skin-trigger{min-width:78px}
 .studio .constela-quick-wardrobe{min-width:70px}
 .studio .toolbar-actions .constela-toolbar-secondary{justify-content:space-between}
 .studio .toolbar-actions #shareBtn,.studio .toolbar-actions #saveBtn,.studio .toolbar-actions .toolbar-more-trigger{min-height:38px;height:38px;font-size:10px;padding:6px 7px}
}

/* G6.4.3 status beside the session title: never hides save feedback. */
.studio .studio-toolbar-title .constela-session-meta{display:flex;align-items:center;flex-wrap:wrap;gap:4px;min-width:0;max-width:100%}
.studio .studio-toolbar-title #saveStatus{font-size:9px;line-height:1.2;font-weight:700;color:#62718E;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:90px;text-align:left}
.studio .studio-toolbar-title .constela-deploy-tag{margin:0;padding:2px 5px;font-size:9px}
@media(max-width:850px){.studio .studio-toolbar-title .constela-session-meta{margin-left:auto;justify-content:flex-end}}

/* G6.5.2 · Corrección visual defensiva (última hoja cargada).
   No tocar el motor 3D, datos ni controles de interacción. */
.studio #inspector .constela-figure-visual-compact,
.studio #inspector .constela-figure-visual-block:has(.constela-emotion-grid),
.studio #inspector .constela-open-emotions { display:none!important; }
/* El eje temporal pertenece a la superficie del plano, NUNCA a un overlay HTML. */
#sceneWrap .constela-time-board-labels,
#sceneWrap .constela-time-board-label,
.viewer #sceneWrap .constela-time-board-labels { display:none!important; }
/* Aviso de motor: distingue la ejecución real del JS de una versión PHP. */
.studio .constela-engine-pending{background:#FFF7EA!important;border-color:#F2D8B1!important;color:#85591F!important;}
.studio .constela-engine-version:not(.constela-engine-pending){background:#EAF8F1!important;border-color:#B6DFC9!important;color:#1B7050!important;}

/* G7.1.1 · Postura con semántica independiente, accesible desde Emociones. */
.studio .constela-quick-emotion-grid .constela-posture-heading{grid-column:1/-1;font-size:11px;font-weight:800;color:#5d587c;letter-spacing:.045em;text-transform:uppercase;margin:6px 0 2px;padding-top:9px;border-top:1px solid #e8e4f2}
.studio .constela-quick-emotion-grid .constela-posture-option{min-height:57px;background:#f9f7ff}
.studio .constela-quick-emotion-grid .constela-posture-option[aria-pressed="true"]{background:#eee5ff;border-color:#8761cf}

/* G7.1.3 · Estados visibles y verificables de postura + rostro 3D. */
.studio .constela-face-availability{grid-column:1/-1;margin:7px 0 0;padding:9px 11px;border-radius:10px;font-size:11px;color:#4c5b75;background:#f1f6ff;border:1px solid #e1e9f8;line-height:1.4}
.studio .constela-face-availability[data-native='true']{background:#f0f9f3;color:#26624e;border-color:#d1e8d9}
.studio .constela-posture-current{grid-column:1/-1;margin:0;color:#54416d;font-size:11px;font-weight:700}
.studio .constela-inspector-posture{font-size:12px;line-height:1.4;background:#f5f2fc;border:1px solid #ded6f5;padding:11px;border-radius:11px;margin:8px 0;color:#4c387d}
.studio .constela-g7-upgrade{font-size:12px;white-space:normal;min-height:38px;width:100%}
.studio .constela-label-posture{display:inline-flex;font-size:9px;letter-spacing:.02em;font-weight:850;color:#6147a3;border-radius:7px;background:#e7dcff;padding:3px 5px}
.studio .constela-posture-feedback{position:absolute;bottom:58px;left:50%;transform:translate(-50%,12px);z-index:100;background:#2e2353;color:#fff;border-radius:12px;padding:10px 14px;font-size:13px;font-weight:750;box-shadow:0 12px 28px #31225135;opacity:0;pointer-events:none;transition:opacity .18s,transform .18s;max-width:90%;text-align:center}
.studio .constela-posture-feedback.is-active{opacity:1;transform:translate(-50%,0)}

/* G7.1.4 · Estado real del renderizado de modelos 3D, no estado del script */
.constela-render-notice{position:absolute;bottom:55px;left:12px;right:12px;z-index:13;max-width:670px;padding:10px 14px;border:1px solid #df9c80;border-radius:13px;background:#fff7ef;box-shadow:0 2px 14px rgba(33,35,66,.09);font-size:12px;line-height:1.45;color:#823b2b;pointer-events:none}
.constela-render-notice[hidden]{display:none!important}
@media(max-width:600px){.constela-render-notice{font-size:11px;padding:8px 10px;bottom:48px}}
