/* ============================================================
   Shared "feature tabs" widget
   — vertical list of items on the left
   — matching detail panel on the right
   — click swaps the active item + visible panel

   Markup contract (written per-page, see feature-tabs.js):

   <div class="feature-tabs" data-feature-tabs>
     <div class="feature-tabs__list">
       <button class="feature-tabs__item active" data-feature-tab="key" aria-selected="true">
         <span class="feature-tabs__item-icon">
           <!-- icon img here -->
         </span>
         <span class="feature-tabs__item-label">Label</span>
         <span class="feature-tabs__item-arrow">
           <!-- arrow icon img here, only visible while active -->
         </span>
       </button>
       ...
     </div>
     <div class="feature-tabs__panels">
       <div class="feature-tabs__panel" data-feature-panel="key">
         <div class="feature-tabs__panel-tag section-tag align-center">
         <span class="section-tag__dot"></span>
         <span class="label-tag-s">...</span>
         </div>
         <h4 class="feature-tabs__panel-title">...</h4>
         <p class="feature-tabs__panel-desc body-regular">...</p>
         <div class="feature-tabs__panel-content">
           <!-- panel image(s) here -->
         </div>
       </div>
       ... (all but the first carry the "hidden" attribute)
     </div>
   </div>
   ============================================================ */

.feature-tabs {
    display: flex;
    gap: 40px;
}

/* ------------------------------- List -------------------------------- */
.feature-tabs__list {
    display: flex;
    flex-direction: column;
    gap: 16px;
    max-width: 368px;
    width: 100%;
}

.feature-tabs__item {
    height: 80px;
    display: flex;
    align-items: center;
    gap: 20px;
    width: 100%;
    max-width: 368px;
    padding: 16px;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    background-color: var(--BG-White-100);
    cursor: pointer;
    transition: background-color 0.2s ease;
}

.feature-tabs__item:hover {
    border-color: var(--Brand-Primary-Light);
    background-color: var(--Brand-Primary-Lighter);
}

.feature-tabs__item.active {
    border-color: var(--Brand-Primary-Light);
    background-color: var(--Brand-Primary-Lighter);

    .feature-tabs__item-icon {
        background-color: var(--color-primary);
    }

    .feature-tabs__item-arrow {
        opacity: 1;
    }

    .feature-tabs__item-icon svg {
        stroke: var(--color-bg-white);
    }
}

.feature-tabs__item-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 48px;
    height: 48px;
    border-radius: var(--radius-md);
    background-color: var(--color-primary-10);
    transition: background-color 0.2s ease;

    svg {
        width: 24px;
        height: 24px;
        stroke: var(--color-primary);
    }
}

.feature-tabs__item-label {
    font-size: 18px;
    font-weight: 700;
    line-height: 133%;
    color: var(--color-text-primary);
}

.feature-tabs__item-arrow {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    border: 1px solid var(--color-primary-8); /* #1229D5 */;
    background: linear-gradient(107deg, rgba(18, 41, 213, 0.05) 17.96%, rgba(23, 37, 142, 0.05) 99.99%);
    transition: opacity 0.2s ease;
    opacity: 0;
    margin-left: auto;
}

/* ------------------------------ Panels -------------------------------- */
.feature-tabs__panels {
    width: 100%;
    padding: 32px 48px 0 48px;
    border-radius: 24px;
    background-color: var(--color-primary-lighter);
    overflow: hidden;
}

.feature-tabs__panel[hidden] {
    display: none;
}

.feature-tabs__panel-title {
    margin-top: 12px;
    margin-bottom: 16px;
    color: #0E1830;
}

.feature-tabs__panel-desc {
    max-width: 640px;
    color: #6B7280;
}

.feature-tabs__panel-tag {
    height: 25px;
    margin-bottom: 0;
    text-transform: uppercase;
}

.feature-tabs__panel-content {
    position: relative;
    border-radius: 14px;
}