:root{--bg-deep: #0a0c12;--bg-mid: #0f1219;--bg-radial: radial-gradient(ellipse 80% 60% at 50% 0%, rgba(40, 60, 90, .25) 0%, transparent 50%), radial-gradient(ellipse 100% 100% at 50% 100%, rgba(30, 45, 70, .15) 0%, transparent 50%);--glass-bg: rgba(22, 28, 40, .55);--glass-border: rgba(120, 150, 200, .18);--glass-blur: 20px;--text-primary: #f0f4fc;--text-muted: #94a3b8;--text-subtle: #64748b;--accent: #60a5fa;--accent-muted: rgba(96, 165, 250, .25);--accent-border: rgba(96, 165, 250, .35);--radius: 16px;--radius-sm: 12px;--radius-btn: 12px}body[data-chat-theme=light]{background:#fff;color:#0f172a}body[data-chat-theme=dark]{background:#0a0c12;color:#f0f4fc}.liquid-glass-bg[data-theme=light]{--bg-deep: #ffffff;--bg-mid: #f8fafc;--bg-radial: radial-gradient(ellipse 80% 60% at 50% 0%, rgba(241, 245, 249, .9) 0%, transparent 50%), radial-gradient(ellipse 100% 100% at 50% 100%, rgba(248, 250, 252, .8) 0%, transparent 50%);--glass-bg: rgba(255, 255, 255, .95);--glass-border: rgba(0, 0, 0, .1);--text-primary: #0f172a;--text-muted: #475569;--text-subtle: #64748b;--accent-muted: rgba(59, 130, 246, .15);--accent-border: rgba(59, 130, 246, .4);background:#fff}.liquid-glass-bg[data-theme=light] .liquid-glass-bg__backdrop{background:var(--bg-radial),var(--bg-deep)}.liquid-glass-bg[data-theme=light] .liquid-glass-bg__backdrop:before{background-image:radial-gradient(1.5px 1.5px at 20% 30%,rgba(148,163,184,.25) 0%,transparent 100%),radial-gradient(1.5px 1.5px at 60% 70%,rgba(148,163,184,.2) 0%,transparent 100%),radial-gradient(1px 1px at 80% 20%,rgba(148,163,184,.22) 0%,transparent 100%),radial-gradient(1.5px 1.5px at 40% 80%,rgba(148,163,184,.2) 0%,transparent 100%),radial-gradient(1px 1px at 90% 50%,rgba(148,163,184,.2) 0%,transparent 100%),radial-gradient(1.5px 1.5px at 10% 60%,rgba(148,163,184,.22) 0%,transparent 100%)}.liquid-glass-bg[data-theme=light] .chat-container{background:#fffffffa;border:1px solid rgba(0,0,0,.08);box-shadow:0 1px 3px #0000000f}@media(min-width:768px){.liquid-glass-bg[data-theme=light] .chat-container{border:1px solid rgba(0,0,0,.1);box-shadow:0 4px 24px #00000014}}.liquid-glass-bg[data-theme=light] .chat-header{border-bottom:1px solid rgba(0,0,0,.08);background:#f8fafcf2}.liquid-glass-bg[data-theme=light] .message.ai{background:#f8fafcf2;border:1px solid rgba(0,0,0,.06);color:#0f172a}.liquid-glass-bg[data-theme=light] .message.user{color:#0f172a}.liquid-glass-bg[data-theme=light] .glass-input,.liquid-glass-bg[data-theme=light] .chat-form input,.liquid-glass-bg[data-theme=light] .email-form input{background:#fffffffa;border:1px solid rgba(0,0,0,.12);color:#0f172a}.liquid-glass-bg[data-theme=light] .chat-form,.liquid-glass-bg[data-theme=light] .email-form{border-top-color:#00000014}.liquid-glass-bg[data-theme=dark]{--glass-border: rgba(148, 163, 184, .35);--glass-bg: rgba(30, 41, 59, .7)}.liquid-glass-bg[data-theme=dark] .chat-container{border:1px solid rgba(148,163,184,.25);box-shadow:0 8px 32px #0006}@media(min-width:768px){.liquid-glass-bg[data-theme=dark] .chat-container{border:1px solid rgba(148,163,184,.3)}}.liquid-glass-bg[data-theme=dark] .chat-header{border-bottom:1px solid rgba(148,163,184,.3);background:#1e293bbf}.liquid-glass-bg[data-theme=dark] .message.ai{border:1px solid rgba(148,163,184,.25)}.liquid-glass-bg[data-theme=dark] .glass-input,.liquid-glass-bg[data-theme=dark] .chat-form input,.liquid-glass-bg[data-theme=dark] .email-form input{border:1px solid rgba(148,163,184,.3)}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;background:var(--bg-deep);color:var(--text-primary);min-height:100vh;-webkit-font-smoothing:antialiased}@media(max-width:767px){html{overflow-x:hidden;width:100%;max-width:100vw}body{overflow-x:hidden;width:100%;max-width:100vw;position:relative;min-height:100vh;min-height:100dvh}#root{overflow-x:hidden;max-width:100%;min-height:100dvh}input,textarea,select,.glass-input,.chat-form input,.email-form input{font-size:16px!important;touch-action:manipulation}}.liquid-glass-bg{position:relative;min-height:100vh}.liquid-glass-bg__backdrop{position:fixed;inset:0;background:var(--bg-radial),var(--bg-deep);z-index:-1;pointer-events:none}.liquid-glass-bg__backdrop:before{content:"";position:absolute;inset:0;background-image:radial-gradient(1.5px 1.5px at 20% 30%,rgba(200,220,255,.4) 0%,transparent 100%),radial-gradient(1.5px 1.5px at 60% 70%,rgba(180,200,240,.35) 0%,transparent 100%),radial-gradient(1px 1px at 80% 20%,rgba(220,235,255,.3) 0%,transparent 100%),radial-gradient(1.5px 1.5px at 40% 80%,rgba(160,190,230,.25) 0%,transparent 100%),radial-gradient(1px 1px at 90% 50%,rgba(200,215,245,.35) 0%,transparent 100%),radial-gradient(1.5px 1.5px at 10% 60%,rgba(180,200,240,.3) 0%,transparent 100%);background-size:220% 180%,200% 220%,180% 200%,240% 160%,190% 210%,210% 190%;background-position:0% 0%,40% 60%,80% 20%,20% 80%,90% 40%,10% 70%;animation:starfield 60s ease-in-out infinite alternate;pointer-events:none}@keyframes starfield{0%{opacity:.9}to{opacity:1}}.glass{background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);border-radius:var(--radius)}.glass-card{background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);border-radius:var(--radius);box-shadow:0 8px 32px #0003}.glass-title{font-size:1.75rem;font-weight:300;letter-spacing:-.02em;color:var(--text-primary);margin:0}.glass-subtitle{font-size:1.125rem;font-weight:500;color:var(--text-primary);margin:0}.glass-text{font-size:.9375rem;font-weight:400;color:var(--text-muted);line-height:1.5;margin:0}.glass-btn{display:inline-flex;align-items:center;justify-content:center;padding:.625rem 1.25rem;border-radius:var(--radius-btn);font-size:.9375rem;font-weight:500;cursor:pointer;transition:background .2s ease,border-color .2s ease,opacity .2s ease;background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--accent);color:var(--text-primary)}.glass-btn:hover:not(:disabled){background:var(--accent-muted);border-color:var(--accent)}.glass-btn:disabled{opacity:.5;cursor:not-allowed}.glass-btn-secondary{background:var(--glass-bg);border:1px solid var(--glass-border);color:var(--text-muted)}.glass-btn-secondary:hover:not(:disabled){background:#1e293b99;color:var(--text-primary);border-color:var(--text-subtle)}.glass-input{background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:var(--radius-sm);color:var(--text-primary);padding:.5rem .75rem;font-size:.9375rem;transition:border-color .2s ease,box-shadow .2s ease}.glass-input::placeholder{color:var(--text-subtle)}.glass-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-muted)}.chat-page{min-height:100vh;min-height:100dvh;display:flex;justify-content:center;align-items:center;padding:0}.chat-container{width:100%;max-width:none;display:flex;flex-direction:column;height:100vh;height:100dvh;border-radius:0;overflow:hidden;background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:none;box-shadow:none;padding-top:env(safe-area-inset-top);padding-right:env(safe-area-inset-right);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);box-sizing:border-box}@media(min-width:768px){.chat-page{padding:1rem}.chat-container{max-width:640px;height:70vh;min-height:400px;border-radius:var(--radius);border:1px solid var(--glass-border);box-shadow:0 8px 32px #00000040;padding:0}}.chat-header{flex-shrink:0;padding:1rem 1.25rem;border-bottom:1px solid var(--glass-border);background:var(--glass-bg)}.chat-header-brand{display:flex;align-items:center;gap:.75rem}.chat-header-logo{height:32px;width:auto;max-width:120px;object-fit:contain;flex-shrink:0}.chat-header-context{margin:0;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.chat-header-title{margin:.25rem 0 0;font-size:1.25rem;font-weight:600;color:var(--text-primary)}.chat-desc{margin:.25rem 0 0;font-size:.875rem;color:var(--text-muted)}.chat-messages{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.75rem}.message{max-width:85%;padding:.625rem .875rem;border-radius:var(--radius-sm);font-size:.9375rem;line-height:1.45}.message.user{align-self:flex-end;background:var(--accent-muted);border:1px solid var(--accent-border);color:var(--text-primary)}.message.ai{align-self:flex-start;background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);color:var(--text-primary)}.message p{margin:0}@keyframes typing-bounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-6px)}}.typing-indicator{display:flex;align-items:center;gap:4px;margin:0;min-height:1.25em}.typing-indicator__dot{width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.5;animation:typing-bounce 1s ease-in-out infinite}.typing-indicator__dot:nth-child(1){animation-delay:0s}.typing-indicator__dot:nth-child(2){animation-delay:.15s}.typing-indicator__dot:nth-child(3){animation-delay:.3s}.meta-links{margin:.5rem 0 0;padding:0;list-style:none;font-size:.8rem}.meta-links a{margin-right:.5rem;color:var(--accent);text-decoration:none}.meta-links a:hover{text-decoration:underline}.email-form{padding:.75rem 1rem;border-top:1px solid var(--glass-border);font-size:.9rem;color:var(--text-muted)}.email-form form{display:flex;gap:.5rem;align-items:center;margin-top:.5rem}.email-form input{flex:1;min-width:0;padding:.5rem .75rem;border-radius:var(--radius-sm);border:1px solid var(--glass-border);background:var(--glass-bg);color:var(--text-primary);font-size:.9rem}.chat-error{padding:.5rem 1rem;color:#f87171;font-size:.9rem;background:#f871711a;border-radius:var(--radius-sm)}.chat-error-page{color:#f87171;padding:2rem;text-align:center;font-size:.9375rem}.chat-form{display:flex;gap:.5rem;padding:1rem;border-top:1px solid var(--glass-border)}.chat-form input{flex:1;padding:.5rem .75rem;border-radius:var(--radius-sm);border:1px solid var(--glass-border);background:var(--glass-bg);color:var(--text-primary);font-size:.9375rem;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.chat-form input::placeholder{color:var(--text-subtle)}.chat-form input:focus{outline:none;border-color:var(--accent)}
