/* Acceso público al portal: aislado del login y del shell administrativo. */
.ag-portal-access{--pa-bg:var(--ag-page,var(--bs-tertiary-bg,#f4f7fb));--pa-surface:var(--ag-surface,var(--bs-body-bg,#fff));--pa-ink:var(--ag-ink,var(--bs-body-color,#172b46));--pa-muted:var(--ag-muted,var(--bs-secondary-color,#5a6c83));--pa-line:var(--ag-border,var(--bs-border-color,#dfe7f1));--pa-blue:var(--ag-brand-primary,#0866ff);--pa-soft:var(--ag-brand-primary-soft,#edf4ff);background:var(--pa-bg);color:var(--pa-ink);display:flex;flex-direction:column;font-size:14px;line-height:1.5;min-height:100vh;min-height:100dvh}
.ag-portal-access *{box-sizing:border-box}.ag-portal-access :is(h1,h2,p){margin:0}.ag-portal-access a{text-decoration:none}.ag-portal-access :is(a,button,input):focus-visible{outline:3px solid var(--pa-blue);outline-offset:3px}.ag-portal-access button,.ag-portal-access input{font:inherit}.ag-portal-access [hidden]{display:none!important}
.ag-portal-access .ag-pa-header{align-items:center;background:var(--pa-surface);border-bottom:1px solid var(--pa-line);display:flex;gap:16px;justify-content:space-between;min-height:76px;padding:16px clamp(20px,5vw,80px)}.ag-portal-access .ag-pa-brand{align-items:center;display:flex;gap:11px}.ag-portal-access .ag-pa-brand__mark{align-items:center;background:var(--pa-blue);border-radius:10px;color:#fff;display:flex;height:40px;justify-content:center;width:40px}.ag-portal-access svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.ag-portal-access .ag-pa-brand__mark svg{height:27px;width:27px}.ag-portal-access .ag-pa-brand strong{display:block;font-size:15px;font-weight:700;letter-spacing:.7px}.ag-portal-access .ag-pa-brand small{color:var(--pa-muted);display:block;font-size:11px;margin-top:2px}.ag-portal-access .ag-pa-private{color:var(--pa-muted);font-size:12px}
.ag-portal-access .ag-pa-main{align-items:center;display:grid;flex:1;gap:clamp(40px,8vw,120px);grid-template-columns:minmax(0,1fr) minmax(0,440px);margin:0 auto;max-width:1240px;padding:58px 40px;width:100%}.ag-portal-access .ag-pa-eyebrow{color:var(--pa-muted);display:block;font-size:11px;font-weight:700;letter-spacing:1.3px;text-transform:uppercase}.ag-portal-access .ag-pa-welcome h1{font-size:clamp(34px,3.8vw,52px);font-weight:700;letter-spacing:-1.3px;line-height:1.14;margin-top:15px}.ag-portal-access .ag-pa-welcome>p{color:var(--pa-muted);font-size:15px;line-height:1.75;margin-top:21px;max-width:400px}.ag-portal-access .ag-pa-benefits{display:grid;gap:25px;list-style:none;margin:35px 0 0;padding:0}.ag-portal-access .ag-pa-benefits li{align-items:flex-start;display:flex;gap:15px}.ag-portal-access .ag-pa-benefits li>span{align-items:center;background:var(--pa-soft);border-radius:9px;color:var(--pa-blue);display:flex;flex:0 0 38px;font-size:11px;font-weight:700;height:38px;justify-content:center}.ag-portal-access .ag-pa-benefits strong{display:block;font-size:13px;font-weight:600}.ag-portal-access .ag-pa-benefits p{color:var(--pa-muted);font-size:12px;line-height:1.6;margin-top:4px;max-width:340px}
.ag-portal-access .ag-pa-card{background:var(--pa-surface);border:1px solid var(--pa-line);border-radius:18px;min-width:0;padding:32px}.ag-portal-access .ag-pa-card h2{font-size:26px;font-weight:700;letter-spacing:-.5px;line-height:1.3;margin-top:10px}.ag-portal-access .ag-pa-intro{color:var(--pa-muted);font-size:13px;line-height:1.65;margin-top:10px}.ag-portal-access .ag-pa-form{display:grid;gap:20px;margin-top:28px}.ag-portal-access .ag-pa-field label{display:block;font-size:12px;font-weight:600;margin-bottom:8px}.ag-portal-access .ag-pa-field input{background:var(--pa-surface);border:1px solid var(--pa-line);border-radius:8px;color:var(--pa-ink);font-size:14px;min-height:48px;padding:11px 13px;width:100%}.ag-portal-access .ag-pa-field input:focus{border-color:var(--pa-blue)}.ag-portal-access .ag-pa-password{position:relative}.ag-portal-access .ag-pa-password input{padding-right:52px}.ag-portal-access .ag-pa-password-toggle{align-items:center;background:transparent;border:0;border-radius:7px;color:var(--pa-muted);display:flex;height:44px;justify-content:center;position:absolute;right:2px;top:2px;width:44px}.ag-portal-access .ag-pa-password-toggle svg{height:20px;width:20px}.ag-portal-access .ag-pa-password-toggle[aria-pressed=true]{color:var(--pa-blue)}
.ag-portal-access .ag-pa-verification{min-width:0}.ag-portal-access .g-recaptcha{max-width:100%;min-height:78px}.ag-portal-access .ag-pa-captcha-status{color:var(--pa-muted);font-size:11px;line-height:1.6;margin-top:8px}.ag-portal-access .ag-pa-captcha-status[data-state=error]{color:var(--bs-danger-text-emphasis,#a12632)}.ag-portal-access .ag-pa-retry{background:transparent;border:1px solid var(--pa-line);border-radius:7px;color:var(--pa-ink);font-size:12px;margin-top:8px;min-height:44px;padding:8px 12px}.ag-portal-access .ag-pa-submit{align-items:center;background:var(--pa-blue);border:1px solid var(--pa-blue);border-radius:8px;color:#fff;display:flex;font-size:14px;font-weight:600;gap:10px;justify-content:center;min-height:48px;padding:11px 15px;width:100%}.ag-portal-access .ag-pa-submit span{font-size:19px;line-height:1}.ag-portal-access .ag-pa-submit:disabled{background:var(--pa-soft);border-color:var(--pa-line);color:var(--pa-muted);cursor:not-allowed}.ag-portal-access .ag-pa-help{border-top:1px solid var(--pa-line);color:var(--pa-muted);font-size:12px;line-height:1.75;margin-top:24px;padding-top:20px}.ag-portal-access .ag-pa-notice{background:var(--pa-soft);border:1px solid var(--pa-line);border-radius:8px;color:var(--pa-ink);font-size:12px;line-height:1.65;margin-top:18px;padding:12px}.ag-portal-access .ag-pa-unavailable{background:var(--pa-bg);border:1px solid var(--pa-line);border-radius:10px;margin-top:24px;padding:18px}.ag-portal-access .ag-pa-unavailable strong{font-size:13px;font-weight:600}.ag-portal-access .ag-pa-unavailable p{color:var(--pa-muted);font-size:12px;line-height:1.65;margin-top:7px}
.ag-portal-access .ag-pa-footer{align-items:center;border-top:1px solid var(--pa-line);color:var(--pa-muted);display:flex;font-size:11px;gap:16px;justify-content:space-between;padding:12px clamp(20px,5vw,80px)}.ag-portal-access .ag-pa-footer a{align-items:center;color:var(--pa-muted);display:inline-flex;min-height:44px}.ag-portal-access .ag-pa-footer a:hover{text-decoration:underline}
@media(max-width:900px){.ag-portal-access .ag-pa-main{gap:36px;grid-template-columns:minmax(0,1fr) minmax(0,400px);padding:40px 28px}.ag-portal-access .ag-pa-card{padding:26px}.ag-portal-access .ag-pa-welcome h1{font-size:35px}.ag-portal-access .ag-pa-benefits{gap:20px}}
@media(max-width:699.98px){.ag-portal-access .ag-pa-header{min-height:70px;padding:14px 20px}.ag-portal-access .ag-pa-private{display:none}.ag-portal-access .ag-pa-main{align-content:center;gap:24px;grid-template-columns:1fr;max-width:480px;padding:30px 16px}.ag-portal-access .ag-pa-welcome>.ag-pa-eyebrow,.ag-portal-access .ag-pa-benefits{display:none}.ag-portal-access .ag-pa-welcome h1{font-size:27px;letter-spacing:-.6px;margin:0}.ag-portal-access .ag-pa-welcome h1 br{display:none}.ag-portal-access .ag-pa-welcome>p{font-size:12px;line-height:1.65;margin-top:9px}.ag-portal-access .ag-pa-card{border-radius:14px;padding:24px 20px}.ag-portal-access .ag-pa-card h2{font-size:23px}.ag-portal-access .ag-pa-form{gap:18px;margin-top:24px}.ag-portal-access .ag-pa-footer{align-items:flex-start;flex-direction:column;gap:0;padding:12px 20px}}
@media(prefers-reduced-motion:reduce){.ag-portal-access *{scroll-behavior:auto}}
html:is([data-theme=dark],[data-bs-theme=dark]) .ag-portal-access .ag-pa-captcha-status[data-state=error]{color:var(--bs-danger-text-emphasis,#ffb4bc)}
