/* Scoped to the unified public registration form and its page. */
body.vg-registration-page{background-color:#edf5f3;background-image:url('../../pages_vg/myregistration/myregistration.jpg')}
body.vg-registration-page .mr-shell{width:min(100%,860px)}
body.vg-registration-page .mr-app{background:none;border:0;box-shadow:none;backdrop-filter:none}
body.vg-registration-page .mr-topbar{background:none;border:0;padding:0 4px 18px;justify-content:space-between;gap:16px}
.vg-registration-brand{font:700 17px Arial,sans-serif;letter-spacing:1.5px;color:#fff;text-shadow:0 1px 4px #14333b}
body.vg-registration-page .mr-footer{color:#fff;text-shadow:0 1px 4px #14333b}
body.vg-registration-page .mr-language{width:230px;max-width:57%}
body.vg-registration-page .language-picker-toggle{min-height:44px;padding:8px 12px}
body.vg-registration-page .mr-body{padding:0}
body.vg-registration-page .mr-register{padding:0!important;background:#fff;border:1px solid #dce8e9;border-radius:24px;box-shadow:0 18px 60px #123c4210}
body.vg-registration-page .mr-register>.mr-section-head{display:none}
body.vg-registration-page .mr-register-panel{padding:0!important;margin:0!important}
body.vg-registration-page .mr-register-note{margin:0 28px 20px}
.vg-registration{box-sizing:border-box;max-width:860px;width:100%;margin:0 auto;padding:28px 32px;color:#14333b;font:15px/1.45 Arial,sans-serif;text-align:left}
.vg-registration *{box-sizing:border-box}
.vg-registration .vg-role-switch{display:grid;grid-template-columns:1fr 1fr;gap:5px;background:#eff5f4;border:1px solid #e4edec;padding:5px;border-radius:14px}
.vg-registration .vg-role-switch button{padding:13px 8px;min-width:0;min-height:44px;border:0;border-radius:10px;background:transparent;box-shadow:none;color:#526d73;font:700 16px Arial,sans-serif;cursor:pointer}
.vg-registration .vg-role-switch button[aria-pressed=true]{background:#00a8af;color:#fff}
.vg-registration .vg-registration-title{font:700 27px/1.25 Arial,sans-serif;letter-spacing:-.5px;margin:23px 0 17px;color:#14333b}
.vg-registration .vg-sponsor-line{display:flex;align-items:center;flex-wrap:wrap;gap:5px 9px;padding:0;margin:0 0 22px;background:transparent;border:0;border-radius:0;font-size:13px}
.vg-registration .vg-sponsor-label{color:#627d80;font-size:12px}
.vg-registration .vg-sponsor-number{white-space:nowrap;color:#526d73;font-weight:600}
.vg-registration #sponsor_name{font-size:13px;font-weight:600;overflow-wrap:anywhere}
.vg-registration .vg-sponsor-id-label{display:flex;align-items:center;gap:6px;margin:0;max-width:100%;min-width:0}
.vg-registration .vg-sponsor-id-label input{width:165px!important;min-width:0;min-height:38px!important;height:38px!important;padding:7px 9px!important;margin:0!important;font-size:14px!important;border:1px solid #cddfe0!important;border-radius:8px!important;box-shadow:none!important}
.vg-registration .vg-registration-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px 18px}
.vg-registration .vg-field{display:flex;flex-direction:column;min-width:0;margin:0;font-weight:normal}
.vg-registration .vg-field>span:first-child,.vg-registration .vg-field>label{font:600 15px/1.4 Arial,sans-serif;margin:0 0 6px;color:#14333b}
body .vg-registration .vg-field input,body .vg-registration .vg-field select:not(.mr-country-native){width:100%!important;max-width:100%!important;height:40px;min-height:40px;margin:0!important;padding:7px 12px!important;border:1px solid #d3dfe1!important;border-radius:10px!important;background:#fff!important;color:#14333b!important;font:16px Arial,sans-serif!important;box-shadow:none!important}
body .vg-registration input:focus{border-color:#00a8af!important;outline:0;box-shadow:0 0 0 3px #00a8af15!important}
.vg-registration .vg-field-heading{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:2px 8px}
.vg-registration .vg-field-heading>span:first-child{font:inherit}
.vg-registration .vg-field-status{font:600 13px/1.4 Arial,sans-serif;margin:0;margin-inline-start:auto;text-align:end;max-width:100%;overflow-wrap:anywhere;color:#b32929}
.vg-registration .vg-field-status:empty{display:none}
body .vg-registration .vg-field small{font:13px/1.5 Arial,sans-serif;color:#62777d;margin:6px 0 0!important}
.vg-registration .vg-field-status[data-state=free]{color:#367b57}
body .vg-registration .mr-country-search{margin:0}
body .vg-registration .mr-country-button{min-height:40px;height:40px;padding:7px 12px;border:1px solid #d3dfe1;border-radius:10px;box-shadow:none;font-size:16px}
body .vg-registration .vg-reg-agreement{font:13px/1.55 Arial,sans-serif;color:#62777d;margin:19px 0 14px;text-align:left}
body .vg-registration .vg-reg-agreement a{display:inline;margin:0;color:#00818b}
.vg-registration .vg-registration-submit{display:block;background:#00a8af;color:#fff;border:0;border-radius:11px;width:100%;min-height:48px;font:700 16px Arial,sans-serif;cursor:pointer}
.vg-registration .vg-registration-submit:hover{background:#008e98}
.vg-registration .vg-registration-submit:disabled{opacity:.6;cursor:wait}
.vg-registration [hidden]{display:none!important}
.vg-registration .vg-registration-error{font-size:13px;color:#a43131;background:#fff4f4;border-radius:9px;padding:10px 12px;margin:0 0 12px}
.vg-registration .mr-email-warning{font:12px/1.45 Arial,sans-serif;margin:6px 0 0}
.vg-registration button:focus-visible{outline:3px solid #9bdde0;outline-offset:3px}
body .mr-register-panel form.vg-registration{width:100%!important;max-width:860px!important;padding:28px 32px!important}
body .vg-registration .vg-role-switch{margin:0!important}
body .vg-registration .vg-role-switch button{margin:0!important;background:transparent!important;color:#526d73!important;box-shadow:none!important;border-radius:10px!important;padding:13px 8px!important}
body .vg-registration .vg-role-switch button[aria-pressed=true]{background:#00a8af!important;color:#fff!important}
body .vg-registration .vg-sponsor-line{margin:0 0 22px!important}
body .vg-registration .vg-registration-fields,body .vg-registration .vg-field{margin:0!important}
body .vg-registration .mr-country-search{margin:0!important}
body .vg-registration .mr-country-button{padding:7px 12px!important;box-shadow:none!important;border-radius:10px!important;min-height:40px!important}
body .vg-registration .vg-reg-agreement{margin:19px 0 14px!important}
body .vg-registration .vg-registration-error{margin:0 0 12px!important}
body .vg-registration .vg-registration-submit{margin:0!important;box-shadow:none!important;border-radius:11px!important;background:#00a8af!important}
body.vg-registration-page .mr-language{flex:0 0 156px;min-width:0;width:156px;max-width:58%}
body.vg-registration-page .language-picker.language-picker-countries .language-picker-toggle{height:34px;min-height:34px;padding:5px 9px;gap:7px;border-radius:9px;box-shadow:none}
body.vg-registration-page .language-picker.language-picker-countries .language-picker-flag{width:24px;height:18px;flex-basis:24px;border:0;border-radius:3px;background:transparent}
body.vg-registration-page .language-picker.language-picker-countries .language-picker-flag img{width:22px;height:15px;border-radius:2px}
body.vg-registration-page .language-picker.language-picker-countries .language-picker-title{font:500 13px/1.3 Arial,sans-serif;text-transform:none;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
body.vg-registration-page .language-picker-menu{width:min(280px,88vw);border-radius:13px;padding:8px}
body.vg-registration-page .language-picker-option{min-height:38px;padding:7px 8px;gap:8px}
body.vg-registration-page .language-picker-option strong{font-size:14px;font-weight:500}
body.vg-registration-page .language-picker-search{font-size:16px;min-height:40px}
body .vg-registration .mr-country-button,body .vg-registration .mr-country-button-label{font:400 16px/1.4 Arial,sans-serif!important;text-align:left}
body .vg-registration .mr-country-button b{font-size:18px}
body .vg-registration .mr-country-button-value{gap:8px}
body .vg-registration .mr-country-flag{width:22px;height:15px;border-radius:2px}
body .vg-registration .mr-country-option{padding:9px 8px!important;border-radius:8px!important}
body .vg-registration .mr-country-option strong{font:500 14px/1.4 Arial,sans-serif}
body .vg-registration .mr-country-option-value{gap:8px}
body .vg-registration .mr-country-input{font-size:16px!important;min-height:40px!important;padding:8px 10px!important}
@media(max-width:560px){body.vg-registration-page .mr-page{padding:14px 12px 24px}body.vg-registration-page .mr-topbar{padding:0 0 14px;gap:10px}.vg-registration-brand{font-size:13px;letter-spacing:1px}body.vg-registration-page .mr-language{max-width:58%}body .mr-register-panel form.vg-registration{padding:20px!important}.vg-registration .vg-registration-fields{grid-template-columns:minmax(0,1fr);gap:14px}.vg-registration .vg-registration-title{font-size:23px;margin:20px 0 15px}.vg-registration .vg-sponsor-line{margin-bottom:18px;padding:10px 11px;gap:4px 7px}.vg-registration .vg-sponsor-line--fixed .vg-sponsor-label{font-size:11px}.vg-registration .vg-sponsor-line--fixed #sponsor_name{font-size:12px}.vg-registration .vg-role-switch button{font-size:15px;padding:12px 6px}body.vg-registration-page .mr-register-note{margin:0 20px 18px}}
/* Independent compact locale selector; list labels match ShopVimGrace. */
.vg-locale-picker{margin-left:auto;font:14px/1.4 Arial,sans-serif;text-align:left}
.vg-locale-picker [hidden]{display:none!important}
.vg-locale-toggle{display:flex;align-items:center;gap:7px;min-height:32px;padding:5px 9px;border:1px solid #cee4e5;border-radius:9px;background:#f4fcfc;color:#17434b;font:600 13px/1.2 Arial,sans-serif;cursor:pointer}
.vg-locale-toggle img,.vg-locale-option img{object-fit:cover;border-radius:2px;flex-shrink:0;box-shadow:0 0 0 1px #17343b13}
.vg-locale-overlay{position:fixed;inset:0;z-index:10000;background:#132f3f66;display:flex;align-items:center;justify-content:center;padding:16px;box-sizing:border-box;backdrop-filter:blur(4px)}
.vg-locale-dialog{box-sizing:border-box;width:700px;max-width:100%;max-height:85vh;max-height:85dvh;display:flex;flex-direction:column;background:#fff;border:1px solid #d7e9e8;border-radius:20px;padding:20px;box-shadow:0 22px 80px #132f3f40;color:#173b43;text-align:start}
.vg-locale-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.vg-locale-header h2{font:700 20px/1.3 Arial,sans-serif;margin:0}
.vg-locale-close{background:#eff6f5;color:#53727a;border:0;border-radius:9px;width:32px;height:32px;font:24px/1 Arial,sans-serif;cursor:pointer}
.vg-locale-search{box-sizing:border-box;width:100%;flex-shrink:0;border:1px solid #cee0e2;border-radius:10px;padding:11px 12px;font:16px/1.3 Arial,sans-serif;background:#fff;color:#173b43;margin:0 0 12px}
.vg-locale-options{overflow-y:auto;overscroll-behavior:contain;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;padding:2px;min-height:0}
.vg-locale-option{display:flex;align-items:center;gap:10px;min-width:0;padding:10px;border:1px solid transparent;border-radius:10px;background:#fff;text-align:left;color:#173b43;cursor:pointer}
.vg-locale-option:hover,.vg-locale-option[aria-pressed=true]{background:#edf9f8;border-color:#a7dede}
.vg-locale-label{display:flex;flex-direction:column;min-width:0;flex:1}
.vg-locale-label strong{font:600 14px/1.35 Arial,sans-serif}
.vg-locale-label small{font:400 11px/1.35 Arial,sans-serif;color:#71848a;margin-top:2px;overflow-wrap:anywhere}
.vg-locale-label small:empty{display:none}
.vg-locale-code{font:600 11px/1 Arial,sans-serif;color:#6c8489}
.vg-locale-empty{grid-column:1/-1;text-align:center;color:#70828a;font-size:14px}
.vg-locale-picker button:focus-visible,.vg-locale-search:focus{outline:2px solid #02abb0;outline-offset:2px}
body .vg-registration[dir=rtl],body .vg-registration[dir=rtl] .vg-reg-agreement,body .vg-registration[dir=rtl] .mr-country-button-label{text-align:right}
.vg-registration[dir=rtl] input[type=email],.vg-registration[dir=rtl] input[type=tel],.vg-registration[dir=rtl] input[name=user_login],.vg-registration[dir=rtl] input[name=sponsor_id],.vg-registration[dir=rtl] .vg-sponsor-number{direction:ltr;text-align:left}
@media(max-width:560px){.vg-locale-dialog{padding:14px;border-radius:16px;max-height:88vh;max-height:88dvh}.vg-locale-options{grid-template-columns:minmax(0,1fr)}.vg-locale-header h2{font-size:18px}}
/* Keep the consultant beside the title, directly below the role switch. */
body .vg-registration .vg-registration-heading{margin:18px 0!important}
body .vg-registration .vg-registration-heading .vg-registration-title{margin:0 0 10px!important}
body .vg-registration .vg-registration-heading .vg-sponsor-line{margin:0!important}
body .vg-registration .vg-sponsor-number,body .vg-registration #sponsor_name{font:400 12px/1.45 Arial,sans-serif;color:#586e73}
.vg-registration .vg-field--sponsor,.vg-registration .vg-field--name{grid-column:1}
@media(min-width:561px){
 body .vg-registration .vg-registration-heading{display:grid;grid-template-columns:minmax(0,1fr) 195px;align-items:start;gap:16px}
 body .vg-registration .vg-registration-heading .vg-registration-title{margin:0!important}
 body .vg-registration .vg-sponsor-line{flex-direction:column;align-items:flex-end;gap:2px;text-align:right}
 body .vg-registration .vg-sponsor-label{font:400 11px/1.45 Arial,sans-serif;color:#6c8084}
 body .vg-registration .vg-sponsor-number,body .vg-registration #sponsor_name{font:400 12px/1.45 Arial,sans-serif;color:#586e73;max-width:320px}
 body .vg-registration .vg-sponsor-id-label{font:400 12px/1.45 Arial,sans-serif;color:#586e73}
 body .vg-registration .vg-sponsor-id-label>span{font:inherit;color:inherit}
}
@media(max-width:560px){
 body .vg-registration .vg-registration-heading{margin:14px 0!important}
 .vg-registration .vg-sponsor-line{padding:0}
}
/* A little more room and larger type on wide desktop displays. */
@media(min-width:1100px){
 body.vg-registration-page .mr-shell{width:min(100%,960px)}
 body .mr-register-panel form.vg-registration{max-width:960px!important;padding:32px 36px!important}
 .vg-registration{max-width:960px;font-size:16px}
 .vg-registration .vg-registration-title{font-size:30px}
 .vg-registration .vg-registration-fields{gap:18px 20px}
 body .vg-registration .vg-field>span:first-child,body .vg-registration .vg-field>label{font-size:16px}
 body .vg-registration .vg-field input,body .vg-registration .vg-field select:not(.mr-country-native){height:42px;min-height:42px;font-size:17px!important}
 body .vg-registration .mr-country-button{height:42px;min-height:42px!important}
 body .vg-registration .mr-country-button,body .vg-registration .mr-country-button-label{font-size:17px!important}
 body .vg-registration .vg-field small{font-size:14px}
 body .vg-registration .vg-reg-agreement{font-size:14px}
 body .vg-registration .vg-role-switch button{font-size:17px}
 body .vg-registration .vg-registration-submit{font-size:17px;min-height:50px}
 body .vg-registration .vg-sponsor-number,body .vg-registration #sponsor_name{font-size:13px}
 body .vg-registration .vg-sponsor-label{font-size:12px}
}
