.auth-body{--auth-green-900:#053d22;--auth-green-800:#075c32;--auth-green-700:#0a7a3d;--auth-green-600:#0e8f48;--auth-green-100:#e3f4ea;--auth-bg:#f5f7f6;--auth-surface:#fff;--auth-ink:#0f1d16;--auth-ink-2:#4b5a52;--auth-ink-3:#7b8a82;--auth-border:#d9e1dc;--auth-border-strong:#b9c6be;--auth-focus:rgba(14,143,72,.18);--auth-error:#c0392b;--auth-error-bg:#fdecea;--auth-info-bg:#e8f1fb;--auth-info:#1f5fa8;margin:0;min-height:100vh;background:var(--auth-bg);color:var(--auth-ink);font-family:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;-webkit-font-smoothing:antialiased}@media(prefers-color-scheme:dark){.auth-body{--auth-bg:#0d1411;--auth-surface:#131c18;--auth-ink:#e8efeb;--auth-ink-2:#a9b8b0;--auth-ink-3:#7f8f87;--auth-border:#26332d;--auth-border-strong:#33443c;--auth-focus:rgba(46,196,113,.25);--auth-green-700:#16a35a;--auth-green-600:#1cb866;--auth-error:#ff8a7a;--auth-error-bg:rgba(192,57,43,.15);--auth-info-bg:rgba(31,95,168,.18);--auth-info:#8cbcf2}}.auth-shell{display:grid;grid-template-columns:minmax(420px,1.05fr) 1fr;min-height:100vh}.auth-brand{position:relative;overflow:hidden;color:#fff;background:radial-gradient(circle at 15% 10%,rgba(255,255,255,.1),transparent 40%),radial-gradient(circle at 90% 85%,rgba(255,214,102,.12),transparent 45%),linear-gradient(155deg,#075c32 0%,#053d22 55%,#032816 100%)}.auth-brand::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.08) 1px,transparent 1px);background-size:22px 22px;mask-image:linear-gradient(180deg,transparent,#000 30%,#000 70%,transparent);-webkit-mask-image:linear-gradient(180deg,transparent,#000 30%,#000 70%,transparent)}.auth-brand::after{content:"";position:absolute;width:520px;height:520px;right:-170px;bottom:-170px;background:url("/images/coa-logo.png") center/contain no-repeat;opacity:.06;filter:grayscale(1) brightness(3)}.auth-brand-inner{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:space-between;height:100%;padding:48px 56px;gap:40px}.auth-brand-top{display:flex;align-items:center;gap:14px}.auth-seal{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:#fff;box-shadow:0 0 0 4px rgba(255,255,255,.15),0 8px 24px rgba(0,0,0,.25)}.auth-seal img{width:56px;height:56px}.auth-brand-org{font-size:.8rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;opacity:.85}.auth-brand-body h1{margin:0 0 16px;max-width:14ch;font-size:clamp(2rem,3.2vw,2.9rem);font-weight:700;line-height:1.12;letter-spacing:-.02em;color:#fff}.auth-brand-lead{max-width:40ch;margin:0 0 32px;font-size:1.05rem;line-height:1.6;color:rgba(255,255,255,.78)}.auth-features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:520px;margin:0;padding:0;list-style:none}.auth-features li{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:rgba(255,255,255,.06);backdrop-filter:blur(4px);font-size:.9rem;line-height:1.35}.auth-features i{display:grid;flex:none;place-items:center;width:34px;height:34px;border-radius:9px;background:rgba(255,214,102,.16);color:#ffd666;font-size:.95rem}.auth-brand-foot{font-size:.85rem;color:rgba(255,255,255,.6)}.auth-main{display:flex;align-items:center;justify-content:center;padding:48px 24px;background:var(--auth-surface)}.auth-panel{width:100%;max-width:400px}.auth-mobile-brand{display:none}.auth-heading h2{margin:0 0 8px;font-size:1.75rem;font-weight:700;letter-spacing:-.02em;color:var(--auth-ink)}.auth-heading p{margin:0 0 32px;color:var(--auth-ink-2)}.auth-form{display:flex;flex-direction:column;gap:20px}.auth-field label,.auth-label-row label{display:block;margin-bottom:8px;font-size:.875rem;font-weight:600;color:var(--auth-ink)}.auth-label-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.auth-input{position:relative;display:flex;align-items:center}.auth-input>i{position:absolute;left:15px;color:var(--auth-ink-3);font-size:.9rem;pointer-events:none;transition:color .15s}.auth-input input{width:100%;height:48px;padding:0 46px 0 42px;border:1px solid var(--auth-border);border-radius:10px;background:var(--auth-surface);color:var(--auth-ink);font:inherit;font-size:.95rem;transition:border-color .15s,box-shadow .15s}.auth-input input::placeholder{color:var(--auth-ink-3)}.auth-input input:hover{border-color:var(--auth-border-strong)}.auth-input input:focus{outline:0;border-color:var(--auth-green-600);box-shadow:0 0 0 4px var(--auth-focus)}.auth-input:focus-within>i{color:var(--auth-green-600)}.auth-input input.input-validation-error{border-color:var(--auth-error)}.auth-eye{position:absolute;right:6px;display:grid;place-items:center;width:36px;height:36px;border:0;border-radius:8px;background:transparent;color:var(--auth-ink-3);cursor:pointer}.auth-eye:hover{color:var(--auth-ink);background:var(--auth-bg)}.auth-eye:focus-visible{outline:2px solid var(--auth-green-600);outline-offset:1px}.auth-error{display:block;margin-top:6px;font-size:.8rem;color:var(--auth-error)}.auth-error:empty{display:none}.auth-check{display:inline-flex;align-items:center;gap:10px;margin-top:-4px;font-size:.9rem;color:var(--auth-ink-2);cursor:pointer;user-select:none}.auth-check input{width:18px;height:18px;margin:0;accent-color:var(--auth-green-700);cursor:pointer}.auth-link{font-size:.875rem;font-weight:600;color:var(--auth-green-700);text-decoration:none}.auth-link:hover{text-decoration:underline}.auth-submit{position:relative;display:inline-flex;align-items:center;justify-content:center;height:50px;margin-top:4px;border:0;border-radius:10px;background:var(--auth-green-700);color:#fff;font:inherit;font-size:1rem;font-weight:600;cursor:pointer;box-shadow:0 1px 2px rgba(5,61,34,.2),0 8px 20px -8px rgba(10,122,61,.6);transition:background .15s,transform .05s,box-shadow .15s}.auth-submit:hover{background:var(--auth-green-800)}.auth-submit:active{transform:translateY(1px)}.auth-submit:focus-visible{outline:0;box-shadow:0 0 0 4px var(--auth-focus)}.auth-spinner{display:none;width:20px;height:20px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:auth-spin .7s linear infinite}.auth-submit.is-loading{pointer-events:none;opacity:.9}.auth-submit.is-loading .auth-submit-text{display:none}.auth-submit.is-loading .auth-spinner{display:inline-block}@keyframes auth-spin{to{transform:rotate(360deg)}}.auth-secondary{height:46px;padding:0 16px;border:1px solid var(--auth-border);border-radius:10px;background:var(--auth-surface);color:var(--auth-ink);font:inherit;font-weight:600;cursor:pointer}.auth-secondary:hover{background:var(--auth-bg)}.auth-divider{display:flex;align-items:center;gap:12px;margin:28px 0 16px;font-size:.8rem;color:var(--auth-ink-3)}.auth-divider::before,.auth-divider::after{content:"";flex:1;height:1px;background:var(--auth-border)}.auth-providers{display:grid;gap:10px}.auth-alert{display:flex;gap:12px;margin-bottom:20px;padding:12px 14px;border-radius:10px;font-size:.9rem;line-height:1.45}.auth-alert>i{margin-top:3px}.auth-alert>div{display:flex;flex-direction:column;gap:2px}.auth-alert.is-error{background:var(--auth-error-bg);color:var(--auth-error)}.auth-alert.is-info{background:var(--auth-info-bg);color:var(--auth-info)}.auth-footnote{margin:28px 0 0;text-align:center;font-size:.9rem;color:var(--auth-ink-2)}.auth-copyright{margin:40px 0 0;text-align:center;font-size:.75rem;color:var(--auth-ink-3)}.auth-back{display:inline-flex;align-items:center;gap:8px;margin-bottom:28px;font-size:.875rem;font-weight:600;color:var(--auth-ink-2);text-decoration:none}.auth-back:hover{color:var(--auth-green-700)}.auth-icon-badge{display:grid;place-items:center;width:52px;height:52px;margin-bottom:20px;border-radius:14px;background:var(--auth-green-100);color:var(--auth-green-700);font-size:1.25rem}@media(prefers-color-scheme:dark){.auth-icon-badge{background:rgba(22,163,90,.15)}}a.auth-submit{width:100%;text-decoration:none}a.auth-submit:hover{color:#fff}@media(max-width:991.98px){.auth-shell{grid-template-columns:1fr}.auth-brand{display:none}.auth-main{align-items:flex-start;padding:40px 16px;background:var(--auth-bg)}.auth-panel{max-width:440px;padding:32px 24px;border:1px solid var(--auth-border);border-radius:16px;background:var(--auth-surface);box-shadow:0 10px 30px -12px rgba(5,61,34,.18)}.auth-mobile-brand{display:flex;align-items:center;gap:12px;margin-bottom:28px;padding-bottom:20px;border-bottom:1px solid var(--auth-border)}.auth-mobile-brand img{width:48px;height:48px;flex:none}.auth-mobile-brand strong{display:block;font-size:1.05rem;color:var(--auth-green-700)}.auth-mobile-brand span{display:block;font-size:.8rem;line-height:1.35;color:var(--auth-ink-2)}}@media(max-width:380px){.auth-panel{padding:24px 16px}}@media(prefers-reduced-motion:reduce){.auth-spinner{animation-duration:1.6s}.auth-input input,.auth-submit{transition:none}}