:root{--bg: #0f1419;--card: #ffffff;--text: #1a2027;--muted: #5c6770;--line: #e3e8ee;--primary: #1762d0;--primary-hover: #124ea8;--error: #c0392b;--ok: #1e8e3e;--radius: 10px}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:linear-gradient(160deg,#0f1419,#1c2733);color:var(--text);min-height:100vh}.auth-shell{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px 16px}.auth-card{width:100%;max-width:400px;background:var(--card);border-radius:var(--radius);padding:32px 28px;box-shadow:0 20px 50px #00000073}.auth-card.wide{max-width:560px}.brand{display:flex;align-items:center;gap:10px;margin-bottom:22px}.brand-mark{background:var(--primary);color:#fff;font-weight:700;font-size:13px;letter-spacing:.5px;border-radius:6px;padding:5px 8px}.brand-name{font-weight:600;font-size:15px;color:var(--muted)}h1{font-size:20px;margin:0 0 4px}.subtitle{color:var(--muted);font-size:14px;margin:0 0 20px}.kratos-form{display:flex;flex-direction:column;gap:14px}.field{display:flex;flex-direction:column;gap:5px}.field-label{font-size:13px;font-weight:600}.field input[type=text],.field input[type=email],.field input[type=password],.field input[type=tel],.field input[type=number]{border:1px solid var(--line);border-radius:8px;padding:11px 12px;font-size:15px;outline:none;transition:border-color .15s}.field input:focus{border-color:var(--primary)}.field.checkbox{flex-direction:row;align-items:center;gap:8px;font-size:14px}.field-msg{font-size:12.5px}.field-msg.error{color:var(--error)}.btn{border:none;border-radius:8px;padding:12px 14px;font-size:15px;font-weight:600;cursor:pointer;width:100%;transition:background .15s}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-hover)}.btn-secondary{background:#f1f4f8;color:var(--text);border:1px solid var(--line)}.btn-secondary:hover{background:#e7ecf3}.btn-oidc{background:#fff;color:var(--text);border:1px solid var(--line)}.btn-oidc:hover{background:#f6f8fa}.divider{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:12px;margin:18px 0}.divider:before,.divider:after{content:"";flex:1;height:1px;background:var(--line)}.messages{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.message{border-radius:8px;padding:10px 12px;font-size:13.5px}.message.error{background:#fdecea;color:var(--error)}.message.info,.message.success{background:#e8f4ec;color:var(--ok)}.links{margin-top:18px;display:flex;justify-content:space-between;font-size:13.5px}.links a,.section-card a{color:var(--primary);text-decoration:none}.links a:hover{text-decoration:underline}.section-card{border:1px solid var(--line);border-radius:var(--radius);padding:18px;margin-bottom:16px}.section-card h2{font-size:15px;margin:0 0 12px}.qr{text-align:center}.qr img{border:1px solid var(--line);border-radius:8px}.code-text code{display:block;background:#f6f8fa;border:1px solid var(--line);border-radius:6px;padding:8px 10px;font-size:13px;word-break:break-all;margin-top:4px}.loading{color:var(--muted);font-size:14px;text-align:center;padding:30px 0}.auth-footer{margin-top:18px;color:#6b7884;font-size:12px}
