/* Cherish theme for shop2 — warm cream / taupe / pastel */
:root{--ch-taupe:#8C6F60;--ch-taupe-d:#6E5446;--ch-cream:#FFF8F0;--ch-cream2:#F7EDE3;--ch-pink:#F6D6D6;--ch-mint:#DCEFE4;--ch-butter:#FCEBC0;--ch-sky:#DCE9F5;--ch-text:#4A3B34;--ch-muted:#8D7B70;
 --bs-primary:#8C6F60;--bs-primary-rgb:140,111,96;--bs-link-color:#8C6F60;--bs-link-color-rgb:140,111,96;--bs-link-hover-color:#6E5446;--bs-body-color:#4A3B34;--bs-body-bg:#FFF8F0}
body,.o_footer,#wrapwrap{font-family:'Noto Sans TC',-apple-system,BlinkMacSystemFont,'PingFang TC','Microsoft JhengHei',sans-serif !important;color:var(--ch-text);background:var(--ch-cream)}
#wrapwrap main,#wrapwrap{background:var(--ch-cream)}
h1,h2,h3,h4,h5,.h1,.h2,.h3{font-family:'Noto Sans TC',sans-serif;font-weight:700;color:var(--ch-text)}
.ch-script{font-family:'Great Vibes',cursive;color:var(--ch-taupe);line-height:1}
a{color:var(--ch-taupe)} a:hover{color:var(--ch-taupe-d)}
.btn-primary,.btn-primary:focus{background:var(--ch-taupe)!important;border-color:var(--ch-taupe)!important;color:#fff!important;border-radius:999px}
.btn-primary:hover{background:var(--ch-taupe-d)!important;border-color:var(--ch-taupe-d)!important}
.btn-secondary,.btn-outline-primary{border-radius:999px}
.btn-outline-primary{color:var(--ch-taupe)!important;border-color:var(--ch-taupe)!important}
.text-primary{color:var(--ch-taupe)!important}.bg-primary{background:var(--ch-taupe)!important}
.badge.bg-primary,.o_wsale_my_cart .badge,.my_cart_quantity{background:var(--ch-pink)!important;color:var(--ch-taupe-d)!important}
header#top,header#top .navbar,#top .o_header_standard{background:#fff!important;box-shadow:0 2px 12px rgba(140,111,96,.08)}
header#top .navbar-brand img,header#top .navbar-brand.logo img{max-height:46px}
header#top .nav-link{color:var(--ch-text)!important;font-weight:500}
header#top .nav-link:hover,header#top .nav-link.active{color:var(--ch-taupe)!important}
.form-control,.form-select{border-radius:12px;border-color:#E6D8CC}
.card,.oe_product_cart,.o_wsale_product_grid_wrapper .card{border-radius:18px!important;border-color:#F0E4D8!important;overflow:hidden}
/* shop grid: 2 cols mobile, 4 desktop */
@media (max-width:767.98px){#o_wsale_products_grid{--o-wsale-ppr:2!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}#o_wsale_products_grid>*{grid-column:auto!important;grid-row:auto!important}}
/* components */
.ch-page{background:var(--ch-cream);padding-bottom:24px}
.ch-btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;font-weight:700;padding:10px 20px;text-decoration:none!important;transition:.15s;white-space:nowrap}
.ch-btn-main{background:var(--ch-taupe);color:#fff!important}.ch-btn-main:hover{background:var(--ch-taupe-d)}
.ch-btn-soft{background:var(--ch-pink);color:var(--ch-taupe-d)!important}
.ch-btn-ghost{background:rgba(255,255,255,.85);color:var(--ch-taupe)!important;border:1.5px solid var(--ch-taupe)}
.ch-btn.disabled{background:#CFC4BB;pointer-events:none}
.ch-hero{position:relative;overflow:hidden;min-height:340px;display:flex;align-items:center}
.ch-hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:70% center}
.ch-hero-text{position:relative;max-width:1140px;width:100%;margin:0 auto;padding:40px 22px}
.ch-hero-text .ch-script{font-size:4.2rem}
.ch-hero-text h1{font-size:1.6rem;margin:6px 0}
.ch-hero-text p{color:var(--ch-muted);margin:0 0 16px}
.ch-hero-cta{display:flex;gap:10px;flex-wrap:wrap}
@media (max-width:767.98px){.ch-hero{min-height:300px;align-items:flex-end}.ch-hero-bg{object-position:78% center}.ch-hero-text{background:linear-gradient(180deg,rgba(255,248,240,0) 0%,rgba(255,248,240,.92) 38%);padding:90px 18px 22px}.ch-hero-text .ch-script{font-size:3.2rem}.ch-hero-text h1{font-size:1.3rem}}
@media (min-width:992px){.ch-hero{min-height:440px}.ch-hero-text .ch-script{font-size:5.6rem}.ch-hero-text h1{font-size:2.1rem}}
.ch-strip{display:flex;gap:14px;overflow-x:auto;padding:16px 16px 8px;max-width:1140px;margin:0 auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.ch-strip::-webkit-scrollbar{display:none}
@media (min-width:992px){.ch-strip{justify-content:center;gap:26px}}
.ch-hl{flex:0 0 auto;width:76px;text-align:center;text-decoration:none!important;color:var(--ch-text)!important}
.ch-hl-ring{display:block;width:70px;height:70px;margin:0 auto;border-radius:50%;padding:3px;background:linear-gradient(135deg,#E9D3C3,#F6D6D6);}
.ch-hl-ring img{width:100%;height:100%;border-radius:50%;object-fit:cover;background:#fff;border:3px solid #fff}
.ch-hl.active .ch-hl-ring{background:linear-gradient(135deg,var(--ch-taupe),#D9A9A0)}
.ch-hl-label{display:block;font-size:.76rem;margin-top:6px;line-height:1.2;max-height:2.4em;overflow:hidden}
.ch-hl.active .ch-hl-label{color:var(--ch-taupe)!important;font-weight:700}
@media (min-width:992px){.ch-hl{width:92px}.ch-hl-ring{width:84px;height:84px}.ch-hl-label{font-size:.85rem}}
.ch-section{max-width:1140px;margin:0 auto;padding:10px 12px}
.ch-h2{text-align:center;font-size:1.3rem;margin:18px 0 14px}.ch-h2 span{display:block;font-family:'Great Vibes',cursive;color:var(--ch-taupe);font-weight:400;font-size:1.5rem}
.ch-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media (min-width:992px){.ch-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}}
.ch-card{background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 3px 14px rgba(140,111,96,.08);display:flex;flex-direction:column}
.ch-card-img img{width:100%;aspect-ratio:1/1;object-fit:cover;background:var(--ch-cream2);display:block}
.ch-card-body{padding:10px 12px 12px;display:flex;flex-direction:column;gap:6px;flex:1}
.ch-card-name{color:var(--ch-text)!important;font-weight:600;font-size:.92rem;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-decoration:none!important}
.ch-card-price{color:var(--ch-taupe-d);font-weight:800;font-size:1.05rem}
.ch-card-actions{display:grid;gap:6px;margin-top:auto}
.ch-card-actions .ch-btn{padding:9px 8px;font-size:.86rem;width:100%}
.ch-added{background:var(--ch-mint);color:#2F6B4B;border-radius:10px;padding:4px 8px;font-size:.8rem;text-align:center}
.ch-empty{max-width:560px;margin:20px auto;text-align:center;background:#fff;border-radius:18px;padding:28px 18px;color:var(--ch-muted);box-shadow:0 3px 14px rgba(140,111,96,.06)}
.ch-info{max-width:1140px;margin:18px auto 0;padding:0 12px;display:grid;grid-template-columns:1fr;gap:10px}
@media (min-width:768px){.ch-info{grid-template-columns:repeat(3,1fr)}}
.ch-info>div{background:#fff;border-radius:16px;padding:14px 16px;display:flex;flex-direction:column;gap:2px}
.ch-info span{color:var(--ch-muted);font-size:.9rem}
.ch-order{padding-bottom:100px}
.ch-order-head{text-align:center;padding:22px 16px 4px}
.ch-order-head .ch-script{font-size:3rem}.ch-order-head h1{font-size:1.35rem;margin:2px 0}.ch-order-head p{color:var(--ch-muted);margin:0;font-size:.92rem}
.ch-pay-note{text-align:center;color:var(--ch-muted);font-size:.82rem;padding:14px 16px}
.ch-bar{position:fixed;left:0;right:0;bottom:0;z-index:1030;background:#fff;box-shadow:0 -4px 18px rgba(140,111,96,.15);padding:10px 14px calc(10px + env(safe-area-inset-bottom));display:flex;gap:10px;align-items:center;border-radius:18px 18px 0 0}
.ch-bar-sum{flex:1;font-size:.95rem}.ch-bar-sum b{color:var(--ch-taupe-d);font-size:1.1rem}
.ch-bar-go{padding:13px 22px;font-size:1.02rem}
.ch-footer{background:#fff;border-top:1px solid #F0E4D8;padding:28px 0 8px}
.ch-footer-row{display:grid;grid-template-columns:1fr;gap:16px}
@media (min-width:768px){.ch-footer-row{grid-template-columns:2fr 1fr 1fr}}
.ch-footer-logo{font-size:2.6rem}.ch-footer p{color:var(--ch-muted);font-size:.9rem;margin:.3rem 0}
.o_footer_copyright{background:var(--ch-cream2)!important;color:var(--ch-muted)}
/* header CTA: hide original "Contact Us" text node, show LINE label */
a.btn_cta{font-size:0!important}
a.btn_cta .ch-cta-line{font-size:.9rem}
