/* Bunn interaction stability — rigid touch geometry without killing feedback.
   Keep cinematic Mood motion untouched; this layer hardens normal app surfaces only. */
:root{--bunn-rigid-press-filter:brightness(.985)}

/* Normal controls keep their exact geometry while pressed. Older layers used
   transform:scale(...) in several generations, which made buttons/cards feel loose. */
body:not(.bunn-v1012-mood) :is(
  button:not(.create-nav):not(.mainnav):not(.slider-arrow),
  .btn:not(.create-nav):not(.mainnav):not(.slider-arrow)
){
  -webkit-tap-highlight-color:transparent;
  touch-action:manipulation;
  transition-property:background-color,border-color,box-shadow,filter,opacity,color!important;
}
body:not(.bunn-v1012-mood) :is(
  button:not(.create-nav):not(.mainnav):not(.slider-arrow),
  .btn:not(.create-nav):not(.mainnav):not(.slider-arrow)
):active{
  transform:none!important;
  translate:none!important;
  scale:none!important;
  filter:var(--bunn-rigid-press-filter)!important;
}

/* Clickable card/row surfaces that are not always native <button>s. */
body:not(.bunn-v1012-mood) :is(
  .venue-tile,
  .purpose-card,
  .category-card,
  .jest-discover,
  .conversation-item,
  .activity-tile,
  .jest-audience,
  .quick-plan,
  .founder-quick-action,
  .membership-entry-choice,
  .start-hub-card,
  .create-mode-card,
  .start-category-row,
  .profile-menu-item
):active{
  transform:none!important;
  translate:none!important;
  scale:none!important;
  filter:var(--bunn-rigid-press-filter)!important;
}

/* Selection must communicate state without physically lifting the control. */
body:not(.bunn-v1012-mood) .jest-choice.selected{
  transform:none!important;
  translate:none!important;
  scale:none!important;
}

/* Controls whose resting position intentionally uses transform keep exactly that
   resting transform on press; only the old shrink component is removed. */
body:not(.bunn-v1012-mood) .app-nav .create-nav:active{
  transform:translateY(-17px)!important;
  translate:none!important;
  scale:none!important;
  filter:var(--bunn-rigid-press-filter)!important;
}
body:not(.bunn-v1012-mood) nav .mainnav:active{
  transform:translateY(-7px)!important;
  translate:none!important;
  scale:none!important;
  filter:var(--bunn-rigid-press-filter)!important;
}
body:not(.bunn-v1012-mood) .slider-arrow:active{
  transform:translateY(-50%)!important;
  translate:none!important;
  scale:none!important;
  filter:var(--bunn-rigid-press-filter)!important;
}

/* Başlat / Yayınla: the live-card preview and primary CTA must stay nailed to
   the same horizontal geometry while validation, disabled and async states change. */
body.bunn-v1012-create .v1012-compose{
  box-sizing:border-box!important;
  width:100%!important;
  min-width:0!important;
}
body.bunn-v1012-create .v1012-preview{
  position:relative!important;
  left:auto!important;
  right:auto!important;
  width:min(248px,70%)!important;
  max-width:248px!important;
  min-width:0!important;
  margin-left:auto!important;
  margin-right:auto!important;
  transform:none!important;
  translate:none!important;
  contain:layout paint;
  overflow:hidden;
}
body.bunn-v1012-create .v1012-preview :is(.v859-bunn,.v859-bunn-copy,.v859-bunn-media,.v859-bunn-media img,.v859-bunn-media video){
  transition:none!important;
  animation:none!important;
}
body.bunn-v1012-create .v1012-finish{
  box-sizing:border-box!important;
  width:100%!important;
  min-width:100%!important;
  max-width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
  position:sticky!important;
  bottom:calc(94px + var(--v10128-safe-bottom))!important;
  transform:none!important;
  translate:none!important;
  scale:none!important;
}
body.bunn-v1012-create .v1012-finish:active,
body.bunn-v1012-create .v1012-finish:disabled{
  transform:none!important;
  translate:none!important;
  scale:none!important;
}

/* The premium composer previously changed the publish CTA from sticky to static
   whenever an input/textarea received focus via :has(...:focus). That is a real
   layout-mode switch, so tapping Kendin yaz and then Publish can visibly reflow the
   live card. Keep the CTA in the exact same positioning mode throughout focus. */
@supports selector(body:has(*)){
  body.bunn-v1012-create:has(.v1012-compose :is(input,textarea):focus) .v1012-finish{
    position:sticky!important;
    bottom:calc(94px + var(--v10128-safe-bottom))!important;
    margin-top:0!important;
  }
}

/* Mobile focus stability. The composer historically used ~10–11px form text and
   viewport-width card sizing. iOS/WebView can auto-zoom sub-16px controls; opening
   the keyboard then changes the visual viewport and makes the vw-sized card appear
   to slide. Keep form controls at the mobile no-auto-zoom threshold and size the
   preview from its stable composer container instead of the visual viewport. */
body.bunn-v1012-create :is(
  .v1012-own input,
  .v1012-note textarea,
  .v1012-sheet input,
  .v1012-sheet textarea,
  .v1012-sheet select
){
  font-size:16px!important;
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
}

/* Context/profile actions already have fixed dimensions; remove their old
   high-specificity press scaling too. */
body:not(.bunn-v1012-mood) .bunn-context-navigation button:active,
body:not(.bunn-v1012-mood) .profile-actions.v8617-profile-actions>.btn:active,
body:not(.bunn-v1012-mood) .v1012-sheet-tile:active{
  transform:none!important;
  translate:none!important;
  scale:none!important;
  filter:var(--bunn-rigid-press-filter)!important;
}

@media(max-height:760px){
  body.bunn-v1012-create .v1012-preview{
    width:min(220px,70%)!important;
    max-width:220px!important;
  }
  body.bunn-v1012-create .v1012-finish{
    bottom:calc(94px + var(--v10128-safe-bottom))!important;
  }
}

@media(prefers-reduced-motion:reduce){
  body:not(.bunn-v1012-mood) :is(
    button,
    .btn,
    .venue-tile,
    .purpose-card,
    .category-card,
    .jest-discover,
    .conversation-item,
    .activity-tile,
    .jest-audience,
    .quick-plan,
    .founder-quick-action,
    .membership-entry-choice,
    .start-hub-card,
    .create-mode-card,
    .start-category-row,
    .profile-menu-item
  ){
    transition:none!important;
  }
}
