/* RAPF*CK V17.1 — final underground polish */
:root{--rf17-acid:#d9ff43;--rf17-red:#ff4a32;--rf17-purple:#a56cff;--rf17-gold:#f2b84b;--rf17-cream:#fff0dc}

/* More basement / flyer, less SaaS */
body.app-v4,body.landing-body,body.blog-body,body.public-body{background-color:#070707!important}
body.app-v4 main,body.landing-body main,body.blog-body main,body.public-body main{position:relative}
body.app-v4 main:before,body.landing-body main:before,body.blog-body main:before,body.public-body main:before{content:'';position:fixed;inset:0;pointer-events:none;z-index:-1;opacity:.22;background:repeating-linear-gradient(0deg,transparent 0 5px,rgba(255,255,255,.012) 6px 7px),radial-gradient(circle at 17% 22%,rgba(255,74,50,.14),transparent 19%),radial-gradient(circle at 86% 62%,rgba(165,108,255,.11),transparent 22%)}
.landing-body .v4-section,.app-v4 .screen,.blog-wrap,.public-wrap{position:relative}
.landing-body .v4-section:after,.app-v4 .section-head.big:after,.blog-hero:after,.public-cta:after{content:'RAPF*CK // UNDERGROUND';position:absolute;right:0;top:18px;padding:5px 8px;border-radius:4px;background:#17130f;color:rgba(255,240,220,.42);border:1px solid #3b342d;font-size:7px;font-weight:1000;letter-spacing:1px;transform:rotate(2deg);pointer-events:none}
.landing-body .feature-grid article:before,.landing-body .big-mode-grid article:before,.app-v4 .mode-card:before,.app-v4 .stats-grid article:before,.blog-card:before{content:'';position:absolute;left:18px;top:-4px;width:46px;height:8px;background:rgba(217,255,67,.18);transform:rotate(-3deg);border-radius:2px;pointer-events:none}
.app-v4 .mode-card:nth-child(2):before,.blog-card:nth-child(2n):before{background:rgba(165,108,255,.20)}
.app-v4 .mode-card:nth-child(3):before{background:rgba(255,74,50,.22)}
.primary,.inverted,.google-login,.cta-register,.rf17-search button,.rf17-compose button{font-weight:1000!important;letter-spacing:.2px!important;box-shadow:6px 7px 0 rgba(0,0,0,.44)!important}

/* Supporting copy belongs in rounded boxes, never orphaned on the right */
.landing-body .section-head.big,.app-v4 .section-head.big{display:grid!important;grid-template-columns:minmax(0,1.15fr) minmax(240px,.85fr)!important;align-items:end!important;gap:24px!important}
.section-copy-card{width:100%!important;max-width:none!important;padding:18px 19px!important;border-radius:22px!important;border:1px solid #40372f!important;background:radial-gradient(circle at 100% 0,rgba(165,108,255,.08),transparent 32%),linear-gradient(145deg,#17130f,#0b0a09)!important;box-shadow:7px 8px 0 rgba(0,0,0,.30)!important}
.section-copy-card>span{font-size:9px!important;letter-spacing:1.6px!important;color:var(--rf17-acid)!important}
.section-copy-card>p{font-size:14px!important;line-height:1.55!important;color:#b8ada2!important}
.rf17-mini-label{display:inline-flex!important;padding:5px 8px!important;border:1px solid #39322c!important;border-radius:999px!important;background:#100e0c!important;color:#91877d!important;font-size:8px!important;font-weight:1000!important;letter-spacing:.8px!important}

/* HOME MC CARD: avatar -> level/XP -> identity. Exactly that order. */
#home .player-card.compact{display:grid!important;grid-template-columns:92px 64px minmax(0,1fr)!important;grid-template-rows:auto!important;gap:10px!important;align-items:center!important;min-height:118px!important;padding:12px 14px!important;border-radius:25px!important;overflow:visible!important}
#home .player-card.compact .player-card-photo{grid-column:1!important;grid-row:1!important;width:92px!important;height:98px!important;border-radius:22px!important;object-fit:cover!important}
#home .player-card.compact .player-card-score{grid-column:2!important;grid-row:1!important;display:grid!important;justify-items:start!important;align-content:center!important;gap:7px!important;min-width:0!important;margin:0!important}
#home .player-card.compact .player-card-score span{display:inline-flex!important;padding:5px 7px!important;border-radius:999px!important;border:1px solid #5a4927!important;background:#15120d!important;color:var(--rf17-gold)!important;font-size:8px!important;font-weight:1000!important;white-space:nowrap!important}
#home .player-card.compact .player-card-score strong{display:block!important;color:var(--rf17-acid)!important;font-size:16px!important;line-height:1!important;white-space:nowrap!important;text-align:left!important}
#home .player-card.compact .player-card-main{grid-column:3!important;grid-row:1!important;align-self:center!important;min-width:0!important}
#home .player-card.compact .player-card-kicker{font-size:7px!important}
#home .player-card.compact .player-card-aka{font-size:24px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
#home .player-card.compact .player-card-meta{gap:5px!important}

/* Full profile card: same information hierarchy */
.profile-preview .player-card:not(.compact){display:grid!important;grid-template-columns:126px 76px minmax(0,1fr)!important;gap:14px!important;align-items:center!important}
.profile-preview .player-card:not(.compact) .player-card-photo{grid-column:1!important;grid-row:1!important;width:126px!important;height:154px!important;border-radius:28px!important}
.profile-preview .player-card:not(.compact) .player-card-score{grid-column:2!important;grid-row:1!important;justify-items:start!important}
.profile-preview .player-card:not(.compact) .player-card-main{grid-column:3!important;grid-row:1!important}
.profile-preview .player-card:not(.compact) .player-card-progress{grid-column:1/-1!important}

/* Landing ranking: rank | avatar | level+XP | identity. Badge stays on the card corner. */
.landing-ranking .rank-row{display:grid!important;grid-template-columns:50px 94px 76px minmax(0,1fr)!important;gap:12px!important;align-items:center!important;min-height:136px!important;padding:16px 18px!important;border-radius:28px!important}
.landing-ranking .rank-row>b{grid-column:1!important}
.landing-ranking .rank-row>img{grid-column:2!important;width:90px!important;height:90px!important;border-radius:26px!important;object-fit:cover!important}
.landing-ranking .rank-row .rank-score{grid-column:3!important;grid-row:1!important;justify-items:start!important;align-content:center!important;min-width:0!important;margin:0!important;gap:7px!important}
.landing-ranking .rank-row .rank-score small{font-size:8px!important;white-space:nowrap!important}
.landing-ranking .rank-row .rank-score strong{font-size:15px!important;white-space:nowrap!important;text-align:left!important}
.landing-ranking .rank-row>span:not(.rf-plan-badge):not(.rank-score){grid-column:4!important;grid-row:1!important;min-width:0!important}
.landing-ranking .rank-row>span:not(.rf-plan-badge):not(.rank-score)>strong{font-size:21px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.landing-ranking .rank-row .rf-plan-badge.compact{right:14px!important;top:-10px!important}

/* Public profile identity */
.public-identity{display:grid!important;grid-template-columns:132px minmax(0,1fr)!important;gap:18px!important;align-items:center!important}
.public-identity #pubAvatar{width:132px!important;height:150px!important;border-radius:30px!important;object-fit:cover!important}

/* Community should feel like the same product */
.rf17-sheet{background:radial-gradient(circle at 96% 4%,rgba(217,255,67,.09),transparent 26%),radial-gradient(circle at 2% 96%,rgba(165,108,255,.10),transparent 28%),repeating-linear-gradient(120deg,transparent 0 42px,rgba(255,255,255,.015) 43px 44px,transparent 45px 88px),#090807!important}
.rf17-box,.rf17-user,.rf17-thread,.rf17-notice,.rf17-aff,.rf17-aff-stats article{border-radius:20px!important;box-shadow:5px 6px 0 rgba(0,0,0,.30)!important}
.rf17-head h2{font-style:italic!important;text-shadow:3px 3px 0 rgba(255,74,50,.12)!important}

@media(max-width:720px){
  .landing-body .section-head.big,.app-v4 .section-head.big{grid-template-columns:1fr!important;gap:14px!important;align-items:stretch!important}.section-copy-card{transform:none!important}
  .landing-body .v4-section:after,.app-v4 .section-head.big:after{display:none}
  .landing-ranking .rank-row{grid-template-columns:38px 82px 66px minmax(0,1fr)!important;gap:9px!important;padding:14px!important;min-height:124px!important}
  .landing-ranking .rank-row>img{width:80px!important;height:80px!important;border-radius:23px!important}
  .landing-ranking .rank-row .rank-score{grid-column:3!important;grid-row:1!important;justify-items:start!important;margin:0!important}.landing-ranking .rank-row>span:not(.rf-plan-badge):not(.rank-score){grid-column:4!important;grid-row:1!important}
  .landing-ranking .rank-row>span:not(.rf-plan-badge):not(.rank-score)>strong{font-size:18px!important}.landing-ranking .rank-row .rank-score strong{font-size:13px!important}
  .profile-preview .player-card:not(.compact){grid-template-columns:106px 66px minmax(0,1fr)!important}.profile-preview .player-card:not(.compact) .player-card-photo{width:106px!important;height:134px!important}
}
@media(max-width:430px){
  #home .player-card.compact{grid-template-columns:84px 58px minmax(0,1fr)!important;gap:8px!important;padding:11px 12px!important}
  #home .player-card.compact .player-card-photo{width:84px!important;height:90px!important}
  #home .player-card.compact .player-card-score{grid-column:2!important;grid-row:1!important;display:grid!important;justify-items:start!important;margin:0!important}
  #home .player-card.compact .player-card-score strong{font-size:14px!important}
  #home .player-card.compact .player-card-main{grid-column:3!important;grid-row:1!important}
  #home .player-card.compact .player-card-aka{font-size:20px!important}
  .landing-ranking .rank-row{grid-template-columns:34px 74px 60px minmax(0,1fr)!important;gap:7px!important;padding:12px!important}
  .landing-ranking .rank-row>img{width:72px!important;height:72px!important;border-radius:21px!important}
  .landing-ranking .rank-row .rank-score{grid-column:3!important;grid-row:1!important;display:grid!important;justify-items:start!important;margin:0!important}.landing-ranking .rank-row>span:not(.rf-plan-badge):not(.rank-score){grid-column:4!important;grid-row:1!important}
  .landing-ranking .rank-row .rank-score small{font-size:7px!important;padding:4px 6px!important}.landing-ranking .rank-row .rank-score strong{font-size:12px!important}.landing-ranking .rank-row>span:not(.rf-plan-badge):not(.rank-score)>strong{font-size:16px!important}
  .public-identity{grid-template-columns:108px minmax(0,1fr)!important}.public-identity #pubAvatar{width:108px!important;height:124px!important;border-radius:25px!important}
}