/*
Theme Name: mivelar-child
Template: storefront
Description: Mivelar landing child theme — design tokens / age gate / cookie / KOL routing / language switcher
Version: 1.0.0
Author: mivelar team
License: Proprietary
Text Domain: mivelar-child
*/

/* style.css 故意留空:所有样式在 assets/css/theme.css 用令牌变量写。
   WordPress 必须有 style.css 才认这是合法主题。 */
/*
Theme Name: Mivelar
Theme URI: https://mivelar.com
Author: Mivelar Brand Team
Author URI: https://mivelar.com
Description: Mivelar 女装跨境电商主题 —「Bougainvillea Editorial」视觉系统。热情而不廉价，极简而不冷漠：拉美的色彩能量，欧洲的剪裁克制。为 WooCommerce + 西/葡/英三语（Polylang/WPML）优化，移动端优先。
Version: 1.0.0
Requires at least: 6.4
Tested up to: 6.7
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: mivelar
Tags: e-commerce, fashion, woocommerce, block-styles, custom-colors, translation-ready
*/

/*
Theme Name: Mivelar
Theme URI: https://mivelar.com
Author: Mivelar Brand Team
Author URI: https://mivelar.com
Description: Mivelar 女装跨境电商主题 —「Bougainvillea Editorial」视觉系统。热情而不廉价，极简而不冷漠：拉美的色彩能量，欧洲的剪裁克制。为 WooCommerce + 西/葡/英三语（Polylang/WPML）优化，移动端优先。
Version: 1.0.0
Requires at least: 6.4
Tested up to: 6.7
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: mivelar
Tags: e-commerce, fashion, woocommerce, block-styles, custom-colors, translation-ready
*/

/* ============================================================
   MIVELAR DESIGN TOKENS v1.0 — 唯一色彩/字体/间距真源
   （与 brand/design-tokens.md、ui-styleguide.html 保持同步）
   ============================================================ */
:root{
  /* Color — Primary: 九重葛玫红 */
  --mivelar-primary:#D6336C;
  --mivelar-primary-hover:#B92A5C;
  --mivelar-primary-active:#9C2450;
  --mivelar-primary-tint:#F9E3EB;
  --mivelar-primary-soft:#F3C9D8;
  /* Secondary — 陶土与琥珀 */
  --mivelar-secondary:#C4553B;
  --mivelar-secondary-hover:#A8452F;
  --mivelar-secondary-tint:#F7E4DD;
  --mivelar-accent:#E8A33D;
  --mivelar-accent-tint:#FBF0DC;
  /* Neutral — 暖调中性（禁纯黑 / 禁冷灰） */
  --mivelar-ink:#2B1F23;
  --mivelar-text-secondary:#6E5F63;
  --mivelar-text-muted:#A2939A;
  --mivelar-bg:#FFFFFF;
  --mivelar-surface:#FAF6F3;
  --mivelar-surface-alt:#F3EDE8;
  --mivelar-border:#E8E0DC;
  --mivelar-on-dark:#FDF9F7;
  /* Semantic */
  --mivelar-success:#1E8E5A; --mivelar-success-tint:#E3F3EB;
  --mivelar-warning:#E8A33D;
  --mivelar-error:#D64545;   --mivelar-error-tint:#FBE7E7;
  --mivelar-info:#2A7F8C;
  --mivelar-sale:#D6336C;
  /* Typography */
  --mivelar-font-heading:'Playfair Display',Georgia,serif;
  --mivelar-font-body:'Montserrat','Helvetica Neue',Arial,sans-serif;
  /* Spacing — 4px base */
  --mivelar-space-3xs:4px;  --mivelar-space-2xs:8px;
  --mivelar-space-xs:12px;  --mivelar-space-sm:16px;
  --mivelar-space-md:24px;  --mivelar-space-lg:32px;
  --mivelar-space-xl:48px;  --mivelar-space-2xl:64px;
  --mivelar-space-3xl:96px;
  /* Radius */
  --mivelar-radius-sm:6px;  --mivelar-radius-md:10px;
  --mivelar-radius-lg:14px; --mivelar-radius-xl:24px;
  --mivelar-radius-pill:999px;
  /* Elevation — warm shadows only */
  --mivelar-shadow-raised:0 2px 8px rgba(43,31,35,.06);
  --mivelar-shadow-floating:0 8px 24px rgba(43,31,35,.10);
  --mivelar-shadow-overlay:0 16px 48px rgba(43,31,35,.16);
  /* Layout */
  --mivelar-container:1280px;
}

/* ============================================================
   基础样式 Base
   ============================================================ */
*,*::before,*::after{box-sizing:border-box}
body{
  font-family:var(--mivelar-font-body);
  font-size:16px;line-height:1.6;
  color:var(--mivelar-ink);
  background:var(--mivelar-bg);
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,.has-playfair-font,.site-title{
  font-family:var(--mivelar-font-heading);
  line-height:1.2; overflow-wrap:break-word; /* 西/葡长词禁止截断 */
}
h1{font-weight:700;font-size:clamp(30px,4.5vw,52px);line-height:1.12;letter-spacing:-.01em}
h2{font-weight:600;font-size:clamp(24px,3vw,30px);line-height:1.25}
h3{font-weight:600;font-size:clamp(19px,2vw,22px);line-height:1.35}
a{color:var(--mivelar-primary)}
a:hover{color:var(--mivelar-primary-hover)}
.container,.wp-block-group.alignwide,.wp-site-blocks>.wp-block-group{
  max-width:var(--mivelar-container);margin-inline:auto;padding-inline:var(--mivelar-space-md);
}
/* Eyebrow — 杂志式小标签 */
.eyebrow,.mivelar-eyebrow{
  font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;
  color:var(--mivelar-primary);
}

/* ============================================================
   按钮 Buttons — pill 体系
   ============================================================ */
button,.button,.wp-block-button__link,
.woocommerce a.button,.woocommerce button.button,
.woocommerce input.button,.woocommerce #respond input#submit,
.add_to_cart_button,.single_add_to_cart_button,.checkout-button{
  display:inline-flex;align-items:center;justify-content:center;
  font-family:var(--mivelar-font-body);font-weight:500;font-size:15px;
  border:none;border-radius:var(--mivelar-radius-pill);
  padding:14px 32px;cursor:pointer;text-decoration:none;
  transition:background .2s,box-shadow .2s;
}
.woocommerce a.button,.woocommerce button.button,
.woocommerce input.button,#respond input#submit{
  background:var(--mivelar-primary);color:#fff!important;
}
.woocommerce a.button:hover,.woocommerce button.button:hover,
.woocommerce input.button:hover,#respond input#submit:hover,
.add_to_cart_button:hover,.single_add_to_cart_button:hover{
  background:var(--mivelar-primary-hover)!important;
  box-shadow:var(--mivelar-shadow-raised);
}
/* 移动端主按钮全宽 */
@media(max-width:639px){
  .single_add_to_cart_button,.woocommerce-AddToCart{width:100%;padding:12px 24px}
}
/* 禁用态 */
button:disabled,.button.disabled{
  background:var(--mivelar-surface-alt)!important;color:#B3A7AD!important;cursor:not-allowed;
}

/* ============================================================
   商品卡 Product Loop — 3:4 图位 + pill 徽章
   ============================================================ */
.woocommerce ul.products li.product,
.wp-block-woocommerce-product-template li.product{
  background:var(--mivelar-bg);
  border:1px solid var(--mivelar-border);
  border-radius:var(--mivelar-radius-lg);
  overflow:hidden;transition:box-shadow .2s;
}
.woocommerce ul.products li.product:hover{box-shadow:var(--mivelar-shadow-raised)}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-family:var(--mivelar-font-heading);font-weight:600;font-size:19px;color:var(--mivelar-ink);
}
.woocommerce ul.products li.product .price{
  font-family:var(--mivelar-font-body);font-weight:700;font-size:16px;color:var(--mivelar-ink);
}
.woocommerce ul.products li.product .price del{
  font-weight:400;font-size:13px;color:var(--mivelar-text-muted);
}
.woocommerce ul.products li.product .price ins{
  text-decoration:none;color:var(--mivelar-primary);
}
/* 3:4 图片容器（配合 functions.php 挂点） */
.mivelar-product-thumb{
  aspect-ratio:3/4;overflow:hidden;border-radius:var(--mivelar-radius-md) var(--mivelar-radius-md) 0 0;background:var(--mivelar-surface);
}
.mivelar-product-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.woocommerce ul.products li.product:hover .mivelar-product-thumb img{transform:scale(1.03)}
/* 商品栅格：移动 2 列 / 平板 3 列 / 桌面 4 列 */
.woocommerce ul.products{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--mivelar-space-sm)}
@media(min-width:640px){.woocommerce ul.products{grid-template-columns:repeat(3,1fr);gap:var(--mivelar-space-md)}}
@media(min-width:1024px){.woocommerce ul.products{grid-template-columns:repeat(4,1fr)}}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none}

/* ============================================================
   WooCommerce 促销徽章 onsale → pill + primary
   ============================================================ */
.woocommerce span.onsale,
.wc-block-components-product-badge.wc-block-components-sale-badge{
  position:absolute;top:12px;left:12px;z-index:2;
  background:var(--mivelar-sale)!important;color:#fff!important;
  font-family:var(--mivelar-font-body);font-size:12px;font-weight:600;letter-spacing:.04em;
  padding:5px 14px;border-radius:var(--mivelar-radius-pill);
  min-width:0;min-height:0;line-height:1.5;margin:0;
}
/* NEW 徽章（上架 14 天内，functions.php 输出）— ink 底白字 pill，位于 onsale 右侧 */
.mivelar-badge-new{position:absolute;top:12px;left:52px;z-index:2;background:var(--mivelar-ink);color:var(--mivelar-on-dark);font-size:12px;font-weight:600;letter-spacing:.04em;padding:5px 14px;border-radius:var(--mivelar-radius-pill);line-height:1.5;}

/* ============================================================
   表单 Forms — 48px 触达高度
   ============================================================ */
input[type="text"],input[type="email"],input[type="search"],
input[type="tel"],input[type="password"],select,textarea,
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea{
  min-height:48px;border:1px solid var(--mivelar-border);
  border-radius:var(--mivelar-radius-sm);
  padding:0 var(--mivelar-space-sm);
  font-family:var(--mivelar-font-body);font-size:15px;color:var(--mivelar-ink);
  background:var(--mivelar-bg);outline:none;transition:border .15s,box-shadow .15s;
}
input:focus,select:focus,textarea:focus{
  border:2px solid var(--mivelar-primary);
  box-shadow:0 0 0 3px var(--mivelar-primary-tint);
}
.woocommerce form .form-row label{font-size:13px;font-weight:500;margin-bottom:6px}
.woocommerce form .form-row.woocommerce-invalid input{border-color:var(--mivelar-error)}
.woocommerce form .form-row .required{color:var(--mivelar-error)}

/* ============================================================
   导航 / 促销条 / Footer
   ============================================================ */
.mivelar-promo-bar{
  background:var(--mivelar-ink);color:var(--mivelar-on-dark);
  text-align:center;font-size:12px;font-weight:500;
  letter-spacing:.06em;text-transform:uppercase;
  padding:9px var(--mivelar-space-sm);
}
.mivelar-promo-bar strong,.mivelar-promo-bar b{color:var(--mivelar-accent);font-weight:600}
.site-header,.wp-block-template-part.header{
  position:sticky;top:0;z-index:200;
  background:rgba(255,255,255,.96);backdrop-filter:blur(8px);
  border-bottom:1px solid var(--mivelar-border);
}
.site-footer,.wp-block-template-part.footer{
  background:var(--mivelar-ink);color:var(--mivelar-on-dark);
}
.site-footer a{color:var(--mivelar-on-dark);opacity:.9}
.site-footer a:hover{color:var(--mivelar-accent);opacity:1}

/* ============================================================
   语言切换器（Polylang/WPML）→ pill chips
   ============================================================ */
.mivelar-lang-switcher,.pll-parent-menu-item ul li,
.wp-block-navigation .pll-parent-menu-item{
  font-size:12px;font-weight:600;
}
.mivelar-lang-switcher a,.lang-item a{
  display:inline-block;padding:6px 14px;border-radius:var(--mivelar-radius-pill);
  border:1px solid var(--mivelar-border);color:var(--mivelar-text-secondary);
  text-decoration:none;margin-right:6px;
}
.mivelar-lang-switcher a.active,.lang-item.current-lang a{
  background:var(--mivelar-ink);color:var(--mivelar-on-dark);border-color:var(--mivelar-ink);
}

/* ============================================================
   星级 / 评价
   ============================================================ */
.woocommerce .star-rating span::before,
.wc-block-components-review-list-item__rating>.wc-block-components-review-list-item__rating__stars span::before{
  color:var(--mivelar-accent);
}

/* ============================================================
   吸底加购栏（移动端）— 配合 functions.php 输出
   ============================================================ */
.mivelar-sticky-buy{
  position:fixed;left:0;right:0;bottom:0;z-index:250;
  background:var(--mivelar-bg);box-shadow:var(--mivelar-shadow-floating);
  padding:10px var(--mivelar-space-sm);
  display:none;align-items:center;gap:var(--mivelar-space-sm);
}
@media(max-width:639px){.mivelar-sticky-buy{display:flex}}
.mivelar-sticky-buy .btn{flex:1}

/* ============================================================
   响应式字号阶梯（§3.2 自动切换）
   ============================================================ */
@media(min-width:640px){h1{font-size:44px}}
@media(min-width:1024px){h1{font-size:52px}}

/* ============================================================
   v2.0 新增区块 · Young Living Style + Designs & Brands
   （对应 front-page.php ⑤b / ⑤c，原型见 website/index.html）
   ============================================================ */
.mivelar-life-grid{
  display:grid;grid-template-columns:repeat(2,1fr);gap:var(--mivelar-space-sm);
}
@media(min-width:1024px){.mivelar-life-grid{grid-template-columns:repeat(4,1fr);gap:var(--mivelar-space-md)}}
.mivelar-life-card{
  position:relative;display:flex;flex-direction:column;justify-content:flex-end;
  aspect-ratio:3/4;border-radius:var(--mivelar-radius-lg);overflow:hidden;
  padding:var(--mivelar-space-md);text-decoration:none;color:#fff;
  background:linear-gradient(160deg,var(--mivelar-surface-alt) 0%,var(--mivelar-primary-soft) 55%,var(--mivelar-primary) 100%);
  transition:.2s;
}
.mivelar-life-card:hover{box-shadow:var(--mivelar-shadow-floating);transform:translateY(-2px)}
.mivelar-life-card .lf-t{font-family:var(--mivelar-font-heading);font-style:italic;font-weight:600;font-size:22px;line-height:1.2}
.mivelar-life-card .lf-c{font-size:12px;line-height:1.5;margin-top:6px;max-width:220px;opacity:.92}

.mivelar-line-grid{grid-template-columns:1fr}
@media(min-width:1024px){.mivelar-line-grid{grid-template-columns:repeat(3,1fr)}}
.mivelar-line-card{
  background:var(--mivelar-bg);border:1px solid var(--mivelar-border);
  border-radius:var(--mivelar-radius-lg);padding:var(--mivelar-space-md);
}
.mivelar-line-card .bract{display:block;width:26px;height:26px;border-radius:50% 0 50% 50%;transform:rotate(45deg);margin-bottom:var(--mivelar-space-2xs)}
.mivelar-line-card h3{font-family:var(--mivelar-font-heading);font-weight:600;font-size:20px}
.mivelar-line-card p{font-size:13.5px;color:var(--mivelar-text-secondary)}
