html,body{color:#fff;background:#000;height:100%;margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;overflow:hidden}canvas#scene{touch-action:none;width:100%;height:100%;display:block}.rotate-screen{display:none}@media (orientation:portrait){.rotate-screen{z-index:1000;text-align:center;background:#000;justify-content:center;align-items:center;padding:2rem;font-size:2rem;display:flex;position:fixed;inset:0}}.time-control{left:50%;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:10;color:#fff;background:#0a0c18bf;border-radius:14px;flex-direction:column;align-items:center;gap:8px;padding:8px 12px;display:flex;position:fixed;transform:translate(-50%)}.time-control__date{font-variant-numeric:tabular-nums;font-size:1.1rem}.time-control__buttons{gap:6px;display:flex}.time-control__buttons button{min-width:44px;min-height:44px;color:inherit;font:inherit;cursor:pointer;touch-action:manipulation;background:0 0;border:1px solid #ffffff4d;border-radius:10px;padding:0 14px}.time-control__buttons button.active{color:#000;background:#fff;border-color:#fff;font-weight:600}.chapter-overlay{z-index:5;pointer-events:none;position:fixed;inset:0}.chapter-title{top:calc(16px + env(safe-area-inset-top,0px));margin:0;font-size:1.6rem;font-weight:600;position:absolute;left:50%;transform:translate(-50%)}.fade{z-index:50;opacity:0;pointer-events:none;background:#000;transition:opacity .3s;position:fixed;inset:0}.fade.fade--on{opacity:1;pointer-events:auto}.menu-toggle,.menu-item,.menu-quality button,.sources-panel__close{color:#fff;min-width:44px;min-height:44px;font:inherit;cursor:pointer;touch-action:manipulation;box-sizing:border-box;background:#0a0c18bf;border:1px solid #ffffff4d;border-radius:10px;padding:0 16px}.menu-toggle{top:calc(12px + env(safe-area-inset-top,0px));left:calc(12px + env(safe-area-inset-left,0px));z-index:70;position:fixed}.menu-panel{top:calc(64px + env(safe-area-inset-top,0px));left:calc(12px + env(safe-area-inset-left,0px));z-index:70;background:#0a0c18e6;border-radius:14px;flex-direction:column;gap:8px;padding:12px;display:flex;position:fixed}.menu-panel[hidden],.sources-panel[hidden]{display:none}.menu-item{align-items:center;text-decoration:none;display:flex}.menu-item[aria-current=page],.menu-quality button[aria-pressed=true]{color:#000;background:#fff;border-color:#fff;font-weight:600}.menu-quality{align-items:center;gap:6px;margin-top:4px;display:flex}.menu-quality span{margin-right:4px}.sources-panel{z-index:30;padding:calc(72px + env(safe-area-inset-top,0px)) calc(24px + env(safe-area-inset-right,0px)) calc(24px + env(safe-area-inset-bottom,0px)) calc(24px + env(safe-area-inset-left,0px));background:#000000eb;position:fixed;inset:0;overflow:auto}.sources-panel__close{top:calc(12px + env(safe-area-inset-top,0px));right:calc(12px + env(safe-area-inset-right,0px));position:fixed}.time-control,.scale-toggle{pointer-events:auto}.scale-badge{top:calc(16px + env(safe-area-inset-top,0px));text-align:center;background:#0a0c18bf;border-radius:12px;max-width:60vw;padding:8px 14px;font-size:1rem;position:absolute;left:50%;transform:translate(-50%)}.scale-toggle{top:calc(12px + env(safe-area-inset-top,0px));right:calc(12px + env(safe-area-inset-right,0px));color:#fff;min-height:44px;font:inherit;cursor:pointer;touch-action:manipulation;background:#0a0c18bf;border:1px solid #ffffff4d;border-radius:10px;padding:0 16px;position:absolute}.body-label{color:#fff;height:44px;font:inherit;text-shadow:0 0 4px #000,0 0 2px #000;cursor:pointer;touch-action:manipulation;background:0 0;border:0;align-items:center;padding:0 12px 0 0;font-size:.95rem;display:flex;position:absolute;top:0;left:0}.body-label[hidden]{display:none}.body-label__target{flex:none;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.body-label__dot{background:#ffd36b;border-radius:50%;display:block;box-shadow:0 0 6px #ffd36be6}.body-label__dot--hidden{opacity:0}.body-label,.body-label *{pointer-events:none}.body-label--name-hidden .body-label__name{visibility:hidden}.sources h2{margin:0 0 8px;font-size:1.4rem}.sources h3{margin:24px 0 8px;font-size:1.1rem}.sources ul{margin:0;padding:0;list-style:none}.sources li{margin:0 0 14px}.sources a{color:#9fd0ff;word-break:break-all}.sources p,.sources dd{max-width:70ch;margin:4px 0}.sources__meta{opacity:.75;font-size:.9rem}.fiche,.presenter-notes__toggle,.presenter-notes__panel,.body-strip{pointer-events:auto}.fiche{top:calc(64px + env(safe-area-inset-top,0px));right:calc(12px + env(safe-area-inset-right,0px));bottom:calc(84px + env(safe-area-inset-bottom,0px));box-sizing:border-box;background:#0a0c18bf;border-radius:14px;width:340px;padding:14px 16px;position:absolute;overflow-y:auto}.fiche__titre{margin:0 0 10px;font-size:1.6rem;font-weight:600}.fiche__chiffre{margin:0 0 12px}.fiche__libelle{color:#ffffffa6;font-size:.85rem}.fiche__valeur{font-size:1.25rem;font-weight:600}.fiche__comparaison{color:#fffc;font-size:.85rem}.presenter-notes__toggle{top:calc(12px + env(safe-area-inset-top,0px));right:calc(12px + env(safe-area-inset-right,0px));color:#fff;min-width:44px;min-height:44px;font:inherit;cursor:pointer;touch-action:manipulation;background:#0a0c18bf;border:1px solid #ffffff4d;border-radius:10px;padding:0 16px;position:absolute}.presenter-notes__toggle[aria-expanded=true]{background:#3c5aa0d9}.presenter-notes__panel{left:calc(12px + env(safe-area-inset-left,0px));bottom:calc(84px + env(safe-area-inset-bottom,0px));box-sizing:border-box;background:#0a0c18e6;border-radius:14px;width:360px;max-height:55vh;padding:12px 16px;font-size:.95rem;position:absolute;overflow-y:auto}.presenter-notes__panel[hidden]{display:none}.presenter-notes__panel h3{margin:0 0 8px;font-size:1rem}.presenter-notes__panel ul{margin:0;padding-left:18px}.presenter-notes__panel li{margin:0 0 8px}.body-strip{left:50%;bottom:calc(12px + env(safe-area-inset-bottom,0px));background:#0a0c18bf;border-radius:14px;gap:6px;padding:6px;display:flex;position:absolute;transform:translate(-50%)}.body-strip button{color:#fff;min-width:44px;min-height:44px;font:inherit;cursor:pointer;touch-action:manipulation;background:0 0;border:1px solid #0000;border-radius:10px;padding:0 10px;font-size:.95rem}.body-strip button[aria-current=true]{background:#3c5aa0d9;border-color:#fff9}.moon-label{white-space:nowrap;text-shadow:0 0 4px #000,0 0 2px #000;font-size:.9rem;position:absolute;top:0;left:0}.moon-label[hidden]{display:none}.moon-ui{pointer-events:none;position:absolute;inset:0}.moon-top-hit{pointer-events:auto;touch-action:none;width:50%;height:100%;position:absolute;top:0;left:0}.moon-top-labels{width:50%;height:100%;position:absolute;top:0;left:0;overflow:hidden}.moon-top-label{color:#ffffffd9;text-shadow:0 0 4px #000;white-space:nowrap;font-size:.85rem;position:absolute;top:0;left:0}.moon-top-label--sun{white-space:normal;text-align:center;color:#ffd25e;width:150px;margin-left:-75px}.moon-top-label--loupe{margin-top:-9px;margin-left:-20px}.moon-top-label--sun-name{color:#ffd25e}.moon-loupe-frame{left:calc(12px + env(safe-area-inset-left,0px));top:calc(56px + env(safe-area-inset-top,0px));box-sizing:border-box;border:1px solid #ffffff73;border-radius:14px;width:200px;height:200px;position:absolute}.moon-loupe-caption{left:calc(12px + env(safe-area-inset-left,0px));top:calc(262px + env(safe-area-inset-top,0px));color:#ffffffd9;text-shadow:0 0 4px #000;max-width:200px;font-size:.8rem;line-height:1.25;position:absolute}.moon-divider{background:#ffffff59;width:2px;height:100%;position:absolute;top:0;left:50%}.moon-title{top:calc(18px + env(safe-area-inset-top,0px));text-shadow:0 0 6px #000;font-size:1.1rem;font-weight:600;position:absolute}.moon-title--top{left:calc(100px + env(safe-area-inset-left,0px))}.moon-title--sky{left:calc(50% + 14px)}.moon-card{top:calc(56px + env(safe-area-inset-top,0px));background:#0a0c18bf;border-radius:12px;padding:8px 12px;font-size:.95rem;line-height:1.4;position:absolute;left:calc(50% + 14px)}.moon-card__below{color:#ffd25e}.moon-card__below[hidden]{display:none}.moon-bar{left:50%;bottom:calc(12px + env(safe-area-inset-bottom,0px));pointer-events:auto;background:#0a0c18d1;border-radius:14px;flex-direction:column;align-items:center;gap:6px;padding:8px 14px;display:flex;position:absolute;transform:translate(-50%)}.moon-bar__readout{align-items:baseline;gap:16px;display:flex}.moon-phase{font-size:1.15rem;font-weight:600}.moon-date{font-variant-numeric:tabular-nums;opacity:.85;font-size:.95rem}.moon-bar__controls{align-items:center;gap:14px;display:flex}.moon-slider{align-items:center;gap:8px;display:flex}.moon-slider input{touch-action:manipulation;width:170px;min-height:44px}.moon-slider__value{font-variant-numeric:tabular-nums;min-width:4.2em}.moon-bar button,.moon-tools button{min-width:44px;min-height:44px;color:inherit;font:inherit;cursor:pointer;white-space:nowrap;touch-action:manipulation;background:0 0;border:1px solid #ffffff4d;border-radius:10px;padding:0 14px}.moon-bar button:disabled,.moon-tools button:disabled{opacity:.5}.moon-status{color:#ffd25e;min-height:1.2em;font-size:.9rem}.moon-status:empty{display:none}.moon-ui .presenter-notes__panel{bottom:calc(150px + env(safe-area-inset-bottom,0px))}.moon-sun-hint{color:#ffd25e;white-space:nowrap;background:#0a0c18bf;border-radius:10px;padding:4px 10px;font-size:.95rem;position:absolute}.moon-sun-hint[hidden]{display:none}.moon-sun-hint--right{right:calc(12px + env(safe-area-inset-right,0px))}.moon-sun-hint--left{left:calc(50% + 12px)}.moon-top-label--inclination{color:#ffd25e;margin-top:-9px;margin-left:8px;font-weight:600}.moon-tools{left:calc(12px + env(safe-area-inset-left,0px));top:calc(306px + env(safe-area-inset-top,0px));pointer-events:auto;flex-direction:column;gap:6px;width:200px;display:flex;position:absolute}.moon-tools button{white-space:normal;text-align:left;background:#0a0c18b3;padding-top:6px;padding-bottom:6px;line-height:1.2}.moon-tools button[aria-pressed=true]{background:#5a460ad9;border-color:#ffd21e}.moon-tools button[hidden]{display:none}.moon-tools__eclipse{color:#ffd25e;text-shadow:0 0 4px #000;min-height:0;font-size:.9rem;line-height:1.25}.moon-tools__toggle{background:#0a0c18b3;border-radius:10px;align-items:center;gap:8px;min-height:44px;margin-top:6px;padding:0 10px;font-size:.95rem;display:flex}.moon-tools__toggle input{accent-color:#ffd21e;width:22px;height:22px}.chapter-error{z-index:60;background:#000;flex-direction:column;justify-content:center;align-items:center;gap:16px;font-size:1.3rem;display:flex;position:fixed;inset:0}.chapter-error[hidden]{display:none}.chapter-error button{pointer-events:auto;min-width:160px;min-height:48px}
