@font-face{font-family:TerminalSans;src:url('/services/fonts/InterVariable.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:TerminalJP;src:url('/for-ai/fonts/japanese.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:TerminalDisplay;src:url('/for-ai/fonts/display.woff2') format('woff2');font-weight:900;font-display:swap}
@font-face{font-family:TerminalMono;src:url('/demo/forma/assets/mono.woff2') format('woff2');font-display:swap}
:root{--ft-ink:#12130f;--ft-paper:#eae8de;--ft-orange:#ff6427;--ft-muted:#5c5d54;--ft-line:#b9b9ad;--ft-mono:TerminalMono,'Courier New',monospace}
html:has(.for-ai-page){scroll-behavior:auto;scrollbar-color:#77796a var(--ft-ink)}
.for-ai-page{margin:0;background:var(--ft-paper);color:var(--ft-ink);font-family:TerminalSans,TerminalJP,sans-serif;font-size:15px;line-height:1.75;-webkit-font-smoothing:antialiased}
.for-ai-page *{box-sizing:border-box}.for-ai-page [hidden]{display:none!important}.for-ai-page ::selection{background:var(--ft-orange);color:var(--ft-ink)}
.for-ai-page a{color:inherit;text-underline-offset:5px;text-decoration-thickness:1px}.for-ai-page a:hover{color:#b43d0a}.for-ai-page :focus-visible{outline:2px solid #bd3c09;outline-offset:5px}
.for-ai-page button,.for-ai-page input,.for-ai-page textarea,.for-ai-page select{font:inherit}.for-ai-page button{cursor:pointer}.for-ai-page h1,.for-ai-page h2,.for-ai-page h3,.for-ai-page p{margin-top:0}.for-ai-page h1,.for-ai-page h2,.for-ai-page h3{font-weight:750;letter-spacing:-.045em;line-height:1.2}.for-ai-page p{margin-bottom:18px}.for-ai-page ul,.for-ai-page ol{padding-left:24px}.for-ai-page li{margin-bottom:10px}.for-ai-page section,.for-ai-page article{scroll-margin-top:35px}.for-ai-page [lang=ja]{line-break:strict}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.ft-skip{position:fixed;top:10px;left:10px;z-index:100;padding:10px 20px;background:var(--ft-orange);transform:translateY(-150%)}.ft-skip:focus{transform:none}
.ft-header{min-height:70px;background:var(--ft-ink);color:var(--ft-paper);display:flex;align-items:center;padding:0 4.4%;gap:18px;position:relative;z-index:2}.ft-header::before{content:'';position:absolute;left:2.5%;top:0;bottom:0;width:1px;background:var(--ft-orange)}
.ft-brand{font-size:32px;font-weight:800;letter-spacing:-.06em;line-height:1;text-decoration:none}.ft-header a:hover,.ft-footer a:hover{color:var(--ft-orange)}.ft-header :focus-visible,.ft-hero :focus-visible{outline-color:var(--ft-orange)}.ft-for-ai{color:var(--ft-orange)!important;font:12px var(--ft-mono);letter-spacing:.09em;text-decoration:none;white-space:nowrap}
.ft-header nav{margin-left:auto;display:flex;gap:28px}.ft-header nav a{font:11px var(--ft-mono);letter-spacing:.06em;text-decoration:none;position:relative;padding:13px 0;white-space:nowrap}.ft-header nav a::after{content:'';position:absolute;bottom:4px;left:12%;width:76%;height:2px;background:var(--ft-orange);transform:scaleX(0);transform-origin:left;transition:transform .3s}.ft-header nav a:hover::after,.ft-header nav a[aria-current=page]::after{transform:scaleX(1)}
.fa-shell{overflow-wrap:break-word}.ft-hero{background:var(--ft-ink);color:var(--ft-paper);position:relative;display:grid;grid-template-columns:1fr 1fr;gap:1%;min-height:450px;padding:0 3.5% 44px 5.8%;isolation:isolate;overflow:hidden}.ft-hero::before{content:'';position:absolute;left:2.5%;top:0;bottom:0;width:1px;background:var(--ft-orange)}
.ft-hero::after{content:'';pointer-events:none;position:absolute;inset:0;opacity:.06;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.92' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath filter='url(%23n)' opacity='.6' d='M0 0h180v180H0z'/%3E%3C/svg%3E");z-index:3}
.ft-hero-copy{z-index:1;align-self:center;padding:8px 0 10px}.ft-protocol{font:12px/1.5 var(--ft-mono);letter-spacing:.09em;color:var(--ft-orange);display:flex;align-items:center;gap:24px;margin-bottom:28px!important}.ft-protocol>span{height:1px;background:#77786d;flex:1;max-width:200px}
.fa-intro h1{font-size:clamp(32px,3.65vw,62px);line-height:1.5;letter-spacing:-.055em;font-weight:850;margin-bottom:22px;white-space:nowrap}.fa-title-keep{white-space:nowrap}.ft-hero-lead{font-size:clamp(13px,1.25vw,19px);line-height:1.9;margin-bottom:10px!important;font-weight:450}.ft-hero-sub{font-size:clamp(12px,1.1vw,16px);color:#b8b9ae;margin-bottom:24px!important}
.fa-primary,.fa-secondary{min-height:50px;border:1px solid var(--ft-ink);border-radius:0;display:inline-flex;justify-content:center;align-items:center;gap:8px;padding:15px 23px;font-size:14px;font-weight:600;line-height:1.6;text-decoration:none!important;transition:background .25s,color .25s,box-shadow .25s}.fa-primary{background:var(--ft-ink);color:var(--ft-paper)!important}.fa-primary:hover{background:#33372b;color:var(--ft-paper)!important;box-shadow:inset 4px 0 var(--ft-orange)}.fa-secondary{background:transparent;color:var(--ft-ink)}.fa-secondary:hover{background:#d8d9ca}.fa-primary:disabled{opacity:.5;cursor:not-allowed}
.ft-hero-cta{background:var(--ft-orange);border-color:var(--ft-orange);color:var(--ft-ink)!important;font:17px/1.5 var(--ft-mono);letter-spacing:.025em;gap:22px;padding:17px 29px;min-width:335px;position:relative;overflow:hidden}.ft-hero-cta:hover{background:#ff7d40;color:var(--ft-ink)!important;box-shadow:0 0 32px #ff642724}.ft-hero-cta span{transition:transform .3s}.ft-hero-cta:hover span{transform:translate(4px,-4px)}.ft-hero-caption{font-size:11px;color:#b9b9b0;letter-spacing:.09em;margin:9px 0 0!important}
.ft-art{position:relative;min-width:0;aspect-ratio:700/480;align-self:center;pointer-events:none}.ft-art canvas,.ft-art-fallback{position:absolute;width:100%;height:100%;inset:0}.ft-art-fallback text{font-family:TerminalDisplay,TerminalSans,sans-serif;font-size:300px;font-weight:900;fill:#eae8de}.ft-art-fallback path{fill:none;stroke:#eae8de;stroke-width:6}.ft-art canvas{opacity:0}.ft-art.is-ready canvas{opacity:1}.ft-art.is-ready .ft-art-fallback{visibility:hidden}
.ft-art-topline{position:absolute;left:1%;right:8%;top:-8px;display:flex;justify-content:space-between;font:8px var(--ft-mono);letter-spacing:.2em;color:#8c8e7f}.ft-art-caption{position:absolute;left:2%;right:7%;bottom:-25px;display:flex;align-items:center;justify-content:space-between;font:7px var(--ft-mono);letter-spacing:.2em;color:#858777}.ft-cross{font-size:24px;color:var(--ft-orange)}
.ft-motion{position:absolute;bottom:15px;right:4.5%;background:transparent;border:0;color:#d1d1c5;font:9px var(--ft-mono)!important;letter-spacing:.03em;z-index:4;padding:8px}.ft-motion::before{content:'Ⅱ';color:var(--ft-orange);margin-right:9px}.ft-motion[aria-pressed=true]::before{content:'▷'}.ft-hero-foot{position:absolute;bottom:20px;left:5.8%;width:41%;display:flex;justify-content:space-between;color:#898c7d;font:8px var(--ft-mono);letter-spacing:.15em}
.ft-guide{padding:0 3.6% 80px;position:relative;background:radial-gradient(ellipse at 70% 5%,#f4f2e750,transparent 60%),var(--ft-paper)}.ft-guide-bar{display:flex;align-items:center;gap:18px;min-height:65px;font:12px var(--ft-mono);letter-spacing:.08em}.ft-guide-bar strong{font-size:15px;white-space:nowrap}.ft-rule{height:1px;background:#77796a;flex:1}.ft-local{font-size:8px;letter-spacing:.11em;color:#515449;display:flex;align-items:center;gap:15px}.ft-local i{display:inline-block;width:7px;height:7px;background:var(--ft-orange)}
.ft-index-grid{display:grid;grid-template-columns:1fr 1.06fr 1.12fr;gap:2.8%;padding:0 0 45px;border-bottom:1px solid var(--ft-ink)}.ft-index a{min-height:107px;display:flex;align-items:center;gap:22px;border-top:1px solid #8f9283;text-decoration:none}.ft-index a:last-child{border-bottom:1px solid #8f9283}.ft-index-number{font-family:TerminalDisplay,TerminalSans,sans-serif;font-size:45px;font-weight:900;line-height:1;letter-spacing:-.06em;min-width:50px}.ft-index a strong{display:block;font-size:19px;letter-spacing:-.04em}.ft-index a small{display:block;font-size:11px;color:var(--ft-muted);margin-top:3px}.ft-arrow{margin-left:auto;font-size:23px;transition:transform .3s}.ft-index a:hover .ft-arrow{transform:translate(4px,-4px)}.ft-index a:hover .ft-index-number{color:#bd3c09}
.ft-manifesto,.ft-form-preview{border-left:1px solid #8f9283;padding-left:8%;min-width:0}.ft-manifesto{padding-top:10px}.ft-manifesto h2,.ft-form-preview h2{font-size:clamp(22px,2.35vw,36px);margin-bottom:17px}.ft-manifesto p{font-size:14px;line-height:1.65;color:#50534a}.ft-pipeline{display:flex;align-items:center;justify-content:space-between;position:relative;font:11px var(--ft-mono);letter-spacing:.04em;margin:38px 0 33px;padding-top:21px;border-top:1px solid #b9bbaf}.ft-pipeline i{font-style:normal;font-size:22px}.ft-pipeline strong{color:#b43d0a;font-weight:400}.ft-pipeline::before{content:'';position:absolute;top:-2px;width:18px;height:3px;background:var(--ft-orange);left:0}
.ft-small-label{font:9px var(--ft-mono);letter-spacing:.1em;margin-bottom:15px!important}.ft-form-preview .ft-small-label{color:#6a6c61}.ft-form-preview h2{font-size:25px;line-height:1.15;margin-bottom:15px}.ft-example-label{font-size:10px;margin:0 0 7px!important}.ft-form-preview blockquote{margin:0 0 12px;padding:12px;border:1px solid #a3a698;font-size:13px;line-height:1.9;background:#ffffff16}.ft-example-budget{font:9px var(--ft-mono);display:flex;gap:15px;align-items:center;margin-bottom:12px!important}.ft-example-budget span{font-family:TerminalJP,sans-serif;font-size:10px;color:var(--ft-muted)}.ft-full-form{display:flex;flex-wrap:wrap;padding:10px;gap:0 14px}.ft-full-form small{width:100%;font-size:10px;font-weight:400;text-align:center}.ft-ja-small{font-size:10px!important;margin:8px 0 0!important;color:#56594f}
.ft-doc-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:6%;max-width:1380px;margin:60px auto 0}.fa-sidebar{position:sticky;top:30px;align-self:start}.fa-sidebar nav{display:grid;border-top:1px solid var(--ft-line)}.fa-sidebar nav a{display:flex;align-items:center;gap:15px;text-decoration:none;font-size:12px;padding:15px 0;border-bottom:1px solid var(--ft-line)}.fa-sidebar nav span{font:10px var(--ft-mono);color:#6b6f60}.fa-sidebar nav i{font-style:normal;margin-left:auto}.fa-sidebar nav a[aria-current=page]{color:#a5380c}.fa-formats{margin-top:34px}.fa-formats a{display:flex;justify-content:space-between;font-size:11px;margin-bottom:14px}.fa-updated{font:9px/1.8 var(--ft-mono);color:#686b60;display:grid;margin-top:24px!important}.ft-sidebar-mark{font-family:TerminalDisplay,TerminalSans,sans-serif;font-size:65px;font-weight:900;line-height:.9;margin-top:45px;opacity:.18;letter-spacing:-.04em}.ft-sidebar-mark span{font:45px TerminalSans;display:block;margin:10px 0}
.fa-content{min-width:0;max-width:1040px}.fa-preview{border:1px solid #b4b6a8;border-left:3px solid var(--ft-orange);padding:18px 22px;font-size:11px;line-height:1.8;background:#f2f0e660;margin-bottom:32px}.fa-preview>strong{font:10px var(--ft-mono);text-transform:uppercase;letter-spacing:.04em}.fa-preview p{margin:8px 0 0}.ft-context-ja{padding:0 0 25px;font-size:13px;color:#494e42}.ft-context-ja p{line-height:2}
.fa-agent-boundary{border-top:1px solid var(--ft-ink);padding:30px 0 12px}.fa-agent-boundary h2{font-size:36px}.fa-agent-boundary p{font-size:15px}.fa-eyebrow{font:10px var(--ft-mono);letter-spacing:.09em;color:#a6380d;margin-bottom:14px!important}.fa-toc{display:flex;flex-wrap:wrap;gap:12px 20px;padding:18px 0;border-block:1px solid var(--ft-line);margin-bottom:15px;font-size:11px}.fa-toc a{text-decoration:none}.fa-toc a::before{content:'↗ ';color:#a6380d}
.fa-section{padding:45px 0;border-bottom:1px solid var(--ft-line)}.fa-section:last-child{border-bottom:0}.fa-section>h2{font-size:clamp(25px,2.5vw,38px);margin-bottom:26px;max-width:780px}.fa-section h3{font-size:19px;letter-spacing:-.025em;margin-bottom:13px}.fa-section p,.fa-section li{font-size:14px;line-height:1.9}.fa-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-bottom:25px}.fa-benefits article{border-top:1px solid var(--ft-ink);padding-top:20px}.fa-number{font:12px var(--ft-mono);color:#a6380d;display:block;margin-bottom:22px}.fa-benefits p{font-size:13px}.fa-note,.fa-hint{font-size:11px!important;line-height:1.85!important;color:var(--ft-muted)}.fa-action{display:flex;align-items:center;gap:25px;margin-top:28px}.fa-action p{font-size:11px;line-height:1.8;max-width:280px;margin:0;color:var(--ft-muted)}
.fa-routes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--ft-line);border-left:1px solid var(--ft-line);margin-bottom:25px}.fa-routes article{padding:28px;border-right:1px solid var(--ft-line);border-bottom:1px solid var(--ft-line);background:#f7f5e930;transition:background .3s}.fa-routes article:hover{background:#f7f5e9}.fa-routes a{font-size:12px}.fa-evidence{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.fa-evidence article{border-top:1px solid var(--ft-line);padding:22px 0 0}.fa-evidence article:last-child{grid-column:1/-1}.fa-evidence p{font-size:13px}.fa-evidence h3 a{text-decoration:none}.fa-evidence h3 a::after{content:' ↗';color:#a6380d}
.fa-table-wrap{margin:20px 0 25px;border:1px solid var(--ft-line)}.fa-shell table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:13px}.fa-shell th,.fa-shell td{padding:18px;vertical-align:top;text-align:left;border-bottom:1px solid var(--ft-line);overflow-wrap:anywhere}.fa-shell th{background:#d9dcce;font-size:11px;font-weight:600}.fa-shell tr:last-child td{border-bottom:0}.fa-shell td:first-child,.fa-shell th:first-child{width:28%;font-weight:600}.fa-callout{border:1px solid var(--ft-line);border-left:3px solid var(--ft-orange);padding:25px;margin:28px 0;background:#f8f5ea55}.fa-callout h2,.fa-callout h3{font-size:21px}.fa-callout p{font-size:13px}.fa-callout p:last-child{margin-bottom:0}.fa-human-note{font-size:12px!important;line-height:1.9!important;color:#4c5045;margin-top:15px!important}.fa-human-check{background:#dde0d2;padding:24px;border-left:2px solid #5d6553;margin:25px 0}.fa-human-check p{font-size:12px}.fa-human-check h3{font-size:17px}.fa-flow li{padding:8px 0}
.fa-cases{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.fa-cases article{border:1px solid var(--ft-line);padding:25px;background:#f6f3e83a;position:relative}.fa-cases article:target{border-color:#b53d0c;box-shadow:inset 3px 0 var(--ft-orange)}.fa-case-id{font:11px var(--ft-mono)!important;color:#a53c10;margin-bottom:20px!important}.fa-cases dl{font-size:12px;line-height:1.9;margin:20px 0}.fa-cases dt{font:9px var(--ft-mono);text-transform:uppercase;letter-spacing:.07em;color:#616657;margin-top:18px;margin-bottom:7px}.fa-cases dd{margin:0}.fa-cases a{font-size:11px}.fa-cases article h3{font-size:22px}.fa-cases article p{font-size:12px}
.ft-sub-intro{background:var(--ft-ink);color:var(--ft-paper);padding:55px 8% 65px;position:relative;overflow:hidden}.ft-sub-intro h1{font-size:clamp(36px,5vw,76px);max-width:1000px;margin-bottom:20px;position:relative;z-index:1}.ft-sub-intro>p:last-of-type{max-width:690px;color:#bfc3b3;font-size:15px;position:relative;z-index:1}.ft-sub-number{position:absolute;right:4%;bottom:-30px;color:#25281e;font:900 300px/.9 TerminalDisplay,TerminalSans,sans-serif;pointer-events:none}.ft-subpage .ft-doc-layout{margin-top:32px}
.ft-footer{background:var(--ft-ink);color:var(--ft-paper);padding:50px 5% 25px}.ft-footer>div{display:flex;justify-content:space-between;align-items:center;padding-bottom:35px}.ft-footer>div>span{font:12px var(--ft-mono);letter-spacing:.12em;color:#b4b8a9}.ft-footer nav{display:flex;gap:28px;padding:22px 0;border-block:1px solid #414637;font-size:11px}.ft-footer>p{display:flex;justify-content:space-between;font:9px var(--ft-mono);letter-spacing:.08em;color:#90977f;margin:24px 0 0}
@keyframes ft-packet{0%{left:0;opacity:0}8%{opacity:1}80%{opacity:1}100%{left:calc(100% - 18px);opacity:0}}
@media(prefers-reduced-motion:no-preference){.for-ai-page[data-motion=running] .ft-pipeline::before{animation:ft-packet 5s cubic-bezier(.35,0,.2,1) infinite}.ft-index a,.fa-routes article{transition:background .25s,color .25s}}
@media(min-width:1700px){.ft-hero{min-height:590px}.ft-index-grid{gap:3.5%}.ft-index a{min-height:125px}.ft-manifesto p{font-size:17px}.ft-form-preview h2{font-size:31px}}
@media(max-width:1100px){.ft-header{gap:12px}.ft-header nav{gap:17px}.ft-hero{min-height:450px;grid-template-columns:1.05fr 1fr;padding-right:2.5%}.fa-intro h1{font-size:3.4vw}.ft-hero-lead{font-size:12px}.ft-hero-cta{font-size:14px;min-width:280px;padding:15px 20px}.ft-protocol{font-size:10px;gap:15px}.ft-index-grid{gap:20px}.ft-index a{gap:12px;min-height:112px}.ft-index-number{font-size:38px;min-width:38px}.ft-index a strong{font-size:17px}.ft-index a small{font-size:10px}.ft-manifesto p{font-size:13px}.ft-pipeline{font-size:9px;gap:6px}.ft-form-preview h2{font-size:23px}.ft-doc-layout{grid-template-columns:190px minmax(0,1fr);gap:4%}.fa-benefits{grid-template-columns:1fr;gap:15px}.fa-benefits article{display:grid;grid-template-columns:30px 1fr;gap:0 15px}.fa-benefits p{grid-column:2}.fa-benefits .fa-number{grid-row:1/3}.fa-cases{grid-template-columns:1fr}.fa-routes article{padding:22px}}
@media(max-width:760px){.ft-header{min-height:93px;flex-wrap:wrap;padding:20px 6% 12px;gap:10px 16px}.ft-header::before,.ft-hero::before{left:3%}.ft-brand{font-size:27px}.ft-for-ai{font-size:10px}.ft-header nav{width:100%;margin:0;justify-content:space-between;gap:8px}.ft-header nav a{font-size:9px;padding:10px 0}.ft-hero{display:flex;flex-direction:column;padding:28px 6% 54px;min-height:0;gap:20px}.ft-hero-copy{width:100%;padding:0}.ft-protocol{font-size:10px;margin-bottom:23px!important}.fa-intro h1{font-size:clamp(24px,5.4vw,40px);line-height:1.6;margin-bottom:17px;letter-spacing:-.06em}.ft-hero-lead{font-size:12px;line-height:1.95}.ft-hero-sub{font-size:11px;margin-bottom:20px!important}.ft-hero-cta{font-size:14px;min-width:0;width:100%;padding:15px 20px;justify-content:space-between}.ft-hero-caption{font-size:10px}.ft-art{width:min(100%,530px);margin:12px 0 17px;aspect-ratio:700/430}.ft-art-topline{top:-12px}.ft-art-caption{bottom:-16px;font-size:6px}.ft-motion{right:5%;bottom:12px;font-size:8px!important}.ft-hero-foot{left:6%;bottom:22px;width:auto;font-size:7px}.ft-hero-foot span:last-child{display:none}.ft-guide{padding:0 6% 50px}.ft-guide-bar{min-height:68px;gap:12px;flex-wrap:wrap;padding:16px 0}.ft-guide-bar strong{font-size:12px}.ft-local{width:100%;font-size:7px;justify-content:space-between}.ft-index-grid{grid-template-columns:1fr;gap:30px;padding-bottom:35px}.ft-index a{min-height:83px}.ft-index-number{font-size:36px;min-width:40px}.ft-index a strong{font-size:19px}.ft-index a small{font-size:11px}.ft-manifesto,.ft-form-preview{border:0;padding:0}.ft-manifesto h2{font-size:34px}.ft-manifesto p{font-size:15px}.ft-pipeline{margin:24px 0;font-size:11px}.ft-form-preview{border-top:1px solid var(--ft-line);padding-top:25px}.ft-form-preview h2 br{display:none}.ft-form-preview h2{font-size:26px}.ft-example-budget{justify-content:space-between}.ft-form-preview blockquote{font-size:14px;padding:16px}.ft-form-preview blockquote br{display:none}.ft-doc-layout{display:flex;flex-direction:column;gap:28px;margin-top:35px}.fa-sidebar{position:static;order:0;width:100%}.fa-sidebar nav{display:grid;grid-template-columns:1fr 1fr;column-gap:20px}.fa-sidebar nav a{font-size:10px;gap:8px;min-height:55px}.fa-formats{margin-top:20px;display:flex;flex-wrap:wrap;gap:10px 20px}.fa-formats p{width:100%;margin-bottom:0!important}.fa-formats a{font-size:10px;gap:12px;margin:0}.fa-updated{display:block;font-size:8px;margin:15px 0 0!important}.fa-updated time{margin-left:10px}.ft-sidebar-mark{display:none}.fa-content{width:100%}.fa-preview{padding:16px;font-size:10px}.ft-context-ja{font-size:12px}.fa-agent-boundary h2{font-size:30px}.fa-agent-boundary p{font-size:14px}.fa-section{padding:33px 0}.fa-section>h2{font-size:28px}.fa-section p,.fa-section li{font-size:13px}.fa-routes,.fa-evidence{grid-template-columns:1fr}.fa-routes article{padding:22px}.fa-evidence article:last-child{grid-column:auto}.fa-action{align-items:stretch;flex-direction:column;gap:12px}.fa-action p{max-width:100%}.fa-human-check{padding:17px 13px}.fa-shell th,.fa-shell td{padding:12px 10px;font-size:11px}.fa-shell td:first-child,.fa-shell th:first-child{width:31%}.fa-callout{padding:20px 16px}.fa-callout h2{font-size:21px}.fa-cases article{padding:22px 18px}.ft-sub-intro{padding:35px 6% 40px}.ft-sub-intro h1{font-size:40px}.ft-sub-intro>p:last-of-type{font-size:13px}.ft-sub-number{font-size:210px;opacity:.7}.ft-subpage .ft-doc-layout{margin-top:15px}.ft-footer{padding:35px 6% 23px}.ft-footer>div{align-items:flex-start;gap:25px}.ft-footer>div>span{font-size:8px;line-height:1.7;max-width:140px}.ft-footer nav{flex-wrap:wrap;gap:18px;font-size:10px}.ft-footer>p{font-size:7px;gap:20px}}
@media(prefers-reduced-motion:reduce){.for-ai-page *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Native controls preserve the original form contract. */
.fa-template-label{font-size:14px;font-weight:650;display:block;margin-bottom:10px}.fa-template{width:100%;font:inherit;font-size:14px;line-height:1.9;background:#f7f5ec;border:1px solid #a0a68e;border-radius:0;padding:16px;color:#303729;margin-bottom:12px;resize:vertical}.fa-state{font-size:12px;font-weight:700;display:inline-block;background:#d8ddca;color:#39402e;border-radius:0;padding:6px 14px}.fa-shell form{margin-top:30px}.fa-shell fieldset{padding:0;margin:0 0 36px;border:none;min-width:0}.fa-shell legend{font-size:21px;font-weight:700;line-height:1.6;padding:0 0 12px;width:100%;border-bottom:1px solid #b9b9ad}.fa-field{margin:24px 0}.fa-field>label{display:block;font-size:15px;font-weight:650;line-height:1.7;margin-bottom:9px}.fa-field>label>span:not(:last-child),.fa-field>label>span{font-size:11px;color:#60664f;margin-left:8px;font-weight:400}.fa-field input:not([type=checkbox]),.fa-field textarea,.fa-field select{font:inherit;line-height:1.7;font-size:16px;background:#f7f5ec;color:#171c11;width:100%;max-width:100%;padding:12px 14px;border:1px solid #a0a68e;border-radius:0;box-shadow:none}.fa-field input::placeholder,.fa-field textarea::placeholder{color:#7b8492}.fa-field input[type=file]{font-size:13px;overflow-wrap:anywhere}.fa-field input[type=file]::file-selector-button{font:inherit;padding:7px 10px;background:#e0e4d4;border:1px solid #a0a68e;border-radius:0;color:#303729;margin-right:10px;cursor:pointer}.fa-field textarea{resize:vertical;min-height:100px}.fa-field select{min-height:49px}.fa-hint{margin:8px 0 0!important}.fa-field [aria-invalid=true]{border-color:#b33d42!important;background:#fffafa}.fa-field-error{color:#a42531;font-size:13px;margin-top:7px!important}.fa-errors{border:1px solid #c16464;background:#fff3f3;padding:20px;margin:20px 0}.fa-errors h2{font-size:18px}.fa-errors a{color:#962531;font-size:13px}.fa-two-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}.fa-checkbox{display:flex!important;align-items:flex-start;gap:12px;cursor:pointer}.fa-checkbox input{appearance:auto;accent-color:#13160f;width:20px;height:20px;flex:0 0 20px;margin-top:4px}.fa-checkbox span{font-size:14px!important;color:#303729!important;margin:0!important}.fa-checkbox small{font-size:11px;margin-left:8px;color:#647088}.fa-confirmation{display:grid;grid-template-columns:175px minmax(0,1fr);border:1px solid #b9b9ad;border-radius:0;background:#f7f5ec;margin:24px 0;overflow:hidden}.fa-confirmation dt,.fa-confirmation dd{padding:17px;margin:0;border-bottom:1px solid #b9b9ad;white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.85}.fa-confirmation dt{background:#e0e4d4;color:#4a533d;font-size:13px}.fa-confirmation dd:last-child,.fa-confirmation dt:nth-last-child(2){border-bottom:0}.fa-buttons{display:flex;gap:12px;flex-wrap:wrap}.fa-result{background:#e2e6d5;padding:28px;border:1px solid #a0ad8c;border-radius:0}.fa-result h2{font-size:24px}.fa-result output{font-family:monospace;font-weight:700}

.fa-shell fieldset{margin-top:35px}.fa-shell legend{font-size:25px;letter-spacing:-.025em}.fa-field{margin:30px 0}.fa-state{border-left:3px solid var(--ft-orange);padding:8px 14px;font:10px/1.7 var(--ft-mono);max-width:100%}.fa-field input:not([type=checkbox]),.fa-field textarea,.fa-field select{background:#f4f2e8;color:#1d2117;border-color:#a4aa96;border-radius:0;transition:border-color .2s,background .2s;padding:14px}.fa-field input:not([type=checkbox]):focus,.fa-field textarea:focus,.fa-field select:focus{border-color:#a63c0c;background:#fffdf3;outline:1px solid #a63c0c;outline-offset:0}.fa-field input[type=file]::file-selector-button{border-radius:0;padding:10px 14px}.fa-field input::placeholder,.fa-field textarea::placeholder{color:#747b66;font-size:13px}.fa-field [aria-invalid=true]{border-color:#a12919!important;background:#fff4ed!important}.fa-field-error{color:#9d2a18}.fa-ja-inline{display:block;margin-top:6px;font-size:12px!important;font-weight:400}.fa-human-note{clear:both}.fa-confirmation{grid-template-columns:220px minmax(0,1fr)}.fa-confirmation dd{background:#f4f2e8}.fa-checkbox small{color:#5e654e}.fa-checkbox input{accent-color:#bc420d}.fa-result{background:#e1e5d2;border-color:#949f7f;padding:28px}.fa-result h2{font-size:30px}.fa-buttons{display:flex;flex-wrap:wrap;gap:15px}
@media(max-width:760px){.fa-two-fields{display:block}.fa-confirmation{display:block}.fa-confirmation dt{border-bottom:0;padding:12px 15px}.fa-confirmation dd{padding:15px}.fa-buttons{display:grid}.fa-shell legend{font-size:22px}.fa-field>label{font-size:14px}.fa-field input[type=file]{font-size:11px}.fa-primary,.fa-secondary{flex-wrap:wrap;text-align:center;font-size:13px}.fa-template{font-size:12px}.fa-result{padding:20px 16px}.fa-result h2{font-size:25px}}

.ft-art-fallback text[fill]{fill:url(#ft-ink)}

/* The hero shares one motion clock: type, stage, copy and chrome. */
.ft-field{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:-1}
.ft-art{z-index:0}
.ft-hero-copy{position:relative}
.ft-hero-copy::before{content:'';position:absolute;inset:-28px -15px -25px -25px;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 35% 45%,#12130fe8 0%,#12130fb0 48%,#12130f00 75%)}
.for-ai-page:has(.ft-home) .ft-header::after{content:'';position:absolute;bottom:0;left:0;width:100%;height:1px;background:linear-gradient(90deg,transparent 0%,#ff642720 30%,#ff6427 50%,#ff642720 70%,transparent 100%);background-size:40% 100%;background-repeat:no-repeat;background-position:var(--ft-scan,0%) 0;pointer-events:none}
.for-ai-page:has(.ft-home) .ft-for-ai::before{content:'';display:inline-block;width:5px;height:5px;background:var(--ft-orange);margin-right:9px;box-shadow:0 0 calc(3px + var(--ft-energy,0)*10px) #ff6427;transform:rotate(var(--ft-orbit,0deg))}
.ft-hero .fa-intro h1{background:linear-gradient(110deg,#eae8de 0%,#eae8de 39%,#ff9b6e 48%,#ff6427 50%,#eae8de 60%,#eae8de 100%);background-size:280% 100%;background-position:var(--ft-scan,0%) 50%;background-clip:text;-webkit-background-clip:text;color:transparent}
.ft-protocol>span{position:relative;overflow:hidden;background:#eae8de30}
.ft-protocol>span::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent,#ff6427,transparent);width:50%;left:var(--ft-scan,0%);transform:translateX(-50%)}
.ft-hero-cta{box-shadow:0 0 calc(var(--ft-energy,0)*24px) #ff64272b}
.ft-hero-cta::before{content:'';position:absolute;inset:-50% -100%;background:linear-gradient(115deg,transparent 40%,#fff2c900 45%,#fff2c944 50%,#fff2c900 55%,transparent 60%);background-size:250% 100%;background-position:var(--ft-scan,0%) center;pointer-events:none}
.ft-hero-cta::after{content:'';position:absolute;left:0;bottom:0;height:2px;width:var(--ft-scan,0%);background:#12130f}
.ft-art-caption .ft-cross{display:inline-block;transform:rotate(var(--ft-orbit,0deg));transform-origin:center}
.ft-sequence{display:flex;align-items:center;gap:12px;white-space:nowrap}
.ft-sequence>i{display:block;width:34px;height:3px;background:#eae8de20;position:relative;overflow:hidden}
.ft-sequence>i::after{content:'';position:absolute;inset:0;background:var(--ft-orange);transform:scaleX(var(--ft-energy,0));transform-origin:left}
.ft-sequence>b{font-weight:400;color:#c0c0b1;min-width:130px}
@media(max-width:760px){.ft-hero-copy::before{inset:-25px -16px}.ft-sequence{gap:7px}.ft-sequence>span{display:none}.ft-sequence>i{width:18px}.ft-sequence>b{min-width:0}.ft-hero-foot{bottom:16px}.ft-hero .fa-intro h1{background-size:350% 100%}}
@media(prefers-reduced-motion:reduce){.ft-hero .fa-intro h1{background:none;color:var(--ft-paper)}.ft-hero-cta::before,.ft-hero-cta::after{display:none}}

/* RESTRICTED SIGNAL — the selected A composition. */
.for-ai-restricted{--ft-orange:#ef2418;--ft-ink:#0b0b0a;--ft-paper:#e8e4d7;background:var(--ft-ink)}
.ra-stage{position:relative;isolation:isolate;background:#0b0b0a;color:#e8e4d7;width:100%;height:100svh;min-height:650px;max-height:1500px;overflow:hidden;font-family:var(--ft-mono);--ra-phase:0;--ra-tension:0;--ra-shift:0px}
.ra-header{position:absolute;left:1.5%;right:2.5%;top:0;height:80px;z-index:3;display:flex;align-items:center;gap:42px}
.ra-brand{font:750 29px/1 TerminalSans,TerminalJP,sans-serif;letter-spacing:-.065em;text-decoration:none;white-space:nowrap}
.ra-route{font-size:10px;letter-spacing:.15em;text-decoration:none;white-space:nowrap}
.ra-header>p{position:absolute;left:31%;top:27px;font-size:9px;line-height:1.6;letter-spacing:.13em;margin:0}
.ra-header>p::before{content:'⟶';position:absolute;left:-48px;font-size:24px;line-height:1}
.ra-header>p span{color:#919189}
.ra-formats{margin-left:auto;display:flex;gap:13px;font-size:10px;letter-spacing:.1em}.ra-formats a{text-decoration:none;min-height:44px;display:flex;align-items:center}.ra-formats>span{align-self:center;color:#55564e}
.ra-art{position:absolute;inset:0;z-index:-1;pointer-events:none}.ra-art canvas,.ra-fallback,.ra-fallback img{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;display:block}.ra-art canvas{opacity:0}.ra-ready canvas{opacity:1}.ra-ready .ra-fallback{visibility:hidden}
.ra-gutter{position:absolute;top:12%;bottom:13%;width:70px;display:flex;flex-direction:column;justify-content:space-between;font-size:8px;line-height:1.9;letter-spacing:.09em;z-index:1;pointer-events:none}.ra-gutter-left{left:1.5%}.ra-gutter-right{right:1.3%}.ra-gutter i{font-style:normal;font:200 48px/1 TerminalSans,sans-serif;color:#85847a}.ra-bottom-code{font-size:7px}
.ra-ribbon{position:absolute;display:flex;align-items:center;justify-content:space-between;gap:22px;background:#ed2318;color:#090908;padding:20px 22px;margin:0!important;z-index:2;transform:translateX(var(--ra-shift));min-height:63px;box-shadow:none}
.ra-ribbon-en{left:0;top:65%;font-size:clamp(12px,1.35vw,21px);letter-spacing:.12em;width:33%}.ra-ribbon-ja{right:0;top:67%;font:550 clamp(12px,1.1vw,17px)/1.65 TerminalJP,sans-serif;letter-spacing:.12em;width:35%;transform:translateX(calc(var(--ra-shift)*-1))}.ra-ribbon i{font-style:normal}.ra-ribbon>span{white-space:nowrap}
.ra-instrument{position:absolute;left:10%;bottom:11%;display:flex;align-items:center;gap:20px;font-size:8px;letter-spacing:.12em;color:#95958c}.ra-phase{font-weight:400;color:#e8e4d7;min-width:105px}.ra-meter{width:75px;height:2px;background:#3a3a34}.ra-meter i{display:block;width:100%;height:100%;background:#ef2418;transform-origin:left;transform:scaleX(var(--ra-tension))}
.ra-controls{position:absolute;right:10%;bottom:10%;display:flex;align-items:center;gap:20px}.ra-controls button{border:0;background:transparent;color:#b8b7ad;font:8px/1.5 var(--ft-mono);padding:12px 4px;min-height:44px;letter-spacing:.04em}.ra-controls button:hover{color:#ef2418}.ra-controls button:disabled{opacity:.5;cursor:default}.ra-disturb{color:#ed4e43!important}.ra-motion::before{content:'Ⅱ';color:#ed2318;margin-right:8px}.ra-motion[aria-pressed=true]::before{content:'▷'}
.ra-nav{position:absolute;bottom:2%;left:19%;right:19%;display:flex;align-items:center;border-top:1px solid #57574e;min-height:52px;font-size:9px;letter-spacing:.08em}.ra-nav>a{padding:16px 10px;flex:1;white-space:nowrap;text-decoration:none;display:flex;justify-content:space-between;gap:20px;transition:color .2s}.ra-nav>a span{color:#97978a}.ra-nav>a:hover,.ra-header a:hover{color:#f74537}.ra-nav>a+a{border-left:1px solid #292922}.ra-local{font-size:8px;white-space:nowrap;padding-left:18px;display:flex;gap:10px;align-items:center;color:#a6a69b}.ra-local i{display:block;width:4px;height:4px;background:#ed2318}.ra-stage :focus-visible{outline-color:#ef2418;outline-offset:3px}
.for-ai-restricted .ft-guide{position:relative;background:#e8e4d7;border-top:3px solid #ed2318}.for-ai-restricted .ft-guide-bar{min-height:80px}.for-ai-restricted .ft-skip{background:#ed2318;color:#0b0b0a}
@media(min-width:1800px){.ra-header{height:100px}.ra-brand{font-size:36px}.ra-header>p{top:33px;font-size:12px}.ra-gutter{font-size:11px;width:100px}.ra-bottom-code{font-size:9px}.ra-nav{font-size:12px;min-height:65px}.ra-controls button,.ra-instrument{font-size:11px}.ra-ribbon{min-height:80px}.ra-route,.ra-formats{font-size:12px}}
@media(max-width:1100px){.ra-header{gap:20px}.ra-header>p{left:36%;font-size:8px}.ra-ribbon-en{width:38%;font-size:12px}.ra-ribbon-ja{width:42%;font-size:11px;letter-spacing:.05em}.ra-gutter{font-size:6px;width:55px}.ra-bottom-code{font-size:6px}.ra-nav{left:11%;right:11%;font-size:8px}.ra-nav>a{gap:10px;padding-inline:8px}.ra-instrument{gap:12px;font-size:7px}.ra-controls{gap:12px}.ra-controls button{font-size:7px}.ra-meter{width:35px}}
@media(max-width:700px){.ra-stage{height:100svh;min-height:740px;max-height:1100px}.ra-header{left:5%;right:5%;height:72px;align-items:flex-start;padding-top:24px;gap:16px}.ra-brand{font-size:26px}.ra-route{font-size:9px;padding-top:7px}.ra-header>p{display:none}.ra-formats{gap:8px;font-size:8px;margin-top:-8px}.ra-formats>span{display:none}.ra-gutter{top:12%;bottom:16%;font-size:6px;letter-spacing:.02em;width:28px}.ra-gutter-left{left:2%}.ra-gutter-right{right:1.3%}.ra-gutter i{font-size:30px}.ra-gutter .ra-bottom-code{display:none}.ra-ribbon{padding:12px 15px;min-height:42px}.ra-ribbon-en{top:45%;width:86%;font-size:12px;letter-spacing:.1em}.ra-ribbon-ja{top:78%;width:92%;font-size:11px;letter-spacing:.04em}.ra-ribbon-ja i{display:none}.ra-instrument{left:5%;bottom:11.5%;font-size:6px;gap:10px}.ra-instrument>span:first-child{display:none}.ra-phase{min-width:92px}.ra-meter{width:25px}.ra-controls{bottom:10.1%;right:5%;gap:4px}.ra-controls button{font-size:7px;min-height:34px;padding:8px 1px}.ra-disturb{position:absolute;right:0;bottom:32px;white-space:nowrap}.ra-nav{left:5%;right:5%;bottom:1.2%;min-height:58px;display:grid;grid-template-columns:repeat(3,1fr);font-size:7px}.ra-nav>a{padding:9px 8px;gap:7px;min-height:29px}.ra-nav>a:nth-child(4){border-left:0}.ra-local{font-size:6px;gap:5px;padding-left:8px}.ra-nav>a span{font-size:9px}.for-ai-restricted .ft-guide-bar{min-height:80px}}
@media(max-width:360px){.ra-formats{display:none}.ra-ribbon-en{font-size:10px}.ra-ribbon-ja{font-size:10px}.ra-instrument{bottom:11.7%}.ra-meter{display:none}.ra-phase{min-width:0}}
@media(prefers-reduced-motion:reduce){.ra-ribbon{transform:none}.ra-nav>a{transition:none}}
@media(max-width:700px){.ra-gutter-right>span:nth-of-type(2){display:none}.ra-gutter-right{bottom:26%}.ra-gutter-left{bottom:23%}}
/* Keep both bands bleeding through the viewport while their print plates shift. */
.ra-stage{cursor:crosshair}.ra-stage a,.ra-stage button{cursor:pointer}
.ra-ribbon-en{left:-16px;width:calc(33% + 16px);padding-left:38px}.ra-ribbon-ja{right:-16px;width:calc(35% + 16px);padding-right:38px}
@media(max-width:1100px){.ra-ribbon-en{width:calc(38% + 16px)}.ra-ribbon-ja{width:calc(42% + 16px)}}
@media(max-width:700px){.ra-ribbon-en{width:calc(86% + 16px);padding-left:31px}.ra-ribbon-ja{width:calc(92% + 16px);padding-right:31px}}
@media(min-width:701px){.ra-gutter-right{right:1%;width:3.7%}}

/* Hide only the static artwork during initialization; links remain usable. */
.ra-boot .ra-stage:not(.ra-ready) .ra-fallback{visibility:hidden}
/* Bands follow the assembly clock; static fallbacks keep the complete composition. */
.ra-boot .ra-stage:not(.ra-ready) .ra-ribbon{opacity:0}
.ra-ready .ra-ribbon{opacity:var(--ra-ribbon-reveal,0)}

/* One persistent SVG particle field, from first paint through letter formation. */
.ra-primer{position:absolute;inset:0;width:100%;height:100%;display:block;opacity:0;pointer-events:none}
.ra-boot .ra-stage:not(.ra-ready) .ra-primer,.ra-ready .ra-primer{opacity:1}

/* System monospace is available from first paint; no fetched font or glyph swap. */
.ra-primer text{font-family:monospace;font-size:5px;font-weight:600;letter-spacing:0}
@media(max-width:700px){.ra-primer text{font-size:4px}}
