
/* =========================================================
   NEXTIER V11.3.4 · COACH / REVIEW VISUAL REFINEMENT
   Public agent/role assets intentionally removed.
========================================================= */
.review-stars-text{
  color:#7c57b6;
  letter-spacing:1.2px;
  font-size:11px;
  white-space:nowrap
}

/* Coach cards: keep the original card language and make review a quiet information layer */
.coach-pro{
  overflow:hidden
}
.coach-pro-body{
  display:flex;
  flex-direction:column;
  min-height:360px
}
.coach-review-public{
  margin-top:22px;
  padding-top:16px;
  border-top:1px solid #e8edf0
}
.coach-review-clean-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px
}
.coach-review-clean-head small{
  display:block;
  color:#76608f;
  font-size:8px;
  font-weight:900;
  letter-spacing:.15em
}
.coach-review-clean-head strong{
  display:block;
  margin-top:4px;
  color:#102736;
  font-size:12px;
  font-weight:900
}
.coach-review-clean-head strong em{
  margin-left:5px;
  color:#7b58a8;
  font-style:normal
}
.coach-review-clean-head a{
  color:#596f7b;
  font-size:8px;
  font-weight:800;
  text-decoration:none;
  white-space:nowrap
}
.coach-review-clean-body{
  margin-top:10px
}
.coach-review-clean-meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px
}
.coach-review-clean-score{
  display:flex;
  align-items:center;
  gap:6px
}
.coach-review-clean-score b{
  color:#49365e;
  font-size:9px
}
.coach-review-clean-meta time{
  color:#99a5ab;
  font-size:8px
}
.coach-review-clean-body>p{
  margin:7px 0 0!important;
  color:#52636d!important;
  font-size:10px!important;
  font-weight:700;
  line-height:1.55!important;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden
}
.coach-review-clean-body footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-top:8px
}
.coach-review-clean-body footer span{
  color:#74858e;
  font-size:8px
}
.coach-review-clean-body footer small{
  color:#9aa6ac;
  font-size:7px;
  letter-spacing:.08em
}
.coach-review-clean-empty{
  margin-top:9px;
  color:#87959d;
  font-size:9px;
  line-height:1.5
}
.coach-review-loading{
  color:#87959d;
  font-size:9px
}
.coach-pro-actions{
  margin-top:auto
}

/* Reviews page */
.review-platform-section{
  padding-top:72px
}
.review-platform-head{
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(280px,.75fr);
  align-items:end;
  gap:48px;
  margin-bottom:30px
}
.review-platform-head>p{
  margin:0;
  color:#657883;
  font-size:13px;
  line-height:1.72
}
.review-summary-shell{
  display:grid;
  grid-template-columns:250px minmax(0,1fr);
  gap:1px;
  overflow:hidden;
  border:1px solid #dce5e9;
  border-radius:22px;
  background:#dce5e9;
  box-shadow:0 18px 48px rgba(25,57,73,.06)
}
.review-summary-score,
.review-summary-side{
  background:#fff
}
.review-summary-score{
  padding:24px
}
.review-summary-score>small,
.review-summary-count>small{
  color:#718792;
  font-size:8px;
  font-weight:900;
  letter-spacing:.14em
}
.review-summary-value{
  display:flex;
  align-items:baseline;
  gap:6px;
  margin-top:15px
}
.review-summary-value strong{
  color:#102938;
  font-size:50px;
  line-height:1;
  letter-spacing:-.05em
}
.review-summary-value span{
  color:#91a0a8;
  font-size:12px
}
.review-summary-stars{
  margin-top:10px;
  min-height:18px
}
.review-summary-score>p{
  margin:7px 0 0;
  color:#98a5ab;
  font-size:9px
}
.review-summary-side{
  display:grid;
  grid-template-columns:160px 1fr;
  gap:0
}
.review-summary-count{
  padding:24px;
  border-right:1px solid #e7ecef
}
.review-summary-count strong{
  display:block;
  margin-top:14px;
  color:#102938;
  font-size:36px;
  line-height:1
}
.review-summary-count span{
  display:block;
  margin-top:7px;
  color:#86949b;
  font-size:9px
}
.review-summary-metrics{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  align-items:stretch
}
.review-summary-metrics>div{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
  padding:18px 12px;
  border-right:1px solid #eef2f4
}
.review-summary-metrics>div:last-child{
  border-right:0
}
.review-summary-metrics span{
  color:#7f9099;
  font-size:8px;
  line-height:1.35
}
.review-summary-metrics strong{
  margin-top:8px;
  color:#213845;
  font-size:18px
}
.review-no-rating{
  color:#8b9aa2;
  font-size:9px
}

.review-coach-context{
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:16px;
  padding:13px 16px;
  border:1px solid #dde6ea;
  border-radius:14px;
  background:#f8fafb
}
.review-coach-context span{
  color:#7c58a8;
  font-size:8px;
  font-weight:900;
  letter-spacing:.12em
}
.review-coach-context strong{
  color:#102938;
  font-size:13px
}
.review-coach-context small{
  margin-left:auto;
  color:#98a4aa;
  font-size:8px;
  letter-spacing:.1em
}

.review-filterbar{
  display:grid;
  gap:8px;
  margin-top:18px;
  padding:0 0 16px;
  border-bottom:1px solid #e4eaed
}
.review-filter-group,
.review-sort-group{
  display:flex;
  flex-wrap:wrap;
  gap:6px
}
.review-filterbar button{
  min-height:36px;
  padding:8px 12px;
  border:1px solid #dfe6e9;
  border-radius:999px;
  background:#fff;
  color:#667983;
  font:inherit;
  font-size:9px;
  font-weight:800;
  cursor:pointer
}
.review-filterbar button.active{
  border-color:#153344;
  background:#153344;
  color:#fff
}
.review-sort-group{
  justify-content:flex-end;
  margin-top:-42px
}
.review-coach-locked .review-filterbar{
  display:flex;
  justify-content:flex-end;
  margin-top:14px
}
.review-coach-locked .review-sort-group{
  margin-top:0
}

.review-db-list{
  display:grid;
  gap:11px;
  margin-top:18px
}
.review-db-card{
  padding:21px 22px;
  border:1px solid #dfe7ea;
  border-radius:18px;
  background:#fff;
  box-shadow:0 10px 28px rgba(32,59,72,.035)
}
.review-card-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px
}
.review-card-rating{
  display:flex;
  align-items:center;
  gap:7px;
  color:#503a69;
  font-size:9px
}
.review-card-rating b{
  color:#503a69;
  font-size:10px
}
.review-label-only{
  color:#7b8790;
  font-size:9px;
  font-weight:800
}
.review-card-top time{
  color:#98a4aa;
  font-size:9px
}
.review-card-context{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:7px;
  margin-top:14px
}
.review-card-context strong{
  color:#65488b;
  font-size:9px;
  font-weight:900;
  letter-spacing:.06em
}
.review-card-context span{
  color:#86949b;
  font-size:8px
}
.review-db-card h3{
  margin:10px 0 7px;
  color:#142c3a;
  font-size:18px;
  line-height:1.4
}
.review-db-card>p{
  margin:0;
  color:#536771;
  font-size:12px;
  line-height:1.75
}
.review-db-card>footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-top:15px;
  padding-top:13px;
  border-top:1px solid #edf1f3
}
.review-db-card>footer strong{
  color:#374d59;
  font-size:9px
}
.review-db-card>footer span{
  color:#9aa5aa;
  font-size:8px
}
.review-loading,
.review-empty{
  padding:32px 18px;
  border:1px solid #e1e8eb;
  border-radius:16px;
  background:#fafcfc;
  color:#84939a;
  text-align:center;
  font-size:10px
}

/* Do not expose the unused public role/agent component */
.coach-expertise-public,
.review-audience-grid,
.review-coach-stats,
.public-game-icon{
  display:none!important
}

@media(max-width:900px){
  .review-platform-head{
    grid-template-columns:1fr;
    gap:12px
  }
  .review-summary-shell{
    grid-template-columns:1fr
  }
  .review-summary-side{
    grid-template-columns:140px 1fr
  }
  .review-summary-metrics{
    grid-template-columns:repeat(3,minmax(0,1fr))
  }
  .review-summary-metrics>div{
    border-bottom:1px solid #eef2f4
  }
  .review-sort-group{
    justify-content:flex-start;
    margin-top:0
  }
}

@media(max-width:760px){
  .coach-pro-body{
    min-height:0
  }
  .coach-review-public{
    margin-top:18px;
    padding-top:14px
  }
  .coach-review-clean-head{
    align-items:flex-start
  }
  .coach-review-clean-head strong{
    font-size:13px
  }
  .coach-review-clean-head a{
    padding-top:2px;
    font-size:8.5px
  }
  .coach-review-clean-body>p{
    font-size:11px!important
  }

  .review-platform-section{
    padding-top:54px
  }
  .review-summary-shell{
    border-radius:18px
  }
  .review-summary-score{
    padding:18px
  }
  .review-summary-value strong{
    font-size:42px
  }
  .review-summary-side{
    grid-template-columns:1fr
  }
  .review-summary-count{
    display:flex;
    align-items:end;
    gap:10px;
    padding:16px 18px;
    border-right:0;
    border-bottom:1px solid #e7ecef
  }
  .review-summary-count strong{
    margin:0 0 0 auto;
    font-size:27px
  }
  .review-summary-count span{
    margin:0 0 2px
  }
  .review-summary-metrics{
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
  .review-summary-metrics>div{
    min-height:76px;
    padding:13px
  }
  .review-coach-context{
    align-items:flex-start;
    flex-wrap:wrap
  }
  .review-coach-context small{
    width:100%;
    margin-left:0
  }
  .review-coach-locked .review-filterbar{
    justify-content:flex-start
  }
  .review-sort-group{
    width:100%;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr))
  }
  .review-sort-group button{
    width:100%;
    min-width:0;
    padding:8px 5px
  }
  .review-db-card{
    padding:16px
  }
  .review-db-card h3{
    font-size:16px
  }
  .review-db-card>p{
    font-size:12px;
    line-height:1.7
  }
}

@media(max-width:520px){
  .review-summary-metrics{
    grid-template-columns:1fr 1fr
  }
  .review-filter-group{
    display:grid;
    grid-template-columns:1fr 1fr;
    width:100%
  }
  .review-filter-group button{
    width:100%
  }
  .review-sort-group{
    grid-template-columns:1fr
  }
  .review-card-top{
    align-items:flex-start
  }
  .review-db-card>footer{
    align-items:flex-start;
    flex-direction:column
  }
}

.review-db-card footer,.coach-review-clean-body footer{background:transparent!important}
