:root{--color-ink-brown: oklch(32.68% .0423 26.31);--color-cream-canvas: oklch(98.04% .02 97.52);--color-card-cream: oklch(99.31% .012 96.42);--color-paper: oklch(98.62% .0142 84.58);--color-fog-sand: oklch(94.31% .0222 80.69);--color-soft-sand: oklch(84.88% .0416 74.4);--color-mint-path: oklch(73.87% .0848 186.74);--color-coral-level: oklch(66.75% .1888 19.74);--color-coral-action: oklch(55.88% .1707 19.72);--color-accent-ink: var(--color-card-cream);--color-brown-shadow: oklch(49.77% .0567 25.33);--color-rule: color-mix(in oklch, var(--color-ink-brown) 18%, var(--color-cream-canvas));--color-route-soft: color-mix(in oklch, var(--color-mint-path) 58%, var(--color-cream-canvas));--color-grid-soft: color-mix(in oklch, var(--color-mint-path) 32%, var(--color-cream-canvas));--color-route-label: var(--color-ink-brown);--color-mint-ink: color-mix(in oklch, var(--color-mint-path) 48%, var(--color-ink-brown));--color-system-wash: color-mix(in oklch, var(--color-soft-sand) 22%, transparent);--color-system-pattern: color-mix(in oklch, var(--color-soft-sand) 24%, var(--color-cream-canvas));--color-system-paper-back: color-mix(in oklch, var(--color-soft-sand) 34%, var(--color-card-cream));--color-system-paper-middle: color-mix(in oklch, var(--color-mint-path) 14%, var(--color-card-cream));--color-system-stroke: color-mix(in oklch, var(--color-ink-brown) 18%, var(--color-card-cream));--color-system-rule: color-mix(in oklch, var(--color-brown-shadow) 44%, var(--color-card-cream));--color-system-shadow: color-mix(in oklch, var(--color-ink-brown) 12%, var(--color-soft-sand));--color-focus: var(--color-coral-level);--font-display: "GenWanMin TW", "Noto Serif TC", "Songti TC", "PMingLiU", serif;--font-body: "Noto Sans TC", "PingFang TC", "Microsoft JhengHei", ui-sans-serif, system-ui, sans-serif;--font-outlier: "Silkscreen", ui-sans-serif, system-ui, sans-serif;--font-serif: "Noto Serif TC", "Songti TC", "PMingLiU", serif;--font-sans: var(--font-body);--font-brand: var(--font-outlier);--space-3xs: .125rem;--space-2xs: .25rem;--space-xs: .5rem;--space-sm: .75rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2.5rem;--space-2xl: 4rem;--space-3xl: 6rem;--space-4xl: 9rem;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-md: 1.125rem;--text-lg: 1.25rem;--text-xl: 1.5625rem;--text-2xl: 1.9531rem;--text-3xl: 2.4414rem;--text-4xl: 3.0518rem;--text-display: clamp(2.15rem, 7.6vw, 3rem);--text-hero-origin: clamp(2rem, 9.5vw, 3.75rem);--text-hero-action: clamp(1.75rem, 8vw, 3rem);--text-hero-destination: clamp(2.35rem, 10.5vw, 4.25rem);--text-hero-split: clamp(3.25rem, 4.7vw, 4.65rem);--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in: cubic-bezier(.7, 0, .84, 0);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--dur-micro: .12s;--dur-short: .22s;--dur-long: .42s;--rule-hair: 1px;--radius-action: .375rem;--z-base: 1;--z-raised: 10;--page-max-width: 1180px;--gutter: 40px;--border-soft: color-mix(in oklch, var(--color-ink-brown) 14%, transparent);--shadow-paper: 0 24px 60px color-mix(in oklch, var(--color-ink-brown) 10%, transparent);--shadow-action: 3px 3px 0 color-mix(in oklch, var(--color-coral-level) 68%, var(--color-cream-canvas));--shadow-system-object: 0 24px 24px color-mix(in oklch, var(--color-ink-brown) 14%, transparent)}html{overflow-x:clip;scroll-padding-top:7rem}.resource-site{margin:0;overflow-x:clip;background:var(--color-cream-canvas);color:var(--color-ink-brown);font:var(--text-base)/1.8 var(--font-body);-webkit-font-smoothing:antialiased}.resource-site *,.resource-site *:before,.resource-site *:after{box-sizing:border-box}.resource-site [hidden]{display:none!important}.resource-site :focus-visible{outline:2px solid var(--color-ink-brown);outline-offset:4px}.resource-shell{width:min(calc(100% - var(--space-xl)),var(--page-max-width));margin-inline:auto}.resource-shell :is(h1,h2,h3,p){margin:0}.resource-shell :is(h1,h2,h3){min-width:0;text-wrap:pretty;overflow-wrap:anywhere}.resource-shell a{color:inherit;text-decoration:none}.resource-shell button,.resource-shell input{font:inherit}.resource-shell button{cursor:pointer}.resource-shell button:disabled{opacity:.55;cursor:not-allowed}.resource-shell :is(button,input[type=search]){min-height:44px}.sr-only,.resource-skip:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.resource-skip:focus{position:fixed;inset:var(--space-md) auto auto var(--space-md);z-index:101;padding:var(--space-sm) var(--space-lg);background:var(--color-ink-brown);color:var(--color-card-cream)}.resource-index{padding-top:7rem;padding-bottom:var(--space-2xl)}.resource-intro{padding-bottom:var(--space-lg)}.resource-intro h1{font-family:var(--font-display);font-weight:600;font-size:clamp(var(--text-2xl),5vw,var(--text-4xl));line-height:1.4;letter-spacing:.02em}.resource-lead{max-width:42rem;font-size:var(--text-md);line-height:1.9;margin-top:var(--space-md)!important}.desktop-break{display:none}.resource-controls{display:flex;flex-direction:column-reverse;gap:var(--space-md);padding:var(--space-md) 0;border-top:var(--rule-hair) solid var(--color-rule)}.resource-filters{min-width:0;border:0;margin:0;padding:0}.resource-filters legend,.resource-search label{display:block;font-size:var(--text-sm);margin-bottom:var(--space-xs)}.filter-options{display:flex;flex-wrap:wrap;gap:var(--space-2xs)}.resource-filter{border:var(--rule-hair) solid transparent;padding:var(--space-xs);color:var(--color-ink-brown);background:transparent;border-radius:var(--radius-action);font-size:var(--text-sm)!important;white-space:nowrap}.resource-filter:active,.resource-text-button:active{text-decoration:underline;text-underline-offset:.25em}.resource-filter[aria-pressed=true]{background:var(--color-ink-brown);color:var(--color-card-cream);font-weight:700}.resource-search{min-width:0;margin:0}.search-input-wrap{position:relative}.search-input-wrap svg{position:absolute;width:18px;height:18px;top:50%;left:var(--space-md);transform:translateY(-50%);fill:none;stroke:currentColor;stroke-width:1.5;pointer-events:none}.search-input-wrap input{width:100%;border:var(--rule-hair) solid var(--color-brown-shadow);border-radius:var(--radius-action);background:var(--color-card-cream);color:var(--color-ink-brown);padding:var(--space-xs) var(--space-sm) var(--space-xs) var(--space-xl)}.search-input-wrap input::placeholder{color:var(--color-brown-shadow);opacity:1}.resource-list-heading{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-md);padding-bottom:var(--space-md)}.resource-list-heading h2{font-size:var(--text-md);font-weight:700}.resource-list-heading p{font-size:var(--text-sm);font-variant-numeric:tabular-nums}.resource-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-md);list-style:none;margin:0;padding:0}.resource-grid>li{min-width:0}.resource-card{display:flex;flex-direction:column;height:100%;min-width:0;padding:var(--space-lg);border:var(--rule-hair) solid var(--color-system-stroke);border-radius:var(--radius-action);background:var(--color-card-cream);color:var(--color-ink-brown)}.resource-card-meta{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);margin-bottom:var(--space-md);font-size:var(--text-sm)}.resource-kind{display:inline-flex;align-items:center;gap:var(--space-xs);font-weight:700}.kind-mark{font-size:var(--text-md);color:var(--color-mint-ink)}.resource-format{color:var(--color-brown-shadow)}.resource-card h3{font-size:var(--text-lg);line-height:1.6;font-weight:700}.resource-card-summary{margin-top:var(--space-sm)!important;line-height:1.85}.resource-context{margin-top:var(--space-md)!important;margin-bottom:var(--space-lg)!important;font-size:var(--text-sm);color:var(--color-brown-shadow)}.resource-card-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-sm);border-top:var(--rule-hair) solid var(--color-rule);padding-top:var(--space-md);margin-top:auto}.resource-card-bottom>span{font-size:var(--text-sm)}.resource-card-bottom strong{display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-action);font-size:var(--text-sm);color:var(--color-coral-action);white-space:nowrap;transition:background-color var(--dur-micro) var(--ease-out),color var(--dur-micro) var(--ease-out),transform var(--dur-micro) var(--ease-out)}.resource-card:is(:focus-visible,:active) .resource-card-bottom strong{background:var(--color-ink-brown);color:var(--color-card-cream)}.resource-card:active .resource-card-bottom strong{transform:translateY(2px);text-decoration:underline;text-underline-offset:.25em}.resource-card:is(:focus-visible,:active) h3{text-decoration:underline;text-underline-offset:.25em}.resource-next{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-lg);margin-top:var(--space-xl);padding:var(--space-xl) 0 0;border-top:var(--rule-hair) solid var(--color-rule)}.resource-next h2{font-size:var(--text-md);line-height:1.6}.resource-next p{font-size:var(--text-sm);margin-top:var(--space-xs)}.resource-text-link{display:inline-flex;align-items:center;gap:var(--space-xs);min-height:44px;font-weight:700;font-size:var(--text-sm);text-underline-offset:.3em;white-space:nowrap}.resource-empty{padding:var(--space-2xl) var(--space-lg);text-align:center;background:var(--color-card-cream);color:var(--color-ink-brown)}.resource-empty h3{font-size:var(--text-lg)}.resource-empty p{margin-block:var(--space-sm) var(--space-lg)}.resource-button{border:var(--rule-hair) solid var(--color-coral-action);border-radius:var(--radius-action);padding:var(--space-xs) var(--space-md);background:var(--color-coral-action);color:var(--color-accent-ink);font-size:var(--text-sm)!important;font-weight:700!important;white-space:nowrap;transition:transform var(--dur-micro) var(--ease-out)}.resource-button:active:not(:disabled){transform:translateY(1px)}.resource-text-button{border:0;padding:var(--space-xs) var(--space-sm);color:var(--color-ink-brown);background:transparent;font-size:var(--text-sm)!important;text-decoration:underline;text-underline-offset:.3em;white-space:nowrap}.resource-detail{max-width:780px;padding-top:7.5rem;padding-bottom:var(--space-2xl)}.resource-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-sm);font-size:var(--text-sm);margin-bottom:var(--space-lg)}.resource-breadcrumb a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:.3em}.resource-detail-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-lg);font-size:var(--text-sm);margin-bottom:var(--space-md)!important}.resource-detail-header h1{font-size:clamp(var(--text-xl),4.2vw,var(--text-3xl));line-height:1.55;letter-spacing:-.02em;font-weight:700}.resource-detail-header .resource-lead{font-size:var(--text-base)}.resource-tool{display:flex;flex-wrap:wrap;gap:var(--space-sm);margin-top:var(--space-lg)!important;padding-bottom:var(--space-lg);border-bottom:var(--rule-hair) solid var(--color-rule);font-size:var(--text-sm)}.resource-tool>span{font-weight:700}.resource-detail h2{font-size:var(--text-lg);line-height:1.6}.resource-preparation{padding-top:var(--space-lg)}.resource-preparation ul{padding-left:var(--space-lg);margin-block:var(--space-sm) var(--space-lg)}.resource-preparation li+li{margin-top:var(--space-xs)}.resource-note{padding:var(--space-md) var(--space-lg);background:var(--color-fog-sand);color:var(--color-ink-brown);font-size:var(--text-sm);line-height:1.85}.resource-content{padding-top:var(--space-xl);scroll-margin-top:var(--space-lg)}.resource-content-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-sm)}.resource-content-hint{font-size:var(--text-sm);margin-top:var(--space-xs)!important}.resource-prompt{margin-block:var(--space-lg);padding:var(--space-lg);white-space:pre-wrap;overflow-wrap:anywhere;font:var(--text-base)/1.95 var(--font-body);background:var(--color-card-cream);color:var(--color-ink-brown);border:var(--rule-hair) solid var(--color-system-stroke);border-radius:var(--radius-action);tab-size:2}.resource-copy-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--space-sm)}.resource-copy-status{font-size:var(--text-sm);min-height:1.8em;margin-top:var(--space-xs)!important}.resource-steps{list-style:none;padding:0;margin:var(--space-lg) 0 0}.resource-steps li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-md);border-top:var(--rule-hair) solid var(--color-rule);padding-block:var(--space-lg)}.resource-step-number{color:var(--color-mint-ink);font-size:var(--text-md);font-variant-numeric:tabular-nums;font-weight:700;padding-top:var(--space-3xs)}.resource-steps h3{font-size:var(--text-md)}.resource-steps p{margin-top:var(--space-xs)}.resource-step-output{font-size:var(--text-sm);color:var(--color-mint-ink)}#resource-checklist fieldset{min-width:0;margin:0;padding:0;border:0}.resource-checks{list-style:none;padding:0;margin-block:var(--space-lg) 0}.resource-checks li{border-top:var(--rule-hair) solid var(--color-rule)}.resource-checks label{display:flex;gap:var(--space-md);align-items:flex-start;padding:var(--space-lg) var(--space-xs);cursor:pointer}.resource-checks input{flex-shrink:0;width:21px;height:21px;margin:var(--space-2xs) 0 0;accent-color:var(--color-mint-ink)}.resource-checks label>span{display:grid;gap:var(--space-xs)}.resource-checks strong{font-weight:700;line-height:1.75}.resource-checks label>span>span{font-size:var(--text-sm)}.resource-checks label:has(input:checked){background:var(--color-system-paper-middle);color:var(--color-ink-brown)}.resource-check-progress{padding-top:var(--space-md);border-top:var(--rule-hair) solid var(--color-rule);font-size:var(--text-sm);font-weight:700;font-variant-numeric:tabular-nums}.resource-after{margin-top:var(--space-xl);padding-block:var(--space-lg);border-block:var(--rule-hair) solid var(--color-rule)}.resource-after p{margin-top:var(--space-sm)}.resource-provenance{font-size:var(--text-sm);margin-top:var(--space-lg)}.resource-provenance p+p{margin-top:var(--space-xs)}.resource-provenance a{text-decoration:underline;text-underline-offset:.25em;overflow-wrap:anywhere}.resource-provenance ul{padding-left:var(--space-lg)}.resource-provenance li a{display:inline-block;padding-block:var(--space-xs)}.resource-related{margin-top:var(--space-xl)}.resource-related a{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:var(--space-md);padding:var(--space-lg) 0;border-bottom:var(--rule-hair) solid var(--color-rule)}.resource-related a>span:first-child{grid-column:1 / -1;font-size:var(--text-sm);color:var(--color-brown-shadow)}.resource-related strong{font-size:var(--text-md)}.resource-back{margin-top:var(--space-xl)}@media(hover:hover)and (pointer:fine){.resource-filter:not([aria-pressed=true]):hover,.search-input-wrap input:hover{background:var(--color-fog-sand);color:var(--color-ink-brown)}.resource-card:hover h3,.resource-text-link:hover,.resource-related a:hover strong{text-decoration:underline;text-underline-offset:.25em}.resource-card:hover .resource-card-bottom strong{background:var(--color-ink-brown);color:var(--color-card-cream)}.resource-button:hover:not(:disabled){background:var(--color-ink-brown);color:var(--color-card-cream);border-color:var(--color-ink-brown)}.resource-checks label:hover{background:var(--color-system-paper-middle);color:var(--color-ink-brown)}}@media(min-width:40rem){.resource-shell{width:min(calc(100% - var(--space-2xl)),var(--page-max-width))}.resource-controls{flex-direction:row;align-items:flex-end;justify-content:space-between}.resource-search{width:45%}.resource-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-lg)}.resource-card{padding:var(--space-lg)}.resource-card-bottom{align-items:flex-start;flex-direction:column}.desktop-break{display:initial}.resource-detail{padding-top:8.5rem}.resource-prompt{padding:var(--space-xl)}}@media(min-width:60rem){.resource-index{padding-top:8rem;padding-bottom:var(--space-3xl)}.resource-intro{padding-bottom:var(--space-lg)}.resource-controls{flex-direction:row;justify-content:space-between;align-items:flex-end}.resource-filter{padding-inline:var(--space-md)}.resource-search{width:21rem}.resource-card{padding:var(--space-lg)}.resource-card h3{font-size:var(--text-xl);line-height:1.55}.resource-card-bottom{flex-direction:row;align-items:center}.resource-card-summary{min-height:3.7em}.resource-next{flex-direction:row;align-items:center;justify-content:space-between;margin-top:var(--space-2xl)}}@media(prefers-reduced-motion:reduce){.resource-shell *,.resource-shell *:before,.resource-shell *:after{transition:none!important;animation:none!important}.resource-button:active:not(:disabled),.resource-card:active .resource-card-bottom strong{transform:none}}
