:root { --ink:#0b1020; --muted:#55627b; --line:#dfe3ec; --paper:#f5f6fb; --card:#fff; --blue:#5876ff; --lime:#d7ff42; }
* { box-sizing:border-box; }
body { margin:0; color:var(--ink); background:var(--paper); font-family:Inter,"Noto Sans TC","PingFang TC","Microsoft JhengHei",ui-sans-serif,system-ui,sans-serif; line-height:1.65; }
.site-header,.policy-page,footer { width:min(940px,calc(100% - 40px)); margin:0 auto; }
.site-header { min-height:78px; display:flex; align-items:center; justify-content:space-between; }
.brand-logo { width:178px; height:auto; display:block; }.language-link { padding:7px 11px; border:1px solid var(--line); border-radius:999px; color:var(--ink); text-decoration:none; font-size:.86rem; font-weight:800; background:#fff; }
.policy-page { max-width:780px; padding:64px 0 70px; }.eyebrow { color:var(--blue); font-size:.76rem; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
h1 { margin:12px 0 12px; font-size:clamp(2.5rem,6vw,4.5rem); line-height:1; letter-spacing:-.05em; }.updated { color:var(--muted); margin:0 0 42px; }
h2 { margin:38px 0 10px; font-size:1.38rem; letter-spacing:-.025em; } p,li { font-size:1rem; } ul { padding-left:22px; }
.note { margin:30px 0; padding:20px 22px; border-radius:18px; background:#e9edff; border-left:5px solid var(--blue); }.note strong { display:block; margin-bottom:4px; }
a { color:#3155ce; } footer { min-height:110px; padding:24px 0 38px; border-top:1px solid var(--line); display:flex; flex-wrap:wrap; gap:10px 18px; align-items:center; color:var(--muted); font-size:.9rem; } footer a { color:var(--muted); text-decoration:none; } footer a:hover { color:var(--blue); }
@media(max-width:600px){.site-header,.policy-page,footer{width:min(100% - 28px,940px)}.policy-page{padding:38px 0 50px}h1{font-size:2.7rem}}
