:root{--bg:#04060c;--ink:#f2f6fc;--dim:rgba(242,246,252,.72);--mute:rgba(242,246,252,.5);--faint:rgba(242,246,252,.3);--line:rgba(242,246,252,.1);--lineS:rgba(242,246,252,.18);--surface:#0e1420;--surface2:#131b2a;--cyan:#06b6d4;--cyanS:#22d3ee;--indigo:#6366f1;--violet:#a78bfa;--jade:#10b981;--amber:#f59e0b;--rose:#f472b6;--disp:"Inter Tight","Inter",sans-serif;--body:"Inter",sans-serif;--jp:"Noto Sans JP",sans-serif;--mono:"JetBrains Mono",monospace}*{box-sizing:border-box;margin:0;padding:0}html,body,#app{height:100%}body{background:radial-gradient(ellipse 90% 70% at 50% 38%,#0a1322,#060a12 55%,#04060c);color:var(--ink);font-family:var(--body);overflow:hidden;-webkit-font-smoothing:antialiased}canvas{display:block}#stage{position:fixed;top:0;right:0;bottom:0;left:0}#stage canvas{filter:saturate(1.35) brightness(1.08) contrast(1.05)}::-moz-selection{background:#22d3ee59;color:#fff}::selection{background:#22d3ee59;color:#fff}.chrome{position:fixed;top:0;left:0;right:0;z-index:30;display:flex;align-items:center;justify-content:space-between;padding:18px 28px;pointer-events:none}.chrome>*{pointer-events:auto}.logo{display:flex;align-items:center;gap:12px}.logo img{height:30px}.logo .tg{font-family:var(--mono);font-size:10px;letter-spacing:2px;color:var(--mute);padding-left:12px;border-left:1px solid var(--lineS)}.chrome a.back{font-family:var(--mono);font-size:11px;letter-spacing:1.5px;color:var(--mute);text-decoration:none;border:1px solid var(--line);padding:8px 14px;border-radius:99px;transition:.25s}.chrome a.back:hover{color:var(--ink);border-color:var(--lineS)}.chrome .cr{display:flex;align-items:center;gap:12px}.chrome .cl{display:flex;align-items:center;gap:16px}.langsw{display:flex;gap:2px;background:#0e1420b8;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--line);border-radius:99px;padding:3px}.langsw button{font-family:var(--mono);font-size:10.5px;letter-spacing:1px;color:var(--mute);background:none;border:none;cursor:pointer;padding:6px 12px;border-radius:99px;transition:.2s}.langsw button:hover{color:var(--dim)}.langsw button.on{color:#fff;background:linear-gradient(135deg,var(--cyan),var(--indigo))}.hint{position:fixed;left:50%;bottom:30px;transform:translate(-50%);z-index:20;text-align:center;pointer-events:none;transition:opacity .6s}.hint .t{font-family:var(--disp);font-weight:600;font-size:clamp(26px,4vw,44px);letter-spacing:-.03em}.hint .s{font-family:var(--mono);font-size:11px;letter-spacing:2px;color:var(--mute);margin-top:10px}.hint .s b{color:var(--cyanS)}.kiosk-btn{position:fixed;top:16px;right:150px;z-index:31;display:flex;align-items:center;gap:9px;padding:10px 16px;border-radius:999px;cursor:pointer;background:#0e1420b8;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--lineS);font-family:var(--mono);font-size:11px;letter-spacing:2px;color:var(--faint);transition:border-color .3s,color .3s,background .3s}.kiosk-btn:hover{color:var(--dim);border-color:var(--faint)}.kiosk-btn .kdot{width:7px;height:7px;border-radius:50%;background:var(--faint);transition:background .3s,box-shadow .3s}.kiosk-btn.on{color:var(--cyanS);border-color:#22d3ee80;background:#0c1a28cc}.kiosk-btn.on .kdot{background:var(--cyanS);box-shadow:0 0 10px var(--cyanS);animation:kdotPulse 1.6s ease-in-out infinite}@keyframes kdotPulse{0%,to{opacity:1}50%{opacity:.35}}.filters{position:fixed;top:74px;left:50%;transform:translate(-50%);z-index:20;display:flex;gap:6px;background:#080c14b3;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--line);border-radius:99px;padding:5px}.filters button{font-family:var(--mono);font-size:10px;letter-spacing:1.2px;color:var(--mute);background:none;border:none;cursor:pointer;padding:7px 14px;border-radius:99px;transition:.25s}.filters button.on{color:#fff}.filters button.on[data-s=biz]{background:linear-gradient(135deg,var(--indigo),#4f46e5)}.filters button.on[data-s=it]{background:linear-gradient(135deg,var(--jade),#0d9488)}.filters button.on[data-s=all]{background:linear-gradient(135deg,var(--cyan),var(--indigo))}.hover-lbl{position:fixed;z-index:18;pointer-events:none;transform:translate(-50%,-130%);background:#080c14d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--lineS);border-radius:9px;padding:7px 12px;opacity:0;transition:opacity .15s;white-space:nowrap}.hover-lbl .n{font-family:var(--disp);font-weight:600;font-size:13px}.hover-lbl .c{font-family:var(--mono);font-size:8.5px;letter-spacing:1.2px;color:var(--mute);margin-top:1px}.panel{position:fixed;top:0;right:0;height:100%;width:min(520px,92vw);z-index:40;background:linear-gradient(180deg,#0a0e16f7,#06090ffa);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-left:1px solid var(--lineS);transform:translate(100%);transition:transform .55s cubic-bezier(.6,0,.2,1);overflow-y:auto;box-shadow:-40px 0 100px -30px #000000b3}.panel.open{transform:none}.panel-head{position:relative;padding:30px 34px 24px;border-bottom:1px solid var(--line);overflow:hidden}.panel-head .pg{position:absolute;top:-60px;right:-40px;width:220px;height:220px;border-radius:999px;filter:blur(60px);opacity:.5}.panel .close{position:absolute;top:22px;right:24px;z-index:3;width:34px;height:34px;border-radius:99px;background:var(--surface);border:1px solid var(--lineS);color:var(--ink);cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;transition:.2s}.panel .close:hover{background:var(--surface2)}.panel .picon{width:62px;height:62px;border-radius:16px;display:flex;align-items:center;justify-content:center;position:relative;z-index:2;box-shadow:0 14px 30px -12px #0009}.panel .picon svg{width:30px;height:30px}.panel .pcat{font-family:var(--mono);font-size:10px;letter-spacing:2px;color:var(--mute);margin:18px 0 6px;position:relative;z-index:2}.panel h2{font-family:var(--disp);font-weight:600;font-size:32px;letter-spacing:-.03em;position:relative;z-index:2}.panel .ptag{font-family:var(--jp);font-size:14px;color:var(--dim);margin-top:8px;line-height:1.55;position:relative;z-index:2;max-width:90%}.panel-body{padding:26px 34px 60px}.sec-l{font-family:var(--mono);font-size:10px;letter-spacing:2px;color:var(--cyanS);margin-bottom:14px}.feat{display:flex;gap:12px;margin-bottom:16px}.feat .fd{width:7px;height:7px;border-radius:99px;margin-top:6px;flex-shrink:0}.feat .ft{font-family:var(--body);font-size:14px;font-weight:600}.feat .fdsc{font-family:var(--body);font-size:12.5px;color:var(--mute);margin-top:3px;line-height:1.5}.mock{margin-top:8px;border-radius:14px;border:1px solid var(--lineS);background:var(--surface);overflow:hidden;box-shadow:0 30px 60px -30px #000000b3}.mock .mbar{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#0a0f1a;border-bottom:1px solid var(--line)}.mock .mbar i{width:9px;height:9px;border-radius:99px}.mock .mttl{font-family:var(--mono);font-size:10px;color:var(--mute);margin-left:6px}.mock .mbody{padding:16px;min-height:180px}.panel .pcta{margin-top:26px;display:flex;gap:10px}.panel .pcta .b{flex:1;text-align:center;font-family:var(--body);font-size:13px;font-weight:600;padding:12px;border-radius:10px;cursor:pointer;border:none;color:#fff}.panel .pcta .b.ghost{background:transparent;border:1px solid var(--lineS);color:var(--ink)}.m-row{display:flex;align-items:center;gap:10px;padding:9px 0;border-top:1px solid var(--line);font-size:12px;color:var(--dim);font-family:var(--body)}.m-row:first-child{border-top:none}.m-row .dotc{width:8px;height:8px;border-radius:99px;flex-shrink:0}.m-row .grow{flex:1}.m-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}.m-kpi{background:#0a0f1a;border:1px solid var(--line);border-radius:9px;padding:10px;border-top:2px solid}.m-kpi .k{font-family:var(--mono);font-size:7.5px;letter-spacing:1px;color:var(--mute)}.m-kpi .v{font-family:var(--disp);font-weight:600;font-size:18px;margin-top:3px;letter-spacing:-.02em}.m-spark{height:54px;width:100%}.m-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.m-col{background:#0a0f1a;border:1px solid var(--line);border-radius:9px;padding:8px;min-height:120px}.m-col .ch{font-family:var(--mono);font-size:8px;letter-spacing:1px;color:var(--mute);margin-bottom:7px}.m-card{background:var(--surface2);border:1px solid var(--line);border-radius:7px;padding:7px;margin-bottom:6px;font-family:var(--body);font-size:10px;color:var(--dim)}.m-bubble{max-width:78%;padding:8px 11px;border-radius:11px;font-family:var(--body);font-size:11.5px;line-height:1.45;margin-bottom:8px}.m-bubble.them{background:var(--surface2);border:1px solid var(--line);color:var(--dim)}.m-bubble.me{background:linear-gradient(135deg,var(--cyan),var(--indigo));color:#fff;margin-left:auto}.m-code{font-family:var(--mono);font-size:10.5px;line-height:1.7;color:var(--dim);white-space:pre;overflow-x:auto}.m-code .g{color:var(--jade)}.m-code .b2{color:var(--cyanS)}.m-code .v2{color:var(--violet)}.m-bars{display:flex;align-items:flex-end;gap:6px;height:80px;padding-top:10px}.m-bars .bar{flex:1;border-radius:4px 4px 0 0;background:linear-gradient(180deg,var(--cyanS),rgba(34,211,238,.2))}.m-cal{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.m-cal .d{aspect-ratio:1;border-radius:4px;background:#0a0f1a;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:8px;color:var(--mute)}.m-cal .d.ev{background:#6366f140;border-color:#6366f180;color:#fff}.m-shield{display:flex;flex-direction:column;align-items:center;gap:10px;padding:14px 0}.wormhole{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#02040a;opacity:0;pointer-events:none;transition:opacity .4s}.wormhole.on{opacity:1;pointer-events:auto}.wormhole canvas{display:block;width:100%;height:100%}.wh-msg{position:absolute;left:50%;bottom:14%;transform:translate(-50%);font-family:var(--mono);font-size:12px;letter-spacing:4px;color:var(--cyanS);opacity:0;text-shadow:0 0 18px var(--cyanS)}.wh-msg.on{opacity:1;transition:opacity .6s}.station{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;background:radial-gradient(ellipse 80% 70% at 50% 30%,#0c1a2c,#070d18 55%,#03060d);opacity:0;pointer-events:none;transition:opacity .8s;overflow:hidden;perspective:1000px;cursor:pointer}.station.on{opacity:1;pointer-events:auto}.scene{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:90px 32px 120px;opacity:0;pointer-events:none;transform:scale(.42);filter:blur(7px);transition:transform 1.05s cubic-bezier(.22,1,.36,1),opacity .9s,filter .9s}.scene.cur{opacity:1;pointer-events:auto;transform:none;filter:none;transition-delay:.3s}.scene.past{transform:scale(2.8);opacity:0;filter:blur(12px);transition:transform .8s cubic-bezier(.6,0,.9,.4),opacity .65s,filter .65s}.scene .ch{display:inline-block;will-change:transform,opacity}.scene.sucked{opacity:0;transform:none;filter:none;transition:opacity .4s .75s;pointer-events:none}.scene-core{justify-content:flex-start;padding-top:10vh}.station.departing .scene.cur{transform:scale(8);opacity:0;transition:transform 1s cubic-bezier(.5,0,.9,.4),opacity 1s}.station.departing .st-cue,.station.departing .st-dots{opacity:0}.st-cue{position:absolute;left:50%;bottom:26px;transform:translate(-50%);z-index:5;font-family:var(--mono);font-size:10.5px;letter-spacing:3px;color:var(--mute);pointer-events:none;animation:cuePulse 2.4s ease-in-out infinite;transition:opacity .4s}@keyframes cuePulse{0%,to{opacity:.9}50%{opacity:.3}}.st-dots{position:absolute;left:50%;bottom:54px;transform:translate(-50%);z-index:5;display:flex;gap:9px;pointer-events:none;transition:opacity .4s}.st-dots i{width:7px;height:7px;border-radius:99px;background:#f2f6fc2e;transition:.3s}.st-dots i.on{background:var(--cyanS);box-shadow:0 0 10px var(--cyanS)}.station .st-glow{position:absolute;border-radius:999px;filter:blur(90px);pointer-events:none}.station .st-eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:4px;color:var(--cyanS);margin-bottom:14px;position:relative}.station h2{font-family:var(--disp);font-weight:600;font-size:clamp(32px,5vw,58px);letter-spacing:-.035em;text-align:center;line-height:1.02;margin-bottom:14px;position:relative}.station h2 .g{background:linear-gradient(110deg,var(--cyanS),var(--violet),var(--amber));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.station .st-sub{font-family:var(--jp);font-size:15px;color:var(--dim);text-align:center;max-width:560px;margin-bottom:44px;position:relative;line-height:1.6}.st-cards{display:flex;gap:20px;flex-wrap:wrap;justify-content:center;position:relative;max-width:1040px}.st-card{width:300px;max-width:88vw;border-radius:20px;padding:28px;background:#101622b3;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--lineS);border-top:3px solid;position:relative;overflow:hidden;transform:translateY(24px);opacity:0;transition:transform .7s cubic-bezier(.22,1,.36,1),opacity .7s}.scene.in .st-card{transform:none;opacity:1;transition-delay:.35s}.scene.in .st-card:nth-child(2){transition-delay:.5s}.scene.in .st-card:nth-child(3){transition-delay:.65s}.scene.in .st-card:nth-child(4){transition-delay:.8s}.scene.in .st-card:nth-child(5){transition-delay:.95s}.st-card .cg{position:absolute;top:-40px;right:-40px;width:150px;height:150px;border-radius:999px;filter:blur(50px);opacity:.4}.st-card .cic{width:56px;height:56px;border-radius:15px;display:flex;align-items:center;justify-content:center;margin-bottom:18px;position:relative;box-shadow:0 14px 30px -12px #0009}.st-card .cic svg{width:28px;height:28px}.st-card .cnm{font-family:var(--disp);font-weight:700;font-size:24px;letter-spacing:-.02em}.st-card .cnm b{font-weight:700}.st-card .ccode{font-family:var(--mono);font-size:10px;letter-spacing:1.6px;color:var(--mute);margin:4px 0 14px}.st-card .cdesc{font-family:var(--jp);font-size:13.5px;line-height:1.6;color:var(--dim);min-height:62px}.st-card ul{list-style:none;margin:14px 0 0;padding:14px 0 0;border-top:1px solid var(--line)}.st-card li{font-family:var(--body);font-size:12.5px;color:var(--dim);display:flex;gap:9px;align-items:flex-start;margin-bottom:9px}.st-card li .d{width:6px;height:6px;border-radius:99px;margin-top:6px;flex-shrink:0}.station .st-back{margin-top:44px;position:relative;font-family:var(--mono);font-size:12px;letter-spacing:2px;color:var(--ink);background:#ffffff0f;border:1px solid var(--lineS);border-radius:99px;padding:13px 26px;cursor:pointer;transition:.25s}.station .st-back:hover{background:#ffffff1f}.st-canvas{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none}.station .mf,.station .act,.station .st-cards,.station .cart-wrap,.station .st-back{z-index:2}.st-sp{height:78vh;flex-shrink:0;width:1px}.station .w{display:inline-block;opacity:0;transform:translateY(.55em) rotateX(-24deg);transition:opacity .7s cubic-bezier(.22,1,.36,1) var(--wd,0s),transform .7s cubic-bezier(.22,1,.36,1) var(--wd,0s)}.station .in .w{opacity:1;transform:none}.reveal{opacity:0;transform:translateY(48px);transition:opacity 1.1s cubic-bezier(.22,1,.36,1),transform 1.1s cubic-bezier(.22,1,.36,1)}.reveal.in,.scene.in .reveal{opacity:1;transform:none}.scene .cart{opacity:0;transform:translateY(80px) scale(.65)}.scene.in .cart{animation:cartSnap .6s cubic-bezier(.3,1.6,.5,1) both}.scene.in .cart:nth-child(1){animation-delay:.35s}.scene.in .cart:nth-child(2){animation-delay:.47s}.scene.in .cart:nth-child(3){animation-delay:.59s}.scene.in .cart:nth-child(4){animation-delay:.71s}.scene.in .cart:nth-child(5){animation-delay:.83s}.scene.in .cart:nth-child(6){animation-delay:.95s}.scene.in .cart:nth-child(7){animation-delay:1.07s}@keyframes cartSnap{to{opacity:1;transform:none}}.station .mf{text-align:center;max-width:840px;position:relative;margin-bottom:52px}.station .mf-h{font-family:var(--disp);font-weight:600;font-size:clamp(42px,7.4vw,96px);letter-spacing:-.045em;line-height:.97;margin:10px 0 30px}.station .mf-h .g{background:linear-gradient(110deg,var(--cyanS),var(--violet),var(--amber));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.station .mf-lead{font-family:var(--body);font-size:clamp(15px,1.5vw,18px);line-height:1.78;color:var(--dim);max-width:668px;margin:0 auto 18px}.station .mf-lead b{color:var(--ink);font-weight:600}.station .mf-lead em{color:var(--cyanS);font-style:normal;font-weight:600}.station .mf-punch{font-family:var(--disp);font-weight:600;font-size:clamp(21px,2.6vw,32px);letter-spacing:-.02em;color:var(--ink);margin-top:34px}.station .act{text-align:center;max-width:780px;margin-bottom:38px;position:relative}.station .xh{font-family:var(--disp);font-weight:600;font-size:clamp(30px,4.6vw,54px);letter-spacing:-.035em;line-height:1.02;margin:10px 0 16px}.station .xh .g{background:linear-gradient(110deg,var(--cyanS),var(--violet),var(--amber));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.station .xbig{background:linear-gradient(135deg,var(--cyanS),var(--indigo));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-weight:800;padding-right:2px}.pillars{max-width:1240px!important}.pillars .st-card{width:288px}.cart-wrap{display:flex;flex-direction:column;align-items:center;width:100%}.cart-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;max-width:1060px;width:100%;margin:6px auto 0;position:relative}.cart{position:relative;text-align:left;border-radius:14px;padding:18px;background:#101622a8;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--lineS);border-left:3px solid;overflow:hidden;transition:transform .3s,border-color .3s}.cart:hover{transform:translateY(-3px)}.cart .cn{font-family:var(--disp);font-weight:700;font-size:19px;letter-spacing:-.01em}.cart .cs{font-family:var(--mono);font-size:10px;letter-spacing:1.3px;color:var(--mute);margin-top:6px;text-transform:uppercase}.cart .cd{font-family:var(--body);font-size:12px;color:var(--dim);margin-top:9px;line-height:1.5}.cart.more{display:flex;align-items:center;justify-content:center;border-style:dashed;color:var(--mute);font-family:var(--mono);font-size:12px;letter-spacing:1.6px}@media(max-width:900px){.cart-grid{grid-template-columns:repeat(2,1fr)}}@media(max-height:820px){.scene{padding:64px 28px 96px}.scene-core{padding-top:8vh}.pillars .st-card{width:250px;padding:20px}.st-card .cic{width:44px;height:44px;border-radius:12px;margin-bottom:12px}.st-card .cic svg{width:22px;height:22px}.st-card .cnm{font-size:20px}.st-card .cdesc{font-size:12px;min-height:0}.st-card li{font-size:11.5px;margin-bottom:6px}.st-card ul{margin-top:10px;padding-top:10px}.station .xh{font-size:clamp(24px,3.6vw,40px)}.station .mf-h{font-size:clamp(34px,6vw,72px)}.station .st-sub{font-size:13.5px;margin-bottom:24px}.station .mf-lead{font-size:14px}.cart{padding:13px}.cart .cn{font-size:16px}.cart .cd{font-size:11px}.station .st-back{margin-top:22px;padding:10px 20px}.distant-system.ds-hero{width:220px;height:220px;margin-bottom:14px}.distant-system.ds-hero .ds-logo{width:64px;height:64px}}@media(max-height:640px){.scene.cur{justify-content:flex-start;overflow-y:auto}.pillars .st-card{width:228px;padding:14px}.st-card .cdesc{display:none}.st-card .ccode{margin:2px 0 8px}.cart .cd{display:none}.station .mf-lead{font-size:13px;line-height:1.6;margin-bottom:10px}.station .mf-punch{font-size:18px;margin-top:18px}.distant-system.ds-hero{width:150px;height:150px}}.distant-system{position:absolute;top:46px;left:50%;transform:translate(-50%);width:220px;height:220px;opacity:0;transition:opacity 1.2s .3s;pointer-events:none}.station.on .distant-system{opacity:.9}.distant-system.ds-hero{position:relative;top:auto;left:auto;transform:none;width:300px;height:300px;margin-bottom:26px}.station.on .distant-system.ds-hero{opacity:1}.distant-system.ds-hero .ds-logo{width:84px;height:84px}.distant-system.ds-hero .ds-halo{width:170px;height:170px}.distant-system .ds-logo{position:absolute;top:50%;left:50%;width:60px;height:60px;transform:translate(-50%,-50%);-o-object-fit:contain;object-fit:contain;filter:drop-shadow(0 0 16px rgba(34,211,238,.7))}.distant-system .ds-halo{position:absolute;top:50%;left:50%;width:120px;height:120px;transform:translate(-50%,-50%);border-radius:999px;background:radial-gradient(circle,rgba(34,211,238,.35),rgba(99,102,241,.12) 45%,transparent 70%)}.distant-system .ds-orbit{position:absolute;top:50%;left:50%;border:1px solid rgba(200,210,220,.1);border-radius:999px;transform:translate(-50%,-50%)}.distant-system .ds-sat{position:absolute;top:50%;left:50%;width:0;height:0;transform:translate(-50%,-50%)}.distant-system .ds-sat i{position:absolute;width:9px;height:9px;border-radius:3px;box-shadow:0 0 8px currentColor}@keyframes dsspin{to{transform:translate(-50%,-50%) rotate(360deg)}}@media(prefers-reduced-motion:reduce){*{animation:none!important}}
