/* Narrow phone calendar. Original card contents/controllers stay intact;
   Today and Upcoming now have independent exterior borders and a gap. */
/* Raw Today rows never briefly advertise execution before the authoritative
   session read. Reserve its layout without a temporary badge or loading text. */
html.peV2PhoneHome body.homeDashboardApp #app #homeTodayList:not([data-pe-v2-home-status="ready"]) .homeTodayStart {
  opacity:1!important;visibility:hidden!important;font-size:0!important;color:#728493!important;background:#f0f4f7!important;
  border-color:#dce5ec!important;box-shadow:none!important;pointer-events:none!important;
}
html.peV2PhoneHome body.homeDashboardApp #app #homeTodayList:not([data-pe-v2-home-status="ready"]) .homeTodayStart::before {
  content:""!important;font-size:10px!important;font-weight:800!important;
}
html.peV2PhoneHome body.homeDashboardApp #app #homeTodayList[data-pe-v2-home-status="error"] .homeTodayStart {visibility:visible!important;}
html.peV2PhoneHome body.homeDashboardApp #app #homeTodayList[data-pe-v2-home-status="error"] .homeTodayStart::before {content:"확인 필요"!important;}
html.peV2PhoneHome body.homeDashboardApp #app #homeTodayList:not([data-pe-v2-home-status="ready"]) .peHomeTodayStatus,
html.peV2PhoneHome body.homeDashboardApp #app #homeTodayList:not([data-pe-v2-home-status="ready"]) .peHomeTodayStartProxy12335,
html.peV2PhoneHome body.homeDashboardApp #app #homeTodayList:not([data-pe-v2-home-status="ready"]) .homeTodayRecordEdit {visibility:hidden!important;pointer-events:none!important;}
html.peV2PhoneHome body.homeDashboardApp #app #homeTodayList .peV2HomeStatusRetry {
  min-height:40px;padding:8px 12px;margin:4px 10px 10px;border:1px solid #d8e4ec;border-radius:9px;background:#f8fbfd;color:#3b6c8c;font:inherit;font-size:12px;font-weight:800;
}
html.peV2PhoneHome body.homeDashboardApp #app .homeDashboardCard.homeScheduleCard {
  border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important;overflow:visible!important;
}
html.peV2PhoneHome body.homeDashboardApp #app .homeScheduleColumns {
  display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:10px!important;overflow:visible!important;
}
html.peV2PhoneHome body.homeDashboardApp #app .homeSchedulePane {
  border:1px solid #dbe4df!important;border-radius:17px!important;background:#fff!important;
  box-shadow:0 5px 18px rgb(33 73 62 / 4%)!important;overflow:hidden!important;min-width:0!important;
}
html.peV2PhoneHome body.homeDashboardApp #app .homeSchedulePane + .homeSchedulePane {
  margin-top:0!important;padding-top:0!important;border-left:1px solid #dbe4df!important;
}
html.peV2PhoneHome body.homeDashboardApp #app .homeHero.peV2MonthHero {
  display:flex!important;flex-direction:column!important;align-items:stretch!important;
  gap:12px!important;min-height:0!important;height:auto!important;max-height:none!important;
  padding:16px 14px 14px!important;background:#fff!important;background-image:none!important;
  border:1px solid #dbe5ee!important;border-radius:18px!important;box-shadow:0 5px 18px #28496b08!important;
  overflow:visible!important;
}
html.peV2PhoneHome body.homeDashboardApp #app .homeHero.peV2MonthHero::before,
html.peV2PhoneHome body.homeDashboardApp #app .homeHero.peV2MonthHero::after {display:none!important;}
html.peV2PhoneHome body.homeDashboardApp #app .homeHero.peV2MonthHero .homeHeroActions[data-home-actions-layout],
html.peV2PhoneHome body.homeDashboardApp #app .homeHero.peV2MonthHero .homeHeroActions {
  /* Keep the original event owners for a later desktop/Fold restore, but
     the phone calendar's + launcher is the sole visible action entry. */
  display:none!important;
}
html.peV2PhoneHome body.homeDashboardApp #app .homeHero.peV2MonthHero .homeHeroActions > #homeOpenCalendar {display:none!important;}
html.peV2PhoneHome body.homeDashboardApp #app .homeHero.peV2MonthHero .homeHeroActions > button {
  min-width:0!important;width:100%!important;height:44px!important;min-height:44px!important;
  max-height:44px!important;margin:0!important;padding:0 6px!important;font-size:14px!important;
}
html.peV2PhoneHome body.homeDashboardApp #app .homeHero.peV2MonthHero .homeHeroActions > #homeAddLesson {grid-area:register!important;}
html.peV2PhoneHome body.homeDashboardApp #app .homeHero.peV2MonthHero .homeHeroActions > #homeAssessmentStation {grid-area:station!important;}
html.peV2PhoneHome body.homeDashboardApp #app .homeHero.peV2MonthHero .homeHeroActions > #homeClassroomTools {grid-area:tools!important;}
html.peV2PhoneHome .peV2MonthCalendar {width:100%;min-width:0;color:#243d50;}
html.peV2PhoneHome #app .peV2MonthHeading {position:relative;display:flex;align-items:center;justify-content:center;min-height:44px;padding:0 36px;margin:0 0 9px;}
html.peV2PhoneHome #app .peV2MonthHeading h2 {margin:0;font-family:inherit;font-size:20px;font-weight:900;line-height:1.3;white-space:nowrap;letter-spacing:-.5px;}
html.peV2PhoneHome #app .peV2MonthControls {display:flex;align-items:center;justify-content:center;gap:1px;min-width:0;}
html.peV2PhoneHome #app .peV2MonthControls button,
html.peV2PhoneHome #app .peV2CalendarPlus {display:inline-flex;align-items:center;justify-content:center;flex:none;width:30px;height:44px;min-height:44px;margin:0;padding:0;border:0;border-radius:10px;background:transparent;color:#405d70;font:inherit;font-size:27px;line-height:1;box-shadow:none;}
html.peV2PhoneHome #app .peV2MonthHeading h2 button {width:auto;padding:0 2px;color:#243d50;font:inherit;}
html.peV2PhoneHome #app .peV2CalendarPlus {position:absolute;right:0;top:0;width:34px;color:#1879ce;font-size:28px;font-weight:600;}
html.peV2PhoneHome #app .peV2Semester {position:absolute;left:0;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:35px;height:25px;border-radius:7px;background:#eaf6f2;color:#21826d;font-size:11px;font-weight:800;line-height:1;white-space:nowrap;}
/* Same launcher component and icon cards; build all four before first paint. */
html.peV2PhoneHome #classroomLauncherModal.peV2CalendarLauncher .classroomLauncherShortcutGrid {grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:6px!important;}
html.peV2PhoneHome #classroomLauncherModal.peV2CalendarLauncher .classroomLauncherShortcutGrid button {display:grid!important;place-items:center!important;align-content:center!important;gap:7px!important;width:100%!important;min-width:0!important;min-height:94px!important;height:auto!important;padding:10px 3px!important;border:1px solid #d7e4ed!important;border-radius:12px!important;background:#f9fcfe!important;color:#1d394f!important;box-shadow:none!important;font-family:inherit;}
html.peV2PhoneHome #classroomLauncherModal.peV2CalendarLauncher .classroomLauncherShortcutGrid b {display:flex;align-items:center;justify-content:center;min-height:30px;font-size:11px!important;line-height:1.4;word-break:keep-all;white-space:normal!important;}
html.peV2PhoneHome #classroomLauncherModal.peV2CalendarLauncher .classroomLauncherShortcutGrid small {display:none!important;}
html.peV2PhoneHome #classroomLauncherModal.peV2CalendarLauncher .classroomLauncherShortcutGrid button>span {font-size:24px;line-height:1;}
html.peV2PhoneHome #classroomLauncherModal.peV2CalendarLauncher * {animation:none!important;-webkit-tap-highlight-color:transparent;}
#peV2MonthPicker {position:fixed;inset:0;z-index:2450;display:flex;align-items:center;justify-content:center;padding:16px;background:rgb(18 37 54 / 40%);font-family:inherit;}
#peV2MonthPicker * {box-sizing:border-box;-webkit-tap-highlight-color:transparent;}
#peV2MonthPicker .peV2MonthPickerPanel {width:min(100%,380px);max-height:calc(100dvh - 32px);overflow:auto;margin:0;padding:18px;border:1px solid #d9e5ee;border-radius:20px;background:#fff;color:#243d50;box-shadow:0 18px 50px #173c5533;}
#peV2MonthPicker header {display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 18px;}
#peV2MonthPicker h2 {margin:0;font:inherit;font-size:19px;font-weight:900;}
#peV2MonthPicker button {display:flex;align-items:center;justify-content:center;min-height:44px;margin:0;padding:8px 12px;border:1px solid #d6e2ea;border-radius:11px;background:#fff;color:#365970;box-shadow:none;font:inherit;font-size:14px;font-weight:800;}
#peV2MonthPicker header button {width:40px;padding:0;font-size:26px;font-weight:400;}
#peV2MonthPicker .peV2MonthPickerFields {display:grid;grid-template-columns:1.2fr 1fr;gap:12px;}
#peV2MonthPicker label {display:grid;gap:9px;min-width:0;font-size:13px;font-weight:800;}
#peV2MonthPicker select {width:100%;min-width:0;height:48px;padding:10px 30px 10px 10px;border:1px solid #d6e2ea;border-radius:10px;background-color:#fff;color:#243d50;font:inherit;font-size:16px;text-align:center;text-align-last:center;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M2 2l4 4 4-4' fill='none' stroke='%23405b72' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;}
#peV2MonthPicker footer {display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:22px 0 0;}
#peV2MonthPicker button[type="submit"] {background:#1b4473;border-color:#1b4473;color:#fff;}
html.peV2PhoneHome .peV2MonthWeekdays,
html.peV2PhoneHome .peV2MonthGrid {display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:0;}
html.peV2PhoneHome .peV2MonthWeekdays {margin:0 0 3px;color:#7f8fa1;font-size:11px;font-weight:800;text-align:center;line-height:25px;}
html.peV2PhoneHome .peV2MonthWeekdays span:first-child {color:#d85c66;}
html.peV2PhoneHome .peV2MonthWeekdays span:last-child {color:#447dc1;}
html.peV2PhoneHome .peV2MonthDay {display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;width:100%;min-width:0;height:52px;min-height:52px;padding:2px 0;margin:0;border:0;border-radius:0;background:transparent;box-shadow:none;color:#2b4050;font:inherit;cursor:pointer;}
html.peV2PhoneHome .peV2DateNumber {display:flex;align-items:center;justify-content:center;width:31px;height:31px;border-radius:50%;font-size:15px;font-weight:800;line-height:1;}
html.peV2PhoneHome .peV2MonthDay.is-today .peV2DateNumber {background:#177ce3;color:#fff;}
html.peV2PhoneHome .peV2MonthDay.is-sunday:not(.is-today) .peV2DateNumber {color:#d85c66;}
html.peV2PhoneHome .peV2MonthDay.is-saturday:not(.is-today) .peV2DateNumber {color:#447dc1;}
html.peV2PhoneHome .peV2DateCount {height:13px;line-height:13px;color:#5485b5;font-size:9px;font-weight:800;}
html.peV2PhoneHome .peV2DateCount.is-empty {visibility:hidden;}
html.peV2PhoneHome .peV2MonthStatus {min-height:0;font-size:11px;text-align:center;line-height:1.5;color:#738698;}
html.peV2PhoneHome .peV2MonthStatus:empty {display:none;}
html.peV2PhoneHome .peV2MonthStatus button {border:0;background:transparent;color:#1770bc;font:inherit;font-weight:800;text-decoration:underline;}
html.peV2PhoneHome #app .peV2MonthDay[aria-expanded="true"] .peV2DateNumber {box-shadow:0 0 0 1px #177ce3,0 0 0 4px #eaf4ff;}
html.peV2PhoneHome #app .peV2MonthDay[aria-expanded="true"]:not(.is-today) .peV2DateNumber {background:#eaf4ff;color:#177ce3;}
html.peV2PhoneHome #app .peV2InlineLessons {margin-top:13px;padding-top:16px;border-top:1px solid #dbe5ee;}
html.peV2PhoneHome #app .peV2InlineLessons[hidden] {display:none!important;}
html.peV2PhoneHome #app .peV2InlineHeading {display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px;margin:0 0 12px;padding:0;}
html.peV2PhoneHome #app .peV2InlineHeading>div {display:flex;align-items:center;gap:7px;flex-wrap:wrap;min-width:0;}
html.peV2PhoneHome #app .peV2InlineHeading h3 {margin:0;font:inherit;font-size:15px;font-weight:900;line-height:1.4;color:#243d50;}
html.peV2PhoneHome #app .peV2InlineCount {font-size:11px;color:#177ce3;background:#eaf4ff;padding:3px 7px;border-radius:20px;white-space:nowrap;}
html.peV2PhoneHome #app .peV2InlineHeading>button {display:flex;align-items:center;justify-content:center;gap:5px;flex:none;width:auto!important;height:auto!important;min-height:40px!important;padding:6px 9px!important;border:1px solid #dbe5ee!important;border-radius:10px!important;background:#fff!important;box-shadow:none!important;color:#177ce3!important;font:inherit;font-size:12px!important;font-weight:800;white-space:nowrap;}
html.peV2PhoneHome #app .peV2InlineList {display:grid;gap:9px;}
html.peV2PhoneHome #app .peV2InlineLesson {display:grid!important;grid-template-columns:minmax(0,1fr) 18px;align-items:center!important;text-align:left!important;gap:10px;width:100%!important;height:auto!important;min-height:0!important;margin:0!important;padding:13px 12px!important;border:1px solid #dbe5ee!important;border-radius:13px!important;background:#fff!important;box-shadow:none!important;color:#243d50!important;font:inherit;}
html.peV2PhoneHome #app .peV2InlineInfo {display:block;min-width:0;text-align:left!important;}
html.peV2PhoneHome #app .peV2InlineRow {display:flex;align-items:center;gap:7px;min-width:0;}
html.peV2PhoneHome #app .peV2InlinePeriod {border-radius:6px;background:#eaf4ff;color:#177ce3;padding:3px 6px;font-size:11px;white-space:nowrap;}
html.peV2PhoneHome #app .peV2InlineRow strong {font-size:14px;font-weight:900;}
html.peV2PhoneHome #app .peV2InlineLessonNo {margin-left:auto;font-size:11px;color:#6d8193;white-space:nowrap;font-weight:500;}
html.peV2PhoneHome #app .peV2InlineSubject {display:block;font-size:14px;font-weight:800;margin:9px 0 5px;overflow-wrap:anywhere;}
html.peV2PhoneHome #app .peV2InlinePlace {display:block;font-size:12px;font-weight:500;color:#6d8193;overflow-wrap:anywhere;}
html.peV2PhoneHome #app .peV2InlineChevron {color:#6d8193;font-size:23px;line-height:1;text-align:right;}
html.peV2PhoneHome #app .peV2InlineEmpty {padding:24px 5px;text-align:center;color:#6d8193;font-size:13px;}
html.peV2PhoneHome #app .peV2InlinePending {min-height:100px;}
#peV2CalendarDay {position:fixed;inset:0;z-index:2450;display:flex;align-items:center;justify-content:center;padding:12px;background:rgb(18 37 54 / 40%);box-sizing:border-box;font-family:inherit;}
#peV2CalendarDay *,html.peV2PhoneHome .peV2MonthCalendar * {-webkit-tap-highlight-color:transparent;box-sizing:border-box;}
#peV2CalendarDay .peV2DayPanel {display:flex;flex-direction:column;width:min(100%,520px);max-height:calc(100dvh - 24px);min-width:0;border-radius:20px;border:1px solid #d9e5ee;box-shadow:0 18px 50px #173c5533;overflow:hidden;background:#fff;color:#243d50;}
#peV2CalendarDay .peV2DayHeader {display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px;background:#f1f8fe;border-bottom:1px solid #dce8f0;flex-shrink:0;}
#peV2CalendarDay .peV2DayHeader h2 {margin:0 0 6px;font-size:21px;font-weight:900;line-height:1.3;}
#peV2CalendarDay .peV2DetailDate {display:block;margin-bottom:5px;font-size:12px;color:#6d8193;}
#peV2CalendarDay.peV2SingleLesson .peV2DayHeader h2 {font-size:18px;margin:0;}
#peV2CalendarDay.peV2SingleLesson .peV2DayLesson {border:0;padding:4px 2px;}
#peV2CalendarDay.peV2SingleLesson .peV2DayLesson h4 {font-size:19px;margin:0 0 16px;}
#peV2CalendarDay.peV2SingleLesson .peV2DayLesson dl {gap:13px;font-size:14px;}
#peV2CalendarDay.peV2SingleLesson .peV2DayLessonActions {border-top:1px solid #e1e9ee;padding-top:14px;margin-top:17px;}
#peV2CalendarDay .peV2DayCount {display:inline-flex;padding:3px 9px;border-radius:20px;background:#e1f0ff;color:#2679bb;font-size:12px;font-weight:800;line-height:1.4;}
#peV2CalendarDay .peV2DayClose {display:flex;align-items:center;justify-content:center;flex:0 0 40px;width:40px;height:40px;padding:0;border:1px solid #d7e1ea;border-radius:12px;background:#fff;color:#334d5f;font:inherit;font-size:27px;line-height:1;}
#peV2CalendarDay .peV2DayBody {overflow:auto;overscroll-behavior:contain;min-height:0;padding:14px;display:flex;flex-direction:column;gap:12px;-webkit-overflow-scrolling:touch;}
#peV2CalendarDay .peV2DayLesson {flex:none;padding:15px 14px;border:1px solid #dae4eb;border-radius:15px;background:#fff;}
#peV2CalendarDay .peV2DayLesson>header {display:flex;align-items:center;gap:7px;}
#peV2CalendarDay .peV2DayLesson h3 {margin:0;flex:1;font-size:16px;line-height:1.4;font-weight:900;}
#peV2CalendarDay .peV2Period {padding:4px 6px;border-radius:7px;color:#1971b8;background:#e9f4ff;font-size:12px;font-weight:900;white-space:nowrap;}
#peV2CalendarDay .peV2LessonNo {font-size:11px;color:#6a8090;white-space:nowrap;}
#peV2CalendarDay .peV2DayLesson h4 {margin:13px 0 10px;font-size:17px;line-height:1.4;font-weight:900;overflow-wrap:anywhere;}
#peV2CalendarDay .peV2DayLesson dl {display:flex;flex-direction:column;gap:7px;margin:0;font-size:13px;line-height:1.55;}
#peV2CalendarDay .peV2DayLesson dl>div {display:grid;grid-template-columns:32px minmax(0,1fr);gap:8px;}
#peV2CalendarDay .peV2DayLesson dt {margin:0;color:#8493a1;font-weight:700;}
#peV2CalendarDay .peV2DayLesson dd {margin:0;color:#3c5363;white-space:pre-wrap;overflow-wrap:anywhere;}
#peV2CalendarDay .peV2DayLessonActions {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:13px;}
#peV2CalendarDay .peV2DayLessonActions button,#peV2CalendarDay .peV2DayEditBack {min-height:40px;border:1px solid #d6e2ec;border-radius:10px;background:#f9fbfd;color:#3c5870;font:inherit;font-size:12px;font-weight:800;}
#peV2CalendarDay .peV2DayLessonActions .peV2DayRun {background:#edf7f5;color:#1c8376;border-color:#dceee8;}
#peV2CalendarDay .peV2DayExecutionStatus {display:inline-flex;align-items:center;align-self:flex-start;gap:4px;margin:10px 0 0;padding:4px 8px;border-radius:7px;font-size:11px;font-weight:800;line-height:1.35;color:#75899a;background:#f0f4f7;}
#peV2CalendarDay .peV2DayExecutionStatus[data-status="loading"] {visibility:hidden;min-height:23px;}
#peV2CalendarDay .peV2DayActionPending {display:block;min-height:40px;pointer-events:none;}
#peV2CalendarDay .peV2DayExecutionStatus[data-status="completed"] {color:#168066;background:#e6f6ef;}
#peV2CalendarDay .peV2DayExecutionStatus[data-status="draft"] {color:#9d6d12;background:#fff5dd;}
#peV2CalendarDay .peV2DayLessonActions button:disabled {color:#93a0aa!important;background:#f1f4f7!important;border-color:#e1e7ec!important;cursor:not-allowed;box-shadow:none;}
#peV2CalendarDay .peV2DayStatusRetry {border:0;background:transparent;color:#2a75a9;font:inherit;font-size:11px;font-weight:800;text-decoration:underline;}
#peV2CalendarDay .peV2DayFooter {padding:12px 14px;flex:none;border-top:1px solid #e1e9ee;background:#fff;}
#peV2CalendarDay .peV2DayRegister {width:100%;height:44px;border:0;border-radius:12px;background:#157de3;color:#fff;font:inherit;font-size:15px;font-weight:900;}
#peV2CalendarDay .peV2DayRegister[hidden],#peV2CalendarDay [hidden] {display:none!important;}
#peV2CalendarDay .peV2DayFooter:has(.peV2DayRegister[hidden]) {display:none;}
#peV2CalendarDay .peV2DayEmpty {padding:35px 12px;text-align:center;font-size:14px;color:#81909f;}
#peV2CalendarDay .peV2DayEmpty button {display:block;margin:15px auto 0;min-height:40px;padding:0 14px;border:1px solid #d4e1eb;border-radius:10px;background:#fff;color:#2d6fa2;font:inherit;}
#peV2CalendarDay.peV2UpcomingDay .peV2DayHeader h2 {margin:0;}
#peV2CalendarDay.peV2UpcomingDay .peV2UpcomingDates {display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:8px;padding:16px 14px 10px;flex:none;}
#peV2CalendarDay.peV2UpcomingDay .peV2UpcomingDates>button {display:flex;align-items:center;justify-content:center;width:44px;height:44px;min-height:44px;padding:0;border:1px solid #d5e0e9;border-radius:10px;background:#fff;color:#3c5870;font:inherit;font-size:27px;line-height:1;}
#peV2CalendarDay.peV2UpcomingDay .peV2UpcomingDates>button:disabled {color:#a6b2bc;background:#f3f6f9;cursor:not-allowed;}
#peV2CalendarDay.peV2UpcomingDay .peV2UpcomingDates>input {display:block;width:100%;height:46px;min-height:46px;min-width:0;padding:8px 10px;border:1px solid #d5e0e9;border-radius:10px;background:#fff;color:#243d50;font:inherit;font-size:16px;text-align:center;}
#peV2CalendarDay.peV2UpcomingDay .peV2UpcomingMeta {display:flex;align-items:center;justify-content:space-between;gap:12px;padding:1px 16px 12px;min-height:38px;flex:none;}
#peV2CalendarDay.peV2UpcomingDay .peV2UpcomingMeta>strong {font-size:15px;line-height:1.4;}
#peV2CalendarDay.peV2UpcomingDay .peV2DayBody {padding-top:0;}
#peV2CalendarDay.peV2UpcomingDay .peV2DaySchedulePending {min-height:140px;}
#peV2CalendarDay.peV2UpcomingDay .peV2DayFooter {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
#peV2CalendarDay.peV2UpcomingDay .peV2DayCloseSecondary {display:flex;align-items:center;justify-content:center;width:100%;height:44px;min-height:44px;padding:0 8px;border:1px solid #d5e0e9;border-radius:12px;background:#fff;color:#3c5870;font:inherit;font-size:15px;font-weight:800;}
#peV2CalendarDay.peV2UpcomingDay .peV2DayFooter:has(.peV2DayRegister[hidden]) {display:none;}
#peV2CalendarDay .peV2DayError {padding:12px 16px;background:#fff2f1;color:#a13933;font-size:13px;line-height:1.55;flex-shrink:0;}
#peV2CalendarDay .peV2DayEditDate {display:flex;flex-direction:column;gap:7px;}
#peV2CalendarDay .peV2DayEditDate label {font-size:13px;font-weight:800;}
#peV2CalendarDay input,#peV2CalendarDay textarea,#peV2CalendarDay select {min-width:0;max-width:100%;font-size:16px;font-family:inherit;}
#peV2CalendarDay .peV2DayEditDate input {width:100%;height:44px;border:1px solid #d6e2ea;border-radius:9px;padding:7px 10px;background:#fff;color:#2d485c;}
#peV2CalendarDay .calendarLinkedEditGrid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
#peV2CalendarDay .calendarLinkedEditGrid label {min-width:0;}
#peV2CalendarDay .calendarLinkedEditGrid .wide {grid-column:1/-1;}
#peV2CalendarDay .calEditHeader {margin-bottom:12px;}
#peV2CalendarDay[data-v2-editing="true"] .calEditHeader,#peV2CalendarDay[data-v2-editing="true"] .peV2DetailDate {display:none;}
#peV2CalendarDay.peV2UpcomingDay[data-v2-editing="true"] .peV2DayBody {padding-top:14px;}
#peV2CalendarDay .calEditButtons {display:flex;gap:8px;margin-top:15px;}
#peV2CalendarDay .calEditButtons button {flex:1;min-width:0;min-height:44px;}
#peV2CalendarDay button:focus-visible,html.peV2PhoneHome .peV2MonthCalendar button:focus-visible {outline:2px solid #154d76;outline-offset:2px;}
@media(max-width:350px){
  html.peV2PhoneHome #app .peV2MonthHeading h2 {font-size:17px;}
  html.peV2PhoneHome #app .peV2MonthControls>button {width:24px;}
  html.peV2PhoneHome #app .peV2InlineHeading h3 {font-size:14px;}
  html.peV2PhoneHome #app .peV2InlineHeading>div {gap:4px;}
  html.peV2PhoneHome #app .peV2InlineHeading>button {padding-inline:6px!important;}
  html.peV2PhoneHome #app .peV2InlineRow strong {font-size:13px;}
  html.peV2PhoneHome #app .peV2InlineRow {gap:5px;}
  #peV2CalendarDay .peV2DayLesson h3 {font-size:14px;}
  #peV2CalendarDay .peV2DayLesson {padding:13px 11px;}
}
