/* reset + 版面底 */
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0}

.site-root{
  position:relative; min-height:100vh;
  background:var(--c-bg); color:var(--c-text);
  font-family:var(--font-sans); font-weight:300; line-height:1.8;
  -webkit-font-smoothing:antialiased; overflow-x:hidden;
}

/* 全橫幅視差區塊(本版型核心特色) */
.parallax-bg{ background-size:cover; background-position:center; background-attachment:fixed; }
@media (hover:none){ .parallax-bg{ background-attachment:scroll; } }

/* 圖片占位框 */
.img-slot{
  display:flex; align-items:center; justify-content:center;
  background:var(--c-surface-2); border:1px dashed var(--c-border);
  color:var(--c-text-muted); font-family:var(--font-mono);
  font-size:11px; letter-spacing:.24em; text-transform:uppercase; text-align:center;
}
.img-slot--dark{ background:color-mix(in oklab,var(--c-accent) 82%, #000); border-color:color-mix(in oklab,var(--c-on-ink) 22%, transparent); color:color-mix(in oklab,var(--c-on-ink) 62%, transparent); }

/* Material Symbols 圖示字型的基本行為 */
.material-symbols-outlined{ font-variation-settings:'FILL' 0,'wght' 200,'GRAD' 0,'opsz' 24; vertical-align:middle; }

/* 圓角開關補綁:客製面板的色票/分段鈕/旋鈕統一綁 --radius-pill */
button{ border-radius:var(--radius-pill); }
[data-knob]{ border-radius:var(--radius-pill); }

/* FAQ chevron */
details[open] .faq-chev{ transform:rotate(180deg); }
summary::-webkit-details-marker{ display:none; }
summary{ list-style:none; }

/* 原始樣板的兩個自訂 class(改綁主題變數) */
.glass-panel{
  background:color-mix(in oklab, var(--c-surface) 70%, transparent);
  backdrop-filter:blur(20px); -webkit-backdrop-filter:blur(20px);
  border:1px solid rgba(255,255,255,.2);
}
/* Hero 由下而上加深的遮罩,讓反白標題在任何底圖上都讀得到 */
.hero-gradient{
  /* 兩層:置中暗角保證反白標題可讀 + 由下而上加深維持版型調性。
     不用整片壓暗,否則情境照會看不出來。 */
  background:
    radial-gradient(62% 52% at 50% 42%,
      color-mix(in oklab, var(--c-accent) 68%, transparent) 0%,
      color-mix(in oklab, var(--c-accent) 34%, transparent) 62%,
      transparent 100%),
    linear-gradient(to top,
      color-mix(in oklab, var(--c-accent) 86%, transparent)  0%,
      color-mix(in oklab, var(--c-accent) 46%, transparent) 48%,
      color-mix(in oklab, var(--c-accent) 26%, transparent) 100%);
}

/* 診療項目標籤 — 要再加類型時,新增一組 --c-tag-*-bg/fg 與一個 .tag--x 即可 */
.tag{
  display:inline-block; padding:4px 12px; border-radius:var(--radius-pill);
  font-family:var(--font-sans); font-size:14px; font-weight:400; letter-spacing:.1em;
  line-height:1.5; white-space:nowrap;
}
.tag--self{ background:var(--c-tag-self-bg); color:var(--c-tag-self-fg); }
.tag--nhi { background:var(--c-tag-nhi-bg);  color:var(--c-tag-nhi-fg);  }
.tag--mix { background:var(--c-tag-mix-bg);  color:var(--c-tag-mix-fg);  }
.tag--info{ background:var(--c-tag-info-bg); color:var(--c-tag-info-fg); }
