:root{--bg:#0b0c0e;--surface:#141619;--surface-2:#1c1f23;--text:#f3f1ea;--muted:#9aa0a6;--accent:#c9a95c;--border:#2a2e33;--danger:#e0795f;--radius:12px;--font-display:"Saira Condensed",system-ui,sans-serif;--font-body:"Inter",system-ui,sans-serif;--font-mono:"Space Mono",ui-monospace,monospace}*{box-sizing:border-box;margin:0;padding:0}body{background:radial-gradient(120% 80% at 50% -10%,#16181c 0,var(--bg) 60%);color:var(--text);font-family:var(--font-body);min-height:100vh;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.kicker{font-family:var(--font-mono);font-size:11px;letter-spacing:.28em;color:var(--accent)}.kicker,h1{text-transform:uppercase}h1{font-family:var(--font-display);font-weight:700;letter-spacing:.01em;line-height:1}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:14px 18px;border-radius:10px;cursor:pointer;font-family:var(--font-body);font-size:15px;font-weight:600;border:1px solid var(--border);background:var(--surface-2);color:var(--text);transition:transform .15s,border-color .2s,background .2s}.btn:hover:not(:disabled){transform:translateY(-1px);border-color:var(--accent)}.btn:disabled{opacity:.55;cursor:default}.btn--google{background:#fff;color:#1a1a1a;border-color:#fff}.btn--solid{background:var(--accent);border-color:var(--accent);color:#16130b}.field-l{display:grid;grid-gap:7px;gap:7px;font-size:13px;color:var(--muted);margin-bottom:14px}.field{width:100%;padding:13px 14px;border-radius:10px;background:var(--bg);border:1px solid var(--border);color:var(--text);font-family:var(--font-body);font-size:15px}.field:focus{outline:none;border-color:var(--accent)}.link{background:none;border:none;color:var(--muted);font:inherit;font-size:13px;cursor:pointer;padding:0}.link:hover{color:var(--accent)}.auth{min-height:100vh;display:grid;place-items:center;padding:24px}.auth__card{width:100%;max-width:410px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:38px 34px;overflow:hidden;box-shadow:0 30px 80px -40px #000}.brandline{height:3px;margin:-38px -34px 30px;background:linear-gradient(90deg,var(--accent),transparent 70%)}.auth__head h1{font-size:40px;margin:10px 0 8px}.auth__head p{color:var(--muted);font-size:14.5px}.auth__form{margin-top:26px}.auth__or{display:flex;align-items:center;gap:14px;color:var(--muted);font-size:12px;margin:18px 0}.auth__or:after,.auth__or:before{content:"";flex:1 1;height:1px;background:var(--border)}.auth__form form .btn--solid{margin-top:4px}.auth__form>.link{display:block;margin:16px auto 0}.auth__msg{margin-top:16px;padding:11px 13px;border-radius:9px;background:var(--surface-2);border:1px solid var(--border);font-size:13px;color:var(--text)}.auth__foot{margin-top:22px;font-family:var(--font-mono);font-size:11px;color:var(--muted);letter-spacing:.08em}.dash{max-width:1000px;margin:0 auto;padding:28px clamp(20px,5vw,48px) 80px}.dash__top{display:flex;align-items:center;justify-content:space-between;padding-bottom:22px;border-bottom:1px solid var(--border);flex-wrap:wrap;gap:14px}.brandmark{font-family:var(--font-display);font-weight:700;letter-spacing:.06em;font-size:22px}.brandmark span{color:var(--accent)}.dash__user{display:flex;align-items:center;gap:18px}.dash__email{font-family:var(--font-mono);font-size:12px;color:var(--muted)}.dash__body{padding-top:clamp(40px,7vw,72px)}.dash__body h1{font-size:clamp(44px,8vw,84px);margin-top:14px}.dash__empty{color:var(--muted);margin-top:22px;max-width:52ch;line-height:1.6}.dash__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));grid-gap:16px;gap:16px;margin-top:40px}.proj{display:flex;flex-direction:column;justify-content:space-between;gap:40px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:26px;min-height:170px;transition:transform .18s,border-color .2s}.proj:hover{transform:translateY(-3px);border-color:var(--accent)}.proj__name{font-family:var(--font-display);text-transform:uppercase;font-size:28px;font-weight:700;line-height:1}.proj__go{font-family:var(--font-mono);font-size:12px;color:var(--accent);letter-spacing:.06em}@media (max-width:480px){.auth__card{padding:30px 22px}}