:root {
    --shell-header-height: 78px;
    --shell-breadcrumb-height: 42px;
    --shell-padding-inline: clamp(22px, 2.5vw, 42px);
    --shell-cluster-gap: clamp(10px, 1.25vw, 18px);
    --shell-nav-gap: 4px;
    --shell-control-height: 44px;
    --shell-brand-max: 190px;
    --shell-layer-page: 0;
    --shell-layer-page-raised: 1;
    --shell-layer-header: 200;
    --shell-layer-popover: 210;
    --shell-border: #e2e6ec;
    --shell-surface: rgba(255, 255, 255, .96);
    --shell-text: #273449;
    --shell-muted: #5f6d82;
    --shell-hover: #f5f7f9;
    --shell-active: #fff0e5;
    --shell-orange: var(--edu-orange-accent, #ed681f);
    --shell-breadcrumb-hover-dark: #ff9f43;
}

.shell {
    position: relative;
    isolation: isolate;
    z-index: var(--shell-layer-page);
}

.app-shell-header {
    position: sticky;
    inset-block-start: 0;
    z-index: var(--shell-layer-header);
    display: block;
    border-block-end: 1px solid var(--shell-border);
    background: var(--shell-surface);
    color: var(--shell-text);
    box-shadow: 0 8px 28px rgba(24, 36, 55, .055);
    -webkit-backdrop-filter: blur(18px);
    backdrop-filter: blur(18px);
}

.app-shell-header__main {
    min-height: var(--shell-header-height);
    display: grid;
    grid-template-columns: clamp(150px, 14vw, var(--shell-brand-max)) minmax(410px, 1fr) auto;
    align-items: center;
    gap: var(--shell-cluster-gap);
    padding-inline: var(--shell-padding-inline);
    overflow: visible;
}

.app-shell-header__brand {
    width: 100%;
    max-width: var(--shell-brand-max);
    height: 48px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 2px;
    color: var(--shell-muted);
    text-decoration: none;
}
.app-shell-header__intello-logo { display: block; width: 100%; height: 30px; background: url('/branding/intello-edu/intello-edu-logo-light.png') no-repeat left center / contain; }
.app-shell-header__brand .brand-tagline { font-size: 12px; white-space: nowrap; }
html[dir='rtl'] .app-shell-header__brand { align-items: flex-start; }
html[dir='rtl'] .app-shell-header__intello-logo { background-position: right center; }

.school-brand-logo { display: block; width: auto; height: auto; max-width: 100%; max-height: 100%; object-fit: contain; object-position: center; }
.app-shell-header__brand--tenant { position: relative; background: none; }
.app-shell-header__tenant-logo { position: absolute; inset-block-start: 50%; inset-inline-start: 50%; transform: translate(-50%, -50%); }
html[dir='rtl'] .app-shell-header__tenant-logo { transform: translate(50%, -50%); }
.app-shell-header__tenant-logo.is-dark { display: none; }
html[data-theme='dark'] .app-shell-header__brand--tenant .app-shell-header__tenant-logo.is-light { display: none; }
html[data-theme='dark'] .app-shell-header__brand--tenant .app-shell-header__tenant-logo.is-dark { display: block; }

.app-shell-nav,
.app-shell-utilities {
    min-width: 0;
    display: flex;
    align-items: center;
}

.app-shell-nav {
    justify-content: center;
    gap: var(--shell-nav-gap);
    flex-wrap: nowrap;
}

.app-shell-nav__item,
.app-shell-utility,
.app-shell-account__trigger {
    min-height: var(--shell-control-height);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: 1px solid transparent;
    border-radius: 12px;
    color: #556176;
    font-size: 11px;
    font-weight: 500;
    line-height: 1.3;
    text-decoration: none;
    white-space: nowrap;
    transition: background-color .16s ease, border-color .16s ease, color .16s ease, box-shadow .16s ease;
}
.account-avatar{position:relative;isolation:isolate;overflow:hidden;flex:0 0 31px;box-shadow:0 0 0 1px rgba(38,50,71,.1)}
.account-avatar--photo{overflow:visible;border-radius:0;background:transparent;box-shadow:none}
.account-avatar__fallback,.account-avatar img{grid-area:1/1}
.account-avatar__fallback:not([hidden]){display:grid;place-items:center;inline-size:100%;block-size:100%}
.account-avatar img{position:absolute;inset:0;z-index:1;display:block;inline-size:100%;block-size:100%;border-radius:inherit;object-fit:cover;object-position:center}
.account-avatar--photo img{border-radius:0;object-fit:contain}
.account-avatar--photo[data-photo-state=error]{overflow:hidden;border-radius:50%;background:#f48c38;box-shadow:0 0 0 1px rgba(38,50,71,.1)}
.account-avatar--menu{inline-size:42px;block-size:42px;flex-basis:42px;font-size:12px}

.app-shell-nav__item {
    padding-inline: clamp(9px, .8vw, 14px);
}

.app-shell-nav__item > :is(.visual-identity-label,.icon-label),
.app-shell-menu__panel :is(a,button) > :is(.visual-identity-label,.icon-label) {
    min-inline-size: 0;
}

.app-shell-nav__item .visual-artwork,
.app-shell-menu__panel .visual-artwork {
    --artwork-size: 26px !important;
    inline-size: 26px;
    block-size: 26px;
    flex-basis: 26px;
}

.app-shell-nav__item .visual-identity-label__icon,
.app-shell-menu__panel .visual-identity-label__icon {
    inline-size: 26px;
    block-size: 26px;
    flex-basis: 26px;
}

.app-shell-nav__item :is(.visual-artwork img,.visual-artwork svg,.visual-identity-label__icon svg,.icon-label__icon),
.app-shell-menu__panel :is(.visual-artwork img,.visual-artwork svg,.visual-identity-label__icon svg,.icon-label__icon) {
    max-inline-size: 26px;
    max-block-size: 26px;
    object-fit: contain;
}

.app-shell-nav__item:hover,
.app-shell-utility:hover,
.app-shell-account__trigger:hover {
    border-color: #e5e9ee;
    background: var(--shell-hover);
    color: #263247;
}

.app-shell-nav__item:focus-visible,
.app-shell-utility:focus-visible,
.app-shell-account__trigger:focus-visible,
.app-shell-menu__panel a:focus-visible,
.app-shell-menu__panel button:focus-visible {
    outline: 3px solid rgba(242, 119, 42, .42);
    outline-offset: 2px;
}

.app-shell-nav__item.is-active,
.app-shell-menu__panel a.is-active {
    border-color: var(--visual-foreground, rgba(237, 104, 31, .18));
    background: var(--visual-selected, linear-gradient(145deg, #fff4eb, var(--shell-active)));
    color: var(--visual-foreground, var(--brand-action, var(--edu-orange-solid, #d95700)));
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .7);
    font-weight: 600;
}

.app-shell-nav__icon {
    flex: 0 0 19px;
    width: 19px;
    height: 19px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.75;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.app-shell-nav .icon-label__icon,
.app-shell-menu__panel .icon-label__icon {
    flex-basis: 19px;
    width: 19px;
    height: 19px;
}

.app-shell-nav__item > .icon-label,
.app-shell-menu__panel :is(a, button) > .icon-label {
    width: 100%;
}

.app-shell-nav__item > .icon-label {
    justify-content: center;
}

.app-shell-menu__panel :is(a, button) > .icon-label {
    justify-content: flex-start;
}

.app-shell-utilities {
    justify-content: flex-end;
    gap: 5px;
}

.app-shell-header__mobile-navigation,
.app-shell-mobile-search,
.app-shell-account__language {
    display: none;
}

.app-shell-mobile-search__icon {
    display: block;
    flex: 0 0 20px;
    inline-size: 20px;
    block-size: 20px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.9;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.app-shell-utility {
    padding-inline: 9px;
    background: transparent;
}

.app-shell-ai {
    flex: 0 0 auto;
    inline-size: auto;
    perspective: 260px;
    perspective-origin: left center;
}
.app-shell-ai .ai-assistant-launcher__button {
    position: relative;
    min-block-size: 48px;
    padding-block: 3px;
    padding-inline: 8px 12px;
    border-radius: 12px;
    gap: 8px;
    background: linear-gradient(to right, #ffd64d 0%, #ffb52e 42%, #f47a24 100%);
    box-shadow:
        inset 3px 0 0 rgba(255, 247, 202, .78),
        inset -3px 0 0 rgba(166, 58, 0, .2),
        3px 4px 0 #b94a0b,
        5px 9px 16px rgba(111, 43, 7, .28);
    color: #000;
    font-size: 15px;
    white-space: nowrap;
    transform: rotateY(14deg);
    transform-origin: left center;
    transform-style: preserve-3d;
    backface-visibility: hidden;
    transition: transform .16s ease, box-shadow .16s ease, filter .16s ease;
}
.app-shell-ai .ai-assistant-launcher__button::before {
    position: absolute;
    z-index: -1;
    inset: 1px;
    border-radius: 10px;
    box-shadow: inset 0 2px 0 rgba(255, 255, 255, .42);
    content: '';
    pointer-events: none;
}
.app-shell-ai .ai-assistant-launcher__button:hover {
    transform: rotateY(12deg) translateY(-1px);
}
.app-shell-ai .ai-assistant-launcher__button:active {
    box-shadow:
        inset 3px 0 0 rgba(255, 247, 202, .68),
        inset -3px 0 0 rgba(166, 58, 0, .24),
        2px 2px 0 #a64008,
        3px 5px 10px rgba(111, 43, 7, .24);
    transform: rotateY(16deg) translateY(1px);
}
html[dir='rtl'] .app-shell-ai .ai-assistant-launcher__button {
    background: linear-gradient(to right, #f47a24 0%, #ffb52e 58%, #ffd64d 100%);
    transform: rotateY(-14deg);
    transform-origin: right center;
}
html[dir='rtl'] .app-shell-ai {
    perspective-origin: right center;
}
html[dir='rtl'] .app-shell-ai .ai-assistant-launcher__button:hover {
    transform: rotateY(-12deg) translateY(-1px);
}
html[dir='rtl'] .app-shell-ai .ai-assistant-launcher__button:active {
    transform: rotateY(-16deg) translateY(1px);
}
.app-shell-ai .ai-assistant-launcher__label {
    display: inline-flex;
    align-items: center;
    color: #000;
    font-size: 16px;
    letter-spacing: normal;
    line-height: 1;
    -webkit-text-stroke: .2px #fff;
    paint-order: stroke fill;
    text-shadow: 0 0 .35px #fff;
    transform: translateZ(7px);
    transform-origin: left center;
    transform-style: preserve-3d;
}
html[dir='rtl'] .app-shell-ai .ai-assistant-launcher__label {
    transform-origin: right center;
}
.app-shell-ai .ai-assistant-launcher__button .visual-artwork {
    --artwork-size: 40px !important;
    inline-size: 40px;
    block-size: 40px;
}

.app-shell-menu {
    position: relative;
}

.app-shell-nav__tenant-more {
    display: block;
}

.app-shell-menu > summary {
    list-style: none;
    cursor: pointer;
}

.app-shell-menu > summary::-webkit-details-marker {
    display: none;
}

.app-shell-menu__chevron {
    width: 14px;
    height: 14px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    transition: transform .16s ease;
}

.app-shell-menu[open] .app-shell-menu__chevron {
    transform: rotate(180deg);
}

.app-shell-menu__panel {
    position: absolute;
    inset-block-start: calc(100% + 9px);
    inset-inline-end: 0;
    z-index: var(--shell-layer-popover);
    width: max-content;
    min-width: 205px;
    max-width: calc(100vw - 32px);
    padding: 7px;
    border: 1px solid var(--shell-border);
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 18px 44px rgba(21, 34, 52, .18);
}

.app-shell-menu__panel a,
.app-shell-menu__panel button {
    width: 100%;
    min-height: 44px;
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 9px 11px;
    border: 0;
    border-radius: 9px;
    background: transparent;
    color: #4d5a6e;
    font: 500 11px/1.35 inherit;
    text-align: start;
    text-decoration: none;
}

.app-shell-nav__menu .app-shell-menu__panel {
    inset-inline: 0 auto;
    min-width: 238px;
    max-height: min(70vh, 560px);
    overflow-y: auto;
    overscroll-behavior: contain;
}

.app-shell-menu__item--compact-overflow { display: flex !important; }

.app-shell-menu__panel--grouped {
    width: min(520px, calc(100vw - 32px));
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 16px;
    padding: 14px;
}

.app-shell-menu__group {
    min-width: 0;
    padding-block: 4px 10px;
}

.app-shell-menu__group:nth-child(n + 3) {
    border-block-start: 1px solid #edf0f4;
}

.app-shell-menu__group-label {
    display: block;
    padding: 7px 10px 4px;
    color: #8a6472;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.app-shell-menu__panel--grouped a { min-height: 40px; padding-block: 7px; }
[dir='rtl'] .app-shell-menu__group-label { letter-spacing: 0; }
html[data-theme='dark'] .app-shell-menu__group-label { color: var(--shell-orange); }

@media (max-width: 720px) {
    .app-shell-menu__panel--grouped { grid-template-columns: 1fr; }
}

.app-shell-nav__menu[data-navigation-group='administration'] .app-shell-menu__panel {
    inset-inline: auto 0;
}

.app-shell-menu__panel [aria-current='page']::after {
    content: '';
    width: 4px;
    height: 22px;
    margin-inline-start: auto;
    border-radius: 999px;
    background: var(--shell-orange);
}

.app-shell-menu__panel a:hover,
.app-shell-menu__panel button:hover {
    background: var(--shell-hover);
    color: #d85a18;
}

.app-shell-account {
    margin-inline-start: 4px;
}

.app-shell-account__trigger {
    justify-content: flex-start;
    padding: 5px 8px;
    max-inline-size: 230px;
}

.app-shell-account__identity,
.app-shell-account__identity b,
.app-shell-account__identity small,
.app-shell-account__meta b,
.app-shell-account__meta small {
    display: block;
}

.app-shell-account__identity {
    flex: 1 1 auto;
    min-inline-size: 0;
    width: clamp(104px, 9vw, 156px);
    max-width: 156px;
    text-align: start;
}

.app-shell-account__identity b {
    overflow: hidden;
    color: #273449;
    font-size: 10px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.app-shell-account__identity small,
.app-shell-account__meta small {
    margin-block-start: 2px;
    color: var(--shell-muted);
    font-size: 8px;
}

.app-shell-account__panel {
    min-width: 238px;
}

.app-shell-account__meta {
    display: flex;
    align-items: center;
    gap: 11px;
    margin-block-end: 5px;
    padding: 10px 11px;
    border-block-end: 1px solid #edf0f3;
    text-align: start;
}

.app-shell-account__meta-identity { min-inline-size: 0; }

.app-shell-account__meta small {
    overflow-wrap: anywhere;
}

.app-shell-account__panel form {
    margin: 0;
}

.app-shell-account__panel .help-action {
    justify-content: flex-start;
}

.app-shell-account__panel .help-action svg,
.app-shell-appearance__label svg {
    flex: 0 0 20px;
    inline-size: 20px;
    block-size: 20px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.app-shell-appearance {
    padding: 8px 11px 11px;
    border-block: 1px solid #edf0f3;
}

.app-shell-appearance__label {
    display: flex;
    align-items: center;
    gap: 9px;
    min-block-size: 36px;
    color: #4d5a6e;
    font-size: 11px;
    font-weight: 600;
}

.app-shell-appearance__choices {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 5px;
    margin-block-start: 5px;
}

.app-shell-appearance__choices button {
    width: auto;
    min-width: 0;
    min-height: 38px;
    justify-content: center;
    padding: 7px 5px;
    border: 1px solid #dfe4eb;
    border-radius: 8px;
    font-size: 9px;
}

.app-shell-appearance__choices button[aria-checked='true'] {
    border-color: #d85a18;
    background: #fff0e5;
    color: #9c3a00;
    font-weight: 700;
}

.app-shell-account__language-flag {
    display: inline-grid;
    inline-size: 20px;
    block-size: 20px;
    place-items: center;
}

.app-shell-account__language img {
    inline-size: 20px;
    block-size: 14px;
    object-fit: contain;
}

.app-shell-notifications { flex: 0 0 auto; }
.app-shell-notification__trigger { position: relative; flex: 0 0 44px; inline-size: 44px; min-inline-size: 44px; padding: 0; }
.app-shell-notification__icon { display: inline-grid; place-items: center; inline-size: 24px; block-size: 24px; }
.app-shell-notification__icon svg { inline-size: 22px; block-size: 22px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.app-shell-notification__badge { position: absolute; inset-block-start: 2px; inset-inline-end: 1px; display: grid; place-items: center; min-inline-size: 18px; block-size: 18px; padding-inline: 4px; border: 2px solid var(--shell-surface); border-radius: 999px; background: #c2412d; color: #fff; font-size: 8px; font-weight: 800; line-height: 1; font-variant-numeric: tabular-nums; }
.app-shell-notification__label { display: none; }
.app-shell-notification__panel { inset-inline: auto 0; width: min(320px, calc(100vw - 24px)); padding: 0; overflow: hidden; }
.app-shell-notification__title { display: block; padding: 15px 17px 12px; border-block-end: 1px solid #edf0f3; color: #263247; font-size: 13px; text-align: start; }
.app-shell-notification__empty { display: grid; justify-items: center; gap: 8px; padding: 25px 18px 27px; color: var(--shell-muted); text-align: center; }
.app-shell-notification__empty > span { display: grid; place-items: center; inline-size: 42px; block-size: 42px; border-radius: 13px; background: #fff3e9; color: #d85a18; }
.app-shell-notification__empty svg { inline-size: 22px; block-size: 22px; fill: none; stroke: currentColor; stroke-width: 1.7; }
.app-shell-notification__empty p { margin: 0; font-size: 11px; }

.app-shell-breadcrumbs {
    min-height: var(--shell-breadcrumb-height);
    display: flex;
    align-items: center;
    gap: 7px;
    padding-inline: var(--shell-padding-inline);
    border-block-start: 1px solid rgba(226, 230, 236, .8);
    background: rgba(248, 249, 251, .82);
    color: #657487;
    font-size: 10px;
}

.app-shell-breadcrumbs a {
    display: inline-flex;
    min-inline-size: 44px;
    min-block-size: 44px;
    align-items: center;
    justify-content: center;
    margin-block: -1px;
    padding: 0;
    color: var(--shell-muted);
    font-size: inherit;
    text-decoration: none;
}

.app-shell-breadcrumbs a:hover {
    color: #9c3a00;
}

.app-shell-breadcrumbs span[aria-current='page'] {
    color: #2f3b50;
    font-weight: 600;
}

.app-shell-breadcrumbs svg {
    width: 13px;
    height: 13px;
    fill: none;
    stroke: #a6afbc;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

html[dir='rtl'] .app-shell-breadcrumbs svg {
    transform: scaleX(-1);
}

.school-context-breadcrumbs {
    min-inline-size: 0;
    margin-block-end: var(--space-5, 20px);
    color: var(--shell-muted, #5f6d82);
    font-size: var(--font-size-sm, 13px);
}

.school-context-breadcrumbs ol {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--space-2, 8px);
    margin: 0;
    padding: 0;
    list-style: none;
}

.school-context-breadcrumbs li {
    display: inline-flex;
    min-inline-size: 0;
    align-items: center;
    gap: var(--space-2, 8px);
}

.school-context-breadcrumbs li:not(:last-child)::after {
    content: '\203A';
    color: var(--control-muted, #7a8798);
    font-size: 1.15em;
    line-height: 1;
}

html[dir='rtl'] .school-context-breadcrumbs li:not(:last-child)::after {
    transform: scaleX(-1);
}

.school-context-breadcrumbs a,
.school-context-breadcrumbs span {
    max-inline-size: 100%;
    overflow-wrap: anywhere;
}

.school-context-breadcrumbs a {
    box-sizing: border-box;
    display: inline-flex;
    min-inline-size: var(--touch-target, 44px);
    min-block-size: var(--touch-target, 44px);
    align-items: center;
    padding-inline: var(--space-1, 4px);
    color: var(--brand-deep, #9c3a00);
    text-underline-offset: .18em;
}

.school-context-breadcrumbs span[aria-current='page'] {
    color: var(--control-text, #243148);
    font-weight: 700;
}

html[data-theme='dark'] .school-context-breadcrumbs a {
    color: var(--link-default);
}

html[data-theme='dark'] .app-shell-header {
    --shell-border: #2a384d;
    --shell-surface: rgba(18, 28, 45, .97);
    --shell-text: #edf1f7;
    --shell-muted: #96a3b6;
    --shell-hover: #202c40;
    --shell-active: rgba(237, 104, 31, .14);
    box-shadow: 0 8px 28px rgba(2, 7, 15, .3);
}

html[data-theme='dark'] .app-shell-header__intello-logo {
    background-image: url('/branding/intello-edu/intello-edu-logo-dark.png');
}
html[data-theme='dark'] .app-shell-header__brand--tenant { background-image: none; }

html[data-theme='dark'] .app-shell-nav__item,
html[data-theme='dark'] .app-shell-utility,
html[data-theme='dark'] .app-shell-account__trigger {
    color: #c6d0df;
}

html[data-theme='dark'] .app-shell-nav__item:hover,
html[data-theme='dark'] .app-shell-utility:hover,
html[data-theme='dark'] .app-shell-account__trigger:hover {
    border-color: #34435a;
    color: #fff;
}

html[data-theme='dark'] .app-shell-nav__item.is-active,
html[data-theme='dark'] .app-shell-menu__panel a.is-active {
    border-color: var(--visual-foreground, rgba(245, 133, 65, .28));
    background: var(--visual-selected, rgba(237, 104, 31, .14));
    color: var(--visual-foreground, #ff9b5c);
}

html[data-theme='dark'] .app-shell-account__identity b,
html[data-theme='dark'] .app-shell-breadcrumbs span[aria-current='page'] {
    color: #eef2f8;
}

html[data-theme='dark'] .account-avatar { box-shadow: 0 0 0 1px rgba(255,255,255,.2); }
html[data-theme='dark'] .account-avatar--photo { box-shadow: none; }

html[data-theme='dark'] .app-shell-menu__panel {
    border-color: #34435a;
    background: #182235;
}

html[data-theme='dark'] .app-shell-menu__group:nth-child(n + 3) {
    border-color: #2a384d;
}

html[data-theme='dark'] .app-shell-menu__panel a,
html[data-theme='dark'] .app-shell-menu__panel button {
    color: #c5cfdd;
}

html[data-theme='dark'] .app-shell-account__meta {
    border-color: #2a384d;
}

html[data-theme='dark'] .app-shell-appearance {
    border-color: #2a384d;
}

html[data-theme='dark'] .app-shell-appearance__label {
    color: #c5cfdd;
}

html[data-theme='dark'] .app-shell-appearance__choices button {
    border-color: #3a485f;
}

html[data-theme='dark'] .app-shell-appearance__choices button[aria-checked='true'] {
    border-color: #f58b49;
    background: rgba(237, 104, 31, .16);
    color: #ffb17e;
}

html[data-theme='dark'] .app-shell-notification__title { border-color: #2a384d; color: #eef2f8; }
html[data-theme='dark'] .app-shell-notification__empty > span { background: #332a28; color: #ff9b5c; }
html[data-theme='dark'] .app-shell-notification__badge { border-color: #121c2d; }

html[data-theme='dark'] .app-shell-breadcrumbs {
    border-color: #2a384d;
    background: rgba(14, 23, 38, .88);
}

html[data-theme='dark'] .app-shell-breadcrumbs a:hover,
html[data-theme='dark'] .app-shell-breadcrumbs a:focus-visible {
    color: var(--shell-breadcrumb-hover-dark);
}

@media (prefers-color-scheme: dark) {
    html[data-theme='system'] .app-shell-header {
        --shell-border: #2a384d;
        --shell-surface: rgba(18, 28, 45, .97);
        --shell-text: #edf1f7;
        --shell-muted: #96a3b6;
        --shell-hover: #202c40;
        --shell-active: rgba(237, 104, 31, .14);
    }

    html[data-theme='system'] .app-shell-menu__group-label {
        color: var(--shell-orange);
    }

    html[data-theme='system'] .school-context-breadcrumbs a {
        color: var(--link-default);
    }

    html[data-theme='system'] .app-shell-header__intello-logo {
        background-image: url('/branding/intello-edu/intello-edu-logo-dark.png');
    }
    html[data-theme='system'] .app-shell-header__brand--tenant { background-image: none; }
    html[data-theme='system'] .app-shell-header__brand--tenant .app-shell-header__tenant-logo.is-light { display: none; }
    html[data-theme='system'] .app-shell-header__brand--tenant .app-shell-header__tenant-logo.is-dark { display: block; }

    html[data-theme='system'] .app-shell-nav__item,
    html[data-theme='system'] .app-shell-utility,
    html[data-theme='system'] .app-shell-account__trigger {
        color: #c6d0df;
    }

    html[data-theme='system'] .app-shell-nav__item:hover,
    html[data-theme='system'] .app-shell-utility:hover,
    html[data-theme='system'] .app-shell-account__trigger:hover {
        border-color: #34435a;
        color: #fff;
    }

    html[data-theme='system'] .app-shell-nav__item.is-active,
    html[data-theme='system'] .app-shell-menu__panel a.is-active {
        border-color: var(--visual-foreground, rgba(245, 133, 65, .28));
        background: var(--visual-selected, rgba(237, 104, 31, .14));
        color: var(--visual-foreground, #ff9b5c);
    }

    html[data-theme='system'] .app-shell-account__identity b,
    html[data-theme='system'] .app-shell-breadcrumbs span[aria-current='page'] {
        color: #eef2f8;
    }

    html[data-theme='system'] .app-shell-menu__panel {
        border-color: #34435a;
        background: #182235;
    }

    html[data-theme='system'] .app-shell-menu__panel a,
    html[data-theme='system'] .app-shell-menu__panel button {
        color: #c5cfdd;
    }

    html[data-theme='system'] .app-shell-account__meta {
        border-color: #2a384d;
    }

    html[data-theme='system'] .app-shell-appearance {
        border-color: #2a384d;
    }

    html[data-theme='system'] .app-shell-appearance__label {
        color: #c5cfdd;
    }

    html[data-theme='system'] .app-shell-appearance__choices button {
        border-color: #3a485f;
    }

    html[data-theme='system'] .app-shell-appearance__choices button[aria-checked='true'] {
        border-color: #f58b49;
        background: rgba(237, 104, 31, .16);
        color: #ffb17e;
    }

    html[data-theme='system'] .app-shell-notification__title { border-color: #2a384d; color: #eef2f8; }
    html[data-theme='system'] .app-shell-notification__empty > span { background: #332a28; color: #ff9b5c; }
    html[data-theme='system'] .app-shell-notification__badge { border-color: #121c2d; }

    html[data-theme='system'] .app-shell-breadcrumbs {
        border-color: #2a384d;
        background: rgba(14, 23, 38, .88);
    }

    html[data-theme='system'] .app-shell-breadcrumbs a:hover,
    html[data-theme='system'] .app-shell-breadcrumbs a:focus-visible {
        color: var(--shell-breadcrumb-hover-dark);
    }
}

@media (min-width: 1200px) {
    .app-shell-header {
        display: block;
    }

    .platform-responsive-bar,
    .platform-onboarding-responsive-bar {
        display: none;
    }

    .shell,
    html[dir='rtl'] .shell {
        display: block;
    }

    .shell > main,
    html[dir='rtl'] .shell > main {
        width: 100%;
    }

    .shell > .sidebar,
    .shell > .drawer-backdrop {
        display: none;
    }
}

@media (min-width: 1200px) and (max-width: 1599px) {
    :root {
        --shell-padding-inline: 22px;
        --shell-cluster-gap: 9px;
    }

    .app-shell-header__main {
        grid-template-columns: 155px minmax(385px, 1fr) auto;
    }

    .app-shell-header__brand {
        max-width: 155px;
    }

    .app-shell-nav__item {
        gap: 6px;
        padding-inline: 7px;
        font-size: 10px;
    }

    .app-shell-utility {
        padding-inline: 7px;
    }

    .app-shell-account__identity {
        display: none;
    }

    .app-shell-nav__item--compact-overflow { display: none; }
    .app-shell-menu__item--compact-overflow { display: flex !important; }
    .app-shell-nav__item--tenant-overflow { display: none; }
    .app-shell-nav__tenant-more { display: block; }
}

@media (max-width: 1199px) {
    :root {
        --shell-header-height: 64px;
        --shell-padding-inline: max(12px, var(--safe-left));
    }
    .app-shell-header__main {
        grid-template-columns: auto minmax(92px, 1fr) auto;
        gap: 8px;
        min-height: var(--shell-header-height);
        padding-inline-start: max(12px, var(--safe-left));
        padding-inline-end: max(12px, var(--safe-right));
    }
    .app-shell-header--tenant .app-shell-header__main {
        grid-template-columns: minmax(92px, 1fr) auto;
    }
    .app-shell-header__mobile-navigation {
        display: inline-grid;
        place-items: center;
        inline-size: 44px;
        block-size: 44px;
        padding: 0;
        border: 0;
        border-radius: 11px;
        background: transparent;
        color: var(--shell-text);
        font-size: 19px;
    }
    .app-shell-header__brand {
        justify-self: start;
        max-width: 118px;
        height: 42px;
    }
    .app-shell-header__brand .brand-tagline { display: none; }
    .app-shell-header__intello-logo { height: 42px; }
    .app-shell-nav,
    .app-shell-breadcrumbs {
        display: none;
    }
    .app-shell-header .app-shell-mobile-search {
        display: inline-grid;
        place-items: center;
        inline-size: 44px;
        block-size: 44px;
        padding: 0;
        border: 0;
        border-radius: 11px;
        background: transparent;
        color: var(--shell-muted);
        font-size: 20px;
    }
    .app-shell-header .app-shell-mobile-search:hover {
        border-color: var(--shell-border);
        background: var(--shell-hover);
        color: var(--shell-text);
    }
    .app-shell-account__identity,
    .app-shell-account__trigger > .app-shell-menu__chevron {
        display: none;
    }
    .app-shell-account__trigger {
        inline-size: 44px;
        padding: 4px;
    }
    .app-shell-account { margin-inline-start: 0; }
    .app-shell-utilities { gap: 4px; }
    .nav-open .sidebar,
    html[dir='rtl'] .nav-open .sidebar { z-index: 220; }
    .nav-open .drawer-backdrop { z-index: 219; }
    .platform-responsive-bar,.platform-onboarding-responsive-bar { display: none; }
    .shell,.shell > main,html[dir='rtl'] .shell { display: block; width: 100%; min-width: 0; }
}
@media (max-width: 767px) {
    .tenant-application:has(.glass-bottom-nav) .app-shell-nav { display: none; }
}
@media (max-width: 600px) {
    :root { --shell-padding-inline: 16px; }
    .app-shell-header__main { grid-template-columns: auto minmax(82px,1fr) auto; }
    .app-shell-header--tenant .app-shell-header__main { grid-template-columns: minmax(82px,1fr) auto; }
    .app-shell-header__brand { max-width: 100px; height: 40px; }
    .app-shell-utility { width: 36px; padding-inline: 4px; }
    .app-shell-utility.header-language > span:not(.sr-only) { display: none; }
    .app-shell-ai,.app-shell-ai .ai-assistant-launcher__button { inline-size: 48px; }
    .app-shell-ai .ai-assistant-launcher__button { padding: 3px; }
    .app-shell-ai .ai-assistant-launcher__label { display: none; }
}

@media (max-width: 479px) {
    .app-shell-header__main {
        grid-template-columns: auto minmax(72px, 1fr) auto;
        gap: 5px;
    }
    .app-shell-header--tenant .app-shell-header__main {
        grid-template-columns: minmax(72px, 1fr) auto;
    }
    .app-shell-header__brand { max-width: 92px; }
    .app-shell-mobile-search,
    .app-shell-utilities > .header-language { display: none; }
    .app-shell-account__language { display: flex; }
}
