/* Visual shell only: selectors do not affect page forms, dialogs or account styles. */
.oms-shell { background: #f4f8fc; }
.oms-shell .oms-shell-topbar {
    background: linear-gradient(145deg, #edf4fff0, #ffffffe0 58%, #e8f9f1e6) !important;
    color: #3f617f; border-bottom: 1px solid #dae6f2;
    box-shadow: 0 14px 40px #224c7d09, inset 0 1px 0 #fff; 
    backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px);
    font-family: "Segoe UI Variable", "Segoe UI", Roboto, system-ui, sans-serif;
}
.oms-shell-topbar .mud-toolbar { gap: 12px; height: 84px; align-items: center; padding: 0 20px; }
.oms-shell .oms-shell-menu-toggle { color: #2463dc; border-radius: 12px; flex-shrink: 0; margin-top: auto; margin-bottom: auto; }
.oms-shell .oms-shell-menu-toggle:hover { background: #dbe9ff; }
.oms-shell-heading { display: flex; flex-direction: column; line-height: 1.35; flex-shrink: 0; justify-content: center; }
.oms-shell-heading > span { color: #497dcc; font-size: .62rem; font-weight: 800; letter-spacing: .16em; }
.oms-shell-heading strong { font-size: 1.05rem; font-weight: 700; letter-spacing: -.015em; color: #203c59; margin-top: 1px; }
.oms-shell .oms-shell-environment { position: static; padding: 5px 10px; border-radius: 24px; font-size: .65rem; line-height: 1.4; font-weight: 650; box-shadow: inset 0 1px 0 #ffffff30; flex-shrink: 0; }
.oms-shell .oms-shell-profile, .oms-shell .oms-shell-logout { text-transform: none; font-family: inherit; font-size: .86rem; font-weight: 650; min-height: 40px; border-radius: 10px; padding: 6px 14px; }
.oms-shell .oms-shell-profile { display: inline-flex; align-items: center; max-width: 340px; min-width: 0; color: #203c59; background: #ffffffeb; border: 1px solid #cbdbe9; box-shadow: 0 2px 8px #224c7d05; }
.oms-shell .oms-shell-profile:hover { background: #edf4ff; border-color: #3b82f6; }
.oms-shell-profile .mud-button-label { display: inline-flex !important; flex-direction: row !important; align-items: center !important; gap: 8px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.oms-shell-profile .mud-button-icon-start { margin-right: 0 !important; margin-inline-end: 0 !important; margin-inline-start: 0 !important; display: inline-flex; align-items: center; color: #2463dc; font-size: 20px; flex-shrink: 0; }
.oms-shell .oms-shell-logout { background: linear-gradient(120deg, #00896c, #00765b); color: #fff; box-shadow: 0 4px 12px #00856624; flex-shrink: 0; border: none; }
.oms-shell .oms-shell-logout:hover { background: #006c54; }
.oms-shell .oms-shell-drawer { border-right: 1px solid #dae6f2; color: #3f617f; background: linear-gradient(168deg, #ffffffd9 15%, #f5f9ffc4 66%, #eefaf4d9); box-shadow: 5px 0 26px #224c7d05; backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); }
.oms-shell-drawer .mud-drawer-content { display: flex; flex-direction: column; overflow: hidden; min-height: 0; }
.oms-shell-brand { height: 84px; display: flex; align-items: center; flex-shrink: 0; gap: 13px; padding: 0 20px; box-sizing: border-box; border-bottom: 1px solid #dae6f2; background: linear-gradient(125deg, #edf4fff0, #ffffffe0, #e8f9f1e6); font-family: "Segoe UI Variable", "Segoe UI", Roboto, system-ui, sans-serif; }
.oms-shell .oms-shell-brand-icon { width: 44px; height: 44px; border-radius: 13px; background: linear-gradient(130deg, #dbe9ff, #ddf7ee); border: 2px solid #fff; color: #2463dc; box-shadow: 0 8px 24px #245ef412; display: grid; place-items: center; }
.oms-shell-brand-icon .mud-icon-root { font-size: 24px; }
.oms-shell-brand-copy { min-width: 0; }
.oms-shell-brand-copy > strong { display: flex; align-items: center; gap: 9px; color: #203c59; font-size: 1.25rem; letter-spacing: -.035em; line-height: 1.4; }
.oms-shell-brand-copy strong > span { font-size: .55rem; letter-spacing: .1em; font-weight: 700; color: #008566; padding: 3px 6px; border-radius: 5px; background: #e5f6ef; }
.oms-shell-brand-copy > p { margin: 2px 0 0; color: #5d7087; font-size: .71rem; }
.oms-shell-main { min-height: 100vh; background: #f4f8fc; }
.oms-shell .oms-shell-content, .mud-container.oms-shell-content { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: clamp(10px, 1.2vw, 20px) !important; box-sizing: border-box; }
.oms-navigation {
    display: flex; flex-direction: column; flex: 1 1 auto; min-height: 0; overflow: hidden;
    color: #5d7087; font-family: "Segoe UI Variable", "Segoe UI", Roboto, system-ui, sans-serif;
}
.oms-navigation .oms-navigation-search { background: transparent; padding: 20px 16px 14px; flex-shrink: 0; }
.oms-navigation-search .mud-input-control { margin: 0; }
.oms-navigation-search .mud-input-outlined { border-radius: 12px; background: #ffffffbd; font-size: .84rem; color: #3f617f; }
.oms-navigation-search .mud-input-outlined-border { border-color: #cbdbe9; }
.oms-navigation-search .mud-input-outlined:focus-within .mud-input-outlined-border { border-color: #497dcc; border-width: 2px; }
.oms-navigation-search .mud-input-slot { padding-top: 12px !important; padding-bottom: 12px !important; }
.oms-navigation-search .mud-input-adornment .mud-icon-root { font-size: 20px; color: #667b94; }
.oms-navigation-label { padding: 0 23px 12px; color: #497dcc; font-size: .65rem; font-weight: 800; letter-spacing: .15em; flex-shrink: 0; }
.oms-navigation-scroll { flex: 1 1 auto; min-height: 0; overflow-y: auto; overflow-x: hidden; padding: 0 12px 20px; scrollbar-width: thin; scrollbar-color: #cbdbe9 transparent; overscroll-behavior: contain; }
.oms-navigation-scroll::-webkit-scrollbar { width: 5px; }
.oms-navigation-scroll::-webkit-scrollbar-thumb { background: #cbdbe9; border-radius: 5px; }
.oms-navigation .mud-nav-link { border-radius: 10px; margin: 3px 0; padding: 10px 14px; min-height: 46px; font-size: .94rem; font-weight: 600; line-height: 1.45; color: #4a627d; transition: background-color .15s ease, color .15s ease; }
.oms-navigation .mud-nav-link .mud-nav-link-text { margin-left: 12px; white-space: normal; overflow-wrap: anywhere; font-family: inherit; }
.oms-navigation .mud-nav-link:not(.mud-nav-link-disabled) .mud-nav-link-icon { color: #5c7996; font-size: 22px; flex-shrink: 0; }
.oms-navigation .mud-nav-link:not(.mud-nav-link-disabled):hover { background: #f5f9ffc4; color: #2463dc; }
.oms-navigation .mud-nav-link.active:not(.mud-nav-link-disabled) { color: #00765b; background: #eefaf4d9; border: 1px solid #c7e7d7; box-shadow: 0 4px 12px #0085660a; font-weight: 700; }
.oms-navigation .mud-nav-link.active:not(.mud-nav-link-disabled) .mud-nav-link-icon { color: #008566; }
.oms-navigation .mud-nav-group > .mud-nav-link { font-weight: 700; }
.oms-navigation .mud-nav-group .mud-collapse-container { margin-left: 15px; border-left: 1px solid #dae6f2; padding-left: 5px; }
.oms-navigation .mud-nav-group .mud-nav-group .mud-collapse-container { margin-left: 8px; }
.oms-navigation .mud-nav-group .mud-nav-menu { padding: 0; }
.oms-navigation .mud-nav-link-expand-icon { color: #a1b4c8; font-size: 18px; }
.oms-navigation-loading { display: flex; justify-content: center; padding: 32px 12px; }
.oms-navigation .oms-navigation-empty { padding: 18px 12px; font-size: .85rem; }
.oms-navigation-footer { flex-shrink: 0; border-top: 1px solid #dae6f2; margin-top: auto; padding: 15px 20px; background: linear-gradient(110deg, #f5f9ffc4, #eefaf4d9); font-size: .66rem; line-height: 1.6; backdrop-filter: blur(10px); }
.oms-navigation-footer > div { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; }
.oms-navigation-footer > div + div { margin-top: 5px; }
.oms-navigation-footer span { color: #667b94; font-weight: 600; }
.oms-navigation-footer strong { color: #08775e; font-weight: 700; background: #e5f6ef; padding: 2px 8px; border-radius: 6px; }
.oms-navigation-footer time { color: #5d7087; font-variant-numeric: tabular-nums; font-weight: 500; }
.oms-navigation :focus-visible, .oms-shell-topbar :focus-visible { outline: 3px solid #497dcc; outline-offset: 2px; }
@supports not (backdrop-filter: blur(1px)) { .oms-shell .oms-shell-topbar { background: #fff !important; } }
@media (max-width: 1100px) { .oms-shell-heading { display: none; } .oms-shell .oms-shell-profile { max-width: 240px; } }
@media (max-width: 600px) {
    .oms-shell-topbar .mud-toolbar { gap: 5px; padding-left: 12px; padding-right: 8px; }
    .oms-shell .oms-shell-environment { max-width: 84px; font-size: .57rem; padding: 4px 7px; text-align: center; white-space: normal; }
    .oms-shell .oms-shell-profile { flex: 1 1 auto; font-size: .74rem; padding: 8px 12px; min-height: 40px; }
    .oms-shell-profile .mud-button-icon-start { display: none; }
    .oms-shell .oms-shell-logout { font-size: .74rem; padding: 8px 12px; min-width: 0; min-height: 40px; }
    .oms-shell-logout .mud-button-icon-start { display: none; }
    .oms-shell .oms-shell-content { padding: 10px; }
}
@media (prefers-reduced-motion: reduce) { .oms-navigation .mud-nav-link { transition: none; } }
