.portal-request-error-panel {
    width: min(92%, 36rem);
    margin: auto;
    padding: 1.5rem;
    border: 2px solid #97c800;
    border-radius: 8px;
    background: #f5fbeb;
    color: #222;
    text-align: left;
    overflow-wrap: anywhere;
}
dialog.portal-request-error-panel { position: fixed; inset: 0; max-height: 90vh; overflow: auto; }
.portal-request-error-panel::backdrop { background: rgba(0, 0, 0, .65); }
.portal-request-error-panel h1, .portal-request-error-panel h2 { font-size: 1.4rem; line-height: 1.3; }
.portal-request-error-panel p { margin: 1rem 0; line-height: 1.5; }
.portal-request-error-panel a {
    display: inline-block;
    padding: .7rem 1rem;
    background: #97c800;
    color: #132000;
    font-weight: bold;
    border-radius: 4px;
}
.portal-request-error-panel a:focus-visible { outline: 3px solid #222; outline-offset: 3px; }
.portal-request-error-page { display: flex; align-items: center; min-height: 100vh; padding: 1rem; }
.portal-session-expired { margin: 0 0 1rem; padding: .8rem; border-left: 4px solid #97c800; background: #e8f4d0; line-height: 1.5; }
