/* Supplier Management System - Registration UI */
.sms-reg-wrap{box-sizing:border-box;width:100%;max-width:1100px;margin:0 auto;padding:28px 20px 46px;color:var(--sms-secondary);}
.sms-reg-wrap,.sms-reg-wrap *{box-sizing:border-box}
.sms-reg-card{width:100%;background:#fff;border:1px solid #dbe4ef;border-radius:16px;box-shadow:0 18px 55px rgba(4,39,114,.08);padding:56px 62px 50px;}
.sms-reg-head{text-align:center;margin:0 auto 42px;}
.sms-reg-eyebrow{color:#6b7e9b;font-size:12px;font-weight:800;letter-spacing:4px;line-height:1.3;margin:0 0 16px;text-transform:uppercase;}
.sms-reg-accent{display:block;width:68px;height:4px;border-radius:99px;background:var(--sms-primary,#E97039);margin:0 auto 25px;}
.sms-reg-head h1{margin:0 0 12px!important;padding:0!important;color:var(--sms-secondary,#042772)!important;font-size:42px!important;line-height:1.14!important;font-weight:800!important;letter-spacing:-1.2px!important;}
.sms-reg-head p{margin:0!important;padding:0!important;color:#657995!important;font-size:17px!important;line-height:1.55!important;}
.sms-reg-form{display:grid!important;grid-template-columns:1fr 1fr;gap:25px 30px;margin:0!important;padding:0!important;}
.sms-reg-field{min-width:0;margin:0!important;padding:0!important;}
.sms-reg-field.sms-reg-full{grid-column:1/-1;}
.sms-reg-field label{display:block!important;margin:0 0 9px!important;padding:0!important;color:var(--sms-secondary,#042772)!important;font-size:14px!important;line-height:1.35!important;font-weight:750!important;}
.sms-reg-field label span{color:var(--sms-primary,#E97039)!important;}
.sms-reg-input-wrap{position:relative;width:100%;height:58px;margin:0;padding:0;}
.sms-reg-input-wrap input,.sms-reg-input-wrap textarea{display:block!important;width:100%!important;height:58px!important;min-height:58px!important;margin:0!important;padding:0 18px 0 58px!important;border:1px solid #cbd7e5!important;border-radius:9px!important;outline:none!important;background:#fff!important;background-image:none!important;color:var(--sms-secondary,#042772)!important;font-size:15px!important;font-weight:400!important;line-height:58px!important;box-shadow:none!important;appearance:none!important;-webkit-appearance:none!important;transition:border-color .18s,box-shadow .18s,background .18s!important;}
.sms-reg-input-wrap input:hover,.sms-reg-input-wrap textarea:hover{border-color:#aabbd0!important;}
.sms-reg-input-wrap input:focus,.sms-reg-input-wrap textarea:focus{border-color:var(--sms-primary,#E97039)!important;box-shadow:0 0 0 3px rgba(233,112,57,.12)!important;}
.sms-reg-input-wrap input::placeholder,.sms-reg-input-wrap textarea::placeholder{color:#8192aa!important;opacity:1!important;}
.sms-reg-input-icon{position:absolute!important;left:18px!important;top:50%!important;z-index:3!important;width:20px!important;height:20px!important;margin:0!important;padding:0!important;transform:translateY(-50%)!important;color:#607694!important;pointer-events:none!important;line-height:0!important;}
.sms-reg-input-icon svg{display:block!important;width:20px!important;height:20px!important;margin:0!important;padding:0!important;max-width:none!important;fill:none!important;stroke:currentColor!important;stroke-width:1.7!important;stroke-linecap:round!important;stroke-linejoin:round!important;}
.sms-reg-textarea-wrap{height:auto;min-height:88px;}
.sms-reg-input-wrap textarea{height:88px!important;min-height:88px!important;padding-top:16px!important;padding-bottom:16px!important;line-height:1.5!important;resize:vertical!important;}
.sms-reg-textarea-wrap .sms-reg-input-icon{top:28px;transform:none!important;}
.sms-reg-toggle{position:absolute!important;right:7px!important;top:50%!important;z-index:4!important;width:42px!important;height:42px!important;display:flex!important;align-items:center!important;justify-content:center!important;margin:0!important;padding:9px!important;transform:translateY(-50%)!important;border:0!important;border-radius:7px!important;background:transparent!important;color:#607694!important;cursor:pointer!important;box-shadow:none!important;outline:none!important;appearance:none!important;-webkit-appearance:none!important;}
.sms-reg-toggle:hover,.sms-reg-toggle:focus{background:rgba(233,112,57,.07)!important;color:var(--sms-primary,#E97039)!important;}
.sms-reg-toggle svg{display:block!important;width:20px!important;height:20px!important;max-width:none!important;fill:none!important;stroke:currentColor!important;stroke-width:1.7!important;stroke-linecap:round!important;stroke-linejoin:round!important;}
.sms-reg-terms{grid-column:1/-1;display:flex!important;align-items:flex-start!important;gap:11px!important;margin:2px 0 0!important;padding:0!important;color:var(--sms-secondary,#042772)!important;font-size:14px!important;line-height:1.5!important;cursor:pointer!important;}
.sms-reg-terms input{width:20px!important;height:20px!important;min-width:20px!important;min-height:20px!important;margin:0!important;padding:0!important;accent-color:var(--sms-primary,#E97039)!important;}
.sms-reg-terms a{color:#0754bd!important;text-decoration:underline!important;text-underline-offset:2px!important;}
.sms-reg-terms b{color:var(--sms-primary,#E97039)!important;}
.sms-reg-button{grid-column:1/-1;width:100%!important;height:62px!important;min-height:62px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:12px!important;margin:0!important;padding:0 22px!important;border:1px solid #E97039!important;border-radius:9px!important;background:var(--sms-primary,#E97039)!important;color:#fff!important;font-size:17px!important;font-weight:800!important;line-height:1!important;text-transform:none!important;cursor:pointer!important;box-shadow:0 9px 22px rgba(233,112,57,.20)!important;transition:transform .18s,box-shadow .18s,background .18s!important;appearance:none!important;-webkit-appearance:none!important;}
.sms-reg-button:hover,.sms-reg-button:focus{background:var(--sms-primary,#E97039)!important;border-color:var(--sms-primary,#E97039)!important;color:#fff!important;transform:translateY(-1px)!important;box-shadow:0 12px 26px rgba(233,112,57,.25)!important;}
.sms-reg-button span{font-size:24px!important;line-height:1!important;margin-left:2px!important;}
.sms-reg-or{grid-column:1/-1;display:flex!important;align-items:center!important;gap:15px!important;margin:7px 0 0!important;padding:0!important;color:#7f90a7!important;}
.sms-reg-or span{flex:1;height:1px;background:#dce4ed;}
.sms-reg-or b{font-size:11px;font-weight:800;color:#7f90a7;line-height:1;}
.sms-reg-login-text{grid-column:1/-1;text-align:center;margin:-2px 0 -5px;color:var(--sms-secondary,#042772);font-size:15px;line-height:1.4;}
.sms-reg-login-button{grid-column:1/-1;display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;height:58px!important;min-height:58px!important;margin:0!important;padding:0 18px!important;border:1.5px solid #E97039!important;border-radius:9px!important;background:#fff!important;color:var(--sms-primary,#E97039)!important;text-decoration:none!important;font-size:16px!important;font-weight:800!important;line-height:1!important;box-shadow:none!important;transition:background .18s,color .18s,border-color .18s!important;}
.sms-reg-login-button:hover,.sms-reg-login-button:focus{background:var(--sms-primary,#E97039)!important;border-color:var(--sms-primary,#E97039)!important;color:#fff!important;text-decoration:none!important;}
.sms-reg-secure{grid-column:1/-1;display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;margin:4px 0 0!important;padding:0!important;color:#8190a5!important;font-size:12px!important;line-height:1.4!important;}
.sms-reg-secure svg{display:block!important;width:18px!important;height:18px!important;max-width:none!important;fill:none!important;stroke:#042772!important;stroke-width:1.7!important;stroke-linecap:round!important;stroke-linejoin:round!important;}
.sms-reg-alert{width:100%;margin:0 auto 18px;padding:14px 17px;border-radius:9px;background:#fff7df;border:1px solid #ead79a;color:#624f12;font-size:14px;}
.sms-reg-alert.error{background:#fff0f0;border-color:#efc1c1;color:#8b2020;}
.sms-reg-alert a{color:var(--sms-secondary,#042772);font-weight:700;}
@media(max-width:760px){
 .sms-reg-wrap{padding:16px 10px 30px;}
 .sms-reg-card{padding:40px 24px 34px;border-radius:14px;}
 .sms-reg-head{margin-bottom:32px;}
 .sms-reg-head h1{font-size:34px!important;letter-spacing:-.8px!important;}
 .sms-reg-head p{font-size:14px!important;}
 .sms-reg-form{grid-template-columns:1fr!important;gap:21px!important;}
 .sms-reg-field.sms-reg-full,.sms-reg-terms,.sms-reg-button,.sms-reg-or,.sms-reg-login-text,.sms-reg-login-button,.sms-reg-secure{grid-column:auto!important;}
}
@media(max-width:430px){
 .sms-reg-card{padding:34px 17px 28px;}
 .sms-reg-head h1{font-size:29px!important;}
 .sms-reg-eyebrow{font-size:10px;letter-spacing:3px;}
 .sms-reg-input-wrap input,.sms-reg-input-wrap textarea{font-size:14px!important;}
 .sms-reg-button{height:56px!important;min-height:56px!important;font-size:15px!important;}
 .sms-reg-login-button{height:54px!important;min-height:54px!important;font-size:14px!important;}
}

/* Registration form sections and additional fields */
.sms-reg-section-heading{grid-column:1/-1;margin:8px 0 -4px!important;padding:0!important;border-bottom:1px solid #dce4ed;}
.sms-reg-section-heading h2{margin:0 0 13px!important;padding:0!important;color:var(--sms-secondary,#042772)!important;font-size:23px!important;line-height:1.25!important;font-weight:800!important;letter-spacing:-.3px!important;}
.sms-reg-phone-wrap{position:relative;width:100%;height:58px;margin:0;padding:0;display:flex;align-items:stretch;}
.sms-reg-phone-input-wrap{flex:1;height:58px;min-width:0;}
.sms-reg-phone-input-wrap input{padding-right:18px!important;border-radius:9px 0 0 9px!important;}
.sms-reg-phone-code-wrap{width:104px;height:58px;flex:0 0 104px;margin-left:-1px;position:relative;z-index:2;}
.sms-reg-phone-code-wrap select{display:block!important;width:100%!important;height:58px!important;min-height:58px!important;margin:0!important;padding:0 28px 0 10px!important;border:1px solid #cbd7e5!important;border-left-color:#dbe4ef!important;border-radius:0 9px 9px 0!important;outline:none!important;background:#fff!important;color:#526984!important;font-size:14px!important;line-height:1!important;box-shadow:none!important;}
.sms-reg-phone-code-wrap select:focus{border-color:#9db7d6!important;box-shadow:0 0 0 2px rgba(4,39,114,.08)!important;}
.sms-reg-inline-error{margin-top:7px;color:#d63638;font-size:13px;font-weight:600;line-height:1.3;}
.sms-reg-input-wrap select{display:block!important;width:100%!important;height:58px!important;min-height:58px!important;margin:0!important;padding:0 42px 0 58px!important;border:1px solid #cbd7e5!important;border-radius:9px!important;outline:none!important;background:#fff!important;background-image:linear-gradient(45deg,transparent 50%,#607694 50%),linear-gradient(135deg,#607694 50%,transparent 50%)!important;background-position:calc(100% - 19px) 25px,calc(100% - 14px) 25px!important;background-size:5px 5px,5px 5px!important;background-repeat:no-repeat!important;color:var(--sms-secondary,#042772)!important;font-size:15px!important;font-weight:400!important;line-height:58px!important;box-shadow:none!important;appearance:none!important;-webkit-appearance:none!important;}
.sms-reg-input-wrap select:hover{border-color:#aabbd0!important;}
.sms-reg-input-wrap select:focus{border-color:var(--sms-primary,#E97039)!important;box-shadow:0 0 0 3px rgba(233,112,57,.12)!important;}
.sms-reg-radio-list{display:flex;flex-direction:column;gap:8px;margin:0;padding:2px 0 0;}
.sms-reg-radio-list label{display:flex!important;align-items:center;gap:9px;margin:0!important;padding:0!important;color:var(--sms-secondary,#042772)!important;font-size:15px!important;font-weight:400!important;line-height:1.35!important;cursor:pointer!important;}
.sms-reg-radio-list input{width:17px!important;height:17px!important;min-width:17px!important;min-height:17px!important;margin:0!important;padding:0!important;accent-color:var(--sms-primary,#E97039)!important;}
@media(max-width:760px){
 .sms-reg-section-heading{margin:8px 0 -4px!important;}
 .sms-reg-phone-wrap{height:58px;}
}

/* Clear visual separation for the three registration sections */
.sms-reg-section-heading{
 grid-column:1/-1!important;
 margin:18px 0 -5px!important;
 padding:13px 16px 12px!important;
 border:1px solid #dbe4ef!important;
 border-radius:9px!important;
 background:#f8fbff!important;
 box-shadow:none!important;
}
.sms-reg-section-heading h2{
 margin:0!important;
 padding:0!important;
 color:var(--sms-secondary,#042772)!important;
 font-size:23px!important;
 line-height:1.3!important;
 font-weight:800!important;
 letter-spacing:-.3px!important;
}
@media(max-width:760px){
 .sms-reg-section-heading{margin:14px 0 -3px!important;padding:12px 14px 11px!important;}
 .sms-reg-section-heading h2{font-size:21px!important;}
}

/* Dynamic phone country code */
.sms-reg-phone-country{width:88px!important;gap:6px!important;}
.sms-reg-phone-flag{font-size:18px;line-height:1;display:inline-block;}
.sms-reg-phone-code{font-size:14px;font-weight:600;line-height:1;color:#526984;}


/* Phone field: country code on the LEFT, number input on the RIGHT */
.sms-reg-phone-wrap{
    flex-direction:row-reverse!important;
}
.sms-reg-phone-code-wrap{
    margin-left:0!important;
    margin-right:-1px!important;
    flex:0 0 104px!important;
    width:104px!important;
}
.sms-reg-phone-code-wrap select{
    border-radius:9px 0 0 9px!important;
    border-left-color:#cbd7e5!important;
    border-right-color:#dbe4ef!important;
    padding:0 28px 0 10px!important;
}
.sms-reg-phone-input-wrap{
    flex:1 1 auto!important;
    min-width:0!important;
}
.sms-reg-phone-input-wrap input{
    border-radius:0 9px 9px 0!important;
}
@media(max-width:760px){
    .sms-reg-phone-code-wrap{
        flex-basis:96px!important;
        width:96px!important;
    }
}


/* FINAL PHONE FIELD LAYOUT FIX
   Country code LEFT, phone number RIGHT.
   Keep the phone control visually consistent with the other registration fields.
*/
.sms-reg-phone-wrap{
    width:100%!important;
    height:58px!important;
    display:grid!important;
    grid-template-columns:104px minmax(0,1fr)!important;
    grid-template-rows:58px!important;
    gap:0!important;
    margin:0!important;
    padding:0!important;
    direction:ltr!important;
}
.sms-reg-phone-code-wrap{
    grid-column:1!important;
    grid-row:1!important;
    width:auto!important;
    height:58px!important;
    min-width:0!important;
    margin:0!important;
    flex:none!important;
    position:relative!important;
    z-index:2!important;
}
.sms-reg-phone-input-wrap{
    grid-column:2!important;
    grid-row:1!important;
    width:auto!important;
    height:58px!important;
    min-width:0!important;
    margin:0!important;
}
.sms-reg-phone-code-wrap select{
    display:block!important;
    width:100%!important;
    height:58px!important;
    min-height:58px!important;
    margin:0!important;
    box-sizing:border-box!important;
    padding:0 28px 0 12px!important;
    border:1px solid #cbd7e5!important;
    border-right:0!important;
    border-left:1px solid #cbd7e5!important;
    border-radius:9px 0 0 9px!important;
    background:#fff!important;
    color:#526984!important;
    box-shadow:none!important;
}
.sms-reg-phone-input-wrap input{
    width:100%!important;
    height:58px!important;
    min-height:58px!important;
    margin:0!important;
    box-sizing:border-box!important;
    border-radius:0 9px 9px 0!important;
    border-left:0!important;
}
.sms-reg-phone-code-wrap select:focus{
    outline:none!important;
}
@media(max-width:760px){
    .sms-reg-phone-wrap{
        grid-template-columns:96px minmax(0,1fr)!important;
    }
}


/* FINAL PHONE FIELD FALLBACK
   Keep the phone country-code selector functional but visually hidden.
   Restore phone input to a normal full-width registration field.
*/
.sms-reg-phone-wrap{
    display:block!important;
    width:100%!important;
    height:58px!important;
    margin:0!important;
    padding:0!important;
}
.sms-reg-phone-code-wrap{
    display:none!important;
}
.sms-reg-phone-input-wrap{
    display:block!important;
    width:100%!important;
    height:58px!important;
    margin:0!important;
}
.sms-reg-phone-input-wrap input{
    display:block!important;
    width:100%!important;
    height:58px!important;
    min-height:58px!important;
    box-sizing:border-box!important;
    margin:0!important;
    border:1px solid #cbd7e5!important;
    border-radius:9px!important;
}

/* Definitive phone field fallback: hide country-code UI and make phone input a normal field. */
.sms-reg-phone-wrap{
    display:block!important;
    width:100%!important;
    height:58px!important;
    margin:0!important;
    padding:0!important;
}
.sms-reg-phone-code-wrap{
    display:none!important;
    width:0!important;
    max-width:0!important;
    min-width:0!important;
    visibility:hidden!important;
}
.sms-reg-phone-input-wrap{
    display:block!important;
    width:100%!important;
    height:58px!important;
    margin:0!important;
    padding:0!important;
}
.sms-reg-phone-input-wrap input{
    display:block!important;
    width:100%!important;
    height:58px!important;
    min-height:58px!important;
    margin:0!important;
    box-sizing:border-box!important;
    border:1px solid #cbd7e5!important;
    border-radius:9px!important;
}
