html[data-theme] .st-menu-trigger {
  display:inline-flex;align-items:center;justify-content:center;width:46px;min-width:46px;min-height:46px;padding:11px;
  border-radius:13px;background:var(--sc-accent-soft,#e3f3ec);border:1px solid #a9d0c0;
  color:var(--sc-link,#145f49);line-height:1;flex:none;cursor:pointer;
  transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease;
}
html[data-theme="dark"] .st-menu-trigger{border-color:#577467}
.st-menu-trigger svg{width:22px;height:22px;flex:none}
html[data-theme] .st-menu-trigger[aria-expanded="true"]{background:var(--sc-accent)!important;color:#163f30;border-color:var(--sc-accent-strong);box-shadow:0 0 0 3px color-mix(in srgb,var(--sc-accent-strong) 12%,transparent)}
html[data-theme] .st-menu-trigger:hover{background:var(--sc-accent-hover,#92e6c0)}
html[data-theme] .st-menu-dropdown{
  position:fixed;z-index:1000;box-sizing:border-box;margin:0;padding:10px;overflow:auto;overscroll-behavior:contain;
  border:1px solid var(--sc-border,#d8d4ca);border-radius:20px;
  background:var(--sc-surface-raised,#fffaf3);color:var(--sc-text,#1f2b33);
  box-shadow:0 20px 56px #10251c20,0 4px 12px #10251c0a;scrollbar-width:thin;
}
html[data-theme="dark"] .st-menu-dropdown{background:#252c30;border-color:#45524d;box-shadow:0 22px 64px #0006,0 3px 12px #0003}
.st-menu-dropdown[hidden]{display:none!important}
html[data-theme] .st-menu-dropdown .st-menu-entry{
  display:flex!important;align-items:center;gap:13px;width:100%;min-width:0;min-height:54px;
  box-sizing:border-box;margin:0;padding:10px 12px;border:0!important;border-radius:12px!important;
  background:transparent!important;color:var(--sc-text,#1f2b33)!important;box-shadow:none!important;
  font-size:14px;line-height:1.45;font-weight:550;letter-spacing:-.01em;text-align:start;text-decoration:none;cursor:pointer;list-style:none;
  transition:background-color .15s ease;
}
.st-menu-entry::-webkit-details-marker{display:none}
.st-menu-dropdown .st-icon{display:none}
.st-menu-glyph{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;flex:none;border-radius:10px;background:color-mix(in srgb,var(--sc-accent-strong) 8%,transparent);color:var(--sc-accent-strong,#168562)}
.st-menu-glyph svg{width:19px;height:19px}
.st-menu-label{flex:1;min-width:0;overflow-wrap:anywhere}
.st-menu-arrow{flex:none;color:var(--sc-muted,#5f6b68);font-size:20px;font-weight:400;opacity:.6;margin-inline-start:3px}
.st-menu-dropdown>#communityHeaderNav,.st-menu-dropdown>#openSettings{margin-top:7px!important;position:relative}
.st-menu-dropdown>#communityHeaderNav::before,.st-menu-dropdown>#openSettings::before{content:'';position:absolute;top:-4px;inset-inline:12px;height:1px;background:var(--sc-border);opacity:.65}
html[dir="rtl"] .st-menu-arrow{transform:rotate(180deg)}
.st-menu-disclosure[open] .st-menu-arrow{transform:rotate(90deg)}
html[data-theme] .st-menu-dropdown .st-menu-entry:hover,
html[data-theme] .st-menu-dropdown .st-menu-disclosure[open]>.st-menu-entry{background:var(--sc-accent-soft,#e3f3ec)!important;filter:none}
.st-menu-control{padding:3px 12px 12px 57px}
html[dir="rtl"] .st-menu-control{padding:3px 57px 12px 12px}
html[data-theme] .st-menu-control select,
html[data-theme] .st-menu-control .header-theme-control{width:100%!important;max-width:none!important;min-width:0!important}
html[data-theme] .st-menu-control select{min-height:44px;font-size:16px;border-radius:9px;padding:8px 10px}
.st-menu-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
html[data-theme] .st-menu-panel{width:min(1000px,calc(100vw - 24px));max-width:1000px;max-height:calc(100dvh - 24px);margin:auto;padding:20px;border-radius:20px}
.st-menu-panel-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px}
.st-menu-panel-heading h2{margin:0;font-size:1.2rem}
.st-menu-close{min-width:44px;min-height:44px;font-size:25px;padding:4px 10px;flex:none}
html[data-theme] .st-menu-panel .resources,
html[data-theme] .st-menu-panel .community{margin:0;width:100%;min-width:0}
html[data-theme] .st-menu-panel .community-layout{grid-template-columns:minmax(260px,.85fr) minmax(0,1.15fr)}
.st-menu-ready .st-utility{flex:none}
html[data-theme] body#studyTickApp #studyTickHeader .st-toolbar #studyTickMenu{width:46px!important;max-width:46px!important;min-width:46px!important;height:46px!important;min-height:46px!important;padding:11px!important;color:var(--sc-link)!important;background:var(--sc-accent-soft)!important;border-radius:13px!important}
html[data-theme] body#studyTickApp #studyTickHeader .st-toolbar #studyTickMenu[aria-expanded="true"]{color:#163f30!important;background:var(--sc-accent)!important}
@media(max-width:640px){
  html[data-theme] body#studyTickApp #studyTickHeader .st-toolbar #studyTickMenu{grid-column:2!important;grid-row:3!important;justify-self:end}
  html[data-theme] body#studyTickApp #studyTickHeader .st-toolbar .st-clock{grid-column:1!important;grid-row:3!important;justify-self:start!important;align-self:center;text-align:start!important;font-size:11px!important}
  html[data-theme] .st-menu-panel{padding:16px!important;margin:auto!important;width:calc(100vw - 20px)!important}
  html[data-theme] .st-menu-panel .community-layout{grid-template-columns:1fr}
  html[data-theme] .st-menu-panel .studytick-help-grid{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){.st-menu-trigger,.st-menu-entry{transition:none!important}}


/* Menu utility redesign — lightweight, readable, theme-aware and layout-isolated. */
html[data-theme] .st-menu-dropdown{
  --st-menu-quiet:var(--sc-muted,#5f6b68);
  --st-menu-line:color-mix(in srgb,var(--sc-border,#d8d4ca) 75%,transparent);
  padding:13px 10px 11px!important;
  border-radius:17px!important;
  border:1px solid var(--sc-border,#d8d4ca)!important;
  background:var(--sc-surface-raised,#fffdf8)!important;
  box-shadow:0 18px 52px color-mix(in srgb,#10251c 14%,transparent),0 2px 9px color-mix(in srgb,#10251c 6%,transparent)!important;
}
html[data-theme="dark"] .st-menu-dropdown{
  --st-menu-quiet:#b1c2bd;
  background:#252c30!important;
  border-color:#45524d!important;
  box-shadow:0 20px 54px #0008,0 2px 9px #0003!important;
}
.st-menu-dropdown::before{
  content:attr(data-menu-label);
  display:block;
  margin:1px 11px 10px;
  padding:0 0 11px;
  border-bottom:1px solid var(--st-menu-line);
  color:var(--st-menu-quiet);
  font-size:11px;
  font-weight:740;
  line-height:1.3;
  letter-spacing:.14em;
  text-transform:uppercase;
}
html[data-theme] .st-menu-dropdown .st-menu-entry{
  position:relative;
  gap:12px!important;
  min-height:58px;
  padding:9px 11px!important;
  border-radius:11px!important;
  border:1px solid transparent!important;
  font-size:14px;
  transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease!important;
}
html[data-theme] .st-menu-dropdown .st-menu-entry:hover{
  background:color-mix(in srgb,var(--sc-accent-soft,#e3f3ec) 54%,transparent)!important;
  border-color:color-mix(in srgb,var(--sc-accent-strong,#168562) 14%,transparent)!important;
}
html[data-theme] .st-menu-dropdown .st-menu-entry:focus-visible{
  outline:2px solid var(--sc-accent-strong,#168562)!important;
  outline-offset:-2px;
  background:var(--sc-accent-soft,#e3f3ec)!important;
}
html[data-theme] .st-menu-dropdown .st-menu-disclosure[open]>.st-menu-entry{
  background:color-mix(in srgb,var(--sc-accent-soft,#e3f3ec) 65%,transparent)!important;
  border-color:color-mix(in srgb,var(--sc-accent-strong,#168562) 20%,transparent)!important;
}
html[data-theme] .st-menu-dropdown .st-menu-glyph{
  width:34px;height:34px;
  border-radius:10px;
  background:color-mix(in srgb,var(--sc-accent-strong,#168562) 9%,var(--sc-surface-raised,#fffaf3));
  border:1px solid color-mix(in srgb,var(--sc-accent-strong,#168562) 12%,transparent);
  color:var(--sc-accent-strong,#168562);
  transition:background-color .16s ease;
}
html[data-theme="dark"] .st-menu-dropdown .st-menu-glyph{
  background:color-mix(in srgb,var(--sc-accent-strong,#7dddb9) 11%,#252c30);
  border-color:color-mix(in srgb,var(--sc-accent-strong,#7dddb9) 23%,transparent);
  color:var(--sc-accent,#b0e8d2);
}
.st-menu-dropdown .st-menu-glyph svg{width:18px;height:18px}
.st-menu-copy{display:flex;flex:1;min-width:0;flex-direction:column;justify-content:center;gap:2px}
.st-menu-copy .st-menu-label{
  flex:none;font-weight:650;letter-spacing:-.016em;
  line-height:1.32;overflow-wrap:normal;
}
.st-menu-subtitle{
  display:block;
  color:var(--st-menu-quiet);
  font-size:11.5px;line-height:1.35;
  font-weight:450;letter-spacing:0;
  overflow-wrap:anywhere;
}
html[data-theme] .st-menu-dropdown .st-menu-arrow{
  color:var(--st-menu-quiet);
  font-size:19px;font-weight:450;opacity:.75;
  margin-inline-start:0;transition:transform .16s ease,opacity .16s ease;
}
html[data-theme] .st-menu-dropdown .st-menu-entry:hover .st-menu-arrow{opacity:1;transform:translateX(2px)}
html[dir="rtl"][data-theme] .st-menu-dropdown .st-menu-entry:hover .st-menu-arrow{transform:translateX(-2px) rotate(180deg)}
html[data-theme] .st-menu-dropdown .st-menu-disclosure[open] .st-menu-arrow{transform:rotate(90deg);opacity:1}
html[dir="rtl"][data-theme] .st-menu-dropdown .st-menu-disclosure[open] .st-menu-arrow{transform:rotate(90deg)}
/* Category dividers use pseudo-elements, preserving precisely six live menu items. */
html[data-theme] .st-menu-dropdown>#communityHeaderNav,
html[data-theme] .st-menu-dropdown>#openSettings{
  margin-top:25px!important;
}
html[data-theme] .st-menu-dropdown>#communityHeaderNav::before,
html[data-theme] .st-menu-dropdown>#openSettings::before{
  content:attr(data-section-label);
  position:absolute;top:-22px;inset-inline:10px 0;
  width:auto;height:auto;
  padding-top:8px;
  border-top:1px solid var(--st-menu-line);
  background:none!important;
  color:var(--st-menu-quiet);
  font-size:10px;font-weight:720;letter-spacing:.115em;
  line-height:1.15;text-transform:uppercase;
  opacity:1;pointer-events:none;
}
.st-menu-dropdown .st-menu-control{
  margin:0 4px 7px 47px;
  padding:8px 10px 10px!important;
  border:1px solid var(--st-menu-line);
  border-radius:0 0 11px 11px;
  background:color-mix(in srgb,var(--sc-accent-soft,#e3f3ec) 28%,transparent);
}
html[dir="rtl"] .st-menu-dropdown .st-menu-control{margin:0 47px 7px 4px}
html[data-theme] .st-menu-dropdown .st-menu-control select{
  min-height:44px;border-radius:8px!important;
  background:var(--sc-surface-raised,#fffaf3)!important;
  color:var(--sc-text,#1f2b33)!important;
}
@media(max-width:380px){
  html[data-theme] .st-menu-dropdown{padding:10px 7px!important}
  html[data-theme] .st-menu-dropdown .st-menu-entry{gap:9px!important;padding:8px!important}
  .st-menu-subtitle{font-size:11px}
}
@media(prefers-reduced-motion:reduce){
  html[data-theme] .st-menu-dropdown .st-menu-entry,
  html[data-theme] .st-menu-dropdown .st-menu-arrow,
  .st-menu-dropdown .st-menu-glyph{transition:none!important}
}
@media(forced-colors:active){
  html[data-theme] .st-menu-dropdown .st-menu-entry:focus-visible{outline:2px solid Highlight!important}
  .st-menu-dropdown .st-menu-glyph{border:1px solid CanvasText}
}

/* Panel content is moved from <main> into native dialogs. Keep it visible when
   global low-stimulation/focus styles hide the original dashboard sections. */
html[data-theme] body #menuCommunityDialog[open] > #community:not([hidden]),
html[data-theme] body #menuHelpDialog[open] > .resources:not([hidden]){
  display:block!important;
}

/* Low Stimulation: one original toggle, now inside Menu instead of the header.
   The right-side dot and mint selection communicate state without On/Off text. */
html[data-theme] .st-menu-dropdown #lowStimulationToggle{
  display:flex!important;align-items:center!important;gap:12px!important;
  width:100%!important;max-width:100%!important;height:auto!important;min-height:58px!important;
  box-sizing:border-box!important;margin:0!important;padding:9px 11px!important;
  background:transparent!important;border:1px solid transparent!important;
  border-radius:11px!important;color:var(--sc-text,#1f2b33)!important;
  text-align:start!important;box-shadow:none!important;
}
html[data-theme] .st-menu-dropdown #lowStimulationToggle > .st-menu-label{
  flex:1 1 auto;min-width:0;font-size:14px;font-weight:650;
  line-height:1.32;letter-spacing:-.016em;overflow-wrap:anywhere;
}
html[data-theme] .st-menu-dropdown #lowStimulationToggle > .low-stim-dot{
  order:2;flex:0 0 8px;margin-inline-start:auto;
}
html[data-theme] .st-menu-dropdown #lowStimulationToggle[aria-pressed="true"]{
  background:color-mix(in srgb,var(--sc-accent-soft,#e3f3ec) 70%,transparent)!important;
  border-color:color-mix(in srgb,var(--sc-accent-strong,#168562) 24%,transparent)!important;
}
html[data-theme] .st-menu-dropdown #lowStimulationToggle:hover{
  background:var(--sc-accent-soft,#e3f3ec)!important;
}
html[data-theme] .st-menu-dropdown #lowStimulationToggle:focus-visible{
  outline:2px solid var(--sc-accent-strong,#168562)!important;outline-offset:-2px!important;
}


/* Compact menu utilities: Brain Dump replaces the crowded header pill. */
html[data-theme] .st-menu-dropdown #brainDumpReview {
  display:flex!important;align-items:center!important;justify-content:flex-start!important;
  width:100%!important;height:auto!important;min-height:58px!important;max-width:100%!important;
  padding:9px 11px!important;margin:0!important;white-space:normal!important;
  font-size:14px!important;text-align:start!important;border:1px solid transparent!important;
  border-radius:11px!important;background:transparent!important;color:var(--sc-text,#1f2b33)!important;
  box-shadow:none!important;
}
html[data-theme] .st-menu-dropdown #brainDumpReview:is(:hover,:focus-visible){
  background:var(--sc-accent-soft,#e3f3ec)!important;
}
html[data-theme] .st-menu-dropdown #brainDumpReview .st-menu-label {
  font-size:14px!important;line-height:1.32!important;font-weight:650!important;
}
html[data-theme] .st-menu-dropdown #brainDumpReview .st-menu-glyph{flex:none}

/* A genuine, legible On/Off switch, rather than a tiny status dot. */
.st-menu-dropdown #lowStimulationToggle .low-stim-dot {display:none!important}
html[data-theme] .st-menu-dropdown #lowStimulationToggle > .low-stim-label {
  flex:1;min-width:0;font-size:14px;font-weight:650;line-height:1.32;
}
.st-menu-dropdown #lowStimulationToggle .st-menu-low-state{
  flex:none;color:var(--st-menu-quiet,#5f6b68);font-size:12px;font-weight:700;min-width:24px;text-align:end;
}
html[data-theme] .st-menu-dropdown #lowStimulationToggle .st-menu-switch{
  position:relative;order:3;display:inline-flex;align-items:center;flex:0 0 40px;
  width:40px;height:24px;box-sizing:border-box;border-radius:999px;
  border:1px solid var(--sc-border,#b6c8bf);background:var(--sc-border,#cbd6d0);
  padding:2px;pointer-events:none;
}
.st-menu-dropdown #lowStimulationToggle .st-menu-switch-thumb{
  width:18px;height:18px;border-radius:50%;background:#fff;
  box-shadow:0 1px 3px #10251c30;transform:translateX(0);pointer-events:none;
}
html[data-theme] .st-menu-dropdown #lowStimulationToggle[aria-checked="true"] .st-menu-switch{
  background:var(--sc-accent-strong,#168562);border-color:var(--sc-accent-strong,#168562);
}
html[data-theme] .st-menu-dropdown #lowStimulationToggle[aria-checked="true"] .st-menu-switch-thumb{
  transform:translateX(16px);
}
html[dir="rtl"] .st-menu-dropdown #lowStimulationToggle[aria-checked="true"] .st-menu-switch-thumb{
  transform:translateX(-16px);
}
html[dir="rtl"] .st-menu-dropdown #lowStimulationToggle .st-menu-switch{direction:ltr}
html[dir="rtl"] .st-menu-dropdown #lowStimulationToggle[aria-checked="true"] .st-menu-switch-thumb{transform:translateX(16px)}
@media(forced-colors:active){.st-menu-dropdown #lowStimulationToggle .st-menu-switch{border:2px solid ButtonText!important}}

/* Quiet mode has exactly four main destinations. Menu remains the escape route
   so the user can turn the mode Off. This only hides presentation, not data. */
html[data-theme] body#studyTickApp.low-stimulation #studyTickHeader .st-primary > :not(#stNavDashboard):not(#stTimetableNav):not(#stReflectNav):not(#focusView),
html[data-theme] body#studyTickApp.low-stimulation #stNavSidebar .st-primary > :not(#stNavDashboard):not(#stTimetableNav):not(#stReflectNav):not(#focusView){
  display:none!important;
}
html[data-theme] body#studyTickApp.low-stimulation #studyTickHeader .st-primary > :is(#stNavDashboard,#stTimetableNav,#stReflectNav,#focusView),
html[data-theme] body#studyTickApp.low-stimulation #stNavSidebar .st-primary > :is(#stNavDashboard,#stTimetableNav,#stReflectNav,#focusView){
  display:inline-flex!important;
}
html[data-theme] body#studyTickApp.low-stimulation #studyTickHeader .st-utility > :not(#studyTickMenu),
html[data-theme] body#studyTickApp.low-stimulation #stNavSidebar :is(#stNavLayoutShortcut,#stNavCollapse),
html[data-theme] body#studyTickApp.low-stimulation #mainInstallEntry{
  display:none!important;
}
html[data-theme] body#studyTickApp.low-stimulation #studyTickMenuDropdown > :not(#lowStimulationToggle):not(#stMenuSignOut):not(#stMenuSignOutStatus){
  display:none!important;
}
html[data-theme] body#studyTickApp.low-stimulation #studyTickMenu{
  display:inline-flex!important;
}
@media(max-width:800px){
  html[data-theme] body#studyTickApp.low-stimulation #studyTickHeader #focusView{
    display:inline-flex!important;
  }
}

/* Account action remains available in every theme, viewport, and quiet mode.
   Hidden really means hidden even though menu entry styling uses !important. */
html[data-theme] .st-menu-dropdown #stMenuSignOut[hidden],
html[data-theme] .st-menu-dropdown #stMenuSignOutStatus[hidden]{display:none!important}
html[data-theme] .st-menu-dropdown #stMenuSignOut{
  margin-block-start:8px!important;border-block-start:1px solid var(--sc-border,#d8d4ca)!important;
  border-start-start-radius:0!important;border-start-end-radius:0!important;
}
html[data-theme] .st-menu-dropdown #stMenuSignOut:disabled{opacity:.55;cursor:progress}
html[data-theme] .st-menu-dropdown #stMenuSignOutStatus{
  margin:4px 10px 8px;color:var(--sc-text,#1f2b33);font-size:12px;line-height:1.4;
}

/* Consolidated Menu: ordered study utilities, preferences, support and account. */
html[data-theme] .st-menu-dropdown>#openSettings{margin-top:0!important}
html[data-theme] .st-menu-dropdown>#openSettings::before{display:none!important}
html[data-theme] .st-menu-dropdown>.st-menu-section-start:not(#communityHeaderNav){
  position:relative;margin-top:27px!important;
}
html[data-theme] .st-menu-dropdown>.st-menu-section-start:not(#communityHeaderNav)::before{
  content:attr(data-section-label);display:block;position:absolute;
  inset-inline:10px 0;top:-23px;width:auto;height:auto;
  padding-top:7px;border-top:1px solid var(--st-menu-line);
  background:transparent;color:var(--st-menu-quiet);
  font-size:11px;font-weight:750;line-height:1.15;letter-spacing:.11em;
  text-transform:uppercase;pointer-events:none;
}
html[data-theme] .st-menu-dropdown .st-menu-entry{min-height:51px;padding:7px 11px!important}
html[data-theme] .st-menu-dropdown .st-menu-entry .st-menu-subtitle{display:none}
html[data-theme] .st-menu-dropdown .st-menu-disclosure .st-menu-subtitle{display:block}
html[data-theme] .st-menu-dropdown #lowStimulationToggle,
html[data-theme] .st-menu-dropdown #brainDumpReview{min-height:51px!important;padding:7px 11px!important}
html[data-theme] .st-menu-dropdown #stMenuMemorandum{color:var(--sc-text,#1f2b33)!important}
