/* ✦ Shared Celestella Components – Buttons, Interactions, Micro-motion ✦ */

/* 기본 CTA 버튼 스타일 */
.cel-btn,
.trial-btn {
    display: inline-block;
    margin-top: 22px;
    padding: 12px 22px;
    border-radius: 999px;
    font-family: 'SUIT';
    font-size: 0.9rem;
    letter-spacing: 0.05em;
    background: linear-gradient(135deg, #cab8ff, #7d6bff);
    color: #0a0914;
    text-decoration: none;
    cursor: pointer;

    /* 부드러운 애니메이션 */
    transition:
        background 0.35s cubic-bezier(0.25, 0.1, 0.25, 1),
        transform 0.28s cubic-bezier(0.3, 0.2, 0.2, 1),
        box-shadow 0.35s ease;

    /* 부드러운 그림자 */
    box-shadow: 0 4px 12px rgba(107, 91, 149, 0.16);

    border: none;
    outline: none;
    text-align: center;
    line-height: 1.4;
    font-weight: 500;
}

/* Hover – 떠오르는 듯한 효과 + 은은한 빛 */
.cel-btn:hover,
.trial-btn:hover {
    transform: translateY(-3px);
    background: linear-gradient(135deg, #bba8ff, #6d59ff);
    box-shadow: 0 8px 20px rgba(118, 101, 180, 0.28);
    filter: brightness(1.03);
}

/* Active – 눌리는 듯한 감성 인터랙션 */
.cel-btn:active,
.trial-btn:active {
    transform: translateY(1px) scale(0.97);
    box-shadow: 0 3px 8px rgba(107, 91, 149, 0.18);
    transition-duration: 0.12s;
    filter: brightness(0.97);
}

/* Keyboard Focus */
.cel-btn:focus-visible,
.trial-btn:focus-visible {
    outline: 2px solid rgba(200, 180, 255, 0.55);
    outline-offset: 4px;
    transition: outline 0.2s ease;
}

.top-nav {
    max-width: 480px;
    margin: 0 auto;
    padding: 22px 22px 0;
    text-align: left;
}

/* Back button unified design */
.back-btn {
    display: inline-block;
    font-size: 0.9rem;
    color: #c3b7ff;
       text-decoration: none;
    opacity: 0.82;
       transition: opacity 0.2s ease, transform 0.25s ease;
}

.back-btn:hover {
    opacity: 1;
    transform: translateX(-3px);
}

.fade-out {
    opacity: 0;
    transform: translateY(6px);
    transition:
        opacity 1.8s ease,
        transform 1.8s cubic-bezier(0.3, 0.2, 0.2, 1);
}