/* Utility classes replacing style="..." attributes, so style-src can drop
 * 'unsafe-hashes'. The uN block was produced once by a mechanical transform;
 * add new rules by hand below it.
 *
 * ADD A RULE HERE rather than reintroducing a style attribute — an attribute
 * cannot be covered by a plain CSP hash, so one would force 'unsafe-hashes'
 * back, and check-no-style-attrs.js fails the build on it.
 *
 * The class is repeated three times purely for SPECIFICITY: it has to outrank
 * ordinary authored rules the way an inline style did, while still LOSING to
 * an inline style set later by JS (el.style.x = ...). !important would win
 * that fight and break every runtime override, so it is deliberately absent.
 */
.u1.u1.u1{background:#f6f5f2;border-radius:4px;padding:28px 32px;margin-top:32px}
.u2.u2.u2{background:#fdf0f0;border:1px solid #e8b4b4;border-radius:4px;padding:12px;font-size:14px;line-height:1.6;color:#8b1a1a;margin-bottom:14px}
.u3.u3.u3{background:#fff8e7;border:1px solid #e8d58a;border-left:4px solid var(--gold);border-radius:4px;padding:20px;text-align:left;margin-bottom:24px;font-size:15px;line-height:1.7;color:var(--dark)}
.u4.u4.u4{background:#fff8e7;border:1px solid #e8d58a;border-left:4px solid var(--gold);border-radius:4px;padding:24px;text-align:left;margin-bottom:28px}
.u5.u5.u5{background:transparent;color:#fff;font-weight:500}
.u6.u6.u6{background:var(--dark);border-top:1px solid rgba(255,255,255,.06);padding:32px 24px;text-align:center}
.u7.u7.u7{border:1px solid #ddd;border-radius:6px;overflow:hidden}
.u8.u8.u8{border:1px solid #e5e7eb;padding:0.75rem}
.u9.u9.u9{border:1px solid #e5e7eb;padding:0.75rem;text-align:left}
.u10.u10.u10{border:1px solid #e5e7eb;padding:0.75rem;text-align:left;background:#f6f5f2;font-weight:700}
.u11.u11.u11{border:1px solid rgba(232,184,75,.2);border-radius:4px;padding:12px 14px;margin-top:14px;background:rgba(232,184,75,.04)}
.u12.u12.u12{color:#e8b84b}
.u13.u13.u13{color:#e8b84b;text-decoration:underline}
.u14.u14.u14{color:rgba(255,255,255,.5)}
.u15.u15.u15{color:rgba(255,255,255,.5);text-decoration:none;margin:0 8px}
.u16.u16.u16{color:rgba(255,255,255,.6);text-decoration:none;margin:0 8px}
.u17.u17.u17{color:rgba(255,255,255,.8)}
.u18.u18.u18{color:var(--accent);font-weight:600}
.u19.u19.u19{color:var(--gold);font-weight:700}
.u20.u20.u20{color:var(--gold-ink);font-weight:600}
.u21.u21.u21{color:var(--gold-on-dark);font-size:15px;text-decoration:none}
.u22.u22.u22{color:var(--gold2)}
.u23.u23.u23{color:var(--text-muted);font-size:15px;margin-bottom:24px;font-style:italic}
.u24.u24.u24{color:var(--text3-aa, #67788d)}
.u25.u25.u25{color:white;margin-bottom:14px}
.u26.u26.u26{fill:#555}
.u27.u27.u27{fill:#d4edda;stroke:#28a745;stroke-width:1.5}
.u28.u28.u28{fill:#e8f4fc;stroke:#5b9ec9;stroke-width:2}
.u29.u29.u29{fill:#f6f5f2;stroke:#c8a96e;stroke-width:2}
.u30.u30.u30{fill:#fff3cd;stroke:#ffc107;stroke-width:1.5}
.u31.u31.u31{font-family:Georgia,serif;font-size:28px;font-weight:700}
.u32.u32.u32{font-family:Georgia,serif;font-size:28px;font-weight:700;color:var(--dark);margin-bottom:16px}
.u33.u33.u33{font-size:.72rem;color:#6b6b6b;text-align:center;margin-top:6px}
.u34.u34.u34{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#e8b84b;margin-bottom:5px}
.u35.u35.u35{font-size:11px;color:rgba(255,255,255,.6);margin:0 0 10px;text-transform:uppercase;letter-spacing:.12em}
.u36.u36.u36{font-size:11px;fill:#155724}
.u37.u37.u37{font-size:11px;fill:#155724;font-weight:600}
.u38.u38.u38{font-size:11px;fill:#2a7a2a;font-weight:600}
.u39.u39.u39{font-size:11px;fill:#856404}
.u40.u40.u40{font-size:11px;fill:#856404;font-weight:600}
.u41.u41.u41{font-size:11px;fill:#b52a2a;font-weight:600}
.u42.u42.u42{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-ink);font-weight:600;margin-bottom:8px}
.u43.u43.u43{font-size:12.5px;color:rgba(255,255,255,.45);margin-top:10px}
.u44.u44.u44{font-size:12px;color:rgba(255,255,255,.5);line-height:1.6;margin:0}
.u45.u45.u45{font-size:12px;color:rgba(255,255,255,.55);margin-top:14px}
.u46.u46.u46{font-size:12px;color:rgba(255,255,255,0.72);margin-top:16px}
.u47.u47.u47{font-size:12px;fill:#333}
.u48.u48.u48{font-size:12px;fill:#444}
.u49.u49.u49{font-size:12px;font-weight:700;fill:#333}
.u50.u50.u50{font-size:13.5px;color:rgba(255,255,255,.6);margin-bottom:14px}
.u51.u51.u51{font-size:13px}
.u52.u52.u52{font-size:13px;color:#4f4f57;line-height:1.6;font-style:italic}
.u53.u53.u53{font-size:13px;color:rgba(255,255,255,.6);line-height:1.6;margin:12px 0 0}
.u54.u54.u54{font-size:13px;color:var(--text-muted);margin-bottom:14px;font-style:italic}
.u55.u55.u55{font-size:13px;font-weight:700;fill:#333}
.u56.u56.u56{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--gold);margin-bottom:10px}
.u57.u57.u57{font-size:13px;line-height:1.9;margin:0}
.u58.u58.u58{font-size:14px;color:rgba(255,255,255,0.75);margin-bottom:8px}
.u59.u59.u59{font-size:14px;color:var(--text-muted);line-height:1.6;margin-bottom:14px}
.u60.u60.u60{font-size:15px;color:var(--dark);line-height:1.7}
.u61.u61.u61{font-size:15px;color:var(--dark);line-height:1.7;margin-bottom:12px}
.u62.u62.u62{font-size:15px;color:var(--text-muted);line-height:1.7;margin-bottom:26px}
.u63.u63.u63{font-size:15px;color:var(--text-muted);line-height:1.8;margin-bottom:20px}
.u64.u64.u64{font-size:15px;color:var(--text-muted);line-height:1.9;margin:0 0 20px 20px}
.u65.u65.u65{font-size:15px;margin-bottom:6px;color:var(--text2)}
.u66.u66.u66{font-size:15px;margin-bottom:8px;color:var(--text2)}
.u67.u67.u67{font-size:22px;flex-shrink:0;color:var(--gold)}
.u68.u68.u68{font-size:24px;font-weight:700;color:var(--dark);margin-bottom:16px;line-height:1.35}
.u69.u69.u69{font-size:24px;font-weight:700;margin-bottom:10px}
.u70.u70.u70{font-size:26px;font-weight:700;color:var(--dark);margin-bottom:16px;line-height:1.3}
.u71.u71.u71{font-size:44px;margin-bottom:18px}
.u72.u72.u72{font-size:48px;margin-bottom:24px}
.u73.u73.u73{font-weight:700;font-size:16px;margin-bottom:8px}
.u74.u74.u74{margin-bottom:10px}
.u75.u75.u75{margin-bottom:12px}
.u76.u76.u76{margin-bottom:14px}
.u77.u77.u77{margin-bottom:18px}
.u78.u78.u78{margin-bottom:6px}
.u79.u79.u79{margin-bottom:7px}
.u80.u80.u80{margin-bottom:8px}
.u81.u81.u81{margin-left:8px}
.u82.u82.u82{margin-right:10px;background:none;border:1.5px solid var(--gold);color:var(--gold2)}
.u83.u83.u83{margin-top:0}
.u84.u84.u84{margin-top:10px}
.u85.u85.u85{margin-top:12px}
.u86.u86.u86{margin-top:14px;font-size:12px;color:#4f4f57}
.u87.u87.u87{margin-top:16px;font-size:12px;color:#4f4f57}
.u88.u88.u88{margin-top:22px}
.u89.u89.u89{margin-top:36px}
.u90.u90.u90{margin-top:3px}
.u91.u91.u91{margin-top:8px}
.u92.u92.u92{margin:0}
.u93.u93.u93{margin:0 0 0 18px}
.u94.u94.u94{margin:0 0 16px 18px;color:rgba(255,255,255,.75);font-size:14.5px;line-height:1.75}
.u95.u95.u95{margin:0 0 8px}
.u96.u96.u96{margin:12px 0}
.u97.u97.u97{padding-left:32px}
.u98.u98.u98{padding:20px 20px 4px}
.u99.u99.u99{stroke:#555;stroke-width:2}
.u100.u100.u100{text-align:center}
.u101.u101.u101{text-align:center;margin-bottom:32px}
.u102.u102.u102{text-align:center;margin-bottom:56px}
.u103.u103.u103{text-align:center;margin-top:8px}
.u104.u104.u104{text-decoration:none}

/* --- used by .github/scripts generators (hand-maintained) --- */
.g1.g1.g1{border:1px solid #e5e7eb;padding:0.75rem;text-align:left;background:#f6f5f2;font-weight:700}
.g2.g2.g2{border:1px solid #e5e7eb;padding:0.75rem;text-align:left}
.g3.g3.g3{background:transparent;color:#fff;font-weight:500}
.g4.g4.g4{margin:12px 0}
.g5.g5.g5{margin-bottom:18px}
.g6.g6.g6{margin-top:22px}
.g7.g7.g7{color:var(--text3-aa, #67788d)}

/* --- hand-added: markup built inside a JS template string --- */
.uabs-prefix.uabs-prefix.uabs-prefix{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--text-muted);font-size:17px}
.upl-32.upl-32.upl-32{padding-left:32px}
