@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.00az9qtie3ho1.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.3j-a226dh71aj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.2gwoz23eiro2t.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.0i3h3th1vs4m7.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.0zr6hhvz-h9nw.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_9c6cb61b-module__8NX9hq__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_9c6cb61b-module__8NX9hq__variable{--font-geist:"Geist", "Geist Fallback"}
:root{--ui-bg:#101715;--ui-panel:#17211c;--ui-raised:#202e25;--ui-text:#edf2ea;--ui-muted:#abb9ac;--ui-accent:#c5ed9c;--ui-line:#35463a;--ui-error:#ffc4b1;--ui-radius:10px;--ui-small:.875rem;--ui-body:1rem;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--ui-bg);min-height:100%;color:var(--ui-text);font-family:var(--font-geist), Arial, sans-serif;margin:0;font-size:16px;line-height:1.5}body{overflow-wrap:break-word}button,input,select,textarea{font:inherit}button,a,input,select,summary{touch-action:manipulation}button,summary,select{cursor:pointer}button:disabled{cursor:default;opacity:.5}a{color:inherit;text-decoration:none}:where(button,a,input,select,textarea,summary):focus-visible{outline:2px solid var(--ui-accent);outline-offset:4px}::selection{background:var(--ui-accent);color:var(--ui-bg)}:where(input:not([type=range]):not([type=checkbox]),select,textarea){border:1px solid var(--ui-line);background:var(--ui-bg);min-height:44px;color:var(--ui-text);border-radius:7px;min-width:0;padding:9px 12px}input[type=range]{min-height:32px;accent-color:var(--ui-accent)}input::placeholder,textarea::placeholder{color:var(--ui-muted);opacity:1}button svg,a svg{flex-shrink:0}.ui-button{border:1px solid var(--ui-line);background:var(--ui-panel);min-height:44px;color:var(--ui-text);font-size:var(--ui-small);border-radius:7px;justify-content:center;align-items:center;gap:8px;padding:10px 15px;font-weight:550;line-height:1.4;transition:background-color .12s ease-out,border-color .12s ease-out;display:inline-flex}.ui-button[data-variant=primary]{background:var(--ui-accent);border-color:var(--ui-accent);color:#182313;font-weight:650}.ui-button[data-variant=ghost]{background:0 0;border-color:#0000}@media (hover:hover){.ui-button:hover:not(:disabled){background:var(--ui-raised)}.ui-button[data-variant=primary]:hover:not(:disabled){background:#d8f7b8}}.ui-button:active:not(:disabled){transform:translateY(1px)}.ui-button[aria-pressed=true]{color:#e6f7d7;background:#33492d}.ui-header{border-bottom:1px solid var(--ui-line);background:var(--ui-bg);grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;min-height:76px;padding:12px max(24px,50vw - 720px);display:grid}.ui-brand{letter-spacing:-1.4px;width:fit-content;font-size:25px;font-weight:800;line-height:1.1}.ui-brand b{color:var(--ui-accent)}.ui-header nav{align-items:center;gap:8px;display:flex}.ui-header nav a{min-height:44px;color:var(--ui-muted);font-size:var(--ui-small);border-radius:7px;padding:10px 16px}.ui-header nav a[aria-current=page]{color:var(--ui-text);background:var(--ui-raised)}.language-switcher{font-size:var(--ui-small);cursor:pointer;justify-self:end;max-width:135px}.ui-skip{z-index:100;background:var(--ui-accent);color:var(--ui-bg);padding:12px;position:fixed;top:8px;left:12px;transform:translateY(-150%)}.ui-skip:focus{transform:none}.ui-page-intro{justify-content:space-between;align-items:center;gap:24px;max-width:1488px;margin:0 auto;padding:30px 24px 24px;display:flex}.ui-page-intro h1{letter-spacing:-1px;margin:0;font-size:clamp(28px,2.5vw,36px);font-weight:600;line-height:1.2}.ui-page-intro[data-contained=true]{max-width:1200px}.ui-page-intro p{color:var(--ui-muted);max-width:65ch;margin:8px 0 0}.ui-page-actions{flex-wrap:wrap;flex-shrink:0;gap:8px;max-width:100%;display:flex}.ui-segments{border:1px solid var(--ui-line);border-radius:var(--ui-radius);background:#111b16;flex-wrap:wrap;gap:3px;width:fit-content;padding:4px;display:flex}.ui-camera-views .ui-button{padding:9px 12px}.ui-disclosure{border-top:1px solid var(--ui-line);margin:16px 0}.ui-disclosure>summary{min-height:48px;font-size:var(--ui-small);color:var(--ui-text);padding:14px 0;font-weight:550}.ui-disclosure>summary::marker{color:var(--ui-muted)}.ui-disclosure-body{color:var(--ui-muted);padding:0 0 16px}.ui-notice{background:var(--ui-panel);border:1px solid var(--ui-line);font-size:var(--ui-small);border-radius:7px;padding:14px 16px;line-height:1.6}.ui-notice[data-tone=error]{color:var(--ui-error);border-color:#784c41}.ui-research-nav{border-bottom:1px solid var(--ui-line);font-size:var(--ui-small);flex-wrap:wrap;align-items:center;gap:12px;padding:12px 24px;display:flex}.ui-research-nav span{color:var(--ui-muted);margin-right:12px}.ui-research-nav a{border-radius:7px;padding:8px 12px}.ui-research-nav a[aria-current=page]{background:var(--ui-raised);color:var(--ui-accent)}.ui-dialog-overlay{z-index:80;background:#050b09cc;animation:.14s ease-out ui-fade;position:fixed;inset:0}.ui-dialog{z-index:81;background:var(--ui-panel);border:1px solid #53674f;border-radius:14px;width:min(580px,100vw - 32px);max-height:calc(100dvh - 40px);padding:32px;animation:.14s ease-out ui-fade;position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%);box-shadow:0 24px 100px #0009}.ui-dialog h2{letter-spacing:-.5px;margin:0 44px 16px 0;font-size:26px;font-weight:600;line-height:1.25}.ui-dialog p{color:var(--ui-muted);line-height:1.65}.ui-dialog-close{width:44px;padding:0;position:absolute;top:16px;right:16px}.ui-dialog-body{margin-top:24px}.ui-dialog-body a{color:var(--ui-accent);text-underline-offset:4px;text-decoration:underline}.ui-prose{width:min(760px,100% - 48px);margin:42px auto 80px}.ui-prose h1{letter-spacing:-1.2px;margin:0 0 20px;font-size:clamp(30px,4vw,42px);line-height:1.15}.ui-prose h2{letter-spacing:-.4px;margin:36px 0 12px;font-size:23px;line-height:1.3}.ui-prose p{color:var(--ui-muted);line-height:1.75}.ui-prose a{color:var(--ui-accent);text-underline-offset:4px;text-decoration:underline}.ui-prose code{font-size:var(--ui-small);overflow-wrap:anywhere}.ui-prose-nav{border-bottom:1px solid var(--ui-line);font-size:var(--ui-small);flex-wrap:wrap;gap:12px 24px;margin-bottom:32px;padding:20px 0;display:flex}.ui-empty{color:var(--ui-muted);padding:30px 0}@keyframes ui-fade{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important}.ui-button{transition:none}.ui-dialog,.ui-dialog-overlay{animation:none}}@media (max-width:640px){.ui-header{grid-template-columns:1fr auto;gap:10px;padding:14px 16px 10px}.ui-header nav{scrollbar-width:none;grid-area:2/1/auto/-1;justify-content:flex-start;gap:0;max-width:100%;overflow-x:auto}.ui-header nav::-webkit-scrollbar{display:none}.ui-header nav a{text-align:center;white-space:nowrap;flex:none;min-width:44px;padding:10px 4px}.ui-header .language-switcher{grid-area:1/2}.ui-page-intro{flex-wrap:wrap;align-items:flex-start;gap:14px;padding:24px 16px 20px}.ui-dialog{padding:24px}.ui-prose{width:calc(100% - 32px);margin-top:28px}.ui-camera-views{justify-content:center;width:100%}.ui-camera-views .ui-button{white-space:nowrap;flex:auto;padding:8px 6px}}html[lang=ja]{line-break:strict}html[lang=ja] button{letter-spacing:0}.ui-back-link{margin-bottom:16px;display:inline-block}.ui-sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}
