/* MAGEO · Outil gratuit « Votre carte du ciel » (/carte-du-ciel/). Calcul dans le navigateur, rien n'est envoyé ni conservé.
   Roue : classes et couleurs de globals.css (lignes 374-424, maquette du 6 octobre) — version sombre à l'écran,
   version impression (PDF validé) dans la feuille A4, mise en page de roue-gratuite (page 13 des études). */
@font-face{font-family:SymbolesRoue1;src:url(/assets/fonts/symboles-1.woff2) format("woff2");font-display:swap}
@font-face{font-family:SymbolesRoue2;src:url(/assets/fonts/symboles-2.woff2) format("woff2");font-display:swap}
@font-face{font-family:Figtree;src:url(/assets/fonts/figtree.woff2) format("woff2");font-weight:300 900;font-display:swap}
@font-face{font-family:Fraunces;src:url(/assets/fonts/fraunces.woff2) format("woff2");font-weight:100 900;font-display:swap}

/* ---------- Formulaire */
.cc-tool{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:28px 28px 24px;margin:0 0 32px}
.cc-tool h2{font-size:clamp(1.5rem,3vw,1.9rem);color:var(--ink);margin-bottom:8px}
.cc-champ{margin:20px 0 0}
.cc-libelle{display:block;font-size:.9rem;font-weight:700;color:var(--muted);margin-bottom:6px;letter-spacing:.02em}
.cc-ligne{display:flex;flex-wrap:wrap;gap:14px}
.cc-ligne label{display:flex;flex-direction:column;font-size:.9rem;font-weight:700;color:var(--muted);gap:6px}
.cc-tool input,.cc-tool select{font:inherit;font-size:1.1rem;color:var(--ink);background:#fff;border:1px solid #cbbd9f;border-radius:8px;padding:10px 12px}
.cc-court{width:4.6em;text-align:center}.cc-annee{width:6.2em;text-align:center}
.cc-tool input:focus,.cc-tool select:focus{border-color:var(--gold-2);outline:3px solid rgba(227,184,92,.45);outline-offset:1px}
.cc-etats{display:flex;flex-direction:column;gap:8px;margin-top:4px}
.cc-etats label{display:flex;gap:10px;align-items:center;font-weight:400;color:var(--text);font-size:1rem}
.cc-etats input{width:1.1em;height:1.1em;accent-color:var(--gold-deep)}
.cc-note{font-size:.92rem;color:var(--muted);margin:6px 0 0}
.cc-lieux{position:relative;max-width:34em}
.cc-lieux input{width:100%}
.cc-lieux ul{position:absolute;z-index:5;left:0;right:0;top:100%;margin:4px 0 0;padding:4px 0;list-style:none;background:#fff;border:1px solid #cbbd9f;border-radius:8px;box-shadow:0 8px 24px rgba(20,16,12,.15);max-height:320px;overflow:auto}
.cc-lieux li{padding:8px 12px;cursor:pointer;color:var(--text)}
.cc-lieux li:hover,.cc-lieux li:focus{background:#f6eedc;outline:none}
.cc-actions{margin-top:24px;display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.cc-erreur{margin:14px 0 0;color:#8f2d16;font-weight:700}
.cc-prive{display:flex;gap:10px;align-items:flex-start;background:var(--paper);border:1px solid var(--line);border-left:4px solid var(--gold-2);border-radius:10px;padding:14px 18px;margin:0 0 28px;color:var(--text)}
.cc-prive p{margin:0}
[hidden]{display:none!important}

/* ---------- Résultat (sombre) */
.cc-resultat{padding:48px 0 64px}
.cc-resultat h2{color:#fff;font-size:clamp(1.6rem,3.4vw,2.2rem);margin-bottom:6px}
.cc-resultat h2:focus{outline:none}
.cc-sous{color:var(--on-dark-muted);margin:0 0 18px}
.cc-alerte{border:1px solid #c9a45c;border-radius:10px;padding:12px 16px;background:#1f1a14;color:var(--on-dark);margin:0 0 14px}
.cc-grille{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:28px 40px;align-items:start}
.cc-roue-ecran .roue{width:100%;max-width:620px;height:auto;display:block;margin:0 auto;background:#17130f;border-radius:50%}
.cc-legende{font-size:.95rem;color:var(--on-dark-muted);margin-top:12px}
.cc-positions{width:100%;border-collapse:collapse;font-size:1rem}
.cc-ecran .cc-positions th,.cc-ecran .cc-positions td{text-align:left;padding:8px 10px;border-bottom:1px solid #2e251b}
.cc-ecran .cc-positions th{color:#cfc5af;font-weight:700;font-size:.9rem;letter-spacing:.06em}
.cc-ecran .cc-positions td{color:#d9cfbd}
.cc-ecran .cc-positions td:first-child{color:#f3ead6}
.cc-symbole{display:inline-block;width:1.6em;font-family:SymbolesRoue1,SymbolesRoue2,sans-serif;color:#e9d7a6}
.cc-boutons{margin-top:24px;display:flex;flex-wrap:wrap;gap:12px}
.cc-mention{margin-top:14px;color:var(--on-dark-muted);font-size:.95rem}
@media (max-width:860px){.cc-grille{grid-template-columns:1fr}}
@media (max-width:640px){.cc-tool{padding:22px 18px 18px}.cc-ligne{gap:10px}}

/* Roue à l'écran : globals.css (maquette sombre du 6 octobre) */
.cc-ecran .roue-fond{fill:#17130f}
.cc-ecran .roue-trait{fill:none;stroke:#c9a45c;stroke-width:1.2}
.cc-ecran .roue-trait-fin{fill:none;stroke:#6b5a3a;stroke-width:.8}
.cc-ecran .roue-axe{stroke:#e0b85a;stroke-width:1.8}
.cc-ecran .roue-repere{stroke:#e9d7a6;stroke-width:2}
.roue-signe{font-family:SymbolesRoue1,SymbolesRoue2,sans-serif;font-size:19px;text-anchor:middle;dominant-baseline:central}
.roue-maison{font-family:Figtree,var(--sans);font-size:12px;text-anchor:middle;dominant-baseline:central}
.roue-angle{font-family:Figtree,var(--sans);font-size:14px;font-weight:700;text-anchor:middle;dominant-baseline:central}
.roue-planete{font-family:SymbolesRoue1,SymbolesRoue2,sans-serif;font-size:21px;text-anchor:middle;dominant-baseline:central}
.roue-retro{font-family:Figtree,var(--sans);font-size:10px;fill:#e39a72}
.roue-degre{font-family:Figtree,var(--sans);font-size:11px;text-anchor:middle;dominant-baseline:central}
.roue-aspect{stroke-width:1.2}
.cc-ecran .roue-signe{fill:#e9d7a6}.cc-ecran .roue-maison{fill:#a89d88}.cc-ecran .roue-angle{fill:#e0b85a}
.cc-ecran .roue-planete{fill:#f7f0e2}.cc-ecran .roue-degre{fill:#a89d88}
.cc-ecran .roue-aspect.harmonie{stroke:#c9a45c}
.cc-ecran .roue-aspect.tension{stroke:#e39a72;stroke-dasharray:5 3}
.cc-ecran .roue-aspect.conjonction{fill:none;stroke:#e9d7a6;stroke-width:3}

/* ---------- Feuille A4 imprimée (« Télécharger en PDF ») : roue-gratuite, couleurs PDF validées */
.cc-feuille{display:none}
.cc-feuille .roue-fond{fill:#fff}
.cc-feuille .roue-trait{fill:none;stroke:#333;stroke-width:1.2}
.cc-feuille .roue-trait-fin{fill:none;stroke:#999;stroke-width:.8}
.cc-feuille .roue-axe{stroke:#333;stroke-width:1.8}
.cc-feuille .roue-repere{stroke:#333;stroke-width:2}
.cc-feuille .roue-signe,.cc-feuille .roue-angle,.cc-feuille .roue-planete{fill:#111}
.cc-feuille .roue-maison,.cc-feuille .roue-degre{fill:#555}
.cc-feuille .roue-aspect.harmonie{stroke:#8a6a22}
.cc-feuille .roue-aspect.tension{stroke:#a2502a;stroke-dasharray:5 3}
.cc-feuille .roue-aspect.conjonction{fill:none;stroke:#6b4c10;stroke-width:3}
@media print{
  @page{size:A4;margin:0}
  html,body{margin:0!important;padding:0!important;background:#faf5ea!important}
  body>*:not(main),main>*:not(.cc-resultat),.cc-resultat>.wrap{display:none!important}
  .cc-resultat{padding:0!important;background:none!important}
  .cc-feuille{display:block;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .cc-feuille *{box-sizing:border-box;line-height:1.3}
  .cc-feuille p,.cc-feuille h1{margin:0}
  .cc-feuille{width:210mm;height:296mm;background:#faf5ea;position:relative;padding:19mm 22mm 0;overflow:hidden;font-family:Figtree,sans-serif;font-weight:300;color:#1e1711}
  .f-entete{display:flex;justify-content:space-between;font-size:7pt;letter-spacing:.28em;color:#8a7d66;padding-bottom:3.4mm;border-bottom:.6pt solid #e6d9b4}
  .f-entete span:last-child{letter-spacing:.12em}
  .f-kicker{margin-top:3.6mm;font-size:7pt;font-weight:600;letter-spacing:.3em;color:#b8892b}
  .cc-feuille .f-titre{font-family:Fraunces,serif;font-weight:400;font-variation-settings:"SOFT" 0,"WONK" 0;font-size:21pt;margin:2.4mm 0 0;letter-spacing:-.005em;color:#1e1711;line-height:1.2}
  .cc-feuille .f-sous{margin:1.6mm 0 0;font-size:8.6pt;color:#8a7d66}
  .f-cadre{position:relative;width:120mm;height:120mm;margin:0 auto}
  .f-deco{position:absolute;inset:0;width:100%;height:100%}
  .f-roue .roue{position:absolute;left:5mm;top:5mm;width:110mm;height:110mm;background:transparent}
  .cc-feuille .f-note{font-size:8.4pt;line-height:1.6;color:#8a7d66;margin:0}
  .cc-feuille .f-alerte{font-size:8.2pt;line-height:1.5;color:#5a4c36;border:.6pt solid #c9a45c;border-radius:2mm;padding:1.8mm 3mm;margin:2mm 0 0;background:#f6eedc}
  .f-tableau table{width:100%;border-collapse:collapse;margin-top:3.4mm;font-size:8.6pt}
  .f-tableau th{text-align:left;font-size:6.6pt;font-weight:600;letter-spacing:.16em;color:#b8892b;padding:0 0 1.6mm;border-bottom:.9pt solid #c9a45c}
  .f-tableau td{padding:1mm 0;border-bottom:.5pt solid #e6d9b4;font-weight:400;color:#1e1711}
  .f-tableau td:nth-child(1),.f-tableau th:nth-child(1),.f-tableau td:nth-child(2),.f-tableau th:nth-child(2){width:40%}
  .compacte .f-cadre{width:108mm;height:108mm}.compacte .f-roue .roue{left:4.5mm;top:4.5mm;width:99mm;height:99mm}.compacte .f-tableau td{padding:.8mm 0}
  .f-pied{position:absolute;left:22mm;right:22mm;bottom:9mm;display:flex;justify-content:space-between;align-items:center;font-size:7.4pt;letter-spacing:.14em;color:#8a7d66}
  .f-pied img{width:9.5mm;height:9.5mm;opacity:.85}
}
