
/* v7.2 Pacific Tip Satoshi typography system */
:root {
  --ptp-font-sans: "Satoshi", "Inter Display", "Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.ptp-platform,
.ptp-platform *,
.ptp-database,
.ptp-database *,
.ptp-profile,
.ptp-profile *,
.ptp-rankings-page,
.ptp-rankings-page *,
.ptp-form,
.ptp-form *,
.ptp-guide-page,
.ptp-guide-page *,
.ptp-dashboard,
.ptp-dashboard *,
.ptp-resources-hub,
.ptp-resources-hub *,
.ptp-event-detail,
.ptp-event-detail *,
.ptp-team-profile,
.ptp-team-profile *,
.ptp-account-page,
.ptp-account-page *,
.ptp-report-list,
.ptp-report-list * {
  font-family: var(--ptp-font-sans) !important;
}

.ptp-kicker,
.ptp-platform-button,
.ptp-dashboard-card h3,
.ptp-player-card__name,
.ptp-ranking-tile__main h3,
.ptp-profile-v44__title h1,
.ptp-profile-v44__info-item strong,
.ptp-form legend,
.ptp-form label,
.ptp-rankings-tabs button,
.ptp-rankings-controls label,
.ptp-rankings-controls select {
  font-family: var(--ptp-font-sans) !important;
}

.ptp-kicker,
.ptp-ranking-tile__main dt,
.ptp-profile-v44__info-item span,
.ptp-dashboard-card p,
.ptp-platform-button {
  letter-spacing: .055em;
}


/* Pacific Tip Prospects platform styling. */
.ptp-database,
.ptp-articles,
.ptp-events,
.ptp-dashboard,
.ptp-profile,
.ptp-login-layout,
.ptp-form,
.ptp-lock-box,
.ptp-success-box {
  --ptp-teal: #355d60;
  --ptp-teal-dark: #25494c;
  --ptp-sage: #aec3b2;
  --ptp-sage-soft: #eaf1ec;
  --ptp-gold: #dbb461;
  --ptp-cream: #faf2e9;
  --ptp-ink: #172629;
  --ptp-muted: #657275;
  --ptp-white: #ffffff;
  --ptp-border: rgba(23, 38, 41, .13);
  --ptp-shadow: 0 18px 42px rgba(23, 38, 41, .10);
}
.ptp-kicker { color: var(--ptp-teal); font-size: .78rem; font-weight: 900; letter-spacing: .11em; text-transform: uppercase; margin: 0 0 .45rem; }
.ptp-platform-button,
#ptp-login-submit {
  display: inline-flex; align-items: center; justify-content: center; gap: .35rem;
  border: 0; border-radius: 999px; background: var(--ptp-teal); color: #fff !important;
  font-weight: 900; padding: .78rem 1rem; cursor: pointer; text-decoration: none;
  box-shadow: 0 12px 24px rgba(53, 93, 96, .18);
}
.ptp-platform-button--light { background: var(--ptp-gold); color: var(--ptp-teal-dark) !important; }
.ptp-text-link { color: var(--ptp-teal); font-weight: 900; text-decoration: none; }
.ptp-chip,
.ptp-badge {
  display: inline-flex; align-items: center; border-radius: 999px; padding: .36rem .6rem;
  background: var(--ptp-sage-soft); border: 1px solid rgba(53, 93, 96, .12);
  color: var(--ptp-teal-dark); font-size: .76rem; font-weight: 850; line-height: 1;
}
.ptp-chip--gold,
.ptp-badge--gold { background: rgba(219, 180, 97, .25); border-color: rgba(219, 180, 97, .45); }
.ptp-badge--locked { background: repeating-linear-gradient(45deg,#fffaf4,#fffaf4 8px,#f5e8d6 8px,#f5e8d6 16px); border-color: rgba(219,180,97,.5); }
.ptp-badge-row { display: flex; flex-wrap: wrap; gap: .45rem; align-items: center; }
.ptp-lock-box,
.ptp-success-box {
  background: #fff; border: 1px solid var(--ptp-border); border-radius: 24px; padding: 1.5rem;
  box-shadow: var(--ptp-shadow); margin: 1.25rem 0;
}
.ptp-login-actions { display: flex; flex-wrap: wrap; gap: .7rem; align-items: center; margin-top: 1rem; }

/* Database */
.ptp-database { width: min(1180px, calc(100% - 40px)); margin: 0 auto; }
.ptp-database__header {
  display: flex; justify-content: space-between; gap: 1rem; align-items: flex-end;
  background: #fff; border: 1px solid var(--ptp-border); border-radius: 24px;
  padding: 1.35rem; box-shadow: var(--ptp-shadow); margin: 0 0 1rem;
}
.ptp-database__header h2 { margin: 0 0 .35rem; color: var(--ptp-teal-dark); line-height: 1.1; }
.ptp-database__header p { margin: 0; color: var(--ptp-muted); }
.ptp-database__tools {
  display: grid; grid-template-columns: repeat(4, minmax(155px, 1fr)); gap: .75rem;
  background: rgba(255,255,255,.78); border: 1px solid var(--ptp-border); border-radius: 20px;
  padding: .95rem; margin-bottom: 1.15rem;
}
.ptp-database__tools label { display: grid; gap: .35rem; color: var(--ptp-muted); font-weight: 850; font-size: .78rem; }
.ptp-database__tools input,
.ptp-database__tools select {
  min-height: 42px; border: 1px solid rgba(23,38,41,.18); border-radius: 12px; padding: .58rem .68rem;
  background: #fff; color: var(--ptp-ink); font: inherit; font-weight: 650;
}
.ptp-database__tools small { font-size: .68rem; color: var(--ptp-muted); }
.ptp-database__grid { display: grid; grid-template-columns: repeat(2, minmax(320px, 1fr)); gap: 1.25rem; align-items: start; }
.ptp-no-results { background: #fff; border: 1px solid var(--ptp-border); border-radius: 18px; padding: 1rem; color: var(--ptp-muted); }

/* Mockup B applied to live player cards */
.ptp-player-card.ptp-player-card--dashboard {
  background: var(--ptp-white); border: 1px solid var(--ptp-border); border-left: 5px solid var(--ptp-gold);
  border-radius: 22px; overflow: hidden; box-shadow: 0 14px 32px rgba(37, 72, 75, .11);
}
.ptp-player-card__header {
  display: flex; justify-content: space-between; align-items: flex-start; gap: .9rem;
  padding: .95rem 1rem .8rem; background: var(--ptp-teal); color: var(--ptp-cream);
}
.ptp-player-card__identity { min-width: 0; }
.ptp-player-card__identity h3 { margin: 0; color: inherit; font-size: 1.28rem; line-height: 1.12; }
.ptp-player-card__identity h3 a { color: inherit; text-decoration: none; }
.ptp-player-card__identity p { margin: .32rem 0 0; color: rgba(250,242,233,.86); font-size: .9rem; line-height: 1.28; }
.ptp-player-card__button {
  display: inline-flex; align-items: center; justify-content: center; white-space: nowrap;
  background: var(--ptp-gold); color: var(--ptp-teal-dark) !important; border-radius: 999px;
  padding: .63rem .86rem; font-size: .82rem; font-weight: 950; text-decoration: none;
}
.ptp-player-card__main { display: grid; grid-template-columns: 165px minmax(0, 1fr); border-top: 1px solid var(--ptp-border); }
.ptp-player-card__photo {
  position: relative; min-height: 196px; overflow: hidden; display: flex; align-items: center; justify-content: center;
  background: linear-gradient(135deg, rgba(53,93,96,.88), rgba(219,180,97,.55)); color: rgba(255,255,255,.86); font-weight: 950;
}
.ptp-player-card__photo img { width: 100%; height: 100%; object-fit: cover; display: block; position: absolute; inset: 0; }
.ptp-player-card__photo::after { content: ""; position: absolute; inset: auto 0 0; height: 38%; background: linear-gradient(transparent, rgba(0,0,0,.36)); pointer-events: none; }
.ptp-player-card__placeholder { position: relative; z-index: 1; font-size: 1.4rem; letter-spacing: .08em; }
.ptp-player-card__sticker {
  position: absolute; z-index: 2; top: .65rem; left: .65rem; border-radius: 999px;
  padding: .38rem .62rem; font-size: .68rem; font-weight: 950; letter-spacing: .07em; line-height: 1;
  box-shadow: 0 8px 18px rgba(0,0,0,.18);
}
.ptp-player-card__sticker--hs { background: var(--ptp-gold); color: var(--ptp-teal-dark); }
.ptp-player-card__sticker--juco { background: var(--ptp-teal-dark); color: var(--ptp-cream); }
.ptp-player-card__facts { margin: 0; padding: .85rem 1rem; background: #fbf7ef; }
.ptp-player-card__facts div { display: flex; justify-content: space-between; gap: .85rem; padding: .5rem 0; border-bottom: 1px solid rgba(53, 93, 96, .13); }
.ptp-player-card__facts div:last-child { border-bottom: 0; }
.ptp-player-card__facts dt { color: var(--ptp-muted); font-size: .76rem; font-weight: 850; }
.ptp-player-card__facts dd { margin: 0; color: var(--ptp-teal-dark); font-size: .83rem; font-weight: 900; text-align: right; overflow-wrap: anywhere; }
.ptp-player-card__footer { border-top: 1px solid var(--ptp-border); padding: .9rem 1rem 1rem; background: #fff; }
.ptp-player-card__projection span { display: block; color: var(--ptp-muted); font-size: .68rem; font-weight: 950; text-transform: uppercase; letter-spacing: .08em; margin-bottom: .35rem; }
.ptp-player-card__projection strong { display: block; color: var(--ptp-teal-dark); font-weight: 950; line-height: 1.25; }
.ptp-player-card__locked {
  display: inline-block !important; width: auto; border-radius: 14px; padding: .55rem .75rem;
  background: repeating-linear-gradient(45deg,#fffaf4,#fffaf4 8px,#f5e8d6 8px,#f5e8d6 16px); border: 1px solid rgba(219,180,97,.55);
}
.ptp-player-card__badges { display: flex; flex-wrap: wrap; gap: .45rem; margin-top: .8rem; }
.ptp-player-card__badge {
  display: inline-flex; align-items: center; border-radius: 999px; padding: .38rem .58rem;
  background: var(--ptp-sage-soft); border: 1px solid rgba(53,93,96,.12); color: var(--ptp-teal-dark);
  font-size: .76rem; font-weight: 850; line-height: 1; white-space: nowrap;
}
.ptp-player-card--juco { border-left-color: var(--ptp-teal-dark); background: linear-gradient(180deg, #fff, #fffaf2); }
.ptp-player-card--juco .ptp-player-card__header { background: #fff; color: var(--ptp-teal-dark); border-bottom: 1px solid var(--ptp-border); }
.ptp-player-card--juco .ptp-player-card__identity p { color: var(--ptp-muted); }
.ptp-player-card--juco .ptp-player-card__button { background: var(--ptp-teal-dark); color: var(--ptp-cream) !important; }
.ptp-player-card--juco .ptp-player-card__facts { background: #fffaf4; }

/* Profile/support sections */
.ptp-profile { width: min(1060px, calc(100% - 40px)); margin: 0 auto; }
.ptp-profile__top { display: grid; grid-template-columns: minmax(220px, 330px) minmax(0, 1fr); gap: 1.25rem; align-items: stretch; }
.ptp-profile__photo,
.ptp-profile__bio,
.ptp-profile-description,
.ptp-profile-badges-panel,
.ptp-profile-section,
.ptp-profile-related,
.ptp-login-card,
.ptp-login-side,
.ptp-form {
  background: #fff; border: 1px solid var(--ptp-border); border-radius: 24px; padding: 1.25rem; box-shadow: var(--ptp-shadow);
}
.ptp-profile__photo { padding: 0; overflow: hidden; min-height: 320px; display: flex; align-items: center; justify-content: center; }
.ptp-profile__photo img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ptp-profile__placeholder { font-size: 2rem; color: var(--ptp-teal); font-weight: 950; }
.ptp-profile__bio h2 { margin: 0 0 .75rem; color: var(--ptp-teal-dark); }
.ptp-stat-grid { display: grid; grid-template-columns: repeat(2, minmax(160px, 1fr)); gap: .7rem; margin: 1rem 0 0; }
.ptp-stat-grid div { background: #fbf7ef; border: 1px solid var(--ptp-border); border-radius: 14px; padding: .75rem; }
.ptp-stat-grid dt { color: var(--ptp-muted); font-size: .73rem; font-weight: 900; text-transform: uppercase; }
.ptp-stat-grid dd { margin: .2rem 0 0; font-weight: 850; color: var(--ptp-teal-dark); }
.ptp-profile-description,
.ptp-profile-badges-panel,
.ptp-profile__sections,
.ptp-profile-related { margin-top: 1.25rem; }
.ptp-profile-description h3,
.ptp-profile-section h3,
.ptp-profile-related h3 { color: var(--ptp-teal-dark); margin-top: 0; }
.ptp-profile__sections--full { display: grid; grid-template-columns: repeat(2, minmax(260px, 1fr)); gap: 1rem; }
.ptp-profile-section--wide { grid-column: 1 / -1; }
.ptp-contact-grid { display: grid; grid-template-columns: repeat(2, minmax(220px, 1fr)); gap: .9rem; }
.ptp-contact-card { background: #fbf7ef; border: 1px solid var(--ptp-border); border-radius: 16px; padding: .95rem; }
.ptp-contact-card h4 { margin: 0 0 .6rem; color: var(--ptp-teal-dark); }
.ptp-contact-card dl { margin: 0; }
.ptp-contact-card div { display: flex; justify-content: space-between; gap: .75rem; padding: .38rem 0; border-bottom: 1px solid rgba(53,93,96,.12); }
.ptp-contact-card div:last-child { border-bottom: 0; }
.ptp-contact-card dt { color: var(--ptp-muted); font-size: .76rem; font-weight: 850; }
.ptp-contact-card dd { margin: 0; font-weight: 800; color: var(--ptp-teal-dark); text-align: right; overflow-wrap: anywhere; }
.ptp-social-links { display: flex; flex-wrap: wrap; gap: .6rem; }
.ptp-social-links a { border-radius: 999px; background: var(--ptp-teal); color: #fff; padding: .55rem .8rem; font-weight: 900; text-decoration: none; }
.ptp-profile-related__heading { margin-bottom: 1rem; }
.ptp-related-article-grid,
.ptp-article-grid { display: grid; grid-template-columns: repeat(3, minmax(220px, 1fr)); gap: 1rem; }
.ptp-related-article-card,
.ptp-article-card { border: 1px solid var(--ptp-border); border-radius: 18px; overflow: hidden; background: #fff; box-shadow: 0 12px 24px rgba(23,38,41,.08); }
.ptp-related-article-card__image,
.ptp-article-card__image { min-height: 150px; display: flex; align-items: center; justify-content: center; background: var(--ptp-teal); color: #fff; font-weight: 950; }
.ptp-related-article-card__image img,
.ptp-article-card__image img { width: 100%; height: 180px; object-fit: cover; display: block; }
.ptp-related-article-card__body,
.ptp-article-card__body { padding: 1rem; }
.ptp-related-article-card h4,
.ptp-article-card h3 { margin: .7rem 0 .45rem; color: var(--ptp-teal-dark); }
.ptp-player-inline-link { color: var(--ptp-teal); font-weight: 900; text-decoration: underline; text-decoration-thickness: 2px; text-decoration-color: rgba(219,180,97,.85); text-underline-offset: 3px; }

/* Forms/dashboard */
.ptp-form { width: min(940px, calc(100% - 40px)); margin: 0 auto; }
.ptp-form__grid { display: grid; grid-template-columns: repeat(2, minmax(240px, 1fr)); gap: .9rem; }
.ptp-form label { display: grid; gap: .35rem; color: var(--ptp-muted); font-weight: 850; }
.ptp-form input,
.ptp-form textarea,
.ptp-form select { border: 1px solid var(--ptp-border); border-radius: 12px; padding: .65rem .75rem; font: inherit; color: var(--ptp-ink); background: #fff; }
.ptp-form__full { grid-column: 1 / -1; }
.ptp-check { display: flex !important; grid-template-columns: auto 1fr; align-items: flex-start; flex-direction: row; gap: .6rem; color: var(--ptp-ink) !important; }
.ptp-dashboard { width: min(1060px, calc(100% - 40px)); margin: 0 auto; }
.ptp-dashboard__header { display: flex; justify-content: space-between; gap: 1rem; align-items: center; background: #fff; border: 1px solid var(--ptp-border); border-radius: 24px; padding: 1.25rem; box-shadow: var(--ptp-shadow); margin-bottom: 1rem; }
.ptp-dashboard__grid { display: grid; grid-template-columns: repeat(2, minmax(240px, 1fr)); gap: 1rem; }
.ptp-dashboard-card { background: #fff; border: 1px solid var(--ptp-border); border-radius: 20px; padding: 1.1rem; box-shadow: 0 12px 24px rgba(23,38,41,.08); text-decoration: none; }
.ptp-dashboard-card h3 { margin-top: 0; color: var(--ptp-teal-dark); }
.ptp-login-layout { width: min(980px, calc(100% - 40px)); margin: 0 auto; display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(260px, .8fr); gap: 1rem; align-items: start; }
#ptp-login-form p { display: grid; gap: .35rem; }
#ptp-login-form input[type="text"], #ptp-login-form input[type="password"] { border: 1px solid var(--ptp-border); border-radius: 12px; padding: .7rem .8rem; font: inherit; }

@media (max-width: 980px) {
  .ptp-database__tools { grid-template-columns: repeat(2, minmax(155px, 1fr)); }
  .ptp-database__grid { grid-template-columns: 1fr; }
  .ptp-related-article-grid, .ptp-article-grid { grid-template-columns: repeat(2, minmax(220px, 1fr)); }
}
@media (max-width: 700px) {
  .ptp-database, .ptp-profile, .ptp-form, .ptp-dashboard, .ptp-login-layout { width: min(100% - 28px, 1180px); }
  .ptp-database__header, .ptp-dashboard__header { display: block; }
  .ptp-database__tools { grid-template-columns: 1fr; }
  .ptp-player-card__header { display: block; }
  .ptp-player-card__button { margin-top: .75rem; width: 100%; }
  .ptp-player-card__main { grid-template-columns: 1fr; }
  .ptp-player-card__photo { height: 230px; min-height: 230px; }
  .ptp-profile__top, .ptp-profile__sections--full, .ptp-contact-grid, .ptp-login-layout, .ptp-form__grid, .ptp-dashboard__grid, .ptp-related-article-grid, .ptp-article-grid { grid-template-columns: 1fr; }
  .ptp-form__full { grid-column: auto; }
}

/* v1.4 database filter system */
.ptp-database__tools {
  display: grid;
  grid-template-columns: repeat(4, minmax(180px, 1fr));
  gap: .9rem;
  align-items: stretch;
  background: #fff;
  border: 1px solid var(--ptp-border);
  border-radius: 24px;
  padding: 1rem;
  box-shadow: 0 14px 32px rgba(23, 38, 41, .07);
}
.ptp-filter-field,
.ptp-database__tools label.ptp-filter-field,
.ptp-database__tools fieldset.ptp-filter-field {
  min-width: 0;
  min-height: 78px;
  display: grid;
  grid-template-rows: auto 44px;
  gap: .42rem;
  margin: 0;
  padding: .78rem;
  background: #fbf7ef;
  border: 1px solid rgba(23, 38, 41, .11);
  border-radius: 18px;
  color: var(--ptp-muted);
  font-size: .76rem;
  font-weight: 900;
}
.ptp-filter-field > span,
.ptp-filter-field > legend {
  margin: 0;
  padding: 0;
  color: var(--ptp-teal-dark);
  font-size: .72rem;
  font-weight: 950;
  letter-spacing: .08em;
  text-transform: uppercase;
  line-height: 1.15;
}
.ptp-filter-field input[type="search"],
.ptp-filter-field input[type="number"],
.ptp-filter-field select,
.ptp-database__tools .ptp-filter-field input,
.ptp-database__tools .ptp-filter-field select {
  width: 100%;
  min-height: 44px;
  height: 44px;
  border: 1px solid rgba(23,38,41,.18);
  border-radius: 12px;
  padding: .58rem .68rem;
  background: #fff;
  color: var(--ptp-ink);
  font: inherit;
  font-size: .9rem;
  font-weight: 720;
}
.ptp-filter-field--search { grid-column: span 2; }
.ptp-filter-field--height .ptp-height-inputs {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: .5rem;
}
.ptp-filter-field--height .ptp-height-inputs label {
  display: block;
  margin: 0;
  padding: 0;
  min-height: auto;
  background: transparent;
  border: 0;
}
.ptp-filter-field--play-style {
  grid-column: 1 / -1;
  grid-template-rows: auto auto;
}
.ptp-play-style-options {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  align-content: flex-start;
  max-height: 148px;
  overflow: auto;
  padding: .15rem .1rem .1rem;
}
.ptp-filter-check,
.ptp-database__tools label.ptp-filter-check {
  min-height: auto;
  display: inline-flex;
  align-items: center;
  gap: .42rem;
  width: auto;
  margin: 0;
  padding: .5rem .65rem;
  background: #fff;
  border: 1px solid rgba(53, 93, 96, .14);
  border-radius: 999px;
  color: var(--ptp-teal-dark);
  font-size: .78rem;
  font-weight: 850;
  cursor: pointer;
  user-select: none;
}
.ptp-filter-check input {
  width: auto !important;
  height: auto !important;
  min-height: auto !important;
  margin: 0;
  accent-color: var(--ptp-teal);
}
.ptp-filter-check:has(input:checked) {
  background: var(--ptp-teal);
  border-color: var(--ptp-teal);
  color: #fff;
}
.ptp-filter-empty {
  margin: .2rem 0;
  color: var(--ptp-muted);
  font-size: .82rem;
}
.screen-reader-text {
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
  white-space: nowrap;
}

@media (max-width: 1100px) {
  .ptp-database__tools { grid-template-columns: repeat(3, minmax(180px, 1fr)); }
}
@media (max-width: 860px) {
  .ptp-database__tools { grid-template-columns: repeat(2, minmax(160px, 1fr)); }
  .ptp-filter-field--search { grid-column: 1 / -1; }
}
@media (max-width: 580px) {
  .ptp-database__tools { grid-template-columns: 1fr; }
  .ptp-filter-field--search,
  .ptp-filter-field--play-style { grid-column: auto; }
}

/* v1.5 Premium dashboard / Option 10 database styling */
.ptp-database, .ptp-dashboard, .ptp-resources-hub, .ptp-events, .ptp-articles, .ptp-profile, .ptp-event-detail {
  --ptp-teal: #355d60;
  --ptp-teal-dark: #25494c;
  --ptp-sage: #aec3b2;
  --ptp-sage-soft: #eaf1ec;
  --ptp-gold: #dbb461;
  --ptp-cream: #faf2e9;
  --ptp-ink: #172629;
  --ptp-muted: #657275;
  --ptp-border: rgba(37,73,76,.16);
}
.ptp-database { background: var(--ptp-cream); color: var(--ptp-ink); }
.ptp-database__header { display:flex; justify-content:space-between; align-items:flex-end; gap:22px; margin-bottom:22px; }
.ptp-database__header h2 { font-size: clamp(2rem, 4vw, 3.45rem); color: var(--ptp-teal-dark); margin-bottom:8px; }
.ptp-database__header p { color: var(--ptp-muted); }
.ptp-database__tools {
  display:grid !important;
  grid-template-columns: repeat(5, minmax(155px, 1fr));
  gap:16px;
  align-items:end;
  background: rgba(255,255,255,.62);
  border:1px solid rgba(53,93,96,.16);
  border-radius:22px;
  padding:18px;
  margin-bottom:24px;
  box-shadow: 0 10px 30px rgba(37,73,76,.05);
}
.ptp-filter-field, .ptp-filter-field--play-style { margin:0 !important; min-width:0; }
.ptp-filter-field span, .ptp-filter-field--play-style legend { display:block; margin:0 0 7px; color:var(--ptp-teal-dark); font-size:.72rem; font-weight:900; letter-spacing:.07em; text-transform:uppercase; }
.ptp-filter-field input, .ptp-filter-field select, .ptp-height-inputs select {
  width:100%; height:45px; border:1px solid rgba(53,93,96,.18); border-radius:12px; background:#fffaf4; color:var(--ptp-ink); padding:0 12px; font-weight:650;
}
.ptp-filter-field--search { grid-column: span 2; }
.ptp-filter-field--play-style { grid-column: span 3; border:0; padding:0; }
.ptp-height-inputs { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.ptp-play-style-options { display:flex; flex-wrap:wrap; gap:8px; min-height:45px; align-items:center; padding:7px; border:1px solid rgba(53,93,96,.18); border-radius:12px; background:#fffaf4; }
.ptp-filter-check { display:inline-flex; gap:7px; align-items:center; margin:0; background:#fff; border:1px solid rgba(53,93,96,.13); border-radius:999px; padding:7px 10px; cursor:pointer; }
.ptp-filter-check span { margin:0; text-transform:none; letter-spacing:0; font-size:.8rem; color:var(--ptp-ink); }
.ptp-database__grid { display:grid !important; grid-template-columns:repeat(3,minmax(280px,1fr)); gap:24px; align-items:start; }
.ptp-player-card--option10 { background:#fffaf4; border:1px solid rgba(37,73,76,.15); border-radius:18px; overflow:hidden; box-shadow:0 16px 40px rgba(23,38,41,.10); position:relative; }
.ptp-player-card--option10[hidden] { display:none !important; }
.ptp-player-card--option10 .ptp-player-card__header { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:12px 16px; background:linear-gradient(135deg,var(--ptp-teal-dark),var(--ptp-teal)); color:#fff; min-height:43px; }
.ptp-player-card--juco.ptp-player-card--option10 .ptp-player-card__header { background:#fff; color:var(--ptp-teal-dark); border-bottom:1px solid rgba(37,73,76,.13); }
.ptp-player-card--option10 .ptp-player-card__header strong { text-transform:uppercase; letter-spacing:.06em; font-size:.82rem; font-weight:950; }
.ptp-player-card--option10 .ptp-player-card__header span { opacity:.78; font-size:.78rem; font-weight:800; }
.ptp-player-card--option10 .ptp-player-card__photo { position:relative; display:block; aspect-ratio: 16/9; background:linear-gradient(135deg, rgba(53,93,96,.92), rgba(219,180,97,.35)); overflow:hidden; }
.ptp-player-card--option10 .ptp-player-card__photo img { width:100%; height:100%; object-fit:cover; display:block; }
.ptp-player-card--option10 .ptp-player-card__photo:after { content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.18)); pointer-events:none; }
.ptp-player-card--option10 .ptp-player-card__placeholder { display:grid; place-items:center; width:100%; height:100%; color:#fff; font-weight:950; font-size:3rem; letter-spacing:.08em; }
.ptp-player-card__sticker { position:absolute; z-index:3; top:16px; left:16px; display:inline-grid; gap:0; border-radius:8px; box-shadow:0 10px 24px rgba(0,0,0,.22); overflow:hidden; border:1px solid rgba(255,255,255,.24); }
.ptp-player-card__sticker b { display:block; padding:8px 12px 5px; min-width:70px; text-align:center; font-size:1.55rem; line-height:1; letter-spacing:.04em; font-weight:950; }
.ptp-player-card__sticker em { display:block; padding:4px 7px 5px; text-align:center; font-size:.58rem; line-height:1; letter-spacing:.05em; text-transform:uppercase; font-style:normal; font-weight:950; }
.ptp-player-card__sticker--hs b { background:var(--ptp-teal); color:#fff; }
.ptp-player-card__sticker--hs em { background:var(--ptp-gold); color:var(--ptp-teal-dark); }
.ptp-player-card__sticker--juco b { background:#fff; color:var(--ptp-teal-dark); }
.ptp-player-card__sticker--juco em { background:var(--ptp-sage); color:var(--ptp-teal-dark); }
.ptp-player-card--option10 .ptp-player-card__body { padding:18px 18px 16px; }
.ptp-player-card--option10 .ptp-player-card__body h3 { margin:0 0 4px; font-size:1.35rem; color:var(--ptp-teal-dark); line-height:1.08; }
.ptp-player-card__line { margin:0 0 12px; color:var(--ptp-teal-dark); font-weight:750; }
.ptp-player-card__line span { color:var(--ptp-gold); padding:0 5px; }
.ptp-player-card__details { display:grid; grid-template-columns:1fr 1fr; gap:10px 18px; padding:13px 0; border-top:1px dashed rgba(37,73,76,.18); border-bottom:1px dashed rgba(37,73,76,.18); }
.ptp-player-card__details div { min-width:0; }
.ptp-player-card__details span { display:block; color:var(--ptp-muted); font-size:.7rem; text-transform:uppercase; font-weight:900; letter-spacing:.06em; margin-bottom:2px; }
.ptp-player-card__details strong { display:block; color:var(--ptp-teal-dark); font-size:.9rem; line-height:1.25; overflow-wrap:anywhere; }
.ptp-player-card__badges { display:flex; flex-wrap:wrap; gap:7px; margin-top:14px; align-items:center; }
.ptp-player-card__badges-label { flex-basis:100%; color:var(--ptp-teal-dark); font-size:.72rem; font-weight:950; letter-spacing:.07em; text-transform:uppercase; }
.ptp-player-card__badge { display:inline-flex; border-radius:999px; background:#efe8df; border:1px solid rgba(53,93,96,.12); color:var(--ptp-ink); font-size:.75rem; font-weight:800; padding:6px 9px; }
.ptp-player-card__actions { display:grid; grid-template-columns:1fr 132px; gap:10px; margin-top:16px; }
.ptp-player-card__button { display:inline-flex; align-items:center; justify-content:center; min-height:44px; border-radius:10px; background:var(--ptp-teal); color:#fff !important; font-weight:950; text-transform:uppercase; letter-spacing:.04em; box-shadow:0 12px 22px rgba(53,93,96,.18); }
.ptp-favorite-button { display:inline-flex; align-items:center; justify-content:center; gap:7px; min-height:42px; border:1px solid var(--ptp-teal); border-radius:10px; background:#fffaf4; color:var(--ptp-teal-dark); font-weight:950; cursor:pointer; text-decoration:none; }
.ptp-favorite-button span { font-size:1.1rem; line-height:1; }
.ptp-favorite-button.is-active, .ptp-favorite-button:hover { background:var(--ptp-gold); border-color:var(--ptp-gold); color:var(--ptp-teal-dark); }
.ptp-favorite-button--photo { position:absolute; z-index:4; right:14px; top:14px; flex-direction:column; width:58px; height:58px; min-height:58px; border-radius:18px; background:rgba(255,255,255,.94); box-shadow:0 10px 24px rgba(0,0,0,.18); font-size:.66rem; }
.ptp-favorite-button--photo strong { font-size:.66rem; }
.ptp-favorite-button--profile-photo { position:absolute; z-index:4; right:18px; top:18px; background:rgba(255,255,255,.94); padding:9px 12px; }
.ptp-profile__photo { position:relative; }
.ptp-profile__title-row { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; }
.ptp-profile__title-row h2 { margin-bottom:8px; }
.ptp-favorite-button--profile { padding:11px 16px; background:var(--ptp-teal); color:#fff; border-color:var(--ptp-teal); }
.ptp-favorite-button--profile.is-active { background:var(--ptp-gold); color:var(--ptp-teal-dark); border-color:var(--ptp-gold); }
.ptp-follow-button { display:inline-flex; align-items:center; gap:8px; border-radius:999px; border:1px solid var(--ptp-teal); background:#fff; color:var(--ptp-teal-dark); padding:9px 13px; font-weight:900; cursor:pointer; }
.ptp-follow-button.is-active { background:var(--ptp-gold); border-color:var(--ptp-gold); }
.ptp-event-card__top, .ptp-event-detail__header { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; }
.ptp-event-detail { background:#fffaf4; border:1px solid rgba(53,93,96,.14); border-radius:24px; padding:24px; }
.ptp-event-detail__meta { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin:18px 0; }
.ptp-event-detail__meta div { background:#fff; border:1px solid rgba(53,93,96,.12); border-radius:14px; padding:13px; }
.ptp-event-detail__meta span { display:block; color:var(--ptp-muted); font-size:.72rem; font-weight:900; text-transform:uppercase; }
.ptp-notification-panel, .ptp-dashboard-list { background:#fffaf4; border:1px solid rgba(53,93,96,.14); border-radius:22px; padding:18px; box-shadow:0 10px 28px rgba(37,73,76,.06); }
.ptp-notification-panel { margin:22px 0; }
.ptp-notification-panel__head { display:flex; justify-content:space-between; align-items:center; gap:12px; border-bottom:1px solid rgba(53,93,96,.12); padding-bottom:10px; margin-bottom:12px; }
.ptp-notification-list { display:grid; gap:10px; }
.ptp-notification { display:grid; gap:3px; background:#fff; border:1px solid rgba(53,93,96,.10); border-radius:14px; padding:12px; }
.ptp-notification span { color:var(--ptp-gold); text-transform:uppercase; font-size:.68rem; font-weight:950; letter-spacing:.08em; }
.ptp-notification strong { color:var(--ptp-teal-dark); }
.ptp-notification p { margin:0; color:var(--ptp-muted); font-size:.9rem; }
.ptp-dashboard-lists { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-top:20px; }
.ptp-mini-list { display:grid; gap:10px; }
.ptp-mini-list a { display:flex; justify-content:space-between; gap:12px; background:#fff; border:1px solid rgba(53,93,96,.10); border-radius:12px; padding:11px 12px; }
.ptp-mini-list span { color:var(--ptp-muted); font-size:.85rem; }
@media (max-width: 1100px) { .ptp-database__grid { grid-template-columns:repeat(2,minmax(280px,1fr)); } .ptp-database__tools { grid-template-columns:repeat(2,minmax(0,1fr)); } .ptp-filter-field--search, .ptp-filter-field--play-style { grid-column: span 2; } }
@media (max-width: 720px) { .ptp-database__grid, .ptp-dashboard-lists { grid-template-columns:1fr; } .ptp-database__tools { grid-template-columns:1fr; } .ptp-filter-field--search, .ptp-filter-field--play-style { grid-column: auto; } .ptp-player-card__actions { grid-template-columns:1fr; } .ptp-event-detail__meta { grid-template-columns:1fr; } }

/* v1.6 mockup-matched database, cards, profile, dashboard */
.ptp-database,.ptp-profile,.ptp-dashboard,.ptp-resources-hub,.ptp-form,.ptp-login-layout{width:min(1420px,calc(100% - 72px)); margin:0 auto;}
.ptp-database__header--mockup{display:grid; grid-template-columns:minmax(320px,1fr) minmax(280px,370px) auto; align-items:end; gap:24px; margin:26px 0 28px; padding:0; background:transparent; border:0; box-shadow:none;}
.ptp-database__header--mockup h2{font-size:2.35rem; letter-spacing:-.04em; color:var(--ptp-teal-dark); margin:0 0 4px;}
.ptp-database__header--mockup p{font-size:1.05rem; color:var(--ptp-teal-dark); opacity:.9; margin:0;}
.ptp-database__search{height:54px; display:flex; align-items:center; background:#fffaf4; border:1px solid rgba(13,51,55,.22); border-radius:10px; padding:0 14px 0 45px; position:relative; box-shadow:0 8px 18px rgba(13,51,55,.035);}
.ptp-database__search:before{content:"⌕"; position:absolute; left:17px; top:50%; transform:translateY(-50%); color:rgba(13,51,55,.45); font-size:1.45rem; line-height:1;}
.ptp-database__search input{width:100%; border:0; background:transparent; font:inherit; color:var(--ptp-ink); outline:0;}
.ptp-database__tools{display:grid!important; grid-template-columns:repeat(5,minmax(150px,1fr)); gap:22px 36px!important; align-items:end; padding:20px!important; margin-bottom:22px; background:rgba(255,250,244,.72)!important; border:1px solid rgba(13,51,55,.14)!important; border-radius:10px!important; box-shadow:none!important;}
.ptp-filter-field,.ptp-database__tools label.ptp-filter-field,.ptp-database__tools fieldset.ptp-filter-field{min-height:78px!important; padding:0!important; background:transparent!important; border:0!important; border-radius:0!important; display:grid!important; grid-template-rows:auto 42px; gap:8px!important; box-shadow:none!important;}
.ptp-filter-field>span,.ptp-filter-field>legend{font-size:.72rem!important; letter-spacing:.08em; text-transform:uppercase; color:var(--ptp-teal-dark)!important; font-weight:950!important;}
.ptp-filter-field input,.ptp-filter-field select,.ptp-height-inputs select{height:42px!important; width:100%; border:1px solid rgba(13,51,55,.2)!important; border-radius:10px!important; background:#fffaf4!important; color:var(--ptp-ink)!important; padding:0 14px!important; font-size:.92rem!important; box-shadow:0 8px 18px rgba(13,51,55,.03);}
.ptp-filter-field--search{display:none!important;}
.ptp-filter-field--play-style{grid-column:span 2; min-height:auto!important; grid-template-rows:auto auto!important;}
.ptp-play-style-options{display:flex!important; flex-wrap:wrap; gap:9px; align-items:center; min-height:42px; border:1px solid rgba(13,51,55,.2); border-radius:10px; padding:7px; background:#fffaf4;}
.ptp-filter-check{display:inline-flex!important; align-items:center; gap:7px; min-height:30px; border:1px solid rgba(13,51,55,.12); border-radius:999px; background:#eee6db; padding:4px 10px; font-size:.82rem; font-weight:850; color:var(--ptp-ink);}
.ptp-filter-check input{width:auto!important; height:auto!important; box-shadow:none!important;}
.ptp-database__grid{display:grid!important; grid-template-columns:repeat(3,minmax(280px,1fr)); gap:28px!important; align-items:stretch;}
.ptp-player-card--option10{border:1px solid rgba(13,51,55,.14)!important; border-radius:10px!important; overflow:hidden; background:#fffaf4!important; box-shadow:0 16px 34px rgba(13,51,55,.09)!important; display:flex; flex-direction:column; min-height:100%;}
.ptp-player-card__header{height:37px; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:0 15px!important; background:linear-gradient(135deg,#073f42,#0f5b5f)!important; color:#fff!important; border:0!important; text-transform:uppercase; letter-spacing:.055em;}
.ptp-player-card__header strong{font-size:.78rem; font-weight:950;}
.ptp-player-card__header span{font-size:.68rem; color:rgba(255,255,255,.72); font-weight:850;}
.ptp-player-card--juco .ptp-player-card__header{background:#fffaf4!important; color:var(--ptp-teal-dark)!important; border-bottom:1px solid rgba(13,51,55,.14)!important;}
.ptp-player-card--juco .ptp-player-card__header span{color:rgba(13,51,55,.42);}
.ptp-player-card__photo{height:222px!important; min-height:222px!important; position:relative; overflow:hidden; background:#162f32; display:block!important;}
.ptp-player-card__photo img{width:100%; height:100%; object-fit:cover; display:block; transition:transform .25s ease;}
.ptp-player-card:hover .ptp-player-card__photo img{transform:scale(1.025);}
.ptp-player-card__photo:after{content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.12)); pointer-events:none;}
.ptp-player-card__placeholder{height:100%; width:100%; display:flex; align-items:center; justify-content:center; color:#fff; font-size:2rem; font-weight:950;}
.ptp-player-card__sticker{position:absolute!important; top:18px!important; left:18px!important; z-index:3; display:grid!important; justify-items:center; align-content:center; min-width:80px; min-height:60px; padding:8px 10px 7px!important; border-radius:7px!important; border:0!important; box-shadow:0 8px 20px rgba(0,0,0,.22)!important; overflow:visible; transform:none!important;}
.ptp-player-card__sticker:before{content:""; position:absolute; inset:0; border-radius:7px; border:1px solid rgba(255,255,255,.18);}
.ptp-player-card__sticker b{font-size:1.7rem!important; line-height:.95; font-weight:950; letter-spacing:.02em;}
.ptp-player-card__sticker em{font-size:.47rem!important; line-height:1; text-transform:uppercase; letter-spacing:.06em; font-style:normal; margin-top:5px; padding:4px 5px 3px; border-radius:3px; font-weight:950;}
.ptp-player-card__sticker--hs{background:linear-gradient(180deg,#0f5557,#073f42)!important; color:#fff!important; border:1px solid rgba(216,169,78,.6)!important;}
.ptp-player-card__sticker--hs em{background:var(--ptp-gold); color:#fff;}
.ptp-player-card__sticker--juco{background:#fffaf4!important; color:var(--ptp-teal-dark)!important; border:1px solid rgba(13,51,55,.18)!important;}
.ptp-player-card__sticker--juco em{background:var(--ptp-sage); color:#fff;}
.ptp-favorite-button--photo{position:absolute!important; top:16px!important; right:16px!important; z-index:4; width:58px; height:66px; border-radius:18px!important; background:rgba(255,250,244,.96)!important; border:1px solid rgba(13,51,55,.12)!important; display:grid!important; place-items:center; gap:0!important; color:var(--ptp-teal-dark)!important; box-shadow:0 8px 20px rgba(0,0,0,.16)!important; padding:7px!important;}
.ptp-favorite-button--photo span{font-size:1.55rem!important; line-height:1;}
.ptp-favorite-button--photo strong{font-size:.62rem!important; line-height:1; text-transform:none;}
.ptp-favorite-button.is-active,.ptp-favorite-button[aria-pressed="true"]{background:var(--ptp-teal-dark)!important; color:#fff!important; border-color:var(--ptp-teal-dark)!important;}
.ptp-player-card__body{padding:18px 20px 20px!important; display:flex; flex-direction:column; flex:1;}
.ptp-player-card__body h3{font-size:1.38rem!important; line-height:1.1; margin:0 0 6px!important; color:var(--ptp-teal-dark)!important; letter-spacing:-.03em;}
.ptp-player-card__line{margin:0 0 13px!important; color:var(--ptp-teal-dark); font-size:.9rem; font-weight:850;}
.ptp-player-card__line span{color:var(--ptp-muted); padding:0 5px;}
.ptp-player-card__details{display:grid!important; grid-template-columns:minmax(0,1fr) auto; gap:8px 14px; padding:13px 0 11px; margin:0 0 12px; border-top:1px dotted rgba(13,51,55,.18); border-bottom:0;}
.ptp-player-card__details div{display:flex; align-items:flex-start; gap:8px; min-width:0;}
.ptp-player-card__details div:before{content:"◇"; color:var(--ptp-teal-dark); font-weight:900; line-height:1.2; opacity:.9;}
.ptp-player-card__details div span{display:none;}
.ptp-player-card__details div strong{font-size:.84rem; color:var(--ptp-teal-dark); font-weight:800; line-height:1.3;}
.ptp-player-card__details div:nth-child(4){grid-column:2; grid-row:1 / span 3; display:grid; place-items:center start; padding-left:15px; border-left:1px solid rgba(13,51,55,.13); min-width:130px;}
.ptp-player-card__details div:nth-child(4):before{content:"▥"; font-size:1.15rem;}
.ptp-player-card__details div:nth-child(4) span{display:block; text-transform:none; font-size:.76rem; color:var(--ptp-muted); font-weight:800;}
.ptp-player-card__details div:nth-child(4) strong{display:block; font-size:.82rem; font-weight:950;}
.ptp-player-card__badges{margin:0 0 16px!important; display:flex!important; flex-wrap:wrap; gap:8px;}
.ptp-player-card__badges-label{width:100%; text-transform:uppercase; letter-spacing:.07em; color:var(--ptp-teal-dark); font-size:.7rem; font-weight:950; margin-bottom:0;}
.ptp-player-card__badge{background:#eee6db!important; border:1px solid rgba(13,51,55,.08)!important; border-radius:8px!important; color:var(--ptp-ink)!important; padding:7px 12px!important; font-size:.74rem!important; font-weight:850!important;}
.ptp-player-card__actions{display:grid!important; grid-template-columns:1fr 136px; gap:12px; margin-top:auto;}
.ptp-player-card__button{height:44px; display:flex!important; align-items:center; justify-content:center; border-radius:8px!important; background:var(--ptp-teal-dark)!important; color:#fff!important; text-transform:uppercase; letter-spacing:.055em; font-size:.84rem; font-weight:950!important;}
.ptp-favorite-button--card{height:44px; border-radius:8px!important; background:#fffaf4!important; border:1px solid var(--ptp-teal-dark)!important; color:var(--ptp-teal-dark)!important; display:flex!important; align-items:center; justify-content:center; gap:8px; font-weight:950!important; text-transform:uppercase; letter-spacing:.055em;}
.ptp-favorite-button--card span{font-size:1.25rem;}
.ptp-database:before{content:""; display:block; height:0;}
.ptp-no-results{font-weight:850; color:var(--ptp-teal-dark);}

/* Profile page mockup styling */
.ptp-profile{margin-top:20px;}
.ptp-profile__top{display:grid!important; grid-template-columns:minmax(380px,42%) minmax(0,1fr)!important; gap:28px!important; align-items:start;}
.ptp-profile__photo{min-height:380px!important; border-radius:10px!important; overflow:hidden; padding:0!important; box-shadow:0 16px 34px rgba(13,51,55,.09)!important; border:1px solid rgba(13,51,55,.14)!important; position:relative; background:#102b2e!important;}
.ptp-profile__photo img{width:100%; height:100%; min-height:380px; object-fit:cover; display:block;}
.ptp-profile__photo .ptp-player-card__sticker{top:20px!important; left:20px!important;}
.ptp-favorite-button--profile-photo{position:absolute!important; top:20px!important; right:20px!important; z-index:4; background:#fffaf4!important; color:var(--ptp-teal-dark)!important; border:1px solid rgba(13,51,55,.14)!important; border-radius:18px!important; width:72px; height:70px; display:grid!important; place-items:center; box-shadow:0 8px 20px rgba(0,0,0,.16);}
.ptp-profile__bio{background:transparent!important; border:0!important; box-shadow:none!important; padding:0!important;}
.ptp-profile__title-row{display:flex; justify-content:space-between; align-items:start; gap:20px;}
.ptp-profile__bio h2{font-size:2.9rem!important; color:var(--ptp-teal-dark)!important; margin:0 0 10px!important; letter-spacing:-.04em;}
.ptp-profile__bio .ptp-kicker{display:none;}
.ptp-badge-row{display:flex; flex-wrap:wrap; gap:9px; margin:10px 0 18px;}
.ptp-badge-row .ptp-chip,.ptp-chip{border-radius:8px; padding:8px 12px; background:#eee6db; color:var(--ptp-teal-dark); font-size:.78rem; font-weight:850;}
.ptp-stat-grid{display:grid!important; grid-template-columns:repeat(2,minmax(180px,1fr)); gap:14px!important; padding:16px 0; border-top:1px solid rgba(13,51,55,.13); margin:12px 0 0!important;}
.ptp-stat-grid div{border:0!important; background:transparent!important; padding:0!important; display:grid; grid-template-columns:28px 1fr; gap:4px 10px; align-items:start;}
.ptp-stat-grid div:before{content:"◇"; grid-row:1 / span 2; color:var(--ptp-teal-dark); font-weight:950;}
.ptp-stat-grid dt{font-size:.82rem!important; color:var(--ptp-muted)!important; text-transform:none!important; letter-spacing:0!important;}
.ptp-stat-grid dd{font-size:.92rem; color:var(--ptp-teal-dark); font-weight:950;}
.ptp-profile-description{width:42%; margin:16px 0 0!important; border-radius:0 0 10px 10px!important; box-shadow:none!important; border:1px solid rgba(13,51,55,.14)!important; border-top:0!important; padding:16px 18px!important; background:#fffaf4!important;}
.ptp-profile-description h3,.ptp-profile-section h3,.ptp-profile-related h3{font-size:.82rem; text-transform:uppercase; letter-spacing:.06em; color:var(--ptp-teal-dark); margin-bottom:8px;}
.ptp-profile__sections--full{display:grid!important; grid-template-columns:repeat(4,minmax(180px,1fr)); gap:18px!important; margin-top:22px;}
.ptp-profile-section,.ptp-profile-related,.ptp-profile-badges-panel{border:1px solid rgba(13,51,55,.14)!important; border-radius:10px!important; background:#fffaf4!important; box-shadow:none!important; padding:16px!important;}
.ptp-profile-section--wide{grid-column:span 2;}
.ptp-contact-grid{display:grid!important; grid-template-columns:repeat(4,minmax(160px,1fr))!important; gap:18px; grid-column:1 / -1;}
.ptp-contact-card{background:#fffaf4!important; border:1px solid rgba(13,51,55,.14)!important; border-radius:10px!important; padding:16px!important;}
.ptp-contact-card h4{font-size:.78rem; text-transform:uppercase; letter-spacing:.06em; margin:0 0 14px;}
.ptp-contact-card div{display:block!important; border:0!important; padding:4px 0!important;}
.ptp-contact-card dt{display:none;}
.ptp-contact-card dd{text-align:left!important; font-size:.85rem; color:var(--ptp-teal-dark);}
.ptp-social-links a{border-radius:8px!important; background:#fffaf4!important; border:1px solid rgba(13,51,55,.14); color:var(--ptp-teal-dark)!important;}
.ptp-profile-related{grid-column:1 / -1; margin-top:18px!important;}
.ptp-related-article-grid{grid-template-columns:repeat(3,minmax(180px,1fr))!important;}
.ptp-related-article-card,.ptp-article-card{border-radius:10px!important; box-shadow:none!important; border:1px solid rgba(13,51,55,.14)!important;}
.ptp-platform-button,.ptp-profile-section a,.ptp-related-article-card a{border-radius:8px; font-weight:950;}

/* Dashboard/resources mirror mockup panels */
.ptp-dashboard__header,.ptp-dashboard-card,.ptp-dashboard-list,.ptp-notifications-panel,.ptp-resources-hub .ptp-dashboard-card{border-radius:10px!important; background:#fffaf4!important; border:1px solid rgba(13,51,55,.14)!important; box-shadow:0 12px 26px rgba(13,51,55,.06)!important;}
.ptp-dashboard__header h2,.ptp-resources-hub h2{font-size:2.35rem; color:var(--ptp-teal-dark);}
@media(max-width:1100px){.ptp-database__grid{grid-template-columns:repeat(2,minmax(280px,1fr));}.ptp-database__tools{grid-template-columns:repeat(3,minmax(150px,1fr));}.ptp-profile__sections--full,.ptp-contact-grid{grid-template-columns:repeat(2,minmax(220px,1fr))!important;}.ptp-profile-description{width:100%;}}
@media(max-width:760px){.ptp-database,.ptp-profile,.ptp-dashboard,.ptp-resources-hub,.ptp-form,.ptp-login-layout{width:min(100% - 28px,1420px);} .ptp-database__header--mockup{grid-template-columns:1fr; align-items:start;} .ptp-database__tools{grid-template-columns:1fr!important;} .ptp-filter-field--play-style{grid-column:auto;} .ptp-database__grid{grid-template-columns:1fr!important;} .ptp-player-card__actions{grid-template-columns:1fr;} .ptp-profile__top{grid-template-columns:1fr!important;} .ptp-profile-description{width:100%;} .ptp-profile__sections--full,.ptp-contact-grid,.ptp-related-article-grid{grid-template-columns:1fr!important;} .ptp-profile__bio h2{font-size:2.2rem!important;}}

/* v1.7 exact mockup implementation pass: database + player cards + profile */
.ptp-database,
.ptp-profile,
.ptp-dashboard,
.ptp-resources-hub,
.ptp-form,
.ptp-login-layout,
.ptp-articles,
.ptp-events{--ptp-teal:#0f5557;--ptp-teal-dark:#0a3f42;--ptp-sage:#9fb9a8;--ptp-gold:#d8a94e;--ptp-cream:#fbf4ea;--ptp-ink:#0d3337;--ptp-muted:#5e7377;--ptp-border:rgba(13,51,55,.14);--ptp-shadow:0 16px 34px rgba(13,51,55,.09);}
.ptp-database{width:min(1448px,calc(100% - 72px))!important; margin:0 auto!important; padding:0 0 32px!important; color:var(--ptp-ink)!important;}
.ptp-database__header--mockup{display:grid!important; grid-template-columns:minmax(340px,1fr) minmax(320px,380px) auto!important; align-items:end!important; gap:28px!important; margin:8px 0 24px!important; padding:0!important; background:transparent!important; border:0!important; border-radius:0!important; box-shadow:none!important;}
.ptp-database__header--mockup h2{font-size:2.35rem!important; line-height:1!important; letter-spacing:-.045em!important; margin:0 0 8px!important; color:var(--ptp-teal-dark)!important; font-weight:950!important;}
.ptp-database__header--mockup p{font-size:1.05rem!important; margin:0!important; color:var(--ptp-teal-dark)!important; opacity:.9!important;}
.ptp-database__search{height:54px!important; display:flex!important; align-items:center!important; background:#fffaf4!important; border:1px solid rgba(13,51,55,.22)!important; border-radius:10px!important; padding:0 14px 0 45px!important; position:relative!important; box-shadow:0 8px 18px rgba(13,51,55,.035)!important; margin:0!important;}
.ptp-database__search:before{content:"⌕"!important; position:absolute!important; left:17px!important; top:50%!important; transform:translateY(-50%)!important; color:rgba(13,51,55,.45)!important; font-size:1.45rem!important; line-height:1!important;}
.ptp-database__search input{width:100%!important; border:0!important; background:transparent!important; color:var(--ptp-ink)!important; outline:0!important; font:inherit!important;}
.ptp-public-preview-banner{display:flex; align-items:center; gap:18px; margin:0 0 22px; padding:14px 18px; background:#fffaf4; border:1px solid rgba(13,51,55,.14); border-radius:10px; color:var(--ptp-teal-dark); box-shadow:0 10px 22px rgba(13,51,55,.045);}
.ptp-public-preview-banner strong{text-transform:uppercase; letter-spacing:.06em; font-size:.78rem; color:var(--ptp-gold); white-space:nowrap;}
.ptp-public-preview-banner span{flex:1; font-size:.92rem; color:var(--ptp-muted);}
.ptp-public-preview-banner a{display:inline-flex; align-items:center; min-height:38px; padding:0 14px; border-radius:9px; background:var(--ptp-teal-dark); color:#fff!important; text-decoration:none; text-transform:uppercase; letter-spacing:.04em; font-weight:950; font-size:.78rem;}
.ptp-database__tools{display:grid!important; grid-template-columns:repeat(5,minmax(150px,1fr))!important; gap:22px 36px!important; align-items:end!important; padding:20px!important; margin:0 0 22px!important; background:rgba(255,250,244,.72)!important; border:1px solid rgba(13,51,55,.14)!important; border-radius:10px!important; box-shadow:none!important;}
.ptp-filter-field,.ptp-database__tools label.ptp-filter-field,.ptp-database__tools fieldset.ptp-filter-field{min-height:78px!important; padding:0!important; background:transparent!important; border:0!important; border-radius:0!important; display:grid!important; grid-template-rows:auto 42px!important; gap:8px!important; box-shadow:none!important; margin:0!important;}
.ptp-filter-field>span,.ptp-filter-field>legend{font-size:.72rem!important; line-height:1!important; letter-spacing:.08em!important; text-transform:uppercase!important; color:var(--ptp-teal-dark)!important; font-weight:950!important; margin:0!important;}
.ptp-filter-field input,.ptp-filter-field select,.ptp-height-inputs select{height:42px!important; width:100%!important; border:1px solid rgba(13,51,55,.2)!important; border-radius:10px!important; background:#fffaf4!important; color:var(--ptp-ink)!important; padding:0 14px!important; font-size:.92rem!important; box-shadow:0 8px 18px rgba(13,51,55,.03)!important; outline:0!important;}
.ptp-height-inputs{display:grid!important; grid-template-columns:1fr 1fr!important; gap:8px!important;}
.ptp-filter-field--play-style{grid-column:span 2!important; grid-template-rows:auto auto!important;}
.ptp-play-style-options{display:flex!important; flex-wrap:wrap!important; gap:9px!important; align-items:center!important; min-height:42px!important; border:1px solid rgba(13,51,55,.2)!important; border-radius:10px!important; padding:7px!important; background:#fffaf4!important;}
.ptp-filter-check{display:inline-flex!important; align-items:center!important; gap:7px!important; min-height:30px!important; border:1px solid rgba(13,51,55,.12)!important; border-radius:999px!important; background:#eee6db!important; padding:4px 10px!important; font-size:.82rem!important; font-weight:850!important; color:var(--ptp-ink)!important; margin:0!important;}
.ptp-filter-check input{width:auto!important; height:auto!important; box-shadow:none!important;}
.ptp-filter-check span{margin:0!important; letter-spacing:0!important; text-transform:none!important; color:var(--ptp-ink)!important; font-size:.82rem!important;}
.ptp-results-bar{font-size:1rem!important; color:var(--ptp-teal-dark)!important; margin:4px 0 18px!important; font-weight:650!important;}
.ptp-results-bar strong{font-weight:950!important;}
.ptp-database__grid{display:grid!important; grid-template-columns:repeat(3,minmax(280px,1fr))!important; gap:28px!important; align-items:stretch!important;}
.ptp-player-card--option10{border:1px solid rgba(13,51,55,.14)!important; border-radius:10px!important; overflow:hidden!important; background:#fffaf4!important; box-shadow:0 16px 34px rgba(13,51,55,.09)!important; display:flex!important; flex-direction:column!important; min-height:100%!important;}
.ptp-player-card--option10 .ptp-player-card__header{height:37px!important; min-height:37px!important; display:flex!important; align-items:center!important; justify-content:space-between!important; gap:12px!important; padding:0 15px!important; background:linear-gradient(135deg,#073f42,#0f5b5f)!important; color:#fff!important; border:0!important; text-transform:uppercase!important; letter-spacing:.055em!important;}
.ptp-player-card--option10 .ptp-player-card__header strong{font-size:.78rem!important; line-height:1!important; font-weight:950!important; color:inherit!important;}
.ptp-player-card--option10 .ptp-player-card__header span{font-size:.68rem!important; color:rgba(255,255,255,.72)!important; font-weight:850!important;}
.ptp-player-card--juco.ptp-player-card--option10 .ptp-player-card__header{background:#fffaf4!important; color:var(--ptp-teal-dark)!important; border-bottom:1px solid rgba(13,51,55,.14)!important;}
.ptp-player-card--juco.ptp-player-card--option10 .ptp-player-card__header span{color:rgba(13,51,55,.42)!important;}
.ptp-player-card--option10 .ptp-player-card__photo{height:222px!important; min-height:222px!important; aspect-ratio:auto!important; position:relative!important; overflow:hidden!important; background:#162f32!important; display:block!important;}
.ptp-player-card--option10 .ptp-player-card__photo img{width:100%!important; height:100%!important; object-fit:cover!important; display:block!important; transition:transform .25s ease!important;}
.ptp-player-card--option10:hover .ptp-player-card__photo img{transform:scale(1.025)!important;}
.ptp-player-card--option10 .ptp-player-card__photo:after{content:""!important; position:absolute!important; inset:0!important; background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.12))!important; pointer-events:none!important;}
.ptp-player-card__sticker{position:absolute!important; top:18px!important; left:18px!important; z-index:5!important; display:grid!important; justify-items:center!important; align-content:center!important; min-width:80px!important; min-height:60px!important; padding:8px 10px 7px!important; border-radius:7px!important; box-shadow:0 8px 20px rgba(0,0,0,.22)!important; overflow:visible!important; transform:none!important; border:1px solid rgba(216,169,78,.55)!important;}
.ptp-player-card__sticker:before{content:""!important; position:absolute!important; inset:0!important; border-radius:7px!important; border:1px solid rgba(255,255,255,.18)!important; pointer-events:none!important;}
.ptp-player-card__sticker b{display:block!important; padding:0!important; min-width:0!important; font-size:1.7rem!important; line-height:.95!important; font-weight:950!important; letter-spacing:.02em!important; text-align:center!important;}
.ptp-player-card__sticker em{display:block!important; padding:4px 5px 3px!important; margin-top:5px!important; border-radius:3px!important; font-size:.47rem!important; line-height:1!important; text-transform:uppercase!important; letter-spacing:.06em!important; font-style:normal!important; font-weight:950!important; text-align:center!important;}
.ptp-player-card__sticker--hs{background:linear-gradient(180deg,#0f5557,#073f42)!important; color:#fff!important;}
.ptp-player-card__sticker--hs em{background:var(--ptp-gold)!important; color:var(--ptp-teal-dark)!important;}
.ptp-player-card__sticker--juco{background:#fffaf4!important; color:var(--ptp-teal-dark)!important;}
.ptp-player-card__sticker--juco em{background:var(--ptp-sage)!important; color:var(--ptp-teal-dark)!important;}
.ptp-favorite-button--photo{position:absolute!important; z-index:6!important; right:14px!important; top:14px!important; flex-direction:column!important; width:58px!important; height:58px!important; min-height:58px!important; border-radius:18px!important; background:rgba(255,255,255,.94)!important; box-shadow:0 10px 24px rgba(0,0,0,.18)!important; border:1px solid rgba(13,51,55,.16)!important; color:var(--ptp-teal-dark)!important; font-size:.66rem!important;}
.ptp-favorite-button--photo strong{font-size:.66rem!important;}
.ptp-player-card--option10 .ptp-player-card__body{padding:18px 20px 18px!important; display:flex!important; flex-direction:column!important; flex:1!important;}
.ptp-player-card--option10 .ptp-player-card__body h3{font-size:1.45rem!important; line-height:1.06!important; color:var(--ptp-teal-dark)!important; margin:0 0 5px!important; letter-spacing:-.03em!important; font-weight:950!important;}
.ptp-player-card--option10 .ptp-player-card__body h3 a{text-decoration:none!important; color:inherit!important;}
.ptp-player-card__line{margin:0 0 12px!important; color:var(--ptp-teal-dark)!important; font-weight:750!important; font-size:.93rem!important;}
.ptp-player-card__line span{color:var(--ptp-gold)!important; padding:0 5px!important;}
.ptp-player-card__details{display:grid!important; grid-template-columns:1fr 1fr!important; gap:10px 18px!important; padding:13px 0!important; border-top:1px dashed rgba(13,51,55,.18)!important; border-bottom:1px dashed rgba(13,51,55,.18)!important;}
.ptp-player-card__details span{display:block!important; color:var(--ptp-muted)!important; font-size:.68rem!important; text-transform:uppercase!important; font-weight:900!important; letter-spacing:.06em!important; margin-bottom:2px!important;}
.ptp-player-card__details strong{display:block!important; color:var(--ptp-teal-dark)!important; font-size:.89rem!important; line-height:1.22!important; overflow-wrap:anywhere!important;}
.ptp-player-card__badges{display:flex!important; flex-wrap:wrap!important; gap:7px!important; margin-top:14px!important; align-items:center!important;}
.ptp-player-card__badges-label{flex-basis:100%!important; color:var(--ptp-teal-dark)!important; font-size:.72rem!important; font-weight:950!important; letter-spacing:.07em!important; text-transform:uppercase!important;}
.ptp-player-card__badge{display:inline-flex!important; border-radius:999px!important; background:#eee6db!important; border:1px solid rgba(13,51,55,.12)!important; color:var(--ptp-ink)!important; font-size:.75rem!important; font-weight:800!important; padding:6px 9px!important;}
.ptp-player-card__actions{display:grid!important; grid-template-columns:1fr 132px!important; gap:10px!important; margin-top:auto!important; padding-top:16px!important;}
.ptp-player-card__button{display:inline-flex!important; align-items:center!important; justify-content:center!important; min-height:44px!important; border-radius:10px!important; background:var(--ptp-teal)!important; color:#fff!important; font-weight:950!important; text-transform:uppercase!important; letter-spacing:.04em!important; text-decoration:none!important; box-shadow:none!important;}
.ptp-favorite-button{display:inline-flex!important; align-items:center!important; justify-content:center!important; gap:7px!important; min-height:42px!important; border:1px solid var(--ptp-teal)!important; border-radius:10px!important; background:#fffaf4!important; color:var(--ptp-teal-dark)!important; font-weight:950!important; cursor:pointer!important; text-decoration:none!important;}
.ptp-favorite-button span{font-size:1.1rem!important; line-height:1!important;}
.ptp-favorite-button.is-active,.ptp-favorite-button:hover{background:var(--ptp-gold)!important; border-color:var(--ptp-gold)!important; color:var(--ptp-teal-dark)!important;}
.ptp-lock-box{width:min(980px,calc(100% - 72px))!important; margin:42px auto!important; border-radius:18px!important; background:#fffaf4!important; border:1px solid var(--ptp-border)!important; box-shadow:var(--ptp-shadow)!important; padding:34px!important;}
.ptp-lock-box h2,.ptp-lock-box h3{color:var(--ptp-teal-dark)!important;}
/* Profile mockup */
.ptp-profile{width:min(1448px,calc(100% - 72px))!important; margin:0 auto!important; display:grid!important; grid-template-columns:minmax(380px,.82fr) minmax(520px,1.18fr)!important; gap:28px!important; padding:0 0 42px!important;}
.ptp-profile__top{display:contents!important;}
.ptp-profile__photo{grid-column:1!important; position:relative!important; border:1px solid rgba(13,51,55,.14)!important; border-radius:10px!important; overflow:hidden!important; background:#fffaf4!important; box-shadow:var(--ptp-shadow)!important; align-self:start!important;}
.ptp-profile__photo img{display:block!important; width:100%!important; height:auto!important; aspect-ratio:16/10!important; object-fit:cover!important;}
.ptp-profile__bio{grid-column:2!important; background:transparent!important; border:0!important; box-shadow:none!important; padding:0!important;}
.ptp-profile__bio .ptp-kicker{display:none!important;}
.ptp-profile__title-row{display:flex!important; justify-content:space-between!important; align-items:flex-start!important; gap:20px!important;}
.ptp-profile__title-row h2{font-size:2.9rem!important; line-height:.98!important; letter-spacing:-.05em!important; margin:0 0 10px!important; color:var(--ptp-teal-dark)!important; font-weight:950!important;}
.ptp-favorite-button--profile{min-height:48px!important; padding:0 18px!important; background:var(--ptp-teal-dark)!important; color:#fff!important; border-color:var(--ptp-teal-dark)!important; text-transform:uppercase!important; letter-spacing:.04em!important; border-radius:10px!important;}
.ptp-profile__bio>.ptp-chip{display:none!important;}
.ptp-profile__bio>.ptp-badge-row{display:flex!important; gap:10px!important; margin:0 0 18px!important;}
.ptp-profile__bio>.ptp-badge-row .ptp-badge{background:transparent!important; border:0!important; padding:0!important; color:var(--ptp-teal-dark)!important; font-size:1.05rem!important; font-weight:800!important;}
.ptp-stat-grid{display:grid!important; grid-template-columns:1fr 1fr!important; gap:14px 60px!important; padding:18px 0!important; margin:0 0 12px!important; border-top:1px solid var(--ptp-border)!important;}
.ptp-stat-grid div{background:transparent!important; border:0!important; padding:0!important; display:grid!important; grid-template-columns:auto 1fr!important; gap:8px!important;}
.ptp-stat-grid dt{font-size:.78rem!important; color:var(--ptp-muted)!important; font-weight:900!important; text-transform:uppercase!important; letter-spacing:.05em!important;}
.ptp-stat-grid dd{margin:0!important; color:var(--ptp-teal-dark)!important; font-weight:850!important;}
.ptp-profile-description{grid-column:1!important; background:#fffaf4!important; border:1px solid rgba(13,51,55,.14)!important; border-radius:0 0 10px 10px!important; padding:18px!important; box-shadow:none!important; margin-top:-28px!important; z-index:2!important;}
.ptp-profile-description h3,.ptp-profile-section h3{font-size:.82rem!important; text-transform:uppercase!important; letter-spacing:.07em!important; color:var(--ptp-teal-dark)!important; margin:0 0 10px!important;}
.ptp-profile-description p{font-size:.92rem!important; line-height:1.55!important; color:#102b2e!important; margin:0!important;}
.ptp-profile-badges-panel{grid-column:2!important; background:transparent!important; border:0!important; padding:0!important; margin:-8px 0 18px!important; box-shadow:none!important;}
.ptp-profile-badges-panel .ptp-kicker{font-size:.78rem!important; color:var(--ptp-teal-dark)!important; margin-bottom:8px!important;}
.ptp-badge-row--large .ptp-badge,.ptp-badge-row .ptp-badge{background:#eee6db!important; border:1px solid rgba(13,51,55,.12)!important; color:var(--ptp-ink)!important; border-radius:999px!important; padding:8px 12px!important; font-weight:850!important;}
.ptp-profile__sections{grid-column:1 / -1!important; display:grid!important; grid-template-columns:repeat(4,1fr)!important; gap:18px!important; margin-top:0!important;}
.ptp-profile-section,.ptp-contact-card{background:#fffaf4!important; border:1px solid rgba(13,51,55,.14)!important; border-radius:10px!important; padding:16px!important; box-shadow:none!important;}
.ptp-profile-section--wide{grid-column:1 / -1!important;}
.ptp-contact-grid{display:grid!important; grid-template-columns:repeat(4,1fr)!important; gap:16px!important;}
.ptp-contact-card h4{font-size:.78rem!important; text-transform:uppercase!important; letter-spacing:.06em!important; color:var(--ptp-teal-dark)!important; margin:0 0 10px!important;}
.ptp-contact-card dl{margin:0!important; display:grid!important; gap:8px!important;}
.ptp-contact-card dt{font-size:.68rem!important; text-transform:uppercase!important; color:var(--ptp-muted)!important; font-weight:900!important;}
.ptp-contact-card dd{margin:0!important; color:var(--ptp-teal-dark)!important; font-weight:750!important; overflow-wrap:anywhere!important;}
.ptp-related-articles{grid-column:1 / -1!important; background:#fffaf4!important; border:1px solid rgba(13,51,55,.14)!important; border-radius:10px!important; padding:18px!important; box-shadow:none!important; margin-top:18px!important;}
@media(max-width:1180px){.ptp-database__grid{grid-template-columns:repeat(2,minmax(280px,1fr))!important}.ptp-database__tools{grid-template-columns:repeat(2,minmax(0,1fr))!important}.ptp-filter-field--play-style{grid-column:span 2!important}.ptp-profile{grid-template-columns:1fr!important}.ptp-profile__photo,.ptp-profile__bio,.ptp-profile-description,.ptp-profile-badges-panel,.ptp-profile__sections{grid-column:1!important}.ptp-profile__sections,.ptp-contact-grid{grid-template-columns:repeat(2,1fr)!important}}
@media(max-width:720px){.ptp-database{width:min(100% - 32px,1448px)!important}.ptp-database__header--mockup{grid-template-columns:1fr!important}.ptp-database__tools,.ptp-database__grid{grid-template-columns:1fr!important}.ptp-filter-field--play-style{grid-column:auto!important}.ptp-player-card__actions{grid-template-columns:1fr!important}.ptp-profile{width:min(100% - 32px,1448px)!important}.ptp-profile__title-row{display:block!important}.ptp-profile__sections,.ptp-contact-grid,.ptp-stat-grid{grid-template-columns:1fr!important}.ptp-public-preview-banner{display:grid!important}.ptp-player-card__photo{height:210px!important}}

/* v1.8 exact mockup database/profile system */
.ptp-database,
.ptp-profile--mockup,
.ptp-dashboard,
.ptp-form,
.ptp-login-layout {
  width:min(1368px, calc(100% - 72px)) !important;
  margin:0 auto !important;
}
.ptp-database {
  padding:38px 0 0 !important;
  color:var(--ptp-ink, #0b3b42);
}
.ptp-database__header--mockup {
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 360px auto;
  gap:20px;
  align-items:start;
  margin:0 0 28px !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  padding:0 !important;
}
.ptp-database__header h2 {
  font-size:36px !important;
  letter-spacing:-.035em;
  color:var(--ptp-teal-dark, #073b40) !important;
  margin:0 0 4px !important;
  font-weight:950;
}
.ptp-database__header p { color:var(--ptp-ink, #0b3b42); font-size:17px; margin:0 !important; }
.ptp-database__search { align-self:center; display:block !important; }
.ptp-database__search input {
  width:100% !important; height:52px !important; border-radius:12px !important;
  border:1px solid var(--ptp-line, #e3d7c7) !important; background:rgba(255,255,255,.44) !important;
  padding:0 18px 0 48px !important; font-size:15px !important; color:var(--ptp-ink);
  box-shadow:none !important;
  background-image:linear-gradient(transparent,transparent) !important;
}
.ptp-database__tools--mockup {
  display:grid !important;
  grid-template-columns: 1.05fr 1.05fr 1.05fr 1.05fr 1.05fr;
  gap:18px 38px !important;
  background:rgba(255,250,243,.68) !important;
  border:1px solid var(--ptp-line, #e3d7c7) !important;
  border-radius:12px !important;
  padding:18px 20px !important;
  box-shadow:none !important;
  margin:0 0 18px !important;
}
.ptp-filter-field,
.ptp-database__tools label.ptp-filter-field,
.ptp-database__tools fieldset.ptp-filter-field {
  min-height:auto !important;
  grid-template-rows:auto 40px !important;
  gap:7px !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
.ptp-filter-field > span,
.ptp-filter-field > legend {
  font-size:11px !important;
  line-height:1.1 !important;
  letter-spacing:.055em !important;
  color:var(--ptp-teal-dark, #073b40) !important;
  text-transform:uppercase;
  font-weight:950 !important;
}
.ptp-filter-field select,
.ptp-filter-field input,
.ptp-height-inputs select {
  height:40px !important;
  width:100% !important;
  border:1px solid var(--ptp-line, #e3d7c7) !important;
  border-radius:9px !important;
  background:rgba(255,255,255,.45) !important;
  padding:0 14px !important;
  font-size:14px !important;
  color:#111 !important;
  box-shadow:none !important;
}
.ptp-height-inputs { display:grid !important; grid-template-columns:1fr 1fr; gap:8px; }
.ptp-filter-field--play-style { grid-column:span 2; }
.ptp-play-style-options {
  height:40px !important;
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  overflow:hidden !important;
  border:1px solid var(--ptp-line, #e3d7c7) !important;
  border-radius:9px !important;
  background:rgba(255,255,255,.45) !important;
  padding:5px 8px !important;
}
.ptp-filter-check {
  display:inline-flex !important;
  align-items:center !important;
  gap:5px !important;
  height:28px !important;
  white-space:nowrap;
  border-radius:9px !important;
  border:1px solid #dcd3c5 !important;
  background:#f1e9df !important;
  padding:0 10px !important;
  font-size:12px !important;
  color:#111 !important;
  font-weight:750 !important;
  text-transform:none !important;
}
.ptp-filter-check input { width:12px !important; height:12px !important; margin:0 !important; accent-color:var(--ptp-teal); }
.ptp-filter-actions { display:flex; gap:20px; align-items:end; justify-content:flex-start; padding-top:18px; }
.ptp-filter-apply,
.ptp-filter-clear {
  height:42px; border-radius:8px; font-weight:950; letter-spacing:.045em; text-transform:uppercase; padding:0 20px; cursor:pointer;
}
.ptp-filter-apply { background:var(--ptp-teal, #064b4e); color:white; border:1px solid var(--ptp-teal); min-width:160px; }
.ptp-filter-clear { background:transparent; color:var(--ptp-teal-dark); border:1px solid var(--ptp-teal-dark); min-width:112px; }
.ptp-results-toolbar { display:flex; justify-content:space-between; align-items:center; margin:14px 8px 10px; gap:20px; }
.ptp-results-bar { margin:0 !important; color:var(--ptp-teal-dark); font-size:16px; }
.ptp-view-toggle { display:flex; gap:8px; align-items:center; }
.ptp-view-toggle button { height:34px; border-radius:8px; border:1px solid var(--ptp-line); background:rgba(255,255,255,.45); color:var(--ptp-teal-dark); font-weight:850; padding:0 14px; }
.ptp-view-toggle button.is-active { border-color:var(--ptp-teal-dark); background:white; }
.ptp-database__grid { display:grid !important; grid-template-columns:repeat(3,minmax(280px,1fr)) !important; gap:28px !important; }
.ptp-player-card--option10 {
  border:1px solid var(--ptp-line, #e3d7c7) !important;
  border-radius:9px !important;
  overflow:hidden !important;
  background:#fffaf3 !important;
  box-shadow:0 10px 26px rgba(7,59,64,.07) !important;
  display:flex !important;
  flex-direction:column !important;
}
.ptp-player-card__header {
  height:36px !important;
  padding:0 14px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  background:linear-gradient(90deg, #064b4e, #073b40) !important;
  color:white !important;
  border:0 !important;
  text-transform:uppercase;
}
.ptp-player-card__header strong { font-size:12px !important; letter-spacing:.045em; font-weight:950; }
.ptp-player-card__header span { font-size:11px !important; opacity:.86; color:inherit !important; }
.ptp-player-card--juco .ptp-player-card__header { background:#fffaf3 !important; color:var(--ptp-teal-dark) !important; border-bottom:1px solid var(--ptp-line) !important; }
.ptp-player-card__photo {
  display:block !important;
  position:relative !important;
  height:218px !important;
  min-height:218px !important;
  overflow:hidden !important;
  background:#203b3f !important;
}
.ptp-player-card__photo img { width:100% !important; height:100% !important; object-fit:cover !important; display:block !important; filter:saturate(.94) contrast(1.05); }
.ptp-player-card__placeholder { width:100%; height:100%; display:grid; place-items:center; background:linear-gradient(135deg,#0c464a,#d7a84f); color:white; font-weight:950; }
.ptp-player-card__sticker {
  position:absolute !important;
  z-index:4 !important;
  left:16px !important;
  top:16px !important;
  display:inline-grid !important;
  gap:0 !important;
  min-width:72px !important;
  padding:8px 11px 5px !important;
  border-radius:8px !important;
  box-shadow:0 8px 20px rgba(0,0,0,.24) !important;
  border:0 !important;
  text-align:center !important;
}
.ptp-player-card__sticker b { display:block; font-size:34px !important; line-height:.9 !important; font-weight:950 !important; letter-spacing:.02em; }
.ptp-player-card__sticker em { display:block; margin:6px -6px -5px; padding:4px 4px; border-radius:0 0 5px 5px; font-size:8px !important; font-style:normal !important; line-height:1 !important; text-transform:uppercase; font-weight:950; letter-spacing:.03em; }
.ptp-player-card__sticker--hs { background:var(--ptp-teal, #064b4e) !important; color:white !important; }
.ptp-player-card__sticker--hs em { background:var(--ptp-gold,#d7a84f) !important; color:white !important; }
.ptp-player-card__sticker--juco { background:#fffaf3 !important; color:var(--ptp-teal-dark) !important; }
.ptp-player-card__sticker--juco em { background:var(--ptp-sage,#9ab9a8) !important; color:white !important; }
.ptp-favorite-button--photo,
.ptp-favorite-button--profile-photo {
  position:absolute !important;
  z-index:5 !important;
  right:18px !important;
  top:18px !important;
  width:54px !important;
  min-height:68px !important;
  border-radius:28px !important;
  background:white !important;
  color:var(--ptp-teal-dark) !important;
  border:1px solid rgba(7,59,64,.12) !important;
  box-shadow:0 8px 22px rgba(0,0,0,.16) !important;
  display:grid !important;
  place-items:center !important;
  align-content:center !important;
  gap:2px !important;
  padding:7px 0 !important;
  font-size:0 !important;
}
.ptp-favorite-button--photo span,
.ptp-favorite-button--profile-photo span { font-size:28px !important; line-height:1 !important; }
.ptp-favorite-button--photo strong,
.ptp-favorite-button--profile-photo strong { font-size:10px !important; font-weight:900; line-height:1; }
.ptp-player-card__body { padding:16px 20px 18px !important; flex:1; display:flex; flex-direction:column; }
.ptp-player-card__body h3 { margin:0 !important; font-size:22px !important; line-height:1.05 !important; color:var(--ptp-teal-dark) !important; letter-spacing:-.03em; font-weight:950 !important; }
.ptp-player-card__line { margin:7px 0 12px !important; color:var(--ptp-teal-dark) !important; font-size:13px !important; font-weight:800 !important; }
.ptp-player-card__line span { color:var(--ptp-gold); margin:0 7px; }
.ptp-player-card__details { display:grid !important; grid-template-columns:1fr .78fr !important; gap:5px 10px !important; border-top:1px dotted #cfc5b7; padding-top:10px; margin-top:2px; }
.ptp-player-card__details div { display:grid; grid-template-columns:18px 1fr; align-items:start; column-gap:8px; padding:0 !important; border:0 !important; background:transparent !important; }
.ptp-player-card__details div:before { color:var(--ptp-teal-dark); opacity:.85; font-size:16px; line-height:1.3; }
.ptp-player-card__details div:nth-child(1):before { content:'▱'; }
.ptp-player-card__details div:nth-child(2):before { content:'⌖'; }
.ptp-player-card__details div:nth-child(3):before { content:'↗'; }
.ptp-player-card__details div:nth-child(4):before { content:'▥'; }
.ptp-player-card__details span { display:none !important; }
.ptp-player-card__details strong { font-size:13px !important; line-height:1.35 !important; color:var(--ptp-teal-dark); font-weight:800 !important; }
.ptp-player-card__details div:nth-child(4) strong:before { content:'Projected Level\A'; white-space:pre; display:block; font-size:12px; font-weight:800; color:var(--ptp-teal-dark); }
.ptp-player-card__badges { display:flex !important; flex-wrap:wrap; gap:8px !important; margin:14px 0 16px !important; }
.ptp-player-card__badges-label { flex-basis:100%; color:var(--ptp-teal-dark); text-transform:uppercase; font-size:11px; font-weight:950; letter-spacing:.035em; }
.ptp-player-card__badge { border:1px solid #ded6ca !important; background:#eee7dd !important; color:#151515 !important; border-radius:7px !important; padding:7px 12px !important; font-size:11px !important; font-weight:800 !important; }
.ptp-player-card__actions { margin-top:auto !important; display:grid !important; grid-template-columns:1fr 138px !important; gap:12px !important; align-items:center; }
.ptp-player-card__button { display:grid !important; place-items:center !important; height:44px !important; border-radius:7px !important; background:var(--ptp-teal) !important; color:white !important; font-size:13px !important; letter-spacing:.04em !important; text-transform:uppercase; font-weight:950 !important; text-decoration:none !important; }
.ptp-favorite-button--card { height:44px !important; border-radius:7px !important; background:transparent !important; border:1px solid var(--ptp-teal-dark) !important; color:var(--ptp-teal-dark) !important; display:flex !important; justify-content:center !important; align-items:center !important; gap:8px !important; padding:0 14px !important; font-size:0 !important; box-shadow:none !important; }
.ptp-favorite-button--card span { font-size:24px !important; }
.ptp-favorite-button--card strong { font-size:13px !important; text-transform:uppercase; letter-spacing:.04em; font-weight:950; }

/* Exact profile mockup */
.ptp-app-page-shell--profile { padding-top:26px !important; }
.ptp-profile--mockup { padding:0 0 34px !important; }
.ptp-profile__back { display:inline-flex; margin:0 0 14px; color:var(--ptp-teal-dark); font-weight:900; font-size:13px; text-decoration:none; }
.ptp-profile__hero-grid { display:grid; grid-template-columns: minmax(430px, .9fr) minmax(0, 1.15fr); gap:28px; align-items:start; }
.ptp-profile__left { display:grid; gap:0; }
.ptp-profile__photo--mockup { min-height:360px !important; height:360px !important; padding:0 !important; border-radius:6px 6px 0 0 !important; overflow:hidden !important; box-shadow:none !important; border:1px solid var(--ptp-line) !important; border-bottom:0 !important; position:relative !important; background:#203b3f !important; }
.ptp-profile__photo--mockup img { width:100% !important; height:100% !important; object-fit:cover !important; display:block !important; }
.ptp-profile-description--mockup { margin-top:0 !important; border-radius:0 0 7px 7px !important; border:1px solid var(--ptp-line) !important; background:rgba(255,250,243,.86) !important; box-shadow:none !important; padding:14px 16px 20px !important; }
.ptp-profile-description--mockup h3,
.ptp-profile-section h3 { font-size:12px !important; text-transform:uppercase; letter-spacing:.045em; color:var(--ptp-teal-dark); margin:0 0 8px !important; }
.ptp-profile-description--mockup p { margin:0 !important; font-size:13px !important; line-height:1.55; color:#111; }
.ptp-profile__right { min-width:0; }
.ptp-profile__summary { background:transparent !important; border:0 !important; padding:4px 0 18px !important; }
.ptp-profile__title-actions { display:flex; justify-content:space-between; gap:22px; align-items:start; border-bottom:1px solid var(--ptp-line); padding-bottom:14px; margin-bottom:16px; }
.ptp-profile__title-actions h2 { font-size:44px !important; line-height:1 !important; color:var(--ptp-teal-dark) !important; margin:0 0 9px !important; font-weight:950; letter-spacing:-.04em; }
.ptp-profile__meta-line { margin:0 !important; color:var(--ptp-teal-dark); font-size:18px; font-weight:700; }
.ptp-profile__meta-line span { color:var(--ptp-gold); padding:0 12px; }
.ptp-profile__actions { display:flex; gap:14px; align-items:center; }
.ptp-favorite-button--profile { height:44px !important; border-radius:7px !important; padding:0 20px !important; background:var(--ptp-teal) !important; color:white !important; border:1px solid var(--ptp-teal) !important; display:flex !important; gap:10px; align-items:center; font-weight:950; text-transform:uppercase; }
.ptp-share-button { height:44px; border-radius:7px; padding:0 18px; background:transparent; border:1px solid var(--ptp-teal-dark); color:var(--ptp-teal-dark); font-weight:950; text-transform:uppercase; letter-spacing:.035em; }
.ptp-profile__quick-grid { display:grid; grid-template-columns:1fr .75fr; gap:14px 44px; margin:0 0 18px; }
.ptp-profile__quick-grid div { display:grid; grid-template-columns:24px 1fr; column-gap:10px; align-items:start; color:var(--ptp-teal-dark); }
.ptp-profile__quick-grid span { font-size:20px; line-height:1.25; opacity:.9; }
.ptp-profile__quick-grid em { display:block; font-style:normal; font-size:13px; color:var(--ptp-teal-dark); }
.ptp-profile__quick-grid strong { display:block; font-size:14px; line-height:1.35; font-weight:800; color:var(--ptp-teal-dark); }
.ptp-profile__styles { display:flex; flex-wrap:wrap; gap:12px; align-items:center; margin:14px 0 0; }
.ptp-profile__styles > span { flex-basis:100%; text-transform:uppercase; font-size:12px; letter-spacing:.045em; font-weight:950; color:var(--ptp-teal-dark); }
.ptp-profile__styles b { border:1px solid #ded6ca; background:#eee7dd; border-radius:7px; padding:7px 14px; font-size:12px; color:#111; font-weight:800; }
.ptp-profile__contact-strip { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.ptp-contact-card--mockup { border:1px solid var(--ptp-line) !important; background:rgba(255,250,243,.72) !important; border-radius:7px !important; padding:20px 18px !important; box-shadow:none !important; min-height:158px; }
.ptp-contact-card--mockup h4 { font-size:12px !important; text-transform:uppercase; letter-spacing:.045em; margin:0 0 14px !important; color:var(--ptp-teal-dark); }
.ptp-contact-card--mockup p { margin:0 0 10px !important; display:flex; gap:10px; align-items:flex-start; font-size:13px; color:var(--ptp-teal-dark); }
.ptp-contact-card--mockup a { color:inherit; text-decoration:none; }
.ptp-profile__lower-grid { display:grid; grid-template-columns:1fr 1fr 1fr; gap:16px; margin-top:20px; }
.ptp-profile-section { border:1px solid var(--ptp-line) !important; background:rgba(255,250,243,.72) !important; border-radius:7px !important; padding:16px !important; box-shadow:none !important; margin:0 !important; }
.ptp-profile-section p { font-size:13px; line-height:1.55; color:#111; }
.ptp-profile-section--film { grid-column:1 / 2; }
.ptp-media-actions { display:flex; gap:18px; flex-wrap:wrap; }
.ptp-media-actions a { min-height:52px; border-radius:7px; border:1px solid var(--ptp-teal-dark); display:inline-flex; align-items:center; padding:0 20px; color:var(--ptp-teal-dark); font-weight:950; text-decoration:none; text-transform:uppercase; font-size:13px; }
.ptp-media-actions a:first-child { background:var(--ptp-teal); color:white; border-color:var(--ptp-teal); }
.ptp-profile-related { margin-top:20px !important; border:1px solid var(--ptp-line) !important; background:rgba(255,250,243,.72) !important; border-radius:7px !important; box-shadow:none !important; padding:16px !important; }
.ptp-profile-related__heading h3 { font-size:12px !important; text-transform:uppercase; letter-spacing:.045em; }
.ptp-related-article-grid { grid-template-columns:repeat(3, 1fr) !important; gap:14px !important; }
.ptp-related-article-card { display:grid !important; grid-template-columns:90px 1fr !important; border:1px solid var(--ptp-line) !important; border-radius:7px !important; box-shadow:none !important; background:#fffaf3 !important; }
.ptp-related-article-card__image { min-height:74px !important; height:74px !important; }
.ptp-related-article-card__image img { height:74px !important; }
.ptp-related-article-card__body { padding:8px !important; }
.ptp-related-article-card h4 { font-size:13px !important; line-height:1.25; margin:2px 0 !important; }
.ptp-related-article-card p { display:none; }
@media (max-width: 1180px) {
  .ptp-database__grid { grid-template-columns:repeat(2,minmax(280px,1fr)) !important; }
  .ptp-profile__hero-grid { grid-template-columns:1fr; }
  .ptp-profile__contact-strip, .ptp-profile__lower-grid { grid-template-columns:repeat(2,1fr); }
}
@media (max-width: 760px) {
  .ptp-database, .ptp-profile--mockup, .ptp-dashboard, .ptp-form, .ptp-login-layout { width:min(100% - 28px, 1368px) !important; }
  .ptp-database__header--mockup { grid-template-columns:1fr; }
  .ptp-database__tools--mockup { grid-template-columns:1fr !important; }
  .ptp-filter-field--play-style { grid-column:auto; }
  .ptp-database__grid { grid-template-columns:1fr !important; }
  .ptp-profile__title-actions { display:block; }
  .ptp-profile__actions { margin-top:14px; }
  .ptp-profile__quick-grid, .ptp-profile__contact-strip, .ptp-profile__lower-grid, .ptp-related-article-grid { grid-template-columns:1fr !important; }
}

/* v1.9 filter and white-background refinements */
.ptp-database,
.ptp-profile,
.ptp-dashboard,
.ptp-events,
.ptp-articles,
.ptp-login-layout,
.ptp-form {
  --ptp-cream: #ffffff;
}
.ptp-database {
  background: #ffffff !important;
}
.ptp-database__tools--mockup {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(165px, 1fr)) !important;
  align-items: end !important;
  gap: 1.1rem 1.25rem !important;
  background: #ffffff !important;
  border: 1px solid rgba(13,51,55,.14) !important;
  border-radius: 18px !important;
  padding: 1.2rem !important;
}
.ptp-database__tools--mockup .ptp-filter-field,
.ptp-database__tools--mockup label.ptp-filter-field {
  display: grid !important;
  align-content: start !important;
  gap: .45rem !important;
  min-width: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  padding: 0 !important;
}
.ptp-database__tools--mockup .ptp-filter-field > span,
.ptp-database__tools--mockup .ptp-filter-field > legend {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  color: var(--ptp-teal-dark) !important;
  font-size: .74rem !important;
  font-weight: 950 !important;
  letter-spacing: .07em !important;
  text-transform: uppercase !important;
  line-height: 1.15 !important;
}
.ptp-database__tools--mockup select,
.ptp-database__tools--mockup input[type="search"],
.ptp-database__tools--mockup input[type="text"],
.ptp-database__tools--mockup input[type="number"],
.ptp-play-style-picker {
  width: 100% !important;
  min-height: 48px !important;
  border: 1px solid rgba(13,51,55,.18) !important;
  border-radius: 10px !important;
  background: #ffffff !important;
  color: var(--ptp-ink) !important;
  font: inherit !important;
  font-weight: 700 !important;
  box-shadow: none !important;
}
.ptp-database__tools--mockup select,
.ptp-database__tools--mockup input {
  padding: .64rem .8rem !important;
}
.ptp-filter-field--play-style {
  grid-column: span 2 !important;
}
.ptp-play-style-picker {
  display: flex !important;
  align-items: center !important;
  gap: .5rem !important;
  padding: .32rem .35rem .32rem .55rem !important;
  min-height: 48px !important;
  overflow: hidden !important;
}
.ptp-play-style-selected {
  flex: 1 1 auto !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: .38rem !important;
  min-width: 0 !important;
}
.ptp-play-style-placeholder {
  color: var(--ptp-muted) !important;
  font-size: .86rem !important;
  font-weight: 700 !important;
  white-space: nowrap !important;
}
.ptp-play-style-picker select {
  flex: 0 0 150px !important;
  width: 150px !important;
  min-height: 38px !important;
  border: 0 !important;
  border-left: 1px solid rgba(13,51,55,.12) !important;
  border-radius: 0 !important;
  background: transparent !important;
  padding: .35rem .5rem !important;
  font-size: .84rem !important;
}
.ptp-play-style-chip {
  display: inline-flex !important;
  align-items: center !important;
  gap: .42rem !important;
  border: 1px solid rgba(13,51,55,.12) !important;
  border-radius: 999px !important;
  background: #f3eee7 !important;
  color: var(--ptp-teal-dark) !important;
  padding: .34rem .55rem !important;
  font-size: .76rem !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  cursor: pointer !important;
}
.ptp-play-style-chip b {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 16px !important;
  height: 16px !important;
  border-radius: 999px !important;
  background: rgba(13,51,55,.08) !important;
  font-size: .82rem !important;
  line-height: 1 !important;
}
.ptp-filter-actions {
  display: flex !important;
  align-items: end !important;
  gap: .75rem !important;
  min-height: 70px !important;
}
.ptp-filter-apply,
.ptp-filter-clear {
  min-height: 48px !important;
  border-radius: 10px !important;
}
@media (max-width: 1180px) {
  .ptp-database__tools--mockup { grid-template-columns: repeat(3, minmax(165px, 1fr)) !important; }
  .ptp-filter-field--play-style { grid-column: span 2 !important; }
}
@media (max-width: 760px) {
  .ptp-database__tools--mockup { grid-template-columns: 1fr !important; }
  .ptp-filter-field--play-style { grid-column: auto !important; }
  .ptp-play-style-picker { display: grid !important; }
  .ptp-play-style-picker select { width: 100% !important; border-left: 0 !important; border-top: 1px solid rgba(13,51,55,.12) !important; }
  .ptp-filter-actions { min-height: 0 !important; }
}

/* v2.0 filter/card polish requested 2026-06-10 */
.ptp-database__tools--mockup .ptp-filter-field--play-style {
  grid-column: span 2 !important;
  align-self: end !important;
}
.ptp-database__tools--mockup .ptp-play-style-picker {
  height: 40px !important;
  min-height: 40px !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 142px !important;
  align-items: center !important;
  gap: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 1px solid var(--ptp-line, #e3d7c7) !important;
  border-radius: 9px !important;
  background: #ffffff !important;
}
.ptp-database__tools--mockup .ptp-play-style-selected {
  height: 100% !important;
  min-width: 0 !important;
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 6px !important;
  padding: 0 8px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scrollbar-width: thin;
}
.ptp-database__tools--mockup .ptp-play-style-placeholder { display: none !important; }
.ptp-database__tools--mockup .ptp-play-style-picker select {
  height: 38px !important;
  min-height: 38px !important;
  width: 142px !important;
  flex: none !important;
  border: 0 !important;
  border-left: 1px solid var(--ptp-line, #e3d7c7) !important;
  border-radius: 0 !important;
  background: #ffffff !important;
  padding: 0 26px 0 10px !important;
  font-size: 13px !important;
}
.ptp-database__tools--mockup .ptp-play-style-chip {
  height: 28px !important;
  flex: 0 0 auto !important;
  border-radius: 8px !important;
  padding: 0 8px !important;
  gap: 6px !important;
  background: #f4f1ec !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  border: 1px solid #ded6ca !important;
  font-size: 12px !important;
  font-weight: 800 !important;
}
.ptp-database__tools--mockup .ptp-play-style-chip b {
  width: 15px !important;
  height: 15px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  background: rgba(7,59,64,.08) !important;
}

.ptp-player-card,
.ptp-player-card__body {
  background: #ffffff !important;
}
.ptp-player-card__header span { display: none !important; }
.ptp-player-card__header {
  grid-template-columns: 1fr !important;
}
.ptp-player-card__sticker {
  display: inline-flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  width: 76px !important;
  min-height: 66px !important;
  padding: 9px 8px 7px !important;
}
.ptp-player-card__sticker b {
  display: block !important;
  margin: 0 !important;
  font-size: 31px !important;
  line-height: .9 !important;
  font-weight: 900 !important;
}
.ptp-player-card__sticker em {
  display: block !important;
  width: 100% !important;
  margin: 7px 0 0 !important;
  padding: 4px 2px !important;
  border-radius: 4px !important;
  text-align: center !important;
  white-space: nowrap !important;
  font-size: 7px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
}
.ptp-player-card__sticker--juco { width: 92px !important; }
.ptp-player-card__sticker--juco b { font-size: 27px !important; }

.ptp-player-card__details div:before {
  content: '' !important;
  width: 18px !important;
  height: 18px !important;
  display: block !important;
  background-color: var(--ptp-teal-dark, #073b40) !important;
  opacity: .9 !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: 18px 18px !important;
}
/* school: graduation cap */
.ptp-player-card__details div:nth-child(1):before {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 3 1.5 8.4 12 14 22.5 8.4 12 3Zm-6 8.4v4.1c0 2 3.1 3.5 6 3.5s6-1.5 6-3.5v-4.1l-6 3.2-6-3.2Zm14-1.2v5.6h1.6V9.4L20 10.2Z'/%3E%3C/svg%3E") center / contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 3 1.5 8.4 12 14 22.5 8.4 12 3Zm-6 8.4v4.1c0 2 3.1 3.5 6 3.5s6-1.5 6-3.5v-4.1l-6 3.2-6-3.2Zm14-1.2v5.6h1.6V9.4L20 10.2Z'/%3E%3C/svg%3E") center / contain no-repeat;
}
/* state: location marker */
.ptp-player-card__details div:nth-child(2):before {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a7 7 0 0 0-7 7c0 5.25 7 13 7 13s7-7.75 7-13a7 7 0 0 0-7-7Zm0 9.8A2.8 2.8 0 1 1 12 6.2a2.8 2.8 0 0 1 0 5.6Z'/%3E%3C/svg%3E") center / contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a7 7 0 0 0-7 7c0 5.25 7 13 7 13s7-7.75 7-13a7 7 0 0 0-7-7Zm0 9.8A2.8 2.8 0 1 1 12 6.2a2.8 2.8 0 0 1 0 5.6Z'/%3E%3C/svg%3E") center / contain no-repeat;
}
/* GPA: thin upward diagonal with a squiggle */
.ptp-player-card__details div:nth-child(3):before {
  background-color: transparent !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M3 17 C6 12 8 15 11 10 C13 7 15 8 18 4' stroke='%23073b40' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M18 4h-4M18 4v4' stroke='%23073b40' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}
/* projected level: three ascending bars */
.ptp-player-card__details div:nth-child(4):before {
  background-color: transparent !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='4' y='13' width='3.2' height='7' rx='1' fill='%23073b40'/%3E%3Crect x='10.4' y='9' width='3.2' height='11' rx='1' fill='%23073b40'/%3E%3Crect x='16.8' y='4' width='3.2' height='16' rx='1' fill='%23073b40'/%3E%3C/svg%3E") !important;
}
.ptp-favorite-button span {
  font-family: Arial, Helvetica, sans-serif !important;
  font-weight: 400 !important;
  text-shadow: none !important;
}
.ptp-favorite-button--photo span,
.ptp-favorite-button--profile-photo span { font-size: 24px !important; }
.ptp-favorite-button--card span { font-size: 19px !important; }
.ptp-favorite-button--card strong { font-weight: 850 !important; }


/* v2.1 focused card cleanup: centered images, redesigned HS/JUCO tag, no photo save button */
.ptp-player-card__photo img,
.ptp-player-card--option10 .ptp-player-card__photo img{
    object-fit:cover!important;
    object-position:center center!important;
}
.ptp-player-card__photo .ptp-favorite-button--photo,
.ptp-player-card__photo .ptp-favorite-button--profile-photo{
    display:none!important;
}
.ptp-player-card__sticker{
    top:18px!important;
    left:18px!important;
    z-index:6!important;
    display:inline-flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    justify-content:flex-start!important;
    min-width:0!important;
    min-height:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    overflow:visible!important;
}
.ptp-player-card__sticker:before{display:none!important;content:none!important;}
.ptp-player-card__sticker b{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:70px!important;
    height:58px!important;
    min-width:70px!important;
    padding:0!important;
    margin:0!important;
    border-radius:8px 8px 8px 0!important;
    font-size:1.9rem!important;
    line-height:1!important;
    font-weight:950!important;
    letter-spacing:.02em!important;
    text-align:center!important;
    box-shadow:0 8px 18px rgba(0,0,0,.22)!important;
}
.ptp-player-card__sticker em{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:70px!important;
    height:22px!important;
    padding:0 7px!important;
    margin:0!important;
    border-radius:0 0 5px 5px!important;
    font-size:.5rem!important;
    line-height:1!important;
    text-transform:uppercase!important;
    letter-spacing:.045em!important;
    font-style:normal!important;
    font-weight:950!important;
    text-align:center!important;
    box-shadow:0 8px 18px rgba(0,0,0,.16)!important;
}
.ptp-player-card__sticker--hs b{
    background:linear-gradient(180deg,#0f5557,#073f42)!important;
    color:#fff!important;
    border:1px solid rgba(255,255,255,.16)!important;
}
.ptp-player-card__sticker--hs em{
    background:var(--ptp-gold)!important;
    color:#fff!important;
}
.ptp-player-card__sticker--juco b{
    background:#fff!important;
    color:var(--ptp-teal-dark)!important;
    border:1px solid rgba(13,51,55,.16)!important;
}
.ptp-player-card__sticker--juco em{
    background:var(--ptp-sage)!important;
    color:var(--ptp-teal-dark)!important;
}
.ptp-player-card__actions .ptp-favorite-button--card span{font-weight:400!important;text-shadow:none!important;}


/* v2.3 exact white background + refined stacked HS/JUCO labels */
html,
body,
body.ptp-site,
.ptp-main,
.ptp-app-page-shell,
.ptp-database,
.ptp-profile,
.ptp-dashboard,
.ptp-events,
.ptp-articles,
.ptp-resources-hub,
.ptp-form,
.ptp-login-layout,
.entry-content,
.site,
#page {
  background: #ffffff !important;
}
.ptp-database__tools,
.ptp-database__tools--mockup,
.ptp-database__search,
.ptp-database__search input,
.ptp-filter-field select,
.ptp-filter-field input,
.ptp-height-inputs select,
.ptp-play-style-picker,
.ptp-player-card,
.ptp-player-card--option10,
.ptp-player-card__body,
.ptp-player-card__details,
.ptp-player-card__footer,
.ptp-profile-description--mockup,
.ptp-profile-section,
.ptp-profile-related,
.ptp-contact-card--mockup,
.ptp-related-article-card,
.ptp-dashboard-card,
.ptp-dashboard-list,
.ptp-notifications-panel {
  background: #ffffff !important;
}
.ptp-player-card__photo img,
.ptp-player-card--option10 .ptp-player-card__photo img {
  object-fit: cover !important;
  object-position: center center !important;
}
.ptp-player-card__photo .ptp-favorite-button--photo,
.ptp-player-card__photo .ptp-favorite-button--profile-photo {
  display: none !important;
}
.ptp-player-card__sticker,
.ptp-player-card--option10 .ptp-player-card__sticker {
  position: absolute !important;
  top: 16px !important;
  left: 16px !important;
  z-index: 8 !important;
  display: inline-flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: 86px !important;
  min-width: 86px !important;
  max-width: 86px !important;
  min-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
  text-align: center !important;
}
.ptp-player-card__sticker b,
.ptp-player-card--option10 .ptp-player-card__sticker b {
  width: 86px !important;
  height: 54px !important;
  min-width: 86px !important;
  max-width: 86px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 7px !important;
  margin: 0 !important;
  border-radius: 8px !important;
  box-sizing: border-box !important;
  text-align: center !important;
  line-height: 1 !important;
  letter-spacing: .025em !important;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-weight: 850 !important;
  box-shadow: 0 8px 18px rgba(0,0,0,.20) !important;
  white-space: nowrap !important;
  overflow: hidden !important;
}
.ptp-player-card__sticker--hs b,
.ptp-player-card--option10 .ptp-player-card__sticker--hs b {
  font-size: 30px !important;
  background: linear-gradient(180deg, #0f5557, #073f42) !important;
  color: #ffffff !important;
  border: 1px solid rgba(255,255,255,.14) !important;
}
.ptp-player-card__sticker--juco b,
.ptp-player-card--option10 .ptp-player-card__sticker--juco b {
  font-size: 26px !important;
  background: #ffffff !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  border: 1px solid rgba(13,51,55,.16) !important;
}
.ptp-player-card__sticker em,
.ptp-player-card--option10 .ptp-player-card__sticker em {
  width: 62px !important;
  min-width: 62px !important;
  max-width: 62px !important;
  height: 20px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 5px !important;
  margin: -1px auto 0 !important;
  border-radius: 0 0 5px 5px !important;
  box-sizing: border-box !important;
  text-align: center !important;
  font-style: normal !important;
  font-size: 6.6px !important;
  line-height: 1 !important;
  font-weight: 850 !important;
  letter-spacing: .025em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  box-shadow: 0 6px 13px rgba(0,0,0,.16) !important;
}
.ptp-player-card__sticker--hs em,
.ptp-player-card--option10 .ptp-player-card__sticker--hs em {
  background: var(--ptp-gold, #d7a84f) !important;
  color: #ffffff !important;
}
.ptp-player-card__sticker--juco em,
.ptp-player-card--option10 .ptp-player-card__sticker--juco em {
  width: 72px !important;
  min-width: 72px !important;
  max-width: 72px !important;
  font-size: 6.2px !important;
  background: var(--ptp-sage, #9ab9a8) !important;
  color: var(--ptp-teal-dark, #073b40) !important;
}
.ptp-player-card__body,
.ptp-player-card__body h3,
.ptp-player-card__line,
.ptp-player-card__details strong,
.ptp-player-card__details div:nth-child(4) strong:before,
.ptp-player-card__badges-label,
.ptp-player-card__badge {
  font-weight: 500 !important;
}
.ptp-player-card__body h3 {
  font-weight: 700 !important;
}
.ptp-player-card__button,
.ptp-favorite-button--card strong {
  font-weight: 750 !important;
}
.ptp-database__header h2,
.ptp-database__header--mockup h2 {
  font-weight: 650 !important;
}
.ptp-favorite-button--card span,
.ptp-favorite-button span {
  font-weight: 300 !important;
  opacity: .75 !important;
  text-shadow: none !important;
}

/* v2.4 database refinements: clean search, list view, non-destructive crop support */
.ptp-database,
.ptp-database * {
  box-sizing: border-box;
}
.ptp-database__search {
  background: #ffffff !important;
  border: 1px solid rgba(13,51,55,.22) !important;
  border-radius: 12px !important;
  box-shadow: none !important;
  padding: 0 16px 0 44px !important;
  height: 52px !important;
  overflow: hidden !important;
}
.ptp-database__search:before {
  content: "" !important;
  width: 16px !important;
  height: 16px !important;
  left: 17px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  border: 2px solid rgba(13,51,55,.36) !important;
  border-radius: 999px !important;
  background: transparent !important;
}
.ptp-database__search:after {
  content: "" !important;
  position: absolute !important;
  left: 31px !important;
  top: 31px !important;
  width: 8px !important;
  height: 2px !important;
  background: rgba(13,51,55,.36) !important;
  transform: rotate(45deg) !important;
  border-radius: 999px !important;
}
.ptp-database__search input,
.ptp-database__search input[type="search"] {
  appearance: none !important;
  -webkit-appearance: none !important;
  width: 100% !important;
  height: 100% !important;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 0 !important;
}
.ptp-database__search input::-webkit-search-decoration,
.ptp-database__search input::-webkit-search-cancel-button,
.ptp-database__search input::-webkit-search-results-button,
.ptp-database__search input::-webkit-search-results-decoration {
  -webkit-appearance: none;
}
.ptp-database__tools--mockup .ptp-filter-field--play-style {
  grid-template-rows: auto 52px !important;
}
.ptp-database__tools--mockup .ptp-play-style-picker {
  min-height: 52px !important;
  height: 52px !important;
  align-items: center !important;
  background: #ffffff !important;
  overflow: hidden !important;
}
.ptp-database__tools--mockup .ptp-play-style-selected {
  min-height: 0 !important;
  height: auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 7px !important;
  flex: 1 1 auto !important;
  overflow: hidden !important;
  white-space: nowrap !important;
}
.ptp-database__tools--mockup .ptp-play-style-picker select {
  align-self: stretch !important;
  min-height: 50px !important;
  height: 50px !important;
  flex: 0 0 44px !important;
  width: 44px !important;
  max-width: 44px !important;
  color: transparent !important;
  padding: 0 !important;
  background-color: #ffffff !important;
  cursor: pointer !important;
}
.ptp-database__tools--mockup .ptp-play-style-picker select option {
  color: #172629 !important;
}
.ptp-database__tools--mockup .ptp-play-style-chip {
  flex: 0 0 auto !important;
  max-width: 140px !important;
  overflow: hidden !important;
}
.ptp-database__tools--mockup .ptp-play-style-chip span {
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}
.ptp-view-toggle button {
  cursor: pointer;
}
.ptp-database__grid {
  transition: none !important;
}
.ptp-database.ptp-database--list-view .ptp-database__grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 14px !important;
}
.ptp-database.ptp-database--list-view .ptp-player-card--option10 {
  display: grid !important;
  grid-template-columns: 210px minmax(0, 1fr) !important;
  grid-template-rows: auto 1fr !important;
  min-height: 220px !important;
}
.ptp-database.ptp-database--list-view .ptp-player-card--option10 .ptp-player-card__header {
  grid-column: 1 / -1 !important;
}
.ptp-database.ptp-database--list-view .ptp-player-card--option10 .ptp-player-card__photo {
  height: 100% !important;
  min-height: 220px !important;
  aspect-ratio: auto !important;
}
.ptp-database.ptp-database--list-view .ptp-player-card--option10 .ptp-player-card__body {
  display: grid !important;
  grid-template-columns: minmax(0, 1.1fr) minmax(260px, .9fr) !important;
  grid-template-rows: auto auto auto 1fr auto !important;
  gap: 0 22px !important;
  padding: 18px 20px !important;
}
.ptp-database.ptp-database--list-view .ptp-player-card--option10 .ptp-player-card__line {
  grid-column: 1 / 2 !important;
}
.ptp-database.ptp-database--list-view .ptp-player-card--option10 .ptp-player-card__details {
  grid-column: 2 / 3 !important;
  grid-row: 1 / span 3 !important;
  margin-top: 0 !important;
}
.ptp-database.ptp-database--list-view .ptp-player-card--option10 .ptp-player-card__badges {
  grid-column: 1 / 2 !important;
  align-self: end !important;
}
.ptp-database.ptp-database--list-view .ptp-player-card--option10 .ptp-player-card__actions {
  grid-column: 1 / -1 !important;
  margin-top: 14px !important;
}
@media (max-width: 800px) {
  .ptp-database.ptp-database--list-view .ptp-player-card--option10 {
    display: flex !important;
    flex-direction: column !important;
  }
  .ptp-database.ptp-database--list-view .ptp-player-card--option10 .ptp-player-card__body {
    display: flex !important;
    flex-direction: column !important;
  }
}


/* v2.5 hotfix: make play-style selector usable, image focus effective, and dropdown cleanup safe */
.ptp-player-card__photo img,
.ptp-profile__photo img,
.ptp-card__image img,
.ptp-article-card img,
.ptp-related-article img {
  object-fit: cover !important;
  object-position: var(--ptp-image-position, center center) !important;
}
.ptp-database__tools--mockup .ptp-filter-field--play-style {
  grid-template-rows: auto 52px !important;
}
.ptp-database__tools--mockup .ptp-play-style-picker {
  position: relative !important;
  display: flex !important;
  min-height: 52px !important;
  height: 52px !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 6px 8px !important;
  background: #ffffff !important;
  border: 1px solid rgba(13,51,55,.22) !important;
  border-radius: 12px !important;
  overflow: visible !important;
}
.ptp-database__tools--mockup .ptp-play-style-selected {
  display: flex !important;
  flex: 1 1 auto !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 7px !important;
  min-width: 0 !important;
  overflow: hidden !important;
  white-space: nowrap !important;
}
.ptp-database__tools--mockup .ptp-play-style-picker select {
  display: block !important;
  position: static !important;
  visibility: visible !important;
  opacity: 1 !important;
  flex: 0 0 46px !important;
  width: 46px !important;
  max-width: 46px !important;
  min-width: 46px !important;
  height: 40px !important;
  min-height: 40px !important;
  color: transparent !important;
  background-color: #ffffff !important;
  background-position: center !important;
  border-left: 1px solid rgba(13,51,55,.14) !important;
  border-radius: 8px !important;
  cursor: pointer !important;
  z-index: 3 !important;
}
.ptp-database__tools--mockup .ptp-play-style-picker select option {
  color: #172629 !important;
}
.ptp-database__tools--mockup .ptp-play-style-chip {
  flex: 0 0 auto !important;
  max-width: 150px !important;
}
.ptp-database__tools--mockup .ptp-play-style-placeholder {
  display: none !important;
}


/* v2.7: list-view filtering/count repair + smaller list badges + locked GPA/projection */
.ptp-database.ptp-database--list-view .ptp-player-card--option10[hidden],
.ptp-database.ptp-database--grid-view .ptp-player-card--option10[hidden],
.ptp-database .ptp-player-card--option10[hidden] {
  display: none !important;
}

/* In list view, keep the HS/JUCO sticker smaller so it does not dominate the photo. */
.ptp-database.ptp-database--list-view .ptp-player-card--option10 .ptp-player-card__sticker {
  top: 10px !important;
  left: 10px !important;
  width: 58px !important;
  min-width: 58px !important;
  max-width: 58px !important;
  border-radius: 8px !important;
  box-shadow: 0 8px 18px rgba(23, 37, 38, .20) !important;
}

.ptp-database.ptp-database--list-view .ptp-player-card--option10 .ptp-player-card__sticker b {
  width: 58px !important;
  min-width: 58px !important;
  max-width: 58px !important;
  height: 31px !important;
  padding: 0 4px !important;
  border-radius: 8px 8px 0 0 !important;
  font-size: 14px !important;
  line-height: 1 !important;
  letter-spacing: .01em !important;
}

.ptp-database.ptp-database--list-view .ptp-player-card--option10 .ptp-player-card__sticker em {
  width: 43px !important;
  min-width: 43px !important;
  max-width: 43px !important;
  min-height: 16px !important;
  padding: 2px 3px !important;
  border-radius: 0 0 5px 5px !important;
  font-size: 5.5px !important;
  line-height: 1.02 !important;
  letter-spacing: .025em !important;
}

/* List view actions: View Profile and Save should match widths. */
.ptp-database.ptp-database--list-view .ptp-player-card--option10 .ptp-player-card__actions {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 12px !important;
  width: min(100%, 430px) !important;
  margin-top: 12px !important;
}

.ptp-database.ptp-database--list-view .ptp-player-card--option10 .ptp-player-card__button,
.ptp-database.ptp-database--list-view .ptp-player-card--option10 .ptp-favorite-button--card {
  width: 100% !important;
  min-width: 0 !important;
  justify-content: center !important;
}

/* Public/non-subscriber safety styling: GPA and projected level are coach-only in both layouts. */
.ptp-player-card--option10[data-locked="1"] .ptp-player-card__detail--gpa strong,
.ptp-player-card--option10[data-locked="1"] .ptp-player-card__detail--projected strong {
  font-weight: 650 !important;
}

/* Remove any generated duplicate projected-level label from older CSS/hotfixes. */
.ptp-player-card--option10 .ptp-player-card__detail--projected strong::before,
.ptp-player-card--option10 .ptp-player-card__details > div:nth-child(4) strong::before {
  content: none !important;
  display: none !important;
}


/* v2.8 Coach dashboard, tutorial, and player alerts */
.ptp-dashboard__header--coach {
  align-items: center !important;
}

.ptp-dashboard__header--coach .ptp-dashboard__actions {
  display: flex !important;
  justify-content: flex-end !important;
  align-items: center !important;
}

.ptp-notification-panel--collapsed {
  background: #ffffff !important;
  border: 1px solid rgba(7, 59, 64, .12) !important;
  border-radius: 18px !important;
  box-shadow: 0 18px 40px rgba(7, 59, 64, .08) !important;
  padding: 0 !important;
  overflow: hidden !important;
}

.ptp-notification-panel--collapsed > summary {
  list-style: none !important;
  cursor: pointer !important;
  padding: 20px 22px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
}

.ptp-notification-panel--collapsed > summary::-webkit-details-marker {
  display: none !important;
}

.ptp-notification-panel--collapsed > summary h3 {
  margin: 0 0 3px !important;
}

.ptp-notification-panel--collapsed > summary small {
  color: rgba(23, 38, 41, .68) !important;
  font-weight: 500 !important;
}

.ptp-notification-panel--collapsed > summary > strong {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 36px !important;
  padding: 0 14px !important;
  border-radius: 999px !important;
  background: rgba(215, 168, 79, .16) !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  white-space: nowrap !important;
}

.ptp-notification-panel--collapsed .ptp-notification-list,
.ptp-notification-panel--collapsed > p {
  padding: 0 22px 22px !important;
}

.ptp-dashboard-card--accent {
  border-color: rgba(215, 168, 79, .46) !important;
}

.ptp-dashboard-card--accent span {
  display: inline-flex !important;
  margin-top: 8px !important;
  min-height: 26px !important;
  align-items: center !important;
  padding: 0 10px !important;
  border-radius: 999px !important;
  background: rgba(215,168,79,.14) !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: .78rem !important;
  font-weight: 800 !important;
}

.ptp-tutorial-video {
  background: #ffffff !important;
  border: 1px solid rgba(7,59,64,.12) !important;
  border-radius: 20px !important;
  padding: 18px !important;
  box-shadow: 0 18px 40px rgba(7,59,64,.08) !important;
}

.ptp-tutorial-video iframe,
.ptp-tutorial-video video {
  width: 100% !important;
  aspect-ratio: 16 / 9 !important;
  height: auto !important;
  border: 0 !important;
  border-radius: 14px !important;
  background: #000 !important;
}

.ptp-video-placeholder {
  min-height: 360px !important;
  display: grid !important;
  place-items: center !important;
  text-align: center !important;
  border: 1px dashed rgba(7,59,64,.25) !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  padding: 30px !important;
}

.ptp-video-placeholder strong {
  display: block !important;
  font-size: 1.4rem !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  margin-bottom: 8px !important;
}

.ptp-alert-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1.1fr) minmax(320px, .9fr) !important;
  gap: 22px !important;
  align-items: start !important;
}

.ptp-alert-form-card,
.ptp-alert-list-card {
  background: #ffffff !important;
  border: 1px solid rgba(7,59,64,.12) !important;
  border-radius: 20px !important;
  padding: 22px !important;
  box-shadow: 0 18px 40px rgba(7,59,64,.08) !important;
}

.ptp-alert-form {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px !important;
}

.ptp-alert-form label {
  display: grid !important;
  gap: 7px !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-weight: 750 !important;
  font-size: .86rem !important;
}

.ptp-alert-form input,
.ptp-alert-form select {
  width: 100% !important;
  min-height: 44px !important;
  border: 1px solid rgba(7,59,64,.18) !important;
  border-radius: 10px !important;
  padding: 9px 11px !important;
  background: #ffffff !important;
  color: var(--ptp-ink, #172629) !important;
  font: inherit !important;
  font-weight: 550 !important;
}

.ptp-alert-form select[multiple] {
  min-height: 150px !important;
}

.ptp-alert-form small {
  color: rgba(23,38,41,.62) !important;
  font-weight: 500 !important;
}

.ptp-alert-form__full,
.ptp-alert-form .ptp-platform-button {
  grid-column: 1 / -1 !important;
}

.ptp-alert-list {
  display: grid !important;
  gap: 12px !important;
}

.ptp-alert-item {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 14px !important;
  align-items: center !important;
  padding: 14px !important;
  border: 1px solid rgba(7,59,64,.1) !important;
  border-radius: 14px !important;
  background: #ffffff !important;
}

.ptp-alert-item strong {
  color: var(--ptp-teal-dark, #073b40) !important;
}

.ptp-alert-item p {
  margin: 4px 0 0 !important;
  color: rgba(23,38,41,.68) !important;
  font-size: .88rem !important;
}

.ptp-alert-delete {
  border: 1px solid rgba(7,59,64,.16) !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-weight: 800 !important;
  padding: 8px 12px !important;
  cursor: pointer !important;
}

.ptp-form-success {
  margin: 0 0 16px !important;
  padding: 12px 14px !important;
  border-radius: 12px !important;
  background: rgba(154,185,168,.18) !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-weight: 800 !important;
}

@media (max-width: 900px) {
  .ptp-alert-layout {
    grid-template-columns: 1fr !important;
  }

  .ptp-alert-form {
    grid-template-columns: 1fr !important;
  }
}


/* v2.9 Player Alert multi-select refinements and dashboard duplicate cleanup */
.ptp-alert-form select[multiple] {
  min-height: 150px !important;
  padding: 8px !important;
  background: #ffffff !important;
}

.ptp-alert-form select[name="position[]"] {
  min-height: 132px !important;
}

.ptp-alert-form select[name="projected_level[]"] {
  min-height: 164px !important;
}

.ptp-dashboard-lists--summary {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 18px !important;
}

.ptp-dashboard-lists--summary .ptp-dashboard-list p {
  margin-bottom: 0 !important;
}

@media (max-width: 760px) {
  .ptp-dashboard-lists--summary {
    grid-template-columns: 1fr !important;
  }
}


/* v3.0 Player Alert multiple-state selector */
.ptp-alert-form select[name="state[]"] {
  min-height: 164px !important;
}


/* v3.1 Player Alert checkbox selectors: no Ctrl/Command multi-select needed */
.ptp-alert-choice-group {
  display: grid !important;
  gap: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  min-width: 0 !important;
}

.ptp-alert-choice-group legend {
  margin: 0 0 7px !important;
  padding: 0 !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-weight: 750 !important;
  font-size: .86rem !important;
}

.ptp-alert-check-grid {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: flex-start !important;
  gap: 8px !important;
  max-height: 160px !important;
  overflow: auto !important;
  padding: 10px !important;
  border: 1px solid rgba(7,59,64,.18) !important;
  border-radius: 12px !important;
  background: #ffffff !important;
  box-sizing: border-box !important;
}

.ptp-alert-check-grid--wide {
  max-height: 190px !important;
}

.ptp-alert-check {
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  min-height: 32px !important;
  padding: 6px 10px !important;
  border: 1px solid rgba(7,59,64,.14) !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: .82rem !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  cursor: pointer !important;
  user-select: none !important;
  transition: border-color .15s ease, background .15s ease, color .15s ease, box-shadow .15s ease !important;
}

.ptp-alert-check input {
  width: 15px !important;
  height: 15px !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  accent-color: var(--ptp-teal-dark, #073b40) !important;
  cursor: pointer !important;
}

.ptp-alert-check:has(input:checked) {
  border-color: rgba(7,59,64,.45) !important;
  background: rgba(154,185,168,.16) !important;
  box-shadow: inset 0 0 0 1px rgba(7,59,64,.08) !important;
}

.ptp-alert-empty-option {
  margin: 0 !important;
  color: rgba(23,38,41,.58) !important;
  font-size: .86rem !important;
}

@supports not selector(:has(*)) {
  .ptp-alert-check input:checked + span {
    font-weight: 900 !important;
    text-decoration: underline !important;
  }
}


/* v3.2 Cleaner Player Alert form */
.ptp-player-alerts-page .ptp-database__header {
  margin-bottom: 22px !important;
}

.ptp-alert-layout {
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 22px !important;
}

.ptp-alert-form-card,
.ptp-alert-list-card {
  border-radius: 24px !important;
  padding: 24px !important;
}

.ptp-alert-form-card h3,
.ptp-alert-list-card h3 {
  margin-top: 0 !important;
  margin-bottom: 16px !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  letter-spacing: -0.02em !important;
}

.ptp-alert-form {
  display: grid !important;
  grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
  gap: 16px !important;
  align-items: start !important;
}

.ptp-alert-form > label,
.ptp-alert-choice-group {
  min-width: 0 !important;
}

.ptp-alert-form > label:not(.ptp-alert-form__full) {
  grid-column: span 4 !important;
}

.ptp-alert-form__full,
.ptp-alert-form .ptp-platform-button {
  grid-column: 1 / -1 !important;
}

.ptp-alert-choice-group {
  grid-column: span 6 !important;
  background: #ffffff !important;
  border: 1px solid rgba(7,59,64,.12) !important;
  border-radius: 16px !important;
  padding: 14px !important;
  box-shadow: 0 10px 24px rgba(7,59,64,.045) !important;
}

.ptp-alert-choice-group.ptp-alert-form__full {
  grid-column: 1 / -1 !important;
}

.ptp-alert-choice-group legend {
  float: left !important;
  width: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  margin: 0 0 10px !important;
  padding: 0 !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: .9rem !important;
  line-height: 1.1 !important;
  font-weight: 850 !important;
  letter-spacing: -0.01em !important;
}

.ptp-alert-choice-group legend::after {
  content: attr(data-count);
  display: inline-flex !important;
  align-items: center !important;
  min-height: 24px !important;
  padding: 0 9px !important;
  border-radius: 999px !important;
  background: rgba(154,185,168,.16) !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: .72rem !important;
  font-weight: 850 !important;
  letter-spacing: 0 !important;
}

.ptp-alert-choice-group::after {
  content: "" !important;
  display: table !important;
  clear: both !important;
}

.ptp-alert-choice-toolbar {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 8px !important;
  align-items: center !important;
  margin: 0 0 10px !important;
  clear: both !important;
}

.ptp-alert-choice-search {
  width: 100% !important;
  min-height: 38px !important;
  border: 1px solid rgba(7,59,64,.14) !important;
  border-radius: 10px !important;
  background: #ffffff !important;
  color: var(--ptp-ink, #172629) !important;
  padding: 8px 10px !important;
  font: inherit !important;
  font-weight: 600 !important;
  outline: none !important;
}

.ptp-alert-choice-search:focus {
  border-color: rgba(7,59,64,.38) !important;
  box-shadow: 0 0 0 3px rgba(154,185,168,.18) !important;
}

.ptp-alert-choice-clear {
  min-height: 38px !important;
  border: 1px solid rgba(7,59,64,.14) !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  padding: 0 12px !important;
  font: inherit !important;
  font-size: .78rem !important;
  font-weight: 850 !important;
  cursor: pointer !important;
}

.ptp-alert-choice-clear:hover {
  background: rgba(7,59,64,.05) !important;
}

.ptp-alert-check-grid {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  max-height: 172px !important;
  overflow: auto !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  clear: both !important;
}

.ptp-alert-check-grid--wide {
  max-height: 190px !important;
}

.ptp-alert-check {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0 !important;
  min-height: 34px !important;
  padding: 0 12px !important;
  border: 1px solid rgba(7,59,64,.14) !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: .8rem !important;
  font-weight: 780 !important;
  line-height: 1 !important;
  cursor: pointer !important;
  user-select: none !important;
  transition: transform .12s ease, border-color .12s ease, background .12s ease, box-shadow .12s ease !important;
}

.ptp-alert-check:hover {
  transform: translateY(-1px) !important;
  border-color: rgba(7,59,64,.30) !important;
}

.ptp-alert-check input {
  position: absolute !important;
  opacity: 0 !important;
  pointer-events: none !important;
  width: 1px !important;
  height: 1px !important;
  min-height: 1px !important;
}

.ptp-alert-check span {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  white-space: nowrap !important;
}

.ptp-alert-check span::before {
  content: "" !important;
  width: 0 !important;
  height: 0 !important;
  opacity: 0 !important;
  transform: scale(.7) !important;
  transition: width .12s ease, opacity .12s ease, transform .12s ease !important;
}

.ptp-alert-check.is-selected,
.ptp-alert-check:has(input:checked) {
  border-color: rgba(7,59,64,.48) !important;
  background: rgba(154,185,168,.18) !important;
  box-shadow: inset 0 0 0 1px rgba(7,59,64,.08), 0 8px 18px rgba(7,59,64,.06) !important;
}

.ptp-alert-check.is-selected span::before,
.ptp-alert-check:has(input:checked) span::before {
  content: "✓" !important;
  width: auto !important;
  height: auto !important;
  opacity: 1 !important;
  transform: scale(1) !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-weight: 950 !important;
}

.ptp-alert-check.is-filtered-out {
  display: none !important;
}

.ptp-alert-selected-summary {
  display: none !important;
  clear: both !important;
  margin: 0 0 10px !important;
  color: rgba(23,38,41,.68) !important;
  font-size: .8rem !important;
  font-weight: 650 !important;
}

.ptp-alert-selected-summary.is-visible {
  display: block !important;
}

.ptp-alert-empty-option,
.ptp-alert-choice-empty-search {
  width: 100% !important;
  margin: 0 !important;
  color: rgba(23,38,41,.58) !important;
  font-size: .86rem !important;
  font-weight: 600 !important;
}

.ptp-alert-choice-empty-search {
  display: none !important;
}

.ptp-alert-choice-empty-search.is-visible {
  display: block !important;
}

.ptp-alert-form .ptp-platform-button {
  justify-self: start !important;
  min-width: 220px !important;
  margin-top: 4px !important;
}

.ptp-alert-list-card {
  margin-top: 0 !important;
}

.ptp-alert-list {
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
}

.ptp-alert-item {
  align-items: start !important;
}

@media (max-width: 1000px) {
  .ptp-alert-form > label:not(.ptp-alert-form__full),
  .ptp-alert-choice-group {
    grid-column: span 6 !important;
  }
}

@media (max-width: 720px) {
  .ptp-alert-form {
    grid-template-columns: 1fr !important;
  }

  .ptp-alert-form > label:not(.ptp-alert-form__full),
  .ptp-alert-choice-group,
  .ptp-alert-choice-group.ptp-alert-form__full {
    grid-column: 1 / -1 !important;
  }

  .ptp-alert-choice-toolbar {
    grid-template-columns: 1fr !important;
  }

  .ptp-alert-form .ptp-platform-button {
    width: 100% !important;
  }
}


/* v3.3 Editable saved player types */
.ptp-alert-list--editable {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 12px !important;
}

.ptp-alert-item--editable {
  display: block !important;
  padding: 0 !important;
  border: 1px solid rgba(7,59,64,.12) !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  overflow: hidden !important;
}

.ptp-alert-item--editable > summary {
  list-style: none !important;
  cursor: pointer !important;
  min-height: 58px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 14px !important;
  padding: 0 16px !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-weight: 850 !important;
}

.ptp-alert-item--editable > summary::-webkit-details-marker {
  display: none !important;
}

.ptp-alert-item--editable > summary::after {
  content: "＋" !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 32px !important;
  width: 32px !important;
  height: 32px !important;
  border-radius: 999px !important;
  background: rgba(154,185,168,.16) !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-weight: 900 !important;
}

.ptp-alert-item--editable[open] > summary {
  border-bottom: 1px solid rgba(7,59,64,.10) !important;
}

.ptp-alert-item--editable[open] > summary::after {
  content: "–" !important;
}

.ptp-alert-item__details {
  display: grid !important;
  gap: 18px !important;
  padding: 18px !important;
}

.ptp-alert-criteria {
  border: 1px solid rgba(7,59,64,.10) !important;
  border-radius: 14px !important;
  padding: 14px !important;
  background: rgba(154,185,168,.08) !important;
}

.ptp-alert-criteria h4 {
  margin: 0 0 6px !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: .9rem !important;
  letter-spacing: -.01em !important;
}

.ptp-alert-criteria p {
  margin: 0 !important;
  color: rgba(23,38,41,.72) !important;
  font-size: .88rem !important;
  line-height: 1.45 !important;
}

.ptp-alert-form--edit {
  padding-top: 4px !important;
}

.ptp-alert-form--edit .ptp-platform-button {
  min-width: 220px !important;
}

.ptp-alert-delete-form {
  display: flex !important;
  justify-content: flex-start !important;
  padding-top: 2px !important;
}

.ptp-alert-delete-form .ptp-alert-delete {
  border-color: rgba(140,20,20,.20) !important;
  color: #8c1414 !important;
}

.ptp-alert-delete-form .ptp-alert-delete:hover {
  background: rgba(140,20,20,.06) !important;
}


/* v3.4 Saved players/events pages and duplicate dashboard cleanup */
.ptp-dashboard .ptp-dashboard-lists--summary {
  display: none !important;
}

.ptp-saved-page {
  display: grid !important;
  gap: 22px !important;
}

.ptp-saved-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)) !important;
  gap: 16px !important;
}

.ptp-saved-card {
  display: grid !important;
  gap: 6px !important;
  padding: 18px !important;
  border: 1px solid rgba(7,59,64,.12) !important;
  border-radius: 18px !important;
  background: #ffffff !important;
  box-shadow: 0 14px 32px rgba(7,59,64,.07) !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  text-decoration: none !important;
  transition: transform .14s ease, box-shadow .14s ease, border-color .14s ease !important;
}

.ptp-saved-card:hover {
  transform: translateY(-2px) !important;
  border-color: rgba(7,59,64,.22) !important;
  box-shadow: 0 18px 38px rgba(7,59,64,.10) !important;
}

.ptp-saved-card strong {
  font-size: 1.04rem !important;
  line-height: 1.15 !important;
  letter-spacing: -.01em !important;
}

.ptp-saved-card span {
  color: rgba(23,38,41,.68) !important;
  font-size: .9rem !important;
  font-weight: 650 !important;
}

.ptp-empty-state {
  padding: 26px !important;
  border: 1px solid rgba(7,59,64,.12) !important;
  border-radius: 20px !important;
  background: #ffffff !important;
  box-shadow: 0 14px 32px rgba(7,59,64,.07) !important;
}

.ptp-empty-state h3 {
  margin: 0 0 8px !important;
  color: var(--ptp-teal-dark, #073b40) !important;
}

.ptp-empty-state p {
  margin: 0 0 16px !important;
  color: rgba(23,38,41,.70) !important;
}


/* v3.5 Dashboard count badges for saved players/events */
.ptp-dashboard-card--count span {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: fit-content !important;
  min-height: 26px !important;
  margin-top: 8px !important;
  padding: 0 10px !important;
  border-radius: 999px !important;
  background: rgba(215,168,79,.14) !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: .78rem !important;
  font-weight: 850 !important;
  line-height: 1 !important;
}


/* v3.6 notifications, account page, and player-profile link fixes */
.ptp-notification-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 10px !important;
  align-items: start !important;
  border-radius: 14px !important;
}

.ptp-notification-row .ptp-notification {
  min-width: 0 !important;
}

.ptp-notification-clear-form {
  margin: 0 !important;
}

.ptp-notification-clear-form button {
  width: 32px !important;
  height: 32px !important;
  border: 1px solid rgba(7,59,64,.14) !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: 18px !important;
  line-height: 1 !important;
  font-weight: 650 !important;
  cursor: pointer !important;
}

.ptp-notification-clear-form button:hover {
  background: rgba(7,59,64,.06) !important;
}

.ptp-notification-clear-all {
  display: flex !important;
  justify-content: flex-end !important;
  margin-top: 10px !important;
}

.ptp-notification-clear-all button {
  min-height: 34px !important;
  border: 1px solid rgba(7,59,64,.14) !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  padding: 0 14px !important;
  font-weight: 850 !important;
  cursor: pointer !important;
}

.ptp-notification-clear-all button:hover {
  background: rgba(7,59,64,.06) !important;
}

.ptp-account-page {
  display: grid !important;
  gap: 22px !important;
}

.ptp-account-card {
  background: #ffffff !important;
  border: 1px solid rgba(7,59,64,.12) !important;
  border-radius: 20px !important;
  box-shadow: 0 18px 40px rgba(7,59,64,.08) !important;
  padding: 24px !important;
}

.ptp-account-card h3 {
  margin: 0 0 16px !important;
  color: var(--ptp-teal-dark, #073b40) !important;
}

.ptp-account-details {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)) !important;
  gap: 12px !important;
  margin-bottom: 18px !important;
}

.ptp-account-details > div {
  display: grid !important;
  gap: 4px !important;
  border: 1px solid rgba(7,59,64,.10) !important;
  border-radius: 14px !important;
  padding: 14px !important;
}

.ptp-account-details span {
  color: rgba(23,38,41,.62) !important;
  font-size: .76rem !important;
  font-weight: 800 !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
}

.ptp-account-details strong {
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: .98rem !important;
}

.ptp-account-note {
  margin: 0 !important;
  padding: 12px 14px !important;
  border-radius: 12px !important;
  background: rgba(154,185,168,.15) !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-weight: 750 !important;
}

.ptp-account-cancel-form {
  margin: 0 !important;
}


/* v3.7 Event calendar list and event detail pages */
.ptp-events--list-view {
  display: grid !important;
  gap: 22px !important;
}

.ptp-events-table {
  display: grid !important;
  gap: 12px !important;
}

.ptp-event-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1.4fr) minmax(170px, .45fr) minmax(136px, auto) auto !important;
  align-items: center !important;
  gap: 16px !important;
  padding: 18px 20px !important;
  border: 1px solid rgba(7,59,64,.12) !important;
  border-radius: 18px !important;
  background: #ffffff !important;
  box-shadow: 0 14px 32px rgba(7,59,64,.07) !important;
}

.ptp-event-row__name h3 {
  margin: 0 0 4px !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: 1.08rem !important;
  line-height: 1.14 !important;
  letter-spacing: -.015em !important;
}

.ptp-event-row__name p {
  margin: 0 !important;
  color: rgba(23,38,41,.66) !important;
  font-weight: 650 !important;
  font-size: .88rem !important;
}

.ptp-event-row__dates {
  display: grid !important;
  gap: 3px !important;
}

.ptp-event-row__dates span,
.ptp-event-detail__meta span {
  color: rgba(23,38,41,.58) !important;
  font-size: .72rem !important;
  line-height: 1 !important;
  font-weight: 850 !important;
  letter-spacing: .055em !important;
  text-transform: uppercase !important;
}

.ptp-event-row__dates strong {
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: .92rem !important;
  line-height: 1.18 !important;
  font-weight: 800 !important;
}

.ptp-event-row__badge {
  display: flex !important;
  justify-content: flex-start !important;
}

.ptp-event-attending-badge {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 28px !important;
  padding: 0 11px !important;
  border-radius: 999px !important;
  background: rgba(215,168,79,.18) !important;
  border: 1px solid rgba(215,168,79,.42) !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: .74rem !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .035em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

.ptp-event-row__actions {
  display: flex !important;
  justify-content: flex-end !important;
}

.ptp-event-row__actions .ptp-platform-button {
  min-height: 40px !important;
  padding-inline: 18px !important;
  white-space: nowrap !important;
}

.ptp-event-detail--expanded {
  display: grid !important;
  gap: 22px !important;
}

.ptp-event-detail__header-meta {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  margin-top: 10px !important;
}

.ptp-event-detail__header-meta span {
  color: rgba(23,38,41,.68) !important;
  font-weight: 700 !important;
}

.ptp-event-detail__actions {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
}

.ptp-event-detail__meta {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 14px !important;
}

.ptp-event-detail__meta > div {
  display: grid !important;
  gap: 6px !important;
  padding: 16px !important;
  border: 1px solid rgba(7,59,64,.12) !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  box-shadow: 0 10px 24px rgba(7,59,64,.045) !important;
}

.ptp-event-detail__meta strong {
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: .96rem !important;
  line-height: 1.2 !important;
}

.ptp-event-detail__grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 16px !important;
}

.ptp-event-info-block,
.ptp-event-detail__content {
  background: #ffffff !important;
  border: 1px solid rgba(7,59,64,.12) !important;
  border-radius: 18px !important;
  box-shadow: 0 14px 32px rgba(7,59,64,.07) !important;
  padding: 20px !important;
}

.ptp-event-info-block h3,
.ptp-event-detail__content h3 {
  margin: 0 0 10px !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: 1rem !important;
  letter-spacing: -.01em !important;
}

.ptp-event-info-block__body {
  color: rgba(23,38,41,.76) !important;
  font-weight: 580 !important;
  line-height: 1.55 !important;
  margin-bottom: 12px !important;
}

.ptp-event-info-block__body p:last-child {
  margin-bottom: 0 !important;
}

@media (max-width: 960px) {
  .ptp-event-row {
    grid-template-columns: minmax(0, 1fr) !important;
    align-items: start !important;
  }

  .ptp-event-row__actions {
    justify-content: flex-start !important;
  }

  .ptp-event-detail__meta,
  .ptp-event-detail__grid {
    grid-template-columns: 1fr !important;
  }

  .ptp-event-detail__actions {
    justify-content: flex-start !important;
  }
}


/* v3.8 dedicated event detail page template */
.ptp-app-page-shell--event {
  width: min(1180px, calc(100% - 32px)) !important;
  margin: 0 auto !important;
  padding: 34px 0 56px !important;
}

.ptp-event-page {
  display: grid !important;
  gap: 22px !important;
}

.ptp-event-page__topbar {
  display: flex !important;
  justify-content: flex-start !important;
}

.ptp-back-link {
  display: inline-flex !important;
  align-items: center !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-weight: 850 !important;
  text-decoration: none !important;
}

.ptp-back-link:hover {
  text-decoration: underline !important;
}

.ptp-event-hero-card {
  display: grid !important;
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, .75fr) !important;
  gap: 22px !important;
  align-items: stretch !important;
  border: 1px solid rgba(7,59,64,.12) !important;
  border-radius: 24px !important;
  background: #ffffff !important;
  box-shadow: 0 18px 42px rgba(7,59,64,.08) !important;
  padding: 22px !important;
  overflow: hidden !important;
}

.ptp-event-hero-card__copy {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  min-height: 260px !important;
  padding: 10px !important;
}

.ptp-event-hero-card h1 {
  margin: 6px 0 12px !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: clamp(2rem, 4vw, 4rem) !important;
  line-height: .96 !important;
  letter-spacing: -.055em !important;
}

.ptp-event-hero-card__badges {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  align-items: center !important;
  margin-bottom: 12px !important;
}

.ptp-event-hero-card__badges > span:not(.ptp-event-attending-badge) {
  display: inline-flex !important;
  min-height: 28px !important;
  align-items: center !important;
  padding: 0 11px !important;
  border-radius: 999px !important;
  background: rgba(154,185,168,.15) !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: .74rem !important;
  font-weight: 900 !important;
  letter-spacing: .035em !important;
  text-transform: uppercase !important;
}

.ptp-event-hero-card__location {
  margin: 0 !important;
  color: rgba(23,38,41,.70) !important;
  font-size: 1rem !important;
  font-weight: 750 !important;
}

.ptp-event-hero-card__image {
  margin: 0 !important;
  min-height: 280px !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  background: rgba(7,59,64,.06) !important;
}

.ptp-event-hero-card__image img {
  width: 100% !important;
  height: 100% !important;
  min-height: 280px !important;
  object-fit: cover !important;
  display: block !important;
}

.ptp-event-detail__meta--primary {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

.ptp-event-action-strip {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  align-items: center !important;
  padding: 14px !important;
  border: 1px solid rgba(7,59,64,.12) !important;
  border-radius: 18px !important;
  background: #ffffff !important;
  box-shadow: 0 12px 28px rgba(7,59,64,.055) !important;
}

.ptp-event-detail__grid--full {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.ptp-event-detail__content {
  max-width: none !important;
}

.ptp-event-detail__content > *:last-child {
  margin-bottom: 0 !important;
}

@media (max-width: 920px) {
  .ptp-event-hero-card,
  .ptp-event-detail__meta--primary,
  .ptp-event-detail__grid--full {
    grid-template-columns: 1fr !important;
  }

  .ptp-event-hero-card__copy {
    min-height: auto !important;
  }

  .ptp-event-hero-card__image,
  .ptp-event-hero-card__image img {
    min-height: 220px !important;
  }
}


/* v3.9 dedicated event-details shortcode page */
body.page .ptp-event-page {
  width: min(1180px, calc(100% - 32px)) !important;
  margin-inline: auto !important;
}


/* v4.0 Teams / schools, event relationships, and linked events */
.ptp-admin-checklist {
  max-height: 260px;
  overflow: auto;
  border: 1px solid #dcdcde;
  background: #fff;
  padding: 10px 12px;
  border-radius: 6px;
}

.ptp-admin-checklist label {
  display: block;
  margin: 0 0 8px;
  line-height: 1.35;
}

.ptp-admin-checklist small {
  color: #646970;
}

.ptp-team-link {
  color: var(--ptp-teal-dark, #073b40) !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
  font-weight: inherit !important;
}

.ptp-profile-linked-context,
.ptp-event-related-grid,
.ptp-team-page__grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 16px !important;
  margin-top: 18px !important;
}

.ptp-profile-section--linked {
  background: #ffffff !important;
  border: 1px solid rgba(7,59,64,.12) !important;
  border-radius: 18px !important;
  box-shadow: 0 14px 32px rgba(7,59,64,.07) !important;
  padding: 20px !important;
}

.ptp-linked-event-list,
.ptp-linked-team-list,
.ptp-linked-player-list {
  display: grid !important;
  gap: 10px !important;
}

.ptp-linked-event-card,
.ptp-linked-team-card,
.ptp-linked-player-card {
  display: grid !important;
  gap: 4px !important;
  padding: 13px 14px !important;
  border: 1px solid rgba(7,59,64,.11) !important;
  border-radius: 14px !important;
  background: #ffffff !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  text-decoration: none !important;
  transition: transform .14s ease, border-color .14s ease, box-shadow .14s ease !important;
}

.ptp-linked-event-card:hover,
.ptp-linked-team-card:hover,
.ptp-linked-player-card:hover {
  transform: translateY(-1px) !important;
  border-color: rgba(7,59,64,.24) !important;
  box-shadow: 0 12px 26px rgba(7,59,64,.075) !important;
}

.ptp-linked-event-card > span:first-child,
.ptp-linked-team-card span,
.ptp-linked-player-card span {
  color: rgba(23,38,41,.62) !important;
  font-size: .78rem !important;
  font-weight: 760 !important;
}

.ptp-linked-event-card strong,
.ptp-linked-team-card strong,
.ptp-linked-player-card strong {
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: .96rem !important;
  line-height: 1.18 !important;
}

.ptp-linked-event-card .ptp-event-attending-badge {
  width: fit-content !important;
  margin-top: 4px !important;
}

.ptp-muted-empty {
  margin: 0 !important;
  color: rgba(23,38,41,.62) !important;
  font-weight: 650 !important;
}

.ptp-team-directory,
.ptp-team-page {
  width: min(1180px, calc(100% - 32px)) !important;
  margin-inline: auto !important;
  display: grid !important;
  gap: 22px !important;
}

.ptp-team-hero-card {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(280px, .55fr) !important;
  gap: 22px !important;
  align-items: stretch !important;
  padding: 24px !important;
  border: 1px solid rgba(7,59,64,.12) !important;
  border-radius: 24px !important;
  background: #ffffff !important;
  box-shadow: 0 18px 42px rgba(7,59,64,.08) !important;
}

.ptp-team-hero-card h1 {
  margin: 6px 0 12px !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: clamp(2rem, 4vw, 3.6rem) !important;
  line-height: .98 !important;
  letter-spacing: -.05em !important;
}

.ptp-team-hero-card__meta {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin-bottom: 16px !important;
}

.ptp-team-hero-card__meta span {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 28px !important;
  padding: 0 10px !important;
  border-radius: 999px !important;
  background: rgba(154,185,168,.15) !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: .76rem !important;
  font-weight: 850 !important;
}

.ptp-team-hero-card figure {
  margin: 0 !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  background: rgba(7,59,64,.06) !important;
}

.ptp-team-hero-card img {
  width: 100% !important;
  height: 100% !important;
  min-height: 230px !important;
  object-fit: cover !important;
  display: block !important;
}

@media (max-width: 880px) {
  .ptp-profile-linked-context,
  .ptp-event-related-grid,
  .ptp-team-page__grid,
  .ptp-team-hero-card {
    grid-template-columns: 1fr !important;
  }
}


/* v4.1 event page team list expansion and cleaner event action strip */
.ptp-event-related-grid > .ptp-event-teams-summary:only-child {
  grid-column: 1 / -1 !important;
}

.ptp-event-team-count {
  margin: 0 0 14px !important;
  color: rgba(23,38,41,.68) !important;
  font-size: .95rem !important;
  line-height: 1.35 !important;
  font-weight: 720 !important;
}

.ptp-event-team-count strong {
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: 1.65rem !important;
  line-height: 1 !important;
  margin-right: 5px !important;
  font-weight: 900 !important;
}

.ptp-expandable-team-list {
  display: grid !important;
  gap: 12px !important;
}

.ptp-expandable-team-list > summary {
  list-style: none !important;
  width: fit-content !important;
  min-height: 38px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid rgba(7,59,64,.14) !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  padding: 0 16px !important;
  font-size: .86rem !important;
  font-weight: 850 !important;
  cursor: pointer !important;
  box-shadow: 0 10px 22px rgba(7,59,64,.055) !important;
}

.ptp-expandable-team-list > summary::-webkit-details-marker {
  display: none !important;
}

.ptp-expandable-team-list > summary::after {
  content: "＋" !important;
  margin-left: 8px !important;
  font-weight: 900 !important;
}

.ptp-expandable-team-list[open] > summary::after {
  content: "–" !important;
}

.ptp-expandable-team-list > summary:hover {
  background: rgba(7,59,64,.045) !important;
}

.ptp-expandable-team-list__content {
  padding-top: 4px !important;
}


/* v4.2 player profile layout aligned to the reference mockup */
.ptp-profile--v42 {
  width: min(1320px, calc(100% - 40px)) !important;
  margin: 0 auto !important;
}

.ptp-profile-v42__top {
  display: grid !important;
  grid-template-columns: minmax(360px, .72fr) minmax(0, 1fr) !important;
  gap: 26px !important;
  align-items: start !important;
}

.ptp-profile-v42__left,
.ptp-profile-v42__right {
  min-width: 0 !important;
}

.ptp-profile-v42__photo {
  min-height: 430px !important;
  border-radius: 14px 14px 0 0 !important;
}

.ptp-profile-v42__photo img {
  min-height: 430px !important;
}

.ptp-profile-v42__synopsis {
  border-top: 0 !important;
  border-radius: 0 0 14px 14px !important;
  margin-top: 0 !important;
}

.ptp-profile-v42__summary {
  padding: 0 0 18px !important;
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

.ptp-profile-v42__summary .ptp-profile__title-actions {
  align-items: flex-start !important;
  gap: 20px !important;
}

.ptp-profile-v42__summary h2 {
  font-size: clamp(2.4rem, 4.6vw, 4.5rem) !important;
  line-height: .92 !important;
  letter-spacing: -.06em !important;
  margin-bottom: 10px !important;
  color: var(--ptp-teal-dark, #073b40) !important;
}

.ptp-profile-v42__summary-rule {
  height: 1px !important;
  background: rgba(7,59,64,.14) !important;
  margin: 18px 0 !important;
}

.ptp-profile-v42__quick-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 16px 28px !important;
  margin: 0 !important;
}

.ptp-profile-v42__quick-grid > div {
  display: grid !important;
  grid-template-columns: 26px minmax(0, 1fr) !important;
  grid-template-areas: "icon label" "icon value" !important;
  column-gap: 12px !important;
  align-items: center !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.ptp-profile-v42__quick-grid span {
  grid-area: icon !important;
  font-size: 1.2rem !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  opacity: .9 !important;
}

.ptp-profile-v42__quick-grid em {
  grid-area: label !important;
  display: block !important;
  color: rgba(23,38,41,.66) !important;
  font-size: .82rem !important;
  line-height: 1 !important;
  font-style: normal !important;
  font-weight: 780 !important;
}

.ptp-profile-v42__quick-grid strong {
  grid-area: value !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: .98rem !important;
  line-height: 1.15 !important;
  font-weight: 800 !important;
}

.ptp-profile-v42__styles {
  margin-top: 22px !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 10px !important;
}

.ptp-profile-v42__styles > span {
  width: 100% !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: .78rem !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
}

.ptp-profile-v42__styles b {
  border: 1px solid rgba(7,59,64,.12) !important;
  border-radius: 10px !important;
  background: #ffffff !important;
  padding: 8px 16px !important;
  min-height: 34px !important;
  color: rgba(23,38,41,.84) !important;
  font-size: .82rem !important;
  font-weight: 750 !important;
  box-shadow: 0 8px 18px rgba(7,59,64,.04) !important;
}

.ptp-profile-v42__right .ptp-profile__contact-strip {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 14px !important;
  margin-top: 18px !important;
}

.ptp-profile-v42__right .ptp-contact-card {
  min-height: 168px !important;
  border-radius: 14px !important;
  background: #ffffff !important;
  border: 1px solid rgba(7,59,64,.11) !important;
  box-shadow: 0 10px 24px rgba(7,59,64,.045) !important;
}

.ptp-profile-v42__main-grid {
  display: grid !important;
  grid-template-columns: minmax(0, .85fr) minmax(0, 1fr) minmax(0, .85fr) !important;
  gap: 18px !important;
  margin-top: 24px !important;
}

.ptp-profile-v42__main-grid > .ptp-profile-section {
  margin: 0 !important;
  background: #ffffff !important;
  border: 1px solid rgba(7,59,64,.11) !important;
  border-radius: 16px !important;
  box-shadow: 0 12px 28px rgba(7,59,64,.055) !important;
  padding: 18px !important;
}

.ptp-profile-v42__main-grid h3 {
  margin: 0 0 12px !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: .92rem !important;
  letter-spacing: .035em !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
}

.ptp-profile-v42__events {
  grid-column: span 1 !important;
}

.ptp-profile-v42__recruiting {
  grid-column: span 1 !important;
}

.ptp-profile-v42__offers,
.ptp-profile-v42__social {
  grid-column: span 1 !important;
}

.ptp-profile-v42__film {
  grid-column: span 1 !important;
}

.ptp-profile-v42__teams {
  grid-column: span 1 !important;
}

.ptp-profile-v42__main-grid .ptp-linked-event-list {
  gap: 9px !important;
}

.ptp-profile-v42__main-grid .ptp-linked-event-card,
.ptp-profile-v42__main-grid .ptp-linked-team-card {
  padding: 12px !important;
  box-shadow: none !important;
}

.ptp-profile-v42__main-grid .ptp-media-actions {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)) !important;
  gap: 12px !important;
}

.ptp-profile-v42__main-grid .ptp-media-actions a {
  min-height: 48px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 10px !important;
  text-align: center !important;
}

.ptp-profile-v42 .ptp-related-articles {
  margin-top: 24px !important;
  background: #ffffff !important;
  border: 1px solid rgba(7,59,64,.11) !important;
  border-radius: 16px !important;
  box-shadow: 0 12px 28px rgba(7,59,64,.055) !important;
  padding: 18px !important;
}

@media (max-width: 1120px) {
  .ptp-profile-v42__top {
    grid-template-columns: 1fr !important;
  }

  .ptp-profile-v42__right .ptp-profile__contact-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .ptp-profile-v42__main-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 720px) {
  .ptp-profile--v42 {
    width: min(100% - 24px, 1320px) !important;
  }

  .ptp-profile-v42__photo,
  .ptp-profile-v42__photo img {
    min-height: 300px !important;
  }

  .ptp-profile-v42__summary .ptp-profile__title-actions {
    flex-direction: column !important;
  }

  .ptp-profile-v42__quick-grid,
  .ptp-profile-v42__right .ptp-profile__contact-strip,
  .ptp-profile-v42__main-grid {
    grid-template-columns: 1fr !important;
  }
}


/* v4.3 severe player profile cleanup: full-width, mockup-aligned */
body:has(.ptp-profile--v43) .ptp-page-hero,
body:has(.ptp-profile--v43) .entry-title {
  display: none !important;
}

body:has(.ptp-profile--v43) .ptp-section,
body:has(.ptp-profile--v43) .ptp-main,
body:has(.ptp-profile--v43) .ptp-content-width,
body:has(.ptp-profile--v43) .ptp-article,
body:has(.ptp-profile--v43) .ptp-app-page-shell {
  max-width: none !important;
  width: 100% !important;
}

body:has(.ptp-profile--v43) .ptp-section {
  padding-top: 24px !important;
}

.ptp-profile--v43 {
  width: min(1440px, calc(100vw - 56px)) !important;
  max-width: none !important;
  margin: 0 auto !important;
  padding: 0 0 48px !important;
  color: var(--ptp-teal-dark, #073b40) !important;
}

.ptp-profile-v43__back {
  display: inline-flex !important;
  margin: 0 0 14px !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: .88rem !important;
  font-weight: 850 !important;
  text-decoration: none !important;
}

.ptp-profile-v43__hero {
  display: grid !important;
  grid-template-columns: minmax(440px, 0.72fr) minmax(0, 1fr) !important;
  gap: 28px !important;
  align-items: stretch !important;
}

.ptp-profile-v43__media-card {
  display: grid !important;
  grid-template-rows: minmax(420px, 1fr) auto !important;
  min-height: 100% !important;
  border: 1px solid rgba(7,59,64,.12) !important;
  border-radius: 14px !important;
  background: #ffffff !important;
  box-shadow: 0 18px 42px rgba(7,59,64,.07) !important;
  overflow: hidden !important;
}

.ptp-profile-v43__photo {
  position: relative !important;
  width: 100% !important;
  min-height: 420px !important;
  height: 100% !important;
  border-radius: 0 !important;
  overflow: hidden !important;
  background: linear-gradient(135deg, rgba(7,59,64,.14), rgba(154,185,168,.22)) !important;
}

.ptp-profile-v43__photo img {
  width: 100% !important;
  height: 100% !important;
  min-height: 420px !important;
  display: block !important;
  object-fit: cover !important;
  object-position: center top !important;
}

.ptp-profile-v43__placeholder {
  width: 100% !important;
  height: 100% !important;
  min-height: 420px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #ffffff !important;
  background: radial-gradient(circle at top left, rgba(215,168,79,.45), transparent 34%), linear-gradient(135deg, #073b40, #355d60) !important;
  font-size: 8rem !important;
  font-weight: 900 !important;
  letter-spacing: -.08em !important;
}

.ptp-profile-v43__photo .ptp-favorite-button,
.ptp-profile-v43__photo .ptp-save-button,
.ptp-profile-v43__photo button[data-ptp-favorite-player] {
  position: absolute !important;
  top: 22px !important;
  right: 22px !important;
  z-index: 4 !important;
  border-radius: 14px !important;
  background: rgba(255,255,255,.94) !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  box-shadow: 0 12px 26px rgba(0,0,0,.14) !important;
}

.ptp-profile-v43__synopsis {
  margin: 0 !important;
  border: 0 !important;
  border-top: 1px solid rgba(7,59,64,.10) !important;
  border-radius: 0 !important;
  padding: 18px 20px 20px !important;
  background: #ffffff !important;
  box-shadow: none !important;
}

.ptp-profile-v43__synopsis h3,
.ptp-profile-v43__card h3 {
  margin: 0 0 11px !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: .84rem !important;
  line-height: 1 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
}

.ptp-profile-v43__synopsis p,
.ptp-profile-v43__card p {
  margin: 0 !important;
  color: rgba(23,38,41,.78) !important;
  font-size: .92rem !important;
  line-height: 1.55 !important;
  font-weight: 560 !important;
}

.ptp-profile-v43__info {
  display: grid !important;
  grid-template-rows: auto 1fr !important;
  gap: 18px !important;
  min-width: 0 !important;
}

.ptp-profile-v43__heading-card {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  min-width: 0 !important;
}

.ptp-profile-v43__heading-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 22px !important;
  align-items: start !important;
}

.ptp-profile-v43__title h1 {
  margin: 0 0 12px !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: clamp(3rem, 5vw, 5.1rem) !important;
  line-height: .88 !important;
  letter-spacing: -.07em !important;
  font-weight: 850 !important;
}

.ptp-profile-v43__title p {
  margin: 0 !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: clamp(1rem, 1.45vw, 1.25rem) !important;
  line-height: 1.2 !important;
  font-weight: 720 !important;
}

.ptp-profile-v43__title span {
  opacity: .45 !important;
  margin: 0 10px !important;
}

.ptp-profile-v43__actions {
  display: flex !important;
  gap: 12px !important;
  align-items: center !important;
  justify-content: flex-end !important;
  flex-wrap: wrap !important;
}

.ptp-profile-v43__actions .ptp-favorite-button,
.ptp-profile-v43__actions .ptp-save-button,
.ptp-profile-v43__actions button[data-ptp-favorite-player],
.ptp-profile-v43__actions .ptp-share-button {
  min-height: 44px !important;
  padding: 0 20px !important;
  border-radius: 8px !important;
  font-size: .84rem !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
}

.ptp-profile-v43__divider {
  height: 1px !important;
  background: rgba(7,59,64,.14) !important;
  margin: 18px 0 20px !important;
}

.ptp-profile-v43__facts {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(240px, 1fr)) !important;
  gap: 18px 34px !important;
  max-width: 850px !important;
}

.ptp-profile-v43__fact {
  display: grid !important;
  grid-template-columns: 30px minmax(0, 1fr) !important;
  grid-template-areas: "icon label" "icon value" !important;
  column-gap: 13px !important;
  min-height: 52px !important;
  align-items: center !important;
}

.ptp-profile-v43__fact span {
  grid-area: icon !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: 1.28rem !important;
  line-height: 1 !important;
  opacity: .92 !important;
}

.ptp-profile-v43__fact em {
  grid-area: label !important;
  color: rgba(23,38,41,.64) !important;
  font-size: .78rem !important;
  line-height: 1 !important;
  font-style: normal !important;
  font-weight: 820 !important;
}

.ptp-profile-v43__fact strong {
  grid-area: value !important;
  min-width: 0 !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: .98rem !important;
  line-height: 1.22 !important;
  font-weight: 820 !important;
  overflow-wrap: anywhere !important;
}

.ptp-profile-v43__styles {
  margin-top: 22px !important;
  display: grid !important;
  gap: 10px !important;
}

.ptp-profile-v43__styles > span {
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: .78rem !important;
  line-height: 1 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
}

.ptp-profile-v43__styles > div {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
}

.ptp-profile-v43__styles b {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 36px !important;
  padding: 0 18px !important;
  border: 1px solid rgba(7,59,64,.12) !important;
  border-radius: 10px !important;
  background: #ffffff !important;
  color: rgba(23,38,41,.84) !important;
  font-size: .83rem !important;
  font-weight: 760 !important;
  box-shadow: 0 8px 18px rgba(7,59,64,.035) !important;
}

.ptp-profile-v43__info .ptp-profile__contact-strip {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 14px !important;
  align-self: end !important;
  margin: 0 !important;
}

.ptp-profile-v43__info .ptp-contact-card {
  min-height: 190px !important;
  height: auto !important;
  padding: 18px !important;
  border: 1px solid rgba(7,59,64,.12) !important;
  border-radius: 14px !important;
  background: #ffffff !important;
  box-shadow: 0 12px 28px rgba(7,59,64,.045) !important;
  overflow: visible !important;
}

.ptp-profile-v43__info .ptp-contact-card h4 {
  margin: 0 0 16px !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: .78rem !important;
  line-height: 1.15 !important;
  letter-spacing: .055em !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
}

.ptp-profile-v43__info .ptp-contact-card p {
  display: flex !important;
  align-items: flex-start !important;
  gap: 9px !important;
  margin: 0 0 12px !important;
  color: rgba(23,38,41,.82) !important;
  font-size: .84rem !important;
  line-height: 1.32 !important;
  font-weight: 650 !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
}

.ptp-profile-v43__locked {
  margin: 0 !important;
  min-height: 190px !important;
}

.ptp-profile-v43__cards {
  display: grid !important;
  grid-template-columns: minmax(0, .9fr) minmax(0, .95fr) minmax(0, .8fr) minmax(0, .8fr) !important;
  gap: 18px !important;
  margin-top: 24px !important;
  align-items: stretch !important;
}

.ptp-profile-v43__card {
  margin: 0 !important;
  min-height: 190px !important;
  padding: 18px !important;
  border: 1px solid rgba(7,59,64,.12) !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  box-shadow: 0 12px 28px rgba(7,59,64,.055) !important;
  overflow: visible !important;
}

.ptp-profile-v43__events,
.ptp-profile-v43__recruiting,
.ptp-profile-v43__offers,
.ptp-profile-v43__social {
  min-height: 210px !important;
}

.ptp-profile-v43__film {
  grid-column: span 2 !important;
  min-height: 150px !important;
}

.ptp-profile-v43__teams {
  grid-column: span 2 !important;
  min-height: 150px !important;
}

.ptp-profile-v43__card .ptp-linked-event-list,
.ptp-profile-v43__card .ptp-linked-team-list {
  gap: 9px !important;
}

.ptp-profile-v43__card .ptp-linked-event-card,
.ptp-profile-v43__card .ptp-linked-team-card {
  padding: 12px !important;
  box-shadow: none !important;
  min-height: 64px !important;
}

.ptp-profile-v43__card .ptp-media-actions {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(155px, 1fr)) !important;
  gap: 12px !important;
}

.ptp-profile-v43__card .ptp-media-actions a {
  min-height: 52px !important;
  border-radius: 10px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  white-space: normal !important;
}

.ptp-profile--v43 .ptp-related-articles {
  margin-top: 24px !important;
  padding: 18px !important;
  border: 1px solid rgba(7,59,64,.12) !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  box-shadow: 0 12px 28px rgba(7,59,64,.055) !important;
}

.ptp-profile--v43 .ptp-related-articles h3,
.ptp-profile--v43 .ptp-related-articles h2 {
  margin-top: 0 !important;
}

@media (max-width: 1240px) {
  .ptp-profile-v43__hero {
    grid-template-columns: minmax(360px, .78fr) minmax(0, 1fr) !important;
  }

  .ptp-profile-v43__info .ptp-profile__contact-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .ptp-profile-v43__cards {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .ptp-profile-v43__film,
  .ptp-profile-v43__teams {
    grid-column: span 1 !important;
  }
}

@media (max-width: 900px) {
  .ptp-profile--v43 {
    width: min(100% - 28px, 1440px) !important;
  }

  .ptp-profile-v43__hero {
    grid-template-columns: 1fr !important;
  }

  .ptp-profile-v43__media-card {
    grid-template-rows: auto auto !important;
  }

  .ptp-profile-v43__photo,
  .ptp-profile-v43__photo img,
  .ptp-profile-v43__placeholder {
    min-height: 360px !important;
  }

  .ptp-profile-v43__heading-row {
    grid-template-columns: 1fr !important;
  }

  .ptp-profile-v43__actions {
    justify-content: flex-start !important;
  }
}

@media (max-width: 680px) {
  .ptp-profile-v43__facts,
  .ptp-profile-v43__info .ptp-profile__contact-strip,
  .ptp-profile-v43__cards {
    grid-template-columns: 1fr !important;
  }

  .ptp-profile-v43__title h1 {
    font-size: 2.7rem !important;
  }
}


/* v4.4 step-by-step player profile layout */
body:has(.ptp-profile--v44) .ptp-page-hero,
body:has(.ptp-profile--v44) .entry-title {
  display: none !important;
}

body:has(.ptp-profile--v44) .ptp-section,
body:has(.ptp-profile--v44) .ptp-main,
body:has(.ptp-profile--v44) .ptp-content-width,
body:has(.ptp-profile--v44) .ptp-article,
body:has(.ptp-profile--v44) .ptp-app-page-shell {
  width: 100% !important;
  max-width: none !important;
}

.ptp-profile--v44 {
  width: min(1420px, calc(100vw - 56px)) !important;
  margin: 0 auto !important;
  padding: 0 0 54px !important;
  color: var(--ptp-teal-dark, #073b40) !important;
}

.ptp-profile-v44__back {
  display: inline-flex !important;
  margin: 0 0 14px !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: .88rem !important;
  font-weight: 850 !important;
  text-decoration: none !important;
}

.ptp-profile-v44__top {
  display: grid !important;
  grid-template-columns: minmax(420px, 0.72fr) minmax(0, 1fr) !important;
  gap: 28px !important;
  align-items: start !important;
}

.ptp-profile-v44__left,
.ptp-profile-v44__right {
  min-width: 0 !important;
}

.ptp-profile-v44__photo {
  position: relative !important;
  width: 100% !important;
  height: 440px !important;
  border-radius: 14px 14px 0 0 !important;
  overflow: hidden !important;
  border: 1px solid rgba(7,59,64,.12) !important;
  border-bottom: 0 !important;
  background: rgba(7,59,64,.06) !important;
}

.ptp-profile-v44__photo img {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  object-fit: cover !important;
  object-position: center top !important;
}

.ptp-profile-v44__placeholder {
  width: 100% !important;
  height: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: linear-gradient(135deg, #073b40, #355d60) !important;
  color: #ffffff !important;
  font-size: 8rem !important;
  font-weight: 900 !important;
}

.ptp-profile-v44__box {
  background: #ffffff !important;
  border: 1px solid rgba(7,59,64,.12) !important;
  border-radius: 14px !important;
  box-shadow: 0 12px 28px rgba(7,59,64,.055) !important;
  padding: 18px !important;
  overflow: visible !important;
}

.ptp-profile-v44__box h3,
.ptp-profile-v44__play-style h3,
.ptp-profile-v44__contact-card h3 {
  margin: 0 0 12px !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: .82rem !important;
  line-height: 1 !important;
  letter-spacing: .055em !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
}

.ptp-profile-v44__box p,
.ptp-profile-v44__box li {
  color: rgba(23,38,41,.78) !important;
  font-size: .92rem !important;
  line-height: 1.55 !important;
  font-weight: 560 !important;
}

.ptp-profile-v44__synopsis {
  border-radius: 0 0 14px 14px !important;
  min-height: 138px !important;
  box-shadow: 0 12px 28px rgba(7,59,64,.055) !important;
}

.ptp-profile-v44__synopsis p {
  margin: 0 0 10px !important;
}

.ptp-profile-v44__title-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: start !important;
  gap: 20px !important;
}

.ptp-profile-v44__title-row h1 {
  margin: 0 0 10px !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: clamp(2.8rem, 4.8vw, 4.9rem) !important;
  line-height: .9 !important;
  letter-spacing: -.065em !important;
  font-weight: 850 !important;
}

.ptp-profile-v44__meta-line {
  margin: 0 !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: clamp(1rem, 1.3vw, 1.22rem) !important;
  font-weight: 720 !important;
}

.ptp-profile-v44__meta-line span {
  opacity: .5 !important;
  margin: 0 10px !important;
}

.ptp-profile-v44__actions {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
}

.ptp-profile-v44__actions .ptp-favorite-button,
.ptp-profile-v44__actions .ptp-save-button,
.ptp-profile-v44__actions button[data-ptp-favorite-player] {
  min-height: 46px !important;
  padding: 0 22px !important;
  border-radius: 9px !important;
  font-size: .84rem !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
}

.ptp-profile-v44__rule {
  height: 1px !important;
  background: rgba(7,59,64,.14) !important;
  margin: 18px 0 20px !important;
}

.ptp-profile-v44__info-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(230px, 1fr)) !important;
  gap: 16px 32px !important;
}

.ptp-profile-v44__info-item {
  display: grid !important;
  grid-template-columns: 30px minmax(0, 1fr) !important;
  grid-template-areas: "icon label" "icon value" !important;
  column-gap: 12px !important;
  min-height: 48px !important;
  align-items: center !important;
}

.ptp-profile-v44__info-item span {
  grid-area: icon !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: 1.25rem !important;
  line-height: 1 !important;
}

.ptp-profile-v44__info-item em {
  grid-area: label !important;
  color: rgba(23,38,41,.64) !important;
  font-size: .78rem !important;
  font-style: normal !important;
  line-height: 1 !important;
  font-weight: 820 !important;
}

.ptp-profile-v44__info-item strong {
  grid-area: value !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: .98rem !important;
  line-height: 1.22 !important;
  font-weight: 820 !important;
  overflow-wrap: anywhere !important;
}

.ptp-profile-v44__play-style {
  display: grid !important;
  gap: 10px !important;
  margin-top: 24px !important;
}

.ptp-profile-v44__play-style > div {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
}

.ptp-profile-v44__play-style span {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 36px !important;
  padding: 0 16px !important;
  border: 1px solid rgba(7,59,64,.12) !important;
  border-radius: 10px !important;
  background: #ffffff !important;
  color: rgba(23,38,41,.84) !important;
  font-size: .83rem !important;
  font-weight: 760 !important;
  box-shadow: 0 8px 18px rgba(7,59,64,.035) !important;
}

.ptp-profile-v44__contacts {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 14px !important;
  margin-top: 22px !important;
}

.ptp-profile-v44__contacts--juco {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.ptp-profile-v44__contact-card {
  display: block !important;
  min-height: 178px !important;
  height: auto !important;
  padding: 18px !important;
  border: 1px solid rgba(7,59,64,.12) !important;
  border-radius: 14px !important;
  background: #ffffff !important;
  box-shadow: 0 12px 28px rgba(7,59,64,.045) !important;
  overflow: visible !important;
}

.ptp-profile-v44__contact-card p {
  display: flex !important;
  align-items: flex-start !important;
  gap: 9px !important;
  margin: 0 0 12px !important;
  color: rgba(23,38,41,.82) !important;
  font-size: .84rem !important;
  line-height: 1.32 !important;
  font-weight: 650 !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
}

.ptp-profile-v44__lower {
  display: grid !important;
  grid-template-columns: minmax(0, .72fr) minmax(0, .72fr) minmax(0, .72fr) minmax(0, .72fr) !important;
  gap: 18px !important;
  margin-top: 24px !important;
  align-items: start !important;
}

.ptp-profile-v44__events,
.ptp-profile-v44__notes,
.ptp-profile-v44__offers,
.ptp-profile-v44__social {
  min-height: 220px !important;
}

.ptp-profile-v44__offer-list {
  display: grid !important;
  gap: 10px !important;
}

.ptp-profile-v44__offer-list > div {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 12px !important;
  align-items: center !important;
  min-height: 38px !important;
}

.ptp-profile-v44__offer-list strong {
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: .94rem !important;
  line-height: 1.2 !important;
  font-weight: 800 !important;
}

.ptp-profile-v44__offer-list span {
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: .78rem !important;
  font-weight: 850 !important;
  opacity: .86 !important;
}

.ptp-profile-v44__details-button {
  margin-top: 12px !important;
}

.ptp-profile-v44__details-button > summary {
  list-style: none !important;
  min-height: 38px !important;
  border: 1px solid rgba(7,59,64,.55) !important;
  border-radius: 8px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: .82rem !important;
  font-weight: 900 !important;
  cursor: pointer !important;
}

.ptp-profile-v44__details-button > summary::-webkit-details-marker {
  display: none !important;
}

.ptp-profile-v44__offer-list--all {
  margin-top: 12px !important;
}

.ptp-profile-v44__social-list {
  display: grid !important;
  gap: 10px !important;
}

.ptp-profile-v44__social-list a {
  display: grid !important;
  grid-template-columns: minmax(90px, .45fr) minmax(0, 1fr) !important;
  gap: 10px !important;
  align-items: center !important;
  min-height: 42px !important;
  padding: 0 12px !important;
  border: 1px solid rgba(7,59,64,.12) !important;
  border-radius: 10px !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  text-decoration: none !important;
  background: #ffffff !important;
}

.ptp-profile-v44__social-list span {
  font-weight: 850 !important;
}

.ptp-profile-v44__social-list strong {
  min-width: 0 !important;
  font-size: .84rem !important;
  font-weight: 650 !important;
  color: rgba(23,38,41,.72) !important;
  overflow-wrap: anywhere !important;
}

.ptp-profile-v44__related {
  margin-top: 18px !important;
}

.ptp-profile-v44__related-head {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 14px !important;
  align-items: center !important;
  margin-bottom: 12px !important;
}

.ptp-profile-v44__related-head h3 {
  margin: 0 !important;
}

.ptp-profile-v44__related-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 14px !important;
}

.ptp-profile-v44__article-card {
  display: grid !important;
  grid-template-columns: 86px minmax(0, 1fr) !important;
  gap: 12px !important;
  min-height: 92px !important;
  padding: 10px !important;
  border: 1px solid rgba(7,59,64,.10) !important;
  border-radius: 12px !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  text-decoration: none !important;
  background: #ffffff !important;
}

.ptp-profile-v44__article-card:not(:has(.ptp-profile-v44__article-image)) {
  grid-template-columns: 1fr !important;
}

.ptp-profile-v44__article-image,
.ptp-profile-v44__article-image img {
  width: 86px !important;
  height: 72px !important;
  border-radius: 9px !important;
  object-fit: cover !important;
  display: block !important;
  overflow: hidden !important;
}

.ptp-profile-v44__article-card em {
  display: block !important;
  color: rgba(23,38,41,.55) !important;
  font-size: .68rem !important;
  font-style: normal !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
}

.ptp-profile-v44__article-card strong {
  display: block !important;
  margin: 4px 0 !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: .84rem !important;
  line-height: 1.18 !important;
  font-weight: 850 !important;
}

.ptp-profile-v44__article-card b {
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: .76rem !important;
  font-weight: 800 !important;
}

@media (max-width: 1180px) {
  .ptp-profile-v44__top {
    grid-template-columns: 1fr !important;
  }

  .ptp-profile-v44__contacts,
  .ptp-profile-v44__contacts--juco,
  .ptp-profile-v44__lower,
  .ptp-profile-v44__related-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 720px) {
  .ptp-profile--v44 {
    width: min(100% - 26px, 1420px) !important;
  }

  .ptp-profile-v44__photo {
    height: 330px !important;
  }

  .ptp-profile-v44__title-row,
  .ptp-profile-v44__info-grid,
  .ptp-profile-v44__contacts,
  .ptp-profile-v44__contacts--juco,
  .ptp-profile-v44__lower,
  .ptp-profile-v44__related-head,
  .ptp-profile-v44__related-grid {
    grid-template-columns: 1fr !important;
  }

  .ptp-profile-v44__actions {
    justify-content: flex-start !important;
  }

  .ptp-profile-v44__title-row h1 {
    font-size: 2.65rem !important;
  }
}


/* v4.5 force player profile out of normal WordPress article/page wrapper */
body.ptp-has-player-profile .ptp-page-hero,
body.ptp-has-player-profile .entry-title,
body.ptp-profile-layout-force .ptp-page-hero,
body.ptp-profile-layout-force .entry-title {
  display: none !important;
}

body.ptp-has-player-profile .ptp-main,
body.ptp-has-player-profile .ptp-section,
body.ptp-has-player-profile .ptp-container,
body.ptp-has-player-profile .ptp-content-width,
body.ptp-has-player-profile .ptp-article,
body.ptp-has-player-profile .entry-content,
body.ptp-has-player-profile .ptp-app-page-shell,
body.ptp-profile-layout-force .ptp-main,
body.ptp-profile-layout-force .ptp-section,
body.ptp-profile-layout-force .ptp-container,
body.ptp-profile-layout-force .ptp-content-width,
body.ptp-profile-layout-force .ptp-article,
body.ptp-profile-layout-force .entry-content,
body.ptp-profile-layout-force .ptp-app-page-shell {
  width: 100% !important;
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body.ptp-has-player-profile .ptp-section,
body.ptp-profile-layout-force .ptp-section {
  padding: 22px 0 0 !important;
}

body.ptp-has-player-profile .ptp-article,
body.ptp-profile-layout-force .ptp-article {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.ptp-has-player-profile .ptp-profile--v44,
body.ptp-profile-layout-force .ptp-profile--v44 {
  display: block !important;
  width: min(1420px, calc(100vw - 56px)) !important;
  max-width: none !important;
  margin: 0 auto !important;
}

body.ptp-has-player-profile .ptp-profile-v44__top,
body.ptp-profile-layout-force .ptp-profile-v44__top {
  display: grid !important;
  grid-template-columns: minmax(420px, .72fr) minmax(0, 1fr) !important;
  gap: 28px !important;
  align-items: start !important;
}

body.ptp-has-player-profile .ptp-profile-v44__left,
body.ptp-has-player-profile .ptp-profile-v44__right,
body.ptp-profile-layout-force .ptp-profile-v44__left,
body.ptp-profile-layout-force .ptp-profile-v44__right {
  min-width: 0 !important;
}

body.ptp-has-player-profile .ptp-profile-v44__photo,
body.ptp-profile-layout-force .ptp-profile-v44__photo {
  height: 440px !important;
  min-height: 440px !important;
  width: 100% !important;
}

body.ptp-has-player-profile .ptp-profile-v44__photo img,
body.ptp-profile-layout-force .ptp-profile-v44__photo img {
  height: 100% !important;
  min-height: 440px !important;
  width: 100% !important;
  object-fit: cover !important;
}

body.ptp-has-player-profile .ptp-profile-v44__contacts,
body.ptp-profile-layout-force .ptp-profile-v44__contacts {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 14px !important;
}

body.ptp-has-player-profile .ptp-profile-v44__lower,
body.ptp-profile-layout-force .ptp-profile-v44__lower {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 18px !important;
}

@media (max-width: 1180px) {
  body.ptp-has-player-profile .ptp-profile-v44__top,
  body.ptp-profile-layout-force .ptp-profile-v44__top {
    grid-template-columns: 1fr !important;
  }

  body.ptp-has-player-profile .ptp-profile-v44__contacts,
  body.ptp-has-player-profile .ptp-profile-v44__lower,
  body.ptp-profile-layout-force .ptp-profile-v44__contacts,
  body.ptp-profile-layout-force .ptp-profile-v44__lower {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 720px) {
  body.ptp-has-player-profile .ptp-profile--v44,
  body.ptp-profile-layout-force .ptp-profile--v44 {
    width: min(100% - 26px, 1420px) !important;
  }

  body.ptp-has-player-profile .ptp-profile-v44__contacts,
  body.ptp-has-player-profile .ptp-profile-v44__lower,
  body.ptp-profile-layout-force .ptp-profile-v44__contacts,
  body.ptp-profile-layout-force .ptp-profile-v44__lower {
    grid-template-columns: 1fr !important;
  }
}


/* v4.6 profile icons match player cards exactly */
.ptp-profile-v44__info-item span {
  width: 18px !important;
  height: 18px !important;
  display: block !important;
  background-color: var(--ptp-teal-dark, #073b40) !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: 18px 18px !important;
  opacity: .9 !important;
  font-size: 0 !important;
  line-height: 0 !important;
}

/* school: exact graduation cap icon from player cards */
.ptp-profile-v44__info-item--school span {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 3 1.5 8.4 12 14 22.5 8.4 12 3Zm-6 8.4v4.1c0 2 3.1 3.5 6 3.5s6-1.5 6-3.5v-4.1l-6 3.2-6-3.2Zm14-1.2v5.6h1.6V9.4L20 10.2Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 3 1.5 8.4 12 14 22.5 8.4 12 3Zm-6 8.4v4.1c0 2 3.1 3.5 6 3.5s6-1.5 6-3.5v-4.1l-6 3.2-6-3.2Zm14-1.2v5.6h1.6V9.4L20 10.2Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

/* location: exact pin icon from player cards */
.ptp-profile-v44__info-item--location span {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a7 7 0 0 0-7 7c0 5.25 7 13 7 13s7-7.75 7-13a7 7 0 0 0-7-7Zm0 9.8A2.8 2.8 0 1 1 12 6.2a2.8 2.8 0 0 1 0 5.6Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a7 7 0 0 0-7 7c0 5.25 7 13 7 13s7-7.75 7-13a7 7 0 0 0-7-7Zm0 9.8A2.8 2.8 0 1 1 12 6.2a2.8 2.8 0 0 1 0 5.6Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

/* GPA: exact thin upward diagonal/squiggle from player cards */
.ptp-profile-v44__info-item--gpa span {
  background-color: transparent !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M3 17 C6 12 8 15 11 10 C13 7 15 8 18 4' stroke='%23073b40' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M18 4h-4M18 4v4' stroke='%23073b40' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}

/* projected level: exact three ascending bars from player cards */
.ptp-profile-v44__info-item--projected span {
  background-color: transparent !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='4' y='13' width='3.2' height='7' rx='1' fill='%23073b40'/%3E%3Crect x='10.4' y='9' width='3.2' height='11' rx='1' fill='%23073b40'/%3E%3Crect x='16.8' y='4' width='3.2' height='16' rx='1' fill='%23073b40'/%3E%3C/svg%3E") !important;
}

/* Force the profile HS/JUCO sticker and connected High School/JUCO label to match player cards */
.ptp-profile-v44__photo .ptp-player-card__sticker {
  top: 18px !important;
  left: 18px !important;
  z-index: 6 !important;
  display: inline-flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  min-width: 0 !important;
  min-height: 0 !important;
  width: auto !important;
  max-width: none !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}

.ptp-profile-v44__photo .ptp-player-card__sticker::before {
  display: none !important;
  content: none !important;
}

.ptp-profile-v44__photo .ptp-player-card__sticker b {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 70px !important;
  height: 58px !important;
  min-width: 70px !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 8px 8px 8px 0 !important;
  font-size: 1.9rem !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: .02em !important;
  text-align: center !important;
  box-shadow: 0 8px 18px rgba(0,0,0,.22) !important;
}

.ptp-profile-v44__photo .ptp-player-card__sticker em {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 70px !important;
  height: 22px !important;
  padding: 0 7px !important;
  margin: 0 !important;
  border-radius: 0 0 5px 5px !important;
  font-size: .5rem !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  letter-spacing: .045em !important;
  font-style: normal !important;
  font-weight: 950 !important;
  text-align: center !important;
  box-shadow: 0 8px 18px rgba(0,0,0,.16) !important;
  white-space: nowrap !important;
}

.ptp-profile-v44__photo .ptp-player-card__sticker--hs b {
  background: linear-gradient(180deg,#0f5557,#073f42) !important;
  color: #fff !important;
  border: 1px solid rgba(255,255,255,.16) !important;
}

.ptp-profile-v44__photo .ptp-player-card__sticker--hs em {
  background: var(--ptp-gold) !important;
  color: #fff !important;
}

.ptp-profile-v44__photo .ptp-player-card__sticker--juco b {
  background: #fff !important;
  color: var(--ptp-teal-dark) !important;
  border: 1px solid rgba(13,51,55,.16) !important;
}

.ptp-profile-v44__photo .ptp-player-card__sticker--juco em {
  background: var(--ptp-sage) !important;
  color: var(--ptp-teal-dark) !important;
}


/* v4.7 exact player-card HS/JUCO badge on player profile */
.ptp-profile-v44__photo.ptp-player-card__photo.ptp-player-card--option10 .ptp-player-card__sticker {
  top: 18px !important;
  left: 18px !important;
  z-index: 6 !important;
  display: inline-flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  min-width: 0 !important;
  min-height: 0 !important;
  width: auto !important;
  max-width: none !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}

.ptp-profile-v44__photo.ptp-player-card__photo.ptp-player-card--option10 .ptp-player-card__sticker::before,
.ptp-profile-v44__photo.ptp-player-card__photo.ptp-player-card--option10 .ptp-player-card__sticker::after {
  display: none !important;
  content: none !important;
}

.ptp-profile-v44__photo.ptp-player-card__photo.ptp-player-card--option10 .ptp-player-card__sticker b {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 70px !important;
  height: 58px !important;
  min-width: 70px !important;
  max-width: 70px !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 8px 8px 8px 0 !important;
  font-size: 1.9rem !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: .02em !important;
  text-align: center !important;
  box-shadow: 0 8px 18px rgba(0,0,0,.22) !important;
}

.ptp-profile-v44__photo.ptp-player-card__photo.ptp-player-card--option10 .ptp-player-card__sticker em {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 70px !important;
  width: auto !important;
  height: 22px !important;
  padding: 0 7px !important;
  margin: 0 !important;
  border-radius: 0 0 5px 5px !important;
  font-size: .5rem !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  letter-spacing: .045em !important;
  font-style: normal !important;
  font-weight: 950 !important;
  text-align: center !important;
  box-shadow: 0 8px 18px rgba(0,0,0,.16) !important;
  white-space: nowrap !important;
}

.ptp-profile-v44__photo.ptp-player-card__photo.ptp-player-card--option10 .ptp-player-card__sticker--hs b {
  background: linear-gradient(180deg,#0f5557,#073f42) !important;
  color: #fff !important;
  border: 1px solid rgba(255,255,255,.16) !important;
}

.ptp-profile-v44__photo.ptp-player-card__photo.ptp-player-card--option10 .ptp-player-card__sticker--hs em {
  background: var(--ptp-gold) !important;
  color: #fff !important;
}

.ptp-profile-v44__photo.ptp-player-card__photo.ptp-player-card--option10 .ptp-player-card__sticker--juco b {
  background: #fff !important;
  color: var(--ptp-teal-dark) !important;
  border: 1px solid rgba(13,51,55,.16) !important;
}

.ptp-profile-v44__photo.ptp-player-card__photo.ptp-player-card--option10 .ptp-player-card__sticker--juco em {
  background: var(--ptp-sage) !important;
  color: var(--ptp-teal-dark) !important;
}


/* v4.8 final profile HS/JUCO badge shape: rectangular, joined, lower label slightly narrower */
body.ptp-has-player-profile .ptp-profile-v44__photo .ptp-player-card__sticker,
body.ptp-profile-layout-force .ptp-profile-v44__photo .ptp-player-card__sticker,
.ptp-profile-v44__photo .ptp-player-card__sticker {
  position: absolute !important;
  top: 18px !important;
  left: 18px !important;
  z-index: 20 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 0 !important;
  width: 76px !important;
  min-width: 76px !important;
  max-width: 76px !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}

body.ptp-has-player-profile .ptp-profile-v44__photo .ptp-player-card__sticker::before,
body.ptp-has-player-profile .ptp-profile-v44__photo .ptp-player-card__sticker::after,
body.ptp-profile-layout-force .ptp-profile-v44__photo .ptp-player-card__sticker::before,
body.ptp-profile-layout-force .ptp-profile-v44__photo .ptp-player-card__sticker::after,
.ptp-profile-v44__photo .ptp-player-card__sticker::before,
.ptp-profile-v44__photo .ptp-player-card__sticker::after {
  display: none !important;
  content: none !important;
}

body.ptp-has-player-profile .ptp-profile-v44__photo .ptp-player-card__sticker b,
body.ptp-profile-layout-force .ptp-profile-v44__photo .ptp-player-card__sticker b,
.ptp-profile-v44__photo .ptp-player-card__sticker b {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 76px !important;
  min-width: 76px !important;
  max-width: 76px !important;
  height: 50px !important;
  min-height: 50px !important;
  max-height: 50px !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 8px !important;
  font-size: 1.72rem !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: .02em !important;
  text-align: center !important;
  box-shadow: 0 8px 18px rgba(0,0,0,.22) !important;
  box-sizing: border-box !important;
}

body.ptp-has-player-profile .ptp-profile-v44__photo .ptp-player-card__sticker em,
body.ptp-profile-layout-force .ptp-profile-v44__photo .ptp-player-card__sticker em,
.ptp-profile-v44__photo .ptp-player-card__sticker em {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 66px !important;
  min-width: 66px !important;
  max-width: 66px !important;
  height: 20px !important;
  min-height: 20px !important;
  max-height: 20px !important;
  padding: 0 4px !important;
  margin: 0 !important;
  border-radius: 0 0 6px 6px !important;
  font-size: 7px !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  letter-spacing: .035em !important;
  font-style: normal !important;
  font-weight: 950 !important;
  text-align: center !important;
  box-shadow: 0 8px 18px rgba(0,0,0,.16) !important;
  white-space: nowrap !important;
  box-sizing: border-box !important;
}

/* HS colors */
body.ptp-has-player-profile .ptp-profile-v44__photo .ptp-player-card__sticker--hs b,
body.ptp-profile-layout-force .ptp-profile-v44__photo .ptp-player-card__sticker--hs b,
.ptp-profile-v44__photo .ptp-player-card__sticker--hs b {
  background: linear-gradient(180deg,#0f5557,#073f42) !important;
  color: #ffffff !important;
  border: 1px solid rgba(255,255,255,.16) !important;
}

body.ptp-has-player-profile .ptp-profile-v44__photo .ptp-player-card__sticker--hs em,
body.ptp-profile-layout-force .ptp-profile-v44__photo .ptp-player-card__sticker--hs em,
.ptp-profile-v44__photo .ptp-player-card__sticker--hs em {
  background: var(--ptp-gold, #d7a84f) !important;
  color: #ffffff !important;
}

/* JUCO colors */
body.ptp-has-player-profile .ptp-profile-v44__photo .ptp-player-card__sticker--juco b,
body.ptp-profile-layout-force .ptp-profile-v44__photo .ptp-player-card__sticker--juco b,
.ptp-profile-v44__photo .ptp-player-card__sticker--juco b {
  background: #ffffff !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  border: 1px solid rgba(13,51,55,.16) !important;
}

body.ptp-has-player-profile .ptp-profile-v44__photo .ptp-player-card__sticker--juco em,
body.ptp-profile-layout-force .ptp-profile-v44__photo .ptp-player-card__sticker--juco em,
.ptp-profile-v44__photo .ptp-player-card__sticker--juco em {
  background: var(--ptp-sage, #9ab9a8) !important;
  color: var(--ptp-teal-dark, #073b40) !important;
}


/* v4.9 profile image quality + corrected HS/JUCO badge proportions */
body.ptp-has-player-profile .ptp-profile-v44__photo.ptp-player-card__photo,
body.ptp-profile-layout-force .ptp-profile-v44__photo.ptp-player-card__photo,
.ptp-profile-v44__photo.ptp-player-card__photo {
  background: #1f585b !important;
}

/* Remove the player-card image overlay from profile photos. It was creating the dark shaded band. */
body.ptp-has-player-profile .ptp-profile-v44__photo.ptp-player-card__photo::after,
body.ptp-profile-layout-force .ptp-profile-v44__photo.ptp-player-card__photo::after,
.ptp-profile-v44__photo.ptp-player-card__photo::after {
  content: none !important;
  display: none !important;
  background: none !important;
  opacity: 0 !important;
}

body.ptp-has-player-profile .ptp-profile-v44__photo.ptp-player-card__photo img,
body.ptp-profile-layout-force .ptp-profile-v44__photo.ptp-player-card__photo img,
.ptp-profile-v44__photo.ptp-player-card__photo img {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  object-fit: cover !important;
  object-position: center top !important;
  filter: none !important;
  opacity: 1 !important;
}

/* Keep the placeholder clean and evenly colored if a player has no photo yet. */
body.ptp-has-player-profile .ptp-profile-v44__placeholder,
body.ptp-profile-layout-force .ptp-profile-v44__placeholder,
.ptp-profile-v44__placeholder {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  background: #245d60 !important;
  color: #ffffff !important;
}

/* Badge should match the provided reference: wide rounded rectangle + narrower attached lower tab. */
body.ptp-has-player-profile .ptp-profile-v44__photo .ptp-player-card__sticker,
body.ptp-profile-layout-force .ptp-profile-v44__photo .ptp-player-card__sticker,
.ptp-profile-v44__photo .ptp-player-card__sticker {
  position: absolute !important;
  top: 34px !important;
  left: 34px !important;
  z-index: 30 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 0 !important;
  width: 176px !important;
  min-width: 176px !important;
  max-width: 176px !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}

body.ptp-has-player-profile .ptp-profile-v44__photo .ptp-player-card__sticker::before,
body.ptp-has-player-profile .ptp-profile-v44__photo .ptp-player-card__sticker::after,
body.ptp-profile-layout-force .ptp-profile-v44__photo .ptp-player-card__sticker::before,
body.ptp-profile-layout-force .ptp-profile-v44__photo .ptp-player-card__sticker::after,
.ptp-profile-v44__photo .ptp-player-card__sticker::before,
.ptp-profile-v44__photo .ptp-player-card__sticker::after {
  display: none !important;
  content: none !important;
}

body.ptp-has-player-profile .ptp-profile-v44__photo .ptp-player-card__sticker b,
body.ptp-profile-layout-force .ptp-profile-v44__photo .ptp-player-card__sticker b,
.ptp-profile-v44__photo .ptp-player-card__sticker b {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 176px !important;
  min-width: 176px !important;
  max-width: 176px !important;
  height: 102px !important;
  min-height: 102px !important;
  max-height: 102px !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 12px !important;
  font-size: 4.18rem !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: .01em !important;
  text-align: center !important;
  box-shadow: 0 10px 22px rgba(0,0,0,.22) !important;
  box-sizing: border-box !important;
}

body.ptp-has-player-profile .ptp-profile-v44__photo .ptp-player-card__sticker em,
body.ptp-profile-layout-force .ptp-profile-v44__photo .ptp-player-card__sticker em,
.ptp-profile-v44__photo .ptp-player-card__sticker em {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 128px !important;
  min-width: 128px !important;
  max-width: 128px !important;
  height: 40px !important;
  min-height: 40px !important;
  max-height: 40px !important;
  padding: 0 8px !important;
  margin: 0 !important;
  border-radius: 0 0 9px 9px !important;
  font-size: .82rem !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  letter-spacing: .015em !important;
  font-style: normal !important;
  font-weight: 950 !important;
  text-align: center !important;
  box-shadow: 0 9px 20px rgba(0,0,0,.16) !important;
  white-space: nowrap !important;
  box-sizing: border-box !important;
}

/* Reference HS colors */
body.ptp-has-player-profile .ptp-profile-v44__photo .ptp-player-card__sticker--hs b,
body.ptp-profile-layout-force .ptp-profile-v44__photo .ptp-player-card__sticker--hs b,
.ptp-profile-v44__photo .ptp-player-card__sticker--hs b {
  background: linear-gradient(180deg, #0c5a5c 0%, #074347 100%) !important;
  color: #ffffff !important;
  border: 2px solid rgba(114, 171, 173, .45) !important;
}

body.ptp-has-player-profile .ptp-profile-v44__photo .ptp-player-card__sticker--hs em,
body.ptp-profile-layout-force .ptp-profile-v44__photo .ptp-player-card__sticker--hs em,
.ptp-profile-v44__photo .ptp-player-card__sticker--hs em {
  background: #dcb351 !important;
  color: #ffffff !important;
}

/* JUCO keeps the same exact shape with JUCO palette */
body.ptp-has-player-profile .ptp-profile-v44__photo .ptp-player-card__sticker--juco b,
body.ptp-profile-layout-force .ptp-profile-v44__photo .ptp-player-card__sticker--juco b,
.ptp-profile-v44__photo .ptp-player-card__sticker--juco b {
  background: #ffffff !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  border: 2px solid rgba(13,51,55,.18) !important;
}

body.ptp-has-player-profile .ptp-profile-v44__photo .ptp-player-card__sticker--juco em,
body.ptp-profile-layout-force .ptp-profile-v44__photo .ptp-player-card__sticker--juco em,
.ptp-profile-v44__photo .ptp-player-card__sticker--juco em {
  background: var(--ptp-sage, #9ab9a8) !important;
  color: var(--ptp-teal-dark, #073b40) !important;
}

@media (max-width: 720px) {
  body.ptp-has-player-profile .ptp-profile-v44__photo .ptp-player-card__sticker,
  body.ptp-profile-layout-force .ptp-profile-v44__photo .ptp-player-card__sticker,
  .ptp-profile-v44__photo .ptp-player-card__sticker {
    top: 22px !important;
    left: 22px !important;
    width: 128px !important;
    min-width: 128px !important;
    max-width: 128px !important;
  }

  body.ptp-has-player-profile .ptp-profile-v44__photo .ptp-player-card__sticker b,
  body.ptp-profile-layout-force .ptp-profile-v44__photo .ptp-player-card__sticker b,
  .ptp-profile-v44__photo .ptp-player-card__sticker b {
    width: 128px !important;
    min-width: 128px !important;
    max-width: 128px !important;
    height: 74px !important;
    min-height: 74px !important;
    max-height: 74px !important;
    font-size: 3rem !important;
    border-radius: 10px !important;
  }

  body.ptp-has-player-profile .ptp-profile-v44__photo .ptp-player-card__sticker em,
  body.ptp-profile-layout-force .ptp-profile-v44__photo .ptp-player-card__sticker em,
  .ptp-profile-v44__photo .ptp-player-card__sticker em {
    width: 94px !important;
    min-width: 94px !important;
    max-width: 94px !important;
    height: 30px !important;
    min-height: 30px !important;
    max-height: 30px !important;
    font-size: .62rem !important;
  }
}


/* v5.0 profile badge rebuilt with profile-only classes to avoid player-card CSS conflicts */
body.ptp-has-player-profile .ptp-profile-v44__photo .ptp-profile-type-badge,
body.ptp-profile-layout-force .ptp-profile-v44__photo .ptp-profile-type-badge,
.ptp-profile-v44__photo .ptp-profile-type-badge {
  position: absolute !important;
  top: 34px !important;
  left: 34px !important;
  z-index: 40 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 0 !important;
  width: 176px !important;
  min-width: 176px !important;
  max-width: 176px !important;
  height: 142px !important;
  min-height: 142px !important;
  max-height: 142px !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
  box-sizing: border-box !important;
  line-height: 1 !important;
  transform: none !important;
}

body.ptp-has-player-profile .ptp-profile-v44__photo .ptp-profile-type-badge strong,
body.ptp-profile-layout-force .ptp-profile-v44__photo .ptp-profile-type-badge strong,
.ptp-profile-v44__photo .ptp-profile-type-badge strong {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 176px !important;
  min-width: 176px !important;
  max-width: 176px !important;
  height: 102px !important;
  min-height: 102px !important;
  max-height: 102px !important;
  flex: 0 0 102px !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 12px !important;
  font-family: inherit !important;
  font-size: 4.15rem !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: .01em !important;
  text-align: center !important;
  box-sizing: border-box !important;
  box-shadow: 0 10px 22px rgba(0,0,0,.22) !important;
  transform: none !important;
}

body.ptp-has-player-profile .ptp-profile-v44__photo .ptp-profile-type-badge small,
body.ptp-profile-layout-force .ptp-profile-v44__photo .ptp-profile-type-badge small,
.ptp-profile-v44__photo .ptp-profile-type-badge small {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 128px !important;
  min-width: 128px !important;
  max-width: 128px !important;
  height: 40px !important;
  min-height: 40px !important;
  max-height: 40px !important;
  flex: 0 0 40px !important;
  padding: 0 8px !important;
  margin: 0 !important;
  border-radius: 0 0 9px 9px !important;
  font-family: inherit !important;
  font-size: .82rem !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: .015em !important;
  text-transform: uppercase !important;
  text-align: center !important;
  white-space: nowrap !important;
  box-sizing: border-box !important;
  box-shadow: 0 9px 20px rgba(0,0,0,.16) !important;
  transform: none !important;
}

body.ptp-has-player-profile .ptp-profile-v44__photo .ptp-profile-type-badge--hs strong,
body.ptp-profile-layout-force .ptp-profile-v44__photo .ptp-profile-type-badge--hs strong,
.ptp-profile-v44__photo .ptp-profile-type-badge--hs strong {
  background: linear-gradient(180deg, #0c5a5c 0%, #074347 100%) !important;
  color: #ffffff !important;
  border: 2px solid rgba(114, 171, 173, .45) !important;
}

body.ptp-has-player-profile .ptp-profile-v44__photo .ptp-profile-type-badge--hs small,
body.ptp-profile-layout-force .ptp-profile-v44__photo .ptp-profile-type-badge--hs small,
.ptp-profile-v44__photo .ptp-profile-type-badge--hs small {
  background: #dcb351 !important;
  color: #ffffff !important;
}

body.ptp-has-player-profile .ptp-profile-v44__photo .ptp-profile-type-badge--juco strong,
body.ptp-profile-layout-force .ptp-profile-v44__photo .ptp-profile-type-badge--juco strong,
.ptp-profile-v44__photo .ptp-profile-type-badge--juco strong {
  background: #ffffff !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  border: 2px solid rgba(13,51,55,.18) !important;
}

body.ptp-has-player-profile .ptp-profile-v44__photo .ptp-profile-type-badge--juco small,
body.ptp-profile-layout-force .ptp-profile-v44__photo .ptp-profile-type-badge--juco small,
.ptp-profile-v44__photo .ptp-profile-type-badge--juco small {
  background: var(--ptp-sage, #9ab9a8) !important;
  color: var(--ptp-teal-dark, #073b40) !important;
}

@media (max-width: 720px) {
  body.ptp-has-player-profile .ptp-profile-v44__photo .ptp-profile-type-badge,
  body.ptp-profile-layout-force .ptp-profile-v44__photo .ptp-profile-type-badge,
  .ptp-profile-v44__photo .ptp-profile-type-badge {
    top: 22px !important;
    left: 22px !important;
    width: 128px !important;
    min-width: 128px !important;
    max-width: 128px !important;
    height: 104px !important;
    min-height: 104px !important;
    max-height: 104px !important;
  }

  body.ptp-has-player-profile .ptp-profile-v44__photo .ptp-profile-type-badge strong,
  body.ptp-profile-layout-force .ptp-profile-v44__photo .ptp-profile-type-badge strong,
  .ptp-profile-v44__photo .ptp-profile-type-badge strong {
    width: 128px !important;
    min-width: 128px !important;
    max-width: 128px !important;
    height: 74px !important;
    min-height: 74px !important;
    max-height: 74px !important;
    flex-basis: 74px !important;
    font-size: 3rem !important;
    border-radius: 10px !important;
  }

  body.ptp-has-player-profile .ptp-profile-v44__photo .ptp-profile-type-badge small,
  body.ptp-profile-layout-force .ptp-profile-v44__photo .ptp-profile-type-badge small,
  .ptp-profile-v44__photo .ptp-profile-type-badge small {
    width: 94px !important;
    min-width: 94px !important;
    max-width: 94px !important;
    height: 30px !important;
    min-height: 30px !important;
    max-height: 30px !important;
    flex-basis: 30px !important;
    font-size: .62rem !important;
  }
}


/* v5.1 smaller profile HS/JUCO badge + taller/skinnier lettering */
body.ptp-has-player-profile .ptp-profile-v44__photo .ptp-profile-type-badge,
body.ptp-profile-layout-force .ptp-profile-v44__photo .ptp-profile-type-badge,
.ptp-profile-v44__photo .ptp-profile-type-badge {
  top: 22px !important;
  left: 22px !important;
  width: 112px !important;
  min-width: 112px !important;
  max-width: 112px !important;
  height: 89px !important;
  min-height: 89px !important;
  max-height: 89px !important;
}

body.ptp-has-player-profile .ptp-profile-v44__photo .ptp-profile-type-badge strong,
body.ptp-profile-layout-force .ptp-profile-v44__photo .ptp-profile-type-badge strong,
.ptp-profile-v44__photo .ptp-profile-type-badge strong {
  width: 112px !important;
  min-width: 112px !important;
  max-width: 112px !important;
  height: 64px !important;
  min-height: 64px !important;
  max-height: 64px !important;
  flex: 0 0 64px !important;
  border-radius: 10px !important;
  font-size: 3.05rem !important;
  font-weight: 900 !important;
  letter-spacing: -.06em !important;
  transform: scaleX(.72) scaleY(1.08) !important;
  transform-origin: center center !important;
}

body.ptp-has-player-profile .ptp-profile-v44__photo .ptp-profile-type-badge small,
body.ptp-profile-layout-force .ptp-profile-v44__photo .ptp-profile-type-badge small,
.ptp-profile-v44__photo .ptp-profile-type-badge small {
  width: 86px !important;
  min-width: 86px !important;
  max-width: 86px !important;
  height: 25px !important;
  min-height: 25px !important;
  max-height: 25px !important;
  flex: 0 0 25px !important;
  border-radius: 0 0 7px 7px !important;
  font-size: .55rem !important;
  font-weight: 950 !important;
  letter-spacing: -.015em !important;
  transform: scaleX(.9) scaleY(1.05) !important;
  transform-origin: top center !important;
}

/* Keep JUCO readable at the smaller size while using the same skinnier/taller feel. */
body.ptp-has-player-profile .ptp-profile-v44__photo .ptp-profile-type-badge--juco strong,
body.ptp-profile-layout-force .ptp-profile-v44__photo .ptp-profile-type-badge--juco strong,
.ptp-profile-v44__photo .ptp-profile-type-badge--juco strong {
  font-size: 2.05rem !important;
  letter-spacing: -.08em !important;
  transform: scaleX(.78) scaleY(1.08) !important;
}

@media (max-width: 720px) {
  body.ptp-has-player-profile .ptp-profile-v44__photo .ptp-profile-type-badge,
  body.ptp-profile-layout-force .ptp-profile-v44__photo .ptp-profile-type-badge,
  .ptp-profile-v44__photo .ptp-profile-type-badge {
    top: 18px !important;
    left: 18px !important;
    width: 96px !important;
    min-width: 96px !important;
    max-width: 96px !important;
    height: 76px !important;
    min-height: 76px !important;
    max-height: 76px !important;
  }

  body.ptp-has-player-profile .ptp-profile-v44__photo .ptp-profile-type-badge strong,
  body.ptp-profile-layout-force .ptp-profile-v44__photo .ptp-profile-type-badge strong,
  .ptp-profile-v44__photo .ptp-profile-type-badge strong {
    width: 96px !important;
    min-width: 96px !important;
    max-width: 96px !important;
    height: 55px !important;
    min-height: 55px !important;
    max-height: 55px !important;
    flex-basis: 55px !important;
    font-size: 2.55rem !important;
  }

  body.ptp-has-player-profile .ptp-profile-v44__photo .ptp-profile-type-badge small,
  body.ptp-profile-layout-force .ptp-profile-v44__photo .ptp-profile-type-badge small,
  .ptp-profile-v44__photo .ptp-profile-type-badge small {
    width: 74px !important;
    min-width: 74px !important;
    max-width: 74px !important;
    height: 21px !important;
    min-height: 21px !important;
    max-height: 21px !important;
    flex-basis: 21px !important;
    font-size: .48rem !important;
  }

  body.ptp-has-player-profile .ptp-profile-v44__photo .ptp-profile-type-badge--juco strong,
  body.ptp-profile-layout-force .ptp-profile-v44__photo .ptp-profile-type-badge--juco strong,
  .ptp-profile-v44__photo .ptp-profile-type-badge--juco strong {
    font-size: 1.72rem !important;
  }
}


/* v5.3 player submission form sections */
.ptp-form-section {
  border: 1px solid rgba(7,59,64,.12) !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  padding: 18px !important;
  box-shadow: 0 12px 28px rgba(7,59,64,.055) !important;
  margin: 0 !important;
}

.ptp-form-section legend {
  padding: 0 8px !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: .9rem !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: .045em !important;
}

.ptp-form-section__help {
  margin: 0 0 14px !important;
  color: rgba(23,38,41,.68) !important;
  font-size: .9rem !important;
  font-weight: 650 !important;
}

.ptp-form__grid--inner {
  margin: 0 !important;
}

.ptp-form-radio-row {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
}

.ptp-form-radio-row label {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  min-height: 42px !important;
  padding: 0 14px !important;
  border: 1px solid rgba(7,59,64,.14) !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-weight: 850 !important;
}

.ptp-form-radio-row input {
  margin: 0 !important;
}

.ptp-form-section[hidden] {
  display: none !important;
}


/* v5.4 staff access additional logins */
.ptp-form select {
  width: 100% !important;
  min-height: 42px !important;
  border: 1px solid rgba(7,59,64,.16) !important;
  border-radius: 10px !important;
  padding: 0 12px !important;
  background: #ffffff !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-weight: 650 !important;
}

.ptp-additional-staff-toggle {
  margin-bottom: 14px !important;
}

.ptp-additional-staff-count {
  max-width: 320px !important;
  margin-bottom: 16px !important;
}

.ptp-additional-staff-count[hidden],
.ptp-additional-staff-forms[hidden],
.ptp-additional-staff-card[hidden] {
  display: none !important;
}

.ptp-additional-staff-forms {
  display: grid !important;
  gap: 14px !important;
}

.ptp-additional-staff-card {
  border: 1px solid rgba(7,59,64,.12) !important;
  border-radius: 14px !important;
  padding: 16px !important;
  background: rgba(154,185,168,.08) !important;
  margin: 0 !important;
}

.ptp-additional-staff-card legend {
  padding: 0 8px !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: .82rem !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: .04em !important;
}


/* v5.6 social links */
.ptp-social-links {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 8px !important;
}

.ptp-social-link {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  transition: transform .18s ease, border-color .18s ease, background .18s ease !important;
}

.ptp-social-link:hover {
  transform: translateY(-1px) !important;
}

.ptp-social-links--header {
  margin-right: 8px !important;
}

.ptp-social-links--header .ptp-social-link {
  width: 34px !important;
  height: 34px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(7,59,64,.16) !important;
  background: #ffffff !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: .67rem !important;
  letter-spacing: -.02em !important;
}

.ptp-social-links--footer {
  margin-top: 14px !important;
  gap: 10px !important;
}

.ptp-social-links--footer .ptp-social-link {
  min-height: 34px !important;
  padding: 0 12px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(255,255,255,.22) !important;
  color: #ffffff !important;
  background: rgba(255,255,255,.06) !important;
  font-size: .78rem !important;
}

@media (max-width: 980px) {
  .ptp-social-links--header {
    display: none !important;
  }
}


/* v5.7 true social media icons instead of text labels */
.ptp-social-link span:not(.screen-reader-text) {
  display: inline-flex !important;
}

.ptp-social-link__icon {
  width: 18px !important;
  height: 18px !important;
  display: inline-block !important;
  background: currentColor !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: contain !important;
  flex: 0 0 18px !important;
}

.ptp-social-links--header .ptp-social-link__icon {
  width: 16px !important;
  height: 16px !important;
  flex-basis: 16px !important;
}

.ptp-social-links--footer .ptp-social-link {
  width: 38px !important;
  min-width: 38px !important;
  height: 38px !important;
  min-height: 38px !important;
  padding: 0 !important;
}

.ptp-social-links--footer .ptp-social-link__icon {
  width: 18px !important;
  height: 18px !important;
  flex-basis: 18px !important;
}

/* X / Twitter icon */
.ptp-social-link--x .ptp-social-link__icon {
  -webkit-mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='black' d='M18.244 2H21.5l-7.11 8.126L22.75 22h-6.544l-5.126-6.7L5.214 22H1.956l7.605-8.694L1.55 2h6.71l4.633 6.124L18.244 2Zm-1.142 17.91h1.804L7.28 3.98H5.344l11.758 15.93Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
          mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='black' d='M18.244 2H21.5l-7.11 8.126L22.75 22h-6.544l-5.126-6.7L5.214 22H1.956l7.605-8.694L1.55 2h6.71l4.633 6.124L18.244 2Zm-1.142 17.91h1.804L7.28 3.98H5.344l11.758 15.93Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

/* Instagram icon */
.ptp-social-link--instagram .ptp-social-link__icon {
  -webkit-mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='black' d='M7.75 2h8.5A5.76 5.76 0 0 1 22 7.75v8.5A5.76 5.76 0 0 1 16.25 22h-8.5A5.76 5.76 0 0 1 2 16.25v-8.5A5.76 5.76 0 0 1 7.75 2Zm0 2A3.75 3.75 0 0 0 4 7.75v8.5A3.75 3.75 0 0 0 7.75 20h8.5A3.75 3.75 0 0 0 20 16.25v-8.5A3.75 3.75 0 0 0 16.25 4h-8.5ZM12 7a5 5 0 1 1 0 10 5 5 0 0 1 0-10Zm0 2a3 3 0 1 0 0 6 3 3 0 0 0 0-6Zm5.25-2.25a1.15 1.15 0 1 1 0 2.3 1.15 1.15 0 0 1 0-2.3Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
          mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='black' d='M7.75 2h8.5A5.76 5.76 0 0 1 22 7.75v8.5A5.76 5.76 0 0 1 16.25 22h-8.5A5.76 5.76 0 0 1 2 16.25v-8.5A5.76 5.76 0 0 1 7.75 2Zm0 2A3.75 3.75 0 0 0 4 7.75v8.5A3.75 3.75 0 0 0 7.75 20h8.5A3.75 3.75 0 0 0 20 16.25v-8.5A3.75 3.75 0 0 0 16.25 4h-8.5ZM12 7a5 5 0 1 1 0 10 5 5 0 0 1 0-10Zm0 2a3 3 0 1 0 0 6 3 3 0 0 0 0-6Zm5.25-2.25a1.15 1.15 0 1 1 0 2.3 1.15 1.15 0 0 1 0-2.3Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

/* YouTube icon */
.ptp-social-link--youtube .ptp-social-link__icon {
  -webkit-mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='black' d='M21.58 7.19a2.7 2.7 0 0 0-1.9-1.9C18 4.84 12 4.84 12 4.84s-6 0-7.68.45a2.7 2.7 0 0 0-1.9 1.9A28.2 28.2 0 0 0 2 12a28.2 28.2 0 0 0 .42 4.81 2.7 2.7 0 0 0 1.9 1.9c1.68.45 7.68.45 7.68.45s6 0 7.68-.45a2.7 2.7 0 0 0 1.9-1.9A28.2 28.2 0 0 0 22 12a28.2 28.2 0 0 0-.42-4.81ZM10 15.25v-6.5L15.5 12 10 15.25Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
          mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='black' d='M21.58 7.19a2.7 2.7 0 0 0-1.9-1.9C18 4.84 12 4.84 12 4.84s-6 0-7.68.45a2.7 2.7 0 0 0-1.9 1.9A28.2 28.2 0 0 0 2 12a28.2 28.2 0 0 0 .42 4.81 2.7 2.7 0 0 0 1.9 1.9c1.68.45 7.68.45 7.68.45s6 0 7.68-.45a2.7 2.7 0 0 0 1.9-1.9A28.2 28.2 0 0 0 22 12a28.2 28.2 0 0 0-.42-4.81ZM10 15.25v-6.5L15.5 12 10 15.25Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

/* TikTok icon */
.ptp-social-link--tiktok .ptp-social-link__icon {
  -webkit-mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='black' d='M15.5 2c.3 2.7 1.85 4.45 4.5 4.62v3.1a7.8 7.8 0 0 1-4.4-1.36v6.76A6.88 6.88 0 1 1 9.7 8.3v3.22a3.77 3.77 0 1 0 2.68 3.6V2h3.12Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
          mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='black' d='M15.5 2c.3 2.7 1.85 4.45 4.5 4.62v3.1a7.8 7.8 0 0 1-4.4-1.36v6.76A6.88 6.88 0 1 1 9.7 8.3v3.22a3.77 3.77 0 1 0 2.68 3.6V2h3.12Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

/* Facebook icon */
.ptp-social-link--facebook .ptp-social-link__icon {
  -webkit-mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='black' d='M14.05 22v-8.15h2.74l.41-3.18h-3.15V8.64c0-.92.26-1.55 1.58-1.55h1.68V4.25A22.5 22.5 0 0 0 14.86 4c-2.43 0-4.09 1.48-4.09 4.2v2.47H8.02v3.18h2.75V22h3.28Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
          mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='black' d='M14.05 22v-8.15h2.74l.41-3.18h-3.15V8.64c0-.92.26-1.55 1.58-1.55h1.68V4.25A22.5 22.5 0 0 0 14.86 4c-2.43 0-4.09 1.48-4.09 4.2v2.47H8.02v3.18h2.75V22h3.28Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

/* LinkedIn icon */
.ptp-social-link--linkedin .ptp-social-link__icon {
  -webkit-mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='black' d='M5.35 8.95H2.25V21h3.1V8.95ZM3.8 3A1.8 1.8 0 1 0 3.78 6.6 1.8 1.8 0 0 0 3.8 3Zm17.95 11.1c0-3.23-1.72-4.73-4.02-4.73a3.45 3.45 0 0 0-3.12 1.72h-.04V8.95h-2.98V21h3.1v-5.96c0-1.57.3-3.08 2.24-3.08 1.9 0 1.93 1.78 1.93 3.18V21h3.09v-6.9Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
          mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='black' d='M5.35 8.95H2.25V21h3.1V8.95ZM3.8 3A1.8 1.8 0 1 0 3.78 6.6 1.8 1.8 0 0 0 3.8 3Zm17.95 11.1c0-3.23-1.72-4.73-4.02-4.73a3.45 3.45 0 0 0-3.12 1.72h-.04V8.95h-2.98V21h3.1v-5.96c0-1.57.3-3.08 2.24-3.08 1.9 0 1.93 1.78 1.93 3.18V21h3.09v-6.9Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

/* Podcast icon */
.ptp-social-link--podcast .ptp-social-link__icon {
  -webkit-mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='black' d='M12 2a7 7 0 0 1 4 12.74l-.6 1.58A9 9 0 1 0 3 8.5 9 9 0 0 0 8.6 16.82L8 15.22A7 7 0 0 1 12 2Zm0 3.7A3.3 3.3 0 0 0 8.7 9c0 1.2.64 2.26 1.6 2.84l-.54 1.5A4.9 4.9 0 1 1 14.24 13.34l-.54-1.5A3.3 3.3 0 0 0 12 5.7Zm0 5.05a1.75 1.75 0 0 1 1.72 2.06L15 20.4A1.35 1.35 0 0 1 13.67 22h-3.34A1.35 1.35 0 0 1 9 20.4l1.28-7.59A1.75 1.75 0 0 1 12 10.75Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
          mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='black' d='M12 2a7 7 0 0 1 4 12.74l-.6 1.58A9 9 0 1 0 3 8.5 9 9 0 0 0 8.6 16.82L8 15.22A7 7 0 0 1 12 2Zm0 3.7A3.3 3.3 0 0 0 8.7 9c0 1.2.64 2.26 1.6 2.84l-.54 1.5A4.9 4.9 0 1 1 14.24 13.34l-.54-1.5A3.3 3.3 0 0 0 12 5.7Zm0 5.05a1.75 1.75 0 0 1 1.72 2.06L15 20.4A1.35 1.35 0 0 1 13.67 22h-3.34A1.35 1.35 0 0 1 9 20.4l1.28-7.59A1.75 1.75 0 0 1 12 10.75Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
}


/* v5.9 Resources additions: coverage request, database tutorial, FAQ */
.ptp-guide-page {
  width: min(1180px, calc(100% - 32px)) !important;
  margin: 0 auto !important;
  padding: 34px 0 56px !important;
}

.ptp-guide-card {
  background: #ffffff !important;
  border: 1px solid rgba(7,59,64,.12) !important;
  border-radius: 20px !important;
  box-shadow: 0 18px 42px rgba(7,59,64,.065) !important;
  padding: 24px !important;
  margin-top: 18px !important;
}

.ptp-guide-card h3 {
  margin: 0 0 16px !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: 1.2rem !important;
}

.ptp-guide-toc {
  display: grid !important;
  gap: 12px !important;
}

.ptp-guide-toc__row {
  display: grid !important;
  grid-template-columns: 42px 190px minmax(0, 1fr) !important;
  gap: 16px !important;
  align-items: start !important;
  padding: 14px 0 !important;
  border-bottom: 1px solid rgba(7,59,64,.10) !important;
}

.ptp-guide-toc__row:last-child {
  border-bottom: 0 !important;
}

.ptp-guide-toc__row > span {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 34px !important;
  height: 34px !important;
  border-radius: 999px !important;
  background: rgba(219,180,97,.18) !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-weight: 950 !important;
}

.ptp-guide-toc__row strong {
  color: var(--ptp-teal-dark, #073b40) !important;
  font-weight: 900 !important;
}

.ptp-guide-toc__row p {
  margin: 0 !important;
  color: rgba(23,38,41,.72) !important;
  line-height: 1.45 !important;
}

.ptp-guide-steps {
  margin: 0 !important;
  padding-left: 22px !important;
  color: rgba(23,38,41,.78) !important;
  line-height: 1.65 !important;
  font-weight: 650 !important;
}

.ptp-faq-list {
  display: grid !important;
  gap: 12px !important;
}

.ptp-faq-item {
  background: #ffffff !important;
  border: 1px solid rgba(7,59,64,.12) !important;
  border-radius: 16px !important;
  box-shadow: 0 12px 28px rgba(7,59,64,.045) !important;
  overflow: hidden !important;
}

.ptp-faq-item summary {
  cursor: pointer !important;
  padding: 18px 20px !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-weight: 900 !important;
}

.ptp-faq-item p {
  margin: 0 !important;
  padding: 0 20px 18px !important;
  color: rgba(23,38,41,.72) !important;
  line-height: 1.55 !important;
}

.ptp-coverage-request-form {
  width: min(920px, calc(100% - 32px)) !important;
  margin: 34px auto 56px !important;
}

@media (max-width: 820px) {
  .ptp-guide-toc__row {
    grid-template-columns: 42px minmax(0, 1fr) !important;
  }
  .ptp-guide-toc__row p {
    grid-column: 2 / -1 !important;
  }
}


/* v6.0 Front-end rankings */
.ptp-rankings-page {
  width: min(1220px, calc(100% - 32px)) !important;
  margin: 0 auto !important;
  padding: 34px 0 58px !important;
}

.ptp-rankings-tabs {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  margin: 18px 0 !important;
}

.ptp-rankings-tabs button {
  min-height: 42px !important;
  padding: 0 18px !important;
  border: 1px solid rgba(7,59,64,.14) !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-weight: 900 !important;
  cursor: pointer !important;
}

.ptp-rankings-tabs button.is-active {
  background: var(--ptp-teal-dark, #073b40) !important;
  color: #ffffff !important;
  border-color: var(--ptp-teal-dark, #073b40) !important;
}

.ptp-rankings-class-panel {
  display: none !important;
}

.ptp-rankings-class-panel.is-active {
  display: block !important;
}

.ptp-rankings-controls {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 14px !important;
  align-items: end !important;
  margin-bottom: 18px !important;
  padding: 16px !important;
  border: 1px solid rgba(7,59,64,.12) !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  box-shadow: 0 12px 28px rgba(7,59,64,.045) !important;
}

.ptp-rankings-controls label {
  display: grid !important;
  gap: 6px !important;
  color: rgba(23,38,41,.70) !important;
  font-weight: 850 !important;
  font-size: .78rem !important;
  text-transform: uppercase !important;
  letter-spacing: .04em !important;
}

.ptp-rankings-controls select {
  min-width: 210px !important;
  min-height: 42px !important;
  border: 1px solid rgba(7,59,64,.16) !important;
  border-radius: 10px !important;
  padding: 0 12px !important;
  background: #fff !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-weight: 750 !important;
}

.ptp-rankings-list {
  display: grid !important;
  gap: 14px !important;
}

.ptp-ranking-tile {
  position: relative !important;
  display: grid !important;
  grid-template-columns: 72px 82px minmax(0, 1fr) auto !important;
  gap: 16px !important;
  align-items: center !important;
  min-height: 126px !important;
  padding: 16px 18px 16px 22px !important;
  border: 1px solid rgba(7,59,64,.12) !important;
  border-left: 8px solid var(--ptp-rank-section-color, rgba(7,59,64,.15)) !important;
  border-radius: 18px !important;
  background: #ffffff !important;
  box-shadow: 0 14px 30px rgba(7,59,64,.055) !important;
}

.ptp-ranking-tile[hidden] {
  display: none !important;
}

.ptp-ranking-tile__section {
  position: absolute !important;
  left: -8px !important;
  top: 10px !important;
  writing-mode: vertical-rl !important;
  transform: rotate(180deg) !important;
  color: #fff !important;
  font-size: .58rem !important;
  font-weight: 950 !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
  opacity: .9 !important;
}

.ptp-ranking-tile__rank {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 58px !important;
  height: 58px !important;
  border-radius: 999px !important;
  background: rgba(219,180,97,.18) !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: 1.35rem !important;
  font-weight: 950 !important;
}

.ptp-ranking-tile__photo {
  width: 82px !important;
  height: 82px !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  background: var(--ptp-teal-dark, #073b40) !important;
  color: #ffffff !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-weight: 950 !important;
}

.ptp-ranking-tile__photo img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

.ptp-ranking-tile__main h3 {
  margin: 0 0 4px !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: 1.22rem !important;
  line-height: 1.1 !important;
}

.ptp-ranking-tile__main p {
  margin: 0 0 10px !important;
  color: rgba(23,38,41,.74) !important;
  font-weight: 800 !important;
}

.ptp-ranking-tile__main p span {
  color: var(--ptp-gold, #DBB461) !important;
  padding: 0 5px !important;
}

.ptp-ranking-tile__main dl {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 10px !important;
  margin: 0 !important;
}

.ptp-ranking-tile__main dl div {
  min-width: 0 !important;
}

.ptp-ranking-tile__main dt {
  color: rgba(23,38,41,.58) !important;
  font-size: .68rem !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: .04em !important;
}

.ptp-ranking-tile__main dd {
  margin: 3px 0 0 !important;
  color: var(--ptp-teal-dark, #073b40) !important;
  font-size: .86rem !important;
  line-height: 1.22 !important;
  font-weight: 850 !important;
  overflow-wrap: anywhere !important;
}

@media (max-width: 860px) {
  .ptp-ranking-tile {
    grid-template-columns: 58px 70px minmax(0, 1fr) !important;
  }

  .ptp-ranking-tile .ptp-platform-button {
    grid-column: 1 / -1 !important;
    justify-content: center !important;
  }

  .ptp-ranking-tile__main dl {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}


/* v6.8 Rankings public redesign: Option 9-inspired clean premium list */
.ptp-rankings-page {
  width: min(1480px, calc(100% - 56px)) !important;
  margin: 0 auto !important;
  padding: 42px 0 72px !important;
  position: relative !important;
  background: transparent !important;
}

.ptp-rankings-page::before {
  content: "" !important;
  position: absolute !important;
  top: 18px !important;
  right: 12px !important;
  width: 340px !important;
  height: 220px !important;
  opacity: .045 !important;
  pointer-events: none !important;
  background:
    radial-gradient(circle at 70% 50%, transparent 0 34%, #073b40 34.5% 36%, transparent 36.5% 44%, #DBB461 44.5% 46%, transparent 46.5%),
    linear-gradient(90deg, transparent 0 38%, #073b40 38% 43%, transparent 43% 48%, #073b40 48% 53%, transparent 53% 58%, #073b40 58% 63%, transparent 63%);
  border-radius: 999px !important;
}

.ptp-rankings-page .ptp-database__header {
  display: flex !important;
  align-items: end !important;
  justify-content: space-between !important;
  gap: 28px !important;
  margin: 0 0 22px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.ptp-rankings-page .ptp-database__header .ptp-kicker {
  display: none !important;
}

.ptp-rankings-page .ptp-database__header h2 {
  margin: 0 !important;
  font-size: clamp(2.55rem, 5vw, 4.4rem) !important;
  line-height: .95 !important;
  letter-spacing: -.055em !important;
  color: #073b40 !important;
  font-weight: 950 !important;
}

.ptp-rankings-page .ptp-database__header h2::first-letter {
  text-transform: uppercase !important;
}

.ptp-rankings-page .ptp-database__header p {
  margin: 10px 0 0 !important;
  max-width: 620px !important;
  color: rgba(23,38,41,.70) !important;
  font-size: 1.02rem !important;
  line-height: 1.55 !important;
  font-weight: 560 !important;
}

.ptp-rankings-tabs {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(120px, 1fr)) !important;
  width: min(560px, 100%) !important;
  gap: 0 !important;
  margin: 20px 0 22px auto !important;
  padding: 5px !important;
  border: 1px solid rgba(7,59,64,.12) !important;
  border-radius: 17px !important;
  background: #ffffff !important;
  box-shadow: 0 14px 34px rgba(7,59,64,.045) !important;
  overflow: hidden !important;
}

.ptp-rankings-tabs button {
  min-height: 50px !important;
  border: 0 !important;
  border-radius: 13px !important;
  background: transparent !important;
  color: rgba(7,59,64,.70) !important;
  font-size: 1.02rem !important;
  letter-spacing: .01em !important;
  font-weight: 900 !important;
  cursor: pointer !important;
  transition: background .18s ease, color .18s ease, box-shadow .18s ease !important;
}

.ptp-rankings-tabs button.is-active {
  background: linear-gradient(180deg, #075257, #043a3e) !important;
  color: #ffffff !important;
  box-shadow: inset 0 -3px 0 #DBB461, 0 10px 24px rgba(7,59,64,.18) !important;
}

.ptp-rankings-controls {
  display: grid !important;
  grid-template-columns: minmax(220px, .8fr) minmax(190px, .7fr) minmax(190px, .7fr) auto !important;
  gap: 18px !important;
  align-items: end !important;
  margin: 0 0 20px !important;
  padding: 20px 24px !important;
  border: 1px solid rgba(7,59,64,.12) !important;
  border-radius: 16px !important;
  background: rgba(255,255,255,.92) !important;
  box-shadow: 0 16px 36px rgba(7,59,64,.045) !important;
  backdrop-filter: blur(8px) !important;
}

.ptp-rankings-controls label {
  position: relative !important;
  display: grid !important;
  gap: 8px !important;
  color: rgba(23,38,41,.66) !important;
  font-size: .74rem !important;
  text-transform: uppercase !important;
  letter-spacing: .08em !important;
  font-weight: 950 !important;
}

.ptp-rankings-controls select {
  appearance: none !important;
  min-width: 0 !important;
  width: 100% !important;
  min-height: 48px !important;
  border: 1px solid rgba(7,59,64,.14) !important;
  border-radius: 10px !important;
  background:
    linear-gradient(45deg, transparent 50%, #073b40 50%) calc(100% - 20px) 53% / 7px 7px no-repeat,
    linear-gradient(135deg, #073b40 50%, transparent 50%) calc(100% - 15px) 53% / 7px 7px no-repeat,
    #ffffff !important;
  color: #073b40 !important;
  padding: 0 42px 0 18px !important;
  font-size: .98rem !important;
  font-weight: 800 !important;
  box-shadow: 0 8px 18px rgba(7,59,64,.03) !important;
}

.ptp-rankings-reset {
  min-height: 48px !important;
  padding: 0 20px !important;
  border: 1px solid rgba(7,59,64,.20) !important;
  border-radius: 10px !important;
  background: #ffffff !important;
  color: #073b40 !important;
  font-weight: 900 !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  white-space: nowrap !important;
}

.ptp-rankings-list {
  display: grid !important;
  gap: 10px !important;
}

.ptp-ranking-tile {
  position: relative !important;
  display: grid !important;
  grid-template-columns: 42px 126px 170px 86px minmax(280px, 1.45fr) minmax(460px, 1.55fr) 210px !important;
  gap: 22px !important;
  align-items: center !important;
  min-height: 146px !important;
  padding: 16px 28px 16px 0 !important;
  border: 1px solid rgba(7,59,64,.12) !important;
  border-left: 0 !important;
  border-radius: 14px !important;
  background: #ffffff !important;
  box-shadow: 0 12px 30px rgba(7,59,64,.045) !important;
  overflow: hidden !important;
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease !important;
}

.ptp-ranking-tile:hover {
  transform: translateY(-1px) !important;
  border-color: rgba(7,59,64,.20) !important;
  box-shadow: 0 18px 38px rgba(7,59,64,.075) !important;
}

.ptp-ranking-tile[hidden] {
  display: none !important;
}

.ptp-ranking-tile__section {
  align-self: stretch !important;
  position: static !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  writing-mode: vertical-rl !important;
  transform: rotate(180deg) !important;
  width: 42px !important;
  height: 100% !important;
  min-height: 146px !important;
  color: #ffffff !important;
  background: var(--ptp-rank-section-color, #AEC3B2) !important;
  font-size: .8rem !important;
  font-weight: 950 !important;
  letter-spacing: .065em !important;
  text-transform: uppercase !important;
  border-radius: 14px 0 0 14px !important;
  opacity: 1 !important;
}

.ptp-ranking-tile__rank {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  height: auto !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #073b40 !important;
  font-size: clamp(3rem, 5vw, 4.55rem) !important;
  line-height: .9 !important;
  letter-spacing: -.06em !important;
  font-weight: 950 !important;
}

.ptp-ranking-tile:nth-child(1) .ptp-ranking-tile__rank {
  color: #DBB461 !important;
}

.ptp-ranking-tile__photo {
  width: 170px !important;
  height: 118px !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  background: #073b40 !important;
  color: #ffffff !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-weight: 950 !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.18), 0 10px 18px rgba(7,59,64,.08) !important;
}

.ptp-ranking-tile__photo img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

.ptp-ranking-tile__photo span {
  width: 86px !important;
  height: 86px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 14px !important;
  background: linear-gradient(180deg, #075257, #043a3e) !important;
  color: #ffffff !important;
  font-size: 1.45rem !important;
}

.ptp-ranking-tile__main {
  display: contents !important;
}

.ptp-ranking-tile__main h3 {
  grid-column: 5 !important;
  align-self: end !important;
  margin: 0 !important;
  color: #073b40 !important;
  font-size: clamp(1.42rem, 2vw, 1.9rem) !important;
  line-height: 1.06 !important;
  letter-spacing: -.035em !important;
  font-weight: 950 !important;
}

.ptp-ranking-tile__main p {
  grid-column: 5 !important;
  align-self: start !important;
  margin: 8px 0 0 !important;
  color: rgba(23,38,41,.72) !important;
  font-size: 1.08rem !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
}

.ptp-ranking-tile__main p span {
  color: #DBB461 !important;
  padding: 0 8px !important;
}

.ptp-ranking-tile__main dl {
  grid-column: 6 !important;
  grid-row: 1 / span 2 !important;
  display: grid !important;
  grid-template-columns: 1.25fr 1.45fr .65fr .9fr !important;
  gap: 20px !important;
  align-items: center !important;
  margin: 0 !important;
  min-width: 0 !important;
}

.ptp-ranking-tile__main dl div {
  min-width: 0 !important;
  padding-left: 0 !important;
}

.ptp-ranking-tile__main dl div + div {
  border-left: 1px solid rgba(7,59,64,.10) !important;
  padding-left: 18px !important;
}

.ptp-ranking-tile__main dt {
  color: rgba(23,38,41,.54) !important;
  font-size: .72rem !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  text-transform: uppercase !important;
  letter-spacing: .085em !important;
}

.ptp-ranking-tile__main dd {
  margin: 7px 0 0 !important;
  color: #073b40 !important;
  font-size: .94rem !important;
  line-height: 1.18 !important;
  font-weight: 900 !important;
  overflow-wrap: anywhere !important;
}

.ptp-ranking-tile > .ptp-platform-button {
  grid-column: 7 !important;
  justify-self: end !important;
  min-width: 176px !important;
  min-height: 58px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 11px !important;
  background: linear-gradient(180deg, #e3b95f, #d5a13f) !important;
  color: #073b40 !important;
  border: 0 !important;
  box-shadow: 0 10px 22px rgba(219,180,97,.22) !important;
  font-size: .9rem !important;
  font-weight: 950 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
}

.ptp-ranking-tile > .ptp-platform-button::after {
  content: "→" !important;
  margin-left: 12px !important;
  font-size: 1.2em !important;
  line-height: 1 !important;
}

.ptp-ranking-tile:nth-child(even) > .ptp-platform-button {
  background: linear-gradient(180deg, #075257, #043a3e) !important;
  color: #ffffff !important;
  box-shadow: 0 10px 22px rgba(7,59,64,.18) !important;
}

.ptp-rankings-class-panel::after {
  content: "Rankings are evaluated and updated continuously throughout the year." !important;
  display: block !important;
  width: max-content !important;
  max-width: 100% !important;
  margin: 26px auto 0 !important;
  color: rgba(23,38,41,.62) !important;
  font-size: .92rem !important;
  line-height: 1.4 !important;
  font-weight: 650 !important;
}

@media (max-width: 1240px) {
  .ptp-ranking-tile {
    grid-template-columns: 38px 92px 118px 70px minmax(220px, 1fr) minmax(320px, 1.25fr) !important;
    gap: 16px !important;
    padding-right: 20px !important;
  }

  .ptp-ranking-tile__photo {
    width: 118px !important;
    height: 96px !important;
  }

  .ptp-ranking-tile > .ptp-platform-button {
    grid-column: 1 / -1 !important;
    justify-self: stretch !important;
    min-width: 0 !important;
  }
}

@media (max-width: 900px) {
  .ptp-rankings-page {
    width: min(100% - 28px, 720px) !important;
    padding-top: 28px !important;
  }

  .ptp-rankings-page::before {
    display: none !important;
  }

  .ptp-rankings-tabs {
    margin-left: 0 !important;
    width: 100% !important;
  }

  .ptp-rankings-controls {
    grid-template-columns: 1fr !important;
    padding: 16px !important;
  }

  .ptp-ranking-tile {
    grid-template-columns: 34px 74px 88px minmax(0, 1fr) !important;
    gap: 13px !important;
    padding: 14px 14px 14px 0 !important;
  }

  .ptp-ranking-tile__section {
    width: 34px !important;
    min-height: 100% !important;
  }

  .ptp-ranking-tile__rank {
    font-size: 2.7rem !important;
  }

  .ptp-ranking-tile__photo {
    width: 88px !important;
    height: 78px !important;
  }

  .ptp-ranking-tile__main h3,
  .ptp-ranking-tile__main p {
    grid-column: 4 !important;
  }

  .ptp-ranking-tile__main dl {
    grid-column: 2 / -1 !important;
    grid-row: auto !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
    padding: 10px 0 0 !important;
  }

  .ptp-ranking-tile__main dl div + div {
    border-left: 0 !important;
    padding-left: 0 !important;
  }

  .ptp-ranking-tile > .ptp-platform-button {
    grid-column: 2 / -1 !important;
    min-height: 48px !important;
  }
}


/* v6.9 Rankings rebuild: full-width Option 9 direction, real markup instead of CSS-only stretching */

/* Force the rankings shortcode out of the narrow article column used by normal pages. */
body.ptp-has-rankings-page .ptp-page-hero,
body.ptp-has-rankings-page .entry-title {
  display: none !important;
}

body.ptp-has-rankings-page .ptp-section,
body.ptp-has-rankings-page .ptp-container,
body.ptp-has-rankings-page .ptp-content-width,
body.ptp-has-rankings-page .ptp-article,
body.ptp-has-rankings-page .entry-content,
body.ptp-has-rankings-page .ptp-app-page-shell {
  width: 100% !important;
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body.ptp-has-rankings-page .entry-content > * {
  max-width: none !important;
}

.ptp-rankings-page {
  width: min(1560px, calc(100vw - 80px)) !important;
  max-width: min(1560px, calc(100vw - 80px)) !important;
  margin: 0 auto !important;
  padding: 44px 0 72px !important;
  position: relative !important;
  overflow: visible !important;
}

.ptp-rankings-page::before {
  content: "" !important;
  position: absolute !important;
  top: 8px !important;
  right: 2vw !important;
  width: 430px !important;
  height: 260px !important;
  opacity: .055 !important;
  pointer-events: none !important;
  background:
    radial-gradient(circle at 78% 50%, transparent 0 31%, #073b40 31.5% 33%, transparent 33.5% 40%, #DBB461 40.5% 42%, transparent 42.5% 48%, #AEC3B2 48.5% 50%, transparent 50.5%),
    repeating-linear-gradient(90deg, transparent 0 22px, #073b40 22px 31px, transparent 31px 42px) !important;
  border-radius: 999px !important;
}

.ptp-rankings-page .ptp-database__header {
  display: block !important;
  margin: 0 0 20px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.ptp-rankings-page .ptp-database__header > div {
  max-width: 720px !important;
}

.ptp-rankings-page .ptp-database__header .ptp-kicker {
  display: none !important;
}

.ptp-rankings-page .ptp-database__header h2 {
  margin: 0 !important;
  color: #073b40 !important;
  font-size: clamp(3.1rem, 5.7vw, 5.25rem) !important;
  line-height: .92 !important;
  letter-spacing: -.065em !important;
  font-weight: 950 !important;
}

.ptp-rankings-page .ptp-database__header p {
  margin: 12px 0 0 !important;
  color: rgba(23,38,41,.68) !important;
  font-size: 1.08rem !important;
  line-height: 1.55 !important;
  font-weight: 600 !important;
}

.ptp-rankings-tabs {
  display: grid !important;
  grid-auto-flow: column !important;
  grid-auto-columns: minmax(150px, 1fr) !important;
  width: min(560px, 100%) !important;
  gap: 0 !important;
  margin: 24px 0 22px !important;
  padding: 5px !important;
  border: 1px solid rgba(7,59,64,.14) !important;
  border-radius: 18px !important;
  background: #ffffff !important;
  box-shadow: 0 14px 34px rgba(7,59,64,.045) !important;
  overflow: hidden !important;
}

.ptp-rankings-tabs button {
  min-height: 52px !important;
  padding: 0 22px !important;
  border: 0 !important;
  border-radius: 13px !important;
  background: transparent !important;
  color: rgba(7,59,64,.72) !important;
  font-size: 1.08rem !important;
  letter-spacing: .01em !important;
  font-weight: 950 !important;
  cursor: pointer !important;
  box-shadow: none !important;
}

.ptp-rankings-tabs button.is-active {
  background: linear-gradient(180deg, #075257, #043a3e) !important;
  color: #ffffff !important;
  box-shadow: inset 0 -3px 0 #DBB461, 0 10px 24px rgba(7,59,64,.18) !important;
}

.ptp-rankings-class-panel {
  width: 100% !important;
}

.ptp-rankings-controls {
  display: grid !important;
  grid-template-columns: minmax(260px, 1fr) minmax(260px, 1fr) 200px !important;
  gap: 18px !important;
  align-items: end !important;
  margin: 0 0 22px !important;
  padding: 22px 26px !important;
  border: 1px solid rgba(7,59,64,.13) !important;
  border-radius: 17px !important;
  background: #ffffff !important;
  box-shadow: 0 16px 36px rgba(7,59,64,.045) !important;
}

.ptp-rankings-controls label {
  display: grid !important;
  gap: 9px !important;
  color: rgba(23,38,41,.62) !important;
  font-size: .75rem !important;
  text-transform: uppercase !important;
  letter-spacing: .08em !important;
  font-weight: 950 !important;
}

.ptp-rankings-controls label:first-child::before {
  content: "Filter by Position" !important;
}

.ptp-rankings-controls label:first-child {
  font-size: 0 !important;
}

.ptp-rankings-controls label:first-child::before,
.ptp-rankings-controls label:not(:first-child) {
  font-size: .75rem !important;
}

.ptp-rankings-controls select {
  appearance: none !important;
  width: 100% !important;
  min-height: 52px !important;
  border: 1px solid rgba(7,59,64,.16) !important;
  border-radius: 11px !important;
  background:
    linear-gradient(45deg, transparent 50%, #073b40 50%) calc(100% - 20px) 54% / 7px 7px no-repeat,
    linear-gradient(135deg, #073b40 50%, transparent 50%) calc(100% - 15px) 54% / 7px 7px no-repeat,
    #ffffff !important;
  color: #073b40 !important;
  padding: 0 44px 0 18px !important;
  font-size: 1rem !important;
  font-weight: 850 !important;
  box-shadow: 0 8px 18px rgba(7,59,64,.03) !important;
}

.ptp-rankings-reset {
  min-height: 52px !important;
  border: 1px solid rgba(7,59,64,.22) !important;
  border-radius: 11px !important;
  background: #ffffff !important;
  color: #073b40 !important;
  padding: 0 20px !important;
  font-size: .84rem !important;
  font-weight: 950 !important;
  letter-spacing: .065em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
  cursor: pointer !important;
}

.ptp-rankings-list {
  display: grid !important;
  gap: 10px !important;
  width: 100% !important;
}

/* Real row structure: section, rank, photo, HS/JUCO badge, identity, stats, CTA. */
.ptp-ranking-tile {
  position: relative !important;
  display: grid !important;
  grid-template-columns: 42px 96px 168px 88px minmax(260px, 1.15fr) minmax(430px, 1.25fr) 210px !important;
  gap: 22px !important;
  align-items: center !important;
  width: 100% !important;
  min-height: 152px !important;
  padding: 16px 28px 16px 0 !important;
  border: 1px solid rgba(7,59,64,.13) !important;
  border-left: 0 !important;
  border-radius: 15px !important;
  background: #ffffff !important;
  box-shadow: 0 12px 30px rgba(7,59,64,.045) !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

.ptp-ranking-tile[hidden] {
  display: none !important;
}

.ptp-ranking-tile:hover {
  border-color: rgba(7,59,64,.22) !important;
  box-shadow: 0 18px 38px rgba(7,59,64,.075) !important;
}

.ptp-ranking-tile__section {
  grid-column: 1 !important;
  grid-row: 1 !important;
  align-self: stretch !important;
  position: static !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  writing-mode: vertical-rl !important;
  transform: rotate(180deg) !important;
  width: 42px !important;
  height: 100% !important;
  min-height: 152px !important;
  color: #ffffff !important;
  background: var(--ptp-rank-section-color, #AEC3B2) !important;
  font-size: .78rem !important;
  font-weight: 950 !important;
  letter-spacing: .07em !important;
  text-transform: uppercase !important;
  border-radius: 15px 0 0 15px !important;
  opacity: 1 !important;
}

.ptp-ranking-tile__rank {
  grid-column: 2 !important;
  grid-row: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  height: auto !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #073b40 !important;
  font-size: clamp(3rem, 5vw, 4.65rem) !important;
  line-height: .9 !important;
  letter-spacing: -.06em !important;
  font-weight: 950 !important;
}

.ptp-ranking-tile:nth-child(1) .ptp-ranking-tile__rank {
  color: #DBB461 !important;
}

.ptp-ranking-tile__photo {
  grid-column: 3 !important;
  grid-row: 1 !important;
  width: 168px !important;
  height: 118px !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  background:
    radial-gradient(circle at 50% 18%, rgba(255,255,255,.14), transparent 30%),
    linear-gradient(135deg, #0a5458, #043a3e) !important;
  color: #ffffff !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-weight: 950 !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.18), 0 10px 18px rgba(7,59,64,.08) !important;
}

.ptp-ranking-tile__photo img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

.ptp-ranking-tile__photo-placeholder {
  font-size: 3.4rem !important;
  line-height: 1 !important;
  color: rgba(255,255,255,.92) !important;
  letter-spacing: -.05em !important;
}

.ptp-ranking-tile__type-badge {
  grid-column: 4 !important;
  grid-row: 1 !important;
  width: 76px !important;
  height: 76px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 14px !important;
  background: linear-gradient(180deg, #075257, #043a3e) !important;
  color: #ffffff !important;
  font-size: 1.36rem !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  box-shadow: 0 10px 20px rgba(7,59,64,.14) !important;
}

.ptp-ranking-tile__main {
  grid-column: 5 / 7 !important;
  display: grid !important;
  grid-template-columns: minmax(260px, 1fr) minmax(420px, 1.35fr) !important;
  gap: 24px !important;
  align-items: center !important;
  min-width: 0 !important;
}

.ptp-ranking-tile__main h3 {
  grid-column: 1 !important;
  grid-row: 1 !important;
  align-self: end !important;
  margin: 0 !important;
  color: #073b40 !important;
  font-size: clamp(1.45rem, 2.1vw, 1.9rem) !important;
  line-height: 1.05 !important;
  letter-spacing: -.035em !important;
  font-weight: 950 !important;
  min-width: 0 !important;
  white-space: normal !important;
}

.ptp-ranking-tile__main p {
  grid-column: 1 !important;
  grid-row: 2 !important;
  align-self: start !important;
  margin: 9px 0 0 !important;
  color: rgba(23,38,41,.70) !important;
  font-size: 1.05rem !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
}

.ptp-ranking-tile__main p span {
  color: #DBB461 !important;
  padding: 0 7px !important;
}

.ptp-ranking-tile__main dl {
  grid-column: 2 !important;
  grid-row: 1 / span 2 !important;
  display: grid !important;
  grid-template-columns: 1.25fr 1.45fr .6fr .95fr !important;
  gap: 18px !important;
  align-items: center !important;
  margin: 0 !important;
  min-width: 0 !important;
}

.ptp-ranking-tile__main dl div {
  min-width: 0 !important;
}

.ptp-ranking-tile__main dl div + div {
  border-left: 1px solid rgba(7,59,64,.10) !important;
  padding-left: 18px !important;
}

.ptp-ranking-tile__main dt {
  color: rgba(23,38,41,.52) !important;
  font-size: .70rem !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  text-transform: uppercase !important;
  letter-spacing: .08em !important;
}

.ptp-ranking-tile__main dd {
  margin: 7px 0 0 !important;
  color: #073b40 !important;
  font-size: .95rem !important;
  line-height: 1.18 !important;
  font-weight: 900 !important;
  overflow-wrap: anywhere !important;
}

.ptp-ranking-tile > .ptp-platform-button {
  grid-column: 7 !important;
  grid-row: 1 !important;
  justify-self: end !important;
  min-width: 176px !important;
  min-height: 58px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 11px !important;
  background: linear-gradient(180deg, #e3b95f, #d5a13f) !important;
  color: #073b40 !important;
  border: 0 !important;
  box-shadow: 0 10px 22px rgba(219,180,97,.22) !important;
  font-size: .9rem !important;
  font-weight: 950 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

.ptp-ranking-tile > .ptp-platform-button::after {
  content: "→" !important;
  margin-left: 12px !important;
  font-size: 1.2em !important;
  line-height: 1 !important;
}

.ptp-ranking-tile:nth-child(even) > .ptp-platform-button {
  background: linear-gradient(180deg, #075257, #043a3e) !important;
  color: #ffffff !important;
  box-shadow: 0 10px 22px rgba(7,59,64,.18) !important;
}

.ptp-rankings-class-panel::after {
  content: "Rankings are evaluated and updated continuously throughout the year." !important;
  display: block !important;
  width: max-content !important;
  max-width: 100% !important;
  margin: 28px auto 0 !important;
  color: rgba(23,38,41,.62) !important;
  font-size: .92rem !important;
  line-height: 1.4 !important;
  font-weight: 650 !important;
}

@media (max-width: 1280px) {
  .ptp-rankings-page {
    width: min(1180px, calc(100vw - 48px)) !important;
    max-width: min(1180px, calc(100vw - 48px)) !important;
  }

  .ptp-ranking-tile {
    grid-template-columns: 38px 82px 128px 70px minmax(0, 1fr) 176px !important;
    gap: 16px !important;
    min-height: 138px !important;
    padding-right: 20px !important;
  }

  .ptp-ranking-tile__section {
    width: 38px !important;
    min-height: 138px !important;
  }

  .ptp-ranking-tile__photo {
    width: 128px !important;
    height: 98px !important;
  }

  .ptp-ranking-tile__type-badge {
    width: 66px !important;
    height: 66px !important;
    font-size: 1.15rem !important;
  }

  .ptp-ranking-tile__main {
    grid-column: 5 !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 10px !important;
  }

  .ptp-ranking-tile__main dl {
    grid-column: 1 !important;
    grid-row: 3 !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  .ptp-ranking-tile__main dl div + div {
    border-left: 0 !important;
    padding-left: 0 !important;
  }

  .ptp-ranking-tile > .ptp-platform-button {
    grid-column: 6 !important;
    min-width: 160px !important;
  }
}

@media (max-width: 820px) {
  .ptp-rankings-page {
    width: min(100% - 28px, 720px) !important;
    max-width: min(100% - 28px, 720px) !important;
    padding-top: 30px !important;
  }

  .ptp-rankings-page::before {
    display: none !important;
  }

  .ptp-rankings-tabs {
    width: 100% !important;
    grid-auto-columns: 1fr !important;
  }

  .ptp-rankings-controls {
    grid-template-columns: 1fr !important;
    padding: 16px !important;
  }

  .ptp-ranking-tile {
    grid-template-columns: 34px 72px 92px minmax(0, 1fr) !important;
    gap: 12px !important;
    min-height: 0 !important;
    padding: 14px 14px 14px 0 !important;
  }

  .ptp-ranking-tile__section {
    width: 34px !important;
    min-height: 100% !important;
  }

  .ptp-ranking-tile__rank {
    font-size: 2.65rem !important;
  }

  .ptp-ranking-tile__photo {
    width: 92px !important;
    height: 82px !important;
  }

  .ptp-ranking-tile__type-badge {
    grid-column: 3 !important;
    grid-row: 2 !important;
    width: 58px !important;
    height: 58px !important;
    justify-self: center !important;
  }

  .ptp-ranking-tile__main {
    grid-column: 4 !important;
    grid-row: 1 / span 2 !important;
  }

  .ptp-ranking-tile__main dl {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .ptp-ranking-tile > .ptp-platform-button {
    grid-column: 2 / -1 !important;
    grid-row: 3 !important;
    justify-self: stretch !important;
    min-width: 0 !important;
    min-height: 48px !important;
  }
}


/* v7.0 Rankings step-by-step cleanup */
body.ptp-has-rankings-page .ptp-page-hero,
body.ptp-has-rankings-page .entry-title {
  display: none !important;
}

body.ptp-has-rankings-page .ptp-section,
body.ptp-has-rankings-page .ptp-container,
body.ptp-has-rankings-page .ptp-content-width,
body.ptp-has-rankings-page .ptp-article,
body.ptp-has-rankings-page .entry-content,
body.ptp-has-rankings-page .ptp-app-page-shell {
  width: 100% !important;
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body.ptp-has-rankings-page .entry-content > * {
  max-width: none !important;
}

.ptp-rankings-page {
  width: min(1320px, calc(100vw - 56px)) !important;
  max-width: min(1320px, calc(100vw - 56px)) !important;
  margin: 0 auto !important;
  padding: 38px 0 70px !important;
}

.ptp-rankings-page .ptp-database__header {
  display: block !important;
  margin: 0 0 22px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.ptp-rankings-page .ptp-database__header .ptp-kicker {
  display: none !important;
}

.ptp-rankings-page .ptp-database__header h2 {
  margin: 0 !important;
  color: #073b40 !important;
  font-size: clamp(3rem, 5vw, 4.65rem) !important;
  line-height: .95 !important;
  letter-spacing: -.055em !important;
  font-weight: 950 !important;
}

.ptp-rankings-page .ptp-database__header p {
  margin: 10px 0 0 !important;
  max-width: 680px !important;
  color: rgba(23,38,41,.68) !important;
  font-size: 1.05rem !important;
  line-height: 1.5 !important;
  font-weight: 600 !important;
}

.ptp-rankings-tabs {
  width: min(560px, 100%) !important;
  margin: 20px 0 20px !important;
  display: grid !important;
  grid-auto-flow: column !important;
  grid-auto-columns: minmax(130px, 1fr) !important;
  gap: 0 !important;
  padding: 5px !important;
  border: 1px solid rgba(7,59,64,.13) !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  box-shadow: 0 12px 28px rgba(7,59,64,.045) !important;
}

.ptp-rankings-tabs button {
  min-height: 48px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: transparent !important;
  color: rgba(7,59,64,.72) !important;
  font-size: 1rem !important;
  font-weight: 950 !important;
  cursor: pointer !important;
}

.ptp-rankings-tabs button.is-active {
  background: linear-gradient(180deg, #075257, #043a3e) !important;
  color: #ffffff !important;
  box-shadow: inset 0 -3px 0 #DBB461 !important;
}

.ptp-rankings-controls {
  display: grid !important;
  grid-template-columns: minmax(230px, 1fr) minmax(230px, 1fr) 190px !important;
  gap: 18px !important;
  align-items: end !important;
  margin: 0 0 22px !important;
  padding: 20px 24px !important;
  border: 1px solid rgba(7,59,64,.13) !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  box-shadow: 0 14px 32px rgba(7,59,64,.045) !important;
}

.ptp-rankings-controls label {
  display: grid !important;
  gap: 8px !important;
  color: rgba(23,38,41,.62) !important;
  font-size: .74rem !important;
  text-transform: uppercase !important;
  letter-spacing: .08em !important;
  font-weight: 950 !important;
}

.ptp-rankings-controls label:first-child {
  font-size: 0 !important;
}

.ptp-rankings-controls label:first-child::before {
  content: "Filter by Position" !important;
  font-size: .74rem !important;
}

.ptp-rankings-controls select {
  appearance: none !important;
  width: 100% !important;
  min-height: 50px !important;
  border: 1px solid rgba(7,59,64,.16) !important;
  border-radius: 11px !important;
  background:
    linear-gradient(45deg, transparent 50%, #073b40 50%) calc(100% - 20px) 54% / 7px 7px no-repeat,
    linear-gradient(135deg, #073b40 50%, transparent 50%) calc(100% - 15px) 54% / 7px 7px no-repeat,
    #ffffff !important;
  color: #073b40 !important;
  padding: 0 44px 0 18px !important;
  font-size: 1rem !important;
  font-weight: 850 !important;
}

.ptp-rankings-reset {
  min-height: 50px !important;
  border: 1px solid rgba(7,59,64,.18) !important;
  border-radius: 11px !important;
  background: #ffffff !important;
  color: #073b40 !important;
  padding: 0 18px !important;
  font-size: .82rem !important;
  font-weight: 950 !important;
  letter-spacing: .055em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
  cursor: pointer !important;
}

.ptp-rankings-list {
  display: grid !important;
  gap: 12px !important;
}

/* Player card: thin section tab, cream rank block, white details area */
.ptp-ranking-tile {
  --ptp-rank-cream: #f8f2e4;
  display: grid !important;
  grid-template-columns: 18px 112px 132px minmax(300px, 1.05fr) minmax(410px, 1.25fr) 190px !important;
  gap: 0 !important;
  align-items: stretch !important;
  width: 100% !important;
  min-height: 140px !important;
  padding: 0 !important;
  border: 1px solid rgba(7,59,64,.13) !important;
  border-radius: 15px !important;
  background: #ffffff !important;
  box-shadow: 0 12px 30px rgba(7,59,64,.045) !important;
  overflow: hidden !important;
}

.ptp-ranking-tile[hidden] {
  display: none !important;
}

.ptp-ranking-tile__section {
  grid-column: 1 !important;
  grid-row: 1 !important;
  position: static !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 18px !important;
  min-height: 140px !important;
  height: 100% !important;
  padding: 0 !important;
  border-radius: 0 !important;
  background: var(--ptp-rank-section-color, #AEC3B2) !important;
  color: #ffffff !important;
  writing-mode: vertical-rl !important;
  transform: rotate(180deg) !important;
  font-size: .58rem !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  opacity: 1 !important;
}

.ptp-ranking-tile__section:empty::before {
  content: "";
}

.ptp-ranking-tile__rank {
  grid-column: 2 !important;
  grid-row: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  height: 100% !important;
  min-height: 140px !important;
  border-radius: 0 !important;
  background: var(--ptp-rank-cream) !important;
  color: #073b40 !important;
  font-size: clamp(3rem, 4.8vw, 4.25rem) !important;
  line-height: 1 !important;
  letter-spacing: -.06em !important;
  font-weight: 950 !important;
}

.ptp-ranking-tile__photo {
  grid-column: 3 !important;
  grid-row: 1 !important;
  align-self: center !important;
  justify-self: center !important;
  width: 102px !important;
  height: 102px !important;
  border-radius: 13px !important;
  overflow: hidden !important;
  background:
    radial-gradient(circle at 50% 18%, rgba(255,255,255,.14), transparent 30%),
    linear-gradient(135deg, #0a5458, #043a3e) !important;
  color: #ffffff !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-weight: 950 !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.18), 0 10px 18px rgba(7,59,64,.08) !important;
}

.ptp-ranking-tile__photo img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

.ptp-ranking-tile__photo-placeholder {
  font-size: 3rem !important;
  line-height: 1 !important;
  color: rgba(255,255,255,.92) !important;
  letter-spacing: -.05em !important;
}

.ptp-ranking-tile__type-badge {
  display: none !important;
}

.ptp-ranking-tile__main {
  grid-column: 4 / 6 !important;
  grid-row: 1 !important;
  display: grid !important;
  grid-template-columns: minmax(280px, 1fr) minmax(390px, 1.15fr) !important;
  column-gap: 28px !important;
  align-items: center !important;
  min-width: 0 !important;
  padding: 22px 22px 22px 10px !important;
  background: #ffffff !important;
}

.ptp-ranking-tile__main h3 {
  grid-column: 1 !important;
  grid-row: 1 !important;
  margin: 0 !important;
  color: #073b40 !important;
  font-size: clamp(1.35rem, 2vw, 1.72rem) !important;
  line-height: 1.08 !important;
  letter-spacing: -.035em !important;
  font-weight: 950 !important;
}

.ptp-ranking-tile__main p {
  grid-column: 1 !important;
  grid-row: 2 !important;
  margin: 8px 0 0 !important;
  color: rgba(23,38,41,.70) !important;
  font-size: 1.02rem !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
}

.ptp-ranking-tile__main p span {
  color: #DBB461 !important;
  padding: 0 7px !important;
}

.ptp-ranking-tile__main dl {
  grid-column: 2 !important;
  grid-row: 1 / span 2 !important;
  display: grid !important;
  grid-template-columns: 1.25fr 1.45fr .55fr 1fr !important;
  gap: 16px !important;
  align-items: center !important;
  margin: 0 !important;
  min-width: 0 !important;
}

.ptp-ranking-tile__main dl div {
  min-width: 0 !important;
}

.ptp-ranking-tile__main dl div + div {
  border-left: 1px solid rgba(7,59,64,.10) !important;
  padding-left: 16px !important;
}

.ptp-ranking-tile__main dt {
  color: rgba(23,38,41,.52) !important;
  font-size: .68rem !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  text-transform: uppercase !important;
  letter-spacing: .08em !important;
}

.ptp-ranking-tile__main dd {
  margin: 7px 0 0 !important;
  color: #073b40 !important;
  font-size: .92rem !important;
  line-height: 1.18 !important;
  font-weight: 900 !important;
  overflow-wrap: anywhere !important;
}

.ptp-ranking-tile > .ptp-platform-button {
  grid-column: 6 !important;
  grid-row: 1 !important;
  align-self: center !important;
  justify-self: center !important;
  min-width: 150px !important;
  min-height: 52px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 11px !important;
  background: linear-gradient(180deg, #e3b95f, #d5a13f) !important;
  color: #073b40 !important;
  border: 0 !important;
  box-shadow: 0 10px 22px rgba(219,180,97,.20) !important;
  font-size: .84rem !important;
  font-weight: 950 !important;
  letter-spacing: .05em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

.ptp-ranking-tile > .ptp-platform-button::after {
  content: none !important;
}

.ptp-rankings-class-panel::after {
  content: "" !important;
  display: none !important;
}

@media (max-width: 1120px) {
  .ptp-ranking-tile {
    grid-template-columns: 16px 88px 108px minmax(0, 1fr) 160px !important;
  }

  .ptp-ranking-tile__rank {
    min-height: 128px !important;
    font-size: 3.2rem !important;
  }

  .ptp-ranking-tile__section {
    min-height: 128px !important;
  }

  .ptp-ranking-tile__photo {
    width: 84px !important;
    height: 84px !important;
  }

  .ptp-ranking-tile__main {
    grid-column: 4 !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 10px !important;
  }

  .ptp-ranking-tile__main dl {
    grid-column: 1 !important;
    grid-row: 3 !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  .ptp-ranking-tile__main dl div + div {
    border-left: 0 !important;
    padding-left: 0 !important;
  }

  .ptp-ranking-tile > .ptp-platform-button {
    grid-column: 5 !important;
    min-width: 140px !important;
  }
}

@media (max-width: 760px) {
  .ptp-rankings-page {
    width: min(100% - 28px, 720px) !important;
    max-width: min(100% - 28px, 720px) !important;
    padding-top: 30px !important;
  }

  .ptp-rankings-tabs,
  .ptp-rankings-controls {
    width: 100% !important;
  }

  .ptp-rankings-controls {
    grid-template-columns: 1fr !important;
    padding: 16px !important;
  }

  .ptp-ranking-tile {
    grid-template-columns: 14px 74px 82px minmax(0, 1fr) !important;
    min-height: 0 !important;
  }

  .ptp-ranking-tile__section,
  .ptp-ranking-tile__rank {
    min-height: 104px !important;
  }

  .ptp-ranking-tile__rank {
    font-size: 2.6rem !important;
  }

  .ptp-ranking-tile__photo {
    width: 68px !important;
    height: 68px !important;
  }

  .ptp-ranking-tile__main {
    grid-column: 4 !important;
    padding: 14px 12px !important;
  }

  .ptp-ranking-tile__main dl {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .ptp-ranking-tile > .ptp-platform-button {
    grid-column: 2 / -1 !important;
    grid-row: 2 !important;
    justify-self: stretch !important;
    margin: 0 12px 12px 0 !important;
    min-height: 46px !important;
  }
}


/* v7.3 Lighter Pacific Tip font weights */
.ptp-platform,
.ptp-database,
.ptp-profile,
.ptp-rankings-page,
.ptp-form,
.ptp-guide-page,
.ptp-dashboard,
.ptp-resources-hub,
.ptp-event-detail,
.ptp-team-profile,
.ptp-account-page,
.ptp-report-list {
  font-weight: 450 !important;
}

.ptp-platform h1,
.ptp-platform h2,
.ptp-platform h3,
.ptp-platform h4,
.ptp-platform h5,
.ptp-platform h6,
.ptp-database h1,
.ptp-database h2,
.ptp-database h3,
.ptp-database h4,
.ptp-profile h1,
.ptp-profile h2,
.ptp-profile h3,
.ptp-rankings-page h1,
.ptp-rankings-page h2,
.ptp-rankings-page h3,
.ptp-guide-page h1,
.ptp-guide-page h2,
.ptp-guide-page h3,
.ptp-dashboard h1,
.ptp-dashboard h2,
.ptp-dashboard h3 {
  font-weight: 780 !important;
}

.ptp-kicker,
.ptp-platform-button,
.ptp-form legend,
.ptp-form label,
.ptp-dashboard-card h3,
.ptp-player-card__name,
.ptp-player-card__meta,
.ptp-player-card__details,
.ptp-profile-v44__title h1,
.ptp-profile-v44__info-item strong,
.ptp-profile-v44__section h3,
.ptp-ranking-tile__main h3,
.ptp-ranking-tile__main p,
.ptp-ranking-tile__rank,
.ptp-ranking-tile__section,
.ptp-rankings-tabs button,
.ptp-rankings-controls label,
.ptp-rankings-controls select,
.ptp-rankings-reset {
  font-weight: 760 !important;
}

.ptp-ranking-tile__main dt,
.ptp-profile-v44__info-item span,
.ptp-dashboard-card p,
.ptp-ranking-tile__main dd,
.ptp-profile-v44__info-item dd,
.ptp-profile-v44__contact-card p,
.ptp-profile-v44__contact-card strong {
  font-weight: 650 !important;
}

.ptp-ranking-tile > .ptp-platform-button,
.ptp-player-card .ptp-platform-button,
.ptp-dashboard-card,
.ptp-dashboard-card *,
.ptp-social-link,
.ptp-alert-pill,
.ptp-profile-type-badge strong,
.ptp-profile-type-badge small {
  font-weight: 700 !important;
}

/* Keep small uppercase labels readable but less heavy. */
.ptp-ranking-tile__main dt,
.ptp-profile-v44__info-item span,
.ptp-kicker,
.ptp-form legend {
  letter-spacing: .045em !important;
}



/* v7.4 Rankings tile info layout: school + details under position */
.ptp-ranking-tile__main {
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 0 !important;
  align-content: center !important;
}

.ptp-ranking-tile__main h3 {
  grid-column: 1 !important;
  grid-row: 1 !important;
}

.ptp-ranking-tile__position-line {
  grid-column: 1 !important;
  grid-row: 2 !important;
  margin: 8px 0 0 !important;
}

.ptp-ranking-tile__school-line {
  grid-column: 1 !important;
  grid-row: 3 !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px 18px !important;
  align-items: center !important;
  margin: 13px 0 0 !important;
  color: rgba(23,38,41,.72) !important;
  font-size: .94rem !important;
  line-height: 1.25 !important;
  font-weight: 600 !important;
}

.ptp-ranking-tile__school-line strong,
.ptp-ranking-tile__school-line span {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  white-space: nowrap !important;
}

.ptp-ranking-tile__school-line strong {
  color: #073b40 !important;
  font-weight: 700 !important;
}

.ptp-ranking-tile__school-line span {
  color: rgba(23,38,41,.70) !important;
  font-weight: 600 !important;
}

.ptp-ranking-tile__school-line span::before {
  content: "" !important;
  width: 4px !important;
  height: 4px !important;
  margin-right: 10px !important;
  border-radius: 999px !important;
  background: #DBB461 !important;
}

.ptp-ranking-tile__main dl {
  display: none !important;
}

@media (max-width: 760px) {
  .ptp-ranking-tile__school-line {
    gap: 7px 12px !important;
    font-size: .86rem !important;
  }

  .ptp-ranking-tile__school-line strong,
  .ptp-ranking-tile__school-line span {
    white-space: normal !important;
  }
}


/* v7.5 Rankings tile compression: align text top with photo and restore title/value detail grid */
.ptp-ranking-tile {
  grid-template-columns: 16px 104px 124px minmax(520px, 1fr) 172px !important;
  min-height: 118px !important;
}

.ptp-ranking-tile__section {
  width: 16px !important;
  min-height: 118px !important;
  font-size: .54rem !important;
}

.ptp-ranking-tile__rank {
  min-height: 118px !important;
  font-size: clamp(2.75rem, 4.3vw, 3.85rem) !important;
}

.ptp-ranking-tile__photo {
  width: 88px !important;
  height: 88px !important;
  align-self: center !important;
}

.ptp-ranking-tile__main {
  grid-column: 4 !important;
  grid-row: 1 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  grid-template-rows: auto auto auto !important;
  align-content: start !important;
  align-self: center !important;
  min-height: 88px !important;
  padding: 0 18px 0 4px !important;
  gap: 0 !important;
  background: #ffffff !important;
}

.ptp-ranking-tile__main h3 {
  grid-column: 1 !important;
  grid-row: 1 !important;
  align-self: start !important;
  margin: -1px 0 0 !important;
  color: #073b40 !important;
  font-size: clamp(1.22rem, 1.75vw, 1.54rem) !important;
  line-height: 1.02 !important;
  letter-spacing: -.03em !important;
  font-weight: 700 !important;
}

.ptp-ranking-tile__main p,
.ptp-ranking-tile__position-line {
  grid-column: 1 !important;
  grid-row: 2 !important;
  margin: 4px 0 0 !important;
  color: rgba(23,38,41,.72) !important;
  font-size: .92rem !important;
  line-height: 1.1 !important;
  font-weight: 650 !important;
}

.ptp-ranking-tile__position-line span {
  color: #DBB461 !important;
  padding: 0 6px !important;
}

.ptp-ranking-tile__school-line {
  display: none !important;
}

/* Override v7.4's dl display:none and put labels directly under the position/height. */
.ptp-ranking-tile__main dl,
.ptp-ranking-tile__details {
  grid-column: 1 !important;
  grid-row: 3 !important;
  display: grid !important;
  grid-template-columns: minmax(120px, 1.05fr) minmax(130px, 1.1fr) minmax(60px, .45fr) minmax(115px, .8fr) !important;
  gap: 14px !important;
  align-items: start !important;
  margin: 11px 0 0 !important;
  padding: 0 !important;
  min-width: 0 !important;
}

.ptp-ranking-tile__main dl div,
.ptp-ranking-tile__details div {
  min-width: 0 !important;
  padding: 0 !important;
  border-left: 0 !important;
}

.ptp-ranking-tile__main dl div + div,
.ptp-ranking-tile__details div + div {
  border-left: 1px solid rgba(7,59,64,.08) !important;
  padding-left: 12px !important;
}

.ptp-ranking-tile__main dt,
.ptp-ranking-tile__details dt {
  margin: 0 !important;
  color: rgba(23,38,41,.50) !important;
  font-size: .62rem !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: .055em !important;
}

.ptp-ranking-tile__main dd,
.ptp-ranking-tile__details dd {
  margin: 5px 0 0 !important;
  color: #073b40 !important;
  font-size: .83rem !important;
  line-height: 1.1 !important;
  font-weight: 650 !important;
  overflow-wrap: anywhere !important;
}

.ptp-ranking-tile > .ptp-platform-button {
  grid-column: 5 !important;
  align-self: center !important;
  justify-self: center !important;
  min-width: 138px !important;
  min-height: 46px !important;
  font-size: .78rem !important;
  font-weight: 700 !important;
  border-radius: 10px !important;
}

@media (max-width: 1120px) {
  .ptp-ranking-tile {
    grid-template-columns: 14px 82px 102px minmax(0, 1fr) 142px !important;
    min-height: 112px !important;
  }

  .ptp-ranking-tile__section,
  .ptp-ranking-tile__rank {
    min-height: 112px !important;
  }

  .ptp-ranking-tile__photo {
    width: 78px !important;
    height: 78px !important;
  }

  .ptp-ranking-tile__main {
    min-height: 78px !important;
    padding-right: 12px !important;
  }

  .ptp-ranking-tile__main dl,
  .ptp-ranking-tile__details {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 8px !important;
    margin-top: 9px !important;
  }

  .ptp-ranking-tile__main dl div + div,
  .ptp-ranking-tile__details div + div {
    border-left: 0 !important;
    padding-left: 0 !important;
  }

  .ptp-ranking-tile > .ptp-platform-button {
    min-width: 126px !important;
  }
}

@media (max-width: 760px) {
  .ptp-ranking-tile {
    grid-template-columns: 14px 68px 76px minmax(0, 1fr) !important;
  }

  .ptp-ranking-tile__section,
  .ptp-ranking-tile__rank {
    min-height: 104px !important;
  }

  .ptp-ranking-tile__photo {
    width: 62px !important;
    height: 62px !important;
  }

  .ptp-ranking-tile__main {
    grid-column: 4 !important;
    min-height: 62px !important;
    padding: 12px 12px 8px 0 !important;
  }

  .ptp-ranking-tile__main dl,
  .ptp-ranking-tile__details {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px 12px !important;
  }

  .ptp-ranking-tile > .ptp-platform-button {
    grid-column: 2 / -1 !important;
    grid-row: 2 !important;
    justify-self: stretch !important;
    margin: 0 12px 12px 0 !important;
  }
}


/* v7.6 Rankings controls row + attached-logo watermark */
.ptp-rankings-page::before {
  content: "" !important;
  position: absolute !important;
  top: -96px !important;
  right: -138px !important;
  left: auto !important;
  width: 360px !important;
  height: 360px !important;
  pointer-events: none !important;
  opacity: .075 !important;
  background-image: url("../img/ptp-rankings-watermark.png") !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: contain !important;
  border-radius: 0 !important;
  transform: none !important;
}

.ptp-rankings-toolbar {
  position: relative !important;
  z-index: 2 !important;
  display: grid !important;
  grid-template-columns: minmax(260px, auto) 1fr !important;
  gap: 16px !important;
  align-items: center !important;
  margin: 18px 0 22px !important;
  width: 100% !important;
}

.ptp-rankings-toolbar .ptp-rankings-tabs {
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 4px !important;
  padding: 4px !important;
  border-radius: 14px !important;
  overflow: visible !important;
  white-space: nowrap !important;
}

.ptp-rankings-toolbar .ptp-rankings-tabs button {
  min-width: 88px !important;
  min-height: 40px !important;
  padding: 0 16px !important;
  font-size: .92rem !important;
  line-height: 1 !important;
}

.ptp-rankings-toolbar .ptp-rankings-controls {
  display: none !important;
  justify-self: end !important;
  grid-template-columns: repeat(3, 148px) !important;
  gap: 10px !important;
  align-items: center !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.ptp-rankings-toolbar .ptp-rankings-controls.is-active {
  display: grid !important;
}

.ptp-rankings-control,
.ptp-rankings-controls label {
  display: block !important;
  width: 148px !important;
  height: 42px !important;
  margin: 0 !important;
  font-size: 0 !important;
}

.ptp-rankings-control > span,
.ptp-rankings-controls label > span,
.ptp-rankings-controls label::before {
  display: none !important;
  content: none !important;
}

.ptp-rankings-toolbar .ptp-rankings-controls select,
.ptp-rankings-toolbar .ptp-rankings-reset {
  width: 148px !important;
  height: 42px !important;
  min-height: 42px !important;
  margin: 0 !important;
  border: 1px solid rgba(7,59,64,.16) !important;
  border-radius: 10px !important;
  background-color: #ffffff !important;
  color: #073b40 !important;
  font-size: .86rem !important;
  font-weight: 700 !important;
  letter-spacing: .01em !important;
  box-shadow: 0 8px 18px rgba(7,59,64,.035) !important;
}

.ptp-rankings-toolbar .ptp-rankings-controls select {
  appearance: none !important;
  padding: 0 34px 0 14px !important;
  background:
    linear-gradient(45deg, transparent 50%, #073b40 50%) calc(100% - 18px) 54% / 6px 6px no-repeat,
    linear-gradient(135deg, #073b40 50%, transparent 50%) calc(100% - 14px) 54% / 6px 6px no-repeat,
    #ffffff !important;
}

.ptp-rankings-toolbar .ptp-rankings-reset {
  padding: 0 14px !important;
  text-align: center !important;
  text-transform: none !important;
}

.ptp-rankings-class-panel .ptp-rankings-controls {
  display: none !important;
}

@media (max-width: 980px) {
  .ptp-rankings-page::before {
    width: 260px !important;
    height: 260px !important;
    top: -70px !important;
    right: -110px !important;
  }

  .ptp-rankings-toolbar {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  .ptp-rankings-toolbar .ptp-rankings-tabs {
    overflow-x: auto !important;
    padding-bottom: 5px !important;
  }

  .ptp-rankings-toolbar .ptp-rankings-controls.is-active {
    justify-self: stretch !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  .ptp-rankings-control,
  .ptp-rankings-controls label,
  .ptp-rankings-toolbar .ptp-rankings-controls select,
  .ptp-rankings-toolbar .ptp-rankings-reset {
    width: 100% !important;
  }
}

@media (max-width: 620px) {
  .ptp-rankings-toolbar .ptp-rankings-controls.is-active {
    grid-template-columns: 1fr !important;
  }
}


/* v7.7 Ensure every published rankings class tab stays visible */
.ptp-rankings-toolbar .ptp-rankings-tabs {
  flex-wrap: wrap !important;
  max-width: none !important;
  overflow: visible !important;
}

.ptp-rankings-toolbar .ptp-rankings-tabs button {
  flex: 0 0 auto !important;
}

.ptp-rankings-empty-state {
  margin: 20px 0 0 !important;
  padding: 28px !important;
  border: 1px solid rgba(7,59,64,.13) !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  box-shadow: 0 12px 30px rgba(7,59,64,.045) !important;
}

.ptp-rankings-empty-state h3 {
  margin: 0 !important;
  color: #073b40 !important;
  font-size: 1.35rem !important;
  font-weight: 700 !important;
}

.ptp-rankings-empty-state p {
  margin: 8px 0 0 !important;
  color: rgba(23,38,41,.65) !important;
  font-size: .98rem !important;
  line-height: 1.45 !important;
}


/* v7.8 Rankings POS + HS/JUCO filters */
.ptp-rankings-toolbar .ptp-rankings-controls.is-active {
  grid-template-columns: repeat(4, 148px) !important;
}

.ptp-rankings-toolbar .ptp-rankings-control--type,
.ptp-rankings-toolbar .ptp-rankings-control--type select {
  display: block !important;
}

.ptp-rankings-toolbar .ptp-rankings-controls select option,
.ptp-rankings-toolbar .ptp-rankings-controls select optgroup {
  font-family: var(--ptp-font-sans, inherit) !important;
}

@media (max-width: 980px) {
  .ptp-rankings-toolbar .ptp-rankings-controls.is-active {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 720px) {
  .ptp-rankings-toolbar .ptp-rankings-controls.is-active {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 460px) {
  .ptp-rankings-toolbar .ptp-rankings-controls.is-active {
    grid-template-columns: 1fr !important;
  }
}


/* v8.2 Player Alerts: collapsed create form + saved-type notification badges */
.ptp-alert-form-card--compact {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.ptp-alert-create-panel {
  display: block !important;
}

.ptp-alert-create-panel > summary,
.ptp-alert-create-trigger {
  list-style: none !important;
  cursor: pointer !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 48px !important;
  padding: 0 20px !important;
  border: 1px solid rgba(7,59,64,.18) !important;
  border-radius: 999px !important;
  background: #073b40 !important;
  color: #ffffff !important;
  font-size: .92rem !important;
  font-weight: 750 !important;
  letter-spacing: .01em !important;
  box-shadow: 0 12px 26px rgba(7,59,64,.16) !important;
}

.ptp-alert-create-panel > summary::-webkit-details-marker {
  display: none !important;
}

.ptp-alert-create-panel > summary::after {
  content: "＋" !important;
  margin-left: 10px !important;
  font-weight: 900 !important;
}

.ptp-alert-create-panel[open] > summary::after {
  content: "–" !important;
}

.ptp-alert-create-panel__body {
  margin-top: 16px !important;
  padding: 24px !important;
  border: 1px solid rgba(7,59,64,.12) !important;
  border-radius: 24px !important;
  background: #ffffff !important;
  box-shadow: 0 18px 40px rgba(7,59,64,.08) !important;
}

.ptp-alert-item--editable > summary {
  position: relative !important;
}

.ptp-alert-summary-label {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  min-width: 0 !important;
}

.ptp-alert-new-badge {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 25px !important;
  height: 25px !important;
  padding: 0 8px !important;
  border-radius: 999px !important;
  background: #DBB461 !important;
  color: #073b40 !important;
  font-size: .78rem !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  box-shadow: 0 8px 18px rgba(219,180,97,.28) !important;
}

.ptp-alert-item--editable.has-new-matches > summary {
  background: linear-gradient(90deg, rgba(219,180,97,.13), #ffffff 42%) !important;
}

.ptp-alert-item--editable.has-new-matches > summary::before {
  content: "" !important;
  width: 8px !important;
  height: 8px !important;
  flex: 0 0 8px !important;
  margin-right: -4px !important;
  border-radius: 999px !important;
  background: #DBB461 !important;
  box-shadow: 0 0 0 4px rgba(219,180,97,.18) !important;
}

@media (max-width: 720px) {
  .ptp-alert-create-panel > summary,
  .ptp-alert-create-trigger {
    width: 100% !important;
  }

  .ptp-alert-create-panel__body {
    padding: 18px !important;
  }
}


/* v8.3 Paywall refinements for rankings, calendar, and subscriber accounts */
.ptp-ranking-tile--locked {
  border: 1px dashed rgba(7,59,64,.22) !important;
  background: linear-gradient(90deg, rgba(248,242,228,.72), #ffffff 26%) !important;
}

.ptp-ranking-tile--locked .ptp-ranking-tile__rank {
  font-size: clamp(1.8rem, 3vw, 2.4rem) !important;
}

.ptp-ranking-tile--locked .ptp-ranking-tile__main {
  grid-column: 3 / 5 !important;
}

.ptp-ranking-tile--locked .ptp-ranking-tile__main h3 {
  margin-bottom: 6px !important;
}

.ptp-ranking-tile--locked .ptp-ranking-tile__position-line {
  max-width: 680px !important;
  line-height: 1.35 !important;
}

.ptp-event-locked-badge {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 34px !important;
  padding: 0 12px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(7,59,64,.16) !important;
  background: rgba(248,242,228,.75) !important;
  color: #073b40 !important;
  font-size: .78rem !important;
  font-weight: 750 !important;
  white-space: nowrap !important;
}

.ptp-event-paywall-box {
  margin-top: 24px !important;
}

@media (max-width: 760px) {
  .ptp-ranking-tile--locked .ptp-ranking-tile__main {
    grid-column: 3 / -1 !important;
  }
}


/* v8.4 Remove dark photo shading from player cards with uploaded images */
.ptp-player-card__photo::after,
.ptp-player-card__photo:after,
.ptp-player-card--option10 .ptp-player-card__photo::after,
.ptp-player-card--option10 .ptp-player-card__photo:after,
.ptp-player-card--dashboard .ptp-player-card__photo::after,
.ptp-player-card--dashboard .ptp-player-card__photo:after {
  content: none !important;
  display: none !important;
  background: transparent !important;
  opacity: 0 !important;
}

.ptp-player-card__photo img,
.ptp-player-card--option10 .ptp-player-card__photo img {
  filter: none !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
}


/* v8.5 Play Style paywall */
.ptp-player-card__badges--locked {
  opacity: .82 !important;
}

.ptp-player-card__badges--locked .ptp-player-card__badge {
  border-style: dashed !important;
  background: rgba(248,242,228,.72) !important;
  color: rgba(7,59,64,.72) !important;
}


/* v8.6 Account page redesign */
.ptp-account-page--v86 {
  width: min(1120px, calc(100% - 40px)) !important;
  margin: 0 auto !important;
  display: grid !important;
  gap: 18px !important;
}

.ptp-account-hero,
.ptp-account-panel {
  background: #ffffff !important;
  border: 1px solid rgba(7,59,64,.12) !important;
  border-radius: 22px !important;
  box-shadow: 0 18px 40px rgba(7,59,64,.07) !important;
}

.ptp-account-hero {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  padding: 26px !important;
}

.ptp-account-hero h2 {
  margin: 0 !important;
  color: #073b40 !important;
  font-size: clamp(1.85rem, 3vw, 2.65rem) !important;
  line-height: 1 !important;
  letter-spacing: -.045em !important;
  font-weight: 750 !important;
}

.ptp-account-hero p:not(.ptp-kicker) {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  align-items: center !important;
  margin: 9px 0 0 !important;
  color: rgba(23,38,41,.64) !important;
  font-size: .92rem !important;
  font-weight: 650 !important;
}

.ptp-account-panel {
  padding: 22px !important;
}

.ptp-account-panel__head {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
}

.ptp-account-panel h3,
.ptp-account-staff-panel summary h3 {
  margin: 0 !important;
  color: #073b40 !important;
  font-size: 1.08rem !important;
  line-height: 1.1 !important;
  letter-spacing: -.02em !important;
  font-weight: 750 !important;
}

.ptp-account-status-badge {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  min-height: 32px !important;
  padding: 0 12px !important;
  border-radius: 999px !important;
  font-size: .82rem !important;
  font-weight: 800 !important;
}

.ptp-account-status-badge span {
  width: 8px !important;
  height: 8px !important;
  border-radius: 999px !important;
  background: currentColor !important;
}

.ptp-account-status-badge.is-active {
  background: rgba(154,185,168,.20) !important;
  color: #073b40 !important;
}

.ptp-account-status-badge.is-inactive {
  background: rgba(140,20,20,.08) !important;
  color: #8c1414 !important;
}

.ptp-account-billing-actions {
  margin-top: 18px !important;
}

.ptp-account-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.25fr) minmax(260px, .75fr) !important;
  gap: 18px !important;
}

.ptp-account-panel__split {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  margin-top: 18px !important;
  padding-top: 16px !important;
  border-top: 1px solid rgba(7,59,64,.10) !important;
}

.ptp-account-panel__split > span {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 34px !important;
  padding: 0 12px !important;
  border-radius: 999px !important;
  background: rgba(248,242,228,.76) !important;
  color: #073b40 !important;
  font-weight: 800 !important;
}

.ptp-account-panel__split small {
  display: block !important;
  margin-bottom: 4px !important;
  color: rgba(23,38,41,.55) !important;
  font-size: .72rem !important;
  line-height: 1 !important;
  font-weight: 800 !important;
  letter-spacing: .055em !important;
  text-transform: uppercase !important;
}

.ptp-account-panel__split strong,
.ptp-account-large-value {
  margin: 18px 0 0 !important;
  color: #073b40 !important;
  font-size: 1.18rem !important;
  line-height: 1.1 !important;
  font-weight: 750 !important;
}

.ptp-account-switch-form {
  margin: 0 !important;
}

.ptp-account-switch {
  position: relative !important;
  width: 62px !important;
  height: 34px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: rgba(23,38,41,.18) !important;
  cursor: pointer !important;
  box-shadow: inset 0 0 0 1px rgba(7,59,64,.10) !important;
}

.ptp-account-switch span {
  position: absolute !important;
  top: 4px !important;
  left: 4px !important;
  width: 26px !important;
  height: 26px !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  box-shadow: 0 4px 10px rgba(7,59,64,.20) !important;
  transition: transform .18s ease !important;
}

.ptp-account-switch.is-on {
  background: #073b40 !important;
}

.ptp-account-switch.is-on span {
  transform: translateX(28px) !important;
}

.ptp-account-staff-panel {
  padding: 0 !important;
  overflow: hidden !important;
}

.ptp-account-staff-panel details {
  display: block !important;
}

.ptp-account-staff-panel summary {
  list-style: none !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  padding: 22px !important;
}

.ptp-account-staff-panel summary::-webkit-details-marker {
  display: none !important;
}

.ptp-account-staff-panel summary small {
  display: block !important;
  margin-top: 5px !important;
  color: rgba(23,38,41,.62) !important;
  font-size: .86rem !important;
  font-style: normal !important;
  font-weight: 650 !important;
}

.ptp-account-staff-panel summary em {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 36px !important;
  padding: 0 13px !important;
  border-radius: 999px !important;
  background: rgba(154,185,168,.18) !important;
  color: #073b40 !important;
  font-style: normal !important;
  font-size: .82rem !important;
  font-weight: 800 !important;
}

.ptp-account-staff-panel[open] summary em,
.ptp-account-staff-panel details[open] summary em {
  background: #073b40 !important;
  color: #ffffff !important;
}

.ptp-account-staff-list {
  display: grid !important;
  gap: 10px !important;
  padding: 0 22px 18px !important;
}

.ptp-account-staff-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 14px !important;
  align-items: center !important;
  padding: 14px !important;
  border: 1px solid rgba(7,59,64,.10) !important;
  border-radius: 14px !important;
  background: #ffffff !important;
}

.ptp-account-staff-row strong {
  display: block !important;
  color: #073b40 !important;
  font-size: .98rem !important;
  line-height: 1.15 !important;
  font-weight: 750 !important;
}

.ptp-account-staff-row span {
  display: block !important;
  margin-top: 4px !important;
  color: rgba(23,38,41,.62) !important;
  font-size: .84rem !important;
  font-weight: 600 !important;
}

.ptp-account-staff-actions {
  display: flex !important;
  gap: 8px !important;
  align-items: center !important;
}

.ptp-account-staff-actions a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 34px !important;
  padding: 0 11px !important;
  border: 1px solid rgba(7,59,64,.14) !important;
  border-radius: 999px !important;
  color: #073b40 !important;
  background: #ffffff !important;
  font-size: .78rem !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}

.ptp-account-staff-footer {
  padding: 0 22px 22px !important;
}

@media (max-width: 820px) {
  .ptp-account-hero,
  .ptp-account-panel__split {
    align-items: flex-start !important;
    flex-direction: column !important;
  }

  .ptp-account-grid,
  .ptp-account-staff-row {
    grid-template-columns: 1fr !important;
  }

  .ptp-account-staff-actions {
    justify-content: flex-start !important;
  }
}


/* v8.7 Stripe payment integration UI */
.ptp-stripe-action-form {
  margin: 0 !important;
}

.ptp-account-payment-note {
  margin: 10px 0 0 !important;
  color: rgba(23,38,41,.62) !important;
  font-size: .86rem !important;
  line-height: 1.35 !important;
  font-weight: 650 !important;
}

.ptp-form-success--warning {
  background: rgba(219,180,97,.18) !important;
}

.ptp-account-payment-note--error{color:#9f1239;font-weight:700;}


.ptp-payment-required-box {
  margin: 0 0 24px;
  padding: clamp(24px, 4vw, 40px);
  border: 1px solid rgba(219, 180, 97, .55);
  border-radius: 28px;
  background: linear-gradient(135deg, #ffffff 0%, #fffaf0 100%);
  box-shadow: 0 24px 60px rgba(6, 75, 78, .12);
}
.ptp-payment-required-box h2 {
  margin: 6px 0 10px;
  color: #064b4e;
}
.ptp-payment-required-box p {
  max-width: 760px;
}
.ptp-payment-required-box__actions {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 18px;
}


.ptp-pnw-rank-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 28px;
  padding: 5px 11px;
  border-radius: 999px;
  background: linear-gradient(135deg, #dbb461 0%, #f1d17d 100%);
  color: #073b40;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .08em;
  line-height: 1;
  text-transform: uppercase;
  box-shadow: 0 8px 18px rgba(6, 75, 78, .18);
  white-space: nowrap;
}

.ptp-player-card__header .ptp-pnw-rank-badge {
  margin-left: auto;
}

.ptp-pnw-rank-badge--profile {
  min-height: 30px;
  padding: 6px 12px;
  vertical-align: middle;
  transform: translateY(-1px);
}

.ptp-profile-v44__meta-line .ptp-pnw-rank-badge {
  margin-left: 4px;
}


/* v9.7: softer PNW rank badge and reliable player-card header placement */
.ptp-player-card__header.ptp-player-card__header--ranked {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
}

.ptp-player-card__header.ptp-player-card__header--ranked .ptp-player-card__header-label {
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

.ptp-pnw-rank-badge {
  background: rgba(219, 180, 97, .26) !important;
  border: 1px solid rgba(219, 180, 97, .52) !important;
  color: #064b4e !important;
  box-shadow: none !important;
}

.ptp-pnw-rank-badge--card {
  flex: 0 0 auto !important;
  display: inline-flex !important;
  min-height: 24px !important;
  padding: 4px 9px !important;
  font-size: 11px !important;
  letter-spacing: .07em !important;
  margin-left: 10px !important;
}

.ptp-pnw-rank-badge--profile {
  background: rgba(219, 180, 97, .22) !important;
  border-color: rgba(219, 180, 97, .46) !important;
  min-height: 28px !important;
}


/* v9.8: move PNW rank badge to identity row and restore full brand color */
.ptp-player-card__identity-row {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 12px !important;
  margin-bottom: 12px !important;
}

.ptp-player-card__identity-main {
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

.ptp-player-card__identity-row h3 {
  margin-bottom: 4px !important;
}

.ptp-player-card__identity-row .ptp-player-card__line {
  margin-bottom: 0 !important;
}

.ptp-pnw-rank-badge {
  background: #DBB461 !important;
  border: 1px solid #DBB461 !important;
  color: #073B40 !important;
  box-shadow: 0 8px 18px rgba(6, 75, 78, .18) !important;
}

.ptp-pnw-rank-badge--card {
  flex: 0 0 auto !important;
  display: inline-flex !important;
  align-self: flex-start !important;
  min-height: 28px !important;
  padding: 6px 10px !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: .07em !important;
  margin-left: 8px !important;
  margin-top: 1px !important;
}

.ptp-pnw-rank-badge--profile {
  background: #DBB461 !important;
  border-color: #DBB461 !important;
  color: #073B40 !important;
  box-shadow: 0 8px 18px rgba(6, 75, 78, .16) !important;
}


/* v9.9: make profile PNW rank badge match player-card rank badge */
.ptp-pnw-rank-badge--profile {
  background: #DBB461 !important;
  border: 1px solid #DBB461 !important;
  color: #073B40 !important;
  box-shadow: 0 8px 18px rgba(6, 75, 78, .18) !important;
  min-height: 28px !important;
  padding: 6px 10px !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: .07em !important;
  line-height: 1 !important;
}


/* v10.0: force profile ranking badge to match solid card badge */
.ptp-profile.ptp-profile--v44 .ptp-profile-v44__meta-line .ptp-pnw-rank-badge,
.ptp-profile.ptp-profile--v44 .ptp-profile-v44__meta-line .ptp-pnw-rank-badge--profile,
.ptp-profile.ptp-profile--v44 .ptp-profile-v44__meta-line .ptp-pnw-rank-badge--card.ptp-pnw-rank-badge--profile {
  background: #DBB461 !important;
  background-color: #DBB461 !important;
  background-image: none !important;
  border: 1px solid #DBB461 !important;
  color: #073B40 !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
  filter: none !important;
  box-shadow: 0 8px 18px rgba(6, 75, 78, .18) !important;
  min-height: 28px !important;
  padding: 6px 10px !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: .07em !important;
  line-height: 1 !important;
}


/* v10.1: college logos in player-profile offers */
.ptp-offer-school {
  display: inline-flex;
  align-items: center;
  gap: .45em;
  min-width: 0;
  max-width: 100%;
  vertical-align: middle;
}

.ptp-offer-school__logo {
  width: 1.45em;
  height: 1.45em;
  object-fit: contain;
  flex: 0 0 1.45em;
  border-radius: .2em;
}

.ptp-offer-school__name {
  min-width: 0;
  overflow-wrap: anywhere;
}


/* v10.2: PTP Player Evaluation article block */
.ptp-eval-block {
  margin: clamp(28px, 5vw, 54px) 0;
}

.ptp-eval-block__card {
  border: 1px solid rgba(6, 75, 78, .12);
  border-radius: 26px;
  background: #fff;
  box-shadow: 0 20px 50px rgba(6, 75, 78, .08);
  padding: clamp(24px, 4vw, 42px);
}

.ptp-eval-block__top {
  display: grid;
  grid-template-columns: minmax(120px, 180px) minmax(0, 1fr);
  gap: clamp(20px, 4vw, 36px);
  align-items: start;
}

.ptp-eval-block__photo {
  display: block;
  width: min(180px, 100%);
  aspect-ratio: 1 / 1;
  border-radius: 16px;
  overflow: hidden;
  background: linear-gradient(135deg, #064b4e, #AEC3B2);
  text-decoration: none;
  box-shadow: 0 16px 34px rgba(6, 75, 78, .16);
}

.ptp-eval-block__photo-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.ptp-eval-block__photo-placeholder {
  width: 100%;
  height: 100%;
  display: grid;
  place-items: center;
  color: #fff;
  font-size: 48px;
  font-weight: 900;
}

.ptp-eval-block__identity {
  min-height: min(180px, 42vw);
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  padding-top: 18px;
}

.ptp-eval-block__title-row {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
}

.ptp-eval-block__title-row h3 {
  margin: 0;
  color: #064b4e;
  font-size: clamp(30px, 4vw, 46px);
  line-height: 1;
  letter-spacing: -.05em;
}

.ptp-eval-block__title-row h3 a {
  color: inherit;
  text-decoration: none;
}

.ptp-eval-block__rank {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  padding: 7px 11px;
  border-radius: 8px;
  background: #064b4e;
  color: #fff;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
  white-space: nowrap;
  box-shadow: 0 8px 18px rgba(6, 75, 78, .18);
}

.ptp-eval-block__meta,
.ptp-eval-block__location {
  margin: 18px 0 0;
  color: #123438;
  font-weight: 600;
  letter-spacing: .06em;
}

.ptp-eval-block__meta span {
  display: inline-block;
  width: 1px;
  height: 1em;
  margin: 0 14px;
  background: #DBB461;
  transform: translateY(.15em);
}

.ptp-eval-block__location {
  text-transform: uppercase;
  letter-spacing: .22em;
  color: #064b4e;
  font-weight: 700;
}

.ptp-eval-block__rule {
  height: 2px;
  background: #DBB461;
  width: 100%;
  margin-top: auto;
}

.ptp-eval-block__evaluation {
  margin-top: clamp(24px, 4vw, 40px);
  color: #123438;
  font-size: clamp(17px, 2vw, 21px);
  line-height: 1.85;
}

.ptp-eval-block__evaluation p {
  margin: 0 0 1.1em;
}

.ptp-eval-block__evaluation p:last-child {
  margin-bottom: 0;
}

.ptp-eval-block__link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-top: 24px;
  color: #064b4e;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
  text-decoration: none;
  border-bottom: 2px solid #DBB461;
  padding-bottom: 5px;
}

@media (max-width: 720px) {
  .ptp-eval-block__top {
    grid-template-columns: 1fr;
  }

  .ptp-eval-block__photo {
    width: min(220px, 100%);
  }

  .ptp-eval-block__identity {
    min-height: 0;
    padding-top: 0;
  }

  .ptp-eval-block__rule {
    margin-top: 18px;
  }

  .ptp-eval-block__title-row {
    align-items: flex-start;
    flex-direction: column;
  }
}


/* v10.3: professional single article layout with recent-articles sidebar */
.single-post.ptp-single-article .entry-content,
.single-post.ptp-single-article .wp-block-post-content {
  font-size: clamp(17px, 1.7vw, 19px);
  line-height: 1.78;
}

.ptp-article-news-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 340px);
  gap: clamp(28px, 4vw, 48px);
  align-items: start;
  margin-top: clamp(26px, 4vw, 44px);
}

.ptp-article-news-main {
  min-width: 0;
}

.ptp-article-news-main > p:first-child {
  font-size: clamp(20px, 2vw, 24px);
  line-height: 1.55;
  color: #1b4044;
}

.ptp-article-sidebar {
  position: sticky;
  top: 110px;
}

.ptp-article-sidebar__inner {
  border: 1px solid rgba(6, 75, 78, .12);
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 18px 42px rgba(6, 75, 78, .08);
  padding: 22px;
}

.ptp-article-sidebar__inner h3 {
  margin: 4px 0 18px;
  color: #064b4e;
  font-size: 22px;
  letter-spacing: -.035em;
}

.ptp-article-sidebar__list {
  display: grid;
  gap: 16px;
}

.ptp-article-sidebar__item {
  display: grid;
  grid-template-columns: 74px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  color: #123438;
  text-decoration: none;
  padding-bottom: 16px;
  border-bottom: 1px solid rgba(6, 75, 78, .10);
}

.ptp-article-sidebar__item:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.ptp-article-sidebar__thumb {
  display: block;
  width: 74px;
  aspect-ratio: 1 / .78;
  border-radius: 14px;
  overflow: hidden;
  background: linear-gradient(135deg, #064b4e, #AEC3B2);
}

.ptp-article-sidebar__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.ptp-article-sidebar__thumb--placeholder {
  display: grid;
  place-items: center;
  color: #fff;
  font-size: 13px;
  font-weight: 900;
}

.ptp-article-sidebar__copy {
  min-width: 0;
}

.ptp-article-sidebar__meta {
  display: block;
  margin-bottom: 4px;
  color: #DBB461;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.ptp-article-sidebar__copy strong {
  display: block;
  color: #064b4e;
  font-size: 14px;
  line-height: 1.35;
}

@media (max-width: 900px) {
  .ptp-article-news-layout {
    grid-template-columns: 1fr;
  }

  .ptp-article-sidebar {
    position: static;
  }
}


/* v10.4: single article featured image sizing */
.single-post.ptp-single-article .post-thumbnail,
.single-post.ptp-single-article .entry-thumbnail,
.single-post.ptp-single-article .featured-image,
.single-post.ptp-single-article figure.post-thumbnail {
  max-width: min(100%, 980px);
  margin-left: auto;
  margin-right: auto;
}

.single-post.ptp-single-article.ptp-article-featured-crop .wp-post-image,
.single-post.ptp-single-article.ptp-article-featured-crop .post-thumbnail img,
.single-post.ptp-single-article.ptp-article-featured-crop .featured-image img,
.single-post.ptp-single-article.ptp-article-featured-crop .entry-thumbnail img {
  width: 100% !important;
  height: clamp(220px, 30vw, 390px) !important;
  max-height: 390px !important;
  object-fit: cover !important;
  object-position: center center !important;
  border-radius: 24px !important;
}

.single-post.ptp-single-article.ptp-article-featured-contain .wp-post-image,
.single-post.ptp-single-article.ptp-article-featured-contain .post-thumbnail img,
.single-post.ptp-single-article.ptp-article-featured-contain .featured-image img,
.single-post.ptp-single-article.ptp-article-featured-contain .entry-thumbnail img {
  display: block !important;
  width: auto !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: 390px !important;
  object-fit: contain !important;
  border-radius: 24px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  background: #fff !important;
}

/* v10.4: recent articles live in the unused far-right rail instead of narrowing article content */
.ptp-article-news-layout {
  display: block !important;
}

.ptp-article-news-main {
  min-width: 0;
}

.ptp-article-sidebar {
  width: 300px;
}

@media (min-width: 1320px) {
  .single-post.ptp-single-article .ptp-article-sidebar {
    position: fixed;
    top: 150px;
    right: max(22px, calc((100vw - 1260px) / 2));
    z-index: 20;
    max-height: calc(100vh - 180px);
    overflow: auto;
  }
}

@media (min-width: 1500px) {
  .single-post.ptp-single-article .ptp-article-sidebar {
    right: max(34px, calc((100vw - 1380px) / 2));
  }
}

@media (max-width: 1319px) {
  .single-post.ptp-single-article .ptp-article-sidebar {
    position: static;
    width: auto;
    margin-top: 36px;
  }
}


/* v10.5: tighter, left-aligned professional article layout */
.single-post.ptp-single-article .site-main,
.single-post.ptp-single-article main,
.single-post.ptp-single-article article {
  overflow: visible !important;
}

.single-post.ptp-single-article .entry-header,
.single-post.ptp-single-article .post-thumbnail,
.single-post.ptp-single-article .entry-thumbnail,
.single-post.ptp-single-article .featured-image,
.single-post.ptp-single-article .entry-content,
.single-post.ptp-single-article .wp-block-post-content,
.single-post.ptp-single-article .ptp-article-news-main {
  max-width: 820px !important;
  margin-left: max(24px, calc((100vw - 1180px) / 2)) !important;
  margin-right: auto !important;
}

.single-post.ptp-single-article .entry-title,
.single-post.ptp-single-article h1.entry-title,
.single-post.ptp-single-article .wp-block-post-title,
.single-post.ptp-single-article h1.wp-block-post-title {
  max-width: 820px !important;
  margin-left: max(24px, calc((100vw - 1180px) / 2)) !important;
  margin-right: auto !important;
  text-align: left !important;
  font-size: clamp(30px, 4vw, 48px) !important;
  line-height: 1.04 !important;
  letter-spacing: -.045em !important;
}

.single-post.ptp-single-article .entry-content,
.single-post.ptp-single-article .wp-block-post-content {
  font-size: clamp(15.5px, 1.4vw, 17px) !important;
  line-height: 1.7 !important;
}

.single-post.ptp-single-article.ptp-article-featured-crop .wp-post-image,
.single-post.ptp-single-article.ptp-article-featured-crop .post-thumbnail img,
.single-post.ptp-single-article.ptp-article-featured-crop .featured-image img,
.single-post.ptp-single-article.ptp-article-featured-crop .entry-thumbnail img {
  height: clamp(180px, 24vw, 300px) !important;
  max-height: 300px !important;
  object-fit: cover !important;
  object-position: center center !important;
  border-radius: 18px !important;
}

.single-post.ptp-single-article.ptp-article-featured-contain .wp-post-image,
.single-post.ptp-single-article.ptp-article-featured-contain .post-thumbnail img,
.single-post.ptp-single-article.ptp-article-featured-contain .featured-image img,
.single-post.ptp-single-article.ptp-article-featured-contain .entry-thumbnail img {
  max-height: 300px !important;
  border-radius: 18px !important;
  margin-left: 0 !important;
  margin-right: auto !important;
}

/* v10.5: smaller article evaluation blocks */
.single-post.ptp-single-article .ptp-eval-block {
  margin: 24px 0 !important;
}

.single-post.ptp-single-article .ptp-eval-block__card {
  padding: clamp(18px, 2.5vw, 28px) !important;
  border-radius: 20px !important;
  box-shadow: 0 14px 34px rgba(6, 75, 78, .07) !important;
}

.single-post.ptp-single-article .ptp-eval-block__top {
  grid-template-columns: 118px minmax(0, 1fr) !important;
  gap: 22px !important;
}

.single-post.ptp-single-article .ptp-eval-block__photo {
  width: 118px !important;
  border-radius: 12px !important;
  box-shadow: 0 10px 22px rgba(6, 75, 78, .12) !important;
}

.single-post.ptp-single-article .ptp-eval-block__identity {
  min-height: 118px !important;
  padding-top: 6px !important;
}

.single-post.ptp-single-article .ptp-eval-block__title-row h3 {
  font-size: clamp(24px, 2.8vw, 34px) !important;
}

.single-post.ptp-single-article .ptp-eval-block__rank {
  min-height: 26px !important;
  padding: 5px 9px !important;
  font-size: 11px !important;
}

.single-post.ptp-single-article .ptp-eval-block__meta,
.single-post.ptp-single-article .ptp-eval-block__location {
  margin-top: 10px !important;
  font-size: 13px !important;
}

.single-post.ptp-single-article .ptp-eval-block__evaluation {
  margin-top: 22px !important;
  font-size: 15.5px !important;
  line-height: 1.7 !important;
}

.single-post.ptp-single-article .ptp-eval-block__link {
  margin-top: 18px !important;
  font-size: 11px !important;
}

/* v10.5: pin recent articles in the unused far-right rail */
@media (min-width: 1320px) {
  .single-post.ptp-single-article .ptp-article-sidebar {
    position: fixed !important;
    top: 168px !important;
    right: max(24px, calc((100vw - 1220px) / 2)) !important;
    width: 280px !important;
    max-height: calc(100vh - 200px) !important;
    overflow: auto !important;
    z-index: 50 !important;
  }

  .single-post.ptp-single-article .ptp-article-sidebar__inner {
    padding: 18px !important;
    border-radius: 18px !important;
  }

  .single-post.ptp-single-article .ptp-article-sidebar__inner h3 {
    font-size: 18px !important;
  }

  .single-post.ptp-single-article .ptp-article-sidebar__item {
    grid-template-columns: 58px minmax(0, 1fr) !important;
    gap: 10px !important;
  }

  .single-post.ptp-single-article .ptp-article-sidebar__thumb {
    width: 58px !important;
    border-radius: 10px !important;
  }

  .single-post.ptp-single-article .ptp-article-sidebar__copy strong {
    font-size: 13px !important;
  }
}

@media (max-width: 1319px) {
  .single-post.ptp-single-article .entry-header,
  .single-post.ptp-single-article .post-thumbnail,
  .single-post.ptp-single-article .entry-thumbnail,
  .single-post.ptp-single-article .featured-image,
  .single-post.ptp-single-article .entry-content,
  .single-post.ptp-single-article .wp-block-post-content,
  .single-post.ptp-single-article .ptp-article-news-main,
  .single-post.ptp-single-article .entry-title,
  .single-post.ptp-single-article h1.entry-title,
  .single-post.ptp-single-article .wp-block-post-title,
  .single-post.ptp-single-article h1.wp-block-post-title {
    margin-left: auto !important;
    margin-right: auto !important;
    width: min(100% - 32px, 820px) !important;
  }

  .single-post.ptp-single-article .ptp-article-sidebar {
    position: static !important;
    width: min(100% - 32px, 820px) !important;
    margin: 32px auto 0 !important;
  }
}

@media (max-width: 720px) {
  .single-post.ptp-single-article .ptp-eval-block__top {
    grid-template-columns: 1fr !important;
  }

  .single-post.ptp-single-article .ptp-eval-block__photo {
    width: 150px !important;
  }

  .single-post.ptp-single-article .ptp-eval-block__identity {
    min-height: 0 !important;
  }
}


/* v10.6: Prep Hoops-style article shell, left content card, fixed right rail */
body.single-post.ptp-single-article {
  background: #f3f4f6 !important;
}

.single-post.ptp-single-article article,
.single-post.ptp-single-article .hentry,
.single-post.ptp-single-article .type-post {
  overflow: visible !important;
}

.single-post.ptp-single-article .entry-header,
.single-post.ptp-single-article .post-thumbnail,
.single-post.ptp-single-article .entry-thumbnail,
.single-post.ptp-single-article .featured-image,
.single-post.ptp-single-article .entry-content,
.single-post.ptp-single-article .wp-block-post-content,
.single-post.ptp-single-article .ptp-article-news-main {
  width: min(100% - 48px, 900px) !important;
  max-width: 900px !important;
  margin-left: max(24px, calc((100vw - 1420px) / 2)) !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

.single-post.ptp-single-article .entry-header {
  background: #fff !important;
  border-radius: 18px 18px 0 0 !important;
  padding: 26px 28px 12px !important;
  margin-top: 28px !important;
}

.single-post.ptp-single-article .post-thumbnail,
.single-post.ptp-single-article .entry-thumbnail,
.single-post.ptp-single-article .featured-image,
.single-post.ptp-single-article figure.post-thumbnail {
  background: #fff !important;
  padding: 0 28px 20px !important;
  border-radius: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.single-post.ptp-single-article .entry-content,
.single-post.ptp-single-article .wp-block-post-content,
.single-post.ptp-single-article .ptp-article-news-main {
  background: #fff !important;
  padding: 22px 28px 42px !important;
  border-radius: 0 0 18px 18px !important;
  font-size: 15.5px !important;
  line-height: 1.68 !important;
}

.single-post.ptp-single-article .entry-title,
.single-post.ptp-single-article h1.entry-title,
.single-post.ptp-single-article .wp-block-post-title,
.single-post.ptp-single-article h1.wp-block-post-title {
  width: auto !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
  color: #101827 !important;
  font-size: clamp(26px, 3vw, 38px) !important;
  line-height: 1.06 !important;
  letter-spacing: -.045em !important;
}

.single-post.ptp-single-article.ptp-article-featured-crop .wp-post-image,
.single-post.ptp-single-article.ptp-article-featured-crop .post-thumbnail img,
.single-post.ptp-single-article.ptp-article-featured-crop .featured-image img,
.single-post.ptp-single-article.ptp-article-featured-crop .entry-thumbnail img {
  width: 100% !important;
  height: clamp(180px, 22vw, 280px) !important;
  max-height: 280px !important;
  object-fit: cover !important;
  object-position: center center !important;
  border-radius: 12px !important;
  display: block !important;
}

.single-post.ptp-single-article.ptp-article-featured-contain .wp-post-image,
.single-post.ptp-single-article.ptp-article-featured-contain .post-thumbnail img,
.single-post.ptp-single-article.ptp-article-featured-contain .featured-image img,
.single-post.ptp-single-article.ptp-article-featured-contain .entry-thumbnail img {
  width: auto !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: 280px !important;
  object-fit: contain !important;
  border-radius: 12px !important;
  display: block !important;
  margin-left: 0 !important;
  margin-right: auto !important;
}

/* v10.6: smaller evaluation blocks inside articles */
.single-post.ptp-single-article .ptp-eval-block {
  max-width: 100% !important;
  margin: 22px 0 !important;
}

.single-post.ptp-single-article .ptp-eval-block__card {
  padding: 18px !important;
  border-radius: 16px !important;
  box-shadow: none !important;
  border-color: rgba(6, 75, 78, .11) !important;
}

.single-post.ptp-single-article .ptp-eval-block__top {
  grid-template-columns: 96px minmax(0, 1fr) !important;
  gap: 18px !important;
}

.single-post.ptp-single-article .ptp-eval-block__photo {
  width: 96px !important;
  border-radius: 10px !important;
  box-shadow: none !important;
}

.single-post.ptp-single-article .ptp-eval-block__identity {
  min-height: 96px !important;
  padding-top: 4px !important;
}

.single-post.ptp-single-article .ptp-eval-block__title-row h3 {
  font-size: clamp(21px, 2.2vw, 28px) !important;
  letter-spacing: -.035em !important;
}

.single-post.ptp-single-article .ptp-eval-block__rank {
  min-height: 24px !important;
  padding: 4px 8px !important;
  font-size: 10px !important;
  border-radius: 7px !important;
}

.single-post.ptp-single-article .ptp-eval-block__meta,
.single-post.ptp-single-article .ptp-eval-block__location {
  margin-top: 7px !important;
  font-size: 12px !important;
  letter-spacing: .05em !important;
}

.single-post.ptp-single-article .ptp-eval-block__location {
  letter-spacing: .15em !important;
}

.single-post.ptp-single-article .ptp-eval-block__rule {
  height: 1px !important;
}

.single-post.ptp-single-article .ptp-eval-block__evaluation {
  margin-top: 16px !important;
  font-size: 14.5px !important;
  line-height: 1.62 !important;
}

.single-post.ptp-single-article .ptp-eval-block__link {
  margin-top: 14px !important;
  font-size: 10px !important;
  padding-bottom: 3px !important;
}

/* v10.6: keep the recent articles rail fixed in the far-right unused column */
@media (min-width: 1260px) {
  .single-post.ptp-single-article .ptp-article-sidebar {
    position: fixed !important;
    top: 88px !important;
    right: max(24px, calc((100vw - 1420px) / 2)) !important;
    width: 310px !important;
    max-height: calc(100vh - 116px) !important;
    overflow: auto !important;
    z-index: 40 !important;
  }

  .single-post.ptp-single-article .ptp-article-sidebar__inner {
    border-radius: 16px !important;
    padding: 18px !important;
    box-shadow: 0 12px 30px rgba(16, 24, 39, .08) !important;
  }

  .single-post.ptp-single-article .ptp-article-sidebar__inner h3 {
    color: #101827 !important;
    font-size: 18px !important;
    letter-spacing: -.02em !important;
  }

  .single-post.ptp-single-article .ptp-article-sidebar__item {
    grid-template-columns: 52px minmax(0, 1fr) !important;
    gap: 10px !important;
  }

  .single-post.ptp-single-article .ptp-article-sidebar__thumb {
    width: 52px !important;
    border-radius: 9px !important;
  }

  .single-post.ptp-single-article .ptp-article-sidebar__copy strong {
    color: #101827 !important;
    font-size: 13px !important;
    line-height: 1.28 !important;
  }
}

@media (max-width: 1259px) {
  .single-post.ptp-single-article .entry-header,
  .single-post.ptp-single-article .post-thumbnail,
  .single-post.ptp-single-article .entry-thumbnail,
  .single-post.ptp-single-article .featured-image,
  .single-post.ptp-single-article .entry-content,
  .single-post.ptp-single-article .wp-block-post-content,
  .single-post.ptp-single-article .ptp-article-news-main {
    width: min(100% - 32px, 900px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .single-post.ptp-single-article .ptp-article-sidebar {
    position: static !important;
    width: min(100% - 32px, 900px) !important;
    margin: 32px auto 0 !important;
  }
}


/* v10.7: simplified centered paper-style article layout */
body.single-post.ptp-single-article {
  background: #f4f5f6 !important;
}

.single-post.ptp-single-article .ptp-article-sidebar {
  display: none !important;
}

.single-post.ptp-single-article article,
.single-post.ptp-single-article .hentry,
.single-post.ptp-single-article .type-post {
  width: min(100% - 36px, 860px) !important;
  max-width: 860px !important;
  margin: 34px auto 64px !important;
  background: #fff !important;
  border: 1px solid rgba(16, 24, 39, .14) !important;
  border-radius: 14px !important;
  box-shadow: 0 18px 46px rgba(16, 24, 39, .08) !important;
  padding: 34px !important;
  box-sizing: border-box !important;
  overflow: visible !important;
}

.single-post.ptp-single-article .entry-header,
.single-post.ptp-single-article .post-thumbnail,
.single-post.ptp-single-article .entry-thumbnail,
.single-post.ptp-single-article .featured-image,
.single-post.ptp-single-article figure.post-thumbnail,
.single-post.ptp-single-article .entry-content,
.single-post.ptp-single-article .wp-block-post-content,
.single-post.ptp-single-article .ptp-article-news-main {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  background: transparent !important;
  padding: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
}

.single-post.ptp-single-article .entry-header {
  margin-bottom: 20px !important;
}

.single-post.ptp-single-article .entry-title,
.single-post.ptp-single-article h1.entry-title,
.single-post.ptp-single-article .wp-block-post-title,
.single-post.ptp-single-article h1.wp-block-post-title {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 18px !important;
  padding: 0 !important;
  text-align: left !important;
  color: #101827 !important;
  font-size: clamp(28px, 3.2vw, 42px) !important;
  line-height: 1.08 !important;
  letter-spacing: -.045em !important;
}

.single-post.ptp-single-article .post-thumbnail,
.single-post.ptp-single-article .entry-thumbnail,
.single-post.ptp-single-article .featured-image,
.single-post.ptp-single-article figure.post-thumbnail {
  margin-bottom: 26px !important;
}

.single-post.ptp-single-article.ptp-article-featured-crop .wp-post-image,
.single-post.ptp-single-article.ptp-article-featured-crop .post-thumbnail img,
.single-post.ptp-single-article.ptp-article-featured-crop .featured-image img,
.single-post.ptp-single-article.ptp-article-featured-crop .entry-thumbnail img {
  display: block !important;
  width: 100% !important;
  height: clamp(210px, 28vw, 360px) !important;
  max-height: 360px !important;
  object-fit: cover !important;
  object-position: center center !important;
  border-radius: 10px !important;
  margin: 0 !important;
}

.single-post.ptp-single-article.ptp-article-featured-contain .wp-post-image,
.single-post.ptp-single-article.ptp-article-featured-contain .post-thumbnail img,
.single-post.ptp-single-article.ptp-article-featured-contain .featured-image img,
.single-post.ptp-single-article.ptp-article-featured-contain .entry-thumbnail img {
  display: block !important;
  width: auto !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: 360px !important;
  object-fit: contain !important;
  border-radius: 10px !important;
  margin: 0 !important;
}

.single-post.ptp-single-article .entry-content,
.single-post.ptp-single-article .wp-block-post-content,
.single-post.ptp-single-article .ptp-article-news-main {
  color: #18242f !important;
  font-size: 16px !important;
  line-height: 1.72 !important;
}

.single-post.ptp-single-article .entry-content > *,
.single-post.ptp-single-article .wp-block-post-content > *,
.single-post.ptp-single-article .ptp-article-news-main > * {
  max-width: 100% !important;
}

.single-post.ptp-single-article .entry-content p,
.single-post.ptp-single-article .wp-block-post-content p,
.single-post.ptp-single-article .ptp-article-news-main p {
  margin-top: 0 !important;
  margin-bottom: 1.25em !important;
}

/* v10.7: evaluation block sized for the paper layout */
.single-post.ptp-single-article .ptp-eval-block {
  margin: 22px 0 !important;
}

.single-post.ptp-single-article .ptp-eval-block__card {
  padding: 18px !important;
  border-radius: 14px !important;
  box-shadow: none !important;
  border: 1px solid rgba(16, 24, 39, .12) !important;
}

.single-post.ptp-single-article .ptp-eval-block__top {
  grid-template-columns: 94px minmax(0, 1fr) !important;
  gap: 18px !important;
}

.single-post.ptp-single-article .ptp-eval-block__photo {
  width: 94px !important;
  border-radius: 9px !important;
  box-shadow: none !important;
}

.single-post.ptp-single-article .ptp-eval-block__identity {
  min-height: 94px !important;
  padding-top: 2px !important;
}

.single-post.ptp-single-article .ptp-eval-block__title-row h3 {
  font-size: 24px !important;
}

.single-post.ptp-single-article .ptp-eval-block__evaluation {
  margin-top: 16px !important;
  font-size: 14.5px !important;
  line-height: 1.65 !important;
}

@media (max-width: 720px) {
  .single-post.ptp-single-article article,
  .single-post.ptp-single-article .hentry,
  .single-post.ptp-single-article .type-post {
    width: min(100% - 22px, 860px) !important;
    padding: 22px !important;
    margin-top: 18px !important;
  }

  .single-post.ptp-single-article .ptp-eval-block__top {
    grid-template-columns: 1fr !important;
  }

  .single-post.ptp-single-article .ptp-eval-block__photo {
    width: 136px !important;
  }
}


/* v10.9: true manual featured-image crop output */
.single-post.ptp-single-article .ptp-featured-manual-crop {
  position: relative;
  width: 100%;
  max-height: 360px;
  aspect-ratio: var(--ptp-crop-aspect, 1.777);
  overflow: hidden;
  border-radius: 10px;
  background: #f4f5f6;
}

.single-post.ptp-single-article .ptp-featured-manual-crop img {
  position: absolute;
  left: var(--ptp-img-left, 0%);
  top: var(--ptp-img-top, 0%);
  width: var(--ptp-img-width, 100%);
  height: var(--ptp-img-height, 100%);
  max-width: none !important;
  max-height: none !important;
  object-fit: fill !important;
  display: block;
}


/* v11.1: reliable cropped featured image output */
.single-post.ptp-single-article .ptp-featured-crop-output {
  width: 100%;
  max-height: 360px;
  overflow: hidden;
  border-radius: 10px;
  background: #f4f5f6;
}

.single-post.ptp-single-article .ptp-featured-crop-output--manual {
  aspect-ratio: var(--ptp-crop-aspect, 1.777);
}

.single-post.ptp-single-article .ptp-featured-crop-output--manual img {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: var(--ptp-crop-x, 50%) var(--ptp-crop-y, 50%) !important;
  display: block !important;
}

.single-post.ptp-single-article .ptp-featured-crop-output--contain {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

.single-post.ptp-single-article .ptp-featured-crop-output--contain img {
  width: auto !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: 360px !important;
  object-fit: contain !important;
  display: block !important;
}


/* v11.2: exact crop-box mapping for published article featured image */
.single-post.ptp-single-article .ptp-featured-crop-output--manual {
  position: relative !important;
  width: 100% !important;
  max-height: 360px !important;
  aspect-ratio: var(--ptp-crop-aspect, 1.777) !important;
  overflow: hidden !important;
  border-radius: 10px !important;
  background: #f4f5f6 !important;
}

.single-post.ptp-single-article .ptp-featured-crop-output--manual img {
  position: absolute !important;
  left: var(--ptp-img-left, 0%) !important;
  top: var(--ptp-img-top, 0%) !important;
  width: var(--ptp-img-width, 100%) !important;
  height: var(--ptp-img-height, 100%) !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: fill !important;
  object-position: initial !important;
  display: block !important;
  margin: 0 !important;
}


/* v11.3: article image ratio, overlay title, and matching body/eval text sizes */
.single-post.ptp-single-article .entry-title,
.single-post.ptp-single-article h1.entry-title,
.single-post.ptp-single-article .wp-block-post-title,
.single-post.ptp-single-article h1.wp-block-post-title,
.single-post.ptp-single-article .entry-header .entry-title {
  display: none !important;
}

.single-post.ptp-single-article .entry-header {
  display: none !important;
}

.single-post.ptp-single-article .ptp-featured-crop-output {
  position: relative !important;
  width: 100% !important;
  max-height: none !important;
  overflow: hidden !important;
  border-radius: 10px !important;
  background: #f4f5f6 !important;
  margin: 0 0 26px !important;
}

.single-post.ptp-single-article .ptp-featured-crop-output--manual {
  aspect-ratio: var(--ptp-crop-aspect, 1.777) !important;
  max-height: none !important;
}

.single-post.ptp-single-article .ptp-featured-crop-output--manual img {
  position: absolute !important;
  left: var(--ptp-img-left, 0%) !important;
  top: var(--ptp-img-top, 0%) !important;
  width: var(--ptp-img-width, 100%) !important;
  height: var(--ptp-img-height, 100%) !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: fill !important;
  object-position: initial !important;
  display: block !important;
  margin: 0 !important;
}

.single-post.ptp-single-article .ptp-featured-crop-output--contain {
  display: flex !important;
  justify-content: flex-start !important;
  align-items: center !important;
  min-height: 260px !important;
}

.single-post.ptp-single-article .ptp-featured-crop-output--contain img {
  width: auto !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: none !important;
  object-fit: contain !important;
  display: block !important;
  margin: 0 !important;
}

.single-post.ptp-single-article .ptp-featured-title-overlay {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: 0 !important;
  z-index: 3 !important;
  padding: 18px 22px 54px !important;
  background: linear-gradient(180deg, rgba(0,0,0,.62) 0%, rgba(0,0,0,.36) 48%, rgba(0,0,0,0) 100%) !important;
  pointer-events: none !important;
}

.single-post.ptp-single-article .ptp-featured-title-overlay h1 {
  max-width: 760px !important;
  margin: 0 !important;
  color: #fff !important;
  font-size: clamp(22px, 3vw, 34px) !important;
  line-height: 1.08 !important;
  letter-spacing: -.035em !important;
  text-shadow: 0 2px 14px rgba(0,0,0,.34) !important;
}

.single-post.ptp-single-article .entry-content,
.single-post.ptp-single-article .wp-block-post-content,
.single-post.ptp-single-article .ptp-article-news-main,
.single-post.ptp-single-article .entry-content p,
.single-post.ptp-single-article .wp-block-post-content p,
.single-post.ptp-single-article .ptp-article-news-main p,
.single-post.ptp-single-article .ptp-eval-block__evaluation {
  font-size: 14.5px !important;
  line-height: 1.65 !important;
}

.single-post.ptp-single-article .entry-content,
.single-post.ptp-single-article .wp-block-post-content,
.single-post.ptp-single-article .ptp-article-news-main {
  padding-top: 0 !important;
}

@media (max-width: 720px) {
  .single-post.ptp-single-article .ptp-featured-title-overlay {
    padding: 14px 16px 44px !important;
  }

  .single-post.ptp-single-article .ptp-featured-title-overlay h1 {
    font-size: clamp(20px, 7vw, 28px) !important;
  }
}


/* v11.4: remove duplicate top title, move article up, and add non-overlapping Recent Coverage rail */
body.single-post.ptp-single-article {
  background: #f4f5f6 !important;
}

/* Hide every theme-level title/header outside the featured-image overlay. */
.single-post.ptp-single-article .entry-header,
.single-post.ptp-single-article header.entry-header,
.single-post.ptp-single-article .page-header,
.single-post.ptp-single-article .post-header,
.single-post.ptp-single-article .single-post-header,
.single-post.ptp-single-article .article-header,
.single-post.ptp-single-article .wp-block-post-title:not(.ptp-featured-title-overlay h1),
.single-post.ptp-single-article h1.entry-title,
.single-post.ptp-single-article .entry-title,
.single-post.ptp-single-article .post-title,
.single-post.ptp-single-article .single-title,
.single-post.ptp-single-article .page-title {
  display: none !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
}

/* Keep the article as a centered paper page, but closer to the site header. */
.single-post.ptp-single-article article,
.single-post.ptp-single-article .hentry,
.single-post.ptp-single-article .type-post {
  width: min(100% - 36px, 860px) !important;
  max-width: 860px !important;
  margin: 14px auto 64px !important;
  background: #fff !important;
  border: 1px solid rgba(16, 24, 39, .14) !important;
  border-radius: 14px !important;
  box-shadow: 0 18px 46px rgba(16, 24, 39, .08) !important;
  padding: 30px !important;
  box-sizing: border-box !important;
}

/* Make sure the featured-image/title overlay starts near the top of the paper. */
.single-post.ptp-single-article .post-thumbnail,
.single-post.ptp-single-article .entry-thumbnail,
.single-post.ptp-single-article .featured-image,
.single-post.ptp-single-article figure.post-thumbnail {
  margin-top: 0 !important;
  margin-bottom: 22px !important;
  padding: 0 !important;
  background: transparent !important;
}

.single-post.ptp-single-article .ptp-featured-title-overlay h1 {
  font-size: clamp(21px, 2.6vw, 31px) !important;
  line-height: 1.08 !important;
}

/* Recent Coverage rail: hidden by default so it cannot crowd smaller screens. */
.single-post.ptp-single-article .ptp-article-sidebar {
  display: none !important;
}

/* Only show the rail on very wide screens where it will not encroach on the 860px article. */
@media (min-width: 1560px) {
  .single-post.ptp-single-article .ptp-article-sidebar {
    display: block !important;
    position: fixed !important;
    top: 112px !important;
    right: calc((100vw - 1500px) / 2) !important;
    width: 280px !important;
    max-height: calc(100vh - 140px) !important;
    overflow: auto !important;
    z-index: 35 !important;
  }

  .single-post.ptp-single-article .ptp-article-sidebar__inner {
    background: #fff !important;
    border: 1px solid rgba(16, 24, 39, .12) !important;
    border-radius: 14px !important;
    box-shadow: 0 14px 34px rgba(16, 24, 39, .08) !important;
    padding: 18px !important;
  }

  .single-post.ptp-single-article .ptp-article-sidebar .ptp-kicker {
    margin: 0 0 4px !important;
    color: #DBB461 !important;
    font-size: 10px !important;
    font-weight: 900 !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
  }

  .single-post.ptp-single-article .ptp-article-sidebar__inner h3 {
    margin: 0 0 16px !important;
    color: #101827 !important;
    font-size: 18px !important;
    line-height: 1.1 !important;
    letter-spacing: -.025em !important;
  }

  .single-post.ptp-single-article .ptp-article-sidebar__list {
    display: grid !important;
    gap: 14px !important;
  }

  .single-post.ptp-single-article .ptp-article-sidebar__item {
    display: grid !important;
    grid-template-columns: 56px minmax(0, 1fr) !important;
    gap: 10px !important;
    align-items: center !important;
    padding: 0 0 14px !important;
    border-bottom: 1px solid rgba(16, 24, 39, .10) !important;
    color: #101827 !important;
    text-decoration: none !important;
  }

  .single-post.ptp-single-article .ptp-article-sidebar__item:last-child {
    border-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  .single-post.ptp-single-article .ptp-article-sidebar__thumb {
    width: 56px !important;
    aspect-ratio: 1 / .78 !important;
    border-radius: 9px !important;
    overflow: hidden !important;
    background: linear-gradient(135deg, #064b4e, #AEC3B2) !important;
  }

  .single-post.ptp-single-article .ptp-article-sidebar__thumb img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
  }

  .single-post.ptp-single-article .ptp-article-sidebar__meta {
    display: block !important;
    margin-bottom: 3px !important;
    color: #DBB461 !important;
    font-size: 10px !important;
    font-weight: 900 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
  }

  .single-post.ptp-single-article .ptp-article-sidebar__copy strong {
    display: block !important;
    color: #101827 !important;
    font-size: 13px !important;
    line-height: 1.28 !important;
    font-weight: 800 !important;
  }
}


/* v11.5: hide duplicate theme title reliably and move article title above image inside paper */
.single-post.ptp-single-article .ptp-hidden-duplicate-post-title,
.single-post.ptp-single-article .ptp-hidden-duplicate-post-header {
  display: none !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

.single-post.ptp-single-article .ptp-featured-title-overlay {
  display: none !important;
}

.single-post.ptp-single-article .ptp-featured-title-card {
  margin: 0 0 16px !important;
  padding: 0 !important;
}

.single-post.ptp-single-article .ptp-featured-title-card h1 {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #073B40 !important;
  font-size: clamp(24px, 3vw, 36px) !important;
  line-height: 1.08 !important;
  letter-spacing: -.04em !important;
  font-weight: 900 !important;
  text-align: left !important;
}

/* Pull the paper closer to the header and avoid extra theme whitespace. */
.single-post.ptp-single-article article,
.single-post.ptp-single-article .hentry,
.single-post.ptp-single-article .type-post {
  margin-top: 10px !important;
}

/* v11.5: show Recent Coverage at normal desktop widths without touching the main paper */
.single-post.ptp-single-article .ptp-article-sidebar {
  display: none !important;
}

@media (min-width: 1220px) {
  .single-post.ptp-single-article .ptp-article-sidebar {
    display: block !important;
    position: fixed !important;
    top: 132px !important;
    right: 24px !important;
    width: 250px !important;
    max-height: calc(100vh - 160px) !important;
    overflow: auto !important;
    z-index: 35 !important;
  }

  .single-post.ptp-single-article .ptp-article-sidebar__inner {
    background: #fff !important;
    border: 1px solid rgba(16, 24, 39, .12) !important;
    border-radius: 14px !important;
    box-shadow: 0 14px 34px rgba(16, 24, 39, .08) !important;
    padding: 16px !important;
  }

  .single-post.ptp-single-article .ptp-article-sidebar .ptp-kicker {
    margin: 0 0 4px !important;
    color: #DBB461 !important;
    font-size: 10px !important;
    font-weight: 900 !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
  }

  .single-post.ptp-single-article .ptp-article-sidebar__inner h3 {
    margin: 0 0 14px !important;
    color: #101827 !important;
    font-size: 18px !important;
    line-height: 1.1 !important;
    letter-spacing: -.025em !important;
  }

  .single-post.ptp-single-article .ptp-article-sidebar__list {
    display: grid !important;
    gap: 12px !important;
  }

  .single-post.ptp-single-article .ptp-article-sidebar__item {
    display: grid !important;
    grid-template-columns: 52px minmax(0, 1fr) !important;
    gap: 10px !important;
    align-items: center !important;
    padding: 0 0 12px !important;
    border-bottom: 1px solid rgba(16, 24, 39, .10) !important;
    color: #101827 !important;
    text-decoration: none !important;
  }

  .single-post.ptp-single-article .ptp-article-sidebar__item:last-child {
    border-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  .single-post.ptp-single-article .ptp-article-sidebar__thumb {
    width: 52px !important;
    aspect-ratio: 1 / .78 !important;
    border-radius: 9px !important;
    overflow: hidden !important;
  }

  .single-post.ptp-single-article .ptp-article-sidebar__thumb img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
  }

  .single-post.ptp-single-article .ptp-article-sidebar__meta {
    display: block !important;
    margin-bottom: 3px !important;
    color: #DBB461 !important;
    font-size: 10px !important;
    font-weight: 900 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
  }

  .single-post.ptp-single-article .ptp-article-sidebar__copy strong {
    display: block !important;
    color: #101827 !important;
    font-size: 12.5px !important;
    line-height: 1.28 !important;
    font-weight: 800 !important;
  }
}

/* If viewport is too narrow for both the 860px paper and sidebar, hide the rail. */
@media (min-width: 1220px) and (max-width: 1399px) {
  .single-post.ptp-single-article article,
  .single-post.ptp-single-article .hentry,
  .single-post.ptp-single-article .type-post {
    margin-left: 24px !important;
    margin-right: auto !important;
  }
}

@media (max-width: 1219px) {
  .single-post.ptp-single-article .ptp-article-sidebar {
    display: none !important;
  }
}


/* v11.6: wider article, higher placement, static right-side Recent Coverage column */
body.single-post.ptp-single-article {
  background: #f4f5f6 !important;
}

/* Move the whole post layout closer to the header and give room for article + sidebar. */
.single-post.ptp-single-article article,
.single-post.ptp-single-article .hentry,
.single-post.ptp-single-article .type-post {
  width: min(100% - 40px, 1240px) !important;
  max-width: 1240px !important;
  margin: 4px auto 64px !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  overflow: visible !important;
}

/* The content area becomes the two-column page grid. */
.single-post.ptp-single-article .entry-content,
.single-post.ptp-single-article .wp-block-post-content {
  width: 100% !important;
  max-width: 1240px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 900px) 290px !important;
  gap: 28px !important;
  align-items: start !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* Main article paper. */
.single-post.ptp-single-article .ptp-article-news-main {
  width: 100% !important;
  max-width: 900px !important;
  margin: 0 !important;
  background: #fff !important;
  border: 1px solid rgba(16, 24, 39, .14) !important;
  border-radius: 14px !important;
  box-shadow: 0 18px 46px rgba(16, 24, 39, .08) !important;
  padding: 30px !important;
  box-sizing: border-box !important;
  font-size: 14.5px !important;
  line-height: 1.65 !important;
}

/* Keep the title/image/content aligned within the wider paper. */
.single-post.ptp-single-article .ptp-featured-title-card,
.single-post.ptp-single-article .ptp-featured-crop-output,
.single-post.ptp-single-article .ptp-article-news-main > * {
  max-width: 100% !important;
}

.single-post.ptp-single-article .ptp-featured-title-card h1 {
  font-size: clamp(24px, 2.7vw, 36px) !important;
}

/* Recent Coverage is now a static column, not fixed/sticky. It will scroll naturally with the page and grow downward. */
.single-post.ptp-single-article .ptp-article-sidebar {
  display: block !important;
  position: static !important;
  width: 100% !important;
  max-width: 290px !important;
  max-height: none !important;
  overflow: visible !important;
  z-index: auto !important;
  margin: 0 !important;
}

.single-post.ptp-single-article .ptp-article-sidebar__inner {
  background: #fff !important;
  border: 1px solid rgba(16, 24, 39, .12) !important;
  border-radius: 14px !important;
  box-shadow: 0 14px 34px rgba(16, 24, 39, .08) !important;
  padding: 18px !important;
}

.single-post.ptp-single-article .ptp-article-sidebar .ptp-kicker {
  margin: 0 0 4px !important;
  color: #DBB461 !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
}

.single-post.ptp-single-article .ptp-article-sidebar__inner h3 {
  margin: 0 0 16px !important;
  color: #101827 !important;
  font-size: 18px !important;
  line-height: 1.1 !important;
  letter-spacing: -.025em !important;
}

.single-post.ptp-single-article .ptp-article-sidebar__list {
  display: grid !important;
  gap: 14px !important;
}

.single-post.ptp-single-article .ptp-article-sidebar__item {
  display: grid !important;
  grid-template-columns: 58px minmax(0, 1fr) !important;
  gap: 10px !important;
  align-items: center !important;
  padding: 0 0 14px !important;
  border-bottom: 1px solid rgba(16, 24, 39, .10) !important;
  color: #101827 !important;
  text-decoration: none !important;
}

.single-post.ptp-single-article .ptp-article-sidebar__item:last-child {
  border-bottom: 0 !important;
  padding-bottom: 0 !important;
}

.single-post.ptp-single-article .ptp-article-sidebar__thumb {
  display: block !important;
  width: 58px !important;
  aspect-ratio: 1 / .78 !important;
  border-radius: 9px !important;
  overflow: hidden !important;
  background: linear-gradient(135deg, #064b4e, #AEC3B2) !important;
}

.single-post.ptp-single-article .ptp-article-sidebar__thumb img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

.single-post.ptp-single-article .ptp-article-sidebar__meta {
  display: block !important;
  margin-bottom: 3px !important;
  color: #DBB461 !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}

.single-post.ptp-single-article .ptp-article-sidebar__copy strong {
  display: block !important;
  color: #101827 !important;
  font-size: 12.5px !important;
  line-height: 1.28 !important;
  font-weight: 800 !important;
}

/* Override older fixed/sidebar rules completely. */
@media (min-width: 1220px), (min-width: 1260px), (min-width: 1320px), (min-width: 1560px) {
  .single-post.ptp-single-article .ptp-article-sidebar {
    display: block !important;
    position: static !important;
    top: auto !important;
    right: auto !important;
    width: 100% !important;
    max-width: 290px !important;
    max-height: none !important;
    overflow: visible !important;
  }
}

/* Collapse cleanly when there is not enough room. */
@media (max-width: 1180px) {
  .single-post.ptp-single-article article,
  .single-post.ptp-single-article .hentry,
  .single-post.ptp-single-article .type-post {
    width: min(100% - 28px, 920px) !important;
    margin-top: 8px !important;
  }

  .single-post.ptp-single-article .entry-content,
  .single-post.ptp-single-article .wp-block-post-content {
    display: block !important;
    width: 100% !important;
    max-width: 920px !important;
  }

  .single-post.ptp-single-article .ptp-article-news-main {
    max-width: 920px !important;
    margin: 0 auto !important;
  }

  .single-post.ptp-single-article .ptp-article-sidebar {
    max-width: 920px !important;
    margin: 24px auto 0 !important;
  }
}


/* v11.7: reliable article + Recent Coverage two-column shell */
body.single-post.ptp-single-article {
  background: #f4f5f6 !important;
}

/* Let the explicit plugin shell control layout, not the theme entry-content. */
.single-post.ptp-single-article article,
.single-post.ptp-single-article .hentry,
.single-post.ptp-single-article .type-post {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
}

.single-post.ptp-single-article .entry-content,
.single-post.ptp-single-article .wp-block-post-content {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* This is the actual page layout. */
.single-post.ptp-single-article .ptp-single-article-shell {
  width: min(100% - 40px, 1240px) !important;
  max-width: 1240px !important;
  margin: 6px auto 64px !important;
  display: grid !important;
  grid-template-columns: minmax(0, 920px) 292px !important;
  gap: 28px !important;
  align-items: start !important;
  box-sizing: border-box !important;
}

/* Restore the paper outline around the actual article. */
.single-post.ptp-single-article .ptp-single-article-shell .ptp-article-news-main {
  width: 100% !important;
  max-width: 920px !important;
  margin: 0 !important;
  padding: 30px !important;
  background: #fff !important;
  border: 1px solid rgba(16, 24, 39, .16) !important;
  border-radius: 14px !important;
  box-shadow: 0 18px 46px rgba(16, 24, 39, .08) !important;
  box-sizing: border-box !important;
  font-size: 14.5px !important;
  line-height: 1.65 !important;
}

/* Right column: designated space beside the paper, not fixed, not floating, not at bottom on desktop. */
.single-post.ptp-single-article .ptp-single-article-shell .ptp-article-sidebar {
  display: block !important;
  position: static !important;
  width: 100% !important;
  max-width: 292px !important;
  margin: 0 !important;
  max-height: none !important;
  overflow: visible !important;
  z-index: auto !important;
}

.single-post.ptp-single-article .ptp-single-article-shell .ptp-article-sidebar__inner {
  width: 100% !important;
  background: #fff !important;
  border: 1px solid rgba(16, 24, 39, .12) !important;
  border-radius: 14px !important;
  box-shadow: 0 14px 34px rgba(16, 24, 39, .08) !important;
  padding: 18px !important;
  box-sizing: border-box !important;
}

/* Make sure old fixed/right-rail rules cannot override this new shell. */
@media (min-width: 1px) {
  .single-post.ptp-single-article .ptp-single-article-shell .ptp-article-sidebar {
    display: block !important;
    position: static !important;
    top: auto !important;
    right: auto !important;
    width: 100% !important;
    max-width: 292px !important;
    max-height: none !important;
    overflow: visible !important;
  }
}

.single-post.ptp-single-article .ptp-single-article-shell .ptp-article-sidebar .ptp-kicker {
  margin: 0 0 4px !important;
  color: #DBB461 !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
}

.single-post.ptp-single-article .ptp-single-article-shell .ptp-article-sidebar__inner h3 {
  margin: 0 0 16px !important;
  color: #101827 !important;
  font-size: 18px !important;
  line-height: 1.1 !important;
  letter-spacing: -.025em !important;
}

.single-post.ptp-single-article .ptp-single-article-shell .ptp-article-sidebar__list {
  display: grid !important;
  gap: 14px !important;
}

.single-post.ptp-single-article .ptp-single-article-shell .ptp-article-sidebar__item {
  display: grid !important;
  grid-template-columns: 58px minmax(0, 1fr) !important;
  gap: 10px !important;
  align-items: center !important;
  padding: 0 0 14px !important;
  border-bottom: 1px solid rgba(16, 24, 39, .10) !important;
  color: #101827 !important;
  text-decoration: none !important;
}

.single-post.ptp-single-article .ptp-single-article-shell .ptp-article-sidebar__item:last-child {
  border-bottom: 0 !important;
  padding-bottom: 0 !important;
}

.single-post.ptp-single-article .ptp-single-article-shell .ptp-article-sidebar__thumb {
  display: block !important;
  width: 58px !important;
  aspect-ratio: 1 / .78 !important;
  border-radius: 9px !important;
  overflow: hidden !important;
  background: linear-gradient(135deg, #064b4e, #AEC3B2) !important;
}

.single-post.ptp-single-article .ptp-single-article-shell .ptp-article-sidebar__thumb img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

.single-post.ptp-single-article .ptp-single-article-shell .ptp-article-sidebar__meta {
  display: block !important;
  margin-bottom: 3px !important;
  color: #DBB461 !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}

.single-post.ptp-single-article .ptp-single-article-shell .ptp-article-sidebar__copy strong {
  display: block !important;
  color: #101827 !important;
  font-size: 12.5px !important;
  line-height: 1.28 !important;
  font-weight: 800 !important;
}

/* Collapse only when the screen genuinely lacks room. */
@media (max-width: 1180px) {
  .single-post.ptp-single-article .ptp-single-article-shell {
    width: min(100% - 28px, 940px) !important;
    max-width: 940px !important;
    margin: 8px auto 64px !important;
    display: block !important;
  }

  .single-post.ptp-single-article .ptp-single-article-shell .ptp-article-news-main {
    max-width: 940px !important;
  }

  .single-post.ptp-single-article .ptp-single-article-shell .ptp-article-sidebar {
    max-width: 940px !important;
    margin-top: 24px !important;
  }
}


/* v11.8: use more horizontal space on single article pages */
.single-post.ptp-single-article .site,
.single-post.ptp-single-article .site-content,
.single-post.ptp-single-article .content-area,
.single-post.ptp-single-article .site-main,
.single-post.ptp-single-article main,
.single-post.ptp-single-article .container,
.single-post.ptp-single-article .wp-site-blocks,
.single-post.ptp-single-article .wp-block-group,
.single-post.ptp-single-article .wp-block-post-content {
  max-width: none !important;
}

/* Wider page frame. */
.single-post.ptp-single-article article,
.single-post.ptp-single-article .hentry,
.single-post.ptp-single-article .type-post {
  width: min(100% - 48px, 1420px) !important;
  max-width: 1420px !important;
  margin: 0 auto 64px !important;
  padding: 0 !important;
}

/* Featured image/title should use the same broad page width as the article layout. */
.single-post.ptp-single-article .post-thumbnail,
.single-post.ptp-single-article .entry-thumbnail,
.single-post.ptp-single-article .featured-image,
.single-post.ptp-single-article figure.post-thumbnail {
  width: min(100% - 48px, 1120px) !important;
  max-width: 1120px !important;
  margin: 0 auto 24px !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

.single-post.ptp-single-article .ptp-featured-crop-output {
  width: 100% !important;
  max-width: none !important;
}

.single-post.ptp-single-article .ptp-featured-title-card {
  width: 100% !important;
  max-width: none !important;
  margin: 0 0 14px !important;
}

/* Make the actual article + sidebar shell much wider. */
.single-post.ptp-single-article .ptp-single-article-shell {
  width: min(100% - 48px, 1320px) !important;
  max-width: 1320px !important;
  margin: 0 auto 64px !important;
  display: grid !important;
  grid-template-columns: minmax(0, 960px) 320px !important;
  gap: 32px !important;
  align-items: start !important;
}

/* Restore and widen the paper outline around the article text/blocks. */
.single-post.ptp-single-article .ptp-single-article-shell .ptp-article-news-main {
  width: 100% !important;
  max-width: 960px !important;
  margin: 0 !important;
  padding: 34px !important;
  background: #fff !important;
  border: 1px solid rgba(16, 24, 39, .16) !important;
  border-radius: 14px !important;
  box-shadow: 0 18px 46px rgba(16, 24, 39, .08) !important;
  box-sizing: border-box !important;
}

/* Give Recent Coverage a real right-column width. */
.single-post.ptp-single-article .ptp-single-article-shell .ptp-article-sidebar {
  display: block !important;
  position: static !important;
  width: 320px !important;
  max-width: 320px !important;
  margin: 0 !important;
  max-height: none !important;
  overflow: visible !important;
}

.single-post.ptp-single-article .ptp-single-article-shell .ptp-article-sidebar__inner {
  width: 100% !important;
  box-sizing: border-box !important;
}

/* Stop old sidebar rules from forcing a bottom layout. */
@media (min-width: 1181px) {
  .single-post.ptp-single-article .ptp-single-article-shell {
    display: grid !important;
    grid-template-columns: minmax(0, 960px) 320px !important;
  }

  .single-post.ptp-single-article .ptp-single-article-shell .ptp-article-sidebar {
    display: block !important;
    position: static !important;
    width: 320px !important;
    max-width: 320px !important;
  }
}

/* At medium widths, keep a slimmer right column as long as there is enough room. */
@media (min-width: 1020px) and (max-width: 1180px) {
  .single-post.ptp-single-article .ptp-single-article-shell {
    width: min(100% - 32px, 1080px) !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 260px !important;
    gap: 22px !important;
  }

  .single-post.ptp-single-article .ptp-single-article-shell .ptp-article-sidebar {
    width: 260px !important;
    max-width: 260px !important;
    margin: 0 !important;
  }

  .single-post.ptp-single-article .ptp-single-article-shell .ptp-article-news-main {
    max-width: none !important;
  }
}

/* Only stack on smaller screens. */
@media (max-width: 1019px) {
  .single-post.ptp-single-article .ptp-single-article-shell {
    width: min(100% - 28px, 940px) !important;
    max-width: 940px !important;
    display: block !important;
  }

  .single-post.ptp-single-article .ptp-single-article-shell .ptp-article-sidebar {
    width: 100% !important;
    max-width: 940px !important;
    margin: 24px auto 0 !important;
  }

  .single-post.ptp-single-article .post-thumbnail,
  .single-post.ptp-single-article .entry-thumbnail,
  .single-post.ptp-single-article .featured-image,
  .single-post.ptp-single-article figure.post-thumbnail {
    width: min(100% - 28px, 940px) !important;
    max-width: 940px !important;
  }
}


/* v11.9: full-width breakout article layout that is not trapped by the theme column */
body.single-post.ptp-single-article {
  background: #f4f5f6 !important;
}

/* Hide theme-generated title/featured image area; plugin renders them inside the paper. */
.single-post.ptp-single-article .entry-header,
.single-post.ptp-single-article header.entry-header,
.single-post.ptp-single-article .page-header,
.single-post.ptp-single-article .post-header,
.single-post.ptp-single-article .single-post-header,
.single-post.ptp-single-article .article-header,
.single-post.ptp-single-article .post-thumbnail,
.single-post.ptp-single-article .entry-thumbnail,
.single-post.ptp-single-article .featured-image,
.single-post.ptp-single-article figure.post-thumbnail {
  display: none !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

/* Remove theme max-width from outer post containers. */
.single-post.ptp-single-article article,
.single-post.ptp-single-article .hentry,
.single-post.ptp-single-article .type-post,
.single-post.ptp-single-article .entry-content,
.single-post.ptp-single-article .wp-block-post-content {
  max-width: none !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
}

/* Force the custom shell to break out to viewport width even if the theme parent is narrow. */
.single-post.ptp-single-article .ptp-single-article-shell {
  position: relative !important;
  left: 50% !important;
  right: 50% !important;
  width: min(1380px, calc(100vw - 64px)) !important;
  max-width: none !important;
  margin-left: calc(-1 * min(690px, calc((100vw - 64px) / 2))) !important;
  margin-right: 0 !important;
  margin-top: 8px !important;
  margin-bottom: 72px !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1000px) 320px !important;
  gap: 36px !important;
  align-items: start !important;
  box-sizing: border-box !important;
}

/* The actual paper outline contains title, featured image, and body. */
.single-post.ptp-single-article .ptp-single-article-shell .ptp-article-news-main {
  width: 100% !important;
  max-width: 1000px !important;
  margin: 0 !important;
  padding: 34px !important;
  background: #fff !important;
  border: 1px solid rgba(16, 24, 39, .16) !important;
  border-radius: 14px !important;
  box-shadow: 0 18px 46px rgba(16, 24, 39, .08) !important;
  box-sizing: border-box !important;
  font-size: 14.5px !important;
  line-height: 1.65 !important;
}

/* Title and featured image now live inside the paper, so use full paper width. */
.single-post.ptp-single-article .ptp-featured-title-card {
  margin: 0 0 16px !important;
  padding: 0 !important;
}

.single-post.ptp-single-article .ptp-featured-title-card h1 {
  display: block !important;
  margin: 0 !important;
  color: #073B40 !important;
  font-size: clamp(25px, 3vw, 38px) !important;
  line-height: 1.08 !important;
  letter-spacing: -.04em !important;
  font-weight: 900 !important;
  text-align: left !important;
}

.single-post.ptp-single-article .ptp-featured-crop-output {
  margin: 0 0 28px !important;
  width: 100% !important;
}

/* Body copy follows under the image. */
.single-post.ptp-single-article .ptp-article-body-copy {
  width: 100% !important;
  max-width: 100% !important;
}

.single-post.ptp-single-article .ptp-article-body-copy > * {
  max-width: 100% !important;
}

/* Right column: designated Recent Coverage space. */
.single-post.ptp-single-article .ptp-single-article-shell .ptp-article-sidebar {
  display: block !important;
  position: static !important;
  width: 320px !important;
  max-width: 320px !important;
  margin: 0 !important;
  max-height: none !important;
  overflow: visible !important;
  z-index: auto !important;
}

.single-post.ptp-single-article .ptp-single-article-shell .ptp-article-sidebar__inner {
  width: 100% !important;
  background: #fff !important;
  border: 1px solid rgba(16, 24, 39, .12) !important;
  border-radius: 14px !important;
  box-shadow: 0 14px 34px rgba(16, 24, 39, .08) !important;
  padding: 18px !important;
  box-sizing: border-box !important;
}

/* Kill older fixed/sidebar rules. */
@media (min-width: 1px) {
  .single-post.ptp-single-article .ptp-single-article-shell .ptp-article-sidebar {
    display: block !important;
    position: static !important;
    top: auto !important;
    right: auto !important;
    width: 320px !important;
    max-width: 320px !important;
    max-height: none !important;
    overflow: visible !important;
  }
}

.single-post.ptp-single-article .ptp-single-article-shell .ptp-article-sidebar .ptp-kicker {
  margin: 0 0 4px !important;
  color: #DBB461 !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
}

.single-post.ptp-single-article .ptp-single-article-shell .ptp-article-sidebar__inner h3 {
  margin: 0 0 16px !important;
  color: #101827 !important;
  font-size: 18px !important;
  line-height: 1.1 !important;
  letter-spacing: -.025em !important;
}

/* Stack only when the viewport truly lacks room. */
@media (max-width: 1180px) {
  .single-post.ptp-single-article .ptp-single-article-shell {
    left: auto !important;
    right: auto !important;
    width: min(100% - 28px, 960px) !important;
    margin: 8px auto 64px !important;
    display: block !important;
  }

  .single-post.ptp-single-article .ptp-single-article-shell .ptp-article-news-main {
    max-width: 960px !important;
    padding: 26px !important;
  }

  .single-post.ptp-single-article .ptp-single-article-shell .ptp-article-sidebar {
    width: 100% !important;
    max-width: 960px !important;
    margin: 24px auto 0 !important;
  }
}


/* v11.10: improve vertical spacing in published player evaluation blocks */
.single-post.ptp-single-article .ptp-eval-block__identity {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  gap: 0 !important;
  padding-top: 0 !important;
}

.single-post.ptp-single-article .ptp-eval-block__title-row {
  margin-bottom: 0 !important;
}

.single-post.ptp-single-article .ptp-eval-block__meta {
  margin-top: 13px !important;
  margin-bottom: 0 !important;
}

.single-post.ptp-single-article .ptp-eval-block__location {
  margin-top: 12px !important;
  margin-bottom: 0 !important;
}

.single-post.ptp-single-article .ptp-eval-block__rule {
  margin-top: 13px !important;
}


/* v11.11: stronger spacing between player name, meta row, and city/state in published eval blocks */
.single-post.ptp-single-article .ptp-eval-block .ptp-eval-block__identity {
  display: grid !important;
  grid-template-rows: auto auto auto auto !important;
  align-content: center !important;
  row-gap: 14px !important;
  padding-top: 0 !important;
  min-height: 110px !important;
}

.single-post.ptp-single-article .ptp-eval-block .ptp-eval-block__title-row {
  margin: 0 !important;
  padding: 0 !important;
}

.single-post.ptp-single-article .ptp-eval-block .ptp-eval-block__title-row h3 {
  margin: 0 !important;
  line-height: 1.05 !important;
}

.single-post.ptp-single-article .ptp-eval-block .ptp-eval-block__meta,
.single-post.ptp-single-article .ptp-eval-block p.ptp-eval-block__meta {
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.15 !important;
}

.single-post.ptp-single-article .ptp-eval-block .ptp-eval-block__location,
.single-post.ptp-single-article .ptp-eval-block p.ptp-eval-block__location {
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.2 !important;
}

.single-post.ptp-single-article .ptp-eval-block .ptp-eval-block__rule {
  margin-top: 6px !important;
}


/* v11.12: keep eval block info left-aligned beside photo, with rank badge at far right */
.single-post.ptp-single-article .ptp-eval-block .ptp-eval-block__top {
  display: grid !important;
  grid-template-columns: 94px minmax(0, 1fr) !important;
  column-gap: 18px !important;
  align-items: start !important;
}

.single-post.ptp-single-article .ptp-eval-block .ptp-eval-block__identity {
  width: 100% !important;
  min-width: 0 !important;
  display: grid !important;
  grid-template-rows: auto auto auto auto !important;
  align-content: start !important;
  justify-items: start !important;
  text-align: left !important;
  row-gap: 14px !important;
  padding-top: 0 !important;
  min-height: 110px !important;
}

.single-post.ptp-single-article .ptp-eval-block .ptp-eval-block__title-row {
  width: 100% !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 16px !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
}

.single-post.ptp-single-article .ptp-eval-block .ptp-eval-block__title-row h3 {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  margin: 0 !important;
  line-height: 1.05 !important;
  text-align: left !important;
}

.single-post.ptp-single-article .ptp-eval-block .ptp-eval-block__rank {
  flex: 0 0 auto !important;
  margin-left: auto !important;
  align-self: flex-start !important;
}

.single-post.ptp-single-article .ptp-eval-block .ptp-eval-block__meta,
.single-post.ptp-single-article .ptp-eval-block p.ptp-eval-block__meta,
.single-post.ptp-single-article .ptp-eval-block .ptp-eval-block__location,
.single-post.ptp-single-article .ptp-eval-block p.ptp-eval-block__location {
  width: auto !important;
  max-width: 100% !important;
  justify-self: start !important;
  text-align: left !important;
}

.single-post.ptp-single-article .ptp-eval-block .ptp-eval-block__rule {
  width: 100% !important;
  justify-self: stretch !important;
}


/* v11.13: structural eval block layout — photo left, info left, rank far right */
.single-post.ptp-single-article .ptp-eval-block .ptp-eval-block__top,
.ptp-eval-block .ptp-eval-block__top {
  display: grid !important;
  grid-template-columns: 94px minmax(0, 1fr) auto !important;
  column-gap: 18px !important;
  align-items: start !important;
  justify-content: stretch !important;
  width: 100% !important;
}

.single-post.ptp-single-article .ptp-eval-block .ptp-eval-block__photo,
.ptp-eval-block .ptp-eval-block__photo {
  grid-column: 1 !important;
  grid-row: 1 !important;
  width: 94px !important;
  justify-self: start !important;
}

.single-post.ptp-single-article .ptp-eval-block .ptp-eval-block__identity,
.ptp-eval-block .ptp-eval-block__identity {
  grid-column: 2 !important;
  grid-row: 1 !important;
  min-width: 0 !important;
  width: 100% !important;
  display: grid !important;
  grid-template-rows: auto auto auto auto !important;
  row-gap: 14px !important;
  align-content: start !important;
  justify-items: start !important;
  text-align: left !important;
  padding-top: 0 !important;
  min-height: 110px !important;
  margin: 0 !important;
}

.single-post.ptp-single-article .ptp-eval-block .ptp-eval-block__name,
.ptp-eval-block .ptp-eval-block__name {
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.05 !important;
  text-align: left !important;
  justify-self: start !important;
}

.single-post.ptp-single-article .ptp-eval-block .ptp-eval-block__name a,
.ptp-eval-block .ptp-eval-block__name a {
  color: inherit !important;
  text-decoration: none !important;
}

.single-post.ptp-single-article .ptp-eval-block .ptp-eval-block__rank--rail,
.ptp-eval-block .ptp-eval-block__rank--rail {
  grid-column: 3 !important;
  grid-row: 1 !important;
  justify-self: end !important;
  align-self: start !important;
  margin: 0 0 0 16px !important;
  white-space: nowrap !important;
}

.single-post.ptp-single-article .ptp-eval-block .ptp-eval-block__title-row {
  display: contents !important;
}

.single-post.ptp-single-article .ptp-eval-block .ptp-eval-block__meta,
.single-post.ptp-single-article .ptp-eval-block .ptp-eval-block__location,
.ptp-eval-block .ptp-eval-block__meta,
.ptp-eval-block .ptp-eval-block__location {
  justify-self: start !important;
  text-align: left !important;
  margin: 0 !important;
}


/* v11.14: force eval block left-aligned info + right rail rank */
.single-post.ptp-single-article .ptp-eval-block .ptp-eval-block__top {
  display: grid !important;
  grid-template-columns: 94px minmax(0, 1fr) auto !important;
  column-gap: 18px !important;
  align-items: start !important;
  width: 100% !important;
}

.single-post.ptp-single-article .ptp-eval-block .ptp-eval-block__identity {
  grid-column: 2 !important;
  justify-self: stretch !important;
  text-align: left !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
}

.single-post.ptp-single-article .ptp-eval-block .ptp-eval-block__name,
.single-post.ptp-single-article .ptp-eval-block .ptp-eval-block__meta,
.single-post.ptp-single-article .ptp-eval-block .ptp-eval-block__location {
  text-align: left !important;
  align-self: flex-start !important;
  justify-self: start !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.single-post.ptp-single-article .ptp-eval-block .ptp-eval-block__rank--rail {
  grid-column: 3 !important;
  justify-self: end !important;
  align-self: start !important;
  margin-left: 16px !important;
}


/* v11.18: front-end rankings View Profile button matches each player's tier color */
.ptp-rankings-page .ptp-ranking-row {
  --ptp-profile-button-tier-color: var(--ptp-rank-section-color, #DBB461);
}

.ptp-rankings-page .ptp-ranking-row .ptp-ranking-row__actions a,
.ptp-rankings-page .ptp-ranking-row .ptp-ranking-row__actions .ptp-button,
.ptp-rankings-page .ptp-ranking-row a.ptp-ranking-row__profile,
.ptp-rankings-page .ptp-ranking-row a[href*="player-profile"] {
  background: var(--ptp-profile-button-tier-color) !important;
  border-color: var(--ptp-profile-button-tier-color) !important;
  color: #073B40 !important;
  box-shadow: 0 10px 22px rgba(16, 24, 39, .10) !important;
}

.ptp-rankings-page .ptp-ranking-row .ptp-ranking-row__actions a:hover,
.ptp-rankings-page .ptp-ranking-row .ptp-ranking-row__actions .ptp-button:hover,
.ptp-rankings-page .ptp-ranking-row a.ptp-ranking-row__profile:hover,
.ptp-rankings-page .ptp-ranking-row a[href*="player-profile"]:hover {
  filter: brightness(.96) saturate(1.05);
  transform: translateY(-1px);
}

.ptp-rankings-page .ptp-ranking-row.is-locked .ptp-ranking-row__actions a,
.ptp-rankings-page .ptp-ranking-row.is-locked .ptp-ranking-row__actions .ptp-button,
.ptp-rankings-page .ptp-ranking-row.is-locked a[href*="player-profile"] {
  background: rgba(16, 24, 39, .10) !important;
  border-color: rgba(16, 24, 39, .14) !important;
  color: rgba(16, 24, 39, .54) !important;
  box-shadow: none !important;
}


/* v11.19: actual front-end rankings tile View Profile button uses tier color */
.ptp-rankings-page .ptp-ranking-tile {
  --ptp-profile-button-tier-color: var(--ptp-rank-section-color, #DBB461);
}

.ptp-rankings-page .ptp-ranking-tile > a.ptp-platform-button.ptp-ranking-tile__profile-button,
.ptp-rankings-page .ptp-ranking-tile > a.ptp-platform-button.ptp-platform-button--light.ptp-ranking-tile__profile-button {
  background: var(--ptp-profile-button-tier-color) !important;
  border-color: var(--ptp-profile-button-tier-color) !important;
  color: #073B40 !important;
  box-shadow: 0 10px 22px rgba(16, 24, 39, .10) !important;
}

.ptp-rankings-page .ptp-ranking-tile > a.ptp-platform-button.ptp-ranking-tile__profile-button:hover,
.ptp-rankings-page .ptp-ranking-tile > a.ptp-platform-button.ptp-platform-button--light.ptp-ranking-tile__profile-button:hover {
  filter: brightness(.96) saturate(1.05);
  transform: translateY(-1px);
}

/* Keep the paywall/request-access tile muted instead of using a tier color. */
.ptp-rankings-page .ptp-ranking-tile--locked > a.ptp-platform-button,
.ptp-rankings-page .ptp-ranking-tile--locked > a.ptp-platform-button.ptp-platform-button--light {
  background: rgba(16, 24, 39, .10) !important;
  border-color: rgba(16, 24, 39, .14) !important;
  color: rgba(16, 24, 39, .58) !important;
  box-shadow: none !important;
}


/* v11.20: View Profile text automatically switches for dark tier colors */
.ptp-rankings-page .ptp-ranking-tile {
  --ptp-profile-button-tier-color: var(--ptp-rank-section-color, #DBB461);
  --ptp-profile-button-text-color: var(--ptp-rank-button-text-color, #073B40);
}

.ptp-rankings-page .ptp-ranking-tile > a.ptp-platform-button.ptp-ranking-tile__profile-button,
.ptp-rankings-page .ptp-ranking-tile > a.ptp-platform-button.ptp-platform-button--light.ptp-ranking-tile__profile-button {
  background: var(--ptp-profile-button-tier-color) !important;
  border-color: var(--ptp-profile-button-tier-color) !important;
  color: var(--ptp-profile-button-text-color) !important;
}

/* When the calculated text color is white, keep hover readable too. */
.ptp-rankings-page .ptp-ranking-tile > a.ptp-platform-button.ptp-ranking-tile__profile-button:hover,
.ptp-rankings-page .ptp-ranking-tile > a.ptp-platform-button.ptp-platform-button--light.ptp-ranking-tile__profile-button:hover {
  color: var(--ptp-profile-button-text-color) !important;
}


/* v11.21: AAU/Club Team field on profile and rankings tiles */
.ptp-profile-v44__info-grid {
  grid-template-columns: repeat(3, minmax(170px, 1fr)) !important;
}

.ptp-profile-v44__info-item--aau span::before {
  content: "◉";
}

.ptp-ranking-tile__main dl,
.ptp-ranking-tile__details {
  grid-template-columns: minmax(95px, .95fr) minmax(105px, 1fr) minmax(110px, 1.05fr) minmax(52px, .45fr) minmax(105px, .85fr) !important;
  gap: 10px !important;
  align-items: start !important;
}

.ptp-ranking-tile__main dl div,
.ptp-ranking-tile__details div {
  min-width: 0 !important;
}

.ptp-ranking-tile__main dl div + div,
.ptp-ranking-tile__details div + div {
  padding-left: 9px !important;
}

.ptp-ranking-tile__main dd,
.ptp-ranking-tile__details dd {
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  overflow-wrap: normal !important;
}

@media (max-width: 980px) {
  .ptp-profile-v44__info-grid {
    grid-template-columns: repeat(2, minmax(180px, 1fr)) !important;
  }
}

@media (max-width: 760px) {
  .ptp-profile-v44__info-grid {
    grid-template-columns: 1fr !important;
  }

  .ptp-ranking-tile__main dl,
  .ptp-ranking-tile__details {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
