/* Lina-hurtownia — helpers for content pages (cart/checkout/account/product-detail).
   Uses the template palette (navy #1a3760, green #5dbf13). Does NOT override theme colors. */
:root { --lina-navy:#1a3760; --lina-green:#5dbf13; --lina-line:#e9edf1; --lina-muted:#6b7a86; }

.lina-section { padding: 34px 0; }
.lina-gray { background: #f6f8fa; }

.page-head { background:#f6f8fa; padding:18px 0; border-bottom:1px solid var(--lina-line); margin-bottom: 24px; }
.page-head h1 { font-size:24px; font-weight:800; color:var(--lina-navy); margin:0; }
.breadcrumb-bar { font-size:13px; color:var(--lina-muted); margin-bottom:4px; }
.breadcrumb-bar a { color:var(--lina-muted); }
.breadcrumb-bar a:hover { color:var(--lina-green); }

.summary-box { background:#fff; border:1px solid var(--lina-line); border-radius:10px; padding:20px; margin-bottom:20px; }
.summary-box h4 { font-weight:800; color:var(--lina-navy); font-size:18px; margin-bottom:16px; }
.summary-row { display:flex; justify-content:space-between; padding:8px 0; font-size:15px; }
.summary-row.total { border-top:2px solid var(--lina-line); margin-top:8px; padding-top:14px; font-size:20px; font-weight:800; color:var(--lina-navy); }
.summary-row.total .amount { color:var(--lina-green); }

.cart-table img { width:64px; height:64px; object-fit:cover; border-radius:6px; }

.qty-box { display:inline-flex; align-items:center; border:1px solid var(--lina-line); border-radius:6px; overflow:hidden; }
.qty-box button { border:0; background:#f1f4f7; width:40px; height:44px; font-size:18px; cursor:pointer; }
.qty-box input { border:0; width:60px; height:44px; text-align:center; font-size:16px; font-weight:700; }

.pd-gallery .main-img { border:1px solid var(--lina-line); border-radius:10px; overflow:hidden; background:#fff; }
.pd-gallery .main-img img { width:100%; height:auto; object-fit:contain; aspect-ratio:1/1; }
.pd-thumbs { display:flex; gap:8px; margin-top:10px; flex-wrap:wrap; }
.pd-thumbs img { width:70px; height:70px; object-fit:cover; border:1px solid var(--lina-line); border-radius:6px; cursor:pointer; }
.pd-thumbs img:hover { border-color:var(--lina-green); }
.pd-info h1 { font-size:26px; font-weight:800; color:var(--lina-navy); }
.pd-price { font-size:30px; font-weight:800; color:#2291ff; }
.pd-unit { color:var(--lina-muted); font-size:14px; }
.pd-meta { list-style:none; padding:0; margin:16px 0; }
.pd-meta li { padding:6px 0; border-bottom:1px dashed var(--lina-line); font-size:14px; }
.pd-meta li b { display:inline-block; min-width:130px; color:var(--lina-navy); }
.pill-info { background:rgba(93,191,19,.10); color:#3d7f0d; border:1px dashed var(--lina-green); padding:10px 14px; border-radius:8px; font-size:13px; }

.shop-sidebar .widget { background:#fff; border:1px solid var(--lina-line); border-radius:10px; margin-bottom:22px; overflow:hidden; }
.shop-sidebar .widget-head { background:var(--lina-navy); color:#fff; padding:12px 16px; font-weight:700; font-size:14px; }
.shop-sidebar .widget-body { padding:12px 16px; }
.shop-sidebar .cat-list { list-style:none; margin:0; padding:0; }
.shop-sidebar .cat-list li a { display:block; padding:7px 0; color:#21313e; font-size:14px; border-bottom:1px dashed var(--lina-line); }
.shop-sidebar .cat-list li:last-child a { border-bottom:0; }
.shop-sidebar .cat-list li a:hover { color:var(--lina-green); padding-left:5px; }
.shop-sidebar .cat-list li.active > a { color:var(--lina-green); font-weight:700; }

/* Section helpers (used by content pages) */
.section { padding:36px 0; }
.section-gray { background:#f6f8fa; }
.section-title { display:flex; align-items:center; justify-content:space-between; margin-bottom:22px; }
.section-title h2 { font-size:22px; font-weight:800; margin:0; color:var(--lina-navy); }
.section-title h2:after { content:""; display:block; width:52px; height:3px; background:var(--lina-green); margin-top:8px; border-radius:2px; }
.section-title .see-all { color:var(--lina-green); font-weight:700; font-size:14px; }
.btn-green { background:var(--lina-green); border-color:var(--lina-green); color:#fff; }
.btn-green:hover { background:#52a911; color:#fff; }
.btn-navy { background:var(--lina-navy); border-color:var(--lina-navy); color:#fff; }
.btn-navy:hover { background:#122a4c; color:#fff; }
.text-green { color:var(--lina-green) !important; }

/* Compact circular category row */
.cat-circle { display:block; text-align:center; }
.cat-circle .circ { width:58px; height:58px; border-radius:50%; object-fit:cover; margin:0 auto 7px; background:#f1f4f7; border:2px solid #eef1f5; transition:.2s; }
.cat-circle:hover .circ { border-color:var(--lina-green); transform:translateY(-3px); }
.cat-circle .nm { font-size:12px; font-weight:700; color:var(--lina-navy); text-transform:uppercase; display:block; line-height:1.2; }

/* ---- Cart drawer (right slide-in), matches the original ---- */
#rightMenu {
    position: fixed; top: 0; right: 0; height: 100%; width: 420px; max-width: 92vw;
    background: #fff; box-shadow: -6px 0 24px rgba(20,32,58,.18); z-index: 100000000;
    overflow-y: auto; padding: 22px 22px 40px;
}
#rightMenu .cart_heading { font-size: 24px; font-weight: 800; color: #1a3760; margin: 0 0 10px; }
#rightMenu > .rightMenu-scroll > button.w3-button {
    position: absolute; top: 16px; right: 16px; width: 34px; height: 34px; border-radius: 50%;
    background: #e0563f; color: #fff; border: 0; font-size: 16px; cursor: pointer; line-height: 1;
    display: flex; align-items: center; justify-content: center;
}
#rightMenu .right-ch-sideBar { padding: 6px 0 0 !important; }
#rightMenu .drawer-item { display: flex; gap: 14px; padding: 14px 0; border-bottom: 1px solid var(--lina-line); }
#rightMenu .drawer-item > img { width: 90px; height: 90px; object-fit: cover; border-radius: 6px; flex: 0 0 90px; }
#rightMenu .drawer-item-body { flex: 1; }
#rightMenu .drawer-item-name { font-size: 15px; font-weight: 700; color: #21313e; margin-bottom: 6px; }
#rightMenu .drawer-attr { font-size: 13px; color: #45526b; margin-bottom: 4px; }
#rightMenu .drawer-attr strong { color: #1a3760; }
#rightMenu .attr-chip { border: 1px solid var(--lina-line); border-radius: 5px; padding: 1px 8px; font-size: 12px; }
#rightMenu .drawer-qty { font-size: 14px; color: #6b7a86; margin: 6px 0; }
#rightMenu .drawer-row { display: flex; align-items: center; justify-content: space-between; margin-top: 6px; }
#rightMenu .drawer-trash { background: none; border: 0; color: #e0563f; font-size: 18px; cursor: pointer; padding: 0; }
#rightMenu .drawer-line-total { font-size: 17px; font-weight: 800; color: #1a3760; }
#rightMenu .drawer-subtotal { display: flex; justify-content: space-between; align-items: center; background: #f0f2f5; border-radius: 6px; padding: 14px 16px; margin: 22px 0 16px; font-weight: 800; color: #1a3760; }
#rightMenu .drawer-subtotal .amount { font-size: 22px; color: #1a3760; }
#rightMenu .drawer-viewbtn { padding: 12px; font-weight: 700; letter-spacing: .5px; text-transform: uppercase; }
