.app-shell.is-app-view[data-student-tab]{--student-tab-height:66px;--student-safe-bottom:var(--safe-area-inset-bottom,env(safe-area-inset-bottom,0px));--student-safe-top:var(--safe-area-inset-top,env(safe-area-inset-top,0px));--student-bar-bottom:max(10px, var(--student-safe-bottom));--student-bottom-space:calc(var(--student-bar-bottom) + var(--student-tab-height) + 20px);--student-background:#f2f2f7;--student-surface:#fff;--student-ink:#1c1c1e;--student-secondary:#636366;--student-line:#e5e5ea;--student-blue:#007aff;--student-fill:#f2f2f7}.student-file-input{display:none}.app-shell.is-app-view[data-student-tab] .left-panel,.app-shell.is-app-view[data-student-tab] .place-action-sheet{bottom:var(--student-bottom-space);max-height:min(48dvh, calc(100dvh - var(--student-bottom-space) - max(9px, var(--student-safe-top)) - 122px));overscroll-behavior-y:contain;overflow-y:auto}.app-shell.is-app-view[data-student-tab]:not([data-student-tab=map])>.topbar,.app-shell.is-app-view[data-student-tab]:not([data-student-tab=map])>.workspace{visibility:hidden;pointer-events:none}.student-tab-bar{z-index:45;bottom:var(--student-bar-bottom);-webkit-backdrop-filter:blur(28px)saturate(180%);width:min(420px,100% - 24px);color:var(--student-secondary);background:#fafafce0;border:1px solid #fffc;border-radius:26px;grid-template-columns:repeat(4,minmax(0,1fr));padding:5px;display:grid;position:absolute;left:50%;transform:translate(-50%);box-shadow:0 4px 24px #0000001a,0 1px 4px #0000000a}.student-tab-bar button{min-height:54px;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:21px;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:.6875rem;font-weight:550;line-height:1.4;display:flex}.student-tab-bar button[aria-current=page]{color:var(--student-blue);background:#e6efff}.student-page{z-index:40;overscroll-behavior-y:contain;overflow-anchor:none;scroll-padding-block:24px var(--student-bottom-space);background:var(--student-background);color:var(--student-ink);padding:calc(max(16px, var(--student-safe-top)) + 8px) max(16px, env(safe-area-inset-right,0px)) calc(var(--student-bottom-space) + 16px) max(16px, env(safe-area-inset-left,0px));-webkit-overflow-scrolling:touch;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,sans-serif;font-size:.9375rem;line-height:1.5;position:absolute;inset:0;overflow-y:auto}.student-content{flex-direction:column;gap:14px;width:100%;max-width:640px;margin:0 auto;padding-bottom:1px;display:flex}.student-content>*{flex-shrink:0;min-width:0}.student-card{background:var(--student-surface);border:0;border-radius:20px;min-width:0;padding:20px}.student-card p,.student-content .student-subtle,.student-footnote{color:var(--student-secondary);font-size:.8125rem;line-height:1.6}.student-card p{margin:4px 0 0}.student-content .student-footnote{margin:12px 0 0;font-size:.75rem}.student-identity{align-items:center;gap:14px;padding:22px 20px;display:flex}.student-avatar{width:54px;height:54px;color:var(--student-blue);background:#edf3ff;border-radius:50%;flex-shrink:0;place-items:center;display:grid}.student-identity>div:last-child{min-width:0}.student-identity strong{font-size:1.0625rem;font-weight:600}.student-identity p{overflow-wrap:anywhere}.student-current{width:100%;color:inherit;text-align:left;cursor:pointer;align-items:center;gap:12px;display:flex}.student-current>div{flex:1;min-width:0}.student-current small{color:var(--student-secondary);margin-bottom:4px;font-size:.75rem;display:block}.student-current strong{font-size:.9375rem;font-weight:600;display:block}.student-current>svg{color:#aeaeb2;flex-shrink:0}.student-soft-icon{width:42px;height:42px;color:var(--student-blue);background:#edf3ff;border-radius:13px;flex-shrink:0;place-items:center;display:grid}.student-import{text-align:center;padding:24px 20px}.student-import-info{text-align:left;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:18px;font-weight:550;display:flex}.student-import-info>svg{color:var(--student-blue)}.student-import-info .student-subtle{flex-basis:100%;font-weight:400}.student-primary,.student-secondary{cursor:pointer;border:0;border-radius:13px;justify-content:center;align-items:center;gap:8px;min-height:46px;padding:11px 20px;font-size:.9375rem;font-weight:550;display:inline-flex}.student-primary{color:#fff;background:var(--student-blue)}.student-secondary{color:var(--student-blue);background:#edf3ff}.student-import .student-primary{width:100%}.student-section-title{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.student-section-title>span{overflow-wrap:anywhere;min-width:0;font-weight:550}.student-icon-button{width:44px;height:44px;color:var(--student-secondary);background:var(--student-fill);cursor:pointer;border:0;border-radius:50%;flex-shrink:0;place-items:center;padding:0;display:grid}.student-notice{color:#174e9f;background:#e6efff;border-radius:16px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px 10px 16px;font-size:.8125rem;display:flex}.student-notice button{width:44px;height:44px;color:inherit;cursor:pointer;background:0 0;border:0;flex-shrink:0;place-items:center;display:grid}.student-content .student-warning{color:#9c5700;font-size:.8125rem;line-height:1.6}.student-info{color:var(--student-secondary);background:var(--student-surface);border-radius:16px;padding:14px 16px;font-size:.8125rem}.student-info p{margin:4px 0 0}.student-preview{box-shadow:inset 0 0 0 1px #b8d6ff}.student-preview-list{margin:16px 0;display:grid}.student-preview-list>div{border-bottom:1px solid var(--student-line);flex-direction:column;gap:4px;padding:12px 0;font-size:.875rem;display:flex}.student-preview-list span{color:var(--student-secondary);font-size:.8125rem}.student-settings{padding:0;overflow:hidden}.student-settings>summary{cursor:pointer;align-items:center;gap:12px;min-height:64px;padding:12px 16px;font-size:.9375rem;font-weight:450;list-style:none;display:flex}.student-settings>summary::-webkit-details-marker{display:none}.student-setting-icon{color:#fff;background:var(--student-blue);border-radius:9px;flex-shrink:0;place-items:center;width:32px;height:32px;display:grid}.student-settings:has(.lucide-utensils) .student-setting-icon{background:#ff9500}.student-settings:has(.lucide-book-open) .student-setting-icon{background:#af52de}.student-settings:has(.lucide-clock3) .student-setting-icon{background:#34a853}.student-setting-value{color:var(--student-secondary);text-align:right;overflow-wrap:anywhere;min-width:0;max-width:40%;margin-left:auto;font-size:.8125rem}.student-disclosure-chevron{color:#aeaeb2;flex-shrink:0;margin-left:auto}.student-setting-value+.student-disclosure-chevron{margin-left:0}.student-settings[open]>summary .student-disclosure-chevron{transform:rotate(90deg)}.student-settings-body{padding:0 18px 20px}.student-field{min-width:0;color:var(--student-secondary);flex-direction:column;gap:8px;margin-top:16px;font-size:.8125rem;display:flex}.student-field input,.student-field select{box-sizing:border-box;border:1px solid var(--student-line);width:100%;min-width:0;min-height:46px;color:var(--student-ink);background:var(--student-fill);border-radius:12px;padding:10px 12px;font-family:inherit;font-size:1rem}.student-field input[type=date],.student-field input[type=time]{-webkit-appearance:none;appearance:none}.student-fields-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px;margin-bottom:16px;display:grid}.student-dining{border:0;margin:20px 0 0;padding:0}.student-dining legend{color:var(--student-secondary);margin-bottom:12px;font-size:.8125rem}.student-place-chips{flex-wrap:wrap;gap:8px;display:flex}.student-place-chips label{display:flex;position:relative}.student-place-chips input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.student-place-chips span{background:var(--student-fill);min-height:44px;color:var(--student-secondary);border-radius:12px;align-items:center;padding:10px 13px;font-size:.8125rem;display:flex}.student-place-chips input:checked+span{color:#005ec4;background:#e6efff;box-shadow:inset 0 0 0 1px #a2c8ff}.student-place-chips input:focus-visible+span{outline:2px solid var(--student-blue);outline-offset:3px}.student-toggle{justify-content:space-between;align-items:center;gap:12px;min-height:52px;font-size:.9375rem;display:flex}.student-toggle input{-webkit-appearance:none;appearance:none;cursor:pointer;background:#d1d1d6;border:0;border-radius:99px;flex-shrink:0;width:51px;height:32px;position:relative}.student-toggle input:before{content:"";background:#fff;border-radius:50%;width:28px;height:28px;position:absolute;top:2px;left:2px;box-shadow:0 2px 3px #00000026}.student-toggle input:checked{background:#34c759}.student-toggle input:checked:before{transform:translate(19px)}.student-actions{flex-wrap:wrap;gap:10px;margin-top:16px;display:flex}.student-override{color:var(--student-secondary);justify-content:space-between;align-items:center;gap:10px;padding-top:12px;font-size:.8125rem;display:flex}.student-override button,.student-clear button{min-height:44px;color:var(--student-blue);cursor:pointer;background:0 0;border:0;border-radius:12px;padding:10px 12px;font-size:.875rem}.student-clear{text-align:center;color:var(--student-secondary);padding:4px 0;font-size:.8125rem}.student-clear button{color:#d92d28}.student-date-picker{background:var(--student-surface);border-radius:18px;align-items:center;gap:4px;padding:5px;display:flex}.student-date-picker>button{width:44px;min-height:44px;color:var(--student-blue);cursor:pointer;background:0 0;border:0;border-radius:13px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.student-date-picker>label{text-align:center;flex:1;min-width:0;font-size:.875rem;font-weight:550;position:relative}.student-date-picker input{opacity:0;cursor:pointer;width:100%;position:absolute;inset:0}.student-date-picker:has(input:focus-visible){outline:2px solid var(--student-blue);outline-offset:3px}.student-date-picker>.student-today-button{background:#edf3ff;width:48px;font-size:.8125rem}.student-week-label{color:var(--student-secondary);flex-wrap:wrap;justify-content:space-between;gap:6px;padding:0 4px;font-size:.75rem;display:flex}.student-week-navigation{color:var(--student-secondary);justify-content:space-between;align-items:center;gap:4px;display:flex}.student-week-navigation>strong{color:var(--student-ink);text-align:center;flex-direction:column;gap:3px;font-size:1.0625rem;font-weight:650;display:flex}.student-week-navigation>strong>span{color:var(--student-secondary);font-size:.6875rem;font-weight:400}.student-week-navigation button{min-height:44px;color:var(--student-blue);white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:12px;align-items:center;gap:1px;padding:8px 0;font-size:.8125rem;display:inline-flex}.student-week-strip{background:var(--student-surface);border-radius:20px;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;padding:6px;display:grid}.student-day-head{min-height:82px;color:var(--student-secondary);cursor:pointer;background:0 0;border:0;border-radius:15px;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:8px 0;display:flex}.student-day-head>span{font-size:.75rem}.student-day-head>strong{color:var(--student-ink);font-size:1.1875rem;font-weight:550;line-height:1.25}.student-day-head>i{background:0 0;border-radius:50%;width:4px;height:4px}.student-day-head>.has-events{background:currentColor}.student-day-head[data-today=true]>strong{color:var(--student-blue)}.student-day-head[aria-pressed=true]{color:#fff;background:var(--student-blue)}.student-day-head[aria-pressed=true]>strong{color:#fff}.student-week-browser{z-index:2;background:var(--student-background);padding:8px 0 10px;position:sticky;top:-8px}.student-week-strip{border:0;min-inline-size:0;margin:10px 0 0}.student-day-summary{justify-content:space-between;align-items:center;gap:12px;padding:2px 4px 0;display:flex}.student-day-summary>div{flex-direction:column;gap:4px;display:flex}.student-day-summary strong{font-size:.9375rem;font-weight:600}.student-day-summary span{color:var(--student-secondary);font-size:.75rem}.student-day-summary button{min-width:44px;color:var(--student-blue);font-size:.8125rem}.student-periods{flex-direction:column;gap:20px;display:flex}.student-period-group h3{color:var(--student-secondary);margin:0 0 8px 4px;font-size:.75rem;font-weight:500}.student-period-list{background:var(--student-surface);border-radius:20px;margin:0;padding:0 14px;list-style:none}.student-period-row{grid-template-columns:6rem minmax(0,1fr);align-items:stretch;gap:12px;min-height:76px;padding:12px 0;display:grid}.student-period-row+.student-period-row{border-top:1px solid var(--student-line)}.student-period-time{font-variant-numeric:tabular-nums;flex-direction:column;justify-content:center;gap:4px;display:flex}.student-period-time strong{font-size:.8125rem;font-weight:550}.student-period-time span{color:var(--student-secondary);white-space:nowrap;font-size:.6875rem}.student-period-time small{color:var(--student-blue);font-size:.625rem}.student-period-row[data-current=true] .student-period-time strong{color:var(--student-blue)}.student-period-content{flex-direction:column;justify-content:center;gap:8px;min-width:0;display:flex}.student-period-free{color:var(--student-secondary);padding-left:12px;font-size:.8125rem}.student-period-course{border:0;border-left:3px solid var(--student-blue);width:100%;min-height:52px;color:var(--student-ink);text-align:left;cursor:pointer;background:0 0;border-radius:2px;align-items:center;gap:6px;padding:4px 0 4px 10px;display:flex}.student-period-course.course-tone-1{border-color:#af52de}.student-period-course.course-tone-2{border-color:#d98200}.student-period-course.course-tone-3{border-color:#34a853}.student-period-course>svg{color:var(--student-secondary);flex-shrink:0}.student-course-detail{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.student-course-detail strong{overflow-wrap:anywhere;font-size:.9375rem;font-weight:550}.student-course-detail>span{color:var(--student-secondary);overflow-wrap:anywhere;font-size:.8125rem}.student-plan-meta{color:var(--student-secondary);align-items:center;gap:10px;padding-left:4px;font-size:.8125rem;display:flex}.student-plan-meta button{background:var(--student-surface);width:44px;height:44px;color:var(--student-blue);cursor:pointer;border:0;border-radius:50%;place-items:center;margin-left:auto;display:grid}.student-timeline{flex-direction:column;display:flex}.student-timeline-item{grid-template-columns:52px minmax(0,1fr);gap:20px;padding-bottom:14px;display:grid;position:relative}.student-timeline-time{color:var(--student-secondary);font-variant-numeric:tabular-nums;flex-direction:column;gap:4px;padding-top:20px;display:flex;position:relative}.student-timeline-time strong{color:var(--student-ink);font-size:.8125rem;font-weight:550}.student-timeline-time>span:not(.student-timeline-dot){font-size:.6875rem}.student-timeline-time:after{content:"";background:#d1d1d6;width:1px;position:absolute;top:47px;bottom:-18px;right:-11px}.student-timeline-item:last-child .student-timeline-time:after{display:none}.student-timeline-dot{width:9px;height:9px;box-shadow:0 0 0 4px var(--student-background);background:#c7c7cc;border-radius:50%;position:absolute;top:22px;right:-15px}.student-timeline-dot svg{display:none}.student-stop{border-radius:18px;padding:18px 16px}.student-stop-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.student-stop-heading>strong{overflow-wrap:anywhere;font-size:.9375rem;font-weight:550}.student-stop p{overflow-wrap:anywhere;align-items:baseline;gap:5px;display:flex}.student-stop p>svg{flex-shrink:0;align-self:center}.student-leg{border-top:1px solid var(--student-line);flex-direction:column;gap:7px;margin-top:14px;padding-top:12px;display:flex}.student-leg>span{color:var(--student-secondary);flex-wrap:wrap;align-items:center;gap:3px;font-size:.75rem;display:flex}.student-leg>small{color:var(--student-secondary);font-size:.75rem;line-height:1.6}.student-leg>button{width:100%;min-height:44px;color:var(--student-blue);cursor:pointer;background:#edf3ff;border:0;border-radius:12px;justify-content:center;align-items:center;gap:7px;margin-top:3px;font-size:.875rem;font-weight:550;display:flex}.student-timeline-item.is-current .student-stop{box-shadow:inset 0 0 0 1.5px #8ec2ff}.student-timeline-item.is-current .student-timeline-dot{background:var(--student-blue)}.student-timeline-item.is-complete .student-timeline-time strong{color:var(--student-secondary)}.student-pill{color:#0065d3;background:#edf3ff;border-radius:6px;flex-shrink:0;padding:3px 6px;font-size:.6875rem}.student-empty{text-align:center;color:var(--student-secondary);padding:40px 20px;font-size:.875rem}.student-empty>svg{color:#aeaeb2;margin:0 auto 14px}.student-empty p{margin:0}.student-page button,.student-page summary,.student-tab-bar button{-webkit-tap-highlight-color:transparent;touch-action:manipulation}.student-page button:active,.student-tab-bar button:active{opacity:.66}.student-page summary:active{background:var(--student-fill)}.student-page button:disabled{opacity:.45;cursor:default}:is(.student-page :focus-visible,.student-tab-bar :focus-visible){outline:2px solid var(--student-blue);outline-offset:3px}@media (min-width:761px){.student-page{padding-top:calc(max(24px, var(--student-safe-top)) + 16px)}.app-shell.is-app-view[data-student-tab] .left-panel{max-height:min(62dvh, calc(100dvh - var(--student-bottom-space) - 100px))}}@media (max-width:370px){.student-page{padding-left:max(12px, env(safe-area-inset-left,0px));padding-right:max(12px, env(safe-area-inset-right,0px))}.student-calendar-fields{grid-template-columns:1fr}.student-course-row{gap:10px;padding:18px 12px}.student-date-picker{gap:0}.student-date-picker>label{font-size:.8125rem}.student-setting-value{max-width:32%}}@media (prefers-color-scheme:dark){.app-shell.is-app-view[data-student-tab]{--student-background:#000;--student-surface:#1c1c1e;--student-ink:#f5f5f7;--student-secondary:#aeaeb2;--student-line:#38383a;--student-blue:#0a84ff;--student-fill:#2c2c2e}.student-tab-bar{background:#1c1c1ee6;border-color:#ffffff1f}.student-tab-bar button[aria-current=page],.student-secondary,.student-date-picker>.student-today-button,.student-soft-icon,.student-avatar,.student-leg>button,.student-pill{color:#6bb0ff;background:#152c49}.student-primary,.student-setting-icon,.student-day-head[aria-pressed=true]{color:#fff}.student-place-chips input:checked+span{color:#6bb0ff;background:#152c49}.student-notice{color:#acd2ff;background:#152c49}.student-content .student-warning{color:#ffc078}.student-clear button{color:#ff6961}.student-field input,.student-field select{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}@media (prefers-reduced-motion:reduce){.student-page *,.student-tab-bar *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media (prefers-reduced-transparency:reduce){.student-tab-bar{background:var(--student-surface);-webkit-backdrop-filter:none}}@media (prefers-contrast:more){.student-card,.student-tab-bar,.student-period-list,.student-week-strip,.student-date-picker{border:1px solid var(--student-secondary)}.student-tab-bar{background:var(--student-surface);-webkit-backdrop-filter:none}}.student-import>.student-secondary{width:100%;margin-top:10px}.student-jw{gap:12px;display:grid}.student-jw form,.student-jw fieldset{gap:16px;min-width:0;display:grid}.student-jw fieldset{border:0;margin:0;padding:0}.student-jw-captcha{grid-template-columns:minmax(0,1fr) 112px;align-items:end;gap:12px;display:grid}.student-jw-image{border:1px solid var(--student-line);color:#364152;background:#fff;border-radius:12px;justify-items:center;gap:4px;min-height:62px;padding:6px;font-size:11px;display:grid}.student-jw-image img{object-fit:contain;width:90px;height:36px}.student-jw-status:empty{display:none}.student-jw-status{color:var(--student-secondary);font-size:12px}.app-update-settings{padding:18px}.app-update-settings-heading{align-items:center;gap:10px;display:flex}.app-update-settings-heading>span:last-child{color:#636366;margin-left:auto;font-size:13px}.app-update-settings>output{color:#636366;margin:12px 0;font-size:13px;display:block}.app-update-dialog{box-sizing:border-box;color:#1c1c1e;text-align:center;background:#fff;border:1px solid #fff;border-radius:28px;width:min(380px,100vw - 32px);max-height:calc(100dvh - 64px);margin:auto;padding:28px 24px 16px;font-family:-apple-system,BlinkMacSystemFont,Helvetica Neue,sans-serif;position:fixed;inset:0;overflow-y:auto;box-shadow:0 24px 80px #0003}.app-update-dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#12182466}.app-update-icon{color:#007aff;background:#e6efff;border-radius:19px;place-items:center;width:60px;height:60px;margin:0 auto 18px;display:grid}.app-update-eyebrow{color:#636366;margin:0 0 8px;font-size:12px}.app-update-dialog h2{letter-spacing:-.6px;margin:0;font-size:25px}.app-update-version{font-variant-numeric:tabular-nums;margin:12px 0 20px;font-size:14px}.app-update-version span{color:#8e8e93;padding:0 10px}.app-update-notes{text-align:left;white-space:pre-wrap;overflow-wrap:anywhere;background:#f2f2f7;border-radius:16px;max-height:25dvh;padding:16px;font-size:13px;line-height:1.7;overflow-y:auto}.app-update-hint{color:#636366;margin:16px 0;font-size:12px;line-height:1.6}.app-update-primary,.app-update-later{box-sizing:border-box;text-align:center;cursor:pointer;border:0;border-radius:15px;width:100%;padding:14px;font-size:15px;font-weight:600;text-decoration:none;display:block}.app-update-primary{color:#fff;background:#007aff}.app-update-later{color:#636366;background:0 0;margin-top:5px}:is(.app-update-primary:focus-visible,.app-update-later:focus-visible){outline-offset:2px;outline:3px solid #80bfff}
