/* XCSTRIKE.com — Dark Theme */
*{margin:0;padding:0;box-sizing:border-box}
@font-face{font-family:'Outfit';font-display:swap;src:local('Outfit')}
@font-face{font-family:'JetBrains Mono';font-display:swap;src:local('JetBrains Mono')}
:root{
    --bg0:#0a0a0c;
    --bg1:#0f0f12;
    --bg2:#151518;
    --bg3:#1a1a1e;
    --bg4:#222226;
    --border:#252529;
    --border2:#303035;
    --text:#ececef;
    --text2:#a8a8ad;
    --text3:#90909a;
    --muted:#94949c;
    /* Primary — muted indigo */
    --accent:#6574cd;
    --accent2:#7c8ae8;
    --accent-dark:#505c9e;
    --accent-deep:#454fa0;
    --ac:var(--accent);
    --ac05:rgba(101,116,205,.05);
    --ac10:rgba(101,116,205,.10);
    --ac15:rgba(101,116,205,.15);
    --ac18:rgba(101,116,205,.18);
    --ac40:rgba(101,116,205,.35);
    /* Semantic — one green, one yellow, one red */
    --green:#5cb88a;
    --green-bg:rgba(92,184,138,.10);
    --green-border:rgba(92,184,138,.22);
    --red:#d97979;
    --red-bg:rgba(217,121,121,.10);
    --red-border:rgba(217,121,121,.22);
    --yellow:#c9a962;
    --yellow-bg:rgba(201,169,98,.10);
    --yellow-border:rgba(201,169,98,.22);
    --info:#6d8ec9;
    --info-bg:rgba(109,142,201,.10);
    --rank-gold:#6574cd;
    --rank-silver:#505c9e;
    --rank-bronze:transparent;
    /* Scan verdicts — alias semantic colors */
    --status-clean:var(--green);
    --status-clean-bg:var(--green-bg);
    --status-clean-border:var(--green-border);
    --status-warn:var(--yellow);
    --status-warn-bg:var(--yellow-bg);
    --status-warn-border:var(--yellow-border);
    --status-cheat:var(--red);
    --status-cheat-bg:var(--red-bg);
    --status-cheat-border:var(--red-border);
    --mono:'JetBrains Mono',ui-monospace,monospace;
}

html{font-size:14px;height:100%;-webkit-text-size-adjust:100%}
body{font-family:'Outfit',system-ui,-apple-system,sans-serif;background:var(--bg0);color:var(--text);line-height:1.5;min-height:100%;display:flex;flex-direction:column;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-feature-settings:'kern' 1;background-image:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.015'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}
main{flex:1}

/* Global Scrollbar Styling */
::-webkit-scrollbar{width:8px;height:8px}
::-webkit-scrollbar-track{background:var(--bg0);border-radius:4px}
::-webkit-scrollbar-thumb{background:var(--bg3);border-radius:4px;border:2px solid var(--bg0)}
::-webkit-scrollbar-thumb:hover{background:var(--bg4)}
::-webkit-scrollbar-corner{background:var(--bg0)}
*{scrollbar-width:thin;scrollbar-color:var(--bg3) var(--bg0)}

a{color:var(--accent);text-decoration:none}
a:hover{color:var(--accent2)}
code{font-family:Consolas,monospace;background:var(--bg2);padding:3px 7px;border-radius:4px;font-size:.9em;color:var(--accent)}

.wrap{max-width:1320px;margin:0 auto;padding:0 16px}
main .wrap{padding-top:20px;padding-bottom:40px}

/* BREADCRUMB */
.breadcrumb{font-size:.8rem;color:var(--muted);margin-bottom:14px;display:flex;align-items:center;gap:0;flex-wrap:wrap}
.breadcrumb a{color:var(--muted);transition:color .12s}
.breadcrumb a:hover{color:var(--accent)}
.breadcrumb .sep{margin:0 7px;color:var(--muted);font-size:.65rem;opacity:.5}
.breadcrumb .current{color:var(--text2)}

/* HEADER */
header{background:var(--bg1);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:1000;backdrop-filter:blur(10px);background:rgba(15,15,18,.95)}
.header-inner{
    --header-h:52px;
    --nav-y-pad:8px;
    display:flex;align-items:stretch;height:var(--header-h);gap:12px;
}
.header-left{display:flex;align-items:stretch;gap:0;flex-shrink:0}
.logo{
    display:flex;align-items:center;gap:5px;
    height:var(--header-h);
    padding:6px 0;
    font-weight:700;font-size:1.1rem;color:var(--text);flex-shrink:0;
}
.logo:hover{color:var(--text)}
.logo.active{color:var(--accent)}
.logo-mark{
    display:flex;
    align-items:center;
    flex-shrink:0;
    line-height:0;
}
.logo-mark img{
    height:30px;
    width:auto;
    max-height:30px;
    object-fit:contain;
    display:block;
    mix-blend-mode:lighten;
}
.logo-text{display:inline-flex;align-items:baseline;letter-spacing:-.02em}
.logo-cs{color:var(--text);font-weight:700}
.logo-trike{color:var(--accent);font-weight:700}

nav{display:flex;align-items:center;gap:2px;margin-left:16px}
nav a{color:var(--text2);padding:var(--nav-y-pad) 12px;border-radius:5px;font-size:.9rem;white-space:nowrap}
nav a:hover{color:var(--text);background:var(--bg3)}
nav a.active{color:var(--accent);background:rgba(101,116,205,.1)}
nav a.download-link{color:var(--green)}
nav a.download-link:hover{background:rgba(92,184,138,.1)}

nav .nav-tools-dd{display:inline-flex}
nav .nav-tools-trigger{
    display:inline-flex;align-items:center;gap:4px;
    color:var(--text2);padding:var(--nav-y-pad) 12px;border-radius:5px;font-size:.9rem;
    white-space:nowrap;background:none;border:none;cursor:pointer;font-family:inherit;
}
nav .nav-tools-trigger:hover,
nav .nav-tools-dd.open .nav-tools-trigger{color:var(--text);background:var(--bg3)}
nav .nav-tools-trigger.active{color:var(--accent);background:rgba(101,116,205,.1)}
.nav-tools-menu{left:0;right:auto;min-width:200px}
.nav-tools-menu a{display:flex;align-items:center;gap:8px}
.nav-tools-trigger svg{color:var(--accent)}
/* Tools menu — sidebar icon colors */
.nav-tools-menu a[href*="amxx"] svg{color:#c9a962!important}
.nav-tools-menu a[href*="sourcemod"] svg{color:#58b58e!important}
.nav-tools-menu a[href*="cssharp"] svg{color:#a87df2!important}

nav a.nav-add-server{display:inline-flex;align-items:center;gap:5px;margin-left:2px}
nav a.nav-add-server svg{flex-shrink:0;color:var(--accent)}
nav a.nav-add-server:hover svg{color:var(--accent)}
nav a.nav-add-server:hover{background:var(--ac10);color:var(--text)}
nav a.nav-add-server.active{color:var(--accent);background:var(--ac15)}
.user-area--guest .btn-add-server-icon svg{color:var(--accent)}
.user-area--guest .btn-add-server-icon:hover{border-color:var(--ac15);background:var(--ac10)}
.btn-add-server svg{color:var(--accent)}

.user-area{display:flex;align-items:center;gap:10px;margin-left:auto;flex-shrink:0}
.user-area--guest .btn-add-server-icon{display:none}

.header-icon-btn{position:relative;display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--bg3);border:1px solid var(--border);border-radius:8px;color:var(--text);cursor:pointer;padding:0;font:inherit;line-height:1;text-decoration:none}
.header-icon-btn:hover{background:var(--bg4);color:var(--text);border-color:var(--border2)}
.header-icon{font-size:1rem}
.header-badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 5px;background:var(--red);color:#fff;font-size:.7rem;font-weight:700;border-radius:9px;display:flex;align-items:center;justify-content:center;line-height:1;animation:badge-pulse 2s infinite}
@keyframes badge-pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.1)}}

.btn-add-server{background:var(--bg3);color:var(--text);padding:7px 14px;border-radius:8px;font-size:.82rem;font-weight:600;border:1px solid var(--border);display:inline-flex;align-items:center;gap:5px;transition:all .15s;text-decoration:none;white-space:nowrap}
.btn-add-server:hover{color:var(--accent);background:var(--ac10);border-color:var(--ac15)}

.dropdown{position:relative}
.dropdown-btn{display:flex;align-items:center;gap:6px;background:var(--bg3);border:1px solid var(--border);padding:5px 10px;border-radius:6px;color:var(--text);cursor:pointer;font-size:.9rem}
.dropdown-btn:hover{background:var(--bg4)}
.dropdown-menu{position:absolute;top:calc(100% + 4px);right:0;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s;z-index:9999}
.dropdown-menu-inner{background:var(--bg2);border:1px solid var(--border);border-radius:8px;min-width:170px;padding:6px;box-shadow:0 10px 30px rgba(0,0,0,.5)}
.dropdown.open .dropdown-menu{opacity:1;visibility:visible;pointer-events:auto}
.dropdown-menu a{display:block;padding:9px 12px;color:var(--text2);font-size:.9rem;border-radius:5px}
.dropdown-menu a:hover{background:var(--bg3);color:var(--text)}
.dropdown-menu hr{border:none;border-top:1px solid var(--border);margin:6px 0}

/* User dropdown menu */
.user-dd-menu{min-width:196px;max-width:220px;padding:4px}
.user-dd-menu a.user-dd-link{display:flex;align-items:center;gap:8px;padding:7px 10px;font-size:.82rem;font-weight:600;color:var(--text2);border-radius:6px;text-decoration:none;white-space:nowrap;line-height:1.2}
.user-dd-menu a.user-dd-link:hover{background:var(--bg3);color:var(--text)}
.user-dd-menu a.user-dd-link svg{flex-shrink:0;opacity:.9}
.user-dd-menu a.user-dd-link--muted{color:var(--muted);font-weight:600}
.user-dd-hr{margin:4px 0;border:none;border-top:1px solid var(--border)}
.user-dd-section{padding:2px 0 4px;margin-top:2px;border-top:1px solid var(--border)}
.user-dd-section-label{padding:7px 10px 3px;font-size:.58rem;font-weight:700;text-transform:uppercase;letter-spacing:.45px;color:var(--muted);line-height:1}
.user-dd-menu a.user-dd-panel-item{display:flex;align-items:center;gap:6px;padding:5px 10px;font-size:.76rem;font-weight:600;color:var(--text2);border-radius:6px;text-decoration:none;line-height:1.2;min-height:28px}
.user-dd-menu a.user-dd-panel-item:hover{background:var(--bg3);color:var(--text)}
.user-dd-menu a.user-dd-panel-item.active{background:var(--ac10);color:var(--text)}
.user-dd-menu a.user-dd-panel-item svg{flex-shrink:0;opacity:.85}
.user-dd-panel-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:118px}
.user-dd-panel-role{flex-shrink:0;font-size:.52rem;font-weight:700;text-transform:uppercase;letter-spacing:.2px;padding:2px 5px;border-radius:4px;background:var(--bg3);color:var(--muted);line-height:1.3}
.user-dd-menu a.user-dd-panel-item.active .user-dd-panel-role{background:rgba(101,116,205,.12);color:var(--ac)}

/* BUTTONS */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:9px 16px;font-size:.9rem;font-weight:500;border:none;border-radius:6px;cursor:pointer;min-height:44px;font-family:inherit;text-decoration:none}
.btn-p{background:#505c9e;color:#fff}
.btn-p:hover{background:var(--accent);color:#fff}
.btn-s{background:var(--bg3);color:var(--text);border:1px solid var(--border)}
.btn-s:hover{background:var(--bg4);color:var(--text)}
.btn-g{background:#16a34a;color:#fff;min-height:44px;font-size:.88rem}
.btn-g:hover{background:#15803d;color:#fff}
.btn-sm{padding:6px 12px;font-size:.85rem}

/* FORMS */
.form-g{margin-bottom:14px}
.form-g label{display:block;font-size:.85rem;color:var(--text2);margin-bottom:5px}
.form-g input,.form-g select,.form-g textarea{width:100%;background:var(--bg1);border:1px solid var(--border);padding:10px 12px;border-radius:6px;color:var(--text);font-size:.9rem}
.form-g input:focus,.form-g select:focus,.form-g textarea:focus{outline:none;border-color:var(--accent)}
.form-g textarea{min-height:90px;resize:vertical}
.form-g small{display:block;margin-top:5px;font-size:.8rem;color:var(--muted)}
.alert{padding:12px 16px;border-radius:6px;margin-bottom:14px;font-size:.9rem}
.alert.ok{background:rgba(92,184,138,.1);border:1px solid rgba(92,184,138,.25);color:var(--green)}
.alert.err{background:rgba(248,113,113,.1);border:1px solid rgba(248,113,113,.25);color:var(--red)}

/* STATS BAR */
.stats-bar{background:var(--bg1);border-bottom:1px solid var(--border);padding:14px 0}
.stats-bar .wrap{display:flex;justify-content:center;gap:50px}
.stat-item{text-align:center}
.stat-value{font-size:1.6rem;font-weight:700;color:var(--accent);line-height:1}
.stat-label{font-size:.75rem;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin-top:3px}

/* AVATAR */
.avatar{width:36px;height:36px;background:var(--accent);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;color:#fff;overflow:hidden}
.avatar img{width:100%;height:100%;object-fit:cover}
.avatar-sm{width:26px;height:26px;background:var(--accent);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.75rem;color:#fff;overflow:hidden;flex-shrink:0}
.avatar-sm img{width:100%;height:100%;object-fit:cover}

/* FILTERS */
.filters{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:20px 0;padding:14px;background:var(--bg1);border:1px solid var(--border);border-radius:8px}
.filters select{background:var(--bg2);border:1px solid var(--border);padding:9px 12px;border-radius:6px;color:var(--text);font-size:.9rem;min-width:150px}

/* SERVER LIST - 7 columns: rank, info, mode, players, map, status, vote */
.server-list{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}

.server-card{
    display:grid;
    grid-template-columns:40px 1fr 100px 100px 100px 50px 70px;
    gap:10px;
    align-items:center;
    background:var(--bg1);
    border:1px solid var(--border);
    border-radius:10px;
    padding:10px 14px;
    
}
.server-card:hover{background:var(--bg2);border-color:var(--border2)}

.server-rank{font-size:1rem;font-weight:700;color:var(--muted);text-align:center}
.server-rank.top{color:var(--accent)}

.server-info{min-width:0;overflow:hidden}
.server-name{font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:2px;display:block;max-width:100%}
.server-name:hover{color:var(--accent)}
.server-meta{display:flex;align-items:center;gap:6px;font-size:.8rem;color:var(--muted);flex-wrap:nowrap;overflow:hidden}
.server-meta .flag{font-size:.9rem;flex-shrink:0}
.server-meta code{background:var(--bg3);padding:1px 5px;font-size:.75rem;flex-shrink:0}

.server-mode{font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.server-players{display:flex;align-items:center;gap:6px}
.player-text{font-size:.85rem;font-weight:600;min-width:38px}
.mini-chart{display:inline-block}
.mini-chart canvas{display:block}

.server-map{font-size:.8rem;color:var(--text2);font-family:monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.server-status-col{text-align:center}
.server-vote-col{text-align:right}
.server-actions{display:flex;align-items:center;gap:10px}
.server-status{font-size:.75rem;font-weight:600}
.server-status.on{color:var(--green)}
.server-status.off{color:var(--red)}

.vote-btn{background:#505c9e;border:1px solid #5a67b5;color:#fff;padding:8px 16px;border-radius:6px;font-size:.88rem;font-weight:600;cursor:pointer;white-space:nowrap;min-height:44px;display:inline-flex;align-items:center;gap:5px}
.vote-btn:hover:not(:disabled){background:#5a67b5;border-color:#6574cd;color:#fff}
.vote-btn:disabled{opacity:.55;cursor:not-allowed}
.vote-btn.voted{background:var(--bg3);border-color:var(--green);color:var(--green)}

/* PAGINATION */
.pagination{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:6px;margin:24px 0}
.pagination a,
.pagination span.active{
    display:inline-flex;align-items:center;justify-content:center;
    min-width:38px;padding:8px 14px;
    background:var(--bg1);border:1px solid var(--border);border-radius:6px;
    font-size:.9rem;font-weight:600;color:var(--text2);text-decoration:none;
    line-height:1.2;box-sizing:border-box;
}
.pagination a:hover{background:var(--bg2);color:var(--text);border-color:var(--border2)}
.pagination a.active,
.pagination span.active{
    background:var(--accent);border-color:var(--accent);color:#fff;
    box-shadow:0 0 0 1px rgba(101,116,205,.25);
}
.pagination .dots{padding:8px 6px;color:var(--muted);font-size:.9rem;user-select:none}

/* SERVER PAGE */
/* Server page layout now in server.css */

.breadcrumb{font-size:.85rem;color:var(--muted);padding:12px 0;margin-bottom:16px}
.breadcrumb a{color:var(--text2)}
.breadcrumb a:hover{color:var(--accent)}

/* Hero */
.server-hero{background:var(--bg1);border:1px solid var(--border);border-radius:10px;padding:20px;margin-bottom:18px}
.hero-grid{display:grid;grid-template-columns:1fr 200px;gap:20px;align-items:start}
@media(max-width:700px){.hero-grid{grid-template-columns:1fr}.map-card{display:none}}
.hero-content{display:flex;flex-direction:column;gap:12px}
.hero-top{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.hero-rank{background:var(--accent);color:#fff;padding:6px 14px;border-radius:6px;font-weight:700;font-size:1.1rem}
.hero-name{font-size:1.3rem;font-weight:600;flex:1;min-width:200px;margin:0}
.hero-status{padding:5px 12px;border-radius:15px;font-size:.8rem;font-weight:600}
.hero-status.on{background:rgba(92,184,138,.15);color:var(--green)}
.hero-status.off{background:rgba(248,113,113,.15);color:var(--red)}

/* Map Card */
.map-card{width:200px;max-width:200px;background:var(--bg2);border-radius:10px;overflow:hidden;border:1px solid var(--border);flex-shrink:0}
.map-image{width:200px;height:130px;background:var(--bg3);display:flex;align-items:center;justify-content:center;overflow:hidden}
.map-image img{width:200px;height:130px;max-width:200px;max-height:130px;object-fit:cover;display:block}
.map-image .no-preview{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;color:var(--muted)}
.map-image .no-preview span{font-size:2.5rem;opacity:.4}
.map-info{padding:10px 12px;text-align:center;border-top:1px solid var(--border)}
.map-info .map-label{display:block;font-size:.65rem;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px}
.map-info .map-name{display:block;font-weight:600;font-size:.9rem;font-family:monospace;color:var(--accent)}

.hero-row{display:flex;align-items:center;gap:20px;margin-bottom:14px;flex-wrap:wrap}
.hero-ip{display:flex;align-items:center;gap:8px}
.hero-ip code{font-size:.95rem;padding:6px 10px}

.hero-players{display:flex;align-items:center;gap:10px;padding:8px 14px;background:var(--bg2);border-radius:6px}
.hero-players .count{font-weight:600;white-space:nowrap}
.hero-players .bar{width:80px;height:6px;background:var(--bg4);border-radius:3px;overflow:hidden}
.hero-players .bar-fill{display:block;height:100%;background:var(--accent);border-radius:3px}

.hero-info{display:flex;align-items:center;gap:16px;margin-bottom:12px;flex-wrap:wrap}
.hero-ip{display:flex;align-items:center;gap:8px}
.hero-ip .flag{font-size:1.3rem}
.hero-ip code{font-size:.95rem;padding:6px 10px}

.hero-players{display:flex;align-items:center;gap:10px;padding:8px 14px;background:var(--bg2);border-radius:6px}
.hero-players .num{font-weight:600}
.hero-players .bar{width:80px;height:6px;background:var(--bg4);border-radius:3px;overflow:hidden}
.hero-players .bar span{display:block;height:100%;background:var(--accent);border-radius:3px}

.hero-tags{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px}
.tag{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--bg2);border-radius:6px;font-size:.85rem;color:var(--text2);white-space:nowrap}

.hero-actions{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap}

/* Panel */
.panel{background:var(--bg1);border:1px solid var(--border);border-radius:14px;margin-bottom:10px;overflow:hidden}
.panel-header{padding:12px 18px;font-weight:700;font-size:.88rem;background:linear-gradient(135deg,rgba(101,116,205,.03),transparent);border-bottom:1px solid var(--border);color:var(--text);display:flex;align-items:center;gap:6px}
.panel-body{padding:16px 18px}
.panel-body.np{padding:0}

/* Tabs */
.tabs{display:flex;background:var(--bg2);border-bottom:1px solid var(--border)}
.panel-body .tabs{background:var(--bg2)}
.tabs button{flex:1;padding:11px;background:none;border:none;color:var(--muted);font-size:.82rem;font-weight:600;cursor:pointer;border-bottom:2px solid transparent;}
.tabs button:hover{color:var(--text)}
.tabs button.active{color:var(--accent);border-bottom-color:var(--accent)}
.tab-content{padding:16px}
.tab-content.hide{display:none}

/* Stats Row */
.stats-row{display:flex;gap:20px;padding:12px 16px;background:var(--bg0);font-size:.9rem;color:var(--text2)}
.stats-row strong{color:var(--accent)}

/* Chart */
.chart-container{height:260px;padding:16px}

/* Table */
.data-table{width:100%;border-collapse:collapse}
.data-table th,.data-table td{padding:12px 14px;text-align:left;border-bottom:1px solid var(--border)}
.data-table th{background:var(--bg2);font-size:.8rem;color:var(--muted);text-transform:uppercase}
.data-table tr:hover{background:var(--bg2)}
.data-table .green{color:var(--green)}
.data-table.compact th,.data-table.compact td{padding:6px 10px;font-size:.8rem}
.data-table.compact th{font-size:.7rem;position:sticky;top:0;z-index:1}
.data-table .muted{color:var(--muted)}
.data-table .rank-cell{text-align:center;font-weight:700;color:var(--muted)}
.data-table .rank-cell.top3{color:var(--accent)}

/* Widget */
.widget{background:var(--bg1);border:1px solid var(--border);border-radius:14px;margin-bottom:10px;overflow:hidden}
.widget-header{padding:12px 16px;font-weight:700;font-size:.84rem;background:linear-gradient(135deg,rgba(101,116,205,.03),transparent);border-bottom:1px solid var(--border);color:var(--text);display:flex;align-items:center;gap:6px}
.widget-body{padding:14px 16px}

.info-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--border);font-size:.9rem}
.info-row:last-child{border:none}
.info-row .label{color:var(--muted)}

.contact-item{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--border);font-size:.9rem}
.contact-item:last-child{border:none}
.contact-item .icon{width:20px;text-align:center}
.contact-item a{color:var(--accent);font-weight:500}
.contact-item a:hover{color:var(--accent)}

.vote-widget{text-align:center;padding:20px 16px}
.vote-big{font-size:2.5rem;font-weight:700;color:var(--accent);line-height:1}
.vote-label{font-size:.8rem;color:var(--muted);text-transform:uppercase;margin:6px 0 14px}

/* Banner */
.banner-preview{width:100%;border-radius:6px;margin-bottom:10px}
.bbcode-box{background:var(--bg2);border:1px solid var(--border);border-radius:6px;padding:10px;margin-top:10px}
.bbcode-box label{font-size:.8rem;color:var(--muted);display:block;margin-bottom:5px}
.bbcode-box input{font-size:.75rem;background:var(--bg0);border:1px solid var(--border);padding:8px;border-radius:4px;width:100%}

/* Staff */
.staff-item{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--border);font-size:.9rem}
.staff-item:last-child{border:none}
.staff-item a{color:var(--text)}
.staff-item a:hover{color:var(--accent)}
.staff-item .role{margin-left:auto;font-size:.75rem;color:var(--muted);background:var(--bg3);padding:2px 8px;border-radius:4px}

/* Comments System */
.comments-list{margin-top:16px}

.cmt{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid var(--border)}
.cmt:last-child{border-bottom:none}

.cmt-avatar{
    width:40px;height:40px;min-width:40px;max-width:40px;
    background:var(--bg3);border-radius:50%;
    display:flex;align-items:center;justify-content:center;
    font-weight:600;font-size:1rem;color:var(--text2);
    flex-shrink:0;overflow:hidden
}
.cmt-avatar img{
    width:40px;height:40px;min-width:40px;max-width:40px;
    object-fit:cover;border-radius:50%;display:block
}
.cmt-avatar.owner{background:var(--accent);color:#fff}

.cmt-body{flex:1;min-width:0}
.cmt-bubble{background:var(--bg2);border-radius:12px;padding:10px 14px;display:inline-block;max-width:100%}
.cmt-header{display:flex;align-items:center;gap:8px;margin-bottom:4px;flex-wrap:wrap}
.cmt-author{font-weight:600;font-size:.9rem;color:var(--text);text-decoration:none}
.cmt-author:hover{color:var(--accent)}
.cmt-badge{background:var(--accent);color:#fff;padding:2px 8px;border-radius:10px;font-size:.7rem;font-weight:600}
.cmt-reply-to{font-size:.8rem;color:var(--accent)}
.cmt-text{font-size:.9rem;color:var(--text);line-height:1.5}
.cmt-meta{display:flex;align-items:center;gap:12px;margin-top:6px;padding-left:4px}
.cmt-time{font-size:.75rem;color:var(--muted)}
.cmt-action{background:none;border:none;font-size:.75rem;color:var(--muted);cursor:pointer;padding:2px 4px}
.cmt-action:hover{color:var(--accent);text-decoration:underline}

/* Reply form */
.cmt-reply-form{display:flex;gap:8px;margin-top:10px}
.cmt-reply-form.hide{display:none}
.cmt-reply-form input{flex:1;background:var(--bg2);border:1px solid var(--border);padding:8px 14px;border-radius:20px;color:var(--text);font-size:.85rem}
.cmt-reply-form input:focus{outline:none;border-color:var(--accent)}
.cmt-reply-form button{background:var(--accent);color:#fff;border:none;width:34px;height:34px;border-radius:50%;cursor:pointer;font-size:1rem}

/* Replies with line */
.cmt-replies{margin-left:52px;padding-left:16px;border-left:2px solid var(--border);margin-top:4px}
.cmt-replies .cmt{padding:8px 0;border-bottom:none}
.cmt-replies .cmt-avatar{width:32px;height:32px;min-width:32px;max-width:32px;font-size:.85rem}
.cmt-replies .cmt-avatar img{width:32px;height:32px;min-width:32px;max-width:32px}
.cmt-replies .cmt-bubble{padding:8px 12px}
.cmt-replies .cmt-author,.cmt-replies .cmt-text{font-size:.85rem}

/* Nested replies */
.cmt-replies .cmt-replies{margin-left:44px}
.cmt-replies .cmt-replies .cmt-avatar{width:28px;height:28px;min-width:28px;max-width:28px;font-size:.75rem}
.cmt-replies .cmt-replies .cmt-avatar img{width:28px;height:28px;min-width:28px;max-width:28px}

/* Main comment form */
.comment-form{margin-bottom:20px}
.comment-form textarea{width:100%;background:var(--bg2);border:1px solid var(--border);padding:12px;border-radius:12px;color:var(--text);font-size:.9rem;min-height:80px;resize:vertical;font-family:inherit}
.comment-form textarea:focus{outline:none;border-color:var(--accent)}
.comment-form button{margin-top:8px}


/* Announcement */
.announcement{background:var(--bg2);border-left:3px solid var(--accent);border-radius:0 8px 8px 0;padding:16px 18px;margin-bottom:18px}
.announcement-title{font-weight:600;font-size:1.05rem;margin-bottom:6px}
.announcement-text{color:var(--text2);font-size:.95rem;margin-bottom:8px}
.announcement-meta{font-size:.8rem;color:var(--muted)}

/* Map Tags */
.map-tags{display:flex;flex-wrap:wrap;gap:8px}
.map-tag{background:var(--bg2);border:1px solid var(--border);padding:6px 12px;border-radius:6px;font-size:.9rem}
.map-tag .time{color:var(--muted);font-size:.8rem;margin-left:6px}

/* Empty State */
.empty-state{text-align:center;padding:40px;color:var(--muted)}

/* Auth */
.auth-container{max-width:400px;margin:40px auto}
.auth-box{background:var(--bg1);border:1px solid var(--border);border-radius:10px;padding:28px}
.auth-box h1{font-size:1.3rem;text-align:center;margin-bottom:20px}
.auth-link{text-align:center;margin-top:18px;font-size:.9rem;color:var(--muted)}

/* Footer */
footer{background:var(--bg1);border-top:1px solid var(--border);margin-top:48px;position:relative}
footer a{color:var(--text2)}
footer a:hover{color:var(--accent)}
.ft-accent-line{height:1px;background:linear-gradient(90deg,transparent 5%,var(--accent),transparent 95%);opacity:.25}
.ft-top{display:flex;gap:32px;padding:24px 0 18px;align-items:flex-start;justify-content:space-between}
.ft-brand{flex:0 0 220px}
.ft-logo{display:flex;align-items:center;gap:7px;font-weight:700;font-size:.95rem;color:var(--text);margin-bottom:8px}
.ft-logo:hover{color:var(--text)}
.ft-logo img{border-radius:4px;width:20px;height:20px}
.ft-logo b{color:var(--accent)}
.ft-tagline{font-size:.68rem;color:var(--muted);line-height:1.55;margin-bottom:10px}
.ft-socials{display:flex;gap:5px}
.ft-social-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--bg3);border:1px solid var(--border);border-radius:6px;color:var(--muted);transition:all .15s}
.ft-social-btn:hover{color:var(--accent);border-color:var(--accent);background:var(--ac10)}
.ft-links{display:flex;gap:48px;flex:1;justify-content:flex-end}
.ft-col{display:flex;flex-direction:column;gap:0}
.ft-col h4,.ft-heading{font-size:.55rem;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.8px;margin-bottom:4px;display:block}
.ft-col a{font-size:.74rem;color:var(--text2);transition:color .12s;line-height:2}
.ft-col a:hover{color:var(--accent)}
.ft-divider{height:1px;background:var(--border)}
.ft-bottom{display:flex;justify-content:space-between;align-items:center;padding:12px 0}
.ft-copy{font-size:.68rem;color:var(--muted)}
.ft-made{font-size:.68rem;color:var(--muted)}
.ft-heart{color:var(--accent);font-size:.75rem;display:inline-block;animation:ftPulse 2s infinite}
@keyframes ftPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.15)}}

/* Responsive */
/* Server responsive now in server.css */
@media(max-width:900px){
    .server-card{grid-template-columns:35px 1fr 80px 50px 60px}
    .server-card .server-mode,.server-card .server-map{display:none}
}
@media(max-width:768px){
    .header-inner{flex-wrap:wrap;height:auto;padding:10px 0;align-items:center}
    .header-left{align-items:center}
    .header-left{width:100%}
    nav{display:none}
    .user-area{margin-left:auto}
    .user-area--guest{gap:8px}
    .user-area--guest .btn-add-server-icon{display:flex}
    .server-card{grid-template-columns:30px 1fr 50px 55px}
    .server-card .server-mode,.server-card .server-map,.server-card .server-players{display:none}
    .stats-bar .wrap{flex-wrap:wrap;gap:25px}
    footer .ft-top{flex-direction:column;gap:24px}
    footer .ft-brand{flex:none}
    footer .ft-links{flex-wrap:wrap;gap:24px}
    footer .ft-bottom{flex-direction:column;gap:6px;text-align:center}
    .hero-tags{gap:6px}
    .tag{padding:4px 8px;font-size:.8rem}
}
.score-info-btn{background:none;border:1px solid var(--border);border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--muted);font-size:.65rem;font-weight:700;line-height:1;margin-left:auto;flex-shrink:0}
.score-info-btn:hover{border-color:var(--ac);color:var(--ac)}

/* ── Notification Panel (dropdown overlay) ── */
.notif-dropdown{position:relative}
.notif-panel{
    position:absolute;top:calc(100% + 8px);right:0;
    width:380px;max-height:500px;
    background:var(--bg1);border:1px solid var(--border);border-radius:14px;
    box-shadow:0 16px 48px rgba(0,0,0,.5),0 0 0 1px rgba(255,255,255,.03);
    opacity:0;visibility:hidden;pointer-events:none;
    transform:translateY(-4px);
    transition:opacity .2s,transform .2s,visibility .2s;
    z-index:9999;display:flex;flex-direction:column;overflow:hidden;
}
.notif-dropdown.open .notif-panel{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
.notif-panel-head{
    display:flex;align-items:center;justify-content:space-between;
    padding:12px 16px;
    background:radial-gradient(ellipse 60% 100% at 0% 50%,var(--ac05),transparent 70%),var(--bg2);
    border-bottom:1px solid var(--border);position:relative;
}
.notif-panel-head::after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,var(--ac15),transparent 60%)}
.notif-panel-title{font-size:.78rem;font-weight:700;display:flex;align-items:center;gap:6px;color:var(--text)}
.notif-mark-read{background:var(--bg3);border:1px solid var(--border);border-radius:6px;padding:4px 6px;cursor:pointer;color:var(--muted);display:flex;align-items:center;transition:all .15s}
.notif-mark-read:hover{color:var(--green);border-color:var(--green)}
.notif-panel-body{flex:1;overflow-y:auto;max-height:360px}
.notif-panel-footer{display:block;text-align:center;padding:10px;font-size:.72rem;font-weight:600;color:var(--accent);border-top:1px solid var(--border);transition:background .12s}
.notif-panel-footer:hover{background:var(--ac05);color:var(--accent2)}
.np-item{display:flex;gap:10px;padding:10px 14px;border-bottom:1px solid rgba(255,255,255,.02);transition:background .12s;cursor:pointer;text-decoration:none;color:inherit}
.np-item:hover{background:var(--bg2)}
.np-item.unread{background:var(--ac05)}
.np-item.unread:hover{background:var(--ac10)}
.np-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:.9rem}
.np-icon.vote{background:rgba(92,184,138,.12);color:var(--green)}
.np-icon.message{background:rgba(96,165,250,.12);color:#6d8ec9}
.np-icon.warning{background:rgba(251,191,36,.12);color:#fbbf24}
.np-icon.system{background:rgba(139,92,246,.12);color:#8b5cf6}
.np-icon.default{background:var(--bg3);color:var(--muted)}
.np-body{flex:1;min-width:0}
.np-title{font-size:.76rem;font-weight:600;color:var(--text);line-height:1.3;margin-bottom:2px}
.np-text{font-size:.68rem;color:var(--muted);line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.np-time{font-size:.6rem;color:var(--muted);margin-top:2px}
.np-empty{text-align:center;padding:32px 16px;color:var(--muted);font-size:.78rem}
.np-empty svg{margin-bottom:8px;opacity:.4}
@media(max-width:500px){.notif-panel{width:calc(100vw - 24px);right:-60px}}
