    /* Researcher study creation flow */
    .study-modal{
      width:min(100%,860px);max-height:94vh;overflow:auto;background:#fff;
      border-radius:28px;box-shadow:0 30px 90px rgba(20,12,33,.3)
    }
    .study-choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
    .study-choice{
      border:1px solid var(--line);border-radius:16px;padding:16px;cursor:pointer;
      background:#fff;transition:.18s ease
    }
    .study-choice:hover{border-color:#cabcf2;transform:translateY(-1px)}
    .study-choice input{accent-color:var(--purple);margin-bottom:12px}
    .study-choice strong{display:block;font-size:13px}
    .study-choice span{display:block;color:var(--muted);font-size:11px;margin-top:4px}
    .budget-box{
      display:grid;grid-template-columns:1fr 1fr;gap:12px;
      background:#faf8fd;border:1px solid var(--line);border-radius:16px;padding:16px
    }
    .summary-box{
      background:#fbfafc;border:1px solid var(--line);border-radius:18px;padding:18px
    }
    .summary-line{
      display:flex;justify-content:space-between;gap:18px;padding:10px 0;
      font-size:12px;border-top:1px solid #eee9f1
    }
    .summary-line:first-child{border-top:0}
    .summary-line span{color:var(--muted)}
    .researcher-success{text-align:center;padding:20px 6px 8px}
    .researcher-success .success-mark{margin-bottom:18px}
    @media(max-width:700px){
      .study-choice-grid{grid-template-columns:1fr}
      .budget-box{grid-template-columns:1fr}
    }


    /* Client dashboard */
    .client-dashboard-modal{
      width:min(100%,1180px);max-height:94vh;overflow:auto;background:#f8f7fb;
      border-radius:28px;box-shadow:0 30px 90px rgba(20,12,33,.3)
    }
    .client-dash-shell{display:grid;grid-template-columns:220px 1fr;min-height:720px}
    .client-dash-side{
      background:#fff;border-right:1px solid var(--line);padding:24px 18px;
      border-radius:28px 0 0 28px;display:flex;flex-direction:column
    }
    .client-dash-main{padding:30px}
    .client-nav{display:flex;flex-direction:column;gap:5px}
    .client-nav a{
      padding:10px 12px;border-radius:11px;font-size:12px;font-weight:700;color:#6f6975
    }
    .client-nav a.active{background:var(--purple-soft);color:var(--purple-dark)}
    .client-dash-side .dash-brand{margin-bottom:18px}
    .client-dash-side .dash-user{
      display:flex;align-items:center;gap:10px;padding:12px;background:#faf8fd;
      border:1px solid var(--line);border-radius:15px;margin-bottom:22px
    }
    .client-dash-side .dash-user .avatar{width:36px;height:36px;flex-shrink:0}
    .client-dash-side .dash-user strong{display:block;font-size:12px}
    .client-dash-side .dash-user span{font-size:10px;color:var(--muted)}
    .client-dash-side .dash-side-foot{margin-top:auto;font-size:10px;color:#aaa3af;padding:10px}
    .client-top{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:22px}
    .client-top h2{font-size:30px}
    .client-top p{margin:5px 0 0;color:var(--muted);font-size:13px}
    .client-status{
      padding:8px 11px;border-radius:999px;background:var(--orange-soft);
      color:var(--orange-dark);font-size:10px;font-weight:800
    }
    .client-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}
    .client-stat{background:white;border:1px solid var(--line);border-radius:17px;padding:16px}
    .client-stat span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);font-weight:800}
    .client-stat strong{display:block;font:800 24px "Manrope";margin-top:5px}
    .client-stat small{font-size:10px;color:var(--muted)}
    .client-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:16px}
    .client-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:20px}
    .client-card-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:16px}
    .client-card-head h3{font-size:16px}
    .client-card-head a{font-size:10px;color:var(--purple);font-weight:800}
    .progress-row{margin:16px 0}
    .progress-row-top{display:flex;justify-content:space-between;font-size:11px;margin-bottom:7px}
    .progress-row-top span{color:var(--muted)}
    .client-progress-track{height:8px;border-radius:999px;background:#eeeaf2;overflow:hidden}
    .client-progress-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--purple),var(--orange))}
    .participant-row{
      display:grid;grid-template-columns:1.2fr .8fr .6fr auto;gap:12px;align-items:center;
      padding:12px 0;border-top:1px solid #f0edf2;font-size:11px
    }
    .participant-row:first-of-type{border-top:0}
    .participant-main{display:flex;align-items:center;gap:9px}
    .participant-main .avatar{width:34px;height:34px;font-size:10px}
    .participant-main strong{display:block;font-size:11px}
    .participant-main span{display:block;font-size:9px;color:var(--muted)}
    .pipeline-pill{
      display:inline-block;padding:5px 8px;border-radius:999px;font-size:9px;font-weight:800;
      background:var(--purple-soft);color:var(--purple-dark)
    }
    .pipeline-pill.orange{background:var(--orange-soft);color:var(--orange-dark)}
    .pipeline-pill.green{background:#e9f8f1;color:var(--success)}
    .session-item{
      padding:12px 0;border-top:1px solid #f0edf2
    }
    .session-item:first-of-type{border-top:0}
    .session-item strong{font-size:11px;display:block}
    .session-item span{font-size:10px;color:var(--muted)}
    .action-stack{display:flex;flex-direction:column;gap:9px}
    .action-stack .btn{width:100%;font-size:10px;padding:10px}
    .study-summary-client{
      background:#fbfafc;border:1px solid var(--line);border-radius:16px;padding:14px;margin-top:14px
    }
    .study-summary-client .summary-line{font-size:11px}
    @media(max-width:880px){
      .client-dash-shell{grid-template-columns:1fr}
      .client-dash-side{display:none}
      .client-grid{grid-template-columns:1fr}
      .client-stats{grid-template-columns:1fr 1fr}
      .client-dash-main{padding:20px}
      .participant-row{grid-template-columns:1fr 1fr}
    }


    .study-choice:has(input:checked){
      border-color:var(--purple);
      background:linear-gradient(180deg,#fff,#faf8ff);
      box-shadow:0 0 0 3px rgba(111,70,217,.08);
    }
    .format-field[hidden], .format-note[hidden]{display:none !important}

    /* Client account creation after study review */
    .client-account-switch{
      display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:18px 0
    }
    .client-account-tab{
      border:1px solid var(--line);background:#fff;border-radius:12px;
      padding:10px;font:700 12px "DM Sans";cursor:pointer;color:#6c6571
    }
    .client-account-tab.active{
      background:var(--purple-soft);color:var(--purple-dark);border-color:#cdbff0
    }
    .client-account-panel{display:none}
    .client-account-panel.active{display:block}
    .account-note{
      background:#faf8fd;border:1px solid var(--line);border-radius:14px;
      padding:13px;margin-top:14px;font-size:11px;color:var(--muted)
    }


    /* Client screener builder */
    .screener-builder{
      display:flex;
      flex-direction:column;
      gap:14px;
      margin-top:8px;
    }
    .screener-question{
      border:1px solid var(--line);
      border-radius:18px;
      background:#fff;
      padding:16px;
      box-shadow:0 8px 24px rgba(48,37,67,.04);
    }
    .screener-question-head{
      display:flex;
      justify-content:space-between;
      gap:12px;
      align-items:flex-start;
      margin-bottom:14px;
    }
    .screener-question-head-left{
      display:flex;
      align-items:center;
      gap:10px;
    }
    .screener-number{
      width:30px;
      height:30px;
      border-radius:10px;
      display:grid;
      place-items:center;
      background:var(--purple-soft);
      color:var(--purple-dark);
      font-size:11px;
      font-weight:800;
      flex:0 0 auto;
    }
    .screener-question-title{
      font-size:12px;
      font-weight:800;
    }
    .screener-question-sub{
      font-size:10px;
      color:var(--muted);
      margin-top:2px;
    }
    .screener-remove{
      width:32px;
      height:32px;
      border-radius:10px;
      border:1px solid var(--line);
      background:#fff;
      color:#8d8792;
      cursor:pointer;
      font-size:15px;
    }
    .screener-grid{
      display:grid;
      grid-template-columns:1.25fr .75fr;
      gap:12px;
    }
    .screener-options{
      margin-top:12px;
      display:flex;
      flex-direction:column;
      gap:8px;
    }
    .screener-option-row{
      display:grid;
      grid-template-columns:1fr auto;
      gap:8px;
      align-items:center;
    }
    .screener-option-row input[type="text"]{
      width:100%;
      padding:11px 12px;
      border:1px solid var(--line);
      border-radius:11px;
      font:500 12px "DM Sans";
    }
    .screener-option-actions{
      display:flex;
      align-items:center;
      gap:7px;
    }
    .qualify-toggle{
      display:flex;
      align-items:center;
      gap:5px;
      font-size:9px;
      font-weight:800;
      color:#6d6674;
      white-space:nowrap;
    }
    .qualify-toggle input{accent-color:var(--purple)}
    .option-remove{
      width:28px;
      height:28px;
      border-radius:9px;
      border:1px solid var(--line);
      background:#fff;
      cursor:pointer;
      color:#9b949f;
    }
    .add-option-btn{
      border:0;
      background:transparent;
      color:var(--purple);
      font:800 10px "DM Sans";
      cursor:pointer;
      padding:3px 0;
      align-self:flex-start;
    }
    .screener-logic{
      margin-top:12px;
      padding:11px 12px;
      background:#faf8fd;
      border:1px solid var(--line);
      border-radius:12px;
      font-size:10px;
      color:var(--muted);
    }
    .screener-footer{
      display:flex;
      justify-content:space-between;
      gap:12px;
      align-items:center;
      margin-top:14px;
      flex-wrap:wrap;
    }
    .screener-note{
      font-size:10px;
      color:var(--muted);
      max-width:530px;
    }
    .question-type-help{
      margin-top:6px;
      font-size:9px;
      color:var(--muted);
    }
    .screener-preview{
      margin-top:16px;
      border:1px dashed #cfc3eb;
      border-radius:16px;
      padding:15px;
      background:#faf8ff;
    }
    .screener-preview h4{
      margin:0 0 10px;
      font:800 12px "Manrope";
    }
    .screener-preview-item{
      padding:10px 0;
      border-top:1px solid #ece7f2;
    }
    .screener-preview-item:first-of-type{border-top:0}
    .screener-preview-item strong{
      display:block;
      font-size:10px;
    }
    .screener-preview-item span{
      display:block;
      font-size:9px;
      color:var(--muted);
      margin-top:3px;
    }
    @media(max-width:700px){
      .screener-grid{grid-template-columns:1fr}
      .screener-option-row{grid-template-columns:1fr}
      .screener-option-actions{justify-content:space-between}
    }

/* Client payment-required state */
.payment-required-banner{
  background:linear-gradient(135deg,#fff8f1,#fff);
  border:1px solid #ffd7b8;border-radius:18px;padding:16px;margin-bottom:16px;
  display:flex;justify-content:space-between;gap:16px;align-items:center
}
.payment-required-banner strong{display:block;font:800 13px "Manrope";margin-bottom:4px}
.payment-required-banner p{margin:0;font-size:10px;color:var(--muted);max-width:540px}
.payment-badge{
  display:inline-flex;align-items:center;gap:6px;background:#fff0e4;color:#d95f17;
  border-radius:999px;padding:6px 9px;font-size:8px;font-weight:800;margin-bottom:7px
}
    .client-payment-modal{width:min(100%,760px);max-height:92vh;overflow:auto}
    .client-complaint-modal{width:min(100%,560px);max-height:92vh;overflow:auto}
.payment-quote{
  border:1px solid var(--line);border-radius:18px;background:#fbfafc;padding:16px;margin:15px 0
}
.payment-quote-row{
  display:flex;justify-content:space-between;gap:18px;padding:10px 0;
  border-bottom:1px solid #ece8ef;font-size:11px
}
.payment-quote-row:last-child{border-bottom:0}
.payment-quote-row span{color:var(--muted)}
.payment-quote-row.total{font-size:14px;font-weight:800}
.payment-quote-row.total span{color:var(--ink)}
.payment-method-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0}
.payment-method-option{
  border:1px solid var(--line);border-radius:14px;padding:13px;cursor:pointer;display:flex;
  gap:9px;align-items:flex-start
}
.payment-method-option:has(input:checked){border-color:var(--purple);background:#faf8ff}
.payment-method-option input{accent-color:var(--purple);margin-top:2px}
.payment-method-option strong{display:block;font-size:11px}
.payment-method-option span{display:block;font-size:9px;color:var(--muted);margin-top:2px}
.payment-confirmed-box{
  text-align:center;padding:25px 10px
}
.payment-confirmed-box h3{font-size:27px;margin:12px 0 7px}
.payment-confirmed-box p{font-size:11px;color:var(--muted);max-width:520px;margin:0 auto 18px}
@media(max-width:700px){
 .payment-required-banner{align-items:flex-start;flex-direction:column}
 .payment-method-grid{grid-template-columns:1fr}
}


/* Multi-study client overview */
.client-overview-summary{
  display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px
}
.client-overview-card{
  background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px
}
.client-overview-card span{
  display:block;font-size:9px;text-transform:uppercase;letter-spacing:.08em;
  color:var(--muted);font-weight:800
}
.client-overview-card strong{
  display:block;font:800 24px "Manrope";margin-top:5px
}
.client-overview-card small{font-size:9px;color:var(--muted)}
.client-study-list{
  display:flex;flex-direction:column;gap:12px
}
.client-study-row{
  background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px
}
.client-study-row-top{
  display:flex;justify-content:space-between;gap:16px;align-items:flex-start
}
.client-study-row h3{font-size:15px;margin:4px 0 5px}
.client-study-row p{font-size:10px;color:var(--muted);margin:0}
.client-study-row-meta{
  display:flex;gap:7px;flex-wrap:wrap;margin-top:10px
}
.client-study-row-meta span{
  background:#f5f2f8;border-radius:999px;padding:5px 7px;font-size:8px;color:#6f6975
}
.client-study-row-actions{
  display:flex;gap:8px;flex-wrap:wrap;margin-top:12px
}
.study-status-pill{
  padding:6px 8px;border-radius:999px;font-size:8px;font-weight:800;white-space:nowrap
}
.study-status-pill.review{background:var(--orange-soft);color:var(--orange-dark)}
.study-status-pill.payment{background:#fff0e4;color:#d95f17}
.study-status-pill.recruiting{background:var(--purple-soft);color:var(--purple-dark)}
.study-status-pill.completed{background:#e9f8f1;color:var(--success)}
.client-payment-alert{
  background:linear-gradient(135deg,#fff7ef,#fff);
  border:1px solid #ffd8bb;border-radius:18px;padding:16px;margin-bottom:16px;
  display:flex;justify-content:space-between;gap:16px;align-items:center
}
.client-payment-alert strong{display:block;font-size:12px}
.client-payment-alert p{font-size:10px;color:var(--muted);margin:4px 0 0}
@media(max-width:850px){
  .client-overview-summary{grid-template-columns:1fr 1fr}
  .client-payment-alert{flex-direction:column;align-items:flex-start}
}


/* Solid surface for payment checkout */
#clientPaymentModal .client-payment-modal{
  background:#ffffff;
  border:1px solid rgba(229,224,234,.95);
  box-shadow:0 30px 90px rgba(20,12,33,.28);
}
#clientPaymentModal .modal-head,
#clientPaymentModal .modal-body{
  background:#ffffff;
}
#clientPaymentModal .modal-head{
  border-radius:26px 26px 0 0;
}
#clientPaymentModal .modal-body{
  border-radius:0 0 26px 26px;
}


.payment-invoice-box{
  background:#fbfafc;
  border:1px solid var(--line);
  border-radius:16px;
  padding:15px;
  margin-top:16px;
}
.payment-invoice-box h4{
  margin:0 0 6px;
  font:800 13px "Manrope";
}
.payment-invoice-box > p{
  font-size:10px;
  color:var(--muted);
  margin:0 0 12px;
  line-height:1.5;
}
.payment-invoice-box[hidden]{display:none !important}
.payment-instructions{
  background:#fbfafc;
  border:1px solid var(--line);
  border-radius:16px;
  padding:15px;
  margin-top:12px;
}
.payment-instructions h4{
  margin:0 0 10px;
  font:800 13px "Manrope";
}
.payment-detail-row{
  display:flex;
  justify-content:space-between;
  gap:18px;
  padding:9px 0;
  border-top:1px solid #ece8ef;
  font-size:11px;
}
.payment-detail-row:first-of-type{border-top:0}
.payment-detail-row span{color:var(--muted)}
.payment-detail-row strong{text-align:right}
.payment-copy-note{
  margin-top:10px;
  font-size:9px;
  color:var(--muted);
}
.payment-reference{
  display:inline-flex;
  align-items:center;
  gap:6px;
  background:var(--purple-soft);
  color:var(--purple-dark);
  border-radius:999px;
  padding:6px 9px;
  font-size:9px;
  font-weight:800;
}

/* Study completion & results */
.study-results-view{display:none}
.study-results-view.active{display:block}
.results-summary{
  display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px
}
.results-summary-card{
  background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px
}
.results-summary-card span{
  display:block;font-size:9px;text-transform:uppercase;letter-spacing:.08em;
  color:var(--muted);font-weight:800
}
.results-summary-card strong{
  display:block;font:800 24px "Manrope";margin-top:5px
}
.results-summary-card small{font-size:9px;color:var(--muted)}
.results-card{
  background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px
}
.results-card + .results-card{margin-top:16px}
.results-card-head{
  display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:14px
}
.results-card-head h3{font-size:15px}
.results-table{width:100%;border-collapse:collapse}
.results-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)
}
.results-table td{
  font-size:10px;padding:11px 8px;border-bottom:1px solid #f0edf2;vertical-align:middle
}
.result-status{
  display:inline-block;padding:5px 7px;border-radius:999px;font-size:8px;font-weight:800
}
.result-status.completed{background:#e9f8f1;color:var(--success)}
.result-status.pending{background:var(--orange-soft);color:var(--orange-dark)}
.result-status.replaced{background:#f0edf4;color:#716a78}
.result-status.noshow{background:#fdebed;color:#b9414d}
.result-actions{display:flex;gap:6px;flex-wrap:wrap}
.result-actions button{
  border:1px solid var(--line);background:#fff;border-radius:9px;
  padding:6px 8px;font:700 9px "DM Sans";cursor:pointer
}
.result-detail-panel{
  display:none;margin-top:14px;background:#fbfafc;border:1px solid var(--line);
  border-radius:18px;padding:16px
}
.result-detail-panel.open{display:block}
.result-detail-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:10px
}
.result-detail-box{
  background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px
}
.result-detail-box span{
  display:block;font-size:9px;color:var(--muted);text-transform:uppercase;
  letter-spacing:.07em;font-weight:800
}
.result-detail-box strong{display:block;font-size:11px;margin-top:4px}
.study-complete-banner{
  background:linear-gradient(135deg,#eefaf4,#fff);
  border:1px solid #caecda;border-radius:18px;padding:16px;
  display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:16px
}
.study-complete-banner strong{display:block;font-size:12px}
.study-complete-banner p{font-size:10px;color:var(--muted);margin:4px 0 0}
.format-output{
  margin-top:12px;padding:12px;border-radius:14px;border:1px solid var(--line);background:#fff
}
.format-output strong{display:block;font-size:10px}
.format-output span{display:block;font-size:9px;color:var(--muted);margin-top:3px}
@media(max-width:850px){
  .results-summary{grid-template-columns:1fr 1fr}
  .result-detail-grid{grid-template-columns:1fr}
}


/* Reliable client dashboard view switching */
.client-dashboard-view,
#clientStudiesView{
  display:none;
}
.client-dashboard-view.active,
#clientStudiesView.active{
  display:block !important;
}


#clientDashboardModal .client-dashboard-page{display:none !important}
#clientDashboardModal .client-dashboard-page.active{display:block !important}


/* Multi-study index + study detail */
.client-studies-index{display:block}
.client-study-detail{display:none}
.client-study-detail.active{display:block}
.study-index-toolbar{
  display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px
}
.study-index-filters{display:flex;gap:8px;flex-wrap:wrap}
.study-index-filter{
  border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 10px;
  font:700 9px "DM Sans";cursor:pointer;color:#6b6470
}
.study-index-filter.active{background:var(--purple-soft);color:var(--purple-dark);border-color:#cdbff0}
.study-index-controls{
  display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:16px
}
.study-index-search{flex:1;min-width:200px}
.study-index-search input{
  width:100%;border:1px solid var(--line);border-radius:12px;
  padding:10px 12px;font:500 12px "DM Sans";background:#fff;color:var(--ink);outline:none
}
.study-index-search input:focus{
  border-color:#bba9ef;box-shadow:0 0 0 3px rgba(111,70,217,.08)
}
.study-index-select{
  border:1px solid var(--line);background:#fff;border-radius:12px;
  padding:10px 12px;font:700 11px "DM Sans";color:var(--ink);min-width:150px;outline:none
}
.study-index-select:focus{
  border-color:#bba9ef;box-shadow:0 0 0 3px rgba(111,70,217,.08)
}
.study-index-empty{
  text-align:center;color:var(--muted);font-size:13px;padding:28px 16px;margin:0
}
.visually-hidden{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0,0,0,0);white-space:nowrap;border:0
}
.study-index-list{display:flex;flex-direction:column;gap:16px}
.study-index-list > [hidden]{display:none !important}
.study-index-row{
  background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px
}
.study-index-top{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}
.study-index-row h3{font-size:15px;margin:5px 0 5px}
.study-index-row p{font-size:10px;color:var(--muted);margin:0}
.study-index-meta{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}
.study-index-meta span{font-size:8px;background:#f5f2f8;color:#6f6975;padding:5px 7px;border-radius:999px}
.study-index-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.study-index-actions .btn{padding:8px 10px;font-size:9px}
.study-detail-header{
  display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:16px
}
.study-detail-header-actions{
  display:flex;flex-direction:column;align-items:flex-end;gap:10px
}
.study-detail-header-actions .btn{padding:8px 12px;font-size:9px;white-space:nowrap}
.study-detail-header-actions .btn[hidden],
#createdStudyQuotePay[hidden]{display:none !important}
#createdStudyQuotePay{margin-top:14px}
.study-detail-back{
  border:0;background:transparent;color:var(--purple);font:800 10px "DM Sans";cursor:pointer;padding:0;margin-bottom:8px
}
.study-status-summary{
  display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:16px
}
.study-status-summary .profile-info-item{background:#fff}
.study-detail-section{
  background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px
}
.study-detail-section[hidden]{display:none !important}
.study-detail-section + .study-detail-section{margin-top:16px}
.study-detail-section h3{font-size:15px;margin-bottom:12px}
@media(max-width:850px){
  .study-status-summary{grid-template-columns:1fr 1fr}
}


/* In-progress study execution */
.study-status-pill.inprogress{background:#e8f3ff;color:#2866a7}
.study-status-pill.filled{background:#e9f8f1;color:var(--success)}
.study-status-pill.replacement{background:var(--orange-soft);color:var(--orange-dark)}
.execution-summary{
  display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:16px
}
.execution-card{
  background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px
}
.execution-card span{
  display:block;font-size:9px;text-transform:uppercase;letter-spacing:.08em;
  color:var(--muted);font-weight:800
}
.execution-card strong{
  display:block;font:800 22px "Manrope";margin-top:5px
}
.execution-table{width:100%;border-collapse:collapse}
.execution-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)
}
.execution-table td{
  font-size:10px;padding:11px 8px;border-bottom:1px solid #f0edf2;vertical-align:middle
}
.execution-status{
  display:inline-block;padding:5px 7px;border-radius:999px;font-size:8px;font-weight:800
}
.execution-status.completed{background:#e9f8f1;color:var(--success)}
.execution-status.upcoming{background:var(--purple-soft);color:var(--purple-dark)}
.execution-status.noshow{background:#fdebed;color:#b9414d}
.execution-status.pending{background:var(--orange-soft);color:var(--orange-dark)}

@media(max-width:850px){
  .execution-summary{grid-template-columns:1fr 1fr}
}


/* Rich study brief/details */
.study-brief-grid{
  display:grid;grid-template-columns:1fr;gap:16px;margin-bottom:16px
}
.study-brief-card{
  background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px
}
.study-brief-card h3{font-size:14px;margin:0 0 12px}
.study-brief-items{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.study-brief-item{
  background:#fbfafc;border:1px solid #f0edf2;border-radius:13px;padding:11px
}
.study-brief-item span{
  display:block;font-size:8px;text-transform:uppercase;letter-spacing:.07em;
  color:var(--muted);font-weight:800
}
.study-brief-item strong{display:block;font-size:10px;margin-top:4px;line-height:1.4}
.audience-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:9px}
.audience-tags span{
  background:var(--purple-soft);color:var(--purple-dark);padding:6px 8px;
  border-radius:999px;font-size:8px;font-weight:700
}
.study-objective{
  font-size:10px;line-height:1.6;color:#5e5862;margin:0
}
@media(max-width:850px){
  .study-brief-grid{grid-template-columns:1fr}
  .study-brief-items{grid-template-columns:1fr}
}


/* Afritesting scheduling MVP */
.availability-builder{
  border:1px solid var(--line);
  border-radius:16px;
  padding:14px;
  background:#fbfafc;
  margin-top:10px;
}
.availability-row{
  display:grid;
  grid-template-columns:1fr .8fr .8fr auto;
  gap:8px;
  align-items:end;
  margin-top:8px;
}
.availability-row:first-child{margin-top:0}
.availability-remove{
  width:34px;height:34px;border-radius:10px;border:1px solid var(--line);
  background:#fff;cursor:pointer
}
.availability-note{
  margin-top:10px;
  font-size:9px;
  color:var(--muted);
  line-height:1.5
}
.slot-picker{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:8px;
  margin-top:12px
}
.slot-option{
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
  padding:10px 11px;
  cursor:pointer;
  text-align:left;
  font:700 10px "DM Sans"
}
.slot-option.selected{
  border-color:var(--purple);
  background:var(--purple-soft);
  color:var(--purple-dark)
}
.booking-confirmation{
  background:#fbfafc;
  border:1px solid var(--line);
  border-radius:14px;
  padding:13px;
  margin-top:12px
}
.booking-confirmation strong{display:block;font-size:11px}
.booking-confirmation span{display:block;font-size:9px;color:var(--muted);margin-top:3px}
.add-meeting-link-box{
  background:#fff8f1;
  border:1px solid #ffd8bb;
  border-radius:14px;
  padding:13px;
  margin-top:12px
}
.add-meeting-link-box strong{display:block;font-size:11px}
.add-meeting-link-box p{font-size:9px;color:var(--muted);margin:4px 0 10px}
@media(max-width:720px){
  .availability-row{grid-template-columns:1fr 1fr}
  .slot-picker{grid-template-columns:1fr}
}


#studyAvailabilitySection[hidden]{display:none !important}
#studyAvailabilitySection:not([hidden]){display:block !important}
#studyAvailabilityBuilder .availability-row{
  display:grid !important;
  grid-template-columns:1.2fr .8fr .8fr auto;
  gap:10px;
  align-items:end;
}
#participantSlotSelection[hidden]{display:none !important}
#participantSlotSelection:not([hidden]){display:block !important}


#moderatedMeetingSetup[hidden]{display:none !important}
#moderatedMeetingSetup:not([hidden]){display:block !important}
#studyAvailabilitySection[hidden]{display:none !important}
#studyAvailabilitySection:not([hidden]){display:block !important}


#moderatedMeetingSetup{
  width:100%;
}
#moderatedMeetingSetup:not([hidden]){
  display:block !important;
}
#studyAvailabilitySection:not([hidden]){
  display:block !important;
}


/* Survey completion setup */
.survey-completion-config{
  grid-column:1/-1;
  border:1px solid var(--line);
  border-radius:16px;
  padding:15px;
  background:#fbfafc;
  margin-top:2px;
}
.survey-completion-config[hidden]{display:none !important}
.survey-setup-title{font:800 12px "Manrope";margin-bottom:5px}
.survey-setup-copy{font-size:10px;color:var(--muted);line-height:1.55;margin:0 0 12px}
.survey-code-row{
  display:grid;grid-template-columns:1fr auto;gap:8px;align-items:end
}
.survey-code-example{
  margin-top:12px;background:#fff;border:1px solid var(--line);
  border-radius:13px;padding:12px;font-size:10px;color:#615a66;line-height:1.55
}
.survey-code-example strong{display:block;color:var(--ink);margin-bottom:4px}
.survey-setup-steps{
  margin:12px 0 0;padding:0;counter-reset:surveyStep
}
.survey-setup-step{
  display:flex;gap:9px;padding:8px 0;border-top:1px solid #ebe7ef;font-size:10px;line-height:1.5
}
.survey-setup-step:first-child{border-top:0}
.survey-step-num{
  width:22px;height:22px;border-radius:8px;background:var(--purple-soft);
  color:var(--purple-dark);display:grid;place-items:center;font-size:9px;font-weight:900;flex:0 0 auto
}
.redirect-url-box{
  display:flex;gap:8px;align-items:center;background:#fff;border:1px solid var(--line);
  border-radius:12px;padding:10px 11px;margin-top:10px
}
.redirect-url-box code{font-size:9px;word-break:break-all;flex:1;color:#514a57}
.redirect-status{
  display:inline-flex;align-items:center;gap:6px;padding:6px 8px;border-radius:999px;
  background:#fff0e4;color:var(--orange-dark);font-size:8px;font-weight:800
}
.redirect-status.verified{background:#e9f8f1;color:var(--success)}
.survey-platform-note{
  margin-top:10px;padding:11px;border-radius:12px;background:#fff;
  border:1px solid var(--line);font-size:9px;color:var(--muted);line-height:1.5
}
/* Participant survey completion */
.survey-participant-warning{
  padding:12px;border:1px solid #ffd8bb;background:#fff8f1;border-radius:13px;margin-top:12px
}
.survey-participant-warning strong{display:block;font-size:10px;color:#9a4b17}
.survey-participant-warning p{font-size:9px;color:#765742;margin:4px 0 0;line-height:1.5}
.survey-completion-entry{
  margin-top:12px;border:1px solid var(--line);border-radius:14px;padding:12px;background:#fbfafc
}
.survey-completion-entry[hidden]{display:none !important}
.survey-completion-entry h4{font-size:11px;margin:0 0 5px}
.survey-completion-entry p{font-size:9px;color:var(--muted);margin:0 0 9px}
.survey-code-input-row{display:grid;grid-template-columns:1fr auto;gap:8px}


#surveyCodeConfig[hidden],
#surveyRedirectConfig[hidden]{display:none !important}


.awaiting-code-card{
  border-color:#d8c9ff !important;
  background:linear-gradient(180deg,#fff 0%,#fcfaff 100%);
}
.awaiting-code-box{
  margin-top:12px;
  padding:12px;
  border:1px solid #d8c9ff;
  background:#f8f4ff;
  border-radius:14px;
}
.awaiting-code-box strong{display:block;font-size:10px;color:var(--purple-dark);margin-bottom:3px}
.awaiting-code-box p{font-size:9px;color:var(--muted);margin:0 0 9px;line-height:1.5}
.awaiting-code-row{display:grid;grid-template-columns:1fr auto;gap:8px}
.awaiting-code-row input{
  min-width:0;border:1px solid var(--line);border-radius:10px;padding:9px 10px;
  font:600 10px "DM Sans";background:#fff
}


.verify-success-panel{
  padding:16px;border:1px solid #bfe9d6;background:#f2fbf7;border-radius:15px;
}
.verify-success-icon{
  width:38px;height:38px;border-radius:12px;background:#daf4e8;color:var(--success);
  display:grid;place-items:center;font-size:19px;font-weight:900;margin-bottom:10px
}
.verify-success-panel h4{margin:0 0 5px;font-size:12px;color:var(--ink)}
.verify-success-panel p{margin:0;font-size:9px;color:var(--muted);line-height:1.55}
.verify-success-meta{
  display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:12px
}
.verify-success-meta div{
  background:#fff;border:1px solid #dceee6;border-radius:11px;padding:9px
}
.verify-success-meta span{display:block;font-size:7px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:800}
.verify-success-meta strong{display:block;font-size:9px;margin-top:3px}



/* Client survey participant completions */
.survey-completions-card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:20px;
  padding:18px;
  margin-top:16px;
}
.survey-completions-head{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
  margin-bottom:12px;
}
.survey-completions-head h3{font-size:15px}
.survey-completions-head span{font-size:9px;color:var(--muted)}
.survey-completions-table{width:100%;border-collapse:collapse}
.survey-completions-table th{
  text-align:left;
  font-size:8px;
  color:var(--muted);
  text-transform:uppercase;
  letter-spacing:.07em;
  padding:9px 8px;
  border-bottom:1px solid var(--line)
}
.survey-completions-table td{
  font-size:10px;
  padding:11px 8px;
  border-bottom:1px solid #f0edf2;
  vertical-align:middle
}
.completion-method{
  display:inline-flex;
  align-items:center;
  gap:5px;
  padding:5px 7px;
  border-radius:999px;
  font-size:8px;
  font-weight:800
}
.completion-method.code{background:var(--purple-soft);color:var(--purple-dark)}
.completion-method.auto{background:#e9f8f1;color:var(--success)}
.completion-method.pending{background:var(--orange-soft);color:var(--orange-dark)}
.completion-state{
  display:inline-flex;
  padding:5px 7px;
  border-radius:999px;
  font-size:8px;
  font-weight:800
}
.completion-state.verified{background:#e9f8f1;color:var(--success)}
.completion-state.pending{background:var(--orange-soft);color:var(--orange-dark)}
.completion-state.invalid{background:#fdebed;color:#b9414d}
.survey-completions-summary{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:8px;
  margin-bottom:12px
}
.survey-completions-summary div{
  background:#fbfafc;
  border:1px solid var(--line);
  border-radius:13px;
  padding:10px
}
.survey-completions-summary span{
  display:block;
  font-size:8px;
  color:var(--muted);
  text-transform:uppercase;
  letter-spacing:.06em;
  font-weight:800
}
.survey-completions-summary strong{
  display:block;
  font:800 18px "Manrope";
  margin-top:3px
}
@media(max-width:850px){
  .survey-completions-summary{grid-template-columns:1fr 1fr}
}



/* Full-page client shell — main column scrolls, sidebar stays put */
html, body.page-client{
  height:100%;
}
body.page-client{
  overflow:hidden;
}
body.page-client #clientDashboardModal{
  display:block;
  position:static;
  background:transparent;
  padding:0;
  height:100%;
}
body.page-client .client-dashboard-modal{
  width:100%;
  max-height:none;
  height:100%;
  min-height:0;
  border-radius:0;
  box-shadow:none;
  overflow:hidden;
}
body.page-client .client-dash-shell{
  height:100%;
  min-height:0;
  overflow:hidden;
}
body.page-client .client-dash-side{
  border-radius:0;
  height:100%;
  min-height:0;
  overflow:auto;
}
body.page-client .client-dash-main{
  min-height:0;
  min-width:0;
  height:100%;
  overflow:auto;
}

/* Client billing */
.results-card:has(.billing-history-table){overflow-x:auto}
.billing-history-table th,
.billing-history-table td{white-space:nowrap}
#billingDueSection .study-index-row{margin-top:0}
#billingDueSection[hidden],
#billingDueSection .study-index-row[hidden],
#billingPaymentAlert[hidden]{display:none !important}

/* Client settings */
.profile-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.profile-info-item{
  border:1px solid var(--line);border-radius:14px;padding:12px;background:#fbfafc
}
.profile-info-item span{
  display:block;font-size:9px;color:var(--muted);text-transform:uppercase;
  letter-spacing:.07em;font-weight:800
}
.profile-info-item strong{display:block;font-size:11px;margin-top:4px}
.client-card-head .profile-edit-toggle{
  border:0;background:transparent;color:var(--purple);font:800 10px "DM Sans";cursor:pointer
}
.profile-edit-form{display:none;margin-top:12px}
.profile-edit-form.open{display:block}
.profile-edit-actions{display:flex;gap:8px;margin-top:14px}
#clientSettingsView .choice{margin:0}
.settings-password-error{
  font-size:11px;color:#c43d4b;margin:10px 0 0
}
.settings-password-error[hidden],
#settingsPasswordNote[hidden]{display:none !important}
@media(max-width:800px){
  .profile-info-grid{grid-template-columns:1fr}
}

