/* =========================================================
   Chapitre V — Hauteur des astres (2) : la latitude avec le Soleil
   Complète chapitre.css et polaire.css.
   ========================================================= */

.page .definition { border-left: 3px solid #c8a660; padding-left: calc(12 * var(--u)); }
.figure-anim .commandes + .commandes { margin-top: calc(-4 * var(--u)); }
.commandes output.date { font-weight: 700; min-width: 7.5em; font-style: italic; }

/* --- la Terre dans le plan du méridien --- */
.figure-terre svg, .svg-espace { background: #1d3f68; border-radius: 6px; }
.etoiles-fond circle { fill: #fff6d8; opacity: .7; }
.faisceau { fill: #ffe27a; fill-opacity: .22; }
.globe-soleil { fill-opacity: .4; stroke: #9ed4ff; stroke-opacity: .7; stroke-width: 1.2; }
.figure-anim .continents, .svg-espace .continents { fill: #a9c98f; fill-opacity: .26; stroke: #d9f0c4; stroke-opacity: .35; stroke-width: .6; }
.nuit { fill: #06101e; fill-opacity: .5; }
.tropique { stroke: #e9dcbc; stroke-opacity: .45; stroke-dasharray: 4 4; }
.equateur-soleil { stroke: #e9dcbc; stroke-opacity: .6; stroke-width: 1; }
.equateur-local { stroke: #e05a4a; stroke-width: 1.4; }
.figure-anim .axe, .svg-espace .axe { stroke: #e9dcbc; stroke-opacity: .8; stroke-width: 1.2; stroke-dasharray: 6 4; }
.rayon-soleil { stroke: #ffe27a; stroke-width: 1.8; }
.fleche-sur-rayon { fill: none; stroke: #ffe27a; stroke-width: 2; }
.zenith { stroke: #fbf6ea; stroke-width: 1.2; stroke-opacity: .85; }
.figure-terre .horizon, .svg-espace .horizon { stroke: #9ed4ff; stroke-width: 1; }
.angle-blanc { fill: rgba(251,246,234,.45); stroke: #fbf6ea; stroke-width: 1.2; }
.angle-rouge { fill: rgba(224,90,74,.55); stroke: #ff8a78; stroke-width: 1.2; }
.angle-orange { fill: rgba(255,170,60,.5); stroke: #ffb347; stroke-width: 1.4; }
.figure-terre .petit, .svg-espace .petit { font: italic 14px var(--serif); fill: #e9dcbc; }
.figure-terre .petit.discret, .svg-espace .petit.discret { font-size: 12px; fill-opacity: .7; }
.soleil-nom { fill: #ffe27a !important; }
.lettre-claire { font: 700 15px var(--serif); fill: #e9dcbc; }
.figure-terre .voiles, .svg-espace .voiles { fill: #fbf6ea; stroke: #3b2a14; stroke-width: 1; stroke-linejoin: round; }
.figure-terre .coque, .svg-espace .coque { fill: #0e1824; }

/* mesures colorées */
.mesures-vives .rouge { color: #b3261e; }
.mesures-vives .orange { color: #c46a00; }
.mesures-vives dt.blanc, .mesures-vives dd.blanc { color: var(--encre); }
.page .formule { margin: 0; text-align: center; font-family: var(--serif); font-weight: 700; font-size: calc(26 * var(--u)); color: #24467f; }
.page .formule.petite { font-size: calc(19 * var(--u)); }
.page .formule-valeurs { margin: calc(-4 * var(--u)) 0 0; text-align: center; font-size: calc(17 * var(--u)); font-variant-numeric: tabular-nums; color: var(--encre); min-height: 1.3em; }
.page .note { font-style: italic; font-size: calc(14.5 * var(--u)); line-height: 1.3; color: var(--encre-douce); }

/* la table de Vaz Dourado, étroite et haute */
.page .table-ancienne { width: 21%; margin-top: 0; }
.page .table-ancienne figcaption { font-size: calc(11.5 * var(--u)); }

/* --- l'astrolabe --- */
.mer-jour { fill: #4f7f9f; }
.horizon-mer { stroke: #2d5672; stroke-width: 1.5; }
.petit-sombre { font: italic 15px var(--serif); fill: #23384a; }
.rayons-jour line { stroke: #fff3b8; stroke-width: 1.4; stroke-opacity: .55; stroke-dasharray: 10 8; }
.disque-soleil { fill: #fff5c2; stroke: #ffd34d; stroke-width: 2; }

/* le calcul */
.calcul { font-size: calc(17 * var(--u)); margin: 0; flex: none; }
.calcul p { margin: 0 0 calc(4 * var(--u)); }
.calcul output { font-weight: 700; }
.calcul input { font: inherit; width: 4em; text-align: center; padding: 0 calc(4 * var(--u)); border: 1px solid #a88d55; background: #fffaf0; border-radius: 4px; }
.calcul button { font: inherit; font-family: var(--capitales); font-size: calc(15 * var(--u)); padding: calc(1 * var(--u)) calc(12 * var(--u)); cursor: pointer; color: var(--encre); background: transparent; border: 1px solid rgba(122,90,28,.6); border-radius: 999px; margin-left: calc(6 * var(--u)); }
.calcul button:hover { background: rgba(214,180,108,.35); }
.calcul .retour { font-style: italic; color: #8a3a24; min-height: 1.3em; }
.calcul .retour.juste { color: #2f6b2f; font-weight: 600; }
.pour-info { border: 1px solid #c8b48a; background: rgba(251,246,234,.75); padding: calc(8 * var(--u)) calc(14 * var(--u)); font-size: calc(15 * var(--u)); flex: none; }
.pour-info h3 { margin: 0 0 calc(4 * var(--u)); font-family: var(--capitales); font-size: calc(15 * var(--u)); letter-spacing: .04em; color: #24467f; }
.pour-info p { margin: 0 0 calc(3 * var(--u)); }

/* --- la correction --- */
dialog.correction { max-width: min(900px, 94vw); max-height: 92vh; padding: 0; border: 1px solid #7a5a1c; border-radius: 8px; background: #f6efdd; color: #2b1d0c; box-shadow: 0 10px 40px rgba(0,0,0,.6); }
dialog.correction::backdrop { background: rgba(8,14,22,.7); }
.correction-corps { padding: 20px 26px; font-family: var(--serif); font-size: 19px; line-height: 1.35; overflow: auto; max-height: 92vh; box-sizing: border-box; }
.correction-corps h3 { margin: 0 0 8px; font-size: 26px; color: #24467f; }
.correction-corps p { margin: 0 0 8px; }
.correction-corps .formule { text-align: center; font-weight: 700; font-size: 24px; color: #24467f; }
.correction-corps figure { margin: 10px 0; }
.correction-corps img { width: 100%; height: auto; display: block; }
.correction-corps figcaption { text-align: center; font-style: italic; font-size: 15px; }
.correction-corps .fermer { display: block; margin: 8px auto 0; }
.figure-anim svg[hidden] { display: none; }
.page .avec-image .texte + .texte { margin-top: calc(10 * var(--u)); }
#astrolabe .flottant { width: 30%; }

/* --- zoom : textes et traits gardent leur taille --- */
.figure-terre svg, .svg-espace, .svg-astrolabe { --z: 1; }
.figure-terre .petit, .svg-espace .petit { font-size: calc(14px / var(--z)); }
.figure-terre .petit.discret, .svg-espace .petit.discret { font-size: calc(12px / var(--z)); }
.lettre-claire { font-size: calc(15px / var(--z)); }
:is(.figure-terre, .svg-espace) :is(.rayon-soleil, .zenith, .horizon, .equateur-soleil, .equateur-local, .axe, .tropique) { vector-effect: non-scaling-stroke; }
.svg-astrolabe .petit-sombre { font-size: calc(15px / var(--z)); }
.svg-astrolabe .message-astro { font-size: calc(18px / var(--z)); }
.svg-astrolabe .graduation text { font-size: calc(30px / (1 + var(--z))); }

.commandes button[aria-pressed="true"].zoom { background: #24467f; color: #fbf6ea; border-color: #24467f; }

/* l'astrolabe miniature (vue depuis l'espace) */
.mini-couronne { fill: none; stroke: #c9a24e; stroke-width: 4; }
.mini-rayon { stroke: #c9a24e; stroke-width: 2; }
.mini-cordon { stroke: #e9dcbc; stroke-width: 1; }
.mini-anneau { fill: none; stroke: #c9a24e; stroke-width: 1.5; }
.mini-alidade line { stroke: #fff2b0; stroke-width: 2.5; }
.mini-alidade .mini-pinnule { stroke-width: 3; }
.svg-espace .mini-couronne, .svg-espace .mini-rayon, .svg-espace .mini-alidade line { vector-effect: none; }

/* la table de Vaz Dourado s'agrandit au survol */
.page .table-ancienne { position: relative; z-index: 2; }
.page .table-ancienne img { transition: transform .35s ease; transform-origin: top right; cursor: zoom-in; }
.page .table-ancienne:hover img, .page .table-ancienne:focus-within img { transform: scale(1.75); box-shadow: 0 6px 24px rgba(0,0,0,.45); }

/* lien vers la table d'Évora */
.lien-table { font: inherit; font-style: italic; color: #24467f; background: none; border: 0; padding: 0; text-decoration: underline; text-underline-offset: 2px; cursor: pointer; }
.lien-table:hover { color: #8a3a24; }
.svg-espace .poignee .zone { display: none; }

/* le grand astrolabe de la vue depuis l'espace */
.ga-couronne { fill: none; stroke: #b8954a; stroke-width: 26; stroke-opacity: .55; }
.ga-filet { fill: none; stroke: #e9dcbc; stroke-opacity: .5; stroke-width: 1; }
.ga-rayon { stroke: #b8954a; stroke-opacity: .5; stroke-width: 14; }
.ga-moyeu { fill: #b8954a; fill-opacity: .7; stroke: #e9dcbc; stroke-opacity: .6; }
.ga-trait { stroke: #fbf6ea; stroke-width: 1; stroke-opacity: .85; }
.ga-nombre { font: 600 12px var(--serif); fill: #fbf6ea; }
.ga-alidade rect { fill: #e7c46a; fill-opacity: .85; stroke: #5a4428; stroke-width: 1; }
.ga-alidade .ga-pinnule { fill: #c9a24e; }
.horizon-centre { stroke: #9ed4ff; stroke-width: 1.2; stroke-dasharray: 6 4; }
.svg-espace .nuit { fill-opacity: .35; }

/* --- l'astrolabe de marine --- */
.astrolabe .cordon { stroke: #5a4428; stroke-width: 2; }
.astrolabe .anneau { fill: none; stroke-width: 7; }
.astrolabe .laiton { stroke: #6f4a18; stroke-width: 1.2; }
.astrolabe .plaque { stroke: #6f4a18; stroke-width: 1.4; filter: drop-shadow(3px 5px 5px rgba(0,0,0,.35)); }
.astrolabe .lest { stroke-width: 1; }
.astrolabe .gravure { fill: none; stroke: #6f4a18; stroke-width: .9; stroke-opacity: .7; }
.astrolabe .bande { stroke: #6f4a18; stroke-width: .9; }
.astrolabe .bord { fill: none; stroke: #5a3a10; stroke-width: 2; }
.astrolabe .graduation line { stroke: #3b2a14; stroke-width: .9; }
.astrolabe .graduation .trait-zero { stroke-width: 1.4; }
.astrolabe .graduation text { font: 600 13px var(--serif); fill: #2b1d0c; }
.ligne-horizon-astro { stroke: #23384a; stroke-width: 1; stroke-dasharray: 5 4; stroke-opacity: .6; }
.angle-astro { fill: rgba(255,170,60,.45); stroke: #c46a00; stroke-width: 1.4; }
.alidade .regle { stroke: #5a3a10; stroke-width: 1.2; filter: drop-shadow(2px 3px 3px rgba(0,0,0,.35)); }
.alidade .ligne-foi { stroke: #5a3a10; stroke-width: .8; stroke-opacity: .7; }
.alidade .pinnule { stroke: #5a3a10; stroke-width: 1.1; }
.alidade .trou { fill: #1a1208; }
.alidade .boss { stroke: #5a3a10; stroke-width: 1.2; }
.alidade .rosace { fill: none; stroke: #4a2f0c; stroke-width: .9; stroke-opacity: .8; }
.alidade .goupille { fill: #f6dc9a; stroke: #5a3a10; }
.alidade .zone { fill: transparent; }
.alidade { cursor: grab; }
.pinnule-eclairee { fill: #fff3b0; fill-opacity: .6; pointer-events: none; }
.faisceau-pinnules { stroke: #fffbe0; stroke-width: 3; stroke-linecap: round; filter: drop-shadow(0 0 4px #fff3a0); pointer-events: none; }
.tache { pointer-events: none; }
.etiquette-h rect { fill: rgba(255,250,235,.92); stroke: #c46a00; stroke-width: 1.6; }
.etiquette-h text { font: 700 21px var(--serif); fill: #8a4a00; }
.etiquette-h.juste rect { fill: #fff3b0; stroke: #2f6b2f; }
.etiquette-h.juste text { fill: #2f6b2f; }
.message-astro { font: italic 700 18px var(--serif); fill: #fffbe6; paint-order: stroke; stroke: #23384a; stroke-width: 3px; }
.svg-espace .astrolabe .graduation text { font-size: 12px; }
.svg-espace .astrolabe .ligne-horizon-astro { stroke: #9ed4ff; stroke-opacity: .9; }
.svg-espace .astrolabe { opacity: .92; }

/* --- la trigonométrie de la sphère : voir sphere.css --- */
#trigonometrie .azulejo { width: 24%; margin-top: 0; }
#trigonometrie .azulejo figcaption { font-size: calc(11.5 * var(--u)); }
#trigonometrie .azulejo { width: 19%; background: none; }
#trigonometrie .azulejo img { box-shadow: 0 2px 6px rgba(0,0,0,.3); }
#trigonometrie .avec-image { flex: none; }
#trigonometrie .azulejo { float: right; width: 15%; margin: 0 0 calc(4 * var(--u)) calc(14 * var(--u)); padding: 0; border: 0; background: none; box-shadow: none; display: block; }
#trigonometrie .azulejo img { display: block; width: 100%; height: auto; }
#trigonometrie .azulejo figcaption { font-size: calc(11 * var(--u)); line-height: 1.15; text-align: center; margin-top: calc(3 * var(--u)); font-style: italic; color: var(--encre-douce); }
#trigonometrie .page.droite { position: relative; }
#trigonometrie .azulejo { position: absolute; float: none; top: calc(28 * var(--u)); right: calc(34 * var(--u)); width: calc(78 * var(--u)); margin: 0; z-index: 1; }
#trigonometrie .partie { padding-right: calc(90 * var(--u)); }
#trigonometrie .vers-chapitre { flex: none; margin: 0; text-align: center; }
#trigonometrie .vers-chapitre .bouton { font-size: calc(16 * var(--u)); color: #fbf6ea; text-decoration: none; font-weight: 600; display: inline-block; padding: calc(5 * var(--u)) calc(16 * var(--u)); height: auto; min-height: 0; line-height: 1.3; }
