@font-face{font-family:'Manrope';src:url(assets/fonts/Manrope-wght.woff2) format('woff2');font-weight:400 700;font-style:normal;font-display:swap}
@font-face{font-family:'Noto Sans KR';src:url(assets/fonts/NotoSansKR-wght-subset.woff2) format('woff2');font-weight:400 700;font-style:normal;font-display:swap;unicode-range:U+1100-11FF,U+3000-303F,U+3130-318F,U+AC00-D7A3,U+FF00-FFEF}
:root{color-scheme:dark;--bg:#09090b;--surface:#111113;--line:#29292e;--text:#fafafa;--muted:#a1a1aa;--silver:#e4e4e7;--font:'Manrope','Noto Sans KR',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid #fff;outline-offset:6px}button{cursor:pointer}button:disabled{cursor:not-allowed}button[hidden],a[hidden],[hidden]{display:none!important}.container{width:min(1184px,calc(100% - 80px));margin-inline:auto}.skip-link{position:fixed;top:-90px;left:20px;z-index:100;background:var(--silver);color:#09090b;padding:12px 20px}.skip-link:focus{top:12px}.site-header{height:88px;border-bottom:1px solid var(--line);position:relative;z-index:10}.header-inner{width:min(1320px,calc(100% - 80px));height:100%;margin:auto;display:flex;align-items:center;justify-content:space-between}.wordmark{font-size:25px;font-weight:500;letter-spacing:-1px;display:flex;align-items:center;gap:22px}.brand-separator{height:17px;width:1px;background:#414148}.byline{font-size:10px;font-weight:600;letter-spacing:1.4px;color:#bcbcc4}nav{display:flex;gap:36px;align-items:center;font-size:14px}nav>a:first-child{color:var(--muted)}nav a:hover{color:#fff}.nav-download{display:flex;gap:16px;align-items:center}.nav-download span{font-size:22px}.hero{padding-top:78px;padding-bottom:76px}.hero-topline{display:flex;justify-content:space-between;align-items:center;font-size:12px;letter-spacing:1.4px;color:var(--muted)}.release-status{letter-spacing:0;border:1px solid #39393f;border-radius:999px;padding:6px 12px;font-size:12px}h1{font-size:clamp(58px,6.8vw,96px);letter-spacing:-.072em;line-height:1.22;font-weight:500;margin:42px 0 40px}h1 span{color:#99999f}.hero-bottom{display:flex;justify-content:space-between;gap:40px;align-items:flex-end}.hero-bottom p{font-size:18px;line-height:1.85;color:var(--muted);margin:0}.hero-bottom strong{font-weight:400;color:#dedee3}.hero-action{display:flex;flex-direction:column;align-items:flex-start;gap:15px;padding-bottom:5px}.button{display:inline-flex;align-items:center;justify-content:center;gap:14px;padding:17px 24px;min-height:56px;font-size:15px;font-weight:600;line-height:1.4;border:1px solid transparent;border-radius:7px;transition:background .18s ease,transform .18s ease}.button-silver{background:var(--silver);color:#111113}.button-silver:hover:not(:disabled){background:white;transform:translateY(-2px)}.button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.compatibility{font-size:12px;color:#93939c}.preview-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:20px}.preview-toolbar h2{font-size:14px;font-weight:400;color:#b5b5bd}.theme-switch{display:flex;background:#17171a;border:1px solid #2d2d33;border-radius:7px;padding:4px;gap:3px}.theme-switch button{border:0;background:transparent;color:#a1a1aa;border-radius:4px;padding:7px 14px;font-size:12px}.theme-switch button[aria-pressed=true]{background:#e4e4e7;color:#18181b}.product-preview{margin:0}.product-preview img{display:block;width:100%;height:auto;border:1px solid #38383e;border-radius:12px;box-shadow:0 30px 100px #0008}.product-preview figcaption{display:flex;justify-content:space-between;gap:15px;font-size:11px;letter-spacing:1px;color:#82828e;padding-top:20px}.product-preview figcaption span:last-child{letter-spacing:0}.statement{padding-block:136px 104px}.eyebrow{font-size:11px;font-weight:500;letter-spacing:1.8px;color:#9a9aa5;margin:0 0 28px}h2{font-size:clamp(32px,4vw,52px);letter-spacing:-.05em;line-height:1.4;font-weight:500;margin:0}h2 span{color:#96969f}.section-intro{font-size:17px;line-height:1.9;color:#a1a1aa;margin:26px 0 58px}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.feature-grid article{padding:32px 30px 0 0}.feature-grid article+article{padding-left:30px;border-left:1px solid var(--line)}.feature-number{font-size:11px;letter-spacing:1px;color:#93939c}.feature-grid h3{font-size:20px;font-weight:500;letter-spacing:-.035em;margin:28px 0 15px}.feature-grid p{font-size:15px;line-height:1.9;color:#a1a1aa;margin:0;max-width:290px}.workflow{padding-block:90px 120px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:100px}.workflow h2{font-size:38px}.steps{list-style:none;padding:0;margin:0}.steps li{display:flex;gap:28px;padding:26px 0;border-bottom:1px solid var(--line)}.steps li:first-child{padding-top:0}.steps li>span{font-size:12px;padding-top:8px;color:#858590}.steps h3{font-size:19px;font-weight:500;margin:0 0 12px}.steps p{font-size:15px;color:#a1a1aa;line-height:1.8;margin:0}.download-section{background:#e4e4e7;color:#111113;padding:95px 0 100px}.download-inner{display:grid;grid-template-columns:1fr 1fr;gap:110px;align-items:center}.download-section .eyebrow{color:#62626b}.download-section h2{font-size:56px;letter-spacing:-.06em}.download-inner>div:first-child>p:last-child{font-size:17px;margin:24px 0 0;color:#62626b}.download-box{background:#111113;color:#fafafa;padding:32px;border-radius:12px}.download-meta{display:flex;justify-content:space-between;font-size:11px;letter-spacing:.8px;color:#a1a1aa;border-bottom:1px solid #34343b;padding-bottom:25px}.download-box h3{font-size:27px;font-weight:500;letter-spacing:-.04em;margin:30px 0 16px}.download-box>p{font-size:14px;color:#a1a1aa;line-height:1.8;margin:0 0 26px}.release-button{width:100%}.release-button:disabled{background:#37373d;color:#aaaab2;border:1px solid #4d4d54}.download-box .download-requirements{font-size:12px;margin:18px 0 0}.download-box .release-details{margin:14px 0 0;font-size:12px;overflow-wrap:anywhere}.faq{padding-block:108px;display:grid;grid-template-columns:1fr 1.3fr;gap:100px}.faq h2{font-size:38px}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:16px;padding:24px 0;cursor:pointer}summary::-webkit-details-marker{display:none}summary span{font-size:22px;color:#96969f}details[open] summary span{transform:rotate(45deg)}details p{font-size:15px;line-height:1.9;color:#a1a1aa;margin:0 30px 26px 0}footer{border-top:1px solid var(--line);padding-block:34px 48px;display:flex;gap:48px;align-items:flex-start}.footer-brand{font-size:24px;letter-spacing:-1px}footer>div{display:flex;flex-direction:column;gap:10px;font-size:12px;color:#a1a1aa;padding-top:5px}footer p{font-size:11px;color:#82828e;margin:7px 0 0 auto}
@media(min-width:1441px){h1{font-size:100px}}@media(max-width:900px){.container,.header-inner{width:calc(100% - 48px)}.hero{padding-top:56px}.hero-bottom{align-items:flex-start;flex-direction:column;gap:28px}.hero-action{flex-direction:row;align-items:center;gap:20px}.statement{padding-block:90px}.workflow,.download-inner,.faq{gap:45px}.download-section h2{font-size:44px}.feature-grid article{padding-right:20px}.feature-grid article+article{padding-left:20px}.byline{display:none}.brand-separator{display:none}.download-box{padding:26px}}
@media(max-width:640px){html{scroll-padding-top:20px}.container,.header-inner{width:calc(100% - 40px)}.site-header{height:72px}.wordmark{font-size:24px}nav{gap:0}nav>a:first-child{display:none}.nav-download{font-size:12px;gap:8px}.hero{padding-top:40px;padding-bottom:42px}.hero-topline{font-size:9px;letter-spacing:1px}.release-status{font-size:10px;padding:5px 8px}h1{font-size:clamp(43px,10.8vw,68px);margin:34px 0 28px;line-height:1.25;letter-spacing:-.065em}.hero-bottom p{font-size:16px;line-height:1.9}.hero-action{width:100%;flex-direction:column;align-items:flex-start;gap:13px}.button{font-size:14px;padding:15px 20px;min-height:52px}.compatibility{font-size:11px}.preview-toolbar{margin-bottom:14px}.preview-toolbar h2{font-size:12px}.theme-switch button{font-size:11px;padding:6px 10px}.product-preview img{border-radius:7px}.product-preview figcaption{font-size:9px;letter-spacing:.4px}.statement{padding-block:76px 64px}.eyebrow{font-size:10px;margin-bottom:22px}.section-intro{font-size:15px;margin-bottom:38px}.feature-grid{grid-template-columns:1fr}.feature-grid article,.feature-grid article+article{padding:26px 0;border-left:0;border-bottom:1px solid var(--line)}.feature-grid h3{margin:17px 0 11px}.feature-grid p{max-width:none}.workflow{grid-template-columns:1fr;padding-block:64px;gap:38px}.workflow h2,.faq h2{font-size:32px}.steps li{gap:20px}.steps h3{font-size:18px}.steps p{font-size:14px}.download-section{padding-block:64px}.download-inner{grid-template-columns:1fr;gap:38px}.download-section h2{font-size:42px}.download-box{padding:26px}.faq{grid-template-columns:1fr;padding-block:64px;gap:32px}summary{font-size:15px;padding:22px 0}details p{font-size:14px}footer{gap:24px;flex-wrap:wrap;padding-block:28px 38px}footer p{width:100%;margin:0}footer>div{margin-left:auto}.footer-brand{font-size:24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
.feature-grid p,.steps p,details p,.download-box>p{font-size:1rem}.theme-switch button,.preview-toolbar h2,.nav-download{font-size:.875rem}.download-box .download-requirements,.download-box .release-details{font-size:.75rem}summary{font-size:1rem}
.hero-speed{margin-top:42px;display:inline-flex;align-items:center;gap:20px;border-top:1px solid #38383e;padding-top:20px;font-size:.875rem;color:#d4d4d8}.hero-speed-value{font-size:2.2rem;font-weight:500;line-height:1;letter-spacing:-.06em;color:#fafafa}.hero-speed-value span{font-size:1.1rem;margin-left:3px;color:#a1a1aa}.hero-speed small{display:block;color:#a1a1aa;font-size:.75rem;margin-top:5px}.hero-speed>span:last-child{font-size:1.5rem;margin-left:30px}.speed-section{padding-top:110px}.speed-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:54px}.speed-heading>p{font-size:1rem;line-height:1.9;color:#a1a1aa;margin:0 0 7px}.speed-grid{display:grid;grid-template-columns:1fr 1fr;border:1px solid #333339;border-radius:12px;overflow:hidden}.speed-panel{background:#111113;padding:36px 38px;display:flex;flex-direction:column}.speed-panel+article{border-left:1px solid #333339}.metric-kicker{font-size:.75rem;color:#9696a1;letter-spacing:1.3px;margin:0 0 28px}.speed-panel h3{font-size:1.3rem;font-weight:500;letter-spacing:-.035em;margin:0}.speed-number{font-size:clamp(80px,8vw,116px);line-height:1.15;letter-spacing:-.08em;font-weight:500;font-variant-numeric:tabular-nums;margin:14px 0 22px}.speed-number span{font-size:.32em;margin-left:14px;letter-spacing:-.03em;color:#a1a1aa}.metric-context{font-size:1rem;line-height:1.8;margin:0;color:#e4e4e7}.metric-context strong{font-size:.8rem;font-weight:400;color:#a1a1aa}.pipeline-chart,.decode-chart{margin:36px 0 28px;min-height:210px}.pipeline-chart figcaption,.decode-chart figcaption{font-size:.875rem;color:#bcbcc4;line-height:1.6;margin-bottom:22px}.decode-chart figcaption{display:flex;justify-content:space-between;gap:8px}.decode-chart figcaption>span{font-size:.75rem;color:#a1a1aa}.pipeline-track{display:flex;height:40px;border-radius:3px;overflow:hidden;gap:2px;background:#09090b}.phase{flex:var(--part);min-width:2px}.phase-layout{background:#56565f}.phase-vision{background:#868692}.phase-prefill{background:#b5b5bf}.phase-decode{background:#e4e4e7}.phase-other{background:#393940}.phase-legend{display:grid;grid-template-columns:1fr 1fr;gap:18px 24px;margin:24px 0 0}.phase-legend>div{display:flex;justify-content:space-between;gap:8px;align-items:center;font-size:.75rem}.phase-legend dt{display:flex;align-items:center;gap:7px;color:#a1a1aa}.phase-legend i{display:block;width:7px;height:7px;border-radius:1px;flex-shrink:0}.phase-legend dd{margin:0;color:#e4e4e7;font-variant-numeric:tabular-nums}.decode-row+.decode-row{margin-top:23px}.decode-row-label{display:flex;justify-content:space-between;gap:16px;align-items:center;font-size:.875rem;margin-bottom:10px}.decode-row-label small{display:block;font-size:.75rem;color:#a1a1aa;margin-top:3px}.decode-row-label b{font-size:1rem;font-weight:500;white-space:nowrap;font-variant-numeric:tabular-nums}.decode-track{height:17px;background:repeating-linear-gradient(to right,#303036 0,#303036 1px,transparent 1px,transparent 25%);position:relative}.decode-bar{display:block;width:var(--length);height:100%;transform-origin:left;border-radius:0 3px 3px 0}.baseline{background:#62626d}.optimized{background:#e4e4e7}.chart-axis{display:flex;justify-content:space-between;font-size:.75rem;color:#9696a1;margin-top:14px}.metric-note{font-size:.8rem;line-height:1.8;color:#a1a1aa;margin:auto 0 0;padding-top:22px;border-top:1px solid #303036}.benchmark-details{border-top:0;margin-top:12px}.benchmark-details summary{font-size:.875rem;color:#bcbcc4;padding:20px 0}.benchmark-details-body{display:grid;grid-template-columns:1fr 1fr;gap:16px 40px;padding:4px 0 28px}.benchmark-details h4{font-size:.875rem;font-weight:500;margin:0 0 14px;color:#e4e4e7}.benchmark-details p{font-size:.875rem;line-height:1.85;color:#a1a1aa;margin:0 0 14px}.benchmark-data-link{font-size:.875rem;text-decoration:underline;text-underline-offset:4px;grid-column:1/-1}.speed-section+.statement{padding-top:100px}
@media(max-width:1000px){.speed-panel{padding:28px}.speed-heading{align-items:flex-start;flex-direction:column;gap:24px}.phase-legend{grid-template-columns:1fr;gap:10px}.pipeline-chart,.decode-chart{min-height:240px}}
@media(max-width:700px){.speed-section{padding-top:72px}.speed-heading{margin-bottom:32px}.speed-grid{grid-template-columns:1fr}.speed-panel+article{border-left:0;border-top:1px solid #333339}.speed-panel{padding:28px 24px}.speed-number{font-size:94px}.metric-context{font-size:1rem}.metric-context strong{font-size:.8rem}.pipeline-chart,.decode-chart{min-height:0;margin:30px 0}.phase-legend{grid-template-columns:1fr 1fr;gap:16px 20px}.benchmark-details-body{grid-template-columns:1fr}.hero-speed{gap:14px;margin-top:28px}.hero-speed>span:last-child{margin-left:0}.speed-section+.statement{padding-top:76px}}
@media(max-width:380px){.phase-legend{grid-template-columns:1fr}.decode-chart figcaption{flex-direction:column}.speed-panel{padding:24px 18px}}
.legal-page{min-height:100vh}.legal-content{width:min(780px,calc(100% - 48px));margin:0 auto;padding:90px 0 120px}.legal-content h1{font-size:clamp(42px,6vw,72px);margin:14px 0 10px;letter-spacing:-.055em}.legal-updated{color:var(--muted);margin:0 0 64px}.legal-content h2{font-size:1.35rem;letter-spacing:-.025em;margin:48px 0 16px}.legal-content p,.legal-content li{font-size:1rem;line-height:1.9;color:#c4c4cc}.legal-content a{text-decoration:underline;text-underline-offset:4px}.legal-content ul{padding-left:22px}.legal-note{border-top:1px solid var(--line);margin-top:64px;padding-top:24px;color:var(--muted)!important}

.language-switch{white-space:nowrap;font-size:12px;color:var(--muted)}
@media(max-width:640px){nav{gap:18px}.language-switch{font-size:12px}}

/* Product-first layout: local processing, speed, structured content. */
.hero{padding-top:64px;padding-bottom:60px}.hero h1{margin-top:0}.hero-bottom p{font-size:18px;line-height:1.8}.preview-toolbar{font-size:12px;color:var(--muted)}.preview-toolbar>span{letter-spacing:.02em}.screenshot-link{display:block}.product-preview img{aspect-ratio:1171/768}.product-preview figcaption a{letter-spacing:0;text-decoration:underline;text-underline-offset:4px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:48px}.section-heading>p{color:var(--muted);font-size:17px;line-height:1.9;margin:0 0 5px}.statement{padding:128px 0 0}.feature-grid article{padding-top:30px}.feature-grid h3{margin-top:20px}.speed-section{padding-top:132px}.speed-heading{margin-bottom:42px}.speed-panel{padding:36px}.metric-kicker{margin-bottom:20px}.speed-number{margin-bottom:12px}.metric-context{font-size:14px;color:var(--muted)}.decode-chart{min-height:0;margin:32px 0 28px}.decode-row-label small{display:none}.method-link{display:block;margin-top:auto;padding-top:24px;color:var(--muted);font-size:12px;text-decoration:underline;text-underline-offset:4px}.page-illustration{display:flex;align-items:center;justify-content:center;gap:28px;flex:1;min-height:214px;color:#777780;font-size:26px}.mini-page{width:100px;height:134px;border:1px solid #55555e;border-radius:6px;padding:18px 13px;display:flex;flex-direction:column;gap:7px;transform:rotate(-7deg)}.mini-page i{display:block;width:100%;height:3px;background:#595960;border-radius:2px}.mini-page i:nth-child(3){width:65%}.mini-page>div{height:24px;border:1px solid #44444c}.text-page{transform:rotate(5deg);border-color:#9a9aa2}.text-page i{background:#bcbcc4;height:4px;margin-bottom:4px}.structured-section{padding:132px 0}.example-label{color:var(--muted);font-size:12px;margin:0 0 18px}.structure-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:24px}.structure-card{padding:34px;border:1px solid var(--line);border-radius:12px;background:var(--surface);display:flex;flex-direction:column;min-width:0}.structure-card h3{font-size:24px;font-weight:500;margin:18px 0 26px;letter-spacing:-.04em}.structure-card>p{font-size:14px;color:var(--muted);line-height:1.8;margin:26px 0 0}.table-preview{overflow-x:auto}.table-preview table{border-collapse:collapse;width:100%;font-size:14px;line-height:1.6;text-align:left}.table-preview th,.table-preview td{padding:12px 10px;border-bottom:1px solid #35353d;white-space:nowrap}.table-preview th{font-weight:500;color:#a1a1aa}.table-preview td{color:#e4e4e7}.formula-preview{min-height:130px;display:flex;align-items:center;justify-content:center;font-size:clamp(23px,2.3vw,34px)}.formula-source{display:block;padding:14px 12px;border:1px solid #34343c;border-radius:6px;background:#09090b;color:#b5b5bf;font-size:12px;overflow-x:auto;white-space:nowrap}.download-meta .release-status{padding:0;border:0;color:var(--muted)}.download-box h3{font-size:34px}.faq{gap:64px}.benchmark-data-link{display:inline-block;margin-top:30px}.legal-content section{scroll-margin-top:40px}footer>div{flex-wrap:wrap;row-gap:12px}
@media(max-width:1000px){.section-heading{align-items:flex-start;flex-direction:column;gap:22px}.structure-card{padding:26px}.hero h1{font-size:clamp(48px,7.2vw,80px)}}
@media(max-width:700px){.hero{padding-top:44px;padding-bottom:38px}.hero h1{font-size:clamp(37px,7.6vw,54px);letter-spacing:-.055em;line-height:1.25;margin-bottom:24px}.hero-bottom{gap:24px}.hero-bottom p{font-size:15px}.hero-bottom p br{display:none}.section-heading{margin-bottom:32px}.section-heading>p{font-size:15px}.statement{padding-top:76px}.speed-section{padding-top:80px}.structured-section{padding:80px 0}.structure-grid{grid-template-columns:1fr}.structure-card{padding:26px 22px}.structure-card h3{font-size:22px}.speed-panel{padding:28px 24px}.page-illustration{min-height:170px}.speed-number{font-size:88px}.preview-toolbar{gap:10px;font-size:10px}.product-preview figcaption{gap:12px;font-size:10px}.product-preview figcaption>span{letter-spacing:.1px}.formula-preview{font-size:29px}.table-preview table{font-size:13px}.table-preview th,.table-preview td{padding:10px 8px}.faq{gap:30px}footer>div{width:100%;margin-left:0;display:flex;flex-wrap:wrap;gap:16px}}
.speed-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.speed-panel{min-width:0}.decode-chart figcaption{flex-wrap:wrap}.mini-page{flex-shrink:1;min-width:0}
@media(max-width:700px){.speed-grid{grid-template-columns:minmax(0,1fr)}.page-illustration{gap:20px}.decode-row-label{gap:10px}html[lang=en] .hero h1{font-size:clamp(30px,7.8vw,52px)}}

/* Restore the approved product preview and slightly reduce headline scale. */
.product-preview img{aspect-ratio:1440/900}.hero h1{font-size:clamp(50px,6vw,84px)}.example-label a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:1000px){.hero h1{font-size:clamp(43px,6.4vw,72px)}}
@media(max-width:700px){.hero h1{font-size:clamp(34px,7vw,49px)}html[lang=en] .hero h1{font-size:clamp(28px,7.2vw,48px)}}

/* Color roles: white = message/action/result; gray = explanation/context.
   Surfaces separate content groups; they do not reverse the reading hierarchy. */
:root{
  --bg:#0b0b0e;
  --surface:#141418;
  --surface-raised:#1c1c22;
  --line:#303038;
  --text:#f5f5f7;
  --text-body:#bcbcc5;
  --muted:#9797a3;
  --silver:var(--text);
  --on-action:#111115;
  --chart-baseline:#737380;
}
/* A heading is one statement: line breaks do not imply lower importance. */
h1,h2,h3,h1 span,h2 span,.hero-bottom strong,.footer-brand,.speed-number,
.table-preview td,.formula-preview,.decode-row-label b{color:var(--text)}
.hero-bottom p,.section-heading>p,.speed-heading>p,.feature-grid p,.steps p,
.section-intro,.structure-card>p,.download-inner>div:first-child>p:last-child,
.download-box>p,details p,.legal-content p,.legal-content li,
.decode-row-label,.pipeline-chart figcaption,.decode-chart figcaption{color:var(--text-body)}
.byline,.compatibility,.preview-toolbar,.preview-toolbar h2,
.product-preview figcaption,.eyebrow,.feature-number,.metric-kicker,
.metric-context,.metric-context strong,.speed-number span,.example-label,
.method-link,.chart-axis,.decode-chart figcaption>span,.decode-row-label small,
.download-meta,.download-meta .release-status,.download-box .download-requirements,
.download-box .release-details,.table-preview th,.formula-source,
.language-switch,footer>div,footer p,summary span{color:var(--muted)}
/* A solid white fill is reserved for the primary action. */
.button-silver,.skip-link{background:var(--text);color:var(--on-action)}
.button-silver:hover:not(:disabled){background:#fff}
.nav-download{color:var(--text)}
nav>a:first-child{color:var(--text-body)}
nav a:hover,.language-switch:hover,.method-link:hover,footer a:hover{color:var(--text)}
.theme-switch{background:var(--bg);border-color:var(--line)}
.theme-switch button{color:var(--muted)}
.theme-switch button[aria-pressed=true]{background:var(--surface-raised);color:var(--text);box-shadow:inset 0 0 0 1px #555561}
/* Consistent dark surfaces keep the download section within the same system. */
.speed-panel,.structure-card{background:var(--surface)}
.speed-grid,.speed-panel+article,.structure-card,.product-preview img,
.download-meta,.table-preview th,.table-preview td,.formula-source{border-color:var(--line)}
.download-section{background:var(--surface);color:var(--text);border-block:1px solid var(--line)}
.download-box{background:var(--surface-raised);color:var(--text);border:1px solid var(--line)}
.release-button:disabled{background:transparent;color:var(--muted);border-color:#555561}
.formula-source{background:var(--bg)}
/* Gray identifies the reference; white identifies the Gravity result. */
.baseline{background:var(--chart-baseline)}
.optimized{background:var(--text)}
.decode-track{background:repeating-linear-gradient(to right,var(--line) 0,var(--line) 1px,transparent 1px,transparent 25%)}
.page-illustration{color:var(--muted)}
.mini-page{border-color:var(--chart-baseline)}
.mini-page i{background:var(--chart-baseline)}
.mini-page>div{border-color:var(--chart-baseline)}
.text-page{border-color:var(--text)}
.text-page i{background:var(--text)}

/* One restrained accent, limited to the image-to-text promise. */
.hero h1 .hero-ink{color:#c4d9ff}
.hero h1 .hero-local{color:#edf2ff}
@supports ((background-clip:text) or (-webkit-background-clip:text)){
  .hero h1 .hero-ink{
    background-image:linear-gradient(105deg,#b7dcff 0%,#d8c8ff 35%,#c4d9ff 65%,#b7dcff 100%);
    background-size:200% 100%;
    background-clip:text;
    -webkit-background-clip:text;
    color:transparent;
    -webkit-text-fill-color:transparent;
    animation:hero-ink-drift 12s ease-in-out infinite alternate;
  }
}
@keyframes hero-ink-drift{from{background-position:0% 50%}to{background-position:100% 50%}}
@media(prefers-reduced-motion:reduce){.hero h1 .hero-ink{animation:none;background-position:50% 50%}}
@media(forced-colors:active){.hero h1 .hero-ink,.hero h1 .hero-local{background:none;color:CanvasText;-webkit-text-fill-color:CanvasText;animation:none}}

/* Quiet depth around the product, with short, one-time entrance motion. */
.product-section{position:relative;isolation:isolate}
.product-section::before{content:"";position:absolute;z-index:-1;pointer-events:none;inset:-55px -30px 5%;background:radial-gradient(ellipse at 24% 35%,rgba(130,174,245,.09),transparent 57%),radial-gradient(ellipse at 80% 45%,rgba(173,145,235,.08),transparent 57%)}
.screenshot-link{position:relative}
.product-preview .preview-previous{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;box-shadow:none}
.reveal-once{animation:section-arrive 550ms cubic-bezier(.2,.65,.3,1) both}
.chart-enter .decode-bar{animation:bar-arrive 750ms cubic-bezier(.2,.65,.3,1) both}
.chart-enter .optimized{animation-delay:90ms}
@keyframes section-arrive{from{opacity:.35;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@keyframes bar-arrive{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(max-width:700px){.product-section::before{inset:-30px -12px 8%}}
@media(prefers-reduced-motion:reduce){.reveal-once,.chart-enter .decode-bar{animation:none;transform:none;opacity:1}.preview-previous{display:none!important}}
@media(forced-colors:active){.product-section::before{display:none}}
/* Korean wraps at word boundaries, not mid-syllable-run. */
html[lang=ko] body{word-break:keep-all;overflow-wrap:break-word}
/* Release metadata is reference text; the notes link reads as a link. */
.download-box .release-details{font-variant-numeric:tabular-nums;line-height:1.7}
.download-box .release-details a{white-space:nowrap;text-decoration:underline;text-underline-offset:3px}
.download-box .release-details a:hover{color:var(--text)}
/* The research links end the section; give them room before the download band. */
.research-section{padding-bottom:112px}
@media(max-width:700px){.research-section{padding-bottom:72px}}
/* Trillion Labs marks: the official SVG, in the surrounding text colour. */
.byline{display:flex;align-items:center;color:var(--text-body)}
.byline svg{display:block;height:20px;width:auto}
.byline:hover,.footer-company:hover{color:var(--text)}
footer p{display:flex;align-items:center;gap:14px}
.footer-company{display:flex;color:var(--muted)}
.footer-company svg{display:block;height:20px;width:auto}
@media(max-width:400px){.byline{display:none}}
/* Tracking tuned for the self-hosted Manrope/Noto Sans KR; the earlier values
   assumed wider system fonts and closed Manrope's word spaces. */
h1,.hero h1{letter-spacing:-.045em}
h2,.download-section h2{letter-spacing:-.035em}
.speed-number{letter-spacing:-.05em}
