﻿.user-menu { display:flex; align-items:center; gap:8px; margin-left:10px; }
.user-menu img { width:24px; height:24px; border-radius:50%; border:1px solid #345; }
.user-menu .name { font-size:13px; color:#e8f1ff; opacity:0.9; }
.user-menu { position: relative; cursor: pointer; }
.user-menu .dropdown { display:none; position:absolute; right:0; top:28px; background:#0f1722; border:1px solid #345; border-radius:6px; min-width:160px; box-shadow:0 6px 20px rgba(0,0,0,0.4); }
.user-menu.open .dropdown { display:block; }
.user-menu .dropdown a, .user-menu .dropdown button { display:block; width:100%; padding:8px 12px; text-align:left; background:none; color:#e8f1ff; border:0; }
.user-menu .dropdown a:hover, .user-menu .dropdown button:hover { background:#172133; }

.hub-overlay { position:fixed; inset:0; background:rgba(5,13,28,0.98); backdrop-filter:blur(3px); display:flex; align-items:center; justify-content:center; z-index:9999; }
.hub-card { background:#0e1621; color:#e8f1ff; border:1px solid #334; border-radius:10px; padding:24px; min-width:320px; text-align:center; box-shadow:0 6px 24px rgba(0,0,0,0.4); }
.hub-card .btn { margin-top:12px; display:inline-block; }
/* Enhanced badge styles */
.role-badge { display:inline-block; margin-left:8px; padding:2px 10px; border:1px solid rgba(255,255,255,.2); border-radius:999px; font-size:12px; line-height:18px; letter-spacing:.3px; box-shadow:0 2px 8px rgba(0,0,0,.25); }
.role-badge.admin { border-color:#ff6b6b; background:linear-gradient(135deg,#3a1116,#5c1a20); color:#ffd7d7; }
.role-badge.officer { border-color:#69b7ff; background:linear-gradient(135deg,#13263a,#1f3b59); color:#d7ecff; }
.role-badge.raider { border-color:#6dff9a; background:linear-gradient(135deg,#123a1b,#1d5a2c); color:#dbffe6; }
.role-badge.trial { border-color:#ffe080; background:linear-gradient(135deg,#3a3712,#5a4f1d); color:#fff3c4; }
.role-badge.member { border-color:#a8b0c0; background:linear-gradient(135deg,#1d2330,#2a3244); color:#e2e6ee; }
.role-badge.gm { border-color:#b676ff; background:linear-gradient(135deg,#2a1742,#45256e); color:#f0e6ff; }

/* Participants link/button */
.link-participants { color:#9ec1ff; text-decoration:underline; cursor:pointer; font-size:12px; margin-left:6px; }
.link-participants:hover { color:#cfe3ff; }

/* BIS view small helpers */
.table-wrap table{ width:100%; border-collapse: collapse; }
.table-wrap th, .table-wrap td{ padding:8px 10px; border-bottom:1px solid #2a3347; text-align:left; }
.table-wrap thead th{ position:sticky; top:0; background:#0f1722; }

.event-actions{ display:flex; justify-content:flex-end; gap:8px; }

.bis-icon{
  width:18px;
  height:18px;
  margin-right:6px;
  vertical-align:middle;
}
.hub-locked { overflow:hidden; }
#view-roster .inline-actions { display:flex; justify-content:flex-end; margin-top:12px; }
#view-roster .inline-actions .btn { min-width:150px; }
.btn-inline{margin-left:6px;}
.ev-lastmod{opacity:.8;padding:6px 2px;}
.modal.open { display:block; }
.modal-bd.open { display:block; }
.attendance-wrapper{display:flex;flex-direction:column;gap:12px;}
.attendance-table{width:100%;border-collapse:collapse;}
.attendance-table th,.attendance-table td{padding:10px 12px;text-align:left;}
.attendance-table tbody tr:nth-child(even){background:#0a1220;}
.presence-toggle{display:flex;align-items:center;gap:8px;}
.attendance-summary{color:#94a3b8;margin-top:-4px;}

.sr-items{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.sr-items-raid{display:flex;gap:8px}
.sr-item{display:inline-flex;align-items:center;gap:8px;padding:3px 10px;border-radius:8px;background:#0a1320;border:1px solid #19273c;color:#d9e3f7;position:relative;font-size:13px;line-height:18px;box-shadow:0 4px 10px rgba(7,16,32,0.25)}
.sr-item img{width:20px;height:20px;border-radius:4px;box-shadow:0 2px 6px rgba(0,0,0,0.45)}
.sr-slot{display:inline-flex;align-items:center;justify-content:center;min-width:52px;padding:2px 8px;border-radius:999px;background:rgba(148,163,184,0.16);border:1px solid rgba(148,163,184,0.35);color:#dbe7ff;font-size:11px;line-height:14px;letter-spacing:.06em;text-transform:uppercase}
.sr-item[data-slot="1"] .sr-slot{background:rgba(56,189,248,0.12);border-color:rgba(56,189,248,0.35);color:#cfe9ff}
.sr-item[data-slot="2"] .sr-slot{background:rgba(74,222,128,0.12);border-color:rgba(74,222,128,0.32);color:#d7fce3}
.sr-item .twow-link{color:inherit;text-decoration:none;font-weight:500}
.sr-item .twow-link:hover{text-decoration:underline}
.sr-priority{display:inline-flex;align-items:center;justify-content:center;font-size:11px;line-height:14px;padding:1px 6px;border-radius:999px;background:rgba(56,189,248,0.18);color:#a5d8ff;margin-left:6px;border:1px solid rgba(56,189,248,0.35)}
.sr-badge{padding:0 10px;border-radius:12px;background:#132b16;border:1px solid #254a2a;color:#9ee093;font-size:12px;line-height:20px;min-width:56px;text-align:center;font-weight:600;box-shadow:0 4px 10px rgba(9,24,14,0.28)}

/* separator between items (skip first) */
.sr-items .sr-item + .sr-item{position:relative;margin-left:8px}
.sr-items .sr-item + .sr-item::before{content:'•';color:#8aa0b3;opacity:.5;margin-right:8px;font-size:14px;position:absolute;left:-12px;top:50%;transform:translateY(-50%)}

/* différencier visuellement Naxx/KZ (badge) */
.raid-naxx .sr-badge{background:#0f2418;border-color:#1f5035;color:#a6f3b9}
.raid-kz .sr-badge{background:#1c2233;border-color:#2a3d6a;color:#9db7ff}
/* WoW-like rarity colors for links */
.q-0 a{color:#9d9d9d}
.q-1 a{color:#ffffff}
.q-2 a{color:#1eff00}
.q-3 a{color:#0070dd}
.q-4 a{color:#a335ee}
.q-5 a{color:#ff8000}
.q-6 a{color:#e6cc80}

.attendance-bulk{display:flex;justify-content:flex-end;gap:12px;}
.attendance-bulk .btn{font-weight:500;gap:8px;}
.attendance-controls{display:flex;flex-direction:column;gap:10px;margin-top:8px;}
.attendance-controls .raid-options{display:flex;gap:12px;flex-wrap:wrap;}
.attendance-controls .raid-options label{display:flex;align-items:center;gap:6px;}
.attendance-controls .attendance-status{align-self:flex-start;padding:4px 10px;border-radius:999px;background:#0f2418;border:1px solid #1f5035;color:#bef5d0;font-size:12px;}
.ev-validated td{background:linear-gradient(180deg,#0f2418,#0b1712);border-color:#1a3b28;}
.raid-select{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:8px;}
.raid-select .raid-select-label{font-weight:600;font-size:13px;margin-right:4px;}
.raid-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid rgba(148,163,184,0.3);border-radius:999px;font-size:13px;background:rgba(15,23,42,0.35);transition:all .2s;}
.raid-pill input{accent-color:#38bdf8;}
.raid-pill:hover{border-color:#38bdf8;background:rgba(56,189,248,0.12);}
.raid-tags{font-size:12px;opacity:.75;margin-left:6px;}

.event-layout{display:flex;flex-wrap:wrap;gap:20px;margin-bottom:20px;}
.event-create{flex:1 1 420px;padding:20px;}
.event-create-header{display:flex;flex-direction:column;gap:4px;margin-bottom:16px;}
.event-create-header h3{margin:0;font-size:18px;}
.event-create-header p{margin:0;color:#94a3b8;font-size:13px;}
.event-create-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;align-items:end;}
.event-create-grid label{display:flex;flex-direction:column;gap:6px;font-size:13px;}
.event-create-grid input{height:38px;padding:0 10px;border-radius:6px;border:1px solid rgba(148,163,184,0.2);background:rgba(15,23,42,0.5);color:#e2e8f0;}
.event-create-grid button{height:42px;margin-top:6px;}
.event-raid-toggle{display:flex;flex-direction:column;gap:8px;}
.event-raid-toggle span{font-size:13px;color:#cbd5f5;}
.raid-toggle-group{display:flex;gap:10px;flex-wrap:wrap;}

.event-metrics{flex:0 1 220px;display:grid;gap:12px;height:100%;padding:20px;}
.metric{background:rgba(15,23,42,0.6);border:1px solid rgba(148,163,184,0.12);border-radius:10px;padding:14px;display:flex;flex-direction:column;gap:4px;}
.metric-label{font-size:12px;color:#94a3b8;text-transform:uppercase;letter-spacing:.06em;}
.metric-value{font-size:24px;font-weight:600;color:#f8fafc;}

.event-table table{min-width:100%;}

.event-import{margin-top:24px;padding:22px;}
.event-import-header{display:flex;flex-direction:column;gap:4px;margin-bottom:16px;}
.event-import-header h3{margin:0;font-size:18px;}
.event-import-header p{margin:0;color:#94a3b8;font-size:13px;}
.event-import-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;}
.event-import-grid label{display:flex;flex-direction:column;gap:6px;font-size:13px;}
.event-import-grid input,
.event-import-grid textarea{border-radius:6px;border:1px solid rgba(148,163,184,0.18);background:rgba(15,23,42,0.45);color:#e2e8f0;padding:8px 10px;}
.event-import-grid textarea{min-height:120px;resize:vertical;}
.event-import-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:8px;}
.event-import-actions .btn{min-width:140px;}
.srplus-field{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:8px;background:rgba(56,189,248,0.08);border:1px solid rgba(56,189,248,0.18);}
.srplus-field input{accent-color:#38bdf8;}
.file-field input{padding:6px 10px;}
.csv-field textarea{min-height:140px;}

.staff-tools{margin-top:auto;padding-top:20px;position:relative;}
.staff-tools.hidden{display:none;}
.staff-tools button.link{background:transparent;border:0;color:#cbd5f5;padding:6px 12px;text-align:left;}
.staff-tools .btn.ghost{width:100%;justify-content:flex-start;background:rgba(15,23,42,0.4);border:1px solid rgba(148,163,184,0.2);}
.staff-tools.open .staff-tools-menu{display:flex;}
.staff-tools-menu{display:none;flex-direction:column;gap:6px;position:absolute;bottom:-10px;left:0;transform:translateY(100%);background:rgba(15,23,42,0.95);border:1px solid rgba(148,163,184,0.25);border-radius:8px;padding:12px;box-shadow:0 12px 30px rgba(0,0,0,0.35);min-width:180px;}
.staff-tools.active .btn.ghost{border-color:#38bdf8;color:#e0f2ff;}
aside.sidebar{display:flex;flex-direction:column;gap:18px;}aside.sidebar .nav{display:flex;flex-direction:column;gap:10px;}

.profile-notice{font-size:13px;color:#f87171;margin:6px 0 0;}

.staff-tools button.link[disabled]{opacity:0.45;cursor:not-allowed;}

.ev-has-absent{background:linear-gradient(180deg,#2a1420,#140c11);} .badge-absent{display:inline-flex;align-items:center;gap:4px;margin-left:6px;padding:2px 8px;border-radius:999px;font-size:11px;background:rgba(239,68,68,0.18);color:#fecaca;border:1px solid rgba(239,68,68,0.3);}

.staff-tools-sep{margin:6px 0;border:0;border-top:1px solid rgba(148,163,184,0.18);} .staff-tools button.link.warn{color:#fca5a5;} .staff-tools button.link.warn:hover{color:#f87171;}



/* BIS view */
.bis-shell{display:flex;gap:24px;align-items:flex-start;margin-top:6px;}
.bis-sidebar{width:220px;padding:18px;display:flex;flex-direction:column;gap:14px;background:rgba(11,18,32,0.95);border:1px solid rgba(148,163,184,0.24);border-radius:14px;box-shadow:0 18px 32px rgba(0,0,0,0.35);}
.bis-sidebar h3{margin:0;font-size:15px;letter-spacing:0.08em;text-transform:uppercase;color:#94a3b8;}
.bis-class-list{display:flex;flex-direction:column;gap:10px;}
.bis-class-btn{all:unset;display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-radius:10px;border:1px solid rgba(148,163,184,0.18);background:rgba(12,20,33,0.85);color:#e2e8f0;font-size:14px;cursor:pointer;transition:all .18s ease;}
.bis-class-btn:hover{border-color:rgba(56,189,248,0.35);box-shadow:0 0 0 1px rgba(56,189,248,0.2);}
.bis-class-btn.active{background:linear-gradient(135deg,rgba(15,23,42,0.6),rgba(56,189,248,0.22));border-color:rgba(56,189,248,0.55);box-shadow:0 12px 22px rgba(56,189,248,0.18);color:#f8fbff;}
.bis-class-btn::after{content:'';display:block;width:8px;height:8px;border-radius:50%;background:var(--class-color,#94a3b8);box-shadow:0 1px 8px rgba(0,0,0,0.6);}
.bis-main{flex:1;display:flex;flex-direction:column;gap:18px;}
.bis-header{display:flex;justify-content:space-between;align-items:flex-start;padding:20px;border-radius:14px;background:rgba(11,20,34,0.9);border:1px solid rgba(148,163,184,0.22);box-shadow:0 18px 36px rgba(0,0,0,0.32);}
.bis-title{display:flex;flex-direction:column;gap:8px;}
.bis-title h2{margin:0;font-size:26px;text-transform:uppercase;letter-spacing:0.05em;color:#f8fafc;}
.bis-spec-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:999px;font-size:12px;font-weight:600;text-transform:uppercase;border:1px solid var(--role-border,rgba(148,163,184,0.4));background:var(--role-bg,rgba(15,23,42,0.6));color:var(--role-text,#e2e8f0);box-shadow:0 10px 26px var(--role-shadow,rgba(0,0,0,0.28));letter-spacing:0.08em;}
.bis-header-meta{display:flex;flex-direction:column;gap:10px;align-items:flex-end;text-align:right;}
.bis-source{margin:0;font-size:13px;color:#9aa9c5;letter-spacing:0.03em;}
.bis-full-btn{min-width:220px;border-radius:10px;}
.bis-controls{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;border-radius:14px;background:rgba(11,20,34,0.92);border:1px solid rgba(148,163,184,0.18);box-shadow:0 16px 28px rgba(0,0,0,0.28);}
.bis-spec-tabs{display:flex;gap:10px;flex-wrap:wrap;}
.bis-spec-tab{padding:8px 16px;border-radius:999px;font-size:13px;border:1px solid var(--role-border,rgba(148,163,184,0.28));background:var(--role-bg,rgba(15,23,42,0.65));color:var(--role-text,#dce6ff);text-transform:uppercase;letter-spacing:0.06em;cursor:pointer;transition:all .18s;}
.bis-spec-tab:hover{border-color:var(--role-border,rgba(148,163,184,0.45));box-shadow:0 0 0 1px var(--role-border,rgba(148,163,184,0.4));}
.bis-spec-tab.active{background:linear-gradient(135deg,rgba(15,23,42,0.55),var(--role-bg,rgba(56,189,248,0.28)));box-shadow:0 12px 20px var(--role-shadow,rgba(56,189,248,0.2));}
.bis-phase-select{display:flex;flex-direction:column;gap:6px;font-size:12px;color:#94a3b8;text-transform:uppercase;letter-spacing:0.06em;}
.bis-phase-select select{min-width:180px;padding:8px 12px;border-radius:10px;border:1px solid rgba(148,163,184,0.28);background:rgba(15,23,42,0.7);color:#e2e8f0;}
.bis-phase-select select:focus{outline:none;border-color:#38bdf8;box-shadow:0 0 0 1px rgba(56,189,248,0.38);}
.bis-gear{padding:0;border-radius:14px;background:rgba(11,20,34,0.95);border:1px solid rgba(148,163,184,0.22);box-shadow:0 20px 36px rgba(0,0,0,0.32);overflow:hidden;}
.bis-gear-header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid rgba(148,163,184,0.18);}
.bis-gear-header h3{margin:0;font-size:18px;text-transform:uppercase;letter-spacing:0.08em;color:#e2e8f0;}
.bis-table-wrap{padding:0 20px 20px;max-height:62vh;overflow:auto;}
.bis-gear-table{width:100%;border-collapse:collapse;}
.bis-gear-table thead{position:sticky;top:0;background:rgba(11,20,34,0.98);box-shadow:0 4px 12px rgba(0,0,0,0.25);}
.bis-gear-table th{padding:14px 16px;font-size:12px;text-transform:uppercase;letter-spacing:0.08em;color:#94a3b8;border-bottom:1px solid rgba(148,163,184,0.22);text-align:left;}
.bis-gear-table td{padding:14px 16px;border-bottom:1px solid rgba(148,163,184,0.12);font-size:13px;color:#e6ecff;vertical-align:top;}
.bis-slot{width:160px;font-weight:600;color:#cbd5f5;letter-spacing:0.03em;text-transform:uppercase;}
.bis-items{display:flex;flex-direction:column;gap:8px;}
.bis-item-list{display:flex;flex-wrap:wrap;gap:10px;}
.bis-item-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:10px;border:1px solid rgba(148,163,184,0.25);background:rgba(15,23,42,0.72);color:#f4f7ff;font-size:12px;line-height:20px;box-shadow:0 6px 18px rgba(0,0,0,0.32);}
.bis-item-chip img{width:22px;height:22px;border-radius:6px;box-shadow:0 4px 10px rgba(0,0,0,0.45);}
.bis-stats{display:flex;flex-wrap:wrap;gap:8px;}
.bis-stat-pill{display:inline-flex;align-items:center;padding:2px 10px;border-radius:999px;background:rgba(148,163,184,0.16);border:1px solid rgba(148,163,184,0.3);color:#d1dcf7;font-size:11px;letter-spacing:0.05em;text-transform:uppercase;}
.bis-empty{padding:24px;font-size:14px;color:#97a6c5;text-align:center;background:rgba(15,23,42,0.6);border:1px dashed rgba(148,163,184,0.25);border-radius:12px;}
.bis-item-chip.q-0{border-color:#adb6c4;}
.bis-item-chip.q-1{border-color:#8a8f9a;}
.bis-item-chip.q-2{border-color:#44b871;box-shadow:0 6px 16px rgba(68,184,113,0.25);}
.bis-item-chip.q-3{border-color:#2d9ff0;box-shadow:0 6px 16px rgba(45,159,240,0.3);}
.bis-item-chip.q-4{border-color:#c184ff;box-shadow:0 6px 18px rgba(193,132,255,0.35);}
.bis-item-chip.q-5{border-color:#ffb347;box-shadow:0 6px 18px rgba(255,179,71,0.35);}
.bis-item-chip.q-6{border-color:#e74c3c;box-shadow:0 6px 18px rgba(231,76,60,0.35);}
.bis-full{display:grid;grid-template-columns:200px minmax(0,1fr);gap:20px;max-height:70vh;}
.bis-full-sidebar{display:flex;flex-direction:column;gap:10px;padding:4px;}
.bis-full-link{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:10px;border:1px solid rgba(148,163,184,0.22);background:rgba(15,23,42,0.85);color:#cbd5f5;text-decoration:none;font-size:13px;transition:all .18s;text-transform:uppercase;letter-spacing:0.05em;}
.bis-full-link:hover{border-color:rgba(56,189,248,0.35);color:#ecf6ff;}
.bis-full-link.active{background:linear-gradient(135deg,rgba(15,23,42,0.5),rgba(56,189,248,0.22));border-color:rgba(56,189,248,0.45);color:#f0f6ff;box-shadow:0 10px 20px rgba(56,189,248,0.18);}
.bis-full-content{overflow:auto;padding-right:6px;display:flex;flex-direction:column;gap:18px;}
.bis-spec-block{padding:18px;border-radius:12px;background:rgba(11,20,34,0.92);border:1px solid rgba(148,163,184,0.22);box-shadow:0 16px 30px rgba(0,0,0,0.3);}
.bis-spec-block.active{border-color:rgba(56,189,248,0.45);box-shadow:0 20px 34px rgba(56,189,248,0.2);}
.bis-spec-block h3{margin:0 0 12px;font-size:18px;text-transform:uppercase;letter-spacing:0.07em;color:#e6edff;}
.bis-phase-block{padding:14px;border-radius:12px;background:rgba(6,14,26,0.78);border:1px solid rgba(148,163,184,0.18);margin-top:14px;}
.bis-phase-block header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;}
.bis-phase-block h4{margin:0;font-size:14px;text-transform:uppercase;letter-spacing:0.06em;color:#cbd5f5;}
.bis-phase-source{font-size:12px;color:#94a3b8;}

.bis-spec-badge,
.bis-spec-tab{--role-bg:rgba(56,189,248,0.22);--role-text:#e6f6ff;--role-border:rgba(56,189,248,0.45);--role-shadow:rgba(56,189,248,0.2);}
.bis-spec-badge.role-dps,
.bis-spec-tab.role-dps{--role-bg:rgba(249,115,22,0.28);--role-text:#ffe6d5;--role-border:rgba(249,115,22,0.55);--role-shadow:rgba(249,115,22,0.25);}
.bis-spec-badge.role-heal,
.bis-spec-tab.role-heal{--role-bg:rgba(45,212,191,0.28);--role-text:#e7fffb;--role-border:rgba(45,212,191,0.55);--role-shadow:rgba(45,212,191,0.22);}
.bis-spec-badge.role-tank,
.bis-spec-tab.role-tank{--role-bg:rgba(250,204,21,0.28);--role-text:#fff7d6;--role-border:rgba(250,204,21,0.55);--role-shadow:rgba(250,204,21,0.22);}

.bis-class-btn.class-warrior{--class-color:#C79C6E;}
.bis-class-btn.class-paladin{--class-color:#F58CBA;}
.bis-class-btn.class-hunter{--class-color:#ABD473;}
.bis-class-btn.class-rogue{--class-color:#FFF569;}
.bis-class-btn.class-priest{--class-color:#FFFFFF;}
.bis-class-btn.class-deathknight{--class-color:#C41F3B;}
.bis-class-btn.class-shaman{--class-color:#0070DE;}
.bis-class-btn.class-mage{--class-color:#69CCF0;}
.bis-class-btn.class-warlock{--class-color:#9482C9;}
.bis-class-btn.class-monk{--class-color:#00FF96;}
.bis-class-btn.class-druid{--class-color:#FF7D0A;}
.bis-class-btn.class-demonhunter{--class-color:#A330C9;}
.bis-class-btn.class-hunteress{--class-color:#ABD473;}
.bis-class-btn.class-gm{--class-color:#b676ff;}

@media (max-width: 1200px){
  .bis-shell{flex-direction:column;}
  .bis-sidebar{width:100%;flex-direction:row;align-items:center;justify-content:space-between;gap:12px;padding:16px;}
  .bis-class-list{flex-direction:row;flex-wrap:wrap;gap:8px;}
  .bis-class-btn{flex:1 1 120px;justify-content:center;}
}

@media (max-width: 768px){
  .bis-controls{flex-direction:column;align-items:flex-start;}
  .bis-phase-select{width:100%;}
  .bis-phase-select select{width:100%;}
  .bis-header{flex-direction:column;gap:14px;align-items:flex-start;}
  .bis-header-meta{align-items:flex-start;text-align:left;}
  .bis-full{grid-template-columns:1fr;max-height:70vh;}
  .bis-full-sidebar{flex-direction:row;flex-wrap:wrap;}
  .bis-full-content{max-height:60vh;}
}

@media (max-width: 520px){
  .bis-class-list{gap:6px;}
  .bis-class-btn{padding:8px 10px;font-size:12px;}
  .bis-table-wrap{padding:0 12px 12px;}
  .bis-gear-table th,.bis-gear-table td{padding:10px 12px;}
}

.sr-cell{padding:0;vertical-align:top;}
.sr-stack{display:flex;flex-direction:column;gap:8px;}
.sr-raid-section{display:flex;flex-direction:column;gap:6px;padding:4px 0 8px;border-radius:8px;}
.sr-raid-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px;}
.sr-raid-label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#8aa0b3;}
.sr-raid-title{display:none;}
.sr-raid-body{display:flex;flex-direction:column;}

.allocation-controls{margin-top:10px;padding:18px;border-radius:14px;background:rgba(11,20,34,0.92);border:1px solid rgba(148,163,184,0.2);box-shadow:0 20px 36px rgba(0,0,0,0.32);}
.allocation-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;align-items:flex-start;}
.allocation-field{display:flex;flex-direction:column;gap:8px;color:#94a3b8;text-transform:uppercase;font-size:12px;letter-spacing:0.06em;}
.allocation-field select,.allocation-field textarea{border-radius:10px;border:1px solid rgba(148,163,184,0.28);background:rgba(15,23,42,0.7);color:#e2e8f0;padding:10px 12px;font-size:13px;}
.allocation-field textarea{resize:vertical;min-height:120px;}
.allocation-actions{display:flex;gap:10px;}
.allocation-hint{margin:4px 0 0;font-size:12px;color:#9aa9c5;}
.allocation-hint.warn{color:#fca5a5;}
.allocation-item-info{margin-top:18px;padding:18px;border-radius:14px;background:rgba(15,23,42,0.92);border:1px solid rgba(148,163,184,0.2);box-shadow:0 18px 34px rgba(0,0,0,0.3);}
.allocation-item-info.hidden{display:none;}
.allocation-item-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:10px;}
.allocation-item-head h3{margin:0;font-size:22px;color:#f8fafc;letter-spacing:0.06em;}
.allocation-slot,.allocation-raid{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;border:1px solid rgba(148,163,184,0.3);background:rgba(15,23,42,0.6);color:#dce6ff;font-size:11px;text-transform:uppercase;letter-spacing:0.08em;}
.allocation-raid{background:linear-gradient(135deg,rgba(56,189,248,0.22),rgba(15,23,42,0.5));border-color:rgba(56,189,248,0.35);}
.allocation-meta p{margin:4px 0;font-size:13px;color:#cbd5f5;}
.allocation-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;margin:12px 0 0;padding:0;list-style:none;}
.allocation-stats li{padding:8px 10px;border-radius:10px;background:rgba(10,19,32,0.75);border:1px solid rgba(148,163,184,0.2);color:#e2e8f0;font-size:12px;}
.allocation-note{margin:10px 0 0;color:#9aa9c5;font-size:12px;}
.allocation-table{margin-top:18px;}
.allocation-table.hidden{display:none;}
.allocation-empty{text-align:center;padding:50px 20px;font-size:14px;color:#97a6c5;}
.allocation-empty.hidden{display:none;}
.alloc-tag{display:inline-flex;align-items:center;justify-content:center;padding:4px 10px;border-radius:999px;font-size:12px;letter-spacing:0.04em;}
.alloc-tag.ok{background:rgba(16,185,129,0.14);border:1px solid rgba(16,185,129,0.35);color:#6ee7b7;}
.alloc-tag.warn{background:rgba(239,68,68,0.14);border:1px solid rgba(239,68,68,0.35);color:#fecaca;}
.alloc-status{display:inline-flex;align-items:center;justify-content:center;padding:4px 10px;border-radius:999px;font-size:12px;letter-spacing:0.04em;}
.alloc-status.ok{background:rgba(16,185,129,0.12);border:1px solid rgba(16,185,129,0.32);color:#67e8f9;}
.alloc-status.warn{background:rgba(239,68,68,0.12);border:1px solid rgba(239,68,68,0.32);color:#fca5a5;}
.alloc-status.suggest{background:rgba(56,189,248,0.12);border:1px solid rgba(56,189,248,0.32);color:#bae6fd;}

.class-chip{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:56px;padding:3px 10px;border-radius:999px;background:transparent;border:1.5px solid var(--class-color,rgba(255,255,255,0.14));color:var(--class-color,#ffffff);font-weight:600;letter-spacing:.04em;font-size:13px;line-height:18px;}
.class-chip::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px;background:var(--class-color,#cbd5f5);box-shadow:0 1px 6px rgba(0,0,0,0.6);transform:translateY(1px);}
.class-warrior{--class-color:#C79C6E;}
.class-paladin{--class-color:#F58CBA;}
.class-hunter{--class-color:#ABD473;}
.class-rogue{--class-color:#FFF569;}
.class-priest{--class-color:#f4f7ff;}
.class-deathknight{--class-color:#C41F3B;}
.class-shaman{--class-color:#0070DE;}
.class-mage{--class-color:#69CCF0;}
.class-warlock{--class-color:#9482C9;}
.class-monk{--class-color:#00FF96;color:#0f172a;}
.class-druid{--class-color:#FF7D0A;}
.class-demonhunter{--class-color:#A330C9;}
#pv-sr-breakdown{display:flex;flex-direction:column;gap:12px;}
#pv-sr-breakdown h3{margin:0 0 4px;font-size:16px;color:#e2e8f0;}
.pv-sr-raid{padding:12px;border:1px solid rgba(148,163,184,0.18);border-radius:10px;background:rgba(15,23,42,0.55);display:flex;flex-direction:column;gap:8px;}
.pv-sr-head{display:flex;justify-content:space-between;align-items:center;}
.pv-sr-title{text-transform:uppercase;font-size:12px;letter-spacing:.08em;color:#94a3b8;}
.pv-sr-total{font-weight:600;font-size:14px;color:#cbd5f5;}
.pv-sr-list{display:flex;gap:10px;flex-wrap:wrap;}
.pv-sr-item{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:8px;background:rgba(10,19,32,0.8);border:1px solid rgba(37,74,42,0.35);color:#d9e3f7;font-size:12px;}
.pv-sr-score{display:inline-flex;align-items:center;justify-content:center;padding:0 6px;border-radius:999px;background:rgba(56,189,248,0.16);border:1px solid rgba(56,189,248,0.4);font-size:11px;color:#a5d8ff;}
.pv-sr-empty{font-size:12px;color:#94a3b8;opacity:0.8;}
.sr-score{display:inline-flex;align-items:center;justify-content:center;margin-left:6px;padding:0 8px;border-radius:999px;background:rgba(16,185,129,0.16);border:1px solid rgba(16,185,129,0.35);color:#6ee7b7;font-size:11px;line-height:14px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;}
.bis-spec-tabs{display:flex;gap:10px;flex-wrap:wrap;width:100%;margin-top:10px;}
.bis-spec-tab{background:rgba(14,21,34,0.78);border:1px solid var(--role-border,rgba(148,163,184,0.25));border-radius:999px;padding:6px 14px;font-size:13px;color:var(--role-text,#cbd5f5);cursor:pointer;transition:all .2s;text-transform:uppercase;letter-spacing:0.05em;}
.bis-spec-tab:hover{border-color:var(--role-border,rgba(148,163,184,0.35));color:var(--role-text,#e0f2ff);box-shadow:0 0 0 1px var(--role-border,rgba(148,163,184,0.35));}
.bis-spec-tab.active{background:linear-gradient(135deg,rgba(15,23,42,0.42),var(--role-color,rgba(56,189,248,0.35)));border-color:var(--role-border,rgba(148,163,184,0.45));color:var(--role-text,#ebf8ff);box-shadow:0 6px 18px var(--role-shadow,rgba(56,189,248,0.2));}
.pv-sr-player{font-size:13px;color:#cbd5f5;margin-bottom:4px;}
.bis-filters-container{display:flex;flex-direction:column;gap:14px;padding:18px;}
.bis-full-wrap{display:flex;justify-content:flex-end;}
.bis-full-wrap .btn{min-width:220px;}
.bis-full-modal{display:grid;grid-template-columns:220px minmax(0,1fr);gap:20px;max-height:70vh;align-items:start;}
.bis-full-nav{display:flex;flex-direction:column;gap:10px;position:sticky;top:0;max-height:70vh;overflow-y:auto;padding-right:4px;}
.bis-full-nav-link{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:10px;border:1px solid var(--role-border,rgba(148,163,184,0.25));background:rgba(15,23,42,0.85);color:var(--role-text,#dce6ff);text-decoration:none;font-size:13px;letter-spacing:0.04em;text-transform:uppercase;transition:all .2s;}
.bis-full-nav-link:hover{border-color:var(--role-border,rgba(148,163,184,0.45));box-shadow:0 4px 14px var(--role-shadow,rgba(56,189,248,0.15));}
.bis-full-nav-link.active{background:linear-gradient(135deg,rgba(15,23,42,0.45),var(--role-color,rgba(56,189,248,0.28)));border-color:var(--role-border,rgba(148,163,184,0.55));color:var(--role-text,#f0f6ff);box-shadow:0 6px 20px var(--role-shadow,rgba(56,189,248,0.22));}
.bis-full-nav-link:focus-visible{outline:2px solid var(--role-border,rgba(148,163,184,0.55));outline-offset:2px;}
.bis-full-content{display:flex;flex-direction:column;gap:16px;max-height:70vh;overflow-y:auto;padding-right:6px;}
.bis-full-spec{background:rgba(15,23,42,0.62);border:1px solid rgba(148,163,184,0.25);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:14px;box-shadow:0 10px 26px rgba(0,0,0,0.28);}
.bis-full-spec h3{margin:0;font-size:18px;color:#e2e8f0;}
.bis-full-phase{display:flex;flex-direction:column;gap:6px;background:rgba(10,19,32,0.6);border:1px solid rgba(148,163,184,0.2);border-radius:10px;padding:12px;box-shadow:0 6px 18px rgba(0,0,0,0.22);}
.bis-full-phase h4{margin:0;font-size:14px;color:#e2e8f0;text-transform:uppercase;letter-spacing:.05em;}
.bis-full-phase .bis-table{margin-top:4px;}
.bis-full-phase + .bis-full-phase{margin-top:10px;}

@media (max-width: 1024px){
  .bis-full-modal{grid-template-columns:1fr;max-height:75vh;}
  .bis-full-nav{position:relative;flex-direction:row;flex-wrap:wrap;gap:8px;max-height:none;padding-right:0;}
  .bis-full-content{max-height:60vh;padding-right:0;}
}

@media (max-width: 640px){
  .bis-hero{min-height:160px;}
  .bis-hero-overlay{padding:22px 20px;}
  .bis-hero-title{flex-direction:column;align-items:flex-start;gap:10px;}
  .bis-hero-title h2{font-size:22px;}
  .bis-hero-meta{font-size:12px;}
  .bis-filters{flex-direction:column;}
  .bis-spec-tabs{justify-content:flex-start;}
  .bis-full-nav{flex-direction:column;}
  .bis-full-content{max-height:55vh;}
}






