/* Savy Tabs Module Base Styles */

.savy-tabs-wrapper {
    margin-bottom: 20px;
}

.savy-tabs-nav {
    list-style: none;
    padding: 0;
    margin: 0 0 15px 0;
}

.savy-tab-button {
    position: relative;
    z-index: 1;
}

.savy-tab-button:focus {
    outline: 2px solid #007cba;
    outline-offset: 2px;
}

/* Remove focus outline when disabled */
.savy-tab-button.no-outline:focus {
    outline: none !important;
    box-shadow: none !important;
}

.savy-tab-title {
    display: inline-block;
}

.savy-tab-icon {
    display: inline-flex;
    align-items: center;
    line-height: 1;
}

.savy-tab-icon img {
    display: block;
}

/* SVG specific styles */
.savy-tab-icon .savy-tab-icon-svg {
    display: block;
    fill: currentColor; /* Allow SVG to inherit text color */
}

/* Icon top positioning adjustments */
.savy-tab-button.icon-top .savy-tab-icon {
    margin-bottom: 4px;
    margin-right: 0;
}

.savy-tabs-content-wrapper {
    position: relative;
}

.savy-tab-content {
    animation: fadeIn 0.3s ease-in-out;
}

.savy-tab-content[hidden] {
    display: none !important;
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

/* Ensure content within tabs displays properly */
.savy-tab-content p:last-child {
    margin-bottom: 0;
}

.savy-tab-content img {
    max-width: 100%;
    height: auto;
}

/* Print styles */
@media print {
    .savy-tabs-nav {
        display: none;
    }
    
    .savy-tab-content {
        display: block !important;
        page-break-inside: avoid;
    }
    
    .savy-tab-content + .savy-tab-content {
        margin-top: 20px;
        padding-top: 20px;
        border-top: 1px solid #ccc;
    }
}
