@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600&display=swap";:root{--bg-primary: #fdfdfd;--bg-secondary: #f5f5f5;--bg-input: #ffffff;--text-primary: #353535;--text-secondary: #7d7d7d;--text-muted: #9d9d9d;--accent: #e73b42;--accent-hover: #d12d34;--border: #e0e0e0;--error: #c0392b;--success: #5a8a5e;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .06);--shadow-md: 0 4px 12px rgba(0, 0, 0, .08);--radius: 8px}@media (prefers-color-scheme: dark){:root{--bg-primary: #231f1f;--bg-secondary: #2b2626;--bg-input: #2b2626;--text-primary: #d9d4d4;--text-secondary: #b9b4b4;--text-muted: #948f8f;--accent: #ff6b7a;--accent-hover: #ff8590;--border: #3b3636;--error: #ff6b6b;--success: #7a9e7e;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .2);--shadow-md: 0 4px 12px rgba(0, 0, 0, .25)}}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{font-family:Inter,"Source Sans 3",-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background-color:var(--bg-primary);color:var(--text-primary);line-height:1.7;-webkit-font-smoothing:antialiased}#root{min-height:100%;display:flex;flex-direction:column}input,button,textarea{font-family:inherit;font-size:inherit}input{background:var(--bg-input);border:1px solid var(--border);color:var(--text-primary);padding:.75rem 1rem;border-radius:var(--radius);width:100%;transition:border-color .2s,box-shadow .2s}input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #e73b421a}@media (prefers-color-scheme: dark){input:focus{box-shadow:0 0 0 3px #ff6b7a26}}input::placeholder{color:var(--text-muted)}button{background:var(--accent);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:var(--radius);cursor:pointer;font-weight:500;transition:background-color .2s,transform .2s}button:hover:not(:disabled){background:var(--accent-hover)}button:active:not(:disabled){transform:scale(.98)}button:disabled{opacity:.5;cursor:not-allowed}button.secondary{background:transparent;color:var(--text-secondary);border:1px solid var(--border)}button.secondary:hover:not(:disabled){background:var(--bg-secondary);color:var(--text-primary);border-color:var(--text-muted)}button.small{padding:.4rem .8rem;font-size:.85rem}.container{max-width:600px;margin:0 auto;padding:2rem;width:100%}.page{flex:1;display:flex;flex-direction:column}.home{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:2rem}.home-content{max-width:420px;width:100%}.home-intro{color:var(--text-secondary);margin-bottom:2rem;font-size:.95rem;line-height:1.8;white-space:pre-line}.home-form{display:flex;flex-direction:column;gap:1rem}.home-form label{display:block;color:var(--text-secondary);margin-bottom:.25rem;font-size:.85rem;font-weight:500}.home-warning{color:var(--text-muted);font-size:.8rem;font-style:italic;margin-top:.5rem}.error-message{color:var(--error);font-size:.9rem;margin-top:.5rem}.recent-rooms{margin-top:2rem;padding-top:2rem;border-top:1px solid var(--border)}.recent-rooms-title{font-size:.85rem;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.75rem}.recent-rooms-list{list-style:none;display:flex;flex-direction:column;gap:.5rem}.recent-room-item{display:flex;align-items:center;gap:.5rem}.recent-room-link{flex:1;display:flex;align-items:baseline;gap:.75rem;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius);padding:.6rem .85rem;cursor:pointer;text-align:left;color:var(--text-primary);transition:border-color .2s,box-shadow .2s}.recent-room-link:hover{border-color:var(--accent);box-shadow:var(--shadow-sm);background:var(--bg-secondary)}.recent-room-name{font-size:.9rem;font-weight:500}.recent-room-id{font-size:.75rem;color:var(--text-muted)}.recent-room-remove{background:transparent;border:none;color:var(--text-muted);font-size:1.1rem;padding:.25rem .4rem;cursor:pointer;border-radius:4px;line-height:1;transition:color .2s}.recent-room-remove:hover{color:var(--error);background:transparent}.room{display:flex;flex-direction:column;height:100vh;max-height:100vh;overflow:hidden}.room-header{padding:1rem 1.5rem;border-bottom:1px solid var(--border);background:var(--bg-secondary);box-shadow:var(--shadow-sm)}.room-back{color:var(--text-secondary);text-decoration:none;font-size:1.25rem;line-height:1;padding:.25rem;transition:color .2s}.room-back:hover{color:var(--accent)}.room-title{font-size:1.1rem;font-weight:600;margin-bottom:.25rem;color:var(--text-primary)}.room-code{font-size:.75rem;color:var(--text-muted);letter-spacing:.3px}.messages-container{flex:1;overflow-y:auto;padding:1.25rem;display:flex;flex-direction:column;gap:.75rem;max-width:720px;width:100%;margin:0 auto}.message{max-width:75%;padding:.75rem 1rem;border-radius:var(--radius);background:var(--bg-secondary);border:1px solid var(--border);word-break:break-word;transition:box-shadow .2s}.message.own{align-self:flex-end;background:var(--accent);border-color:var(--accent);color:#fff}.message-sender{font-size:.75rem;color:var(--text-muted);margin-bottom:.25rem;font-weight:500;display:flex;align-items:center;gap:.3rem}.message.own .message-sender{color:#ffffffb3}.message-text{font-size:.95rem;line-height:1.6}.message-time{font-size:.7rem;color:var(--text-muted);margin-top:.25rem;text-align:right}.message.own .message-time{color:#fff9}.message-error{color:var(--error);font-style:italic}.message-input-container{padding:1rem;border-top:1px solid var(--border);background:var(--bg-primary)}.message-input-form{display:flex;gap:.5rem;max-width:720px;margin:0 auto}.message-input-form input{flex:1}.trust-indicator{display:inline-flex;align-items:center;line-height:1}.trust-verified{color:var(--success)}.trust-new{color:var(--text-muted)}.trust-mismatch{color:var(--error)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;padding:1rem;z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal{background:var(--bg-secondary);padding:2rem;border-radius:var(--radius);max-width:400px;width:100%;border:1px solid var(--border);box-shadow:var(--shadow-md)}.modal h2{margin-bottom:1rem;font-size:1.1rem;font-weight:600}.modal p{color:var(--text-secondary);font-size:.9rem;margin-bottom:1rem}.modal form{display:flex;flex-direction:column;gap:1rem}.admin{padding:2rem;max-width:600px;margin:0 auto;width:100%}.admin h1{font-size:1.3rem;font-weight:600;margin-bottom:2rem}.admin-section{margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid var(--border)}.admin-section:last-child{border-bottom:none}.admin-section h2{font-size:1rem;font-weight:600;margin-bottom:1rem;color:var(--text-secondary)}.admin-form{display:flex;flex-direction:column;gap:1rem}.admin-form label{display:block;color:var(--text-secondary);margin-bottom:.25rem;font-size:.85rem;font-weight:500}.invite-kit{background:var(--bg-secondary);padding:1.5rem;border-radius:var(--radius);margin-top:1.5rem;border:1px solid var(--border)}.invite-kit h3{font-size:1rem;margin-bottom:1rem;color:var(--accent);font-weight:600}.invite-kit-item{margin-bottom:1rem}.invite-kit-item:last-child{margin-bottom:0}.invite-kit-label{font-size:.8rem;color:var(--text-muted);margin-bottom:.25rem;text-transform:uppercase;letter-spacing:.5px;font-weight:500}.invite-kit-value{display:flex;align-items:center;gap:.5rem;background:var(--bg-primary);padding:.75rem;border-radius:var(--radius);font-size:.9rem;word-break:break-all;border:1px solid var(--border)}.invite-kit-value code{flex:1}.invite-kit-warning{color:var(--error);font-size:.8rem;margin-top:1rem;font-style:italic}.connection-status{font-size:.75rem;padding:.25rem .5rem;border-radius:var(--radius);margin-left:auto;font-weight:500}.connection-status.connected{color:var(--success)}.connection-status.disconnected{color:var(--error)}.connection-status.connecting{color:var(--text-muted)}.nav-link{color:var(--accent);text-decoration:none;font-size:.85rem;font-weight:500;transition:color .2s}.nav-link:hover{color:var(--accent-hover)}@media (max-width: 480px){.container,.home{padding:1rem}.room-header{padding:.75rem 1rem}.messages-container{padding:.75rem}.message{max-width:90%}}
