
:root {
  --gp-bg: #0d0d14;
  --gp-card: #12121f;
  --gp-card-elevated: #1a1a2e;
  --gp-accent: #7c3aed;
  --gp-accent-hover: #6d28d9;
  --gp-gold: #f59e0b;
  --gp-danger: #ef4444;
  --gp-danger-hover: #dc2626;
  --gp-success: #10b981;
  --gp-text: #f1f1f5;
  --gp-muted: #9898b0;
  --gp-border: rgba(255,255,255,0.08);
}
html { margin-top: 0 !important; }
body:not(.wp-admin) #wpadminbar { display: none !important; }

.gp-auth-box { max-width: 480px; margin: 40px auto; background: var(--gp-card); border: 1px solid var(--gp-border); border-radius: 16px; padding: 32px; color: var(--gp-text); box-shadow: 0 8px 32px rgba(0,0,0,0.5); font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; }
.gp-box-title { color: #fff; margin-top: 0; font-size: 24px; font-weight: 700; margin-bottom: 20px; text-align: center; }
.gp-subtitle { color: var(--gp-muted); font-size: 14px; margin-bottom: 20px; text-align: center; }
.gp-form-group { margin-bottom: 16px; text-align: left; }
.gp-form-group label { display: block; margin-bottom: 6px; font-size: 13px; color: var(--gp-muted); }
.gp-form-group input { width: 100%; padding: 12px 14px; background: rgba(0,0,0,0.3); border: 1px solid var(--gp-border); border-radius: 8px; color: #fff; box-sizing: border-box; }
.gp-btn-primary { width: 100%; padding: 14px; background: var(--gp-accent); color: #fff; border: none; border-radius: 8px; font-weight: bold; cursor: pointer; transition: 0.2s; }
.gp-btn-primary:hover { background: var(--gp-accent-hover); }
.gp-btn-danger { background: var(--gp-danger); color: #fff; border: none; border-radius: 8px; cursor: pointer; transition: 0.2s; }
.gp-btn-danger:hover { background: var(--gp-danger-hover); }
.gp-bonus-banner { display: flex; align-items: center; gap: 14px; background: rgba(245,158,11,0.1); border: 1px solid var(--gp-gold); padding: 12px 16px; border-radius: 10px; margin-bottom: 20px; color: var(--gp-gold); }
.gp-bonus-icon { font-size: 28px; }
.gp-form-footer { margin-top: 18px; font-size: 13px; color: var(--gp-muted); text-align: center; }
.gp-form-footer a { color: var(--gp-gold); text-decoration: none; }
.gp-notice { margin-top: 14px; padding: 12px; border-radius: 6px; display: none; font-size: 13px; text-align: center; line-height: 1.5; }
.gp-notice.success { background: rgba(16,185,129,0.2); color: #34d399; }
.gp-notice.error { background: rgba(239,68,68,0.2); color: #f87171; }

.gp-header-widget { display: flex; align-items: center; gap: 12px; position: relative; }
.gp-points-pill { display: flex; align-items: center; gap: 6px; background: #1a1a2e; border: 1px solid var(--gp-gold); padding: 6px 12px; border-radius: 20px; font-weight: bold; color: var(--gp-gold); font-size: 13px; }
.gp-add-points { background: var(--gp-gold); color: #000; width: 18px; height: 18px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; text-decoration: none; font-weight: bold; font-size: 14px; margin-left: 4px; }
.gp-header-avatar-wrap { display: flex; align-items: center; gap: 8px; cursor: pointer; position: relative; }
.gp-h-avatar { width: 34px; height: 34px; border-radius: 50%; object-fit: cover; border: 2px solid var(--gp-accent); }
.gp-dropdown-menu { display: none; position: absolute; right: 0; top: 120%; background: #1a1a2e; border: 1px solid var(--gp-border); border-radius: 8px; width: 160px; padding: 8px 0; box-shadow: 0 8px 24px rgba(0,0,0,0.5); z-index: 1000; }
.gp-header-avatar-wrap.active .gp-dropdown-menu { display: block; }
.gp-dropdown-menu a { display: block; padding: 8px 16px; color: var(--gp-text); text-decoration: none; font-size: 13px; }
.gp-dropdown-menu a:hover { background: rgba(255,255,255,0.05); }

.gp-profile-layout { max-width: 1100px; margin: 30px auto; padding: 0 20px; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; color: var(--gp-text); }
.gp-profile-hero { background: linear-gradient(135deg, #16162a 0%, #0f0f1d 100%); border: 1px solid var(--gp-border); border-radius: 20px; padding: 28px 32px; display: flex; justify-content: space-between; align-items: center; gap: 24px; box-shadow: 0 8px 32px rgba(0,0,0,0.4); margin-bottom: 24px; flex-wrap: wrap; }
.gp-hero-left { display: flex; align-items: center; gap: 24px; }
.gp-avatar-badge-wrap { position: relative; }
.gp-hero-avatar { width: 92px; height: 92px; border-radius: 50%; object-fit: cover; border: 3px solid var(--gp-accent); box-shadow: 0 0 20px rgba(124,58,237,0.3); }
.gp-online-dot { position: absolute; bottom: 4px; right: 4px; width: 16px; height: 16px; background: #10b981; border: 3px solid #16162a; border-radius: 50%; }
.gp-pill-role { background: rgba(124,58,237,0.2); color: #c4b5fd; font-size: 11px; font-weight: 700; text-transform: uppercase; padding: 3px 10px; border-radius: 12px; border: 1px solid rgba(124,58,237,0.4); }
.gp-hero-name { margin: 6px 0 4px; font-size: 26px; color: #fff; font-weight: 800; }
.gp-hero-handle { margin: 0; font-size: 13.5px; color: var(--gp-muted); }
.gp-hero-actions { display: flex; gap: 12px; }
.gp-hero-btn { padding: 10px 18px; border-radius: 8px; font-size: 13px; font-weight: 700; text-decoration: none; transition: 0.2s; }
.gp-hero-btn-edit { background: var(--gp-accent); color: #fff; }
.gp-hero-btn-edit:hover { background: var(--gp-accent-hover); }
.gp-hero-btn-logout { background: rgba(239,68,68,0.15); color: #f87171; border: 1px solid rgba(239,68,68,0.3); }
.gp-hero-btn-logout:hover { background: var(--gp-danger); color: #fff; }

.gp-stats-row { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 16px; margin-bottom: 24px; }
.gp-stat-card { background: var(--gp-card); border: 1px solid var(--gp-border); border-radius: 14px; padding: 20px; display: flex; align-items: center; gap: 16px; position: relative; box-shadow: 0 4px 16px rgba(0,0,0,0.2); }
.gp-card-gold { border-color: rgba(245,158,11,0.3); background: linear-gradient(135deg, #1b1928 0%, #151320 100%); }
.gp-stat-icon { font-size: 30px; }
.gp-stat-label { font-size: 12px; color: var(--gp-muted); text-transform: uppercase; font-weight: 600; display: block; }
.gp-stat-value { margin: 4px 0 0; font-size: 24px; color: #fff; font-weight: 800; }
.gp-stat-value small { font-size: 13px; color: var(--gp-gold); }
.gp-stat-action { position: absolute; top: 16px; right: 16px; background: var(--gp-gold); color: #000; width: 24px; height: 24px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-weight: 900; text-decoration: none; font-size: 16px; }

.gp-tabbed-section { background: var(--gp-card); border: 1px solid var(--gp-border); border-radius: 16px; padding: 24px; box-shadow: 0 4px 20px rgba(0,0,0,0.25); }
.gp-tab-nav { display: flex; gap: 10px; border-bottom: 1px solid var(--gp-border); padding-bottom: 14px; margin-bottom: 20px; overflow-x: auto; }
.gp-tbtn { background: transparent; border: none; color: var(--gp-muted); font-size: 14px; font-weight: 700; padding: 8px 16px; border-radius: 8px; cursor: pointer; transition: 0.2s; }
.gp-tbtn.active { background: var(--gp-card-elevated); color: var(--gp-gold); border: 1px solid var(--gp-border); }
.gp-tab-pane { display: none; }
.gp-tab-pane.active { display: block; }

.gp-empty-box { text-align: center; padding: 40px 20px; color: var(--gp-muted); }
.gp-empty-icon { font-size: 40px; display: block; margin-bottom: 10px; opacity: 0.5; }
.gp-activity-list { display: flex; flex-direction: column; gap: 10px; }
.gp-activity-row { display: flex; align-items: center; gap: 16px; background: rgba(0,0,0,0.25); border: 1px solid var(--gp-border); padding: 12px 18px; border-radius: 10px; font-size: 13.5px; }
.gp-act-badge { font-size: 10.5px; font-weight: 800; background: var(--gp-accent); color: #fff; padding: 3px 8px; border-radius: 4px; }
.gp-act-title { color: #fff; font-weight: 600; text-decoration: none; flex: 1; }
.gp-act-time { color: var(--gp-muted); font-size: 12px; }
.gp-act-btn { background: rgba(255,255,255,0.06); color: var(--gp-gold); padding: 6px 12px; border-radius: 6px; text-decoration: none; font-size: 12px; font-weight: 700; }

.gp-avatar-picker-section { display: flex; align-items: center; gap: 18px; margin-bottom: 20px; }
.gp-edit-avatar-preview { width: 64px; height: 64px; border-radius: 50%; object-fit: cover; border: 2px solid var(--gp-accent); }
.gp-custom-file-upload { display: inline-block; padding: 8px 14px; background: rgba(255,255,255,0.06); border: 1px solid var(--gp-border); border-radius: 6px; cursor: pointer; font-size: 13px; }
.gp-custom-file-upload input { display: none; }
.gp-file-hint { display: block; font-size: 11px; color: var(--gp-muted); margin-top: 4px; }
.gp-form-actions-bar { display: flex; gap: 10px; align-items: center; margin-top: 20px; }
.gp-btn-outline { padding: 12px 18px; border: 1px solid var(--gp-border); color: #fff; text-decoration: none; border-radius: 8px; font-size: 13px; font-weight: 600; }
.gp-btn-logout-link { padding: 12px 18px; background: rgba(255,255,255,0.06); color: var(--gp-muted); text-decoration: none; border-radius: 8px; font-size: 13px; font-weight: 600; }

.gp-danger-zone-card { margin-top: 36px; padding: 20px; border: 1px solid rgba(239,68,68,0.3); background: rgba(239,68,68,0.05); border-radius: 12px; }
.gp-dz-header h4 { margin: 0 0 6px 0; color: #ef4444; font-size: 15px; }
.gp-dz-desc { margin: 0 0 16px 0; font-size: 12.5px; color: var(--gp-muted); line-height: 1.5; }
.gp-danger-zone-card .gp-btn-danger { padding: 10px 18px; font-weight: bold; font-size: 13px; }

.gp-modal { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.75); display: flex; align-items: center; justify-content: center; z-index: 999999; }
.gp-modal-inner { background: #1a1a2e; border: 1px solid var(--gp-border); border-radius: 14px; width: 100%; max-width: 460px; padding: 24px; box-sizing: border-box; }
.gp-modal-top { display: flex; justify-content: space-between; align-items: center; border-bottom: 1px solid var(--gp-border); padding-bottom: 12px; }
.gp-close { background: none; border: none; font-size: 24px; color: var(--gp-muted); cursor: pointer; }

@media (max-width: 768px) {
  .gp-profile-hero { flex-direction: column; align-items: flex-start; }
  .gp-hero-left { flex-direction: column; align-items: flex-start; gap: 14px; }
  .gp-hero-actions { width: 100%; justify-content: stretch; }
  .gp-hero-btn { flex: 1; text-align: center; }
  .gp-activity-row { flex-wrap: wrap; }
}


/* Community messages trigger - additive only; preserves existing header layout. */
.gp-messages-trigger {
  position: relative;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  border: 1px solid var(--gp-border);
  background: #1a1a2e;
  color: var(--gp-text);
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 15px;
  padding: 0;
}
.gp-messages-trigger:hover { border-color: var(--gp-accent); color: #fff; }
.gp-messages-unread {
  position: absolute;
  top: -5px;
  right: -5px;
  min-width: 16px;
  height: 16px;
  padding: 0 3px;
  border-radius: 9px;
  background: #ef4444;
  color: #fff;
  font-size: 9px;
  font-weight: 800;
  line-height: 16px;
  text-align: center;
  box-sizing: border-box;
}
.gp-messages-launcher-inner { max-width: 520px; }
.gp-conversation-item {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 10px;
  text-align: left;
  background: rgba(255,255,255,0.035);
  border: 1px solid var(--gp-border);
  color: #fff;
  border-radius: 9px;
  padding: 10px 12px;
  margin-bottom: 8px;
  cursor: pointer;
}
.gp-conversation-item:hover { background: rgba(124,58,237,0.12); border-color: rgba(124,58,237,0.45); }
.gp-conversation-avatar { width: 30px; height: 30px; border-radius: 50%; display:flex; align-items:center; justify-content:center; background:rgba(124,58,237,0.16); flex-shrink:0; }
.gp-conversation-main { min-width:0; flex:1; display:flex; flex-direction:column; gap:3px; }
.gp-conversation-main strong { font-size: 13px; }
.gp-conversation-main small { color: var(--gp-muted); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; font-size:11px; }
.gp-conversation-unread { background:#ef4444; color:#fff; min-width:18px; height:18px; border-radius:10px; font-size:10px; display:flex; align-items:center; justify-content:center; }
.gp-private-chat-modal { max-width: 780px; padding:20px; }
.gp-private-chat-layout { display:block; min-height:430px; }
.gp-private-conversations { display:none; }
.gp-private-thread { display:flex; flex-direction:column; min-width:0; min-height:430px; }
.gp-private-thread-head { color:#fff; font-size:15px; font-weight:700; padding:10px 0 12px; border-bottom:1px solid var(--gp-border); }
.gp-private-messages { flex:1; overflow-y:auto; background:rgba(0,0,0,0.25); border:1px solid rgba(255,255,255,.05); border-radius:8px; padding:10px; min-height:340px; }
.gp-private-input-row { display:flex; gap:8px; margin-top:9px; }
.gp-private-input-row input { flex:1; min-width:0; min-height:40px; background:rgba(0,0,0,0.4); color:#fff; border:1px solid var(--gp-border); border-radius:6px; padding:9px 10px; }
.gp-private-input-row button { background:var(--gp-accent); color:#fff; border:0; border-radius:6px; padding:0 14px; min-width:72px; font-weight:700; cursor:pointer; }
.gp-private-input-row button:disabled { opacity:.55; cursor:wait; }
.gp-chat-inline-notice { margin-top:8px; padding:7px 9px; border-radius:6px; font-size:11px; line-height:1.4; }
.gp-chat-inline-notice.error { background:rgba(239,68,68,.15); color:#fca5a5; }
.gp-chat-inline-notice.success { background:rgba(16,185,129,.15); color:#6ee7b7; }
@media (max-width: 650px) {
  .gp-private-chat-layout { display:block; min-height:0; }
  .gp-private-thread { min-height:0; }
  .gp-private-messages { min-height:260px; }
}


/* Player Rankings - additive component; existing profile/auth UI remains untouched. */
.gp-player-ranks-page { max-width: 1080px; margin: 30px auto; padding: 0 16px 50px; color: var(--gp-text, #fff); }
.gp-ranks-hero { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:30px; margin-bottom:18px; border:1px solid var(--gp-border); border-radius:18px; background:linear-gradient(135deg, rgba(124,58,237,.20), rgba(10,10,16,.92)); box-shadow:0 18px 45px rgba(0,0,0,.20); }
.gp-ranks-kicker { display:inline-block; font-size:10px; font-weight:800; letter-spacing:2px; color:var(--gp-accent); margin-bottom:7px; }
.gp-ranks-hero h1 { margin:0 0 6px; font-size:30px; color:#fff; }
.gp-ranks-hero p { margin:0; color:var(--gp-muted); font-size:13px; }
.gp-ranks-total { min-width:105px; padding:14px 18px; text-align:center; border:1px solid rgba(255,255,255,.08); border-radius:13px; background:rgba(0,0,0,.25); }
.gp-ranks-total strong { display:block; font-size:25px; color:var(--gp-gold); }
.gp-ranks-total span { font-size:10px; color:var(--gp-muted); text-transform:uppercase; letter-spacing:1px; }
.gp-rank-list { display:flex; flex-direction:column; gap:9px; }
.gp-rank-row { display:grid; grid-template-columns:70px 52px minmax(180px,1fr) minmax(130px,190px) 125px; align-items:center; gap:14px; padding:13px 16px; border:1px solid var(--gp-border); border-radius:13px; background:rgba(255,255,255,.025); transition:.18s ease; }
.gp-rank-row:hover { transform:translateY(-1px); border-color:rgba(124,58,237,.45); background:rgba(124,58,237,.07); }
.gp-rank-position { font-size:13px; font-weight:800; color:var(--gp-muted); text-align:center; }
.gp-rank-avatar { width:48px; height:48px; border-radius:50%; object-fit:cover; border:2px solid rgba(255,255,255,.10); }
.gp-rank-player { min-width:0; display:flex; flex-direction:column; gap:3px; }
.gp-rank-player strong { color:#fff; font-size:14px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.gp-rank-player span { color:var(--gp-muted); font-size:11px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.gp-rank-title span { display:inline-flex; padding:7px 11px; border-radius:20px; background:rgba(245,158,11,.12); border:1px solid rgba(245,158,11,.28); color:var(--gp-gold); font-size:12px; font-weight:800; }
.gp-rank-points { text-align:right; display:flex; align-items:baseline; justify-content:flex-end; gap:5px; }
.gp-rank-points strong { color:#fff; font-size:17px; }
.gp-rank-points small { color:var(--gp-gold); font-size:9px; font-weight:800; }
.gp-rank-empty { padding:35px; text-align:center; color:var(--gp-muted); border:1px dashed var(--gp-border); border-radius:14px; }
@media (max-width:700px) {
  .gp-ranks-hero { padding:22px; align-items:flex-start; }
  .gp-ranks-hero h1 { font-size:24px; }
  .gp-ranks-total { min-width:75px; padding:10px; }
  .gp-rank-row { grid-template-columns:38px 44px minmax(0,1fr); gap:9px; }
  .gp-rank-title { grid-column:3; }
  .gp-rank-points { grid-column:3; justify-content:flex-start; text-align:left; }
}

/* Navigation + notification center */
.gp-header-widget-v2{position:relative;z-index:1000}.gp-header-widget-v2 .gp-h-name{display:none}.gp-header-widget-v2 .gp-header-avatar-wrap{width:36px;height:36px}.gp-header-widget-v2 .gp-h-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover}.gp-notification-trigger{position:relative;width:36px;height:36px;border-radius:50%;border:1px solid var(--gp-border);background:#1a1a2e;color:#fff;cursor:pointer}.gp-notification-trigger:hover{border-color:var(--gp-accent)}.gp-notification-unread{position:absolute;top:-5px;right:-5px;min-width:17px;height:17px;padding:0 4px;border-radius:10px;background:#ef4444;color:#fff;font-size:9px;font-weight:800;line-height:17px}.gp-notification-panel{position:absolute;right:0;top:46px;width:360px;max-width:calc(100vw - 24px);background:#161625;border:1px solid var(--gp-border);border-radius:14px;box-shadow:0 18px 50px rgba(0,0,0,.45);overflow:hidden}.gp-notification-head{display:flex;justify-content:space-between;align-items:center;padding:13px 15px;border-bottom:1px solid var(--gp-border);color:#fff}.gp-notification-head button{border:0;background:none;color:var(--gp-gold);font-size:11px;cursor:pointer}.gp-notification-item{display:flex;gap:10px;padding:12px 14px;border-bottom:1px solid rgba(255,255,255,.05);text-decoration:none;color:#fff}.gp-notification-item.unread{background:rgba(124,58,237,.09)}.gp-notification-item.promo{background:rgba(245,158,11,.08);border-left:3px solid var(--gp-gold)}.gp-notification-icon{width:30px;height:30px;border-radius:9px;display:flex;align-items:center;justify-content:center;background:rgba(124,58,237,.14);flex-shrink:0}.gp-notification-copy{min-width:0}.gp-notification-copy strong{display:block;font-size:12px}.gp-notification-copy span{display:block;color:var(--gp-muted);font-size:11px;line-height:1.4;margin-top:2px}.gp-notification-copy small{display:block;color:#66667e;font-size:9px;margin-top:4px}.gp-notification-empty{padding:30px;text-align:center;color:var(--gp-muted);font-size:12px}.gp-profile-messages-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.gp-profile-messages-head h3{margin:0;color:#fff}.gp-profile-messages-head p{margin:4px 0 0;color:var(--gp-muted);font-size:12px}.gp-profile-messages-list{display:flex;flex-direction:column;gap:8px}.gp-profile-message-row{display:flex;align-items:center;gap:12px;padding:13px;border:1px solid var(--gp-border);background:rgba(0,0,0,.22);border-radius:10px;cursor:pointer;text-align:left;color:#fff;width:100%}.gp-profile-message-row:hover{border-color:rgba(124,58,237,.5);background:rgba(124,58,237,.08)}.gp-profile-message-main{flex:1;min-width:0}.gp-profile-message-main strong{display:block}.gp-profile-message-main span{display:block;color:var(--gp-muted);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gp-profile-private-modal{position:fixed;inset:0;background:rgba(0,0,0,.78);z-index:999999;display:flex;align-items:center;justify-content:center;padding:15px}.gp-profile-private-box{width:min(760px,100%);background:#1a1a2e;border:1px solid var(--gp-border);border-radius:14px;padding:18px}.gp-profile-private-box .gp-private-messages{min-height:360px}.gp-profile-private-box .gp-modal-top{margin-bottom:10px}
@media(max-width:650px){.gp-notification-panel{right:-60px}.gp-profile-private-box{padding:12px}.gp-profile-private-box .gp-private-messages{min-height:300px}}

.gp-form-row-two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.gp-affiliate-profile-card{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;padding:22px;border-radius:18px;background:linear-gradient(135deg,rgba(124,58,237,.18),rgba(245,158,11,.08));border:1px solid rgba(124,58,237,.28);margin:20px 0}.gp-affiliate-icon{width:52px;height:52px;border-radius:16px;display:flex;align-items:center;justify-content:center;background:rgba(124,58,237,.2);font-size:25px}.gp-affiliate-kicker{font-size:10px;letter-spacing:.12em;color:#f59e0b;font-weight:800}.gp-affiliate-copy h3{margin:3px 0 5px}.gp-affiliate-copy p{margin:0 0 10px;opacity:.75}.gp-affiliate-link{font-size:12px;padding:9px 11px;border-radius:8px;background:rgba(0,0,0,.25);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gp-affiliate-copy-btn{white-space:nowrap}@media(max-width:640px){.gp-form-row-two{grid-template-columns:1fr}.gp-affiliate-profile-card{grid-template-columns:auto 1fr}.gp-affiliate-copy-btn{grid-column:1/-1;width:100%}}

.gp-form-row-two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.gp-consent-row{display:flex!important;align-items:flex-start;gap:9px!important;line-height:1.45;cursor:pointer}.gp-consent-row input[type=checkbox]{flex:0 0 auto;width:18px;height:18px;margin:2px 0 0}.gp-register-country select,.gp-form-group select{width:100%}@media(max-width:640px){.gp-form-row-two{grid-template-columns:1fr}}

.gp-country-select{cursor:pointer}.gp-affiliate-link-row{display:flex;gap:8px;align-items:center}.gp-affiliate-copy-btn{border:0;cursor:pointer}.gp-ranks-info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:0 0 18px}.gp-ranks-info-grid>div{padding:14px 16px;border:1px solid var(--gp-border);border-radius:14px;background:rgba(255,255,255,.025)}.gp-ranks-info-grid strong,.gp-ranks-info-grid span{display:block}.gp-ranks-info-grid span{margin-top:5px;color:var(--gp-muted);font-size:11px;line-height:1.5}.gp-floating-points{position:fixed;right:22px;top:86px;z-index:1000000;min-width:250px;max-width:360px;padding:14px 16px;border-radius:14px;background:#161625;border:1px solid rgba(124,58,237,.45);box-shadow:0 18px 45px rgba(0,0,0,.35);transform:translateY(-12px);opacity:0;transition:.25s ease;pointer-events:none}.gp-floating-points.show{transform:translateY(0);opacity:1}.gp-floating-points.cost{border-color:rgba(239,68,68,.45)}.gp-floating-points strong,.gp-floating-points span{display:block}.gp-floating-points strong{font-size:12px;color:#fff}.gp-floating-points span{font-size:11px;color:var(--gp-muted);margin-top:4px;line-height:1.45}.gp-floating-points.earn strong:before{content:'＋';color:#4ade80}.gp-floating-points.cost strong:before{content:'－';color:#f87171}@media(max-width:650px){.gp-affiliate-link-row{flex-direction:column;align-items:stretch}.gp-ranks-info-grid{grid-template-columns:1fr}.gp-floating-points{right:12px;left:12px;top:76px;min-width:0;max-width:none}}

.gp-mobile-bottom-nav{display:none}@media(max-width:768px){body.gp-auth-mobile-nav:not(.wp-admin){padding-bottom:72px}.gp-mobile-bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:999990;display:grid;grid-template-columns:repeat(4,1fr);height:64px;background:rgba(13,13,20,.97);border-top:1px solid rgba(255,255,255,.09);box-shadow:0 -12px 35px rgba(0,0,0,.30);backdrop-filter:blur(14px)}.gp-mobile-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:#9898b0;text-decoration:none;font-size:9px;font-weight:700}.gp-mobile-nav-item:hover,.gp-mobile-nav-item:focus{color:#fff}.gp-mobile-nav-icon{font-size:22px;line-height:1;color:#fff}.gp-mobile-points-item{color:#f59e0b}.gp-mobile-points-item .gp-mobile-nav-icon{color:#f59e0b}.gp-mobile-points-item b{font-size:11px}}

/* Registration selects: match the existing input controls exactly. */
.gp-form-group select { width:100%; height:44px; min-height:44px; padding:12px 14px; background-color:rgba(0,0,0,0.3); border:1px solid var(--gp-border); border-radius:8px; color:#fff; box-sizing:border-box; font:inherit; line-height:1.2; appearance:none; -webkit-appearance:none; }
.gp-form-group select:focus { outline:none; border-color:var(--gp-accent); box-shadow:0 0 0 2px rgba(124,58,237,.15); }
.gp-form-group select { background-image:linear-gradient(45deg,transparent 50%,#8f8fa6 50%),linear-gradient(135deg,#8f8fa6 50%,transparent 50%); background-position:calc(100% - 17px) 19px,calc(100% - 12px) 19px; background-size:5px 5px,5px 5px; background-repeat:no-repeat; padding-right:36px !important; }
.gp-country-select { background-image:linear-gradient(45deg,transparent 50%,#8f8fa6 50%),linear-gradient(135deg,#8f8fa6 50%,transparent 50%); background-position:calc(100% - 17px) 19px,calc(100% - 12px) 19px; background-size:5px 5px,5px 5px; background-repeat:no-repeat; padding-right:36px !important; }

/* Mobile navigation polish: vector icons and safe-area support. */
@media(max-width:768px){
.gp-mobile-bottom-nav{height:68px;padding-bottom:env(safe-area-inset-bottom);box-sizing:content-box}
.gp-mobile-nav-item{gap:4px;font-size:9px;line-height:1.1}
.gp-mobile-nav-icon{width:24px;height:24px;font-size:0;display:flex;align-items:center;justify-content:center}
.gp-mobile-nav-icon svg{width:22px;height:22px;display:block}
.gp-mobile-nav-item:hover,.gp-mobile-nav-item:focus,.gp-mobile-nav-item:active{color:#fff}
.gp-mobile-points-item .gp-mobile-nav-icon svg{width:23px;height:23px}
}
/* Affiliate profile card: compact one-column mobile layout with no overflow. */
.gp-affiliate-profile-card{min-width:0;box-sizing:border-box}
.gp-affiliate-copy{min-width:0}
.gp-affiliate-link-row{min-width:0}
.gp-affiliate-link{display:block;min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere;word-break:break-word;box-sizing:border-box}
@media(max-width:640px){
.gp-affiliate-profile-card{display:flex;flex-direction:column;align-items:stretch;gap:12px;padding:16px;border-radius:15px}
.gp-affiliate-icon{width:44px;height:44px;border-radius:13px;font-size:21px}
.gp-affiliate-copy h3{font-size:16px;line-height:1.3}
.gp-affiliate-copy p{font-size:12px;line-height:1.5}
.gp-affiliate-link-row{display:flex;flex-direction:column;align-items:stretch;gap:8px}
.gp-affiliate-link{width:100%;font-size:11px;line-height:1.45;padding:10px}
.gp-affiliate-copy-btn{width:100%;min-height:42px}
}

.gp-social-login{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:44px;margin-top:10px;border:1px solid var(--gp-border);border-radius:9px;text-decoration:none;font-weight:700;box-sizing:border-box}.gp-social-login span{display:inline-flex;width:22px;height:22px;align-items:center;justify-content:center;font-weight:900}.gp-social-google{background:#fff;color:#202124}.gp-social-google span{color:#4285f4}.gp-social-facebook{background:#1877f2;color:#fff;border-color:#1877f2}.gp-social-facebook span{color:#fff;font-family:Arial,sans-serif;font-size:18px}
@media(max-width:650px){.gp-floating-points{top:auto;bottom:84px;right:12px;left:12px;max-width:none;min-width:0}}

.gp-bonus-banner-single{display:flex;align-items:center;gap:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:11px 14px;}
@media(max-width:650px){.gp-bonus-banner-single{font-size:11px;padding:10px 12px;gap:6px;}}

.gp-profile-notification-list{display:flex;flex-direction:column;gap:8px}.gp-profile-notification-row{display:flex;gap:10px;padding:12px;border:1px solid var(--gp-border);background:rgba(0,0,0,.18);border-radius:10px}.gp-profile-notification-row.is-unread{background:rgba(124,58,237,.09);border-color:rgba(124,58,237,.3)}.gp-profile-notification-icon{width:30px;height:30px;border-radius:9px;display:flex;align-items:center;justify-content:center;background:rgba(124,58,237,.14);flex-shrink:0}.gp-profile-notification-main{min-width:0}.gp-profile-notification-main strong{display:block;color:#fff;font-size:12px}.gp-profile-notification-main span{display:block;color:var(--gp-muted);font-size:11px;line-height:1.45;margin-top:2px}.gp-profile-notification-main small{display:block;color:#66667e;font-size:9px;margin-top:4px}
.gp-notification-delete{border:0;background:transparent;color:#8b93a7;font-size:18px;line-height:1;padding:4px 7px;border-radius:7px;cursor:pointer;flex:0 0 auto}.gp-notification-delete:hover{background:rgba(255,255,255,.08);color:#fff}.gp-profile-notification-row{position:relative;display:flex;align-items:flex-start;gap:10px}.gp-notification-delete-all{border:0;background:rgba(239,68,68,.12);color:#ef4444;padding:7px 10px;border-radius:8px;font-weight:700;cursor:pointer}.gp-notification-delete-all:hover{background:rgba(239,68,68,.2)}

/* Social profile + friends/messages layer */
.gp-social-profile{max-width:1100px;margin:0 auto}.gp-social-profile .gp-hero-actions{display:flex;gap:8px;align-items:center}.gp-social-action{border:1px solid rgba(124,58,237,.5);background:linear-gradient(135deg,#7c3aed,#5b21b6);color:#fff;padding:10px 16px;border-radius:10px;font-weight:800;cursor:pointer}.gp-social-action:hover{filter:brightness(1.08)}.gp-social-section,.gp-social-message-box{margin-top:18px;padding:18px;border:1px solid var(--gp-border);background:rgba(0,0,0,.14);border-radius:16px}.gp-social-section h3,.gp-social-message-box h3{margin:0 0 12px;color:#fff}.gp-social-game-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px}.gp-social-game-grid a{display:block;text-decoration:none;color:#fff}.gp-social-game-grid img{width:100%;aspect-ratio:1.2/1;object-fit:cover;border-radius:10px;display:block;background:#111}.gp-social-game-grid span{display:block;margin-top:6px;font-size:11px;font-weight:700;line-height:1.3}.gp-profile-privacy-card{margin:12px 0;padding:15px;border:1px solid var(--gp-border);background:rgba(124,58,237,.06);border-radius:12px}.gp-profile-privacy-card h3{margin:0 0 4px}.gp-profile-privacy-card p{margin:0 0 10px;color:var(--gp-muted);font-size:12px}.gp-social-message-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:12px}.gp-social-conversations{min-height:280px;border:1px solid var(--gp-border);border-radius:12px;padding:8px;background:rgba(0,0,0,.12)}.gp-social-conversation{display:grid;grid-template-columns:1fr auto;gap:3px 8px;width:100%;text-align:left;border:0;border-bottom:1px solid rgba(255,255,255,.06);background:transparent;color:#fff;padding:11px 9px;cursor:pointer}.gp-social-conversation:hover{background:rgba(124,58,237,.10)}.gp-social-conversation strong{font-size:12px}.gp-social-conversation span{grid-column:1/-1;color:var(--gp-muted);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gp-social-conversation small{color:#66667e;font-size:9px}.gp-social-thread{border:1px solid var(--gp-border);border-radius:12px;padding:10px;min-width:0}.gp-social-thread-head{font-weight:800;color:#fff;padding:5px 4px 10px}.gp-social-thread-messages{height:320px;overflow:auto;padding:8px;background:rgba(0,0,0,.12);border-radius:10px}.gp-social-message{display:flex;flex-direction:column;margin:7px 0;max-width:78%}.gp-social-message.is-mine{margin-left:auto;align-items:flex-end}.gp-social-message.is-theirs{margin-right:auto;align-items:flex-start}.gp-social-bubble{padding:9px 11px;border-radius:13px;background:rgba(255,255,255,.07);color:#fff;font-size:12px;line-height:1.45}.gp-social-message.is-mine .gp-social-bubble{background:rgba(124,58,237,.35)}.gp-social-message small{color:#66667e;font-size:9px;margin-top:3px}.gp-social-compose{display:flex;gap:8px;margin-top:10px}.gp-social-compose input{flex:1;min-width:0;background:rgba(0,0,0,.25);border:1px solid var(--gp-border);color:#fff;border-radius:9px;padding:10px}.gp-social-compose button{border:0;background:#7c3aed;color:#fff;border-radius:9px;padding:0 16px;font-weight:800;cursor:pointer}.gp-social-message-box #gpSocialMessageNotice,.gp-social-thread #gpProfileSocialNotice{font-size:11px;color:#9ca8bd;margin-top:6px}
@media(max-width:700px){.gp-social-message-layout{grid-template-columns:1fr}.gp-social-conversations{min-height:0;max-height:210px;overflow:auto}.gp-social-thread-messages{height:300px}.gp-social-message{max-width:88%}.gp-social-game-grid{grid-template-columns:repeat(3,1fr)}}

/* Social Friends Center */
.gp-social-friends-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}.gp-social-friends-head h3{margin:0 0 4px}.gp-social-friends-head p{margin:0;color:var(--gp-muted);font-size:12px}.gp-social-friends-grid{display:grid;grid-template-columns:1fr;gap:14px}.gp-social-friends-panel{border:1px solid var(--gp-border);border-radius:12px;padding:14px;background:rgba(255,255,255,.025)}.gp-social-friends-panel h4{margin:0 0 10px;color:#fff}.gp-social-person{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.06)}.gp-social-person:last-child{border-bottom:0}.gp-social-person img{width:38px;height:38px;border-radius:50%;object-fit:cover}.gp-social-person>div{min-width:0;flex:1}.gp-social-person a{color:#fff;text-decoration:none}.gp-social-person strong{display:block;font-size:13px}.gp-social-person small{display:block;color:var(--gp-muted);font-size:10px;margin-top:2px}.gp-social-person-actions{display:flex;align-items:center;gap:5px;flex-wrap:wrap;justify-content:flex-end}.gp-social-person-action{border:1px solid var(--gp-border);background:rgba(255,255,255,.04);color:#fff;border-radius:6px;padding:6px 9px;font-size:10px;cursor:pointer}.gp-social-person-action:hover{background:rgba(124,58,237,.15)}.gp-social-pending-label{font-size:10px;color:var(--gp-muted)}.gp-social-unread{margin-left:auto;background:#ef4444;color:#fff;border-radius:10px;min-width:18px;height:18px;padding:0 5px;display:flex;align-items:center;justify-content:center;font-size:9px}.gp-social-conversation{position:relative}
@media(min-width:850px){.gp-social-friends-grid{grid-template-columns:1.3fr 1fr 1fr}}

/* GP Social 3.1.4 — polished mobile profile + edit-profile experience. */
@media (max-width: 640px){
  .gp-profile-layout{max-width:none;margin:12px auto 0;padding:0 10px 92px;}
  .gp-profile-hero,
  .gp-social-profile .gp-profile-hero{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:stretch;gap:15px;padding:20px 14px 14px;border-radius:22px;margin-bottom:12px;background:linear-gradient(145deg,rgba(124,58,237,.22),rgba(18,18,31,.98) 58%,rgba(9,9,15,.98));box-shadow:0 16px 38px rgba(0,0,0,.28);}
  .gp-profile-hero:before,
  .gp-social-profile .gp-profile-hero:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 82% 12%,rgba(236,72,153,.16),transparent 32%),linear-gradient(180deg,rgba(255,255,255,.035),transparent 38%);}
  .gp-profile-hero>*{position:relative;z-index:1;}
  .gp-hero-left{display:flex;flex-direction:column;align-items:center;gap:11px;text-align:center;width:100%;}
  .gp-hero-avatar{width:88px;height:88px;border-width:3px;box-shadow:0 10px 30px rgba(124,58,237,.25);}
  .gp-online-dot{width:13px;height:13px;right:2px;bottom:3px;border-width:3px;}
  .gp-hero-details{min-width:0;width:100%;}
  .gp-hero-name{font-size:22px;line-height:1.15;margin:6px 0 4px;word-break:break-word;}
  .gp-hero-handle{font-size:11px;line-height:1.5;word-break:break-word;}
  .gp-hero-tags{display:flex;justify-content:center;}
  .gp-pill-role{font-size:9px;padding:4px 9px;}
  .gp-hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%;}
  .gp-social-profile .gp-hero-actions{display:flex;justify-content:stretch;}
  .gp-hero-btn,
  .gp-social-action{min-height:40px;display:flex;align-items:center;justify-content:center;box-sizing:border-box;padding:9px 10px;border-radius:11px;font-size:11px;text-align:center;}
  .gp-social-profile .gp-social-action{width:100%;}

  .gp-stats-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:12px;}
  .gp-stat-card{min-width:0;padding:12px 10px;border-radius:14px;gap:8px;box-shadow:0 7px 18px rgba(0,0,0,.18);}
  .gp-stat-icon{font-size:22px;line-height:1;flex:0 0 auto;}
  .gp-stat-info{min-width:0;}
  .gp-stat-label{font-size:8.5px;letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
  .gp-stat-value{font-size:17px;line-height:1.2;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
  .gp-stat-value small{font-size:9px;}
  .gp-stat-action{top:8px;right:8px;width:20px;height:20px;font-size:13px;}

  .gp-affiliate-profile-card{margin:10px 0 12px;padding:15px;border-radius:17px;gap:10px;}
  .gp-affiliate-icon{width:42px;height:42px;border-radius:12px;font-size:20px;}
  .gp-affiliate-copy h3{font-size:14px;line-height:1.3;}
  .gp-affiliate-copy p{font-size:11px;line-height:1.55;}

  .gp-tabbed-section{padding:9px;border-radius:18px;}
  .gp-tab-nav{gap:5px;padding:3px 2px 10px;margin-bottom:11px;scrollbar-width:none;}
  .gp-tab-nav::-webkit-scrollbar{display:none;}
  .gp-tbtn{flex:0 0 auto;white-space:nowrap;padding:8px 10px;border-radius:10px;font-size:10px;}
  .gp-activity-list{gap:7px;}
  .gp-activity-row{display:grid;grid-template-columns:auto minmax(0,1fr);gap:7px 9px;padding:10px 11px;border-radius:12px;font-size:11px;}
  .gp-act-badge{font-size:8px;}
  .gp-act-title{grid-column:2;min-width:0;white-space:normal;line-height:1.35;}
  .gp-act-time{grid-column:2;font-size:8.5px;}
  .gp-act-btn{grid-column:1/-1;text-align:center;padding:7px 10px;font-size:10px;}

  .gp-social-profile{max-width:none;margin:10px auto 0;padding:0 10px 92px;box-sizing:border-box;}
  .gp-social-section,.gp-social-message-box{margin-top:10px;padding:13px;border-radius:15px;}
  .gp-social-section h3,.gp-social-message-box h3{font-size:14px;margin-bottom:9px;}
  .gp-social-game-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;}
  .gp-social-game-grid span{font-size:10px;line-height:1.35;}
  .gp-social-game-grid img{border-radius:10px;aspect-ratio:1.2/1;}
  .gp-social-compose{gap:6px;}
  .gp-social-compose input{padding:9px;font-size:11px;border-radius:9px;}
  .gp-social-compose button{padding:0 12px;font-size:10px;border-radius:9px;}

  .gp-auth-box.gp-edit-box{max-width:none;width:auto;margin:12px 10px 92px;padding:17px 14px;border-radius:20px;box-shadow:0 16px 38px rgba(0,0,0,.27);}
  .gp-auth-box.gp-edit-box .gp-box-title{text-align:left;font-size:20px;line-height:1.2;margin-bottom:16px;}
  .gp-avatar-picker-section{flex-direction:column;align-items:center;gap:10px;padding:14px;border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.025);border-radius:15px;margin-bottom:14px;text-align:center;}
  .gp-edit-avatar-preview{width:86px;height:86px;border-width:3px;box-shadow:0 8px 24px rgba(0,0,0,.24);}
  .gp-custom-file-upload{display:flex;align-items:center;justify-content:center;min-height:40px;padding:0 13px;border-radius:10px;font-size:11px;}
  .gp-file-hint{font-size:9px;margin-top:5px;}
  .gp-form-group{margin-bottom:12px;}
  .gp-form-group label{font-size:10px;margin-bottom:5px;}
  .gp-form-group input,.gp-form-group select{height:44px;min-height:44px;padding:11px 12px;font-size:12px;border-radius:10px;}
  .gp-profile-privacy-card{margin:12px 0;padding:13px;border-radius:14px;}
  .gp-profile-privacy-card h3{font-size:14px;}
  .gp-profile-privacy-card p{font-size:10px;line-height:1.45;margin-bottom:9px;}
  .gp-consent-row{min-height:34px;padding:7px 0;font-size:10.5px;}
  .gp-consent-row input[type=checkbox]{width:17px;height:17px;}
  .gp-form-actions-bar{display:grid;grid-template-columns:1fr;gap:8px;margin-top:14px;}
  .gp-form-actions-bar .gp-btn-primary,.gp-form-actions-bar .gp-btn-outline,.gp-form-actions-bar .gp-btn-logout-link{width:100%;min-height:42px;display:flex;align-items:center;justify-content:center;box-sizing:border-box;font-size:11px;}
  .gp-danger-zone-card{margin-top:18px;padding:14px;border-radius:14px;}
  .gp-dz-header h4{font-size:13px;}
  .gp-dz-desc{font-size:10px;line-height:1.5;}
  .gp-danger-zone-card .gp-btn-danger{width:100%;min-height:40px;font-size:11px;}
}


/* v3.1.8 — registration activation state and rich platform messages. */
.gp-activation-pending-card{width:min(100% - 30px,620px);margin:clamp(28px,7vh,76px) auto;padding:clamp(24px,5vw,42px);border:1px solid rgba(139,92,246,.28);border-radius:22px;background:radial-gradient(ellipse at top right,rgba(124,58,237,.18),transparent 55%),linear-gradient(150deg,#111827,#0b1019);color:#f8fafc;text-align:center;box-shadow:0 24px 80px rgba(0,0,0,.32);}
.gp-activation-pending-icon{width:64px;height:64px;margin:0 auto 18px;border-radius:18px;display:grid;place-items:center;background:rgba(124,58,237,.15);border:1px solid rgba(167,139,250,.3);color:#c4b5fd;}
.gp-activation-pending-icon svg{width:32px;height:32px;}
.gp-activation-pending-card h1{margin:0 0 12px!important;font-size:clamp(24px,5vw,34px)!important;line-height:1.15!important;font-weight:900!important;letter-spacing:-.035em;color:#fff!important;}
.gp-activation-pending-card p{margin:8px 0;color:#aeb8c9;font-size:14px;line-height:1.65;}
.gp-activation-pending-card .gp-activation-pending-lead{font-size:16px;color:#e4e8f0;font-weight:700;}
.gp-activation-pending-action,.gp-activation-pending-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 19px;border-radius:11px;text-decoration:none!important;font-weight:850;margin:12px 5px 0;transition:transform .18s,filter .18s;}
.gp-activation-pending-action{background:linear-gradient(120deg,#8b5cf6,#6d28d9);color:#fff!important;box-shadow:0 8px 22px rgba(109,40,217,.22);}
.gp-activation-pending-secondary{color:#cbd5e1!important;border:1px solid rgba(148,163,184,.24);background:rgba(15,23,42,.55);}
.gp-activation-pending-action:hover,.gp-activation-pending-secondary:hover{transform:translateY(-1px);filter:brightness(1.1);}
.gp-user-message-modal{position:fixed;inset:0;z-index:100500;display:flex;align-items:center;justify-content:center;padding:18px;background:rgba(2,6,23,.78);backdrop-filter:blur(10px);}
.gp-user-message-box{width:min(100%,680px);max-height:min(82vh,800px);overflow:auto;background:#0f1724;color:#e5e7eb;border:1px solid rgba(148,163,184,.24);border-radius:18px;box-shadow:0 28px 90px rgba(0,0,0,.5);}
.gp-user-message-head{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:17px 20px;background:rgba(15,23,36,.96);border-bottom:1px solid rgba(148,163,184,.16);backdrop-filter:blur(12px);}
.gp-user-message-head h2{font-size:18px;line-height:1.3;margin:0;color:#fff;font-weight:850;}
.gp-user-message-close{width:34px;height:34px;flex:0 0 34px;border:1px solid rgba(148,163,184,.25);border-radius:10px;background:#1e293b;color:#fff;font-size:25px;line-height:1;cursor:pointer;}
.gp-user-message-body{padding:22px;line-height:1.75;font-size:14px;overflow-wrap:anywhere;}
.gp-user-message-body>:first-child{margin-top:0}.gp-user-message-body>:last-child{margin-bottom:0}
.gp-user-message-body img{max-width:100%;height:auto;border-radius:10px;}
.gp-user-message-body a{color:#a78bfa;text-decoration:underline;overflow-wrap:anywhere;}
.gp-user-message-footer{padding:0 22px 22px;}
.gp-user-message-link{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:9px;background:#6d28d9;color:#fff!important;text-decoration:none!important;font-size:12px;font-weight:800;}
.gp-profile-admin-messages{margin:0 0 20px;border:1px solid rgba(139,92,246,.2);border-radius:14px;overflow:hidden;background:rgba(15,23,42,.38);}
.gp-profile-admin-messages-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 15px;border-bottom:1px solid rgba(148,163,184,.13);background:rgba(124,58,237,.07);}
.gp-profile-admin-messages-head strong{font-size:12px;color:#f8fafc;letter-spacing:.01em;}
.gp-profile-admin-messages-head>span{min-width:25px;height:25px;padding:0 7px;display:grid;place-items:center;border-radius:99px;background:rgba(139,92,246,.18);color:#c4b5fd;font-size:10px;font-weight:900;}
.gp-profile-admin-messages-list{display:grid;gap:0;}
.gp-profile-admin-message-row{width:100%;display:flex;align-items:center;gap:11px;padding:12px 14px;text-align:left;color:inherit;background:transparent;border:0;border-bottom:1px solid rgba(148,163,184,.1);cursor:pointer;}
.gp-profile-admin-message-row:last-child{border-bottom:0}.gp-profile-admin-message-row:hover{background:rgba(139,92,246,.08);}
.gp-profile-admin-message-sender-icon{width:34px;height:34px;flex:0 0 34px;display:grid;place-items:center;border-radius:10px;background:rgba(139,92,246,.15);color:#c4b5fd;font-size:16px;}
.gp-profile-admin-message-main{display:grid;min-width:0;flex:1;gap:3px;}
.gp-profile-admin-message-main strong{font-size:12px;color:#f8fafc;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.gp-profile-admin-message-main>span{font-size:11px;color:#aab4c4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.gp-profile-admin-message-main small{font-size:9px;color:#6f7b8e;}
.gp-admin-message-open{font-size:10px;font-weight:800;color:#c4b5fd;white-space:nowrap;}
.gp-profile-admin-messages-empty{padding:15px;color:#8490a3;font-size:12px;}
@media(max-width:600px){.gp-activation-pending-card{width:calc(100% - 22px);margin:26px auto;padding:24px 18px;border-radius:17px}.gp-activation-pending-card p{font-size:12px}.gp-activation-pending-card .gp-activation-pending-lead{font-size:14px}.gp-user-message-modal{padding:10px;align-items:flex-end}.gp-user-message-box{max-height:88vh;border-radius:17px 17px 12px 12px}.gp-user-message-head{padding:14px}.gp-user-message-body{padding:16px;font-size:13px}.gp-profile-admin-message-row{padding:11px 10px;gap:8px}.gp-profile-admin-message-sender-icon{width:30px;height:30px;flex-basis:30px}.gp-admin-message-open{font-size:9px}}

/* GP Auth 3.2.2 Batch 2: bounded profile panels and conversation controls */
.gp-profile-notification-list,.gp-profile-admin-messages-list,.gp-activity-list{max-height:420px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(124,58,237,.65) rgba(0,0,0,.12);padding-right:4px}
.gp-profile-notification-list::-webkit-scrollbar,.gp-profile-admin-messages-list::-webkit-scrollbar,.gp-activity-list::-webkit-scrollbar{width:6px}
.gp-profile-notification-list::-webkit-scrollbar-thumb,.gp-profile-admin-messages-list::-webkit-scrollbar-thumb,.gp-activity-list::-webkit-scrollbar-thumb{background:rgba(124,58,237,.65);border-radius:20px}
.gp-social-thread-tools{display:flex;flex-wrap:wrap;gap:6px;margin:-2px 0 9px}
.gp-social-thread-tools[hidden]{display:none}
.gp-social-thread-tools button{border:1px solid var(--gp-border);background:rgba(124,58,237,.12);color:var(--gp-text,#fff);border-radius:8px;padding:6px 9px;font-size:10px;font-weight:700;cursor:pointer}
.gp-social-thread-tools button:hover{background:rgba(124,58,237,.25)}
.gp-social-muted-label{font-size:9px;color:#a78bfa;font-style:normal;margin-left:6px}
.gp-social-block-player{background:rgba(239,68,68,.12)!important;border-color:rgba(239,68,68,.35)!important}
@media(max-width:700px){.gp-profile-notification-list,.gp-profile-admin-messages-list,.gp-activity-list{max-height:340px}.gp-social-thread-tools button{padding:7px 8px;font-size:10px}.gp-social-message-layout{min-width:0}.gp-social-thread{min-width:0}}

/* Batch 4 audit fixes: keep profile lists and public-profile game grids inside their own panels. */
.gp-social-section .gp-social-game-grid{max-height:420px;overflow-y:auto;overscroll-behavior:contain;align-content:start;padding:2px 4px 8px 0;scrollbar-width:thin;scrollbar-color:rgba(124,58,237,.65) rgba(0,0,0,.12)}
.gp-social-section .gp-social-game-grid::-webkit-scrollbar,.gp-social-conversations::-webkit-scrollbar,.gp-profile-messages-list::-webkit-scrollbar{width:6px}
.gp-social-section .gp-social-game-grid::-webkit-scrollbar-thumb,.gp-social-conversations::-webkit-scrollbar-thumb,.gp-profile-messages-list::-webkit-scrollbar-thumb{background:rgba(124,58,237,.65);border-radius:20px}
.gp-social-conversations{max-height:420px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(124,58,237,.65) rgba(0,0,0,.12)}
.gp-profile-messages-list{max-height:420px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(124,58,237,.65) rgba(0,0,0,.12);padding-right:4px}
@media(max-width:700px){.gp-social-section .gp-social-game-grid{max-height:320px}.gp-social-conversations{max-height:260px}.gp-profile-messages-list{max-height:340px}}
.gp-admin-message-delete{width:28px;height:28px;flex:0 0 28px;display:grid;place-items:center;margin-inline-start:auto;border:1px solid rgba(248,113,113,.22);border-radius:8px;background:rgba(127,29,29,.12);color:#fca5a5;font-size:19px;line-height:1;cursor:pointer;position:relative;z-index:2}.gp-admin-message-delete:hover{background:rgba(127,29,29,.28);border-color:rgba(248,113,113,.55);color:#fff}.gp-admin-message-delete:disabled{opacity:.45;cursor:wait}.gp-profile-admin-message-main{min-width:0;flex:1}

/* GP Auth 3.2.8 - show/hide password button */
.gp-pass-wrap{position:relative;display:block;width:100%}
.gp-pass-wrap input{padding-right:46px!important}
.gp-pass-toggle{position:absolute;top:50%;right:6px;transform:translateY(-50%);width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;padding:0;margin:0;border:0;border-radius:8px;background:transparent;color:#94a3b8;cursor:pointer;line-height:0}
.gp-pass-toggle:hover,.gp-pass-toggle:focus-visible{color:#fff;background:rgba(255,255,255,.08);outline:none}
.gp-pass-toggle[aria-pressed="true"]{color:#a78bfa}
html[dir="rtl"] .gp-pass-wrap input{padding-right:14px!important;padding-left:46px!important}
html[dir="rtl"] .gp-pass-toggle{right:auto;left:6px}
html[data-gp-color-mode="light"] .gp-pass-toggle{color:#64748b}
html[data-gp-color-mode="light"] .gp-pass-toggle:hover,html[data-gp-color-mode="light"] .gp-pass-toggle:focus-visible{color:#0f172a;background:rgba(15,23,42,.06)}

/* GP Auth 3.2.9 - settings sections, internal chat links, live points toast */
.gp-settings-tabs{display:none;gap:8px;margin:0 0 18px;padding:5px;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}
.gp-settings-tabs-ready .gp-settings-tabs{display:flex}
.gp-settings-tab{flex:1 1 0;appearance:none;border:0;background:transparent;color:#a9a9bb;font:inherit;font-weight:700;font-size:13px;padding:10px 12px;border-radius:10px;cursor:pointer;transition:background .15s,color .15s}
.gp-settings-tab:hover{color:#fff}
.gp-settings-tab.is-active{background:linear-gradient(135deg,#7c3aed,#5b21b6);color:#fff;box-shadow:0 6px 16px rgba(124,58,237,.3)}
.gp-settings-tabs-ready .gp-settings-pane{display:none}
.gp-settings-tabs-ready .gp-settings-pane.is-active{display:block}
.gp-social-bubble a.gp-chat-link,.gp-chat-message a.gp-chat-link{color:#8ab4ff;text-decoration:underline;word-break:break-all}
.gp-social-message.is-mine .gp-social-bubble a.gp-chat-link{color:#fff}
.gp-points-toast{position:fixed;right:18px;bottom:22px;z-index:100001;display:flex;flex-direction:column;gap:2px;max-width:min(340px,calc(100vw - 36px));padding:12px 16px;border-radius:14px;background:#17172a;border:1px solid rgba(124,58,237,.55);color:#fff;box-shadow:0 14px 34px rgba(0,0,0,.45);opacity:0;transform:translateY(10px);transition:opacity .25s,transform .25s;pointer-events:none}
.gp-points-toast.is-visible{opacity:1;transform:translateY(0)}
.gp-points-toast.is-cost{border-color:rgba(239,68,68,.55)}
.gp-points-toast strong{font-size:13px}.gp-points-toast span{font-size:12px;color:#c9c9dc}
@media (max-width:640px){.gp-points-toast{left:12px;right:12px;bottom:84px;max-width:none}}

/* ---- Shared "?" help bubble (.gp-tip) ---- */
.gp-tip{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:none;width:15px;height:15px;margin:0 0 0 6px;padding:0;border:1px solid currentColor;border-radius:50%;background:transparent;color:inherit;font:700 9px/1 system-ui,-apple-system,Segoe UI,sans-serif;opacity:.6;cursor:help;vertical-align:middle;text-transform:none;letter-spacing:0;box-shadow:none;min-height:0}
.gp-tip::after{content:"";position:absolute;inset:-9px}
.gp-tip:hover,.gp-tip:focus-visible,.gp-tip.is-open{opacity:1;outline:0}
.gp-tip-pop{position:fixed;z-index:2147483600;max-width:250px;padding:9px 11px;border-radius:10px;background:#12141f;color:#e9ebf5;border:1px solid rgba(255,255,255,.16);box-shadow:0 12px 32px rgba(0,0,0,.45);font:500 12px/1.5 system-ui,-apple-system,Segoe UI,sans-serif;text-align:left;pointer-events:none;opacity:0;transform:translateY(3px);transition:opacity .12s,transform .12s}
.gp-tip-pop.is-on{opacity:1;transform:none}

/* ---- v3.4: compact affiliate bar (desktop + mobile) ---- */
.gp-affiliate-profile-card.gp-affiliate-compact{display:flex;flex-direction:row;align-items:center;gap:10px;padding:8px 12px;margin:10px 0 12px;border-radius:12px;max-width:560px;scroll-margin-top:90px}
.gp-affiliate-compact .gp-affiliate-icon{width:30px;height:30px;border-radius:9px;font-size:15px;flex:none;display:grid;place-items:center}
.gp-affiliate-compact .gp-affiliate-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.gp-affiliate-compact .gp-affiliate-line{display:flex;align-items:center;font-size:12.5px;line-height:1.3;color:#fff;font-weight:700}
.gp-affiliate-compact .gp-affiliate-link{display:block;width:auto;max-width:100%;padding:0;border:0;background:transparent;color:#a9acc4;font-size:10.5px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;word-break:normal;overflow-wrap:normal}
.gp-affiliate-compact .gp-affiliate-copy-btn{width:auto;min-height:30px;padding:0 13px;font-size:12px;border-radius:9px;flex:none}
.gp-stat-label .gp-tip{margin-left:5px}

/* 3.7.0: Message button + one message after a friend request */
.gp-social-message-box[hidden],.gp-social-compose[hidden]{display:none}
.gp-msgbox-note{margin:0 0 10px;color:var(--gp-muted,#8d98ab);font-size:13px}
.gp-social-message-box .gp-social-action{margin-top:8px}
#gpProfileSocialNotice{margin-top:8px;font-size:13px;color:var(--gp-muted,#8d98ab)}
#gpProfileSocialNotice .gp-social-action{padding:5px 12px;min-height:0;margin:4px 6px 0 0;font-size:12px}
#gpProfileSocialMessageInput:disabled,#gpProfileSocialMessageSend:disabled{opacity:.5;cursor:not-allowed}


/* Bee Human Challenge Mini-Game */
.gp-minigame-box { background: rgba(15, 23, 42, 0.72); border: 1px solid rgba(251, 191, 36, 0.35); border-radius: 14px; padding: 12px 14px; margin: 12px 0; text-align: center; }
.gp-minigame-box.is-solved { border-color: #10b981; background: rgba(16, 185, 129, 0.12); }
.gp-minigame-head { font-size: 13px; margin-bottom: 10px; display: flex; flex-direction: column; gap: 3px; }
.gp-minigame-arena { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; max-width: 300px; margin: 0 auto; }
.gp-pair-tile { background: rgba(255,255,255,0.07); border: 1px solid rgba(255,255,255,0.18); border-radius: 12px; height: 60px; font-size: 30px; line-height: 1; cursor: pointer; transition: transform .15s ease, border-color .15s ease, background .15s ease; padding: 0; }
.gp-pair-tile:hover { transform: scale(1.06); border-color: #fbbf24; }
.gp-pair-tile.is-picked { border-color: #fbbf24; background: rgba(251,191,36,0.2); }
.gp-pair-tile.is-wrong { border-color: #ef4444; background: rgba(239,68,68,0.2); }

/* 45-Second Multiplayer Game Invite Toast */
.gp-mp-invite-toast { position: fixed; bottom: 22px; right: 22px; z-index: 2147483000; display: flex; align-items: center; gap: 14px; width: min(410px, calc(100vw - 28px)); background: linear-gradient(145deg, #161b2e, #0d111d); border: 1px solid rgba(168, 85, 247, 0.55); border-radius: 16px; padding: 14px 16px; color: #fff; box-shadow: 0 18px 48px rgba(0,0,0,0.65); }
.gp-mp-toast-ring { position: relative; width: 48px; height: 48px; flex: 0 0 48px; display: flex; align-items: center; justify-content: center; }
.gp-mp-toast-ring svg { width: 48px; height: 48px; transform: rotate(-90deg); }
.gp-mp-toast-ring circle { fill: none; stroke-width: 3.8; }
.gp-mp-toast-ring circle.bg { stroke: rgba(255,255,255,0.12); }
.gp-mp-toast-ring circle.fg { stroke: #fbbf24; stroke-linecap: round; transition: stroke-dashoffset 0.3s linear; }
.gp-mp-toast-ring b { position: absolute; font-size: 12px; font-weight: 800; color: #fbbf24; }
.gp-mp-toast-body { flex: 1; min-width: 0; font-size: 13px; line-height: 1.4; }
.gp-mp-toast-body strong { display: block; font-size: 14px; margin-bottom: 3px; color: #f8fafc; }
.gp-mp-toast-gamelink { color: #fbbf24; font-weight: 800; text-decoration: underline; }
.gp-mp-toast-actions { display: flex; gap: 8px; margin-top: 9px; }
.gp-mp-btn-accept { background: linear-gradient(135deg, #10b981, #059669); color: #fff; border: 0; border-radius: 9px; padding: 6px 12px; font-weight: 700; font-size: 12px; cursor: pointer; }
.gp-mp-btn-decline { background: rgba(255,255,255,0.08); color: #cbd5e1; border: 1px solid rgba(255,255,255,0.15); border-radius: 9px; padding: 6px 10px; font-size: 12px; cursor: pointer; }

/* ---- 3.9.0: public profile tabs ---- */
.gp-profile-tabs{margin-top:18px}
.gp-profile-tabbar{display:flex;gap:6px;overflow-x:auto;-webkit-overflow-scrolling:touch;border-bottom:1px solid var(--gp-border);padding-bottom:0;scrollbar-width:none}
.gp-profile-tabbar::-webkit-scrollbar{display:none}
.gp-profile-tab{flex:0 0 auto;appearance:none;background:transparent;border:0;border-bottom:3px solid transparent;color:var(--gp-muted);font-weight:700;font-size:14px;padding:11px 16px;cursor:pointer;white-space:nowrap;border-radius:10px 10px 0 0}
.gp-profile-tab:hover{color:var(--gp-text);background:rgba(255,255,255,.04)}
.gp-profile-tab.is-active{color:var(--gp-text);border-bottom-color:var(--gp-accent,#7c3aed)}
.gp-profile-pane{display:none;padding-top:14px}
.gp-profile-pane.is-active{display:block}
.gp-profile-pane>.gp-social-section>h3{display:none}
.gp-profile-pane>.gp-social-section{margin-top:0}
.gp-tab-private{margin:0 0 12px;padding:8px 12px;border-radius:10px;background:rgba(250,204,21,.1);color:var(--gp-muted);font-size:13px}
.gp-owned-group{margin-bottom:18px}
.gp-owned-group h4{margin:0 0 8px;font-size:14px;color:var(--gp-text)}
.gp-owned-group h4 small{color:var(--gp-muted);font-weight:600;margin-inline-start:6px}
.gp-owned-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px}
.gp-owned-item{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 8px;border:1px solid var(--gp-border);border-radius:12px;background:var(--gp-card);text-align:center}
.gp-owned-item img{width:64px;height:64px;object-fit:contain;border-radius:10px}
.gp-owned-ph{width:64px;height:64px;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;border-radius:10px;background:rgba(124,58,237,.14);color:var(--gp-text);padding:4px;box-sizing:border-box;overflow:hidden;word-break:break-word}
.gp-owned-item>span:last-child{font-size:12px;color:var(--gp-muted);line-height:1.3;overflow:hidden;text-overflow:ellipsis;max-width:100%}
