.noveraThemeToggle { position:fixed; left:max(16px,env(safe-area-inset-left)); bottom:calc(18px + env(safe-area-inset-bottom)); z-index:45; display:inline-flex; align-items:center; justify-content:center; gap:9px; min-height:44px; padding:11px 15px; border:1px solid #cbbfae; border-radius:999px; background:#f5f1e9; color:#514a40; box-shadow:0 4px 18px #0002; cursor:pointer; font:500 12px/1.3 Arial,sans-serif; touch-action:manipulation; }
.noveraThemeToggle svg { width:20px; height:20px; flex-shrink:0; }
.noveraThemeToggle .themeSun { display:none; }
.noveraThemeToggle:focus-visible { outline:2px solid #ad8963; outline-offset:4px; }
@media(max-width:600px) { .noveraThemeToggle { padding:11px; } .noveraThemeToggle span { display:none!important; } }
@media screen {
  html[data-novera-theme="dark"] { color-scheme:dark; --paper:#191918; --cream:#22221f; --ink:#e7e2d9; --taupe:#b8a58d; --line:#45423c; --muted:#bbb1a4; --accent:#d2a57f; }
  html[data-novera-theme="dark"] .noveraThemeToggle { background:#292824; color:#e7d6b8; border-color:#62584a; }
  html[data-novera-theme="dark"] .noveraThemeToggle .themeMoon { display:none; }
  html[data-novera-theme="dark"] .noveraThemeToggle .themeSun { display:block; }
  html[data-novera-theme="dark"] :is(.shopLayout,.products,.catalogProducts,.catalogHeroVisual,.hero-image) { background:#191918; }
  html[data-novera-theme="dark"] :is(.nav > nav,.homeSearchField,.shopSidebar,.shopMobileHeader details nav,.shopCard,.aboutVisit,.approachPlannerButton,.offerDialog,.requestCard,.tokyoTeamPrices,.tokyoOptionsInner svg,.folio,.controls) { background:#242420; color:#e7e2d9; border-color:#45423c; box-shadow:none; }
  html[data-novera-theme="dark"] :is(.nav > nav > a,.approachPlannerButton > svg,.homeSearchField input,.homeSearchField > svg) { color:#e7e2d9; }
  html[data-novera-theme="dark"] :is(.nav > nav > a:hover,.nav > nav > a[aria-current="page"],.approachPlannerButton:hover,.homeSearchResults a:hover,.shopSidebar nav a:hover,.shopSidebar nav a[aria-current="page"],.shopMobileHeader nav a[aria-current="page"]) { background:#39372f; color:#f1e9dd; border-color:#736652; box-shadow:none; }
  html[data-novera-theme="dark"] :is(.brandLogo,.shopLogo img,.shopMobileHeader img,.aboutSignature img) { filter:invert(.9); }
  html[data-novera-theme="dark"] .brand svg g { fill:#e7e2d9; }
  html[data-novera-theme="dark"] :is(.collectionGrid p,.collectionStatus,.productDescription,.productDetails span,.showroomCopy > p:not(.eyebrow),.homeSearchHint,.homeSearchResults small,.shopNavLabel,.shopSidebarFoot p,.shopBreadcrumb,.shopHeading > p,.shopResults,.shopCardBody > p,.shopEmpty p,.shopFooter,.aboutBreadcrumb,.aboutEyebrow,.aboutOpening figcaption,.aboutOpening p,.aboutChapter p,.aboutSignature span,.backLink,.catalogHeroCopy > p:last-child,.tokyoPartPrices > p,.tokyoPartTable td::before,.tokyoTeamCount) { color:#bbb1a4; }
  html[data-novera-theme="dark"] :is(.shopCardBottom strong,.productPrices strong,.productPrices small,.tokyoPartTable td:first-of-type,.aboutIntro h1 em) { color:#d8b98f; }
  html[data-novera-theme="dark"] :is(.contact,footer) { background:#121311; color:#ded7ca; }
  html[data-novera-theme="dark"] .shopFooter { background:transparent; color:#bbb1a4; }
  html[data-novera-theme="dark"] .productCta { background:#bba484; color:#191918; }
  html[data-novera-theme="dark"] .productZoomButton { background:#242420ee; color:#e7e2d9; }
  html[data-novera-theme="dark"] :is(.productLightbox,.productLightboxArrow) { color:#e7e2d9; }
  html[data-novera-theme="dark"] .shopSidebar nav .shopPlannerLink,
  html[data-novera-theme="dark"] .shopMobileHeader nav .shopPlannerLink { background:#292824; color:#e7e2d9; border-color:#45423c; }
  html[data-novera-theme="dark"] :is(.offerDialog input:not([type="checkbox"]),.offerDialog select,.offerDialog textarea) { background:#191918; color:#e7e2d9; border-color:#62584a; }
  html[data-novera-theme="dark"] :is(.tokyoTeamPrices .tokyoPartTable caption,.tokyoTeamPrices .tokyoPartTable tbody th,.tokyoTeamPrices .tokyoPartTable tbody td,.tokyoBedroomDetail .tokyoPartTable td,.tokyoOptionsInner p) { color:#e7e2d9; }
  html[data-novera-theme="dark"] :is(.tokyoPartTable thead,.tokyoTeamPrices .tokyoPartTable thead th) { background:#33312b; color:#c9bbab; }
  html[data-novera-theme="dark"] .tokyoBedroomDetail .tokyoPartTable tbody tr:hover { background:#39372f; }
}
@media print { .noveraThemeToggle { display:none!important; } }
