:root{
  --bg:#f6f7fb; --card:#fff; --text:#101828; --muted:#667085; --line:#e7e9f2;
  --shadow:0 10px 30px rgba(16,24,40,.08);
}
*{box-sizing:border-box}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial;background:var(--bg);color:var(--text)}
.wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}
.card{width:min(520px,92vw);background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:24px}
h1{margin:0 0 14px 0}
.form{display:grid;gap:10px}
label{font-size:13px;color:var(--muted)}
input,select{padding:10px 12px;border-radius:12px;border:1px solid var(--line);outline:none}
.btn{padding:10px 14px;border-radius:12px;border:1px solid #1f2a37;background:#1f2a37;color:#fff;font-weight:700;cursor:pointer;text-decoration:none;display:inline-flex;justify-content:center}
.btn.ghost{background:transparent;color:#1f2a37}
.notice{border-radius:14px;padding:12px 14px;border:1px solid var(--line);margin:10px 0}
.notice.error{background:#fff5f5;border-color:#ffd1d1}
.notice.success{background:#f0fff4;border-color:#c6f6d5}
.muted{color:var(--muted)}
