@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;font-weight:400;color:#e2e8f0;background-color:#0f172a}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-height:100vh}a{color:inherit}button{font:inherit}input,button,textarea{font-family:inherit}:root{color-scheme:light dark}.app{min-height:100vh;margin:0;background:radial-gradient(circle at top,rgba(99,102,241,.35),transparent 65%),radial-gradient(circle at bottom,rgba(56,189,248,.3),transparent 60%),#0b1220;display:flex;align-items:center;justify-content:center;padding:clamp(1.5rem,2.5vw,3rem)}.chat-shell{width:min(1100px,100%);height:min(92vh,980px);background:#0f172ac7;border:1px solid rgba(148,163,184,.25);border-radius:1.75rem;padding:clamp(1.25rem,2vw,2rem);box-shadow:0 40px 80px #0f172a8c;display:grid;grid-template-columns:minmax(220px,320px) 1fr;gap:1.25rem;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);color:#e2e8f0;position:relative}.conversation-sidebar{background:#0b1220e0;border:1px solid rgba(148,163,184,.2);border-radius:1.25rem;padding:1.1rem;display:grid;grid-template-rows:auto 1fr auto;gap:1rem;overflow:hidden}.sidebar-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.sidebar-header h2{margin:0;font-size:1rem;letter-spacing:.08em;text-transform:uppercase;color:#94a3b8e6}.sidebar-header button{background:linear-gradient(135deg,#ec4899e6,#a537fdeb);border:none;border-radius:.85rem;padding:.5rem .95rem;font-weight:700;color:#0f172a;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.sidebar-header button:hover,.sidebar-header button:focus-visible{transform:translateY(-1px);box-shadow:0 18px 34px #ec489959;outline:none}.conversation-list{overflow-y:auto;display:grid;gap:.75rem;padding-right:.35rem}.conversation-item{display:grid;grid-template-columns:1fr auto;gap:.5rem;align-items:start;background:#1e293b8c;border:1px solid transparent;border-radius:1rem;padding:.75rem .85rem;transition:border .2s ease,background .2s ease,transform .2s ease}.conversation-item.active{border-color:#ec4899a6;background:#3b82f62e;transform:translateY(-1px)}.conversation-select{background:transparent;border:none;color:inherit;padding:0;text-align:left;display:grid;gap:.35rem;cursor:pointer}.conversation-select:focus-visible{outline:2px solid rgba(96,165,250,.6);outline-offset:2px}.conversation-title{font-weight:600;font-size:.95rem}.conversation-meta{font-size:.75rem;color:#94a3b8cc}.conversation-delete{background:#0f172abf;border:1px solid rgba(148,163,184,.25);color:#e2e8f0a6;border-radius:.75rem;width:2rem;height:2rem;font-size:1.1rem;display:grid;place-items:center;cursor:pointer;transition:transform .2s ease,background .2s ease,color .2s ease}.conversation-delete:hover,.conversation-delete:focus-visible{background:#ef444438;color:#fee2e2f2;outline:none;transform:translateY(-1px)}.sidebar-footer{display:grid;gap:.6rem;font-size:.85rem;color:#94a3b8d9}.clear-history{background:transparent;border:1px solid rgba(148,163,184,.35);border-radius:.85rem;padding:.55rem .85rem;color:inherit;font-weight:600;cursor:pointer;transition:background .2s ease,transform .2s ease}.clear-history:hover,.clear-history:focus-visible{background:#94a3b838;transform:translateY(-1px);outline:none}.chat-main{display:grid;grid-template-rows:auto 1fr auto auto auto;gap:1rem;min-width:0}.chat-header{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;align-items:center;justify-content:space-between}.chat-title-group{display:flex;align-items:center;gap:.75rem}.chat-header h1{margin:0;font-size:clamp(1.5rem,1.8vw,2rem);letter-spacing:.02em}.chat-subtitle{margin:.4rem 0 0;color:#e2e8f0c7;font-size:.95rem;max-width:48ch}.sidebar-toggle{background:#0f172aa6;border:1px solid rgba(148,163,184,.3);border-radius:.85rem;color:#e2e8f0e6;width:2.4rem;height:2.4rem;display:none;place-items:center;cursor:pointer;transition:transform .2s ease,background .2s ease}.sidebar-toggle:hover,.sidebar-toggle:focus-visible{background:#3b82f640;transform:translateY(-1px);outline:none}.chat-status{display:inline-flex;align-items:center;gap:.5rem;font-weight:600;color:#e2e8f0eb}.chat-actions{display:flex;align-items:center;gap:.75rem}.status-indicator{width:.75rem;height:.75rem;border-radius:999px;background:#34d399;box-shadow:0 0 16px #34d39999}.status-indicator.busy{background:#f97316;box-shadow:0 0 16px #f9731699}.messages{overflow-y:auto;padding:.5rem .25rem .5rem 0;display:flex;flex-direction:column;gap:1.25rem}.messages::-webkit-scrollbar{width:.5rem}.messages::-webkit-scrollbar-thumb{background:#94a3b859;border-radius:999px}.message-wrapper{display:flex;flex-direction:column;gap:.35rem;max-width:min(82%,640px)}.message-wrapper.user{margin-left:auto;align-items:flex-end}.message-meta{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:#94a3b8e6}.message{padding:1rem 1.15rem;border-radius:1.25rem;line-height:1.5;background:#1e293bd9;border:1px solid rgba(148,163,184,.3);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.message p{margin:0}.message+.message p{margin-top:.5rem}.message.assistant{border-top-left-radius:.35rem}.message.user{background:linear-gradient(135deg,#3b82f6f2,#38bdf8e6);border:none;border-top-right-radius:.35rem;color:#0f172a;font-weight:600;box-shadow:0 12px 24px #2563eb4d}.message-wrapper.thinking .message{align-self:flex-start;width:88px}.typing-indicator{display:inline-flex;gap:.35rem;align-items:center}.typing-indicator span{width:.5rem;height:.5rem;border-radius:999px;background:#94a3b8cc;animation:pulse 1.2s infinite ease-in-out}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes pulse{0%,80%,to{transform:scale(.9);opacity:.4}40%{transform:scale(1.1);opacity:1}}.suggestions{background:#1e293bb3;border-radius:1.25rem;padding:1rem;border:1px solid rgba(148,163,184,.25);display:grid;gap:.75rem}.suggestions-title{margin:0;font-size:.9rem;text-transform:uppercase;letter-spacing:.12em;color:#94a3b8d9}.suggestion-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem}.suggestion-buttons button{background:#3b82f62e;border:1px solid rgba(59,130,246,.35);color:#bfdbfef2;border-radius:.9rem;padding:.75rem 1rem;font-weight:600;text-align:left;transition:transform .2s ease,background .2s ease}.suggestion-buttons button:disabled{opacity:.5;cursor:not-allowed;transform:none}.suggestion-buttons button:hover,.suggestion-buttons button:focus-visible{transform:translateY(-2px);background:#3b82f64d;outline:none}.composer{display:flex;align-items:center;gap:.75rem;background:#0f172ad9;padding:.85rem;border-radius:1.25rem;border:1px solid rgba(148,163,184,.3)}.composer input{flex:1;background:transparent;border:none;color:inherit;font-size:1rem;padding:.5rem .75rem}.composer input:focus{outline:none}.composer button{background:linear-gradient(135deg,#a855f7,#6366f1);border:none;color:#fff;font-weight:600;padding:.6rem 1.25rem;border-radius:.9rem;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;display:inline-flex;align-items:center;gap:.4rem}.composer button:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.composer button:not(:disabled):hover,.composer button:not(:disabled):focus-visible{transform:translateY(-1px);box-shadow:0 16px 30px #6366f159;outline:none}.chat-footer{font-size:.85rem;color:#94a3b8d9;display:grid;gap:.35rem}.chat-footer code{background:#0f172a99;padding:.1rem .35rem;border-radius:.35rem;font-size:.85em;margin-left:.35rem}.chat-footer-meta{margin:0;font-style:italic;color:#94a3b8bf}.sidebar-backdrop{position:fixed;inset:0;background:#0f172a99;border:none;padding:0;margin:0;cursor:pointer;z-index:10;display:none}@media (max-width: 1024px){.chat-shell{width:100%}}@media (max-width: 900px){.chat-shell{grid-template-columns:1fr;height:auto;min-height:100vh;border-radius:1rem}.conversation-sidebar{position:fixed;inset:1.5rem;max-width:clamp(260px,75vw,360px);background:#0b1220f2;box-shadow:0 24px 48px #0f172aa6;transform:translate(-120%);opacity:0;pointer-events:none;transition:transform .3s ease,opacity .3s ease;z-index:20}.conversation-sidebar.open{transform:translate(0);opacity:1;pointer-events:auto}.sidebar-backdrop{display:block}.sidebar-toggle{display:inline-grid}}@media (max-width: 640px){.chat-shell{padding:1.25rem clamp(.75rem,4vw,1.5rem)}.suggestion-buttons{grid-template-columns:1fr}.message-wrapper{max-width:100%}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.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}
