/* Guild page (/g/<name>/) in the unified design. Builds on unified-guilds.css tokens (.wgu). */
.wgp{max-width:1280px;margin:0 auto}
.wgp-crumbs{display:flex;align-items:center;gap:8px;margin:0 0 14px;font-size:13px;color:var(--wgu-mute)}
.wgu .wgp-crumbs a{color:#c8ccd6!important}.wgu .wgp-crumbs a:hover{color:var(--wgu-gold)!important}
.wgp-crumbs span:last-child{color:#e6e8ee;font-weight:600}

/* Hero: banner, crest, name, actions. */
.wgp-hero{position:relative;margin:0 0 14px;border-radius:16px;border:2px solid transparent;background:linear-gradient(180deg,#221c0d 0%,#181a1f 55%,#161a21 100%) padding-box,linear-gradient(120deg,#8a6418,#f8d25a 25%,#b8862a 50%,#ffe28a 75%,#8a6418) border-box;box-shadow:0 18px 50px -24px rgba(245,195,59,.45);overflow:hidden}
.wgp-banner{--wgu-banner:linear-gradient(135deg,#2c5aa0,#e0b33a);height:170px;background:var(--wgu-banner);background-size:cover;background-position:center}
.wgp-banner[style*="background-image"]{background-color:#111}
.wgp-hero-body{display:flex;flex-wrap:wrap;align-items:flex-end;gap:14px 22px;padding:0 24px 22px}
.wgp-crest{flex:0 0 auto;width:120px;height:120px;margin-top:-60px;border-radius:50%;border:4px solid #1b1a17;background:#111;box-shadow:0 0 0 2px var(--wgu-gold),0 0 30px rgba(245,195,59,.45);overflow:hidden;display:flex;align-items:center;justify-content:center}
.wgu .wgp-crest img{width:100%!important;height:100%!important;max-width:none!important;margin:0!important;object-fit:cover}
.wgp-crest span{font-size:38px;font-weight:800;color:#e6e8ee}
.wgp-title{flex:1 1 260px;min-width:0}
.wgp-badge{display:inline-flex;align-items:center;gap:5px;height:22px;padding:0 9px;border-radius:6px;background:rgba(245,195,59,.12);color:var(--wgu-gold);font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.wgu .wgp-title h1{margin:8px 0 2px;font-size:clamp(28px,4vw,42px);line-height:1.1;font-weight:800;color:#fff;overflow-wrap:anywhere}
.wgp-title p{margin:0;color:var(--wgu-mute);font-size:15px}
.wgp-actions{display:flex;flex-wrap:wrap;gap:8px}
.wgu a.wgp-btn{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 15px;border-radius:10px;border:1px solid #2f3542;background:#1c212b;color:#fff!important;font-size:14px;font-weight:700;white-space:nowrap;transition:border-color .15s,filter .15s}
.wgu a.wgp-btn:hover{border-color:var(--wgu-gold)!important;filter:brightness(1.1)}
.wgu a.wgp-btn.is-discord{background:#5865f2;border-color:#5865f2}
.wgu a.wgp-btn.is-discord:hover{border-color:#fff!important}
.wgp-btn svg{flex:0 0 auto}
.wgp-dc-count{display:inline-flex;align-items:center;gap:5px;margin-left:2px;padding:0 8px;height:24px;border-radius:7px;background:rgba(0,0,0,.22);font-size:12.5px;font-weight:800}
.wgp-dc-count i,.wgp-dot{display:inline-block;width:7px;height:7px;margin-left:3px;border-radius:50%;background:#3ba55d;box-shadow:0 0 0 2px rgba(59,165,93,.25)}
.wgu a.wgp-btn.is-raiderio:before,.wgu a.wgp-btn.is-wcl:before{content:"";width:18px;height:18px;background:center/contain no-repeat}
.wgu a.wgp-btn.is-raiderio:before{background-image:url("https://wowhub.com.ua/img/raiderio.png")}
.wgu a.wgp-btn.is-wcl:before{background-image:url("https://wowhub.com.ua/img/warcraftlogs.png")}
.wgu a.wgp-btn.is-ghost{background:transparent;color:#c8ccd6!important}

/* Key numbers. */
.wgp-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:0 0 14px}
.wgp-stat{padding:14px 16px;border-radius:12px;border:1px solid var(--wgu-line);background:var(--wgu-card);min-width:0}
.wgp-stat span{display:block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--wgu-mute)}
.wgp-stat strong{display:block;margin-top:6px;font-size:22px;font-weight:800;line-height:1.15;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wgp-stat small{font-size:12px;font-weight:600;color:var(--wgu-mute);margin-left:4px}
.wgp-stat.is-m strong{color:#ff8a5b}.wgp-stat.is-h strong{color:#b57cff}.wgp-stat.is-n strong{color:#5fd38d}
.wgp-stat.is-good strong{color:#22c55e}.wgp-stat.is-watch strong{color:#eab308}.wgp-stat.is-warn strong{color:#f97316}.wgp-stat.is-bad strong{color:#ef4444}
.wgp-stat.is-index{cursor:help}

/* Panels. */
.wgp-panel{margin:0 0 14px;padding:20px 22px;border-radius:14px;border:1px solid var(--wgu-line);background:var(--wgu-card)}
.wgu .wgp-h{margin:0 0 14px;font-size:18px;font-weight:800;color:#fff;line-height:1.2}
.wgp-muted{margin:0;color:var(--wgu-mute)}
.wgp-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,1fr);gap:14px;align-items:start}
.wgp-side .wgp-panel:last-child{margin-bottom:0}
.wgp-grid>.wgp-panel{margin-bottom:14px}
.wgp-prose{color:#cfd3dc;font-size:15px;line-height:1.7;overflow-wrap:anywhere}
.wgp-prose p{margin:0 0 12px}.wgp-prose p:last-child{margin:0}
.wgu .wgp-prose a{color:var(--wgu-gold)!important}

/* Entry rules: the card chips with their explanations. */
.wgp-rules{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.wgp-rules li{position:relative;margin:0;padding:10px 12px 10px 36px;border-radius:10px;background:rgba(148,156,175,.07)}
.wgp-rules li:before{content:"";position:absolute;left:13px;top:15px;width:8px;height:8px;border-radius:50%;background:#7d8394}
.wgp-rules li.is-good{background:rgba(95,211,141,.08)}
.wgp-rules li.is-good:before{left:11px;top:12px;width:14px;height:14px;border-radius:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath fill='none' d='M2.2 6.4l2.4 2.4 5.2-5.4' stroke='%2386dca8' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/14px no-repeat}
.wgp-rules strong{display:block;font-size:14px;color:#e6e8ee}
.wgp-rules li.is-good strong{color:#9fe6bb}
.wgp-rules span{display:block;margin-top:2px;font-size:12.5px;line-height:1.45;color:var(--wgu-mute)}

/* Raid progress: a row of boss pips per difficulty. */
.wgp-raids{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px}
.wgp-raid{padding:14px 16px;border-radius:12px;background:#11151d;border:1px solid #222937}
.wgp-raid header{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin:0 0 10px}
.wgu .wgp-raid h3{margin:0;font-size:15px;font-weight:800;color:#fff}
.wgp-raid header span{font-size:12px;color:var(--wgu-mute);white-space:nowrap}
.wgp-diff{display:grid;grid-template-columns:62px 1fr 40px;align-items:center;gap:10px;margin:6px 0 0;font-size:12.5px}
.wgp-diff span{color:#c8ccd6;font-weight:700}
.wgp-diff b{text-align:right;color:#fff}
.wgp-bar{display:flex;gap:3px}
.wgp-bar i{flex:1 1 0;height:8px;border-radius:3px;background:#262d3b}
.wgp-diff.is-m .wgp-bar i.is-on{background:linear-gradient(90deg,#ff7a45,#ff9a6b)}
.wgp-diff.is-h .wgp-bar i.is-on{background:linear-gradient(90deg,#9b5cff,#c08bff)}
.wgp-diff.is-n .wgp-bar i.is-on{background:linear-gradient(90deg,#3fbf73,#6ee39b)}
.wgp-diff.is-zero{opacity:.5}

/* Composition: roles, classes, best M+ players. */
.wgp-compo{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.4fr) minmax(240px,1fr);gap:18px;align-items:start}
.wgp-roles{display:grid;gap:8px}
.wgp-role{position:relative;display:flex;align-items:baseline;gap:8px;padding:10px 12px;border-radius:10px;background:#11151d;overflow:hidden}
.wgp-role strong{font-size:22px;font-weight:800;color:#fff;position:relative}
.wgp-role span{color:var(--wgu-mute);font-weight:700;position:relative}
.wgp-role i{position:absolute;left:0;bottom:0;height:3px;width:var(--w);background:currentColor}
.wgp-role.is-tank{color:#4ea1ff}.wgp-role.is-healer{color:#5fd38d}.wgp-role.is-dps{color:#ff7a6b}
.wgp-classes{display:grid;gap:5px}
.wgp-class{display:grid;grid-template-columns:130px 1fr 34px;align-items:center;gap:8px;font-size:13px}
.wgp-class span{color:var(--c);font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wgp-class i{height:8px;border-radius:4px;background:linear-gradient(90deg,var(--c) var(--w),#232a38 var(--w));opacity:.9}
.wgp-class b{text-align:right;color:#e6e8ee}
.wgp-top{padding:12px 14px;border-radius:12px;background:#11151d}
.wgu .wgp-top h3{margin:0 0 8px;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--wgu-mute)}
.wgp-top-row{display:grid;grid-template-columns:20px 1fr auto;grid-template-rows:auto auto;column-gap:8px;padding:6px 0;border-top:1px solid #1f2533}
.wgp-top-row:first-of-type{border-top:0}
.wgp-top-row em{grid-row:1/3;align-self:center;font-style:normal;font-weight:800;color:var(--wgu-gold)}
.wgp-top-row span{font-weight:800}
.wgp-top-row small{grid-column:2;color:var(--wgu-mute);font-size:12px}
.wgp-top-row b{grid-column:3;grid-row:1/3;align-self:center;color:#fff;font-size:15px}

/* Roster table (same JS as the old page: wowhub-guild-single.js). */
.wgp-roster-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin:0 0 12px}
.wgp-roster-head .wgp-h{margin:0}
.wgp-roster-tools{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.wgp-roster-tools .wgu-search{flex:0 1 260px}
.wgp-tabs{display:flex;gap:2px;padding:3px;border:1px solid #232a38;border-radius:10px;background:#121620}
.wgu .wgp-tabs button{height:30px;margin:0!important;padding:0 12px;border:0!important;border-radius:7px;background:transparent!important;color:#c8ccd6!important;font-weight:700;cursor:pointer}
.wgu .wgp-tabs button:hover{background:#1a1f2b!important;color:#fff!important}
.wgu .wgp-tabs button.is-active{background:rgba(245,195,59,.12)!important;color:var(--wgu-gold)!important}
.wgp-table-wrap{overflow-x:auto;border-radius:10px;border:1px solid #222937}
.wgu .wgp-table{width:100%;margin:0;border-collapse:collapse;font-size:13.5px;background:transparent}
.wgu .wgp-table th{position:sticky;top:0;padding:10px 12px;border:0;background:#11151d;color:var(--wgu-mute);font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;text-align:left;white-space:nowrap;cursor:pointer;user-select:none}
.wgu .wgp-table th:hover{color:#fff}
.wgu .wgp-table th.is-sorted{color:var(--wgu-gold)}
.wgu .wgp-table th.is-asc:after{content:" ↑"}.wgu .wgp-table th.is-desc:after{content:" ↓"}
.wgu .wgp-table td{padding:9px 12px;border:0;border-top:1px solid #1f2533;color:#cfd3dc;vertical-align:middle;background:transparent}
.wgu .wgp-table tr:hover td{background:#171c26}
.wgp-table td strong{display:block;font-weight:800}
.wgp-table td span{display:block;font-size:12px;color:var(--wgu-mute)}
.wgu .wgp-table td a{color:var(--wgu-gold)!important;font-weight:700}
.wgp-table td b{color:#fff}
.wgp-role-tag{display:inline-block;padding:2px 7px;border-radius:5px;font-style:normal;font-size:11.5px;font-weight:700;background:rgba(148,156,175,.1)}
.wgp-role-tag.is-tank{color:#7ab8ff}.wgp-role-tag.is-healer{color:#86dca8}.wgp-role-tag.is-dps{color:#ff9a8d}
.wgu .wgp-table td .wgp-pvp{display:inline-flex;gap:4px;margin:0 4px 2px 0;padding:2px 6px;border-radius:5px;background:rgba(148,156,175,.1);color:#e6e8ee;font-size:12px}
.wgp-pvp b{color:var(--wgu-mute)}
.wgp-pager{display:flex;align-items:center;justify-content:center;gap:12px;margin:12px 0 0;color:var(--wgu-mute)}
.wgu .wgp-pager button{height:34px;margin:0!important;padding:0 14px;border-radius:9px;border:1px solid #2f3542!important;background:#1c212b!important;color:#fff!important;font-weight:700;cursor:pointer}
.wgu .wgp-pager button:hover{border-color:var(--wgu-gold)!important}
.wgu .wgp-pager button[disabled]{opacity:.4;cursor:default}

@media (max-width:1100px){.wgp-compo{grid-template-columns:1fr 1fr}.wgp-top{grid-column:1/-1}}
@media (max-width:900px){.wgp-grid{grid-template-columns:1fr}}
@media (max-width:640px){
  .wgp-banner{height:110px}
  .wgp-hero-body{padding:0 16px 16px;justify-content:center;text-align:center}
  .wgp-crest{width:96px;height:96px;margin-top:-48px}
  .wgp-title{flex-basis:100%}
  .wgp-actions{justify-content:center}
  .wgp-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .wgp-compo{grid-template-columns:1fr}
  .wgp-panel{padding:16px}
  .wgp-roster-tools,.wgp-roster-tools .wgu-search{flex:1 1 100%}
}
.wgp-h-note{margin-left:8px;font-size:12px;font-weight:600;color:var(--wgu-mute)}
.wgp-stat .wgp-stat-note{display:block;margin:4px 0 0;font-size:12px;color:var(--wgu-mute);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wgp-main>.wgp-panel:last-child,.wgp-side>.wgp-panel:last-child{margin-bottom:0}.wgp-grid{margin-bottom:14px}
/* Recruiting block from wowhub-lfg (render_guild_recruiting markup) in the new design. */
.wgp-lfg .wg-lfg-recruit-card{position:relative;padding:16px 18px 18px;border-radius:12px;background:linear-gradient(135deg,rgba(95,211,141,.1),rgba(95,211,141,.02) 60%);border:1px solid rgba(95,211,141,.22);border-left:3px solid #4fc982}
.wgp-lfg .wg-lfg-recruit-head{display:flex;flex-direction:column;gap:4px;margin:0 0 8px}
.wgp-lfg .wg-lfg-recruit-head span{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:#6ee39b}
.wgp-lfg .wg-lfg-recruit-head span:before{content:"";width:7px;height:7px;border-radius:50%;background:#3ba55d;box-shadow:0 0 0 3px rgba(59,165,93,.25)}
.wgp-lfg .wg-lfg-recruit-head strong{font-size:18px;font-weight:800;line-height:1.25;color:#fff}
.wgp-lfg .wg-lfg-recruit-card p{margin:0 0 14px;color:#b9bfcb;font-size:14px;line-height:1.6}
.wgp-lfg .wg-lfg-recruit-card dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;margin:0 0 16px}
.wgp-lfg .wg-lfg-recruit-card dl div{margin:0;padding:9px 11px;border-radius:9px;background:rgba(11,14,19,.45);border:1px solid #232a38}
.wgp-lfg .wg-lfg-recruit-card dt{margin:0 0 3px;font-size:10.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--wgu-mute)}
.wgp-lfg .wg-lfg-recruit-card dd{margin:0;padding:0;font-size:14px;font-weight:700;color:#e6e8ee}
.wgu .wgp-lfg a.wg-lfg-recruit-link{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:40px;padding:0 20px;border-radius:10px;background:var(--wgu-gold);color:#111!important;font-size:14px;font-weight:800;transition:filter .15s}
.wgu .wgp-lfg a.wg-lfg-recruit-link:after{content:"→"}
.wgu .wgp-lfg a.wg-lfg-recruit-link:hover{filter:brightness(1.08)}
.wgp-lfg .wg-posts-empty{padding:14px 16px;border-radius:12px;border:1px dashed #2f3747;color:var(--wgu-mute);font-size:14px;line-height:1.6}
.wgu .wgp-lfg a.wg-lfg-recruit-create{display:block;margin-top:4px;color:var(--wgu-gold)!important;font-weight:700}
/* BeTheme centres table cells: the roster reads left to right. */
.wgu .wgp-table th,.wgu .wgp-table td{text-align:left!important}
.wgu .wgp-table th[data-sort-type="number"],.wgu .wgp-table td:nth-child(4),.wgu .wgp-table td:nth-child(5){text-align:left!important}
/* Roster head: title left, search and tabs in one row on the right. */
.wgp-roster-head{align-items:center}
.wgp-roster-tools{flex-wrap:nowrap}
.wgp-roster-tools .wgu-search{flex:0 0 240px;width:240px}
@media (max-width:640px){.wgp-roster-tools{flex-wrap:wrap}.wgp-roster-tools .wgu-search{flex:1 1 100%;width:auto}}
/* Long values (Classic version, Discord counts) wrap instead of being cut. */
.wgp-stat strong{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;font-size:19px}
.wgp-raids-text{margin:0;color:#cfd3dc;font-size:15px;line-height:1.7}
