/* =============================================================================
   Pythia · lib/wheel.css — tipografia + interação da roda natal.
   Extraído do Urania (classes emitidas por natal-wheel.js: .urania-wheel*,
   .urania-aspgrid*). Self-contained: declara as vars que a lib referencia,
   para a roda renderizar igual fora do tema do Urania.
   ============================================================================= */
:root {
  --serif: "EB Garamond", Georgia, serif;
  --mono: "JetBrains Mono", ui-monospace, monospace;
  --wheel-red: #9a3024;
  --wheel-green: #2f6f4f;
  --wheel-violet: #5b4b8a;
  --wheel-amber: #9A7B1E;
}

.wheel-mount svg { max-width: 100%; height: auto; }

/* wheel typography */
.urania-wheel .sel-sign { font-family: var(--serif); }
.urania-wheel .sel-planet { font-family: var(--serif); font-weight: 600; }
.urania-wheel .sel-pdeg, .urania-wheel .sel-housenum { font-family: var(--mono); }
.urania-wheel .sel-axis { font-family: var(--mono); letter-spacing: .04em; }
.urania-wheel .sel-caption { font-family: var(--serif); }
.urania-wheel .sel-caption--name { font-weight: 700; }
.urania-wheel .sel-retro { font-family: var(--serif); }

/* interactive wheel: focus dims aspect lines, .on relights one */
svg.focus .sel-asp { opacity: .08; }
.urania-wheel .sel-asp { transition: opacity .3s ease, filter .3s ease; }
svg.focus .sel-asp.on {
  opacity: 1;
  filter: drop-shadow(0 0 3px rgba(201, 168, 75, .9)) drop-shadow(0 0 8px rgba(201, 168, 75, .45));
}
.urania-wheel .sel-pg { cursor: pointer; transition: filter .25s ease; }
.urania-wheel .sel-pg:hover,
.urania-wheel .sel-pg.on { filter: drop-shadow(0 0 5px rgba(201, 168, 75, .85)); }

/* compact (phone) — fatter planet glyph stroke for legibility */
.urania-wheel--compact .sel-pg path,
.urania-wheel--compact .sel-pg circle:not(.sel-hit) { stroke-width: 1.9; }

/* aspect grid */
.urania-aspgrid { border-collapse: collapse; font-family: var(--serif); }
.urania-aspgrid td, .urania-aspgrid th { width: 30px; height: 30px; text-align: center; border: 1px solid #E6E0D2; padding: 0; }
.urania-aspgrid .sel-ag-h { background: #F4EFE3; font-size: 16px; color: #1F2B3D; }
.urania-aspgrid .sel-ag-diag { background: #FBF8F1; font-size: 16px; color: #1F2B3D; }
.urania-aspgrid .sel-ag-c { font-size: 13px; vertical-align: middle; }
.urania-aspgrid .sel-ag-empty { background: #fff; }
.urania-aspgrid .sel-ag-glyph { display: block; font-size: 13px; line-height: 1; }
.urania-aspgrid .sel-ag-orb { display: block; font-family: var(--mono); font-size: 7.5px; opacity: .75; line-height: 1; }
.urania-aspgrid .sel-ag--harmonious { color: var(--wheel-green); }
.urania-aspgrid .sel-ag--dynamic { color: var(--wheel-red); }
.urania-aspgrid .sel-ag--neutral { color: var(--wheel-violet); }
.urania-aspgrid .sel-ag--minor { color: var(--wheel-amber); }

@media (prefers-reduced-motion: reduce) {
  .urania-wheel .sel-asp, .urania-wheel .sel-pg { transition: none; }
}
