/* Morpho v26: blue, white and neutral gray with restrained amber accents. Load last, including inside staff modules.
 * Blue defines actions; black defines hierarchy; amber is a decorative accent. Status colors remain semantic.
 */
:root{
  --brand-ink:#111111;
  --brand-primary:#0D3478;
  --brand-primary-hover:#164891;
  --brand-accent:#0D3478;
  --brand-accent-hover:#164891;
  --brand-accent-pressed:#082653;
  --brand-highlight:#FFB703;
  --brand-link:#0D3478;
  --brand-tint:#F4F4F5;
  --brand-selection-border:#0D3478;
  --brand-background:#F7F7F8;
  --brand-surface:#FFFFFF;
  --brand-border:#E5E7EB;
  --brand-text:#343A46;
  --brand-secondary:#666D78;
  --brand-muted:#666D78;
  --brand-soft:#FAFAFB;
  --brand-focus:0 0 0 3px #0D34781A;
  --blue:var(--brand-primary);
  --ink:var(--brand-ink);
  --navy:var(--brand-primary);
  --line:var(--brand-border);
  --muted:var(--brand-muted);
  /* The imported person/expression modules use these aliases. */
  --brand:var(--brand-primary);
  --brand-dark:var(--brand-primary-hover);
  --blue-soft:var(--brand-tint);
  --page:var(--brand-background);
  --surface:var(--brand-surface);
  --text:var(--brand-text);
  --light:var(--brand-soft);
  color:var(--brand-text);
  background:var(--brand-background);
}
body,.console-page{background:var(--brand-background);color:var(--brand-text)}
.console-page{--c-blue:var(--brand-primary);--c-ink:var(--brand-ink);--c-muted:var(--brand-muted);--c-border:var(--brand-border)}
.i-workspace{--i-ink:var(--brand-ink);--i-muted:var(--brand-muted);--i-line:var(--brand-border)}
h1,h2,h3,.headline h1,.c-title-row h1,.c-card-heading h2,.wizard-step h2{color:var(--brand-ink)}
.topbar,.console-page .topbar,.console-page .sidebar{background:var(--brand-surface);border-color:var(--brand-border)}
.c-card,.panel,.content-card,.persona-stats,.expression-stats,.c-workflow,.i-tabs{background:var(--brand-surface);border-color:var(--brand-border)}
.c-page-heading p,.c-card-heading p,.page-heading p,.headline p,.eyebrow,.c-nav-group>p,.breadcrumb,.c-header-side>span{color:var(--brand-secondary)}

/* Light shell, with a navy anchor for the current destination. */
.c-brand,.brand-wordmark,.breadcrumb strong,.console-page .breadcrumb strong{color:var(--brand-ink)}
.c-nav-item{color:var(--brand-secondary)}
.c-nav-item:hover{background:var(--brand-tint);color:var(--brand-ink)}
.c-nav-item.selected,.c-nav-item.selected:hover{background:var(--brand-primary);color:var(--brand-surface)}
.c-nav-item.selected:after{background:var(--brand-highlight)}
.c-nav-item.selected>.icon{color:var(--brand-surface)}
.c-account-avatar{background:var(--brand-tint);color:var(--brand-primary)}
.nav-link.active{background:var(--brand-primary-hover);color:var(--brand-surface)}
.nav-link.active:before{background:var(--brand-highlight)}
.nav-link:hover{background:var(--brand-primary-hover)}
.avatar{background:var(--brand-primary);color:var(--brand-surface)}
.c-device-status,.c-preview-foot{color:var(--brand-secondary)}

/* One action treatment for login, console, dialogs and imported management pages. */
.btn.primary,.c-button.c-primary,.login-submit{
  background:var(--brand-accent);border-color:var(--brand-primary);color:var(--brand-surface);
  box-shadow:0 2px 5px #11111108;
}
.btn.primary:hover:not(:disabled),.c-button.c-primary:hover:not(:disabled),.login-submit:hover:not(:disabled){
  background:var(--brand-accent-hover);border-color:var(--brand-accent-hover);color:var(--brand-surface);
}
.btn.primary:active:not(:disabled),.c-button.c-primary:active:not(:disabled),.login-submit:active:not(:disabled){background:var(--brand-accent-pressed);color:var(--brand-surface)}
.btn:not(.primary):not(.danger):not(.subtle-danger):hover:not(:disabled),.c-button:not(.c-primary):not(.c-danger):hover:not(:disabled){background:var(--brand-tint);border-color:var(--brand-selection-border);color:var(--brand-ink)}
.c-link,.c-button-text,.return-link,.auth-register-link button,.auth-page .login-options>button,.login-demo-card button{color:var(--brand-link)}
.c-link:hover,.return-link:hover,.auth-register-link button:hover{color:var(--brand-ink);text-decoration:underline;text-underline-offset:3px}
.btn.primary:disabled,.c-button.c-primary:disabled,.login-submit:disabled{background:#EDEEF0;border-color:var(--brand-border);color:var(--brand-secondary);opacity:1;box-shadow:none}
input,select,textarea,.console-page input:not([type=range]),.console-page select{color:var(--brand-text)}
input::placeholder,textarea::placeholder{color:var(--brand-secondary)}
input[type=checkbox],input[type=radio],input[type=range]{accent-color:var(--brand-primary)}
.console-page :focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--brand-link);outline-offset:3px}
.console-page input:focus,.console-page select:focus,.input:focus,.login-input-wrap input:focus{
  border-color:var(--brand-selection-border);box-shadow:var(--brand-focus);outline:none;
}
.auth-page .login-input-wrap input[aria-invalid=true],.d-field input[aria-invalid=true],.field.invalid .input{border-color:#BD4250;box-shadow:0 0 0 2px #BD425018}

/* Steps, tabs and choices use the same hierarchy across all three demonstrations. */
.c-step,.c-step small,.c-demo-tabs button{color:var(--brand-secondary)}
.c-step.current,.c-step:hover:not(:disabled){background:var(--brand-tint);color:var(--brand-ink)}
.c-step.current .c-step-number,.i-flow .current b,.i-test-steps .current b{background:var(--brand-primary);border-color:var(--brand-primary);color:var(--brand-surface);box-shadow:none}
.c-step.done .c-step-number{background:var(--brand-tint);border-color:var(--brand-selection-border);color:var(--brand-ink)}
.c-demo-tabs [aria-selected=true]{color:var(--brand-primary)}
.c-demo-tabs [aria-selected=true]:after{background:var(--brand-accent);height:3px}
.c-character.selected,.c-motion.selected,.p-person-card.is-selected,.p-motion-card.is-selected,.i-choice.selected,.i-original-group .i-choice.selected,.ex-choice.selected,.ex-strengths>button.selected{
  background:var(--brand-surface);border-color:var(--brand-selection-border);box-shadow:inset 0 0 0 1px var(--brand-selection-border);color:var(--brand-ink);
}
.p-person-card:hover,.p-motion-card:hover,.i-choice:hover,.ex-choice:hover,.ex-strengths>button:hover{border-color:var(--brand-selection-border)}
.is-selected .p-choice-mark,.selected>.c-radio,.i-choice.selected>b,.ex-choice.selected .ex-choice-check{background:var(--brand-primary);border-color:var(--brand-primary);color:var(--brand-surface)}
.ex-strengths strong,.ex-choice strong,.i-choice strong{color:var(--brand-ink)}
.ex-strength-bars .filled{background:var(--brand-link)}
.ex-choice.selected .ex-face{color:var(--brand-link)}
.tag.blue,.tag.info,.d-sim-tag,.p-summary-mbti{background:var(--brand-tint);color:var(--brand-link);border-color:var(--brand-border)}
.c-badge.processing{color:var(--brand-link)}
.c-badge.processing i{background:var(--brand-link);box-shadow:0 0 0 3px #0D34781A}
.p-section-title>span,.i-section-title>span,.d-topology-icon,.c-feature-icon,.login-heading-icon{background:var(--brand-tint);color:var(--brand-link);border-color:var(--brand-border)}
.p-overview-heading{background:var(--brand-primary);color:var(--brand-surface)}
.p-overview-heading h2,.p-overview-heading h3{color:var(--brand-surface)}
.p-overview-heading>span{color:var(--brand-highlight)}
.p-overview-heading>p{color:#C7CBD2}
.p-person-subtitle,.p-person-meta,.p-summary-person>div>span,.p-current-profile,.p-summary-motion>p,.p-return-rule>p,.i-choice small,.i-section-title p,.i-original-group-title p{color:var(--brand-secondary)}
.p-summary-motion,.ex-selection-summary,.ex-actions,.i-expression-signals,.i-original-group .i-preview-setup{background:var(--brand-soft);border-color:var(--brand-border)}
.d-metric-grid strong:not(.d-amber),.d-wire strong,.d-topology strong{color:var(--brand-ink)}
.d-topology small,.d-field small,.d-config-footer>span,.d-next span,.d-status-heading>small,.d-metric-grid span,.d-metric-grid>div>small,.d-wire>small{color:var(--brand-secondary)}
.d-cable i{background:var(--brand-accent)}

/* Shared 3D surface: neutral light canvas; navy controls stay separate from the model. */
.v-head{--brand-primary:#0D3478;--brand-secondary:#666D78;--brand-border:#E5E7EB;--brand-tint:#F4F4F5;--brand-selection-border:#0D3478;color:var(--brand-ink);background:var(--brand-surface);border-color:var(--brand-border)}
.v-head-stage{background:radial-gradient(ellipse at 50% 38%,#FFFFFF 0%,#F6F6F7 60%,#EDEEF0 100%)}
.v-head-status,.v-head-name small,.v-model-controls span,.v-preview-note,.v-tracking p,.v-tracking>small{color:var(--brand-secondary)}
.v-head-bottom{background:var(--brand-surface);border-color:var(--brand-border)}
.v-head-name strong{color:var(--brand-ink)}
.v-head-name>svg{color:var(--brand-link)}
.v-model-controls,.v-model-controls button,.v-head-tools button,.v-reload{background:var(--brand-surface);border-color:var(--brand-border);color:var(--brand-ink)}
.v-model-controls button:hover,.v-head-tools button:hover{background:var(--brand-accent);border-color:var(--brand-selection-border);color:var(--brand-surface)}
.v-reload:hover{background:var(--brand-tint);border-color:var(--brand-selection-border)}
.v-preview-note{background:var(--brand-soft);border-color:var(--brand-border)}
.v-avatar-canvas:focus-visible{outline:2px solid var(--brand-link);outline-offset:-4px}
.v-avatar-canvas[data-v-pointer]:focus-visible{outline:none}
.v-tracking{background:var(--brand-soft);border-color:var(--brand-border)}
.v-meter-track{background:#E1E3E7}.v-meter-track i{background:var(--brand-link)}
.ex-preview-caption{background:var(--brand-tint);border-color:var(--brand-border)}
.ex-preview-caption>span{background:var(--brand-accent);color:var(--brand-surface)}
.ex-preview-caption strong,.ex-output strong,.ex-selection-summary strong{color:var(--brand-ink)}
.ex-preview-note{background:var(--brand-soft);border-color:var(--brand-border)}
.ex-preview-panel .c-card-heading p,.ex-preview-caption small,.ex-preview-note p,.ex-output span,.ex-control-heading p,.ex-field-heading>span,.ex-field-heading b,.ex-choice small,.ex-strengths small,.ex-selection-summary>span,.ex-selection-summary small,.ex-actions>p:not(.ex-paused-hint){color:var(--brand-secondary)}

/* Login keeps its original static portrait and light logo surface. */
.auth-page,.login-form-panel{background:var(--brand-surface);color:var(--brand-ink)}
.login-brand-panel{background:linear-gradient(145deg,#FAFAFB 0%,#F1F2F3 64%,#E8E9EB 100%)}
.login-brand-copy h1{color:var(--brand-primary)}
.login-brand-copy>p,.login-welcome h2,.login-panel-top{color:var(--brand-ink)}
.login-brand-caption,.login-overline,.login-edition,.login-brand-bottom,.login-welcome>p,.login-welcome>span,.login-env,.login-footer,.login-footer b,.auth-field-hint,.auth-remember-note,.auth-register-link,.auth-demo-entry,.auth-page .login-scope,.auth-local-note{color:var(--brand-secondary)}
.login-brand-panel .login-brand-caption,.login-brand-panel .login-overline,.login-brand-panel .login-edition,.login-brand-panel .login-brand-bottom{color:#5D626B}
.login-portrait-label{background:#FFFFFFE8;border-color:#FFFFFF}
.login-portrait-label strong{color:var(--brand-ink)}
.login-portrait-label div>span,.login-options>label{color:var(--brand-secondary)}
.portrait-marker{background:var(--brand-accent);border-color:var(--brand-link);box-shadow:0 0 0 4px #0D347810}
.login-env>span{background:var(--brand-link)}
.login-input-wrap input{background:var(--brand-surface);border-color:var(--brand-border);color:var(--brand-ink)}
.login-field>label{color:var(--brand-text)}
.login-password-toggle,.login-input-wrap>svg{color:var(--brand-secondary)}
.login-password-toggle:hover{background:var(--brand-tint);color:var(--brand-ink)}
.login-spinner{border-color:#FFFFFF66;border-top-color:var(--brand-surface)}
.login-submit:disabled .login-spinner{border-color:#03122933;border-top-color:var(--brand-ink)}
.auth-channel-tabs{background:var(--brand-soft);border-color:var(--brand-border)}
.auth-channel-tabs button[aria-pressed=true]{background:var(--brand-tint);border-color:var(--brand-selection-border);color:var(--brand-ink);box-shadow:none}
.auth-send-code:not(:disabled),.auth-demo-code,.auth-verified{background:var(--brand-tint);border-color:var(--brand-border);color:var(--brand-link)}
.auth-demo-code>strong,.auth-verified strong{color:var(--brand-ink)}

/* Natural motions and imported content share the palette with the outer shell. */
.ba-flow-step.current,.motion-state-flow .ba-flow-step.done,.motion-state-flow .ba-flow-step.current:not(.done){background:var(--brand-tint);color:var(--brand-ink);box-shadow:inset 0 -2px 0 var(--brand-accent)}
.ba-flow-step.current b,.motion-state-flow .ba-flow-step.current:not(.done) b{background:var(--brand-primary);color:var(--brand-surface)}
.motion-state-flow .ba-flow-step.done b{background:var(--brand-accent);color:var(--brand-surface)}
.motion-choice.is-selected-current{border-color:var(--brand-selection-border);box-shadow:0 0 0 3px #0D347810}
.motion-choice:hover{border-color:var(--brand-selection-border);box-shadow:0 3px 12px #11111108}
.motion-selection-outline rect{stroke:var(--brand-link)}
.current-scene,.motion-detail-panel .current-scene{background:var(--brand-primary);color:var(--brand-surface)}
.current-scene .small-label{color:var(--brand-highlight)}
.console-page .motion-detail-panel .current-scene p,.motion-detail-panel .current-scene p{color:#C7CBD2}
.current-scene h3,.current-scene strong{color:var(--brand-surface)}
.motion-preview-progress span,.motion-preview-phase.main .main-track span{background:var(--brand-primary)}
.motion-preview-phase.trigger .trigger-track span{background:var(--brand-link)}
.motion-next-step,.draft-preview-hint,.motion-edit-footer .preview-action{background:var(--brand-tint);border-color:var(--brand-border);color:var(--brand-link)}
.motion-current-instruction,.plain-steps b{color:var(--brand-ink)}
.motion-empty-icon{background:var(--brand-tint);color:var(--brand-link)}
.motion-choice .scene-card-head p,.motion-current-instruction,.motion-preview-panel>p,.motion-preview-summary dt,.motion-next-step p,.motion-readonly-heading p{color:var(--brand-secondary)}
.persona-stats span,.expression-stats span,.persona-summary,.persona-meta,.table-toolbar p,.assets-head p,.preview-text>p,.preview-text .subtle-note,.step-desc,.field .help,.page-note,.under-preview{color:var(--brand-secondary)}
.profile-icon,.expr-icon,.save-hint,.stage-symbol{background:var(--brand-tint);border-color:var(--brand-border);color:var(--brand-link)}
.voice-card.active,.dialect-chip.active,.expression-row.active{background:var(--brand-tint);border-color:var(--brand-selection-border);color:var(--brand-ink);box-shadow:none}
.expression-row.active{outline:1px solid var(--brand-selection-border)}
.expression-row.active .expr-icon{background:var(--brand-accent);color:var(--brand-surface)}
.editor-stage,.player-stage{background:linear-gradient(145deg,#FAFAFB,#EDEEF0)}
.step-bars .on{background:var(--brand-link)}
.preview-details b,.preview-text h2,.persona-stats strong,.expression-stats strong{color:var(--brand-ink)}

/* Neutralize remaining decorative panels inherited from earlier page styles. */
.c-info,.c-expression-signal,.c-input-source,.c-demo-launch,.c-preview-caption,.staff-return,
.login-demo-card,.login-demo-icon,.auth-verified,.auth-demo-code,.motion-preview-summary>div,
.preview-speed-row>div,.motion-preview-stage-status,.i-live-camera .i-panel-number{
  background:var(--brand-soft);border-color:var(--brand-border);
}
.c-device-visual,.motion-preview-stage,.avatar-scene{background:var(--brand-tint)}
.c-device-icon{background:var(--brand-surface);border-color:var(--brand-border);color:var(--brand-ink);box-shadow:0 12px 30px #11111108}
.c-orbit,.c-orbit:after{border-color:#D1D3D8}
.upload-zone{background:var(--brand-soft);border-color:#B7BDC6;color:var(--brand-link)}
.upload-zone:hover,.upload-zone.drag{background:var(--brand-tint);border-color:var(--brand-selection-border)}
.upload-zone.invalid{border-color:#BD4250}

/* Keep strong color on intentional actions, with white surfaces between them. */
.c-card,.persona-stats,.expression-stats,.panel{box-shadow:0 2px 8px #11111104}
.c-step.current{background:var(--brand-surface);box-shadow:inset 0 -2px 0 var(--brand-primary);color:var(--brand-primary)}
.c-step.done .c-step-number{border-color:var(--brand-border);color:var(--brand-primary)}
.c-button.c-button-text{color:var(--brand-link)}
.login-heading-icon{background:var(--brand-primary);border-color:var(--brand-primary);color:var(--brand-surface)}
.login-overline:before{content:'';display:inline-block;width:20px;height:3px;vertical-align:middle;margin-right:10px;background:var(--brand-highlight)}
.voice-card.active,.dialect-chip.active,.expression-row.active{background:var(--brand-surface);color:var(--brand-primary)}
