:root{color-scheme:dark;--bg:#1c1924;--surface:#25212e;--soft:#2d2638;--ink:#f7eff5;--muted:#beb2c8;--accent:#d2b0f2;--button:#cda8ef;--button-ink:#281935;--border:#ffffff20;--glow:#b477e41c;--header:#211d28;--shadow:0 16px 50px #09070d36;font-family:'Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,system-ui,sans-serif;font-synthesis:none}
:root[data-theme=light]{color-scheme:light;--bg:#fcf7ef;--surface:#fffaf5;--soft:#f3e9e4;--ink:#49302e;--muted:#796363;--accent:#9a4966;--button:#d49aaa;--button-ink:#40232e;--border:#6b414122;--glow:#d796aa18;--header:#f6eee7;--shadow:0 16px 50px #9e756514}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);line-height:1.85;transition:background .3s,color .3s}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}button:disabled{cursor:default}img{display:block;max-width:100%}button{color:inherit}.wrap{width:min(1200px,calc(100% - 80px));margin-inline:auto}.preview-bar{background:var(--header);border-bottom:1px solid var(--border);padding:7px 40px;display:flex;justify-content:space-between;gap:12px;font-size:10px;letter-spacing:.08em;color:var(--muted)}.preview-bar b{color:var(--accent);margin:0 8px}.preview-bar a:hover{text-decoration:underline}.header{min-height:96px;display:flex;align-items:center;gap:38px}.brand{font-family:system-ui,sans-serif;font-size:25px;font-weight:650;letter-spacing:-1px;display:inline-flex;gap:11px;align-items:center;white-space:nowrap}.brand-flower{color:var(--accent);font-size:38px;line-height:1;display:inline-block;font-weight:400}nav{display:flex;gap:30px;margin-left:auto;font-size:13px;font-weight:600}nav a{position:relative;padding:8px 0}nav a:hover,nav a[aria-current=page]{color:var(--accent)}nav a[aria-current=page]:after{content:'';position:absolute;bottom:0;left:0;width:20px;height:2px;background:var(--accent)}.theme-toggle{border:1px solid var(--border);border-radius:30px;background:var(--surface);padding:7px 14px;display:flex;gap:9px;align-items:center;font-size:12px}.theme-toggle>span:first-child{font-size:19px;line-height:1}.hero{position:relative;min-height:530px;display:grid;grid-template-columns:1.06fr 1fr;align-items:center;margin-bottom:30px}.hero-copy{z-index:2;padding:35px 0 48px}.eyebrow{display:block;font-family:system-ui,sans-serif;font-size:10px;letter-spacing:.23em;color:var(--accent);font-weight:600;margin-bottom:18px}.hero h1{font-size:clamp(37px,4.5vw,63px);line-height:1.5;letter-spacing:.015em;font-weight:650;margin:0 0 23px;white-space:nowrap}.hero h1 em{font-style:normal;color:var(--accent)}.hero-copy>p{font-size:14px;line-height:2.1;color:var(--muted);margin:0 0 30px}.hero-art{position:absolute;width:66%;right:-38px;top:0;bottom:0;pointer-events:none;overflow:hidden;mask-image:linear-gradient(to right,transparent 0%,#000 23%);}.hero-art img{height:100%;width:100%;object-fit:cover;object-position:67% 50%;mask-image:linear-gradient(to bottom,transparent 0%,#000 12%,#000 84%,transparent 100%)}.hero-art:after{content:'';position:absolute;inset:0;box-shadow:inset -16px 0 30px var(--bg)}.art-credit{position:absolute;right:8px;bottom:10px;color:var(--muted);font-size:10px;letter-spacing:.08em;z-index:2}.actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;border:1px solid var(--border);background:transparent;border-radius:999px;padding:13px 25px;font-weight:600;font-size:13px;line-height:1.6;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px);background:var(--soft)}.button.primary{background:var(--button);border-color:transparent;color:var(--button-ink);box-shadow:0 5px 25px var(--glow)}.button.primary:hover{filter:brightness(1.07)}.hero .caption{margin-top:20px;font-size:11px;color:var(--muted)}.text-link{font-size:12px;color:var(--accent);display:inline-flex;gap:14px;align-items:center}.text-link:hover{text-decoration:underline}.section{margin:64px 0}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}.section-heading h2{font-size:25px;font-weight:550;letter-spacing:.035em;margin:0}.section-heading p{font-size:12px;color:var(--muted);margin:5px 0 0}.world-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.world-card{min-width:0}.world-card .world-picture{display:block;position:relative;border-radius:15px;overflow:hidden;background:var(--soft);aspect-ratio:16/10;border:1px solid var(--border)}.world-picture img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.world-picture:hover img{transform:scale(1.045)}.image-label{position:absolute;left:12px;bottom:12px;font-size:10px;background:#171520bd;color:#fff;padding:4px 9px;border:1px solid #ffffff26;border-radius:6px;backdrop-filter:blur(8px)}.world-title{display:flex;justify-content:space-between;align-items:center;margin-top:16px}.world-title h3{margin:0;font-size:17px;font-weight:550}.world-title span{font-size:20px;color:var(--accent)}.world-card p{font-size:12px;color:var(--muted);margin:6px 0 12px;line-height:1.9}.world-status{font-size:10px;color:var(--muted);display:block}.world-status:before{content:'·';color:var(--accent);font-size:19px;margin-right:6px;vertical-align:middle}.connect-band{background:linear-gradient(110deg,var(--surface),var(--glow));border:1px solid var(--border);border-radius:18px;padding:28px 32px;display:flex;align-items:center;gap:30px}.connect-band h2{font-size:18px;font-weight:500;margin:0 0 5px}.connect-band p{font-size:12px;color:var(--muted);margin:0}.tool-names{font-family:system-ui,sans-serif;margin-left:auto;display:flex;gap:28px;font-size:20px;white-space:nowrap}.tool-names span+span{padding-left:28px;border-left:1px solid var(--border)}.steps{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:28px 0;gap:32px;margin:40px 0 65px}.step{display:flex;gap:17px}.step-number{font-family:Georgia,serif;color:var(--accent);font-size:30px;line-height:1.4}.step h3{font-weight:550;font-size:14px;margin:0 0 5px}.step p{font-size:12px;color:var(--muted);margin:0}.footer{margin-top:76px;padding:28px 0 35px;border-top:1px solid var(--border);display:flex;align-items:center;gap:25px;font-size:11px;color:var(--muted)}.footer .brand{font-size:17px;color:var(--ink)}.footer .brand-flower{font-size:25px}.footer>div{margin-left:auto;display:flex;gap:22px}.footer a:hover{color:var(--accent)}.page-heading{padding:48px 0 30px;max-width:800px}.page-heading h1{font-size:clamp(29px,4vw,43px);line-height:1.5;margin:0 0 18px;letter-spacing:.03em;font-weight:600}.page-heading p{font-size:14px;color:var(--muted);max-width:680px}.subtle-note{font-size:12px;color:var(--muted);border-left:2px solid var(--accent);padding:2px 0 2px 18px;margin:34px 0}.guide-layout{display:grid;grid-template-columns:1fr 320px;gap:65px}.guide-step{border-top:1px solid var(--border);padding:25px 0;display:grid;grid-template-columns:45px 1fr;gap:16px}.guide-step h2{font-size:20px;margin:0 0 10px;font-weight:550}.guide-step p{color:var(--muted);font-size:14px;margin:0 0 15px}.guide-step .step-number{font-size:33px}.side-note{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:28px;height:fit-content;position:sticky;top:24px}.side-note h2{font-size:16px;margin:0 0 15px}.side-note ul{padding-left:18px;color:var(--muted);font-size:12px;line-height:2.1}.side-note img{border-radius:8px;margin-bottom:20px}details{border-bottom:1px solid var(--border);padding:17px 0;font-size:13px}summary{cursor:pointer;font-weight:500}details p{color:var(--muted);max-width:780px}pre{background:var(--bg);border:1px solid var(--border);padding:20px;border-radius:12px;overflow:auto;white-space:pre;line-height:1.85;font-size:12px;color:var(--ink);max-width:100%}code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.91em}p code{background:var(--soft);border-radius:4px;padding:2px 5px}.setup{display:grid;grid-template-columns:210px minmax(0,1fr);gap:44px;margin-top:26px}.setup-nav{display:flex;flex-direction:column;gap:10px}.setup-tab{text-align:left;padding:17px 20px;border:1px solid var(--border);border-radius:12px;background:transparent;font-family:system-ui,sans-serif;font-size:18px}.setup-tab[aria-selected=true]{background:var(--soft);border-color:var(--accent)}.setup-panel{background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:30px;min-width:0}.setup-panel h2{margin:0 0 10px;font-weight:550;font-size:24px}.setup-panel p{font-size:13px;color:var(--muted)}.code-head{display:flex;align-items:center;justify-content:space-between;font-size:11px;margin-top:22px;color:var(--muted)}.copy{font-size:11px;border:1px solid var(--border);border-radius:6px;padding:4px 12px;background:var(--soft)}.code-head+pre{margin-top:9px}.setup-flow{padding-left:22px;font-size:13px;color:var(--muted)}.setup-flow li{padding:5px 0}.status-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.use-case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.status-card{border:1px solid var(--border);border-radius:16px;background:var(--surface);padding:28px}.status-card h2{font-size:20px;margin:0 0 14px}.status-card p,.status-card li{font-size:13px;color:var(--muted)}.status-card ul{padding-left:20px}.badge{display:inline-block;background:var(--soft);color:var(--accent);border:1px solid var(--border);font-size:10px;padding:3px 10px;border-radius:30px;margin-bottom:14px}.notice{position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px);max-width:calc(100% - 32px);background:var(--ink);color:var(--bg);padding:10px 20px;border-radius:10px;font-size:12px;z-index:50;opacity:0;pointer-events:none;transition:.2s}.notice.visible{opacity:1;transform:translate(-50%,0)}dialog{width:min(1100px,calc(100% - 32px));max-height:92dvh;overflow:auto;background:var(--surface);color:var(--ink);border:1px solid var(--border);border-radius:20px;padding:22px;box-shadow:var(--shadow)}dialog::backdrop{background:#07050bc4;backdrop-filter:blur(8px)}.dialog-head{display:flex;align-items:center;gap:20px}.dialog-head .eyebrow{margin:0}.dialog-head h2{font-size:18px;margin:0}.dialog-head a{margin-left:auto;font-size:12px;color:var(--accent)}#close-demo{width:35px;height:35px;border:1px solid var(--border);border-radius:50%;background:transparent;font-size:22px}.demo-hint,.demo-fallback{font-size:11px;color:var(--muted)}#demo-frame iframe{border:0;border-radius:12px;width:100%;height:min(60dvh,620px);display:block;background:var(--bg)}.skip-link{position:fixed;top:5px;left:5px;transform:translateY(-150%);z-index:100;background:var(--ink);color:var(--bg);padding:10px}.skip-link:focus{transform:none}#main:focus{outline:none}.petal{display:inline-block;width:12px;height:22px;border-radius:100% 0 100% 0;background:var(--accent);transform:rotate(15deg);margin-left:12px;box-shadow:0 0 18px var(--glow)}.hero-copy{animation:appear .7s ease both}@keyframes appear{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1500px){.hero-art{right:-60px}}@media(max-width:1000px){.wrap{width:calc(100% - 48px)}.header{gap:22px}nav{gap:20px}.hero{min-height:480px}.hero h1{font-size:43px}.hero-art{right:-20px;width:70%;opacity:.8}.connect-band{flex-wrap:wrap;gap:20px}.tool-names{font-size:17px}.connect-band .text-link{margin-left:auto}.guide-layout{grid-template-columns:1fr 270px;gap:30px}.footer>span{display:none}}
@media(max-width:680px){.wrap{width:calc(100% - 36px)}.preview-bar{padding:6px 18px;font-size:9px}.preview-bar a{display:none}.header{min-height:110px;flex-wrap:wrap;gap:0;padding:18px 0 10px}.brand{font-size:22px}.brand-flower{font-size:31px}.theme-toggle{margin-left:auto;font-size:11px}nav{order:3;width:100%;justify-content:space-between;margin:12px 0 0;font-size:12px}.hero{display:flex;flex-direction:column;align-items:stretch;min-height:0;margin:0}.hero-copy{padding:33px 0 0}.hero h1{font-size:clamp(32px,8.8vw,48px);margin-bottom:17px;line-height:1.5}.hero-copy>p{font-size:12px;margin-bottom:24px}.hero .eyebrow{margin-bottom:14px}.actions{gap:10px}.button{font-size:12px;padding:12px 20px;gap:16px}.hero-art{position:relative;width:calc(100% + 36px);height:270px;right:auto;top:auto;bottom:auto;margin-left:-18px;opacity:1;mask-image:linear-gradient(to bottom,transparent,#000 12%,#000 85%,transparent)}.hero-art img{object-position:65% 55%;mask-image:none}.hero-art:after{display:none}.hero .caption{font-size:10px}.art-credit{position:static;text-align:right;font-size:9px;margin-top:-14px}.section{margin:42px 0}.section-heading{align-items:start;margin-bottom:20px}.section-heading h2{font-size:21px}.section-heading p{font-size:11px}.section-heading .text-link{font-size:10px;white-space:nowrap;margin-top:9px}.world-grid{grid-template-columns:1fr;gap:28px}.world-picture{aspect-ratio:16/9!important}.world-title{margin-top:10px}.world-title h3{font-size:17px}.world-card p{font-size:12px;margin-bottom:6px}.connect-band{padding:23px;display:block}.connect-band h2{font-size:17px}.tool-names{margin:22px 0;font-size:19px;gap:22px}.tool-names span+span{padding-left:22px}.steps{grid-template-columns:1fr;gap:23px;padding:26px 0;margin:35px 0}.step-number{font-size:26px}.step p{font-size:12px}.footer{margin-top:46px;flex-wrap:wrap;gap:15px;padding:25px 0}.footer>div{gap:15px}.page-heading{padding:35px 0 15px}.page-heading h1{font-size:30px}.page-heading p{font-size:13px}.guide-layout{grid-template-columns:1fr;gap:25px}.side-note{position:static}.setup{grid-template-columns:1fr;gap:16px;margin-top:16px}.setup-nav{flex-direction:row}.setup-tab{flex:1;font-size:16px;padding:12px 16px}.setup-panel{padding:22px 18px}.status-grid,.use-case-grid{grid-template-columns:1fr}.guide-step{grid-template-columns:33px 1fr;gap:12px}.guide-step h2{font-size:18px}dialog{padding:15px}.dialog-head{gap:10px}.dialog-head h2{font-size:15px}.dialog-head a{font-size:10px}.demo-hint{line-height:1.7}#demo-frame iframe{height:58dvh}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.demo-launch{display:block;position:relative}.demo-launch img{width:100%;max-height:52dvh;object-fit:cover;border-radius:12px}.demo-launch .button{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);white-space:nowrap}.step{display:grid;grid-template-columns:auto 1fr}.step-number{grid-row:1/3}.step p{grid-column:2}
.hero{grid-template-columns:.85fr 1.3fr;gap:25px}.hero h1{font-size:clamp(32px,3.6vw,51px)}.live-world{min-width:0;padding:25px 0}.live-world iframe{width:100%;height:470px;border:1px solid var(--border);border-radius:28px;background:var(--soft);display:block}.park-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.park-actions .button{font-size:11px;padding:10px 13px;cursor:pointer}.live-world .caption{font-size:11px;color:var(--muted)}@media(max-width:850px){.hero{display:flex;flex-direction:column;align-items:stretch}.hero-copy{padding-bottom:0}.live-world iframe{height:420px}}@media(max-width:500px){.live-world iframe{height:360px}}
.world-symbol{height:100%;display:grid;place-items:center;font-size:65px;background:radial-gradient(ellipse at 30% 25%,var(--glow),var(--soft))}.world-grid+button{margin-top:24px}.park-actions .button{min-height:42px}#park-file{display:block;width:1px;height:1px;position:absolute;opacity:0}.park-actions label:focus-within{outline:3px solid var(--accent)}
.live-world.expanded-world{position:fixed;inset:12px;z-index:80;padding:16px;background:var(--bg);border:1px solid var(--border);border-radius:20px;overflow:auto;box-shadow:0 0 0 20px #0008}.live-world.expanded-world iframe{height:calc(100dvh - 180px);min-height:240px}

.world-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:16px}.world-actions .button{padding:10px 14px}.world-card>a{display:block}
.story-video{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr);align-items:center;gap:45px;padding:30px;border:1px solid var(--border);border-radius:20px;background:var(--surface)}.story-video h2{font-size:25px;font-weight:550;line-height:1.55;margin:0 0 12px}.story-video p{font-size:13px;color:var(--muted);margin:0}.story-video video{display:block;width:100%;aspect-ratio:16/9;border-radius:14px;background:var(--soft);object-fit:cover}.tool-names{font-size:17px;gap:20px}.tool-names span+span{padding-left:20px}
@media(max-width:900px){.story-video{grid-template-columns:1fr;gap:22px}.tool-names{width:100%;margin:0;flex-wrap:wrap}.connect-band .button{margin-left:0}}
@media(max-width:680px){.story-video{padding:20px}.story-video h2{font-size:21px}.tool-names{font-size:16px}.tool-names span+span{padding-left:16px}}

@media(max-width:900px) and (min-width:681px){.use-case-grid{grid-template-columns:repeat(2,1fr)}}
