.login-page-body{height:100vh;height:100dvh;min-height:0;margin:0;overflow:hidden}
.login-page-body .app-shell,.login-page-body .main-area,.login-page-body .auth-content{height:100%;min-height:0}
.login-page-body .auth-content{position:relative}
.login-page-body .auth-content>.alert{position:fixed;z-index:20;top:max(12px,env(safe-area-inset-top));left:50%;width:min(900px,calc(100% - 28px));transform:translateX(-50%);margin:0}
.login-layout{height:100%;min-height:0;overflow:hidden}
.login-art,.login-card{min-height:0;box-sizing:border-box}
.login-card{min-width:0;overflow:hidden;padding-block:max(62px,7dvh) max(24px,4dvh)}
.login-card>div:not(.login-brand),.login-card>form,.login-card>.auth-divider,.login-card>.google-login-button,.login-card>.secure-note{width:min(100%,520px);margin-inline:auto}
.login-card .stack input,.login-card .primary-button,.google-login-button{min-height:48px;font-size:1rem}
.login-field{display:grid;gap:8px}
.google-login-button{gap:12px;outline-offset:3px}
.google-login-button:focus-visible{outline:3px solid #8bb9ff}
.login-acervo-owner{display:flex;align-items:center;gap:10px;margin:clamp(16px,2.5dvh,28px) 0 0;color:var(--gold);font-size:clamp(.68rem,.8vw,.78rem);font-weight:700;letter-spacing:.14em;line-height:1.3;text-transform:uppercase}.login-acervo-owner i{display:block;width:22px;height:2px;flex:0 0 22px;border-radius:2px;background:var(--gold)}.login-acervo-owner-mobile{display:none}
.google-icon{display:block;flex:0 0 22px;width:22px;height:22px}
@media (min-width:761px) and (max-width:1400px){.login-layout{grid-template-columns:minmax(0,45%) minmax(0,55%)}.login-art{padding:clamp(28px,5vw,72px)}.login-art h1{font-size:clamp(34px,4.2vw,58px)}.hero-note{left:42%;font-size:clamp(110px,17vw,220px)}.login-card{padding-inline:clamp(40px,7vw,96px)}.login-brand{top:clamp(20px,4dvh,40px)}}
@media (min-width:761px) and (max-height:700px){.login-card{padding-top:64px;padding-bottom:18px}.login-brand{top:14px}.login-card h2{font-size:clamp(24px,3vw,32px);margin-bottom:6px}.login-card p{margin-bottom:6px}.stack{gap:9px;margin-top:9px}.auth-divider{margin-block:10px}.secure-note{margin-top:9px}.login-art{padding-block:28px}.login-art .wave{margin-bottom:4px}.login-art .login-acervo-owner{margin-top:10px;font-size:.66rem}}
@media (min-width:761px) and (orientation:portrait){.login-layout{grid-template-columns:1fr;grid-template-rows:minmax(150px,24dvh) minmax(0,1fr)}.login-art{display:flex;padding:22px 8vw;justify-content:flex-end}.login-art .wave,.login-art .sound-orbit,.login-art>p{display:none}.login-art>.login-acervo-owner{display:flex;margin-top:9px}.login-art h1{font-size:clamp(28px,4.7vw,43px)}.hero-note{top:-20px;left:auto;right:9%;font-size:140px}.login-card{padding:68px max(7vw,42px) max(22px,env(safe-area-inset-bottom));justify-content:center}.login-brand{top:18px}}
@media (max-width:760px){.login-art{display:none}.login-card{height:100%;min-height:0;padding:76px max(22px,6vw) max(18px,env(safe-area-inset-bottom));justify-content:center}.login-brand{top:max(16px,env(safe-area-inset-top))}.login-card h2{font-size:clamp(24px,8vw,32px);margin-bottom:7px}.login-card p{font-size:.92rem;margin-bottom:8px}.login-card .login-acervo-owner-mobile{display:flex;width:100%;margin:0 0 9px;font-size:.65rem}.stack{gap:11px;margin-top:11px}.secure-note{margin-top:11px}.auth-divider{margin-block:11px}}
@media (max-width:900px) and (orientation:landscape) and (max-height:520px){.login-layout{display:block}.login-art{display:none}.login-card{display:grid;width:100%;height:100%;grid-template-columns:minmax(190px,.8fr) minmax(300px,1.2fr);grid-template-rows:auto 1fr auto;align-items:center;column-gap:24px;row-gap:8px;padding:max(12px,env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left));justify-content:initial}.login-brand{position:static;grid-column:1;grid-row:1;padding:0;transform:scale(.88);transform-origin:left center}.login-card>div:not(.login-brand){grid-column:1;grid-row:2;align-self:center}.login-card h2{font-size:clamp(20px,4vw,26px)}.login-card>div:not(.login-brand)>p{margin:0}.login-card .stack{grid-column:2;grid-row:1/4;margin:0;gap:7px}.login-card .stack label{gap:4px}.login-card .stack input{height:48px}.login-card>.auth-divider{grid-column:1;grid-row:3;margin:0}.login-card>.google-login-button{grid-column:1;grid-row:4}.login-card>.secure-note{display:none}}
@media (max-width:560px) and (orientation:landscape) and (max-height:430px){.login-card{grid-template-columns:minmax(155px,.75fr) minmax(260px,1.25fr);column-gap:14px}.login-card>div:not(.login-brand)>p{display:none}.login-card .stack input,.login-card .primary-button,.google-login-button{min-height:46px}.login-card .stack{gap:5px}.login-card .eyebrow{margin-bottom:4px}}
@media (max-width:380px){.login-card{padding-inline:18px}.login-brand{transform:scale(.9);transform-origin:left center}.login-card h2{font-size:23px}}
@media (max-height:650px) and (max-width:600px) and (orientation:portrait){.login-page-body:has(input:focus){overflow-y:auto}.login-page-body:has(input:focus) .app-shell,.login-page-body:has(input:focus) .main-area,.login-page-body:has(input:focus) .auth-content,.login-page-body:has(input:focus) .login-layout{height:auto;min-height:620px}.login-page-body:has(input:focus) .login-card{overflow:visible}}
