body{color:#fff;background:#0a0a0a;height:100vh;margin:0;font-family:Inter,sans-serif;overflow:hidden}.chat-container{box-sizing:border-box;flex-direction:column;justify-content:center;align-items:center;gap:1rem;height:100vh;padding:1rem;display:flex}.chat-layout{flex-direction:column;gap:1rem;width:min(900px,100%);max-width:900px;display:flex}.title{margin:0;font-size:3.5rem}.subtitle{color:#bdbdbd;margin:0 0 1rem}.suggestions{flex-wrap:wrap;justify-content:center;gap:1rem;margin-bottom:1rem;display:flex}.prompt-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer;background:#ffffff0d;border:1px solid #ffffff14;border-radius:16px;width:220px;padding:1rem;transition:all .3s}.prompt-card:hover{border-color:#a855f780;transform:translateY(-6px)scale(1.02);box-shadow:0 0 25px #a855f74d}.prompt-card h3{margin:0 0 .5rem}.prompt-card p{color:#bdbdbd;margin:0;font-size:.9rem}.messages{scroll-behavior:smooth;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff08;border:1px solid #ffffff0f;border-radius:18px;flex-direction:column;gap:1rem;width:100%;max-width:90%;height:320px;padding:1rem;line-height:1.5;display:flex;overflow-y:auto}.empty-state{text-align:center;color:#bdbdbd;margin-top:3rem;line-height:2}.message{border-radius:18px;max-width:75%;padding:1rem;line-height:1.5}.message.user{align-self:flex-end;max-width:75%}.user{background:linear-gradient(135deg,#7c3aed,#a855f7);align-self:flex-end}.assistant{background:#ffffff14;align-self:flex-start}.insurance-message{background:0 0;border:none;width:100%;padding:0;max-width:100%!important}.message:has(.insurance-form){width:100%;max-width:100%}.input-panel{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-sizing:border-box;background:#ffffff0d;border:1px solid #ffffff14;border-radius:20px;align-items:center;gap:1rem;width:100%;padding:1rem;display:flex}.input-panel input{color:#fff;background:0 0;border:none;outline:none;flex:1;font-size:1rem}.input-panel input::placeholder{color:#bdbdbd}.input-panel button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#7c3aed,#a855f7);border:none;border-radius:14px;margin:0;padding:.9rem 2rem;font-weight:600;transition:all .3s}.input-panel button:hover{transform:translateY(-2px);box-shadow:0 0 25px #a855f766}.background{z-index:-1;position:fixed;inset:0;overflow:hidden}.blob{filter:blur(120px);opacity:.5;border-radius:50%;animation:20s ease-in-out infinite float;position:absolute}.blob-1{background:#7c3aed;width:350px;height:350px;top:10%;left:10%}.blob-2{background:#a855f7;width:400px;height:400px;animation-delay:-8s;bottom:5%;right:10%}.blob-3{background:#9333ea;width:300px;height:300px;animation-delay:-14s;top:50%;left:45%}@keyframes float{0%{transform:translate(0)scale(1)}25%{transform:translate(40px,-40px)scale(1.1)}50%{transform:translate(-20px,30px)scale(.9)}75%{transform:translate(30px,20px)scale(1.05)}to{transform:translate(0)scale(1)}}.input-wrapper{position:relative}.animated-placeholder{color:#9ca3af;pointer-events:none;align-items:center;gap:2px;transition:opacity .3s;display:flex;position:absolute;top:50%;left:20px;transform:translateY(-50%)}.cursor{background:#fff;width:2px;height:18px;animation:.8s infinite blink}@keyframes blink{50%{opacity:0}}.github-card{border:1px solid #ffffff40;transition:all .3s}.github-card:hover{transform:translateY(-4px);box-shadow:0 10px 25px #00000040}.card-title{align-items:center;gap:10px;display:flex}.card-icon{font-size:1.3rem}pre{background:#1f1f1f;border-radius:10px;padding:1rem;overflow-x:auto}code{font-family:monospace}.message.assistant{align-self:flex-start;max-width:75%}.message.assistant h1,.message.assistant h2,.message.assistant h3{margin-top:1rem;margin-bottom:.5rem}.message.assistant.insurance-message{width:100%;max-width:100%}.message.assistant ul{margin:.5rem 0;padding-left:1.4rem}.message.assistant p{margin:.5rem 0}.message.assistant pre{background:#1d1d1d;border-radius:8px;padding:1rem;overflow-x:auto}.message.assistant code{font-family:monospace}.insurance-form{border-radius:16px;flex-direction:column;gap:12px;max-width:420px;margin:12px auto;padding:18px;display:flex}.insurance-form form{flex-direction:column;gap:10px;display:flex}.insurance-form label{margin-bottom:2px;font-weight:600}.insurance-form input,.insurance-form select{border-radius:8px;padding:10px 12px}insurance-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;width:100%;display:grid}.insurance-form{background:#ffffff0d;border:1px solid #ffffff14;border-radius:18px;flex-direction:column;gap:18px;width:100%;max-width:760px;margin:0 auto;padding:24px;display:flex}.insurance-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.form-group{flex-direction:column;gap:6px;display:flex}.form-group label{font-size:.9rem;font-weight:600}.form-group input,.form-group select{color:#fff;box-sizing:border-box;background:#ffffff0a;border:1px solid #ffffff1f;border-radius:10px;width:100%;padding:12px}.estimate-btn{grid-column:1/-1;width:100%;margin-top:8px}.back-btn{width:100%}.prediction-result{background:#ffffff14;border-radius:12px;margin-top:16px;padding:16px}@media (width<=768px){.suggestions{grid-template-columns:1fr}.prediction-form{width:100%;padding:16px}.insurance-grid{grid-template-columns:1fr}.message{max-width:100%}.input-panel{flex-direction:column}.input-panel button{width:100%}}.estimate-btn,.back-btn{color:#fff;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff14;border-radius:10px;width:100%;margin-top:14px;padding:12px 18px;font-size:.95rem;font-weight:600;transition:all .25s}.estimate-btn:hover,.back-btn:hover{background:#7c3aed2e;border-color:#7c3aed80;transform:translateY(-1px)}.estimate-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.estimate-btn:hover,.back-btn:hover{background:linear-gradient(135deg,#8b5cf6,#6d28d9);transform:translateY(-2px)}.estimate-btn:disabled{cursor:not-allowed;background:#555;transform:none}.back-btn{margin-top:16px}.prediction-form textarea{resize:vertical;color:#fff;box-sizing:border-box;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:10px;width:100%;min-height:180px;padding:14px}
