:root{color-scheme:light}
.theme-toggle{display:grid;place-items:center;width:36px;height:36px;padding:7px;border:1px solid transparent;border-radius:50%;background:transparent;color:var(--ink);flex-shrink:0}
.theme-toggle:hover{background:var(--border)}
.theme-toggle:focus-visible{outline:2px solid var(--accent-text);outline-offset:3px}
.theme-toggle svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.theme-toggle .theme-sun{display:none}
.art-word em{font-style:normal}
html[data-theme=dark]{color-scheme:dark;--ink:#F7EBF0;--brand:#D9A2AE;--accent:#D9A2AE;--accent-text:#E9BACA;--button-text:#21191D;--button-hover:#E3B4C0;--button-active:#F0CED8;--soft:#38272F;--paper:#21191D;--muted:#C9B3BA;--border:#543B46;--field-border:#AE8A99}
html[data-theme=dark] .theme-toggle .theme-moon{display:none}
html[data-theme=dark] .theme-toggle .theme-sun{display:block}
html[data-theme=dark] a:hover{color:var(--accent-text)}
html[data-theme=dark] .announcement{background:#4A323E;color:var(--ink)}
html[data-theme=dark] .eyebrow{color:var(--accent-text)}
html[data-theme=dark] .hero h1 em{color:var(--brand)}
html[data-theme=dark] .hero-copy>p,
html[data-theme=dark] .hero-note,
html[data-theme=dark] .steps p{color:var(--muted)}
html[data-theme=dark] .hero-art{background:#38272F}
html[data-theme=dark] .art-orbit{background:#4A323E}
html[data-theme=dark] .art-orbit.second{background:#422D37;border-color:#795565}
html[data-theme=dark] .art-word{color:#E3B4C0}
html[data-theme=dark] .round-stamp{border-color:var(--brand)}
html[data-theme=dark] .value-strip,
html[data-theme=dark] .site-footer,
html[data-theme=dark] .admin-nav{background:#2C2027}
html[data-theme=dark] .product-image{background:#38272F}
html[data-theme=dark] .product-card:nth-child(3n+2) .product-image{background:#422D37}
html[data-theme=dark] .product-card:nth-child(3n) .product-image{background:#4A323E}
html[data-theme=dark] .product-tag,
html[data-theme=dark] .product-arrow{background:#2C2027EA;color:var(--ink)}
html[data-theme=dark] .how-section,
html[data-theme=dark] .detail-visual,
html[data-theme=dark] .empty-state,
html[data-theme=dark] .checkout-summary,
html[data-theme=dark] .address-panel,
html[data-theme=dark] .stat-card,
html[data-theme=dark] .studio-callout{background:#38272F}
html[data-theme=dark] .steps b{color:var(--brand)}
html[data-theme=dark] .editor-panel,
html[data-theme=dark] .question-editor{background:#2C2027}
html[data-theme=dark] .sticky-save{background:#30222BEE}
html[data-theme=dark] .status-badge,
html[data-theme=dark] .admin-nav>a.active,
html[data-theme=dark] .nav-link.active{background:#563442;color:var(--ink)}
html[data-theme=dark] .primary-button,
html[data-theme=dark] .btn-primary,
html[data-theme=dark] .category-tabs>a.selected{background:var(--accent);color:var(--button-text)}
html[data-theme=dark] .form-control,
html[data-theme=dark] select.form-select{border-color:var(--field-border)}
html[data-theme=dark] .text-danger,
html[data-theme=dark] .validation-message{color:#ffb4a8}
html[data-theme=dark] .validation-summary-errors,
html[data-theme=dark] .alert,
html[data-theme=dark] #blazor-error-ui{background:#48312E;color:#F9DAD0}
html[data-theme=dark] ::selection{background:#795565;color:#fff}
/* Use darker rose for small text; #A75D74 is reserved for filled controls. */
body .mud-primary-text,
.mud-button-text-primary,
.mud-button-outlined-primary{color:var(--accent-text)!important}
.mud-button-outlined-primary{border-color:var(--accent-text)}
.mud-input-control:focus-within .mud-input-label{color:var(--accent-text)!important}
.mud-button-filled.mud-button-filled-primary:not(:disabled):not(.mud-disabled){background-color:var(--accent);color:var(--button-text)}
.mud-button-filled.mud-button-filled-primary:hover:not(:disabled):not(.mud-disabled),
.primary-button:hover,.btn-primary:hover,.category-tabs>a.selected:hover{background-color:var(--button-hover);color:var(--button-text)}
.mud-button-filled.mud-button-filled-primary:active:not(:disabled):not(.mud-disabled),
.primary-button:active,.btn-primary:active{background-color:var(--button-active);color:var(--button-text)}
.mud-button:focus-visible,.primary-button:focus-visible,.btn-primary:focus-visible{outline:2px solid var(--accent-text);outline-offset:3px}
@media(max-width:760px){.header-actions{gap:10px}.theme-toggle{width:32px;height:32px;padding:5px}}
