:root{
  --bg:#F7F3EA;
  --ink:#0E1B2E;
  --mut:#5F7186;
  --line:#E3DCCD;
  --acc:#FF5E5B;
  --card:#FFFFFF;
}
*{box-sizing:border-box}
html{overflow-x:clip}
body{margin:0;background:var(--bg);color:var(--ink);font:400 16px/1.75 "Noto Sans TC","PingFang TC","Microsoft JhengHei",sans-serif}
button,textarea{font:inherit}
button{cursor:pointer}
.site-head{max-width:900px;margin:0 auto;padding:24px max(20px,env(safe-area-inset-right)) 12px max(20px,env(safe-area-inset-left));min-width:0}
.brand{color:var(--ink);font:700 19px/1.3 "Noto Serif TC",serif;text-decoration:none;letter-spacing:.02em}
.brand span{font:500 13px/1.3 "Noto Sans TC",sans-serif;color:var(--mut);margin-left:8px}
.page{width:min(900px,100%);margin:0 auto;padding:34px max(20px,env(safe-area-inset-right)) 56px max(20px,env(safe-area-inset-left));min-width:0}
.intro{max-width:720px;min-width:0}
.eyebrow,.section-kicker{margin:0;color:var(--acc);font-size:12px;font-weight:700;letter-spacing:.12em}
h1,h2{font-family:"Noto Serif TC",serif;line-height:1.35}
h1{margin:10px 0 14px;font-size:clamp(32px,8vw,52px);letter-spacing:.015em}
.subtitle{margin:0 0 25px;color:var(--mut);font-size:17px}
.search-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:stretch;min-width:0}
.search-form textarea{width:100%;min-width:0;resize:vertical;min-height:78px;padding:15px 16px;border:1px solid var(--line);border-radius:12px;background:var(--card);color:var(--ink);line-height:1.55;outline:none}
.search-form textarea:focus{border-color:var(--acc)}
.search-form button{min-width:104px;border:1px solid var(--acc);border-radius:12px;padding:12px 16px;background:var(--acc);color:var(--card);font-weight:700}
.search-form button:disabled{cursor:wait;opacity:.65}
.examples{display:flex;flex-wrap:wrap;gap:8px;margin-top:13px;min-width:0}
.examples button{max-width:100%;border:1px solid var(--line);border-radius:999px;padding:6px 11px;background:transparent;color:var(--mut);font-size:13px;text-align:left}
.examples button:hover,.examples button:focus{border-color:var(--acc);color:var(--ink)}
.status{margin-top:28px;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:var(--card);color:var(--mut)}
.status.error{border-color:var(--acc);color:var(--ink)}
.answer{margin-top:30px;min-width:0}
.answer-block,.sources{margin-top:18px;padding:22px;border:1px solid var(--line);border-radius:12px;background:var(--card);min-width:0}
.conclusion{border-top:3px solid var(--acc)}
.conclusion h2{margin:5px 0 0;font-size:clamp(23px,5vw,32px)}
.points{margin:8px 0 0;padding-left:25px}
.points li{margin:10px 0;padding-left:3px}
.cite-pill{display:inline-block;margin:3px 0 3px 6px;border:1px solid var(--line);border-radius:999px;padding:1px 8px;background:var(--bg);color:var(--mut);font-size:12px;line-height:1.7;vertical-align:middle}
.cite-pill:hover,.cite-pill:focus{border-color:var(--acc);color:var(--ink)}
.general-note{display:inline-block;margin:3px 0 3px 6px;color:var(--mut);font-size:12px;line-height:1.7;vertical-align:middle}
.caution{background:var(--bg)}
.caution p:last-child{margin:5px 0 0}
.sources-head{display:grid;grid-template-columns:minmax(0,1fr);gap:2px;margin-bottom:12px;min-width:0}
.sources-head p:last-child{margin:0;color:var(--mut);font-size:13px}
.source-list{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;min-width:0}
.source-card{border-top:1px solid var(--line);padding-top:10px;min-width:0}
.source-card:first-child{border-top:0;padding-top:0}
.source-card summary{cursor:pointer;list-style:none;min-width:0}
.source-card summary::-webkit-details-marker{display:none}
.source-title{font-weight:700;word-break:break-word}
.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px;min-width:0}
.tag{border:1px solid var(--line);border-radius:999px;padding:1px 7px;color:var(--mut);font-size:12px;line-height:1.7}
.source-preview{margin:8px 0 0;color:var(--mut);font-size:14px;word-break:break-word}
.source-body{margin:12px 0 0;white-space:pre-wrap;word-break:break-word}
.source-link{display:inline-block;margin-top:9px;color:var(--ink);font-weight:700;text-decoration-color:var(--acc);text-underline-offset:3px}
.disclaimer{margin:18px 2px 0;color:var(--mut);font-size:12px;line-height:1.7}
.site-foot{border-top:1px solid var(--line);padding:22px max(20px,env(safe-area-inset-right)) calc(22px + env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));color:var(--mut);font-size:12px;text-align:center}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media (max-width:560px){
  .site-head{padding-top:18px}
  .page{padding-top:24px}
  .search-form{grid-template-columns:minmax(0,1fr)}
  .search-form button{min-height:48px}
  .answer-block,.sources{padding:18px}
}
