.compass-offline-status{position:fixed;bottom:max(6px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);max-width:calc(100vw - 32px);width:max-content;z-index:9999;background:#061d35;color:#b8dece;border:1px solid #8fbfae;border-radius:5px;padding:4px 9px;font:12px/1.4 system-ui;pointer-events:none}
.compass-offline-options{font:14px/1.5 system-ui;color:#e8d4b4;background:#061d35;padding:8px 12px;margin:8px;border:1px solid #8fbfae;border-radius:5px}
.compass-offline-options button{font:inherit;min-height:44px;margin:4px;padding:4px 10px;cursor:pointer}
.compass-offline-options p{margin:4px 0}.compass-offline-options select{max-width:100%;min-height:44px;font:inherit}
.offline-fallback{margin:0;background:#061d35;color:#e8d4b4;font:18px/1.6 system-ui}.offline-fallback main{max-width:36rem;margin:10vh auto;padding:24px}.offline-fallback a{color:#b8dece}
.compass-image-retry{font:14px/1.4 system-ui;min-height:44px;max-width:100%;color:#061d35;background:#b8dece;border:1px solid currentColor;border-radius:4px;padding:8px}
[data-compass-art-unavailable]{display:none!important}
.mile-marker-mobile-instruction{display:none}
@media(max-width:600px){.mile-marker-page .theme-helper{ text-transform:none }.mile-marker-page .mile-marker-desktop-instruction{display:none}.mile-marker-page .mile-marker-mobile-instruction{display:inline;text-transform:none}}

.compass-downloads{box-sizing:border-box;width:min(30rem,calc(100vw - 24px));max-height:calc(100dvh - 32px);margin:auto;padding:18px;overflow:auto;overscroll-behavior:contain}
.compass-downloads::backdrop{background:rgba(0,12,25,.7)}
.compass-downloads h2{margin:0 0 8px;font:700 23px/1.3 system-ui;color:#b8dece}
.compass-downloads h3{margin:18px 0 6px;font:700 17px/1.4 system-ui;color:#e8d4b4}
.compass-downloads button{max-width:100%;white-space:normal}
.compass-offline-attention{margin:12px auto;padding:8px 12px;width:fit-content;max-width:calc(100% - 24px);box-sizing:border-box;font:14px/1.4 system-ui;color:#e8d4b4;background:#061d35;border:1px solid #8fbfae;border-radius:5px}
.compass-offline-attention button{font:inherit;min-height:44px;color:#061d35;background:#b8dece;border:0;border-radius:4px;padding:8px;cursor:pointer}
.compass-downloads [hidden],.compass-offline-attention[hidden]{display:none!important}
.compass-update-notice{position:fixed;right:12px;bottom:56px;z-index:10001;box-sizing:border-box;max-width:min(320px,calc(100vw - 24px));padding:8px 10px;border:1px solid #8fbfae;border-radius:5px;background:#061d35;color:#b8dece;font:12px/1.4 system-ui}
.compass-update-notice button{margin-left:8px;min-height:36px;padding:4px 8px;border:1px solid currentColor;border-radius:4px;background:transparent;color:inherit;font:inherit;cursor:pointer}
.compass-update-notice[hidden],.compass-update-notice [hidden]{display:none!important}
.compass-update-notice>div{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.compass-update-notice button{margin-left:0;min-height:44px}
.compass-install-guidance { position: fixed; z-index: 1100; bottom: max(16px, env(safe-area-inset-bottom)); right: 16px; width: min(420px, calc(100vw - 32px)); max-height: 50dvh; overflow: auto; box-sizing: border-box; padding: 16px; border: 2px solid #bca36b; background: #fff8eb; color: #0a3161; border-radius: 10px; box-shadow: 0 6px 22px #061a2c66; }
.compass-install-guidance p { margin: 0 0 12px; line-height: 1.4; }
.compass-install-guidance button { min-height: 44px; padding: 8px 16px; }
