:root{color-scheme:light dark;font-family:system-ui,sans-serif;background:#e5ede7;color:#122b20}
html,body{margin:0;height:100%;overscroll-behavior:none}
body{display:flex;flex-direction:column}
#root{display:flex;flex:1;min-height:0;width:100%;max-width:980px;margin:0 auto;background:#f3f6f3;box-shadow:0 0 64px #122b2010}
#web-status{box-sizing:border-box;width:100%;max-width:980px;margin:0 auto;padding:8px 16px max(8px,env(safe-area-inset-bottom));font-size:11px;line-height:1.4;background:#122b20;color:#d9eadc}
#install-app{display:block;margin-top:8px;width:100%;font-size:14px}#install-app[hidden]{display:none}
#update-notice{position:fixed;z-index:10000;left:16px;right:16px;bottom:24px;max-width:440px;margin:auto;padding:20px;border:1px solid #789684;border-radius:16px;background:#fff;color:#122b20;box-shadow:0 12px 48px #0005;line-height:1.5}
#update-notice[hidden]{display:none}
#update-notice p{margin:8px 0 16px}
button{font:inherit;min-height:48px;padding:10px 16px;border:1px solid #789684;border-radius:10px;cursor:pointer;background:#c8f573;color:#153016}
button+button{margin-left:8px;background:#fff}
button:focus-visible{outline:3px solid #35783e;outline-offset:3px}
@media(prefers-color-scheme:dark){:root{background:#07120c;color:#f1f8f2}#root{background:#0b1712}}
@media(display-mode:standalone){#web-status{display:none}}
