:root { color-scheme: light; font-family: Inter, ui-sans-serif, system-ui, sans-serif; background:#eef3f8; color:#172033; }
* { box-sizing:border-box; }
body { min-height:100vh; margin:0; display:grid; place-items:center; padding:24px; background:radial-gradient(circle at top,#d8ecff 0,#eef3f8 46%,#e8edf3 100%); }
.card { width:min(680px,100%); padding:38px; background:rgba(255,255,255,.96); border:1px solid #d9e1ea; border-radius:24px; box-shadow:0 20px 60px rgba(25,54,86,.14); }
.logo { width:68px; height:68px; }
.eyebrow { color:#1269d3; font-weight:750; text-transform:uppercase; letter-spacing:.1em; font-size:.75rem; margin:18px 0 6px; }
h1 { font-size:clamp(1.8rem,5vw,2.6rem); line-height:1.08; margin:0 0 14px; }
p { line-height:1.6; color:#4b586b; }
form { display:grid; gap:17px; margin:28px 0 18px; }
.prerequisite { display:grid; gap:7px; margin-top:20px; padding:15px; border:1px solid #b9d7fb; border-radius:12px; background:#eef7ff; }
.prerequisite span { color:#4b586b; line-height:1.5; }
.prerequisite a { color:#1269d3; font-weight:750; }
label { display:grid; gap:7px; font-weight:700; font-size:.9rem; }
input,textarea,select { width:100%; border:1px solid #cbd5e1; border-radius:11px; padding:12px 13px; font:inherit; background:white; }
.confirm { display:flex; grid-template-columns:auto 1fr; align-items:center; font-weight:600; }
.confirm input { width:auto; }
textarea { min-height:80px; resize:vertical; }
.grid { display:grid; grid-template-columns:1fr 1fr; gap:15px; }
button,.actions a { border:0; border-radius:12px; background:#1769e0; color:white; padding:13px 17px; font-weight:750; font-size:1rem; cursor:pointer; text-decoration:none; text-align:center; }
.activation { margin-top:20px; padding:18px; border:1px solid #b9d7fb; border-radius:14px; background:#eef7ff; }
.activation h2 { margin:0 0 8px; font-size:1.15rem; }
.activation ol { margin:0 0 15px; padding-left:21px; color:#4b586b; line-height:1.6; }
.activation-actions { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.activation-actions a { border-radius:12px; background:#1769e0; color:#fff; padding:13px 17px; font-weight:750; text-decoration:none; text-align:center; }
.activation-actions .secondary { background:#fff; color:#1769e0; border:1px solid #1769e0; }
.activation-status { margin:12px 0 0; font-weight:700; }
.activation-status.success { color:#08783e; }
.activation-status.error { color:#b42318; }
.activation-status.checking { color:#1269d3; }
.progress-steps { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin:20px 0; }
.progress-steps span { padding:10px; border-radius:10px; background:#e5eaf0; color:#677386; font-size:.85rem; font-weight:750; text-align:center; }
.progress-steps .done { background:#dcfce7; color:#08783e; }
.progress-steps .active { background:#dbeafe; color:#1269d3; }
.hidden { display:none !important; }
.actions a.disabled { opacity:.45; cursor:not-allowed; }
button { display:flex; align-items:center; justify-content:center; gap:10px; }
button img { width:24px; height:24px; }
button:disabled { opacity:.6; cursor:wait; }
#status { margin:0; color:#b42318; font-weight:650; }
small { display:block; color:#677386; line-height:1.5; }
dl { display:grid; grid-template-columns:150px 1fr; gap:9px; margin:24px 0; }
dt { font-weight:750; } dd { margin:0; } code { padding:4px 7px; background:#edf2f7; border-radius:6px; }
.warning { padding:12px; border-radius:10px; background:#fff5d6; color:#725600; }
.actions { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-top:22px; }
@media(max-width:580px){.card{padding:25px}.grid,.actions,.activation-actions,.progress-steps{grid-template-columns:1fr}dl{grid-template-columns:1fr;gap:3px}dd{margin-bottom:10px}}
