/* ATCMobile account profile. Scope excludes header, cart and login modal. */
.atc-profile { max-width:1170px; margin:24px auto 40px; color:#103b60; font-family:Arial,Helvetica,sans-serif; line-height:1.5; }
.atc-profile *, .atc-profile *::before, .atc-profile *::after { box-sizing:border-box; }
.atc-profile .atc-profile-heading { margin:0 0 24px; }
.atc-profile .atc-profile-heading h1 { margin:0 0 8px; color:#103b60; font-size:30px; line-height:1.25; }
.atc-profile .atc-profile-heading p { margin:0; color:#526b80; font-size:15px; }
.atc-profile #adminForm { margin:0; }
.atc-profile #tabs { display:flex; flex-wrap:wrap; gap:8px; padding:0; margin:0 0 20px; list-style:none; }
.atc-profile #tabs li { margin:0; padding:10px 16px; border:1px solid #dce6ee; border-radius:9px; background:#eef6fb; color:#103b60; cursor:pointer; font-size:14px; }
.atc-profile #tabs li:hover { background:#dceffa; }
.atc-profile #tab-2 { display:none; }
.atc-profile .buttonBar-right { display:flex; flex-wrap:wrap; justify-content:flex-end; align-items:center; gap:10px; margin:0 0 20px; }
.atc-profile .buttonBar-right .button { float:none!important; width:auto!important; min-height:44px; margin:0!important; padding:10px 22px!important; border:1px solid #d5e1eb!important; border-radius:9px!important; background:#f2f6f9!important; color:#103b60!important; font-size:15px!important; line-height:1.4!important; font-weight:600; cursor:pointer; }
.atc-profile .buttonBar-right .button[type="submit"] { border-color:#009fd7!important; background:#009fd7!important; color:#fff!important; }
.atc-profile .atc-profile-card { min-width:0; margin:0 0 22px; padding:20px; border:1px solid #dbe6ee; border-radius:13px; background:#fff; box-shadow:0 3px 14px rgba(16,59,96,.04); }
.atc-profile .atc-profile-card legend { float:none; width:auto; max-width:100%; margin:0 0 6px; padding:0 8px; border:0; background:#fff; color:#103b60; font-size:19px; line-height:1.4; font-weight:700; }
.atc-profile .userfields_info { color:#103b60; }
.atc-profile .atc-profile-notice { margin:0 0 22px; padding:15px 18px; border-left:4px solid #00a3de; border-radius:9px; background:#eef7fc; font-size:14px; color:#25485e; }
.atc-profile .atc-profile-tier { float:none!important; display:inline-flex; flex-wrap:wrap; gap:8px; align-items:center; padding:9px 14px; border-radius:30px; background:#edf5fa; color:#103b60; font-size:14px; }
.atc-profile .atc-profile-tier a { color:#103b60!important; font-weight:700; text-decoration:underline; }
.atc-profile .atc-profile-tier.Gold { background:#fff3cf; }
.atc-profile .atc-profile-tier.Silver { background:#edf1f5; }
.atc-profile .atc-profile-tier.Bronze { background:#f5e9de; }
.atc-profile .atc-profile-fields table.user-details { display:block; width:100%!important; margin:0!important; border:0; background:transparent!important; }
.atc-profile .atc-profile-fields table.user-details tbody { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 24px; }
.atc-profile .atc-profile-fields table.user-details tr { display:block; min-width:0; width:100%; max-width:none; margin:0; padding:0; background:transparent; }
.atc-profile .atc-profile-fields table.user-details td { display:block; width:100%; min-width:0!important; margin:0; padding:0!important; border:0; background:transparent!important; }
.atc-profile .atc-profile-fields .key label { display:block; margin:0 0 7px; padding:0; font-size:14px; font-weight:600; line-height:1.4; color:#103b60; }
.atc-profile .atc-profile-fields input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="button"]):not([type="submit"]),
.atc-profile .atc-profile-fields select, .atc-profile .atc-profile-fields textarea,
.atc-profile .atc-shopper-card input[type="text"] {
 display:block; float:none!important; width:100%!important; max-width:100%!important; min-width:0!important; height:46px; margin:0!important; padding:10px 12px!important; border:1px solid #cbdde9!important; border-radius:8px!important; background:#f8fbfd!important; color:#103b60!important; font-size:16px!important; line-height:1.4!important; box-shadow:none!important;
}
.atc-profile .atc-profile-fields textarea { height:auto; min-height:90px; }
.atc-profile .atc-profile-fields input[readonly], .atc-profile .atc-profile-fields select:disabled, .atc-profile .atc-profile-fields textarea[readonly] { background:#f0f3f6!important; color:#536777!important; opacity:1; cursor:default; }
.atc-profile .atc-profile-fields .chzn-container { width:100%!important; max-width:100%; }
.atc-profile .atc-field-help { display:block; margin:8px 0 0; color:#597083; font-size:13px; line-height:1.45; }
.atc-profile .atc-field-internal { display:none!important; }
.atc-profile .asterisk { color:#b33248; }
.atc-profile .atc-phone-error { margin:8px 0 0; color:#aa2036; font-size:13px; line-height:1.4; }
.atc-profile .atc-phone-error[hidden] { display:none; }
.atc-profile .atc-address-list ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:14px 0 0; padding:0; list-style:none; }
.atc-profile .atc-address-list li { min-width:0; margin:0; padding:15px; border:1px solid #dce6ee; border-radius:9px; background:#f7fafc; font-size:14px; overflow-wrap:anywhere; }
.atc-profile .atc-address-list a { color:#007cae; text-decoration:underline; }
.atc-profile .atc-address-list li a { display:inline-block; margin-right:12px; line-height:1.6; }
.atc-profile :focus-visible { outline:2px solid #009fdb; outline-offset:3px; }
@media(max-width:767px) {
 .atc-profile { margin:18px auto 28px; }
 .atc-profile .atc-profile-heading h1 { font-size:25px; }
 .atc-profile .atc-profile-card { padding:14px; margin-bottom:18px; }
 .atc-profile .atc-profile-card legend { font-size:18px; }
 .atc-profile .atc-profile-fields table.user-details tbody, .atc-profile .atc-address-list ul { grid-template-columns:minmax(0,1fr); }
 .atc-profile .buttonBar-right .button { flex:1 1 auto; }
 .atc-profile #tabs li { flex:1 1 auto; text-align:center; }
}
