/* ==========================================================================
   WYRR Lens — the one brand system for every wyrr.me panel.            v2
   Loaded LAST in each panel so it owns the tokens. Every panel keeps its own
   token names; this sheet maps all of them onto the Lens palette, swaps the
   type system to Inter / JetBrains Mono, lays the ambient gold glows and the
   vignette under the page, and exposes the lens primitives the per-panel map
   (generated, see wyrr-lens-map) applies to each panel's surfaces.
   ========================================================================== */
:root{
  /* Lens palette */
  --lens-gold:#C9A84C; --lens-gold-2:#DCBE6B; --lens-gold-3:#F0DCA0; --lens-gold-deep:#9A7B32; --lens-gold-ink:#1C1506; --lens-gold-rgb:201,168,76;
  --lens-ink:#060608; --lens-ink-2:#0B0B0F; --lens-ink-3:#111117;
  --lens-txt:#F3EFE6; --lens-txt-2:rgba(243,239,230,.68); --lens-txt-3:rgba(243,239,230,.44); --lens-txt-4:rgba(243,239,230,.26);
  --lens-glass:rgba(13,12,17,.58); --lens-line:rgba(201,168,76,.22); --lens-line-soft:rgba(255,255,255,.08); --lens-line-hard:rgba(201,168,76,.5);
  --lens-blur:blur(28px) saturate(1.6) brightness(1.04);
  --lens-shadow:0 40px 100px -30px rgba(0,0,0,.9),0 0 0 .5px rgba(255,255,255,.03);
  --lens-shadow-sm:0 18px 48px -18px rgba(0,0,0,.8);
  --lens-font-ui:"Inter",-apple-system,BlinkMacSystemFont,"SF Pro Text","SF Pro Display","Segoe UI",sans-serif;
  --lens-font-mono:"JetBrains Mono",ui-monospace,"SF Mono",Menlo,monospace;
  /* glass + gold primitives (theme-aware; the generated per-panel maps reference these) */
  --lens-glass-bg:rgba(13,12,17,.58);
  --lens-glass-grad:linear-gradient(158deg,rgba(255,255,255,.075),rgba(255,255,255,.015) 48%,rgba(201,168,76,.04));
  --lens-glass-border:rgba(255,255,255,.07);
  --lens-glass-shadow:0 30px 80px -30px rgba(0,0,0,.85),inset 0 1px 0 rgba(255,255,255,.12),inset 0 -1px 0 rgba(0,0,0,.25);
  --lens-ring:linear-gradient(135deg,rgba(201,168,76,.55),rgba(255,255,255,.10) 36%,rgba(255,255,255,.04) 62%,rgba(201,168,76,.24));
  --lens-gold-grad:linear-gradient(150deg,#F0DCA0,#C9A84C 55%,#9A7B32);
  --lens-gold-shadow:0 12px 32px -12px rgba(201,168,76,.8),inset 0 1px 0 rgba(255,255,255,.45);
  --lens-pill-bg:linear-gradient(158deg,rgba(255,255,255,.08),rgba(255,255,255,.02)),rgba(13,12,17,.58);
  --lens-pill-border:rgba(255,255,255,.1);
  --lens-pill-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 18px 40px -24px rgba(0,0,0,.8);

  /* ---- every token name the panels use, mapped onto the Lens palette ---- */
  --gold:#C9A84C!important; --gold-2:#DCBE6B!important; --gold-3:#F0DCA0!important; --gold-soft:#DCBE6B!important; --gold-bright:#F0DCA0!important;
  --gold-hi:#DCBE6B!important; --gold-deep:#9A7B32!important; --gold-dim:rgba(201,168,76,.14)!important; --gold-line:rgba(201,168,76,.38)!important;
  --gold-glow:rgba(201,168,76,.16)!important; --gold-10:rgba(201,168,76,.10)!important; --gold-24:rgba(201,168,76,.24)!important;
  --pf-gold:#C9A84C!important; --pf-gold-hi:#DCBE6B!important; --pf-gold-10:rgba(201,168,76,.10)!important; --pf-gold-24:rgba(201,168,76,.24)!important;
  --ink:#060608!important; --ink-2:#0B0B0F!important; --ink-3:#111117!important; --bg:#060608!important; --bg-0:#060608!important; --bg-1:#0B0B0F!important; --bg1:#0B0B0F!important; --bg2:#111117!important; --bg3:#17161D!important;
  --pf-bg:#060608!important; --pf-s1:rgba(13,12,17,.58)!important; --pf-s2:rgba(22,20,27,.5)!important; --pf-well:rgba(0,0,0,.28)!important;
  --panel:rgba(13,12,17,.58)!important; --panel-hi:rgba(22,20,27,.5)!important; --surface:rgba(13,12,17,.58)!important;
  --glass:rgba(13,12,17,.58)!important; --glass-2:rgba(22,20,27,.5)!important; --glass-3:rgba(32,29,38,.42)!important; --glass-hi:rgba(22,20,27,.5)!important;
  --glass-grad:linear-gradient(158deg,rgba(255,255,255,.075),rgba(255,255,255,.015) 48%,rgba(201,168,76,.04))!important;
  --blur:blur(28px) saturate(1.6) brightness(1.04)!important;
  --text:#F3EFE6!important; --txt:#F3EFE6!important; --pf-tx:#F3EFE6!important;
  --text-dim:rgba(243,239,230,.68)!important; --txt-2:rgba(243,239,230,.68)!important; --muted:rgba(243,239,230,.68)!important; --pf-tx2:rgba(243,239,230,.68)!important; --ink2:rgba(243,239,230,.68)!important;
  --text-faint:rgba(243,239,230,.44)!important; --txt-3:rgba(243,239,230,.44)!important; --faint:rgba(243,239,230,.44)!important; --pf-tx3:rgba(243,239,230,.44)!important; --ink3:rgba(243,239,230,.44)!important; --txt-4:rgba(243,239,230,.26)!important;
  --hairline:rgba(255,255,255,.08)!important; --hairline-hi:rgba(201,168,76,.28)!important; --line:rgba(255,255,255,.08)!important; --line-soft:rgba(255,255,255,.08)!important; --line-hard:rgba(201,168,76,.5)!important; --line2:rgba(255,255,255,.14)!important; --line-gold:rgba(201,168,76,.28)!important;
  --pf-line:rgba(255,255,255,.08)!important; --pf-line2:rgba(255,255,255,.12)!important; --pf-line3:rgba(201,168,76,.3)!important;
  --vignette:rgba(0,0,0,.4)!important;
  --shadow:0 40px 100px -30px rgba(0,0,0,.9)!important; --shadow-sm:0 18px 48px -18px rgba(0,0,0,.8)!important; --shadow-card:0 30px 80px -30px rgba(0,0,0,.85)!important;
  --font-ui:"Inter",-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",sans-serif!important; --sans:"Inter",-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",sans-serif!important; --font-display:"Inter",-apple-system,BlinkMacSystemFont,sans-serif!important;
  --font-mono:"JetBrains Mono",ui-monospace,"SF Mono",Menlo,monospace!important; --mono:"JetBrains Mono",ui-monospace,"SF Mono",Menlo,monospace!important;
  --ok:#7BD7A4!important; --good:#7BD7A4!important; --green:#7BD7A4!important; --emerald:#7BD7A4!important; --emerald-soft:#A6E8C3!important;
  --bad:#EE8AA0!important; --err:#EE8AA0!important; --red:#EE8AA0!important; --rose:#EE8AA0!important; --warn:#E2B35A!important; --amber:#E2B35A!important;
  --cyan:#7CC8E8!important; --violet:#B4A1F2!important;
}
html{background:#060608}
body{background:#060608!important;color:var(--lens-txt);font-family:var(--lens-font-ui)!important;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;isolation:isolate}
code,kbd,pre,samp,.mono,.num,[data-mono]{font-family:var(--lens-font-mono)!important;font-variant-numeric:tabular-nums}
::selection{background:rgba(201,168,76,.32)}
::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:rgba(201,168,76,.22)!important;border-radius:6px}::-webkit-scrollbar-thumb:hover{background:rgba(201,168,76,.42)!important}

/* ---- ambience: breathing gold, soft vignette ---- */
body::before,body::after{content:"";position:fixed;z-index:-1;pointer-events:none;border-radius:50%;filter:blur(60px);mix-blend-mode:screen;will-change:opacity,transform}
body::before{width:62vw;height:62vw;left:-26vw;top:-30vw;background:radial-gradient(circle,rgba(201,168,76,.20),rgba(201,168,76,.05) 45%,transparent 70%);animation:lensBreatheA 11s cubic-bezier(.22,.61,.36,1) infinite}
body::after{width:50vw;height:50vw;right:-22vw;bottom:-24vw;background:radial-gradient(circle,rgba(201,168,76,.13),rgba(140,110,50,.04) 50%,transparent 72%);animation:lensBreatheB 14s cubic-bezier(.22,.61,.36,1) infinite}
@keyframes lensBreatheA{0%,100%{opacity:.55;transform:translate(0,0) scale(1)}50%{opacity:1;transform:translate(3vw,2vw) scale(1.08)}}
@keyframes lensBreatheB{0%,100%{opacity:.45;transform:translate(0,0) scale(1)}50%{opacity:.9;transform:translate(-2vw,-3vw) scale(1.1)}}
.lens-vignette{position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(120% 86% at 50% 44%,transparent 46%,rgba(3,3,5,.28) 82%,rgba(3,3,5,.74) 100%)}
@media (prefers-reduced-motion:reduce){body::before,body::after{animation:none}}
@media (max-width:820px){body::before{width:120vw;height:120vw;left:-50vw;top:-60vw}body::after{width:100vw;height:100vw;right:-45vw;bottom:-50vw}}

/* ==========================================================================
   Light Lens — warm ivory & gold. Activated by html[data-theme="light"] (panel
   toggles) or html[data-wyrr-theme="light"] (shared WYRRTheme). Same !important
   weight as the :root map above but higher specificity, so it wins.
   ========================================================================== */
html[data-theme="light"],html[data-wyrr-theme="light"]{
  --lens-ink:#F6F3EB; --lens-ink-2:#EFEBE0; --lens-ink-3:#E7E2D4;
  --lens-txt:#17150E; --lens-txt-2:rgba(23,21,14,.68); --lens-txt-3:rgba(23,21,14,.48); --lens-txt-4:rgba(23,21,14,.3);
  --lens-gold:#A8862E; --lens-gold-2:#8F7125; --lens-gold-3:#C9A84C; --lens-gold-deep:#6E5718; --lens-gold-ink:#1C1506;
  --lens-glass:rgba(255,255,255,.62); --lens-line:rgba(168,134,46,.3); --lens-line-soft:rgba(23,21,14,.09); --lens-line-hard:rgba(168,134,46,.55);
  --lens-shadow:0 40px 100px -40px rgba(60,52,26,.35),0 0 0 .5px rgba(23,21,14,.04);
  --lens-shadow-sm:0 18px 48px -24px rgba(60,52,26,.3);
  --lens-glass-bg:rgba(255,255,255,.62);
  --lens-glass-grad:linear-gradient(158deg,rgba(255,255,255,.9),rgba(255,255,255,.5) 48%,rgba(201,168,76,.08));
  --lens-glass-border:rgba(23,21,14,.08);
  --lens-glass-shadow:0 30px 80px -40px rgba(60,52,26,.35),inset 0 1px 0 rgba(255,255,255,.9),inset 0 -1px 0 rgba(23,21,14,.04);
  --lens-ring:linear-gradient(135deg,rgba(168,134,46,.6),rgba(23,21,14,.08) 36%,rgba(23,21,14,.04) 62%,rgba(168,134,46,.3));
  --lens-gold-grad:linear-gradient(150deg,#E6CC7E,#C9A84C 55%,#A8862E);
  --lens-gold-shadow:0 12px 32px -14px rgba(168,134,46,.6),inset 0 1px 0 rgba(255,255,255,.6);
  --lens-pill-bg:linear-gradient(158deg,rgba(255,255,255,.95),rgba(255,255,255,.6)),rgba(255,255,255,.62);
  --lens-pill-border:rgba(23,21,14,.1);
  --lens-pill-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 18px 40px -28px rgba(60,52,26,.35);

  --gold:#A8862E!important; --gold-2:#8F7125!important; --gold-3:#C9A84C!important; --gold-soft:#C9A84C!important; --gold-bright:#C9A84C!important;
  --gold-hi:#8F7125!important; --gold-deep:#6E5718!important; --gold-dim:rgba(168,134,46,.12)!important; --gold-line:rgba(168,134,46,.4)!important;
  --gold-glow:rgba(201,168,76,.18)!important; --gold-10:rgba(168,134,46,.10)!important; --gold-24:rgba(168,134,46,.24)!important;
  --pf-gold:#A8862E!important; --pf-gold-hi:#8F7125!important; --pf-gold-10:rgba(168,134,46,.10)!important; --pf-gold-24:rgba(168,134,46,.24)!important;
  --ink:#F6F3EB!important; --ink-2:#EFEBE0!important; --ink-3:#E7E2D4!important; --bg:#F6F3EB!important; --bg-0:#F6F3EB!important; --bg-1:#EFEBE0!important; --bg1:#EFEBE0!important; --bg2:#E7E2D4!important; --bg3:#DFD9C9!important;
  --pf-bg:#F6F3EB!important; --pf-s1:rgba(255,255,255,.62)!important; --pf-s2:rgba(255,255,255,.5)!important; --pf-well:rgba(23,21,14,.05)!important;
  --panel:rgba(255,255,255,.62)!important; --panel-hi:rgba(255,255,255,.8)!important; --surface:rgba(255,255,255,.62)!important;
  --glass:rgba(255,255,255,.62)!important; --glass-2:rgba(255,255,255,.5)!important; --glass-3:rgba(255,255,255,.4)!important; --glass-hi:rgba(255,255,255,.85)!important;
  --glass-grad:linear-gradient(158deg,rgba(255,255,255,.9),rgba(255,255,255,.5) 48%,rgba(201,168,76,.08))!important;
  --text:#17150E!important; --txt:#17150E!important; --pf-tx:#17150E!important;
  --text-dim:rgba(23,21,14,.68)!important; --txt-2:rgba(23,21,14,.68)!important; --muted:rgba(23,21,14,.68)!important; --pf-tx2:rgba(23,21,14,.68)!important; --ink2:rgba(23,21,14,.68)!important;
  --text-faint:rgba(23,21,14,.48)!important; --txt-3:rgba(23,21,14,.48)!important; --faint:rgba(23,21,14,.48)!important; --pf-tx3:rgba(23,21,14,.48)!important; --ink3:rgba(23,21,14,.48)!important; --txt-4:rgba(23,21,14,.3)!important;
  --hairline:rgba(23,21,14,.09)!important; --hairline-hi:rgba(168,134,46,.35)!important; --line:rgba(23,21,14,.09)!important; --line-soft:rgba(23,21,14,.09)!important; --line-hard:rgba(168,134,46,.55)!important; --line2:rgba(23,21,14,.16)!important; --line-gold:rgba(168,134,46,.35)!important;
  --pf-line:rgba(23,21,14,.09)!important; --pf-line2:rgba(23,21,14,.14)!important; --pf-line3:rgba(168,134,46,.35)!important;
  --vignette:rgba(60,52,26,.08)!important;
  --shadow:0 40px 100px -40px rgba(60,52,26,.35)!important; --shadow-sm:0 18px 48px -24px rgba(60,52,26,.3)!important; --shadow-card:0 30px 80px -40px rgba(60,52,26,.3)!important;
  --word-grad:linear-gradient(135deg,#35301E 0%,#8F7125 55%,#C9A84C 100%)!important;
  --nav-bg:rgba(255,255,255,.6)!important; --nav-bg-solid:rgba(255,255,255,.88)!important; --menu-bg:rgba(255,255,255,.96)!important; --overlay-bg:rgba(40,36,20,.35)!important;
  --sheet-bg:linear-gradient(180deg,#FFFFFF,#F6F3EB)!important;
  --ok:#2F8F5B!important; --good:#2F8F5B!important; --green:#2F8F5B!important; --emerald:#2F8F5B!important; --emerald-soft:#4FAE78!important;
  --bad:#B8364F!important; --err:#B8364F!important; --red:#B8364F!important; --rose:#B8364F!important; --warn:#9A6B12!important; --amber:#9A6B12!important;
  --cyan:#1F7FA6!important; --violet:#6B55C4!important;
}
html[data-theme="light"],html[data-wyrr-theme="light"]{background:#F6F3EB}
html[data-theme="light"] body,html[data-wyrr-theme="light"] body{background:#F6F3EB!important;color:#17150E}
html[data-theme="light"] body::before,html[data-wyrr-theme="light"] body::before{background:radial-gradient(circle,rgba(201,168,76,.30),rgba(201,168,76,.08) 45%,transparent 70%);mix-blend-mode:multiply}
html[data-theme="light"] body::after,html[data-wyrr-theme="light"] body::after{background:radial-gradient(circle,rgba(201,168,76,.22),rgba(168,134,46,.06) 50%,transparent 72%);mix-blend-mode:multiply}
html[data-theme="light"] .lens-vignette,html[data-wyrr-theme="light"] .lens-vignette{background:radial-gradient(120% 86% at 50% 44%,transparent 46%,rgba(60,52,26,.06) 82%,rgba(60,52,26,.16) 100%)}
html[data-theme="light"] ::selection,html[data-wyrr-theme="light"] ::selection{background:rgba(201,168,76,.4)}
html[data-theme="light"] ::-webkit-scrollbar-thumb,html[data-wyrr-theme="light"] ::-webkit-scrollbar-thumb{background:rgba(168,134,46,.35)!important}

/* ---- lens primitives (applied by each panel's generated map) ---- */
.wl-lens{position:relative;background:var(--lens-glass-grad),var(--lens-glass-bg)!important;
  backdrop-filter:blur(28px) saturate(1.6) brightness(1.04);-webkit-backdrop-filter:blur(28px) saturate(1.6) brightness(1.04);
  border-color:var(--lens-glass-border)!important;
  box-shadow:var(--lens-glass-shadow)!important}
.wl-lens::before{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;pointer-events:none;z-index:0;
  background:var(--lens-ring);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}
.wl-gold{background:var(--lens-gold-grad)!important;color:var(--lens-gold-ink)!important;border-color:transparent!important;
  box-shadow:var(--lens-gold-shadow)!important}
.wl-gold:hover{filter:brightness(1.05)}
.wl-pill{border-radius:999px!important}
.wl-stat{position:relative;overflow:hidden}
.wl-stat::after{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,rgba(201,168,76,.5),transparent)}
