/* V6.241: explicit header rows prevent competing columns at intermediate widths. */
html body #app .topbar.dm-header-has-search{grid-template-columns:minmax(0,1fr) minmax(170px,240px) auto!important;grid-template-areas:"main search actions" "context context context"!important;gap:10px 16px!important}
html body #app .topbar.dm-header-has-search .topbar-main{min-width:0!important;overflow:hidden;gap:10px!important}
html body #app .topbar.dm-header-has-search .topbar-title-wrap{min-width:0!important;flex:1;overflow:hidden}
html body #app .topbar.dm-header-has-search .topbar-brand{display:none!important}
html body #app .topbar.dm-header-has-search .dm-header-context{grid-area:context!important;grid-column:1/-1!important;max-width:100%!important;flex-wrap:wrap!important;gap:8px!important}
html body #app .topbar.dm-header-has-search .dm-header-context:empty{display:none!important}
html body #app .topbar.dm-header-has-search .topbar-right{flex-shrink:0;min-width:0!important}
html body #app .dm-welcome-card-button{display:flex;align-items:center;gap:12px;width:100%;max-width:360px;min-height:64px;margin:18px 0;padding:13px 16px;border:1px solid rgba(255,255,255,.4);border-radius:18px;background:#fff;color:#282044;text-align:left;cursor:pointer;box-shadow:0 8px 24px #180d3020;font:inherit}
html body #app .dm-welcome-card-button>span{flex:1;min-width:0}html body #app .dm-welcome-card-button strong{display:block;font-size:16px}html body #app .dm-welcome-card-button small{display:block;font-size:12px;color:#544b67;margin-top:3px}html body #app .dm-welcome-card-button .icon{width:24px;height:24px;flex-shrink:0}
html[data-dm-theme=dark] body #app .dm-welcome-card-button{background:#29233b;color:#fff;border-color:#645578}html[data-dm-theme=dark] body #app .dm-welcome-card-button small{color:#ded6eb}
.dm-reminder-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:20px}.dm-reminder-stats button{display:flex;flex-direction:column;align-items:flex-start;gap:8px;min-height:94px;padding:18px;border:1px solid var(--line);border-radius:18px;background:var(--surface);color:var(--ink);font:inherit;text-align:left;cursor:pointer}.dm-reminder-stats small{color:var(--muted)}.dm-reminder-stats strong{font-size:24px;overflow-wrap:anywhere}
.dm-reminder-tabs{display:flex;flex-wrap:wrap;gap:8px}.dm-reminder-tabs button[aria-pressed=true]{background:var(--primary)!important;color:#fff!important}.dm-reminder-panel .panel-body{min-width:0}.dm-reminder-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start;padding:20px 0;border-bottom:1px solid var(--line)}.dm-reminder-person{min-width:0}.dm-reminder-person>strong{display:block;margin-bottom:8px}.dm-reminder-person small{display:block;color:var(--muted);line-height:1.6;margin-top:5px;overflow-wrap:anywhere}.dm-reminder-amount{font-size:22px;color:var(--ink);white-space:nowrap}.dm-reminder-note{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--ink);font-size:14px;line-height:1.6}.dm-reminder-actions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px}.dm-reminder-actions .btn,.dm-reminder-tabs .btn{min-height:44px!important}.dm-reminder-hero{flex-wrap:wrap;gap:14px}
@media(max-width:1150px){html body #app .topbar.dm-header-has-search{grid-template-columns:minmax(0,1fr) auto!important;grid-template-areas:"main actions" "context context"!important}html body #app .topbar.dm-header-has-search .dm-header-search{display:none!important}html body #app .topbar.dm-header-has-search .dm-header-search-mobile{display:grid!important}}
@media(max-width:700px){html body #app .topbar.dm-header-has-search{padding:10px 12px!important;gap:8px!important}html body #app .topbar.dm-header-has-search .dm-header-context .topbar-scope-chip{flex-wrap:wrap;max-width:100%!important}html body #app .topbar.dm-header-has-search .mobile-school-brand>div{min-width:0!important}.dm-reminder-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.dm-reminder-stats button{padding:14px;min-height:88px}.dm-reminder-stats strong{font-size:21px}.dm-reminder-row{grid-template-columns:minmax(0,1fr)}.dm-reminder-amount{grid-row:2}.dm-reminder-actions{gap:8px}.dm-reminder-actions .btn{flex:1 1 150px;justify-content:center}html body #app .dm-welcome-card-button{max-width:none;margin:14px 0}}
html body #app .dm-student-app #content .dm-student-premium .dm-welcome-card-button :is(span,strong){color:#282044!important}
html body #app .dm-student-app #content .dm-student-premium .dm-welcome-card-button small{color:#544b67!important}
html[data-dm-theme=dark] body #app .dm-student-app #content .dm-student-premium .dm-welcome-card-button :is(span,strong){color:#fff!important}
html[data-dm-theme=dark] body #app .dm-student-app #content .dm-student-premium .dm-welcome-card-button small{color:#ded6eb!important}
html body #app #content .dm-reminder-tabs .btn[aria-pressed=true]{background:var(--primary)!important;color:#fff!important;border-color:var(--primary)!important}
/* V6.242: grouped navigation, shared order with the mobile menu. */
html body #app .sidebar .dm-grouped-nav{display:block!important;min-width:0}
html body #app .dm-sidebar-section{padding:8px 0 10px;margin:0;border-bottom:1px solid var(--dm-line,var(--line))}
html body #app .dm-sidebar-section:last-child{border-bottom:0}
html body #app .dm-sidebar-section>h3{margin:0 10px 6px;font-size:10px;font-weight:650;line-height:1.5;letter-spacing:.08em;text-transform:uppercase;color:var(--dm-muted,var(--muted))}
html body #app .dm-sidebar-section>div{display:grid;gap:3px;min-width:0}
html body #app .dm-sidebar-section>div>button{width:100%;min-width:0;min-height:40px!important;padding:9px 11px!important}
html body #app .dm-sidebar-section .dm-tab-label{min-width:0;flex:1;overflow-wrap:anywhere}
html body #app .sidebar .dm-sidebar-section{border-bottom-color:rgba(255,255,255,.10)}
html body #app .sidebar .dm-sidebar-section>h3{color:#bcb3d1!important}

/* V6.243: compact student greeting; lessons are in the appointments panel. */
html body #app .dm-student-app #content .dm-student-premium{padding:16px 18px!important;border-radius:22px!important;margin-bottom:14px!important}
html body #app .dm-student-app #content .dm-student-premium .dm-sprint-eyebrow{margin-bottom:6px!important;font-size:9px!important}
html body #app .dm-student-app #content .dm-student-premium h2{font-size:24px!important;line-height:1.2!important;overflow-wrap:anywhere}
html body #app .dm-student-app #content .dm-student-premium .dm-sprint-intro{margin:5px 0 0!important;font-size:12px!important;line-height:1.4!important}
html body #app .dm-student-app #content .dm-student-premium .dm-welcome-card-button{min-height:48px!important;padding:10px 12px!important;margin:12px 0 0!important;border-radius:14px!important;max-width:320px}
html body #app .dm-student-app #content .dm-student-premium .dm-welcome-card-button strong{font-size:15px!important}
html body #app .dm-student-app #content .dm-student-premium .dm-welcome-card-button small{display:none!important}
@media(max-width:700px){html body #app .dm-student-app .dm-student-header{padding:8px 12px!important;min-height:60px!important;box-sizing:border-box}html body #app .dm-student-app #content{padding-top:12px!important}html body #app .dm-student-app #content .dm-student-premium .dm-welcome-card-button{max-width:none}}
/* V6.244: the student header stays visible while the page scrolls on mobile. */
@media(max-width:700px){
 html body #app .dm-student-app .dm-student-header{position:fixed!important;top:0!important;left:0!important;right:0!important;width:100%!important;z-index:60!important;min-height:calc(60px + env(safe-area-inset-top,0px))!important;padding:calc(8px + env(safe-area-inset-top,0px)) max(12px,env(safe-area-inset-right,0px)) 8px max(12px,env(safe-area-inset-left,0px))!important;transform:none!important;background:var(--surface)!important}
 html body #app .dm-student-app #content.dm-student-content{padding-top:calc(72px + env(safe-area-inset-top,0px))!important}
 html body #app .dm-student-app .dm-student-brand{min-width:0!important;flex:1!important}
 html body #app .dm-student-app .dm-student-brand>div{min-width:0!important}
}
/* V6.245: solid student header, including the installed iOS app. */
html body #app .dm-student-app .dm-student-header{background:#fff!important;background-image:none!important;opacity:1!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;filter:none!important;box-shadow:none!important}
html[data-dm-theme=dark] body #app .dm-student-app .dm-student-header{background:#241d34!important}
@media(max-width:700px){
 html body #app .dm-student-app .dm-student-header{height:calc(53px + env(safe-area-inset-top,0px))!important;min-height:calc(53px + env(safe-area-inset-top,0px))!important;padding:calc(4px + env(safe-area-inset-top,0px)) max(12px,env(safe-area-inset-right,0px)) 4px max(12px,env(safe-area-inset-left,0px))!important}
 html body #app .dm-student-app .dm-student-header .dm-student-brand small{display:none!important}
 html body #app .dm-student-app #content.dm-student-content{padding-top:calc(65px + env(safe-area-inset-top,0px))!important}
}
html body #modalWrap .dm-enrollment-location{display:flex;align-items:center;gap:6px;min-width:0;margin:6px 0;font-size:12px;font-weight:600;color:var(--dm-ink,var(--ink));line-height:1.4}
html body #modalWrap .dm-enrollment-location .icon{flex:0 0 16px;width:16px;height:16px;color:var(--dm-muted,var(--muted))}
html body #modalWrap .dm-enrollment-location span{overflow-wrap:anywhere}
html body #modalWrap .dm-journey-course-location{display:block;font-size:12px;color:var(--dm-muted,var(--muted));margin-top:4px;line-height:1.4;overflow-wrap:anywhere}
