.user-avatar[data-v-c67fbf98]{flex-shrink:0;border-radius:50%;overflow:hidden;display:inline-flex;align-items:center;justify-content:center}.user-avatar-img[data-v-c67fbf98]{width:100%;height:100%;object-fit:cover}.user-avatar-initials[data-v-c67fbf98]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;text-transform:uppercase;-webkit-user-select:none;user-select:none}.navbar-user-link[data-v-32c89ced]{display:flex;align-items:center;gap:.5rem}.main-content[data-v-68ecc911]{padding-top:60px;min-height:calc(100vh - 60px)}:root{--bg-primary: #0a0a0a;--bg-secondary: #1a1a1a;--bg-tertiary: #252525;--bg-card: #1e1e1e;--text-primary: #ffffff;--text-secondary: #b0b0b0;--text-muted: #666666;--accent-blue: #87CEEB;--accent-dark: #1E3A5F;--border-color: #333333;--error: #ff6b6b;--success: #4ecdc4;--warning: #ffa500}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;background-color:var(--bg-primary);color:var(--text-primary);line-height:1.6;min-height:100vh}#app{min-height:100vh}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.3}h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.25rem}a{color:var(--accent-blue);text-decoration:none;transition:opacity .2s}a:hover{opacity:.8}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s;text-decoration:none}.btn-primary{background-color:var(--accent-blue);color:var(--bg-primary)}.btn-primary:hover{background-color:#a8ddf0}.btn-secondary{background-color:var(--accent-dark);color:var(--text-primary)}.btn-secondary:hover{background-color:#2a4f73}.btn-outline{background-color:transparent;border:1px solid var(--accent-blue);color:var(--accent-blue)}.btn-outline:hover{background-color:var(--accent-blue);color:var(--bg-primary)}.btn-danger{background-color:var(--error);color:#fff}.btn-danger:hover{background-color:#ff5252}.btn-small{padding:.5rem 1rem;font-size:.875rem}.btn:disabled{opacity:.5;cursor:not-allowed}.form-group{margin-bottom:1.25rem}.form-label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-secondary)}.form-input,.form-select,.form-textarea{width:100%;padding:.75rem 1rem;background-color:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:1rem;transition:border-color .2s}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--accent-blue)}.form-textarea{min-height:100px;resize:vertical}.form-checkbox{display:flex;align-items:center;gap:.5rem;cursor:pointer}.form-checkbox input{width:1.25rem;height:1.25rem;accent-color:var(--accent-blue)}.card{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 1rem}.page{padding:1.5rem 1rem}.page-header{margin-bottom:1.5rem}.page-title{color:var(--text-primary);margin-bottom:.5rem}.grid{display:grid;gap:1rem}.grid-2{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.navbar{position:fixed;top:0;left:0;right:0;height:60px;background-color:var(--bg-secondary);border-bottom:1px solid var(--border-color);z-index:1000}.navbar-content{display:flex;align-items:center;justify-content:space-between;height:100%;max-width:1200px;margin:0 auto;padding:0 1rem}.navbar-brand{font-size:1.25rem;font-weight:700;color:var(--accent-blue)}.navbar-nav{display:flex;align-items:center;gap:1rem}.navbar-link{color:var(--text-secondary);padding:.5rem;transition:color .2s}.navbar-link:hover,.navbar-link.active{color:var(--accent-blue)}.message{padding:1rem;margin-bottom:.75rem;border-radius:12px;background-color:var(--bg-tertiary)}.message-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.message-author{font-weight:600;color:var(--accent-blue)}.message-time{font-size:.75rem;color:var(--text-muted)}.message-content{color:var(--text-primary);word-break:break-word}.message-own{background-color:var(--accent-dark);margin-left:2rem}.message-private{border-left:3px solid var(--accent-blue)}.message-input-container{display:flex;gap:.75rem;padding:1rem;background-color:var(--bg-secondary);border-top:1px solid var(--border-color)}.message-input{flex:1;padding:.75rem 1rem;background-color:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:24px;color:var(--text-primary);font-size:1rem}.message-input:focus{outline:none;border-color:var(--accent-blue)}.member-list{list-style:none}.member-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid var(--border-color)}.member-item:last-child{border-bottom:none}.member-name{font-weight:500}.member-status{font-size:.75rem;padding:.25rem .5rem;border-radius:4px;text-transform:uppercase}.member-status.admin{background-color:var(--accent-dark);color:var(--accent-blue)}.member-status.pending{background-color:var(--warning);color:var(--bg-primary)}.group-card{cursor:pointer;transition:transform .2s,border-color .2s}.group-card:hover{transform:translateY(-2px);border-color:var(--accent-blue)}.group-name{font-size:1.125rem;font-weight:600;margin-bottom:.5rem}.group-station{color:var(--accent-blue);font-size:.875rem;margin-bottom:.5rem}.group-meta{display:flex;gap:1rem;color:var(--text-muted);font-size:.875rem}.group-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;text-transform:uppercase;font-weight:600}.group-badge.private{background-color:var(--accent-dark);color:var(--accent-blue)}.group-badge.public{background-color:var(--success);color:var(--bg-primary)}.station-select-container{margin-bottom:1.5rem}.station-tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.station-tab{padding:.5rem 1rem;background-color:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:20px;color:var(--text-secondary);cursor:pointer;transition:all .2s}.station-tab:hover,.station-tab.active{background-color:var(--accent-dark);border-color:var(--accent-blue);color:var(--accent-blue)}.alert{padding:1rem;border-radius:8px;margin-bottom:1rem}.alert-error{background-color:#ff6b6b1a;border:1px solid var(--error);color:var(--error)}.alert-success{background-color:#4ecdc41a;border:1px solid var(--success);color:var(--success)}.loading{display:flex;justify-content:center;align-items:center;padding:2rem}.spinner{width:40px;height:40px;border:3px solid var(--border-color);border-top-color:var(--accent-blue);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{text-align:center;padding:3rem 1rem;color:var(--text-muted)}.empty-state-icon{font-size:3rem;margin-bottom:1rem}.auth-page{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - 60px);padding:1rem}.auth-card{width:100%;max-width:400px}.auth-title{text-align:center;margin-bottom:1.5rem}.auth-footer{text-align:center;margin-top:1.5rem;color:var(--text-secondary)}.tabs{display:flex;border-bottom:1px solid var(--border-color);margin-bottom:1rem}.tab{padding:.75rem 1.5rem;color:var(--text-secondary);cursor:pointer;border-bottom:2px solid transparent;transition:all .2s}.tab:hover,.tab.active{color:var(--accent-blue);border-bottom-color:var(--accent-blue)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:2000;padding:1rem}.modal{background-color:var(--bg-card);border-radius:12px;width:100%;max-width:500px;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid var(--border-color)}.modal-body{padding:1.5rem}.modal-close{background:none;border:none;color:var(--text-secondary);font-size:1.5rem;cursor:pointer}@media (max-width: 768px){html{font-size:14px}.navbar-nav{gap:.5rem}.btn{padding:.625rem 1rem}.card{padding:1rem}.message-own{margin-left:1rem}}@media (max-width: 480px){.navbar-brand{font-size:1rem}.grid-2{grid-template-columns:1fr}}
