/* Detailed opportunity dialogs for the Employee / Careers page */
.role-modal[hidden]{display:none!important}
.role-modal{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:24px}
.role-modal__backdrop{position:absolute;inset:0;background:rgba(0,5,10,.82);backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px)}
.role-modal__dialog{position:relative;z-index:1;width:min(980px,100%);max-height:calc(100vh - 48px);overflow:auto;padding:clamp(24px,4vw,46px);border:1px solid #1597c2;border-radius:24px;background:linear-gradient(145deg,rgba(4,18,28,.985),rgba(3,10,18,.99));color:#f4fbff;box-shadow:0 30px 100px rgba(0,0,0,.68),0 0 48px rgba(31,160,213,.12)}
.role-modal__dialog.freelancer-detail{border-color:#0bbf97;box-shadow:0 30px 100px rgba(0,0,0,.68),0 0 48px rgba(11,191,151,.13)}
.role-modal__dialog.gorilla-detail{border-color:#8c4ae8;background:linear-gradient(145deg,rgba(31,10,46,.99),rgba(8,8,20,.99));box-shadow:0 30px 100px rgba(0,0,0,.68),0 0 50px rgba(139,73,231,.17)}
.role-modal__close{position:absolute;top:14px;right:16px;width:44px;height:44px;border:1px solid rgba(255,255,255,.22);border-radius:50%;background:rgba(255,255,255,.05);color:#fff;font:700 1.8rem/1 Arial,sans-serif;cursor:pointer}
.role-modal__close:hover,.role-modal__close:focus-visible{background:rgba(255,255,255,.13);outline:3px solid #fff;outline-offset:2px}
.role-modal__header{padding-right:48px;border-bottom:1px solid rgba(255,255,255,.14);margin-bottom:24px;padding-bottom:20px}
.role-modal__kicker{display:block;color:#64d8ff;font-size:.74rem;font-weight:900;letter-spacing:.16em;margin-bottom:8px}
.freelancer-detail .role-modal__kicker{color:#63e5c2}.gorilla-detail .role-modal__kicker{color:#d49bff}
.role-modal__header h2{margin:0;font-size:clamp(2.1rem,5vw,4.2rem);line-height:1;letter-spacing:-.035em}
.role-modal__header p{max-width:780px;margin:14px 0 0;color:#c5d4df;font-size:1.02rem;line-height:1.6}
.role-modal__grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.role-modal__section{padding:20px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(255,255,255,.035)}
.role-modal__section h3{margin:0 0 10px;color:#fff;font-size:1.15rem}
.role-modal__section p,.role-modal__section li{color:#cbd7df;line-height:1.55}
.role-modal__section p{margin:0 0 10px}.role-modal__section p:last-child{margin-bottom:0}
.role-modal__section ul{margin:0;padding-left:20px}.role-modal__section li+li{margin-top:7px}
.role-modal__note{margin-top:18px;padding:17px 19px;border-left:4px solid #33c6ff;border-radius:10px;background:rgba(51,198,255,.07);color:#dceaf2}
.freelancer-detail .role-modal__note{border-left-color:#22d3aa;background:rgba(34,211,170,.07)}
.gorilla-detail .role-modal__note{border-left-color:#aa67ff;background:rgba(170,103,255,.08)}
.role-modal__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.role-modal__apply,.role-modal__secondary{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:12px 20px;border-radius:12px;font:800 .95rem/1.2 Inter,Segoe UI,Arial,sans-serif;text-decoration:none;cursor:pointer}
.role-modal__apply{border:0;color:#03110e;background:linear-gradient(90deg,#13c9a4,#6ee7ce);box-shadow:0 10px 28px rgba(16,201,165,.22)}
.gorilla-apply{color:#fff;background:linear-gradient(90deg,#7c3ce4,#6ca8ff);box-shadow:0 10px 28px rgba(124,60,228,.24)}
.role-modal__secondary{border:1px solid rgba(255,255,255,.25);background:transparent;color:#fff}
.role-modal__apply:hover,.role-modal__apply:focus-visible,.role-modal__secondary:hover,.role-modal__secondary:focus-visible{filter:brightness(1.08);outline:3px solid #fff;outline-offset:2px}
body.role-modal-open{overflow:hidden}
@media(max-width:760px){.role-modal{padding:8px}.role-modal__dialog{max-height:calc(100vh - 16px);padding:26px 18px}.role-modal__grid{grid-template-columns:1fr}.role-modal__actions{display:grid}.role-modal__apply,.role-modal__secondary{width:100%}}
@media(prefers-reduced-motion:reduce){.role-modal *{scroll-behavior:auto!important;transition:none!important}}
