:root{--bg:#fff;--surface:#fafafa;--surface-warm:var(--surface);--surface-dark:#18122c;--surface-darker:#0d0a1a;--surface-card-dark:#231c3d;--fg:#000;--fg-2:#212121;--muted:#6b7280;--meta:var(--muted);--font-display:"CohereText", "Space Grotesk", Georgia, "Iowan Old Style", -apple-system, sans-serif;--font-body:"Unica77 Cohere Web", Inter, Arial, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"CohereMono", "JetBrains Mono", Menlo, Consolas, ui-monospace, monospace;--border:#d9d9dd;--border-soft:#f2f2f2;--border-dark:#ffffff1f;--accent:#1863dc;--accent-on:#fff;--accent-hover:color-mix(in oklab, var(--accent), black 8%);--accent-active:color-mix(in oklab, var(--accent), black 16%);--focus-purple:#9b60aa;--focus-ring:0 0 0 3px #1863dc47;--success:#16a34a;--warn:#eab308;--danger:#ef4444;--ird-emerald:#176b4e;--fps-mint:#d9efe3;--fps-blue:#1863dc;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-12:48px;--radius-sm:8px;--radius-md:22px;--radius-lg:22px;--radius-pill:9999px;--elev-flat:none;--elev-ring:0 0 0 1px var(--border-soft);--elev-raised:0 4px 16px #0000000f;--motion-fast:.15s;--ease-standard:cubic-bezier(.2, 0, 0, 1);--container-max:1180px}:lang(zh-HK),:lang(zh-Hant){--font-display:"PingFang HK", "PingFang TC", "Microsoft JhengHei", "Noto Serif CJK TC", sans-serif;--font-body:"PingFang HK", "PingFang TC", "Microsoft JhengHei", "Noto Sans CJK TC", sans-serif}:lang(zh-CN),:lang(zh-Hans){--font-display:"PingFang SC", "Microsoft YaHei", "Noto Serif CJK SC", sans-serif;--font-body:"PingFang SC", "Microsoft YaHei", "Noto Sans CJK SC", sans-serif}.analytics-consent{z-index:1000;gap:var(--space-4) var(--space-6);width:min(760px,100% - 40px);padding:var(--space-5);border:1px solid var(--border);border-top:3px solid var(--accent);background:var(--bg);color:var(--fg-2);grid-template-columns:minmax(0,1fr) auto;margin-inline:auto;display:grid;position:fixed;inset:auto 20px 20px;box-shadow:0 12px 40px #0000002e}.analytics-consent-copy h2{margin-bottom:var(--space-2);color:var(--fg);font-family:var(--font-display);font-size:19px;font-weight:500}.analytics-consent-copy p{max-width:62ch;color:var(--muted);font-size:14px;line-height:1.55}.analytics-consent-copy p+p{margin-top:var(--space-2)}.analytics-consent-actions{justify-content:center;gap:var(--space-2);flex-direction:column;min-width:148px;display:flex}.analytics-consent-actions a,.analytics-consent-actions button{border:1px solid var(--border);background:var(--bg);min-height:44px;color:var(--fg-2);font:inherit;text-align:center;cursor:pointer;padding:10px 14px;font-size:14px;text-decoration:none}.analytics-consent-actions a:hover,.analytics-consent-decline:hover{border-color:var(--accent);color:var(--accent)}.analytics-consent-actions .analytics-consent-accept{border-color:var(--border);background:var(--bg);color:var(--fg-2)}.analytics-consent-actions .analytics-consent-accept:hover{border-color:var(--accent);color:var(--accent)}.analytics-consent-error{color:var(--danger);grid-column:1/-1;font-size:14px}@media (width<=620px){.analytics-consent{gap:var(--space-3);width:calc(100% - 16px);max-height:min(88vh,640px);padding:var(--space-4);grid-template-columns:1fr;inset:auto 8px 8px;overflow-y:auto}.analytics-consent-actions{grid-template-columns:1fr 1fr;display:grid}.analytics-consent-actions a{grid-column:1/-1}}.language-switcher[data-astro-cid-l4evwy7q]{border:1px solid var(--border-soft);border-radius:var(--radius-pill);background:var(--surface);color:var(--muted);font-family:var(--font-mono);letter-spacing:.03em;align-items:center;gap:3px;padding:3px;font-size:10px;line-height:1;display:inline-flex}.language-switcher[data-astro-cid-l4evwy7q] a[data-astro-cid-l4evwy7q],.language-current[data-astro-cid-l4evwy7q]{border-radius:var(--radius-pill);justify-content:center;align-items:center;min-width:28px;min-height:24px;padding:0 5px;text-decoration:none;display:inline-flex}.language-switcher[data-astro-cid-l4evwy7q] a[data-astro-cid-l4evwy7q]:hover,.language-switcher[data-astro-cid-l4evwy7q] a[data-astro-cid-l4evwy7q]:focus-visible{color:var(--accent)}.language-current[data-astro-cid-l4evwy7q]{color:var(--fg);background:var(--bg);box-shadow:var(--elev-ring)}:root{--site-header-height:68px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{background:var(--bg);color:var(--fg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{min-height:100vh;padding-top:var(--site-header-height);color:var(--fg-2);font-family:var(--font-body);background:radial-gradient(circle at 88% 4%,#1863dc14,#0000 28rem),linear-gradient(#fff 0,#fafafa 36rem,#fff 100%);line-height:1.5;overflow-x:hidden}a{color:inherit}button,input{font:inherit}button{border:0}button:focus-visible,input:focus-visible,[role=button]:focus-visible,a:focus-visible{box-shadow:var(--focus-ring);outline:none}[hidden]{display:none!important}.chrome-container{width:min(100%, var(--container-max));margin:0 auto;padding-inline:32px}.site-header{z-index:20;width:100%;min-height:var(--site-header-height);border-bottom:1px solid var(--border-soft);background:var(--bg);-webkit-backdrop-filter:blur(16px);align-items:center;display:flex;position:fixed;inset:0 0 auto}.header-inner{justify-content:space-between;align-items:center;gap:var(--space-4);display:flex}.brand-cluster{align-items:baseline;gap:var(--space-3);display:flex}.brand{text-decoration:none}.brand-name{color:var(--fg);font-family:var(--font-display);letter-spacing:-.02em;font-size:24px}.site-nav{gap:var(--space-5);color:var(--muted);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;margin-left:auto;font-size:11px;display:flex}.site-nav a{transition:color var(--motion-fast) var(--ease-standard);text-decoration:none}.site-nav a:hover{color:var(--accent)}.header-actions{align-items:center;gap:var(--space-3);display:inline-flex}.privacy-dot{background:var(--success);border-radius:50%;flex:none;width:7px;height:7px}.site-footer{border-top:1px solid var(--border-soft);color:var(--muted);padding:28px 0 34px;font-size:12px}.footer-inner{justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;display:flex}@media (width<=900px){.site-nav{margin-left:0}}@media (width<=620px){.chrome-container{padding-inline:16px}:root{--site-header-height:62px}.site-header{min-height:var(--site-header-height)}body{padding-top:var(--site-header-height)}}.footer-identity,.footer-nav{gap:var(--space-3);flex-wrap:wrap;align-items:baseline;display:flex}.footer-identity strong{color:var(--fg);font-family:var(--font-display);font-weight:400}.footer-nav a,.footer-nav .cookie-preferences{min-height:44px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:none}.footer-credit{color:var(--muted);font-size:11px}.footer-nav a:hover,.footer-nav .cookie-preferences:hover{color:var(--accent)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}.page-layout{padding:48px 0 80px}.page-layout-inner{width:min(100%, var(--container-max));margin:0 auto;padding-inline:32px}.breadcrumbs{margin-bottom:var(--space-8);color:var(--muted);font-family:var(--font-mono);font-size:12px}.breadcrumbs ol{gap:var(--space-2);flex-wrap:wrap;list-style:none;display:flex}.breadcrumbs li+li:before{margin-right:var(--space-2);content:"/";color:var(--border)}.breadcrumbs a{color:var(--accent);text-decoration:none}.related-content{padding-top:var(--space-8);border-top:1px solid var(--border-soft);margin-top:96px}.related-content h2{font-size:clamp(2rem,4vw,3rem)}.related-links{gap:var(--space-4);margin-top:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));display:grid}.related-links a{gap:var(--space-2);min-height:140px;padding:var(--space-6);border:1px solid var(--border-soft);border-radius:var(--radius-md);background:var(--surface);text-decoration:none;display:grid}.related-links a:hover{border-color:var(--accent)}.related-links strong{color:var(--fg);font-family:var(--font-display);font-size:22px;font-weight:400}.related-links span{color:var(--muted)}.page-layout-article .page-layout-inner{padding-inline:32px}.page-layout .intro{max-width:780px;margin-bottom:64px}.page-layout .eyebrow{margin-bottom:var(--space-3);color:var(--accent);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;font-size:11px}.page-layout h1,.page-layout h2{color:var(--fg);font-family:var(--font-display);font-weight:400}.page-layout h1{letter-spacing:-.03em;max-width:16ch;font-size:clamp(2.5rem,5.5vw,4.25rem);line-height:1.02}.page-layout .intro-copy{max-width:62ch;margin-top:var(--space-5);color:var(--muted);font-size:18px}.page-layout-guides .intro{max-width:780px;margin-bottom:64px}.page-layout-guides h1{letter-spacing:-.03em;max-width:16ch;font-size:clamp(2.5rem,5.5vw,4.25rem);line-height:1.02}.page-layout-guides .intro-copy{max-width:62ch}.page-layout-article .intro{max-width:none;margin-bottom:64px}.page-layout-article h1{letter-spacing:-.04em;max-width:none;font-size:clamp(2.75rem,6vw,4.5rem);line-height:1}.page-layout-article .intro-copy{max-width:none;font-size:19px;line-height:1.5}.page-layout-article .article{margin:0}.page-layout-article .article-meta{border-bottom:1px solid var(--border-soft);padding:0 0 48px}.page-layout-article .metadata{gap:var(--space-6);flex-wrap:wrap;margin-top:32px;display:flex}.page-layout-article .metadata div{gap:var(--space-1);display:grid}.page-layout-article .metadata dt,.page-layout-article .metadata dd{font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase;margin:0;font-size:11px;line-height:1.4}.page-layout-article .metadata dt{color:var(--meta)}.page-layout-article .metadata dd{color:var(--fg-2);font-variant-numeric:tabular-nums}.page-layout-article .tag-list{gap:var(--space-2);flex-wrap:wrap;margin:28px 0 0;padding:0;list-style:none;display:flex}.page-layout-article .tag-list li{border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--fg-2);font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;padding:7px 12px;font-size:11px;line-height:1.3}.page-layout .section-heading{justify-content:space-between;align-items:flex-end;gap:var(--space-5);margin-bottom:var(--space-5);display:flex}.page-layout .section-heading .eyebrow{margin-bottom:var(--space-2)}.page-layout .section-heading h2{letter-spacing:-.03em;font-size:clamp(2rem,4vw,3rem);line-height:1.05}.page-layout .section-link{color:var(--accent);font-family:var(--font-mono);letter-spacing:.04em;white-space:nowrap;font-size:12px;text-decoration:none}.page-layout .section-link:hover,.page-layout .section-link:focus-visible{color:var(--accent-active)}.page-layout .tool-grid{gap:var(--space-6);grid-template-columns:repeat(auto-fill,minmax(300px,1fr));display:grid}.page-layout .tool-card{gap:var(--space-3);min-height:280px;padding:var(--space-8);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg);transition:border-color var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard), transform var(--motion-fast) var(--ease-standard);flex-direction:column;text-decoration:none;display:flex}.page-layout .tool-card:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 8px 30px #1863dc14}.page-layout .tool-icon{border-radius:var(--radius-sm);background:var(--surface-dark);color:#fff;place-items:center;width:44px;height:44px;display:grid}.page-layout .tool-title{color:var(--fg);font-size:20px;font-weight:600}.page-layout .tool-copy{color:var(--muted);font-size:15px}.page-layout .tool-cta{padding-top:var(--space-3);color:var(--accent);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;margin-top:auto;font-size:12px}@media (width<=620px){.page-layout{padding:24px 0 56px}.page-layout-inner,.page-layout-article .page-layout-inner{padding-inline:16px}.page-layout .intro{margin-bottom:48px}.page-layout h1{font-size:clamp(2.5rem,14vw,4rem)}.page-layout .intro-copy{font-size:16px}.page-layout-guides .intro{margin-bottom:48px}.page-layout-guides h1{font-size:clamp(2.5rem,14vw,4rem)}.page-layout-guides .intro-copy{max-width:62ch}.page-layout .section-heading{flex-direction:column;align-items:flex-start}.page-layout .tool-card{min-height:250px;padding:var(--space-6)}}
