/* Doodlebark Shop: WooCommerce styling to match the Doodlebark v2 theme. */

/* Header cart link */
.dbs-cart{position:relative;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;color:var(--brown);border:2px solid var(--line);background:#fff}
.dbs-cart:hover{color:var(--coral);border-color:var(--coral)}
.dbs-count{position:absolute;top:-6px;right:-6px;min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:var(--coral);color:#fff;font:700 12px/20px 'Nunito',sans-serif;text-align:center}
.dbs-count[hidden]{display:none}

/* Buttons */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,
.woocommerce a.button.alt,.woocommerce button.button.alt,.wc-block-components-button:not(.is-link),.wp-element-button.wc-block-cart__submit-button{
  background:var(--coral)!important;color:#fff!important;border:none!important;border-radius:40px!important;
  font-family:'Fredoka',sans-serif!important;font-weight:600!important;font-size:1rem!important;
  padding:14px 26px!important;box-shadow:0 6px 0 var(--coral-d)!important;line-height:1.2!important;transition:transform .15s ease}
.woocommerce a.button:hover,.woocommerce button.button:hover{transform:translateY(-2px)}
.woocommerce a.added_to_cart{display:inline-block;margin-left:10px;font-weight:800;color:var(--teal-d)}

/* Notices */
.woocommerce-message,.woocommerce-info,.woocommerce-error{border-radius:16px;border-top:none!important;background:var(--cream-2)!important;color:var(--brown)!important;padding:16px 20px!important;list-style:none}
.woocommerce-message::before,.woocommerce-info::before{color:var(--teal-d)!important}

/* Shop grid (archive) */
.dbs-woo .woocommerce-products-header__title{text-align:center;margin-bottom:24px}
.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(3,1fr);gap:28px;margin:0!important}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none!important}
.woocommerce ul.products li.product{width:auto!important;margin:0!important;float:none!important;background:#fff;border:2px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;display:flex;flex-direction:column;padding:0 0 22px!important}
.woocommerce ul.products li.product a img{margin:0 0 14px!important;aspect-ratio:1/1;object-fit:cover;background:var(--cream-2)}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:'Fredoka',sans-serif;font-size:1.15rem!important;padding:0 20px!important;color:var(--brown)}
.woocommerce ul.products li.product .price{padding:4px 20px 0;color:var(--brown)!important;font-weight:800;font-size:1.05rem!important}
.woocommerce ul.products li.product .button{margin:14px 20px 0!important;align-self:flex-start}
.woocommerce span.onsale{background:var(--gold)!important;color:var(--brown)!important;border-radius:20px!important;min-height:0!important;line-height:1!important;padding:8px 12px!important}

/* Single product */
.woocommerce div.product{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
.woocommerce div.product div.images,.woocommerce div.product div.summary{width:auto!important;float:none!important;margin:0!important}
.woocommerce div.product div.images img{border-radius:var(--radius);border:2px solid var(--line);background:#fff}
.woocommerce div.product .product_title{font-size:clamp(1.8rem,3.5vw,2.5rem);margin-bottom:10px}
.woocommerce div.product p.price{color:var(--brown)!important;font-family:'Fredoka',sans-serif;font-size:1.6rem!important;font-weight:600}
.woocommerce div.product .woocommerce-product-details__short-description{color:var(--muted);margin:12px 0 18px}
.woocommerce div.product form.cart{margin:18px 0!important}
.woocommerce div.product form.cart .quantity{display:none}
.woocommerce div.product .product_meta{display:none}
.woocommerce div.product .woocommerce-tabs,.woocommerce div.product .related,.woocommerce div.product .upsells{grid-column:1/-1}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0!important;margin:0 0 18px!important}
.woocommerce div.product .woocommerce-tabs ul.tabs::before{border-color:var(--line)!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li{background:var(--cream-2)!important;border-color:var(--line)!important;border-radius:14px 14px 0 0!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active{background:#fff!important}
.woocommerce div.product .woocommerce-tabs .panel{background:#fff;border:2px solid var(--line);border-radius:var(--radius);padding:26px}
.woocommerce div.product .woocommerce-tabs .panel ul{margin:10px 0 0 20px}
.woocommerce div.product .woocommerce-tabs .panel h2:first-child{display:none}
.dbs-note{background:var(--cream-2);border-radius:14px;padding:12px 16px;font-weight:700;color:var(--brown);margin:8px 0}
.dbs-elsewhere{border-top:1px dashed var(--line);margin-top:18px;padding-top:16px}
.dbs-elsewhere p{margin-top:12px;color:var(--muted);font-size:.95rem}
.dbs-elsewhere p a{color:var(--teal-d);font-weight:800;text-decoration:underline}

/* Personalization form */
.dbs-personal{display:flex;flex-direction:column;gap:6px;margin-bottom:18px;background:#fff;border:2px solid var(--line);border-radius:18px;padding:18px}
.dbs-personal label{font-weight:800;margin-top:6px}
.dbs-personal .req{color:var(--coral)}
.dbs-personal input,.dbs-personal select,.dbs-personal textarea{font:inherit;padding:12px 14px;border:2px solid var(--line);border-radius:12px;background:var(--cream)}
.dbs-personal input:focus,.dbs-personal select:focus,.dbs-personal textarea:focus{outline:none;border-color:var(--teal)}
.dbs-personal small{color:var(--muted)}

/* Cart and checkout blocks */
.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout{font-family:'Nunito',sans-serif}
.wc-block-components-text-input input,.wc-block-components-combobox input,.wc-block-components-select select{border-radius:12px!important}
.wc-block-components-sidebar-layout .wc-block-components-main{padding-right:4%}

@media (max-width:900px){
  .woocommerce ul.products{grid-template-columns:repeat(2,1fr)}
  .woocommerce div.product{grid-template-columns:1fr;gap:26px}
}
@media (max-width:560px){
  .woocommerce ul.products{grid-template-columns:1fr}
  .woocommerce div.product form.cart .button{width:100%}
}
