/* The account screens use the original site's existing DM Sans and utilities. */
#account-phone-countries[hidden], #account-country-empty[hidden], #account-phone-countries li[hidden] {display:none!important}
.account-form-spacer {height:0}
#account-country-search {min-width:0;width:100%}
#account-status.is-error {color:#e11d48}
[data-account-inert] {cursor:default}
#account-phone-countries button[aria-selected=true] {background:var(--cherry-soft);color:var(--cherry-primary)}

/* Email login reuses the existing account form and country-dialog components. */
#account-email-login { min-width:0; }
#account-login-description { overflow-wrap:anywhere; }
#account-email-login #account-status.is-error,
#account-email-login #account-email-error.is-error { color:var(--cherry-primary); }
#account-no-purchases .account-login-dialog-panel { min-height:0; border-color:var(--cherry-line); }
#account-no-purchases .border-b, #account-no-purchases .border-t { border-color:var(--cherry-line); }
#account-no-purchases button, #account-no-purchases a { cursor:pointer; }
#account-no-purchases [data-account-dialog-dismiss]:focus-visible { outline:2px solid var(--cherry-primary); outline-offset:2px; }
body.account-modal-open { overflow:hidden; }

/* Purchased eSIM boarding pass: dimensions and responsive structure from the supplied reference. */
.my-esims-member { display:grid; gap:20px; min-width:0; }
.esim-filters { display:flex; flex-wrap:wrap; gap:8px; }
.esim-filter { display:inline-flex; align-items:center; justify-content:center; min-height:36px; padding:0 16px; border:1px solid var(--cherry-line); border-radius:999px; background:#fff; color:var(--cherry-text); font-size:14px; line-height:20px; font-weight:600; cursor:pointer; transition:background-color .15s,color .15s,border-color .15s; }
.esim-filter[aria-pressed="true"] { border-color:var(--cherry-ink); background:var(--cherry-ink); color:#fff; }
.esim-filter[aria-pressed="false"]:hover { border-color:var(--cherry-border); background:var(--cherry-soft); color:var(--cherry-primary); }
.esim-filter:focus-visible,.esim-pass button:focus-visible { outline:2px solid var(--cherry-primary); outline-offset:2px; }
.esim-pass-list { display:flex; flex-direction:column; gap:28px; width:100%; max-width:940px; min-width:0; margin:0 auto; }
.esim-pass { display:flex; overflow:hidden; min-width:0; border:1px solid rgb(0 0 0/.06); border-radius:24px; background:#fff; box-shadow:0 10px 30px rgb(15 23 42/.05); }
.esim-pass__main { position:relative; flex:1; min-width:0; padding:32px 32px 32px 36px; border-right:2px dashed var(--cherry-line); }
.esim-pass__main::before { position:absolute; inset:0 auto 0 0; width:8px; background:var(--cherry-primary); content:""; pointer-events:none; }
.esim-pass__top { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:24px; }
.esim-pass__identity { display:flex; align-items:center; gap:12px; min-width:0; }
.esim-pass__brand { display:block; width:79.4444px; height:22px; flex-shrink:0; }
.esim-pass__brand .brand-logo { width:79.4444px; height:22px; }
.esim-pass__brand .brand-logo__art { transform:scale(.6111111111); }
.esim-pass__boarding { color:var(--cherry-subtle); font-size:11px; line-height:16.5px; font-weight:700; letter-spacing:.18em; text-transform:uppercase; }
.esim-pass__order { text-align:right; line-height:1.25; flex-shrink:0; }
.esim-pass__order>span { display:block; color:var(--cherry-subtle); font-size:10px; font-weight:600; letter-spacing:.12em; text-transform:uppercase; }
.esim-pass__order b { display:block; margin-top:2px; color:var(--cherry-strong); font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace; font-size:18px; font-weight:700; }
.esim-pass__route { display:flex; align-items:center; gap:16px; margin-bottom:24px; padding-bottom:20px; border-bottom:1px dashed var(--cherry-line); }
.esim-pass__codes { flex-shrink:0; font-size:24px; line-height:30px; letter-spacing:-2px; }
.esim-pass__destination { flex:1; min-width:0; }
.esim-pass__destination h2 { overflow:hidden; margin:0; color:var(--cherry-heading); font-size:22px; line-height:1.25; font-weight:800; text-overflow:ellipsis; white-space:nowrap; }
.esim-pass__destination p { overflow:hidden; margin:2px 0 0; color:var(--cherry-muted); font-size:14px; line-height:20px; text-overflow:ellipsis; white-space:nowrap; }
.esim-pass__plane { flex-shrink:0; color:var(--cherry-primary); transform:rotate(45deg); }
.esim-pass__facts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin:0; }
.esim-pass__facts dt { color:var(--cherry-subtle); font-size:10px; line-height:15px; letter-spacing:.08em; text-transform:uppercase; }
.esim-pass__facts dd { margin:4px 0 0; color:var(--cherry-heading); font-size:15px; line-height:22.5px; font-weight:700; }
.esim-pass__metadata { display:flex; flex-wrap:wrap; gap:12px 28px; margin-top:20px; padding:12px 16px; border-radius:12px; background:var(--cherry-surface); }
.esim-pass__metadata>div { display:flex; align-items:center; gap:10px; min-width:0; }
.esim-pass__metadata svg { flex-shrink:0; color:var(--cherry-subtle); }
.esim-pass__metadata>div>div { min-width:0; line-height:1.25; }
.esim-pass__metadata span { display:block; color:var(--cherry-subtle); font-size:10px; font-weight:500; letter-spacing:.06em; text-transform:uppercase; }
.esim-pass__metadata b { display:block; margin-top:2px; color:var(--cherry-strong); font-size:13px; font-weight:600; overflow-wrap:anywhere; }
.esim-pass__iccid { font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace; }
.esim-pass__actions { display:flex; flex-direction:column; align-items:center; justify-content:center; flex-shrink:0; gap:12px; width:30%; padding:24px; text-align:center; }
.esim-pass__status { display:inline-flex; align-items:center; gap:5px; padding:3px 8px; border:1px solid var(--cherry-border); border-radius:8px; background:var(--cherry-rose-soft); color:var(--cherry-link); font-size:12px; line-height:16px; font-weight:600; }
.esim-pass__status i { width:5px; height:5px; border-radius:50%; background:var(--cherry-accent); }
/* Not Active retains the supplied reference's blue status palette. */
.esim-pass[data-esim-status="notActive"] .esim-pass__status { border-color:#bfdbfe; background:#eff6ff; color:#1d4ed8; }
.esim-pass[data-esim-status="notActive"] .esim-pass__status i { background:#3b82f6; }
.esim-pass__scan { color:var(--cherry-primary); font-size:10px; line-height:15px; font-weight:600; letter-spacing:.14em; text-transform:uppercase; }
.esim-pass__qr { flex-shrink:0; color:var(--cherry-heading); }
.esim-pass__install { display:inline-flex; align-items:center; justify-content:center; min-height:44px; width:100%; padding:0 16px; border:0; border-radius:999px; background:var(--cherry-primary); color:#fff; font-size:14px; line-height:20px; font-weight:700; }
.esim-pass__details { min-height:20px; padding:0; border:0; background:transparent; color:var(--cherry-muted); font-size:14px; line-height:20px; }
.esim-empty__icon { display:flex; align-items:center; justify-content:center; width:44px; height:44px; margin:0 auto; border-radius:16px; background:var(--cherry-rose-soft); color:var(--cherry-link); }
@media(max-width:639px) {
 .esim-pass { flex-direction:column; }
 .esim-pass__main { padding:24px 24px 24px 28px; border-right:0; border-bottom:2px dashed var(--cherry-line); }
 .esim-pass__actions { width:100%; }
 .esim-pass__facts { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
