/* V0.5.2: static orbital overview and native DOM calendar. No animation or chart dependency. */
.o-overview{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center;padding:48px clamp(22px,4vw,64px) 35px;background:#f7fafb;border-bottom:1px solid #dbe6ec;color:#142c43}
.o-copy h1{font-size:clamp(36px,4vw,58px);font-weight:600;line-height:1.25;letter-spacing:-.035em;margin:23px 0}
.o-copy>p{font-size:17px;line-height:1.9;color:#567082;margin:0 0 28px}
.o-actions{display:flex;gap:12px;flex-wrap:wrap}.o-actions .button{font-size:14px;min-height:44px}
.o-summary{display:flex;gap:34px;margin:32px 0 15px}.o-summary>div{display:flex;flex-direction:column;gap:9px}.o-summary strong{font-size:23px;font-weight:600;letter-spacing:-.01em}.o-summary>div:nth-child(2) strong{font-size:16px;padding-top:7px}.o-summary span,.o-source{font-size:11px;color:#60778a;line-height:1.7}
.o-visual{display:block;position:relative;width:100%;aspect-ratio:4/3;max-height:500px;background:#edf4f7;border:1px solid #d9e5eb;border-radius:12px;overflow:hidden;color:#315569}.o-visual svg{position:absolute;width:100%;height:100%;inset:0}.o-visual-label{position:absolute;top:22px;left:24px;right:24px;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.1em}.o-visual-label b{font-size:9px;font-weight:400;background:#fff8;padding:3px 7px}.o-earth{position:absolute;left:50%;top:50%;width:38%;aspect-ratio:1;border-radius:50%;transform:translate(-50%,-50%);background:#accdd8 url('./world.jpg') center center/200% 100%;box-shadow:inset -20px -10px 22px #25496666,inset 8px 5px 25px #d9f2fa88,0 3px 25px #30566b25;filter:brightness(1.22) saturate(.6)}.o-enter{position:absolute;left:24px;right:24px;bottom:48px;display:flex;justify-content:space-between;font-size:11px;letter-spacing:.07em}.o-enter b{font-size:23px;line-height:1}.o-image-note{position:absolute;left:24px;bottom:23px;font-size:9px;color:#6a8291}.o-visual:hover{border-color:#699bb8}.o-visual:focus-visible{outline:3px solid #1467dd;outline-offset:3px}
.cal-heading{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:26px;color:#142c43}.cal-heading h1{font-size:clamp(28px,3vw,43px);margin:12px 0;font-weight:600;letter-spacing:-.025em}.cal-heading p{color:#617789;font-size:15px;margin:0}.cal-heading .button{flex-shrink:0}
.cal-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:10px;background:#f4f7fa;border:1px solid #dce6ed;padding:14px;border-radius:8px}.cal-toolbar button,.cal-toolbar input,.cal-toolbar select{font:inherit;font-size:14px;color:#27465b;background:#fff;border:1px solid #ccdce6;border-radius:5px;min-height:44px;padding:9px 12px}.cal-toolbar button{cursor:pointer}.cal-toolbar button:hover{background:#eaf2f9;border-color:#7eabc8}.cal-toolbar button:disabled{opacity:.5;cursor:wait}.cal-month-control{display:flex;gap:6px;align-items:center}.cal-month-control>button:first-child,.cal-month-control>button:nth-child(3){min-width:44px}.cal-search{flex:1;min-width:180px}.cal-search input{width:100%}.cal-meta{display:flex;justify-content:space-between;gap:16px;margin:15px 0;font-size:12px;color:#5b7386;line-height:1.6}.cal-meta p{margin:0}.cal-meta>span{white-space:nowrap}.cal-legend{display:flex;flex-wrap:wrap;gap:13px;align-items:center;font-size:11px;color:#607487;margin-bottom:18px}.cal-status{display:inline-flex;gap:6px;align-items:center;font-size:11px;line-height:1.6;color:#465e72}.cal-status:before{content:'';width:7px;height:7px;border-radius:50%;background:#899bab;flex-shrink:0}.cal-status.launched:before{background:#1c8665}.cal-status.planned:before{background:#1867c9}.cal-status.hold:before{background:#ad7a20}.cal-status.failed:before{background:#bb514c}
.cal-layout{display:grid;grid-template-columns:minmax(0,1fr) 335px;gap:24px;align-items:start}.cal-main{min-width:0}.cal-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));text-align:center;background:#f4f7fa;border:1px solid #dce6ed;border-bottom:0;border-radius:8px 8px 0 0;font-size:12px;color:#5a7082;padding:12px 0}.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border:1px solid #dce6ed;border-right:0;border-bottom:0;background:#fff;border-radius:0 0 8px 8px;overflow:hidden}.cal-cell{min-height:116px;min-width:0;border-right:1px solid #dce6ed;border-bottom:1px solid #dce6ed;padding:6px;background:#fff}.cal-cell.outside{background:#f8fafb}.cal-cell.chosen{background:#edf5ff;box-shadow:inset 0 0 0 2px #357dd1}.cal-day{display:flex;justify-content:space-between;align-items:center;background:none;border:0;width:100%;min-height:36px;padding:4px;font-size:13px;color:#2a465b;cursor:pointer;font:inherit}.cal-day b{font-size:10px;color:#176ac3;background:#e4effa;min-width:20px;height:20px;line-height:20px;border-radius:3px;text-align:center}.cal-day:disabled{color:#a4b5c2;cursor:default}.cal-cell.today .cal-day>span{background:#2168b4;color:#fff;border-radius:50%;width:27px;height:27px;line-height:27px;text-align:center}.cal-cell-events{display:flex;flex-direction:column;gap:4px}.cal-event{display:grid;grid-template-columns:140px minmax(0,1fr) auto;align-items:center;gap:7px 15px;width:100%;text-align:left;background:#fff;border:1px solid #dce6ed;border-left:3px solid #2176c5;border-radius:5px;padding:14px;color:#25465d;cursor:pointer;font:inherit;margin-bottom:8px;min-height:48px}.cal-event.launched{border-left-color:#198866}.cal-event.hold{border-left-color:#ad7a20}.cal-event.failed{border-left-color:#bb514c}.cal-event:hover,.cal-event.selected{background:#eef5fc;border-top-color:#86b1d4;border-right-color:#86b1d4;border-bottom-color:#86b1d4}.cal-event-time{font-size:11px;color:#617a8c;font-variant-numeric:tabular-nums}.cal-event strong{font-size:13px;font-weight:600;overflow-wrap:anywhere}.cal-event small{grid-column:2;grid-row:2;font-size:11px;color:#637a8b;line-height:1.6}.cal-event-state{font-size:10px;white-space:nowrap;grid-column:3;grid-row:1}.cal-event.compact{display:block;padding:5px;margin:0;font-size:10px;min-height:0;background:#eff5fa;border-top:0;border-right:0;border-bottom:0}.cal-event.compact strong{font-size:10px;display:block;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.cal-event.compact .cal-event-time{font-size:9px;display:block}.cal-event.compact .cal-event-state{display:none}.cal-more{border:0;background:none;color:#276caa;font-size:10px;text-align:left;cursor:pointer;min-height:30px}
.cal-agenda{margin:25px 0}.cal-agenda-heading{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:14px}.cal-agenda-heading h2,#cal-undated h2{font-size:17px;margin:0;font-weight:600;color:#27455b}.cal-agenda-heading button{background:none;border:0;color:#286bad;font-size:12px;min-height:40px;cursor:pointer}.cal-empty{background:#f4f7fa;border:1px dashed #cfdee8;border-radius:6px;padding:22px;color:#5d768a;line-height:1.8;font-size:13px}.cal-detail{border:1px solid #d8e4ec;background:#f9fbfc;border-radius:8px;padding:22px;min-width:0;scroll-margin-top:90px}.cal-detail h2{font-size:24px;line-height:1.3;font-weight:600;overflow-wrap:anywhere;margin:12px 0}.cal-detail>p{font-size:12px;color:#627c8e;line-height:1.9}.cal-detail dl{margin:22px 0}.cal-detail dl>div{padding:10px 0;border-bottom:1px solid #dfe8ef}.cal-detail dt{font-size:10px;color:#687f90;margin-bottom:5px}.cal-detail dd{font-size:13px;color:#2b4b62;margin:0;line-height:1.6;overflow-wrap:anywhere}.cal-detail-actions{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;color:#2265a0}.cal-detail-actions a,.cal-detail-actions button{min-height:40px;display:inline-flex;align-items:center}.cal-detail-actions button{background:#fff;border:1px solid #cfdfe9;color:#2265a0;padding:9px 12px;border-radius:4px;cursor:pointer}
.cal-lifetime{background:#edf4f8;border:1px solid #d6e5ec;border-radius:7px;padding:16px;margin-top:20px;color:#2e516a}.cal-lifetime>span{font-size:11px}.cal-lifetime>strong{display:block;font-size:22px;font-weight:600;margin:9px 0 12px}.cal-lifetime progress{width:100%;height:6px;display:block;margin-bottom:12px;accent-color:#327eb5}.cal-lifetime>div{display:flex;gap:15px;justify-content:space-between;font-size:10px}.cal-lifetime b{display:block;margin-top:6px;font-size:13px}.cal-lifetime small{display:block;color:#5c768a;font-size:10px;line-height:1.8;margin-top:13px}.cal-lifetime p{font-size:12px}.cal-references{margin-top:24px;padding-top:24px;border-top:1px solid #d9e5ec}.cal-references h2{font-size:19px;color:#29485f;font-weight:600;margin:0 0 10px}.cal-references p{color:#698093;font-size:12px}.cal-references>div{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.cal-references button{display:flex;flex-direction:column;align-items:flex-start;gap:9px;text-align:left;padding:16px;background:#f7fafc;border:1px solid #dce6ed;border-radius:6px;color:#2a4f68;font:inherit;cursor:pointer}.cal-references button:hover{border-color:#679abe;background:#ecf4fa}.cal-references strong{font-size:13px}.cal-references span{font-size:11px;color:#6d8394}.cal-references small{font-size:10px}.cal-note{font-size:11px;color:#758998;line-height:1.9;margin-top:24px}#cal-undated h2{margin-bottom:14px}
#launch-calendar :is(button,a,input,select):focus-visible{outline:3px solid #2168b4;outline-offset:2px}
@media(min-width:1500px){.cal-layout{grid-template-columns:minmax(0,1fr) 370px}.cal-cell{min-height:138px}}
@media(max-width:1100px){.cal-layout{grid-template-columns:minmax(0,1fr)}.cal-detail dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}.cal-detail{margin-top:6px}.cal-references>div{grid-template-columns:repeat(3,minmax(0,1fr))}.o-overview{gap:20px}.o-summary{gap:18px}.o-summary strong{font-size:20px}.o-summary>div:nth-child(2) strong{font-size:13px}}
@media(max-width:700px){.o-overview{grid-template-columns:1fr;padding:30px 20px 25px;gap:25px}.o-copy h1{font-size:38px;margin:18px 0}.o-copy>p{font-size:14px}.o-summary{margin-top:24px;gap:30px}.o-summary strong{font-size:24px}.o-summary>div:nth-child(2) strong{font-size:14px}.o-actions .button{flex:1;text-align:center;justify-content:center;font-size:12px}.o-visual{aspect-ratio:1.4;max-height:330px}.o-visual-label{top:15px;left:17px;right:17px}.o-enter{left:17px;right:17px;bottom:40px;font-size:10px}.o-image-note{left:17px;bottom:16px;font-size:8px}.cal-heading{align-items:flex-start;gap:12px}.cal-heading h1{font-size:28px}.cal-heading p{font-size:12px}.cal-heading>a{font-size:11px;padding:10px;min-height:40px}.cal-heading .eyebrow{font-size:9px}.cal-toolbar{padding:10px;gap:8px}.cal-month-control{width:100%}.cal-month-control label{flex:1}.cal-month-control input{width:100%;min-width:0}.cal-toolbar>label:not(.cal-search){flex:1}.cal-toolbar select{width:100%;font-size:12px}.cal-search{flex-basis:100%;order:3}.cal-meta{font-size:10px;gap:10px}.cal-legend{font-size:10px;gap:9px}.cal-status{font-size:10px}.cal-cell{min-height:65px;padding:3px}.cal-day{font-size:12px;min-height:44px;padding:0;justify-content:center;gap:3px}.cal-day b{min-width:13px;height:16px;line-height:16px;font-size:8px}.cal-cell-events{display:none}.cal-weekdays{font-size:10px}.cal-agenda-heading h2{font-size:14px}.cal-agenda-heading button{font-size:11px}.cal-event{grid-template-columns:minmax(0,1fr) auto;gap:7px;padding:13px}.cal-event strong{grid-row:2;grid-column:1/-1}.cal-event-time{font-size:10px}.cal-event-state{grid-column:2}.cal-event small{grid-column:1/-1;grid-row:3}.cal-detail{padding:18px}.cal-detail h2{font-size:24px}.cal-references>div{grid-template-columns:repeat(2,minmax(0,1fr))}.cal-references button{padding:14px}.cal-detail dl{gap:0 16px}.cal-detail dd{font-size:12px}.cal-note{font-size:10px}}

.o-monitor-links{display:flex;justify-content:space-between;gap:20px;padding:0 0 18px;font-size:13px}
