/* Structured product content and standalone product pages. */
.category-manager{margin-bottom:20px}
.category-manager summary,.specs-editor summary{cursor:pointer;padding:10px 0;font-weight:700}
#category-tree{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}
#category-tree h4{margin:12px 0 6px}
#category-tree ul{padding-left:20px;color:#596d85;line-height:1.9}
.specs-editor{padding:18px 0;border-top:1px solid #dbe5f1;border-bottom:1px solid #dbe5f1;margin-bottom:20px;min-width:0}
.spec-editor-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) auto;gap:8px;margin-bottom:12px;align-items:start}
.spec-editor-row input{min-width:0}
.spec-editor-row button{padding:12px 8px;font-size:13px;min-height:46px}
.shop-catalog .tools{flex-wrap:wrap}
.shop-catalog .tools input{min-width:180px}
.shop-catalog .tools select{flex:1;min-width:160px}
@media(max-width:520px){.spec-editor-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.spec-editor-row button{grid-column:2;justify-self:end;padding:6px 12px;min-height:40px}.specs-editor>button{margin-bottom:10px}.shop-catalog .tools select{max-width:100%;width:100%;min-width:0}}
#product-image-preview.admin-photos{width:100%;height:auto;display:flex;gap:12px;flex-wrap:wrap;margin-bottom:24px}
.admin-photo{display:flex;flex-direction:column;gap:6px;width:130px;border:1px solid #dbe5f1;padding:8px;border-radius:10px}
.admin-photo img{width:100%;height:110px;object-fit:contain}
.admin-photo button{font-size:12px;padding:8px 4px;min-height:40px}
.photo-thumbnails{display:flex;gap:10px;overflow-x:auto;padding:12px 0;margin-bottom:12px;max-width:100%}
.photo-thumbnails button,.photo-thumbnails a{flex:0 0 68px;width:68px;height:68px;padding:3px;border:1px solid #c9d8ea;border-radius:8px;background:white;display:block}
.photo-thumbnails img{width:100%;height:100%;object-fit:contain;border-radius:4px}
.photo-thumbnails button[aria-pressed=true]{border:2px solid #0866d8}
.product-overview>div{min-width:0}
.shop-catalog .product-short{font-size:13px;line-height:1.5;color:#596d85;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0}
.shop-catalog .product-brand{font-size:12px;color:#596d85;line-height:1.4}
.shop-catalog .full-product-link{display:inline-block;color:#0866d8;font-weight:650;padding:12px 0;min-height:44px}
.product-detail .structured-content h3{font-size:16px;margin:20px 0 10px}
.product-detail .structured-content ul{padding-left:22px;line-height:1.75;color:#44536a}
.product-detail .structured-content p{white-space:pre-wrap;overflow-wrap:anywhere}
.spec-table{width:100%;border-collapse:collapse;font-size:14px;margin:12px 0 24px}
.spec-table th,.spec-table td{border-bottom:1px solid #dbe5f1;padding:12px;text-align:left;vertical-align:top;overflow-wrap:anywhere}
.spec-table th{width:35%;font-weight:650;background:#f7faff}
.product-tags{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}
.product-tags span{background:#edf5ff;color:#345c8b;padding:6px 10px;border-radius:20px;font-size:12px;overflow-wrap:anywhere;max-width:100%}
.single-product{background:#fff}
.single-product main{max-width:1080px;padding:20px 24px 60px}
.single-product .breadcrumbs{font-size:13px;margin-bottom:28px}
.single-product .product-overview{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
.single-product h1{font-size:clamp(1.7rem,3.5vw,2.8rem);line-height:1.2;overflow-wrap:anywhere;margin-top:12px}
.product-main-photo{display:block;aspect-ratio:1;width:100%;object-fit:contain;background:#f6f7f9;border-radius:16px;padding:26px}
.single-product .placeholder{display:flex;align-items:center;justify-content:center}
.single-product .page-price{font-size:30px;font-weight:800;color:#102b50;margin:18px 0}
.single-product section{margin-top:32px;max-width:850px}
.single-product section h2{font-size:21px;color:#102b50}
.single-product .text-lines{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}
.single-product li{line-height:1.8;color:#44536a;margin-bottom:6px;overflow-wrap:anywhere}
.single-product .product-brand{font-size:14px}
#product-form small{font-weight:400;color:#596d85;font-size:12px;line-height:1.6;display:block;margin-top:6px}
#product-form input,#product-form textarea{font-size:16px}
@media(max-width:650px){.single-product .product-overview{grid-template-columns:1fr;gap:24px}.single-product main{padding:16px 18px 40px}.single-product .breadcrumbs{margin-bottom:18px}.product-main-photo{max-height:400px}.spec-table th,.spec-table td{padding:10px 8px}}
