/* Holiday City South's login/register/reset layout in Sonata Bay colors. */
.hcs-login-intro { max-width:1100px; margin:24px auto 40px; text-align:center; }
.hcs-login-intro-title { color:#033e4f; text-align:center; margin:10px 0 32px; }
.hcs-login-intro-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px; align-items:stretch; }
.hcs-login-intro-panel, .hcsha-panel, .hcs-resident-login {
    box-sizing:border-box; padding:30px 28px; background:#ffffff;
    border:2px solid #0c9daa; border-radius:12px; color:#033e4f;
    box-shadow:0 5px 15px rgba(3,62,79,.12);
}
.hcs-login-intro-panel h2 { color:#033e4f; margin:0 0 20px; text-align:center; }
.hcs-login-intro-grid > section { min-width:0; }
.hcsha-right-column { display:flex; flex-direction:column; gap:24px; min-width:0; }
.hcsha-right-column .hcs-login-intro-panel { width:100%; flex:1; }
.hcs-login-intro-panel label, .hcsha-panel label { display:block; text-align:left; font-weight:700; }
.hcs-login-intro-panel input, .hcsha-panel input, .hcsha-panel textarea {
    box-sizing:border-box; width:100%; max-width:100%; min-height:44px;
    padding:11px 12px; border:1px solid #0c9daa; border-radius:7px;
    background:#ffffff; color:#033e4f; font:inherit;
}
.hcs-resident-button, .hcsha-panel button {
    display:inline-block; box-sizing:border-box; min-height:44px; padding:11px 20px;
    border:0; border-radius:7px; background:#8edfe7 !important; color:#033e4f !important;
    text-decoration:none; font:inherit; font-weight:700; cursor:pointer;
}
.hcs-resident-button:hover, .hcsha-panel button:hover { background:#d1f7fa !important; }
.hcs-login-intro a:focus-visible, .hcs-login-intro button:focus-visible,
.hcsha-panel a:focus-visible, .hcsha-panel button:focus-visible,
.hcs-login-intro input:focus-visible, .hcsha-panel input:focus-visible, .hcsha-panel textarea:focus-visible {
    outline:3px solid #033e4f; outline-offset:3px;
}
.hcs-resident-login { max-width:760px; margin:30px auto; text-align:center; }
.hcsha-panel { max-width:760px; margin:30px auto; }
.hcsha-panel h2 { margin-top:0; }
.hcsha-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.hcsha-error, .hcsha-success { padding:12px 15px; border-radius:7px; margin:14px 0; }
.hcsha-error { background:#fbeaea; border-left:5px solid #b32d2e; color:#8a2020; font-weight:700; }
.hcsha-success { background:#eef8ee; border-left:5px solid #218739; }
.hcsha-page-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; }
.hcsha-page-card { padding:22px; background:#ffffff; border:2px solid #0c9daa; border-radius:12px; text-align:center; }
@media (max-width:720px) {
    .hcsha-fields, .hcsha-page-grid { grid-template-columns:minmax(0,1fr); gap:22px; }
    .hcs-login-intro-panel, .hcsha-panel, .hcs-resident-login { padding:22px 18px; }
    .hcsha-right-column { width:100%; }
}
@media (max-width:600px) {
    .hcs-login-intro-grid { grid-template-columns:minmax(0,1fr); gap:22px; }
}

/* Signed-in account actions use clickable Media Library artwork. */
.hcsha-signed-in-images { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:24px; margin:20px 0; }
.hcsha-signed-in-images a.hcsha-image-link { display:block; flex:0 1 360px; width:360px; max-width:100%; padding:0 !important; background:transparent !important; border:0 !important; box-shadow:none !important; }
.hcsha-signed-in-images img.hcsha-action-art { display:block; width:100%; height:auto; max-width:100%; border:0; }
.hcsha-signed-in-images a.hcsha-image-link:focus-visible { outline:3px solid #033e4f; outline-offset:6px; }

/* Compact logout emblem above the Residents Home sidebar widgets. */
.hcsha-home-logout { margin:0 0 24px !important; }
.hcsha-home-logout a.hcsha-image-link { flex:0 1 180px; width:180px; max-width:100%; margin:0 auto; }
