
/* Scoped layout repair; no full-page clipping and no global grid override. */
main .grid{grid-template-columns:repeat(12,minmax(0,1fr))}
main .grid>*,#homeVillage,#homeVillageBody,.village-lesson{min-width:0;box-sizing:border-box}
.village-lesson{grid-column:1/-1;width:100%;max-width:100%}
#homeVillage .ops-card,#homeVillage .ops-card p,#villageEconomy .ops-card,#villageWeightLesson .lesson-building{min-width:0;overflow-wrap:anywhere}
#homeVillage .ops-grid,#villageEconomy .ops-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}
#homeVillage table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse}
#homeVillage svg,#homeVillage canvas,#villageEconomy canvas{max-width:100%}
.siteHeader .brandWrap,.siteHeader .headerActions{min-width:0}
.siteHeader{flex-wrap:wrap;gap:12px}
.siteHeader .headerActions{display:flex;flex-wrap:wrap;gap:10px}
#villageEconomy .buildingGrid{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}
@media(max-width:768px){
 main .grid>.card,main .grid>.village-lesson{grid-column:1/-1}
 #homeVillage{padding:18px!important}
 .siteHeader .headerActions{width:100%;line-height:1.7}
 #villageEconomy .ops-grid,#homeVillage .ops-grid{grid-template-columns:minmax(0,1fr)}
 .village-lesson .lesson-current{grid-template-columns:repeat(2,minmax(0,1fr))}
 .village-lesson .lesson-steps{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:400px){.village-lesson{padding:16px;border-radius:16px}.village-lesson .lesson-current strong{font-size:23px}}
