:root{--bg-primary: #0a0a0f;--bg-secondary: #12121a;--bg-tertiary: #1a1a2e;--bg-card: #16162a;--text-primary: #e4e4e7;--text-secondary: #a1a1a6;--accent: #5865f2;--accent-hover: #4752c4;--success: #2ecc71;--danger: #e74c3c;--warning: #f39c12;--border: #2a2a3e;--shadow: 0 4px 24px rgba(0, 0, 0, .3)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--bg-primary);color:var(--text-primary);min-height:100vh}a{color:var(--accent);text-decoration:none}.loading{display:flex;justify-content:center;align-items:center;height:100vh;font-size:1.2rem;color:var(--text-secondary)}.layout{display:flex;min-height:100vh}.sidebar{width:260px;background:var(--bg-secondary);border-right:1px solid var(--border);padding:24px 16px;display:flex;flex-direction:column}.sidebar-brand{font-size:1.3rem;font-weight:700;color:var(--accent);margin-bottom:32px;padding:0 8px}.sidebar-nav{list-style:none;display:flex;flex-direction:column;gap:4px}.sidebar-nav a,.sidebar-nav button{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:8px;color:var(--text-secondary);font-size:.9rem;transition:all .2s;background:none;border:none;cursor:pointer;width:100%;text-align:left;font-family:inherit}.sidebar-nav a:hover,.sidebar-nav button:hover,.sidebar-nav a.active{background:var(--bg-tertiary);color:var(--text-primary)}.sidebar-user{margin-top:auto;padding:12px;border-radius:8px;background:var(--bg-tertiary);display:flex;align-items:center;gap:10px}.sidebar-user img{width:36px;height:36px;border-radius:50%}.sidebar-user span{font-size:.85rem;font-weight:500}.main-content{flex:1;padding:32px;overflow-y:auto}.page-title{font-size:1.6rem;font-weight:700;margin-bottom:24px}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:24px;margin-bottom:16px;box-shadow:var(--shadow)}.card-title{font-size:1.1rem;font-weight:600;margin-bottom:16px}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.guild-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:20px;display:flex;align-items:center;gap:16px;cursor:pointer;transition:all .2s}.guild-card:hover{border-color:var(--accent);transform:translateY(-2px)}.guild-icon{width:48px;height:48px;border-radius:12px;background:var(--bg-tertiary);display:flex;align-items:center;justify-content:center;font-size:1.2rem;font-weight:600}.guild-icon img{width:100%;height:100%;border-radius:12px;object-fit:cover}.guild-info h3{font-size:.95rem;font-weight:600}.guild-info p{font-size:.8rem;color:var(--text-secondary)}.btn{padding:8px 16px;border-radius:8px;font-size:.85rem;font-weight:500;cursor:pointer;border:none;transition:all .2s;font-family:inherit}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{background:#c0392b}.btn-success{background:var(--success);color:#fff}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:.85rem;font-weight:500;color:var(--text-secondary);margin-bottom:6px}.form-group input,.form-group select{width:100%;padding:10px 12px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:8px;color:var(--text-primary);font-size:.9rem;font-family:inherit;outline:none;transition:border-color .2s}.form-group input:focus,.form-group select:focus{border-color:var(--accent)}.table-container{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{padding:10px 14px;text-align:left;border-bottom:1px solid var(--border);font-size:.85rem}th{color:var(--text-secondary);font-weight:500;font-size:.8rem;text-transform:uppercase}.tag{display:inline-block;padding:4px 10px;border-radius:6px;font-size:.75rem;font-weight:500}.tag-success{background:#2ecc7126;color:var(--success)}.tag-danger{background:#e74c3c26;color:var(--danger)}.tag-warning{background:#f39c1226;color:var(--warning)}.tag-info{background:#5865f226;color:var(--accent)}.tabs{display:flex;gap:4px;margin-bottom:24px;border-bottom:1px solid var(--border);padding-bottom:8px}.tab{padding:8px 16px;border-radius:8px 8px 0 0;font-size:.85rem;cursor:pointer;background:none;border:none;color:var(--text-secondary);font-family:inherit;font-weight:500;transition:all .2s}.tab.active{color:var(--accent);background:var(--bg-tertiary)}.tab:hover{color:var(--text-primary)}.login-page{display:flex;justify-content:center;align-items:center;height:100vh;background:var(--bg-primary)}.login-box{text-align:center;background:var(--bg-card);padding:48px;border-radius:16px;border:1px solid var(--border);box-shadow:var(--shadow)}.login-box h1{font-size:1.5rem;margin-bottom:8px;color:var(--accent)}.login-box p{color:var(--text-secondary);margin-bottom:24px}.discord-btn{display:inline-flex;align-items:center;gap:10px;padding:12px 32px;background:#5865f2;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:background .2s}.discord-btn:hover{background:#4752c4}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:20px}.stat-card .stat-value{font-size:1.8rem;font-weight:700;color:var(--accent)}.stat-card .stat-label{font-size:.8rem;color:var(--text-secondary);margin-top:4px}.list-item{display:flex;align-items:center;justify-content:space-between;padding:12px;border-radius:8px;background:var(--bg-tertiary);margin-bottom:8px}.list-item span{font-size:.9rem}.pagination{display:flex;gap:8px;justify-content:center;margin-top:16px}.pagination button{padding:6px 12px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);cursor:pointer;font-family:inherit}.pagination button.active{background:var(--accent);border-color:var(--accent)}.pagination button:disabled{opacity:.5;cursor:not-allowed}.search-input{width:100%;padding:10px 14px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:8px;color:var(--text-primary);font-size:.9rem;font-family:inherit;outline:none;transition:border-color .2s}.search-input:focus{border-color:var(--accent)}.sidebar-section{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);padding:16px 12px 4px;list-style:none}.member-cell{display:flex;align-items:center;gap:10px}.member-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;flex-shrink:0}.member-name{font-weight:500;font-size:.9rem;display:flex;align-items:center}.member-sub{font-size:.75rem;color:var(--text-secondary)}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px}.status-online{background:var(--success)}.status-idle{background:var(--warning)}.status-dnd{background:var(--danger)}.status-offline{background:#72767d}.role-tags{display:flex;flex-wrap:wrap;gap:4px}.role-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:12px;font-size:.72rem;border:1px solid var(--border);background:var(--bg-primary)}.role-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.roles-list{display:flex;flex-direction:column;gap:8px}.role-card{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;cursor:pointer;transition:border-color .2s}.role-card:hover{border-color:var(--accent)}.role-card-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px}.role-color-circle{width:16px;height:16px;border-radius:50%;flex-shrink:0}.role-card-name{font-weight:600;font-size:.95rem}.role-card-meta{font-size:.78rem;color:var(--text-secondary);margin-top:2px;display:flex;align-items:center;flex-wrap:wrap}.role-card-body{padding:12px 18px 16px;border-top:1px solid var(--border);margin-top:0}.role-card-info{font-size:.85rem;margin-bottom:6px}.role-card-info span:first-child{color:var(--text-secondary);margin-right:8px}.role-card-info code{background:var(--bg-tertiary);padding:2px 6px;border-radius:4px;font-size:.8rem}.permission-grid{display:flex;flex-wrap:wrap;gap:6px}.permission-badge{padding:3px 10px;border-radius:6px;font-size:.72rem;background:#5865f21a;color:var(--accent);border:1px solid rgba(88,101,242,.2)}.channel-hierarchy{display:flex;flex-direction:column;gap:12px}.channel-category-group{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;overflow:hidden}.channel-category-header{font-weight:600;font-size:.85rem;text-transform:uppercase;color:var(--text-secondary);padding:12px 16px;background:var(--bg-tertiary)}.channel-item{display:flex;align-items:center;gap:8px;padding:8px 16px 8px 28px;border-top:1px solid var(--border);font-size:.88rem}.channel-icon{flex-shrink:0;width:20px;text-align:center;color:var(--text-secondary)}.channel-name{font-weight:500}.channel-topic{font-size:.75rem;color:var(--text-secondary);margin-left:auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:250px}.channel-empty{padding:10px 28px;font-size:.8rem;color:var(--text-secondary);font-style:italic}.emoji-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:12px}.emoji-card{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:16px 12px;text-align:center;transition:border-color .2s}.emoji-card:hover{border-color:var(--accent)}.emoji-img{width:48px;height:48px;object-fit:contain}.emoji-name{font-size:.72rem;color:var(--text-secondary);margin-top:6px;word-break:break-all}.emoji-meta{font-size:.65rem;color:var(--text-secondary);margin-top:2px}.sticker-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.sticker-card{padding:16px}.sticker-img{width:80px;height:80px;object-fit:contain}.overview-banner{width:100%;height:180px;border-radius:12px;background-size:cover;background-position:center;margin-bottom:24px}.info-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px}.info-item{display:flex;flex-direction:column;gap:2px}.info-label{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;font-weight:600}.info-item code{background:var(--bg-tertiary);padding:2px 8px;border-radius:4px;font-size:.82rem;width:fit-content}.info-item span:not(.info-label){font-size:.88rem}.feature-grid{display:flex;flex-wrap:wrap;gap:8px}
