/* ============================================================
   base.css — 全站共用基礎樣式
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=La+Belle+Aurore&family=Noto+Serif+TC:wght@300;400;700&family=Lato:wght@300;400&display=swap');

:root {
  --color-bg:       #F8F8F8;
  --color-white:    #ffffff;
  --color-beige:    #EBE9E4;
  --color-beige-lt: #F4F3F0;
  --color-line:     #d8d2cc;
  --color-text:     #2e2a27;
  --color-text-md:  #4e4a46;
  --color-text-lt:  #7a7570;
  --font-serif:     'Noto Serif TC', serif;
  --font-en:        'Lato', sans-serif;
  --font-script:    'La Belle Aurore', cursive;
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

html { scroll-behavior: smooth; overflow-x: hidden; }
body {
  overflow-x: hidden;
}

body {
  background: var(--color-white);
  color: var(--color-text);
  font-family: var(--font-serif);
  font-weight: 300;
  line-height: 1.8;
  -webkit-font-smoothing: antialiased;
}

img { display: block; max-width: 100%; height: auto; }
a { color: inherit; text-decoration: none; }
ul, ol { list-style: none; }
button { cursor: pointer; border: none; background: none; font-family: inherit; }

/* 共用佔位色塊 */
.placeholder {
  width: 100%; height: 100%;
  background: linear-gradient(135deg, #e8e3de, #d4cdc6);
  display: flex; align-items: center; justify-content: center;
  flex-direction: column; gap: 8px;
  color: #a09890; font-size: 0.72rem; letter-spacing: 0.1em;
  text-align: center;
}
