:root{font-family:system-ui,sans-serif;color:#1b3049;background:#f1f4f7}*{box-sizing:border-box}body{margin:0}main{max-width:780px;margin:35px auto;padding:28px;background:#fff;border:1px solid #dce2e9;border-radius:14px}header{display:flex;gap:20px;align-items:center;border-bottom:1px solid #ddd;padding-bottom:20px}header strong{color:#bd1730;font-size:30px}h1{font-size:26px}p{line-height:1.55}label{display:block;font-weight:650;margin-top:23px}input,textarea{display:block;width:100%;font:inherit;border:1px solid #a6b1be;border-radius:7px;padding:12px;margin:8px 0}small{line-height:1.5;color:#46566a}button{margin-top:25px;border:0;background:#bd1730;color:#fff;font:inherit;font-weight:700;border-radius:8px;padding:13px 22px;cursor:pointer}button:disabled{opacity:.6}input:focus,textarea:focus,button:focus-visible{outline:3px solid #236ab4;outline-offset:3px}.note{background:#f1f4f7;padding:15px;border-radius:8px;font-size:14px}code{overflow-wrap:anywhere}@media(max-width:600px){main{margin:0;border-radius:0;padding:20px}header{flex-wrap:wrap}}
.actions{display:flex;flex-wrap:wrap;gap:12px}.secondary{background:#e8edf3;color:#1b3049}.document-list{list-style:none;padding:0;display:grid;gap:12px}.document-list li{border:1px solid #dce2e9;border-radius:10px;padding:18px;overflow-wrap:anywhere}.document-list p{margin:10px 0}.document-list button{margin-top:6px}#result{font-weight:600}#detail-title:focus{outline:3px solid #236ab4;outline-offset:5px}[hidden]{display:none!important}

/* Acceso principal; estilos acotados para conservar formularios de configuración. */
.access-page{min-height:100vh;background:linear-gradient(135deg,#eef1f5,#fafbfc);padding:36px 20px}
.access-page main{max-width:1080px;margin:0 auto;padding:36px 44px;display:grid;grid-template-columns:1fr 1fr;gap:28px 64px;border-top:5px solid #bd1730;box-shadow:0 14px 50px #17314c0c}
.access-page header{grid-column:1/-1;justify-content:space-between;padding-bottom:22px;border-color:#e0e5ec}
.access-page header span{font-size:14px;color:#526276}
.access-welcome{padding-top:58px;align-self:start}
.access-eyebrow{font-size:12px;font-weight:750;letter-spacing:.13em;color:#a8142a}
.access-welcome h1{font-size:42px;line-height:1.15;max-width:360px;margin:18px 0}
.access-welcome p{max-width:340px;color:#526276;font-size:17px}
.access-form{padding:10px 0}
.access-form h2{font-size:25px;margin:14px 0 8px}
.access-form p{color:#526276;font-size:14px}
.access-form input{min-height:48px;background:#fff;color:#1b3049}
.password-field{position:relative}
.password-field input{padding-right:90px}
.password-field button{position:absolute;right:6px;top:6px;margin:0;padding:9px 10px;color:#1b3049;background:#eef1f5;font-size:13px}
.access-form #sign-in{width:100%;margin-top:16px;min-height:50px}
.access-form .access-help{margin-top:24px;padding-top:20px;border-top:1px solid #e0e5ec;font-size:13px}
.access-form .access-pilot{font-size:12px;color:#675415;background:#faf6e9;padding:10px;border-radius:6px}
.access-page #workspace,.access-page #result{grid-column:1/-1}
.access-page #result{margin:0;color:#9b1429;overflow-wrap:anywhere}
.access-page .actions a{display:flex;align-items:center;min-height:48px;background:#eef1f5;border:1px solid #dce2e9;border-radius:8px;padding:12px 16px;color:#1b3049;text-decoration:none;font-weight:650}
.access-page a:focus-visible{outline:3px solid #236ab4;outline-offset:3px}
@media(max-width:700px){.access-page{padding:18px 12px}.access-page main{display:block;padding:24px; border-radius:14px}.access-welcome{padding-top:26px}.access-welcome h1{font-size:30px;max-width:none}.access-welcome p{font-size:15px}.access-page header{gap:8px}.access-form{padding-top:12px}.access-page #result{margin-top:16px}}
