/* ============================================================
   BLOCO: trabalhe-conosco
   FUNCAO: Estilos da seção "Trabalhe Conosco" e modal de candidatura
   DEPENDE: variáveis CSS do :root em main.css
   CRIADO: 2026-08-26
   ============================================================ */

/* --- Seção CTA --- */
.trabalhe-conosco{background:var(--color-bg-2)}
.trab-cta{display:flex;align-items:center;gap:var(--space-lg);background:var(--gradient-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-xl);margin-top:var(--space-xl);flex-wrap:wrap}
.trab-cta-text{flex:1;min-width:260px}
.trab-cta-text h3{font-size:var(--text-xl);font-weight:700;margin-bottom:var(--space-sm);color:var(--color-text)}
.trab-cta-text p{color:var(--color-text-muted);font-size:var(--text-sm);line-height:1.65}
.trab-cta .btn{white-space:nowrap}

/* --- Modal currículo --- */
.modal-curriculo{display:none;position:fixed;inset:0;z-index:99999;background:rgba(4,6,11,.88);backdrop-filter:blur(10px);align-items:flex-start;justify-content:center;padding:var(--space-lg);overflow-y:auto}
.modal-curriculo.active{display:flex}
.mc-box{background:#0E131F;border:1px solid rgba(212,168,67,.28);border-radius:var(--radius-lg);padding:var(--space-xl);max-width:720px;width:100%;position:relative;box-shadow:0 30px 80px rgba(0,0,0,.6);margin:40px 0}
.mc-close{position:absolute;top:var(--space-md);right:var(--space-lg);background:none;border:none;color:var(--color-text-muted);font-size:26px;cursor:pointer;line-height:1;transition:color .2s;z-index:10}
.mc-close:hover{color:var(--color-text)}
.mc-box h2{font-family:var(--font-heading);font-size:var(--text-xl);font-weight:800;margin-bottom:var(--space-xs);letter-spacing:-.03em;color:var(--color-text)}
.mc-box h2 .g{color:var(--color-accent)}
.mc-sub{color:var(--color-text-muted);font-size:var(--text-sm);margin-bottom:var(--space-lg)}

/* Seções colapsáveis */
.mc-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;margin-bottom:var(--space-md);transition:border-color .25s}
.mc-section.open{border-color:rgba(212,168,67,.28)}
.mc-section-head{width:100%;padding:16px 20px;display:flex;justify-content:space-between;align-items:center;gap:var(--space-md);cursor:pointer;font-size:var(--text-base);font-weight:600;transition:color .2s;background:none;border:none;color:var(--color-text);font-family:var(--font-heading);text-align:left}
.mc-section-head:hover{color:var(--color-accent)}
.mc-section-head .mc-num{width:30px;height:30px;min-width:30px;background:var(--color-bg-3);border:1px solid var(--color-accent);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:var(--color-accent)}
.mc-section-head .mc-arrow{font-size:18px;color:var(--color-accent);transition:transform .3s;min-width:18px;text-align:center}
.mc-section.open .mc-arrow{transform:rotate(180deg)}
.mc-section-body{max-height:0;overflow:hidden;transition:max-height .4s ease}
.mc-section.open .mc-section-body{max-height:4000px}
.mc-section-inner{padding:0 20px 20px}

/* Campos */
.mc-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-md);margin-bottom:var(--space-lg)}
.mc-row.single{grid-template-columns:1fr}
.mc-field{margin-bottom:var(--space-lg)}.mc-field:last-child{margin-bottom:0}
.mc-field label{display:block;font-size:var(--text-xs);font-weight:600;color:var(--color-text-muted);margin-bottom:var(--space-sm)}
.mc-field label .req{color:#FF6B6B;margin-left:2px}
.mc-field input[type=text],.mc-field input[type=email],.mc-field input[type=tel],.mc-field input[type=number],.mc-field input[type=file],.mc-field select,.mc-field textarea{
  width:100%;background:rgba(255,255,255,.05);border:1px solid var(--color-border);border-radius:var(--radius-sm);
  padding:12px 14px;color:var(--color-text);font-family:var(--font-body);font-size:15px;outline:none;transition:border-color .2s,background .2s}
.mc-field input:focus,.mc-field select:focus,.mc-field textarea:focus{border-color:var(--color-accent);background:rgba(255,255,255,.07)}
.mc-field input::placeholder,.mc-field textarea::placeholder{color:rgba(255,255,255,.35)}
.mc-field select option{background:#0B0F1A}
.mc-field textarea{height:100px;resize:vertical}
.mc-field .hint{font-size:11px;color:rgba(255,255,255,.35);margin-top:4px}

/* Campo inválido — destaque visual */
.mc-field.mc-invalid input,.mc-field.mc-invalid textarea,.mc-field.mc-invalid select{border-color:#FF6B6B;background:rgba(255,107,107,.06)}
.mc-field.mc-invalid .mc-opt{border-color:#FF6B6B}
.mc-lgpd.mc-invalid{border-color:#FF6B6B;background:rgba(255,107,107,.07)}

/* Radio e checkbox */
.mc-opts{display:flex;flex-wrap:wrap;gap:10px}
.mc-opt{display:flex;align-items:center;gap:8px;cursor:pointer;padding:8px 14px;border:1px solid var(--color-border);border-radius:var(--radius-sm);transition:border-color .2s,background .2s;font-size:14px;color:var(--color-text-muted)}
.mc-opt:hover{border-color:rgba(212,168,67,.28);background:rgba(212,168,67,.05)}
.mc-opt input{accent-color:var(--color-accent);width:16px;height:16px}
.mc-opt:has(input:checked){border-color:var(--color-accent);background:rgba(212,168,67,.1);color:var(--color-text)}
.mc-checks{display:flex;flex-wrap:wrap;gap:8px}
.mc-check{display:flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:13px;color:var(--color-text-muted);cursor:pointer;transition:border-color .2s}
.mc-check:hover{border-color:rgba(212,168,67,.28)}
.mc-check:has(input:checked){border-color:var(--color-accent);background:rgba(212,168,67,.1);color:var(--color-text)}
.mc-check input{accent-color:var(--color-accent);width:14px;height:14px}

/* LGPD */
.mc-lgpd{display:flex;align-items:flex-start;gap:10px;padding:14px;background:rgba(212,168,67,.05);border:1px solid rgba(212,168,67,.28);border-radius:var(--radius-sm);margin-top:var(--space-lg)}
.mc-lgpd input{accent-color:var(--color-accent);width:18px;height:18px;margin-top:2px;flex-shrink:0}
.mc-lgpd label{font-size:12px;color:var(--color-text-muted);line-height:1.6;cursor:pointer}
.mc-lgpd a{color:var(--color-accent);text-decoration:underline}

/* Botão submit */
.mc-submit{width:100%;background:var(--gradient-gold);color:#17130A;font-family:var(--font-heading);font-weight:800;font-size:var(--text-base);padding:17px;border-radius:var(--radius-pill);border:1px solid #EDC642;cursor:pointer;transition:transform .25s,box-shadow .25s;margin-top:var(--space-lg);box-shadow:0 8px 24px rgba(212,168,67,.18)}
.mc-submit:hover{transform:translateY(-2px);box-shadow:0 13px 34px rgba(212,168,67,.3)}
.mc-submit:active{transform:translateY(0) scale(.98)}
.mc-submit:disabled{opacity:.5;cursor:not-allowed;transform:none}
.mc-error{color:#FF6B6B;font-size:var(--text-sm);margin-top:var(--space-md);display:none;text-align:center}
.mc-loading{text-align:center;color:var(--color-accent);font-size:var(--text-sm);display:none;margin-top:var(--space-md)}

/* Toast */
.toast-curriculo{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);z-index:99999;padding:14px 28px;border-radius:12px;font-weight:600;font-size:.95rem;box-shadow:0 8px 30px rgba(0,0,0,.4);max-width:90%;text-align:center;animation:fadeInUp .4s ease}
.toast-curriculo.ok{background:#25D366;color:#fff}
.toast-curriculo.erro{background:#dc3545;color:#fff}

/* Toast animation */
@keyframes fadeInUp{from{opacity:0;transform:translateX(-50%) translateY(20px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}

@media(max-width:600px){
  .mc-box{padding:var(--space-lg);margin:20px 0}
  .mc-row{grid-template-columns:1fr}
  .mc-opts{flex-direction:column}
  .trab-cta{flex-direction:column;text-align:center}
}
/* /BLOCO: trabalhe-conosco */
