/*
Theme Name: Suusakool
Text Domain: suusakool
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
Description: Minimalist theme.
Author: Suusakool
*/

/* Basic reset */
* { box-sizing: border-box; }
html, body { height: 100%; }
body { margin: 0; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", sans-serif; line-height: 1.6; color: #111; }
main { max-width: 800px; margin: 2rem auto; padding: 0 1rem; }
h1, h2, h3 { line-height: 1.25; }
a { color: #0d6efd; text-decoration: none; }
a:hover { text-decoration: underline; }

/* WooCommerce cart & checkout inputs */
.woocommerce-cart input.input-text,
.woocommerce-cart select,
.woocommerce-cart textarea,
.woocommerce-checkout input.input-text,
.woocommerce-checkout select,
.woocommerce-checkout textarea {
  width: 100%;
  padding: 0.65rem 0.75rem;
  border: 1px solid #d0d5dd;
  border-radius: 8px;
  background: #fff;
  color: #111;
  outline: none;
  transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}

.woocommerce-cart input.input-text:focus,
.woocommerce-cart select:focus,
.woocommerce-cart textarea:focus,
.woocommerce-checkout input.input-text:focus,
.woocommerce-checkout select:focus,
.woocommerce-checkout textarea:focus {
  border-color: #0d6efd;
  box-shadow: 0 0 0 3px rgba(13,110,253,.15);
}

.woocommerce-cart input.input-text::placeholder,
.woocommerce-cart textarea::placeholder,
.woocommerce-checkout input.input-text::placeholder,
.woocommerce-checkout textarea::placeholder {
  color: #9aa3af;
}

.woocommerce-cart input.input-text[disabled],
.woocommerce-cart select[disabled],
.woocommerce-cart textarea[disabled],
.woocommerce-checkout input.input-text[disabled],
.woocommerce-checkout select[disabled],
.woocommerce-checkout textarea[disabled] {
  background: #f5f7fb;
  color: #6b7280;
  cursor: not-allowed;
}

.woocommerce form .woocommerce-invalid input.input-text,
.woocommerce form .woocommerce-invalid select,
.woocommerce form .woocommerce-invalid textarea {
  border-color: #ef4444;
}

.woocommerce form .woocommerce-validated input.input-text,
.woocommerce form .woocommerce-validated select,
.woocommerce form .woocommerce-validated textarea {
  border-color: #16a34a;
}

.woocommerce .quantity .qty {
  width: 100px;
  padding: 0.5rem 0.75rem;
  text-align: center;
  border: 1px solid #d0d5dd;
  border-radius: 8px;
}

.woocommerce-cart .cart .actions .coupon input.input-text {
  max-width: 260px;
}

.woocommerce-checkout .form-row,
.woocommerce-cart .form-row {
  margin-bottom: 14px;
}

.woocommerce-checkout input[type="checkbox"],
.woocommerce-checkout input[type="radio"],
.woocommerce-cart input[type="checkbox"],
.woocommerce-cart input[type="radio"] {
  accent-color: #0d6efd;
}

/* Hide WooCommerce warnings/notices on frontend */
.woocommerce-notices-wrapper,
.woocommerce-message,
.woocommerce-error,
.woocommerce-info,
.woocommerce-NoticeGroup,
.woocommerce-noreviews,
.cart-empty,
.return-to-shop { display: none !important; }

/* Header, navigation, and cart */
.site-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  max-width: 1000px;
  margin: 0 auto;
  padding: 0.75rem 1rem;
}

.site-branding img {
  max-height: 48px;
  height: auto;
  width: auto;
}

.site-title { font-weight: 600; color: #111; text-decoration: none; }

.site-nav .primary-menu { list-style: none; display: flex; gap: 1rem; margin: 0; padding: 0; }
.site-nav .primary-menu > li > a { color: #111; text-decoration: none; padding: 0.25rem 0.5rem; border-radius: 6px; }
.site-nav .primary-menu > li > a:hover { background: #f3f4f6; text-decoration: none; }

.site-cart { position: relative; }
.site-cart-link { display: inline-flex; align-items: center; gap: 0.4rem; color: #111; text-decoration: none; }
.site-cart-icon { font-size: 1.2rem; }
.site-cart-count {
  display: inline-block;
  min-width: 1.25rem;
  height: 1.25rem;
  padding: 0 0.3rem;
  border-radius: 999px;
  background: #0d6efd;
  color: #fff;
  font-size: 0.75rem;
  line-height: 1.25rem;
  text-align: center;
}

@media (max-width: 640px) {
  .site-header { flex-wrap: wrap; }
  .site-nav { width: 100%; order: 3; }
  .site-nav .primary-menu { flex-wrap: wrap; }
}
