:root{--bg-primary: #0a0a0a;--bg-secondary: #111111;--bg-terminal: #080808;--text-primary: #c8c8c8;--text-dim: #666666;--text-bright: #e8e8e8;--accent: #2d5a3d;--accent-dim: #1a3d28;--border: #1a1a1a;--cursor: #c8c8c8;--selection: rgba(45, 90, 61, .3);--font-mono: "IBM Plex Mono", "Consolas", "Monaco", monospace;--font-size: 14px;--line-height: 1.6;--char-delay: 18ms}*{margin:0;padding:0;box-sizing:border-box}::selection{background:var(--selection)}html,body{height:100%;overflow:hidden}body{font-family:var(--font-mono);font-size:var(--font-size);line-height:var(--line-height);background:var(--bg-primary);color:var(--text-primary);display:flex;align-items:center;justify-content:center;padding:20px}.noise{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;opacity:.03;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E")}.terminal{width:100%;max-width:720px;height:100%;max-height:600px;background:var(--bg-terminal);border:1px solid var(--border);border-radius:4px;display:flex;flex-direction:column;box-shadow:0 0 0 1px #ffffff05,0 20px 60px #00000080,inset 0 1px #ffffff05;position:relative;overflow:hidden}.terminal:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.1) 2px,rgba(0,0,0,.1) 4px);pointer-events:none;z-index:10}.terminal-header{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;background:var(--bg-secondary);border-bottom:1px solid var(--border);flex-shrink:0}.terminal-title{font-size:12px;color:var(--text-dim);letter-spacing:.5px;text-transform:lowercase}.terminal-status{font-size:11px;color:var(--accent);opacity:0;transition:opacity .3s ease}.terminal-status.visible{opacity:1}.terminal-status.thinking:after{content:"...";animation:ellipsis 1.2s infinite}@keyframes ellipsis{0%{content:"."}33%{content:".."}66%{content:"..."}}.terminal-body{flex:1;overflow-y:auto;overflow-x:hidden;padding:20px;display:flex;flex-direction:column}.terminal-body::-webkit-scrollbar{width:6px}.terminal-body::-webkit-scrollbar-track{background:transparent}.terminal-body::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.terminal-body::-webkit-scrollbar-thumb:hover{background:#2a2a2a}.output{flex:1;white-space:pre-wrap;word-wrap:break-word}.message{margin-bottom:16px;opacity:0;animation:fadeIn .1s ease forwards}@keyframes fadeIn{to{opacity:1}}.message.monger{color:var(--text-primary)}.message.monger .label{color:var(--accent);margin-right:8px}.message.user{color:var(--text-dim);padding-left:20px}.message.user:before{content:"> ";color:var(--text-dim);margin-left:-20px}.message.system{color:var(--accent-dim);font-style:italic;font-size:12px}.message.error{color:#8b4444}.typing{display:inline}.typing .char{opacity:0;animation:typeChar .05s ease forwards}@keyframes typeChar{to{opacity:1}}.input-line{display:flex;align-items:center;margin-top:8px;position:relative}.prompt{color:var(--text-dim);margin-right:8px;flex-shrink:0}#input{flex:1;background:transparent;border:none;outline:none;color:var(--text-bright);font-family:var(--font-mono);font-size:var(--font-size);caret-color:var(--cursor);padding:0}#input::placeholder{color:var(--text-dim);opacity:.5}#input:disabled{color:var(--text-dim)}.cursor{display:none}.terminal.disabled .input-line{opacity:.5}.terminal.disabled #input{cursor:not-allowed}.thinking-indicator{color:var(--text-dim);margin-top:8px}.thinking-indicator:after{content:"";animation:dots 1.2s infinite}@keyframes dots{0%,20%{content:"."}40%{content:".."}60%,to{content:"..."}}.terminal.blocked .terminal-body{display:flex;align-items:center;justify-content:center}.terminal.blocked .output{text-align:center;color:var(--text-dim)}.terminal.blocked .input-line{display:none}@media (max-width: 600px){body{padding:0}.terminal{max-width:100%;max-height:100%;border-radius:0;border:none}.terminal-body{padding:16px}:root{--font-size: 13px}}#input:focus~.input-glow{opacity:1}@keyframes ambientPulse{0%,to{opacity:.02}50%{opacity:.04}}.terminal:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(ellipse at 50% 0%,var(--accent) 0%,transparent 70%);opacity:.02;pointer-events:none;animation:ambientPulse 8s ease-in-out infinite}.checkout-link{color:var(--accent);text-decoration:underline;cursor:pointer}.checkout-link:hover{color:var(--text-bright)}.checkout-form{margin-top:16px;padding:16px;background:#ffffff05;border:1px solid var(--border);border-radius:4px}.checkout-form.hidden{display:none}.checkout-section{margin-bottom:20px}.checkout-section:last-child{margin-bottom:0}.checkout-label{display:block;color:var(--text-dim);font-size:11px;text-transform:lowercase;letter-spacing:.5px;margin-bottom:8px}.stripe-element{background:var(--bg-primary);border:1px solid var(--border);padding:10px 12px;border-radius:2px;transition:border-color .2s ease}.stripe-element.StripeElement--focus{border-color:var(--accent)}.stripe-element.StripeElement--invalid{border-color:#8b4444}.checkout-submit{width:100%;background:var(--accent);color:var(--text-bright);border:none;font-family:var(--font-mono);font-size:var(--font-size);padding:12px 16px;border-radius:2px;cursor:pointer;transition:all .2s ease;text-transform:lowercase;letter-spacing:.5px;margin-top:16px}.checkout-submit:hover:not(:disabled){background:var(--accent-dim)}.checkout-submit:disabled{opacity:.5;cursor:not-allowed}.checkout-submit.processing{position:relative;color:transparent}.checkout-submit.processing:after{content:"checking with my guy...";position:absolute;left:50%;transform:translate(-50%);color:var(--text-bright);animation:pulse 1s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.checkout-summary{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin-bottom:16px}.checkout-summary-label{color:var(--text-dim);font-size:12px}.checkout-summary-value{color:var(--text-bright);font-size:16px}.checkout-error{color:#8b4444;font-size:12px;margin-top:12px;padding:8px 12px;background:#8b44441a;border:1px solid rgba(139,68,68,.3);border-radius:2px}.checkout-error.hidden{display:none}.checkout-success{text-align:center;padding:20px;color:var(--accent)}.checkout-success.hidden{display:none}.checkout-cancel{display:block;text-align:center;color:var(--text-dim);font-size:12px;margin-top:12px;cursor:pointer;transition:color .2s ease}.checkout-cancel:hover{color:var(--text-primary)}@media (max-width: 600px){.checkout-form{padding:12px}}
