:root{--ink:#222c29;--green:#008b72;--muted:#75817c;--line:#dfe5e1;--paper:#f8faf9;font-family:"Noto Sans CJK TC",sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}body{margin:0}html{scroll-behavior:smooth;scroll-padding-top:30px}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;color:inherit}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #00bfa0;outline-offset:5px}p,h1,h2,h3,figure{margin:0}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex:none}.wrap{width:min(1280px,calc(100% - 112px));margin-inline:auto}.skip{position:fixed;top:-100px;padding:15px;background:white;z-index:10}.skip:focus{top:10px}header{height:108px;display:flex;align-items:center;gap:40px}.brand{display:flex;align-items:center;gap:12px;font-size:20px;font-weight:650;letter-spacing:-.04em;white-space:nowrap}.app-icon{width:46px;height:46px;flex:none;background:transparent;border-radius:0;box-shadow:none;overflow:visible}.app-icon img{display:block;width:100%;height:100%;object-fit:contain}.icon-grid{transform:scale(.8)}.icon-chinese{transform:translate(8.6%,-2.8%) scale(.61)}nav{display:flex;gap:32px;margin-left:auto;font-size:14px;align-items:center}nav button,.footer-links button{border:0;background:none;padding:12px 0}nav a:hover,nav button:hover,.footer-links a:hover,.footer-links button:hover{color:var(--green)}.download-small{display:flex;gap:9px;align-items:center;background:var(--ink);color:#fff;padding:12px 20px;border-radius:7px;font-size:14px;font-weight:550}.hero{display:grid;grid-template-columns:.92fr 1.08fr;gap:54px;align-items:center;padding:50px 0 66px}.hero-copy h1{font-size:clamp(40px,4.2vw,60px);letter-spacing:-.06em;font-weight:650;line-height:1.35}.hero-copy h1 span{color:var(--green)}.intro{font-size:18px;line-height:1.9;color:#67746e;margin-top:25px}.button{display:inline-flex;align-items:center;justify-content:center;gap:11px;min-height:52px;padding:16px 24px;font-size:15px;border-radius:7px;font-weight:550;transition:background .2s,transform .2s}.primary{background:var(--ink);color:#fff}.primary:hover,.download-small:hover{background:#006c59}.hero-copy .button{margin-top:30px}.apple{width:24px;height:24px}.free-note{font-size:12px;color:var(--muted);line-height:1.8;margin-top:16px}.showcase{background:#edf1ee;border-radius:18px;padding:24px;min-width:0}.showcase-top{display:flex;align-items:center;justify-content:space-between;color:#718178;font-size:11px;letter-spacing:.04em;padding-bottom:22px}.keyboard-crop{position:relative;overflow:hidden;aspect-ratio:1.263;background:#e4e5e9;border-radius:12px;box-shadow:0 15px 35px #24372b12}.keyboard-crop img{position:absolute;bottom:0;left:0;width:100%;height:auto;display:block}.showcase-bottom{padding-top:18px}.tabs{display:flex;gap:23px;align-items:center}.tabs button{border:0;border-bottom:2px solid transparent;padding:9px 0;background:none;color:#53615a;font-size:13px;font-weight:550}.tabs button[aria-selected=true]{color:var(--green);border-bottom-color:var(--green)}#feature-text{font-size:12px;color:#7a867f;margin-top:10px;line-height:1.6}.method-strip{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:23px 0}.method-strip>span:not(.strip-title){display:flex;align-items:center;gap:10px;font-size:14px;color:#5d6a63;white-space:nowrap}.method-strip img{width:38px;height:38px;object-fit:contain;border-radius:7px;background:#fff}.strip-title{font-size:12px;line-height:1.75;color:#7d8882}.more-methods{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--green);white-space:nowrap}.more-methods svg{width:15px;height:15px}.method-section{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center;padding:94px 0 80px}.method-image{height:auto;padding:16px;background:#eef0f4;border-radius:18px;overflow:hidden;display:flex;justify-content:center;position:relative}.method-image img{width:min(300px,100%);height:auto;align-self:flex-start;display:block;transform:none}.section-number{display:block;color:var(--green);font-size:12px;letter-spacing:.04em;margin-bottom:22px}.section-copy h2{font-size:clamp(30px,3.1vw,44px);font-weight:600;letter-spacing:-.045em;line-height:1.4}.section-copy p{font-size:15px;color:#53615a;line-height:1.95;margin-top:20px;max-width:425px}.copy-divider{height:1px;background:var(--line);margin-block:29px}.section-copy h3{font-size:18px;font-weight:550;line-height:1.5}.section-copy h3+p{margin-top:12px}.text-link{display:inline-flex;align-items:center;gap:13px;background:none;border:0;color:var(--green);padding:0;min-height:44px;font-size:13px;margin-top:22px}.text-link:hover{text-decoration:underline;text-underline-offset:4px}.tools-section{display:grid;grid-template-columns:1fr 1.15fr;gap:85px;align-items:center;padding:35px 0 90px}.tools-image{background:#edf1ee;padding:24px;border-radius:18px;min-width:0}.tools-image figcaption{font-size:11px;color:#7b8980;line-height:1.8;margin-top:17px}.closing{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:40px;padding:52px 0}.closing h2{font-size:37px;line-height:1.4;letter-spacing:-.045em;font-weight:550}.closing p{font-size:13px;color:#7d8882;margin-top:18px}footer{display:flex;align-items:center;gap:28px;padding:30px 0 35px;flex-wrap:wrap}footer .brand{font-size:15px}footer .app-icon{width:34px;height:34px}.footer-links{display:flex;align-items:center;gap:22px;color:#77847c;font-size:12px;margin-left:auto}footer small{font-size:10px;color:#97a199}dialog{border:0;border-radius:18px;padding:30px;width:min(620px,calc(100% - 32px));max-height:85dvh;overflow:auto;color:var(--ink);box-shadow:0 24px 100px #122b2730}dialog::backdrop{background:#102c2870;backdrop-filter:blur(5px)}.dialog-top{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:24px}.dialog-top h2{font-size:25px;line-height:1.4}.dialog-top button{background:#edf3f0;border:0;border-radius:50%;width:44px;height:44px;flex:none;font-size:28px}.steps{padding-left:25px}.steps li{padding:0 0 20px 8px}.steps strong,dialog h3{font-size:18px}dialog p{font-size:16px;line-height:1.8;margin-top:9px;color:var(--muted)}dialog h3{margin-top:24px}.dialog-note{background:#eef6f2;padding:16px;border-radius:12px}dialog details{border-top:1px solid var(--line);padding:16px 0}summary{cursor:pointer;font-weight:550;font-size:17px;line-height:1.6}dialog a{color:var(--green);text-decoration:underline}
@media(max-width:1100px){.wrap{width:calc(100% - 80px)}.hero{gap:35px;padding-top:35px}.hero-copy h1{font-size:48px}.intro{font-size:16px}.showcase{padding:20px}.method-section{gap:70px}.tools-section{gap:60px}.method-strip{gap:13px}.method-strip img{width:32px;height:32px}.method-strip>span:not(.strip-title){gap:7px;font-size:12px}footer small{width:100%}}
@media(max-width:850px){.wrap{width:calc(100% - 48px)}header{height:88px;gap:25px}.brand{font-size:18px}nav{gap:20px;font-size:12px}.download-small{font-size:12px;padding:12px 15px}.hero{gap:28px}.hero-copy h1{font-size:36px}.intro{font-size:14px}.showcase{padding:16px}.showcase-top{font-size:10px;padding-bottom:14px}.tabs{gap:20px}.tabs button{font-size:11px}.hero-copy .button{font-size:13px;padding:14px 18px}.free-note{font-size:10px}.method-strip .strip-title{display:none}.method-section{gap:40px;padding-top:65px}.section-copy p{font-size:14px}.tools-section{gap:35px}.section-copy h2{font-size:30px}.closing h2{font-size:30px}.closing .button{font-size:13px;padding-inline:20px}.tools-image{padding:16px}}
@media(max-width:650px){.wrap{width:calc(100% - 40px)}header{height:72px;gap:14px}header nav{display:none}.download-small{margin-left:auto;font-size:12px;padding:11px 13px}.brand{gap:8px;font-size:17px}.app-icon{width:38px;height:38px;border-radius:9px}.hero{grid-template-columns:1fr;row-gap:16px;padding:18px 0 32px}.hero-copy{display:contents}.hero-copy h1{order:1;font-size:clamp(34px,9.2vw,42px);line-height:1.35}.intro{order:2;font-size:15px;margin-top:0;line-height:1.7}.showcase{order:3;padding:12px}.showcase-top{font-size:10px;padding-bottom:10px}.hero-copy .button{order:4;justify-self:start;font-size:14px;margin-top:4px}.free-note{order:5;font-size:11px;margin-top:0}.tabs{gap:25px}.tabs button{font-size:13px;min-height:44px}#feature-text{font-size:11px}.method-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:19px 12px;padding:23px 0}.method-strip>span:not(.strip-title){font-size:12px;gap:10px}.method-strip img{width:32px;height:32px}.more-methods{font-size:11px;justify-self:start}.method-section{display:flex;flex-direction:column-reverse;gap:30px;padding:54px 0 45px;align-items:stretch}.section-number{margin-bottom:15px;font-size:11px}.section-copy h2{font-size:31px}.section-copy p{font-size:14px;margin-top:16px;line-height:1.95}.copy-divider{margin-block:23px}.section-copy h3{font-size:17px}.text-link{margin-top:16px}.tools-section{grid-template-columns:1fr;gap:30px;padding:15px 0 50px}.tools-image{padding:18px}.closing{flex-direction:column;align-items:flex-start;gap:25px;padding:35px 0}.closing h2{font-size:31px}.closing p{font-size:11px;line-height:1.8}.closing .button{font-size:14px}footer{gap:19px;padding-block:25px}footer .brand{font-size:16px}.footer-links{width:100%;margin:0;gap:19px;font-size:11px}.dialog-top h2{font-size:22px}dialog{padding:24px}}
@media(max-width:360px){.wrap{width:calc(100% - 32px)}.brand{font-size:15px}.download-small{padding-inline:11px}.hero-copy h1{font-size:34px}.footer-links{gap:13px}.tabs{gap:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
.method-image img{height:auto}
.tabs button{min-height:44px}
.hero-copy h1,.intro,.showcase{animation:hero-enter .48s cubic-bezier(.2,.7,.2,1) both}
.intro{animation-delay:.06s}.showcase{animation-delay:.12s}
@keyframes hero-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
#feature-image{transition:opacity .18s ease,transform .18s ease}
#feature-image.is-switching{opacity:.32;transform:scale(.995)}
.cookie-banner{position:fixed;z-index:20;left:50%;bottom:16px;transform:translateX(-50%);display:flex;align-items:center;justify-content:space-between;gap:24px;width:min(820px,calc(100% - 32px));padding:20px 22px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 16px 50px #152c2830;color:var(--ink)}
.cookie-banner[hidden]{display:none}
.cookie-copy{min-width:0}.cookie-copy h2{font-size:16px;line-height:1.4}.cookie-copy p{font-size:13px;line-height:1.65;color:#53615a;margin-top:6px}.cookie-copy .cookie-status{font-size:12px;color:var(--muted);margin-top:4px}
.cookie-actions{display:flex;flex:none;gap:9px;align-items:center}.cookie-actions button{min-height:44px;padding:10px 14px;border:1px solid var(--line);border-radius:8px;font-size:13px;white-space:nowrap}.cookie-accept{background:var(--ink);color:#fff;border-color:var(--ink)!important}.cookie-essential{background:#fff}.cookie-banner:not([hidden]){animation:cookie-enter .22s ease-out both}
@keyframes cookie-enter{from{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%,0)}}
@media(max-width:650px){.cookie-banner{align-items:stretch;flex-direction:column;gap:14px;padding:17px 16px}.cookie-actions{display:grid;grid-template-columns:1fr 1fr}.cookie-actions button{white-space:normal;padding-inline:9px}}
@media(prefers-reduced-motion:reduce){.hero-copy h1,.intro,.showcase{animation:none}#feature-image{transition:none}.cookie-banner:not([hidden]){animation:none}}
.keyboard-crop video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;display:block;border-radius:inherit}
.keyboard-crop video[hidden]{display:none}
.keyboard-crop img[hidden]{display:none}
.showcase-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.showcase-controls .tabs{flex:1;flex-wrap:wrap;gap:10px 20px}
.showcase-controls .tabs button{min-height:44px}
.play-toggle{display:inline-flex;align-items:center;justify-content:center;flex:none;width:44px;height:44px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);font-size:19px}
.play-toggle:hover{border-color:var(--green);color:var(--green)}
.play-toggle[hidden]{display:none}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.cookie-copy a{color:var(--green);text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
.cookie-policy{max-width:820px;padding:72px 0 100px}
.cookie-policy h1{font-size:clamp(34px,6vw,48px);line-height:1.3;letter-spacing:-.04em}
.cookie-policy>p,.cookie-policy li{font-size:16px;line-height:1.9;color:#53615a}
.cookie-policy>p{margin-top:18px}
.cookie-policy h2{font-size:21px;line-height:1.5;margin-top:34px}
.cookie-policy ul{padding-left:22px;margin-top:14px}
.cookie-policy li+li{margin-top:10px}
.cookie-policy .button{margin-top:32px}
@media(max-width:650px){.showcase-controls .tabs{gap:6px 14px}}
@media(prefers-reduced-motion:reduce){.showcase-controls .play-toggle{transition:none}}

.footer-links a,.footer-links button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0;line-height:1.5}

a[href*="apps.apple.com"]{font-family:"Noto Sans CJK TC",sans-serif}

.social-links{display:flex;gap:18px;align-items:center;font-size:12px;color:#53615a}.social-links a{display:inline-flex;align-items:center;gap:6px;min-height:44px}.social-links a:hover{color:var(--green)}@media(max-width:650px){.footer-links{flex-wrap:wrap}.social-links{width:100%;gap:22px}}

.social-icon{display:block;width:16px;height:16px;flex:none;opacity:.8}
