/* For HR & Operations — page-specific blocks (sync diagram + lifecycle timeline) */

.role-hero-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:48px;align-items:center}
@media (max-width:980px){ .role-hero-grid{grid-template-columns:1fr} }

/* Provisioning visual — directory sync diagram */
.hr-vis{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:24px;box-shadow:0 14px 36px -20px rgba(11,13,18,.18),0 4px 12px -6px rgba(11,13,18,.06)}
.hr-vis-head{display:flex;justify-content:space-between;align-items:center;font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);font-weight:600;padding-bottom:14px;border-bottom:1px solid var(--line);margin-bottom:18px}
.hr-vis-head b{color:var(--ink)}
.sync-diagram{display:grid;grid-template-columns:1fr auto 1fr;gap:14px;align-items:center}
.sync-side{background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:14px}
.sync-side .lbl{font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);font-weight:600;margin-bottom:10px}
.sync-side .item{display:grid;grid-template-columns:1fr auto;gap:8px;padding:7px 0;align-items:center;font-size:12.5px;border-top:1px solid var(--line)}
.sync-side .item:first-of-type{border-top:none}
.sync-side .item .nm{color:var(--ink);font-weight:500}
.sync-side .item .role{font-family:'JetBrains Mono',monospace;font-size:10px;color:var(--ink-3);margin-top:2px}
.sync-side .item .stat{font-family:'JetBrains Mono',monospace;font-size:9.5px;letter-spacing:.05em;text-transform:uppercase;font-weight:600;padding:3px 7px;border-radius:99px;background:var(--bg-2);color:var(--ink-2);white-space:nowrap}
.sync-side .item .stat.add{background:rgba(14,122,75,.14);color:var(--green)}
.sync-side .item .stat.upd{background:rgba(31,79,184,.14);color:var(--blue)}
.sync-side .item .stat.rem{background:rgba(184,51,30,.14);color:var(--red)}
.sync-arrow{display:flex;flex-direction:column;align-items:center;gap:8px}
.sync-arrow .ar{font-family:'JetBrains Mono',monospace;font-size:14px;color:var(--ink-3)}
.sync-arrow .protocol{font-family:'JetBrains Mono',monospace;font-size:9.5px;letter-spacing:.1em;color:var(--ink-3);font-weight:600;text-transform:uppercase}

/* Lifecycle timeline */
.lifecycle{margin-top:36px;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:32px;box-shadow:0 14px 36px -20px rgba(11,13,18,.12)}
.life-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:16px}
@media (max-width:900px){ .life-grid{grid-template-columns:1fr} }
.life-step{padding:20px 22px;border-right:1px solid var(--line);position:relative}
.life-step:last-child{border-right:none}
@media (max-width:900px){
    .life-step{border-right:none;border-bottom:1px solid var(--line)}
    .life-step:last-child{border-bottom:none}
}
.life-step .num{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);font-weight:600;margin-bottom:8px}
.life-step h4{font-size:16px;font-weight:600;letter-spacing:-.01em;margin-bottom:8px}
.life-step p{font-size:13.5px;line-height:1.55;color:var(--ink-2);margin-bottom:8px}
.life-step .tag{font-family:'JetBrains Mono',monospace;font-size:10px;color:var(--blue);background:var(--blue-50);padding:2px 7px;border-radius:99px;display:inline-block;margin-right:5px;letter-spacing:.04em;font-weight:600}
