/* CircleTrust UI CTA Consistency Production V1
   Functional behavior is unchanged. This sheet only harmonizes action chrome.

   Hierarchy:
   1. Primary action = dark editorial rectangle.
   2. Secondary action = paper + quiet border.
   3. Tertiary action = text/underline, never a floating pill.
   4. Filters/toggles remain pills because they are state selectors, not CTAs.
   5. Saved/Interested/Going states keep their truthful state colors.
*/

html.ct-ui-v2{
  --ct-cta-radius:10px;
  --ct-cta-h:40px;
  --ct-cta-pad:0 14px;
  --ct-cta-font:800 .62rem/1 var(--ct-font-ui);
  --ct-cta-shadow:0 8px 18px -16px rgba(26,20,16,.7);
}

html.ct-ui-v2 button{
  -webkit-tap-highlight-color:transparent;
}

/* ---------- shared primary actions ---------- */
html.ct-ui-v2 :is(
  .homev2-end button,
  .browsev2-card-actions button:first-child,
  .browsev2-map-card>button,
  .browsev2-interest-actions button.is-primary,
  .browsev2-interest-empty button,
  .cirv2-head-actions button.primary,
  .cirv2-create-submit,
  .cir-primary,
  .cir-chat-compose button,
  .event-submit-cta,
  .event-submit-sheet button.primary,
  #eventSubmitButton,
  .ctc-primary
){
  min-height:var(--ct-cta-h)!important;
  box-sizing:border-box!important;
  border:1px solid var(--ct-ink)!important;
  border-radius:var(--ct-cta-radius)!important;
  background:var(--ct-ink)!important;
  color:var(--ct-paper)!important;
  padding:var(--ct-cta-pad)!important;
  font:var(--ct-cta-font)!important;
  letter-spacing:.01em!important;
  box-shadow:var(--ct-cta-shadow)!important;
  cursor:pointer;
}
html.ct-ui-v2 :is(
  .homev2-end button,
  .browsev2-card-actions button:first-child,
  .browsev2-map-card>button,
  .browsev2-interest-actions button.is-primary,
  .browsev2-interest-empty button,
  .cirv2-head-actions button.primary,
  .cirv2-create-submit,
  .cir-primary,
  .cir-chat-compose button,
  .event-submit-cta,
  .event-submit-sheet button.primary,
  #eventSubmitButton,
  .ctc-primary
):hover:not(:disabled){
  transform:translateY(-1px);
  box-shadow:0 12px 22px -16px rgba(26,20,16,.78)!important;
}

/* Hero lives on a dark image: inverse-primary is intentionally white. */
html.ct-ui-v2 .homev2-hero-copy button{
  min-height:40px!important;
  border:1px solid rgba(255,255,255,.86)!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#17120F!important;
  padding:0 15px!important;
  font:800 .64rem/1 var(--ct-font-ui)!important;
  box-shadow:0 9px 20px -15px rgba(0,0,0,.8)!important;
}

/* ---------- shared secondary actions ---------- */
html.ct-ui-v2 :is(
  .browsev2-card-actions button:not(:first-child),
  .browsev2-interest-actions button:not(.is-primary),
  .cirv2-head-actions button:not(.primary),
  .cirv2-create-cancel,
  .cirv2-invite button.quiet,
  .cir-m-head-actions button,
  .cir-call-card .cir-call-actions button,
  .cir-panel-head>button,
  .event-action,
  #eventSubmitCancel,
  .ctc-secondary,
  .ctc-showcase-secondary,
  .ctc-photo-camera,
  .ctc-photo-add,
  #ctcBizAddPhotos,
  .mev2-view-profile
){
  min-height:var(--ct-cta-h)!important;
  box-sizing:border-box!important;
  border:1px solid var(--ct-line)!important;
  border-radius:var(--ct-cta-radius)!important;
  background:var(--ct-paper)!important;
  color:var(--ct-ink)!important;
  padding:var(--ct-cta-pad)!important;
  font:var(--ct-cta-font)!important;
  box-shadow:none!important;
  cursor:pointer;
}
html.ct-ui-v2 :is(
  .browsev2-card-actions button:not(:first-child),
  .browsev2-interest-actions button:not(.is-primary),
  .cirv2-head-actions button:not(.primary),
  .cirv2-create-cancel,
  .cirv2-invite button.quiet,
  .cir-m-head-actions button,
  .cir-call-card .cir-call-actions button,
  .cir-panel-head>button,
  .event-action,
  #eventSubmitCancel,
  .ctc-secondary,
  .ctc-showcase-secondary,
  .ctc-photo-camera,
  .ctc-photo-add,
  #ctcBizAddPhotos,
  .mev2-view-profile
):hover:not(:disabled){
  border-color:color-mix(in srgb,var(--ct-ink) 34%,var(--ct-line))!important;
  background:color-mix(in srgb,var(--ct-ink) 2.5%,var(--ct-paper))!important;
}

/* Invite/Join is a primary action even when it sits beside Decline. */
html.ct-ui-v2 .cirv2-invite button:not(.quiet){
  min-height:36px!important;
  border:1px solid var(--ct-ink)!important;
  border-radius:9px!important;
  background:var(--ct-ink)!important;
  color:var(--ct-paper)!important;
  padding:0 11px!important;
  font:800 .55rem/1 var(--ct-font-ui)!important;
}

/* ---------- tertiary / editorial actions ---------- */
html.ct-ui-v2 :is(
  .homev2-section-head button,
  .browsev2-section-title>button,
  .event-wow-details,
  .mev2-section-head>button
){
  min-height:auto!important;
  width:auto!important;
  border:0!important;
  border-radius:0!important;
  background:none!important;
  color:var(--ct-ink)!important;
  padding:2px 0 4px!important;
  font:800 .58rem/1 var(--ct-font-ui)!important;
  box-shadow:none!important;
  text-decoration:none!important;
  border-bottom:1.5px solid color-mix(in srgb,var(--ct-accent) 72%,transparent)!important;
  cursor:pointer;
}
html.ct-ui-v2 :is(
  .homev2-section-head button,
  .browsev2-section-title>button,
  .event-wow-details,
  .mev2-section-head>button
):hover{
  color:var(--ct-accent)!important;
  border-bottom-color:var(--ct-accent)!important;
}

/* ---------- state actions: never confuse state with trust ---------- */
html.ct-ui-v2 .browsev2-card-actions button[aria-pressed="true"]{
  border-color:#AFCFC0!important;
  background:#EEF7F3!important;
  color:#0A6A4D!important;
  box-shadow:none!important;
}
html.ct-ui-v2 .event-wow-act,
html.ct-ui-v2 .d90-event-action{
  border-radius:9px!important;
}
html.ct-ui-v2 .event-wow-act.on,
html.ct-ui-v2 .d90-event-action.is-going.is-on{
  box-shadow:none!important;
}
html.ct-ui-v2 .homev2-event-going{
  min-height:38px!important;
  border-radius:9px!important;
  padding:0 11px!important;
  box-shadow:none!important;
}

/* ---------- controls that stay pills ---------- */
html.ct-ui-v2 :is(
  .browsev2-mode-toggle,
  .browsev2-mode-toggle button,
  .browsev2-quick button,
  .browsev2-categories button,
  .browsev2-type-pills button,
  .cir-m-tabs,
  .cir-m-tabs button,
  .cirv2-pills span
){
  box-shadow:none!important;
}

/* ---------- Create drawer final actions ---------- */
html.ct-ui-v2 .ctc-primary{
  width:100%!important;
  margin-top:18px!important;
}
html.ct-ui-v2 :is(.ctc-showcase-secondary,.ctc-secondary){
  width:100%!important;
}
html.ct-ui-v2 .ctc-choice{
  border-radius:15px!important;
  box-shadow:none!important;
}
html.ct-ui-v2 .ctc-choice:hover{
  transform:translateY(-1px);
  border-color:color-mix(in srgb,var(--ct-ink) 30%,var(--ct-line))!important;
}

/* ---------- Me destructive action ---------- */
html.ct-ui-v2 .mev2-signout{
  min-height:42px!important;
  border:1px solid color-mix(in srgb,#A54832 34%,var(--ct-line))!important;
  border-radius:10px!important;
  background:transparent!important;
  color:#A54832!important;
  padding:0 14px!important;
  font:800 .6rem/1 var(--ct-font-ui)!important;
  box-shadow:none!important;
}
html.ct-ui-v2 .mev2-signout:hover{
  background:color-mix(in srgb,#A54832 7%,var(--ct-paper))!important;
}

/* ---------- keyboard + touch ---------- */
html.ct-ui-v2 button:focus-visible{
  outline:2px solid var(--ct-accent)!important;
  outline-offset:3px!important;
}
html.ct-ui-v2 button:disabled{
  opacity:.48!important;
  cursor:default!important;
  transform:none!important;
}

@media(max-width:1024px), (hover:none) and (pointer:coarse){
  html.ct-ui-v2{
    --ct-cta-h:44px;
    --ct-cta-pad:0 13px;
    --ct-cta-font:800 .58rem/1 var(--ct-font-ui);
  }
  html.ct-ui-v2 .homev2-hero-copy button{min-height:42px!important}
  html.ct-ui-v2 .homev2-section-head button{font-size:.54rem!important}
  html.ct-ui-v2 .browsev2-card-actions button{min-height:38px!important;padding:0 9px!important}
  html.ct-ui-v2 .cir-m-head-actions button,
  html.ct-ui-v2 .cir-call-card .cir-call-actions button{min-height:42px!important}
}


/* Sports Pulse is a Browse destination card, not a filter pill or primary CTA. */
html.ct-ui-v2 .browsev2-sports-entry{
  min-height:58px!important;
  border-radius:15px!important;
  padding:11px 13px!important;
  font:inherit!important;
  box-shadow:none!important;
}


/* Browse pagination is finite navigation, not a primary action. */
html.ct-ui-v2 .browsev2-pager button{
  min-height:40px!important;
  border:1px solid var(--ct-line)!important;
  border-radius:9px!important;
  background:var(--ct-paper)!important;
  color:var(--ct-ink)!important;
  padding:0 12px!important;
  font:800 .54rem/1 var(--ct-font-ui)!important;
  box-shadow:none!important;
}
