:root{color:#172033;background:#f5f7fb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:#1d4ed8}.app-header{align-items:center;background:#ffffffeb;border-bottom:1px solid #dbe2ee;display:flex;justify-content:space-between;padding:14px max(20px,calc((100vw - 900px)/2));position:sticky;top:0;z-index:10}.brand{color:#172033;font-size:18px;font-weight:750;text-decoration:none}.header-actions{align-items:center;display:flex;gap:12px}.install-button{background:transparent;border:0;color:#1d4ed8;cursor:pointer;font-size:13px;padding:4px}.online-state{color:#15803d;font-size:13px}.online-state.offline{color:#b45309}.page{margin:0 auto;max-width:940px;padding:28px 20px 48px}.page-stack,.stack{display:grid;gap:16px}.panel,.message-card{background:#fff;border:1px solid #dbe2ee;border-radius:16px;padding:20px}.narrow-panel{margin:8vh auto 0;max-width:560px}.hero-panel,.section-heading,.link-actions,.message-actions{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}h1,h2,p{margin-top:0}h1{font-size:clamp(26px,4vw,34px);margin-bottom:8px}h2{font-size:20px;margin-bottom:8px}.eyebrow{color:#2563eb;font-size:13px;font-weight:750;letter-spacing:.08em;margin-bottom:8px;text-transform:uppercase}.muted,.room-card span,.empty-state{color:#64748b}label{display:grid;gap:8px}input,textarea{border:1px solid #b9c5d6;border-radius:10px;color:#172033;min-height:44px;padding:11px 12px;resize:vertical;width:100%}input:focus,textarea:focus,button:focus-visible,a:focus-visible{outline:3px solid rgba(37,99,235,.35);outline-offset:2px}.button{align-items:center;background:#2563eb;border:1px solid #2563eb;border-radius:10px;color:#fff;cursor:pointer;display:inline-flex;justify-content:center;min-height:44px;padding:9px 14px;text-decoration:none;transition:background-color .18s ease,border-color .18s ease}.button:hover{background:#1d4ed8;border-color:#1d4ed8}.button:disabled{cursor:not-allowed;opacity:.55}.button-secondary{background:#fff;border-color:#b9c5d6;color:#334155}.button-secondary:hover{background:#f1f5f9;border-color:#94a3b8}.button-danger{background:#b91c1c;border-color:#b91c1c}.button-danger:hover{background:#991b1b;border-color:#991b1b}.room-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-top:16px}.room-card{border:1px solid #dbe2ee;border-radius:12px;color:#172033;display:grid;gap:6px;min-height:84px;padding:14px;text-decoration:none;transition:border-color .18s ease,background-color .18s ease}.room-card:hover{background:#f8fafc;border-color:#94a3b8}.room-card-link{color:#172033;display:grid;gap:6px;text-decoration:none}.room-card-actions{display:flex;flex-wrap:wrap;gap:12px}.room-card-actions button{background:transparent;border:0;color:#1d4ed8;cursor:pointer;font-size:13px;padding:0}.status{border-radius:10px;margin:12px 0 0;padding:10px 12px}.status-neutral{background:#eff6ff;color:#1d4ed8}.status-error{background:#fef2f2;color:#b91c1c}.status-success{background:#f0fdf4;color:#15803d}pre{margin:0;overflow-wrap:anywhere;white-space:pre-wrap}.message-actions{justify-content:flex-start;margin-top:16px}.message-meta{color:#64748b;font-size:13px;margin:14px 0 0}.copy-control{align-items:center;display:inline-flex;flex-wrap:wrap;gap:8px}.copy-feedback{color:#475569;font-size:13px}.claimed-text{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;margin:16px 0;padding:14px}.back-link{display:inline-block;margin-bottom:18px}.danger-zone{border-color:#fecaca}.dialog-backdrop{align-items:center;background:#0f172a8c;display:flex;top:0;right:0;bottom:0;left:0;justify-content:center;padding:20px;position:fixed;z-index:20}.dialog{background:#fff;border-radius:16px;max-width:340px;padding:20px;text-align:center;width:100%}.qr-image{display:block;height:260px;margin:12px auto 16px;width:260px}@media (max-width: 640px){.page{padding:18px 14px 36px}.panel,.message-card{border-radius:12px;padding:16px}.section-heading{align-items:stretch;display:grid}.link-actions .button{flex:1}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
