/* Project Afterlife Shop — visual polish pass */

/* Make the control-room frame feel intentional without wasting vertical space. */
.pa-shell{
  width:min(1320px,calc(100% - 32px));
  margin:10px auto;
}
.pa-screen{
  min-height:calc(100vh - 20px);
  padding:14px 18px 18px;
  background:linear-gradient(180deg,rgba(0,0,0,.66),rgba(0,0,0,.58));
}

/* Header: slightly tighter and better balanced at normal browser zoom. */
.pa-masthead{
  grid-template-columns:170px minmax(320px,.9fr) minmax(520px,1.35fr);
  gap:20px;
  padding:0 6px 8px;
  min-height:180px;
}
.pa-logo-wrap{width:154px}
.pa-brand h1{
  font-size:clamp(42px,4.2vw,58px);
  line-height:.91;
  letter-spacing:-.025em;
}
.pa-brand p{margin-top:10px;font-size:10px;letter-spacing:.20em}
.pa-est{margin-top:7px;font-size:8px}
.pa-nav{
  gap:9px;
  align-content:center;
  justify-content:flex-end;
}
.pa-nav a,.pa-cart-link{
  min-height:38px;
  padding:9px 13px;
  border-color:rgba(255,255,255,.14);
  background:rgba(5,7,8,.88);
}
.pa-cart-link{border-color:rgba(227,93,93,.30)}

/* Telemetry row. */
.pa-status{
  min-height:48px;
  margin-bottom:12px;
  padding:7px 4px;
  background:linear-gradient(90deg,rgba(227,93,93,.025),transparent 22%,transparent 78%,rgba(255,255,255,.02));
}
.pa-pill{padding:7px 12px;background:rgba(5,7,8,.88)}

/* Hero: stronger hierarchy, less giant blank space. */
.pa-shop-hero{
  grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr);
  align-items:stretch;
  gap:18px;
  padding:20px 22px;
  margin-bottom:14px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
}
.pa-shop-hero h2{
  margin:9px 0 10px;
  font-size:clamp(46px,5.1vw,66px);
  line-height:.92;
}
.pa-shop-hero p{max-width:760px;font-size:14px;line-height:1.65}
.pa-signal{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:132px;
  padding:15px 17px;
}
.pa-signal strong{margin:12px 0 6px;font-size:17px}
.pa-signal p{margin:0}

/* Catalogue heading and grid. */
.pa-main>.pa-kicker{padding-left:2px}
.woocommerce ul.products{
  gap:12px!important;
  align-items:stretch;
}
.woocommerce ul.products li.product{
  display:flex!important;
  flex-direction:column;
  min-height:100%;
  padding:10px!important;
  background:linear-gradient(180deg,rgba(13,15,17,.94),rgba(5,7,8,.97));
}
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link{
  display:flex;
  flex-direction:column;
  flex:1;
  text-decoration:none;
}
.woocommerce ul.products li.product a img{
  width:100%!important;
  aspect-ratio:1/1;
  margin-bottom:11px!important;
  border:1px solid rgba(255,255,255,.08);
}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-size:17px!important;
  line-height:1.2;
  min-height:3.6em;
}
.woocommerce ul.products li.product .price{
  margin-top:auto!important;
  padding-top:2px;
}
.woocommerce ul.products li.product .button{
  width:100%;
  margin-top:2px!important;
  text-align:center;
}

/* Shop/archive utility controls should match the dark UI. */
.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering{color:var(--pa-muted)}
.woocommerce .woocommerce-ordering select{
  min-height:38px;
  padding:7px 10px;
  color:#fff;
  background:#090b0c;
  border:1px solid var(--pa-line-strong);
  border-radius:6px;
}

/* Product pages. */
.single-product .pa-main{padding-top:8px}
.single-product .product{display:flex;flex-wrap:wrap;gap:3%;align-items:flex-start}
.single-product .woocommerce-product-gallery{width:49%!important;float:none!important;margin:0!important}
.single-product .summary.entry-summary{width:48%!important;float:none!important;margin:0!important;padding:22px!important}
.single-product .product_title{
  margin:0 0 18px!important;
  font-size:clamp(34px,3.5vw,48px)!important;
  line-height:1.02!important;
  letter-spacing:-.02em;
}
.single-product .summary .price{margin:0 0 18px!important}
.single-product .summary p{line-height:1.65}
.single-product .woocommerce-product-gallery__wrapper{border:1px solid var(--pa-line);border-radius:9px;overflow:hidden;background:#f7f7f7}
.single-product .flex-control-thumbs{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:9px!important}
.single-product .flex-control-thumbs li{width:auto!important;float:none!important;margin:0!important}
.single-product .flex-control-thumbs img{border:1px solid var(--pa-line);border-radius:6px}
.single-product .summary{box-shadow:inset 0 1px 0 rgba(255,255,255,.025)}
.single-product form.cart{margin-top:18px!important}
.single-product form.cart .button{min-height:44px}
.single-product .product_meta{font-size:13px;color:var(--pa-sub)}
.single-product .woocommerce-tabs{width:100%;margin-top:28px}
.single-product .woocommerce-tabs ul.tabs{margin-bottom:0!important;padding-left:10px!important}
.single-product .woocommerce-tabs .panel{
  margin:0!important;
  padding:22px!important;
  line-height:1.65;
  background:linear-gradient(180deg,rgba(10,12,14,.94),rgba(6,8,9,.96))!important;
}
.single-product .woocommerce-tabs .panel h2{margin-top:0;font-size:24px}
.single-product .related{width:100%;margin-top:28px}
.single-product .related>h2{font-family:Georgia,'Times New Roman',serif;font-size:30px;font-weight:500;margin:0 0 16px}

/* Cart / checkout: create a clearer contained checkout surface. */
.woocommerce-cart .pa-main,
.woocommerce-checkout .pa-main,
.woocommerce-account .pa-main{max-width:1180px;margin:0 auto;padding-top:10px}
.wc-block-checkout,
.wp-block-woocommerce-cart{
  padding:16px!important;
  border:1px solid var(--pa-line)!important;
  border-radius:9px;
  background:rgba(5,7,8,.78);
}
.wp-block-woocommerce-cart .wc-block-cart-items__row,
.wp-block-woocommerce-cart .wc-block-components-sidebar-layout .wc-block-components-sidebar{
  border-color:var(--pa-line)!important;
}
.wp-block-woocommerce-cart .wc-block-cart-item__image img{border-radius:4px}
.wp-block-woocommerce-cart .wc-block-components-product-name{font-weight:700}
.wp-block-woocommerce-cart .wc-block-cart__totals-title,
.wp-block-woocommerce-cart .wc-block-components-totals-item__label{letter-spacing:.02em}
.wp-block-woocommerce-cart .wc-block-components-button{min-height:44px}

/* Tablet */
@media(max-width:1180px){
  .pa-masthead{
    grid-template-columns:145px 1fr;
    min-height:0;
    gap:14px;
  }
  .pa-logo-wrap{width:132px}
  .pa-nav{grid-column:1/-1;justify-content:center;padding-bottom:4px}
  .pa-shop-hero{grid-template-columns:1fr 320px}
}

@media(max-width:900px){
  .pa-shell{width:calc(100% - 18px);margin:8px auto}
  .pa-screen{padding:12px}
  .pa-shop-hero{grid-template-columns:1fr}
  .pa-signal{min-height:0}
  .single-product .woocommerce-product-gallery,
  .single-product .summary.entry-summary{width:100%!important}
  .single-product .summary.entry-summary{margin-top:14px!important}
}

/* Mobile */
@media(max-width:650px){
  .pa-shell{width:calc(100% - 10px);margin:5px auto}
  .pa-screen{padding:9px;border-radius:17px}
  .pa-masthead{grid-template-columns:76px 1fr;gap:9px;padding:2px 2px 8px}
  .pa-logo-wrap{width:74px}
  .pa-brand h1{font-size:clamp(27px,10vw,39px)}
  .pa-brand p{font-size:7px;letter-spacing:.16em}
  .pa-est{font-size:7px}
  .pa-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:6px}
  .pa-nav a,.pa-cart-link{min-height:36px;padding:7px 5px}
  .pa-status{grid-template-columns:auto 1fr;margin-bottom:9px}
  .pa-hud{justify-content:flex-end;gap:5px}
  .pa-pill{padding:6px 7px;font-size:7px}
  .pa-clock{grid-column:1/-1;text-align:center;padding-top:2px}

  .pa-shop-hero{padding:15px;margin-bottom:11px}
  .pa-shop-hero h2{font-size:clamp(36px,10.5vw,48px);line-height:.96}
  .pa-shop-hero p{font-size:14px;line-height:1.6}
  .woocommerce ul.products li.product .woocommerce-loop-product__title{min-height:0;font-size:17px!important;line-height:1.25}

  /* Single product: keep long Printify titles from swallowing the screen. */
  .single-product .summary.entry-summary{padding:15px!important;margin-top:12px!important}
  .single-product .product_title{font-size:clamp(27px,7.8vw,34px)!important;line-height:1.08!important;margin-bottom:14px!important}
  .single-product .summary .price{font-size:26px!important}
  .single-product .variations th,
  .single-product .variations td{display:block!important;width:100%!important;padding:3px 0!important;text-align:left!important}
  .single-product .variations select{width:100%!important;max-width:none!important}
  .single-product .product_meta{display:none!important}

  /* Turn the cramped Woo tabs into a clean responsive control panel. */
  .single-product .woocommerce-tabs{margin-top:20px}
  .single-product .woocommerce-tabs ul.tabs{
    display:grid!important;
    grid-template-columns:1fr 1fr;
    gap:6px;
    padding:0!important;
    margin:0 0 8px!important;
  }
  .single-product .woocommerce-tabs ul.tabs:before{display:none!important}
  .single-product .woocommerce-tabs ul.tabs li{
    width:100%!important;
    margin:0!important;
    padding:0!important;
    border-radius:6px!important;
    text-align:center;
  }
  .single-product .woocommerce-tabs ul.tabs li:nth-child(3){grid-column:1/-1}
  .single-product .woocommerce-tabs ul.tabs li:before,
  .single-product .woocommerce-tabs ul.tabs li:after{display:none!important}
  .single-product .woocommerce-tabs ul.tabs li a{display:block!important;padding:11px 8px!important;font-size:13px!important;white-space:normal!important}
  .single-product .woocommerce-tabs .panel{padding:15px!important;font-size:15px;line-height:1.55}
  .single-product .woocommerce-tabs .panel h2{font-size:23px}
  .single-product .related{margin-top:22px}
  .single-product .related>h2{font-size:27px;margin-bottom:12px}
  .single-product .related ul.products li.product .woocommerce-loop-product__title{font-size:17px!important}

  /* Cart: preserve the useful totals without the giant sticky white takeover. */
  .wp-block-woocommerce-cart{padding:10px!important}
  .wp-block-woocommerce-cart .wc-block-cart-items__row{padding-top:18px!important;padding-bottom:18px!important}
  .wp-block-woocommerce-cart .wc-block-components-product-name{font-size:16px!important;line-height:1.3}
  .wp-block-woocommerce-cart .wc-block-cart-item__image{width:92px!important}
  .wp-block-woocommerce-cart .wc-block-cart__submit-container--sticky{
    position:static!important;
    inset:auto!important;
    padding:0!important;
    margin-top:14px!important;
    background:transparent!important;
    box-shadow:none!important;
    border:0!important;
  }

  /* Checkout: force a natural one-column order on narrow phones. */
  .wp-block-woocommerce-checkout .wc-block-components-sidebar-layout{display:block!important}
  .wp-block-woocommerce-checkout .wc-block-components-main,
  .wp-block-woocommerce-checkout .wc-block-components-sidebar{width:100%!important;max-width:none!important;margin:0!important}
  .wp-block-woocommerce-checkout .wc-block-components-sidebar{margin-top:16px!important}
}