:root{color-scheme:light dark;--bg: #f4f5f7;--surface: #ffffff;--text: #14161a;--muted: #586070;--border: #dde1e8;--shadow: 0 1px 2px rgb(16 24 40 / 6%), 0 8px 24px rgb(16 24 40 / 6%);--success: #15803d;--danger: #b91c1c;--warning: #b45309;--font: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}@media(prefers-color-scheme:dark){:root{--bg: #0e1013;--surface: #17191d;--text: #f2f3f5;--muted: #a3a9b5;--border: #2a2e35;--shadow: 0 1px 2px rgb(0 0 0 / 40%), 0 8px 24px rgb(0 0 0 / 30%);--success: #4ade80;--danger: #f87171;--warning: #fbbf24}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:16px;line-height:1.5}.page{--accent: var(--accent-light);--on-accent: var(--on-accent-light);min-height:100dvh;display:flex;flex-direction:column;align-items:center;padding:16px 16px 24px;gap:16px}@media(prefers-color-scheme:dark){.page{--accent: var(--accent-dark);--on-accent: var(--on-accent-dark)}}.topbar{width:100%;max-width:440px;display:flex;justify-content:flex-end}.lang{display:inline-flex;border:1px solid var(--border);border-radius:999px;background:var(--surface);padding:2px}.lang-button{font:inherit;font-size:13px;font-weight:600;min-width:44px;min-height:32px;border:0;border-radius:999px;background:transparent;color:var(--muted);cursor:pointer}.lang-button[aria-pressed=true]{background:var(--accent);color:var(--on-accent)}.card{width:100%;max-width:440px;background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:inset 0 4px 0 var(--accent),var(--shadow);padding:28px 20px;margin:auto 0}@media(min-width:480px){.page{padding-top:24px}.card{padding:32px 32px 36px}}.brand{display:flex;align-items:center;gap:12px;margin-bottom:24px;min-height:44px}.logo{width:44px;height:44px;border-radius:10px;object-fit:contain;flex:none}.logo-initial{display:inline-flex;align-items:center;justify-content:center;background:var(--accent);color:var(--on-accent);font-weight:700;font-size:20px}.brand-name{font-weight:600;font-size:17px;overflow-wrap:anywhere}.title{margin:0 0 8px;font-size:22px;line-height:1.25;font-weight:700;overflow-wrap:anywhere}.description,.body,.hint,.notice{margin:0 0 12px;overflow-wrap:anywhere}.description{color:var(--muted)}.body p{margin:0 0 8px}.hint{color:var(--muted);font-size:14px}.email{color:var(--text);overflow-wrap:anywhere}.providers{display:grid;gap:12px;margin:20px 0 16px}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:0 20px;border:1px solid transparent;border-radius:12px;background:var(--accent);color:var(--on-accent);font:inherit;font-weight:600;text-decoration:none;cursor:pointer;transition:filter .15s ease}.button:hover:not(:disabled){filter:brightness(.94)}.button:disabled{opacity:.6;cursor:not-allowed}.provider{justify-content:flex-start;background:var(--surface);color:var(--text);border-color:var(--border);border-width:1.5px}.provider:hover:not(:disabled){border-color:var(--accent);filter:none}.button-secondary{background:transparent;color:var(--text);border-color:var(--border)}:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.alert{margin:0 0 12px;padding:12px 14px;border-radius:10px;border:1px solid var(--danger);color:var(--danger);font-size:15px}.notice{padding:12px 14px;border-radius:10px;border:1px solid var(--border);color:var(--muted)}.status{display:flex;flex-direction:column;align-items:flex-start}.status-icon{display:inline-flex;margin-bottom:12px;color:var(--muted)}.status[data-tone=success] .status-icon{color:var(--success)}.status[data-tone=danger] .status-icon{color:var(--danger)}.status[data-tone=warning] .status-icon{color:var(--warning)}.status .body{color:var(--muted);margin-bottom:4px}.warning-note{margin-top:12px;padding:10px 12px;border:1px solid var(--warning);border-left-width:4px;border-radius:8px;color:var(--text);font-size:14px}.status .actions{display:flex;flex-direction:column;gap:10px;width:100%;margin-top:20px}.footer{color:var(--muted);font-size:13px}.footer a{color:inherit;font-weight:600}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.loading{display:grid;gap:12px}.skeleton{border-radius:10px;background:var(--border);animation:pulse 1.4s ease-in-out infinite}.skeleton-title{height:28px;width:70%}.skeleton-line{height:18px;width:90%}.skeleton-button{height:48px}@keyframes pulse{50%{opacity:.5}}@media(prefers-reduced-motion:reduce){.skeleton{animation:none}.button{transition:none}}
