/* Martynov-Class Alpha 25 — canonical MDS 1.5.0 adaptation */
:root {
  --mc-sidebar-width: 256px;
  --mc-sidebar-collapsed: 72px;
  --mc-topbar-height: 80px;
  --mc-page-x: 24px;
  --mc-page-y: 20px;
  --mc-gap: 16px;
  --mc-right-rail: 280px;
  --mc-editor-left: 220px;
  --mc-editor-right: 300px;
  --mc-canvas: #FAFCFF;
  --mc-surface: #FFFFFF;
  --mc-surface-subtle: #F7FAFD;
  --mc-border: #E3EAF2;
  --mc-text: #0F1F3D;
  --mc-text-secondary: #66758F;
  --mc-nav-active-bg: #EAF4FF;
  --mc-nav-active: #007FE8;
  --mc-panel-shadow: 0 1px 3px rgba(15,31,61,.05), 0 8px 24px rgba(15,31,61,.03);
  --mc-modal-shadow: 0 24px 64px rgba(15,31,61,.18);
}
html[data-theme="dark"] {
  --mc-canvas: var(--mds-surface-canvas);
  --mc-surface: var(--mds-surface-default);
  --mc-surface-subtle: var(--mds-surface-subtle);
  --mc-border: var(--mds-border-default);
  --mc-text: var(--mds-text-primary);
  --mc-text-secondary: var(--mds-text-secondary);
  --mc-nav-active-bg: var(--mds-action-primary-subtle);
  --mc-nav-active: #33B5FF;
  --mc-panel-shadow: var(--mds-shadow-sm);
  --mc-modal-shadow: var(--mds-shadow-lg);
}

html, body { background: var(--mc-canvas); }
body { color: var(--mc-text); font-family: var(--mds-font-sans); background-image:none !important; }
.app-shell { grid-template-columns: var(--mc-sidebar-width) minmax(0,1fr); background:var(--mc-canvas); }
.workspace { min-width:0; background:var(--mc-canvas); }

/* Sidebar */
.sidebar {
  width:var(--mc-sidebar-width); padding:18px 12px 16px; background:var(--mc-surface);
  border-right:1px solid var(--mc-border); box-shadow:none; z-index:30;
}
.sidebar-brand { min-height:64px; padding:2px 12px 18px; gap:10px; color:var(--mds-action-primary); font-size:18px; font-weight:700; }
.sidebar-brand .brand-mark.small { width:40px; height:40px; flex:0 0 40px; border:0; border-radius:0; background:transparent; box-shadow:none; }
.sidebar-brand .brand-mark.small img { width:40px; height:40px; }
.brand-name { white-space:nowrap; }
.main-nav { gap:4px; }
.nav-button {
  min-height:48px; padding:0 14px; border-radius:10px; gap:12px; color:#385070;
  font-size:14px; font-weight:500; transition:background .16s ease,color .16s ease;
}
html[data-theme="dark"] .nav-button { color:var(--mds-text-secondary); }
.nav-button:hover { background:var(--mds-action-ghost-hover); color:var(--mc-text); }
.nav-button.active { background:var(--mc-nav-active-bg); color:var(--mc-nav-active); font-weight:600; }
.nav-icon, .nav-icon.design-nav { width:20px; height:20px; flex:0 0 20px; opacity:1; filter:none; background:currentColor; -webkit-mask:var(--nav-icon) center/20px 20px no-repeat; mask:var(--nav-icon) center/20px 20px no-repeat; }
.sidebar-footer { margin-top:auto; padding:14px 8px 0; border-top:1px solid var(--mc-border); gap:10px; }
.sidebar-user strong { color:var(--mc-text); font-size:13px; }
.sidebar-user span { color:var(--mc-text-secondary); font-size:11px; line-height:1.35; }

/* Global topbar */
.topbar {
  height:var(--mc-topbar-height); min-height:var(--mc-topbar-height); padding:0 24px; border-bottom:1px solid var(--mc-border);
  background:color-mix(in srgb,var(--mc-surface) 96%,transparent); backdrop-filter:blur(14px);
  position:sticky; top:0; z-index:24; display:flex; align-items:center; justify-content:space-between; gap:18px;
}
.global-search-wrap { width:min(640px,58vw); position:relative; }
.global-search-box { height:48px; display:flex; align-items:center; gap:10px; padding:0 15px; border:1px solid var(--mc-border); border-radius:12px; background:var(--mc-surface); box-shadow:0 1px 2px rgba(15,31,61,.02); }
.global-search-icon { width:20px; height:20px; flex:0 0 20px; color:#526B91; background:currentColor; -webkit-mask:url('/design/icons/search.svg') center/contain no-repeat; mask:url('/design/icons/search.svg') center/contain no-repeat; }
.global-search-box input { min-height:0; height:46px; padding:0; border:0; box-shadow:none !important; background:transparent; color:var(--mc-text); font-size:14px; }
.global-search-box input::placeholder { color:#7C8CA6; }
.global-search-results { position:absolute; left:0; right:0; top:56px; z-index:80; max-height:430px; overflow:auto; padding:8px; border:1px solid var(--mc-border); border-radius:14px; background:var(--mc-surface); box-shadow:var(--mc-modal-shadow); }
.global-search-results.hidden { display:none !important; }
.global-search-result { width:100%; min-height:54px; display:grid; grid-template-columns:34px minmax(0,1fr); align-items:center; gap:10px; padding:8px 10px; border:0; border-radius:10px; background:transparent; color:var(--mc-text); text-align:left; cursor:pointer; }
.global-search-result:hover { background:var(--mds-action-ghost-hover); }
.global-search-result-icon { width:32px; height:32px; border-radius:9px; display:grid; place-items:center; color:var(--mds-action-primary); background:var(--mds-action-primary-subtle); font-size:14px; font-weight:700; }
.global-search-result strong { display:block; font-size:13px; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.global-search-result small { display:block; margin-top:3px; color:var(--mc-text-secondary); font-size:11px; }
.topbar-utility { display:flex; align-items:center; gap:10px; }
.theme-toggle, .utility-button { position:static !important; inset:auto !important; width:44px; height:44px; border:1px solid var(--mc-border); border-radius:12px; background:var(--mc-surface); color:var(--mds-action-primary); box-shadow:none; cursor:pointer; display:grid; place-items:center; font-size:18px; }
.theme-toggle:hover, .utility-button:hover { background:var(--mds-action-ghost-hover); }
.topbar-user { min-height:48px; display:flex; align-items:center; gap:10px; padding:5px 12px 5px 6px; border:1px solid var(--mc-border); border-radius:12px; background:var(--mc-surface); }
.topbar-avatar { width:36px; height:36px; border-radius:50%; display:grid; place-items:center; background:linear-gradient(145deg,#0099FF,#7F00FF); color:white; font-weight:700; font-size:13px; }
.topbar-user-copy { display:grid; gap:2px; min-width:120px; }
.topbar-user-copy strong { font-size:13px; color:var(--mc-text); }
.topbar-user-copy span { font-size:11px; color:var(--mc-text-secondary); }

/* Page header */
.page-head { min-height:96px; padding:20px var(--mc-page-x) 12px; display:flex; align-items:flex-start; justify-content:space-between; gap:24px; background:var(--mc-canvas); }
.page-head h1 { margin:0; font-size:30px; line-height:1.2; letter-spacing:-.5px; color:var(--mc-text); font-weight:700; }
.page-head p { margin:7px 0 0; max-width:760px; color:var(--mc-text-secondary); font-size:14px; }
.topbar-actions { align-self:flex-start; display:flex; align-items:center; justify-content:flex-end; gap:10px; flex-wrap:wrap; }
.page-content { max-width:none; padding:0 var(--mc-page-x) 40px; }

/* Controls */
.button { min-height:42px; padding:0 16px; border-radius:10px; border:1px solid var(--mc-border); background:var(--mc-surface); color:#19345A; font-weight:600; box-shadow:none; }
html[data-theme="dark"] .button { color:var(--mds-text-primary); }
.button:hover { transform:none; background:var(--mds-action-secondary-hover); border-color:var(--mds-border-strong); }
.button.primary { background:#0099FF; border-color:#0099FF; color:#fff; }
.button.primary:hover { background:#008BE8; border-color:#008BE8; }
.button.small { min-height:34px; padding:0 12px; border-radius:9px; font-size:12px; }
.button.ghost { background:transparent; border-color:transparent; }
.button.danger { color:var(--mds-danger); background:var(--mds-danger-subtle); border-color:color-mix(in srgb,var(--mds-danger) 22%,var(--mc-border)); }
input,textarea,select { min-height:42px; border-radius:10px; border-color:var(--mc-border); background:var(--mc-surface); color:var(--mc-text); }

/* Surfaces */
.card, .lesson-explorer, .group-explorer, .stats-explorer, .admin-table-wrap, .calendar-shell, .course-subject-block {
  background:var(--mc-surface); border:1px solid var(--mc-border); border-radius:14px; box-shadow:var(--mc-panel-shadow);
}
.card { padding:20px; }
.card h2,.card h3 { color:var(--mc-text); }
.card p,.muted,.sub { color:var(--mc-text-secondary) !important; }
.grid { gap:16px; }
.section { margin-top:20px; }
.section-header { margin-bottom:12px; }
.section-header h2 { font-size:18px; font-weight:700; color:var(--mc-text); }

.metric { min-height:104px; padding:18px; gap:5px; }
.metric-value { font-size:28px; font-weight:700; color:var(--mc-text); letter-spacing:-.5px; }
.metric-label { color:var(--mc-text-secondary); font-size:13px; }

.badge { min-height:26px; padding:0 9px; border:0; border-radius:999px; background:#F0F3F7; color:#65758B; font-weight:600; }
html[data-theme="dark"] .badge { background:var(--mds-surface-subtle); color:var(--mds-text-secondary); }
.badge.success,.badge.correct { color:#139A4A; background:#E7F8ED; border:0; }
.badge.warning,.badge.submitted { color:#D97706; background:#FFF4DE; border:0; }
.badge.danger,.badge.incorrect { color:#E5484D; background:#FFE8E8; border:0; }
.badge.info { color:#1677FF; background:#EAF4FF; border:0; }
html[data-theme="dark"] .badge.success,html[data-theme="dark"] .badge.correct{color:var(--mds-success);background:var(--mds-success-subtle)}
html[data-theme="dark"] .badge.warning,html[data-theme="dark"] .badge.submitted{color:var(--mds-warning);background:var(--mds-warning-subtle)}
html[data-theme="dark"] .badge.danger,html[data-theme="dark"] .badge.incorrect{color:var(--mds-danger);background:var(--mds-danger-subtle)}
html[data-theme="dark"] .badge.info{color:#69BFFF;background:var(--mds-action-primary-subtle)}

/* Canonical dashboard */
.mc-dashboard-hero { min-height:196px; position:relative; overflow:hidden; display:grid; grid-template-columns:minmax(0,1fr) 300px; align-items:center; gap:24px; padding:30px 28px; border:1px solid #DCE8F5; border-radius:16px; background:linear-gradient(110deg,#F9FCFF 0%,#EFF7FF 58%,#E8F3FF 100%); box-shadow:var(--mc-panel-shadow); }
html[data-theme="dark"] .mc-dashboard-hero { border-color:var(--mc-border); background:linear-gradient(110deg,var(--mds-surface-default),var(--mds-action-primary-subtle)); }
.mc-dashboard-hero::after { content:""; position:absolute; width:360px; height:360px; right:-2px; top:50%; transform:translateY(-50%); border:1px solid rgba(0,153,255,.10); border-radius:50%; box-shadow:0 0 0 60px rgba(0,153,255,.025),0 0 0 120px rgba(0,153,255,.02); }
.mc-dashboard-hero-copy { position:relative; z-index:2; }
.mc-dashboard-hero h2 { margin:0; font-size:34px; line-height:1.15; letter-spacing:-.8px; color:#102B5D; }
html[data-theme="dark"] .mc-dashboard-hero h2 { color:var(--mds-text-primary); }
.mc-dashboard-hero p { margin:10px 0 20px; color:#536987; font-size:14px; }
html[data-theme="dark"] .mc-dashboard-hero p { color:var(--mds-text-secondary); }
.mc-dashboard-hero-actions { display:flex; gap:10px; flex-wrap:wrap; }
.mc-dashboard-hero-mark { position:relative; z-index:2; display:grid; place-items:center; min-height:150px; }
.mc-dashboard-hero-mark img { width:154px; height:154px; filter:drop-shadow(0 18px 24px rgba(0,123,255,.20)); }
.mc-kpi-grid { margin-top:16px; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.mc-kpi { min-height:104px; display:grid; grid-template-columns:52px minmax(0,1fr); align-items:center; gap:14px; padding:16px; border:1px solid var(--mc-border); border-radius:14px; background:var(--mc-surface); box-shadow:var(--mc-panel-shadow); }
.mc-kpi-icon { width:48px; height:48px; border-radius:12px; display:grid; place-items:center; background:var(--mds-action-primary-subtle); color:var(--mds-action-primary); font-size:22px; font-weight:700; }
.mc-kpi strong { display:block; font-size:27px; line-height:1; color:var(--mc-text); }
.mc-kpi span { display:block; margin-top:6px; color:var(--mc-text-secondary); font-size:12px; }
.mc-dashboard-grid { margin-top:16px; display:grid; grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr); gap:16px; }
.mc-dashboard-panel { min-width:0; }
.mc-dashboard-panel .section-header { padding:18px 18px 0; margin-bottom:10px; }
.mc-dashboard-panel > .calendar-shell,.mc-dashboard-panel > .list,.mc-dashboard-panel > .grid { border:0; border-radius:0 0 14px 14px; box-shadow:none; }
.mc-quick-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; padding:0 18px 18px; }
.mc-quick-actions .button { justify-content:flex-start; }
.mc-active-groups { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; padding:0 18px 18px; }
.mc-group-mini { min-height:84px; padding:12px; border:1px solid var(--mc-border); border-radius:12px; background:var(--mc-surface-subtle); }
.mc-group-mini strong { display:block; color:var(--mds-action-primary); font-size:18px; }
.mc-group-mini span { display:block; margin-top:5px; color:var(--mc-text-secondary); font-size:11px; }

/* Tables / list rows */
.list { gap:0; border:1px solid var(--mc-border); border-radius:14px; overflow:hidden; background:var(--mc-surface); box-shadow:var(--mc-panel-shadow); }
.list-row { min-height:58px; padding:10px 14px; border:0; border-bottom:1px solid #EDF2F7; border-radius:0; background:var(--mc-surface); }
html[data-theme="dark"] .list-row { border-bottom-color:var(--mds-border-subtle); }
.list-row:last-child { border-bottom:0; }
.list-row:hover { background:#FBFDFF; }
html[data-theme="dark"] .list-row:hover { background:var(--mds-action-ghost-hover); }
.list-row strong { font-size:13px; color:var(--mc-text); }
.list-row .sub { font-size:11px; }

.lesson-explorer,.group-explorer { overflow:hidden; box-shadow:var(--mc-panel-shadow); }
.explorer-toolbar { min-height:58px; padding:10px 16px; border-bottom:1px solid var(--mc-border); }
.explorer-header { min-height:46px; padding:0 18px; align-items:center; background:var(--mc-surface-subtle); color:var(--mc-text-secondary); font-size:11px; text-transform:none; letter-spacing:0; font-weight:500; }
.explorer-row { min-height:62px; padding:8px 14px; border-bottom:1px solid #EDF2F7; }
html[data-theme="dark"] .explorer-row { border-bottom-color:var(--mds-border-subtle); }
.explorer-row:hover { background:#FBFDFF; }
html[data-theme="dark"] .explorer-row:hover { background:var(--mds-action-ghost-hover); }
.explorer-main { grid-template-columns:42px minmax(0,1fr); gap:10px; }
.explorer-icon { width:36px; height:36px; border-radius:10px; background:var(--mds-action-primary-subtle); color:var(--mds-action-primary); }
.explorer-icon svg { width:20px; height:20px; }
.icon-button { width:34px; height:34px; border-radius:9px; background:var(--mc-surface); border-color:var(--mc-border); color:var(--mc-text-secondary); }
.icon-button:hover { background:var(--mds-action-ghost-hover); color:var(--mc-text); }

.group-tree-node { border-bottom:1px solid var(--mc-border); }
.group-tree-row { min-height:60px; padding:8px 14px; }
.group-tree-row.subject { border-left:0; background:var(--mc-surface); }
.group-tree-row.group { padding-left:34px; background:var(--mc-surface-subtle); }
.group-tree-row.student { padding-left:68px; background:var(--mc-surface); }
.group-tree-row:hover { background:var(--mds-action-ghost-hover); }
.group-tree-icon { border-radius:10px; background:color-mix(in srgb,var(--tree-color,var(--mds-action-primary)) 10%,transparent); }

/* Calendar */
.calendar-shell { overflow:hidden; }
.calendar-toolbar { padding:14px 16px; border-bottom-color:var(--mc-border); }
.calendar-view-toggle { background:var(--mc-surface-subtle); border:1px solid var(--mc-border); border-radius:10px; padding:3px; }
.calendar-view-toggle button { border:0; background:transparent; }
.calendar-view-toggle button.active { background:var(--mc-surface); color:var(--mds-action-primary); box-shadow:var(--mds-shadow-sm); }
.calendar-day { background:var(--mc-surface); border-color:var(--mc-border); }
.calendar-event { border-radius:10px; box-shadow:none; }
.calendar-add-day { border-color:var(--mc-border); }

/* Modal + builder */
.modal-backdrop { background:rgba(15,31,61,.48); backdrop-filter:blur(3px); }
.modal { border-radius:20px; border-color:var(--mc-border); background:var(--mc-surface); box-shadow:var(--mc-modal-shadow); }
.modal-header { min-height:70px; padding:20px 24px; background:var(--mc-surface); border-bottom:1px solid var(--mc-border); }
.modal-header h2 { font-size:20px; font-weight:700; color:var(--mc-text); }
.modal-body { padding:24px; }
.modal-footer { padding:14px 24px 24px; border-top:0; }
.builder-task,.theory-editor,.course-template-note { border-radius:14px; border-color:var(--mc-border); background:var(--mc-surface); }
.builder-task-header { background:var(--mc-surface-subtle); border-bottom:1px solid var(--mc-border); }

/* Lesson / homework workspaces keep shared app geometry */
.lesson-layout { grid-template-columns:minmax(0,1fr) 300px; gap:16px; }
.task-card,.lesson-side .card { border-radius:14px; }
.progress-bar { height:6px; background:#EAF0F6; }
.progress-bar>span { background:var(--subject-accent,var(--mds-action-primary)); }
.seamless-writing-head { top:80px; border-radius:14px; background:color-mix(in srgb,var(--mc-surface) 94%,transparent); border-color:var(--mc-border); }

/* Auth */
.auth-view { background:var(--mc-canvas); }
.auth-card { border-radius:20px; border-color:var(--mc-border); background:var(--mc-surface); box-shadow:var(--mc-modal-shadow); }
.auth-brand h1 { color:var(--mc-text); }
.auth-brand p { color:var(--mc-text-secondary); }
.auth-brand .brand-mark { background:transparent; border:0; box-shadow:none; }

@media (max-width:1179px) {
  .app-shell { grid-template-columns:var(--mc-sidebar-collapsed) minmax(0,1fr); }
  .sidebar { width:var(--mc-sidebar-collapsed); padding-inline:8px; }
  .sidebar-brand { justify-content:center; padding-inline:0; }
  .brand-name,.nav-label,.sidebar-footer { display:none; }
  .nav-button { justify-content:center; padding:0; }
  .global-search-wrap { width:min(560px,65vw); }
  .mc-dashboard-grid { grid-template-columns:1fr; }
  .mc-kpi-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .grid.cols-4 { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:760px) {
  .app-shell { display:block; }
  .sidebar { display:none; }
  .topbar { height:64px; min-height:64px; padding:0 12px; }
  .global-search-wrap { width:100%; }
  .global-search-box { height:42px; }
  .global-search-box input { height:40px; }
  .topbar-user { display:none; }
  .theme-toggle { width:42px;height:42px; }
  .page-head { min-height:auto; padding:16px 16px 12px; flex-direction:column; }
  .page-head h1 { font-size:26px; }
  .page-content { padding:0 16px 28px; }
  .mc-dashboard-hero { grid-template-columns:1fr; padding:22px; }
  .mc-dashboard-hero-mark { display:none; }
  .mc-dashboard-hero h2 { font-size:28px; }
  .mc-kpi-grid,.grid.cols-2,.grid.cols-3,.grid.cols-4 { grid-template-columns:1fr; }
  .mc-quick-actions,.mc-active-groups { grid-template-columns:1fr; }
  .list-row { grid-template-columns:1fr; align-items:start; }
  .row-actions { justify-content:flex-start; }
  .lesson-layout { grid-template-columns:1fr; }
}

/* Alpha 20 — canonical groups and group entity pages */
.page-head.entity-page-head-hidden { display:none; }
.page-head.entity-page-head-hidden + .page-content { padding-top:0; }
.mc-groups-shell { display:grid; gap:16px; }
.mc-filter-toolbar { min-height:68px; display:flex; align-items:center; gap:12px; flex-wrap:wrap; padding:12px 16px; border-bottom:1px solid var(--mc-border); }
.mc-groups-filters { border:1px solid var(--mc-border); border-radius:14px; background:var(--mc-surface); box-shadow:var(--mc-panel-shadow); }
.mc-search-field { min-width:260px; flex:1; min-height:42px; display:flex; align-items:center; gap:9px; padding:0 12px; border:1px solid var(--mc-border); border-radius:10px; background:var(--mc-surface); }
.mc-search-field > span { width:18px; height:18px; flex:0 0 18px; background:var(--mc-text-secondary); -webkit-mask:url('/design/icons/search.svg') center/contain no-repeat; mask:url('/design/icons/search.svg') center/contain no-repeat; }
.mc-search-field input { min-height:40px; height:40px; padding:0; border:0; background:transparent; box-shadow:none !important; }
.mc-filter-toolbar > select { width:auto; min-width:170px; }
.mc-kpi-row { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.mc-stat-card { min-height:104px; display:grid; align-content:center; gap:6px; padding:17px 18px; border:1px solid var(--mc-border); border-radius:14px; background:var(--mc-surface); box-shadow:var(--mc-panel-shadow); text-align:left; color:var(--mc-text); }
button.mc-stat-card { cursor:pointer; }
button.mc-stat-card:hover { background:var(--mds-action-ghost-hover); }
.mc-stat-card > span { color:var(--mc-text-secondary); font-size:13px; }
.mc-stat-card > strong { font-size:28px; line-height:1; letter-spacing:-.5px; }
.mc-stat-card > small { color:var(--mds-action-primary); font-size:11px; }
.mc-group-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.mc-group-card { min-height:250px; display:grid; grid-template-rows:auto auto auto auto auto 1fr; gap:12px; padding:18px; border:1px solid var(--mc-border); border-radius:14px; background:var(--mc-surface); box-shadow:var(--mc-panel-shadow); }
.mc-group-card::before { content:""; display:block; height:3px; margin:-18px -18px 0; border-radius:14px 14px 0 0; background:var(--group-accent,var(--mds-action-primary)); opacity:.86; }
.mc-group-card-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.mc-group-card-head h2 { margin:0; color:var(--mds-action-primary); font-size:24px; line-height:1; }
.mc-group-card-head p { margin:6px 0 0; color:var(--mc-text); font-size:14px; }
.mc-group-card-meta { display:flex; gap:14px; color:var(--mc-text-secondary); font-size:12px; }
.mc-group-next,.mc-group-review { color:var(--mc-text-secondary); font-size:12px; }
.mc-group-progress { display:grid; gap:7px; }
.mc-group-progress > div:first-child { display:flex; justify-content:space-between; gap:12px; color:var(--mc-text-secondary); font-size:12px; }
.mc-group-progress strong { color:var(--mc-text); }
.mc-group-card-actions { align-self:end; display:grid; grid-template-columns:1fr 1fr; border-top:1px solid var(--mc-border); margin:2px -4px -5px; padding-top:10px; }
.mc-group-card-actions .button { justify-content:flex-start; color:var(--mds-action-primary); }

.mc-entity-page { margin:0 -24px; }
.mc-breadcrumbs { height:48px; display:flex; align-items:center; gap:8px; padding:0 40px; color:var(--mc-text-secondary); font-size:12px; }
.mc-breadcrumbs button { border:0; background:transparent; color:var(--mc-text-secondary); cursor:pointer; padding:0; }
.mc-breadcrumbs button:hover { color:var(--mds-action-primary); }
.mc-entity-header { min-height:92px; display:flex; align-items:center; justify-content:space-between; gap:24px; padding:0 40px 18px; }
.mc-entity-heading { min-width:0; display:flex; align-items:center; gap:14px; }
.mc-entity-avatar { width:54px; height:54px; flex:0 0 54px; display:grid; place-items:center; border-radius:50%; background:var(--entity-accent,var(--mds-action-primary)); color:#fff; font-size:18px; font-weight:700; }
.mc-entity-title-row { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.mc-entity-title-row h1 { margin:0; color:var(--mc-text); font-size:28px; line-height:1.15; letter-spacing:-.45px; }
.mc-entity-heading p { margin:7px 0 0; color:var(--mc-text-secondary); font-size:13px; }
.mc-entity-actions { display:flex; align-items:center; justify-content:flex-end; gap:10px; flex-wrap:wrap; }
.mc-entity-tabs { min-height:50px; display:flex; align-items:flex-end; gap:28px; overflow:auto; padding:0 40px; border-bottom:1px solid var(--mc-border); background:var(--mc-canvas); }
.mc-entity-tab { height:50px; flex:0 0 auto; position:relative; border:0; background:transparent; color:#5D6C84; padding:0; cursor:pointer; font-size:13px; }
html[data-theme="dark"] .mc-entity-tab { color:var(--mds-text-secondary); }
.mc-entity-tab.active { color:var(--mds-action-primary); font-weight:600; }
.mc-entity-tab.active::after { content:""; position:absolute; left:0; right:0; bottom:-1px; height:2px; border-radius:2px; background:var(--mds-action-primary); }
.mc-entity-content { padding:18px 40px 40px; }
.mc-entity-split { display:grid; grid-template-columns:minmax(0,1fr) 280px; gap:16px; }
.mc-panel,.mc-right-rail,.mc-settings-card { min-width:0; border:1px solid var(--mc-border); border-radius:14px; background:var(--mc-surface); box-shadow:var(--mc-panel-shadow); overflow:hidden; }
.mc-panel-head { min-height:58px; display:flex; align-items:center; justify-content:space-between; gap:14px; padding:14px 16px; border-bottom:1px solid var(--mc-border); }
.mc-panel-head h2,.mc-panel-head h3 { margin:0; font-size:16px; color:var(--mc-text); }
.mc-panel-head p { margin:4px 0 0; color:var(--mc-text-secondary); font-size:12px; }
.mc-right-rail { align-self:start; background:transparent; border:0; box-shadow:none; display:grid; gap:16px; overflow:visible; }
.mc-rail-card { border:1px solid var(--mc-border); border-radius:14px; background:var(--mc-surface); box-shadow:var(--mc-panel-shadow); padding:16px; }
.mc-rail-card h3 { margin:0 0 12px; font-size:15px; }
.mc-rail-metric { min-height:58px; display:flex; align-items:center; justify-content:space-between; gap:14px; border-bottom:1px solid var(--mc-border); }
.mc-rail-metric:last-child { border-bottom:0; }
.mc-rail-metric span { color:var(--mc-text-secondary); font-size:12px; }
.mc-rail-metric strong { font-size:20px; color:var(--mc-text); }
.mc-rail-metric.warning strong { color:var(--mds-warning); }
.mc-table-wrap { overflow:auto; }
.mc-table { width:100%; border-collapse:collapse; font-size:12px; }
.mc-table th { height:46px; padding:0 14px; text-align:left; color:#708099; font-weight:500; border-bottom:1px solid var(--mc-border); white-space:nowrap; }
html[data-theme="dark"] .mc-table th { color:var(--mds-text-secondary); }
.mc-table td { height:60px; padding:8px 14px; border-bottom:1px solid #EDF2F7; vertical-align:middle; color:var(--mc-text); }
html[data-theme="dark"] .mc-table td { border-bottom-color:var(--mds-border-subtle); }
.mc-table tbody tr:last-child td { border-bottom:0; }
.mc-table tbody tr:hover td { background:#FBFDFF; }
html[data-theme="dark"] .mc-table tbody tr:hover td { background:var(--mds-action-ghost-hover); }
.mc-table td > strong,.mc-table td > small { display:block; }
.mc-table td > small { margin-top:3px; color:var(--mc-text-secondary); }
.mc-student-cell,.mc-lesson-cell { display:flex; align-items:center; gap:10px; min-width:180px; }
.mc-student-cell > span:last-child,.mc-lesson-cell > span:last-child { display:grid; gap:3px; }
.mc-student-cell small,.mc-lesson-cell small { color:var(--mc-text-secondary); font-size:10px; }
.mc-student-avatar { width:34px; height:34px; flex:0 0 34px; display:grid; place-items:center; border-radius:50%; background:var(--mds-action-primary-subtle); color:var(--mds-action-primary); font-size:10px; font-weight:700; }
.mc-lesson-icon,.mc-preview-icon { width:36px; height:36px; flex:0 0 36px; display:grid; place-items:center; border-radius:10px; background:var(--mds-action-primary-subtle); color:var(--mds-action-primary); }
.mc-lesson-icon svg,.mc-preview-icon svg { width:19px; height:19px; }
.mc-status { min-height:26px; display:inline-flex; align-items:center; width:max-content; padding:0 9px; border-radius:999px; font-size:11px; font-weight:600; }
.mc-status.success { color:#139A4A; background:#E7F8ED; }
.mc-status.warning { color:#D97706; background:#FFF4DE; }
.mc-status.danger { color:#E5484D; background:#FFE8E8; }
.mc-status.info { color:#1677FF; background:#EAF4FF; }
.mc-status.neutral { color:#65758B; background:#F0F3F7; }
html[data-theme="dark"] .mc-status.success{color:var(--mds-success);background:var(--mds-success-subtle)}
html[data-theme="dark"] .mc-status.warning{color:var(--mds-warning);background:var(--mds-warning-subtle)}
html[data-theme="dark"] .mc-status.danger{color:var(--mds-danger);background:var(--mds-danger-subtle)}
html[data-theme="dark"] .mc-status.info{color:#69BFFF;background:var(--mds-action-primary-subtle)}
html[data-theme="dark"] .mc-status.neutral{color:var(--mds-text-secondary);background:var(--mds-surface-subtle)}
.mc-progress { height:6px; overflow:hidden; border-radius:999px; background:#EAF0F6; }
html[data-theme="dark"] .mc-progress { background:var(--mds-surface-subtle); }
.mc-progress i { display:block; height:100%; border-radius:inherit; background:#20B966; }
.mc-progress.large { height:9px; }
.mc-progress-cell { min-width:130px; display:grid; grid-template-columns:34px minmax(70px,1fr); align-items:center; gap:8px; }
.mc-progress-cell > span { color:var(--mc-text-secondary); font-size:11px; }
.mc-section-actions { min-height:58px; display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:12px; }
.mc-section-actions h2 { margin:0; font-size:18px; }
.mc-section-actions p { margin:5px 0 0; color:var(--mc-text-secondary); font-size:12px; }
.mc-overview-grid { margin-top:16px; display:grid; grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr); gap:16px; }
.mc-overview-main,.mc-overview-rail { display:grid; gap:16px; align-content:start; }
.mc-student-preview-list { padding:0 16px 10px; }
.mc-student-preview { min-height:50px; display:grid; grid-template-columns:34px minmax(120px,1fr) 38px minmax(70px,120px) auto; align-items:center; gap:10px; border-bottom:1px solid var(--mc-border); }
.mc-student-preview:last-child { border-bottom:0; }
.mc-student-preview strong { font-size:12px; }
.mc-student-preview > span:nth-child(3) { color:var(--mc-text-secondary); font-size:11px; }
.mc-progress-summary { padding:26px; display:grid; grid-template-columns:auto minmax(0,1fr); align-items:center; gap:12px 18px; }
.mc-progress-summary > strong { font-size:36px; color:var(--mds-action-primary); }
.mc-progress-summary > span { grid-column:2; color:var(--mc-text-secondary); font-size:12px; }
.mc-upcoming-row { min-height:72px; display:grid; grid-template-columns:46px minmax(0,1fr) auto; align-items:center; gap:10px; padding:9px 16px; border-bottom:1px solid var(--mc-border); }
.mc-upcoming-row:last-child { border-bottom:0; }
.mc-upcoming-row > span:nth-child(2) { display:grid; gap:2px; }
.mc-upcoming-row > span:nth-child(2) strong { font-size:12px; }
.mc-upcoming-row > span:nth-child(2) small { color:var(--mc-text-secondary); font-size:10px; }
.mc-date-tile { width:44px; height:48px; display:grid; place-items:center; align-content:center; border-radius:10px; background:var(--mds-action-primary-subtle); color:var(--mc-text); }
.mc-date-tile strong { font-size:16px; line-height:1; }
.mc-date-tile small { margin-top:3px; color:var(--mc-text-secondary); font-size:9px; text-transform:uppercase; }
.mc-homework-preview { min-height:64px; display:grid; grid-template-columns:36px minmax(0,1fr) auto; align-items:center; gap:10px; padding:8px 16px; border-bottom:1px solid var(--mc-border); }
.mc-homework-preview:last-child { border-bottom:0; }
.mc-homework-preview > span:nth-child(2) { display:grid; gap:3px; }
.mc-homework-preview strong { font-size:12px; }
.mc-homework-preview small { color:var(--mc-text-secondary); font-size:10px; }
.mc-settings-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.mc-settings-card { padding-bottom:16px; }
.mc-settings-list { margin:0; padding:0 16px; }
.mc-settings-list > div { min-height:52px; display:grid; grid-template-columns:150px minmax(0,1fr); align-items:center; gap:12px; border-bottom:1px solid var(--mc-border); }
.mc-settings-list > div:last-child { border-bottom:0; }
.mc-settings-list dt { color:var(--mc-text-secondary); font-size:12px; }
.mc-settings-list dd { margin:0; color:var(--mc-text); font-size:12px; font-weight:600; }
.mc-invite-code { margin:16px; padding:16px; border:1px dashed var(--mds-action-primary); border-radius:12px; background:var(--mds-action-primary-subtle); color:var(--mds-action-primary); text-align:center; font-size:26px; font-weight:800; letter-spacing:.15em; }
.mc-empty-feature { min-height:280px; display:grid; place-items:center; align-content:center; gap:10px; padding:36px; text-align:center; }
.mc-empty-feature-icon { width:58px; height:58px; display:grid; place-items:center; border-radius:16px; background:var(--mds-action-primary-subtle); color:var(--mds-action-primary); }
.mc-empty-feature-icon svg { width:28px; height:28px; }
.mc-empty-feature h3 { margin:0; }
.mc-empty-feature p { max-width:620px; margin:0; color:var(--mc-text-secondary); line-height:1.6; }

@media (max-width:1300px) {
  .mc-group-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .mc-entity-split { grid-template-columns:1fr; }
  .mc-right-rail { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:1179px) {
  .mc-entity-page { margin:0 -24px; }
  .mc-entity-header,.mc-breadcrumbs,.mc-entity-tabs { padding-left:24px; padding-right:24px; }
  .mc-entity-content { padding-left:24px; padding-right:24px; }
  .mc-overview-grid { grid-template-columns:1fr; }
}
@media (max-width:760px) {
  .mc-group-grid,.mc-kpi-row,.mc-settings-grid,.mc-right-rail { grid-template-columns:1fr; }
  .mc-entity-page { margin:0 -16px; }
  .mc-breadcrumbs,.mc-entity-header,.mc-entity-tabs { padding-left:16px; padding-right:16px; }
  .mc-entity-content { padding:14px 16px 28px; }
  .mc-entity-header { align-items:flex-start; flex-direction:column; }
  .mc-entity-heading { align-items:flex-start; }
  .mc-entity-title-row h1 { font-size:23px; }
  .mc-entity-actions { width:100%; justify-content:flex-start; }
  .mc-entity-tabs { gap:22px; }
  .mc-student-preview { grid-template-columns:34px minmax(100px,1fr) 36px; }
  .mc-student-preview .mc-progress,.mc-student-preview .mc-status { display:none; }
  .mc-filter-toolbar > select,.mc-search-field { width:100%; min-width:0; }
}

/* Alpha 20 — student registry */
.mc-student-kpis { margin-bottom:16px; }
.mc-students-layout { align-items:start; }
.mc-chip { min-height:24px; display:inline-flex; align-items:center; padding:0 8px; border-radius:7px; background:var(--mds-action-primary-subtle); color:var(--mds-action-primary); font-size:10px; font-weight:600; white-space:nowrap; }
.mc-students-table td:nth-child(2) { min-width:120px; }
.mc-students-table td:nth-child(3) { min-width:150px; }
.mc-attention-card { padding-bottom:8px; }
.mc-attention-card h3 { margin-bottom:8px; }
.mc-attention-row { width:100%; min-height:58px; display:grid; grid-template-columns:34px minmax(0,1fr) auto; align-items:center; gap:9px; padding:8px 0; border:0; border-bottom:1px solid var(--mc-border); background:transparent; color:var(--mc-text); text-align:left; cursor:pointer; }
.mc-attention-row:last-child { border-bottom:0; }
.mc-attention-row:hover { background:var(--mds-action-ghost-hover); }
.mc-attention-row > span:nth-child(2) { display:grid; gap:3px; }
.mc-attention-row strong { font-size:11px; }
.mc-attention-row small { color:var(--mc-text-secondary); font-size:9px; }

/* Alpha 21 — student profile + lesson library/entity screens */
.mc-student-link { display:flex; align-items:center; gap:10px; min-width:180px; padding:0; border:0; background:transparent; color:var(--mc-text); text-align:left; cursor:pointer; }
.mc-student-link:hover strong { color:var(--mds-action-primary); }
.mc-student-link > span:last-child { display:grid; gap:3px; }
.mc-student-link small { color:var(--mc-text-secondary); font-size:10px; }

.mc-student-profile-header { min-height:126px; display:flex; align-items:center; justify-content:space-between; gap:24px; margin:0 40px 8px; padding:18px 20px; border:1px solid var(--mc-border); border-radius:14px; background:var(--mc-surface); box-shadow:var(--mc-panel-shadow); }
.mc-student-profile-main { min-width:0; display:flex; align-items:center; gap:18px; }
.mc-profile-avatar { width:72px; height:72px; flex:0 0 72px; display:grid; place-items:center; border-radius:50%; background:linear-gradient(145deg,var(--entity-accent,var(--mds-action-primary)),#7F00FF); color:#fff; font-size:22px; font-weight:800; box-shadow:0 0 0 5px var(--mds-action-primary-subtle); }
.mc-profile-identity { min-width:0; display:grid; gap:12px; }
.mc-profile-meta { display:flex; align-items:center; gap:0; flex-wrap:wrap; }
.mc-profile-meta > span { min-width:145px; display:grid; gap:3px; padding:0 20px; border-left:1px solid var(--mc-border); }
.mc-profile-meta > span:first-child { padding-left:0; border-left:0; }
.mc-profile-meta small { color:var(--mc-text-secondary); font-size:10px; }
.mc-profile-meta strong { color:var(--mc-text); font-size:12px; font-weight:600; }
.mc-profile-kpis .mc-stat-card { position:relative; min-height:116px; }
.mc-profile-kpis .mc-stat-card .mc-progress { margin-top:5px; }
.mc-profile-overview-grid { margin-top:16px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.mc-profile-list-row,.mc-activity-row { min-height:64px; display:grid; grid-template-columns:42px minmax(0,1fr) auto; align-items:center; gap:11px; padding:9px 16px; border-bottom:1px solid var(--mc-border); }
.mc-profile-list-row:last-child,.mc-activity-row:last-child { border-bottom:0; }
.mc-profile-list-row > span:nth-child(2),.mc-activity-row > span:nth-child(2) { display:grid; gap:3px; }
.mc-profile-list-row strong,.mc-activity-row strong { font-size:12px; }
.mc-profile-list-row small,.mc-activity-row small { color:var(--mc-text-secondary); font-size:10px; }
.mc-score-pill { min-width:34px; height:34px; display:grid; place-items:center; border:1px solid #BCE8CA; border-radius:50%; background:#F0FFF5; color:#159947; font-size:11px; font-weight:700; }
html[data-theme="dark"] .mc-score-pill { border-color:color-mix(in srgb,var(--mds-success) 40%,var(--mc-border)); background:var(--mds-success-subtle); color:var(--mds-success); }
.mc-subject-progress-list { padding:8px 16px 14px; }
.mc-subject-progress-list > div { min-height:64px; display:grid; grid-template-columns:minmax(130px,1fr) 44px minmax(90px,180px); align-items:center; gap:12px; border-bottom:1px solid var(--mc-border); }
.mc-subject-progress-list > div:last-child { border-bottom:0; }
.mc-subject-progress-list > div > span:first-child { display:grid; gap:2px; }
.mc-subject-progress-list strong { font-size:12px; }
.mc-subject-progress-list small { color:var(--mc-text-secondary); font-size:10px; }
.mc-subject-progress-list > div > span:nth-child(2) { color:var(--mc-text-secondary); font-size:11px; }
.mc-profile-performance { margin-top:16px; }

.mc-lesson-library-head { min-height:46px; display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:12px; padding:0 4px; }
.mc-lesson-library-head .breadcrumbs { display:flex; align-items:center; gap:8px; color:var(--mc-text-secondary); font-size:12px; }
.mc-lesson-library-head .breadcrumbs button { border:0; background:transparent; color:var(--mds-action-primary); cursor:pointer; padding:0; }
.mc-folder-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-bottom:16px; }
.mc-folder-card { min-height:78px; display:grid; grid-template-columns:38px minmax(0,1fr); grid-template-rows:auto auto; align-items:center; column-gap:10px; padding:12px; border:1px solid var(--mc-border); border-radius:12px; background:var(--mc-surface); color:var(--mc-text); text-align:left; cursor:pointer; box-shadow:var(--mc-panel-shadow); }
.mc-folder-card:hover { border-color:color-mix(in srgb,var(--mds-action-primary) 40%,var(--mc-border)); background:var(--mds-action-primary-subtle); }
.mc-folder-card > span { grid-row:1 / 3; width:38px; height:38px; display:grid; place-items:center; border-radius:10px; background:var(--mds-action-primary-subtle); color:var(--mds-action-primary); }
.mc-folder-card > span svg { width:20px; height:20px; }
.mc-folder-card strong { font-size:12px; }
.mc-folder-card small { color:var(--mc-text-secondary); font-size:10px; }
.mc-lessons-layout { align-items:start; }
.mc-lessons-table .mc-lesson-icon { font-size:11px; font-weight:800; }
.mc-lesson-hero-icon { width:58px; height:58px; flex:0 0 58px; display:grid; place-items:center; border-radius:50%; background:var(--entity-accent,var(--mds-action-primary)); color:#fff; font-size:19px; font-weight:800; box-shadow:0 0 0 5px var(--mds-action-primary-subtle); }
.mc-lesson-overview-grid { display:grid; grid-template-columns:240px minmax(0,1fr) 280px; gap:16px; align-items:start; }
.mc-lesson-overview-grid > .mc-panel:nth-child(2):last-child { grid-column:2 / 4; }
.mc-lesson-structure { align-self:start; }
.mc-structure-list { padding:8px; display:grid; gap:4px; }
.mc-structure-item { width:100%; min-height:56px; display:grid; grid-template-columns:32px minmax(0,1fr); grid-template-rows:auto auto; align-items:center; column-gap:10px; padding:7px 9px; border:1px solid transparent; border-radius:10px; background:transparent; color:var(--mc-text); text-align:left; cursor:pointer; }
.mc-structure-item:hover,.mc-structure-item.active { border-color:#BEDCFF; background:var(--mds-action-primary-subtle); }
.mc-structure-item > span { grid-row:1 / 3; width:30px; height:30px; display:grid; place-items:center; border:1px solid var(--mc-border); border-radius:8px; color:var(--mds-action-primary); background:var(--mc-surface); font-size:11px; font-weight:700; }
.mc-structure-item strong { overflow:hidden; white-space:nowrap; text-overflow:ellipsis; font-size:11px; }
.mc-structure-item small { color:var(--mc-text-secondary); font-size:9px; }
.mc-lesson-preview-content { padding:24px; color:var(--mc-text); line-height:1.65; }
.mc-lesson-preview-content > hr { margin:24px 0; border:0; border-top:1px solid var(--mc-border); }
.mc-lesson-preview-content h3 { margin:18px 0 8px; font-size:14px; }
.mc-block-number { width:30px; height:30px; display:inline-grid; place-items:center; border-radius:8px; background:var(--mds-action-primary); color:#fff; font-size:12px; font-weight:700; }
.mc-preview-statement { margin-top:18px; font-size:16px; }
.mc-material-chips { display:flex; gap:8px; flex-wrap:wrap; margin-top:10px; }
.mc-lesson-block-list { padding:10px 16px; }
.mc-lesson-block { min-height:100px; display:grid; grid-template-columns:34px minmax(0,1fr); gap:14px; padding:18px 0; border-bottom:1px solid var(--mc-border); }
.mc-lesson-block:last-child { border-bottom:0; }
.mc-lesson-block > div { display:grid; gap:6px; }
.mc-lesson-block small { color:var(--mc-text-secondary); font-size:10px; }
.mc-preview-modal { display:grid; gap:14px; }
.mc-preview-task { display:grid; grid-template-columns:32px minmax(0,1fr); gap:12px; padding:16px; border:1px solid var(--mc-border); border-radius:12px; background:var(--mc-surface-subtle); }
.mc-preview-task > div { display:grid; gap:8px; }

/* Existing lesson constructor styled as an MDS editor workspace */
.mc-lesson-editor-modal { width:min(1180px,96vw) !important; max-width:1180px !important; max-height:94vh; }
.mc-lesson-editor-modal .modal-body { background:var(--mc-canvas); }
.mc-lesson-editor-modal #lessonForm { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.mc-lesson-editor-modal #lessonForm > label.full,.mc-lesson-editor-modal #lessonForm > div.full { grid-column:1 / -1; }
.mc-lesson-editor-modal #lessonBuilder { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.mc-lesson-editor-modal #lessonBuilder .builder-add-panel { grid-column:1 / -1; }
.mc-lesson-editor-modal .builder-task { margin:0; border:1px solid var(--mc-border); border-radius:12px; overflow:hidden; background:var(--mc-surface); box-shadow:none; }
.mc-lesson-editor-modal .builder-task-header { min-height:48px; padding:9px 12px; }
.mc-lesson-editor-modal .builder-task-body { padding:14px; }
.mc-lesson-editor-modal .modal-footer { background:var(--mc-surface); border-top:1px solid var(--mc-border); }

@media (max-width:1300px) {
  .mc-lesson-overview-grid { grid-template-columns:210px minmax(0,1fr); }
  .mc-lesson-overview-grid > .mc-right-rail { grid-column:1 / -1; grid-template-columns:repeat(3,minmax(0,1fr)); }
  .mc-folder-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:980px) {
  .mc-student-profile-header { margin-inline:24px; align-items:flex-start; flex-direction:column; }
  .mc-profile-overview-grid,.mc-lesson-overview-grid { grid-template-columns:1fr; }
  .mc-lesson-overview-grid > .mc-panel:nth-child(2):last-child { grid-column:auto; }
  .mc-lesson-overview-grid > .mc-right-rail { grid-column:auto; grid-template-columns:1fr; }
  .mc-folder-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .mc-lesson-editor-modal #lessonBuilder { grid-template-columns:1fr; }
}
@media (max-width:760px) {
  .mc-student-profile-header { margin-inline:16px; padding:16px; }
  .mc-student-profile-main { align-items:flex-start; }
  .mc-profile-avatar { width:56px; height:56px; flex-basis:56px; font-size:17px; }
  .mc-profile-meta > span { min-width:120px; padding:0 10px; }
  .mc-profile-overview-grid { grid-template-columns:1fr; }
  .mc-folder-grid { grid-template-columns:1fr; }
  .mc-subject-progress-list > div { grid-template-columns:minmax(100px,1fr) 38px; }
  .mc-subject-progress-list .mc-progress { grid-column:1 / -1; }
  .mc-lesson-editor-modal #lessonForm { grid-template-columns:1fr; }
  .mc-lesson-editor-modal #lessonForm > label.full,.mc-lesson-editor-modal #lessonForm > div.full { grid-column:auto; }
}

/* Alpha 21 — canonical student create/edit modal using current data model */
.mc-student-editor-modal { width:min(820px,94vw) !important; max-width:820px !important; }
.mc-student-editor-form { display:grid; gap:16px; }
.mc-student-editor-section { border:1px solid var(--mc-border); border-radius:14px; background:var(--mc-surface); overflow:hidden; }
.mc-student-editor-section > h3 { margin:0; padding:16px 18px 0; font-size:15px; }
.mc-student-editor-section > .form-grid { padding:16px 18px 18px; }
.mc-student-group-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; padding:14px 16px 18px; }
.mc-student-group-choice { min-height:56px; display:grid; grid-template-columns:18px minmax(0,1fr); align-items:center; gap:10px; padding:9px 11px; border:1px solid var(--mc-border); border-radius:10px; background:var(--mc-surface-subtle); cursor:pointer; }
.mc-student-group-choice:has(input:checked) { border-color:#A9D2FF; background:var(--mds-action-primary-subtle); }
.mc-student-group-choice input { min-height:0; }
.mc-student-group-choice > span { display:grid; gap:3px; }
.mc-student-group-choice strong { font-size:12px; }
.mc-student-group-choice small { color:var(--mc-text-secondary); font-size:10px; }
@media(max-width:760px){.mc-student-group-grid{grid-template-columns:1fr}}

/* Alpha 24 — Homework workspace (MDS 1.5.0 refs 27–32) */
.mc-homework-page { display:grid; gap:16px; }
.mc-homework-status-tabs { min-height:50px; display:flex; align-items:flex-end; gap:30px; overflow:auto; margin-top:-12px; border-bottom:1px solid var(--mc-border); }
.mc-homework-status-tabs button { height:50px; position:relative; display:flex; align-items:center; gap:7px; flex:0 0 auto; padding:0 5px; border:0; background:transparent; color:var(--mc-text-secondary); cursor:pointer; font-size:12px; }
.mc-homework-status-tabs button span { min-width:22px; height:22px; display:grid; place-items:center; padding:0 6px; border-radius:999px; background:var(--mc-surface-subtle); color:var(--mc-text-secondary); font-size:10px; }
.mc-homework-status-tabs button.active { color:var(--mds-action-primary); font-weight:700; }
.mc-homework-status-tabs button.active::after { content:""; position:absolute; left:0; right:0; bottom:-1px; height:2px; border-radius:2px; background:var(--mds-action-primary); }
.mc-homework-status-tabs button.active span { background:var(--mds-action-primary-subtle); color:var(--mds-action-primary); }
.mc-homework-layout,.mc-homework-review-layout { align-items:start; }
.mc-homework-toolbar { min-height:64px; display:flex; align-items:center; gap:10px; padding:10px 14px; border-bottom:1px solid var(--mc-border); }
.mc-homework-toolbar select { width:auto; min-width:128px; min-height:40px; padding-block:8px; }
.mc-search-field { min-width:210px; flex:1; position:relative; display:block; }
.mc-search-field > span { position:absolute; left:12px; top:50%; z-index:1; transform:translateY(-50%); color:var(--mc-text-secondary); font-size:18px; }
.mc-search-field input { min-height:40px; padding-left:36px; }
.mc-homework-table td { min-width:90px; }
.mc-homework-table td:first-child { min-width:220px; }
.mc-homework-table td:nth-child(4) small,.mc-homework-table td:nth-child(6) small { display:block; margin-top:3px; color:var(--mc-text-secondary); font-size:10px; }
.mc-homework-table .mc-lesson-icon { font-weight:800; font-size:12px; }
.mc-row-actions { display:flex; align-items:center; justify-content:flex-end; gap:6px; }
.mc-quick-actions { display:grid; gap:8px; margin-top:14px; }
.mc-quick-actions .button { width:100%; min-height:42px; justify-content:flex-start; }
.mc-quick-actions .button.primary { justify-content:center; }
.mc-action-count { margin-left:auto; min-width:23px; height:23px; display:grid; place-items:center; padding:0 6px; border-radius:999px; background:var(--mds-action-primary-subtle); color:var(--mds-action-primary); font-size:10px; }
.mc-link-button { width:100%; margin-top:10px; padding:12px 0 0; border:0; border-top:1px solid var(--mc-border); background:transparent; color:var(--mds-action-primary); text-align:left; cursor:pointer; font-weight:650; }
.mc-rail-metric.danger strong { color:var(--mds-danger); }
.mc-rail-metric.warning strong { color:var(--mds-warning); }
.mc-homework-library { display:grid; gap:12px; }
.mc-homework-library > .button.small { justify-self:start; }
.mc-homework-detail .mc-entity-content { padding-top:18px; }
.mc-homework-mini-tabs { min-height:48px; display:flex; align-items:center; gap:8px; padding:8px 14px; overflow:auto; border-bottom:1px solid var(--mc-border); }
.mc-homework-mini-tabs span { min-height:30px; display:inline-flex; align-items:center; padding:0 11px; border-radius:8px; background:var(--mc-surface-subtle); color:var(--mc-text-secondary); font-size:10px; white-space:nowrap; }
.mc-homework-mini-tabs span.active { background:var(--mds-action-primary-subtle); color:var(--mds-action-primary); font-weight:700; }
.mc-avatar { width:34px; height:34px; flex:0 0 34px; display:grid; place-items:center; border-radius:50%; background:linear-gradient(145deg,var(--mds-action-primary-subtle),var(--mc-surface-subtle)); color:var(--mds-action-primary); font-size:10px; font-weight:800; border:1px solid var(--mc-border); }
.mc-progress-cell { min-width:140px; display:grid; grid-template-columns:minmax(76px,1fr) 38px; align-items:center; gap:4px 8px; }
.mc-progress-cell .mc-progress { grid-column:1; }
.mc-progress-cell strong { grid-column:2; grid-row:1; font-size:11px; text-align:right; }
.mc-progress-cell small { grid-column:1 / -1; color:var(--mc-text-secondary); font-size:9px; }
.mc-progress > span { display:block; height:100%; border-radius:inherit; background:var(--mds-action-primary); }
.mc-homework-review-layout .mc-panel { min-height:420px; }
.mc-homework-review-layout td:nth-child(2) small { display:block; margin-top:3px; color:var(--mc-text-secondary); font-size:9px; }
.mc-homework-preview-head { display:grid; grid-template-columns:minmax(0,auto) minmax(180px,420px) auto; align-items:center; gap:18px; margin-bottom:16px; }
.mc-homework-preview-head > div:first-child { display:flex; align-items:center; gap:12px; min-width:0; }
.mc-homework-preview-head h1 { margin:0; font-size:26px; letter-spacing:-.4px; }
.mc-homework-preview-head > small { color:var(--mc-text-secondary); white-space:nowrap; }
.mc-homework-student-grid { display:grid; grid-template-columns:230px minmax(0,1fr) 270px; gap:16px; align-items:start; }
.mc-homework-preview-task { min-height:520px; }
.mc-homework-preview-task .mc-lesson-preview-content { min-height:450px; display:flex; flex-direction:column; gap:18px; }
.mc-preview-actions { margin-top:auto; display:grid; grid-template-columns:1fr 1.3fr; gap:10px; }
.mc-homework-student-live { margin-top:-12px; }
.mc-homework-student-live .mc-entity-content { padding-top:18px; }
.mc-homework-task-sidebar { position:sticky; top:88px; max-height:calc(100vh - 120px); overflow:auto; }
.mc-homework-student-main { min-width:0; display:grid; gap:14px; }
.mc-homework-student-main > .card,.mc-homework-student-main .task-card,.mc-homework-student-main .lesson-material { margin:0; border:1px solid var(--mc-border); border-radius:14px; background:var(--mc-surface); box-shadow:var(--mc-panel-shadow); }
.mc-homework-student-main .task-card { padding:22px; }
.mc-homework-student-main .task-card h2 { margin-top:8px; }
.mc-homework-student-main .task-statement { padding:18px 0; font-size:15px; line-height:1.7; }
.mc-homework-student-main #taskAnswerForm { display:grid; gap:14px; }
.mc-homework-student-main #taskAnswerForm > textarea { min-height:150px; }
.mc-homework-student-main .seamless-writing { border-radius:14px; overflow:hidden; }
.mc-progress-circle { width:74px; height:74px; margin:12px auto; display:grid; place-items:center; border-radius:50%; background:conic-gradient(var(--mds-action-primary) calc(var(--progress) * 1%), var(--mc-surface-subtle) 0); position:relative; }
.mc-progress-circle::after { content:""; position:absolute; inset:8px; border-radius:50%; background:var(--mc-surface); }
.mc-progress-circle strong { position:relative; z-index:1; font-size:14px; }
.mc-homework-editor-modal { width:min(1240px,97vw) !important; max-width:1240px !important; max-height:95vh; }
.mc-homework-editor-modal .modal-body { background:var(--mc-canvas); }
.mc-homework-editor-modal #homeworkForm { display:grid; grid-template-columns:1.5fr 1fr 1fr; gap:12px; padding:4px; }
.mc-homework-editor-modal #homeworkForm > .full { grid-column:1 / -1; }
.mc-editor-note { min-height:56px; display:flex; align-items:center; justify-content:space-between; gap:16px; padding:12px 14px; border:1px solid var(--mc-border); border-radius:12px; background:var(--mc-surface); }
.mc-editor-note > span { color:var(--mc-text-secondary); font-size:10px; text-align:right; }
.mc-homework-editor-section-head { margin:16px 4px 10px; display:flex; align-items:center; justify-content:space-between; }
.mc-homework-editor-section-head > div { display:grid; gap:3px; }
.mc-homework-editor-section-head strong { font-size:15px; }
.mc-homework-editor-section-head span { color:var(--mc-text-secondary); font-size:10px; }
.mc-homework-editor-modal #lessonBuilder { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.mc-homework-editor-modal #lessonBuilder .builder-add-panel { grid-column:1 / -1; }
.mc-homework-editor-modal .builder-task { margin:0; border:1px solid var(--mc-border); border-radius:12px; overflow:hidden; background:var(--mc-surface); box-shadow:none; }
.mc-homework-editor-modal .builder-task-header { min-height:48px; padding:9px 12px; }
.mc-homework-editor-modal .builder-task-body { padding:14px; }
.mc-homework-editor-modal .modal-footer { border-top:1px solid var(--mc-border); background:var(--mc-surface); }
.mc-homework-assign-modal { width:min(640px,94vw) !important; max-width:640px !important; }
.mc-assign-homework-summary { display:grid; grid-template-columns:40px minmax(0,1fr); align-items:center; gap:12px; margin-bottom:18px; padding:12px; border:1px solid var(--mc-border); border-radius:12px; background:var(--mc-surface-subtle); }
.mc-assign-homework-summary > span:last-child { display:grid; gap:3px; }
.mc-assign-homework-summary small,.mc-toggle-stack small { color:var(--mc-text-secondary); font-size:10px; }
.mc-toggle-stack { display:grid; gap:5px; padding:12px; border:1px solid var(--mc-border); border-radius:12px; background:var(--mc-surface-subtle); }
.mc-homework-delete-modal { width:min(520px,92vw) !important; max-width:520px !important; }
.mc-delete-homework { display:grid; justify-items:center; gap:8px; padding:10px 6px 18px; text-align:center; }
.mc-delete-homework p { margin:0; }
.mc-danger-icon { width:48px; height:48px; display:grid; place-items:center; border-radius:14px; background:var(--mds-danger-subtle); color:var(--mds-danger); font-size:24px; font-weight:800; }
.mc-homework-delete-modal #modalSave.danger { background:var(--mds-danger); border-color:var(--mds-danger); color:#fff; }

@media(max-width:1250px){
  .mc-homework-student-grid{grid-template-columns:210px minmax(0,1fr)}
  .mc-homework-student-grid>.mc-right-rail{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr))}
  .mc-homework-preview-head{grid-template-columns:minmax(0,1fr) minmax(180px,320px)}
  .mc-homework-preview-head>small{grid-column:2}
}
@media(max-width:980px){
  .mc-homework-toolbar{flex-wrap:wrap}
  .mc-homework-toolbar .mc-search-field{flex-basis:100%}
  .mc-homework-student-grid{grid-template-columns:1fr}
  .mc-homework-task-sidebar{position:static;max-height:none}
  .mc-homework-student-grid>.mc-right-rail{grid-column:auto;grid-template-columns:1fr}
  .mc-homework-editor-modal #lessonBuilder{grid-template-columns:1fr}
}
@media(max-width:760px){
  .mc-homework-status-tabs{gap:20px}
  .mc-homework-preview-head{grid-template-columns:1fr}
  .mc-homework-preview-head>small{grid-column:auto}
  .mc-homework-editor-modal #homeworkForm{grid-template-columns:1fr}
  .mc-homework-editor-modal #homeworkForm>.full{grid-column:auto}
  .mc-editor-note{align-items:flex-start;flex-direction:column}
  .mc-editor-note>span{text-align:left}
}
.mc-homework-work-modal,.mc-homework-review-modal { width:min(980px,95vw) !important; max-width:980px !important; }
.mc-homework-review-modal .theory-view { display:grid; gap:12px; }
.mc-homework-review-modal .theory-view > .card { margin:0; border:1px solid var(--mc-border); border-radius:12px; box-shadow:none; }
.mc-homework-review-modal .homework-review-actions { display:grid; gap:10px; margin-top:14px; }


/* Alpha 22 — folder actions retained inside the MDS homework library */
.mc-homework-folder-card {
    position: relative;
    display: block;
    padding: 0;
    overflow: hidden;
}

.mc-homework-folder-main {
    width: 100%;
    min-height: 78px;
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr);
    align-items: center;
    gap: 12px;
    padding: 14px 78px 14px 14px;
    border: 0;
    background: transparent;
    color: inherit;
    text-align: left;
    cursor: pointer;
}

.mc-homework-folder-copy {
    display: grid;
    gap: 4px;
    min-width: 0;
}

.mc-homework-folder-copy strong,
.mc-homework-folder-copy small {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.mc-homework-folder-copy small { color: var(--mc-text-muted); }

.mc-homework-folder-actions {
    position: absolute;
    top: 50%;
    right: 10px;
    display: flex;
    gap: 4px;
    transform: translateY(-50%);
}

/* Martynov-Class Alpha 23 — занятия */
.mc-classes-head { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:18px; }
.mc-classes-tabs { display:flex; align-items:center; gap:28px; border-bottom:1px solid var(--mds-border-subtle); margin:0 -34px 20px; padding:0 34px; }
.mc-classes-tab { border:0; background:transparent; color:var(--mds-text-secondary); min-height:46px; padding:0 2px; cursor:pointer; font-weight:600; border-bottom:2px solid transparent; }
.mc-classes-tab.active { color:var(--mds-action-primary); border-bottom-color:var(--mds-action-primary); }
.mc-classes-toolbar { display:flex; flex-wrap:wrap; gap:12px; align-items:center; margin-bottom:16px; }
.mc-classes-toolbar select { width:auto; min-width:170px; }
.mc-class-date-nav { display:inline-flex; align-items:center; gap:8px; }
.mc-class-date-nav .button { min-width:40px; padding-inline:10px; }
.mc-class-date-label { min-width:165px; text-align:center; font-weight:650; }
.mc-class-layout { display:grid; grid-template-columns:minmax(0,1fr) 310px; gap:20px; }
.mc-class-calendar { border:1px solid var(--mds-border-subtle); border-radius:var(--mds-radius-lg); background:var(--mds-surface-default); overflow:hidden; }
.mc-class-week-head { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); border-bottom:1px solid var(--mds-border-subtle); background:var(--mds-surface-subtle); }
.mc-class-week-head > div { padding:13px 10px; text-align:center; border-right:1px solid var(--mds-border-subtle); color:var(--mds-text-secondary); font-size:12px; }
.mc-class-week-head > div:last-child { border-right:0; }
.mc-class-week-head strong { display:block; color:var(--mds-text-primary); font-size:13px; margin-bottom:3px; }
.mc-class-week-head .today strong { color:var(--mds-action-primary); }
.mc-class-week-grid { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); min-height:560px; }
.mc-class-day { min-width:0; padding:12px 9px; border-right:1px solid var(--mds-border-subtle); background:linear-gradient(to bottom,var(--mds-surface-default),color-mix(in srgb,var(--mds-surface-subtle) 30%,var(--mds-surface-default))); }
.mc-class-day:last-child { border-right:0; }
.mc-class-day-events { display:grid; gap:10px; }
.mc-class-event { --class-accent:var(--mds-action-primary); width:100%; text-align:left; border:1px solid color-mix(in srgb,var(--class-accent) 25%,var(--mds-border-subtle)); border-radius:var(--mds-radius-md); padding:10px; background:color-mix(in srgb,var(--class-accent) 7%,var(--mds-surface-default)); cursor:pointer; display:grid; gap:5px; color:var(--mds-text-primary); }
.mc-class-event:hover { border-color:color-mix(in srgb,var(--class-accent) 55%,var(--mds-border-default)); box-shadow:var(--mds-shadow-sm); }
.mc-class-event-time { color:color-mix(in srgb,var(--class-accent) 72%,var(--mds-text-primary)); font-size:12px; font-weight:750; }
.mc-class-event strong { font-size:13px; line-height:1.35; }
.mc-class-event small { color:var(--mds-text-secondary); line-height:1.3; }
.mc-class-event-status { display:inline-flex; width:max-content; max-width:100%; padding:4px 7px; border-radius:7px; background:var(--mds-action-primary-subtle); color:var(--mds-action-primary); font-size:11px; font-weight:700; }
.mc-class-event-status.completed { background:var(--mds-success-subtle); color:var(--mds-success); }
.mc-class-event-status.active { background:color-mix(in srgb,var(--mds-success) 12%,var(--mds-surface-default)); color:var(--mds-success); }
.mc-class-event-status.missed,.mc-class-event-status.cancelled { background:var(--mds-warning-subtle); color:color-mix(in srgb,var(--mds-warning) 74%,var(--mds-text-primary)); }
.mc-class-empty-day { min-height:80px; border:1px dashed transparent; border-radius:var(--mds-radius-md); }
.mc-class-rail { display:grid; align-content:start; gap:14px; }
.mc-class-rail-card { border:1px solid var(--mds-border-subtle); border-radius:var(--mds-radius-lg); padding:16px; background:var(--mds-surface-default); display:grid; gap:12px; }
.mc-class-rail-card h3 { margin:0; font-size:15px; }
.mc-class-rail-number { font-size:30px; font-weight:800; color:var(--mds-action-primary); }
.mc-class-rail-row { display:flex; align-items:center; justify-content:space-between; gap:10px; font-size:13px; }
.mc-class-rail-row span { color:var(--mds-text-secondary); }
.mc-class-next { display:grid; gap:6px; padding:11px; border:1px solid var(--mds-border-subtle); border-radius:var(--mds-radius-md); background:var(--mds-surface-subtle); }
.mc-class-next-time { font-size:21px; font-weight:800; color:var(--mds-action-primary); }
.mc-class-list { display:grid; gap:10px; }
.mc-class-list-row { display:grid; grid-template-columns:100px minmax(210px,1.6fr) minmax(130px,.8fr) 120px 120px auto; gap:12px; align-items:center; padding:13px 14px; border:1px solid var(--mds-border-subtle); border-radius:var(--mds-radius-md); background:var(--mds-surface-default); }
.mc-class-list-row:hover { border-color:var(--mds-border-strong); }
.mc-class-list-main { min-width:0; display:grid; gap:3px; }
.mc-class-list-main small { color:var(--mds-text-secondary); }
.mc-class-overview-head { margin:-6px 0 0; }
.mc-class-breadcrumbs { display:flex; flex-wrap:wrap; align-items:center; gap:8px; color:var(--mds-text-secondary); font-size:13px; margin-bottom:12px; }
.mc-class-breadcrumbs button { border:0; background:none; color:inherit; padding:0; cursor:pointer; }
.mc-class-meta { display:flex; flex-wrap:wrap; gap:16px; color:var(--mds-text-secondary); font-size:13px; margin-top:8px; }
.mc-class-overview-tabs { display:flex; gap:26px; border-bottom:1px solid var(--mds-border-subtle); margin:18px -34px 16px; padding:0 34px; }
.mc-class-overview-tab { border:0; background:transparent; color:var(--mds-text-secondary); padding:13px 0 11px; border-bottom:2px solid transparent; cursor:pointer; font-weight:600; }
.mc-class-overview-tab.active { color:var(--mds-action-primary); border-bottom-color:var(--mds-action-primary); }
.mc-class-overview-grid { display:grid; grid-template-columns:minmax(0,1fr) 330px; gap:20px; }
.mc-class-stack { display:grid; gap:14px; align-content:start; }
.mc-class-card { border:1px solid var(--mds-border-subtle); border-radius:var(--mds-radius-lg); padding:17px; background:var(--mds-surface-default); }
.mc-class-card h2,.mc-class-card h3 { margin:0; }
.mc-class-card-head { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:14px; }
.mc-class-plan { display:grid; gap:10px; }
.mc-class-plan-row { display:grid; grid-template-columns:32px minmax(0,1fr) auto; gap:12px; align-items:start; }
.mc-class-plan-number { width:28px; height:28px; border-radius:9px; display:grid; place-items:center; background:var(--mds-action-primary-subtle); color:var(--mds-action-primary); font-size:12px; font-weight:800; }
.mc-class-plan-row small { display:block; color:var(--mds-text-secondary); margin-top:3px; }
.mc-class-info-list { display:grid; gap:10px; }
.mc-class-info-line { display:grid; grid-template-columns:110px minmax(0,1fr); gap:12px; font-size:13px; }
.mc-class-info-line span:first-child { color:var(--mds-text-secondary); }
.mc-class-entity-link { display:grid; grid-template-columns:42px minmax(0,1fr) auto; gap:12px; align-items:center; }
.mc-class-entity-icon { width:40px; height:40px; border-radius:11px; display:grid; place-items:center; background:var(--mds-action-primary-subtle); color:var(--mds-action-primary); font-weight:800; }
.mc-attendance-table { width:100%; border-collapse:collapse; }
.mc-attendance-table th,.mc-attendance-table td { padding:11px 10px; border-bottom:1px solid var(--mds-border-subtle); text-align:left; }
.mc-attendance-table th { color:var(--mds-text-secondary); font-size:12px; font-weight:650; }
.mc-attendance-student { display:flex; align-items:center; gap:10px; }
.mc-attendance-avatar { width:34px; height:34px; border-radius:50%; display:grid; place-items:center; background:var(--mds-action-primary-subtle); color:var(--mds-action-primary); font-size:11px; font-weight:800; }
.mc-attendance-status { display:inline-flex; align-items:center; gap:6px; padding:5px 8px; border-radius:8px; background:var(--mds-surface-subtle); color:var(--mds-text-secondary); font-size:12px; font-weight:650; }
.mc-attendance-status.Present { background:var(--mds-success-subtle); color:var(--mds-success); }
.mc-attendance-status.Late { background:var(--mds-warning-subtle); color:color-mix(in srgb,var(--mds-warning) 72%,var(--mds-text-primary)); }
.mc-attendance-status.Absent { background:var(--mds-danger-subtle); color:var(--mds-danger); }
.mc-attendance-status.Excused { background:var(--mds-action-primary-subtle); color:var(--mds-action-primary); }
.mc-class-editor-layout { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:20px; }
.mc-class-editor-main { border:1px solid var(--mds-border-subtle); border-radius:var(--mds-radius-lg); background:var(--mds-surface-default); padding:18px; }
.mc-class-editor-main .form-grid { gap:18px; }
.mc-class-editor-side { display:grid; align-content:start; gap:14px; }
.mc-class-editor-note { border:1px solid var(--mds-border-subtle); border-radius:var(--mds-radius-lg); padding:15px; background:var(--mds-surface-default); }
.mc-class-editor-note h3 { margin:0 0 10px; font-size:14px; }
.mc-class-editor-actions { display:flex; flex-wrap:wrap; gap:10px; }
.mc-attendance-modal-list { display:grid; gap:8px; }
.mc-attendance-modal-row { display:grid; grid-template-columns:minmax(0,1fr) 190px; gap:12px; align-items:center; padding:8px 0; border-bottom:1px solid var(--mds-border-subtle); }
.mc-attendance-modal-row:last-child { border-bottom:0; }
.mc-attendance-modal-row select { min-height:38px; }
.mc-live-monitor-head { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-bottom:12px; }
.lesson-layout { grid-template-columns:minmax(0,1fr) 340px; }
.student-live-row { border-radius:var(--mds-radius-md); border:1px solid transparent; }
.student-live-row.active { background:var(--mds-action-primary-subtle); border-color:color-mix(in srgb,var(--mds-action-primary) 28%,var(--mds-border-subtle)); }
@media (max-width:1100px) { .mc-class-layout,.mc-class-overview-grid,.mc-class-editor-layout { grid-template-columns:1fr; } .mc-class-rail { grid-template-columns:repeat(2,minmax(0,1fr)); } .mc-class-list-row { grid-template-columns:90px minmax(180px,1fr) 110px auto; } .mc-class-list-row > :nth-child(3),.mc-class-list-row > :nth-child(5){display:none;} }
@media (max-width:760px) { .mc-class-week-grid,.mc-class-week-head { grid-template-columns:1fr; } .mc-class-week-head { display:none; } .mc-class-day { border-right:0; border-bottom:1px solid var(--mds-border-subtle); } .mc-class-day::before { content:attr(data-day-label); display:block; color:var(--mds-text-secondary); font-size:12px; font-weight:700; margin-bottom:8px; } .mc-class-rail { grid-template-columns:1fr; } .mc-class-list-row { grid-template-columns:1fr; } .mc-class-list-row > * { display:block !important; } .mc-attendance-modal-row { grid-template-columns:1fr; } .mc-classes-tabs,.mc-class-overview-tabs { overflow:auto; } }

/* Alpha 25 — user-provided brand, shared week schedule, video lessons and task images */
.sidebar-brand .brand-mark.small,
.auth-brand .brand-mark { background:transparent!important; border:0!important; box-shadow:none!important; overflow:visible; }
.sidebar-brand .brand-mark.small img { width:46px!important; height:46px!important; object-fit:contain; filter:drop-shadow(0 5px 10px rgba(0,112,255,.12)); }
.auth-brand .brand-mark img { width:74px!important; height:74px!important; object-fit:contain; }
.mc-dashboard-hero-mark img { width:188px; height:188px; object-fit:contain; transform:translateX(-6%); filter:drop-shadow(0 22px 28px rgba(0,112,255,.22)); }
.mc-kpi-icon { overflow:hidden; }
.mc-kpi-icon img { width:36px; height:36px; object-fit:contain; display:block; }
.mc-kpi:nth-child(1) .mc-kpi-icon img,.mc-kpi:nth-child(4) .mc-kpi-icon img { transform:translateY(4px); }
.mc-dashboard-week-calendar { margin:0 18px 18px; }
.mc-dashboard-week-calendar .mc-class-week-grid { min-height:310px; }
.mc-dashboard-week-calendar .mc-class-day { padding:9px 7px; }
.mc-dashboard-week-calendar .mc-class-event { padding:8px; gap:4px; }
.mc-dashboard-week-calendar .mc-class-event-status { display:none; }
.mc-class-event.video-lesson { background:linear-gradient(145deg,color-mix(in srgb,var(--class-accent) 8%,var(--mds-surface-default)),color-mix(in srgb,var(--mds-action-primary) 6%,var(--mds-surface-default))); }
.mc-class-event.video-lesson .mc-class-event-time::before { content:"▶ "; }
.mc-class-event-status.available { background:var(--mds-action-primary-subtle); color:var(--mds-action-primary); }
.mc-task-statement-image { display:block; width:max-content; max-width:100%; margin:14px 0 18px; border:1px solid var(--mds-border-subtle); border-radius:var(--mds-radius-lg); overflow:hidden; background:var(--mds-surface-subtle); box-shadow:var(--mds-shadow-sm); }
.mc-task-statement-image img { display:block; max-width:min(100%,760px); max-height:460px; width:auto; height:auto; object-fit:contain; }
.mc-video-lesson-overview { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:18px; }
.mc-video-lesson-list { display:grid; gap:18px; }
.mc-video-player-card { overflow:hidden; border:1px solid var(--mds-border-subtle); border-radius:var(--mds-radius-lg); background:var(--mds-surface-default); box-shadow:var(--mds-shadow-sm); }
.mc-video-player-head { min-height:48px; padding:10px 14px; display:flex; align-items:center; justify-content:space-between; gap:16px; border-bottom:1px solid var(--mds-border-subtle); }
.mc-video-player-head strong { color:var(--mds-text-primary); }
.mc-video-player-head a { color:var(--mds-action-primary); font-size:12px; text-decoration:none; }
.mc-video-player { display:block; width:100%; aspect-ratio:16/9; border:0; background:#07111f; }
video.mc-video-player { object-fit:contain; }
.mc-history-class-row { cursor:pointer; }
.mc-history-class-row > .icon-button { justify-self:end; }
@media (max-width:1180px) {
  .mc-video-lesson-overview { grid-template-columns:1fr; }
  .mc-dashboard-week-calendar { overflow-x:auto; }
  .mc-dashboard-week-calendar .mc-class-week-head,.mc-dashboard-week-calendar .mc-class-week-grid { min-width:920px; }
}
.mc-kpi-icon { width:64px; height:64px; border-radius:14px; background:linear-gradient(145deg,var(--mds-surface-default),var(--mds-action-primary-subtle)); }
.mc-kpi { grid-template-columns:70px minmax(0,1fr); }
.mc-kpi-icon .mc-kpi-art { width:58px; height:58px; object-fit:contain; filter:drop-shadow(0 5px 8px rgba(0,91,204,.12)); }
.mc-kpi-icon .mc-kpi-art.dark { display:none; }
html[data-theme="dark"] .mc-kpi-icon .mc-kpi-art.light { display:none; }
html[data-theme="dark"] .mc-kpi-icon .mc-kpi-art.dark { display:block; }


/* Alpha 26 */
.mc-lesson-icon svg,.mc-preview-icon svg,.mc-folder-card > span svg {
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
html[data-theme="dark"] .mc-lesson-icon,
html[data-theme="dark"] .mc-preview-icon,
html[data-theme="dark"] .mc-folder-card > span,
html[data-theme="dark"] .mc-icon {
  color:var(--mds-text-primary);
}
.mc-video-lesson-page .mc-video-stage {
  display:grid;
  justify-items:center;
}
.mc-video-lesson-page .mc-video-stage .theory-links {
  width:min(50%,760px);
  min-width:520px;
}
.mc-video-lesson-page .mc-video-player-card { width:100%; }
.mc-video-lesson-columns {
  display:grid;
  grid-template-columns:minmax(0,1fr) 300px;
  gap:20px;
  align-items:start;
}
.mc-video-lesson-columns > main { display:grid; gap:20px; }
.mc-video-comment-form { display:grid; gap:10px; margin-bottom:14px; }
.mc-video-comment-form textarea { resize:vertical; }
.mc-video-comment-form .button { justify-self:end; }
.mc-video-comments { display:grid; gap:10px; }
.mc-video-comment {
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  gap:10px;
  padding:12px;
  border:1px solid var(--mc-border);
  border-radius:12px;
  background:var(--mc-surface);
}
.mc-comment-avatar {
  width:38px;height:38px;border-radius:50%;
  display:grid;place-items:center;
  background:var(--mds-action-primary-subtle);
  color:var(--mds-action-primary);font-weight:800;
}
.mc-comment-head { display:flex; flex-wrap:wrap; align-items:baseline; gap:8px; }
.mc-comment-head span { color:var(--mc-text-secondary); font-size:12px; }
.mc-video-comment p { margin:5px 0 0; line-height:1.5; }
.mc-class-month-grid {
  display:grid;
  grid-template-columns:repeat(7,minmax(0,1fr));
  border-left:1px solid var(--mc-border);
  border-top:1px solid var(--mc-border);
}
.mc-class-month-day {
  min-height:132px;
  padding:8px;
  border-right:1px solid var(--mc-border);
  border-bottom:1px solid var(--mc-border);
  background:var(--mc-surface);
}
.mc-class-month-day.other { background:var(--mc-surface-muted); opacity:.66; }
.mc-class-month-day.today { box-shadow:inset 0 0 0 2px var(--mds-action-primary); }
.mc-class-month-date { display:block; margin-bottom:6px; font-weight:800; font-size:12px; }
.mc-class-month-day .mc-class-event { padding:7px; margin-bottom:6px; }
.mc-class-month-day .mc-class-event small,
.mc-class-month-day .mc-class-event-status { display:none; }
.mc-student-stats-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.mc-student-stat-section { margin-top:16px; }
@media (max-width:1100px) {
  .mc-video-lesson-page .mc-video-stage .theory-links { width:min(70%,760px); min-width:0; }
  .mc-video-lesson-columns { grid-template-columns:1fr; }
  .mc-student-stats-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:760px) {
  .mc-video-lesson-page .mc-video-stage .theory-links { width:100%; }
  .mc-class-month-grid { grid-template-columns:1fr; }
  .mc-class-month-day { min-height:0; }
  .mc-student-stats-grid { grid-template-columns:1fr; }
}

/* Alpha 27 — стабильный месяц, предметные акценты и просмотр проверки */
.mc-class-month-grid { grid-template-columns:repeat(7,minmax(0,1fr)); width:100%; min-width:0; }
.mc-class-month-day { min-width:0; overflow:hidden; }
.mc-class-month-day .mc-class-event { min-width:0; }
.mc-class-month-day .mc-class-event small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:10px; }
.mc-class-month-day .mc-class-event-status { display:none; }
.subject-accent-scope .mc-lesson-icon,
.subject-accent-scope .mc-preview-icon { color:var(--subject-accent,var(--mds-action-primary)); background:color-mix(in srgb,var(--subject-accent,var(--mds-action-primary)) 12%,var(--mds-surface-default)); }
.subject-accent-scope .mc-progress > i,
.subject-accent-scope .mc-progress > span { background:var(--subject-accent,var(--mds-action-primary)) !important; }
.subject-accent-scope .mc-subject-value { color:var(--subject-accent,var(--mds-action-primary)); }
html[data-theme="dark"] .explorer-icon { color:var(--mds-text-primary); }


/* Alpha 27 student workspace refinement */
.mc-student-home-hero { min-height:150px; display:flex; align-items:center; justify-content:space-between; gap:24px; margin-bottom:16px; padding:26px 30px; overflow:hidden; border:1px solid var(--mds-border-subtle); border-radius:var(--mds-radius-xl); background:linear-gradient(120deg,color-mix(in srgb,var(--mds-action-primary) 7%,var(--mds-surface-default)),color-mix(in srgb,var(--mds-action-primary) 14%,var(--mds-surface-default))); box-shadow:var(--mc-panel-shadow); }
.mc-student-home-hero h1 { margin:0 0 8px; font-size:30px; line-height:1.1; }
.mc-student-home-hero p { margin:0; color:var(--mds-text-secondary); }
.mc-student-home-hero img { width:150px; max-height:116px; object-fit:contain; filter:drop-shadow(0 14px 22px rgba(0,115,255,.20)); }
.mc-student-home-primary { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr); gap:16px; margin-bottom:16px; }
.mc-student-home-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin-bottom:16px; }
.mc-student-home-list { display:grid; }
.mc-student-home-row,.mc-student-result-row,.mc-student-past-row { width:100%; min-width:0; display:grid; grid-template-columns:38px minmax(0,1fr) auto; gap:10px; align-items:center; padding:11px 0; border:0; border-bottom:1px solid var(--mds-border-subtle); background:transparent; color:var(--mds-text-primary); text-align:left; cursor:pointer; }
.mc-student-home-row:last-child,.mc-student-result-row:last-child,.mc-student-past-row:last-child { border-bottom:0; }
.mc-student-home-row > span:nth-child(2),.mc-student-result-row > span:nth-child(2),.mc-student-past-row > span:nth-child(2) { min-width:0; display:grid; gap:3px; }
.mc-student-home-row strong,.mc-student-result-row strong,.mc-student-past-row strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.mc-student-home-row small,.mc-student-result-row small,.mc-student-past-row small { color:var(--mds-text-secondary); }
.mc-student-row-date { max-width:92px; color:var(--mds-text-secondary); font-size:11px; text-align:right; }
.mc-student-row-date.danger { color:var(--mds-danger); }
.mc-student-progress-row { min-width:0; display:grid; grid-template-columns:38px minmax(0,1fr) auto; gap:10px; align-items:center; padding:11px 0; border-bottom:1px solid var(--mds-border-subtle); }
.mc-student-progress-row:last-child { border-bottom:0; }
.mc-student-progress-row > span:nth-child(2) { min-width:0; display:grid; gap:7px; }
.mc-student-next-class { display:grid; grid-template-columns:112px minmax(0,1fr) auto; gap:18px; align-items:center; padding:8px 0 4px; }
.mc-student-next-time { min-height:86px; display:grid; align-content:center; justify-items:center; border-radius:var(--mds-radius-lg); background:color-mix(in srgb,var(--subject-accent,#0099FF) 9%,var(--mds-surface-subtle)); color:var(--subject-accent,#0099FF); }
.mc-student-next-time small { font-size:11px; }
.mc-student-next-time strong { font-size:27px; }
.mc-student-next-copy h3,.mc-student-video-continue h3 { margin:0 0 5px; }
.mc-student-next-copy p,.mc-student-video-continue p { margin:0 0 6px; color:var(--mds-text-secondary); }
.mc-student-video-continue { min-height:94px; display:grid; grid-template-columns:48px minmax(0,1fr) auto; gap:13px; align-items:center; }
.mc-student-video-continue .mc-progress { margin-top:10px; }
.mc-subject-button { border-color:color-mix(in srgb,var(--subject-accent,#0099FF) 38%,var(--mds-border-default)) !important; }
.subject-accent-scope .mc-subject-button.primary,.subject-accent-scope .mc-subject-button { color:var(--subject-accent); }
.subject-accent-scope .mc-subject-button.primary { background:var(--subject-accent) !important; border-color:var(--subject-accent) !important; color:#fff !important; }
.mc-student-home-week { margin-bottom:16px; }
.mc-student-join form { display:grid; grid-template-columns:auto minmax(180px,300px) auto; justify-content:start; }
.mc-student-sessions-layout { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:16px; align-items:start; }
.mc-student-session-hero { min-height:142px; display:grid; grid-template-columns:100px 50px minmax(0,1fr) auto; gap:16px; align-items:center; margin-bottom:16px; padding:18px; border:1px solid color-mix(in srgb,var(--subject-accent,#0099FF) 28%,var(--mds-border-subtle)); border-radius:var(--mds-radius-lg); background:color-mix(in srgb,var(--subject-accent,#0099FF) 5%,var(--mds-surface-default)); }
.mc-student-session-hero > div:first-child { display:grid; gap:4px; }
.mc-student-session-hero > div:first-child > strong { color:var(--subject-accent); font-size:27px; }
.mc-student-session-hero h2 { margin:0 0 4px; font-size:18px; }
.mc-student-session-hero p { margin:0 0 4px; color:var(--mds-text-secondary); }
.mc-student-upcoming-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.mc-student-upcoming-card { min-width:0; display:grid; grid-template-columns:56px 38px minmax(0,1fr) auto; gap:10px; align-items:center; padding:12px; border:1px solid var(--mds-border-subtle); border-radius:var(--mds-radius-md); background:var(--mds-surface-default); color:var(--mds-text-primary); text-align:left; cursor:pointer; }
.mc-student-upcoming-card:hover { border-color:color-mix(in srgb,var(--subject-accent,#0099FF) 55%,var(--mds-border-default)); background:color-mix(in srgb,var(--subject-accent,#0099FF) 4%,var(--mds-surface-default)); }
.mc-student-upcoming-card > span:nth-child(3) { min-width:0; display:grid; gap:3px; }
.mc-student-upcoming-card > span:nth-child(3) > strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.mc-student-upcoming-card small { color:var(--mds-text-secondary); }
.mc-student-upcoming-date { display:grid; gap:2px; justify-items:center; color:var(--subject-accent); }
.mc-student-upcoming-date strong { font-size:20px; }
.mc-student-past-list { display:grid; }
.mc-student-past-row { grid-template-columns:38px minmax(0,1fr) auto auto; }
.mc-rail-big { display:block; margin:8px 0 3px; font-size:30px; }
.empty-state.compact { min-height:74px; padding:18px; }
@media(max-width:1180px){.mc-student-home-grid{grid-template-columns:1fr 1fr}.mc-student-home-grid>section:last-child{grid-column:1/-1}.mc-student-sessions-layout{grid-template-columns:1fr}.mc-student-sessions-layout>.mc-right-rail{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.mc-student-upcoming-grid{grid-template-columns:1fr}}
@media(max-width:820px){.mc-student-home-primary,.mc-student-home-grid{grid-template-columns:1fr}.mc-student-home-grid>section:last-child{grid-column:auto}.mc-student-next-class,.mc-student-session-hero{grid-template-columns:1fr}.mc-student-next-time{width:112px}.mc-student-home-hero img{width:100px}.mc-student-sessions-layout>.mc-right-rail{grid-template-columns:1fr}.mc-student-join form{grid-template-columns:1fr}}


.subject-accent-scope .mc-lesson-hero-icon { color:var(--subject-accent); background:color-mix(in srgb,var(--subject-accent) 12%,var(--mds-surface-default)); }

.mc-builder-image-preview,.mc-builder-image-placeholder{display:grid;grid-template-columns:120px minmax(0,1fr);gap:12px;align-items:center;padding:12px;border:1px solid var(--mds-border-subtle);border-radius:var(--mds-radius-md);background:var(--mds-surface-subtle)}
.mc-builder-image-preview img{width:120px;height:84px;object-fit:cover;border-radius:12px;border:1px solid var(--mds-border-subtle);background:#fff}
.mc-builder-image-placeholder span{display:grid;place-items:center;width:120px;height:84px;border-radius:12px;background:var(--mds-surface-default);border:1px dashed var(--mds-border-default);color:var(--mds-text-secondary)}
.mc-inline-reviewed-photos .mc-inline-reviewed-page{grid-template-columns:minmax(0,1fr) 320px}
.mc-inline-photo-stage{position:relative;border-radius:18px;overflow:hidden;border:1px solid var(--mds-border-subtle);background:#fff;min-height:280px}
.mc-inline-photo-stage img{display:block;width:100%;height:auto;max-height:720px;object-fit:contain;background:#fff}
.mc-homework-page-v2{display:grid;gap:16px}
.mc-student-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.mc-summary-card{display:grid;gap:4px;padding:18px 20px;border:1px solid var(--mds-border-subtle);border-radius:var(--mds-radius-lg);background:var(--mds-surface-default)}
.mc-summary-card span{font-size:34px;line-height:1;font-weight:800;color:var(--mds-action-primary)}
.mc-summary-card strong{font-size:16px}
.mc-summary-card small{color:var(--mds-text-secondary)}
.mc-summary-card.success span{color:var(--mds-success)}
.mc-summary-card.danger span{color:var(--mds-danger)}
.mc-student-homework-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:16px;align-items:start}
.mc-student-homework-feed,.mc-student-homework-side{display:grid;gap:16px}
.mc-student-homework-card-list{display:grid;gap:14px}
.mc-student-homework-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:18px 20px;border:1px solid color-mix(in srgb,var(--subject-accent,#0099FF) 22%,var(--mds-border-subtle));border-radius:var(--mds-radius-xl);background:var(--mds-surface-default)}
.mc-student-homework-card-left{display:grid;grid-template-columns:76px minmax(0,1fr);gap:14px;align-items:center;min-width:0}
.mc-student-homework-icon{display:grid;place-items:center;width:76px;height:76px;border-radius:22px;background:color-mix(in srgb,var(--subject-accent,#0099FF) 10%,var(--mds-surface-default));font-size:28px;color:var(--subject-accent)}
.mc-student-homework-card-left h3{margin:6px 0 6px;font-size:26px;line-height:1.15}
.mc-student-homework-card-left p{margin:0;color:var(--mds-text-secondary)}
.mc-student-homework-meta{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.mc-student-homework-card-right{display:grid;gap:12px;justify-items:end;min-width:240px}
.mc-student-homework-deadline{display:grid;gap:4px;justify-items:end;text-align:right}
.mc-student-homework-deadline span{font-size:13px;color:var(--mds-text-secondary)}
.mc-student-homework-progress{display:grid;gap:6px;min-width:220px}
.mc-student-homework-progress small{color:var(--mds-text-secondary);text-align:right}
.mc-rail-card{display:grid;gap:14px;padding:18px;border:1px solid var(--mds-border-subtle);border-radius:var(--mds-radius-lg);background:var(--mds-surface-default)}
.mc-homework-side-deadline{display:grid;grid-template-columns:48px minmax(0,1fr);gap:12px;align-items:start}
.mc-homework-side-deadline p{margin:6px 0 0;color:var(--mds-text-secondary)}
.mc-answer-photo-preview-root{display:grid;gap:10px;margin-top:8px}
.mc-photo-preview-placeholder{padding:14px;border:1px dashed var(--mds-border-default);border-radius:14px;color:var(--mds-text-secondary);background:var(--mds-surface-subtle)}
.mc-local-photo-preview{display:grid;grid-template-columns:120px minmax(0,1fr);gap:12px;align-items:center;padding:10px 12px;border:1px solid var(--mds-border-subtle);border-radius:14px;background:var(--mds-surface-default)}
.mc-local-photo-preview img{width:120px;height:90px;object-fit:cover;border-radius:12px;border:1px solid var(--mds-border-subtle)}
.mc-reference-inline-image{display:block;margin-top:12px;max-width:420px}
.mc-reference-inline-image img{display:block;max-width:100%;border-radius:16px;border:1px solid var(--mds-border-subtle)}
@media(max-width:1180px){.mc-student-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mc-student-homework-layout,.mc-inline-reviewed-photos .mc-inline-reviewed-page{grid-template-columns:1fr}.mc-student-homework-card{grid-template-columns:1fr}.mc-student-homework-card-right{justify-items:start;min-width:0}.mc-student-homework-deadline,.mc-student-homework-progress small{text-align:left;justify-items:start}}
@media(max-width:820px){.mc-student-summary-grid{grid-template-columns:1fr}.mc-student-homework-card-left{grid-template-columns:58px minmax(0,1fr)}.mc-student-homework-icon{width:58px;height:58px;border-radius:18px}.mc-student-homework-card-left h3{font-size:21px}}

/* Alpha 30: полноширинные изображения и полноэкранный просмотр */
.mc-task-statement-image.mc-fullwidth-inline-image{display:block;width:100%;max-width:none;margin:14px 0 18px;padding:0;border:1px solid var(--mds-border-subtle);border-radius:18px;overflow:hidden;background:var(--mds-surface-subtle);box-shadow:var(--mds-shadow-sm);cursor:zoom-in;text-align:left}
.mc-task-statement-image.mc-fullwidth-inline-image img{display:block;width:100%;max-width:none;max-height:none;height:auto;object-fit:contain;background:var(--mds-surface-default)}
.mc-reference-inline-image{width:100%;max-width:none;margin-top:12px}
.mc-reference-inline-image img{width:100%;max-width:none;border:0;border-radius:0}
.mc-inline-reviewed-photos .mc-inline-reviewed-page{display:block}
.mc-inline-reviewed-photos .mc-inline-reviewed-sheet{width:100%}
.mc-inline-reviewed-photos .mc-inline-reviewed-comments{margin-top:12px;width:100%}
.mc-inline-photo-stage{width:100%;min-height:0;cursor:zoom-in;outline:none}
.mc-inline-photo-stage:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--mds-action-primary) 28%,transparent)}
.mc-inline-photo-stage img{width:100%;max-width:none;max-height:none;height:auto;object-fit:contain}
.mc-inline-reviewed-photos .seamless-page.readonly{width:100%}
.mc-inline-reviewed-photos .mc-review-media-overlay{pointer-events:none}
.mc-image-lightbox{position:fixed;inset:0;z-index:100000;display:grid;grid-template-rows:auto minmax(0,1fr);background:rgba(5,10,20,.94);backdrop-filter:blur(8px)}
.mc-image-lightbox-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 18px;background:rgba(14,21,35,.92);border-bottom:1px solid rgba(255,255,255,.12);color:#fff}
.mc-image-lightbox-toolbar strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mc-image-lightbox-toolbar .inline{flex-wrap:nowrap}
.mc-image-lightbox-toolbar .button,.mc-image-lightbox-toolbar .icon-button{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.16);color:#fff}
.mc-image-lightbox-toolbar [data-lightbox-scale]{min-width:52px;text-align:center;font-variant-numeric:tabular-nums}
.mc-image-lightbox-viewport{min-height:0;overflow:auto;display:grid;place-items:center;padding:24px;cursor:zoom-out}
.mc-image-lightbox-media{position:relative;transform-origin:center center;transition:transform .12s ease;max-width:min(96vw,1900px)}
.mc-image-lightbox-media>img{display:block;max-width:100%;max-height:calc(100vh - 110px);width:auto;height:auto;object-fit:contain;box-shadow:0 18px 70px rgba(0,0,0,.45);background:#fff}
.mc-image-lightbox-media>.mc-review-media-overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
body.mc-lightbox-open{overflow:hidden}
@media(max-width:820px){.mc-image-lightbox-toolbar{align-items:flex-start;flex-direction:column}.mc-image-lightbox-toolbar .inline{width:100%;overflow-x:auto}.mc-image-lightbox-viewport{padding:12px}.mc-image-lightbox-media>img{max-height:calc(100vh - 150px)}}
.mc-local-photo-preview.mc-local-photo-preview-full{display:block;width:100%;padding:0;overflow:hidden;cursor:zoom-in}
.mc-local-photo-preview.mc-local-photo-preview-full img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;border:0;border-radius:0;background:var(--mds-surface-default)}
.mc-local-photo-preview.mc-local-photo-preview-full>div{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;border-top:1px solid var(--mds-border-subtle)}
.mc-builder-image-preview.mc-builder-image-preview-full{display:block;width:100%;padding:0;overflow:hidden;cursor:zoom-in}
.mc-builder-image-preview.mc-builder-image-preview-full img{display:block;width:100%;height:auto;max-height:520px;object-fit:contain;border:0;border-radius:0;background:var(--mds-surface-default)}
.mc-builder-image-preview.mc-builder-image-preview-full>div{display:grid;gap:3px;padding:10px 12px;border-top:1px solid var(--mds-border-subtle)}
.mc-homework-answer-photos{display:block!important;width:100%;margin:14px 0}
.mc-homework-answer-photos .mc-inline-reviewed-pages{width:100%}
.mc-homework-answer-photos .mc-inline-reviewed-page{width:100%}
.mc-homework-answer-photos .mc-inline-photo-stage img{width:100%;height:auto;max-width:none;max-height:none;object-fit:contain;border:0;border-radius:0}
.mc-homework-answer-photos .mc-inline-reviewed-comments button.button{width:auto;display:inline-flex;padding:8px 12px;border-radius:10px;text-align:center}

/* Alpha 31 — единая страница ДЗ для ученика и проверки */
.mc-homework-review-page{display:grid;gap:16px}
.mc-homework-review-page-head{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:22px 24px;border:1px solid var(--mds-border-subtle);border-radius:var(--mds-radius-xl);background:var(--mds-surface-default)}
.mc-homework-review-page-head h1{margin:0 0 6px;font-size:30px;line-height:1.1}
.mc-homework-review-page-head p{margin:0;color:var(--mds-text-secondary)}
.mc-homework-review-page-head>div:last-child{display:grid;justify-items:end;gap:8px}
.mc-homework-review-page-head>div:last-child>strong{font-size:30px;color:var(--subject-accent,var(--mds-action-primary))}
.mc-homework-review-page-grid{display:grid;grid-template-columns:250px minmax(0,1fr) 320px;gap:16px;align-items:start}
.mc-homework-review-nav{display:grid;gap:8px;padding:0 12px 12px}
.mc-homework-review-nav-item{width:100%;display:grid;grid-template-columns:32px minmax(0,1fr);gap:4px 10px;align-items:center;padding:11px;border:1px solid var(--mds-border-subtle);border-radius:14px;background:var(--mds-surface-default);text-align:left;color:var(--mds-text-primary);cursor:pointer}
.mc-homework-review-nav-item>span{grid-row:1/3;display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:var(--mds-surface-subtle);font-weight:800}
.mc-homework-review-nav-item strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mc-homework-review-nav-item small{color:var(--mds-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mc-homework-review-nav-item.active{border-color:var(--subject-accent,var(--mds-action-primary));background:color-mix(in srgb,var(--subject-accent,var(--mds-action-primary)) 6%,var(--mds-surface-default))}
.mc-homework-review-nav-item.success>span{color:var(--mds-success);background:color-mix(in srgb,var(--mds-success) 10%,var(--mds-surface-default))}
.mc-homework-review-nav-item.danger>span{color:var(--mds-danger);background:color-mix(in srgb,var(--mds-danger) 10%,var(--mds-surface-default))}
.mc-homework-review-nav-item.warning>span{color:var(--mds-warning);background:color-mix(in srgb,var(--mds-warning) 10%,var(--mds-surface-default))}
.mc-homework-review-nav-item.muted{opacity:.62}
.mc-homework-review-task-page{min-height:0;padding:24px}
.mc-homework-review-task-head{display:flex;justify-content:space-between;gap:14px;align-items:start;margin-bottom:12px}
.mc-homework-review-task-head h2{margin:5px 0 0}
.mc-inline-score-editor{display:grid;grid-template-columns:180px minmax(0,1fr);gap:14px;margin:18px 0;padding:16px;border:1px solid color-mix(in srgb,var(--subject-accent,var(--mds-action-primary)) 24%,var(--mds-border-subtle));border-radius:16px;background:color-mix(in srgb,var(--subject-accent,var(--mds-action-primary)) 4%,var(--mds-surface-default))}
.mc-inline-score-editor>div{display:grid;align-content:start;gap:4px}
.mc-inline-score-editor>div span{font-size:12px;color:var(--mds-text-secondary)}
.mc-inline-score-editor>input{align-self:start}
.mc-inline-score-editor>label{grid-column:1/-1}
.mc-review-attempt-list{display:grid;gap:8px}
.mc-review-attempt-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:10px 11px;border:1px solid var(--mds-border-subtle);border-radius:12px;background:var(--mds-surface-default);color:var(--mds-text-primary);text-align:left;cursor:pointer}
.mc-review-attempt-row>span{display:grid;gap:2px}
.mc-review-attempt-row>span:last-child{text-align:right}
.mc-review-attempt-row small{color:var(--mds-text-secondary)}
.mc-review-attempt-row.active{border-color:var(--subject-accent,var(--mds-action-primary));background:color-mix(in srgb,var(--subject-accent,var(--mds-action-primary)) 5%,var(--mds-surface-default))}
.mc-review-general-comment{display:grid;gap:10px}
.mc-review-general-comment>strong{font-size:15px}
.mc-task-review-comments-rail .mc-review-annotation-list.compact{display:grid;gap:8px}
.mc-task-review-comments-rail .mc-review-annotation-item{grid-template-columns:28px minmax(0,1fr);padding:10px}
.mc-task-review-comments-rail .mc-review-annotation-index{width:26px;height:26px;font-size:12px}
.mc-student-homework-card.is-history{background:color-mix(in srgb,var(--mds-success) 3%,var(--mds-surface-default));border-style:dashed}
.mc-structure-item.muted{opacity:.58}
@media(max-width:1280px){.mc-homework-review-page-grid{grid-template-columns:220px minmax(0,1fr)}.mc-homework-review-page-grid>.mc-right-rail{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.mc-homework-review-page-grid>.mc-right-rail>.button{align-self:start}}
@media(max-width:900px){.mc-homework-review-page-grid{grid-template-columns:1fr}.mc-homework-review-page-grid>.mc-homework-task-sidebar{order:0}.mc-homework-review-page-grid>.mc-homework-student-main{order:1}.mc-homework-review-page-grid>.mc-right-rail{order:2;display:grid;grid-template-columns:1fr}.mc-homework-review-page-head{align-items:flex-start;flex-direction:column}.mc-homework-review-page-head>div:last-child{justify-items:start}.mc-inline-score-editor{grid-template-columns:1fr}.mc-inline-score-editor>label{grid-column:auto}}
.mc-inline-review-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 12px;border-bottom:1px solid var(--mds-border-subtle);background:var(--mds-surface-subtle)}
.mc-inline-review-toolbar .button.active{background:var(--subject-accent,var(--mds-action-primary));border-color:var(--subject-accent,var(--mds-action-primary));color:#fff}
.mc-inline-review-editor{display:grid;gap:10px;margin:12px;padding:14px;border:1px solid color-mix(in srgb,var(--subject-accent,var(--mds-action-primary)) 28%,var(--mds-border-subtle));border-radius:14px;background:var(--mds-surface-default)}
.mc-inline-review-editor>div{display:grid;gap:10px}
.mc-inline-review-editor textarea{min-height:92px}
.mc-inline-review-editor.hidden{display:none}
.mc-inline-reviewed-page .mc-review-media-overlay{pointer-events:none}
.mc-inline-reviewed-page:has(.mc-inline-review-toolbar) .mc-review-media-overlay{pointer-events:auto}
.mc-inline-reviewed-page:has(.mc-inline-review-toolbar) .mc-inline-photo-stage{cursor:crosshair}
.mc-writing-lightbox-trigger{cursor:zoom-in;outline:none}
.mc-writing-lightbox-trigger:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--mds-action-primary) 28%,transparent)}
.mc-homework-stepper{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:6px 2px 2px}
.mc-homework-step{position:relative;width:48px;height:48px;border-radius:50%;border:1px solid var(--mds-border-default);background:var(--mds-surface-default);color:var(--mds-text-primary);font-weight:800;cursor:pointer}
.mc-homework-step span{position:relative;z-index:1}
.mc-homework-step i{position:absolute;right:-3px;bottom:-3px;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;font-size:11px;font-style:normal;background:var(--mds-surface-default);border:1px solid currentColor}
.mc-homework-step.active{background:var(--subject-accent,var(--mds-action-primary));border-color:var(--subject-accent,var(--mds-action-primary));color:#fff;box-shadow:0 6px 18px color-mix(in srgb,var(--subject-accent,var(--mds-action-primary)) 24%,transparent)}
.mc-homework-step.success:not(.active){color:var(--mds-success);border-color:color-mix(in srgb,var(--mds-success) 45%,var(--mds-border-default))}
.mc-homework-step.danger:not(.active){color:var(--mds-danger);border-color:color-mix(in srgb,var(--mds-danger) 45%,var(--mds-border-default))}
.mc-homework-step.muted{opacity:.45}
.mc-homework-student-grid.no-left,.mc-homework-review-page-grid.no-left{grid-template-columns:minmax(0,1fr) 320px}
.mc-homework-task-mini-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.mc-homework-task-mini{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:8px;align-items:center;padding:8px 9px;border:1px solid var(--mds-border-subtle);border-radius:11px;background:var(--mds-surface-default);color:var(--mds-text-primary);text-align:left;cursor:pointer}
.mc-homework-task-mini>span{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:var(--mds-surface-subtle);font-weight:800}
.mc-homework-task-mini strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}
.mc-homework-task-mini small{color:var(--mds-text-secondary);font-size:11px}
.mc-homework-task-mini.active{border-color:var(--subject-accent,var(--mds-action-primary));background:color-mix(in srgb,var(--subject-accent,var(--mds-action-primary)) 5%,var(--mds-surface-default))}
.mc-homework-task-mini.muted{opacity:.5}
.mc-homework-review-page-grid.no-left{grid-template-columns:minmax(0,1fr) 320px}
@media(max-width:980px){.mc-homework-student-grid.no-left,.mc-homework-review-page-grid.no-left{grid-template-columns:1fr}.mc-homework-stepper{gap:10px}.mc-homework-step{width:42px;height:42px}}

/* Alpha 32: stable image preview, zoom panning and immediate draft uploads */
.mc-image-lightbox-viewport.can-pan{cursor:grab;touch-action:none;user-select:none}
.mc-image-lightbox-viewport.is-panning{cursor:grabbing}
.mc-image-lightbox-viewport.is-panning .mc-image-lightbox-media{transition:none}
.mc-photo-upload-state{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--mds-action-primary) 30%,var(--mds-border-subtle));border-radius:14px;background:var(--mds-action-primary-subtle);color:var(--mds-text-primary)}
.mc-builder-image-preview-full img{background:var(--mds-surface-default);object-fit:contain}

/* Alpha 34 — CloudText-like fragment comments aligned with marked areas */
.mc-homework-review-page-grid,.mc-homework-student-grid{position:relative}
.mc-review-cloud-rail{position:relative;display:grid!important;grid-template-columns:1fr!important;align-content:start;gap:14px;min-width:0}
.mc-cloud-comment-lane{position:relative;width:100%;min-height:0;overflow:visible;transition:height .12s ease}
.mc-cloud-comment-lane.is-empty{height:0!important;margin:0;padding:0}
.mc-cloud-comment-lane>[data-cloud-comment-cards],.mc-cloud-comment-lane>[data-cloud-comment-editor-host]{display:contents}
.mc-cloud-comment-card{position:absolute;left:0;right:0;z-index:5;display:grid;gap:10px;padding:13px 14px;border:1px solid var(--mds-border-default);border-radius:12px;background:var(--mds-surface-default);box-shadow:var(--mds-shadow-sm);color:var(--mds-text-primary)}
.mc-cloud-comment-card::before{content:"";position:absolute;left:-16px;top:50%;width:16px;border-top:1px solid color-mix(in srgb,var(--mds-action-primary) 45%,var(--mds-border-default))}
.mc-cloud-comment-head{display:flex;align-items:center;gap:9px;padding-bottom:8px;border-bottom:1px solid var(--mds-border-subtle)}
.mc-cloud-comment-head strong{font-size:13px}
.mc-cloud-comment-card>.math-content{font-size:14px;line-height:1.45;overflow-wrap:anywhere}
.mc-cloud-comment-card .mc-review-comment-images{margin-top:0}
.mc-cloud-inline-review-editor{position:absolute;left:0;right:0;z-index:9;margin:0!important;padding:14px!important;box-shadow:var(--mds-shadow-md)}
.mc-cloud-inline-review-editor::before{content:"";position:absolute;left:-16px;top:50%;width:16px;border-top:1px solid var(--mds-action-primary)}
.mc-review-cloud-rail>.mc-rail-card,.mc-review-cloud-rail>.button{position:relative;z-index:2}
.mc-review-cloud-rail .mc-review-controls-card{margin-top:0}
.mc-homework-review-task-page .mc-inline-reviewed-page{grid-template-columns:minmax(0,1fr)!important}
.mc-homework-review-task-page .mc-inline-reviewed-comments{display:none!important}
.mc-homework-review-task-page .mc-inline-photo-stage,.mc-homework-review-task-page .mc-inline-reviewed-stage{overflow:visible}
.mc-homework-review-task-page .mc-review-media-overlay{z-index:5}
@media(min-width:981px) and (max-width:1280px){
  .mc-homework-review-page-grid.no-left,.mc-homework-student-grid.no-left{grid-template-columns:minmax(0,1fr) 320px!important}
  .mc-homework-review-page-grid.no-left>.mc-review-cloud-rail,.mc-homework-student-grid.no-left>.mc-review-cloud-rail{grid-column:auto!important;display:grid!important;grid-template-columns:1fr!important}
}
@media(max-width:980px){
  .mc-cloud-comment-lane{height:auto!important;display:grid;gap:10px}
  .mc-cloud-comment-card,.mc-cloud-inline-review-editor{position:relative!important;top:auto!important;left:auto!important;right:auto!important}
  .mc-cloud-comment-card::before,.mc-cloud-inline-review-editor::before{display:none}
}
.mc-cloud-comment-card.editing-hidden{display:none}

.mc-review-loading{min-height:420px;display:grid;place-items:center;align-content:center;gap:12px;text-align:center;color:var(--mds-text-primary)}
.mc-review-loading>span{color:var(--mds-text-secondary)}
.mc-review-loading-spinner{width:34px;height:34px;border-radius:50%;border:3px solid var(--mds-border-subtle);border-top-color:var(--mds-action-primary);animation:mc-review-spin .8s linear infinite}
@keyframes mc-review-spin{to{transform:rotate(360deg)}}

/* Alpha 35 — review UX */
.mc-inline-review-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.mc-inline-review-toolbar>strong{min-width:46px;text-align:center;font-size:13px;color:var(--mds-text-secondary)}
.mc-inline-review-toolbar .muted{flex:1 1 320px}
.mc-inline-review-zoom-viewport{width:100%;max-width:100%;max-height:78vh;overflow:auto;border-radius:18px;background:var(--mds-surface-subtle);overscroll-behavior:contain}
.mc-inline-review-zoom-viewport>.mc-inline-photo-stage,.mc-inline-review-zoom-viewport>.mc-inline-reviewed-stage{min-width:100%;transform-origin:top left}
.mc-homework-review-page .mc-review-media-overlay{cursor:crosshair}
.subject-accent-scope .mc-review-annotation-rect{stroke:var(--subject-accent,var(--mds-action-primary))!important;fill:color-mix(in srgb,var(--subject-accent,var(--mds-action-primary)) 7%,transparent)!important}
.subject-accent-scope .mc-review-annotation-rect.pending{stroke:var(--subject-accent,var(--mds-action-primary))!important;fill:color-mix(in srgb,var(--subject-accent,var(--mds-action-primary)) 5%,transparent)!important}
.subject-accent-scope .mc-review-annotation-label,.subject-accent-scope .mc-review-annotation-index{background:var(--subject-accent,var(--mds-action-primary))!important;fill:var(--subject-accent,var(--mds-action-primary))!important}
.subject-accent-scope .mc-review-annotation-handle{stroke:var(--subject-accent,var(--mds-action-primary))!important}
.subject-accent-scope .mc-cloud-comment-card::before{border-color:color-mix(in srgb,var(--subject-accent,var(--mds-action-primary)) 50%,var(--mds-border-default))}
.mc-cloud-comment-card,.mc-cloud-inline-review-editor{box-sizing:border-box}
.mc-inline-score-criteria{grid-column:1/-1!important;display:grid;gap:7px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--subject-accent,var(--mds-action-primary)) 22%,var(--mds-border-subtle));border-radius:12px;background:color-mix(in srgb,var(--subject-accent,var(--mds-action-primary)) 5%,var(--mds-surface-subtle))}
.mc-inline-score-criteria strong{font-size:13px}
.mc-inline-score-criteria .math-content{font-size:14px;line-height:1.5}

/* Alpha 36 — review layout + direct submission feed */
.mc-homework-review-page-grid.no-left{grid-template-columns:minmax(0,2fr) minmax(340px,1fr)!important;gap:22px!important;align-items:start}
.mc-review-comments-only{position:relative;min-width:0;align-self:stretch}
.mc-review-comments-only .mc-cloud-comment-lane{width:100%;min-height:320px}
.mc-homework-review-bottom{display:grid;gap:14px;margin-top:4px}
.mc-review-bottom-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:start}
.mc-review-bottom-grid>.mc-rail-card{height:100%}
.mc-review-bottom-comment{padding:18px}
.mc-review-bottom-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;padding-bottom:6px}
.mc-review-bottom-actions .button{min-width:190px}
.mc-homework-review-bottom .mc-homework-review-nav{padding:0}
.mc-homework-submissions-table td{vertical-align:middle}
.mc-homework-submission-feed .mc-homework-toolbar{grid-template-columns:minmax(280px,1fr) 260px auto}
.mc-review-upload-preview-host{display:grid;gap:8px;min-width:0}
.mc-review-selected-upload-previews{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px}
.mc-review-upload-preview{display:grid;gap:5px;min-width:0;padding:6px;border:1px solid var(--mds-border-subtle);border-radius:10px;background:var(--mds-surface-subtle)}
.mc-review-upload-preview img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:7px;background:var(--mds-surface-default)}
.mc-review-upload-preview small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--mds-text-secondary)}
/* Vertical wheel must scroll the page, not a zoomed answer photo. Horizontal access remains available via the scrollbar. */
.mc-inline-review-zoom-viewport{max-height:none!important;overflow-x:auto!important;overflow-y:hidden!important;overscroll-behavior-x:contain!important;overscroll-behavior-y:auto!important}
@media(max-width:1100px){
  .mc-homework-review-page-grid.no-left{grid-template-columns:1fr!important}
  .mc-review-comments-only{order:2}
  .mc-cloud-comment-lane{height:auto!important;display:grid;gap:10px}
  .mc-cloud-comment-card,.mc-cloud-inline-review-editor{position:relative!important;top:auto!important;left:auto!important;right:auto!important}
  .mc-cloud-comment-card::before,.mc-cloud-inline-review-editor::before{display:none}
  .mc-review-bottom-grid{grid-template-columns:1fr}
  .mc-homework-submission-feed .mc-homework-toolbar{grid-template-columns:1fr}
}

/* Alpha 37 — shared student/teacher review geometry and attachment UX */
@media(min-width:1101px){
  .mc-homework-student-grid.no-left,
  .mc-homework-review-page-grid.no-left{
    grid-template-columns:minmax(0,2fr) minmax(360px,1fr)!important;
    gap:22px!important;
    align-items:start;
  }
}
.mc-homework-student-bottom{display:grid;gap:14px;margin-top:18px}
.mc-homework-student-bottom>.mc-review-bottom-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.mc-student-general-comment{padding:18px}
.mc-review-upload-preview{position:relative;padding:0!important;overflow:hidden}
.mc-review-upload-preview img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px}
.mc-upload-preview-remove,.mc-builder-image-remove,.mc-inline-photo-detach{position:absolute;top:8px;right:8px;z-index:12;display:grid;place-items:center;width:28px;height:28px;border:1px solid color-mix(in srgb,#fff 72%,var(--mds-border-default));border-radius:50%;background:rgba(18,31,52,.72);color:#fff;font:700 18px/1 system-ui;cursor:pointer;box-shadow:0 2px 8px rgba(15,23,42,.22)}
.mc-upload-preview-remove:hover,.mc-builder-image-remove:hover,.mc-inline-photo-detach:hover{background:rgba(200,32,52,.9)}
.mc-builder-image-preview,.mc-builder-image-preview-full{position:relative;overflow:hidden}
.mc-builder-image-preview .mc-builder-image-remove,.mc-builder-image-preview-full .mc-builder-image-remove{top:10px;right:10px}
.mc-inline-photo-stage{position:relative}
.mc-inline-reviewed-photos{gap:8px!important}
.mc-inline-reviewed-photos .mc-inline-reviewed-page{margin:0!important;gap:0!important}
.mc-inline-reviewed-photos .seamless-page{padding:0!important;border:0!important;background:transparent!important}
.mc-review-bottom-comment .mc-review-comment-images,.mc-student-general-comment .mc-review-comment-images{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
.mc-review-bottom-comment .mc-review-comment-image,.mc-student-general-comment .mc-review-comment-image{width:clamp(150px,20%,240px);max-width:240px}
.mc-review-bottom-comment .mc-review-comment-image-open,.mc-student-general-comment .mc-review-comment-image-open{display:block;width:100%;border:0;padding:0;background:transparent;cursor:zoom-in}
.mc-review-bottom-comment .mc-review-comment-image img,.mc-student-general-comment .mc-review-comment-image img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:12px;border:1px solid var(--mds-border-subtle)}
.mc-homework-submission-feed .mc-homework-toolbar{display:grid!important;grid-template-columns:minmax(260px,1fr) repeat(3,minmax(150px,210px)) auto auto!important;gap:10px;align-items:center}
.mc-homework-submission-feed .mc-homework-toolbar .mc-search-field{min-width:0}
@media(max-width:1250px){.mc-homework-submission-feed .mc-homework-toolbar{grid-template-columns:1fr 1fr 1fr}.mc-homework-submission-feed .mc-homework-toolbar .mc-search-field{grid-column:1/-1}}
@media(max-width:1100px){.mc-homework-student-bottom>.mc-review-bottom-grid{grid-template-columns:1fr}.mc-homework-submission-feed .mc-homework-toolbar{grid-template-columns:1fr!important}}

/* Alpha 38 — homework review polish and student workspace repair */
.sr-only{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}

/* Task navigation remains readable without the oversized numbered bubbles. */
.mc-homework-stepper{
  gap:8px!important;
  flex-wrap:nowrap!important;
  overflow-x:auto;
  padding:8px 1px 4px!important;
  scrollbar-width:thin;
}
.mc-homework-step{
  position:relative;
  width:auto!important;
  min-width:42px;
  height:38px!important;
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:0 10px;
  border-radius:10px!important;
  box-shadow:none!important;
  font-size:13px;
}
.mc-homework-step i{
  position:static!important;
  width:15px!important;
  height:15px!important;
  border:0!important;
  border-radius:50%;
  background:currentColor!important;
  font-size:0!important;
  opacity:.72;
}
.mc-homework-step i::after{
  content:"";
  width:5px;
  height:5px;
  border-radius:50%;
  background:var(--mds-surface-default);
}
.mc-homework-step.active{
  background:color-mix(in srgb,var(--subject-accent,var(--mds-action-primary)) 10%,var(--mds-surface-default))!important;
  border-color:var(--subject-accent,var(--mds-action-primary))!important;
  color:var(--subject-accent,var(--mds-action-primary))!important;
}
.mc-homework-step.active i::after{background:var(--mds-surface-default)}

/* Reference answers and criteria are document sections, not coloured callouts. */
.mc-review-reference,
.mc-review-criteria,
.mc-inline-score-criteria{
  display:grid;
  gap:7px;
  margin-top:14px;
  padding:14px 0 0!important;
  border:0!important;
  border-top:1px solid var(--mds-border-subtle)!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.mc-inline-score-criteria{grid-column:1/-1!important}
.mc-review-reference>span,
.mc-review-criteria>span{
  color:var(--mds-text-secondary)!important;
}

/* The open-image button must fill the preview; only the remove control floats. */
.mc-review-comment-image-open{
  position:static!important;
  inset:auto!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  padding:0!important;
  border:0!important;
  border-radius:inherit!important;
  background:transparent!important;
  color:inherit!important;
  cursor:zoom-in!important;
}
.mc-review-comment-image-remove{
  position:absolute!important;
  top:6px!important;
  right:6px!important;
  z-index:4;
  display:grid;
  place-items:center;
  width:26px!important;
  height:26px!important;
  padding:0!important;
  border:1px solid rgba(255,255,255,.72)!important;
  border-radius:50%!important;
  background:rgba(18,31,52,.76)!important;
  color:#fff!important;
  font-size:17px;
  line-height:1;
}
.mc-review-bottom-comment .mc-review-comment-image,
.mc-student-general-comment .mc-review-comment-image{
  width:clamp(180px,20%,280px)!important;
  max-width:280px!important;
  height:auto!important;
  overflow:visible!important;
  border:0!important;
  background:transparent!important;
}
.mc-review-bottom-comment .mc-review-comment-image-open,
.mc-student-general-comment .mc-review-comment-image-open{height:auto!important}
.mc-review-bottom-comment .mc-review-comment-image img,
.mc-student-general-comment .mc-review-comment-image img{
  display:block;
  width:100%!important;
  height:auto!important;
  max-height:360px;
  aspect-ratio:auto!important;
  object-fit:contain!important;
  border-radius:12px;
  border:1px solid var(--mds-border-subtle);
  background:var(--mds-surface-subtle);
}

/* Student homework uses the same compact list grammar as the teacher workspace. */
.mc-student-homework-list-panel{overflow:hidden}
.mc-student-homework-list-panel .mc-homework-toolbar-filters{
  display:grid!important;
  grid-template-columns:minmax(260px,1fr) minmax(170px,220px) minmax(170px,220px) auto!important;
  gap:10px;
  align-items:center;
}
.mc-student-homework-list-panel .mc-homework-toolbar-filters>label:not(.mc-search-field){display:block;min-width:0}
.mc-student-homework-list-panel .mc-homework-toolbar-filters select{width:100%;min-width:0}
.mc-student-homework-list-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) 170px 200px 110px;
  gap:16px;
  align-items:center;
  padding:10px 16px 10px 76px;
  border-bottom:1px solid var(--mds-border-subtle);
  background:var(--mds-surface-subtle);
  color:var(--mds-text-secondary);
  font-size:11px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.035em;
}
.mc-student-homework-list{display:grid}
.mc-student-homework-list-row{
  min-width:0;
  display:grid;
  grid-template-columns:44px minmax(0,1fr) 170px 200px 110px;
  gap:16px;
  align-items:center;
  min-height:92px;
  padding:13px 16px;
  border-bottom:1px solid var(--mds-border-subtle);
  background:var(--mds-surface-default);
}
.mc-student-homework-list-row:last-child{border-bottom:0}
.mc-student-homework-list-row:hover{background:color-mix(in srgb,var(--subject-accent,var(--mds-action-primary)) 3%,var(--mds-surface-default))}
.mc-student-homework-list-row.is-history{opacity:.82}
.mc-student-homework-list-icon{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border-radius:11px;
  background:color-mix(in srgb,var(--subject-accent,var(--mds-action-primary)) 11%,var(--mds-surface-default));
  color:var(--subject-accent,var(--mds-action-primary));
  font-weight:800;
}
.mc-student-homework-list-main{min-width:0;display:grid;gap:4px}
.mc-student-homework-list-main>div{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.mc-student-homework-list-main h3{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}
.mc-student-homework-list-main p{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--mds-text-secondary);font-size:11px}
.mc-student-homework-list-main .mc-subject-value{font-size:11px;font-weight:700}
.mc-student-homework-list-date{display:grid;gap:4px;color:var(--mds-text-secondary);font-size:11px}
.mc-student-homework-list-date strong{color:var(--mds-text-primary);font-size:12px;font-weight:650}
.mc-student-homework-list-date strong.danger{color:var(--mds-danger)}
.mc-student-homework-list-progress{display:grid;gap:7px}
.mc-student-homework-list-progress small{color:var(--mds-text-secondary);font-size:11px}
.mc-student-homework-list-row>.button{width:110px;justify-content:center}

/* Balanced dashboard: one main column and a naturally sized secondary stack. */
.mc-student-home-hero{
  min-height:112px!important;
  padding:20px 24px!important;
  border-radius:16px!important;
}
.mc-student-home-hero h1{font-size:26px!important}
.mc-student-home-hero img{width:98px!important;max-height:78px!important}
.mc-student-home-primary{grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:stretch}
.mc-student-home-grid{
  grid-template-columns:minmax(0,1.45fr) minmax(320px,.85fr)!important;
  align-items:start!important;
}
.mc-student-home-grid>*{height:auto!important;overflow:visible!important}
.mc-student-home-grid>.mc-panel{min-height:0}
.mc-student-home-stack{display:grid;gap:16px;align-content:start;min-width:0}
.mc-student-home-stack>.mc-panel{min-width:0;height:auto}

@media(max-width:1050px){
  .mc-student-homework-list-panel .mc-homework-toolbar-filters{grid-template-columns:1fr 1fr!important}
  .mc-student-homework-list-panel .mc-search-field{grid-column:1/-1}
  .mc-student-homework-list-head{display:none}
  .mc-student-homework-list-row{grid-template-columns:44px minmax(0,1fr) 150px 110px}
  .mc-student-homework-list-progress{grid-column:2/4}
  .mc-student-home-grid{grid-template-columns:1fr!important}
}
@media(max-width:760px){
  .mc-student-homework-list-panel .mc-homework-toolbar-filters{grid-template-columns:1fr!important}
  .mc-student-homework-list-panel .mc-search-field{grid-column:auto}
  .mc-student-homework-list-row{grid-template-columns:40px minmax(0,1fr);gap:10px;align-items:start}
  .mc-student-homework-list-icon{width:38px;height:38px}
  .mc-student-homework-list-date,.mc-student-homework-list-progress,.mc-student-homework-list-row>.button{grid-column:2;width:100%}
  .mc-student-homework-list-row>.button{justify-self:stretch}
  .mc-student-home-primary{grid-template-columns:1fr!important}
  .mc-student-home-hero{align-items:flex-start!important;padding:18px!important}
  .mc-student-home-hero img{width:72px!important}
}

.notification-button{position:relative!important}
.notification-button svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.notification-badge{
  position:absolute;
  top:-5px;
  right:-5px;
  min-width:20px;
  height:20px;
  display:grid;
  place-items:center;
  padding:0 5px;
  border:2px solid var(--mds-surface-default);
  border-radius:999px;
  background:var(--mds-danger);
  color:#fff;
  font-size:9px;
  font-weight:800;
  line-height:1;
}
.notification-badge.hidden{display:none}
.mc-notification-modal{max-width:600px}
.mc-notification-list{display:grid;margin:-6px -4px}
.mc-notification-row{
  width:100%;
  min-width:0;
  display:grid;
  grid-template-columns:38px minmax(0,1fr) auto;
  gap:11px;
  align-items:center;
  padding:13px 8px;
  border:0;
  border-bottom:1px solid var(--mds-border-subtle);
  background:transparent;
  color:var(--mds-text-primary);
  text-align:left;
  cursor:pointer;
}
.mc-notification-row:last-child{border-bottom:0}
.mc-notification-row:hover{background:var(--mds-action-ghost-hover)}
.mc-notification-row>span:nth-child(2){min-width:0;display:grid;gap:4px}
.mc-notification-row strong,.mc-notification-row small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mc-notification-row small{color:var(--mds-text-secondary);font-size:11px}
.mc-notification-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:var(--mds-action-primary-subtle);color:var(--mds-action-primary);font-size:11px;font-weight:800}

/* Alpha 40 — final visual alignment after the Alpha 38 compact overrides. */
.mc-student-home-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  align-items:stretch!important;
}
.mc-student-home-grid>.mc-panel{min-height:280px!important;height:100%!important;overflow:hidden!important}
.mc-student-home-hero{min-height:126px!important;padding:22px 34px!important}
.mc-student-home-hero img{width:112px!important;height:112px!important;max-height:112px!important;transform:translateX(-6%)}
.mc-class-week-head>div.today{background:var(--mds-action-primary);color:#fff;border-radius:10px 10px 0 0}
.mc-class-week-head>div.today strong{color:#fff}
.mc-class-day.today{border-left:2px solid var(--mds-action-primary);border-right:2px solid var(--mds-action-primary);background:#F0F8FF;box-shadow:inset 0 0 0 1px rgba(0,153,255,.12)}
.mc-class-event{padding:12px;gap:6px}
@media(max-width:1180px){.mc-student-home-grid{grid-template-columns:1fr 1fr!important}.mc-student-home-grid>.mc-panel:last-child{grid-column:1/-1}}
@media(max-width:760px){.mc-student-home-grid{grid-template-columns:1fr!important}.mc-student-home-grid>.mc-panel:last-child{grid-column:auto}.mc-student-home-hero{padding:18px!important}.mc-student-home-hero img{width:78px!important;height:78px!important}}

/* Alpha 41 — canonical learner pages, native PDF rendering and isolated page settings. */
.mc-canonical-page{width:min(100%,920px)!important;margin:0 auto!important}
.mc-canonical-task{width:100%;box-sizing:border-box}
.mc-page-description{color:var(--mds-text-secondary);line-height:1.65}
.mc-page-description p{margin:.35em 0}
.mc-studio-settings-overlay{position:fixed;inset:0;z-index:220;display:flex;justify-content:flex-end;background:rgba(10,20,38,.36);backdrop-filter:blur(3px)}
.mc-studio-page-settings{width:min(520px,94vw);height:100%;overflow:auto;background:var(--mds-surface-default);border-left:1px solid var(--mds-border-subtle);box-shadow:-18px 0 60px rgba(13,35,68,.2)}
.mc-studio-page-settings>header{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:22px 24px;border-bottom:1px solid var(--mds-border-subtle);background:var(--mds-surface-default)}
.mc-studio-page-settings h2{margin:4px 0 0}
.mc-rich-editor{display:grid;gap:0;border:1px solid var(--mds-border-default);border-radius:12px;overflow:hidden;background:var(--mds-surface-default)}
.mc-rich-editor:focus-within{border-color:var(--mds-action-primary);box-shadow:0 0 0 3px var(--mds-action-primary-subtle)}
.mc-rich-toolbar{display:flex;align-items:center;gap:4px;flex-wrap:wrap;padding:6px;border-bottom:1px solid var(--mds-border-subtle);background:var(--mds-surface-subtle)}
.mc-rich-toolbar button,.mc-rich-toolbar select{min-width:32px;height:30px;padding:3px 7px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--mds-text-primary);font:inherit;cursor:pointer}
.mc-rich-toolbar button:hover,.mc-rich-toolbar select:hover{border-color:var(--mds-border-default);background:var(--mds-surface-default)}
.mc-rich-color{display:grid!important;place-items:center!important;width:30px;height:30px;margin:0!important}
.mc-rich-color input{width:24px!important;height:24px!important;padding:2px!important;border:0!important}
.mc-rich-input{min-height:112px;padding:12px 13px;outline:0;line-height:1.55;color:var(--mds-text-primary)}
.mc-rich-input:empty:before{content:attr(data-placeholder);color:var(--mds-text-tertiary);pointer-events:none}
.mc-rich-input p{margin:.4em 0}
.mc-option-rich-editor{min-width:0}.mc-option-rich-editor .mc-rich-input{min-height:52px;padding:8px 10px}.mc-option-rich-editor .mc-rich-toolbar{gap:2px}.mc-option-rich-editor .mc-rich-toolbar button,.mc-option-rich-editor .mc-rich-toolbar select{height:27px;min-width:27px;font-size:10px}
.mc-resource-link-block{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:22px;border:1px solid var(--mds-border-subtle);border-radius:16px;background:linear-gradient(120deg,var(--mds-surface-default),var(--mds-action-primary-subtle))}
.mc-resource-link-block>div{min-width:0}.mc-resource-link-block h3{margin:4px 0 6px}.mc-resource-link-block .button{flex:none}
.mc-pdf-document{--pdf-zoom:1;display:grid;min-height:340px;border:1px solid var(--mds-border-subtle);border-radius:14px;overflow:hidden;background:#e8edf3}
.mc-pdf-loading,.mc-pdf-error{min-height:340px;display:grid;place-items:center;align-content:center;gap:12px;padding:28px;text-align:center;color:#34425a}
.mc-pdf-toolbar{position:sticky;top:0;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 13px;background:var(--mds-surface-default);border-bottom:1px solid var(--mds-border-subtle);color:var(--mds-text-primary)}
.mc-pdf-toolbar>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700}
.mc-pdf-toolbar>div{display:flex;align-items:center;gap:7px}.mc-pdf-toolbar button{width:34px;height:32px;border:1px solid var(--mds-border-default);border-radius:8px;background:var(--mds-surface-default);color:var(--mds-text-primary);cursor:pointer}
.mc-pdf-pages{display:grid;gap:18px;justify-items:center;max-height:78vh;overflow:auto;padding:18px}
.mc-pdf-page{display:block;width:100%;max-width:1100px;height:auto;background:#fff;box-shadow:0 4px 18px rgba(21,38,63,.2)}
html[data-theme="dark"] .mc-studio-page-settings,html[data-theme="dark"] .mc-studio-page-settings>header,html[data-theme="dark"] .mc-rich-editor,html[data-theme="dark"] .mc-rich-toolbar,html[data-theme="dark"] .mc-pdf-toolbar{background:var(--mds-surface-default);color:var(--mds-text-primary)}
html[data-theme="dark"] .mc-studio select,html[data-theme="dark"] .mc-studio input,html[data-theme="dark"] .mc-studio textarea,html[data-theme="dark"] .mc-task-bank-toolbar select,html[data-theme="dark"] .mc-task-bank-toolbar input,html[data-theme="dark"] .mc-folder-toolbar select{background:var(--mds-surface-default)!important;color:var(--mds-text-primary)!important;border-color:var(--mds-border-default)!important;color-scheme:dark}
html[data-theme="dark"] .mc-student-bank-toolbar,html[data-theme="dark"] .mc-inline-folder-select{background:var(--mds-surface-default)!important;color:var(--mds-text-primary)!important;border-color:var(--mds-border-default)!important}
html[data-theme="dark"] .mc-student-bank-toolbar select,html[data-theme="dark"] .mc-student-bank-toolbar input,html[data-theme="dark"] .mc-inline-folder-select select{background:var(--mds-surface-default)!important;color:var(--mds-text-primary)!important;border-color:var(--mds-border-default)!important;color-scheme:dark}
html[data-theme="dark"] .mc-class-day.today{background:color-mix(in srgb,var(--mds-action-primary) 12%,var(--mds-surface-default))!important}
html[data-theme="dark"] .button.danger,html[data-theme="dark"] .danger.button{color:#ffb4b4}
.button.danger{color:#fff!important;background:var(--mds-danger)!important;border-color:var(--mds-danger)!important}
@media(max-width:760px){.mc-resource-link-block{align-items:stretch;flex-direction:column}.mc-resource-link-block .button{width:100%}.mc-studio-page-settings{width:100%}}

.mc-student-home-hero{min-height:84px!important;padding:14px 28px!important}
.mc-student-home-hero img{width:76px!important;height:76px!important;max-height:76px!important}
.mc-student-home-hero h1{margin:0 0 5px;font-size:clamp(20px,2vw,29px)}
.mc-student-home-hero p{margin:0}
.mc-progress-line-chart{display:block;width:100%;height:auto;min-height:90px;overflow:visible}
.mc-progress-line-chart line{stroke:var(--mds-border-subtle);stroke-width:1}.mc-progress-line-chart polyline{fill:none;stroke:var(--subject-accent,var(--mds-action-primary));stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.mc-progress-line-chart circle{fill:var(--mds-surface-default);stroke:var(--subject-accent,var(--mds-action-primary));stroke-width:4}.mc-progress-line-chart circle.clickable{cursor:pointer}.mc-progress-line-chart circle.clickable:hover{r:9}
.mc-chart-empty{display:grid;place-items:center;min-height:110px;padding:18px;border:1px dashed var(--mds-border-default);border-radius:12px;color:var(--mds-text-secondary);text-align:center}
.mc-subject-progress-panel{overflow:auto!important}.mc-subject-progress-list{display:grid;gap:12px;max-height:330px;overflow:auto}.mc-subject-progress-chart{display:grid;gap:5px;padding:10px 12px;border:1px solid var(--mds-border-subtle);border-left:4px solid var(--subject-accent);border-radius:12px}.mc-subject-progress-chart>div{display:flex;justify-content:space-between;gap:12px}.mc-subject-progress-chart>div span{font-weight:800;color:var(--subject-accent)}.mc-subject-progress-chart svg{min-height:58px}.mc-subject-progress-chart small{color:var(--mds-text-secondary)}
.mc-mock-chart-panel{margin-top:18px}.mc-mock-chart-panel .mc-progress-line-chart{max-height:230px}
.mc-dashboard-learning-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:18px;margin-top:18px}
.mc-dashboard-testor form{display:grid;gap:13px}.mc-dashboard-testor .mc-panel-head{align-items:flex-end}.mc-dashboard-testor .mc-panel-head label{min-width:190px}.mc-testor-task-head{display:flex;justify-content:space-between}.mc-testor-task-head span{color:var(--mds-action-primary);font-weight:800}.mc-testor-statement{font-size:16px;line-height:1.6}.mc-testor-reference{padding:10px 12px;border-radius:10px;background:var(--mds-surface-subtle)}
.mc-dashboard-achievement-list{display:grid;gap:10px}.mc-dashboard-achievement{display:grid;grid-template-columns:46px minmax(0,1fr);gap:11px;align-items:center;padding:10px;border:1px solid var(--mds-border-subtle);border-radius:12px}.mc-dashboard-achievement div{display:grid;gap:3px}.mc-dashboard-achievement small{color:var(--mds-text-secondary)}.mc-dashboard-achievement.locked{opacity:.62}
.mc-activity-panel{margin-top:18px}.mc-streak-value{font-size:23px;color:#f08a24}.mc-activity-scroll{overflow-x:auto;padding:3px}.mc-activity-heatmap{display:grid;grid-template-rows:repeat(7,22px);grid-auto-columns:22px;grid-auto-flow:column;gap:4px;width:max-content}.mc-activity-cell{display:grid;place-items:center;border-radius:5px;background:var(--mds-surface-subtle);color:var(--mds-text-secondary);font-size:8px;font-weight:800}.mc-activity-cell.level-1,.mc-activity-legend .level-1{background:#b9e1ff;color:#175e91}.mc-activity-cell.level-2,.mc-activity-legend .level-2{background:#70c3ff;color:#0c456e}.mc-activity-cell.level-3,.mc-activity-legend .level-3{background:#239fff;color:#fff}.mc-activity-cell.level-4,.mc-activity-legend .level-4{background:#006fca;color:#fff}.mc-activity-legend{display:flex;align-items:center;justify-content:flex-end;gap:5px;margin-top:9px;color:var(--mds-text-secondary);font-size:11px}.mc-activity-legend i{width:14px;height:14px;border-radius:4px;background:var(--mds-surface-subtle)}
.mc-achievement-summary{display:grid;grid-template-columns:auto minmax(180px,480px);align-items:center;gap:24px}.mc-achievement-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px}.mc-achievement-card{position:relative;display:grid;grid-template-columns:52px minmax(0,1fr);gap:13px;align-items:center;min-height:112px;padding:16px;border:1px solid var(--mds-border-subtle);border-radius:16px;background:var(--mds-surface-default)}.mc-achievement-card>div{align-self:center}.mc-achievement-card h3{margin:0 0 5px}.mc-achievement-card p{margin:0;color:var(--mds-text-secondary);font-size:12px}.mc-achievement-card>.mc-status{position:absolute;right:12px;top:10px}.mc-achievement-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--mds-action-primary-subtle);color:var(--mds-action-primary);font-size:23px;font-weight:800}.mc-achievement-card.locked{filter:saturate(.3);opacity:.66}.mc-achievement-card.unlocked{border-color:color-mix(in srgb,var(--mds-action-primary) 35%,var(--mds-border-subtle));box-shadow:0 8px 24px rgba(0,153,255,.08)}
.mc-student-bank-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:18px}.mc-student-bank-tree{align-self:start;position:sticky;top:18px;display:grid;gap:4px;padding:10px}.mc-student-bank-tree-row{width:100%;display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:8px;align-items:center;padding:9px 10px 9px calc(10px + var(--tree-depth,0)*14px);border:0;border-radius:9px;background:transparent;color:var(--mds-text-primary);text-align:left;cursor:pointer}.mc-student-bank-tree-row:hover,.mc-student-bank-tree-row.active{background:var(--mds-action-primary-subtle);color:var(--mds-action-primary)}.mc-student-bank-tree-row small{color:var(--mds-text-secondary)}.mc-student-bank-main{min-width:0}.mc-student-bank-breadcrumbs{display:flex;gap:7px;align-items:center;margin-bottom:10px}.mc-student-bank-breadcrumbs button{border:0;background:transparent;color:var(--mds-action-primary);cursor:pointer}.mc-student-bank-breadcrumbs button:disabled{color:var(--mds-text-primary);font-weight:700}.mc-student-bank-folder-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:15px}.mc-student-bank-folder-head h2{margin:4px 0}.mc-student-bank-folder-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:16px}.mc-student-bank-folder-card{display:grid;gap:9px;padding:12px;border:1px solid var(--mds-border-subtle);border-radius:14px;background:var(--mds-surface-default)}.mc-student-bank-folder-card>button:first-child{display:grid;grid-template-columns:36px 1fr;gap:10px;border:0;background:transparent;color:var(--mds-text-primary);text-align:left;cursor:pointer}.mc-student-bank-folder-card h3{margin:0}.mc-student-bank-folder-card p{margin:4px 0;color:var(--mds-text-secondary)}.mc-bank-run-finish{display:grid;justify-items:center;gap:14px;padding:80px 25px;text-align:center}.mc-bank-run-finish p{max-width:600px;color:var(--mds-text-secondary)}
html[data-theme="dark"] .mc-activity-cell.level-0,html[data-theme="dark"] .mc-activity-legend i.level-0{background:#202b3a}
@media(max-width:1050px){.mc-dashboard-learning-grid,.mc-student-bank-layout{grid-template-columns:1fr}.mc-student-bank-tree{position:static;max-height:260px;overflow:auto}.mc-achievement-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.mc-achievement-grid,.mc-student-bank-folder-grid{grid-template-columns:1fr}.mc-achievement-summary{grid-template-columns:1fr}.mc-dashboard-testor .mc-panel-head,.mc-student-bank-folder-head{align-items:stretch;flex-direction:column}.mc-activity-heatmap{grid-template-rows:repeat(7,18px);grid-auto-columns:18px}.mc-student-home-hero{min-height:76px!important}.mc-student-home-hero img{width:58px!important;height:58px!important}}
.mc-homework-review-bottom .mc-review-bottom-grid{display:none!important}
.mc-correction-picker{display:grid;gap:9px;margin-top:15px}.mc-correction-picker-row{display:grid;grid-template-columns:22px 42px minmax(0,1fr);gap:10px;align-items:center;padding:11px;border:1px solid var(--mds-border-subtle);border-radius:12px;cursor:pointer}.mc-correction-picker-row:hover{background:var(--mds-action-ghost-hover)}.mc-correction-picker-row>span:last-child{display:grid;gap:3px}.mc-correction-picker-row small{color:var(--mds-text-secondary)}
.writing-editor-layout{position:relative}.writing-object-inspector{position:absolute;z-index:18;top:12px;right:12px;width:250px;display:grid;gap:11px;padding:14px;border:1px solid var(--mds-border-default);border-radius:14px;background:var(--mds-surface-default);box-shadow:0 15px 45px rgba(15,38,70,.2);color:var(--mds-text-primary)}.writing-object-inspector.hidden{display:none}.writing-object-inspector header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:8px;border-bottom:1px solid var(--mds-border-subtle)}.writing-object-inspector header>div{display:grid}.writing-object-inspector header span{font-size:10px;color:var(--mds-text-secondary);text-transform:uppercase;letter-spacing:.08em}.writing-object-inspector header button{border:0;background:transparent;color:var(--mds-text-secondary);font-size:20px;cursor:pointer}.writing-object-inspector label{display:grid;gap:5px;font-size:11px;font-weight:700}.writing-object-inspector input[type="color"]{width:100%;height:34px;padding:3px}.writing-object-inspector textarea{min-height:76px}.writing-object-inspector>div:last-child{display:flex;gap:7px}.mc-writing-text-editor{max-width:560px}.mc-writing-text-editor form{display:grid;gap:14px;padding:18px}.mc-writing-text-editor textarea{min-height:170px}
