@import "https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css";:root{color:#fff;font-synthesis:none;text-rendering:optimizelegibility;--plum:#372f41;--plum-deep:#0b0715;--glass:#fff3;--glass-strong:#ffffffc2;--purple-soft:#9887a7a3;background:#0b0715;font-family:Pretendard,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#app{width:100%;min-width:320px;height:100%;margin:0;overflow:hidden}#app{place-items:center;display:grid}body{background:#090610;place-items:center;display:grid}button{font:inherit}button:focus-visible{outline-offset:3px;outline:2px solid #fff}.app-shell{background:linear-gradient(155.12deg,#514659 1.38%,#080514 100%);width:min(100vw,393px);height:100dvh;max-height:852px;position:relative;overflow:hidden;box-shadow:0 0 80px #0000008c}.scene-pane,.manual-pane{position:absolute;inset:0}.scene-pane{z-index:1;overflow:hidden}.manual-pane{z-index:2;pointer-events:none}.manual-pane button,.manual-pane nav{pointer-events:auto}.settings-host{z-index:30;pointer-events:none;position:absolute;inset:0}.settings-host:has(.settings-backdrop){pointer-events:auto}.settings-backdrop{-webkit-backdrop-filter:blur(5px)brightness(.78);overscroll-behavior:contain;background:#0b07146e;place-items:center;padding:calc(7dvh + 16px) 4px 16px;animation:.22s ease-out both settings-backdrop-in;display:grid;position:absolute;inset:0}.sound-settings-card{aspect-ratio:784/676;color:#fff;filter:drop-shadow(0 22px 42px #04010980);background:url(../ui/setting_BG.png) 50%/100% 100% no-repeat;width:min(392px,100%);padding:26px 26px 18px;animation:.36s cubic-bezier(.2,.82,.24,1.06) both settings-card-in;position:relative}.sound-settings-header{justify-content:space-between;align-items:center;display:flex}.sound-settings-header h2{letter-spacing:-.035em;text-shadow:0 2px 8px #110a1959;margin:0;font-size:23px;font-weight:700}.sound-settings-close{cursor:pointer;background:#ffffff12;border:1px solid #ffffff14;border-radius:50%;width:34px;height:34px;margin:-3px -2px 0 0;padding:0;position:relative;box-shadow:inset 0 1px #ffffff1f,0 5px 15px #11081a29}.sound-settings-close:before,.sound-settings-close:after{content:"";background:#fff;border-radius:2px;width:2px;height:19px;position:absolute;top:7px;left:16px;box-shadow:0 0 5px #ffffff47}.sound-settings-close:before{transform:rotate(45deg)}.sound-settings-close:after{transform:rotate(-45deg)}.sound-settings-controls{gap:15px;margin-top:20px;display:grid}.sound-setting-row{gap:7px;display:grid}.sound-setting-row>span{justify-content:space-between;align-items:baseline;display:flex}.sound-setting-row b{font-size:15px;font-weight:600}.sound-setting-row output{color:#ffffffeb;text-shadow:0 0 9px #e2d7ff52;font-size:13px;font-weight:650}.sound-setting-row input[type=range]{--setting-volume:50%;appearance:none;cursor:pointer;touch-action:pan-x;background:0 0;width:100%;height:18px;margin:0;padding:0}.sound-setting-row input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(90deg, #fffffffa 0 var(--setting-volume), #ffffff2e var(--setting-volume) 100%);border:1px solid #ffffff14;border-radius:999px;height:5px;box-shadow:inset 0 1px 3px #180f2059,0 1px 8px #ffffff14}.sound-setting-row input[type=range]::-webkit-slider-thumb{appearance:none;background:linear-gradient(145deg,#fff,#ded8e6);border:2px solid #ffffffe6;border-radius:50%;width:17px;height:17px;margin-top:-7px;box-shadow:0 0 0 4px #ffffff14,0 0 16px #ebdcff8f,0 4px 9px #0f071873}.sound-setting-row input[type=range]::-moz-range-track{background:#ffffff2e;border-radius:999px;height:5px}.sound-setting-row input[type=range]::-moz-range-progress{background:#fffffffa;border-radius:999px;height:5px}.sound-setting-row input[type=range]::-moz-range-thumb{background:#f8f6fa;border:2px solid #fff;border-radius:50%;width:15px;height:15px;box-shadow:0 0 16px #ebdcff8f,0 4px 9px #0f071873}.sound-settings-note{color:#ffffff94;margin:10px 0 0;font-size:9px;line-height:1.45}.sound-settings-actions{grid-template-columns:1.12fr .88fr;gap:8px;margin-top:13px;display:grid}.sound-settings-actions a,.sound-settings-actions button{color:#332c38;cursor:pointer;text-align:center;white-space:nowrap;filter:drop-shadow(0 5px 9px #130a1b38);background:url(../ui/settings_siteBG.png) 50%/100% 100% no-repeat;border:0;border-radius:12px;place-items:center;height:43px;padding:0 8px;font-size:12px;font-weight:650;text-decoration:none;transition:transform .15s,filter .15s;display:grid}.sound-settings-actions a:hover,.sound-settings-actions button:hover{filter:brightness(1.05)drop-shadow(0 6px 11px #130a1b47);transform:translateY(-1px)}.sound-settings-actions a:active,.sound-settings-actions button:active{transform:translateY(1px)scale(.985)}@keyframes settings-backdrop-in{0%{opacity:0}}@keyframes settings-card-in{0%{opacity:0;transform:translateY(18px)scale(.94)}to{opacity:1;transform:translateY(0)scale(1)}}.scene-mount,.scene-mount canvas{width:100%;height:100%;display:block}.scene-glow{z-index:2;aspect-ratio:1;pointer-events:none;filter:blur(3px);background:radial-gradient(circle,#b9a8c814,#68557605 56%,#0000 71%);border-radius:50%;width:116%;position:absolute;top:-20%;left:-55%}.loading-copy{text-align:center;place-content:center;gap:6px;height:100%;display:grid}.loading-copy span{font-size:13px}.loading-copy strong{font-size:28px}.loading-copy i{background:#fff3;width:88px;height:2px;margin-top:10px;overflow:hidden}.loading-copy i:after{content:"";background:#fff;width:35%;height:100%;animation:1s ease-in-out infinite alternate loading;display:block}@keyframes loading{to{transform:translate(185%)}}.landing-view{color:#fff;text-align:left;background:0 0;width:100%;padding:0;position:absolute;inset:0}.landing-brand{text-shadow:2px 2px 5px #00000059;flex-direction:column;display:flex;position:absolute;top:11.3%;left:2.65%}.landing-brand small{margin-bottom:2px;font-size:14px;font-weight:500;line-height:.94}.landing-brand>strong{font-size:30px;font-weight:500;line-height:1.1}.landing-brand>span:not(.landing-rule){align-items:baseline;gap:7px;display:flex}.landing-brand b{font-size:40px;font-weight:500;line-height:1.05}.landing-brand i{font-size:16px;font-style:normal;font-weight:600}.landing-rule{background:url(../ui/layout/home_bar.png) 0/100% 100% no-repeat;flex:none;width:min(365px,100vw - 13px);max-width:calc(97.35vw - 3px);height:2px;margin-top:clamp(10px,1.16vw,20px);display:block}.start-trigger{color:#fff;cursor:pointer;background:0 0;border:0;place-items:center;height:16%;padding:0;display:grid;position:absolute;bottom:0;left:0;right:0}.start-copy{white-space:nowrap;font-size:15px;font-weight:500;transform:translateY(-34%)}.start-trigger:hover .start-copy{text-shadow:0 0 12px #ffffffbf}.brand-bar{z-index:5;color:#fff;cursor:pointer;background:0 0;border:0;align-items:center;gap:5.8px;padding:0;display:flex;position:absolute;top:20px;left:12.88px}.brand-bar img{object-fit:contain;image-rendering:auto;width:23px;height:23px}.brand-bar span{background:#fff3;border-radius:12.3px;height:20px;display:flex;overflow:hidden}.brand-bar b,.brand-bar i{place-items:center;padding:0 6.8px;font-size:11px;font-style:normal;font-weight:300;line-height:.935;display:grid}.brand-bar i{background:#ffffff14;padding-inline:4.7px 7px}.landing-view>.brand-bar{display:none}.home-view,.runner-view{position:absolute;inset:0}.runner-view:after{z-index:20;pointer-events:none;content:"";opacity:0;background:#ff2d4833;position:absolute;inset:0;box-shadow:inset 0 0 55px #ff26427a}.runner-view.has-interaction-error:after{animation:.52s ease-out interaction-error-flash}@keyframes interaction-error-flash{0%{opacity:0}18%{opacity:1}to{opacity:0}}.category-tabs{z-index:4;gap:43.5px;display:flex;position:absolute;top:380px;left:50%;transform:translate(-50%)}.category-indicator{width:35.64px;height:2.7px;transform:translateX(var(--category-offset,0));pointer-events:none;will-change:transform;background:#fff;border-radius:13px;transition:transform .28s cubic-bezier(.22,.61,.36,1);position:absolute;top:61.65px;left:7.83px}.category-tab{color:#fff;cursor:pointer;opacity:1;background:0 0;border:0;border-radius:13px;place-items:center;width:51.3px;height:51.3px;padding:0;font-size:12px;font-weight:600;line-height:1;transition:opacity .22s,transform .22s;display:grid;position:relative}.category-tab img{object-fit:contain;filter:drop-shadow(0 6px 8px #07031047);width:55px;height:55px;transition:filter .22s;position:absolute;inset:-1.85px}.category-tab span{z-index:1;margin-top:27px;position:relative}.category-tab:not(.is-active){opacity:.58}.category-tab:not(.is-active):hover,.category-tab:not(.is-active):focus-visible{opacity:.82;transform:translateY(-1px)}.category-tab.is-active img{filter:drop-shadow(0 7px 10px #0703105c)}.function-panel{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);pointer-events:auto;background:#fff3;padding:18.43px 19.87px 18.6px;position:absolute;inset:454px 0 0;overflow:hidden}.function-list-viewport{pointer-events:auto;width:100%;height:100%;position:relative;overflow:hidden}.function-list{scrollbar-width:none;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;pointer-events:auto;opacity:1;will-change:transform, opacity;align-content:start;gap:14.1px;height:100%;transition:transform .28s cubic-bezier(.22,.61,.36,1),opacity .22s;display:grid;position:absolute;inset:0;overflow-y:auto;transform:translate(0)}.function-list::-webkit-scrollbar{display:none}.function-scrollbar{z-index:4;pointer-events:none;opacity:1;background:#ffffff24;border-radius:999px;width:5px;transition:opacity .18s;position:absolute;top:3px;bottom:3px;right:1px;box-shadow:inset 0 0 2px #130c1d38}.function-scrollbar.is-hidden{opacity:0}.function-scrollbar i{border-radius:inherit;will-change:transform;background:#ffffffb8;width:100%;min-height:34px;display:block;box-shadow:0 0 6px #ffffff3d}.function-list.is-entering-right{opacity:0;transform:translate(105%)}.function-list.is-entering-left{opacity:0;transform:translate(-105%)}.function-list.is-leaving-left{opacity:0;pointer-events:none;transform:translate(-105%)}.function-list.is-leaving-right{opacity:0;pointer-events:none;transform:translate(105%)}.function-card{color:#fff;text-align:left;cursor:pointer;touch-action:pan-y;background:url(../ui/Category_bg.png) 50%/calc(100% + 20px) 100% no-repeat;border:0;border-radius:17px;grid-template-columns:64.92px minmax(0,1fr) 98.5px;align-items:center;gap:0;width:344.18px;height:69.6px;padding:0 10.2px;transition:transform .18s;display:grid;position:relative}.function-card:before,.function-card:after{z-index:0;content:"";pointer-events:none;background-position:50%;background-repeat:no-repeat;background-size:calc(100% + 20px) 100%;position:absolute;inset:0}.function-card:before{filter:drop-shadow(0 7px 9px #0b051457);background-image:url(../ui/Category_noHovr.png)}.function-card:after{opacity:0;will-change:opacity;background-image:url(../ui/Category_onHovr.png);transition:opacity .24s cubic-bezier(.22,.61,.36,1)}.function-card:hover{transform:translate(3px)}.function-card:hover:after,.function-card:focus-visible:after,.function-card:active:after{opacity:1}.function-mark{z-index:1;border:.75px solid #ffffffd9;border-radius:50%;place-items:center;width:49.96px;height:49.96px;display:grid;position:relative;overflow:hidden;transform:translate(10px);box-shadow:inset 0 4px 6px #ffffffa6,inset 0 -3px 8px 1px #160e2659}.function-sphere{z-index:0;object-fit:contain;width:55px;max-width:none;height:55px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.function-icon{z-index:1;object-fit:contain;filter:drop-shadow(0 1px 2px #2c23368c);width:55px;max-width:none;height:55px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.function-mark b{font-size:10px;position:relative}.card-copy{z-index:1;align-content:center;gap:4px;min-width:0;transition:text-shadow .24s;display:grid;position:relative;transform:translate(clamp(2px,.25vw,3px))}.card-copy strong{font-size:16px;font-weight:400;line-height:.935}.card-copy small{color:#fff;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:300;line-height:.935;overflow:hidden}.function-card:hover .card-copy,.function-card:focus-visible .card-copy,.function-card:active .card-copy{text-shadow:0 1px 3px #231b2bd1,0 0 5px #231b2b61}.card-line{z-index:1;opacity:0;width:76.7px;height:1px;display:block;position:relative}.card-line i{display:none}.runner-view{--runner-header-offset-y:-15px}.runner-top-shade{z-index:2;pointer-events:none;background:linear-gradient(#1e1724e6 0%,#1e172400 100%);height:230px;position:absolute;top:0;left:0;right:0}.preview-pause-surface{z-index:3;cursor:pointer;background:0 0;border:0;width:100vw;height:100dvh;padding:0;position:fixed;inset:0}.preview-pause-indicator{z-index:8;pointer-events:none;opacity:0;place-items:center;gap:8px;transition:opacity .24s,transform .32s cubic-bezier(.2,.8,.25,1);display:grid;position:fixed;top:50dvh;left:50vw;transform:translate(-50%,-50%)scale(.88)}.preview-pause-indicator.is-visible{opacity:1;transform:translate(-50%,-50%)scale(1)}.preview-pause-indicator span{-webkit-backdrop-filter:blur(8px);background:#271f3061;border:1px solid #ffffff52;border-radius:50%;justify-content:center;align-items:center;gap:9px;width:74px;height:74px;display:flex;box-shadow:inset 0 1px 10px #ffffff1c,0 10px 35px #08030e4d}.preview-pause-indicator i{background:#ffffffeb;border-radius:4px;width:5px;height:24px;display:block;box-shadow:0 0 8px #fff3}.preview-pause-indicator b{text-shadow:0 2px 8px #0d0713b3;font-size:12px;font-weight:550}.manual-intro-layer{z-index:12;color:#17131e;text-align:left;cursor:pointer;-webkit-backdrop-filter:blur(6px)brightness(.88);background:#312a3933;border:0;place-items:center;width:100vw;height:100dvh;padding:0;animation:.42s ease-out both manual-intro-layer-in;display:grid;position:fixed;inset:0}.manual-intro-card{background:#ffffffd1;align-content:center;gap:15px;width:100%;min-height:215px;padding:30px clamp(28px,12vw,48px);animation:.52s cubic-bezier(.2,.82,.24,1.06) both manual-intro-card-in;display:grid;box-shadow:0 16px 42px #0f091747,inset 0 1px #ffffffd6}.manual-intro-card>strong{letter-spacing:-.035em;overflow-wrap:anywhere;word-break:keep-all;white-space:pre-line;text-wrap:pretty;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:21px;font-weight:700;line-height:1.35;display:-webkit-box;overflow:hidden}.manual-intro-card.is-simulation{text-align:center;justify-items:center;gap:13px;min-height:170px}.manual-intro-card.is-simulation>strong{font-size:20px;line-height:1.4}.manual-intro-action-icon{color:#29203b;background:#fffffff5;border-radius:50%;place-items:center;width:34px;height:34px;font-size:21px;font-style:normal;font-weight:800;display:grid;box-shadow:0 3px 12px #2a1d3f47}.manual-intro-tip{grid-template-columns:30px minmax(0,1fr);align-items:center;gap:3px 8px;display:grid}.manual-intro-tip i{color:#2e2449;background:#fffffff2;border-radius:50%;grid-row:1;place-items:center;width:28px;height:28px;font-size:19px;font-style:normal;font-weight:800;display:grid;box-shadow:0 4px 12px #2c1f4433}.manual-intro-tip b{grid-column:2;font-size:18px;line-height:1.2}.manual-intro-tip>span{color:#282044;overflow-wrap:anywhere;word-break:keep-all;white-space:pre-line;text-wrap:pretty;-webkit-line-clamp:2;-webkit-box-orient:vertical;grid-column:2;font-size:15px;font-weight:550;line-height:1.45;display:-webkit-box;overflow:hidden}.manual-intro-layer.is-leaving{animation:.42s ease-in both manual-intro-layer-out}.manual-intro-layer.is-leaving .manual-intro-card{animation:.42s cubic-bezier(.4,0,.8,.2) both manual-intro-card-out}@keyframes manual-intro-layer-in{0%{opacity:0;-webkit-backdrop-filter:blur()brightness();backdrop-filter:blur()brightness()}}@keyframes manual-intro-layer-out{to{opacity:0;-webkit-backdrop-filter:blur()brightness();backdrop-filter:blur()brightness()}}@keyframes manual-intro-card-in{0%{opacity:0;transform:translateY(22px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes manual-intro-card-out{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-14px)scale(.98)}}.hold-progress{--hold-progress:0;z-index:9;pointer-events:none;opacity:0;filter:drop-shadow(0 5px 12px #120a1f7a);width:64px;height:64px;transition:opacity .13s,transform .18s cubic-bezier(.2,.8,.25,1);position:absolute;transform:translate(-50%,-100%)scale(.86)}.hold-progress.is-active{opacity:1;transform:translate(-50%,-100%)scale(1)}.hold-progress svg{width:100%;height:100%;display:block;overflow:visible}.hold-progress-track,.hold-progress-value{fill:#0b081275;stroke-width:6px}.hold-progress-track{stroke:#0c0a11c7}.hold-progress-value{fill:none;stroke:url(#hold-progress-gradient);stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--hold-progress));stroke-linecap:round;transform-origin:32px 32px;transform:rotate(-90deg)}.hold-progress-head{fill:#fff;opacity:clamp(0, calc(var(--hold-progress) * 8), 1);transform:rotate(calc(var(--hold-progress) * 1turn));transform-origin:32px 32px;filter:drop-shadow(0 0 4px #fffffff2)}.hold-progress.is-complete{filter:drop-shadow(0 0 10px #7753ffb8)}.home-view>.brand-bar,.runner-view>.brand-bar{top:20px;left:12.88px}.runner-settings{z-index:5;cursor:pointer;background:0 0;border:0;place-items:center;width:28px;height:28px;padding:0;display:grid;position:absolute;top:16px;right:14px}.runner-settings img{object-fit:contain;filter:drop-shadow(0 2px 4px #1e17248c);width:25px;height:25px;display:block}.home-settings{top:16px}.runner-heading{z-index:4;top:calc(78px + var(--runner-header-offset-y));box-sizing:border-box;-webkit-backdrop-filter:blur(5px);text-align:center;background:#fff6;border:1px solid #ffffff2e;border-radius:7px;place-items:center;min-height:36px;display:grid;position:absolute;left:22px;right:22px;box-shadow:0 6px 18px #0e08161a,inset 0 1px #fff3}.runner-heading h1{text-shadow:0 2px 4px #1e1724c7;margin:0;font-size:20px;font-weight:700;line-height:1}.runner-utilities{z-index:4;top:calc(138px + var(--runner-header-offset-y));justify-content:space-between;display:flex;position:absolute;left:24px;right:24px}.runner-utilities button{cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:30px;height:30px;padding:0;display:grid}.runner-utilities img{object-fit:contain;width:30px;height:30px;display:block}.runner-utilities .voice-toggle{transition:opacity .18s,filter .18s;position:relative}.runner-utilities .voice-toggle.is-muted{opacity:.48;filter:saturate(.2)}.runner-utilities .voice-toggle.is-muted:after{content:"";background:#fff;border-radius:2px;width:2px;height:23px;position:absolute;top:4px;left:14px;transform:rotate(-42deg);box-shadow:0 0 4px #261b3099}.runner-rule{z-index:3;top:calc(125px + var(--runner-header-offset-y));background:#ffffffbf;height:1px;position:absolute;left:7px;right:7px}.mode-switch{z-index:4;top:calc(134px + var(--runner-header-offset-y));box-sizing:border-box;isolation:isolate;grid-template-columns:69px 69px;column-gap:3px;width:155px;height:35px;padding:0 7px;display:grid;position:absolute;left:50%;transform:translate(-50%)}.mode-switch-bg,.mode-switch-option{pointer-events:none;width:155px;height:35px;position:absolute;inset:0}.mode-switch-bg{z-index:0}.mode-switch-option{z-index:1}.mode-switch-indicator{z-index:2;will-change:transform;background-image:url(../ui/img_l_Click.png);background-position:-7px -5px;background-repeat:no-repeat;background-size:155px 35px;width:69px;height:26px;transition:transform .28s cubic-bezier(.22,.8,.3,1);position:absolute;top:5px;left:7px}.mode-switch[data-active=simulation] .mode-switch-indicator{background-image:url(../ui/img_r_Click.png);background-position:-79px -5px;transform:translate(72px)}.mode-switch.is-switching{pointer-events:none}.mode-switch button{z-index:3;height:35px;color:var(--plum);cursor:pointer;background:0 0;border:0;padding:0 5px;font-size:10px;font-weight:600;transition:color .15s 70ms;position:relative}.mode-switch[data-active=preview] button[data-mode=preview],.mode-switch[data-active=simulation] button[data-mode=simulation]{color:#fff}.step-content{z-index:4;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:linear-gradient(265deg,#877d89a6,#292334a6);border:1px solid #ffffffd9;border-radius:25px;place-items:center;min-height:29px;padding:5px 16px;display:grid;position:absolute;bottom:11.2%;left:8.8%;right:6.8%;box-shadow:inset 2px -2px 12px #ffffff6b}.step-content p{text-align:center;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:14px;font-weight:600;overflow:hidden}.step-content.is-error{border-color:#ffb2bd}.step-content.is-success{border-color:#c9ffcf}.step-content.is-complete{border-color:#fffffff2}.step-content.is-error{animation:.32s ease-out interaction-copy-shake}@keyframes interaction-copy-shake{0%,to{transform:translate(0)}30%{transform:translate(-7px)}62%{transform:translate(5px)}}.runner-footer{z-index:4;grid-template-columns:38px 1fr 38px;align-items:center;display:grid;position:absolute;bottom:2.5%;left:0;right:0}.step-dots{place-items:center;min-width:0;height:60px;line-height:1;display:grid;position:relative;overflow:hidden}.step-track{will-change:transform;gap:0;transition:transform .36s cubic-bezier(.22,.8,.3,1);display:flex;position:absolute;top:0;left:50%}.step-dots button{color:#fff;cursor:pointer;text-shadow:0 1px 2px #0000003d;background:url(../ui/icon_reststep.png) 50%/45px 45px no-repeat;border:0;flex:0 0 45px;width:45px;height:45px;padding:0;font-size:14px;font-weight:700;position:relative}.step-dots button.is-active{background-image:url(../ui/icon_present.png);font-size:19px}.step-present-bar{transform-origin:50%;pointer-events:none;width:50px;height:10px;display:block;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.step-present-bar.is-changing{animation:.52s cubic-bezier(.22,.8,.3,1) step-bar-alive}@keyframes step-bar-alive{0%{opacity:.58;transform:translate(-50%)scaleX(.88)scaleY(.9)}55%{opacity:1;transform:translate(-50%)scaleX(1.08)scaleY(1.08)}to{opacity:1;transform:translate(-50%)scale(1)}}.step-arrow{cursor:pointer;background:0 0;border:0;width:38px;height:38px;padding:0;position:relative;transform:translateY(-5px)}.step-arrow:before{content:"";background:url(../ui/step_arrow.svg) 50%/contain no-repeat;width:28px;height:30px;position:absolute;top:5px;left:4px}.step-arrow.is-next:before{transform:scaleX(-1)}.step-arrow:disabled{opacity:.24;cursor:default}.complete-layer{z-index:10;-webkit-backdrop-filter:blur(1.5px)brightness(1.03);background:#faf7ff0b;animation:.42s ease-out both complete-layer-in;position:absolute;inset:0;overflow:hidden}.complete-card{z-index:2;box-sizing:border-box;color:#fff;-webkit-backdrop-filter:none;backdrop-filter:none;transform-origin:50% 70%;will-change:transform, opacity, filter;background-color:#0000;background-image:url(../ui/complete_BG.png);background-position:50%;background-repeat:no-repeat;background-size:100% 100%;border:none;border-radius:0;padding:30px 28px;animation:.62s cubic-bezier(.2,.82,.24,1.08) both complete-card-in;display:block;position:absolute;bottom:125px;left:22px;right:22px}.complete-celebration{z-index:1;pointer-events:none;width:1px;height:1px;position:absolute;bottom:230px;left:50%}.complete-celebration:before{content:"";border:2px solid #e5d7ffb3;border-radius:50%;width:116px;height:116px;animation:.76s ease-out 80ms both complete-ring-burst;position:absolute;top:-58px;left:-58px}.complete-celebration i{--burst-x:0;--burst-y:-80px;--burst-r:0deg;--burst-color:#fff;background:var(--burst-color);width:7px;height:11px;box-shadow:0 0 8px color-mix(in srgb, var(--burst-color) 72%, transparent);border-radius:5px;animation:1.05s cubic-bezier(.16,.72,.3,1) .11s both complete-confetti;display:block;position:absolute;top:-5px;left:-3px}.complete-card .btn-close{cursor:pointer;background:url(../ui/complete_close.png) 50%/contain no-repeat;border:none;width:20px;height:20px;padding:0;position:absolute;top:21px;right:22px}.complete-content{align-items:center;gap:10px;display:flex}.complete-icon{background:url(../ui/complete_icon_check.png) 50%/100% no-repeat,url(../ui/complete_icon_BG.png) 50%/100% no-repeat;flex-shrink:0;width:80px;height:80px;display:inline-block}.complete-info{flex-direction:column;flex:1 1 0;gap:10px;min-width:0;display:flex}.complete-text strong{letter-spacing:.5px;margin-top:20px;margin-bottom:6px;font-size:15px;font-weight:600;display:block}.complete-text p{color:#e0e0e0;word-break:keep-all;letter-spacing:.25px;margin:0;font-size:11.5px;font-weight:600}.complete-actions{gap:10px;width:100%;margin-bottom:6px;display:flex}.complete-actions button{white-space:nowrap;cursor:pointer;transform-origin:50%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#0000;background-position:50%;background-repeat:no-repeat;background-size:100% 100%;border:none;border-radius:0;justify-content:center;align-items:center;min-width:0;padding:0;font-size:12px;font-weight:700;transition:transform .18s,filter .18s;display:flex}@media (hover:hover){.complete-actions button:hover{filter:brightness(1.08);transform:scale(1.045)}}.complete-actions button:focus-visible{outline-offset:2px;outline:2px solid #ffffffe0;transform:scale(1.045)}.complete-actions button:active{transform:scale(.98)}.complete-actions .btn-again{color:#fff;aspect-ratio:70/40;background-image:url(../ui/complete_again.png);flex:7;height:auto;font-weight:500}.complete-actions .btn-sim,.complete-actions .btn-home{aspect-ratio:120/40;color:#333;background-image:url(../ui/complete_simulation.png);flex:12;min-width:0;height:auto}@keyframes complete-layer-in{0%{opacity:0;-webkit-backdrop-filter:blur()brightness();backdrop-filter:blur()brightness();background-color:#fff0}55%{opacity:1;background-color:#ffffff1c}to{opacity:1;-webkit-backdrop-filter:blur(1.5px)brightness(1.03);backdrop-filter:blur(1.5px)brightness(1.03);background-color:#faf7ff0b}}@keyframes complete-card-in{0%{opacity:0;filter:brightness(1.28);transform:translateY(24px)scale(.9)}62%{opacity:1;filter:brightness(1.1);transform:translateY(-3px)scale(1.018)}to{opacity:1;filter:brightness();transform:translateY(0)scale(1)}}@keyframes complete-ring-burst{0%{opacity:0;transform:scale(.25)}45%{opacity:.8}to{opacity:0;transform:scale(2.15)}}@keyframes complete-confetti{0%{opacity:0;transform:translateY(18px)rotate(0)scale(.35)}28%{opacity:1}to{opacity:0;transform:translate(var(--burst-x), var(--burst-y)) rotate(var(--burst-r)) scale(1)}}.fatal-error{color:#fff;text-align:center;background:linear-gradient(#463c4f,#0b0717);place-content:center;width:100%;height:100%;padding:30px;display:grid}.app-shell[data-view=landing] .scene-pane{transform:translateY(7%)scale(1.08)}.app-shell[data-view=home] .scene-pane{transform-origin:50% 48%;transform:translateY(-13.6%)scaleX(.98)scaleY(1.02)}.app-shell[data-view=runner] .scene-pane{transform-origin:50% 49%;transform:translateY(2%)scale(1.08)}.scene-pane{transition:transform .45s}@media (width>=394px) and (width<=767px){.app-shell{border-radius:26px}}@media (width<=767px) and (height<=720px){.home-view{transform:scale(calc(100dvh / 852));transform-origin:top;height:852px}.step-content{bottom:12.5%}}@media (width>=768px){:root{--desktop-sidebar:clamp(340px, 31.1vw, 398px);--desktop-menu-top:clamp(240px, 24.5dvh, 274px);--desktop-menu-height:min(450px, calc(100dvh - var(--desktop-menu-top)));--desktop-scene-left:var(--desktop-sidebar)}#app,body{display:block}.settings-backdrop{padding:24px}.manual-intro-card{border-radius:5px;gap:8px;width:500px;min-height:130px;padding:16px 22px}.manual-intro-card>strong{font-size:17px;line-height:1.28}.manual-intro-card.is-simulation{gap:8px;min-height:130px}.manual-intro-card.is-simulation>strong{font-size:16px}.manual-intro-action-icon{width:27px;height:27px;font-size:17px}.manual-intro-tip{grid-template-columns:25px minmax(0,1fr);gap:1px 7px}.manual-intro-tip i{width:23px;height:23px;font-size:15px}.manual-intro-tip b{font-size:14px}.manual-intro-tip>span{font-size:13px;line-height:1.32}.app-shell{width:100vw;height:100dvh;max-height:none;box-shadow:none;border-radius:0}.app-shell[data-view=landing]{--desktop-scene-left:clamp(430px, calc(43.75vw - 130px), 554px)}.app-shell[data-view=home],.app-shell[data-view=runner]{--desktop-scene-left:var(--desktop-sidebar)}.app-shell[data-view=landing] .scene-pane,.app-shell[data-view=home] .scene-pane,.app-shell[data-view=runner] .scene-pane{inset:0 0 0 var(--desktop-scene-left);transform-origin:50%;width:auto;transform:none}.scene-glow{width:92%;top:-34%;left:-35%}.landing-view:before{content:"";pointer-events:none;background-color:#0000;background-image:url(../ui/layout/Desktop_homeBG.png),linear-gradient(90deg,#fff6,#fff0);background-size:100% 100%;width:min(525px,100vw);position:absolute;inset:0 auto 0 0}.landing-view>.brand-bar{display:flex}.brand-bar{top:20px;left:13px}.brand-bar.is-menu img{width:13px;height:13px}.landing-brand{top:43.35%;left:23px}.landing-brand small{margin-bottom:5px;font-size:20px}.landing-brand>strong{font-size:36px;line-height:1.08}.landing-brand>span:not(.landing-rule){gap:9px}.landing-brand b{font-size:55px}.landing-brand i{font-size:26px}.landing-rule{width:500px}.start-trigger{width:var(--desktop-scene-left);height:20%;left:0;right:auto}.start-copy{display:none}.home-view:before,.runner-view:before{z-index:0;width:var(--desktop-sidebar);content:"";pointer-events:none;background-image:url(../ui/layout/Desktop_BG.png),linear-gradient(#fff3,#ffffff0f);background-size:100% 100%;position:absolute;inset:0 auto 0 0}.category-tabs{top:calc(var(--desktop-menu-top) - 80px);left:calc(var(--desktop-sidebar) / 2)}.function-panel{inset:var(--desktop-menu-top) auto auto 0;width:var(--desktop-sidebar);height:var(--desktop-menu-height);-webkit-backdrop-filter:none;backdrop-filter:none;background-color:#0000;background-image:url(../ui/layout/menu_BG.png);background-size:100% 100%;padding:15.64px 15.71px 18px}.function-list{gap:14.1px}.function-card{grid-template-columns:64.92px minmax(0,1fr) 80.7px;width:100%;min-height:69.6px}.card-copy strong{white-space:nowrap}.card-copy small{text-overflow:clip;white-space:nowrap;font-size:clamp(10px,.76vw,11px);overflow:visible}.card-line{justify-self:start;width:76.7px}.runner-view{width:var(--desktop-sidebar);right:auto}.runner-heading{top:calc(105px + var(--runner-header-offset-y));left:18px;right:18px}.runner-rule{top:calc(148px + var(--runner-header-offset-y));left:18px;right:18px}.mode-switch{top:calc(166px + var(--runner-header-offset-y))}.runner-utilities{top:calc(170px + var(--runner-header-offset-y));left:24px;right:24px}.step-content{bottom:112px;left:18px;right:18px}.runner-footer{bottom:28px;left:0;right:0}.complete-card{bottom:108px;left:22px;right:22px}}@media (width>=768px) and (height<=900px){:root{--desktop-menu-top:clamp(210px, 32.9dvh, 274px)}.runner-heading{top:calc(88px + var(--runner-header-offset-y))}.runner-rule{top:calc(130px + var(--runner-header-offset-y))}.mode-switch{top:calc(146px + var(--runner-header-offset-y))}.runner-utilities{top:calc(150px + var(--runner-header-offset-y))}}@media (width>=768px) and (height>=1061px){.landing-view:before{background-image:url(../ui/layout/Mackbookpro_homeBG.png),linear-gradient(90deg,#fff6,#fff0)}.home-view:before,.runner-view:before{background-image:url(../ui/layout/mackbookpro_BG.png),linear-gradient(#fff3,#ffffff0f)}}@media (width>=768px) and (height<=900px){.landing-view:before{background-image:url(../ui/layout/MacBook%20Air%20-%20homeBG.png),linear-gradient(90deg,#fff6,#fff0)}.home-view:before,.runner-view:before{background-image:url(../ui/layout/MacBook%20Air%20-%202_BG.png),linear-gradient(#fff3,#ffffff0f)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
