/* Shared palette. Video and product imagery retain their original colors. */
html[data-theme="dark"]{color-scheme:dark;--bg:#101113;--surface:#191b1e;--panel:#222428;--ink:#f7f5f0;--muted:#bdbdc3;--line:#424449;--accent:#eee5d6;--field:#1b1d21;--button:#eee5d6;--button-ink:#17181b;--warm:#302b24;--warm-ink:#eee1ce;--error:#ffb6a7;--focus:#e5ceb1}
html[data-theme="light"]{color-scheme:light;--bg:#f7f5f1;--surface:#eeece6;--panel:#fffdfa;--ink:#191b1e;--muted:#555960;--line:#c9c8c4;--accent:#694b30;--field:#fffdfa;--button:#202226;--button-ink:#fffdfa;--warm:#ebe1d2;--warm-ink:#51402b;--error:#a32923;--focus:#755334}
html[data-theme]{--portal-bg:var(--bg);--portal-ink:var(--ink);--portal-muted:var(--muted);--portal-line:var(--line)}
html[data-theme] body,html[data-theme] .admin-body{background:var(--bg);color:var(--ink)}
html[data-theme] header{background:var(--bg);border-color:var(--line)}
html[data-theme] :is(.about,.process,.faq){background:var(--surface);color:var(--ink)}
html[data-theme] .works{background:var(--panel)}
html[data-theme] :is(.about .eyebrow,.process .eyebrow,.faq .eyebrow,.eyebrow,.about-grid p,.services-heading p,.service-list p,.steps p,.steps span,.work-grid figcaption span,.faq-answer,.faq .services-heading p,.contact p,.contact-email,.footer-business dt){color:var(--muted)}
html[data-theme] :is(.about-grid .large-copy,.footer-business dd,.faq>.text-link){color:var(--ink)}
html[data-theme] :is(.service-list article,.steps>div,.faq-item,.faq-empty,.footer-business,footer){border-color:var(--line)}
html[data-theme] .contact-note{color:var(--muted)!important}
html[data-theme] :is(.nav-contact,.contact .contact-actions .quote-start,.btn.light){background:var(--button);color:var(--button-ink);border-color:var(--button)}
html[data-theme] :is(.nav-contact,.contact .contact-actions .quote-start,.btn.light):hover{filter:brightness(.93)}
html[data-theme] :is(#language-select,.language-control select){background:var(--field);color:var(--ink);border-color:var(--line)}
html[data-theme] :is(a,button,input,select,textarea,summary):focus-visible{outline-color:var(--focus)}
.theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:44px;min-height:44px;padding:8px 11px;border:1px solid var(--line);border-radius:2px;background:var(--field);color:var(--ink);font:13px/1.2 Arial,'Apple SD Gothic Neo',sans-serif;flex:none;white-space:nowrap;cursor:pointer}
.theme-toggle:hover{border-color:var(--ink)}.theme-icon{font-size:21px;line-height:1}.theme-label{font-size:12px}.admin-header .language-control{margin-left:auto}.login-panel{position:relative}.login-panel>.theme-toggle{position:absolute;right:25px;top:32px}
html[data-theme="light"] .card-wordmark img{filter:invert(1);mix-blend-mode:multiply}
html[data-theme="light"] .corner-logo{background:#fff;border-color:#c9c8c4}
html[data-theme="light"] .corner-logo img{filter:invert(1)}
/* A lighter veil reveals the reel while preserving contrast for dark typography. */
html[data-theme="light"] .hero,html[data-theme="light"] .hero-media{background:#f7f5f1}
html[data-theme="light"] .hero-shade{background:linear-gradient(0deg,#f7f5f1dc 0%,#f7f5f18c 38%,#f7f5f1a3 100%)}
html[data-theme="light"] :is(.hero-top,.typing-caption p,.hero-bottom p,.replay-typing){color:#1c1e22}
html[data-theme="light"] .type-key{background:#fffc;color:#686b70;border-color:#a5a6a8}
html[data-theme="light"] .type-key.is-lit{background:#e7e2d9;color:#16181b;border-color:#45484d;box-shadow:none}
html[data-theme="light"] .type-key.is-pressed{background:#25272b;color:#fff;border-color:#25272b}
html[data-theme="light"] .wordmark-caret{background:#25272b}
html[data-theme="light"] .hero .primary{background:#202226;color:#fffdfa}
html[data-theme="light"] .hero .outline{background:#ffffff80;color:#202226;border-color:#696b70}
html[data-theme="light"] .hero .outline:hover{background:#fff}
/* Inquiry, conversation, quote and owner screens share the selected mode. */
html[data-theme] :is(#inquiry-dialog,.detail-panel,.choice,.quantity-chip,.wizard-actions,.receipt,.consent-line,.optional-details,.privacy-details,.admin-header,.admin-tabs,.faq-edit-item,.delivery-list,.quote-form,.history-item,.quote-document .quote-copy,.admin-chat){border-color:var(--line)}
html[data-theme] .wizard-actions{background:var(--portal-bg)}
html[data-theme] :is(.wizard-step legend,.choice small,.field-label>span,.field-hint,.quantity-input span,.optional-details,.privacy-details,.optional-details summary span,#inquiry-success>p,.admin-header>span,.admin-header>a:last-child,.admin-heading>p,.inbox-toolbar,.inbox-card p,.inbox-card small,.inbox-meta time,.field-caption,.empty-state,.faq-editor-intro p,.login-panel p,.back-home,.thread-security,.thread-help,.chat-meta,.faq-language-hint,.language-control){color:var(--muted)}
html[data-theme] :is(.field-label,.choice i,.quantity-chip,.check-line,.optional-details summary,.btn.subtle,.thread-help a){color:var(--ink)}
html[data-theme] :is(.field-label input,.field-label textarea,.field-label select,.detail-panel>select,.private-link-field){background:var(--field);color:var(--ink);border-color:var(--line)}
html[data-theme] :is(.field-label input,.field-label textarea)::placeholder{color:var(--muted)}
html[data-theme] .quantity-input input{color:var(--ink)}
html[data-theme] .check-line input{accent-color:var(--ink)}
html[data-theme] .choice:has(input:checked){border-color:var(--ink);background:var(--surface)}
html[data-theme] .choice input{background:var(--field);border-color:var(--muted)}
html[data-theme] .choice input:checked{border-color:var(--ink);background:var(--field)}
html[data-theme] .wizard-progress li{border-color:var(--line);color:var(--muted)}
html[data-theme] .wizard-progress li[data-active]{border-color:var(--ink);color:var(--ink)}
html[data-theme] .quantity-chip[aria-pressed=true]{background:var(--button);color:var(--button-ink);border-color:var(--button)}
html[data-theme] .request-summary{background:var(--surface);color:var(--ink);border-color:var(--ink)}
html[data-theme] .form-error{color:var(--error)}
html[data-theme] :is(.notice,.status-pill,.admin-alert-bar){background:var(--warm);color:var(--warm-ink);border-color:var(--line)}
html[data-theme] :is(.chat-status,.success-message,.faq-save-status,.delivery-row,.chat-meta strong){color:var(--warm-ink)}
html[data-theme] .inbox-card{background:var(--panel);color:var(--ink);border-color:var(--line)}
html[data-theme] .inbox-card.selected{border-color:var(--ink)}
html[data-theme] .admin-tabs button{color:var(--muted)}
html[data-theme] .admin-tabs button.active{color:var(--ink);border-color:var(--ink)}
html[data-theme] .chat-message{background:var(--panel);border-color:var(--line)}
html[data-theme] .chat-message.customer{background:var(--warm);border-color:var(--line)}
html[data-theme] .chat-message.owner{border-left-color:var(--accent)}
html[data-theme] .quote-thread-card{color:var(--ink);border-color:var(--line)}
@media(max-width:1100px){header nav{gap:16px}.nav-contact{margin-left:0}.theme-toggle{padding:8px;gap:0}.theme-label{display:none}}
@media(max-width:760px){header nav{gap:7px}.theme-toggle{width:40px;min-width:40px;min-height:44px}header .card-wordmark{width:84px;height:20px}header .card-wordmark img{width:138.7px;left:-28px;top:-23.5px}.admin-header{gap:10px}.admin-header .language-control{min-width:0}}
@media(max-width:360px){header{padding-inline:4%}header nav{gap:5px}.nav-contact{font-size:11px!important;padding:9px 7px!important}#language-select{max-width:91px}.theme-toggle{width:36px;min-width:36px}.admin-header .language-control select{max-width:108px}}
