/* Scoped to the published panel's login / denied screen. */
body.vccl-access-page{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh}
.vccl-access-page .vccl-site-header,.vccl-access-page .vccl-site-footer{flex:none}
.vccl-access-page .vccl-content{flex:1;display:flex;align-items:center;justify-content:center;min-height:0;padding:64px 24px 88px}
.vccl-access-card{width:100%;max-width:620px;margin:0 auto;padding:44px 46px 30px;background:#fff;border:1px solid #dbe3ee;border-radius:14px;box-shadow:0 5px 22px rgba(23,46,77,.045);text-align:center}
.vccl-access-icon{display:flex;align-items:center;justify-content:center;width:60px;height:60px;margin:0 auto 22px;border:1px solid #deebf6;border-radius:14px;background:#f1f7fc;color:#0761a9}
.vccl-access-card h1{margin:0 0 16px;padding:0;color:#172e4d;font:600 30px/1.2 Barlow,system-ui,sans-serif;letter-spacing:-.4px;text-transform:none}
.vccl-access-card p{padding:0;font-family:inherit;line-height:1.5;letter-spacing:normal}
.vccl-access-lead{margin:0 0 7px;color:#334b67;font-size:17px;font-weight:500}
.vccl-access-help{margin:0 0 28px;color:#53657a;font-size:16px}
.vccl-access-card .vccl-access-button{display:flex;align-items:center;justify-content:center;gap:16px;width:100%;min-height:50px;margin:0;padding:12px 20px;border:1px solid #0761a9;border-radius:7px;background:#0761a9;color:#fff;font:600 17px/1.4 Barlow,system-ui,sans-serif;text-decoration:none;transition:background .15s}
.vccl-access-card .vccl-access-button:hover{background:#054c86;border-color:#054c86;color:#fff}
.vccl-access-button span{font-size:22px;line-height:1}
.vccl-access-student{margin-top:26px;padding-top:23px;border-top:1px solid #e6ebf1}
.vccl-access-student a{display:inline-block;padding:5px 0;color:#0761a9;font-size:15px;font-weight:500;line-height:1.5;text-decoration:none}
.vccl-access-student a:hover{text-decoration:underline}
.vccl-access-card a:focus-visible{outline:3px solid #0761a9;outline-offset:4px}
.vccl-access-page .vccl-site-footer{background:#f5f7fa}
@media(max-width:600px){.vccl-access-page .vccl-content{padding:36px 16px}.vccl-access-card{padding:30px 22px 22px}.vccl-access-card h1{font-size:26px}.vccl-access-lead{font-size:16px}.vccl-access-help{font-size:15px}.vccl-access-student a{font-size:14px}.vccl-access-page .vccl-site-footer small{margin-left:auto}}
@media(prefers-reduced-motion:reduce){.vccl-access-card .vccl-access-button{transition:none}}

/* Match the existing LRM modal to the correction panel's access screen. */
body.vccl-access-page .lrm-user-modal{display:flex;align-items:center;align-items:safe center;justify-content:center;padding:24px 16px;background:rgba(18,35,55,.64);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
body.vccl-access-page .lrm-user-modal-container{flex:none;width:100%;max-width:440px;margin:auto;padding:0;border:1px solid #dbe3ee;border-radius:16px;background:#fff;box-shadow:0 24px 72px rgba(8,26,47,.24);text-align:left}
body.vccl-access-page .lrm-user-modal-container-inner{border-radius:15px;background:#fff;overflow:hidden}
body.vccl-access-page .lrm-user-modal .lrm-switcher{border-bottom:1px solid #e2eaf2}
body.vccl-access-page .lrm-user-modal .lrm-switcher.-is-login-only a{display:flex;align-items:center;justify-content:flex-start;gap:10px;height:auto;min-height:76px;padding:22px 72px 22px 28px;border-radius:15px 15px 0 0;background:#f2f7fc;color:#172e4d;font-family:inherit;font-size:22px;font-weight:600;line-height:1.35;text-align:left;text-decoration:none}
body.vccl-access-page .lrm-user-modal .lrm-switcher.-is-login-only a:before{flex:none;margin:0;color:#0761a9}
body.vccl-access-page .lrm-user-modal .lrm-form{padding:26px 28px 0!important;margin:0}
body.vccl-access-page .lrm-user-modal .lrm-fieldset-wrap{padding:0!important}
body.vccl-access-page .lrm-user-modal .lrm-form .fieldset{margin:0 0 18px;padding:0!important}
body.vccl-access-page .lrm-user-modal .lrm-form .fieldset--submit{margin:4px 0 0;padding:0}
body.vccl-access-page .lrm-user-modal .lrm-form input.has-border{width:100%;height:52px;margin:0;padding:12px 46px 12px 48px;border:1px solid #cad6e2;border-radius:8px;background:#fff;color:#172e4d;font:400 16px/1.5 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;box-shadow:none;transition:border-color .15s,box-shadow .15s}
body.vccl-access-page .lrm-user-modal .lrm-form input.has-border::placeholder{color:#66788c;opacity:1}
body.vccl-access-page .lrm-user-modal .lrm-form input.has-border:focus{border-color:#0761a9;outline:0;box-shadow:0 0 0 3px rgba(7,97,169,.14)}
body.vccl-access-page .lrm-user-modal .lrm-form label.image-replace{left:16px;top:26px;width:20px;height:20px;color:#607187}
body.vccl-access-page .lrm-user-modal .lrm-form .hide-password{display:flex;align-items:center;justify-content:center;top:4px;right:4px;bottom:auto;left:auto;width:44px;height:44px;margin:0;padding:0;border:0;border-radius:6px;color:#53657a;transform:none;cursor:pointer}
body.vccl-access-page .lrm-user-modal .lrm-form .hide-password:hover{background:#f0f5fa;color:#0761a9}
body.vccl-access-page .lrm-user-modal .lrm-remember-me-checkbox{margin:0;padding-top:3px;padding-bottom:3px;color:#334b67;font:400 14px/22px Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer}
body.vccl-access-page .lrm-user-modal .lrm-nice-checkbox__indicator{top:5px;border-radius:4px}
body.vccl-access-page .lrm-user-modal .lrm-nice-checkbox:checked~.lrm-nice-checkbox__indicator{border-color:#0761a9;background:#0761a9}
body.vccl-access-page .lrm-user-modal .lrm-nice-checkbox:focus-visible~.lrm-nice-checkbox__indicator{outline:3px solid rgba(7,97,169,.35);outline-offset:3px}
body.vccl-access-page .lrm-user-modal .lrm-form button[type=submit]{display:block;width:100%;min-height:50px;margin:0;padding:12px 20px;border:1px solid #0761a9;border-radius:8px;background:#0761a9;color:#fff;font:600 16px/1.5 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;text-transform:none;letter-spacing:normal;box-shadow:none;transition:background .15s}
body.vccl-access-page .lrm-user-modal .lrm-form button[type=submit]:hover{border-color:#054c86;background:#054c86;color:#fff}
body.vccl-access-page .lrm-user-modal .lrm-form button[type=submit]:disabled{opacity:.65;cursor:wait}
body.vccl-access-page .lrm-user-modal p.lrm-form-bottom-message{position:static;width:auto;margin:0!important;padding:18px 28px 26px;font-size:14px;line-height:1.5;text-align:center}
body.vccl-access-page .lrm-user-modal p.lrm-form-bottom-message a{display:inline-block;padding:4px;color:#0761a9;font-weight:500;text-decoration:none}
body.vccl-access-page .lrm-user-modal p.lrm-form-bottom-message a:hover{text-decoration:underline}
body.vccl-access-page .lrm-user-modal .lrm-close-form{top:16px;right:14px;width:44px;height:44px;border-radius:8px;background:none;color:#53657a;text-indent:0}
body.vccl-access-page .lrm-user-modal .lrm-close-form span{display:none}
body.vccl-access-page .lrm-user-modal .lrm-close-form:before,body.vccl-access-page .lrm-user-modal .lrm-close-form:after{content:"";position:absolute;top:21px;left:13px;width:18px;height:2px;border-radius:1px;background:currentColor;transform:rotate(45deg)}
body.vccl-access-page .lrm-user-modal .lrm-close-form:after{transform:rotate(-45deg)}
body.vccl-access-page .lrm-user-modal .lrm-close-form:hover{background-color:#e4edf6;color:#0761a9}
body.vccl-access-page .lrm-user-modal a:focus-visible,body.vccl-access-page .lrm-user-modal button:focus-visible{outline:3px solid #0761a9;outline-offset:3px}
body.vccl-access-page .lrm-user-modal .lrm-form-message{margin:0 0 20px;padding:0;border:0;color:#53657a;font-size:14px;line-height:1.6;overflow-wrap:anywhere}
body.vccl-access-page .lrm-user-modal .lrm-form-message.lrm-is-error{padding:10px 12px;border:1px solid #efc8c8;border-radius:7px;background:#fff5f5;color:#9b2d30}
body.vccl-access-page .lrm-user-modal .lrm-form-message.lrm-is-success{padding:10px 12px;border:1px solid #c5dfcf;border-radius:7px;background:#f0faf4;color:#20663b}
body.vccl-access-page .lrm-user-modal .lrm-form .lrm-error-message{position:relative;left:auto;bottom:auto;display:none;width:100%;margin:6px 0 0;padding:0;background:transparent;color:#a02c31;font-size:13px;line-height:1.45;overflow-wrap:anywhere}
body.vccl-access-page .lrm-user-modal .lrm-form .lrm-error-message.is-visible{display:block;visibility:visible;opacity:1}
body.vccl-access-page .lrm-user-modal .lrm-form .lrm-error-message:after{display:none}
body.vccl-access-page .lrm-user-modal .lrm-form input.has-error{border-color:#c75053}
@media(max-width:480px){body.vccl-access-page .lrm-user-modal{padding:16px 12px}body.vccl-access-page .lrm-user-modal .lrm-switcher.-is-login-only a{min-height:72px;padding:20px 64px 20px 22px;font-size:21px}body.vccl-access-page .lrm-user-modal .lrm-form{padding:22px 22px 0!important}body.vccl-access-page .lrm-user-modal p.lrm-form-bottom-message{padding:16px 22px 22px}body.vccl-access-page .lrm-user-modal .lrm-close-form{top:14px;right:10px}}
@media(prefers-reduced-motion:reduce){body.vccl-access-page .lrm-user-modal input.has-border,body.vccl-access-page .lrm-user-modal button[type=submit]{transition:none}}
