/* A shared theme switch is available in the header at every screen size. */
.header-mobile-actions{display:flex;align-items:center;gap:8px}
.theme-toggle{width:42px;height:42px;border-radius:13px;background:#f6f8fc;border-color:#e1e7f0;color:#566e92}
.theme-toggle svg{width:20px;height:20px}
:root[data-theme=light]{color-scheme:light}
:root[data-theme=dark]{color-scheme:dark;--ink:#e9ecec;--muted:#a5aaaa;--line:#303434;--canvas:#0e1010;--white:#1b1d1d;--accent:#aca2ff;--accent-dark:#765ddf;--accent-soft:#302b4b;--shadow:0 12px 38px #0002;background:var(--canvas);color:var(--ink)}
[data-theme=dark] body{background:var(--canvas);color:var(--ink)}
[data-theme=dark] .topbar{background:#1b1d1ded;border-color:var(--line);color:var(--ink)}
[data-theme=dark] .brand-logo{background:#fff;border-radius:8px;padding:2px}
[data-theme=dark] .brand-divider{color:#858d8d}
[data-theme=dark] .brand>span:last-child>span:last-child,[data-theme=dark] .header-caption{color:#a5aaaa}
[data-theme=dark] .sidebar,[data-theme=dark] .sidebar-bottom,[data-theme=dark] .personal-dialog,[data-theme=dark] .personal-panel{background:#1b1d1d;color:var(--ink);border-color:var(--line)}
[data-theme=dark] .sidebar::before,[data-theme=dark] .personal-dialog::before{background:#242727}
[data-theme=dark] .eyebrow,[data-theme=dark] .entity-heading .eyebrow{color:#a5aaaa}
[data-theme=dark] .entity-heading h1,[data-theme=dark] .day-title-row h2,[data-theme=dark] .personal-heading h2{color:#e9ecec}
[data-theme=dark] .entity-heading p,[data-theme=dark] .mobile-lesson-summary,[data-theme=dark] .search-hint,[data-theme=dark] .period-selects label,[data-theme=dark] .catalog-caption,[data-theme=dark] .favorites-section h2{color:#a5aaaa}
[data-theme=dark] .entity-tabs,[data-theme=dark] .view-switch{background:#141616}
[data-theme=dark] .entity-tabs button,[data-theme=dark] .view-switch button{color:#a5aaaa}
[data-theme=dark] .entity-tabs button[aria-selected=true],[data-theme=dark] .view-switch button[aria-pressed=true]{background:#242727;color:#e9ecec;box-shadow:none}
[data-theme=dark] .search-field{background:#141616;border-color:#303434}
[data-theme=dark] .search-field input{color:#e9ecec}
[data-theme=dark] .search-field input::placeholder{color:#a5aaaa}
[data-theme=dark] .search-field:focus-within{border-color:#3a3e3e;box-shadow:0 0 0 3px #82aaff20}
[data-theme=dark] .period-selects select,[data-theme=dark] .group-filters select,[data-theme=dark] .schedule-options select{background-color:#1b1d1d;color:#e9ecec;border-color:#303434}
[data-theme=dark] .catalog-caption>span:last-child,[data-theme=dark] .catalog-item .item-mark{background:#1b1d1d;color:#a5aaaa}
[data-theme=dark] .catalog-item:hover{background:#1b1d1d;border-color:#303434}
[data-theme=dark] .catalog-item.selected{background:#242727;border-color:#3a3e3e}
[data-theme=dark] .catalog-item.selected .item-mark{background:#242727;color:#e9ecec}
[data-theme=dark] .catalog-item.selected .item-copy strong{color:#e9ecec}
[data-theme=dark] .item-copy small,[data-theme=dark] .catalog-status,[data-theme=dark] .sidebar-bottom,[data-theme=dark] .remember-hint{color:#a5aaaa}
[data-theme=dark] .favorite-chip,[data-theme=dark] .quick-card,[data-theme=dark] .change-button{background:#1b1d1d;border-color:#303434;color:#e9ecec}
[data-theme=dark] .quick-card.active,[data-theme=dark] .quick-card:hover{background:#242727;border-color:#3a3e3e}
[data-theme=dark] .quick-icon,[data-theme=dark] .quick-empty{background:#1b1d1d;color:#a5aaaa;border-color:#303434}
[data-theme=dark] .quick-copy small{color:#a5aaaa}
[data-theme=dark] .icon-button,[data-theme=dark] .heading-actions .icon-button,[data-theme=dark] .date-button,[data-theme=dark] .theme-toggle,[data-theme=dark] .mobile-search,[data-theme=dark] .mobile-favorites,[data-theme=dark] .sidebar .drawer-close,[data-theme=dark] .personal-close{background:#1b1d1d;color:#a5aaaa;border-color:#303434}
[data-theme=dark] .icon-button:hover{background:#242727;color:#e9ecec;border-color:#3a3e3e}
[data-theme=dark] .heading-actions .favorite-toggle[aria-pressed=true],[data-theme=dark] .favorite-toggle[aria-pressed=true]{background:#514428;color:#f1cc6d;border-color:#76613b}
[data-theme=dark] .toolbar{background:#1b1d1d;border-color:#303434}
[data-theme=dark] .week-label strong{color:#e9ecec}
[data-theme=dark] .week-label>span{color:#a5aaaa}
[data-theme=dark] .view-tools{border-color:#303434}
[data-theme=dark] .today-button{background:#242727;color:#e9ecec;border-color:#303434}
[data-theme=dark] .day-tab{background:#1b1d1d;border-color:#303434}
[data-theme=dark] .day-tab .weekday{color:#a5aaaa}
[data-theme=dark] .day-tab .day-number{color:#e9ecec}
[data-theme=dark] .day-tab.is-today:not([aria-pressed=true]){background:#242727;border-color:#3a3e3e}
[data-theme=dark] .day-tab[aria-pressed=true],[data-theme=dark] .day-tab:hover,[data-theme=dark] .day-tab[aria-pressed=true]:hover{background:#242727;border-color:#3a3e3e}
[data-theme=dark] .day-tab[aria-pressed=true] .day-number,[data-theme=dark] .day-tab:hover .day-number{color:#fff}
[data-theme=dark] .day-tab[aria-pressed=true] .weekday,[data-theme=dark] .day-tab:hover .weekday{color:#e9ecec}
[data-theme=dark] .day-tab .day-dot{background:#242727}
[data-theme=dark] .schedule-options>label,[data-theme=dark] .freshness{color:#a5aaaa}
[data-theme=dark] .day-title-row>span{background:#1b1d1d;color:#a5aaaa}
[data-theme=dark] .lesson-card{background:#1b1d1d;border-color:#303434;border-left-color:var(--lesson-color);box-shadow:0 3px 14px #0001}
[data-theme=dark] .lesson-card h3{color:#e9ecec}
[data-theme=dark] .lesson-time strong{color:#a5aaaa}
[data-theme=dark] .lesson-time>span,[data-theme=dark] .cycle-tag{color:#a5aaaa}
[data-theme=dark] .detail-row,[data-theme=dark] .detail-row .room-line{color:#a5aaaa}
[data-theme=dark] .detail-row svg{color:#a5aaaa}
[data-theme=dark] .detail-link,[data-theme=dark] .lesson-card .detail-link{color:#a5aaaa;text-decoration-color:#3a3e3e}
[data-theme=dark] .detail-row .subgroup-badge,[data-theme=dark] .lesson-group-badge,[data-theme=dark] .group-link{background:#242727;color:#a5aaaa}
[data-theme=dark] .lesson-comment{background:#1b1d1d;color:#a5aaaa}
[data-theme=dark] .kind-practice{--lesson-color:#53c5ae}
[data-theme=dark] .kind-practice .lesson-kind{background:#1d4b43;color:#8ae0cb}
[data-theme=dark] .kind-lecture{--lesson-color:#d9ad47}
[data-theme=dark] .kind-lecture .lesson-kind{background:#4b4024;color:#f4d47d}
[data-theme=dark] .kind-lab .lesson-kind{background:#283d68;color:#adc5ff}
[data-theme=dark] .kind-exam .lesson-kind{background:#4c3c25;color:#edc88d}
[data-theme=dark] .kind-other .lesson-kind{background:#3a3052;color:#c9b5ef}
[data-theme=dark] .empty-day{background:#1b1d1d;border-color:#303434;color:#a5aaaa}
[data-theme=dark] .empty-day h3{color:#a5aaaa}
[data-theme=dark] .empty-day p{color:#a5aaaa}
[data-theme=dark] .notice{background:#423a25;border-color:#6b5b32;color:#e3cc91}
[data-theme=dark] .schedule-status.error{background:#3c2732;border-color:#69404f;color:#f2b5c5}
[data-theme=dark] .catalog-status.error{color:#f2b5c5}
[data-theme=dark] .skeleton{background:linear-gradient(100deg,#1b293e 20%,#2a3c58 40%,#1b293e 60%);background-size:300% 100%}
[data-theme=dark] .schedule-footer,[data-theme=dark] .page-footer{color:#a5aaaa;border-color:var(--line)}
[data-theme=dark] .schedule-footer button{background:#1b1d1d;border-color:#303434;color:#a5aaaa}
[data-theme=dark] .mobile-navigation{background:#1b1d1dec;border-color:#303434;box-shadow:0 8px 35px #0005}
[data-theme=dark] .mobile-navigation button{color:#a5aaaa}
[data-theme=dark] .mobile-navigation button[aria-current=page]{background:#242727;color:#e9ecec}
[data-theme=dark] .welcome h2{color:#e9ecec}
[data-theme=dark] .welcome>p,[data-theme=dark] .welcome-features{color:#a5aaaa}
[data-theme=dark] .welcome-icon{background:#242727;color:#e9ecec}
[data-theme=dark] .quick-examples button{background:#242727;border-color:#303434;color:#a5aaaa}
[data-theme=dark] .primary-button{background:#242727;color:#fff}
[data-theme=dark] .toast{background:#e9ecec;color:#858d8d}
[data-theme=dark] .personal-dialog::backdrop,[data-theme=dark] .drawer-backdrop:not([hidden]){background:#141616ac}
@media(max-width:359px){.header-mobile-actions{gap:5px}.theme-toggle{width:38px;height:38px}}

/* Graphite and violet palette sampled from the supplied reference. */
[data-theme=dark] .topbar,[data-theme=dark] .sidebar,[data-theme=dark] .sidebar-bottom{background:#141616}
[data-theme=dark] .search-field,[data-theme=dark] .period-selects select,[data-theme=dark] .group-filters select,[data-theme=dark] .schedule-options select{background-color:#111313;border-color:#3a3e3e;color:#e9ecec}
[data-theme=dark] .entity-tabs button[aria-selected=true],[data-theme=dark] .view-switch button[aria-pressed=true],[data-theme=dark] .catalog-item.selected,[data-theme=dark] .mobile-navigation button[aria-current=page],[data-theme=dark] .quick-card.active{background:#302b4b;border-color:#484066;color:#aca2ff}
[data-theme=dark] .catalog-item.selected .item-mark,[data-theme=dark] .quick-icon,[data-theme=dark] .active .quick-icon,[data-theme=dark] .welcome-icon{background:#302b4b;color:#aca2ff}
[data-theme=dark] .catalog-item.selected .item-copy strong,[data-theme=dark] .detail-link,[data-theme=dark] .lesson-card .detail-link,[data-theme=dark] .text-button{color:#aca2ff;text-decoration-color:#50496a}
[data-theme=dark] .lesson-group-badge,[data-theme=dark] .detail-row .subgroup-badge,[data-theme=dark] .group-link,[data-theme=dark] .favorite-chip{background:#302b4b;color:#b7afff;border-color:#484066}
[data-theme=dark] .theme-toggle{background:#302b4b;color:#aca2ff;border-color:#302b4b}
[data-theme=dark] .today-button,[data-theme=dark] .change-button{background:#242727;color:#aca2ff;border-color:#3a3e3e}
[data-theme=dark] .day-tab[aria-pressed=true],[data-theme=dark] .day-tab:hover,[data-theme=dark] .day-tab[aria-pressed=true]:hover,[data-theme=dark] .primary-button{background:#765ddf;border-color:#8c77ed;color:#fff;box-shadow:none}
[data-theme=dark] .day-tab.is-today:not([aria-pressed=true]){background:#302b4b;border-color:#706496}
[data-theme=dark] .day-tab[aria-pressed=true] .weekday,[data-theme=dark] .day-tab:hover .weekday{color:#e3ddff}
[data-theme=dark] .day-tab .day-dot{background:#aca2ff}
[data-theme=dark] .search-field:focus-within{border-color:#aca2ff;box-shadow:0 0 0 3px #aca2ff20}
[data-theme=dark] .lesson-row.is-current .lesson-card{border-color:#8170bd;border-left-color:var(--lesson-color);box-shadow:0 4px 18px #0002}
[data-theme=dark] .skeleton{background:linear-gradient(100deg,#1b1d1d 20%,#303434 40%,#1b1d1d 60%);background-size:300% 100%}
[data-theme=dark] .personal-dialog::backdrop,[data-theme=dark] .drawer-backdrop:not([hidden]){background:#000a}

@media(max-width:850px){
[data-theme=dark] .mobile-navigation{background:#141616ed;border:0;border-top:1px solid #3a3e3e;box-shadow:none}
[data-theme=dark] .mobile-navigation button{color:#a5aaaa}
[data-theme=dark] .mobile-navigation button[aria-current=page]{background:#302b4b;color:#aca2ff}
}

/* Search categories read as one segmented control, like Day / Week. */
.entity-tabs{background:#e9eef6;border:1px solid #dde5f0;padding:4px;gap:4px;border-radius:14px}
.entity-tabs button[aria-selected=false]{background:transparent;border:1px solid transparent;color:#64748b;box-shadow:none}
.entity-tabs button[aria-selected=true]{background:#fff;border:1px solid #d8e2f0;color:#245bc9;box-shadow:0 2px 6px #1a345b08}
[data-theme=dark] .entity-tabs{background:#0e1010;border:1px solid #303434}
[data-theme=dark] .entity-tabs button[aria-selected=false]{background:transparent;border:1px solid transparent;color:#a5aaaa}
[data-theme=dark] .entity-tabs button[aria-selected=true]{background:#302b4b;border:1px solid #40395e;color:#aca2ff;box-shadow:none}
.entity-tabs button[aria-selected=false]:hover{background:#dfe7f3;color:#355b93}
[data-theme=dark] .entity-tabs button[aria-selected=false]:hover{background:#242727;color:#e9ecec}

.schedule-footer{justify-content:flex-end}
.page-footer.feedback-footer{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;text-align:center;border:0;padding:22px 0 12px;font-size:13px;line-height:1.6}
.page-footer.feedback-footer span{width:auto;color:#8390a5}
.page-footer.feedback-footer a{color:#6754d7;text-decoration:none;font-size:15px;font-weight:650;letter-spacing:.1px}
.page-footer.feedback-footer a:hover{text-decoration:underline;text-underline-offset:4px}
[data-theme=dark] .page-footer.feedback-footer span{color:#8b8b98}
[data-theme=dark] .page-footer.feedback-footer a{color:#aca2ff}

/* Text links in lesson cards, without a filled background. */
[data-theme=light] .lesson-card .detail-link{display:inline-flex;align-items:center;gap:8px;background:transparent;border:0;border-radius:0;padding:2px 0;min-height:28px;color:#245bc9;text-decoration:underline;text-decoration-color:#9bb9ee;text-underline-offset:3px;text-align:left;line-height:1.5}
[data-theme=light] .lesson-card .detail-link:hover{background:transparent;color:#19469e}
[data-theme=light] .lesson-card .detail-link:focus-visible{outline:2px solid #245bc9;outline-offset:3px}
[data-theme=light] .detail-row .detail-line{align-items:center}
@media(max-width:850px){[data-theme=light] .lesson-card .detail-link{min-height:32px;font-size:12px;padding:3px 0}[data-theme=light] .detail-row .detail-line>svg{margin-top:0}}

.sidebar-bottom a{margin-left:0;text-decoration:none;color:inherit}.sidebar-bottom a:hover{text-decoration:underline;text-underline-offset:3px}

.metrika-pixel{position:absolute;left:-9999px;width:1px;height:1px}
