/* Participant Portal — Intake CSS (Eligibility Checker + CNA) */

/* ─── ELIGIBILITY CHECKER ─────────────────────────────────────────────────── */

:root{
  --afifen-navy: var(--pp-primary, #011f5f);
  --afifen-dark:#0a1f44;
  --afifen-cyan: var(--pp-secondary, #19a9dd);
  --afifen-gray:#f6f6f6;
  --afifen-white:#ffffff;
  --afifen-red: var(--pp-btn, #D7141A);
  --afifen-border:#e2e8f0;
  --afifen-soft:#64748b;
}

.afifen-saas-diagnostic{font-family:var(--pp-font-body,"Lato"),sans-serif;color:var(--afifen-dark);padding:20px 10px;box-sizing:border-box;}
.af-diag-container{max-width:660px;margin:0 auto;width:100%;box-sizing:border-box;}
.af-diag-card{background:var(--afifen-white);border-radius:24px;box-shadow:0 20px 50px rgba(1,31,95,0.12);padding:clamp(20px,5vw,40px);border:1px solid var(--afifen-border);box-sizing:border-box;}
.af-diag-top-title{text-align:center;margin-bottom:14px;}
.af-diag-top-title h1{font-family:var(--pp-font-heading,"Montserrat"),sans-serif;font-weight:900;font-size:clamp(1.05rem,4vw,1.4rem);line-height:1.25;color:var(--afifen-navy);margin:0;}
.af-diag-top-title h1 .af-h1-sub{display:block;font-size:0.68em;font-weight:600;line-height:1.35;margin-top:6px;}
.af-diag-top-title p{margin:8px 0 0;font-size:0.9rem;color:var(--afifen-soft);line-height:1.4;}
.af-q-body{text-align:left;}
.af-stage-badge{display:inline-block;background:#e8edf7;color:var(--afifen-navy);font-family:var(--pp-font-heading,"Montserrat"),sans-serif;font-weight:800;font-size:0.68rem;letter-spacing:0.8px;text-transform:uppercase;border-radius:6px;padding:3px 10px;margin-bottom:10px;}
.af-diag-header{display:flex;justify-content:space-between;align-items:center;margin:10px 0 8px;}
.af-diag-label{font-family:var(--pp-font-heading,"Montserrat"),sans-serif;font-weight:800;font-size:0.75rem;text-transform:uppercase;color:var(--afifen-cyan);letter-spacing:1px;}
.af-diag-step-count{font-size:0.75rem;font-weight:700;color:#94a3b8;}
.af-diag-progress-bar{width:100%;height:6px;background:#edf2f7;border-radius:10px;margin-bottom:16px;overflow:hidden;}
.af-diag-progress-fill{height:100%;background:var(--afifen-cyan);transition:width 0.35s ease;}
.af-diag-question{font-family:var(--pp-font-heading,"Montserrat"),sans-serif;font-weight:800;font-size:clamp(1.05rem,4.5vw,1.25rem);color:var(--afifen-navy)!important;line-height:1.4;margin:0 0 10px;word-wrap:break-word;overflow-wrap:break-word;}
.af-question-note{font-size:0.85rem;color:var(--afifen-soft);line-height:1.5;margin-bottom:14px;text-align:left;padding:10px 14px;background:#fafafa;border-radius:8px;border-left:3px solid var(--afifen-border);}
.af-diag-options{display:flex;flex-direction:column;gap:10px;}
.af-diag-btn{width:100%;padding:15px 20px;background:var(--afifen-white);border:2px solid var(--afifen-border);border-radius:14px;text-align:left;font-family:var(--pp-font-body,"Lato"),sans-serif;font-size:0.97rem;font-weight:600;color:var(--afifen-dark)!important;cursor:pointer;transition:all 0.18s ease;line-height:1.4;white-space:normal;word-wrap:break-word;overflow-wrap:break-word;box-sizing:border-box;display:block;}
.af-diag-btn:hover{border-color:var(--afifen-cyan);background:#f0f9fd;transform:translateY(-2px);}
.af-check-list{display:flex;flex-direction:column;gap:8px;margin-bottom:16px;}
.af-check-item{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;border:2px solid var(--afifen-border);border-radius:12px;cursor:pointer;transition:all 0.15s ease;text-align:left;box-sizing:border-box;}
.af-check-item:hover{border-color:var(--afifen-cyan);background:#f0f9fd;}
.af-check-item.af-checked{border-color:var(--afifen-cyan);background:#e3f4fb;}
.af-check-box{width:20px;height:20px;min-width:20px;border:2px solid #cbd5e1;border-radius:5px;display:flex;align-items:center;justify-content:center;margin-top:1px;transition:all 0.15s ease;background:#fff;font-size:12px;font-weight:900;color:#fff;}
.af-checked .af-check-box{background:var(--afifen-cyan);border-color:var(--afifen-cyan);}
.af-check-text{font-size:0.95rem;font-weight:600;color:var(--afifen-dark);line-height:1.35;word-wrap:break-word;}
.af-continue-btn{width:100%;background:var(--afifen-navy);color:#fff!important;padding:16px;border-radius:50px;font-family:var(--pp-font-heading,"Montserrat"),sans-serif;font-weight:900;border:none;cursor:pointer;margin-top:4px;font-size:0.95rem;transition:background 0.2s ease;box-sizing:border-box;}
.af-continue-btn:hover{background:var(--afifen-cyan);}
.af-continue-note{font-size:0.78rem;color:var(--afifen-soft);text-align:center;margin-top:8px;}
.af-back-btn{background:none;border:none;color:#94a3b8;font-size:0.85rem;font-weight:600;cursor:pointer;margin-top:16px;display:inline-flex;align-items:center;gap:6px;}
.af-input-group{text-align:left;margin-bottom:13px;}
.af-input-group label{display:block;font-size:0.85rem;font-weight:800;margin-bottom:6px;color:var(--afifen-navy);font-family:var(--pp-font-heading,"Montserrat"),sans-serif;}
.af-input{width:100%;padding:13px 14px;border:2px solid var(--afifen-border);border-radius:10px;font-size:1rem;box-sizing:border-box;font-family:var(--pp-font-body,"Lato"),sans-serif;}
.af-input:focus{outline:none;border-color:var(--afifen-cyan);}
.af-help{margin-top:5px;font-size:0.78rem;color:var(--afifen-soft);line-height:1.35;}
.af-consent{display:flex;gap:10px;cursor:pointer;margin:14px 0 10px;align-items:flex-start;}
.af-consent span{font-size:0.82rem;color:var(--afifen-soft);line-height:1.35;}
.af-submit-btn{width:100%;background:var(--afifen-cyan);color:#fff!important;padding:18px;border-radius:50px;font-family:var(--pp-font-heading,"Montserrat"),sans-serif;font-weight:900;text-transform:uppercase;letter-spacing:0.3px;border:none;cursor:pointer;margin-top:8px;font-size:1rem;box-sizing:border-box;}
.af-submit-btn:hover{filter:brightness(0.96);}
.af-feedback{border-radius:16px;padding:20px;margin:14px 0 16px;text-align:left;}
.af-feedback-fit{background:#f0f9fd;border-left:5px solid var(--afifen-cyan);}
.af-feedback-iyb{background:#fff5f5;border-left:5px solid var(--afifen-red);}
.af-feedback-nudge{background:#fffbeb;border-left:5px solid #f59e0b;}
.af-feedback-waitlist{background:#f0f9fd;border-left:5px solid var(--afifen-navy);}
.af-feedback p{margin:0 0 10px;font-size:0.97rem;line-height:1.7;color:var(--afifen-dark);}
.af-feedback p:last-child{margin-bottom:0;}
.af-feedback ul{margin:6px 0 10px;padding-left:20px;font-size:0.93rem;line-height:1.75;color:var(--afifen-dark);}
.af-gate-results{display:flex;flex-wrap:wrap;gap:7px;margin:14px 0 4px;}
.af-gate-pill{display:inline-flex;align-items:center;gap:4px;font-family:var(--pp-font-heading,"Montserrat"),sans-serif;font-weight:700;font-size:0.7rem;border-radius:999px;padding:4px 11px;}
.af-gate-pill-pass{background:#dcfce7;color:#15803d;}
.af-gate-pill-fail{background:#fee2e2;color:#b91c1c;}
.af-result-ctas{display:flex;flex-direction:column;gap:10px;margin-top:16px;}
.af-cta{display:block;text-align:center;padding:16px 20px;border-radius:50px;text-decoration:none;font-family:var(--pp-font-heading,"Montserrat"),sans-serif;font-weight:900;border:0;font-size:0.9rem;word-wrap:break-word;box-sizing:border-box;}
.af-cta-primary{background:var(--afifen-cyan);color:#fff!important;}
.af-cta-navy{background:var(--afifen-navy);color:#fff!important;}
.af-cta-whatsapp{background:#25D366;color:#fff!important;}
.af-cta-outline{background:transparent;color:var(--afifen-navy)!important;border:2px solid var(--afifen-navy);padding:14px 20px;}
.af-cards{display:grid;grid-template-columns:1fr;gap:12px;margin-top:12px;}
.af-pay-card{border:1px solid var(--afifen-border);border-radius:18px;background:#fff;padding:16px;box-shadow:0 10px 30px rgba(1,31,95,0.08);text-align:left;box-sizing:border-box;}
.af-pay-card h3{margin:0 0 8px;font-family:var(--pp-font-heading,"Montserrat"),sans-serif;font-weight:900;font-size:0.97rem;color:var(--afifen-navy);line-height:1.25;}
.af-pay-card p{margin:0 0 10px;font-size:0.93rem;color:var(--afifen-dark);line-height:1.45;}
.af-mini{font-size:0.83rem;color:var(--afifen-soft);margin-top:6px;line-height:1.35;}
.af-pay-actions{display:flex;flex-direction:column;gap:9px;margin-top:10px;}
.af-btn{display:block;width:100%;text-align:center;padding:13px 16px;border-radius:999px;text-decoration:none;font-family:var(--pp-font-heading,"Montserrat"),sans-serif;font-weight:900;font-size:0.88rem;border:0;cursor:pointer;box-sizing:border-box;word-wrap:break-word;}
.af-btn-full{background:var(--afifen-cyan);color:#fff!important;}
.af-btn-deposit{background:var(--afifen-navy);color:#fff!important;}
.af-btn-wa{background:#25D366;color:#fff!important;}
.af-tight-list{margin:8px 0 0;padding-left:18px;color:var(--afifen-dark);line-height:1.5;font-size:0.91rem;}
.af-redirect-note{margin-top:10px;font-size:0.82rem;color:var(--afifen-soft);text-align:center;line-height:1.35;}
.af-field-error{font-size:0.78rem;color:var(--afifen-red);margin-top:5px;line-height:1.35;display:none;}
.af-consent-locked{opacity:0.45;pointer-events:none;cursor:not-allowed;}
.loader{border:4px solid #f3f3f3;border-top:4px solid var(--afifen-cyan);border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin:26px auto;}
@keyframes spin{0%{transform:rotate(0deg);}100%{transform:rotate(360deg);}}
.fade-in{animation:afFadeIn 0.35s ease-out forwards;}
@keyframes afFadeIn{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:translateY(0);}}
@media(max-width:520px){
  .af-diag-card{padding:20px 14px;}
  .af-diag-question{font-size:1.08rem;}
  .af-diag-btn{padding:13px 14px;font-size:0.92rem;}
  .af-check-item{padding:11px 13px;}
  .af-pay-card{padding:14px;}
}

/* ─── COMPANY NEEDS ASSESSMENT ────────────────────────────────────────────── */

.pp-eligibility-wrap,.pp-cna-wrap { max-width: 720px; margin: 32px auto; padding: 36px; }
.pp-elig-title,.pp-cna-wrap h2   { color: var(--pp-primary); font-family: var(--pp-font-heading,sans-serif); font-size: 1.5rem; font-weight: 800; margin: 0 0 10px; }
.pp-elig-intro,.pp-cna-intro p   { color: var(--pp-text-secondary); margin: 0 0 24px; line-height: 1.7; }
.pp-cna-section                   { margin-bottom: 32px; padding-bottom: 24px; border-bottom: 1px solid var(--pp-border); }
.pp-cna-section:last-of-type      { border-bottom: none; }
.pp-cna-section h3                { font-size: 1rem; font-weight: 700; color: var(--pp-primary); margin: 0 0 16px; text-transform: uppercase; letter-spacing: .06em; }
.pp-elig-result-block,.pp-elig-result-eligible,.pp-elig-result-review,.pp-elig-result-not { padding: 24px; border-radius: 8px; margin-top: 8px; }
.pp-elig-result-eligible { background: var(--pp-success-bg); border: 1px solid var(--pp-success-border); }
.pp-elig-result-review   { background: var(--pp-warning-bg); border: 1px solid var(--pp-warning-border); }
.pp-elig-result-not      { background: var(--pp-error-bg);   border: 1px solid var(--pp-error-border); }
.pp-elig-result-eligible h3 { color: var(--pp-success); }
.pp-elig-result-review   h3 { color: var(--pp-warning); }
.pp-elig-result-not      h3 { color: var(--pp-error); }
@media (max-width: 600px) {
    .pp-eligibility-wrap,.pp-cna-wrap { padding: 20px; }
}
