/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.relative{position:relative}.start{inset-inline-start:var(--spacing)}.table{display:table}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--ink:#f5eedf;--muted:#efe8d8a6;--amber:#d8b276;--coral:#bd6f5b;--night:#07111f;--panel:#070e18c7;--line:#efe1c430}*{box-sizing:border-box}html,body{background:var(--night);min-height:100%;color:var(--ink);margin:0}body{font-family:Pretendard,Apple SD Gothic Neo,Noto Sans KR,system-ui,sans-serif;overflow-x:hidden}button,input{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible{outline:2px solid var(--amber);outline-offset:3px}.title-screen,.game-screen,.ending-screen{isolation:isolate;width:100%;min-height:100svh;position:relative;overflow:hidden}.title-screen{align-items:center;padding:clamp(32px,7vw,108px);display:flex}.title-montage,.montage-frame,.scene-background,.scene-vignette,.rain-layer,.ending-wash{position:absolute;inset:0}.title-montage{z-index:-4;background:#07111f}.montage-frame{opacity:0;background-position:50%;background-size:cover;animation:49s linear infinite titleMontage;transform:scale(1.05)}.montage-frame:first-child{opacity:1}@keyframes titleMontage{0%{opacity:0;transform:scale(1.07)}2.5%,12%{opacity:1}14.5%,to{opacity:0;transform:scale(1.015)}}.scene-vignette{z-index:-2;background:linear-gradient(90deg,#03080ff0 0%,#03080fba 35%,#03080f14 70%),linear-gradient(#0000 60%,#03070dad 100%),radial-gradient(circle at 70% 42%,#0000 30%,#02070e57 100%)}.rain-layer{z-index:-1;opacity:.25;pointer-events:none;mix-blend-mode:screen;background-image:repeating-linear-gradient(100deg,#0000 0 25px,#c0d6e238 26px,#0000 27px 56px);background-size:120px 180px;animation:1.4s linear infinite rainMove}.rain-layer.subtle{opacity:.11;z-index:1}@keyframes rainMove{0%{background-position:0 -180px}to{background-position:-18px 180px}}.title-content{z-index:2;width:min(590px,100%);animation:1.2s both riseIn;position:relative}@keyframes riseIn{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}.eyebrow{color:var(--amber);letter-spacing:.24em;margin:0 0 20px;font-size:11px;font-weight:700}.title-content h1,.ending-card h1{letter-spacing:-.07em;text-shadow:0 8px 40px #00000059;margin:0;font-family:Georgia,Noto Serif KR,Batang,serif;font-size:clamp(72px,10vw,144px);font-weight:500;line-height:.9}.title-sub{color:#f7eeddd1;letter-spacing:.38em;margin:19px 0 34px 7px;font-family:Georgia,Noto Serif KR,Batang,serif;font-size:clamp(18px,2vw,27px)}.title-copy{color:#f1eadcc4;margin:0 0 27px 4px;font-family:Georgia,Noto Serif KR,Batang,serif;font-size:15px;line-height:1.85}.title-meta{color:#f1e9d88a;letter-spacing:.08em;align-items:center;gap:12px;margin:0 0 30px 4px;font-size:11px;display:flex}.title-meta i{background:var(--amber);opacity:.55;border-radius:50%;width:3px;height:3px}.title-actions{align-items:stretch;gap:10px;margin-bottom:18px;display:flex}.title-actions>button{min-height:58px}.primary-button,.ghost-button{cursor:pointer;border:1px solid #e1c7956e;border-radius:2px;padding:14px 22px;transition:transform .18s,background .18s,border-color .18s}.primary-button{color:#15120e;background:#d6b16f;font-weight:750;box-shadow:0 14px 38px #0003}.primary-button:hover{background:#e5c585;transform:translateY(-2px)}.ghost-button{color:#f7efdfe0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#050c1470}.ghost-button:hover{border-color:var(--amber);background:#161d26b8;transform:translateY(-2px)}.primary-button span,.primary-button small{display:block}.primary-button small{opacity:.58;margin-top:4px;font-size:10px;font-weight:650}.resume-box{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#02080f6b;border:1px solid #e4d1ae29;width:min(385px,100%);padding:15px 16px}.resume-box label{color:#f0e6d28f;letter-spacing:.13em;margin-bottom:9px;font-size:10px;display:block}.resume-row{gap:8px;display:flex}.resume-row input{width:100%;color:var(--ink);letter-spacing:.16em;text-transform:uppercase;background:0 0;border:0;border-bottom:1px solid #e9d9bb57;padding:8px 3px;font-family:ui-monospace,monospace}.resume-row input::placeholder{color:#eee2cc45}.resume-row button{cursor:pointer;min-width:67px;color:var(--amber);background:#d8b27617;border:1px solid #d8b2765c}.resume-row button:disabled{opacity:.5}.form-error{color:#e8a38f;margin:9px 0 0;font-size:11px;line-height:1.5}.title-foot{z-index:2;color:#f1e8d761;letter-spacing:.12em;margin:0;font-size:10px;position:absolute;bottom:25px;left:clamp(32px,7vw,108px)}.game-screen{cursor:pointer;background:#08111d}.scene-background{z-index:0;background-position:50%;background-size:cover;animation:9s ease-out both sceneReveal}@keyframes sceneReveal{0%{opacity:.5;filter:blur(3px);transform:scale(1.045)}to{opacity:1;filter:none;transform:scale(1.008)}}.game-screen .scene-vignette{z-index:2;background:linear-gradient(#03080f85 0%,#0000 25% 54%,#02060cdb 100%),radial-gradient(circle,#0000 44%,#01050a54 100%)}.tone-warm .scene-background{filter:saturate(.93)sepia(.04)}.tone-reveal .scene-background{filter:saturate(.82)contrast(1.06)}.tone-dawn .scene-background{filter:saturate(.9)brightness(1.02)}.game-header{z-index:5;background:linear-gradient(#02070db8,#0000);grid-template-columns:minmax(180px,1fr) minmax(100px,420px) minmax(350px,1fr);align-items:center;gap:24px;padding:18px 28px;display:grid;position:absolute;top:0;left:0;right:0}.game-header button{cursor:pointer;background:0 0;border:0}.brand-button{text-align:left;align-items:baseline;gap:14px;display:flex}.brand-button b{letter-spacing:-.04em;font-family:Georgia,Noto Serif KR,serif;font-size:22px;font-weight:500}.brand-button span{color:#f1e8d78f;font-size:10px}.journey-progress{background:#efe0c538;height:1px}.journey-progress i{background:var(--amber);height:1px;box-shadow:0 0 10px var(--amber);transition:width .6s;display:block}.game-header nav{justify-content:flex-end;align-items:center;gap:4px;display:flex}.game-header nav button{color:#f4ebda8c;letter-spacing:.09em;padding:8px 9px;font-size:9px;font-weight:700}.game-header nav button:hover,.game-header nav button.active{color:var(--amber)}.game-header nav .ticket-mini{color:var(--amber);border:1px solid #d8b2765c;margin-left:5px;padding-inline:13px}.location-chip{z-index:4;color:#f7eeddb3;letter-spacing:.12em;text-shadow:0 2px 9px #000;align-items:center;gap:9px;font-size:10px;display:flex;position:absolute;top:88px;left:29px}.location-chip span{color:var(--amber)}.location-chip i{background:#ecdbbb66;width:18px;height:1px}.dialogue-area{z-index:5;width:min(1000px,100% - 44px);position:absolute;bottom:clamp(18px,4vh,48px);left:50%;transform:translate(-50%)}.dialogue-box{-webkit-backdrop-filter:blur(18px)saturate(.85);backdrop-filter:blur(18px)saturate(.85);cursor:pointer;background:linear-gradient(100deg,#040b13e8,#050c14c2);border-top:1px solid #e1c5916e;min-height:178px;padding:25px 73px 27px 31px;position:relative;box-shadow:0 24px 80px #00000061}.dialogue-box:before{content:"";background:var(--amber);width:3px;height:45px;position:absolute;top:0;left:0}.speaker-row{justify-content:space-between;align-items:center;gap:15px;margin-bottom:17px;display:flex}.speaker-row strong{color:var(--amber);letter-spacing:.12em;font-size:13px}.speaker-row span{color:#f2e8d64d;letter-spacing:.15em;font:9px ui-monospace,monospace}.dialogue-box>p{color:#faf4e8ed;letter-spacing:.01em;text-wrap:pretty;margin:0;font-family:Georgia,Noto Serif KR,Batang,serif;font-size:clamp(16px,1.35vw,20px);line-height:1.9;animation:.5s both dialogueIn}.dialogue-box>p.aside{color:#f0e7d7ad;font-style:italic}@keyframes dialogueIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}.next-cue{width:34px;height:34px;color:var(--amber);cursor:pointer;background:#d8b2760f;border:1px solid #d8b2763d;border-radius:50%;font-size:19px;animation:1.5s ease-in-out infinite cue;position:absolute;bottom:22px;right:24px}@keyframes cue{50%{opacity:.55;transform:translateY(4px)}}.bottom-tools{justify-content:flex-end;align-items:center;gap:10px;height:29px;padding-right:3px;display:flex}.bottom-tools button{color:#efe4d161;cursor:pointer;background:0 0;border:0;font-size:9px}.bottom-tools button:hover{color:var(--amber)}.sync-dot{background:#f4ebda40;border-radius:50%;width:5px;height:5px}.sync-dot.saved{background:#9ac5a9;box-shadow:0 0 7px #9ac5a9}.sync-dot.saving{background:var(--amber);animation:1s infinite pulse}.sync-dot.offline{background:#c07a6c}@keyframes pulse{50%{opacity:.5}}.choices-panel{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#040b13d4;border-top:1px solid #e1c5916e;padding:22px}.choices-panel>p{text-align:center;color:#f4ebda94;letter-spacing:.1em;margin:0 0 15px;font-size:11px}.choices-panel>div{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.choices-panel button{cursor:pointer;text-align:left;background:#efe0c409;border:1px solid #e5d2b233;min-height:96px;padding:16px;transition:transform .18s,background .18s,border-color .18s}.choices-panel button:hover{border-color:var(--amber);background:#d8b2761a;transform:translateY(-3px)}.choices-panel button span,.choices-panel button small{display:block}.choices-panel button span{font-family:Georgia,Noto Serif KR,serif;font-size:14px;line-height:1.5}.choices-panel button small{color:#f2e8d66e;margin-top:8px;font-size:10px;line-height:1.4}.modal-backdrop{z-index:20;-webkit-backdrop-filter:blur(13px);backdrop-filter:blur(13px);cursor:default;background:#01050ab8;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.game-modal{background:linear-gradient(145deg,#0b1520fa,#050c14fa);border:1px solid #e4cfa938;border-top-color:#d8b276b3;width:min(720px,100%);max-height:min(780px,100svh - 44px);padding:clamp(27px,5vw,48px);position:relative;overflow-y:auto;box-shadow:0 30px 100px #0000008c}.game-modal h2{letter-spacing:-.04em;margin:0 0 25px;font-family:Georgia,Noto Serif KR,serif;font-size:clamp(27px,4vw,40px);font-weight:500}.modal-close{color:#f4ebda8c;cursor:pointer;background:0 0;border:0;width:37px;height:37px;font-size:25px;position:absolute;top:13px;right:16px}.modal-copy{color:#f1e7d499;font-size:12px;line-height:1.75}.modal-primary{width:100%;margin-top:15px}.ticket-card{background:linear-gradient(135deg,#d8b27624,#d8b27606);border:1px solid #ddbe8a61;padding:28px;position:relative;overflow:hidden}.ticket-card:after{content:"";background:#09131f;border-left:1px solid #ddbe8a61;border-radius:50%;width:22px;height:22px;position:absolute;top:calc(50% - 11px);right:-12px}.ticket-label{color:#f1e5cf75;letter-spacing:.16em;margin-bottom:13px;font-size:9px;display:block}.ticket-card strong{letter-spacing:.13em;color:var(--amber);font:clamp(27px,6vw,48px) ui-monospace,monospace}.ticket-route{color:#f2e8d694;align-items:center;gap:12px;margin-top:22px;font-size:10px;display:flex}.ticket-route i{background:#ddbe8a4d;flex:1;height:1px}.sync-line{color:#f1e6d36b;justify-content:center;align-items:center;gap:7px;margin-top:12px;font-size:10px;display:flex}.sync-line span{background:currentColor;border-radius:50%;width:5px;height:5px}.sync-line.saved{color:#93bca2}.sync-line.offline{color:#cc8673}.archive-grid{grid-template-columns:repeat(2,1fr);gap:9px;display:grid}.memory-card{background:#ebdbbe09;border:1px solid #e3d0b02b;min-height:123px;padding:15px}.memory-card>span{color:var(--amber);font:9px ui-monospace,monospace}.memory-card h3{margin:12px 0 5px;font-family:Georgia,Noto Serif KR,serif;font-size:14px}.memory-card p{color:#eee3d078;margin:0;font-size:10px;line-height:1.55}.memory-card.locked{opacity:.3;filter:grayscale()}.choice-memories{border-top:1px solid var(--line);margin-top:22px;padding-top:16px}.choice-memories h3{color:var(--amber);font:15px Georgia,Noto Serif KR,serif}.choice-memories p{color:#f1e7d491;font:12px/1.6 Georgia,Noto Serif KR,serif}.dialogue-log{gap:1px;max-height:510px;padding-right:8px;display:grid;overflow-y:auto}.dialogue-log>div{border-bottom:1px solid #e5d3b417;grid-template-columns:85px 1fr;gap:15px;padding:13px 0;display:grid}.dialogue-log strong{color:var(--amber);font-size:10px}.dialogue-log p{color:#f2e8d6ad;margin:0;font:12px/1.65 Georgia,Noto Serif KR,serif}.route-map{gap:0;padding:8px 0;display:grid}.route-map>div{color:#f1e7d442;gap:18px;min-height:72px;display:flex;position:relative}.route-map>div:not(:last-child):before{content:"";background:#dec69e2e;width:1px;position:absolute;top:20px;bottom:0;left:7px}.route-map i{z-index:1;background:#0a1420;border:1px solid;border-radius:50%;flex:0 0 15px;width:15px;height:15px;position:relative}.route-map span{font:16px Georgia,Noto Serif KR,serif}.route-map small{color:#f2e8d64d;margin-top:5px;font:9px/1.4 Pretendard,sans-serif;display:block}.route-map .reached{color:#f4ebdabf}.route-map .active{color:var(--amber)}.route-map .active i{box-shadow:0 0 15px var(--amber)}.help-list{gap:1px;display:grid}.help-list p{color:#f2e8d68c;border-bottom:1px solid #e5d3b41a;align-items:center;min-height:50px;margin:0;padding:10px 0;font-size:11px;display:flex}.help-list span{margin-left:auto}kbd,.help-list b{min-width:48px;color:var(--amber);text-align:center;border:1px solid #e5d3b42e;margin-right:5px;padding:5px 8px;font:9px ui-monospace,monospace}.ending-screen{background-position:50%;background-size:cover;place-items:center;padding:38px;display:grid}.ending-wash{z-index:-1;background:linear-gradient(90deg,#070c11f0,#070c11a8 48%,#070c112b),linear-gradient(#0000,#070c1185)}.ending-card{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#050a109e;border-left:1px solid #ddb57591;width:min(640px,100%);margin-right:32%;padding:45px;animation:1.2s both riseIn}.ending-card h1{letter-spacing:-.06em;font-size:clamp(42px,7vw,75px);line-height:1.05}.ending-card blockquote{color:var(--amber);margin:30px 0 18px;font:clamp(16px,2vw,21px)/1.7 Georgia,Noto Serif KR,serif}.ending-card>p{color:#f4ebdbad;font:13px/1.85 Georgia,Noto Serif KR,serif}.ending-stats{flex-wrap:wrap;gap:7px;margin:24px 0;display:flex}.ending-stats span{color:#f2e8d680;border:1px solid #e2cca826;padding:7px 10px;font-size:9px}.ending-actions{gap:9px;display:flex}@media (width<=900px){.title-screen{align-items:flex-end;padding-bottom:72px}.title-content h1{font-size:clamp(67px,21vw,110px)}.title-sub{letter-spacing:.24em}.game-header{grid-template-columns:1fr auto;padding:14px 16px}.journey-progress,.game-header nav button:nth-child(-n+3),.brand-button span{display:none}.location-chip{top:66px;left:17px}.dialogue-area{width:calc(100% - 20px);bottom:10px}.choices-panel>div{grid-template-columns:1fr}.choices-panel button{min-height:74px}.ending-card{margin-right:0}}@media (width<=620px){.title-screen{padding:24px 22px 62px}.title-copy{font-size:13px}.title-actions{flex-direction:column}.title-actions>button{width:100%}.title-meta{flex-wrap:wrap}.title-foot{font-size:8px;bottom:18px;left:22px}.scene-vignette{background:linear-gradient(#03080f24 28%,#03080ff0),radial-gradient(circle,#0000,#02070e40)}.scene-background{background-position:58%}.game-screen .scene-vignette{background:linear-gradient(#03080f61,#0000 30% 48%,#02060cf2 100%)}.dialogue-box{min-height:210px;padding:22px 45px 25px 21px}.dialogue-box>p{font-size:15px;line-height:1.82}.next-cue{bottom:14px;right:11px}.game-header nav .ticket-mini{padding-inline:8px}.archive-grid{grid-template-columns:1fr}.game-modal{padding:28px 21px}.dialogue-log>div{grid-template-columns:65px 1fr}.ending-screen{align-items:end;padding:18px}.ending-card{padding:28px 22px}.ending-actions{flex-direction:column}.ticket-card{padding:20px}.ticket-card strong{letter-spacing:.07em}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
