.suite-access { min-height: 100svh; position: relative; isolation: isolate; color: #fff; font-family: Inter, sans-serif; }
.suite-access-photo { position: fixed; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(7,19,24,.74), rgba(7,19,24,.14) 65%, rgba(7,19,24,.35)), var(--suite-photo) center / cover no-repeat; }
.suite-access-layout { width: min(1440px,100%); min-height: 100svh; margin: auto; display: grid; grid-template-columns: 1fr minmax(360px,440px); align-items: center; gap: clamp(36px,6vw,100px); padding: clamp(24px,5vw,76px); }
.suite-access-story { align-self: stretch; display: flex; flex-direction: column; justify-content: space-between; gap: 56px; padding: 12px 0; }
.suite-access-logo { width: 240px; max-width: 80%; filter: brightness(0) invert(1); }
.suite-access-kicker, .suite-form-kicker { font-size: 10px; letter-spacing: .2em; font-weight: 800; }
.suite-access-kicker { color: #83e7ef; margin: 0 0 24px; }
.suite-access-message h1 { font-size: clamp(36px,4.2vw,62px); font-weight: 700; line-height: 1.1; letter-spacing: -.05em; color: white; margin: 0 0 26px; }
.suite-access-message h1 span { font-weight: 400; }
.suite-access-message > p:not(.suite-access-kicker) { font-size: 15px; line-height: 1.8; color: #e3e9eb; }
.suite-ink-dots { display: flex; gap: 9px; margin-top: 32px; }
.suite-ink-dots i { width: 15px; height: 15px; border-radius: 50%; background: #00bed9; }
.suite-ink-dots i:nth-child(2) { background: #ed168c; }
.suite-ink-dots i:nth-child(3) { background: #ffe244; }
.suite-ink-dots i:nth-child(4) { background: #19272b; border: 1px solid #819093; }
.suite-access-caption { font-size: 9px; letter-spacing: .18em; color: #e3e9eb; }
.suite-access-panel { position: relative; overflow: hidden; background: #faf9f5; color: #18353c; border-radius: 4px 28px 4px 4px; padding: 38px; box-shadow: 0 24px 80px #0005; }
.suite-access-panel::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 5px; background: linear-gradient(90deg,#00bed9 0 25%,#ed168c 25% 50%,#ffe244 50% 75%,#18353c 75%); }
.suite-card-top { display: flex; justify-content: space-between; gap: 10px; font-size: 8px; font-weight: 800; letter-spacing: .06em; padding-bottom: 30px; border-bottom: 1px solid #dce1de; }
.suite-edition { color: #637578; white-space: nowrap; }
.suite-form-kicker { color: #697d7e; margin: 32px 0 14px; font-size: 9px; }
.suite-access-panel h2 { font-size: 42px; font-weight: 700; line-height: 1.06; letter-spacing: -.05em; margin: 0 0 16px; color: #18353c; }
.suite-form-intro { font-size: 12px; line-height: 1.7; color: #677879; margin-bottom: 26px; }
.suite-form > label { display: block; font-size: 12px; font-weight: 700; margin: 18px 0 9px; }
.suite-form input { box-sizing: border-box; width: 100%; min-width: 0; height: 49px; background: #fff; color: #18353c; border: 1px solid #ccd6d4; border-radius: 6px; padding: 0 14px; font: inherit; font-size: 13px; }
.suite-form input::placeholder { color: #7b898c; }
.suite-form input:focus-visible, .suite-form button:focus-visible { outline: 3px solid #08a8bd; outline-offset: 3px; }
.suite-password-entry { position: relative; }
.suite-form .suite-password-entry input { padding-right: 80px; }
.suite-password-eye { position: absolute; top: 5px; right: 6px; height: 39px; padding: 0 10px; border: 0; background: transparent; color: #45666c; font: inherit; font-size: 11px; cursor: pointer; }
.suite-login-error { min-height: 18px; color: #b3234f; font-size: 12px; margin: 12px 0; }
.suite-login-submit { display: flex; justify-content: space-between; align-items: center; width: 100%; min-height: 51px; padding: 12px 19px; background: #183e47; color: white; border: 0; border-radius: 6px; font: inherit; font-size: 13px; font-weight: 700; cursor: pointer; }
.suite-login-submit:hover { background: #245762; }
.suite-login-submit span { font-size: 23px; }
.suite-access-footnote { color: #718181; font-size: 10px; text-align: center; margin: 26px 0 0; line-height: 1.7; }
@media(max-width: 850px) { .suite-access-layout { grid-template-columns: 1fr minmax(330px,390px); gap: 28px; padding: 30px; } .suite-access-panel { padding: 28px; } .suite-access-message h1 { font-size: 36px; } }
@media(max-width: 680px) { .suite-access-layout { grid-template-columns: 1fr; padding: 28px 20px; gap: 28px; max-width: 480px; } .suite-access-story { gap: 24px; padding: 0; } .suite-access-logo { width: 200px; } .suite-access-message h1 { font-size: 32px; margin-bottom: 0; } .suite-access-message > p:not(.suite-access-kicker), .suite-access-caption, .suite-ink-dots { display: none; } .suite-access-kicker { margin-bottom: 12px; } .suite-access-panel { padding: 28px; } .suite-access-panel h2 { font-size: 36px; } .suite-access-photo { background-position: 42% center; } }

.suite-access { width:100%; max-width:none; margin:0; padding:0; font-size:16px; } .suite-access *, .suite-access *::before, .suite-access *::after {box-sizing:border-box;} .suite-access section {max-width:none;} .suite-access-panel form {display:block;margin:0;padding:0;} .suite-access-panel label {display:block;} .suite-access-panel h2 {text-transform:none;} .suite-access-panel input {box-shadow:none;} .suite-access .suite-form > label,.suite-access .suite-form input,.suite-access .suite-login-submit {font-size:16px;} .suite-access .suite-form-intro,.suite-access .suite-access-footnote,.suite-access .suite-login-error,.suite-access .suite-password-eye {font-size:14px;} .suite-access-panel::before {background:var(--suite-stripe);} .suite-access-kicker {color:var(--suite-accent);} .suite-access .suite-ink-dots i {background:var(--suite-accent);} .suite-access .suite-ink-dots i:nth-child(2){opacity:.75;} .suite-access .suite-ink-dots i:nth-child(3){opacity:.5;} .suite-access .suite-ink-dots i:nth-child(4){opacity:.25;} .suite-access-logo {height:auto;object-fit:contain;} .suite-form [hidden] {display:none;}
.suite-access {--suite-photo:url('login-hospital.png');--suite-accent:#a3dafa;--suite-stripe:linear-gradient(90deg,#2277b4,#5baed6,#b7e3f1,#183e47);} .suite-tabs {display:flex;gap:8px;margin:20px 0;} .suite-tabs button {flex:1;padding:12px;border:1px solid #ccd6d4;border-radius:6px;background:white;color:#183e47;font:inherit;cursor:pointer;} .suite-tabs button[aria-selected="true"] {background:#183e47;color:white;} .suite-tabs button:focus-visible {outline:3px solid #08a8bd;outline-offset:3px;} #loginView[hidden] {display:none;} body.login-active {overflow:auto;} .suite-form[hidden] {display:none;}
.suite-logo-frame {position:relative;display:block;width:240px;max-width:100%;height:62px;overflow:hidden;flex:none;} .suite-logo-frame .suite-access-logo {position:absolute;max-width:none;width:120%;height:auto;left:-10%;top:50%;transform:translateY(-50%);filter:brightness(0) invert(1);}
/* Navegación de regreso al selector de interfaces. */
.portfolio-return {display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;margin-top:18px;padding:10px 14px;border:1px solid #aebfbe;border-radius:6px;background:transparent;color:#183e47;font:600 14px/1.4 inherit;text-decoration:none;text-align:center;} .portfolio-return:hover {background:#e7efed;color:#183e47;} .portfolio-return:focus-visible {outline:3px solid #08a8bd;outline-offset:3px;}