/* The complete bot assortment shares the established purple catalog scale. */
.ai-store .plan-grid.variant-product-grid{display:block;min-width:0}
.subscription-product{background:white;border:1px solid #e1d8eb;border-radius:16px;overflow:hidden}
.subscription-product-header{display:flex;gap:24px;align-items:center;padding:28px;border-bottom:1px solid #e7e2ed}
.subscription-product-header>div:last-child{min-width:0;flex:1}
.subscription-product-header h3{font-size:28px;font-weight:500;line-height:1.3;margin:0 0 8px}
.subscription-product-header p{font-size:16px;line-height:1.6;color:#64596f;margin:0 0 12px}
.subscription-photo{width:176px;height:120px;object-fit:cover;border-radius:12px;flex-shrink:0}
.subscription-brand{width:104px;height:104px;display:grid;place-items:center;border-radius:16px;background:#f7f4fb;flex-shrink:0}
.subscription-brand .brand-image{width:64px;height:64px;object-fit:contain}
.subscription-product-body{padding:28px}
.subscription-parameter{padding:0;border:0;margin:0 0 28px;min-width:0}
.subscription-parameter legend{font-size:19px;font-weight:500;margin-bottom:12px;padding:0}
.subscription-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(148px,1fr));gap:12px}
.subscription-option{position:relative;display:flex;flex-direction:column;justify-content:center;gap:6px;min-height:60px;padding:16px 36px 16px 16px;border:1px solid #dcd1e8;border-radius:10px;cursor:pointer;color:#302639;background:white;min-width:0}
.subscription-option>span{font-size:17px;font-weight:500;line-height:1.4;overflow-wrap:anywhere}
.subscription-option small{font-size:13px;line-height:1.5;color:#64596f}
.subscription-option input{position:absolute;right:12px;top:20px;width:16px;height:16px;margin:0;accent-color:#5630a5}
.subscription-option:has(input:checked){border-color:#5630a5;background:#f3edfb;box-shadow:inset 0 0 0 1px #5630a5}
.subscription-option:has(input:focus-visible){outline:3px solid #b49ad8;outline-offset:3px}
.subscription-option:has(input:disabled){opacity:.5;cursor:not-allowed}
.subscription-fixed{display:flex;align-items:baseline;gap:16px;justify-content:space-between;font-size:16px;line-height:1.5;margin:0 0 20px}
.subscription-fixed>span{color:#64596f}.subscription-fixed strong{font-weight:500;text-align:right}
.subscription-purchase{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:24px;border-top:1px solid #e7e2ed}
.subscription-total{display:grid;gap:8px;min-width:0}.subscription-total>span,.subscription-total>small{font-size:14px;line-height:1.5;color:#64596f}
.subscription-total>strong{font-size:32px;font-weight:500;line-height:1.2;color:#302639;font-variant-numeric:tabular-nums}
.subscription-purchase .button{min-height:52px;flex-shrink:0;font-size:16px}
.subscription-purchase .button:disabled{opacity:.5;cursor:not-allowed}
.subscription-payment-note{font-size:14px;line-height:1.6;color:#64596f;margin:20px 0 0}
@media(max-width:1000px){.subscription-photo{width:128px;height:100px}.subscription-purchase{align-items:stretch;flex-direction:column}}
@media(max-width:760px){
 .subscription-product-header,.subscription-product-body{padding:20px}
 .subscription-product-header{gap:16px;align-items:flex-start}
 .subscription-product-header h3{font-size:24px}
 .subscription-product-header p{font-size:15px}
 .subscription-photo,.subscription-brand{width:64px;height:64px;border-radius:10px}
 .subscription-brand .brand-image{width:40px;height:40px}
 .subscription-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .subscription-option{padding:14px 32px 14px 12px}
 .subscription-option>span{font-size:16px}
 .subscription-option input{right:10px;top:18px}
 .subscription-purchase .button{width:100%}
}
.ai-store .plan-grid.gift-product-grid{display:block;min-width:0}
.gift-product{overflow:hidden;border:1px solid #ded3e9;border-radius:16px;background:#fff}
.gift-product-photo{display:block;width:100%;height:auto;max-height:280px;aspect-ratio:12/5;object-fit:cover}
.gift-product-body{padding:28px}
.gift-region{margin:0 0 12px;font-size:16px;color:#65428e;line-height:1.5}
.gift-product h3{font-size:28px;line-height:1.3;margin:0 0 12px}
.gift-description{font-size:17px;line-height:1.65;color:var(--muted);margin:0 0 28px}
.gift-denominations{min-width:0;border:0;padding:0;margin:0}
.gift-denominations legend{font-size:20px;font-weight:600;margin-bottom:16px}
.gift-denomination-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.gift-denomination{position:relative;display:flex;flex-direction:column;gap:8px;min-width:0;padding:18px 14px;border:2px solid #e5dced;border-radius:10px;cursor:pointer;background:#fcfaff}
.gift-denomination input{position:absolute;right:12px;bottom:19px;width:17px;height:17px;accent-color:var(--purple)}
.gift-denomination>span{font-size:19px;font-weight:650;line-height:1.4;white-space:nowrap}
.gift-denomination small{font-size:16px;color:var(--muted);line-height:1.4}
.gift-denomination:has(input:checked){border-color:var(--purple);background:#f0e8fa}
.gift-denomination:has(input:focus-visible){outline:3px solid #b69bdc;outline-offset:3px}
.gift-denomination:has(input:disabled){opacity:.55;cursor:not-allowed}
.gift-purchase{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}
.gift-total{display:grid;gap:6px}.gift-total>span{font-size:15px;color:var(--muted)}.gift-total strong{font-size:28px;color:var(--ink);line-height:1.3}
.gift-region-note{font-size:14px;line-height:1.65;color:var(--muted);margin:20px 0 0}
.gift-purchase button:disabled{opacity:.5;cursor:not-allowed}
@media(max-width:760px){.gift-product-body{padding:20px}.gift-product h3{font-size:24px}.gift-description{font-size:16px}.gift-denomination-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.gift-denomination{padding:16px 12px}.gift-denomination>span{font-size:18px}.gift-denomination input{right:10px;bottom:18px}.gift-purchase{align-items:stretch;flex-direction:column;gap:16px}.gift-purchase button{width:100%}.gift-product-photo{aspect-ratio:8/5}}
.catalog-sidebar{max-height:calc(100dvh - 48px);overflow:auto;scrollbar-width:thin}
.ai-store .catalog-sidebar .service-item{min-height:64px;padding:8px;gap:10px}
.ai-store .catalog-sidebar .service-item strong{font-size:16px;line-height:1.35}
.ai-store .catalog-sidebar .service-item small{font-size:13px;margin-top:2px}
.catalog-sidebar .service-logo{width:40px;height:40px;border-radius:10px}
.catalog-sidebar .service-logo .brand-image,.catalog-sidebar .service-logo svg{width:26px;height:26px}
.catalog-sidebar nav{gap:4px}
.ai-store .catalog-description{font-size:16px;line-height:1.65;color:#645476;max-width:620px;margin:12px 0 0}
.catalog-search-label{display:block;font-size:16px;margin-bottom:10px}
.ai-store input[type=search],.ai-store select{width:100%;min-width:0;min-height:50px;border:1px solid #d9d0e4;border-radius:10px;padding:12px 16px;font:16px Manrope,Arial,sans-serif;color:var(--ink);background:white}
.catalog-filters,.variant-filters{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}
.catalog-filters button,.variant-filters button{font-size:14px;min-height:44px;padding:10px 14px;border-radius:8px;background:#f5f1fa;color:#655276}
.catalog-filters button[aria-pressed=true],.variant-filters button[aria-pressed=true]{background:var(--purple);color:white}
.variant-count{font-size:14px;color:var(--muted);margin:16px 0 24px}
.variant-search{display:flex;gap:12px;margin:16px 0}
.variant-search select{max-width:230px}
.variant-controls:empty{display:none}
.ai-store .plan-grid{row-gap:32px}
.ai-store .plan-art{padding:12px}
.ai-store .plan-art>span{max-width:100%;font-size:14px;line-height:1.4;padding:4px 8px;white-space:normal;overflow-wrap:anywhere}
.ai-store .plan-description>small{font-size:14px}
.ai-store .order-summary>div{gap:12px}
.ai-store .order-summary dd{text-align:right;overflow-wrap:anywhere;max-width:65%}
.home-products{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.home-product{grid-template-columns:1fr;padding:24px;gap:20px}
.home-product-art{width:64px;height:64px;min-height:0;align-self:start}
.home-product-art img,.home-product-art svg{width:36px;height:36px}
.home-product>div{display:flex;flex-direction:column}
.home-product h3{font-size:23px}
.home-product p{flex:1;margin-bottom:16px}
.home-product-link{margin-top:16px}
.catalog-empty{grid-column:1/-1;padding:24px;border:1px dashed #d9cbea;border-radius:12px}
.catalog-empty h3{font-size:22px}
.catalog-empty p{font-size:16px;color:var(--muted);margin:12px 0 20px}
.selected-details{margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}
.selected-details h3{font-size:22px;line-height:1.4}
.selected-details ul,.modal-detail-list{padding-left:20px;margin:16px 0;font-size:16px;line-height:1.75;color:var(--muted)}
.selected-details li+li,.modal-detail-list li+li{margin-top:12px}
.selected-details p{font-size:13px;color:var(--muted)}
@media(max-width:1200px){
 .catalog-sidebar{max-height:none;overflow:visible}
 .ai-store .catalog-sidebar .service-item{min-width:172px;flex-shrink:0}
 .home-products{grid-template-columns:1fr}
 .home-product{grid-template-columns:64px minmax(0,1fr);gap:20px}
}
@media(max-width:760px){
 .ai-store .catalog-description{font-size:16px}
 .ai-store .service-banner{align-items:flex-start}
 .ai-store .catalog-sidebar .service-item strong{font-size:15px}
 .ai-store .plan-grid{row-gap:24px}
 .ai-store .plan-art{height:100px;padding:6px}
 .ai-store .plan-art>span{font-size:12px;padding:2px 4px}
 .variant-search{flex-direction:column}
 .variant-search select{max-width:none}
 .home-products{grid-template-columns:1fr}
 .home-product{padding:20px;grid-template-columns:1fr;gap:16px}
 .home-product h3{font-size:23px}
 .home-product p{font-size:16px}
 .home-product strong{font-size:17px}
 .catalog-filters button,.variant-filters button{font-size:14px}
 .ai-store .order-summary dd{max-width:67%}
}
.catalog-request{margin-top:24px;padding:24px;border-radius:14px;background:#f1ebfa}
.catalog-request h3{font-size:22px;line-height:1.4}
.catalog-request p{font-size:16px;color:var(--muted);margin:10px 0 16px}
/* Product covers are saved images, with the service and variant included in SVG. */
.product-cover{display:block;width:100%;height:auto;aspect-ratio:8/5;object-fit:cover;border-radius:10px}
.ai-store .plan-tile{width:100%;padding:3px}
.ai-store .plan-description .plan-name{display:block;font-size:16px;font-weight:500;color:var(--muted);margin-bottom:4px;line-height:1.4}
.home-product{display:flex;flex-direction:column;padding:16px;gap:20px}
.home-product-art{display:block;width:100%;height:auto;min-height:0;background:transparent}
.home-product-art img.product-cover{width:100%;height:auto;aspect-ratio:8/5;object-fit:cover}
.home-product>div{padding:0 8px 8px;flex:1}
.provider-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:20px 0 32px}
.provider-choice{display:flex;flex-direction:column;align-items:center;gap:8px;padding:20px 8px 16px;background:#faf8fd;border:1px solid #e4dced;border-radius:14px;color:var(--ink)}
.provider-choice[aria-pressed=true]{background:#eee5fa;border:2px solid #6c43af;padding:19px 7px 15px}
.provider-choice:hover{background:#f0e9fa}
.provider-choice .brand-image{width:40px;height:40px;object-fit:contain;margin-bottom:4px}
.provider-choice strong{font-size:16px;font-weight:600}
.provider-choice small{font-size:13px;color:var(--muted)}
.selection-step{display:flex;align-items:center;gap:12px;font-size:22px;line-height:1.4}
.selection-step>span:first-child{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#eee6f9;color:#5630a5;font-size:16px;flex-shrink:0}
.provider-plan-heading{padding-top:24px;border-top:1px solid var(--line)}
.provider-plan-heading p{font-size:15px;color:var(--muted);margin:12px 0 0}
@media(max-width:1200px){.provider-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-product{display:flex}}
@media(max-width:760px){
 .ai-store .plan-tile{width:112px;flex-shrink:0}
 .ai-store .plan-description{min-width:0}
 .ai-store .plan-description .plan-name{font-size:16px}
 .provider-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .provider-choice{padding:16px 8px}
 .provider-choice[aria-pressed=true]{padding:15px 7px}
 .provider-choice .brand-image{width:36px;height:36px}
 .selection-step{font-size:20px}
 .home-product-art img.product-cover{width:100%;height:auto}
}
.store-mode-notice,.catalog-load-error{grid-column:1/-1;padding:14px 20px;border-radius:10px;background:#fff3d8;color:#775111;font-size:15px;margin:0 0 16px}.catalog-load-error{background:#fff0ee;color:#9d2931}.checkout-button:disabled{opacity:.5;cursor:not-allowed}.ai-store .service-item[hidden]{display:none}
/* PlayStation: three explicit dimensions, one resolved product and price. */
.ps-config{margin-top:24px}.ps-choice-group{border:0;padding:0;margin:0 0 32px;min-width:0}.ps-choice-group legend{display:flex;align-items:center;gap:12px;font-size:22px;font-weight:600;margin-bottom:20px;line-height:1.4}.ps-choice-group legend>span{display:grid;place-items:center;width:30px;height:30px;background:#eee6f9;border-radius:50%;color:#5630a5;font-size:16px}.ps-tier-grid,.ps-term-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.ps-account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ps-choice{position:relative;display:flex;flex-direction:column;padding:20px 16px;border:2px solid #e9e1f1;border-radius:12px;background:#fcfaff;cursor:pointer;min-width:0;gap:10px;color:var(--ink)}.ps-choice:has(input:checked){border-color:#6840ad;background:#f0e8fa}.ps-choice:has(input:focus-visible){outline:3px solid #b69bdc;outline-offset:3px}.ps-choice input{position:absolute;top:20px;right:14px;width:18px;height:18px;accent-color:#5630a5}.ps-choice>strong{font-size:21px;padding-right:20px;line-height:1.35}.ps-choice>span{font-size:15px;line-height:1.65;color:#71617f}.ps-tier-caption{min-height:50px}.ps-choice .ps-benefits{display:grid;gap:12px;border-top:1px solid #ddd1ea;padding-top:16px;margin-top:4px}.ps-benefits>span{display:flex;align-items:flex-start;gap:8px}.ps-benefits svg{width:16px;height:20px;flex-shrink:0;color:#6840ad}.ps-region-note{font-size:13px;line-height:1.7;color:var(--muted);margin-top:16px}.ps-region-note a{color:#5630a5;text-decoration:underline}.ps-term>strong{font-size:18px}.ps-term>span{font-size:14px}.ps-account>strong{font-size:19px}.ps-account-hint{font-size:15px;line-height:1.7;padding:16px 20px;background:#f4effa;border-left:3px solid #7750b3;margin-top:16px;border-radius:0 10px 10px 0;color:#645374}.ai-store .plan-grid.ps-result-grid{display:block}.ps-selected-product{display:flex;align-items:center;gap:24px;background:#f8f5fc;border-radius:14px;padding:20px}.ps-selected-product>img{width:180px;flex-shrink:0}.ps-selected-product h3{font-size:22px;line-height:1.4;margin:12px 0 8px}.ps-selected-product p{font-size:15px;color:var(--muted)}.ps-selected-product strong{display:block;font-size:26px;color:#5630a5;margin-top:12px}.ps-account-badge{display:inline-block;padding:6px 12px;background:#e8dcf7;color:#4b2885;border-radius:6px;font-size:15px;font-weight:600}.ai-store .order-summary>.ps-account-summary{background:#f0e8fa;border:1px solid #ded0ee;border-radius:8px;padding:12px;align-items:center;margin-top:4px}.ps-account-summary dd{font-weight:650;color:#5630a5}
@media(min-width:1201px) and (max-width:1450px){.ps-tier-grid{grid-template-columns:1fr}.ps-tier-caption{min-height:0}.ps-choice .ps-benefits{grid-template-columns:1fr 1fr}.ps-tier{padding:20px}.ps-tier>strong{font-size:23px}.ps-selected-product>img{width:140px}}
@media(max-width:760px){.ps-tier-grid,.ps-account-grid{grid-template-columns:1fr}.ps-choice-group legend{font-size:20px}.ps-tier-caption{min-height:0}.ps-choice{padding:18px}.ps-tier>strong{font-size:23px}.ps-term-grid{gap:8px}.ps-term{padding:40px 8px 14px;text-align:center}.ps-term input{top:12px;right:calc(50% - 9px)}.ps-term>strong{font-size:15px;padding:0}.ps-term>span{font-size:13px;line-height:1.6}.ps-selected-product{align-items:flex-start;flex-direction:column;padding:20px;gap:16px}.ps-selected-product>img{width:100%;max-width:280px}.ps-selected-product h3{font-size:22px}.ps-account-badge{font-size:16px}}

/* Bank names lead; physical/virtual is a secondary attribute. */
.ai-store[data-page="cards"] .plan-description .plan-name{
 font-size:22px;font-weight:700;line-height:1.3;color:var(--ink);margin-bottom:6px;
}
.ai-store[data-page="cards"] .plan-description>strong{
 font-size:16px;font-weight:400;line-height:1.5;color:var(--muted);
}
@media(max-width:760px){
 .ai-store[data-page="cards"] .plan-description .plan-name{font-size:20px}
 .ai-store[data-page="cards"] .plan-description>strong{font-size:15px}
}

.corporate-order{margin:28px 0;padding:24px;border:1px solid var(--line);border-radius:20px;background:#fff}.corporate-order p{margin:12px 0 20px;color:var(--muted);font-size:16px;line-height:1.7}.corporate-order .button{height:auto;min-height:48px;padding:12px 18px;text-align:center}
