/* =============================================================
   Request funnel — Step 1 qualifier (drop-in)
   Extends the existing /request/ page. Does NOT touch the
   SimplePractice iframe URL or markup — it simply gates
   when the iframe is rendered.
   ============================================================= */

/* Stepper header */
.rf-stepper{display:flex;gap:0;align-items:center;margin:0 0 20px;padding:14px 18px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);}
.rf-step{display:flex;align-items:center;gap:10px;flex:1;min-width:0;}
.rf-step-num{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--sans);font-weight:700;font-size:13px;flex-shrink:0;background:var(--border);color:var(--muted);transition:background .25s ease,color .25s ease;}
.rf-step.is-active .rf-step-num{background:var(--accent);color:#fff;}
.rf-step.is-done .rf-step-num{background:var(--primary);color:#fff;}
.rf-step.is-done .rf-step-num::before{content:"✓";}
.rf-step.is-done .rf-step-num span{display:none;}
.rf-step-label{font-size:13px;font-weight:600;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.rf-step.is-active .rf-step-label,.rf-step.is-done .rf-step-label{color:var(--text);}
.rf-step-connector{flex:0 0 40px;height:1px;background:var(--border);margin:0 8px;}

/* Panels */
.rf-panel{display:none;}
.rf-panel.is-active{display:block;animation:rf-fade .35s ease;}
@keyframes rf-fade{from{opacity:0;transform:translateY(6px);}to{opacity:1;transform:none;}}

/* Qualifier card */
.rf-qual{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:24px 26px;}
.rf-q{margin-bottom:22px;}
.rf-q:last-of-type{margin-bottom:0;}
.rf-q-label{display:block;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--primary);margin:0 0 10px;}
.rf-q-help{font-size:12.5px;color:var(--muted);margin:6px 0 0;line-height:1.5;}
.rf-options{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
.rf-options.single{grid-template-columns:1fr;}
.rf-opt{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1.5px solid var(--border);border-radius:10px;background:#fff;cursor:pointer;font-size:14px;font-weight:500;color:var(--text);transition:border-color .18s ease,background .18s ease;}
.rf-opt:hover{border-color:var(--primary-mid);}
.rf-opt input{position:absolute;opacity:0;pointer-events:none;}
.rf-opt-dot{width:16px;height:16px;border-radius:50%;border:1.5px solid rgba(44,44,42,.2);flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:border-color .18s ease,background .18s ease;}
.rf-opt-dot::after{content:"";width:8px;height:8px;border-radius:50%;background:#fff;opacity:0;transition:opacity .15s ease;}
.rf-opt.is-selected{border-color:var(--primary);background:rgba(91,123,107,.05);}
.rf-opt.is-selected .rf-opt-dot{border-color:var(--primary);background:var(--primary);}
.rf-opt.is-selected .rf-opt-dot::after{opacity:1;}
.rf-opt-body{display:flex;flex-direction:column;gap:2px;min-width:0;}
.rf-opt-sub{font-size:12px;font-weight:400;color:var(--muted);}

/* Gentle-stop panel */
.rf-stop{background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--accent);border-radius:var(--radius);padding:22px 24px;margin-top:14px;}
.rf-stop-label{font-size:10.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:0 0 8px;}
.rf-stop h3{font-family:var(--serif);font-size:20px;font-weight:500;margin:0 0 10px;color:var(--text);}
.rf-stop p{font-size:14px;color:var(--muted);line-height:1.6;margin:0 0 8px;}
.rf-stop ul{margin:10px 0 14px 18px;padding:0;}
.rf-stop li{font-size:13.5px;color:var(--muted);line-height:1.6;margin-bottom:4px;}

/* Footer nav for step 1 */
.rf-nav{display:flex;justify-content:space-between;align-items:center;margin-top:18px;gap:12px;}
.rf-nav .rf-left{font-size:13px;color:var(--muted);}
.rf-nav .rf-left a{color:var(--primary);font-weight:600;text-decoration:none;}
.rf-nav button,.rf-nav a.btn{font-family:var(--sans);}

/* Step 2 summary chip row (confirming step-1 answers) */
.rf-summary{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:10px 14px;background:rgba(91,123,107,.06);border:1px solid rgba(91,123,107,.15);border-radius:10px;margin:0 0 14px;font-size:12.5px;color:var(--muted);}
.rf-summary strong{color:var(--text);font-weight:600;}
.rf-summary .dot{color:rgba(91,123,107,.4);margin:0 2px;}
.rf-summary .rf-edit{margin-left:auto;font-size:12px;color:var(--primary);text-decoration:none;font-weight:600;background:none;border:none;cursor:pointer;padding:4px 8px;border-radius:6px;}
.rf-summary .rf-edit:hover{background:rgba(91,123,107,.1);}

@media (max-width:600px){
  .rf-step-label{display:none;}
  .rf-step{flex:0 0 auto;}
  .rf-step-connector{flex:1;}
  .rf-options{grid-template-columns:1fr;}
}





