@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');
:root{--brand-color:#5865F2;--brand-color-hover:#4752c4;--background-primary:#36393f;--background-secondary:#2f3136;--background-tertiary:#202225;--header-primary:#ffffff;--text-normal:#dcddde;--text-muted:#b9bbbe;--text-link:#00a8fc;--danger:#d83c3e;--danger-hover:#b03032;--success:#43b581;--border-color:#202225;}
body,html{font-family:'Inter',-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;background-color:var(--background-primary);color:var(--text-normal);margin:0;height:100%;}
*{box-sizing:border-box;} a{color:var(--text-link);text-decoration:none;}
.login-container{display:flex;justify-content:center;align-items:center;width:100%;height:100%;}
.login-box{background-color:var(--background-secondary);padding:40px;border-radius:8px;text-align:center;border:1px solid var(--border-color);}
.login-box h1{margin-top:0;color:var(--header-primary);}
.login-button{display:inline-block;padding:12px 24px;margin-top:20px;background-color:var(--brand-color);color:white;border-radius:5px;font-weight:500;transition:background-color .2s;}
.dashboard-body{display:flex;overflow:hidden;height:100%;}
.sidebar{width:260px;background-color:var(--background-secondary);padding:15px;height:100vh;display:flex;flex-direction:column;flex-shrink:0;border-right:1px solid var(--border-color);}
.content{flex-grow:1;padding:30px;height:100vh;overflow-y:auto;}
.user-info{display:flex;align-items:center;margin-bottom:15px;color:var(--header-primary);font-weight:500;}
.user-info img{width:40px;margin-right:12px;border-radius:50%;}
.sidebar h2{margin:20px 0 10px;padding-bottom:10px;border-bottom:1px solid #42464d;font-size:.9em;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;}
.guild-list{flex-grow:1;overflow-y:auto;}
.guild-list a{display:flex;align-items:center;padding:8px 10px;color:var(--text-muted);border-radius:5px;margin-bottom:2px;transition:all .2s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.guild-list a:hover{background-color:#40444b;color:var(--text-normal);}
.guild-list a.active{background-color:var(--brand-color);color:white;font-weight:500;}
.guild-list img{width:32px;height:32px;margin-right:10px;border-radius:50%;}
.sidebar a.logout{padding:10px;background:var(--background-tertiary);border-radius:5px;color:var(--text-muted);text-align:center;flex-shrink:0;margin-top:10px;transition:background-color .2s;}
.sidebar a.logout:hover{background-color:var(--danger);color:white;}
.grid-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:25px;margin-top:10px;margin-bottom:25px;}
.card{background-color:var(--background-secondary);border-radius:8px;padding:25px;border:1px solid var(--border-color);}
.card h1,.card h2,.card h3{margin-top:0;margin-bottom:20px;color:var(--header-primary);border-bottom:1px solid #42464d;padding-bottom:15px;}
.card .card-header{display:flex;justify-content:space-between;align-items:center;}
.card .card-actions{display:flex;gap:10px;}
.form-group{margin-bottom:15px;} .form-group label{display:block;margin-bottom:8px;color:var(--text-muted);font-weight:500;}
input[type="text"],input[type="file"],select,textarea{width:100%;padding:12px;background-color:var(--background-tertiary);border:1px solid var(--border-color);border-radius:5px;color:var(--text-normal);font-size:1em;transition:border-color .2s;}
input:focus,select:focus,textarea:focus{border-color:var(--brand-color);outline:none;}
textarea{resize:vertical;min-height:80px;} small{color:#8e9297;font-size:0.85em;margin-top:5px;display:inline-block;}
button,.action-btn{background-color:var(--brand-color);color:white;border:none;padding:12px 18px;border-radius:5px;cursor:pointer;font-weight:500;font-size:1em;transition:background-color .2s;}
button:hover,.action-btn:hover{background-color:var(--brand-color-hover);}
button.danger{background-color:var(--danger);} button.danger:hover{background-color:var(--danger-hover);}
.small-btn,.action-btn{padding:6px 12px;font-size:.9em;}
.action-btn{background-color:var(--background-tertiary);border:1px solid #40444b;color:var(--text-normal);}
table{width:100%;border-collapse:collapse;margin-top:20px;} th,td{padding:15px;border-bottom:1px solid #4f545c;} th{text-align:left;color:var(--text-muted);font-size:.9em;text-transform:uppercase;}
.platform-tag{padding:4px 10px;border-radius:20px;font-weight:600;text-transform:capitalize;font-size:.8em;}
.platform-tag.twitch{background-color:#9146ff;color:#fff;} 
.platform-tag.youtube{background-color:#ff0000;color:#fff;} 
.platform-tag.kick{background-color:#53fc18;color:#000;}
.platform-tag.tiktok{background-color:#00f2ea;color:#000;}
.platform-tag.trovo{background-color:#21d464;color:#fff;}
td.mono{font-family:'Consolas','Menlo',monospace;color:var(--text-muted);}
.modal{display:none;position:fixed;z-index:1000;left:0;top:0;width:100%;height:100%;background-color:rgba(0,0,0,.7);align-items:center;justify-content:center;}
.modal-content{background-color:var(--background-secondary);padding:30px;border:1px solid var(--border-color);width:90%;max-width:500px;border-radius:8px;}
.close-btn{color:#aaa;float:right;font-size:28px;font-weight:700;cursor:pointer;line-height:1;}
.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px;}
.secondary-btn{background-color:#4f545c;} .secondary-btn:hover{background-color:#5a5f68;}
.error-card{background-color:var(--danger);padding:40px;border-radius:8px;color:white}