/* NovaStudy v3.1 — efficient long lists and touch-friendly mobile controls */
/* Skip offscreen paint, never discard data or remove items from the DOM. */
@supports (content-visibility:auto){
 .task-row{content-visibility:auto;contain-intrinsic-size:auto 82px}
 .subject-card{content-visibility:auto;contain-intrinsic-size:auto 145px}
 .hub-record{content-visibility:auto;contain-intrinsic-size:auto 125px}
 .hub-topic{content-visibility:auto;contain-intrinsic-size:auto 62px}
 .exam-prep-topic{content-visibility:auto;contain-intrinsic-size:auto 65px}
}
#taskResults{min-width:0}
#taskResults .task-row:last-child{border-bottom:0}
.mobile-nav{touch-action:pan-x;overscroll-behavior-x:contain}
.mobile-nav button{min-height:48px;touch-action:manipulation}
.nav-btn,.ui-widget-move,.filter-chip,.day-pill{touch-action:manipulation}
@media(max-width:660px){
 body{padding-bottom:calc(82px + env(safe-area-inset-bottom,0px))}
 .mobile-nav{padding-bottom:max(10px,env(safe-area-inset-bottom));border-radius:0}
 .mobile-nav button{min-height:56px!important}
 .mobile-nav small{line-height:1.3}
 .view{padding-left:max(14px,env(safe-area-inset-left));padding-right:max(14px,env(safe-area-inset-right))}
 .topbar{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}
 .modal{width:min(550px,calc(100vw - 24px));max-height:calc(100dvh - 20px)}
 .modal input:not([type="checkbox"]):not([type="radio"]),.modal select,.modal textarea,
 #taskSearch,.field input,.field select,.form-grid input,.form-grid select{
   font-size:16px!important;
 }
 .task-row{gap:10px;min-height:72px}
 .task-tick{min-width:20px;min-height:20px}
 .task-row .card-actions button{min-width:42px;min-height:42px}
 .filter-chip,.day-pill{min-height:43px}
 .reminder-bell{min-width:42px!important;min-height:42px!important}
 .topbar-actions{min-width:0;flex-shrink:0}
 .topbar-actions .theme-switch,.topbar-actions .language-switch{min-height:42px}
 .toast{bottom:calc(88px + env(safe-area-inset-bottom,0px))}
}
@media(max-width:380px){
 .mobile-nav button{min-width:72px!important}
 .topbar-actions{gap:4px}
 .mobile-brand{min-width:0}
 .mobile-brand img{flex-shrink:0}
}
@media(prefers-reduced-motion:reduce){
 .mobile-nav{scroll-behavior:auto}
}
html[data-ui-reduced-motion="on"] .mobile-nav{scroll-behavior:auto}

/* v3.5.12 — responsive scrolling without forced smooth-scroll and snap delays */
html{scroll-behavior:auto}
.mobile-nav{scroll-snap-type:none}
.mobile-nav button{scroll-snap-align:none}
@media(max-width:660px){
 .ui-dashboard-widget{animation:none}
 .panel{box-shadow:0 3px 12px #0001}
}


/* v3.5.16: long Course & Notes topic lists skip offscreen painting. */
@supports (content-visibility:auto){
 .cm-topic{content-visibility:auto;contain-intrinsic-size:auto 240px}
}
@media (hover:none) and (pointer:coarse){
 .theme-option:hover{transform:none}
 .theme-option{touch-action:manipulation}
}
