*{box-sizing:border-box}
:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#183c32;background:#f6f5ee;font-synthesis:none;font-size:22px}
body{margin:0}
main{max-width:560px;margin:auto;padding:24px 18px calc(24px + env(safe-area-inset-bottom))}
h1{font-size:clamp(36px,10vw,48px);line-height:1.12;margin:0 0 28px;letter-spacing:-1px}
.actions{display:grid;gap:20px}
.action{width:100%;min-height:150px;display:flex;align-items:center;justify-content:center;border:3px solid #183c32;border-radius:18px;padding:24px 16px;text-align:center;text-decoration:none;font:inherit;font-size:clamp(30px,8vw,38px);line-height:1.2;font-weight:750;cursor:pointer}
.primary{background:#183c32;color:white}
.secondary{background:#dfebbc;color:#183c32}
.action[aria-disabled=true]{background:#e9e9e1;color:#4b554e;border-color:#72796f;cursor:default}
.action:disabled{cursor:wait}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:4px solid #b25a22;outline-offset:4px}
.saved{font-size:24px;line-height:1.4;margin:24px 0}
#message{font-size:24px;font-weight:650;line-height:1.4;padding:16px;border:2px solid #183c32;border-radius:12px}
#message:empty{display:none}
#message.error{color:#982f1b;border-color:#982f1b}
#offline{font-size:22px;line-height:1.5;color:#785013}
.install{display:block;width:100%;min-height:64px;margin:24px 0 8px;padding:16px;border:2px solid #183c32;border-radius:12px;color:#183c32;background:transparent;font:inherit;font-weight:650;cursor:pointer}
.install[hidden]{display:none}
details{border-bottom:1px solid #b9c4b4;font-size:22px;line-height:1.5}
summary{padding:20px 0;cursor:pointer;font-weight:650}
details div{padding-bottom:8px;overflow-wrap:anywhere}
footer{font-size:20px;line-height:1.5;text-align:center;margin-top:28px}
footer a{color:inherit}
@media(min-width:700px){main{padding-top:40px}}

[hidden]{display:none!important}
dialog{width:calc(100% - 28px);max-width:520px;max-height:90dvh;overflow:auto;padding:24px;border:3px solid #183c32;border-radius:18px;color:#183c32;background:#f6f5ee;font-size:24px;line-height:1.4}
dialog::backdrop{background:#0009}
dialog h2{font-size:28px;line-height:1.2;margin:0 0 20px}
dialog ol{padding-left:32px;margin:24px 0}
dialog li{padding-left:6px;margin:0 0 24px}
.chrome-link{text-align:center;text-decoration:none}
.native-install{background:#183c32;color:white}

.invite-qr{display:block;width:100%;max-width:320px;height:auto;margin:0 auto;background:white}
.invite-hint{margin:16px 0;text-align:center;font-size:22px}
#invite-status{margin:16px 0;font-size:22px}
#invite-status:empty{display:none}
#invite-link{display:block;width:100%;margin-top:8px;padding:12px;font:inherit;color:#183c32;background:white;border:2px solid #183c32;border-radius:8px}
