/* Public request prompt. Isolated from the site's existing forms and buttons. */
.paa-prompt,.paa-overlay{--paa-bg:#fcfdfb;--paa-text:#263c49;--paa-muted:#64747e;--paa-line:#dce3e4;--paa-accent:#455d7c;--paa-soft:#eef2f3;color:var(--paa-text);font-family:Arial,sans-serif;font-size:14px;line-height:1.45;text-align:left;letter-spacing:normal;text-transform:none;box-sizing:border-box}
[data-theme=dark] .paa-prompt,[data-theme=dark] .paa-overlay{--paa-bg:#243441;--paa-text:#e8eef2;--paa-muted:#b3c2cc;--paa-line:#445865;--paa-accent:#bdcedc;--paa-soft:#2e414f}
.paa-prompt[hidden],.paa-overlay[hidden],.paa-overlay [hidden]{display:none!important}
.paa-prompt *,.paa-overlay *{box-sizing:border-box}
.paa-prompt{position:fixed;right:24px;bottom:calc(24px + env(safe-area-inset-bottom,0px));z-index:900;width:334px;padding:20px;border:1px solid var(--paa-line);border-radius:22px;background:var(--paa-bg);box-shadow:0 12px 45px #16334324}
.paa-intro{display:flex;align-items:center;gap:12px;padding-right:20px;margin-bottom:16px}
.paa-intro strong{display:block;margin:0;font-size:15px;line-height:1.4;font-weight:600;color:var(--paa-text)}
.paa-intro p{margin:4px 0 0;color:var(--paa-muted);font-size:12px;line-height:1.4}
.paa-mark{display:grid;place-items:center;width:40px;height:40px;flex:0 0 40px;background:var(--paa-soft);border:1px solid var(--paa-line);border-radius:13px;color:var(--paa-accent)}
.paa-prompt svg,.paa-overlay svg{display:block;width:18px;height:18px;flex:0 0 18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.paa-close{position:absolute;top:4px;right:4px;display:grid;place-items:center;width:36px;height:36px;margin:0;padding:0;border:0;border-radius:50%;background:transparent;color:var(--paa-muted);cursor:pointer;line-height:1}
.paa-close:hover{background:var(--paa-soft);color:var(--paa-text)}
.paa-action{display:inline-flex;align-items:center;justify-content:center;gap:16px;width:100%;min-height:44px;margin:0;padding:12px 18px;border:1px solid var(--paa-accent);border-radius:14px;background:var(--paa-accent);color:#fff;font:600 13px/1.3 Arial,sans-serif;text-decoration:none;letter-spacing:normal;text-transform:none;cursor:pointer;box-shadow:none}
[data-theme=dark] .paa-action{color:#203342}
.paa-action:hover{filter:brightness(.96)}
.paa-action:disabled{opacity:.65;cursor:wait}
.paa-prompt a:focus-visible,.paa-prompt button:focus-visible,.paa-overlay button:focus-visible,.paa-overlay a:focus-visible{outline:3px solid #87a7c3;outline-offset:3px}
.paa-overlay{position:fixed;inset:0;z-index:5000;display:flex;align-items:center;justify-content:center;padding:20px;background:#14212bb3;overscroll-behavior:contain;overflow:auto}
.paa-window{position:relative;width:100%;max-width:460px;max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);overflow:auto;padding:30px;border:1px solid var(--paa-line);border-radius:26px;background:var(--paa-bg);box-shadow:0 24px 100px #10233338;overscroll-behavior:contain}
.paa-window>.paa-close{top:12px;right:12px}
.paa-eyebrow{display:block;margin:0 28px 10px 0;color:var(--paa-muted);font-size:10px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase}
.paa-window h2{margin:0 25px 12px 0;font:600 29px/1.15 Arial,sans-serif;letter-spacing:-.8px;text-transform:none;color:var(--paa-text)}
.paa-window>p{margin:0 0 20px;font-size:13px;line-height:1.55;color:var(--paa-muted)}
.paa-label{display:block;margin:14px 0 0;font-size:12px;font-weight:600;color:var(--paa-text)}
.paa-optional{margin-left:6px;font-size:11px;font-weight:400;color:var(--paa-muted)}
.paa-label input,.paa-label textarea{display:block;width:100%;min-width:0;margin:7px 0 0;padding:11px 13px;border:1px solid var(--paa-line);border-radius:11px;background:var(--paa-soft);color:var(--paa-text);font:400 14px/1.4 Arial,sans-serif;letter-spacing:normal;box-shadow:none;outline:none}
.paa-label input{min-height:44px}.paa-label textarea{min-height:76px;resize:vertical}
.paa-label input::placeholder,.paa-label textarea::placeholder{color:var(--paa-muted);opacity:.85}
.paa-label input:focus,.paa-label textarea:focus{border-color:var(--paa-accent);outline:2px solid #87a7c366;outline-offset:1px}
.paa-overlay [aria-invalid=true]{border-color:#ae554f}
.paa-consent{display:flex;align-items:flex-start;gap:9px;margin:18px 0;color:var(--paa-muted);font:400 11px/1.5 Arial,sans-serif}
.paa-consent input{display:block;flex:0 0 16px;width:16px;height:16px;min-height:0;margin:1px 0 0;padding:0;accent-color:var(--paa-accent);appearance:auto}
.paa-consent a{color:var(--paa-text);text-decoration:underline;text-underline-offset:2px}
.paa-honey{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.paa-status{margin:14px 0;padding:11px 13px;border:1px solid var(--paa-line);border-radius:10px;background:var(--paa-soft);font-size:12px;line-height:1.5;color:var(--paa-text)}
.paa-status[data-error]{border-color:#c58379;color:var(--paa-text)}
.paa-success{text-align:center;padding-top:12px}.paa-success-mark{display:grid;place-items:center;width:54px;height:54px;margin:0 auto 18px;border:1px solid var(--paa-line);border-radius:50%;background:var(--paa-soft);color:var(--paa-accent)}
.paa-success-mark svg{width:26px;height:26px}.paa-success h3{margin:0 0 12px;font:600 24px/1.2 Arial,sans-serif;letter-spacing:-.4px;color:var(--paa-text);text-transform:none}
.paa-success p{margin:0 0 24px;font-size:14px;line-height:1.55;color:var(--paa-muted)}
html.paa-modal-open{overflow:hidden}.paa-prompt.paa-suppressed{visibility:hidden;pointer-events:none}
body:has(dialog[open]) .paa-prompt{visibility:hidden;pointer-events:none}
@media(max-width:600px){.paa-prompt{right:12px;left:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));width:auto;padding:16px;border-radius:18px}.paa-intro{margin-bottom:12px;gap:10px}.paa-mark{width:34px;height:34px;flex-basis:34px;border-radius:11px}.paa-intro strong{font-size:14px}.paa-intro p{font-size:11px}.paa-overlay{padding:12px}.paa-window{padding:25px 21px;max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);border-radius:22px}.paa-window h2{font-size:27px}.paa-label input,.paa-label textarea{font-size:16px}body:has(input:focus,textarea:focus,select:focus) .paa-prompt{visibility:hidden;pointer-events:none}}
@media(prefers-reduced-motion:no-preference){.paa-prompt{animation:paa-appear .22s ease-out}.paa-action,.paa-close{transition:background-color .15s,color .15s,filter .15s}@keyframes paa-appear{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}}

/* Direct sign-in stays separate from the access-request form. */
.paa-login{display:flex;align-items:center;justify-content:center;gap:8px;margin:10px 0 0;padding:0;color:var(--paa-muted);font:400 12px/1.4 Arial,sans-serif;letter-spacing:normal;text-transform:none}
.paa-login a{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:28px;padding:2px 0;color:var(--paa-text);font-weight:600;text-decoration:underline;text-underline-offset:3px;border-radius:3px}
.paa-login a:hover{text-decoration-thickness:2px}
.paa-login a svg{width:14px;height:14px;flex-basis:14px}
@media(max-width:600px){.paa-login{margin-top:8px}}
