/* Warner360 Requirement Navigator */
.requirement-navigator{
  --rn-accent:var(--module-accent,#2563eb);
  margin:0 0 18px;
  border:1px solid #cfd9e5;
  border-left:6px solid var(--rn-accent);
  border-radius:12px;
  background:#fff;
  box-shadow:0 8px 24px rgba(15,23,42,.08);
  overflow:hidden;
}
.requirement-navigator.is-complete{border-left-color:#15803d}
.requirement-navigator-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:16px 18px;background:linear-gradient(180deg,#f8fafc,#fff)}
.requirement-navigator-heading{display:flex;gap:12px;align-items:flex-start;min-width:0}
.requirement-navigator-icon{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border-radius:50%;font-weight:800;background:#fff3cd;color:#8a5a00;border:1px solid #f2d184}
.requirement-navigator.is-complete .requirement-navigator-icon{background:#dcfce7;color:#166534;border-color:#86efac}
.requirement-navigator h2{margin:0;font-size:1.12rem}
.requirement-navigator p{margin:4px 0 0;color:#596579}
.requirement-count-badge{white-space:nowrap;border-radius:999px;padding:6px 10px;font-weight:750;font-size:.82rem;background:#fee2e2;color:#991b1b}
.requirement-navigator.is-complete .requirement-count-badge{background:#dcfce7;color:#166534}
.requirement-progress-wrap{padding:0 18px 14px}
.requirement-progress-track{height:9px;border-radius:999px;background:#e5e7eb;overflow:hidden}
.requirement-progress-bar{display:block;height:100%;border-radius:inherit;background:var(--rn-accent);transition:width .25s ease}
.requirement-progress-copy{display:flex;justify-content:space-between;gap:12px;margin-top:7px;color:#596579;font-size:.82rem}
.requirement-next{margin:0 18px 14px;padding:14px;border:1px solid #bfdbfe;border-radius:10px;background:#eff6ff;display:flex;gap:14px;align-items:center;justify-content:space-between}
.requirement-next-copy{min-width:0}.requirement-next-copy span{display:block;text-transform:uppercase;letter-spacing:.04em;font-size:.72rem;font-weight:800;color:#1d4ed8}.requirement-next-copy strong{display:block;margin-top:3px}.requirement-next-copy small{display:block;margin-top:3px;color:#596579}
.requirement-action{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 11px;border:1px solid #2563eb;border-radius:7px;background:#2563eb;color:#fff!important;text-decoration:none!important;font-weight:700;font-size:.82rem;white-space:nowrap;cursor:pointer}
.requirement-action.secondary{background:#fff;color:#1d4ed8!important}
.requirement-list-toggle{display:block;width:100%;padding:12px 18px;border:0;border-top:1px solid #e5e7eb;background:#f8fafc;text-align:left;font-weight:750;color:#334155;cursor:pointer}
.requirement-list-toggle:hover{background:#f1f5f9}
.requirement-list{display:grid;gap:0;border-top:1px solid #e5e7eb}
.requirement-list[hidden]{display:none}
.requirement-item{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:10px;align-items:start;padding:13px 18px;border-bottom:1px solid #edf0f4}
.requirement-item:last-child{border-bottom:0}
.requirement-item-index{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;font-size:.75rem;font-weight:800;background:#fee2e2;color:#991b1b}
.requirement-item strong{display:block}.requirement-item small{display:block;margin-top:3px;color:#64748b;line-height:1.35}
.requirement-item.no-target .requirement-action{border-color:#94a3b8;color:#475569!important;background:#fff}
.requirement-floating-button{position:fixed;right:22px;bottom:22px;z-index:80;display:flex;align-items:center;gap:8px;border:0;border-radius:999px;padding:10px 14px;background:#991b1b;color:#fff;box-shadow:0 10px 28px rgba(15,23,42,.25);font-weight:800;cursor:pointer}
.requirement-floating-button[hidden]{display:none}
.requirement-floating-count{display:grid;place-items:center;min-width:23px;height:23px;padding:0 6px;border-radius:999px;background:#fff;color:#991b1b;font-size:.78rem}
.requirement-highlight{animation:requirementPulse 1.7s ease-out 1;outline:4px solid rgba(37,99,235,.25)!important;outline-offset:4px;border-radius:8px}
@keyframes requirementPulse{0%{box-shadow:0 0 0 0 rgba(37,99,235,.45)}70%{box-shadow:0 0 0 14px rgba(37,99,235,0)}100%{box-shadow:0 0 0 0 rgba(37,99,235,0)}}
.requirement-inline-help{margin:7px 0 0;padding:8px 10px;border-radius:7px;background:#fff7ed;color:#9a3412;font-size:.82rem;font-weight:650}
.flash-requirements-link{display:inline-flex;margin-left:10px;font-weight:800;color:inherit;text-decoration:underline;cursor:pointer;background:none;border:0;padding:0}
@media(max-width:760px){
  .requirement-navigator-header,.requirement-next{align-items:stretch;flex-direction:column}
  .requirement-count-badge{align-self:flex-start}
  .requirement-item{grid-template-columns:28px minmax(0,1fr)}
  .requirement-item .requirement-action{grid-column:2;justify-self:start}
  .requirement-floating-button{right:12px;bottom:12px}
}
