/*
Theme Name:   Live Life with Vicky
Theme URI:    https://livelifewithvicky.com
Description:  Blocksy Child Theme — Live Life with Vicky
Author:       Vicky Chou
Template:     blocksy
Version:      3.0.0
Text Domain:  livelife
*/

/* =====================================================
   BRAND TOKENS — 從 Logo 提取
   ===================================================== */
:root {
  --mint:       #C8E6C0;
  --mint-mid:   #8FC98A;
  --mint-deep:  #5A9E6A;
  --sand:       #C4A882;
  --sand-mid:   #A8896A;
  --sand-deep:  #8B6E52;
  --dark:       #3D3530;
  --charcoal:   #5A5654;
  --body-c:     #6B6460;
  --cream:      #FAF8F5;
  --cream-mid:  #F3EFE9;
  --white:      #FFFFFF;
  --border:     #E8E2D9;
  --tag-bg:     #EFF7ED;

  /* Blocksy 色板對應 */
  --theme-palette-color-1: #5A9E6A;
  --theme-palette-color-2: #A8896A;
  --theme-palette-color-3: #3D3530;
  --theme-palette-color-4: #6B6460;
  --theme-palette-color-5: #F3EFE9;
  --theme-palette-color-6: #E8E2D9;
  --theme-palette-color-7: #C8E6C0;
  --theme-palette-color-8: #FAF8F5;
}

/* =====================================================
   GLOBAL
   ===================================================== */
body {
  background-color: var(--cream) !important;
  color: var(--body-c);
  font-family: 'Noto Serif TC', Georgia, serif;
  -webkit-font-smoothing: antialiased;
  line-height: 1.8;
}

h1, h2, h3, h4, h5, h6,
.entry-title,
.page-title {
  font-family: 'Cormorant Garamond', 'Noto Serif TC', serif !important;
  color: var(--dark);
  font-weight: 600;
  line-height: 1.25;
  letter-spacing: .01em;
}

a {
  color: var(--sand-mid);
  text-decoration: none;
  transition: color .2s;
}
a:hover { color: var(--mint-deep); }

/* =====================================================
   HEADER — 覆蓋 Blocksy 預設樣式
   ===================================================== */
#header,
.header-wrapper,
[data-id="header"] {
  background: var(--white) !important;
  border-bottom: 1px solid var(--border) !important;
}

/* Logo 文字 */
.site-title,
.ct-site-title,
.ct-logo-text {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 1.4rem !important;
  font-weight: 600 !important;
  color: var(--dark) !important;
  letter-spacing: .04em;
  line-height: 1.15;
}

/* 導覽選單 */
.ct-menu > li > a,
[data-id="menu"] ul li a {
  font-family: 'Noto Sans TC', sans-serif !important;
  font-size: .82rem !important;
  letter-spacing: .07em;
  color: var(--charcoal) !important;
  transition: color .2s;
}
.ct-menu > li > a:hover,
[data-id="menu"] ul li a:hover,
.ct-menu > li.current-menu-item > a {
  color: var(--mint-deep) !important;
}

/* Dropdown 選單 */
.ct-main-header-menu .sub-menu,
[data-id="menu"] .sub-menu {
  background: var(--white) !important;
  border: 1px solid var(--border) !important;
  border-radius: 4px !important;
  box-shadow: 0 8px 32px rgba(61,53,48,.1) !important;
}
.ct-main-header-menu .sub-menu li a,
[data-id="menu"] .sub-menu li a {
  font-size: .82rem !important;
  color: var(--charcoal) !important;
  padding: .45rem 1.2rem !important;
}
.ct-main-header-menu .sub-menu li a:hover,
[data-id="menu"] .sub-menu li a:hover {
  color: var(--mint-deep) !important;
  background: var(--tag-bg) !important;
}

/* =====================================================
   HERO 區塊 (首頁用 Blocksy Full-Width Cover Block)
   ===================================================== */
.wp-block-cover,
.wp-block-cover__inner-container {
  font-family: 'Cormorant Garamond', 'Noto Serif TC', serif;
}
.wp-block-cover h1,
.wp-block-cover h2 {
  font-family: 'Cormorant Garamond', 'Noto Serif TC', serif !important;
  font-weight: 600 !important;
  letter-spacing: .01em;
  text-shadow: 0 1px 12px rgba(245,237,210,.8);
}

/* =====================================================
   BUTTONS — 全站按鈕樣式
   ===================================================== */
.wp-block-button__link,
.ct-button,
button[type="submit"],
.button {
  font-family: 'Noto Sans TC', sans-serif !important;
  font-size: .78rem !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  border-radius: 2px !important;
  transition: all .25s !important;
}

/* 主要按鈕（沙棕）*/
.wp-block-button.is-style-fill .wp-block-button__link,
.ct-button {
  background: var(--sand-mid) !important;
  color: #fff !important;
  border: none !important;
}
.wp-block-button.is-style-fill .wp-block-button__link:hover,
.ct-button:hover {
  background: var(--sand-deep) !important;
  transform: translateY(-2px);
}

/* 次要按鈕（薄荷）*/
.wp-block-button.is-style-outline .wp-block-button__link {
  background: transparent !important;
  border: 1px solid var(--border) !important;
  color: var(--dark) !important;
}
.wp-block-button.is-style-outline .wp-block-button__link:hover {
  border-color: var(--mint-deep) !important;
  color: var(--mint-deep) !important;
}

/* =====================================================
   POST CARDS — Blocksy 文章卡片
   ===================================================== */
.ct-post-card,
.ct-archive-post,
article.ct-post {
  border: 1px solid var(--border) !important;
  border-radius: 4px !important;
  overflow: hidden;
  background: var(--white) !important;
  transition: transform .3s, box-shadow .3s;
}
.ct-post-card:hover,
.ct-archive-post:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 10px 32px rgba(61,53,48,.1) !important;
}

/* 文章標題 */
.ct-post-card .entry-title,
.ct-archive-post .entry-title,
h2.entry-title, h1.entry-title {
  font-family: 'Cormorant Garamond', 'Noto Serif TC', serif !important;
  color: var(--dark) !important;
  font-weight: 600 !important;
  line-height: 1.35;
}
.entry-title a { color: inherit !important; }
.entry-title a:hover { color: var(--mint-deep) !important; }

/* 文章分類標籤 */
.ct-tax-badges .ct-tax-badge,
.cat-links a,
.ct-category-badge {
  font-family: 'Noto Sans TC', sans-serif !important;
  font-size: .65rem !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  background: var(--white) !important;
  color: var(--mint-deep) !important;
  border-radius: 2px !important;
  padding: .22rem .6rem !important;
}

/* 文章日期、Meta */
.ct-meta-date, .ct-meta, .posted-on,
.entry-meta, .ct-post-date {
  font-family: 'Noto Sans TC', sans-serif !important;
  font-size: .72rem !important;
  color: var(--charcoal) !important;
  letter-spacing: .04em;
}

/* 文章摘要 */
.entry-summary, .ct-excerpt {
  font-size: .85rem !important;
  color: var(--body-c) !important;
  line-height: 1.7 !important;
}

/* =====================================================
   ARCHIVE / CATEGORY 頁面橫幅
   ===================================================== */
.ct-archive-header,
.page-header,
.archive-header {
  background: var(--cream-mid) !important;
  padding: 3rem 2rem !important;
  text-align: center;
  border-bottom: 1px solid var(--border) !important;
}
.ct-archive-header .page-title,
.archive-title {
  font-family: 'Cormorant Garamond', 'Noto Serif TC', serif !important;
  font-size: clamp(1.8rem, 4vw, 3rem) !important;
  color: var(--dark) !important;
}

/* =====================================================
   SINGLE POST 文章頁
   ===================================================== */
.single .entry-content,
.single-post .entry-content {
  font-size: 1.02rem;
  line-height: 1.92;
  color: var(--body-c);
}

.single .entry-content h2 {
  border-left: 3px solid var(--mint-deep);
  padding-left: .7rem;
  margin: 2.8rem 0 .9rem;
}
.single .entry-content h3 {
  margin: 2rem 0 .7rem;
}
.single .entry-content blockquote {
  border-left: 3px solid var(--sand);
  padding: .9rem 1.4rem;
  background: var(--cream-mid);
  border-radius: 0 4px 4px 0;
  font-style: italic;
  color: var(--charcoal);
  margin: 2rem 0;
}
.single .entry-content img {
  border-radius: 4px;
  margin: 1.5rem 0;
}

/* Tags */
.tags-links a,
.wp-block-tag-cloud a {
  background: var(--tag-bg) !important;
  color: var(--mint-deep) !important;
  border: 1px solid var(--mint) !important;
  font-family: 'Noto Sans TC', sans-serif !important;
  font-size: .72rem !important;
  letter-spacing: .07em !important;
  padding: .28rem .8rem !important;
  border-radius: 2px !important;
  text-decoration: none !important;
  transition: all .2s !important;
}
.tags-links a:hover {
  background: var(--mint-deep) !important;
  color: #fff !important;
}

/* =====================================================
   SIDEBAR
   ===================================================== */
.ct-sidebar .widget-title,
.sidebar .widget-title,
aside .widget-title {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 1.05rem !important;
  font-weight: 600 !important;
  color: var(--dark) !important;
  padding-bottom: .45rem !important;
  border-bottom: 2px solid var(--mint) !important;
  margin-bottom: 1rem !important;
}

/* 搜尋框 */
.search-form .search-field {
  border: 1px solid var(--border) !important;
  border-radius: 2px !important;
  font-family: 'Noto Serif TC', serif !important;
  background: var(--cream) !important;
  padding: .52rem .7rem !important;
}
.search-form .search-submit {
  background: var(--sand-mid) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 0 2px 2px 0 !important;
}

/* 分類列表 */
.widget_categories ul li a,
.widget_category_checklist li a {
  font-family: 'Noto Serif TC', serif !important;
  font-size: .83rem !important;
  color: var(--charcoal) !important;
  transition: color .2s !important;
}
.widget_categories ul li a:hover { color: var(--mint-deep) !important; }

/* =====================================================
   COMMENTS 留言區
   ===================================================== */
#comments .comment-form input[type="text"],
#comments .comment-form input[type="email"],
#comments .comment-form input[type="url"],
#comments .comment-form textarea {
  width: 100%;
  padding: .65rem .85rem !important;
  border: 1px solid var(--border) !important;
  border-radius: 2px !important;
  font-family: 'Noto Serif TC', serif !important;
  font-size: .9rem !important;
  background: var(--cream) !important;
  color: var(--dark) !important;
  transition: border-color .2s;
}
#comments .comment-form input:focus,
#comments .comment-form textarea:focus {
  outline: none !important;
  border-color: var(--mint-deep) !important;
}
#comments .comment-form .submit,
#comments input[type="submit"] {
  background: var(--mint-deep) !important;
  color: #fff !important;
  border: none !important;
  padding: .7rem 2rem !important;
  border-radius: 2px !important;
  font-family: 'Noto Sans TC', sans-serif !important;
  font-size: .82rem !important;
  letter-spacing: .1em !important;
  cursor: pointer !important;
  transition: background .2s !important;
  text-transform: none !important;
}
#comments .comment-form .submit:hover {
  background: var(--sand-mid) !important;
}
#comments h2.comments-title,
#comments h3#reply-title {
  font-family: 'Cormorant Garamond', serif !important;
  color: var(--dark) !important;
  padding-bottom: .5rem;
  border-bottom: 2px solid var(--mint);
  margin-bottom: 1.5rem;
}

/* =====================================================
   PAGINATION
   ===================================================== */
.ct-pagination .page-numbers,
.pagination .page-numbers,
nav.navigation .page-numbers {
  border: 1px solid var(--border) !important;
  border-radius: 2px !important;
  font-family: 'Noto Sans TC', sans-serif !important;
  font-size: .8rem !important;
  color: var(--charcoal) !important;
  transition: all .2s !important;
}
.ct-pagination .page-numbers:hover,
.pagination .page-numbers:hover {
  border-color: var(--mint-deep) !important;
  color: var(--mint-deep) !important;
}
.ct-pagination .page-numbers.current,
.pagination .page-numbers.current {
  background: var(--mint-deep) !important;
  border-color: var(--mint-deep) !important;
  color: #fff !important;
}

/* =====================================================
   FOOTER
   ===================================================== */
#footer,
.footer-wrapper,
[data-id="footer"],
.ct-footer {
  background: var(--dark) !important;
  color: rgba(250,248,245,.7) !important;
}

/* 頁尾標題 */
.ct-footer .widget-title,
#footer .widget-title {
  font-family: 'Noto Sans TC', sans-serif !important;
  font-size: .66rem !important;
  letter-spacing: .25em !important;
  text-transform: uppercase !important;
  color: var(--mint) !important;
  padding-bottom: .45rem !important;
  border-bottom: 1px solid rgba(200,230,192,.18) !important;
  margin-bottom: .9rem !important;
}

/* 頁尾連結 */
.ct-footer a,
#footer a {
  color: rgba(250,248,245,.55) !important;
  font-family: 'Noto Serif TC', serif;
  font-size: .82rem;
  transition: color .2s !important;
}
.ct-footer a:hover,
#footer a:hover {
  color: rgba(200,230,192,.85) !important;
}

/* 頁尾版權列 */
.ct-footer-copyright,
.footer-copyright,
[data-id="copyright"] {
  background: rgba(0,0,0,.2) !important;
  color: rgba(250,248,245,.3) !important;
  font-family: 'Noto Sans TC', sans-serif !important;
  font-size: .73rem !important;
  letter-spacing: .04em;
}
.ct-footer-copyright a {
  color: rgba(200,230,192,.45) !important;
}

/* 電子報按鈕（Footer Widget 裡的按鈕）*/
#footer .wp-block-button__link,
.ct-footer .wp-block-button__link,
#footer input[type="submit"] {
  background: var(--mint-deep) !important;
  color: #fff !important;
  font-family: 'Noto Sans TC', sans-serif !important;
  font-size: .75rem !important;
  letter-spacing: .1em !important;
  border-radius: 2px !important;
  border: none !important;
  transition: background .2s, transform .2s !important;
}
#footer .wp-block-button__link:hover,
.ct-footer .wp-block-button__link:hover {
  background: var(--sand-mid) !important;
  transform: translateY(-2px);
}

/* 支持本站分類標題 */
.footer-support-cat-title {
  font-family: 'Noto Sans TC', sans-serif;
  font-size: .68rem;
  letter-spacing: .15em;
  text-transform: uppercase;
  color: var(--mint);
  display: block;
  margin-bottom: .35rem;
}
.footer-support-link {
  font-size: .75rem;
  color: rgba(250,248,245,.5) !important;
  background: rgba(255,255,255,.07);
  border-radius: 3px;
  padding: .2rem .6rem;
  margin-right: .3rem;
  margin-bottom: .3rem;
  display: inline-block;
  transition: color .2s, background .2s !important;
}
.footer-support-link:hover {
  color: rgba(200,230,192,.9) !important;
  background: rgba(255,255,255,.12) !important;
}

/* =====================================================
   GUTENBERG BLOCKS — 常用區塊樣式
   ===================================================== */

/* Cover Block（Hero）*/
.wp-block-cover {
  border-radius: 0;
}
.wp-block-cover .wp-block-cover__inner-container p {
  font-family: 'Noto Sans TC', sans-serif;
  letter-spacing: .25em;
  text-transform: uppercase;
  font-size: .72rem;
}

/* Group Block 背景 */
.wp-block-group.has-cream-background-color,
.wp-block-group.is-style-cream {
  background: var(--cream-mid) !important;
}

/* Columns */
.wp-block-column {
  gap: 1.5rem;
}

/* Separator */
.wp-block-separator {
  border-color: var(--border) !important;
  opacity: 1 !important;
}

/* Quote */
.wp-block-quote {
  border-left: 3px solid var(--sand) !important;
  padding: .9rem 1.4rem !important;
  background: var(--cream-mid) !important;
  border-radius: 0 4px 4px 0 !important;
}
.wp-block-quote p {
  color: var(--charcoal) !important;
  font-style: italic !important;
}
.wp-block-quote cite {
  font-family: 'Noto Sans TC', sans-serif !important;
  font-size: .78rem !important;
  color: var(--charcoal) !important;
}

/* =====================================================
   RWD
   ===================================================== */
@media (max-width: 640px) {
  .ct-container, .container {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }
}
