/* Shared public LMIS entrance. All pages using LMS.Master inherit this when signed out. */
html:has(body.lmis-public),body.lmis-public { min-width:0!important; height:auto; min-height:100%; }
body.lmis-public { margin:0; font-family:"Segoe UI",Arial,sans-serif; color:#203e55; background:radial-gradient(ellipse at 70% 35%,#073768,transparent 58%),linear-gradient(125deg,#01080e,#041223 78%,#091c30); }
.lmis-public #form1 { min-height:100vh; min-height:100svh; display:flex; flex-direction:column; }
.lmis-public #SiteMenu { display:none!important; }
.lmis-public .lmis-page-content { flex:1; display:flex; flex-direction:column; min-width:0; }
.public-masthead { width:calc(100% - 80px); max-width:1480px; margin:0 auto; padding:22px 0; display:flex; align-items:center; justify-content:space-between; gap:24px; border-bottom:1px solid #b2dfef24; }
.public-brand { display:block; flex:0 1 265px; }
.public-brand img { display:block; width:265px!important; max-width:100%; height:auto!important; object-fit:contain; border-radius:5px; }
.public-navigation { display:flex; flex-wrap:wrap; justify-content:flex-end; align-items:center; gap:26px; font-size:14px; font-weight:600; }
.public-navigation a { display:inline-flex; align-items:center; gap:10px; padding:12px 0; color:#dbe9f4; text-decoration:none; }
.public-navigation a:hover { color:#c4e54b; }
.public-navigation .public-login-link { color:#203107; background:#bbdd3c; padding:12px 21px; border:1px solid #aecf37; border-radius:26px; }
.public-navigation .public-login-link:hover { color:#172700; background:#cee966; }
.public-navigation a:focus-visible,.public-site-footer a:focus-visible { outline:3px solid #c4e54b; outline-offset:5px; }
.lmis-public #contentdiv { margin-top:0; }
.lmis-public .provider-check { margin:38px auto; }
.lmis-public .provider-check-choice input { accent-color:#2e6989; }
.lmis-public .provider-check-actions .provider-proceed,.lmis-public .lucidity-contact-card a.lucidity-contact-link { color:#203107; background:#bbdd3c; border-color:#a6c932; border-radius:10px; }
.lmis-public .provider-check-actions .provider-proceed:hover,.lmis-public .lucidity-contact-card a.lucidity-contact-link:hover { color:#172700; background:#cee966; border-color:#a6c932; }
.lmis-public .lucidity-contact { padding:45px 24px; }
.lmis-public .lucidity-contact-card { box-shadow:0 18px 55px #0004,0 0 0 6px #8bc2ee0b; border-color:#d4e7f1; }
.lmis-public .public-site-footer { position:static; width:calc(100% - 80px); max-width:1480px; height:auto; margin:40px auto 0; padding:18px 0; border-top:1px solid #b2dfef24; background:transparent; }
.lmis-public .public-site-footer>.row { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:20px; margin:0; }
.lmis-public .public-site-footer>.row:before,.lmis-public .public-site-footer>.row:after { display:none; }
.lmis-public .public-site-footer .col-lg-4 { float:none; flex:1; width:auto; min-width:160px; height:auto!important; padding:0!important; font-size:12px; }
.lmis-public .public-site-footer .col-lg-4:first-child { flex:1.2; }
.lmis-public .public-site-footer img { width:128px; height:auto!important; max-width:100%; padding:7px 10px; border-radius:7px!important; }
.lmis-public .public-site-footer .lmis-footer-slogan span { font-size:10px; }
.lmis-public .public-site-footer .lmis-footer-slogan strong { color:#bbdd3c; font-size:18px; }
.lmis-public .lmis-page-content>#SysFooter { margin-top:auto; }
.public-account-page { width:100%; padding:44px 24px; }
.public-account-card { width:100%; max-width:460px; margin:0 auto; padding:34px; border:1px solid #d5e6ef; border-radius:22px; background:#fcfeff; color:#25445a; box-shadow:0 20px 65px #0004,0 0 0 6px #8bc2ee0c; }
.public-account-card h1 { margin:12px 0 15px; color:#203e55; font-size:29px; line-height:1.25; font-weight:650; }
.public-account-card>p { color:#536e80; font-size:15px; line-height:1.65; margin-bottom:25px; }
.public-card-halo { width:48px; height:48px; display:flex; align-items:center; justify-content:center; border:2px solid #84bddb; border-radius:50%; color:#fff; background:radial-gradient(circle at 35% 25%,#266d9c,#0b355d); box-shadow:0 0 0 4px #e8f4fa; font-size:20px; margin-bottom:20px; }
.public-account-card .form-group { margin-bottom:22px; }
.public-account-card label { display:block; margin-bottom:9px; color:#334f60; font-size:14px; font-weight:600; }
.public-account-card .form-control { width:100%; height:50px; padding:12px 14px; border:1px solid #cbdce5; border-radius:10px; background:#f5f9fc; font-size:16px; color:#19394d; box-shadow:none; }
.public-account-card .form-control:focus { outline:0; border-color:#367fad; box-shadow:0 0 0 3px #60a1bf24; }
.public-account-card .has-error .form-control { border-color:#b43f65; background:#fff8fa; }
.public-account-submit { display:block; text-align:center; padding:14px 18px; border:1px solid #a6c932; border-radius:10px; background:#bbdd3c; color:#203107!important; font-size:16px; font-weight:700; text-decoration:none!important; }
.public-account-submit:hover { background:#cee966; }
.public-account-back { display:block; margin-top:22px; padding:10px; text-align:center; color:#244f70; font-size:16px; font-weight:600; text-decoration:underline; text-underline-offset:4px; }
.public-account-card a:focus-visible { outline:3px solid #1e6eaa; outline-offset:4px; }
.public-notice { width:calc(100% - 48px); max-width:760px; margin:45px auto; padding:40px; border:1px solid #d5e6ef; border-radius:22px; background:#fcfeff; box-shadow:0 20px 65px #0004; color:#25445a; }
.public-notice h1 { margin:12px 0 18px; font-size:32px; color:#203e55; font-weight:650; }
.public-notice p { font-size:17px; line-height:1.7; }
.public-notice .public-account-submit { max-width:250px; margin:25px auto 0; }
.public-notice .public-card-halo { margin:0 auto 22px; }
.lmis-public .jumbotron { max-width:900px; margin:42px auto; border-radius:20px; background:#fcfeff; color:#294759; }
.lmis-public .ErrorModalPopUpPanel { width:min(460px,calc(100vw - 32px))!important; min-width:0!important; max-height:calc(100vh - 50px); overflow:auto; border-radius:16px; }
@media(max-width:800px) { .public-masthead { width:calc(100% - 40px); padding:20px 0; flex-wrap:wrap; gap:15px; } .public-brand { flex-basis:200px; } .public-navigation { gap:20px; font-size:13px; } .public-navigation .public-explore { display:none; } .lmis-public .public-site-footer { width:calc(100% - 40px); } .lmis-public .public-site-footer .col-lg-4 { flex:auto; } .public-account-page { padding:32px 22px; } .public-account-card { padding:28px; } .public-account-card h1 { font-size:27px; } .public-notice { padding:30px 24px; } }

/* Registration request: the same entrance card, with room for contact details. */
.public-registration-card { max-width:680px; padding:34px 38px 26px; }
.public-registration-heading { display:flex; align-items:center; gap:20px; margin-bottom:18px; }
.public-registration-heading .public-card-halo { flex-shrink:0; width:54px; height:54px; margin:0; }
.public-registration-heading h1 { font-size:28px; margin:7px 0 0; }
.public-registration-eyebrow { margin:0; color:#386884; font-size:11px; font-weight:700; letter-spacing:1.7px; }
.public-registration-card>p { margin-bottom:20px; }
.public-registration-card .public-registration-required { font-size:13px; margin-bottom:18px; }
.public-registration-required>span,.public-required-mark { color:#a52851; font-weight:700; }
.public-registration-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); column-gap:22px; }
.public-registration-grid .form-group { position:relative; min-width:0; margin-bottom:20px; }
.public-registration-grid .form-group:first-child { grid-column:1 / -1; }
.public-registration-grid label { font-size:15px; }
.public-registration-grid .public-optional { font-size:12px; font-weight:400; color:#526b7d; }
.public-registration-grid .input-capture-feedback { position:absolute; top:45px; right:14px; left:auto; width:auto; height:auto; margin:0; pointer-events:none; }
.public-registration-grid .has-feedback .form-control { padding-right:34px; }
.public-registration-actions { margin-top:4px; padding-top:22px; border-top:1px solid #e0eaf0; }
.public-registration-actions .public-account-submit { display:flex; align-items:center; justify-content:center; gap:14px; min-height:52px; }
.public-registration-actions .public-account-back { margin-top:12px; min-height:44px; }
@media(max-width:600px) {
    .public-registration-card { padding:28px 22px 22px; }
    .public-registration-heading { align-items:flex-start; gap:16px; }
    .public-registration-heading h1 { font-size:25px; }
    .public-registration-heading .public-card-halo { width:44px; height:44px; font-size:18px; }
    .public-registration-eyebrow { font-size:10px; letter-spacing:1.1px; }
    .public-registration-grid { grid-template-columns:minmax(0,1fr); }
    .public-registration-grid .form-group:first-child { grid-column:auto; }
}