:root{--ink: #172033;--muted: #647086;--paper: #f7f3ea;--card: rgba(255, 255, 255, .78);--blue: #0b78d0;--green: #058b61;--orange: #ff8a1f;--purple: #3846e8;--shadow: 0 24px 80px rgba(36, 48, 70, .18)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:ui-rounded,Hiragino Sans,PingFang TC,Noto Sans TC,sans-serif;color:var(--ink);background:radial-gradient(circle at 20% 10%,rgba(11,120,208,.18),transparent 28rem),radial-gradient(circle at 85% 30%,rgba(5,139,97,.16),transparent 24rem),linear-gradient(135deg,#fffaf0,#edf7f3 55%,#e8f2ff)}img{max-width:100%}a{color:var(--blue);font-weight:800;text-decoration:none}.page-shell{width:min(1120px,calc(100% - 40px));margin:0 auto}.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,390px);gap:clamp(40px,7vw,82px);align-items:center;padding:64px 0 24px}.hero-copy{min-width:0}.eyebrow{color:var(--blue);font-weight:900;letter-spacing:.08em;text-transform:uppercase;margin:0 0 14px}h1{font-size:clamp(48px,7vw,88px);line-height:.95;margin:0 0 24px;letter-spacing:-.06em}.lead{font-size:clamp(20px,2.4vw,26px);line-height:1.6;color:var(--muted);max-width:680px;margin:0}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:34px}.secondary{padding:14px 20px;border-radius:999px;background:#ffffffb8}.app-store-badge{display:inline-flex;align-items:center}.app-store-badge img{display:block;height:56px;width:auto;transition:transform .15s ease}.app-store-badge:hover img{transform:scale(1.03)}.hero-icon-wrap{display:flex;justify-content:center;align-items:center}.hero-icon{display:block;width:100%;max-width:320px;height:auto;aspect-ratio:1 / 1;object-fit:cover;border-radius:22.5%;box-shadow:0 24px 56px #0b78d047}.hero-phone{width:100%;max-width:300px;aspect-ratio:9 / 19.5;border-radius:13%/6%;padding:8px;background:linear-gradient(160deg,#1c1c1e,#3a3a3c);box-shadow:0 30px 64px #0b78d04d}.hero-phone-screen{display:block;width:100%;height:100%;object-fit:cover;border-radius:11%/5%;background:var(--bg, #edf7f3)}.features-section{padding:24px 0 48px}.features-gallery{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding:8px 4px 24px;scrollbar-width:thin}.features-gallery::-webkit-scrollbar{height:8px}.features-gallery::-webkit-scrollbar-thumb{background:#1720332e;border-radius:999px}.features-gallery .feature-shot{flex:0 0 auto;width:clamp(220px,26vw,320px);height:auto;display:block;border-radius:18px;scroll-snap-align:start;box-shadow:0 12px 32px #1720331f}article,.notice,.content-page,.updates{background:var(--card);border:1px solid rgba(255,255,255,.65);border-radius:28px;padding:28px;box-shadow:0 16px 48px #24304614;backdrop-filter:blur(18px)}.icon{display:inline-grid;place-items:center;min-width:64px;height:34px;padding:0 12px;border-radius:999px;background:#dff2ff;color:var(--blue);font-weight:900}.icon.rail{background:#fff0dc;color:var(--orange)}.icon.bike{background:#e0f6ea;color:var(--green)}article p,.notice p,.content-page p,.updates p,.content-page li{color:var(--muted);line-height:1.75}.notice{margin:0 0 64px}.content-page{width:min(760px,calc(100% - 40px));margin:48px auto}.content-page h1{font-size:clamp(32px,4vw,42px);line-height:1.12;letter-spacing:-.05em;margin-top:32px;overflow-wrap:break-word}.content-page hr{border:0;height:1px;background:#1720331f;margin:34px 0}.updates{margin:0 0 24px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:18px}.section-heading h2{font-size:clamp(30px,4vw,48px);line-height:1;margin:6px 0 0}.timeline{display:flex;gap:18px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;padding-bottom:14px;scrollbar-width:thin;scrollbar-color:rgba(36,48,70,.28) transparent;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}.timeline::-webkit-scrollbar{height:8px}.timeline::-webkit-scrollbar-thumb{background:#24304638;border-radius:999px}.timeline::-webkit-scrollbar-track{background:transparent}.updates-hint{color:var(--muted);font-size:13px;font-weight:700;white-space:nowrap;opacity:.75;margin:0}.release-card{display:flex;flex-direction:column;align-items:flex-start;gap:6px;background:#ffffff9e;border-radius:24px;padding:26px;box-shadow:none;flex:0 0 auto;width:min(360px,82vw);scroll-snap-align:start}.release-card.is-latest{background:#ffffffe6;box-shadow:0 0 0 2px color-mix(in srgb,var(--blue) 45%,transparent)}.release-card h3{font-size:22px;margin:12px 0 0;letter-spacing:-.01em}.release-card h4{font-size:19px;margin:4px 0 8px}.release-card p{margin:0}.release-section{width:100%;margin-top:12px}.release-section:first-of-type{margin-top:4px}.release-section-heading{font-weight:800;color:var(--ink);margin:0 0 6px;font-size:15px;letter-spacing:.02em}.release-list{margin:0;padding-left:1.2em;color:var(--muted);line-height:1.75}.release-list li{margin:2px 0}.release-badge{display:inline-flex;align-items:center;min-height:32px;padding:0 12px;border-radius:999px;background:linear-gradient(135deg,var(--blue),var(--purple));color:#fff;font-size:13px;font-weight:900;letter-spacing:.02em}.faq-list{display:flex;flex-direction:column;gap:12px;margin-top:4px}.faq-item{background:#ffffff9e;border-radius:18px;padding:18px 22px;box-shadow:none}.faq-item summary{cursor:pointer;font-weight:800;font-size:16px;color:var(--ink);list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";font-size:22px;font-weight:500;color:var(--muted);transition:transform .15s ease;line-height:1}.faq-item[open] summary:after{content:"−"}.faq-item p{margin:12px 0 0;color:var(--muted);line-height:1.75;font-size:15px}@media(max-width:1080px){.page-shell{width:min(100% - 32px,720px);margin-left:20px;margin-right:auto}.hero{grid-template-columns:1fr;min-height:0;gap:36px;padding:56px 0 44px}.hero-copy{max-width:480px;margin:0}.lead{max-width:480px}.hero-icon{max-width:240px}.features-section{padding-top:22px}.timeline{gap:14px}}@media(max-width:520px){.page-shell{width:calc(100% - 28px);margin-left:14px;margin-right:14px}.eyebrow{max-width:24rem;font-size:14px;line-height:1.25;overflow-wrap:anywhere}h1{max-width:21rem;font-size:clamp(40px,12vw,48px);line-height:1.02;letter-spacing:-.07em}.content-page h1{max-width:100%;font-size:clamp(30px,9vw,38px);letter-spacing:-.06em}.lead{max-width:21rem;font-size:19px}.actions{gap:10px}.secondary{padding:12px 16px}.app-store-badge img{height:48px}.hero-icon{max-width:200px}}.blog-index .lead{margin:6px 0 8px}.post-list{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:16px}.post-item{border:1px solid var(--line, rgba(23,32,51,.1));border-radius:18px;transition:transform .12s ease,border-color .12s ease}.post-item:hover{transform:translateY(-2px);border-color:var(--blue)}.post-item a{display:block;padding:20px 22px;color:inherit;font-weight:inherit}.post-item time{color:var(--blue);font-weight:800;font-size:13px;letter-spacing:.02em}.post-item h2{font-size:clamp(20px,3vw,26px);line-height:1.2;letter-spacing:-.03em;margin:6px 0 8px}.post-item p{margin:0}.post-item .tags{display:inline-flex;flex-wrap:wrap;gap:8px;margin-top:12px}.post-item .tag{font-size:12px;font-weight:800;color:var(--blue);background:#0b78d014;border-radius:999px;padding:3px 10px}.post-meta{color:var(--muted);font-weight:700;font-size:14px;margin:4px 0 24px}.prose{color:var(--muted)}.prose h2{color:var(--ink);font-size:clamp(22px,3.2vw,28px);line-height:1.25;letter-spacing:-.03em;margin:36px 0 12px}.prose h3{color:var(--ink);font-size:20px;margin:28px 0 10px}.prose p,.prose li{line-height:1.8}.prose ul,.prose ol{padding-left:1.3em}.prose li{margin:6px 0}.prose a{text-decoration:underline}.prose strong{color:var(--ink)}.prose blockquote{margin:22px 0;padding:14px 20px;border-left:4px solid var(--blue);background:#0b78d00f;border-radius:0 12px 12px 0}.prose blockquote p{margin:0}.prose code{background:#17203312;border-radius:6px;padding:2px 7px;font-size:.9em}.prose pre{background:#0f2536;color:#e6eefc;padding:16px 18px;border-radius:14px;overflow-x:auto}.prose pre code{background:none;padding:0}.prose img{border-radius:14px;margin:18px 0}.prose hr{border:0;height:1px;background:#1720331f;margin:32px 0}.post-back{margin-top:40px}.prose .post-figure{margin:26px 0}.prose .post-figure img{width:100%;height:auto;display:block;border-radius:14px;margin:0;box-shadow:0 12px 32px #1720331f}.prose .post-figure.portrait{max-width:340px;margin-left:auto;margin-right:auto}.prose .post-figure figcaption{font-size:13px;line-height:1.55;color:var(--muted);text-align:center;margin-top:9px}.prose .video-embed iframe{width:100%;aspect-ratio:16 / 9;height:auto;display:block;border:0;border-radius:14px;box-shadow:0 12px 32px #1720331f}.post-cta{text-align:center;margin:30px 0 0}.post-cta a{display:inline-flex;align-items:center;gap:12px;transition:transform .15s ease}.post-cta a:hover{transform:scale(1.03)}.post-cta img{height:46px;width:auto;margin:0;border-radius:0}.post-cta .post-cta-icon{width:46px;border-radius:22.5%;box-shadow:0 4px 14px #0b78d040}.post-footer{margin-top:46px;padding-top:30px;border-top:1px solid rgba(23,32,51,.12);text-align:center}.post-footer-slogan{color:var(--ink);font-size:17px;line-height:1.7;letter-spacing:.1em;margin:0 0 8px}.post-footer-brand{color:var(--muted);font-size:13px;letter-spacing:.22em;margin:0}.post-footer .post-cta{margin-top:22px}
