/* Shared Premium typography for video, text chat, checkout and cancellation. */
@font-face {
  font-family:"Inter";
  font-style:normal;
  font-weight:100 900;
  font-display:swap;
  src:url("/assets/fonts/inter/InterVariable-4.1.woff2") format("woff2");
}
:root { --premium-font:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
:is(#premiumDrawer,#premiumModal,.premium-retention) { font-family:var(--premium-font); font-optical-sizing:auto; }
:is(#premiumDrawer,#premiumModal,.premium-retention) :is(button,input,select,textarea) { font-family:inherit; }
/* Premium offer: a focused introduction, clear benefits and in-page checkout. */
#premiumDrawer { --premium-bg:#fff; --premium-text:#182f4d; --premium-muted:#718198; --premium-border:#e5edf6; }
#premiumDrawer .device-modal-v2 { width:min(480px,100vw); max-width:100vw; background:#fff; border-left:1px solid #e5edf6; box-shadow:-20px 0 80px #10284a26; }
#premiumDrawer .device-modal-v2.premium-checkout-open { width:min(560px,100vw); }
#premiumDrawer .deviceModalHeader { display:flex; align-items:center; justify-content:space-between; padding:19px 26px; border-top:0; border-bottom:1px solid #e8eef6; gap:16px; background:#fff; }
#premiumDrawer .premium-header-identity { display:flex; align-items:center; gap:12px; min-width:0; }
#premiumDrawer .premium-header-icon { display:grid; place-items:center; flex:0 0 44px; width:44px; height:44px; border:1px solid #f4dfb5; border-radius:13px; background:linear-gradient(145deg,#fff8e9,#fff0d2); color:#c98a22; }
#premiumDrawer .premium-header-icon svg { display:block; width:23px; height:23px; }
#premiumDrawer .premium-header-copy { min-width:0; }
#premiumDrawer .premium-brand { display:block; color:#8190a4; font-size:9px; line-height:1.3; font-weight:600; letter-spacing:1.1px; text-transform:uppercase; }
#premiumDrawer .deviceModalHeader h2 { display:block; margin:4px 0 0; color:#203b5b; font-size:21px; line-height:1.15; font-weight:750; letter-spacing:-.5px; }
#premiumDrawer .deviceModalCloseBtn { display:grid; place-items:center; width:40px; height:40px; flex:0 0 40px; padding:0; margin:0; border:1px solid #e6edf5; border-radius:12px; background:#f8fafd; color:#647c98; line-height:1; }
#premiumDrawer .deviceModalCloseBtn svg { display:block; width:18px; height:18px; margin:0; pointer-events:none; }
#premiumDrawer .deviceModalCloseBtn:hover { background:#edf4ff; color:#126be0; }
#premiumDrawer .premium-body { padding:26px; background:#fff; }
#premiumDrawer .premium-body > * + * { margin-top:26px; }
#premiumDrawer .premium-hero { padding:26px 23px 22px; border:1px solid #dbe9fb; border-radius:22px; background:radial-gradient(ellipse at 100% 0,#dfeeff 0,transparent 60%),linear-gradient(145deg,#f8fbff,#fff 80%); box-shadow:0 8px 26px #2862aa08; }
#premiumDrawer .premium-badge-row { min-height:0; padding:6px 10px; gap:6px; border:1px solid #f3dcae; border-radius:7px; background:#fff7e8; color:#946015; font-size:10px; font-weight:750; letter-spacing:1px; text-transform:uppercase; }
#premiumDrawer .premium-badge-row img { width:15px; height:15px; }
#premiumDrawer .premium-headline { margin:19px 0 0; font-size:34px; line-height:1.12; letter-spacing:-1.25px; font-weight:800; color:#172e4d; }
#premiumDrawer .premium-headline span { color:#176fe5; }
#premiumDrawer .premium-hero .premium-hero-reassurance { margin:12px 0 0; font-size:13px; line-height:1.65; color:#657d99; }
#premiumDrawer .premium-price { margin-top:20px; align-items:baseline; min-height:0; gap:9px; font-size:45px; letter-spacing:-1.7px; color:#172e4d; }
#premiumDrawer .premium-price strong { line-height:1.15; }
#premiumDrawer .premium-price span { color:#7689a1; font-size:12px; font-weight:500; letter-spacing:0; }
#premiumDrawer .premium-hero-checkout { margin-top:20px; }
#premiumDrawer .premium-primary-btn { display:block; width:100%; min-height:52px; padding:14px 18px; border:0; border-radius:12px; background:linear-gradient(180deg,#229cff,#057ce9); color:#fff; font:750 15px/1.35 var(--premium-font); box-shadow:0 4px 0 #0563bc,0 8px 18px #087ee622; cursor:pointer; transition:background .15s,box-shadow .15s; }
#premiumDrawer .premium-primary-btn:hover:not(:disabled) { background:linear-gradient(180deg,#38a7ff,#0874d8); box-shadow:0 4px 0 #055db1,0 10px 23px #087ee630; }
#premiumDrawer .premium-primary-btn:disabled { background:#e6eef8; color:#7c91a9; box-shadow:none; cursor:default; }
#premiumDrawer .premium-hero .premium-hero-trust { display:flex; justify-content:center; align-items:center; gap:5px; margin:16px 0 0; font-size:10px; color:#7c8fa7; }
#premiumDrawer .premium-hero-trust svg { flex:0 0 12px; width:12px; height:12px; }
#premiumDrawer #premiumHeroStatus { color:#566e8b; }
#premiumDrawer .premium-plan-card { padding:0; border:0; border-radius:0; background:transparent; }
#premiumDrawer .premium-plan-card h3 { margin:0 0 14px; color:#304866; font-size:14px; letter-spacing:-.15px; }
#premiumDrawer .premium-feature-list { grid-template-columns:1fr 1fr; gap:10px; }
#premiumDrawer .premium-feature { grid-template-columns:30px minmax(0,1fr); padding:13px 0; border:0; gap:10px; grid-column:1/-1; }
#premiumDrawer .premium-feature:nth-child(-n+2) { grid-column:auto; display:block; padding:17px 14px; border:1px solid #e3ecf7; border-radius:14px; background:#f8fbff; }
#premiumDrawer .premium-feature-mark { width:30px; height:30px; border:0; border-radius:9px; background:#eaf3ff; color:#2679e1; }
#premiumDrawer .premium-feature-mark svg { width:18px; height:18px; }
#premiumDrawer .premium-feature:nth-child(2) .premium-feature-mark { background:#fff0e7; color:#dc914b; }
#premiumDrawer .premium-feature:nth-child(-n+2) .premium-feature-mark { margin-bottom:12px; }
#premiumDrawer .premium-feature strong { font-size:12px; color:#2d4665; line-height:1.4; }
#premiumDrawer .premium-feature small { font-size:11px; color:#8090a5; margin-top:4px; line-height:1.55; }
#premiumDrawer .premium-feature:nth-child(n+3) { padding:6px 2px; }
#premiumDrawer .premium-feature:nth-child(n+3) .premium-feature-mark { background:transparent; color:#7d97b5; }
#premiumDrawer .premium-restore-card,#premiumDrawer .premium-terms-card { margin-top:16px; padding:16px 0 0; border-top:1px solid #e8eef6; }
#premiumDrawer :is(.premium-restore-card,.premium-terms-card) summary { color:#667e9c; font-size:11px; font-weight:600; line-height:1.6; }
#premiumDrawer :is(.premium-restore-card,.premium-terms-card) summary::marker { color:#9bb0c9; }
#premiumDrawer .premium-terms-content p { font-size:11px; line-height:1.7; color:#778ba5; }
#premiumDrawer .premium-terms-content p + p { margin-top:7px; }
#premiumDrawer .premium-terms-price { font-size:14px; color:#355679; margin:3px 0 8px; }
#premiumDrawer .premium-restore-content p { color:#778ba5; line-height:1.7; font-size:11px; }
#premiumDrawer .premium-restore-input { border-color:#dbe5f2; border-radius:10px; background:#fbfcff; }
#premiumDrawer .premium-drawer-footer { padding:20px 26px max(20px,env(safe-area-inset-bottom)); border-top:1px solid #e7eef7; gap:12px; background:#fbfcff; }
#premiumDrawer .premium-checkout-caption { color:#93a1b4; font-size:10px; }
#premiumDrawer .premium-note { margin:0; }
#premiumDrawer .premium-trust-content { justify-content:center; gap:16px; }
#premiumDrawer .premium-trust-item { color:#8c9db2; font-size:10px; }
#premiumDrawer .premium-secondary-btn { border:1px solid #d9e5f4; border-radius:10px; min-height:44px; background:#f1f6fd; color:#36618e; font-weight:600; }
#premiumDrawer .premium-secondary-btn:disabled { opacity:.55; cursor:not-allowed; }
#premiumDrawer .premium-hero.is-active { padding:22px; }
#premiumDrawer .premium-hero.is-active .premium-price { font-size:26px; letter-spacing:-.7px; }
@media(max-width:600px) {
  #premiumDrawer .device-modal-v2 { width:100vw; border-left:0; }
  #premiumDrawer .deviceModalHeader { padding:18px 20px 16px; }
  #premiumDrawer .premium-body { padding:20px; }
  #premiumDrawer .premium-hero { padding:23px 20px 20px; }
  #premiumDrawer .premium-headline { font-size:32px; }
  #premiumDrawer .premium-drawer-footer { padding-inline:20px; }
}
@media(max-width:360px) {
  #premiumDrawer .premium-body { padding:16px; }
  #premiumDrawer .premium-hero { padding:20px 17px; }
  #premiumDrawer .premium-headline { font-size:29px; }
  #premiumDrawer .premium-feature:nth-child(-n+2) { padding:14px 11px; }
  #premiumDrawer .premium-hero .premium-hero-trust { font-size:9px; }
}
@media(prefers-reduced-motion:reduce) { #premiumDrawer .premium-primary-btn { transition:none; } }
