/* Shared desktop identity. Layout and semantic node/media colours belong to each tool. */
html[data-yoyer-theme]{
  color-scheme:dark;
  --yo-page:#151815;--yo-panel:#1d221e;--yo-raised:#252b25;--yo-field:#191e1a;
  --yo-line:#384037;--yo-text:#f0f2e9;--yo-muted:#b0b8aa;--yo-accent:#dbdda1;
  --yo-control:#63624b;--yo-soft:#303629;--yo-good:#a8d5ba;--yo-bad:#f1a9aa;
  --bg:var(--yo-page)!important;--page:var(--yo-page)!important;--canvas:var(--yo-page)!important;
  --surface:var(--yo-panel)!important;--surface-2:var(--yo-raised)!important;--raised:var(--yo-raised)!important;
  --input:var(--yo-field)!important;--line:var(--yo-line)!important;--border:var(--yo-line)!important;
  --strong:#58614f!important;--line-strong:#58614f!important;--ink:var(--yo-text)!important;--text:var(--yo-text)!important;
  --muted:var(--yo-muted)!important;--pink:var(--yo-accent)!important;--accent:var(--yo-accent)!important;
  --magenta:var(--yo-accent)!important;--focus:var(--yo-accent)!important;--accent-hover:#eceebf!important;
  --accent-soft:var(--yo-soft)!important;--mint:var(--yo-good)!important;--good:var(--yo-good)!important;--bad:var(--yo-bad)!important;
  min-width:1100px;
}
html[data-yoyer-theme]:not([data-yoyer-theme=entry]) body{background:var(--yo-page)!important;color:var(--yo-text)!important;font-family:"Segoe UI","Microsoft YaHei",sans-serif!important;min-width:1100px}
html[data-yoyer-theme] :is(button,input,select,textarea){font-family:inherit}
html[data-yoyer-theme] :is(button,a,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--yo-accent)!important;outline-offset:3px}
html[data-yoyer-theme] :is(input,select,textarea):not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=file]){color:var(--yo-text)!important;border-color:var(--yo-line)!important;caret-color:var(--yo-accent)}
html[data-yoyer-theme] :is(.field input,.field select,.field textarea,.toolbar input,.toolbar select,.auth-card input,.filters input,.filters select,.orders-filter input,.orders-filter select,.scene-editor textarea){background:var(--yo-field)!important;border-radius:5px!important}
html[data-yoyer-theme] :is(input,textarea)::placeholder{color:#98a28f!important;opacity:1}
html[data-yoyer-theme] :is(input[type=checkbox],input[type=radio],progress){accent-color:var(--yo-accent)!important}
html[data-yoyer-theme] :is(.brand,.brand b,.brand span,.auth-card-brand strong){color:var(--yo-text)!important}
html[data-yoyer-theme] :is(.brand img,.brand-image,.logo.logo-image,.brand-mark.brand-image){width:32px;height:32px;object-fit:contain!important;transform:none!important;background:transparent!important;border:0!important;border-radius:0!important}
html[data-yoyer-theme] .auth-card-brand img{width:43px;height:43px;transform:none!important;object-fit:contain}
html[data-yoyer-theme] :is(.topbar,.site-header,.editor-header,.commandbar,.canvas-head){background:#191d19!important;border-color:var(--yo-line)!important;color:var(--yo-text)!important}
html[data-yoyer-theme] :is(.sidebar,.toolrail){background:#191e19!important;border-color:var(--yo-line)!important}
html[data-yoyer-theme] :is(.nav button,.nav a,.topbar nav button,.topbar nav a){color:var(--yo-muted)!important;border-radius:5px!important}
html[data-yoyer-theme] :is(.nav button.active,.nav a.active,.topbar nav .active,.nav button:hover,.nav a:hover){color:var(--yo-accent)!important;background:var(--yo-soft)!important}
html[data-yoyer-theme] :is(.primary,.button-primary,.submit,.upload-action,.inspiration-card button,.node.output){background:var(--yo-control)!important;color:#f5f5ce!important;border-color:#888a62!important;border-radius:5px!important}
html[data-yoyer-theme] :is(.primary:hover,.button-primary:hover,.submit:hover){background:#74755a!important}
html[data-yoyer-theme] :is(.secondary,.quiet,.professional,.back,.top-action,.icon-action,.text-link,.simple-studio-entry,.free-canvas-entry,.payment-table td button){background:var(--yo-raised)!important;color:var(--yo-text)!important;border-color:var(--yo-line)!important;border-radius:5px!important}
html[data-yoyer-theme] :is(.professional,.simple-studio-entry,.free-canvas-entry){color:var(--yo-accent)!important;border-color:#667052!important}
html[data-yoyer-theme] :is(.text-button,.eyebrow,.panel-title span,.hero small,.guide-block small,.mode-check,.step-number,.pro-note,.price-row strong){color:var(--yo-accent)!important}
html[data-yoyer-theme] :is(.panel,.summary-card,.stat,.section,.payment-card,.library,.resource-card,.auth-card,.denied,.drawer,.drawer-card,.video-task,.scene,.template,.asset-item,.modal,dialog,.admin-gate){background:var(--yo-panel)!important;border-color:var(--yo-line)!important;color:var(--yo-text)!important;border-radius:7px!important}
html[data-yoyer-theme] :is(.section-head,.section,.resource-actions,.dialog-heading,.auth-card-brand,.side-foot,.hero,.quick-guide,.pro-note,.generate-area,.recent,.inspiration,.billing-row,.audit,.billing-ledger-admin article){border-color:var(--yo-line)!important}
html[data-yoyer-theme] :is(.prompt-box,.mode-select,.quality,.chip,.mode-tabs button,.guide-block,.guide-visual,.history-item,.video-task dl div,.tutorial-example,.callback-box,.price-row,.account-menu,.account-menu button){background:var(--yo-raised)!important;border-color:var(--yo-line)!important;color:var(--yo-text)!important}
html[data-yoyer-theme] :is(.mode-tabs button[aria-selected=true],.template.selected,.quality.selected,.chip.selected,.auth-tabs button.active,.topup-option[aria-pressed=true],.type-option[aria-pressed=true]){background:var(--yo-soft)!important;border-color:var(--yo-accent)!important;color:var(--yo-accent)!important;outline-color:var(--yo-accent)!important}
html[data-yoyer-theme] :is(.mode-tabs small,.helper,.muted,.field-note,.sub,.page-head p,.page-heading p,.hero p,.summary-card small,.summary-card span,.guide-block p,.art-copy p,.credit,.crumb,.stat small,.stat span,.section-head p,.gateway-provider p,.auth-copy p,.auth-card label,.terms,.demo,.account-info span,.drawer-card span,.billing-price span,.billing-price-card p,.status,.artwork-meta span){color:var(--yo-muted)!important}
html[data-yoyer-theme] :is(.step-number,.tutorial-highlight){border-color:var(--yo-accent)!important;outline-color:var(--yo-accent)!important}
html[data-yoyer-theme] :is(.summary-card i,.avatar,.account-button .avatar,.tutorial-symbol,.upload-icon,.empty-preview i,.denied .icon){background:var(--yo-soft)!important;color:var(--yo-accent)!important}
html[data-yoyer-theme] :is(.switch.on,.progress-track span){background:var(--yo-control)!important}
html[data-yoyer-theme] .switch:after{background:#f2f2d3!important}
html[data-yoyer-theme] :is(.table th,.payment-table th){background:#252b24!important;color:var(--yo-muted)!important;border-color:var(--yo-line)!important}
html[data-yoyer-theme] :is(.table td,.payment-table td){background:var(--yo-panel)!important;color:var(--yo-text)!important;border-color:var(--yo-line)!important}
html[data-yoyer-theme] .table tr:hover td{background:#272e26!important}
html[data-yoyer-theme] .table a{color:var(--yo-accent)!important}
html[data-yoyer-theme] :is(.badge,.badge.pink,.status-pill){background:#30382d!important;color:#dce2ce!important}
html[data-yoyer-theme] :is(.badge.good,.status.completed,.status-pill.completed,.toast.success){background:#223b2e!important;color:#b8e4c7!important}
html[data-yoyer-theme] :is(.error,.notice.error,.badge.bad,.toast.error,.status.failed,.status-pill.failed,.form-error:not(.success),.generation-error){color:#ffc1bd!important;background-color:#3d2728!important;border-color:#915454!important}
html[data-yoyer-theme] :is(.danger,.amount-negative,.balance-low){color:#ffc1bd!important}
html[data-yoyer-theme] :is(.form-error.success,.amount-positive){color:#b8e4c7!important}
html[data-yoyer-theme] :is(.modal-close,.account-button:hover,.account-menu button:hover){background:var(--yo-raised)!important;color:var(--yo-text)!important}
html[data-yoyer-theme] :is(.empty-result,.resource-cover,.empty-preview,.preview-wrap){background-color:#181d18!important;border-color:var(--yo-line)!important}
html[data-yoyer-theme] .preview-wrap{background-image:radial-gradient(#3d4737 1px,transparent 1px)!important}
html[data-yoyer-theme] .wallet-panel{background:linear-gradient(110deg,#303729,#1d221e)!important;border-color:#5f684f!important}
html[data-yoyer-theme] .billing-balance{background:var(--yo-soft)!important;border-color:#667052!important}
html[data-yoyer-theme] .billing-balance :is(small,span){color:#c9d0b9!important}
html[data-yoyer-theme] .welcome{background:#273024!important;border-color:#4c5e42!important}
html[data-yoyer-theme] .collection-tabs button[aria-selected=true]{color:var(--yo-accent)!important;border-color:var(--yo-accent)!important}
html[data-yoyer-theme] .collection-tabs button[aria-selected=true]:after{background:var(--yo-accent)!important}
html[data-yoyer-theme] :is(.topup-option,.type-option){background:var(--yo-raised)!important;border-color:var(--yo-line)!important;color:var(--yo-text)!important}

/* Landing page keeps its work gallery; only the surrounding brand chrome changes. */
html[data-yoyer-theme] :is(.empty-result>.lucide,.mode-tabs button[aria-selected=true]>.lucide,.feature-showcase-head span,.canvas-launch-surface .art-copy em,.artwork-video-badge svg){color:var(--yo-accent)!important}
html[data-yoyer-theme] :is(.tpl-current,.feature-action,.video-model-profile,.upload,.upload.upload-polished,.canvas-head button){background:var(--yo-raised)!important;border-color:var(--yo-line)!important;color:var(--yo-text)!important;border-radius:5px!important}
html[data-yoyer-theme] :is(.tpl-current:hover,.feature-action-canvas,.video-model-profile.ready,.canvas-launch-surface){border-color:#667052!important;background:var(--yo-panel)!important}
html[data-yoyer-theme] :is(.video-model-profile>header>span,.upload .upload-icon,.tpl-tag,.tpl-filter.active){background:var(--yo-soft)!important;border-color:#667052!important;color:var(--yo-accent)!important}
html[data-yoyer-theme] .canvas-launch-surface:hover{box-shadow:0 0 0 2px #dbdda12a,0 16px 40px #0007!important;border-color:var(--yo-accent)!important}
html[data-yoyer-theme] .artboard{background:var(--yo-panel)!important}
html[data-yoyer-theme] :is(.video-model-profile p,.video-model-profile footer,.video-model-profile small,.feature-action span,.field label){color:var(--yo-muted)!important}
html[data-yoyer-theme=admin] :is(.table th,.table td,.field label,.field-note,.stat small,.stat span,.page-head p,.section-head p,.audit,.billing-price-card p,.billing-price b,.billing-price span){font-size:12px!important;line-height:1.6}
html[data-yoyer-theme=admin] :is(.nav button,.primary,.secondary,.top-action){font-size:13px!important}
html[data-yoyer-theme=admin] :is(.sub,.badge,.billing-ledger-admin article){font-size:11px!important;line-height:1.6}
html[data-yoyer-theme=admin] .field label{color:var(--yo-muted)!important}
html[data-yoyer-theme] .brand{text-decoration:none!important}

/* Landing page keeps its work gallery; only the surrounding brand chrome changes. */
html[data-yoyer-theme=home] :is(.capabilities,.site-footer,.workflow){background:var(--yo-page)!important}
html[data-yoyer-theme=home] .closing{background:var(--yo-panel)!important;border-block:1px solid var(--yo-line)}
html[data-yoyer-theme=home] .closing :is(h2,p){color:var(--yo-text)!important}
html[data-yoyer-theme=home] .closing .button{background:var(--yo-control)!important;color:#f5f5ce!important}
html[data-yoyer-theme=home] :is(.hero-wordmark){font-family:"Segoe UI","Microsoft YaHei",sans-serif;letter-spacing:-.065em;font-weight:500}
html[data-yoyer-theme=home] :is(.artwork-kind,.artwork[data-kind=anime] .artwork-kind,.artwork[data-kind=space] .artwork-kind){color:var(--yo-accent)!important}

/* Authentication uses the same quiet fluid material as the new entrance. */
html[data-yoyer-theme=auth] .liquid-background{background:#151815 url('/assets/identity/fluid-poster.webp') center / cover no-repeat!important}
html[data-yoyer-theme=auth] .auth-scrim{background:linear-gradient(90deg,#15181530,#15181540 40%,#151815bb)!important}
html[data-yoyer-theme=auth] .auth-card{background:#1d221ef5!important;box-shadow:0 24px 80px #0005}
html[data-yoyer-theme=auth] .auth-tabs{background:var(--yo-field)!important;border-color:var(--yo-line)!important;border-radius:5px!important}
html[data-yoyer-theme=auth] :is(.password-wrap button,.auth-extra a,.reset-back){color:var(--yo-accent)!important}
html[data-yoyer-theme=auth] :is(.auth-copy h2,.intro h1){color:var(--yo-text)!important}
html[data-yoyer-theme=auth] .intro>p:not(.eyebrow){color:#d3d9cb!important}
html[data-yoyer-theme=auth] .auth-header{height:80px}
html[data-yoyer-theme=auth] .auth-layout{min-height:calc(100dvh - 80px);padding-top:28px;grid-template-columns:minmax(0,1fr) minmax(450px,530px)}
html[data-yoyer-theme=auth] .auth-card{padding:26px 30px;max-width:530px}
html[data-yoyer-theme=auth] .auth-copy{margin:22px 0 18px}
html[data-yoyer-theme=auth] .auth-copy h2{font-size:28px}
html[data-yoyer-theme=auth] .auth-copy p{font-size:14px}
html[data-yoyer-theme=auth] .auth-card :is(input,.submit){height:46px;font-size:14px}
html[data-yoyer-theme=auth] .auth-tabs button{height:40px;font-size:14px}
html[data-yoyer-theme=auth] .auth-card label{font-size:13px}
html[data-yoyer-theme=auth] .auth-card .password-wrap button{top:14px;font-size:12px}
html[data-yoyer-theme=auth] .intro h1{font-size:clamp(38px,3.7vw,58px)}
html[data-yoyer-theme=auth] .intro-stat{margin-top:38px}
html[data-yoyer-theme=auth] .auth-extra{font-size:13px;margin-top:16px}

/* Dense editing controls share chrome, not node semantics or 3D materials. */
html[data-yoyer-theme=canvas] body.is-director{--director-accent:var(--yo-accent);--director-muted:var(--yo-muted);--director-line:var(--yo-line);--director-panel:var(--yo-panel);--director-field:var(--yo-field)}
html[data-yoyer-theme=canvas] :is(.inspector,.inspector-tabs,.workflow-node,.workflow-node-header,#director-outliner,#image-generator-panel,.image-generator-header,.node-context-menu,.zoom-controls){background:var(--yo-panel)!important;border-color:var(--yo-line)!important;color:var(--yo-text)!important}
html[data-yoyer-theme=canvas] :is(button.active,.modes button.active,.inspector-tabs button.active){background:var(--yo-soft)!important;color:var(--yo-accent)!important;border-color:#667052!important}
html[data-yoyer-theme=canvas] #quick-board{background-color:#171c17;background-image:radial-gradient(#3b4737 .8px,transparent .8px)}
html[data-yoyer-theme=canvas] #quick-board.no-grid{background-image:none}
html[data-yoyer-theme=canvas] .workflow-node.is-selected{border-color:var(--node-color)!important}
html[data-yoyer-theme=canvas] :is(.property-field input,.property-field select,.property-field textarea,.inspector input,.inspector select,.inspector textarea){background:var(--yo-field)!important}

/* Public entrance already defines its composition and logo treatments. */
html[data-yoyer-theme=entry]{min-width:1024px}
html[data-yoyer-theme=entry] body{background:#1a1a1a}
@media(prefers-reduced-motion:reduce){html[data-yoyer-theme] :is(button,a,input,select,textarea){transition:none!important}}
