/* Рабочие экраны: действие, контекст, затем подробности. */
.site-header .avatar-menu > .panel { width: 224px; padding: 8px; gap: 2px; }
.site-header .avatar-menu .menu-name { margin: 0 2px 3px; padding: 7px 8px; border: 0; font-size: 12px; overflow-wrap: anywhere; }
.site-header .avatar-menu .panel > a,
.site-header .avatar-menu .panel > form > button { min-height: 36px; padding: 8px; font-size: 12px; }
.site-header .menu-theme { padding: 8px 0; margin: 3px 0; border: 0; border-block: 1px solid var(--line); }
.site-header .menu-theme legend { padding: 0 8px; margin-bottom: 7px; font-size: 11px; }
.site-header .menu-theme-options { padding: 3px; gap: 2px; border: 1px solid var(--line); background: var(--bg); border-radius: 8px; }
.site-header .avatar-menu .menu-theme-options button,
.site-header .burger .menu-theme-options button { display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 4px; padding: 6px 3px; min-height: 48px; width: auto; font: 500 10px/1.3 Onest,sans-serif; color: var(--text-2); border-radius: 5px; }
.site-header .menu-theme-options .ic { width: 16px; height: 16px; }
.site-header .avatar-menu .menu-theme-options button[aria-pressed=true],
.site-header .burger .menu-theme-options button[aria-pressed=true] { color: var(--text); background: var(--surface); box-shadow: 0 1px 3px #00000020; outline: 1px solid var(--line); }
body .work-tabs { gap: 8px; }
body .work-tabs > :is(a,button) { padding-inline: 14px; min-height: 44px; }
body .work-tabs > .active { background: var(--accent-soft); border-radius: 6px 6px 0 0; }

/* Выбор показателя и номера — разные, явно разделённые действия. */
body[data-cabinet="1"] .progress-numbermap .map-switch-row { justify-content: flex-start; gap: 16px; margin-bottom: 10px; flex-wrap: wrap; }
.progress-numbermap .segment { margin-left: 0; }
.progress-numbermap .segment button { min-height: 40px; padding-inline: 16px; }
.map-explanation { margin: 0 0 20px; color: var(--text-2); font-size: 13px; line-height: 1.55; max-width: 64ch; }
.numbermap-layout { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(190px, 1fr); gap: 24px; align-items: start; }
.numbermap-grid-wrap { min-width: 0; }
body .progress-numbermap .map27 { display: grid; grid-template-columns: repeat(9,minmax(0,1fr)); width: 100%; max-width: 540px; gap: 6px; }
body .progress-numbermap .map27 > a { width: auto; height: auto; aspect-ratio: 1; min-height: 38px; font-size: 14px; font-weight: 550; }
.progress-numbermap .map27 a.is-selected { outline: 2px solid var(--text); outline-offset: -4px; box-shadow: none; }
.progress-numbermap .map27 a:focus-visible { outline: 3px solid var(--focus-ring); outline-offset: -4px; }
body[data-cabinet="1"] .map-selection { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; margin: 0; padding: 16px 0 0; border: 0; border-top: 1px solid var(--line); border-radius: 0; background: transparent; min-width: 0; }
.map-selection > strong { font-size: 17px; line-height: 1.4; }
.map-selection > span { color: var(--text-2); font-size: 13px; line-height: 1.65; overflow-wrap: anywhere; }
.map-stats { margin: 0; width: 100%; font-size: 13px; line-height: 1.45; }
.map-stats > div { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 12px; padding-block: 7px; border-bottom: 1px solid var(--line); }
.map-stats dt { color: var(--text-2); }
.map-stats dd { margin: 0; font-weight: 600; font-variant-numeric: tabular-nums; text-align: right; }
.map-stats small { display: block; margin-top: 3px; font-size: 11px; line-height: 1.5; }
.map-stats[hidden], .map-selection > [hidden] { display: none; }
.map-selection-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; padding-top: 4px; }
.map-selection-actions[hidden],.map-error[hidden] { display: none; }
.map-error { color: var(--err); font-size: 13px; margin-top: 12px; }
.progress-numbermap.htmx-swapping { opacity: .7; }
body .progress-numbermap .map-legend { font-size: 11px; flex-wrap: wrap; gap: 8px; }

/* Главная ученика: конкретная работа и контекст занятий. */
.home-section-head { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; }
body[data-cabinet="1"] .home-section-head h2 { font-size: 16px; margin: 0; }
body[data-cabinet="1"] .student-home .sh-focus-grid { grid-template-columns: minmax(0,1.65fr) minmax(240px,1fr); align-items: start; gap: 28px; }
body[data-cabinet="1"] .student-home .sh-focus-card { background: var(--surface); padding: 22px; border: 1px solid var(--line); border-radius: 10px; }
body[data-cabinet="1"] .student-home .sh-work-title { font-size: 23px; font-weight: 650; line-height: 1.35; margin: 20px 0 10px; overflow-wrap: anywhere; }
.sh-work-meta { display: flex; flex-wrap: wrap; gap: 6px 18px; color: var(--text-2); font-size: 13px; }
.sh-work-overdue { color: var(--err); }
body[data-cabinet="1"] .student-home .sh-focus-foot { justify-content: flex-start; margin-top: 18px; }
body[data-cabinet="1"] .student-home .sh-more-work { margin-top: 22px; padding-top: 4px; }
body[data-cabinet="1"] .student-home .sh-more-row { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 13px 0; }
.sh-more-row > span { min-width: 0; }
body[data-cabinet="1"] .student-home .sh-more-row strong { display: block; color: var(--text); font-size: 14px; font-weight: 550; }
.sh-more-row small { display: block; margin-top: 5px; font-size: 12px; color: var(--text-2); }
.sh-more-row .ic { flex: none; color: var(--text-2); }
.sh-lesson-stack { display: flex; flex-direction: column; gap: 22px; min-width: 0; }
body[data-cabinet="1"] .student-home .sh-next-card { padding: 20px 0; background: transparent; border: 0; border-block: 1px solid var(--line); border-radius: 0; }
body[data-cabinet="1"] .student-home .sh-next-card .sh-focus-label { font-size: 16px; color: var(--text); font-weight: 600; margin: 0 0 12px; }
body[data-cabinet="1"] .student-home .sh-next-date { font-size: 22px; margin: 0 0 8px; font-family: inherit; }
body[data-cabinet="1"] .student-home .sh-next-card h3 { font-size: 16px; line-height: 1.45; margin: 4px 0 16px; }
body[data-cabinet="1"] .sh-recent-lesson h2 { font-size: 14px; margin: 0 0 12px; }
.sh-recent-lesson a { display: flex; flex-direction: column; align-items: flex-start; gap: 7px; color: inherit; text-decoration: none; font-size: 13px; line-height: 1.5; }
.sh-recent-lesson a > span:first-child { color: var(--text-2); }
.sh-recent-lesson strong { font-weight: 550; overflow-wrap: anywhere; }
.home-progress-head { margin-top: 36px; }
body[data-cabinet="1"] .student-home .sh-overview { margin: 14px 0 26px; }
body[data-cabinet="1"] .student-home .sh-overview > .sh-stat { flex-basis: 130px; padding-block: 16px; }
body[data-cabinet="1"] .student-home .sh-overview .stat-value { font-size: 22px; }
body[data-cabinet="1"] .home-map-heading { font-size: 17px; margin: 28px 0 14px; }
body[data-cabinet="1"] .student-home .sh-start-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px 24px; }
body[data-cabinet="1"] .student-home .sh-start-card { display: flex; align-items: center; min-width: 0; gap: 12px; padding: 16px 0; border: 0; border-bottom: 1px solid var(--line); border-radius: 0; background: transparent; color: var(--text); text-decoration: none; }
.sh-start-copy { display: flex; flex: 1; flex-direction: column; min-width: 0; gap: 4px; }
.sh-start-title { font-size: 15px; font-weight: 600; line-height: 1.45; }
.sh-start-note { color: var(--text-2); font-size: 13px; line-height: 1.5; }
.sh-start-icon, .sh-start-arrow { flex: none; width: 18px; height: 18px; color: var(--text-2); }
body[data-cabinet="1"] .student-home .sh-start-card:hover { border-bottom-color: var(--accent); }
body[data-cabinet="1"] .student-home .sh-start-card:hover .sh-start-title,
body[data-cabinet="1"] .student-home .sh-start-card:hover .sh-start-arrow { color: var(--accent); }
.sh-start-card:focus-visible { outline: 2px solid var(--focus-ring); outline-offset: 4px; }
.sh-trial-offer { grid-column: 1 / -1; display: flex; align-items: center; gap: 16px; min-width: 0; padding: 20px; background: var(--accent-soft); border-radius: 10px; }
.sh-trial-photo { flex: none; width: 56px; height: 56px; border-radius: 50%; object-fit: cover; object-position: center 28%; }
.sh-trial-copy { flex: 1; min-width: 0; }
.sh-trial-copy h3 { margin: 0; color: var(--text); font-size: 15px; font-weight: 600; line-height: 1.45; }
.sh-trial-copy p { margin: 5px 0 0; color: var(--text-2); font-size: 13px; line-height: 1.5; }
body[data-cabinet="1"] .sh-trial-action { flex: none; gap: 8px; min-height: 44px; border-color: var(--field-line); }

/* Главная репетитора: колонки растут независимо, без пустот напротив уроков. */
body[data-cabinet="1"] .tutor-home .hm-grid { display: grid; grid-template-columns: minmax(0,1.65fr) minmax(290px,1fr); grid-template-areas: none; gap: 28px; align-items: start; }
body[data-cabinet="1"] .tutor-home .hm-main,
body[data-cabinet="1"] .tutor-home .hm-side { display: flex; flex-direction: column; gap: 26px; min-width: 0; position: static; padding: 0; }
body[data-cabinet="1"] .tutor-home .hm-main > section,
body[data-cabinet="1"] .tutor-home .hm-side > section { min-width: 0; margin: 0; }
body[data-cabinet="1"] .tutor-home .section-label-row { margin: 0 0 12px; min-height: 28px; }
body[data-cabinet="1"] .tutor-home .section-label { margin: 0; font-size: 16px; }
body[data-cabinet="1"] .tutor-home .hm-lesson { padding: 18px; gap: 16px; border-radius: 9px; background: var(--surface); }
body[data-cabinet="1"] .tutor-home .hm-when { min-width: 44px; }
body[data-cabinet="1"] .tutor-home .hm-when-big { font: 600 22px/1.2 Onest,sans-serif; }
body[data-cabinet="1"] .tutor-home .hm-topic { font-size: 17px; margin: 8px 0 12px; line-height: 1.4; }
body[data-cabinet="1"] .tutor-home .hm-foot { margin-top: 12px; padding-top: 12px; gap: 10px; flex-wrap: wrap; }
body[data-cabinet="1"] .tutor-home .hm-foot .lesson-prep { flex: 1 1 170px; }
.home-brief-details > summary { cursor: pointer; color: var(--text-2); font-size: 12px; padding-block: 4px; }
.home-brief-details[open] > summary { color: var(--text); }
body[data-cabinet="1"] .tutor-home .hm-review-card { min-height: 0; padding: 18px; }
body[data-cabinet="1"] .tutor-home .hm-review-count { font-size: 28px; }
body[data-cabinet="1"] .tutor-home .hm-review-first { padding-top: 12px; margin-top: 12px; }
.home-notices-fold > summary { cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px; font-size: 13px; }
.home-notices-fold > summary::after { content: '+'; color: var(--text-2); }
.home-notices-fold[open] > summary::after { content: '−'; }
body[data-cabinet="1"] .tutor-home .hw-week { grid-template-columns: repeat(7,minmax(0,1fr)); }
body[data-cabinet="1"] .tutor-home .hw-day { padding: 9px 6px; }
body[data-cabinet="1"] .tutor-home .hw-who { font-size: 10px; }
body[data-cabinet="1"] .tutor-home .roster-row { padding: 13px 4px; }
body[data-cabinet="1"] .tutor-home .roster-row .lr-text { display: flex; flex-direction: column; align-items: flex-start; gap: 5px; }
body[data-cabinet="1"] .tutor-home .roster-solved { display: none; }
body[data-cabinet="1"] .tutor-home .roster-row .badge { white-space: normal; }

/* Работы: список сразу под видами, расширенные фильтры по требованию. */
body[data-cabinet="1"] .journal-page .tt-facets { padding: 0; margin-bottom: 22px; border: 0; background: transparent; }
.journal-page .tt-facets > .tt-frow:first-child > .tt-flabel { display: none; }
body[data-cabinet="1"] .journal-page .work-tabs { width: 100%; gap: 4px; border-bottom: 1px solid var(--line); }
body[data-cabinet="1"] .journal-page .work-tabs > a { min-height: 44px; padding: 12px 14px; font-size: 13px; border: 0; border-bottom: 2px solid transparent; border-radius: 6px 6px 0 0; background: none; flex: none; }
body[data-cabinet="1"] .journal-page .work-tabs > a.active { background: var(--accent-soft); border-bottom-color: var(--accent); }
.jr-filter-panel { border-bottom: 1px solid var(--line); }
.jr-filter-panel > summary { display: flex; align-items: center; gap: 10px; width: fit-content; padding: 12px 4px; cursor: pointer; font-size: 13px; list-style: none; min-height: 44px; }
.jr-filter-panel > summary::-webkit-details-marker { display: none; }
.jr-filter-panel > summary > .ic { width: 14px; height: 14px; }
.jr-filter-panel[open] > summary > .ic { transform: rotate(180deg); }
body[data-cabinet="1"] .journal-page .tt-frow--map { padding: 12px 0 18px; border: 0; margin: 0; background: none; }
body[data-cabinet="1"] .journal-page .tt-map .map27 { display: grid; grid-template-columns: repeat(14,minmax(0,1fr)); gap: 5px; width: 100%; max-width: none; }
body[data-cabinet="1"] .journal-page .tt-map .map27 > a { width: auto; height: 38px; aspect-ratio: auto; color: var(--text); background: var(--surface)!important; border-color: var(--line)!important; font-size: 12px; }
body[data-cabinet="1"] .journal-page .tt-map .map27 > a.is-picked { background: var(--accent)!important; color: var(--on-accent); border-color: var(--accent)!important; }
body[data-cabinet="1"] .journal-page .tt-map { width: 100%; }
body[data-cabinet="1"] .journal-page .tt-frow { align-items: center; gap: 12px; }
body[data-cabinet="1"] .journal-page .tt-flabel { font-size: 12px; text-transform: none; }
body[data-cabinet="1"] .journal-page .tt-table { border: 0; border-top: 1px solid var(--line); border-radius: 0; background: transparent; }
body[data-cabinet="1"] .journal-page .table-dense td { padding-block: 16px; }
.journal-page .tt-id { text-decoration: none; }
.journal-page .tt-toggle { min-height: 36px; padding: 6px 9px; }
.journal-page .tt-bar { display: none; }
.journal-page .tt-sum { font-size: 12px; color: var(--text-2); margin: 16px 0 10px; }
.journal-page .jr-list { border: 0; background: transparent; padding: 0; }
.journal-page .jr-day { padding: 12px 16px; }
.journal-page .jr-row { padding: 16px 8px; }

@media(max-width:1100px) {
 body[data-cabinet="1"] .tutor-home .hm-grid { grid-template-columns: minmax(0,1.5fr) minmax(240px,1fr); gap: 22px; }
 .numbermap-layout { grid-template-columns: 1fr; gap: 18px; }
 body[data-cabinet="1"] .tutor-home .hw-week { grid-template-columns: 1fr; }
 body[data-cabinet="1"] .tutor-home .hw-day { display: grid; grid-template-columns: 65px 1fr; gap: 5px 10px; padding: 10px; }
 body[data-cabinet="1"] .tutor-home .hw-who { font-size: 12px; }
}
@media(max-width:760px) {
 body[data-cabinet="1"] .student-home .sh-focus-grid { grid-template-columns: 1fr; gap: 22px; }
 .sh-lesson-stack { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; }
 body[data-cabinet="1"] .student-home .sh-next-card { padding: 0; border: 0; }
 body[data-cabinet="1"] .student-home .sh-start-grid { grid-template-columns: 1fr; row-gap: 0; }
 .sh-trial-offer { display: grid; grid-template-columns: 44px minmax(0,1fr); gap: 12px; padding: 16px; margin-block: 12px; }
 .sh-trial-offer:first-child { margin-top: 0; }
 .sh-trial-photo { width: 44px; height: 44px; align-self: start; }
 .sh-trial-action { grid-column: 1 / -1; justify-self: stretch; }
 body[data-cabinet="1"] .tutor-home .hm-grid { display: flex; flex-direction: column; gap: 26px; }
 body[data-cabinet="1"] .tutor-home .hm-main,body[data-cabinet="1"] .tutor-home .hm-side { display: contents; }
 .tutor-home .hm-focus { order: 1; }.tutor-home .hm-review { order: 2; }.tutor-home .hm-calendar { order: 3; }.tutor-home .hm-notices { order: 4; }.tutor-home .hm-roster { order: 5; }.tutor-home .hm-activity { order: 6; }.tutor-home .hm-debts { order: 7; }
 body[data-cabinet="1"] .journal-page .tt-map .map27 { grid-template-columns: repeat(9,minmax(0,1fr)); }
}
@media(max-width:560px) {
 .site-header .avatar-menu > .panel { max-width: calc(100vw - 24px); }
 .site-header .avatar-menu .panel > a,.site-header .avatar-menu .panel > form > button { min-height: 44px; }
 body .work-tabs { gap: 4px; }
 body .work-tabs > :is(a,button) { padding-inline: 12px; }
 body .progress-numbermap .map27 { grid-template-columns: repeat(6,minmax(0,1fr)); max-width: none; }
 .progress-numbermap .segment { display: flex; width: 100%; }
 .progress-numbermap .segment button { flex: 1; padding-inline: 8px; min-height: 44px; font-size: 12px; }
 .progress-numbermap .map-legend--scale { justify-content: flex-start; }
 .progress-numbermap .map-legend-scale { width: 85px; }
 .map-selection-actions { gap: 14px; }
 .map-selection-actions a { min-height: 44px; display: inline-flex; align-items: center; }
 .sh-lesson-stack { grid-template-columns: 1fr; }
 .sh-recent-lesson { padding-top: 18px; border-top: 1px solid var(--line); }
 body[data-cabinet="1"] .student-home .sh-focus-card { padding: 18px; }
 body[data-cabinet="1"] .student-home .sh-work-title { font-size: 21px; }
 body[data-cabinet="1"] .student-home .sh-overview > .sh-stat { flex-basis: calc(50% - 24px); }
 body[data-cabinet="1"] .tutor-home .hm-lesson { padding: 16px 12px; gap: 12px; }
 body[data-cabinet="1"] .tutor-home .hm-acts { flex-wrap: wrap; }
 body[data-cabinet="1"] .journal-page .tt-map .map27 { grid-template-columns: repeat(6,minmax(0,1fr)); }
 body[data-cabinet="1"] .journal-page .tt-map .map27 > a { height: 44px; }
 .journal-page .tt-table { overflow: visible; }
 .journal-page .tt-table table,.journal-page .tt-table tbody { display: block; width: 100%; }
 .journal-page .tt-table thead { display: none; }
 .journal-page .tt-table .tt-row { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 10px 14px; padding: 16px 0; border-bottom: 1px solid var(--line); }
 body[data-cabinet="1"] .journal-page .tt-table .tt-row > td { display: block; border: 0; padding: 0; min-width: 0; }
 .journal-page .tt-row > td:first-child { grid-column: 1 / -1; }
 .journal-page .tt-row > td[data-label="Попытки"]::before { content: 'Попытки: '; color: var(--text-2); font-size: 12px; }
 .journal-page .tt-row > td.tt-when { display: none!important; }
 .journal-page .tt-row > td.tt-exp { grid-column: 1 / -1; text-align: left; }
 .journal-page .tt-toggle-txt { display: inline; }
 .journal-page .tt-toggle { padding-left: 0; }
 .journal-page .tt-row .tt-out-full { display: inline; }.journal-page .tt-row .tt-out-short { display: none; }
 .journal-page .tt-row .tt-when-sm { display: block; padding-top: 6px; font-size: 11px; }
 .journal-page .tt-table tr:not(.tt-row),.journal-page .tt-table tr:not(.tt-row)>td { display: block; width: 100%; }
 .journal-page .tt-drawer { max-width: 100%; overflow-x: auto; }
}
@media(prefers-reduced-motion:reduce) { .progress-numbermap *, .menu-theme * { transition: none!important; } }

/* Сравнение группы: статистика доступна нажатием, а не только наведением. */
#groupmap .segment button { min-height: 44px; }
#groupmap .gmap { min-width: 1080px; }
#groupmap .map27 > button { appearance: none; padding: 0; border: 1px solid var(--line); border-radius: 5px; height: 32px; color: var(--text); cursor: pointer; font: 500 11px/1 Onest,sans-serif; }
#groupmap .map27 > button.c0 { background: var(--surface); }
#groupmap .map27 > button:is([class=""],.acc-few,.price-few) { background: var(--surface); color: var(--text-2); }
#groupmap .map27 > button.cell-fill--deep { color: var(--on-accent); }
#groupmap .map27 > button:is(.is-selected,:focus-visible) { outline: 2px solid var(--text); outline-offset: -3px; }
#groupmap .map-selection { margin-top: 18px; }
#groupmap .map-selection-actions a[hidden] { display: none; }
#groupmap .ws-map-scroll { padding: 3px 3px 10px; }
#groupmap .map-switch-row { justify-content: flex-start; }
#groupmap .map-switch-row h2 { margin-right: 8px; }

/* История ученика остаётся рядом с назначением и раскрывается по запросу. */
.pupil-history-loader { min-width: 0; grid-column: 1 / -1; }
.pupil-history-loader p { margin: 8px 0; font-size: 13px; }
.pupil-history-loader[aria-busy="true"] { color: var(--text-2); }
.pupil-history-person { padding: 12px 0; border-block: 1px solid var(--line); }
.pupil-history-person + .pupil-history-person { border-top: 0; }
.pupil-history-heading { display: flex; justify-content: space-between; align-items: baseline; gap: 8px; font-size: 13px; }
.pupil-history-heading strong { min-width: 0; overflow-wrap: anywhere; }
.pupil-history-heading a { flex-shrink: 0; }
.pupil-history-status span { display: block; margin-top: 4px; color: var(--text-2); }
.pupil-history-detail { margin-top: 8px; font-size: 13px; }
.pupil-history-detail > summary { cursor: pointer; padding: 4px 0; }
.pupil-history-detail > summary:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
.pupil-history-attempts, .pupil-history-tasks { display: grid; margin-top: 6px; max-height: 280px; overflow: auto; }
.pupil-history-attempts a, .pupil-history-tasks a { display: flex; justify-content: space-between; gap: 10px; padding: 8px 2px; border-top: 1px solid var(--line); color: inherit; text-decoration: none; }
.pupil-history-attempts a:hover, .pupil-history-tasks a:hover { color: var(--accent); }
.pupil-history-tasks a { flex-wrap: wrap; }
.pupil-history-attempts strong { white-space: nowrap; }
.variant-bank .assign-pop[open] > .assign-pop-form { width: min(360px, calc(100vw - 48px)); max-height: min(620px, 72vh); overflow: auto; }
.variant-bank .v-card:has(.assign-pop[open]) { z-index: 31; }
@media (max-width: 640px) {
  .variant-bank .assign-pop[open] > .assign-pop-form { position: fixed; left: 16px; right: 16px; top: auto; bottom: 16px; width: auto; max-height: 75dvh; }
  .pupil-history-detail > summary { padding: 10px 0; }
  .pupil-history-attempts a, .pupil-history-tasks a { min-height: 44px; align-items: center; }
}
.pupil-variant-history { min-width: 0; }
.pupil-history-context { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin-bottom: 18px; }
.pupil-history-context label { font-size: 14px; color: var(--text-2); }
.pupil-history-context select { width: min(320px, 100%); flex: 1 1 200px; }
.variant-pupil-status { font-size: 13px; margin: 2px 0; color: var(--text-2); line-height: 1.5; }
.variant-bank .v-card:has(.variant-pupil-status) .v-card-title { padding-right: 0; }
.pupil-task-history { min-width: 0; }
.pupil-task-history > summary { cursor: pointer; list-style: none; }
.pupil-task-history > summary::-webkit-details-marker { display: none; }
.pupil-task-links { display: grid; gap: 4px; margin: 8px 0; font-size: 13px; max-height: 220px; overflow: auto; }
.pupil-task-links a { padding: 7px 2px; color: var(--text-2); text-decoration: none; }
.pupil-task-links a:hover { color: var(--accent); }
.pupil-history-context select { flex-grow: 0; }
@media (max-width: 700px) {
  .result-table.variant-result-table .table-dense { min-width: 0; }
}
@media (max-width: 640px) {
  .variant-bank .assign-pop[open] > .assign-pop-form { margin-left: 0 !important; }
}

/* Лента работ: тип и время, сама работа, отдельно — результат. */
.journal-page .work-tabs > a.is-zero { opacity: 1; }
.journal-page .jr-row { display: grid; grid-template-columns: 112px minmax(0,1fr) minmax(160px,240px); align-items: center; gap: 20px; padding: 18px 12px; }
.journal-page .jr-meta { display: flex; flex-direction: column; gap: 5px; }
.journal-page .jr-meta .jr-kind { min-width: 0; font-size: 12px; letter-spacing: 0; text-transform: none; }
.journal-page .jr-meta .jr-when { width: auto; font-size: 12px; }
.journal-page .jr-title { font-size: 15px; font-weight: 550; overflow-wrap: anywhere; }
.journal-page .jr-result { text-align: right; font-size: 13px; }
.journal-page .jr-result strong { font-weight: 550; }
.journal-page .jr-result .jr-note { margin-top: 4px; font-size: 12px; }
.journal-page .jr-day { margin-top: 18px; padding: 12px 16px; border-block: 1px solid var(--line); background: var(--surface); font-size: 12px; letter-spacing: 0; text-transform: none; }
.journal-page .jr-day:first-child { margin-top: 0; }
.journal-page .tt-cell-task { gap: 12px; flex-wrap: wrap; }
.journal-page .tt-num { min-width: 36px; padding: 0; margin: 0; border: 0; font: 500 13px/1.4 Onest,sans-serif; color: var(--text-2); justify-content: flex-start; }
.journal-page .tt-sub { display: inline-flex; padding: 0; border: 0; color: var(--text-2); }
.journal-page .tt-sub .ic { width: 16px; height: 16px; }
.journal-page .tt-out { font-size: 13px; }
.journal-page .tt-cost--none .tt-cost-n { color: var(--text-2); }
.journal-page .tt-toggle { display: inline-flex; justify-content: center; align-items: center; min-width: 44px; min-height: 44px; padding: 10px; border-radius: 8px; text-decoration: none; }
.journal-page .tt-toggle:hover { background: var(--accent-soft); }
.journal-page .tt-toggle .ic { width: 18px; height: 18px; }
.journal-page .tt-toggle[aria-expanded="true"] .ic { transform: rotate(180deg); }
.journal-page :is(.tt-toggle,.jr-row):focus-visible { outline: 2px solid var(--accent); outline-offset: -2px; }
@media (max-width: 640px) {
  .journal-page .jr-row { grid-template-columns: minmax(0,1fr) auto; gap: 10px 12px; padding: 16px 4px; }
  .journal-page .jr-meta { grid-column: 1 / -1; flex-direction: row; justify-content: space-between; }
  .journal-page .jr-meta .jr-kind, .journal-page .jr-meta .jr-when, .journal-page .jr-main { order: 0; }
  .journal-page .jr-result { max-width: 140px; font-size: 12px; }
  .journal-page .jr-title { font-size: 14px; }
  .journal-page .jr-num { display: block; margin: 0 0 3px; font-size: 12px; }
}
@media (max-width: 560px) {
  .journal-page .tt-table .tt-row { grid-template-columns: minmax(0,1fr) auto 44px; gap: 10px 12px; padding: 16px 4px; align-items: center; }
  .journal-page .tt-row > td:first-child { grid-column: 1 / 3; }
  .journal-page .tt-row > td.tt-exp { grid-column: 3; grid-row: 1 / 3; text-align: right; }
  .journal-page .tt-row > td[data-label="Результат"] { grid-column: 1; }
  .journal-page .tt-row > td[data-label="Попытки"] { grid-column: 2; text-align: right; }
  .journal-page .tt-row > td[data-label="Попытки"]::before { content: 'Попытки: '; font-size: 11px; }
  .journal-page .tt-row .tt-when-sm { padding-top: 3px; font: 400 12px/1.5 Onest,sans-serif; }
  .journal-page .tt-out { font-size: 12px; gap: 5px; white-space: normal; }
  .journal-page .tt-cell-task { gap: 8px; }
}
