/* Final semantic metadata refinements; labels remain accessible in the DOM. */
html body.wknd-premium .wknd-premium-label-text,
html body.wknd-premium .ge-meta-label {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
@media screen {
html body.wknd-premium.wknd-brand.wknd-event-detail .ev-hdr .ev-mi {
  grid-template-columns: 22px minmax(0, 1fr);
}
html body.wknd-premium.wknd-brand.wknd-event-detail .ev-mi::before,
html body.wknd-premium.wknd-brand.wknd-event-detail .ev-icon::before,
html body.wknd-premium.wknd-brand.wknd-event-detail .ev-icon::after {
  content: none !important;
  display: none !important;
}
html body.wknd-premium.wknd-brand.wknd-event-detail .ev-mi .ev-icon {
  color: #21383C !important;
  background: #DCE7D9 !important;
  border-color: #D9DED2 !important;
}
html body.wknd-premium.wknd-goer-flow .gh {
  background: #DCE7D9 !important;
  border-color: #D9DED2 !important;
}
}
/*
 * WKND premium presentation — load last, opt in with body.wknd-premium.
 * Warm editorial / task-led layout. Values originate in yeswknd.com, not the
 * older violet product theme or the green modal fixture.
 * No global element repaint, display reset, media filter, or nav sizing.
 */
@font-face {
  font-family: "WKND Manrope";
  src: url("/static/fonts/editorial/Manrope-Variable.ttf") format("truetype");
  font-style: normal;
  font-weight: 200 800;
  font-display: swap;
}

/* Interactive forms must not change font metrics after their first paint.
   Preloaded on these two routes; a slow response is used on the next navigation,
   never swapped underneath already visible inputs or loading reservations. */
@font-face {
  font-family: "WKNDSettledManrope";
  src: url("/static/fonts/editorial/Manrope-Variable.ttf") format("truetype");
  font-style: normal;
  font-weight: 200 800;
  font-display: optional;
}

body.wknd-premium:is(.wknd-screen-vendor-setup,.wknd-screen-connections) {
  --premium-font: WKNDSettledManrope, system-ui, sans-serif;
  --wknd-brand-font: WKNDSettledManrope, system-ui, sans-serif;
  --wknd-public-sans: WKNDSettledManrope, system-ui, sans-serif;
}

@media screen {
body.wknd-premium {
  --premium-ink: #21383C;
  --premium-muted: #52676A;
  --premium-paper: #FBF6EB;
  --premium-surface: #FFFDF8;
  --premium-line: #D9DED2;
  --premium-clay: #BD5B45;
  --premium-gold: #E7B94F;
  --premium-sage: #DCE7D9;
  --premium-wash: color-mix(in srgb, #DCE7D9 38%, #FFFDF8);
  --premium-gold-wash: color-mix(in srgb, #E7B94F 16%, #FFFDF8);
  --premium-clay-wash: color-mix(in srgb, #BD5B45 9%, #FFFDF8);
  --premium-shadow: 0 4px 20px rgb(33 56 60 / .055);
  --premium-font: "WKND Manrope", "Manrope", "Satoshi", ui-sans-serif, system-ui, sans-serif;
  --wknd-brand-font: var(--premium-font);
  --wknd-public-sans: var(--premium-font);
  --font-body: var(--premium-font);
  --font-display: var(--premium-font);
  --wknd-brand-ink: var(--premium-ink);
  --wknd-brand-muted: var(--premium-muted);
  --wknd-brand-paper: var(--premium-paper);
  --wknd-brand-card: var(--premium-surface);
  --wknd-brand-line: var(--premium-line);
  --wknd-brand-wash: var(--premium-wash);
  /* Legacy accent aliases stay dark enough for existing light text. Only
     explicitly enumerated primary controls below receive gold + ink. */
  --wknd-brand-violet: var(--premium-ink);
  --wknd-brand-guava: var(--premium-clay);
  --wknd-brand-pink: var(--premium-clay-wash);
  --wknd-brand-blue: var(--premium-muted);
  --wknd-brand-sun: var(--premium-gold);
  --wknd-brand-shadow: var(--premium-shadow);
  --wknd-work-paper: var(--premium-paper) !important;
  --wknd-work-surface: var(--premium-surface) !important;
  --wknd-work-ink: var(--premium-ink) !important;
  --wknd-work-copy: var(--premium-muted) !important;
  --wknd-work-line: var(--premium-line) !important;
  --wknd-work-plum: var(--premium-ink) !important;
  --wknd-work-guava: var(--premium-clay) !important;
  --wknd-ui-primary: var(--premium-ink);
  --wknd-ui-primary-hover: var(--premium-muted);
  --wknd-ui-paper: var(--premium-paper);
  --wknd-ui-card: var(--premium-surface);
  --wknd-ui-ink: var(--premium-ink);
  --wknd-ui-muted: var(--premium-muted);
  --wknd-ui-line: var(--premium-line);
  --wknd-ui-focus: var(--premium-clay);
  --wknd-craft-ink: var(--premium-ink);
  --wknd-craft-muted: var(--premium-muted);
  --wknd-craft-paper: var(--premium-paper);
  --wknd-craft-card: var(--premium-surface);
  --wknd-craft-line: var(--premium-line);
  --wknd-craft-clay: var(--premium-clay);
  --wknd-craft-sun: var(--premium-gold);
  --wknd-craft-sage: var(--premium-sage);
  --wknd-craft-lilac: var(--premium-wash);
  --wknd-craft-focus: var(--premium-clay);
  --wknd-craft-action: var(--premium-ink);
  --entry-ink: var(--premium-ink);
  --entry-muted: var(--premium-muted);
  --entry-paper: var(--premium-paper);
  --entry-surface: var(--premium-surface);
  --entry-line: var(--premium-line);
  --entry-coral: var(--premium-clay);
  --entry-sun: var(--premium-gold);
  --entry-lavender: var(--premium-wash);
  --entry-lavender-ink: var(--premium-ink);
  --entry-aqua: var(--premium-sage);
  --public-ink: var(--premium-ink);
  --public-muted: var(--premium-muted);
  --public-paper: var(--premium-paper);
  --public-line: var(--premium-line);
  --public-coral: var(--premium-clay);
  --public-sun: var(--premium-gold);
  --public-lavender: var(--premium-wash);
  --public-aqua: var(--premium-sage);
  font-family: var(--premium-font);
  -webkit-font-smoothing: antialiased;
}

/* Canvas opt-in is deliberately limited to product renderer families. Public
   vendor themes, field-kit/print/QR and media canvases are not canvas targets. */
html body.wknd-premium:is(
  .wknd-events-flow,.wknd-vendors-directory,.wknd-event-detail,.wknd-goer-flow,
  .wknd-screen-vendor-workspace,.wknd-vendor-setup,.eco-page,
  .wknd-organizer-flow,.wknd-entry,.wknd-screen-signin,
  .wknd-screen-application,.wknd-screen-invitation,.wknd-screen-application-status,
  .wknd-invitation-recovery,.wknd-goer-account,.wknd-organizer-account,
  .wknd-booth-details,.wknd-screen-vendor-settings
) {
  color: var(--premium-ink) !important;
  background: var(--premium-paper) !important;
  font-family: var(--premium-font);
}

/* Discovery and My Events: alias the actual renderer-local namespaces too. */
html body.wknd-premium:is(.wknd-events-flow,.wknd-vendors-directory,.wknd-event-detail,.wknd-goer-flow) {
  --goer-ink: var(--premium-ink);
  --goer-muted: var(--premium-muted);
  --goer-paper: var(--premium-paper);
  --goer-surface: var(--premium-surface);
  --goer-line: var(--premium-line);
  --goer-violet: var(--premium-ink);
  --goer-guava: var(--premium-clay);
  --goer-saffron: var(--premium-gold);
  --ed-ink: var(--premium-ink);
  --ed-muted: var(--premium-muted);
  --ed-paper: var(--premium-paper);
  --ed-card: var(--premium-surface);
  --ed-line: var(--premium-line);
  --ed-violet: var(--premium-ink);
  --ed-coral: var(--premium-clay);
  --final-ink: var(--premium-ink);
  --final-muted: var(--premium-muted);
  --final-paper: var(--premium-paper);
  --final-surface: var(--premium-surface);
  --final-line: var(--premium-line);
  --final-violet: var(--premium-ink);
  --final-guava: var(--premium-clay);
  --wknd-event-paper: var(--premium-paper);
  --wknd-event-card: var(--premium-surface);
  --wknd-event-ink: var(--premium-ink);
  --wknd-event-muted: var(--premium-muted);
  --wknd-event-line: var(--premium-line);
  --wknd-event-coral: var(--premium-clay);
  --wknd-event-sun: var(--premium-gold);
  --wknd-event-sage: var(--premium-sage);
  --wknd-event-purple: var(--premium-ink);
}
html body.wknd-premium :is(.ev-hero-title,.vd-hero-title,.gh-title,.ev-nm) {
  color: var(--premium-ink) !important;
  font-family: var(--premium-font) !important;
  font-weight: 800;
  letter-spacing: -.05em !important;
  line-height: 1.08 !important;
}
html body.wknd-premium :is(.ev-hero,.vd-hero,.gh) {
  background: var(--premium-paper) !important;
}
html body.wknd-premium :is(.ev-card,.vd-card,.ev-vendor-card,.gl-card,.ge) {
  border-color: var(--premium-line) !important;
  background: var(--premium-surface) !important;
  color: var(--premium-ink);
  border-radius: 16px !important;
  box-shadow: var(--premium-shadow) !important;
}
html body.wknd-premium :is(.ev-card-body,.vd-card) { padding: clamp(16px, 2vw, 24px); }
html body.wknd-premium :is(.ev-card-name,.vd-card-name,.ge-name) {
  color: var(--premium-ink) !important;
  font-family: var(--premium-font);
  letter-spacing: -.035em;
  line-height: 1.22;
}
html body.wknd-premium :is(
  .ev-card-date,.ev-card-loc,.ev-card-desc,.ev-vendor-meta,.ev-vendor-bio,
  .ev-vendor-city,.vd-card-cat,.vd-card-city,.vd-card-bio,.ge-meta-row,
  .gh-sub,.gl-hint,.ge-empty-sub,.ev-rsvp-sub
) { color: var(--premium-muted) !important; }
html body.wknd-premium :is(
  .ev-card-img,.ev-card-img-placeholder,.vd-avatar,.ev-ec-type-badge,
  .ev-content-tabs,.ev-published-highlight,.vd-cats-wrap,.vd-footer,
  .gl-account-benefit,.ge-verify,.ge.past
) {
  background: var(--premium-wash) !important;
  border-color: var(--premium-line) !important;
}
html body.wknd-premium :is(.ev-card-img-placeholder,.vd-avatar,.ev-ec-type-badge) {
  color: var(--premium-ink) !important;
}
html body.wknd-premium :is(
  .ev-card-going,.ev-card-follow,.vd-card-cta,.vd-cat-pill,
  .ev-filter-open,.ev-filter-control,.ev-search-input,.vd-search-input,
  .ev-loc-field,.gl-input,.ge-verify-input,.ge-cta.sec
) {
  background: var(--premium-surface) !important;
  border-color: var(--premium-line) !important;
  color: var(--premium-ink) !important;
  font-family: var(--premium-font) !important;
}
html body.wknd-premium :is(
  .vd-cat-pill.active,.ev-filter-open.has-filter,.ev-filter-control.is-active,
  .ev-card-going.active,.ev-card-follow.active
) {
  background: var(--premium-sage) !important;
  border-color: var(--premium-muted) !important;
  color: var(--premium-ink) !important;
}
html body.wknd-premium :is(.ev-search-ic,.vd-search-icon,.ev-filter-control-label,.ev-filter-desc) {
  color: var(--premium-muted) !important;
}
html body.wknd-premium :is(.ev-empty,.ge-empty,.eco-empty,.wknd-empty,.wknd-empty-state) {
  border-color: var(--premium-line) !important;
  background: var(--premium-wash) !important;
  color: var(--premium-muted);
  border-radius: 16px;
}

/* Platform-owned public/owner profile chrome only. Do not map --primary,
   --accent, carousel art, portfolio tiles, pay codes, or vendor theme tokens. */
html body.wknd-premium.wknd-public-entry {
  --final-ink: var(--premium-ink);
  --final-muted: var(--premium-muted);
  --final-paper: var(--premium-paper);
  --final-surface: var(--premium-surface);
  --final-line: var(--premium-line);
  --final-violet: var(--premium-ink);
  --final-guava: var(--premium-clay);
}
html body.wknd-premium.wknd-public-entry :is(.topbar,.svp-owner-bar) {
  background: var(--premium-surface) !important;
  border-color: var(--premium-line) !important;
  font-family: var(--premium-font);
}
html body.wknd-premium.wknd-public-entry :is(.topbar-brand,.topbar-share,.svp-browse-link) {
  color: var(--premium-ink) !important;
}
html body.wknd-premium.wknd-public-entry :is(.fsvp-sec-title,.fsvp-vendor-name) {
  font-family: var(--premium-font);
  letter-spacing: -.045em;
}
html body.wknd-premium :is(
  .fsvp-bio-text,#svp-bio-pull,#fsvp-bio-teaser,.vp-intro,.fsvp-item-sub,
  .ev-desc,.event-desc,#ev-detail-desc
) {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  line-height: 1.65;
}

/* Vendor workspace: preserve the private/public preview boundary and all
   owner actions. Override earlier hard-coded plum only on named chrome. */
html body.wknd-premium.wknd-screen-vendor-workspace {
  --wknd-canvas: var(--premium-paper);
  --wknd-card: var(--premium-surface);
  --wknd-line: var(--premium-line);
  --wknd-ink: var(--premium-ink);
  --wknd-copy: var(--premium-muted);
}
html body.wknd-premium.wknd-screen-vendor-workspace :is(.vh-top,.vh-body) {
  background: var(--premium-paper) !important;
  border-color: var(--premium-line) !important;
}
html body.wknd-premium.wknd-screen-vendor-workspace :is(
  .vh-readiness,.vh-decision-card,.vh-launch-surface,.vh-public-page-actions,
  .vh-my-page-tools,.vh-page-tools,.vh-page-tool,.vh-activity,.vh-social-card,
  .prof-strength,.momentum,#vh-publication-panel,.vh-owner-preview,.vh-atile-row
) {
  background: var(--premium-surface) !important;
  border-color: var(--premium-line) !important;
  box-shadow: var(--premium-shadow) !important;
}
html body.wknd-premium.wknd-screen-vendor-workspace .vh-profile {
  background: var(--premium-ink) !important;
}
html body.wknd-premium.wknd-screen-vendor-workspace :is(.vh-stats,.vh-qa) {
  background: var(--premium-wash) !important;
  border-color: var(--premium-line) !important;
}
html body.wknd-premium.wknd-screen-vendor-workspace :is(
  .vh-sv,.vh-decision-title,.vh-public-page-kicker,.vh-decision-kicker,
  .vh-page-status,.vh-page-tools-group h3
) { color: var(--premium-ink) !important; }
html body.wknd-premium.wknd-screen-vendor-workspace #vh-panel-profile
  :is(.vh-name,.vh-page-tools a,#vh-page-status-label,.vh-page-status a,.vh-page-status button) {
  color: var(--premium-ink) !important;
  border-color: var(--premium-line) !important;
}
html body.wknd-premium.wknd-screen-vendor-workspace #vh-panel-profile
  :is(.vh-handle,.vh-bio,.ring-score-hint,.vh-sl) { color: var(--premium-muted) !important; }
html body.wknd-premium.wknd-screen-vendor-workspace #bento-intel .vh-activity {
  background: var(--premium-wash) !important;
  border-color: var(--premium-line) !important;
}
html body.wknd-premium.wknd-screen-vendor-workspace #vh-panel-profile .vh-chip {
  background: var(--premium-sage) !important;
  border-color: var(--premium-line) !important;
  color: var(--premium-ink) !important;
}
html body.wknd-premium.wknd-screen-vendor-workspace #vh-publication-panel[data-state="success"] {
  border-left-color: var(--premium-muted) !important;
}
html body.wknd-premium.wknd-screen-vendor-workspace #vh-publication-copy {
  background: var(--premium-wash) !important;
  border-color: var(--premium-line) !important;
  color: var(--premium-ink) !important;
}
html body.wknd-premium.wknd-screen-vendor-workspace #vh-panel-profile .vh-page-status,
html body.wknd-premium.wknd-screen-vendor-workspace #vh-panel-profile .vh-page-publication-state {
  border-color: var(--premium-line);
  background: var(--premium-surface);
  color: var(--premium-ink);
}
html body.wknd-premium.wknd-screen-vendor-workspace #vh-panel-profile .vh-page-status [role="switch"]::before {
  border-color: var(--premium-line);
  background: color-mix(in srgb, var(--premium-line) 42%, var(--premium-paper));
}
html body.wknd-premium.wknd-screen-vendor-workspace #vh-panel-profile
  .vh-page-status [role="switch"][aria-checked="true"]::before {
  border-color: var(--premium-muted);
  background: var(--premium-sage);
}
html body.wknd-premium.wknd-screen-vendor-workspace #vh-panel-profile .vh-page-status [role="switch"]::after {
  background: var(--premium-surface);
  box-shadow: 0 1px 3px rgb(33 56 60 / .18);
}
html body.wknd-premium.wknd-screen-vendor-workspace #vh-panel-profile .vh-page-status [role="switch"]:focus-visible,
html body.wknd-premium .wknd-preview-toggle:focus-visible {
  outline-color: var(--premium-clay);
}
html body.wknd-premium .wknd-preview-toggle {
  border-color: var(--premium-line);
  background: var(--premium-surface);
  color: var(--premium-ink);
}
html body.wknd-premium .wknd-preview-toggle[aria-expanded="false"] {
  background: var(--premium-wash);
  border-color: var(--premium-muted);
}
html body.wknd-premium.wknd-screen-vendor-workspace #bento-discover .tile-disc-cta {
  border-top-color: var(--premium-line);
  background: var(--premium-surface);
}
html body.wknd-premium.wknd-screen-vendor-workspace #bento-discover .wknd-event-fact-row {
  border-color: var(--premium-line);
  background: var(--premium-wash);
  color: var(--premium-ink);
}

/* Connections and private ecosystem panels. Success/error token namespaces
   are intentionally untouched. */
html body.wknd-premium.eco-page {
  --eco-paper: var(--premium-paper);
  --eco-card: var(--premium-surface);
  --eco-ink: var(--premium-ink);
  --eco-muted: var(--premium-muted);
  --eco-line: var(--premium-line);
  --eco-wash: var(--premium-wash);
  --eco-violet: var(--premium-ink);
  --eco-blue: var(--premium-muted);
  --eco-guava: var(--premium-clay);
  --eco-sun: var(--premium-gold);
  --eco-pink: var(--premium-clay-wash);
  --eco-font: var(--premium-font);
  --eco-shadow: var(--premium-shadow);
}
html body.wknd-premium :is(.eco-panel,.eco-card,.bd-card) {
  border-color: var(--premium-line) !important;
  background: var(--premium-surface) !important;
  border-radius: 16px;
  box-shadow: var(--premium-shadow);
}

/* Account settings: danger/status variables retain their native values. */
html body.wknd-premium:is(.wknd-organizer-account,.wknd-goer-account) {
  --wknd-organizer-account-violet: var(--premium-ink);
  --wknd-organizer-account-ink: var(--premium-ink);
  --wknd-organizer-account-muted: var(--premium-muted);
  --wknd-organizer-account-line: var(--premium-line);
  --wknd-goer-account-violet: var(--premium-ink);
  --wknd-goer-account-ink: var(--premium-ink);
  --wknd-goer-account-muted: var(--premium-muted);
  --wknd-goer-account-line: var(--premium-line);
}
html body.wknd-premium :is(
  .wknd-organizer-account__card,.wknd-organizer-account__auth-card,
  .wknd-goer-account__card,.wknd-goer-account__auth-card,
  .vs-section,.vs-identity,.vs-method
) {
  background: var(--premium-surface) !important;
  border-color: var(--premium-line) !important;
  box-shadow: var(--premium-shadow);
}
html body.wknd-premium :is(.vs-section-title,.vs-label,.vs-identity-value) {
  color: var(--premium-ink) !important;
}
html body.wknd-premium :is(.vs-hint,.vs-help-copy,.vs-identity-label) {
  color: var(--premium-muted) !important;
}

/* Organizer native workspace/event hub. Tokens declared on the pipeline node
   must be mapped there (body inheritance alone cannot replace them). */
html body.wknd-premium.wknd-organizer-flow #gm-mission-control #gm-panel-pipeline.wknd-vendors-panel {
  --wknd-vendors-paper: var(--premium-paper);
  --wknd-vendors-card: var(--premium-surface);
  --wknd-vendors-line: var(--premium-line);
  --wknd-vendors-ink: var(--premium-ink);
  --wknd-vendors-copy: var(--premium-muted);
  --wknd-vendors-accent: var(--premium-ink);
  --wknd-vendors-wash: var(--premium-wash);
  font-family: var(--premium-font);
}
html body.wknd-premium.wknd-organizer-flow #gm-mission-control :is(
  .gm-gwo-card,#gm-share-card,.gm-tier,.wknd-vendors-summary,
  .gm-ph4-insight,.gm-ph4-tile
) {
  border-color: var(--premium-line) !important;
  color: var(--premium-ink);
}
html body.wknd-premium.wknd-organizer-flow #gm-mission-control :is(
  .gm-gwo-card,#gm-share-card
) {
  background: var(--premium-surface) !important;
  box-shadow: var(--premium-shadow);
}
html body.wknd-premium.wknd-organizer-flow #gm-mission-control :is(
  .gm-gwo-title,.gm-ops-section-head,.gm-tier-title,.gm-ph4-fill-title,
  .gm-ph4-tile-val
) { color: var(--premium-ink) !important; }
html body.wknd-premium.wknd-organizer-flow #gm-mission-control :is(
  .gm-gwo-sub,.gm-ph4-tile-sub,.gm-ph4-tile-lbl
) { color: var(--premium-muted) !important; }
html body.wknd-premium .ew-task-tabs .ew-task-family {
  border-color: var(--premium-line);
}
html body.wknd-premium .ew-task-tabs .ew-task-family-label {
  color: var(--premium-muted);
  font-family: var(--premium-font);
}

/* Native onboarding, sign-in, application and recovery families. No step,
   error, pending, consent, publication or verified visibility is changed. */
html body.wknd-premium :is(.lg-wrap,.vw-outer,.vs-outer,.sw-outer) {
  background: var(--premium-paper) !important;
  color: var(--premium-ink);
  font-family: var(--premium-font);
}
html body.wknd-premium :is(.lg-card,.signin-card,.form-card,.hero-card,.org-card,.event-card,.result-card) {
  background: var(--premium-surface) !important;
  border-color: var(--premium-line) !important;
  border-radius: 18px;
  box-shadow: var(--premium-shadow) !important;
}
html body.wknd-premium :is(
  .lg-headline,.lg-wordmark,.card-title,.event-name,.event-title,
  .hero-title,.vs-h1,.vw-h1,.sw-h1,.state-title
) {
  color: var(--premium-ink) !important;
  font-family: var(--premium-font) !important;
  letter-spacing: -.045em;
  line-height: 1.12;
}
html body.wknd-premium :is(
  .lg-account-note,.lg-hint,.lg-sub,.card-sub,.vs-sub,.vw-sub,.sw-sub,
  .field-hint,.hosted-by,.event-meta-row,.form-sub,.state-sub
) { color: var(--premium-muted) !important; }
html body.wknd-premium :is(
  .lg-eyebrow,.card-eyebrow,.event-eyebrow,.hero-eyebrow,
  .vs-lbl,.vw-lbl,.sw-lbl,.vs-step-lbl
) {
  color: var(--premium-clay) !important;
  font-family: var(--premium-font);
  font-size: 11px;
  font-weight: 750;
  letter-spacing: .09em;
}
html body.wknd-premium :is(.vs-header,.vw-header,.sw-header,.si-nav,.wknd-brand-bar) {
  background: var(--premium-paper) !important;
  border-color: var(--premium-line) !important;
}
html body.wknd-premium :is(.vs-seg.on,.vw-seg.on,.sw-seg.on) {
  background: var(--premium-gold) !important;
}
html body.wknd-premium :is(.vs-cat-tile,.vs-mini-card,.sw-profile-card,.sw-w0-tile) {
  background: var(--premium-surface) !important;
  border-color: var(--premium-line) !important;
}
html body.wknd-premium .vs-cat-tile.selected {
  background: var(--premium-wash) !important;
  border-color: var(--premium-muted) !important;
}
html body.wknd-premium :is(.lg-role-link a,.vw-browse-first,.vs-btn-link) {
  color: var(--premium-ink) !important;
  text-underline-offset: 4px;
}

/* Explicit field classes avoid painting radio/check, uploaded-photo handles,
   swatches, hidden upload inputs, or third-party payment fields. */
html body.wknd-premium :is(
  .lg-input,.si-input,.vs-inp,.vs-textarea,.vs-input,.vw-inp,
  .vw-phone-inp,.vw-otp-inp,.sw-inp,.sw-ig-bare,.vs-ig-inp
) {
  background: var(--premium-surface) !important;
  border-color: var(--premium-line) !important;
  color: var(--premium-ink) !important;
  font-family: var(--premium-font) !important;
  font-size: 16px;
  border-radius: 10px;
}
html body.wknd-premium :is(
  .lg-input,.si-input,.vs-inp,.vs-textarea,.vs-input,.vw-inp,.sw-inp,
  .ev-search-input,.vd-search-input,.gl-input,.ge-verify-input
):focus {
  border-color: var(--premium-muted) !important;
  box-shadow: 0 0 0 3px rgb(220 231 217 / .7) !important;
}

/* Primary actions are semantic, not all buttons. The gold/ink pairing matches
   the landing site; destructive, cancellation and paid/verified states stay
   with their source renderer. Disabled controls never receive these paints. */
html body.wknd-premium :is(
  .wknd-btn-primary,.btn-pill-primary,.ev-card-cta,.ev-rsvp-primary-btn,
  .ev-rsvp-ticket,#apply-vend-btn,.vd-footer-link.host,
  .gl-btn,.ge-verify-btn,.ge-cta.pri,.ge-find,
  .qa-primary,.vh-decision-primary,.vh-readiness-action,.vh-public-page-primary,
  .vh-primary,.vh-btn-primary,.eco-button-primary,
  .vs-btn-pri,.vs-btn-primary,.vw-btn-pri,.sw-btn-pri,.lg-btn,
  .apply-entry-cta,.apply-jump,
  .wknd-organizer-account__button--primary,.wknd-goer-account__button--primary,
  .wknd-vendor-onboarding__continue
):not(:disabled):not([aria-disabled="true"]):not([data-state="success"]):not(.success) {
  background: var(--premium-gold) !important;
  border-color: var(--premium-gold) !important;
  color: var(--premium-ink) !important;
  box-shadow: none !important;
  font-family: var(--premium-font) !important;
  font-weight: 750;
  text-shadow: none;
}
html body.wknd-premium :is(
  .wknd-btn-primary,.btn-pill-primary,.ev-card-cta,.ev-rsvp-primary-btn,
  .qa-primary,.vh-decision-primary,.vs-btn-pri,.vw-btn-pri,.sw-btn-pri,
  .eco-button-primary,.lg-btn,.apply-entry-cta
):not(:disabled):not([aria-disabled="true"]):hover {
  background: color-mix(in srgb, var(--premium-gold) 90%, var(--premium-clay)) !important;
  border-color: var(--premium-gold) !important;
  color: var(--premium-ink) !important;
  filter: none;
}
html body.wknd-premium :is(
  .google-btn,.btn-google,.vw-google-btn,.lg-phone-trigger,.vw-phone-btn,
  .vs-btn-ghost,.vw-btn-sec,.qa-sec,.vh-public-page-secondary,
  .wknd-btn-ghost,.btn-pill-ghost,.gn-return,.gn-back
):not(:disabled):not([aria-disabled="true"]) {
  background: var(--premium-surface) !important;
  border-color: var(--premium-line) !important;
  color: var(--premium-ink) !important;
  box-shadow: none !important;
  font-family: var(--premium-font) !important;
}
html body.wknd-premium :is(.vh-icon-btn,.menu-button,.pricing-menu-button,.vp-card-kebab) {
  color: var(--premium-muted) !important;
  border-radius: 10px;
}
html body.wknd-premium :is(.vh-icon-btn,.menu-button,.pricing-menu-button,.vp-card-kebab):not(:disabled):hover {
  background: var(--premium-wash) !important;
  color: var(--premium-ink) !important;
}

/* Native event detail modal. Works with legacy direct children as well as the
   graduated semantic fact rows. The sheet is content-sized, bounded by the
   viewport, and scrolls even when artwork is absent or content is very long.
   The overlay's JS-owned display:none/flex is never overridden. */
html body.wknd-premium #ev-detail-modal {
  background: rgb(33 56 60 / .48) !important;
  align-items: flex-end !important;
  justify-content: center;
  padding: 0 !important;
}
html body.wknd-premium #ev-detail-modal > div {
  box-sizing: border-box;
  width: min(100%, 520px) !important;
  max-width: 520px !important;
  max-height: calc(100dvh - max(12px, env(safe-area-inset-top))) !important;
  height: auto;
  min-height: 0;
  overflow-y: auto !important;
  overscroll-behavior-y: contain;
  scrollbar-width: thin;
  scrollbar-color: var(--premium-line) var(--premium-paper);
  border: 1px solid var(--premium-line);
  border-bottom: 0;
  border-radius: 28px 28px 0 0 !important;
  background: var(--premium-paper) !important;
  color: var(--premium-ink);
  box-shadow: 0 -8px 48px rgb(33 56 60 / .15) !important;
  font-family: var(--premium-font);
  scroll-padding-block: 16px 160px;
}
html body.wknd-premium #ev-detail-hero {
  background: var(--premium-sage) !important;
}
html body.wknd-premium #ev-detail-img {
  object-fit: contain !important;
  object-position: center;
}
html body.wknd-premium #ev-detail-name {
  color: var(--premium-ink) !important;
  font-family: var(--premium-font);
  font-size: clamp(25px, 6.1vw, 31px) !important;
  font-weight: 800;
  letter-spacing: -.05em;
  line-height: 1.12 !important;
  overflow-wrap: anywhere;
  margin-block: 0 10px !important;
}
html body.wknd-premium :is(#ev-detail-meta,#ev-detail-host) {
  color: var(--premium-muted) !important;
  font-size: 13px !important;
  line-height: 1.5;
}
html body.wknd-premium :is(#ev-detail-type,#ev-detail-cat,#ev-detail-match) {
  background: var(--premium-wash) !important;
  border-color: var(--premium-line) !important;
  color: var(--premium-ink) !important;
  font-size: 12px !important;
  line-height: 1.5;
}
html body.wknd-premium #ev-detail-desc {
  white-space: pre-wrap !important;
  padding: 16px 0 !important;
  border-top: 1px solid var(--premium-line);
  border-radius: 0 !important;
  color: var(--premium-muted) !important;
  background: transparent !important;
  font-size: 14px !important;
}
html body.wknd-premium #ev-detail-seeking {
  flex-wrap: wrap;
  color: var(--premium-muted) !important;
  font-size: 12px !important;
  line-height: 1.5;
}
html body.wknd-premium #ev-detail-facts {
  gap: 12px !important;
  color: var(--premium-ink);
  background: var(--premium-wash) !important;
  border: 1px solid var(--premium-line);
  border-radius: 16px;
}
html body.wknd-premium .wknd-event-detail-content {
  padding: 22px clamp(18px, 5vw, 27px) 0 !important;
}
html body.wknd-premium .wknd-event-detail-content > hr {
  border-top-color: var(--premium-line) !important;
}
html body.wknd-premium #ev-detail-no-image {
  color: var(--premium-muted) !important;
}
html body.wknd-premium .wknd-event-fact-row {
  align-items: flex-start;
  gap: 11px;
  padding-block: 9px;
  color: var(--premium-ink);
  font-size: 13px;
  line-height: 1.5;
  overflow-wrap: anywhere;
}
html body.wknd-premium .wknd-event-fact-icon {
  display: inline-grid;
  place-items: center;
  align-items: center;
  justify-content: center;
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  border-radius: 11px;
  background: var(--premium-sage);
  color: var(--premium-ink);
}
html body.wknd-premium .wknd-event-fact-icon > svg {
  width: 20px;
  height: 20px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}
html body.wknd-premium .wknd-event-fact-value {
  min-width: 0;
  font-weight: 750;
  color: var(--premium-ink);
}
html body.wknd-premium .wknd-event-fact-secondary {
  margin-top: 2px;
  color: var(--premium-muted);
  font-size: 12px;
  font-weight: 500;
}
html body.wknd-premium .wknd-event-fact-row.ev-detail-missing .wknd-event-fact-value {
  color: var(--premium-muted);
  font-weight: 500;
}
html body.wknd-premium #ev-detail-modal :is(footer, div:has(> #ev-detail-cta)) {
  position: sticky;
  bottom: 0;
  z-index: 4;
  padding: 12px clamp(18px, 5vw, 27px) max(12px, env(safe-area-inset-bottom)) !important;
  border-top: 1px solid var(--premium-line);
  background: var(--premium-paper) !important;
}
html body.wknd-premium #ev-detail-cta:not(:disabled):not([aria-disabled="true"]) {
  background: var(--premium-gold) !important;
  color: var(--premium-ink) !important;
  border-color: var(--premium-gold) !important;
  border-radius: 13px !important;
  box-shadow: none !important;
  font: 750 14px/1.4 var(--premium-font) !important;
}
html body.wknd-premium :is(#ev-detail-open,#ev-detail-retry) {
  background: var(--premium-surface) !important;
  border-color: var(--premium-line) !important;
  color: var(--premium-ink) !important;
  font-family: var(--premium-font);
}

/* Shared semantic presentation for the parent's real SVG/date graduation.
   These are not replacements for text and do not manufacture content. */
body.wknd-premium .wknd-premium-icon {
  display: inline-block;
  width: 20px;
  height: 20px;
  flex: 0 0 20px;
  vertical-align: -.2em;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}
body.wknd-premium .wknd-premium-fact {
  color: var(--premium-ink);
  font: 650 13px/1.5 var(--premium-font);
  overflow-wrap: anywhere;
}
body.wknd-premium .wknd-premium-meta {
  color: var(--premium-muted);
  font: 500 12px/1.5 var(--premium-font);
  overflow-wrap: anywhere;
}

/* Shared native dialogs/feedback: preserve state colors and visibility.
   No [role=status] or .error/.success blanket repaint. */
html body.wknd-premium :is(
  .wknd-report-dialog,.wknd-organizer-account__dialog,.wknd-goer-account__dialog,
  .ev-rsvp-sheet,.lc-sheet
) {
  background: var(--premium-surface) !important;
  border-color: var(--premium-line) !important;
  color: var(--premium-ink);
  font-family: var(--premium-font);
  max-width: calc(100vw - 24px);
  max-height: calc(100dvh - 24px);
  overflow-y: auto;
  overscroll-behavior: contain;
}
html body.wknd-premium :is(.vh-toast,.vs-toast):not(.error):not(.success) {
  background: var(--premium-ink);
  color: var(--premium-surface);
  font-family: var(--premium-font);
}
html body.wknd-premium :is(.wknd-loading-panel,.eco-loading,.vs-loading-state) {
  border-color: var(--premium-line);
  font-family: var(--premium-font);
}
html body.wknd-premium :is(.wknd-loading-detail,.wknd-loading-meta,.wknd-action-elapsed) {
  color: var(--premium-muted);
}
html body.wknd-premium :is(.eco-skeleton-name,.vs-hub-skeleton,.vs-import-skel-item) {
  background: var(--premium-sage) !important;
}

/* CM venue pipeline and Instagram moderation have independent plain HTML
   renderers, so target their stable root structures rather than every .card. */
html body.wknd-premium:has(.cm-shell) {
  --ink: var(--premium-ink);
  --muted: var(--premium-muted);
  --paper: var(--premium-surface);
  --line: var(--premium-line);
  --violet: var(--premium-ink);
  --lav: var(--premium-wash);
  --lav2: var(--premium-sage);
  background: var(--premium-paper);
  color: var(--premium-ink);
}
html body.wknd-premium:has(.cm-shell) :is(.cm-topbar,.venue-card,.modal,.state-card) {
  background: var(--premium-surface);
  border-color: var(--premium-line);
  font-family: var(--premium-font);
}
html body.wknd-premium:has(.cm-shell) :is(.page-heading h1,.modal h2) {
  font-family: var(--premium-font);
  letter-spacing: -.04em;
}
html body.wknd-premium:has(#review-list) {
  background: var(--premium-paper);
  color: var(--premium-ink);
}
html body.wknd-premium:has(#review-list) :is(.review,.guidance) {
  background: var(--premium-surface);
  border-color: var(--premium-line);
  color: var(--premium-ink);
  box-shadow: var(--premium-shadow);
}
html body.wknd-premium:has(#review-list) .guidance {
  background: var(--premium-wash);
}
html body.wknd-premium:has(#review-list) button.request {
  background: var(--premium-wash);
  border-color: var(--premium-line);
  color: var(--premium-ink);
}
html body.wknd-premium:has(#review-list) > header {
  background: var(--premium-surface);
  border-color: var(--premium-line);
}
html body.wknd-premium:has(#review-list) :is(#refresh,button.approve):not(:disabled),
html body.wknd-premium:has(.cm-shell) .button-primary:not(:disabled) {
  background: var(--premium-gold);
  color: var(--premium-ink);
  border-color: var(--premium-gold);
  font-family: var(--premium-font);
}
html body.wknd-premium:has(.cm-shell) :is(.form-grid,.detail-fields,.inline-form)
  :is(input,select,textarea) {
  background: var(--premium-surface);
  color: var(--premium-ink);
  border-color: var(--premium-line);
  font-family: var(--premium-font);
}

/* Plain server-rendered admin overview/metrics. Status chips, moderation
   deny actions, dispute urgency and operational alert colors are not targets. */
html body.wknd-premium:has(.adm-grid) {
  background: var(--premium-paper);
  color: var(--premium-ink);
}
html body.wknd-premium:has(.adm-grid) :is(.adm-stat,.adm-section) {
  background: var(--premium-surface);
  color: var(--premium-ink);
  border-color: var(--premium-line);
  font-family: var(--premium-font);
  box-shadow: var(--premium-shadow);
}
html body.wknd-premium:has(.adm-grid) .adm-stat-val {
  color: var(--premium-ink);
  font-family: var(--premium-font);
  font-variant-numeric: tabular-nums;
}
html body.wknd-premium:has(.adm-grid) .adm-stat-lbl { color: var(--premium-muted); }
html body.wknd-premium:has(.adm-grid) .adm-section h2 {
  color: var(--premium-ink);
  letter-spacing: -.025em;
}

/* Shared shell and remaining organizer chrome. These are known application
   nodes, not wildcard card/button/heading recolors. */
html body.wknd-premium :is(.wknd-nav-wrap,.pricing-nav-wrap,.gn,.ev-nav,.vd-nav) {
  background: var(--premium-paper) !important;
  border-color: var(--premium-line) !important;
}
html body.wknd-premium :is(.wknd-nav-link,.ev-nav-link,.vd-nav-link) {
  color: var(--premium-ink) !important;
  font-family: var(--premium-font) !important;
}
html body.wknd-premium :is(.wknd-nav-link,.ev-nav-link,.vd-nav-link)[aria-current="page"] {
  background: var(--premium-wash) !important;
}
html body.wknd-premium :is(.wknd-flow,.wknd-page,.wknd-main) {
  background: var(--premium-paper);
}
html body.wknd-premium :is(.wknd-flow-card,.wknd-flow-state) {
  border-color: var(--premium-line);
  box-shadow: var(--premium-shadow);
}
html body.wknd-premium:has(> main.wknd-invitation-recovery) {
  background: var(--premium-paper) !important;
}
html body.wknd-premium:has(> main.wknd-invitation-recovery) .wknd-invitation-recovery {
  background: var(--premium-surface);
  border-color: var(--premium-line);
  box-shadow: var(--premium-shadow);
}
html body.wknd-premium:has(> main.wknd-invitation-recovery) .wknd-invitation-recovery a {
  background: var(--premium-gold);
  color: var(--premium-ink);
  box-shadow: none;
}
html body.wknd-premium #gm-mission-control,
html body.wknd-premium #gm-mission-control .gm-tabpanel {
  background-color: var(--premium-paper) !important;
  color: var(--premium-ink);
  font-family: var(--premium-font);
}
html body.wknd-premium #gm-mission-control :is(
  .gm-card,.card-body,.cc-header,.cc-meta-bar,.gm-trust-card,
  .gm-launch-preflight,.gm-ovw-command,.gm-setup-launch
) {
  background: var(--premium-surface) !important;
  border-color: var(--premium-line) !important;
  box-shadow: var(--premium-shadow) !important;
}
html body.wknd-premium #gm-mission-control :is(.gm-ovw-event-card,.gm-ovw-ec-body) {
  background: var(--premium-wash) !important;
  border-color: var(--premium-line) !important;
}
html body.wknd-premium #gm-mission-control :is(
  #gm-ovw-ec-name,.gm-ovw-ec-financial,.gm-ovw-ec-fill-btn,
  .gm-ovw-ec-edit,.gm-docs-title,.cc-title
) { color: var(--premium-ink) !important; }
html body.wknd-premium :is(#ew-subnav,.weh-header,.weh-toolbar) {
  background: var(--premium-surface) !important;
  border-color: var(--premium-line) !important;
  color: var(--premium-ink);
  font-family: var(--premium-font);
}
html body.wknd-premium #wknd-wizard.wknd-creation-composition {
  --wkw-ink: var(--premium-ink);
  --wkw-copy: var(--premium-muted);
  --wkw-paper: var(--premium-paper);
  --wkw-surface: var(--premium-surface);
  --wkw-line: var(--premium-line);
  --wkw-accent: var(--premium-ink);
  --wkw-secondary: var(--premium-clay);
}
html body.wknd-premium .chat-column,
html body.wknd-premium .active-board-column {
  background: var(--premium-paper);
  border-color: var(--premium-line);
}
html body.wknd-premium .message.user {
  background: var(--premium-ink);
  border-color: var(--premium-ink);
  color: var(--premium-surface);
}
html body.wknd-premium .message.ai {
  background: var(--premium-wash);
  border-color: var(--premium-line);
  color: var(--premium-ink);
}
html body.wknd-premium.wknd-screen-signin .btn-primary:not(:disabled):not([aria-disabled="true"]),
html body.wknd-premium.wknd-screen-application .submit-btn:not(:disabled):not([aria-disabled="true"]),
html body.wknd-premium.wknd-screen-invitation .submit-btn:not(:disabled):not([aria-disabled="true"]) {
  background: var(--premium-gold) !important;
  border-color: var(--premium-gold) !important;
  color: var(--premium-ink) !important;
  box-shadow: none !important;
  font-family: var(--premium-font);
}

/* Remaining standalone native renderers. Gates below use inspected DOM
   contracts, never URL-color heuristics or global .card/.btn selectors. */
body.wknd-premium .wknd-premium-label-text {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* Planner, reusable Quick Look fragment, pick list and dispatch dialogs. */
html body.wknd-premium:has(#ql-overlay),
html body.wknd-premium:has(#wknd-planit-form) {
  background: var(--premium-paper);
  color: var(--premium-ink);
}
html body.wknd-premium:has(#ql-overlay) :is(
  .planner-section,.planner-chip,.financial-terms,.ql-modal,.pl-drawer,
  .pl-card,.dispatch-modal
),
html body.wknd-premium #ql-content .draft-card,
html body.wknd-premium #wknd-planit-modal > div {
  background: var(--premium-surface);
  border-color: var(--premium-line);
  color: var(--premium-ink);
  box-shadow: var(--premium-shadow);
  font-family: var(--premium-font);
}
html body.wknd-premium #wknd-planit-form {
  background: var(--premium-surface);
  color: var(--premium-ink);
  border-color: var(--premium-line);
  font-family: var(--premium-font);
}
html body.wknd-premium:has(#ql-overlay) :is(
  .planner-section-head,.chip-name,.pl-title,.pl-card-name,.vendor-name,
  .dispatch-headline,.quicklook-why-label
) { color: var(--premium-ink); font-family: var(--premium-font); }
html body.wknd-premium:has(#ql-overlay) :is(
  .meta,.financial-terms-label,.pl-card-meta,.send-sub,.dispatch-foot
) { color: var(--premium-muted); }
html body.wknd-premium:has(#ql-overlay) :is(.quicklook-why,.vibe-tag,.pl-card-tag) {
  background: var(--premium-wash);
  border-color: var(--premium-line);
  color: var(--premium-ink);
}
html body.wknd-premium:has(#ql-overlay) :is(
  .send-invites,.dispatch-submit,.quicklook-cta
):not(:disabled):not([aria-disabled="true"]),
html body.wknd-premium .wknd-pi-primary:not(:disabled):not([aria-disabled="true"]) {
  background: var(--premium-gold);
  color: var(--premium-ink);
  border-color: var(--premium-gold);
  font-family: var(--premium-font);
}
html body.wknd-premium :is(.ql-modal,.dispatch-modal,.pl-drawer) {
  max-height: calc(100dvh - 24px);
  overflow-y: auto;
  overscroll-behavior: contain;
}
html body.wknd-premium:has(#ql-overlay) :is(.dispatch-input,.pl-close,.ql-close) {
  background: var(--premium-surface);
  color: var(--premium-ink);
  border-color: var(--premium-line);
}
/* Group-plan standalone document, identified by its stable join error node. */
html body.wknd-premium:has(#join-error):has(#event-back) {
  background: var(--premium-paper);
  color: var(--premium-ink);
}
html body.wknd-premium:has(#join-error):has(#event-back) :is(.nav,.card,.box) {
  background: var(--premium-surface);
  color: var(--premium-ink);
  border-color: var(--premium-line);
  font-family: var(--premium-font);
}

/* Recap is an independent native renderer. Stat state/modifier colors and
   flyer/avatar media remain untouched. /proposal redirects to /v/{slug};
   that real destination uses the public-profile rules above. */
html body.wknd-premium:has(.rc-hero) {
  background: var(--premium-paper);
  color: var(--premium-ink);
}
html body.wknd-premium:has(.rc-hero) :is(.rc-hero,.rc-section,.rc-chip) {
  background: var(--premium-surface);
  border-color: var(--premium-line);
  box-shadow: var(--premium-shadow);
}
html body.wknd-premium:has(.rc-hero) :is(.rc-nm,.rc-sec-hd,.rc-chip) {
  color: var(--premium-ink);
  font-family: var(--premium-font);
}
html body.wknd-premium:has(.rc-hero) :is(.rc-meta,.rc-ct,.rc-nav-link) {
  color: var(--premium-muted);
}
html body.wknd-premium:has(.rc-hero) .rc-share:not(:disabled) {
  background: var(--premium-gold);
  color: var(--premium-ink);
  border-color: var(--premium-gold);
}

/* Dispute and rating forms: do not repaint stars, yes/no selections,
   submitted badges, inline failures or dispute urgency. */
html body.wknd-premium:has(#dtype):has(#dnote),
html body.wknd-premium:has(#step-rate),
html body.wknd-premium:has(#v-list):has(#pg-done) {
  background: var(--premium-paper);
  color: var(--premium-ink);
}
html body.wknd-premium:has(#dtype):has(#dnote) .wknd-card,
html body.wknd-premium:has(#step-rate) .card,
html body.wknd-premium:has(#v-list):has(#pg-done) .v-row {
  background: var(--premium-surface);
  border-color: var(--premium-line);
  box-shadow: var(--premium-shadow);
  font-family: var(--premium-font);
}
html body.wknd-premium:has(#dtype):has(#dnote) :is(#dtype,#dnote),
html body.wknd-premium:has(#step-rate) #note,
html body.wknd-premium:has(#v-list):has(#pg-done) .note-input {
  background: var(--premium-surface);
  color: var(--premium-ink);
  border-color: var(--premium-line);
  font-family: var(--premium-font);
  font-size: 16px;
}
html body.wknd-premium:has(#dtype):has(#dnote) #form-wrap .btn:not(:disabled),
html body.wknd-premium:has(#step-rate) #sub-btn:not(:disabled),
html body.wknd-premium:has(#v-list):has(#pg-done) .submit-btn:not(:disabled) {
  background: var(--premium-gold);
  color: var(--premium-ink);
  border-color: var(--premium-gold);
}
html body.wknd-premium:has(#v-list):has(#pg-done) :is(.page-title,.v-name) {
  color: var(--premium-ink);
  font-family: var(--premium-font);
}
html body.wknd-premium:has(#v-list):has(#pg-done) :is(.page-sub,.v-cat,.top-progress) {
  color: var(--premium-muted);
}

/* Legal shell and safety/support: all policy copy remains visible and in
   original order. Native reporting, warnings and error states retain meaning. */
html body.wknd-premium:has(.lgl-wrap) {
  background: var(--premium-paper);
  color: var(--premium-ink);
}
html body.wknd-premium .lgl-hdr {
  background: var(--premium-ink);
  border-color: var(--premium-line);
}
html body.wknd-premium .lgl-hdr a { color: var(--premium-surface); }
html body.wknd-premium .lgl-hdr span { color: var(--premium-sage); }
html body.wknd-premium .lgl-wrap :is(h1,h2,p,ul) {
  color: var(--premium-ink);
  font-family: var(--premium-font);
}
html body.wknd-premium .lgl-wrap :is(.lgl-date,.lgl-footer) {
  color: var(--premium-muted);
  border-color: var(--premium-line);
}
html body.wknd-premium .lgl-wrap a {
  color: var(--premium-ink);
  text-underline-offset: 4px;
}
html body.wknd-premium.wknd-entry-support :is(.entry-contents,.reading-icon),
html body.wknd-premium.wknd-entry-safety :is(.sc-card,.sc-honest,.sc-protect) {
  background: var(--premium-surface);
  border-color: var(--premium-line);
  color: var(--premium-ink);
  box-shadow: var(--premium-shadow);
}
html body.wknd-premium.wknd-entry-safety #entry-content .sc-hero {
  background: var(--premium-paper) !important;
  color: var(--premium-ink);
}
html body.wknd-premium.wknd-entry-safety :is(.sc-card-icon,.sc-hero-icon) {
  background: var(--premium-sage);
  color: var(--premium-ink);
  border-color: var(--premium-line);
}
html body.wknd-premium:has(.sc-body):has(.sc-nav) {
  background: var(--premium-paper);
  color: var(--premium-ink);
}
html body.wknd-premium:has(.sc-body) :is(.sc-nav,.sc-card,.sc-honest,.sc-protect) {
  background: var(--premium-surface);
  color: var(--premium-ink);
  border-color: var(--premium-line);
}
html body.wknd-premium:has(.sc-body) .sc-hero {
  background: var(--premium-paper) !important;
  color: var(--premium-ink);
}
html body.wknd-premium:has(.sc-body) :is(.sc-nav-logo,.sc-nav-back,.sc-report-btn) {
  color: var(--premium-ink);
}
html body.wknd-premium:has(.sc-body) .sc-report-cta {
  background: var(--premium-clay-wash);
  border-color: var(--premium-line);
  color: var(--premium-ink);
}

/* Marketing palettes only, not a reconstruction of the landing layout.
   In particular the prelaunch hero's grid, art, dimensions, pseudo-elements,
   responsive composition and waitlist behavior are unchanged. */
html body.wknd-premium:is(.wknd-home,.pricing-page,.about-page),
html body.wknd-premium:has(#waitlist-form):has(#page-title) {
  --ink: var(--premium-ink);
  --muted: var(--premium-muted);
  --paper: var(--premium-paper);
  --surface: var(--premium-surface);
  --line: var(--premium-line);
  --violet: var(--premium-ink);
  --coral: var(--premium-clay);
  --sun: var(--premium-gold);
  --sage: var(--premium-sage);
  --peach: var(--premium-clay-wash);
  --cream: var(--premium-paper);
  --blue: var(--premium-sage);
  --home-paper: var(--premium-paper);
  --home-paper-deep: var(--premium-wash);
  --home-ink: var(--premium-ink);
  --home-muted: var(--premium-muted);
  --home-rule: var(--premium-line);
  --home-coral: var(--premium-clay);
  --vendor-peach: var(--premium-clay-wash);
  --vendor-cream: var(--premium-paper);
  --vendor-lavender: var(--premium-wash);
  --vendor-aqua: var(--premium-sage);
  --vendor-ink: var(--premium-ink);
  --vendor-coral: var(--premium-clay);
  --wknd-public-sans: var(--premium-font);
  background-color: var(--premium-paper);
  color: var(--premium-ink);
}
html body.wknd-premium.pricing-page :is(.audience-card,.interest-dialog,.account-popover),
html body.wknd-premium.about-page :is(.founder-card,.about-contact),
html body.wknd-premium.wknd-home :is(.join-chooser-inner,.account-popover) {
  background: var(--premium-surface) !important;
  border-color: var(--premium-line) !important;
  box-shadow: var(--premium-shadow);
}
html body.wknd-premium.pricing-page :is(.hero-copy,.card-lead,.card-note,.field-note) {
  color: var(--premium-muted);
}
html body.wknd-premium.pricing-page :is(.pricing-hero h1,.section-heading h2,.interest-form h2),
html body.wknd-premium.about-page :is(.about-page-hero h1,.about-page-story h2) {
  color: var(--premium-ink);
  font-family: var(--premium-font);
}
html body.wknd-premium.pricing-page .ink-button:not(.withdraw-button):not(:disabled) {
  background: var(--premium-gold);
  color: var(--premium-ink);
  border-color: var(--premium-gold);
  box-shadow: none;
}
html body.wknd-premium.pricing-page .interest-form :is(input[type="email"],input[type="text"]) {
  background: var(--premium-surface);
  color: var(--premium-ink);
  border-color: var(--premium-line);
  font-family: var(--premium-font);
}

/* Tester entry/catalog/feedback/reset. IDs and destination contracts identify
   the documents without coloring similarly named cards in customer pages. */
html body.wknd-premium:has(.role[href*="/tester/launch"]),
html body.wknd-premium:has(.role[href*="/tester/switch"]),
html body.wknd-premium:has(.sample-card):has(.vendor-grid),
html body.wknd-premium:has(#role-panels):has(#refresh-status) {
  --ink: var(--premium-ink);
  --muted: var(--premium-muted);
  --paper: var(--premium-paper);
  --card: var(--premium-surface);
  --line: var(--premium-line);
  background: var(--premium-paper);
  color: var(--premium-ink);
}
html body.wknd-premium:has(.roles > .role) > main.card,
html body.wknd-premium:has(.roles > .role) .role,
html body.wknd-premium:has(.sample-card):has(.vendor-grid) .sample-card,
html body.wknd-premium:has(#role-panels):has(#refresh-status) .role-card {
  background: var(--premium-surface);
  color: var(--premium-ink);
  border-color: var(--premium-line);
  box-shadow: var(--premium-shadow);
  font-family: var(--premium-font);
}
html body.wknd-premium:has(.roles > .role) :is(.tag,.notice),
html body.wknd-premium:has(.sample-card):has(.vendor-grid) .notice {
  background: var(--premium-wash);
  color: var(--premium-ink);
  border-color: var(--premium-line);
}
html body.wknd-premium :is(#wknd-tester-sheet,#wknd-tester-preferences) {
  background: var(--premium-surface);
  border-color: var(--premium-line);
  color: var(--premium-ink);
  font-family: var(--premium-font);
}
html body.wknd-premium :is(#wknd-tester-sheet,#wknd-tester-preferences)
  :is(input:not([type="checkbox"]),select,textarea) {
  background: var(--premium-surface);
  color: var(--premium-ink);
  border-color: var(--premium-line);
  font-family: var(--premium-font);
}
html body.wknd-premium :is(.wkt-primary,#wkt-send,#wkt-save-preferences):not(:disabled) {
  background: var(--premium-gold);
  color: var(--premium-ink);
  border-color: var(--premium-gold);
}
html body.wknd-premium:has(#role-panels) :is(.role-description,.eligibility,.intro) {
  color: var(--premium-muted);
}

/* Announcement preferences: opt-out remains secondary, not a gold primary.
   Hidden code forms, consent, verification and error/status values are owned
   exclusively by their existing controllers. */
html body.wknd-premium:has(#unsubscribe):has(#resume-title) {
  background: var(--premium-paper);
  color: var(--premium-ink);
}
html body.wknd-premium:has(#unsubscribe):has(#resume-title) > main {
  background: var(--premium-surface);
  border-color: var(--premium-line);
  box-shadow: var(--premium-shadow);
  font-family: var(--premium-font);
}
html body.wknd-premium:has(#unsubscribe):has(#resume-title) :is(#email,#code) {
  background: var(--premium-surface);
  color: var(--premium-ink);
  border: 1px solid var(--premium-line);
  border-radius: 10px;
}
html body.wknd-premium:has(#unsubscribe):has(#resume-title) :is(#send-code,#confirm):not(:disabled) {
  background: var(--premium-gold);
  color: var(--premium-ink);
}
html body.wknd-premium:has(#resume-title) :is(#unsubscribe,#another-code):not(:disabled) {
  background: var(--premium-wash);
  color: var(--premium-ink);
  box-shadow: inset 0 0 0 1px var(--premium-line);
}

/* Acquisition entry, saved preview and organizer leads: style outer native
   chrome only. The actual Page iframe and its customer branding stay intact. */
html body.wknd-premium.wknd-acquisition {
  --acq-ink: var(--premium-ink);
  --acq-muted: var(--premium-muted);
  --acq-paper: var(--premium-paper);
  --acq-surface: var(--premium-surface);
  --acq-line: var(--premium-line);
  --acq-action: var(--premium-ink);
  --acq-action-dark: var(--premium-ink);
  --acq-clay: var(--premium-clay);
  --acq-wash: var(--premium-wash);
  --acq-green: var(--premium-ink);
  --acq-citrus: var(--premium-gold);
  background: var(--premium-paper);
  color: var(--premium-ink);
  font-family: var(--premium-font);
}
html body.wknd-premium.wknd-acquisition :is(
  .acq-profile,.acq-lead,.acq-channel,.acq-handle-input,.acq-next-step
) {
  background: var(--premium-surface);
  color: var(--premium-ink);
  border-color: var(--premium-line);
}
html body.wknd-premium.wknd-acquisition :is(.acq-topbar,.acq-brand-mark) {
  background: var(--premium-ink);
  color: var(--premium-surface);
}
html body.wknd-premium.wknd-acquisition :is(.acq-frame-status,.acq-private-note,.acq-empty) {
  background: var(--premium-wash);
  color: var(--premium-muted);
  border-color: var(--premium-line);
}
html body.wknd-premium.wknd-acquisition :is(
  .acq-primary,.acq-primary-action,.acq-recovery-action
):not(:disabled):not([aria-disabled="true"]) {
  background: var(--premium-gold);
  color: var(--premium-ink);
  border-color: var(--premium-gold);
}
html body.wknd-premium:has(form > button[name="action"][value="continue"]) {
  background: var(--premium-paper);
  color: var(--premium-ink);
}
html body.wknd-premium form:has(> button[name="action"][value="continue"]) {
  padding-block: 16px;
  border-top: 1px solid var(--premium-line);
  font-family: var(--premium-font);
}
html body.wknd-premium form:has(> button[name="action"][value="continue"])
  button[name="action"][value="continue"]:not(:disabled) {
  background: var(--premium-gold);
  color: var(--premium-ink);
  border-color: var(--premium-gold);
}
html body.wknd-premium form:has(> button[name="action"][value="continue"])
  button[name="action"][value="stop"]:not(:disabled) {
  background: var(--premium-surface);
  color: var(--premium-ink);
  border-color: var(--premium-line);
}

/* Admin access gate and full table shell, including tester-feedback tables.
   Urgency cells, health chips and red/green actions are explicitly preserved. */
html body.wknd-premium:has(form[action="/admin"] > input[name="t"][type="password"]),
html body.wknd-premium:has(.adm-hdr),
html body.wknd-premium:has(.hdr-left a[href="/admin/disputes"]):has(#toast) {
  background: var(--premium-paper);
  color: var(--premium-ink);
  font-family: var(--premium-font);
}
html body.wknd-premium:has(form[action="/admin"] > input[name="t"]) > .card,
html body.wknd-premium .adm-hdr,
html body.wknd-premium .adm-nav,
html body.wknd-premium:has(.hdr-left a[href="/admin/disputes"]) :is(.card,.stat) {
  background: var(--premium-surface);
  border-color: var(--premium-line);
  box-shadow: var(--premium-shadow);
}
html body.wknd-premium:has(form[action="/admin"] > input[name="t"]) :is(.logo,h1),
html body.wknd-premium .adm-hdr h1,
html body.wknd-premium:has(.hdr-left a[href="/admin/disputes"]) .hdr-left h1 {
  color: var(--premium-ink);
  font-family: var(--premium-font);
}
html body.wknd-premium form[action="/admin"] input[name="t"],
html body.wknd-premium .adm-body :is(input[type="text"],input[type="number"]) {
  background: var(--premium-surface);
  color: var(--premium-ink);
  border-color: var(--premium-line);
  font-family: var(--premium-font);
}
html body.wknd-premium form[action="/admin"] button:not(:disabled),
html body.wknd-premium .adm-btn:not(.adm-btn-red):not(.adm-btn-green):not(:disabled) {
  background: var(--premium-gold);
  color: var(--premium-ink);
  border-color: var(--premium-gold);
}
html body.wknd-premium .adm-nav a {
  background: var(--premium-wash);
  color: var(--premium-muted);
}
html body.wknd-premium .adm-nav a.active,
html body.wknd-premium .adm-nav a:hover {
  background: var(--premium-sage);
  color: var(--premium-ink);
}
html body.wknd-premium .adm-body :is(th,td) {
  border-color: var(--premium-line);
  font-family: var(--premium-font);
}
html body.wknd-premium .adm-body th { color: var(--premium-muted); }
html body.wknd-premium .adm-body tr:hover td { background: var(--premium-wash); }
html body.wknd-premium .adm-body .adm-section,
html body.wknd-premium:has(.hdr-left a[href="/admin/disputes"]) > .card {
  overflow-x: auto;
}
html body.wknd-premium:has(.hdr-left a[href="/admin/disputes"]) thead th {
  background: var(--premium-ink);
  color: var(--premium-surface);
}

/* Accessibility wins over old violet !important focus rules, including those
   in high-specificity eventgoer layers. No hitbox/display/pointer overrides. */
html body.wknd-premium:is(body) :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible {
  outline: 3px solid var(--premium-clay) !important;
  outline-offset: 3px !important;
  box-shadow: 0 0 0 2px var(--premium-surface) !important;
}
html body.wknd-premium .p462-row-value[type="date"]:focus-within {
  outline: 3px solid var(--premium-clay) !important;
  outline-offset: 3px !important;
}
body.wknd-premium :is(button,input,select,textarea):disabled,
body.wknd-premium [aria-disabled="true"] {
  cursor: not-allowed;
}

@media (max-width: 767px) {
  html body.wknd-premium .adm-body { padding-inline: 16px; }
  html body.wknd-premium.wknd-events-flow :is(.ev-grid,.ev-card),
  html body.wknd-premium.wknd-vendors-directory .vd-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  html body.wknd-premium .wknd-event-fact-row { gap: 10px; }
  html body.wknd-premium #ev-detail-modal > div { border-inline: 0; }
  html body.wknd-premium :is(.ev-card-body,.vd-card) { padding: 18px; }
}
@media (max-width: 390px) {
  html body.wknd-premium :is(.ev-card-body,.vd-card) { padding: 16px; }
  html body.wknd-premium #ev-detail-name { font-size: 25px !important; }
  html body.wknd-premium .wknd-event-fact-row { min-width: 0; }
  html body.wknd-premium :is(#ev-detail-meta,#ev-detail-host,#ev-detail-cat) {
    overflow-wrap: anywhere;
  }
}
@media (prefers-reduced-motion: reduce) {
  body.wknd-premium *,
  body.wknd-premium *::before,
  body.wknd-premium *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}
} /* screen: print/QR outputs retain their original presentation */
