.splash-screen-cad{--splash-primary:#4da3ff;--splash-primary-rgb:77,163,255;--splash-bg:radial-gradient(ellipse at center,#3d4550 0%,#0e1218 100%);--splash-bg-surface:#232a31;--splash-border:#3a4552;--splash-text:#e6edf3;--splash-text-muted:#aab4bf;--splash-text-sub:#6b7785;--splash-success:#33d6a6;--splash-error:#f14c4c;align-items:center;background:var(--splash-bg);display:flex;font-family:var(--font-family,"Pretendard","Inter","Segoe UI","Noto Sans KR",-apple-system,BlinkMacSystemFont,sans-serif);inset:0;justify-content:center;opacity:1;overflow:hidden;position:fixed;transition:opacity .4s ease;visibility:visible;z-index:999999}.splash-screen-cad:not(.splash-active){display:none!important}.splash-screen-cad.theme-light{--splash-primary:#2f80ed;--splash-primary-rgb:47,128,237;--splash-bg:radial-gradient(ellipse at center,#fafbfc 0%,#d8dce2 100%);--splash-bg-surface:#fff;--splash-border:#d8dee4;--splash-text:#1c1f23;--splash-text-muted:#5b6572;--splash-text-sub:#8a95a0;background:var(--splash-bg)}.splash-mode-a{flex-direction:column;gap:0}.splash-mode-a .splash-bg-grid{animation:grid-move 20s linear infinite paused;background-image:linear-gradient(rgba(var(--splash-primary-rgb),.04) 1px,transparent 1px),linear-gradient(90deg,rgba(var(--splash-primary-rgb),.04) 1px,transparent 1px);background-size:50px 50px;inset:0;pointer-events:none;position:absolute}.splash-active.splash-mode-a .splash-bg-grid{animation-play-state:running}@keyframes grid-move{to{transform:translate3d(50px,50px,0)}}.splash-mode-a .splash-content{align-items:center;display:flex;flex-direction:column;max-width:90vw;position:relative;width:360px;z-index:1}.splash-mode-a .splash-cube-wrap{align-items:center;display:flex;height:110px;justify-content:center;margin-bottom:28px;perspective:800px}.splash-mode-a .cad-cube{--cube-size:72px;animation:cube-rotate 8s linear infinite paused;height:var(--cube-size);transform-style:preserve-3d;width:var(--cube-size)}.splash-active.splash-mode-a .cad-cube{animation-play-state:running}@keyframes cube-rotate{0%{transform:rotateX(-20deg) rotateY(30deg)}to{transform:rotateX(340deg) rotateY(390deg)}}.splash-mode-a .cube-face{backface-visibility:hidden;background:var(--splash-bg-surface);border:1.5px solid var(--splash-primary);height:var(--cube-size);position:absolute;width:var(--cube-size)}.splash-mode-a .cube-front{transform:translateZ(calc(var(--cube-size)/2))}.splash-mode-a .cube-back{transform:translateZ(calc(var(--cube-size)/-2)) rotateY(180deg)}.splash-mode-a .cube-left{transform:rotateY(-90deg) translateZ(calc(var(--cube-size)/2))}.splash-mode-a .cube-right{transform:rotateY(90deg) translateZ(calc(var(--cube-size)/2))}.splash-mode-a .cube-top{transform:rotateX(90deg) translateZ(calc(var(--cube-size)/2))}.splash-mode-a .cube-bottom{transform:rotateX(-90deg) translateZ(calc(var(--cube-size)/2))}.splash-mode-a .splash-title{margin-bottom:32px;text-align:center}.splash-mode-a .title-main{color:var(--splash-text);display:block;font-size:26px;font-weight:600;letter-spacing:1px;margin-bottom:6px}.splash-mode-a .title-sub{color:var(--splash-primary);display:block;font-size:11px;font-weight:400;letter-spacing:4px;text-transform:uppercase}.splash-mode-a .splash-progress-wrap{margin-bottom:16px;width:100%}.splash-mode-a .progress-track{background:rgba(var(--splash-primary-rgb),.15);border-radius:2px;height:2px;margin-bottom:12px;overflow:hidden;width:100%}.splash-mode-a .progress-fill{background:var(--splash-primary);border-radius:2px;height:100%;transition:width .3s ease;width:0}.splash-mode-a .progress-info{align-items:center;display:flex;justify-content:space-between}.splash-mode-a .progress-status{color:var(--splash-text-muted);font-size:12px}.splash-mode-a .progress-pct{color:var(--splash-primary);font-family:Courier New,monospace;font-size:12px;font-weight:600}.splash-mode-b{flex-direction:column}.splash-mode-b .splash-content{align-items:center;display:flex;flex-direction:column;max-width:90vw;position:relative;width:360px;z-index:1}.splash-mode-b .splash-wireframe{height:160px;margin-bottom:28px;width:160px}.splash-mode-b .wf-line{fill:none;stroke:var(--splash-primary);stroke-linecap:round;stroke-linejoin:round;stroke-width:2.5}.splash-mode-b .wf-box-back-solid{opacity:1}.splash-mode-b .wf-box-back-hidden,.splash-mode-b .wf-edges-back{opacity:.5;stroke-dasharray:6 5}.splash-mode-b .wf-box-front{animation:draw-loop-front 3.5s ease-in-out infinite paused;stroke-dasharray:320;stroke-dashoffset:320}.splash-mode-b .wf-box-back-solid{animation:draw-loop-back-solid 3.5s ease-in-out infinite paused;stroke-dasharray:240;stroke-dashoffset:240}.splash-mode-b .wf-box-back-hidden{animation:fade-loop-back 3.5s ease-in-out infinite paused}.splash-mode-b .wf-edges-front{animation:draw-loop-edges 3.5s ease-in-out infinite paused;stroke-dasharray:120;stroke-dashoffset:120}.splash-mode-b .wf-edges-back{animation:fade-loop-back 3.5s ease-in-out infinite paused}.splash-mode-b .splash-wireframe svg{display:block}.splash-active.splash-mode-b .wf-box-back-hidden,.splash-active.splash-mode-b .wf-box-back-solid,.splash-active.splash-mode-b .wf-box-front,.splash-active.splash-mode-b .wf-edges-back,.splash-active.splash-mode-b .wf-edges-front{animation-play-state:running}@keyframes draw-loop-front{0%{opacity:1;stroke-dashoffset:320}34%{opacity:1;stroke-dashoffset:0}71%{opacity:1;stroke-dashoffset:0}86%{opacity:0;stroke-dashoffset:0}to{opacity:0;stroke-dashoffset:320}}@keyframes draw-loop-back-solid{0%{opacity:1;stroke-dashoffset:240}34%{opacity:1;stroke-dashoffset:0}71%{opacity:1;stroke-dashoffset:0}86%{opacity:0;stroke-dashoffset:0}to{opacity:0;stroke-dashoffset:240}}@keyframes fade-loop-back{0%{opacity:0}11%{opacity:.5}71%{opacity:.5}86%{opacity:0}to{opacity:0}}@keyframes draw-loop-edges{0%{opacity:0;stroke-dashoffset:120}23%{opacity:1;stroke-dashoffset:120}51%{opacity:1;stroke-dashoffset:0}71%{opacity:1;stroke-dashoffset:0}86%{opacity:0;stroke-dashoffset:0}to{opacity:0;stroke-dashoffset:120}}.splash-mode-b .splash-title{margin-bottom:28px;text-align:center}.splash-mode-b .title-main{color:var(--splash-text);display:block;font-size:26px;font-weight:600;letter-spacing:2px;margin-bottom:6px;text-transform:uppercase}.splash-mode-b .title-sub{color:var(--splash-primary);display:block;font-size:11px;letter-spacing:4px;text-transform:uppercase}.splash-mode-b .splash-progress-wrap{margin-bottom:16px;width:100%}.splash-mode-b .progress-track{background:rgba(var(--splash-primary-rgb),.15);border-radius:2px;height:2px;margin-bottom:12px;overflow:hidden;width:100%}.splash-mode-b .progress-fill{background:var(--splash-primary);border-radius:2px;height:100%;transition:width .3s ease;width:0}.splash-mode-b .progress-info{display:flex;justify-content:space-between}.splash-mode-b .progress-status{color:var(--splash-text-muted);font-size:12px}.splash-mode-b .progress-pct{color:var(--splash-primary);font-family:Courier New,monospace;font-size:12px;font-weight:600}.splash-mode-c{flex-direction:column}.splash-mode-c .splash-content{align-items:center;display:flex;flex-direction:column;max-width:90vw;position:relative;width:320px;z-index:1}.splash-mode-c .splash-ring-wrap{height:160px;margin-bottom:28px;position:relative;width:160px}.splash-mode-c .ring-svg{height:160px;transform:rotate(-90deg);width:160px}.splash-mode-c .ring-track{fill:none;stroke:rgba(var(--splash-primary-rgb),.12);stroke-width:6}.splash-mode-c .ring-fill{fill:none;stroke:var(--splash-primary);stroke-dasharray:446;stroke-dashoffset:446;stroke-linecap:round;stroke-width:6;transition:stroke-dashoffset .4s ease}.splash-mode-c .ring-center{align-items:center;display:flex;flex-direction:column;gap:2px;inset:0;justify-content:center;position:absolute}.splash-mode-c .ring-pct{color:var(--splash-text);font-family:Courier New,monospace;font-size:32px;font-weight:700;line-height:1}.splash-mode-c .ring-label{color:var(--splash-text-muted);font-size:10px;letter-spacing:2px;text-transform:uppercase}.splash-mode-c .splash-title{margin-bottom:20px;text-align:center}.splash-mode-c .title-main{color:var(--splash-text);display:block;font-size:22px;font-weight:600;letter-spacing:1px;margin-bottom:4px}.splash-mode-c .title-sub{color:var(--splash-primary);display:block;font-size:10px;letter-spacing:4px;text-transform:uppercase}.splash-mode-c .progress-status{color:var(--splash-text-muted);font-size:12px;text-align:center}.splash-error-overlay{align-items:center;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:rgba(var(--splash-primary-rgb),.05);display:flex;inset:0;justify-content:center;position:absolute;z-index:10}@media(prefers-reduced-motion:reduce){.splash-mode-a .cad-cube,.splash-mode-a .splash-bg-grid,.splash-mode-b .wf-box-back-hidden,.splash-mode-b .wf-box-back-solid,.splash-mode-b .wf-box-front,.splash-mode-b .wf-edges-back,.splash-mode-b .wf-edges-front{animation:none!important}.splash-mode-b .wf-box-front,.splash-mode-b .wf-edges-front{opacity:1;stroke-dashoffset:0}.splash-mode-b .wf-box-back-hidden,.splash-mode-b .wf-box-back-solid,.splash-mode-b .wf-edges-back{opacity:.5}}@media(max-width:480px){.splash-mode-a .title-main,.splash-mode-b .title-main{font-size:20px}.splash-mode-c .title-main{font-size:18px}.splash-mode-a .cad-cube{--cube-size:56px}}.custom-tooltip{background:#fff!important;border:1px solid rgba(0,0,0,.12);border-radius:8px;box-shadow:0 4px 20px #0000001f,0 2px 8px #00000014;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;isolation:isolate;max-width:240px;min-width:160px;opacity:0;padding:10px 14px;pointer-events:none;position:fixed;transition:opacity .15s cubic-bezier(.4,0,.2,1);visibility:hidden;will-change:auto;z-index:2147483647!important}.custom-tooltip:before{border-color:transparent #fff transparent transparent;border-style:solid;border-width:6px 10px 6px 0;content:"";height:0;left:-10px;position:absolute;top:50%;transform:translateY(-50%);width:0}.custom-tooltip.tooltip-left:before{border-color:transparent transparent transparent #fff;border-width:6px 0 6px 10px;left:auto;right:-10px}.tooltip-header{gap:8px;margin-bottom:6px}.tooltip-header,.tooltip-icon{align-items:center;display:flex}.tooltip-icon{flex-shrink:0;height:20px;justify-content:center;width:20px}.tooltip-icon svg{height:100%;width:100%}.tooltip-icon svg:not([fill=none]){fill:currentColor}.tooltip-icon svg[fill=none]{fill:none!important;stroke:currentColor}.tooltip-title{color:#000000eb;flex:1;font-size:13px;font-weight:600;letter-spacing:.01em;line-height:1.4}.tooltip-hotkey{background:#0000000f;border-radius:4px;color:#000000a6;display:inline-block;font-family:Consolas,Monaco,monospace;margin-bottom:4px;padding:2px 6px}.tooltip-action,.tooltip-hotkey{font-size:10px;font-weight:500;line-height:1.4}.tooltip-action{color:#000000b8;margin-bottom:0}.dark-theme .custom-tooltip,[data-theme=dark] .custom-tooltip{background:#202020!important;border:1px solid hsla(0,0%,100%,.12);box-shadow:0 4px 20px #0006,0 2px 8px #0000004d}.dark-theme .custom-tooltip:before,[data-theme=dark] .custom-tooltip:before{border-color:transparent #202020 transparent transparent}.dark-theme .custom-tooltip.tooltip-left:before,[data-theme=dark] .custom-tooltip.tooltip-left:before{border-color:transparent transparent transparent #202020}.dark-theme .tooltip-icon,[data-theme=dark] .tooltip-icon{color:#ffffffe6}.dark-theme .tooltip-title,[data-theme=dark] .tooltip-title{color:#fffffff2}.dark-theme .tooltip-hotkey,[data-theme=dark] .tooltip-hotkey{background:#ffffff1a;color:#ffffffb3}.dark-theme .tooltip-action,[data-theme=dark] .tooltip-action{color:#fffc}
