@layer theme{
  /* Light (default) */
  body[data-theme="light"]{
    --bg: #ffffff;
    --bg-elev: #ffffff;
    --bg-soft: #f5f6f8;
    --text: #0b0c0f;
    --text-2: rgba(11,12,15,.72);
    --text-3: rgba(11,12,15,.55);
    --border: rgba(16,24,40,.10);
    --border-2: rgba(16,24,40,.14);
    --primary: #111111;
    --primary-2: rgba(17,17,17,.85);
    --on-primary: #ffffff;
    --focus: rgba(17,17,17,.18);
    color-scheme: light;
  }

  /* Dark */
  body[data-theme="dark"], body.auth-page[data-theme="dark"]{
    --bg: #0b0c0f;
    --bg-elev: #111217;
    --bg-soft: #151823;
    --text: rgba(255,255,255,.92);
    --text-2: rgba(255,255,255,.75);
    --text-3: rgba(255,255,255,.58);
    --border: rgba(255,255,255,.10);
    --border-2: rgba(255,255,255,.16);
    --primary: #ffffff;
    --primary-2: rgba(255,255,255,.92);
    --on-primary: #0b0c0f;
    --focus: rgba(255,255,255,.20);
    color-scheme: dark;
  }

  /* Premium polish: subtle background wash */
  body{
    background:
      radial-gradient(900px 600px at 20% -10%, color-mix(in srgb, var(--bg-soft) 65%, transparent), transparent 60%),
      radial-gradient(900px 600px at 90% 0%, color-mix(in srgb, var(--bg-soft) 55%, transparent), transparent 62%),
      var(--bg);
  }

  /* Make headings + key copy pop */
  .topbar-left h1{ color: var(--text); }
  .topbar-left .sub{ color: var(--text-2); }
}


/* === PASS CLEAN NO-REGRESSION: report, tabs, modal, spacing, scroll chaining === */
/* CSS hygiene (v106): second pass (organization only) — grouped modal/report rules, readable selectors, no visual changes */
@layer theme {
  /* ===== Report layout ===== */
  /* Report fills width cleanly */
  .report-grid{ grid-template-columns:minmax(0,1fr) !important; }
  .report-grid > *{ min-width:0; }
  .report-card{ width:100% !important; max-width:none !important; min-width:0; }

  /* Report tabs: single row desktop, horizontal rail mobile */
  .report-card .report-tabs{
    display:grid !important;
    grid-template-columns:repeat(5, minmax(0,1fr)) !important;
    gap:8px !important;
    padding:10px !important;
    overflow:visible !important;
    overscroll-behavior:auto !important;
    align-items:stretch !important;
  }
  .report-card .report-tab{
    min-width:0 !important;
    width:100% !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    border-radius:999px !important;
    font-weight:600 !important;
    line-height:1.15 !important;
    padding:10px 10px !important;
    border:1px solid rgba(16,24,40,.12) !important;
    background:rgba(255,255,255,.96) !important;
    color:#111 !important;
  }
  body[data-theme="dark"] .report-card .report-tab{
    background:rgba(255,255,255,.08) !important;
    border-color:rgba(255,255,255,.14) !important;
    color:rgba(255,255,255,.88) !important;
  }
  .report-card .report-tab.is-active,
  .report-card .report-tab[aria-selected="true"]{
    background:#111 !important;
    border-color:#111 !important;
    color:#fff !important;
  }
  body[data-theme="dark"] .report-card .report-tab.is-active,
  body[data-theme="dark"] .report-card .report-tab[aria-selected="true"]{
    background:#111 !important;
    border-color:#111 !important;
    color:#fff !important;
  }
  .report-card .report-tab.is-active *,
  .report-card .report-tab[aria-selected="true"] *{
    color:inherit !important;
    -webkit-text-fill-color:currentColor !important;
  }
  .report-card .report-tabs-hint{
    display:none;
    margin-top:8px;
    padding:0 4px;
    font-size:12px;
    line-height:1.4;
    color:var(--text-3);
  }
  .report-card .report-why-intro{
    margin:0 0 10px !important;
    font-size:13px;
    line-height:1.45;
    color:var(--text-2);
  }
  .report-card .report-why-list{
    margin:0 !important;
    padding-left:20px !important;
  }
  .report-card .report-why-list li{
    margin:0 0 8px !important;
    line-height:1.45;
  }
  .report-card .report-why-note{
    margin-top:8px;
    font-size:12px;
    line-height:1.45;
    color:var(--text-3);
  }

  /* Let inner report scrollers chain to page instead of trapping */
  #result .report-card,
  #result .report-panes,
  #result .report-pane,
  #result .report-grid,
  #result .report-summary,
  #result .report-breakdown,
  #result .report-table-wrap{
    overscroll-behavior:auto !important;
  }

  /* Restore spacing between share callout and deal-ready package */
  .share-callout{ margin-bottom:14px !important; }
  .share-callout + .pvs-head{ margin-top:14px !important; padding-top:8px !important; border-top:1px solid var(--border) !important; }

  /* ===== Share / assistant modal stacking ===== */
  /* Share sheet + shared modals: visible above blur and centered */
  #shareSheetBackdrop.modal-backdrop,
  #dealAssistantBackdrop.modal-backdrop{ z-index:1000 !important; }
  #shareSheet.sheet{
    position:fixed !important; inset:0 !important; z-index:1001 !important;
    display:flex !important; align-items:center !important; justify-content:center !important;
    padding:24px !important;
  }
  #shareSheet.hidden,
  #shareSheet[hidden]{ display:none !important; }
  #shareSheet .sheet-card{
    width:min(520px, calc(100vw - 32px)) !important;
    margin:0 auto !important;
    border-radius:18px !important;
    box-shadow:0 24px 80px rgba(0,0,0,.22) !important;
  }

  #shareSheet .sheet-card{
    background: linear-gradient(180deg, rgba(255,255,255,.99), rgba(248,250,252,.97)) !important;
    border: 1px solid rgba(15,23,42,.14) !important;
    color: #0f172a !important;
    padding: 14px !important;
    box-shadow: 0 28px 90px rgba(15,23,42,.24), 0 10px 28px rgba(15,23,42,.10) !important;
    backdrop-filter: saturate(135%) blur(10px) !important;
    -webkit-backdrop-filter: saturate(135%) blur(10px) !important;
  }
  #shareSheet .sheet-head{
    display:flex !important; align-items:flex-start !important; justify-content:space-between !important; gap:10px !important;
    padding: 4px 4px 14px !important; margin-bottom: 12px !important; border-bottom:1px solid rgba(15,23,42,.10) !important;
  }
  #shareSheet .sheet-copy{
    display:grid !important;
    gap:7px !important;
    min-width:0 !important;
  }
  #shareSheet .sheet-kicker{
    font-size:11px !important;
    line-height:1.2 !important;
    font-weight:800 !important;
    letter-spacing:.09em !important;
    text-transform:uppercase !important;
    color:rgba(15,23,42,.60) !important;
  }
  #shareSheet .sheet-title{
    font-size:16px !important; font-weight:800 !important; letter-spacing:-.018em !important; line-height:1.18 !important; color:#0f172a !important;
  }
  #shareSheet .sheet-head .micro{
    margin-top:0 !important; font-size:12px !important; line-height:1.5 !important; color:rgba(15,23,42,.78) !important;
  }
  #shareSheet .sheet-close{
    width:32px !important; height:32px !important; border-radius:10px !important;
    border:1px solid rgba(15,23,42,.12) !important; background:#fff !important; color:#0f172a !important;
    display:grid !important; place-items:center !important; cursor:pointer !important;
    font-size:20px !important; line-height:1 !important; flex:0 0 auto !important;
  }
  #shareSheet .sheet-close:hover{ background:#f8fafc !important; }
  #shareSheet .sheet-body{ display:grid !important; gap:14px !important; }
  #shareSheet .sheet-outcomes{
    display:grid !important;
    gap:10px !important;
  }
  #shareSheet .sheet-outcome{
    display:grid !important;
    gap:4px !important;
    padding:12px 14px !important;
    border-radius:15px !important;
    border:1px solid rgba(15,23,42,.10) !important;
    background:linear-gradient(180deg, rgba(248,250,252,.98), rgba(241,245,249,.92)) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.7), 0 8px 18px rgba(15,23,42,.05) !important;
  }
  #shareSheet .sheet-outcome-title{
    font-size:12px !important;
    line-height:1.25 !important;
    font-weight:800 !important;
    letter-spacing:-.012em !important;
    color:#0f172a !important;
  }
  #shareSheet .sheet-outcome .micro{
    margin-top:0 !important;
    font-size:12px !important;
    line-height:1.5 !important;
    color:rgba(15,23,42,.76) !important;
  }
  #shareSheet .sheet-actions{
    display:grid !important;
    gap:10px !important;
    padding-top:2px !important;
  }
  #shareSheet .sheet-body .btn{ width:100% !important; min-height:48px !important; border-radius:13px !important; }
  #shareSheet .sheet-body .btn.btn-primary{ box-shadow:0 10px 22px rgba(15,23,42,.12) !important; }
  body[data-theme="dark"] #shareSheet .sheet-card{ background: linear-gradient(180deg, rgba(17,24,39,.98), rgba(15,23,42,.95)) !important; border-color: rgba(255,255,255,.14) !important; color:#fff !important; box-shadow: 0 30px 96px rgba(0,0,0,.48), 0 10px 26px rgba(0,0,0,.22) !important; }
  body[data-theme="dark"] #shareSheet .sheet-kicker{ color: rgba(255,255,255,.62) !important; }
  body[data-theme="dark"] #shareSheet .sheet-title{ color:#fff !important; }
  body[data-theme="dark"] #shareSheet .sheet-head .micro{ color: rgba(255,255,255,.82) !important; }
  body[data-theme="dark"] #shareSheet .sheet-head{ border-bottom-color: rgba(255,255,255,.12) !important; }
  body[data-theme="dark"] #shareSheet .sheet-close{ background: rgba(255,255,255,.04) !important; border-color: rgba(255,255,255,.14) !important; color:#fff !important; }
  body[data-theme="dark"] #shareSheet .sheet-outcome{ background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03)) !important; border-color:rgba(255,255,255,.12) !important; box-shadow: inset 0 1px 0 rgba(255,255,255,.04), 0 8px 18px rgba(0,0,0,.14) !important; }
  body[data-theme="dark"] #shareSheet .sheet-outcome-title{ color:#fff !important; }
  body[data-theme="dark"] #shareSheet .sheet-outcome .micro{ color:rgba(255,255,255,.82) !important; }
  #dealAssistantModal.modal{ z-index:1002 !important; }
  #dealAssistantModal.hidden,
  #dealAssistantModal[hidden]{ display:none !important; }
  #shareCardModal.share-card-modal{ z-index:1002 !important; }
  #shareCardModal.hidden,
  #shareCardModal[hidden]{ display:none !important; }

  /* Deal Assistant: keep the full action row reachable within the viewport. */
  #dealAssistantModal.modal{
    align-items:center !important;
    justify-content:center !important;
    padding:16px !important;
    overflow-y:auto !important;
  }
  #dealAssistantModal .modal-card{
    width:min(620px, calc(100vw - 32px)) !important;
    max-height:calc(100vh - 32px) !important;
    display:flex !important;
    flex-direction:column !important;
    overflow:hidden !important;
  }
  #dealAssistantModal .modal-head{
    flex:0 0 auto !important;
    padding:16px 18px 12px !important;
  }
  #dealAssistantModal .modal-body{
    flex:1 1 auto !important;
    max-height:none !important;
    overflow:auto !important;
    overscroll-behavior:contain !important;
    padding:14px 18px 18px !important;
  }
  #dealAssistantModal .modal-body > .row:last-child{
    position:sticky !important;
    bottom:0 !important;
    z-index:1 !important;
    margin-top:12px !important;
    padding-top:12px !important;
    background:linear-gradient(180deg, rgba(255,255,255,0), rgba(255,255,255,.96) 24%, rgba(255,255,255,.98) 100%) !important;
  }
  body[data-theme="dark"] #dealAssistantModal .modal-body > .row:last-child{
    background:linear-gradient(180deg, rgba(17,24,39,0), rgba(17,24,39,.94) 24%, rgba(17,24,39,.98) 100%) !important;
  }
  @media (max-width: 640px){
    #dealAssistantModal.modal{ padding:10px !important; }
    #dealAssistantModal .modal-card{
      width:calc(100vw - 12px) !important;
      max-height:calc(100vh - 12px) !important;
      border-radius:18px !important;
    }
    #dealAssistantModal .modal-head,
    #dealAssistantModal .modal-body{ padding-left:14px !important; padding-right:14px !important; }
    #dealAssistantModal .modal-body > .row:last-child{
      grid-template-columns:1fr !important;
    }
  }
  #dealAssistantModal .da-empty{
    margin-top:10px !important;
    padding:12px 14px !important;
    border:1px dashed rgba(15,23,42,.14) !important;
    border-radius:14px !important;
    background:rgba(248,250,252,.75) !important;
  }
  #dealAssistantModal .da-result{
    display:grid !important;
    gap:12px !important;
    margin-top:12px !important;
  }
  #dealAssistantModal .da-block{
    border:1px solid rgba(15,23,42,.10) !important;
    border-radius:16px !important;
    background:rgba(255,255,255,.96) !important;
    padding:14px !important;
    box-shadow:0 12px 36px rgba(15,23,42,.06) !important;
  }
  #dealAssistantModal .da-move{
    margin-top:4px !important;
    font-size:18px !important;
    line-height:1.2 !important;
    font-weight:800 !important;
    letter-spacing:-.02em !important;
    color:#0f172a !important;
  }
  #dealAssistantModal .da-grid{
    display:grid !important;
    grid-template-columns:minmax(0, 1fr) minmax(0, 1fr) !important;
    gap:12px !important;
  }
  #dealAssistantModal .da-why,
  #dealAssistantModal .da-reply,
  #dealAssistantModal .da-missing{
    margin-top:6px !important;
    color:#0f172a !important;
    font-size:14px !important;
    line-height:1.5 !important;
  }
  #dealAssistantModal .da-missing{
    margin-bottom:0 !important;
    padding-left:18px !important;
  }
  #dealAssistantModal .da-missing li + li{
    margin-top:6px !important;
  }
  #dealAssistantModal .da-reply{
    white-space:pre-wrap !important;
  }
  body[data-theme="dark"] #dealAssistantModal .da-empty{
    background:rgba(255,255,255,.03) !important;
    border-color:rgba(255,255,255,.12) !important;
    color:rgba(255,255,255,.72) !important;
  }
  body[data-theme="dark"] #dealAssistantModal .da-block{
    background:rgba(17,24,39,.96) !important;
    border-color:rgba(255,255,255,.10) !important;
    box-shadow:none !important;
  }
  body[data-theme="dark"] #dealAssistantModal .da-move,
  body[data-theme="dark"] #dealAssistantModal .da-why,
  body[data-theme="dark"] #dealAssistantModal .da-reply,
  body[data-theme="dark"] #dealAssistantModal .da-missing{
    color:#f8fafc !important;
  }
  @media (max-width: 640px){
    #dealAssistantModal .da-grid{
      grid-template-columns:1fr !important;
    }
  }

  /* ===== Report tabs mobile rail ===== */
  @media (max-width: 900px){
    .report-card{
      min-height:0 !important;
      max-height:none !important;
      overflow:visible !important;
    }
    .report-card .report-head{
      padding: 14px 14px 10px !important;
      gap: 10px !important;
    }
    .report-card .report-tabs{
      position:relative;
      display:flex !important;
      overflow-x:auto !important;
      overflow-y:hidden !important;
      flex-wrap:nowrap !important;
      -webkit-overflow-scrolling:touch;
      scrollbar-width:thin;
      scrollbar-color: rgba(17,17,17,.28) transparent;
      gap: 8px !important;
      padding: 8px 14px 14px !important;
      scroll-padding-left: 14px;
      scroll-padding-right: 52px;
      mask-image: none;
      -webkit-mask-image: none;
    }
    body[data-theme="dark"] .report-card .report-tabs{
      scrollbar-color: rgba(255,255,255,.34) transparent;
    }
    .report-card .report-tabs::-webkit-scrollbar{
      display:block;
      height:6px;
    }
    .report-card .report-tabs::-webkit-scrollbar-track{
      background: transparent;
    }
    .report-card .report-tabs::-webkit-scrollbar-thumb{
      background: rgba(17,17,17,.24);
      border-radius:999px;
    }
    body[data-theme="dark"] .report-card .report-tabs::-webkit-scrollbar-thumb{
      background: rgba(255,255,255,.30);
    }
    .report-card .report-tabs::after{
      content:'';
      flex:0 0 36px;
    }
    .report-card .report-tab{
      flex:0 0 auto !important;
      width:auto !important;
      min-width:98px !important;
      padding: 10px 14px !important;
      font-size: 13px !important;
      font-weight:700 !important;
    }
    .report-card .report-tab:last-child{
      margin-right: 0 !important;
    }
    .report-card .report-tabs-hint{
      display:flex !important;
      align-items:center;
      gap:8px;
      margin: 2px 14px 0 !important;
      padding: 0 !important;
      font-size: 12px !important;
      font-weight: 650;
      line-height: 1.4;
      color: var(--text-2);
    }
    .report-card .report-tabs-hint::before{
      content:'↔';
      flex:0 0 auto;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      width:18px;
      height:18px;
      border-radius:999px;
      background:rgba(17,17,17,.06);
      color:rgba(17,17,17,.72);
      font-size:11px;
      font-weight:800;
      line-height:1;
    }
    body[data-theme="dark"] .report-card .report-tabs-hint::before{
      background:rgba(255,255,255,.10);
      color:rgba(255,255,255,.82);
    }
    .report-card .report-panes{
      padding: 10px 14px 14px !important;
    }
    .report-card .report-pane,
    .report-card .report-pane p,
    .report-card .report-pane li{
      font-size: 13px !important;
      line-height: 1.48 !important;
    }
    .report-card .report-pane .muted,
    .report-card .locked-item .muted,
    .report-card .locked-intro .muted{
      color:var(--text-2) !important;
      opacity:1 !important;
    }
    .report-card .locked-title,
    .report-card .locked-intro-title{
      font-weight:700;
    }
    .report-card .locked-item{
      padding:12px !important;
    }

    #shareSheet.sheet{ padding:14px !important; align-items:center !important; justify-content:center !important; }
    #shareSheet .sheet-card{ width:min(420px, calc(100vw - 28px)) !important; border-radius:18px !important; padding:12px !important; }
    #shareSheet .sheet-head{ padding-bottom:8px !important; margin-bottom:6px !important; }
  }
}

/* === V104 micro-cleanup: upgrade modal polish + stale blur guard === */
@layer theme {
  /* ===== Upgrade modal shell / stacking ===== */
  /* Keep modal backdrop behind the card even if older patches changed stacking */
  #upgradeModal{
    position: fixed !important;
    inset: 0 !important;
    z-index: 1400 !important;
    display: grid !important;
    place-items: center !important;
    padding: 20px !important;
  }
  #upgradeModal.hidden,
  #upgradeModal[hidden]{ display:none !important; }
  #upgradeModal > .modal-backdrop{
    position:absolute !important;
    inset:0 !important;
    z-index:0 !important;
    background: rgba(15,23,42,.42) !important;
    backdrop-filter: blur(7px) saturate(105%) !important;
    -webkit-backdrop-filter: blur(7px) saturate(105%) !important;
  }
  #upgradeModal > .modal-card{
    position: relative !important;
    z-index: 1 !important;
    width: min(620px, calc(100vw - 28px)) !important;
    max-width: 620px !important;
    border-radius: 20px !important;
    overflow: hidden !important;
    border: 1px solid rgba(16,24,40,.12) !important;
    background: rgba(255,255,255,.97) !important;
    box-shadow: 0 24px 80px rgba(2,6,23,.28), 0 6px 24px rgba(2,6,23,.14) !important;
    filter: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }
  body[data-theme="dark"] #upgradeModal > .modal-card{
    background: rgba(17,19,24,.96) !important;
    border-color: rgba(255,255,255,.10) !important;
    box-shadow: 0 24px 80px rgba(0,0,0,.45), 0 6px 24px rgba(0,0,0,.30) !important;
  }

  /* ===== Upgrade modal header ===== */
  #upgradeModal .modal-head{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    padding: 16px 18px 10px !important;
    border-bottom: 1px solid rgba(16,24,40,.08) !important;
  }
  body[data-theme="dark"] #upgradeModal .modal-head{ border-bottom-color: rgba(255,255,255,.08) !important; }
  #upgradeModal .pill-pro{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-width:44px !important;
    height:30px !important;
    padding:0 10px !important;
    border-radius:999px !important;
    font-weight:700 !important;
    letter-spacing:.02em !important;
    color:#059669 !important;
    background: rgba(16,185,129,.10) !important;
    border:1px solid rgba(16,185,129,.28) !important;
  }
  #upgradeModal .modal-x{
    width:32px !important;
    height:32px !important;
    border-radius:10px !important;
    border:1px solid rgba(16,24,40,.10) !important;
    background: rgba(255,255,255,.82) !important;
    color:#111827 !important;
    cursor:pointer;
  }
  #upgradeModal .modal-x:hover{ background:#fff !important; }

  #upgradeModal h2#upgradeTitle{
    margin: 14px 18px 4px !important;
    font-size: 34px !important;
    line-height: 1.05 !important;
    letter-spacing: -.02em !important;
    font-weight: 750 !important;
  }
  #upgradeModal #upgradeMsg{
    margin: 0 18px 12px !important;
    font-size: 15px !important;
    line-height: 1.4 !important;
  }

  /* ===== Pricing panel / billing toggle ===== */
  #upgradeModal .upgrade-price{
    margin: 0 12px 10px !important;
    padding: 12px !important;
    border-radius: 14px !important;
    border: 1px solid rgba(16,24,40,.10) !important;
    background: linear-gradient(180deg, rgba(248,250,252,.92), rgba(255,255,255,.96)) !important;
  }
  body[data-theme="dark"] #upgradeModal .upgrade-price{
    border-color: rgba(255,255,255,.10) !important;
    background: linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02)) !important;
  }
  #upgradeModal .upgrade-toggle{
    display:flex !important;
    gap:8px !important;
    margin-bottom: 12px !important;
  }
  #upgradeModal .upgrade-tab{
    appearance:none !important;
    border:1px solid rgba(16,24,40,.10) !important;
    background: rgba(255,255,255,.86) !important;
    border-radius: 12px !important;
    padding: 10px 12px !important;
    font-weight: 650 !important;
    cursor: pointer;
    display:inline-flex !important;
    align-items:center !important;
    gap:8px !important;
    transition: transform .12s ease, border-color .12s ease, box-shadow .12s ease !important;
  }
  #upgradeModal .upgrade-tab.is-active{
    border-color: rgba(37,99,235,.45) !important;
    box-shadow: inset 0 0 0 1px rgba(59,130,246,.20), 0 2px 10px rgba(59,130,246,.12) !important;
    background: #fff !important;
  }
  #upgradeModal .save-badge{
    display:inline-flex !important;
    align-items:center !important;
    padding:3px 8px !important;
    border-radius:999px !important;
    font-size:12px !important;
    font-weight:700 !important;
    color:#1d4ed8 !important;
    background: rgba(59,130,246,.12) !important;
    border:1px solid rgba(59,130,246,.25) !important;
  }

  #upgradeModal .price-row{
    display:flex !important;
    align-items:flex-end !important;
    justify-content:space-between !important;
    gap:10px !important;
    flex-wrap: wrap !important;
  }
  #upgradeModal .price-main{
    display:flex !important;
    align-items:baseline !important;
    gap:10px !important;
  }
  #upgradeModal .price-amount{
    font-size: 42px !important;
    line-height: .95 !important;
    letter-spacing: -.03em !important;
    font-weight: 800 !important;
  }
  #upgradeModal .price-period{ font-size: 18px !important; font-weight: 600 !important; }
  #upgradeModal .price-sub{ font-size: 13px !important; }

  /* ===== Proof + bullets ===== */
  #upgradeModal .upgrade-proof{
    margin: 10px 14px 8px !important;
    padding: 10px 12px !important;
    border-radius: 12px !important;
    background: rgba(16,185,129,.06) !important;
    border:1px solid rgba(16,185,129,.18) !important;
  }
  #upgradeModal .proof-row{
    display:flex !important;
    align-items:flex-start !important;
    gap:10px !important;
    font-size:14px !important;
    line-height:1.35 !important;
  }
  #upgradeModal .proof-row + .proof-row{ margin-top:6px !important; }
  #upgradeModal .proof-dot{
    width:8px !important; height:8px !important; border-radius:999px !important;
    margin-top:6px !important; flex:0 0 auto !important;
    background:#60a5fa !important;
  }

  #upgradeModal .modal-list,
  #upgradeModal #upgradeBullets{
    margin: 6px 16px 8px 34px !important;
    padding:0 !important;
    display:grid !important;
    gap:6px !important;
    font-size:14px !important;
    line-height:1.35 !important;
  }
  #upgradeModal .upgrade-fineprint{
    margin: 8px 16px 10px !important;
    font-size: 12px !important;
  }
  /* ===== Footer actions ===== */
  #upgradeModal .modal-actions{
    padding: 0 16px 16px !important;
    display:flex !important;
    justify-content:flex-end !important;
    gap:8px !important;
    flex-wrap:wrap !important;
    border-top: 1px solid rgba(16,24,40,.08) !important;
    margin-top: 6px !important;
    padding-top: 12px !important;
  }
  body[data-theme="dark"] #upgradeModal .modal-actions{ border-top-color: rgba(255,255,255,.08) !important; }
  #upgradeModal .modal-actions .btn{ border-radius: 12px !important; }
  #upgradeModal [data-actions="guest"] .btn-primary{ margin-right:auto !important; }

  /* ===== Upgrade modal mobile QA pass (v118) ===== */
  /* ===== Upgrade modal mobile ===== */
  @media (max-width: 640px){
    #upgradeModal{
      padding: 10px !important;
      align-items: center !important;
    }
    #upgradeModal > .modal-card{
      width: calc(100vw - 12px) !important;
      max-height: calc(100dvh - 16px) !important;
      border-radius: 16px !important;
      overflow: auto !important;
      -webkit-overflow-scrolling: touch !important;
      color: #0f172a !important;
    }
    #upgradeModal .modal-head{
      padding: 12px 14px 8px !important;
      position: static !important;
      background: inherit !important;
      backdrop-filter: none !important;
      -webkit-backdrop-filter: none !important;
    }
    #upgradeModal .pill-pro{
      min-width: 40px !important;
      height: 28px !important;
      font-size: 12px !important;
      padding: 0 9px !important;
    }
    #upgradeModal .modal-x{
      width: 34px !important;
      height: 34px !important;
      border-radius: 11px !important;
    }
    #upgradeModal h2#upgradeTitle{
      margin: 10px 14px 4px !important;
      font-size: 24px !important;
      line-height: 1.08 !important;
    }
    #upgradeModal #upgradeMsg{
      margin: 0 14px 10px !important;
      font-size: 14px !important;
      line-height: 1.38 !important;
      color: rgba(15,23,42,.72) !important;
      opacity: 1 !important;
    }

    #upgradeModal .upgrade-price{
      margin: 0 10px 8px !important;
      padding: 10px !important;
      border-radius: 13px !important;
    }
    #upgradeModal .upgrade-toggle{
      flex-direction: column !important;
      gap: 6px !important;
      margin-bottom: 10px !important;
    }
    #upgradeModal .upgrade-tab{
      width: 100% !important;
      min-height: 44px !important;
      justify-content: space-between !important;
      padding: 10px 11px !important;
      border-radius: 11px !important;
      font-size: 14px !important;
      line-height: 1.2 !important;
    }
    #upgradeModal .upgrade-tab .save-badge{
      white-space: nowrap !important;
      margin-left: 8px !important;
      font-size: 11px !important;
      padding: 2px 7px !important;
    }
    #upgradeModal .price-row{
      align-items: flex-start !important;
      gap: 6px !important;
    }
    #upgradeModal .price-main{
      gap: 8px !important;
      flex-wrap: wrap !important;
    }
    #upgradeModal .price-amount{ font-size: 32px !important; }
    #upgradeModal .price-period{ font-size: 16px !important; }
    #upgradeModal .price-sub{
      width: 100% !important;
      font-size: 12px !important;
      line-height: 1.3 !important;
      color: rgba(15,23,42,.62) !important;
      opacity: 1 !important;
    }

    #upgradeModal .upgrade-proof{
      margin: 8px 10px 6px !important;
      padding: 9px 10px !important;
      border-radius: 11px !important;
      color: rgba(15,23,42,.88) !important;
      opacity: 1 !important;
    }
    #upgradeModal .proof-row{
      gap: 8px !important;
      font-size: 13px !important;
      line-height: 1.36 !important;
      color: rgba(15,23,42,.88) !important;
      opacity: 1 !important;
    }
    #upgradeModal .proof-dot{
      width: 7px !important;
      height: 7px !important;
      margin-top: 5px !important;
    }
    #upgradeModal .modal-list,
    #upgradeModal #upgradeBullets{
      margin: 6px 12px 6px 26px !important;
      gap: 5px !important;
      font-size: 13px !important;
      line-height: 1.38 !important;
      color: rgba(15,23,42,.9) !important;
      opacity: 1 !important;
    }
    #upgradeModal .modal-list li,
    #upgradeModal #upgradeBullets li{
      color: rgba(15,23,42,.9) !important;
      opacity: 1 !important;
    }
    #upgradeModal .upgrade-fineprint{
      margin: 8px 12px 10px !important;
      font-size: 11px !important;
      line-height: 1.35 !important;
      color: rgba(15,23,42,.66) !important;
      opacity: 1 !important;
    }

    #upgradeModal .modal-actions{
      justify-content: stretch !important;
      gap: 8px !important;
      padding: 10px 12px calc(12px + env(safe-area-inset-bottom, 0px)) !important;
      margin-top: 6px !important;
      background: rgba(255,255,255,.98) !important;
    }
    #upgradeModal .modal-actions .btn{
      text-align: center !important;
      min-height: 42px !important;
      width: 100% !important;
      flex: 1 1 100% !important;
      font-size: 13px !important;
      font-weight: 650 !important;
      line-height: 1.2 !important;
      opacity: 1 !important;
    }
    #upgradeModal [data-actions="guest"] .btn-primary{
      margin-right: 0 !important;
      order: 1 !important;
    }
    #upgradeModal [data-actions="guest"] .btn-ghost{
      flex: 1 1 calc(50% - 4px) !important;
      width: auto !important;
    }
    #upgradeModal [data-actions="guest"] .btn-ghost:last-child{
      min-width: 120px !important;
    }
    #upgradeModal [data-actions="user"] .btn-primary{
      order: 1 !important;
    }
  }
}


/* === V109 polish: usage_meta temporary-lock state (visual only) === */
@layer theme {
  .limit-banner.limit-banner--system{
    background: linear-gradient(180deg, rgba(59,130,246,.06), rgba(255,255,255,.92)) !important;
    border-color: rgba(59,130,246,.20) !important;
    box-shadow: 0 10px 28px rgba(37,99,235,.08) !important;
  }
  body[data-theme="dark"] .limit-banner.limit-banner--system{
    background: linear-gradient(180deg, rgba(59,130,246,.14), rgba(2,6,23,.58)) !important;
    border-color: rgba(96,165,250,.24) !important;
    box-shadow: 0 14px 34px rgba(2,6,23,.34) !important;
  }
  .limit-banner--system .limit-banner-inner{ align-items:center !important; }
  .limit-banner--system .limit-banner-copy{ min-width:0 !important; flex:1 1 300px !important; }
  .limit-banner--system .limit-banner-kicker{
    display:inline-flex !important;
    align-items:center !important;
    gap:6px !important;
    margin:0 0 6px !important;
    padding:4px 8px !important;
    border-radius:999px !important;
    font-size:11px !important;
    font-weight:700 !important;
    letter-spacing:.04em !important;
    text-transform:uppercase !important;
    color:#1d4ed8 !important;
    background: rgba(59,130,246,.10) !important;
    border:1px solid rgba(59,130,246,.20) !important;
  }
  body[data-theme="dark"] .limit-banner--system .limit-banner-kicker{
    color:#bfdbfe !important;
    background: rgba(59,130,246,.16) !important;
    border-color: rgba(96,165,250,.24) !important;
  }
  .limit-banner--system .limit-banner-title{ margin-bottom:6px !important; }
  .limit-banner--system .limit-banner-text{ margin-bottom:0 !important; max-width:62ch !important; }
  .limit-banner--system .limit-banner-actions .btn{ border-radius:12px !important; }

  /* Banner consistency pass: warning + limit variants */
  .limit-banner.limit-banner--warning{
    background: linear-gradient(180deg, rgba(245,158,11,.08), rgba(255,255,255,.94)) !important;
    border-color: rgba(245,158,11,.22) !important;
    box-shadow: 0 10px 28px rgba(217,119,6,.08) !important;
  }
  body[data-theme="dark"] .limit-banner.limit-banner--warning{
    background: linear-gradient(180deg, rgba(245,158,11,.14), rgba(2,6,23,.58)) !important;
    border-color: rgba(251,191,36,.26) !important;
    box-shadow: 0 14px 34px rgba(2,6,23,.34) !important;
  }
  .limit-banner.limit-banner--limit{
    background: linear-gradient(180deg, rgba(249,115,22,.07), rgba(255,255,255,.94)) !important;
    border-color: rgba(249,115,22,.20) !important;
    box-shadow: 0 10px 28px rgba(194,65,12,.08) !important;
  }
  body[data-theme="dark"] .limit-banner.limit-banner--limit{
    background: linear-gradient(180deg, rgba(249,115,22,.14), rgba(2,6,23,.58)) !important;
    border-color: rgba(251,146,60,.24) !important;
    box-shadow: 0 14px 34px rgba(2,6,23,.34) !important;
  }

  .limit-banner--warning .limit-banner-inner,
  .limit-banner--limit .limit-banner-inner{ align-items:center !important; }
  .limit-banner--warning .limit-banner-copy,
  .limit-banner--limit .limit-banner-copy{ min-width:0 !important; flex:1 1 300px !important; }
  .limit-banner--warning .limit-banner-title,
  .limit-banner--limit .limit-banner-title{ margin-bottom:6px !important; }
  .limit-banner--warning .limit-banner-text,
  .limit-banner--limit .limit-banner-text{ margin-bottom:0 !important; max-width:62ch !important; }
  .limit-banner--warning .limit-banner-actions .btn,
  .limit-banner--limit .limit-banner-actions .btn{ border-radius:12px !important; }

  .limit-banner--warning .limit-banner-kicker,
  .limit-banner--limit .limit-banner-kicker{
    display:inline-flex !important;
    align-items:center !important;
    gap:6px !important;
    margin:0 0 6px !important;
    padding:4px 8px !important;
    border-radius:999px !important;
    font-size:11px !important;
    font-weight:700 !important;
    letter-spacing:.04em !important;
    text-transform:uppercase !important;
    border:1px solid transparent !important;
  }
  .limit-banner--warning .limit-banner-kicker{
    color:#b45309 !important;
    background: rgba(245,158,11,.12) !important;
    border-color: rgba(245,158,11,.24) !important;
  }
  body[data-theme="dark"] .limit-banner--warning .limit-banner-kicker{
    color:#fde68a !important;
    background: rgba(245,158,11,.18) !important;
    border-color: rgba(251,191,36,.28) !important;
  }
  .limit-banner--limit .limit-banner-kicker{
    color:#c2410c !important;
    background: rgba(249,115,22,.12) !important;
    border-color: rgba(249,115,22,.22) !important;
  }
  body[data-theme="dark"] .limit-banner--limit .limit-banner-kicker{
    color:#fed7aa !important;
    background: rgba(249,115,22,.18) !important;
    border-color: rgba(251,146,60,.28) !important;
  }

  .pro-upsell.pro-upsell--system{
    margin-top: 12px !important;
    border: 1px solid rgba(59,130,246,.18) !important;
    border-radius: 16px !important;
    background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(248,250,252,.94)) !important;
    box-shadow: 0 10px 30px rgba(15,23,42,.06) !important;
    padding: 14px !important;
  }
  body[data-theme="dark"] .pro-upsell.pro-upsell--system{
    background: linear-gradient(180deg, rgba(255,255,255,.04), rgba(2,6,23,.48)) !important;
    border-color: rgba(96,165,250,.22) !important;
    box-shadow: 0 14px 34px rgba(0,0,0,.20) !important;
  }
  .pro-upsell--system .pro-upsell__eyebrow{
    display:inline-flex !important;
    align-items:center !important;
    margin:0 0 6px !important;
    padding:4px 8px !important;
    border-radius:999px !important;
    font-size:11px !important;
    font-weight:700 !important;
    letter-spacing:.04em !important;
    text-transform:uppercase !important;
    color:#1d4ed8 !important;
    background: rgba(59,130,246,.10) !important;
    border:1px solid rgba(59,130,246,.20) !important;
  }
  body[data-theme="dark"] .pro-upsell--system .pro-upsell__eyebrow{ color:#bfdbfe !important; background: rgba(59,130,246,.14) !important; border-color: rgba(96,165,250,.22) !important; }
  .pro-upsell--system .pro-upsell__title{ font-weight: 750 !important; margin:0 0 4px !important; }
  .pro-upsell--system .pro-upsell__body{ opacity:.86 !important; margin:0 !important; }
  .pro-upsell--system .pro-upsell__actions{
    margin-top:10px !important;
    display:flex !important;
    gap:8px !important;
    flex-wrap:wrap !important;
  }
  .pro-upsell--system .pro-upsell__actions .btn{ border-radius:12px !important; }
  @media (max-width: 640px){
    .limit-banner--system .limit-banner-actions,
    .limit-banner--warning .limit-banner-actions,
    .limit-banner--limit .limit-banner-actions{ width:100% !important; }
    .limit-banner--system .limit-banner-actions .btn,
    .limit-banner--warning .limit-banner-actions .btn,
    .limit-banner--limit .limit-banner-actions .btn{ flex:1 1 auto !important; text-align:center !important; }
    .pro-upsell--system .pro-upsell__actions .btn{ flex:1 1 auto !important; text-align:center !important; }
  }
}


/* V111 hygiene: inline usage banner slot under Calculate */
#limitBannerInline{
  margin-top:10px;
  width:100%;
}
#limitBannerInline.hidden{ display:none !important; }
#limitBannerInline .limit-banner-inner{
  padding:12px 14px !important;
  gap:10px !important;
}
#limitBannerInline .limit-banner-actions{
  gap:8px !important;
}
#limitBannerInline .limit-banner-actions .btn{
  min-height:40px;
}


/* V112: compact inline low-usage nudge under Calculate */
#limitBannerInline.limit-inline-nudge{
  margin-top:8px;
  border:none;
  background:transparent;
  box-shadow:none;
  padding:0;
  width:auto;
  max-width:360px;
  align-self:flex-end;
}
#limitBannerInline.limit-inline-nudge .limit-inline-nudge__row{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:4px;
}
#limitBannerInline.limit-inline-nudge .limit-inline-nudge__copy{
  font-size:12px;
  line-height:1.35;
  color:rgba(20,24,40,.68);
  text-align:right;
}
#limitBannerInline.limit-inline-nudge .limit-inline-nudge__copy strong{
  font-weight:700;
  color:rgba(20,24,40,.9);
}
#limitBannerInline.limit-inline-nudge .limit-inline-nudge__actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
#limitBannerInline.limit-inline-nudge .limit-inline-nudge__link{
  font-size:12px;
  font-weight:600;
  color:rgba(20,24,40,.72);
  text-decoration:none;
  border-bottom:1px solid rgba(20,24,40,.18);
  padding-bottom:1px;
}
#limitBannerInline.limit-inline-nudge .limit-inline-nudge__link:hover{
  color:rgba(20,24,40,.92);
  border-bottom-color:rgba(20,24,40,.35);
}
@media (max-width: 640px){
  #limitBannerInline.limit-inline-nudge{
    max-width:none;
    width:100%;
    align-self:stretch;
  }
  #limitBannerInline.limit-inline-nudge .limit-inline-nudge__row{ align-items:flex-start; }
  #limitBannerInline.limit-inline-nudge .limit-inline-nudge__copy{ text-align:left; }
  #limitBannerInline.limit-inline-nudge .limit-inline-nudge__actions{ justify-content:flex-start; }
}


/* V113 tiny polish: inline low-usage nudge readability + dark theme */
#limitBannerInline.limit-inline-nudge .limit-inline-nudge__copy{
  letter-spacing:.01em;
}
#limitBannerInline.limit-inline-nudge .limit-inline-nudge__actions{
  gap:8px;
}
#limitBannerInline.limit-inline-nudge .limit-inline-nudge__link{
  border-bottom:none;
  border:1px solid rgba(20,24,40,.12);
  border-radius:999px;
  padding:4px 8px;
  background:rgba(255,255,255,.72);
}
#limitBannerInline.limit-inline-nudge .limit-inline-nudge__link:hover{
  background:rgba(255,255,255,.94);
}
body[data-theme="dark"] #limitBannerInline.limit-inline-nudge .limit-inline-nudge__copy{
  color:rgba(255,255,255,.70);
}
body[data-theme="dark"] #limitBannerInline.limit-inline-nudge .limit-inline-nudge__copy strong{
  color:rgba(255,255,255,.92);
}
body[data-theme="dark"] #limitBannerInline.limit-inline-nudge .limit-inline-nudge__link{
  color:rgba(255,255,255,.82);
  border-color:rgba(255,255,255,.12);
  background:rgba(255,255,255,.04);
}
body[data-theme="dark"] #limitBannerInline.limit-inline-nudge .limit-inline-nudge__link:hover{
  color:#fff;
  border-color:rgba(255,255,255,.22);
  background:rgba(255,255,255,.08);
}


/* --- V115 Guest-page polish pass (copy support + hierarchy only) --- */
.form-actions .dock-right.nav-actions{
  gap: 10px !important;
}
.form-actions .dock-right .actions-row{
  margin-bottom: 2px !important;
}
.form-actions .dock-right .terms-line{
  font-size: 12px !important;
  opacity: .78;
}
.form-actions .dock-right .terms-line a{
  text-underline-offset: 2px;
}
.usage-note{
  color: rgba(0,0,0,.68);
}
.usage-note strong{
  color: rgba(0,0,0,.86);
  font-weight: 700;
}
body[data-theme="dark"] .usage-note{ color: rgba(229,231,235,.78); }
body[data-theme="dark"] .usage-note strong{ color: rgba(229,231,235,.94); }
.history-guest h2{
  letter-spacing: -.02em;
}
.history-guest .muted{
  max-width: 62ch;
}
.card.soft.hover-lift .u-s33{
  font-size: 15px;
  letter-spacing: -.01em;
}
.card.soft.hover-lift .u-s34{
  font-size: 13px;
  opacity: .82;
}
.card.soft.hover-lift .u-s35 .btn{
  border-color: rgba(0,0,0,.10) !important;
  color: rgba(0,0,0,.78);
}
.card.soft.hover-lift .u-s35 .btn:hover{
  border-color: rgba(0,0,0,.16) !important;
}
body[data-theme="dark"] .card.soft.hover-lift .u-s35 .btn{
  border-color: rgba(148,163,184,.22) !important;
  color: rgba(229,231,235,.88);
}

/* === V116 micro-pass: guest results conversion polish (copy hierarchy only) === */
@layer theme {
  /* Locked report pane intro + CTAs */
  .locked-intro{
    margin: 0 0 12px;
    padding: 12px 14px;
    border-radius: 14px;
    border: 1px solid rgba(16,24,40,.08);
    background: rgba(255,255,255,.65);
  }
  body[data-theme="dark"] .locked-intro{
    border-color: rgba(255,255,255,.10);
    background: rgba(255,255,255,.03);
  }
  .locked-intro-title{
    font-weight: 700;
    letter-spacing: -.01em;
    margin: 0 0 4px;
  }
  .locked-intro .muted{
    font-size: 13px;
    line-height: 1.35;
    margin: 0;
  }

  .mini-cta{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    margin-top: 12px;
  }
  .mini-cta .btn{ min-height: 40px; }
  .mini-cta--locked .btn-primary{
    box-shadow: 0 8px 22px rgba(0,0,0,.08);
  }
  .mini-cta--locked .btn-ghost{
    background: rgba(255,255,255,.75);
    border-color: rgba(16,24,40,.12);
  }
  body[data-theme="dark"] .mini-cta--locked .btn-ghost{
    background: rgba(255,255,255,.05);
    border-color: rgba(255,255,255,.14);
  }

  /* Keep locked-note readable but not shouty */
  .locked-note{
    margin-top: 10px;
    padding-top: 10px;
    font-size: 13px;
    line-height: 1.4;
  }

  /* Guest upsell card hierarchy: one stronger CTA, quieter support copy */
  .upsell-block .confidence-line{
    margin: 4px 0 0;
    font-weight: 600;
    color: var(--text);
    opacity: .84;
  }
  .upsell-block .muted{
    margin-top: 4px;
    font-size: 13px;
    line-height: 1.35;
  }
  .upsell-block .upsell-actions .btn-ghost{
    background: rgba(255,255,255,.72);
  }
  body[data-theme="dark"] .upsell-block .upsell-actions .btn-ghost{
    background: rgba(255,255,255,.05);
  }

  /* Better scan rhythm for feature list */
  .locked-item .muted,
  .pvs-list li,
  .upsell-block li{
    line-height: 1.35;
  }
}

/* === V117 micro-pass: guest mobile polish (action dock + results header + report tabs) === */
@layer theme {
  @media (max-width: 900px){
    /* Results header: cleaner stacking and scan rhythm */
    .report-summary{ padding: 16px !important; }
    .report-summary-head{
      align-items:flex-start !important;
      gap: 12px !important;
    }
    .report-summary-head > div:first-child{ width:100%; min-width:0; }
    .report-meta-inline{
      width:100% !important;
      justify-content:flex-start !important;
      align-items:center !important;
      flex-wrap:wrap !important;
      gap:8px !important;
      margin-top: 8px !important;
    }
    .report-meta-inline .pill{
      display:inline-flex !important;
      align-items:center !important;
      justify-content:center !important;
      min-height: 30px !important;
      padding: 7px 11px !important;
      border-radius: 999px !important;
      border: 1px solid rgba(15,23,42,.12) !important;
      background: rgba(248,250,252,.96) !important;
      color: rgba(15,23,42,.84) !important;
      box-shadow: 0 1px 2px rgba(15,23,42,.05) !important;
      font-size: 12px !important;
      font-weight: 700 !important;
      line-height: 1.1 !important;
      letter-spacing: -.01em !important;
      white-space: nowrap !important;
    }
    body[data-theme="dark"] .report-meta-inline .pill{
      border-color: rgba(148,163,184,.24) !important;
      background: rgba(15,23,42,.72) !important;
      color: rgba(229,231,235,.92) !important;
      box-shadow: none !important;
    }
    .range-premium{ margin-top: 8px !important; }
    .range-big{
      font-size: clamp(24px, 6.2vw, 34px) !important;
      line-height: 1.08 !important;
      letter-spacing: -.025em !important;
      overflow-wrap:anywhere;
    }
    .range-sub{
      margin-top: 8px !important;
      line-height: 1.35 !important;
    }
    .trust-lines{ margin-top: 8px !important; }
    .trust-lines > div{
      line-height: 1.35 !important;
      overflow-wrap:anywhere;
    }

    .report-actions-wrap{
      margin-top: 12px !important;
      padding-top: 10px !important;
    }
    .report-actions-label{
      margin-bottom: 8px !important;
      font-size: 12px !important;
    }
    .report-actions{
      margin-top: 0 !important;
      justify-content:flex-start !important;
      gap: 8px !important;
      width:100%;
    }
    .report-actions .btn{
      min-height: 40px !important;
      padding-inline: 12px !important;
      font-size: 13px !important;
    }

    /* Guest value stack: tighter mobile rhythm */
    .pro-value-stack{ margin-top: 12px !important; padding: 12px !important; }
    .share-callout,
    .pvs-head{ gap: 10px !important; }
    .share-callout{
      flex-direction: column !important;
      align-items: stretch !important;
    }
    .share-callout .share-copy,
    .share-callout .share-actions,
    .pvs-actions{ width:100%; }
    .share-callout .share-actions .btn,
    .pvs-actions .btn{ width:100%; justify-content:center; }
    .pvs-actions{ display:grid !important; grid-template-columns:1fr; gap:8px !important; }
    .pvs-toggle{ gap: 6px !important; }
    .pvs-chip{
      padding: 8px 10px !important;
      font-size: 12px !important;
      min-height: 36px !important;
    }

    /* Report tabs: better mobile rail touch ergonomics */
    .report-card .report-tabs{
      gap: 8px !important;
      padding: 8px 10px !important;
      scroll-snap-type: x proximity;
      scroll-padding-left: 10px;
      scroll-padding-right: 38px;
      mask-image: linear-gradient(to right, transparent 0, #000 10px, #000 calc(100% - 24px), transparent 100%);
      -webkit-mask-image: linear-gradient(to right, transparent 0, #000 10px, #000 calc(100% - 24px), transparent 100%);
    }
    .report-card .report-tab{
      min-width: 104px !important;
      padding: 10px 14px !important;
      font-size: 13px !important;
      scroll-snap-align: start;
    }
  }

  @media (max-width: 640px){
    #shareSheetBackdrop.modal-backdrop{
      background: rgba(15,23,42,.60) !important;
      backdrop-filter: blur(12px) saturate(112%) brightness(.90) !important;
      -webkit-backdrop-filter: blur(12px) saturate(112%) brightness(.90) !important;
    }
    #shareSheet.sheet{
      padding: 12px !important;
      align-items:center !important;
      justify-content:center !important;
    }
    #shareSheet .sheet-card{
      position:relative !important;
      width:min(420px, calc(100vw - 24px)) !important;
      border-radius:22px !important;
      padding:16px !important;
      border:1px solid rgba(15,23,42,.16) !important;
      box-shadow: 0 36px 96px rgba(15,23,42,.30), 0 14px 32px rgba(15,23,42,.14) !important;
      margin:0 auto !important;
    }
    #shareSheet .sheet-head{
      padding-top:0 !important;
      padding-bottom:12px !important;
      margin-bottom:12px !important;
    }
    #shareSheet .sheet-copy{
      gap:8px !important;
    }
    #shareSheet .sheet-kicker{
      font-size:10px !important;
      letter-spacing:.1em !important;
      color:rgba(15,23,42,.66) !important;
    }
    #shareSheet .sheet-title{
      font-size:18px !important;
      line-height:1.15 !important;
    }
    #shareSheet .sheet-head .micro{
      font-size:12.5px !important;
      line-height:1.52 !important;
      color:rgba(15,23,42,.82) !important;
    }
    #shareSheet .sheet-outcomes{
      gap:10px !important;
    }
    #shareSheet .sheet-outcome{
      padding:13px 14px !important;
      gap:5px !important;
      border-color:rgba(15,23,42,.12) !important;
      box-shadow: inset 0 1px 0 rgba(255,255,255,.8), 0 10px 22px rgba(15,23,42,.07) !important;
    }
    #shareSheet .sheet-outcome-title{
      font-size:12.5px !important;
      font-weight:800 !important;
    }
    #shareSheet .sheet-outcome .micro{
      font-size:12.5px !important;
      line-height:1.52 !important;
      color:rgba(15,23,42,.80) !important;
    }
    #shareSheet .sheet-actions{
      gap:11px !important;
      padding-top:4px !important;
    }
    /* Action dock: preserve hierarchy and reduce crowding */
    .form-actions .decision-dock{
      padding: 12px !important;
      border-radius: 14px !important;
    }
    .form-actions .action-dock{
      gap: 10px !important;
    }
    .form-actions .dock-left{
      display:grid;
      gap:8px;
    }
    .usage-note{
      font-size: 12px !important;
      line-height: 1.35 !important;
      margin: 0 !important;
    }
    .form-actions .usage-panel{
      padding: 10px 12px !important;
      border-radius: 14px !important;
    }
    .form-actions .usage-topline{
      display:grid !important;
      gap:4px !important;
    }
    .form-actions .usage-metrics{
      display:flex;
      flex-wrap:wrap;
      gap:4px 6px;
      line-height:1.25;
    }
    .form-actions .dock-right.nav-actions{
      gap: 8px !important;
      align-items: stretch !important;
    }
    .form-actions .dock-right .actions-row{
      display:grid !important;
      grid-template-columns: minmax(0,1fr) minmax(0,1fr) !important;
      gap: 8px !important;
      width:100%;
      white-space: normal !important;
    }
    .form-actions .dock-right .actions-row #calcBtn{
      grid-column: 1 / -1;
      width: 100%;
    }
    .form-actions .dock-right .actions-row .btn{
      min-width: 0 !important;
      width: 100%;
      min-height: 42px !important;
      justify-content:center;
      padding-inline: 10px !important;
    }
    .form-actions .dock-right .terms-line{
      font-size: 11.5px !important;
      line-height: 1.35 !important;
      opacity: .84;
      max-width:none !important;
    }
    #limitBannerInline.limit-inline-nudge{
      margin-top: 2px !important;
    }
    #limitBannerInline.limit-inline-nudge .limit-inline-nudge__copy{
      font-size: 11.5px !important;
      line-height: 1.32 !important;
    }
    #limitBannerInline.limit-inline-nudge .limit-inline-nudge__actions{
      gap: 6px !important;
    }
    #limitBannerInline.limit-inline-nudge .limit-inline-nudge__link{
      font-size: 11.5px !important;
      padding: 4px 7px !important;
    }

    /* Results card mobile tightening */
    .report-card .report-tabs{
      margin-inline: -2px;
    }
    .report-summary-head .kicker{ margin-bottom: 6px !important; }
    .report-actions{
      display:grid !important;
      grid-template-columns: 1fr;
      align-items:stretch !important;
    }
    .report-actions .divider{ display:none !important; }
    .report-actions .btn{ width:100%; justify-content:center; }
  }
}


/* === V122 micro-pass: share card preview modal polish (desktop + mobile) === */
@layer theme {
  #shareCardBackdrop.modal-backdrop{
    z-index: 1001 !important;
    background: rgba(15,23,42,.42) !important;
    backdrop-filter: blur(7px) saturate(105%) !important;
    -webkit-backdrop-filter: blur(7px) saturate(105%) !important;
  }
  #shareCardModal.share-card-modal{
    position: fixed !important;
    inset: 0 !important;
    z-index: 1002 !important;
    display: grid !important;
    place-items: center !important;
    padding: 20px !important;
  }
  #shareCardModal.share-card-modal.hidden,
  #shareCardModal.share-card-modal[hidden]{ display:none !important; }
  #shareCardModal .modal-card.sharecard-card{
    width: min(640px, calc(100vw - 28px)) !important;
    max-height: min(86vh, 820px) !important;
    border-radius: 20px !important;
    overflow: hidden !important;
    border: 1px solid rgba(15,23,42,.10) !important;
    background: rgba(255,255,255,.97) !important;
    box-shadow: 0 24px 80px rgba(2,6,23,.28), 0 6px 24px rgba(2,6,23,.14) !important;
    display: grid !important;
    grid-template-rows: auto 1fr !important;
  }
  #shareCardModal .modal-head{
    display:flex !important; align-items:flex-start !important; justify-content:space-between !important; gap:12px !important;
    padding: 14px 14px 12px !important;
    border-bottom: 1px solid rgba(15,23,42,.08) !important;
    background: linear-gradient(to bottom, rgba(248,250,252,.95), rgba(255,255,255,.96)) !important;
  }
  #shareCardModal .modal-title{
    font-size: 15px !important; font-weight: 700 !important; letter-spacing: -.01em !important; color:#0f172a !important;
  }
  #shareCardModal #shareCardHint{
    margin-top: 2px !important; font-size: 12px !important; line-height: 1.35 !important; color: rgba(15,23,42,.68) !important;
  }
  #shareCardModal .modal-close{
    width: 34px !important; height: 34px !important; border-radius: 10px !important;
    border: 1px solid rgba(15,23,42,.12) !important; background: #fff !important; color:#0f172a !important;
    display:grid !important; place-items:center !important; font-size: 20px !important; line-height:1 !important;
  }
  #shareCardModal .modal-close:hover{ background:#f8fafc !important; }
  #shareCardModal .modal-body{
    padding: 12px !important;
    display: grid !important;
    gap: 12px !important;
    overflow: auto !important;
  }
  #shareCardModal .sharecard-preview{
    border-radius: 14px !important;
    border: 1px solid rgba(15,23,42,.10) !important;
    background: linear-gradient(180deg, rgba(248,250,252,.9), rgba(255,255,255,.96)) !important;
    padding: 10px !important;
  }
  #shareCardModal .sharecard-preview img{
    display:block !important;
    width:100% !important;
    height:auto !important;
    border-radius: 10px !important;
    border:1px solid rgba(15,23,42,.08) !important;
    background:#fff !important;
  }
  #shareCardModal .sharecard-actions{
    display:grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
  }
  #shareCardModal .sharecard-actions .btn{
    min-height: 44px !important;
    border-radius: 12px !important;
    width: 100% !important;
    justify-content: center !important;
  }

  #shareCardModal .sharecard-upsell{
    border-top: 1px solid rgba(15,23,42,.08) !important;
    padding-top: 10px !important;
    display: grid !important;
    gap: 8px !important;
  }
  #shareCardModal .sharecard-upsell[hidden]{
    display: none !important;
  }
  #shareCardModal .sharecard-upsell__text{
    font-size: 12px !important;
    color: rgba(15,23,42,.72) !important;
    font-weight: 600 !important;
  }
  #shareCardModal .sharecard-upsell__actions{
    display:flex !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
  }
  #shareCardModal .sharecard-upsell__actions .btn{
    min-height: 38px !important;
    border-radius: 10px !important;
  }
  body[data-theme="dark"] #shareCardModal .sharecard-upsell{
    border-top-color: rgba(255,255,255,.10) !important;
  }
  body[data-theme="dark"] #shareCardModal .sharecard-upsell__text{
    color: rgba(255,255,255,.76) !important;
  }

  body[data-theme="dark"] #shareCardModal .modal-card.sharecard-card{
    background: rgba(17,24,39,.96) !important;
    border-color: rgba(255,255,255,.10) !important;
    color:#fff !important;
  }
  body[data-theme="dark"] #shareCardModal .modal-head{
    background: linear-gradient(to bottom, rgba(17,24,39,.96), rgba(17,24,39,.94)) !important;
    border-bottom-color: rgba(255,255,255,.10) !important;
  }
  body[data-theme="dark"] #shareCardModal .modal-title{ color:#fff !important; }
  body[data-theme="dark"] #shareCardModal #shareCardHint{ color: rgba(255,255,255,.74) !important; }
  body[data-theme="dark"] #shareCardModal .modal-close{
    background: rgba(255,255,255,.04) !important;
    border-color: rgba(255,255,255,.14) !important;
    color:#fff !important;
  }
  body[data-theme="dark"] #shareCardModal .sharecard-preview{
    background: rgba(255,255,255,.02) !important;
    border-color: rgba(255,255,255,.10) !important;
  }
  body[data-theme="dark"] #shareCardModal .sharecard-preview img{
    border-color: rgba(255,255,255,.10) !important;
    background: rgba(255,255,255,.02) !important;
  }

  @media (max-width: 700px){
    #shareCardBackdrop.modal-backdrop{
      background: rgba(2,6,23,.78) !important;
      backdrop-filter: blur(10px) saturate(94%) brightness(.76) !important;
      -webkit-backdrop-filter: blur(10px) saturate(94%) brightness(.76) !important;
    }
    #shareCardModal.share-card-modal{
      padding: 12px !important;
      place-items: center !important;
    }
    #shareCardModal .modal-card.sharecard-card{
      width:100% !important;
      max-height: 88vh !important;
      border-radius: 18px !important;
      background: #ffffff !important;
      border-color: rgba(15,23,42,.20) !important;
      box-shadow: 0 36px 110px rgba(2,6,23,.54), 0 18px 54px rgba(2,6,23,.28) !important;
    }
    #shareCardModal .modal-head{ padding: 12px 12px 10px !important; }
    #shareCardModal .modal-body{ padding: 10px !important; gap:10px !important; }
    #shareCardModal .sharecard-actions{ grid-template-columns: 1fr !important; }
    #shareCardModal .sharecard-upsell__actions{ display:grid !important; grid-template-columns:1fr !important; }
  }
}

/* === V126 micro-pass: report card spacing polish (post-upsell cleanup) === */
@layer theme {
  /* Tighten the top rhythm now that the duplicate guest upsell card is gone */
  .report-card{
    scroll-margin-top: 88px;
  }
  .report-card .report-summary{
    padding-bottom: 8px !important;
  }
  .report-card .report-summary-head{
    margin-bottom: 4px !important;
  }
  .report-card .report-summary > .muted,
  .report-card .report-summary .report-subhead{
    margin-bottom: 8px !important;
  }
  .report-card .report-tabs{
    margin-top: 2px !important;
    border-top: 1px solid rgba(16,24,40,.06);
    padding-top: 12px !important;
  }
  body[data-theme="dark"] .report-card .report-tabs{
    border-top-color: rgba(255,255,255,.08);
  }
  @media (max-width: 900px){
    .report-card{
      scroll-margin-top: 72px;
    }
    .report-card .report-summary{
      padding-bottom: 6px !important;
    }
    .report-card .report-tabs{
      margin-top: 0 !important;
      padding-top: 10px !important;
    }
  }
}


/* === V129 micro-pass: report pane rhythm + upgrade-modal scroll-preserve support === */
@layer theme {
  /* Tighten the report pane rhythm so add-on bullets/CTA feel less floaty */
  .report-card .report-pane ul,
  .report-card .report-pane ol{
    margin: 8px 0 0 !important;
    padding-left: 20px !important;
  }
  .report-card .report-pane li{
    margin: 0 0 8px !important;
    line-height: 1.45;
  }
  .report-card .report-pane .mini-cta{
    margin-top: 10px !important;
  }
  .report-card .report-pane .mini-cta .btn{
    min-height: 38px;
  }
  .report-card .report-pane .locked-note{
    margin-top: 8px;
    padding-top: 8px;
  }
  /* Slightly soften secondary locked-CTA rows so they read as help, not pressure */
  .report-card .report-pane .mini-cta .btn.btn-secondary,
  .report-card .report-pane .mini-cta .btn.btn-ghost{
    background: rgba(255,255,255,.72);
  }
  body[data-theme="dark"] .report-card .report-pane .mini-cta .btn.btn-secondary,
  body[data-theme="dark"] .report-card .report-pane .mini-cta .btn.btn-ghost{
    background: rgba(255,255,255,.04);
  }

  .addon-lineitems{
    margin-top: 14px;
    border: 1px solid rgba(15,23,42,.10);
    border-radius: 18px;
    background: rgba(255,255,255,.72);
    padding: 14px;
  }
  .addon-lineitems-head,
  .addon-lineitems-foot,
  .addon-lineitems-base,
  .addon-lineitem{
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
  }
  .addon-lineitems-head{
    margin-bottom: 12px;
  }
  .addon-lineitems-total{
    text-align: right;
    white-space: nowrap;
  }
  .addon-lineitems-total__label{
    display: block;
    color: rgba(15,23,42,.58);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .04em;
    text-transform: uppercase;
  }
  .addon-lineitems-base,
  .addon-lineitems-foot{
    padding: 10px 0;
    color: rgba(15,23,42,.78);
  }
  .addon-lineitems-base{
    border-top: 1px solid rgba(15,23,42,.08);
    border-bottom: 1px solid rgba(15,23,42,.08);
  }
  .addon-lineitems-list{
    display: grid;
    gap: 10px;
    margin-top: 12px;
  }
  .addon-lineitem{
    padding: 12px;
    border: 1px solid rgba(15,23,42,.08);
    border-radius: 14px;
    background: rgba(255,255,255,.88);
  }
  .addon-lineitem__copy{
    min-width: 0;
  }
  .addon-lineitem__title{
    font-weight: 800;
    color: rgba(15,23,42,.92);
  }
  .addon-lineitem__basis,
  .addon-lineitem__quote{
    color: rgba(15,23,42,.64);
    font-size: 13px;
    line-height: 1.45;
  }
  .addon-lineitem__quote{
    margin-top: 4px;
  }
  .addon-lineitem__amount{
    font-weight: 800;
    white-space: nowrap;
  }
  .addon-lineitems-foot{
    margin-top: 12px;
    border-top: 1px solid rgba(15,23,42,.08);
    font-weight: 700;
  }

  body[data-theme="dark"] .addon-lineitems{
    border-color: rgba(148,163,184,.18);
    background: rgba(255,255,255,.03);
  }
  body[data-theme="dark"] .addon-lineitems-total__label,
  body[data-theme="dark"] .addon-lineitems-base,
  body[data-theme="dark"] .addon-lineitems-foot,
  body[data-theme="dark"] .addon-lineitem__basis,
  body[data-theme="dark"] .addon-lineitem__quote{
    color: rgba(229,231,235,.72);
  }
  body[data-theme="dark"] .addon-lineitems-base,
  body[data-theme="dark"] .addon-lineitems-foot{
    border-color: rgba(148,163,184,.18);
  }
  body[data-theme="dark"] .addon-lineitem{
    border-color: rgba(148,163,184,.16);
    background: rgba(255,255,255,.04);
  }
  body[data-theme="dark"] .addon-lineitem__title,
  body[data-theme="dark"] .addon-lineitem__amount{
    color: rgba(255,255,255,.95);
  }

  @media (max-width: 720px){
    .addon-lineitems-head,
    .addon-lineitems-base,
    .addon-lineitems-foot,
    .addon-lineitem{
      flex-direction: column;
      align-items: flex-start;
    }
    .addon-lineitems-total,
    .addon-lineitem__amount{
      text-align: left;
    }
  }
}


@layer theme {
  /* Presets modal free account polish */
  #presetModal.preset-free .modal-card{
    width:min(820px, calc(100vw - 28px)) !important;
  }
  #presetModal.preset-free .modal-body{
    padding-top:12px !important;
  }
  #presetModal.preset-free #presetScroll.preset-scroll,
  #presetModal.preset-free .preset-scroll{
    max-height:min(420px, calc(72vh - 140px)) !important;
    overflow:auto !important;
    padding-right:4px !important;
  }
  #presetModal.preset-free .preset-actionbar{
    position:sticky !important;
    top:0 !important;
    z-index:3 !important;
    margin-bottom:10px !important;
  }
  #presetModal.preset-free .preset-actionbar.is-free .preset-actionbar-right{
    display:block !important;
  }
  #presetModal.preset-free .preset-actionbar-hint{
    color:rgba(15,23,42,.64) !important;
  }
  #presetModal.preset-free .preset-list{
    min-height:0 !important;
  }
  #presetModal.preset-free .preset-empty-card{
    border:1px dashed rgba(15,23,42,.14) !important;
    border-radius:14px !important;
    background:rgba(255,255,255,.78) !important;
    padding:14px 14px !important;
    margin:2px 0 0 !important;
  }
  #presetModal.preset-free .preset-empty-title{
    font-weight:700 !important;
    color:#0f172a !important;
    margin-bottom:4px !important;
  }
  #presetModal.preset-free .preset-empty-copy{
    color:rgba(15,23,42,.70) !important;
    font-size:13px !important;
    line-height:1.4 !important;
  }
  #presetModal.preset-free .preset-item{
    border-radius:14px !important;
  }
  #presetModal.preset-free .preset-helper{
    position:sticky !important;
    bottom:0 !important;
  }
  #presetModal.preset-free .preset-helper.is-hidden{
    display:none !important;
  }
  #presetModal.preset-free .preset-hint{
    margin-top:10px !important;
    font-size:12px !important;
  }
  @media (max-width: 720px){
    #presetModal.preset-free .preset-actionbar{
      display:grid !important;
      gap:8px !important;
    }
    #presetModal.preset-free .preset-actionbar-left{
      display:grid !important;
      grid-template-columns:1fr 1fr !important;
      gap:8px !important;
    }
    #presetModal.preset-free .preset-actionbar-right{
      display:block !important;
    }
    #presetModal.preset-free .preset-actionbar-hint{
      display:block !important;
      font-size:12px !important;
    }
  }
}


/* === Free presets modal polish (Phase UX) === */
#presetModal.preset-free-mode .modal-card{width:min(760px,calc(100vw - 32px));}
#presetModal.preset-free-mode .modal-body{padding-top:14px;}
#presetModal.preset-free-mode #presetScroll.preset-scroll{max-height:none;overflow:visible;padding-right:0;}
#presetModal.preset-free-mode .preset-actionbar{position:static;top:auto;margin-bottom:10px;padding:10px 12px;border-radius:14px;display:flex;align-items:center;justify-content:space-between;gap:10px;}
#presetModal.preset-free-mode .preset-actionbar-right{flex:1;min-width:0;text-align:right;}
#presetModal.preset-free-mode .preset-actionbar-hint{font-size:12px;white-space:normal;line-height:1.3;}
#presetModal.preset-free-mode .preset-actionbar-left .btn{min-width:104px;}
#presetModal.preset-free-mode .preset-list{min-height:0;}
#presetModal.preset-free-mode .preset-helper{position:static;bottom:auto;margin-top:10px;}
#presetModal.preset-free-mode .preset-empty-state{border:1px dashed rgba(15,23,42,.14);background:rgba(255,255,255,.72);border-radius:14px;padding:14px 14px 12px;}
#presetModal.preset-free-mode .preset-empty-title{font-weight:700;font-size:14px;color:#0f172a;margin-bottom:4px;}
#presetModal.preset-free-mode .preset-empty-copy{font-size:13px;line-height:1.4;}
#presetModal.preset-free-mode .preset-empty-copy strong{color:#0f172a;font-weight:700;}
#presetModal.preset-free-mode .preset-hint{margin-top:10px;font-size:12px;}
#presetModal.preset-free-mode .preset-savepanel{margin-bottom:10px;}
#presetModal.preset-free-mode .preset-item{border-radius:14px;}
@media (max-width: 680px){
  #presetModal.preset-free-mode .modal-card{width:calc(100vw - 16px);}
  #presetModal.preset-free-mode .preset-actionbar{flex-direction:column;align-items:stretch;}
  #presetModal.preset-free-mode .preset-actionbar-right{text-align:left;}
  #presetModal.preset-free-mode .preset-actionbar-left{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%;}
  #presetModal.preset-free-mode .preset-actionbar-left .btn{width:100%;}
}


@layer theme {
  /* Account page ultra-premium polish */
  .account-page{
    max-width: 1120px;
    padding-top: 8px;
    position: relative;
  }
  .account-page::before{
    content:"";
    position: absolute;
    inset: -22px 8px auto 8px;
    height: 180px;
    border-radius: 28px;
    background:
      radial-gradient(1100px 180px at 12% 0%, rgba(99,102,241,.12), transparent 62%),
      radial-gradient(900px 180px at 88% 0%, rgba(16,185,129,.10), transparent 62%),
      linear-gradient(180deg, rgba(255,255,255,.74), rgba(255,255,255,0));
    pointer-events: none;
    z-index: 0;
  }
  .account-page > *{ position: relative; z-index: 1; }

  .account-page .topbar{
    margin-bottom: 18px !important;
    padding: 22px 24px;
    border-radius: 24px;
    border: 1px solid rgba(15,23,42,.07);
    background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,255,255,.76));
    box-shadow: 0 10px 28px rgba(15,23,42,.06), inset 0 1px 0 rgba(255,255,255,.8);
  }
  .account-page .brand-kicker{
    letter-spacing: .12em;
    color: rgba(15,23,42,.56);
  }
  .account-page .page-title{
    font-size: clamp(34px, 4vw, 46px);
    line-height: .98;
    margin-bottom: 6px;
  }
  .account-page .sub{
    color: rgba(15,23,42,.62);
    max-width: 62ch;
    margin-bottom: 0;
    font-size: 15px;
  }

  .account-page .grid{
    grid-template-columns: minmax(0,1.18fr) minmax(320px,.82fr) !important;
    gap: 16px !important;
    align-items: start;
  }
  .account-page .card.soft{
    border: 1px solid rgba(15,23,42,.08);
    border-radius: 22px;
    background:
      linear-gradient(180deg, rgba(255,255,255,.94), rgba(250,251,255,.88));
    box-shadow:
      0 16px 40px rgba(15,23,42,.07),
      0 2px 8px rgba(15,23,42,.03),
      inset 0 1px 0 rgba(255,255,255,.95);
    padding: 16px;
    margin-bottom: 0;
  }
  .account-page .card.soft + .card.soft,
  .account-page .card.soft + aside.card.soft{
    margin-top: 16px;
  }

  .account-page .row.u-s3{
    align-items: center !important;
    gap: 12px;
    padding: 2px 2px 10px;
  }
  .account-page .sectionTitle,
  .account-page .section-title{
    font-size: 12px;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: rgba(15,23,42,.58);
    margin-bottom: 6px;
  }

  .account-page .pill{
    border-radius: 999px;
    border: 1px solid rgba(15,23,42,.12);
    background: rgba(255,255,255,.9);
    color: rgba(15,23,42,.78);
    font-weight: 700;
    font-size: 12px;
    padding: 5px 10px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.85);
  }
  .account-page .pill.ok{
    background: linear-gradient(180deg, rgba(16,185,129,.14), rgba(16,185,129,.08));
    border-color: rgba(16,185,129,.28);
    color: #047857;
  }
  .account-page .pill.warn{
    background: linear-gradient(180deg, rgba(245,158,11,.16), rgba(245,158,11,.08));
    border-color: rgba(245,158,11,.28);
    color: #b45309;
  }

  .account-page .kvs{
    display:grid;
    gap:10px;
    margin-top:14px;
  }
  .account-page .kvs .kv-row{
    display:grid;
    grid-template-columns: 160px minmax(0,1fr);
    align-items:center;
    gap:14px;
    border:1px solid rgba(15,23,42,.09);
    background:rgba(255,255,255,.72);
    border-radius:14px;
    padding:12px 14px;
  }
  body[data-theme="dark"] .account-page .kvs .kv-row{
    background:rgba(255,255,255,.03);
    border-color:rgba(255,255,255,.10);
  }
  .account-page .kvs .k{
    margin:0;
    font-size:11px;
    font-weight:700;
    letter-spacing:.12em;
    text-transform:uppercase;
    color:rgba(15,23,42,.55);
  }
  .account-page .kvs .v{
    margin:0;
    font-size:16px;
    font-weight:600;
    color:#0f172a;
    letter-spacing:-.01em;
    word-break:break-word;
  }
  body[data-theme="dark"] .account-page .kvs .k{ color:rgba(255,255,255,.58); }
  body[data-theme="dark"] .account-page .kvs .v{ color:rgba(255,255,255,.92); }
.account-page .usage-card{
    margin-top: 12px;
    border: 1px solid rgba(15,23,42,.08);
    border-radius: 18px;
    background:
      radial-gradient(120% 80% at 0% 0%, rgba(99,102,241,.08), transparent 60%),
      radial-gradient(120% 80% at 100% 0%, rgba(16,185,129,.06), transparent 60%),
      rgba(255,255,255,.86);
    padding: 14px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.9);
  }
  .account-page .usage-card .section-title{
    margin-bottom: 4px;
    font-size: 13px;
    letter-spacing: 0;
    text-transform: none;
    color: #0f172a;
  }
  .account-page .usage-card .muted{
    color: rgba(15,23,42,.68);
    line-height: 1.4;
  }
  .account-page .usage-card .muted strong{
    color: #0f172a;
    font-weight: 800;
  }

  .account-page .btn{
    border-radius: 12px;
    font-weight: 700;
    min-height: 40px;
    box-shadow: 0 1px 0 rgba(255,255,255,.7) inset;
  }
  .account-page .btn:not(.btn-ghost){
    background: linear-gradient(180deg, #121826, #0b1220);
    border-color: rgba(15,23,42,.7);
    color: #fff;
  }
  .account-page .btn:not(.btn-ghost):hover{
    filter: brightness(1.03);
    transform: translateY(-1px);
    box-shadow: 0 8px 20px rgba(15,23,42,.18);
  }
  .account-page .btn.btn-ghost{
    background: rgba(255,255,255,.82);
    border-color: rgba(15,23,42,.10);
    color: rgba(15,23,42,.88);
  }
  .account-page .btn.btn-ghost:hover{
    background: rgba(255,255,255,.96);
    border-color: rgba(15,23,42,.18);
    transform: translateY(-1px);
  }
  .account-page .btn.btn-ghost.danger{
    color: #b91c1c;
    border-color: rgba(220,38,38,.18);
    background: rgba(254,242,242,.82);
  }

  .account-page #notice{
  margin-top: 12px;
  min-height: 20px;
  font-size: 13px;
  color: rgba(15,23,42,.72);
  background: rgba(255,255,255,.72);
  border: 1px solid rgba(15,23,42,.08);
  border-radius: 12px;
  padding: 8px 10px;
}
.account-page #notice:empty{
  display:none;
}
.account-page #notice .spinner{
  display:inline-block;
  width: 12px;
  height: 12px;
  border-radius:999px;
  border:2px solid rgba(15,23,42,.18);
  border-top-color: rgba(15,23,42,.72);
  vertical-align:-2px;
  margin-right:6px;
  animation: worthioSpin .7s linear infinite;
}
@keyframes worthioSpin { to { transform: rotate(360deg); } }

.account-page .account-state-banner{
  margin-top: 8px;
  margin-bottom: 10px;
  border-radius: 14px;
  border: 1px solid rgba(15,23,42,.10);
  background: rgba(255,255,255,.78);
  padding: 11px 12px;
}
.account-page .account-state-banner__title{
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  margin-bottom: 4px;
  color: rgba(15,23,42,.72);
}
.account-page .account-state-banner__body{
  font-size: 13px;
  line-height: 1.4;
  color: rgba(15,23,42,.78);
}
.account-page .account-state-banner.paused{
  border-color: rgba(245,158,11,.26);
  background: linear-gradient(180deg, rgba(255,251,235,.9), rgba(255,255,255,.82));
}
.account-page .account-state-banner.paused .account-state-banner__title{ color: #b45309; }
.account-page .account-state-banner.warning{
  border-color: rgba(59,130,246,.22);
  background: linear-gradient(180deg, rgba(239,246,255,.88), rgba(255,255,255,.82));
}
.account-page .account-state-banner.warning .account-state-banner__title{ color: #1d4ed8; }

.account-page .account-status-hero{
  margin-top: 4px;
  margin-bottom: 12px;
  border-radius: 14px;
  border: 1px solid rgba(15,23,42,.08);
  background: linear-gradient(180deg, rgba(255,255,255,.95), rgba(248,250,252,.92));
  padding: 12px;
}
.account-page .account-status-hero__label{
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: rgba(15,23,42,.55);
  margin-bottom: 4px;
}
.account-page .account-status-hero__title{
  font-weight: 800;
  color: #0f172a;
  line-height: 1.2;
}
.account-page .account-status-hero__body{
  margin-top: 4px;
  font-size: 13px;
  line-height: 1.45;
  color: rgba(15,23,42,.72);
}
.account-page .account-status-hero.is-paused{
  border-color: rgba(245,158,11,.25);
  background: linear-gradient(180deg, rgba(255,251,235,.96), rgba(255,255,255,.94));
}
.account-page .account-status-hero.is-warning{
  border-color: rgba(59,130,246,.20);
  background: linear-gradient(180deg, rgba(239,246,255,.96), rgba(255,255,255,.94));
}
.account-page .account-status-hero.is-active{
  border-color: rgba(16,185,129,.16);
}

.account-page .account-billing-actions{
  margin-top: 14px;
  padding-top: 10px;
  border-top: 1px solid rgba(15,23,42,.06);
  gap: 10px;
}
.account-page .account-billing-actions .btn[aria-busy="true"]{
  position: relative;
  padding-right: 34px;
}
.account-page .account-billing-actions .btn[aria-busy="true"]::after{
  content: "";
  position: absolute;
  right: 12px;
  top: 50%;
  width: 12px;
  height: 12px;
  margin-top: -6px;
  border-radius: 999px;
  border: 2px solid rgba(15,23,42,.18);
  border-top-color: rgba(15,23,42,.7);
  animation: worthioSpin .7s linear infinite;
}

.account-page aside.card.soft{
    padding: 16px;
    position: sticky;
    top: 86px;
  }
  .account-page aside.card.soft ul{
    margin: 10px 0 0;
    padding: 0;
    list-style: none;
    display: grid;
    gap: 8px;
  }
  .account-page aside.card.soft li{
    border: 1px solid rgba(15,23,42,.08);
    background: rgba(255,255,255,.78);
    border-radius: 12px;
    padding: 10px 12px;
    color: rgba(15,23,42,.78);
    font-size: 13px;
    line-height: 1.35;
    position: relative;
    padding-left: 34px;
  }
  .account-page aside.card.soft li::before{
    content: "✓";
    position: absolute;
    left: 12px;
    top: 9px;
    width: 16px;
    height: 16px;
    border-radius: 999px;
    display: grid;
    place-items: center;
    font-size: 11px;
    font-weight: 900;
    color: #047857;
    background: rgba(16,185,129,.12);
    border: 1px solid rgba(16,185,129,.2);
  }

    .account-page > .modal{ z-index: 980; }
  .account-page .modal{
    position: fixed;
    inset: 0;
    display: grid;
    place-items: center;
    padding: 18px;
    background: rgba(15,23,42,.32);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
  }
.account-page .modal .box.card.soft{
    width: min(760px, calc(100vw - 28px));
    border-radius: 20px;
    padding: 16px;
    border: 1px solid rgba(15,23,42,.08);
    background: rgba(255,255,255,.96);
    box-shadow: 0 24px 70px rgba(15,23,42,.18);
  }
  .account-page .plans{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin-top: 12px;
  }
  .account-page .planCard{
    border: 1px solid rgba(15,23,42,.08);
    border-radius: 16px;
    background: rgba(255,255,255,.78);
    padding: 14px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.85);
  }
  .account-page .planCard h3{
    margin: 0;
    font-size: 16px;
    line-height: 1.1;
  }
  .account-page .planCard .price{
    font-size: 28px;
    font-weight: 800;
    letter-spacing: -.03em;
    margin: 10px 0;
  }
  .account-page .planCard ul{
    margin: 0;
    padding-left: 18px;
    color: rgba(15,23,42,.72);
    font-size: 13px;
    line-height: 1.4;
    display: grid;
    gap: 5px;
  }



  /* Invoices page polish */
  .account-page.invoices-page .invoices-shell{
    padding: 18px;
  }
  .account-page.invoices-page .invoices-head{
    padding-bottom: 12px;
    border-bottom: 1px solid rgba(15,23,42,.07);
    margin-bottom: 12px;
  }
  .account-page.invoices-page .invoices-actions{
    gap: 10px;
    flex-wrap: wrap;
    justify-content: flex-end;
  }
  .account-page.invoices-page .invoice-summary{
    display: grid;
    grid-template-columns: repeat(4, minmax(0,1fr));
    gap: 10px;
    margin-bottom: 12px;
  }
  .account-page.invoices-page .invoice-summary-card{
    border: 1px solid rgba(15,23,42,.08);
    border-radius: 14px;
    padding: 12px;
    background: rgba(255,255,255,.78);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.9);
  }
  .account-page.invoices-page .invoice-summary-card .k{
    margin: 0 0 6px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: rgba(15,23,42,.55);
  }
  .account-page.invoices-page .invoice-summary-card .v{
    margin: 0;
    font-size: 20px;
    line-height: 1.05;
    letter-spacing: -.02em;
    font-weight: 800;
    color: #0f172a;
  }
  .account-page.invoices-page .invoice-summary-card .muted{
    margin-top: 6px;
    font-size: 12px;
  }
  .account-page.invoices-page .invoice-list{
    display: grid;
    gap: 10px;
  }
  .account-page.invoices-page .invoice-item{
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    gap: 12px;
    align-items: center;
    border: 1px solid rgba(15,23,42,.08);
    border-radius: 14px;
    padding: 12px;
    background: rgba(255,255,255,.78);
  }
  .account-page.invoices-page .invoice-main{ min-width: 0; }
  .account-page.invoices-page .invoice-title-row{
    display:flex; align-items:center; gap:10px; flex-wrap:wrap;
  }
  .account-page.invoices-page .invoice-title{
    font-weight: 700; color:#0f172a; letter-spacing:-.01em;
  }
  .account-page.invoices-page .invoice-meta{
    margin-top: 4px;
    display:flex; gap:8px; align-items:center; flex-wrap:wrap;
    color: rgba(15,23,42,.62);
    font-size: 13px;
  }
  .account-page.invoices-page .invoice-status{
    border-radius: 999px;
    border: 1px solid rgba(15,23,42,.10);
    background: rgba(255,255,255,.88);
    padding: 3px 9px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: rgba(15,23,42,.7);
  }
  .account-page.invoices-page .invoice-status.is-paid{
    color:#047857; border-color: rgba(16,185,129,.22); background: rgba(16,185,129,.09);
  }
  .account-page.invoices-page .invoice-status.is-open{
    color:#1d4ed8; border-color: rgba(59,130,246,.2); background: rgba(59,130,246,.08);
  }
  .account-page.invoices-page .invoice-status.is-warn{
    color:#b45309; border-color: rgba(245,158,11,.22); background: rgba(245,158,11,.09);
  }
  .account-page.invoices-page .invoice-actions{
    display:flex; gap:8px; align-items:center; flex-wrap:wrap; justify-content:flex-end;
  }
  .account-page.invoices-page .invoice-actions .btn{ min-width: 72px; justify-content:center; }
  .account-page.invoices-page .invoice-empty{ margin-top: 8px; }

  .account-page .modal .box.card.soft{
    max-height: min(88vh, 820px);
    overflow: auto;
    overscroll-behavior: contain;
  }

  @media (max-width: 920px){
    .account-page .grid{
      grid-template-columns: 1fr !important;
    }
    .account-page aside.card.soft{
      position: static;
    }
    .account-page.invoices-page .invoice-summary{
      grid-template-columns: repeat(2, minmax(0,1fr));
    }
  }
  @media (max-width: 720px){
    .account-page{
      padding-top: 4px;
    }
    .account-page .topbar{
      padding: 16px;
      border-radius: 18px;
    }
    .account-page .page-title{
      font-size: 32px;
    }
    .account-page .row.u-s3{
      align-items: flex-start !important;
    }
    .account-page .row.u-s3 > .row{
      width: 100%;
      justify-content: flex-start;
      flex-wrap: wrap;
    }
    .account-page .kvs{
      grid-template-columns: 1fr;
      padding: 8px 12px;
    }
    .account-page .kvs>div{
      border-bottom: none;
      padding: 4px 0;
    }
    .account-page .plans{
      grid-template-columns: 1fr;
    }
    .account-page.invoices-page .invoices-head{
      align-items: flex-start !important;
    }
    .account-page.invoices-page .invoices-actions{
      width: 100%;
      justify-content: flex-start;
    }
    .account-page.invoices-page .invoice-summary{
      grid-template-columns: 1fr;
    }
    .account-page.invoices-page .invoice-item{
      grid-template-columns: 1fr;
      align-items: flex-start;
    }
    .account-page.invoices-page .invoice-actions{
      width: 100%;
      justify-content: flex-start;
    }
  }
}


/* === V108 account modal polish: retention hierarchy + billing action spacing === */
@layer theme {
  .account-billing-actions{
    margin-top: 12px !important;
    padding-top: 12px !important;
    border-top: 1px solid rgba(15,23,42,.08) !important;
    gap: 10px !important;
    flex-wrap: wrap !important;
  }
  .account-inline-notice{
    margin-top: 10px !important;
    min-height: 20px;
  }
  .lite-plan-actions{
    margin-top: 12px !important;
    gap: 10px !important;
    flex-wrap: wrap !important;
  }
  .lite-plan-help{
    margin-top: 8px !important;
    line-height: 1.35 !important;
    font-size: 12px !important;
  }

  #retentionModal .row.u-s3{
    align-items: flex-start !important;
    gap: 14px !important;
  }
  #retentionModal .retention-subtitle{
    margin-top: 4px !important;
    line-height: 1.35 !important;
  }
  #retentionModal .retention-config-note{
    margin-top: 6px !important;
    font-size: 12px !important;
    opacity: .9;
  }
  #retentionModal .plans{
    margin-top: 10px !important;
  }
  #retentionModal .planCard h3{
    letter-spacing: -.01em;
  }
  #retentionModal .planCard .muted{
    line-height: 1.35 !important;
  }
  #retentionModal .retention-footer-actions{
    margin-top: 8px !important;
    padding-top: 8px !important;
    border-top: 1px solid rgba(15,23,42,.06) !important;
    gap: 10px !important;
  }
  #retentionModal .retention-footer-note{
    margin-top: 8px !important;
    line-height: 1.35 !important;
  }

  body[data-theme="dark"] .account-billing-actions{
    border-top-color: rgba(255,255,255,.10) !important;
  }
  body[data-theme="dark"] .lite-plan-help{ color: rgba(255,255,255,.72) !important; }
  body[data-theme="dark"] #retentionModal .retention-footer-actions{
    border-top-color: rgba(255,255,255,.08) !important;
  }
}


/* === V109 retention modal premium layout pass === */
@layer theme {
  #retentionModal{
    position: fixed !important;
    inset: 0 !important;
    z-index: 1450 !important;
    display: grid !important;
    place-items: center !important;
    padding: 20px !important;
  }
  #retentionModal.hidden,
  #retentionModal[hidden]{ display:none !important; }
  #retentionModal::before{
    content:"";
    position:absolute; inset:0;
    background: rgba(15,23,42,.36);
    backdrop-filter: blur(8px) saturate(110%);
    -webkit-backdrop-filter: blur(8px) saturate(110%);
  }
  
  /* Failsafe: if retention-shell class regresses, keep modal card above blur */
  #retentionModal > .box.card.soft{
    position: relative !important;
    z-index: 1 !important;
  }
#retentionModal .retention-shell{
    position: relative !important;
    z-index: 1 !important;
    width: min(760px, calc(100vw - 28px)) !important;
    max-height: calc(100vh - 28px) !important;
    overflow: auto !important;
    border-radius: 22px !important;
    border: 1px solid rgba(15,23,42,.10) !important;
    background: rgba(255,255,255,.98) !important;
    box-shadow: 0 24px 80px rgba(2,6,23,.22), 0 6px 24px rgba(2,6,23,.10) !important;
    padding: 18px !important;
  }
  body[data-theme="dark"] #retentionModal .retention-shell{
    background: rgba(17,19,24,.96) !important;
    border-color: rgba(255,255,255,.10) !important;
    box-shadow: 0 24px 80px rgba(0,0,0,.45), 0 6px 24px rgba(0,0,0,.26) !important;
  }
  #retentionModal .retention-subtitle{ margin-top: 4px !important; line-height: 1.35 !important; }
  #retentionModal .retention-config-note{ margin-top: 6px !important; font-size: 12px !important; }
  #retentionModal .retention-grid{
    display:grid !important;
    grid-template-columns: repeat(2, minmax(0,1fr)) !important;
    gap: 12px !important;
    margin-top: 14px !important;
  }
  #retentionModal .retention-card{
    border-radius: 16px !important;
    border: 1px solid rgba(15,23,42,.08) !important;
    background: rgba(255,255,255,.72) !important;
    padding: 14px !important;
    box-shadow: none !important;
    min-height: 0 !important;
  }
  #retentionModal .retention-card h3{ margin:0 0 4px !important; letter-spacing: -.01em; }
  #retentionModal .retention-card .muted{ line-height:1.35 !important; }
  #retentionModal .retention-card ul{ margin: 8px 0 0 18px !important; }
  #retentionModal .retention-card li{ margin: 3px 0 !important; }
  #retentionModal .retention-card .row.u-s6{ margin-top: 10px !important; }

  #retentionModal .retention-card-primary{
    background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,250,252,.94)) !important;
    border-color: rgba(15,23,42,.12) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.9), 0 6px 20px rgba(15,23,42,.06) !important;
  }
  #retentionModal .retention-card-action{
    background: rgba(248,250,252,.85) !important;
  }
  #retentionModal .retention-card-info{
    background: rgba(246,247,249,.75) !important;
  }
  #retentionModal .retention-card-wide{ grid-column: 1 / -1; }

  #retentionModal .retention-footer-actions{
    margin-top: 14px !important;
    padding-top: 12px !important;
    border-top: 1px solid rgba(15,23,42,.08) !important;
    gap: 10px !important;
    justify-content: space-between !important;
  }
  #retentionModal .retention-footer-actions .btn:first-child{ margin-right:auto !important; }
  #retentionModal .retention-footer-note{
    margin-top: 8px !important;
    font-size: 12px !important;
    line-height: 1.4 !important;
  }

  #retentionModal .retention-shell{
    border-radius: 20px !important;
    border: 1px solid rgba(15,23,42,.10) !important;
    box-shadow: 0 24px 80px rgba(15,23,42,.20), 0 2px 0 rgba(255,255,255,.7) inset !important;
  }
  #retentionModal .retention-subtitle{
    max-width: 70ch;
    line-height: 1.35 !important;
  }
  #retentionModal .retention-grid{ margin-top: 10px !important; }
  #retentionModal .retention-card h3{ letter-spacing: -.01em; }
  #retentionModal .retention-card ul{ margin-top: 8px !important; }
  #retentionModal .retention-footer-actions{
    margin-top: 12px !important;
    padding-top: 12px !important;
  }
  #retentionModal .retention-footer-note{ color: rgba(15,23,42,.62) !important; }

  body[data-theme="dark"] #retentionModal .retention-card{
    background: rgba(255,255,255,.03) !important;
    border-color: rgba(255,255,255,.09) !important;
  }
  body[data-theme="dark"] #retentionModal .retention-card-primary{
    background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03)) !important;
    border-color: rgba(255,255,255,.14) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.06) !important;
  }
  body[data-theme="dark"] #retentionModal .retention-card-action{ background: rgba(255,255,255,.025) !important; }
  body[data-theme="dark"] #retentionModal .retention-card-info{ background: rgba(255,255,255,.02) !important; }
  body[data-theme="dark"] #retentionModal .retention-footer-actions{ border-top-color: rgba(255,255,255,.08) !important; }

  @media (max-width: 760px){
    #retentionModal{ padding: 12px !important; align-items: flex-end !important; }
    #retentionModal .retention-shell{ width: 100% !important; border-radius: 18px !important; max-height: calc(100vh - 12px) !important; padding: 14px !important; }
    #retentionModal .retention-grid{ grid-template-columns: 1fr !important; gap: 10px !important; }
    #retentionModal .retention-card-wide{ grid-column: auto; }
    #retentionModal .retention-footer-actions{ flex-wrap: wrap !important; }
    #retentionModal .retention-footer-actions .btn{ flex: 1 1 auto; }
  }
}

/* Account entitlements matrix */
.entitlement-card{
  margin-top: 18px;
}
.entitlement-header{
  align-items:flex-start;
}
.entitlement-table-wrap{
  margin-top: 10px;
  border:1px solid rgba(16,24,40,.08);
  border-radius:16px;
  overflow:auto;
  background:linear-gradient(180deg, rgba(255,255,255,.92), rgba(248,250,252,.92));
}
.entitlement-table{
  width:100%;
  min-width: 760px;
  border-collapse:separate;
  border-spacing:0;
  font-size:14px;
}
.entitlement-table th,
.entitlement-table td{
  padding:10px 12px;
  border-bottom:1px solid rgba(16,24,40,.07);
  vertical-align:top;
}
.entitlement-table thead th{
  position:sticky;
  top:0;
  z-index:1;
  background:rgba(255,255,255,.94);
  backdrop-filter:saturate(140%) blur(8px);
  font-weight:700;
  text-align:left;
}
.entitlement-table tbody th{
  width: 220px;
  color: #111827;
  font-weight:600;
  background:rgba(255,255,255,.72);
}
.entitlement-table td{
  color:#334155;
}
.entitlement-table th.is-current{
  color:#0f172a;
  background:linear-gradient(180deg, rgba(240,249,255,.95), rgba(224,242,254,.95));
}
.entitlement-table td.is-current,
.entitlement-table tr td:nth-child(2).is-current,
.entitlement-table tr td:nth-child(3).is-current,
.entitlement-table tr td:nth-child(4).is-current{
  background:rgba(248,250,252,.9);
}
.entitlement-table tbody tr:nth-child(even) td,
.entitlement-table tbody tr:nth-child(even) th{
  background-color: rgba(248,250,252,.72);
}
.entitlement-table tbody tr:last-child th,
.entitlement-table tbody tr:last-child td{
  border-bottom:none;
}
.entitlement-footnote{
  margin-top: 10px;
}
@media (max-width: 900px){
  .entitlement-table{ font-size:13px; }
  .entitlement-table th, .entitlement-table td{ padding:9px 10px; }
}


/* Pro insights contrast + interaction hardening */
.pro-panel .pro-tab.is-active,
.pro-panel .pro-tab.is-active:hover,
.pro-panel .pro-tab.is-active:focus-visible,
.pro-panel .tone-btn.is-active,
.pro-panel .tone-btn.is-active:hover,
.pro-panel .tone-btn.is-active:focus-visible{
  color: #fff !important;
}
body[data-theme="dark"] .pro-panel .pro-tab.is-active,
body[data-theme="dark"] .pro-panel .pro-tab.is-active:hover,
body[data-theme="dark"] .pro-panel .pro-tab.is-active:focus-visible,
body[data-theme="dark"] .pro-panel .tone-btn.is-active,
body[data-theme="dark"] .pro-panel .tone-btn.is-active:hover,
body[data-theme="dark"] .pro-panel .tone-btn.is-active:focus-visible{
  color: rgba(2,6,23,.95) !important;
}

/* A6 calculator rights stack: prevent nested usage-rights details from clipping
   when buyout/perpetuity is visible above the whitelisting row. */
#calcForm .addon-toggles > .toggle-extra.is-open,
#calcForm #usageRightsExtra.toggle-extra.is-open{
  max-height: 1200px;
  overflow: visible;
}

#calcForm #buyoutPerpetuityExtra.toggle-extra.is-open{
  max-height: 360px;
  overflow: visible;
}

/* Whitelisting spend cap amount: hide unless explicitly enabled.
   JS toggles both aria-hidden + .is-open; CSS must honor it so the form stays clean. */
#calcForm #whitelistingSpendCapAmountWrap{ display:none; }
#calcForm #whitelistingSpendCapAmountWrap.is-open{ display:block; }
#calcForm #whitelistingSpendCapAmountWrap[aria-hidden="false"]{ display:block; }


/* === v408: usage quote preset contrast + deal assistant open stability === */
@layer theme {
  /* Keep the Usage quote-generator preset pills readable in every state.
     Root issue: later button color inheritance could darken active text against the dark active fill. */
  .usage-presets .preset-btn{
    color:#111 !important;
  }
  body[data-theme="dark"] .usage-presets .preset-btn{
    color:rgba(255,255,255,.88) !important;
  }
  .usage-presets .preset-btn.is-active,
  .usage-presets .preset-btn[aria-pressed="true"]{
    background:#111 !important;
    border-color:#111 !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
  }
  body[data-theme="dark"] .usage-presets .preset-btn.is-active,
  body[data-theme="dark"] .usage-presets .preset-btn[aria-pressed="true"]{
    background:#fff !important;
    border-color:#fff !important;
    color:#111 !important;
    -webkit-text-fill-color:#111 !important;
  }
  .usage-presets .preset-btn:focus-visible{
    outline:none !important;
    box-shadow:0 0 0 4px rgba(17,17,17,.10) !important;
  }
  body[data-theme="dark"] .usage-presets .preset-btn:focus-visible{
    box-shadow:0 0 0 4px rgba(255,255,255,.16) !important;
  }
}


/* === v460 premium spacing pass: standardized rights extra panels === */
@layer theme {
  #calcForm .toggle-extra-standardized{
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  #calcForm .toggle-extra-standardized.is-open{
    margin-bottom: var(--space-14) !important;
  }
  #calcForm .toggle-extra-standardized .toggle-extra-panel{
    display: grid !important;
    gap: 14px !important;
    padding: 2px 0 2px !important;
  }
  #calcForm .toggle-extra-standardized .toggle-extra-field{
    display: grid !important;
    gap: 8px !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  #calcForm .toggle-extra-standardized .toggle-extra-field > .hero-chips{
    margin: 0 !important;
  }

  #calcForm #usageRightsExtra .hero-chips{
    gap: 8px !important;
  }
  #calcForm #usageRightsExtra [data-usage-placement-chip],
  #calcForm #usageRightsExtra [data-usage-region-chip]{
    min-height: 34px;
    padding: 7px 11px;
    border-width: 1px;
    border-style: solid;
    border-color: rgba(15,23,42,.12);
    background: rgba(255,255,255,.92);
    color: rgba(15,23,42,.72);
    box-shadow: 0 1px 2px rgba(15,23,42,.04);
    transition: background-color .16s ease, border-color .16s ease, color .16s ease, box-shadow .16s ease, transform .12s ease;
  }
  @media (hover:hover){
    #calcForm #usageRightsExtra [data-usage-placement-chip]:hover,
    #calcForm #usageRightsExtra [data-usage-region-chip]:hover{
      border-color: rgba(15,23,42,.2);
      color: rgba(15,23,42,.82);
      box-shadow: 0 4px 12px rgba(15,23,42,.06);
    }
  }
  #calcForm #usageRightsExtra [data-usage-placement-chip]:focus-visible,
  #calcForm #usageRightsExtra [data-usage-region-chip]:focus-visible{
    outline: none;
    box-shadow: 0 0 0 4px rgba(17,17,17,.10);
  }
  #calcForm #usageRightsExtra [data-usage-placement-chip].is-active,
  #calcForm #usageRightsExtra [data-usage-placement-chip].good,
  #calcForm #usageRightsExtra [data-usage-placement-chip][aria-pressed="true"],
  #calcForm #usageRightsExtra [data-usage-region-chip].is-active,
  #calcForm #usageRightsExtra [data-usage-region-chip].good,
  #calcForm #usageRightsExtra [data-usage-region-chip][aria-pressed="true"]{
    background: #111 !important;
    border-color: #111 !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    box-shadow: 0 8px 18px rgba(17,17,17,.16);
  }
  body[data-theme="dark"] #calcForm #usageRightsExtra [data-usage-placement-chip],
  body[data-theme="dark"] #calcForm #usageRightsExtra [data-usage-region-chip]{
    border-color: rgba(148,163,184,.24);
    background: rgba(15,23,42,.82);
    color: rgba(229,231,235,.78);
    box-shadow: none;
  }
  @media (hover:hover){
    body[data-theme="dark"] #calcForm #usageRightsExtra [data-usage-placement-chip]:hover,
    body[data-theme="dark"] #calcForm #usageRightsExtra [data-usage-region-chip]:hover{
      border-color: rgba(229,231,235,.34);
      color: rgba(229,231,235,.92);
    }
  }
  body[data-theme="dark"] #calcForm #usageRightsExtra [data-usage-placement-chip]:focus-visible,
  body[data-theme="dark"] #calcForm #usageRightsExtra [data-usage-region-chip]:focus-visible{
    box-shadow: 0 0 0 4px rgba(255,255,255,.16);
  }
  body[data-theme="dark"] #calcForm #usageRightsExtra [data-usage-placement-chip].is-active,
  body[data-theme="dark"] #calcForm #usageRightsExtra [data-usage-placement-chip].good,
  body[data-theme="dark"] #calcForm #usageRightsExtra [data-usage-placement-chip][aria-pressed="true"],
  body[data-theme="dark"] #calcForm #usageRightsExtra [data-usage-region-chip].is-active,
  body[data-theme="dark"] #calcForm #usageRightsExtra [data-usage-region-chip].good,
  body[data-theme="dark"] #calcForm #usageRightsExtra [data-usage-region-chip][aria-pressed="true"]{
    background: #fff !important;
    border-color: #fff !important;
    color: #111 !important;
    -webkit-text-fill-color: #111 !important;
    box-shadow: 0 10px 22px rgba(0,0,0,.22);
  }


  #calcForm #whitelistingExtra [data-whitelisting-chip],
  #calcForm #exclusivityExtra [data-exclusivity-chip]{
    transition: background-color .16s ease, border-color .16s ease, color .16s ease, box-shadow .16s ease, transform .12s ease;
  }
  @media (hover:none), (pointer:coarse){
    #calcForm #whitelistingExtra [data-whitelisting-chip]:not(.is-active):not(.good):not([aria-pressed="true"]):active,
    #calcForm #whitelistingExtra [data-whitelisting-chip]:not(.is-active):not(.good):not([aria-pressed="true"]):focus,
    #calcForm #whitelistingExtra [data-whitelisting-chip]:not(.is-active):not(.good):not([aria-pressed="true"]):focus-visible,
    #calcForm #exclusivityExtra [data-exclusivity-chip]:not(.is-active):not(.good):not([aria-pressed="true"]):active,
    #calcForm #exclusivityExtra [data-exclusivity-chip]:not(.is-active):not(.good):not([aria-pressed="true"]):focus,
    #calcForm #exclusivityExtra [data-exclusivity-chip]:not(.is-active):not(.good):not([aria-pressed="true"]):focus-visible{
      background: rgba(255,255,255,.92) !important;
      border-color: rgba(15,23,42,.12) !important;
      color: rgba(15,23,42,.72) !important;
      -webkit-text-fill-color: rgba(15,23,42,.72) !important;
      box-shadow: 0 1px 2px rgba(15,23,42,.04) !important;
      transform: none !important;
      outline: none !important;
    }
    body[data-theme="dark"] #calcForm #whitelistingExtra [data-whitelisting-chip]:not(.is-active):not(.good):not([aria-pressed="true"]):active,
    body[data-theme="dark"] #calcForm #whitelistingExtra [data-whitelisting-chip]:not(.is-active):not(.good):not([aria-pressed="true"]):focus,
    body[data-theme="dark"] #calcForm #whitelistingExtra [data-whitelisting-chip]:not(.is-active):not(.good):not([aria-pressed="true"]):focus-visible,
    body[data-theme="dark"] #calcForm #exclusivityExtra [data-exclusivity-chip]:not(.is-active):not(.good):not([aria-pressed="true"]):active,
    body[data-theme="dark"] #calcForm #exclusivityExtra [data-exclusivity-chip]:not(.is-active):not(.good):not([aria-pressed="true"]):focus,
    body[data-theme="dark"] #calcForm #exclusivityExtra [data-exclusivity-chip]:not(.is-active):not(.good):not([aria-pressed="true"]):focus-visible{
      border-color: rgba(148,163,184,.24) !important;
      background: rgba(15,23,42,.82) !important;
      color: rgba(229,231,235,.78) !important;
      -webkit-text-fill-color: rgba(229,231,235,.78) !important;
      box-shadow: none !important;
    }
  }

  #calcForm #whitelistingExtra [data-whitelisting-chip].is-active,
  #calcForm #whitelistingExtra [data-whitelisting-chip].good,
  #calcForm #whitelistingExtra [data-whitelisting-chip][aria-pressed="true"],
  #calcForm #exclusivityExtra [data-exclusivity-chip].is-active,
  #calcForm #exclusivityExtra [data-exclusivity-chip].good,
  #calcForm #exclusivityExtra [data-exclusivity-chip][aria-pressed="true"]{
    background: #111 !important;
    border-color: #111 !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    box-shadow: 0 8px 18px rgba(17,17,17,.16);
  }
  body[data-theme="dark"] #calcForm #whitelistingExtra [data-whitelisting-chip].is-active,
  body[data-theme="dark"] #calcForm #whitelistingExtra [data-whitelisting-chip].good,
  body[data-theme="dark"] #calcForm #whitelistingExtra [data-whitelisting-chip][aria-pressed="true"],
  body[data-theme="dark"] #calcForm #exclusivityExtra [data-exclusivity-chip].is-active,
  body[data-theme="dark"] #calcForm #exclusivityExtra [data-exclusivity-chip].good,
  body[data-theme="dark"] #calcForm #exclusivityExtra [data-exclusivity-chip][aria-pressed="true"]{
    background: #fff !important;
    border-color: #fff !important;
    color: #111 !important;
    -webkit-text-fill-color: #111 !important;
    box-shadow: 0 10px 22px rgba(0,0,0,.22);
  }
  #calcForm .toggle-extra-standardized .toggle-extra-field > .field-helper,
  #calcForm .toggle-extra-standardized .toggle-extra-field > .field-error{
    margin-top: 0 !important;
  }
  #calcForm .toggle-extra-standardized .toggle-extra-inline{
    display: grid !important;
    gap: 8px !important;
    margin-top: 0 !important;
  }
  #calcForm .toggle-extra-standardized .toggle-extra-inline-label{
    display: inline-flex !important;
    align-items: center !important;
    min-height: 20px !important;
  }
  #calcForm #whitelistingSpendCapAmountWrap{ display:none; }
  #calcForm #whitelistingSpendCapAmountWrap.is-open,
  #calcForm #whitelistingSpendCapAmountWrap[aria-hidden="false"]{
    display:grid !important;
  }
}


/* === v772 first-pass hierarchy reset: calculator rights/add-on authority === */
@layer theme {
  #calcForm .form-section[data-section="addons"] .toggle-row{
    border: 1px solid rgba(15,23,42,.12) !important;
    background: rgba(255,255,255,.98) !important;
    box-shadow: 0 10px 28px rgba(15,23,42,.05) !important;
  }

  #calcForm .form-section[data-section="addons"] .toggle-body{
    gap: 4px !important;
  }

  #calcForm .form-section[data-section="addons"] .toggle-title{
    color: rgba(15,23,42,.94) !important;
  }

  #calcForm .form-section[data-section="addons"] .toggle-sub,
  #calcForm .form-section[data-section="addons"] .toggle-sub.muted{
    color: rgba(15,23,42,.66) !important;
    opacity: 1 !important;
  }

  #calcForm .form-section[data-section="addons"] .toggle-meta{
    border: 1px solid rgba(15,23,42,.10) !important;
    background: rgba(248,250,252,.96) !important;
    color: rgba(15,23,42,.74) !important;
    box-shadow: none !important;
  }

  #calcForm #buyoutPerpetuityToggleRow .toggle-meta{
    background: rgba(15,23,42,.06) !important;
    color: rgba(15,23,42,.66) !important;
    text-transform: uppercase !important;
    letter-spacing: .04em !important;
    font-size: 10px !important;
  }

  #calcForm #usageRightsExtra.toggle-extra.is-open,
  #calcForm #buyoutPerpetuityExtra.toggle-extra.is-open,
  #calcForm #whitelistingExtra.toggle-extra.is-open,
  #calcForm #exclusivityExtra.toggle-extra.is-open{
    padding: 12px 14px 14px !important;
    border: 1px solid rgba(15,23,42,.08) !important;
    border-top: none !important;
    border-radius: 0 0 18px 18px !important;
    background: rgba(250,251,252,.98) !important;
    box-shadow: inset 0 1px 0 rgba(15,23,42,.04) !important;
  }

  #calcForm .toggle-extra-standardized .toggle-extra-panel{
    gap: 16px !important;
    padding: 0 !important;
  }

  #calcForm .toggle-extra-standardized .toggle-extra-field,
  #calcForm #usageRightsExtra > label,
  #calcForm #buyoutPerpetuityExtra .field-helper,
  #calcForm #buyoutPerpetuityExtra .check{
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  #calcForm .toggle-extra-standardized .toggle-extra-field > .field-helper,
  #calcForm #usageRightsExtra > label > .field-helper,
  #calcForm #buyoutPerpetuityExtra .field-helper{
    color: rgba(15,23,42,.63) !important;
    background: rgba(15,23,42,.035) !important;
    border: 1px solid rgba(15,23,42,.06) !important;
    border-radius: 12px !important;
    padding: 10px 12px !important;
  }

  #calcForm #usageRightsExtra .hero-chips,
  #calcForm #whitelistingExtra .hero-chips,
  #calcForm #exclusivityExtra .hero-chips{
    gap: 10px !important;
  }

  body[data-theme="dark"] #calcForm .form-section[data-section="addons"] .toggle-row{
    border-color: rgba(148,163,184,.18) !important;
    background: rgba(15,23,42,.92) !important;
    box-shadow: none !important;
  }

  body[data-theme="dark"] #calcForm .form-section[data-section="addons"] .toggle-title{
    color: rgba(255,255,255,.94) !important;
  }

  body[data-theme="dark"] #calcForm .form-section[data-section="addons"] .toggle-sub,
  body[data-theme="dark"] #calcForm .form-section[data-section="addons"] .toggle-sub.muted{
    color: rgba(226,232,240,.74) !important;
  }

  body[data-theme="dark"] #calcForm .form-section[data-section="addons"] .toggle-meta{
    border-color: rgba(148,163,184,.16) !important;
    background: rgba(255,255,255,.05) !important;
    color: rgba(226,232,240,.78) !important;
  }

  body[data-theme="dark"] #calcForm #buyoutPerpetuityToggleRow .toggle-meta{
    background: rgba(255,255,255,.08) !important;
    color: rgba(226,232,240,.72) !important;
  }

  body[data-theme="dark"] #calcForm #usageRightsExtra.toggle-extra.is-open,
  body[data-theme="dark"] #calcForm #buyoutPerpetuityExtra.toggle-extra.is-open,
  body[data-theme="dark"] #calcForm #whitelistingExtra.toggle-extra.is-open,
  body[data-theme="dark"] #calcForm #exclusivityExtra.toggle-extra.is-open{
    border-color: rgba(148,163,184,.14) !important;
    background: rgba(2,6,23,.70) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.03) !important;
  }

  body[data-theme="dark"] #calcForm .toggle-extra-standardized .toggle-extra-field > .field-helper,
  body[data-theme="dark"] #calcForm #usageRightsExtra > label > .field-helper,
  body[data-theme="dark"] #calcForm #buyoutPerpetuityExtra .field-helper{
    color: rgba(226,232,240,.72) !important;
    background: rgba(255,255,255,.04) !important;
    border-color: rgba(148,163,184,.14) !important;
  }
}


@layer theme {
  
body.home-page #calculator.card {
  border-radius: 28px;
  padding: 26px 24px;
}

body.home-page #calculator .calc-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: start;
  width: 100%;
  margin: 8px 0 14px;
  padding: 26px 0 24px;
  gap: 0;
  border: none;
  border-radius: 0;
  background: none;
  box-shadow: none;
}

body.home-page #calculator .calc-header-left {
  min-width: 0;
  max-width: none;
  display: grid;
  align-content: start;
  gap: 0;
  padding: 0;
}

body.home-page #calculator .calc-header-left h2 {
  order: 1;
  margin: 0;
  max-width: none;
  font-size: clamp(40px, 4.6vw, 62px) !important;
  font-weight: 900;
  line-height: 1.0;
  letter-spacing: -0.054em;
  text-wrap: balance;
  color: color-mix(in srgb, var(--text) 99%, transparent);
}

body.home-page #calculator .calc-header-left .form-micro {
  order: 2;
  margin: 12px 0 0;
  max-width: 46ch;
  font-size: 17px;
  line-height: 1.44;
  font-weight: 650;
  letter-spacing: -0.016em;
  text-transform: none;
  color: color-mix(in srgb, #172033 92%, white 8%);
}

body.home-page #calculator .calc-header-support {
  order: 3;
  display: block;
  margin: 10px 0 0;
  max-width: 50ch;
  font-size: 15px;
  line-height: 1.58;
  font-weight: 560;
  letter-spacing: -0.01em;
  color: color-mix(in srgb, #172033 96%, white 4%);
}

body.home-page #calculator .calc-header-right {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 10px;
  width: 100%;
  margin: 0 !important;
  padding: 8px 0 14px;
  border-top: 1px solid rgba(15,23,42,.07);
  border-bottom: 1px solid rgba(15,23,42,.06);
}

body.home-page #calculator .calc-header-trust-copy {
  display: none;
}

body.home-page #calculator .calc-header-trust-pills {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 6px;
  flex: 0 0 auto;
}

body.home-page #calculator .calc-header-right .trust-pill {
  min-height: 28px;
  margin: 0 !important;
  padding: 10px 14px !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  border: 1px solid rgba(15,23,42,.11) !important;
  background: rgba(255,255,255,.92) !important;
  color: rgba(17,17,17,.74);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .002em;
  line-height: 1.2;
  white-space: nowrap;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.98);
}

body.home-page #calculator .calc-form-topbar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  column-gap: 14px;
  row-gap: 8px;
  width: 100%;
  margin: 0 0 12px;
}

body.home-page #calculator .calc-form-topbar .stepper {
  margin: 0;
  min-width: 0;
}

body.home-page #calculator .presets-trigger--form {
  justify-self: end;
  margin-left: 0;
}

body.home-page #calculator .presets-trigger--form .btn {
  min-height: 34px;
  padding: 0 13px;
  border-radius: 12px;
  font-size: 11px;
  font-weight: 700;
  border-color: rgba(15,23,42,.08) !important;
  background: rgba(255,255,255,.8) !important;
  color: color-mix(in srgb, var(--text) 80%, transparent) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.88);
}

@media (max-width: 720px) {
    body.home-page .site-header .inner {
      padding: var(--space-12) var(--space-16);
      gap: var(--space-12);
    }

    body.home-page .site-actions {
      gap: 8px;
      flex: 0 0 auto;
    }

    body.home-page .site-actions .btn {
      height: 40px;
      padding: 0 14px;
      font-size: 14px;
      border-radius: 12px;
      white-space: nowrap;
    }

    body.home-page .homepage-topbar {
      margin-bottom: 12px;
    }

    body.home-page .homepage-hero {
      display: flex;
      flex-direction: column;
      gap: 10px;
    }

    body.home-page .homepage-hero-copy,
    body.home-page .homepage-hero-meta {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
    }

    body.home-page .homepage-hero-copy {
      gap: 8px;
    }

    body.home-page .topbar-left h1 {
      max-width: 18.6ch;
      margin: 0;
      font-size: clamp(27px, 6.9vw, 34px);
      line-height: 1.05;
      letter-spacing: -0.038em;
      text-wrap: balance;
    }

    body.home-page .topbar-left .sub {
      margin: 0;
      max-width: 34ch;
      font-size: 16px;
      line-height: 1.48;
      color: var(--text);
    }

    body.home-page .hero-authority {
      margin: 0;
      max-width: 35ch;
      font-size: 14px;
      line-height: 1.52;
      opacity: .86;
    }

    body.home-page .homepage-hero-meta {
      gap: 10px;
      padding: 14px;
      border: 1px solid color-mix(in srgb, var(--border) 90%, transparent);
      border-radius: 22px;
      background: color-mix(in srgb, var(--bg-elev) 96%, transparent);
      box-shadow: var(--shadow-1);
    }

    body.home-page .hero-note {
      margin: 0;
      font-size: 16px;
      font-weight: 700;
      line-height: 1.35;
      color: var(--text);
    }

    body.home-page .hero-chips {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
    }

    body.home-page .hero-chips .chip-mini {
      min-height: 30px;
      padding: 6px 10px;
      font-size: 10.5px;
      font-weight: 600;
      line-height: 1.15;
      color: #172033 !important;
      -webkit-text-fill-color: #172033 !important;
      text-shadow: none;
      background: #ffffff !important;
      border: 1px solid rgba(15,23,42,.14) !important;
      box-shadow: 0 1px 1px rgba(15,23,42,.04), inset 0 1px 0 rgba(255,255,255,.78);
      opacity: 1 !important;
    }

    body.home-page .homepage-hero-actions {
      width: 100%;
      display: grid;
      grid-template-columns: 1fr;
      gap: 8px !important;
      margin-top: 0;
    }

    body.home-page .homepage-hero-actions .btn {
      width: 100%;
      min-height: 42px;
      justify-content: center;
      font-size: 13px;
    }

    body.home-page .homepage-hero-actions .btn-ghost {
      background: #ffffff !important;
      border: 1px solid rgba(15,23,42,.14) !important;
      color: #172033 !important;
      -webkit-text-fill-color: #172033 !important;
      font-weight: 600;
      box-shadow: 0 1px 1px rgba(15,23,42,.04), inset 0 1px 0 rgba(255,255,255,.78);
      opacity: 1 !important;
    }

    body.home-page .hero-micro {
      margin: 0;
      font-size: 14px;
      line-height: 1.5;
      opacity: .92;
    }

    body.home-page .homepage-hero-preview {
      margin-top: 0;
    }

    body.home-page .hero-preview-grid {
      gap: var(--space-14);
    }

    body.home-page .hero-big {
      font-size: clamp(28px, 8vw, 36px);
      line-height: 1.08;
    }

    body.home-page .section-head {
      align-items: flex-start;
    }

    body.home-page .section-card {
      padding: 12px;
      border-radius: 18px;
    }

    body.home-page .section-card .section-head {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      align-items: start;
      justify-content: space-between;
      margin-bottom: 5px;
      gap: 6px;
    }

    body.home-page .section-card .section-title {
      margin: 0;
      max-width: none;
      flex: 1 1 auto;
      font-size: 14.75px;
      line-height: 1.18;
      color: var(--text);
    }

    body.home-page .section-card .section-pill {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      align-self: start;
      flex: 0 0 auto;
      min-height: 24px;
      padding: 4px 8px;
      margin-top: 0;
      border-radius: 999px;
      border: 1px solid rgba(15,23,42,.14) !important;
      background: #ffffff !important;
      color: #172033 !important;
      -webkit-text-fill-color: #172033 !important;
      font-size: 10.25px;
      font-weight: 700;
      line-height: 1;
      letter-spacing: 0.01em;
      white-space: nowrap;
      box-shadow: 0 1px 1px rgba(15,23,42,.04), inset 0 1px 0 rgba(255,255,255,.82);
      opacity: 1 !important;
    }

    body.home-page .section-card .section-body {
      display: flex;
      flex-direction: column;
      gap: 5px;
      margin-bottom: 0;
    }

    body.home-page .section-card .section-body > p {
      margin: 0;
      color: color-mix(in srgb, var(--text) 96%, transparent);
      font-size: 11.5px;
      line-height: 1.34;
    }

    body.home-page .section-card .section-body > p strong {
      color: var(--text);
    }

    body.home-page .section-card .section-list {
      display: grid;
      gap: 4px;
      margin: 0;
      padding-left: 14px;
      color: color-mix(in srgb, var(--text) 95%, transparent);
      font-size: 10.85px;
    }

    body.home-page .section-card .section-list li {
      margin: 0;
      line-height: 1.18;
    }

    body.home-page .section-card .u-s20,
    body.home-page .history-guest .u-s31 {
      display: grid;
      grid-template-columns: 1fr;
      gap: 5px;
      align-items: stretch;
    }

    body.home-page .section-card .u-s20 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
      margin-top: 3px;
    }

    body.home-page .grid.u-s63 {
      gap: 9px;
    }

    body.home-page .grid.u-s63 > .section-card {
      min-height: 0;
    }

    body.home-page .grid.u-s63 > .section-card .u-s20 {
      gap: 5px;
    }

    body.home-page .grid.u-s63 > .section-card .u-s20 .btn {
      min-height: 40px;
    }

    body.home-page .section-card .u-s20 .btn,
    body.home-page .history-guest .u-s31 .btn,
    body.home-page .card.soft.hover-lift .u-s35 .btn {
      width: 100%;
      min-height: 43px;
      justify-content: center;
      font-size: 12.45px;
      padding: 8px 11px;
      font-weight: 700;
      line-height: 1.18;
      text-align: center;
      text-wrap: balance;
      -webkit-text-fill-color: currentColor;
    }

    body.home-page .section-card .u-s20 .btn-ghost,
    body.home-page .history-guest .u-s31 .quiet-link {
      min-height: 36px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      border-radius: 13px;
      border: 1px solid rgba(15,23,42,.15) !important;
      background: #ffffff !important;
      text-decoration: none;
      color: #172033 !important;
      -webkit-text-fill-color: #172033 !important;
      font-weight: 600;
      box-shadow: 0 1px 1px rgba(15,23,42,.04), inset 0 1px 0 rgba(255,255,255,.82);
      opacity: 1 !important;
    }


    body.home-page .section-card .u-s20 .btn-primary {
      border-color: #172033 !important;
      background: #172033 !important;
      color: #ffffff !important;
      -webkit-text-fill-color: #ffffff !important;
      box-shadow: 0 2px 8px rgba(15,23,42,.18);
    }

    body.home-page .section-card .u-s20 .btn-primary:hover,
    body.home-page .section-card .u-s20 .btn-primary:active {
      background: #172033 !important;
      color: #ffffff !important;
      -webkit-text-fill-color: #ffffff !important;
    }


    body.home-page .history-guest {
      padding: 18px;
    }

    body.home-page .history-guest h2 {
      margin: 0 0 8px;
    }

    body.home-page .history-guest .muted {
      margin: 0;
    }

    body.home-page .history-guest .u-s31 .quiet-link {
      width: 100%;
      justify-content: center;
      font-size: 14px;
    }
    body.home-page #calculator.card {
      padding: 20px 16px;
    }

    body.home-page #calculator.card {
      padding: 20px 16px;
    }

    body.home-page #calculator .calc-header {
      display: grid;
      grid-template-columns: 1fr;
      gap: 0;
      margin: 0 0 12px;
      padding: 14px 15px 12px;
      border: 1px solid color-mix(in srgb, var(--border) 86%, white 14%);
      border-radius: 20px;
      background:
        radial-gradient(circle at top right, rgba(15,23,42,.022), transparent 46%),
        linear-gradient(180deg, rgba(255,255,255,.998), rgba(248,250,252,.985));
      box-shadow: 0 10px 20px rgba(15,23,42,.034), inset 0 1px 0 rgba(255,255,255,.92);
    }

    body.home-page #calculator .calc-header-left {
      max-width: none;
      gap: 0;
    }

    body.home-page #calculator .calc-header-left h2 {
      max-width: none;
      font-size: clamp(30px, 7.8vw, 40px) !important;
      font-weight: 900;
      line-height: 1.04;
      letter-spacing: -0.044em;
      text-wrap: balance;
    }

    body.home-page #calculator .calc-header-left .form-micro {
      margin: 8px 0 0;
      max-width: none;
      font-size: 14px;
      font-weight: 650;
      line-height: 1.44;
      letter-spacing: -0.01em;
    }

    body.home-page #calculator .calc-header-support {
      display: block;
      margin: 8px 0 0;
      max-width: none;
      font-size: 13.5px;
      line-height: 1.58;
      font-weight: 560;
      letter-spacing: -0.008em;
      color: color-mix(in srgb, #172033 95%, white 5%);
    }

    body.home-page #calculator .calc-form-topbar {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      align-items: center;
      column-gap: 8px;
      row-gap: 8px;
      margin: 0 0 12px;
    }

    body.home-page #calculator .calc-form-topbar .stepper {
      margin: 0;
      min-width: 0;
      order: 1;
    }

    body.home-page #calculator .presets-trigger--form {
      order: 2;
      justify-self: end;
      margin-left: 0;
      align-self: center;
    }

    body.home-page #calculator .presets-trigger--form .btn {
      min-height: 31px;
      padding: 0 10px;
      font-size: 10.25px;
      border-radius: 10px;
    }

    body.home-page #calculator .calc-header-right {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 5px 6px;
      width: 100%;
      margin: 0 !important;
      padding: 7px 0 0;
      border-top: 1px solid rgba(15,23,42,.055);
    }

    body.home-page #calculator .calc-header-trust-copy {
      display: none;
    }

    body.home-page #calculator .calc-header-trust-pills {
      display: flex;
      flex-wrap: wrap;
      justify-content: flex-start;
      gap: 5px;
      flex: 1 1 auto;
    }

    body.home-page #calculator .calc-header-right .trust-pill {
      min-height: 26px;
      margin: 0 !important;
      padding: 5px 12px;
      border: 1px solid rgba(15,23,42,.07) !important;
      border-radius: 999px;
      background: rgba(255,255,255,.84) !important;
      color: rgba(17,17,17,.64);
      font-size: 10.5px;
      font-weight: 700;
      line-height: 1.2;
      white-space: nowrap;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      box-shadow: inset 0 1px 0 rgba(255,255,255,.92);
    }

    body.home-page .hero-chips .chip-mini,
    body.home-page .section-card .section-pill,
    body.home-page .homepage-hero-actions .btn-ghost,
    body.home-page .section-card .u-s20 .btn-ghost,
    body.home-page .history-guest .u-s31 .quiet-link {
      filter: none !important;
      text-indent: 0 !important;
      overflow: visible !important;
      visibility: visible !important;
    }

    body.home-page .card.soft.hover-lift .u-s35 {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 10px;
    }
  }
}

/* === 2026-03-16 — Mobile report rail live-track sibling rebuild (replaces the losing in-rail pseudo live-indicator) === */
@layer theme {
  @media (max-width: 900px){
    .report-card .report-tabs{
      position:relative;
      display:flex !important;
      overflow-x:scroll !important;
      overflow-y:hidden !important;
      flex-wrap:nowrap !important;
      justify-content:flex-start !important;
      align-items:center;
      gap:12px !important;
      padding:12px 24px 12px 16px !important;
      scroll-snap-type:x proximity;
      scroll-padding-left:16px;
      scroll-padding-right:24px;
      scrollbar-gutter:auto;
      scrollbar-width:none !important;
      border:1px solid rgba(17,17,17,.08);
      border-radius:18px;
      background:linear-gradient(180deg, rgba(248,250,252,.92), rgba(255,255,255,.82));
      box-shadow:inset 0 1px 0 rgba(255,255,255,.96);
      overscroll-behavior-x:contain;
      -webkit-overflow-scrolling:touch;
    }

    body[data-theme="dark"] .report-card .report-tabs{
      border-color:rgba(255,255,255,.10);
      background:linear-gradient(180deg, rgba(15,23,42,.56), rgba(2,6,23,.42));
      box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
    }

    .report-card .report-tabs::-webkit-scrollbar{
      display:none !important;
      width:0 !important;
      height:0 !important;
    }

    .report-card .report-tabs-indicator{
      position:relative;
      height:10px;
      margin:10px 16px 0 !important;
      border-radius:999px;
      background:linear-gradient(180deg, rgba(15,23,42,.10), rgba(15,23,42,.18));
      box-shadow:inset 0 0 0 1px rgba(15,23,42,.06), inset 0 1px 1px rgba(255,255,255,.55);
      opacity:0;
      pointer-events:none;
      transition:opacity .12s ease-out;
      overflow:hidden;
    }

    .report-card .report-tabs-indicator.is-active{
      opacity:1;
    }

    body[data-theme="dark"] .report-card .report-tabs-indicator{
      background:linear-gradient(180deg, rgba(255,255,255,.12), rgba(255,255,255,.20));
      box-shadow:inset 0 0 0 1px rgba(255,255,255,.08), inset 0 1px 1px rgba(255,255,255,.05);
    }

    .report-card .report-tabs-indicator__thumb{
      position:absolute;
      inset:1px auto 1px 1px;
      width:34%;
      border-radius:999px;
      background:linear-gradient(180deg, rgba(17,17,17,.86), rgba(17,17,17,.72));
      box-shadow:0 1px 3px rgba(15,23,42,.22), inset 0 1px 0 rgba(255,255,255,.24);
      transform:translateX(0);
      will-change:transform,width;
      transition:transform .12s ease-out, width .12s ease-out;
    }

    body[data-theme="dark"] .report-card .report-tabs-indicator__thumb{
      background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(255,255,255,.84));
      box-shadow:0 1px 3px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.22);
    }

    .report-card .report-tab:not(.is-active):not([aria-selected="true"]){
      position:relative;
      z-index:1;
      flex:0 0 auto !important;
      width:136px !important;
      min-width:136px !important;
      min-height:42px !important;
      padding:12px 18px !important;
      justify-content:center !important;
      text-align:center !important;
      scroll-snap-align:start;
      border:1px solid rgba(17,17,17,.09);
      background:rgba(255,255,255,.98);
      box-shadow:0 1px 0 rgba(255,255,255,.98) inset, 0 4px 12px rgba(15,23,42,.05);
    }

    body[data-theme="dark"] .report-card .report-tab{
      border-color:rgba(255,255,255,.12);
      background:rgba(255,255,255,.06);
      box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
    }

    .report-card .report-tab.is-active,
    .report-card .report-tab[aria-selected="true"],
    .report-card .report-tab.is-active:hover,
    .report-card .report-tab[aria-selected="true"]:hover,
    .report-card .report-tab.is-active:focus-visible,
    .report-card .report-tab[aria-selected="true"]:focus-visible,
    body[data-theme="dark"] .report-card .report-tab.is-active,
    body[data-theme="dark"] .report-card .report-tab[aria-selected="true"],
    body[data-theme="dark"] .report-card .report-tab.is-active:hover,
    body[data-theme="dark"] .report-card .report-tab[aria-selected="true"]:hover,
    body[data-theme="dark"] .report-card .report-tab.is-active:focus-visible,
    body[data-theme="dark"] .report-card .report-tab[aria-selected="true"]:focus-visible{
      border-color:#111111 !important;
      background:#111111 !important;
      background-color:#111111 !important;
      background-image:none !important;
      color:#ffffff !important;
      -webkit-text-fill-color:#ffffff !important;
      box-shadow:none !important;
      filter:none !important;
      opacity:1 !important;
    }

    .report-card .report-tabs-hint{
      margin:7px 16px 0 !important;
      font-size:12.5px !important;
      opacity:.80;
    }
  }

  @media (max-width: 640px){
    .report-card .report-tabs{
      gap:12px !important;
      padding-right:24px !important;
      scroll-padding-right:24px;
    }

    .report-card .report-tab{
      width:144px !important;
      min-width:144px !important;
      font-size:13px !important;
    }
  }
}


/* === V776 bold root-cause test: full-screen mobile share preview + split mobile results hierarchy === */
@layer theme {
    @media (max-width: 640px) {
        /* Bold move 1: stop the mobile preview from living in the weak in-between state.
       Force a dedicated full-screen preview shell so we can verify whether the remaining
       issue is composition-only or something deeper. */

        body[data-theme="dark"] #shareCardModal .modal-card.sharecard-card {
            background: linear-gradient(180deg, rgba(6,10,18,.99), rgba(10,15,25,.99)) !important;
        }

        body[data-theme="dark"] #shareCardModal .modal-head,
        body[data-theme="dark"] #shareCardModal .sharecard-actions,
        body[data-theme="dark"] #shareCardModal .sharecard-upsell {
            background: rgba(11,18,30,.86) !important;
            border-color: rgba(148,163,184,.16) !important;
        }

        body[data-theme="dark"] #shareCardModal #shareCardHint {
            color: rgba(226,232,240,.72) !important;
        }

        body[data-theme="dark"] #shareCardModal .sharecard-preview {
            background: radial-gradient(circle at top, rgba(21,29,44,.96), rgba(11,18,30,.98) 64%, rgba(5,9,16,1) 100%) !important;
        }

            body[data-theme="dark"] #shareCardModal .sharecard-preview img {
                border-color: rgba(148,163,184,.18) !important;
                background: rgba(255,255,255,.98) !important;
                box-shadow: 0 32px 78px rgba(0,0,0,.48), 0 12px 28px rgba(0,0,0,.34) !important;
            }


        #result .range-premium {
            margin-top: 0 !important;
            padding: 16px 16px 14px !important;
            border-radius: 22px !important;
            background: linear-gradient(180deg, rgba(15,23,42,.96), rgba(30,41,59,.92)) !important;
            color: #fff !important;
            box-shadow: inset 0 1px 0 rgba(255,255,255,.10), 0 18px 42px rgba(15,23,42,.18) !important;
        }

        #result .range-big {
            font-size: clamp(31px, 8vw, 38px) !important;
            line-height: 1 !important;
            letter-spacing: -.045em !important;
            color: #fff !important;
        }

        #result .range-dash {
            opacity: .4 !important;
        }

        #result .range-sub {
            margin-top: 10px !important;
            font-size: 13px !important;
            line-height: 1.45 !important;
            color: rgba(255,255,255,.78) !important;
        }

        #result .trust-lines {
            display: grid !important;
            gap: 6px !important;
            padding: 14px 14px 0 !important;
            font-size: 12.5px !important;
            line-height: 1.45 !important;
            color: rgba(15,23,42,.72) !important;
        }

            #result .trust-lines .muted {
                color: rgba(15,23,42,.58) !important;
            }

        #result .report-meta-inline {
            justify-content: flex-start !important;
            gap: 8px !important;
            padding: 0 !important;
        }

            #result .report-meta-inline .pill {
                min-height: 32px !important;
                padding: 8px 11px !important;
                border-radius: 999px !important;
                background: rgba(255,255,255,.96) !important;
                border: 1px solid rgba(15,23,42,.10) !important;
                box-shadow: 0 8px 18px rgba(15,23,42,.06) !important;
            }

        #result .report-actions-wrap,
        #result .share-callout,
        #result .pro-value-stack,
        #result .card.report-card:not(.report-summary.result-card) {
            margin: 14px 14px 0 !important;
            border-radius: 22px !important;
        }
    }
}


/* Remove mobile tap highlight on all interactive elements */
* {
    -webkit-tap-highlight-color: transparent;
}


@media (max-width: 720px) {
    #result .report-summary.result-card .trust-lines > .muted {
        color: rgba(15,23,42,.72) !important;
        opacity: 1 !important;
    }

    body[data-theme="dark"] #result .report-summary.result-card .trust-lines > .muted {
        color: rgba(255,255,255,.78) !important;
    }

@media (max-width: 720px) {
    #result .share-callout .share-copy {
        display: grid !important;
        gap: 6px !important;
    }

    #result .share-callout .share-title {
        display: block !important;
        margin: 0 !important;
        color: rgba(15,23,42,.92) !important;
        line-height: 1.2 !important;
    }

    #result .share-callout .share-copy > .muted {
        display: block !important;
        margin: 0 !important;
        font-size: 12px !important;
        line-height: 1.45 !important;
        color: rgba(15,23,42,.68) !important;
        opacity: 1 !important;
        white-space: normal !important;
    }

    body[data-theme="dark"] #result .share-callout .share-title {
        color: rgba(255,255,255,.92) !important;
    }

    body[data-theme="dark"] #result .share-callout .share-copy > .muted {
        color: rgba(255,255,255,.74) !important;
    }
}

@media (max-width: 700px){
  #calcForm .form-section[data-section="addons"] > .form-section-head{
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:6px !important;
  }

  #calcForm .form-section[data-section="addons"] > .form-section-head h3,
  #calcForm .form-section[data-section="addons"] > .form-section-head p,
  #calcForm .form-section[data-section="addons"] > .form-section-head .form-section-actions{
    min-width:0 !important;
    width:100% !important;
  }

  #calcForm .form-section[data-section="addons"] > .form-section-head h3{
    order:1 !important;
    margin:0 !important;
  }

  #calcForm .form-section[data-section="addons"] > .form-section-head p,
  #calcForm .form-section[data-section="addons"] > .form-section-head p.muted{
    order:2 !important;
    display:block !important;
    margin:0 !important;
    max-width:none !important;
    width:100% !important;
    white-space:normal !important;
    overflow:visible !important;
    text-wrap:pretty;
    font-size:12px !important;
    line-height:1.45 !important;
    color:rgba(15,23,42,.82) !important;
    opacity:1 !important;
  }

  body[data-theme="dark"] #calcForm .form-section[data-section="addons"] > .form-section-head p,
  body[data-theme="dark"] #calcForm .form-section[data-section="addons"] > .form-section-head p.muted{
    color:rgba(255,255,255,.84) !important;
  }

  #calcForm .form-section[data-section="addons"] > .form-section-head .form-section-actions{
    order:3 !important;
    display:flex !important;
    justify-content:flex-start !important;
    width:100% !important;
    margin-top:2px !important;
  }

  #calcForm .form-section[data-section="addons"] > .form-section-head .form-section-actions .btn{
    width:auto !important;
    max-width:100% !important;
  }

  #calcForm .form-section[data-section="addons"] .toggle-row{
    display:grid !important;
    grid-template-columns:32px minmax(0,1fr) !important;
    grid-template-areas:
      "ui body"
      "meta meta" !important;
    align-items:start !important;
    column-gap:12px !important;
    row-gap:8px !important;
    padding:14px 14px 12px !important;
  }

  #calcForm .form-section[data-section="addons"] .toggle-ui{
    grid-area:ui !important;
    margin-top:3px !important;
  }

  #calcForm .form-section[data-section="addons"] .toggle-body{
    grid-area:body !important;
    display:grid !important;
    gap:4px !important;
    min-width:0 !important;
    width:100% !important;
  }

  #calcForm .form-section[data-section="addons"] .toggle-title,
  #calcForm .form-section[data-section="addons"] .toggle-sub{
    display:block !important;
    min-width:0 !important;
    width:100% !important;
    white-space:normal !important;
  }

  #calcForm .form-section[data-section="addons"] .toggle-title{
    font-size:15px !important;
    line-height:1.34 !important;
  }

  #calcForm .form-section[data-section="addons"] .toggle-sub{
    font-size:12.5px !important;
    line-height:1.5 !important;
  }

  #calcForm .form-section[data-section="addons"] .toggle-meta{
    grid-area:meta !important;
    display:inline-flex !important;
    width:fit-content !important;
    margin:0 0 0 44px !important;
    justify-self:start !important;
    max-width:calc(100% - 44px) !important;
    white-space:normal !important;
    font-size:11px !important;
    line-height:1.4 !important;
    padding:6px 10px !important;
  }

  #calcForm #usageRightsExtra.toggle-extra.is-open,
  #calcForm #buyoutPerpetuityExtra.toggle-extra.is-open,
  #calcForm #whitelistingExtra.toggle-extra.is-open,
  #calcForm #exclusivityExtra.toggle-extra.is-open{
    display:block !important;
    width:100% !important;
    max-height:none !important;
    overflow:visible !important;
    clear:both !important;
    margin:8px 0 16px !important;
    padding:14px 14px 16px !important;
  }

  #calcForm #usageRightsExtra,
  #calcForm #buyoutPerpetuityExtra,
  #calcForm #whitelistingExtra,
  #calcForm #exclusivityExtra{
    position:relative !important;
    clear:both !important;
  }

  #calcForm .toggle-extra-standardized .toggle-extra-panel{
    gap:14px !important;
  }

  #calcForm .toggle-extra-standardized .toggle-extra-field > .field-helper,
  #calcForm #usageRightsExtra > label > .field-helper,
  #calcForm #buyoutPerpetuityExtra .field-helper{
    padding:12px 13px !important;
    font-size:12.5px !important;
    line-height:1.5 !important;
  }

  #calcForm #usageRightsExtra .hero-chips,
  #calcForm #whitelistingExtra .hero-chips,
  #calcForm #exclusivityExtra .hero-chips{
    margin:8px 0 10px !important;
    gap:8px !important;
  }
}

/* === v774 third-pass open-extra flattening: reduce nested soft boxes === */
@layer theme {
  #calcForm #usageRightsExtra.toggle-extra.is-open,
  #calcForm #buyoutPerpetuityExtra.toggle-extra.is-open,
  #calcForm #whitelistingExtra.toggle-extra.is-open,
  #calcForm #exclusivityExtra.toggle-extra.is-open{
    background: rgba(252,252,253,.985) !important;
    box-shadow: inset 0 1px 0 rgba(15,23,42,.035) !important;
  }

  #calcForm .toggle-extra-standardized .toggle-extra-panel,
  #calcForm #usageRightsExtra,
  #calcForm #buyoutPerpetuityExtra{
    gap: 0 !important;
  }

  #calcForm .toggle-extra-standardized .toggle-extra-field,
  #calcForm #usageRightsExtra > label{
    gap: 6px !important;
    padding: 12px 0 !important;
    border-top: 1px solid rgba(15,23,42,.08) !important;
  }

  #calcForm .toggle-extra-standardized .toggle-extra-field:first-child,
  #calcForm #usageRightsExtra > label:first-child{
    padding-top: 0 !important;
    border-top: 0 !important;
  }

  #calcForm .toggle-extra-standardized .toggle-extra-field:last-child,
  #calcForm #usageRightsExtra > label:last-child{
    padding-bottom: 0 !important;
  }

  #calcForm .toggle-extra-standardized .toggle-extra-field > .field-helper,
  #calcForm #usageRightsExtra > label > .field-helper,
  #calcForm #buyoutPerpetuityExtra .field-helper{
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  #calcForm #buyoutPerpetuityExtra .check{
    margin-top: 12px !important;
    padding-top: 12px !important;
    border-top: 1px solid rgba(15,23,42,.08) !important;
  }

  body[data-theme="dark"] #calcForm #usageRightsExtra.toggle-extra.is-open,
  body[data-theme="dark"] #calcForm #buyoutPerpetuityExtra.toggle-extra.is-open,
  body[data-theme="dark"] #calcForm #whitelistingExtra.toggle-extra.is-open,
  body[data-theme="dark"] #calcForm #exclusivityExtra.toggle-extra.is-open{
    background: rgba(2,6,23,.76) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.025) !important;
  }

  body[data-theme="dark"] #calcForm .toggle-extra-standardized .toggle-extra-field,
  body[data-theme="dark"] #calcForm #usageRightsExtra > label,
  body[data-theme="dark"] #calcForm #buyoutPerpetuityExtra .check{
    border-color: rgba(148,163,184,.14) !important;
  }
}


/* === v776 pass-1 deep-workflow hierarchy: calculator/result/report support surfaces only === */
@layer theme {
  #calcForm .form-section[data-section="addons"] > .form-section-head{
    margin-bottom: 12px !important;
    padding: 0 2px 14px !important;
    border-bottom: 1px solid rgba(15,23,42,.10) !important;
  }

  #calcForm .form-section[data-section="addons"] > .form-section-head h3{
    color: rgba(15,23,42,.96) !important;
    letter-spacing: -.02em !important;
  }

  #calcForm .form-section[data-section="addons"] > .form-section-head p,
  #calcForm .form-section[data-section="addons"] > .form-section-head p.muted{
    color: rgba(15,23,42,.68) !important;
  }

  #calcForm .form-section[data-section="addons"] .toggle-row{
    border-color: rgba(15,23,42,.14) !important;
    background: linear-gradient(180deg, rgba(255,255,255,.99), rgba(248,250,252,.98)) !important;
    box-shadow: 0 12px 30px rgba(15,23,42,.06) !important;
  }

  #calcForm .form-section[data-section="addons"] .toggle-title{
    color: rgba(15,23,42,.96) !important;
  }

  #calcForm .form-section[data-section="addons"] .toggle-sub,
  #calcForm .form-section[data-section="addons"] .toggle-sub.muted{
    color: rgba(15,23,42,.62) !important;
  }

  #calcForm .form-section[data-section="addons"] .toggle-meta{
    border-color: rgba(15,23,42,.11) !important;
    background: rgba(241,245,249,.90) !important;
    color: rgba(15,23,42,.76) !important;
  }

  #result .trust-lines{
    gap: 8px !important;
    padding: 16px 16px 0 !important;
    color: rgba(15,23,42,.76) !important;
  }

  #result .trust-lines .muted{
    color: rgba(15,23,42,.58) !important;
  }

  #result .report-meta-inline .pill{
    background: rgba(241,245,249,.92) !important;
    border-color: rgba(15,23,42,.10) !important;
    box-shadow: none !important;
    color: rgba(15,23,42,.76) !important;
  }

  #result .report-actions-wrap,
  #result .share-callout,
  #result .pro-value-stack,
  #result .card.report-card:not(.report-summary.result-card){
    border: 1px solid rgba(15,23,42,.10) !important;
    background: linear-gradient(180deg, rgba(255,255,255,.99), rgba(248,250,252,.97)) !important;
    box-shadow: 0 16px 38px rgba(15,23,42,.06) !important;
  }

  #result .share-callout .share-title,
  #result .pro-value-stack .pvs-head,
  #result .report-card:not(.report-summary.result-card) h3,
  #result .report-card:not(.report-summary.result-card) h4{
    color: rgba(15,23,42,.95) !important;
  }

  #result .share-callout .share-copy > .muted,
  #result .pro-value-stack .muted,
  #result .report-card:not(.report-summary.result-card) .muted,
  #result .report-card:not(.report-summary.result-card) p{
    color: rgba(15,23,42,.66) !important;
    opacity: 1 !important;
  }

  #result .card.report-card:not(.report-summary.result-card){
    overflow: hidden !important;
  }

  #result .report-card .report-tabs{
    padding: 12px !important;
    background: rgba(241,245,249,.78) !important;
    border-bottom: 1px solid rgba(15,23,42,.09) !important;
  }

  #result .report-card .report-tab:not(.is-active):not([aria-selected="true"]){
    background: rgba(255,255,255,.92) !important;
    border-color: rgba(15,23,42,.10) !important;
    color: rgba(15,23,42,.74) !important;
    box-shadow: 0 6px 16px rgba(15,23,42,.04) !important;
  }

  #result .report-card .report-pane{
    background: transparent !important;
    color: rgba(15,23,42,.84) !important;
  }

  #result .report-card .locked-item{
    border: 1px solid rgba(15,23,42,.08) !important;
    background: rgba(241,245,249,.62) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.6) !important;
  }

  body[data-theme="dark"] #calcForm .form-section[data-section="addons"] > .form-section-head{
    border-bottom-color: rgba(148,163,184,.16) !important;
  }

  body[data-theme="dark"] #calcForm .form-section[data-section="addons"] > .form-section-head h3{
    color: rgba(255,255,255,.95) !important;
  }

  body[data-theme="dark"] #calcForm .form-section[data-section="addons"] > .form-section-head p,
  body[data-theme="dark"] #calcForm .form-section[data-section="addons"] > .form-section-head p.muted{
    color: rgba(226,232,240,.70) !important;
  }

  body[data-theme="dark"] #calcForm .form-section[data-section="addons"] .toggle-row{
    border-color: rgba(148,163,184,.20) !important;
    background: linear-gradient(180deg, rgba(15,23,42,.96), rgba(2,6,23,.90)) !important;
    box-shadow: 0 14px 34px rgba(0,0,0,.22) !important;
  }

  body[data-theme="dark"] #calcForm .form-section[data-section="addons"] .toggle-title{
    color: rgba(255,255,255,.95) !important;
  }

  body[data-theme="dark"] #calcForm .form-section[data-section="addons"] .toggle-sub,
  body[data-theme="dark"] #calcForm .form-section[data-section="addons"] .toggle-sub.muted{
    color: rgba(226,232,240,.72) !important;
  }

  body[data-theme="dark"] #calcForm .form-section[data-section="addons"] .toggle-meta{
    border-color: rgba(148,163,184,.18) !important;
    background: rgba(255,255,255,.07) !important;
    color: rgba(226,232,240,.80) !important;
  }

  body[data-theme="dark"] #result .trust-lines{
    color: rgba(226,232,240,.80) !important;
  }

  body[data-theme="dark"] #result .trust-lines .muted{
    color: rgba(226,232,240,.64) !important;
  }

  body[data-theme="dark"] #result .report-meta-inline .pill{
    background: rgba(30,41,59,.78) !important;
    border-color: rgba(148,163,184,.16) !important;
    color: rgba(226,232,240,.82) !important;
  }

  body[data-theme="dark"] #result .report-actions-wrap,
  body[data-theme="dark"] #result .share-callout,
  body[data-theme="dark"] #result .pro-value-stack,
  body[data-theme="dark"] #result .card.report-card:not(.report-summary.result-card){
    border-color: rgba(148,163,184,.14) !important;
    background: linear-gradient(180deg, rgba(15,23,42,.94), rgba(2,6,23,.90)) !important;
    box-shadow: 0 18px 42px rgba(0,0,0,.24) !important;
  }

  body[data-theme="dark"] #result .share-callout .share-title,
  body[data-theme="dark"] #result .pro-value-stack .pvs-head,
  body[data-theme="dark"] #result .report-card:not(.report-summary.result-card) h3,
  body[data-theme="dark"] #result .report-card:not(.report-summary.result-card) h4{
    color: rgba(255,255,255,.94) !important;
  }

  body[data-theme="dark"] #result .share-callout .share-copy > .muted,
  body[data-theme="dark"] #result .pro-value-stack .muted,
  body[data-theme="dark"] #result .report-card:not(.report-summary.result-card) .muted,
  body[data-theme="dark"] #result .report-card:not(.report-summary.result-card) p{
    color: rgba(226,232,240,.72) !important;
  }

  body[data-theme="dark"] #result .report-card .report-tabs{
    background: rgba(15,23,42,.78) !important;
    border-bottom-color: rgba(148,163,184,.14) !important;
  }

  body[data-theme="dark"] #result .report-card .report-tab{
    background: rgba(30,41,59,.88) !important;
    border-color: rgba(148,163,184,.16) !important;
    color: rgba(226,232,240,.76) !important;
    box-shadow: none !important;
  }

  body[data-theme="dark"] #result .report-card .report-pane{
    color: rgba(226,232,240,.84) !important;
  }

  body[data-theme="dark"] #result .report-card .locked-item{
    border-color: rgba(148,163,184,.14) !important;
    background: rgba(30,41,59,.42) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.03) !important;
  }
}

/* === v777 pass-1 mobile width + containment only: deep-workflow mobile surfaces === */
@layer theme {
  @media (max-width: 700px){
    #calcForm .form-section[data-section="addons"] > .form-section-head{
      padding-left: 0 !important;
      padding-right: 0 !important;
      margin-bottom: 10px !important;
    }

    #calcForm .form-section[data-section="addons"] .toggle-row{
      padding: 14px 12px 12px !important;
      column-gap: 11px !important;
      border-radius: 20px !important;
    }

    #calcForm .form-section[data-section="addons"] .toggle-meta{
      margin-left: 40px !important;
      max-width: calc(100% - 40px) !important;
    }

    #calcForm #usageRightsExtra.toggle-extra.is-open,
    #calcForm #buyoutPerpetuityExtra.toggle-extra.is-open,
    #calcForm #whitelistingExtra.toggle-extra.is-open,
    #calcForm #exclusivityExtra.toggle-extra.is-open{
      margin: 8px 0 14px !important;
      padding: 14px 12px 16px !important;
      border-radius: 18px !important;
    }

    #result .trust-lines{
      padding-left: 14px !important;
      padding-right: 14px !important;
    }

    #result .report-actions-wrap,
    #result .share-callout,
    #result .pro-value-stack,
    #result .card.report-card:not(.report-summary.result-card){
      margin: 12px 10px 0 !important;
      border-radius: 20px !important;
    }

    #result .report-actions-wrap{
      padding-left: 14px !important;
      padding-right: 14px !important;
    }

    #result .share-callout,
    #result .pro-value-stack{
      gap: 12px !important;
    }

    #result .report-card .report-tabs{
      padding-left: 10px !important;
      padding-right: 18px !important;
      scroll-padding-left: 10px !important;
      scroll-padding-right: 18px !important;
    }

    #result .report-card .report-pane{
      padding-left: 14px !important;
      padding-right: 14px !important;
    }

    #result .report-card .locked-item{
      margin-left: 0 !important;
      margin-right: 0 !important;
    }
  }
}

/* === V782 corrective pass: core helper legibility + final report-pill contrast === */
body.home-page .topbar-left .sub,
body.home-page .hero-micro,
body.home-page .hero-micro .muted,
body.home-page .homepage-hero-preview .muted.u-s9,
body.home-page .homepage-hero-preview .tiny-note,
body.home-page #calculator .calc-header-left .form-micro,
body.home-page #calculator .calc-header-support,
body.home-page #calcForm .form-section[data-section="audience"] > .form-section-head > p.muted,
body.home-page .section-card .section-body > p,
body.home-page .section-card .section-list,
body.home-page .section-card .section-list li,
.history-card.history-guest > p.muted,
body.home-page .history-card.history-guest > p.muted,
.card.soft.hover-lift > .section-head > div > p.muted.u-s34,
body.home-page .card.soft.hover-lift > .section-head > div > p.muted.u-s34{
  color: rgba(15,23,42,.90) !important;
  -webkit-text-fill-color: rgba(15,23,42,.90) !important;
  opacity: 1 !important;
  text-shadow: none !important;
}

body.home-page .section-card .section-body > p strong,
body.home-page #calculator .calc-header-left .form-micro strong,
body.home-page #calculator .calc-header-support strong,
body.home-page #calcForm .form-section[data-section="audience"] > .form-section-head > p.muted strong{
  color: rgba(15,23,42,.98) !important;
  -webkit-text-fill-color: rgba(15,23,42,.98) !important;
}

body[data-theme="dark"].home-page .topbar-left .sub,
body[data-theme="dark"].home-page .hero-micro,
body[data-theme="dark"].home-page .hero-micro .muted,
body[data-theme="dark"].home-page .homepage-hero-preview .muted.u-s9,
body[data-theme="dark"].home-page .homepage-hero-preview .tiny-note,
body[data-theme="dark"].home-page #calculator .calc-header-left .form-micro,
body[data-theme="dark"].home-page #calculator .calc-header-support,
body[data-theme="dark"].home-page #calcForm .form-section[data-section="audience"] > .form-section-head > p.muted,
body[data-theme="dark"].home-page .section-card .section-body > p,
body[data-theme="dark"].home-page .section-card .section-list,
body[data-theme="dark"].home-page .section-card .section-list li,
body[data-theme="dark"] .history-card.history-guest > p.muted,
body[data-theme="dark"].home-page .history-card.history-guest > p.muted,
body[data-theme="dark"] .card.soft.hover-lift > .section-head > div > p.muted.u-s34,
body[data-theme="dark"].home-page .card.soft.hover-lift > .section-head > div > p.muted.u-s34{
  color: rgba(226,232,240,.92) !important;
  -webkit-text-fill-color: rgba(226,232,240,.92) !important;
  opacity: 1 !important;
  text-shadow: none !important;
}

#result #reportCard .report-tabs > .report-tab.is-active,
#result #reportCard .report-tabs > .report-tab[aria-selected="true"],
#result #reportCard .report-tabs > .report-tab.is-active:hover,
#result #reportCard .report-tabs > .report-tab[aria-selected="true"]:hover,
#result #reportCard .report-tabs > .report-tab.is-active:focus-visible,
#result #reportCard .report-tabs > .report-tab[aria-selected="true"]:focus-visible,
body[data-theme="dark"] #result #reportCard .report-tabs > .report-tab.is-active,
body[data-theme="dark"] #result #reportCard .report-tabs > .report-tab[aria-selected="true"],
body[data-theme="dark"] #result #reportCard .report-tabs > .report-tab.is-active:hover,
body[data-theme="dark"] #result #reportCard .report-tabs > .report-tab[aria-selected="true"]:hover,
body[data-theme="dark"] #result #reportCard .report-tabs > .report-tab.is-active:focus-visible,
body[data-theme="dark"] #result #reportCard .report-tabs > .report-tab[aria-selected="true"]:focus-visible{
  border:1px solid #111111 !important;
  border-color:#111111 !important;
  background:#111111 !important;
  background-color:#111111 !important;
  background-image:none !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  text-shadow:none !important;
  box-shadow:inset 0 0 0 999px #111111, 0 8px 18px rgba(15,23,42,.18) !important;
  -webkit-box-shadow:inset 0 0 0 999px #111111, 0 8px 18px rgba(15,23,42,.18) !important;
  filter:none !important;
  opacity:1 !important;
  appearance:none !important;
  -webkit-appearance:none !important;
  background-clip:padding-box !important;
  isolation:isolate !important;
  z-index:2 !important;
}

#result #reportCard .report-tabs > .report-tab.is-active *,
#result #reportCard .report-tabs > .report-tab[aria-selected="true"] *,
#result #reportCard .report-tabs > .report-tab.is-active:hover *,
#result #reportCard .report-tabs > .report-tab[aria-selected="true"]:hover *,
#result #reportCard .report-tabs > .report-tab.is-active:focus-visible *,
#result #reportCard .report-tabs > .report-tab[aria-selected="true"]:focus-visible *,
body[data-theme="dark"] #result #reportCard .report-tabs > .report-tab.is-active *,
body[data-theme="dark"] #result #reportCard .report-tabs > .report-tab[aria-selected="true"] *,
body[data-theme="dark"] #result #reportCard .report-tabs > .report-tab.is-active:hover *,
body[data-theme="dark"] #result #reportCard .report-tabs > .report-tab[aria-selected="true"]:hover *,
body[data-theme="dark"] #result #reportCard .report-tabs > .report-tab.is-active:focus-visible *,
body[data-theme="dark"] #result #reportCard .report-tabs > .report-tab[aria-selected="true"]:focus-visible *{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  text-shadow:none !important;
  opacity:1 !important;
}


/* === V787 mobile report owner cleanup === */
@media (max-width: 900px){
  #result #reportCard .report-tabs,
  #result #reportCard .report-tabs.has-scroll-overflow,
  #result #reportCard .report-tabs.is-stuck,
  #result #reportCard .report-tabs.has-scroll-overflow.is-stuck,
  body[data-theme="dark"] #result #reportCard .report-tabs,
  body[data-theme="dark"] #result #reportCard .report-tabs.has-scroll-overflow,
  body[data-theme="dark"] #result #reportCard .report-tabs.is-stuck,
  body[data-theme="dark"] #result #reportCard .report-tabs.has-scroll-overflow.is-stuck{
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    border: 0 !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    filter: none !important;
    mask-image: none !important;
    -webkit-mask-image: none !important;
  }

  #result #reportCard .report-tabs::before,
  #result #reportCard .report-tabs::after,
  #result #reportCard .report-tabs.has-scroll-overflow::before,
  #result #reportCard .report-tabs.has-scroll-overflow::after,
  #result #reportCard .report-tabs.is-stuck::before,
  #result #reportCard .report-tabs.is-stuck::after,
  #result #reportCard .report-tabs.has-scroll-overflow.is-stuck::before,
  #result #reportCard .report-tabs.has-scroll-overflow.is-stuck::after,
  body[data-theme="dark"] #result #reportCard .report-tabs::before,
  body[data-theme="dark"] #result #reportCard .report-tabs::after,
  body[data-theme="dark"] #result #reportCard .report-tabs.has-scroll-overflow::before,
  body[data-theme="dark"] #result #reportCard .report-tabs.has-scroll-overflow::after,
  body[data-theme="dark"] #result #reportCard .report-tabs.is-stuck::before,
  body[data-theme="dark"] #result #reportCard .report-tabs.is-stuck::after,
  body[data-theme="dark"] #result #reportCard .report-tabs.has-scroll-overflow.is-stuck::before,
  body[data-theme="dark"] #result #reportCard .report-tabs.has-scroll-overflow.is-stuck::after{
    content: none !important;
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    filter: none !important;
  }

  #result #reportCard .report-tab,
  body[data-theme="dark"] #result #reportCard .report-tab{
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
  }
}
