/* ═══════════════════════════════════════════════════════════════════════════════════════════════════════════════
   TRIBE PAGE v3 — /tribe/{slug}/ (PT-Tribe-Page-Brief.md, mockup Plan/pt-tribe-page-v3.html, 4 Oct 2026).
   Loaded after tribe-discussion.css / tribe-page.css, scoped under .pt3 so it wins without !important where it can.
   Site tokens only (none declared here). Square corners; only count badges, avatars and the online dot are round.
   Red = count badges and destructive menu items only; primary buttons are ink. Mono for counts, money, dates, times, car tags.
   §5a: every <button> declares background AND color on :hover, :focus and :active (GeneratePress paints button:hover #333).
   ═══════════════════════════════════════════════════════════════════════════════════════════════════════════════ */

/* ── shared ── */
.pt3 .pt3-i { stroke: currentColor; fill: none; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; flex: 0 0 auto; }
.pt3 .pt-mono, .pt3 .pt3-mono { font-family: var(--pt-mono); font-variant-numeric: tabular-nums; }
.pt3 .pt3-btn, .pt3 .pt3-btn:hover, .pt3 .pt3-btn:focus, .pt3 .pt3-btn:active { display: inline-flex; align-items: center; justify-content: center; gap: 7px; font-family: inherit; font-size: 13.5px; font-weight: 600; line-height: 1.2; padding: 10px 14px; border: 1px solid var(--pt-border-strong); border-radius: 0; background: var(--pt-surface); color: var(--pt-ink); white-space: nowrap; text-decoration: none; cursor: pointer; box-shadow: none; text-transform: none; letter-spacing: 0; }
.pt3 .pt3-btn:hover, .pt3 .pt3-btn:focus-visible { background: var(--pt-fill-control); color: var(--pt-ink); }
.pt3 .pt3-btn--pri, .pt3 .pt3-btn--pri:hover, .pt3 .pt3-btn--pri:focus, .pt3 .pt3-btn--pri:active { background: var(--pt-fill-primary); border-color: var(--pt-fill-primary); color: var(--pt-on-primary); }
.pt3 .pt3-btn--pri:hover, .pt3 .pt3-btn--pri:focus-visible { background: #1f1f1f; color: var(--pt-on-primary); }
.pt3 .pt3-btn--sm, .pt3 .pt3-btn--sm:hover, .pt3 .pt3-btn--sm:focus, .pt3 .pt3-btn--sm:active { font-size: 12.5px; padding: 6px 10px; }
.pt3 .pt3-tag { display: inline-flex; align-items: center; gap: 5px; font-size: 11px; font-weight: 600; letter-spacing: .04em; padding: 3px 7px; border: 1px solid var(--pt-border-strong); color: var(--pt-ink-2); background: var(--pt-surface); white-space: nowrap; }
.pt3 .pt3-tag--car { font-family: var(--pt-mono); font-weight: 500; letter-spacing: 0; }
.pt3 .pt3-card { background: var(--pt-surface); border: 1px solid var(--pt-border-strong); margin-bottom: 16px; border-radius: 0; }
.pt3 .pt3-card__h { display: flex; align-items: center; gap: 10px; padding: 12px 16px; border-bottom: 1px solid var(--pt-border); }
.pt3 .pt3-card__h b { font-size: 14.5px; }
.pt3 .pt3-card__h span { margin-left: auto; font-size: 12.5px; color: var(--pt-ink-2); }
.pt3 .pt3-card__b { padding: 14px 16px; }
.pt3 .pt3-empty { background: var(--pt-surface); border: 1px dashed var(--pt-border-strong); padding: 22px; text-align: center; font-size: 14px; color: var(--pt-ink-2); line-height: 1.5; margin-bottom: 16px; }
.pt3 .pt3-empty b { display: block; color: var(--pt-ink); margin-bottom: 4px; }
.pt3 .pt3-empty .pt3-btn { margin-top: 12px; }
.pt3 .pt3-note { font-size: 12.5px; color: var(--pt-ink-2); margin-top: 10px; line-height: 1.5; }
.pt3 [hidden] { display: none !important; }
.pt3 :focus-visible { outline: 2px solid var(--pt-accent); outline-offset: 2px; }

/* ── cover + header ── */
.pt3-cover { height: 200px; background: var(--pt-graphite) center / cover no-repeat; position: relative; }
.pt3-cover__edit { position: absolute; right: 36px; top: 16px; display: inline-flex; gap: 6px; align-items: center; background: rgba(255,255,255,.92); color: var(--pt-ink); font-size: 12.5px; font-weight: 600; padding: 6px 10px; text-decoration: none; }
.pt3-cover__edit:hover { background: #fff; color: var(--pt-ink); }
.pt3-cover__edit .pt3-i { stroke: currentColor; fill: none; stroke-width: 1.6; }
.pt-gh-wrap.pt3 { max-width: none; padding: 0; background: var(--pt-surface-dim); }
.pt3 .pt3-head { background: var(--pt-surface); border-bottom: 0; padding: 0; margin: 0; }
.pt3 .pt3-th { position: relative; padding: 0 36px 18px; border-bottom: 1px solid var(--pt-border); max-width: 1280px; margin: 0 auto; box-sizing: border-box; }
.pt3 .pt3-crest { position: absolute; left: 36px; top: -56px; width: 104px; height: 104px; background: var(--pt-surface); border: 1px solid var(--pt-border-strong); display: flex; align-items: center; justify-content: center; font: 700 26px var(--pt-mono); overflow: hidden; color: var(--pt-ink); }
.pt3 .pt3-crest img { width: 100%; height: 100%; object-fit: cover; }
.pt3 .pt3-top { display: flex; gap: 20px; align-items: flex-end; padding-left: 128px; padding-top: 14px; min-height: 62px; }
.pt3 .pt3-ttl { min-width: 0; }
.pt3 .pt-gh-title { font-size: 28px; font-weight: 600; line-height: 1.15; margin: 0; text-transform: none; letter-spacing: 0; color: var(--pt-ink); }
.pt3 .pt3-tags { display: flex; gap: 6px; margin-top: 8px; flex-wrap: wrap; }
.pt3 .pt3-acts { margin-left: auto; display: flex; gap: 8px; position: relative; align-items: center; flex-wrap: wrap; justify-content: flex-end; }
.pt3 #pt-tribe-membership-wrap { position: relative; }
.pt3 .pt-gh-joined-menu { min-width: 250px; }
.pt3 .pt-gh-joined-menu .pt3-bad, .pt3 .pt-gh-joined-menu .pt3-bad:hover { color: var(--pt-brand) !important; }
.pt3 .pt-gh-joined-item { display: flex; align-items: center; justify-content: space-between; width: 100%; text-decoration: none; }
.pt3 .pt3-stats { display: grid; grid-template-columns: repeat(5, 1fr); background: var(--pt-surface); border-bottom: 1px solid var(--pt-border-strong); max-width: 1280px; margin: 0 auto; box-sizing: border-box; }
.pt3 .pt3-stats > div { padding: 12px 20px; border-left: 1px solid var(--pt-border); }
.pt3 .pt3-stats > div:first-child { border-left: 0; padding-left: 36px; }
.pt3 .pt3-stats b { font-size: 18px; font-weight: 600; display: flex; align-items: center; color: var(--pt-ink); }
.pt3 .pt3-stats span { font-size: 12px; color: var(--pt-ink-2); }
.pt3 .pt3-onl { display: inline-block; width: 8px; height: 8px; background: var(--pt-green-dot); border-radius: 50%; margin-right: 6px; }
.pt3 .pt3-tabs { display: flex; gap: 24px; padding: 0 36px; border-bottom: 1px solid var(--pt-border-strong); background: var(--pt-surface); align-items: center; max-width: 1280px; margin: 0 auto; box-sizing: border-box; }
.pt3 .pt3-tabs a { padding: 14px 0 12px; font-size: 14px; color: var(--pt-ink-2); border-bottom: 2px solid transparent; display: inline-flex; gap: 6px; align-items: center; white-space: nowrap; text-decoration: none; }
.pt3 .pt3-tabs a.is-on { color: var(--pt-ink); font-weight: 600; border-color: var(--pt-ink); }
.pt3 .pt3-n { font: 11.5px var(--pt-mono); color: var(--pt-ink-3); }
.pt3 .pt3-adm { color: var(--pt-ink-3); font-size: 11px; border: 1px solid var(--pt-border-strong); padding: 0 4px; font-weight: 400; }
.pt3 .pt3-search, .pt3 .pt3-search:hover, .pt3 .pt3-search:focus, .pt3 .pt3-search:active { margin-left: auto; background: transparent; color: var(--pt-ink-2); border: 0; padding: 8px; cursor: pointer; box-shadow: none; border-radius: 0; }
.pt3 .pt3-search:hover, .pt3 .pt3-search:focus-visible { background: var(--pt-fill-control); color: var(--pt-ink); }

/* ── body frame ── */
.pt3 .pt3-body { max-width: 1280px; margin: 0 auto; padding: 22px 36px 48px; box-sizing: border-box; }

/* ── Insights ── */
.pt3 .pt3-ihead { display: flex; align-items: center; gap: 12px; margin-bottom: 14px; flex-wrap: wrap; }
.pt3 .pt3-ihead h2 { font-size: 18px; font-weight: 600; margin: 0; text-transform: none; }
.pt3 .pt3-ihead > span { font-size: 13px; color: var(--pt-ink-2); }
.pt3 .pt3-seg { margin-left: auto; display: flex; border: 1px solid var(--pt-border-strong); background: var(--pt-surface); }
.pt3 .pt3-seg button, .pt3 .pt3-seg button:hover, .pt3 .pt3-seg button:focus, .pt3 .pt3-seg button:active { padding: 7px 12px; font-family: inherit; font-size: 13px; border: 0; border-left: 1px solid var(--pt-border-strong); background: var(--pt-surface); color: var(--pt-ink); border-radius: 0; box-shadow: none; cursor: pointer; text-transform: none; }
.pt3 .pt3-seg button:first-child { border-left: 0; }
.pt3 .pt3-seg button:hover, .pt3 .pt3-seg button:focus-visible { background: var(--pt-fill-control); color: var(--pt-ink); }
.pt3 .pt3-seg button.is-on, .pt3 .pt3-seg button.is-on:hover, .pt3 .pt3-seg button.is-on:focus { background: var(--pt-fill-primary); color: var(--pt-on-primary); }
.pt3 .pt3-kg { display: grid; grid-template-columns: repeat(5, 1fr); background: var(--pt-surface); border: 1px solid var(--pt-border-strong); margin-bottom: 16px; }
.pt3 .pt3-kg > div { padding: 14px 16px; border-left: 1px solid var(--pt-border); }
.pt3 .pt3-kg > div:first-child { border-left: 0; }
.pt3 .pt3-kg span { font-size: 12px; color: var(--pt-ink-2); display: block; }
.pt3 .pt3-kg b { font-size: 22px; font-weight: 600; display: block; margin: 4px 0 2px; }
.pt3 .pt3-kg small { font: 12px var(--pt-mono); color: var(--pt-ink-3); }
.pt3 .pt3-kg small.up { color: var(--pt-green-text); }
.pt3 .pt3-kg small.dn { color: var(--pt-amber-text); }
.pt3 .pt3-unlock { display: flex; gap: 16px; align-items: center; padding: 14px 16px; background: var(--pt-surface); border: 1px solid var(--pt-border-strong); margin: 0 0 16px; }
.pt3 .pt3-unlock:empty { display: none; }
.pt3 .pt3-unlock b { font-size: 14.5px; display: block; }
.pt3 .pt3-unlock small { font-size: 13px; color: var(--pt-ink-2); }
.pt3 .pt3-pb { width: 260px; margin-left: auto; }
.pt3 .pt3-pb .t { display: flex; justify-content: space-between; font: 12.5px var(--pt-mono); margin-bottom: 5px; }
.pt3 .pt3-pb .b { height: 6px; background: var(--pt-border); }
.pt3 .pt3-pb .b i { display: block; height: 100%; background: var(--pt-ink); }
.pt3 .pt3-ig { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.pt3 .pt3-ig .pt3-card { margin-bottom: 0; }
.pt3 .pt3-chart { display: flex; align-items: flex-end; gap: 3px; height: 150px; padding-top: 10px; border-bottom: 1px solid var(--pt-border); }
.pt3 .pt3-chart i { flex: 1; background: var(--pt-ink); display: block; min-height: 2px; }
.pt3 .pt3-cax { display: flex; justify-content: space-between; font: 11px var(--pt-mono); color: var(--pt-ink-3); margin-top: 6px; }
.pt3 .pt3-lg { display: flex; gap: 14px; font-size: 12px; color: var(--pt-ink-2); margin-top: 10px; }
.pt3 .pt3-lg span { display: flex; gap: 6px; align-items: center; }
.pt3 .pt3-lg i { width: 10px; height: 10px; display: block; background: var(--pt-ink); }
.pt3 .pt3-mix { display: flex; height: 14px; margin-top: 4px; }
.pt3 .pt3-mix i { display: block; height: 100%; }
.pt3 .pt3-mixl { margin-top: 12px; }
.pt3 .pt3-mixl div { display: flex; justify-content: space-between; font-size: 13px; padding: 6px 0; border-top: 1px solid var(--pt-border); }
.pt3 .pt3-mixl div:first-child { border-top: 0; }
.pt3 .pt3-mixl span { display: flex; gap: 8px; align-items: center; }
.pt3 .pt3-mixl i { width: 10px; height: 10px; display: block; }
.pt3 .pt3-tc { display: grid; grid-template-columns: 16px 30px minmax(0, 1fr) 50px 54px 50px 56px; gap: 10px; align-items: center; padding: 9px 0; border-top: 1px solid var(--pt-border); font-size: 13px; }
.pt3 .pt3-tc--hd { font-size: 11px; letter-spacing: .06em; text-transform: uppercase; color: var(--pt-ink-3); border-top: 0; padding-top: 0; }
.pt3 .pt3-tc--hd span:nth-child(n+4) { text-align: right; }
.pt3 .pt3-tc img { border-radius: 50%; }
.pt3 .pt3-tc a { color: var(--pt-ink); font-weight: 600; text-decoration: none; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pt3 .pt3-tc .n { text-align: right; color: var(--pt-ink-2); font-size: 12.5px; }
.pt3 .pt3-tc .s { text-align: right; font-weight: 600; }
.pt3 .pt3-tc .p { color: var(--pt-ink-3); font-size: 12px; }
.pt3 .pt3-hours { display: flex; align-items: flex-end; gap: 2px; height: 110px; border-bottom: 1px solid var(--pt-border); }
.pt3 .pt3-hours i { flex: 1; background: var(--pt-border-strong); display: block; }
.pt3 .pt3-hours i.pk { background: var(--pt-ink); }
.pt3 .pt3-loading { font-size: 13px; color: var(--pt-ink-3); margin-top: 12px; }

/* ── phone ── */
@media (max-width: 760px) {
	.pt3-cover { height: 120px; }
	.pt3-cover__edit { right: 12px; top: 10px; }
	.pt3 .pt3-th { padding: 0 14px 14px; }
	.pt3 .pt3-crest { left: 14px; top: -40px; width: 72px; height: 72px; font-size: 18px; }
	.pt3 .pt3-top { flex-direction: column; align-items: stretch; padding-left: 0; padding-top: 42px; gap: 12px; }
	.pt3 .pt-gh-title { font-size: 22px; }
	.pt3 .pt3-acts { margin-left: 0; justify-content: flex-start; }
	.pt3 .pt3-acts > .pt3-btn, .pt3 .pt3-acts #pt-tribe-membership-wrap { flex: 1; }
	.pt3 .pt3-acts #pt-tribe-membership-wrap .pt3-btn { width: 100%; }
	.pt3 .pt3-acts .pt3-hm { display: none; }
	.pt3 .pt3-stats { grid-template-columns: repeat(3, 1fr); }
	.pt3 .pt3-stats > div:nth-child(n+4) { display: none; }
	.pt3 .pt3-stats > div { padding: 10px 12px; }
	.pt3 .pt3-stats > div:first-child { padding-left: 14px; }
	.pt3 .pt3-tabs { padding: 0 14px; overflow-x: auto; gap: 18px; }
	.pt3 .pt3-search { display: none; }
	.pt3 .pt3-body { padding: 14px 14px 40px; }
	.pt3 .pt3-kg { grid-template-columns: 1fr 1fr; }
	.pt3 .pt3-kg > div { border-top: 1px solid var(--pt-border); }
	.pt3 .pt3-kg > div:nth-child(odd) { border-left: 0; }
	.pt3 .pt3-kg > div:nth-child(5) { display: none; }
	.pt3 .pt3-ig { grid-template-columns: 1fr; }
	.pt3 .pt3-unlock { flex-wrap: wrap; }
	.pt3 .pt3-pb { width: 100%; }
	.pt3 .pt3-tc { grid-template-columns: 30px minmax(0, 1fr) 44px 56px; }
	.pt3 .pt3-tc > :nth-child(1), .pt3 .pt3-tc > :nth-child(5), .pt3 .pt3-tc > :nth-child(6) { display: none; }
}

/* ═══ Discussion ═══ */
.pt3 .pt-gf-grid { max-width: 1280px; margin: 0 auto; padding: 22px 36px 48px; box-sizing: border-box; display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 24px; align-items: start; }
.pt3 .pt3-joinbar { background: var(--pt-surface); border: 1px solid var(--pt-border-strong); padding: 14px 16px; margin-bottom: 16px; display: flex; gap: 14px; align-items: center; }
.pt3 .pt3-joinbar b { display: block; font-size: 14.5px; color: var(--pt-ink); }
.pt3 .pt3-joinbar span { font-size: 13px; color: var(--pt-ink-2); }
.pt3 .pt3-joinbar .pt3-btn { margin-left: auto; }
.pt3 .pt3-dt { width: 52px; flex: 0 0 auto; border: 1px solid var(--pt-border-strong); text-align: center; padding: 5px 0; background: var(--pt-surface); }
.pt3 .pt3-dt small { display: block; font: 600 11px var(--pt-mono); color: var(--pt-ink-2); }
.pt3 .pt3-dt b { font: 600 20px var(--pt-mono); display: block; line-height: 1.2; color: var(--pt-ink); }
.pt3 .pt3-dt--sm { width: 44px; padding: 3px 0; }
.pt3 .pt3-dt--sm b { font-size: 16px; }
.pt3 .pt3-nxt { display: flex; gap: 14px; align-items: center; padding: 14px 16px; background: var(--pt-surface); border: 1px solid var(--pt-border-strong); border-left: 3px solid var(--pt-ink); margin-bottom: 16px; }
.pt3 .pt3-nxt__tx b { font-size: 15px; display: block; }
.pt3 .pt3-nxt__tx small { font-size: 13px; color: var(--pt-ink-2); display: block; margin-top: 3px; }
.pt3 .pt3-nxt__r { margin-left: auto; display: flex; gap: 12px; align-items: center; }
.pt3 .pt3-going { font-size: 12.5px; color: var(--pt-ink-2); }
.pt3 .pt3-go, .pt3 .pt3-go:hover, .pt3 .pt3-go:focus, .pt3 .pt3-go:active { font-family: inherit; font-size: 12.5px; font-weight: 600; padding: 7px 12px; border: 1px solid var(--pt-border-strong); border-radius: 0; background: var(--pt-surface); color: var(--pt-ink); cursor: pointer; text-decoration: none; box-shadow: none; text-transform: none; }
.pt3 .pt3-go:hover, .pt3 .pt3-go:focus-visible { background: var(--pt-fill-control); color: var(--pt-ink); }
.pt3 .pt3-go.is-on, .pt3 .pt3-go.is-on:hover, .pt3 .pt3-go.is-on:focus, .pt3 .pt3-go.is-on:active { background: var(--pt-fill-primary); color: var(--pt-on-primary); border-color: var(--pt-fill-primary); }
.pt3 .pt3-setup { background: var(--pt-surface); border: 1px solid var(--pt-border-strong); border-left: 3px solid var(--pt-amber-deep); margin-bottom: 16px; }
.pt3 .pt3-setup__h { display: flex; align-items: center; gap: 12px; padding: 14px 16px; border-bottom: 1px solid var(--pt-border); }
.pt3 .pt3-setup__h b { font-size: 15px; }
.pt3 .pt3-setup__h span { margin-left: auto; font-weight: 600; font-size: 13px; }
.pt3 .pt3-setup__bar { height: 4px; background: var(--pt-border); }
.pt3 .pt3-setup__bar i { display: block; height: 100%; background: var(--pt-ink); }
.pt3 .pt3-setup__it { display: flex; gap: 12px; align-items: center; padding: 12px 16px; border-top: 1px solid var(--pt-border); font-size: 14px; }
.pt3 .pt3-setup__it:first-of-type { border-top: 0; }
.pt3 .pt3-setup__it > div { flex: 1; min-width: 0; }
.pt3 .pt3-setup__it small { display: block; font-size: 12.5px; color: var(--pt-ink-2); margin-top: 2px; }
.pt3 .pt3-bx { width: 18px; height: 18px; border: 1.5px solid var(--pt-border-strong); flex: 0 0 auto; display: flex; align-items: center; justify-content: center; color: #fff; }
.pt3 .pt3-setup__it.is-done .pt3-bx { background: var(--pt-green-text); border-color: var(--pt-green-text); }
.pt3 .pt3-setup__it.is-done > div > span { color: var(--pt-ink-3); text-decoration: line-through; }
.pt3 .pt-gf-compose-bar { border-radius: 0 !important; border: 1px solid var(--pt-border-strong) !important; border-bottom: 0 !important; margin-bottom: 0 !important; box-shadow: none !important; }
.pt3 .pt-gf-compose-input-face { border-radius: 0 !important; border: 1px solid var(--pt-border-strong) !important; background: var(--pt-surface-dim) !important; }
.pt3 .pt3-comp-r2 { display: flex; gap: 6px; flex-wrap: wrap; padding: 0 16px 14px 68px; background: var(--pt-surface); border: 1px solid var(--pt-border-strong); border-top: 0; margin-bottom: 12px; }
.pt3 .pt3-tool, .pt3 .pt3-tool:hover, .pt3 .pt3-tool:focus, .pt3 .pt3-tool:active { display: inline-flex; align-items: center; gap: 6px; font-family: inherit; font-size: 12.5px; font-weight: 400; color: var(--pt-ink-2); padding: 6px 10px; border: 1px solid var(--pt-border); border-radius: 0; background: var(--pt-surface); text-decoration: none; cursor: pointer; box-shadow: none; text-transform: none; }
.pt3 .pt3-tool:hover, .pt3 .pt3-tool:focus-visible { background: var(--pt-fill-control); color: var(--pt-ink); }
.pt3 .pt-gf-compose-expanded { border-radius: 0 !important; }
.pt3 .pt-chips { margin: 0 0 12px; }
.pt3 .pt3-tag--open { background: var(--pt-amber-deep); border-color: var(--pt-amber-deep); color: #fff; }
.pt3 .pt3-tag--ok { background: var(--pt-green-text); border-color: var(--pt-green-text); color: #fff; }
.pt3 .pt3-fqpost__uh { display: flex; align-items: center; gap: 10px; padding: 12px 16px; font-size: 14px; }
.pt3 .pt3-fqpost__uh img { border-radius: 50%; }
.pt3 .pt3-fqpost__uh small { display: block; font-size: 12px; color: var(--pt-ink-3); margin-top: 2px; }
.pt3 .pt3-age { margin-left: auto; font-size: 12px; color: var(--pt-ink-3); }
.pt3 .pt3-fq { margin: 0 16px 12px; border: 1px solid var(--pt-border); padding: 12px 14px; display: flex; gap: 12px; align-items: center; }
.pt3 .pt3-fq__t { min-width: 0; flex: 1; }
.pt3 .pt3-fq__t > div { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.pt3 .pt3-fq__t b { font-size: 14.5px; }
.pt3 .pt3-fq__t small { display: block; font-size: 12.5px; color: var(--pt-ink-2); margin-top: 4px; }
.pt3 .pt3-fix { color: var(--pt-green-text); }

/* feed cards → the update-card style */
.pt3 .pt-gf-card { background: var(--pt-surface) !important; border: 1px solid var(--pt-border-strong) !important; border-radius: 0 !important; box-shadow: none !important; margin-bottom: 16px; }
.pt3 .pt-gf-card.is-pinned { border-left: 3px solid var(--pt-ink) !important; }
.pt3 .pt-gf-pin-flag { font-size: 12px !important; color: var(--pt-ink-3) !important; background: none !important; padding: 10px 16px 0 !important; text-transform: none !important; letter-spacing: 0 !important; font-weight: 400 !important; }
.pt3 .pt3-meta { display: flex; gap: 6px; align-items: center; flex-wrap: wrap; margin-top: 2px; font-size: 12px; color: var(--pt-ink-3); }
.pt3 .pt3-rk { font-size: 11px; border: 1px solid var(--pt-border-strong); padding: 1px 5px; color: var(--pt-ink-2); background: var(--pt-surface); }
.pt3 .pt3-own { display: inline-flex; align-items: center; font-size: 11.5px; padding: 2px 7px; border: 1px solid var(--pt-green-border); color: var(--pt-green-text); background: var(--pt-green-bg); white-space: nowrap; }
.pt3 .pt3-rep { color: var(--pt-ink); font-size: 12px; }
.pt3 .pt-gf-card-time { font-size: 12px; color: var(--pt-ink-3); }
.pt3 .pt-gf-card-name { color: var(--pt-ink) !important; font-weight: 600; }
.pt3 .pt-gf-card-content { font-size: 14.5px; line-height: 1.55; color: var(--pt-ink); }
.pt3 .pt-gf-card-media img { border-radius: 0 !important; }
.pt3 .pt-gf-card-actions { border-top: 1px solid var(--pt-border) !important; }
.pt3 .pt-gf-card-actions button, .pt3 .pt-gf-card-actions button:hover, .pt3 .pt-gf-card-actions button:focus, .pt3 .pt-gf-card-actions button:active { border-radius: 0 !important; color: var(--pt-ink-2); background: transparent; box-shadow: none; }
.pt3 .pt-gf-card-actions button:hover, .pt3 .pt-gf-card-actions button:focus-visible { background: var(--pt-fill-control) !important; color: var(--pt-ink) !important; }
.pt3 .pt-gf-card-replies { background: var(--pt-surface-dim); border-top: 1px solid var(--pt-border); }
.pt3 .pt-gf-reply-input, .pt3 .pt-gf-reply-input-wrap, .pt3 .pt-gf-reply-form, .pt3 .pt-gf-comment-box { border-radius: 0 !important; }
.pt3 .pt-gf-card-hdr img, .pt3 .pt-gf-card-author img { border-radius: 50%; }
.pt3 .pt-gf-listing-card, .pt3 .pt-mp-feed-card, .pt3 .pt-gf-mp-card { border-radius: 0 !important; border: 1px solid var(--pt-border) !important; box-shadow: none !important; }
.pt3 .pt-gf-feed > .pt3-empty { margin-top: 0; }

/* side column */
.pt3 .pt3-side { position: static; }
.pt3 .pt3-scard { padding: 14px 16px; }
.pt3 .pt3-scard h4 { font-size: 14px; font-weight: 600; margin: 0 0 8px; display: flex; justify-content: space-between; align-items: baseline; text-transform: none; letter-spacing: 0; color: var(--pt-ink); }
.pt3 .pt3-scard h4 a { font-weight: 400; font-size: 12.5px; color: var(--pt-accent); text-decoration: none; }
.pt3 .pt3-scard p { font-size: 13.5px; color: var(--pt-ink-2); line-height: 1.5; margin: 0; }
.pt3 .pt3-rules { margin-top: 10px; padding-top: 10px; border-top: 1px solid var(--pt-border); font-size: 13px; color: var(--pt-ink-2); }
.pt3 .pt3-rules b { color: var(--pt-ink); font-size: 13px; }
.pt3 .pt3-rules ol { padding-left: 18px; line-height: 1.55; margin: 4px 0 0; }
.pt3 .pt3-prow { display: flex; gap: 10px; align-items: center; padding: 8px 0; border-top: 1px solid var(--pt-border); }
.pt3 .pt3-prow:first-of-type { border-top: 0; }
.pt3 .pt3-prow img { border-radius: 50%; }
.pt3 .pt3-prow b { font-size: 13.5px; }
.pt3 .pt3-prow small { display: block; font-size: 12px; color: var(--pt-ink-3); }
.pt3 .pt3-prow .pt3-rk { margin-left: auto; }
.pt3 .pt3-stack { display: flex; }
.pt3 .pt3-stack img { border-radius: 50%; border: 2px solid var(--pt-surface); margin-left: -8px; }
.pt3 .pt3-stack img:first-child { margin-left: 0; }
.pt3 .pt3-mstat { display: flex; gap: 18px; font-size: 12.5px; color: var(--pt-ink-2); margin-top: 10px; }
.pt3 .pt3-mstat b { font-size: 14px; font-weight: 600; color: var(--pt-ink); display: flex; align-items: center; }
.pt3 .pt3-sq { display: block; padding: 8px 0; border-top: 1px solid var(--pt-border); font-size: 13.5px; line-height: 1.35; color: var(--pt-ink); text-decoration: none; }
.pt3 .pt3-sq:first-of-type { border-top: 0; }
.pt3 .pt3-sq small { display: block; font-size: 12px; color: var(--pt-ink-3); margin-top: 2px; }
.pt3 .pt3-a { color: var(--pt-amber-text); }
.pt3 .pt3-g { color: var(--pt-green-text); }
.pt3 .pt3-scard > .pt3-btn { margin-top: 8px; }
.pt3 .pt3-evs { display: flex; gap: 10px; padding: 8px 0; border-top: 1px solid var(--pt-border); align-items: center; }
.pt3 .pt3-evs:first-of-type { border-top: 0; }
.pt3 .pt3-evs b { font-size: 13.5px; display: block; }
.pt3 .pt3-evs small { font-size: 12px; color: var(--pt-ink-2); }

@media (max-width: 760px) {
	.pt3 .pt-gf-grid { grid-template-columns: 1fr; padding: 14px 14px 40px; }
	.pt3 .pt3-side { display: none !important; }
	.pt3 .pt3-nxt { flex-wrap: wrap; }
	.pt3 .pt3-nxt__r { margin-left: 66px; }
	.pt3 .pt3-comp-r2 { padding-left: 16px; }
	.pt3 .pt3-fq { flex-wrap: wrap; }
	.pt3 .pt3-joinbar { flex-wrap: wrap; }
	.pt3 .pt3-joinbar .pt3-btn { margin-left: 0; width: 100%; }
}

/* ── About tab ── */
.pt3 .pt3-about { font-size: 14.5px; line-height: 1.6; color: var(--pt-ink); }
.pt3 .pt3-about p { margin: 0 0 10px; }
.pt3 .pt3-about p:last-child { margin-bottom: 0; }
.pt3 .pt3-muted { color: var(--pt-ink-2); font-size: 14px; }
.pt3 .pt3-info { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--pt-border); }
.pt3 .pt3-info > div { padding: 12px 16px; border-left: 1px solid var(--pt-border); border-top: 1px solid var(--pt-border); }
.pt3 .pt3-info > div:nth-child(3n+1) { border-left: 0; }
.pt3 .pt3-info > div:nth-child(-n+3) { border-top: 0; }
.pt3 .pt3-info span { display: block; font-size: 12px; color: var(--pt-ink-2); }
.pt3 .pt3-info b { display: block; margin-top: 3px; font: 600 15px var(--pt-mono); color: var(--pt-ink); }
.pt3 .pt3-rulelist { margin: 0; padding-left: 20px; font-size: 14px; line-height: 1.7; color: var(--pt-ink); }
.pt3 .pt3-linked { display: grid; grid-template-columns: 110px 1fr; gap: 8px; font-size: 13.5px; }
.pt3 .pt3-linked > span:nth-child(odd) { color: var(--pt-ink-2); }
.pt3 .pt3-card__h a, .pt3 .pt3-about a, .pt3 .pt3-linked a { color: var(--pt-accent); text-decoration: none; }
@media (max-width: 760px) {
	.pt3 .pt3-info { grid-template-columns: repeat(2, 1fr); }
	.pt3 .pt3-info > div:nth-child(3n+1) { border-left: 1px solid var(--pt-border); }
	.pt3 .pt3-info > div:nth-child(2n+1) { border-left: 0; }
	.pt3 .pt3-info > div:nth-child(3) { border-top: 1px solid var(--pt-border); }
}
/* About keeps its one side card (Admins and mods) on a phone, under the content. */
@media (max-width: 760px) { .pt3 .pt3-side.pt3-side--keep { display: block !important; } }

/* ── Events tab ── */
.pt3 [hidden] { display: none !important; }
.pt3 .pt3-evbar { display: flex; gap: 10px; align-items: center; margin-bottom: 14px; font-size: 13px; color: var(--pt-ink-2); }
.pt3 .pt3-evbar .pt3-btn { margin-left: auto; }
.pt3 .pt3-sech { font-size: 15px; font-weight: 600; margin: 4px 0 10px; color: var(--pt-ink); text-transform: none; letter-spacing: 0; }
.pt3 .pt3-sech--gap { margin-top: 20px; }
.pt3 .pt3-evc { display: block; padding: 0; }
.pt3 .pt3-evc__top { display: grid; grid-template-columns: 200px 1fr auto; gap: 16px; align-items: stretch; }
.pt3 .pt3-evc__ban { display: block; min-height: 130px; position: relative; background: var(--pt-surface-dim) center / cover no-repeat; font-style: normal; border-right: 1px solid var(--pt-border); }
.pt3 .pt3-evc__ban .pt3-dt { position: absolute; left: 10px; top: 10px; }
.pt3 .pt3-evc__b { padding: 14px 0; min-width: 0; }
.pt3 .pt3-evc__t { font-size: 16px; color: var(--pt-ink); }
.pt3 .pt3-evc__w { display: grid; grid-template-columns: 90px 1fr; gap: 4px 10px; font-size: 13px; margin-top: 8px; color: var(--pt-ink); }
.pt3 .pt3-evc__w > span:nth-child(odd) { color: var(--pt-ink-2); }
.pt3 .pt3-evc__w .pt-mono { font-size: 12.5px; }
.pt3 .pt3-evc__w a { color: var(--pt-accent); text-decoration: none; }
.pt3 .pt3-evc__d { margin: 10px 0 0; font-size: 13.5px; line-height: 1.5; color: var(--pt-ink-2); }
.pt3 .pt3-evc__r { padding: 14px 16px 14px 0; display: flex; flex-direction: column; align-items: flex-end; justify-content: space-between; gap: 10px; }
.pt3 .pt3-evc__g { display: flex; gap: 8px; align-items: center; white-space: nowrap; }
.pt3 .pt3-evc__foot { display: flex; flex-wrap: wrap; gap: 4px 16px; align-items: center; padding: 10px 16px; border-top: 1px solid var(--pt-border); font-size: 12.5px; }
.pt3 .pt3-evc__own { margin-left: auto; display: flex; gap: 16px; }
.pt3 .pt3-lnk, .pt3 .pt3-lnk:hover, .pt3 .pt3-lnk:focus, .pt3 .pt3-lnk:active { background: transparent; color: var(--pt-ink-2); border: 0; padding: 0; font: inherit; font-size: 12.5px; font-weight: 600; text-decoration: none; cursor: pointer; box-shadow: none; text-transform: none; letter-spacing: 0; border-radius: 0; }
.pt3 .pt3-lnk:hover, .pt3 .pt3-lnk:focus-visible { background: transparent; color: var(--pt-ink); text-decoration: underline; }
.pt3 .pt-event-cal-wrap { position: relative; }
.pt3 .pt-event-cal-dropdown { display: none; position: absolute; left: 0; top: calc(100% + 6px); z-index: 20; min-width: 200px; background: var(--pt-surface); border: 1px solid var(--pt-border-strong); border-radius: 0; box-shadow: 0 6px 18px rgba(26, 26, 26, .08); }
.pt3 .pt-event-cal-dropdown.is-open { display: block; }
.pt3 .pt-event-cal-dropdown a, .pt3 .pt-event-cal-dropdown button, .pt3 .pt-event-cal-dropdown button:hover, .pt3 .pt-event-cal-dropdown button:focus, .pt3 .pt-event-cal-dropdown button:active { display: block; width: 100%; text-align: left; padding: 9px 12px; font: inherit; font-size: 13px; color: var(--pt-ink); background: var(--pt-surface); border: 0; border-top: 1px solid var(--pt-border); border-radius: 0; text-decoration: none; cursor: pointer; box-shadow: none; text-transform: none; }
.pt3 .pt-event-cal-dropdown a:first-child { border-top: 0; }
.pt3 .pt-event-cal-dropdown a:hover, .pt3 .pt-event-cal-dropdown button:hover, .pt3 .pt-event-cal-dropdown button:focus-visible { background: var(--pt-fill-control); color: var(--pt-ink); }
.pt3 .pt3-evmp { border-top: 1px solid var(--pt-border); margin: 0; }
.pt3 .pt3-evmp .pt-event-mp-toggle, .pt3 .pt3-evmp .pt-event-mp-toggle:hover, .pt3 .pt3-evmp .pt-event-mp-toggle:focus, .pt3 .pt3-evmp .pt-event-mp-toggle:active { display: flex; gap: 8px; align-items: center; width: 100%; padding: 10px 16px; background: var(--pt-surface); color: var(--pt-ink); border: 0; border-radius: 0; font: inherit; font-size: 13px; font-weight: 600; text-align: left; cursor: pointer; box-shadow: none; text-transform: none; }
.pt3 .pt3-evmp .pt-event-mp-toggle:hover, .pt3 .pt3-evmp .pt-event-mp-toggle:focus-visible { background: var(--pt-fill-control); color: var(--pt-ink); }
.pt3 .pt3-evmp .pt-mp-chevron { margin-left: auto; font-style: normal; color: var(--pt-ink-3); }
.pt3 .pt3-evmp .pt-event-mp-body { display: none; padding: 0 16px 14px; }
.pt3 .pt3-evmp.is-open .pt-event-mp-body { display: block; }
.pt3 .pt3-evmp .pt-event-mp-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; }
.pt3 .pt3-evmp .pt-event-mp-card { display: block; border: 1px solid var(--pt-border); text-decoration: none; color: var(--pt-ink); border-radius: 0; background: var(--pt-surface); }
.pt3 .pt3-evmp .pt-event-mp-img { aspect-ratio: 4 / 3; background: var(--pt-surface-dim) center / cover no-repeat; }
.pt3 .pt3-evmp .pt-event-mp-info { padding: 6px 8px; font-size: 12.5px; display: flex; flex-direction: column; gap: 2px; }
.pt3 .pt3-evmp .pt-event-mp-price { font-weight: 600; }
.pt3 .pt3-pastlist { padding: 0; }
.pt3 .pt3-past { display: flex; gap: 12px; align-items: center; padding: 10px 16px; border-top: 1px solid var(--pt-border); font-size: 13.5px; color: var(--pt-ink); }
.pt3 .pt3-past:first-child { border-top: 0; }
.pt3 .pt3-past__d { font-size: 12.5px; color: var(--pt-ink-3); width: 90px; flex: 0 0 auto; }
.pt3 .pt3-past__r { margin-left: auto; font-size: 12.5px; color: var(--pt-ink-2); white-space: nowrap; }

/* create + edit form (old markup, new skin) */
.pt3 .pt3-evform .pt3-card__b, .pt3 .pt-event-edit-box form { padding: 16px; }
.pt3 .pt-event-edit-box { background: var(--pt-surface); border: 1px solid var(--pt-border-strong); border-radius: 0; box-shadow: none; padding: 0; margin: 0; }
.pt3 .pt3-evform .pt-event-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px 12px; margin-top: 14px; }
.pt3 .pt3-evform .pt-event-field { grid-column: 1 / -1; margin: 0; }
.pt3 .pt3-evform .pt-event-field--half { grid-column: auto; }
.pt3 .pt3-evform label { display: block; font-size: 13px; font-weight: 600; margin: 0 0 6px; color: var(--pt-ink); text-transform: none; letter-spacing: 0; }
.pt3 .pt3-evform label small { font-weight: 400; color: var(--pt-ink-3); font-size: 12px; }
.pt3 .pt3-evform .pt-input, .pt3 .pt3-evform input[type=text], .pt3 .pt3-evform input[type=url], .pt3 .pt3-evform input[type=date], .pt3 .pt3-evform input[type=time], .pt3 .pt3-evform select, .pt3 .pt3-evform textarea { width: 100%; min-height: 42px; box-sizing: border-box; border: 1px solid var(--pt-border-strong); border-radius: 0; background: var(--pt-surface); color: var(--pt-ink); font-family: inherit; font-size: 14px; padding: 9px 12px; box-shadow: none; }
.pt3 .pt3-evform input[type=date], .pt3 .pt3-evform input[type=time] { font-family: var(--pt-mono); }
.pt3 .pt3-evform textarea { min-height: 84px; resize: vertical; }
.pt3 .pt3-evform .pt-event-flyer-zone { position: relative; height: 70px; border: 1px dashed var(--pt-border-strong); background: var(--pt-surface); display: flex; align-items: center; justify-content: center; border-radius: 0; overflow: hidden; cursor: pointer; }
.pt3 .pt3-evform #pt-event-flyer-preview { display: flex; gap: 8px; align-items: center; font-size: 14px; color: var(--pt-ink-3); }
.pt3 .pt3-evform #pt-event-flyer-preview img { max-height: 66px; }
.pt3 .pt3-evform .pt-event-flyer-zone input[type=file] { position: absolute; inset: 0; opacity: 0; cursor: pointer; }
.pt3 .pt3-sg { display: flex; border: 1px solid var(--pt-border-strong); background: var(--pt-surface); }
.pt3 .pt3-sg--w { max-width: 320px; }
.pt3 .pt3-sg button, .pt3 .pt3-sg button:hover, .pt3 .pt3-sg button:focus, .pt3 .pt3-sg button:active { flex: 1; padding: 9px 12px; font-family: inherit; font-size: 13.5px; font-weight: 400; text-align: center; border: 0; border-left: 1px solid var(--pt-border-strong); border-radius: 0; background: var(--pt-surface); color: var(--pt-ink); box-shadow: none; text-transform: none; letter-spacing: 0; cursor: pointer; }
.pt3 .pt3-sg button:first-child { border-left: 0; }
.pt3 .pt3-sg button:hover, .pt3 .pt3-sg button:focus-visible { background: var(--pt-fill-control); color: var(--pt-ink); }
.pt3 .pt3-sg button.is-active, .pt3 .pt3-sg button.is-active:hover, .pt3 .pt3-sg button.is-active:focus, .pt3 .pt3-sg button.is-active:active { background: var(--pt-fill-primary); color: var(--pt-on-primary); }
.pt3 .pt3-evform .pt-premeet-toggle, .pt3 .pt3-evform .pt-premeet-toggle:hover, .pt3 .pt3-evform .pt-premeet-toggle:focus, .pt3 .pt3-evform .pt-premeet-toggle:active { background: transparent; color: var(--pt-accent); border: 0; padding: 0; font: inherit; font-size: 13px; box-shadow: none; text-transform: none; cursor: pointer; }
.pt3 .pt3-evform .pt-premeet-wrap { margin-top: 8px; }
.pt3 .pt3-hint { font-size: 12px; color: var(--pt-ink-3); margin-top: 5px; }
.pt3 .pt3-evform .pt-event-form-actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: 18px; padding-top: 14px; border-top: 1px solid var(--pt-border); }
.pt3 .pt3-evform .pt-event-form-msg, .pt3 .pt3-evform #pt-event-edit-msg { font-size: 13px; margin: 8px 0 0; }
.pt3 .pt3-evform .pt-duration-row { display: flex; gap: 8px; }
.pt3 .pt3-evform .pt-mms-trigger, .pt3 .pt3-evform .pt-mms-trigger:hover, .pt3 .pt3-evform .pt-mms-trigger:focus, .pt3 .pt3-evform .pt-mms-trigger:active { display: flex; justify-content: space-between; align-items: center; width: 100%; min-height: 42px; padding: 9px 12px; border: 1px solid var(--pt-border-strong); border-radius: 0; background: var(--pt-surface); color: var(--pt-ink-2); font: inherit; font-size: 14px; box-shadow: none; text-transform: none; cursor: pointer; }
.pt3 .pt3-evform .pt-mms-chevron { font-style: normal; color: var(--pt-ink-3); }
.pt3 .pt-event-edit-inline { padding: 0; background: transparent; }

@media (max-width: 760px) {
	.pt3 .pt3-evbar { flex-wrap: wrap; }
	.pt3 .pt3-evc__top { grid-template-columns: 1fr; gap: 0; }
	.pt3 .pt3-evc__ban { min-height: 150px; border-right: 0; border-bottom: 1px solid var(--pt-border); }
	.pt3 .pt3-evc__b { padding: 14px 16px 0; }
	.pt3 .pt3-evc__w { grid-template-columns: 70px 1fr; }
	.pt3 .pt3-evc__r { flex-direction: row; align-items: center; padding: 12px 16px; }
	.pt3 .pt3-evc__own { margin-left: 0; }
	.pt3 .pt3-evmp .pt-event-mp-grid { grid-template-columns: repeat(2, 1fr); }
	.pt3 .pt3-evform .pt-event-form-grid { grid-template-columns: 1fr; }
	.pt3 .pt3-past { flex-wrap: wrap; }
	.pt3 .pt3-past__d { width: auto; }
}
/* the old wrappers draw boxes of their own: flatten them (one container max) */
.pt3 .pt-event-create-box, .pt3 .pt-events-section { background: none; border: 0; border-radius: 0; box-shadow: none; padding: 0; margin: 0; }
.pt3 .pt-event-create-box .pt3-evform { margin-bottom: 16px; }
.pt3 h3.pt3-sech { border: 0; background: none; padding: 0; font-size: 15px; line-height: 1.3; }
@media (max-width: 760px) {
	.pt3 .pt3-evc__ban.is-blank { min-height: 0; padding: 14px 16px 0; border-bottom: 0; background: none; }
	.pt3 .pt3-evc__ban.is-blank .pt3-dt { position: static; }
}
/* tribe-page.css (Sep) styles .pt-event-card with !important; the JS still needs that class, so answer in kind, scoped to v3. */
.pt3 .pt-event-card.pt3-evc { border: 1px solid var(--pt-border-strong) !important; margin: 0 0 16px !important; background: var(--pt-surface) !important; }
.pt3 .pt-event-card.pt3-past { border: 0 !important; border-top: 1px solid var(--pt-border) !important; margin: 0 !important; }
.pt3 .pt-event-card.pt3-past:first-child { border-top: 0 !important; }
.pt3 .pt3-evform .pt-input { border-color: var(--pt-border-strong) !important; background: var(--pt-surface) !important; }
.pt3 .pt3-sg .pt-event-type-btn { border: 0 !important; border-left: 1px solid var(--pt-border-strong) !important; background: var(--pt-surface) !important; color: var(--pt-ink) !important; }
.pt3 .pt3-sg .pt-event-type-btn:first-child { border-left: 0 !important; }
.pt3 .pt3-sg .pt-event-type-btn:hover, .pt3 .pt3-sg .pt-event-type-btn:focus-visible { background: var(--pt-fill-control) !important; color: var(--pt-ink) !important; }
.pt3 .pt3-sg .pt-event-type-btn.is-active { background: var(--pt-fill-primary) !important; color: var(--pt-on-primary) !important; }
.pt3 .pt3-evc__ban .pt3-dt { display: block; }

/* ── Members tab (full width) ── */
.pt3 .pt3-wide { width: 100%; }
.pt3 .pt3-card__h .pt3-onl { margin-right: 7px; }
.pt3 .pt3-req { display: flex; gap: 12px; align-items: center; padding: 12px 16px; border-top: 1px solid var(--pt-border); }
.pt3 .pt3-card__h + .pt3-req { border-top: 0; }
.pt3 .pt3-req img { border-radius: 50%; }
.pt3 .pt3-req__tx { flex: 1; min-width: 0; }
.pt3 .pt3-req__tx b { font-size: 14px; color: var(--pt-ink); }
.pt3 .pt3-req__tx small { display: block; font-size: 12.5px; color: var(--pt-ink-2); margin-top: 2px; }
.pt3 .pt3-req form { margin: 0; }
.pt3 .pt3-onrow { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }
.pt3 .pt3-onrow a { display: flex; gap: 7px; align-items: center; border: 1px solid var(--pt-border); padding: 4px 10px 4px 4px; font-size: 13px; background: var(--pt-surface); color: var(--pt-ink); text-decoration: none; }
.pt3 .pt3-onrow a:hover { border-color: var(--pt-border-strong); }
.pt3 .pt3-onrow img { border-radius: 50%; }
.pt3 .pt3-onmore { padding-left: 6px; font-size: 13px; color: var(--pt-ink-2); }
.pt3 .pt3-fbar { display: flex; gap: 8px; margin-bottom: 12px; }
.pt3 .pt3-srch { flex: 1; height: 42px; border: 1px solid var(--pt-border-strong); background: var(--pt-surface); display: flex; align-items: center; gap: 10px; padding: 0 12px; color: var(--pt-ink-3); margin: 0; box-sizing: border-box; }
.pt3 .pt3-srch input, .pt3 .pt3-srch input:focus { flex: 1; border: 0; outline: 0; background: transparent; box-shadow: none; padding: 0; height: 40px; font-family: inherit; font-size: 14px; color: var(--pt-ink); min-width: 0; }
.pt3 .pt3-srch:focus-within { border-color: var(--pt-ink); }
.pt3 .pt3-sgm { display: flex; border: 1px solid var(--pt-border-strong); background: var(--pt-surface); }
.pt3 .pt3-sgm button, .pt3 .pt3-sgm button:hover, .pt3 .pt3-sgm button:focus, .pt3 .pt3-sgm button:active { padding: 0 12px; font-family: inherit; font-size: 13px; font-weight: 400; border: 0; border-left: 1px solid var(--pt-border-strong); border-radius: 0; background: var(--pt-surface); color: var(--pt-ink); box-shadow: none; text-transform: none; letter-spacing: 0; cursor: pointer; white-space: nowrap; }
.pt3 .pt3-sgm button:first-child { border-left: 0; }
.pt3 .pt3-sgm button:hover, .pt3 .pt3-sgm button:focus-visible { background: var(--pt-fill-control); color: var(--pt-ink); }
.pt3 .pt3-sgm button.is-active, .pt3 .pt3-sgm button.is-active:hover, .pt3 .pt3-sgm button.is-active:focus, .pt3 .pt3-sgm button.is-active:active { background: var(--pt-fill-primary); color: var(--pt-on-primary); }
.pt3 .pt3-mr { display: grid; grid-template-columns: 40px 1fr 90px 100px 70px 28px; gap: 14px; padding: 11px 16px; border-top: 1px solid var(--pt-border); align-items: center; }
.pt3 #pt-members-list .pt3-mr:first-child { border-top: 1px solid var(--pt-border); }
.pt3 .pt3-mr--hd { border-top: 0; font-size: 11.5px; letter-spacing: .06em; text-transform: uppercase; color: var(--pt-ink-3); background: var(--pt-surface-dim); padding: 9px 16px; }
.pt3 .pt3-mr--hd span:nth-child(3), .pt3 .pt3-mr--hd span:nth-child(4), .pt3 .pt3-mr--hd span:nth-child(5) { text-align: right; }
.pt3 .pt3-mr img { border-radius: 50%; }
.pt3 .pt3-mr__nm { min-width: 0; }
.pt3 .pt3-mr__nm a { font-size: 14px; font-weight: 600; color: var(--pt-ink); text-decoration: none; }
.pt3 .pt3-mr__nm > div { display: flex; gap: 6px; margin-top: 3px; flex-wrap: wrap; }
.pt3 .pt3-mr__rep { font-size: 13.5px; font-weight: 600; text-align: right; color: var(--pt-ink); }
.pt3 .pt3-mr__jn { font-size: 12.5px; color: var(--pt-ink-2); text-align: right; }
.pt3 .pt3-mr__role { text-align: right; }
.pt3 .pt3-mr__mo { position: relative; text-align: right; }
.pt3 .pt3-more, .pt3 .pt3-more:hover, .pt3 .pt3-more:focus, .pt3 .pt3-more:active { width: 28px; height: 28px; padding: 0; border: 0; border-radius: 0; background: transparent; color: var(--pt-ink-3); font: 600 16px/28px inherit; font-family: inherit; box-shadow: none; cursor: pointer; }
.pt3 .pt3-more:hover, .pt3 .pt3-more:focus-visible, .pt3 .pt3-more[aria-expanded=true] { background: var(--pt-fill-control); color: var(--pt-ink); }
.pt3 .pt3-moremenu { position: absolute; right: 0; top: calc(100% + 4px); z-index: 30; min-width: 190px; background: var(--pt-surface); border: 1px solid var(--pt-border-strong); box-shadow: 0 6px 18px rgba(26, 26, 26, .08); text-align: left; }
.pt3 .pt3-moremenu form { margin: 0; }
.pt3 .pt3-moremenu a, .pt3 .pt3-moremenu__b, .pt3 .pt3-moremenu__b:hover, .pt3 .pt3-moremenu__b:focus, .pt3 .pt3-moremenu__b:active { display: block; width: 100%; padding: 9px 12px; font-family: inherit; font-size: 13px; font-weight: 400; color: var(--pt-ink); background: var(--pt-surface); border: 0; border-top: 1px solid var(--pt-border); border-radius: 0; text-align: left; text-decoration: none; box-shadow: none; text-transform: none; letter-spacing: 0; cursor: pointer; box-sizing: border-box; }
.pt3 .pt3-moremenu > :first-child, .pt3 .pt3-moremenu > :first-child .pt3-moremenu__b { border-top: 0; }
.pt3 .pt3-moremenu a:hover, .pt3 .pt3-moremenu__b:hover, .pt3 .pt3-moremenu__b:focus-visible { background: var(--pt-fill-control); color: var(--pt-ink); }
.pt3 .pt3-mnone { padding: 14px 16px; margin: 0; }
@media (max-width: 760px) {
	.pt3 .pt3-fbar { flex-direction: column; }
	.pt3 .pt3-sgm { height: 38px; }
	.pt3 .pt3-sgm button { flex: 1; padding: 0 6px; }
	.pt3 .pt3-mr { grid-template-columns: 36px 1fr auto 28px; gap: 10px; padding: 10px 12px; }
	.pt3 .pt3-mr--hd { display: none; }
	.pt3 #pt-members-list .pt3-mr:first-child { border-top: 0; }
	.pt3 .pt3-mr__jn, .pt3 .pt3-mr__role { display: none; }
	.pt3 .pt3-req { flex-wrap: wrap; }
	.pt3 .pt3-req__tx { flex-basis: calc(100% - 48px); }
}
@media (max-width: 760px) {
	.pt3 .pt3-mr { grid-template-columns: 36px 1fr auto auto 28px; }
	.pt3 .pt3-mr__role { display: block; }
}
/* full-width tabs share the grid's gutter; old member-row rules (!important, Sep) flattened */
.pt3 .pt3-wide { max-width: 1280px; margin: 0 auto; padding: 22px 36px 48px; box-sizing: border-box; }
.pt3 .pt-member-row.pt3-mr { border: 0 !important; border-top: 1px solid var(--pt-border) !important; padding: 11px 16px !important; margin: 0 !important; background: var(--pt-surface) !important; border-radius: 0 !important; box-shadow: none !important; }
@media (max-width: 760px) {
	.pt3 .pt3-wide { padding: 14px 14px 40px; }
	.pt3 .pt-member-row.pt3-mr { padding: 10px 12px !important; }
	.pt3 #pt-members-list .pt-member-row.pt3-mr:first-child { border-top: 0 !important; }
}
/* tribe-page.css (Sep) puts !important on .pt-msort-btn; the sort JS needs the class, so answer in kind inside the v3 segment. */
.pt3 .pt3-sgm .pt-msort-btn { font-size: 13px !important; padding: 0 12px !important; border: 0 !important; border-left: 1px solid var(--pt-border-strong) !important; background: var(--pt-surface) !important; color: var(--pt-ink) !important; border-radius: 0 !important; }
.pt3 .pt3-sgm .pt-msort-btn:first-child { border-left: 0 !important; }
.pt3 .pt3-sgm .pt-msort-btn:hover, .pt3 .pt3-sgm .pt-msort-btn:focus-visible { background: var(--pt-fill-control) !important; color: var(--pt-ink) !important; }
.pt3 .pt3-sgm .pt-msort-btn.is-active, .pt3 .pt3-sgm .pt-msort-btn.is-active:hover, .pt3 .pt3-sgm .pt-msort-btn.is-active:focus { background: var(--pt-fill-primary) !important; color: var(--pt-on-primary) !important; }

/* ── Media tab ── */
.pt3 .pt3-mgrid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 6px; }
.pt3 .pt3-mgrid__i { display: block; aspect-ratio: 4 / 3; position: relative; background: var(--pt-surface-dim) center / cover no-repeat; }
.pt3 .pt3-mgrid__i:hover { outline: 2px solid var(--pt-ink); outline-offset: -2px; }
.pt3 .pt3-mgrid__i span { position: absolute; right: 6px; bottom: 6px; background: rgba(26, 26, 26, .85); color: #fff; font: 11px var(--pt-mono); padding: 2px 5px; }
@media (max-width: 760px) { .pt3 .pt3-mgrid { grid-template-columns: repeat(3, 1fr); gap: 4px; } }
/* §5a, stated on the pt- class each button carries (GP's inline button:hover/:focus is 0,1,1) */
.pt3 .pt3-sg .pt-invite-btn:hover, .pt3 .pt3-sg .pt-invite-btn:focus, .pt3 .pt3-sg .pt-invite-btn:active { background: var(--pt-fill-control); color: var(--pt-ink); }
.pt3 .pt3-sg .pt-invite-btn.is-active, .pt3 .pt3-sg .pt-invite-btn.is-active:hover, .pt3 .pt3-sg .pt-invite-btn.is-active:focus, .pt3 .pt3-sg .pt-invite-btn.is-active:active { background: var(--pt-fill-primary); color: var(--pt-on-primary); }
.pt3 .pt-event-cancel-btn:hover, .pt3 .pt-event-cancel-btn:focus, .pt3 .pt-event-cancel-btn:active { background: var(--pt-fill-control); color: var(--pt-ink); }
.pt3 .pt-event-cal-btn:hover, .pt3 .pt-event-cal-btn:focus, .pt3 .pt-event-cal-btn:active { background: transparent; color: var(--pt-ink); }
.pt3 .pt-ics-download:hover, .pt3 .pt-ics-download:focus, .pt3 .pt-ics-download:active { background: var(--pt-fill-control); color: var(--pt-ink); }
.pt3 .pt-event-edit-btn:hover, .pt3 .pt-event-edit-btn:focus, .pt3 .pt-event-edit-btn:active,
.pt3 .pt-event-delete-btn:hover, .pt3 .pt-event-delete-btn:focus, .pt3 .pt-event-delete-btn:active,
.pt3 .pt-event-pin-btn:hover, .pt3 .pt-event-pin-btn:focus, .pt3 .pt-event-pin-btn:active { background: transparent; color: var(--pt-ink); }

/* Photos from members — albums tagged to a past event (Profile Garage brief §4, 9 Oct). */
.pt3-albs { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; padding: 4px 0 14px; border-bottom: 1px solid #E4E2DB; }
.pt3-albs__h { flex-basis: 100%; font-size: 12px; font-weight: 600; color: #5C5A54; }
.pt3-albs a.pt3-albs__a, .pt3-albs a.pt3-albs__a:hover { display: flex; align-items: center; gap: 10px; min-width: 0; padding: 6px 10px 6px 6px; border: 1px solid #E4E2DB; background: #fff; color: #1A1A1A; text-decoration: none; }
.pt3-albs a.pt3-albs__a:hover { border-color: #C9C7BF; }
.pt3-albs__im { width: 56px; height: 42px; flex: none; background: #3a3d40 center / cover no-repeat; }
.pt3-albs__t { display: flex; flex-direction: column; min-width: 0; font-size: 13px; line-height: 1.3; }
.pt3-albs__t small { font-size: 12px; color: #5C5A54; }
/* Joined menu: what Highlights covers, under its name (tribe alerts, 10 Oct 2026). */
.pt3 .pt-gh-joined-item .pt3-nl { display: flex; flex-direction: column; gap: 1px; text-align: left; }
.pt3 .pt-gh-joined-item .pt3-nl small { font-size: 11.5px; color: var(--pt-ink-2, #5C5A54); font-weight: 400; line-height: 1.3; }
