/* Install help and release notices live outside the page render cycle. */
.sprig-install-dialog,.sprig-install-dialog *,#sprig-web-notices,#sprig-web-notices * {box-sizing:border-box}
.shell .sidebar {overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
.sidebar .pwa-sidebar-tools {display:flex;flex-direction:column;align-items:flex-start;gap:4px;margin:16px 0;padding:0 3px}
.sidebar .pwa-sidebar-tools>button {display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:44px;padding:9px 12px;border:1px solid #729276;border-radius:11px;background:#254b37;color:#f4c69f;font:700 12px/1.4 var(--sans,system-ui,sans-serif)}
.sidebar .pwa-sidebar-tools>button:hover {background:#345c42;border-color:#9ab18e}
.sidebar .pwa-sidebar-tools>a {padding:5px 0;color:#e0e8d8;font-size:11px;text-underline-offset:3px}
.sidebar .pwa-sidebar-tools>small {color:#c2d3bb;font-size:10px;line-height:1.5}
.footer [data-pwa-install] {padding:0;border:0;background:transparent;color:inherit;font:inherit;text-decoration:underline;text-underline-offset:3px}
.pwa-help-links {display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:19px}
.pwa-help-links>a {color:var(--ink-2);font-size:12px;text-underline-offset:3px}
.sprig-install-dialog {
  --web-surface:#faf9f2;--web-text:#253b31;--web-muted:#526750;--web-line:#d4dfcc;
  --web-soft:#e8eedf;--web-accent:#f4c69f;--web-accent-text:#503522;
  width:min(510px,calc(100% - 32px));max-height:calc(100dvh - 40px);margin:auto;
  padding:34px;border:1px solid var(--web-line);border-radius:24px;
  background:var(--web-surface);color:var(--web-text);box-shadow:0 20px 70px #102b2450;
  font-family:var(--sans,system-ui,sans-serif);font-size:15px;line-height:1.6;overflow:auto;
}
.sprig-install-dialog::backdrop {background:#122a21a8;backdrop-filter:blur(4px)}
.sprig-web-kicker {display:block;margin:10px 30px 15px 0;color:var(--web-muted);font-size:10px;letter-spacing:.11em;font-weight:800}
.sprig-install-dialog h2 {font:400 36px/1.12 var(--serif,Georgia,serif);letter-spacing:-.045em;color:var(--web-text);margin:0 20px 20px 0}
.sprig-install-dialog p {font-size:14px;line-height:1.65;color:var(--web-muted);margin:0 0 14px}
.sprig-install-dialog strong {color:var(--web-text)}
.sprig-web-close {position:absolute;top:16px;right:16px;display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid var(--web-line);border-radius:50%;background:var(--web-soft);color:var(--web-text);font-size:26px;line-height:1}
.sprig-install-storage {border:1px solid var(--web-line);border-radius:15px;background:var(--web-soft);padding:17px;margin:21px 0 15px}
.sprig-install-storage strong {display:block;font-size:13px;margin-bottom:5px}
.sprig-install-storage p {font-size:12px;margin:0}
.sprig-install-dialog .sprig-install-offline {font-size:12px}
.sprig-web-actions {display:flex;flex-wrap:wrap;gap:9px;margin-top:19px}
.sprig-web-actions button {min-height:44px;padding:10px 17px;border:1px solid var(--web-line);border-radius:11px;font:700 12px/1.4 var(--sans,system-ui,sans-serif);white-space:normal;transition:background .16s,border-color .16s}
.sprig-web-actions .sprig-web-primary {background:var(--web-accent);border-color:var(--web-accent);color:var(--web-accent-text)}
.sprig-web-actions .sprig-web-primary:hover {background:#f8d5b5;border-color:#f8d5b5}
.sprig-web-actions .sprig-web-secondary {background:var(--web-surface);color:var(--web-text)}
.sprig-web-actions .sprig-web-secondary:hover {background:var(--web-soft)}
.sprig-install-dialog .sprig-install-feedback {margin:14px 0 0;font-size:12px}
.sprig-install-feedback:empty,.sprig-update-feedback:empty {display:none}
#sprig-web-notices {--web-surface:#faf9f2;--web-text:#253b31;--web-muted:#526750;--web-line:#c5d4bd;--web-soft:#e8eedf;--web-accent:#f4c69f;--web-accent-text:#503522;position:fixed;right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));z-index:35;display:grid;gap:10px;width:min(360px,calc(100% - 36px));font-family:var(--sans,system-ui,sans-serif);pointer-events:none}
#sprig-web-notices>* {pointer-events:auto}
.sprig-update-note {background:var(--web-surface);border:1px solid var(--web-line);border-left:4px solid var(--web-accent);border-radius:16px;padding:18px;box-shadow:0 8px 35px #102b2428;color:var(--web-text)}
.sprig-update-note>strong {display:block;font:500 23px/1.2 var(--serif,Georgia,serif);letter-spacing:-.035em}
.sprig-update-note p {margin:9px 0 0;font-size:12px;line-height:1.6;color:var(--web-muted)}
.sprig-update-note .sprig-web-actions {margin-top:13px}
.sprig-offline-note {justify-self:end;max-width:100%;margin:0;padding:9px 13px;border-radius:12px;border:1px solid var(--web-line);background:var(--web-surface);color:var(--web-muted);font-size:12px;line-height:1.5;box-shadow:0 3px 18px #102b2415}
html[data-theme="dark"] :is(.sprig-install-dialog,#sprig-web-notices) {--web-surface:#263c30;--web-text:#edece0;--web-muted:#b1c1ac;--web-line:#4a6350;--web-soft:#304936;--web-accent:#efba91;--web-accent-text:#233a2b}
html[data-theme="dark"] .sprig-web-actions .sprig-web-primary:hover {background:#f4cdab;border-color:#f4cdab}
@media(max-width:700px) {#sprig-web-notices {bottom:calc(90px + env(safe-area-inset-bottom))}.sprig-install-dialog {padding:26px 23px}.sprig-install-dialog h2 {font-size:32px}.sprig-web-actions button {flex:1}}
@media(prefers-reduced-motion:reduce) {.sprig-web-actions button {transition:none}}
@media print {#sprig-web-notices,.sprig-install-dialog {display:none!important}}
