.iudm-root .iu-app .iu-sidebar
.iu-side-nav button.iu-side-item {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;

    width: 100% !important;
    min-height: 40px;
    margin: 0 !important;
    padding: 10px 12px !important;

    background: transparent !important;
    color: #c8ddeb !important;
    border: 0 !important;
    border-left: 3px solid transparent !important;
    border-radius: 0 6px 6px 0 !important;

    font-size: 13px !important;
    font-weight: 500 !important;
    text-align: left !important;
    box-shadow: none !important;
}

.iudm-root .iu-app .iu-sidebar
.iu-side-nav button.iu-side-item.selected {
    background: var(--iudm-brand-blue) !important;
    color: var(--iudm-brand-on-primary, #fff) !important;
    border-left-color: var(--iudm-brand-green) !important;
}


/* IRWIN UNION — STAFF OPERATIONS BUTTON CORRECTIONS */

/* 1. Sidebar sign-out button */
.iudm-root .iu-app .iu-sidebar-bottom
button.iu-side-item[data-core-signout] {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: 100% !important;
    min-height: 40px !important;
    padding: 10px 12px !important;

    background: transparent !important;
    color: #d7dfe8 !important;
    border: 1px solid rgba(255,255,255,.2) !important;
    border-radius: 6px !important;
    box-shadow: none !important;

    font-size: 13px !important;
    font-weight: 500 !important;
    text-align: left !important;
    text-transform: none !important;
}

.iudm-root .iu-sidebar-bottom
button[data-core-signout]:hover {
    background: rgba(255,255,255,.12) !important;
    color: #fff !important;
}

/* 2. Modal close button */
.iudm-root .iu-modal-head button.iu-modal-close {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 36px !important;
    height: 36px !important;
    min-height: 36px !important;
    padding: 0 !important;

    background: #f3f4f5 !important;
    color: #657384 !important;
    border: 1px solid #e1e5e9 !important;
    border-radius: 6px !important;
    box-shadow: none !important;

    font-size: 23px !important;
    line-height: 1 !important;
}

.iudm-root .iu-modal-head
button.iu-modal-close:hover {
    background: #e8edf1 !important;
    color: #263442 !important;
}

/* 3. Cancel button */
.iudm-root .iu-form-foot
button.iu-btn.subtle[data-action="close"] {
    background: #fff !important;
    color: #344457 !important;
    border: 1px solid #cdd6df !important;
    border-radius: 6px !important;
    box-shadow: none !important;

    padding: 10px 16px !important;
    min-height: 40px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    text-transform: none !important;
}

.iudm-root .iu-form-foot
button.iu-btn.subtle[data-action="close"]:hover {
    background: #f3f6f8 !important;
    color: #243342 !important;
}

/* 4. Preserve accessibility focus indicators */
.iudm-root button[data-core-signout]:focus-visible,
.iudm-root .iu-modal-close:focus-visible,
.iudm-root .iu-form-foot button:focus-visible {
    outline: 3px solid var(
        --iudm-brand-green, #72bf44
    ) !important;
    outline-offset: 2px !important;
}


/* IRWIN UNION — CORE & PROJECTS HOVER FIXES */

/* 1. Core: Open Client and similar secondary actions */
.iudm-root .iu-app button.iu-btn.subtle:hover,
.iudm-root .iu-app button.iu-btn.subtle:focus-visible {
    background: var(--iudm-brand-surface, #fff) !important;
    color: var(--iudm-brand-blue, #0875bc) !important;
    border-color: var(--iudm-brand-blue, #0875bc) !important;
    box-shadow: none !important;
    text-decoration: none !important;
}

/* 2. Projects: standard primary action buttons */
.iup-app button.iup-button:not(.iup-secondary):not(.iup-danger),
.iup-app button.iup-button:not(.iup-secondary):not(.iup-danger):hover {
    background: var(--iup-blue) !important;
    color: var(--iup-on-primary) !important;
    border: 1px solid var(--iup-blue) !important;
    box-shadow: none !important;
    text-decoration: none !important;
}

/* 3. Projects: secondary navigation and action buttons */
.iup-app button.iup-button.iup-secondary,
.iup-app button.iup-button.iup-secondary:hover {
    background: var(--iup-surface) !important;
    color: var(--iup-blue) !important;
    border: 1px solid var(--iup-blue) !important;
    box-shadow: none !important;
    text-decoration: none !important;
}

/* 4. Projects: prevent Elementor typography overrides */
.iup-app button.iup-button {
    font-size: 13px !important;
    font-weight: 650 !important;
    line-height: 1.2 !important;
    text-transform: none !important;
    border-radius: 8px !important;
    padding: 10px 16px !important;
}

.iup-app button.iup-button:hover {
    filter: brightness(.95);
}

/* 5. Projects: smaller action buttons */
.iup-app button.iup-mini:hover {
    background: var(--iup-surface) !important;
    color: var(--iup-blue) !important;
    border-color: var(--iup-blue) !important;
    box-shadow: none !important;
}

/* 6. Projects: project selector and tab hover states */
.iup-app button.iup-project-choice:hover {
    background: var(--iup-surface) !important;
    color: var(--iup-ink) !important;
    border-color: var(--iup-border) !important;
}

.iup-app .iup-tabs button:hover {
    background: var(--iup-back) !important;
    color: var(--iup-blue) !important;
    border-color: transparent !important;
    border-bottom-color: var(--iup-blue) !important;
}

/* 7. Preserve accessible keyboard focus */
.iup-app button:focus-visible {
    outline: 3px solid var(--iup-green) !important;
    outline-offset: 2px !important;
}

/* 8. Preserve meaningful destructive-action styling */
.iup-app button.iup-danger:hover {
    background: #9d3544 !important;
    border-color: #9d3544 !important;
    color: #fff !important;
    box-shadow: none !important;
}


/* IRWIN UNION — REMAINING BUTTON FIXES */

/* 1. Staff Operations: Open Client */
.iudm-root .iu-app .iu-list-row
button.iu-btn.subtle[data-action="choose_org"],
.iudm-root .iu-app .iu-list-row
button.iu-btn.subtle[data-action="choose_org"]:hover {
    appearance: none !important;
    background: var(--iudm-brand-surface, #fff) !important;
    color: var(--iudm-brand-blue, #0875bc) !important;
    border: 1px solid
        var(--iudm-brand-blue, #0875bc) !important;
    border-radius: 6px !important;
    box-shadow: none !important;
    text-decoration: none !important;
    text-transform: none !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    padding: 9px 13px !important;
}

/* 2. Projects: Refresh link */
.iup-app .iup-top nav
button.iup-link[data-act="reload"],
.iup-app .iup-top nav
button.iup-link[data-act="reload"]:hover {
    appearance: none !important;
    display: inline-block !important;
    background: transparent !important;
    background-color: transparent !important;
    color: var(--iup-blue, #0875bc) !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1.5 !important;
    text-decoration: underline !important;
    text-transform: none !important;
}

/* 3. Keyboard accessibility */
.iudm-root .iu-list-row
button[data-action="choose_org"]:focus-visible,
.iup-app .iup-top nav
button[data-act="reload"]:focus-visible {
    outline: 3px solid
        var(--iudm-brand-green, #76c43b) !important;
    outline-offset: 3px !important;
}



/* Irwin Union — Decorative Green Heading Dot */

.iu-green-dot .elementor-heading-title::after {
    content: "";
    display: inline-block;
    width: 0.22em;
    height: 0.22em;
    background-color: #78BE43;
    border-radius: 50%;
    margin-left: 0.16em;
    vertical-align: baseline;
    transform: translateY(-0.03em);
}


/* Irwin Union — Architectural Approach Panel */

.iu-approach-slant {
    position: relative;
    background: transparent;
    padding: 42px 65px 42px 36px;
    isolation: isolate;
}


/* Irwin Union — Architectural Slanted Panel */

.iu-approach-slant {
    clip-path: polygon(
        0 0,
        100% 0,
        84% 100%,
        0 100%
    );
}

/* Remove the old background layer */
.iu-approach-slant::before {
    content: none !important;
}

/* Mobile */
@media (max-width: 767px) {
    .iu-approach-slant {
        clip-path: none;
    }
}


/* Irwin Union — Decorative Diagonal Slash */

.iu-green-slash::before {
    content: "";
    display: block;
    width: 4px;
    height: 36px;
    background-color: #9DDC00;
    transform: skewX(-25deg);
    flex-shrink: 0;
}


/* Irwin Union — Responsive Right-Side Green Slash */

.iu-green-slash-right {
    position: relative;
}

.iu-green-slash-right::after {
    content: "";
    position: absolute;

    /* Automatically scale with container height */
    top: 20%;
    bottom: 20%;

    /* Position relative to container width */
    right: 4%;

    /* Slash appearance */
    width: 4px;
    background-color: #9DDC00;
    transform: skewX(-25deg);

    /* Keep it decorative */
    pointer-events: none;
    z-index: 1;
}

/* Mobile adjustments */
@media (max-width: 767px) {
    .iu-green-slash-right::after {
        width: 3px;
        right: 5%;
    }
}




/* Irwin Union — Architectural Parallelogram */


.iu-process-slant {
    --iu-slant: 18%;

    clip-path: polygon(
        var(--iu-slant) 0,
        100% 0,
        calc(100% - var(--iu-slant)) 100%,
        0 100%
    );
}


/* Irwin Union — Independent Shape & Content */

.iu-tile-frame {
    position: relative;
    isolation: isolate;
    min-width: 0;
}

/* Decorative background only */
.iu-tile-frame .iu-tile-shape {
    position: absolute !important;
    inset: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 0;
    pointer-events: none;

    clip-path: polygon(
        18% 0,
        100% 0,
        82% 100%,
        0 100%
    );
}

/* Editable content, independent of the shape */
.iu-tile-frame .iu-tile-content {
    position: relative;
    z-index: 1;
    width: 100% !important;
    min-width: 0;
}

/* Prevent custom widget widths from squeezing text */
.iu-tile-content .elementor-widget-heading,
.iu-tile-content .elementor-widget-text-editor {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0;
}
