:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#ececec;background:#0d0f12}*{box-sizing:border-box}html,body{margin:0;min-width:320px;min-height:100vh}button,input,textarea,select{font:inherit}button{color:inherit}.hidden{display:none!important}.app-shell{display:grid;grid-template-columns:280px 1fr;min-height:100vh}.sidebar{height:100vh;border-right:1px solid #242830;background:#11141a;padding:18px 14px;display:flex;flex-direction:column;gap:12px}.brand{display:flex;gap:10px;align-items:center;padding:4px 4px 12px}.brand-mark{width:34px;height:34px;display:grid;place-items:center;border:1px solid #414755;border-radius:10px;font-weight:800}.brand strong,.brand span{display:block}.brand span{color:#777f8f;font-size:11px;margin-top:2px}.primary{border:0;border-radius:10px;background:#f2f3f5;color:#111;font-weight:700;padding:10px 12px;cursor:pointer}.wide{width:100%}.section-title{display:flex;align-items:center;justify-content:space-between;color:#848c9b;font-size:12px;text-transform:uppercase;letter-spacing:.08em;margin-top:8px}.section-title button{border:0;background:transparent;cursor:pointer;color:#9fa7b5;font-size:18px}.project-form{display:grid;gap:8px;padding:10px;background:#171b22;border:1px solid #262c36;border-radius:12px}input,textarea,select{width:100%;border:1px solid #303744;background:#0f1217;color:#ececec;border-radius:8px;padding:9px 10px;outline:none}textarea{resize:none}.list{display:grid;gap:4px;overflow:auto}.list button{border:0;background:transparent;text-align:left;padding:9px 10px;border-radius:8px;cursor:pointer;color:#b9c0cc}.list button:hover,.list .selected{background:#1b2028;color:#fff}.list span,.list small{display:block}.list small{color:#697181;margin-top:3px}.main{min-width:0;display:flex;flex-direction:column;height:100vh}header{padding:18px 28px;border-bottom:1px solid #222731;display:flex;justify-content:space-between;align-items:center}header h1{margin:0;font-size:17px}header p{margin:4px 0 0;color:#767e8d;font-size:12px}.usage{display:grid;grid-template-columns:auto auto;column-gap:10px;align-items:baseline;text-align:right}.usage span,.usage small{color:#747c8b;font-size:11px}.usage small{grid-column:1/-1}.conversation{flex:1;min-height:0;overflow:auto;padding:36px max(28px,calc((100vw - 280px - 860px)/2))}.welcome{max-width:720px;margin:14vh auto 0;text-align:center;color:#8991a0}.welcome h2{color:#e6e8eb;font-size:28px;margin-bottom:10px}.message{max-width:860px;margin:0 auto 26px}.message.user{padding-left:15%}.message-role{color:#747c8b;font-size:11px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:7px}.message.user .message-body{background:#1b2028;border:1px solid #292f3a;border-radius:14px;padding:11px 14px;width:max-content;max-width:100%;margin-left:auto}.message-body{line-height:1.65;color:#e2e5e9}.message-body p:first-child{margin-top:0}.message-body p:last-child{margin-bottom:0}.message-body code{background:#1a1e25;padding:2px 5px;border-radius:5px}.message-body pre{overflow:auto;background:#11151b;padding:14px;border-radius:10px;border:1px solid #262c36}.memory-zone{padding:0 max(28px,calc((100vw - 280px - 860px)/2));display:grid;gap:8px}.memory-card{display:flex;justify-content:space-between;gap:20px;align-items:center;border:1px solid #343b47;background:#171b22;border-radius:12px;padding:12px 14px}.memory-card p{margin:4px 0 0;color:#9199a7;font-size:13px}.memory-card>div:last-child{display:flex;gap:8px}.memory-card button{border:1px solid #343b47;background:#11151b;border-radius:8px;padding:7px 10px;cursor:pointer}.memory-card .primary{background:#eef0f3;color:#111;border:0}.error{margin:8px max(28px,calc((100vw - 280px - 860px)/2));color:#ffb4b4;background:#2a1719;border:1px solid #51272b;border-radius:10px;padding:9px 12px;font-size:13px}.composer{margin:12px max(28px,calc((100vw - 280px - 860px)/2)) 20px;display:flex;gap:10px;align-items:flex-end;border:1px solid #343b47;background:#15191f;border-radius:16px;padding:10px}.composer textarea{border:0;background:transparent;min-height:40px;max-height:160px}.primary:disabled{opacity:.45;cursor:not-allowed}@media(max-width:800px){.app-shell{grid-template-columns:1fr}.sidebar{display:none}.conversation{padding:24px 16px}.memory-zone{padding:0 16px}.composer,.error{margin-left:16px;margin-right:16px}.message.user{padding-left:5%}}

/* Auth foundation */
.auth-view{min-height:100vh;display:grid;place-items:center;padding:32px;background:var(--bg,#0b0d10)}
.auth-card{width:min(420px,100%);padding:32px;border:1px solid var(--border,#262a30);border-radius:18px;background:var(--panel,#111419);box-shadow:0 24px 80px rgba(0,0,0,.25)}
.auth-brand{margin-bottom:28px}.auth-card h1{margin:0 0 10px;font-size:28px}.auth-card>p{margin:0 0 24px;color:var(--muted,#939aa5);line-height:1.5}
.google-login{min-height:44px;display:flex;align-items:center;justify-content:center}.auth-setup{font-size:14px;text-align:center;color:var(--muted,#939aa5)}
.account-area{position:relative;margin-top:auto;padding-top:10px;border-top:1px solid var(--border,#262a30)}
.account-panel{width:100%;display:grid;grid-template-columns:36px minmax(0,1fr);gap:10px;align-items:center;padding:8px;border:0;border-radius:10px;background:transparent;color:inherit;text-align:left;cursor:pointer}
.account-panel:hover,.account-panel:focus-visible,.account-panel[aria-expanded="true"]{background:#1b2028;outline:none}
.account-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover}
.account-panel strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.account-menu{position:absolute;left:0;right:0;bottom:58px;padding:6px;border:1px solid #303744;border-radius:12px;background:#171b22;box-shadow:0 18px 50px rgba(0,0,0,.42);z-index:30}
.account-menu-item{width:100%;padding:10px 11px;border:0;border-radius:8px;background:transparent;color:#d8dce3;text-align:left;cursor:pointer}
.account-menu-item:hover,.account-menu-item:focus-visible{background:#222832;outline:none}
.account-menu-item.danger:hover,.account-menu-item.danger:focus-visible{background:#2b1b1e;color:#ffb4b4}

/* Billing & credits */
.usage-button{border:0;background:transparent;color:inherit;cursor:pointer;border-radius:10px;padding:6px 8px}.usage-button:hover,.usage-button:focus-visible{background:#1b2028;outline:none}
.billing-view{flex:1;min-height:0;overflow:auto;padding:28px max(28px,calc((100vw - 280px - 980px)/2)) 48px;background:#0d0f12}
.billing-page{max-width:980px;margin:0 auto;display:grid;gap:14px}.back-link{justify-self:start;border:0;background:transparent;color:#939baa;cursor:pointer;padding:3px 0 8px}.back-link:hover{color:#fff}
.billing-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.billing-card{border:1px solid #272d37;background:#13171d;border-radius:16px;padding:20px}.billing-card h2,.billing-card h3{margin:5px 0 4px}.billing-card p{margin:5px 0;color:#9aa2b0;font-size:13px;line-height:1.5}.billing-card.compact,.danger-zone,.billing-alert{display:flex;justify-content:space-between;gap:22px;align-items:center}
.eyebrow{display:block;color:#747d8c;font-size:11px;text-transform:uppercase;letter-spacing:.09em}.muted{color:#7f8795!important}.card-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.plan-summary{display:flex;justify-content:space-between;gap:24px}.plan-meta{display:grid;justify-items:end;gap:5px;text-align:right}.plan-meta small,.plan-choice small,.payment-method small,.credit-split small{display:block;color:#798291;margin-top:3px;font-size:11px}
.status-pill{display:inline-flex;align-items:center;width:max-content;border:1px solid #37404d;border-radius:999px;padding:4px 8px;color:#aeb6c3;font-size:11px}.status-pill.active,.status-pill.cancelling{border-color:#355444;color:#a9d7ba;background:#142119}.status-pill.grace_period{border-color:#66572c;color:#e2cf91;background:#241f12}.status-pill.suspended,.status-pill.none{border-color:#66383d;color:#efb1b8;background:#27171a}
.plan-choices{display:grid;gap:9px;margin-top:16px}.plan-choice{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:14px;padding:12px;border:1px solid #2a303a;border-radius:12px;background:#101319}.plan-choice>div{display:grid;gap:1px}.plan-choice>div:nth-child(2){text-align:right}
.credit-split{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0}.credit-split>div{padding:12px;border:1px solid #262d36;border-radius:12px;background:#101319}.credit-split span,.credit-split strong{display:block}.credit-split span{font-size:12px;color:#858e9c}.credit-split strong{font-size:22px;margin-top:4px}.credit-packages{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.credit-packages button{border:1px solid #303744;background:#171c23;border-radius:10px;padding:10px;color:#e6e9ed;cursor:pointer}.credit-packages button:hover{background:#202630}.credit-packages strong,.credit-packages span{display:block}.credit-packages span{font-size:11px;color:#89919e;margin-top:3px}.demo-note{margin-top:12px!important;font-size:11px!important;color:#697382!important}
.secondary{border:1px solid #343c48;background:#171b22;color:#e2e5e9;border-radius:9px;padding:9px 11px;cursor:pointer}.secondary:hover{background:#202630}.secondary:disabled,.primary:disabled{opacity:.45;cursor:not-allowed}
.payment-method{display:grid;grid-template-columns:42px 1fr auto;gap:11px;align-items:center;margin-top:14px}.card-icon{width:42px;height:30px;border:1px solid #39414e;border-radius:7px;display:grid;place-items:center;background:#0f1217;font-weight:800}.payment-method strong{display:block;text-transform:capitalize}
.billing-form{display:grid;gap:10px;margin-top:16px}.billing-form label{display:grid;gap:5px;color:#9ba3b0;font-size:11px}.field-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.field-row:has(>label:nth-child(3)){grid-template-columns:repeat(3,minmax(0,1fr))}.form-actions{display:flex;justify-content:flex-end;margin-top:2px}
.billing-history{display:grid;margin-top:12px}.billing-history>div{display:flex;justify-content:space-between;gap:18px;padding:11px 0;border-top:1px solid #242a33}.billing-history>div:first-child{border-top:0}.billing-history span{display:grid}.billing-history>div>span:last-child{text-align:right}.billing-history small{color:#78818e;font-size:11px;margin-top:3px}.payment-status.succeeded{color:#9bd2ae}.payment-status.failed,.payment-status.disputed,.payment-status.reversed{color:#efadb4}
.danger-zone{border-color:#3d2c30}.danger-button{border:1px solid #5b343a;background:#24171a;color:#f0afb7;border-radius:9px;padding:9px 11px;cursor:pointer}.danger-button:hover{background:#301b1f}
.billing-alert{max-width:980px;border:1px solid #59343a;background:#251619;border-radius:14px;padding:14px 16px}.billing-alert.warning{border-color:#5a4b27;background:#211c10}.billing-alert p{margin:4px 0 0;color:#aab0bb;font-size:12px}.billing-alert>div:last-child{display:flex;gap:8px;flex-wrap:wrap}
.billing-gate{margin:14px max(28px,calc((100vw - 280px - 860px)/2)) 0;padding:13px 14px;border:1px solid #59343a;background:#251619;border-radius:13px;display:flex;justify-content:space-between;gap:16px;align-items:center}.billing-gate strong{display:block}.billing-gate p{margin:4px 0 0;color:#aeb4be;font-size:12px}.billing-gate-actions{display:flex;gap:8px;flex-shrink:0}.composer.locked{opacity:.5}.composer.locked textarea{cursor:not-allowed}
.demo-controls summary{cursor:pointer;color:#aab2be}.demo-controls>div{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}.demo-controls button{border:1px solid #303744;background:#171b22;border-radius:8px;padding:7px 9px;color:#b9c0cc;cursor:pointer}
.billing-loading{color:#8f98a7;text-align:center;padding:15vh 0}
@media(max-width:1000px){.billing-grid{grid-template-columns:1fr}.credit-packages{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){.billing-view{padding:22px 16px 40px}.billing-gate{margin:12px 16px 0;align-items:flex-start;flex-direction:column}.billing-card.compact,.danger-zone,.billing-alert,.plan-summary{align-items:flex-start;flex-direction:column}.plan-meta{justify-items:start;text-align:left}.field-row,.field-row:has(>label:nth-child(3)){grid-template-columns:1fr}.plan-choice{grid-template-columns:1fr}.plan-choice>div:nth-child(2){text-align:left}}
.credit-history .credit-debit{color:#e7a8ae}.credit-history .credit-credit{color:#9fd0ae}
.billing-demo-banner{max-width:980px;display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px dashed #3a424f;background:#11161c;border-radius:12px;padding:10px 14px;color:#d7dce4;font-size:12px}.billing-demo-banner span{color:#7f8998}


/* ATLAS_CHECKOUT_V1 */
.billing-page.checkout-page{max-width:1180px}
.checkout-screen{display:grid;gap:26px;padding:6px 0 18px}

.checkout-progress{
  display:grid;
  grid-template-columns:auto 1fr auto 1fr auto;
  align-items:center;
  max-width:620px;
  width:100%;
  margin:4px auto 12px;
}
.checkout-progress-step{display:flex;align-items:center;gap:9px;color:#747d8c}
.checkout-progress-step span{
  width:30px;height:30px;border-radius:999px;border:1px solid #343b47;
  background:#12161c;display:grid;place-items:center;font-size:12px;font-weight:800
}
.checkout-progress-step strong{font-size:12px;font-weight:700}
.checkout-progress-step.active{color:#f2f4f8}
.checkout-progress-step.active span{background:#f2f4f8;color:#0d1015;border-color:#f2f4f8}
.checkout-progress-step.done{color:#aab4c3}
.checkout-progress-step.done span{background:#242b35;color:#fff}
.checkout-progress-line{height:1px;background:#303641;margin:0 12px}

.pricing-heading{text-align:center;max-width:720px;margin:0 auto 4px}
.pricing-heading h2{font-size:32px;line-height:1.15;margin:8px 0 10px}
.pricing-heading p{color:#8f98a7;font-size:14px;line-height:1.6;margin:0}

.pricing-cards{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  align-items:stretch
}
.pricing-card{
  position:relative;
  min-height:490px;
  border:1px solid #2b313b;
  background:linear-gradient(180deg,#161a20 0%,#11151a 100%);
  border-radius:20px;
  padding:24px;
  display:flex;
  flex-direction:column;
  box-shadow:0 18px 45px rgba(0,0,0,.16)
}
.pricing-card.featured{
  border-color:#697687;
  box-shadow:0 20px 60px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.05)
}
.pricing-card.test-plan{border-style:dashed;opacity:.88}
.pricing-card-top{display:flex;flex-direction:column;min-height:225px}
.pricing-card-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.pricing-card-title h3{font-size:21px;margin:0}
.pricing-badge{
  border:1px solid #4a5564;background:#202630;color:#dce2ea;
  border-radius:999px;padding:4px 8px;font-size:10px;font-weight:800
}
.pricing-badge.test{border-style:dashed;color:#abb4c1}
.pricing-audience{min-height:38px;margin:9px 0 16px!important}
.pricing-price{display:flex;align-items:baseline;gap:7px;margin:4px 0}
.pricing-price strong{font-size:37px;letter-spacing:-.04em}
.pricing-price span{color:#858e9c;font-size:12px}
.pricing-price.test-price strong{font-size:30px;letter-spacing:.02em}
.pricing-credit-line{color:#9aa3b1;font-size:12px;margin-top:5px}
.pricing-credit-line strong{color:#e9edf3}
.pricing-cta{width:100%;margin-top:auto;min-height:42px}
.pricing-divider{height:1px;background:#292f38;margin:21px 0}
.pricing-includes{display:grid;gap:12px}
.pricing-includes>strong{font-size:13px}
.pricing-includes ul{list-style:none;padding:0;margin:0;display:grid;gap:11px}
.pricing-includes li{
  position:relative;padding-left:23px;color:#aeb6c2;font-size:12px;line-height:1.45
}
.pricing-includes li:before{
  content:'✓';position:absolute;left:0;top:0;
  width:16px;height:16px;border-radius:50%;
  border:1px solid #414a57;display:grid;place-items:center;
  font-size:9px;color:#dfe4ea
}
.pricing-demo-note{text-align:center;color:#737d8b;font-size:11px;margin:0}

.checkout-stage-heading{max-width:720px}
.checkout-stage-heading h2{font-size:30px;margin:8px 0 7px}
.checkout-stage-heading p{margin:0;color:#8f98a7;font-size:13px}

.checkout-two-column,.payment-checkout-layout{
  display:grid;
  grid-template-columns:minmax(0,1.4fr) minmax(300px,.6fr);
  gap:18px;
  align-items:start
}
.payment-checkout-layout{grid-template-columns:minmax(340px,.9fr) minmax(360px,1.1fr)}

.checkout-panel,.checkout-summary,.payment-order-summary{
  border:1px solid #292f39;background:#13171d;border-radius:18px;padding:22px
}
.checkout-form{display:grid;gap:13px}
.checkout-form label{display:grid;gap:6px;color:#a4acb8;font-size:11px}
.checkout-form input,.checkout-form select{
  width:100%;box-sizing:border-box;
  border:1px solid #343b46;background:#0e1217;color:#eef1f5;
  border-radius:10px;padding:11px 12px;outline:none
}
.checkout-form input:focus,.checkout-form select:focus{border-color:#6a7585}
.checkout-main-action{width:100%;min-height:44px;margin-top:4px}

.checkout-summary{position:sticky;top:20px}
.checkout-summary h3{font-size:22px;margin:7px 0 3px}
.checkout-summary>p{margin:0;color:#8c95a3}
.checkout-summary-price{display:flex;align-items:baseline;gap:6px;margin:20px 0}
.checkout-summary-price strong{font-size:31px}
.checkout-summary-price span{color:#7e8795;font-size:12px}
.checkout-summary-row{
  display:flex;justify-content:space-between;gap:18px;
  border-top:1px solid #292f38;padding:12px 0;font-size:12px
}
.checkout-summary>small{display:block;color:#727c8a;margin-top:8px;line-height:1.5}

.payment-visual-column{display:grid;gap:16px}
.payment-order-summary{display:grid;gap:10px}
.payment-order-summary>div{
  display:flex;justify-content:space-between;gap:18px;color:#9ca5b2;font-size:12px
}
.payment-order-summary>div strong{color:#ecf0f5}
.payment-order-summary .payment-total{
  border-top:1px solid #2b313a;padding-top:13px;margin-top:3px
}
.payment-order-summary .payment-total strong{font-size:17px}

.demo-bank-card{width:100%;max-width:430px;aspect-ratio:1.586/1;perspective:1200px;margin:8px auto}
.demo-bank-card-inner{
  position:relative;width:100%;height:100%;
  transition:transform .65s cubic-bezier(.2,.8,.2,1);
  transform-style:preserve-3d
}
.demo-bank-card.flipped .demo-bank-card-inner{transform:rotateY(180deg)}
.demo-bank-card-face{
  position:absolute;inset:0;border-radius:22px;padding:26px;
  backface-visibility:hidden;overflow:hidden;
  box-shadow:0 24px 60px rgba(0,0,0,.34);
  border:1px solid rgba(255,255,255,.12)
}
.demo-bank-card-front{
  background:
    radial-gradient(circle at 80% 15%,rgba(255,255,255,.14),transparent 30%),
    linear-gradient(135deg,#242b35,#0f1319 70%)
}
.demo-bank-card-back{
  transform:rotateY(180deg);
  background:linear-gradient(135deg,#171c23,#080b0f)
}
.bank-card-brand{font-size:18px;font-weight:900;letter-spacing:.13em}
.bank-card-chip{
  width:44px;height:33px;border-radius:8px;margin-top:18px;
  background:linear-gradient(135deg,#c7cbd0,#7f8791)
}
.bank-card-number{
  margin-top:16px;font-size:clamp(17px,2vw,21px);letter-spacing:.09em;white-space:nowrap;
  font-variant-numeric:tabular-nums
}
.bank-card-bottom{
  position:absolute;left:26px;right:26px;bottom:23px;
  display:flex;justify-content:space-between;align-items:end;gap:20px
}
.bank-card-bottom div{display:grid;gap:4px;min-width:0}
.bank-card-bottom>div:first-child{max-width:72%}
.bank-card-bottom strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bank-card-bottom span,.bank-card-cvc span{font-size:8px;color:#9ba4b2;letter-spacing:.12em}
.bank-card-bottom strong{font-size:11px;letter-spacing:.05em}
.bank-card-strip{height:52px;background:#050607;margin:24px -26px 0}
.bank-card-cvc{
  margin:22px 0 0 auto;width:72%;background:#e9ebee;color:#111;
  border-radius:5px;padding:10px 12px;display:flex;justify-content:space-between;align-items:center
}
.bank-card-cvc span{color:#59616b}
.bank-card-back-brand{position:absolute;right:25px;bottom:22px;font-weight:900;letter-spacing:.12em}

.payment-security-note{
  border:1px solid #29313b;background:#10151b;border-radius:11px;
  padding:11px 12px;display:grid;gap:3px
}
.payment-security-note strong{font-size:11px}
.payment-security-note span{font-size:10px;color:#7d8795}
.checkout-test-note{
  border:1px dashed #39424f;border-radius:10px;padding:10px 11px;
  color:#818b99;font-size:10px;line-height:1.45
}

.checkout-success{
  max-width:620px;margin:9vh auto 0;text-align:center;
  border:1px solid #2d343e;background:#13171d;border-radius:22px;
  padding:42px
}
.checkout-success-mark{
  width:64px;height:64px;border-radius:50%;margin:0 auto 18px;
  display:grid;place-items:center;background:#eef2f6;color:#11161c;
  font-size:28px;font-weight:900
}
.checkout-success h2{font-size:30px;margin:8px 0}
.checkout-success>p{color:#929ba8;margin:0 auto 24px}
.checkout-success-summary{
  border:1px solid #292f38;border-radius:14px;margin:0 0 20px;text-align:left
}
.checkout-success-summary>div{
  display:flex;justify-content:space-between;gap:18px;padding:12px 14px;
  border-top:1px solid #292f38;font-size:12px
}
.checkout-success-summary>div:first-child{border-top:0}
.checkout-success-summary span{color:#828b98}

@media(max-width:1100px){
  .pricing-cards{grid-template-columns:1fr}
  .pricing-card{min-height:0}
  .pricing-card-top{min-height:0}
  .pricing-cta{margin-top:18px}
  .checkout-two-column,.payment-checkout-layout{grid-template-columns:1fr}
  .checkout-summary{position:static}
}

@media(max-width:700px){
  .checkout-progress-step strong{display:none}
  .checkout-progress-line{margin:0 7px}
  .pricing-heading h2,.checkout-stage-heading h2{font-size:25px}
  .pricing-card{padding:19px}
  .checkout-panel,.checkout-summary,.payment-order-summary{padding:17px}
  .demo-bank-card-face{padding:20px}
  .bank-card-number{font-size:17px}
  .bank-card-bottom{left:20px;right:20px}
  .checkout-success{padding:28px 18px}
}

/* ATLAS checkout single-screen desktop: Plan -> Billing -> Payment */
@media(min-width:1101px){
  .billing-view{
    overflow:hidden;
    padding-top:14px;
    padding-bottom:14px;
  }

  .billing-page.checkout-page{
    max-width:1180px;
    height:100%;
    min-height:0;
    grid-template-rows:auto minmax(0,1fr);
    gap:6px;
  }

  .billing-page.checkout-page > .back-link{
    padding:2px 0 4px;
  }

  .checkout-screen{
    height:100%;
    min-height:0;
    overflow:hidden;
    display:grid;
    grid-template-rows:auto auto minmax(0,1fr);
    gap:9px;
    padding:0;
  }

  .checkout-screen.pricing-screen{
    grid-template-rows:auto auto minmax(0,1fr) auto;
  }

  .checkout-progress{
    margin:0 auto;
    max-width:600px;
  }

  .checkout-stage-heading{
    max-width:720px;
  }

  .checkout-stage-heading .back-link{
    padding:0;
  }

  .checkout-stage-heading h2{
    font-size:27px;
    line-height:1.12;
    margin:4px 0 5px;
  }

  .checkout-stage-heading p{
    font-size:12px;
    line-height:1.35;
  }

  .checkout-two-column,
  .payment-checkout-layout{
    min-height:0;
    height:100%;
    align-items:start;
    gap:14px;
  }

  .checkout-panel,
  .checkout-summary,
  .payment-order-summary{
    min-height:0;
    padding:16px 18px;
    border-radius:16px;
  }

  .checkout-form{
    gap:8px;
  }

  .checkout-form label{
    gap:4px;
  }

  .checkout-form input,
  .checkout-form select{
    padding:8px 10px;
  }

  .checkout-main-action{
    min-height:38px;
    margin-top:2px;
  }

  .checkout-summary{
    position:static;
    align-self:start;
  }

  .checkout-summary h3{
    font-size:20px;
    margin:4px 0 2px;
  }

  .checkout-summary-price{
    margin:13px 0;
  }

  .checkout-summary-price strong{
    font-size:28px;
  }

  .checkout-summary-row{
    padding:9px 0;
  }

  .checkout-summary>small{
    margin-top:5px;
    line-height:1.35;
  }

  .payment-visual-column{
    gap:10px;
    min-height:0;
  }

  .payment-order-summary{
    gap:6px;
  }

  .payment-order-summary .payment-total{
    padding-top:9px;
  }

  .demo-bank-card{
    max-width:370px;
    margin:2px auto;
  }

  .pricing-heading{
    margin:0 auto;
  }

  .pricing-heading h2{
    font-size:28px;
    margin:4px 0;
  }

  .pricing-heading p{
    font-size:12px;
    line-height:1.35;
  }

  .pricing-cards{
    min-height:0;
    align-items:stretch;
    gap:14px;
  }

  .pricing-card{
    min-height:0;
    height:100%;
    padding:16px 19px;
    border-radius:18px;
  }

  .pricing-card-top{
    min-height:0;
  }

  .pricing-card-title h3{
    font-size:18px;
  }

  .pricing-audience{
    min-height:0;
    margin:5px 0 8px!important;
    font-size:12px;
  }

  .pricing-price{
    margin:1px 0;
  }

  .pricing-price strong{
    font-size:29px;
  }

  .pricing-price.test-price strong{
    font-size:24px;
  }

  .pricing-credit-line{
    margin-top:2px;
    font-size:11px;
  }

  .pricing-cta{
    margin-top:9px;
    min-height:36px;
  }

  .pricing-divider{
    margin:10px 0;
  }

  .pricing-includes{
    gap:6px;
  }

  .pricing-includes>strong{
    font-size:12px;
  }

  .pricing-includes ul{
    gap:6px;
  }

  .pricing-includes li{
    font-size:11px;
    line-height:1.25;
    padding-left:19px;
  }

  .pricing-includes li:before{
    width:14px;
    height:14px;
    font-size:8px;
  }

  .pricing-demo-note{
    font-size:10px;
  }
}

/* Automatic tax display */
.tax-auto-box{
  min-height:67px;
  box-sizing:border-box;
  border:1px solid #2d3540;
  background:#10151b;
  border-radius:10px;
  padding:10px 12px;
  display:grid;
  align-content:center;
  gap:3px;
}
.tax-auto-box span{
  color:#8d97a5;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.07em;
}
.tax-auto-box strong{
  color:#e8ecf1;
  font-size:12px;
}
.tax-auto-box small{
  color:#747f8e;
  font-size:10px;
  line-height:1.35;
}
#checkout-company-fields{
  display:grid;
  gap:13px;
}
#checkout-company-fields.hidden{
  display:none;
}

/* Keep pricing page clean even while staging uses mock billing */
.checkout-page:has(.pricing-screen) .billing-demo-banner,
.checkout-page:has(.pricing-screen) .pricing-demo-note{
  display:none;
}


/* ATLAS ACTIVE BILLING DASHBOARD */
.billing-dashboard{
  max-width:1180px;
  margin:0 auto;
  display:grid;
  gap:11px;
}

.billing-dashboard-top{
  display:grid;
  grid-template-columns:1.05fr .9fr .95fr;
  gap:11px;
}

.billing-dashboard-middle{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:11px;
}

.billing-dashboard-bottom{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:11px;
}

.billing-dashboard .dashboard-card{
  padding:16px 17px;
  border-radius:15px;
}

.dashboard-card-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}

.dashboard-card h2{
  font-size:21px;
  margin:7px 0 2px;
}

.dashboard-card h3{
  font-size:15px;
  margin:6px 0 3px;
}

.dashboard-card p{
  margin:3px 0;
  font-size:11px;
  line-height:1.4;
}

.dashboard-price{
  display:flex;
  align-items:baseline;
  gap:6px;
  margin-top:13px;
}

.dashboard-price strong{
  font-size:25px;
}

.dashboard-price span{
  color:#858e9c;
  font-size:10px;
}

.dashboard-foot{
  display:flex;
  justify-content:space-between;
  gap:12px;
  border-top:1px solid #292f38;
  margin-top:12px;
  padding-top:9px;
  color:#818a98;
  font-size:10px;
}

.dashboard-foot strong{
  color:#d7dce3;
}

.dashboard-inline-action{
  width:100%;
  margin-top:10px;
}

.dashboard-credit-total{
  font-size:30px;
  font-weight:800;
  margin:8px 0 9px;
}

.dashboard-credit-split{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:7px;
}

.dashboard-credit-split>div{
  border:1px solid #292f38;
  background:#101419;
  border-radius:9px;
  padding:8px 9px;
}

.dashboard-credit-split span,
.dashboard-credit-split strong,
.dashboard-credit-split small{
  display:block;
}

.dashboard-credit-split span{
  color:#818b99;
  font-size:9px;
}

.dashboard-credit-split strong{
  font-size:16px;
  margin-top:2px;
}

.dashboard-credit-split small{
  color:#687381;
  font-size:8px;
  margin-top:2px;
}

.dashboard-payment-method{
  display:grid;
  grid-template-columns:38px 1fr;
  gap:10px;
  align-items:center;
  margin:14px 0 12px;
}

.dashboard-payment-method strong{
  display:block;
  text-transform:capitalize;
  font-size:12px;
}

.dashboard-payment-method small{
  color:#7c8593;
  font-size:9px;
}

.dashboard-full-button{
  width:100%;
}

.dashboard-address{
  color:#8892a0;
  font-size:10px;
  line-height:1.45;
  margin-top:7px;
}

.dashboard-profile #billing-profile-editor:not(.hidden){
  margin-top:12px;
}

.dashboard-credit-packages{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:7px;
  margin-top:9px;
}

.dashboard-credit-packages button{
  border:1px solid #303744;
  background:#101419;
  border-radius:9px;
  padding:9px 6px;
  color:#e7ebef;
  cursor:pointer;
}

.dashboard-credit-packages button:hover{
  background:#1b2129;
}

.dashboard-credit-packages strong,
.dashboard-credit-packages span{
  display:block;
}

.dashboard-credit-packages strong{
  font-size:13px;
}

.dashboard-credit-packages span{
  margin-top:3px;
  color:#7f8997;
  font-size:8px;
}

.dashboard-note{
  display:block;
  margin-top:8px;
  color:#707a88;
  font-size:8px;
}

.dashboard-subscription{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
}

.dashboard-subscription .danger-button,
.dashboard-subscription .primary{
  flex-shrink:0;
}

.dashboard-records{
  display:grid;
  gap:6px;
}

.dashboard-details{
  border-top:1px solid #292f38;
}

.dashboard-details summary{
  cursor:pointer;
  list-style:none;
  display:flex;
  justify-content:space-between;
  gap:15px;
  padding:9px 0;
  font-size:10px;
}

.dashboard-details summary::-webkit-details-marker{
  display:none;
}

.dashboard-details summary span{
  color:#c8ced7;
  font-weight:700;
}

.dashboard-details summary strong{
  color:#747e8c;
  font-size:9px;
}

.dashboard-history{
  max-height:190px;
  overflow:auto;
}

.dashboard-history>div{
  padding:7px 0;
}

.dashboard-history strong{
  font-size:10px;
}

.dashboard-history small{
  font-size:8px;
}

@media(min-width:1101px){
  .billing-view:has(.billing-dashboard){
    overflow:hidden;
    padding-top:15px;
    padding-bottom:15px;
  }

  .billing-dashboard{
    height:100%;
    align-content:start;
  }
}

@media(max-width:1100px){
  .billing-dashboard-top,
  .billing-dashboard-middle,
  .billing-dashboard-bottom{
    grid-template-columns:1fr;
  }

  .dashboard-credit-packages{
    grid-template-columns:repeat(2,1fr);
  }
}

@media(max-width:700px){
  .dashboard-credit-packages{
    grid-template-columns:1fr 1fr;
  }

  .dashboard-subscription{
    align-items:flex-start;
    flex-direction:column;
  }
}

/* Allow scrolling only while Billing Details editor is open */
@media(min-width:1101px){
  .billing-view:has(.billing-dashboard #billing-profile-editor:not(.hidden)){
    overflow:auto;
  }
}

/* Grace-period dashboard must still fit on one desktop screen */
@media(min-width:1101px){

  .billing-view:has(.billing-dashboard .billing-alert.warning){
    padding-top:8px;
    padding-bottom:8px;
  }

  .billing-dashboard:has(.billing-alert.warning){
    gap:7px;
  }

  .billing-dashboard:has(.billing-alert.warning) > .back-link{
    padding-bottom:2px;
  }

  .billing-dashboard:has(.billing-alert.warning) .billing-alert.warning{
    padding:9px 14px;
    border-radius:12px;
  }

  .billing-dashboard:has(.billing-alert.warning) .billing-alert.warning p{
    margin-top:2px;
    font-size:10px;
  }

  .billing-dashboard:has(.billing-alert.warning) .billing-dashboard-top,
  .billing-dashboard:has(.billing-alert.warning) .billing-dashboard-middle,
  .billing-dashboard:has(.billing-alert.warning) .billing-dashboard-bottom{
    gap:7px;
  }

  .billing-dashboard:has(.billing-alert.warning) .dashboard-card{
    padding:12px 14px;
  }

  .billing-dashboard:has(.billing-alert.warning) .dashboard-card h2{
    font-size:19px;
    margin:5px 0 1px;
  }

  .billing-dashboard:has(.billing-alert.warning) .dashboard-card h3{
    margin:4px 0 2px;
  }

  .billing-dashboard:has(.billing-alert.warning) .dashboard-price{
    margin-top:8px;
  }

  .billing-dashboard:has(.billing-alert.warning) .dashboard-price strong{
    font-size:22px;
  }

  .billing-dashboard:has(.billing-alert.warning) .dashboard-foot{
    margin-top:8px;
    padding-top:6px;
  }

  .billing-dashboard:has(.billing-alert.warning) .dashboard-credit-total{
    font-size:27px;
    margin:5px 0 6px;
  }

  .billing-dashboard:has(.billing-alert.warning) .dashboard-payment-method{
    margin:8px 0 7px;
  }

  .billing-dashboard:has(.billing-alert.warning) .dashboard-address{
    margin-top:4px;
    line-height:1.3;
  }

  .billing-dashboard:has(.billing-alert.warning) .dashboard-subscription{
    min-height:0;
  }

  .billing-dashboard:has(.billing-alert.warning) .dashboard-details summary{
    padding:6px 0;
  }
}


/* ATLAS Pro Commerce -> Standard warning */
.commerce-downgrade-overlay{
  position:fixed;
  inset:0;
  z-index:10000;
  background:rgba(4,6,9,.78);
  backdrop-filter:blur(8px);
  display:grid;
  place-items:center;
  padding:24px;
}

.commerce-downgrade-modal{
  width:min(560px,100%);
  border:1px solid #333b47;
  background:#13171d;
  border-radius:20px;
  padding:28px;
  box-shadow:0 30px 90px rgba(0,0,0,.55);
}

.commerce-downgrade-icon{
  width:44px;
  height:44px;
  border-radius:50%;
  display:grid;
  place-items:center;
  margin-bottom:16px;
  border:1px solid #66552d;
  background:#241f12;
  color:#e4c66c;
  font-size:22px;
  font-weight:900;
}

.commerce-downgrade-modal h2{
  margin:7px 0 10px;
  font-size:25px;
}

.commerce-downgrade-modal>p{
  color:#9ea7b4;
  font-size:12px;
  line-height:1.55;
}

.commerce-downgrade-store-warning{
  display:grid;
  gap:3px;
  border:1px solid #66552d;
  background:#211c10;
  border-radius:11px;
  padding:11px 13px;
  margin:14px 0;
}

.commerce-downgrade-store-warning strong{
  color:#eee2bc;
  font-size:12px;
}

.commerce-downgrade-store-warning span{
  color:#a99f82;
  font-size:10px;
}

.commerce-downgrade-losses{
  border:1px solid #2d3540;
  background:#101419;
  border-radius:12px;
  padding:13px 15px;
  margin:15px 0;
}

.commerce-downgrade-losses>strong{
  font-size:11px;
}

.commerce-downgrade-losses ul{
  margin:10px 0 0;
  padding-left:18px;
  color:#939daa;
  font-size:11px;
  line-height:1.7;
}

.commerce-downgrade-recommendation{
  margin-top:14px!important;
}

.commerce-downgrade-recommendation strong{
  color:#e7ebf0;
}

.commerce-downgrade-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:9px;
  margin-top:22px;
}

.commerce-downgrade-actions button{
  min-height:42px;
}

.commerce-downgrade-actions .downgrade-confirm{
  color:#aab2be;
}

@media(max-width:620px){
  .commerce-downgrade-modal{
    padding:21px;
  }

  .commerce-downgrade-actions{
    grid-template-columns:1fr;
  }
}


/* Explain why Pro Commerce cannot downgrade directly */
.commerce-plan-protection{
  display:grid;
  gap:3px;
  margin-top:10px;
  padding:9px 10px;
  border:1px solid #353d48;
  background:#101419;
  border-radius:9px;
}
.commerce-plan-protection strong{
  color:#dce2e9;
  font-size:10px;
}
.commerce-plan-protection span{
  color:#7f8997;
  font-size:9px;
  line-height:1.4;
}


/* ATLAS CHANGE PLAN */
.dashboard-subscription-actions{
  display:flex;
  align-items:center;
  gap:8px;
  flex-shrink:0;
}

.plan-change-overlay{
  position:fixed;
  inset:0;
  z-index:10020;
  background:rgba(4,6,9,.80);
  backdrop-filter:blur(8px);
  display:grid;
  place-items:center;
  padding:24px;
}

.plan-change-modal{
  width:min(980px,100%);
  border:1px solid #333b47;
  background:#11151a;
  border-radius:20px;
  padding:24px;
  box-shadow:0 32px 100px rgba(0,0,0,.58);
}

.plan-change-heading{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:20px;
  margin-bottom:18px;
}

.plan-change-heading h2{
  margin:6px 0 5px;
  font-size:25px;
}

.plan-change-heading p{
  margin:0;
  color:#8d97a5;
  font-size:11px;
}

.plan-change-close{
  width:34px;
  height:34px;
  border:1px solid #303744;
  background:#171c23;
  color:#d9dfe6;
  border-radius:9px;
  cursor:pointer;
  font-size:21px;
  line-height:1;
}

.plan-change-cards{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:11px;
}

.plan-change-card{
  min-height:280px;
  border:1px solid #2d343e;
  background:#15191f;
  border-radius:15px;
  padding:17px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:14px;
}

.plan-change-card.current{
  border-color:#536071;
}

.plan-change-card.test{
  border-style:dashed;
  opacity:.82;
}

.plan-change-card-title{
  display:flex;
  align-items:center;
  gap:7px;
  flex-wrap:wrap;
}

.plan-change-card-title h3{
  margin:0;
  font-size:17px;
}

.plan-change-card>div>p{
  color:#858f9d;
  font-size:10px;
  margin:6px 0 12px;
}

.plan-change-price{
  display:flex;
  align-items:baseline;
  gap:5px;
}

.plan-change-price strong{
  font-size:24px;
}

.plan-change-price span{
  color:#7c8694;
  font-size:9px;
}

.plan-change-card small{
  display:block;
  margin-top:5px;
  color:#788290;
  font-size:9px;
}

.plan-change-note{
  color:#8c96a4;
  font-size:10px;
  line-height:1.45;
  min-height:57px;
  margin:0;
}

.plan-change-card>button{
  width:100%;
  min-height:38px;
}

@media(max-width:850px){
  .plan-change-cards{
    grid-template-columns:1fr;
  }

  .plan-change-modal{
    max-height:90vh;
    overflow:auto;
  }

  .dashboard-subscription-actions{
    width:100%;
    flex-direction:column;
  }

  .dashboard-subscription-actions button{
    width:100%;
  }
}

/* Active billing dashboard: keep the full page inside one desktop screen */
@media(min-width:1101px){

  .billing-view:has(.billing-dashboard){
    padding-top:10px;
    padding-bottom:10px;
  }

  .billing-dashboard{
    gap:8px;
  }

  .billing-dashboard > .back-link{
    padding-bottom:3px;
  }

  .billing-dashboard-top,
  .billing-dashboard-middle,
  .billing-dashboard-bottom{
    gap:8px;
  }

  .billing-dashboard .dashboard-card{
    padding:13px 15px;
  }

  .billing-dashboard .dashboard-card h2{
    font-size:19px;
    margin:5px 0 1px;
  }

  .billing-dashboard .dashboard-card h3{
    margin:4px 0 2px;
  }

  .billing-dashboard .dashboard-price{
    margin-top:8px;
  }

  .billing-dashboard .dashboard-price strong{
    font-size:23px;
  }

  .billing-dashboard .dashboard-foot{
    margin-top:8px;
    padding-top:6px;
  }

  .billing-dashboard .dashboard-credit-total{
    font-size:27px;
    margin:5px 0 6px;
  }

  .billing-dashboard .dashboard-payment-method{
    margin:8px 0 7px;
  }

  .billing-dashboard .dashboard-address{
    margin-top:4px;
    line-height:1.3;
  }

  .billing-dashboard .dashboard-credit-packages{
    margin-top:6px;
  }

  .billing-dashboard .dashboard-note{
    margin-top:5px;
  }

  .billing-dashboard .dashboard-subscription{
    padding-top:11px;
    padding-bottom:11px;
  }

  .billing-dashboard .dashboard-subscription-actions{
    gap:7px;
  }

  .billing-dashboard .dashboard-subscription-actions button{
    padding-top:8px;
    padding-bottom:8px;
  }

  .billing-dashboard .dashboard-details summary{
    padding:6px 0;
  }
}

/* Suspended billing dashboard: fit cleanly on one desktop screen */
@media(min-width:1101px){

  .billing-view:has(.billing-dashboard .billing-alert:not(.warning)){
    padding-top:8px;
    padding-bottom:8px;
    overflow:hidden;
  }

  .billing-dashboard:has(.billing-alert:not(.warning)){
    gap:7px;
  }

  .billing-dashboard:has(.billing-alert:not(.warning)) > .back-link{
    padding-bottom:2px;
  }

  .billing-dashboard:has(.billing-alert:not(.warning)) .billing-alert{
    padding:10px 14px;
    border-radius:12px;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    gap:16px;
  }

  .billing-dashboard:has(.billing-alert:not(.warning)) .billing-alert p{
    margin-top:2px;
    font-size:10px;
  }

  .billing-dashboard:has(.billing-alert:not(.warning)) .billing-alert>div:last-child{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:7px;
    flex-wrap:nowrap;
  }

  .billing-dashboard:has(.billing-alert:not(.warning)) .billing-alert button{
    white-space:nowrap;
    padding:8px 11px;
  }

  .billing-dashboard:has(.billing-alert:not(.warning)) .billing-dashboard-top,
  .billing-dashboard:has(.billing-alert:not(.warning)) .billing-dashboard-middle,
  .billing-dashboard:has(.billing-alert:not(.warning)) .billing-dashboard-bottom{
    gap:7px;
  }

  .billing-dashboard:has(.billing-alert:not(.warning)) .dashboard-card{
    padding:11px 14px;
  }

  .billing-dashboard:has(.billing-alert:not(.warning)) .dashboard-card h2{
    font-size:18px;
    margin:4px 0 1px;
  }

  .billing-dashboard:has(.billing-alert:not(.warning)) .dashboard-card h3{
    margin:3px 0 2px;
  }

  .billing-dashboard:has(.billing-alert:not(.warning)) .dashboard-price{
    margin-top:6px;
  }

  .billing-dashboard:has(.billing-alert:not(.warning)) .dashboard-price strong{
    font-size:21px;
  }

  .billing-dashboard:has(.billing-alert:not(.warning)) .dashboard-foot{
    margin-top:6px;
    padding-top:5px;
  }

  .billing-dashboard:has(.billing-alert:not(.warning)) .dashboard-credit-total{
    font-size:26px;
    margin:4px 0 5px;
  }

  .billing-dashboard:has(.billing-alert:not(.warning)) .dashboard-payment-method{
    margin:6px 0;
  }

  .billing-dashboard:has(.billing-alert:not(.warning)) .dashboard-address{
    margin-top:3px;
    line-height:1.25;
  }

  .billing-dashboard:has(.billing-alert:not(.warning)) .billing-dashboard-bottom .dashboard-records{
    grid-column:1 / -1;
  }

  .billing-dashboard:has(.billing-alert:not(.warning)) .dashboard-details summary{
    padding:5px 0;
  }
}

/* Reactivation checkout: fit completely on one desktop screen */
@media(min-width:1101px){

  .billing-view:has(#reactivate-payment-form){
    overflow:hidden;
    padding-top:10px;
    padding-bottom:10px;
  }

  .billing-page.checkout-page:has(#reactivate-payment-form){
    height:100%;
  }

  .billing-page:has(#reactivate-payment-form) .checkout-screen{
    height:calc(100vh - 125px);
    min-height:0;
    display:grid;
    grid-template-rows:auto minmax(0,1fr);
    gap:12px;
    padding:0;
  }

  .billing-page:has(#reactivate-payment-form) .checkout-stage-heading{
    max-width:none;
  }

  .billing-page:has(#reactivate-payment-form) .checkout-stage-heading .back-link{
    margin-bottom:2px;
  }

  .billing-page:has(#reactivate-payment-form) .checkout-stage-heading h2{
    font-size:27px;
    margin:5px 0 4px;
  }

  .billing-page:has(#reactivate-payment-form) .checkout-stage-heading p{
    font-size:11px;
    line-height:1.35;
  }

  .billing-page:has(#reactivate-payment-form) .payment-checkout-layout{
    min-height:0;
    grid-template-columns:minmax(330px,.9fr) minmax(380px,1.1fr);
    gap:14px;
    align-items:stretch;
  }

  .billing-page:has(#reactivate-payment-form) .payment-visual-column{
    min-height:0;
    gap:10px;
  }

  .billing-page:has(#reactivate-payment-form) .payment-order-summary{
    padding:15px 17px;
  }

  .billing-page:has(#reactivate-payment-form) .payment-order-summary{
    gap:7px;
  }

  .billing-page:has(#reactivate-payment-form) .payment-order-summary>div{
    font-size:10px;
  }

  .billing-page:has(#reactivate-payment-form) .payment-order-summary .payment-total{
    padding-top:9px;
  }

  .billing-page:has(#reactivate-payment-form) .demo-bank-card{
    width:min(100%,380px);
    margin:0 auto;
  }

  .billing-page:has(#reactivate-payment-form) .demo-bank-card-face{
    padding:21px;
    border-radius:18px;
  }

  .billing-page:has(#reactivate-payment-form) .bank-card-chip{
    margin-top:23px;
  }

  .billing-page:has(#reactivate-payment-form) .bank-card-number{
    margin-top:22px;
    font-size:18px;
  }

  .billing-page:has(#reactivate-payment-form) .bank-card-bottom{
    left:21px;
    right:21px;
    bottom:18px;
  }

  .billing-page:has(#reactivate-payment-form) .checkout-panel{
    padding:17px 18px;
    align-self:start;
  }

  .billing-page:has(#reactivate-payment-form) .checkout-form{
    gap:9px;
  }

  .billing-page:has(#reactivate-payment-form) .checkout-form input{
    padding:9px 11px;
  }

  .billing-page:has(#reactivate-payment-form) .payment-security-note{
    padding:8px 10px;
  }

  .billing-page:has(#reactivate-payment-form) .checkout-main-action{
    min-height:40px;
  }
}

/* Final reactivation checkout fit */
@media(min-width:1101px){

  /* Reactivation already has "Back to Credits & Billing" */
  .billing-page.checkout-page:has(#reactivate-payment-form) > .back-link{
    display:none;
  }

  .billing-page:has(#reactivate-payment-form) .checkout-screen{
    height:calc(100vh - 88px);
    gap:9px;
  }

  .billing-page:has(#reactivate-payment-form) .checkout-stage-heading h2{
    font-size:25px;
  }

  .billing-page:has(#reactivate-payment-form) .demo-bank-card{
    width:min(100%,335px);
  }

  .billing-page:has(#reactivate-payment-form) .demo-bank-card-face{
    padding:18px;
    border-radius:17px;
  }

  .billing-page:has(#reactivate-payment-form) .bank-card-chip{
    width:39px;
    height:29px;
    margin-top:18px;
  }

  .billing-page:has(#reactivate-payment-form) .bank-card-number{
    margin-top:18px;
    font-size:17px;
  }

  .billing-page:has(#reactivate-payment-form) .bank-card-bottom{
    left:18px;
    right:18px;
    bottom:15px;
  }
}

/* Active Standard dashboard: keep everything inside one desktop screen */
@media(min-width:1101px){

  .billing-view:has(.billing-dashboard .dashboard-inline-action){
    padding-top:7px;
    padding-bottom:7px;
    overflow:hidden;
  }

  .billing-dashboard:has(.dashboard-inline-action){
    gap:6px;
  }

  .billing-dashboard:has(.dashboard-inline-action) > .back-link{
    padding-bottom:1px;
  }

  .billing-dashboard:has(.dashboard-inline-action) .billing-dashboard-top,
  .billing-dashboard:has(.dashboard-inline-action) .billing-dashboard-middle,
  .billing-dashboard:has(.dashboard-inline-action) .billing-dashboard-bottom{
    gap:6px;
  }

  .billing-dashboard:has(.dashboard-inline-action) .dashboard-card{
    padding:10px 14px;
  }

  .billing-dashboard:has(.dashboard-inline-action) .dashboard-card h2{
    font-size:18px;
    margin:3px 0 1px;
  }

  .billing-dashboard:has(.dashboard-inline-action) .dashboard-price{
    margin-top:5px;
  }

  .billing-dashboard:has(.dashboard-inline-action) .dashboard-price strong{
    font-size:21px;
  }

  .billing-dashboard:has(.dashboard-inline-action) .dashboard-foot{
    margin-top:5px;
    padding-top:4px;
  }

  .billing-dashboard:has(.dashboard-inline-action) .dashboard-inline-action{
    min-height:34px;
    margin-top:6px;
    padding:6px 10px;
  }

  .billing-dashboard:has(.dashboard-inline-action) .dashboard-credit-total{
    font-size:25px;
    margin:3px 0 4px;
  }

  .billing-dashboard:has(.dashboard-inline-action) .dashboard-payment-method{
    margin:5px 0;
  }

  .billing-dashboard:has(.dashboard-inline-action) .dashboard-address{
    margin-top:2px;
    line-height:1.2;
  }

  .billing-dashboard:has(.dashboard-inline-action) .dashboard-credit-packages{
    margin-top:4px;
  }

  .billing-dashboard:has(.dashboard-inline-action) .dashboard-note{
    margin-top:3px;
  }

  .billing-dashboard:has(.dashboard-inline-action) .dashboard-subscription{
    padding-top:8px;
    padding-bottom:8px;
  }

  .billing-dashboard:has(.dashboard-inline-action) .dashboard-subscription h3{
    margin:2px 0 1px;
  }

  .billing-dashboard:has(.dashboard-inline-action) .dashboard-subscription p{
    line-height:1.25;
  }

  .billing-dashboard:has(.dashboard-inline-action) .dashboard-subscription-actions button{
    padding:7px 10px;
  }

  .billing-dashboard:has(.dashboard-inline-action) .dashboard-details summary{
    padding:4px 0;
  }
}

/* ATLAS checkout desktop final viewport fit */
@media(min-width:1101px){
  .billing-view{
    padding-top:10px;
    padding-bottom:10px;
  }

  .billing-page.checkout-page{
    gap:4px;
  }

  .billing-page.checkout-page > .back-link{
    padding:0 0 2px;
  }

  .checkout-screen{
    gap:6px;
  }

  .checkout-progress{
    margin:0 auto;
  }

  .checkout-stage-heading h2{
    font-size:25px;
    margin:2px 0 3px;
  }

  .checkout-stage-heading p{
    font-size:11px;
    line-height:1.25;
  }

  .checkout-stage-heading .back-link{
    padding:0;
    line-height:1.2;
  }

  .checkout-two-column,
  .payment-checkout-layout{
    gap:12px;
  }

  .checkout-panel,
  .checkout-summary,
  .payment-order-summary{
    padding:12px 16px;
  }

  .checkout-form{
    gap:6px;
  }

  .checkout-form label{
    gap:3px;
  }

  .checkout-form input,
  .checkout-form select{
    padding:6px 9px;
    min-height:34px;
  }

  .checkout-main-action{
    min-height:36px;
    margin-top:0;
  }

  .checkout-summary-price{
    margin:10px 0;
  }

  .checkout-summary-row{
    padding:7px 0;
  }

  .checkout-summary>small{
    margin-top:3px;
    line-height:1.25;
  }
}

/* Company billing checkout: keep all fields + CTA inside desktop viewport */
@media(min-width:1101px){
  .billing-page.checkout-page:has(#checkout-company-fields:not(.hidden)) .checkout-screen{
    gap:4px;
  }

  .billing-page.checkout-page:has(#checkout-company-fields:not(.hidden)) .checkout-stage-heading h2{
    font-size:23px;
    margin:1px 0 2px;
  }

  .billing-page.checkout-page:has(#checkout-company-fields:not(.hidden)) .checkout-stage-heading p{
    line-height:1.15;
  }

  .billing-page.checkout-page:has(#checkout-company-fields:not(.hidden)) .checkout-two-column{
    gap:10px;
  }

  .billing-page.checkout-page:has(#checkout-company-fields:not(.hidden)) .checkout-panel{
    padding:9px 14px;
  }

  .billing-page.checkout-page:has(#checkout-company-fields:not(.hidden)) .checkout-form{
    gap:4px;
  }

  .billing-page.checkout-page:has(#checkout-company-fields:not(.hidden)) .checkout-form label{
    gap:2px;
    line-height:1.1;
  }

  .billing-page.checkout-page:has(#checkout-company-fields:not(.hidden)) .checkout-form input,
  .billing-page.checkout-page:has(#checkout-company-fields:not(.hidden)) .checkout-form select{
    min-height:30px;
    padding:4px 8px;
  }

  .billing-page.checkout-page:has(#checkout-company-fields:not(.hidden)) .tax-auto-box{
    min-height:48px;
    padding-top:6px;
    padding-bottom:6px;
  }

  .billing-page.checkout-page:has(#checkout-company-fields:not(.hidden)) .tax-auto-box small{
    line-height:1.15;
  }

  .billing-page.checkout-page:has(#checkout-company-fields:not(.hidden)) .checkout-main-action{
    min-height:34px;
  }
}
