/* Background layers alone receive opacity; text/controls stay solid. */
.login-page{position:relative;isolation:isolate;min-height:100vh}
.login-page-background-v1034{position:fixed;inset:0;z-index:-1;pointer-events:none;background-image:var(--page-bg-image-v1034,none);background-position:var(--page-bg-position-v1034,center);background-size:var(--page-bg-fit-v1034,cover);background-repeat:var(--page-bg-repeat-v1034,no-repeat);opacity:var(--page-bg-opacity-v1034,.15)}
.welcome-edit-v1034{position:relative;isolation:isolate;overflow:hidden}
.welcome-edit-v1034::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:var(--welcome-bg-image-v1034,none);background-position:var(--welcome-bg-position-v1034,center);background-size:var(--welcome-bg-fit-v1034,cover);background-repeat:var(--welcome-bg-repeat-v1034,no-repeat);opacity:var(--welcome-bg-opacity-v1034,.2)}
.welcome-edit-v1034 .eyebrow{font-size:var(--welcome-label-size-v1034,12px);color:var(--welcome-label-color-v1034,var(--gold))}
.welcome-edit-v1034 h1{font-size:var(--welcome-heading-size-v1034,42px);color:var(--welcome-heading-color-v1034,#fff);overflow-wrap:anywhere}
.welcome-edit-v1034 p{font-size:var(--welcome-description-size-v1034,16px);color:var(--welcome-description-color-v1034,#c9d5ef);overflow-wrap:anywhere}
.welcome-edit-v1034 .art-bottom{font-size:var(--welcome-note-size-v1034,14px);color:var(--welcome-note-color-v1034,#d6e0f7);overflow-wrap:anywhere}
.student-login-box-v1034>.eyebrow{font-size:var(--login-label-size-v1034,12px);overflow-wrap:anywhere}
.student-login-box-v1034 h2{font-size:var(--login-heading-size-v1034,30px);overflow-wrap:anywhere}
.student-login-box-v1034 .login-description-v1034{font-size:var(--login-description-size-v1034,16px);overflow-wrap:anywhere}
.portal-footer[data-footer-v1034] .footer-line,.portal-footer[data-footer-v1034] .footer-credits,.portal-footer[data-footer-v1034] .developer-credit{font-size:var(--footer-text-size-v1034,16px)}
.portal-footer[data-footer-v1034] .footer-links{font-size:var(--footer-link-size-v1034,16px)}
.portal-footer[data-footer-v1034] .footer-links a{font-size:inherit}
.v1034-text-grid{display:grid;grid-template-columns:minmax(0,1fr) 120px;gap:18px;padding-bottom:8px;border-bottom:1px solid var(--line);margin-bottom:20px}
.v1034-placement-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.login-background-editor-v1034{border:1px solid var(--line);padding:20px;border-radius:10px;margin:0 0 22px;min-width:0}
.login-background-editor-v1034 legend{font-weight:700;font-size:15px;padding:0 8px}
.background-thumbnail-v1034{max-width:100%;height:95px;object-fit:contain;display:block;margin-bottom:16px;border:1px solid var(--line);border-radius:7px;background:#fff}
.login-background-editor-v1034 input[type=range]{padding:0;border:0;accent-color:var(--navy)}
@media(max-width:1100px){.welcome-edit-v1034 h1{font-size:calc(var(--welcome-heading-size-v1034,42px)*.857142857)}}
@media(max-width:720px){.welcome-edit-v1034{display:none!important}.student-login-box-v1034 h2{font-size:calc(var(--login-heading-size-v1034,30px)*.933333333)}.v1034-placement-grid{grid-template-columns:1fr}.v1034-text-grid{grid-template-columns:minmax(0,1fr) 95px}}

.student-login-box-v1034 h2,.student-login-box-v1034 .login-description-v1034,.welcome-edit-v1034 h1,.welcome-edit-v1034 p{white-space:pre-line}

/* Preserve form position and dimensions while keeping its text area opaque. */
.student-login-box-v1034{background:var(--body-bg,#f5f7fb);border-radius:12px;box-shadow:0 0 0 20px var(--body-bg,#f5f7fb)}
@media(max-width:720px){.student-login-box-v1034{box-shadow:0 12px 0 12px var(--body-bg,#f5f7fb)}}
