
    ::-webkit-scrollbar { width: 6px; height: 6px; }
    ::-webkit-scrollbar-track { background: rgba(0, 0, 0, 0.04); }
    ::-webkit-scrollbar-thumb { background: rgba(100, 116, 139, 0.35); border-radius: 9999px; }
    .cursive-tagline { font-family: 'Brush Script MT', 'Lucida Handwriting', cursive; }
    #v2526-maintenance-banner { overflow:hidden; white-space:nowrap; }
    #v2526-maintenance-banner .v2527-maint-track { display:inline-block; width:max-content; padding-left:100vw; animation:v2529-maint-rtl 16s linear infinite; will-change:transform; }
    #v2526-maintenance-banner:hover .v2527-maint-track { animation-play-state:paused; }
    #v2526-maintenance-banner .v2529-maint-flash { display:block; text-align:center; white-space:normal; padding:0 12px; animation:v2529-maint-flash 1.1s ease-in-out infinite; }
    @keyframes v2529-maint-rtl { from{transform:translateX(0)} to{transform:translateX(-100%)} }
    @keyframes v2529-maint-flash { 0%,100%{opacity:1} 50%{opacity:.25} }
  

    
    .qb-editor-floating {
      position: fixed !important;
      top: 88px !important;
      right: 24px !important;
      width: min(520px, calc(100vw - 48px)) !important;
      max-height: calc(100vh - 112px) !important;
      overflow-y: auto !important;
      z-index: 60 !important;
      box-shadow: 0 24px 60px rgba(15, 23, 42, .28) !important;
    }
    @media (max-width: 768px) {
      .qb-editor-floating {
        top: 72px !important;
        left: 12px !important;
        right: 12px !important;
        width: auto !important;
        max-height: calc(100vh - 88px) !important;
      }
    }
  
/* Minimal Source v2: accessible table headings, without global print overrides */
html.dark table thead th,
html.dark table thead td {
  background-color:#1e293b !important;
  color:#f1f5f9 !important;
  border-color:#334155 !important;
}
html.dark table thead th *,
html.dark table thead td * { color:inherit; }
html.dark table tbody td { border-color:#334155; }
/* Keep modal content from spanning an oversized dialog where possible. */
@media (min-width:768px) {
  [role="dialog"]:has(form[onsubmit*="Broadcast"]) { max-width:760px !important; margin-inline:auto; }
}

@page { size: A4; margin: 12mm; }
@media print {
  body { font-family: Arial,sans-serif; color:#111; font-size:11px; }
  h1 { font-size:22px; margin:0; }
  h2 { font-size:15px; margin:22px 0 7px; }
  .sub,.meta { color:#555; margin:5px 0 14px; }
  .kpis { display:grid; grid-template-columns:repeat(3,1fr); gap:7px; }
  .kpi { border:1px solid #bbb; padding:8px; border-radius:6px; }
  .kpi small { display:block; color:#666; text-transform:uppercase; }
  .kpi b { font-size:16px; }
  table { width:100%; border-collapse:collapse; margin-top:6px; page-break-inside:auto; }
  tr { page-break-inside:avoid; }
  th,td { border:1px solid #bbb; padding:6px; text-align:left; vertical-align:top; font-size:12px; }
  th { background:#eee !important; color:#111 !important; }
  button { display:none !important; }
}

/* Minimal Source v2: targeted compact layouts for broadcast and profile dialogs.
   v23Modal defaults to max-w-6xl; nested max-w-* does not constrain outer card. */
#v23-modal-card:has(#v2513-mode) {
  width: min(100%, 760px) !important;
  max-width: 760px !important;
  margin-inline: auto !important;
}
#v23-modal-card:has(#v25-phone) {
  width: min(100%, 1020px) !important;
  max-width: 1020px !important;
  margin-inline: auto !important;
}
/* Do not stretch the two profile panels to the taller panel's height. */
#v23-modal-card:has(#v25-phone) .grid > div {
  align-self: start;
}
@media (max-width: 640px) {
  #v23-modal-card:has(#v2513-mode),
  #v23-modal-card:has(#v25-phone) { width: 100% !important; max-width: 100% !important; }
}
