/* ═══════════════════════════════════════════════════════════════════════════
 * deepkold.com · aurora.css — DARK AURORA override + component layer.
 * Loaded LAST (after tokens.css + core.css + shared.css). Wins on source order.
 *   1. Dark aurora page background + fixed page-aura glow.
 *   2. Re-themes every hard-coded LIGHT chrome rule from core.css to dark.
 *   3. Adds the Dark Aurora component vocabulary the page bodies render with
 *      (holo text, occasion tiles, product cards, section heads, grids, tags).
 * Keeps every existing class name so all functional JS / markup keeps working.
 * 2026-05-30
 * ═══════════════════════════════════════════════════════════════════════════ */

/* ───── 0. Page substrate — dark aurora wash + grain ───── */
html { background: var(--dvx-paper); }
body.dvx {
  background: var(--dvx-page-bg);
  background-attachment: fixed;
  color: var(--dvx-ink);
  font-family: var(--dvx-font-body);
}
body.dvx *::selection { background: var(--dvx-awake); color: #06121A; }

/* fixed full-page aurora glow — keeps colour behind EVERY section (never flat black) */
.dvx-page-aura {
  position: fixed; inset: 0; z-index: 0; overflow: hidden; pointer-events: none;
}
.dvx-page-aura span {
  position: absolute; border-radius: 50%; filter: blur(130px);
}
.dvx-page-aura span:nth-child(1){ left:-8%;  top:-6%;   width:560px; height:560px; background:#35E0C2; opacity:.20; }
.dvx-page-aura span:nth-child(2){ left:60%;  top:4%;    width:600px; height:600px; background:#7C6AF0; opacity:.22; }
.dvx-page-aura span:nth-child(3){ left:90%;  top:40%;   width:480px; height:480px; background:#FF9ECB; opacity:.13; }
.dvx-page-aura span:nth-child(4){ left:12%;  top:62%;   width:560px; height:560px; background:#4FA8FF; opacity:.16; }
.dvx-page-aura span:nth-child(5){ left:74%;  top:86%;   width:520px; height:520px; background:#54D69B; opacity:.15; }
.dvx-page-aura span:nth-child(6){ left:30%;  top:108%;  width:520px; height:520px; background:#A98CF6; opacity:.14; }

/* headings → Sora, tight */
.dvx h1,.dvx h2,.dvx h3,.dvx h4 { font-family: var(--dvx-font-display); font-weight: 700; letter-spacing: var(--dvx-tr-display); line-height: var(--dvx-lh-tight); color: var(--dvx-ink); }
.dvx h1 { letter-spacing: -0.035em; }

/* ───── 1. Holographic helpers ───── */
@keyframes dvxShimmer { to { background-position: 200% center; } }
.dvx-holo-text {
  background: var(--dvx-holo); background-size: 220% auto;
  -webkit-background-clip: text; background-clip: text; color: transparent;
}
.dvx-holo-anim { animation: dvxShimmer 7s linear infinite; }
.dvx-holo-fill { background: var(--dvx-holo); color: var(--dvx-on-accent); }
.dvx-holo-bar { height: 3px; background: var(--dvx-holo); opacity: .8; border-radius: 999px; }
.dvx-holo-dot { width: 10px; height: 10px; border-radius: 50%; background: var(--dvx-holo); flex-shrink: 0; }

/* ───── 2. Glass / cards (dark) ───── */
.dvx-glass {
  background: var(--dvx-glass-grad);
  -webkit-backdrop-filter: var(--dvx-glass-blur);
  backdrop-filter: var(--dvx-glass-blur);
  border: 1px solid var(--dvx-glass-edge);
  border-radius: var(--dvx-r-lg);
  box-shadow: var(--dvx-glass-shadow);
}
.dvx-glass-deep, .dvx-glass--deep { background: linear-gradient(180deg, rgba(255,255,255,0.12), rgba(255,255,255,0.05)); border-color: var(--dvx-glass-edge); }
.dvx-flat, .dvx-glass--flat { background: rgba(255,255,255,0.04); border: 1px solid var(--dvx-hair); border-radius: var(--dvx-r-md); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); }
.dvx-card { background: var(--dvx-glass-grad); border: 1px solid var(--dvx-glass-edge); border-radius: var(--dvx-r-lg); -webkit-backdrop-filter: var(--dvx-glass-blur); backdrop-filter: var(--dvx-glass-blur); box-shadow: var(--dvx-glass-shadow); }
.dvx-ink-card { background: var(--dvx-glass-grad); color: var(--dvx-ink); border: 1px solid var(--dvx-glass-edge); border-radius: var(--dvx-r-md); }
.dvx-rule { background: var(--dvx-hair); }

/* ───── 3. Wrap / layout ───── */
.dvx-wrap { max-width: var(--dvx-max-w); margin: 0 auto; padding: 0 var(--dvx-pad-x); width: 100%; }
.dvx-grid-2 { display: grid; grid-template-columns: repeat(2,1fr); gap: 18px; }
.dvx-grid-3 { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; }
.dvx-grid-4 { display: grid; grid-template-columns: repeat(4,1fr); gap: 16px; }

/* ───── 4. Eyebrow / mono / type helpers ───── */
.dvx-eyebrow { font-family: var(--dvx-font-mono); font-size: var(--dvx-fs-micro); letter-spacing: 0.2em; text-transform: uppercase; color: var(--dvx-ink-2); }
.dvx-micro   { font-family: var(--dvx-font-mono); font-size: var(--dvx-fs-mono-sm); letter-spacing: 0.12em; text-transform: uppercase; color: var(--dvx-ink-3); }
.dvx-num     { font-family: var(--dvx-font-display); font-variant-numeric: tabular-nums; letter-spacing: -0.03em; font-weight: 800; }

/* ───── 5. Tags / pills / chips ───── */
.dvx-tag { display:inline-flex; align-items:center; gap:6px; padding:5px 11px; border-radius:999px; font-family:var(--dvx-font-mono); font-size:10px; letter-spacing:0.12em; text-transform:uppercase; font-weight:700; }
.dvx-tag-dark { background: rgba(10,16,30,0.55); color:#fff; -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px); border:1px solid rgba(255,255,255,0.12); }
.dvx-tag-soft { background: rgba(255,255,255,0.08); color: var(--dvx-ink); }
.dvx-tag-onlight { background: rgba(8,15,26,0.78); color:#fff; }
.dvx-tag-dot { width:6px; height:6px; border-radius:50%; background: currentColor; }

.dvx-pill { background: rgba(255,255,255,0.05); border: 1px solid var(--dvx-hair); color: var(--dvx-ink); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); }
.dvx-pill:hover { background: rgba(255,255,255,0.1); }
.dvx-pill.is-active { background: var(--dvx-holo); color: var(--dvx-on-accent); border-color: transparent; }
.dvx-pill.is-active:hover { background: var(--dvx-holo); filter: brightness(1.05); }
.dvx-chip { background: rgba(255,255,255,0.07); border: 1px solid var(--dvx-hair); color: var(--dvx-ink); }
.dvx-chip-ink { background: var(--dvx-holo); color: var(--dvx-on-accent); border-color: transparent; }
.dvx-flavor-dot-pip { background: rgba(255,255,255,0.16); }
.dvx-flavor-dot-pip.is-on { background: var(--dvx-ink); }

/* ───── 6. Buttons ───── */
.dvx-btn-primary { background: var(--dvx-holo); color: var(--dvx-on-accent); border-color: transparent; font-weight: 700; }
.dvx-btn-primary:hover { background: var(--dvx-holo); color: var(--dvx-on-accent); filter: brightness(1.06); box-shadow: 0 14px 34px -12px rgba(116,215,255,0.5); }
.dvx-btn-primary .dvx-btn-arrow { background: var(--dvx-on-accent); color: #fff; }
.dvx-btn-ghost { background: rgba(255,255,255,0.05); color: var(--dvx-ink); border-color: var(--dvx-glass-edge); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); }
.dvx-btn-ghost:hover { background: rgba(255,255,255,0.1); color: #fff; border-color: var(--dvx-awake); }
.dvx-btn-ghost .dvx-btn-arrow { background: var(--dvx-ink); color: var(--dvx-on-accent); }
.dvx-btn-arrow { background: rgba(255,255,255,0.14); color: var(--dvx-ink); }
.dvx-btn-red { background: var(--dvx-holo); color: var(--dvx-on-accent); border-color: transparent; font-weight: 700; }
.dvx-btn-red:hover { background: var(--dvx-holo); color: var(--dvx-on-accent); filter: brightness(1.06); }

/* ───── 7. Linklike (arrow links) ───── */
.dvx-linklike { font-weight: 700; font-size: 14px; display: inline-flex; align-items: center; gap: 6px; transition: gap .14s var(--dvx-ease); cursor: pointer; }
.dvx-linklike:hover { gap: 10px; }

/* ───── 8. Section head ───── */
.dvx-section-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; flex-wrap: wrap; margin-bottom: 26px; }
.dvx-section-head h2 { font-size: 34px; }
.dvx-section-head .dvx-section-sub { font-size: 15.5px; color: var(--dvx-ink-2); margin-top: 12px; max-width: 560px; }

/* ───── 9. Occasion tiles + accents ───── */
.dvx-tile-awake { background: var(--dvx-awake-tile); }
.dvx-tile-calm  { background: var(--dvx-calm-tile); }
.dvx-tile-pure  { background: var(--dvx-pure-tile); }
.dvx-occ-awake { color: var(--dvx-awake); }
.dvx-occ-calm  { color: var(--dvx-calm); }
.dvx-occ-pure  { color: var(--dvx-pure); }
.dvx-occ-bar-awake { background: var(--dvx-awake-ink); }
.dvx-occ-bar-calm  { background: var(--dvx-calm-ink); }
.dvx-occ-bar-pure  { background: var(--dvx-pure-ink); }

/* ───── 10. Product card (light, sits on dark) ───── */
.dvx-prod-card {
  background: #FBFCFE; border: 1px solid rgba(14,23,38,0.07); border-radius: var(--dvx-r-lg);
  overflow: hidden; display: flex; flex-direction: column;
  box-shadow: 0 28px 64px -30px rgba(0,0,0,0.7);
}
.dvx-prod-media { position: relative; aspect-ratio: 16/10; overflow: hidden; padding: 16px; }
.dvx-prod-media img { width: 100%; height: 100%; object-fit: contain; mix-blend-mode: multiply; }
.dvx-prod-tags { position: absolute; top: 14px; left: 14px; display: flex; gap: 6px; z-index: 2; }
.dvx-prod-body { padding: 20px 22px 22px; display: flex; flex-direction: column; flex: 1; }
.dvx-prod-body h3 { font-size: 19px; color: #0E1726; }
.dvx-prod-blurb { font-size: 13.5px; color: #56657C; margin: 7px 0 4px; flex: 1; }
.dvx-prod-meta { font-family: var(--dvx-font-mono); font-size: 11px; color: #94A2B6; letter-spacing: 0.04em; }
.dvx-prod-foot { display: flex; align-items: center; justify-content: space-between; margin-top: 16px; }
/* price on a light card */
.dvx-prod-card .dvx-price-sale { color: #0E1726; }
.dvx-prod-card .dvx-price-list { color: #9AA6B8; }
/* pouch can cluster */
.dvx-pouch-cluster { display: flex; height: 100%; align-items: center; justify-content: center; gap: 4px; padding-top: 12px; }
.dvx-pouch-cluster img { border-radius: 50%; box-shadow: 0 8px 16px -8px rgba(20,30,60,0.4); mix-blend-mode: normal; }

/* format card (home hero) */
.dvx-format-card { background: linear-gradient(125deg,#D7F0EC 0%,#D8E4F6 42%,#E6DEF2 74%,#F4E2EC 100%); border: 1px solid rgba(14,23,38,0.06); border-radius: var(--dvx-r-lg); padding: 24px; position: relative; overflow: hidden; box-shadow: 0 28px 64px -32px rgba(0,0,0,0.72); }
.dvx-format-card .dvx-fc-eyebrow { font-family: var(--dvx-font-mono); font-size: 10.5px; letter-spacing: 0.14em; color: #8089A0; }
.dvx-format-card h3 { font-size: 22px; margin-top: 8px; color: #16213A; }
.dvx-format-card p { font-size: 13.5px; color: #566177; margin: 8px 0 14px; }
.dvx-format-card .dvx-linklike { color: #2E6E7C; }
.dvx-fc-top { position: absolute; top: 0; left: 0; right: 0; height: 3px; background: var(--dvx-holo); opacity: .75; }

/* occasion card (light misty pastel) */
.dvx-occ-card { border: 1px solid rgba(14,23,38,0.06); border-radius: var(--dvx-r-lg); padding: 26px; position: relative; overflow: hidden; box-shadow: 0 28px 64px -32px rgba(0,0,0,0.72); }
.dvx-occ-card.awake { background: linear-gradient(150deg,#CFEFEA 0%,#CBE6F4 55%,#D6E9F4 100%); }
.dvx-occ-card.calm  { background: linear-gradient(150deg,#E4DCF4 0%,#E7DCF0 55%,#DEDDF4 100%); }
.dvx-occ-card.pure  { background: linear-gradient(150deg,#D5EFDC 0%,#CFEBE6 55%,#DCF0E2 100%); }
.dvx-occ-card h3 { color: #16213A; }
.dvx-occ-card .dvx-occ-when { font-family: var(--dvx-font-mono); font-size: 11px; color: #566177; }
.dvx-occ-card p { font-size: 14px; color: #566177; }
.dvx-occ-icon { width: 42px; height: 42px; border-radius: 12px; background: rgba(255,255,255,0.55); display: flex; align-items: center; justify-content: center; }
.dvx-occ-chip { display: inline-flex; align-items: center; padding: 5px 11px; border-radius: 999px; font-family: var(--dvx-font-mono); font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase; font-weight: 700; background: rgba(20,28,46,0.07); color: #46505F; }

/* ───── 11. FAQ (dark) ───── */
.dvx-faq details { border-bottom: 1px solid var(--dvx-hair); }
.dvx-faq summary { color: var(--dvx-ink); }
.dvx-faq summary::after { color: var(--dvx-awake); }
.dvx-faq-a { color: var(--dvx-ink-2); }

/* spec rows / tables (dark) */
.dvx-specs-row { border-bottom: 1px solid var(--dvx-hair); }
.dvx-specs-key { color: var(--dvx-ink-3); }
.dvx-spec-value, .dvx-specs-val { color: var(--dvx-ink); }
.dvx-tldr { background: var(--dvx-glass-grad); border: 1px solid var(--dvx-glass-edge); -webkit-backdrop-filter: var(--dvx-glass-blur); backdrop-filter: var(--dvx-glass-blur); }

/* no-claim callout */
.dvx-noclaim { border-radius: var(--dvx-r-md); border: 1px dashed var(--dvx-hair-2); background: rgba(255,255,255,0.025); padding: 16px 18px; }
.dvx-noclaim .dvx-micro { color: var(--dvx-ink-3); margin-bottom: 6px; display: block; }
.dvx-noclaim p { font-size: 13.5px; color: var(--dvx-ink-2); line-height: 1.5; }

/* ───── 12. Header (dark glass) ───── */
.dvx-header-logo, .dvx-header-nav { background: var(--dvx-glass-grad); border: 1px solid var(--dvx-glass-edge); -webkit-backdrop-filter: saturate(160%) blur(14px); backdrop-filter: saturate(160%) blur(14px); box-shadow: var(--dvx-glass-shadow); }
.dvx-header-nav a:hover { background: rgba(255,255,255,0.08); color: #fff; }
.dvx-header-nav a.is-active, .dvx-header-nav a[aria-current="page"] { background: var(--dvx-holo); color: var(--dvx-on-accent); }
.dvx-nav-trigger:hover, .dvx-nav-has-menu:hover .dvx-nav-trigger, .dvx-nav-has-menu:focus-within .dvx-nav-trigger { background: rgba(255,255,255,0.08); }
.dvx-nav-dropdown { background: var(--dvx-paper-deep); border: 1px solid var(--dvx-hair-2); box-shadow: 0 18px 48px -12px rgba(0,0,0,.6); }
.dvx-nav-dropdown a:hover { background: rgba(255,255,255,0.06); }
.dvx-nav-dd-meta { color: var(--dvx-ink-3); }
.dvx-icon-btn { background: var(--dvx-glass-grad); border: 1px solid var(--dvx-glass-edge); color: var(--dvx-ink); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); }
.dvx-cart-count { background: var(--dvx-holo); color: var(--dvx-on-accent); }
.dvx-nav-toggle { background: var(--dvx-glass-grad); border: 1px solid var(--dvx-glass-edge); }
.dvx-nav-toggle span { background: var(--dvx-ink); }

/* ───── 13. Footer (dark) ───── */
.dvx-footer-inner { background: #0A0F1C !important; border: 1px solid var(--dvx-hair) !important; position: relative; overflow: hidden; }
.dvx-footer-inner::before { content:""; position:absolute; top:-140px; left:16%; width:680px; height:280px; background: var(--dvx-holo); filter: blur(90px); opacity:.16; pointer-events:none; }
.dvx-footer-inner > * { position: relative; }
.dvx-footer-col h4 { color: var(--dvx-ink-3); }
.dvx-footer-col li a { color: var(--dvx-ink-2); }
.dvx-footer-col li a:hover { color: #fff; }
.dvx-footer-meta, .dvx-footer-legal, .dvx-footer-build { color: var(--dvx-ink-3); }
.dvx-footer-brand p { color: var(--dvx-ink-2); }
.dvx-footer-warning { color: var(--dvx-ink); }
.dvx-footer-bottom-row { border-top: 1px solid var(--dvx-hair); }
.dvx-footer-social a { background: rgba(255,255,255,0.06); border: 1px solid var(--dvx-hair); color: var(--dvx-ink); }
.dvx-footer-social a:hover { color: #fff; border-color: var(--dvx-awake); }
.dvx-logo-sub { color: var(--dvx-ink-3); opacity: 1; }

/* subscribe ("Deepkold Drops") — dark, holo accent */
.dvx-scroll { background: var(--dvx-glass-grad); border: 1px solid var(--dvx-glass-edge); }
.dvx-scroll-seal { background: var(--dvx-holo); color: var(--dvx-on-accent); box-shadow: 0 2px 6px rgba(116,215,255,0.35); }
.dvx-scroll-h { color: var(--dvx-ink); }
.dvx-scroll-sub { color: var(--dvx-ink-3); }
.dvx-scroll-brush { background: rgba(255,255,255,0.04); border: 1px solid var(--dvx-hair-2); }
.dvx-scroll-brush:focus-within { border-color: var(--dvx-awake); }
.dvx-scroll-brush input { color: var(--dvx-ink); }
.dvx-scroll-brush input::placeholder { color: var(--dvx-ink-4); }
.dvx-scroll-brush button { background: var(--dvx-holo); color: var(--dvx-on-accent); }
.dvx-scroll-brush button:hover:not(:disabled) { filter: brightness(1.06); background: var(--dvx-holo); }
.dvx-scroll-echo--ok { background: rgba(84,214,155,0.1); color: #A6F2DC; border: 1px solid rgba(84,214,155,0.3); }
.dvx-scroll-echo--stray { background: rgba(255,255,255,0.05); color: var(--dvx-ink-2); border: 1px solid var(--dvx-hair-2); }

/* ───── 14. Mobile dialog + cart panel (dark) ───── */
.dvx-mobile-dialog { background: var(--dvx-paper-deep); color: var(--dvx-ink); }
.dvx-mobile-dialog::backdrop { background: rgba(3,6,14,0.6); backdrop-filter: blur(4px); }
.dvx-mobile-close { background: rgba(255,255,255,0.06); border: 1px solid var(--dvx-hair); color: var(--dvx-ink); }
.dvx-mobile-list a { color: var(--dvx-ink); }
.dvx-mobile-list details ul a { color: var(--dvx-ink-2); }
.dvx-mobile-meta { color: var(--dvx-ink-3); }
.dvx-mobile-divider { background: var(--dvx-hair); }
.dvx-cart-panel { background: var(--dvx-paper-deep); border-left: 1px solid var(--dvx-hair-2); box-shadow: -30px 0 60px -20px rgba(0,0,0,0.7); }
.dvx-cart-panel-head, .dvx-cart-panel-foot { border-color: var(--dvx-hair); }
.dvx-cart-item { border-color: var(--dvx-hair); }
.dvx-cart-qty button { border: 1px solid var(--dvx-hair); }
.dvx-cart-rm { color: var(--dvx-ink-3); }

/* ───── 15. Atmosphere blobs → aurora palette (subtler on dark) ───── */
.dvx-atmosphere .dvx-blob { filter: blur(120px); }
.dvx-atmosphere[data-preset="rose"]   .dvx-blob:nth-child(1){ background:radial-gradient(circle,#35E0C2 0%,transparent 65%); opacity:.34; }
.dvx-atmosphere[data-preset="rose"]   .dvx-blob:nth-child(2){ background:radial-gradient(circle,#56B8FF 0%,transparent 65%); opacity:.34; }
.dvx-atmosphere[data-preset="rose"]   .dvx-blob:nth-child(3){ background:radial-gradient(circle,#C79CFF 0%,transparent 65%); opacity:.30; }
.dvx-atmosphere[data-preset="rose"]   .dvx-blob:nth-child(4){ background:radial-gradient(circle,#7CF0CE 0%,transparent 65%); opacity:.24; }
.dvx-atmosphere[data-preset="rose"]   .dvx-blob:nth-child(5){ background:radial-gradient(circle,#FF9ECB 0%,transparent 65%); opacity:.26; }
.dvx-atmosphere[data-preset="cool"]   .dvx-blob:nth-child(1){ background:radial-gradient(circle,#56B8FF 0%,transparent 65%); opacity:.34; }
.dvx-atmosphere[data-preset="cool"]   .dvx-blob:nth-child(2){ background:radial-gradient(circle,#7C6AF0 0%,transparent 65%); opacity:.32; }
.dvx-atmosphere[data-preset="cool"]   .dvx-blob:nth-child(3){ background:radial-gradient(circle,#35E0C2 0%,transparent 65%); opacity:.26; }
.dvx-atmosphere[data-preset="cool"]   .dvx-blob:nth-child(4){ background:radial-gradient(circle,#C79CFF 0%,transparent 65%); opacity:.24; }
.dvx-atmosphere[data-preset="cool"]   .dvx-blob:nth-child(5){ background:radial-gradient(circle,#56B8FF 0%,transparent 65%); opacity:.22; }
.dvx-atmosphere[data-preset="aurora"] .dvx-blob:nth-child(1){ background:radial-gradient(circle,#7C6AF0 0%,transparent 65%); opacity:.30; }
.dvx-atmosphere[data-preset="aurora"] .dvx-blob:nth-child(2){ background:radial-gradient(circle,#56B8FF 0%,transparent 65%); opacity:.30; }
.dvx-atmosphere[data-preset="aurora"] .dvx-blob:nth-child(3){ background:radial-gradient(circle,#54D69B 0%,transparent 65%); opacity:.26; }
.dvx-atmosphere[data-preset="aurora"] .dvx-blob:nth-child(4){ background:radial-gradient(circle,#FF9ECB 0%,transparent 65%); opacity:.22; }
.dvx-atmosphere[data-preset="aurora"] .dvx-blob:nth-child(5){ background:radial-gradient(circle,#C79CFF 0%,transparent 65%); opacity:.24; }
.dvx-atmosphere[data-preset="aurora"] .dvx-blob:nth-child(6){ background:radial-gradient(circle,#35E0C2 0%,transparent 65%); opacity:.20; }
.dvx-atmosphere[data-preset="peach"]  .dvx-blob:nth-child(1){ background:radial-gradient(circle,#56B8FF 0%,transparent 65%); opacity:.32; }
.dvx-atmosphere[data-preset="peach"]  .dvx-blob:nth-child(2){ background:radial-gradient(circle,#FF9ECB 0%,transparent 65%); opacity:.28; }
.dvx-atmosphere[data-preset="peach"]  .dvx-blob:nth-child(3){ background:radial-gradient(circle,#7C6AF0 0%,transparent 65%); opacity:.26; }
.dvx-atmosphere[data-preset="peach"]  .dvx-blob:nth-child(4){ background:radial-gradient(circle,#C79CFF 0%,transparent 65%); opacity:.22; }
.dvx-atmosphere[data-preset="peach"]  .dvx-blob:nth-child(5){ background:radial-gradient(circle,#54D69B 0%,transparent 65%); opacity:.22; }
.dvx-atmosphere[data-preset="meadow"] .dvx-blob:nth-child(1){ background:radial-gradient(circle,#54D69B 0%,transparent 65%); opacity:.32; }
.dvx-atmosphere[data-preset="meadow"] .dvx-blob:nth-child(2){ background:radial-gradient(circle,#56B8FF 0%,transparent 65%); opacity:.30; }
.dvx-atmosphere[data-preset="meadow"] .dvx-blob:nth-child(3){ background:radial-gradient(circle,#35E0C2 0%,transparent 65%); opacity:.24; }
.dvx-atmosphere[data-preset="meadow"] .dvx-blob:nth-child(4){ background:radial-gradient(circle,#C79CFF 0%,transparent 65%); opacity:.22; }
.dvx-atmosphere[data-preset="meadow"] .dvx-blob:nth-child(5){ background:radial-gradient(circle,#7C6AF0 0%,transparent 65%); opacity:.20; }
.dvx-atmosphere[data-preset="mono"]   .dvx-blob:nth-child(1){ background:radial-gradient(circle,#35E0C2 0%,transparent 65%); opacity:.18; }
.dvx-atmosphere[data-preset="mono"]   .dvx-blob:nth-child(2){ background:radial-gradient(circle,#7C6AF0 0%,transparent 65%); opacity:.18; }
.dvx-atmosphere[data-preset="mono"]   .dvx-blob:nth-child(3){ background:radial-gradient(circle,#4FA8FF 0%,transparent 65%); opacity:.16; }

/* ───── 16. Prose / article (dark) ───── */
.dvx-doc-root, .dvx-footer { position: relative; z-index: 1; }
.dvx-prose p, .dvx-prose li { color: var(--dvx-ink-2); }
.dvx-prose h2, .dvx-prose h3 { color: var(--dvx-ink); }
.dvx-prose a { color: var(--dvx-awake); }
hr, .dvx-hr { border-color: var(--dvx-hair); background: var(--dvx-hair); }

/* form fields (dark) — contact / account / checkout / search reskin */
.dvx-field, input.dvx-field, textarea.dvx-field,
.dvx input[type="text"], .dvx input[type="email"], .dvx input[type="password"],
.dvx input[type="tel"], .dvx input[type="search"], .dvx textarea, .dvx select {
  background: rgba(255,255,255,0.04); border: 1px solid var(--dvx-hair-2); border-radius: 12px;
  color: var(--dvx-ink); font: inherit; padding: 12px 14px; outline: none; transition: .15s var(--dvx-ease);
}
.dvx input:focus, .dvx textarea:focus, .dvx select:focus, .dvx-field:focus { border-color: var(--dvx-awake); box-shadow: 0 0 0 3px rgba(79,214,224,0.15); }
.dvx input::placeholder, .dvx textarea::placeholder { color: var(--dvx-ink-4); }

/* ───── 17. Responsive ───── */
@media (max-width: 980px) {
  .dvx-grid-3, .dvx-grid-4 { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 680px) {
  .dvx-grid-3, .dvx-grid-4, .dvx-grid-2 { grid-template-columns: 1fr; }
  .dvx h1 { font-size: 44px; }
}
@media (max-width: 820px) {
  .dvx-wrap { padding: 0 var(--dvx-pad-x-sm); }
}
@media (prefers-reduced-motion: reduce) {
  .dvx-holo-anim { animation: none; }
  .dvx-blob, .dvx-page-aura span { animation: none; }
}

/* ───── 18. Inline wordmark — deepk❄ld (light ink + holo snowflake), dark-safe ───── */
.dvx-wordmark { font-family: var(--dvx-font-display); font-weight: 700; letter-spacing: -0.02em; line-height: 1; color: var(--dvx-ink); display: inline-flex; align-items: center; }
.dvx-wm-flake { display: inline-flex; align-items: center; justify-content: center; width: .92em; height: .92em; border-radius: 50%; background: var(--dvx-holo); margin: 0 .05em; flex-shrink: 0; }
.dvx-wm-flake svg { width: .62em; height: .62em; display: block; }
.dvx-header-logo .dvx-wordmark { font-size: 24px; }
.dvx-footer-brand .dvx-wordmark { font-size: 26px; }

/* ───── 19. Remaining LIGHT component classes from core.css → dark ───── */
/* PDP variation chrome */
.dvx-pdp-group-tab { background: rgba(255,255,255,0.04); border-color: var(--dvx-hair); color: var(--dvx-ink); }
.dvx-pdp-group-tab:hover { background: rgba(255,255,255,0.09); }
.dvx-pdp-group-tab.is-active, .dvx-pdp-group-tab[aria-selected="true"] { background: var(--dvx-holo); color: var(--dvx-on-accent); border-color: transparent; }
.dvx-pdp-flavor-chip { background: rgba(255,255,255,0.04); border-color: var(--dvx-hair); color: var(--dvx-ink); }
.dvx-pdp-flavor-chip:hover { background: rgba(255,255,255,0.09); }
.dvx-pdp-flavor-chip.is-active, .dvx-pdp-flavor-chip[aria-pressed="true"] { border-color: var(--dvx-awake); background: rgba(255,255,255,0.1); }
.dvx-pdp-qty { background: rgba(255,255,255,0.04); border-color: var(--dvx-hair); }
.dvx-pdp-qty-btn { background: transparent; color: var(--dvx-ink); }
.dvx-pdp-qty-btn:hover { background: rgba(255,255,255,0.09); }
.dvx-pdp-buy-now { background: rgba(255,255,255,0.05); border-color: var(--dvx-glass-edge); color: var(--dvx-ink); }
.dvx-pdp-buy-now:hover { background: rgba(255,255,255,0.1); }
.dvx-pdp-tab { color: var(--dvx-ink-2); }
.dvx-pdp-tab:hover { background: rgba(255,255,255,0.07); color: var(--dvx-ink); }
.dvx-pdp-tab.is-active, .dvx-pdp-tab[aria-current="true"] { background: var(--dvx-holo); color: var(--dvx-on-accent); }
.dvx-pdp-quickspec > div { background: rgba(255,255,255,0.04); border: 1px solid var(--dvx-hair); }
.dvx-pdp-cta-msg { color: var(--dvx-red); }
/* chips / pills / stamps */
.dvx-flavor-card-device-pill { background: rgba(255,255,255,0.07); border: 1px solid var(--dvx-hair); color: var(--dvx-ink); }
.dvx-stamp { background: rgba(255,255,255,0.05); border: 1px solid var(--dvx-hair); color: var(--dvx-ink); }
.dvx-info-section-chip { background: rgba(255,255,255,0.07); border: 1px solid var(--dvx-hair); color: var(--dvx-ink); }
.dvx-flavor-card-multi { background: var(--dvx-glass-grad); }
/* quick-spec component (AI citation surface) */
.dvx-quick-spec { background: var(--dvx-glass-grad); border: 1px solid var(--dvx-glass-edge); border-radius: var(--dvx-r-md); }
.dvx-quick-spec summary { color: var(--dvx-ink); }
.dvx-quick-spec dt { color: var(--dvx-ink-3); }
.dvx-quick-spec dd, .dvx-quick-spec p { color: var(--dvx-ink-2); }
.dvx-tldr-tag { color: var(--dvx-awake); font-family: var(--dvx-font-mono); }
/* account / cart / search / checkout / tracking / age-verify form chrome */
.dvx-acct-points-card { background: var(--dvx-glass-grad); border: 1px solid var(--dvx-glass-edge); }
.dvx-acct-status-pending { background: rgba(244,180,58,.16); color: #F4C770; }
.dvx-av-file-wrap { background: rgba(255,255,255,0.04); border: 1px dashed var(--dvx-hair-2); color: var(--dvx-ink-2); }
.dvx-cart-line-qty { background: rgba(255,255,255,0.04); border: 1px solid var(--dvx-hair); }
.dvx-cart-line-qty button { background: transparent; color: var(--dvx-ink); }
.dvx-cart-line-qty button:hover { background: rgba(255,255,255,0.09); }
.dvx-search-shell input[type="search"] { background: rgba(255,255,255,0.04); border: 1px solid var(--dvx-hair-2); color: var(--dvx-ink); }
.dvx-search-shell input[type="search"]:focus { border-color: var(--dvx-awake); box-shadow: 0 0 0 3px rgba(79,214,224,0.15); background: rgba(255,255,255,0.06); }
.dvx-cart-coupon-input { background: rgba(255,255,255,0.04); border: 1px solid var(--dvx-hair-2); color: var(--dvx-ink); }
.dvx-tracking-form-input { background: rgba(255,255,255,0.04); border: 1px solid var(--dvx-hair-2); color: var(--dvx-ink); }
.dvx-checkout-block select { background: rgba(255,255,255,0.04); border: 1px solid var(--dvx-hair-2); color: var(--dvx-ink); }
.dvx-checkout-block select:focus { border-color: var(--dvx-awake); box-shadow: 0 0 0 3px rgba(79,214,224,0.15); }
.dvx-checkout-points { background: var(--dvx-glass-grad); border: 1px solid var(--dvx-glass-edge); }
.dvx-guide-warn code { background: rgba(255,255,255,0.08); color: var(--dvx-ink); }
/* generic checkout/cart wide-section cards that read paper-deep — keep but ensure border visible */
.dvx-wide-card, .dvx-util-card { border: 1px solid var(--dvx-glass-edge); }

/* ───── 20. PDP polish — light product tile + visible selected flavor chip ───── */
.dvx-pdp-gallery-main { background: transparent; border: none; box-shadow: 0 30px 60px -30px rgba(0,0,0,.6); }
.dvx-pdp-flavor-chip.is-selected { border-color: var(--dvx-awake); background: rgba(255,255,255,0.1); color: #fff; box-shadow: 0 0 0 1px var(--dvx-awake); }
.dvx-pdp-flavor-selected { color: var(--dvx-awake); }
