/* Only genuine read failures use a notice. Routine storage and updates stay quiet. */
.site-offline-notice{position:fixed;inset:auto 1rem 5rem;z-index:90;max-width:44rem;margin-inline:auto;padding:.8rem 1rem;border:1px solid currentColor;border-radius:.7rem;background:var(--brand-white,Canvas);color:var(--brand-ink,CanvasText);font:inherit;box-shadow:0 .2rem 1rem #0002}
.site-offline-notice[hidden]{display:none}
.site-offline-notice button,.site-offline-download-status,.site-offline-open{margin-inline:.5rem}
:root:has(.offline-recovery)[data-appearance=light]{color-scheme:light}
:root:has(.offline-recovery)[data-appearance=dark]{color-scheme:dark}
.offline-recovery{margin:0;background:var(--color-surface);color:var(--color-text);font-family:var(--type-body-font-family);font-size:var(--type-body-font-size);line-height:1.75}
.offline-recovery [hidden]{display:none!important}
.offline-recovery main{max-width:32rem;margin:20svh auto 0;padding:var(--space-5) max(var(--space-4),env(safe-area-inset-left),env(safe-area-inset-right))}
.offline-recovery-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);margin-block-start:var(--space-4)}
.offline-recovery :is(a,button){display:inline-flex;align-items:center;min-height:44px;color:var(--color-text);font:inherit}
.offline-recovery button{border:var(--stroke-hairline) solid var(--color-border-control);border-radius:var(--shape-control);background:var(--color-surface);padding:var(--space-2) var(--space-4);cursor:pointer}
.offline-recovery :is(a,button):focus-visible{outline:var(--stroke-focus) solid var(--color-focus);outline-offset:var(--space-1)}
.offline-recovery ul{padding-inline-start:var(--space-5)}
.offline-recovery li{overflow-wrap:anywhere;margin-block:var(--space-2)}
