.mt-section-title{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;display:flex}.mt-text{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.mt-hint{flex-basis:100%;margin:0;font-size:12px}.mt-choice{border:1px solid var(--border);border-radius:12px;flex-wrap:wrap;gap:8px;min-width:0;margin:0 0 14px;padding:10px 12px 12px;display:flex}.mt-choice legend{padding:0 6px;font-size:13px;font-weight:600}.mt-choice label{border:1px solid var(--border);background:var(--surface-2);cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:6px 12px;font-weight:500;transition:background .12s,border-color .12s;display:inline-flex}.mt-choice label:hover{background:var(--hover);border-color:var(--hover-line)}.mt-choice label:has(input:checked){background:var(--hover-strong);border-color:var(--brand)}.mt-choice label:has(input:disabled){cursor:default;opacity:.8}.mt-choice input{width:auto;margin:0}.mt-form-grid{grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));align-items:start;gap:0 14px;display:grid}.mt-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.mt-item{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:12px;grid-template-columns:auto 1fr;align-items:start;gap:14px;padding:12px 14px;text-decoration:none;transition:background .12s,border-color .12s;display:grid}.mt-item:hover{background:var(--hover);border-color:var(--hover-line)}.mt-date{background:var(--surface-2);border:1px solid var(--border);min-width:58px;color:var(--muted);text-align:center;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;padding:6px 8px;font-size:12px;line-height:1.25;display:flex}.mt-date strong{color:var(--text);font-size:22px;line-height:1.1}.mt-body{flex-direction:column;gap:6px;min-width:0;display:flex}.mt-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.mt-title{color:var(--brand-ink);overflow-wrap:anywhere}.mt-facts{flex-wrap:wrap;gap:4px 16px;font-size:13px;display:flex}.mt-fact{overflow-wrap:anywhere;align-items:center;gap:6px;min-width:0;display:inline-flex}.mt-fact .icon{color:var(--muted);flex:none}.mt-place{overflow-wrap:anywhere}.mt-details{grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr));gap:12px;display:grid}.mt-detail{border:1px solid var(--border);background:var(--surface-2);border-radius:12px;min-width:0;padding:12px 14px}.mt-detail.wide{grid-column:1/-1}.mt-detail-label{color:var(--muted);text-transform:uppercase;letter-spacing:.02em;align-items:center;gap:6px;margin-bottom:6px;font-size:12px;font-weight:700;display:flex}html[lang=ar] .mt-detail-label,html[dir=rtl] .mt-detail-label{text-transform:none;letter-spacing:0}.mt-detail-value{overflow-wrap:anywhere}.mt-detail-sub{color:var(--muted);margin-top:2px;font-size:13px;display:block}.mt-people{gap:6px;margin:0;padding:0;list-style:none;display:grid}.mt-reason{background:var(--danger-bg);border-inline-start:4px solid var(--danger);border-radius:10px;margin-top:10px;padding:10px 12px}@media (max-width:560px){.mt-item{gap:10px;padding:10px 12px}.mt-date{min-width:50px}.mt-detail{padding:10px 12px}}.ov-file{border:1px solid var(--border);background:var(--surface-2);overflow-wrap:anywhere;border-radius:999px;align-items:center;gap:6px;max-width:100%;margin-top:6px;padding:4px 10px;font-size:13px;text-decoration:none;transition:background .12s,border-color .12s;display:inline-flex}.ov-file:hover{background:var(--hover);border-color:var(--hover-line)}.ov-rows{gap:12px;display:grid}.ov-row{border:1px solid var(--border);background:var(--surface);border-radius:12px;min-width:0;padding:14px}.ov-row-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.ov-row-head strong{font-size:15px}.ov-row-cols{grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));gap:12px;display:grid}.ov-row-cols .field{margin-bottom:0}.ov-row-cols h4{color:var(--muted);text-transform:uppercase;margin:0 0 4px;font-size:12px}html[dir=rtl] .ov-row-cols h4{text-transform:none}.ov-row-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;display:flex}.ov-row-file{border:1px dashed var(--border);border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;padding:10px 12px;display:flex}.ov-pick{cursor:pointer}.ov-row-file input[type=file].ov-pick-input{top:0;opacity:0;pointer-events:none;border:0;width:1px;height:1px;padding:0;position:absolute;inset-inline-start:0;overflow:hidden}.ov-row-file{position:relative}.ov-pick:has(+.ov-pick-input:focus-visible){outline:2px solid var(--brand);outline-offset:2px}.ov-row-file label.ov-remove{cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:2px 6px;font-size:13px;display:inline-flex}.ov-row-file label.ov-remove:hover{background:var(--hover)}.ov-row-file label.ov-remove input{width:auto}.ov-lock{color:var(--muted);align-items:center;gap:6px;margin-top:10px;font-size:13px;display:flex}.ov-course{border-inline-start:4px solid var(--brand);margin-bottom:16px}.ov-course-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:10px;display:flex}.ov-course-head h3{margin:0}.ov-course-cols{grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:12px;display:grid}.ov-course-cols>div{background:var(--surface-2);border:1px solid var(--border);border-radius:10px;min-width:0;padding:10px 12px}.ov-course-cols h4{color:var(--muted);text-transform:uppercase;margin:0 0 4px;font-size:12px}html[dir=rtl] .ov-course-cols h4{text-transform:none}@media (max-width:640px){.ov-table thead{display:none}.ov-table,.ov-table tbody,.ov-table tr,.ov-table td{width:100%;display:block}.ov-table tr{border:1px solid var(--border);border-radius:12px;margin-bottom:10px;padding:10px 12px}.ov-table td{text-align:start;border:0;padding:4px 0}.ov-table td[data-label]:before{content:attr(data-label);color:var(--muted);margin-top:6px;font-size:12px;font-weight:700;display:block}html[dir=rtl] .ov-table td[data-label]:before{direction:rtl}html[dir=ltr] .ov-table td[data-label]:before{direction:ltr}}.rp-facts{grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));gap:10px;margin:0;display:grid}.rp-fact{border:1px solid var(--border);background:var(--surface-2);border-radius:12px;min-width:0;padding:10px 12px}.rp-fact dt{color:var(--muted);margin-bottom:4px;font-size:12px;font-weight:700}.rp-fact dd{overflow-wrap:anywhere;margin:0}.rp-fact .rp-sub{color:var(--muted);font-size:13px;display:block}.rp-story{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:15px;line-height:1.65}.rp-band{border-inline-start:4px solid var(--warn)}.rp-band.positive{border-inline-start-color:var(--ok)}.rp-band.serious{border-inline-start-color:var(--danger)}.rp-badges{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.rp-steps{margin:8px 0 0;padding-inline-start:20px}.rp-steps li{margin-bottom:4px}.rp-timeline{gap:8px;margin:0;padding:0;list-style:none;display:grid}.rp-entry{border:1px solid var(--border);border-inline-start:4px solid var(--warn);background:var(--surface);color:var(--text);border-radius:10px;padding:12px 14px;text-decoration:none;transition:background .12s,border-color .12s;display:block}.rp-entry.positive{border-inline-start-color:var(--ok)}.rp-entry.serious{border-inline-start-color:var(--danger)}a.rp-entry:hover{background:var(--hover);border-top-color:var(--hover-line);border-bottom-color:var(--hover-line);border-inline-end-color:var(--hover-line)}.rp-entry-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}a.rp-entry .rp-entry-title{color:var(--brand-ink)}a.rp-entry{padding-inline-end:36px;position:relative}.rp-entry-open{top:14px;color:var(--muted);display:inline-flex;position:absolute;inset-inline-end:12px}html[dir=rtl] .rp-entry-open .icon{transform:scaleX(-1)}.rp-entry-detail{white-space:pre-wrap;overflow-wrap:anywhere;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin-top:4px;display:-webkit-box;overflow:hidden}.rp-entry-meta{color:var(--muted);margin-top:4px;font-size:12px;display:block}.notice.mt-staff-note{border-inline-start:3px solid var(--warn)}.mt-staff-tag{vertical-align:middle;margin-inline-start:8px;font-size:11px}.mt-staff-choice{margin-block:4px 0}.mt-busy{margin-inline-start:8px}
.shell-sr{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:root{--shell-topbar-space:36px}.topbar{justify-content:flex-end;align-items:center;gap:8px;height:40px;margin:-14px 0 10px;display:flex}.topbar.no-bell,.topbar-start,.sidebar-close,.sidebar-overlay{display:none}@media (max-width:820px){.topbar,.topbar.no-bell{justify-content:space-between;margin:-14px 0 12px;display:flex}.topbar-start{align-items:center;gap:10px;min-width:0;display:flex}.menu-toggle{gap:6px;min-height:40px}.topbar-brand img{width:auto;height:30px}.sidebar{z-index:60;overscroll-behavior:contain;border-inline-end:1px solid var(--border);visibility:hidden;width:min(320px,86vw);transition:transform .2s,visibility 0s linear .2s;position:fixed;inset-block:0;inset-inline-start:0;overflow-y:auto;transform:translate(-100%);box-shadow:0 10px 40px #0f172a40}html[dir=rtl] .sidebar{transform:translate(100%)}.sidebar[data-open=true],html[dir=rtl] .sidebar[data-open=true]{visibility:visible;transition:transform .2s;transform:none}.sidebar-close{top:20px;z-index:1;justify-content:center;width:40px;height:40px;padding:0;display:inline-flex;position:absolute;inset-inline-end:14px}.sidebar .brand{align-self:flex-start;margin:0}.sidebar .who{margin-top:0}.sidebar-overlay{z-index:55;background:#0f172a73;display:block;position:fixed;inset:0}}@media (max-width:820px) and (prefers-reduced-motion:reduce){.sidebar,.sidebar[data-open=true]{transition:none}}.bell{position:relative}.bell-button{border:1px solid var(--border);background:var(--surface);width:40px;height:40px;color:var(--text);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;padding:0;transition:background .12s,border-color .12s;display:inline-flex;position:relative}.bell-button:hover,.bell-button[aria-expanded=true]{background:var(--hover);border-color:var(--hover-line)}.bell-badge{top:-5px;border:2px solid var(--bg);background:var(--danger);color:#fff;text-align:center;font-variant-numeric:tabular-nums;border-radius:999px;min-width:20px;height:20px;padding:0 5px;font-size:11px;font-weight:700;line-height:16px;position:absolute;inset-inline-end:-6px}.bell-panel{top:calc(100% + 8px);z-index:50;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:min(380px,100vw - 32px);max-height:min(70vh,540px);box-shadow:var(--shadow);text-align:start;position:absolute;inset-inline-end:0;overflow-y:auto}@media (max-width:820px){.bell-panel{top:64px;width:auto;position:fixed;inset-inline:12px}}.bell-panel:focus:not(:focus-visible){outline:none}.bell-head{border-bottom:1px solid var(--border);padding:12px 14px;font-size:16px}.bell-empty{margin:0;padding:18px 14px}.bell-list{margin:0;padding:4px 0;list-style:none}.bell-item{color:var(--text);align-items:flex-start;gap:10px;padding:10px 14px;text-decoration:none;transition:background .12s;display:flex}a.bell-item:hover{background:var(--hover)}.bell-item.unread{background:color-mix(in srgb, var(--brand) 7%, transparent)}a.bell-item.unread:hover{background:var(--hover-strong)}.bell-dot{border-radius:999px;flex:none;width:8px;height:8px;margin-top:7px}.bell-dot.on{background:var(--brand)}.bell-text{overflow-wrap:anywhere;flex-direction:column;gap:2px;min-width:0;font-size:14px;display:flex}.bell-body{color:var(--muted);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;font-size:13px;display:-webkit-box;overflow:hidden}.bell-time{color:var(--muted);font-size:12px}.bell-item.unread .bell-time{color:var(--brand-ink);font-weight:600}html[data-theme=dark] .bell-item.unread .bell-time{color:var(--brand)}.bell-all{border-top:1px solid var(--border);text-align:center;padding:11px 14px;font-weight:600;text-decoration:none;display:block}.bell-all:hover{background:var(--hover)}.sidebar-search input{padding:8px 10px;font-size:14px}.sidebar-search .btn{flex:none;justify-content:center;align-items:center;padding-inline:10px;display:inline-flex}.search-page-form{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.search-page-form input{flex:220px;min-width:0}.search-page-form .btn{align-items:center;gap:6px;display:inline-flex}.search-results{gap:16px;display:grid}.search-results>*{min-width:0}.search-heading{align-items:center;gap:8px;font-size:18px;display:flex}.search-hits{margin:0;padding:0;list-style:none}.search-hits>li+li{border-top:1px solid var(--border)}.search-hit{color:var(--text);border-radius:10px;align-items:center;gap:10px;padding:10px 8px;text-decoration:none;transition:background .12s;display:flex}.search-hit:hover{background:var(--hover)}.search-hit-text{overflow-wrap:anywhere;flex-direction:column;min-width:0;display:flex}.search-hit-text .muted{font-size:13px}.search-more{margin:10px 0 0;font-size:13px}.staff-heading{margin:0 0 10px;font-size:18px}.staff-section-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.staff-week{gap:8px;display:grid}.staff-day{border:1px solid var(--border);border-radius:12px;grid-template-columns:120px minmax(0,1fr);gap:10px;padding:8px;display:grid}.staff-day.today{background:var(--surface-2)}.staff-day-name{flex-direction:column;justify-content:center;align-items:flex-start;gap:4px;display:flex}.staff-day-lessons{flex-wrap:wrap;align-items:stretch;gap:8px;min-width:0;display:flex}.staff-lesson{border:1px solid var(--border);border-inline-start:4px solid var(--brand);background:var(--surface);overflow-wrap:anywhere;border-radius:10px;flex-direction:column;gap:2px;min-width:120px;padding:8px 10px;font-size:13px;display:flex}.staff-lesson .time{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}.staff-lesson.current{background:var(--ok-bg);border-color:var(--ok);box-shadow:0 0 0 1px var(--ok)}.staff-lesson.current .time{color:var(--ok-ink);font-weight:700}html[data-theme=dark] .staff-lesson.current .time{color:#4ade80}.staff-list{margin:0;padding:0;list-style:none}.staff-list>li+li{border-top:1px solid var(--border)}.staff-course,.staff-plan{flex-wrap:wrap;align-items:center;gap:10px;padding:10px 0;display:flex}.staff-plan{justify-content:space-between}.staff-swatch{border-radius:4px;flex:none;width:12px;height:12px}.staff-item-text{overflow-wrap:anywhere;flex-direction:column;flex:180px;min-width:0;display:flex}.staff-item-text .muted{font-size:13px}.staff-actions{flex-wrap:wrap;gap:6px;display:flex}.staff-link{color:var(--text);border-radius:10px;padding:10px 8px;text-decoration:none;display:flex}a.staff-link:hover{background:var(--hover)}@media (max-width:560px){.staff-day{grid-template-columns:minmax(0,1fr)}.staff-day-name{flex-direction:row;align-items:center}.staff-lesson{flex:140px}}.status-card{justify-items:start;gap:12px;max-width:560px;display:grid}.auth .status-card{width:min(480px,100%)}.status-card h1{margin:0;font-size:22px}.status-card p{margin:0}.auth .status-card .brand{margin-bottom:4px}.status-actions{flex-wrap:wrap;gap:8px;display:flex}.status-ref{font-size:12px}.lp-head{align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.lp-head .avatar{flex:none}.lp-who{flex:1;min-width:0}.lp-who h2{overflow-wrap:anywhere;margin:4px 0 2px;font-size:20px}.lp-who p{margin:0;font-size:13px}.lp-who .badge{margin-top:6px}.lp-close{flex:none}.lp-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.lp-fact{border:1px solid var(--border);background:var(--surface-2);border-radius:12px;gap:2px;min-width:0;padding:10px 12px;display:grid}.lp-fact small{color:var(--muted);font-size:12px;font-weight:700}.lp-fact strong{font-variant-numeric:tabular-nums;font-size:24px;line-height:1.1}.lp-fact span{overflow-wrap:anywhere;font-size:12px}.lp-fact.tone-ok strong{color:var(--ok-ink)}.lp-fact.tone-warn strong{color:var(--warn-ink)}.lp-fact.tone-danger strong{color:var(--danger-ink)}.lp-title{margin:0 0 8px}.lp-courses{gap:6px;margin:0;padding:0;list-style:none;display:grid}.lp-courses>li{border:1px solid var(--border);border-radius:10px;align-items:center;gap:8px;padding:6px 8px;display:flex}.lp-dot{border-radius:3px;flex:none;width:10px;height:10px}.lp-course{overflow-wrap:anywhere;flex:1;gap:1px;min-width:0;font-size:13px;display:grid}.lp-course .muted{font-size:12px}.lp-section{background:var(--surface-2);font-variant-numeric:tabular-nums;border-radius:999px;flex:none;padding:1px 8px;font-size:12px;font-weight:700}.lp-private{border-top:1px dashed var(--border);justify-items:start;gap:6px;margin-top:18px;padding-top:14px;display:grid}.lp-private-button{gap:6px}.lp-private-note{align-items:center;gap:4px;font-size:12px;display:inline-flex}.lp-back{margin-bottom:12px}@media (max-width:480px){.lp-head{flex-wrap:wrap}.lp-facts{grid-template-columns:1fr}}.lp-who .lp-sections{margin-top:2px}@keyframes page-loading-in{0%{opacity:0}to{opacity:1}}@keyframes skel-pulse{0%,to{opacity:1}50%{opacity:.55}}.page-loading{gap:14px;animation:.2s .15s both page-loading-in;display:grid}.skel{border-radius:var(--radius);background:var(--surface-2);border:1px solid var(--border);animation:1.4s ease-in-out .15s infinite skel-pulse}.skel-title{border-radius:10px;width:min(320px,70%);height:30px}.skel-line{border-radius:8px;width:min(520px,90%);height:14px}.skel-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;display:grid}.skel-card{height:96px}.skel-block{height:220px}@keyframes nav-progress-grow{0%{transform:scaleX(.05)}to{transform:scaleX(.85)}}.nav-progress{z-index:100;background:var(--brand);transform-origin:0;pointer-events:none;opacity:0;height:3px;animation:.15s .15s forwards page-loading-in,8s cubic-bezier(.1,.7,.2,1) .15s forwards nav-progress-grow;position:fixed;inset-block-start:0;inset-inline:0}html[dir=rtl] .nav-progress{transform-origin:100%}@media (prefers-reduced-motion:reduce){.skel{animation:none}.nav-progress{animation:.15s .15s forwards page-loading-in;transform:none}}
.th-card{margin-bottom:16px}.th-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;margin-bottom:12px;display:flex}.th-head h3{margin:0}.th-now{background:var(--ok);color:#fff;white-space:nowrap;border-radius:999px;align-items:center;margin-inline-start:6px;padding:0 7px;font-size:10px;font-weight:800;line-height:17px;display:inline-flex}.th-tag{white-space:nowrap;border-radius:999px;align-self:flex-start;align-items:center;padding:0 8px;font-size:11px;font-weight:700;line-height:18px;display:inline-flex}.th-tag-cover{background:var(--warn-bg);color:var(--warn-ink);border:1px dashed var(--warn)}html[data-theme=dark] .th-tag-cover{color:#fbbf24;border-color:#fbbf24}.th-strip{scroll-snap-type:x proximity;gap:10px;padding-bottom:4px;display:flex;overflow-x:auto}.th-strip>.th-item{scroll-snap-align:start;flex:none;width:172px}.th-week{flex-direction:column;gap:8px;display:flex}.th-day{border:1px solid var(--border);border-radius:12px;grid-template-columns:120px minmax(0,1fr);gap:10px;padding:8px;display:grid}.th-day.today{border-color:var(--brand)}.th-day-label{flex-direction:column;justify-content:center;align-items:flex-start;gap:2px;font-size:13px;display:flex}.th-day-items{grid-template-columns:repeat(auto-fill,minmax(136px,1fr));align-items:stretch;gap:8px;min-width:0;display:grid}.th-off{grid-column:1/-1;margin:0 0 6px}.th-item{border:1px solid var(--border);background:var(--surface-2);min-width:0;color:var(--text);font:inherit;text-align:start;cursor:pointer;border-radius:10px;flex-direction:column;gap:2px;padding:8px 10px;font-size:13px;text-decoration:none;transition:background .12s,border-color .12s;display:flex}a.th-item:hover,button.th-item:hover{background:var(--hover);border-color:var(--hover-line)}.th-item:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.th-item.later{cursor:default;opacity:.6}.th-time{color:var(--muted);font-variant-numeric:tabular-nums;justify-content:space-between;align-items:center;gap:6px;font-size:11px;display:flex}.th-subject{overflow-wrap:anywhere;align-items:center;gap:5px;display:flex}.th-meta{color:var(--muted);overflow-wrap:anywhere;font-size:12px}.th-clamp{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.th-mark{flex:none}.th-item.th-cover{border-style:dashed;border-color:var(--warn)}.th-item.th-meeting{background:#9a72ef1a;border-color:#9a72ef80}.th-item.th-meeting .th-subject{color:#6d4bd1}html[data-theme=dark] .th-item.th-meeting{background:#9a72ef29}html[data-theme=dark] .th-item.th-meeting .th-subject{color:#c4b1ff}button.th-item.th-meeting:hover{border-color:var(--brand-2);background:#9a72ef2e}.th-item.current,button.th-item.current:hover,a.th-item.current:hover{background:var(--ok-bg);border:1px solid var(--ok);box-shadow:inset 0 0 0 1px var(--ok)}.th-item.current .th-time{color:var(--ok-ink);font-weight:700}html[data-theme=dark] .th-item.current .th-time{color:#4ade80}.th-legend{color:var(--muted);flex-wrap:wrap;gap:6px 16px;margin-top:12px;font-size:12px;display:flex}.th-legend>span{align-items:center;gap:6px;display:inline-flex}.th-swatch{border:1px solid var(--border);border-radius:4px;width:12px;height:12px;display:inline-block}.th-swatch.now{background:var(--ok-bg);border:2px solid var(--ok)}.th-swatch.cover{background:var(--warn-bg);border:1px dashed var(--warn)}.th-swatch.meeting{border-color:var(--brand-2);background:#9a72ef2e}.th-caption{margin:6px 0 0;font-size:12px}.th-dialog{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);width:min(580px,100vw - 32px);max-height:calc(100dvh - 32px);color:var(--text);box-shadow:var(--shadow);padding:0}.th-dialog::backdrop{background:#0f172a80}.th-dialog-panel{padding:16px 18px}.th-dialog-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.th-dialog-head h3{overflow-wrap:anywhere;margin:6px 0 0}.th-dialog-kind{color:#6d4bd1;background:#9a72ef24;border-radius:999px;align-items:center;gap:6px;padding:2px 10px;font-size:12px;font-weight:700;display:inline-flex}html[data-theme=dark] .th-dialog-kind{color:#c4b1ff}.th-dialog-close{border:1px solid var(--border);background:var(--surface-2);width:34px;height:34px;color:var(--text);cursor:pointer;border-radius:10px;flex:none;place-items:center;display:inline-grid}.th-dialog-close:hover{background:var(--hover)}.th-dialog-close:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.th-facts{grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:10px;margin:0;display:grid}.th-facts>div{border:1px solid var(--border);background:var(--surface-2);border-radius:12px;min-width:0;padding:10px 12px}.th-facts>div.wide{grid-column:1/-1}.th-facts dt{color:var(--muted);margin-bottom:4px;font-size:12px;font-weight:700}.th-facts dd{overflow-wrap:anywhere;margin:0}.th-facts .mt-text,.th-facts p{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.th-sub{color:var(--muted);margin-top:2px;font-size:13px;display:block}.th-sub-inline{color:var(--muted);font-size:13px}.th-people{gap:4px;margin:0;padding:0;list-style:none;display:grid}.th-dialog-foot{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:14px;display:flex}.th-lessons tr.th-row-now>td{background:var(--ok-bg)}.th-lessons tr.th-row-now>td:first-child{box-shadow:inset 3px 0 0 var(--ok)}html[dir=rtl] .th-lessons tr.th-row-now>td:first-child{box-shadow:inset -3px 0 0 var(--ok)}.th-lessons td bdi{white-space:nowrap}.th-passes{margin-bottom:16px}.th-passes-none{margin:0 0 10px}.th-out{border:1px solid var(--warn);background:var(--warn-bg);border-radius:12px;gap:8px;margin-bottom:12px;padding:10px 12px;display:grid}.th-out-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.th-out-list>li{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 12px;display:flex}.th-out-who{flex-wrap:wrap;align-items:center;gap:4px 8px;min-width:0;display:inline-flex}.th-pass-new,.th-pass-day{margin-top:8px}.th-pass-new>summary,.th-pass-day>summary{cursor:pointer;padding:6px 0;font-weight:600}.th-pass-new>summary{border:1px solid var(--brand);color:var(--brand-ink);border-radius:999px;align-items:center;gap:6px;padding:6px 14px;list-style:none;display:inline-flex}.th-pass-new>summary::-webkit-details-marker{display:none}.th-pass-new>summary:before{content:"+";font-weight:800}.th-pass-new[open]>summary{background:var(--hover)}html[data-theme=dark] .th-pass-new>summary{color:var(--text)}.th-pass-form{border:1px solid var(--border);background:var(--surface-2);border-radius:12px;margin-top:10px;padding:12px}@media (max-width:640px){.th-day{grid-template-columns:1fr}.th-day-label{flex-direction:row;align-items:center;gap:8px}.th-strip>.th-item{width:150px}.th-dialog-panel{padding:14px}}a.homeroom-rate{color:inherit;border-radius:12px;margin:-6px -10px;padding:6px 10px;text-decoration:none;transition:background .12s}a.homeroom-rate:hover{background:var(--hover)}a.homeroom-rate:hover strong{text-underline-offset:4px;text-decoration:underline}.th-head-title{flex-wrap:wrap;align-items:baseline;gap:4px 10px;min-width:0;display:flex}.th-head-title h3{margin:0}.th-views{margin-inline-start:auto}.th-views a{white-space:nowrap}.th-views a:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}@media (max-width:640px){.th-views{width:100%;margin-inline-start:0;display:flex}.th-views a{text-align:center;flex:1}}
:root{--cv-free-bg:var(--ok-bg);--cv-free-ink:var(--ok);--cv-free-line:#15803d66;--cv-free-hover:#15803d29}html[data-theme=dark]{--cv-free-ink:#4ade80;--cv-free-line:#4ade8066;--cv-free-hover:#4ade8029}.cv-step-title{flex-wrap:wrap;align-items:center;gap:10px;margin:0;font-size:18px;display:flex}.cv-step-no{background:linear-gradient(135deg, var(--brand), var(--brand-2));color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:26px;height:26px;font-size:14px;font-weight:700;display:inline-flex}.cv-step-next{box-shadow:none;border-style:dashed}.cv-step-next .cv-step-no{background:var(--surface-2);color:var(--muted);border:1px solid var(--border)}.cv-day-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.cv-day-nav{flex-wrap:wrap;gap:8px;display:flex}.cv-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.cv-head h3{margin:0}.cv-recorded{border:1px solid var(--border);background:var(--surface-2);border-radius:12px;margin-bottom:16px;padding:12px 14px}.cv-recorded p{margin:0 0 8px}.cv-recorded .cv-absent-list{margin-bottom:10px}.cv-teachers{border:1px solid var(--border);border-radius:12px;min-width:0;margin:0 0 14px;padding:10px 12px 12px}.cv-teachers legend{padding:0 6px;font-size:13px;font-weight:600}.cv-filter{margin-bottom:10px}.cv-picks{grid-template-columns:repeat(auto-fill,minmax(min(220px,100%),1fr));gap:8px;max-height:360px;padding:2px;display:grid;overflow-y:auto}.cv-pick{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:12px;align-items:center;gap:8px;min-width:0;padding:8px 10px;display:flex}.cv-pick[hidden]{display:none}.cv-pick:hover{background:var(--hover)}.cv-pick.on{border-color:var(--brand);box-shadow:0 0 0 3px #3b82f633}.cv-pick input{flex:none;width:auto}.cv-pick>span:not(.badge){flex-direction:column;flex:1;min-width:0;display:flex}.cv-pick strong,.cv-pick small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cv-actions{align-items:center}.cv-absent-list{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.cv-absent-list li{border:1px solid var(--border);background:var(--surface);border-radius:14px;align-items:center;gap:8px;min-width:0;max-width:100%;padding-block:6px;padding-inline:6px 12px;display:flex}.cv-absent-list li>span{flex-direction:column;min-width:0;line-height:1.25;display:flex}.cv-absent-list small{overflow-wrap:anywhere}.cv-remove{color:var(--danger-ink);margin-inline-start:4px;font-size:12px}.cv-others{margin:12px 0 0;font-size:13px}.cv-step .alert{margin:12px 0}.cv-strip{grid-template-columns:repeat(auto-fill,minmax(min(210px,100%),1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.cv-need{border:1px solid var(--border);border-inline-start:4px solid var(--warn);background:var(--surface-2);border-radius:12px;flex-direction:column;gap:4px;min-width:0;padding:10px 12px;font-size:13px;display:flex}.cv-need.done{border-inline-start-color:var(--cv-free-ink)}.cv-need .badge{align-self:flex-start}.cv-time{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.cv-absent-name{font-size:12px}.cv-by{color:var(--cv-free-ink);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 10px;font-weight:600;display:flex}.cv-by .linkish{color:var(--danger-ink);font-size:12px}.cv-legend{color:var(--muted);gap:12px;font-size:12px;display:flex}.cv-legend span{align-items:center;gap:6px;display:inline-flex}.cv-swatch{border:1px solid var(--border);border-radius:4px;width:14px;height:14px;display:inline-block}.cv-swatch.free{background:var(--cv-free-bg);border-color:var(--cv-free-line)}.cv-swatch.busy{background:var(--surface-2)}.cv-hint{margin-bottom:10px;font-size:13px}.cv-board-wrap{border:1px solid var(--border);border-radius:12px;overflow-x:auto}.cv-board-wrap::-webkit-scrollbar{height:10px}.cv-board-wrap::-webkit-scrollbar-track{background:var(--surface-2);border-radius:0 0 12px 12px}.cv-board-wrap::-webkit-scrollbar-thumb{background:var(--border);border:2px solid var(--surface-2);border-radius:999px}@supports not selector(::-webkit-scrollbar){.cv-board-wrap{scrollbar-width:thin}}.cv-board-nav{justify-content:space-between;gap:8px;margin-bottom:8px;display:flex}.cv-board-nav .btn:disabled{visibility:hidden}.cv-board-frame{position:relative}.cv-board-scroll.more-end .cv-board-frame:after,.cv-board-scroll.more-start .cv-board-frame:before{content:"";z-index:3;pointer-events:none;width:36px;position:absolute;top:1px;bottom:11px}.cv-board-scroll.more-end .cv-board-frame:after{background:linear-gradient(to left, var(--surface), transparent);inset-inline-end:1px}.cv-board-scroll.more-start .cv-board-frame:before{background:linear-gradient(to right, var(--surface), transparent);inset-inline-start:201px}html[dir=rtl] .cv-board-scroll.more-end .cv-board-frame:after{background:linear-gradient(to right, var(--surface), transparent)}html[dir=rtl] .cv-board-scroll.more-start .cv-board-frame:before{background:linear-gradient(to left, var(--surface), transparent)}.cv-board{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%}.cv-board th,.cv-board td{border-bottom:1px solid var(--border);vertical-align:middle;padding:6px}.cv-board tbody tr:last-child>*{border-bottom:0}.cv-board thead th{text-align:center;text-transform:none;letter-spacing:0;background:var(--surface-2);white-space:nowrap}.cv-board tbody th{text-transform:none;letter-spacing:0;color:var(--text);font-size:14px}.cv-board thead th.cv-col-need{box-shadow:inset 0 -3px 0 var(--warn)}.cv-board td{width:104px;min-width:104px}.cv-board .cv-who{z-index:1;background:var(--surface);border-inline-end:1px solid var(--border);text-align:start;width:200px;min-width:200px;max-width:200px;position:sticky;inset-inline-start:0}.cv-board thead .cv-who{z-index:2;background:var(--surface-2)}.cv-board tbody tr:hover>td{background:0 0}.cv-board tbody tr:hover>.cv-who{background:var(--surface-2)}.cv-person{align-items:center;gap:8px;min-width:0;display:flex}.cv-person>span{flex-direction:column;min-width:0;font-weight:400;line-height:1.3;display:flex}.cv-person strong,.cv-person small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cv-person small{font-size:12px}.cv-load{color:var(--text);font-weight:600}.cv-busy,.cv-free{text-align:start;border-radius:10px;flex-direction:column;justify-content:center;align-items:flex-start;gap:1px;width:100%;min-height:52px;padding:6px 8px;font-size:12px;line-height:1.3;display:flex}.cv-busy{background:var(--surface-2);border:1px solid var(--border);color:var(--muted)}.cv-busy+.cv-busy{margin-top:4px}.cv-busy strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:12px;overflow:hidden}.cv-busy.cover{border-style:dashed;border-color:var(--brand)}.cv-busy.meeting{border-style:dashed}.cv-busy.duty{border-style:dotted}.cv-tag{color:var(--brand-ink);font-size:11px;font-weight:700}html[data-theme=dark] .cv-tag{color:var(--brand)}.cv-free{background:var(--cv-free-bg);border:1px solid var(--cv-free-line);color:var(--cv-free-ink);font-weight:600}.cv-free small{align-items:center;gap:3px;font-weight:700;display:inline-flex}button.cv-pick,summary.cv-pick{font:inherit;cursor:pointer;border-width:2px;border-color:var(--cv-free-ink);font-size:12px;transition:background .12s,box-shadow .12s}button.cv-pick:hover,summary.cv-pick:hover,button.cv-pick:focus-visible,summary.cv-pick:focus-visible{background:var(--cv-free-hover);box-shadow:0 0 0 3px var(--cv-free-line)}.cv-choose summary{list-style:none}.cv-choose summary::-webkit-details-marker{display:none}.cv-options{flex-direction:column;gap:4px;margin-top:6px;display:flex}.cv-options .btn{flex-direction:column;align-items:flex-start;gap:0;width:100%;padding:5px 8px;font-size:12px}.cv-options .btn .muted{font-size:11px;font-weight:400}.cv-log-filters .row .btn{flex:none}.cv-log td{font-size:14px}.cv-nowrap{white-space:nowrap}.cv-small{font-size:12px}.cv-note{overflow-wrap:anywhere;max-width:260px}.cv-row-actions{text-align:end;white-space:nowrap}.cv-row-actions>*+*{margin-inline-start:6px}.cv-views{background:var(--surface);max-width:100%;margin-bottom:16px;overflow-x:auto}.cv-views a{white-space:nowrap;padding:7px 14px;font-weight:600}.cv-report-source{margin:8px 0 0;font-size:13px}.cv-report-totals{flex-wrap:wrap;gap:6px;display:flex}.cv-report td{vertical-align:middle}.cv-report-none{opacity:.65}.cv-report-count{min-width:110px}.cv-report-count strong{font-variant-numeric:tabular-nums;font-size:18px;display:block}.cv-report-bar{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;height:6px;margin-top:4px;display:block;overflow:hidden}.cv-report-bar i{background:var(--warn);border-radius:999px;height:100%;display:block}.cv-report-kinds{flex-wrap:wrap;gap:4px 6px;margin:0;padding:0;list-style:none;display:flex}.cv-report-kinds li{border:1px solid var(--border);background:var(--surface-2);white-space:nowrap;border-radius:999px;padding:1px 8px;font-size:12px}@media (max-width:640px){.cv-board .cv-who{width:132px;min-width:132px;max-width:132px}.cv-board .cv-who .avatar{display:none}.cv-board td{width:96px;min-width:96px}.cv-board-scroll.more-start .cv-board-frame:before{inset-inline-start:133px}.cv-day-nav .btn{flex:auto;justify-content:center}}.cv-busy.meeting strong{white-space:normal}.cv-group+.cv-group{margin-top:14px}.cv-group-name{margin:8px 0 6px;font-size:14px}a.cv-need-pick{color:inherit;border-bottom:1px dashed var(--brand);flex-wrap:wrap;align-items:baseline;gap:6px;text-decoration:none;display:inline-flex}a.cv-need-pick:hover strong{color:var(--brand)}.cv-need.chosen{border-color:var(--brand);box-shadow:0 0 0 2px color-mix(in srgb, var(--brand) 25%, transparent)}.cv-pick-card{border:1px solid var(--brand);scroll-margin-top:16px}.cv-free-list{counter-reset:cv-free;gap:6px;margin:8px 0 0;padding:0;list-style:none;display:grid}.cv-free-list li{border:1px solid var(--border);counter-increment:cv-free;border-radius:10px;grid-template-columns:auto auto 1fr auto auto;align-items:center;gap:10px;padding:8px 10px;display:grid}.cv-free-list li:before{content:counter(cv-free);min-width:18px;color:var(--muted);text-align:center;font-weight:700}.cv-free-list li.best{border-color:var(--cv-free-line);background:var(--cv-free-bg)}.cv-free-list li.full{opacity:.6}.cv-free-who{min-width:0;display:grid}.cv-free-who small{font-size:12px}.cv-week{background:var(--surface-2);white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-block}.cv-week.full{background:var(--warn-bg);color:var(--warn-ink)}.cv-who .cv-week{justify-self:start;margin-top:2px}.cv-free.capped{opacity:.55}.cv-free.capped small{font-size:11px}@media (max-width:640px){.cv-free-list li{grid-template-columns:auto auto 1fr}.cv-free-list li>.cv-week,.cv-free-list li>.btn,.cv-free-list li>.badge{grid-column:2/-1;justify-self:start}}.cv-fill{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;display:flex}.cv-fill p{flex:320px;margin:0}
:root{--dt-bg:#0d94881a;--dt-line:#0d948880;--dt-ink:#0f766e;--dt-solid:#0d9488}html[data-theme=dark]{--dt-bg:#2dd4bf24;--dt-line:#2dd4bf73;--dt-ink:#5eead4;--dt-solid:#2dd4bf}.dt-count{background:var(--surface-2);min-width:20px;color:var(--text);text-align:center;border-radius:999px;margin-inline-start:4px;padding:0 6px;font-size:12px;display:inline-block}.segmented a.active .dt-count{color:#fff;background:#ffffff3d}.dt-title{margin:0 0 6px}.dt-days{white-space:nowrap;flex-wrap:nowrap;max-width:100%;margin-bottom:14px;overflow-x:auto}.dt-places{gap:8px;margin:12px 0;padding:0;list-style:none;display:grid}.dt-places li{border:1px solid var(--border);border-radius:10px;flex-wrap:wrap;align-items:center;gap:10px 14px;padding:8px 12px;display:flex}.dt-rename{flex:260px;align-items:center;gap:8px;display:flex}.dt-rename input{flex:1;min-width:0}.dt-uses{font-size:13px}.dt-add-place{flex-wrap:wrap;align-items:flex-end;gap:10px;margin:12px 0;display:flex}.dt-add-label{flex:240px;gap:4px;display:grid}.dt-add-label span{font-size:13px;font-weight:600}.dt-break .cv-head h3{margin:0}.dt-table{border-collapse:collapse;width:100%}.dt-table th,.dt-table td{border-top:1px solid var(--border);vertical-align:middle;text-align:start;padding:10px 8px}.dt-place{width:200px;color:var(--dt-ink);text-transform:none;letter-spacing:normal;white-space:nowrap;font-size:14px;font-weight:700}.dt-place svg{vertical-align:-2px}.dt-cell{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.dt-chip{border:1px solid var(--dt-line);background:var(--dt-bg);border-radius:999px;align-items:center;gap:6px;padding:4px 6px 4px 4px;display:inline-flex}.dt-chip.clash{border-color:var(--warn)}.dt-remove{color:var(--muted);padding:0 6px;font-size:18px;line-height:1}.dt-remove:hover{color:var(--danger,#b91c1c)}.dt-choose{position:relative}.dt-break:has(.dt-choose[open]){z-index:30;position:relative}.dt-choose summary{cursor:pointer;list-style:none}.dt-choose summary::-webkit-details-marker{display:none}.dt-options{z-index:20;inset-inline-start:0;border:1px solid var(--border);background:var(--surface);border-radius:12px;gap:2px;width:min(340px,80vw);max-height:320px;padding:6px;display:grid;position:absolute;top:calc(100% + 6px);overflow-y:auto;box-shadow:0 12px 30px #0f172a2e}.dt-option{width:100%;color:inherit;font:inherit;text-align:start;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;padding:6px 8px;display:flex}.dt-option:hover,.dt-option:focus-visible{background:var(--dt-bg)}.dt-option span{display:grid}.dt-option small{font-size:12px}.dt-stale{gap:6px;padding:0;list-style:none;display:grid}.dt-stale li{flex-wrap:wrap;align-items:center;gap:6px;display:flex}@media (max-width:640px){.dt-place{white-space:normal;width:auto}.dt-table th,.dt-table td{border-top:0;padding:6px 4px;display:block}.dt-table tr{border-top:1px solid var(--border);padding:6px 0;display:block}}.th-item.th-duty{background:var(--dt-bg);border-color:var(--dt-line);border-inline-start:4px solid var(--dt-solid);cursor:default}.th-item.th-duty .th-subject{color:var(--dt-ink)}.th-tag-duty{background:var(--dt-bg);color:var(--dt-ink)}.th-swatch.duty{background:var(--dt-bg);border:1px solid var(--dt-solid)}.lesson.duty{border-inline-start-color:var(--dt-solid);background:var(--dt-bg)}.lesson.duty strong{color:var(--dt-ink)}.th-item.th-duty.current{background:var(--ok-bg);border:1px solid var(--ok);border-inline-start:4px solid var(--ok);box-shadow:inset 0 0 0 1px var(--ok)}.lesson.duty.current{border-color:var(--ok);background:var(--ok-bg);box-shadow:0 0 0 2px #15803d40}
:root{--rl-bg:#4f46e514;--rl-line:#4f46e573;--rl-ink:#4338ca;--rl-solid:#4f46e5}html[data-theme=dark]{--rl-bg:#818cf824;--rl-line:#818cf873;--rl-ink:#a5b4fc;--rl-solid:#818cf8}.rl-banner{background:var(--rl-bg);border:1px solid var(--rl-line);color:var(--text);flex-wrap:wrap;align-items:center;gap:6px 12px;margin-bottom:14px;display:flex}.rl-banner strong{color:var(--rl-ink)}.rl-banner .btn{margin-inline-start:auto}.rl-title{align-items:center;gap:8px;margin:0 0 8px;display:flex}.rl-today{font-size:11px}.rl-status-head{align-items:flex-start;gap:12px;margin-bottom:8px;display:flex}.rl-status-head h2{margin:0}.rl-dot{background:var(--rl-solid);width:14px;height:14px;box-shadow:0 0 0 5px var(--rl-bg);border-radius:50%;flex:none;margin-top:6px}.rl-dot.off{background:var(--muted);box-shadow:0 0 0 5px var(--surface-2)}.rl-start{justify-items:start;gap:14px;display:grid}.rl-scope{border:0;gap:8px;margin:0;padding:0;display:grid}.rl-scope legend{margin-bottom:6px;font-weight:600}.rl-radio,.rl-grade{cursor:pointer;align-items:center;gap:6px;display:inline-flex}.rl-radio input,.rl-grade input{flex:none;width:auto;min-height:0;margin:0;padding:0}.rl-radio,.rl-grade{font-size:14px;font-weight:400}.rl-grades{flex-wrap:wrap;gap:6px;padding-inline-start:24px;display:flex}.rl-grade{border:1px solid var(--border);background:var(--surface);border-radius:999px;padding:4px 10px}.rl-grade:has(input:checked){border-color:var(--rl-solid);background:var(--rl-bg);color:var(--rl-ink)}.rl-missing{gap:8px;margin:0;padding:0;list-style:none;display:grid}.rl-missing li{flex-wrap:wrap;gap:4px 10px;display:flex}.rl-lessons{gap:8px;margin:0;padding:0;list-style:none;display:grid}.rl-lessons li{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:6px 10px;padding:8px 0;display:flex}.rl-lessons li:first-child{border-top:0}.rl-lessons li>.btn{margin-inline-start:auto}.rl-time{font-variant-numeric:tabular-nums;min-width:92px;color:var(--muted)}.rl-chip{background:var(--rl-bg);color:var(--rl-ink);border:1px solid var(--rl-line);overflow-wrap:anywhere;border-radius:999px;align-items:center;gap:4px;max-width:100%;padding:1px 8px;font-size:12px;text-decoration:none;display:inline-flex}.rl-chip.rl-wait{background:0 0;border-style:dashed}.rl-chip.muted{color:var(--muted);border-color:var(--border);background:0 0}a.rl-chip:hover{background:var(--rl-bg);border-style:solid}.th-tag.rl-tag{background:var(--rl-bg);color:var(--rl-ink);border:1px solid var(--rl-line)}.rl-join-box{flex-direction:column;align-items:flex-start;gap:4px;display:inline-flex}.rl-join{background:var(--rl-solid);border-color:var(--rl-solid)}.rl-meta{color:var(--muted);overflow-wrap:anywhere;font-size:12px}.rl-warning{margin-bottom:14px}.rl-form{gap:10px;max-width:560px;display:grid}.rl-form .field input,.rl-form .field select{width:100%}.rl-form>.btn{justify-self:start}.rl-pair{grid-template-columns:1fr 1fr;gap:10px;display:grid}.rl-current{align-items:center;gap:10px;margin-bottom:10px;display:flex}.rl-days{gap:6px;margin:0 0 12px;padding:0;list-style:none;display:grid}.rl-days li{flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.rl-tile .rl-lessons{margin-top:8px}@media (max-width:560px){.rl-pair{grid-template-columns:1fr}.rl-banner .btn,.rl-lessons li>.btn{margin-inline-start:0}}.lh-tile.rl-tile{border-color:var(--rl-line);box-shadow:inset 4px 0 0 var(--rl-solid)}[dir=rtl] .lh-tile.rl-tile{box-shadow:inset -4px 0 0 var(--rl-solid)}
.pr-step{background:linear-gradient(135deg, var(--brand), var(--brand-2));color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:26px;height:26px;font-size:13px;font-weight:700;display:inline-flex}.pr-gap{margin-top:12px}.pr-gap-b{margin-bottom:12px}.pr-kinds{grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.pr-kind{border:1px solid var(--border);background:var(--surface);height:100%;color:var(--text);border-radius:12px;align-items:flex-start;gap:12px;padding:14px;text-decoration:none;transition:background .12s,border-color .12s;display:flex}.pr-kind:hover,.pr-kind:focus-visible{background:var(--hover);border-color:var(--hover-line)}.pr-kind-icon{background:var(--hover);width:36px;height:36px;color:var(--brand-ink);border-radius:10px;flex:none;justify-content:center;align-items:center;display:inline-flex}.pr-kind-text{overflow-wrap:anywhere;flex-direction:column;gap:2px;min-width:0;display:flex}.pr-kind-text .muted{font-size:13px}.pr-route{color:var(--muted);align-items:baseline;gap:6px;margin-top:4px;font-size:12px;font-weight:600;display:inline-flex}.pr-route:before{content:"";background:var(--warn);border-radius:50%;flex:none;width:6px;height:6px;transform:translateY(-1px)}.pr-chosen{border:1px solid var(--brand);background:var(--hover);border-radius:12px;flex-wrap:wrap;align-items:center;gap:12px;padding:10px 12px;display:flex}.pr-chosen .pr-kind-text{flex:180px}.pr-chips{flex-wrap:wrap;align-items:center;gap:6px;margin-top:12px;font-size:13px;display:flex}.pr-chip{border:1px solid var(--border);background:var(--surface-2);color:var(--text);border-radius:999px;padding:3px 10px;font-weight:600;text-decoration:none;display:inline-block}.pr-chip:hover,.pr-chip.on{background:var(--hover-strong);border-color:var(--brand)}.pr-results{grid-template-columns:repeat(auto-fill,minmax(min(240px,100%),1fr));gap:8px;margin:12px 0 0;padding:0;list-style:none;display:grid}.pr-result{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:10px;align-items:center;gap:10px;padding:8px 10px;text-decoration:none;display:flex}.pr-result:hover,.pr-result:focus-visible{background:var(--hover);border-color:var(--hover-line)}.pr-when{margin-top:4px}.pr-plan{grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:16px;margin-bottom:14px;display:grid}.pr-plan-col{min-width:0}.pr-plan-col h4{margin:0 0 8px;font-size:14px}.pr-day{gap:6px;margin:0;padding:0;list-style:none;display:grid}.pr-day-item{border:1px solid var(--border);border-inline-start:4px solid var(--muted);background:var(--surface-2);border-radius:10px;grid-template-columns:auto 1fr auto;align-items:center;gap:4px 10px;padding:8px 10px;font-size:13px;display:grid}.pr-day-item.meeting{border-inline-start-color:var(--brand)}.pr-day-item.cover{border-inline-start-color:var(--warn)}.pr-day-time{font-variant-numeric:tabular-nums;font-weight:700}.pr-day-what{overflow-wrap:anywhere;min-width:0}.pr-day-kind{color:var(--muted);font-size:12px}.pr-slots label{background:var(--ok-bg);border-color:color-mix(in srgb, var(--ok) 35%, transparent);font-variant-numeric:tabular-nums}.pr-slots label:hover{background:var(--ok-bg);border-color:var(--ok)}.pr-slots label:has(input:checked){background:var(--ok-bg);border-color:var(--ok);box-shadow:0 0 0 1px var(--ok) inset;color:var(--ok-ink)}.pr-send{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:4px;display:flex}.pr-list-reason{background:var(--danger-bg);border-inline-start:3px solid var(--danger);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:8px;padding:8px 10px;font-size:13px;display:block}.pr-request{border-inline-start:4px solid var(--brand)}.pr-request-facts{grid-template-columns:repeat(auto-fit,minmax(min(180px,100%),1fr));gap:10px 16px;margin:0;display:grid}.pr-request-facts dt{color:var(--muted);margin-bottom:2px;font-size:12px;font-weight:700}.pr-request-facts dd{overflow-wrap:anywhere;min-width:0;margin:0}.pr-decide{border-inline-start:4px solid var(--warn)}@media (max-width:560px){.pr-kind{padding:12px}.pr-day-item{grid-template-columns:auto 1fr}.pr-day-kind{grid-column:2}.pr-send .btn{justify-content:center;width:100%}}
.main:has(.chat){max-width:1280px;padding-block:20px}.chat{height:calc(100vh - 40px - var(--shell-topbar-space,0px));height:calc(100dvh - 40px - var(--shell-topbar-space,0px));background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);min-height:520px;box-shadow:var(--shadow);grid-template-columns:minmax(280px,360px) minmax(0,1fr);display:grid;overflow:hidden}.chat.chat-solo{grid-template-columns:minmax(0,1fr)}.chat-side{border-inline-end:1px solid var(--border);flex-direction:column;min-width:0;min-height:0;display:flex}.chat-side-head{justify-content:space-between;align-items:center;gap:8px;padding:16px 16px 10px;display:flex}.chat-side-head h1{margin:0;font-size:22px}.chat-side-actions{align-items:center;gap:8px;display:flex}.chat-side>.alert{margin:0 16px 10px}.chat-tools{border-bottom:1px solid var(--border);gap:10px;padding:0 16px 12px;display:grid}.chat-search{border:1px solid var(--border);background:var(--surface-2);color:var(--muted);border-radius:999px;align-items:center;gap:8px;padding-inline:12px;display:flex}.chat-search:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px var(--hover)}.chat-search input,.chat-search input:hover:not(:disabled){background:0 0;border:0;border-radius:0;min-width:0;padding:9px 0}.chat-search input:focus-visible{outline:none}.chat-chips{flex-wrap:wrap;gap:6px;display:flex}.chat-chip{font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:999px;padding:5px 12px;font-size:13px;font-weight:600;transition:background .12s,border-color .12s}.chat-chip:hover{background:var(--hover);border-color:var(--hover-line)}.chat-chip.on,.chat-chip.on:hover{background:var(--brand);border-color:var(--brand);color:#fff}.chat-rows{flex:1;min-height:0;margin:0;padding:4px 0;list-style:none;overflow-y:auto}.chat-row{color:inherit;border-inline-start:3px solid #0000;align-items:flex-start;gap:12px;padding:12px 16px;text-decoration:none;transition:background .12s;display:flex}.chat-row:hover{background:var(--hover)}.chat-row.active,.chat-row.active:hover{background:var(--hover-strong);border-inline-start-color:var(--brand)}.chat-row-main{flex:1;gap:1px;min-width:0;display:grid}.chat-row-line{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.chat-row-name,.chat-row-sub,.chat-row-preview{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.chat-row-name{font-weight:600}.chat-row-time{color:var(--muted);flex:none;font-size:12px}.chat-row-sub{color:var(--muted);font-size:12px}.chat-row-preview{color:var(--muted);font-size:13px}.chat-row-preview .icon{vertical-align:-2px;margin-inline-end:3px}.chat-row.unread .chat-row-name,.chat-row.unread .chat-row-preview{color:var(--text);font-weight:700}.chat-row.unread .chat-row-time{color:var(--brand);font-weight:700}.chat-count{background:var(--brand);color:#fff;border-radius:999px;flex:none;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 6px;font-size:12px;font-weight:700;display:inline-flex}.chat-none{margin:0;padding:24px 16px}.chat-pane{background:var(--surface);flex-direction:column;min-width:0;min-height:0;display:flex}.chat-thread{flex-direction:column;flex:1;min-height:0;display:flex}.chat-head{border-bottom:1px solid var(--border);background:var(--surface);align-items:center;gap:12px;padding:12px 16px;display:flex}.chat-head-text{min-width:0;display:grid}.chat-head-text strong,.chat-head-text .muted{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chat-head-text .muted{font-size:13px}.chat-round{border:1px solid var(--border);background:var(--surface);width:42px;height:42px;color:var(--text);cursor:pointer;border-radius:50%;flex:none;justify-content:center;align-items:center;text-decoration:none;transition:background .12s,border-color .12s,filter .12s;display:inline-flex}.chat-round:hover{background:var(--hover);border-color:var(--hover-line)}.chat-side-head .chat-round,.chat-head .chat-round{width:38px;height:38px}.chat-back{width:38px;height:38px;color:var(--text);border-radius:50%;flex:none;justify-content:center;align-items:center;margin-inline-start:-6px;display:none}.chat-back.always{display:inline-flex}.chat-back:hover{background:var(--hover)}html[dir=rtl] .chat-flip{transform:scaleX(-1)}.chat-note{background:var(--warn-bg);color:var(--warn-ink);margin:0;padding:8px 16px;font-size:13px}.chat-scroll{background:var(--surface-2);flex-direction:column;flex:1;min-height:0;padding:8px 16px 16px;display:flex;overflow-y:auto}.chat-scroll:before{content:"";flex:1 0 0}.chat-start{text-align:center;margin:24px 0 0}.chat-day{flex-direction:column;display:flex}.chat-day-sep{color:var(--muted);align-items:center;gap:10px;margin:14px 0 4px;font-size:12px;font-weight:600;display:flex}.chat-day-sep:before,.chat-day-sep:after{content:"";background:var(--border);flex:1;height:1px}.chat-run{flex-direction:column;gap:3px;max-width:min(78%,560px);margin-top:10px;display:flex}.chat-run.mine{align-self:flex-end;align-items:flex-end}.chat-run.theirs{align-self:flex-start;align-items:flex-start}.chat-author{color:var(--muted);padding-inline:6px;font-size:12px;font-weight:600}.chat-bubble{border:1px solid var(--border);background:var(--surface);max-width:100%;color:var(--text);overflow-wrap:anywhere;border-radius:18px;padding:8px 12px}.chat-run.mine .chat-bubble{background:var(--brand);border-color:var(--brand);color:#fff}.chat-run.mine .chat-bubble:last-of-type{border-end-end-radius:6px}.chat-run.theirs .chat-bubble:last-of-type{border-end-start-radius:6px}.chat-bubble.pending{opacity:.65}.chat-bubble.bare,.chat-run.mine .chat-bubble.bare{background:0 0;border:0;padding:0}.chat-text{white-space:pre-wrap;margin:0}.chat-picture{display:block}.chat-picture img{object-fit:cover;background:var(--surface-2);border-radius:14px;max-width:min(280px,100%);max-height:260px;display:block}.chat-picture+.chat-text,.chat-file+.chat-text{margin-top:6px}.chat-file{border:1px solid var(--border);background:var(--surface-2);min-width:0;max-width:300px;color:var(--text);border-radius:12px;align-items:center;gap:10px;padding:8px 10px;text-decoration:none;display:flex}a.chat-file:hover{border-color:var(--hover-line)}.chat-file.off{opacity:.75}.chat-file-icon{background:var(--hover-strong);width:36px;height:36px;color:var(--brand);border-radius:10px;flex:none;justify-content:center;align-items:center;display:inline-flex}.chat-file-text{min-width:0;display:grid}.chat-file-text strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.chat-file-text small{opacity:.8;font-size:12px}.chat-run.mine .chat-file{color:#fff;background:#ffffff29;border-color:#ffffff59}.chat-run.mine .chat-file-icon{color:#fff;background:#ffffff38}.chat-meta{color:var(--muted);padding-inline:6px;font-size:11px}.chat-composer{border-top:1px solid var(--border);background:var(--surface);gap:8px;padding:10px 12px;display:grid}.chat-composer .chat-error{margin:0}.chat-compose-row{align-items:flex-end;gap:8px;display:flex}.chat-composer textarea{resize:none;border-radius:21px;flex:1;min-width:0;min-height:42px;max-height:160px;padding:10px 14px;line-height:1.4;overflow-y:auto}.chat-attach{position:relative}.chat-attach:focus-within{outline:2px solid var(--brand);outline-offset:2px}.chat-file-input{opacity:0;clip-path:inset(50%);width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.chat-send,.chat-send:hover{background:var(--brand);border-color:var(--brand);color:#fff}.chat-send:hover:not(:disabled){filter:brightness(1.08)}.chat-send:disabled{opacity:.45;cursor:not-allowed}.chat-picked{border:1px solid var(--border);background:var(--surface-2);border-radius:10px;align-items:center;gap:8px;min-width:0;padding:6px 10px;font-size:13px;display:flex}.chat-picked-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.chat-picked-remove{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;flex:none;padding:0 8px;font-size:20px;line-height:1.2}.chat-picked-remove:hover{background:var(--hover);color:var(--text)}.chat-blocked{margin:12px}.chat-empty{text-align:center;background:var(--surface-2);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:32px 16px;display:flex}.chat-empty h2{margin:0;font-size:18px}.chat-empty p{margin:0 0 8px}.chat-empty-icon{background:var(--hover-strong);width:64px;height:64px;color:var(--brand);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.chat-tabs{border-bottom:1px solid var(--border);gap:4px;margin-bottom:16px;display:flex;overflow-x:auto}.chat-tabs a{color:var(--muted);white-space:nowrap;border-bottom:2px solid #0000;padding:10px 14px;font-weight:600;text-decoration:none}.chat-tabs a:hover{background:var(--hover);color:var(--text)}.chat-tabs a.on{border-bottom-color:var(--brand);color:var(--text)}.chat-picker{gap:8px;display:grid}.chat-group h3{color:var(--muted);margin:8px 0 4px;font-size:13px}.chat-picker .chat-rows{padding:0;overflow:visible}.chat-picker .chat-row{border-inline-start:0;border-radius:10px;align-items:center;padding:10px}.nm-step .chat-chips{margin-bottom:10px}.chat-dept-name{margin:0 0 6px}.chat-people{flex-wrap:wrap;gap:6px;margin:8px 0 14px;padding:0;list-style:none;display:flex}.chat-people li{border:1px solid var(--border);background:var(--surface-2);border-radius:999px;align-items:center;gap:6px;padding-block:3px;padding-inline:3px 10px;font-size:13px;display:inline-flex}@media (max-width:767px){.main:has(.chat){padding-block:12px}.chat{height:auto;min-height:0;display:block;overflow:visible}.chat[data-open="1"] .chat-side,.chat[data-open="0"] .chat-pane{display:none}.chat-side{border-inline-end:0}.chat-rows{overflow:visible}.chat-pane{border-radius:var(--radius)}.chat-back{display:inline-flex}.chat-head{z-index:2;border-start-start-radius:var(--radius);border-start-end-radius:var(--radius);position:sticky;top:0}.chat-scroll{min-height:55vh;padding-inline:12px;overflow:visible}.chat-run{max-width:86%}.chat-composer{z-index:2;border-end-end-radius:var(--radius);border-end-start-radius:var(--radius);position:sticky;bottom:0}.chat-empty{border-radius:var(--radius)}}
.hub-courses{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.hub-courses>*{min-width:0}.hub-course{border-top:5px solid var(--course,var(--brand));flex-direction:column;gap:12px;display:flex;position:relative}.hub-course:has(>.hub-menu)>.hub-course-head{padding-inline-end:36px}.hub-course-new{box-shadow:0 0 0 2px var(--brand)}.hub-course-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.hub-course-head{min-width:0}.hub-course-head h3{overflow-wrap:anywhere;margin:0 0 4px;font-size:17px}.hub-course-head h3 a{color:var(--text);text-decoration:none}.hub-course-head h3 a:hover{color:var(--brand);text-decoration:underline}.hub-course-head p{overflow-wrap:anywhere;margin:0;font-size:13px}.hub-course-teacher{flex-wrap:wrap;align-items:center;gap:4px;margin-top:2px;display:flex}.hub-course .lg-count{text-decoration:none}.hub-course .lg-count:hover{box-shadow:0 0 0 3px var(--hover-line)}.hub-stats{flex-wrap:wrap;align-items:center;gap:8px 12px;font-size:13px;display:flex}.hub-actions{flex-wrap:wrap;gap:6px;margin-top:auto;display:flex}.hub-att{--tone:var(--muted);border:1px solid var(--border);border-inline-start:4px solid var(--tone);background:var(--surface);border-radius:10px;align-items:baseline;gap:6px;padding:4px 10px;font-size:13px;display:inline-flex}.hub-att strong{color:var(--tone);font-variant-numeric:tabular-nums;font-size:15px}.hub-att-label{color:var(--muted)}.hub-att.tone-ok{--tone:var(--ok);background:var(--ok-bg)}.hub-att.tone-warn{--tone:var(--warn);background:var(--warn-bg)}.hub-att.tone-danger{--tone:var(--danger);background:var(--danger-bg)}.hub-tabs{border:1px solid var(--border);background:var(--surface);scrollbar-width:thin;border-radius:12px;gap:4px;max-width:100%;margin:0 0 16px;padding:4px;display:flex;overflow-x:auto}.hub-tabs a{color:var(--text);white-space:nowrap;border-radius:9px;flex:none;padding:8px 14px;font-size:14px;font-weight:600;text-decoration:none;transition:background .12s}.hub-tabs a:hover{background:var(--hover)}.hub-tabs a.on{background:var(--hover-strong);color:var(--brand-ink);box-shadow:inset 0 -2px 0 var(--brand)}html[data-theme=dark] .hub-tabs a.on{color:var(--text)}.hub-note p{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.ov-table tr.hub-ov-mine>td{background:var(--hover)}.ov-table tr.hub-ov-mine>td:first-child{box-shadow:inset 4px 0 0 var(--brand)}html[dir=rtl] .ov-table tr.hub-ov-mine>td:first-child{box-shadow:inset -4px 0 0 var(--brand)}@media (max-width:640px){.ov-table tr.hub-ov-mine{border-color:var(--hover-line);background:var(--hover)}.ov-table tr.hub-ov-mine>td,.ov-table tr.hub-ov-mine>td:first-child,html[dir=rtl] .ov-table tr.hub-ov-mine>td:first-child{box-shadow:none;background:0 0}}@media (max-width:480px){.hub-courses{grid-template-columns:minmax(0,1fr)}.hub-actions .btn{flex:auto;justify-content:center}}.cm-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:16px;margin-bottom:16px;display:grid}.cm-title{margin:0 0 12px;font-size:17px}.cm-form{max-width:560px}.cm-hint{margin:0 0 12px;font-size:13px}.cm-colors{border:0;min-inline-size:0;margin:0 0 14px;padding:0}.cm-colors legend{margin-bottom:6px;padding:0;font-size:13px;font-weight:600}.cm-swatches{flex-wrap:wrap;gap:8px;display:flex}.cm-swatch{cursor:pointer;display:inline-flex;position:relative}.cm-swatch input{opacity:0;cursor:pointer;block-size:100%;inline-size:100%;margin:0;position:absolute;inset:0}.cm-swatch span{background:var(--swatch);border:2px solid var(--surface);block-size:30px;inline-size:30px;box-shadow:0 0 0 1px var(--border);border-radius:50%}.cm-swatch input:checked+span{box-shadow:0 0 0 3px var(--text)}.cm-swatch input:focus-visible+span{outline:2px solid var(--brand);outline-offset:3px}.cm-check{margin:0 0 6px}.cm-check input,.cm-table input[type=checkbox],.cm-found input[type=checkbox]{inline-size:auto}.cm-empty .btn{margin-top:4px}.cm-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:6px;display:flex}.cm-head .cm-title{margin:0}.cm-table{margin-bottom:12px}.cm-table .cm-pick{text-align:center;inline-size:36px}.cm-left{margin-inline-start:8px}.cm-learners,.cm-archive{margin-bottom:16px}.cm-add{border-top:1px solid var(--border);margin-top:18px;padding-top:14px}.cm-add h3{margin:0 0 10px;font-size:15px}.cm-search{align-items:flex-end;gap:8px;margin-bottom:10px}.cm-search .field{flex:240px;margin:0}.cm-found{gap:6px;margin:0 0 12px;padding:0;list-style:none;display:grid}.cm-found .checks{flex-wrap:wrap;font-weight:400}@media (max-width:480px){.cm-head .inline-form,.cm-head .btn,.cm-search .btn{justify-content:center;inline-size:100%}}.hub-menu{top:12px;z-index:2;position:absolute;inset-inline-end:12px}.hub-menu-btn{block-size:32px;inline-size:32px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:50%;justify-content:center;align-items:center;padding:0;display:inline-flex}.hub-menu-btn:hover,.hub-menu-btn[aria-expanded=true]{background:var(--hover);color:var(--text)}.hub-menu-btn:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.hub-menu-pop{top:calc(100% + 4px);border:1px solid var(--border);background:var(--surface);min-inline-size:220px;max-inline-size:calc(100vw - 48px);color:var(--text);box-shadow:var(--shadow);z-index:30;border-radius:12px;padding:4px;position:absolute;inset-inline-end:0}.hub-menu-row{display:block}.hub-menu-item{inline-size:100%;color:var(--text);font:inherit;text-align:start;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;padding:8px 10px;font-size:14px;text-decoration:none;display:flex}.hub-menu-item:hover,.hub-menu-item:focus-visible{background:var(--hover);outline:none}.hub-menu-item.danger{color:var(--danger-ink)}.hub-menu-item.danger:hover,.hub-menu-item.danger:focus-visible{background:var(--danger-bg)}.hub-menu-form{min-inline-size:260px;padding:10px}.hub-menu-form .field{margin-bottom:8px}.hub-menu-form .field span{font-size:13px;font-weight:600}.hub-menu-buttons{align-items:center;gap:6px}.hub-chips{flex-wrap:wrap;gap:6px;margin:0 0 6px;display:flex}.hub-chip{border:1px solid var(--border);background:var(--surface-2);border-radius:999px;align-items:center;gap:6px;padding:2px 8px;font-size:12px;font-weight:700;display:inline-flex}.hub-chip.archived{opacity:.6;text-decoration:line-through}.hub-chip-n{color:var(--muted);font-variant-numeric:tabular-nums;font-weight:600}.cm-sections{border:0;min-inline-size:0;margin:0 0 14px;padding:0}.cm-sections legend{margin-bottom:6px;padding:0;font-size:13px;font-weight:600}.cm-section-list{gap:6px;margin:0 0 8px;padding:0;list-style:none;display:grid}.cm-section-list li{align-items:center;gap:6px;display:flex}.cm-section-row{flex:auto;align-items:center;gap:8px;min-inline-size:0;display:flex}.cm-section-row input{max-inline-size:200px}.cm-section-no{inline-size:22px;color:var(--muted);text-align:center;font-variant-numeric:tabular-nums;font-size:13px;font-weight:600}.sec-sr{clip:rect(0 0 0 0);white-space:nowrap;block-size:1px;inline-size:1px;position:absolute;overflow:hidden}.sec-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.sec-row{border:1px solid var(--border);background:var(--surface-2);border-radius:12px;grid-template-columns:minmax(0,1fr) minmax(0,320px);gap:12px 20px;padding:14px;display:grid}.sec-row.archived{opacity:.75}.sec-main{min-inline-size:0}.sec-head{flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:8px;display:flex}.sec-head h3{margin:0;font-size:16px}.sec-code-box{gap:4px;display:grid}.sec-code-label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:700}.sec-code-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.sec-code{border:1px dashed var(--border);background:var(--surface);letter-spacing:.08em;-webkit-user-select:all;user-select:all;border-radius:10px;padding:6px 12px;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:22px;font-weight:700;display:inline-block}.sec-code-box .cm-hint{margin:0}.sec-actions{align-content:start;gap:8px;display:grid}.sec-rename{align-items:center;gap:6px;display:flex}.sec-rename input{flex:120px;min-inline-size:0;padding:6px 10px}.sec-buttons{align-items:center;gap:6px}.sec-add .row{align-items:flex-end}.sec-add .field{margin:0}@media (max-width:640px){.sec-row{grid-template-columns:minmax(0,1fr)}.sec-code{font-size:18px}.sec-buttons .inline-form,.sec-buttons .btn{justify-content:center;inline-size:100%}}.mb-filter{flex-wrap:wrap;gap:6px;margin:0 0 12px;display:flex}.mb-filter a{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.mb-filter a:hover{background:var(--hover)}.mb-filter a.on{background:var(--hover-strong);border-color:var(--brand);color:var(--brand-ink)}html[data-theme=dark] .mb-filter a.on{color:var(--text)}.mb-filter-n{color:var(--muted);font-variant-numeric:tabular-nums;font-weight:600}.mb-add{margin-bottom:16px}.mb-table th,.mb-table td{vertical-align:middle}.mb-person{align-items:center;gap:10px;display:inline-flex}.mb-name{color:var(--text);font-weight:600;text-decoration:none}.mb-name:hover{color:var(--brand);text-decoration:underline}.mb-gear-col{text-align:end;inline-size:44px}.mb-gear{display:inline-block;position:relative}.mb-gear>summary{block-size:32px;inline-size:32px;color:var(--muted);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;list-style:none;display:inline-flex}.mb-gear>summary::-webkit-details-marker{display:none}.mb-gear>summary:hover,.mb-gear[open]>summary{background:var(--hover);color:var(--text)}.mb-gear>summary:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.mb-gear-pop{top:calc(100% + 4px);z-index:30;border:1px solid var(--border);background:var(--surface);inline-size:240px;color:var(--text);box-shadow:var(--shadow);text-align:start;border-radius:12px;gap:10px;padding:10px;display:grid;position:absolute;inset-inline-end:0}.mb-move .field{margin-bottom:6px}.mb-move .field span{font-size:13px;font-weight:600}.mb-gear-pop .btn{justify-content:center;inline-size:100%}.join-card{max-inline-size:480px}.join-code{letter-spacing:.12em;text-align:center;text-transform:uppercase;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:24px;font-weight:700}.cm-section-item{gap:6px;display:grid}.cm-section-row{align-items:flex-start}.cm-section-row .cm-section-no{padding-top:28px}.cm-section-fields{flex:auto;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;min-inline-size:0;display:grid}.cm-section-fields .field{margin:0}.cm-section-fields .field span{margin-bottom:4px;font-size:12px;font-weight:600;display:block}.cm-section-fields input{inline-size:100%;max-inline-size:none}.cm-section-remove{margin-top:24px}.cm-pick{margin-inline-start:30px}.cm-pick>summary{cursor:pointer;color:var(--brand);font-size:13px;font-weight:600}.cm-pick-set{border:0;min-inline-size:0;margin:0 0 10px;padding:0}.cm-pick-set legend{margin-bottom:6px;padding:0;font-size:13px;font-weight:600}.cm-chips{flex-wrap:wrap;gap:6px;padding:6px 0 2px;display:flex}.cm-chip,.cm-chip-check{border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:4px 12px;font-size:13px;font-weight:600;display:inline-flex}.cm-chip:hover,.cm-chip-check:hover{background:var(--hover)}.cm-chip.on{background:var(--hover-strong);border-color:var(--brand);color:var(--brand-ink)}.cm-chip-check:has(input:checked){background:var(--hover-strong);border-color:var(--brand);color:var(--brand-ink)}html[data-theme=dark] .cm-chip.on{color:var(--text)}html[data-theme=dark] .cm-chip-check:has(input:checked){color:var(--text)}.cm-chip:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.cm-chip-check:has(input:focus-visible){outline:2px solid var(--brand);outline-offset:2px}.cm-chip-check input{opacity:0;pointer-events:none;block-size:1px;inline-size:1px;position:absolute}.mb-new{border:1px solid var(--border);background:var(--surface-2);border-radius:12px;margin-top:12px;padding:14px}.mb-new h3{margin:0 0 4px;font-size:15px}.mb-new-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;margin:10px 0 6px;display:grid}.mb-new-grid .field{margin:0}.mb-new-grid input,.mb-new-grid select{inline-size:100%}.mb-new .alert{margin:8px 0}.mb-new .pp-submit{flex-wrap:wrap;margin-top:10px}@media (max-width:640px){.cm-section-fields,.mb-new-grid{grid-template-columns:minmax(0,1fr)}.cm-section-row .cm-section-no,.cm-section-remove{margin-top:0;padding-top:0}}.hod-find{margin-bottom:16px}.hod-find-form label{margin-bottom:6px;display:block}.hod-find-form .row{flex-wrap:nowrap;align-items:center;gap:8px;max-width:480px;display:flex}.hod-find-form .row input{flex:1;width:auto;min-width:0}.hod-find-list{flex-wrap:wrap;gap:8px;margin:10px 0 0;padding:0;list-style:none;display:flex}.hod-find-list a{border:1px solid var(--border);border-radius:999px;padding:6px 12px;text-decoration:none;display:inline-block}.ct-teachers{margin-bottom:16px}.ct-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.ct-add{border:1px solid var(--border);border-radius:12px;margin:8px 0 12px;padding:10px 12px}.ct-found{gap:6px;margin:0;padding:0;list-style:none;display:grid}.ct-found li{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.ct-action-col{white-space:nowrap;text-align:end;inline-size:1%}.hub-cotag{vertical-align:middle;margin-inline-start:6px}
.fh-tiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:16px;display:grid}.fh-wide{grid-column:span 2}.fh-full{grid-column:1/-1}.fh-tile-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.fh-empty{margin:0}.fh-list>li{padding-block:6px}.fh-att{text-align:center;--tone:var(--muted);justify-content:space-between;align-items:center;gap:8px}.fh-att .lh-label{align-self:flex-start}.fh-att.tone-ok,.fh-week.tone-ok{--tone:var(--ok)}.fh-att.tone-warn,.fh-week.tone-warn{--tone:var(--warn)}.fh-att.tone-danger,.fh-week.tone-danger{--tone:var(--danger)}.fh-week{color:var(--tone,var(--muted));font-variant-numeric:tabular-nums}.fh-work-head{color:var(--text);border-radius:10px;flex-direction:column;gap:6px;margin:-6px;padding:6px;text-decoration:none;display:flex}.fh-work-head:hover{background:var(--hover)}.fh-work-list,.fh-points-list,.fh-lessons{gap:6px;margin:4px 0 0;padding:0;list-style:none;display:grid}.fh-work-item{color:var(--text);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"title due""where due";align-items:center;column-gap:8px;padding:6px 8px;text-decoration:none;display:grid}a.fh-work-item:hover{background:var(--hover)}.fh-work-title{text-overflow:ellipsis;white-space:nowrap;grid-area:title;font-size:14px;overflow:hidden}.fh-work-where{text-overflow:ellipsis;white-space:nowrap;grid-area:where;overflow:hidden}.fh-work-item .badge{white-space:nowrap;grid-area:due}.fh-points .lh-value{color:var(--brand-ink)}.fh-points-list li{align-items:flex-start;gap:8px;font-size:13px;display:flex}.fh-points-list .badge{text-align:center;flex:none;min-width:40px}.fh-points-why{flex-direction:column;min-width:0;line-height:1.3;display:flex}.fh-points-why small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fh-today-day{font-weight:600}.fh-lessons{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.fh-lesson{border:1px solid var(--border);border-inline-start:4px solid var(--border);background:var(--surface-2);border-radius:10px;flex-direction:column;gap:2px;min-width:0;padding:8px 10px;font-size:13px;display:flex;position:relative}.fh-lesson strong,.fh-lesson .muted{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fh-time{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;align-self:flex-start;font-size:11px}.fh-lesson.now{background:var(--ok-bg);border-color:var(--ok);border-inline-start-color:var(--ok);box-shadow:0 0 0 2px #15803d2e}.fh-lesson.now .fh-time{color:var(--ok-ink);font-weight:700}.fh-now{position:absolute;inset-block-start:6px;inset-inline-end:6px}.fh-meeting{color:var(--text);flex-wrap:wrap;align-items:center;gap:4px 8px;text-decoration:none;display:flex}.fh-meeting strong{text-overflow:ellipsis;white-space:nowrap;flex:1 0 100%;min-width:0;overflow:hidden}.fh-meeting .muted{white-space:nowrap;font-size:12px}.fh-meeting .badge{max-width:100%}.fh-request{align-self:flex-start;margin-top:auto}.fh-viewing{border:1px solid var(--border);background:var(--surface);border-radius:999px;align-items:center;gap:10px;min-width:0;padding:8px 14px;padding-inline-start:8px;display:flex}.fh-viewing>span{flex-direction:column;min-width:0;line-height:1.2;display:flex}.fh-viewing strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@media (max-width:960px){.fh-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.fh-tiles{grid-template-columns:minmax(0,1fr);gap:12px}.fh-wide{grid-column:auto}.fh-lessons{grid-template-columns:minmax(0,1fr)}.fh-viewing{border-radius:14px;width:100%}}.fam-back{margin-bottom:12px}html[dir=rtl] .fam-back-arrow{display:inline-block;transform:scaleX(-1)}.fam-viewing{border:1px solid var(--border);background:var(--surface);border-radius:999px;flex-wrap:wrap;align-items:center;gap:6px 12px;width:fit-content;max-width:100%;margin-bottom:16px;padding:6px 14px;font-size:13px;display:flex}.fam-viewing-who{overflow-wrap:anywhere;min-width:0}.fam-greet{margin:0 0 2px;font-weight:600}.fam-children{grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:16px;margin:0 0 16px;padding:0;list-style:none;display:grid}.fam-children form{height:100%}.fam-child{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);width:100%;height:100%;min-height:132px;box-shadow:var(--shadow);color:var(--text);font:inherit;text-align:start;cursor:pointer;align-items:center;gap:14px;padding:18px;text-decoration:none;transition:background .12s,border-color .12s;display:flex}.fam-child:hover{background:var(--hover);border-color:var(--hover-line)}.fam-child .avatar.lg{width:72px;height:72px;font-size:26px}.fam-child-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.fam-child-text strong{overflow-wrap:break-word;font-size:17px}.fam-child-id{white-space:nowrap;font-size:13px}.fam-child-open{color:var(--brand-ink);align-self:flex-start;align-items:center;gap:4px;margin-top:6px;font-size:13px;font-weight:700;display:inline-flex}.fam-add{box-shadow:none;background:0 0;border-style:dashed;border-width:2px}.fam-plus{background:var(--hover-strong);width:72px;height:72px;color:var(--brand-ink);border-radius:50%;flex:none;place-items:center;display:grid}.fam-waiting-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.fam-waiting-date{font-size:12px;display:block}.fam-add-form{max-width:520px}.fam-add-note{margin:12px 0 0;font-size:13px}.fam-banner{border-color:var(--brand);margin-bottom:16px}.fam-requests{gap:12px;margin:0;padding:0;list-style:none;display:grid}.fam-request{flex-wrap:wrap;align-items:flex-start;gap:12px;display:flex}.fam-request>.icon{color:var(--brand-ink);flex:none;margin-top:2px}.fam-request-text{overflow-wrap:anywhere;flex-direction:column;flex:260px;gap:2px;min-width:0;display:flex}.fam-request-hint{font-size:12px}.fam-request-actions{flex-wrap:wrap;gap:8px;display:flex}.fam-week .lesson.current{background:var(--ok-bg);border-color:var(--ok);border-inline-start-color:var(--ok);box-shadow:0 0 0 2px #15803d2e}.fam-week .lesson.current .time{color:var(--ok-ink);font-weight:700}.fam-week-note{margin:8px 0 0;font-size:12px}
.ld-week{text-align:end;flex-direction:column;align-items:flex-end;gap:2px;min-width:170px;display:flex}.ld-week small{color:var(--muted);font-size:12px}.ld-week strong{color:var(--brand-ink);font-variant-numeric:tabular-nums;font-size:34px;line-height:1.1}.ld-week>span{color:var(--muted);font-size:12px}.ld-week-form{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;margin-top:8px;display:flex}.ld-week-form label{color:var(--muted);font-size:12px}.ld-week-form input[type=number]{width:64px;padding:4px 8px}html[data-theme=dark] .ld-week strong{color:var(--text)}.ld-tiles{grid-template-columns:repeat(auto-fit,minmax(min(190px,100%),1fr));gap:14px;margin-bottom:16px;display:grid}.ld-tile{--tile-tint:#3b82f61f;--tile-ink:var(--brand-ink);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);min-width:0;box-shadow:var(--shadow);color:var(--text);flex-direction:column;gap:4px;padding:16px 18px;text-decoration:none;transition:background .12s,border-color .12s;display:flex}a.ld-tile:hover{background:var(--hover);border-color:var(--hover-line)}.ld-tile:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.ld-tile.t-staff{--tile-tint:#9a72ef24;--tile-ink:#6d4bd1}.ld-tile.t-courses{--tile-tint:var(--ok-bg);--tile-ink:var(--ok)}.ld-tile.t-meetings{--tile-tint:var(--warn-bg);--tile-ink:var(--warn)}.ld-tile.t-reports{--tile-tint:var(--danger-bg);--tile-ink:var(--danger)}html[data-theme=dark] .ld-tile{--tile-ink:var(--text)}html[data-theme=dark] .ld-tile.t-staff{--tile-ink:#c4b1ff}html[data-theme=dark] .ld-tile.t-courses{--tile-ink:#4ade80}html[data-theme=dark] .ld-tile.t-meetings{--tile-ink:#fbbf24}html[data-theme=dark] .ld-tile.t-reports{--tile-ink:#f87171}.ld-tile-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.ld-tile-label{color:var(--muted);font-size:13px;font-weight:700}.ld-tile-icon{background:var(--tile-tint);width:34px;height:34px;color:var(--tile-ink);border-radius:11px;flex:none;place-items:center;display:inline-grid}.ld-tile-value{font-variant-numeric:tabular-nums;font-size:34px;font-weight:800;line-height:1.1}.ld-tile-sub{color:var(--muted);font-size:12px}.ld-tile-badge{background:var(--warn-bg);color:var(--warn-ink);border-radius:999px;align-self:flex-start;padding:2px 10px;font-size:12px;font-weight:700}html[data-theme=dark] .ld-tile-badge{color:#fbbf24}.ld-tile-more{color:var(--brand-ink);align-items:center;gap:4px;margin-top:auto;padding-top:6px;font-size:13px;font-weight:700;display:inline-flex}html[data-theme=dark] .ld-tile-more{color:var(--text)}html[dir=rtl] .ld-chev{transform:scaleX(-1)}.ld-head-actions{align-items:center;gap:8px;display:flex}.ld-plus{background:linear-gradient(135deg, var(--brand), var(--brand-2));color:#fff;width:34px;height:34px;box-shadow:var(--shadow);border-radius:999px;place-items:center;text-decoration:none;transition:filter .12s;display:inline-grid}.ld-plus:hover{filter:brightness(1.08)}.ld-plus:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.ld-news-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.ld-news-list a{border:1px solid var(--border);background:var(--surface-2);min-width:0;color:var(--text);border-radius:12px;flex-direction:column;gap:2px;padding:10px 12px;text-decoration:none;transition:background .12s,border-color .12s;display:flex}.ld-news-list a:hover{background:var(--hover);border-color:var(--hover-line)}.ld-news-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;min-width:0;display:flex}.ld-news-head strong{overflow-wrap:anywhere;min-width:0}.ld-news-date{flex:none;font-size:12px}.ld-news-body{-webkit-line-clamp:2;line-clamp:2;color:var(--muted);overflow-wrap:anywhere;white-space:pre-line;-webkit-box-orient:vertical;font-size:13px;display:-webkit-box;overflow:hidden}.cal-actions{flex-wrap:wrap;align-items:center;gap:8px;max-width:100%;display:flex}.cal-official{align-items:center;gap:6px;display:inline-flex}.ay-cal-current{border:1px solid var(--border);background:var(--surface-2);border-radius:12px;flex-wrap:wrap;align-items:center;gap:10px 12px;margin-bottom:14px;padding:10px 12px;display:flex}.ay-cal-icon{width:36px;height:36px;color:var(--brand-ink);background:#3b82f61f;border-radius:11px;flex:none;place-items:center;display:inline-grid}html[data-theme=dark] .ay-cal-icon{color:var(--text)}.ay-cal-what{flex-direction:column;flex:200px;gap:2px;min-width:0;display:flex}.ay-cal-what strong,.ay-cal-url{overflow-wrap:anywhere}.ay-cal-size{font-size:13px;font-weight:400}.ay-cal-buttons{align-items:center;gap:8px;display:flex}.ay-cal-forms{grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:12px;display:grid}.ay-cal-box{border:1px solid var(--border);background:var(--surface-2);border-radius:12px;min-width:0;padding:12px 14px}.ay-cal-box h4{margin:0 0 4px}.ay-cal-hint{margin:0 0 10px;font-size:13px}.ay-cal-box input[type=file],.ay-cal-box input[type=url]{max-width:100%}@media (max-width:640px){.ld-week{text-align:start;align-items:flex-start;min-width:0}.ld-week-form{justify-content:flex-start}.ld-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.ld-tile{padding:12px 14px}.ld-tile-value{font-size:28px}.ld-tile-icon{width:30px;height:30px}}.ld-first{border-inline-start:4px solid var(--brand);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.ld-first h3{margin:0 0 4px}.ld-first p{margin:0}.split-bars{gap:10px;display:grid}.split-row{grid-template-columns:minmax(0,34%) minmax(0,1fr) auto;align-items:center;column-gap:10px;display:grid}.split-label{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.split-track{background:var(--surface-2);border-radius:7px;height:14px;display:flex;overflow:hidden}.split-part{height:100%;display:block}.split-value{font-variant-numeric:tabular-nums;font-size:12px;font-weight:800}.dept-subject+.dept-subject{border-top:1px solid var(--border);margin-top:16px;padding-top:14px}.dept-subject-head{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:8px;display:flex}.dept-subject-head strong{font-size:15px}.dept-note{margin:8px 0 0;font-size:12px}.dept-teachers{gap:8px;display:grid}.dept-teacher{background:var(--surface-2);color:var(--text);border-radius:14px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:10px 12px;text-decoration:none;display:grid}.dept-teacher:hover{box-shadow:var(--shadow)}.dept-teacher-name{min-width:0;display:grid}.dept-teacher-name strong{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.dept-teacher-name small{color:var(--muted);font-size:12px}.dept-teacher-stats{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.dept-teacher-go{color:var(--muted)}@media (max-width:560px){.dept-teacher{grid-template-columns:auto minmax(0,1fr) auto}.dept-teacher-stats{grid-area:2/2/auto/-1;justify-content:flex-start}.dept-teacher-go{grid-area:1/3}}.coming-text a{color:inherit;text-decoration:none}.coming-text a:hover strong{text-decoration:underline}html[dir=rtl] .dh-name,html[dir=rtl] .split-label{text-align:right}
.rpl-hero h1{margin:4px 0;font-size:22px}.rpl-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.rpl-mark{flex:none}.rpl-pending{border:1px solid var(--warn);background:var(--warn-bg);color:var(--warn-ink);border-radius:999px;align-items:center;gap:6px;margin-top:8px;padding:3px 12px;font-size:12px;font-weight:700;text-decoration:none;display:inline-flex}.rpl-pending:hover{filter:brightness(.97);text-decoration:underline}.rpl-pending:focus-visible{outline:2px solid var(--brand);outline-offset:2px}html[data-theme=dark] .rpl-pending{color:#fbbf24;border-color:#fbbf24}.rpl-filters{margin-bottom:16px}.rpl-types{max-width:100%;margin-bottom:12px;overflow-x:auto}.rpl-types a{white-space:nowrap}.rpl-form{grid-template-columns:repeat(auto-fit,minmax(min(150px,100%),1fr));align-items:end;gap:12px;display:grid}.rpl-form .field{min-width:0;margin-bottom:0}.rpl-form .field input,.rpl-form .field select{width:100%;min-width:0}.rpl-search{grid-column:1/-1}@media (min-width:900px){.rpl-search{grid-column:span 2}}.rpl-form-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.rpl-note{margin:10px 0 0;font-size:13px}.rpl-table th{white-space:nowrap}.rpl-table td{font-size:14px}.rpl-table tr.rpl-group>th{background:var(--surface-2);color:var(--text);letter-spacing:0;text-transform:none;padding:10px 8px 6px;font-size:13px;font-weight:800}.rpl-row{cursor:pointer;position:relative}.rpl-row>td:first-child{box-shadow:inset 3px 0 0 var(--warn)}.rpl-row.serious>td:first-child{box-shadow:inset 3px 0 0 var(--danger)}.rpl-row.positive>td:first-child{box-shadow:inset 3px 0 0 var(--ok)}html[dir=rtl] .rpl-row>td:first-child{box-shadow:inset -3px 0 0 var(--warn)}html[dir=rtl] .rpl-row.serious>td:first-child{box-shadow:inset -3px 0 0 var(--danger)}html[dir=rtl] .rpl-row.positive>td:first-child{box-shadow:inset -3px 0 0 var(--ok)}.rpl-open{color:var(--brand-ink);overflow-wrap:anywhere;margin-top:2px;font-weight:700;text-decoration:none;display:block}.rpl-open:after{content:"";position:absolute;inset:0}.rpl-row:hover .rpl-open{text-decoration:underline}.rpl-open:focus-visible{outline:none}.rpl-open:focus-visible:after{outline:2px solid var(--brand);outline-offset:-2px;border-radius:6px}html[data-theme=dark] .rpl-open{color:#93c5fd}.rpl-row .learner-name{z-index:1;position:relative}.rpl-learner{min-width:140px}.rpl-id,.rpl-class,.rpl-date{white-space:nowrap}.rpl-report{min-width:220px;max-width:380px}.rpl-tag{border:1px solid var(--border);background:var(--surface-2);white-space:nowrap;border-radius:999px;align-items:center;padding:0 8px;font-size:11px;font-weight:700;line-height:18px;display:inline-flex}.rpl-tag.ok{background:var(--ok-bg);color:var(--ok-ink);border-color:#0000}.rpl-tag.warn{background:var(--warn-bg);color:var(--warn-ink);border-color:#0000}.rpl-tag.danger{background:var(--danger-bg);color:var(--danger-ink);border-color:#0000}html[data-theme=dark] .rpl-tag.ok{color:#4ade80}html[data-theme=dark] .rpl-tag.warn{color:#fbbf24}html[data-theme=dark] .rpl-tag.danger{color:#f87171}.rpl-sub{color:var(--muted);font-size:12px;display:block}.rpl-detail{color:var(--muted);overflow-wrap:anywhere;-webkit-line-clamp:1;line-clamp:1;-webkit-box-orient:vertical;margin-top:2px;font-size:12px;display:-webkit-box;overflow:hidden}.rpl-pages{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:12px;display:flex}.rpl-disabled{opacity:.5;pointer-events:none}.rp-decision-hint{margin:0 0 12px}.rp-decision-label{margin:14px 0 4px}.rp-decision-form .field textarea{width:100%}.rp-decision-marks{max-width:240px}.rp-decision-marks small{font-size:12px}.rp-decision-actions{flex-wrap:wrap;gap:8px;display:flex}.rp-change{margin-top:14px}.rp-change>summary{border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:6px 14px;font-weight:600;list-style:none;display:inline-flex}.rp-change>summary::-webkit-details-marker{display:none}.rp-change>summary:hover{background:var(--hover);border-color:var(--hover-line)}.rp-change>summary:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.rp-change[open]>summary{background:var(--hover);margin-bottom:10px}.rp-change>.rp-decision-form{border:1px solid var(--border);background:var(--surface-2);border-radius:12px;padding:12px}@media (max-width:640px){.rpl-hero{padding:14px 16px}.rpl-actions{justify-content:flex-start;width:100%}.rpl-actions .btn{flex:auto;justify-content:center}.rpl-table thead{display:none}.rpl-table,.rpl-table tbody,.rpl-table tr,.rpl-table td,.rpl-table tr.rpl-group>th{width:100%;display:block}.rpl-table tr.rpl-group>th{background:0 0;border:0;margin-top:6px;padding:6px 2px}.rpl-table tr.rpl-row{border:1px solid var(--border);border-inline-start:4px solid var(--warn);background:var(--surface);border-radius:12px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px 12px;margin-bottom:10px;padding:10px 12px;display:grid}.rpl-table tr.rpl-row.serious{border-inline-start-color:var(--danger)}.rpl-table tr.rpl-row.positive{border-inline-start-color:var(--ok)}.rpl-table tr.rpl-row:hover{background:var(--hover)}.rpl-table tr.rpl-row:hover>td{background:0 0}.rpl-row>td:first-child,html[dir=rtl] .rpl-row>td:first-child,html[dir=rtl] .rpl-row.serious>td:first-child,html[dir=rtl] .rpl-row.positive>td:first-child,.rpl-row.serious>td:first-child,.rpl-row.positive>td:first-child{box-shadow:none}.rpl-table td{white-space:normal;border:0;min-width:0;max-width:none;padding:0}.rpl-table td.rpl-learner,.rpl-table td.rpl-report{grid-column:1/-1}.rpl-table td.rpl-learner{font-size:15px}.rpl-table td[data-label]:not(.rpl-learner):not(.rpl-report):before{content:attr(data-label);color:var(--muted);font-size:11px;font-weight:700;display:block}.rpl-detail{-webkit-line-clamp:2;line-clamp:2}}
.tb-hub h1{margin:4px 0;font-size:22px}.tb-tabs-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 12px;margin-bottom:16px;display:flex}.tb-tabs{background:var(--surface);scrollbar-width:thin;max-width:100%;overflow-x:auto}.tb-tabs a{white-space:nowrap;align-items:center;gap:6px;padding:7px 14px;font-weight:600;display:inline-flex}.tb-tabs a+a{border-inline-start:1px solid var(--border)}.tb-tabs-extra{flex-wrap:wrap;gap:8px;display:flex}.tb-section-title{margin:0 0 12px;font-size:18px}.tb-note{margin:0}.tb-small{font-size:12px}.tb-search{margin-bottom:16px}.tb-search-form{border:1px solid var(--border);background:var(--surface-2);border-radius:999px;align-items:center;gap:8px;padding-block:4px;padding-inline:12px 4px;display:flex}.tb-search-form:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px #3b82f626}.tb-search-icon{color:var(--muted);flex:none}.tb-search-form input{min-width:0;color:var(--text);font:inherit;background:0 0;border:0;outline:none;flex:1;padding:8px 0}.tb-search-form .btn{border-radius:999px;flex:none}.tb-search-hint{margin:8px 0 0;font-size:13px}.tb-pick-group+.tb-pick-group{margin-top:14px}.tb-pick-group h3{color:var(--muted);margin:0 0 8px;font-size:13px;font-weight:700}.tb-chips{flex-wrap:wrap;gap:8px;margin:0;display:flex}.tb-chip{border:1px solid var(--border);background:var(--surface-2);min-width:44px;color:var(--text);border-radius:999px;justify-content:center;align-items:center;gap:4px;padding:5px 12px;font-weight:600;text-decoration:none;display:inline-flex}.tb-chip:hover{background:var(--hover);border-color:var(--hover-line)}.tb-chip.strong{border-color:var(--brand);color:var(--brand-ink)}html[data-theme=dark] .tb-chip.strong{color:var(--text)}.tb-pick-list{grid-template-columns:repeat(auto-fill,minmax(min(240px,100%),1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.tb-pick-list a{border:1px solid var(--border);background:var(--surface-2);color:var(--text);border-radius:12px;align-items:center;gap:10px;padding:8px 10px;text-decoration:none;display:flex}.tb-pick-list a:hover{background:var(--hover);border-color:var(--hover-line)}.tb-pick-list a>span{flex-direction:column;min-width:0;display:flex}.tb-pick-list small{font-size:12px}.tb-pick-learner{border:1px solid var(--border);background:var(--surface-2);border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;display:flex}.tb-pick-learner>span{flex-direction:column;min-width:0;display:flex}.tb-view-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 12px;margin-bottom:12px;display:flex}.tb-view-head h2{margin:0 0 2px;font-size:20px}.tb-view-head p{margin:0}.tb-view-head .btn{align-items:center;gap:6px;display:inline-flex}.tb-learner{flex-wrap:wrap;align-items:baseline;gap:0 4px;display:flex}.tb-legend{align-items:center;gap:6px;margin:10px 0 0;font-size:12px;display:flex}.lesson-actions{margin-top:6px}.tb-lesson-actions{flex-wrap:wrap;gap:4px 12px;font-size:12px;display:inline-flex}.tb-lesson-actions .linkish{font-size:12px}.tb-remove{color:var(--danger-ink)}.lesson.tb-open{border-style:dashed;border-inline-start-width:1px;border-inline-start-color:var(--border);background:0 0}.tb-open-label{color:var(--muted);font-size:12px;display:block}.tb-open-add{align-items:center;gap:4px;margin-top:4px;font-size:12px;font-weight:700;text-decoration:none;display:inline-flex}.tb-teachers td{vertical-align:middle}.tb-cell-end{text-align:end;white-space:nowrap}.tb-entry-form{margin-bottom:16px;scroll-margin-top:80px}.tb-view .tb-entry-form{border-color:var(--brand);box-shadow:none}.tb-field-label{font-size:13px;font-weight:600}.tb-fixed{align-items:center;min-height:38px;display:inline-flex}.tb-form-gap{margin-top:12px}.tb-form-actions{align-items:center;margin-top:16px}.tb-boxes-wrap{margin-top:8px}.tb-boxes{gap:8px;margin:0 0 12px;padding:0;list-style:none;display:grid}.tb-box{border:1px solid var(--border);border-inline-start:4px solid var(--brand);background:var(--surface-2);border-radius:12px;grid-template-columns:minmax(150px,1fr) auto auto;align-items:center;gap:8px 14px;padding:10px 12px;display:grid}.tb-box-break{border-inline-start-color:var(--warn);background:var(--warn-bg)}.tb-box-homeroom{border-inline-start-color:var(--ok)}.tb-box.bad{border-color:var(--danger);border-inline-start-color:var(--danger);background:var(--danger-bg)}.tb-box-main{flex-wrap:wrap;align-items:center;gap:10px;min-width:0;display:flex}.tb-box-name{font-weight:700}.tb-box-kind{width:auto;padding:4px 8px;font-size:13px}.tb-box-times{flex-wrap:wrap;align-items:flex-end;gap:8px;display:flex}.tb-box-times label{color:var(--muted);flex-direction:column;gap:2px;font-size:12px;display:flex}.tb-box-times input{width:118px;padding:5px 8px}.tb-box-len{background:var(--surface);border:1px solid var(--border);color:var(--muted);white-space:nowrap;border-radius:999px;align-self:center;padding:2px 8px;font-size:12px}.tb-box-tools{justify-content:flex-end;gap:4px;display:flex}.tb-icon-btn{border:1px solid var(--border);background:var(--surface);width:32px;height:32px;color:var(--text);cursor:pointer;border-radius:9px;flex:none;place-items:center;display:inline-grid}.tb-icon-btn:hover:not(:disabled){background:var(--hover);border-color:var(--hover-line)}.tb-icon-btn:disabled{opacity:.4;cursor:default}.tb-icon-btn.danger{color:var(--danger-ink)}.tb-icon-btn:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.tb-box-problem{color:var(--danger-ink);grid-column:1/-1;margin:0;font-size:13px;font-weight:600}.tb-box-add{flex-wrap:wrap;gap:8px;display:flex}.tb-box-add .btn{align-items:center;gap:6px;display:inline-flex}.tb-box-hint{margin:8px 0 0;font-size:12px}.tb-days-pick{border:0;margin:12px 0;padding:0}.tb-days-pick legend{margin-bottom:6px;font-size:13px;font-weight:600}.tb-step{margin-bottom:16px}.tb-step-title{flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 8px;font-size:18px;display:flex}.tb-step-no{background:linear-gradient(135deg, var(--brand), var(--brand-2));color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:26px;height:26px;font-size:14px;font-weight:700;display:inline-flex}.tb-step-next{box-shadow:none;border-style:dashed}.tb-step-next .tb-step-no{background:var(--surface-2);color:var(--muted);border:1px solid var(--border)}.tb-step-next p{margin:0}.tb-choose{grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:12px;margin-top:12px;display:grid}.tb-choice{border:1px solid var(--border);background:var(--surface-2);border-radius:14px;flex-direction:column;gap:10px;padding:14px;display:flex}.tb-choice:focus-within{border-color:var(--brand)}.tb-choice p{margin:0}.tb-choice .btn{align-self:flex-start}.tb-choice-head{color:var(--brand-ink);align-items:center;gap:10px;font-size:16px;display:flex}html[data-theme=dark] .tb-choice-head{color:var(--text)}.tb-foot-note{margin-top:4px;font-size:13px}.tb-stepper{flex-wrap:wrap;gap:8px;margin:0 0 12px;padding:0;list-style:none;display:flex}.tb-stepper>li{border:1px solid var(--border);background:var(--surface);border-radius:999px;align-items:center;gap:8px;min-width:0;padding:6px 12px;font-size:13px;display:inline-flex}.tb-stepper>li>span:last-child{overflow-wrap:anywhere;min-width:0}.tb-stepper .tb-step-no{width:22px;height:22px;font-size:12px}.tb-stepper>li:not(.active):not(.done) .tb-step-no{background:var(--surface-2);color:var(--muted);border:1px solid var(--border)}.tb-stepper>li.active{border-color:var(--brand);font-weight:700}.tb-stepper .linkish{color:var(--text);align-items:center;gap:8px;text-decoration:none;display:inline-flex}.tb-stepper .linkish:disabled{cursor:default;opacity:.6}.tb-change{font-size:12px}.tb-template-pick{max-width:420px;margin-top:8px}.tb-keep{border:1px dashed var(--border);border-radius:12px;margin-top:14px;padding:12px}.tb-keep .row{align-items:flex-end;margin-top:10px}.tb-check{cursor:pointer;align-items:center;gap:8px;font-weight:600;display:inline-flex}.tb-alert-title{margin:0;font-weight:700}.tb-problems{margin:6px 0 0;padding-inline-start:18px}.tb-problems li+li{margin-top:4px}.tb-day-tabs{gap:6px;margin:12px 0;padding-bottom:2px;display:flex;overflow-x:auto}.tb-day-tabs button{border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;cursor:pointer;border-radius:999px;flex:none;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:600;display:inline-flex;position:relative}.tb-day-tabs button:hover:not(.active){background:var(--hover)}.tb-day-tabs button.active{background:var(--brand);border-color:var(--brand);color:#fff}.tb-tab-count{background:var(--surface-2);min-width:20px;height:20px;color:var(--muted);border-radius:999px;place-items:center;padding:0 5px;font-size:11px;display:inline-grid}.tb-day-tabs button.active .tb-tab-count{color:#fff;background:#ffffff40}.tb-tab-dot{background:var(--danger);border-radius:50%;width:8px;height:8px}.tb-cells{gap:8px;margin:0;padding:0;list-style:none;display:grid}.tb-cell{border:1px solid var(--border);border-inline-start:4px solid var(--border);background:var(--surface);border-radius:12px;padding:10px 12px}.tb-cell.full{border-inline-start-color:var(--brand);background:var(--surface-2)}.tb-cell.bad{border-color:var(--danger);border-inline-start-color:var(--danger);background:var(--danger-bg)}.tb-cell-head{flex-wrap:wrap;align-items:center;gap:4px 10px;margin-bottom:8px;display:flex}.tb-cell-time{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.tb-cell-fields{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,.8fr) minmax(0,1.2fr) auto;align-items:center;gap:8px;display:grid}.tb-cell-fields input,.tb-cell-fields select{width:100%;min-width:0}.tb-cell-break{background:var(--warn-bg);color:var(--warn-ink);border-radius:10px;align-items:center;gap:10px;padding:6px 12px;font-size:13px;font-weight:600;display:flex}html[data-theme=dark] .tb-cell-break{color:#fbbf24}.tb-copy{flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;font-size:13px;display:flex}.tb-copy select{width:auto}.tb-kept{border:1px solid var(--border);border-radius:12px;margin-top:14px;padding:10px 12px}.tb-kept summary{cursor:pointer;font-weight:600}.tb-kept ul{margin:6px 0 0;padding-inline-start:18px;font-size:13px}.tb-summary{background:var(--surface-2);border-radius:12px;flex-wrap:wrap;gap:6px 16px;margin-top:14px;padding:10px 12px;font-size:13px;display:flex}@media (max-width:720px){.tb-box{grid-template-columns:1fr}.tb-box-tools{justify-content:flex-start}.tb-cell-fields{grid-template-columns:1fr 1fr}.tb-cell-fields>:first-child{grid-column:1/-1}.tb-cell-fields>.tb-icon-btn{justify-self:start}}@media (max-width:420px){.tb-box-times input{width:108px}.tb-search-form .btn{padding-inline:12px}.tb-cell-fields{grid-template-columns:1fr}}.tb-typed{white-space:nowrap;font-size:12px}.tb-replace-warn{margin-top:10px}.tb-covers-lost{color:var(--warn-ink)}.tb-group-hint{margin-top:4px;font-size:12px;line-height:1.4;display:block}.lesson.cover{border-style:dashed;border-color:var(--warn);border-inline-start:4px solid var(--warn);background:var(--warn-bg);color:inherit;text-decoration:none;display:block}a.lesson.cover:hover{box-shadow:0 0 0 2px var(--warn)}.lesson.cover .th-tag{margin-top:4px}.tb-cover-for{color:var(--muted);margin-top:2px;font-size:12px;display:block}.tb-import-note{color:var(--muted);white-space:normal;margin-top:4px;font-size:12px;display:block}.tt-days{display:none}@media (max-width:640px){.tt-phone>.table-wrap{display:none}.tt-days{gap:8px;display:grid}.tt-day{border:1px solid var(--border);background:var(--surface);border-radius:10px}.tt-day>summary{cursor:pointer;padding:12px;font-size:15px}.tt-day>summary .badge{margin-inline-start:6px}.tt-day-count{float:inline-end;font-size:13px}.tt-day-list{padding:0 10px 2px}}:root{--tset-bg:#ea580c14;--tset-line:#ea580c66;--tset-ink:#c2410c}html[data-theme=dark]{--tset-bg:#fb923c21;--tset-line:#fb923c6b;--tset-ink:#fdba74}.tset-banner{background:var(--tset-bg);border:1px solid var(--tset-line);color:var(--text);flex-wrap:wrap;align-items:center;gap:6px 12px;margin-bottom:14px;display:flex}.tset-banner strong{color:var(--tset-ink)}.tset-banner .btn{margin-inline-start:auto}.tset-week{background:var(--tset-bg);border:1px solid var(--tset-line);border-radius:12px;margin:0 0 10px;padding:8px 12px;font-size:14px}.th-tag.tset-tag{background:var(--tset-bg);color:var(--tset-ink);border:1px solid var(--tset-line)}.tset-day{color:var(--tset-ink);margin-top:2px;font-size:11px;font-weight:600;display:block}.tset-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.tset-row{border:1px solid var(--border);border-inline-start:4px solid var(--tset-line);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;padding:10px 12px;display:flex}.tset-row-main{flex-wrap:wrap;align-items:center;gap:4px 10px;min-width:0;display:flex}.tset-row-tools{flex-wrap:wrap;gap:8px;display:flex}.tset-form{gap:12px;display:grid}.tset-form .row .field{flex:180px}.tset-window{border:1px solid var(--border);border-radius:12px;margin:0;padding:10px 12px}.tset-window legend{padding:0 4px;font-weight:600}.tset-templates{gap:14px;display:grid}.tset-templates>.tb-section-title,.tset-templates>p{margin:0}.tset-tpl{gap:12px;scroll-margin-top:80px;display:grid}.tset-tpl-head{flex-wrap:wrap;align-items:baseline;gap:4px 12px;display:flex}.tset-tpl-head h3{margin:0}.tset-fill{border:1px dashed var(--tset-line);background:var(--tset-bg);border-radius:12px;padding:8px 12px}.tset-fill summary{cursor:pointer;color:var(--tset-ink);font-weight:600}.tset-fill-row{flex-wrap:wrap;gap:10px 12px;margin-top:10px;display:flex}.tset-fill-row .field{flex:130px;margin:0}.tset-fill-tools{gap:8px;margin-top:8px}.tset-periods{gap:8px;margin:0;padding:0;list-style:none;display:grid}.tset-period{border:1px solid var(--border);border-inline-start:4px solid var(--brand);background:var(--surface-2);border-radius:12px;grid-template-columns:minmax(150px,1fr) auto;align-items:center;gap:6px 14px;padding:8px 12px;display:grid}.tset-period.tset-break{border-inline-start-color:var(--warn);background:var(--warn-bg)}.tset-period.tset-homeroom{border-inline-start-color:var(--ok)}.tset-period.changed{border-inline-start-color:var(--tset-ink)}.tset-period.bad{border-color:var(--danger);border-inline-start-color:var(--danger);background:var(--danger-bg)}.tset-period-name{flex-wrap:wrap;align-items:baseline;gap:2px 10px;min-width:0;display:flex}.tset-period-times{flex-wrap:wrap;align-items:flex-end;gap:8px;display:flex}.tset-time{gap:2px;display:grid}.tset-time input{font-variant-numeric:tabular-nums;width:136px}.tset-length{min-width:52px;padding-bottom:8px}.tset-problem{color:var(--danger);grid-column:1/-1;margin:0;font-size:13px}.tset-save{align-items:center;gap:8px 12px}.tset-unlinked td{vertical-align:middle}@media (max-width:640px){.tset-period{grid-template-columns:1fr}.tset-time input{width:100%;min-width:0}.tset-period-times{grid-template-columns:1fr 1fr auto;display:grid}.tset-banner .btn{margin-inline-start:0}}
.at-card{margin-bottom:16px}.at-legend{margin:12px 0 0;font-size:12px}.at-note{margin:0 0 12px}.at-date-form{align-items:center;gap:6px;margin:0;display:inline-flex}.at-date-form input[type=date]{width:auto;min-width:0;padding:5px 8px;font-size:13px}.tone-ok .at-class-pct strong,.at-share.tone-ok strong,.at-pct.tone-ok{color:var(--ok-ink)}.tone-warn .at-class-pct strong,.at-share.tone-warn strong,.at-pct.tone-warn{color:var(--warn-ink)}.tone-danger .at-class-pct strong,.at-share.tone-danger strong,.at-pct.tone-danger{color:var(--danger-ink)}html[data-theme=dark] .tone-ok .at-class-pct strong,html[data-theme=dark] .at-share.tone-ok strong,html[data-theme=dark] .at-pct.tone-ok{color:#4ade80}html[data-theme=dark] .tone-warn .at-class-pct strong,html[data-theme=dark] .at-share.tone-warn strong,html[data-theme=dark] .at-pct.tone-warn{color:#fbbf24}html[data-theme=dark] .tone-danger .at-class-pct strong,html[data-theme=dark] .at-share.tone-danger strong,html[data-theme=dark] .at-pct.tone-danger{color:#f87171}.at-greeting .home-greeting-copy{min-width:0}.at-day-nav{flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;display:flex}.at-head-tools{flex-wrap:wrap;align-items:center;gap:8px 12px;min-width:0;display:flex}.at-out-chip{border:1px solid var(--warn);background:var(--warn-bg);color:var(--warn-ink);white-space:nowrap;border-radius:999px;align-items:center;padding:4px 12px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.at-out-chip:hover{border-style:dashed}html[data-theme=dark] .at-out-chip{color:#fbbf24;border-color:#fbbf24}.at-filter{flex-wrap:wrap;align-items:center;gap:6px 8px;min-width:0;display:inline-flex}.at-filter-label{font-size:13px;font-weight:600}.at-filter input{width:160px;max-width:100%;padding:6px 10px;font-size:13px}.at-filter-none{font-size:13px}.at-levels{gap:16px;display:grid}.at-level-title{color:var(--muted);margin:0 0 8px;font-size:13px;font-weight:800}.at-classes{grid-template-columns:repeat(auto-fill,minmax(min(140px,100%),1fr));gap:10px;display:grid}.at-class{border:1px solid var(--border);border-inline-start:4px solid var(--border);background:var(--surface-2);min-width:0;color:var(--text);border-radius:12px;flex-direction:column;gap:4px;padding:10px 12px;font-size:13px;text-decoration:none;transition:background .12s,border-color .12s;display:flex}.at-class:hover{background:var(--hover);border-color:var(--hover-line)}.at-class:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.at-class.tone-ok{border-inline-start-color:var(--ok)}.at-class.tone-warn{border-inline-start-color:var(--warn)}.at-class.tone-danger{border-inline-start-color:var(--danger)}.at-class[hidden],.at-level[hidden]{display:none}.at-class-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 6px;display:flex}.at-class-name{overflow-wrap:anywhere;font-size:15px}.at-class-out{background:var(--warn-bg);color:var(--warn-ink);white-space:nowrap;border-radius:999px;padding:0 7px;font-size:11px;font-weight:800;line-height:18px;display:inline-flex}html[data-theme=dark] .at-class-out{color:#fbbf24}.at-class-pct{flex-wrap:wrap;align-items:baseline;gap:2px 6px;display:flex}.at-class-pct strong{font-variant-numeric:tabular-nums;font-size:24px;line-height:1.15}.at-class-pct small,.at-class-meta{color:var(--muted);font-size:12px}.at-class-figures{flex-wrap:wrap;gap:2px 10px;font-size:12px;display:flex}.at-class-figures .danger{color:var(--danger-ink);font-weight:700}.at-class-figures .warn{color:var(--warn-ink);font-weight:700}html[data-theme=dark] .at-class-figures .danger{color:#f87171}html[data-theme=dark] .at-class-figures .warn{color:#fbbf24}.at-class-rec{color:var(--muted);font-size:11px}.at-class-rec.warn{color:var(--warn-ink);font-weight:700}html[data-theme=dark] .at-class-rec.warn{color:#fbbf24}.at-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:10px 16px;margin-bottom:16px;display:flex}.at-tabs{max-width:100%;overflow-x:auto}.at-tabs a{white-space:nowrap}.at-step{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.at-range-form{flex-wrap:wrap;align-items:flex-end;gap:8px 12px;display:flex}.at-range-form .field{flex:0 170px;margin:0}.as-custom{margin-bottom:16px}.at-today{vertical-align:middle;margin-inline-start:8px}.at-share{text-align:end;flex-direction:column;align-items:flex-end;display:inline-flex}.at-share strong{font-variant-numeric:tabular-nums;font-size:26px;line-height:1.1}.at-share small{color:var(--muted);font-size:12px}.at-figures{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px;display:grid}.at-figure{border:1px solid var(--border);background:var(--surface-2);border-radius:12px;flex-direction:column;gap:2px;min-width:0;padding:10px 12px;display:flex}.at-figure strong{font-variant-numeric:tabular-nums;font-size:22px}.at-figure span{color:var(--muted);font-size:12px;font-weight:700}.at-figure.ok strong{color:var(--ok-ink)}.at-figure.warn strong{color:var(--warn-ink)}.at-figure.danger strong{color:var(--danger-ink)}html[data-theme=dark] .at-figure.ok strong{color:#4ade80}html[data-theme=dark] .at-figure.warn strong{color:#fbbf24}html[data-theme=dark] .at-figure.danger strong{color:#f87171}.at-learner{align-items:center;gap:6px;min-width:0;display:inline-flex}.at-summary-link{border:1px solid var(--border);width:26px;height:26px;color:var(--muted);border-radius:8px;flex:none;place-items:center;display:inline-grid}.at-summary-link:hover,.at-summary-link:focus-visible{background:var(--hover);border-color:var(--hover-line);color:var(--brand-ink)}html[data-theme=dark] .at-summary-link:hover,html[data-theme=dark] .at-summary-link:focus-visible{color:var(--text)}.at-id{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px;display:block}.at-grid th.at-period{text-align:center;white-space:nowrap}.at-grid th.at-period small{color:var(--muted);text-transform:none;font-size:11px;font-weight:400;display:block}.at-grid td.at-mark{text-align:center}.at-grid td:first-child,.at-range td:first-child{min-width:150px}.at-sort{flex-wrap:wrap;align-items:center;gap:6px 10px;margin-bottom:10px;font-size:13px;display:flex}.at-range .num{text-align:center;font-variant-numeric:tabular-nums;white-space:nowrap}.at-pct{font-weight:800}.at-range tr.at-row-warn>td{background:var(--warn-bg)}.at-range tr.at-row-danger>td{background:var(--danger-bg)}.at-range tr.at-row-warn>td:first-child{box-shadow:inset 3px 0 0 var(--warn)}.at-range tr.at-row-danger>td:first-child{box-shadow:inset 3px 0 0 var(--danger)}html[dir=rtl] .at-range tr.at-row-warn>td:first-child{box-shadow:inset -3px 0 0 var(--warn)}html[dir=rtl] .at-range tr.at-row-danger>td:first-child{box-shadow:inset -3px 0 0 var(--danger)}.at-range tfoot th,.at-range tfoot td{border-bottom:0;border-top:2px solid var(--border);font-weight:800}.at-range tfoot th{text-transform:none;font-size:13px}.at-out-classes{gap:10px;display:grid}.at-out-class{color:var(--text);font-weight:800}@media (max-width:640px){.at-figures{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.at-share{text-align:start;align-items:flex-start}.at-filter,.at-filter input,.at-head-tools{width:100%}.at-range-form .field{flex:130px}}.at-readonly{margin-bottom:16px}.at-cover-note{margin-top:4px;font-size:12px}.at-grid th.at-period .at-group{text-transform:none;font-size:11px;font-weight:500;display:block}.hp-close{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.hp-back-at{color:var(--muted);align-items:center;gap:6px;font-size:12px;display:inline-flex}.hp-back-at input{width:auto;min-width:0;padding-block:4px;padding-inline:6px}.at-register{grid-template-columns:minmax(180px,1fr) auto minmax(160px,.8fr);margin:0;padding:0;list-style:none;display:grid}.at-reg-row{grid-column:1/-1;grid-template-columns:subgrid;border-bottom:1px solid var(--border);align-items:center;gap:8px 14px;padding:10px 0;display:grid}.at-reg-head{color:var(--muted);text-transform:uppercase;padding-top:0;font-size:12px;font-weight:700}.at-reg-who{min-width:0}.at-reg-note input{width:100%}.at-chips{flex-wrap:wrap;gap:6px;display:flex}.at-chip{border:1px solid var(--border);background:var(--surface);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:999px;align-items:center;gap:6px;min-height:40px;padding:6px 12px;font-size:14px;display:inline-flex}.at-chip input{cursor:pointer;width:18px;height:18px;margin:0}.at-chip.tone-ok input{accent-color:var(--ok)}.at-chip.tone-danger input{accent-color:var(--danger)}.at-chip.tone-warn input{accent-color:var(--warn)}.at-chip:has(input:checked){font-weight:700}.at-chip.tone-ok:has(input:checked){border-color:var(--ok);background:var(--ok-bg);color:var(--ok-ink)}.at-chip.tone-danger:has(input:checked){border-color:var(--danger);background:var(--danger-bg);color:var(--danger-ink)}.at-chip.tone-warn:has(input:checked){border-color:var(--warn);background:var(--warn-bg);color:var(--warn-ink)}.at-chip:has(input:focus-visible){outline:2px solid var(--brand);outline-offset:2px}@media (max-width:640px){.at-reg-head{display:none}.at-register{display:block}.at-reg-row{grid-template-columns:minmax(0,1fr)}.at-chip{flex:28%;justify-content:center;min-height:44px;padding-inline:8px}.at-chip.tone-warn:nth-child(n+4){flex-basis:40%}}
