/* Modo normal (por defecto): estética limpia de estudio, sin mascota ni efectos. Solo actúa con data-modo="normal". */
:root[data-modo="normal"] {
  --bg0: #f8fafc;
  --bg1: #f8fafc;
  --ink: #0f172a;
  --ink2: #475569;
  --ink3: #64748b;
  --glass: #ffffff;
  --glass2: #f1f5f9;
  --line: #e2e8f0;
  --violet: #4f46e5;
  --pink: #e11d48;
  --cyan: #0891b2;
  --good: #16a34a;
  --bad: #dc2626;
  --yellow: #b45309;
  --orange: #c2410c;
  --shadow: 0 1px 2px rgba(15, 23, 42, .06), 0 4px 14px rgba(15, 23, 42, .05);
  --display: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --font: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  color-scheme: light;
}
[data-modo="normal"] body { background: #f8fafc; }
[data-modo="normal"] .aurora, [data-modo="normal"] #sky, [data-modo="normal"] #confetti { display: none; }
[data-modo="normal"] h1, [data-modo="normal"] h2, [data-modo="normal"] h3, [data-modo="normal"] .display { font-weight: 700; letter-spacing: -.2px; }
[data-modo="normal"] .view { animation-duration: .2s; }

/* sin mascota */
[data-modo="normal"] .nimbus { display: none !important; }
[data-modo="normal"] .bubble { background: #eef2ff; color: #1e1b4b; box-shadow: none; border: 1px solid #e0e7ff; font-weight: 600; animation: none; }
[data-modo="normal"] .bubble::before { display: none; }
[data-modo="normal"] .feedback .bubble { background: #f8fafc; border-color: var(--line); }
[data-modo="normal"] .feedback.good .bubble { background: #f0fdf4; border-color: #bbf7d0; }
[data-modo="normal"] .feedback.bad .bubble { background: #fef2f2; border-color: #fecaca; }
[data-modo="normal"] .feedback.hint .bubble { background: #fffbeb; border-color: #fde68a; }
[data-modo="normal"] .bubble .katex, [data-modo="normal"] .msg.ai .katex { color: inherit; }

/* tarjetas y botones planos */
[data-modo="normal"] .card { background: #fff; border: 1px solid var(--line); box-shadow: var(--shadow); backdrop-filter: none; -webkit-backdrop-filter: none; }
[data-modo="normal"] .btn { --c1: #4f46e5; --c2: #4f46e5; box-shadow: none; border-radius: 12px; font-weight: 700; }
[data-modo="normal"] .btn.pink { --c1: #e11d48; --c2: #e11d48; }
[data-modo="normal"] .btn.cyan { --c1: #0e7490; --c2: #0e7490; }
[data-modo="normal"] .btn.green { --c1: #16a34a; --c2: #16a34a; }
[data-modo="normal"] .btn.yellow { --c1: #f59e0b; --c2: #f59e0b; color: #fff; }
[data-modo="normal"] .btn.ghost { background: #fff; color: var(--ink); border: 1px solid var(--line); }
[data-modo="normal"] .btn-tech { filter: none; }
[data-modo="normal"] .btn-tech::before { background: #4f46e5; animation: none; }
[data-modo="normal"] .btn-tech::after { background: #4f46e5; box-shadow: none; inset: 0; border-radius: 12px; }
[data-modo="normal"] .btn-tech .bt-in { border-radius: 12px; padding: 15px 14px; }
[data-modo="normal"] .btn-tech .bt-in::before, [data-modo="normal"] .btn-tech .bt-in::after { display: none; }
[data-modo="normal"] .btn-tech .bt-txt { text-transform: none; letter-spacing: 0; text-shadow: none; font-size: 17px; color: #fff; }
[data-modo="normal"] .btn-tech .bt-arr { display: none; }
[data-modo="normal"] .btn-tech .bt-ico { filter: none; }
[data-modo="normal"] .btn-tech.ok::before, [data-modo="normal"] .btn-tech.ok::after { background: #16a34a; }
[data-modo="normal"] .btn-tech.fail::before, [data-modo="normal"] .btn-tech.fail::after { background: #dc2626; }

[data-modo="normal"] .input { background: #fff; color: var(--ink); border-color: #cbd5e1; }
[data-modo="normal"] .input:focus { box-shadow: 0 0 0 3px rgba(79, 70, 229, .18); }
[data-modo="normal"] .chip { background: #fff; color: var(--ink2); }
[data-modo="normal"] .chip.xp { color: #b45309; }
[data-modo="normal"] .chip.fire { color: #c2410c; }
[data-modo="normal"] .avatar { box-shadow: none; }

/* barra inferior y superior */
[data-modo="normal"] .tabbar { background: rgba(255, 255, 255, .96); box-shadow: 0 8px 30px rgba(15, 23, 42, .12); }
[data-modo="normal"] .tabbar a { color: var(--ink3); }
[data-modo="normal"] .tabbar a.on { color: #4f46e5; background: #eef2ff; }
[data-modo="normal"] .brand b { background: none; -webkit-background-clip: initial; background-clip: initial; color: var(--ink); }
[data-modo="normal"] .back { background: #fff; }
.brand .logo-n { display: none; }
[data-modo="normal"] .brand .logo { display: none; }
[data-modo="normal"] .brand .logo-n { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 10px; background: #4f46e5; color: #fff; font-weight: 800; font-size: 19px; }

/* inicio */
[data-modo="normal"] .action { min-height: 120px; box-shadow: var(--shadow); }
[data-modo="normal"] .action.a1 { background: #4f46e5; }
[data-modo="normal"] .action.a2 { background: #0e7490; }
[data-modo="normal"] .action::after { display: none; }
[data-modo="normal"] .action .em { font-size: 32px; filter: none; }
[data-modo="normal"] .plan-item .em { background: #f1f5f9; }
[data-modo="normal"] .count.hot b { animation: none; color: #dc2626; }
[data-modo="normal"] .bar { background: #e2e8f0; }
[data-modo="normal"] .bar > i { background: #4f46e5; }
[data-modo="normal"] .badge.work { background: #eef2ff; color: #4338ca; }
[data-modo="normal"] .badge.wait { background: #fef3c7; color: #92400e; }
[data-modo="normal"] .badge.ready { background: #dcfce7; color: #166534; }

/* examen */
[data-modo="normal"] .ring::before { background: #fff; }
[data-modo="normal"] .seg { background: #f1f5f9; }
[data-modo="normal"] .seg button.on { background: #fff; color: #4f46e5; box-shadow: var(--shadow); }
[data-modo="normal"] .sec-title .num { background: #4f46e5; color: #fff; }
[data-modo="normal"] .theory-nav i.on { background: #4f46e5; }
[data-modo="normal"] .theory-nav i.seen { background: #a5b4fc; }
[data-modo="normal"] .theory-nav i { background: #e2e8f0; }
[data-modo="normal"] .prose strong { color: #4338ca; }
[data-modo="normal"] .example { background: #f0f9ff; border-color: #bae6fd; }
[data-modo="normal"] .example h4 { color: #0369a1; }
[data-modo="normal"] .example .result { color: #15803d; animation: none; }
[data-modo="normal"] .tip { background: #fffbeb; border-color: #fde68a; }
[data-modo="normal"] .reexplain { background: #fdf2f8; border-color: #fbcfe8; }
[data-modo="normal"] .keys button { background: #fff; color: var(--ink); }
[data-modo="normal"] .ex-dots i { background: #e2e8f0; }
[data-modo="normal"] .ex-dots i.cur { outline-color: #4f46e5; }
[data-modo="normal"] .solution { background: #f8fafc; }
[data-modo="normal"] .xpfloat { color: #b45309; text-shadow: none; font-size: 24px; }
[data-modo="normal"] .stamp { border-color: #16a34a; color: #16a34a; animation: none; }

/* cargando: un spinner sobrio en lugar de la mascota */
[data-modo="normal"] .loading::before { content: ""; display: block; width: 44px; height: 44px; margin: 4px auto 16px; border-radius: 50%;
  border: 4px solid #e0e7ff; border-top-color: #4f46e5; animation: spin .9s linear infinite; }
@keyframes spin { to { transform: rotate(360deg); } }

/* capas a pantalla completa */
[data-modo="normal"] .celebrate, [data-modo="normal"] .celebrate.solid, [data-modo="normal"] .handsfree { background: rgba(248, 250, 252, .97); }
[data-modo="normal"] .celebrate h1 { background: none; -webkit-background-clip: initial; background-clip: initial; color: #16a34a; animation: none; }
[data-modo="normal"] .celebrate .gif { display: none; }
[data-modo="normal"] .handsfree .said { color: var(--ink); }
[data-modo="normal"] .handsfree::before { content: "🎧"; font-size: 64px; margin-bottom: 8px; }
[data-modo="normal"] .mic { background: #4f46e5; }
[data-modo="normal"] .install-tut { background: rgba(15, 23, 42, .45); }
[data-modo="normal"] .install-tut .sheet { background: #fff; border-color: var(--line); }
[data-modo="normal"] .tut-steps li { background: #f8fafc; }
[data-modo="normal"] .tut-steps .n { background: #4f46e5; color: #fff; }
[data-modo="normal"] .tut-arrow { color: #4f46e5; filter: none; }

/* chat */
[data-modo="normal"] .msg.ai .txt { background: #fff; border: 1px solid var(--line); color: var(--ink); }
[data-modo="normal"] .msg.me .txt { background: #4f46e5; color: #fff; }
[data-modo="normal"] .msg.ai .who { display: none; }
[data-modo="normal"] .composer { background: rgba(255, 255, 255, .97); }
[data-modo="normal"] .composer textarea { color: var(--ink); }
[data-modo="normal"] .solved-banner { background: #f0fdf4; border-color: #bbf7d0; color: #166534; }
[data-modo="normal"] .rank-row.me { background: #eef2ff; }
[data-modo="normal"] .link-box { background: #f8fafc; }
[data-modo="normal"] .toast { background: #fff; color: var(--ink); }

/* login */
[data-modo="normal"] .auth h1 { background: none; -webkit-background-clip: initial; background-clip: initial; color: #4f46e5; animation: none; }
[data-modo="normal"] .auth .status { color: var(--ink3); }

/* interruptor de modo en la barra superior */
.modechip { cursor: pointer; font-weight: 800; }
[data-modo="nimbus"] .modechip { background: linear-gradient(135deg, rgba(20, 184, 166, .5), rgba(124, 92, 255, .5)); color: #fff; }
