@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--ease-out:var(--ease-out);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--font-display:var(--font-display);--font-sans:var(--font-sans);--font-num:var(--font-num);--font-mono:var(--font-mono);--shadow-frame:var(--shadow-frame);--ease-io:var(--ease-io)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}:root,[data-scheme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--p-clay:#ece6dc;--p-clay-2:#e2dacd;--p-bisque:#d8cebf;--p-ink:#15242b;--p-ink-2:#4d575b;--p-amber:#ebb352;--p-amber-hover:#f0bf68;--p-amber-deep:#c08a33;--p-char:#1b1916;--p-char-2:#26231f;--p-char-0:#121110;--p-char-3:#38332c;--p-paper:#efe9df;--p-paper-2:#ada597;--p-field:#f6f2ec;--p-hover-light:#d9d0c1;--p-hover-dark:#302c27;--p-input-light:#717c81;--p-input-dark:#78746d;--p-frame-bar:#2c2824;--p-frame-bezel:#0e0d0b;--p-pour-hi:#f2cd84;--bg:var(--p-clay);--bg-2:var(--p-clay-2);--bg-3:var(--p-bisque);--ink:var(--p-ink);--ink-2:var(--p-ink-2);--line:#15242b24;--line-strong:#15242b59;--input:var(--p-input-light);--frame-bar:var(--p-frame-bar);--frame-bezel:var(--p-frame-bezel);--pour-hi:var(--p-pour-hi);--field:var(--p-field);--hover:var(--p-hover-light);--accent:var(--p-amber);--accent-hover:var(--p-amber-hover);--accent-deep:var(--p-amber-deep);--on-accent:var(--p-ink);--focus:var(--p-ink);--stage:var(--p-char);--stage-2:var(--p-char-2);--on-stage:var(--p-paper);--on-stage-2:var(--p-paper-2);--line-stage:#efe9df29;--illu-1:var(--p-amber);--illu-2:var(--p-amber-deep);--illu-3:var(--p-ink-2);--illu-4:var(--p-bisque);--page-bg:var(--p-clay);--page-ink:var(--p-ink);--page-ink-2:var(--p-ink-2)}@media (prefers-color-scheme:dark){:root,[data-scheme=light]{--lightningcss-light: ;--lightningcss-dark:initial}}@supports (color:lab(0% 0 0)){:root,[data-scheme=light]{--p-clay:lab(91.576% .834733 5.68749);--p-clay-2:lab(87.4098% 1.2193 7.59621);--p-bisque:lab(83.2302% 1.68523 8.70425);--p-ink:lab(13.0797% -4.78485 -6.71345);--p-ink-2:lab(36.1561% -3.30938 -3.67833);--p-amber:lab(76.8301% 13.9124 56.0083);--p-amber-hover:lab(80.5025% 10.9597 50.145);--p-amber-deep:lab(61.7597% 15.2966 52.4888);--p-char:lab(8.95465% .524201 2.63318);--p-char-2:lab(13.9403% .83454 3.38096);--p-char-0:lab(5.09413% .288777 .767583);--p-char-3:lab(21.6052% 1.23507 5.31315);--p-paper:lab(92.62% .834078 5.68702);--p-paper-2:lab(68.1649% 1.17278 8.43061);--p-field:lab(95.7304% .608444 3.37539);--p-hover-light:lab(83.9395% 1.35002 8.77112);--p-hover-dark:lab(18.3463% 1.13267 4.10442);--p-input-light:lab(51.2319% -3.3679 -4.14678);--p-input-dark:lab(48.9972% .608861 4.57559);--p-frame-bar:lab(16.4764% 1.21683 3.22612);--p-frame-bezel:lab(3.63964% .0837743 .865755);--p-pour-hi:lab(84.4264% 6.59439 41.1113);--line:lab(13.0797% -4.78485 -6.71345/.14);--line-strong:lab(13.0797% -4.78485 -6.71345/.35);--line-stage:lab(92.62% .834078 5.68702/.16)}}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:var(--p-char);--bg-2:var(--p-char-2);--bg-3:var(--p-char-3);--ink:var(--p-paper);--ink-2:var(--p-paper-2);--line:#efe9df29;--line-strong:#efe9df61;--input:var(--p-input-dark);--field:var(--p-char-2);--hover:var(--p-hover-dark);--focus:var(--p-amber);--stage:var(--p-char-0);--stage-2:#1f1c19;--illu-3:var(--p-paper-2);--illu-4:var(--p-char-3);--page-bg:var(--p-char);--page-ink:var(--p-paper);--page-ink-2:var(--p-paper-2)}@supports (color:lab(0% 0 0)){:root:not([data-theme=light]){--line:lab(92.62% .834078 5.68702/.16);--line-strong:lab(92.62% .834078 5.68702/.38);--stage-2:lab(10.5614% .943519 2.507)}}}:root[data-theme=dark],[data-scheme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:var(--p-char);--bg-2:var(--p-char-2);--bg-3:var(--p-char-3);--ink:var(--p-paper);--ink-2:var(--p-paper-2);--line:#efe9df29;--line-strong:#efe9df61;--input:var(--p-input-dark);--field:var(--p-char-2);--hover:var(--p-hover-dark);--focus:var(--p-amber);--stage:var(--p-char-0);--stage-2:#1f1c19;--illu-3:var(--p-paper-2);--illu-4:var(--p-char-3);--page-bg:var(--p-char);--page-ink:var(--p-paper);--page-ink-2:var(--p-paper-2)}@supports (color:lab(0% 0 0)){:root[data-theme=dark],[data-scheme=dark]{--line:lab(92.62% .834078 5.68702/.16);--line-strong:lab(92.62% .834078 5.68702/.38);--stage-2:lab(10.5614% .943519 2.507)}}:root[data-theme=light],[data-scheme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-tone=stage],:root[data-head=stage] .site-header{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:var(--stage);--bg-2:var(--stage-2);--bg-3:var(--p-char-3);--ink:var(--on-stage);--ink-2:var(--on-stage-2);--line:var(--line-stage);--line-strong:#efe9df61;--input:var(--p-input-dark);--field:var(--stage-2);--hover:var(--p-hover-dark);--focus:var(--p-amber);--illu-3:var(--p-paper-2);--illu-4:var(--p-char-3);background:var(--bg);color:var(--ink)}@supports (color:lab(0% 0 0)){[data-tone=stage],:root[data-head=stage] .site-header{--line-strong:lab(92.62% .834078 5.68702/.38)}}:root,[data-scheme],[data-tone]{--illu-ink:var(--ink);--illu-line:var(--line-strong);--shadow-frame:0 0 0 1px var(--line), 0 18px 40px -26px #15242b80}@supports (color:lab(0% 0 0)){:root,[data-scheme],[data-tone]{--shadow-frame:0 0 0 1px var(--line), 0 18px 40px -26px lab(13.0797% -4.78485 -6.71345/.5)}}[data-scheme]{background:var(--bg);color:var(--ink)}:root{--font-display:"ZL Display", "Chiron Sung HK", "Noto Serif TC", "Songti TC", "PMingLiU", serif;--font-sans:"PingFang TC", "Noto Sans TC", "Microsoft JhengHei", "Heiti TC", sans-serif;--font-num:"ZL Num", "Newsreader", Georgia, "Times New Roman", serif;--font-mono:ui-monospace, "SFMono-Regular", Menlo, monospace;--fs-small:.9375rem;--fs-body:1.0625rem;--fs-lead:1.125rem;--fs-ui:1rem;--fs-h4:1.25rem;--fs-h3:clamp(1.375rem, 1.1rem + .6vw, 1.75rem);--fs-h2:clamp(2.25rem, 1rem + 3.4vw, 4.75rem);--fs-h1:clamp(2.25rem, 1rem + 4.2vw, 5.25rem);--fs-h1-post:clamp(2rem, 1.2rem + 2.4vw, 3.25rem);--fs-display:clamp(2.25rem, 1rem + 4.4vw, 5.25rem);--fs-num-l:clamp(2.25rem, 1.5rem + 1.6vw, 3.5rem);--sp-1:.25rem;--sp-2:.5rem;--sp-3:.75rem;--sp-4:1rem;--sp-5:1.5rem;--sp-6:2rem;--sp-7:3rem;--sp-8:4rem;--sp-9:6rem;--sp-10:8rem;--section-y:clamp(4rem, 7vw, 6.5rem);--gut:max(clamp(16px, 3.3vw, 48px), env(safe-area-inset-left,0px));--gut-r:max(clamp(16px, 3.3vw, 48px), env(safe-area-inset-right,0px));--gap:24px;--w-page:100rem;--w-read:40em;--head-h:64px;--r-s:4px;--r-m:12px;--r-pill:999px;--r-device:26px;--r-device-in:20px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-io:cubic-bezier(.65, 0, .35, 1);--dur-press:.12s;--dur-hover:.15s;--dur-pop:.2s;--dur-enter:.35s}@media (max-width:47.49em){:root{--fs-body:1rem;--gap:16px;--head-h:56px}}@media (prefers-reduced-motion:reduce){:root{--dur-pop:.15s;--dur-enter:.15s}}:root:lang(zh-Hant){text-autospace:normal;line-break:strict;font-synthesis-style:none}pre,code,kbd,samp{text-autospace:no-autospace}html{background:var(--bg);color:var(--ink);font-family:var(--font-sans);-moz-text-size-adjust:100%;text-size-adjust:100%;accent-color:var(--ink);scroll-padding-top:calc(var(--head-h) + var(--sp-4));font-size:100%}html:has(dialog:modal){scrollbar-gutter:stable;overflow:hidden}body{background:var(--bg);min-height:100svh;color:var(--ink);font-size:var(--fs-body);letter-spacing:.02em;line-height:1.8}h1,h2,h3{font-family:var(--font-display);font-synthesis:none;letter-spacing:.02em;text-wrap:balance;color:inherit;font-weight:700}h1{font-size:var(--fs-h1);line-height:1.12}h2{font-size:var(--fs-h2);line-height:1.12}h3{font-size:var(--fs-h3);line-height:1.3}h4{font-family:var(--font-sans);font-size:var(--fs-h4);letter-spacing:.02em;text-wrap:balance;font-weight:700;line-height:1.5}p,li,dd,td,th,summary{text-wrap:pretty}p,li,dd,figcaption{max-width:var(--w-read)}small{font-size:var(--fs-small);line-height:1.7}a{color:var(--ink);text-underline-offset:.3em;text-decoration-line:underline;text-decoration-thickness:1px}@media (hover:hover) and (pointer:fine){a:hover{text-decoration-thickness:2px}}strong,b{font-weight:700}em{font-style:normal;text-emphasis:dot;text-emphasis-position:under}time,data{font-variant-numeric:tabular-nums}code,kbd,samp,pre{font-family:var(--font-mono);font-variant-ligatures:none;letter-spacing:0}::selection{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){::selection{background:color-mix(in oklch, var(--accent) 45%, transparent)}}::selection{color:var(--ink)}:focus-visible{outline:2px solid var(--focus);outline-offset:3px}:where(:focus-visible){border-radius:4px}[hidden]{display:none!important}img,svg,video{max-width:100%;height:auto}button,input,select,textarea{font:inherit;letter-spacing:inherit;color:inherit}select{background-color:var(--field);color:var(--ink)}button{cursor:pointer}hr{border:0;border-top:1px solid var(--line)}@media (max-height:31.25rem){html{scroll-padding-top:var(--sp-4)}}}@layer components{:root{--icon-check:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3 8.5l3.2 3.2L13 4.6' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}.logo{block-size:2.25rem;color:var(--ink);flex:none;align-items:center;gap:.5rem;text-decoration:none;display:inline-flex}.logo-mark{flex:none;block-size:100%;inline-size:auto}.logo-type{gap:.2rem;display:grid}.logo-zh{font:700 1.125rem/1 var(--font-display);font-synthesis:none;letter-spacing:.08em;white-space:nowrap}.logo-en{stroke:currentColor;block-size:.4rem;inline-size:auto;display:block}.logo-stack{flex-direction:column;gap:.625rem;block-size:auto}.logo-stack .logo-mark{block-size:3.5rem}.logo-stack .logo-type{justify-items:center;gap:.4rem}.logo-stack .logo-zh{font-size:1.375rem}.logo-stack .logo-en{block-size:.5rem}@media (max-width:22em){.logo:not(.logo-stack) .logo-en{display:none}}.logo-link{color:inherit;flex:none;text-decoration:none;display:inline-flex}.site-header .logo{position:relative}.site-header .logo:after{content:"";position:absolute;inset:-4px 0}.skip-link,.skip-inline{z-index:100;min-block-size:2.75rem;padding:.5rem var(--sp-5);border-radius:var(--r-pill);background:var(--accent);color:var(--on-accent);align-items:center;font-weight:700;text-decoration:none;display:inline-flex;position:fixed;inset-block-start:var(--sp-3);inset-inline-start:var(--sp-4);translate:0 -300%}.skip-link:focus,.skip-inline:focus{outline-color:var(--ink);translate:0}#main:focus{outline:none}.btn{border-radius:var(--r-pill);min-block-size:52px;font-family:var(--font-sans);letter-spacing:.02em;text-align:center;white-space:nowrap;cursor:pointer;transition:background-color var(--dur-hover) var(--ease-out), border-color var(--dur-hover) var(--ease-out), color var(--dur-hover) var(--ease-out), scale var(--dur-press) var(--ease-out);border:1.5px solid #0000;justify-content:center;align-items:center;gap:.5em;padding:0 26px;font-size:1.125rem;font-weight:700;line-height:1.25;text-decoration:none;display:inline-flex}.btn:active{scale:.97}.btn-primary{background:var(--accent);color:var(--on-accent)}.btn-primary:focus-visible{outline-color:var(--ink)}.btn-secondary{border-color:var(--input);color:var(--ink);background:0 0}.btn-sm{min-block-size:40px;padding:0 18px;font-size:1rem;position:relative}.btn-sm:after{content:"";position:absolute;inset:-3.5px 0}@media (hover:hover) and (pointer:fine){.btn-primary:hover{background:var(--accent-hover)}.btn-secondary:hover{border-color:var(--ink);background:var(--hover)}}@media (max-width:22.5em){.btn{white-space:normal;padding-inline:20px}}.tlink{min-block-size:44px;color:var(--ink);text-underline-offset:.45em;align-items:center;font-size:1.125rem;font-weight:700;line-height:1.3;text-decoration-line:underline;text-decoration-thickness:1.5px;display:inline-flex}@media (hover:hover) and (pointer:fine){.tlink:hover{text-decoration-thickness:3px}}.chip{border:1.5px solid var(--input);border-radius:var(--r-pill);background:var(--bg-2);min-block-size:44px;color:var(--ink);font-family:var(--font-sans);font-size:var(--fs-ui);white-space:nowrap;cursor:pointer;transition:background-color var(--dur-hover) var(--ease-out), border-color var(--dur-hover) var(--ease-out), color var(--dur-hover) var(--ease-out), scale var(--dur-press) var(--ease-out);flex:none;align-items:baseline;gap:6px;padding:11px 18px;font-weight:700;line-height:1.2;text-decoration:none;display:inline-flex;position:relative}.chip .num{color:var(--ink-2);font-weight:600}.chip[aria-pressed=true],.chip[aria-current=true],.chip[aria-current=page]{background:var(--accent);border-color:var(--ink);color:var(--on-accent)}.chip:has(>input:checked){background:var(--accent);border-color:var(--ink);color:var(--on-accent)}.chip[aria-pressed=true] .num,.chip[aria-current] .num{color:inherit}.chip:has(>input:checked) .num{color:inherit}.chip:active{scale:.97}.chip>input{opacity:0;cursor:pointer;block-size:100%;inline-size:100%;margin:0;position:absolute;inset:0}@supports (text-box:trim-both cap alphabetic){:is(.btn:not(:has(>svg)),.chip){text-box:trim-both cap alphabetic;min-block-size:0;display:inline-block}.btn{padding-block:calc(26px - .5cap)}.btn-sm{padding-block:calc(20px - .5cap)}.chip{padding-block:calc(22px - .5cap)}.chip .num{margin-inline-start:6px}@media (min-width:40em){.btn.header-cta{display:inline-block}}}.chip:has(>input:focus-visible){outline:2px solid var(--focus);outline-offset:3px}[data-kbd] .chip:has(>input:focus){outline:2px solid var(--focus);outline-offset:3px}@media (hover:hover) and (pointer:fine){.chip:not([aria-pressed=true],[aria-current],:has(>input:checked)):hover{background:var(--hover)}}.chip-row{gap:var(--sp-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.chip-row>li{max-width:none}@media (max-width:47.49em){.chip-row{overscroll-behavior-x:contain;scrollbar-width:none;margin-inline:calc(var(--gut) * -1) calc(var(--gut-r) * -1);padding:6px var(--gut-r) 6px var(--gut);flex-wrap:nowrap;margin-block:-6px;overflow-x:auto}.chip-row::-webkit-scrollbar{display:none}}.opt{border:1.5px solid var(--input);border-radius:var(--r-m);background:var(--bg-2);min-block-size:68px;color:var(--ink);cursor:pointer;transition:background-color var(--dur-hover) var(--ease-out), border-color var(--dur-hover) var(--ease-out), color var(--dur-hover) var(--ease-out);align-content:center;gap:2px;padding:12px 44px 12px 16px;line-height:1.4;display:grid;position:relative}.opt>input{opacity:0;cursor:pointer;block-size:100%;inline-size:100%;margin:0;position:absolute;inset:0}.opt:after{content:"";opacity:0;block-size:18px;inline-size:18px;-webkit-mask:var(--icon-check) center / contain no-repeat;-webkit-mask:var(--icon-check) center / contain no-repeat;-webkit-mask:var(--icon-check) center / contain no-repeat;-webkit-mask:var(--icon-check) center / contain no-repeat;mask:var(--icon-check) center / contain no-repeat;background:currentColor;position:absolute;inset-block-start:10px;inset-inline-end:10px}.opt-title{font-size:var(--fs-ui);font-weight:700}.opt-note{color:var(--ink-2);font-size:var(--fs-small)}.opt:has(>input:checked){background:var(--accent);border-color:var(--ink);color:var(--on-accent)}.opt:has(>input:checked):after{opacity:1}.opt:has(>input:checked) .opt-note{color:inherit}.opt:has(>input:focus-visible){outline:2px solid var(--focus);outline-offset:3px}[data-kbd] .opt:has(>input:focus){outline:2px solid var(--focus);outline-offset:3px}.opt:has(>input:disabled){opacity:.55;cursor:not-allowed}@media (hover:hover) and (pointer:fine){.opt:not(:has(>input:checked,>input:disabled)):hover{background:var(--hover)}}.input{border:1px solid var(--input);border-radius:var(--r-s);background:var(--field);min-block-size:48px;inline-size:100%;color:var(--ink);font-size:var(--fs-ui);padding:10px 12px;line-height:1.5;display:block}.input::placeholder{color:var(--ink-2);opacity:1}.site-header{z-index:50;background:var(--bg);color:var(--ink);border-block-end:1px solid var(--line);transition:background-color var(--dur-hover) var(--ease-out), color var(--dur-hover) var(--ease-out), border-color var(--dur-hover) var(--ease-out);position:sticky;inset-block-start:0}@media (max-height:31.25rem){.site-header{position:static}}.site-header-inner{align-items:center;gap:var(--sp-4);block-size:var(--head-h);max-inline-size:var(--w-page);padding-inline:var(--gut) var(--gut-r);margin-inline:auto;display:flex}.site-nav{margin-inline-start:auto;display:none}.site-header-actions{align-items:center;gap:var(--sp-2);margin-inline-start:auto;display:flex}.header-cta,.site-header-actions>.theme-toggle{display:none}@media (min-width:40em){.header-cta{display:inline-flex}}@media (min-width:64em){.site-nav{display:block}.site-header-actions{margin-inline-start:var(--sp-3)}.site-header-actions>.theme-toggle{margin-inline-end:-12px;display:inline-flex}}.site-header-actions>.menu-btn{margin-inline-end:max(-14px, calc(6px - var(--gut-r)))}.nav-bar{align-items:center;margin:0;padding:0;list-style:none;display:flex}.nav-bar li,.nav-menu li{max-width:none}.nav-link{min-block-size:44px;color:var(--ink-2);font-size:var(--fs-ui);white-space:nowrap;transition:color var(--dur-hover) var(--ease-out);align-items:center;padding:0 .625rem;font-weight:500;line-height:1.4;text-decoration:none;display:inline-flex;position:relative}.nav-label{position:relative}.nav-label:after{content:"";background:var(--accent);transform-origin:0;border-radius:1px;block-size:2px;position:absolute;inset-block-end:-5px;inset-inline:0;scale:0 1}.nav-link[aria-current]{color:var(--ink)}.nav-link[aria-current] .nav-label:after{scale:1}@media (hover:hover) and (pointer:fine){.nav-link:hover{color:var(--ink)}}.theme-toggle{border-radius:var(--r-pill);min-block-size:44px;color:var(--ink);font-size:var(--fs-ui);white-space:nowrap;transition:background-color var(--dur-hover) var(--ease-out), scale var(--dur-press) var(--ease-out);background:0 0;border:1.5px solid #0000;flex:none;align-items:center;gap:8px;padding:0 12px;font-weight:500;line-height:1;display:inline-flex}.theme-toggle:active{scale:.96}@media (hover:hover) and (pointer:fine){.theme-toggle:hover{background:var(--hover)}}.theme-toggle svg{flex:none;block-size:14px;inline-size:14px;overflow:visible}.tt-line{fill:none;stroke:currentColor;stroke-width:1.5px}.tt-amber{fill:var(--accent)}.tt-label{display:none}:root:not([data-theme]) .tt-sys,:root[data-theme=light] .tt-light,:root[data-theme=dark] .tt-dark{display:inline}.menu-btn{border-radius:var(--r-pill);min-block-size:44px;color:var(--ink);font-size:var(--fs-ui);transition:background-color var(--dur-hover) var(--ease-out), scale var(--dur-press) var(--ease-out);background:0 0;border:1.5px solid #0000;align-items:center;padding:0 14px;font-weight:700;line-height:1;display:inline-flex}.menu-btn:active{scale:.96}@media (hover:hover) and (pointer:fine){.menu-btn:hover{background:var(--hover)}}@media (min-width:64em){.menu-btn{display:none}}.menu-dialog{block-size:100%;max-block-size:none;inline-size:100%;max-inline-size:none;padding:0 var(--gut-r) var(--sp-7) var(--gut);background:var(--bg);color:var(--ink);overscroll-behavior:contain;opacity:0;transition:opacity var(--dur-pop) var(--ease-out), translate var(--dur-pop) var(--ease-out), display var(--dur-pop) allow-discrete, overlay var(--dur-pop) allow-discrete;border:0;margin:0;position:fixed;inset:0;overflow-y:auto;translate:0 -8px}.menu-dialog[open]{opacity:1;flex-direction:column;display:flex;translate:0}@starting-style{.menu-dialog[open]{opacity:0;translate:0 -8px}}.menu-dialog::backdrop{background:0 0}@media (prefers-reduced-motion:reduce){.menu-dialog,.menu-dialog[open]{translate:none}@starting-style{.menu-dialog[open]{translate:none}}}.menu-head{justify-content:space-between;align-items:center;gap:var(--sp-4);min-block-size:var(--head-h);border-block-end:1px solid var(--line);flex:none;display:flex}.menu-close{border:1.5px solid var(--input);border-radius:var(--r-pill);min-block-size:44px;color:var(--ink);font-size:var(--fs-ui);background:0 0;align-items:center;padding:0 14px;font-weight:700;line-height:1;display:inline-flex}@media (hover:hover) and (pointer:fine){.menu-close:hover{border-color:var(--ink)}}.menu-nav{padding-block:var(--sp-5) var(--sp-6)}.nav-menu{margin:0;padding:0;list-style:none}.nav-menu .nav-link{border-block-end:1px solid var(--line);min-block-size:3.75rem;inline-size:100%;color:var(--ink);font-family:var(--font-display);font-size:var(--fs-h3);letter-spacing:.02em;padding:0;font-weight:700;display:flex}.nav-menu .nav-label:after{block-size:3px;inset-block-end:-8px}.menu-foot{align-items:center;gap:var(--sp-4);flex-wrap:wrap;margin-block-start:auto;display:flex}.site-footer{padding-block:var(--sp-8) var(--sp-5);border-block-start:1px solid var(--line)}.footer-top{gap:var(--sp-7);display:grid}@media (min-width:47.5em){.footer-top{column-gap:var(--gap);grid-template-columns:repeat(12,minmax(0,1fr))}.footer-brand{grid-column:1/-1}.footer-col-site{grid-column:1/span 7}.footer-col-ind{grid-column:8/-1}}@media (min-width:64em){.footer-brand{grid-column:1/span 3}.footer-col-site{grid-column:4/span 5}.footer-col-ind{grid-column:9/-1}}.footer-brand{align-content:start;justify-items:start;gap:var(--sp-4);display:grid}.footer-brand .logo{block-size:2.75rem}.footer-brand .logo-zh{font-size:1.375rem}.footer-brand .logo-en{block-size:.5rem}.footer-brand p{color:var(--ink-2);max-width:20em;margin:0}.footer-h{margin:0 0 var(--sp-2);font-family:var(--font-sans);font-size:var(--fs-small);letter-spacing:.04em;color:var(--ink-2);font-weight:700;line-height:1.7}.footer-list{columns:2;column-gap:var(--gap);margin:0;padding:0;list-style:none}.footer-col-ind .footer-list{columns:1}.footer-col-ind>nav+nav{margin-block-start:var(--sp-5)}@media (max-width:47.49em){.footer-col-ind .footer-list{columns:2}}.footer-list li{break-inside:avoid;max-width:none}.footer-list a{min-block-size:44px;color:var(--ink);text-wrap:balance;align-items:center;text-decoration:none;display:inline-flex}@media (hover:hover) and (pointer:fine){.footer-list a{min-block-size:40px}.footer-list a:hover,.footer-legal a:hover{text-decoration-line:underline;text-decoration-thickness:1px}}.footer-base{justify-content:space-between;align-items:center;gap:var(--sp-2) var(--sp-5);border-block-start:1px solid var(--line);color:var(--ink-2);font-size:var(--fs-small);flex-wrap:wrap;margin-block-start:var(--sp-7);padding-block-start:var(--sp-4);line-height:1.7;display:flex}.footer-base p{margin:0}.footer-legal{flex-wrap:wrap;align-items:center;margin:0;padding:0;list-style:none;display:flex}.footer-legal li{align-items:center;max-width:none;display:inline-flex}.footer-legal li:not(:last-child):after{content:"・";color:var(--ink-2)}@media (max-width:22.49em){.footer-legal li:first-child{flex-basis:100%}.footer-legal li:first-child:after{content:none}.footer-date{display:block}.footer-sep{display:none}}.footer-legal a{min-block-size:44px;color:var(--ink);align-items:center;text-decoration:none;display:inline-flex}.footer-legal .num{font-weight:600}.footer-build{font-variant-numeric:tabular-nums}.section-heading{gap:var(--sp-4);margin-block-end:var(--sp-7);display:grid}.section-heading>:is(h2,h3){margin:0}.section-heading .lead{color:var(--ink-2);font-size:var(--fs-lead);max-width:32em;margin:0;line-height:1.85}@media (min-width:64em){.section-heading{column-gap:var(--gap);grid-template-columns:repeat(12,minmax(0,1fr));align-items:end}.section-heading>:is(h2,h3){grid-column:1/span 7}.section-heading>:is(h2,h3):only-child{grid-column:1/span 9}.section-heading .lead{grid-column:8/-1}}.section-heading.is-center{text-align:center;justify-items:center}@media (min-width:64em){.section-heading.is-center{grid-template-columns:minmax(0,1fr)}.section-heading.is-center>:is(h2,h3),.section-heading.is-center .lead{grid-column:1}}[data-split] .split-word{white-space:nowrap}[data-split] .split-mask,[data-split] [class*=-mask]{margin-block-end:-.08em;padding-block-end:.08em}.page-head{padding-block:clamp(2.5rem,6vw,5.5rem) 0}.page-head-inner{gap:var(--sp-5);justify-items:start;display:grid}.page-head-inner>*{min-inline-size:0}.page-head h1{max-inline-size:100%;margin:0}.page-head-lead{color:var(--ink-2);font-size:var(--fs-lead);max-width:32em;margin:0;line-height:1.85}.page-head-actions{align-items:center;gap:var(--sp-3) var(--sp-4);flex-wrap:wrap;margin-block-start:var(--sp-2);display:flex}.page-head .crumbs{margin-block-end:calc(var(--sp-2) * -1)}@media (min-width:47.5em){.page-head-inner{column-gap:var(--gap);grid-template-columns:repeat(12,minmax(0,1fr))}.page-head-inner>*{grid-column:1/-1}.page-head h1,.page-head-lead{grid-column:1/span 9}}.page-head-rule{background:var(--ink);transform-origin:0;block-size:1px;margin-block-start:clamp(2.5rem,5vw,4rem)}@media (prefers-reduced-motion:no-preference){.page-head-rule{animation:zl-draw .6s var(--ease-out) both}}@keyframes zl-draw{0%{scale:0 1}}.crumbs ol{color:var(--ink-2);font-size:var(--fs-small);flex-wrap:wrap;align-items:center;gap:0 .5em;margin:0;padding:0;line-height:1.7;list-style:none;display:flex}.crumbs li{align-items:center;gap:.5em;max-width:none;display:inline-flex}.crumbs a{min-block-size:44px;color:var(--ink-2);align-items:center;text-decoration-thickness:1px;display:inline-flex}@media (hover:hover) and (pointer:fine){.crumbs a:hover{color:var(--ink)}}.crumbs [aria-current]{color:var(--ink)}.crumbs-sep{color:var(--ink-2)}.spec-title{margin:0 0 var(--sp-3);font-size:1.375rem;line-height:1.3}.spec-list{margin:0;display:grid}.spec-row{gap:var(--sp-4);border-block-start:1px solid var(--line);grid-template-columns:7em minmax(0,1fr);padding-block:.75rem;display:grid}.spec-row dt{color:var(--ink-2);font-size:var(--fs-small);padding-block-start:.1em;line-height:1.7}.spec-row dd{color:var(--ink);font-size:var(--fs-ui);max-width:none;margin:0;line-height:1.7}.faq{border-block-end:1px solid var(--line);max-inline-size:52rem;margin:0;display:grid}.faq-item{border-block-start:1px solid var(--line)}.faq-q{min-block-size:64px;padding:var(--sp-3) 44px var(--sp-3) 0;font-size:var(--fs-h4);cursor:pointer;align-items:center;font-weight:700;line-height:1.5;list-style:none;display:flex;position:relative}.faq-q::-webkit-details-marker{display:none}.faq-q:before,.faq-q:after{content:"";block-size:2px;inline-size:16px;transition:rotate var(--dur-pop) var(--ease-out);background:currentColor;border-radius:1px;margin-block-start:-1px;position:absolute;inset-block-start:50%;inset-inline-end:10px}.faq-q:after{rotate:90deg}.faq-item[open]>.faq-q:after{rotate:0deg}.faq-a{padding-block:0 var(--sp-5);color:var(--ink);padding-inline-end:44px}.faq-a>*+*{margin-block-start:var(--sp-3)}.faq-a p{margin:0}.faq-item[open]>.faq-a{animation:zl-fade-in var(--dur-pop) var(--ease-out)}@media (hover:hover) and (pointer:fine){.faq-q:hover{text-underline-offset:.3em;text-decoration-line:underline;text-decoration-thickness:1px}}.frame{border-radius:var(--r-m);background:var(--frame-bar);min-inline-size:0;box-shadow:var(--shadow-frame);display:block;position:relative;overflow:clip}.frame-bar{background:var(--frame-bar);align-items:center;gap:6px;block-size:28px;padding-inline:12px;display:flex}.frame-bar i{background:var(--on-stage);border-radius:50%;flex:none;block-size:8px;inline-size:8px}@supports (color:color-mix(in lab, red, red)){.frame-bar i{background:color-mix(in oklch, var(--on-stage) 28%, transparent)}}.frame-url{min-inline-size:0;color:var(--on-stage-2);font-size:var(--fs-small);letter-spacing:0;white-space:nowrap;text-overflow:ellipsis;margin-inline-start:8px;line-height:1;overflow:hidden}.frame-screen{background:var(--bg-2);display:block;position:relative;overflow:hidden}.frame-screen>img,.frame-screen>picture>img,.frame-screen>video{block-size:auto;inline-size:100%;display:block}.frame.has-ratio .frame-screen>:is(img,video),.frame.has-ratio .frame-screen>picture>img{object-fit:cover;object-position:top;block-size:100%}.frame.has-ratio .frame-screen>picture{block-size:100%;display:block}.frame.is-scroll .frame-screen{overscroll-behavior:contain;overflow-y:auto}.frame.is-scroll .frame-screen>:is(img,video),.frame.is-scroll .frame-screen>picture>img{object-fit:initial;block-size:auto}.frame-screen:focus-visible{outline-offset:-3px}@supports selector(:has(*)){.frame.is-scroll>.frame-screen:focus-visible{border-radius:0;outline:none}.frame.is-scroll:has(>.frame-screen:focus-visible){outline:2px solid var(--focus);outline-offset:3px}}.frame-phone{border:6px solid var(--frame-bezel);border-radius:var(--r-device);background:var(--frame-bezel)}.frame-phone .frame-screen{border-radius:var(--r-device-in)}.frame-vt{view-transition-name:var(--vtn)}html.theme-vt .frame-vt{view-transition-name:none}@media (prefers-reduced-motion:reduce){.frame-vt{view-transition-name:none}}.work-card{align-content:start;gap:var(--sp-3);min-inline-size:0;color:inherit;border-radius:var(--r-m);text-decoration:none;display:grid}.work-card:focus-visible{outline-offset:6px}.work-card .frame-screen img{transition:scale .18s var(--ease-out)}.work-card .frame{transition:scale var(--dur-press) var(--ease-out)}.work-card:active .frame{scale:.98}.work-card-body{justify-items:start;gap:2px;display:grid}.work-card-title{font-family:var(--font-display);letter-spacing:.02em;text-wrap:balance;margin:0;font-size:1.375rem;font-weight:700;line-height:1.35}@media (hover:hover) and (pointer:fine){.work-card:hover .frame-screen img{scale:1.02}.work-card:hover .work-card-title{text-underline-offset:.3em;text-decoration-line:underline;text-decoration-thickness:1.5px}}@media (prefers-reduced-motion:reduce){.work-card .frame-screen img{transition:none}}.cta-band{padding-block:clamp(4.5rem,9vw,8rem)}.cta-band-inner{gap:var(--sp-6);display:grid}.cta-band-text{gap:var(--sp-4);min-inline-size:0;display:grid}.cta-band-text h2{margin:0}.cta-band-text p{color:var(--ink-2);font-size:var(--fs-lead);max-width:32em;margin:0;line-height:1.85}.cta-band-actions{align-items:center;gap:var(--sp-3);flex-wrap:wrap;display:flex}@media (min-width:64em){.cta-band-inner{column-gap:var(--gap);grid-template-columns:repeat(12,minmax(0,1fr));align-items:end}.cta-band-text{grid-column:1/span 8}.cta-band-actions{grid-column:9/-1}}@media (min-width:64em) and (max-width:73.74em){.cta-band-actions{gap:var(--sp-2)}.cta-band-actions .btn{padding-inline:16px}}.channels{align-items:center;gap:var(--sp-3) var(--sp-4);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.channel{align-items:center;gap:var(--sp-2);flex-wrap:wrap;max-width:none;display:inline-flex}.channel-note{color:var(--ink-2);font-size:var(--fs-small);font-variant-numeric:tabular-nums}.tax-note{font-family:var(--font-sans);font-size:var(--fs-small);letter-spacing:0;color:var(--ink-2);white-space:nowrap;font-weight:500;line-height:1.4}.article-card{gap:var(--sp-2);padding:var(--sp-5) var(--sp-4);margin-inline:calc(var(--sp-4) * -1);border-block-start:1px solid var(--line);border-radius:var(--r-s);transition:background-color var(--dur-hover) var(--ease-out);display:grid}@media (hover:hover) and (pointer:fine){.article-card:hover{background:var(--bg-2)}}.article-meta{color:var(--ink-2);font-size:var(--fs-small);font-variant-numeric:tabular-nums;margin:0;line-height:1.7}.article-title{margin:0;font-size:1.5rem;line-height:1.35}.article-title a{color:var(--ink);text-decoration:none}@media (hover:hover) and (pointer:fine){.article-title a:hover{text-decoration-line:underline;text-decoration-thickness:1.5px}}.article-desc{color:var(--ink-2);margin:0}.article-tags{gap:var(--sp-2);margin:var(--sp-1) 0 0;flex-wrap:wrap;display:flex}.industry-links{align-items:baseline;gap:0 var(--sp-4);max-width:none;font-size:var(--fs-small);flex-wrap:wrap;margin:0;line-height:1.7;display:flex}.industry-links-label{color:var(--ink-2)}.industry-links-br{flex-basis:100%;block-size:0}.industry-links a{white-space:nowrap;min-block-size:44px;color:var(--ink);text-underline-offset:.3em;align-items:center;text-decoration-thickness:1px;display:inline-flex}.nf{min-block-size:calc(100svh - var(--head-h) - 12rem);padding-block-end:var(--section-y)}.nf-links{align-items:center;gap:var(--sp-3) var(--sp-4);flex-wrap:wrap;display:flex}}@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.text-wrap{text-wrap:wrap}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.keep{white-space:nowrap}:is(h1,h2,h3) .keep,.keep.plan-phrase{white-space:normal;display:inline-block}.num{font-family:var(--font-num);font-variant-numeric:tabular-nums lining-nums;letter-spacing:0;font-weight:600}.meta{color:var(--ink-2);font-size:var(--fs-small);margin:0;line-height:1.7}.wrap{max-inline-size:var(--w-page);padding-inline:var(--gut) var(--gut-r);margin-inline:auto}.grid-12{column-gap:var(--gap);grid-template-columns:minmax(0,1fr);display:grid}@media (min-width:47.5em){.grid-12{grid-template-columns:repeat(12,minmax(0,1fr))}}.sec{padding-block:var(--section-y)}.sec+.sec{border-block-start:1px solid var(--line)}.sec-alt{background:var(--bg-2)}.sec-alt+.sec,.sec+.sec-alt{border-block-start:0}}@view-transition{navigation:auto}::view-transition{pointer-events:none}.site-header{view-transition-name:site-header}::view-transition-group(site-header){z-index:2;animation:none}::view-transition-old(site-header){display:none}::view-transition-new(site-header){animation:none}::view-transition-old(root){animation:zl-fade-out .2s var(--ease-out) both}::view-transition-old(.page-out){animation:zl-fade-out .2s var(--ease-out) both}::view-transition-new(root){animation:zl-fade-in .3s var(--ease-out) both}::view-transition-new(.page-in){animation:zl-fade-in .3s var(--ease-out) both}::view-transition-group(*){animation-duration:.3s;animation-timing-function:var(--ease-out)}@keyframes zl-fade-in{0%{opacity:0}}@keyframes zl-fade-out{to{opacity:0}}@media (prefers-reduced-motion:reduce){::view-transition-group(*){animation-duration:.15s!important}::view-transition-old(*){animation-duration:.15s!important}::view-transition-new(*){animation-duration:.15s!important}::view-transition-old(site-header){animation:none!important}::view-transition-new(site-header){animation:none!important}}html.theme-vt .site-header{view-transition-name:none}html.theme-vt::view-transition-old(root){animation:none}html.theme-vt::view-transition-new(root){animation:theme-reveal var(--dur-enter) var(--ease-out) both}@keyframes theme-reveal{0%{clip-path:circle(0 at var(--vt-x,100%) var(--vt-y,0))}to{clip-path:circle(var(--vt-r,150vmax) at var(--vt-x,100%) var(--vt-y,0))}}@media (prefers-reduced-motion:reduce){html.theme-vt::view-transition-new(root){animation:.15s linear both zl-fade-in}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
