*{box-sizing:border-box}:root{--ink:#e8eef0;--muted:#8a9aa0;--accent:#9fc3cf;--box:#0a0f11;--box-h:150px;--line:#9fc3cf40;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html,body,#root{height:100%;color:var(--ink);overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;background:#000;margin:0;font-family:-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Pretendard,Malgun Gothic,sans-serif}button{font:inherit;cursor:pointer;color:inherit;border:0}button:disabled{cursor:default;opacity:.45}.stage{background:#000;width:100%;max-width:480px;height:100%;margin:0 auto;position:relative;overflow:hidden}.world{position:absolute;inset:0}.shake-a{animation:.45s ease-out shake-a}.shake-b{animation:.45s ease-out shake-b}@keyframes shake-a{0%,to{transform:translate(0)}15%{transform:translate(-6px,3px)}30%{transform:translate(5px,-4px)}45%{transform:translate(-4px,-2px)}60%{transform:translate(3px,3px)}80%{transform:translate(-1px,1px)}}@keyframes shake-b{0%,to{transform:translate(0)}15%{transform:translate(-6px,3px)}30%{transform:translate(5px,-4px)}45%{transform:translate(-4px,-2px)}60%{transform:translate(3px,3px)}80%{transform:translate(-1px,1px)}}.bg{background-position:50%;background-size:cover;transition:background .8s;position:absolute;inset:0}.ph-label{color:#ffffff73;font-size:12px;position:absolute;top:14px;right:14px}.char{bottom:calc(var(--box-h) + env(safe-area-inset-bottom,0px));justify-content:center;align-items:flex-end;width:70%;height:62%;animation:.4s fade-in;display:flex;position:absolute;transform:translate(-50%)}.char-left{left:30%}.char-center{width:92%;left:50%}.char-right{left:70%}.char img{object-fit:contain;object-position:bottom;width:100%;height:100%}.char-ph{width:100%;height:100%;position:relative}.char-ph svg{fill:#0000008c;stroke:#ffffff40;stroke-width:.8px;width:100%;height:100%}.char-ph span{text-align:center;color:#ffffffbf;font-size:13px;position:absolute;top:46%;left:0;right:0}.char-ph small{color:#ffffff73}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.cg{inset:0 0 calc(var(--box-h) + env(safe-area-inset-bottom,0px)) 0;background:#000;animation:.6s fade-in;position:absolute}.cg img{object-fit:cover;width:100%;height:100%}.cg-ph{text-align:center;color:#fff9;background:radial-gradient(circle at 50% 40%,#23343a,#000 75%);justify-content:center;align-items:center;padding:40px;line-height:1.6;display:flex;position:absolute;inset:0}.tray{opacity:0;background:#6b6f70;border-radius:2px;width:34px;height:14px;animation:1s ease-in forwards tray;position:absolute;bottom:170px;left:18px}@keyframes tray{0%{opacity:.85;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(22px)scale(.6)}}.alert{mix-blend-mode:multiply;pointer-events:none;background:#c8141459;animation:1.3s infinite alert;position:absolute;inset:0}@keyframes alert{0%,to{background:#c8141426}50%{background:#c8141480}}.white,.black{opacity:0;pointer-events:none;position:absolute;inset:0}.white{background:#fff;transition:opacity 4s}.white.on{opacity:.6}.black{background:#000;transition:opacity 1s}.black.on{opacity:1}.fxlayer{inset:0 0 calc(var(--box-h) + env(safe-area-inset-bottom,0px)) 0;pointer-events:none;z-index:12;position:absolute}.missile{width:36px;height:72px;animation:1.3s step-end forwards missile;position:absolute;top:1%;left:50%;transform:translate(-50%)}@keyframes missile{0%{top:1%}33%{top:15%}66%{top:29%}to{top:29%}}.blast{z-index:25;pointer-events:none;clip-path:circle(150% at 50% 40%);background:#fff;position:absolute;inset:0}.blast.on{animation:.7s step-end forwards blast}@keyframes blast{0%{clip-path:circle(7% at 50% 40%)}30%{clip-path:circle(24% at 50% 40%)}60%{clip-path:circle(150% at 50% 40%)}to{clip-path:circle(150% at 50% 40%)}}.blast.fade{animation:1.6s ease-in forwards blast-fade}@keyframes blast-fade{0%{opacity:1}to{opacity:0}}.title{letter-spacing:.5em;justify-content:center;align-items:center;padding-left:.5em;font-size:44px;font-weight:300;animation:3.2s ease-in-out forwards title;display:flex;position:absolute;inset:0}@keyframes title{0%{opacity:0}30%,70%{opacity:1}to{opacity:0}}.caption{letter-spacing:.1em;justify-content:center;align-items:center;font-size:18px;display:flex;position:absolute;inset:0}.box{height:calc(var(--box-h) + env(safe-area-inset-bottom,0px));padding:16px 20px calc(26px + env(safe-area-inset-bottom,0px));background:var(--box);border-top:1px solid var(--line);z-index:20;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.box-name{color:var(--accent);margin-bottom:8px;font-size:13px;font-weight:700}.box-text{white-space:pre-wrap;word-break:keep-all;font-size:16px;line-height:1.65}.box-narr .box-text{color:#c9d3d6;font-style:italic}.box-next{color:var(--muted);font-size:11px;animation:1.2s infinite blink;position:absolute;bottom:8px;right:16px}@keyframes blink{50%{opacity:.2}}.choices{z-index:30;background:#00000073;flex-direction:column;justify-content:center;gap:12px;padding:0 24px;display:flex;position:absolute;inset:0}.choices button{background:var(--box);border:1px solid var(--accent);word-break:keep-all;border-radius:10px;padding:16px;font-size:15px;line-height:1.5}.call{background:#0b0f10;border:1px solid #ffffff26;border-radius:14px;width:58%;animation:.4s fade-in;position:absolute;top:56px;right:16px;overflow:hidden;box-shadow:0 10px 30px #0009}.call-head{color:#7fd18b;background:#ffffff0d;padding:7px 10px;font-size:11px}.call-body{aspect-ratio:3/4}.call-body img{object-fit:cover;width:100%;height:100%}.call-ph{color:#ffffffbf;background:linear-gradient(#1c2a33,#0b1014);flex-direction:column;justify-content:center;align-items:center;gap:4px;height:100%;display:flex}.call-ph small{color:#ffffff73}.device{word-break:keep-all;color:#8ff0c8;text-align:center;z-index:10;background:#041210eb;border:1px solid #6ee6be59;border-radius:10px;padding:18px 16px;font-family:ui-monospace,Consolas,monospace;font-size:15px;line-height:1.7;animation:.3s fade-in;position:absolute;top:22%;left:12px;right:12px}.chat{color:#111;z-index:10;background:#f2f3f5;border-radius:18px;flex-direction:column;gap:8px;width:78%;padding:12px;display:flex;position:absolute;top:48px;left:50%;transform:translate(-50%);box-shadow:0 10px 40px #0009}.chat-head{text-align:center;border-bottom:1px solid #ddd;padding-bottom:6px;font-size:13px;font-weight:700}.bubble{background:#fff;border-radius:14px;align-self:flex-start;max-width:82%;padding:8px 12px;font-size:14px;line-height:1.45;animation:.25s fade-in}.bubble.me{background:#ffe14d;align-self:flex-end}.chat-tap{text-align:center;color:#999;font-size:11px}.ix-dim{z-index:40;background:#0000008c;justify-content:center;align-items:center;padding:16px;display:flex;position:absolute;inset:0}.doc{color:#222;background:#f4f1ea;border-radius:4px;width:100%;max-height:86%;padding:20px 18px;overflow:auto;box-shadow:0 12px 40px #0009}.doc-head{color:#777;border-bottom:1px solid #ccc;justify-content:space-between;margin-bottom:14px;padding-bottom:8px;font-size:11px;display:flex}.doc h3{margin:0 0 10px;font-size:15px}.doc p{word-break:keep-all;margin:0 0 8px;font-size:14px;line-height:1.7}.doc-detail{color:#555;background:#e2ddd2;border-radius:4px;padding:4px 10px;font-size:12px}.sign{border-bottom:1px solid #555;margin:16px 0 12px;position:relative}.sign canvas{touch-action:none;width:100%;height:90px;display:block}.sign-label{color:#999;pointer-events:none;font-size:11px;position:absolute;bottom:4px;left:0}.sign-done{border-bottom-color:#1a2a6c}.doc-next{color:#fff;background:#2b3a40;border-radius:6px;width:100%;margin-top:8px;padding:12px;font-size:14px}.ix-dim .box{z-index:50}.panel{border:1px solid var(--line);background:#0a1214f2;border-radius:12px;flex-direction:column;gap:10px;width:100%;padding:18px;display:flex}.panel-title{color:var(--accent);margin-bottom:4px;font-size:14px}.check{text-align:left;background:#ffffff0d;border-radius:8px;align-items:center;gap:12px;padding:14px;font-size:15px;display:flex}.lamp{background:#444;border-radius:50%;width:12px;height:12px}.check-on .lamp{background:#3ddc84;box-shadow:0 0 8px #3ddc84}.check-state{color:var(--muted);margin-left:auto;font-size:12px}.check-on .check-state{color:#3ddc84}.panel-go{background:var(--accent);color:#0b1214;border-radius:8px;margin-top:6px;padding:14px;font-weight:700}.ix-hold{flex-direction:column;gap:24px}.hold-hint{color:var(--muted);font-size:14px}.hold{touch-action:none;border-radius:50%;width:150px;height:150px;padding:8px}.hold span{letter-spacing:.2em;background:#b3261e;border-radius:50%;justify-content:center;align-items:center;width:100%;height:100%;font-size:20px;font-weight:700;display:flex;box-shadow:inset 0 -6px #0000004d}.menu{background:radial-gradient(circle at 50% 35%,#16252a,#000 70%);flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:24px;display:flex}.menu h1{letter-spacing:.5em;margin:0;padding-left:.5em;font-size:40px;font-weight:300}.menu-sub{color:var(--muted);margin:0 0 30px;font-size:13px}.menu button{background:var(--accent);color:#0b1214;border-radius:10px;width:220px;padding:14px;font-weight:700}.menu .menu-ghost{border:1px solid var(--accent);color:var(--accent);background:0 0}.menu-hint{color:var(--muted);margin-top:30px;font-size:12px}.char img,.call-body img,.cg img,.bg{image-rendering:pixelated}.back{left:12px;top:calc(env(safe-area-inset-top,0px) + 10px);z-index:35;border:1px solid var(--line);color:var(--muted);background:#0a0f11bf;border-radius:16px;padding:7px 12px;font-size:12px;position:absolute}.card{border:1px solid var(--line);background:#ffffff0f;border-radius:8px;padding:16px;animation:.18s ease-out card-in}@keyframes card-in{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:none}}.card-row{justify-content:space-between;align-items:baseline;display:flex}.card-name{font-size:17px;font-weight:700}.card-age{color:var(--accent);font-variant-numeric:tabular-nums;font-size:15px}.card-part{color:var(--muted);margin-top:6px;font-size:14px}.card-note{color:var(--muted);margin-top:4px;font-size:12px}.card-stat{text-align:center;font-size:16px;line-height:1.8}.menu-chapters{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:10px;display:flex}.menu .menu-chip{border:1px solid var(--line);width:auto;color:var(--muted);background:0 0;border-radius:16px;padding:8px 14px;font-size:13px;font-weight:400}.article{color:#1c1c1c;background:#f7f5f0;border-radius:4px;width:100%;max-height:86%;padding:20px 18px;overflow:auto;box-shadow:0 12px 40px #0009}.article-tag{color:#b3261e;margin-bottom:6px;font-size:11px;font-weight:700}.article h2{word-break:keep-all;text-wrap:balance;margin:0 0 8px;font-size:21px;line-height:1.35}.article-sub{color:#666;margin-bottom:14px;font-size:13px}.article p{word-break:keep-all;margin:0 0 10px;font-size:14px;line-height:1.7}.article-foot{color:#b9b6ae;margin:18px 0 6px;font-size:10px;line-height:1.5}.spec{border:1px solid var(--line);background:#0a1214f5;border-radius:12px;flex-direction:column;gap:6px;width:100%;max-height:92%;padding:16px;display:flex;overflow:auto}.spec-row{color:#6b7a7f;border-bottom:1px solid #ffffff0d;justify-content:space-between;gap:12px;padding:4px 0;font-size:13px;display:flex}.spec-ask{color:var(--ink);font-weight:700}.spec-ask.blink span:last-child{color:#ffb45a;animation:1s infinite blink}.spec-cards{grid-template-columns:1fr 1fr;gap:8px;margin-top:6px;display:grid}.spec-card{border:1px solid var(--line);text-align:left;background:#ffffff0d;border-radius:8px;flex-direction:column;gap:4px;min-width:0;padding:10px;display:flex}.spec-card.on{border-color:var(--accent);background:#9fc3cf24}.spec-card-title{font-size:14px;font-weight:700}.spec-card-desc{color:var(--muted);word-break:keep-all;margin-bottom:4px;font-size:11px;line-height:1.4}.spec-card-row{font-variant-numeric:tabular-nums;justify-content:space-between;gap:6px;font-size:11px;display:flex}.spec-card-row span:first-child{color:var(--muted)}.spec-voice{word-break:keep-all;background:#ffffff0a;border-radius:6px;padding:8px 10px;font-size:13px;line-height:1.5}.spec-voice b{color:var(--accent);margin-right:4px}.dt-hint{color:var(--muted);font-size:13px}.dt-wrap{overflow-x:auto}.dt{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:12px}.dt th,.dt td{text-align:left;word-break:keep-all;border-bottom:1px solid #ffffff14;padding:8px 6px}.dt th{color:var(--muted);font-size:11px;font-weight:400}.dt td{cursor:pointer}.dt .hit{color:#ffb45a;background:#ffb45a1a;font-weight:700}.dt .miss{animation:.35s shake-a}.paper-wrap{inset:0 0 calc(var(--box-h) + env(safe-area-inset-bottom,0px)) 0;pointer-events:none;z-index:11;justify-content:center;align-items:center;padding:16px;animation:.4s fade-in;display:flex;position:absolute}.paper{transform:rotate(-1.2deg)}.sign-img{object-fit:contain;width:100%;height:90px;display:block}.sign-fallback{color:#1a2a6c;align-items:center;height:90px;padding-left:24px;font-family:Nanum Pen Script,Segoe Script,cursive;font-size:34px;font-style:italic;display:flex}.cg-log{left:10px;bottom:calc(var(--box-h) + env(safe-area-inset-bottom,0px) + 8px);color:#8ff0c88c;z-index:12;pointer-events:none;background:#00000059;max-width:70%;padding:3px 6px;font-family:ui-monospace,Consolas,monospace;font-size:8px;line-height:1.4;position:absolute}.credits{z-index:26;pointer-events:none;background:linear-gradient(#0000008c,#0000008c);position:absolute;inset:0;overflow:hidden}.credits-roll{text-align:center;color:#e8eef0;font-size:15px;line-height:2.2;animation-name:credits;animation-timing-function:linear;animation-fill-mode:forwards;position:absolute;top:100%;left:0;right:0}.credits-gap{height:2.2em}@keyframes credits{0%{transform:translateY(0)}to{transform:translateY(calc(-100% - 100vh))}}.records{background:#050708;flex-direction:column;gap:12px;padding:16px;display:flex}.records-head{color:var(--accent);justify-content:space-between;align-items:center;font-size:14px;display:flex}.records-head button{border:1px solid var(--line);color:var(--muted);background:0 0;border-radius:14px;padding:6px 12px;font-size:12px}.records-tabs{gap:6px;display:flex}.records-tabs button{border:1px solid var(--line);color:var(--muted);background:0 0;border-radius:6px;flex:1;padding:8px 0;font-size:13px}.records-tabs button.on{border-color:var(--accent);color:var(--accent)}.records-locked{color:var(--muted);flex:1;justify-content:center;align-items:center;margin:0;font-size:14px;display:flex}.records-doc{border:1px solid var(--line);word-break:keep-all;background:#0b0f11;border-radius:8px;flex-direction:column;flex:1;gap:8px;min-height:0;padding:16px;font-size:14px;line-height:1.6;display:flex;overflow-y:auto}.records-doc h3{margin:0 0 4px;font-size:17px}.records-doc p{margin:0}.records-source{color:var(--muted);font-size:11px}.records-table{border-collapse:collapse;width:100%;font-size:12px}.records-table th,.records-table td{border-bottom:1px solid var(--line);text-align:left;padding:6px 4px}.records-table th{color:var(--muted);font-weight:400}.records-emphasis{color:var(--accent);text-align:center;font-size:20px;font-weight:700;margin-top:16px!important}.records-nav{color:var(--muted);justify-content:space-between;align-items:center;font-size:13px;display:flex}.records-nav button{border:1px solid var(--line);color:var(--ink);background:0 0;border-radius:14px;padding:8px 18px}.records-nav button:disabled{opacity:.3}.records-video{aspect-ratio:4/3;background:#000;border-radius:8px;position:relative;overflow:hidden}.records-video img{object-fit:cover;width:100%;height:100%;image-rendering:pixelated}.records-log{color:#8ff0c88c;text-align:left;background:#00000059;max-width:70%;padding:3px 6px;font-family:ui-monospace,Consolas,monospace;font-size:8px;position:absolute;bottom:10px;left:10px}.records-hint{color:var(--muted);text-align:center;margin:0;font-size:12px}.records-zoom{z-index:30;background:#000000d9;justify-content:center;align-items:center;padding:24px;display:flex;position:absolute;inset:0}.records-zoom div{color:#8ff0c8;word-break:keep-all;background:#041210eb;border:1px solid #6ee6be59;border-radius:8px;padding:18px;font-family:ui-monospace,Consolas,monospace;font-size:15px;line-height:1.7}.saved-toast{top:calc(50px + env(safe-area-inset-top,0px));z-index:60;color:#dfe7ea;pointer-events:none;background:#00000073;border-radius:10px;padding:3px 8px;font-size:11px;animation:1.4s forwards saved-toast;position:absolute;right:12px}@keyframes saved-toast{0%,70%{opacity:1}to{opacity:0}}.menu-open{right:12px;top:calc(env(safe-area-inset-top,0px) + 10px);z-index:70;border:1px solid var(--line);color:var(--muted);background:#0a0f11bf;border-radius:16px;padding:7px 12px;font-size:12px;position:absolute}.game-menu{z-index:80;background:#000c}.game-menu-hint{color:var(--muted);text-align:center;word-break:keep-all;font-size:12px;line-height:1.6}.menu .choices{align-items:center}.menu .choices button{width:100%;max-width:280px;margin:0}
