/* Public "Rounds" (programs) page. Loaded after about-page.css and reuses
   its banner, wrap, eyebrow and titles, in the same look as Contact Us. */
.abt-page .pg {
   --pg-brand: #1d5fd6;
   --pg-brand-dark: #0d3a8c;
   --pg-brand-soft: #e4effd;
   --pg-ink: #0d2a63;
   --pg-text: #3f4f70;
   --pg-muted: #4a5b7d;
   --pg-line: #dbe6f5;
   --pg-tint: #f6f9fe;
   --pg-gradient: linear-gradient(90deg, #1d5fd6 0%, #2e8ff0 60%, #35b0f6 100%);
   --pg-shadow: 0 12px 34px rgba(16, 58, 140, 0.08);
   color: var(--pg-text);
   padding: 40px 0 72px;
}

.pg .is-hidden { display: none; }

.pg-layout {
   align-items: start;
   display: grid;
   gap: 28px;
   grid-template-columns: 300px minmax(0, 1fr);
}

/* Toolbar */
.pg-toolbar {
   align-items: center;
   display: flex;
   flex-wrap: wrap;
   gap: 14px;
   justify-content: space-between;
   margin-bottom: 24px;
}

.pg-toolbar .abt-title {
   margin-bottom: 12px;
   text-transform: none;
}

.pg-toolbar p {
   font-size: 14px;
   margin: 0;
}

.pg-toggle {
   background: #ffffff;
   border-radius: 10px;
   box-shadow: var(--pg-shadow);
   display: inline-flex;
   padding: 4px;
}

.pg-toggle-btn {
   background: transparent;
   border: 0;
   border-radius: 7px;
   color: var(--pg-text);
   cursor: pointer;
   font-size: 12.5px;
   font-weight: 600;
   margin: 0;
   padding: 6px 10px;
}

.pg-toggle-btn i { font-size: 11.5px; margin-right: 4px; }

.pg-toggle-btn:hover { color: var(--pg-brand); }

.pg-toggle-btn:focus-visible {
   box-shadow: 0 0 0 3px rgba(29, 95, 214, 0.3);
   outline: none;
}

.pg-toggle-btn.active {
   background: var(--pg-gradient);
   color: #ffffff;
}

/* Cards */
.pg-grid {
   display: grid;
   gap: 24px;
   grid-template-columns: repeat(2, minmax(0, 1fr));
}

.pg-card {
   background: #ffffff;
   border-radius: 16px;
   box-shadow: var(--pg-shadow);
   display: flex;
   flex-direction: column;
   padding: 24px;
   transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.pg-card:hover {
   box-shadow: 0 24px 60px rgba(16, 58, 140, 0.16);
   transform: translateY(-3px);
}

.pg-card-top {
   align-items: center;
   display: flex;
   gap: 10px;
   justify-content: space-between;
   margin-bottom: 12px;
}

.pg-code {
   background: var(--pg-brand-soft);
   border-radius: 6px;
   color: var(--pg-brand);
   display: inline-block;
   font-size: 13px;
   font-weight: 700;
   padding: 4px 10px;
   white-space: nowrap;
}

.pg-status {
   border-radius: 999px;
   display: inline-block;
   font-size: 12px;
   font-weight: 700;
   padding: 3px 11px;
   white-space: nowrap;
}

.pg-status.open { background: #e3f6ea; color: #17693a; }
.pg-status.closed { background: #fde8e8; color: #a32020; }

.pg-card-title {
   color: var(--pg-ink);
   font-size: 20px;
   font-weight: 700;
   line-height: 1.3;
   margin: 0 0 14px;
   text-transform: none;
}

.pg-meta { margin: 0 0 16px; }

.pg-meta > div {
   display: grid;
   font-size: 14.5px;
   gap: 10px;
   grid-template-columns: 78px minmax(0, 1fr);
   padding: 5px 0;
}

.pg-meta dt {
   color: var(--pg-muted);
   font-weight: 600;
}

.pg-meta dd {
   color: var(--pg-ink);
   margin: 0;
}

.pg-dates {
   background: var(--pg-tint);
   border: 1px solid var(--pg-line);
   border-radius: 12px;
   display: grid;
   gap: 12px;
   grid-template-columns: repeat(2, minmax(0, 1fr));
   margin-bottom: 18px;
   padding: 12px 14px;
}

.pg-dates span,
.pg-fee span {
   color: var(--pg-muted);
   display: block;
   font-size: 12px;
   font-weight: 600;
   letter-spacing: 0.03em;
   text-transform: uppercase;
}

.pg-dates b {
   color: var(--pg-ink);
   font-size: 15px;
   font-weight: 700;
}

.pg-card-foot {
   align-items: center;
   border-top: 1px solid var(--pg-line);
   display: flex;
   flex-wrap: wrap;
   gap: 12px;
   justify-content: space-between;
   margin-top: auto;
   padding-top: 16px;
}

.pg-fee b {
   color: var(--pg-brand);
   font-size: 20px;
   font-weight: 700;
   line-height: 1.2;
}

.pg-card.is-closed .pg-fee b { color: var(--pg-ink); }

/* Buttons */
.pg-btn {
   align-items: center;
   background: var(--pg-gradient);
   border: 0;
   border-radius: 10px;
   box-shadow: 0 10px 22px rgba(29, 95, 214, 0.28);
   color: #ffffff;
   cursor: pointer;
   display: inline-flex;
   font-size: 14px;
   font-weight: 600;
   gap: 8px;
   justify-content: center;
   line-height: 1.2;
   padding: 12px 18px;
   text-decoration: none;
   transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.pg-btn i { font-size: 13px; }

.pg-btn:hover,
.pg-btn:focus-visible {
   box-shadow: 0 14px 28px rgba(29, 95, 214, 0.36);
   color: #ffffff;
   outline: none;
   transform: translateY(-1px);
}

.pg-btn:focus-visible { box-shadow: 0 0 0 3px rgba(29, 95, 214, 0.35); }

.pg-btn-outline {
   background: #ffffff;
   box-shadow: inset 0 0 0 1px var(--pg-line);
   color: var(--pg-brand);
}

.pg-btn-outline:hover,
.pg-btn-outline:focus-visible {
   background: var(--pg-brand-soft);
   box-shadow: inset 0 0 0 1px var(--pg-brand);
   color: var(--pg-brand-dark);
}

.pg-card-actions {
   display: flex;
   flex-wrap: wrap;
   gap: 8px;
}

.pg-card-title a,
.pg-table tbody td b a { color: inherit; }

.pg-card-title a:hover,
.pg-table tbody td b a:hover { color: var(--pg-brand); }

.pg-table .pg-action { white-space: nowrap; }

.pg-btn-small {
   font-size: 13px;
   padding: 7px 12px;
   white-space: nowrap;
}

.pg-btn-block {
   font-size: 15px;
   height: 46px;
   width: 100%;
}

/* Table view */
.pg-table-wrap {
   background: #ffffff;
   border-radius: 16px;
   box-shadow: var(--pg-shadow);
   overflow: hidden;
}

.pg-table {
   border-collapse: collapse;
   min-width: 720px;
   width: 100%;
}

.pg-table thead th {
   background: var(--pg-brand-soft);
   border: 0;
   color: var(--pg-brand-dark);
   font-size: 13px;
   font-weight: 700;
   padding: 14px 12px;
   text-align: left;
   white-space: nowrap;
}

.pg-table tbody td {
   border: 0;
   border-top: 1px solid var(--pg-line);
   color: var(--pg-ink);
   font-size: 14px;
   line-height: 1.45;
   padding: 14px 12px;
   vertical-align: top;
}

.pg-table thead th:first-child,
.pg-table tbody td:first-child { padding-left: 20px; }

.pg-table thead th:last-child,
.pg-table tbody td:last-child { padding-right: 20px; }

.pg-table tbody tr:hover td { background: var(--pg-tint); }

.pg-table tbody td b {
   display: block;
   font-weight: 700;
   margin-bottom: 6px;
}

.pg-table tbody td small {
   color: var(--pg-muted);
   display: block;
   font-size: 13px;
   margin-top: 2px;
}

.pg-table tbody td.pg-muted { color: var(--pg-muted); }

.pg-tags {
   display: flex;
   gap: 6px;
}

.pg-table tbody td:nth-child(2) { min-width: 170px; }

.pg-date span {
   color: var(--pg-muted);
   display: inline-block;
   font-size: 12px;
   font-weight: 600;
   width: 34px;
}

.pg-table .pg-num {
   font-weight: 700;
   text-align: right;
   white-space: nowrap;
}

.pg-table .pg-action { text-align: right; }

.pg-nowrap { white-space: nowrap; }

/* Empty state */
.pg-empty {
   background: #ffffff;
   border: 1px dashed #b9cdec;
   border-radius: 16px;
   padding: 48px 24px;
   text-align: center;
}

.pg-empty i {
   color: var(--pg-brand);
   font-size: 30px;
   margin-bottom: 12px;
}

.pg-empty h3 {
   color: var(--pg-ink);
   font-size: 20px;
   font-weight: 700;
   margin: 0 0 6px;
   text-transform: none;
}

.pg-empty p { margin: 0; }

/* Pagination */
.pg-pagination { margin-top: 28px; }

.pg-pagination .pagination {
   flex-wrap: wrap;
   gap: 6px;
   margin: 0;
}

.pg-pagination .page-link {
   border: 1px solid var(--pg-line);
   border-radius: 8px !important;
   color: var(--pg-ink);
   font-size: 14px;
   font-weight: 600;
   padding: 8px 13px;
}

.pg-pagination .page-link:hover {
   background: var(--pg-brand-soft);
   color: var(--pg-brand);
}

.pg-pagination .page-item.active .page-link {
   background: var(--pg-gradient);
   border-color: var(--pg-brand);
   color: #ffffff;
}

.pg-pagination .page-item.disabled .page-link { color: #8a98b5; }

/* Filter panel */
.pg-filter {
   background: #ffffff;
   border-radius: 22px;
   box-shadow: 0 24px 60px rgba(16, 58, 140, 0.12);
   padding: 28px;
   position: sticky;
   top: 110px;
}

.pg-filter .abt-title {
   font-size: 24px;
   text-transform: none;
}

.pg-field { margin-bottom: 16px; }

.pg-field label {
   color: var(--pg-ink);
   display: block;
   font-size: 13.5px;
   font-weight: 600;
   margin-bottom: 6px;
}

.pg-field input,
.pg-field select {
   background-color: var(--pg-tint);
   border: 1px solid var(--pg-line);
   border-radius: 10px;
   color: #10244d;
   font-size: 15px;
   height: 48px;
   padding: 0 14px;
   transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
   width: 100%;
}

.pg-field input::placeholder { color: #8a98b5; }

.pg-field input:focus,
.pg-field select:focus {
   background-color: #ffffff;
   border-color: var(--pg-brand);
   box-shadow: 0 0 0 3px rgba(29, 95, 214, 0.15);
   outline: none;
}

.pg-reset {
   color: var(--pg-brand);
   display: block;
   font-size: 13.5px;
   font-weight: 600;
   margin-top: 14px;
   text-align: center;
}

.pg-reset:hover { color: var(--pg-brand-dark); text-decoration: underline; }

/* Responsive */
@media (max-width: 1199px) {
   .pg-layout { grid-template-columns: 260px minmax(0, 1fr); }
}

@media (max-width: 991px) {
   .abt-page .pg { padding: 32px 0 56px; }
   .pg-layout { grid-template-columns: 1fr; }
   .pg-side { order: -1; }
   .pg-filter { position: static; }
}

@media (max-width: 767px) {
   .pg-grid { grid-template-columns: 1fr; }
   .pg-card-actions { width: 100%; }
   .pg-card-actions .pg-btn { flex: 1 1 auto; }
}

@media (max-width: 575px) {
   .pg-filter {
      border-radius: 18px;
      padding: 24px 18px;
   }
}

/* Keep each toggle label on one line */
.pg-toggle-btn {
   align-items: center;
   display: inline-flex;
   line-height: 1.2;
   white-space: nowrap;
   width: auto;
}

/* Filter panel on the left of the rounds */
.pg-side { order: -1; }

/* Shorter round cards: tighter spacing and slightly smaller text */
.pg-grid { gap: 20px; }

.pg-card { padding: 16px 18px; }

.pg-card-top { margin-bottom: 8px; }

.pg-card-title {
   font-size: 15px;
   margin-bottom: 8px;
}

.pg-meta { margin-bottom: 10px; }

.pg-meta > div {
   font-size: 13.5px;
   padding: 2px 0;
}

.pg-dates {
   margin-bottom: 12px;
   padding: 8px 12px;
}

.pg-dates span,
.pg-fee span { font-size: 11px; }

.pg-dates b { font-size: 12.5px; }

.pg-card-foot { padding-top: 12px; }

.pg-fee b { font-size: 18px; }

.pg-card-actions .pg-btn {
   font-size: 13px;
   padding: 9px 13px;
}
