:root{--bg: #0d1117;--bg-elevated: #161b22;--bg-input: #1c2330;--bg-hover: #212836;--border: #30363d;--border-strong: #3d444d;--text: #e6edf3;--text-secondary: #9da7b3;--text-muted: #6e7681;--accent: #4f8cff;--accent-hover: #6b9fff;--danger: #f85149;--radius: 8px;--font-sans: "Segoe UI", "Inter", system-ui, -apple-system, sans-serif;--font-mono: "Cascadia Code", Consolas, "Courier New", monospace}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:14px;-webkit-font-smoothing:antialiased}.auth-page{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:24px}.auth-card{width:100%;max-width:380px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:12px;padding:40px 32px}.auth-logo{font-size:22px;font-weight:700;letter-spacing:4px;text-align:center;color:var(--text);margin-bottom:8px}.auth-subtitle{text-align:center;color:var(--text-secondary);font-size:14px;margin-bottom:28px}.auth-form{display:flex;flex-direction:column;gap:16px}.auth-label{font-size:12px;font-weight:500;color:var(--text-secondary);margin-bottom:-8px}.auth-input{width:100%;padding:10px 12px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-family:inherit;font-size:14px;outline:none;transition:border-color .15s ease}.auth-input::placeholder{color:var(--text-muted)}.auth-input:focus{border-color:var(--accent)}.auth-button{display:block;width:100%;padding:10px 16px;margin-top:4px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-input);color:var(--text);font-family:inherit;font-size:14px;font-weight:500;cursor:pointer;text-align:center;transition:background .15s ease,border-color .15s ease}.auth-button:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border-strong)}.auth-button:disabled{opacity:.5;cursor:not-allowed}.auth-button.primary{background:var(--accent);border-color:var(--accent);color:#fff}.auth-button.primary:hover:not(:disabled){background:var(--accent-hover)}.auth-error{color:var(--danger);font-size:13px;text-align:center}.auth-hint{color:var(--text-secondary);font-size:13px;text-align:center;line-height:1.6;margin-bottom:24px}.auth-hint strong{color:var(--text)}.auth-footer{text-align:center;margin-top:20px;font-size:13px;color:var(--text-secondary)}.auth-link{color:var(--accent);text-decoration:none}.auth-link:hover{text-decoration:underline}@media(max-width:480px){.auth-card{padding:32px 20px}}
