/* Apple Minimal storefront finish.
   Web approximation of layered iOS materials; content panels deliberately avoid
   nested backdrop filters. Floating navigation is styled by the shared shell. */

/* Home: the real review class, trust content and the eSIM support tile. */
html[data-theme-style="apple_minimal"] body .lk-home :is(.lk-review, .lk-safe-list, .lk-esim-have) {
  background: var(--ap-panel) !important;
  border: 1px solid var(--lg-rim) !important;
  border-radius: 26px !important;
  box-shadow: var(--lg-spec), var(--lg-shadow) !important;
}

html[data-theme-style="apple_minimal"] body .lk-home :is(.lk-safe-help, .lk-step-art, .lk-art-cred) {
  background: var(--ap-well) !important;
  border: 1px solid var(--ap-line) !important;
  border-radius: 20px !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .65) !important;
}

html[data-theme-style="apple_minimal"] body .lk-home :is(.lk-safe-list li + li, .lk-review-foot, .lk-art-cred-row + .lk-art-cred-row) {
  border-color: var(--ap-line) !important;
}

html[data-theme-style="apple_minimal"] body .lk-home :is(.lk-esim-have-title, .lk-night .lk-esim-have-title, .lk-art-cred-row span) {
  color: var(--ap-ink) !important;
}

html[data-theme-style="apple_minimal"] body .lk-home :is(.lk-esim-have-text, .lk-safe-help, .lk-art-cred-row b) {
  color: var(--ap-muted) !important;
}

html[data-theme-style="apple_minimal"] body .lk-home :is(.lk-esim-have-icon, .lk-safe-help i) {
  color: var(--ap-blue) !important;
}

html[data-theme-style="apple_minimal"] body .lk-home .lk-esim-have-icon {
  background: rgba(0, 113, 227, .09) !important;
  border: 1px solid rgba(255, 255, 255, .7) !important;
  border-radius: 15px !important;
  box-shadow: var(--lg-spec) !important;
}

html[data-theme-style="apple_minimal"] body .lk-home :is(.lk-night-link, .home-shelves-more-mobile, .lk-art-plans span, .lk-rv-nav, .home-shelf-nav) {
  min-height: 44px;
  background: var(--ap-control) !important;
  border: 1px solid var(--lg-rim) !important;
  border-radius: 999px !important;
  color: var(--ap-blue) !important;
  box-shadow: var(--lg-spec), 0 3px 12px -8px rgba(28, 24, 20, .22) !important;
}

html[data-theme-style="apple_minimal"] body .lk-home .lk-art-plans .is-on {
  background: rgba(0, 113, 227, .1) !important;
  border-color: rgba(0, 113, 227, .32) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .8) !important;
}

html[data-theme-style="apple_minimal"] body .lk-home .lk-safe-help a {
  color: var(--ap-blue) !important;
}

html[data-theme-style="apple_minimal"] body .lk-home .lk-cta-search {
  background: var(--ap-control) !important;
  border: 1px solid var(--lg-rim) !important;
  border-radius: 999px !important;
  box-shadow: var(--lg-spec), 0 8px 28px -18px rgba(28, 24, 20, .22) !important;
  color: var(--ap-muted) !important;
}

html[data-theme-style="apple_minimal"] body .lk-home .lk-cta-search input {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  color: var(--ap-ink) !important;
  box-shadow: none !important;
}

html[data-theme-style="apple_minimal"] body .lk-home .lk-cta-search input::placeholder {
  color: var(--ap-muted) !important;
  opacity: 1;
}

html[data-theme-style="apple_minimal"] body .lk-home .lk-cta-search .lk-btn {
  --key-face: var(--ap-blue);
  --key-face-hover: #0068d1;
  --key-ink: #fff;
  background: linear-gradient(180deg, rgba(255, 255, 255, .12), transparent 60%), var(--ap-blue) !important;
  color: #fff !important;
  border: 1px solid rgba(255, 255, 255, .28) !important;
  border-radius: 999px !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .35) !important;
}

/* The category label was hard-coded after the main theme stylesheet. */
html[data-theme-style="apple_minimal"] body .product-card.lk-pc .lk-pc-cat,
html[data-theme-style="apple_minimal"] body .product-card.lk-pc .lk-pc-cat i {
  background: rgba(0, 113, 227, .075) !important;
  color: var(--ap-blue) !important;
  border-color: rgba(0, 113, 227, .12) !important;
}

html[data-theme-style="apple_minimal"] body .product-card.lk-pc .lk-pc-cat i {
  background: transparent !important;
}

/* Product detail: image and rating surfaces retain their image/status colors. */
html[data-theme-style="apple_minimal"] body .product-detail-page :is(.product-hero-image-card, .product-trust-badge) {
  background: var(--ap-panel) !important;
  border: 1px solid var(--lg-rim) !important;
  border-radius: 22px !important;
  box-shadow: var(--lg-spec), var(--lg-shadow) !important;
}

html[data-theme-style="apple_minimal"] body .product-detail-page .product-hero-image-card .product-image-wrapper,
html[data-theme-style="apple_minimal"] body .product-detail-page .product-reviews-section .rating-big,
html[data-theme-style="apple_minimal"] body .product-detail-page :is(.product-rating-section, .reviews-overview, .gallery-thumb-item) {
  background: var(--ap-well) !important;
  border: 1px solid transparent !important;
  border-radius: 18px !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .65) !important;
}

html[data-theme-style="apple_minimal"] body .product-detail-page .gallery-thumb-item.active {
  border-color: var(--ap-blue) !important;
  box-shadow: var(--ap-ring) !important;
}

/* One inset well for the score; avoid stacking two gray fills underneath it. */
html[data-theme-style="apple_minimal"] body .product-detail-page .product-reviews-section .reviews-overview {
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
}

html[data-theme-style="apple_minimal"] body .product-detail-page .product-header-actions :is(.product-api-doc-btn, .product-favorite-btn, .product-affiliate-share-btn) {
  min-width: 44px;
  min-height: 44px;
  background: var(--ap-control) !important;
  border: 1px solid var(--lg-rim) !important;
  border-radius: 999px !important;
  box-shadow: var(--lg-spec), var(--lg-shadow-control) !important;
}

/* The SVG image rule contains an ID inside :has(), so match that specificity. */
html[data-theme-style="apple_minimal"] body .product-detail-page .product-image-wrapper:has(#productMainImage) {
  background: var(--ap-well) !important;
  border: 1px solid transparent !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .65) !important;
}

html[data-theme-style="apple_minimal"] body .product-detail-page :is(.order-price-summary, .lk-pay-hint, .lk-pending-invoice) {
  background: var(--ap-well) !important;
  border: 1px solid var(--ap-line) !important;
  border-radius: 18px !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .65) !important;
}

html[data-theme-style="apple_minimal"] body .product-detail-page .price-row.total-row {
  border-top: 1px solid var(--ap-line) !important;
}

/* Leave the success/warning/error foregrounds intact while softening fills. */
html[data-theme-style="apple_minimal"] body .product-detail-page .order-stock-info {
  background: rgba(52, 199, 89, .085) !important;
  border: 1px solid rgba(52, 199, 89, .12) !important;
  border-radius: 16px !important;
}

html[data-theme-style="apple_minimal"] body .product-detail-page .order-stock-info.low-stock {
  background: rgba(255, 149, 0, .09) !important;
  border-color: rgba(255, 149, 0, .15) !important;
}

html[data-theme-style="apple_minimal"] body .product-detail-page .order-stock-info.out-of-stock {
  background: rgba(255, 59, 48, .075) !important;
  border-color: rgba(255, 59, 48, .12) !important;
}

/* This depth also beats the old sticky-panel rules with !important. */
html[data-theme-style="apple_minimal"] body .product-detail-page .product-sticky-order-panel .pd-plan-detail {
  background: var(--ap-well) !important;
  border: 1px solid var(--ap-line) !important;
  border-radius: 20px !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .65) !important;
}

html[data-theme-style="apple_minimal"] body .product-detail-page .product-sticky-order-panel .pd-plan-detail .plan-desc-header,
html[data-theme-style="apple_minimal"] body .product-detail-page .product-sticky-order-panel .pd-plan-detail .plan-desc-header:hover {
  background: rgba(255, 255, 255, .32) !important;
  border-bottom: 1px solid var(--ap-line) !important;
  border-radius: 0 !important;
}

html[data-theme-style="apple_minimal"] body .product-detail-page .product-sticky-order-panel .pd-plan-detail .plan-desc-icon-wrapper {
  background: rgba(0, 113, 227, .08) !important;
  color: var(--ap-blue) !important;
  border-radius: 11px !important;
}

html[data-theme-style="apple_minimal"] body .product-detail-page .product-sticky-order-panel .pd-plan-detail .plan-desc-label {
  color: var(--ap-blue) !important;
}

html[data-theme-style="apple_minimal"] body .product-detail-page .quantity-selector,
html[data-theme-style="apple_minimal"] body .cart-page .cart-item-qty {
  gap: 4px !important;
  padding: 4px !important;
  background: var(--ap-well) !important;
  border: 1px solid transparent !important;
  border-radius: 999px !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .7) !important;
}

html[data-theme-style="apple_minimal"] body .product-detail-page .quantity-selector .qty-btn,
html[data-theme-style="apple_minimal"] body .cart-page .cart-item-qty button {
  width: 44px !important;
  height: 44px !important;
  min-height: 44px !important;
  background: var(--ap-control) !important;
  border: 1px solid var(--lg-rim) !important;
  border-radius: 50% !important;
  color: var(--ap-ink) !important;
  box-shadow: var(--lg-spec) !important;
  flex-shrink: 0;
}

html[data-theme-style="apple_minimal"] body .product-detail-page .quantity-selector .qty-input,
html[data-theme-style="apple_minimal"] body .cart-page .cart-item-qty .cart-qty-input {
  height: 44px !important;
  min-height: 44px !important;
  padding: 0 4px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: transparent !important;
  color: var(--ap-ink) !important;
  box-shadow: none !important;
  font-size: 16px !important;
}

html[data-theme-style="apple_minimal"] body .product-detail-page .order-coupon-section {
  background: var(--ap-well) !important;
  border: 1px solid var(--ap-line) !important;
  border-radius: 18px !important;
}

html[data-theme-style="apple_minimal"] body .product-detail-page :is(.coupon-toggle, .coupon-form-wrapper) {
  background: transparent !important;
}

html[data-theme-style="apple_minimal"] body .product-detail-page .coupon-toggle {
  min-height: 48px;
  color: var(--ap-blue) !important;
  border-radius: 18px !important;
}

html[data-theme-style="apple_minimal"] body .product-detail-page :is(.btn-review-helpful, .btn-load-more-reviews, .btn-write-review-inline, .plan-more-toggle, .plan-oos-toggle) {
  min-height: 44px;
  background: var(--ap-control) !important;
  border: 1px solid var(--lg-rim) !important;
  border-radius: 999px !important;
  color: var(--ap-blue) !important;
  box-shadow: var(--lg-spec) !important;
}

html[data-theme-style="apple_minimal"] body .product-detail-page .btn-review-helpful.voted {
  background: rgba(0, 113, 227, .1) !important;
  border-color: rgba(0, 113, 227, .22) !important;
}

html[data-theme-style="apple_minimal"] body .product-detail-page .review-admin-reply {
  border-radius: 18px !important;
}

/* Reviews share one glass panel; individual entries are spacious, divided rows. */
html[data-theme-style="apple_minimal"] body .product-detail-page .product-reviews-section .reviews-overview {
  padding: 20px 0 24px !important;
  border: 0 !important;
}

html[data-theme-style="apple_minimal"] body .product-detail-page .product-reviews-section .reviews-summary {
  gap: 20px;
}

html[data-theme-style="apple_minimal"] body .product-detail-page .product-reviews-section .rating-big {
  padding: 0 0 8px !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

html[data-theme-style="apple_minimal"] body .product-detail-page .product-reviews-section .rating-bar-row {
  grid-template-columns: 32px minmax(0, 1fr) 20px;
}

html[data-theme-style="apple_minimal"] body .product-detail-page .product-reviews-section .reviews-list {
  padding: 0 !important;
}

html[data-theme-style="apple_minimal"] body .product-detail-page .product-reviews-section .review-item {
  padding: 22px 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-top: 1px solid var(--ap-line) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

html[data-theme-style="apple_minimal"] body .product-detail-page .product-reviews-section .review-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
}

html[data-theme-style="apple_minimal"] body .product-detail-page .product-reviews-section .review-user {
  min-width: 0;
  gap: 10px;
}

html[data-theme-style="apple_minimal"] body .product-detail-page .product-reviews-section .review-avatar {
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  background: rgba(118, 118, 128, .08) !important;
  color: var(--ap-muted) !important;
  font-size: 14px;
}

html[data-theme-style="apple_minimal"] body .product-detail-page .product-reviews-section .review-user-info {
  min-width: 0;
  gap: 3px;
}

html[data-theme-style="apple_minimal"] body .product-detail-page .product-reviews-section .review-username {
  font-size: 14px;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

html[data-theme-style="apple_minimal"] body .product-detail-page .product-reviews-section .verified-badge {
  padding: 0;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  font-size: 10.5px !important;
  line-height: 1.4;
  white-space: nowrap;
}

html[data-theme-style="apple_minimal"] body .product-detail-page .product-reviews-section .review-meta {
  gap: 5px;
}

html[data-theme-style="apple_minimal"] body .product-detail-page .product-reviews-section .review-rating-stars {
  gap: 2px;
  font-size: 11px;
  line-height: 1;
  white-space: nowrap;
}

html[data-theme-style="apple_minimal"] body .product-detail-page .product-reviews-section .review-date {
  color: var(--ap-muted) !important;
  font-size: 11px !important;
  line-height: 1.3;
}

html[data-theme-style="apple_minimal"] body .product-detail-page .product-reviews-section .review-plan {
  display: block;
  margin: 0 0 10px;
  padding: 0;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  color: var(--ap-muted) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 1.5;
  overflow-wrap: anywhere;
}

html[data-theme-style="apple_minimal"] body .product-detail-page .product-reviews-section .review-plan > i {
  display: none;
}

html[data-theme-style="apple_minimal"] body .product-detail-page .product-reviews-section .review-content {
  margin-bottom: 12px;
  color: var(--ap-ink) !important;
  line-height: 1.65;
}

html[data-theme-style="apple_minimal"] body .product-detail-page .product-reviews-section .review-default-note {
  align-items: flex-start;
  gap: 7px;
  margin: 0;
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
  color: var(--ap-muted);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.55;
}

html[data-theme-style="apple_minimal"] body .product-detail-page .product-reviews-section .review-default-note > i {
  margin-top: 3px;
}

html[data-theme-style="apple_minimal"] body .product-detail-page .product-reviews-section .btn-review-helpful {
  min-height: 44px !important;
  border-color: var(--ap-line) !important;
  box-shadow: none !important;
}

/* Gray translucent input wells, including the coupon after it opens. */
html[data-theme-style="apple_minimal"] body .product-detail-page :is(.order-input, .coupon-input, .review-select, .review-textarea),
html[data-theme-style="apple_minimal"] body .cart-page .cart-coupon-input input,
html[data-theme-style="apple_minimal"] body .products-page :is(#filterKeyword, #filterPriceMin, #filterPriceMax, #filterSort) {
  min-height: 44px;
  background: var(--ap-well) !important;
  border: 1px solid transparent !important;
  border-radius: 14px !important;
  color: var(--ap-ink) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .55) !important;
}

html[data-theme-style="apple_minimal"] body .product-detail-page :is(.order-input, .coupon-input, .review-select, .review-textarea):focus,
html[data-theme-style="apple_minimal"] body .cart-page .cart-coupon-input input:focus,
html[data-theme-style="apple_minimal"] body .products-page :is(#filterKeyword, #filterPriceMin, #filterPriceMax, #filterSort):focus {
  background: var(--ap-well) !important;
  border-color: rgba(0, 113, 227, .4) !important;
  outline: none !important;
  box-shadow: var(--ap-ring) !important;
}

html[data-theme-style="apple_minimal"] body .product-detail-page .order-input.error {
  border-color: var(--danger, #d70015) !important;
  box-shadow: 0 0 0 3px rgba(215, 0, 21, .12) !important;
}

/* Cart: nested headers must let their parent panel show through. */
html[data-theme-style="apple_minimal"] body .cart-page :is(.cart-coupon-card, .cart-payment-card, .cart-actions-card, .cart-login-required, .confirm-section-card) {
  background: var(--ap-panel) !important;
  border: 1px solid var(--lg-rim) !important;
  border-radius: 22px !important;
  box-shadow: var(--lg-spec), var(--lg-shadow) !important;
}

html[data-theme-style="apple_minimal"] body .cart-page :is(.cart-items-header, .cart-summary-header, .cart-coupon-header, .confirm-section-header) {
  background: rgba(255, 255, 255, .24) !important;
  border-color: var(--ap-line) !important;
  color: var(--ap-ink) !important;
}

html[data-theme-style="apple_minimal"] body .cart-page :is(.cart-coupon-form, .cart-summary-body) {
  background: transparent !important;
}

html[data-theme-style="apple_minimal"] body .cart-page :is(.btn-view-orders, .btn-refresh-prices, .btn-clear-cart, .btn-view-history, .cart-header-btn) {
  min-height: 44px;
  background: var(--ap-control) !important;
  border: 1px solid var(--lg-rim) !important;
  border-radius: 999px !important;
  color: var(--ap-blue) !important;
  box-shadow: var(--lg-spec) !important;
}

html[data-theme-style="apple_minimal"] body .cart-page .btn-clear-cart {
  color: #b42318 !important;
}

html[data-theme-style="apple_minimal"] body .cart-page :is(.btn-view-orders, .btn-refresh-prices, .btn-view-history, .cart-header-btn):hover {
  background: rgba(255, 255, 255, .9) !important;
  color: var(--ap-blue) !important;
}

html[data-theme-style="apple_minimal"] body .cart-page .btn-clear-cart:hover {
  background: rgba(255, 59, 48, .07) !important;
}

html[data-theme-style="apple_minimal"] body .cart-page :is(.btn-pay-balance, .btn-pay-direct, .btn-login, .btn-confirm-checkout) {
  min-height: 44px !important;
  border: 1px solid rgba(255, 255, 255, .28) !important;
  border-radius: 999px !important;
  color: #fff !important;
}

html[data-theme-style="apple_minimal"] body .cart-page :is(.btn-pay-balance, .btn-pay-direct, .btn-login, .btn-confirm-checkout):not(:disabled) {
  background: linear-gradient(180deg, rgba(255, 255, 255, .12), transparent 65%), var(--ap-blue) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .4), 0 6px 16px -10px rgba(0, 113, 227, .5) !important;
}

html[data-theme-style="apple_minimal"] body .product-detail-page .btn-apply-coupon,
html[data-theme-style="apple_minimal"] body .cart-page .cart-coupon-input .btn-apply-coupon {
  min-height: 44px;
  background: linear-gradient(180deg, rgba(255, 255, 255, .12), transparent 65%), var(--ap-blue) !important;
  color: #fff !important;
  border: 1px solid rgba(255, 255, 255, .28) !important;
  border-radius: 999px !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .4) !important;
}

/* The desktop catalog footer is part of the same translucent filter panel. */
html[data-theme-style="apple_minimal"] body .products-page .catalog-filter-panel .catalog-filter-foot {
  background: rgba(255, 255, 255, .32) !important;
  border-color: var(--ap-line) !important;
}

html[data-theme-style="apple_minimal"] body .products-page .catalog-filter-panel .filter-cat-toggle {
  min-width: 36px;
  min-height: 36px;
  background: var(--ap-control) !important;
  border: 1px solid var(--lg-rim) !important;
  border-radius: 999px !important;
  color: var(--ap-muted) !important;
  box-shadow: var(--lg-spec) !important;
}

html[data-theme-style="apple_minimal"] body .products-page .catalog-filter-panel .filter-cat-toggle:hover {
  background: rgba(0, 113, 227, .07) !important;
  color: var(--ap-blue) !important;
}

/* Keyboard focus remains visible on every control added above. */
html[data-theme-style="apple_minimal"] body .lk-home :is(.lk-night-link, .home-shelves-more-mobile, .lk-rv-nav, .home-shelf-nav):focus-visible,
html[data-theme-style="apple_minimal"] body .lk-home .lk-cta-search:focus-within,
html[data-theme-style="apple_minimal"] body .product-detail-page :is(.qty-btn, .qty-input, .coupon-toggle, .btn-review-helpful, .btn-load-more-reviews, .btn-write-review-inline, .plan-more-toggle, .plan-oos-toggle, .btn-apply-coupon):focus-visible,
html[data-theme-style="apple_minimal"] body .cart-page :is(.cart-item-qty button, .cart-qty-input, .btn-view-orders, .btn-refresh-prices, .btn-clear-cart, .btn-view-history, .cart-header-btn, .btn-apply-coupon, .btn-pay-balance, .btn-pay-direct, .btn-login, .btn-confirm-checkout):focus-visible,
html[data-theme-style="apple_minimal"] body .products-page .catalog-filter-panel .filter-cat-toggle:focus-visible {
  outline: none !important;
  box-shadow: var(--ap-ring) !important;
}

@media (max-width: 575.98px) {
  html[data-theme-style="apple_minimal"] body .product-detail-page :is(.order-input, .coupon-input, .review-select, .review-textarea),
  html[data-theme-style="apple_minimal"] body .cart-page .cart-coupon-input input {
    font-size: 16px !important;
  }

  html[data-theme-style="apple_minimal"] body .cart-page .cart-item-qty {
    gap: 2px !important;
    padding: 3px !important;
  }

  html[data-theme-style="apple_minimal"] body .cart-page .cart-item-qty .cart-qty-input {
    width: 42px !important;
  }
}

