:root{--bg-page:#0a0612;--bg-page-mobile:#000;--bg-console:#0a0612;--bg-titlebar:#1a0f2a;--text-confident:#c8b6ff;--text-hedged:#8a7ab0;--text-user:#7c5c95;--text-corrupted:#ff8a3d;--text-sources:#5a4470;--text-titlebar:#7c5c95;--signal-ok:#5cc46a;--signal-faint:#ff8a3d;--signal-lost:#ff3030;--cursor:#ff8a3d;--border-console:#4a3a6e;--rgb-red:#ff3030;--rgb-green:#30ff80;--rgb-blue:#3080ff;--halo-color:124 92 149;--halo-opacity:.3;--glow-confident:0 0 4px #c8b6ff80;--glow-hedged:0 0 3px #8a7ab066;--glow-corrupted:0 0 4px #ff8a3d66;--space-xs:4px;--space-sm:8px;--space-md:12px;--space-lg:16px;--space-xl:24px;--font-mono:"IBM Plex Mono", "Berkeley Mono", ui-monospace, "Cascadia Mono", Menlo, monospace;--size-base:14px;--size-sm:11px;--size-xs:10px;--line-height:1.6;--letter-spacing-tight:.05em;--letter-spacing-wide:.1em;--console-max-width:600px;--console-min-height:480px}*,:before,:after{box-sizing:border-box}html,body{background:var(--bg-page);color:var(--text-confident);font-family:var(--font-mono);font-size:var(--size-base);line-height:var(--line-height);min-height:100dvh;margin:0;padding:0;overflow-x:hidden}@media (width<=600px){html,body{background:var(--bg-page-mobile)}}#root{min-height:100dvh;padding:var(--space-lg);justify-content:center;align-items:center;display:flex}@media (width<=600px){#root{align-items:stretch;padding:0}}input,button,textarea{font-family:inherit;font-size:inherit;color:inherit;background:0 0;border:none;outline:none;padding:0}.scanlines{pointer-events:none;z-index:100;background:repeating-linear-gradient(0deg,#0000 0 3px,#c8b6ff14 3px 4px);position:fixed;inset:0}@media (width<=600px){.scanlines{background:repeating-linear-gradient(0deg,#0000 0 7px,#c8b6ff0f 7px 8px)}}@keyframes roll-sweep{0%{top:-2%}to{top:102%}}.scanline-roll{pointer-events:none;z-index:101;background:#c8b6ff47;height:3px;animation:2.5s linear forwards roll-sweep;position:fixed;left:0;right:0}.halo{z-index:0;pointer-events:none;background:radial-gradient(ellipse 75% 65% at 50% 50%, rgba(var(--halo-color) / var(--halo-opacity)) 0%, rgba(var(--halo-color) / calc(var(--halo-opacity) * .4)) 30%, transparent 70%);position:fixed;inset:0}@media (width<=600px){.halo{display:none}}.console{background:radial-gradient(ellipse 130% 110% at 50% 50%, rgba(var(--halo-color) / .06) 0%, rgba(var(--halo-color) / .02) 60%, transparent 95%), var(--bg-console);border:1px solid var(--border-console);width:100%;max-width:var(--console-max-width);height:min(600px, calc(100vh - 2 * var(--space-lg)));border-radius:2px;flex-direction:column;display:flex;position:relative;overflow:hidden;box-shadow:0 0 24px #c8b6ff26}@media (width<=600px){.console{height:var(--app-height,100dvh);max-height:var(--app-height,100dvh);border-radius:0}}.message-list-scroll{padding:var(--space-sm) 0;scrollbar-width:thin;scrollbar-color:var(--border-console) transparent;flex:1;overflow-y:auto}.message-list-scroll::-webkit-scrollbar{width:6px}.message-list-scroll::-webkit-scrollbar-track{background:0 0}.message-list-scroll::-webkit-scrollbar-thumb{background:var(--border-console);border-radius:2px}.message-list-scroll::-webkit-scrollbar-thumb:hover{background:var(--text-titlebar)}.glow-confident{text-shadow:var(--glow-confident)}.glow-hedged{text-shadow:var(--glow-hedged)}.glow-corrupted{text-shadow:var(--glow-corrupted)}@keyframes pulse-slow{0%,to{opacity:1}50%{opacity:.6}}.signal-ok-dot{color:var(--signal-ok);animation:2s ease-in-out infinite pulse-slow}.signal-faint-dot{color:var(--signal-faint)}@keyframes pulse-fast{0%,to{opacity:1}50%{opacity:.4}}.signal-lost-dot{color:var(--signal-lost);animation:.4s ease-in-out infinite pulse-fast}@keyframes cursor-breathe{0%,to{opacity:.3}50%{opacity:1}}.cursor-blink{color:var(--cursor);animation:1.2s ease-in-out infinite cursor-breathe}.corrupted-overlay{z-index:50;pointer-events:none;background:#0a061200;animation:1.5s ease-out forwards corrupted-bg;position:absolute;inset:0}@keyframes corrupted-bg{0%{background:#0a061200}20%{background:#0009}80%{background:#000000eb}to{background:0 0}}.corrupted-tear{background:#ffffff80;height:3px;animation:.8s ease-in forwards tear-sweep;position:absolute;left:0;right:0;box-shadow:0 0 12px #fffc}@keyframes tear-sweep{0%{opacity:.8;top:-10%}90%{opacity:.4;top:100%}to{opacity:0;top:100%}}.corrupted-phrase{letter-spacing:var(--letter-spacing-wide);justify-content:center;align-items:center;font-size:1.6em;font-weight:700;animation:1.5s ease-out forwards phrase-appear;display:flex;position:absolute;inset:0}.corrupted-phrase span{mix-blend-mode:screen;position:absolute}.corrupted-phrase .red{color:var(--rgb-red);animation:1.5s ease-out forwards rgb-red}.corrupted-phrase .green{color:var(--rgb-green);animation:1.5s ease-out forwards rgb-green}.corrupted-phrase .blue{color:var(--rgb-blue);animation:1.5s ease-out forwards rgb-blue}@keyframes phrase-appear{0%{opacity:0}30%{opacity:0}50%{opacity:1}to{opacity:1}}@keyframes rgb-red{0%,30%{opacity:0;transform:translate(0)}50%{opacity:.9;transform:translate(-6px)}70%{opacity:.9;transform:translate(-3px)}to{opacity:.9;transform:translate(-2px)}}@keyframes rgb-green{0%,30%{opacity:0;transform:translate(0)}50%{opacity:.9;transform:translate(0)}to{opacity:.9;transform:translate(0)}}@keyframes rgb-blue{0%,30%{opacity:0;transform:translate(0)}50%{opacity:.9;transform:translate(6px)}70%{opacity:.9;transform:translate(3px)}to{opacity:.9;transform:translate(2px)}}@media (width<=480px){.lock-segment{display:none}}.follow-up-chips{gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-top:1px solid var(--border-console);flex-wrap:wrap;display:flex}.follow-up-chip{appearance:none;border:1px solid var(--border-console);color:var(--text-hedged);font-family:var(--font-mono);font-size:var(--size-sm);letter-spacing:var(--letter-spacing-tight);padding:var(--space-xs) var(--space-sm);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;opacity:0;background:0 0;max-width:100%;transition:background .12s,color .12s,border-color .12s;animation:.3s ease-out forwards chip-fade-in;overflow:hidden}.follow-up-chip:hover,.follow-up-chip:focus-visible{background:var(--text-hedged);color:var(--bg-console);border-color:var(--text-hedged);outline:none}@keyframes chip-fade-in{0%{opacity:0}to{opacity:1}}@media (width<=480px){.follow-up-chip{font-size:var(--size-xs);padding:var(--space-xs) var(--space-sm)}}@media (prefers-reduced-motion:reduce){.follow-up-chip,.cursor-blink{opacity:1;animation:none}}.splash{z-index:95;background:radial-gradient(ellipse 75% 65% at 50% 50%, rgba(var(--halo-color) / calc(var(--halo-opacity) * .85)) 0%, rgba(var(--halo-color) / calc(var(--halo-opacity) * .35)) 30%, transparent 70%), var(--bg-page);cursor:pointer;-webkit-user-select:none;user-select:none;opacity:1;outline:none;justify-content:center;align-items:center;gap:12px;transition:opacity .3s linear;display:flex;position:fixed;inset:0}.splash--fading{opacity:0;pointer-events:none}.splash-cursor{font-size:var(--size-base)}.splash-copy{font-size:var(--size-base);letter-spacing:.18em;color:var(--text-titlebar)}@media (prefers-reduced-motion:reduce){.splash{transition:none}}.polaroid{margin:var(--space-md) var(--space-md) var(--space-sm);opacity:0;background:#e4d6f0;padding:6px 6px 22px;animation:.4s ease-out forwards polaroid-fade-in;display:inline-block;position:relative;transform:rotate(-1.5deg);box-shadow:0 4px 10px #00000080,0 0 0 1px #c8b6ff33}.polaroid__photo-wrap{width:160px;height:120px;position:relative;overflow:hidden}.polaroid__photo-wrap img{object-fit:cover;filter:sepia(.2)hue-rotate(220deg)saturate(.5)contrast(.95)brightness(.85);width:100%;height:100%;transition:opacity .3s;display:block}.polaroid__photo-wrap:after{content:"";pointer-events:none;background:linear-gradient(#7c5c9526,#0000 30% 70%,#0a061233);position:absolute;inset:0}.polaroid__caption{color:#2a1f3a;text-align:center;letter-spacing:.05em;font-family:Courier New,monospace;font-size:9px;position:absolute;bottom:4px;left:6px;right:6px}.polaroid--hedged{animation:.4s ease-out forwards polaroid-fade-in,2.4s .4s infinite polaroid-jitter;transform:rotate(-2.5deg)}.polaroid--hedged .polaroid__photo-wrap:after{background:linear-gradient(#7c5c9540,#0000 40% 60%,#0a061266),repeating-linear-gradient(0deg,#0000 0 2px,#ff8a3d0f 2px 3px)}@keyframes polaroid-fade-in{0%{opacity:0}to{opacity:1}}@keyframes polaroid-jitter{0%,92%,to{transform:rotate(-2.5deg)translate(0)}93%{transform:rotate(-2.5deg)translate(-1px)}95%{transform:rotate(-2.5deg)translate(1px)}97%{transform:rotate(-2.5deg)translate(-1px)}}@media (width<=480px){.polaroid__photo-wrap{width:120px;height:90px}}@media (prefers-reduced-motion:reduce){.polaroid,.polaroid--hedged{opacity:1;animation:none}}.site-footer{z-index:5;letter-spacing:.04em;pointer-events:none;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.72rem;position:fixed;bottom:.5rem;right:.9rem}.site-footer__link{pointer-events:auto;color:#bec8d238;text-decoration:none;transition:color .2s}.site-footer__link:hover,.site-footer__link:focus-visible{color:#bec8d2b3;outline:none}.vignette-stage{z-index:1000;background:radial-gradient(ellipse 75% 65% at 50% 50%, rgba(var(--halo-color) / calc(var(--halo-opacity) * .85)) 0%, rgba(var(--halo-color) / calc(var(--halo-opacity) * .35)) 30%, transparent 70%), var(--bg-console,#0a0612);position:fixed;inset:0;overflow:hidden}.vignette-head-layer{opacity:0;position:absolute;inset:0}.vignette-head-layer canvas{width:100%;height:100%;display:block}.vignette-head-layer.glitching-in{animation:.48s step-end forwards vignette-glitch-in}.vignette-head-layer.holding{opacity:1}.vignette-head-layer.glitching-out{animation:.54s step-end forwards vignette-glitch-out}@keyframes vignette-glitch-in{0%{opacity:0;filter:none;transform:translate(0)}8%{opacity:.9;filter:hue-rotate(40deg)contrast(1.4)brightness(1.2);transform:translate(3px,-4px)}14%{opacity:0;filter:none;transform:translate(0)}22%{opacity:1;filter:hue-rotate(-40deg)contrast(1.3);transform:translate(-4px,3px)}30%{opacity:.2;transform:translate(0)}38%{opacity:1;filter:none;transform:translate(2px)}45%{opacity:0}55%{opacity:1;filter:hue-rotate(20deg)contrast(1.15);transform:translate(0)}70%{opacity:.6}85%{opacity:1;filter:none;transform:translate(0)}to{opacity:1;filter:none;transform:translate(0)}}@keyframes vignette-glitch-out{0%{opacity:1;filter:none;transform:translate(0)}10%{opacity:.5;filter:hue-rotate(15deg);transform:translate(2px,-1px)}18%{opacity:1;filter:hue-rotate(-30deg)contrast(1.3);transform:translate(-3px,2px)}28%{opacity:.1}38%{opacity:.9;filter:hue-rotate(50deg)contrast(1.5)brightness(1.3);transform:translate(4px,-3px)}50%{opacity:0;filter:none;transform:translate(0)}62%{opacity:.4;filter:hue-rotate(-20deg);transform:translate(-2px,1px)}75%{opacity:0}to{opacity:0}}.vignette-static{pointer-events:none;opacity:.5;background-image:repeating-linear-gradient(0deg,#0000 0 2px,#0a06122e 2px 3px);transition:opacity .6s ease-out;position:absolute;inset:0}.vignette-static.faded{opacity:0}@media (prefers-reduced-motion:reduce){.vignette-head-layer,.vignette-head-layer.glitching-in,.vignette-head-layer.holding,.vignette-head-layer.glitching-out{opacity:0;animation:none}}
