/* ===== SAU Shortcodes-Ultimate replacement styles =====
 * Network-wide, enqueued by mu-plugins/sau-su-replacement-styles.php
 * Demo: https://www.saumag.edu/sandbox/su-replacement-styles-demo/
 * Scoped to .entry-content and .widget so plain content HTML is unaffected.
 */

/* Buttons — pill per SAU Elementor house style */
.entry-content a.sau-btn,
.widget a.sau-btn {
  display: inline-block;
  background: #003da5;
  color: #fff;
  padding: 10px 24px;
  border-radius: 30px;
  font-size: 16px;
  font-weight: 600;
  text-decoration: none;
  border: 2px solid #003da5;
  transition: background .2s, color .2s;
}
.entry-content a.sau-btn:hover, .widget a.sau-btn:hover { background: #00286d; border-color: #00286d; color: #fff; }
.entry-content a.sau-btn--gold, .widget a.sau-btn--gold { background: #ffd200; border-color: #ffd200; color: #002d79; }
.entry-content a.sau-btn--gold:hover, .widget a.sau-btn--gold:hover { background: #e6bd00; border-color: #e6bd00; color: #002d79; }
.entry-content a.sau-btn--outline, .widget a.sau-btn--outline { background: transparent; color: #003da5; }
.entry-content a.sau-btn--outline:hover, .widget a.sau-btn--outline:hover { background: #003da5; color: #fff; }
.entry-content a.sau-btn--small, .widget a.sau-btn--small { padding: 6px 16px; font-size: 14px; }
/* Content buttons center in their container by default */
.entry-content a.sau-btn { display: table; margin: 0 auto 15px; text-align: center; }
/* Widget buttons stack vertically, left-aligned (SU rendered one per line in sidebars) */
.widget a.sau-btn { display: table; margin: 0 0 10px; }

/* Accordion / spoiler — native details */
.entry-content details.sau-spoiler,
.widget details.sau-spoiler {
  border: 1px solid #d9d9d9;
  border-radius: 15px;
  margin: 0 0 10px;
  overflow: hidden;
  background: #fbfbfb;
}
.entry-content details.sau-spoiler > summary,
.widget details.sau-spoiler > summary {
  cursor: pointer;
  padding: 12px 18px;
  font-weight: 800;
  color: #003da5;
  font-size: 17px;
  list-style-position: inside;
}
.entry-content details.sau-spoiler[open] > summary,
.widget details.sau-spoiler[open] > summary { border-bottom: 1px solid #e4e4e4; background: #f4f4f4; }
.entry-content details.sau-spoiler > .sau-spoiler-body,
.widget details.sau-spoiler > .sau-spoiler-body { padding: 14px 18px; }

/* Table */
.sau-table-wrap { overflow-x: auto; margin: 0 0 20px; }
.entry-content table.sau-table, .widget table.sau-table { border-collapse: collapse; width: 100%; font-size: 15px; }
.entry-content table.sau-table th, .widget table.sau-table th {
  background: #003da5; color: #fff; padding: 10px 14px; text-align: left;
}
.entry-content table.sau-table td, .widget table.sau-table td { padding: 9px 14px; border-bottom: 1px solid #e4e4e4; }
.entry-content table.sau-table tbody tr:nth-child(even),
.widget table.sau-table tbody tr:nth-child(even) { background: #f4f4f4; }

/* Note / callout */
.entry-content .sau-note, .widget .sau-note {
  display: flow-root; /* contain floated children (e.g. floated video/image inside a note) */
  border-left: 5px solid #003da5;
  background: #eef3fb;
  border-radius: 0 15px 15px 0;
  padding: 14px 18px;
  margin: 0 0 20px;
}
.entry-content .sau-note--gold, .widget .sau-note--gold { border-left-color: #ffd200; background: #fff9e0; }
.entry-content .sau-note p:last-child, .widget .sau-note p:last-child { margin-bottom: 0; }

/* Columns */
.entry-content .sau-cols, .widget .sau-cols { display: grid; gap: 24px; margin: 0 0 20px; }
.entry-content .sau-cols-2, .widget .sau-cols-2 { grid-template-columns: 1fr 1fr; }
.entry-content .sau-cols-3, .widget .sau-cols-3 { grid-template-columns: 1fr 1fr 1fr; }
.entry-content .sau-cols-4, .widget .sau-cols-4 { grid-template-columns: 1fr 1fr 1fr 1fr; }
@media (max-width: 720px) {
  .entry-content .sau-cols-2, .entry-content .sau-cols-3, .entry-content .sau-cols-4,
  .widget .sau-cols-2, .widget .sau-cols-3, .widget .sau-cols-4 { grid-template-columns: 1fr; }
}

/* Icon list */
.entry-content ul.sau-list, .widget ul.sau-list { list-style: none; padding-left: 0; }
.entry-content ul.sau-list li, .widget ul.sau-list li { padding-left: 26px; position: relative; margin-bottom: 8px; }
.entry-content ul.sau-list li::before,
.widget ul.sau-list li::before { content: "\2714"; color: #003da5; position: absolute; left: 0; font-weight: 700; }

/* Divider — theme default hr is too faint */
.entry-content hr.sau-hr, .widget hr.sau-hr { border: 0; border-top: 2px solid #9b9b9b; margin: 24px 0; }

/* Spacer */
.entry-content .sau-spacer, .widget .sau-spacer { display: block; }

/* Responsive video embed */
.entry-content .sau-embed, .widget .sau-embed { position: relative; padding-bottom: 56.25%; height: 0; margin: 0 0 20px; border-radius: 15px; overflow: hidden; }
.entry-content .sau-embed iframe, .widget .sau-embed iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
