/* PracticalNest presentation layer — clean marketplace standard.
   White background, generous spacing, one large image, clear CAD price,
   one prominent buy button. Loaded after Storefront + WooCommerce styles. */

:root{
  --pn-blue:#1464d2; --pn-blue-dark:#0f4fa8; --pn-ink:#111827; --pn-body:#374151;
  --pn-muted:#6b7280; --pn-line:#e5e7eb; --pn-slot:#f3f4f6; --pn-radius:14px;
}

body{ background:#ffffff; color:var(--pn-body); }
.site-content{ padding-top:2rem; padding-bottom:3rem; }
h1,h2,h3,.site-title a{ color:var(--pn-ink); }

/* Header: quiet, thin divider, no clutter */
.site-header{ background:#ffffff; border-bottom:1px solid var(--pn-line); }
.storefront-primary-navigation{ background:#ffffff; border-top:1px solid #f1f2f4; }
.main-navigation ul li a{ color:var(--pn-ink); font-weight:500; }

/* Full-width WooCommerce views (sidebar hook removed in functions.php) */
body.pn-fullwidth .content-area{ width:100%; float:none; margin-right:0; }
body.pn-fullwidth #secondary{ display:none; }

/* Buttons everywhere: one marketplace blue, big tap targets */
.button, button, input[type="button"], input[type="submit"],
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.added_to_cart{
  background-color:var(--pn-blue); color:#ffffff; border-radius:10px;
  font-weight:600; border:0; box-shadow:none; transition:background-color .15s ease;
}
.button:hover, .woocommerce a.button:hover, .woocommerce button.button:hover,
.added_to_cart:hover{ background-color:var(--pn-blue-dark); color:#ffffff; }
.button.alt, .woocommerce button.button.alt{ background-color:var(--pn-blue); }

/* ---------- Shop / category grids: product cards ---------- */
ul.products{
  display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin:0; padding:0;
}
ul.products::before, ul.products::after{ content:none; }
ul.products li.product{
  width:auto !important; float:none; margin:0 !important;
  background:#ffffff; border:1px solid var(--pn-line); border-radius:var(--pn-radius);
  padding:14px 14px 16px; text-align:left;
  box-shadow:0 1px 2px rgba(17,24,39,.04);
}
@media (max-width:1023px){ ul.products{ grid-template-columns:repeat(2,1fr); gap:14px; } }
ul.products li.product a.woocommerce-LoopProduct-link{ display:block; }
ul.products li.product img{
  width:100%; aspect-ratio:1/1; object-fit:cover; border-radius:10px;
  background:var(--pn-slot); margin:0 0 12px;
}
ul.products li.product .woocommerce-loop-product__title{
  font-size:15px; line-height:1.35; font-weight:600; color:var(--pn-ink);
  margin:0 0 6px; padding:0;
}
ul.products li.product .price{
  display:block; font-size:17px; font-weight:700; color:var(--pn-ink); margin:0 0 12px;
}
ul.products li.product .button{ display:block; text-align:center; padding:12px 10px; font-size:15px; }
.onsale{
  background:var(--pn-blue); color:#ffffff; border:0; border-radius:999px;
  font-size:12px; font-weight:700; letter-spacing:.02em; padding:4px 10px;
}

/* Prices: current price bold ink; compare-at (regular price, when a real sale
   price exists in the catalogue) struck through in muted grey. */
.price del{ color:var(--pn-muted); font-weight:500; text-decoration:line-through; margin-right:8px; }
.price ins{ background:none; text-decoration:none; font-weight:700; color:var(--pn-ink); }

/* ---------- Single product page ---------- */
.single-product .product .product_title{ font-size:28px; line-height:1.2; font-weight:700; margin-bottom:10px; }
.single-product div.product .woocommerce-product-gallery{
  background:var(--pn-slot); border:1px solid var(--pn-line); border-radius:var(--pn-radius); padding:10px;
}
.single-product div.product .woocommerce-product-gallery img{
  width:100%; aspect-ratio:1/1; object-fit:cover; border-radius:10px; background:var(--pn-slot);
}
.single-product div.product p.price{
  font-size:28px; font-weight:800; color:var(--pn-ink); margin:6px 0 14px;
}
.single-product .summary .single_add_to_cart_button{
  display:block; width:100%; padding:16px 20px; font-size:17px; border-radius:12px;
}
.single-product .summary form.cart{ margin-bottom:14px; }
.single-product .summary form.cart .quantity .qty{
  padding:13px 8px; border:1px solid var(--pn-line); border-radius:10px; margin-bottom:10px;
}
.single-product .product_meta{ color:var(--pn-muted); font-size:13px; border-top:1px solid var(--pn-line); padding-top:12px; }
.woocommerce-breadcrumb{ color:var(--pn-muted); font-size:13px; margin-bottom:1.2rem; }

/* Trust row under the buy button */
.pn-trust-row{
  list-style:none; margin:18px 0 4px; padding:14px 6px; display:flex; gap:8px;
  border:1px solid var(--pn-line); border-radius:var(--pn-radius); background:#fbfbfc;
}
.pn-trust-row li{
  flex:1; display:flex; gap:9px; align-items:flex-start; padding:0 8px;
  color:var(--pn-blue-dark);
}
.pn-trust-row li span{ color:var(--pn-body); font-size:13px; line-height:1.35; }
.pn-trust-row li strong{ display:block; color:var(--pn-ink); font-size:13.5px; }

/* Sticky mobile buy bar: hidden on desktop, fixed on small screens.
   Storefront ships its own sticky add-to-cart section; ours replaces it so
   there is exactly one buy bar. */
.storefront-sticky-add-to-cart{ display:none !important; }
/* Storefront's prev/next edge thumbnails and mobile handheld bar fight the
   clean marketplace layout; the product page keeps exactly one bottom bar: ours. */
.storefront-product-pagination{ display:none !important; }
body.single-product .storefront-handheld-footer-bar{ display:none !important; }
.pn-sticky-bar{ display:none; }
@media (max-width:768px){
  .pn-sticky-bar{
    display:flex; align-items:center; gap:12px;
    position:fixed; left:0; right:0; bottom:0; z-index:1000000;
    background:#ffffff; border-top:1px solid var(--pn-line);
    box-shadow:0 -4px 16px rgba(17,24,39,.08); padding:10px 14px calc(10px + env(safe-area-inset-bottom));
  }
  .pn-sticky-bar .pn-sticky-price{ font-size:18px; font-weight:800; color:var(--pn-ink); white-space:nowrap; }
  .pn-sticky-bar .pn-sticky-price del{ font-size:14px; color:var(--pn-muted); font-weight:500; }
  .pn-sticky-bar .pn-sticky-atc{ flex:1; text-align:center; padding:14px 10px; font-size:16px; border-radius:12px; }
  body.single-product{ padding-bottom:76px; }
  .pn-trust-row{ flex-direction:column; gap:12px; }
  .single-product .product .product_title{ font-size:24px; }
  .single-product div.product p.price{ font-size:25px; }
}

/* Cart / checkout: calmer tables, same blue actions */
.woocommerce-cart .shop_table, .woocommerce-checkout .shop_table{ border-color:var(--pn-line); }
.woocommerce-message, .woocommerce-info{
  background-color:#eef4fd; color:var(--pn-ink); border-top-color:var(--pn-blue);
}

/* Content pages: readable measure, quiet headings */
.page .entry-content{ max-width:46rem; }
.home .entry-content{ max-width:none; }
