:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--page:#ffffff;--ink:#20292f;--muted:#66737d;--line:#dce3e8;--blue:#006ab6;--card:rgba(255,255,255,.93);--input:#fff;--pattern:.12;--shadow:0 20px 56px #1e364426,0 3px 12px #1e364414}
@media(prefers-color-scheme:dark){:root{color-scheme:dark;--page:#17212a;--ink:#e7edf1;--muted:#a4b3bf;--line:#364651;--blue:#8ec9f3;--card:rgba(23,33,42,.94);--input:#17232d;--pattern:.13;--shadow:0 24px 64px #0009,0 4px 16px #0005}}
*{box-sizing:border-box}body{margin:0;background:var(--page);color:var(--ink);min-width:280px;-webkit-font-smoothing:antialiased}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible{outline:3px solid var(--blue);outline-offset:4px}button:active{transform:translateY(1px)}

main{pointer-events:none;position:relative;min-height:100svh;display:flex;align-items:center;justify-content:center;padding:90px 24px}.login-card{position:relative;pointer-events:auto;width:416px;max-width:100%;padding:34px 38px;background:var(--card);border:1px solid var(--line);border-radius:17px;box-shadow:var(--shadow);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.wordmark{display:block;object-fit:contain;width:192px;height:auto;margin:0 auto 23px}@media(prefers-color-scheme:dark){.wordmark{filter:brightness(0) invert(1)}}.intro{text-align:center;margin-bottom:30px}h1{font-size:26px;letter-spacing:-.035em;line-height:1.2;font-weight:550;margin:0 0 9px}.intro p{font-size:13px;color:var(--muted);line-height:1.5;margin:0}.field{margin-bottom:20px}label{font-size:12px;font-weight:550;line-height:1.5;display:block;margin-bottom:8px}.label-row{display:flex;justify-content:space-between;align-items:baseline;gap:10px}.text-button{padding:0;border:0;background:none;color:var(--blue);font-size:11px;text-underline-offset:3px}.text-button:hover{text-decoration:underline}input{width:100%;min-width:0;height:46px;border:1px solid var(--line);border-radius:7px;background:var(--input);color:var(--ink);padding:0 13px;font-size:13px;box-shadow:0 1px 2px #152f3f03}input::placeholder{color:var(--muted);opacity:.8}input:focus{border-color:var(--blue)}.password-wrap{position:relative}.password-wrap input{padding-right:45px}.reveal{position:absolute;inset:1px 1px 1px auto;border:0;background:transparent;width:43px;display:grid;place-items:center;color:var(--muted);border-radius:6px}.reveal svg{width:19px;height:19px}.submit{display:flex;align-items:center;justify-content:center;position:relative;gap:15px;background:#006ab6;color:white;border:1px solid #006ab6;border-radius:7px;width:100%;height:46px;font-size:13px;font-weight:550;margin-top:27px;box-shadow:0 2px 4px #006ab61a}.submit:hover{background:#005b9c}.submit svg{position:absolute;right:14px;width:19px;height:19px}@media(prefers-color-scheme:dark){.submit{background:#8ec9f3;border-color:#8ec9f3;color:#152531}.submit:hover{background:#abdafa}}#feedback{font-size:12px;line-height:1.6;color:var(--muted);padding:12px 0 0;margin:0}[hidden]{display:none!important}@media(max-width:480px){.login-card{padding:29px 25px;border-radius:14px}.wordmark{width:176px;margin-bottom:21px}main{padding:90px 20px}.intro{margin-bottom:27px}}
@media(prefers-reduced-transparency:reduce){.login-card{background:var(--input);backdrop-filter:none}}@media(prefers-contrast:more){.login-card{background:var(--input);border-color:var(--ink)}}

.legal-footer{position:absolute;bottom:18px;left:16px;right:16px;z-index:2;display:flex;justify-content:center;color:var(--muted)}
.legal-footer nav{display:flex;align-items:center;gap:7px;font-size:10px;line-height:1.5}
.legal-footer button{border:0;background:none;color:inherit;padding:8px 5px;font-size:10px;min-height:32px;text-underline-offset:3px}
.legal-footer button:hover{color:var(--blue);text-decoration:underline}
.legal-footer button:focus-visible,a:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
#close-policy{position:absolute;right:12px;top:12px;display:grid;place-items:center;width:32px;height:32px;padding:7px;border:0;border-radius:6px;background:transparent;color:var(--muted)}
#close-policy:hover{color:var(--ink);background:var(--input)}#close-policy svg{width:18px;height:18px}
#policy-title{font-size:23px;text-align:center;margin:0}#policy-title:focus{outline:none}
.policy-date{text-align:center;font-size:10px;color:var(--muted);margin:9px 0 22px}
.policy-copy{max-height:clamp(180px,44svh,360px);overflow:auto;overscroll-behavior:contain;padding:0 12px 4px 1px;font-size:12px;line-height:1.75;scrollbar-width:thin;scrollbar-color:var(--line) transparent}
.policy-copy:focus-visible{outline:2px solid var(--blue);outline-offset:4px}
.policy-copy p{margin:0 0 16px}.policy-copy h2{font-size:13px;line-height:1.4;letter-spacing:-.01em;font-weight:600;margin:23px 0 9px}.policy-copy h2:first-child{margin-top:0}
.policy-copy ul{padding-left:18px;margin:0 0 16px}.policy-copy li{margin-bottom:8px}.policy-copy a{color:var(--blue);text-underline-offset:3px;overflow-wrap:anywhere}.policy-copy strong{font-weight:600}.policy-copy code{font-size:11px;overflow-wrap:anywhere}
.policy-copy dt{font-weight:600;margin-top:12px}.policy-copy dd{margin:3px 0 12px}.draft-note{color:var(--muted);font-size:11px;padding-bottom:15px;border-bottom:1px solid var(--line)}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.recovery-row{display:flex;justify-content:center;margin-top:10px}.recovery-row .text-button{min-height:30px;padding:5px 10px}.recovery-row+.submit{margin-top:20px}

.login-card:has(#login-details:not([hidden])) .wordmark{margin-bottom:25px}#login-details h1{font-size:19.5px;margin-bottom:0}

.close-panel{position:absolute;right:12px;top:12px;width:32px;height:32px;border:0;border-radius:6px;background:transparent;color:var(--muted);font-size:24px;line-height:1}.close-panel:hover{color:var(--ink)}#recovery-title{font-size:23px;text-align:center}#recovery-title:focus{outline:none}.recovery-copy{font-size:12px;line-height:1.65;color:var(--muted);text-align:center;margin:12px 0 22px}#password-guidance{margin:9px 0 20px}button:disabled{cursor:wait;opacity:.6}#retry{display:block;margin:15px auto 0}#feedback:focus{outline:none}#product-root{position:relative;pointer-events:auto}

.veil{position:fixed;inset:0;pointer-events:none;background:radial-gradient(ellipse at 50% 48%,var(--page) 0%,transparent 68%);opacity:.55}

/* Shared loading pattern: mirrored from loading.css for the standalone login. */
/* Shared decorative background only: safe to load in the authenticated shell. */
.brand-symbol{position:absolute;width:0;height:0;overflow:hidden}.brand-field{position:fixed;inset:0;overflow:hidden}.brand-plane{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-32deg)}.brand-pattern{display:grid;grid-auto-rows:20px;animation:insight-brand-drift 29.1667s linear infinite;will-change:transform}.brand-logo{display:grid;place-items:center;width:80px;height:20px;color:color-mix(in srgb,var(--brand-pattern-ink,var(--ink,#20292f)) 12%,transparent);transition:color 1.2s ease;pointer-events:auto}.brand-logo svg{width:72px;height:24px;fill:currentColor;pointer-events:none}.brand-logo:hover{transition:color .08s ease;color:#006ab6}@keyframes insight-brand-drift{from{transform:translateX(0)}to{transform:translateX(-320px)}}
.brand-loading-mask{will-change:clip-path;contain:paint;position:fixed;inset:0;overflow:hidden;pointer-events:none;visibility:hidden;clip-path:polygon(100% 0,100% 0,100% 0,100% 0,100% 0)}.brand-loading-mask[data-brand-loading]{visibility:visible}.brand-loading-pattern .brand-logo{color:#006ab6;pointer-events:none}.brand-pattern[data-brand-loading] .brand-logo{pointer-events:none}
@media(prefers-reduced-motion:reduce){.brand-pattern{animation:none!important}}
@media(prefers-contrast:more){.brand-logo{color:color-mix(in srgb,var(--brand-pattern-ink,var(--ink,#20292f)) 6%,transparent)}}

a.submit{text-decoration:none}
