/* Community directory and role guide */
.community-side-link{position:fixed;left:14px;top:50%;transform:translateY(-50%);z-index:44;display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid rgba(96,165,250,.34);border-radius:14px;background:rgba(10,20,38,.9);backdrop-filter:blur(14px);box-shadow:0 16px 45px rgba(0,0,0,.35);color:#bfdbfe;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;transition:.2s}
.community-side-link:hover{color:#fff;border-color:rgba(248,183,0,.55);transform:translateY(-50%) translateX(2px)}
.community-side-link .role-dot{width:9px;height:9px;border-radius:999px;background:linear-gradient(135deg,#60a5fa,#a78bfa);box-shadow:0 0 16px rgba(96,165,250,.8)}
.community-role-modal{position:fixed;inset:0;z-index:130;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(0,0,0,.78);backdrop-filter:blur(8px)}
.community-role-modal.is-open{display:flex}
.community-role-card{width:min(680px,100%);max-height:86vh;overflow:auto;border:1px solid rgba(96,165,250,.28);border-radius:24px;background:linear-gradient(160deg,#101d32,#07111f);box-shadow:0 30px 90px rgba(0,0,0,.55)}
.community-role-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:22px 24px;border-bottom:1px solid rgba(255,255,255,.08)}
.community-role-body{padding:20px 24px 24px}
.community-role-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.community-role-entry{display:flex;gap:12px;align-items:center;padding:14px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:rgba(255,255,255,.025)}
.community-role-icon{width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:17px;font-weight:900;border:1px solid currentColor;background:rgba(255,255,255,.04)}
.community-role-entry[data-role="1"]{color:#60a5fa}.community-role-entry[data-role="2"]{color:#22d3ee}.community-role-entry[data-role="3"]{color:#f59e0b}.community-role-entry[data-role="4"]{color:#f472b6}
.community-role-entry h4{font-size:13px;font-weight:900;color:currentColor;margin:0}.community-role-entry p{font-size:10px;line-height:1.55;color:#94a3b8;margin:3px 0 0}
.community-directory{max-width:1150px;margin:0 auto;padding:22px}
.community-directory-header{padding:24px;border:1px solid rgba(96,165,250,.25);border-radius:22px;background:linear-gradient(135deg,rgba(30,64,175,.18),rgba(15,23,42,.88));margin-bottom:18px}
.community-directory-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:13px}
.community-user-card{display:flex;align-items:center;gap:13px;padding:15px;border:1px solid rgba(148,163,184,.16);border-radius:18px;background:linear-gradient(150deg,rgba(15,29,50,.96),rgba(7,15,27,.98));box-shadow:0 12px 32px rgba(0,0,0,.18);transition:.2s}
.community-user-card:hover{transform:translateY(-2px);border-color:rgba(96,165,250,.38)}
.community-user-avatar{width:54px;height:54px;flex:0 0 54px;border-radius:50%;object-fit:cover;border:2px solid rgba(96,165,250,.35);background:#172033}
.community-user-fallback{display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:900;color:#fff}
.community-user-name{font-size:14px;font-weight:900;color:#f8fafc;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.community-user-date{font-size:10px;color:#64748b;margin-top:3px}
.community-role-badge{display:inline-flex;align-items:center;gap:6px;margin-top:7px;padding:4px 9px;border-radius:999px;border:1px solid currentColor;font-size:9px;font-weight:900;letter-spacing:.05em;text-transform:uppercase}
.community-role-badge.role-1{color:#60a5fa;background:rgba(59,130,246,.11)}.community-role-badge.role-2{color:#22d3ee;background:rgba(6,182,212,.11)}.community-role-badge.role-3{color:#f59e0b;background:rgba(245,158,11,.11)}.community-role-badge.role-4{color:#f472b6;background:rgba(236,72,153,.11)}
@media(max-width:900px){.community-side-link{left:auto;right:12px;top:auto;bottom:78px;transform:none}.community-side-link:hover{transform:translateY(-2px)}.community-side-link .label{display:none}.community-role-grid{grid-template-columns:1fr}.community-directory{padding:14px}}

/* Grouped language-scoped user directory */
.community-role-sections{display:flex;flex-direction:column;gap:1.25rem}
.community-role-section{border:1px solid rgba(148,163,184,.14);background:rgba(7,15,28,.42);border-radius:1.25rem;padding:1rem}
.community-role-section-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.85rem;padding-bottom:.75rem;border-bottom:1px solid rgba(148,163,184,.12)}
.community-role-section-title{display:flex;align-items:center;gap:.65rem;font-size:.72rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase;color:#dbeafe}
.community-role-section-dot{width:.65rem;height:.65rem;border-radius:999px;background:#60a5fa;box-shadow:0 0 14px rgba(96,165,250,.5)}
.community-role-section-count{display:inline-flex;min-width:1.8rem;height:1.8rem;align-items:center;justify-content:center;border-radius:999px;border:1px solid rgba(148,163,184,.18);background:rgba(15,23,42,.72);font-size:.68rem;font-weight:900;color:#cbd5e1}
.role-section-4 .community-role-section-dot{background:#f472b6;box-shadow:0 0 14px rgba(244,114,182,.55)}
.role-section-3 .community-role-section-dot{background:#fbbf24;box-shadow:0 0 14px rgba(251,191,36,.5)}
.role-section-2 .community-role-section-dot{background:#22d3ee;box-shadow:0 0 14px rgba(34,211,238,.5)}
.role-section-1 .community-role-section-dot{background:#60a5fa;box-shadow:0 0 14px rgba(96,165,250,.5)}
.community-role-section .community-directory-grid{margin:0}
@media (max-width:640px){.community-role-section{padding:.75rem}.community-role-section-title{font-size:.65rem}}


/* v7: stały lewy panel użytkownika; usunięty przewijany nagłówek strony */
@media (min-width: 769px) {
  .app-topbar, .wow-blueprint-topbar { display:none !important; }
  .app-main { padding-top:18px !important; }
  .workspace-frame { margin-top:0 !important; }
  .sidebar-user-brand {
    min-height:0 !important;
    padding:16px !important;
    display:grid !important;
    grid-template-columns:52px minmax(0,1fr) !important;
    gap:12px !important;
    align-items:center !important;
    overflow:visible !important;
  }
  .sidebar-user-avatar { width:52px; height:52px; position:relative; }
  .sidebar-user-avatar img,
  .sidebar-user-initial { width:52px; height:52px; border-radius:16px; border:1px solid rgba(118,230,255,.28); object-fit:cover; }
  .sidebar-user-initial { display:flex; align-items:center; justify-content:center; background:linear-gradient(145deg,#17325d,#0b172b); color:#fff; font-weight:900; font-size:18px; }
  .sidebar-user-copy { min-width:0; }
  .sidebar-user-copy h1 { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:16px !important; }
  .sidebar-user-copy > p:last-child { margin-top:2px; color:#7f91aa; font-size:11px; }
  .sidebar-user-kicker { margin:0 0 3px; color:#83cfff !important; font-size:9px !important; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
  .sidebar-user-actions { grid-column:1/-1; display:grid; grid-template-columns:1fr 1fr; gap:8px; width:100%; }
  .sidebar-user-actions a,
  .sidebar-user-actions button { min-height:38px !important; padding:8px 10px !important; border-radius:11px; border:1px solid rgba(85,118,166,.55); background:rgba(10,26,49,.78); color:#dcecff; display:flex; align-items:center; justify-content:center; gap:7px; font-size:12px; font-weight:800; }
  .sidebar-user-actions a:hover,
  .sidebar-user-actions button:hover { border-color:#4aa8ff; background:rgba(29,78,216,.22); }
  .sidebar-footer-actions { display:grid !important; grid-template-columns:1fr; gap:7px; }
  .sidebar-footer-actions > a,
  .sidebar-footer-actions > button { width:100%; min-height:38px !important; justify-content:flex-start !important; border-radius:11px; }
  .sidebar-footer-actions .sidebar-logout { color:#fca5a5 !important; }
}
@media (max-width: 768px) {
  .sidebar-user-brand { min-height:0 !important; }
  .sidebar-user-actions { display:grid; grid-template-columns:1fr 1fr; gap:8px; grid-column:1/-1; }
  .sidebar-user-actions a,.sidebar-user-actions button { min-height:40px; display:flex; align-items:center; justify-content:center; gap:6px; border:1px solid rgba(85,118,166,.55); border-radius:10px; }
}


/* v8: uporządkowana karta użytkownika i czytelne elementy bocznego panelu */
.sidebar-user-brand {
  min-height: 0 !important;
  padding: 14px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 12px !important;
  overflow: visible !important;
}
.sidebar-user-identity {
  display: grid !important;
  grid-template-columns: 46px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 11px !important;
  width: 100% !important;
  min-width: 0 !important;
}
.sidebar-user-avatar {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 46px !important;
  height: 46px !important;
  min-width: 46px !important;
  overflow: hidden !important;
  border-radius: 14px !important;
}
.sidebar-user-avatar img,
.sidebar-user-initial {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 46px !important;
  height: 46px !important;
  min-width: 46px !important;
  border-radius: 14px !important;
  object-fit: cover !important;
}
.sidebar-user-copy {
  min-width: 0 !important;
  width: 100% !important;
}
.sidebar-user-copy .sidebar-user-kicker {
  margin: 0 0 4px !important;
  padding: 0 !important;
  font-size: 9px !important;
  line-height: 1.45 !important;
  font-weight: 900 !important;
  letter-spacing: .11em !important;
  color: #8dcfff !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}
.sidebar-user-copy h1 {
  margin: 0 !important;
  max-width: 100% !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  font-size: 15px !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}
.sidebar-user-actions {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px !important;
  width: 100% !important;
  min-width: 0 !important;
}
.sidebar-user-actions a,
.sidebar-user-actions button {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 36px !important;
  padding: 8px 9px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  border: 1px solid rgba(85,118,166,.55) !important;
  border-radius: 10px !important;
  background: rgba(10,26,49,.78) !important;
  color: #dcecff !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
.sidebar-user-actions a:hover,
.sidebar-user-actions button:hover {
  border-color: #4aa8ff !important;
  background: rgba(29,78,216,.22) !important;
}
.sidebar-nav a > span.flex-1 {
  min-width: 0 !important;
  overflow-wrap: anywhere !important;
}
@media (max-width: 768px) {
  .sidebar-user-brand { padding: 13px !important; }
  .sidebar-user-identity { grid-template-columns: 44px minmax(0,1fr) !important; }
  .sidebar-user-avatar,
  .sidebar-user-avatar img,
  .sidebar-user-initial { width:44px !important; height:44px !important; min-width:44px !important; }
}


/* v9: language flag and polished sidebar utility actions */
.sidebar-user-kicker {
  display: flex !important;
  align-items: flex-start !important;
  gap: 6px !important;
}
.sidebar-user-flag {
  flex: 0 0 20px;
  display: inline-block;
  width: 20px;
  min-width: 20px;
  height: 14px;
  margin-top: 0;
  border-radius: 3px;
  border: 1px solid rgba(255,255,255,.45);
  background-size: 100% 100% !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.26), 0 1px 3px rgba(0,0,0,.5);
  overflow: hidden;
}
.sidebar-user-kicker > span:last-child {
  min-width: 0;
  overflow-wrap: anywhere;
}
.sidebar-footer-actions {
  padding-top: 2px !important;
}
.sidebar-footer-actions > .sidebar-panel-action,
.sidebar-footer-actions > .sidebar-logout {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  min-height: 43px !important;
  padding: 10px 13px !important;
  border-radius: 13px !important;
  font-size: 12px !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  letter-spacing: .01em !important;
  text-align: center !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 10px 24px rgba(0,0,0,.16) !important;
  transition: transform .18s ease, border-color .18s ease, filter .18s ease, box-shadow .18s ease !important;
}
.sidebar-footer-actions > .sidebar-panel-action::before,
.sidebar-footer-actions > .sidebar-logout::before {
  content: '';
  position: absolute;
  z-index: -1;
  inset: 0;
  opacity: .96;
}
.sidebar-footer-actions > .sidebar-panel-action:hover,
.sidebar-footer-actions > .sidebar-logout:hover {
  transform: translateY(-1px);
  filter: brightness(1.07);
}
.sidebar-footer-actions > .sidebar-panel-action-admin {
  color: #fff4c4 !important;
  border: 1px solid rgba(251,191,36,.42) !important;
}
.sidebar-footer-actions > .sidebar-panel-action-admin::before {
  background: linear-gradient(135deg, rgba(146,64,14,.82), rgba(92,45,12,.72) 46%, rgba(30,41,59,.9));
}
.sidebar-footer-actions > .sidebar-panel-action-admin:hover {
  border-color: rgba(251,191,36,.72) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 12px 28px rgba(180,83,9,.2) !important;
}
.sidebar-footer-actions > .sidebar-panel-action-moderator {
  color: #dff8ff !important;
  border: 1px solid rgba(34,211,238,.38) !important;
}
.sidebar-footer-actions > .sidebar-panel-action-moderator::before {
  background: linear-gradient(135deg, rgba(8,84,116,.86), rgba(21,94,117,.65) 48%, rgba(30,41,59,.9));
}
.sidebar-footer-actions > .sidebar-panel-action-moderator:hover {
  border-color: rgba(103,232,249,.72) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 12px 28px rgba(8,145,178,.18) !important;
}
.sidebar-footer-actions > .sidebar-logout {
  color: #ffe4e6 !important;
  border: 1px solid rgba(251,113,133,.38) !important;
}
.sidebar-footer-actions > .sidebar-logout::before {
  background: linear-gradient(135deg, rgba(127,29,29,.88), rgba(76,29,43,.78) 52%, rgba(30,41,59,.92));
}
.sidebar-footer-actions > .sidebar-logout:hover {
  color: #fff !important;
  border-color: rgba(253,164,175,.72) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 12px 28px rgba(190,24,93,.18) !important;
}
