:root{--sans:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;--accent:#a855f7;--accent-dim:#7c3aed;font:16px/1.5 var(--sans);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,:before,:after{box-sizing:border-box}body{background:#2f3e3e;margin:0}#root{width:100%;min-height:100svh}.page{background:#252a2a;justify-content:center;align-items:center;min-height:100svh;padding:10px 5px;display:flex}.chat-container{border:1px solid #2f3e3e;border-radius:16px;width:100%;max-width:960px;height:78svh;min-height:420px;display:flex;overflow:hidden}.sidebar-strip{background:#252a2a;border-right:1px solid #1e1b2e;flex-direction:column;flex-shrink:0;align-items:flex-start;width:44px;padding:10px 0 0 10px;display:flex}.menu-toggle{cursor:pointer;background:0 0;border:none;flex-direction:column;flex-shrink:0;gap:4px;padding:4px 2px;display:flex}.menu-toggle span{background:#dd7c61;border-radius:2px;width:18px;height:2px;transition:background .15s;display:block}.menu-toggle:hover span{background:#d49280}.menu-toggle--header{display:none}.chat-area{flex:1;min-width:0;display:flex;position:relative;overflow:hidden}.sidebar-overlay{z-index:10;background:#252a2a;border-right:1px solid #1e1b2e;flex-direction:column;gap:8px;width:210px;padding:12px;transition:transform .22s;display:flex;position:absolute;top:0;bottom:0;left:0;transform:translate(-100%);box-shadow:6px 0 24px #00000073}.sidebar-overlay--open{transform:translate(0)}.sidebar-header{flex-shrink:0;align-items:center;gap:8px;display:flex}.sidebar-close-btn{color:#dd7c61;cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;padding:6px 8px;font-size:18px;line-height:1;transition:background .15s;display:none}.sidebar-close-btn:hover{background:#dd7c6126}.new-chat-btn{color:#000;width:100%;font-size:15px;font-family:var(--sans);cursor:pointer;white-space:nowrap;background:#dd7c61;border:none;border-radius:8px;flex-shrink:0;padding:9px 12px;transition:background .2s}.new-chat-btn:hover{background:#ab604b}.session-list{scrollbar-width:thin;scrollbar-color:#dd7c61 transparent;flex:1;margin:0;padding:0;list-style:none;overflow-y:auto}.session-item{cursor:pointer;border-radius:8px;align-items:center;gap:4px;min-width:0;padding:7px 6px 7px 10px;transition:background .15s;display:flex}.session-item:hover,.session-item.active{background:#834a3a}.session-preview{color:#d4d4d8;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:13px;overflow:hidden}.session-actions{flex-shrink:0;align-items:center;gap:4px;display:flex}.dots-btn{color:#dd7c61;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px 8px;font-size:18px;line-height:1;transition:color .15s,background .15s}.dots-btn:hover{color:#fff;background:#dd7c6133}.delete-btn{color:#f87171;cursor:pointer;white-space:nowrap;background:#f8717114;border:1px solid #f8717140;border-radius:6px;padding:5px 12px;font-size:13px;transition:background .15s}.delete-btn:hover{background:#f871712e}.chat-shell{color:#e4e4e7;min-width:0;font-family:var(--sans);background:#252a2a;flex-direction:column;flex:1;display:flex}.chat-header{border-bottom:1px solid #1e1b2e;flex-shrink:0;align-items:center;gap:12px;padding:12px 20px;display:flex}.chat-title{color:#dd7c61;flex-direction:column;font-size:17px;font-weight:600;line-height:1.2;display:flex}.chat-title-sub{color:#aaa;letter-spacing:.04em;font-size:9px;font-weight:400}.location-btn{cursor:pointer;opacity:.35;background:0 0;border:none;margin-left:auto;padding:4px;font-size:20px;line-height:1;transition:opacity .2s}.location-btn:hover{opacity:.6}.location-btn--active{opacity:1}.location-btn--denied{opacity:.2;cursor:not-allowed}.message-list{scrollbar-width:thin;scrollbar-color:#2e1065 transparent;flex-direction:column;flex:1;gap:12px;padding:24px 20px 4px;display:flex;overflow-y:auto}.empty-state{color:#52525b;text-align:center;margin:auto;padding:0 24px;font-family:"Press Start 2P",monospace;font-size:13px;line-height:1.8}.bubble-row{display:flex}.bubble-row.user{justify-content:flex-end}.bubble-row.assistant,.bubble-row.error{justify-content:flex-start}.bubble{white-space:pre-wrap;word-break:break-word;border-radius:16px;max-width:72%;padding:10px 16px;font-size:16px;line-height:1.55}.bubble.user{color:#eae7ff;background:#1b1d1d;border-bottom-right-radius:4px}.bubble.assistant{color:#d4d4d8;white-space:normal;background:#101313;border:1px solid #27232f;border-bottom-left-radius:4px}.bubble.assistant p{margin:0 0 .5em}.bubble.assistant p:last-child{margin-bottom:0}.bubble.assistant ul,.bubble.assistant ol{margin:.25em 0 .5em 1.25em;padding:0}.bubble.assistant li{margin-bottom:.2em}.bubble.assistant strong{color:#eae7ff;font-weight:600}.bubble.assistant code{background:#1e2626;border-radius:4px;padding:1px 5px;font-size:.9em}.bubble.error{color:#f87171;background:#1f0a0a;border:1px solid #450a0a;border-bottom-left-radius:4px}.bubble.typing{align-items:center;gap:5px;padding:12px 16px;display:flex}.bubble.typing span{background:#dd7c61;border-radius:50%;width:7px;height:7px;animation:1.2s infinite bounce}.bubble.typing span:nth-child(2){animation-delay:.2s}.bubble.typing span:nth-child(3){animation-delay:.4s}@keyframes bounce{0%,80%,to{opacity:.5;transform:translateY(0)}40%{opacity:1;transform:translateY(-6px)}}.tool-spinner{border:2px solid #dd7c614d;border-top-color:#dd7c61;border-radius:50%;width:16px;height:16px;margin-top:8px;animation:.8s linear infinite spin;display:block}@keyframes spin{to{transform:rotate(360deg)}}.prompt-suggestions{flex-wrap:wrap;gap:8px;padding:4px;display:flex}@keyframes chip-fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.suggestion-chip{color:#0e8080;cursor:pointer;white-space:nowrap;opacity:0;background:0 0;border:1.5px solid #0e8080;border-radius:8px;padding:8px 10px;font-family:"Press Start 2P",monospace;font-size:9px;line-height:1.6;transition:background .2s,color .2s;animation:.4s forwards chip-fade-in}.suggestion-chip:first-child{animation-delay:50ms}.suggestion-chip:nth-child(2){animation-delay:.15s}.suggestion-chip:nth-child(3){animation-delay:.25s}.suggestion-chip:nth-child(4){animation-delay:.35s}.suggestion-chip:hover{color:#e4e4e7;background:#0e8080}.chat-footer{background:#252a2a;border-top:3px solid #1e1b2e;flex-shrink:0;align-items:flex-end;gap:10px;padding:5px 10px;display:flex}.chat-input{resize:none;color:#e4e4e7;font-size:15px;font-family:var(--sans);scrollbar-width:thin;scrollbar-color:#3f5757 transparent;background:#1b1d1d;border:1px solid #2a3030;border-radius:12px;outline:none;flex:1;max-height:160px;padding:10px 14px;line-height:1.5;transition:border-color .2s;overflow-y:auto}.chat-input::placeholder{color:#52525b}.chat-input:focus{border-color:#dd7c61}.chat-input:disabled{opacity:.5;cursor:not-allowed}.send-btn{color:#000;cursor:pointer;background:#dd7c61;border:none;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:25px;transition:background .2s,opacity .2s;display:flex}.send-btn:hover:not(:disabled){background:#ac6956}.send-btn:disabled{opacity:.35;cursor:not-allowed}@media (width<=640px){.page{align-items:stretch;padding:0}.chat-container{border:none;border-radius:0;height:100svh}.sidebar-strip{display:none}.menu-toggle--header{display:flex}.sidebar-overlay{width:100%}.sidebar-close-btn{display:block}.new-chat-btn{flex:1}}
