.auth-page{place-items:center;min-height:100vh;padding:48px 20px;display:grid}.auth-card{background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-card);width:100%;max-width:480px;box-shadow:0 16px 50px color-mix(in srgb, var(--palette-ink) 3.1%, transparent);padding:36px}.auth-brand{width:max-content;margin-bottom:30px;display:block}.auth-card h1{letter-spacing:-.035em;overflow-wrap:anywhere;margin:12px 0 16px;font-size:30px;font-weight:600;line-height:1.2}.auth-intro{color:var(--text-secondary);font-size:15px;line-height:1.7}.auth-form{gap:20px;margin-top:28px;display:grid}.auth-field{gap:8px;display:grid}.auth-field label{font-size:14px;font-weight:600}.auth-field .auth-label-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.auth-access-page{background:var(--palette-cream);min-height:100svh}.auth-access-page .auth-card{background:var(--palette-mist);border-radius:24px;max-width:520px;padding:40px;box-shadow:0 16px 50px #061e290a}.auth-access-page .auth-brand{margin-bottom:32px}.auth-access-page h1{margin:0 0 20px;font-size:36px}.auth-access-page .auth-field input{border-color:color-mix(in srgb, var(--palette-blue) 65%, var(--palette-mist));background:var(--palette-mist);min-height:56px;padding:16px}.auth-access-page .auth-field input::placeholder{color:var(--palette-blue);opacity:1}.auth-access-page .auth-submit{border-radius:999px;min-height:56px;font-size:16px}.auth-access-page .auth-login-links{justify-content:center;margin-top:16px;font-size:14px}.auth-login-links a{min-height:44px;color:var(--palette-blue);align-items:center;text-decoration:none;display:inline-flex}.auth-enrollment{border-top:2px solid color-mix(in srgb, var(--palette-blue) 19%, var(--palette-mist));text-align:center;margin-top:24px;padding-top:28px}.auth-enrollment h2{margin-bottom:10px;font-size:20px;line-height:1.4}.auth-enrollment p{color:var(--palette-blue);font-size:15px;line-height:1.7}.auth-enrollment a{text-underline-offset:4px;font-weight:600;text-decoration:underline}.auth-access-page a:focus-visible{outline-color:var(--palette-blue)}.auth-field input{background:var(--surface-card);width:100%;min-height:48px;color:var(--text-primary);border:1px solid var(--palette-teal-mist-24);border-radius:var(--radius-control);font:inherit;padding:12px}.auth-field input:focus{outline:2px solid var(--palette-blue);outline-offset:-2px}.auth-field input:disabled{background:var(--surface-canvas)}.auth-password-field{position:relative}.auth-field .auth-password-field input,.auth-access-page .auth-field .auth-password-field input{padding-inline-end:54px}.auth-password-field input::-ms-reveal{display:none}.auth-password-toggle{inset-inline-end:4px;width:44px;height:44px;color:var(--palette-blue);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:50%;translate:0 -50%}.auth-password-toggle:hover:not(:disabled){background:color-mix(in srgb, currentColor 9%, transparent)}.auth-password-toggle:focus-visible{outline-offset:-2px;outline:2px solid}.auth-password-toggle:disabled{opacity:.5;cursor:default}.auth-hint{color:var(--text-secondary);font-size:12px;line-height:1.6}.auth-status{overflow-wrap:anywhere;font-size:14px;line-height:1.7}.auth-status:empty{display:none}.auth-status:focus{outline-offset:5px;outline:2px solid}.auth-error{color:var(--palette-blue-teal-10)}.auth-status a{text-underline-offset:3px;text-decoration:underline}.auth-submit{cursor:pointer;width:100%}.auth-submit:disabled,.campus-logout:disabled{opacity:.65;cursor:wait}.auth-links{flex-wrap:wrap;justify-content:space-between;gap:12px 20px;margin-top:28px;font-size:13px;line-height:1.6;display:flex}.auth-links a,.campus-account a{text-underline-offset:4px;text-decoration:underline}.auth-notice{background:var(--surface-canvas);border:1px solid var(--border-subtle);border-radius:var(--radius-control);margin-top:26px;padding:20px}.auth-notice h2{margin-bottom:10px;font-size:16px}.auth-notice p{color:var(--text-secondary);font-size:14px;line-height:1.7}.auth-app-open{border-radius:var(--radius-control);background:var(--brand-navy);justify-content:center;align-items:center;min-height:44px;padding:10px 16px;font-weight:700;text-decoration:none;display:inline-flex}.auth-notice .auth-app-open{color:var(--surface-card)}.auth-app-open:focus-visible{outline:3px solid var(--brand-gold);outline-offset:3px}.campus-account{overflow-wrap:anywhere;gap:14px;margin-top:auto;padding:16px 12px;font-size:13px;display:grid}.campus-logout{text-align:left;border:1px solid var(--border-subtle);background:var(--surface-card);min-height:44px;color:var(--text-primary);border-radius:var(--radius-control);cursor:pointer;font:inherit;padding:10px 12px}.campus-dark .auth-error{color:var(--palette-teal-mist-50)}.private-campus .campus-header{flex-wrap:wrap}.private-campus .campus-header>span{overflow-wrap:anywhere;min-width:0}.access-spaces{gap:14px;margin-top:24px;display:grid}.access-space{border:1px solid var(--border-subtle);border-radius:var(--radius-control);gap:6px;padding:18px;font-size:14px;display:grid}.access-space:hover{background:var(--surface-canvas)}.access-space strong{overflow-wrap:anywhere}.access-space span{color:var(--text-secondary);font-size:13px;line-height:1.6}@media (width<=560px){.auth-page{padding:24px 16px}.auth-card{padding:26px}.auth-card h1{font-size:27px}.auth-access-page .auth-card{border-radius:20px;padding:28px 24px}}
