*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0}body{color:#f8fafc;background:#08090d;font-family:LINE Seed JP,system-ui,sans-serif;overflow:hidden}.shell{width:100%;height:100%;position:relative}.hidden-file-input{display:none}.lil-gui.root{--background-color:#11162073;--text-color:#f8fafc;--title-background-color:#0b0e168c;--title-text-color:#f8fafc;--widget-color:#1b2230b3;--hover-color:#ffd166;--focus-color:#ffd166;--number-color:#ffd166;--string-color:#ffd166;--font-family:"LINE Seed JP", system-ui, sans-serif;z-index:10;-webkit-backdrop-filter:blur(10px)saturate(140%)}.lil-gui .controller.recording{background:#c33b3b;animation:1.4s ease-in-out infinite record-pulse}.lil-gui .controller.recording .name,.lil-gui .controller.recording .widget{color:#fff}.lil-gui .controller.arming{background:#b8841d;animation:2s ease-in-out infinite record-arming}.lil-gui .controller.arming .name,.lil-gui .controller.arming .widget{color:#fff}@keyframes record-arming{0%,to{box-shadow:0 0 #b8841d80}50%{box-shadow:0 0 6px 2px #b8841d80}}@keyframes record-pulse{0%,to{box-shadow:0 0 #c33b3b99}50%{box-shadow:0 0 8px 2px #c33b3b99}}.search-input{z-index:10;color:#f8fafc;background:#0b0e16d9;border:1px solid #3a4354;border-radius:6px;outline:none;width:320px;padding:6px 10px;font-family:LINE Seed JP,system-ui,sans-serif;font-size:13px;position:absolute;bottom:12px;left:12px}.search-input:focus{background:#0b0e16f2;border-color:#ffd166}.search-input:not(:focus):placeholder-shown{opacity:.6}.stage{width:100%;height:100%;min-height:0;position:relative;overflow:hidden}.stage canvas{width:100%;height:100%;display:block}.drop{pointer-events:none;z-index:2;opacity:0;background:radial-gradient(circle,#08090d8c 0%,#08090db8 60%,#08090dd9 100%);place-items:center;transition:opacity .18s ease-out,background .22s ease-out;display:none;position:absolute;inset:0}.dragging .drop,.shell.empty .drop{opacity:1;display:grid}.dragging .drop{background:radial-gradient(circle,#08090db8 0%,#040509eb 70%,#000000f5 100%)}.drop-frame{pointer-events:none;border:1px solid #ffd1662e;border-radius:14px;transition:inset .22s cubic-bezier(.22,1,.36,1),border-color .22s ease-out,border-width .22s ease-out,box-shadow .22s ease-out;position:absolute;inset:24px}.drop-card{-webkit-backdrop-filter:blur(18px)saturate(160%);text-align:center;will-change:transform;background:linear-gradient(#141822c7,#0b0e16c7);border:1px solid #ffffff14;border-radius:18px;flex-direction:column;align-items:center;gap:18px;padding:38px 64px;transition:transform .26s cubic-bezier(.22,1,.36,1),background .22s ease-out,border-color .22s ease-out,box-shadow .22s ease-out;animation:.22s cubic-bezier(.22,1,.36,1) forwards drop-card-in;display:flex;position:relative;box-shadow:0 24px 60px #00000073,inset 0 0 0 1px #ffffff0a}.drop-icon{color:#ffd166;filter:drop-shadow(0 0 12px #ffd16659);width:44px;height:44px;transition:width .22s cubic-bezier(.22,1,.36,1),height .22s cubic-bezier(.22,1,.36,1),color .2s ease-out,filter .22s ease-out;animation:3.2s ease-in-out infinite drop-icon-float}.drop-icon-head{transform-origin:24px 27px}.drop-title{letter-spacing:.18em;text-transform:uppercase;color:#f8fafc;text-shadow:0 0 24px #ffd16640;font-size:20px;font-weight:600;transition:color .2s ease-out,text-shadow .22s ease-out,letter-spacing .26s cubic-bezier(.22,1,.36,1)}.drop-subtitle{letter-spacing:.12em;text-transform:uppercase;color:#aab4c2;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;font-size:12px;font-weight:500;transition:color .2s ease-out;display:flex}.drop-subtitle-sep{color:#ffd16673;font-weight:700}.compat-panel{z-index:6;-webkit-backdrop-filter:blur(14px)saturate(150%);opacity:0;pointer-events:none;background:#0b0e16b3;border:1px solid #ffffff14;border-radius:14px;flex-direction:column;gap:12px;width:280px;padding:14px 16px 16px;transition:opacity .22s ease-out,transform .22s ease-out,border-color .22s ease-out,box-shadow .22s ease-out,background .22s ease-out;display:flex;position:absolute;top:14px;left:14px;transform:translateY(-6px);box-shadow:0 18px 36px #0006,inset 0 0 0 1px #ffffff08}.shell.empty .compat-panel,.dragging .compat-panel{opacity:1;pointer-events:auto;transform:translateY(0)}.compat-panel-header{align-items:center;gap:12px;display:flex}.compat-panel-badge{color:#4ade80;background:#4ade8029;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;transition:color .2s ease-out,background .2s ease-out;display:inline-flex}.compat-panel-badge-icon{width:24px;height:24px}.compat-panel-badge-mark{opacity:0;transition:opacity .18s ease-out}.compat-panel--ok .compat-panel-badge-mark--check,.compat-panel--fail .compat-panel-badge-mark--cross{opacity:1}.compat-panel--fail .compat-panel-badge{color:#fb7185;background:#fb71852e}.compat-panel-heading{flex-direction:column;gap:2px;min-width:0;display:flex}.compat-panel-eyebrow{letter-spacing:.22em;text-transform:uppercase;color:#97a3b3d9;font-size:9px;font-weight:700}.compat-panel-status{letter-spacing:.02em;color:#f8fafc;word-break:break-word;font-size:13px;font-weight:600;transition:color .2s ease-out}.compat-panel--ok .compat-panel-status{color:#b9f1c8}.compat-panel--fail .compat-panel-status{color:#ffd6dc}.compat-panel--fail{background:#281216c7;border-color:#fb71858c;box-shadow:0 18px 36px #00000073,inset 0 0 0 1px #fb71852e,0 0 32px #fb71852e}.compat-panel-sections{border-top:1px solid #ffffff0f;flex-direction:column;gap:10px;padding-top:10px;display:flex}.compat-panel-section{flex-direction:column;gap:6px;display:flex}.compat-panel-section-title{letter-spacing:.22em;text-transform:uppercase;color:#97a3b3a6;margin:0;font-size:9px;font-weight:700}.compat-panel-list{grid-template-columns:1fr 1fr;gap:4px 12px;margin:0;padding:0;list-style:none;display:grid}.compat-row{letter-spacing:.04em;color:#d2d9e4;align-items:center;gap:8px;font-size:11px;font-weight:500;display:inline-flex}.compat-row-icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:14px;height:14px;font-size:9px;font-weight:700;display:inline-flex}.compat-row--ok{color:#4ade80}.compat-row--ok .compat-row-icon{background:#4ade802e}.compat-row--warn{color:#facc15}.compat-row--warn .compat-row-icon{background:#facc152e}.compat-row--fail{color:#fb7185}.compat-row--fail .compat-row-icon{background:#fb718538}.compat-row-label{white-space:nowrap;color:#d2d9e4}.compat-row--fail .compat-row-label{color:#ffd6dc}.compat-row-sr{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){.compat-panel,.compat-panel-status,.compat-panel-badge,.compat-panel-badge-mark{transition:none}}.dragging .drop-frame{border-width:3px;border-color:#ffd166d9;animation:1.8s ease-in-out infinite drop-frame-pulse;inset:12px;box-shadow:0 0 0 1px #ffd16659,0 0 32px #ffd16673,inset 0 0 48px #ffd1662e}.dragging .drop-card{background:linear-gradient(#181f2ddb,#090e19db);border-color:#ffd166d9;animation:2.4s ease-in-out .26s infinite drop-card-breathe;transform:scale(1.14);box-shadow:0 32px 80px #0009,inset 0 0 0 2px #ffd16673,0 0 120px #ffd16673}.dragging .drop-title{color:#ffd166;letter-spacing:.24em;text-shadow:0 0 28px #ffd16699}.dragging .drop-subtitle{color:#ffd166d9}.dragging .drop-subtitle-sep{color:#ffd166b3}.dragging .drop-icon{filter:drop-shadow(0 0 28px #ffd166d9);animation:1.6s ease-in-out infinite drop-icon-float,1.8s ease-in-out infinite drop-icon-glow}.dragging .drop-icon-head{animation:1.2s ease-in-out infinite drop-icon-head-bounce}@keyframes drop-card-in{0%{opacity:0;transform:scale(.96)translateY(6px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes drop-card-breathe{0%,to{transform:scale(1.14)}50%{transform:scale(1.155)}}@keyframes drop-frame-pulse{0%,to{border-color:#ffd16666;box-shadow:0 0 0 1px #ffd16614,inset 0 0 0 8px #ffd16600}50%{border-color:#ffd166b3;box-shadow:0 0 0 1px #ffd1662e,inset 0 0 0 24px #ffd1660f}}@keyframes drop-icon-float{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes drop-icon-glow{0%,to{filter:drop-shadow(0 0 12px #ffd16659)}50%{filter:drop-shadow(0 0 22px #ffd166b3)}}@keyframes drop-icon-head-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(3px)}}@media (prefers-reduced-motion:reduce){.drop-card,.dragging .drop-card,.dragging .drop-frame,.drop-icon,.dragging .drop-icon,.dragging .drop-icon-head{animation:none!important}}.loading-overlay{z-index:20;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);pointer-events:none;background:#08090da6;place-items:center;display:none;position:absolute;inset:0}.loading-overlay.visible{display:grid}.loading-card{color:#f8fafc;pointer-events:auto;background:#111620f0;border:1px solid #3a4354;border-radius:10px;flex-direction:column;gap:10px;width:min(80vw,480px);padding:18px 22px;font-family:LINE Seed JP,system-ui,sans-serif;display:flex;box-shadow:0 12px 40px #0006}.loading-label{color:#f8fafc;white-space:nowrap;text-overflow:ellipsis;height:20px;font-size:14px;font-weight:600;line-height:20px;overflow:hidden}.loading-bar{background:#1b2230;border-radius:3px;width:100%;height:6px;position:relative;overflow:hidden}.loading-bar-fill{background:#ffd166;border-radius:3px;width:0;height:100%;transition:width 80ms linear}.loading-bar-fill.indeterminate{width:30%;transition:none;animation:1.4s ease-in-out infinite loading-indeterminate}@keyframes loading-indeterminate{0%{transform:translate(-100%)}to{transform:translate(333%)}}.loading-counter{color:#aab4c2;white-space:nowrap;text-overflow:ellipsis;height:18px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;line-height:18px;overflow:hidden}.help-button{z-index:8;-webkit-backdrop-filter:blur(10px)saturate(140%);color:#d2d9e4;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;background:#0b0e16b3;border:1px solid #ffffff14;border-radius:999px;align-items:center;gap:8px;padding:8px 14px 8px 10px;font-family:LINE Seed JP,system-ui,sans-serif;font-size:11px;font-weight:600;transition:color .18s ease-out,border-color .18s ease-out,background .18s ease-out,transform .18s ease-out;display:inline-flex;position:absolute;bottom:14px;right:14px;box-shadow:0 8px 22px #00000059}.help-button:hover,.help-button:focus-visible{color:#ffd166;background:#141822d9;border-color:#ffd16666;outline:none;transform:translateY(-1px)}.help-button:focus-visible{box-shadow:0 8px 22px #00000059,0 0 0 2px #ffd16673}.help-button-icon{width:18px;height:18px}.help-button-label{white-space:nowrap}@media (width<=480px){.help-button-label{display:none}.help-button{padding:8px}}.help-modal{z-index:30;pointer-events:none;opacity:0;justify-content:center;align-items:center;padding:24px;transition:opacity .2s ease-out;display:flex;position:fixed;inset:0}.help-modal.visible{pointer-events:auto;opacity:1}.help-modal-backdrop{-webkit-backdrop-filter:blur(6px);background:#04060aa6;position:absolute;inset:0}.help-modal-card{-webkit-backdrop-filter:blur(20px)saturate(150%);opacity:0;background:#0b0e16f5;border:1px solid #ffffff14;border-radius:18px;flex-direction:column;gap:14px;width:min(720px,100%);max-height:min(80vh,720px);padding:22px 26px;transition:transform .22s cubic-bezier(.22,1,.36,1),opacity .22s ease-out;display:flex;position:relative;transform:translateY(8px)scale(.98);box-shadow:0 28px 80px #0000008c}.help-modal.visible .help-modal-card{opacity:1;transform:translateY(0)scale(1)}.help-modal-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.help-modal-eyebrow{letter-spacing:.24em;text-transform:uppercase;color:#97a3b3d9;font-size:9px;font-weight:700}.help-modal-title{letter-spacing:.04em;color:#f8fafc;margin:4px 0 0;font-size:24px;font-weight:600}.help-modal-close{color:#d2d9e4;cursor:pointer;background:#14182299;border:1px solid #ffffff14;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;transition:color .18s ease-out,border-color .18s ease-out,background .18s ease-out;display:inline-flex}.help-modal-close:hover,.help-modal-close:focus-visible{color:#ffd166;background:#141822c7;border-color:#ffd16666;outline:none}.help-modal-close svg{width:18px;height:18px}.help-pane-intro{color:#aab4c2;margin:0 0 12px;font-size:13px;line-height:1.55}.help-modal-tabs{border-bottom:1px solid #ffffff0f;gap:6px;padding-bottom:8px;display:flex}.help-modal-tab{appearance:none;color:#97a3b3d9;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:6px 14px;font-family:LINE Seed JP,system-ui,sans-serif;font-size:12px;font-weight:600;transition:color .18s ease-out,background .18s ease-out}.help-modal-tab:hover,.help-modal-tab:focus-visible{color:#ffd166;background:#ffd16614;outline:none}.help-modal-tab.is-active{color:#ffd166;background:#ffd16629}.help-modal-pane{scrollbar-color:#ffd16666 transparent;scrollbar-width:thin;flex:auto;min-height:0;padding:4px 8px 4px 0;overflow-y:auto}.help-modal-pane::-webkit-scrollbar{width:6px}.help-modal-pane::-webkit-scrollbar-thumb{background:#ffd16659;border-radius:999px}.help-modal-pane::-webkit-scrollbar-thumb:hover{background:#ffd16699}.help-section-title{letter-spacing:.22em;text-transform:uppercase;color:#97a3b3d9;margin:0 0 8px;font-size:11px;font-weight:700}.help-section-title:not(:first-child){margin-top:18px}.help-list{color:#d2d9e4;flex-direction:column;gap:6px;margin:0;padding-left:18px;font-size:13px;line-height:1.55;display:flex}.help-list code{color:#f8fafc;background:#ffffff0f;border-radius:4px;padding:1px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.help-list strong{color:#ffd166;font-weight:600}.help-list em{color:#ffd166;font-style:normal}.help-list kbd,.help-keymap kbd{color:#f8fafc;background:#141822e6;border:1px solid #ffffff29;border-radius:5px;padding:2px 7px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;font-weight:600;line-height:1;display:inline-block;box-shadow:inset 0 1px #ffffff0d,0 1px #0006}.help-keymap{background:#1418228c;border:1px solid #ffffff0f;border-radius:10px;flex-direction:column;gap:6px;margin:0 0 12px;padding:12px 14px;display:flex}.help-keymap-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.help-keymap-side{color:#ffd166;letter-spacing:.18em;background:#ffd1662e;border-radius:4px;padding:2px 7px;font-size:9px;font-weight:700;display:inline-block}.help-keymap-keys{flex-wrap:wrap;align-items:center;gap:4px;display:inline-flex}.help-keymap-sep{color:#97a3b38c;margin:0 2px}.help-keymap-note{color:#97a3b3bf;border-top:1px solid #ffffff0a;margin-top:4px;padding-top:2px;font-size:11px}.help-lang-switch{background:#1418228c;border:1px solid #ffffff0f;border-radius:999px;align-self:flex-end;gap:2px;margin-bottom:12px;padding:3px;display:inline-flex}.help-lang-toggle{appearance:none;color:#97a3b3d9;letter-spacing:.08em;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:5px 14px;font-family:LINE Seed JP,system-ui,sans-serif;font-size:11px;font-weight:600;transition:color .16s ease-out,background .16s ease-out}.help-lang-toggle:hover,.help-lang-toggle:focus-visible{color:#ffd166;outline:none}.help-lang-toggle.is-active{color:#08090d;background:#ffd166}.help-modal-pane#help-pane-usage{flex-direction:column;display:flex}.help-lang{display:contents}.help-lang[hidden]{display:none}.help-about{background:linear-gradient(#1418228c,#080d188c);border:1px solid #ffd16633;border-radius:12px;flex-direction:column;gap:10px;margin-bottom:18px;padding:14px 16px;display:flex}.help-about-summary{color:#e9eef6;margin:0;font-size:13px;line-height:1.6}.help-about-summary code,.help-about-meta code{color:#f8fafc;background:#ffffff0f;border-radius:4px;padding:1px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.help-about-summary strong{color:#ffd166;font-weight:600}.help-about-meta{color:#d2d9e4;grid-template-columns:max-content 1fr;gap:4px 14px;margin:0;padding:0;font-size:12px;line-height:1.5;list-style:none;display:grid}.help-about-key{letter-spacing:.18em;text-transform:uppercase;color:#97a3b3d9;align-self:center;font-size:9px;font-weight:700}.help-about-meta a{color:#ffd166;word-break:break-word;text-decoration:none}.help-about-meta a:hover,.help-about-meta a:focus-visible{outline:none;text-decoration:underline}.help-about-meta li{display:contents}.help-about-notes{color:#d2d9e4f2;border-top:1px dashed #ffd1662e;flex-direction:column;gap:6px;margin:0;padding:8px 0 0;font-size:11.5px;line-height:1.55;list-style:none;display:flex}.help-about-notes li{padding-left:18px;position:relative}.help-about-notes li:before{content:"";background:#ffd16699;border-radius:50%;width:5px;height:5px;position:absolute;top:.55em;left:4px;box-shadow:0 0 6px #ffd16666}.help-about-notes strong{color:#ffd166;font-weight:600}.help-oss-list{scrollbar-color:#ffd16666 transparent;scrollbar-width:thin;margin:0;padding:0;list-style:none}.help-oss-list::-webkit-scrollbar{width:6px}.help-oss-list::-webkit-scrollbar-thumb{background:#ffd16659;border-radius:999px}.help-oss-list::-webkit-scrollbar-thumb:hover{background:#ffd16699}.ack-card{background:#1418228c;border:1px solid #ffffff0f;border-radius:10px;margin-bottom:8px;padding:12px 16px 0;overflow:hidden}.ack-card:last-child{margin-bottom:0}.ack-card>*+*{margin-top:4px}.ack-card-heading{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.ack-card-name{color:#f8fafc;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px;font-weight:600}.ack-card-version{color:#97a3b3d9;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.ack-card-license{letter-spacing:.16em;text-transform:uppercase;color:#ffd166;background:#ffd1662e;border-radius:4px;padding:2px 7px;font-size:9px;font-weight:700}.ack-card-meta{color:#97a3b3d9;flex-wrap:wrap;gap:4px 12px;font-size:11px;display:flex}.ack-card-link{color:#ffd166;text-decoration:none}.ack-card-link:hover,.ack-card-link:focus-visible{outline:none;text-decoration:underline}.ack-card-license-text{color:#d2d9e4;white-space:pre-wrap;word-break:break-word;background:#080b12b3;border-top:1px solid #ffffff0f;margin:8px -16px 0;padding:12px 16px 14px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;line-height:1.55}.ack-card-license-missing{color:#97a3b3b3;background:#080b128c;border-top:1px solid #ffffff0f;margin:8px -16px 0;padding:10px 16px;font-size:11px;font-style:italic}.ack-empty{text-align:center;color:#97a3b3b3;padding:24px;font-size:13px}@media (prefers-reduced-motion:reduce){.help-modal,.help-modal-card,.help-button,.help-modal-close{transition:none}}
