/* 取代 Tailwind preflight（原站 @import "tailwindcss"）的最小重設 */
*,::before,::after{box-sizing:border-box;margin:0;padding:0;border:0 solid}
html{-webkit-text-size-adjust:100%;tab-size:4}
h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}
a{color:inherit;text-decoration:inherit}
b,strong{font-weight:bolder}
img,svg{display:block;vertical-align:middle;max-width:100%}
button,input,select{font:inherit;color:inherit;letter-spacing:inherit;background-color:transparent;border-radius:0;opacity:1}
blockquote{margin:0}
::placeholder{opacity:1;color:color-mix(in oklab,currentcolor 50%,transparent)}
[hidden]{display:none!important}
:root{--paper:#f3efe6;--sheet:#faf8f2;--ink:#202522;--muted:#6d716b;--line:#cfc9bb;--accent:#a54f3f;--accent-dark:#7e382d}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Noto Serif TC","Source Han Serif TC","PingFang TC","Microsoft JhengHei",serif;line-height:1.75}button,input,select{font:inherit}button,a{color:inherit}button{cursor:pointer}.siteHeader{height:72px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(5vw,24px);position:relative;z-index:5;background:rgba(243,239,230,.96)}.brand{text-decoration:none;font-weight:700;letter-spacing:.08em}.brand span{color:var(--accent);font-size:.72rem;border-left:1px solid var(--line);margin-left:12px;padding-left:12px}.siteHeader nav{display:flex;gap:28px;align-items:center;font-size:.86rem}.siteHeader nav a{text-decoration:none}.siteHeader nav button{border:0;background:none}.siteHeader nav b{display:inline-grid;place-items:center;background:var(--accent);color:white;border-radius:50%;width:20px;height:20px;font-size:.68rem;margin-left:4px}.hero{padding:78px max(5vw,24px) 92px;border-bottom:1px solid var(--line);background:radial-gradient(circle at 76% 22%,rgba(165,79,63,.07),transparent 24%),var(--paper)}.eyebrow,.kicker{font-family:Arial,sans-serif;font-size:.68rem;letter-spacing:.18em;color:var(--accent);font-weight:700}.heroGrid{max-width:1240px;margin:28px auto 0;display:grid;grid-template-columns:1fr 330px;gap:10vw;align-items:end}.hero h1{font-size:clamp(4.6rem,10vw,9rem);font-weight:500;line-height:.88;letter-spacing:-.07em;margin:0 0 46px}.lead{font-size:clamp(1.25rem,2vw,1.75rem);max-width:660px;margin:0 0 10px;line-height:1.6}.intro{color:var(--muted);margin:0}.heroActions{display:flex;gap:12px;margin-top:32px}.drawButton,.secondaryButton{min-height:54px;padding:12px 24px;border:1px solid var(--ink);text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.drawButton{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:700;min-width:190px;justify-content:space-between}.drawButton:hover{background:var(--accent-dark)}.secondaryButton:hover{background:var(--ink);color:var(--paper)}.heroNote{border-top:3px solid var(--accent);padding-top:18px;align-self:center}.heroNote span{font-size:.75rem;letter-spacing:.15em;color:var(--accent)}.heroNote p{font-size:1.05rem;line-height:1.8}.heroNote small{color:var(--muted)}.drawPanel{position:relative;max-width:900px;margin:-36px auto 48px;background:var(--ink);color:var(--paper);padding:44px 7%;box-shadow:0 18px 50px rgba(32,37,34,.15);animation:reveal .38s ease}.drawPanel:focus{outline:3px solid var(--accent);outline-offset:4px}.drawPanel blockquote{font-size:clamp(1.6rem,3vw,2.5rem);line-height:1.6;margin:20px 0 6px}.drawPanel>p{color:#bdbdaf}.drawPanel>div{display:flex;gap:8px;margin-top:24px}.drawPanel>div button{border:1px solid #686b66;background:transparent;color:white;padding:8px 15px}.drawPanel>div button:first-child{background:var(--accent);border-color:var(--accent)}.drawClose{position:absolute;right:18px;top:12px;background:none;border:0;color:white;font-size:1.6rem}.wall{max-width:1360px;margin:auto;padding:80px max(4vw,22px)}.wallHeading{display:flex;justify-content:space-between;align-items:end;border-bottom:1px solid var(--ink);padding-bottom:20px}.wallHeading>div{display:flex;align-items:baseline;gap:18px}.wallHeading h2{font-size:clamp(2.4rem,5vw,4.5rem);font-weight:500;letter-spacing:-.05em;margin:0}.sectionNo{color:var(--accent);font-family:Arial;font-size:.7rem}.wallHeading p{color:var(--muted);margin:0}.searchRow{margin-top:30px}.search{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;background:var(--sheet);border:1px solid var(--line);padding:13px 17px}.search span{font-size:.72rem;color:var(--accent);letter-spacing:.14em}.search input{border:0;background:transparent;outline:0;width:100%;font-size:1rem}.search:focus-within{outline:2px solid var(--accent);outline-offset:2px}.search kbd{font-family:Arial;font-size:.7rem;color:var(--muted);border:1px solid var(--line);padding:2px 6px}.mobileFilter{display:none}.filters{padding:22px 0;border-bottom:1px solid var(--line)}.topicFilters{display:flex;flex-wrap:wrap;gap:8px}.topicFilters button,.favoriteFilter{border:1px solid var(--line);background:transparent;padding:7px 13px;font-size:.8rem}.topicFilters button:hover,.topicFilters button.active,.favoriteFilter.active{background:var(--ink);border-color:var(--ink);color:var(--paper)}.selectFilters{display:flex;align-items:end;gap:16px;margin-top:18px}.selectFilters label{font-size:.72rem;color:var(--muted);display:flex;gap:8px;align-items:center}.selectFilters select{background:transparent;border:0;border-bottom:1px solid var(--ink);padding:5px 22px 5px 3px;color:var(--ink)}.favoriteFilter{margin-left:auto}.resultBar{display:flex;justify-content:space-between;align-items:center;margin:25px 0 18px;font-size:.85rem}.resultBar p{margin:0}.resultBar strong{color:var(--accent);font-size:1.15rem}.resultBar button{border:0;background:none;text-decoration:underline}.syncNote{background:#e8e1d4;padding:9px 13px;font-size:.78rem;color:var(--muted)}.quoteGrid{display:grid;grid-template-columns:repeat(12,1fr);gap:14px;align-items:start}.quoteCard{grid-column:span 4;background:rgba(250,248,242,.75);border-top:2px solid var(--ink);padding:24px;min-height:260px;display:flex;flex-direction:column;transition:.2s}.quoteCard.size1,.quoteCard.size4{grid-column:span 5}.quoteCard.size2,.quoteCard.size3{grid-column:span 3}.quoteCard:hover{background:var(--sheet);transform:translateY(-2px)}.quoteCard.spotlight{outline:4px solid var(--accent);outline-offset:3px;background:#fff9ed}.cardMeta{display:flex;justify-content:space-between;gap:12px;font-family:Arial,sans-serif;font-size:.68rem;letter-spacing:.05em;color:var(--muted)}.cardMeta button{border:0;background:none;color:var(--accent);padding:0;text-align:left}.quoteCard blockquote{font-size:clamp(1.08rem,1.4vw,1.42rem);line-height:1.72;margin:30px 0;flex:1}.context{border-top:1px solid var(--line);font-size:.78rem}.context>button{width:100%;display:flex;justify-content:space-between;border:0;background:none;padding:9px 0;color:var(--muted)}.context p{margin:2px 0 12px;color:var(--muted)}.cardActions{border-top:1px solid var(--line);padding-top:12px;display:flex;gap:14px;align-items:center;font-family:Arial,sans-serif;font-size:.7rem}.cardActions button,.cardActions a{border:0;background:none;padding:0;text-decoration:none}.cardActions button:hover,.cardActions a:hover{text-decoration:underline}.cardActions .heart{margin-left:auto;font-size:1.35rem;color:var(--accent)}.cardActions .heart.saved{color:var(--accent)}.empty{text-align:center;padding:80px;border:1px solid var(--line)}.empty>span{font-size:3rem;color:var(--accent)}.empty h3{font-size:1.4rem}.empty p{color:var(--muted)}.empty button{border:1px solid var(--ink);background:transparent;padding:8px 16px}footer{background:var(--ink);color:var(--paper);padding:60px max(5vw,24px);display:grid;grid-template-columns:2fr 1fr;gap:50px}footer>div{max-width:620px}.footerBrand{font-size:1.5rem;margin-top:0}footer nav{display:grid;grid-template-columns:1fr 1fr;gap:6px 24px}footer nav span{grid-column:1/-1;color:#aaa;font-size:.72rem;letter-spacing:.15em}footer nav a{text-decoration:none}footer small{grid-column:1/-1;border-top:1px solid #4b4e4b;padding-top:18px;color:#999}.toast{position:fixed;right:24px;bottom:24px;background:var(--ink);color:white;padding:11px 18px;z-index:20;animation:reveal .2s ease}@keyframes reveal{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:3px}@media(max-width:900px){.heroGrid{grid-template-columns:1fr}.heroNote{max-width:520px}.quoteCard,.quoteCard.size1,.quoteCard.size2,.quoteCard.size3,.quoteCard.size4{grid-column:span 6}.wallHeading p{display:none}}@media(max-width:620px){.siteHeader{height:60px}.brand span,.siteHeader nav>a{display:none}.siteHeader nav{gap:10px}.hero{padding-top:52px}.hero h1{font-size:4.5rem;margin-bottom:35px}.heroActions{flex-direction:column}.heroActions>*{width:100%}.heroNote{margin-top:20px}.drawPanel{margin:-20px 14px 35px;padding:36px 24px}.wall{padding-top:55px}.wallHeading{align-items:center}.search{grid-template-columns:auto 1fr}.search kbd{display:none}.mobileFilter{display:block;width:100%;border:1px solid var(--line);border-top:0;background:var(--sheet);padding:10px;text-align:left}.filters{display:none}.filters.open{display:block}.selectFilters{align-items:stretch;flex-direction:column}.selectFilters label{justify-content:space-between}.favoriteFilter{margin-left:0}.quoteGrid{display:block}.quoteCard{margin-bottom:14px;min-height:0;padding:22px}.quoteCard blockquote{font-size:1.17rem;margin:26px 0}.cardActions{gap:17px}.wallHeading h2{font-size:3rem}footer{grid-template-columns:1fr}.toast{left:20px;right:20px;text-align:center}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
.heroNote img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 35%;margin-bottom:20px;filter:saturate(.8) contrast(.98)}
