#authModal{z-index:100;background:rgba(13,10,11,.72);backdrop-filter:blur(6px)}
#authModal.open{display:grid;align-items:center}
#cartModal{z-index:60}
.auth-dialog{width:min(576px,100%);margin:auto;overflow:visible;border:1px solid rgba(38,28,31,.12);border-radius:12px;background:#fff;padding:0 38px 34px;text-align:center;box-shadow:0 30px 90px rgba(0,0,0,.34);transition:min-height .18s ease}
.auth-dialog[data-auth-view="login"]{width:min(576px,100%);padding:0 38px 28px;text-align:left}
.auth-brandbar{display:flex;height:96px;margin:0 -38px 32px;padding:0 38px;align-items:center;gap:20px;border-bottom:1px solid #eee9eb}
.auth-brand-logo{display:block;width:178px;height:auto;flex:0 0 auto}
.auth-brand-divider{width:1px;height:38px;background:#e8e2e4}
.auth-brand-title{color:#4f4649;font-size:15px;font-weight:600}
.auth-dialog .close{top:25px;right:26px;display:grid;width:44px;height:44px;padding:0;place-items:center;border:0;border-radius:50%;background:transparent;color:#231d1f;font-size:25px;line-height:1;transition:background .18s,color .18s}
.auth-dialog .close:hover{background:#fff0f2;color:#cf0a2c}
.auth-dialog .close i{font-size:25px}
.auth-dialog h2{margin:0 0 10px;color:#161214;font-size:31px;line-height:1.18;letter-spacing:-1.1px}
.auth-dialog[data-auth-view="login"] h2{padding-right:50px}
.auth-lead{max-width:440px;margin:0 0 22px!important;color:#62595c!important;font-size:16px!important;line-height:1.5!important}
.auth-lead b{color:#2c2427}
.auth-form{display:grid;gap:24px;text-align:left}
.auth-dialog .auth-field{display:grid;gap:10px;margin:0!important;color:#30282b;font-size:14px!important;font-weight:700!important;text-align:left}
.auth-dialog .auth-field>label{margin:0!important;color:inherit;font:inherit}
.auth-dialog .auth-field>input{display:block;width:100%;height:64px;margin:0;border:1px solid #ddd7d9;border-radius:10px;background:#fff;padding:0 18px;color:#211a1d;font:600 17px Manrope;outline:0;transition:border-color .18s,box-shadow .18s,background .18s}
.auth-dialog .auth-field>input:focus{border-color:#cf0a2c;background:#fff;box-shadow:0 0 0 4px rgba(207,10,44,.08)}
.auth-dialog input::placeholder{color:#81787b;font-weight:500;opacity:1}
.auth-channel-choice{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin:0 0 28px;padding:4px;border:1px solid #e6dcdf;border-radius:14px;background:#f6f2f3}
.auth-channel-option{display:flex;min-height:70px;align-items:center;justify-content:center;gap:12px;border:0;border-radius:10px;background:#fff;color:#221c1e;font:800 16px Manrope;cursor:pointer;transition:color .18s,background .18s,box-shadow .18s}
.auth-channel-icon-shell{display:grid;width:40px;height:40px;flex:0 0 40px;place-items:center}
.auth-channel-logo{display:block;width:40px;height:40px;object-fit:contain}
.auth-channel-icon-shell.is-whatsapp{border-radius:50%;background:#25d366}
.auth-channel-icon-shell.is-whatsapp .auth-channel-logo{width:24px;height:24px}
.auth-channel-option:hover{background:#fbf9fa}
.auth-channel-option[data-auth-channel="telegram"].active{background:#edf8fd;color:#147eae;box-shadow:inset 0 0 0 2px rgba(34,158,217,.34)}
.auth-channel-option[data-auth-channel="whatsapp"].active{background:#eefaf3;color:#118747;box-shadow:inset 0 0 0 2px rgba(32,184,100,.34)}
.auth-phone-control{position:relative;display:grid;width:100%;height:64px;grid-template-columns:136px minmax(0,1fr);align-items:stretch;border:1px solid #d9d3d5;border-radius:10px;background:#fff;outline:0;transition:border-color .18s,box-shadow .18s}
.auth-phone-control:focus-within{border-color:#bcb4b7;box-shadow:0 0 0 3px rgba(45,36,39,.06)}
.auth-country-select{position:relative;z-index:4;display:block;min-width:0}
.auth-country-toggle{display:grid;width:100%;height:100%;grid-template-columns:30px 1fr 18px;gap:10px;align-items:center;border:0;border-right:1px solid #ded8da;border-radius:9px 0 0 9px;background:#fff;padding:0 14px;color:#211a1d;font:800 16px Manrope;cursor:pointer}
.auth-country-toggle i{color:#777074;font-size:15px}
.auth-country-flag{display:block;width:30px;height:20px;object-fit:contain;border-radius:1px;box-shadow:0 0 0 1px rgba(0,0,0,.08)}
.auth-country-menu{position:absolute;top:calc(100% + 6px);left:-1px;display:grid;width:calc(100% + 1px);overflow:hidden;border:1px solid #ded8da;border-radius:10px;background:#fff;padding:4px;box-shadow:0 12px 28px rgba(43,27,32,.16)}
.auth-country-menu[hidden]{display:none}
.auth-country-option{display:grid;width:100%;min-height:52px;grid-template-columns:30px 1fr;gap:13px;align-items:center;border:0;border-radius:7px;background:#fff;padding:0 12px;color:#211a1d;font:700 15px Manrope;text-align:left;cursor:pointer}
.auth-country-option:hover{background:#f8f5f6}
.auth-country-option.is-selected{background:#fff0f2;color:#a90926}
.auth-phone-input{display:block;width:100%;min-width:0;height:100%;margin:0!important;border:0!important;border-radius:0 9px 9px 0!important;background:transparent!important;padding:0 20px!important;color:#211a1d;font:600 18px Manrope!important;letter-spacing:.1px;outline:0!important;box-shadow:none!important}
.auth-consent{display:flex!important;align-items:flex-start;gap:11px;margin:0!important;color:#4f4749;font-size:13px!important;font-weight:500!important;line-height:1.55!important;text-align:left}
.auth-consent span{max-width:410px}
.auth-consent input{display:block!important;width:18px!important;height:18px!important;min-width:18px;margin:1px 0 0!important;padding:0!important;border:1px solid #aaa1a4!important;border-radius:3px!important;accent-color:#cf0a2c}
.auth-consent a{color:#cf0a2c;font-weight:700;text-decoration:underline;text-underline-offset:2px}
.auth-consent a:focus-visible{outline:2px solid rgba(207,10,44,.3);outline-offset:2px}
.auth-channel-option:focus-visible,.auth-dialog button:focus-visible,.auth-dialog input:focus-visible{outline:3px solid rgba(207,10,44,.22);outline-offset:2px}
.auth-channel-option[data-auth-channel="telegram"]:focus-visible{outline-color:rgba(34,158,217,.38)}
.auth-channel-option[data-auth-channel="whatsapp"]:focus-visible{outline-color:rgba(32,184,100,.38)}
.auth-channel-option.active:focus-visible{outline-width:2px;outline-offset:2px}
.auth-country-toggle:focus-visible{outline:2px solid rgba(45,36,39,.16)!important;outline-offset:-3px!important}
.auth-dialog.is-country-menu-open .auth-consent{margin:218px 0 0!important}
.auth-dialog .auth-primary{width:100%;min-height:62px;border-radius:9px;background:#cf0a2c;font-size:18px;box-shadow:0 10px 22px rgba(207,10,44,.18);transition:transform .18s,box-shadow .18s,background .18s}
.auth-dialog form .auth-primary{margin:0}
.auth-dialog .auth-primary:hover:not(:disabled){transform:translateY(-1px);background:#b80826;box-shadow:0 13px 26px rgba(207,10,44,.24)}
.auth-dialog button:disabled{opacity:.48;cursor:not-allowed;transform:none!important;box-shadow:none!important}
.auth-status{display:flex;margin:-8px 0 -6px!important;padding:11px 13px;border:1px solid transparent;border-radius:10px;align-items:flex-start;gap:8px;font-size:12px!important;font-weight:700!important;line-height:1.45!important;text-align:left}
.auth-status[hidden]{display:none}
.auth-status.is-error{border-color:#f3bcc5;background:#fff1f3;color:#a70824}
.auth-status.is-success{border-color:#a7dec0;background:#effbf4;color:#11723f}
.auth-hint{margin:16px 0 0!important;color:#81777b!important;font-size:13px!important;line-height:1.5!important;text-align:center}
.auth-back{position:absolute;top:112px;left:28px;display:inline-flex;height:38px;margin:0;padding:0 13px;align-items:center;gap:5px;border:0;border-radius:999px;background:#f6f2f3;color:#675b5f;font:700 12px Manrope;cursor:pointer;transition:background .18s,color .18s,transform .18s}
.auth-back i{font-size:16px}
.auth-back:hover{background:#eee7e9;color:#33282c;transform:translateX(-1px)}
.auth-dialog[data-auth-view="verification-verify"]{padding-bottom:34px}
.auth-dialog[data-auth-view="verification-verify"] h2{padding-top:42px}
.auth-channel-confirmed{position:relative;grid-template-columns:1fr;gap:0;margin-bottom:24px;padding:0;overflow:hidden;border:2px solid transparent;border-radius:12px;background:#fbf8f9}
.auth-channel-confirmed.is-telegram{border-color:rgba(34,158,217,.3);background:#eff9fd}
.auth-channel-confirmed.is-whatsapp{border-color:rgba(32,184,100,.3);background:#effbf4}
.auth-channel-confirmed .auth-channel-option{grid-column:1;grid-row:1;min-height:60px;border:0;border-radius:10px;background:transparent!important}
.auth-channel-confirmed .is-selected{z-index:2;box-shadow:none!important;animation:auth-channel-expand .38s cubic-bezier(.2,.8,.2,1) both}
.auth-channel-confirmed .is-dismissed{position:absolute;z-index:1;inset:0;pointer-events:none;animation:auth-channel-dismiss .32s ease both}
.auth-channel-confirmed .is-dismissed[data-auth-channel="telegram"]{--auth-channel-exit:-42px}
.auth-channel-confirmed .is-dismissed[data-auth-channel="whatsapp"]{--auth-channel-exit:42px}
@keyframes auth-channel-expand{from{opacity:.45;transform:scaleX(.54)}to{opacity:1;transform:scaleX(1)}}
@keyframes auth-channel-dismiss{from{opacity:.8;transform:translateX(0) scale(.98)}to{opacity:0;transform:translateX(var(--auth-channel-exit)) scale(.9)}}
.auth-code-field{align-items:center;text-align:center}
.auth-code-entry{display:grid;width:max-content;max-width:100%;grid-template-columns:repeat(4,64px);gap:11px;margin:2px auto 0}
.auth-dialog .auth-code-entry>input{width:64px;height:64px;margin:0;border:1px solid #e6dadd;border-radius:12px;background:#f8f6f7;color:#2d2326;font:800 27px Manrope;text-align:center;font-variant-numeric:tabular-nums;caret-color:#cf0a2c;outline:0;transition:border-color .18s,box-shadow .18s,background .18s,transform .18s}
.auth-dialog .auth-code-entry>input:focus{border-color:#cf0a2c;background:#fff;box-shadow:0 0 0 4px rgba(207,10,44,.09);transform:translateY(-1px)}
.auth-code-entry.is-invalid{animation:auth-code-shake .36s cubic-bezier(.36,.07,.19,.97) both}
.auth-dialog .auth-code-entry.is-invalid>input{border-color:#e45b70;background:#fff1f3;color:#a70824;box-shadow:0 0 0 3px rgba(207,10,44,.08)}
@keyframes auth-code-shake{0%,100%{transform:translateX(0)}20%{transform:translateX(-8px)}40%{transform:translateX(7px)}60%{transform:translateX(-5px)}80%{transform:translateX(3px)}}
.auth-attempts{display:block;margin:0;color:#918489;font-size:13px;font-weight:700;line-height:1.4;text-align:center}
.auth-attempts.is-exhausted{color:#a70824}
.auth-code-meta{display:grid;justify-items:center;margin-top:20px}
.auth-code-meta .auth-hint{margin:0!important;font-variant-numeric:tabular-nums}
.auth-resend{margin:12px 0 0;padding:8px 12px;border:0;background:transparent;color:#b70827;font:800 13px Manrope;cursor:pointer}
.auth-resend:hover{text-decoration:underline}
.auth-resend[hidden]{display:none}
@media(prefers-reduced-motion:reduce){
  .auth-channel-confirmed .is-selected,.auth-channel-confirmed .is-dismissed{animation:none}
  .auth-code-entry.is-invalid{animation:none}
}
@media(max-width:640px){
  #authModal{padding:10px}
  #authModal.open{display:block}
  .auth-dialog,.auth-dialog[data-auth-view="login"]{margin:12px auto;padding:0 20px 24px;border-radius:11px}
  .auth-brandbar{height:78px;margin:0 -20px 24px;padding:0 20px;gap:12px}
  .auth-brand-logo{width:136px}
  .auth-brand-divider{height:30px}
  .auth-brand-title{font-size:12px}
  .auth-dialog .close{top:17px;right:14px;width:42px;height:42px}
  .auth-dialog h2{font-size:26px}
  .auth-lead{margin-bottom:18px!important;font-size:13px!important}
  .auth-channel-choice{margin-bottom:20px;padding:4px}
  .auth-channel-option{min-height:60px;gap:7px;font-size:13px}
  .auth-form{gap:18px}
  .auth-phone-control{height:58px;grid-template-columns:116px minmax(0,1fr)}
  .auth-country-toggle{grid-template-columns:27px 1fr 15px;gap:7px;padding:0 10px;font-size:14px}
  .auth-country-flag{width:27px;height:18px}
  .auth-country-option{min-height:49px;grid-template-columns:27px 1fr;gap:10px;padding:0 9px;font-size:14px}
  .auth-phone-input{padding:0 13px!important;font-size:15px!important}
  .auth-consent{font-size:11.5px!important}
  .auth-dialog .auth-primary{min-height:56px;font-size:15px}
  .auth-hint{margin-top:13px!important}
  .auth-dialog[data-auth-view="verification-verify"]{padding-bottom:26px}
  .auth-back{top:91px;left:18px;height:34px;padding:0 10px}
  .auth-dialog[data-auth-view="verification-verify"] h2{padding-top:40px}
  .auth-code-entry{grid-template-columns:repeat(4,56px);gap:7px}
  .auth-dialog .auth-code-entry>input{width:56px;height:56px;border-radius:10px;font-size:23px}
  .auth-dialog.is-country-menu-open .auth-consent{width:auto}
}
@media(max-width:390px){
  .auth-dialog,.auth-dialog[data-auth-view="login"]{padding-right:16px;padding-left:16px}
  .auth-brandbar{margin-right:-16px;margin-left:-16px;padding:0 16px;gap:9px}
  .auth-brand-logo{width:122px}
  .auth-brand-title{font-size:11px}
  .auth-phone-control{grid-template-columns:108px minmax(0,1fr)}
  .auth-country-toggle{grid-template-columns:25px 1fr 13px;gap:6px;padding:0 8px}
  .auth-country-flag{width:25px;height:17px}
  .auth-phone-input{padding:0 10px!important;font-size:14px!important}
  .auth-code-entry{grid-template-columns:repeat(4,50px)}
  .auth-dialog .auth-code-entry>input{width:50px;height:54px}
}
