/* ============================================================
   HODEX CRM V6.5 — THEME SWITCHER 1.0
   Five complete visual systems. Loaded after app.css + UI Core.
   No timers, blinking or auto-animation. Interaction-only polish.
   ============================================================ */

body[data-theme]{
  --th-bg0:#020812;--th-bg1:#04111e;--th-bg2:#071a2a;
  --th-panel:rgba(6,20,34,.95);--th-panel2:rgba(9,30,49,.90);
  --th-panel-soft:rgba(10,31,50,.72);--th-text:#f7fbff;--th-text2:#d7e6f2;
  --th-muted:#9bb2c5;--th-accent:#16a8ff;--th-accent2:#69d7ff;
  --th-line:rgba(55,177,248,.42);--th-line2:rgba(230,184,78,.46);
  --th-gold:#e6b84e;--th-gold2:#ffe09a;--th-success:#4fe09a;
  --th-shadow:0 24px 66px rgba(0,0,0,.42),0 0 30px color-mix(in srgb,var(--th-accent) 10%,transparent);
  --th-shadow-hover:0 30px 78px rgba(0,0,0,.50),0 0 34px color-mix(in srgb,var(--th-accent) 18%,transparent),0 0 18px color-mix(in srgb,var(--th-gold) 8%,transparent);
  --th-top:rgba(3,13,23,.86);--th-side:#020a13;--th-input:rgba(4,17,29,.92);
  --th-cta-text:#08121b;--th-cta-bg:linear-gradient(145deg,#ffe29a,#bd811f);
  --th-grid:rgba(70,177,242,.032);--th-page-glow:rgba(22,168,255,.13);
  color-scheme:dark;
}
body[data-theme="golden"]{
  --th-bg0:#070604;--th-bg1:#110d07;--th-bg2:#1b1409;
  --th-panel:rgba(22,16,8,.95);--th-panel2:rgba(36,25,10,.91);--th-panel-soft:rgba(48,34,15,.70);
  --th-text:#fffaf0;--th-text2:#f1e5cb;--th-muted:#b9a98a;
  --th-accent:#e7b84d;--th-accent2:#ffe39a;--th-line:rgba(230,181,70,.46);--th-line2:rgba(255,225,151,.53);
  --th-top:rgba(14,10,5,.90);--th-side:#090704;--th-input:rgba(22,16,8,.94);
  --th-grid:rgba(230,181,70,.035);--th-page-glow:rgba(230,181,70,.12);
}
body[data-theme="blue"]{
  --th-bg0:#010712;--th-bg1:#03111f;--th-bg2:#071d31;
  --th-panel:rgba(4,18,32,.96);--th-panel2:rgba(7,31,53,.91);--th-panel-soft:rgba(8,39,67,.70);
  --th-text:#f5fbff;--th-text2:#d6edfb;--th-muted:#92b3c9;
  --th-accent:#00b7ff;--th-accent2:#72e0ff;--th-line:rgba(0,184,255,.52);--th-line2:rgba(232,185,74,.40);
  --th-top:rgba(2,13,24,.88);--th-side:#010913;--th-input:rgba(3,20,35,.94);
  --th-grid:rgba(0,184,255,.045);--th-page-glow:rgba(0,184,255,.16);
}
body[data-theme="forest"]{
  --th-bg0:#020b08;--th-bg1:#06150f;--th-bg2:#0b2418;
  --th-panel:rgba(5,23,16,.96);--th-panel2:rgba(9,38,25,.91);--th-panel-soft:rgba(12,50,32,.70);
  --th-text:#f5fff8;--th-text2:#d8eee0;--th-muted:#93b6a0;
  --th-accent:#31c87a;--th-accent2:#75e2a8;--th-line:rgba(49,200,122,.46);--th-line2:rgba(215,180,90,.48);
  --th-gold:#d7b45a;--th-gold2:#f1d991;--th-top:rgba(3,17,11,.90);--th-side:#020c08;--th-input:rgba(5,25,16,.94);
  --th-cta-bg:linear-gradient(145deg,#efd98d,#a87c24);--th-grid:rgba(49,200,122,.036);--th-page-glow:rgba(49,200,122,.13);
}
body[data-theme="obsidian"]{
  --th-bg0:#030405;--th-bg1:#090b0e;--th-bg2:#12161b;
  --th-panel:rgba(12,14,17,.97);--th-panel2:rgba(23,27,32,.92);--th-panel-soft:rgba(30,35,41,.72);
  --th-text:#f8fafc;--th-text2:#d9dfe6;--th-muted:#9da7b1;
  --th-accent:#cfd8e1;--th-accent2:#ffffff;--th-line:rgba(194,205,216,.30);--th-line2:rgba(229,184,75,.48);
  --th-top:rgba(7,8,10,.92);--th-side:#050607;--th-input:rgba(15,18,22,.96);
  --th-grid:rgba(220,228,236,.022);--th-page-glow:rgba(212,222,232,.055);
}
body[data-theme="white"]{
  --th-bg0:#f4f1e9;--th-bg1:#fbfaf6;--th-bg2:#eee8dc;
  --th-panel:rgba(255,255,255,.82);--th-panel2:rgba(255,253,247,.92);--th-panel-soft:rgba(247,242,231,.86);
  --th-text:#171512;--th-text2:#39342b;--th-muted:#746d61;
  --th-accent:#b88928;--th-accent2:#ddb95e;--th-line:rgba(171,128,38,.28);--th-line2:rgba(191,145,45,.45);
  --th-gold:#b88928;--th-gold2:#d9b95e;--th-top:rgba(255,255,255,.78);--th-side:#f8f5ee;--th-input:rgba(255,255,255,.88);
  --th-shadow:0 22px 54px rgba(70,53,25,.10),0 0 28px rgba(184,137,40,.035);
  --th-shadow-hover:0 28px 62px rgba(70,53,25,.15),0 0 24px rgba(184,137,40,.08);
  --th-cta-text:#fffaf0;--th-cta-bg:linear-gradient(145deg,#c79a39,#8d6417);
  --th-grid:rgba(126,95,35,.028);--th-page-glow:rgba(194,151,58,.08);color-scheme:light;
}

/* Page chrome */
html:has(body[data-theme]){background:var(--th-bg0)!important}
body[data-theme]:not(.login-page){
  color:var(--th-text)!important;
  background:linear-gradient(180deg,var(--th-bg0),var(--th-bg1) 48%,var(--th-bg0))!important;
}
body[data-theme]:not(.login-page) .content{
  color:var(--th-text)!important;
  background:
   radial-gradient(980px 520px at 84% -8%,var(--th-page-glow),transparent 67%),
   radial-gradient(700px 430px at 8% 6%,color-mix(in srgb,var(--th-gold) 5%,transparent),transparent 66%),
   linear-gradient(180deg,var(--th-bg1),var(--th-bg0))!important;
}
body[data-theme]:not(.login-page) .content:after{
  background-image:linear-gradient(var(--th-grid) 1px,transparent 1px),linear-gradient(90deg,var(--th-grid) 1px,transparent 1px)!important;
}
body[data-theme]:not(.login-page) .sidebar{
  background:linear-gradient(180deg,var(--th-side),color-mix(in srgb,var(--th-side) 84%,var(--th-accent) 16%),var(--th-side))!important;
  border-right:1px solid var(--th-line2)!important;
  box-shadow:18px 0 60px color-mix(in srgb,var(--th-bg0) 75%,transparent),inset -1px 0 var(--th-line)!important;
}
body[data-theme]:not(.login-page) .topbar{
  background:var(--th-top)!important;border-bottom:1px solid var(--th-line)!important;
  box-shadow:0 14px 42px color-mix(in srgb,var(--th-bg0) 60%,transparent)!important;
  backdrop-filter:blur(22px) saturate(1.25)!important;-webkit-backdrop-filter:blur(22px) saturate(1.25)!important;
}

/* Type */
body[data-theme]:not(.login-page) :is(h1,h2,h3,h4,h5,h6,.pulse-name>a,.v60-title h1){color:var(--th-text)!important}
body[data-theme]:not(.login-page) :is(p,.muted,small,.pulse-recommend span,.pulse-meta){color:var(--th-muted)!important}
body[data-theme]:not(.login-page) :is(.eyebrow,.panel-kicker,.v60-title small){color:var(--th-gold2)!important}

/* Shared glass surfaces across old + new modules */
body[data-theme]:not(.login-page) :is(
 .panel,.kpi,.collection-card,.command-hero,.command-panel,.industry-card,.owner-row,
 .mini-metrics>a,.quality-grid>div,.v5-calendar-card,.v5-day-panel,.v5-panel,
 .v61-stage,.v61-deal,.v61-sales-strip>a,.v61-contact-hero,.v61-360-event,
 .pulse-hero,.pulse-kpi,.pulse-shell,.pulse-contact,.theme-card,.login-card
){
  color:var(--th-text)!important;
  background:linear-gradient(145deg,var(--th-panel2),var(--th-panel))!important;
  border:1px solid var(--th-line)!important;border-bottom-color:var(--th-line2)!important;
  box-shadow:var(--th-shadow)!important;
}
body[data-theme]:not(.login-page) :is(.panel,.kpi,.collection-card,.industry-card,.v61-stage,.v61-deal,.pulse-kpi,.pulse-contact):hover{
  border-color:color-mix(in srgb,var(--th-accent) 72%,white 8%)!important;box-shadow:var(--th-shadow-hover)!important;
}

/* Sidebar active state */
body[data-theme]:not(.login-page) .nav a{color:var(--th-text2)!important;border:1px solid transparent!important}
body[data-theme]:not(.login-page) .nav a:hover{background:color-mix(in srgb,var(--th-panel2) 82%,var(--th-accent) 18%)!important;border-color:var(--th-line)!important;color:var(--th-text)!important}
body[data-theme]:not(.login-page) .nav a.active{
  color:var(--th-text)!important;border-color:var(--th-line2)!important;
  background:linear-gradient(135deg,color-mix(in srgb,var(--th-panel2) 76%,var(--th-accent) 24%),var(--th-panel))!important;
  box-shadow:0 0 24px color-mix(in srgb,var(--th-accent) 15%,transparent),inset 0 1px rgba(255,255,255,.06)!important;
}
body[data-theme="white"] .nav .ico img{filter:saturate(.92) contrast(.98) drop-shadow(0 4px 8px rgba(72,51,20,.13))!important}

/* Buttons, filters, controls */
body[data-theme]:not(.login-page) :is(.btn,button,.pulse-tab,.pulse-action){
  color:var(--th-text)!important;background:linear-gradient(180deg,var(--th-panel2),var(--th-panel))!important;
  border:1px solid var(--th-line)!important;box-shadow:inset 0 1px rgba(255,255,255,.055),0 8px 22px color-mix(in srgb,var(--th-bg0) 50%,transparent)!important;
}
body[data-theme]:not(.login-page) :is(.btn,button,.pulse-tab,.pulse-action):hover{border-color:color-mix(in srgb,var(--th-accent) 75%,white 10%)!important;box-shadow:0 0 24px color-mix(in srgb,var(--th-accent) 14%,transparent)!important}
body[data-theme]:not(.login-page) :is(.btn.gold,.v5-gold-cta,.v5-gold-btn){background:var(--th-cta-bg)!important;color:var(--th-cta-text)!important;border-color:var(--th-line2)!important}
body[data-theme]:not(.login-page) :is(input,select,textarea){background:var(--th-input)!important;color:var(--th-text)!important;border:1px solid var(--th-line)!important}
body[data-theme]:not(.login-page) :is(input,textarea)::placeholder{color:var(--th-muted)!important;opacity:.86!important}
body[data-theme]:not(.login-page) :is(input,select,textarea):focus{border-color:var(--th-accent)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--th-accent) 10%,transparent),0 0 24px color-mix(in srgb,var(--th-accent) 11%,transparent)!important}

/* Tables */
body[data-theme]:not(.login-page) .table-wrap{border-color:var(--th-line)!important;background:var(--th-panel)!important}
body[data-theme]:not(.login-page) table{color:var(--th-text)!important;background:transparent!important}
body[data-theme]:not(.login-page) :is(th,td){color:var(--th-text2)!important;border-color:color-mix(in srgb,var(--th-line) 62%,transparent)!important}
body[data-theme]:not(.login-page) th{color:var(--th-gold2)!important;background:color-mix(in srgb,var(--th-panel2) 88%,var(--th-gold) 12%)!important}
body[data-theme]:not(.login-page) tr:hover td{background:color-mix(in srgb,var(--th-panel2) 88%,var(--th-accent) 12%)!important}

/* Calendar */
body[data-theme]:not(.login-page) :is(.v5-calendar-card,.v5-day-panel){background:linear-gradient(145deg,var(--th-panel2),var(--th-panel))!important}
body[data-theme]:not(.login-page) .v5-day{background:color-mix(in srgb,var(--th-panel) 88%,var(--th-panel2) 12%)!important;border-color:color-mix(in srgb,var(--th-line) 70%,transparent)!important;color:var(--th-text)!important}
body[data-theme]:not(.login-page) .v5-day:hover{border-color:var(--th-accent)!important;box-shadow:0 0 22px color-mix(in srgb,var(--th-accent) 13%,transparent)!important}
body[data-theme]:not(.login-page) .v5-day.today,body[data-theme]:not(.login-page) .v5-day.selected{border-color:var(--th-line2)!important;background:color-mix(in srgb,var(--th-panel2) 76%,var(--th-gold) 24%)!important;box-shadow:0 0 25px color-mix(in srgb,var(--th-gold) 12%,transparent)!important}

/* Pulse / Sales radar */
body[data-theme]:not(.login-page) .pulse-hero{background:linear-gradient(115deg,var(--th-panel),color-mix(in srgb,var(--th-panel2) 80%,var(--th-accent) 20%) 62%,color-mix(in srgb,var(--th-panel) 82%,var(--th-gold) 18%))!important}
body[data-theme]:not(.login-page) .pulse-energy:before{background:linear-gradient(90deg,transparent,var(--th-accent) 22%,var(--th-accent2) 56%,var(--th-gold) 84%,transparent)!important;box-shadow:0 0 18px var(--th-accent),0 0 28px color-mix(in srgb,var(--th-gold) 28%,transparent)!important}
body[data-theme]:not(.login-page) .pulse-energy:after{background:linear-gradient(90deg,transparent,var(--th-accent) 28%,var(--th-gold) 82%,transparent)!important}
body[data-theme]:not(.login-page) .pulse-kpi-icon{background:linear-gradient(145deg,color-mix(in srgb,var(--th-panel2) 70%,var(--th-accent) 30%),var(--th-panel))!important;border-color:var(--th-line)!important;box-shadow:0 0 25px color-mix(in srgb,var(--th-accent) 16%,transparent),inset 0 1px rgba(255,255,255,.07)!important}
body[data-theme]:not(.login-page) .pulse-tab.active{background:linear-gradient(145deg,color-mix(in srgb,var(--th-accent) 88%,#fff 12%),color-mix(in srgb,var(--th-accent) 58%,#000 42%))!important;color:white!important;border-color:var(--th-accent2)!important;box-shadow:0 0 24px color-mix(in srgb,var(--th-accent) 26%,transparent)!important}
body[data-theme]:not(.login-page) .pulse-contact:before{background:linear-gradient(180deg,transparent,var(--th-gold) 20%,var(--th-accent) 76%,transparent)!important}
body[data-theme]:not(.login-page) .pulse-contact:after{background:linear-gradient(180deg,transparent,var(--th-accent) 22%,var(--th-accent2) 62%,transparent)!important;box-shadow:0 0 18px color-mix(in srgb,var(--th-accent) 50%,transparent)!important}
body[data-theme]:not(.login-page) .pulse-score{background:linear-gradient(145deg,color-mix(in srgb,var(--th-panel2) 72%,var(--th-accent) 28%),var(--th-panel))!important;border-color:var(--th-accent)!important;box-shadow:0 0 24px color-mix(in srgb,var(--th-accent) 18%,transparent)!important}
body[data-theme]:not(.login-page) .pulse-name>a{color:var(--th-text)!important}
body[data-theme]:not(.login-page) .pulse-recommend b{color:var(--th-gold2)!important}
body[data-theme]:not(.login-page) .pulse-action[href^="tel:"]{color:var(--th-gold2)!important;border-color:var(--th-line2)!important;background:color-mix(in srgb,var(--th-panel) 84%,var(--th-gold) 16%)!important}
body[data-theme]:not(.login-page) .pulse-action[href^="mailto:"]{color:var(--th-accent2)!important;border-color:var(--th-line)!important;background:color-mix(in srgb,var(--th-panel) 82%,var(--th-accent) 18%)!important}

/* Theme chooser */
.hodex-theme-switcher{margin:0;display:flex;align-items:center}
.hodex-theme-switcher label{display:flex;align-items:center;gap:7px;padding:5px 7px 5px 10px;border:1px solid var(--th-line);border-radius:14px;background:var(--th-panel);box-shadow:inset 0 1px rgba(255,255,255,.04)}
.hodex-theme-switcher label>span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--th-muted);font-weight:800}
.hodex-theme-switcher select{width:132px;min-height:32px!important;padding:5px 24px 5px 8px!important;border-radius:9px!important;font-size:12px!important;font-weight:800!important;cursor:pointer}
.theme-card{transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease!important}
.theme-card:hover{transform:translateY(-3px)!important}
.theme-card.selected,.theme-card:has(input:checked){border-color:var(--th-accent)!important;box-shadow:0 0 26px color-mix(in srgb,var(--th-accent) 18%,transparent)!important}

/* White Gold specific readability */
body[data-theme="white"] :is(.topbar,.sidebar,.panel,.kpi,.collection-card,.pulse-hero,.pulse-kpi,.pulse-shell,.pulse-contact,.v5-calendar-card,.v5-day-panel,.v61-stage,.v61-deal){backdrop-filter:blur(22px) saturate(1.08)!important;-webkit-backdrop-filter:blur(22px) saturate(1.08)!important}
body[data-theme="white"] .brand img{filter:drop-shadow(0 8px 18px rgba(113,79,18,.14))!important}
body[data-theme="white"] :is(kbd,.pill,.badge){color:#4a3b1e!important;background:rgba(193,151,63,.10)!important;border-color:rgba(171,128,38,.24)!important}
body[data-theme="white"] .pulse-tab.active{color:#fff!important}
body[data-theme="white"] .avatar{color:#fff!important;background:linear-gradient(145deg,#c79a39,#8c6418)!important}

/* Focus and interaction. No auto-animation. */
body[data-theme]:not(.login-page) :is(a,button,input,select,textarea):focus-visible{outline:none!important;box-shadow:0 0 0 2px var(--th-bg0),0 0 0 4px var(--th-accent),0 0 25px color-mix(in srgb,var(--th-accent) 22%,transparent)!important}
.hx-wow-surface>.hx-wow-glow{background:radial-gradient(460px circle at var(--hx-x,50%) var(--hx-y,50%),color-mix(in srgb,var(--th-accent) 20%,transparent),transparent 47%),radial-gradient(320px circle at calc(var(--hx-x,50%) + 10%) calc(var(--hx-y,50%) + 8%),color-mix(in srgb,var(--th-gold) 10%,transparent),transparent 49%)!important}

@media(max-width:1350px){.hodex-theme-switcher label>span{display:none}.hodex-theme-switcher select{width:118px}}
@media(max-width:1050px){.hodex-theme-switcher{display:none}}
@media(prefers-reduced-motion:reduce){.theme-card{transition:none!important}}
