/* ================================
   Cookie Banner แบบเต็มจอ (100%) + Footer Style
================================ */

/* ---------- พื้นฐาน ---------- */
.cookie-text{ width:100%; max-width:100%; text-align:start; }
.cookie-title{ font-size:1.05rem; font-weight:700; margin:0 0 4px; }
.cookie-body{ font-size:.92rem; line-height:1.5; margin:0 0 6px; }

/* ---------- Cookie Banner: Glass + Full Width ---------- */
.cookie-banner{
  position: fixed;
  left: 0; right: 0; bottom: 0;
  z-index: 1090;
  display: flex; justify-content: center; align-items: flex-end;
  width: 100%;
  background: rgba(0, 0, 0, 0.15);
  backdrop-filter: blur(6px);
  pointer-events: none; /* ไม่บังการคลิกด้านหลัง */
}
.cookie-inner{
  width: 100%; max-width: 100%;
  background: rgba(255,255,255,0.8);
  backdrop-filter: blur(12px);
  border-top: 1px solid rgba(255,255,255,0.7);
  border-radius: 0;
  box-shadow: 0 -4px 20px rgba(0,0,0,0.15);
  padding: 18px 20px;
  display: flex; align-items: flex-start; gap: 16px;
  transition: all .25s ease;
  pointer-events: auto; /* รับคลิกได้ */
}
.cookie-text{ flex:1 1 auto; color:#222; }
.cookie-link{ text-decoration: underline; color:#004f2e; }
.cookie-actions{ flex:0 0 auto; display:flex; align-items:center; gap:8px; }
.cookie-btn-accept{
  border: 1px solid #005825; background:#005825; color:#fff;
  border-radius: 999px; padding:10px 20px; font-size:15px; font-weight:700; cursor:pointer;
  transition: all .2s ease;
}
.cookie-btn-accept:hover{ transform: translateY(-1px); box-shadow: 0 4px 12px rgba(0,0,0,0.15); }
.cookie-btn-accept:focus{ outline: 3px solid rgba(0,88,37,.25); outline-offset: 2px; }

@media (max-width: 767.98px){
  .cookie-inner{
    flex-direction: column; align-items:center; text-align:center;
    padding: 18px 14px calc(20px + env(safe-area-inset-bottom));
    margin-bottom: 6px;
  }
  .cookie-actions{ justify-content:center; }
  .cookie-btn-accept{ font-size:16px; padding:10px 24px; }
}

/* ---------- Misc ---------- */
#scrollUp{
  background:#79a206; bottom:7rem; color:#fff; cursor:pointer; display:none;
  font-size:20px; height:45px; width:45px; line-height:39px; position:fixed; right:12px;
  text-align:center; z-index:9999; border-radius:50%; border:2px solid #fff; transition:.3s;
}
@media (max-width:767px){ #scrollUp{ display:none!important; } }

.box_line_footer_mobile{ display:none; }
.box_line_footer_pc{ display:block; }
@media (max-width:600px){
  .box_line_footer_mobile{ display:block; }
  .box_line_footer_pc{ display:none; }
}

@media (max-width:767px){
  .widgets_container.widget_menu,
  .widgets_container{ margin-bottom:10px; }
}

.footer_menu{ font-size:20px; }
.footer_menu p{ margin-bottom:4px!important; }
.footer_menu a{ line-height:1.4; }

.widgets_container .icon{ width:30px!important; }
.widgets_container table td{ padding:3px!important; }

@media (max-width:991px){
  .mobile-action-bar .add-to-cart-btn{ font-size:1.4rem; padding:12px 14px; }
  .slick-slider{ margin-top:15px; }
}
.modal-product-info .info-text .modal-product-title{ font-size:1.25rem; }
.modal-product-info .info-text .modal-product-price{ font-size:1.35rem; }
.quantity-options-modal .option-item .option-label,
.quantity-options-modal .option-item .option-price{ font-size:1.1rem; }

.footer_bottom{
  padding:.3rem 0!important;
  background:#fafafa; border-top:0px solid #eee;
}
@media (max-width:767px){ .footer_bottom{ text-align:left; padding:.6rem 0; } }
.copyright-text{ font-size:13.5px; color:#555; margin:0; }
.footer-logo{ width:22px; height:auto; margin-left:6px; opacity:.9; transition:.3s; vertical-align:middle; }
.footer-logo:hover{ opacity:1; transform:scale(1.05); }
.footer-logo-link{ display:inline-flex; align-items:center; }

.footer-line-row{ background-color:#15b167; padding:.45rem 0; }
.footer-line-text{ font-size:15px; font-weight:600; color:#fff; margin:0; line-height:1.35; }
.footer-line-text span{ font-weight:400; opacity:.9; }
.footer-line-logo{ max-width:56px; height:auto; filter:drop-shadow(0 1px 2px rgba(0,0,0,.2)); transition:.3s; opacity:.95; }
.footer-line-logo:hover{ opacity:1; transform:scale(1.04); }
.btn-line{
  background:#fff; color:#15b167; font-weight:600; font-size:14px;
  padding:.35rem .9rem; border-radius:999px; text-decoration:none;
  box-shadow:0 2px 4px rgba(0,0,0,.1); transition:.3s;
}
.btn-line:hover{ background:#f8f8f8; transform:translateY(-1px); }
@media (max-width:767px){
  .footer-line-text{ font-size:14px; text-align:center; }
  .footer-line-row{ flex-direction:column; text-align:center; }
  .footer-line-logo{ display:none; }
}
@media (min-width:992px){
  .footer-line-row{ padding:1rem 0; }
  .footer-line-text{ font-size:18px; line-height:1.45; }
  .footer-line-logo{ max-width:84px; }
}

.footer_top{
  padding:10px 10px 10px !important;
  border-top:0 !important; border-bottom:0 !important;
}
.footer_top .row{ align-items:flex-start !important; }
.footer_top .col-lg-4,
.footer_top .col-md-12,
.footer_top .col-sm-12{ display:flex; align-items:flex-start; }
.footer_top .widgets_container{ display:flex; flex-direction:column; justify-content:flex-start; }
.footer_top .widgets_container h2{ margin-top:0 !important; margin-bottom:.4rem; }
.footer_top .widgets_container p{ margin-top:.25rem; }

:root{ --action-bar-h: 64px; }
@media (max-width:767px){
  body{ padding-bottom: calc(var(--action-bar-h) + env(safe-area-inset-bottom)); }
  .footer_widgets, .footer_bottom, .box_line_footer, .box_line_footer_mobile{
    scroll-margin-bottom: calc(var(--action-bar-h) + 16px);
  }
  .mobile-action-bar{
    position:fixed; left:0; right:0; bottom:0; z-index:1000;
    transition: transform .25s ease, opacity .2s ease;
  }
  .mobile-action-bar.is-hidden,
  .action-bar.is-hidden,
  [data-sticky="action-bar"].is-hidden{
    transform: translateY(110%); opacity:0; pointer-events:none;
  }
  #footer_papd.footer_papd{
    bottom: calc(var(--action-bar-h) + env(safe-area-inset-bottom));
    z-index:1002;
  }
}
@media (min-width:768px){
  body{ padding-bottom:0; }
  #footer_papd.footer_papd{ bottom:0; }
}
@media (max-width: 767px){
  .footer-line-row .col-sm-6{ text-align:center !important; }
  .btn-line{ display:inline-flex; margin:.4rem auto 0; }
}
@media (max-width: 767px){
  .footer_top .row{ justify-content: center !important; }
  .footer_top .col-lg-4,
  .footer_top .col-md-12,
  .footer_top .col-sm-12{
    display: flex; align-items: center; justify-content: center;
  }
  .footer_top .widgets_container{
    display:flex; flex-direction:column; align-items:center; text-align:center; width:100%;
  }
  .footer_top .widgets_container p,
  .footer_top .widgets_container .footer_menu p{ text-align: center; }
  .footer_top .widgets_container table{ margin-left:auto; margin-right:auto; }
}

/* ปุ่มหัวข้อ + ไอคอนหมุน */
.footer-section-toggle{
  display:inline-flex; align-items:center; gap:6px;
  background:transparent; border:0; border-radius:0;
  padding:6px 0; margin:0 0 6px 0;
  font: inherit; font-weight:700; font-size:18px; color:#212529;
  cursor:pointer; position:relative; pointer-events:auto;
  -webkit-tap-highlight-color: transparent; touch-action: manipulation;
}
.footer-section-toggle:focus{ outline:none; }
.footer-section-toggle .toggle-icon{ transition: transform .25s ease; pointer-events:none; }
.footer-section-toggle[aria-expanded="true"] .toggle-icon{ transform: rotate(180deg); }
.footer-section-body{ margin-top:8px; }

@media (max-width: 991.98px){
  #policyBlock, #companyBlock{ text-align:center; }
  .footer-section-toggle{ margin-left:auto; margin-right:auto; }
  #policyMenu .footer_menu p{ margin-bottom:.35rem !important; }
}
#companyAddr, #policyMenu{
  background:transparent !important; border:0 !important; box-shadow:none !important; padding:0 !important;
}

/* ===== จบไฟล์ ===== */
@media (max-width: 767.98px){
  .cookie-title{ font-size:1rem; }
  .cookie-body{ font-size:.9rem; }
  .cookie-inner{ padding:16px 12px calc(16px + env(safe-area-inset-bottom)); }
}