/* area-common.css, componentes novos e compartilhados da Área do Cooperado
   (modal, busca global, feed de atividade, banner de onboarding, cadeado,
   skip-link). Depende dos tokens (--navy, --green, --mint, --ink-dark, etc.)
   já definidos no <style> inline de cada página. */

/* skip-link */
.skip-link{position:absolute;left:-9999px;top:0;background:var(--ink-dark);color:#fff;padding:10px 18px;border-radius:0 0 10px 0;z-index:200;font-size:14px;font-weight:600;text-decoration:none}
.skip-link:focus{left:0}

/* cadeado nos benefícios ainda não disponíveis */
.lock-icon{display:inline-block;width:12px;height:12px;vertical-align:-1.5px;margin-right:2px;opacity:.7}
.unlock-hint{display:block;font-size:12px;color:var(--muted);margin-top:6px;line-height:1.4}

/* cards viram botão (acessível) sem perder o visual de card */
.vcard-btn, .press-card{all:unset;display:flex;flex-direction:column;box-sizing:border-box;cursor:pointer;width:100%;text-align:left;font:inherit;color:inherit}
.vcard-btn:focus-visible, .press-card:focus-visible{outline:2px solid var(--green);outline-offset:2px;border-radius:16px}

/* modal */
.modal-overlay{position:fixed;inset:0;background:rgba(4,22,37,.55);backdrop-filter:blur(2px);display:none;align-items:center;justify-content:center;padding:20px;z-index:150}
.modal-overlay.open{display:flex}
.modal-box{background:var(--off,#fff);color:var(--ink,#0B1A2A);border-radius:18px;max-width:560px;width:100%;max-height:85vh;overflow-y:auto;padding:28px;position:relative;box-shadow:0 20px 60px rgba(0,0,0,.3)}
.modal-close{position:absolute;top:16px;right:16px;background:none;border:none;width:32px;height:32px;border-radius:50%;cursor:pointer;color:var(--mid);font-size:20px;line-height:1;display:flex;align-items:center;justify-content:center}
.modal-close:hover{background:var(--border,rgba(8,48,84,.13))}
.modal-kicker{font-size:13px;font-weight:600;color:var(--green);margin-bottom:6px}
.modal-box h3{font-family:'Sora',sans-serif;font-size:20px;color:var(--navy);margin:0 0 12px;padding-right:30px}
.modal-box .modal-body{font-size:14.5px;color:var(--mid);line-height:1.7}
.modal-box .modal-body p{margin:0 0 12px}
.modal-box .modal-cta{margin-top:16px}
.modal-ghost-btn{display:inline-block;border-radius:999px;padding:11px 22px;font-size:14px;font-weight:600;border:1.5px dashed var(--border,rgba(8,48,84,.25));color:var(--mid);background:transparent;cursor:default}

/* busca global */
.search-trigger{display:flex;align-items:center;gap:8px;width:100%;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:9px 12px;color:rgba(255,255,255,.65);font-size:13.5px;cursor:pointer;margin-bottom:14px;font-family:'Inter',sans-serif}
.search-trigger:hover{background:rgba(255,255,255,.1);color:#fff}
.search-trigger svg{width:15px;height:15px;flex:0 0 auto}
.search-panel-overlay{position:fixed;inset:0;background:rgba(4,22,37,.5);display:none;align-items:flex-start;justify-content:center;padding:80px 20px 20px;z-index:160}
.search-panel-overlay.open{display:flex}
.search-panel{background:var(--off,#fff);border-radius:16px;max-width:560px;width:100%;max-height:70vh;overflow-y:auto;box-shadow:0 20px 60px rgba(0,0,0,.35)}
.search-panel input{width:100%;border:none;border-bottom:1px solid var(--border,rgba(8,48,84,.13));padding:18px 20px;font-size:16px;font-family:'Inter',sans-serif;background:transparent;color:var(--ink,#0B1A2A)}
.search-panel input:focus{outline:none}
.search-results{padding:8px}
.search-group-label{font-size:11.5px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);padding:10px 12px 4px}
.search-result{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:10px;text-decoration:none;color:inherit;cursor:pointer}
.search-result:hover, .search-result.active{background:var(--border,rgba(8,48,84,.08))}
.search-result .sr-title{font-size:14px;font-weight:500;color:var(--navy)}
.search-result .sr-meta{font-size:12px;color:var(--muted)}
.search-empty{padding:24px 20px;text-align:center;color:var(--muted);font-size:14px}

/* feed de atividade */
.activity-feed{display:flex;flex-direction:column;gap:0;background:#fff;border:1px solid var(--border,rgba(8,48,84,.13));border-radius:16px;overflow:hidden}
.activity-item{display:flex;align-items:flex-start;gap:12px;padding:14px 18px;border-bottom:1px solid var(--border,rgba(8,48,84,.08))}
.activity-item:last-child{border-bottom:none}
.activity-dot{width:8px;height:8px;border-radius:50%;background:var(--green);margin-top:6px;flex:0 0 auto}
.activity-text{font-size:14px;color:var(--ink,#0B1A2A)}
.activity-time{font-size:12px;color:var(--muted);margin-top:2px}

/* banner de onboarding */
.onboard-banner{background:linear-gradient(135deg,#0E3A64 0%,#125F3B 100%);color:#fff;border-radius:16px;padding:22px 24px;margin-bottom:26px;position:relative;display:flex;justify-content:space-between;gap:16px;align-items:flex-start}
.onboard-banner h3{font-family:'Sora',sans-serif;font-size:16px;margin:0 0 6px;color:#fff}
.onboard-banner p{font-size:13.5px;color:rgba(255,255,255,.85);margin:0;max-width:52ch}
.onboard-dismiss{background:rgba(255,255,255,.15);border:none;color:#fff;width:28px;height:28px;border-radius:50%;cursor:pointer;font-size:16px;line-height:1;flex:0 0 auto;display:flex;align-items:center;justify-content:center}
.onboard-dismiss:hover{background:rgba(255,255,255,.25)}
@media (max-width:560px){ .onboard-banner{flex-direction:column} }

/* toggle simples (usado no perfil pra visibilidade no diretório) */
.switch-row{display:flex;align-items:center;justify-content:space-between;gap:14px;background:var(--off,#F5F7F6);border:1px solid var(--border,rgba(8,48,84,.13));border-radius:12px;padding:14px 16px;margin-top:16px}
.switch-row .sr-label{font-size:14px;font-weight:600;color:var(--navy)}
.switch-row .sr-desc{font-size:12.5px;color:var(--mid);margin-top:2px}
.switch{position:relative;width:42px;height:24px;flex:0 0 auto}
.switch input{opacity:0;width:0;height:0;position:absolute}
.switch-track{position:absolute;inset:0;background:var(--border,rgba(8,48,84,.25));border-radius:999px;cursor:pointer;transition:.2s}
.switch-track::before{content:'';position:absolute;width:18px;height:18px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s;box-shadow:0 1px 3px rgba(0,0,0,.2)}
.switch input:checked + .switch-track{background:var(--green)}
.switch input:checked + .switch-track::before{transform:translateX(18px)}
.switch input:focus-visible + .switch-track{outline:2px solid var(--green);outline-offset:2px}

/* botão de interesse em vaga, depois de enviado */
.interesse-btn.sent{border-color:var(--green,#125F3B);color:var(--green,#125F3B);cursor:default;opacity:.85}
.interesse-btn.sent:hover{background:transparent}

/* "você" no diretório de cooperados */
.coop-you{border-color:var(--green) !important;box-shadow:0 0 0 1px var(--green)}
.you-badge{display:inline-block;background:var(--green);color:#fff;font-size:10.5px;font-weight:600;padding:2px 8px;border-radius:999px;margin-left:6px;vertical-align:2px}
