/* CRP V1.6.17: branding and user-supplied construction photo.
   All overrides scoped to authentication or branding; do not change task UI. */
.sidebar .crp-brand,.auth-shell .auth-story .crp-brand{
 display:flex!important;align-items:center!important;gap:12px!important;
 min-width:0!important;max-width:100%!important;letter-spacing:0!important;
}
.crp-brand .crp-brand-logo{
 display:block;flex:none;object-fit:contain;object-position:center;
 width:42px;height:42px;max-width:100%;filter:drop-shadow(0 3px 5px rgba(0,0,0,.21));
}
.crp-brand .crp-brand-copy{display:flex;flex-direction:column;justify-content:center;min-width:0;line-height:1.14;}
.crp-brand .crp-brand-copy strong{display:block;font-weight:850;color:inherit;line-height:1.1;letter-spacing:.02em;}
.crp-brand .crp-brand-copy small{display:block!important;max-width:100%;margin-top:5px!important;font-size:10px!important;line-height:1.25!important;font-weight:600!important;letter-spacing:0!important;white-space:normal!important;overflow-wrap:normal!important;}
.sidebar .crp-brand{gap:8px!important;padding:2px 4px!important;font-size:21px!important;}
.sidebar .crp-brand .crp-brand-logo{width:38px;height:38px;}
.sidebar .crp-brand .crp-brand-copy{flex:1 1 auto;}
.sidebar .crp-brand .crp-brand-copy small{font-size:8px!important;line-height:1.26!important;}
html[data-theme="dark"] .sidebar .crp-brand .crp-brand-copy small{color:#b8c8dc!important;}
html:not([data-theme="dark"]) .sidebar .crp-brand .crp-brand-copy small{color:#4a6077!important;}
/* At desktop sizes the hero photo and right engineering grid extend all the
   way to the viewport bottom; no separate dark footer or 92vh min-height. */
@media (min-width:721px){
 .auth-shell{height:100vh!important;height:100dvh!important;min-height:0!important;overflow:hidden!important;}
 .auth-shell>main{display:flex!important;flex:1 1 auto!important;min-height:0!important;height:100%!important;overflow:auto!important;}
 .auth-shell .auth-layout{flex:1 0 100%!important;height:100%!important;min-height:0!important;align-self:stretch!important;}
 .auth-shell .auth-layout.auth-mode-login{flex:1 1 auto!important;}
 .auth-shell .auth-layout>.auth-story,.auth-shell .auth-layout>.auth-panel{min-height:0!important;height:100%!important;}
}
.auth-shell>footer{display:none!important;}
/* Use the exact photo supplied by the user, served locally. */
.auth-shell .auth-story{
 background-image:url('auth-construction-photo.webp')!important;
 background-color:#285073!important;
 background-position:24% 40%!important;background-size:cover!important;
}
.auth-shell .auth-story::before{
 background:linear-gradient(90deg,rgba(8,27,51,.76),rgba(10,35,62,.56) 52%,rgba(13,43,72,.23)),
 linear-gradient(0deg,rgba(8,25,46,.70),transparent 40%,rgba(7,26,47,.19))!important;
}
html[data-theme="dark"] .auth-shell .auth-story{
 background-color:#122135!important;
}
html[data-theme="dark"] .auth-shell .auth-story::before{
 background:linear-gradient(90deg,rgba(4,13,28,.84),rgba(7,22,42,.71) 53%,rgba(9,26,45,.41)),
 linear-gradient(0deg,rgba(5,13,26,.84),transparent 46%,rgba(5,14,28,.31))!important;
}
.auth-shell .auth-story .crp-brand{margin-bottom:clamp(18px,4vh,44px)!important;font-size:clamp(23px,2.1vw,31px)!important;}
.auth-shell .auth-story .crp-brand .crp-brand-logo{width:clamp(54px,5vw,72px);height:clamp(54px,5vw,72px);}
.auth-shell .auth-story .crp-brand .crp-brand-copy strong{font-size:clamp(23px,2.2vw,32px)!important;color:#fff!important;text-shadow:0 2px 12px #06142690;}
.auth-shell .auth-story .crp-brand .crp-brand-copy small{font-size:clamp(11px,.87vw,13px)!important;color:#f3f7fe!important;text-shadow:0 2px 10px #061426c0;}
.auth-shell .auth-story :is(.eyebrow,h1,p,.story-stats,.story-stats small,small){text-shadow:0 2px 10px rgba(0,10,25,.65);}
/* Keep all content visible even at 768px desktop viewport height. */
@media (min-width:721px) and (max-height:820px){
 .auth-shell .auth-story{padding:clamp(22px,3vw,42px)!important;}
 .auth-shell .auth-story .crp-brand{margin-bottom:clamp(15px,3vh,26px)!important;}
 .auth-shell .auth-story h1{font-size:clamp(31px,3.1vw,48px)!important;margin-bottom:clamp(10px,2vh,18px)!important;}
 .auth-shell .auth-story .story-stats{margin:clamp(14px,3vh,25px) 0 clamp(10px,2vh,16px)!important;}
 .auth-shell .auth-panel{padding:clamp(14px,2.5vw,32px)!important;}
}
/* Narrow screens stack intentionally: allow natural scroll so links and every
   account form field are accessible instead of cropping them. */
@media (max-width:720px){
 .auth-shell{height:auto!important;min-height:100dvh!important;overflow:visible!important;}
 .auth-shell>main{flex:1 1 auto!important;height:auto!important;min-height:0!important;overflow:visible!important;}
 .auth-shell .auth-layout{height:auto!important;min-height:100dvh!important;grid-template-columns:minmax(0,1fr)!important;}
 .auth-shell .auth-story{height:auto!important;min-height:290px!important;padding:24px 22px!important;background-position:38% 42%!important;}
 .auth-shell .auth-story .crp-brand{margin-bottom:15px!important;gap:10px!important;}
 .auth-shell .auth-story .crp-brand .crp-brand-logo{width:48px;height:48px;}
 .auth-shell .auth-story .crp-brand .crp-brand-copy strong{font-size:23px!important;}
 .auth-shell .auth-story .crp-brand .crp-brand-copy small{font-size:10px!important;}
 .auth-shell .auth-story h1{font-size:clamp(28px,7.5vw,37px)!important;line-height:1.13!important;}
 .auth-shell .auth-story p{font-size:12px!important;line-height:1.45!important;margin-bottom:6px!important;}
 .auth-shell .auth-panel{height:auto!important;min-height:0!important;padding:20px 14px 26px!important;}
 .auth-shell .auth-card form{margin-top:20px!important;}
 .auth-shell .auth-card .auth-links{margin-top:15px!important;}
}
@media(max-width:390px){
 .auth-shell .auth-story{min-height:0!important;padding:19px 17px 22px!important;}
 .auth-shell .auth-story .crp-brand{margin-bottom:13px!important;}
 .auth-shell .auth-story h1{font-size:29px!important;}
 .auth-shell .auth-panel{padding:16px 10px 22px!important;}
}
