.conv-root{cursor:pointer;flex-direction:column;justify-content:flex-end;display:flex;position:absolute;inset:0}.conv-window{border-radius:4px;min-height:240px;margin:0 120px 48px;padding:44px 56px 36px;font-size:34px;line-height:1.9;transition:background .4s,color .4s;position:relative}.conv-window.layer-front{font-family:var(--font-front);background:#e8dcc8eb;background:color-mix(in srgb, var(--paper) 92%, transparent);color:#241d16;border:1px solid #f2a15466;border-color:color-mix(in srgb, var(--candle) 40%, transparent);box-shadow:0 0 60px #f2a1541f}.conv-window.layer-back{font-family:var(--font-back);color:var(--crt-green);border:1px solid #47f09a59;border-color:color-mix(in srgb, var(--crt-green) 35%, transparent);text-shadow:0 0 6px color-mix(in srgb, var(--crt-green) 55%, transparent);background:#040806eb}.conv-window.layer-back:after{content:"";pointer-events:none;border-radius:inherit;background:repeating-linear-gradient(#0000 0 2px,#00000038 2px 4px);position:absolute;inset:0}.speaker-plate{letter-spacing:.2em;border-radius:2px;padding:6px 26px;font-size:26px;position:absolute;top:-22px;left:32px}.layer-front .speaker-plate{font-family:var(--font-front);background:var(--ink-purple);color:var(--candle);border:1px solid var(--candle)}.layer-back .speaker-plate{font-family:var(--font-back);color:var(--crt-green);border:1px solid var(--crt-green);background:#000}.bouten{font-style:normal;text-emphasis:sesame}ruby>rt{font-size:.45em}.advance-cursor{opacity:.7;font-size:24px;animation:1.1s ease-in-out infinite convBlink;position:absolute;bottom:18px;right:28px}@keyframes convBlink{0%,to{opacity:.15}50%{opacity:.85}}.conv-choices{flex-direction:column;gap:20px;width:720px;display:flex;position:absolute;bottom:340px;left:50%;transform:translate(-50%)}.conv-choice{font-size:30px;font-family:var(--font-front);text-align:center;background:#15121e;background:color-mix(in srgb, var(--ink-purple) 80%, black);color:var(--paper);border:1px solid #e8dcc873;border-color:color-mix(in srgb, var(--paper) 45%, transparent);cursor:pointer;border-radius:3px;padding:20px 32px;transition:background .2s,transform .2s}.conv-choice:hover{background:#4a3530;background:color-mix(in srgb, var(--candle) 22%, var(--ink-purple));transform:translateY(-2px)}.conv-log-btn{z-index:5;font-size:22px;font-family:var(--font-back);color:var(--paper);border:1px solid #e8dcc859;border-color:color-mix(in srgb, var(--paper) 35%, transparent);cursor:pointer;background:#00000080;border-radius:3px;padding:10px 22px;position:absolute;top:24px;right:32px}.conv-log{z-index:10;cursor:default;background:#0a0810f5;padding:80px 200px;position:absolute;inset:0;overflow-y:auto}.conv-log-line{color:var(--paper);font-size:28px;line-height:1.8;font-family:var(--font-front);margin-bottom:28px}.conv-log-line .log-speaker{color:var(--candle);margin-right:1em}.conv-log-line.layer-back{font-family:var(--font-back);color:var(--crt-green)}:root{--ink-purple:#1a1626;--candle:#f2a154;--gaslamp:#3e6b5a;--paper:#e8dcc8;--crt-green:#47f09a;--warn-red:#b33a3a;--remain-cyan:#29d8ff;--remain-mag:#ff3ea5;--choice-save:var(--paper);--choice-milk:var(--candle);--choice-harm:#3d2b52;--font-front:"Shippori Mincho", "Hiragino Mincho ProN", "Yu Mincho", "YuMincho", "Noto Serif JP", serif;--font-back:"IBM Plex Mono", "Noto Sans Mono CJK JP", "Osaka-Mono", "Menlo", "DotGothic16", monospace;--stage-w:1920;--stage-h:1080}*{box-sizing:border-box;margin:0;padding:0}html,body{-webkit-text-size-adjust:100%;touch-action:manipulation;background:#000;height:100%;overflow:hidden}#app{height:100%}.stage-viewport{background:#000;position:fixed;inset:0;overflow:hidden}.stage{width:calc(var(--stage-w) * 1px);height:calc(var(--stage-h) * 1px);transform:translate(-50%, -50%) scale(var(--stage-scale,1));transform-origin:50%;background:var(--ink-purple);-webkit-user-select:none;user-select:none;position:absolute;top:50%;left:50%;overflow:hidden}.stage:after{content:"";pointer-events:none;z-index:100;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E");position:absolute;inset:0}.rotate-notice{display:none}@media (orientation:portrait) and (width<=820px){.rotate-notice{z-index:999;background:var(--ink-purple);color:var(--paper);font-family:var(--font-front);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:20px;padding:32px;display:flex;position:fixed;inset:0}.rotate-notice .rotate-icon{font-size:56px;animation:2.4s ease-in-out infinite rotateHint}.rotate-notice p{letter-spacing:.15em;font-size:18px;line-height:2}}@keyframes rotateHint{0%,20%{transform:rotate(0)}55%,to{transform:rotate(90deg)}}.fx-reduced .stage:after{display:none}.fx-reduced *,.fx-reduced :before,.fx-reduced :after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.screen{flex-direction:column;justify-content:center;align-items:center;gap:48px;display:flex;position:absolute;inset:0}.title-screen{background:radial-gradient(ellipse at 50% 85%, #382a2c, var(--ink-purple) 65%);background:radial-gradient(ellipse at 50% 85%, color-mix(in srgb, var(--candle) 14%, var(--ink-purple)), var(--ink-purple) 65%)}.title-logo{font-family:var(--font-front);letter-spacing:.35em;text-indent:.35em;color:var(--paper);text-shadow:0 0 40px color-mix(in srgb, var(--candle) 50%, transparent);font-size:140px}.title-sub{font-family:var(--font-back);letter-spacing:.5em;color:color-mix(in srgb, var(--paper) 55%, transparent);font-size:22px}.calendar-screen{background:var(--ink-purple);font-family:var(--font-front);color:var(--paper)}.calendar-night{letter-spacing:.2em;font-size:72px}.calendar-note{opacity:.65;text-align:center;max-width:900px;font-size:26px;line-height:1.8}.phase-screen{font-family:var(--font-front);color:var(--paper);background:var(--ink-purple)}.phase-screen.layer-back{font-family:var(--font-back);color:var(--crt-green);background:#04110b}.phase-label{letter-spacing:.4em;opacity:.6;font-size:30px}.phase-title{letter-spacing:.15em;font-size:56px}.phase-desc{opacity:.7;text-align:center;max-width:880px;font-size:24px;line-height:1.9}.session-screen{background:radial-gradient(ellipse 900px 700px at 50% 62%, #45322f, transparent 70%), var(--ink-purple);background:radial-gradient(ellipse 900px 700px at 50% 62%, color-mix(in srgb, var(--candle) 20%, var(--ink-purple)), transparent 70%), var(--ink-purple);position:absolute;inset:0}.client-silhouette{background:#060508;background:color-mix(in srgb, black 78%, var(--ink-purple));clip-path:ellipse(38% 50%);filter:blur(2px);width:420px;height:640px;position:absolute;bottom:300px;left:50%;transform:translate(-50%)}.ui-button{letter-spacing:.25em;text-indent:.25em;color:inherit;cursor:pointer;background:0 0;border:1px solid;border-radius:3px;padding:22px 64px;font-family:inherit;font-size:30px;transition:background .25s,transform .2s}.ui-button:hover{background:#e8dcc81f;background:color-mix(in srgb, currentColor 12%, transparent);transform:translateY(-2px)}.loading-note{font-family:var(--font-back);color:var(--crt-green);opacity:.8;font-size:24px}
