:root{
    --bg:#0f1419;--panel:#161d26;--panel-2:#1c2530;--line:#27313d;
    --ink:#e8edf2;--ink-dim:#9aa7b4;--ink-faint:#6b7884;
    --gold:#e6b450;--green:#4ec97a;--green-dim:#2f8f54;--red:#e0604a;--blue:#5b9bd5;
    --radius:14px;--maxw:1120px;
  }
  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth}
  body{background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased}
  a{color:inherit;text-decoration:none}
  img{max-width:100%;display:block}
  header{position:sticky;top:0;z-index:50;background:rgba(15,20,25,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
  .nav{max-width:var(--maxw);margin:0 auto;padding:14px 22px;display:flex;align-items:center;gap:26px}
  .logo{display:flex;align-items:center;gap:11px;font-weight:800;font-size:18px;letter-spacing:-.3px;cursor:pointer}
  .logo .mark{width:34px;height:34px;border-radius:9px;background:linear-gradient(135deg,var(--gold),#caa033);display:grid;place-items:center;color:#1a1206;font-weight:900;font-size:17px;box-shadow:0 2px 12px rgba(230,180,80,.25)}
  nav.links{display:flex;gap:4px;margin-left:auto;flex-wrap:wrap}
  nav.links button{background:none;border:0;color:var(--ink-dim);font:inherit;font-size:14.5px;padding:9px 13px;border-radius:8px;cursor:pointer;transition:.15s}
  nav.links button:hover{color:var(--ink);background:var(--panel)}
  nav.links button.active{color:var(--gold)}
  .nav-cta{background:var(--gold);color:#1a1206;border:0;font:inherit;font-weight:700;font-size:14px;padding:9px 16px;border-radius:8px;cursor:pointer;transition:.15s}
  .nav-cta:hover{filter:brightness(1.08)}
  .menu-toggle{display:none;background:none;border:0;color:var(--ink);font-size:24px;cursor:pointer;margin-left:auto}
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 22px}
  section{padding:54px 0}
  .hr-page{display:none}
  .hr-page.active{display:block;animation:fade .35s ease}
  @keyframes fade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
  .hero{border-bottom:1px solid var(--line);background:radial-gradient(900px 380px at 70% -10%,rgba(230,180,80,.10),transparent 60%),radial-gradient(700px 300px at 10% 0%,rgba(91,155,213,.08),transparent 55%)}
  .hero-inner{max-width:var(--maxw);margin:0 auto;padding:64px 22px 52px}
  .eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin-bottom:20px}
  .eyebrow .dot{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px rgba(78,201,122,.18)}
  .hero h1{font-size:clamp(32px,5vw,52px);line-height:1.05;letter-spacing:-1.2px;font-weight:800;max-width:720px}
  .hero h1 .hl{color:var(--gold)}
  .hero p.lead{margin-top:20px;font-size:18px;color:var(--ink-dim);max-width:560px}
  .hero-actions{margin-top:28px;display:flex;gap:12px;flex-wrap:wrap}
  .btn{font:inherit;font-weight:700;font-size:15px;border-radius:9px;padding:13px 22px;cursor:pointer;border:1px solid transparent;transition:.15s;display:inline-flex;align-items:center;gap:8px}
  .btn-gold{background:var(--gold);color:#1a1206}
  .btn-gold:hover{filter:brightness(1.08)}
  .btn-ghost{background:transparent;border-color:var(--line);color:var(--ink)}
  .btn-ghost:hover{border-color:var(--ink-faint);background:var(--panel)}
  .hero-stats{margin-top:42px;display:flex;gap:38px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:24px}
  .hero-stats .stat .n{font-size:26px;font-weight:800;letter-spacing:-.5px}
  .hero-stats .stat .l{font-size:13px;color:var(--ink-faint);margin-top:2px}
  .sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:26px;flex-wrap:wrap}
  .sec-head h2{font-size:27px;letter-spacing:-.5px;font-weight:800}
  .sec-head p{color:var(--ink-dim);font-size:15px;margin-top:5px}
  .sec-head .link{color:var(--gold);font-weight:600;font-size:14.5px;cursor:pointer}
  .sec-head .link:hover{text-decoration:underline}
  .controls{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:18px;align-items:center}
  .search{flex:1;min-width:220px;display:flex;align-items:center;gap:10px;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:11px 14px}
  .search input{background:none;border:0;color:var(--ink);font:inherit;font-size:15px;width:100%;outline:none}
  .search input::placeholder{color:var(--ink-faint)}
  select.sortsel{background:var(--panel);border:1px solid var(--line);color:var(--ink);font:inherit;font-size:14.5px;padding:11px 14px;border-radius:10px;cursor:pointer;outline:none}
  .chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}
  .chip{background:var(--panel);border:1px solid var(--line);color:var(--ink-dim);font:inherit;font-size:13.5px;padding:8px 14px;border-radius:999px;cursor:pointer;transition:.15s}
  .chip:hover{color:var(--ink)}
  .chip.active{background:var(--gold);border-color:var(--gold);color:#1a1206;font-weight:600}
  .count-line{font-size:13.5px;color:var(--ink-faint);margin-bottom:18px}
  .grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}
  .card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:20px;cursor:pointer;transition:.18s;position:relative;overflow:hidden}
  .card:hover{border-color:var(--ink-faint);transform:translateY(-2px);background:var(--panel-2)}
  .card-top{display:flex;gap:15px;align-items:center}
  .avatar{width:56px;height:56px;border-radius:12px;flex-shrink:0;display:grid;place-items:center;font-weight:800;font-size:20px;color:#0f1419}
  .card-title{font-size:17.5px;font-weight:700;letter-spacing:-.3px}
  .card-meta{font-size:13px;color:var(--ink-faint);margin-top:2px}
  .score-badge{margin-left:auto;text-align:center;flex-shrink:0}
  .score-badge .v{font-size:24px;font-weight:800;letter-spacing:-.5px;line-height:1}
  .score-badge .lbl{font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);margin-top:4px}
  .stars{display:flex;gap:2px;margin-top:14px}
  .star{width:15px;height:15px}
  .card-desc{margin-top:13px;font-size:14px;color:var(--ink-dim);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:20px}
  .card-foot{margin-top:15px;padding-top:14px;border-top:1px solid var(--line);display:flex;align-items:center;gap:10px;font-size:13px;color:var(--ink-faint);flex-wrap:wrap}
  .card .rank-no{position:absolute;top:14px;right:16px;font-size:13px;font-weight:800;color:var(--ink-faint)}
  .tier{font-size:11.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:3px 9px;border-radius:6px;display:inline-block}
  .tier.amazing{color:var(--green);background:rgba(78,201,122,.12)}
  .tier.great{color:var(--blue);background:rgba(91,155,213,.13)}
  .tier.good{color:var(--gold);background:rgba(230,180,80,.13)}
  .tier.bad{color:#e0a04a;background:rgba(224,160,74,.13)}
  .tier.avoid{color:var(--red);background:rgba(224,96,74,.13)}
  .tier.unrated{color:var(--ink-faint);background:var(--panel-2)}
  .uavg{font-size:12.5px;color:var(--ink-faint)}
  .uavg b{color:var(--ink-dim)}
  .back{display:inline-flex;align-items:center;gap:7px;color:var(--ink-dim);font-size:14.5px;cursor:pointer;margin-bottom:26px}
  .back:hover{color:var(--ink)}
  .detail-head{display:flex;gap:22px;align-items:flex-start;flex-wrap:wrap;padding-bottom:28px;border-bottom:1px solid var(--line)}
  .detail-head .avatar{width:84px;height:84px;border-radius:16px;font-size:30px}
  .detail-head h1{font-size:32px;letter-spacing:-.6px;font-weight:800}
  .detail-head .sub{color:var(--ink-dim);margin-top:6px;font-size:15px;max-width:440px}
  .detail-tags{display:flex;gap:8px;margin-top:13px;flex-wrap:wrap}
  .claim-btn{margin-top:14px;display:inline-flex;align-items:center;gap:7px;background:transparent;border:1px solid var(--line);color:var(--ink-dim);font:inherit;font-size:13px;font-weight:600;padding:8px 14px;border-radius:8px;cursor:pointer;transition:.15s}
  .claim-btn:hover{border-color:var(--gold);color:var(--gold)}
  .claim-btn svg{width:14px;height:14px}
  .claimed-tag{margin-top:14px;display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:var(--green)}
  .claim-panel{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:24px;margin-top:34px;display:none}
  .claim-panel.open{display:block;animation:fade .3s ease}
  .claim-panel h3{font-size:18px;font-weight:800;margin-bottom:4px}
  .claim-steps{display:flex;gap:8px;margin:16px 0 4px;flex-wrap:wrap}
  .claim-step{font-size:11.5px;color:var(--ink-faint);background:var(--bg);border:1px solid var(--line);border-radius:7px;padding:6px 10px;display:flex;align-items:center;gap:6px}
  .claim-step b{color:var(--ink-dim);font-weight:700}
  .match-hint{font-size:12px;margin-top:6px;min-height:16px}
  .match-hint.ok{color:var(--green)}
  .match-hint.warn{color:#e0a04a}
  .detail-score{margin-left:auto;text-align:center;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:18px 26px}
  .detail-score .big{font-size:42px;font-weight:800;letter-spacing:-1px;line-height:1}
  .detail-score .stars{justify-content:center}
  .detail-score .votes{font-size:12.5px;color:var(--ink-faint);margin-top:8px}
  .detail-grid{display:grid;grid-template-columns:1fr 320px;gap:34px;margin-top:34px}
  @media(max-width:820px){.detail-grid{grid-template-columns:1fr}}
  .detail-bio h3{font-size:16px;font-weight:700;margin:24px 0 10px;letter-spacing:-.2px}
  .detail-bio h3:first-child{margin-top:0}
  .detail-bio p{color:var(--ink-dim);margin-bottom:13px;font-size:15px}
  .webrep{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:20px;margin-bottom:18px}
  .webrep h4{font-size:14px;font-weight:700;margin-bottom:4px}
  .webrep .wsub{font-size:12px;color:var(--ink-faint);margin-bottom:16px}
  .webrep-top{display:flex;align-items:center;gap:14px;margin-bottom:14px;padding-bottom:14px;border-bottom:1px solid var(--line)}
  .webrep-top .wa{font-size:34px;font-weight:800;letter-spacing:-1px;line-height:1;color:var(--blue)}
  .webrep-top .wl{font-size:12px;color:var(--ink-faint);text-transform:uppercase;letter-spacing:.06em;font-weight:700}
  .src-row{display:flex;align-items:center;gap:10px;padding:9px 0;font-size:13.5px}
  .src-row .sname{flex:1;color:var(--ink-dim);display:flex;align-items:center;gap:8px}
  .src-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
  .src-row .srate{font-weight:700;font-variant-numeric:tabular-nums}
  .src-row .scount{color:var(--ink-faint);font-size:12px;width:78px;text-align:right}
  .src-row a.sgo{color:var(--blue);font-size:12px;font-weight:600;white-space:nowrap}
  .src-row a.sgo:hover{text-decoration:underline}
  .src-empty{color:var(--ink-faint);font-size:13px;padding:6px 0;line-height:1.5}
  .webrep-note{font-size:11.5px;color:var(--ink-faint);margin-top:14px;padding-top:13px;border-top:1px solid var(--line);line-height:1.5}
  .quick-facts{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:20px;margin-top:18px}
  .quick-facts h4{font-size:14px;font-weight:700;margin-bottom:14px}
  .qf-row{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--line);font-size:13.5px}
  .qf-row:last-child{border-bottom:0}
  .qf-row .k{color:var(--ink-faint)}
  .qf-row .v{font-weight:600;text-align:right}
  .reviews{margin-top:14px}
  .reviews h3{font-size:20px;font-weight:800;letter-spacing:-.3px;margin-bottom:6px}
  .reviews .rsub{color:var(--ink-faint);font-size:14px;margin-bottom:22px}
  .review{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:18px;margin-bottom:14px}
  .review-top{display:flex;align-items:center;gap:12px;margin-bottom:10px}
  .review-av{width:38px;height:38px;border-radius:50%;background:var(--panel-2);display:grid;place-items:center;font-weight:700;font-size:15px;color:var(--ink)}
  .review-who{font-weight:600;font-size:14.5px}
  .review-date{font-size:12.5px;color:var(--ink-faint)}
  .review .stars{margin:0 0 0 auto}
  .review p{color:var(--ink-dim);font-size:14.5px}
  .no-reviews{background:var(--panel);border:1px dashed var(--line);border-radius:12px;padding:26px;text-align:center;color:var(--ink-faint);font-size:14px}
  .form-card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:28px;max-width:560px}
  .form-card.wide{max-width:680px}
  .field{margin-bottom:18px}
  .field label{display:block;font-size:13.5px;font-weight:600;margin-bottom:7px;color:var(--ink)}
  .field input,.field textarea,.field select{width:100%;background:var(--bg);border:1px solid var(--line);border-radius:9px;color:var(--ink);font:inherit;font-size:15px;padding:11px 13px;outline:none;transition:.15s}
  .field input:focus,.field textarea:focus,.field select:focus{border-color:var(--gold)}
  .field textarea{resize:vertical;min-height:110px}
  .star-pick{display:flex;gap:5px}
  .star-pick .sp{width:30px;height:30px;cursor:pointer;color:var(--ink-faint);transition:.1s}
  .star-pick .sp.on{color:var(--gold)}
  .form-note{font-size:12.5px;color:var(--ink-faint);margin-top:4px}
  .success{display:none;background:rgba(78,201,122,.1);border:1px solid var(--green-dim);border-radius:10px;padding:14px 16px;color:var(--green);font-size:14.5px;margin-bottom:18px}
  .about-cols{display:grid;grid-template-columns:1.4fr 1fr;gap:34px;align-items:start}
  @media(max-width:780px){.about-cols{grid-template-columns:1fr}}
  .about-cols p{color:var(--ink-dim);margin-bottom:15px;font-size:15.5px}
  .about-cols h2{font-size:28px;letter-spacing:-.5px;margin-bottom:18px}
  .how-card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:22px}
  .how-card .step{display:flex;gap:14px;padding:13px 0;border-bottom:1px solid var(--line)}
  .how-card .step:last-child{border-bottom:0}
  .how-card .step .num{width:28px;height:28px;border-radius:8px;background:var(--panel-2);display:grid;place-items:center;font-weight:800;font-size:14px;color:var(--gold);flex-shrink:0}
  .how-card .step .t{font-weight:600;font-size:14.5px}
  .how-card .step .d{font-size:13px;color:var(--ink-faint);margin-top:2px}
  .disclosure{background:rgba(230,180,80,.07);border:1px solid rgba(230,180,80,.25);border-radius:12px;padding:18px 20px;margin-top:30px;font-size:14px;color:var(--ink-dim)}
  .disclosure strong{color:var(--gold)}
  footer{border-top:1px solid var(--line);background:var(--panel);margin-top:30px}
  .foot{max-width:var(--maxw);margin:0 auto;padding:38px 22px;display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap}
  .foot .logo{font-size:16px}
  .foot p{color:var(--ink-faint);font-size:13px;margin-top:12px;max-width:340px}
  .foot-links{display:flex;gap:28px;flex-wrap:wrap}
  .foot-col h5{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:12px}
  .foot-col button{display:block;background:none;border:0;color:var(--ink-dim);font:inherit;font-size:14px;padding:5px 0;cursor:pointer}
  .foot-col button:hover{color:var(--ink)}
  .foot-bottom{border-top:1px solid var(--line);padding:18px 22px;text-align:center;color:var(--ink-faint);font-size:12.5px}
  .empty{text-align:center;padding:60px 20px;color:var(--ink-faint)}
  /* A-Z directory */
  .dir-letter{font-size:13px;font-weight:800;letter-spacing:.08em;color:var(--gold);margin:26px 0 8px;padding-bottom:6px;border-bottom:1px solid var(--line)}
  .dir-letter:first-child{margin-top:8px}
  .dir-row{display:flex;align-items:center;gap:14px;padding:13px 14px;border-radius:11px;cursor:pointer;transition:.13s;border:1px solid transparent}
  .dir-row:hover{background:var(--panel);border-color:var(--line)}
  .dir-row .avatar{width:42px;height:42px;border-radius:10px;font-size:16px}
  .dir-name{font-size:16px;font-weight:700;letter-spacing:-.2px}
  .dir-sports{display:flex;gap:6px;margin-left:auto;flex-wrap:wrap}
  .dir-sports .tag{background:var(--panel-2);border:1px solid var(--line);padding:3px 9px;border-radius:6px;font-size:11.5px;color:var(--ink-dim)}
  .dir-go{color:var(--ink-faint);font-size:13px;font-weight:600;margin-left:14px;white-space:nowrap}
  .dir-row:hover .dir-go{color:var(--gold)}
  @media(max-width:560px){.dir-sports{display:none}}
  @media(max-width:760px){
    nav.links,.nav-cta{display:none}
    .menu-toggle{display:block}
    nav.links.open{display:flex;position:absolute;top:100%;left:0;right:0;flex-direction:column;background:var(--bg);border-bottom:1px solid var(--line);padding:10px 16px}
    .detail-score{margin-left:0;width:100%}
    section{padding:42px 0}
  }

  /* Force text colors against WordPress theme (fixes washed-out look) */
  #hr-app{color:var(--ink) !important}
  #hr-app a{color:inherit !important}
  #hr-app .dir-name{color:var(--ink) !important}
  #hr-app .dir-go{color:var(--ink-faint) !important}
  #hr-app .dir-row:hover .dir-go{color:var(--gold) !important}
  #hr-app .dir-letter{color:var(--gold) !important}
  #hr-app .dir-sports .tag{color:var(--ink-dim) !important}
  #hr-app .hero h1{color:var(--ink) !important}
  #hr-app .hero h1 .hl{color:var(--gold) !important}
  #hr-app .hero p.lead{color:var(--ink-dim) !important}
  #hr-app .eyebrow{color:var(--gold) !important}
  #hr-app .count-line{color:var(--ink-faint) !important}
  #hr-app .card-title,#hr-app .detail-head h1,#hr-app .sec-head h2{color:var(--ink) !important}
  #hr-app .card-meta,#hr-app .card-desc,#hr-app .detail-head .sub{color:var(--ink-dim) !important}
  #hr-app nav.links button{color:var(--ink-dim) !important}
  #hr-app nav.links button.active{color:var(--gold) !important}
  #hr-app .btn-gold,#hr-app .nav-cta{color:#1a1206 !important}
  #hr-app .btn-ghost{color:var(--ink) !important}
  #hr-app .review-who,#hr-app .review p,#hr-app .reviews h3{color:var(--ink) !important}
  #hr-app .review p{color:var(--ink-dim) !important}

  /* THEME-SAFE COLOR LOCK */
  #hr-app{
    --bg:#0f1419 !important;--panel:#161d26 !important;--panel-2:#1c2530 !important;--line:#27313d !important;
    --ink:#e8edf2 !important;--ink-dim:#9aa7b4 !important;--ink-faint:#6b7884 !important;
    --gold:#e6b450 !important;--green:#4ec97a !important;--green-dim:#2f8f54 !important;--red:#e0604a !important;--blue:#5b9bd5 !important;
    --radius:14px !important;--maxw:1120px !important;
    background:#0f1419 !important;color:#e8edf2 !important;
    width:100vw !important;max-width:none !important;
    margin-left:calc(50% - 50vw) !important;margin-right:calc(50% - 50vw) !important;
    padding:0 !important;overflow:hidden !important;
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif !important;
    line-height:1.55 !important;-webkit-font-smoothing:antialiased !important;isolation:isolate !important;
  }
  #hr-app,#hr-app *{box-sizing:border-box !important;filter:none !important}
  #hr-app a{color:inherit !important;text-decoration:none !important}
  #hr-app .hr-page{background:#0f1419 !important;color:#e8edf2 !important}
  #hr-app .card,#hr-app .search,#hr-app .form-card,#hr-app .how-card,#hr-app .webrep,#hr-app .quick-facts,#hr-app .review{background:#161d26 !important;border-color:#27313d !important;color:#e8edf2 !important}
  #hr-app .card-title,#hr-app .dir-name,#hr-app .sec-head h2,#hr-app .detail-head h1,#hr-app .reviews h3,#hr-app .review-who,#hr-app .field label,#hr-app .qf-row .v,#hr-app .how-card .step .t{color:#e8edf2 !important;opacity:1 !important}
  #hr-app .card-meta,#hr-app .count-line,#hr-app .dir-go,#hr-app .review-date,#hr-app .qf-row .k,#hr-app .review p,#hr-app .hero p.lead{color:#9aa7b4 !important;opacity:1 !important}
  #hr-app .eyebrow,#hr-app .dir-letter,#hr-app .foot-col h5,#hr-app .sec-head .link{color:#e6b450 !important;opacity:1 !important}
  #hr-app input,#hr-app textarea,#hr-app select{background:#0f1419 !important;color:#e8edf2 !important;border-color:#27313d !important;opacity:1 !important}
  #hr-app footer{background:#161d26 !important;border-top:1px solid #27313d !important;color:#e8edf2 !important}
