.mobile-reading-bar,#mobile-reading-more,.mobile-touch-hint,.mobile-options>summary{display:none}
.mobile-options{display:contents}.mobile-options>.playback{display:flex}
@media(max-width:1100px){
 body{overflow:hidden}#experience{height:100dvh;min-height:0;padding:0;grid-template-rows:48px 38px minmax(0,1fr) auto;overflow:hidden}
 header{padding-top:env(safe-area-inset-top,0px)}.intro{padding:7px 10px}.intro h1{font-size:20px}
 footer{display:none}.model-column{grid-row:3;min-height:0;height:auto;max-height:none;border:0;overflow:hidden}#stage{inset:0;z-index:1}
 .views{inset:auto 8px 12px auto;display:flex;width:auto;z-index:5;border:1px solid var(--line);background:#0d1217e8}
 .views button{flex:none;width:auto;min-width:54px;height:44px;min-height:44px;padding:6px 12px;font-size:12px}
 .view-tools{top:8px;bottom:auto;right:8px;left:auto;z-index:5;height:44px}.view-tools button{min-width:44px!important;min-height:44px!important}
 .mobile-touch-hint{display:block;position:absolute;bottom:62px;left:10px;right:10px;margin:0;text-align:center;font-size:11px;color:var(--muted);pointer-events:none;z-index:3}
 #motion-panel{grid-row:4;display:block;position:relative;z-index:8;padding:7px 10px calc(7px + env(safe-area-inset-bottom,0px));border-width:1px 0 0;background:var(--surface)}
 .time-transport{display:grid;grid-template-columns:48px minmax(0,1fr);grid-template-rows:16px 28px;column-gap:10px;margin-right:88px}
 #play-motion{grid-row:1/3;min-height:44px;min-width:44px;width:48px;padding:8px}#play-motion span{display:none}
 .time-transport .time-scale{display:none}.time-transport .motion-heading{grid-row:1;font-size:10px}.time-transport #time-slider{grid-row:2;height:28px}.motion-heading #motion-title{display:none}
 #information-toggle{position:absolute;left:8px;right:auto;bottom:calc(58px + env(safe-area-inset-bottom,0px));z-index:9;width:auto;height:44px;min-height:44px;padding:8px 14px;border:1px solid var(--line);background:var(--surface)}
 .mobile-options{display:block;position:static}.mobile-options>summary{display:flex;align-items:center;justify-content:center;position:absolute;right:8px;top:7px;width:80px;min-height:44px;border:1px solid var(--line);cursor:pointer;font-size:12px}
 .mobile-options>summary::after{content:'⌄';margin-left:6px}.mobile-options[open]>summary::after{content:'⌃'}
 .mobile-options:not([open])>.playback{display:none}.mobile-options[open]>.playback{display:grid;grid-template-columns:44px 1fr 1fr;gap:8px;margin:12px 0 0;max-height:40dvh;overflow:auto}
 .mobile-options .playback #rewind-motion{display:block;grid-column:1}.mobile-options .playback #previous-month{display:block;grid-column:2}.mobile-options .playback #next-month{display:block;grid-column:3}
 .mobile-options .playback .control-field{grid-column:1/-1;display:grid;grid-template-columns:80px 1fr;align-items:center}.mobile-options .control-field span{display:block;font-size:12px}.mobile-options .playback select{max-width:none;font-size:16px}
 .information-open .information,.information{position:absolute;top:auto!important;bottom:calc(var(--mobile-motion-height,58px) + 56px)!important;left:8px;right:8px;max-height:50dvh;padding:12px!important;z-index:10;border:1px solid var(--line);border-radius:12px;background:#131b23;box-shadow:0 8px 28px #0006;scrollbar-gutter:auto}
 #back-to-model{display:none}.mobile-reading-bar{display:flex;gap:8px;align-items:center;margin-bottom:4px}.mobile-reading-bar select{width:100%;min-width:0;font-size:13px;padding:6px;border:0}.mobile-reading-bar button{flex:0 0 44px;padding:0;font-size:24px}
 .information .readout-grid{display:block;border:0}.information .readout-grid article{display:none!important}.information .readout-grid article.mobile-selected:not([hidden]){display:block!important;border:0;padding:0!important;background:transparent;color:var(--paper);cursor:default}
 .information .readout-grid article.mobile-selected *{color:inherit!important}.information .mobile-selected>span{display:none!important}.information .readout-grid h3,.information .readout-grid [data-reading=moon] h3{font-size:22px;margin:0}.information .readout-grid p{font-size:13px;line-height:1.4}
 .information:not(.mobile-more) .reading-explanation,.information:not(.mobile-more) .cycle-details,.information:not(.mobile-more) .omission-info,.information:not(.mobile-more) .month-hover-info,.information:not(.mobile-more) .eclipse-hover-info{display:none}
 #mobile-reading-more{display:block;min-height:44px;font-size:13px;border:0;padding:8px 0;color:var(--signal)}
 .information .locate-trigger{pointer-events:none;min-height:32px}.locate-close{top:60px}
}
@media(max-width:1100px) and (max-height:520px){
 #experience{grid-template-rows:42px minmax(0,1fr) auto}.intro{display:none}.model-column{grid-row:2}#motion-panel{grid-row:3}
 .information-open .information,.information{left:auto;width:min(340px,46vw);max-height:calc(100dvh - 120px);bottom:calc(var(--mobile-motion-height,58px) + 8px)!important}
 .mobile-touch-hint{left:90px;right:auto;bottom:16px;font-size:10px}.views{right:100px;bottom:8px}
}

.mobile-touch-hint[hidden]{display:none}

@media(max-width:1100px){.mobile-more .cycle-details>summary{display:none}}

/* v064: one aligned touch dock; equal surfaces and target heights. */
@media(max-width:1100px){
 #information-toggle{bottom:calc(var(--mobile-motion-height,58px) + 12px);height:44px;min-height:44px;font-size:12px;padding:6px 12px;background:#0d1217e8}
 .views{bottom:12px;right:8px;border:0;background:#0d1217e8;gap:0}
 .views button{min-width:52px;padding:6px 10px;border:1px solid var(--line);border-left:0;font-size:12px}
 .views button:first-child{border-left:1px solid var(--line)}
 .locate-area{fill:#b2d4e5;fill-opacity:.13}.locate-cell{fill:#d5efff;fill-opacity:.55}
 .locate-mobile-related{fill-opacity:.27;stroke:none}
}
@media(max-width:1100px) and (max-height:520px){.views{right:8px;bottom:12px}}

/* The reading expands from the navigation surface, rather than stacking
   another sheet above a redundant row of controls. */
.mobile-explore-dock{display:none}
@media(max-width:1100px){
 .mobile-explore-dock{display:flex;align-items:center;position:absolute;z-index:10;left:8px;right:8px;bottom:calc(var(--mobile-motion-height,58px) + 3px);border:1px solid #cde7fa38;border-radius:16px;background:#14212ee8;box-shadow:inset 0 1px 0 #ffffff16,0 6px 20px #0003;overflow:hidden;isolation:isolate}
 .mobile-explore-dock #information-toggle{position:static;flex:1;min-width:0;width:auto;border:0;border-radius:0;background:transparent;height:44px;padding:6px 12px;text-align:left;font-size:12px}
 .mobile-explore-dock #information-toggle::after{content:'⌃';margin-left:8px;color:var(--signal)}
 .mobile-explore-dock .views{position:static;display:flex;flex:none;border:0;background:transparent;width:auto}
 .mobile-explore-dock .views button{border:0;border-left:1px solid #cde7fa20;min-width:52px;padding:6px 10px;background:transparent}
 .mobile-explore-dock .views button[aria-pressed=true]{background:#e6f0f21f;color:#fff;box-shadow:inset 0 -2px #c6e2ed}
 .information-open .mobile-explore-dock>#information-toggle,.information-open .mobile-explore-dock>.views{display:none}
 .mobile-explore-dock .information,.information-open .mobile-explore-dock .information{position:relative;top:auto!important;bottom:auto!important;left:auto;right:auto;width:100%;max-height:min(45dvh,340px);border:0;border-radius:0;padding:0 12px 8px!important;box-shadow:none;background:transparent}
 .mobile-explore-dock .mobile-reading-bar{height:44px;margin:0 -4px 6px;border-bottom:1px solid #cde7fa25}
 .mobile-explore-dock .mobile-reading-bar select{font-size:12px;height:44px;min-height:44px;padding:4px;background:transparent}
 .mobile-explore-dock #mobile-reading-close{font-size:20px;border:0;background:transparent}
 .mobile-explore-dock .information .readout-grid h3{font-size:20px;margin:0;padding-right:94px}
 .mobile-explore-dock .information:not(.mobile-more) .reading-subline{margin:2px 0 0;padding-right:94px;font-size:12px;line-height:1.35}
 .mobile-explore-dock .information:not(.mobile-more) #mobile-reading-more{position:absolute;right:12px;bottom:8px;padding:4px 0;font-size:12px}
 .mobile-explore-dock .information:not(.mobile-more) #cycle-readouts{min-height:64px}
 .mobile-explore-dock .information .moon-phase-icon{width:28px;height:28px}
 .information-open .mobile-explore-dock{animation:mobile-dock-reveal .22s cubic-bezier(.2,.8,.2,1)}
 .information-open .locate-close{display:none}
 .mobile-touch-hint{bottom:54px}
}
@supports ((backdrop-filter:blur(12px)) or (-webkit-backdrop-filter:blur(12px))){
 @media(max-width:1100px){.mobile-explore-dock{background:linear-gradient(135deg,#233342d9,#101b27e8);backdrop-filter:blur(12px) saturate(1.15);-webkit-backdrop-filter:blur(12px) saturate(1.15)}}
}
@keyframes mobile-dock-reveal{from{transform:translateY(10px);opacity:.7}to{transform:translateY(0);opacity:1}}
@media(prefers-reduced-motion:reduce){.information-open .mobile-explore-dock{animation:none}}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){.mobile-explore-dock{background:#14212e;backdrop-filter:none;-webkit-backdrop-filter:none}}

@media(max-width:1100px){.mobile-explore-dock #cycle-readouts{border-top:0}.mobile-explore-dock{left:max(8px,env(safe-area-inset-left));right:max(8px,env(safe-area-inset-right))}}

@media(max-width:480px){header .wordmark{width:88px}.source-links a{font-size:9px;max-width:70px;padding:4px;min-width:0}.header-right,.source-links{gap:3px}#language{padding:4px 6px;min-width:30px}#lab-link{max-width:60px}}
