
/* Shared tokens and interaction primitives, loaded after page styles. */
:root{--navy1:#0a1a3c;--navy2:#15294f;--navy-950:#071429;--navy-900:#0a1a3c;--navy-800:#15294f;--cyan:#2dd4d4;--teal:#0fb3a3;--ink:#14213d;--paper:#eceef7;--paper-2:#f6f7fc;--panel:#fff;--muted:#52617a;--ink-45:#52617a;--ink-70:#455570;--mist:#b7c4de;--mist-dim:#a8b9d5;--line:#d9deea;--danger:#a92e24;--ok:#126834;--warn:#805405;--r-card:18px;--r-btn:12px;--gut:clamp(16px,4.4vw,44px);--shadow:0 3px 10px rgba(20,33,61,.04),0 16px 40px rgba(20,33,61,.07)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-padding-top:90px}body{overflow-wrap:break-word}main,section,article,.card,.panel,.tscroll{min-width:0}
button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
button,.btn{min-height:44px}button{cursor:pointer}.btn{border-radius:var(--r-btn);line-height:1.5;white-space:normal;text-align:center}
:focus-visible{outline:3px solid #087d79;outline-offset:3px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px}
.hdr :focus-visible,.foot :focus-visible,.sec--navy :focus-visible,.hero :focus-visible,.dlg :focus-visible{outline-color:var(--cyan)}
[hidden]{display:none!important}button:disabled{cursor:wait;opacity:.7}.btn[aria-busy=true]::before{content:'';width:15px;height:15px;flex:none;border:2px solid currentColor;border-inline-end-color:transparent;border-radius:50%;animation:ui-spin .7s linear infinite}
@keyframes ui-spin{to{transform:rotate(360deg)}}
.hdr{background:#0a1a3c}.hdr .nav a[aria-current]{color:#fff;border-bottom-color:var(--cyan)}.hdr .hdr-cta{min-width:0}.hdr .who{color:var(--mist);padding:0}
.hdr .brand{color:white}.hdr .btn-line{color:#d7f7f7}.hdr .btn-solid{color:#04101f;background:var(--cyan)}.hdr .btn-ghost{color:var(--mist)}
.nav-backdrop{display:none}.nav-toggle{min-height:44px}.nav-toggle[aria-expanded=true] span{background:transparent}.nav-toggle[aria-expanded=true] span::before{top:0;transform:rotate(45deg)}.nav-toggle[aria-expanded=true] span::after{top:0;transform:rotate(-45deg)}
.skip{position:fixed;inset-inline-start:-9999px;top:0;z-index:300;background:var(--cyan);color:#04101f;padding:12px 20px;font-weight:700;border-radius:0 0 10px 10px;text-decoration:none}.skip:focus{inset-inline-start:16px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.field-error{font-size:.8rem;color:var(--danger);margin:6px 0 0;line-height:1.8}.field-error:empty{display:none}
.field-hint{font-size:.8rem;color:var(--muted);margin:6px 0 0;line-height:1.8;min-height:1.8em}
input[aria-invalid=true],select[aria-invalid=true]{border-color:var(--danger);background:#fff8f7}
.password-wrap{position:relative}.password-wrap input{padding-inline-start:80px}.password-toggle{position:absolute;inset-inline-end:6px;top:4px;min-height:36px;padding:4px 10px;border:0;background:var(--paper-2);border-radius:8px;color:var(--ink);font-size:.76rem;font-weight:700}
.password-strength{height:5px;width:100%;display:block;margin-top:10px;border-radius:9px;overflow:hidden;accent-color:#087d79}
.msg{overflow-wrap:anywhere}.msg a{font-weight:800;text-decoration:underline}.tscroll{max-width:100%;overscroll-behavior-inline:contain;scrollbar-width:thin}
.num,bdi[dir=ltr]{unicode-bidi:isolate;font-variant-numeric:tabular-nums}.num{direction:ltr}
.pill{white-space:normal}.pill.pending{color:var(--warn)}.pill.active,.pill.paid{color:var(--ok)}.pill.rejected,.pill.blocked,.pill.cancelled{color:var(--danger)}
input[type=checkbox]{width:22px!important;height:22px;accent-color:#087d79;vertical-align:middle}
input::placeholder,textarea::placeholder{color:#61708a;opacity:1}
.ui-dialog{border:1px solid var(--line);border-radius:20px;padding:0;margin:auto;width:min(520px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;background:white;color:var(--ink);box-shadow:0 24px 100px #07142955}
.ui-dialog::backdrop{background:#071429bb;backdrop-filter:blur(4px)}.dialog-content{padding:24px}.dialog-content h2{font-size:1.3rem;margin:0 0 10px}.dialog-content p{color:var(--muted);font-size:.9rem}.dialog-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.dialog-actions .btn{flex:1;margin:0!important;width:auto!important}.dialog-head{display:flex;justify-content:space-between;align-items:center;gap:12px}
.ui-dialog .btn.pri{background:var(--cyan);color:var(--ink)}
@media(max-width:1120px){.hdr-in{min-height:66px}.nav-toggle{display:flex;margin-inline-start:auto}.hdr-drawer{display:none;position:absolute;inset-inline:0;top:100%;background:var(--navy-800);padding:2px var(--gut) 18px;border-bottom:1px solid var(--line-dark)}.hdr.is-open .hdr-drawer{display:block}.hdr-drawer .nav{flex-direction:column;gap:0}.hdr-drawer .nav a{padding:13px 0;border-bottom:1px solid #ffffff20}.hdr-drawer .hdr-cta{margin-top:16px}.hdr-drawer{max-height:calc(100dvh - 82px);overflow:auto;border-radius:0 0 18px 18px;box-shadow:0 20px 35px #07142944;z-index:2}.p-shell .hdr-drawer .nav{flex-direction:column;gap:0}.p-shell .hdr-drawer .nav a{padding:13px 0;border-bottom:1px solid #ffffff20}.hdr.is-open .nav-backdrop{display:block;position:fixed;inset:66px 0 0;background:#07142999;z-index:-1;border:0;border-radius:0;width:100%;height:100dvh}.hdr-drawer .hdr-cta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.hdr-drawer .who{grid-column:1/-1;max-width:100%}.nav-open{overflow:hidden}}
@media(max-width:400px){.dialog-content{padding:18px}.hdr-drawer .hdr-cta{grid-template-columns:1fr}.btn{padding-inline:14px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
