:root{--paper: #fbf8f3;--paper-deep: #f1e9df;--ink: #2e2a26;--muted: #776d63;--brown: #8a6f52;--gold: #c9a961;--line: #dfd5ca;--serif: "Noto Serif TC", "Songti TC", "Songti SC", "PMingLiU", serif;--sans: -apple-system, BlinkMacSystemFont, "PingFang TC", "Hiragino Sans GB", "Microsoft JhengHei", sans-serif;color:var(--ink);background:var(--paper);font-family:var(--sans);line-height:1.8;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:var(--paper)}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:.22em}a:hover{color:var(--brown)}h1,h2,h3,h4{margin:0;font-family:var(--serif);font-weight:600;line-height:1.35;letter-spacing:.04em}p{margin:0 0 1rem}.container{width:min(1120px,calc(100% - 40px));margin:0 auto}.site-header{border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--paper) 93%,transparent)}.nav-wrap{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:inline-flex;align-items:baseline;gap:10px;text-decoration:none;white-space:nowrap}.brand strong{font:600 clamp(1.15rem,2vw,1.45rem)/1 var(--serif);letter-spacing:.12em}.brand small{color:var(--brown);font-size:.73rem;letter-spacing:.12em}.nav-toggle{display:none}.nav-links{display:flex;align-items:center;gap:clamp(14px,2.5vw,32px);font-size:.9rem}.nav-links a{text-decoration:none;color:var(--muted)}.nav-links a.is-current{color:var(--ink);font-weight:600}.page-section{padding:clamp(36px,4.5vw,60px) 0}.eyebrow{color:var(--brown);font-size:.78rem;letter-spacing:.18em;text-transform:uppercase}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:32px}.section-heading h2{font-size:clamp(1.65rem,3vw,2.4rem)}.section-heading p{max-width:35rem;color:var(--muted);margin:0}.hero{padding:clamp(36px,4.5vw,60px) 0 clamp(24px,3vw,36px)}.hero-inner{max-width:840px}.hero h1{margin:16px 0 22px;font-size:clamp(2rem,4.4vw,3.5rem);line-height:1.35;letter-spacing:.04em}.hero .lead{max-width:620px;color:var(--muted);font:1.12rem/2 var(--serif)}.hero-rule{width:100px;margin-top:26px;border-top:1px solid var(--gold)}.article-grid{display:grid;grid-template-columns:1fr;gap:24px}.article-card{display:flex;min-width:0;flex-direction:column;background:#fffdfa;border:1px solid var(--line);transition:transform .2s ease,box-shadow .2s ease}.article-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px #503c2814}.card-image{width:100%;aspect-ratio:16 / 9;object-fit:cover;background:var(--paper-deep)}.card-image.placeholder{background:linear-gradient(135deg,#eee2d1,#dcc7aa)}.card-body{display:flex;flex:1;flex-direction:column;padding:22px}.meta{display:flex;flex-wrap:wrap;gap:10px;align-items:center;color:var(--muted);font-size:.78rem}.tag{color:var(--brown);letter-spacing:.08em}.article-card h3{margin:12px 0 10px;font-size:1.25rem}.article-card p{color:var(--muted);font-size:.92rem;margin-bottom:0}.article-card .read-more{margin-top:auto;padding-top:18px;color:var(--brown);font-size:.82rem}.feature-grid{display:grid;grid-template-columns:1fr;gap:18px}.feature-link{min-height:220px;display:flex;flex-direction:column;justify-content:end;padding:28px;border:1px solid var(--line);background:var(--paper-deep);text-decoration:none}.feature-link:nth-child(2){background:#eee8df}.feature-link:nth-child(3){background:#e9e0d3}.feature-link h3{margin:8px 0;font-size:1.5rem}.feature-link p{color:var(--muted);margin:0}.about-block{display:grid;grid-template-columns:1fr;gap:28px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.about-block h2{font-size:clamp(1.7rem,3vw,2.5rem)}.about-block p{color:var(--muted)}.button-link{display:inline-flex;width:fit-content;padding:9px 18px;border:1px solid var(--brown);color:var(--brown);text-decoration:none;font-size:.84rem}.button-link:hover{background:var(--brown);color:var(--paper)}.page-intro{padding:clamp(64px,10vw,120px) 0 50px;max-width:760px}.page-intro h1{margin:12px 0 18px;font-size:clamp(1.8rem,3.6vw,2.8rem);line-height:1.4}.page-intro p{color:var(--muted);font:1.05rem/2 var(--serif)}.filter-row{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:30px}.filter{padding:5px 14px;border:1px solid var(--line);background:transparent;color:var(--muted);font-family:inherit;font-size:.82rem;text-decoration:none;cursor:pointer;transition:border-color .15s,color .15s}.filter.is-active,.filter:hover{border-color:var(--brown);color:var(--brown)}.filter.is-active{background:var(--brown);color:var(--paper)}.filter-empty{color:var(--muted)}.column-note{padding:24px 28px;margin-bottom:34px;border-left:3px solid var(--gold);background:var(--paper-deep)}.column-note p{margin:0;color:var(--muted)}.article-shell{padding:clamp(56px,9vw,110px) 0}.article-header{max-width:760px;margin:0 auto 40px}.article-header h1{margin:14px 0 20px;font-size:clamp(1.7rem,3.4vw,2.6rem);line-height:1.4}.article-header .description{color:var(--muted);font:1.12rem/1.9 var(--serif)}.article-hero{width:min(100%,760px);margin:0 auto 44px;aspect-ratio:16 / 9;object-fit:cover;background:var(--paper-deep)}.prose{max-width:760px;margin:0 auto;font-size:clamp(1rem,1.4vw,1.08rem)}.prose img{display:block;width:100%;height:auto;margin:2rem auto}.prose p>img{margin:2rem auto}.prose h2,.prose h3{margin:2.6em 0 .7em}.prose h2{font-size:1.75rem}.prose h3{font-size:1.35rem}.prose blockquote{margin:2rem 0;padding:22px 26px;border-left:4px solid var(--gold);background:var(--paper-deep);color:var(--ink);font-family:var(--serif);font-size:1.06em;line-height:2;letter-spacing:.02em}.prose blockquote cite,.prose blockquote em{color:var(--muted);font-style:normal;font-size:.92em}.prose blockquote p:last-child{margin-bottom:0}.prose .table-wrap,.prose table{max-width:100%}.prose .table-wrap{overflow-x:auto;margin:2rem 0}.prose table{display:block;overflow-x:auto;width:100%;max-width:100%;margin:2rem 0;border-collapse:collapse;background:#fffdfa;-webkit-overflow-scrolling:touch}.prose table tbody,.prose table thead{min-width:520px;display:table;width:100%}.prose th,.prose td{padding:10px 14px;border:1px solid var(--line);text-align:left}.prose th{background:var(--paper-deep);font-family:var(--serif)}.prose figure{margin:2rem 0}.prose figure img{width:100%}.prose figcaption{margin-top:8px;color:var(--muted);font-size:.82rem;text-align:center}.disclaimer{margin-top:64px;padding-top:22px;border-top:1px solid var(--line);color:#8b837b;font-size:.78rem}.site-footer{padding:48px 0;border-top:1px solid var(--line);color:var(--muted);font-size:.8rem}.footer-row{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.info-grid{display:grid;grid-template-columns:1fr;gap:28px}.info-card{padding:26px;border:1px solid var(--line);background:#fffdfa}.info-card h2{margin-bottom:12px;font-size:1.45rem}.info-card p{color:var(--muted)}.clinic-lead{display:grid;grid-template-columns:1fr;gap:22px;align-items:end;margin-bottom:28px}.clinic-lead h2{margin:8px 0 6px;font-size:clamp(1.5rem,2.6vw,2rem)}.clinic-sub{margin:0;color:var(--muted)}.cta-stack{display:flex;flex-wrap:wrap;gap:12px}.button-solid{display:inline-flex;align-items:center;padding:11px 22px;background:var(--brown);color:var(--paper);text-decoration:none;font-size:.9rem;letter-spacing:.04em;border:1px solid var(--brown)}.button-solid:hover{background:transparent;color:var(--brown)}.schedule-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px}.day-card{padding:18px 16px;border:1px solid var(--line);background:#fffdfa}.day-name{font-family:var(--serif);font-size:1.15rem;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid var(--line)}.day-card ul{list-style:none;margin:0;padding:0}.day-card li{display:flex;justify-content:space-between;gap:10px;padding:5px 0;font-size:.92rem}.slot-label{color:var(--brown);white-space:nowrap}.slot-time{color:var(--ink);font-variant-numeric:tabular-nums}.schedule-note{margin-top:16px;color:var(--muted);font-size:.85rem;line-height:1.9}.info-card .button-link{margin-top:10px}.info-card .stack-gap{margin-top:20px}.info-card .license{margin-top:18px;color:var(--muted);font-size:.78rem}.muted-line{color:var(--muted)}.plain-list{margin:0 0 12px;padding-left:1.1rem}.plain-list li{margin-bottom:7px}.guide-block{margin-top:52px;padding:32px 28px;border:1px solid var(--line);background:var(--paper-deep)}.guide-block h2{margin:8px 0 20px;font-size:clamp(1.45rem,2.4vw,1.9rem)}.step-list{margin:0;padding-left:1.3rem}.step-list li{margin-bottom:14px;padding-left:4px}.guide-tips{margin:22px 0 0;padding-top:18px;border-top:1px solid var(--line);color:var(--muted);font-size:.92rem}.last-reviewed{margin-top:40px;color:var(--muted);font-size:.8rem}.clinic-disclaimer{margin-top:40px;color:var(--muted);font-size:.82rem;line-height:1.9}@media(min-width:720px){.clinic-lead{grid-template-columns:1.4fr auto}}@media(min-width:600px){.article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.about-block{grid-template-columns:.75fr 1.25fr;padding:46px 0;align-items:start}.info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:900px){.article-grid,.info-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:680px){.container{width:min(100% - 28px,1120px)}.nav-wrap{min-height:68px}.nav-toggle{display:inline-flex;width:42px;height:38px;align-items:center;justify-content:center;border:1px solid var(--line);background:transparent;color:var(--ink);font-size:1.2rem;cursor:pointer}.nav-links{display:none;position:absolute;z-index:5;top:68px;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;padding:8px 14px 16px;border-bottom:1px solid var(--line);background:var(--paper)}.nav-links a{padding:10px 0;border-bottom:1px solid var(--line)}.nav-toggle[aria-expanded=true]+.nav-links{display:flex}.section-heading{display:block}.section-heading p{margin-top:10px}}@media(prefers-color-scheme:dark){:root{--paper: #27231f;--paper-deep: #342e28;--ink: #f4ede5;--muted: #c0b4a8;--line: #51463b;--brown: #d2ad80;--gold: #e2c27b}.site-header{background:color-mix(in srgb,var(--paper) 94%,transparent)}.article-card,.info-card,.prose table,.day-card{background:#2d2823}.prose blockquote{background:#322b24;color:var(--ink);border-left-color:var(--gold)}.guide-block{background:#262220}.feature-link:nth-child(2){background:#302a25}.feature-link:nth-child(3){background:#382f27}}
