.profile-gate[hidden],.shell[hidden]{display:none!important}
.profile-gate{min-height:100vh;display:grid;place-items:center;padding:20px}
.profile-card{width:min(460px,100%);background:white;border-radius:22px;padding:28px;box-shadow:0 18px 60px #073b4c22}
.profile-card .brand-mark{margin-bottom:16px}
.profile-card h1{margin:0 0 8px}
.profile-card p,.profile-card small{color:var(--muted)}
.profile-card label{display:grid;gap:7px;margin:16px 0}
.profile-card input{width:100%;border:1px solid #d4ddda;border-radius:12px;padding:12px;font:inherit}
.profile-card .consent{grid-template-columns:auto 1fr;align-items:start;font-size:13px}
.profile-card .consent input{width:18px;height:18px;margin:2px 0}
.profile-card button{width:100%;border:0;border-radius:12px;padding:12px;background:var(--teal);color:white;font:inherit;cursor:pointer}
.profile-error{color:var(--danger);font-size:13px;margin:10px 0}
.language-choice{border:1px solid #d4ddda;border-radius:12px;padding:10px 14px;margin:16px 0;display:flex;gap:22px}.language-choice legend{padding:0 6px;color:var(--muted);font-size:13px}.profile-card .language-choice label{display:flex;align-items:center;gap:6px;margin:0}.profile-card .language-choice input{width:18px;height:18px}
