/* Extracted from the approved demo-pulso.css. Regenerate with tools/build-pulso-teacher-style.mjs. */
@scope (body.pulso-tizapp) {
.pulso-teacher, .pulso-classroom, .pulso-lessons, .pulso-monthly{
 --ui-accent:var(--violet); --ui-soft:var(--soft); --ui-text:var(--ink); --ui-muted:var(--muted); --ui-border:var(--line);
}
.pulso-teacher :is(.mc-actions,.mc-tablist,.mc-day-control,#mcWeek,.mc-all-top),
.pulso-classroom :is(.cl-heading,.cl-command-bar,.cl-tabs,.cl-student-actions),
.pulso-lessons :is(.lr-heading,.lr-actions,.lr-objectives header){
 display:flex; flex-wrap:wrap; align-items:center; gap:8px;
}
.pulso-teacher .mc-actions{ margin-block:16px; }
.pulso-teacher .mc-tablist{ flex:1 1 100%; margin:0; }
.pulso-teacher [role=tab][aria-selected=true],
.pulso-teacher #mcWeek [aria-pressed=true]{ background:var(--soft); border-color:var(--violet); color:var(--ink); }
.pulso-teacher :is(.mc-dashboard-row,.mc-week-grid){
 display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr)); gap:16px; margin-block:16px;
}
.pulso-teacher .mc-progress{ min-width:0; }
.pulso-teacher .mc-progress-head{ margin-bottom:12px; }
.pulso-teacher .mc-overview-rings{ display:grid; grid-template-columns:repeat(auto-fit,minmax(90px,1fr)); gap:8px; }
.pulso-teacher .mc-ring-button{ display:grid; justify-items:center; align-content:start; gap:6px; padding:8px; border:0; background:transparent; font-size:12px; }
:is(.pulso-teacher,.pulso-classroom) .tz-ring{ display:grid; place-items:center; position:relative; width:76px; height:76px; }
:is(.pulso-teacher,.pulso-classroom) .tz-ring > svg{ position:absolute; inset:0; width:100%; height:100%; transform:rotate(-90deg); }
:is(.pulso-teacher,.pulso-classroom) .tz-ring circle{ fill:none; stroke-width:8; }
:is(.pulso-teacher,.pulso-classroom) .tz-ring-track{ stroke:var(--line); }
:is(.pulso-teacher,.pulso-classroom) .tz-ring-fill{ stroke:var(--ring-color); stroke-dasharray:var(--ring-value) 100; stroke-linecap:round; }
:is(.pulso-teacher,.pulso-classroom) .tz-ring > span{ z-index:1; font-size:16px; font-weight:600; }
.pulso-teacher :is(.mc-week-grid>section,.mc-all-card){ border:1px solid var(--line); border-radius:12px; padding:12px; }
.pulso-teacher .mc-week-grid article{ display:grid; gap:4px; padding-block:8px; border-bottom:1px solid var(--line); }
.pulso-teacher :is(#mcCards,#mcAllCourses>.cc-cards){ display:grid; grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr)); gap:12px; margin-block:16px; }
.pulso-teacher .mc-all-card{ display:block; }
.pulso-teacher .mc-all-top{ align-items:start; flex-wrap:nowrap; }
.pulso-teacher .mc-all-top > div{ min-width:0; }
.pulso-teacher .mc-all-top :is(strong,span,small){ display:block; overflow-wrap:anywhere; }
.pulso-teacher .ui-course-icon{ display:grid; place-items:center; width:36px; height:36px; flex:none; border-radius:10px; background:var(--soft); color:var(--violet); }
.pulso-teacher .mc-arc-cell{ margin-left:auto; flex:none; width:92px; }
.pulso-teacher .mc-course-arcs{ display:grid; width:100%; border:0; background:transparent; padding:0; }
.pulso-teacher .mc-arc-chart{ width:64px; height:58px; justify-self:center; }
.pulso-teacher .mc-arc-chart circle{ fill:none; stroke-width:5px; transform:rotate(135deg); transform-origin:40px 38px; }
.pulso-teacher .mc-arc-track{ stroke:var(--line); }
.pulso-teacher .mc-arc-fill{ stroke:var(--arc); }
.pulso-teacher .mc-arc-values{ display:grid; grid-template-columns:repeat(3,max-content); justify-content:center; gap:2px; font-size:10px; line-height:14px; }
.pulso-teacher .mc-arc-values>span{ display:inline-flex; align-items:center; gap:1px; white-space:nowrap; }
.pulso-teacher .mc-arc-values svg{ width:10px; height:10px; flex:none; }
.pulso-teacher .mc-all-time{ color:var(--muted); font-size:12px; margin-block:10px; }
.pulso-teacher .mc-all-card > button{ display:inline-flex; align-items:center; gap:6px; }
.pulso-teacher :is(.mc-roster,.mc-student,.mc-student>span){ display:grid; gap:6px; }
.pulso-teacher .mc-student{ grid-template-columns:30px minmax(0,1fr) 18px; align-items:center; text-align:left; padding:8px; }
:is(.pulso-teacher,.pulso-classroom) dl{ display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr)); gap:12px; }
:is(.pulso-teacher,.pulso-classroom) dd{ margin:0; overflow-wrap:anywhere; }
:is(.pulso-teacher,.pulso-classroom) dt{ font-size:12px; color:var(--muted); }
:is(.pulso-teacher,.pulso-classroom,.pulso-lessons) dialog :is(header,footer){ display:flex; align-items:center; flex-wrap:wrap; justify-content:space-between; gap:8px; margin-block:12px; }
@media(max-width:720px){.pulso-teacher .mc-tablist{ align-items:stretch; }
.pulso-teacher #mcWeek{ gap:4px; }
.pulso-teacher #mcWeek button{ padding:5px; min-width:34px; }
}
.pulso-teacher .mc-day-control > button,
.pulso-classroom :is(.cl-tabs,.cl-student-actions,.cl-sign-action,.cl-grade-actions) > button{
 display:inline-flex; align-items:center; justify-content:center; gap:6px; min-height:40px; margin:0; line-height:20px;
}
.pulso-classroom :is(.cl-grade-actions,.cl-grade-heading), .pulso-teacher .tp-bar{
 display:flex; align-items:end; flex-wrap:wrap; gap:8px; margin-block:12px;
}
.pulso-teacher .tp-form{ display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr)); gap:12px; }
.pulso-teacher :is(.tp-unit,.tp-activity){ padding:12px; margin-block:12px; border:1px solid var(--line); border-radius:12px; }
.pulso-teacher :is(.tp-oa,.lr-oa){ display:flex; align-items:start; gap:8px; padding-block:6px; }
.pulso-teacher :is(.tp-oa,.lr-oa) input{ flex:none; width:16px; min-height:0; accent-color:var(--violet); }
.pulso-teacher .mc-dashboard-row{ grid-template-columns:310px minmax(0,1fr); align-items:stretch; }
.pulso-teacher .mc-progress{ padding:16px; border:1px solid var(--line); border-radius:12px; background:var(--paper); }
.pulso-teacher .mc-personal-progress{ display:grid; grid-template-columns:112px minmax(0,1fr); align-items:center; gap:8px; margin-top:10px; }
.pulso-teacher .mc-triple-ring{ width:112px; height:112px; overflow:visible; }
.pulso-teacher .mc-triple-ring circle{ fill:none; stroke-width:11; stroke-linecap:round; transform:rotate(120deg); transform-origin:80px 80px; }
.pulso-teacher .mc-personal-track{ stroke:var(--line); stroke-dasharray:83.333 100; }
.pulso-teacher .mc-personal-fill{ stroke:var(--progress-tone); pointer-events:none; }
.pulso-teacher .mc-personal-fill[stroke-dasharray="0 100"]{ stroke:transparent; }
.pulso-teacher .mc-triple-ring g{ cursor:pointer; outline:none; }
.pulso-teacher .mc-triple-ring g:focus-visible .mc-personal-track,
.pulso-teacher .mc-triple-ring g:hover .mc-personal-track{ stroke:var(--progress-tone); stroke-opacity:.3; }
.pulso-teacher .mc-progress-legend{ display:grid; gap:4px; }
.pulso-teacher .mc-progress-legend button{ display:grid; grid-template-columns:7px minmax(0,1fr) auto; gap:6px; align-items:center; text-align:left; border:0; background:transparent; padding:4px; min-height:40px; font-size:12px; line-height:18px; }
.pulso-teacher .mc-progress-legend i{ width:7px; height:7px; border-radius:50%; }
.pulso-teacher .mc-progress-legend strong{ font-variant-numeric:tabular-nums; }
.pulso-teacher .mc-ring-tooltip{ font-size:11px; line-height:16px; color:var(--muted); min-height:32px; margin:6px 0 0; }
.pulso-teacher .mc-dashboard-row>.home-agenda{ min-width:0; display:flex; }
.pulso-teacher .mc-events{ flex:1; min-width:0; padding:16px; border:1px solid var(--line); border-radius:12px; background:var(--paper); display:flex; flex-direction:column; }
.pulso-teacher :is(.mc-progress>h3,.mc-events>header>h3){ margin:0; font-size:14px; line-height:22px; }
.pulso-teacher .mc-events .tz-upcoming-grid{ margin-top:10px; flex:1; align-items:stretch; }
.pulso-teacher .mc-events .tz-event-trigger{ height:100%; }
.pulso-teacher .mc-events .tz-upcoming-grid{ grid-template-columns:repeat(var(--event-columns),minmax(0,1fr)); }
.pulso-teacher .mc-events .tz-event-trigger{ min-height:164px; }
.pulso-teacher .mc-year-card{ display:flex; flex-direction:column; align-items:flex-start; justify-content:flex-end; gap:8px; min-height:164px; width:100%; padding:14px; border:1px dashed var(--violet); border-radius:12px; background:var(--paper); text-align:left; white-space:normal; }
.pulso-teacher .mc-year-card>.ui-icon{ width:30px; height:30px; margin-bottom:auto; color:var(--violet); }
.pulso-teacher .mc-year-card span{ font-size:13px; font-weight:600; }
.pulso-teacher .mc-year-card small{ font-size:11px; color:var(--muted); }
.pulso-teacher .mc-day-card{ display:grid; grid-template-columns:minmax(0,1fr) 92px; grid-template-rows:auto 1fr auto; grid-template-areas:"heading rings" "subject rings" "action rings"; gap:10px; padding:14px; min-width:0; min-height:176px; border:1px solid color-mix(in srgb,var(--violet) 18%,var(--line)); border-radius:12px; background:color-mix(in srgb,var(--soft) 42%,var(--paper)); }
.pulso-teacher .mc-day-card>header{ grid-area:heading; grid-column:1/-1; padding-right:76px; display:flex; align-items:center; flex-wrap:wrap; gap:6px 10px; min-height:28px; }
.pulso-teacher .mc-day-card>header strong{ font-size:13px; line-height:20px; }
.pulso-teacher .mc-day-card time{ color:var(--violet); background:var(--soft); padding:3px 7px; border-radius:6px; font-size:12px; font-variant-numeric:tabular-nums; }
.pulso-teacher .mc-day-subject{ grid-area:subject; display:grid; grid-template-columns:32px minmax(0,1fr); align-items:start; gap:8px; }
.pulso-teacher .mc-day-subject .ui-course-icon{ width:32px; height:32px; }
.pulso-teacher .mc-day-subject strong{ font-size:13px; }
.pulso-teacher .mc-day-subject p{ font-size:13px; line-height:20px; overflow-wrap:anywhere; margin:0 0 3px; }
.pulso-teacher .mc-day-subject small{ font-size:11px; color:var(--muted); }
.pulso-teacher .mc-day-card>footer{ grid-area:action; display:flex; align-items:end; gap:10px; }
.pulso-teacher .mc-day-card>footer>button{ display:inline-flex; align-items:center; gap:6px; flex:none; min-height:40px; }
.pulso-teacher .mc-day-card>.mc-arc-cell{ grid-area:rings; align-self:start; justify-self:end; margin:0; width:92px; }
.pulso-teacher #mcCards{ grid-auto-rows:1fr; grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr)); }
.pulso-teacher :is(.mc-day-card,.mc-year-card){ transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease; }
.pulso-teacher :is(.mc-day-card,.mc-year-card):is(:hover,:focus-within){ border-color:var(--violet); transform:translateY(-2px); box-shadow:var(--shadow); }
@media(prefers-reduced-motion:reduce){.pulso-teacher :is(.mc-day-card,.mc-year-card){ transition:none; }
.pulso-teacher :is(.mc-day-card,.mc-year-card):is(:hover,:focus-within){ transform:none; }
}
.pulso-teacher .mc-day-card .mc-current{ font-size:11px; }
.pulso-teacher .mc-course-current{ border-color:var(--violet); }
.pulso-teacher .mc-day-card.mc-course-current{ background:var(--soft); }
.pulso-teacher .tz-annual-months{ display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:6px; margin-block:12px; }
.pulso-teacher .tz-annual-months button{ min-width:0; padding:6px; text-transform:capitalize; }
.pulso-teacher .tz-annual-months button[aria-pressed=true]{ background:var(--soft); border-color:var(--violet); }
.pulso-teacher .tz-annual-list .tz-event-day{ display:grid; grid-template-columns:52px minmax(0,1fr); gap:12px; padding-block:14px; border-bottom:1px solid var(--line); }
.pulso-teacher .tz-annual-list .tz-event-date time{ display:grid; justify-items:center; background:var(--soft); color:var(--violet); border-radius:9px; padding:6px; }
.pulso-teacher .tz-annual-list .tz-event-detail+.tz-event-detail{ margin-top:12px; }
@media(max-width:850px){.pulso-teacher .mc-dashboard-row{ grid-template-columns:minmax(0,1fr); }
.pulso-teacher .mc-progress{ max-width:100%; }
.pulso-teacher .mc-personal-progress{ grid-template-columns:112px minmax(0,180px); }
}

}
