:root{--hv-canvas: #f4f7fa;--hv-card: #ffffff;--hv-border: #dce4ee;--hv-head: #10233c;--hv-text: #33465c;--hv-muted: #5c7189;--hv-primary: #125aa3;--hv-primary-hi: #1769b5;--hv-input: #ffffff;--hv-input-bd: #c8d5e3;--hv-good-bg: #e3f4ea;--hv-good-tx: #1b7a45;--hv-bad-bg: #fbe9e7;--hv-bad-tx: #b23c30;--hv-shadow-lift: 0 1px 2px rgba(16, 35, 61, .07), 0 10px 28px rgba(16, 35, 61, .1);--hv-radius: 12px;--hv-radius-sm: 8px;--hv-font: "Inter", "Segoe UI", system-ui, -apple-system, sans-serif;color:var(--hv-text);background:var(--hv-canvas);font-family:var(--hv-font)}*{box-sizing:border-box}body{margin:0;min-width:320px}.shell{align-items:center;background:linear-gradient(135deg,#ffffffc7,#e7f1fb9e),var(--hv-canvas);display:flex;min-height:100vh;padding:28px}.panel{background:var(--hv-card);border:1px solid var(--hv-border);border-radius:var(--hv-radius);box-shadow:var(--hv-shadow-lift);margin:auto;max-width:460px;padding:32px;width:100%}.brand{color:var(--hv-primary);font-size:.78rem;font-weight:700;letter-spacing:.08em;margin-bottom:10px;text-transform:uppercase}h1{color:var(--hv-head);font-size:1.75rem;line-height:1.15;margin:0 0 12px}.status{color:var(--hv-muted);line-height:1.45;margin:0 0 22px}.status[data-tone=error]{color:var(--hv-bad-tx)}.form{display:grid;gap:16px}.form label{color:var(--hv-text);display:grid;font-size:.9rem;font-weight:650;gap:7px}.form input{background:var(--hv-input);border:1px solid var(--hv-input-bd);border-radius:var(--hv-radius-sm);color:var(--hv-head);font:inherit;min-height:44px;padding:10px 12px;width:100%}.form input:focus{border-color:var(--hv-primary-hi);box-shadow:0 0 0 3px #1769b526;outline:none}button,.button-link{align-items:center;background:var(--hv-primary);border:0;border-radius:var(--hv-radius-sm);color:#fff;cursor:pointer;display:inline-flex;font:inherit;font-weight:700;justify-content:center;min-height:44px;padding:10px 14px;text-decoration:none}button:hover:not(:disabled),.button-link:hover{background:var(--hv-primary-hi)}button:disabled{cursor:wait;opacity:.7}.secondary,.secondary-link{background:transparent;border:1px solid var(--hv-input-bd);color:var(--hv-primary)}.secondary:hover:not(:disabled),.secondary-link:hover{background:#f4f7fa}.form-intro,.hint,.message p,.enrollment p{color:var(--hv-muted);font-size:.92rem;line-height:1.45;margin:0}.hint{font-size:.82rem;margin-top:-8px}.form-error{background:var(--hv-bad-bg);border-radius:var(--hv-radius-sm);color:var(--hv-bad-tx);font-size:.9rem;margin:0;padding:10px 12px}.message,.enrollment{display:grid;gap:16px}.portal-return{color:var(--hv-primary);display:inline-block;font-size:.9rem;margin-top:20px}.message h2{color:var(--hv-head);font-size:1.05rem;margin:0}.enrollment{justify-items:center;margin-bottom:20px}.enrollment img{border:1px solid var(--hv-border);border-radius:var(--hv-radius-sm);max-width:100%}.enrollment .manual-key{background:var(--hv-canvas);border-radius:6px;font-family:ui-monospace,monospace;overflow-wrap:anywhere;padding:10px;width:100%}@media(max-width:560px){.shell{align-items:stretch;padding:0}.panel{border:0;border-radius:0;box-shadow:none;min-height:100vh;padding:28px 22px}}
