/* Account preferences are applied only while the authenticated workspace is active. */
:root[data-workspace-size=small] {font-size:90%;}
:root[data-workspace-size=large] {font-size:112.5%;}
:root[data-workspace-size=larger] {font-size:125%;}
:root[data-workspace-width=reading] .app-shell .app-main {width:min(100%,880px);margin-inline:auto;}
:root[data-workspace-width=standard] .app-shell .app-main {width:min(100%,1320px);margin-inline:auto;}
:root[data-workspace-width=full] .app-shell .app-main {width:100%;max-width:none;}
.mc-workspace-tools {display:flex;justify-content:flex-end;margin:0 0 12px;}
.mc-workspace-tools .mc-button {gap:8px;min-height:44px;font-size:.8125rem;}
.mc-workspace-tools svg {width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.5;}
.mc-layout-dialog {box-sizing:border-box;width:min(580px,calc(100% - 24px));max-height:calc(100dvh - 32px);padding:0;border:1px solid var(--mc-glass-border);border-radius:26px;background:var(--mc-surface-elevated);color:var(--mc-ink);box-shadow:var(--mc-shadow-subtle);overflow:auto;overscroll-behavior:contain;}
.mc-layout-dialog::backdrop {background:rgba(7,17,38,.38);backdrop-filter:blur(5px);}
.mc-layout-content {display:grid;gap:20px;padding:26px;}
.mc-layout-heading {display:flex;align-items:flex-start;justify-content:space-between;gap:12px;}
.mc-layout-heading h2 {margin:6px 0 0;font-size:1.5rem;line-height:1.2;letter-spacing:-.03em;}
.mc-layout-heading [data-layout-close] {font-size:1.4rem;width:44px;min-width:44px!important;max-width:44px;min-height:44px;padding:6px;flex:0 0 44px;}
.mc-layout-content p {margin:0;color:var(--mc-ink-secondary);font-size:.875rem;}
.mc-layout-content fieldset {min-width:0;margin:0;padding:0;border:0;}
.mc-layout-content legend {padding:0;margin-bottom:10px;font-size:.9375rem;font-weight:700;}
.mc-layout-choices {display:flex;flex-wrap:wrap;gap:8px;}
.mc-layout-choices button {flex:1 1 90px;min-height:44px;padding:10px 12px;border:1px solid var(--mc-line);border-radius:13px;background:var(--mc-glass-subtle);color:var(--mc-ink);font:inherit;font-size:.8125rem;cursor:pointer;}
.mc-layout-choices button[aria-pressed=true] {border-color:var(--mc-blue);background:color-mix(in srgb,var(--mc-blue) 10%,var(--mc-surface));box-shadow:inset 0 0 0 1px var(--mc-blue);font-weight:750;}
.mc-layout-content fieldset small {display:block;margin-top:9px;color:var(--mc-ink-secondary);font-size:.75rem;line-height:1.5;}
.mc-layout-content .mc-layout-tip {padding:14px;border:1px solid var(--mc-line);border-radius:16px;background:var(--mc-glass-subtle);font-size:.8125rem;}
.mc-layout-footer {display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;}
.mc-layout-dialog button:focus-visible {outline:3px solid var(--mc-blue);outline-offset:3px;}
.app-shell .mc-live-custom {min-width:0;}
.app-shell .mc-live-custom__row > span {min-width:0;overflow-wrap:anywhere;}
@media(max-width:760px) {
 .app-shell .mc-live-custom__row {flex-wrap:wrap;gap:10px;}
 .app-shell .mc-live-custom__row > span {flex:1 1 140px;}
 .app-shell .mc-live-custom__row :is(select,input[type=range]) {max-width:100%;flex:1 1 150px;}
}
:root[data-workspace-layout=stacked] .app-shell :is(.today-layout,.calendar-layout,.profile-layout,.planner-workspace,.ai-tutor-layout) {display:grid;grid-template-columns:minmax(0,1fr);}
:root[data-workspace-layout=stacked] .app-shell .mc-home-focused .today-next__body {grid-template-columns:minmax(0,1fr);}
/* Let the available content width decide whether both columns fit, including
   browser zoom, larger text and a narrow workspace inside a wide window. */
@media(min-width:1000px) {
 :root[data-workspace-layout=columns] .app-shell :is(.today-layout,.calendar-layout,.profile-layout,.planner-workspace,.ai-tutor-layout) {display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,24rem),1fr));align-items:start;gap:20px;}
 :root[data-workspace-layout=columns] .app-shell .mc-home-focused > * {grid-column:auto;min-width:0;}
 :root[data-workspace-layout=columns] .app-shell .mc-home-focused .today-next__body {grid-template-columns:minmax(0,1fr);}
}
@media(max-width:480px) {.mc-layout-content {padding:20px;gap:18px;}.mc-layout-choices button {flex-basis:100px;}}
@media(forced-colors:active) {.mc-layout-choices button[aria-pressed=true] {outline:2px solid Highlight;}}

/* The manual choice applies only where the desktop layout would normally fit. */
.mc-view-toolbar {display:flex;justify-content:flex-end;margin-block-end:8px;}
.mc-view-toolbar .mc-button {min-height:44px;font-size:.8125rem;}
[data-mobile-view-toggle][aria-pressed=true] {
  background:var(--mc-glass-subtle);
  box-shadow:inset 0 0 0 1px var(--mc-blue);
}
@media (width < 768px) {
  .mc-view-toolbar {display:none;}
}
@media (min-width:768px) {
  :root[data-workspace-view=mobile] #app-shell:not([hidden]) {
    display:block;
    --mobile-view-width:480px;
  }
  :root[data-workspace-view=mobile] #app-shell > .app-sidebar {display:none;}
  :root[data-workspace-view=mobile] #app-shell > .app-main {
    box-sizing:border-box;
    width:min(100%,var(--mobile-view-width));
    max-width:var(--mobile-view-width);
    margin-inline:auto;
    padding-inline:16px;
    padding-bottom:110px;
  }
  :root[data-workspace-view=mobile] #app-shell :is(
    .today-layout,.today-next__body,.calendar-layout,.profile-layout,
    .planner-workspace,.ai-tutor-layout,.student-next-actions
  ) {
    grid-template-columns:minmax(0,1fr);
  }
  :root[data-workspace-view=mobile] #app-shell :is(.glass-topbar,.mc-live-header,.mc-live-actions) {
    flex-wrap:wrap;
  }
  :root[data-workspace-view=mobile] body:not(.is-focus-session)
    #app-shell:not([data-keyboard-open=true]) > .mc-nav--mobile:not([hidden]) {
    position:fixed;
    display:grid!important;
    inset:auto 0 10px;
    z-index:var(--mc-z-navigation,80);
    width:min(calc(100% - 20px),460px);
    max-width:none!important;
    margin-inline:auto;
    transform:none;
    grid-template-columns:repeat(var(--mobile-tab-count,4),minmax(0,1fr))!important;
    gap:3px;
    padding:6px;
    border:1px solid var(--mc-line);
    border-radius:22px;
    background:var(--mc-surface);
  }
  :root[data-workspace-view=mobile] #app-shell .mc-nav--mobile .mc-nav__item {
    display:grid!important;
    place-items:center;
    min-width:0;
    min-height:48px;
    padding:3px;
    gap:2px;
    font-size:.75rem;
  }
  :root[data-workspace-view=mobile] #app-shell .mc-nav--mobile .mc-nav__item svg {
    width:20px;
    height:20px;
  }
}
