/* === 2B: Buton yükseltmesi: ikon, alt satır, üzerine gelince efektleri === */
.mb-btn-ic{display:inline-flex;align-items:center;justify-content:center;flex:none;line-height:1}
.mb-btn-ic .mbi{font-size:1.15em}
.mb-btn-has-sub{text-align:left}
.mb-btn-txt{display:inline-flex;flex-direction:column;align-items:flex-start;gap:.18em;line-height:1.15}
.mb-btn-sub{font-size:.74em;font-weight:500;opacity:.78;letter-spacing:.01em}
.mb-button-full .mb-btn-has-sub,.mb-btn-has-sub.mb-btn-icon-right{justify-content:space-between}
.mb-btn-has-sub .mb-btn-ic .mbi{font-size:1.45em}
.mb-btn-wa{--mb-btn-color:#25d366;--mb-btn-text:#fff}

/* Ortak efekt zemini */
.mb-fx{position:relative;isolation:isolate;overflow:hidden}
.mb-fx:hover{filter:none}
.mb-fx>*{position:relative;z-index:1}

/* Alttan dolgu */
.mb-fx-fill::before{content:"";position:absolute;inset:-2px;z-index:0;background:color-mix(in srgb,var(--c) 78%,#000);transform:scaleY(0);transform-origin:50% 100%;transition:transform .38s cubic-bezier(.2,.8,.2,1)}
.mb-fx-fill:hover::before,.mb-fx-fill:focus-visible::before{transform:scaleY(1)}
.mb-fx-fill.mb-btn-outline::before,.mb-fx-fill.mb-btn-link::before{background:var(--c)}
.mb-fx-fill.mb-btn-soft::before{background:var(--c)}
.mb-fx-fill.mb-btn-outline:hover,.mb-fx-fill.mb-btn-soft:hover,.mb-fx-fill.mb-btn-link:hover{background:transparent;color:var(--t)!important}
.mb-fx-fill.mb-btn-c-white::before{background:#0f172a}
.mb-fx-fill.mb-btn-c-white:hover{color:#fff!important}
.mb-fx-fill.mb-btn-link{padding-left:.6em;padding-right:.6em}

/* Kayan ok */
.mb-btn-arrow{display:inline-flex;align-items:center;width:0;margin-left:-.5em;opacity:0;transform:translateX(-8px);transition:width .3s cubic-bezier(.2,.8,.2,1),margin .3s cubic-bezier(.2,.8,.2,1),opacity .25s,transform .3s cubic-bezier(.2,.8,.2,1)}
.mb-fx-arrow:hover .mb-btn-arrow,.mb-fx-arrow:focus-visible .mb-btn-arrow{width:1em;margin-left:0;opacity:1;transform:none}
.mb-fx-arrow:hover{transform:none}

/* Parlama */
.mb-fx-shine::after{content:"";position:absolute;top:-10%;bottom:-10%;left:0;z-index:2;width:45%;background:linear-gradient(100deg,transparent 0%,rgba(255,255,255,.55) 50%,transparent 100%);transform:translateX(-160%) skewX(-18deg);pointer-events:none}
.mb-fx-shine:hover::after,.mb-fx-shine:focus-visible::after{transform:translateX(330%) skewX(-18deg);transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.mb-fx-shine.mb-btn-outline::after,.mb-fx-shine.mb-btn-link::after{background:linear-gradient(100deg,transparent,color-mix(in srgb,var(--c) 30%,transparent),transparent)}

/* Alt çizgi */
.mb-fx-underline .mb-btn-label{background:linear-gradient(currentColor,currentColor) 0 100%/0 1.5px no-repeat;transition:background-size .35s cubic-bezier(.2,.8,.2,1);padding-bottom:1px}
.mb-fx-underline:hover .mb-btn-label,.mb-fx-underline:focus-visible .mb-btn-label{background-size:100% 1.5px}
.mb-fx-underline.mb-btn-link:hover{text-decoration:none!important}
.mb-fx-underline:hover{transform:none}

/* Mıknatıs: konum betikle "translate" özelliğiyle verilir (transform ile çakışmaz) */
.mb-fx-magnetic{transition:translate .35s cubic-bezier(.2,.8,.2,1),filter .15s,background .15s,color .15s}
.mb-fx-magnetic .mb-btn-label,.mb-fx-magnetic .mb-btn-txt,.mb-fx-magnetic .mb-btn-ic{transition:translate .35s cubic-bezier(.2,.8,.2,1)}
.mb-fx-magnetic.is-magnet{transition-duration:.12s}
.mb-fx-magnetic.is-magnet .mb-btn-label,.mb-fx-magnetic.is-magnet .mb-btn-txt,.mb-fx-magnetic.is-magnet .mb-btn-ic{translate:var(--mb-mx,0) var(--mb-my,0);transition-duration:.12s}
.mb-fx-magnetic:hover{transform:none}

@media (prefers-reduced-motion:reduce){
	.mb-fx::before,.mb-fx::after,.mb-btn-arrow,.mb-fx-underline .mb-btn-label{transition:none!important}
	.mb-fx-shine::after{display:none}
	.mb-fx-magnetic,.mb-fx-magnetic *{translate:none!important}
}
