:root{--bg:#f3f0e8;--surface:#fbfaf6;--text:#15171a;--muted:#5b6067;--laser:#d63a1c;--read:#0b7268;--brand:#d63a1c;--brand-dark:#b8321a;--line:#d63a1c;--border:#15171a24;--grid:#15171a0b;--grid-major:#15171a12;--shadow:0 10px 30px #2820141a;--f-body:"Noto Sans TC", -apple-system, "Segoe UI", "PingFang TC", "Microsoft JhengHei", sans-serif;--f-mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--f-num:"Big Shoulders Display", "Bahnschrift", "DIN Condensed", sans-serif;color-scheme:light}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--f-body);background-color:var(--bg);background-image:linear-gradient(var(--grid-major) 1px, transparent 1px), linear-gradient(90deg, var(--grid-major) 1px, transparent 1px), linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);color:var(--text);-webkit-font-smoothing:antialiased;background-size:120px 120px,120px 120px,24px 24px,24px 24px;line-height:1.8;overflow-x:hidden}a{color:inherit}img{max-width:100%}:focus-visible{outline:2px solid var(--laser);outline-offset:3px}.mono{font-family:var(--f-mono)}.wrap{max-width:720px;padding:0 max(20px, env(safe-area-inset-right,0px)) 0 max(20px, env(safe-area-inset-left,0px));margin:0 auto}.wrap-wide{max-width:1240px;padding:0 max(20px, env(safe-area-inset-right,0px)) 0 max(20px, env(safe-area-inset-left,0px));margin:0 auto}.grid-2{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:20px;display:grid}.grid-3{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:20px;display:grid}section{padding:56px 0}h1{letter-spacing:-.01em;font-size:2rem;line-height:1.3}h2{margin-bottom:24px;font-size:1.35rem}p{color:var(--muted)}.brand-tag{color:var(--brand-dark);letter-spacing:.05em;font-weight:700}.btn{border-radius:2px;align-items:center;gap:8px;min-height:46px;padding:0 22px;font-size:.98rem;font-weight:600;text-decoration:none;transition:transform .15s,box-shadow .15s;display:inline-flex}.btn:hover{transform:translateY(-2px)}.btn-line{background:var(--laser);color:#fff}.btn-line:hover{background:#bf3215}.btn-ghost{color:var(--text);border:1px solid var(--border);background:0 0}.btn-ghost:hover{border-color:var(--text)}.hero{text-align:center;padding-top:80px}.hero .avatar{object-fit:cover;object-position:center 20%;border:1px solid var(--border);border-radius:50%;width:96px;height:96px;margin:0 auto 24px;display:block}.hero p.lead{margin:16px 0 32px;font-size:1.1rem}.hero h1 .h1-kicker{color:var(--brand-dark);letter-spacing:.05em;margin-bottom:12px;font-size:1rem;display:block}.cards{gap:16px;display:grid}.card{background:var(--surface);border:1px solid var(--border);border-radius:2px;padding:24px}.card .num{color:var(--brand-dark);font-size:.9rem;font-weight:700}.card h3{margin:6px 0 8px;font-size:1.1rem}.card p{font-size:1rem}.zone-label{color:var(--laser);font-family:var(--f-mono);letter-spacing:.14em;margin-bottom:6px;font-size:.74rem;font-weight:500;display:inline-block}.zone-intro{margin-bottom:20px}.zone-intro strong{color:var(--text)}.pill-list{gap:12px;list-style:none;display:grid}.pill-list li{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:12px;padding:16px 20px;font-size:.98rem;font-weight:600}.zone-note{margin-top:20px;font-size:1rem}.quote{background:var(--surface);border-left:4px solid var(--brand);border-radius:8px;margin-bottom:16px;padding:20px 24px}.quote p{color:var(--text);font-style:italic}.quote .who{color:var(--muted);margin-top:8px;font-size:.85rem;font-style:normal}.posts a{border-bottom:1px solid var(--border);color:var(--text);padding:16px 0;text-decoration:none;display:block}.posts a:hover{color:var(--brand-dark)}.posts .date{color:var(--muted);font-size:.85rem}.cta{text-align:center;background:linear-gradient(120deg, #d63a1c14, transparent 55%), var(--surface);border:1px solid var(--border);border-radius:2px;margin:40px 0;padding:48px 24px}.cta h2{margin-bottom:12px}.cta p{margin-bottom:28px}footer{text-align:center;padding:40px 0 calc(40px + env(safe-area-inset-bottom,0px));color:var(--muted);border-top:1px solid var(--border);margin-top:40px;font-size:.85rem}footer a{color:var(--muted)}.prose{max-width:680px}.prose h2{margin:40px 0 16px;font-size:1.5rem}.prose h3{margin:32px 0 12px;font-size:1.2rem}.prose p{color:var(--text);margin-bottom:20px}.prose ul,.prose ol{color:var(--text);margin:0 0 20px 1.4em}.prose li{margin-bottom:8px}.prose a{color:var(--read)}.prose blockquote{border-left:4px solid var(--brand);background:var(--surface);border-radius:8px;margin:0 0 20px;padding:16px 20px}.prose img{border-radius:12px;max-width:100%}.post-meta{color:var(--muted);margin-bottom:8px;font-size:.9rem}.tag{color:var(--brand-dark);margin-right:8px;font-size:.85rem;display:inline-block}.compliance-note{background:var(--surface);border:1px solid var(--border);color:var(--muted);border-radius:8px;margin-bottom:24px;padding:12px 16px;font-size:.85rem}.back-link{color:var(--brand-dark);margin-top:8px;font-weight:600;text-decoration:none;display:inline-block}.site-nav{top:env(safe-area-inset-top,0px);z-index:10;backdrop-filter:blur(10px);border-bottom:1px solid var(--border);background:#f3f0e8e6;position:sticky}.site-nav-in{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-top:14px;padding-bottom:14px;display:flex}.site-nav-brand{align-items:center;gap:10px;display:inline-flex}.site-nav-brand i{background:var(--laser);border-radius:50%;width:10px;height:10px;box-shadow:0 0 0 3px #d63a1c2e}.site-nav-brand{color:var(--text);font-weight:900;text-decoration:none}.site-nav ul{gap:18px;list-style:none;display:flex}.site-nav a{color:var(--muted);font-size:.95rem;font-weight:600;text-decoration:none}.site-nav a[aria-current=page],.site-nav a:hover{color:var(--text)}.site-nav a[aria-current=page]{box-shadow:inset 0 -2px 0 var(--laser)}.page-head{padding-top:40px;padding-bottom:24px}.page-head h1{margin:6px 0 12px}.page-head .lead{font-size:1.05rem}.card-link{color:inherit;text-decoration:none;transition:transform .15s,box-shadow .15s;display:block}.card-link:hover{border-color:var(--laser);transform:translateY(-2px)}.card-link h3{color:var(--text)}.card-cover{border-radius:2px;width:100%;height:auto;margin-bottom:14px;display:block}.work-facts{background:var(--surface);border:1px solid var(--border);border-radius:12px;margin-bottom:28px;padding:14px 18px}.work-facts p{font-size:.95rem;margin:4px 0!important}.work-facts strong{color:var(--text)}.prose pre{border:1px solid var(--border);color:#ece8e1;background:#15171a;border-radius:10px;margin:0 0 20px;padding:16px 18px;font-size:.88rem;line-height:1.55;overflow-x:auto}.prose code{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:.92em}.prose :not(pre)>code{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:1px 6px}.prose table{border-collapse:collapse;width:100%;margin:0 0 20px;font-size:.95rem;display:block;overflow-x:auto}.prose th,.prose td{border:1px solid var(--border);text-align:left;color:var(--text);vertical-align:top;padding:8px 12px}.prose th{background:var(--surface)}.prose th:first-child,.prose td:first-child{white-space:nowrap}.home-more{gap:12px;display:grid}.works-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.w{background:var(--surface);border:1px solid var(--border);color:var(--text);grid-template-rows:auto 1fr;min-width:0;text-decoration:none;transition:border-color .2s;display:grid}.w:hover{border-color:var(--laser)}.w-img{aspect-ratio:4/3;background:#e6e2d8;max-width:100%;position:relative;overflow:hidden}.w-img img{object-fit:cover;width:100%;height:100%;transition:transform .6s;display:block}.w:hover .w-img img{transform:scale(1.04)}.w-kind{letter-spacing:.1em;color:var(--text);border:1px solid var(--border);background:#fbfaf6eb;padding:3px 8px;font-size:.68rem;position:absolute;top:12px;left:12px}.w-txt{align-content:start;gap:8px;padding:20px 22px 24px;display:grid}.w-txt h3{font-size:1.1rem}.w-txt p{-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:.9rem;display:-webkit-box;overflow:hidden}.w-stack{color:var(--read);letter-spacing:.04em;font-size:.7rem}@media (width<=1000px){.works-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.works-grid{grid-template-columns:minmax(0,1fr)}}.entry{padding-top:48px}.entry-head{border-bottom:1px solid var(--border);align-items:center;gap:40px;margin-bottom:48px;padding-bottom:40px;display:grid}.entry-head.has-cover{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.entry-title{min-width:0;max-width:820px}.entry h1{margin:4px 0 16px;font-size:clamp(1.8rem,3.4vw,2.7rem);font-weight:900;line-height:1.28}.entry-desc{color:#3e4349;margin-bottom:18px;font-size:1.05rem}.entry-meta{letter-spacing:.04em;color:var(--muted);flex-wrap:wrap;gap:6px 16px;margin-bottom:22px;font-size:.78rem;display:flex}.entry-meta .on{color:var(--read)}.entry-cover{border:1px solid var(--border);background:var(--surface);aspect-ratio:4/3;box-shadow:var(--shadow);min-width:0;margin:0;position:relative;overflow:hidden}.entry-cover img{object-fit:contain;width:100%;height:100%;display:block;border-radius:0!important}.entry-cover:before,.entry-cover:after{content:"";border:2px solid var(--laser);z-index:1;pointer-events:none;width:18px;height:18px;position:absolute}.entry-cover:before{border-bottom:0;border-right:0;top:-1px;left:-1px}.entry-cover:after{border-top:0;border-left:0;bottom:-1px;right:-1px}.entry-facts{background:var(--border);border:1px solid var(--border);gap:1px;margin:0;display:grid}.entry-facts div{background:var(--surface);gap:2px;padding:12px 16px;display:grid}.entry-facts dt{letter-spacing:.14em;color:var(--laser);font-size:.68rem}.entry-facts dd{color:var(--text);margin:0;font-size:.85rem}.entry-facts a{color:var(--read);text-decoration:none}.entry-body{grid-template-columns:minmax(0,720px) minmax(0,300px);justify-content:space-between;gap:48px;display:grid}.entry-body .prose{min-width:0;max-width:720px}.entry-aside{min-width:0}.aside-card{border:1px solid var(--border);background:var(--surface);gap:12px;padding:22px;display:grid;position:sticky;top:90px}.aside-card p{font-size:.92rem}.aside-card .btn{justify-content:center}.aside-back{color:var(--read);font-size:.9rem;font-weight:600;text-decoration:none}@media (width<=1000px){.entry-head.has-cover,.entry-body{grid-template-columns:minmax(0,1fr)}.entry-aside{display:none}}.demo-view{padding:0 0 24px}.demo-bar{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px 28px;padding-top:22px;padding-bottom:18px;display:flex}.demo-id{gap:4px;min-width:0;max-width:46rem;display:grid}.demo-id h1{font-size:clamp(1.6rem,3vw,2.2rem);line-height:1.2}.demo-id p{font-size:.92rem}.demo-actions{flex-wrap:wrap;gap:10px;display:flex}.demo-frame{margin:0 max(12px, env(safe-area-inset-left,0px));border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow)}.demo-dots{background:var(--surface);border-bottom:1px solid var(--border);align-items:center;gap:6px;height:30px;padding:0 12px;display:flex}.demo-dots i{background:#c9c4b8;border-radius:50%;width:8px;height:8px}.demo-dots i:first-child{background:var(--laser)}.demo-dots em{color:var(--muted);letter-spacing:.04em;text-overflow:ellipsis;white-space:nowrap;margin-left:10px;font-size:.7rem;font-style:normal;overflow:hidden}.demo-frame iframe{background:#fff;border:0;width:100%;height:calc(100svh - 208px);min-height:460px;display:block}.demo-note{color:var(--muted);padding-top:14px;font-size:.78rem}.demo-note a{color:var(--read);white-space:nowrap;margin-left:8px}@media (width<=640px){.demo-actions .btn{min-height:40px;padding:0 14px;font-size:.9rem}.demo-frame{border-left:0;border-right:0;margin:0}.demo-frame iframe{height:calc(100svh - 252px)}}
