.midas-shell {
    margin: 0;
    min-height: 100vh;
    background: var(--surface-color);
    color: var(--text-color);
    font-family: system-ui, sans-serif;
}
.midas-header {
    position: relative;
    z-index: 1050;
    min-height: var(--header-height);
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: .5rem 1.25rem;
    background: var(--midas-green);
    color: #fff;
}
.midas-brand { display: flex; align-items: center; gap: .6rem; font-size: 1.2rem; font-weight: 750; white-space: nowrap; }
.midas-header a { color: inherit; text-decoration: none; }
.midas-mark { color: var(--midas-yellow); font-size: 2rem; }
.midas-toggle, .midas-logout { border: 0; background: transparent; color: #fff; padding: .5rem; font-weight: 600; }
.midas-toggle { color: #fff; }
.midas-toggle .bi { font-size: 1.5rem; }
.midas-topnav { display: flex; flex-wrap: wrap; gap: .2rem; margin-inline-start: auto; }
.midas-topnav a { padding: .5rem; border-radius: .25rem; font-weight: 600; }
.midas-header a:hover, .midas-header button:hover, .midas-topnav [aria-current] { background: #205d25; }
.midas-topnav [aria-current] { box-shadow: inset 0 -3px 0 var(--midas-yellow); }
.midas-user { display: flex; align-items: center; gap: .4rem; margin-inline-start: auto; }
.midas-user form { margin: 0; }
.midas-user span { overflow-wrap: anywhere; }
.midas-user-avatar { display: grid; place-items: center; width: 2.5rem; height: 2.5rem; overflow: hidden; padding: 0; border: 2px solid #ffffff99; border-radius: 50%; color: #fff; background: #ffffff22; }
.midas-user-avatar::after { display: none; }
.midas-user-avatar:hover { border-color: #fff; background: #ffffff33; }
.midas-user-avatar img { width: 100%; height: 100%; object-fit: cover; }
.midas-user-avatar svg { width: 1.35rem; height: 1.35rem; }
.midas-user .dropdown-menu form { margin: 0; }
.midas-body { display: flex; min-height: calc(100vh - 64px); }
.midas-sidebar { flex: 0 0 var(--sidebar-width); overflow: hidden; background: var(--midas-green); padding-block: 1rem; transition: flex-basis .2s ease; }
.midas-sidebar a { display: flex; flex-flow: row nowrap; gap: .65rem; align-items: center; min-height: 3.5rem; padding: 1rem 1.25rem; color: #fff; text-decoration: none; font-weight: 650; border-inline-start: 3px solid transparent; }
.midas-sidebar a:hover, .midas-sidebar [aria-current] { background: #246729; border-inline-start-color: var(--midas-yellow); }
.midas-sidebar [aria-current] { box-shadow: inset -3px 0 0 #ffffff80; }
.midas-nav-icon { flex: 0 0 1.4rem; color: var(--midas-yellow); font-size: 1.3rem; text-align: center; }
.midas-nav-label { min-width: 0; white-space: nowrap; }
.midas-sidebar-controls { display: flex; align-items: center; min-height: 3.5rem; padding: 0 .75rem; }
.midas-sidebar-controls button { display: grid; place-items: center; width: 2.5rem; height: 2.5rem; border: 0; color: var(--midas-yellow); background: transparent; }
.midas-sidebar-controls button:hover { background: #205d25; }
.midas-sidebar-controls button:nth-child(2), .midas-sidebar-controls button:nth-child(3) { display: none; }
.midas-sidebar-collapse { display: flex !important; align-items: center; gap: .5rem; width: auto !important; padding-inline: .5rem; font-weight: 650; }
.midas-sidebar-collapse .bi { font-size: 1.2rem; }
.midas-sidebar-collapse span { color: #fff; }
.midas-sidebar-collapsed .midas-sidebar { flex-basis: var(--sidebar-collapsed-width); }
.midas-sidebar-collapsed .midas-sidebar a { justify-content: center; padding-inline: .5rem; }
.midas-sidebar-collapsed .midas-nav-label, .midas-sidebar-collapsed .midas-sidebar-collapse { display: none !important; }
.midas-sidebar-collapsed .midas-sidebar-controls { justify-content: center; gap: 0; padding: 0; }
.midas-sidebar-collapsed .midas-sidebar-controls button:nth-child(2), .midas-sidebar-collapsed .midas-sidebar-controls button:nth-child(3) { display: grid; }
.midas-sidebar-hidden .midas-sidebar { display: none; }
.midas-nav-backdrop { display: none; }
.midas-sidebar-expanded .midas-toggle, .midas-sidebar-collapsed .midas-toggle { display: none; }
.midas-main { flex: 1; min-width: 0; padding: 2rem; }
.midas-title { color: var(--midas-green); font-weight: 650; margin-bottom: 1rem; font-size: clamp(1.7rem, 3vw, 2.4rem); }
.midas-card { border-color: #dce3da; border-radius: .4rem; box-shadow: 0 2px 8px #17381b05; }
.midas-card-icon { float: inline-end; font-size: 2.5rem; color: var(--midas-green); }
.midas-skip { position: absolute; z-index: 1100; background: #fff; padding: .75rem; }
.midas-shell :focus-visible { outline: 3px solid #b58a00; outline-offset: 3px; }
.midas-theme-dark .midas-main, .midas-theme-dark .card, .midas-theme-dark .card-header, .midas-theme-system .midas-main, .midas-theme-system .card, .midas-theme-system .card-header { background: var(--surface-raised-color); color: var(--text-color); }
.midas-theme-dark .text-body-secondary, .midas-theme-dark .midas-page-description, .midas-theme-dark .midas-preference-note, .midas-theme-system .text-body-secondary, .midas-theme-system .midas-page-description, .midas-theme-system .midas-preference-note { color: var(--text-secondary-color) !important; }
.midas-theme-dark .midas-title, .midas-theme-system .midas-title { color: var(--primary-light-color); }
.midas-density-compact .midas-main { padding: 1rem; }
.midas-density-compact .midas-profile-form { gap: 1rem; }
.midas-density-compact .midas-card .card-header, .midas-density-compact .midas-card .card-body { padding: .9rem 1rem !important; }
.midas-page { max-width: 980px; margin: 0 auto; }
.midas-page-header { display: flex; align-items: center; gap: 1.25rem; margin-bottom: 2rem; }
.midas-page-header-content { min-width: 0; }
.midas-page-header-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-inline-start: auto; }
.midas-empty-state .card-body { display: flex; align-items: flex-start; gap: 1rem; }
.midas-empty-state-icon { flex: 0 0 auto; color: var(--midas-green); font-size: 2rem; }
.midas-module-card .card-body { display: flex; flex-direction: column; align-items: flex-start; }
.midas-module-card .btn { margin-top: auto; }
.midas-page-eyebrow { margin-bottom: .25rem; color: var(--midas-green); font-size: .8rem; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }
.midas-page-description { margin: 0; color: #647168; }
.midas-avatar { display: grid; place-items: center; width: 96px; height: 96px; overflow: hidden; flex: 0 0 auto; border: 4px solid #fff; border-radius: 50%; background: #e7f0e5; color: var(--midas-green); font-size: 2.25rem; font-weight: 750; box-shadow: 0 4px 14px #0003; }
.midas-avatar img { width: 100%; height: 100%; object-fit: cover; }
.midas-avatar-editable { position: relative; cursor: pointer; }
.midas-avatar-editable:hover { border-color: var(--midas-yellow); }
.midas-avatar-pending { border-color: var(--secondary-color); box-shadow: 0 0 0 4px #fbc02d55; }
.midas-avatar-edit { position: absolute; right: .05rem; bottom: .05rem; display: grid; place-items: center; width: 1.8rem; height: 1.8rem; border: 2px solid #fff; border-radius: 50%; color: #1f6730; background: var(--midas-yellow); font-size: 1.15rem; font-weight: 800; line-height: 1; }
.midas-profile-form, .midas-config-form { display: grid; gap: 1.5rem; }
.midas-card .card-header { padding: 1.25rem 1.5rem; border-bottom-color: #dce3da; background: #fff; }
.midas-profile-form label, .midas-config-form label { display: block; margin-bottom: .5rem; font-weight: 650; }
.midas-profile-form input, .midas-profile-form select, .midas-profile-form textarea, .midas-config-form input { width: 100%; }
.midas-form-actions { display: flex; justify-content: flex-end; gap: .75rem; }
.midas-profile-form[aria-busy="true"] .midas-form-actions, .midas-config-form[aria-busy="true"] .midas-form-actions { opacity: .75; }
.midas-profile-form button[type="submit"]:disabled, .midas-config-form button[type="submit"]:disabled { cursor: wait; }
.midas-preference-note { color: #647168; }
.midas-multi-select { position: relative; }
.midas-multi-select-control { display: flex; flex-wrap: wrap; align-items: center; gap: .4rem; min-height: calc(1.5em + .75rem + 2px); padding: .375rem .5rem; border: 1px solid var(--border-color); border-radius: .375rem; background: var(--surface-raised-color); cursor: text; transition: border-color .15s ease, box-shadow .15s ease; }
.midas-multi-select:focus-within .midas-multi-select-control { border-color: var(--primary-color); box-shadow: 0 0 0 .2rem color-mix(in srgb, var(--primary-color) 22%, transparent); }
.midas-multi-select-chips { display: contents; }
.midas-multi-select-chip { display: inline-flex; align-items: center; gap: .35rem; max-width: 100%; padding: .2rem .35rem .2rem .55rem; border: 1px solid var(--primary-light-color); border-radius: 1rem; color: var(--primary-dark-color); background: var(--primary-nearwhite-color); font-size: .875rem; }
.midas-multi-select-chip button { display: grid; place-items: center; width: 1.15rem; height: 1.15rem; padding: 0; border: 0; border-radius: 50%; color: inherit; background: transparent; }
.midas-multi-select-chip button:hover { background: color-mix(in srgb, var(--primary-color) 16%, transparent); }
.midas-multi-select-search { flex: 1 1 8rem; min-width: 6rem; border: 0 !important; outline: 0; box-shadow: none !important; background: transparent; color: var(--text-color); }
.midas-multi-select-options { position: absolute; z-index: 20; inset: calc(100% + .25rem) 0 auto; max-height: 15rem; overflow-y: auto; padding: .35rem; border: 1px solid var(--border-color); border-radius: .375rem; background: var(--surface-raised-color); box-shadow: 0 .5rem 1.25rem #0002; }
.midas-multi-select-option { display: flex; align-items: center; width: 100%; min-height: 2.5rem; padding: .5rem .65rem; border: 0; border-radius: .25rem; color: var(--text-color); background: transparent; text-align: start; }
.midas-multi-select-option:hover, .midas-multi-select-option[aria-selected="true"] { color: var(--primary-dark-color); background: var(--primary-nearwhite-color); }
.midas-multi-select-option .bi { margin-inline-start: auto; color: var(--primary-color); }
.midas-users-accordion .accordion-button { font-weight: 700; }
.midas-scope-card { height: 100%; padding: 1rem; border: 1px solid var(--border-color); border-radius: .5rem; background: var(--surface-raised-color); }
.midas-scope-card--managed { border-color: var(--primary-light-color); background: var(--primary-nearwhite-color); }
.midas-user-standard { display: inline-flex; align-items: center; gap: .45rem; min-width: 0; max-width: 100%; padding: .2rem .35rem; border-radius: .4rem; background: color-mix(in srgb, var(--surface-color) 72%, transparent); }
.midas-user-standard-avatar { display: grid; place-items: center; flex: 0 0 auto; width: 2rem; height: 2rem; overflow: hidden; border-radius: 50%; color: var(--primary-dark-color); background: var(--primary-nearwhite-color); }
.midas-user-standard-avatar img { width: 100%; height: 100%; object-fit: cover; }
.midas-user-standard-content { display: grid; min-width: 0; }
.midas-user-standard-name { overflow: hidden; font-size: .875rem; font-weight: 650; text-overflow: ellipsis; white-space: nowrap; }
.midas-user-standard-username { overflow: hidden; color: var(--text-secondary-color); font-size: .75rem; text-overflow: ellipsis; white-space: nowrap; }
.midas-user-standard .badge { flex: 0 0 auto; }
.midas-group-member-list { display: grid; gap: .5rem; }
.midas-group-member-row { display: flex; align-items: center; justify-content: space-between; gap: .75rem; min-width: 0; padding: .25rem; border-bottom: 1px solid color-mix(in srgb, var(--border-color) 70%, transparent); }
.midas-group-member-row:last-child { border-bottom: 0; }
.midas-group-member-row .midas-user-standard { min-width: 0; }
.midas-user-picker { position: relative; }
.midas-user-picker-control { display: flex; align-items: center; gap: .5rem; min-height: calc(1.5em + .75rem + 2px); padding: .25rem .5rem; border: 1px solid var(--border-color); border-radius: .375rem; background: var(--surface-raised-color); cursor: text; }
.midas-user-picker:focus-within .midas-user-picker-control { border-color: var(--primary-color); box-shadow: 0 0 0 .2rem color-mix(in srgb, var(--primary-color) 22%, transparent); }
.midas-user-picker-value { min-width: 0; }
.midas-user-picker-search { flex: 1 1 8rem; min-width: 4rem; border: 0 !important; outline: 0; box-shadow: none !important; background: transparent; color: var(--text-color); }
.midas-user-picker-options { position: absolute; z-index: 20; inset: calc(100% + .25rem) 0 auto; max-height: 15rem; overflow-y: auto; padding: .35rem; border: 1px solid var(--border-color); border-radius: .375rem; background: var(--surface-raised-color); box-shadow: 0 .5rem 1.25rem #0002; }
.midas-user-picker-option { display: block; width: 100%; padding: .3rem; border: 0; border-radius: .25rem; background: transparent; text-align: start; }
.midas-user-picker-option:hover, .midas-user-picker-option:focus { background: var(--primary-nearwhite-color); }
@media (max-width: 1200px) { .midas-topnav { display: none; } }
@media (min-width: 701px) and (max-width: 991px) {
    .midas-main { padding: 1.5rem; }
    .midas-page { max-width: none; }
    .midas-page-header { margin-bottom: 1.5rem; }
}
@media (max-width: 700px) {
    .midas-header { flex-wrap: wrap; gap: .35rem; padding: .5rem; }
    .midas-body { flex-direction: column; }
    .midas-sidebar { flex-basis: auto; }
    .midas-sidebar nav { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .midas-sidebar-controls { grid-column: 1 / -1; }
    .midas-sidebar a { padding: .75rem; }
    .midas-sidebar-collapsed .midas-sidebar nav { display: block; }
    .midas-sidebar-expanded .midas-sidebar-collapse { display: none !important; }
    .midas-sidebar-expanded .midas-sidebar-controls button:nth-child(2) { display: grid; }
    .midas-sidebar-expanded .midas-sidebar {
        position: fixed;
        inset: var(--header-height) 0 0;
        z-index: 1040;
        overflow-y: auto;
        padding-block: .5rem;
        box-shadow: 0 .5rem 1.5rem #0004;
    }
    .midas-sidebar-expanded .midas-nav-backdrop {
        position: fixed;
        z-index: 1030;
        inset: 0;
        display: block;
        background: #0008;
    }
    .midas-sidebar-expanded { overflow: hidden; }
    .midas-main { padding: 1rem; }
    .midas-page { max-width: none; }
    .midas-page-header { align-items: flex-start; flex-wrap: wrap; gap: .75rem; margin-bottom: 1.5rem; }
    .midas-page-header-content { flex: 1 1 12rem; }
    .midas-page-header-actions { width: 100%; margin-inline-start: 0; }
    .midas-empty-state .card-body { gap: .75rem; }
    .midas-empty-state-icon { font-size: 1.65rem; }
    .midas-form-actions { justify-content: stretch; }
    .midas-form-actions .btn { flex: 1 1 0; }
    .midas-avatar { width: 68px; height: 68px; font-size: 1.7rem; }
    .midas-card .card-header, .midas-card .card-body { padding: 1rem !important; }
}
