:root{color:#20252b;background:#f7f8f4;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--green: #0f6b4f;--green-dark: #0a3d31;--red: #c83d35;--blue: #174f8a;--ink: #20252b;--muted: #5f6872;--line: #dfe4dc;--surface: #ffffff}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}a{color:inherit;text-decoration:none}button,input{font:inherit}button{align-items:center;background:transparent;cursor:pointer;display:inline-flex;justify-content:center}img{display:block}.auth-shell{min-height:100vh;padding:24px}.auth-topbar{align-items:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f7f8f4f0;border:1px solid rgba(223,228,220,.88);border-radius:8px;box-shadow:0 12px 30px #182a220f;display:flex;justify-content:space-between;margin:0 auto;max-width:1120px;padding:12px;position:sticky;top:12px;z-index:10}.brand{align-items:center;color:var(--green-dark);display:flex;font-size:1rem;font-weight:800;gap:10px}.brand-mark{align-items:center;aspect-ratio:1;background:var(--green);border-radius:50%;color:#fff;display:inline-flex;font-size:.78rem;justify-content:center;width:38px}.topbar-actions{align-items:center;display:flex;gap:10px}.language-control{position:relative}.language-trigger,.language-option{align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:8px;color:var(--ink);cursor:pointer;display:flex;font-size:.9rem;font-weight:750;gap:8px;min-height:40px;padding:9px 12px}.language-trigger{min-width:82px}.language-trigger:hover,.language-trigger:focus-visible,.language-option:hover,.language-option:focus-visible{border-color:#c7d1c5;box-shadow:0 0 0 3px #0f6b4f1f;outline:none}.language-trigger img,.language-option img{border-radius:3px;box-shadow:0 0 0 1px #20252b1a;height:16px;object-fit:cover;width:24px}.language-menu{background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:0 16px 32px #182a221f;display:grid;gap:6px;min-width:100%;padding:6px;position:absolute;right:0;top:calc(100% + 8px);z-index:20}.language-menu[hidden]{display:none}.language-option{box-shadow:none;justify-content:flex-start;width:100%}.language-option[aria-current=true]{background:#e9efe8;color:var(--green-dark)}.auth-layout{display:grid;grid-template-columns:minmax(0,520px);justify-content:center;margin:86px auto 0;max-width:1120px}.auth-panel{background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:0 20px 50px #182a2214}.auth-panel{padding:28px}.auth-tabs{background:#edf2ea;border-radius:8px;display:grid;gap:6px;grid-template-columns:repeat(2,minmax(0,1fr));padding:6px}.auth-tab{background:transparent;border:1px solid transparent;border-radius:8px;color:var(--muted);font-weight:750;min-height:42px}.auth-tab[aria-selected=true]{background:var(--surface);border-color:var(--line);color:var(--green-dark);box-shadow:0 8px 20px #182a2214}.auth-heading{margin-top:34px}.eyebrow{color:var(--red);font-size:.82rem;font-weight:850;margin:0 0 12px;text-transform:uppercase}h1{color:var(--green-dark);font-size:clamp(2.5rem,6vw,4.5rem);letter-spacing:0;line-height:1.06;margin:0}.auth-heading p:last-child{color:var(--muted);font-size:1.05rem;line-height:1.55;margin:18px 0 0}.auth-form{display:grid;gap:16px;margin-top:30px}.auth-form label{color:var(--ink);display:grid;font-weight:750;gap:8px}.auth-form input{background:#fbfcf8;border:1px solid var(--line);border-radius:8px;color:var(--ink);width:100%;min-height:48px;padding:12px 14px}.auth-form input:focus,.submit-button:focus-visible,.auth-tab:focus-visible,.password-toggle:focus-visible,.alternate-action button:focus-visible{border-color:#c7d1c5;box-shadow:0 0 0 3px #0f6b4f1f;outline:none}.password-field{display:grid;grid-template-columns:minmax(0,1fr) 44px;position:relative}.password-field input{border-bottom-right-radius:0;border-top-right-radius:0}.password-toggle{background:#fbfcf8;border:1px solid var(--line);border-left:0;border-radius:0 8px 8px 0;color:var(--green-dark);min-height:48px;padding:0}.password-toggle svg{fill:none;height:20px;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2;width:20px}.password-toggle svg circle{fill:none}.password-guidance{background:#f6f8f3;border:1px solid var(--line);border-radius:8px;padding:14px}.password-guidance p{color:var(--ink);font-weight:800;margin:0 0 10px}.password-guidance ul{display:grid;gap:8px;list-style:none;margin:0;padding:0}.password-guidance li{align-items:center;color:var(--muted);display:flex;font-size:.92rem;gap:8px}.password-guidance li span{align-items:center;border:1px solid var(--line);border-radius:50%;display:inline-flex;flex:0 0 22px;font-size:.78rem;height:22px;justify-content:center;width:22px}.password-guidance li[data-valid=true]{color:var(--green-dark);font-weight:750}.password-guidance li[data-valid=true] span{background:var(--green);border-color:var(--green);color:#fff}.form-message{border-radius:8px;color:var(--muted);line-height:1.45;margin:0;min-height:0}.form-message:not(:empty){border:1px solid var(--line);padding:12px 14px}.form-message[data-state=error]{background:#fff3f1;border-color:#f0c2bd;color:#9b2d25}.form-message[data-state=success]{background:#eef7f1;border-color:#b9ddc6;color:var(--green-dark)}.form-message[data-state=info]{background:#f2f6fb;border-color:#c8d9ec;color:var(--blue)}.verification-actions{background:#f6f8f3;border:1px solid var(--line);border-radius:8px;display:grid;gap:12px;padding:14px}.verification-actions p{color:var(--muted);line-height:1.5;margin:0}.secondary-submit-button,.dev-verification-link{border-radius:8px;font-weight:800;min-height:42px;padding:10px 12px}.secondary-submit-button{border:1px solid var(--line);color:var(--green-dark);justify-self:start}.dev-verification-link{align-items:center;border:1px solid #c8d9ec;color:var(--blue);display:inline-flex;justify-self:start}.submit-button{background:var(--green);border:1px solid var(--green);border-radius:8px;color:#fff;font-weight:800;min-height:50px;margin-top:6px}.alternate-action{align-items:center;color:var(--muted);display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 0}.alternate-action button{background:transparent;border:0;color:var(--green-dark);font-weight:800;padding:0}@media (max-width: 840px){.auth-shell{padding:18px}.auth-layout{grid-template-columns:1fr;margin-top:56px}}@media (max-width: 520px){.auth-topbar{align-items:stretch;flex-direction:column;gap:12px}.topbar-actions{justify-content:flex-end}.auth-panel{padding:20px}h1{font-size:2.65rem;line-height:1.1}}
