/* Triplem VIP Account Security session/history refinement v146. */
.account-security-session-actions{margin:2px 0 4px}.account-security-danger-action{color:var(--danger,#b42318)!important;border-color:color-mix(in srgb,var(--danger,#b42318) 22%,var(--line,rgba(15,23,42,.12)))!important;background:color-mix(in srgb,var(--danger,#b42318) 4%,var(--surface,#fff))!important}.account-security-danger-action i{color:inherit!important}.account-security-history summary>span:last-child{min-width:24px;height:22px;padding:0 7px;border-radius:999px;display:grid;place-items:center;background:color-mix(in srgb,var(--primary,#2457d6) 9%,var(--surface,#fff));color:var(--primary,#2457d6);font-size:10px}.account-security-history-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:9px;padding:9px 10px;border:1px solid var(--line,rgba(15,23,42,.09));border-radius:12px;background:color-mix(in srgb,var(--surface-soft,rgba(248,250,252,.88)) 88%,transparent)}.account-security-history-toolbar>small{min-width:0;color:var(--muted,#64748b);font-size:10px;line-height:1.4}.account-security-history-toolbar .btn{flex:0 0 auto}.account-security-history-empty{display:flex!important;align-items:center;justify-content:center;gap:7px;padding:14px 8px!important;color:var(--muted,#64748b);font-size:11px;border-bottom:0!important}.account-security-history-empty i{color:var(--primary,#2457d6)}.history-dot.ended,.history-dot.expired{background:#94a3b8}

@media(max-width:620px){
  .account-security-center-modal .account-security-dialog{width:calc(100vw - 30px);max-width:470px;max-height:calc(100dvh - 30px);margin:auto;border-radius:18px;overflow:hidden}
  .account-security-center-modal .account-security-head{padding:12px 13px 10px;gap:9px;min-height:0}
  .account-security-center-modal .account-security-head h3{font-size:18px;line-height:1.15;margin:1px 0 3px}
  .account-security-center-modal .account-security-head>div>p:not(.account-security-kicker){font-size:10.5px;line-height:1.35;margin:0;max-width:34ch}
  .account-security-center-modal .account-security-kicker{font-size:9px;letter-spacing:.08em;margin-bottom:2px}
  .account-security-center-modal .account-security-head>.btn{width:30px;min-width:30px;height:30px;padding:0;border-radius:9px}
  .account-security-center-modal .account-security-body{padding:9px;gap:8px;overflow-x:hidden}
  .account-security-center-modal .account-security-overview{padding:10px 11px;gap:8px;border-radius:14px}
  .account-security-center-modal .account-security-overview small{font-size:9px}
  .account-security-center-modal .account-security-overview strong{font-size:14px;line-height:1.25}
  .account-security-center-modal .account-security-overview-pills{gap:5px}
  .account-security-center-modal .account-security-state{font-size:9.5px;padding:4px 7px}
  .account-security-center-modal .account-security-card{padding:10px;border-radius:14px}
  .account-security-center-modal .account-security-section-title{grid-template-columns:auto minmax(0,1fr) auto;gap:8px;margin-bottom:7px;align-items:center}
  .account-security-center-modal .account-security-section-title>span:first-child{width:32px;height:32px;border-radius:10px}
  .account-security-center-modal .account-security-section-title strong{font-size:12.5px;line-height:1.2}
  .account-security-center-modal .account-security-section-title small{font-size:10px;line-height:1.3;margin-top:1px}
  .account-security-center-modal .account-security-section-title>.account-security-state,.account-security-center-modal .account-security-section-title>.account-security-count{grid-column:auto;justify-self:end}
  .account-security-center-modal .account-security-count{min-width:24px;height:24px;padding:0 6px;font-size:10px}
  .account-security-center-modal .account-security-row{min-height:34px;padding:8px 10px;border-radius:10px;font-size:11.5px}
  .account-security-center-modal .account-security-toggle-row{padding:9px 2px;gap:9px}
  .account-security-center-modal .account-security-toggle-row>span strong{font-size:11.5px}
  .account-security-center-modal .account-security-toggle-row>span small{font-size:9.5px;line-height:1.3}
  .account-security-center-modal .account-security-toggle-row>i{width:38px;height:22px}
  .account-security-center-modal .account-security-toggle-row>i:after{width:16px;height:16px}
  .account-security-center-modal .account-security-toggle-row input:checked+i:after{transform:translateX(16px)}
  .account-security-center-modal .account-security-inline-actions{display:flex;align-items:center;flex-wrap:wrap;gap:6px}
  .account-security-center-modal .account-security-inline-actions .btn{width:auto;min-height:31px;padding:6px 9px;font-size:10.5px;border-radius:9px}
  .account-security-center-modal .account-security-trusted-current{font-size:10px;line-height:1.3}
  .account-security-center-modal .account-security-device-list{gap:6px;margin-top:8px}
  .account-security-center-modal .account-security-device{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:7px;padding:8px;border-radius:11px}
  .account-security-center-modal .account-security-device .device-icon{width:29px;height:29px;border-radius:9px;font-size:11px}
  .account-security-center-modal .account-security-device strong{font-size:10.8px;line-height:1.25}
  .account-security-center-modal .account-security-device strong em{font-size:7.5px;padding:2px 4px;margin-left:2px}
  .account-security-center-modal .account-security-device small{font-size:8.8px;line-height:1.3}
  .account-security-center-modal .account-security-device>button,.account-security-center-modal .account-security-device>.account-security-state{grid-column:auto;justify-self:end;margin:0;min-height:29px;padding:5px 7px;font-size:9.5px;white-space:nowrap}
  .account-security-center-modal .account-security-history{margin-top:9px;padding-top:8px}
  .account-security-center-modal .account-security-history summary{font-size:10.8px;align-items:center}
  .account-security-center-modal .account-security-history-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;padding:7px 8px;border-radius:10px}
  .account-security-center-modal .account-security-history-toolbar>small{font-size:8.8px;line-height:1.3}
  .account-security-center-modal .account-security-history-toolbar .btn{min-height:29px;padding:5px 7px;font-size:9.5px;border-radius:8px}
  .account-security-center-modal .account-security-history-list{max-height:190px;margin-top:6px;gap:2px;overflow-x:hidden}
  .account-security-center-modal .account-security-history-list>div{grid-template-columns:auto minmax(0,1fr);gap:7px;padding:7px 2px}
  .account-security-center-modal .account-security-history-list strong{font-size:10px}
  .account-security-center-modal .account-security-history-list small{font-size:8.5px;line-height:1.25}
  .account-security-center-modal .account-security-history-list em{display:none}
  .account-security-center-modal .account-security-fineprint{font-size:9.5px;line-height:1.35;margin:7px 0}
}

@media(max-width:360px){
  .account-security-center-modal .account-security-dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}
  .account-security-center-modal .account-security-head{padding:10px 11px 9px}
  .account-security-center-modal .account-security-body{padding:8px}
  .account-security-center-modal .account-security-section-title{grid-template-columns:auto minmax(0,1fr)}
  .account-security-center-modal .account-security-section-title>.account-security-state,.account-security-center-modal .account-security-section-title>.account-security-count{grid-column:2;justify-self:start;margin-top:2px}
  .account-security-center-modal .account-security-device{grid-template-columns:auto minmax(0,1fr)}
  .account-security-center-modal .account-security-device>button,.account-security-center-modal .account-security-device>.account-security-state{grid-column:2;justify-self:start}
  .account-security-center-modal .account-security-history-toolbar{grid-template-columns:1fr}
  .account-security-center-modal .account-security-history-toolbar .btn{justify-self:start}
}

/* v147 — bulk trusted-browser control and stronger mobile safe margins. */
.account-security-trusted-actions{align-items:center}
.account-security-trusted-actions .account-security-danger-action{max-width:100%;white-space:normal;text-align:center}

@media(max-width:620px){
  .account-security-center-modal.modal{
    padding:24px 20px!important;
    place-items:center!important;
    overflow:hidden!important;
  }
  .account-security-center-modal .account-security-dialog{
    width:100%!important;
    max-width:440px!important;
    max-height:calc(100dvh - 48px)!important;
    margin:0!important;
    border-radius:17px!important;
    overflow:hidden!important;
  }
  .account-security-center-modal .account-security-body{
    min-width:0!important;
    padding:8px!important;
    gap:7px!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    scrollbar-width:none!important;
  }
  .account-security-center-modal .account-security-body::-webkit-scrollbar{width:0!important;height:0!important}
  .account-security-center-modal .account-security-card{min-width:0!important;padding:9px!important;border-radius:13px!important;overflow:hidden!important}
  .account-security-center-modal .account-security-section-title{gap:7px!important;margin-bottom:6px!important}
  .account-security-center-modal .account-security-section-title>span:first-child{width:29px!important;height:29px!important;border-radius:9px!important;font-size:11px!important}
  .account-security-center-modal .account-security-section-title strong{font-size:11.7px!important}
  .account-security-center-modal .account-security-section-title small{font-size:9.2px!important;line-height:1.25!important}
  .account-security-center-modal .account-security-row{min-height:31px!important;padding:6px 8px!important;font-size:10.5px!important;border-radius:9px!important}
  .account-security-center-modal .account-security-inline-actions{gap:5px!important}
  .account-security-center-modal .account-security-inline-actions .btn{
    width:auto!important;
    max-width:100%!important;
    min-height:28px!important;
    padding:5px 7px!important;
    font-size:9.5px!important;
    line-height:1.2!important;
    border-radius:8px!important;
    white-space:normal!important;
  }
  .account-security-center-modal .account-security-trusted-current{font-size:9.2px!important}
  .account-security-center-modal .account-security-device{
    min-width:0!important;
    grid-template-columns:auto minmax(0,1fr)!important;
    align-items:start!important;
    gap:6px!important;
    padding:7px!important;
    border-radius:10px!important;
  }
  .account-security-center-modal .account-security-device .device-icon{width:27px!important;height:27px!important;border-radius:8px!important;font-size:10px!important}
  .account-security-center-modal .account-security-device strong{font-size:10.1px!important;line-height:1.2!important}
  .account-security-center-modal .account-security-device small{font-size:8.3px!important;line-height:1.25!important}
  .account-security-center-modal .account-security-device>button,
  .account-security-center-modal .account-security-device>.account-security-state{
    grid-column:2!important;
    justify-self:start!important;
    min-height:26px!important;
    padding:4px 6px!important;
    font-size:8.8px!important;
    margin-top:2px!important;
  }
  .account-security-center-modal .account-security-history-toolbar{grid-template-columns:1fr!important;gap:5px!important;padding:7px!important}
  .account-security-center-modal .account-security-history-toolbar .btn{justify-self:start!important;min-height:26px!important;font-size:8.8px!important}
}

@media(max-width:420px){
  .account-security-center-modal.modal{padding:22px 18px!important}
  .account-security-center-modal .account-security-dialog{max-height:calc(100dvh - 44px)!important}
  .account-security-center-modal .account-security-head{padding:10px 11px 8px!important}
  .account-security-center-modal .account-security-head h3{font-size:16px!important}
  .account-security-center-modal .account-security-head>div>p:not(.account-security-kicker){font-size:9.5px!important;max-width:30ch!important}
  .account-security-center-modal .account-security-overview{padding:9px!important;gap:6px!important}
  .account-security-center-modal .account-security-overview strong{font-size:12.5px!important}
  .account-security-center-modal .account-security-state{font-size:8.5px!important;padding:3px 6px!important}
  .account-security-center-modal .account-security-count{min-width:22px!important;height:22px!important;font-size:9px!important}
  .account-security-center-modal .account-security-toggle-row{padding:7px 1px!important}
  .account-security-center-modal .account-security-toggle-row>span strong{font-size:10.5px!important}
  .account-security-center-modal .account-security-toggle-row>span small{font-size:8.8px!important}
  .account-security-center-modal .account-security-toggle-row>i{width:34px!important;height:20px!important}
  .account-security-center-modal .account-security-toggle-row>i:after{width:14px!important;height:14px!important}
  .account-security-center-modal .account-security-toggle-row input:checked+i:after{transform:translateX(14px)!important}
}

@media(max-width:340px){
  .account-security-center-modal.modal{padding:18px 14px!important}
  .account-security-center-modal .account-security-dialog{max-height:calc(100dvh - 36px)!important}
}

/* v149 — definitive mobile Account Security viewport and touch-scroll fix.
   The backdrop remains full viewport, while the visible Security card stays
   centered with deliberate safe margins. Only the card body scrolls. */
@media (max-width:620px){
  #accountSecurityCenterModal.account-security-center-modal.modal{
    position:fixed!important;
    inset:0!important;
    width:100%!important;
    height:100dvh!important;
    min-height:100svh!important;
    box-sizing:border-box!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-rows:minmax(0,1fr)!important;
    place-items:center!important;
    align-items:center!important;
    justify-items:center!important;
    padding:max(24px,env(safe-area-inset-top)) 18px max(24px,env(safe-area-inset-bottom))!important;
    overflow:hidden!important;
    overscroll-behavior:none!important;
    touch-action:none!important;
  }

  #accountSecurityCenterModal.account-security-center-modal>.modal-backdrop{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
  }

  #accountSecurityCenterModal.account-security-center-modal>.account-security-dialog{
    position:relative!important;
    place-self:center!important;
    width:min(430px,100%)!important;
    max-width:430px!important;
    height:min(84dvh,700px)!important;
    max-height:calc(100dvh - 48px)!important;
    min-height:0!important;
    margin:0!important;
    box-sizing:border-box!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
    border-radius:16px!important;
    transform:none!important;
    touch-action:auto!important;
  }

  #accountSecurityCenterModal .account-security-head{
    flex:0 0 auto!important;
    min-width:0!important;
    padding:10px 11px 8px!important;
  }
  #accountSecurityCenterModal .account-security-head h3{font-size:15.5px!important;line-height:1.15!important}
  #accountSecurityCenterModal .account-security-head>div>p:not(.account-security-kicker){font-size:9.2px!important;line-height:1.28!important;max-width:29ch!important}
  #accountSecurityCenterModal .account-security-head>.btn{width:28px!important;min-width:28px!important;height:28px!important;min-height:28px!important;padding:0!important;border-radius:8px!important}

  #accountSecurityCenterModal .account-security-body{
    position:relative!important;
    flex:1 1 0!important;
    min-width:0!important;
    min-height:0!important;
    width:100%!important;
    height:auto!important;
    max-height:none!important;
    box-sizing:border-box!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    align-content:start!important;
    gap:6px!important;
    padding:7px 8px 10px!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior-y:contain!important;
    scroll-behavior:auto!important;
    scrollbar-width:none!important;
    -ms-overflow-style:none!important;
    -webkit-overflow-scrolling:touch!important;
    touch-action:pan-y!important;
    pointer-events:auto!important;
    contain:none!important;
  }
  #accountSecurityCenterModal .account-security-body::-webkit-scrollbar,
  #accountSecurityCenterModal .account-security-history-list::-webkit-scrollbar{
    width:0!important;
    height:0!important;
    display:none!important;
  }

  #accountSecurityCenterModal .account-security-overview,
  #accountSecurityCenterModal .account-security-onboarding,
  #accountSecurityCenterModal .account-security-card,
  #accountSecurityCenterModal .account-security-card-wide,
  #accountSecurityCenterModal #accountSecurityCenterError{
    grid-column:1!important;
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }
  #accountSecurityCenterModal .account-security-overview{padding:8px 9px!important;gap:5px!important;border-radius:12px!important}
  #accountSecurityCenterModal .account-security-overview strong{font-size:12px!important;line-height:1.2!important}
  #accountSecurityCenterModal .account-security-overview small{font-size:8.5px!important}
  #accountSecurityCenterModal .account-security-card{padding:8px!important;border-radius:12px!important;overflow:visible!important}
  #accountSecurityCenterModal .account-security-section-title{grid-template-columns:27px minmax(0,1fr) auto!important;gap:6px!important;margin-bottom:5px!important;align-items:center!important}
  #accountSecurityCenterModal .account-security-section-title>span:first-child{width:27px!important;height:27px!important;border-radius:8px!important;font-size:10px!important}
  #accountSecurityCenterModal .account-security-section-title strong{font-size:10.8px!important;line-height:1.18!important}
  #accountSecurityCenterModal .account-security-section-title small{font-size:8.4px!important;line-height:1.22!important;margin-top:1px!important}
  #accountSecurityCenterModal .account-security-state{font-size:8px!important;padding:3px 5px!important}
  #accountSecurityCenterModal .account-security-count{min-width:20px!important;height:20px!important;padding:0 5px!important;font-size:8.5px!important}
  #accountSecurityCenterModal .account-security-row{min-height:29px!important;padding:5px 7px!important;border-radius:8px!important;font-size:9.8px!important;touch-action:manipulation!important}
  #accountSecurityCenterModal .account-security-toggle-row{padding:6px 1px!important;gap:7px!important}
  #accountSecurityCenterModal .account-security-toggle-row>span strong{font-size:9.9px!important}
  #accountSecurityCenterModal .account-security-toggle-row>span small{font-size:8.2px!important;line-height:1.22!important}
  #accountSecurityCenterModal .account-security-toggle-row>i{width:32px!important;height:19px!important;flex:0 0 32px!important}
  #accountSecurityCenterModal .account-security-toggle-row>i:after{width:13px!important;height:13px!important}
  #accountSecurityCenterModal .account-security-toggle-row input:checked+i:after{transform:translateX(13px)!important}
  #accountSecurityCenterModal .account-security-inline-actions{gap:4px!important;align-items:center!important}
  #accountSecurityCenterModal .account-security-inline-actions .btn,
  #accountSecurityCenterModal .account-security-device>button,
  #accountSecurityCenterModal .account-security-history-toolbar .btn{
    width:auto!important;
    min-width:0!important;
    min-height:25px!important;
    max-width:100%!important;
    padding:4px 6px!important;
    border-radius:7px!important;
    font-size:8.6px!important;
    line-height:1.18!important;
    white-space:normal!important;
    touch-action:manipulation!important;
    pointer-events:auto!important;
  }
  #accountSecurityCenterModal .account-security-trusted-current{min-height:25px!important;padding:4px 6px!important;font-size:8.6px!important;border-radius:7px!important}
  #accountSecurityCenterModal .account-security-device-list{gap:5px!important;margin-top:6px!important}
  #accountSecurityCenterModal .account-security-device{grid-template-columns:25px minmax(0,1fr)!important;gap:5px!important;padding:6px!important;border-radius:9px!important;align-items:start!important;overflow:visible!important}
  #accountSecurityCenterModal .account-security-device .device-icon{width:25px!important;height:25px!important;border-radius:7px!important;font-size:9px!important}
  #accountSecurityCenterModal .account-security-device strong{font-size:9.5px!important;line-height:1.18!important;overflow-wrap:anywhere!important}
  #accountSecurityCenterModal .account-security-device small{font-size:7.8px!important;line-height:1.22!important;overflow-wrap:anywhere!important}
  #accountSecurityCenterModal .account-security-device>button,
  #accountSecurityCenterModal .account-security-device>.account-security-state{grid-column:2!important;justify-self:start!important;margin-top:1px!important}
  #accountSecurityCenterModal .account-security-history{margin-top:6px!important;padding-top:6px!important}
  #accountSecurityCenterModal .account-security-history summary{font-size:9.6px!important;min-height:25px!important;touch-action:manipulation!important}
  #accountSecurityCenterModal .account-security-history-toolbar{grid-template-columns:1fr!important;gap:4px!important;padding:6px!important;border-radius:8px!important}
  #accountSecurityCenterModal .account-security-history-toolbar>small{font-size:7.8px!important;line-height:1.22!important}
  #accountSecurityCenterModal .account-security-history-list{max-height:none!important;overflow:visible!important;margin-top:5px!important}
  #accountSecurityCenterModal .account-security-fineprint{font-size:8.2px!important;line-height:1.28!important;margin:5px 0!important}
}

@media (max-width:380px){
  #accountSecurityCenterModal.account-security-center-modal.modal{
    padding:max(22px,env(safe-area-inset-top)) 16px max(22px,env(safe-area-inset-bottom))!important;
  }
  #accountSecurityCenterModal.account-security-center-modal>.account-security-dialog{
    width:100%!important;
    height:min(83dvh,650px)!important;
    max-height:calc(100dvh - 44px)!important;
  }
  #accountSecurityCenterModal .account-security-section-title{grid-template-columns:25px minmax(0,1fr)!important}
  #accountSecurityCenterModal .account-security-section-title>.account-security-state,
  #accountSecurityCenterModal .account-security-section-title>.account-security-count{grid-column:2!important;justify-self:start!important;margin-top:1px!important}
}

/* v151 — mobile Security Center close-state reliability.
   The mobile viewport rule uses an ID-level display:grid!important declaration,
   so the hidden state must intentionally win at the same specificity. */
#accountSecurityCenterModal.account-security-center-modal.modal.hide,
#accountSecurityCenterModal.account-security-center-modal.modal[aria-hidden="true"]{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
