/*
 * InsureKar Portal Design System — v2 foundation
 *
 * Stage 1 intentionally defines tokens only. Component and page selectors are
 * introduced in later stages and must always be scoped beneath .ik-theme-v2.
 * Existing Bootstrap, Metronic, and plugin selectors are not overridden here.
 */

.ik-theme-v2 {
    /* Brand */
    --ik-color-primary-900: #0a397f;
    --ik-color-primary-800: #0f4697;
    --ik-color-primary-700: #1555b4;
    --ik-color-primary-600: #1f67df;
    --ik-color-primary-500: #2876ed;
    --ik-color-primary-200: #bfd6fb;
    --ik-color-primary-100: #eaf2ff;
    --ik-color-primary-50: #f4f8ff;
    --ik-color-primary-rgb: 15, 70, 151;

    --ik-color-accent-700: #c95d04;
    --ik-color-accent-600: #ef7609;
    --ik-color-accent-500: #ff8a30;
    --ik-color-accent-100: #ffe2c7;
    --ik-color-accent-50: #fff1e4;
    --ik-color-accent-rgb: 239, 118, 9;

    /* Neutrals and surfaces */
    --ik-color-text: #172a50;
    --ik-color-text-strong: #102344;
    --ik-color-text-muted: #8e9dbb;
    --ik-color-text-subtle: #a6b1c7;
    --ik-color-border: #d9e2f1;
    --ik-color-border-strong: #c3d1e6;
    --ik-color-surface: #ffffff;
    --ik-color-surface-soft: #f9fbff;
    --ik-color-page: #f7f9fd;
    --ik-color-table-head: #edf3ff;
    --ik-color-table-heading: #465166;
    --ik-color-disabled-bg: #f0f3f8;
    --ik-color-disabled-text: #98a4b9;

    /* Semantic colors */
    --ik-color-info: #1f67df;
    --ik-color-info-soft: #eaf2ff;
    --ik-color-success: #1c8c5e;
    --ik-color-success-soft: #e8f7f0;
    --ik-color-warning: #ef7609;
    --ik-color-warning-soft: #fff1e4;
    --ik-color-danger: #d83b3b;
    --ik-color-danger-soft: #fff0f0;
    --ik-color-focus: #1f67df;
    --ik-color-focus-ring: rgba(var(--ik-color-primary-rgb), 0.2);

    /* Gradients */
    --ik-gradient-primary: linear-gradient(110deg, #246de2 0%, #0f4697 100%);
    --ik-gradient-primary-hover: linear-gradient(110deg, #1f67d8 0%, #0a397f 100%);
    --ik-gradient-page-accent: linear-gradient(110deg, #f4f8ff 0%, #ffffff 74%, #fff1e4 100%);

    /* Typography — Inter is already loaded by the authenticated layout */
    --ik-font-family: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --ik-font-size-xs: 0.75rem;
    --ik-font-size-sm: 0.875rem;
    --ik-font-size-md: 1rem;
    --ik-font-size-lg: 1.125rem;
    --ik-font-size-xl: 1.25rem;
    --ik-font-size-2xl: 1.5rem;
    --ik-font-size-3xl: 1.875rem;
    --ik-font-size-4xl: 2rem;
    --ik-font-weight-regular: 400;
    --ik-font-weight-medium: 500;
    --ik-font-weight-semibold: 600;
    --ik-font-weight-bold: 700;
    --ik-line-height-tight: 1.2;
    --ik-line-height-heading: 1.3;
    --ik-line-height-body: 1.6;

    /* Spacing */
    --ik-space-0: 0;
    --ik-space-1: 0.25rem;
    --ik-space-2: 0.5rem;
    --ik-space-3: 0.75rem;
    --ik-space-4: 1rem;
    --ik-space-5: 1.25rem;
    --ik-space-6: 1.5rem;
    --ik-space-8: 2rem;
    --ik-space-10: 2.5rem;
    --ik-space-12: 3rem;
    --ik-space-16: 4rem;

    /* Shape */
    --ik-radius-xs: 0.375rem;
    --ik-radius-sm: 0.5rem;
    --ik-radius-md: 0.75rem;
    --ik-radius-lg: 1rem;
    --ik-radius-xl: 1.25rem;
    --ik-radius-2xl: 1.5rem;
    --ik-radius-pill: 999px;

    /* Elevation */
    --ik-shadow-xs: 0 1px 2px rgba(15, 70, 151, 0.05);
    --ik-shadow-sm: 0 4px 12px rgba(15, 70, 151, 0.07);
    --ik-shadow-md: 0 10px 28px rgba(15, 70, 151, 0.1);
    --ik-shadow-lg: 0 18px 44px rgba(15, 70, 151, 0.14);
    --ik-shadow-focus: 0 0 0 0.25rem var(--ik-color-focus-ring);

    /* Controls */
    --ik-control-height-sm: 2.5rem;
    --ik-control-height: 3.5rem;
    --ik-control-height-lg: 3.75rem;
    --ik-control-padding-x: 1.25rem;
    --ik-control-padding-y: 0.875rem;
    --ik-control-radius: var(--ik-radius-lg);
    --ik-button-height: 3rem;
    --ik-button-radius: var(--ik-radius-md);

    /* Data display */
    --ik-table-cell-padding-x: 0.875rem;
    --ik-table-cell-padding-y: 1.25rem;
    --ik-table-radius: 10px;
    --ik-card-padding: 1.5rem;
    --ik-card-radius: var(--ik-radius-xl);

    /* Interaction */
    --ik-transition-fast: 120ms ease;
    --ik-transition-base: 180ms ease;
    --ik-transition-slow: 260ms ease;

    /* Layout breakpoints, exposed for documentation and JavaScript parity */
    --ik-breakpoint-sm: 576px;
    --ik-breakpoint-md: 768px;
    --ik-breakpoint-lg: 992px;
    --ik-breakpoint-xl: 1200px;
    --ik-breakpoint-2xl: 1400px;
}

.ik-theme-v2 .ik-settings-grid {
    display: grid;
    gap: var(--ik-space-6);
}

/* Field grids fill the container; only prose-length lists stay measure-capped. */
.ik-theme-v2 .ik-workflow-form {
    width: 100%;
}

.ik-theme-v2 .ik-detail-list {
    max-width: 72rem;
}

.ik-theme-v2 .ik-detail-list dt,
.ik-theme-v2 .ik-detail-list dd {
    border-bottom: 1px solid var(--ik-color-border);
    margin: 0;
    padding-block: var(--ik-space-3);
}

.ik-theme-v2 .ik-onboarding-upload-form {
    border: 1px dashed var(--ik-color-border-strong);
    border-radius: var(--ik-radius-lg);
    background: var(--ik-color-surface-soft);
    padding: var(--ik-space-5);
}

.ik-theme-v2 .ik-onboarding-file--uploaded {
    margin-top: var(--ik-space-3);
}

.ik-theme-v2 .ik-reviewer-permissions {
    display: flex;
    flex-wrap: wrap;
    gap: var(--ik-space-3);
}

.ik-theme-v2 .ik-reviewer-permissions legend {
    color: var(--ik-color-text);
    font-size: var(--ik-font-size-sm);
    font-weight: var(--ik-font-weight-semibold);
    margin-bottom: var(--ik-space-2);
}

.ik-theme-v2 .ik-review-reject-form {
    max-width: 42.5rem;
}

.ik-theme-v2 .ik-dashboard-summary,
.ik-theme-v2 .ik-dashboard-stats,
.ik-theme-v2 .ik-dashboard-contact-grid {
    display: grid;
    gap: var(--ik-space-4);
    margin-bottom: var(--ik-space-6);
}

.ik-theme-v2 .ik-dashboard-summary { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.ik-theme-v2 .ik-dashboard-stats { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.ik-theme-v2 .ik-dashboard-stats--employee { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.ik-theme-v2 .ik-dashboard-contact-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ik-theme-v2 .ik-dashboard-actions { display: flex; flex-wrap: wrap; gap: var(--ik-space-3); }
.ik-theme-v2 .ik-dashboard-actions-card { margin-bottom: var(--ik-space-6); }
.ik-theme-v2 .ik-dashboard-contact-list { margin: 0; }
.ik-theme-v2 .ik-dashboard-contact-list > div { display: grid; grid-template-columns: 8rem 1fr; gap: var(--ik-space-3); padding-block: var(--ik-space-3); border-bottom: 1px solid var(--ik-color-border); }
.ik-theme-v2 .ik-dashboard-contact-list > div:last-child { border-bottom: 0; }
.ik-theme-v2 .ik-dashboard-contact-list dt { color: var(--ik-color-text-muted); font-weight: var(--ik-font-weight-medium); }
.ik-theme-v2 .ik-dashboard-contact-list dd { margin: 0; min-width: 0; overflow-wrap: anywhere; }

/* Client dashboard layout: retain Metronic's outer container gutter while
   keeping dashboard sections visually separated at zoomed/mobile widths. */
.ik-theme-v2 .ik-client-dashboard__content {
    margin-inline: auto;
    max-width: 100%;
    padding-block-end: var(--ik-space-6);
    width: 100%;
}

.ik-theme-v2 .ik-client-dashboard .ik-page-heading {
    margin-block-end: var(--ik-space-6);
}

.ik-theme-v2 .ik-client-dashboard .ik-dashboard-summary,
.ik-theme-v2 .ik-client-dashboard .ik-dashboard-stats,
.ik-theme-v2 .ik-client-dashboard .ik-dashboard-contact-grid {
    column-gap: var(--ik-space-5);
    row-gap: var(--ik-space-5);
    margin-block-end: var(--ik-space-8);
}

.ik-theme-v2 .ik-client-dashboard .ik-dashboard-actions-card {
    margin-block-end: var(--ik-space-8);
}

.ik-theme-v2 .ik-client-dashboard .ik-card,
.ik-theme-v2 .ik-client-dashboard .ik-stat-card {
    min-width: 0;
}

@media (max-width: 991.98px) {
    .ik-theme-v2 .ik-dashboard-summary,
    .ik-theme-v2 .ik-dashboard-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 575.98px) {
    .ik-theme-v2 .ik-dashboard-summary,
    .ik-theme-v2 .ik-dashboard-stats,
    .ik-theme-v2 .ik-dashboard-contact-grid { grid-template-columns: 1fr; }
    .ik-theme-v2 .ik-dashboard-actions .ik-button { width: 100%; }
    .ik-theme-v2 .ik-dashboard-contact-list > div { grid-template-columns: 1fr; gap: var(--ik-space-1); }

    .ik-theme-v2 .ik-client-dashboard .ik-dashboard-summary,
    .ik-theme-v2 .ik-client-dashboard .ik-dashboard-stats,
    .ik-theme-v2 .ik-client-dashboard .ik-dashboard-contact-grid,
    .ik-theme-v2 .ik-client-dashboard .ik-dashboard-actions-card {
        margin-block-end: var(--ik-space-6);
    }
}

/* Onboarding review workspace */
.ik-theme-v2 .ik-onboarding-review-hero,
.ik-theme-v2 .ik-onboarding-review-section,
.ik-theme-v2 .ik-onboarding-decision {
    background: #fff;
    border: 1px solid #dfe7f3;
    border-radius: 14px;
}

.ik-theme-v2 .ik-onboarding-review-hero {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1.5rem;
    padding: 1.5rem;
    margin-bottom: 1rem;
}

.ik-theme-v2 .ik-onboarding-review-hero__back {
    color: #1556a8;
    font-weight: 700;
}

.ik-theme-v2 .ik-onboarding-review-hero__identity {
    display: grid;
    place-items: center;
    width: 3.5rem;
    height: 3.5rem;
    flex: 0 0 3.5rem;
    border-radius: 50%;
    background: #eaf2ff;
    color: #1556a8;
    font-size: 1.25rem;
    font-weight: 800;
}

.ik-theme-v2 .ik-onboarding-review-hero__eyebrow,
.ik-theme-v2 .ik-onboarding-review-section__header p,
.ik-theme-v2 .ik-onboarding-decision__panel p,
.ik-theme-v2 .ik-onboarding-file span,
.ik-theme-v2 .ik-onboarding-file small,
.ik-theme-v2 .ik-onboarding-submit-bar span {
    color: #8793aa;
}

.ik-theme-v2 .ik-onboarding-review-hero__title {
    margin: .2rem 0;
    color: #0f2142;
    font-size: 1.55rem;
    font-weight: 800;
}

.ik-theme-v2 .ik-onboarding-review-hero__meta {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    color: #66748d;
}

.ik-theme-v2 .ik-onboarding-review-alert {
    display: flex;
    gap: .85rem;
    padding: 1rem 1.25rem;
    margin-bottom: 1rem;
    border: 1px solid #fecaca;
    border-radius: 12px;
    background: #fff5f5;
    color: #b4232c;
}

.ik-theme-v2 .ik-onboarding-review-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.4fr) minmax(18rem, .8fr);
    gap: 1rem;
}

.ik-theme-v2 .ik-onboarding-review-section,
.ik-theme-v2 .ik-onboarding-decision {
    padding: 1.4rem;
    margin-bottom: 1rem;
}

.ik-theme-v2 .ik-onboarding-review-section__header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
    margin-bottom: 1.2rem;
}

.ik-theme-v2 .ik-onboarding-review-section__header h2 {
    margin: 0;
    color: #0f2142;
    font-size: 1.1rem;
    font-weight: 800;
}

.ik-theme-v2 .ik-onboarding-review-section__header p,
.ik-theme-v2 .ik-onboarding-decision__panel p {
    margin: .3rem 0 0;
}

.ik-theme-v2 .ik-onboarding-review-logo {
    width: 4.5rem;
    height: 4.5rem;
    object-fit: contain;
    border: 1px solid #e5ebf4;
    border-radius: 10px;
    padding: .4rem;
}

.ik-theme-v2 .ik-onboarding-review-details {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem 1.5rem;
    margin: 0;
}

.ik-theme-v2 .ik-onboarding-review-details--single {
    grid-template-columns: 1fr;
}

.ik-theme-v2 .ik-onboarding-review-details dt {
    margin-bottom: .35rem;
    color: #8793aa;
    font-size: .78rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .035em;
}

.ik-theme-v2 .ik-onboarding-review-details dd {
    margin: 0;
    color: #172b50;
    font-weight: 600;
    overflow-wrap: anywhere;
}

.ik-theme-v2 .ik-onboarding-insurance-list {
    display: grid;
    gap: .65rem;
    margin-top: 1rem;
}

.ik-theme-v2 .ik-onboarding-insurance-item,
.ik-theme-v2 .ik-onboarding-review-empty {
    padding: .85rem 1rem;
    border-radius: 10px;
    background: #f6f9fe;
}

.ik-theme-v2 .ik-onboarding-insurance-item {
    display: flex;
    flex-direction: column;
    gap: .2rem;
}

.ik-theme-v2 .ik-onboarding-insurance-item span,
.ik-theme-v2 .ik-onboarding-review-empty {
    color: #66748d;
}

.ik-theme-v2 .ik-onboarding-file-grid {
    display: grid;
    gap: .75rem;
}

.ik-theme-v2 .ik-onboarding-file {
    display: grid;
    grid-template-columns: 2.5rem minmax(0, 1fr) auto;
    align-items: center;
    gap: .9rem;
    padding: .9rem 1rem;
    border: 1px solid #e5ebf4;
    border-radius: 10px;
}

.ik-theme-v2 .ik-onboarding-file > i {
    display: grid;
    place-items: center;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 9px;
    background: #eaf2ff;
    color: #1967d2;
}

.ik-theme-v2 .ik-onboarding-file div:nth-child(2) {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.ik-theme-v2 .ik-onboarding-edit-actions {
    display: flex;
    flex-wrap: wrap;
    gap: .65rem;
}

.ik-theme-v2 .ik-onboarding-submit-bar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.25rem;
    margin-bottom: 1rem;
    border-radius: 12px;
    background: #eef5ff;
}

.ik-theme-v2 .ik-onboarding-submit-bar > div {
    display: flex;
    flex-direction: column;
}

.ik-theme-v2 .ik-onboarding-decision__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.ik-theme-v2 .ik-onboarding-decision__panel {
    padding: 1rem;
    border: 1px solid #dce8f8;
    border-radius: 12px;
    background: #f8fbff;
}

.ik-theme-v2 .ik-onboarding-decision__panel--reject {
    border-color: #fee2e2;
    background: #fffafa;
}

.ik-theme-v2 .ik-onboarding-reviewer-row {
    padding: 1rem;
    margin-top: 1rem;
    border: 1px solid #dce8f8;
    border-radius: 10px;
    background: #fff;
}

.ik-theme-v2 .ik-onboarding-reviewer-permissions {
    display: flex;
    flex-wrap: wrap;
    gap: .65rem 1rem;
}

@media (max-width: 991.98px) {
    .ik-theme-v2 .ik-onboarding-review-grid,
    .ik-theme-v2 .ik-onboarding-decision__grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767.98px) {
    .ik-theme-v2 .ik-onboarding-review-hero,
    .ik-theme-v2 .ik-onboarding-submit-bar {
        align-items: flex-start;
        flex-direction: column;
    }

    .ik-theme-v2 .ik-onboarding-review-details {
        grid-template-columns: 1fr;
    }

    .ik-theme-v2 .ik-onboarding-file {
        grid-template-columns: 2.5rem minmax(0, 1fr);
    }

    .ik-theme-v2 .ik-onboarding-file > :last-child {
        grid-column: 1 / -1;
    }
}

/* Typography components */
.ik-theme-v2 .ik-page-heading {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    gap: var(--ik-space-5) var(--ik-space-8);
    justify-content: space-between;
    margin-block-end: var(--ik-space-8);
}

.ik-theme-v2 .ik-page-heading__content,
.ik-theme-v2 .ik-section-heading__content,
.ik-theme-v2 .ik-card-heading__content {
    min-width: 0;
}

.ik-theme-v2 .ik-page-heading__breadcrumbs {
    color: var(--ik-color-text-muted);
    font-family: var(--ik-font-family);
    font-size: var(--ik-font-size-sm);
    margin-block-end: var(--ik-space-2);
}

.ik-theme-v2 .ik-page-heading__title {
    color: var(--ik-color-text-strong);
    font-family: var(--ik-font-family);
    font-size: clamp(var(--ik-font-size-2xl), 2.2vw, var(--ik-font-size-4xl));
    font-weight: var(--ik-font-weight-bold);
    line-height: var(--ik-line-height-tight);
    margin: 0;
}

.ik-theme-v2 .ik-page-heading__subtitle {
    color: var(--ik-color-text-muted);
    font-family: var(--ik-font-family);
    font-size: var(--ik-font-size-md);
    line-height: var(--ik-line-height-body);
    margin: var(--ik-space-2) 0 0;
    max-width: 70ch;
}

.ik-theme-v2 .ik-page-heading__body {
    margin-block-start: var(--ik-space-4);
}

.ik-theme-v2 .ik-page-heading__actions,
.ik-theme-v2 .ik-section-heading__actions,
.ik-theme-v2 .ik-card-heading__actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: var(--ik-space-3);
}

.ik-theme-v2 .ik-section-heading {
    align-items: flex-start;
    display: flex;
    gap: var(--ik-space-4);
    margin-block-end: var(--ik-space-6);
}

.ik-theme-v2 .ik-section-heading--accent::before {
    background: var(--ik-color-accent-500);
    border-radius: var(--ik-radius-pill);
    box-shadow: 0 0 0 var(--ik-space-2) var(--ik-color-accent-50);
    content: "";
    flex: 0 0 auto;
    height: var(--ik-space-3);
    margin-block-start: 0.45rem;
    width: var(--ik-space-3);
}

.ik-theme-v2 .ik-section-heading__icon,
.ik-theme-v2 .ik-card-heading__icon {
    color: var(--ik-color-primary-600);
    flex: 0 0 auto;
}

.ik-theme-v2 .ik-section-heading__title {
    color: var(--ik-color-primary-800);
    font-family: var(--ik-font-family);
    font-size: clamp(var(--ik-font-size-xl), 1.8vw, var(--ik-font-size-2xl));
    font-weight: var(--ik-font-weight-bold);
    line-height: var(--ik-line-height-heading);
    margin: 0;
}

.ik-theme-v2 .ik-section-heading__description,
.ik-theme-v2 .ik-card-heading__subtitle {
    color: var(--ik-color-text-muted);
    font-family: var(--ik-font-family);
    font-size: var(--ik-font-size-sm);
    line-height: var(--ik-line-height-body);
    margin: var(--ik-space-1) 0 0;
}

.ik-theme-v2 .ik-section-heading__body,
.ik-theme-v2 .ik-card-heading__body {
    margin-block-start: var(--ik-space-3);
}

.ik-theme-v2 .ik-section-heading__actions {
    margin-inline-start: auto;
}

.ik-theme-v2 .ik-card-heading {
    align-items: flex-start;
    display: flex;
    gap: var(--ik-space-3);
}

.ik-theme-v2 .ik-card-heading__title {
    color: var(--ik-color-text);
    font-family: var(--ik-font-family);
    font-size: var(--ik-font-size-xl);
    font-weight: var(--ik-font-weight-bold);
    line-height: var(--ik-line-height-heading);
    margin: 0;
}

.ik-theme-v2 .ik-card-heading__actions {
    margin-inline-start: auto;
}

.ik-theme-v2 .ik-help-text {
    color: var(--ik-color-text-muted);
    font-family: var(--ik-font-family);
    font-size: var(--ik-font-size-sm);
    line-height: var(--ik-line-height-body);
    margin: var(--ik-space-2) 0 0;
}

/* Form components */
.ik-theme-v2 .ik-field {
    margin-block-end: var(--ik-space-5);
    min-width: 0;
}

.ik-theme-v2 .ik-field__label {
    color: var(--ik-color-primary-800);
    display: inline-block;
    font-family: var(--ik-font-family);
    font-size: var(--ik-font-size-sm);
    font-weight: var(--ik-font-weight-bold);
    line-height: var(--ik-line-height-heading);
    margin-block-end: var(--ik-space-2);
}

.ik-theme-v2 .ik-field__required {
    color: var(--ik-color-danger);
    margin-inline-start: var(--ik-space-1);
}

.ik-theme-v2 .ik-input,
.ik-theme-v2 .ik-select,
.ik-theme-v2 .ik-textarea {
    background-color: var(--ik-color-surface);
    border: 1px solid var(--ik-color-border);
    border-radius: var(--ik-control-radius);
    box-shadow: var(--ik-shadow-xs);
    color: var(--ik-color-text);
    font-family: var(--ik-font-family);
    font-size: var(--ik-font-size-md);
    font-weight: var(--ik-font-weight-medium);
    padding: var(--ik-control-padding-y) var(--ik-control-padding-x);
    transition: border-color var(--ik-transition-base), box-shadow var(--ik-transition-base), background-color var(--ik-transition-base);
    width: 100%;
}

.ik-theme-v2 .ik-input,
.ik-theme-v2 .ik-select {
    min-height: var(--ik-control-height);
}

.ik-theme-v2 .ik-textarea {
    line-height: var(--ik-line-height-body);
    min-height: 7.5rem;
    resize: vertical;
}

.ik-theme-v2 .ik-input::placeholder,
.ik-theme-v2 .ik-textarea::placeholder {
    color: var(--ik-color-text-subtle);
    opacity: 1;
}

.ik-theme-v2 .ik-input:hover:not(:disabled):not([readonly]),
.ik-theme-v2 .ik-select:hover:not(:disabled),
.ik-theme-v2 .ik-textarea:hover:not(:disabled):not([readonly]) {
    border-color: var(--ik-color-border-strong);
}

.ik-theme-v2 .ik-input:focus,
.ik-theme-v2 .ik-select:focus,
.ik-theme-v2 .ik-textarea:focus {
    background-color: var(--ik-color-surface);
    border-color: var(--ik-color-focus);
    box-shadow: var(--ik-shadow-focus);
    color: var(--ik-color-text);
    outline: 0;
}

.ik-theme-v2 .ik-input:disabled,
.ik-theme-v2 .ik-select:disabled,
.ik-theme-v2 .ik-textarea:disabled {
    background-color: var(--ik-color-disabled-bg);
    color: var(--ik-color-disabled-text);
    cursor: not-allowed;
    opacity: 1;
}

.ik-theme-v2 .ik-input[readonly],
.ik-theme-v2 .ik-textarea[readonly] {
    background-color: var(--ik-color-primary-50);
    color: var(--ik-color-text-muted);
}

.ik-theme-v2 .ik-input.is-invalid,
.ik-theme-v2 .ik-select.is-invalid,
.ik-theme-v2 .ik-textarea.is-invalid,
.ik-theme-v2 .ik-check__input.is-invalid {
    border-color: var(--ik-color-danger);
}

.ik-theme-v2 .ik-input.is-invalid:focus,
.ik-theme-v2 .ik-select.is-invalid:focus,
.ik-theme-v2 .ik-textarea.is-invalid:focus,
.ik-theme-v2 .ik-check__input.is-invalid:focus {
    box-shadow: 0 0 0 0.25rem rgba(216, 59, 59, 0.16);
}

.ik-theme-v2 .ik-field-error {
    color: var(--ik-color-danger);
    font-family: var(--ik-font-family);
    font-size: var(--ik-font-size-sm);
    line-height: var(--ik-line-height-body);
    margin: var(--ik-space-2) 0 0;
}

.ik-theme-v2 .ik-check {
    align-items: flex-start;
    display: flex;
    gap: var(--ik-space-2);
    min-height: 1.5rem;
    padding-inline-start: 0;
}

.ik-theme-v2 .ik-check__input {
    border: 1px solid var(--ik-color-border-strong);
    flex: 0 0 auto;
    height: 1.25rem;
    margin: 0.1rem 0 0;
    position: static;
    width: 1.25rem;
}

.ik-theme-v2 .ik-check__input:checked {
    background-color: var(--ik-color-primary-600);
    border-color: var(--ik-color-primary-600);
}

.ik-theme-v2 .ik-check__input:focus {
    border-color: var(--ik-color-focus);
    box-shadow: var(--ik-shadow-focus);
}

.ik-theme-v2 .ik-check__label {
    color: var(--ik-color-text);
    font-family: var(--ik-font-family);
    font-size: var(--ik-font-size-sm);
    font-weight: var(--ik-font-weight-medium);
    line-height: var(--ik-line-height-body);
}

/* Card and surface components */
.ik-theme-v2 .ik-card {
    background: var(--ik-color-surface);
    border: 1px solid var(--ik-color-border);
    border-radius: var(--ik-card-radius);
    color: var(--ik-color-text);
    overflow: hidden;
    position: relative;
}

.ik-theme-v2 .ik-card--soft {
    background: var(--ik-color-primary-50);
}

.ik-theme-v2 .ik-card--accent {
    background: var(--ik-gradient-page-accent);
}

.ik-theme-v2 .ik-card--borderless {
    border-color: transparent;
}

.ik-theme-v2 .ik-card--shadow-sm {
    box-shadow: var(--ik-shadow-sm);
}

.ik-theme-v2 .ik-card--shadow-md {
    box-shadow: var(--ik-shadow-md);
}

.ik-theme-v2 .ik-card__header {
    align-items: flex-start;
    background: transparent;
    border-block-end: 1px solid var(--ik-color-border);
    display: flex;
    gap: var(--ik-space-4);
    justify-content: space-between;
    min-height: auto;
}

.ik-theme-v2 .ik-card__header-content {
    min-width: 0;
}

.ik-theme-v2 .ik-card__header-actions {
    align-items: center;
    display: flex;
    flex: 0 0 auto;
    flex-wrap: wrap;
    gap: var(--ik-space-2);
}

.ik-theme-v2 .ik-card__body,
.ik-theme-v2 .ik-card__footer,
.ik-theme-v2 .ik-card__header {
    padding: var(--ik-card-padding);
}

.ik-theme-v2 .ik-card--padding-compact .ik-card__body,
.ik-theme-v2 .ik-card--padding-compact .ik-card__footer,
.ik-theme-v2 .ik-card--padding-compact .ik-card__header {
    padding: var(--ik-space-4);
}

.ik-theme-v2 .ik-card--padding-spacious .ik-card__body,
.ik-theme-v2 .ik-card--padding-spacious .ik-card__footer,
.ik-theme-v2 .ik-card--padding-spacious .ik-card__header {
    padding: var(--ik-space-8);
}

.ik-theme-v2 .ik-card--padding-none .ik-card__body,
.ik-theme-v2 .ik-card--padding-none .ik-card__footer,
.ik-theme-v2 .ik-card--padding-none .ik-card__header {
    padding: 0;
}

.ik-theme-v2 .ik-card__body {
    color: var(--ik-color-text);
    font-family: var(--ik-font-family);
    min-height: 0;
}

.ik-theme-v2 .ik-card__footer {
    align-items: center;
    background: transparent;
    border-block-start: 1px solid var(--ik-color-border);
    display: flex;
    flex-wrap: wrap;
    gap: var(--ik-space-3);
}

.ik-theme-v2 .ik-card--loading > :not(.ik-card__loading) {
    pointer-events: none;
}

.ik-theme-v2 .ik-card__loading {
    align-items: center;
    background: rgba(255, 255, 255, 0.78);
    display: flex;
    inset: 0;
    justify-content: center;
    position: absolute;
    z-index: 2;
}

.ik-theme-v2 .ik-card__spinner {
    color: var(--ik-color-primary-600);
    height: 2rem;
    width: 2rem;
}

.ik-theme-v2 .ik-stat-card {
    background: var(--ik-color-surface);
    border: 1px solid var(--ik-color-border);
    border-radius: var(--ik-card-radius);
    box-shadow: var(--ik-shadow-sm);
    color: var(--ik-color-text);
    min-height: 100%;
    padding: var(--ik-card-padding);
}

.ik-theme-v2 .ik-stat-card--primary {
    background: var(--ik-gradient-primary);
    border-color: transparent;
    color: var(--ik-color-surface);
}

.ik-theme-v2 .ik-stat-card--accent {
    background: var(--ik-color-accent-50);
    border-color: var(--ik-color-accent-100);
}

.ik-theme-v2 .ik-stat-card--success {
    background: var(--ik-color-success-soft);
    border-color: rgba(28, 140, 94, 0.2);
}

.ik-theme-v2 .ik-stat-card__topline {
    align-items: flex-start;
    display: flex;
    gap: var(--ik-space-3);
    justify-content: space-between;
}

.ik-theme-v2 .ik-stat-card__label,
.ik-theme-v2 .ik-stat-card__value,
.ik-theme-v2 .ik-stat-card__description {
    font-family: var(--ik-font-family);
    margin: 0;
}

.ik-theme-v2 .ik-stat-card__label {
    color: var(--ik-color-text-muted);
    font-size: var(--ik-font-size-sm);
    font-weight: var(--ik-font-weight-semibold);
}

.ik-theme-v2 .ik-stat-card__value {
    color: var(--ik-color-primary-800);
    font-size: var(--ik-font-size-3xl);
    font-weight: var(--ik-font-weight-bold);
    line-height: var(--ik-line-height-tight);
    margin-block-start: var(--ik-space-4);
}

.ik-theme-v2 .ik-stat-card__description {
    color: var(--ik-color-text-muted);
    font-size: var(--ik-font-size-sm);
    line-height: var(--ik-line-height-body);
    margin-block-start: var(--ik-space-2);
}

.ik-theme-v2 .ik-stat-card__icon {
    color: var(--ik-color-primary-600);
    flex: 0 0 auto;
}

.ik-theme-v2 .ik-stat-card--primary .ik-stat-card__label,
.ik-theme-v2 .ik-stat-card--primary .ik-stat-card__value,
.ik-theme-v2 .ik-stat-card--primary .ik-stat-card__description,
.ik-theme-v2 .ik-stat-card--primary .ik-stat-card__icon {
    color: var(--ik-color-surface);
}

.ik-theme-v2 .ik-stat-card__footer {
    border-block-start: 1px solid var(--ik-color-border);
    margin-block-start: var(--ik-space-5);
    padding-block-start: var(--ik-space-4);
}

.ik-theme-v2 .ik-info-card {
    align-items: flex-start;
    background: var(--ik-color-primary-50);
    border: 1px solid var(--ik-color-primary-200);
    border-radius: var(--ik-radius-lg);
    color: var(--ik-color-text);
    display: flex;
    gap: var(--ik-space-4);
    padding: var(--ik-space-5);
}

.ik-theme-v2 .ik-info-card--success {
    background: var(--ik-color-success-soft);
    border-color: rgba(28, 140, 94, 0.2);
}

.ik-theme-v2 .ik-info-card--warning {
    background: var(--ik-color-warning-soft);
    border-color: var(--ik-color-accent-100);
}

.ik-theme-v2 .ik-info-card--danger {
    background: var(--ik-color-danger-soft);
    border-color: rgba(216, 59, 59, 0.2);
}

.ik-theme-v2 .ik-info-card__icon {
    color: var(--ik-color-primary-600);
    flex: 0 0 auto;
}

.ik-theme-v2 .ik-info-card__content {
    min-width: 0;
}

.ik-theme-v2 .ik-info-card__title,
.ik-theme-v2 .ik-info-card__description {
    font-family: var(--ik-font-family);
    margin: 0;
}

.ik-theme-v2 .ik-info-card__title {
    color: var(--ik-color-primary-800);
    font-size: var(--ik-font-size-md);
    font-weight: var(--ik-font-weight-bold);
    line-height: var(--ik-line-height-heading);
}

.ik-theme-v2 .ik-info-card__description {
    color: var(--ik-color-text-muted);
    font-size: var(--ik-font-size-sm);
    line-height: var(--ik-line-height-body);
    margin-block-start: var(--ik-space-1);
}

.ik-theme-v2 .ik-info-card__body {
    margin-block-start: var(--ik-space-3);
}

.ik-theme-v2 .ik-info-card__actions {
    align-items: center;
    display: flex;
    flex: 0 0 auto;
    gap: var(--ik-space-2);
    margin-inline-start: auto;
}

/* Keep the first column inset, including legacy tables with zero-padding utilities. */
.ik-theme-v2 table > * > tr > th:first-child:not(.ik-table__cell--child),
.ik-theme-v2 table > * > tr > td:first-child:not(.ik-table__cell--child) {
    padding-inline-start: var(--ik-space-6) !important;
}

/* Plain table components */
.ik-theme-v2 .ik-table-shell {
    border: 0;
    border-radius: var(--ik-table-radius);
    overflow: auto;
    width: 100%;
}

.ik-theme-v2 .ik-table {
    --bs-table-bg: transparent;
    border-collapse: separate;
    border-spacing: 0;
    color: var(--ik-color-text);
    font-family: var(--ik-font-family);
    margin: 0;
    min-width: 100%;
}

.ik-theme-v2 .ik-table--layout-fixed {
    table-layout: fixed;
}

.ik-theme-v2 .ik-table caption {
    color: var(--ik-color-text-muted);
    font-size: var(--ik-font-size-sm);
    padding: var(--ik-space-3) var(--ik-table-cell-padding-x);
}

.ik-theme-v2 .ik-table__head {
    background: var(--ik-color-table-head);
}

.ik-theme-v2 .ik-table__head .ik-table__cell {
    color: var(--ik-color-table-heading);
    font-size: 1rem !important;
    font-weight: var(--ik-font-weight-bold);
    line-height: var(--ik-line-height-heading);
    letter-spacing: normal;
    text-transform: none;
}

.ik-theme-v2 .ik-table__cell {
    background: transparent;
    border: 0;
    border-block-end: 1px solid var(--ik-color-border);
    border-inline-end: 1px solid var(--ik-color-border);
    color: var(--ik-color-text);
    box-sizing: border-box;
    font-size: 0.9rem;
    font-weight: var(--ik-font-weight-semibold);
    line-height: var(--ik-line-height-heading);
    overflow-wrap: anywhere;
    padding: var(--ik-table-cell-padding-y) var(--ik-table-cell-padding-x);
    vertical-align: middle;
}

.ik-theme-v2 .ik-table__cell:last-child {
    border-inline-end: 0;
}

.ik-theme-v2 .ik-table__row:last-child .ik-table__cell {
    border-block-end: 0;
}

.ik-theme-v2 .ik-table--compact .ik-table__cell {
    font-size: var(--ik-font-size-sm);
    padding: var(--ik-space-4);
}

.ik-theme-v2 .ik-table__cell--start {
    text-align: start;
}

.ik-theme-v2 .ik-table__cell--center {
    text-align: center;
}

.ik-theme-v2 .ik-table__cell--end {
    text-align: end;
}

.ik-theme-v2 .ik-table__cell--primary {
    color: var(--ik-color-primary-800);
    font-weight: var(--ik-font-weight-bold);
}

.ik-theme-v2 .ik-table__cell--muted {
    color: var(--ik-color-text-muted);
}

.ik-theme-v2 .ik-table__cell--accent {
    color: var(--ik-color-accent-600);
    font-weight: var(--ik-font-weight-bold);
}

.ik-theme-v2 .ik-table__cell--success {
    color: var(--ik-color-success);
}

.ik-theme-v2 .ik-table__cell--danger {
    color: var(--ik-color-danger);
}

.ik-theme-v2 .ik-table__cell--child {
    padding-inline-start: calc(var(--ik-table-cell-padding-x) + var(--ik-space-8));
}

.ik-theme-v2 .ik-table__row--highlighted {
    background: var(--ik-color-primary-50);
}

.ik-theme-v2 .ik-table__row--total .ik-table__cell {
    font-weight: var(--ik-font-weight-bold);
}

.ik-theme-v2 .ik-table__row--empty .ik-table__cell {
    border: 0;
}

.ik-theme-v2 .ik-table__empty,
.ik-theme-v2 .ik-table-empty-message {
    color: var(--ik-color-text-muted);
    padding: var(--ik-space-8);
    text-align: center;
}

.ik-theme-v2 .ik-table--sticky .ik-table__head {
    position: sticky;
    top: 0;
    z-index: 1;
}

.ik-theme-v2 .ik-policy-heading {
    align-items: center;
    display: flex;
    gap: var(--ik-space-4);
    justify-content: space-between;
    padding: var(--ik-space-5) var(--ik-space-6);
    width: 100%;
}

.ik-theme-v2 .ik-policy-heading__identity {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: var(--ik-space-3);
    min-width: 0;
}

.ik-theme-v2 .ik-policy-heading__title {
    color: var(--ik-color-text-strong);
    font-family: var(--ik-font-family);
    font-size: var(--ik-font-size-2xl);
    font-weight: var(--ik-font-weight-bold);
    line-height: var(--ik-line-height-tight);
    margin: 0;
}

.ik-theme-v2 .ik-policy-heading__company {
    color: var(--ik-color-accent-600);
    font-family: var(--ik-font-family);
    font-size: var(--ik-font-size-md);
    font-weight: var(--ik-font-weight-semibold);
    margin-block-start: var(--ik-space-2);
}

.ik-theme-v2 .ik-policy-period {
    background: var(--ik-color-primary-100);
    border: 1px solid var(--ik-color-primary-200);
    border-radius: var(--ik-radius-lg);
    color: var(--ik-color-primary-800);
    flex: 0 0 auto;
    font-family: var(--ik-font-family);
    font-size: var(--ik-font-size-sm);
    font-weight: var(--ik-font-weight-bold);
    padding: var(--ik-space-3) var(--ik-space-5);
    margin-inline-start: auto;
    white-space: nowrap;
}

.ik-theme-v2 .ik-benefit-structure__body {
    padding: 0;
}

.ik-theme-v2 .ik-benefits-workspace {
    background: var(--ik-color-surface);
    border: 1px solid var(--ik-color-border);
    border-radius: var(--ik-radius-lg);
    overflow: hidden;
}

.ik-theme-v2 .ik-benefits-workspace__header {
    align-items: center;
    border-block-end: 1px solid var(--ik-color-border);
    display: flex;
    gap: var(--ik-space-5);
    justify-content: space-between;
    padding: var(--ik-space-5) var(--ik-space-6);
}

.ik-theme-v2 .ik-benefits-workspace__heading-row {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: var(--ik-space-3);
}

.ik-theme-v2 .ik-benefits-workspace__title,
.ik-theme-v2 .ik-benefits-workspace__subtitle {
    margin: 0;
}

.ik-theme-v2 .ik-benefits-workspace__title {
    color: var(--ik-color-text-strong);
    font-size: var(--ik-font-size-xl);
    font-weight: var(--ik-font-weight-bold);
}

.ik-theme-v2 .ik-benefits-workspace__subtitle {
    color: var(--ik-color-text-muted);
    font-size: var(--ik-font-size-sm);
    margin-block-start: var(--ik-space-1);
}

.ik-theme-v2 .ik-benefits-workspace__body {
    padding: 0;
}

.ik-theme-v2 .benefit-structure-display + .benefit-structure-display {
    border-block-start: 1px solid var(--ik-color-border);
}

.ik-theme-v2 .ik-benefits-empty {
    align-items: center;
    color: var(--ik-color-text-muted);
    display: flex;
    flex-direction: column;
    gap: var(--ik-space-2);
    justify-content: center;
    min-height: 14rem;
    padding: var(--ik-space-8);
    text-align: center;
}

.ik-theme-v2 .ik-benefits-empty strong {
    color: var(--ik-color-text-strong);
    font-size: var(--ik-font-size-lg);
}

.ik-theme-v2 .ik-benefits-empty__icon {
    align-items: center;
    background: var(--ik-color-primary-50);
    border-radius: 50%;
    color: var(--ik-color-primary-700);
    display: flex;
    font-size: 1.4rem;
    height: 3.5rem;
    justify-content: center;
    margin-block-end: var(--ik-space-2);
    width: 3.5rem;
}

.ik-theme-v2 .ik-documents-workspace {
    background: var(--ik-color-surface);
    border: 1px solid var(--ik-color-border);
    border-radius: var(--ik-radius-lg);
    overflow: hidden;
}

.ik-theme-v2 .ik-documents-workspace__header {
    align-items: center;
    border-block-end: 1px solid var(--ik-color-border);
    display: flex;
    gap: var(--ik-space-5);
    justify-content: space-between;
    padding: var(--ik-space-5) var(--ik-space-6);
}

.ik-theme-v2 .ik-documents-workspace__heading-row,
.ik-theme-v2 .ik-document-group__header {
    align-items: center;
    display: flex;
    gap: var(--ik-space-3);
    justify-content: space-between;
}

.ik-theme-v2 .ik-documents-workspace__title,
.ik-theme-v2 .ik-documents-workspace__subtitle,
.ik-theme-v2 .ik-document-group__title,
.ik-theme-v2 .ik-document-card__name {
    margin: 0;
}

.ik-theme-v2 .ik-documents-workspace__title {
    color: var(--ik-color-text-strong);
    font-size: var(--ik-font-size-xl);
    font-weight: var(--ik-font-weight-bold);
}

.ik-theme-v2 .ik-documents-workspace__subtitle,
.ik-theme-v2 .ik-document-group__eyebrow,
.ik-theme-v2 .ik-document-card__meta {
    color: var(--ik-color-text-muted);
    font-size: var(--ik-font-size-sm);
}

.ik-theme-v2 .ik-documents-workspace__subtitle {
    margin-block-start: var(--ik-space-1);
}

.ik-theme-v2 .ik-documents-workspace__body {
    display: grid;
    gap: var(--ik-space-5);
    padding: var(--ik-space-6);
}

.ik-theme-v2 .ik-document-group {
    border: 1px solid var(--ik-color-border);
    border-radius: var(--ik-radius-md);
    overflow: hidden;
}

.ik-theme-v2 .ik-document-group__header {
    background: var(--ik-color-surface-soft);
    border-block-end: 1px solid var(--ik-color-border);
    padding: var(--ik-space-4) var(--ik-space-5);
}

.ik-theme-v2 .ik-document-group__eyebrow {
    display: block;
    font-size: var(--ik-font-size-xs);
    margin-block-end: var(--ik-space-1);
}

.ik-theme-v2 .ik-document-group__title {
    color: var(--ik-color-text-strong);
    font-size: var(--ik-font-size-lg);
    font-weight: var(--ik-font-weight-bold);
}

.ik-theme-v2 .ik-document-group__count {
    color: var(--ik-color-text-muted);
    flex: 0 0 auto;
    font-size: var(--ik-font-size-sm);
    font-weight: var(--ik-font-weight-semibold);
}

.ik-theme-v2 .ik-document-grid {
    display: grid;
    gap: var(--ik-space-3);
    grid-template-columns: repeat(3, minmax(0, 1fr));
    padding: var(--ik-space-5);
}

.ik-theme-v2 .ik-document-card {
    align-items: center;
    background: var(--ik-color-surface);
    border: 1px solid var(--ik-color-border);
    border-radius: var(--ik-radius-md);
    display: flex;
    gap: var(--ik-space-3);
    min-width: 0;
    padding: var(--ik-space-4);
    transition: border-color var(--ik-transition-fast), box-shadow var(--ik-transition-fast);
}

.ik-theme-v2 .ik-document-card:hover {
    border-color: var(--ik-color-primary-200);
    box-shadow: var(--ik-shadow-xs);
}

.ik-theme-v2 .ik-document-card__icon,
.ik-theme-v2 .ik-document-card__action,
.ik-theme-v2 .ik-documents-empty__icon {
    align-items: center;
    border-radius: var(--ik-radius-sm);
    display: flex;
    flex: 0 0 auto;
    justify-content: center;
}

.ik-theme-v2 .ik-categories-workspace {
    background: var(--ik-color-surface);
    border: 1px solid var(--ik-color-border);
    border-radius: var(--ik-radius-lg);
    overflow: hidden;
}

.ik-theme-v2 .ik-categories-workspace__header {
    align-items: center;
    border-block-end: 1px solid var(--ik-color-border);
    display: flex;
    gap: var(--ik-space-5);
    justify-content: space-between;
    padding: var(--ik-space-5) var(--ik-space-6);
}

.ik-theme-v2 .ik-categories-workspace__heading-row,
.ik-theme-v2 .ik-category-section__header {
    align-items: center;
    display: flex;
    gap: var(--ik-space-3);
    justify-content: space-between;
}

.ik-theme-v2 .ik-categories-workspace__title,
.ik-theme-v2 .ik-categories-workspace__subtitle,
.ik-theme-v2 .ik-category-section__title {
    margin: 0;
}

.ik-theme-v2 .ik-categories-workspace__title {
    color: var(--ik-color-text-strong);
    font-size: var(--ik-font-size-xl);
    font-weight: var(--ik-font-weight-bold);
}

.ik-theme-v2 .ik-categories-workspace__subtitle,
.ik-theme-v2 .ik-category-section__eyebrow,
.ik-theme-v2 .ik-category-section__count {
    color: var(--ik-color-text-muted);
    font-size: var(--ik-font-size-sm);
}

.ik-theme-v2 .ik-categories-workspace__subtitle {
    margin-block-start: var(--ik-space-1);
}

.ik-theme-v2 .ik-categories-workspace__body {
    display: grid;
    gap: var(--ik-space-5);
    padding: var(--ik-space-6);
}

.ik-theme-v2 .ik-category-section {
    border: 1px solid var(--ik-color-border);
    border-radius: var(--ik-radius-md);
    overflow: hidden;
}

.ik-theme-v2 .ik-category-section__header {
    background: var(--ik-color-surface-soft);
    border-block-end: 1px solid var(--ik-color-border);
    padding: var(--ik-space-4) var(--ik-space-5);
}

.ik-theme-v2 .ik-category-section__eyebrow {
    display: block;
    font-size: var(--ik-font-size-xs);
    margin-block-end: var(--ik-space-1);
}

.ik-theme-v2 .ik-category-section__title {
    color: var(--ik-color-text-strong);
    font-size: var(--ik-font-size-lg);
    font-weight: var(--ik-font-weight-bold);
}

.ik-theme-v2 .ik-category-section__count {
    flex: 0 0 auto;
    font-weight: var(--ik-font-weight-semibold);
}

.ik-theme-v2 .ik-category-section > .ik-data-table {
    border-radius: 0;
    box-shadow: none;
}

.ik-theme-v2 .ik-category-section > .ik-data-table .ik-data-table__viewport {
    border-radius: 0;
}

.ik-theme-v2 .category-plan-detail-table > thead > tr > th:first-child,
.ik-theme-v2 .category-plan-detail-table > tbody > tr > td:first-child {
    padding-inline-start: var(--ik-space-5);
}

.ik-theme-v2 .category-plan-detail-table > thead > tr > th:last-child,
.ik-theme-v2 .category-plan-detail-table > tbody > tr > td:last-child {
    padding-inline-end: var(--ik-space-5);
}

.ik-theme-v2 .ik-category-plan-grid {
    align-items: start;
    display: grid;
    gap: var(--ik-space-6);
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-block-end: var(--ik-space-8);
}

.ik-theme-v2 .ik-category-plan-grid__item {
    min-width: 0;
}

.ik-theme-v2 .ik-category-plan-card {
    box-shadow: var(--ik-shadow-xs);
}

.ik-theme-v2 .ik-category-plan-card .ik-card__header {
    background: var(--ik-color-primary-50);
    padding: var(--ik-space-4) var(--ik-space-5);
}

.ik-theme-v2 .ik-category-plan-card .ik-card-heading__title {
    font-size: var(--ik-font-size-lg);
}

.ik-theme-v2 .ik-category-plan-card .ik-card-heading__subtitle {
    margin-block-start: var(--ik-space-1);
}

.ik-theme-v2 .ik-category-plan-card .ik-card__body {
    padding: 0;
}

.ik-theme-v2 .ik-category-plan-card .ik-data-table {
    border: 0;
    border-radius: 0;
    box-shadow: none;
}

.ik-theme-v2 .ik-category-plan-card .ik-data-table__viewport {
    border-radius: 0;
}

.ik-theme-v2 .ik-category-plan-card .ik-data-table__viewport table > thead > tr > th,
.ik-theme-v2 .ik-category-plan-card .ik-data-table__viewport table > tbody > tr > td {
    padding-block: var(--ik-space-4);
}

.ik-theme-v2 .ik-category-plan-card .ik-table__cell--child {
    color: var(--ik-color-text-muted) !important;
    padding-inline-start: var(--ik-space-8) !important;
}

@media (max-width: 991.98px) {
    .ik-theme-v2 .ik-category-plan-grid {
        grid-template-columns: 1fr;
    }
}

.ik-theme-v2 .ik-categories-empty {
    align-items: center;
    color: var(--ik-color-text-muted);
    display: flex;
    flex-direction: column;
    gap: var(--ik-space-2);
    justify-content: center;
    min-height: 14rem;
    text-align: center;
}

.ik-theme-v2 .ik-categories-empty strong {
    color: var(--ik-color-text-strong);
    font-size: var(--ik-font-size-lg);
}

.ik-theme-v2 .ik-categories-empty__icon {
    align-items: center;
    background: var(--ik-color-primary-50);
    border-radius: 50%;
    color: var(--ik-color-primary-700);
    display: flex;
    font-size: 1.35rem;
    height: 3.5rem;
    justify-content: center;
    margin-block-end: var(--ik-space-2);
    width: 3.5rem;
}

.ik-theme-v2 .ik-dependent-context {
    align-items: center;
    background: var(--ik-color-surface);
    border: 1px solid var(--ik-color-border);
    border-radius: var(--ik-radius-lg);
    display: flex;
    gap: var(--ik-space-6);
    justify-content: space-between;
    margin-block-end: var(--ik-space-5);
    padding: var(--ik-space-5) var(--ik-space-6);
}

.ik-theme-v2 .ik-dependent-context__content {
    align-items: flex-start;
    display: flex;
    gap: var(--ik-space-5);
}

.ik-theme-v2 .ik-dependent-context__back {
    align-items: center;
    color: var(--ik-color-primary-700);
    display: inline-flex;
    font-size: var(--ik-font-size-sm);
    font-weight: var(--ik-font-weight-semibold);
    gap: var(--ik-space-2);
    padding-block: var(--ik-space-1);
    text-decoration: none;
    white-space: nowrap;
}

.ik-theme-v2 .ik-dependent-context__back:hover {
    color: var(--ik-color-primary-800);
}

.ik-theme-v2 .ik-dependent-context__eyebrow,
.ik-theme-v2 .ik-dependent-context__subtitle {
    color: var(--ik-color-text-muted);
    font-size: var(--ik-font-size-sm);
}

.ik-theme-v2 .ik-dependent-context__eyebrow {
    display: block;
    font-weight: var(--ik-font-weight-semibold);
    margin-block-end: var(--ik-space-1);
}

.ik-theme-v2 .ik-dependent-context__title,
.ik-theme-v2 .ik-dependent-context__subtitle {
    margin: 0;
}

.ik-theme-v2 .ik-dependent-context__title {
    color: var(--ik-color-text-strong);
    font-size: var(--ik-font-size-xl);
    font-weight: var(--ik-font-weight-bold);
}

.ik-theme-v2 .ik-dependent-context__subtitle {
    margin-block-start: var(--ik-space-1);
}

.ik-theme-v2 .ik-dependent-context__employee {
    align-items: center;
    display: flex;
    flex: 0 0 auto;
    gap: var(--ik-space-3);
}

.ik-theme-v2 .ik-dependent-form-shell {
    border: 1px solid var(--ik-color-border);
    border-radius: var(--ik-radius-lg);
    box-shadow: none;
    overflow: hidden;
}

.ik-theme-v2 .ik-dependent-form-shell__header {
    min-height: 0;
    padding: var(--ik-space-5) var(--ik-space-6);
}

.ik-theme-v2 .ik-dependent-form-shell__back {
    align-items: center;
    color: var(--ik-color-primary-700);
    display: inline-flex;
    font-size: var(--ik-font-size-sm);
    font-weight: var(--ik-font-weight-semibold);
    gap: var(--ik-space-2);
    margin-block-end: var(--ik-space-2);
    text-decoration: none;
}

.ik-theme-v2 .ik-dependent-form-shell__title,
.ik-theme-v2 .ik-dependent-form-shell__subtitle {
    margin: 0;
}

.ik-theme-v2 .ik-dependent-form-shell__title {
    color: var(--ik-color-text-strong);
    font-size: var(--ik-font-size-xl);
    font-weight: var(--ik-font-weight-bold);
}

.ik-theme-v2 .ik-dependent-form-shell__subtitle {
    color: var(--ik-color-text-muted);
    font-size: var(--ik-font-size-sm);
    margin-block-start: var(--ik-space-1);
}

.ik-theme-v2 .ik-dependent-form-shell__body {
    padding: var(--ik-space-6);
}

.ik-theme-v2 .ik-dependent-form-grid label {
    color: var(--ik-color-text);
    font-size: var(--ik-font-size-sm);
    font-weight: var(--ik-font-weight-semibold);
    margin-block-end: var(--ik-space-2);
}

.ik-theme-v2 .ik-dependent-form-shell__actions {
    border-block-start: 1px solid var(--ik-color-border);
    display: flex;
    justify-content: flex-end;
    margin-block-start: var(--ik-space-5);
    padding-block-start: var(--ik-space-4);
}

.ik-theme-v2 .ik-document-card__icon {
    background: #fff0f0;
    color: #d83a3a;
    font-size: 1.25rem;
    height: 2.75rem;
    width: 2.75rem;
}

.ik-theme-v2 .ik-document-card__content {
    min-width: 0;
}

.ik-theme-v2 .ik-document-card__name {
    color: var(--ik-color-text);
    font-size: var(--ik-font-size-sm);
    font-weight: var(--ik-font-weight-semibold);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ik-theme-v2 .ik-document-card__meta {
    display: flex;
    gap: var(--ik-space-1);
    margin-block-start: var(--ik-space-1);
}

.ik-theme-v2 .ik-document-card__action {
    color: var(--ik-color-primary-700);
    height: 2.25rem;
    margin-inline-start: auto;
    text-decoration: none;
    width: 2.25rem;
}

.ik-theme-v2 .ik-document-card__action:hover {
    background: var(--ik-color-primary-50);
}

.ik-theme-v2 .ik-documents-empty {
    align-items: center;
    color: var(--ik-color-text-muted);
    display: flex;
    flex-direction: column;
    gap: var(--ik-space-2);
    justify-content: center;
    min-height: 14rem;
    text-align: center;
}

.ik-theme-v2 .ik-documents-empty strong {
    color: var(--ik-color-text-strong);
    font-size: var(--ik-font-size-lg);
}

.ik-theme-v2 .ik-documents-empty__icon {
    background: var(--ik-color-primary-50);
    color: var(--ik-color-primary-700);
    font-size: 1.35rem;
    height: 3.5rem;
    margin-block-end: var(--ik-space-2);
    width: 3.5rem;
}

.ik-theme-v2 .ik-benefit-notes {
    background: var(--ik-color-primary-50);
    border: 1px solid var(--ik-color-border);
    border-radius: var(--ik-radius-md);
    color: var(--ik-color-text-muted);
    line-height: var(--ik-line-height-body);
    margin-block-start: var(--ik-space-4);
    padding: var(--ik-space-4);
}

.ik-theme-v2 .benefit-structure-display .preserve-lines {
    white-space: pre-line;
}

.ik-theme-v2 .benefit-structure-table th:nth-child(1) {
    width: 28%;
}

.ik-theme-v2 .benefit-structure-table th:nth-child(2) {
    width: 44%;
}

.ik-theme-v2 .benefit-structure-table th:nth-child(3) {
    width: 28%;
}

.ik-theme-v2 .benefit-structure-table > thead > tr > th:first-child,
.ik-theme-v2 .benefit-structure-table > tbody > tr > td:first-child {
    padding-inline-start: var(--ik-space-6);
}

.ik-theme-v2 .benefit-structure-table > thead > tr > th:last-child,
.ik-theme-v2 .benefit-structure-table > tbody > tr > td:last-child {
    padding-inline-end: var(--ik-space-6);
}

.ik-theme-v2 .ik-benefit-structure__body > .ik-data-table {
    border-radius: 0;
    box-shadow: none;
}

.ik-theme-v2 .ik-benefit-structure__body .ik-data-table__viewport {
    border-radius: 0;
}

/* Plan Detail uses the same framed surfaces and table rhythm as the portal lists. */
.ik-theme-v2 .ik-plan-detail .benefit-structure-display {
    background: var(--ik-color-surface);
    border: 1px solid var(--ik-color-border);
    border-radius: var(--ik-card-radius);
    min-width: 0;
    overflow: hidden;
}

.ik-theme-v2 .ik-plan-detail .ik-policy-heading {
    background: var(--ik-color-surface-soft);
    border-block-end: 1px solid var(--ik-color-border);
    flex-wrap: wrap;
}

.ik-theme-v2 .ik-plan-detail .ik-policy-period {
    max-width: 100%;
    white-space: normal;
}

.ik-theme-v2 .ik-plan-detail .ik-benefit-structure__body > .ik-data-table {
    border: 0;
}

.ik-theme-v2 .ik-plan-detail .ik-data-table__viewport table > tbody > tr:not(:last-child) > td {
    border-block-end: 1px solid var(--ik-color-border);
}

.ik-theme-v2 .ik-plan-detail .benefit-structure-table > tbody > tr > td:first-child {
    color: var(--ik-color-text-strong);
    font-weight: var(--ik-font-weight-semibold);
}

.ik-theme-v2 .ik-plan-detail .ik-benefit-notes {
    margin: var(--ik-space-5) var(--ik-space-6);
}

.ik-theme-v2 .ik-plan-members-table {
    min-width: 40rem;
}

.ik-theme-v2 .ik-plan-documents__list {
    display: grid;
    gap: var(--ik-space-3);
}

.ik-theme-v2 .ik-plan-documents .ik-document-card {
    color: var(--ik-color-primary-700);
    text-decoration: none;
}

.ik-theme-v2 .ik-plan-documents .ik-document-card:hover {
    background: var(--ik-color-surface-soft);
    border-color: var(--ik-color-primary-200);
}

.ik-theme-v2 .ik-plan-documents .ik-document-card__name {
    display: block;
    overflow-wrap: anywhere;
    white-space: normal;
}

@media (max-width: 767.98px) {
    .ik-theme-v2 .ik-plan-detail .benefit-structure-table > tbody > tr:not(:last-child) > td {
        border-block-end: 0;
    }
}

.ik-theme-v2 .category-plan-detail-table th:first-child {
    width: 72%;
}

.ik-theme-v2 .ik-legacy-table table {
    border: 0;
    border-collapse: separate;
    border-radius: var(--ik-table-radius);
    border-spacing: 0;
    color: var(--ik-color-text);
    overflow: hidden;
    width: 100%;
}

.ik-theme-v2 .ik-legacy-table th,
.ik-theme-v2 .ik-legacy-table td {
    border-block-end: 1px solid var(--ik-color-border);
    padding: var(--ik-table-cell-padding-y) var(--ik-table-cell-padding-x);
}

.ik-theme-v2 .ik-legacy-table th {
    background: var(--ik-color-table-head);
    color: var(--ik-color-table-heading);
    font-size: 1rem !important;
    font-weight: var(--ik-font-weight-bold);
    line-height: var(--ik-line-height-heading);
    letter-spacing: normal;
    text-transform: none;
}

.ik-theme-v2 .ik-legacy-table td {
    box-sizing: border-box;
    font-size: 0.9rem;
}

.ik-theme-v2 .ik-table__head .ik-table__cell > *,
.ik-theme-v2 .ik-legacy-table th > * {
    color: inherit !important;
    font-size: 1rem !important;
    font-weight: inherit;
    letter-spacing: normal;
    line-height: inherit;
    margin: 0;
    text-transform: none;
}

@media (max-width: 767.98px) {
    .ik-theme-v2 .ik-dependent-context,
    .ik-theme-v2 .ik-dependent-context__content {
        align-items: stretch;
        flex-direction: column;
    }

    .ik-theme-v2 .ik-dependent-context__employee {
        justify-content: space-between;
        width: 100%;
    }

    .ik-theme-v2 .ik-policy-heading {
        align-items: flex-start;
        flex-direction: column;
    }

    .ik-theme-v2 .ik-policy-period {
        white-space: normal;
    }

    .ik-theme-v2 .ik-policy-heading__identity {
        align-items: flex-start;
        width: 100%;
    }

    .ik-theme-v2 .ik-policy-period {
        margin-inline-start: 0;
    }

    .ik-theme-v2 .benefit-structure-table thead {
        display: none;
    }

    .ik-theme-v2 .benefit-structure-table,
    .ik-theme-v2 .benefit-structure-table tbody,
    .ik-theme-v2 .benefit-structure-table tr,
    .ik-theme-v2 .benefit-structure-table td {
        display: block;
        width: 100% !important;
    }

    .ik-theme-v2 .benefit-structure-table tr {
        border-block-end: 1px solid var(--ik-color-border);
        padding: var(--ik-space-3) 0;
    }

    .ik-theme-v2 .benefit-structure-table tr:last-child {
        border-block-end: 0;
    }

    .ik-theme-v2 .benefit-structure-table td {
        border: 0;
        padding: var(--ik-space-2) var(--ik-space-4);
    }

    .ik-theme-v2 .benefit-structure-table td::before {
        color: var(--ik-color-text-muted);
        content: attr(data-label);
        display: block;
        font-size: var(--ik-font-size-xs);
        font-weight: var(--ik-font-weight-bold);
        letter-spacing: 0.035em;
        margin-block-end: var(--ik-space-1);
        text-transform: uppercase;
    }
}

/* Buttons, badges, and action controls */
.ik-theme-v2 .ik-button {
    align-items: center;
    border: 1px solid transparent;
    border-radius: var(--ik-button-radius);
    display: inline-flex;
    font-family: var(--ik-font-family);
    font-size: var(--ik-font-size-sm);
    font-weight: var(--ik-font-weight-semibold);
    gap: var(--ik-space-2);
    justify-content: center;
    line-height: 1.25;
    min-height: var(--ik-button-height);
    padding: var(--ik-space-3) var(--ik-space-5);
    transition: background var(--ik-transition-base), border-color var(--ik-transition-base), box-shadow var(--ik-transition-base), color var(--ik-transition-base), transform var(--ik-transition-fast);
}

.ik-theme-v2 .ik-button:hover:not(:disabled):not([aria-disabled="true"]) {
    transform: translateY(-1px);
}

.ik-theme-v2 .ik-button:focus-visible {
    box-shadow: var(--ik-shadow-focus);
    outline: 0;
}

.ik-theme-v2 .ik-button--sm {
    min-height: var(--ik-control-height-sm);
    padding: var(--ik-space-2) var(--ik-space-4);
}

.ik-theme-v2 .ik-button--lg {
    font-size: var(--ik-font-size-md);
    min-height: var(--ik-control-height-lg);
    padding-inline: var(--ik-space-6);
}

.ik-theme-v2 .ik-button--primary {
    background: var(--ik-gradient-primary);
    color: var(--ik-color-surface);
}

/* Authenticated legacy primary actions inherit the approved Stage 8 treatment
   while pages are migrated to x-portal.button in Stage 12. */
.ik-theme-v2 .btn.btn-primary:not(.ik-button),
.ik-theme-v2 a.btn.btn-primary:not(.ik-button) {
    background: var(--ik-gradient-primary);
    border-color: transparent;
    border-radius: var(--ik-button-radius);
    color: var(--ik-color-surface);
    font-family: var(--ik-font-family);
    font-weight: var(--ik-font-weight-semibold);
    transition: background var(--ik-transition-base), box-shadow var(--ik-transition-base), transform var(--ik-transition-fast);
}

.ik-theme-v2 .btn.btn-primary:not(.ik-button):hover,
.ik-theme-v2 a.btn.btn-primary:not(.ik-button):hover {
    background: var(--ik-gradient-primary-hover);
    border-color: transparent;
    color: var(--ik-color-surface);
    transform: translateY(-1px);
}

.ik-theme-v2 .btn.btn-primary:not(.ik-button):focus-visible,
.ik-theme-v2 a.btn.btn-primary:not(.ik-button):focus-visible {
    box-shadow: var(--ik-shadow-focus);
    outline: 0;
}

.ik-theme-v2 .ik-button--primary:hover:not(:disabled):not([aria-disabled="true"]) {
    background: var(--ik-gradient-primary-hover);
    color: var(--ik-color-surface);
}

.ik-theme-v2 .ik-button--secondary {
    background: var(--ik-color-primary-100);
    color: var(--ik-color-primary-800);
}

.ik-theme-v2 .ik-button--outline {
    background: transparent;
    border-color: var(--ik-color-primary-200);
    color: var(--ik-color-primary-800);
}

.ik-theme-v2 .ik-button--accent {
    background: var(--ik-color-accent-600);
    color: var(--ik-color-surface);
}

.ik-theme-v2 .ik-button--danger {
    background: var(--ik-color-danger);
    color: var(--ik-color-surface);
}

.ik-theme-v2 .ik-button--text {
    background: transparent;
    color: var(--ik-color-primary-700);
}

.ik-theme-v2 .ik-button--secondary:hover:not(:disabled):not([aria-disabled="true"]),
.ik-theme-v2 .ik-button--outline:hover:not(:disabled):not([aria-disabled="true"]),
.ik-theme-v2 .ik-button--text:hover:not(:disabled):not([aria-disabled="true"]) {
    background: var(--ik-color-primary-50);
    color: var(--ik-color-primary-900);
}

.ik-theme-v2 .ik-button--accent:hover:not(:disabled):not([aria-disabled="true"]) {
    background: var(--ik-color-accent-700);
    color: var(--ik-color-surface);
}

.ik-theme-v2 .ik-button--danger:hover:not(:disabled):not([aria-disabled="true"]) {
    background: #b92f2f;
    color: var(--ik-color-surface);
}

.ik-theme-v2 .ik-button:disabled,
.ik-theme-v2 .ik-button[aria-disabled="true"] {
    background: var(--ik-color-disabled-bg);
    border-color: transparent;
    color: var(--ik-color-disabled-text);
    cursor: not-allowed;
    opacity: 1;
    pointer-events: none;
}

.ik-theme-v2 .ik-button__spinner {
    flex: 0 0 auto;
}

.ik-theme-v2 .ik-icon-button {
    height: var(--ik-button-height);
    min-height: var(--ik-button-height);
    padding: 0;
    width: var(--ik-button-height);
}

.ik-theme-v2 .ik-icon-button.ik-button--sm {
    height: var(--ik-control-height-sm);
    min-height: var(--ik-control-height-sm);
    width: var(--ik-control-height-sm);
}

.ik-theme-v2 .ik-icon-button.ik-button--lg {
    height: var(--ik-control-height-lg);
    min-height: var(--ik-control-height-lg);
    width: var(--ik-control-height-lg);
}

.ik-theme-v2 .ik-badge {
    align-items: center;
    border: 1px solid transparent;
    display: inline-flex;
    font-family: var(--ik-font-family);
    font-size: var(--ik-font-size-xs);
    font-weight: var(--ik-font-weight-semibold);
    gap: var(--ik-space-2);
    line-height: 1.25;
    padding: var(--ik-space-2) var(--ik-space-3);
}

.ik-theme-v2 .ik-badge--pill {
    border-radius: var(--ik-radius-pill);
}

.ik-theme-v2 .ik-badge--info { background: var(--ik-color-info-soft); color: var(--ik-color-primary-800); }
.ik-theme-v2 .ik-badge--success { background: var(--ik-color-success-soft); color: var(--ik-color-success); }
.ik-theme-v2 .ik-badge--warning { background: var(--ik-color-warning-soft); color: var(--ik-color-accent-700); }
.ik-theme-v2 .ik-badge--danger { background: var(--ik-color-danger-soft); color: var(--ik-color-danger); }
.ik-theme-v2 .ik-badge--neutral { background: var(--ik-color-disabled-bg); color: var(--ik-color-text-muted); }

.ik-theme-v2 .ik-status-badge__indicator {
    background: currentColor;
    border-radius: 50%;
    height: 0.45rem;
    width: 0.45rem;
}

.ik-theme-v2 .ik-action-menu__menu {
    border: 1px solid var(--ik-color-border);
    border-radius: var(--ik-radius-md);
    box-shadow: var(--ik-shadow-md);
    inset-inline-end: 0 !important;
    inset-inline-start: auto !important;
    margin-block-start: var(--ik-space-1);
    padding: var(--ik-space-1);
    top: 100% !important;
    transform: none !important;
}

.ik-theme-v2 .ik-action-menu__menu .dropdown-item {
    align-items: center;
    border-radius: var(--ik-radius-sm);
    color: var(--ik-color-text);
    display: flex;
    font-size: var(--ik-font-size-sm);
    gap: var(--ik-space-2);
    line-height: 1.25;
    padding: var(--ik-space-2) var(--ik-space-3);
    transition: background-color var(--ik-transition-fast), color var(--ik-transition-fast);
    width: 100%;
}

.ik-theme-v2 table .ik-action-menu__menu .dropdown-item.icone {
    background: transparent;
    border: 0;
    border-radius: var(--ik-radius-sm);
    height: auto;
    justify-content: flex-start;
    margin: 0;
    width: 100%;
}

.ik-theme-v2 .ik-action-menu__menu form {
    margin: 0;
    width: 100%;
}

.ik-theme-v2 .ik-action-menu__menu .dropdown-item i {
    color: var(--ik-color-text-muted);
    text-align: center;
    width: 1rem;
}

.ik-theme-v2 .ik-action-menu__menu .dropdown-divider {
    border-color: var(--ik-color-border);
    margin: var(--ik-space-1) var(--ik-space-2);
}

.ik-theme-v2 .ik-action-menu__menu .dropdown-item:hover,
.ik-theme-v2 .ik-action-menu__menu .dropdown-item:focus {
    background: var(--ik-color-primary-50);
    color: var(--ik-color-primary-800);
}

.ik-theme-v2 .ik-action-menu__menu .dropdown-item:hover i,
.ik-theme-v2 .ik-action-menu__menu .dropdown-item:focus i {
    color: var(--ik-color-primary-600);
}

.ik-theme-v2 .ik-action-menu__menu .dropdown-item--danger,
.ik-theme-v2 .ik-action-menu__menu .dropdown-item--danger i {
    color: var(--ik-color-danger);
}

.ik-theme-v2 .ik-action-menu__menu .dropdown-item--danger:hover,
.ik-theme-v2 .ik-action-menu__menu .dropdown-item--danger:focus {
    background: var(--ik-color-danger-soft);
    color: var(--ik-color-danger);
}

.ik-theme-v2 .ik-action-menu__menu .dropdown-item--danger:hover i,
.ik-theme-v2 .ik-action-menu__menu .dropdown-item--danger:focus i {
    color: var(--ik-color-danger);
}

.ik-theme-v2 .ik-action-menu__menu .dropdown-item--success,
.ik-theme-v2 .ik-action-menu__menu .dropdown-item--success i {
    color: var(--ik-color-success);
}

.ik-theme-v2 .ik-action-menu__menu .dropdown-item--success:hover,
.ik-theme-v2 .ik-action-menu__menu .dropdown-item--success:focus {
    background: var(--ik-color-success-soft);
    color: var(--ik-color-success);
}

.ik-theme-v2 .ik-action-menu__menu .dropdown-item:focus-visible {
    box-shadow: var(--ik-shadow-focus);
    outline: 0;
}

/* Shared Stage 8 table presentation; behavior remains owned by existing markup
   and DataTables initializers. */
.ik-theme-v2 .ik-table-action-column {
    text-align: center;
    white-space: nowrap;
    width: 4.5rem;
}

.ik-theme-v2 .ik-table-status-column {
    white-space: nowrap;
}

.ik-theme-v2 .ik-data-table__viewport table > tbody > tr:focus-within > td {
    background: var(--ik-color-primary-50);
}

.ik-theme-v2 .ik-data-table__viewport .ik-action-menu {
    display: inline-flex;
}

.ik-theme-v2 .ik-data-table__viewport .ik-action-menu__menu {
    min-width: 9.5rem;
    text-align: start;
    z-index: 1056;
}

/* Glass sidebar navigation */
.ik-theme-v2 .ik-sidebar {
    background: transparent !important;
    box-sizing: border-box;
    padding: var(--ik-space-3) var(--ik-space-2) var(--ik-space-4);
}

.ik-theme-v2 .ik-sidebar__surface {
    background: #ffffff;
    height: 100%;
    overflow: hidden;
    position: relative;
}

.ik-theme-v2 .ik-sidebar__scroll {
    margin: 0 !important;
    padding: var(--ik-space-5) var(--ik-space-4) var(--ik-space-6);
    position: relative;
    z-index: 1;
}

.ik-theme-v2 .ik-sidebar__menu {
    margin: 0 !important;
    padding: 0 !important;
    position: relative;
    z-index: 9999;
}

.ik-theme-v2 .custom-bg-primary {
    background: #146eb4;
}

.ik-theme-v2 .custom-text-primary {
    color: #146eb4;
}

.ik-theme-v2 .insurkar-logo-secondary {
    color: #ff9900;
}

.ik-theme-v2 .ik-sidebar__menu > .menu-item + .menu-item {
    margin-block-start: var(--ik-space-1);
}

.ik-theme-v2 .ik-sidebar__menu .menu-link {
    align-items: center;
    background: transparent;
    border-radius: 0.875rem;
    color: var(--ik-color-text);
    display: flex;
    font-family: var(--ik-font-family);
    font-size: 0.90625rem;
    font-weight: var(--ik-font-weight-medium);
    gap: var(--ik-space-3);
    min-height: 2.625rem;
    padding: 0.6875rem 0.875rem;
    transition: background-color 220ms ease, box-shadow 220ms ease, color 200ms ease, transform 220ms ease;
}

.ik-theme-v2 .ik-sidebar__menu .menu-link .menu-icon {
    color: #6b7c9c;
    flex: 0 0 1.25rem;
    margin: 0;
    width: 1.25rem;
}

.ik-theme-v2 .ik-sidebar__menu .menu-link .menu-icon i {
    color: inherit;
}

.ik-theme-v2 .ik-sidebar__menu .menu-link .menu-icon img {
    height: 1.25rem;
    object-fit: contain;
    opacity: 0.72;
    width: 1.25rem;
}

.ik-theme-v2 .ik-sidebar__menu .menu-link .menu-title {
    color: inherit;
    line-height: 1.35;
}

.ik-theme-v2 .ik-sidebar__menu .menu-link:hover {
    background: #e8f0fe;
    color: #0b3d91;
    transform: translateX(3px);
}

.ik-theme-v2 .ik-sidebar__menu .menu-link:hover .menu-title {
    color: #0b3d91 !important;
}

.ik-theme-v2 .ik-sidebar__menu .menu-link:hover .menu-icon,
.ik-theme-v2 .ik-sidebar__menu .menu-link:hover .menu-icon i {
    color: #1c64e0 !important;
}

.ik-theme-v2 .ik-sidebar__menu .menu-link:hover .menu-icon img {
    filter: brightness(0) saturate(100%) invert(34%) sepia(91%) saturate(1887%) hue-rotate(208deg) brightness(92%) contrast(92%);
    opacity: 1;
}

.ik-theme-v2 .ik-sidebar__menu .menu-link.active:not(.ik-sidebar__dashboard) {
    background: rgba(255, 255, 255, 0.86);
    box-shadow: 0 8px 18px -10px rgba(28, 64, 140, 0.25), inset 0 1px 0 rgba(255, 255, 255, 0.92);
    color: #0b3d91;
    font-weight: var(--ik-font-weight-bold);
}

.ik-theme-v2 .ik-sidebar__menu .menu-link.active:not(.ik-sidebar__dashboard) .menu-title {
    color: #0b3d91 !important;
}

.ik-theme-v2 .ik-sidebar__menu .menu-link.active:not(.ik-sidebar__dashboard) .menu-icon,
.ik-theme-v2 .ik-sidebar__menu .menu-link.active:not(.ik-sidebar__dashboard) .menu-icon i {
    color: #ff9130 !important;
}

.ik-theme-v2 .ik-sidebar__menu .menu-link.active:not(.ik-sidebar__dashboard) .menu-icon img {
    filter: brightness(0) saturate(100%) invert(61%) sepia(91%) saturate(1974%) hue-rotate(338deg) brightness(103%) contrast(101%);
    opacity: 1;
}

.ik-theme-v2 .ik-sidebar__dashboard,
.ik-theme-v2 .ik-sidebar__dashboard:hover,
.ik-theme-v2 .ik-sidebar__dashboard.active {
    background: linear-gradient(135deg, #1c64e0, #0b3d91) !important;
    border-radius: 1.125rem !important;
    box-shadow: 0 14px 26px -10px rgba(28, 100, 224, 0.55), inset 0 1px 0 rgba(255, 255, 255, 0.4);
    color: #ffffff !important;
    font-weight: var(--ik-font-weight-semibold) !important;
    margin-block-end: var(--ik-space-5);
    min-height: 3.375rem !important;
    padding: 0.875rem 1.125rem !important;
    transform: none !important;
}

.ik-theme-v2 .ik-sidebar__dashboard .menu-icon {
    align-items: center;
    background: rgba(255, 255, 255, 0.22);
    border-radius: var(--ik-radius-sm);
    color: #ffffff !important;
    display: flex;
    flex: 0 0 1.75rem !important;
    height: 1.75rem;
    justify-content: center;
    width: 1.75rem !important;
}

.ik-theme-v2 .ik-sidebar__menu .ik-sidebar__dashboard .menu-title,
.ik-theme-v2 .ik-sidebar__menu .ik-sidebar__dashboard:hover .menu-title,
.ik-theme-v2 .ik-sidebar__menu .ik-sidebar__dashboard.active .menu-title {
    color: #ffffff !important;
}

.ik-theme-v2 .ik-sidebar__menu .ik-sidebar__dashboard .menu-icon,
.ik-theme-v2 .ik-sidebar__menu .ik-sidebar__dashboard .menu-icon i,
.ik-theme-v2 .ik-sidebar__menu .ik-sidebar__dashboard:hover .menu-icon,
.ik-theme-v2 .ik-sidebar__menu .ik-sidebar__dashboard:hover .menu-icon i,
.ik-theme-v2 .ik-sidebar__menu .ik-sidebar__dashboard.active .menu-icon,
.ik-theme-v2 .ik-sidebar__menu .ik-sidebar__dashboard.active .menu-icon i {
    color: #ffffff !important;
}

.ik-theme-v2 .ik-sidebar__menu .ik-sidebar__dashboard .menu-icon img {
    filter: brightness(0) invert(1);
    opacity: 1;
}

.ik-theme-v2 .ik-sidebar__menu .badge {
    background: var(--ik-color-primary-100) !important;
    border-radius: var(--ik-radius-pill);
    color: var(--ik-color-primary-800) !important;
    font-size: var(--ik-font-size-xs);
    margin-inline-start: auto;
}

.ik-theme-v2 .ik-sidebar__menu .menu-link.active .badge {
    background: var(--ik-color-accent-50) !important;
    color: var(--ik-color-accent-700) !important;
}

.ik-theme-v2 .ik-sidebar__divider {
    background: linear-gradient(90deg, transparent, rgba(22, 41, 77, 0.14), transparent);
    border: 0;
    height: 1px;
    margin: var(--ik-space-5) var(--ik-space-2) var(--ik-space-3);
    opacity: 1;
}

.ik-theme-v2 .ik-sidebar__section-label {
    color: #0b3d91;
    font-family: var(--ik-font-family);
    font-size: 0.8125rem;
    font-weight: var(--ik-font-weight-bold);
    margin: 0;
    padding: 0 var(--ik-space-3) var(--ik-space-2);
}

.ik-theme-v2 .ik-sidebar__product {
    border-radius: 0.8125rem !important;
    font-size: var(--ik-font-size-sm) !important;
    min-height: 2.375rem !important;
    padding: 0.5625rem 0.875rem !important;
}

.ik-theme-v2 .ik-sidebar__product .insurkar-logo-secondary {
    flex: 0 0 0.5rem;
    margin: 0 !important;
    width: 0.5rem;
}

.ik-theme-v2 .ik-sidebar__product .fa-circle {
    background: radial-gradient(circle at 30% 30%, #ffb066, #ff9130);
    border-radius: 50%;
    box-shadow: 0 0 8px rgba(255, 145, 48, 0.55);
    color: transparent !important;
    display: block;
    font-size: 0;
    height: 0.5rem;
    width: 0.5rem;
}

.ik-theme-v2 .ik-sidebar__see-more,
.ik-theme-v2 .ik-sidebar__see-more:hover,
.ik-theme-v2 .ik-sidebar__see-more.active {
    background: linear-gradient(135deg, #1c64e0, #0b3d91) !important;
    border-radius: 1rem !important;
    box-shadow: 0 14px 24px -12px rgba(28, 100, 224, 0.5), inset 0 1px 0 rgba(255, 255, 255, 0.35);
    color: #ffffff !important;
    font-size: var(--ik-font-size-sm) !important;
    font-weight: var(--ik-font-weight-bold) !important;
    justify-content: center;
    margin-block-start: var(--ik-space-3);
    min-height: 2.75rem !important;
    padding: var(--ik-space-3) var(--ik-space-4) !important;
    transform: none !important;
}

.ik-theme-v2 .ik-sidebar__see-more .menu-arrow {
    margin: 0;
}

.ik-theme-v2 .ik-sidebar__menu .ik-sidebar__see-more .menu-title,
.ik-theme-v2 .ik-sidebar__menu .ik-sidebar__see-more:hover .menu-title,
.ik-theme-v2 .ik-sidebar__menu .menu-link.ik-sidebar__see-more.active .menu-title,
.ik-theme-v2 .ik-sidebar__menu .menu-link.ik-sidebar__see-more.active .ik-sidebar__see-more-close {
    color: #ffffff !important;
}

.ik-theme-v2 .ik-sidebar__see-more .menu-arrow::after {
    background-color: #ffffff;
}

.ik-theme-v2 .ik-sidebar__see-more-close {
    color: #ffffff !important;
    display: none;
}

.ik-theme-v2 .ik-sidebar__see-more.active .ik-sidebar__see-more-open {
    display: none;
}

.ik-theme-v2 .ik-sidebar__see-more.active .ik-sidebar__see-more-close {
    display: inline;
}

.ik-theme-v2 .ik-sidebar__more-products {
    padding-block-start: var(--ik-space-2);
}

.ik-theme-v2[data-kt-app-sidebar-minimize="on"] .ik-sidebar {
    padding-inline: var(--ik-space-2);
}

.ik-theme-v2[data-kt-app-sidebar-minimize="on"] .ik-sidebar__scroll {
    padding-inline: var(--ik-space-2);
}

.ik-theme-v2[data-kt-app-sidebar-minimize="on"] .ik-sidebar__menu .menu-link {
    justify-content: center;
    padding-inline: var(--ik-space-2) !important;
}

.ik-theme-v2[data-kt-app-sidebar-minimize="on"] .ik-sidebar__dashboard .menu-icon {
    flex-basis: 1.75rem !important;
}

.ik-theme-v2[data-kt-app-sidebar-minimize="on"] .ik-sidebar__divider,
.ik-theme-v2[data-kt-app-sidebar-minimize="on"] .ik-sidebar__section-label {
    display: none;
}

@media (max-width: 991.98px) {
    .ik-theme-v2 .ik-document-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ik-theme-v2 .ik-sidebar {
        padding: var(--ik-space-2);
    }

}

@media (prefers-reduced-motion: reduce) {
    .ik-theme-v2 .ik-sidebar__menu .menu-link {
        transition: none;
    }

    .ik-theme-v2 .ik-sidebar__menu .menu-link:hover {
        transform: none;
    }
}

/* Interactive DataTable wrappers */
.ik-theme-v2 .ik-form-workspace {
    background: var(--ik-color-surface);
    border: 1px solid var(--ik-color-border);
    border-radius: var(--ik-radius-lg);
    overflow: hidden;
}

.ik-theme-v2 .ik-form-workspace__header {
    align-items: flex-start;
    border-block-end: 1px solid var(--ik-color-border);
    display: flex;
    gap: var(--ik-space-5);
    justify-content: space-between;
    padding: var(--ik-space-6);
}

.ik-theme-v2 .ik-form-workspace__header h2,
.ik-theme-v2 .ik-form-workspace__header p,
.ik-theme-v2 .ik-form-section__heading h3,
.ik-theme-v2 .ik-form-section__heading p {
    font-family: var(--ik-font-family);
    margin: 0;
}

.ik-theme-v2 .ik-form-workspace__header h2 {
    color: var(--ik-color-text-strong);
    font-size: var(--ik-font-size-xl);
    font-weight: var(--ik-font-weight-bold);
}

.ik-theme-v2 .ik-form-workspace__header p,
.ik-theme-v2 .ik-form-section__heading p {
    color: var(--ik-color-text-muted);
    font-size: var(--ik-font-size-sm);
    margin-block-start: var(--ik-space-1);
}

.ik-theme-v2 .ik-form-workspace__body {
    padding: var(--ik-space-6);
}

.ik-theme-v2 .ik-form-section {
    border-block-end: 1px solid var(--ik-color-border);
    margin-block-end: var(--ik-space-6);
    padding-block-end: var(--ik-space-6);
}

.ik-theme-v2 .ik-form-section__heading {
    margin-block-end: var(--ik-space-4);
}

.ik-theme-v2 .ik-form-section__heading h3 {
    color: var(--ik-color-text);
    font-size: var(--ik-font-size-md);
    font-weight: var(--ik-font-weight-bold);
}

.ik-theme-v2 .ik-form-field--medium {
    max-width: 40rem;
}

.ik-theme-v2 .ik-repeater-list {
    display: grid;
    gap: var(--ik-space-3);
    margin-block-end: var(--ik-space-4);
}

.ik-theme-v2 .ik-repeater-item {
    align-items: center;
    background: var(--ik-color-surface-soft);
    border: 1px solid var(--ik-color-border);
    border-radius: var(--ik-radius-md);
    display: flex;
    gap: var(--ik-space-3);
    padding: var(--ik-space-4);
}

.ik-theme-v2 .ik-repeater-item__content {
    display: grid;
    flex: 1 1 auto;
    gap: var(--ik-space-3);
    grid-template-columns: minmax(10rem, 0.8fr) minmax(16rem, 1.5fr);
    min-width: 0;
}

.ik-theme-v2 .ik-repeater-item__content--email {
    align-items: center;
    grid-template-columns: minmax(16rem, 1fr) auto;
}

.ik-theme-v2 .ik-repeater-item__content--single {
    grid-template-columns: minmax(16rem, 1fr);
}

.ik-theme-v2 .ik-repeater-item .ik-field {
    margin-block-end: 0;
}

.ik-theme-v2 .ik-repeater-primary {
    align-items: center;
    color: var(--ik-color-text);
    display: inline-flex;
    font-size: var(--ik-font-size-sm);
    font-weight: var(--ik-font-weight-medium);
    gap: var(--ik-space-2);
    white-space: nowrap;
}

.ik-theme-v2 .ik-existing-file {
    align-items: center;
    color: var(--ik-color-primary-700);
    display: inline-flex;
    font-size: var(--ik-font-size-xs);
    gap: var(--ik-space-1);
    margin-block-start: var(--ik-space-2);
}

.ik-theme-v2 .ik-form-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: var(--ik-space-2);
    justify-content: flex-end;
}

.ik-theme-v2 .ik-lookup-panel {
    background: var(--ik-color-surface);
    border: 1px solid var(--ik-color-border);
    border-radius: var(--ik-radius-lg);
    margin-block-end: var(--ik-space-5);
    padding: var(--ik-space-6);
}

.ik-theme-v2 .ik-lookup-panel__heading h2,
.ik-theme-v2 .ik-lookup-panel__heading p {
    font-family: var(--ik-font-family);
    margin: 0;
}

.ik-theme-v2 .ik-lookup-panel__heading h2 {
    color: var(--ik-color-text-strong);
    font-size: var(--ik-font-size-xl);
    font-weight: var(--ik-font-weight-bold);
}

.ik-theme-v2 .ik-lookup-panel__heading p {
    color: var(--ik-color-text-muted);
    font-size: var(--ik-font-size-sm);
    margin-block-start: var(--ik-space-1);
}

.ik-theme-v2 .ik-lookup-form {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    gap: var(--ik-space-3);
    margin-block-start: var(--ik-space-5);
}

.ik-theme-v2 .ik-lookup-form__field {
    flex: 1 1 20rem;
    margin-block-end: 0;
    max-width: 30rem;
}

.ik-theme-v2 .ik-lookup-form__actions {
    align-items: center;
    display: flex;
    gap: var(--ik-space-2);
    padding-block-start: 1.75rem;
}

.ik-theme-v2 .ik-lookup-state {
    color: var(--ik-color-text-muted);
    font-family: var(--ik-font-family);
    font-size: var(--ik-font-size-sm);
    padding: var(--ik-space-3) var(--ik-space-1);
}

.ik-theme-v2 .ik-lookup-state strong {
    color: var(--ik-color-text);
    font-weight: var(--ik-font-weight-semibold);
}

.ik-theme-v2 .ik-destination-cell {
    align-items: center;
    display: flex;
    gap: var(--ik-space-3);
    min-width: 13rem;
}

.ik-theme-v2 .ik-destination-cell__image {
    background: var(--ik-color-primary-50);
    border-radius: var(--ik-radius-sm);
    flex: 0 0 3rem;
    height: 3rem;
    overflow: hidden;
}

.ik-theme-v2 .ik-destination-cell__image img {
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.ik-theme-v2 .ik-destination-cell__name {
    color: var(--ik-color-text);
    font-weight: var(--ik-font-weight-semibold);
    line-height: var(--ik-line-height-heading);
}

.ik-theme-v2 .ik-user-identity {
    align-items: center;
    display: inline-flex;
    gap: var(--ik-space-3);
    max-width: 100%;
    min-width: 0;
}

.ik-theme-v2 .ik-user-identity__avatar {
    align-items: center;
    background: var(--ik-color-primary-100);
    border-radius: 50%;
    color: var(--ik-color-primary-800);
    display: inline-flex;
    flex: 0 0 2.5rem;
    font-size: var(--ik-font-size-sm);
    font-weight: var(--ik-font-weight-bold);
    height: 2.5rem;
    justify-content: center;
    width: 2.5rem;
}

.ik-theme-v2 .ik-user-identity--deleted .ik-user-identity__avatar {
    background: var(--ik-color-danger-soft);
    color: var(--ik-color-danger);
}

.ik-theme-v2 .ik-user-identity--deleted .ik-user-identity__name {
    color: var(--ik-color-danger);
}

.ik-theme-v2 .ik-table-employee-cell .ik-user-identity {
    max-width: 14rem;
}

.ik-theme-v2 .ik-table-employee-cell .ik-user-identity__name {
    white-space: normal;
    overflow: visible;
    text-overflow: clip;
    overflow-wrap: anywhere;
}

.ik-theme-v2 .ik-claim-employee-cell .ik-user-identity {
    max-width: 100%;
}

.ik-theme-v2 .ik-claim-employee-cell .ik-user-identity__content {
    min-width: 7rem;
}

.ik-theme-v2 .ik-claim-employee-cell .ik-user-identity__name {
    overflow: visible;
    text-overflow: clip;
    white-space: nowrap;
}

.ik-theme-v2 .ik-user-identity--sm .ik-user-identity__avatar {
    flex-basis: 2rem;
    height: 2rem;
    width: 2rem;
}

.ik-theme-v2 .ik-user-identity--lg .ik-user-identity__avatar {
    flex-basis: 3rem;
    font-size: var(--ik-font-size-md);
    height: 3rem;
    width: 3rem;
}

.ik-theme-v2 .ik-user-identity__avatar img {
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.ik-theme-v2 .ik-user-identity__content {
    display: grid;
    min-width: 0;
}

.ik-theme-v2 .ik-user-identity__name {
    color: var(--ik-color-text);
    font-weight: var(--ik-font-weight-semibold);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ik-theme-v2 .ik-user-identity__subtitle {
    color: var(--ik-color-text-muted);
    font-size: var(--ik-font-size-xs) !important;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ik-theme-v2 .ik-table-pagination {
    display: flex;
    justify-content: flex-end;
    padding-block-start: var(--ik-space-4);
}

.ik-theme-v2 .ik-fluctuations-workspace {
    display: grid;
    gap: var(--ik-space-5);
}

.ik-theme-v2 .ik-record-filters {
    align-items: end;
    background: var(--ik-color-surface);
    border: 1px solid var(--ik-color-border);
    border-radius: var(--ik-radius-lg);
    display: grid;
    gap: var(--ik-space-3);
    grid-template-columns: minmax(14rem, 1.5fr) minmax(10rem, 1fr) minmax(10rem, 1fr) auto;
    padding: var(--ik-space-5);
}

.ik-theme-v2 .ik-record-filter-field {
    display: grid;
    gap: var(--ik-space-2);
    min-width: 0;
}

.ik-theme-v2 .ik-record-filter-field .form-label {
    color: var(--ik-color-text);
    font-size: var(--ik-font-size-sm);
    font-weight: var(--ik-font-weight-semibold);
    margin: 0;
}

.ik-theme-v2 .ik-record-filter-field .form-control,
.ik-theme-v2 .ik-record-filter-field .form-select {
    border: 1px solid var(--ik-color-border);
    border-radius: var(--ik-radius-sm);
    color: var(--ik-color-text);
    font-size: var(--ik-font-size-sm);
    min-height: var(--ik-button-height);
    padding-inline: var(--ik-space-3);
}

.ik-theme-v2 .ik-record-filter-field .form-control:focus,
.ik-theme-v2 .ik-record-filter-field .form-select:focus {
    border-color: var(--ik-color-focus);
    box-shadow: var(--ik-shadow-focus);
}

.ik-theme-v2 .ik-record-filter-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: var(--ik-space-2);
}

.ik-theme-v2 .ik-record-filter-error {
    grid-column: 1 / -1;
}

/* Compact guidance keeps the claims list close to the top of the page. */
.ik-theme-v2 .ik-claim-procedures ol {
    margin: 0;
    padding-inline-start: var(--ik-space-5);
}

.ik-theme-v2 .ik-claim-procedures .ik-card__header {
    padding-block: var(--ik-space-3);
}

.ik-theme-v2 .ik-claim-documents {
    display: grid;
    gap: var(--ik-space-2);
}

.ik-theme-v2 .ik-claim-documents__provider {
    background: var(--ik-color-surface);
    border: 1px solid var(--ik-color-border);
    border-radius: var(--ik-radius-md);
}

.ik-theme-v2 .ik-claim-documents__provider > summary {
    color: var(--ik-color-primary-700);
    cursor: pointer;
    padding: var(--ik-space-3) var(--ik-space-4);
}

.ik-theme-v2 .ik-claim-documents__title {
    color: var(--ik-color-text-strong);
    font-weight: var(--ik-font-weight-semibold);
}

.ik-theme-v2 .ik-claim-documents__hint {
    display: inline-block;
    font-size: var(--ik-font-size-sm);
    margin-inline-start: var(--ik-space-3);
}

.ik-theme-v2 .ik-claim-documents__links {
    border-block-start: 1px solid var(--ik-color-border);
    display: grid;
    gap: var(--ik-space-3) var(--ik-space-5);
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 20rem), 1fr));
    padding: var(--ik-space-4);
}

.ik-theme-v2 .ik-claim-documents__links a {
    align-items: baseline;
    display: flex;
    gap: var(--ik-space-2);
    overflow-wrap: anywhere;
}

.ik-theme-v2 .ik-claims-workspace {
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
}

.ik-theme-v2 .ik-claims-controls {
    display: grid;
    gap: var(--ik-space-4);
    margin-block-end: var(--ik-space-5);
}

.ik-theme-v2 .ik-claims-tabs-wrap {
    display: flex;
}

.ik-theme-v2 .ik-claims-tabs {
    background: var(--ik-color-primary-50);
    border: 1px solid var(--ik-color-border);
    border-radius: var(--ik-radius-md);
    display: inline-flex;
    gap: var(--ik-space-1);
    padding: var(--ik-space-1);
}

.ik-theme-v2 .ik-claims-tab {
    border: 0 !important;
    border-radius: var(--ik-radius-sm) !important;
    color: var(--ik-color-text-muted);
    font-size: var(--ik-font-size-sm);
    font-weight: var(--ik-font-weight-semibold);
    min-width: 6rem;
    padding: var(--ik-space-2) var(--ik-space-4) !important;
    text-align: center;
    transition: background var(--ik-transition-fast), color var(--ik-transition-fast), box-shadow var(--ik-transition-fast);
}

.ik-theme-v2 .ik-claims-tab:hover {
    background: var(--ik-color-surface);
    color: var(--ik-color-primary-800);
}

.ik-theme-v2 .ik-claims-tab.active {
    background: var(--ik-gradient-primary) !important;
    box-shadow: var(--ik-shadow-xs);
    color: var(--ik-color-surface) !important;
}

.ik-theme-v2 .ik-claims-tab:focus-visible {
    box-shadow: var(--ik-shadow-focus);
    outline: 0;
}

.ik-theme-v2 .ik-claims-filters {
    align-items: end;
    background: var(--ik-color-surface);
    border: 1px solid var(--ik-color-border);
    border-radius: var(--ik-radius-lg);
    display: grid;
    gap: var(--ik-space-3);
    grid-template-columns: minmax(9rem, 0.8fr) minmax(9rem, 0.8fr) minmax(14rem, 1.8fr) minmax(9rem, 0.8fr) minmax(11rem, 1fr) auto auto auto;
    padding: var(--ik-space-5);
}

.ik-theme-v2 .ik-claims-filter-field {
    display: grid;
    gap: var(--ik-space-2);
    min-width: 0;
}

.ik-theme-v2 .ik-claims-filter-field .form-label {
    color: var(--ik-color-text);
    font-size: var(--ik-font-size-sm);
    font-weight: var(--ik-font-weight-semibold);
    margin: 0 !important;
}

.ik-theme-v2 .ik-claims-filter-field .form-control,
.ik-theme-v2 .ik-claims-filter-field .form-select {
    border: 1px solid var(--ik-color-border);
    border-radius: var(--ik-radius-sm);
    color: var(--ik-color-text);
    font-size: var(--ik-font-size-sm);
    min-height: var(--ik-button-height);
    padding-inline: var(--ik-space-3);
}

.ik-theme-v2 .ik-claims-filter-field .form-control:focus,
.ik-theme-v2 .ik-claims-filter-field .form-select:focus {
    border-color: var(--ik-color-focus);
    box-shadow: var(--ik-shadow-focus);
}

.ik-theme-v2 .ik-claims-filter-action {
    align-items: center;
    display: flex;
}

.ik-theme-v2 .ik-claims-filter-action .ik-button {
    min-height: var(--ik-button-height);
}

.ik-theme-v2 .ik-claims-filter-action--reset .ik-button {
    padding-inline: var(--ik-space-3);
}

.ik-theme-v2 .ik-claims-filters > .text-danger {
    grid-column: 1 / -1;
}

.ik-theme-v2 .ik-claims-workspace__body {
    padding: 0;
}

.ik-theme-v2 .ik-data-table {
    background: var(--ik-color-surface);
    border: 0;
    border-radius: var(--ik-table-radius);
    box-shadow: 0 0 0 1px var(--ik-color-border);
    min-width: 0;
    position: relative;
}

.ik-theme-v2 .ik-data-table__header {
    align-items: center;
    display: flex;
    gap: var(--ik-space-6);
    justify-content: space-between;
    min-height: 8.5rem;
    padding: var(--ik-space-6);
}

.ik-theme-v2 .ik-data-table__heading {
    min-width: 0;
}

.ik-theme-v2 .ik-data-table__title,
.ik-theme-v2 .ik-data-table__subtitle {
    font-family: var(--ik-font-family);
    margin: 0;
}

.ik-theme-v2 .ik-data-table__title {
    color: var(--ik-color-text-strong);
    font-size: var(--ik-font-size-xl);
    font-weight: var(--ik-font-weight-bold);
    line-height: var(--ik-line-height-heading);
}

.ik-theme-v2 .ik-table tbody .ik-table__cell > *,
.ik-theme-v2 .ik-legacy-table td > * {
    font-size: 0.9rem !important;
}

.ik-theme-v2 .ik-data-table__subtitle {
    color: var(--ik-color-text-muted);
    font-size: var(--ik-font-size-sm);
    line-height: var(--ik-line-height-body);
    margin-block-start: var(--ik-space-1);
}

.ik-theme-v2 .ik-data-table__controls {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: var(--ik-space-3);
    justify-content: flex-end;
    margin-inline-start: auto;
}

.ik-theme-v2 .ik-employees-table .ik-data-table__header {
    min-height: 0;
}

.ik-theme-v2 .ik-employees-table .ik-data-table__controls {
    align-items: flex-end;
    flex-direction: column;
    gap: var(--ik-space-3);
}

.ik-theme-v2 .ik-employees-table .ik-data-table__toolbar {
    justify-content: flex-end;
    width: 100%;
}

.ik-theme-v2 .ik-employees-table .ik-data-table__header-actions {
    flex-wrap: wrap;
    justify-content: flex-end;
}

.ik-theme-v2 .ik-onboarding-requests-table .ik-data-table__header {
    align-items: flex-end;
    gap: var(--ik-space-4);
    min-height: 0;
    padding: var(--ik-space-6);
}

.ik-theme-v2 .ik-onboarding-requests-table .ik-data-table__heading {
    flex: 1 1 18rem;
    padding-block-end: var(--ik-space-1);
}

.ik-theme-v2 .ik-onboarding-requests-table .ik-data-table__controls {
    flex: 2 1 48rem;
    max-width: 74rem;
}

.ik-theme-v2 .ik-onboarding-requests-table .ik-data-table__toolbar {
    align-items: flex-end;
    display: grid;
    gap: var(--ik-space-3);
    grid-template-columns: minmax(18rem, 1fr) minmax(20rem, 1.15fr) auto;
    width: 100%;
}

.ik-theme-v2 .ik-onboarding-requests-table .ik-data-table__search {
    min-width: 0;
    width: 100%;
}

.ik-theme-v2 .ik-onboarding-requests-filter {
    align-items: flex-end;
    display: grid;
    gap: var(--ik-space-2);
    grid-template-columns: minmax(14rem, 1fr) auto auto;
}

.ik-theme-v2 .ik-onboarding-requests-filter__field {
    min-width: 0;
}

.ik-theme-v2 .ik-onboarding-requests-filter .form-label {
    color: var(--ik-color-text-strong);
    font-size: var(--ik-font-size-xs);
    font-weight: var(--ik-font-weight-semibold);
    line-height: 1.2;
}

.ik-theme-v2 .ik-onboarding-requests-filter .form-select {
    border-color: var(--ik-color-border);
    border-radius: var(--ik-radius-md);
    color: var(--ik-color-text);
    min-height: var(--ik-button-height);
}

.ik-theme-v2 .ik-onboarding-requests-count {
    align-self: center;
    justify-self: end;
    white-space: nowrap;
}

.ik-theme-v2 .ik-employees-table .ik-employee-view-switch {
    display: flex;
    margin: 0;
}

.ik-theme-v2 .ik-employees-table thead th:first-child {
    align-items: center;
    display: table-cell;
}

.ik-theme-v2 .ik-employees-table thead th:first-child input {
    margin-inline-end: var(--ik-space-3);
    vertical-align: middle;
}

.ik-theme-v2 .ik-employee-identity-cell {
    align-items: center;
    display: flex;
    gap: var(--ik-space-2);
    min-width: 18rem;
}

.ik-theme-v2 .ik-employee-identity-cell .employee-checkbox {
    flex: 0 0 auto;
    margin-inline-end: var(--ik-space-1);
}

.ik-theme-v2 .ik-data-table__header-actions {
    align-items: center;
    display: flex;
    gap: var(--ik-space-3);
}

.ik-theme-v2 .ik-data-table__toolbar {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: var(--ik-space-3);
    justify-content: space-between;
    padding: 0;
}

.ik-theme-v2 .ik-data-table__filters,
.ik-theme-v2 .ik-data-table__actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: var(--ik-space-3);
}

.ik-theme-v2 .ik-data-table__actions {
    margin-inline-start: auto;
}

.ik-theme-v2 .ik-data-table__search {
    min-width: min(100%, 20rem);
    position: relative;
}

.ik-theme-v2 .ik-data-table__search-icon {
    color: var(--ik-color-text-muted);
    inset-inline-start: var(--ik-space-4);
    pointer-events: none;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 1;
}

.ik-theme-v2 .ik-data-table__search-control {
    background: var(--ik-color-surface);
    border: 1px solid var(--ik-color-border);
    border-radius: var(--ik-radius-md);
    color: var(--ik-color-text);
    min-height: var(--ik-button-height);
    padding-inline: calc(var(--ik-space-8) + var(--ik-space-2)) var(--ik-space-4);
    transition: border-color var(--ik-transition-base), box-shadow var(--ik-transition-base);
}

.ik-theme-v2 .ik-data-table__search-control:focus {
    border-color: var(--ik-color-focus);
    box-shadow: var(--ik-shadow-focus);
}

.ik-theme-v2 .ik-data-table__viewport {
    border: 0;
    border-radius: 0 0 var(--ik-table-radius) var(--ik-table-radius);
    overflow: auto;
}

.ik-theme-v2 .ik-data-table__viewport table {
    --bs-table-bg: transparent;
    border-collapse: separate;
    border-spacing: 0;
    color: var(--ik-color-text);
    font-family: var(--ik-font-family);
    margin: 0 !important;
    min-width: 100%;
}

.ik-theme-v2 .ik-data-table__viewport table.ik-table--balanced-columns {
    table-layout: fixed;
}

.ik-theme-v2 .ik-data-table__viewport table.ik-table--balanced-columns > tbody > tr > td {
    overflow-wrap: anywhere;
}

.ik-theme-v2 .ik-data-table__viewport table > thead {
    background: var(--ik-color-table-head);
}

.ik-theme-v2 .ik-data-table__viewport table > thead > tr > th {
    border: 0;
    color: var(--ik-color-table-heading);
    box-sizing: border-box;
    font-size: 1rem !important;
    font-weight: var(--ik-font-weight-bold);
    line-height: var(--ik-line-height-heading);
    letter-spacing: normal;
    padding: var(--ik-space-5) var(--ik-table-cell-padding-x);
    text-transform: none;
    vertical-align: middle;
    white-space: nowrap;
}

.ik-theme-v2 .ik-data-table__viewport table > thead > tr > th > * {
    color: inherit !important;
    font-size: 1rem !important;
    font-weight: inherit;
    letter-spacing: normal;
    line-height: inherit;
    margin: 0;
    text-transform: none;
}

.ik-theme-v2 .ik-data-table__viewport table > tbody > tr > td {
    border: 0;
    color: var(--ik-color-text);
    box-sizing: border-box;
    font-size: 0.9rem;
    padding: var(--ik-space-5) var(--ik-table-cell-padding-x);
    vertical-align: middle;
}

.ik-theme-v2 .ik-data-table__viewport table > tbody > tr > td > * {
    font-size: 0.9rem !important;
    line-height: inherit;
    margin-block: 0;
}

.ik-theme-v2 .ik-data-table__viewport table > tbody > tr > td > .ik-badge,
.ik-theme-v2 .ik-data-table__viewport table > tbody > tr > td > .ik-action-menu {
    font-size: var(--ik-font-size-xs) !important;
}

.ik-theme-v2 .ik-data-table__viewport table > tbody > tr:last-child > td {
    border-block-end: 0;
}

.ik-theme-v2 .ik-data-table__viewport table > tbody > tr:hover > td {
    background: var(--ik-color-surface-soft);
}

.ik-theme-v2 .ik-table-cell--start {
    text-align: start;
}

.ik-theme-v2 .ik-table-cell--center {
    text-align: center;
}

.ik-theme-v2 .ik-table-cell--end {
    text-align: end;
}

.ik-theme-v2 .ik-table-cell--nowrap {
    white-space: nowrap;
}

.ik-theme-v2 .ik-rendered-table__empty-cell {
    color: var(--ik-color-text-muted);
    padding: var(--ik-space-10) var(--ik-table-cell-padding-x) !important;
    text-align: center;
}

.ik-theme-v2 .ik-rendered-table__empty-row:hover .ik-rendered-table__empty-cell {
    background: transparent;
}

.ik-theme-v2 .ik-data-table__loading {
    align-items: center;
    background: rgba(255, 255, 255, 0.84);
    color: var(--ik-color-primary-800);
    display: flex;
    font-weight: var(--ik-font-weight-semibold);
    gap: var(--ik-space-3);
    inset: 0;
    justify-content: center;
    position: absolute;
    z-index: 3;
}

.ik-theme-v2 .ik-data-table__loading .spinner-border {
    height: 1.5rem;
    width: 1.5rem;
}

.ik-theme-v2 .ik-data-table .dataTables_wrapper,
.ik-theme-v2 .ik-data-table .dt-container {
    color: var(--ik-color-text-muted);
    font-family: var(--ik-font-family);
}

.ik-theme-v2 .ik-data-table .dataTables_length,
.ik-theme-v2 .ik-data-table .dataTables_info,
.ik-theme-v2 .ik-data-table .dataTables_paginate,
.ik-theme-v2 .ik-data-table .dt-length,
.ik-theme-v2 .ik-data-table .dt-info,
.ik-theme-v2 .ik-data-table .dt-paging {
    margin-block: var(--ik-space-5);
}

.ik-theme-v2 .ik-data-table .dataTables_length select,
.ik-theme-v2 .ik-data-table .dt-length select {
    background-color: var(--ik-color-surface-soft);
    border: 0;
    border-radius: var(--ik-radius-sm);
    color: var(--ik-color-text);
    min-height: var(--ik-control-height-sm);
}

.ik-theme-v2 .ik-data-table .dataTables_paginate .paginate_button,
.ik-theme-v2 .ik-data-table .dt-paging .dt-paging-button {
    border: 0 !important;
    border-radius: var(--ik-radius-md) !important;
    color: var(--ik-color-text-muted) !important;
    margin-inline: var(--ik-space-1);
    min-height: var(--ik-control-height-sm);
    min-width: var(--ik-control-height-sm);
}

.ik-theme-v2 .ik-data-table .dataTables_paginate .paginate_button.current,
.ik-theme-v2 .ik-data-table .dataTables_paginate .paginate_button:hover,
.ik-theme-v2 .ik-data-table .dt-paging .dt-paging-button.current,
.ik-theme-v2 .ik-data-table .dt-paging .dt-paging-button:hover {
    background: var(--ik-color-primary-500) !important;
    color: var(--ik-color-surface) !important;
}

@media (max-width: 767.98px) {
    .ik-theme-v2 .ik-form-workspace__header {
        align-items: stretch;
        flex-direction: column;
        padding: var(--ik-space-4);
    }

    .ik-theme-v2 .ik-form-workspace__body {
        padding: var(--ik-space-4);
    }

    .ik-theme-v2 .ik-repeater-item {
        align-items: flex-end;
    }

    .ik-theme-v2 .ik-repeater-item__content,
    .ik-theme-v2 .ik-repeater-item__content--email {
        grid-template-columns: 1fr;
    }

    .ik-theme-v2 .ik-form-actions,
    .ik-theme-v2 .ik-form-actions .ik-button {
        width: 100%;
    }

    .ik-theme-v2 .ik-lookup-panel {
        padding: var(--ik-space-4);
    }

    .ik-theme-v2 .ik-lookup-form,
    .ik-theme-v2 .ik-lookup-form__field,
    .ik-theme-v2 .ik-lookup-form__actions,
    .ik-theme-v2 .ik-lookup-form__actions .ik-button {
        max-width: none;
        width: 100%;
    }

    .ik-theme-v2 .ik-lookup-form__actions {
        padding-block-start: 0;
    }

    .ik-theme-v2 .ik-record-filters {
        grid-template-columns: 1fr;
        padding: var(--ik-space-4);
    }

    .ik-theme-v2 .ik-record-filter-actions,
    .ik-theme-v2 .ik-record-filter-actions .ik-button {
        width: 100%;
    }

    .ik-theme-v2 .ik-claims-tabs,
    .ik-theme-v2 .ik-claims-tabs .nav-item {
        width: 100%;
    }

    .ik-theme-v2 .ik-claims-tab {
        min-width: 0;
        width: 100%;
    }

    .ik-theme-v2 .ik-claims-filters {
        grid-template-columns: 1fr;
        padding: var(--ik-space-4);
    }

    .ik-theme-v2 .ik-claims-filter-action,
    .ik-theme-v2 .ik-claims-filter-action .ik-button {
        width: 100%;
    }

    .ik-theme-v2 .ik-data-table__header {
        align-items: stretch;
        flex-direction: column;
        min-height: 0;
        padding: var(--ik-space-5);
    }

    .ik-theme-v2 .ik-data-table__controls {
        align-items: stretch;
        flex-direction: column;
        margin-inline-start: 0;
    }

    .ik-theme-v2 .ik-data-table__header-actions,
    .ik-theme-v2 .ik-data-table__header-actions .ik-button {
        width: 100%;
    }

    .ik-theme-v2 .ik-employees-table .ik-data-table__controls,
    .ik-theme-v2 .ik-employees-table .ik-data-table__header-actions,
    .ik-theme-v2 .ik-employees-table .ik-employee-view-switch,
    .ik-theme-v2 .ik-employees-table .ik-employee-view-switch .ik-button {
        align-items: stretch;
        width: 100%;
    }

    .ik-theme-v2 .ik-data-table__toolbar {
        align-items: stretch;
        flex-direction: column;
        padding: 0;
    }

    .ik-theme-v2 .ik-data-table__search,
    .ik-theme-v2 .ik-data-table__actions,
    .ik-theme-v2 .ik-data-table__filters {
        margin-inline-start: 0;
        width: 100%;
    }
}

@media (min-width: 768px) and (max-width: 1399.98px) {
    .ik-theme-v2 .ik-record-filters {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ik-theme-v2 .ik-record-filter-field--wide,
    .ik-theme-v2 .ik-record-filter-actions {
        grid-column: span 2;
    }

    .ik-theme-v2 .ik-claims-filters {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ik-theme-v2 .ik-claims-filter-field--client {
        grid-column: span 2;
    }
}

/* Insured organization detail shell */
.ik-theme-v2 .ik-onboarding-tabs-wrap {
    margin-block-end: var(--ik-space-6);
    overflow-x: auto;
    padding-block-end: var(--ik-space-1);
    scrollbar-width: thin;
}

.ik-theme-v2 .ik-onboarding-shell {
    border: 1px solid var(--ik-color-border);
    border-radius: var(--ik-radius-lg);
    box-shadow: none;
    overflow: hidden;
}

.ik-theme-v2 .ik-onboarding-shell__header {
    align-items: center;
    min-height: 0;
    padding: var(--ik-space-5) var(--ik-space-6);
}

.ik-theme-v2 .ik-onboarding-shell__title,
.ik-theme-v2 .ik-onboarding-shell__subtitle {
    margin: 0;
}

.ik-theme-v2 .ik-onboarding-shell__title {
    color: var(--ik-color-text-strong);
    font-size: var(--ik-font-size-xl);
    font-weight: var(--ik-font-weight-bold);
}

.ik-theme-v2 .ik-onboarding-shell__subtitle {
    color: var(--ik-color-text-muted);
    font-size: var(--ik-font-size-sm);
    margin-block-start: var(--ik-space-1);
}

.ik-theme-v2 .ik-onboarding-shell__body {
    padding: var(--ik-space-5) var(--ik-space-6);
}

.ik-theme-v2 .ik-client-onboarding-form .ik-onboarding-tabs-wrap {
    margin-block-end: var(--ik-space-5);
}

.ik-theme-v2 .ik-onboarding-section {
    border: 1px solid var(--ik-color-border);
    border-radius: var(--ik-radius-md);
    box-shadow: none;
    overflow: hidden;
}

.ik-theme-v2 .ik-onboarding-section__header {
    min-height: 0;
    padding: var(--ik-space-3) var(--ik-space-5);
}

.ik-theme-v2 .ik-onboarding-section__header .card-title {
    color: var(--ik-color-text-strong);
    font-size: var(--ik-font-size-lg);
    font-weight: var(--ik-font-weight-bold);
    margin: 0;
}

.ik-theme-v2 .ik-onboarding-section__body {
    padding: var(--ik-space-5);
}

.ik-theme-v2 .ik-client-onboarding-form label {
    color: var(--ik-color-text);
    font-size: var(--ik-font-size-sm);
    font-weight: var(--ik-font-weight-semibold);
    margin-block-end: var(--ik-space-2);
}

.ik-theme-v2 .ik-client-onboarding-form .form-control,
.ik-theme-v2 .ik-client-onboarding-form .form-select {
    min-height: var(--ik-button-height);
}

.ik-theme-v2 .ik-onboarding-logo-field .dropify-wrapper {
    height: 8.5rem !important;
    min-height: 8.5rem !important;
}

.ik-theme-v2 .ik-onboarding-logo-field .dropify-wrapper .dropify-message p {
    font-size: var(--ik-font-size-sm);
}

.ik-theme-v2 .ik-onboarding-logo-preview {
    background: var(--ik-color-surface);
    border: 1px solid var(--ik-color-border);
    border-radius: var(--ik-radius-sm);
    display: block;
    margin-block-start: var(--ik-space-3);
    max-height: 6rem;
    object-fit: contain;
    padding: var(--ik-space-2);
    width: 100%;
}

.ik-theme-v2 .client-reviewer-row {
    background: var(--ik-color-surface-soft);
    border: 1px solid var(--ik-color-border);
    border-radius: var(--ik-radius-md);
    margin-block-end: var(--ik-space-3);
    padding: var(--ik-space-4);
}

.ik-theme-v2 .ik-client-onboarding-form__footer {
    display: flex;
    justify-content: flex-end;
    padding-block-start: var(--ik-space-1);
}

.ik-theme-v2 .ik-onboarding-section__subtitle {
    color: var(--ik-color-text-muted);
    font-size: var(--ik-font-size-sm);
    margin: var(--ik-space-1) 0 0;
}

.ik-theme-v2 .ik-onboarding-step-grid {
    display: grid;
    gap: var(--ik-space-4);
    grid-template-columns: minmax(15rem, .65fr) minmax(0, 1.35fr);
}

.ik-theme-v2 .ik-onboarding-plan-card .ik-onboarding-section__body {
    max-width: 26rem;
}

.ik-theme-v2 .ik-insurance-options {
    display: grid;
    gap: var(--ik-space-3);
}

.ik-theme-v2 .ik-insurance-option {
    align-items: center;
    background: var(--ik-color-surface-soft);
    border: 1px solid var(--ik-color-border);
    border-radius: var(--ik-radius-sm);
    display: grid;
    gap: var(--ik-space-4);
    grid-template-columns: minmax(10rem, .7fr) minmax(12rem, 1.3fr);
    padding: var(--ik-space-3) var(--ik-space-4);
}

.ik-theme-v2 .ik-insurance-option__check,
.ik-theme-v2 .ik-insurance-option__check label {
    margin: 0;
}

.ik-theme-v2 .ik-policy-editor .policy-card {
    margin-block-end: var(--ik-space-4);
}

.ik-theme-v2 .ik-benefit-editor {
    border: 1px solid var(--ik-color-border);
    border-radius: var(--ik-radius-md);
    box-shadow: none;
}

.ik-theme-v2 .ik-benefit-editor__header {
    min-height: 0;
    padding: var(--ik-space-3) var(--ik-space-4);
}

.ik-theme-v2 .ik-benefit-editor__body {
    padding: var(--ik-space-4);
}

.ik-theme-v2 .benefit-row-item,
.ik-theme-v2 .category-plan-editor .plan-row {
    background: var(--ik-color-surface-soft) !important;
    border: 1px solid var(--ik-color-border) !important;
    border-radius: var(--ik-radius-sm) !important;
    margin-block-end: var(--ik-space-2) !important;
    padding: var(--ik-space-3) !important;
}

.ik-theme-v2 .category-plan-editor .plan-children {
    margin-block-start: var(--ik-space-2) !important;
}

.ik-theme-v2 .category-plan-editor .category-item:last-child {
    margin-block-end: 0 !important;
}

.ik-theme-v2 .ik-onboarding-documents .ik-onboarding-section__header {
    align-items: center;
    display: flex;
    justify-content: space-between;
}

.ik-theme-v2 .ik-onboarding-document-list {
    display: grid;
    gap: var(--ik-space-3);
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ik-theme-v2 .ik-onboarding-document {
    align-items: center;
    border: 1px solid var(--ik-color-border);
    border-radius: var(--ik-radius-sm);
    color: var(--ik-color-primary-700);
    display: flex;
    gap: var(--ik-space-3);
    min-width: 0;
    padding: var(--ik-space-3);
    text-decoration: none;
}

.ik-theme-v2 .ik-onboarding-document:hover {
    background: var(--ik-color-primary-50);
    border-color: var(--ik-color-primary-200);
}

.ik-theme-v2 .ik-onboarding-document__icon {
    color: #d83a3a;
    flex: 0 0 auto;
    font-size: 1.2rem;
}

.ik-theme-v2 .ik-onboarding-document__content {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    min-width: 0;
}

.ik-theme-v2 .ik-onboarding-document__content strong {
    color: var(--ik-color-text);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ik-theme-v2 .ik-onboarding-document__content small {
    color: var(--ik-color-text-muted);
}

.ik-theme-v2 .ik-onboarding-tabs {
    background: var(--ik-color-primary-50);
    border: 1px solid var(--ik-color-border);
    border-radius: var(--ik-radius-md);
    display: inline-flex;
    gap: var(--ik-space-1);
    list-style: none;
    margin: 0;
    min-width: 100%;
    padding: var(--ik-space-1);
    width: 100%;
}

.ik-theme-v2 .ik-onboarding-tabs__item {
    flex: 1 1 0;
    margin: 0 !important;
    min-width: 0;
}

.ik-theme-v2 .ik-onboarding-tab {
    align-items: center;
    border-radius: var(--ik-radius-sm);
    color: var(--ik-color-text-muted);
    display: flex;
    font-size: var(--ik-font-size-sm);
    font-weight: var(--ik-font-weight-semibold);
    gap: var(--ik-space-2);
    justify-content: center;
    min-height: var(--ik-button-height);
    padding: var(--ik-space-2) var(--ik-space-4);
    text-decoration: none;
    transition: background var(--ik-transition-fast), color var(--ik-transition-fast), box-shadow var(--ik-transition-fast);
    white-space: nowrap;
    width: 100%;
}

.ik-theme-v2 a.ik-onboarding-tab:hover {
    background: var(--ik-color-surface);
    color: var(--ik-color-primary-800);
}

.ik-theme-v2 .ik-onboarding-tab.active {
    background: var(--ik-gradient-primary);
    box-shadow: var(--ik-shadow-xs);
    color: var(--ik-color-surface);
}

.ik-theme-v2 .ik-onboarding-tab:focus-visible {
    box-shadow: var(--ik-shadow-focus);
    outline: 0;
}

.ik-theme-v2 .ik-onboarding-tab__number {
    align-items: center;
    background: rgba(25, 103, 210, .1);
    border-radius: 50%;
    display: inline-flex;
    flex: 0 0 1.7rem;
    height: 1.7rem;
    justify-content: center;
}

.ik-theme-v2 .ik-onboarding-tab.active .ik-onboarding-tab__number {
    background: rgba(255, 255, 255, .18);
}

.ik-theme-v2 .ik-organization-hero {
    align-items: center;
    background: #fff;
    border: 1px solid var(--ik-border-color, #e2e8f0);
    border-radius: 14px;
    display: flex;
    gap: var(--ik-space-5);
    justify-content: space-between;
    padding: 1.5rem;
}

.ik-theme-v2 .ik-overview-panel {
    background: var(--ik-color-surface);
    border: 1px solid var(--ik-color-border);
    border-radius: var(--ik-radius-lg);
    overflow: hidden;
}

.ik-theme-v2 .ik-overview-panel__header {
    align-items: center;
    border-block-end: 1px solid var(--ik-color-border);
    display: flex;
    gap: var(--ik-space-5);
    justify-content: space-between;
    padding: var(--ik-space-5) var(--ik-space-6);
}

.ik-theme-v2 .ik-overview-panel__title,
.ik-theme-v2 .ik-overview-panel__subtitle,
.ik-theme-v2 .ik-contact-card__title {
    margin: 0;
}

.ik-theme-v2 .ik-overview-panel__title {
    color: var(--ik-color-text-strong);
    font-size: var(--ik-font-size-xl);
    font-weight: var(--ik-font-weight-bold);
}

.ik-theme-v2 .ik-overview-panel__subtitle {
    color: var(--ik-color-text-muted);
    font-size: var(--ik-font-size-sm);
    margin-block-start: var(--ik-space-1);
}

.ik-theme-v2 .ik-overview-panel__actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: var(--ik-space-2);
}

.ik-theme-v2 .ik-overview-contacts {
    display: grid;
    gap: var(--ik-space-4);
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding: var(--ik-space-6);
}

.ik-theme-v2 .ik-contact-card {
    background: var(--ik-color-surface-soft);
    border: 1px solid var(--ik-color-border);
    border-radius: var(--ik-radius-md);
    min-width: 0;
    padding: var(--ik-space-5);
}

.ik-theme-v2 .ik-contact-card__header {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    gap: var(--ik-space-4);
    justify-content: space-between;
    margin-block-end: var(--ik-space-5);
}

.ik-theme-v2 .ik-contact-card__eyebrow {
    color: var(--ik-color-text-muted);
    display: block;
    font-size: var(--ik-font-size-xs);
    font-weight: var(--ik-font-weight-semibold);
    margin-block-end: var(--ik-space-1);
}

.ik-theme-v2 .ik-contact-card__title {
    color: var(--ik-color-text-strong);
    font-size: var(--ik-font-size-lg);
    font-weight: var(--ik-font-weight-bold);
}

.ik-theme-v2 .ik-contact-card__details {
    display: grid;
    gap: 0;
    margin: 0;
}

.ik-theme-v2 .ik-contact-card__row {
    align-items: baseline;
    border-block-start: 1px solid var(--ik-color-border);
    display: grid;
    gap: var(--ik-space-4);
    grid-template-columns: minmax(7.5rem, .65fr) minmax(0, 1fr);
    padding-block: var(--ik-space-3);
}

.ik-theme-v2 .ik-contact-card__row:first-child {
    border-block-start: 0;
    padding-block-start: 0;
}

.ik-theme-v2 .ik-contact-card__row:last-child {
    padding-block-end: 0;
}

.ik-theme-v2 .ik-contact-card__row dt {
    color: var(--ik-color-text-muted);
    font-size: var(--ik-font-size-sm);
    font-weight: var(--ik-font-weight-medium);
}

.ik-theme-v2 .ik-contact-card__row dd {
    color: var(--ik-color-text);
    font-size: var(--ik-font-size-sm);
    font-weight: var(--ik-font-weight-semibold);
    margin: 0;
    min-width: 0;
    overflow-wrap: anywhere;
}

.ik-theme-v2 .ik-contact-card__row a {
    color: var(--ik-color-primary-700);
    text-decoration: none;
}

.ik-theme-v2 .ik-contact-card__row a:hover {
    text-decoration: underline;
}

.ik-theme-v2 .ik-organization-hero__primary,
.ik-theme-v2 .ik-organization-hero__actions {
    align-items: center;
    display: flex;
    gap: 1rem;
}

.ik-theme-v2 .ik-organization-hero__primary {
    flex: 1 1 0%;
    min-width: 0;
}

.ik-theme-v2 .ik-organization-hero__primary > div:not(.ik-organization-hero__identity) {
    flex: 1 1 0%;
    min-width: 0;
    overflow-wrap: anywhere;
}

.ik-theme-v2 .ik-organization-hero__actions {
    flex: 0 0 auto;
}

.ik-theme-v2 .ik-organization-hero__identity {
    align-items: center;
    background: linear-gradient(135deg, #2f7ae5, #124ba4);
    border-radius: 12px;
    color: #fff;
    display: flex;
    flex: 0 0 3.5rem;
    font-size: 1.35rem;
    font-weight: 700;
    height: 3.5rem;
    justify-content: center;
}

.ik-theme-v2 .ik-organization-hero__eyebrow,
.ik-theme-v2 .ik-organization-metric__label {
    color: #7d8aa5;
    font-size: .8rem;
    font-weight: 600;
    letter-spacing: .02em;
}

.ik-theme-v2 .ik-organization-hero__title {
    color: #0c1b3a;
    font-size: 1.45rem;
    font-weight: 700;
    margin: .2rem 0 .35rem;
    text-wrap: balance;
}

.ik-theme-v2 .ik-organization-hero__meta {
    align-items: center;
    color: #66738f;
    display: flex;
    flex-wrap: wrap;
    font-size: .875rem;
    gap: .5rem;
}

.ik-theme-v2 .ik-organization-metrics {
    display: grid;
    gap: .75rem;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    margin: 1rem 0;
}

.ik-theme-v2 .ik-organization-metric {
    background: var(--ik-gradient-primary);
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 10px;
    display: flex;
    flex-direction: column;
    gap: .4rem;
    min-width: 0;
    padding: 1rem 1.1rem;
}

.ik-theme-v2 .ik-organization-metric__label {
    color: #fff;
}

.ik-theme-v2 .ik-organization-metric__value {
    color: #fff;
    font-size: 1.25rem;
    line-height: 1;
}

.ik-theme-v2 .ik-detail-tabs {
    background: #fff;
    border: 1px solid var(--ik-border-color, #e2e8f0);
    border-radius: 10px;
    display: flex;
    gap: .35rem;
    margin-bottom: 1rem;
    overflow-x: auto;
    padding: .45rem;
    scrollbar-width: thin;
}

.ik-theme-v2 .ik-detail-tabs__link {
    border-radius: 8px;
    color: #53617c;
    flex: 0 0 auto;
    font-size: .9rem;
    font-weight: 600;
    padding: .7rem 1rem;
    text-decoration: none;
    transition: background-color .2s ease, color .2s ease, box-shadow .2s ease;
    white-space: nowrap;
}

.ik-theme-v2 .ik-detail-tabs__link:hover {
    background: #eef5ff;
    color: #1558b5;
}

.ik-theme-v2 .ik-detail-tabs__link.is-active {
    background: linear-gradient(135deg, #2f7ae5, #124ba4);
    box-shadow: 0 6px 14px rgba(24, 91, 181, .18);
    color: #fff;
}

@media (max-width: 991.98px) {
    .ik-theme-v2 .ik-onboarding-requests-table .ik-data-table__header {
        align-items: stretch;
        flex-direction: column;
    }

    .ik-theme-v2 .ik-onboarding-requests-table .ik-data-table__controls {
        max-width: none;
        width: 100%;
    }

    .ik-theme-v2 .ik-onboarding-requests-table .ik-data-table__toolbar,
    .ik-theme-v2 .ik-onboarding-requests-filter {
        grid-template-columns: 1fr;
    }

    .ik-theme-v2 .ik-onboarding-requests-count {
        justify-self: start;
    }

    .ik-theme-v2 .ik-onboarding-step-grid {
        grid-template-columns: 1fr;
    }

    .ik-theme-v2 .ik-onboarding-plan-card .ik-onboarding-section__body {
        max-width: none;
    }

    .ik-theme-v2 .ik-onboarding-document-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ik-theme-v2 .ik-overview-contacts {
        grid-template-columns: 1fr;
    }

    .ik-theme-v2 .ik-organization-hero {
        align-items: flex-start;
        flex-direction: column;
    }

    .ik-theme-v2 .ik-organization-hero__actions {
        justify-content: space-between;
        width: 100%;
    }

    .ik-theme-v2 .ik-organization-metrics {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575.98px) {
    .ik-theme-v2 .ik-dependent-form-shell__header,
    .ik-theme-v2 .ik-dependent-form-shell__body {
        padding: var(--ik-space-4);
    }

    .ik-theme-v2 .ik-dependent-form-shell__actions,
    .ik-theme-v2 .ik-dependent-form-shell__actions > div,
    .ik-theme-v2 .ik-dependent-form-shell__actions .ik-button {
        width: 100%;
    }

    .ik-theme-v2 .ik-insurance-option {
        align-items: stretch;
        grid-template-columns: 1fr;
    }

    .ik-theme-v2 .ik-onboarding-document-list {
        grid-template-columns: 1fr;
    }

    .ik-theme-v2 .ik-onboarding-shell__header,
    .ik-theme-v2 .ik-onboarding-shell__body,
    .ik-theme-v2 .ik-onboarding-section__body {
        padding: var(--ik-space-4);
    }

    .ik-theme-v2 .ik-onboarding-section__header {
        align-items: stretch !important;
        flex-direction: column;
        gap: var(--ik-space-3);
        padding: var(--ik-space-4);
    }

    .ik-theme-v2 .ik-onboarding-section__header .ik-button,
    .ik-theme-v2 .ik-client-onboarding-form__footer .ik-button {
        width: 100%;
    }

    .ik-theme-v2 .ik-categories-workspace__header {
        align-items: stretch;
        flex-direction: column;
        padding: var(--ik-space-4);
    }

    .ik-theme-v2 .ik-categories-workspace__header .ik-button {
        width: 100%;
    }

    .ik-theme-v2 .ik-categories-workspace__body {
        padding: var(--ik-space-4);
    }

    .ik-theme-v2 .ik-documents-workspace__header {
        align-items: stretch;
        flex-direction: column;
        padding: var(--ik-space-4);
    }

    .ik-theme-v2 .ik-documents-workspace__header .ik-button {
        width: 100%;
    }

    .ik-theme-v2 .ik-documents-workspace__body {
        padding: var(--ik-space-4);
    }

    .ik-theme-v2 .ik-document-grid {
        grid-template-columns: 1fr;
        padding: var(--ik-space-4);
    }

    .ik-theme-v2 .ik-benefits-workspace__header {
        align-items: stretch;
        flex-direction: column;
        padding: var(--ik-space-4);
    }

    .ik-theme-v2 .ik-benefits-workspace__header .ik-button {
        width: 100%;
    }

    .ik-theme-v2 .ik-policy-heading {
        padding: var(--ik-space-4);
    }

    .ik-theme-v2 .ik-overview-panel__header {
        align-items: stretch;
        flex-direction: column;
        padding: var(--ik-space-4);
    }

    .ik-theme-v2 .ik-overview-panel__actions,
    .ik-theme-v2 .ik-overview-panel__actions .ik-button {
        width: 100%;
    }

    .ik-theme-v2 .ik-overview-contacts {
        padding: var(--ik-space-4);
    }

    .ik-theme-v2 .ik-contact-card {
        padding: var(--ik-space-4);
    }

    .ik-theme-v2 .ik-contact-card__row {
        gap: var(--ik-space-1);
        grid-template-columns: 1fr;
    }

    .ik-theme-v2 .ik-onboarding-tabs {
        min-width: max-content;
        width: auto;
    }

    .ik-theme-v2 .ik-onboarding-tabs__item {
        flex: 0 0 auto;
    }

    .ik-theme-v2 .ik-onboarding-tab {
        min-width: 9.5rem;
    }

    .ik-theme-v2 .ik-organization-hero,
    .ik-theme-v2 .ik-organization-metric {
        padding: 1rem;
    }

    .ik-theme-v2 .ik-organization-hero__primary {
        align-items: flex-start;
    }

    .ik-theme-v2 .ik-organization-hero__actions {
        align-items: stretch;
        flex-direction: column;
    }

    .ik-theme-v2 .ik-organization-hero__actions .ik-button {
        width: 100%;
    }

    .ik-theme-v2 .ik-organization-metrics {
        grid-template-columns: 1fr 1fr;
    }
}

/* Reusable modal system */
.ik-theme-v2 .ik-modal__content {
    border: 0;
    border-radius: var(--ik-radius-lg);
    box-shadow: var(--ik-shadow-lg);
    overflow: hidden;
    position: relative;
}

.ik-theme-v2 .ik-modal__header {
    align-items: flex-start;
    border-block-end: 1px solid var(--ik-color-border);
    gap: var(--ik-space-4);
    padding: var(--ik-space-5) var(--ik-space-6);
}

.ik-theme-v2 .ik-modal__heading {
    min-width: 0;
}

.ik-theme-v2 .ik-modal__title {
    color: var(--ik-color-heading);
    font-family: var(--ik-font-family);
    font-size: var(--ik-font-size-lg);
    font-weight: var(--ik-font-weight-bold);
    overflow-wrap: anywhere;
}

.ik-theme-v2 .ik-modal__close {
    flex: 0 0 auto;
}

.ik-theme-v2 .ik-modal__body {
    color: var(--ik-color-text);
    padding: var(--ik-space-6);
}

.ik-theme-v2 .ik-modal__footer {
    border-block-start: 1px solid var(--ik-color-border);
    gap: var(--ik-space-3);
    padding: var(--ik-space-4) var(--ik-space-6);
}

.ik-theme-v2 .ik-modal__footer--start { justify-content: flex-start; }
.ik-theme-v2 .ik-modal__footer--center { justify-content: center; }
.ik-theme-v2 .ik-modal__footer--end { justify-content: flex-end; }
.ik-theme-v2 .ik-modal__footer--between { justify-content: space-between; }

.ik-theme-v2 .ik-modal__loading {
    align-items: center;
    background: rgba(255, 255, 255, .88);
    display: flex;
    gap: var(--ik-space-3);
    inset: 0;
    justify-content: center;
    position: absolute;
    z-index: 2;
}

.ik-theme-v2 .ik-confirmation-modal__message {
    color: var(--ik-color-text);
    font-size: var(--ik-font-size-md);
    margin: 0;
}

.ik-theme-v2 .ik-confirmation-modal--danger .ik-modal__title {
    color: var(--ik-color-danger);
}

@media (max-width: 575.98px) {
    .ik-theme-v2 .ik-modal__header,
    .ik-theme-v2 .ik-modal__body,
    .ik-theme-v2 .ik-modal__footer {
        padding: var(--ik-space-4);
    }
}

/* Stage 13 responsive and accessibility safeguards */
.ik-theme-v2 a:focus-visible,
.ik-theme-v2 button:focus-visible,
.ik-theme-v2 [tabindex]:focus-visible {
    outline: 3px solid var(--ik-color-focus);
    outline-offset: 2px;
}

.ik-theme-v2 input:focus-visible,
.ik-theme-v2 select:focus-visible,
.ik-theme-v2 textarea:focus-visible {
    outline: 2px solid var(--ik-color-focus);
    outline-offset: 1px;
}

/* Dropdown arrow for native select elements */
.ik-theme-v2 select.form-select,
.ik-theme-v2 select.form-control {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238e9dbb' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.75rem center;
    background-size: 1rem;
    padding-right: 2.5rem;
}

.ik-theme-v2 .ik-page-heading__title,
.ik-theme-v2 .ik-section-heading__title,
.ik-theme-v2 .ik-card-heading,
.ik-theme-v2 .ik-data-table__title,
.ik-theme-v2 .ik-data-table__subtitle,
.ik-theme-v2 .ik-info-card,
.ik-theme-v2 .ik-stat-card {
    min-width: 0;
    overflow-wrap: anywhere;
}

.ik-theme-v2 .app-main,
.ik-theme-v2 .app-content,
.ik-theme-v2 .app-container,
.ik-theme-v2 .ik-card,
.ik-theme-v2 .ik-data-table,
.ik-theme-v2 .ik-table-shell {
    min-width: 0;
}

.ik-theme-v2 .ik-table-shell,
.ik-theme-v2 .ik-data-table__viewport {
    overscroll-behavior-inline: contain;
    scrollbar-gutter: stable;
    -webkit-overflow-scrolling: touch;
}

.ik-theme-v2 .select2-container {
    max-width: 100%;
    width: 100% !important;
}

.ik-theme-v2 .select2-dropdown {
    max-width: calc(100vw - 2rem);
}

.ik-theme-v2 .modal-dialog-scrollable {
    max-height: calc(100dvh - 2rem);
}

.ik-theme-v2 .modal-dialog-scrollable .modal-content {
    max-height: calc(100dvh - 2rem);
}

.ik-theme-v2 .modal-footer {
    flex-wrap: wrap;
}

@media (max-width: 767.98px) {
    .ik-theme-v2 .ik-button,
    .ik-theme-v2 .btn,
    .ik-theme-v2 .dropdown-item,
    .ik-theme-v2 .menu-link,
    .ik-theme-v2 .form-check-label {
        min-height: 44px;
    }

    .ik-theme-v2 .ik-icon-button,
    .ik-theme-v2 [data-kt-app-sidebar-toggle],
    .ik-theme-v2 [data-kt-app-sidebar-dismiss] {
        min-height: 44px;
        min-width: 44px;
    }

    .ik-theme-v2 .ik-data-table__header,
    .ik-theme-v2 .ik-data-table__controls,
    .ik-theme-v2 .ik-data-table__toolbar,
    .ik-theme-v2 .ik-data-table__header-actions {
        align-items: stretch;
        flex-direction: column;
        width: 100%;
    }

    .ik-theme-v2 .ik-data-table__search,
    .ik-theme-v2 .ik-data-table__search-control {
        min-width: 0;
        width: 100%;
    }

    .ik-theme-v2 .modal-dialog {
        margin: .75rem;
    }
}

@media (max-width: 575.98px) {
    .ik-theme-v2 .ik-organization-metrics {
        grid-template-columns: 1fr;
    }

    .ik-theme-v2 .modal-footer > .btn,
    .ik-theme-v2 .modal-footer > .ik-button {
        flex: 1 1 100%;
        margin-inline: 0;
    }
}

/* ── Legacy inline-style replacement utilities ── */

/* Text colors (replace inline style="color:#146EB4" and color:#A1A5B7) */
.ik-theme-v2 .ik-text-primary   { color: var(--ik-color-primary-700); }
.ik-theme-v2 .ik-text-muted      { color: var(--ik-color-text-muted); }
.ik-theme-v2 .ik-text-subtle     { color: var(--ik-color-text-subtle); }

/* Background helpers (replace inline style="background: #EEF6FF") */
.ik-theme-v2 .ik-bg-primary-soft { background: var(--ik-color-primary-100); }
.ik-theme-v2 .ik-bg-surface      { background: var(--ik-color-surface); }

/* Card variant (replaces the repeated pattern of card + #EEF6FF background) */
.ik-theme-v2 .ik-card--soft {
    background: var(--ik-color-primary-50);
    border: 1px solid var(--ik-color-border);
}

/* Table cell alignment helpers (replace inline vertical-align and flex) */
.ik-theme-v2 .ik-cell-top        { vertical-align: top; }
.ik-theme-v2 .ik-cell-center     { vertical-align: middle; }

/* Dynamic show/hide (replace inline style="display: none;" via JS) */
.ik-theme-v2 .ik-hidden          { display: none; }

/* ── End legacy inline-style replacement utilities ── */

@media (prefers-reduced-motion: reduce) {
    .ik-theme-v2 *,
    .ik-theme-v2 *::before,
    .ik-theme-v2 *::after {
        animation-delay: 0s !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        scroll-behavior: auto !important;
        transition-delay: 0s !important;
        transition-duration: .01ms !important;
    }

    .ik-theme-v2 .ik-button:hover,
    .ik-theme-v2 .btn:hover,
    .ik-theme-v2 .menu-link:hover {
        transform: none;
    }
}
