/* Educa — Horário de Aulas Inteligente. */
.schedule-page-v900{
  --schedule-primary:#0d5fc2;
  --schedule-primary-strong:#0a397f;
  --schedule-accent:#0f9d7a;
  --schedule-ink:var(--educa-heading,#0f172a);
  --schedule-text:var(--educa-text,#243247);
  --schedule-muted:var(--educa-muted,#64748b);
  --schedule-surface:var(--educa-surface,#fff);
  --schedule-soft:var(--educa-bg-soft,#f8fafc);
  --schedule-line:var(--educa-border,rgba(15,23,42,.1));
  --schedule-shadow:0 18px 48px rgba(15,23,42,.075);
  display:flex;
  flex-direction:column;
  gap:18px;
  min-width:0;
  padding-bottom:32px;
  color:var(--schedule-text);
}
.schedule-page-v900 *{box-sizing:border-box}
.schedule-page-v900 button,.schedule-page-v900 input{font:inherit}
.schedule-page-v900 h1,.schedule-page-v900 h2,.schedule-page-v900 h3,.schedule-page-v900 p{margin:0}
.schedule-page-v900 h1,.schedule-page-v900 h2,.schedule-page-v900 h3{color:var(--schedule-ink)}
.schedule-eyebrow-v900{
  display:block;
  margin-bottom:6px;
  color:var(--schedule-accent);
  font-size:10px;
  font-weight:900;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.schedule-hero-v900{
  position:relative;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  min-height:174px;
  padding:30px 32px;
  border:1px solid rgba(13,95,194,.14);
  border-radius:28px;
  background:
    radial-gradient(circle at 88% 10%,rgba(15,157,122,.17),transparent 33%),
    radial-gradient(circle at 68% 100%,rgba(13,95,194,.14),transparent 38%),
    linear-gradient(135deg,rgba(255,255,255,.98),rgba(243,248,255,.96));
  box-shadow:var(--schedule-shadow);
}
.schedule-hero-v900::after{
  content:"";
  position:absolute;
  right:-24px;
  top:-56px;
  width:190px;
  height:190px;
  border:34px solid rgba(13,95,194,.055);
  border-radius:50%;
  pointer-events:none;
}
.schedule-hero-main-v900{position:relative;z-index:1;max-width:720px}
.schedule-hero-main-v900 h1{font-size:clamp(25px,3vw,38px);line-height:1.08;letter-spacing:-.035em}
.schedule-hero-main-v900 p{max-width:680px;margin-top:11px;color:var(--schedule-muted);font-size:14px;line-height:1.65}
.schedule-hero-actions-v900{position:relative;z-index:1;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}
.schedule-hero-actions-v900 .btn,.schedule-board-actions-v900 .btn,.schedule-form-actions-v900 .btn,.schedule-overview-actions-v900 .btn{white-space:nowrap}
.schedule-contextbar-v900{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  padding:15px 18px;
  border:1px solid var(--schedule-line);
  border-radius:20px;
  background:var(--schedule-surface);
  box-shadow:0 8px 28px rgba(15,23,42,.045);
}
.schedule-context-select-v900{width:min(400px,100%)}
.schedule-context-select-v900>label{display:block;margin:0 0 7px 3px;color:var(--schedule-muted);font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.075em}
.schedule-statusline-v900{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px;color:var(--schedule-muted);font-size:12px;font-weight:700}
.schedule-statusline-v900>span:not(.schedule-status-v900){padding:6px 9px;border:1px solid var(--schedule-line);border-radius:999px;background:var(--schedule-soft)}
.schedule-status-v900{padding:7px 11px;border-radius:999px;font-size:10px;font-weight:900;letter-spacing:.055em;text-transform:uppercase}
.schedule-status-v900.is-draft{color:#8a4b08;background:#fff6df;border:1px solid #fde1a1}
.schedule-status-v900.is-published{color:#087057;background:#e5faf3;border:1px solid #a7e9d4}
.schedule-tabs-v900{
  display:flex;
  gap:5px;
  overflow-x:auto;
  padding:5px;
  border:1px solid var(--schedule-line);
  border-radius:18px;
  background:var(--schedule-surface);
  scrollbar-width:none;
}
.schedule-tabs-v900::-webkit-scrollbar{display:none}
.schedule-tabs-v900 button{
  flex:0 0 auto;
  min-height:42px;
  padding:0 15px;
  border:0;
  border-radius:13px;
  background:transparent;
  color:var(--schedule-muted);
  font-size:12px;
  font-weight:850;
  cursor:pointer;
  transition:.18s ease;
}
.schedule-tabs-v900 button:hover{background:var(--schedule-soft);color:var(--schedule-ink)}
.schedule-tabs-v900 button.is-on{background:linear-gradient(135deg,#e8f2ff,#e8faf5);color:var(--schedule-primary-strong);box-shadow:0 6px 18px rgba(13,95,194,.08)}
.schedule-tabs-v900 button span{display:inline-grid;place-items:center;min-width:20px;height:20px;margin-left:7px;padding:0 5px;border-radius:999px;background:#d9e9ff;color:#0a4b9c;font-size:10px}
.schedule-notice-v900{
  display:flex;
  align-items:center;
  gap:11px;
  padding:12px 14px;
  border:1px solid #bfdbfe;
  border-radius:16px;
  background:#eff6ff;
  color:#174e91;
  font-size:13px;
  font-weight:750;
}
.schedule-notice-v900.is-success{border-color:#a7e9d4;background:#ebfbf6;color:#087057}
.schedule-notice-v900.is-error{border-color:#fecaca;background:#fff1f2;color:#a71931}
.schedule-notice-icon-v900{display:grid;place-items:center;flex:0 0 25px;height:25px;border-radius:9px;background:rgba(255,255,255,.75);font-weight:950}
.schedule-notice-v900>span:nth-child(2){flex:1}
.schedule-notice-v900 button{width:28px;height:28px;border:0;border-radius:9px;background:transparent;color:inherit;font-size:19px;cursor:pointer}
.schedule-loading-v900{display:grid;place-items:center;min-height:320px;border:1px solid var(--schedule-line);border-radius:22px;background:var(--schedule-surface)}
.schedule-card-v900{
  min-width:0;
  padding:22px;
  border:1px solid var(--schedule-line);
  border-radius:23px;
  background:var(--schedule-surface);
  box-shadow:0 10px 32px rgba(15,23,42,.05);
}
.schedule-card-heading-v900{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}
.schedule-card-heading-v900 h2{font-size:19px;line-height:1.2;letter-spacing:-.02em}
.schedule-card-heading-v900 p{margin-top:5px;color:var(--schedule-muted);font-size:12px;line-height:1.55}
.schedule-link-button-v900{border:0;background:none;color:var(--schedule-primary);font-size:12px;font-weight:850;cursor:pointer}
.schedule-metrics-v900{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.schedule-metric-v900{
  display:flex;
  align-items:center;
  gap:13px;
  min-height:112px;
  padding:18px;
  border:1px solid var(--schedule-line);
  border-radius:21px;
  background:var(--schedule-surface);
  box-shadow:0 8px 26px rgba(15,23,42,.045);
}
.schedule-metric-icon-v900{display:grid;place-items:center;flex:0 0 42px;height:42px;border-radius:15px;background:#edf4ff;color:var(--schedule-primary);font-size:16px;font-weight:950}
.schedule-metric-v900>div{display:flex;flex-direction:column;min-width:0}
.schedule-metric-v900 strong{color:var(--schedule-ink);font-size:25px;line-height:1;font-weight:900;letter-spacing:-.03em}
.schedule-metric-v900 span:not(.schedule-metric-icon-v900){margin-top:7px;color:var(--schedule-text);font-size:12px;font-weight:850}
.schedule-metric-v900 small{margin-top:3px;color:var(--schedule-muted);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.schedule-metric-v900.is-primary{background:linear-gradient(145deg,#f2f7ff,#fff)}
.schedule-metric-v900.is-success .schedule-metric-icon-v900{background:#e7faf4;color:#087057}
.schedule-metric-v900.is-warning .schedule-metric-icon-v900{background:#fff5dc;color:#a15c08}
.schedule-metric-v900.is-danger .schedule-metric-icon-v900{background:#fff0f2;color:#b4233c}
.schedule-overview-v900{display:flex;flex-direction:column;gap:16px}
.schedule-overview-grid-v900{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(320px,.82fr);gap:16px}
.schedule-score-ring-v900{display:grid;place-items:center;flex:0 0 46px;height:46px;border-radius:50%;border:5px solid #dbeafe;background:#fff;color:#0b4e9e;font-size:13px;font-weight:950}
.schedule-progress-v900{height:7px;margin:4px 0 20px;overflow:hidden;border-radius:999px;background:#e9eef5}
.schedule-progress-v900 span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--schedule-primary),var(--schedule-accent));transition:width .35s ease}
.schedule-steps-v900{display:grid;gap:8px}
.schedule-step-v900{display:flex;align-items:center;gap:12px;width:100%;padding:12px;border:1px solid var(--schedule-line);border-radius:16px;background:var(--schedule-soft);text-align:left;cursor:pointer;transition:.18s ease}
.schedule-step-v900:hover{transform:translateY(-1px);border-color:rgba(13,95,194,.3);background:#f4f8ff}
.schedule-step-v900>span{display:grid;place-items:center;flex:0 0 31px;height:31px;border-radius:11px;background:#fff;color:var(--schedule-primary);box-shadow:0 4px 13px rgba(15,23,42,.06);font-weight:950}
.schedule-step-v900>div{display:flex;flex-direction:column;gap:3px}
.schedule-step-v900 strong{color:var(--schedule-ink);font-size:12px}
.schedule-step-v900 small{color:var(--schedule-muted);font-size:10px;line-height:1.4}
.schedule-step-v900.is-done>span{background:#daf7ed;color:#087057}
.schedule-diagnostic-v900{display:flex;gap:10px;padding:11px 12px;margin-bottom:8px;border:1px solid #fed7aa;border-radius:14px;background:#fff8ed;color:#8b4c10}
.schedule-diagnostic-v900.is-critical{border-color:#fecaca;background:#fff1f2;color:#a71931}
.schedule-diagnostic-v900>span{display:grid;place-items:center;flex:0 0 23px;height:23px;border-radius:8px;background:rgba(255,255,255,.8);font-size:11px;font-weight:950}
.schedule-diagnostic-v900 p{font-size:11px;line-height:1.5;font-weight:700}
.schedule-success-state-v900{display:flex;align-items:center;gap:13px;padding:17px;border:1px solid #b8ead9;border-radius:17px;background:#edfbf6}
.schedule-success-state-v900>span{display:grid;place-items:center;flex:0 0 35px;height:35px;border-radius:13px;background:#d2f5e8;color:#087057;font-weight:950}
.schedule-success-state-v900 strong{display:block;color:#087057;font-size:13px}
.schedule-success-state-v900 p{margin-top:3px;color:#3d7669;font-size:11px;line-height:1.45}
.schedule-success-state-v900.is-compact{padding:13px}
.schedule-overview-actions-v900{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:9px;margin-top:18px}
.schedule-two-columns-v900{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(330px,.82fr);gap:16px;align-items:start}
.schedule-form-grid-v900{display:grid;gap:14px}
.schedule-form-grid-v900.is-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.schedule-form-grid-v900.is-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.schedule-form-grid-v900 .fg{min-width:0}
.schedule-col-span-2-v900{grid-column:span 2}
.schedule-form-actions-v900{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-top:18px}
.schedule-shift-list-v900{display:grid;gap:10px}
.schedule-shift-editor-v900{padding:14px;border:1px solid var(--schedule-line);border-radius:18px;background:var(--schedule-soft)}
.schedule-shift-title-v900{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.schedule-shift-title-v900>span{display:grid;place-items:center;flex:0 0 30px;height:30px;border-radius:11px;background:#e5f0ff;color:var(--schedule-primary);font-size:11px;font-weight:950}
.schedule-shift-title-v900 .fi{font-weight:850}
.schedule-rule-list-v900{display:grid;gap:9px}
.schedule-rule-row-v900{display:flex;align-items:center;justify-content:space-between;gap:15px;width:100%;padding:13px;border:1px solid var(--schedule-line);border-radius:16px;background:var(--schedule-soft);text-align:left;cursor:pointer}
.schedule-rule-row-v900>div{display:flex;flex-direction:column;gap:3px}
.schedule-rule-row-v900 strong{color:var(--schedule-ink);font-size:12px}
.schedule-rule-row-v900 small{color:var(--schedule-muted);font-size:10px;line-height:1.4}
.schedule-switch-v900{position:relative;display:inline-block;flex:0 0 42px;width:42px;height:24px;border-radius:999px;background:#d4dce7;transition:.18s ease}
.schedule-switch-v900 i{position:absolute;left:3px;top:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 2px 7px rgba(15,23,42,.23);transition:.18s ease}
.is-on>.schedule-switch-v900,.is-enabled .schedule-switch-v900{background:linear-gradient(90deg,var(--schedule-primary),var(--schedule-accent))}
.is-on>.schedule-switch-v900 i,.is-enabled .schedule-switch-v900 i{transform:translateX(18px)}
.schedule-rule-row-v900.is-on{border-color:rgba(15,157,122,.27);background:#f0fbf7}
.schedule-rule-number-v900{margin-top:16px;padding-top:16px;border-top:1px solid var(--schedule-line)}
.schedule-availability-toolbar-v900,.schedule-filter-row-v900{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:end}
.schedule-availability-legend-v900{display:flex;flex-wrap:wrap;gap:7px}
.schedule-availability-legend-v900 span::before{content:"";display:inline-block;width:7px;height:7px;margin-right:6px;border-radius:50%;vertical-align:1px}
.schedule-availability-legend-v900 .is-available{background:#eef3f8;color:#536174}.schedule-availability-legend-v900 .is-available::before{background:#94a3b8}
.schedule-availability-legend-v900 .is-preferred{background:#e6f5ff;color:#145c8b}.schedule-availability-legend-v900 .is-preferred::before{background:#38a7e0}
.schedule-availability-legend-v900 .is-unavailable{background:#fff0f2;color:#a71931}.schedule-availability-legend-v900 .is-unavailable::before{background:#e05269}
.schedule-availability-scroll-v900{overflow:auto;border:1px solid var(--schedule-line);border-radius:18px}
.schedule-availability-grid-v900{display:grid;grid-template-columns:92px repeat(5,minmax(125px,1fr));min-width:760px;background:var(--schedule-line);gap:1px}
.schedule-availability-grid-v900>*{background:var(--schedule-surface)}
.schedule-availability-corner-v900,.schedule-availability-day-v900,.schedule-availability-lesson-v900{display:flex;align-items:center;justify-content:center;min-height:48px;padding:8px;text-align:center}
.schedule-availability-corner-v900{color:var(--schedule-primary);font-size:11px;font-weight:900}
.schedule-availability-day-v900{flex-direction:column;gap:2px;color:var(--schedule-ink);font-size:11px}
.schedule-availability-day-v900 small{color:var(--schedule-muted);font-size:9px}
.schedule-availability-lesson-v900{flex-direction:column;gap:2px;color:var(--schedule-ink);font-size:11px;font-weight:850}
.schedule-availability-lesson-v900 span{color:var(--schedule-muted);font-size:8px}
.schedule-availability-cell-v900 button{width:100%;height:100%;min-height:47px;padding:6px;border:1px solid #dde5ee;border-radius:12px;background:#f5f7fa;color:#536174;font-size:9px;font-weight:850;cursor:pointer;transition:.15s ease}
.schedule-availability-cell-v900 button:hover{transform:translateY(-1px);box-shadow:0 5px 15px rgba(15,23,42,.07)}
.schedule-availability-cell-v900 button.is-preferred{border-color:#91cef0;background:#e8f6ff;color:#145c8b}
.schedule-availability-cell-v900 button.is-unavailable{border-color:#f3b8c0;background:#fff0f2;color:#a71931}
.schedule-availability-actions-v900{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px}
.schedule-availability-actions-v900 p{color:var(--schedule-muted);font-size:10px;line-height:1.45}
.schedule-requirements-layout-v900{display:grid;grid-template-columns:minmax(310px,.72fr) minmax(0,1.28fr);gap:16px;align-items:start}
.schedule-requirement-form-v900{position:sticky;top:14px}
.schedule-requirements-list-v900{min-width:0}
.schedule-search-v900{width:min(270px,100%)}
.schedule-requirement-items-v900{display:grid;gap:9px}
.schedule-requirement-item-v900{position:relative;display:grid;grid-template-columns:7px minmax(0,1.35fr) minmax(150px,.75fr) auto;align-items:center;gap:13px;padding:12px;border:1px solid var(--schedule-line);border-radius:17px;background:var(--schedule-soft);overflow:hidden}
.schedule-requirement-item-v900>.schedule-requirement-color-v900{align-self:stretch;border-radius:999px;background:var(--sc-border,#93c5fd)}
.schedule-requirement-main-v900 span,.schedule-requirement-meta-v900 span{display:block;margin-top:3px;color:var(--schedule-muted);font-size:10px;line-height:1.4}
.schedule-requirement-meta-v900 strong{display:block;color:var(--schedule-text);font-size:11px}
.schedule-requirement-actions-v900{display:flex;gap:6px}
.schedule-requirement-actions-v900 button{width:31px;height:31px;border:1px solid var(--schedule-line);border-radius:10px;background:var(--schedule-surface);color:var(--schedule-muted);cursor:pointer}
.schedule-requirement-actions-v900 button:hover{color:var(--schedule-primary);border-color:rgba(13,95,194,.28)}
.schedule-board-layout-v900{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:start}
.schedule-board-card-v900{overflow:hidden;padding:0}
.schedule-board-toolbar-v900{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:21px 22px;border-bottom:1px solid var(--schedule-line)}
.schedule-board-toolbar-v900 h2{font-size:20px;letter-spacing:-.02em}
.schedule-board-toolbar-v900 p{margin-top:5px;color:var(--schedule-muted);font-size:11px;line-height:1.5}
.schedule-board-actions-v900{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}
.schedule-filter-row-v900.is-board{grid-template-columns:minmax(150px,.8fr) minmax(180px,1fr) minmax(145px,.7fr) minmax(160px,.7fr);padding:15px 22px;background:var(--schedule-soft);border-bottom:1px solid var(--schedule-line)}
.schedule-board-score-v900{display:grid;grid-template-columns:1fr auto;align-items:center;gap:2px 9px;min-height:54px;padding:8px 12px;border:1px solid var(--schedule-line);border-radius:14px;background:var(--schedule-surface)}
.schedule-board-score-v900 span{color:var(--schedule-muted);font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}
.schedule-board-score-v900 strong{color:var(--schedule-primary);font-size:18px;font-weight:950}
.schedule-board-score-v900 small{grid-column:1/-1;color:var(--schedule-muted);font-size:8px}
.schedule-board-scroll-v900{overflow:auto;background:#eef3f8}
.schedule-board-grid-v900{display:grid;grid-template-columns:90px repeat(5,minmax(138px,1fr));min-width:820px;gap:1px;background:#dce4ed}
.schedule-board-grid-v900>*{background:var(--schedule-surface)}
.schedule-board-corner-v900,.schedule-board-day-v900,.schedule-board-lesson-v900{display:flex;align-items:center;justify-content:center;min-height:53px;padding:8px;text-align:center}
.schedule-board-corner-v900{position:sticky;left:0;z-index:3;color:var(--schedule-primary);font-size:10px;font-weight:950;text-transform:uppercase;letter-spacing:.055em}
.schedule-board-day-v900{flex-direction:column;gap:2px;color:var(--schedule-ink);font-size:11px;font-weight:850}
.schedule-board-day-v900 small{color:var(--schedule-muted);font-size:8px}
.schedule-board-lesson-v900{position:sticky;left:0;z-index:2;flex-direction:column;gap:3px;color:var(--schedule-ink);font-size:11px;font-weight:900}
.schedule-board-lesson-v900 span{color:#a15c08;font-size:7px;text-transform:uppercase;letter-spacing:.04em}
.schedule-board-lesson-v900:has(span){border-bottom:3px solid #f0c266}
.schedule-board-cell-v900{position:relative;min-height:93px;padding:6px;background:#f7f9fc}
.schedule-board-cell-v900.has-interval{border-bottom:3px solid #f0c266}
.schedule-board-cell-v900.is-target{background:#eef8ff}
.schedule-empty-slot-v900{display:grid;place-items:center;width:100%;height:100%;min-height:78px;border:1px dashed #c9d4e0;border-radius:13px;background:rgba(255,255,255,.58);color:#9aabba;font-size:18px;cursor:pointer}
.schedule-empty-slot-v900:hover{border-color:#7fb2ea;background:#edf6ff;color:var(--schedule-primary)}
.schedule-board-cell-v900.is-target .schedule-empty-slot-v900{border-color:#72b1e8;background:#e7f4ff;color:#0b65b2;font-size:9px;font-weight:850}
.schedule-lesson-card-v900{
  --sc-bg:#e8f1ff;
  --sc-border:#8dbcf3;
  --sc-ink:#174f92;
  position:relative;
  display:flex;
  flex-direction:column;
  min-height:78px;
  padding:10px 10px 9px;
  border:1px solid var(--sc-border);
  border-left-width:4px;
  border-radius:13px;
  background:var(--sc-bg);
  color:var(--sc-ink);
  box-shadow:0 4px 12px rgba(15,23,42,.055);
  cursor:grab;
  transition:transform .15s ease,box-shadow .15s ease;
}
.schedule-lesson-card-v900:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(15,23,42,.1)}
.schedule-lesson-card-v900.is-selected{outline:3px solid rgba(13,95,194,.25);outline-offset:1px}
.schedule-lesson-card-v900.is-locked{cursor:default;background-image:linear-gradient(135deg,rgba(255,255,255,.13),rgba(255,255,255,.5))}
.schedule-lesson-card-top-v900{display:flex;align-items:flex-start;justify-content:space-between;gap:5px}
.schedule-lesson-card-top-v900 strong{min-width:0;color:inherit;font-size:11px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.schedule-lesson-card-v900>span{margin-top:5px;font-size:9px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:.86}
.schedule-lesson-card-v900>small{margin-top:3px;font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:.72}
.schedule-lock-button-v900{flex:0 0 20px;width:20px;height:20px;padding:0;border:0;border-radius:7px;background:rgba(255,255,255,.63);color:inherit;font-size:10px;cursor:pointer}
.schedule-entry-remove-v900{position:absolute;right:5px;bottom:4px;width:19px;height:19px;padding:0;border:0;border-radius:7px;background:transparent;color:inherit;font-size:15px;line-height:1;opacity:0;cursor:pointer}
.schedule-lesson-card-v900:hover .schedule-entry-remove-v900,.schedule-lesson-card-v900.is-selected .schedule-entry-remove-v900{opacity:.65}
.schedule-pending-strip-v900{display:flex;align-items:center;flex-wrap:wrap;gap:7px;padding:13px 17px;border-top:1px solid var(--schedule-line);background:#fffaf0}
.schedule-pending-strip-v900 strong{color:#8b4c10;font-size:10px}
.schedule-pending-strip-v900 span{--sc-bg:#eef4ff;--sc-ink:#174f92;padding:5px 8px;border-radius:999px;background:var(--sc-bg);color:var(--sc-ink);font-size:9px;font-weight:850}
.schedule-board-aside-v900{display:grid;gap:16px}
.schedule-board-aside-v900 .schedule-card-v900{padding:18px}
.schedule-conflict-filters-v900{display:flex;gap:5px;margin:-4px 0 12px;padding:4px;border-radius:12px;background:var(--schedule-soft)}
.schedule-conflict-filters-v900 button{flex:1;min-height:30px;border:0;border-radius:9px;background:transparent;color:var(--schedule-muted);font-size:9px;font-weight:850;cursor:pointer}
.schedule-conflict-filters-v900 button.is-on{background:var(--schedule-surface);color:var(--schedule-primary);box-shadow:0 4px 12px rgba(15,23,42,.07)}
.schedule-conflict-list-v900{display:grid;gap:7px;max-height:385px;overflow:auto;padding-right:2px}
.schedule-conflict-list-v900 article{display:flex;gap:8px;padding:10px;border:1px solid #fed7aa;border-radius:13px;background:#fff8ed;color:#8b4c10}
.schedule-conflict-list-v900 article.is-critical{border-color:#fecaca;background:#fff1f2;color:#a71931}
.schedule-conflict-list-v900 article>span{display:grid;place-items:center;flex:0 0 21px;height:21px;border-radius:7px;background:rgba(255,255,255,.75);font-size:9px;font-weight:950}
.schedule-conflict-list-v900 p{font-size:9px;line-height:1.48;font-weight:700}
.schedule-version-list-v900{display:grid;gap:7px}
.schedule-version-list-v900 article{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 10px;border:1px solid var(--schedule-line);border-radius:13px;background:var(--schedule-soft)}
.schedule-version-list-v900 article>div{min-width:0}
.schedule-version-list-v900 strong{display:block;color:var(--schedule-ink);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.schedule-version-list-v900 span{display:block;margin-top:3px;color:var(--schedule-muted);font-size:8px}
.schedule-version-list-v900 button{padding:5px 7px;border:1px solid var(--schedule-line);border-radius:8px;background:var(--schedule-surface);color:var(--schedule-primary);font-size:8px;font-weight:850;cursor:pointer}
.schedule-muted-v900{color:var(--schedule-muted);font-size:10px;line-height:1.55}
.schedule-danger-link-v900{width:100%;margin-top:14px;padding:8px;border:0;background:transparent;color:#b4233c;font-size:9px;font-weight:850;cursor:pointer}
.schedule-empty-v900{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:310px;padding:34px;border:1px dashed #cbd5e1;border-radius:22px;background:var(--schedule-surface);text-align:center}
.schedule-empty-v900>span{display:grid;place-items:center;width:58px;height:58px;border-radius:20px;background:#eaf3ff;color:var(--schedule-primary);font-size:25px}
.schedule-empty-v900 h3{margin-top:15px;font-size:18px}
.schedule-empty-v900 p{max-width:530px;margin:7px 0 16px;color:var(--schedule-muted);font-size:12px;line-height:1.6}
.schedule-modal-backdrop-v900{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:20px;background:rgba(6,15,28,.58);backdrop-filter:blur(6px)}
.schedule-modal-v900{width:min(610px,100%);max-height:min(820px,92vh);overflow:hidden;border:1px solid rgba(255,255,255,.55);border-radius:25px;background:var(--schedule-surface);box-shadow:0 35px 100px rgba(0,0,0,.25)}
.schedule-modal-v900.is-wide{width:min(860px,100%)}
.schedule-modal-v900>header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:22px 24px;border-bottom:1px solid var(--schedule-line)}
.schedule-modal-v900>header h2{font-size:21px;letter-spacing:-.025em}
.schedule-modal-v900>header p{margin-top:5px;color:var(--schedule-muted);font-size:11px;line-height:1.5}
.schedule-modal-close-v900{width:34px;height:34px;border:1px solid var(--schedule-line);border-radius:12px;background:var(--schedule-soft);color:var(--schedule-muted);font-size:21px;cursor:pointer}
.schedule-modal-body-v900{max-height:calc(92vh - 165px);overflow:auto;padding:22px 24px}
.schedule-modal-v900>footer{display:flex;justify-content:flex-end;gap:9px;padding:15px 24px;border-top:1px solid var(--schedule-line);background:var(--schedule-soft)}
.schedule-new-shifts-v900{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:17px}
.schedule-new-shift-v900{padding:13px;border:1px solid var(--schedule-line);border-radius:18px;background:var(--schedule-soft)}
.schedule-new-shift-v900.is-enabled{border-color:rgba(15,157,122,.27);background:#f3fbf8}
.schedule-new-shift-toggle-v900{display:flex;align-items:center;gap:11px;width:100%;padding:0;border:0;background:transparent;text-align:left;cursor:pointer}
.schedule-new-shift-toggle-v900>div{display:flex;flex-direction:column;gap:2px}
.schedule-new-shift-toggle-v900 strong{color:var(--schedule-ink);font-size:12px}
.schedule-new-shift-toggle-v900 small{color:var(--schedule-muted);font-size:9px}
.schedule-new-shift-v900 .schedule-form-grid-v900{margin-top:13px;padding-top:13px;border-top:1px solid var(--schedule-line)}
.schedule-color-1{--sc-bg:#e9f2ff;--sc-border:#86b8ee;--sc-ink:#174f92}
.schedule-color-2{--sc-bg:#e8f8f3;--sc-border:#72c9b1;--sc-ink:#126852}
.schedule-color-3{--sc-bg:#f3edff;--sc-border:#b69be9;--sc-ink:#5b3a96}
.schedule-color-4{--sc-bg:#fff1e5;--sc-border:#eab37c;--sc-ink:#874812}
.schedule-color-5{--sc-bg:#e7f8fb;--sc-border:#74c4d2;--sc-ink:#17606d}
.schedule-color-6{--sc-bg:#ffedf4;--sc-border:#e8a0bb;--sc-ink:#8d3154}
.schedule-color-7{--sc-bg:#fff8d8;--sc-border:#dcc568;--sc-ink:#74600b}
.schedule-color-8{--sc-bg:#edf4e4;--sc-border:#9fbd75;--sc-ink:#4c6a27}
.schedule-color-9{--sc-bg:#fcecef;--sc-border:#e19aa7;--sc-ink:#8c3445}
.schedule-color-10{--sc-bg:#e9eefc;--sc-border:#91a8df;--sc-ink:#344f8d}
.schedule-color-11{--sc-bg:#f5eee7;--sc-border:#c5a78a;--sc-ink:#705139}
.schedule-color-12{--sc-bg:#eef0f5;--sc-border:#aeb8ca;--sc-ink:#4d596d}

html[data-theme="dark"] .schedule-page-v900{--schedule-shadow:0 18px 48px rgba(0,0,0,.2)}
html[data-theme="dark"] .schedule-hero-v900{border-color:rgba(117,217,208,.14);background:radial-gradient(circle at 88% 10%,rgba(15,157,122,.12),transparent 33%),radial-gradient(circle at 68% 100%,rgba(37,99,235,.14),transparent 38%),linear-gradient(135deg,#101c2e,#0c1727)}
html[data-theme="dark"] .schedule-tabs-v900 button.is-on{background:linear-gradient(135deg,rgba(37,99,235,.22),rgba(15,157,122,.16));color:#a9d6ff}
html[data-theme="dark"] .schedule-statusline-v900>span:not(.schedule-status-v900),html[data-theme="dark"] .schedule-shift-editor-v900,html[data-theme="dark"] .schedule-step-v900,html[data-theme="dark"] .schedule-rule-row-v900,html[data-theme="dark"] .schedule-requirement-item-v900,html[data-theme="dark"] .schedule-board-score-v900,html[data-theme="dark"] .schedule-version-list-v900 article{background:#111d2d}
html[data-theme="dark"] .schedule-step-v900:hover{background:#142338}
html[data-theme="dark"] .schedule-metric-v900.is-primary{background:linear-gradient(145deg,#111f34,#0f172a)}
html[data-theme="dark"] .schedule-metric-icon-v900,html[data-theme="dark"] .schedule-empty-v900>span,html[data-theme="dark"] .schedule-shift-title-v900>span{background:#142b4c;color:#8dc1ff}
html[data-theme="dark"] .schedule-score-ring-v900{border-color:#244872;background:#0d1828;color:#9bc8ff}
html[data-theme="dark"] .schedule-progress-v900{background:#263448}
html[data-theme="dark"] .schedule-step-v900>span,html[data-theme="dark"] .schedule-requirement-actions-v900 button,html[data-theme="dark"] .schedule-lock-button-v900,html[data-theme="dark"] .schedule-version-list-v900 button{background:#172539}
html[data-theme="dark"] .schedule-rule-row-v900.is-on,html[data-theme="dark"] .schedule-new-shift-v900.is-enabled{background:#10271f}
html[data-theme="dark"] .schedule-availability-grid-v900,html[data-theme="dark"] .schedule-board-grid-v900{background:#263448}
html[data-theme="dark"] .schedule-board-scroll-v900{background:#07111f}
html[data-theme="dark"] .schedule-board-cell-v900{background:#0b1524}
html[data-theme="dark"] .schedule-empty-slot-v900{border-color:#34455c;background:#101c2d;color:#667991}
html[data-theme="dark"] .schedule-empty-slot-v900:hover,html[data-theme="dark"] .schedule-board-cell-v900.is-target .schedule-empty-slot-v900{border-color:#3d7fc4;background:#122a46;color:#8dc1ff}
html[data-theme="dark"] .schedule-availability-cell-v900 button{border-color:#34455c;background:#121e2e;color:#aab7c7}
html[data-theme="dark"] .schedule-availability-cell-v900 button.is-preferred{border-color:#33759d;background:#102b3d;color:#90d0f3}
html[data-theme="dark"] .schedule-availability-cell-v900 button.is-unavailable{border-color:#843f50;background:#351724;color:#f4a7b6}
html[data-theme="dark"] .schedule-pending-strip-v900{background:#251d10}
html[data-theme="dark"] .schedule-success-state-v900{border-color:#275f50;background:#10271f}
html[data-theme="dark"] .schedule-success-state-v900>span{background:#173e32}
html[data-theme="dark"] .schedule-diagnostic-v900,html[data-theme="dark"] .schedule-conflict-list-v900 article{border-color:#694923;background:#2d2114;color:#f4bf84}
html[data-theme="dark"] .schedule-diagnostic-v900.is-critical,html[data-theme="dark"] .schedule-conflict-list-v900 article.is-critical{border-color:#743544;background:#321622;color:#f5a1b1}
html[data-theme="dark"] .schedule-notice-v900{border-color:#31577f;background:#11273f;color:#a8d0f5}
html[data-theme="dark"] .schedule-notice-v900.is-success{border-color:#275f50;background:#10271f;color:#83ddc0}
html[data-theme="dark"] .schedule-notice-v900.is-error{border-color:#743544;background:#321622;color:#f5a1b1}
html[data-theme="dark"] .schedule-lesson-card-v900{filter:saturate(.82) brightness(.78);color:#fff}

@media (max-width:1180px){
  .schedule-board-layout-v900{grid-template-columns:1fr}
  .schedule-board-aside-v900{grid-template-columns:repeat(2,minmax(0,1fr))}
  .schedule-metrics-v900{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
  .schedule-hero-v900{align-items:flex-start;flex-direction:column;padding:24px}
  .schedule-hero-actions-v900{justify-content:flex-start}
  .schedule-contextbar-v900{align-items:stretch;flex-direction:column}
  .schedule-context-select-v900{width:100%}
  .schedule-statusline-v900{justify-content:flex-start}
  .schedule-overview-grid-v900,.schedule-two-columns-v900,.schedule-requirements-layout-v900{grid-template-columns:1fr}
  .schedule-requirement-form-v900{position:static}
  .schedule-filter-row-v900.is-board{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:680px){
  .schedule-page-v900{gap:13px}
  .schedule-hero-v900{min-height:0;padding:20px;border-radius:22px}
  .schedule-hero-main-v900 h1{font-size:27px}
  .schedule-hero-actions-v900,.schedule-board-actions-v900{width:100%}
  .schedule-hero-actions-v900 .btn,.schedule-board-actions-v900 .btn{flex:1}
  .schedule-metrics-v900{grid-template-columns:1fr 1fr;gap:9px}
  .schedule-metric-v900{min-height:96px;padding:13px;gap:9px}
  .schedule-metric-icon-v900{flex-basis:35px;height:35px;border-radius:12px}
  .schedule-metric-v900 strong{font-size:21px}
  .schedule-card-v900{padding:17px;border-radius:19px}
  .schedule-card-heading-v900{flex-direction:column}
  .schedule-form-grid-v900.is-2,.schedule-form-grid-v900.is-3,.schedule-availability-toolbar-v900,.schedule-filter-row-v900{grid-template-columns:1fr}
  .schedule-col-span-2-v900{grid-column:auto}
  .schedule-availability-actions-v900{align-items:flex-start;flex-direction:column}
  .schedule-requirement-item-v900{grid-template-columns:6px minmax(0,1fr) auto}
  .schedule-requirement-meta-v900{grid-column:2/3}
  .schedule-board-toolbar-v900{flex-direction:column;padding:17px}
  .schedule-filter-row-v900.is-board{grid-template-columns:1fr;padding:14px 17px}
  .schedule-board-aside-v900{grid-template-columns:1fr}
  .schedule-new-shifts-v900{grid-template-columns:1fr}
  .schedule-modal-backdrop-v900{padding:8px}
  .schedule-modal-v900{max-height:96vh;border-radius:20px}
  .schedule-modal-v900>header,.schedule-modal-body-v900,.schedule-modal-v900>footer{padding-left:17px;padding-right:17px}
}
@media (max-width:430px){
  .schedule-metrics-v900{grid-template-columns:1fr}
  .schedule-statusline-v900>span:not(.schedule-status-v900){font-size:10px}
}


.schedule-two-column-v900{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start}
.schedule-shifts-editor-v900,.schedule-rules-v900{display:grid;gap:10px;margin-bottom:16px}
.schedule-field-summary-v900{display:flex;align-items:center;min-height:47px;padding:0 12px;border:1px solid var(--schedule-line);border-radius:14px;background:var(--schedule-surface);color:var(--schedule-muted);font-size:10px;font-weight:750;line-height:1.4}
.schedule-rule-v900{display:flex;align-items:center;gap:12px;width:100%;padding:12px;border:1px solid var(--schedule-line);border-radius:16px;background:var(--schedule-soft);text-align:left;cursor:pointer;transition:.18s ease}
.schedule-rule-v900>div{display:flex;flex-direction:column;gap:3px}
.schedule-rule-v900 strong{color:var(--schedule-ink);font-size:12px}
.schedule-rule-v900 small{color:var(--schedule-muted);font-size:10px;line-height:1.4}
.schedule-rule-v900.is-on{border-color:rgba(15,157,122,.28);background:#f0fbf7}
.schedule-rule-v900.is-on .schedule-switch-v900{background:linear-gradient(90deg,var(--schedule-primary),var(--schedule-accent))}
.schedule-rule-v900.is-on .schedule-switch-v900 i{transform:translateX(18px)}
.schedule-card-actions-v900{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}
.schedule-mini-button-v900{min-height:33px;padding:0 10px;border:1px solid var(--schedule-line);border-radius:11px;background:var(--schedule-soft);color:var(--schedule-muted);font-size:9px;font-weight:850;cursor:pointer}
.schedule-mini-button-v900:hover{border-color:rgba(13,95,194,.3);color:var(--schedule-primary)}
.schedule-availability-card-v900{overflow:hidden}
.schedule-grid-corner-v900,.schedule-grid-day-v900,.schedule-grid-lesson-v900{display:flex;align-items:center;justify-content:center;min-height:48px;padding:8px;text-align:center;background:var(--schedule-surface)}
.schedule-grid-corner-v900{color:var(--schedule-primary);font-size:10px;font-weight:900}
.schedule-grid-day-v900{flex-direction:column;gap:2px;color:var(--schedule-ink);font-size:11px;font-weight:850}
.schedule-grid-day-v900 small{color:var(--schedule-muted);font-size:8px}
.schedule-grid-lesson-v900{flex-direction:column;gap:3px;color:var(--schedule-ink);font-size:10px;font-weight:850}
.schedule-grid-lesson-v900 small{color:#a15c08;font-size:7px;text-transform:uppercase}
.schedule-availability-cell-v900{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:62px;padding:7px;border:0;background:#f6f8fb;color:#536174;cursor:pointer;transition:.15s ease}
.schedule-availability-cell-v900:hover{position:relative;z-index:1;box-shadow:inset 0 0 0 2px rgba(13,95,194,.2)}
.schedule-availability-cell-v900 span{font-size:9px;font-weight:900}
.schedule-availability-cell-v900 small{font-size:7px;opacity:.78}
.schedule-availability-cell-v900.is-preferred{background:#e8f6ff;color:#145c8b}
.schedule-availability-cell-v900.is-unavailable{background:#fff0f2;color:#a71931}
.schedule-availability-legend-v900{align-self:end;margin:0;min-height:47px;align-items:center}
.schedule-availability-legend-v900 span{display:flex;align-items:center;gap:5px;padding:5px 7px;border:1px solid var(--schedule-line);border-radius:999px;background:var(--schedule-soft);color:var(--schedule-muted);font-size:8px;font-weight:800}
.schedule-availability-legend-v900 i{display:block;width:7px;height:7px;border-radius:50%;background:#94a3b8}
.schedule-availability-legend-v900 i.is-preferred{background:#38a7e0}
.schedule-availability-legend-v900 i.is-unavailable{background:#e05269}
.schedule-sticky-actions-v900{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:15px;padding:13px 14px;border:1px solid var(--schedule-line);border-radius:16px;background:var(--schedule-soft)}
.schedule-sticky-actions-v900 p{color:var(--schedule-muted);font-size:10px;line-height:1.5}
.schedule-sticky-actions-v900 strong{color:var(--schedule-ink)}
.schedule-requirement-rows-v900{display:grid;gap:9px}
.schedule-requirement-row-v900{display:grid;grid-template-columns:7px minmax(0,1fr) 90px auto;align-items:center;gap:12px;padding:12px;border:1px solid var(--schedule-line);border-radius:17px;background:var(--schedule-soft)}
.schedule-requirement-color-v900{align-self:stretch;border-radius:999px;background:var(--sc-border,#93c5fd)}
.schedule-requirement-main-v900{min-width:0}
.schedule-requirement-main-v900 strong{display:block;color:var(--schedule-ink);font-size:12px}
.schedule-requirement-main-v900 span,.schedule-requirement-main-v900 small{display:block;margin-top:3px;color:var(--schedule-muted);font-size:9px;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.schedule-requirement-count-v900{text-align:center}
.schedule-requirement-count-v900 strong{display:block;color:var(--schedule-ink);font-size:15px;font-weight:950}
.schedule-requirement-count-v900 span{display:block;margin-top:3px;font-size:8px;font-weight:850}
.schedule-requirement-count-v900 .is-pending{color:#a15c08}
.schedule-requirement-count-v900 .is-complete{color:#087057}
.schedule-row-actions-v900{display:flex;gap:5px}
.schedule-row-actions-v900 button{min-height:30px;padding:0 8px;border:1px solid var(--schedule-line);border-radius:9px;background:var(--schedule-surface);color:var(--schedule-primary);font-size:8px;font-weight:850;cursor:pointer}
.schedule-row-actions-v900 button.is-danger{color:#b4233c}
html[data-theme="dark"] .schedule-rule-v900,html[data-theme="dark"] .schedule-field-summary-v900,html[data-theme="dark"] .schedule-sticky-actions-v900,html[data-theme="dark"] .schedule-requirement-row-v900{background:#111d2d}
html[data-theme="dark"] .schedule-rule-v900.is-on{background:#10271f}
html[data-theme="dark"] .schedule-availability-cell-v900{background:#0d1828;color:#aab7c7}
html[data-theme="dark"] .schedule-availability-cell-v900.is-preferred{background:#102b3d;color:#90d0f3}
html[data-theme="dark"] .schedule-availability-cell-v900.is-unavailable{background:#351724;color:#f4a7b6}
@media(max-width:900px){.schedule-two-column-v900{grid-template-columns:1fr}}
@media(max-width:680px){
  .schedule-card-actions-v900{width:100%;justify-content:flex-start}
  .schedule-sticky-actions-v900{align-items:flex-start;flex-direction:column}
  .schedule-requirement-row-v900{grid-template-columns:6px minmax(0,1fr) auto}
  .schedule-requirement-count-v900{grid-column:2;text-align:left}
  .schedule-row-actions-v900{grid-column:3;grid-row:1/3;flex-direction:column}
}
.schedule-version-save-v900{width:100%;min-height:34px;margin-top:12px;border:1px solid rgba(13,95,194,.22);border-radius:11px;background:#eef5ff;color:var(--schedule-primary);font-size:9px;font-weight:900;cursor:pointer}
.schedule-version-save-v900:disabled{opacity:.55;cursor:wait}
html[data-theme="dark"] .schedule-version-save-v900{border-color:#31577f;background:#11273f;color:#a8d0f5}
.schedule-progress-card-v900{min-height:100%}
.schedule-conflicts-v900,.schedule-versions-v900{min-width:0}


.schedule-availability-toolbar-v910{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(0,1.1fr);gap:16px;align-items:end;margin-bottom:18px}
.schedule-availability-shifts-v910{display:grid;gap:18px}
.schedule-availability-shift-v910{overflow:hidden;border:1px solid var(--schedule-line);border-radius:20px;background:var(--schedule-surface)}
.schedule-availability-shift-head-v910{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;border-bottom:1px solid var(--schedule-line);background:linear-gradient(135deg,var(--schedule-soft),var(--schedule-surface))}
.schedule-availability-shift-head-v910 h3{margin-top:3px;color:var(--schedule-ink);font-size:15px;letter-spacing:-.02em}
.schedule-availability-shift-head-v910 p{margin-top:4px;color:var(--schedule-muted);font-size:9px;line-height:1.45}
.schedule-grid-selector-v910{padding:0}
.schedule-grid-selector-v910>button{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:2px;width:100%;min-height:48px;padding:7px;border:0;background:transparent;color:inherit;font:inherit;cursor:pointer;transition:.15s ease}
.schedule-grid-selector-v910>button:hover{background:rgba(13,95,194,.055);color:var(--schedule-primary)}
.schedule-grid-selector-v910>button>span{margin-top:1px;color:var(--schedule-muted);font-size:12px;line-height:.7}
.schedule-bulk-modal-v910{display:grid;gap:18px}
.schedule-bulk-modal-v910 section{padding:15px;border:1px solid var(--schedule-line);border-radius:17px;background:var(--schedule-soft)}
.schedule-bulk-modal-v910 section>p{margin:5px 0 11px;color:var(--schedule-muted);font-size:10px;line-height:1.45}
.schedule-bulk-state-grid-v910{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}
.schedule-bulk-state-v910{display:flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:8px;border:1px solid var(--schedule-line);border-radius:13px;background:var(--schedule-surface);color:var(--schedule-ink);font-size:9px;font-weight:850;cursor:pointer}
.schedule-bulk-state-v910:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(15,23,42,.07)}
.schedule-bulk-state-v910 i{display:block;width:9px;height:9px;border-radius:50%;background:#94a3b8}
.schedule-bulk-state-v910 i.is-preferred{background:#38a7e0}
.schedule-bulk-state-v910 i.is-unavailable{background:#e05269}
.schedule-requirements-page-v910{display:grid;gap:16px}
.schedule-curriculum-card-v910{min-width:0}
.schedule-curriculum-toolbar-v910{display:grid;grid-template-columns:minmax(180px,.6fr) minmax(260px,1fr) minmax(290px,.9fr);gap:14px;align-items:end;margin-bottom:15px}
.schedule-curriculum-summary-v910{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;min-height:47px}
.schedule-curriculum-summary-v910 span{display:flex;align-items:center;justify-content:center;gap:4px;padding:7px;border:1px solid var(--schedule-line);border-radius:13px;background:var(--schedule-soft);color:var(--schedule-muted);font-size:8px;font-weight:800;text-align:center}
.schedule-curriculum-summary-v910 strong{color:var(--schedule-ink);font-size:12px}
.schedule-curriculum-summary-v910 .is-warning{border-color:#fed7aa;background:#fff8ed;color:#9a5a13}
.schedule-curriculum-summary-v910 .is-danger{border-color:#fecaca;background:#fff1f2;color:#a71931}
.schedule-curriculum-rows-v910{display:grid;gap:9px}
.schedule-curriculum-row-v910{display:grid;grid-template-columns:minmax(170px,1.1fr) minmax(210px,1.35fr) minmax(90px,.45fr) minmax(82px,.4fr) minmax(170px,.9fr) minmax(125px,.65fr);gap:10px;align-items:end;padding:12px;border:1px solid var(--schedule-line);border-radius:17px;background:var(--schedule-soft)}
.schedule-curriculum-row-v910.is-pending{border-color:#fed7aa;background:#fffaf2}
.schedule-curriculum-subject-v910{display:grid;grid-template-columns:7px minmax(0,1fr);gap:10px;align-items:stretch;min-height:47px}
.schedule-curriculum-subject-v910>div{display:flex;justify-content:center;flex-direction:column;min-width:0}
.schedule-curriculum-subject-v910 strong{color:var(--schedule-ink);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.schedule-curriculum-subject-v910 small{margin-top:4px;color:var(--schedule-muted);font-size:8px;font-weight:800}
.schedule-curriculum-row-v910.is-pending .schedule-curriculum-subject-v910 small{color:#a15c08}
.schedule-auto-teacher-v910{display:block;margin-top:5px;color:#087057;font-size:8px;font-weight:850}
.schedule-inline-warning-v910{margin-top:12px;padding:10px 12px;border:1px solid #fed7aa;border-radius:13px;background:#fff8ed;color:#8b4c10;font-size:9px;font-weight:750;line-height:1.45}
html[data-theme="dark"] .schedule-availability-shift-v910,html[data-theme="dark"] .schedule-bulk-modal-v910 section,html[data-theme="dark"] .schedule-curriculum-row-v910,html[data-theme="dark"] .schedule-curriculum-summary-v910 span{background:#111d2d}
html[data-theme="dark"] .schedule-availability-shift-head-v910{background:linear-gradient(135deg,#111d2d,#0d1828)}
html[data-theme="dark"] .schedule-curriculum-row-v910.is-pending{border-color:#694923;background:#2d2114}
html[data-theme="dark"] .schedule-curriculum-summary-v910 .is-warning,html[data-theme="dark"] .schedule-inline-warning-v910{border-color:#694923;background:#2d2114;color:#f4bf84}
html[data-theme="dark"] .schedule-curriculum-summary-v910 .is-danger{border-color:#743544;background:#321622;color:#f5a1b1}
@media(max-width:1100px){
  .schedule-curriculum-toolbar-v910{grid-template-columns:repeat(2,minmax(0,1fr))}
  .schedule-curriculum-summary-v910{grid-column:1/-1}
  .schedule-curriculum-row-v910{grid-template-columns:repeat(2,minmax(0,1fr))}
  .schedule-curriculum-subject-v910{grid-column:1/-1}
}
@media(max-width:760px){
  .schedule-availability-toolbar-v910,.schedule-curriculum-toolbar-v910{grid-template-columns:1fr}
  .schedule-availability-shift-head-v910{align-items:flex-start;flex-direction:column}
  .schedule-bulk-state-grid-v910{grid-template-columns:1fr}
  .schedule-curriculum-summary-v910{grid-column:auto;grid-template-columns:1fr}
  .schedule-curriculum-row-v910{grid-template-columns:1fr}
  .schedule-curriculum-subject-v910{grid-column:auto}
}
