/* ==========================================================================
   EVOROM — Componente pagini interioare (joburi, CV wizard, CRM etc.)
   Se încarcă după evorom.css
   ========================================================================== */

/* ---------- Breadcrumb + page head ---------- */
.breadcrumb{font-size:13.5px;color:var(--gray);padding:22px 0 0}
.breadcrumb a:hover{color:var(--blue)}
.breadcrumb .sep{margin:0 8px;color:#aab6c4}
.page-head{padding:14px 0 30px}
.page-head h1{font-size:clamp(30px,3.4vw,44px);font-weight:800;letter-spacing:.3px;color:var(--navy)}
.page-head p{color:var(--gray);font-size:17px;margin-top:8px;max-width:640px}
.page-hero{background:var(--bg);border-bottom:1px solid var(--border)}

/* ---------- Search bar (pagina joburi) ---------- */
.jobsearch{background:#fff;border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow-sm);
  padding:14px;display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:12px;align-items:end;margin-bottom:26px}

/* ---------- Layout listing (sidebar + rezultate) ---------- */
.listing{display:grid;grid-template-columns:270px 1fr;gap:28px;align-items:start;padding:30px 0 70px}

/* Filtre */
.filters{background:#fff;border:1px solid var(--border);border-radius:10px;padding:20px;position:sticky;top:92px}
.filters h3{font-size:13px;font-weight:800;letter-spacing:.8px;text-transform:uppercase;color:var(--navy);margin-bottom:6px}
.filter-group{padding:16px 0;border-top:1px solid var(--border)}
.filter-group:first-of-type{border-top:none;padding-top:8px}
.filter-group h4{font-size:12.5px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:#3d4d63;margin-bottom:11px}
.check{display:flex;align-items:center;gap:9px;font-size:14px;color:#33465f;margin-bottom:9px;cursor:pointer}
.check input{width:16px;height:16px;accent-color:var(--blue)}
.check .count{margin-left:auto;font-size:12px;color:var(--gray)}
.more-link{font-size:12.5px;font-weight:700;color:var(--blue);margin-top:4px;display:inline-block}

/* ---------- Job card (listă) ---------- */
.jobs-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.jobs-top .count{font-size:14px;color:var(--gray)}
.jobs-top select{height:40px;border:1px solid var(--border);border-radius:7px;padding:0 12px;font-family:var(--font);font-size:14px;color:var(--text)}
.job-card{background:#fff;border:1px solid var(--border);border-radius:10px;padding:20px 22px;margin-bottom:16px;transition:.15s;position:relative}
.job-card:hover{box-shadow:var(--shadow);border-color:#c3d3e2}
.job-card .jc-top{display:flex;gap:16px}
.job-thumb{width:60px;height:60px;border-radius:10px;background:#e9f2ff;color:var(--blue);display:grid;place-items:center;font-size:26px;flex:none}
.job-main{flex:1;min-width:0}
.job-main h3{font-size:19px;font-weight:800;color:var(--navy);letter-spacing:.2px}
.job-loc{font-size:14px;color:var(--gray);margin-top:3px}
.job-ago{position:absolute;top:20px;right:22px;font-size:12px;color:#8a97a6;text-transform:uppercase;letter-spacing:.4px}
.job-salary{font-size:20px;font-weight:800;color:var(--green);margin:14px 0 12px}
.badges{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.badge{font-size:12.5px;font-weight:600;color:#2c3e52;background:#eef3f8;border:1px solid #e2e9f0;
  padding:5px 11px;border-radius:20px;display:inline-flex;align-items:center;gap:6px}
.badge.green{background:#eafaf1;border-color:#c9efd8;color:#0a7a41}
.job-meta{display:flex;gap:26px;flex-wrap:wrap;font-size:14px;color:#33465f;margin-bottom:4px}
.job-meta b{color:var(--navy);font-weight:700}
.job-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:14px;padding-top:16px;border-top:1px solid var(--border)}

/* ---------- Job detail ---------- */
.job-detail{display:grid;grid-template-columns:1fr 340px;gap:30px;padding:30px 0 70px;align-items:start}
.jd-body h2{font-size:20px;color:var(--navy);margin:26px 0 12px;font-weight:800}
.jd-body p,.jd-body li{font-size:15.5px;color:#33465f;line-height:1.7}
.jd-body ul{padding-left:20px;margin:6px 0}
.jd-side{background:#fff;border:1px solid var(--border);border-radius:12px;padding:24px;position:sticky;top:92px}
.jd-side .salary{font-size:24px;font-weight:800;color:var(--green);margin-bottom:6px}
.jd-fact{display:flex;justify-content:space-between;font-size:14px;padding:10px 0;border-top:1px solid var(--border)}
.jd-fact span:first-child{color:var(--gray)}
.jd-fact span:last-child{font-weight:700;color:var(--navy)}

/* ---------- CV WIZARD ---------- */
.wizard{background:var(--bg);min-height:calc(100vh - var(--header-h))}
.wizard-inner{display:grid;grid-template-columns:1fr 300px;gap:30px;padding:34px 0 60px;align-items:start}
.wz-progress-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
.wz-step-label{font-size:14px;font-weight:700;color:var(--navy)}
.wz-pct{font-size:14px;font-weight:700;color:var(--blue)}
.wz-bar{height:8px;background:#e3eaf1;border-radius:20px;overflow:hidden;margin-bottom:26px}
.wz-bar span{display:block;height:100%;background:var(--blue);border-radius:20px;transition:width .35s}
.wz-card{background:#fff;border:1px solid var(--border);border-radius:14px;padding:34px 36px;box-shadow:var(--shadow-sm)}
.wz-card h2{font-size:26px;font-weight:800;color:var(--navy);letter-spacing:.2px}
.wz-card .hint{color:var(--gray);font-size:15px;margin:8px 0 22px;line-height:1.55}
.wz-label{display:block;font-size:14px;font-weight:700;color:var(--navy);margin:18px 0 9px}
.wz-input,.wz-textarea,.wz-select{width:100%;border:1px solid var(--border);border-radius:9px;
  font-family:var(--font);font-size:15px;color:var(--text);padding:13px 14px;background:#fff}
.wz-input:focus,.wz-textarea:focus,.wz-select:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(0,107,203,.12)}
.wz-textarea{min-height:150px;resize:vertical;line-height:1.6}
.wz-eg{font-size:13.5px;color:#7a8797;margin-top:8px;font-style:italic}
.wz-grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
/* butoane-opțiune */
.opt-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:4px}
.opt{border:1.5px solid var(--border);background:#fff;border-radius:10px;padding:14px 22px;font-size:15px;
  font-weight:700;color:#33465f;cursor:pointer;transition:.12s;min-width:96px;text-align:center}
.opt:hover{border-color:var(--blue);color:var(--blue)}
.opt.selected{background:var(--blue);border-color:var(--blue);color:#fff}
.wz-nav{display:flex;justify-content:space-between;margin-top:30px}
.wz-note{text-align:center;color:#8a97a6;font-size:13px;margin-top:18px}
.wz-note::before{content:"🔒 ";}
/* sidebar progres */
.wz-side{background:#fff;border:1px solid var(--border);border-radius:14px;padding:24px;position:sticky;top:92px}
.wz-side h3{font-size:12.5px;font-weight:800;letter-spacing:.8px;text-transform:uppercase;color:var(--navy);margin-bottom:16px}
.wz-steps{list-style:none;counter-reset:s}
.wz-steps li{display:flex;align-items:center;gap:12px;padding:9px 0;font-size:14px;color:#5b6b82}
.wz-steps li .dot{width:26px;height:26px;border-radius:50%;background:#eef3f8;color:#8a97a6;
  display:grid;place-items:center;font-size:13px;font-weight:700;flex:none}
.wz-steps li.done{color:var(--navy)}
.wz-steps li.done .dot{background:#eafaf1;color:var(--green)}
.wz-steps li.active{color:var(--blue);font-weight:700}
.wz-steps li.active .dot{background:var(--blue);color:#fff}

/* ---------- CV FINAL ---------- */
.cvfinal{display:grid;grid-template-columns:1fr 320px;gap:30px;align-items:start}
.cv-done{display:flex;align-items:center;gap:10px;font-size:24px;font-weight:800;color:var(--green);margin-bottom:18px}
.cv-paper{background:#fff;border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);
  padding:38px 40px;font-size:13.5px;color:#2a3543;max-width:720px}
.cv-h{display:flex;gap:20px;align-items:center;border-bottom:2px solid var(--navy);padding-bottom:18px;margin-bottom:18px}
.cv-photo{width:78px;height:78px;border-radius:8px;background:#e9f2ff;color:var(--blue);display:grid;place-items:center;font-size:26px;flex:none}
.cv-h h1{font-size:24px;color:var(--navy);font-weight:800;letter-spacing:.5px}
.cv-h .role{font-size:14px;color:var(--blue);font-weight:700;letter-spacing:1px;text-transform:uppercase;margin-top:2px}
.cv-sec{margin-top:18px}
.cv-sec h3{font-size:12px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:var(--navy);
  border-bottom:1px solid var(--border);padding-bottom:5px;margin-bottom:10px}
.cv-cols{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.cv-job{margin-bottom:12px}
.cv-job .t{font-weight:700;color:var(--text)}
.cv-job .m{color:var(--gray);font-size:12.5px;margin-bottom:4px}
.cv-list{list-style:none}
.cv-list li{padding:3px 0 3px 14px;position:relative}
.cv-list li::before{content:"";position:absolute;left:0;top:11px;width:5px;height:5px;border-radius:50%;background:var(--blue)}
/* panou acțiuni CV */
.cv-actions{background:#fff;border:1px solid var(--border);border-radius:14px;padding:24px;position:sticky;top:92px}
.cv-actions h3{font-size:12.5px;font-weight:800;letter-spacing:.8px;text-transform:uppercase;color:var(--navy);margin-bottom:14px}
.lang-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:20px}
.lang-opt{border:1.5px solid var(--border);background:#fff;border-radius:8px;padding:10px;text-align:center;
  font-size:13.5px;font-weight:700;color:#33465f;cursor:pointer;transition:.12s}
.lang-opt:hover{border-color:var(--blue)}
.lang-opt.selected{background:var(--navy);border-color:var(--navy);color:#fff}
.cv-actions .btn{width:100%;margin-bottom:10px}

/* ---------- Card grid (Pentru candidați) ---------- */
.cardgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;padding:8px 0 44px}
.info-card{background:#fff;border:1px solid var(--border);border-radius:12px;padding:26px;transition:.15s}
.info-card:hover{box-shadow:var(--shadow);transform:translateY(-3px)}
.info-card .ic{width:52px;height:52px;border-radius:12px;display:grid;place-items:center;font-size:24px;margin-bottom:14px}
.ic.b1{background:#e9f2ff;color:var(--blue)} .ic.b2{background:#eafaf1;color:var(--green)}
.ic.b3{background:#fff2e6;color:#d97706} .ic.b4{background:#fdeaf1;color:#d6336c}
.ic.b5{background:#eef0ff;color:#4f46e5} .ic.b6{background:#e6f7fb;color:#0891b2}
.info-card h3{font-size:18px;font-weight:800;color:var(--navy);margin-bottom:8px}
.info-card p{font-size:14.5px;color:#5b6b82;line-height:1.6;margin-bottom:14px}
.info-card .more{font-size:14px;font-weight:700;color:var(--blue)}

/* ---------- CTA bar navy ---------- */
.cta-bar{background:var(--navy);border-radius:14px;padding:34px 40px;display:flex;
  align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;margin:10px 0 60px}
.cta-bar h3{color:#fff;font-size:24px;font-weight:800}
.cta-bar p{color:#b9c7da;font-size:15.5px;margin-top:6px}

/* ---------- Angajatori / Despre ---------- */
.feature-row{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;padding:10px 0 30px}
.feature{background:#fff;border:1px solid var(--border);border-radius:12px;padding:26px}
.feature .n{width:44px;height:44px;border-radius:10px;background:#e9f2ff;color:var(--blue);
  display:grid;place-items:center;font-weight:800;font-size:18px;margin-bottom:12px}
.feature h3{font-size:17px;color:var(--navy);font-weight:800;margin-bottom:7px}
.feature p{font-size:14.5px;color:#5b6b82;line-height:1.6}
.split{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;padding:30px 0}
.split h2{font-size:30px;color:var(--navy);font-weight:800;margin-bottom:14px}
.split p{color:#3d4d63;font-size:16px;margin-bottom:12px;line-height:1.7}
.prose{max-width:760px}
.prose h2{font-size:24px;color:var(--navy);font-weight:800;margin:26px 0 10px}
.prose p{color:#3d4d63;font-size:16px;line-height:1.75;margin-bottom:12px}

/* ---------- Formulare (B2B / contact / aplicare) ---------- */
.formcard{background:#fff;border:1px solid var(--border);border-radius:14px;padding:30px;max-width:640px}
.formcard .fg{margin-bottom:16px}
.formcard label{display:block;font-size:13.5px;font-weight:700;color:var(--navy);margin-bottom:7px}
.formcard input,.formcard textarea,.formcard select{width:100%;border:1px solid var(--border);
  border-radius:9px;padding:12px 14px;font-family:var(--font);font-size:15px;color:var(--text)}
.formcard textarea{min-height:120px;resize:vertical}

/* ---------- Login „Universul EVOROM" ---------- */
.auth-wrap{min-height:100vh;display:grid;place-items:center;background:
  radial-gradient(1200px 600px at 50% -10%,#0e2a4d,transparent),var(--navy);padding:24px}
.auth-card{background:#fff;border-radius:16px;box-shadow:0 30px 80px rgba(0,0,0,.4);
  padding:40px;width:100%;max-width:420px;text-align:center}
.auth-brand .name{font-size:26px;font-weight:800;color:var(--navy);letter-spacing:.5px}
.auth-brand .tag{font-size:10px;letter-spacing:3px;color:var(--blue-light);font-weight:700}
.auth-card .uni{font-size:13px;color:var(--gray);margin:12px 0 26px}
.auth-card .fg{text-align:left;margin-bottom:16px}
.auth-card label{display:block;font-size:13px;font-weight:700;color:var(--navy);margin-bottom:7px}
.auth-card input{width:100%;border:1px solid var(--border);border-radius:9px;padding:13px 14px;font-size:15px;font-family:var(--font)}
.auth-card .btn{width:100%;margin-top:6px}
.auth-back{display:inline-block;margin-top:18px;font-size:13px;color:var(--gray)}

/* ---------- CRM ---------- */
.crm{background:var(--bg);min-height:100vh}
.crm-top{background:var(--navy);color:#fff;padding:0}
.crm-top .container{display:flex;align-items:center;justify-content:space-between;height:64px}
.crm-top .brand .name{color:#fff}
.crm-nav{display:flex;gap:22px;font-size:14px}
.crm-nav a{color:#b9c7da}.crm-nav a.active,.crm-nav a:hover{color:#fff}
.crm-body{padding:28px 0 60px}
.crm-h{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}
.crm-h h1{font-size:26px;font-weight:800;color:var(--navy)}
.stat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:22px}
.stat-card{background:#fff;border:1px solid var(--border);border-radius:12px;padding:18px 20px}
.stat-card .num{font-size:28px;font-weight:800;color:var(--navy)}
.stat-card .lab{font-size:13px;color:var(--gray);margin-top:2px}
.crm-filters{background:#fff;border:1px solid var(--border);border-radius:12px;padding:16px;
  display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin-bottom:18px}
.crm-filters .fg{display:flex;flex-direction:column;gap:5px}
.crm-filters label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:var(--gray)}
.crm-filters select,.crm-filters input{height:40px;border:1px solid var(--border);border-radius:8px;
  padding:0 12px;font-family:var(--font);font-size:14px;min-width:150px}
.table-wrap{background:#fff;border:1px solid var(--border);border-radius:12px;overflow:hidden}
table.crm-table{width:100%;border-collapse:collapse;font-size:14px}
.crm-table th{text-align:left;background:#f4f7fa;color:#3d4d63;font-size:12px;text-transform:uppercase;
  letter-spacing:.4px;font-weight:700;padding:13px 16px;border-bottom:1px solid var(--border)}
.crm-table td{padding:14px 16px;border-bottom:1px solid var(--border);color:#33465f;vertical-align:middle}
.crm-table tr:hover td{background:#fafcfe}
.crm-name{font-weight:700;color:var(--navy)}
.crm-sub{font-size:12.5px;color:var(--gray)}
.pill{font-size:12px;font-weight:700;padding:4px 11px;border-radius:20px;display:inline-block}
.pill.new{background:#eef3f8;color:#3d4d63}
.pill.work{background:#eafaf1;color:#0a7a41}
.pill.progress{background:#fff5e6;color:#b45309}
.pill.accepted{background:#e9f2ff;color:var(--blue)}
.compbar{width:90px;height:7px;background:#e3eaf1;border-radius:20px;overflow:hidden;display:inline-block;vertical-align:middle}
.compbar span{display:block;height:100%;background:var(--blue)}
.stars{color:#f5b301;letter-spacing:1px;font-size:14px}
.stars .off{color:#d3dae2}

/* ---------- Responsive interior ---------- */
@media(max-width:960px){
  .listing{grid-template-columns:1fr}
  .filters{position:static}
  .job-detail,.wizard-inner,.cvfinal{grid-template-columns:1fr}
  .wz-side,.cv-actions,.jd-side{position:static}
  .jobsearch{grid-template-columns:1fr}
  .cardgrid,.feature-row{grid-template-columns:1fr 1fr}
  .split{grid-template-columns:1fr}
  .stat-row{grid-template-columns:1fr 1fr}
  .crm-table{display:block;overflow-x:auto;white-space:nowrap}
}
@media(max-width:640px){
  .cardgrid,.feature-row,.cv-cols{grid-template-columns:1fr}
  .crm-nav{display:none}
  .wz-card{padding:24px 20px}
}

/* ---------- Context job + upload CV în generator ---------- */
.job-banner{background:#e9f2ff;border:1px solid #cfe0f5;border-radius:10px;padding:13px 18px;
  margin-bottom:18px;display:flex;gap:11px;align-items:center;font-size:14.5px;color:#1e3a5f}
.job-banner b{color:var(--navy)}
.job-banner .x{margin-left:auto;font-size:12px;color:var(--gray)}
.upload-cv{border:1.6px dashed #b8ccdf;border-radius:12px;padding:22px;text-align:center;
  background:#fafcfe;margin-bottom:22px}
.upload-cv .u-ic{font-size:28px}
.upload-cv h4{font-size:16px;color:var(--navy);font-weight:800;margin:6px 0 4px}
.upload-cv p{font-size:13.5px;color:var(--gray);margin-bottom:12px}
.ai-pill{display:inline-flex;gap:7px;align-items:center;font-size:12.5px;color:var(--blue);
  font-weight:700;background:#eaf2ff;border:1px solid #d3e4f8;padding:5px 12px;border-radius:20px}
.or-sep{display:flex;align-items:center;gap:14px;color:var(--gray);font-size:13px;margin:18px 0}
.or-sep::before,.or-sep::after{content:"";flex:1;height:1px;background:var(--border)}
