.kerno-auth{--paper:#ffffff;--ink-950:hsl(225 36% 7%);--ink-900:#111827;--ink-800:#1e293b;--ink-700:#334155;--ink-600:#475569;--ink-500:hsl(220 16% 43%);--ink-400:#7c8aa0;--ink-300:#b8c2d1;--ink-200:hsl(210 17% 91%);--ink-100:#f1f5f9;--ink-50:hsl(210 38% 98%);--cream:oklch(98.5% 0.006 90);--yellow:hsl(48 96% 53%);--yellow-soft:#fef9c3;--yellow-deep:#ca8a04;--green:oklch(58% 0.13 155);--green-deep:oklch(40% 0.16 155);--green-bg:oklch(95% 0.04 155);--green-soft:oklch(92% 0.06 155);--green-dark-mode:oklch(75% 0.15 155);--shadow-lg:0 24px 48px -12px rgba(15,23,42,0.12),0 8px 16px -8px rgba(15,23,42,0.08);--radius-sm:6px;--radius-lg:16px;--radius-xl:24px;--font-sans:var(--font-inter),"Inter",-apple-system,BlinkMacSystemFont,system-ui,sans-serif;--font-display:var(--font-onest),var(--font-inter-tight),"Inter",sans-serif;--font-brand:var(--font-onest),var(--font-inter-tight),"Inter",sans-serif;--font-mono:var(--font-jb-mono),"JetBrains Mono","SF Mono",Menlo,monospace;font-family:var(--font-sans);color:var(--ink-900);text-rendering:optimizeLegibility;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;background:var(--cream);position:relative;isolation:isolate}.kerno-auth *,.kerno-auth :after,.kerno-auth :before{box-sizing:border-box}.kerno-auth:before{content:"";position:absolute;inset:0;z-index:0;background-image:radial-gradient(circle at 18% 22%,rgba(250,204,21,.1),transparent 50%),radial-gradient(circle at 82% 78%,rgba(15,23,42,.04),transparent 55%);pointer-events:none}.kerno-auth .auth-form-col{width:100%;max-width:560px;min-height:100vh;background:transparent;display:flex;flex-direction:column;align-items:stretch;padding:0 24px;margin:0 auto;position:relative;z-index:1}.kerno-auth .auth-form-head{padding:28px 0;display:flex;align-items:center;justify-content:space-between;gap:16px}.kerno-auth .auth-brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink-950)}.kerno-auth .auth-brand-mark{width:32px;height:32px;border-radius:8px;background:var(--yellow);color:var(--ink-950);display:grid;place-items:center;font-family:var(--font-display);font-weight:800;font-size:17px;letter-spacing:-.02em}.kerno-auth .auth-brand-name{font-family:var(--font-brand);font-weight:700;font-size:18px;letter-spacing:-.02em;display:inline-flex;align-items:baseline;gap:5px}.kerno-auth .auth-brand-name .brand-tag{font-family:var(--font-mono);font-weight:500;font-size:10px;letter-spacing:.14em;text-transform:lowercase;color:var(--yellow-deep)}.kerno-auth .auth-form-meta{font-size:13px;color:var(--ink-600)}.kerno-auth .auth-form-meta a{color:var(--ink-950);font-weight:600;text-decoration:none;margin-left:4px;cursor:pointer}.kerno-auth .auth-form-meta a:hover{text-decoration:underline}.kerno-auth .auth-form-body{flex:1;display:flex;align-items:flex-start;justify-content:center;padding:8px 0 24px}.kerno-auth .auth-card{width:100%;max-width:500px;background:var(--paper);border:1px solid var(--ink-200);border-radius:var(--radius-xl);padding:36px 36px 32px;box-shadow:var(--shadow-lg)}.kerno-auth .auth-form-foot{padding:20px 0 32px;color:var(--ink-500);font-size:11.5px;display:flex;justify-content:space-between;align-items:center;max-width:500px;width:100%;margin:0 auto;font-family:var(--font-mono);letter-spacing:.04em}.kerno-auth .auth-form-foot a{color:var(--ink-700);text-decoration:none;margin-left:14px}.kerno-auth .auth-form-foot a:hover{text-decoration:underline}.kerno-auth .auth-eyebrow{font-family:var(--font-mono);font-size:11px;font-weight:500;color:var(--ink-500);text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px;display:inline-flex;align-items:center;gap:8px}.kerno-auth .auth-eyebrow .dot{width:6px;height:6px;border-radius:50%;background:var(--green)}.kerno-auth .auth-title{font-family:var(--font-display);font-size:32px;line-height:1.1;font-weight:700;letter-spacing:-.025em;color:var(--ink-950);margin:0 0 10px;text-wrap:pretty}.kerno-auth .auth-sub{font-size:14.5px;line-height:1.5;color:var(--ink-600);margin:0 0 28px;text-wrap:pretty}.kerno-auth .auth-field{display:block;margin-bottom:14px}.kerno-auth .auth-field-label{display:flex;align-items:baseline;justify-content:space-between;gap:8px;font-size:12.5px;font-weight:500;color:var(--ink-700);margin-bottom:6px;font-family:var(--font-sans)}.kerno-auth .auth-field-label a{font-size:12px;color:var(--ink-700);text-decoration:none;font-weight:500;cursor:pointer}.kerno-auth .auth-field-label a:hover{color:var(--ink-950);text-decoration:underline}.kerno-auth .auth-input{width:100%;height:44px;padding:0 14px;border:1px solid var(--ink-200);border-radius:10px;background:var(--paper);color:var(--ink-950);font-family:var(--font-sans);font-size:14px;transition:border-color .12s,box-shadow .12s}.kerno-auth .auth-input::-moz-placeholder{color:var(--ink-400)}.kerno-auth .auth-input::placeholder{color:var(--ink-400)}.kerno-auth .auth-input:hover{border-color:var(--ink-300)}.kerno-auth .auth-input:focus{outline:none;border-color:var(--ink-950);box-shadow:0 0 0 3px rgba(15,23,42,.08)}.kerno-auth .auth-input.has-error{border-color:oklch(60% .2 25);background:oklch(99% .01 25)}.kerno-auth .auth-input-group{position:relative}.kerno-auth .auth-input-group .auth-input{padding-right:44px}.kerno-auth .auth-input-affix{position:absolute;right:4px;top:4px;height:36px;padding:0 10px;background:transparent;border:0;color:var(--ink-500);font-size:12px;font-family:var(--font-sans);cursor:pointer;border-radius:7px;display:inline-flex;align-items:center}.kerno-auth .auth-input-affix:hover{color:var(--ink-950);background:var(--ink-50)}.kerno-auth .auth-help{font-size:12px;color:var(--ink-500);margin-top:6px;line-height:1.4}.kerno-auth .auth-help.error{color:oklch(45% .2 25);display:flex;align-items:flex-start;gap:6px}.kerno-auth .auth-strength{margin-top:8px;display:flex;align-items:center;gap:8px}.kerno-auth .auth-strength-bar{flex:1;height:4px;background:var(--ink-100);border-radius:2px;overflow:hidden}.kerno-auth .auth-strength-bar>span{display:block;height:100%;border-radius:2px;transition:width .2s,background .2s}.kerno-auth .auth-strength-label{font-family:var(--font-mono);font-size:10.5px;color:var(--ink-500);min-width:60px;text-align:right;text-transform:uppercase;letter-spacing:.06em}.kerno-auth .auth-strength.weak .auth-strength-bar>span{width:25%;background:oklch(60% .2 25)}.kerno-auth .auth-strength.fair .auth-strength-bar>span{width:50%;background:var(--yellow-deep)}.kerno-auth .auth-strength.strong .auth-strength-bar>span{width:80%;background:var(--green)}.kerno-auth .auth-strength.excellent .auth-strength-bar>span{width:100%;background:var(--green-deep)}.kerno-auth .auth-strength.weak .auth-strength-label{color:oklch(45% .2 25)}.kerno-auth .auth-strength.fair .auth-strength-label{color:var(--yellow-deep)}.kerno-auth .auth-strength.excellent .auth-strength-label,.kerno-auth .auth-strength.strong .auth-strength-label{color:var(--green-deep)}.kerno-auth .auth-btn{width:100%;height:46px;border-radius:10px;border:1px solid transparent;font-family:var(--font-sans);font-size:14.5px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:background .12s,border-color .12s,transform 80ms}.kerno-auth .auth-btn:active{transform:translateY(1px)}.kerno-auth .auth-btn.primary{background:var(--yellow);color:var(--ink-950);border-color:color-mix(in oklch,var(--yellow),black 8%);box-shadow:inset 0 -2px 0 rgba(0,0,0,.06)}.kerno-auth .auth-btn.primary:hover{background:#fde047}.kerno-auth .auth-btn.ghost{background:var(--paper);color:var(--ink-900);border-color:var(--ink-200)}.kerno-auth .auth-btn.ghost:hover{background:var(--ink-50);border-color:var(--ink-300)}.kerno-auth .auth-btn[disabled]{opacity:.55;cursor:not-allowed}.kerno-auth .auth-btn .spin,.kerno-auth .spin{width:16px;height:16px;border:2px solid;border-right:2px solid transparent;border-radius:50%;animation:kerno-auth-spin .72s linear infinite;display:inline-block}@keyframes kerno-auth-spin{to{transform:rotate(1turn)}}.kerno-auth .auth-submit-row{margin-top:18px}.kerno-auth .auth-divider{display:flex;align-items:center;gap:12px;margin:26px 0;color:var(--ink-500);font-family:var(--font-mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.12em}.kerno-auth .auth-divider:after,.kerno-auth .auth-divider:before{content:"";flex:1;height:1px;background:var(--ink-200)}.kerno-auth .auth-oauth{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:4px}.kerno-auth .auth-oauth.full{grid-template-columns:minmax(0,1fr)}.kerno-auth .oauth-btn{height:46px;border:1px solid var(--ink-200);background:var(--paper);border-radius:10px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 10px;font-family:var(--font-sans);font-size:13px;font-weight:500;white-space:nowrap;color:var(--ink-900);cursor:pointer;transition:background .12s,border-color .12s;position:relative}.kerno-auth .oauth-btn:hover{background:var(--ink-50);border-color:var(--ink-300)}.kerno-auth .oauth-btn[disabled]{opacity:.6;cursor:not-allowed}.kerno-auth .oauth-btn .oauth-glyph{width:18px;height:18px;display:grid;place-items:center}.kerno-auth .oauth-btn .oauth-glyph svg{width:18px;height:18px}.kerno-auth .oauth-btn.is-last-used{border-color:var(--ink-950);box-shadow:0 0 0 1px var(--ink-950)}.kerno-auth .auth-consent{margin-top:24px;font-size:11.5px;line-height:1.5;color:var(--ink-500);text-wrap:pretty}.kerno-auth .auth-consent--oauth{margin-top:12px;margin-bottom:4px;text-align:center}.kerno-auth .auth-consent a{color:var(--ink-700);text-decoration:underline;text-decoration-color:var(--ink-300);text-underline-offset:2px}.kerno-auth .auth-consent a:hover{color:var(--ink-950)}.kerno-auth .auth-checkbox-row{display:flex;align-items:flex-start;gap:10px;margin-top:14px;font-size:13px;color:var(--ink-700)}.kerno-auth .auth-checkbox-row input[type=checkbox]{width:16px;height:16px;margin-top:2px;accent-color:var(--ink-950);cursor:pointer;flex-shrink:0}.kerno-auth .auth-checkbox-row label[for]{cursor:pointer}.kerno-auth .auth-checkbox-row a{color:var(--ink-950);text-decoration:underline}.kerno-auth .auth-banner{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:10px;font-size:13px;line-height:1.5;margin-bottom:18px}.kerno-auth .auth-banner.error{background:oklch(97% .02 25);border:1px solid oklch(85% .1 25);color:oklch(40% .2 25)}.kerno-auth .auth-banner.warn{background:var(--yellow-soft);border:1px solid color-mix(in oklch,var(--yellow),black 12%);color:oklch(35% .1 95)}.kerno-auth .auth-alt-row{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:18px;padding-top:14px;border-top:1px dashed var(--ink-200);flex-wrap:wrap}.kerno-auth .auth-alt-link{display:inline-flex;align-items:center;gap:6px;background:transparent;border:0;padding:6px 8px;border-radius:var(--radius-sm);font-family:var(--font-sans);font-weight:500;font-size:12.5px;color:var(--ink-800);cursor:pointer;transition:background .12s ease,color .12s ease}.kerno-auth .auth-alt-link:hover{background:var(--ink-100);color:var(--ink-950)}.kerno-auth .auth-alt-link:focus-visible{outline:2px solid var(--yellow);outline-offset:2px}.kerno-auth .auth-alt-link svg{color:var(--ink-600)}.kerno-auth .auth-alt-link:hover svg{color:var(--ink-950)}.kerno-auth .auth-alt-link.auth-alt-link-muted{color:var(--ink-600);font-weight:500}.kerno-auth .last-used-pill{display:inline-flex;align-items:center;background:var(--yellow);color:var(--ink-950);font-family:var(--font-mono);font-weight:600;font-size:9.5px;letter-spacing:.06em;text-transform:uppercase;padding:2px 6px;border-radius:999px;line-height:1.2;margin-left:6px;white-space:nowrap}.kerno-auth .oauth-btn .last-used-pill{position:absolute;top:-7px;right:8px;margin-left:0;box-shadow:0 1px 0 rgba(0,0,0,.04)}@media (max-width:560px){.kerno-auth .auth-form-col{padding:0 16px}.kerno-auth .auth-card{padding:28px 22px 24px;border-radius:var(--radius-lg)}.kerno-auth .auth-oauth{grid-template-columns:1fr}}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter Fallback;src:local("Arial");ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.00%;size-adjust:107.12%}.__className_f367f3{font-family:Inter,Inter Fallback;font-style:normal}.__variable_f367f3{--font-inter:"Inter","Inter Fallback"}@font-face{font-family:Onest;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/7bb4ad34d7ebf0d7-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Onest;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/c1f853e4758089a8-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Onest;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/4c4943bfceab8361-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Onest;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/6e50af2f4c313e23-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Onest Fallback;src:local("Arial");ascent-override:92.20%;descent-override:28.99%;line-gap-override:0.00%;size-adjust:105.20%}.__className_d878d4{font-family:Onest,Onest Fallback;font-style:normal}.__variable_d878d4{--font-onest:"Onest","Onest Fallback"}@font-face{font-family:Inter Tight;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/c95a17d6aa1ccc69-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter Tight;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/84792440f5374347-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter Tight;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/10735954b8957dce-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter Tight;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/69c8297e91a203ed-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter Tight;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/32ec8d161d520037-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter Tight;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/ceda3e828136e1b8-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter Tight;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/103fc5fac08dcb15-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter Tight Fallback;src:local("Arial");ascent-override:100.51%;descent-override:25.03%;line-gap-override:0.00%;size-adjust:96.39%}.__className_a3c0d3{font-family:Inter Tight,Inter Tight Fallback;font-style:normal}.__variable_a3c0d3{--font-inter-tight:"Inter Tight","Inter Tight Fallback"}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/886030b0b59bc5a7-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/0aa834ed78bf6d07-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/67957d42bae0796d-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/f911b923c6adde36-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/939c4f875ee75fbb-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/bb3ef058b751a6ad-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:JetBrains Mono Fallback;src:local("Arial");ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.00%;size-adjust:134.59%}.__className_3c557b{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.__variable_3c557b{--font-jb-mono:"JetBrains Mono","JetBrains Mono Fallback"}