:root{
  --primary:#28B67A;
  --soft:#E6F6EF;
  --blue:#1E3A8F;
  --ink:#151A1F;
  --gray:#7C8894;
  --paper:#F4F2EC;
  --gold:#E8B800;
  --white:#FFFFFF;
  --line:#E4E1D8;
  --danger:#E64A6B;
}
*{box-sizing:border-box;}
html{font-size:16px;-webkit-text-size-adjust:100%;}
body{
  margin:0;font-family:'IBM Plex Sans Arabic','Segoe UI',Tahoma,sans-serif;
  background:var(--paper);color:var(--ink);direction:rtl;font-size:15px;line-height:1.6;
}
h1,h2,h3,h4,p,ul{margin:0;}
button{font-family:inherit;cursor:pointer;}
input,select{font-family:inherit;}

/* ===================== LANDING (shared with vendor-platform style) ===================== */
.vl-header{position:sticky;top:0;z-index:50;background:rgba(244,242,236,0.9);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);}
.vl-header .wrap{max-width:1100px;margin:0 auto;padding:0 24px;height:72px;display:flex;align-items:center;justify-content:space-between;}
.vl-logo{display:flex;align-items:center;gap:10px;font-family:'Poppins',sans-serif;font-weight:700;font-size:19px;}
.vl-logo img{width:32px;height:32px;}
.vl-cta-small{background:var(--primary);color:#fff;border:none;border-radius:10px;padding:10px 20px;font-size:13.5px;font-weight:700;}

.vl-hero{background:radial-gradient(circle at 25% 20%, #F5FAF4 0%, #E3F2E5 55%, #D9EEDD 100%);padding:90px 24px 80px;text-align:center;}
.vl-hero .wrap{max-width:720px;margin:0 auto;}
.vl-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;background:var(--white);border:1.5px solid rgba(40,182,122,0.35);padding:9px 18px;border-radius:999px;margin-bottom:24px;}
.vl-hero h1{font-size:clamp(28px,4.5vw,44px);font-weight:800;line-height:1.35;margin:0 0 18px;}
.vl-hero p{font-size:16.5px;color:var(--gray);line-height:1.8;max-width:520px;margin:0 auto 34px;}
.vl-cta-row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}
.vl-btn-primary{background:var(--primary);color:#fff;border:none;border-radius:12px;padding:15px 30px;font-size:15px;font-weight:700;}
.vl-btn-ghost{background:var(--white);border:1.5px solid var(--line);color:var(--ink);border-radius:12px;padding:15px 30px;font-size:15px;font-weight:700;}

.vl-section{padding:80px 24px;max-width:1100px;margin:0 auto;}
.vl-section-head{text-align:center;max-width:600px;margin:0 auto 48px;}
.vl-section-head span{font-size:13px;font-weight:700;color:var(--primary);letter-spacing:1px;display:block;margin-bottom:10px;}
.vl-section-head h2{font-size:clamp(22px,3vw,30px);font-weight:800;margin:0 0 12px;}
.vl-section-head p{font-size:15px;color:var(--gray);line-height:1.8;}

.vl-segments{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
@media (max-width:800px){.vl-segments{grid-template-columns:1fr;}}
.vl-segment-card{background:var(--white);border:1px solid var(--line);border-radius:18px;padding:28px;text-align:center;}
.vl-segment-card .ic{width:52px;height:52px;border-radius:14px;background:var(--soft);color:#0E7A50;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;}
.vl-segment-card .ic svg{width:26px;height:26px;}
.vl-segment-card h4{font-size:15.5px;font-weight:800;margin-bottom:8px;}
.vl-segment-card p{font-size:12.5px;color:var(--gray);line-height:1.7;margin-bottom:16px;}
.vl-segment-card .roles{font-size:11.5px;color:var(--primary);font-weight:700;}

.vl-final-cta{background:var(--ink);border-radius:26px;padding:60px 30px;text-align:center;margin:0 24px 80px;}
.vl-final-cta h2{color:#fff;font-size:clamp(22px,3vw,30px);font-weight:800;margin:0 0 14px;}
.vl-final-cta p{color:#C6CDD2;font-size:15px;margin:0 0 28px;}
.vl-footer{border-top:1px solid var(--line);padding:30px 24px;text-align:center;font-size:13px;color:var(--gray);}

/* ===================== REGISTRATION WIZARD ===================== */
.wiz-wrap{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:50px 20px;}
.wiz-logo{display:flex;align-items:center;gap:10px;margin-bottom:30px;}
.wiz-logo img{width:32px;height:32px;border-radius:50%;}
.wiz-logo span{font-family:'Poppins',sans-serif;font-weight:700;font-size:18px;}

.wiz-steps{display:flex;align-items:center;gap:6px;margin-bottom:34px;}
.wiz-step-dot{width:9px;height:9px;border-radius:50%;background:var(--line);transition:all .2s;}
.wiz-step-dot.active{background:var(--primary);width:22px;border-radius:5px;}
.wiz-step-dot.done{background:var(--primary);}

.wiz-card{width:100%;max-width:520px;background:var(--white);border:1px solid var(--line);border-radius:22px;padding:36px 32px;box-shadow:0 20px 50px rgba(0,0,0,0.06);}
.wiz-card h2{font-size:19px;font-weight:800;margin-bottom:8px;}
.wiz-card .sub{font-size:13px;color:var(--gray);margin-bottom:26px;}

/* segment choice cards */
.choice-grid{display:flex;flex-direction:column;gap:12px;}
.choice-card{
  display:flex;align-items:center;gap:14px;padding:18px;border:1.5px solid var(--line);border-radius:14px;
  text-align:right;background:var(--white);
}
.choice-card:hover{border-color:var(--primary);background:var(--soft);}
.choice-card.selected{border-color:var(--primary);background:var(--soft);border-width:2px;}
.choice-card .ic{width:42px;height:42px;border-radius:11px;background:var(--soft);color:#0E7A50;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.choice-card .ic svg{width:21px;height:21px;}
.choice-card .txt{flex:1;}
.choice-card .txt .t{font-size:14.5px;font-weight:700;}
.choice-card .txt .s{font-size:12px;color:var(--gray);margin-top:2px;}

.f-row{margin-bottom:16px;}
.f-row label{display:block;font-size:13px;font-weight:700;margin-bottom:7px;}
.f-row input,.f-row select{width:100%;padding:12px 14px;border-radius:11px;border:1px solid var(--line);font-size:14px;background:var(--paper);}

.wiz-actions{display:flex;gap:10px;margin-top:22px;}
.wiz-btn-back{flex:0 0 auto;background:none;border:1px solid var(--line);border-radius:11px;padding:13px 18px;font-size:13.5px;font-weight:700;color:var(--gray);}
.wiz-btn-next{flex:1;background:var(--primary);color:#fff;border:none;border-radius:11px;padding:13px;font-size:14.5px;font-weight:700;}
.wiz-btn-next:disabled{opacity:0.5;}

/* invite code success screen */
.invite-box{text-align:center;}
.invite-code{
  font-family:'Poppins',sans-serif;font-weight:700;font-size:26px;letter-spacing:3px;color:#0E7A50;
  background:var(--soft);border-radius:14px;padding:18px;margin:20px 0;border:1.5px dashed rgba(40,182,122,0.4);
}
.invite-hint{font-size:12.5px;color:var(--gray);margin-bottom:6px;}

/* team dashboard (after registration) */
.team-mini-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);}
.team-mini-row:last-child{border-bottom:none;}
.team-mini-row .av{width:34px;height:34px;border-radius:50%;background:var(--soft);color:#0E7A50;display:flex;align-items:center;justify-content:center;font-size:12.5px;font-weight:700;flex-shrink:0;}
.team-mini-row .t{flex:1;font-size:13.5px;font-weight:700;}
.team-mini-row .s{font-size:11.5px;color:var(--gray);}
.pending-chip{font-size:10.5px;font-weight:700;color:var(--gold);background:#FBF1D6;padding:4px 10px;border-radius:999px;}
