    /* Afritesting admin dashboard */
    .admin-dashboard-modal{
      width:min(100%,1240px);max-height:95vh;overflow:auto;background:#f7f6fa;
      border-radius:28px;box-shadow:0 30px 90px rgba(20,12,33,.32)
    }
    .admin-shell{display:grid;grid-template-columns:235px 1fr;min-height:760px}
    .admin-side{
      background:#171321;color:white;padding:24px 18px;
      border-radius:28px 0 0 28px;display:flex;flex-direction:column
    }
    .admin-side .brand{color:white}
    .admin-workspace{
      margin:26px 0 18px;padding:12px;border-radius:14px;
      background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.08)
    }
    .admin-workspace strong{font-size:12px;display:block}
    .admin-workspace span{font-size:10px;color:#aaa1b5}
    .admin-nav{display:flex;flex-direction:column;gap:5px}
    .admin-nav a{
      padding:10px 12px;border-radius:10px;color:#c9c3d1;font-size:12px;font-weight:700
    }
    .admin-nav a.active{background:rgba(111,70,217,.28);color:white}
    .admin-nav a:hover{background:rgba(255,255,255,.06)}
    .admin-side-foot{margin-top:auto;font-size:10px;color:#81798a;padding:10px}
    .admin-main{padding:28px}
    .admin-top{
      display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:22px
    }
    .admin-top h2{font-size:30px}
    .admin-top p{font-size:13px;color:var(--muted);margin:5px 0 0}
    .admin-actions{display:flex;gap:8px;align-items:center}
    .admin-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:18px}
    .admin-stat{
      background:white;border:1px solid var(--line);border-radius:16px;padding:15px
    }
    .admin-stat span{
      font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:800
    }
    .admin-stat strong{font:800 22px "Manrope";display:block;margin-top:5px}
    .admin-stat small{font-size:9px;color:var(--muted)}
    .admin-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:16px}
    .admin-card{background:white;border:1px solid var(--line);border-radius:20px;padding:18px}
    .admin-card-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px}
    .admin-card-head h3{font-size:15px}
    .admin-card-head a{font-size:10px;color:var(--purple);font-weight:800}
    .queue-row{
      display:grid;grid-template-columns:1.5fr .8fr .7fr .7fr auto;
      gap:10px;align-items:center;padding:12px 0;border-top:1px solid #f0edf2;font-size:10px
    }
    .queue-row:first-of-type{border-top:0}
    .queue-title strong{display:block;font-size:11px}
    .queue-title span{font-size:9px;color:var(--muted)}
    .admin-pill{
      display:inline-block;padding:5px 7px;border-radius:999px;font-size:8px;font-weight:800
    }
    .admin-pill.review{background:var(--orange-soft);color:var(--orange-dark)}
    .admin-pill.ready{background:#e9f8f1;color:var(--success)}
    .admin-pill.recruiting{background:var(--purple-soft);color:var(--purple-dark)}
    .admin-pill.risk{background:#fdebed;color:#b9414d}
    .admin-list-item{
      display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-top:1px solid #f0edf2
    }
    .admin-list-item:first-of-type{border-top:0}
    .admin-list-item strong{display:block;font-size:10px}
    .admin-list-item span{font-size:9px;color:var(--muted)}
    .admin-list-item b{font-size:10px}
    .admin-toolbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
    .admin-filter{
      border:1px solid var(--line);background:white;border-radius:10px;padding:8px 10px;
      font:600 10px "DM Sans";color:#5f5964
    }
    .admin-filter.active{
      background:var(--purple-soft);border-color:transparent;color:var(--purple-dark)
    }
    .admin-pill.changes{background:var(--orange-soft);color:var(--orange-dark)}
    .admin-pill.payment{background:#e9f8f1;color:var(--success)}
    .review-panel{
      display:none;margin-top:16px;background:#fbfafc;border:1px solid var(--line);
      border-radius:18px;padding:16px
    }
    .review-panel.open{display:block}
    .review-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
    .review-box{background:white;border:1px solid var(--line);border-radius:14px;padding:13px}
    .review-box span{display:block;font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.07em;font-weight:800}
    .review-box strong{display:block;font-size:12px;margin-top:4px}
    .review-note{margin-top:12px}
    .review-note textarea{
      width:100%;min-height:72px;border:1px solid var(--line);border-radius:12px;
      padding:11px;font:500 11px "DM Sans";resize:vertical
    }
    .review-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
    .review-actions[hidden],
    .collection-detail.is-confirmed .review-actions,
    .payout-detail-panel.is-paid .review-actions{
      display:none !important
    }
    #adminReviewPanel .review-actions .btn:disabled{
      opacity:.5;cursor:not-allowed;transform:none;box-shadow:none
    }
    @media(max-width:960px){
      .admin-shell{grid-template-columns:1fr}
      .admin-side{display:none}
      .admin-stats{grid-template-columns:repeat(2,1fr)}
      .admin-grid{grid-template-columns:1fr}
      .admin-main{padding:20px}
      .queue-row{grid-template-columns:1fr 1fr}
    }

    /* Admin recruitment board */
    .recruitment-board{
      display:none;
      background:#f7f6fa;
      min-height:100%;
    }
    .recruitment-board.active{display:block}
    .recruitment-board-head{
      display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px
    }
    .recruitment-board-head h2{font-size:28px}
    .recruitment-board-head p{font-size:12px;color:var(--muted);margin:5px 0 0}
    .recruitment-summary{
      display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:16px
    }
    .recruitment-summary-card{
      background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px
    }
    .recruitment-summary-card span{
      display:block;font-size:9px;text-transform:uppercase;letter-spacing:.07em;
      font-weight:800;color:var(--muted)
    }
    .recruitment-summary-card strong{
      display:block;font:800 22px "Manrope";margin-top:4px
    }
    .recruitment-layout{
      display:grid;grid-template-columns:1.1fr .9fr;gap:16px
    }
    .recruitment-card{
      background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px
    }
    .recruitment-card + .recruitment-card{margin-top:16px}
    .recruitment-card-head{
      display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px
    }
    .recruitment-card-head h3{font-size:15px}
    .recruitment-card-head a{font-size:10px;color:var(--purple);font-weight:800}
    .recruitment-funnel{
      display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:12px
    }
    .funnel-stage{
      background:#faf8fd;border:1px solid var(--line);border-radius:14px;padding:12px;text-align:center
    }
    .funnel-stage strong{font:800 18px "Manrope";display:block}
    .funnel-stage span{font-size:9px;color:var(--muted)}
    .participant-filter-grid{
      display:grid;grid-template-columns:repeat(2,1fr);gap:10px
    }
    .participant-filter-grid .field{gap:5px}
    .participant-filter-grid label{font-size:10px}
    .match-results{
      margin-top:14px;border-top:1px solid #f0edf2
    }
    .match-result{
      display:grid;grid-template-columns:auto 1fr .7fr .7fr auto;gap:10px;align-items:center;
      padding:11px 0;border-bottom:1px solid #f0edf2;font-size:10px
    }
    .match-result input{accent-color:var(--purple)}
    .match-person{display:flex;align-items:center;gap:8px}
    .match-person .avatar{width:32px;height:32px;font-size:9px}
    .match-person strong{display:block;font-size:10px}
    .match-person span{display:block;font-size:9px;color:var(--muted)}
    .match-score{font-weight:800;color:var(--success)}
    .match-result.is-invited{opacity:.55}
    .match-result.is-invited .match-score{color:var(--muted)}
    .recruitment-actionbar{
      display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;
      margin-top:12px;padding-top:12px;border-top:1px solid var(--line)
    }
    .recruitment-actionbar span{font-size:10px;color:var(--muted)}
    .pipeline-table{width:100%;border-collapse:collapse}
    .pipeline-table th{
      text-align:left;font-size:9px;color:var(--muted);text-transform:uppercase;
      letter-spacing:.07em;padding:9px 8px;border-bottom:1px solid var(--line)
    }
    .pipeline-table td{
      font-size:10px;padding:10px 8px;border-bottom:1px solid #f0edf2;vertical-align:middle
    }
    .pipeline-status{
      display:inline-block;padding:5px 7px;border-radius:999px;font-size:8px;font-weight:800
    }
    .pipeline-status.notified{background:var(--purple-soft);color:var(--purple-dark)}
    .pipeline-status.screened{background:var(--orange-soft);color:var(--orange-dark)}
    .pipeline-status.qualified{background:#e9f8f1;color:var(--success)}
    .pipeline-status.confirmed{background:var(--purple-soft);color:var(--purple-dark)}
    .pipeline-status.rejected{background:#fdebed;color:#b9414d}
    .pipeline-actions{display:flex;gap:6px;flex-wrap:wrap}
    .pipeline-actions button{
      border:1px solid var(--line);background:#fff;border-radius:9px;
      padding:6px 8px;font:700 9px "DM Sans";cursor:pointer
    }
    .study-selector{
      display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px
    }
    .study-selector button{
      border:1px solid var(--line);background:#fff;border-radius:999px;
      padding:8px 10px;font:700 9px "DM Sans";cursor:pointer;color:#6c6571
    }
    .study-selector button.active{
      background:var(--purple-soft);color:var(--purple-dark);border-color:#cdbff0
    }
    .recruitment-note{
      background:#fffaf6;border:1px solid #ffe0c9;border-radius:14px;padding:13px;
      font-size:10px;color:#7b5a43;margin-top:12px
    }
    @media(max-width:980px){
      .recruitment-summary{grid-template-columns:repeat(2,1fr)}
      .recruitment-layout{grid-template-columns:1fr}
      .recruitment-funnel{grid-template-columns:repeat(2,1fr)}
      .match-result{grid-template-columns:auto 1fr 1fr}
    }

/* Admin collections / payment confirmation */
.admin-collections-view{display:none}
.admin-collections-view.active{display:block}
.collections-summary{
  display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:16px
}
.collections-summary-card{
  background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px
}
.collections-summary-card span{
  display:block;font-size:9px;text-transform:uppercase;letter-spacing:.08em;
  color:var(--muted);font-weight:800
}
.collections-summary-card strong{
  display:block;font:800 22px "Manrope";margin-top:5px
}
.collections-table{width:100%;border-collapse:collapse}
.collections-table th{
  text-align:left;font-size:9px;color:var(--muted);text-transform:uppercase;
  letter-spacing:.07em;padding:9px 8px;border-bottom:1px solid var(--line)
}
.collections-table td{
  font-size:10px;padding:11px 8px;border-bottom:1px solid #f0edf2;vertical-align:middle
}
.collection-status{
  display:inline-block;padding:5px 7px;border-radius:999px;font-size:8px;font-weight:800
}
.collection-status.awaiting{background:#f0edf4;color:#716a78}
.collection-status.pending{background:var(--orange-soft);color:var(--orange-dark)}
.collection-status.confirmed{background:#e9f8f1;color:var(--success)}
.collection-status.issue{background:#fdebed;color:#b9414d}
.collection-actions{display:flex;gap:6px;flex-wrap:wrap}
.collection-actions button{
  border:1px solid var(--line);background:#fff;border-radius:9px;
  padding:6px 8px;font:700 9px "DM Sans";cursor:pointer
}
.collection-actions .confirm-payment-btn{
  background:var(--purple);color:#fff;border-color:var(--purple)
}
.collection-detail{
  display:none;margin-top:16px;background:#fbfafc;border:1px solid var(--line);
  border-radius:18px;padding:16px
}
.collection-detail.open{display:block}
.collection-detail-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:10px
}
.collection-detail-box{
  background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px
}
.collection-detail-box span{
  display:block;font-size:9px;text-transform:uppercase;letter-spacing:.07em;
  color:var(--muted);font-weight:800
}
.collection-detail-box strong{display:block;font-size:11px;margin-top:4px}
.payment-admin-note{
  margin-top:12px;padding:12px;border:1px solid var(--line);border-radius:14px;background:#fff
}
.payment-admin-note textarea{
  width:100%;min-height:68px;border:0;outline:none;resize:vertical;
  font:500 10px "DM Sans";background:transparent
}
.payment-confirm-banner{
  margin-top:12px;background:#e9f8f1;border:1px solid #cceedd;border-radius:14px;
  padding:12px;font-size:10px;color:#2e6f55
}
@media(max-width:900px){
  .collections-summary{grid-template-columns:1fr 1fr}
  .collection-detail-grid{grid-template-columns:1fr}
}

.admin-payouts-view{display:none}
.admin-payouts-view.active{display:block}
.admin-payout-table{width:100%;border-collapse:collapse}
.admin-payout-table th{
  text-align:left;font-size:9px;color:var(--muted);text-transform:uppercase;
  letter-spacing:.07em;padding:9px 8px;border-bottom:1px solid var(--line)
}
.admin-payout-table td{
  font-size:10px;padding:11px 8px;border-bottom:1px solid #f0edf2;vertical-align:middle
}
.admin-payout-actions{display:flex;gap:6px;flex-wrap:wrap}
.admin-payout-actions button{
  border:1px solid var(--line);background:#fff;border-radius:9px;
  padding:6px 8px;font:700 9px "DM Sans";cursor:pointer
}
.admin-payout-actions .approve-payout{
  background:var(--purple);color:#fff;border-color:var(--purple)
}
.admin-payout-actions .mark-paid{
  background:var(--orange);color:#21140c;border-color:var(--orange)
}
.payout-detail-panel{
  display:none;margin-top:16px;background:#fbfafc;border:1px solid var(--line);
  border-radius:18px;padding:16px
}
.payout-detail-panel.open{display:block}
@media(max-width:850px){
  .payout-summary{grid-template-columns:1fr}
  .payout-row{grid-template-columns:1fr 1fr}
}

/* Admin recruitment study board */
.recruitment-study-board{
  display:flex;
  flex-direction:column;
  gap:12px;
  margin-bottom:18px;
}
.recruitment-study-row{
  background:#fff;
  border:1px solid var(--line);
  border-radius:18px;
  padding:15px;
}
.recruitment-study-row-top{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:14px;
}
.recruitment-study-row h3{
  font-size:14px;
  margin:5px 0 4px;
}
.recruitment-study-row p{
  font-size:9px;
  color:var(--muted);
  margin:0;
}
.recruitment-study-meta{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
  margin-top:9px;
}
.recruitment-study-meta span{
  padding:5px 7px;
  border-radius:999px;
  background:#f5f2f8;
  color:#6d6671;
  font-size:8px;
  font-weight:700;
}
.recruitment-study-stats{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:8px;
  margin-top:12px;
}
.recruitment-study-stat{
  background:#fbfafc;
  border:1px solid #f0edf2;
  border-radius:12px;
  padding:10px;
}
.recruitment-study-stat span{
  display:block;
  font-size:7px;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:var(--muted);
  font-weight:800;
}
.recruitment-study-stat strong{
  display:block;
  font:800 16px "Manrope";
  margin-top:3px;
}
.recruitment-study-progress{
  margin-top:10px;
}
.recruitment-study-progress-top{
  display:flex;
  justify-content:space-between;
  gap:10px;
  font-size:8px;
  color:var(--muted);
  margin-bottom:5px;
}
.recruitment-study-progress-track{
  height:7px;
  border-radius:999px;
  background:#eeeaf2;
  overflow:hidden;
}
.recruitment-study-progress-fill{
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,var(--purple),var(--orange));
}
.recruitment-study-actions{
  display:flex;
  gap:7px;
  flex-wrap:wrap;
  margin-top:11px;
}
.recruitment-study-actions .btn{
  padding:7px 9px;
  font-size:8px;
}
.recruitment-health{
  display:inline-flex;
  align-items:center;
  gap:5px;
  padding:5px 7px;
  border-radius:999px;
  font-size:8px;
  font-weight:800;
}
.recruitment-health.good{background:#e9f8f1;color:var(--success)}
.recruitment-health.watch{background:var(--orange-soft);color:var(--orange-dark)}
.recruitment-health.risk{background:#fdebed;color:#b9414d}
.recruitment-study-detail{display:none}
.recruitment-study-detail.active{display:block}
.recruitment-board-back{
  border:0;
  background:transparent;
  color:var(--purple);
  font:800 9px "DM Sans";
  cursor:pointer;
  padding:0;
  margin-bottom:10px;
}
@media(max-width:900px){
  .recruitment-study-stats{grid-template-columns:repeat(2,1fr)}
}


/* Admin Study Review */
.admin-study-review-view{display:none}
.admin-study-review-view.active{display:block}
.review-study-list{
  display:flex;flex-direction:column;gap:12px;margin-top:16px
}
.review-study-card{
  background:#fff;border:1px solid var(--line);border-radius:18px;padding:15px
}
.review-study-top{
  display:flex;justify-content:space-between;gap:16px;align-items:flex-start
}
.review-study-card h3{font-size:14px;margin:5px 0 4px}
.review-study-card p{font-size:9px;color:var(--muted);margin:0}
.review-study-meta{display:flex;gap:6px;flex-wrap:wrap;margin-top:9px}
.review-study-meta span{
  padding:5px 7px;border-radius:999px;background:#f5f2f8;
  color:#6d6671;font-size:8px;font-weight:700
}
.review-queue-status{
  display:inline-flex;padding:5px 7px;border-radius:999px;
  font-size:8px;font-weight:800
}
.review-queue-status.new{background:var(--purple-soft);color:var(--purple-dark)}
.review-queue-status.changes{background:var(--orange-soft);color:var(--orange-dark)}
.review-queue-status.ready{background:#e9f8f1;color:var(--success)}

.study-review-detail{display:none}
.study-review-detail.active{display:block}
.review-back{
  border:0;background:transparent;color:var(--purple);
  font:800 9px "DM Sans";cursor:pointer;padding:0;margin-bottom:10px
}
.review-header{
  display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:16px
}
.review-header h2{font-size:27px;margin:5px 0 4px}
.review-header p{font-size:10px;color:var(--muted);margin:0}
.review-grid{
  display:grid;grid-template-columns:1.1fr .9fr;gap:16px
}
.review-panel{
  background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px
}
.review-panel + .review-panel{margin-top:14px}
.review-panel h3{font-size:14px;margin:0 0 12px}
.review-info-grid{
  display:grid;grid-template-columns:repeat(2,1fr);gap:9px
}
.review-info{
  background:#fbfafc;border:1px solid #f0edf2;border-radius:12px;padding:10px
}
.review-info span{
  display:block;font-size:7px;text-transform:uppercase;letter-spacing:.06em;
  color:var(--muted);font-weight:800
}
.review-info strong{display:block;font-size:10px;margin-top:4px;line-height:1.4}
.review-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:9px}
.review-tags span{
  background:var(--purple-soft);color:var(--purple-dark);
  border-radius:999px;padding:5px 7px;font-size:8px;font-weight:700
}
.review-checklist{display:flex;flex-direction:column;gap:8px}
.review-check{
  display:flex;justify-content:space-between;gap:12px;align-items:flex-start;
  border:1px solid var(--line);border-radius:12px;padding:10px
}
.review-check strong{display:block;font-size:10px}
.review-check span{display:block;font-size:8px;color:var(--muted);margin-top:3px}
.review-check-state{
  white-space:nowrap;padding:5px 7px;border-radius:999px;
  font-size:8px;font-weight:800
}
.review-check-state.pass{background:#e9f8f1;color:var(--success)}
.review-check-state.warn{background:var(--orange-soft);color:var(--orange-dark)}
.review-check-state.block{background:#fdebed;color:#b9414d}
.review-price-row{
  display:flex;justify-content:space-between;gap:14px;padding:9px 0;
  border-bottom:1px solid #efebf1;font-size:10px
}
.review-price-row:last-child{border-bottom:0}
.review-price-row span{color:var(--muted)}
.review-price-row.total{font-size:13px;font-weight:800}
.review-textarea{
  width:100%;min-height:88px;border:1px solid var(--line);
  border-radius:12px;padding:10px;font:500 10px "DM Sans";resize:vertical
}
.review-textarea.is-needed{
  border-color:var(--orange);
  background:var(--orange-soft);
}
.review-actions{
  display:flex;gap:8px;flex-wrap:wrap;margin-top:14px
}
.review-actions[hidden],
.collection-detail.is-confirmed .review-actions,
.payout-detail-panel.is-paid .review-actions{
  display:none !important
}
.review-audit{display:flex;flex-direction:column;gap:8px}
.review-audit-item{
  display:grid;grid-template-columns:auto 1fr;gap:9px;align-items:flex-start
}
.review-audit-dot{
  width:9px;height:9px;border-radius:999px;background:var(--purple);margin-top:4px
}
.review-audit-item strong{display:block;font-size:9px}
.review-audit-item span{display:block;font-size:8px;color:var(--muted);margin-top:2px}
.review-resolution{
  margin-top:12px;padding:12px;border-radius:13px;background:#e9f8f1;
  border:1px solid #cceedd;font-size:9px;color:#2f6f55
}
@media(max-width:900px){
  .review-grid{grid-template-columns:1fr}
  .review-info-grid{grid-template-columns:1fr}
}


#adminStudyReviewDetail{width:100%}
#adminStudyReviewDetail.active{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  min-height:600px;
}
#adminStudyReviewDetail .review-grid{
  display:grid !important;
}


/* Study Review panels must not inherit the legacy hidden review-panel behavior */
#adminStudyReviewDetail .review-panel{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
}
#adminStudyReviewDetail .review-panel + .review-panel{
  margin-top:14px;
}
#adminStudyReviewDetail .review-grid{
  display:grid !important;
  grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr) !important;
  gap:16px !important;
  align-items:start;
}
@media(max-width:900px){
  #adminStudyReviewDetail .review-grid{
    grid-template-columns:1fr !important;
  }
}


/* Recruitment view visibility hardening */
#adminRecruitmentView{
  width:100%;
}
#adminRecruitmentView.active{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  min-height:600px;
}
#adminRecruitmentView .recruitment-study-board,
#adminRecruitmentView .recruitment-study-row,
#adminRecruitmentView .recruitment-layout,
#adminRecruitmentView .recruitment-card,
#adminRecruitmentView .recruitment-board-head{
  visibility:visible !important;
  opacity:1 !important;
}
#adminRecruitmentView .recruitment-study-row,
#adminRecruitmentView .recruitment-card{
  display:block !important;
}
#adminRecruitmentStudyIndex{
  display:block;
}
#adminRecruitmentStudyDetail{
  display:none;
}
#adminRecruitmentStudyDetail.active{
  display:block !important;
}


#adminOverviewView,
#adminStudyReviewView,
#adminRecruitmentView,
#adminCollectionsView,
#adminParticipantsView,
#adminQualityView{
  width:100%;
}
#adminStudyReviewView,
#adminRecruitmentView,
#adminCollectionsView{
  display:none;
}
#adminStudyReviewView.active,
#adminRecruitmentView.active,
#adminCollectionsView.active{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
}


/* Admin Participants */
.admin-participants-view{display:none}
.admin-participants-view.active{display:block}
.participants-toolbar{
  display:flex;justify-content:space-between;gap:12px;align-items:center;
  flex-wrap:wrap;margin-bottom:16px
}
.participants-search{
  flex:1;min-width:240px;display:flex;gap:8px
}
.participants-search input{
  width:100%;border:1px solid var(--line);border-radius:12px;
  padding:10px 12px;font:500 10px "DM Sans";background:#fff
}
.participant-filter-row{display:flex;gap:7px;flex-wrap:wrap}
.participant-filter{
  border:1px solid var(--line);background:#fff;border-radius:999px;
  padding:7px 9px;font:700 8px "DM Sans";cursor:pointer;color:#68616d
}
.participant-filter.active{
  background:var(--purple-soft);color:var(--purple-dark);border-color:#cdbff0
}
.participants-table-wrap{
  background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden
}
.participants-table{width:100%;border-collapse:collapse}
.participants-table th{
  text-align:left;font-size:8px;text-transform:uppercase;letter-spacing:.07em;
  color:var(--muted);padding:10px;border-bottom:1px solid var(--line)
}
.participants-table td{
  font-size:9px;padding:11px 10px;border-bottom:1px solid #f0edf2;vertical-align:middle
}
.participant-cell{display:flex;align-items:center;gap:9px}
.participant-avatar{
  width:34px;height:34px;border-radius:11px;background:var(--purple-soft);
  color:var(--purple-dark);display:grid;place-items:center;font-weight:900;font-size:9px
}
.participant-cell strong{display:block;font-size:9px}
.participant-cell span{display:block;font-size:8px;color:var(--muted);margin-top:2px}
.participant-badge{
  display:inline-flex;padding:5px 7px;border-radius:999px;font-size:8px;font-weight:800
}
.participant-badge.verified{background:#e9f8f1;color:var(--success)}
.participant-badge.pending{background:var(--orange-soft);color:var(--orange-dark)}
.participant-badge.flagged{background:#fdebed;color:#b9414d}
.participant-badge.new{background:var(--purple-soft);color:var(--purple-dark)}
.participant-score{
  font-weight:900;font-size:10px
}
.participant-row-action{
  border:1px solid var(--line);background:#fff;border-radius:9px;
  padding:6px 8px;font:700 8px "DM Sans";cursor:pointer
}
.participant-admin-summary{
  display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:16px
}
.participant-admin-summary > div{
  background:#fff;border:1px solid var(--line);border-radius:16px;padding:13px
}
.participant-admin-summary span{
  display:block;font-size:8px;text-transform:uppercase;letter-spacing:.06em;
  color:var(--muted);font-weight:800
}
.participant-admin-summary strong{
  display:block;font:800 20px "Manrope";margin-top:4px
}
.participant-detail-view{display:none}
.participant-detail-view.active{display:block}
.participant-detail-header{
  display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:16px
}
.participant-detail-grid{
  display:grid;grid-template-columns:1.1fr .9fr;gap:16px
}
.participant-detail-card{
  background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px
}
.participant-detail-card + .participant-detail-card{margin-top:14px}
.participant-detail-card h3{font-size:14px;margin:0 0 12px}
.participant-detail-info{
  display:grid;grid-template-columns:repeat(2,1fr);gap:9px
}
.participant-detail-info > div{
  background:#fbfafc;border:1px solid #f0edf2;border-radius:12px;padding:10px
}
.participant-detail-info span{
  display:block;font-size:7px;text-transform:uppercase;letter-spacing:.06em;
  color:var(--muted);font-weight:800
}
.participant-detail-info strong{display:block;font-size:9px;margin-top:3px}
.participant-history-row{
  display:grid;grid-template-columns:1.4fr .8fr .8fr .7fr;
  gap:8px;padding:9px 0;border-bottom:1px solid #f0edf2;font-size:9px
}
.participant-history-row:last-child{border-bottom:0}
.participant-admin-actions{display:flex;gap:7px;flex-wrap:wrap}
.participant-admin-note{
  width:100%;min-height:82px;border:1px solid var(--line);border-radius:12px;
  padding:10px;font:500 10px "DM Sans";resize:vertical
}
.participant-risk-box{
  padding:11px;border-radius:13px;background:#fff8f1;border:1px solid #ffd8bb;
  font-size:9px;line-height:1.5;color:#75533e
}
@media(max-width:900px){
  .participant-admin-summary{grid-template-columns:1fr 1fr}
  .participant-detail-grid{grid-template-columns:1fr}
  .participant-detail-info{grid-template-columns:1fr}
}


#adminParticipantsView{
  width:100%;
  display:none;
}
#adminParticipantsView.active{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  min-height:600px;
}
#adminParticipantsIndex{
  display:block;
}
#adminParticipantDetail{
  display:none;
}
#adminParticipantDetail.active{
  display:block !important;
}
#adminParticipantsView .participant-admin-summary,
#adminParticipantsView .participants-toolbar,
#adminParticipantsView .participants-table-wrap{
  display:block;
  visibility:visible !important;
  opacity:1 !important;
}
#adminParticipantsView .participant-admin-summary{
  display:grid !important;
}


/* Single-source admin page visibility */
#adminDashboardModal .admin-main > #adminOverviewView,
#adminDashboardModal .admin-main > #adminStudyReviewView,
#adminDashboardModal .admin-main > #adminRecruitmentView,
#adminDashboardModal .admin-main > #adminParticipantsView,
#adminDashboardModal .admin-main > #adminQualityView,
#adminDashboardModal .admin-main > #adminCollectionsView,
#adminDashboardModal .admin-main > #adminClientsView,
#adminDashboardModal .admin-main > #adminSettingsView{
  display:none !important;
  width:100% !important;
  visibility:visible !important;
  opacity:1 !important;
}
#adminDashboardModal .admin-main > .admin-page-active{
  display:block !important;
}
#adminParticipantsView .participant-admin-summary{
  display:grid !important;
}
#adminParticipantsView .participants-toolbar{
  display:flex !important;
}
#adminParticipantsView .participants-table-wrap{
  display:block !important;
}


/* FINAL admin visibility fix — active page wins over the per-ID hide rule */
#adminDashboardModal .admin-main > #adminOverviewView.admin-page-active,
#adminDashboardModal .admin-main > #adminStudyReviewView.admin-page-active,
#adminDashboardModal .admin-main > #adminRecruitmentView.admin-page-active,
#adminDashboardModal .admin-main > #adminParticipantsView.admin-page-active,
#adminDashboardModal .admin-main > #adminQualityView.admin-page-active,
#adminDashboardModal .admin-main > #adminCollectionsView.admin-page-active,
#adminDashboardModal .admin-main > #adminClientsView.admin-page-active,
#adminDashboardModal .admin-main > #adminSettingsView.admin-page-active{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
}

/* Ensure the default page can render immediately */
#adminDashboardModal .admin-main > #adminOverviewView.admin-page-active{
  display:block !important;
}



/* Full-page admin shell */
body.page-admin #adminDashboardModal{
  display:block;
  position:static;
  background:transparent;
  padding:0;
  min-height:100vh;
}
body.page-admin .admin-dashboard-modal{
  width:100%;
  max-height:none;
  min-height:100vh;
  border-radius:0;
  box-shadow:none;
  overflow:visible;
}
.quality-overview-action{
  border:0;background:transparent;padding:0;
  font:800 10px "DM Sans";cursor:pointer
}
.quality-overview-action.risk{color:#b9414d}
.quality-overview-action.warn{color:var(--orange-dark)}
.quality-filter-row{display:flex;gap:7px;flex-wrap:wrap;margin:4px 0 16px}
.quality-filter{
  border:1px solid var(--line);background:#fff;border-radius:999px;
  padding:7px 9px;font:700 8px "DM Sans";cursor:pointer;color:#68616d
}
.quality-filter.active{
  background:var(--purple-soft);color:var(--purple-dark);border-color:#cdbff0
}
.quality-flag-status{
  display:inline-flex;padding:5px 7px;border-radius:999px;
  font-size:8px;font-weight:800
}
.quality-flag-status.duplicate,
.quality-flag-status.complaint,
.quality-flag-status.suspended{background:#fdebed;color:#b9414d}
.quality-flag-status.inconsistency,
.quality-flag-status.held{background:var(--orange-soft);color:var(--orange-dark)}
.quality-flag-status.cleared{background:#e9f8f1;color:var(--success)}
#adminQualityDetail{display:none}
#adminQualityDetail.active{display:block !important}
#adminQualityDetail .review-actions .btn:disabled{
  opacity:.5;cursor:not-allowed;transform:none;box-shadow:none
}
body.page-admin .admin-shell{min-height:100vh}
body.page-admin .admin-side{border-radius:0;min-height:100vh}

#adminDashboardModal #adminClientsView{
  display:none !important;
}
#adminDashboardModal #adminClientsView.admin-page-active{
  display:block !important;
}
#adminClientsView .participants-toolbar{display:flex !important}
#adminClientsView .participants-table-wrap{display:block !important}
#adminClientsIndex{display:block}
#adminClientDetail{display:none}
#adminClientDetail.active{display:block !important}
.admin-client-study{
  display:flex;justify-content:space-between;gap:12px;align-items:center;
  padding:11px 0;border-top:1px solid #f0edf2
}
.admin-client-study:first-child{border-top:0}
.admin-client-study strong{display:block;font-size:11px}
.admin-client-study span{display:block;font-size:9px;color:var(--muted);margin-top:2px}
.admin-client-study-actions{display:flex;gap:7px;flex-wrap:wrap;flex-shrink:0}

#adminDashboardModal #adminSettingsView{display:none !important}
#adminDashboardModal #adminSettingsView.admin-page-active{display:block !important}
#adminSettingsView .admin-settings-head{
  display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px
}
#adminSettingsView .admin-settings-head h3{margin:0}
#adminSettingsView .profile-edit-toggle{
  border:0;background:transparent;color:var(--purple);font:800 10px "DM Sans";cursor:pointer
}
#adminSettingsView .profile-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
#adminSettingsView .profile-info-item{
  border:1px solid var(--line);border-radius:14px;padding:12px;background:#fbfafc
}
#adminSettingsView .profile-info-item span{
  display:block;font-size:9px;color:var(--muted);text-transform:uppercase;
  letter-spacing:.07em;font-weight:800
}
#adminSettingsView .profile-info-item strong{display:block;font-size:11px;margin-top:4px}
#adminSettingsView .profile-edit-form{display:none;margin-top:12px}
#adminSettingsView .profile-edit-form.open{display:block}
#adminSettingsView .profile-edit-actions{display:flex;gap:8px;margin-top:14px}
#adminSettingsView .field.full{grid-column:1 / -1}
@media(max-width:900px){
  #adminSettingsView .profile-info-grid{grid-template-columns:1fr}
}


