/* Correções públicas versionadas: oportunidades, cadastro de anunciante e formulários. */
.narrow { max-width:900px; }
.report-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem 1.15rem; border:1px solid #e2e8f0; border-radius:.8rem; background:#fff; padding:1.5rem; box-shadow:0 3px 10px rgb(15 23 42 / .05); }
.report-form>label { display:grid; gap:.4rem; color:#334155; font-size:.84rem; font-weight:800; }
.report-form fieldset { grid-column:1 / -1; display:flex; flex-wrap:wrap; gap:.8rem 1.15rem; margin:0; border:1px solid #cbd5e1; border-radius:.6rem; padding:1rem; }
.report-form legend { padding:0 .35rem; color:#334155; font-size:.86rem; font-weight:800; }
.report-form fieldset label,.report-form>label:has(input[type="checkbox"]) { display:inline-flex; align-items:center; gap:.45rem; color:#475569; font-size:.88rem; font-weight:600; }
.report-form input:not([type="checkbox"]):not([type="radio"]),.report-form select,.report-form textarea { width:100%; min-height:2.7rem; border:1px solid #cbd5e1; border-radius:.45rem; background:#fff; padding:.62rem .75rem; color:#334155; font:inherit; font-size:.94rem; }
.report-form textarea { min-height:8rem; resize:vertical; }
.report-form input:focus,.report-form select:focus,.report-form textarea:focus { border-color:#dc2626; outline:3px solid #fee2e2; }
.report-form .form-grid { display:grid; grid-column:1 / -1; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem 1.15rem; }
.report-form .form-grid label { display:grid; gap:.4rem; color:#334155; font-size:.84rem; font-weight:800; }
.report-form .hint { color:#64748b; font-size:.72rem; font-weight:500; }
.report-form .button { justify-self:start; border-color:#b91c1c; background:#b91c1c; color:#fff; cursor:pointer; }
.report-form .button:hover { background:#991b1b; }
.notice.error { margin:0 0 1rem; border:1px solid #fecaca; border-radius:.65rem; background:#fef2f2; padding:1rem; color:#991b1b; }
.opportunities-page .opportunities-actions { display:flex; flex-wrap:wrap; gap:.75rem; margin-top:1.2rem; }
.opportunities-page .opportunities-actions .button { display:inline-flex; align-items:center; gap:.45rem; background:#fff; }
.opportunities-page .como-usar { display:flex; align-items:flex-start; gap:1rem; margin:0 0 2rem; border:1px solid #e2e8f0; border-radius:.75rem; background:#f8fafc; padding:1.25rem; }
.opportunities-page .como-usar-icon { display:grid; width:3rem; height:3rem; flex:0 0 auto; place-items:center; border-radius:.55rem; background:#fee2e2; color:#b91c1c; font-size:1.3rem; }
.opportunities-page .como-usar h2 { margin:.05rem 0 .4rem; color:#0f172a; font-size:1.2rem; }
.opportunities-page .como-usar p { margin:0; color:#475569; }
.vagas-filtros { display:flex; flex-wrap:wrap; gap:.7rem; margin:0 0 1rem; }
.filtro-btn { display:inline-flex; align-items:center; gap:.4rem; border:2px solid #e2e8f0; border-radius:999px; background:#fff; padding:.5rem 1.05rem; color:#334155; font-size:.85rem; font-weight:800; line-height:1.2; text-decoration:none; cursor:pointer; }
.filtro-btn:hover { border-color:#fca5a5; color:#b91c1c; }
.filtro-btn.active { border-color:#b91c1c; background:#b91c1c; color:#fff; }
.opportunity-filter-panel { display:flex; align-items:end; justify-content:space-between; gap:1rem; margin:0 0 2.5rem; border:1px solid #e2e8f0; border-radius:.75rem; background:#f8fafc; padding:1rem 1.15rem; }
.opportunity-filter-fields { display:grid; flex:1; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.opportunity-filter-fields label { display:grid; gap:.35rem; color:#475569; font-size:.76rem; font-weight:800; letter-spacing:.03em; text-transform:uppercase; }
.opportunity-filter-fields select { width:100%; border:1px solid #cbd5e1; border-radius:.45rem; background:#fff; padding:.62rem .75rem; color:#334155; font:inherit; text-transform:none; }
.opportunity-filter-actions { display:flex; align-items:center; gap:.8rem; }.opportunity-filter-actions a { color:#b91c1c; font-size:.82rem; font-weight:800; text-decoration:none; }
.opportunities-section-heading { margin:0 0 1.3rem; }.opportunities-section-heading h2 { margin:0; color:#0f172a; font-size:1.7rem; }.opportunities-section-heading p { margin:.35rem 0 0; color:#64748b; font-size:.9rem; }.opportunities-list--institutional { margin-top:4rem; border-top:1px solid #e2e8f0; padding-top:3rem; }
.vagas-grid { display:grid; gap:1.4rem; }.vaga-card { display:flex; overflow:hidden; border:1px solid #e2e8f0; border-radius:.75rem; background:#fff; box-shadow:0 2px 7px rgb(15 23 42 / .06); }.vaga-card-image { position:relative; display:grid; width:280px; min-height:240px; flex:0 0 auto; place-items:center; overflow:hidden; background:#f1f5f9; color:#b91c1c; font-size:3rem; }.vaga-card-image>img { width:100%; height:100%; object-fit:cover; }.vaga-card-image--placeholder { background:linear-gradient(135deg,#fef2f2,#fee2e2); }.vaga-tipo-badge { position:absolute; top:1rem; left:1rem; border-radius:999px; padding:.35rem .72rem; color:#fff; font-size:.7rem; font-weight:800; text-transform:uppercase; }.tipo-vaga { background:#16a34a; }.tipo-oportunidade { background:#0284c7; }.tipo-servico { background:#d97706; }.tipo-parceria,.tipo-institucional { background:#b91c1c; }.vaga-card-body { display:flex; min-width:0; flex:1; flex-direction:column; padding:1.4rem; }.vaga-card-header { display:flex; justify-content:space-between; gap:1rem; }.vaga-titulo { margin:0; color:#0f172a; font-size:1.2rem; line-height:1.3; }.vaga-meta { margin:.35rem 0 0; color:#64748b; font-size:.82rem; }.vaga-category { align-self:flex-start; border-radius:999px; background:#f1f5f9; padding:.2rem .55rem; color:#475569; font-size:.68rem; font-weight:800; }.vaga-anunciante { display:flex; align-items:center; gap:.55rem; margin:1rem 0 .75rem; }.vaga-anunciante-avatar { display:grid; width:2rem; height:2rem; place-items:center; border-radius:50%; background:#fee2e2; color:#b91c1c; font-size:.7rem; font-weight:900; }.vaga-anunciante-info { display:grid; }.vaga-anunciante-name { color:#334155; font-size:.85rem; font-weight:800; }.vaga-anunciante-cro { color:#64748b; font-size:.72rem; }.vaga-descricao { color:#475569; font-size:.9rem; line-height:1.6; }.vaga-contato { display:flex; flex-wrap:wrap; gap:.7rem 1rem; margin-top:auto; border-top:1px solid #e2e8f0; padding-top:1rem; }.vaga-contato-item,.vaga-contact-link,.contact-protected { display:inline-flex; align-items:center; gap:.35rem; color:#475569; font-size:.8rem; }.vaga-contato-item a,.vaga-contact-link { color:#334155; font-weight:700; text-decoration:none; }.vaga-gallery { margin-top:1rem; }.vaga-gallery summary { color:#b91c1c; font-size:.82rem; font-weight:800; cursor:pointer; }.vaga-gallery>div { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.5rem; margin-top:.7rem; }.vaga-gallery img { width:100%; height:66px; border-radius:.35rem; object-fit:cover; }
/* Fallback visual para a versão anterior do template, se ela estiver em cache no servidor. */
.opportunity-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.2rem; }.opportunity-card { overflow:hidden; border:1px solid #e2e8f0; border-radius:.75rem; background:#fff; box-shadow:0 2px 7px rgb(15 23 42 / .05); }.opportunity-card>img { display:block; width:100%; height:170px; object-fit:cover; }.opportunity-card>div { padding:1.1rem; }.opportunity-card h2,.opportunity-card h3 { margin:.4rem 0; color:#0f172a; }.opportunity-card .prose { font-size:.9rem; }.page-content .report-form { margin-bottom:2rem; }
@media(max-width:760px) { .report-form,.opportunity-filter-fields { grid-template-columns:1fr; }.report-form .form-grid { grid-template-columns:1fr; }.opportunity-filter-panel { align-items:stretch; flex-direction:column; }.vaga-card { flex-direction:column; }.vaga-card-image { width:100%; min-height:190px; }.vaga-card-header { flex-direction:column; }.opportunity-grid { grid-template-columns:1fr; }.opportunities-page .como-usar { flex-direction:column; } }
