:root{color-scheme:dark;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#0d1117;color:#fff}html,body{height:100%;margin:0;padding:0;background-color:#0d1117;color:#fff;overflow:hidden}body{min-width:320px;min-height:100vh;display:flex;flex-direction:column}#root{width:100vw;height:100vh;display:flex;flex-direction:column;overflow:hidden}a{color:inherit;text-decoration:inherit}:root{--bg-primary: #0d1117;--bg-secondary: #161b22;--bg-tertiary: #21262d;--border-primary: #30363d;--border-secondary: #21262d;--text-primary: #ffffff;--text-secondary: #c9d1d9;--text-muted: #8b949e;--accent-primary: #79c0ff;--accent-secondary: #58a6ff;--accent-hover: #91cbff;--success: #56d364;--warning: #f0d800;--error: #ff7b72;--ai-gradient: linear-gradient(135deg, #79c0ff 0%, #a5a5ff 50%, #ff9de6 100%);--user-gradient: linear-gradient(135deg, #7c3aed 0%, #a855f7 100%);--glow: 0 0 20px rgba(121, 192, 255, .3);--focus-ring: 0 0 0 3px rgba(121, 192, 255, .4);--focus-ring-error: 0 0 0 3px rgba(255, 123, 114, .4)}*{margin:0;padding:0;box-sizing:border-box}html{height:100%;overflow:hidden;background-color:#0d1117;background:var(--bg-primary, #0d1117);color:#fff;color:var(--text-primary, #ffffff)}body{height:100%;overflow:hidden;margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-feature-settings:"kern" 1,"liga" 1;background-color:#0d1117;background:var(--bg-primary, #0d1117);color:#fff;color:var(--text-primary, #ffffff)}#root{width:100vw;height:100vh;display:flex;flex-direction:column;overflow:hidden;background-color:#0d1117;background:var(--bg-primary, #0d1117);color:#fff;color:var(--text-primary, #ffffff)}.App{display:flex;flex-direction:column;height:100vh;width:100vw;position:relative;overflow:hidden;background-color:#0d1117;background:var(--bg-primary, #0d1117);color:#fff;color:var(--text-primary, #ffffff)}.App:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 80%,rgba(121,192,255,.08) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(165,165,255,.06) 0%,transparent 50%),radial-gradient(circle at 40% 40%,rgba(255,157,230,.04) 0%,transparent 50%);animation:backgroundShift 20s ease-in-out infinite alternate;pointer-events:none;z-index:0}@keyframes backgroundShift{0%{transform:rotate(0) scale(1)}to{transform:rotate(2deg) scale(1.02)}}header{text-align:center;padding:1rem 2rem;background-color:#161b22f2;background:var(--bg-secondary, #161b22);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid #30363d;border-bottom:1px solid var(--border-primary, #30363d);position:relative;z-index:10;box-shadow:0 4px 20px #0000004d;color:#fff;color:var(--text-primary, #ffffff)}header h1{margin-bottom:.5rem;font-size:1.8rem;font-weight:700;background:linear-gradient(135deg,#79c0ff,#a5a5ff,#ff9de6);background:var(--ai-gradient, linear-gradient(135deg, #79c0ff 0%, #a5a5ff 50%, #ff9de6 100%));background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;color:#79c0ff;animation:textGlow 3s ease-in-out infinite alternate}@supports not (background-clip: text){header h1{color:#79c0ff;color:var(--accent-primary, #79c0ff);background:none}}@keyframes textGlow{0%{filter:drop-shadow(0 0 5px rgba(121,192,255,.5))}to{filter:drop-shadow(0 0 15px rgba(121,192,255,.8))}}header p{margin:0;font-size:1rem;color:#c9d1d9;color:var(--text-secondary, #c9d1d9);opacity:.9}.chat-container{display:flex;flex-direction:column;flex:1;min-height:0;position:relative;z-index:5}.messages-display{flex:1;overflow-y:auto;padding:2rem;display:flex;flex-direction:column;gap:1.5rem;scrollbar-width:none;-ms-overflow-style:none}.messages-display::-webkit-scrollbar{display:none}.welcome-message{text-align:center;color:#c9d1d9;color:var(--text-secondary, #c9d1d9);padding:3rem 2rem;border:2px dashed #30363d;border:2px dashed var(--border-primary, #30363d);border-radius:12px;margin:auto;background-color:#161b2280;background:var(--bg-secondary, rgba(22, 27, 34, .5));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);max-width:600px;animation:welcomePulse 4s ease-in-out infinite}@keyframes welcomePulse{0%,to{transform:scale(1);border-color:#30363d;border-color:var(--border-primary, #30363d)}50%{transform:scale(1.02);border-color:#79c0ff;border-color:var(--accent-primary, #79c0ff)}}.welcome-message h3{color:#fff;color:var(--text-primary, #ffffff);margin-bottom:1rem}.welcome-message p{margin:.75rem 0;line-height:1.6}.message.ai h1,.message.ai h2,.message.ai h3{color:#fff;color:var(--text-primary, #ffffff);margin-top:1.5rem;margin-bottom:.75rem;user-select:text;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text}.message.ai h1:first-child,.message.ai h2:first-child,.message.ai h3:first-child{margin-top:0}.message.ai ul,.message.ai ol{margin:1rem 0;padding-left:1.5rem;user-select:text;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text}.message.ai li{margin-bottom:.5rem;color:#fff;color:var(--text-primary, #ffffff);user-select:text;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text}.message.ai p{color:#fff;color:var(--text-primary, #ffffff);user-select:text;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text}.message.ai code{background-color:#21262d;background:var(--bg-tertiary, #21262d);color:#79c0ff;color:var(--accent-primary, #79c0ff);padding:.25rem .5rem;border-radius:6px;font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,monospace;border:1px solid #30363d;border:1px solid var(--border-primary, #30363d);user-select:text;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text}.message.ai pre{background-color:#21262d;background:var(--bg-tertiary, #21262d);border:1px solid #30363d;border:1px solid var(--border-primary, #30363d);border-radius:8px;padding:1rem;margin:1rem 0;overflow-x:auto;box-shadow:inset 0 2px 4px #0000004d;user-select:text;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text}.message.ai blockquote{background:#79c0ff1a;border-left:4px solid #79c0ff;border-left:4px solid var(--accent-primary, #79c0ff);margin:1rem 0;padding:1rem;border-radius:0 8px 8px 0;user-select:text;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text}.message.ai table{border:1px solid #30363d;border:1px solid var(--border-primary, #30363d);border-radius:8px;overflow:hidden;margin:1rem 0;background-color:#21262d;background:var(--bg-tertiary, #21262d);user-select:text;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text}.message.ai th{background-color:#161b22;background:var(--bg-secondary, #161b22);color:#fff;color:var(--text-primary, #ffffff);padding:.75rem;border-bottom:1px solid #30363d;border-bottom:1px solid var(--border-primary, #30363d);user-select:text;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text}.message.ai td{padding:.75rem;border-bottom:1px solid #21262d;border-bottom:1px solid var(--border-secondary, #21262d);color:#fff;color:var(--text-primary, #ffffff);user-select:text;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text}.message.ai tr:nth-child(2n){background:#161b2280}.message{max-width:75%;padding:1rem 1.5rem;border-radius:16px;line-height:1.6;position:relative;animation:messageSlide .5s cubic-bezier(.4,0,.2,1);user-select:text;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text}@keyframes messageSlide{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.message.user{align-self:flex-end;background:linear-gradient(135deg,#7c3aed,#a855f7);background:var(--user-gradient, linear-gradient(135deg, #7c3aed 0%, #a855f7 100%));color:#fff;border-bottom-right-radius:6px;box-shadow:0 8px 32px #7c3aed4d;position:relative;user-select:text;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text}.message.ai{align-self:flex-start;background-color:#161b22;background:var(--bg-secondary, #161b22);color:#fff;color:var(--text-primary, #ffffff);border-bottom-left-radius:6px;border:1px solid #30363d;border:1px solid var(--border-primary, #30363d);box-shadow:0 8px 32px #0006;position:relative;user-select:text;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text}.message.user:before,.message.ai:before{pointer-events:none;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.message.user:before{content:"";position:absolute;inset:0;padding:1px;background:linear-gradient(135deg,#7c3aed,#a855f7);background:var(--user-gradient, linear-gradient(135deg, #7c3aed 0%, #a855f7 100%));border-radius:inherit;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:xor;-webkit-mask-composite:xor}.message.ai:before{content:"";position:absolute;inset:0;padding:1px;background:linear-gradient(135deg,#79c0ff,#a5a5ff,#ff9de6);background:var(--ai-gradient, linear-gradient(135deg, #79c0ff 0%, #a5a5ff 50%, #ff9de6 100%));border-radius:inherit;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:xor;-webkit-mask-composite:xor;opacity:.6}.message-input-form{padding:1.5rem 2rem 2rem;border-top:1px solid #30363d;border-top:1px solid var(--border-primary, #30363d);background-color:#161b22f2;background:var(--bg-secondary, rgba(22, 27, 34, .95));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:flex-end;gap:1rem;position:relative;z-index:10}textarea{flex:1;padding:1rem 1.25rem;background-color:#161b22;background:var(--bg-secondary, #161b22);border:2px solid #30363d;border:2px solid var(--border-primary, #30363d);border-radius:12px;color:#fff;color:var(--text-primary, #ffffff);font-size:1rem;resize:none;min-height:56px;max-height:200px;font-family:inherit;transition:all .2s cubic-bezier(.4,0,.2,1);overflow-y:auto}textarea::placeholder{color:#8b949e;color:var(--text-muted, #8b949e)}textarea:focus{outline:none;border-color:#79c0ff;border-color:var(--accent-primary, #79c0ff);box-shadow:0 0 0 3px #79c0ff66;box-shadow:var(--focus-ring, 0 0 0 3px rgba(121, 192, 255, .4));transform:translateY(-1px)}textarea:focus-visible{box-shadow:0 0 0 3px #79c0ff66;box-shadow:var(--focus-ring, 0 0 0 3px rgba(121, 192, 255, .4))}button{padding:1rem 2rem;background-color:#58a6ff;background:var(--accent-secondary, #58a6ff);color:#fff;border:none;border-radius:12px;cursor:pointer;font-size:1rem;font-weight:600;font-family:inherit;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;min-width:100px}button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}button:hover:not(:disabled){background-color:#91cbff;background:var(--accent-hover, #91cbff);transform:translateY(-2px);box-shadow:0 8px 25px #79c0ff66}button:focus{outline:none;box-shadow:0 0 0 3px #79c0ff66;box-shadow:var(--focus-ring, 0 0 0 3px rgba(121, 192, 255, .4))}button:focus-visible{box-shadow:0 0 0 3px #79c0ff66;box-shadow:var(--focus-ring, 0 0 0 3px rgba(121, 192, 255, .4))}button:hover:not(:disabled):before{left:100%}button:active:not(:disabled){transform:translateY(0)}button:disabled{background-color:#21262d;background:var(--bg-tertiary, #21262d);color:#8b949e;color:var(--text-muted, #8b949e);cursor:not-allowed;transform:none;box-shadow:none}.error-message{margin:1rem 2rem;padding:1rem 1.5rem;background:#ff7b721a;border:1px solid #ff7b72;border:1px solid var(--error, #ff7b72);border-radius:8px;color:#ff7b72;color:var(--error, #ff7b72);text-align:center;animation:errorShake .5s ease-in-out}.error-message:focus{outline:none;box-shadow:0 0 0 3px #ff7b7266;box-shadow:var(--focus-ring-error, 0 0 0 3px rgba(255, 123, 114, .4))}@keyframes errorShake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}footer{padding:1rem 2rem;text-align:center;color:#8b949e;color:var(--text-muted, #8b949e);font-size:.875rem;border-top:1px solid #30363d;border-top:1px solid var(--border-primary, #30363d);background-color:#161b22f2;background:var(--bg-secondary, rgba(22, 27, 34, .95));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;z-index:10}.loading-dots{display:inline-flex;gap:4px;align-items:center;color:#c9d1d9;color:var(--text-secondary, #c9d1d9)}.loading-dots:after{content:"";width:4px;height:4px;border-radius:50%;background-color:#79c0ff;background:var(--accent-primary, #79c0ff);animation:loadingDot 1.4s infinite ease-in-out}.loading-dots:before{content:"";width:4px;height:4px;border-radius:50%;background-color:#79c0ff;background:var(--accent-primary, #79c0ff);animation:loadingDot 1.4s infinite ease-in-out;animation-delay:-.32s;margin-right:4px}@keyframes loadingDot{0%,80%,to{transform:scale(0);opacity:.5}40%{transform:scale(1);opacity:1}}.skip-link{position:absolute;top:-40px;left:6px;background-color:#79c0ff;background:var(--accent-primary, #79c0ff);color:#fff;padding:8px;text-decoration:none;border-radius:4px;z-index:1000}.skip-link:focus{top:6px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (max-width: 768px){header{padding:1rem}header h1{font-size:1.5rem}.messages-display{padding:1rem;gap:1rem}.message{max-width:90%;padding:.875rem 1.25rem}.message-input-form{padding:1rem;flex-direction:column;align-items:stretch}button{width:100%;padding:.875rem}}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (prefers-contrast: high){:root{--text-primary: #ffffff;--text-secondary: #ffffff;--text-muted: #e6edf3;--accent-primary: #91cbff;--border-primary: #6e7681;--bg-secondary: #0d1117;--bg-tertiary: #161b22}}@media print{.App:before,header,footer,.message-input-form{display:none}.messages-display{padding:0}.message{max-width:100%;box-shadow:none;border:1px solid #000;margin-bottom:1rem}}
