:root{--primary-color: #1e293b;--secondary-color: #6366f1;--background-color: #f8fafc;--card-background: #ffffff;--text-color: #1e293b;--text-muted: #64748b;--accent-green: #22c55e;--border-color: #e2e8f0;--border-radius: 12px;--border-radius-lg: 16px;--border-radius-full: 9999px;--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-size-base: 16px;--font-size-large: 24px;--font-size-xl: 32px;--font-size-small: 14px;--font-size-xs: 12px;--spacing: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05)}body{font-family:var(--font-family);background-color:var(--background-color);color:var(--text-color);margin:0;padding:20px;min-height:100vh}.container{display:flex;flex-direction:column;align-items:center;max-width:800px;margin:0 auto;padding:var(--spacing-xl)}.container>section:first-of-type{display:flex;flex-direction:column;align-items:center;text-align:center;background:transparent;box-shadow:none;padding:var(--spacing-xl) 0;margin-bottom:0}.profile--image{width:140px;height:140px;border-radius:50%;margin-bottom:var(--spacing-lg);object-fit:cover;box-shadow:var(--shadow-lg);border:4px solid var(--card-background)}.name{font-size:var(--font-size-xl);font-weight:700;color:var(--primary-color);margin:0 0 8px;letter-spacing:-.5px}.info--title{font-size:var(--font-size-base);font-weight:500;color:var(--secondary-color);margin:0 0 var(--spacing) 0}.info--website{display:inline-flex;align-items:center;gap:8px;color:var(--text-muted);text-decoration:none;font-size:var(--font-size-xs);margin-bottom:12px;transition:color .2s ease;text-transform:uppercase;letter-spacing:.5px;font-weight:500}.info--website:first-of-type:before{content:"";width:8px;height:8px;background-color:var(--accent-green);border-radius:50%;animation:pulse-green 2s infinite}.info--website:hover{color:var(--secondary-color)}@keyframes pulse-green{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.buttonsContainer{display:flex;gap:12px;align-items:center;margin-top:var(--spacing)}.buttonsContainer a{text-decoration:none}.button--email{background-color:var(--primary-color);color:#fff;border:none;border-radius:var(--border-radius);padding:12px 20px;font-size:var(--font-size-small);font-weight:600;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:8px}.button--email:hover{background-color:#334155;transform:translateY(-1px);box-shadow:var(--shadow-md)}.button--link{background-color:var(--card-background);color:var(--text-muted);border:2px solid var(--primary-color);border-radius:var(--border-radius);padding:12px 14px;font-size:var(--font-size-small);font-weight:500;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:48px;min-height:48px}.button--link:hover{background-color:var(--background-color);border-color:var(--secondary-color);color:var(--secondary-color)}.chat-box{background-color:var(--card-background);padding:var(--spacing-lg);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);width:100%;max-width:600px;margin:var(--spacing-lg) 0;border:1px solid var(--border-color)}.chat-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing);padding-bottom:var(--spacing);border-bottom:none}.chat-header h3{color:var(--primary-color);margin:0 0 4px;font-size:var(--font-size-base);font-weight:600;display:flex;align-items:center;gap:10px}.chat-header h3:before{content:"💬";font-size:1.2em}.chat-header p{display:none}.chat-status-indicators{display:flex;flex-direction:row;align-items:center;gap:12px}.security-status{padding:0;border-radius:0;display:inline-flex;align-items:center;gap:6px;font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.5px;background:none;border:none}.security-status.secure{background-color:transparent;color:var(--accent-green)}.security-status.secure:before{content:"";width:8px;height:8px;background-color:var(--accent-green);border-radius:50%}.security-status.insecure{background-color:transparent;color:#991b1b}.security-icon{font-size:.9em}.audio-controls{display:flex;align-items:center;gap:8px}.audio-toggle{background:var(--primary-color);color:#fff;border:none;border-radius:var(--border-radius);padding:6px 14px;cursor:pointer;display:flex;align-items:center;gap:6px;font-size:var(--font-size-xs);font-weight:600;transition:all .2s ease;text-transform:uppercase;letter-spacing:.3px}.audio-toggle.enabled{background-color:var(--primary-color);color:#fff}.audio-toggle.disabled{background-color:var(--text-muted);color:#fff}.audio-toggle:hover{opacity:.9}.audio-icon{font-size:1em}.audio-playing{color:var(--secondary-color);font-size:var(--font-size-xs);font-weight:500;animation:pulse 1.5s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.rate-limit-info{background-color:#fef3c7;border:1px solid #fde68a;border-radius:var(--border-radius);padding:6px 12px;display:flex;align-items:center;gap:6px;font-size:var(--font-size-xs);color:#92400e}.rate-limit-icon{font-size:1em}.chat-history{max-height:350px;overflow-y:auto;margin-bottom:var(--spacing);padding:var(--spacing);background-color:var(--background-color);border-radius:var(--border-radius);border:1px solid var(--border-color)}.chat-history::-webkit-scrollbar{width:6px}.chat-history::-webkit-scrollbar-track{background:transparent}.chat-history::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.chat-message{padding:12px 16px;border-radius:var(--border-radius);margin-bottom:12px;position:relative;max-width:85%}.user-message{background-color:var(--primary-color);color:#fff;margin-left:auto;border-bottom-right-radius:4px}.ai-message{background-color:var(--card-background);border:1px solid var(--border-color);color:var(--text-color);margin-right:auto;border-bottom-left-radius:4px}.system-message{background-color:#fef3c7;border:1px solid #fde68a;color:#92400e;text-align:center;font-size:var(--font-size-small);max-width:100%;margin:8px auto}.error-message{background-color:#fef2f2;border:1px solid #fecaca;color:#991b1b}.message-content{line-height:1.5;word-wrap:break-word;font-size:var(--font-size-small)}.message-footer{display:flex;justify-content:space-between;align-items:center;margin-top:6px}.message-timestamp{font-size:var(--font-size-xs);opacity:.7}.audio-replay-btn{background:none;border:none;cursor:pointer;font-size:1em;padding:4px;border-radius:4px;transition:all .2s ease;opacity:.7}.audio-replay-btn:hover{opacity:1;background-color:#6366f11a}.audio-replay-btn:disabled{opacity:.3;cursor:not-allowed}.loading .message-content{display:flex;align-items:center;gap:8px}.typing-indicator{display:flex;gap:4px}.typing-indicator span{width:6px;height:6px;border-radius:50%;background-color:var(--secondary-color);animation:typing 1.4s infinite ease-in-out}.typing-indicator span:nth-child(1){animation-delay:-.32s}.typing-indicator span:nth-child(2){animation-delay:-.16s}@keyframes typing{0%,80%,to{transform:scale(0);opacity:.5}40%{transform:scale(1);opacity:1}}.chat-error{background-color:#fef2f2;border:1px solid #fecaca;border-radius:var(--border-radius);padding:12px;margin:12px 0;color:#991b1b;display:flex;align-items:flex-start;gap:8px;font-size:var(--font-size-small)}.chat-error.rate-limit-error{background-color:#fef3c7;border-color:#fde68a;color:#92400e}.error-icon{font-size:1.1em;flex-shrink:0}.retry-info{margin-top:4px;font-size:var(--font-size-xs);opacity:.8}.input-group{display:flex;gap:8px;align-items:center;background:var(--background-color);padding:8px 8px 8px 16px;border-radius:var(--border-radius-full);border:1px solid var(--border-color)}.chat-input{flex:1;padding:12px;border:none;background:transparent;font-size:var(--font-size-small);font-family:var(--font-family);color:var(--text-color)}.chat-input:focus{outline:none}.chat-input::placeholder{color:var(--text-muted)}.chat-input.error{background-color:#fef2f2}.chat-input:disabled{opacity:.6;cursor:not-allowed}.chat-button{padding:0;background-color:var(--secondary-color);color:#fff;border:none;border-radius:50%;font-size:1em;cursor:pointer;transition:all .2s ease;width:40px;height:40px;min-width:40px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.chat-button:hover:not(:disabled){background-color:#4f46e5;transform:scale(1.05)}.chat-button:disabled{background-color:var(--border-color);color:var(--text-muted);cursor:not-allowed}.input-hint{font-size:var(--font-size-xs);color:var(--text-muted);display:flex;justify-content:space-between;align-items:center;margin-top:8px;padding:0 4px}.rate-limit-warning{color:#92400e;background-color:#fef3c7;padding:2px 8px;border-radius:4px;font-weight:500}.suggested-question{display:inline-block;background-color:var(--primary-color);color:#fff;padding:10px 16px;border-radius:var(--border-radius-full);font-size:var(--font-size-small);cursor:pointer;transition:all .2s ease;border:none;margin:8px 0}.suggested-question:hover{background-color:#334155}.content-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xl);width:100%;max-width:800px;margin:var(--spacing-lg) 0}@media (max-width: 768px){.content-grid{grid-template-columns:1fr;gap:var(--spacing)}}section{padding:0;background-color:transparent;border-radius:0;margin-bottom:0;box-shadow:none;border:none}.content-grid section{padding:var(--spacing-lg);background-color:var(--card-background);border:2px solid var(--primary-color);border-radius:var(--border-radius-lg)}h2{font-size:var(--font-size-large);font-weight:700;color:var(--primary-color);margin:0 0 var(--spacing) 0;letter-spacing:-.3px}p{font-size:var(--font-size-small);color:var(--text-muted);line-height:1.7;margin:0}.select-container{display:flex;flex-direction:column;margin-top:8px}.select-label{margin-bottom:4px;color:var(--text-color);font-size:var(--font-size-small);font-weight:600}select{background-color:var(--card-background);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:12px;font-size:var(--font-size-base);color:var(--text-color);cursor:pointer;width:100%;max-width:300px;transition:border-color .2s ease}select:hover,select:focus{outline:none;border-color:var(--secondary-color)}option{background-color:var(--card-background);color:var(--text-color);padding:12px}form{display:flex;flex-direction:column;gap:8px}input[type=text]{flex:1;padding:12px;border:1px solid var(--border-color);border-radius:var(--border-radius);font-size:var(--font-size-base);font-family:var(--font-family);transition:border-color .2s ease}input[type=text]:focus{outline:none;border-color:var(--secondary-color)}button[type=submit]{background-color:var(--secondary-color);color:#fff;border:none;border-radius:var(--border-radius);padding:12px 16px;cursor:pointer;transition:background-color .2s ease;font-weight:500}button[type=submit]:hover{background-color:#4f46e5}.container--footer{padding:var(--spacing-xl) var(--spacing);background-color:transparent;text-align:center;margin-top:var(--spacing-xl);border-top:none;width:100%}.container--footer ul{list-style-type:none;padding:0;margin:0 0 var(--spacing) 0;display:flex;justify-content:center;gap:20px}.container--footer li{display:inline-block}.container--footer a{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background-color:var(--card-background);border:1px solid var(--border-color);transition:all .2s ease}.container--footer a:hover{border-color:var(--secondary-color);background-color:var(--background-color)}.container--footer svg{fill:var(--text-muted);transition:fill .2s ease;width:20px;height:20px}.container--footer a:hover svg{fill:var(--secondary-color)}.footer-copyright{font-size:var(--font-size-xs);color:var(--text-muted);margin-top:var(--spacing);margin-bottom:0}@media (max-width: 768px){body{padding:12px}.container,.chat-box{padding:var(--spacing)}.chat-header{flex-direction:column;gap:12px}.chat-status-indicators{align-items:flex-start;width:100%}.user-message{margin-left:10%;max-width:90%}.ai-message{margin-right:10%;max-width:90%}.chat-input{font-size:16px}.input-hint{flex-direction:column;align-items:flex-start;gap:4px}.buttonsContainer{flex-direction:column;width:100%}.buttonsContainer a{width:100%}.button--email,.button--link{width:100%;justify-content:center}}body:after{content:"🌙";position:fixed;top:20px;right:20px;font-size:20px;opacity:.5;cursor:pointer;transition:opacity .2s ease}body:after:hover{opacity:1}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--secondary-color);outline-offset:2px}.button--email:focus-visible,.button--link:focus-visible{outline:2px solid var(--secondary-color);outline-offset:2px}.chat-input:focus-visible{outline:none}.input-group:focus-within{border-color:var(--secondary-color);box-shadow:0 0 0 3px #6366f11a}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (prefers-contrast: high){:root{--border-color: #000000;--text-muted: #333333}.content-grid section{border-width:3px}.button--link{border-width:3px}}.skip-link{position:absolute;top:-40px;left:0;background:var(--primary-color);color:#fff;padding:8px 16px;z-index:100;transition:top .2s ease}.skip-link:focus{top:0}:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:#1e293b;background-color:#f8fafc;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}a{font-weight:500;color:#6366f1;text-decoration:none;transition:color .2s ease}a:hover{color:#4f46e5}body{margin:0;display:flex;flex-direction:column;align-items:center;min-width:320px;min-height:100vh}h1{font-size:2rem;line-height:1.2;margin:0}h2{font-size:1.5rem;line-height:1.3;margin:0}button{border-radius:12px;border:1px solid #e2e8f0;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#fff;color:#1e293b;cursor:pointer;transition:all .2s ease}button:hover{border-color:#6366f1;background-color:#f8fafc}button:focus,button:focus-visible{outline:2px solid #6366f1;outline-offset:2px}
