/* JSE admin: desktop, tablet and phone. Keep shortcuts inside authenticated #app. */
html,body{max-width:100%;overflow-x:hidden}
body{min-width:0}
header{position:relative!important;display:flex!important;align-items:center!important;justify-content:space-between!important;flex-wrap:wrap!important;gap:12px!important;padding:14px clamp(14px,3vw,32px)!important}
header .brand{flex:0 1 230px;min-width:0}
header .brand img{display:block!important;width:min(220px,100%)!important;max-width:100%!important;height:auto!important}
header>div{display:flex!important;flex:1 1 240px!important;flex-wrap:wrap!important;align-items:center!important;justify-content:flex-end!important;gap:10px!important;min-width:0}
header a,header button{position:static!important;max-width:100%;overflow-wrap:anywhere}
main{width:min(100%,1200px)!important;max-width:1200px!important;margin:24px auto!important;padding:0 clamp(12px,3vw,28px)!important;min-width:0}
#login{width:min(100%,520px)!important;max-width:520px!important;margin:28px auto!important;padding:clamp(20px,4vw,36px)!important;position:relative!important}
#login form{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:8px!important}
#login input{min-width:0!important;width:100%!important;max-width:100%!important}
#login button{position:static!important;max-width:100%!important;white-space:normal!important}
#login .secondary{width:100%!important}
#app .jse-admin-shortcuts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 18px}
#app .jse-admin-shortcuts a{display:flex;align-items:center;justify-content:center;text-align:center;min-height:48px;padding:12px 14px;border-radius:12px;background:#176ba6;color:#fff;text-decoration:none;font-weight:700;line-height:1.4;position:static!important;box-shadow:none!important}
#app .jse-admin-shortcuts a:focus-visible{outline:3px solid #64b7ff;outline-offset:3px}
#app #tabs{display:flex;flex-wrap:wrap;gap:8px;max-width:100%;margin:0 0 20px}
#app #tabs>*{flex:0 1 auto;min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere}
#app .grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))!important}
#app .panel{max-width:100%;min-width:0}
#app .scroll{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
#app table{min-width:580px}
#app input,#app select,#app textarea{max-width:100%;min-width:0}
.hidden,[hidden]{display:none!important}
@media(max-width:900px){#app .jse-admin-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}header>div{justify-content:flex-start!important}}
@media(max-width:600px){header{flex-direction:column!important;align-items:stretch!important}header .brand{flex:0 0 auto!important}header>div{flex:0 0 auto!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}header>div>*{width:100%!important;text-align:center!important}header>div>*:last-child:nth-child(odd){grid-column:1/-1}main{margin:16px auto!important}#login{margin:12px auto!important}#app .jse-admin-shortcuts{grid-template-columns:1fr}#app #tabs>*{flex:1 1 calc(50% - 8px)}#app .panel{padding:16px!important}h1,h2{overflow-wrap:anywhere}}
