*,::after,::before{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}:root{color-scheme:dark;--bg:#2b2b2b;--surface:#313335;--text:#c4c7ca;--muted:#8f9395;--border:#4b4f52;--accent:#239943;--accent-hover:#1c7a35;--accent-lo:rgba(35,153,67,.15)}body{background:var(--bg);color:var(--text);font-family:'Segoe UI',system-ui,-apple-system,sans-serif;min-height:100vh;min-height:100dvh}.logo-light{font-weight:300}#login-overlay{position:fixed;inset:0;background:var(--bg);z-index:500;display:flex;align-items:center;justify-content:center;padding:2.5rem 1.5rem;overflow-y:auto}#login-overlay::before{content:'';position:fixed;inset:0;background:radial-gradient(ellipse 70% 60% at 5% 55%,rgba(18,141,64,.09) 0,transparent 65%),radial-gradient(ellipse 55% 50% at 95% 80%,rgba(99,102,241,.06) 0,transparent 65%);pointer-events:none;z-index:0}.login-landing{display:flex;justify-content:center;max-width:440px;width:100%;position:relative;z-index:1}.login-card{background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:2.5rem;width:100%;box-shadow:0 8px 40px rgba(0,0,0,.45);position:relative;overflow:hidden}.login-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#239943,#1c7a35)}.login-logo{display:flex;align-items:center;gap:.65rem;margin-bottom:1.75rem}.login-card-heading{font-size:1.25rem;font-weight:800;color:var(--text);margin:0 0 .3rem;letter-spacing:-.03em}.login-card-sub{font-size:.85rem;color:var(--muted);margin:0 0 1.75rem}.login-logo-icon{display:flex;flex-shrink:0;width:3.6rem;height:3.6rem;margin:-.6rem -.5rem -.6rem -.55rem}.login-logo-icon svg{width:100%;height:100%;display:block}.login-logo-text{font-size:1.25rem;font-weight:500;letter-spacing:-.5px}.login-field{position:relative;margin-bottom:.9rem}.login-field label{display:block;font-size:.76rem;font-weight:600;color:var(--muted);margin-bottom:.35rem;letter-spacing:.02em;text-transform:uppercase}.login-field input{width:100%;background:var(--bg);border:1px solid var(--border);border-radius:10px;color:var(--text);font-size:1rem;padding:.8rem 1rem;outline:0;transition:border-color .2s,box-shadow .2s}.login-field input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-lo)}.login-field input::placeholder{color:var(--muted);opacity:.5}.login-field input:-webkit-autofill,.login-field input:-webkit-autofill:hover{-webkit-text-fill-color:var(--text);caret-color:var(--text);-webkit-box-shadow:0 0 0 100px var(--bg) inset;box-shadow:0 0 0 100px var(--bg) inset;transition:border-color .2s,background-color 600000s,color 600000s}.login-field input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 100px var(--bg) inset,0 0 0 3px var(--accent-lo);box-shadow:0 0 0 100px var(--bg) inset,0 0 0 3px var(--accent-lo)}.login-btn{width:100%;background:var(--accent);color:#fff;border:none;border-radius:999px;padding:.875rem;font-size:.95rem;cursor:pointer;margin-top:.6rem;transition:background .15s,box-shadow .15s,transform .1s;letter-spacing:.03em;box-shadow:0 4px 16px rgba(18,141,64,.4)}.login-btn:hover{background:var(--accent-hover);box-shadow:0 6px 22px rgba(18,141,64,.5);transform:translateY(-1px)}.login-btn:active{transform:translateY(0)}.login-btn:disabled{opacity:.6;cursor:default;transform:none;box-shadow:none}.login-error{color:#f87171;font-size:.84rem;margin-top:.75rem;text-align:center;min-height:1.2em}@media (max-width:768px){#login-overlay{align-items:flex-start;padding:2rem 1.25rem 3rem}#login-overlay::before{background:radial-gradient(ellipse 130% 45% at 50% 0,rgba(18,141,64,.14) 0,transparent 60%)}.login-landing{margin:auto}.login-card{padding:2rem 1.5rem}.login-card-heading{font-size:1.1rem}}