/* Reference overlay and independent reader, using the documentation tokens. */
.doc-article{font-size:16px;line-height:26px}
.doc-article p{line-height:26px}
.doc-article .reference-link{font-size:14px;line-height:22px;color:var(--text-secondary)}
.footnote-ref{vertical-align:super;font-size:11px;line-height:0;white-space:nowrap}
.doc-article .footnote-ref a{display:inline-flex;align-items:center;justify-content:center;min-width:24px;min-height:24px;line-height:20px;text-decoration:none;font-weight:600;scroll-margin-top:155px}
.doc-article .footnote-ref a:hover{background:var(--bg-subtle);border-radius:var(--rounded-sm)}
.document-references{margin:0 0 28px;font-size:13px;line-height:22px}
.document-references a{color:var(--text-secondary);text-underline-offset:4px}
.reference-dialog{color:var(--text-primary);background:var(--bg-elevated);border:1px solid var(--border-line);border-radius:var(--rounded-md);box-shadow:var(--elev-md);width:min(680px,calc(100% - 48px));max-width:none;max-height:88dvh;margin:auto;padding:0;overflow:hidden}
.reference-dialog[open]{display:flex;flex-direction:column}
.reference-dialog::backdrop{background:var(--review-scrim)}
.reference-dialog__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:24px 24px 20px;border-bottom:1px solid var(--border-line);flex-shrink:0}
.reference-dialog__header>div{min-width:0}
.reference-dialog__header h2{margin:0;font-size:20px;line-height:28px;font-weight:600;overflow-wrap:anywhere;outline:none}
.reference-eyebrow,.doc-article .reference-eyebrow{font-size:12px;line-height:20px;color:var(--text-secondary);margin:0 0 6px}
#reference-close{flex-shrink:0;width:40px;height:40px;margin:-4px -8px 0 0}
.reference-dialog__body{padding:24px;overflow:auto;overscroll-behavior:contain;min-height:0}
.reference-copy{font-size:14px;line-height:22px;overflow-wrap:anywhere;word-break:normal}
.reference-copy p,.doc-article .reference-copy p{font-size:14px;line-height:22px;margin:0 0 14px}
.reference-copy p:last-child{margin-bottom:0}
.reference-copy .footnote-meta,.doc-article .reference-copy .footnote-meta{font-size:12px;line-height:20px;color:var(--text-secondary);padding-bottom:16px;border-bottom:1px solid var(--border-line)}
.reference-copy a{color:var(--text-primary);text-decoration:underline;text-underline-offset:3px}
.reference-dialog__footer{display:flex;gap:12px;flex-wrap:wrap;padding:16px 24px;border-top:1px solid var(--border-line);background:var(--bg-subtle);flex-shrink:0}
.reference-action{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 14px;border:1px solid var(--border-line);border-radius:var(--rounded-sm);background:var(--bg-elevated);color:var(--text-primary);font:inherit;font-size:13px;line-height:20px;text-decoration:none;cursor:pointer}
.reference-action--primary{font-weight:600}
.reference-action:hover{background:var(--bg-page);text-decoration:underline;text-underline-offset:3px}
.reference-action[hidden],[hidden]{display:none!important}
.footnote-ref a:focus-visible,.reference-dialog a:focus-visible,.reference-dialog button:focus-visible,.reference-toolbar a:focus-visible,.reference-toolbar button:focus-visible,.reference-record a:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}
.reference-toolbar{display:flex;gap:16px;flex-wrap:wrap;align-items:center;padding-bottom:20px;border-bottom:1px solid var(--border-line);font-size:13px;line-height:22px}
.reference-toolbar button{margin-left:auto}
.reference-toolbar>a{color:var(--text-secondary)}
#reference-status{font-size:13px;color:var(--text-secondary);margin:20px 0}
.reference-index-list{list-style:none;padding:0!important;margin:16px 0 32px;display:grid;gap:0}
.reference-index-list li{margin:0!important;border-bottom:1px solid var(--border-line)}
.reference-index-list a{display:block;padding:10px 0;font-size:14px;line-height:22px;color:var(--text-primary)}
.reference-record{padding:28px 0;border-bottom:1px solid var(--border-line);scroll-margin-top:155px;outline:none}
.doc-article .reference-record h2{font-size:20px;line-height:28px;margin:0 0 24px;border:0;padding:0;overflow-wrap:anywhere}
.reference-record-actions{margin-top:24px;display:flex;gap:12px;flex-wrap:wrap}
.reference-origins{margin:20px 0 0!important;background:transparent!important;border:0!important;padding:0!important;font-size:13px;line-height:22px}
.reference-origins summary{font-size:13px!important;color:var(--text-secondary)}
.reference-origins li{padding:4px 0}
@media(max-width:600px){
  .reference-dialog{width:100%;height:100dvh;max-height:100dvh;border:0;border-radius:0}
  .reference-dialog__header{padding:calc(20px + env(safe-area-inset-top)) 20px 16px}
  .reference-dialog__header h2{font-size:18px;line-height:26px}
  .reference-dialog__body{padding:20px;flex:1}
  .reference-dialog__footer{padding:16px 20px calc(16px + env(safe-area-inset-bottom));gap:10px;flex-direction:column}
  .reference-action{min-height:44px}
  #reference-close{width:44px;height:44px}
  .reference-toolbar{gap:12px}
  .reference-toolbar button{margin-left:0}
}
@media print{
  .reference-dialog,.reference-dialog::backdrop,.reference-toolbar,.reference-origins,.reference-record-actions{display:none!important}
  .document-references a{color:#333;font-size:11px}
  .reference-record{padding:16px 0;break-inside:auto}
  .reference-copy,.reference-copy .footnote-meta{color:#333!important}
  .reference-copy a[href^="https:"]::after{content:" (" attr(href) ")";font-size:11px;font-weight:400;overflow-wrap:anywhere}
  .reference-copy a{color:#333;text-decoration:none}
  .footnote-ref a{color:#333}
}
