/* Analytix66 look for the analytics dashboard (loaded after app.css).
   Matches the analytix66.com public theme: deep navy, violet -> blue -> cyan gradient, bold headings.
   Colour-blind safe: active/selected states keep underline + left bar + check marks; contrast >= 7:1 on text. */
:root, [data-theme="dark"] {
  --c1:#6d4dff; --c2:#1157d5; --c3:#0fb7cc; --c4:#7b5dff;
  --grad:linear-gradient(90deg,#6d4dff,#1157d5 55%,#0fb7cc);
  --grad-soft:linear-gradient(135deg,rgba(109,77,255,.24),rgba(17,87,213,.18) 55%,rgba(15,183,204,.16));
  --bg:#0b0b1a; --bg-2:#151530;
  --surface:rgba(21,21,48,.78); --surface-2:rgba(35,35,71,.9);
  --border:rgba(255,255,255,.18); --border-strong:rgba(255,255,255,.5);
  --text:#f5f5ff; --muted:#c9c9e3; --focus:#ffffff;
  --glow:0 0 0 1px rgba(255,255,255,.1),0 10px 30px rgba(17,87,213,.45);
}
[data-theme="light"] { --c1:#5b3df0; --c2:#0d47b0; --c3:#08798a; --c4:#5b3df0;
  --grad:linear-gradient(90deg,#5b3df0,#0d47b0 55%,#08798a); --focus:#0b0b1a; }
body { letter-spacing:-.005em; }
h1,h2,h3,.h1,.h2,.h3,.page-title,.brand-name { font-weight:800; letter-spacing:-.02em; }
.aurora { background:radial-gradient(1100px 600px at 0% -5%,rgba(124,92,255,.28),transparent 60%),radial-gradient(900px 600px at 100% 10%,rgba(20,210,230,.16),transparent 60%),var(--bg); }
[data-theme="light"] .aurora { background:var(--bg); }
.aurora span { display:none; }
a.link, .content p a:not(.btn) { color:#9fd8ff; text-decoration:underline; text-underline-offset:3px; }
[data-theme="light"] a.link, [data-theme="light"] .content p a:not(.btn) { color:#0d47b0; }
.btn { font-weight:700; }
.btn-glow, .btn-primary { color:#fff !important; background:var(--grad); border:2px solid transparent; box-shadow:0 10px 30px rgba(17,87,213,.45); }
.btn-glow:hover, .btn-primary:hover, .btn-glow:focus-visible { box-shadow:0 14px 40px rgba(109,77,255,.6); border-color:#fff; }
.btn-outline, .btn-ghost { border-width:2px; }
.side-nav a.is-active { box-shadow:inset 5px 0 0 #fff; border-width:2px; }
.side-nav a.is-active span::after { content:" \2713"; font-weight:800; }
.brand img { border-radius:8px; }
.side-tools { margin:1rem 0 0; padding-top:.75rem; border-top:1px solid var(--border); }
.side-tools a { display:flex; gap:.6rem; align-items:center; padding:.55rem .8rem; border-radius:10px; border:1px solid var(--border); margin-bottom:.4rem; text-decoration:none; font-weight:600; }
.side-tools a:hover, .side-tools a:focus-visible { border-color:var(--border-strong); text-decoration:underline; }
.side-tools a::after { content:"\2197"; margin-left:auto; font-weight:800; }
.auth-card { border:1px solid var(--border-strong); }
.auth-classic { text-align:center; font-size:.9rem; color:var(--muted); margin-top:.5rem; }
.auth-classic a { color:inherit; text-decoration:underline; }
/* More tools (dashboard cards) + legal pages */
.a66-tools { margin:0 0 1.25rem; }
.a66-tools h2 { display:flex; gap:.5rem; align-items:center; margin:0 0 .9rem; }
.a66-tool-grid { list-style:none; margin:0; padding:0; display:grid; gap:.7rem; grid-template-columns:repeat(auto-fill,minmax(210px,1fr)); }
.a66-tool { display:flex; gap:.75rem; align-items:flex-start; padding:.8rem .9rem; border:2px solid var(--border); border-radius:12px; background:var(--surface-2); text-decoration:none; color:var(--text); height:100%; }
.a66-tool svg { flex:none; width:22px; height:22px; margin-top:2px; }
.a66-tool span { display:flex; flex-direction:column; }
.a66-tool small { color:var(--muted); font-size:.85rem; }
.a66-tool:hover, .a66-tool:focus-visible { border-color:var(--border-strong); }
.a66-tool:hover strong, .a66-tool:focus-visible strong { text-decoration:underline; text-underline-offset:3px; }
.a66-tool strong::after { content:" \2197"; }
.side-tools a svg { width:18px; height:18px; flex:none; }
.prose .legal-updated { display:inline-block; padding:.35rem .7rem; border:2px solid var(--border-strong); border-radius:8px; }
.prose h2 { margin-top:1.6em; font-size:1.25rem; }
.prose ul { padding-left:1.25rem; }
.prose li { margin:.3rem 0; }
.prose a { color:#9fd8ff; text-decoration:underline; }
[data-theme="light"] .prose a { color:#0d47b0; }
