/* Install page only; inherits the observatory's navigation and palette. */
.observatory-page .pwa-page :is(p,h1,h2,h3,a,strong,span,button){word-break:normal;overflow-wrap:break-word}
.pwa-page{gap:40px}.pwa-page [hidden]{display:none!important}.pwa-page .room-heading{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}.pwa-page .room-heading>img{object-position:68% center}.pwa-page .room-heading h1{font-size:clamp(27px,2.7vw,39px);text-wrap:balance}
.pwa-identity{display:flex;align-items:center;gap:16px;margin-top:26px}.pwa-identity img{flex:none;width:64px;height:64px;border-radius:14px;border:1px solid #b5967c66}.pwa-identity strong{display:block;font-size:16px;font-weight:500;letter-spacing:.05em}.pwa-identity span{display:block;color:var(--obs-muted);font-size:13px;margin-top:3px}
.pwa-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:24px}.pwa-page .pwa-button{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;min-height:50px;padding:12px 18px;background:#dfc5a2;color:#231b20;border:1px solid #dfc5a2;border-radius:0;font-size:14px;text-decoration:none;line-height:1.7}.pwa-page .pwa-button:hover{background:#efdabf;border-color:#efdabf}.pwa-page .pwa-button:disabled{opacity:.6;cursor:wait}.pwa-page .pwa-secondary{color:#ecd7d3;background:#211820a6;border-color:#936e7b}.pwa-page .pwa-secondary:hover{background:#422b36;border-color:#c294a1}.pwa-page .pwa-status{color:var(--obs-muted);font-size:13px;line-height:1.9;margin:14px 0 0;min-height:2em}
.pwa-caption{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px 24px;margin-top:-24px;padding-bottom:20px;border-bottom:1px solid var(--obs-line)}.pwa-caption .obs-mono{color:var(--obs-gold);font-size:10px}.pwa-caption p{margin:0;color:var(--obs-muted);font-size:13px}
.pwa-guide,.pwa-about{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.5fr);gap:56px}.pwa-guide{scroll-margin-top:24px}.pwa-section-heading h2,.pwa-destinations h2{font:500 clamp(24px,2.4vw,30px)/1.65 'Yu Mincho','Hiragino Mincho ProN',serif;margin:10px 0 16px;color:var(--obs-text)}.pwa-section-heading>p:not(.obs-mono){font-size:14px;color:var(--obs-muted);line-height:2}.pwa-section-heading .obs-mono,.pwa-destinations>header .obs-mono{color:var(--obs-gold);margin-top:0}.pwa-text-link,.pwa-help-link{display:inline-flex;align-items:center;gap:18px;min-height:44px;font-size:13px;text-underline-offset:5px;color:#dfc2ad!important}
.pwa-guide-body{min-width:0}.pwa-device-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-bottom:12px}.pwa-device-picker button{min-height:50px;padding:10px 8px;border:1px solid #66505f;border-radius:0;background:#1b171e;color:#d9c4cc;font-size:14px;line-height:1.6}.pwa-device-picker button:hover{border-color:#bd8e9d}.pwa-device-picker button[aria-pressed=true]{background:#dbb3bd;border-color:#dbb3bd;color:#281c25;box-shadow:inset 0 -3px #a27687}
.pwa-device-guide{padding:24px 28px 18px;border:1px solid #68505e;background:linear-gradient(130deg,#241c26,#19161c)}.pwa-device-guide+.pwa-device-guide{margin-top:18px}.pwa-guide-body:has(.pwa-device-picker:not([hidden])) .pwa-device-guide{margin-top:0}.pwa-guide-label{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;padding-bottom:18px;border-bottom:1px solid #59414f}.pwa-guide-label h3{margin:0;font-size:20px;font-weight:500}.pwa-guide-label>span{font:12px/1.8 Consolas,monospace;color:#d3b69e;margin-left:auto}
.pwa-steps{counter-reset:install-step;list-style:none;padding:0;margin:0}.pwa-steps>li{counter-increment:install-step;position:relative;padding:21px 0 21px 46px;border-bottom:1px solid #4e3948}.pwa-steps>li::before{content:'0' counter(install-step);position:absolute;top:22px;left:0;color:#d6b991;font:14px/1.8 Consolas,monospace}.pwa-steps strong{font-size:16px;font-weight:500;color:#f0e1e5}.pwa-steps p{margin:7px 0 0;color:#cdb7c4;font-size:14px;line-height:1.95}.pwa-device-note{font-size:13px;color:var(--obs-muted);line-height:1.9;margin:16px 0 2px}.pwa-help-link{font-size:12px;margin-top:8px}
.pwa-destinations{padding-block:32px;border-block:1px solid var(--obs-line)}.pwa-destinations h2{margin-bottom:24px}.pwa-destination-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.pwa-destination-grid>a{display:block;text-decoration:none;min-width:0;padding:20px 0 0;border-top:1px solid #715363}.pwa-destination-grid>a:hover h3{color:#efbfc4}.pwa-destination-grid .obs-mono{color:#bea0ae;font-size:10px}.pwa-destination-grid h3{display:flex;justify-content:space-between;gap:12px;font-weight:500;font-size:18px;margin:10px 0;line-height:1.7}.pwa-destination-grid h3 span{color:var(--obs-gold)}.pwa-destination-grid p{color:var(--obs-muted);font-size:14px;margin:0;line-height:1.9}
.pwa-faq{border-top:1px solid var(--obs-line)}.pwa-faq details{border-bottom:1px solid var(--obs-line)}.pwa-faq summary{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:68px;padding:16px 0;font-size:15px;cursor:pointer;list-style:none;color:#e1c6cc}.pwa-faq summary::-webkit-details-marker{display:none}.pwa-faq summary>span{color:var(--obs-gold);flex:none}.pwa-faq details[open] summary>span{transform:rotate(45deg)}.pwa-faq details>div{padding:0 0 20px;font-size:14px;color:var(--obs-muted);line-height:2}.pwa-faq details p{margin:0 0 10px}
@media(max-width:1000px){.pwa-guide,.pwa-about{grid-template-columns:minmax(180px,.65fr) minmax(0,1.5fr);gap:28px}.pwa-device-guide{padding:22px}.pwa-destination-grid{gap:22px}}
@media(max-width:760px){.pwa-page{gap:28px}.pwa-page .room-heading>div{padding:22px 20px}.pwa-page .room-heading>img{object-position:72% center;opacity:.25}.pwa-page .room-heading h1{font-size:28px}.pwa-page .room-description{font-size:15px}.pwa-identity{margin-top:22px;gap:14px}.pwa-identity img{width:56px;height:56px;border-radius:12px}.pwa-identity strong{font-size:15px}.pwa-actions{flex-direction:column;align-items:stretch;gap:10px;margin-top:20px}.pwa-caption{margin-top:-12px;padding-bottom:16px}.pwa-caption p{font-size:13px}.pwa-guide,.pwa-about{grid-template-columns:1fr;gap:16px}.pwa-desktop-break{display:none}.pwa-section-heading h2{margin:6px 0 10px;font-size:26px}.pwa-section-heading>p:not(.obs-mono){margin:6px 0}.pwa-device-picker{gap:5px}.pwa-device-picker button{font-size:13px;min-height:52px;padding:10px 4px}.pwa-device-guide{padding:20px 18px 14px}.pwa-guide-label h3{font-size:18px}.pwa-steps>li{padding:18px 0 18px 34px}.pwa-steps>li::before{top:19px;font-size:13px}.pwa-steps strong{font-size:16px}.pwa-steps p{font-size:14px}.pwa-destinations{padding-block:24px}.pwa-destinations h2{font-size:25px;margin-bottom:18px}.pwa-destination-grid{grid-template-columns:1fr;gap:20px}.pwa-destination-grid>a{padding-top:16px}.pwa-faq summary{font-size:15px;min-height:64px}}
@media(max-width:370px){.pwa-page .room-heading>div{padding:20px 16px}.pwa-page .room-heading h1{font-size:25px}.pwa-device-picker button{font-size:12px}.pwa-device-guide{padding:18px 14px 12px}}
