/* Mobile navigation and assigned learner sessions inherit the Masar system. */
.staff-app-menu section{margin:22px 0}.staff-app-menu h3{font-size:14px;color:#566780;margin:0 0 10px}.staff-app-menu button{display:flex;align-items:center;gap:12px;width:100%;min-height:52px;text-align:right;border:0;border-bottom:1px solid #e3eaf1;border-radius:0;background:white;color:var(--ink);padding:14px 4px;font-size:14px}.staff-app-menu button>.ico:first-child{color:var(--primary);width:22px;height:22px}.staff-app-menu button>span{flex:1}.staff-app-menu button>.ico:last-child{width:16px;color:#62738b}.staff-app-menu button:hover{background:var(--primary-soft)}.staff-web-return{display:block;color:var(--primary);font-size:13px;line-height:1.8;text-align:center;padding:10px}.staff-demo-role{font-size:12px}.staff-demo-role select{margin-top:7px}.student-app-header .staff-header-menu{width:40px;min-width:40px;height:40px}.student-phone .student-bottom-nav .ico{width:23px;height:23px;stroke-width:1.8}.student-phone .student-bottom-nav>button{min-height:54px}
.staff-workspace{max-width:1200px;margin:0 auto;min-height:100dvh;background:var(--bg)}.staff-workspace-header{display:flex;align-items:center;gap:12px;padding:12px 18px;background:white;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:22;min-height:76px}.staff-workspace-header>div{flex:1;min-width:0}.staff-workspace-header strong{display:block;font-size:17px}.staff-workspace-header small{display:block;font-size:12px;color:#566780;margin-top:3px}.staff-workspace-header a{display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;min-width:44px;padding:8px;color:var(--primary);border-radius:9px;font-size:13px}.staff-workspace-header a:hover{background:var(--primary-soft)}.staff-workspace-content{padding:0 24px 36px;min-width:0}.staff-mobile-workspace .shell{padding:0!important}.staff-mobile-workspace main{padding:0!important;max-width:none}.staff-mobile-workspace aside.slot-details{display:block;visibility:visible;transform:none;position:static;width:auto;height:auto;box-shadow:none}.staff-mobile-workspace .sidebar-scrim{display:none!important}.staff-mobile-workspace .slot-details{scroll-margin-top:92px}.staff-mobile-workspace #toast{bottom:20px}
.family-next .family-calendar-link{background:#ffffff18;color:white;border:1px solid #ffffff60;font-size:11px;min-height:36px;padding:7px 9px;border-radius:8px;white-space:nowrap}.family-next .family-calendar-link:hover{background:#ffffff30;color:white;border-color:white}
.learner-calendar{background:white;border:1px solid #dce5ef;border-radius:14px;padding:14px;margin-bottom:25px}.learner-calendar-switch{display:flex;background:#eff4fc;border-radius:9px;padding:4px;gap:4px}.learner-calendar-switch button{flex:1;border:0;min-height:40px;background:transparent;font-size:13px;color:#526780}.learner-calendar-switch button[aria-pressed=true]{background:white;color:var(--primary);font-weight:700}.learner-period{display:flex;align-items:center;justify-content:space-between;gap:5px;padding:15px 0 10px}.learner-period strong{font-size:16px}.learner-period .icon-button{width:40px;min-height:44px;padding:9px;border:0;background:none;color:var(--primary)}.learner-week,.learner-month{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px}.learner-week>div{text-align:center;min-width:0}.learner-week>div>span,.learner-weekday{font-size:10px;text-align:center;color:#566780;display:block;padding:6px 0}.learner-day{width:100%;min-width:0;min-height:46px;position:relative;border:0;border-radius:10px;background:none;color:#243d59;font-variant-numeric:tabular-nums;font-size:15px;padding:5px 0 12px;display:flex;align-items:center;justify-content:center;flex-direction:column}.learner-day:hover{background:#e9f1ff}.learner-day[aria-pressed=true]{background:var(--primary);color:white;font-weight:700}.learner-day i{position:absolute;bottom:6px;width:4px;height:4px;border-radius:50%;background:currentColor}.learner-day.outside-month{color:#748397}.learner-day.outside-month[aria-pressed=true]{color:white}.learner-day:disabled{opacity:.4}.learner-calendar-jump{display:flex;align-items:end;gap:9px;border-top:1px solid #e5ebf3;margin-top:15px;padding-top:14px}.learner-calendar-jump .field{flex:1;min-width:0;font-size:11px;margin:0}.learner-calendar-jump .date-field-shell{margin-top:5px}.learner-calendar-jump input{width:100%;min-width:0}.learner-calendar-jump>button{min-height:44px;font-size:12px;padding:8px 12px}.learner-day-sessions>.mobile-section-title{align-items:center;gap:7px}.learner-day-sessions>.mobile-section-title h3{font-size:16px}.learner-day-sessions>.mobile-section-title>span{color:#62738b;font-size:12px;white-space:nowrap}.learner-session{background:white;border:1px solid #dce5ef;border-radius:14px;overflow:hidden;margin-bottom:12px}.learner-session>button{display:flex;align-items:center;gap:13px;width:100%;padding:16px 13px;text-align:right;color:#243d59;background:none;border:0;border-radius:0}.learner-session>button>span:nth-child(2){flex:1;min-width:0}.learner-session>button>span>strong{display:block;font-size:14px;line-height:1.8}.learner-session>button>span>small{display:block;font-size:11px;color:#566780;margin-top:4px;line-height:1.8}.learner-session .learner-session-time{align-self:start;min-width:45px;text-align:center;background:#edf4ff;border-radius:8px;padding:8px 4px}.learner-session .learner-session-time strong{font-size:14px}.learner-session .learner-session-time small{font-size:11px}.learner-session>button>.ico{width:17px;min-width:17px;color:#62738b;transform:rotate(-90deg)}.learner-session>button[aria-expanded=true]>.ico{transform:rotate(90deg)}.learner-session em{display:inline-block;margin-top:9px;font-size:10px;font-style:normal}.learner-session.is-cancelled>button>span:nth-child(2)>strong{text-decoration:line-through}.learner-session-detail{border-top:1px solid #e3eaf1;padding:14px 16px;background:#fbfcff}.learner-session-detail dl{margin:0}.learner-session-detail dl>div{display:flex;gap:14px;justify-content:space-between;font-size:12px;line-height:1.9;padding:7px 0}.learner-session-detail dt{color:#566780}.learner-session-detail dd{margin:0;text-align:left;max-width:70%}.learner-session-detail dd span{display:block}.learner-session-detail>p{font-size:12px;line-height:1.9;color:#a63147}.learner-calendar-empty{padding:25px 5px;text-align:center}.learner-calendar-empty>.ico{width:32px;height:32px;color:#5479ac}.learner-calendar-empty h3{font-size:17px;margin:12px 0 5px}.learner-calendar-empty p{font-size:12px;line-height:1.9;color:#566780;margin:0}.learner-calendar-note{display:flex;align-items:center;justify-content:center;gap:6px;font-size:10px;color:#566780;line-height:1.8;margin:20px 0}.learner-calendar-note .ico{width:15px;height:15px}.learner-calendar button:focus-visible,.staff-app-menu button:focus-visible,.staff-workspace-header a:focus-visible{outline:2px solid var(--primary);outline-offset:2px}
@media(max-width:760px){.staff-workspace-content{padding:0 16px 28px}.staff-workspace-header{padding:10px 14px;min-height:72px}.staff-workspace-header strong{font-size:16px}.staff-workspace-header small{font-size:11px}.staff-mobile-workspace .page-head{flex-wrap:wrap;gap:10px}.staff-mobile-workspace .page-head .actions{flex-wrap:wrap}.staff-mobile-workspace .page-head h1{font-size:24px}.staff-mobile-workspace .agenda-workspace{display:block}.staff-mobile-workspace .slot-details{border-inline-start:0;border-top:1px solid var(--line)}.learner-calendar{padding:12px}.student-phone .student-bottom-nav{gap:1px;padding-inline:3px}.student-phone .student-bottom-nav>button{font-size:10px;padding-inline:2px}.learner-period strong{font-size:15px}.learner-week>div>span{font-size:10px}}
.staff-menu-utilities{display:flex;flex-wrap:wrap;gap:7px;margin:20px 0}.staff-menu-utilities button{display:flex;align-items:center;gap:7px;font-size:12px;min-height:44px;background:white;padding:9px 10px}.staff-menu-utilities .ico{width:18px;height:18px}.learner-month .learner-weekday{font-size:10px}
nav.staff-app-menu{display:block;padding:0;background:none}
/* Full day cells carry their lessons, rather than dots alone. */
.learner-calendar-pan{font-size:12px;line-height:1.8;color:#566780;margin:0 0 12px}.learner-calendar-scroll{max-height:460px;overflow:auto;border:1px solid #dce5ef;border-radius:10px;scrollbar-width:thin;scrollbar-color:#9cb6d9 #f2f6fc;overscroll-behavior:contain;position:relative}.learner-large-grid{position:relative;grid-template-columns:repeat(7,minmax(116px,1fr));min-width:812px;gap:0;background:white}.learner-large-grid .learner-weekday{position:sticky;top:0;z-index:2;background:#edf3fc;color:#354f6d;padding:12px 4px;font-size:12px;font-weight:700;border-bottom:1px solid #dce5ef;min-height:40px}.learner-day-cell{min-height:166px;padding:7px;border-inline-end:1px solid #e3eaf1;border-bottom:1px solid #e3eaf1;min-width:0;background:white}.learner-day-cell.outside-month{background:#f6f8fc}.learner-day-cell.chosen-date{background:#f0f6ff}.learner-cell-date{min-width:36px;min-height:36px;border:0;background:transparent;color:#344c68;font-size:15px;font-weight:700;padding:5px;margin-bottom:7px;border-radius:9px}.learner-cell-date[aria-pressed=true]{background:var(--primary);color:white}.learner-cell-date:disabled{opacity:.4}.outside-month .learner-cell-date:not([aria-pressed=true]){color:#62738b}.learner-cell-lessons{display:grid;gap:6px}.learner-calendar-event{display:block;min-height:66px;width:100%;padding:9px 7px;background:#e1ecff;color:#254f89;border:0;border-radius:7px;text-align:right}.learner-calendar-event span{display:block;font-size:11px;font-weight:700;white-space:nowrap;text-align:right;font-variant-numeric:tabular-nums}.learner-calendar-event strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:12px;line-height:1.7;margin-top:5px;font-weight:700;overflow-wrap:anywhere}.learner-calendar-event small{display:block;font-size:10px;margin-top:3px}.learner-calendar-event.complete{color:#216650;background:#e6f5ef}.learner-calendar-event.cancelled{color:#a63147;background:#fff0f2}.learner-calendar-event.cancelled strong{text-decoration:line-through}.learner-calendar-event[aria-expanded=true]{outline:2px solid var(--primary);outline-offset:-2px}.learner-cell-more{min-height:36px;border:0;background:none;color:var(--primary);font-size:11px;font-weight:700;text-align:right;padding:5px 2px}.large-week .learner-day-cell{min-height:240px}.learner-day-sessions{scroll-margin-top:24px}.mobile-app .parent-phone .learner-day-sessions{scroll-margin-top:170px}.learner-calendar-scroll:focus-visible{outline:2px solid var(--primary);outline-offset:3px}.mobile-app .calendar-phone{max-width:1200px!important}.mobile-app:has(.calendar-phone) .student-bottom-nav{width:min(100%,1200px)}.calendar-phone .learner-calendar{padding:14px}.calendar-phone .phone-content{min-width:0}
@media(min-width:761px){.mobile-app .calendar-phone .phone-content{padding-inline:28px}.mobile-app .calendar-phone .family-context{padding-inline:28px}.mobile-app .calendar-phone .family-child-strip{max-width:460px}.mobile-app .calendar-phone .learner-calendar-scroll{max-height:640px}.mobile-app .calendar-phone .learner-day-cell{min-height:175px}}
.learner-calendar-scroll{overscroll-behavior-x:contain;overscroll-behavior-y:auto}
.learner-calendar-back{min-height:44px;margin:0 0 14px;padding:8px 12px;font-size:13px;background:white;color:var(--primary)}.mobile-app .parent-phone .learner-calendar{scroll-margin-top:170px}
.learner-cell-date{min-width:44px;min-height:44px}
.mobile-app .phone.calendar-phone{width:min(100%,1200px)!important}
.mobile-app #view:has(.calendar-phone){max-width:1200px;width:100%}
@media(min-width:761px){.mobile-app .calendar-phone .learner-calendar-scroll{max-height:520px}}
