/* =========================================
   JR Enterprise Core v5.0 - 專業樣式表
   ========================================= */

/* --- 1. 隱藏作者與日期 (Astra) --- */
.single-jr_portfolio .entry-header .entry-meta,
.single-jr_product .entry-header .entry-meta,
.post-type-archive-jr_portfolio .entry-meta,
.post-type-archive-jr_product .entry-meta { display: none !important; }

/* --- 2. 列表卡片 (Archive) --- */
.post-type-archive-jr_portfolio article, 
.post-type-archive-jr_product article {
    background: transparent !important; box-shadow: none !important; border: none !important;
    text-align: center; margin-bottom: 40px; padding-bottom: 20px;
}
.ast-article-post .post-thumb img { width: 100%; height: 280px; object-fit: cover; transition: 0.5s; }
.ast-article-post:hover .post-thumb img { transform: scale(1.05); }
.entry-title { font-size: 1.2rem !important; color: #333; margin-bottom: 15px !important; }
.entry-title a { color: #444; text-decoration: none; }

/* --- 3. 實績列表三欄 (Grid Info) --- */
.jr-grid-info { display: flex; justify-content: center; border-top: 1px solid #eee; padding-top: 15px; margin-top: 15px; }
.jr-col { flex: 1; display: flex; flex-direction: column; align-items: center; border-right: 1px solid #eee; padding: 0 5px; }
.jr-col:last-child { border-right: none; }
.jr-lbl { font-size: 13px; color: #999; margin-bottom: 6px; }
.jr-val { font-size: 14px; color: #333; font-weight: 500; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; max-width: 100%; }

/* --- 4. 產品列表價格 --- */
.jr-price-box { display: flex; justify-content: center; gap: 10px; margin-top: 15px; padding-top: 15px; border-top: 1px solid #eee; }
.jr-p-org { color: #999; text-decoration: line-through; font-size: 0.9rem; }
.jr-p-sale { color: #e63946; font-size: 1.2rem; font-weight: 700; }
.jr-p-reg { color: #333; font-size: 1.1rem; font-weight: 600; }
.jr-p-hide { color: #666; font-style: italic; }

/* --- 5. 單頁佈局 (70/30) --- */
.jr-prod-layout { display: flex; flex-wrap: wrap; gap: 30px; margin-bottom: 30px; }
.jr-left { flex: 0 0 calc(70% - 15px); max-width: calc(70% - 15px); }
.jr-right { flex: 0 0 calc(30% - 15px); max-width: calc(30% - 15px); }
@media(max-width:921px){ .jr-left, .jr-right{ flex: 0 0 100%; max-width: 100%; } }

/* --- 6. 輪播 (Slider) --- */
.jr-slider { position: relative; width: 100%; overflow: hidden; border-radius: 8px; background: #000; }
.jr-track { display: flex; transition: 0.5s; width: 100%; }
.jr-slide { min-width: 100%; display: flex; justify-content: center; background: #f4f4f4; }
.jr-slide img { width: 100%; height: 450px; object-fit: contain; display: block; }
.jr-prev, .jr-next { position: absolute; top: 50%; transform: translateY(-50%); background: rgba(0,0,0,0.4); color: #fff; border: none; font-size: 24px; padding: 10px 15px; cursor: pointer; }
.jr-prev{left:10px;} .jr-next{right:10px;}
.jr-dots { position: absolute; bottom: 15px; left: 50%; transform: translateX(-50%); display: flex; gap: 8px; }
.jr-dot { width: 10px; height: 10px; background: rgba(255,255,255,0.5); border-radius: 50%; cursor: pointer; }
.jr-dot.active { background: #fff; transform: scale(1.2); }
.jr-no-img { background:#eee; height:300px; display:flex; align-items:center; justify-content:center; border-radius:8px; color:#999; }

/* --- 7. 單頁資訊框 (Info Box) --- */
.jr-info-box { background: #fff; border: 2px solid #eee; padding: 25px; border-radius: 8px; margin-bottom: 30px; }
.jr-box-title { font-size: 1.2rem; border-bottom: 1px solid #e0e0e0; padding-bottom: 10px; margin-bottom: 15px; }
.jr-info-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 15px; }
.jr-spec-item { display: inline-flex; align-items: center; background: #fff; padding: 10px; border: 1px solid #eee; font-size: 14px; }
.jr-spec-item .dashicons { margin-right: 6px; color: #999; }

/* 產品右側詳情 */
.jr-price-row { font-size: 1.5rem; margin-bottom: 20px; padding-bottom: 15px; border-bottom: 1px dashed #ddd; }
.jr-details { list-style: none; padding: 0; margin: 0; }
.jr-details li { margin-bottom: 10px; font-size: 15px; color: #555; }
.jr-pay { display: block !important; background: #fdfdfd; padding: 10px; border-left: 3px solid #17a2b8; margin-top: 15px; }

/* --- 8. 實績對比圖 --- */
.jr-compare-sec { margin: 30px 0; }
.jr-compare-grid { display: flex; gap: 20px; flex-wrap: wrap; }
.jr-cmp-item { flex: 1; min-width: 300px; position: relative; }
.jr-cmp-item img { width: 100%; border-radius: 4px; border: 1px solid #ddd; }
.jr-tag-b, .jr-tag-a { position: absolute; top: 10px; left: 10px; padding: 5px 10px; color: #fff; font-size: 12px; font-weight: bold; border-radius: 3px; }
.jr-tag-b { background: rgba(0,0,0,0.6); } .jr-tag-a { background: #c76c45; }

/* --- 9. 返回按鈕 --- */
.jr-btns { margin-top: 40px; padding-top: 20px; border-top: 1px solid #eee; display: flex; gap: 15px; }
.jr-btn { padding: 10px 20px; text-decoration: none; border-radius: 4px; font-size: 14px; transition: 0.3s; }
.jr-btn-out { border: 1px solid #ccc; color: #555; }
.jr-btn-out:hover { border-color: #333; color: #333; }
.jr-btn-pri { background: #333; color: #fff; border: 1px solid #333; }
.jr-btn-pri:hover { background: #555; }