@font-face{font-family:Montserrat;src:url(/assets/Montserrat-SemiBold-C0-6BeuA.ttf)format("truetype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Montserrat;src:url(/assets/Montserrat-Bold-D4JCkd3k.ttf)format("truetype");font-weight:700;font-style:normal;font-display:swap}:root{--color-primary:#023c84;--color-primary-hover:#0354a6;--color-primary-active:#012f68;--color-page-bg:#f4f6f9;--color-surface:#fff;--color-text:#172033;--color-text-secondary:#3d4759;--color-text-muted:#566276;--color-border:#d9dde5;--color-border-hover:#aeb7c5;--color-error:#b42318;--color-error-bg:#fef2f2;--color-success:#15803d;--color-success-bg:#f0fdf4;--color-focus-ring:#023c843d;--radius-sm:6px;--radius-md:9px;--radius-lg:16px;--shadow-card:0 16px 40px #17203314;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--font-heading:"Montserrat", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-body:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}.portal-shell{background:var(--color-page-bg);min-height:100vh}.portal-shell__header{background:#fff;border-bottom:1px solid #e5e5e5;height:80px}.portal-shell__header-content{box-sizing:border-box;align-items:center;gap:40px;max-width:1280px;height:100%;margin:0 auto;padding:0 48px;display:flex}.portal-shell__brand{flex-shrink:0;align-items:center;gap:24px;display:flex}.portal-shell__wordmark{width:auto;height:40px}.portal-shell__product{color:#023c84;font-family:var(--font-heading);font-size:24px;font-weight:600;line-height:1}.portal-shell__nav{align-items:center;gap:24px;display:flex}.portal-shell__nav-item{color:var(--color-text-muted);border-bottom:2px solid #0000;padding:4px 8px;font-size:14px;text-decoration:none;transition:color .15s,border-color .15s}.portal-shell__nav-item:hover{color:var(--color-primary)}.portal-shell__nav-item--active{color:var(--color-primary);border-bottom-color:var(--color-primary);padding-bottom:2px;font-weight:600}.portal-shell__right{align-items:center;gap:16px;margin-left:auto;display:flex}.portal-shell__user{border-radius:6px;flex-direction:column;justify-content:center;padding:8px 4px;transition:background-color .15s;display:flex}.portal-shell__user:hover{background:#f5f5f5}.portal-shell__user-name{color:#023c84;font-size:12px}.portal-shell__sign-out{color:#fff;cursor:pointer;background:#023c84;border:none;border-radius:6px;padding:8px 16px;font-size:14px;font-weight:500;transition:opacity .15s}.portal-shell__sign-out:hover{opacity:.9}.portal-shell__sign-out:disabled{cursor:wait;opacity:.7}@media (width<=640px){.portal-shell__user{display:none}}.portal-shell__content{box-sizing:border-box;max-width:1280px;padding:var(--space-2xl) 48px;margin:0 auto}.me-page{gap:var(--space-xl);grid-template-columns:1fr 320px;align-items:start;display:grid}@media (width<=900px){.me-page{grid-template-columns:1fr}}.me-page__heading{margin:0 0 var(--space-lg);color:var(--color-text);font-family:var(--font-heading);font-size:24px;font-weight:700}.me-page__empty{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);padding:var(--space-xl);color:var(--color-text-secondary)}.app-grid{gap:var(--space-md);grid-template-columns:repeat(auto-fill,minmax(240px,1fr));display:grid}.app-card{gap:var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-card);padding:var(--space-md);flex-direction:column;display:flex}.app-card__header{align-items:center;gap:var(--space-sm);display:flex}.app-card__icon{border-radius:var(--radius-sm);color:#fff;width:40px;height:40px;font-family:var(--font-heading);letter-spacing:.02em;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:inline-flex}.app-card__name{color:var(--color-text);font-family:var(--font-heading);margin:0;font-size:16px;font-weight:600}.app-card__role{color:var(--color-text-muted);margin:0;font-size:.8125rem}.app-card__description{color:var(--color-text-secondary);flex-grow:1;margin:0;font-size:.875rem;line-height:1.5}.app-card__open{border:1px solid var(--color-primary);border-radius:var(--radius-sm);background:var(--color-primary);color:#fff;justify-content:center;align-self:flex-start;align-items:center;padding:8px 16px;font-size:.875rem;font-weight:600;text-decoration:none;transition:background-color .12s,border-color .12s;display:inline-flex}.app-card__open:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.profile-panel{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-card);padding:var(--space-lg)}.profile-panel__heading{margin:0 0 var(--space-md);color:var(--color-text);font-family:var(--font-heading);font-size:16px;font-weight:700}.profile-panel__list{gap:var(--space-md);margin:0;display:grid}.profile-panel__item{gap:2px;display:grid}.profile-panel__label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.02em;margin:0;font-size:.75rem;font-weight:600}.profile-panel__value{color:var(--color-text);overflow-wrap:anywhere;margin:0;font-size:.9375rem}.security-panel{margin-top:var(--space-xl);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-card);padding:var(--space-lg)}.security-panel__description{margin:0 0 var(--space-md);color:var(--color-text-secondary);font-size:.875rem;line-height:1.5}.button-secondary{border:1px solid var(--color-border-hover);border-radius:var(--radius-md);background:var(--color-surface);min-height:44px;color:var(--color-text);font-family:var(--font-heading);cursor:pointer;justify-content:center;align-items:center;padding:11px 18px;font-weight:600;line-height:1.2;transition:background-color .12s,border-color .12s;display:inline-flex}.button-secondary:hover:not(:disabled){background:var(--color-page-bg);border-color:var(--color-text-muted)}.button-secondary:focus-visible{box-shadow:0 0 0 3px var(--color-focus-ring);outline:none}.button-secondary:disabled{cursor:wait;opacity:.68}.modal-overlay{padding:var(--space-lg);z-index:100;background:#1720337a;place-items:center;display:grid;position:fixed;inset:0}.modal-panel{width:100%;max-width:420px;max-height:calc(100vh - var(--space-2xl));border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-card);padding:var(--space-xl);overflow-y:auto}.modal-panel h2{margin:0 0 var(--space-lg);color:var(--color-text);font-family:var(--font-heading);font-size:18px;font-weight:700}.modal-actions{gap:var(--space-md);justify-content:flex-end;display:flex}.portal-page-status{min-height:100vh;padding:var(--space-xl);color:var(--color-text-secondary);place-items:center;display:grid}:root{color:var(--color-text);background:var(--color-page-bg);font-family:var(--font-body);font-synthesis:none}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input{font:inherit}.auth-shell{min-height:100vh;padding:var(--space-xl);place-items:center;display:grid}.auth-shell__container{width:min(100%,480px)}.auth-shell__card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-card);padding:var(--space-2xl) 36px}.auth-card-brand{width:100%;margin:0 0 var(--space-xl);justify-content:center;align-items:center;gap:18px;display:flex}.auth-card-brand__wordmark{width:118px;height:37px}.auth-card-brand__product{color:#023c84;font-family:var(--font-heading);letter-spacing:0;font-size:24px;font-weight:600}.eyebrow{margin:0 0 var(--space-sm);color:var(--color-text-muted);letter-spacing:.02em;text-transform:uppercase;font-size:.8125rem;font-weight:700}.activation-heading h1,.status-content h1{color:var(--color-text);font-family:var(--font-heading);letter-spacing:0;margin:0;font-size:24px;font-weight:700;line-height:1.25}.intro,.status-content p{margin:var(--space-sm) 0 0;color:var(--color-text-secondary);font-size:1rem;line-height:1.55}.intro strong{color:var(--color-text);overflow-wrap:anywhere}.activation-form{gap:var(--space-lg);margin-top:var(--space-xl);display:grid}.field{gap:var(--space-sm);display:grid}.field label{color:var(--color-text-secondary);font-size:.9375rem;font-weight:600}.field input{border:1px solid var(--color-border-hover);border-radius:var(--radius-md);background:var(--color-surface);width:100%;min-height:44px;color:var(--color-text);padding:10px 12px;font-size:1rem;transition:border-color .12s,box-shadow .12s}.password-field{position:relative}.password-field input{padding-right:44px}.password-toggle{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.password-toggle:hover{color:var(--color-primary);background:var(--color-page-bg)}.password-toggle:focus-visible{box-shadow:0 0 0 3px var(--color-focus-ring);outline:none}.field input:hover:not(:disabled){border-color:var(--color-text-muted)}.field input:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-ring);outline:none}.field input[aria-invalid=true]{border-color:var(--color-error)}.field input:disabled{background:var(--color-page-bg);cursor:wait}.requirements{color:var(--color-text-muted);margin:-4px 0 0;font-size:.875rem;line-height:1.5}.form-error{border-left:3px solid var(--color-error);background:var(--color-error-bg);color:var(--color-error);border-radius:0 var(--radius-sm) var(--radius-sm) 0;margin:-4px 0 0;padding:8px 12px;font-size:.875rem;line-height:1.5}.activation-form button[type=submit],.button-link{border:1px solid var(--color-primary);border-radius:var(--radius-md);background:var(--color-primary);color:#fff;min-height:44px;font-family:var(--font-heading);cursor:pointer;justify-content:center;align-items:center;padding:11px 18px;font-weight:600;line-height:1.2;text-decoration:none;transition:background-color .12s,border-color .12s;display:inline-flex}.activation-form button[type=submit]:hover:not(:disabled),.button-link:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.activation-form button[type=submit]:active:not(:disabled){background:var(--color-primary-active);border-color:var(--color-primary-active)}.activation-form button[type=submit]:focus-visible,.button-link:focus-visible{box-shadow:0 0 0 3px var(--color-focus-ring);outline:none}.activation-form button[type=submit]:disabled{cursor:wait;opacity:.68}.forgot-password{width:fit-content;margin:var(--space-lg) auto 0;color:var(--color-text-muted);text-decoration:underline;-webkit-text-decoration-color:var(--color-border-hover);text-decoration-color:var(--color-border-hover);text-underline-offset:3px;font-size:.875rem}.forgot-password:hover{color:var(--color-primary)}.forgot-password--back{text-align:center;margin:50px auto 0;display:block}.status-content{padding:8px 0 16px}.status-content .button-link{margin-top:28px}.loading-indicator{width:28px;height:28px;margin-bottom:var(--space-lg);border:3px solid #d7e1ed;border-top-color:var(--color-primary);border-radius:50%;animation:.8s linear infinite spin;display:block}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.loading-indicator{animation:none}}@media (width<=560px){.auth-shell{padding:var(--space-md);align-items:start}.auth-shell__card{margin-top:var(--space-md);padding:var(--space-lg) var(--space-md)}}
