/* Layout rules shared by the study space. The appearance palette remains independent. */
.main{min-width:0;align-self:start}
.main :is(.page,.card,.stat-card,fieldset){min-width:0}
.main :is(.grid,.study-model-layout,.model-grid,.lab-layout162,.study-columns,.pp-layout,.aw-layout,.nb-layout140,.fw-layout140,.bs-layout,.rs-layout159,.rs-layout152,.sa-layout156,.tr-layout156,.chat-layout146,.lex-layout157,.transit-workspace,.exp-layout155,.duel-layout171,.journey-layout154,.br-layout,.ava-repo-layout,.avastha-engine-grid,.avastha-explorer-grid,.ava-reading-layout)>*{min-width:0;max-width:100%;box-sizing:border-box}
.main :is(.topbar,.card-title-row,.lesson-head,.experience-hero,.graha-header,.chat-heading149,.bl-heading,.rec-row152){gap:16px;flex-wrap:wrap}
.main .topbar> :first-child{flex:1 1 340px;min-width:0}
.main .top-actions{flex:0 1 auto;max-width:100%;align-items:center;justify-content:flex-end;gap:8px}
.main :is(.toolbar,.reading-toolbar,.reader-toolbar,.br-toolbar,.hero-actions,.module-tools146,.ls-controls152,.navigator-record-actions,.rec-neighbours152){display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.main :is(.toolbar,.row,.reading-toolbar,.reader-toolbar,.br-toolbar)>*{min-width:0;max-width:100%}
.main :is(input:not([type=checkbox]):not([type=radio]),select,textarea){min-width:0;max-width:100%}
.main :is(.btn,.chip,.tab,.text-btn){white-space:normal;overflow-wrap:break-word;line-height:1.4}
.main :is(.tabs,.experience-tabs,.lex-tabs157,.chart-source-switch,.avastha-tabs){flex-wrap:wrap;gap:6px}
.main :is(.card,.stat-card,.page) [hidden]{display:none!important}
.main :is(img,video,iframe){max-width:100%}
.main :is(pre,.archive-original){white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%}
.main :is(.page-sub,.page-guide p,.experience-hero p){max-width:82ch}
#interactive .experience-hero{padding:18px 20px!important;border-radius:12px}
#interactive .model-experiments173{margin:0 0 20px;padding:0 0 16px;border-bottom:1px solid var(--line);display:flex;flex-wrap:wrap;gap:8px}
#interactive .model-experiments173 p{flex-basis:100%;margin:0 0 4px}
#interactive .model-experiments173 .btn{margin:0;min-height:42px}
#interactive .study-model-layout{grid-template-columns:minmax(0,1.15fr) minmax(300px,1fr)}
#interactive .study-model-layout>.card{align-self:start}
#interactive .study-model-layout>.study-svg{justify-self:stretch;margin:0;max-width:none}
#interactive .study-model-layout>div:first-child svg{width:100%;height:auto;display:block}
#interactive .model-grid{grid-template-columns:minmax(0,1.45fr) minmax(300px,1fr)}
#interactive .study-topic173{align-items:end;flex-wrap:wrap}
#interactive .study-topic173 label{min-width:min(260px,100%)}
#interactive .map-layout146{align-items:start}
#interactive .map-browser173{margin:0;min-width:0}
#boards157 .boards-cards157{grid-template-columns:repeat(3,minmax(0,1fr))!important;align-items:stretch}
#boards157 .boards-cards157>.card{min-width:0}
#boards157 .boards-cards157>.card details{width:100%}
#boards157 .boards-cards157>.card .btn{width:100%;margin-top:12px}
.table-scroll177{max-width:100%;min-width:0;overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;margin-block:10px;outline-offset:3px}
.table-scroll177>table{width:100%;margin:0}
.table-scroll177:focus-visible{outline:2px solid var(--wine)}
.main .transit-time-panel{min-width:0;max-width:100%}
.main .transit-nav-buttons{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.main .transit-nav-buttons .btn{min-width:0;padding:10px 6px;white-space:normal}
.main .scripture-grid>.card{min-width:0}
.main .sutra-sanskrit{overflow-wrap:anywhere}
.main .sutra-sanskrit button{max-width:100%;white-space:normal}
.main :is(.rec-fields152,.cw-form-support,.cw-essential,.yoga-selectors){align-items:start}
.main .studio152 .rec-row152> :first-child{min-width:0;flex:1 1 220px}
.main .studio152 :is(.ls-controls152,.ls-sequence156){max-width:100%}
.main .chat-layout146>aside{min-width:0}
.main .chat-thread146{max-width:100%;white-space:normal;overflow-wrap:anywhere}
.main #chat-room146{min-width:0}
.main :is(.nb-format140,.nb-templates171,.admin-toolbar157){flex-wrap:wrap;gap:8px}
.main .admin-toolbar157 label{min-width:min(240px,100%)}
.main :is(.admin-group157,.guide-entry160,.guide-entry160>summary){min-width:0;overflow-wrap:anywhere}
.main .guide-entry160>summary{align-items:center}
.main .membership167 dl>div{flex-wrap:wrap}
dialog{box-sizing:border-box;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);overflow:auto;overscroll-behavior:contain}
@media(max-width:1200px){
 .main .topbar{flex-wrap:wrap}.main .top-actions{justify-content:flex-start}
 .main :is(.tr-layout156,.journey-layout154,.exp-layout155,.avastha-engine-grid){grid-template-columns:minmax(0,1fr)}
 .main .reader-shell{grid-template-columns:minmax(150px,.45fr) minmax(0,1fr)}
 .main .reader-shell>.reader-sidebar:last-child{grid-column:1/-1;max-height:none}
}
@media(max-width:1000px){
 #interactive :is(.study-model-layout,.model-grid,.lab-layout162){grid-template-columns:minmax(0,1fr)!important}
 #boards157 .boards-cards157{grid-template-columns:minmax(0,1fr)!important}
 .main :is(.pp-layout,.aw-layout,.bs-layout,.fw-layout140,.rs-layout159,.rs-layout152,.sa-layout156,.lex-layout157){grid-template-columns:minmax(0,1fr)}
 .main :is(.admin-nav.admin-directory157,.rec-fields152){grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
 .main{padding-bottom:calc(100px + env(safe-area-inset-bottom))!important}
 .main .topbar>:first-child{flex-basis:auto;width:100%}.main .top-actions{width:100%;justify-content:flex-start}
 .main .top-actions .btn{min-height:44px}.main .top-actions .release-tag146{font-size:12px}
 .main :is(.pp-layout,.aw-layout,.bs-layout,.fw-layout140,.rs-layout159,.rs-layout152,.sa-layout156,.lex-layout157,.duel-layout171,.map-layout146,.chat-layout146,.dsm-layout168,.ava-reading-layout,.ava-repo-layout,.study-reading-layout,.graha-reading-layout){grid-template-columns:minmax(0,1fr)!important}
 .main .reader-shell{display:flex;flex-direction:column}.main .reader-sidebar{max-height:35dvh}.main .reader-main{min-width:0;width:100%}
 .main :is(.admin-nav.admin-directory157,.rec-fields152,.cw-essential,.cw-form-support,.catalogue-filters,.saved-chart-filters){grid-template-columns:minmax(0,1fr)!important}
 .main .sutra-detail-card{width:100%;grid-column:auto!important;grid-row:auto!important}
 #interactive .experience-hero{padding:16px!important}#interactive .study-topic173 label{min-width:0;width:100%}
 .main :is(.ls-controls152,.studio-steps158,.reading-toolbar,.br-toolbar){position:static;max-width:100%}
 .main :is(.study-model-layout,.model-grid,.lab-layout162,.transit-workspace,.journey-layout154,.exp-layout155){gap:16px}
 .main :is(.btn,.chip,.tab,.text-btn){min-height:40px}
 .main .br-layout>aside{width:100%!important}
 dialog{max-height:calc(100dvh - 24px)!important}
}
@media(max-width:420px){
 .main :is(.course-grid,.text-grid,.start-paths171,.home-grid158,.boards-players157,.relationship-grid){grid-template-columns:minmax(0,1fr)!important}
 .main .top-actions{gap:6px}.main .top-actions .btn{padding-inline:9px}
 .main .transit-nav-buttons .btn{font-size:12px}
 .main :is(.duel-board171,.exp-board155){gap:6px;padding:8px}
 .main .duel-site171{padding:8px;min-height:120px}
}
/* Override earlier nowrap rules on the compact transit controls. */
.main .transit-nav-buttons .btn{white-space:normal!important;font-size:13px!important;padding:10px 6px!important}
@media(max-width:760px){
 .main .studio-steps158{flex-wrap:wrap!important;overflow:visible}
 .main .studio-steps158 button{white-space:normal}
 .main .transcript-pagination164{flex-wrap:wrap;gap:8px}
 .main .transit-nav-buttons .btn{font-size:12px!important}
 .main .reader-toolbar,.main .reader-nav{flex-wrap:wrap}
 .main .sutra-detail-actions{flex-wrap:wrap;gap:10px}
 .main .sutra-nav-actions{flex-shrink:1;flex-wrap:wrap}
}
