/* ===== Botón sol / luna ===== */
.tema-btn{position:relative; flex-shrink:0; width:40px; height:40px; border-radius:50%; display:inline-grid; place-items:center; cursor:pointer; margin-left:auto; margin-right:10px;
  color:#402978; background:rgba(255,255,255,.55); border:1px solid rgba(255,255,255,.85); box-shadow:inset 0 1px 0 #fff, 0 6px 16px -10px rgba(30,28,50,.5); transition:transform .25s, background .25s;}
.nav .tema-btn{margin-left:0;}
.tema-btn:hover{transform:rotate(-12deg) scale(1.05);}
.tema-btn svg{width:20px; height:20px; display:block;}
.tema-btn .luna{display:none;}
.tema-btn.flotante{position:fixed; top:14px; right:14px; z-index:40; margin:0;}
@media print{ .tema-btn{display:none !important;} }

/* ===== MODO OSCURO (solo en pantalla; al imprimir siempre sale claro) ===== */
@media screen{
html[data-tema="oscuro"]{
  color-scheme:dark;
  --ground:#121420; --paper:#121420; --paper-2:#1C1E2C;
  --ink:#ECEAF3; --muted:#A9A5B9; --mist:#A9A5B9; --line:rgba(255,255,255,.10);
  --brand:#C4B2F2; --lilac:#B39DDB; --lilac-soft:rgba(179,157,219,.14); --lilac-light:#B9A6EA; --night:#0B0D16; --low:#E0786E;
  --glass:linear-gradient(135deg, rgba(255,255,255,.09), rgba(179,157,219,.06));
  --glass-strong:linear-gradient(135deg, rgba(255,255,255,.13), rgba(179,157,219,.08));
  --glass-edge:rgba(255,255,255,.14);
  --glass-shadow:inset 0 1px 0 rgba(255,255,255,.10), 0 22px 44px -24px rgba(0,0,0,.75);
  background:#121420;
}
html[data-tema="oscuro"] body{color:var(--ink);}
html[data-tema="oscuro"] .tema-btn{color:#F3D58A; background:rgba(255,255,255,.08); border-color:rgba(255,255,255,.16); box-shadow:inset 0 1px 0 rgba(255,255,255,.12);}
html[data-tema="oscuro"] .tema-btn .sol{display:block;} html[data-tema="oscuro"] .tema-btn .luna{display:none;}
html:not([data-tema="oscuro"]) .tema-btn .luna{display:block;} html:not([data-tema="oscuro"]) .tema-btn .sol{display:none;}

/* Fondo: aurora violeta tenue */
html[data-tema="oscuro"] .aurora{opacity:.55;}
html[data-tema="oscuro"] .aurora i:nth-child(1){background:radial-gradient(circle, rgba(91,63,160,.55) 0%, rgba(91,63,160,0) 68%);}
html[data-tema="oscuro"] .aurora i:nth-child(2){background:radial-gradient(circle, rgba(40,52,90,.7) 0%, rgba(40,52,90,0) 70%);}
html[data-tema="oscuro"] .aurora i:nth-child(3){background:radial-gradient(circle, rgba(140,110,210,.45) 0%, rgba(140,110,210,0) 70%);}

/* Brillos sobre el cristal, más suaves */
html[data-tema="oscuro"] .door::after,html[data-tema="oscuro"] .glass::after,html[data-tema="oscuro"] .nav::after,
html[data-tema="oscuro"] .rail.me::after,html[data-tema="oscuro"] .card::after{
  background:linear-gradient(112deg, transparent 38%, rgba(179,157,219,.10) 46%, rgba(255,255,255,.12) 50%, rgba(179,157,219,.10) 54%, transparent 62%); background-size:260% 100%;}

/* ---------- INICIO ---------- */
html[data-tema="oscuro"] .rail.me{background:rgba(255,255,255,.05); border-color:var(--line);}
html[data-tema="oscuro"] .rail.tr{background:#0B0D16; border:1px solid rgba(255,255,255,.08);}
html[data-tema="oscuro"] .door .tag,html[data-tema="oscuro"] .tag2,html[data-tema="oscuro"] .rail li em{background:rgba(255,255,255,.08); color:var(--ink);}
html[data-tema="oscuro"] .door.trader .tag{color:var(--ink);}
html[data-tema="oscuro"] .free{color:#7FDDB0; background:rgba(63,181,126,.14); border-color:rgba(63,181,126,.35);}
html[data-tema="oscuro"] .gbtn.light{color:var(--ink);}
html[data-tema="oscuro"] .fc-test .q{background:#2A2450;}
html[data-tema="oscuro"] .fcard{background:linear-gradient(135deg, rgba(22,24,38,.82), rgba(40,34,70,.7)); border-color:rgba(255,255,255,.16);}
html[data-tema="oscuro"] .fcard small{color:#C9C5D6;}
html[data-tema="oscuro"] .photo,html[data-tema="oscuro"] .focus-photo{box-shadow:0 40px 80px -40px rgba(0,0,0,.8);}
html[data-tema="oscuro"] .night{background:linear-gradient(150deg,#0B0D16 0%,#151827 60%,#1E2036 100%); border:1px solid rgba(255,255,255,.07);}
html[data-tema="oscuro"] .mock{background:rgba(255,255,255,.06); border-color:rgba(255,255,255,.1);}
html[data-tema="oscuro"] .sig .noise{stroke:#ECEAF3;}
html[data-tema="oscuro"] .sig .calm{stroke:#B39DDB;}

/* ---------- HERRAMIENTAS (Rueda, tests) ---------- */
html[data-tema="oscuro"] .card{background:linear-gradient(140deg, rgba(255,255,255,.07), rgba(179,157,219,.04)); border-color:rgba(255,255,255,.12);}
html[data-tema="oscuro"] .card::before{background:linear-gradient(165deg, rgba(255,255,255,.08) 0%, rgba(255,255,255,0) 26%);}
html[data-tema="oscuro"] #s-res.card{background:linear-gradient(160deg,#191B29,#151724);}
html[data-tema="oscuro"] .top a.back{background:rgba(255,255,255,.08); color:var(--ink); border-color:rgba(255,255,255,.14);}
html[data-tema="oscuro"] .seal,html[data-tema="oscuro"] .badge{color:#7FDDB0; background:rgba(63,181,126,.14); border-color:rgba(63,181,126,.35);}
html[data-tema="oscuro"] .perc.set{box-shadow:inset 0 1px 0 rgba(255,255,255,.12), 0 0 0 1.5px rgba(179,157,219,.5);}
html[data-tema="oscuro"] .perc:not(.set) .perc-head span{color:#6E6A80;}
html[data-tema="oscuro"] .opt,html[data-tema="oscuro"] .pill,html[data-tema="oscuro"] .yn button{color:var(--ink);}
html[data-tema="oscuro"] .opt.on,html[data-tema="oscuro"] .pill.on{background:linear-gradient(170deg,#6A50B8,#3B2878); color:#fff;}
html[data-tema="oscuro"] .field input[type=text],html[data-tema="oscuro"] .field input[type=email],html[data-tema="oscuro"] .field input[type=tel]{background:rgba(255,255,255,.06); color:var(--ink); border-color:rgba(255,255,255,.16);}
html[data-tema="oscuro"] .bar{background:rgba(255,255,255,.08);}
html[data-tema="oscuro"] .lock svg{background:#5B3FA0;}
html[data-tema="oscuro"] .focus,html[data-tema="oscuro"] .area-card .lvl{background:rgba(255,255,255,.07);}
html[data-tema="oscuro"] .g-up{background:rgba(201,138,18,.18); color:#F0C76E;}
html[data-tema="oscuro"] .g-ok{background:rgba(63,181,126,.16); color:#7FDDB0;}
html[data-tema="oscuro"] .g-down{background:rgba(179,157,219,.18); color:#D6C8F7;}
html[data-tema="oscuro"] table.areas th{border-bottom-color:rgba(255,255,255,.4);}
html[data-tema="oscuro"] .have-code,html[data-tema="oscuro"] .save-note{background:rgba(255,255,255,.06); border-color:rgba(255,255,255,.12);}
html[data-tema="oscuro"] .cta,html[data-tema="oscuro"] .rep-cover,html[data-tema="oscuro"] .pressure,html[data-tema="oscuro"] .card.dark{background:linear-gradient(150deg,#0B0D16,#171A2A 60%,#22243A); border-color:rgba(255,255,255,.08);}

/* Rueda dibujada (SVG) */
html[data-tema="oscuro"] .wheel text,html[data-tema="oscuro"] .intro-art text{fill:#E6E3F0;}
html[data-tema="oscuro"] .wheel [stroke="#E4DDEE"],html[data-tema="oscuro"] .intro-art [stroke="#DDD5EA"]{stroke:rgba(255,255,255,.12);}
html[data-tema="oscuro"] .wheel [stroke="#0F1A33"],html[data-tema="oscuro"] .intro-art [stroke="#0F1A33"]{stroke:#E6E3F0;}
html[data-tema="oscuro"] .wheel [fill="#0F1A33"]{fill:#E6E3F0;}
html[data-tema="oscuro"] .wheel text[fill="#5B3FA0"]{fill:#C4B2F2;}
html[data-tema="oscuro"] .legend i{border-top-color:#E6E3F0;}

/* Bloque de pago */
html[data-tema="oscuro"] .pg{background:linear-gradient(140deg, rgba(255,255,255,.08), rgba(179,157,219,.05)); border-color:rgba(255,255,255,.12); box-shadow:inset 0 1px 0 rgba(255,255,255,.08), 0 26px 60px -28px rgba(0,0,0,.8);}
html[data-tema="oscuro"] .pg h3,html[data-tema="oscuro"] .pg-inc li,html[data-tema="oscuro"] .pg-steps li,html[data-tema="oscuro"] .pg-code label,html[data-tema="oscuro"] .pg-pages-top b{color:var(--ink);}
html[data-tema="oscuro"] .pg-lead,html[data-tema="oscuro"] .pg-small,html[data-tema="oscuro"] .pg-note2,html[data-tema="oscuro"] .pg-code p,html[data-tema="oscuro"] .pg-pages-top span{color:var(--muted);}
html[data-tema="oscuro"] .pg-k,html[data-tema="oscuro"] .pg-inc svg,html[data-tema="oscuro"] .pg-note2 a{color:#C4B2F2;}
html[data-tema="oscuro"] .pg-inc li,html[data-tema="oscuro"] .pg-card,html[data-tema="oscuro"] .pg-panel,html[data-tema="oscuro"] .pg-uses{background:rgba(255,255,255,.06); border-color:rgba(255,255,255,.12); box-shadow:none; color:var(--ink);}
html[data-tema="oscuro"] .pg-laf{background:rgba(255,255,255,.06); border-color:rgba(255,255,255,.12); box-shadow:none; color:var(--ink);}
html[data-tema="oscuro"] .pg-laf .s{color:var(--muted);}
html[data-tema="oscuro"] .pg-nic{color:#7FDDB0; background:rgba(63,181,126,.12); border-color:rgba(63,181,126,.3);}
html[data-tema="oscuro"] .pg-card .s{color:var(--muted);}
html[data-tema="oscuro"] .pg-id code{background:rgba(255,255,255,.06); color:var(--ink); border-color:rgba(179,157,219,.5);}
html[data-tema="oscuro"] .pg-mini{background:rgba(255,255,255,.08); color:var(--ink); border-color:rgba(255,255,255,.2);}
html[data-tema="oscuro"] .pg-steps li::before{background:rgba(179,157,219,.2); color:#E6E3F0;}
html[data-tema="oscuro"] .pg-row input{background:rgba(255,255,255,.06); color:var(--ink); border-color:rgba(255,255,255,.18);}
html[data-tema="oscuro"] .pg-msg.ok{color:#7FDDB0;} html[data-tema="oscuro"] .pg-msg.err{color:#F09A92;}

/* ---------- Ajustes de contraste (revisión de todas las herramientas) ---------- */
/* Botones Sí / No de los tests */
html[data-tema="oscuro"] .yn button{background:rgba(255,255,255,.07); border-color:rgba(255,255,255,.18); color:var(--ink);}
html[data-tema="oscuro"] .yn button:hover{border-color:#B9A6EA;}
html[data-tema="oscuro"] .yn button.on{background:linear-gradient(170deg,#6A50B8,#3B2878); border-color:transparent; color:#fff;}
/* Resultado del test de adicción: cuadros de nivel */
html[data-tema="oscuro"] .level.l1{background:rgba(63,181,126,.12); border-color:rgba(63,181,126,.35);}
html[data-tema="oscuro"] .level.l2{background:rgba(201,138,18,.13); border-color:rgba(201,138,18,.38);}
html[data-tema="oscuro"] .level.l3{background:rgba(224,120,110,.13); border-color:rgba(224,120,110,.38);}
html[data-tema="oscuro"] .level h3{color:var(--ink);}
html[data-tema="oscuro"] .level p{color:#D2CFDD;}
html[data-tema="oscuro"] .l1 .t{color:#7FDDB0;} html[data-tema="oscuro"] .l2 .t{color:#F0C76E;} html[data-tema="oscuro"] .l3 .t{color:#F2A49B;}
html[data-tema="oscuro"] .meter i{background:#ECEAF3; border-color:#121420;}
html[data-tema="oscuro"] .note{background:rgba(255,255,255,.06);}
/* Campos de formulario en cualquier herramienta */
html[data-tema="oscuro"] .field input{background:rgba(255,255,255,.06); color:var(--ink); border-color:rgba(255,255,255,.16);}
html[data-tema="oscuro"] input::placeholder{color:#8F8BA2;}
/* Botón lila (sobre fondo oscuro) */
html[data-tema="oscuro"] .btn-lilac{background:#B9A6EA; color:#121420;}
html[data-tema="oscuro"] .btn-lilac:hover{background:#D6CAF5;}
/* Rueda: barras sin marcar y bloque "Lo que tu rueda dice" */
html[data-tema="oscuro"] .perc:not(.set) .perc-head span{color:#9A96AC;}
html[data-tema="oscuro"] .locks{background:linear-gradient(150deg, rgba(255,255,255,.05), rgba(179,157,219,.06)); border-color:rgba(255,255,255,.12); box-shadow:none;}
html[data-tema="oscuro"] .lock{background:rgba(255,255,255,.06); border-color:rgba(255,255,255,.12);}
html[data-tema="oscuro"] .mask{text-shadow:0 0 9px rgba(214,200,247,.85);}
html[data-tema="oscuro"] .guide-note{color:#C4B2F2;}
html[data-tema="oscuro"] .resume,html[data-tema="oscuro"] .cat-note{background:rgba(179,157,219,.12); color:var(--ink);}
html[data-tema="oscuro"] .decide{background:rgba(255,255,255,.06); border-color:rgba(255,255,255,.12);}
}
