/* V18 — proportional, responsive landing/login; preserve source image and V10-style controls. */
html {width:100%;min-width:0;overflow-x:hidden;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body {width:100%;min-width:0;overflow-x:clip}
body.on-portal .main-shell,body.on-login .main-shell{width:100%!important;max-width:none!important;padding:0!important;min-height:0!important}
body.on-portal #view-choose.portal-home{
 position:relative!important;isolation:isolate!important;display:block!important;
 box-sizing:border-box!important;width:min(100%,1280px)!important;
 min-width:0!important;min-height:0!important;height:auto!important;
 aspect-ratio:4/3!important;margin:0 auto!important;padding:0!important;
 background:#08455b!important;overflow:hidden!important;
}
body.on-portal #view-choose .portal-scenery{
 position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
 background-image:url('./assets/aswan_landing_user_original.png')!important;
 background-size:100% 100%!important;background-position:center!important;background-repeat:no-repeat!important;
 filter:none!important;opacity:1!important;transform:none!important;
}
body.on-portal #view-choose .portal-content{
 position:absolute!important;inset:auto 0 0!important;display:flex!important;align-items:flex-end!important;
 box-sizing:border-box!important;width:100%!important;max-width:none!important;height:auto!important;
 padding:0 clamp(12px,3.4%,46px) clamp(14px,3.3%,42px)!important;
 margin:0!important;transform:none!important;
}
body.on-portal #view-choose .portal-access{
 width:min(100%,1080px)!important;min-width:0!important;height:auto!important;max-height:none!important;
 position:relative!important;inset:auto!important;overflow:visible!important;
 border:1px solid #c9aa6a!important;border-radius:18px!important;
 padding:clamp(10px,1.4vw,18px)!important;margin:0 auto!important;
 background:linear-gradient(130deg,rgba(0,48,59,.96),rgba(4,74,76,.95))!important;
}
body.on-portal #view-choose .portal-access-heading{display:flex!important;align-items:center!important;gap:10px!important;padding:0 0 7px!important;min-height:0!important}
body.on-portal #view-choose .portal-access-heading h1{font-size:clamp(19px,2.1vw,27px)!important;line-height:1.25!important;margin:0!important}
body.on-portal #view-choose .portal-access-heading .portal-eagle{width:36px!important;height:36px!important;object-fit:contain!important}
body.on-portal #view-choose .portal-access-heading .portal-pretitle{font-size:clamp(11px,1vw,14px)!important}
body.on-portal #view-choose .portal-access-heading .secure-caption{font-size:clamp(10px,.95vw,13px)!important}
body.on-portal #view-choose .portal-tabs{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:6px!important;padding:4px!important;margin:6px 0!important;min-width:0!important}
body.on-portal #view-choose .portal-tab{min-width:0!important;min-height:44px!important;width:auto!important;font-size:clamp(13px,1.35vw,19px)!important;line-height:1.15!important;padding:6px!important;white-space:normal!important}
body.on-portal #view-choose .portal-selection-info{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;min-width:0!important;padding:9px 12px!important;margin-top:6px!important}
body.on-portal #view-choose .selection-identity{min-width:0!important;flex:1!important;gap:9px!important}
body.on-portal #view-choose .selection-crest{width:52px!important;height:52px!important;object-fit:contain!important;flex-shrink:0!important}
body.on-portal #view-choose .portal-selection-info h2{font-size:clamp(17px,1.8vw,23px)!important;line-height:1.2!important;margin:0!important}
body.on-portal #view-choose .portal-selection-info p{font-size:clamp(11px,1.15vw,15px)!important;line-height:1.3!important;margin:0!important}
body.on-portal #view-choose .gold-button{min-height:44px!important;max-width:100%!important;flex-shrink:0!important;padding:7px 14px!important;font-size:clamp(12px,1.2vw,16px)!important;white-space:normal!important}
body.on-login #view-login{min-height:100dvh!important;min-width:0!important;overflow-x:clip!important;padding:0 14px!important}
body.on-login .login-scenery{background-image:linear-gradient(to bottom,rgba(0,28,38,.12),rgba(0,32,42,.7)),url('./assets/aswan_landing_user_original.png')!important;background-size:cover!important;background-position:center center!important}
body.on-login .login-frame{width:min(100%,1060px)!important;max-width:1060px!important;min-height:100dvh!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,400px)!important;align-items:center!important;gap:clamp(14px,3vw,32px)!important;padding:clamp(115px,18vh,190px) 8px 24px!important;margin:auto!important}
body.on-login .login-identity{min-width:0!important;padding:10px!important}
body.on-login .login-identity h1{font-size:clamp(25px,3vw,42px)!important}
body.on-login .dedicated-login-card{box-sizing:border-box!important;width:100%!important;max-width:400px!important;min-width:0!important;margin:0!important;padding:clamp(16px,2vw,25px)!important}
body.on-login .dedicated-login-card input{max-width:100%!important}
@media(max-width:900px){
 body.on-portal #view-choose .portal-content{padding:0 2.5% 2.2%!important}
 body.on-portal #view-choose .portal-tabs{grid-template-columns:repeat(3,minmax(0,1fr))!important}
 body.on-portal #view-choose .portal-tab{min-height:36px!important;font-size:15px!important}
 body.on-portal #view-choose .portal-access-heading .secure-caption{display:none!important}
 body.on-login .login-frame{grid-template-columns:minmax(0,1fr) minmax(0,380px)!important;padding:110px 8px 24px!important}
}
@media(max-width:620px){
 body.on-portal #view-choose.portal-home{aspect-ratio:auto!important;min-height:100dvh!important;overflow:visible!important;padding-top:74vw!important}
 body.on-portal #view-choose .portal-scenery{height:75vw!important;inset:0 0 auto!important;background-size:100% 100%!important}
 body.on-portal #view-choose .portal-content{position:relative!important;inset:auto!important;padding:0 10px 16px!important}
 body.on-portal #view-choose .portal-tabs{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 body.on-portal #view-choose .portal-tab{font-size:16px!important;min-height:44px!important}
 body.on-portal #view-choose .portal-access-heading{gap:7px!important}
 body.on-portal #view-choose .portal-selection-info{flex-direction:column!important;align-items:stretch!important}
 body.on-portal #view-choose .gold-button{width:100%!important}
 body.on-login .login-frame{display:flex!important;flex-direction:column!important;align-items:stretch!important;min-height:100dvh!important;gap:10px!important;padding:clamp(145px,35vw,225px) 0 20px!important}
 body.on-login .login-identity{padding:0 6px!important}
 body.on-login .login-identity .login-role-pills{display:none!important}
 body.on-login .dedicated-login-card{max-width:100%!important}
}
