/* Uiverse-inspired peach hanging-leaf buttons (MuhammadHasann)
   Scoped to primary CTAs — not menu / copy / nav chrome */

.gx-leaf-btn:not(.ot-fan-btn),
.gx-bubble-btn:not(.ot-fan-btn),
.ot-submit:not(.ot-fan-btn),
.ot-deposit-submit:not(.ot-fan-btn),
.ot-mine-collect.is-ready:not(.ot-fan-btn),
.ot-mine-collect.is-visible:not(.ot-fan-btn),
.rx-auth-submit:not(.ot-fan-btn),
.shop-buy-btn:not(.ot-fan-btn),
.ot-pwa-banner-btn:not(.ot-fan-btn),
button[type="submit"]:not(.ot-fan-btn):not(.rx-auth-fab):not(.rx-sidebar-close):not(.rx-menu-btn):not(.rx-auth-eye):not(.rx-bal-btn),
a.gx-bubble-btn:not(.ot-fan-btn) {
    --leaf-bg: #fec195;
    --leaf-border: #fec195;
    --leaf-text: #181818;
    position: relative !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    width: auto;
    max-width: 100%;
    min-height: 52px;
    padding: 15px 42px !important;
    margin-left: auto;
    margin-right: auto;
    background: var(--leaf-bg) !important;
    background-image: none !important;
    font-size: 17px !important;
    font-weight: 700 !important;
    letter-spacing: 0.04em;
    text-transform: none;
    color: var(--leaf-text) !important;
    cursor: pointer;
    border: 1px solid var(--leaf-border) !important;
    border-radius: 8px !important;
    box-shadow: none !important;
    filter: drop-shadow(2px 2px 3px rgba(0, 0, 0, 0.2));
    text-decoration: none !important;
    -webkit-appearance: none;
    appearance: none;
    overflow: visible !important;
    transform: none !important;
    transition: background 0.25s ease, border-color 0.25s ease, filter 0.25s ease;
}

.gx-leaf-btn:hover:not(.ot-fan-btn),
.gx-bubble-btn:hover:not(.ot-fan-btn),
.ot-submit:hover:not(:disabled):not(.ot-fan-btn),
.ot-deposit-submit:hover:not(.ot-fan-btn),
.ot-mine-collect.is-ready:hover:not(.ot-fan-btn),
.ot-mine-collect.is-visible:hover:not(.ot-fan-btn),
.rx-auth-submit:hover:not(.ot-fan-btn),
.shop-buy-btn:hover:not(.ot-fan-btn),
.ot-pwa-banner-btn:hover:not(.ot-fan-btn),
button[type="submit"]:not(.ot-fan-btn):not(.rx-auth-fab):not(.rx-sidebar-close):not(.rx-menu-btn):not(.rx-auth-eye):not(.rx-bal-btn):hover,
a.gx-bubble-btn:hover:not(.ot-fan-btn) {
    border-color: #f3b182 !important;
    background: linear-gradient(
        85deg,
        #fec195,
        #fcc196,
        #fabd92,
        #fac097,
        #fac39c
    ) !important;
    background-size: 200% 200% !important;
    animation: gx-leaf-wind 2s ease-in-out infinite;
    color: #181818 !important;
    filter: drop-shadow(2px 2px 4px rgba(0, 0, 0, 0.25));
}

.gx-leaf-btn:active:not(.ot-fan-btn),
.gx-bubble-btn:active:not(.ot-fan-btn),
.ot-submit:active:not(:disabled):not(.ot-fan-btn),
.ot-deposit-submit:active:not(.ot-fan-btn),
.rx-auth-submit:active:not(.ot-fan-btn),
.shop-buy-btn:active:not(.ot-fan-btn),
a.gx-bubble-btn:active:not(.ot-fan-btn) {
    transform: translateY(1px) !important;
    filter: drop-shadow(1px 1px 2px rgba(0, 0, 0, 0.2));
    animation: none;
}

/* Hide old bubble chrome — label stays */
.gx-bubble-btn__icon,
.ot-deposit-submit__icon,
.ot-mine-collect__icon {
    display: none !important;
}

.gx-bubble-btn__label,
.ot-deposit-submit__label,
.ot-mine-collect__label {
    flex: 0 1 auto !important;
    padding: 0 !important;
    color: #181818 !important;
    font-size: 0.95rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.06em !important;
    text-transform: uppercase !important;
    text-align: center;
}

/* Fantasy CTAs — white glowing label (override peach leaf ink) */
.ot-fan-btn .gx-bubble-btn__label,
.ot-fan-btn .ot-deposit-submit__label,
.ot-fan-btn .ot-mine-collect__label,
.ot-fan-btn--cta .ot-mine-collect__label,
.ot-mine-collect.ot-fan-btn .ot-mine-collect__label {
    color: #ffffff !important;
    text-shadow:
        0 0 1px #082f49,
        0 1px 2px rgba(0, 0, 0, 0.75),
        0 0 10px rgba(125, 211, 252, 0.95) !important;
    -webkit-text-stroke: 0.35px rgba(8, 47, 73, 0.4);
    position: relative;
    z-index: 5;
}

/* Full-width in forms */
.ot-form-card .ot-submit,
.ot-form-card .ot-deposit-submit,
.rx-auth-card .gx-bubble-btn,
.rx-auth-card .rx-auth-submit,
.gx-plan .gx-bubble-btn,
.ot-mine-card .ot-mine-collect {
    display: flex !important;
    width: 100% !important;
    max-width: none !important;
}

.gx-cta .gx-bubble-btn {
    width: min(100%, 280px) !important;
}

/* Leaf vines */
.gx-leaf-icon {
    position: absolute;
    top: 0;
    pointer-events: none;
    line-height: 0;
    z-index: 3;
}

.gx-leaf-icon img,
.gx-leaf-icon svg {
    display: block;
    width: 100%;
    height: auto;
    overflow: visible;
}

.gx-leaf-icon--1 {
    right: 0;
    width: 25px;
    transform-origin: 0 0;
    transform: rotate(10deg);
    transition: all 0.5s ease-in-out;
    filter: drop-shadow(2px 2px 3px rgba(0, 0, 0, 0.3));
}

.gx-leaf-icon--2 {
    left: 25px;
    width: 12px;
    transform-origin: 50% 0;
    transform: rotate(10deg);
    transition: all 1s ease-in-out;
    filter: drop-shadow(2px 2px 3px rgba(0, 0, 0, 0.5));
}

.gx-leaf-icon--3 {
    left: 0;
    width: 18px;
    transform-origin: 50% 0;
    transform: rotate(-5deg);
    transition: all 1s ease-in-out;
    filter: drop-shadow(2px 2px 3px rgba(0, 0, 0, 0.5));
}

.gx-leaf-btn:hover .gx-leaf-icon--1,
.gx-bubble-btn:hover .gx-leaf-icon--1,
.ot-submit:hover .gx-leaf-icon--1,
.ot-deposit-submit:hover .gx-leaf-icon--1,
.ot-mine-collect.is-ready:hover .gx-leaf-icon--1,
.ot-mine-collect.is-visible:hover .gx-leaf-icon--1,
.rx-auth-submit:hover .gx-leaf-icon--1,
.shop-buy-btn:hover .gx-leaf-icon--1,
.ot-pwa-banner-btn:hover .gx-leaf-icon--1,
a.gx-bubble-btn:hover .gx-leaf-icon--1 {
    animation: gx-leaf-slay-1 3s cubic-bezier(0.52, 0, 0.58, 1) infinite;
    transform: rotate(10deg);
}

.gx-leaf-btn:hover .gx-leaf-icon--2,
.gx-bubble-btn:hover .gx-leaf-icon--2,
.ot-submit:hover .gx-leaf-icon--2,
.ot-deposit-submit:hover .gx-leaf-icon--2,
.ot-mine-collect.is-ready:hover .gx-leaf-icon--2,
.ot-mine-collect.is-visible:hover .gx-leaf-icon--2,
.rx-auth-submit:hover .gx-leaf-icon--2,
.shop-buy-btn:hover .gx-leaf-icon--2,
.ot-pwa-banner-btn:hover .gx-leaf-icon--2,
a.gx-bubble-btn:hover .gx-leaf-icon--2 {
    animation: gx-leaf-slay-2 3s cubic-bezier(0.52, 0, 0.58, 1) 1s infinite;
    transform: rotate(0);
}

.gx-leaf-btn:hover .gx-leaf-icon--3,
.gx-bubble-btn:hover .gx-leaf-icon--3,
.ot-submit:hover .gx-leaf-icon--3,
.ot-deposit-submit:hover .gx-leaf-icon--3,
.ot-mine-collect.is-ready:hover .gx-leaf-icon--3,
.ot-mine-collect.is-visible:hover .gx-leaf-icon--3,
.rx-auth-submit:hover .gx-leaf-icon--3,
.shop-buy-btn:hover .gx-leaf-icon--3,
.ot-pwa-banner-btn:hover .gx-leaf-icon--3,
a.gx-bubble-btn:hover .gx-leaf-icon--3 {
    animation: gx-leaf-slay-3 2s cubic-bezier(0.52, 0, 0.58, 1) 1s infinite;
    transform: rotate(0);
}

@keyframes gx-leaf-wind {
    0% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
    100% { background-position: 0% 50%; }
}

@keyframes gx-leaf-slay-1 {
    0% { transform: rotate(10deg); }
    50% { transform: rotate(-5deg); }
    100% { transform: rotate(10deg); }
}

@keyframes gx-leaf-slay-2 {
    0% { transform: rotate(0deg); }
    50% { transform: rotate(15deg); }
    100% { transform: rotate(0); }
}

@keyframes gx-leaf-slay-3 {
    0% { transform: rotate(0deg); }
    50% { transform: rotate(-5deg); }
    100% { transform: rotate(0); }
}

/* Panel overrides — only for non-fantasy (peach legacy). Fantasy CTAs skip. */
body.rx-body .gx-bubble-btn:not(.ot-fan-btn),
body.rx-body .ot-submit:not(.ot-fan-btn),
body.rx-body .ot-deposit-submit:not(.ot-fan-btn),
body.rx-body .shop-buy-btn:not(.ot-fan-btn),
body.rx-body .ot-mine-collect.is-ready:not(.ot-fan-btn),
body.rx-body .ot-mine-collect.is-visible:not(.ot-fan-btn),
body.rx-body button[type="submit"]:not(.ot-fan-btn):not(.rx-auth-fab):not(.rx-sidebar-close):not(.rx-menu-btn):not(.rx-auth-eye):not(.rx-bal-btn),
body.rx-body a.gx-bubble-btn:not(.ot-fan-btn),
body.rx-body .ot-pwa-banner-btn:not(.ot-fan-btn) {
    background: #fec195 !important;
    background-image: none !important;
    color: #181818 !important;
    border: 1px solid #fec195 !important;
    box-shadow: none !important;
    filter: drop-shadow(2px 2px 3px rgba(0, 0, 0, 0.2));
}

body.rx-body .gx-bubble-btn:hover:not(.ot-fan-btn),
body.rx-body .ot-submit:hover:not(:disabled):not(.ot-fan-btn),
body.rx-body .ot-deposit-submit:hover:not(.ot-fan-btn),
body.rx-body .shop-buy-btn:hover:not(.ot-fan-btn),
body.rx-body .ot-mine-collect.is-ready:hover:not(.ot-fan-btn),
body.rx-body .ot-mine-collect.is-visible:hover:not(.ot-fan-btn),
body.rx-body button[type="submit"]:not(.ot-fan-btn):not(.rx-auth-fab):not(.rx-sidebar-close):not(.rx-menu-btn):not(.rx-auth-eye):not(.rx-bal-btn):hover,
body.rx-body a.gx-bubble-btn:hover:not(.ot-fan-btn),
body.rx-body .ot-pwa-banner-btn:hover:not(.ot-fan-btn) {
    background: linear-gradient(85deg, #fec195, #fcc196, #fabd92, #fac097, #fac39c) !important;
    color: #181818 !important;
}

body.rx-body .gx-bubble-btn:not(.ot-fan-btn) .gx-bubble-btn__label,
body.rx-body .ot-deposit-submit:not(.ot-fan-btn) .ot-deposit-submit__label,
body.rx-body .ot-mine-collect:not(.ot-fan-btn) .ot-mine-collect__label {
    color: #181818 !important;
    text-shadow: none !important;
}

body.rx-body .ot-fan-btn .gx-bubble-btn__label,
body.rx-body .ot-fan-btn .ot-deposit-submit__label,
body.rx-body .ot-fan-btn .ot-mine-collect__label,
body.rx-body .ot-fan-btn .ot-fan-btn__text {
    color: #ffffff !important;
    text-shadow:
        0 0 1px #082f49,
        0 1px 2px rgba(0, 0, 0, 0.75),
        0 0 10px rgba(125, 211, 252, 0.95) !important;
}

/* Waiting mining stay gray */
.ot-mine-collect:not(.is-ready):not(.is-visible):not(.is-done) {
    background: linear-gradient(180deg, #94a3b8 0%, #64748b 100%) !important;
    border-color: #64748b !important;
    color: #fff !important;
    filter: none;
}

.ot-mine-collect:not(.is-ready):not(.is-visible):not(.is-done) .ot-mine-collect__label {
    color: #fff !important;
}

.ot-mine-collect.is-done {
    background: linear-gradient(180deg, #4ade80 0%, #15803d 100%) !important;
    border-color: #15803d !important;
    color: #fff !important;
    filter: drop-shadow(2px 2px 3px rgba(0, 0, 0, 0.2));
}

.ot-mine-collect.is-done .ot-mine-collect__label {
    color: #fff !important;
}

.ot-mine-collect.is-done .ot-mine-collect__label {
    color: #fff !important;
}

@media (prefers-reduced-motion: reduce) {
    .gx-leaf-btn:hover,
    .gx-bubble-btn:hover,
    .ot-submit:hover,
    .ot-deposit-submit:hover,
    .rx-auth-submit:hover,
    .shop-buy-btn:hover,
    a.gx-bubble-btn:hover,
    .gx-leaf-btn:hover .gx-leaf-icon--1,
    .gx-leaf-btn:hover .gx-leaf-icon--2,
    .gx-leaf-btn:hover .gx-leaf-icon--3,
    .gx-bubble-btn:hover .gx-leaf-icon--1,
    .gx-bubble-btn:hover .gx-leaf-icon--2,
    .gx-bubble-btn:hover .gx-leaf-icon--3 {
        animation: none !important;
    }
}

