:root{
  --rh-bg:#050a16;
  --rh-surface:#0c172c;
  --rh-surface-2:#111f3a;
  --rh-border:rgba(148,163,184,.25);
  --rh-text:#e5eefc;
  --rh-muted:#9ab0d7;
  --rh-accent:#00e0ff;
  --rh-accent-2:#39f0b9;
  --rh-danger:#f97373;
}

html{margin:0;padding:0;background:#050a16}
body.referral-hub{
  margin:0 !important;
  padding:0 !important;
  min-height:100vh;
  color:var(--rh-text);
  background:
    radial-gradient(900px 420px at 95% -10%, rgba(0,224,255,.22), transparent 60%),
    radial-gradient(900px 520px at 0% 0%, rgba(57,240,185,.12), transparent 56%),
    linear-gradient(165deg,#050a16,#081125 40%,#070f21);
}

body.referral-hub .ab-global-header{
  position:sticky !important;
  top:0 !important;
  margin-top:0 !important;
}

.rh-shell{max-width:1180px;margin:0 auto;padding:14px 14px 34px}
.rh-glass{
  background:linear-gradient(145deg,rgba(17,31,58,.88),rgba(9,17,35,.88));
  border:1px solid var(--rh-border);
  border-radius:18px;
  box-shadow:0 24px 44px rgba(2,8,23,.45);
}

.rh-hero{padding:18px}
.rh-hero-top{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.rh-avatar{
  width:74px;height:74px;border-radius:20px;border:1px solid rgba(255,255,255,.25);
  box-shadow:0 10px 22px rgba(0,0,0,.35);object-fit:cover;flex:0 0 auto;
}
.rh-name{margin:0;font-size:clamp(1.35rem,3.8vw,2rem);line-height:1.1}
.rh-username{margin:4px 0 0;color:var(--rh-muted);font-size:.95rem}
.rh-bio{margin:12px 0 0;color:#d6e2fb;font-size:1rem;line-height:1.65}

.rh-badges{display:flex;gap:8px;flex-wrap:wrap}
.rh-badge{
  display:inline-flex;align-items:center;gap:6px;
  border:1px solid rgba(0,224,255,.45);
  background:rgba(0,224,255,.13);
  color:#d8f8ff;
  border-radius:999px;padding:6px 11px;font-size:.78rem;font-weight:700;
}
.rh-badge--ok{border-color:rgba(57,240,185,.45);background:rgba(57,240,185,.14);color:#dffff3}
.rh-badge--warn{border-color:rgba(251,191,36,.5);background:rgba(251,191,36,.18);color:#fff7de}

.rh-actions{margin-left:auto;display:flex;gap:8px;flex-wrap:wrap}
.rh-btn{
  border:1px solid rgba(148,163,184,.5);
  background:rgba(15,23,42,.52);
  color:#e5eefc;text-decoration:none;border-radius:11px;
  padding:8px 12px;font-weight:700;font-size:.86rem;
  display:inline-flex;align-items:center;gap:8px;
}
.rh-btn:hover{filter:brightness(1.08);text-decoration:none}
.rh-btn--accent{
  border-color:rgba(0,224,255,.7);
  background:linear-gradient(135deg,rgba(0,224,255,.26),rgba(67,56,202,.35));
}

.rh-stats{margin-top:14px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.rh-stat{
  background:rgba(5,11,26,.56);border:1px solid rgba(148,163,184,.18);border-radius:12px;padding:10px 12px;
}
.rh-stat small{display:block;color:var(--rh-muted);font-size:.74rem}
.rh-stat strong{display:block;margin-top:4px;font-size:1.12rem}

.rh-toolbar{margin-top:14px;padding:14px;display:grid;gap:10px}
.rh-search{
  width:100%;background:#0a1429;border:1px solid rgba(148,163,184,.35);
  border-radius:11px;color:#e5eefc;padding:11px 12px;font-size:.94rem;
}
.rh-search:focus{outline:none;border-color:rgba(0,224,255,.65);box-shadow:0 0 0 3px rgba(0,224,255,.18)}
.rh-filters{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.rh-chip{
  display:inline-flex;align-items:center;gap:6px;padding:7px 11px;border-radius:999px;
  border:1px solid rgba(148,163,184,.4);color:#d7e5ff;background:rgba(8,16,32,.62);text-decoration:none;font-size:.8rem;font-weight:700;
}
.rh-chip:hover{text-decoration:none;filter:brightness(1.1)}
.rh-chip.is-active{border-color:rgba(0,224,255,.75);background:rgba(0,224,255,.18);color:#dcf8ff}

.rh-layout{margin-top:14px;display:grid;gap:14px}
.rh-list{display:grid;gap:14px}
.rh-card{
  border:1px solid var(--rh-border);
  background:linear-gradient(150deg,rgba(16,30,56,.87),rgba(8,16,30,.86));
  border-radius:16px;padding:12px;
}
.rh-card-top{display:grid;grid-template-columns:132px 1fr;gap:12px}
.rh-thumb{
  width:132px;height:74px;border-radius:10px;border:1px solid rgba(148,163,184,.3);object-fit:contain;background:#071121;
}
.rh-card h3{margin:0;font-size:1.03rem;line-height:1.3}
.rh-card p{margin:8px 0 0;color:#c8d8f8;line-height:1.55;font-size:.93rem}
.rh-meta{display:flex;gap:7px;flex-wrap:wrap;margin-top:9px}
.rh-tag{
  border:1px solid rgba(148,163,184,.32);border-radius:999px;padding:4px 9px;font-size:.74rem;color:#c3d5f7;
  background:rgba(2,8,23,.36);font-weight:700;
}
.rh-tag--score{border-color:rgba(57,240,185,.45);background:rgba(57,240,185,.15);color:#ddfff3}
.rh-tag--domain{border-color:rgba(0,224,255,.4);background:rgba(0,224,255,.1);color:#d7fbff}

.rh-card-actions{margin-top:10px;display:flex;gap:8px;flex-wrap:wrap}
.rh-cta{
  display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border-radius:10px;
  background:linear-gradient(135deg,rgba(0,224,255,.24),rgba(67,56,202,.3));
  border:1px solid rgba(0,224,255,.56);color:white;text-decoration:none;font-size:.84rem;font-weight:800;
}
.rh-cta--ghost{
  background:rgba(15,23,42,.45);border:1px solid rgba(148,163,184,.48);font-weight:700;
}
.rh-share-grid{margin-top:12px;display:flex;gap:8px;flex-wrap:wrap}
.rh-share-btn{
  display:inline-flex;align-items:center;justify-content:center;
  border:1px solid rgba(148,163,184,.42);
  background:rgba(9,17,32,.66);
  color:#e6f2ff;text-decoration:none;
  border-radius:9px;padding:7px 10px;font-size:.79rem;font-weight:700;
}
.rh-share-btn:hover{text-decoration:none;filter:brightness(1.12)}

.rh-social-links{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.rh-social-chip{
  display:inline-flex;align-items:center;gap:6px;
  border:1px solid rgba(0,224,255,.36);
  background:rgba(0,224,255,.1);
  border-radius:999px;
  color:#d9f9ff;
  text-decoration:none;
  font-size:.76rem;
  font-weight:700;
  padding:6px 10px;
}
.rh-social-chip:hover{text-decoration:none;filter:brightness(1.08)}

.rh-side{display:grid;gap:12px}
.rh-panel{padding:14px}
.rh-panel h2,.rh-panel h3{margin:0 0 10px}
.rh-panel p{margin:0;color:#c7d6f5;line-height:1.62}
.rh-list-min{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.rh-list-min a{color:#d8e8ff;text-decoration:none}
.rh-list-min a:hover{text-decoration:underline}

.rh-about-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:8px}
.rh-about-sub{color:#9db6de;font-size:.86rem}
.rh-about-lead{
  margin-top:10px !important;
  font-size:1rem;
  color:#e4efff !important;
  line-height:1.66;
  border-left:3px solid rgba(0,224,255,.58);
  padding-left:10px;
}
.rh-about-grid{display:grid;gap:10px;margin-top:12px}
.rh-about-card{
  border:1px solid rgba(148,163,184,.24);
  background:linear-gradient(150deg,rgba(12,22,41,.72),rgba(8,14,29,.7));
  border-radius:12px;
  padding:12px;
}
.rh-about-card h3{margin:0 0 8px;font-size:1rem}
.rh-about-list{margin:0;padding-left:18px;display:grid;gap:8px}
.rh-about-list li{color:#ceddf7;line-height:1.52}
.rh-about-more{
  margin-top:12px;
  border:1px solid rgba(148,163,184,.3);
  border-radius:12px;
  background:rgba(8,15,30,.56);
  padding:10px 12px;
}
.rh-about-more summary{cursor:pointer;font-weight:700;color:#e6f2ff}
.rh-about-more-body{margin-top:8px;display:grid;gap:7px}
.rh-about-more-body p{color:#bfd0ee !important}

.rh-faq details{
  border:1px solid rgba(148,163,184,.3);
  border-radius:11px;background:rgba(5,12,25,.45);padding:10px 12px;
}
.rh-faq details + details{margin-top:8px}
.rh-faq summary{cursor:pointer;font-weight:700;color:#def0ff}
.rh-faq p{margin:8px 0 0;color:#c6d7f8}

.rh-post-hero{
  padding:18px;
  display:grid;
  gap:14px;
  overflow:hidden;
  background:
    radial-gradient(560px 220px at 100% -5%, rgba(0,224,255,.2), transparent 65%),
    linear-gradient(145deg,rgba(17,31,58,.9),rgba(8,16,31,.9));
}
.rh-post-hero img{
  width:100%;
  max-height:420px;
  min-height:240px;
  aspect-ratio:1200/630;
  object-fit:cover;
  display:block;
  border-radius:14px;
  border:1px solid rgba(148,163,184,.32);
  background:
    radial-gradient(420px 170px at 85% 0%, rgba(0,224,255,.17), transparent 65%),
    linear-gradient(170deg,#081327,#0a1a38 55%,#0a1430);
}
.rh-post-title{margin:0;font-size:clamp(1.75rem,4.6vw,3rem);line-height:1.08;letter-spacing:-.01em}
.rh-post-grid{margin-top:14px;display:grid;gap:14px}
.rh-bread{color:var(--rh-muted);font-size:.88rem}
.rh-bread a{color:#cde4ff;text-decoration:none}
.rh-bread a:hover{text-decoration:underline}

@media (min-width:920px){
  .rh-layout{grid-template-columns:minmax(0,1.8fr) minmax(0,1fr)}
  .rh-post-grid{grid-template-columns:minmax(0,1.65fr) minmax(0,1fr)}
  .rh-stats{grid-template-columns:repeat(5,minmax(0,1fr))}
  .rh-about-grid{grid-template-columns:1.2fr .95fr}
}
