*{box-sizing:border-box}html,body{color:#111827;background:#f3f4f6;min-height:100%;margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}a{color:inherit}.shell{justify-content:center;align-items:center;min-height:100vh;padding:24px 16px;display:flex}.wrap{width:100%;max-width:440px}.brand{text-align:center;margin-bottom:20px}.logo{color:#fff;background:#111827;border-radius:12px;justify-content:center;align-items:center;width:40px;height:40px;margin:0 auto 12px;font-size:13px;font-weight:700;display:flex}.muted{color:#6b7280;font-size:14px}.card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:24px;box-shadow:0 1px 2px #0000000a}.card h1{margin:0 0 6px;font-size:20px}.card p{margin:0 0 12px;line-height:1.5}.err{color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;padding:12px;font-size:14px}.ok{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:10px;padding:12px;font-size:14px}label{color:#374151;margin:12px 0 6px;font-size:13px;display:block}input{border:1px solid #d1d5db;border-radius:10px;width:100%;padding:10px 12px;font-size:15px}button,.btn{color:#fff;cursor:pointer;background:#111827;border:none;border-radius:10px;margin-top:16px;padding:10px 16px;font-size:14px;font-weight:600;text-decoration:none;display:inline-block}button:disabled{opacity:.6;cursor:not-allowed}.btn-ghost{color:#374151;background:0 0;border:1px solid #d1d5db;margin-left:8px}.mono{word-break:break-all;font-family:ui-monospace,Consolas,monospace;font-size:12px}
