/* Direct login: compact brand row and form, without welcome artwork. */
html:has(body.pi-auth.nova-auth){background:#f6f4fa!important}
body.pi-auth.nova-auth{background:#f6f4fa!important;position:relative}
body.pi-auth.nova-auth:before{content:'';position:absolute;inset:0 0 auto;height:174px;background:linear-gradient(115deg,#251d36,#322343);z-index:0}
body.pi-auth.nova-auth .pl-page{position:relative;z-index:1;min-height:100dvh!important;padding:70px 22px 30px!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;background:transparent!important}
body.pi-auth.nova-auth .pl-shell{width:100%!important;max-width:440px!important;min-height:0!important;display:block!important;background:transparent!important;margin:0 auto!important;border-radius:0!important}
body.pi-auth.nova-auth .pl-card{background:#fff!important;border:1px solid #dbd3e7!important;border-radius:17px!important;padding:28px!important;box-shadow:0 12px 32px #2e1c4912!important}
.dl-brand{display:flex;gap:12px;align-items:center;padding-bottom:22px;margin-bottom:22px;border-bottom:1px solid #ece6f3}
.dl-brand img{width:40px;height:40px;border-radius:12px;object-fit:contain;flex-shrink:0}
.dl-brand span{font-size:20px;line-height:1.25;letter-spacing:-.4px;font-weight:750;color:#2d203d}
.dl-title{margin:0 0 22px}
.dl-title h1{font-size:23px;line-height:1.25;font-weight:700;letter-spacing:-.4px;color:#372747;margin:0}
body.pi-auth.nova-auth .pl-fg,body.pi-auth.nova-auth .pl-field{margin-bottom:21px!important}
body.pi-auth.nova-auth .pl-fg label,body.pi-auth.nova-auth .pl-field label{font-size:14px!important;font-weight:600!important;color:#493654!important;margin-bottom:8px!important;line-height:1.4!important}
body.pi-auth.nova-auth .pl-input{height:54px!important;border:1px solid #d8cfe5!important;background:#fbfafd!important;border-radius:10px!important;font-size:16px!important;padding:0 44px!important;color:#30203e!important}
body.pi-auth.nova-auth .pl-input::placeholder{font-size:15px!important;font-weight:400!important;color:#9989a5!important}
body.pi-auth.nova-auth .pl-input:focus{background:#fff!important;border-color:#987bce!important;outline:0!important;box-shadow:0 0 0 3px #7652d20d!important}
body.pi-auth.nova-auth .pl-eye{height:54px!important;color:#8b759e!important}
body.pi-auth.nova-auth .pl-field-icon{color:#93809f!important;font-size:16px!important}
body.pi-auth.nova-auth .btn-submit{height:52px!important;border-radius:10px!important;background:#7551dc!important;box-shadow:0 3px 9px #7651d81b!important;font-weight:650!important;font-size:16px!important;margin:26px 0 0!important}
body.pi-auth.nova-auth .pl-foot{background:transparent!important;border:0!important;padding:0 4px!important;margin:22px 0 0!important;gap:7px 16px!important;justify-content:center!important;line-height:1.6!important}
body.pi-auth.nova-auth .pl-foot span,body.pi-auth.nova-auth .pl-foot a{background:transparent!important;font-size:11px!important;color:#8b7b96!important;white-space:normal!important}
body.pi-auth.nova-auth .pl-foot a{color:#7752b9!important}
@media(max-width:575px){body.pi-auth.nova-auth .pl-page{padding:64px 18px 28px!important}body.pi-auth.nova-auth .pl-card{padding:26px 23px 24px!important}.dl-brand{padding-bottom:20px;margin-bottom:20px;gap:11px}.dl-brand img{width:37px;height:37px;border-radius:10px}.dl-brand span{font-size:19px}.dl-title{margin-bottom:22px}.dl-title h1{font-size:22px}}
@media(max-width:359px){body.pi-auth.nova-auth .pl-page{padding:48px 12px 24px!important}body.pi-auth.nova-auth .pl-card{padding:24px 19px 22px!important}.dl-brand span{font-size:17px}.dl-brand img{width:34px;height:34px}.dl-title h1{font-size:21px}}

/* Balance the form and copyright on tall screens instead of anchoring them at the top. */
body.pi-auth.nova-auth:before{height:clamp(150px,30dvh,280px)!important}
body.pi-auth.nova-auth .pl-page{justify-content:center!important;padding:26px 22px!important;min-height:100svh!important;min-height:100dvh!important}
@media(max-width:575px){body.pi-auth.nova-auth .pl-page{padding:24px 18px!important;justify-content:center!important}}
@media(max-width:359px){body.pi-auth.nova-auth .pl-page{padding:20px 12px!important}}

/* Mobile: use the visible viewport and keep the form's bottom spacing compact. */
@media (max-width:767px){
    html:has(body.pi-auth.nova-auth){min-height:0!important}
    body.pi-auth.nova-auth{min-height:100svh;min-height:100dvh}
    body.pi-auth.nova-auth .pl-page{padding:18px 16px!important;box-sizing:border-box}
    body.pi-auth.nova-auth .pl-card{padding:22px 20px 20px!important}
    body.pi-auth.nova-auth .dl-brand{padding-bottom:16px;margin-bottom:16px}
    body.pi-auth.nova-auth .dl-title{margin-bottom:18px}
    body.pi-auth.nova-auth .pl-fg{margin-bottom:18px!important}
    body.pi-auth.nova-auth form > .pl-fg:last-child{margin-bottom:0!important}
    body.pi-auth.nova-auth .btn-submit{margin-top:20px!important}
    body.pi-auth.nova-auth .pl-foot{margin-top:14px!important;gap:4px 12px!important}
}
@media (max-width:767px) and (max-height:600px){
    body.pi-auth.nova-auth .pl-page{padding-top:12px!important;padding-bottom:12px!important}
    body.pi-auth.nova-auth .pl-card{padding:18px 18px 16px!important}
    body.pi-auth.nova-auth .dl-brand{padding-bottom:12px;margin-bottom:12px}
    body.pi-auth.nova-auth .dl-title{margin-bottom:14px}
    body.pi-auth.nova-auth .pl-fg{margin-bottom:14px!important}
    body.pi-auth.nova-auth .btn-submit{margin-top:16px!important}
    body.pi-auth.nova-auth .pl-foot{margin-top:10px!important}
}

/* Admin-managed shared accents and workspace background also reach the login. */
body.pi-auth.nova-auth.pi-admin-palette[data-admin-colour]{background:var(--pc-page)!important}
body.pi-auth.nova-auth.pi-admin-palette[data-workspace-colour]:before{background:var(--wc-bg)!important}
body.pi-auth.nova-auth.pi-admin-palette[data-admin-colour] .pl-card{border-color:var(--pc-line)!important;box-shadow:0 12px 32px rgba(var(--pc-rgb),.09)!important}
body.pi-auth.nova-auth.pi-admin-palette[data-admin-colour] :is(.dl-title h1,.dl-brand span){color:var(--pc-ink)!important}
body.pi-auth.nova-auth.pi-admin-palette[data-admin-colour] .dl-brand{border-bottom-color:var(--pc-line)}
body.pi-auth.nova-auth.pi-admin-palette[data-admin-colour] .pl-input{border-color:var(--pc-line)!important;background:var(--pc-page)!important}
body.pi-auth.nova-auth.pi-admin-palette[data-admin-colour] .pl-input:focus{border-color:var(--pc-main)!important;outline:0!important;box-shadow:0 0 0 3px rgba(var(--pc-rgb),.13)!important}
body.pi-auth.nova-auth.pi-admin-palette[data-admin-colour] :is(.pl-field-icon,.pl-eye,.pl-foot a){color:var(--pc-main)!important}
body.pi-auth.nova-auth.pi-admin-palette[data-admin-colour] .btn-submit{background:var(--pc-main)!important;box-shadow:0 3px 9px rgba(var(--pc-rgb),.14)!important}
