*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--accent:#1e3a5f;--accent-light:#2a5a8f;--bg:#f8f9fa;--card-bg:#fff;--text:#333;--text-light:#666;--border:#e0e0e0;--success:#28a745;--error:#dc3545;--radius:12px;color:var(--text);background:var(--bg);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.5}body{justify-content:center;align-items:flex-start;min-height:100dvh;padding:16px;display:flex}#root{width:100%;max-width:420px}.portal{background:var(--card-bg,#fff);border-radius:var(--radius);margin-top:24px;padding:32px 24px;box-shadow:0 2px 16px #00000014}.header{text-align:center;margin-bottom:32px}.logo{max-width:160px;max-height:80px;margin-bottom:16px}.header h1{color:var(--accent);margin:0 0 8px;font-size:24px;font-weight:700}.welcome{color:var(--text-light,#666);font-size:15px}.choices{flex-direction:column;gap:12px;display:flex}.choice-btn{border:2px solid var(--border,#e0e0e0);border-radius:var(--radius);cursor:pointer;text-align:left;background:#fff;align-items:center;gap:16px;width:100%;padding:16px 20px;transition:all .2s;display:flex}.choice-btn:active{transform:scale(.98)}.choice-btn.primary{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 5%, white)}.choice-btn.primary:hover{background:color-mix(in srgb, var(--accent) 10%, white)}.choice-btn.secondary:hover{border-color:var(--accent)}.choice-icon{flex-shrink:0;font-size:28px}.choice-text{flex-direction:column;display:flex}.choice-text strong{color:var(--text,#333);font-size:16px}.choice-text small{color:var(--text-light,#666);font-size:13px}.back-btn{color:var(--accent);cursor:pointer;background:0 0;border:none;margin-bottom:16px;padding:0;font-size:15px}.subtitle{color:var(--text-light,#666);margin-bottom:24px;font-size:14px}form{flex-direction:column;gap:16px;display:flex}.field{flex-direction:column;gap:4px;display:flex}.field label{color:var(--text,#333);font-size:14px;font-weight:600}.field input{border:1.5px solid var(--border,#e0e0e0);border-radius:8px;outline:none;padding:12px 14px;font-size:16px;transition:border-color .2s}.field input:focus{border-color:var(--accent)}.consents{background:#f8f9fa;border-radius:8px;flex-direction:column;gap:10px;padding:16px;display:flex}.consent{color:var(--text-light,#666);cursor:pointer;align-items:flex-start;gap:10px;font-size:13px;display:flex}.consent.required span{color:var(--text,#333)}.consent input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent);flex-shrink:0;margin-top:2px}.consent a{color:var(--accent);text-decoration:underline}.submit-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;width:100%;padding:14px;font-size:16px;font-weight:600;transition:opacity .2s}.submit-btn:disabled{opacity:.5;cursor:not-allowed}.submit-btn:not(:disabled):active{opacity:.85}.result{text-align:center;padding:24px 0}.result-icon{color:#fff;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 16px;font-size:32px;font-weight:700;display:flex}.result.success .result-icon{background:var(--success,#28a745)}.result.error .result-icon{background:var(--error,#dc3545)}.result h2{margin-bottom:8px}.result p{color:var(--text-light,#666);margin-bottom:16px}.redirect-note{font-size:13px;font-style:italic}.legal{color:var(--text,#333);font-size:14px;line-height:1.6}.legal h2{color:var(--accent);margin-bottom:4px;font-size:20px}.legal h3{color:var(--text,#333);margin:20px 0 6px;font-size:15px;font-weight:600}.legal p{margin:6px 0}.legal ul{margin:6px 0;padding-left:20px}.legal li{margin:4px 0}.footer-note{text-align:center;color:#aaa;margin-top:32px;font-size:12px}
