.horoscope-reader {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin: 0 0 20px;
    padding: 14px 16px;
    border: 1px solid rgba(109, 76, 160, 0.22);
    border-radius: 8px;
    background: linear-gradient(135deg, #fbf9ff 0%, #f5f0fc 100%);
}

.horoscope-reader__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 10px 16px;
    border: 1px solid transparent;
    border-radius: 5px;
    font: inherit;
    font-weight: 600;
    line-height: 1.2;
    cursor: pointer;
    transition: background-color 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}

.horoscope-reader__button--primary {
    border-color: #6d4ca0;
    background: #6d4ca0;
    color: #ffffff;
}

.horoscope-reader__button--primary:hover,
.horoscope-reader__button--primary:focus {
    border-color: #563781;
    background: #563781;
    color: #ffffff;
    transform: translateY(-1px);
}

.horoscope-reader__button--secondary {
    border-color: rgba(109, 76, 160, 0.42);
    background: #ffffff;
    color: #49365f;
}

.horoscope-reader__button--secondary:hover,
.horoscope-reader__button--secondary:focus {
    border-color: #6d4ca0;
    background: #f8f4fc;
    color: #34234f;
    transform: translateY(-1px);
}

.horoscope-reader__button:focus-visible {
    outline: 3px solid rgba(109, 76, 160, 0.28);
    outline-offset: 2px;
}

.horoscope-reader__button[hidden] {
    display: none !important;
}

.horoscope-reader__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    margin-right: 8px;
    font-size: 17px;
    line-height: 1;
}

.horoscope-reader__status {
    flex: 1 1 170px;
    min-width: 0;
    color: #62576f;
    font-size: 13px;
    line-height: 1.4;
}

@media (max-width: 520px) {
    .horoscope-reader {
        align-items: stretch;
        padding: 13px;
    }

    .horoscope-reader__button {
        flex: 1 1 100%;
        width: 100%;
    }

    .horoscope-reader__status {
        flex-basis: 100%;
        padding: 2px 2px 0;
        text-align: center;
    }
}

@media (prefers-reduced-motion: reduce) {
    .horoscope-reader__button {
        transition: none;
    }
}
