/* GYA responsive visual overhaul v17. Scoped, additive; preserves data and module logic. */
:root{--gya-ink:#482b3f;--gya-plum:#673751;--gya-paper:#fffafc;--gya-border:#ebd6e1}
html{overflow-x:hidden}body{overflow-x:hidden;background:#fcf7fa;color:var(--gya-ink)}
button,input,select,textarea{font-family:Inter,system-ui,sans-serif;max-width:100%}
button{touch-action:manipulation}button:focus-visible,a:focus-visible{outline:3px solid #a74f84;outline-offset:2px}
.hidden,[hidden]{display:none!important}
#personalModules.hidden,#gyaLongFeed.hidden,#gyaVisualDashboard.hidden,#gyaMoreSheet[hidden]{display:none!important}
#personalModules,#gyaLongFeed,#gyaVisualDashboard,#exploreArea,#musicArea{min-width:0;max-width:100%}
#personalModules .pm-panel,#personalModules .pm-header{overflow:hidden}
#personalModules .pm-panel :is(input,select,textarea){display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;padding:13px 14px!important;border-radius:13px!important;border:1px solid #dbbccc!important;background:#fff!important;color:#40273a!important;line-height:1.45!important}
#personalModules .pm-entry label{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:8px!important;white-space:normal!important}
#personalModules .pm-actions{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(130px,1fr))!important;gap:9px!important}
#personalModules .pm-actions button{width:100%;white-space:normal!important}
#personalModules .pm-tabs{scroll-snap-type:x proximity;overscroll-behavior-x:contain}
#personalModules .pm-tabs button{scroll-snap-align:start}
.mobile-more:not(.hidden){background:#fffafd!important;color:#4e2b40!important}
.mobile-more:not(.hidden) button{color:#4e2b40!important;background:#f8ebf2!important}
.gya-more-sheet:not([hidden]){background:#fff9fc!important;color:#4e2b40!important;box-shadow:0 14px 38px #3b1b3030}
.gya-more-sheet button{color:#522e46!important}
.gya-quick-actions button{display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:5px;white-space:normal;text-align:center}
.gya-module-grid>*{min-width:0;overflow:hidden}
.gya-module-grid :is(strong,small,p){overflow-wrap:anywhere}
.feed-list{min-width:0}.feed-item{min-width:0}.feed-player{min-width:0;overflow:hidden}
.feed-player video{display:block;width:100%;max-width:100%;aspect-ratio:9/16;max-height:72dvh;background:#241723;border-radius:20px;object-fit:contain}
.feed-actions,.feed-navigation{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between}
.feed-actions button,.feed-navigation button{min-height:44px;border-radius:13px}
.feed-lesson textarea{display:block;width:100%;min-height:100px;border-radius:14px;padding:13px;border:1px solid #d7b9c9;background:#fff;color:#3d2637}
@media(max-width:740px){
 .shell{display:block!important;width:100%!important;max-width:100vw!important}
 .sidebar{display:none!important}
 .main{width:100%!important;max-width:100vw!important;min-width:0!important;padding:14px 14px calc(105px + env(safe-area-inset-bottom))!important}
 .topbar{margin-bottom:15px!important}
 .desktop-page-title,.top-actions{display:none!important}
 .mobile-brand{display:flex!important;align-items:center;justify-content:space-between;gap:8px}
 .hero{border-radius:20px!important;padding:22px 20px!important}
 .stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .gya-module-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:11px!important}
 .gya-quick-actions{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:7px!important}
 .gya-quick-actions button{font-size:11px!important;padding:10px 4px!important;min-width:0!important}
 #personalModules .pm-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:13px!important}
 #personalModules .pm-header{border-radius:19px;padding:23px 19px!important}
 #personalModules .pm-panel{border-radius:19px;padding:17px!important}
 #personalModules .pm-header h2{font-size:clamp(24px,7vw,32px)!important}
 #personalModules .pm-panel h3{font-size:21px!important}
 .feed-layout{display:flex!important;flex-direction:column!important;gap:13px!important}
 .feed-list{display:flex!important;overflow-x:auto!important;gap:9px!important;scroll-snap-type:x mandatory;padding:5px 1px 12px!important;order:2}
 .feed-item{flex:0 0 72%!important;scroll-snap-align:start!important}
 .feed-player{order:1;width:100%!important}
 .feed-player video{max-height:64dvh!important}
 .feed-filters{display:flex!important;overflow-x:auto!important;gap:7px!important}
 .feed-filters button{flex:0 0 auto!important;min-height:40px!important}
 .mobile-nav{z-index:100!important;backdrop-filter:blur(14px)}
 .mobile-more:not(.hidden){display:grid!important;z-index:110!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;max-height:60dvh!important;overflow:auto!important}
 .gya-media-fields{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:9px!important}
 .gya-media-fields>*{width:100%!important;min-width:0!important}
}
@media(max-width:350px){.gya-quick-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
