/* Additions are mobile-only except for modest workspace heading spacing. */
.mobile-info-desktop{display:contents}.mobile-info-mobile,.student-mobile-records,.student-mobile-view-choice,.mobile-finance-data-nav{display:none}
@media(min-width:761px){
 .student-area>.sectionhead,.house-workspace .vault-heading{margin-bottom:18px}
 .student-back{margin-bottom:12px}

}
@media(max-width:760px){
 .mobile-info-desktop{display:none}.mobile-info-mobile{display:block;margin:8px 0;font-size:12px}
 .mobile-info-mobile>summary{display:inline-flex;gap:6px;align-items:center;cursor:pointer;color:#9b5145;font-size:12px;min-height:32px;list-style:none}
 .mobile-info-mobile>summary::-webkit-details-marker{display:none}
 .mobile-info-mobile>summary span{font-size:18px}
 .mobile-info-mobile>div{padding:12px;background:#fcf7f2;border:1px solid #eaded5;border-radius:10px;color:#39312d;margin-top:4px}
 .mobile-info-mobile p{margin:6px 0!important;font-size:12px!important;line-height:1.5!important}
 /* Account controls above the left-aligned brand, on every mobile view. */
 body header{display:grid!important;grid-template-columns:1fr auto;gap:9px!important;padding:10px 16px 12px!important}
 header .header-account-actions{grid-column:1/-1;grid-row:1;display:flex;justify-content:flex-end;gap:18px;max-width:100%;margin:0}
 header .header-course-access{font-size:12px;white-space:nowrap;margin:0}
 header .account-menu{font-size:12px;max-width:50%;display:flex;align-items:center;gap:5px;white-space:nowrap}
 header .account-avatar{width:23px;height:23px}
 header .brand{grid-column:1/-1;grid-row:2;justify-self:start;max-width:100%;margin:0;gap:10px}
 header .brand .logo{font-size:25px;line-height:1.15}
 header .brand .logo small{font-size:10px;letter-spacing:1px}
 header>button.secondary{grid-column:1/-1;font-size:11px;padding:6px 10px;min-height:30px;justify-self:end}
 /* Workspace top: return, small heading and navigation without empty columns. */
 body main[data-mobile-page] .student-area,body main[data-mobile-page] .sim-workspace{padding-top:16px}
 .student-finance-return{padding-top:10px!important;padding-bottom:0!important}
 .student-finance-return button,.student-back{font-size:12px!important;min-height:30px;padding:0!important;margin:0 0 8px!important}
 body main[data-mobile-page] .student-area>.sectionhead{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px!important;align-items:center}
 body main[data-mobile-page] .student-area>.sectionhead h1{font-size:25px;margin:4px 0!important}
 .student-area>.sectionhead p{margin:6px 0 0!important;font-size:12px!important;line-height:1.4!important}
 .student-area>.sectionhead .pill{font-size:10px;padding:6px 9px}
 body main[data-mobile-page] .student-resource-nav{margin:10px 0 14px!important}
 .student-materials-intro{margin-bottom:14px}
 .student-materials-intro h2{font-size:22px!important;margin:4px 0 8px!important}
 .student-materials-intro p{margin:0!important;font-size:12px!important}
 /* Materials are horizontal rows with a small space reserved for future artwork. */
 body main[data-mobile-page] .student-resource-grid{gap:12px}
 body main[data-mobile-page] .student-resource-grid>.student-resource-card{height:auto!important;min-height:150px!important;grid-template-columns:minmax(0,1fr) 38px!important;padding:16px!important;gap:8px!important}
 .student-resource-content{display:grid!important;grid-template-columns:25px minmax(0,1fr);gap:7px 10px;align-content:start}
 .student-resource-content>svg{grid-row:1;grid-column:1;align-self:center;width:23px}
 body main[data-mobile-page] .student-resource-content>h2,body main[data-mobile-page] .student-resource-content>h3{grid-column:2;height:auto!important;min-height:0;font-size:21px!important;line-height:1.2!important;margin:0!important;display:block!important}
 .student-resource-content>p{grid-column:1/-1;flex:none!important;min-height:0!important;font-size:12px!important;line-height:1.4!important;margin:2px 0!important}
 .student-resource-content>.secondary{grid-column:1/-1;justify-self:start;font-size:12px!important;min-height:34px!important;padding:7px 10px!important;margin:4px 0 0!important}
 .student-resource-content>small{grid-column:1/-1;font-size:10px!important;margin:0!important}
 body main[data-mobile-page] .student-module-grid{gap:12px}
 body main[data-mobile-page] .student-module-standard{height:auto!important;min-height:190px!important;grid-template-columns:minmax(0,1fr) 38px!important;padding:16px!important;gap:8px!important}
 .student-module-content{display:grid!important;grid-template-columns:1fr;gap:6px;height:auto!important;align-content:start}
 body main[data-mobile-page] .student-module-content>h3{height:auto!important;font-size:21px!important;margin:0!important;line-height:1.2!important}
 .student-module-content>p{min-height:0!important;font-size:12px!important;line-height:1.4!important;margin:0!important}
 .student-module-content>.link{margin:2px 0!important;font-size:11px!important}
 .student-module-content>.secondary,.student-module-content>.pill{justify-self:start;margin:2px 0 0!important;font-size:11px!important;min-height:32px!important;padding:7px 10px!important}
 .student-book-explanation{padding:16px!important;margin-bottom:14px!important}
 .student-book-explanation h2{font-size:22px!important;margin:0 0 8px!important}
 .student-book-explanation>p{font-size:12px!important;margin:6px 0!important}
 /* Course pricing stays horizontal; module cards keep their original layout. */
 .course-group-intro.sales-overview aside{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:10px;align-items:center}
 .course-group-intro.sales-overview aside>.pill{grid-column:1;grid-row:1;justify-self:start}
 .course-group-intro.sales-overview aside>.price-link{grid-column:2;grid-row:1;font-size:20px;margin:0;padding:0;text-align:right}
 .course-group-intro.sales-overview aside>.primary{grid-column:1;grid-row:2;font-size:12px;padding:10px!important;min-height:40px}
 .course-group-intro.sales-overview aside>.course-installments{grid-column:2;grid-row:2;font-size:12px!important;text-align:right;margin:0!important}
 .course-group-intro.sales-overview aside small{font-size:10px}
 /* Consistent compact icons: five controls fit in one row. */
 body main[data-mobile-page] .student-icon-nav{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:3px!important;margin:10px 0 12px!important;overflow:visible}
 body main[data-mobile-page] .student-icon-nav>button{min-width:0!important;min-height:50px!important;height:auto;padding:7px 3px!important;gap:4px!important}
 body main[data-mobile-page] .student-icon-nav>button svg{width:20px;height:20px}
 body main[data-mobile-page] .student-icon-nav .student-nav-label{font-size:10px!important;line-height:1.2!important;white-space:normal;text-align:center}
 body main[data-mobile-page] .student-icon-nav:has(>button:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}
 body main[data-mobile-page] .student-icon-nav:has(>button:nth-child(3):last-child){grid-template-columns:repeat(3,minmax(0,1fr))}
 body main[data-mobile-page] .student-icon-nav:has(>button:nth-child(4):last-child){grid-template-columns:repeat(4,minmax(0,1fr))}
 /* Less content before upload and compact saved links. */
 .house-workspace .vault>.vault-heading{padding:14px!important;gap:8px!important}
 .vault-heading>div>p{font-size:12px!important;margin:5px 0!important}
 .vault-heading>.mobile-section-menu:has(.vault-upload-buttons) .mobile-section-menu-controls{display:none}
 .vault-heading>.mobile-section-menu:has(.vault-upload-buttons) .mobile-section-menu-body{display:block!important}
 .vault-upload-buttons{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px!important;width:100%}
 .vault-upload-buttons>label,.vault-upload-buttons>button{font-size:11px!important;min-height:42px!important;padding:8px!important;text-align:center;justify-content:center;white-space:normal!important}
 .vault-upload-buttons svg{width:15px;height:15px;flex-shrink:0}
 .vault-content,.vault-folders{padding:12px!important}
 .house-links>.vault-heading{display:flex!important;align-items:center;justify-content:space-between;padding:0!important;gap:10px;min-height:0!important}
 .house-links>.vault-heading h3{font-size:17px!important;margin:0!important}
 .house-links>.vault-heading button{font-size:11px!important;padding:7px 10px!important;min-height:32px!important}
 .house-links>p.subtle{font-size:11px!important;line-height:1.4!important;margin:6px 0 10px!important}
 .saved-link{padding:12px!important;gap:7px!important}
 .saved-link p{font-size:12px!important;margin:5px 0!important}
 /* Tables cannot trap vertical scrolling inside a second viewport. */
 .sim-demo-sheet,.student-editable-sheet,.student-planner-table,.student-overview-table,.sim-finance-table{max-height:none!important;height:auto!important;overflow-x:auto;overflow-y:hidden!important;overscroll-behavior-x:none;touch-action:pan-y pinch-zoom;-webkit-overflow-scrolling:touch}
 .sim-demo-sheet{padding:10px!important;scrollbar-width:thin}
 .sim-demo-sheet>h3{font-size:17px!important;line-height:1.3!important;margin:0 0 10px!important;overflow-wrap:break-word}
 .sim-demo-sheet .finance-budget-table{min-width:0!important;table-layout:fixed;width:100%}
 .sim-demo-sheet .finance-budget-table th:first-child{width:40%}
 .sim-demo-sheet .finance-budget-table th,.sim-demo-sheet .finance-budget-table td{font-size:11px!important;line-height:1.4;padding:9px 5px!important;overflow-wrap:break-word;white-space:normal!important}
 .sim-demo-sheet .finance-budget-table td:not(:first-child){font-size:11px!important;font-variant-numeric:tabular-nums}
 .sim-demo-sheet .finance-budget-table small{font-size:9px;line-height:1.3}
 .sim-demo-sheet h4{font-size:11px;padding:9px;margin-top:12px}
 .student-mobile-view-choice{display:flex;gap:6px;padding:10px 12px;border-bottom:1px solid #eaded5;background:#fbf7f3}
 .student-mobile-view-choice>button{font-size:12px;padding:7px 13px;border:1px solid #e5d8cf;border-radius:16px;background:white}
 .student-mobile-view-choice>button.selected{background:#f2e6df;color:#9b5145;border-color:#ad574b}
 .mobile-list-view .student-mobile-records{display:grid;gap:0;padding:0 12px 12px}
 .mobile-list-view .student-sheet-frame>.student-table-fieldset,.mobile-list-view .student-sheet-frame>.student-list-save{display:none}
 .student-mobile-records>article{padding:14px 0;border-bottom:1px solid #eaded5}
 .student-mobile-record-head{display:flex;gap:9px;align-items:flex-start}
 .student-mobile-record-head>input{width:16px;height:16px;flex-shrink:0;margin-top:3px;accent-color:#ad574b}
 .student-mobile-record-head>button{font-size:14px;line-height:1.4;text-align:left;min-width:0}
 .student-mobile-record-head small{display:block;color:#9b5145;font-weight:400;font-size:11px;margin-top:4px}
 .student-mobile-records dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 12px;margin:10px 0 0}
 .student-mobile-records dl>div{min-width:0}.student-mobile-records dt{font-size:10px;color:#746c67}.student-mobile-records dd{margin:3px 0 0;font-size:12px;line-height:1.4;overflow-wrap:anywhere}
 .student-mobile-records>.secondary{margin-top:12px;justify-self:start;display:flex;align-items:center;gap:7px}
 .student-sheet-title{padding:12px!important;flex-direction:row;align-items:center;gap:8px;font-size:12px}
 .student-sheet-title small{font-size:10px;text-align:right;max-width:45%}
 .student-sheet-footnote{font-size:10px!important;line-height:1.4!important;padding:10px 12px!important}
 /* Keep summary values and filters close to the records. */
 body main[data-mobile-page] .student-sheet-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:10px 0 12px!important}
 .student-sheet-metrics .card{padding:10px 7px!important;margin:0!important}
 .student-sheet-metrics strong{font-size:23px!important;margin:6px 0 0!important}
 .student-sheet-metrics small{font-size:10px!important;line-height:1.3!important}
 .student-sheet-metrics .card>small:last-child{display:none}
 .student-planner-heading h2{font-size:22px!important;margin:4px 0!important}
 .student-planner-heading p{font-size:12px!important;margin:5px 0 10px!important}
 .student-planner-filters{display:grid!important;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:9px!important;margin:10px 0!important}
 .student-planner-filters label{font-size:11px;min-width:0;gap:5px}
 .student-planner-filters input,.student-planner-filters select{width:100%;min-width:0;font-size:16px!important;padding:8px!important;box-sizing:border-box;height:40px}
 .student-planner .sim-how{margin:8px 0!important;font-size:12px;padding:0!important}
 .student-planner .mobile-section-menu-controls{font-size:12px;padding:7px 10px;min-height:36px}
 .student-planner .mobile-section-menu-body{padding:12px!important}
 .student-checklist-viewbar{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px!important;margin:0!important}
 .student-checklist-viewbar>div{grid-column:1/-1;display:flex;gap:6px;flex-wrap:wrap}
 .student-checklist-viewbar button{font-size:11px!important;padding:7px 9px!important;min-height:32px!important}
 .student-checklist-viewbar label{font-size:11px!important;text-align:left;min-width:0}
 .student-checklist-viewbar select{width:100%;min-width:0;padding:8px;box-sizing:border-box;font-size:16px}
 .student-demo-toggle{padding:12px!important;gap:10px!important;margin:8px 0 12px!important;align-items:center}
 .student-demo-toggle small{font-size:11px;line-height:1.4;margin-top:4px}
 .student-demo-toggle button{font-size:11px!important;padding:8px 10px!important;min-height:34px!important}
 /* Plan mode at the top; finance data tabs adjacent to the actual table. */
 .mobile-finance-data-nav{display:block;margin:8px 0}
 #sim-finance-data-tabs{display:none!important}
 .sim-workspace>.sim-finance-view-tabs{margin-top:6px!important}
 .sim-finance-preview{padding:14px!important;margin:12px 0!important}
 .sim-finance-preview>h2{font-size:22px!important;margin:6px 0 8px!important}
 .sim-finance-preview>p{font-size:12px!important;margin:6px 0 12px!important}
 .sim-workspace .sim-finance-summary,.sim-workspace .sim-preview-metrics{gap:7px!important;margin:10px 0!important}
 .sim-workspace .sim-finance-summary>.card,.sim-workspace .sim-preview-metrics>div{padding:10px!important}
 .sim-workspace .sim-finance-summary strong,.sim-workspace .sim-preview-metrics strong{font-size:18px!important;margin:5px 0!important}
 .sim-workspace .sim-budget-top .sim-editable-metric label{min-height:0!important;gap:5px}
 .sim-workspace .sim-budget-top .sim-editable-metric{padding:11px!important}
 .sim-workspace .sim-budget-top .sim-editable-metric small{font-size:10px}
 .sim-workspace .sim-how{padding:0!important;margin:8px 0 12px!important;font-size:12px}
 .sim-workspace .sim-how summary{font-size:12px;padding:5px 0}
 .sim-finance-chart,.sim-demo-main .sim-finance-chart,.sim-finance-export-panel .sim-finance-chart{display:grid!important;grid-template-columns:72px minmax(0,1fr)!important;align-items:center!important;gap:10px!important;padding:14px!important}
 .sim-finance-chart>svg{width:72px!important;grid-column:1;grid-row:1/5;align-self:start}
 .sim-finance-chart>div:not(.sim-budget-status){display:contents}.sim-finance-chart>div>h3,.sim-finance-chart>div>p{grid-column:2;min-width:0}
 .sim-finance-chart h3{font-size:19px!important;margin:0 0 8px!important;line-height:1.25!important}
 .sim-finance-chart p{font-size:11px!important;margin:5px 0!important;line-height:1.4!important}
 .sim-finance-chart .sim-budget-status,.sim-finance-chart .sim-reserve-note{grid-column:1/-1;margin:4px 0 0!important;padding:12px!important;width:auto}
 .sim-budget-status strong{font-size:13px!important;line-height:1.4}
 .sim-budget-status p{font-size:11px!important;margin:5px 0 0!important}
 .sim-owner-finance-tools{padding:12px!important;margin:8px 0!important}
 .sim-owner-finance-tools>p{font-size:11px!important;margin:0!important}
}
@media(max-width:760px){
 body main[data-mobile-page] .sim-finance-view-tabs.student-icon-nav{margin:6px 0 10px!important}
 body main[data-mobile-page] .student-planner .notice{font-size:11px;line-height:1.45;padding:10px;margin:10px 0}
 .student-planner .student-notes-filter{margin:8px 0;font-size:11px}
 .student-planner .student-notes-filter select{max-width:75%;font-size:16px}
 .student-overview-table th,.student-overview-table td{padding:9px 7px;font-size:12px}
}
@media(max-width:760px){
 .sim-demo-proposals{max-height:none!important;overflow-x:auto;overflow-y:hidden;touch-action:pan-y pinch-zoom;overscroll-behavior-x:none}
 .finance-ledger-detail .finance-contribution-totals{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:10px 0}
 .finance-ledger-detail .finance-contribution-totals>div{padding:9px 5px}
 .finance-ledger-detail .finance-contribution-totals dt{font-size:10px;line-height:1.3}
 .finance-ledger-detail .finance-contribution-totals dd{font-size:13px;margin-top:5px}
 .finance-view-options{gap:6px;font-size:11px;margin:8px 0}
 .finance-view-options button{font-size:11px;padding:7px 9px;min-height:32px}
}
/* Refine spacing without shrinking every element or changing the course gallery. */
@media(max-width:760px){
 header .brand .logo{font-size:23px}
 header .brand .logo small{font-size:10px;letter-spacing:.6px;line-height:1.4;margin-top:5px}
 header .brand img{width:42px;height:42px}
 body header{row-gap:12px!important;padding-top:12px!important;padding-bottom:14px!important}
 .course-group-intro.sales-overview aside{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:8px 18px;padding-top:8px}
 .course-group-intro.sales-overview aside>.pill{grid-column:1/-1;grid-row:1;justify-self:start;margin-bottom:3px}
 .course-group-intro.sales-overview aside>.price-link{grid-column:1;grid-row:2;text-align:left;font-size:22px;line-height:1.3}
 .course-group-intro.sales-overview aside>.course-installments{grid-column:1;grid-row:3;text-align:left;font-size:12px!important;line-height:1.5}
 .course-group-intro.sales-overview aside>.primary{grid-column:2;grid-row:2/4;font-size:13px;align-self:center;min-height:46px;line-height:1.4;padding:12px!important}
 .course-group-intro.sales-overview aside .price-link small{display:block;font-size:11px;margin-top:3px}
 body main[data-mobile-page] .sim-finance-locked>.sectionhead{display:block!important;margin:0 0 22px!important}
 .sim-finance-locked>.sectionhead>div{width:100%;max-width:none;min-width:0}
 body main[data-mobile-page] .sim-finance-locked>.sectionhead h1{width:100%;max-width:none!important;font-size:27px!important;line-height:1.3!important;text-wrap:pretty;margin:8px 0 14px!important}
 body main[data-mobile-page] .sim-finance-locked>.sectionhead p{max-width:none!important;width:100%;font-size:14px!important;line-height:1.6!important;margin:0 0 18px!important}
 .sim-finance-locked>.sectionhead>.primary{margin-top:0;max-width:100%;padding:12px 16px}
 body main[data-mobile-page] .sim-finance-preview>h2{width:100%;max-width:none;font-size:24px!important;line-height:1.3!important;text-wrap:pretty;margin:10px 0 14px!important}
 .sim-finance-preview{padding:18px!important;margin:18px 0!important}
 .sim-finance-preview .mobile-info-mobile{margin:10px 0 16px}
 .sim-finance-preview .mobile-info-mobile p{font-size:13px!important;line-height:1.6!important;margin:7px 0!important}
 .sim-finance-preview>.student-icon-nav{margin-top:14px!important;margin-bottom:16px!important}
 .sim-demo-layout{gap:18px}
 .student-resource-content{gap:10px 11px!important}
 .student-resource-content>p{line-height:1.5!important;margin:4px 0!important}
 .student-resource-content>.secondary{margin-top:7px!important}
 .student-module-content{gap:9px!important}
 .mobile-info-mobile{margin:10px 0 12px}
 /* The nested link heading must not inherit the tall desktop workspace header. */
 body main[data-mobile-page] .house-workspace .house-layout .house-links>.vault-heading{display:flex!important;min-height:0!important;height:auto!important;padding:0!important;margin:0 0 10px!important;align-items:center;gap:12px}
 .house-links{margin-top:18px;padding-top:16px}
 .house-links>.subtle{margin-bottom:12px!important}
 .house-links .saved-link{padding-top:12px!important;padding-bottom:12px!important;padding-right:88px!important;margin:10px 0;min-height:0;height:auto}
 /* Files/calendar and upload share a row; paste/folder share the next one. */
 body main[data-mobile-page] .house-workspace .house-layout .vault>.vault-heading{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px!important;min-height:0!important;height:auto!important;padding:16px!important;align-items:center}
 .vault>.vault-heading>div:first-child{display:contents}
 .vault>.vault-heading>div:first-child>.eyebrow{grid-column:1/-1;grid-row:1}
 .vault>.vault-heading>div:first-child>h2{grid-column:1/-1;grid-row:2;margin:0!important}
 .vault>.vault-heading>div:first-child>p{grid-column:1/-1;grid-row:3;margin:0 0 2px!important;font-size:13px!important;line-height:1.5}
 body main[data-mobile-page] .vault>.vault-heading .planner-icon-nav{grid-column:1/5;grid-row:4;margin:2px 0!important;gap:8px!important}
 body main[data-mobile-page] .vault>.vault-heading>.mobile-section-menu:has(.vault-upload-buttons),body main[data-mobile-page] .vault>.vault-heading>.mobile-section-menu:has(.vault-upload-buttons)>.mobile-section-menu-body,body main[data-mobile-page] .vault>.vault-heading .vault-upload-buttons{display:contents!important}
 .vault>.vault-heading .vault-upload-buttons>button{grid-column:1/4;grid-row:5;display:flex;align-items:center;gap:7px}
 .vault>.vault-heading .vault-upload-buttons>label.secondary{grid-column:4/7;grid-row:5}
 .vault>.vault-heading .vault-upload-buttons>label.primary{grid-column:5/7;grid-row:4;align-self:stretch;display:flex;align-items:center;justify-content:center;gap:5px}
 body main[data-mobile-page] .vault>.vault-heading .vault-upload-buttons>button,body main[data-mobile-page] .vault>.vault-heading .vault-upload-buttons>label{font-size:12px!important;min-height:42px!important;padding:10px!important}
 body main[data-mobile-page] .vault>.vault-heading:not(:has(.vault-upload-buttons)) .planner-icon-nav{grid-column:1/-1}
}

/* Return actions share the heading line without changing desktop content. */
.student-back-mobile{display:none}
@media(max-width:760px){
.student-back-mobile{display:inline-block}.student-back-desktop{display:none}

.student-area>.sectionhead>div,.sim-workspace>.sectionhead>div{min-width:0}
.student-area>.sectionhead .student-back,.sim-workspace>.sectionhead .student-back{float:right;font-size:12px;margin:0 0 10px 14px;min-height:28px;line-height:1.4}
.student-area>.sectionhead h1,.sim-workspace>.sectionhead h1{clear:both}

 body main[data-mobile-page] .student-area>.sectionhead{text-align:left!important;justify-content:flex-start!important}
 body main[data-mobile-page] .student-area>.sectionhead>div{width:100%;text-align:left!important}
 body main[data-mobile-page] .student-sheet-metrics:has(>.card:nth-child(4):last-child){grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:6px}
 .student-sheet-metrics:has(>.card:nth-child(4):last-child) .card{padding:10px 5px!important}
 .student-sheet-metrics:has(>.card:nth-child(4):last-child) strong{font-size:21px!important}
 .student-mobile-record-head>button{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;width:100%}
 .student-mobile-record-head>button>strong{min-width:0;flex:1}
 .student-mobile-record-head>button>small{flex-shrink:0;white-space:nowrap;margin:2px 0 0;font-size:10px}
 .student-area>.sectionhead .student-back,.sim-workspace>.sectionhead .student-back{font-size:11px!important;margin:0 0 8px 10px!important;min-height:24px}
}

@media(max-width:760px) and (orientation:portrait){
 .mobile-wide-table::before{content:"↻ Vire o celular para ver melhor";display:block;position:sticky;left:0;width:fit-content;max-width:100%;box-sizing:border-box;font-size:11px;line-height:1.4;color:#9b5145;background:#fbf7f3;border:1px solid #eaded5;border-radius:14px;padding:6px 10px;margin:0 0 10px}
}

@media(max-width:760px){.sim-demo-sheet>section:has(>.finance-budget-table)>h4{text-align:center!important;width:100%;box-sizing:border-box}}

@media(max-width:760px){
 .sim-demo-sheet .finance-ledger-details{display:block;width:100%;min-width:0!important;border:0}
 .finance-ledger-details>thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 .finance-ledger-details>tbody{display:block}
 .finance-ledger-details>tbody>tr{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px 8px;padding:14px 0;border-bottom:1px solid #eaded5}
 .sim-demo-sheet .finance-ledger-details td{display:block;grid-column:span 2;min-width:0;padding:0 3px!important;border:0!important;background:transparent!important;white-space:normal!important;overflow-wrap:anywhere;font-size:12px!important;text-align:left!important;line-height:1.45}
 .sim-demo-sheet .finance-ledger-details td:nth-child(n+4){grid-column:span 3}
 .finance-ledger-details td::before{content:attr(data-label);display:block;font-size:10px;color:#746c67;margin-bottom:5px;line-height:1.3}
 .sim-demo-sheet .finance-contribution-table{min-width:0!important;width:100%;table-layout:fixed}
 .sim-demo-sheet .finance-contribution-table th,.sim-demo-sheet .finance-contribution-table td{padding:8px 4px!important;font-size:11px!important;white-space:normal!important;overflow-wrap:anywhere}
}

@media(max-width:760px){
 .sim-demo-sheet section>h4,.sim-demo-proposal>h4{text-align:center!important;width:100%;box-sizing:border-box}
 .student-sheet-title{display:grid;grid-template-columns:minmax(0,1fr);justify-items:center;text-align:center;gap:6px}
 .student-sheet-title>small{max-width:100%;text-align:center}
}

@media(max-width:760px){
 body main[data-mobile-page] .sim-finance-locked>.sectionhead{text-align:center!important}
 .sim-finance-locked>.sectionhead>div{text-align:center!important}
 .sim-finance-locked>.sectionhead>.primary{display:block;margin-left:auto;margin-right:auto}
}

@media(max-width:760px){.community-empty-line{text-align:center;padding:20px 12px;line-height:1.6}}

@media(max-width:760px){
 body main[data-mobile-page] .student-sheet-metrics:is(:has(>.card:nth-child(3):last-child),:has(>.card:nth-child(4):last-child)){display:flex!important;justify-content:center;align-items:stretch;gap:6px!important;flex-wrap:wrap}
 body main[data-mobile-page] .student-sheet-metrics:is(:has(>.card:nth-child(3):last-child),:has(>.card:nth-child(4):last-child))>.card{flex:0 0 calc((100% - 18px)/4);width:calc((100% - 18px)/4);min-width:0;min-height:118px;box-sizing:border-box;padding:10px 5px!important}
 body main[data-mobile-page] .student-sheet-metrics>.card>small:first-child{min-height:39px;display:block}
 body main[data-mobile-page] .student-sheet-metrics>.card>strong{font-size:21px!important;line-height:1.3}
}

@media(max-width:760px){
 body main[data-mobile-page] .sim-finance-chart{grid-template-columns:92px minmax(0,1fr) minmax(0,1fr)!important;gap:12px!important;padding:16px!important}
 body main[data-mobile-page] .sim-finance-chart>svg{width:92px!important;grid-column:1;grid-row:2/4;align-self:center}
 body main[data-mobile-page] .sim-finance-chart>div>h3{grid-column:1/-1;grid-row:1;text-align:center;font-size:21px!important;margin:0 0 4px!important}
 body main[data-mobile-page] .sim-finance-chart>div>p:nth-of-type(1){grid-column:2;grid-row:2}
 body main[data-mobile-page] .sim-finance-chart>div>p:nth-of-type(2){grid-column:3;grid-row:2}
 body main[data-mobile-page] .sim-finance-chart>div>p:nth-of-type(3){grid-column:2/4;grid-row:3}
 body main[data-mobile-page] .sim-finance-chart>div>p{font-size:11px!important;line-height:1.5!important;margin:0!important}
 body main[data-mobile-page] .sim-finance-chart>div>p strong{display:block;margin-top:5px;font-size:13px;line-height:1.4}
 body main[data-mobile-page] .sim-finance-chart .sim-budget-status{grid-column:1/-1;grid-row:4;margin-top:4px!important}
}

@media(max-width:760px){
 .sim-finance-locked>.card.aside{padding:20px!important;margin-top:20px}
 .sim-finance-locked>.card.aside>h2{font-size:23px;line-height:1.3;margin:0 0 14px}
 .sim-finance-locked>.card.aside>p{font-size:14px;line-height:1.65;margin:0 0 18px}
 .sim-finance-locked .sim-finance-cta{gap:14px}
}

/* Corrections from the complete mobile spacing review. */
@media(max-width:760px){
 /* Icon-only disclosures occupy just their touch target, never a full strip. */
 body main[data-mobile-page] .mobile-info-icon{position:relative;display:inline-block!important;width:32px;max-width:32px;min-height:0!important;height:32px!important;padding:0!important;margin:0!important;border:0!important;background:transparent!important;overflow:visible!important;vertical-align:middle;flex:0 0 32px}
 .mobile-info-icon>summary{display:flex!important;align-items:center;justify-content:center;min-height:32px!important;width:32px;height:32px;padding:0!important;margin:0!important;border:0!important;background:transparent!important;border-radius:50%;font-size:0}
 .mobile-info-icon>summary span{font-size:20px}
 .mobile-info-icon>div{position:absolute;top:36px;left:0;right:auto;z-index:30;width:min(280px,calc(100vw - 64px));max-height:50dvh;overflow:auto;margin:0!important;box-shadow:0 8px 24px #30282420;text-align:left}
 .student-area-description{position:relative;padding:20px!important}
 .student-area-description>h2{padding-right:36px;margin-top:0!important;margin-bottom:12px!important}
 body main[data-mobile-page] .support-course-access-pending{display:inline-block;width:32px;min-height:0;height:32px;padding:0!important;margin:0!important;border:0!important;background:transparent!important}
 .student-area-description>.support-course-access-pending{position:absolute;top:16px;right:16px}
 .support-course-access-pending .mobile-info-icon{margin:0!important}
 /* Every module uses the same track sizes in visitor/Essencial/Master views. */
 body main[data-mobile-page] .student-module-grid>.student-module-standard{height:292px!important;min-height:292px!important;max-height:292px!important;box-sizing:border-box;padding:16px!important;align-items:stretch}
 body main[data-mobile-page] .student-module-standard>.student-module-content{height:100%!important;min-height:0;display:grid!important;grid-template-rows:16px 50px 18px 54px 32px 36px;gap:8px!important;align-content:start}
 body main[data-mobile-page] .student-module-content>h3{height:50px!important;min-height:50px!important;margin:0!important;display:-webkit-box!important;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.2!important}
 .student-module-content>.student-module-topic{height:54px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;line-height:1.5!important}
 .student-module-content>.secondary,.student-module-content>.pill{align-self:end;margin:0!important}
 /* Align the brand and its slogan, not just the outer grid position. */
 body header>.brand{justify-self:start!important;justify-content:flex-start!important;text-align:left!important;width:auto!important;max-width:100%;margin-left:0!important;transform:none!important}
 body header>.brand>.logo,body header>.brand>.logo>small{display:block;text-align:left!important;transform:none!important;margin-left:0!important;width:auto!important}
 body header>.brand>.logo>em{text-align:left!important;transform:none!important}
 /* The complete introduction, including the CTA, is centered together. */
 body main[data-mobile-page] .sim-finance-locked>.sectionhead{display:grid!important;grid-template-columns:minmax(0,1fr)!important;justify-items:center!important;text-align:center!important;gap:0!important}
 body main[data-mobile-page] .sim-finance-locked>.sectionhead>div{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;text-align:center!important;transform:none!important}
 body main[data-mobile-page] .sim-finance-locked>.sectionhead>div>:is(.eyebrow,h1,p){text-align:center!important;transform:none!important;max-width:100%!important}
 body main[data-mobile-page] .sim-finance-locked>.sectionhead>.primary{justify-self:center!important;align-self:center!important;transform:none!important;margin:0 auto!important;max-width:100%!important}
}

@media(max-width:760px){
 .student-area-description:has(.support-course-access-pending){overflow:visible}
 .student-area-description>.support-course-access-pending .mobile-info-icon>div{left:auto;right:0}
}

@media(max-width:760px){
 /* Restore the large course covers and body underneath on every phone width. */
 body main[data-mobile-page] .course-sales>.module-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:24px!important;margin-top:28px!important}
 body main[data-mobile-page] .course-sales>.module-grid>article.card{display:block!important;height:auto!important;min-height:0!important;padding:0!important}
 body main[data-mobile-page] .course-sales>.module-grid>article>.cover-button{display:block!important;position:static!important;width:100%!important;height:auto!important;padding:0!important;margin:0!important}
 body main[data-mobile-page] .course-sales>.module-grid>article>.cover-button>img{display:block!important;position:static!important;width:100%!important;height:auto!important;max-width:100%!important;object-fit:contain!important;object-position:center!important;transform:none!important}
 body main[data-mobile-page] .course-sales>.module-grid>article>.body{display:block!important;width:100%!important;padding:22px!important}
 body main[data-mobile-page] .course-sales>.module-grid>article>.body>h3{font-size:23px!important;line-height:1.3!important;margin:14px 0!important}
 body main[data-mobile-page] .course-sales>.module-grid>article>.body>p{font-size:14px!important;line-height:1.6!important;margin:0 0 18px!important}
 body main[data-mobile-page] .course-sales .course-group-intro.sales-overview{height:auto!important;min-height:0!important}
 body main[data-mobile-page] .course-sales .course-group-intro.sales-overview aside>:is(span,button,p){transform:none!important}
}

/* The apostila overview exposes every topic without clipping the list. */
.student-module-grid{grid-auto-rows:1fr}
.student-module-grid>.student-module-standard:has(.student-module-topics){height:auto;min-height:314px;overflow:visible}
.student-module-content>.student-module-topics{list-style:none;margin:6px 0 10px;padding:0;font-size:12px;line-height:1.65;color:var(--muted);flex:1}
.student-module-topics>li{display:inline;overflow-wrap:break-word}
.student-module-topics>li:not(:last-child)::after{content:" · ";color:#ad574b;white-space:pre}
@media(max-width:760px){
 body main[data-mobile-page] .student-module-grid{grid-auto-rows:1fr}
 body main[data-mobile-page] .student-module-grid>.student-module-standard:has(.student-module-topics){height:auto!important;min-height:280px!important;max-height:none!important;grid-template-columns:minmax(0,1fr) 16px!important;overflow:visible}
 body main[data-mobile-page] .student-module-standard:has(.student-module-topics)>.student-module-content{height:100%!important;grid-template-rows:16px 50px 18px minmax(min-content,1fr) auto 36px!important;gap:9px!important;align-content:stretch}
 body main[data-mobile-page] .student-module-content>.student-module-topics{display:block!important;width:100%;height:auto;min-height:0;margin:2px 0 4px!important;padding:0!important;font-size:12px!important;line-height:1.65!important;overflow:visible;-webkit-line-clamp:unset}
 body main[data-mobile-page] .student-module-content>.link{margin:0!important;min-height:28px;align-self:end;line-height:1.4}
}

@media(max-width:760px){
 /* A column flex container must not turn the horizontal search basis into height. */
 body main[data-mobile-page] .house-workspace .vault-content .vault-tools>.vault-search{display:flex!important;flex:0 0 auto!important;flex-direction:row!important;align-items:center!important;width:100%!important;height:44px!important;min-height:44px!important;max-height:44px!important;padding:8px 10px!important;margin:0!important;gap:8px!important;box-sizing:border-box}
 body main[data-mobile-page] .house-workspace .vault-content .vault-tools>.vault-search>input{display:block!important;flex:1 1 auto!important;width:100%!important;min-width:0!important;height:26px!important;min-height:0!important;max-height:26px!important;padding:0!important;margin:0!important;border:0!important;line-height:26px!important;font-size:16px!important}
 body main[data-mobile-page] .house-workspace .vault-content .vault-tools>.vault-search>svg{flex:0 0 18px!important;width:18px!important;height:18px!important}
}
