:root{--jade: #2f7d5f;--jade-dark: #1f5c44;--jade-pale: #e8f3ee;--paper: #faf9f6;--card: #ffffff;--ink: #23211d;--ink-soft: #5c574e;--line: #e4e0d8;--serif: "Songti TC", "Noto Serif TC", "Source Han Serif TC", serif;--sans: -apple-system, "PingFang TC", "Microsoft JhengHei", "Noto Sans TC", "Helvetica Neue", sans-serif}@media(prefers-color-scheme:dark){:root{--jade: #6dbb9a;--jade-dark: #8fd0b4;--jade-pale: #1d2b25;--paper: #14161a;--card: #1d2026;--ink: #e8e6e1;--ink-soft: #a39d92;--line: #32363e}}@font-face{font-family:VerseKai;src:url(/branding/verse-kai.woff2) format("woff2");font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.85;font-size:17px}a{color:var(--jade);text-decoration:none}a:hover{color:var(--jade-dark);text-decoration:underline}img{max-width:100%;height:auto}.wrap{max-width:1080px;margin:0 auto;padding:0 1.25rem}.site-header{background:var(--card);border-bottom:1px solid var(--line);border-radius:0 0 14px 14px}.masthead{display:flex;align-items:flex-end;gap:1rem;padding:1rem 0 .35rem;flex-wrap:wrap}.logo-link{align-self:center}.head-right{flex:1;display:flex;flex-direction:column;align-items:flex-end;gap:.15rem;min-width:260px}.head-tools{display:flex;align-items:center;gap:1rem;padding-top:.15rem}.lang-switch{font-size:.9rem;color:var(--ink-soft);white-space:nowrap}.lang-switch a{padding:0 .3rem}.head-search{display:flex;gap:.35rem}.head-search input{width:11em;padding:.25rem .6rem;font-size:.88rem;border:1px solid var(--line);border-radius:6px;background:var(--paper);color:var(--ink)}.head-search button{padding:.25rem .7rem;font-size:.88rem;cursor:pointer;border:1px solid var(--line);border-radius:6px;background:var(--jade-pale);color:var(--ink)}.head-search button:hover{background:var(--jade);color:#fff}.site-nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.1rem;padding-bottom:.35rem}.site-nav a{padding:.3rem .55rem .35rem;color:var(--ink);font-size:.98rem;letter-spacing:.04em;border-bottom:2px solid transparent;border-radius:8px 8px 0 0}.site-nav a:hover{background:var(--jade-pale);text-decoration:none}.site-nav a[aria-current=true]{color:var(--jade);font-weight:600;border-bottom-color:var(--jade)}@media(max-width:720px){.head-right{align-items:flex-start}.site-nav{justify-content:flex-start}}.hero{position:relative;overflow:hidden;border-radius:12px;margin:1.4rem 0;aspect-ratio:847/359;min-height:240px;background:#1a2620}.hero .slide{position:absolute;inset:0;margin:0;opacity:0;animation:heroFade calc(var(--n) * 8s) infinite;animation-delay:calc(var(--i) * 8s)}.hero .slide img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero .verse{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:.35em;padding:1.4rem 3rem;pointer-events:none}.hero .verse.pos-left{background:linear-gradient(100deg,rgba(10,25,18,.55) 0%,rgba(10,25,18,.25) 45%,transparent 70%)}.hero .verse.pos-right{justify-content:center;align-items:flex-end;text-align:right;background:linear-gradient(260deg,rgba(10,25,18,.55) 0%,rgba(10,25,18,.25) 45%,transparent 70%)}.hero .verse.pos-top{justify-content:flex-start;align-items:flex-start;background:linear-gradient(175deg,rgba(10,25,18,.55) 0%,rgba(10,25,18,.2) 40%,transparent 65%)}.hero .verse.pos-bottom{justify-content:flex-end;align-items:flex-start;background:linear-gradient(355deg,rgba(10,25,18,.6) 0%,rgba(10,25,18,.2) 40%,transparent 65%)}.hero .verse span{color:#fff;font-family:"VerseKai","Kaiti TC","BiauKai","DFKai-SB","Kaiti SC",var(--serif);font-weight:500;font-size:clamp(1.4rem,4.6vw,2.7rem);letter-spacing:.22em;line-height:1.55;text-shadow:0 1px 10px rgba(0,0,0,.55);opacity:0;transform:translateY(14px);animation:verseIn calc(var(--n) * 8s) infinite;animation-delay:calc(var(--i) * 8s + .6s)}.hero .verse span:nth-child(2){animation-delay:calc(var(--i) * 8s + 1.1s)}.hero .verse span:nth-child(3){animation-delay:calc(var(--i) * 8s + 1.6s)}.hero .verse span:nth-child(4){animation-delay:calc(var(--i) * 8s + 2.1s)}@keyframes heroFade{0%{opacity:0}1.5%{opacity:1}12.5%{opacity:1}14.5%{opacity:0}to{opacity:0}}@keyframes verseIn{0%{opacity:0;transform:translateY(14px)}2.5%{opacity:1;transform:translateY(0)}11.5%{opacity:1}13%{opacity:0}to{opacity:0;transform:translateY(14px)}}@media(prefers-reduced-motion:reduce){.hero .slide,.hero .verse span{animation:none}.hero .slide:first-child{opacity:1}.hero .slide:first-child .verse span{opacity:1;transform:none}}@media(max-width:640px){.hero .verse{padding:1rem 1.4rem}.hero{aspect-ratio:auto;height:min(78vw,320px);min-height:0}}.home-grid .entry-list,.event-cal{font-size:.95rem}.cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.4rem}.cal-label{font-family:var(--serif);font-weight:600;color:var(--jade-dark);letter-spacing:.08em}.cal-nav{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:8px;width:2rem;height:2rem;cursor:pointer;font-size:1rem}.cal-nav:hover{background:var(--jade-pale)}.cal-grid{width:100%;border-collapse:collapse;text-align:center}.cal-grid th{color:var(--ink-soft);font-weight:500;padding:.25rem 0;font-size:.85rem}.cal-grid td{padding:.32rem 0;border-radius:8px;font-variant-numeric:tabular-nums}.cal-grid td.cal-today{background:var(--jade-pale);font-weight:700}.cal-grid td.cal-event a{display:inline-block;min-width:1.7em;border-radius:8px;background:var(--jade);color:#fff;font-weight:600;text-decoration:none}.cal-grid td.cal-multi a:after{content:"••";display:block;line-height:.5;font-size:.6em;letter-spacing:1px}.cal-daylist{margin-top:.6rem;padding:.6rem .9rem;font-size:.92rem;background:var(--jade-pale);border-radius:8px}.cal-daylist ul{list-style:none;margin:.2rem 0 0;padding:0}.cal-daylist li{padding:.15rem 0}.cal-upcoming h4{margin:.8rem 0 .3rem;font-size:.95rem;color:var(--jade-dark);font-family:var(--serif);letter-spacing:.06em;border-top:1px solid var(--line);padding-top:.7rem}.cal-upcoming ul{list-style:none;margin:0;padding:0}.cal-upcoming li{padding:.2rem 0}.cal-upcoming .cal-date{color:var(--ink-soft);font-size:.85rem}.cal-upcoming .cal-none{color:var(--ink-soft)}.cal-upcoming .cal-repeat{color:var(--ink-soft);font-size:.82rem}.worldmap{position:relative;border-radius:10px;overflow:hidden}.worldmap img{display:block;width:100%}.worldmap-spot{position:absolute;width:16px;height:16px;transform:translate(-50%,-50%);background:#1f5c44;border:2.5px solid #fff;border-radius:50%;box-shadow:0 0 0 3px #1f5c4459,0 1px 4px #0000004d}.worldmap-spot:hover{background:#fff;border-color:#1f5c44}.worldmap-spot .worldmap-label{position:absolute;left:50%;bottom:130%;transform:translate(-50%);background:#141e19d9;color:#fff;font-size:.78rem;padding:.15rem .5rem;border-radius:6px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .15s}.worldmap-spot:hover .worldmap-label{opacity:1}.worldmap-links{margin:.7rem 0 0;font-size:.92rem}.home-grid{display:grid;grid-template-columns:3fr 2fr;gap:1.4rem;margin-bottom:2rem}.home-grid>div:first-child{display:flex;flex-direction:column;gap:1.4rem}.home-grid>div:first-child .card{flex:1 1 auto;margin-bottom:0}.home-grid>div:first-child.no-stretch .card{flex:0 0 auto}@media(max-width:800px){.home-grid{grid-template-columns:1fr}.home-grid>div:first-child{display:block}.home-grid>div:first-child .card{margin-bottom:1.4rem}}.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:1.2rem 1.4rem;margin-bottom:1.4rem}.card h2{font-family:var(--serif);font-size:1.25rem;margin:0 0 .8rem;padding-bottom:.5rem;border-bottom:2px solid var(--jade);display:flex;justify-content:space-between;align-items:baseline;letter-spacing:.08em}.card h2 .more{font-family:var(--sans);font-size:.85rem;font-weight:400}.entry-list{list-style:none;margin:0;padding:0}.entry-list li{display:flex;gap:.9rem;padding:.45rem 0;border-bottom:1px dashed var(--line);align-items:baseline}.entry-list li:last-child{border-bottom:none}.entry-list time{color:var(--ink-soft);font-size:.85rem;white-space:nowrap;font-variant-numeric:tabular-nums}.entry-list .author{color:var(--ink-soft);font-size:.85rem;white-space:nowrap}.article{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:2rem 2.4rem;margin:1.5rem 0}@media(max-width:640px){.article{padding:1.3rem 1.1rem}}.article h1{font-family:var(--serif);font-size:1.7rem;line-height:1.5;margin:0 0 .3rem;letter-spacing:.05em}.article .meta{color:var(--ink-soft);font-size:.9rem;margin-bottom:1.6rem;padding-bottom:.9rem;border-bottom:1px solid var(--line)}.article .prose{font-size:1.06rem}.article .prose h2{font-family:var(--serif);font-size:1.25rem;color:var(--jade-dark);margin-top:2rem;letter-spacing:.06em}.article .prose table{border-collapse:collapse;margin:1rem 0;display:block;overflow-x:auto}.article .prose td,.article .prose th{border:1px solid var(--line);padding:.4rem .7rem}.article .prose blockquote{margin:.4rem 0 .4rem 1rem;padding-left:1rem;border-left:3px solid var(--jade-pale);color:var(--ink-soft)}.article .prose img{border-radius:8px}.video-embed{position:relative;aspect-ratio:16/9;margin:1rem 0}.video-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0;border-radius:10px}.prev-next{display:flex;justify-content:space-between;gap:1rem;margin:1.5rem 0}.article .prose .img-small{max-width:min(200px,100%)}.article .prose .img-medium{max-width:min(400px,100%)}.article .prose .img-large{max-width:min(650px,100%)}.article .prose .img-right{float:right;margin:0 0 1rem 1rem;max-width:min(280px,45%)}.article .prose .img-left{float:left;margin:0 1rem 1rem 0;max-width:min(280px,45%)}.memorial-intro{border-left:4px solid var(--jade)}.memorial-intro h2{display:block;border-bottom:none;padding-bottom:0;margin-bottom:.5rem}.memorial-intro p{margin:.4rem 0}.teaser{overflow:hidden}.teaser-img{float:right;width:150px;margin:0 0 .8rem 1rem;border-radius:8px}.teaser-title{font-family:var(--serif);font-size:1.15rem;margin:0 0 .2rem;line-height:1.5}.teaser-meta{color:var(--ink-soft);font-size:.85rem;margin:0 0 .5rem}.teaser-text{margin:0;text-align:justify;text-justify:inter-ideograph;line-break:strict}.page-title{font-family:var(--serif);font-size:1.6rem;margin:1.6rem 0 .4rem;letter-spacing:.1em}.page-desc{color:var(--ink-soft);margin:0 0 1.4rem}.year-h{font-family:var(--serif);color:var(--jade-dark);margin:1.6rem 0 .4rem;font-size:1.1rem}.qigong-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:.8rem;margin:1.2rem 0 2rem}.qigong-grid a{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:.9rem 1rem;color:var(--ink);font-family:var(--serif);letter-spacing:.04em}.qigong-grid a:hover{border-color:var(--jade);text-decoration:none;color:var(--jade-dark)}.qigong-grid .num{color:var(--jade);font-size:.8rem;display:block}.site-footer{border-top:1px solid var(--line);margin-top:3rem;padding:2rem 0 3rem;color:var(--ink-soft);font-size:.92rem;background:var(--card);border-radius:14px 14px 0 0}.site-footer .cols{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem}@media(max-width:900px){.site-footer .cols{grid-template-columns:1fr 1fr}}@media(max-width:520px){.site-footer .cols{grid-template-columns:1fr}}.site-footer h3{font-size:1rem;font-family:var(--serif);color:var(--ink);margin:0 0 .6rem;letter-spacing:.08em}.site-footer ul{list-style:none;padding:0;margin:0}.site-footer li{display:flex;gap:.5rem;align-items:flex-start;padding:.2rem 0;line-height:1.6}.site-footer .fi{width:15px;height:15px;flex:none;margin-top:.28em;color:var(--jade)}.footer-bottom{margin-top:1.8rem;padding-top:1.2rem;border-top:1px solid var(--line);text-align:center;line-height:1.9}.announce-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#0a0e0cd1;backdrop-filter:blur(3px);padding:1.2rem}.announce-overlay[hidden]{display:none}.announce-box{display:flex;flex-direction:column;align-items:center;gap:1rem;max-width:min(920px,94vw)}.announce-box img{max-width:100%;max-height:76vh;border-radius:12px;box-shadow:0 12px 48px #00000080;display:block}.announce-box button{padding:.6rem 3rem;font-size:1.05rem;letter-spacing:.2em;cursor:pointer;border:none;border-radius:10px;background:var(--jade);color:#fff}.announce-box button:hover{background:var(--jade-dark)}.live-link{margin:0 0 1.4rem;font-size:1.05rem}.live-link a{display:inline-block;padding:.45rem 1.1rem;border-radius:10px;background:var(--jade-pale);border:1px solid var(--jade);font-weight:600}.live-link a:hover{background:var(--jade);color:#fff;text-decoration:none}
