.program-help-dialog {
  width:min(790px, calc(100vw - 32px));
  max-width:none;
  max-height:calc(100vh - 40px);
  max-height:calc(100dvh - 40px);
  margin:auto;
  padding:0;
  overflow:hidden;
  color:#eaf5ff;
  background:#0b1a26;
  border:1px solid #4c6477;
  border-radius:18px;
  box-shadow:0 24px 90px #0009;
  font:14px/1.65 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.program-help-dialog[open] { display:flex; flex-direction:column; }
.program-help-dialog::backdrop { background:#010b13b8; }
.program-help-header { display:flex; flex:none; align-items:center; justify-content:space-between; gap:16px; padding:18px 24px; border-bottom:1px solid #314557; background:#102333; }
.program-help-eyebrow { margin:0 0 2px; color:#99c1dc; font-size:11px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.program-help-header h2 { margin:0; color:#f2f8fc; font-size:23px; line-height:1.3; }
.program-help-close { display:grid; place-items:center; flex:none; width:44px; height:44px; padding:0; border:1px solid #57738a; border-radius:10px; color:#f2f8fc; background:#1b3549; font-family:inherit; font-size:28px; line-height:1; cursor:pointer; }
.program-help-close:hover { background:#294b65; }
.program-help-body { min-height:0; padding:18px 24px 22px; overflow:auto; overscroll-behavior:contain; scrollbar-color:#57738a #102333; }
.program-help-intro { margin:0 0 18px; color:#bfd2e1; }
.program-help-sections { display:grid; gap:9px; }
.program-help-sections details { border:1px solid #334c60; border-radius:10px; background:#102332; }
.program-help-sections summary { padding:13px 16px; color:#eaf5ff; font-size:14px; font-weight:700; line-height:1.5; cursor:pointer; overflow-wrap:anywhere; }
.program-help-sections summary::marker { color:#86d7ff; }
.program-help-sections summary:hover { background:#193347; border-radius:10px; }
.program-help-sections details[open] summary { border-bottom:1px solid #334c60; border-radius:10px 10px 0 0; background:#193347; }
.program-help-content { padding:2px 16px 14px; color:#cfdeea; }
.program-help-content p { margin:12px 0 0; }
.program-help-content strong { color:#f2f8fc; font-weight:650; }
.program-help-content ol { margin:12px 0 0; padding-left:24px; }
.program-help-content li { margin:6px 0; padding-left:3px; }
.program-help-content dl { display:grid; grid-template-columns:minmax(140px, .85fr) 1.3fr; column-gap:14px; row-gap:9px; margin:14px 0 0; }
.program-help-content dt { font-weight:650; color:#f2f8fc; }
.program-help-content dd { margin:0; }
.program-help-end { margin:20px 0 0; font-size:12px; color:#aec5d7; }
.program-help-dialog :focus-visible { outline:2px solid #91dfff; outline-offset:3px; }
.program-help-dialog summary:focus-visible { outline-offset:-3px; }
@media (max-width:720px) {
  .program-help-dialog { width:calc(100vw - 16px); max-height:calc(100vh - 24px); max-height:calc(100dvh - 24px); border-radius:13px; font-size:13px; }
  .program-help-header { gap:10px; padding:14px 15px; }
  .program-help-header h2 { font-size:20px; }
  .program-help-body { padding:14px 12px 18px; }
  .program-help-sections summary { padding:12px; font-size:13px; }
  .program-help-content { padding:2px 12px 13px; }
  .program-help-content dl { display:block; }
  .program-help-content dt { margin-top:12px; }
  .program-help-content dd { margin:2px 0 0; }
}
