.readonly-badge{color:var(--warm);border:1px solid #d4b98c55;border-radius:999px;padding:7px 12px;font-size:11px;letter-spacing:.08em}.readonly-login{max-width:620px;margin:min(18vh,150px) auto 0;padding:clamp(28px,6vw,64px);border-radius:24px}.readonly-login h1{font-family:Georgia,Songti SC,serif;font-size:clamp(36px,6vw,64px)}.readonly-login p{max-width:520px;color:var(--muted);line-height:1.9}.readonly-login small{display:block;margin-top:18px;color:var(--muted)}.readonly-code{display:grid;gap:8px;margin:24px 0 16px;color:var(--muted)}.readonly-code input{width:100%;min-height:48px;padding:0 14px;border:1px solid var(--line-color);border-radius:12px;background:rgba(var(--panel),.72);color:var(--text);font:inherit}.readonly-room{min-height:520px}.readonly-notice{position:sticky;bottom:calc(var(--nav-height, 80px) + env(safe-area-inset-bottom));padding:14px 18px;border:1px solid var(--line-color);border-radius:14px;background:rgba(var(--panel),.96);color:var(--muted);text-align:center;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.readonly-error{padding:14px 18px;border:1px solid #d4b98c66;border-radius:12px;color:var(--warm)}.readonly-chat{padding-bottom:28px}@media(max-width:740px){.readonly-login{margin-top:48px}.readonly-badge{font-size:9px;padding:6px 8px}.readonly-room{min-height:430px}.main-shell:has(.readonly-chat){padding-bottom:110px}}
