:root{--bg-primary: #1a1a2e;--bg-secondary: #16213e;--bg-surface: #0f3460;--accent: #00ff88;--accent-dim: #00cc6a;--text-primary: #e0e0e0;--text-secondary: #8a8a9a;--text-muted: #555566;--agent-bg: #1e2a3a;--human-bg: #0f3460;--border: #2a2a3e;--input-height: 56px;--safe-bottom: env(safe-area-inset-bottom, 0px)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;overflow:hidden}body{font-family:JetBrains Mono,Fira Code,Cascadia Code,Consolas,monospace;background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5}#app{display:flex;flex-direction:column;height:100%;max-width:800px;margin:0 auto}.app-header{flex-shrink:0;padding:12px 16px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.app-header h1{font-size:14px;font-weight:600;color:var(--accent);letter-spacing:.05em;text-transform:uppercase}.app-header .status{font-size:11px;color:var(--text-muted)}.content-area{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}.message-list{height:100%;overflow-y:auto;padding:16px;padding-bottom:calc(var(--input-height) + var(--safe-bottom) + 8px);display:flex;flex-direction:column;gap:12px;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.message-list::-webkit-scrollbar{width:4px}.message-list::-webkit-scrollbar-track{background:transparent}.message-list::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.message{display:flex;flex-direction:column;max-width:85%;animation:messageIn .2s ease-out}@keyframes messageIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.message.agent{align-self:flex-start}.message.human{align-self:flex-end}.message .sender-label{font-size:10px;font-weight:600;letter-spacing:.1em;margin-bottom:4px;padding:0 8px}.message.agent .sender-label{color:var(--accent)}.message.human .sender-label{color:#6af}.message .bubble{padding:10px 14px;border-radius:8px;font-size:13px;line-height:1.5;word-wrap:break-word;overflow-wrap:break-word}.message.agent .bubble{background:var(--agent-bg);border:1px solid var(--border);border-bottom-left-radius:2px}.message.human .bubble{background:var(--human-bg);border:1px solid var(--border);border-bottom-right-radius:2px}.message .timestamp{font-size:10px;color:var(--text-muted);margin-top:4px;padding:0 8px;cursor:pointer;-webkit-user-select:none;user-select:none}.message.human .timestamp{text-align:right}.message .timestamp:hover{color:var(--text-secondary)}.empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text-muted);gap:8px;padding:32px;text-align:center}.empty-state .empty-icon{font-size:32px;opacity:.3;margin-bottom:8px}.empty-state .empty-text{font-size:13px;color:var(--text-muted)}.empty-state .empty-hint{font-size:11px;color:var(--text-muted);opacity:.6;margin-top:4px}.loading-state{flex:1;display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-size:12px}.loading-state .dot-pulse{display:inline-flex;gap:4px;margin-left:4px}.loading-state .dot-pulse span{width:4px;height:4px;background:var(--accent);border-radius:50%;animation:dotPulse 1.2s infinite ease-in-out}.loading-state .dot-pulse span:nth-child(2){animation-delay:.2s}.loading-state .dot-pulse span:nth-child(3){animation-delay:.4s}@keyframes dotPulse{0%,80%,to{opacity:.3;transform:scale(.8)}40%{opacity:1;transform:scale(1.2)}}#input-area{position:fixed;bottom:0;left:0;right:0;max-width:800px;margin:0 auto;display:flex;align-items:center;gap:8px;padding:8px 12px;padding-bottom:calc(8px + var(--safe-bottom));background:var(--bg-secondary);border-top:1px solid var(--border);min-height:var(--input-height);z-index:100}#message-input{flex:1;background:var(--bg-primary);border:1px solid var(--border);border-radius:6px;padding:8px 12px;font-size:16px;font-family:inherit;color:var(--text-primary);outline:none;transition:border-color .15s}#message-input::placeholder{color:var(--text-muted)}#message-input:focus{border-color:var(--accent)}#message-input:disabled{opacity:.5}#attach-btn{flex-shrink:0;width:36px;height:36px;border-radius:50%;border:1px solid var(--border);background:var(--bg-primary);color:var(--text-secondary);font-size:20px;font-family:inherit;font-weight:400;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1;transition:background-color .15s,border-color .15s,color .15s}#attach-btn:hover{background:var(--bg-surface);border-color:var(--accent);color:var(--text-primary)}#attach-btn:active{background:var(--bg-surface);transform:scale(.95)}#send-btn{flex-shrink:0;background:var(--accent);color:var(--bg-primary);border:none;border-radius:6px;padding:8px 16px;font-size:12px;font-family:inherit;font-weight:600;cursor:pointer;text-transform:uppercase;letter-spacing:.05em;transition:background-color .15s,opacity .15s;animation:fadeIn .15s ease-out}#send-btn:hover{background:var(--accent-dim)}#send-btn:disabled{opacity:.5;cursor:not-allowed}@keyframes fadeIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.lightbox-overlay.svelte-93g9q7{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000eb;z-index:1000;display:flex;align-items:center;justify-content:center;animation:svelte-93g9q7-lightboxIn .2s ease-out;-webkit-tap-highlight-color:transparent}@keyframes svelte-93g9q7-lightboxIn{0%{opacity:0}to{opacity:1}}.lightbox-container.svelte-93g9q7{display:flex;flex-direction:column;align-items:center;max-width:95vw;max-height:95vh;padding:16px}.lightbox-image.svelte-93g9q7{max-width:100%;max-height:85vh;object-fit:contain;border-radius:4px;user-select:none;-webkit-user-select:none;pointer-events:none}.lightbox-caption.svelte-93g9q7{margin-top:12px;font-size:12px;color:var(--text-secondary);text-align:center;max-width:100%}.lightbox-close.svelte-93g9q7{position:absolute;top:16px;right:16px;width:36px;height:36px;border-radius:50%;border:1px solid rgba(255,255,255,.15);background:#ffffff14;color:var(--text-primary);font-size:20px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .15s}.lightbox-close.svelte-93g9q7:hover{background:#ffffff2e}.lightbox-close.svelte-93g9q7:active{background:#ffffff47}.thumbnail.svelte-1sds55q.svelte-1sds55q{width:240px;height:240px;object-fit:contain;border-radius:4px;display:block;cursor:pointer;transition:transform .15s ease,opacity .15s ease}.thumbnail.svelte-1sds55q.svelte-1sds55q:hover{transform:scale(1.02)}.thumbnail.svelte-1sds55q.svelte-1sds55q:active{opacity:.85;transform:scale(.98)}.thumbnail.pending-thumb.svelte-1sds55q.svelte-1sds55q{opacity:.6;cursor:default}.image-container.svelte-1sds55q.svelte-1sds55q{position:relative;display:inline-block}.caption.svelte-1sds55q.svelte-1sds55q{margin-top:6px;font-size:12px;color:var(--text-secondary)}.image-spinner.svelte-1sds55q.svelte-1sds55q{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center}.spinner-ring.svelte-1sds55q.svelte-1sds55q{width:32px;height:32px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:svelte-1sds55q-spin .8s linear infinite}@keyframes svelte-1sds55q-spin{to{transform:rotate(360deg)}}.send-error.svelte-1sds55q.svelte-1sds55q{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:#0009;border-radius:4px}.error-text.svelte-1sds55q.svelte-1sds55q{font-size:11px;color:#f66;text-transform:uppercase;letter-spacing:.05em}.resend-btn.svelte-1sds55q.svelte-1sds55q{background:var(--accent);color:var(--bg-primary);border:none;border-radius:4px;padding:4px 12px;font-size:11px;font-family:inherit;font-weight:600;cursor:pointer;text-transform:uppercase;letter-spacing:.05em;transition:background-color .15s}.resend-btn.svelte-1sds55q.svelte-1sds55q:hover{background:var(--accent-dim)}.resend-btn.svelte-1sds55q.svelte-1sds55q:active{transform:scale(.95)}.message.send-failed.svelte-1sds55q .bubble.svelte-1sds55q{border-color:#ff66664d}.attach-backdrop.svelte-1h3c1fl{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:flex-end;justify-content:center;background:#0006;animation:svelte-1h3c1fl-backdropIn .2s ease-out;-webkit-tap-highlight-color:transparent}@keyframes svelte-1h3c1fl-backdropIn{0%{opacity:0}to{opacity:1}}.attach-panel.svelte-1h3c1fl{width:100%;max-width:800px;background:var(--bg-secondary);border-top:1px solid var(--border);border-radius:16px 16px 0 0;padding:20px 16px;padding-bottom:calc(20px + var(--safe-bottom));display:flex;justify-content:center;gap:32px;animation:svelte-1h3c1fl-slideUp .25s ease-out}@keyframes svelte-1h3c1fl-slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.attach-option.svelte-1h3c1fl{display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;padding:12px 20px;border-radius:12px;border:1px solid var(--border);background:var(--bg-primary);transition:background-color .15s,border-color .15s;min-width:80px}.attach-option.svelte-1h3c1fl:hover{background:var(--bg-surface);border-color:var(--accent)}.attach-option.svelte-1h3c1fl:active{background:var(--bg-surface);transform:scale(.97)}.attach-icon.svelte-1h3c1fl{font-size:28px;line-height:1}.attach-label.svelte-1h3c1fl{font-size:11px;color:var(--text-secondary);font-family:inherit;letter-spacing:.05em;text-transform:uppercase}.hidden-input.svelte-xti3co.svelte-xti3co{display:none}.album-picker.svelte-xti3co.svelte-xti3co{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;background:var(--bg-primary);display:flex;flex-direction:column;animation:svelte-xti3co-fadeIn .2s ease-out}@keyframes svelte-xti3co-fadeIn{0%{opacity:0}to{opacity:1}}.top-bar.svelte-xti3co.svelte-xti3co{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:12px 16px;padding-top:calc(12px + env(safe-area-inset-top,0px));border-bottom:1px solid var(--border);background:var(--bg-secondary)}.back-btn.svelte-xti3co.svelte-xti3co{background:none;border:none;color:var(--text-secondary);font-family:inherit;font-size:13px;cursor:pointer;padding:8px 12px;border-radius:6px;transition:background-color .15s,color .15s}.back-btn.svelte-xti3co.svelte-xti3co:hover{background:var(--bg-surface);color:var(--text-primary)}.back-btn.svelte-xti3co.svelte-xti3co:active{opacity:.8}.top-bar-spacer.svelte-xti3co.svelte-xti3co{min-width:80px}.selection-count.svelte-xti3co.svelte-xti3co{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.grid-area.svelte-xti3co.svelte-xti3co{flex:1;overflow-y:auto;padding:12px;-webkit-overflow-scrolling:touch}.empty-picker.svelte-xti3co.svelte-xti3co{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:12px;color:var(--text-muted);cursor:pointer;transition:opacity .15s}.empty-picker.svelte-xti3co.svelte-xti3co:hover{opacity:.8}.empty-picker.svelte-xti3co.svelte-xti3co:active{opacity:.6}.empty-picker.svelte-xti3co .empty-icon.svelte-xti3co{font-size:40px;opacity:.3}.empty-picker.svelte-xti3co .empty-text.svelte-xti3co{font-size:13px}.thumb-grid.svelte-xti3co.svelte-xti3co{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding-bottom:80px}.thumb-item.svelte-xti3co.svelte-xti3co{position:relative;aspect-ratio:1;border-radius:8px;overflow:hidden;cursor:pointer;border:2px solid transparent;transition:border-color .15s,transform .1s,opacity .15s;-webkit-tap-highlight-color:transparent}.thumb-item.selected.svelte-xti3co.svelte-xti3co{border-color:var(--accent)}.thumb-item.at-limit.svelte-xti3co.svelte-xti3co{cursor:not-allowed;opacity:.4}.thumb-item.svelte-xti3co.svelte-xti3co:not(.at-limit):active{transform:scale(.96)}.thumb-img.svelte-xti3co.svelte-xti3co{width:100%;height:100%;object-fit:cover;display:block}.checkmark-overlay.svelte-xti3co.svelte-xti3co{position:absolute;top:0;left:0;right:0;bottom:0;background:#00ff8826;display:flex;align-items:center;justify-content:center}.checkmark.svelte-xti3co.svelte-xti3co{width:32px;height:32px;background:var(--accent);color:var(--bg-primary);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700}.dim-overlay.svelte-xti3co.svelte-xti3co{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000080;pointer-events:none}.bottom-bar.svelte-xti3co.svelte-xti3co{position:fixed;bottom:0;left:0;right:0;max-width:800px;margin:0 auto;display:flex;align-items:center;gap:12px;padding:12px 16px;padding-bottom:calc(12px + var(--safe-bottom));background:var(--bg-secondary);border-top:1px solid var(--border);z-index:10}.caption-btn.svelte-xti3co.svelte-xti3co{flex:1;background:var(--bg-primary);color:var(--text-secondary);border:1px solid var(--border);border-radius:8px;padding:12px 16px;font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;text-transform:uppercase;letter-spacing:.05em;transition:background-color .15s,color .15s,opacity .15s}.caption-btn.svelte-xti3co.svelte-xti3co:hover:not(:disabled){background:var(--bg-surface);color:var(--text-primary);border-color:var(--accent)}.caption-btn.svelte-xti3co.svelte-xti3co:disabled{opacity:.3;cursor:not-allowed}.send-btn.svelte-xti3co.svelte-xti3co{flex:1;background:var(--accent);color:var(--bg-primary);border:none;border-radius:8px;padding:12px 16px;font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;text-transform:uppercase;letter-spacing:.05em;transition:background-color .15s,opacity .15s}.send-btn.svelte-xti3co.svelte-xti3co:hover:not(:disabled){background:var(--accent-dim)}.send-btn.svelte-xti3co.svelte-xti3co:disabled{opacity:.3;cursor:not-allowed}.send-btn.svelte-xti3co.svelte-xti3co:active:not(:disabled){transform:scale(.97)}.caption-view.svelte-1hhr683{position:fixed;top:0;right:0;bottom:0;left:0;z-index:400;background:var(--bg-primary);display:flex;flex-direction:column;animation:svelte-1hhr683-fadeIn .2s ease-out}@keyframes svelte-1hhr683-fadeIn{0%{opacity:0}to{opacity:1}}.top-bar.svelte-1hhr683{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:12px 16px;padding-top:calc(12px + env(safe-area-inset-top,0px));border-bottom:1px solid var(--border);background:var(--bg-secondary)}.back-btn.svelte-1hhr683{background:none;border:none;color:var(--text-secondary);font-family:inherit;font-size:13px;cursor:pointer;padding:8px 12px;border-radius:6px;transition:background-color .15s,color .15s}.back-btn.svelte-1hhr683:hover{background:var(--bg-surface);color:var(--text-primary)}.back-btn.svelte-1hhr683:active{opacity:.8}.image-counter.svelte-1hhr683{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.top-bar-spacer.svelte-1hhr683{min-width:80px}.image-area.svelte-1hhr683{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;padding:16px;-webkit-user-select:none;user-select:none;touch-action:pan-y}.caption-image.svelte-1hhr683{max-width:100%;max-height:100%;width:100%;object-fit:contain;border-radius:4px;pointer-events:none}.carousel-dots.svelte-1hhr683{display:flex;gap:8px;margin-top:16px;justify-content:center}.carousel-dot.svelte-1hhr683{width:8px;height:8px;border-radius:50%;border:none;background:var(--border);cursor:pointer;padding:0;transition:background-color .15s,transform .15s}.carousel-dot.active.svelte-1hhr683{background:var(--accent);transform:scale(1.3)}.carousel-dot.svelte-1hhr683:hover{background:var(--text-muted)}.carousel-dot.active.svelte-1hhr683:hover{background:var(--accent)}.caption-area.svelte-1hhr683{flex-shrink:0;padding:12px 16px;border-top:1px solid var(--border);background:var(--bg-secondary)}.caption-input.svelte-1hhr683{width:100%;background:var(--bg-primary);border:1px solid var(--border);border-radius:6px;padding:10px 14px;font-size:14px;font-family:inherit;color:var(--text-primary);outline:none;transition:border-color .15s}.caption-input.svelte-1hhr683::placeholder{color:var(--text-muted)}.caption-input.svelte-1hhr683:focus{border-color:var(--accent)}.bottom-bar.svelte-1hhr683{flex-shrink:0;display:flex;align-items:center;gap:12px;padding:12px 16px;padding-bottom:calc(12px + var(--safe-bottom));background:var(--bg-secondary);border-top:1px solid var(--border)}.edit-btn.svelte-1hhr683{flex:1;background:var(--bg-primary);color:var(--text-secondary);border:1px solid var(--border);border-radius:8px;padding:12px 16px;font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;text-transform:uppercase;letter-spacing:.05em;transition:background-color .15s,color .15s,opacity .15s}.edit-btn.svelte-1hhr683:hover{background:var(--bg-surface);color:var(--text-primary);border-color:var(--accent)}.edit-btn.svelte-1hhr683:active{opacity:.8}.send-btn.svelte-1hhr683{flex:1;background:var(--accent);color:var(--bg-primary);border:none;border-radius:8px;padding:12px 16px;font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;text-transform:uppercase;letter-spacing:.05em;transition:background-color .15s,opacity .15s}.send-btn.svelte-1hhr683:hover{background:var(--accent-dim)}.send-btn.svelte-1hhr683:active{transform:scale(.97)}.edit-view.svelte-35rcq8{position:fixed;top:0;right:0;bottom:0;left:0;z-index:500;background:var(--bg-primary);display:flex;flex-direction:column;animation:svelte-35rcq8-fadeIn .2s ease-out}@keyframes svelte-35rcq8-fadeIn{0%{opacity:0}to{opacity:1}}.top-bar.svelte-35rcq8{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:12px 16px;padding-top:calc(12px + env(safe-area-inset-top,0px));border-bottom:1px solid var(--border);background:var(--bg-secondary)}.tool-label.svelte-35rcq8{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.top-bar-spacer.svelte-35rcq8{min-width:80px}.image-area.svelte-35rcq8{flex:1;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#000;-webkit-user-select:none;user-select:none}.edit-image.svelte-35rcq8{max-width:100%;max-height:100%;width:100%;object-fit:contain;transition:transform .2s ease-out}.pen-canvas.svelte-35rcq8{position:absolute;top:0;left:0;width:100%;height:100%;touch-action:none}.pen-canvas.hidden.svelte-35rcq8{pointer-events:none;visibility:hidden}.crop-overlay.svelte-35rcq8{position:absolute;border:2px dashed var(--accent);touch-action:none}.crop-handle.svelte-35rcq8{position:absolute;width:20px;height:20px;background:var(--accent);border-radius:50%;cursor:pointer;touch-action:none}.crop-handle.top-left.svelte-35rcq8{top:-10px;left:-10px}.crop-handle.top-right.svelte-35rcq8{top:-10px;right:-10px}.crop-handle.bottom-left.svelte-35rcq8{bottom:-10px;left:-10px}.crop-handle.bottom-right.svelte-35rcq8{bottom:-10px;right:-10px}.color-swatches.svelte-35rcq8{flex-shrink:0;display:flex;gap:10px;justify-content:center;padding:10px 16px;background:var(--bg-secondary);border-top:1px solid var(--border)}.color-swatch.svelte-35rcq8{width:28px;height:28px;border-radius:50%;border:2px solid transparent;cursor:pointer;padding:0;transition:border-color .15s,transform .15s}.color-swatch.selected.svelte-35rcq8{border-color:var(--accent);transform:scale(1.2)}.color-swatch.svelte-35rcq8:active{transform:scale(.9)}.rotation-bar.svelte-35rcq8{flex-shrink:0;display:flex;gap:8px;justify-content:center;padding:10px 16px;background:var(--bg-secondary);border-top:1px solid var(--border)}.rotate-btn.svelte-35rcq8{background:var(--bg-primary);color:var(--text-secondary);border:1px solid var(--border);border-radius:6px;padding:8px 16px;font-family:inherit;font-size:12px;cursor:pointer;transition:background-color .15s,color .15s}.rotate-btn.svelte-35rcq8:hover{background:var(--bg-surface);color:var(--text-primary);border-color:var(--accent)}.rotate-btn.svelte-35rcq8:active{opacity:.8}.bottom-bar.svelte-35rcq8{flex-shrink:0;display:flex;align-items:center;gap:8px;padding:10px 16px;padding-bottom:calc(10px + var(--safe-bottom));background:var(--bg-secondary);border-top:1px solid var(--border)}.tool-btn.svelte-35rcq8{background:var(--bg-primary);color:var(--text-secondary);border:1px solid var(--border);border-radius:6px;padding:10px 14px;font-family:inherit;font-size:12px;cursor:pointer;transition:background-color .15s,color .15s,border-color .15s;white-space:nowrap}.tool-btn.active.svelte-35rcq8{background:var(--bg-surface);color:var(--accent);border-color:var(--accent)}.tool-btn.svelte-35rcq8:hover{background:var(--bg-surface);color:var(--text-primary)}.toolbar-spacer.svelte-35rcq8{flex:1}.back-btn.svelte-35rcq8{background:var(--bg-primary);color:var(--text-secondary);border:1px solid var(--border);border-radius:6px;padding:10px 14px;font-family:inherit;font-size:12px;font-weight:600;cursor:pointer;transition:background-color .15s,color .15s;white-space:nowrap}.back-btn.svelte-35rcq8:hover{background:var(--bg-surface);color:var(--text-primary)}.back-btn.svelte-35rcq8:active{opacity:.8}.save-btn.svelte-35rcq8{background:var(--accent);color:var(--bg-primary);border:none;border-radius:6px;padding:10px 16px;font-family:inherit;font-size:12px;font-weight:600;cursor:pointer;transition:background-color .15s,opacity .15s;white-space:nowrap}.save-btn.svelte-35rcq8:hover{background:var(--accent-dim)}.save-btn.svelte-35rcq8:active{transform:scale(.97)}
