/* Shared product layout; inventory and configuration remain native forms. */
.ts-product-detail { color:#28533f; }
.ts-product-detail > .productTop { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:40px; margin:0 0 36px; align-items:start; }
.ts-product-detail > .productTop::before, .ts-product-detail > .productTop::after { display:none; }
.ts-product-detail > .productTop > .col6 { width:auto; float:none; min-width:0; padding:0; }
.ts-product-detail .productDetails { padding:0; }
.ts-product-detail .ts-product-heading h1 { margin:7px 0 24px; font-size:32px; line-height:1.25; color:#194b36; overflow-wrap:anywhere; }
.ts-product-eyebrow { color:#007f4c; font-size:13px; font-weight:600; }
.ts-product-buybox { background:#f5faf7; border:1px solid #dce9e1; padding:28px; border-radius:16px; }
.ts-product-buybox .stock { font-size:14px; margin:0 0 14px; }
.ts-product-detail #productMainPrice { font-size:32px; line-height:1.25; margin:0; padding:0; color:#00834d; font-weight:700; }
.ts-product-detail #productMainPrice .priceOld { display:inline-block; font-size:18px; color:#7a897f; font-weight:400; margin-right:10px; }
.ts-product-tax { margin:5px 0 22px; color:#708478; font-size:13px; }
.ts-product-options { display:grid; gap:14px; }
.ts-product-detail .ts-product-option { border:0; padding:0; margin:0; min-width:0; }
.ts-product-detail .ts-product-option legend { color:#30513e; font-size:15px; font-weight:600; margin:0 0 7px; padding:0; }
.ts-product-detail .ts-product-option select { width:100%; height:48px; border:1px solid #cddfd4; border-radius:8px; background-color:white; color:#28533f; padding:10px 12px; font:inherit; }
.ts-product-detail .ts-product-option select[hidden] { display:none; }
.ts-product-detail .ts-product-option.is-fixed { display:flex; justify-content:space-between; gap:16px; padding:11px 0; border-bottom:1px solid #dce9e1; }
.ts-product-detail .ts-product-option.is-fixed legend { float:left; margin:0; font-weight:400; color:#667e70; }
.ts-product-fixed-value { text-align:right; font-size:15px; font-weight:600; }
.ts-product-selection { font-size:14px; color:#667e70; margin:16px 0; line-height:1.6; }
.ts-product-selection:empty { display:none; }
.ts-product-buy-row { display:flex; align-items:end; gap:12px; margin:24px 0 18px; }
.ts-product-quantity { flex:0 0 74px; color:#526d5e; font-size:13px; }
.ts-product-detail .ts-product-quantity input { width:100%; height:50px; min-height:50px; margin-top:5px; background:#fff; border:1px solid #cddfd4; border-radius:8px; padding:10px; font:inherit; font-size:16px; box-sizing:border-box; }
.ts-product-detail .ts-product-buy-row .webshopBtn { flex:1; width:auto; min-width:0; min-height:50px; padding:13px 16px; background:#009f62; border:0; border-radius:8px !important; color:#fff; font:inherit; font-weight:600; cursor:pointer; }
.ts-product-detail .ts-product-buy-row .webshopBtn:hover { background:#008451; }
.ts-product-detail .ts-product-buy-row .webshopBtn:disabled { background:#e1e8e3; color:#728378; cursor:not-allowed; }
.ts-product-detail .ts-product-favorite { font-size:14px; color:#537360; display:inline-flex; gap:8px; align-items:center; }
.ts-product-service { padding:24px 2px; }
.ts-product-service > div { display:flex; gap:12px; margin-bottom:14px; }
.ts-product-service > div > span { color:#009f62; font-weight:700; }
.ts-product-service p { font-size:14px; color:#718377; line-height:1.6; margin:0; }
.ts-product-service strong { display:block; color:#30543e; font-weight:600; }
.ts-product-service a { font-size:14px; color:#00834d; text-decoration:underline; text-underline-offset:4px; }
.ts-product-facts { border-top:1px solid #e1eae4; margin:0; padding-top:8px; }
.ts-product-facts > div { display:flex; justify-content:space-between; gap:20px; padding:10px 0; font-size:14px; }
.ts-product-facts dt { color:#708478; }.ts-product-facts dd { margin:0; text-align:right; }
.ts-product-detail :is(input,select,a):focus-visible { outline:2px solid #00834d; outline-offset:3px; }
.ts-product-detail .product-nav { border-top:1px solid #e1eae4; border-bottom:1px solid #e1eae4; padding:15px 0; }
.ts-product-detail .product-nav ul { display:flex; gap:24px; flex-wrap:wrap; margin:0; padding:0; list-style:none; }
.ts-product-detail .product-nav a { font-size:15px; color:#28533f; }
@media(min-width:1000px) { .ts-product-detail .productPhotoGallery-main { max-height:600px; } }
@media(max-width:900px) { .ts-product-detail > .productTop { gap:24px; }.ts-product-buybox { padding:22px; } }
@media(max-width:670px) { .ts-product-detail > .productTop { grid-template-columns:minmax(0,1fr); gap:20px; }.ts-product-detail .ts-product-heading h1 { font-size:28px; margin-bottom:20px; }.ts-product-buybox { padding:20px; }.ts-product-detail #productMainPrice { font-size:30px; }.ts-product-detail .ts-product-buy-row .webshopBtn { font-size:15px; }.ts-product-detail .ts-product-option select { font-size:16px; } }
