body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}:root{--auth-radius-xl:28px}.landing{background:#0f1117;background:var(--auth-bg);color:#f2f3f7;color:var(--auth-text-primary);direction:ltr;font-family:Inter,Segoe UI,Roboto,-apple-system,BlinkMacSystemFont,sans-serif;min-height:100vh;overflow-x:hidden;width:100%}.landing-nav{justify-content:space-between;padding:20px 48px;position:relative;z-index:10}.landing-logo,.landing-nav{align-items:center;display:flex}.landing-logo{font-size:18px;font-weight:800;gap:8px;letter-spacing:-.02em}.landing-logo-mark{align-items:center;background:#6c5ce7;background:var(--auth-accent);border-radius:9px;color:#fff;display:flex;font-size:15px;height:32px;justify-content:center;width:32px}.nav-menu-toggle{background:none;border:1px solid #262b38;border:1px solid var(--auth-border);border-radius:8px;border-radius:var(--auth-radius-sm);color:#f2f3f7;color:var(--auth-text-primary);cursor:pointer;display:none;font-size:16px;padding:8px 10px}.landing-nav-actions{align-items:center;display:flex;gap:20px}.nav-link{color:#9aa0ae;color:var(--auth-text-secondary);font-size:14px;font-weight:600;text-decoration:none;transition:color .18s ease;transition:color var(--auth-transition)}.nav-link:hover{color:#f2f3f7;color:var(--auth-text-primary)}.nav-cta{background:#6c5ce7;background:var(--auth-accent);border-radius:8px;border-radius:var(--auth-radius-sm);color:#fff;font-size:14px;font-weight:700;padding:10px 20px;text-decoration:none;transition:background .18s ease,transform .18s ease;transition:background var(--auth-transition),transform var(--auth-transition)}.nav-cta:hover{background:#7d6ef0;background:var(--auth-accent-hover)}.nav-cta:active{transform:scale(.97)}.hero{margin:0 auto;max-width:780px;padding:60px 24px 100px;position:relative;text-align:center}.hero-backdrop{background:radial-gradient(500px circle at 30% 20%,#6c5ce738,#0000 60%),radial-gradient(420px circle at 75% 30%,#2ecc7124,#0000 60%);height:500px;inset:-80px -200px auto;pointer-events:none;position:absolute;z-index:-1}.hero-eyebrow{background:#6c5ce726;background:var(--auth-accent-soft);border-radius:999px;color:#6c5ce7;color:var(--auth-accent);display:inline-block;font-size:12.5px;font-weight:700;letter-spacing:.02em;margin-bottom:20px;padding:6px 14px}.hero-title{font-size:44px;font-weight:800;letter-spacing:-.03em;line-height:1.15;margin:0 0 18px}.hero-highlight{color:#6c5ce7;color:var(--auth-accent)}.hero-subtitle{color:#9aa0ae;color:var(--auth-text-secondary);font-size:16px;line-height:1.6;margin:0 auto 32px;max-width:560px}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:56px}.hero-actions,.hero-btn{align-items:center;justify-content:center}.hero-btn{border-radius:8px;border-radius:var(--auth-radius-sm);display:inline-flex;font-size:15px;font-weight:700;padding:13px 26px;text-decoration:none;transition:background .18s ease,transform .18s ease,border-color .18s ease;transition:background var(--auth-transition),transform var(--auth-transition),border-color var(--auth-transition)}.hero-btn--primary{background:#6c5ce7;background:var(--auth-accent);color:#fff}.hero-btn--primary:hover{background:#7d6ef0;background:var(--auth-accent-hover)}.hero-btn--ghost{background:#0000;border:1px solid #262b38;border:1px solid var(--auth-border);color:#f2f3f7;color:var(--auth-text-primary)}.hero-btn--ghost:hover{border-color:#6c5ce7;border-color:var(--auth-accent);color:#6c5ce7;color:var(--auth-accent)}.hero-btn:active{transform:scale(.97)}.hero-mock{background:#171a23;background:var(--auth-surface);border:1px solid #262b38;border:1px solid var(--auth-border);border-radius:20px;border-radius:var(--auth-radius-lg);box-shadow:0 8px 24px #00000059;box-shadow:var(--auth-shadow);margin:0 auto;max-width:420px;overflow:hidden;text-align:left}.hero-mock-header{align-items:center;border-bottom:1px solid #262b38;border-bottom:1px solid var(--auth-border);display:flex;gap:6px;padding:12px 16px}.hero-mock-dot{background:#262b38;background:var(--auth-border);border-radius:50%;height:8px;width:8px}.hero-mock-title{color:#f2f3f7;color:var(--auth-text-primary);font-size:13px;font-weight:700;margin-left:8px}.hero-mock-live{color:#e74c3c;color:var(--auth-danger);font-size:10.5px;font-weight:700;letter-spacing:.03em;margin-left:auto}.hero-mock-body{padding:16px}.hero-mock-avatars{display:flex;margin-bottom:12px}.hero-mock-avatar{align-items:center;background:#6c5ce726;background:var(--auth-accent-soft);border:2px solid #171a23;border:2px solid var(--auth-surface);border-radius:50%;color:#6c5ce7;color:var(--auth-accent);display:flex;font-size:12px;font-weight:700;height:30px;justify-content:center;margin-left:-8px;width:30px}.hero-mock-avatar:first-child{margin-left:0}.hero-mock-avatar--more{background:#262b38;background:var(--auth-border)}.hero-mock-avatar--more,.hero-mock-text{color:#9aa0ae;color:var(--auth-text-secondary)}.hero-mock-text{font-size:13.5px;line-height:1.5;margin:0}.features{margin:0 auto;max-width:1080px;padding:20px 24px 80px;text-align:center}.section-title{font-size:28px;font-weight:800;letter-spacing:-.02em;margin:0 0 10px}.section-subtitle{color:#9aa0ae;color:var(--auth-text-secondary);font-size:14.5px;margin:0 0 40px}.features-grid{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));text-align:left}.feature-card{background:#171a23;background:var(--auth-surface);border:1px solid #262b38;border:1px solid var(--auth-border);border-radius:20px;border-radius:var(--auth-radius-lg);padding:24px;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;transition:transform var(--auth-transition),border-color var(--auth-transition),box-shadow var(--auth-transition)}.feature-card:hover{border-color:#6c5ce7;border-color:var(--auth-accent);box-shadow:0 8px 24px #00000059;box-shadow:var(--auth-shadow);transform:translateY(-3px)}.feature-icon{display:inline-block;font-size:26px;margin-bottom:14px}.feature-title{font-size:16px;font-weight:700;margin:0 0 6px}.feature-text{color:#9aa0ae;color:var(--auth-text-secondary);font-size:13.5px;line-height:1.6;margin:0}.how-it-works{margin:0 auto;max-width:1080px;padding:20px 24px 90px;text-align:center}.steps-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-top:36px;text-align:left}.step-card{padding:8px 4px;position:relative}.step-number{background:#6c5ce726;background:var(--auth-accent-soft);border-radius:999px;color:#6c5ce7;color:var(--auth-accent);display:inline-block;font-size:13px;font-weight:800;margin-bottom:14px;padding:4px 10px}.step-title{font-size:16px;font-weight:700;margin:0 0 6px}.step-text{color:#9aa0ae;color:var(--auth-text-secondary);font-size:13.5px;line-height:1.6;margin:0}.final-cta{margin:0 auto;max-width:640px;padding:60px 24px 90px;text-align:center}.final-cta-title{font-size:26px;font-weight:800;letter-spacing:-.02em;margin:0 0 10px}.final-cta-text{font-size:14.5px;margin:0 0 28px}.final-cta-text,.landing-footer{color:#9aa0ae;color:var(--auth-text-secondary)}.landing-footer{border-top:1px solid #262b38;border-top:1px solid var(--auth-border);font-size:12.5px;padding:24px;text-align:center}@media (max-width:720px){.landing-nav{padding:16px 20px}.nav-menu-toggle{display:inline-flex}.landing-nav-actions{align-items:stretch;background:#171a23;background:var(--auth-surface);border:1px solid #262b38;border:1px solid var(--auth-border);border-radius:14px;border-radius:var(--auth-radius-md);box-shadow:0 8px 24px #00000059;box-shadow:var(--auth-shadow);display:none;flex-direction:column;gap:12px;left:20px;padding:16px;position:absolute;right:20px;top:62px}.landing-nav-actions--open{display:flex}.nav-cta{text-align:center}.hero-title{font-size:32px}.hero{padding:40px 20px 70px}}:root{--auth-danger-soft:#e74c3c1f;--auth-radius-lg:22px;--auth-shadow:0 20px 50px #00000073}.auth-container{align-items:center;background:#0f1117;background:var(--auth-bg);direction:ltr;display:flex;font-family:Inter,Segoe UI,Roboto,-apple-system,BlinkMacSystemFont,sans-serif;justify-content:center;min-height:100vh;overflow:hidden;padding:24px;position:relative;width:100%}.auth-backdrop{background:radial-gradient(600px circle at 15% 20%,#6c5ce72e,#0000 60%),radial-gradient(500px circle at 85% 80%,#2ecc711f,#0000 60%);inset:0;pointer-events:none;position:absolute}.auth-card{animation:auth-fade-in .35s ease;background:#171a23;background:var(--auth-surface);border:1px solid #262b38;border:1px solid var(--auth-border);border-radius:22px;border-radius:var(--auth-radius-lg);box-shadow:0 20px 50px #00000073;box-shadow:var(--auth-shadow);max-width:400px;padding:36px 32px;position:relative;text-align:center;width:100%}@keyframes auth-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.auth-logo{align-items:center;background:#6c5ce7;background:var(--auth-accent);border-radius:50%;color:#fff;display:flex;font-size:20px;height:46px;justify-content:center;margin:0 auto 16px;width:46px}.auth-title{color:#f2f3f7;color:var(--auth-text-primary);font-size:24px;font-weight:700;letter-spacing:-.02em;margin:0}.auth-subtitle{color:#9aa0ae;color:var(--auth-text-secondary);font-size:13.5px;margin:8px 0 24px}.auth-error{background:#e74c3c1f;background:var(--auth-danger-soft);border-radius:8px;border-radius:var(--auth-radius-sm);color:#e74c3c;color:var(--auth-danger);font-size:13px;margin-bottom:18px;padding:10px 14px;text-align:left}.input-group{margin-bottom:16px;text-align:left}.input-group label{color:#9aa0ae;color:var(--auth-text-secondary);display:block;font-size:12.5px;font-weight:600;margin-bottom:6px}.input-group input{background:#0f1117;background:var(--auth-bg);border:1px solid #262b38;border:1px solid var(--auth-border);border-radius:8px;border-radius:var(--auth-radius-sm);color:#f2f3f7;color:var(--auth-text-primary);font-size:14px;outline:none;padding:12px 14px;transition:border-color .18s ease,box-shadow .18s ease;transition:border-color var(--auth-transition),box-shadow var(--auth-transition);width:100%}.input-group input::placeholder{color:#565c6b}.input-group input:focus{border-color:#6c5ce7;border-color:var(--auth-accent);box-shadow:0 0 0 3px #6c5ce726;box-shadow:0 0 0 3px var(--auth-accent-soft)}.password-field{align-items:center;display:flex;position:relative}.password-field input{padding-right:56px}.toggle-visibility{background:none;border:none;color:#6c5ce7;color:var(--auth-accent);cursor:pointer;font-size:12px;font-weight:600;padding:4px 6px;position:absolute;right:10px}.toggle-visibility:hover{color:#7d6ef0;color:var(--auth-accent-hover)}.forgot-password-row{display:flex;justify-content:flex-end;margin:-6px 0 18px}.forgot-password-row .auth-switch-link{font-size:12.5px}.auth-button{align-items:center;background:#6c5ce7;background:var(--auth-accent);border:none;border-radius:8px;border-radius:var(--auth-radius-sm);color:#fff;cursor:pointer;display:flex;font-size:15px;font-weight:700;justify-content:center;margin-top:6px;min-height:46px;padding:13px;transition:background .18s ease,transform .18s ease,opacity .18s ease;transition:background var(--auth-transition),transform var(--auth-transition),opacity var(--auth-transition);width:100%}.auth-button:hover:not(:disabled){background:#7d6ef0;background:var(--auth-accent-hover)}.auth-button:active:not(:disabled){transform:scale(.98)}.auth-button:disabled{cursor:not-allowed;opacity:.7}.spinner{animation:auth-spin .7s linear infinite;border:2.5px solid #ffffff59;border-radius:50%;border-top-color:#fff;height:18px;width:18px}@keyframes auth-spin{to{transform:rotate(1turn)}}.auth-switch-text{color:#9aa0ae;color:var(--auth-text-secondary);font-size:13.5px;margin:22px 0 0}.auth-switch-link{color:#6c5ce7;color:var(--auth-accent);font-weight:600;text-decoration:none}.auth-switch-link:hover{color:#7d6ef0;color:var(--auth-accent-hover);text-decoration:underline}@media (max-width:460px){.auth-card{padding:28px 22px}}:root{--auth-bg:#0f1117;--auth-surface:#171a23;--auth-surface-hover:#1e222d;--auth-border:#262b38;--auth-text-primary:#f2f3f7;--auth-text-secondary:#9aa0ae;--auth-accent:#6c5ce7;--auth-accent-hover:#7d6ef0;--auth-accent-soft:#6c5ce726;--auth-success:#2ecc71;--auth-warning:#f1c40f;--auth-danger:#e74c3c;--auth-radius-sm:8px;--auth-radius-md:14px;--auth-radius-lg:20px;--auth-shadow:0 8px 24px #00000059;--auth-transition:0.18s ease}*{box-sizing:border-box}.dashboard-screen{background:#0f1117;background:var(--auth-bg);color:#f2f3f7;color:var(--auth-text-primary);direction:ltr;font-family:Inter,Segoe UI,Roboto,-apple-system,BlinkMacSystemFont,sans-serif;min-height:100vh;padding:24px 32px 60px;width:100%}.dashboard-header{align-items:center;display:flex;flex-wrap:wrap;gap:24px;justify-content:space-between;margin-bottom:28px}.profile-summary{align-items:center;background:none;border:none;border-radius:14px;border-radius:var(--auth-radius-md);cursor:pointer;display:flex;gap:12px;padding:6px;transition:background .18s ease;transition:background var(--auth-transition)}.profile-summary:hover{background:#1e222d;background:var(--auth-surface-hover)}.avatar{border-radius:50%;flex-shrink:0;height:46px;position:relative;width:46px}.avatar img{object-fit:cover}.avatar img,.avatar-fallback{border-radius:50%;height:100%;width:100%}.avatar-fallback{align-items:center;background:#6c5ce7;background:var(--auth-accent);color:#fff;display:flex;font-size:18px;font-weight:600;justify-content:center}.status-dot{border:2px solid #0f1117;border:2px solid var(--auth-bg);border-radius:50%;bottom:0;height:12px;position:absolute;right:0;width:12px}.status-dot--online{background:#2ecc71;background:var(--auth-success)}.status-dot--away{background:#f1c40f;background:var(--auth-warning)}.status-dot--offline{background:#9aa0ae;background:var(--auth-text-secondary)}.profile-text{align-items:flex-start;display:flex;flex-direction:column;text-align:left}.profile-name{color:#f2f3f7;color:var(--auth-text-primary);font-size:14px;font-weight:600}.profile-status{color:#9aa0ae;color:var(--auth-text-secondary);font-size:12px;text-transform:capitalize}.dashboard-title{flex:1 1;min-width:200px;text-align:center}.dashboard-title h1{font-size:24px;font-weight:700;letter-spacing:-.02em;margin:0}.dashboard-title p{color:#9aa0ae;color:var(--auth-text-secondary);font-size:13px;margin:4px 0 0}.create-room-btn{font-size:14px;min-height:0;padding:10px 18px;width:auto}.search-bar{align-items:center;background:#171a23;background:var(--auth-surface);border:1px solid #262b38;border:1px solid var(--auth-border);border-radius:14px;border-radius:var(--auth-radius-md);display:flex;gap:10px;margin:0 auto 20px;max-width:480px;padding:10px 16px}.search-icon{font-size:14px;opacity:.6}.search-bar input{background:none;border:none;color:#f2f3f7;color:var(--auth-text-primary);flex:1 1;font-size:14px;outline:none}.search-bar input::placeholder{color:#565c6b}.category-tabs{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:24px;overflow-x:auto;padding-bottom:8px}.category-tab{align-items:center;background:#171a23;background:var(--auth-surface);border:1px solid #262b38;border:1px solid var(--auth-border);border-radius:999px;color:#9aa0ae;color:var(--auth-text-secondary);cursor:pointer;display:flex;flex-shrink:0;font-size:13px;font-weight:500;gap:6px;padding:8px 16px;transition:all .18s ease;transition:all var(--auth-transition)}.category-tab:hover{color:#f2f3f7;color:var(--auth-text-primary)}.category-tab--active,.category-tab:hover{border-color:#6c5ce7;border-color:var(--auth-accent)}.category-tab--active{background:#6c5ce7;background:var(--auth-accent);color:#fff}.category-icon{font-size:14px}.room-grid{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.room-card{background:#171a23;background:var(--auth-surface);border:1px solid #262b38;border:1px solid var(--auth-border);border-radius:20px;border-radius:var(--auth-radius-lg);display:flex;flex-direction:column;gap:12px;padding:18px;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;transition:transform var(--auth-transition),border-color var(--auth-transition),box-shadow var(--auth-transition)}.room-card:hover{border-color:#6c5ce7;border-color:var(--auth-accent);box-shadow:0 8px 24px #00000059;box-shadow:var(--auth-shadow);transform:translateY(-3px)}.room-card-header{align-items:center;display:flex;justify-content:space-between}.room-category-badge{align-items:center;background:#ffffff0a;border-radius:999px;color:#9aa0ae;color:var(--auth-text-secondary);display:inline-flex;font-size:12px;font-weight:600;gap:6px;padding:4px 10px}.live-badge{color:#e74c3c;color:var(--auth-danger);font-size:11px;font-weight:700;letter-spacing:.03em}.room-name{color:#f2f3f7;color:var(--auth-text-primary);font-size:17px;font-weight:700;margin:0}.room-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#9aa0ae;color:var(--auth-text-secondary);display:-webkit-box;font-size:13px;line-height:1.5;margin:0;overflow:hidden}.room-card-footer{justify-content:space-between;margin-top:auto;padding-top:8px}.member-avatars,.room-card-footer{align-items:center;display:flex}.member-avatar{background:#6c5ce726;background:var(--auth-accent-soft);border:2px solid #171a23;border:2px solid var(--auth-surface);color:#6c5ce7;color:var(--auth-accent);font-size:12px;height:30px;margin-left:-8px;overflow:hidden;width:30px}.member-avatar:first-child{margin-left:0}.member-avatar img{height:100%;object-fit:cover;width:100%}.member-avatar--more{background:#262b38;background:var(--auth-border);color:#9aa0ae;color:var(--auth-text-secondary)}.join-btn{background:#6c5ce726;background:var(--auth-accent-soft);border:none;border-radius:8px;border-radius:var(--auth-radius-sm);color:#6c5ce7;color:var(--auth-accent);cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:background .18s ease;transition:background var(--auth-transition)}.join-btn:hover{background:#6c5ce747}.empty-state{color:#9aa0ae;color:var(--auth-text-secondary);grid-column:1/-1;padding:60px 20px;text-align:center}.empty-icon{display:block;font-size:40px;margin-bottom:12px}.empty-state h3{color:#f2f3f7;color:var(--auth-text-primary);font-size:18px;margin:0 0 6px}.empty-state p{font-size:14px;margin:0}.modal-overlay{align-items:center;background:#0009;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:100}.modal{background:#171a23;background:var(--auth-surface);border:1px solid #262b38;border:1px solid var(--auth-border);border-radius:20px;border-radius:var(--auth-radius-lg);box-shadow:0 8px 24px #00000059;box-shadow:var(--auth-shadow);max-width:420px;padding:28px;width:100%}.modal h2{font-size:19px;font-weight:700;margin:0 0 18px}.field-label{color:#9aa0ae;color:var(--auth-text-secondary);display:block;font-size:13px;font-weight:600;margin:14px 0 6px}.modal input[type=text],.modal select{background:#0f1117;background:var(--auth-bg);border:1px solid #262b38;border:1px solid var(--auth-border);border-radius:8px;border-radius:var(--auth-radius-sm);color:#f2f3f7;color:var(--auth-text-primary);font-size:14px;outline:none;padding:10px 12px;transition:border-color .18s ease;transition:border-color var(--auth-transition);width:100%}.modal input[type=text]:focus,.modal select:focus{border-color:#6c5ce7;border-color:var(--auth-accent)}.checkbox-field{align-items:center;color:#9aa0ae;color:var(--auth-text-secondary);cursor:pointer;display:flex;font-size:13px;gap:8px;margin-top:16px}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:24px}.btn-ghost{background:#0000;border:none;border-radius:8px;border-radius:var(--auth-radius-sm);color:#9aa0ae;color:var(--auth-text-secondary);cursor:pointer;font-size:14px;font-weight:600;padding:10px 18px;transition:background .18s ease;transition:background var(--auth-transition)}.btn-ghost:hover{background:#1e222d;background:var(--auth-surface-hover)}@media (max-width:640px){.dashboard-screen{padding:16px}.dashboard-header{align-items:stretch;flex-direction:column;text-align:center}.create-room-btn,.profile-summary{align-self:center}.room-grid{grid-template-columns:1fr}}.logout-button{align-items:center;background:#ef4444;border:none;border-radius:12px;box-shadow:0 8px 20px #ef444440;color:#fff;cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:10px;padding:12px 22px;transition:.25s ease}.logout-button:hover{background:#dc2626;transform:translateY(-2px)}.logout-button:active{transform:scale(.96)}.logout-icon{font-size:18px}.room-screen{background:var(--auth-bg);color:var(--auth-text-primary);direction:ltr;display:flex;flex-direction:column;font-family:Inter,Segoe UI,Roboto,-apple-system,BlinkMacSystemFont,sans-serif;height:100vh;overflow:hidden;width:100%}.room-header{background:var(--auth-surface);border-bottom:1px solid var(--auth-border);flex-shrink:0;gap:16px;justify-content:space-between;padding:16px 24px}.back-button,.room-header{align-items:center;display:flex}.back-button{background:none;border:1px solid var(--auth-border);border-radius:var(--auth-radius-sm);color:var(--auth-text-secondary);cursor:pointer;font-size:13px;font-weight:600;gap:6px;padding:8px 14px;transition:all var(--auth-transition)}.back-button:hover{border-color:var(--auth-accent);color:var(--auth-text-primary)}.back-icon{font-size:15px}.room-header-info{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:4px;min-width:0}.room-header-name{font-size:18px;font-weight:700;letter-spacing:-.01em;margin:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.room-header .room-category-badge{align-items:center;background:#ffffff0a;border-radius:999px;color:var(--auth-text-secondary);display:inline-flex;font-size:12px;font-weight:600;gap:6px;padding:4px 10px}.members-toggle{align-items:center;background:var(--auth-accent-soft);border:none;border-radius:var(--auth-radius-sm);color:var(--auth-accent);cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:6px;padding:8px 14px;transition:background var(--auth-transition)}.members-toggle:hover{background:#6c5ce747}.room-body{display:flex;flex:1 1;min-height:0}.chat-panel{min-width:0}.chat-panel,.messages-list{display:flex;flex:1 1;flex-direction:column}.messages-list{gap:14px;overflow-y:auto;padding:24px}.chat-empty-state{color:var(--auth-text-secondary);margin:auto;text-align:center}.chat-empty-state .empty-icon{display:block;font-size:40px;margin-bottom:12px}.chat-empty-state h3{color:var(--auth-text-primary);font-size:18px;margin:0 0 6px}.chat-empty-state p{font-size:14px;margin:0}.system-message{align-self:center;background:#ffffff0a;border-radius:999px;color:var(--auth-text-secondary);font-size:12px;padding:4px 12px}.message-row{align-items:flex-end;display:flex;gap:10px;max-width:70%}.message-row--own{align-self:flex-end;flex-direction:row-reverse}.message-avatar{align-items:center;background:var(--auth-accent-soft);border-radius:50%;color:var(--auth-accent);display:flex;flex-shrink:0;font-size:13px;font-weight:700;height:32px;justify-content:center;width:32px}.message-bubble{background:var(--auth-surface);border:1px solid var(--auth-border);border-radius:var(--auth-radius-md);min-width:0;padding:10px 14px}.message-row--own .message-bubble{background:var(--auth-accent);border-color:var(--auth-accent)}.message-sender{color:var(--auth-accent);display:block;font-size:12px;font-weight:700;margin-bottom:2px}.message-text{color:var(--auth-text-primary);font-size:14px;line-height:1.5;margin:0;word-break:break-word}.message-row--own .message-text{color:#fff}.message-time{color:var(--auth-text-secondary);display:block;font-size:10px;margin-top:4px;text-align:right}.message-row--own .message-time{color:#ffffffb3}.message-input-bar{align-items:flex-end;background:var(--auth-surface);border-top:1px solid var(--auth-border);display:flex;flex-shrink:0;gap:10px;padding:16px 24px}.message-input-bar textarea{background:var(--auth-bg);border:1px solid var(--auth-border);border-radius:var(--auth-radius-md);color:var(--auth-text-primary);flex:1 1;font-family:inherit;font-size:14px;max-height:120px;outline:none;padding:10px 14px;resize:none;transition:border-color var(--auth-transition)}.message-input-bar textarea:focus{border-color:var(--auth-accent)}.message-input-bar textarea::placeholder{color:#565c6b}.send-btn{align-items:center;background:var(--auth-accent);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:16px;height:42px;justify-content:center;transition:background var(--auth-transition),opacity var(--auth-transition);width:42px}.send-btn:hover:not(:disabled){background:var(--auth-accent-hover)}.send-btn:disabled{cursor:not-allowed;opacity:.4}.members-panel{background:var(--auth-surface);border-left:1px solid var(--auth-border);flex-shrink:0;overflow-y:auto;padding:20px 16px;width:240px}.members-panel-title{color:var(--auth-text-secondary);font-size:14px;font-weight:700;margin:0 0 16px}.member-item,.members-list{gap:10px}.member-item-avatar{align-items:center;background:var(--auth-accent-soft);border-radius:50%;color:var(--auth-accent);display:flex;flex-shrink:0;font-size:12px;font-weight:700;height:30px;justify-content:center;width:30px}.member-item-name{color:var(--auth-text-primary);font-size:13px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.members-header{align-items:center;border-bottom:1px solid #ffffff14;display:flex;gap:10px;margin-bottom:10px;padding:4px 2px 14px}.members-header h3{font-size:15px;letter-spacing:.5px;margin:0;opacity:.7;text-transform:uppercase}.members-count{background:#ffffff14;border-radius:999px;font-size:12px;font-weight:700;padding:2px 9px}.members-list{display:flex;flex-direction:column;gap:4px;list-style:none;margin:0;padding:0}.member-item{align-items:center;border-radius:12px;display:flex;gap:11px;padding:8px 10px;transition:background .18s ease}.member-item:hover{background:#ffffff0f}.member-avatar{align-items:center;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:14px;font-weight:700;height:34px;justify-content:center;position:relative;width:34px}.member-dot{background:#35d07f;border:2px solid #0f1420;border-radius:50%;bottom:-1px;height:10px;position:absolute;right:-1px;width:10px}.member-name{flex:1 1;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-you{background:#ffffff1a;border-radius:999px;font-size:10px;font-weight:700;letter-spacing:.5px;opacity:.75;padding:2px 7px;text-transform:uppercase}@media (max-width:768px){.room-header-name{font-size:15px}.message-row{max-width:85%}.members-panel{bottom:0;box-shadow:var(--auth-shadow);position:fixed;right:0;top:0;transform:translateX(100%);transition:transform var(--auth-transition);z-index:50}.members-panel--open{transform:translateX(0)}}
/*# sourceMappingURL=main.3d8ae6df.css.map*/