@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500&family=DM+Mono:wght@400;500&display=swap";
@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes breathingGlow{0%,to{filter:drop-shadow(0 0 2px #c8f13533);opacity:.7;transform:scale(.95)}50%{filter:drop-shadow(0 0 8px #c8f13599);opacity:1;transform:scale(1.05)}}@keyframes shimmerText{to{background-position:200%}}@keyframes pulseRing{0%{box-shadow:0 0 #c8f1354d}70%{box-shadow:0 0 0 6px #c8f13500}to{box-shadow:0 0 #c8f13500}}@keyframes waveDot{0%,80%,to{opacity:.4;transform:scaleY(.4)}40%{opacity:1;transform:scaleY(1)}}.modern-thinking-container{background:#ffffff08;border:1px solid #ffffff12;border-radius:20px;align-items:center;gap:10px;margin-top:4px;padding:9px 16px 9px 12px;animation:.3s forwards fadeUp;display:inline-flex;box-shadow:0 4px 16px #0000001f}.thinking-pulse-ring{background:#c8f13512;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;animation:2s ease-out infinite pulseRing;display:flex}.modern-thinking-icon{opacity:.85;animation:2.2s ease-in-out infinite breathingGlow}.modern-thinking-text{letter-spacing:.01em;background:linear-gradient(90deg,#ffffff59 0%,#ffffffd9 50%,#ffffff59 100%) 0 0/200%;-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:13px;font-weight:500;animation:2.5s linear infinite shimmerText}.thinking-wave{align-items:center;gap:3px;padding-left:2px;display:flex}.thinking-wave span{background:#c8f13599;border-radius:2px;width:3px;height:12px;animation:1.2s ease-in-out infinite waveDot;display:block}.thinking-wave span:nth-child(2){animation-delay:.15s}.thinking-wave span:nth-child(3){animation-delay:.3s}@media (prefers-reduced-motion:reduce){.modern-thinking-icon,.modern-thinking-text,.thinking-pulse-ring,.thinking-wave span{animation:none}}.chat-message-container{gap:12px;font-family:DM Sans,sans-serif;display:flex}.chat-user{justify-content:flex-end}.chat-ai{justify-content:flex-start}.msg-bubble{animation:.3s forwards fadeUp}.user-bubble{color:#080c14;background:#c8f135;border-radius:18px 18px 4px;min-width:0;max-width:72%;padding:12px 16px}.user-files-container{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.user-file-item{background:#080c141f;border-radius:8px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;display:flex}.user-text{white-space:pre-wrap;overflow-wrap:anywhere;tab-size:4;font-size:14px;font-weight:400;line-height:1.5}.user-avatar-container{background:#c8f1351a;border:1px solid #c8f1354d;border-radius:50%}.user-avatar-img{object-fit:cover;border-radius:50%;width:100%;height:100%}.user-avatar-initial{color:#c8f135;font-size:14px;font-weight:600}.ai-bubble-wrapper{flex-direction:column;gap:6px;max-width:80%;display:flex}.ai-bubble{background:var(--card);border:1px solid var(--border);border-radius:4px 18px 18px;padding:14px 18px}.ai-files-container{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.ai-file-item{background:var(--item-bg);color:var(--text-secondary);border-radius:8px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;display:flex}.ai-avatar{background:0 0;border-radius:8px;flex-shrink:0;justify-content:center;align-self:flex-start;align-items:center;width:34px;height:34px;margin-top:2px;display:flex;overflow:hidden}.ai-avatar-img{object-fit:contain}.copy-btn-row{padding-left:4px;display:flex}.copy-btn{opacity:0;background:var(--item-bg);border:1px solid var(--border);cursor:pointer;color:var(--text-muted);border-radius:7px;align-items:center;gap:5px;padding:5px 8px;font-size:12px;transition:opacity .15s;display:flex}.ai-bubble-wrapper:hover .copy-btn{opacity:1}.copy-btn:hover{background:var(--accent-hover);color:var(--text-primary)}.ai-bubble .prose{color:var(--text-secondary);font-size:14px}.ai-bubble .prose p{margin:0 0 10px;line-height:1.55}.ai-bubble .prose p:last-child{margin-bottom:0}.ai-bubble .prose h1,.ai-bubble .prose h2,.ai-bubble .prose h3{color:var(--text-primary);margin:16px 0 8px;font-weight:600}.ai-bubble .prose h1{font-size:20px}.ai-bubble .prose h2{font-size:17px}.ai-bubble .prose h3{font-size:15px}.ai-bubble .prose ul,.ai-bubble .prose ol{margin:8px 0;padding-left:20px}.ai-bubble .prose li{color:var(--text-secondary);margin-bottom:4px;line-height:1.6}.ai-bubble .prose code{background:var(--accent-bg);color:var(--accent);border-radius:5px;padding:2px 6px;font-family:DM Mono,monospace;font-size:13px}.ai-bubble .prose pre{background:var(--sidebar-bg);border:1px solid var(--border);border-radius:12px;margin:12px 0;padding:16px;overflow-x:auto}.ai-bubble .prose pre code{color:var(--text-secondary);background:0 0;padding:0}.ai-bubble .prose strong{color:var(--text-primary)}.ai-bubble .prose blockquote{border-left:3px solid var(--accent);color:var(--text-muted);margin:10px 0;padding-left:14px;font-style:italic}.ai-bubble .prose a{color:var(--accent);text-decoration:underline}.ai-bubble .prose table{border-collapse:collapse;width:100%;margin:12px 0;font-size:14px}.ai-bubble .prose th{background:var(--accent-bg);color:var(--accent);border:1px solid var(--border);text-align:left;padding:8px 12px}.ai-bubble .prose td{border:1px solid var(--border);color:var(--text-secondary);padding:8px 12px}.ai-bubble .prose hr{border:none;border-top:1px solid var(--border);margin:16px 0}.doc-attachment{background:var(--card);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:14px;max-width:420px;margin-top:10px;padding:16px;display:flex}.doc-attachment-info{align-items:center;gap:12px;min-width:0;display:flex}.doc-attachment-icon{color:#c8f135;background:#c8f1351a;border:1px solid #c8f1354d;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.doc-attachment-meta{min-width:0}.doc-attachment-name{max-width:100%;color:inherit;font:inherit;text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;background:0 0;border:none;padding:0;font-size:14px;font-weight:500;display:block;overflow:hidden}.doc-attachment-name:hover{color:#c8f135;text-decoration:underline}.doc-attachment-type{color:var(--text-secondary);margin-top:2px;font-size:12px}.doc-attachment-btn{color:#080c14;cursor:pointer;background:#c8f135;border:none;border-radius:10px;justify-content:center;align-self:center;align-items:center;gap:8px;padding:8px 18px;font-size:13px;font-weight:600;transition:opacity .15s;display:inline-flex}.doc-attachment-btn:hover:not(:disabled){opacity:.9}.doc-attachment-btn:disabled{opacity:.6;cursor:default}.doc-attachment-error{color:var(--text-secondary);text-align:center;font-size:12px}.doc-attachment-summary{color:var(--muted-foreground,#9aa4b2);flex-direction:column;gap:4px;font-size:13px;line-height:1.45;display:flex}.doc-attachment-summary strong{color:var(--foreground,inherit);font-weight:600}.msg-role-label{letter-spacing:.04em;text-transform:uppercase;opacity:.6;margin-bottom:4px;font-size:10.5px;font-weight:600}
.doc-preview-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#080c14b8;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.doc-preview-panel{background:var(--card);border:1px solid var(--border);border-radius:16px;flex-direction:column;width:min(900px,100%);max-height:90vh;display:flex;overflow:hidden}.doc-preview-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;display:flex}.doc-preview-title{color:#c8f135;align-items:center;gap:10px;min-width:0;font-size:14px;font-weight:500;display:flex}.doc-preview-title span{text-overflow:ellipsis;white-space:nowrap;color:inherit;overflow:hidden}.doc-preview-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.doc-preview-download{color:#080c14;cursor:pointer;background:#c8f135;border:none;border-radius:10px;align-items:center;gap:8px;padding:7px 14px;font-size:13px;font-weight:600;display:inline-flex}.doc-preview-download:disabled{opacity:.6;cursor:default}.doc-preview-close{border:1px solid var(--border);background:var(--item-bg);width:34px;height:34px;color:var(--text-secondary);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;display:inline-flex}.doc-preview-error-line{color:var(--text-secondary);border-bottom:1px solid var(--border);padding:8px 18px;font-size:12px}.doc-preview-body{background:#ffffff05;flex:1;padding:24px;overflow:auto}.doc-preview-state{color:var(--text-secondary);flex-direction:column;align-items:center;gap:14px;padding:48px 0;font-size:14px;display:flex}.doc-preview-page{color:#1a1a1a;background:#fff;border-radius:6px;max-width:780px;margin:0 auto;padding:40px 48px;font-size:14px;line-height:1.55;box-shadow:0 8px 30px #00000059}.doc-preview-page h1,.doc-preview-page h2,.doc-preview-page h3{color:#111;margin:1.1em 0 .5em}.doc-preview-page p{margin:.4em 0}.doc-preview-page table{border-collapse:collapse;width:100%;margin:12px 0}.doc-preview-page td,.doc-preview-page th{vertical-align:top;border:1px solid #cfd4dc;padding:6px 8px}.doc-preview-page img{max-width:100%}
.reg-panel{background:var(--card,#0f1620);border:1px solid var(--border,#ffffff0f);color:var(--text-secondary,#ffffffd9);border-radius:14px;max-width:100%;margin-top:10px;padding:16px 18px;font-size:13px}.reg-panel h3{color:var(--text-primary,#fff);margin:0 0 10px;font-size:14px;font-weight:500}.reg-panel fieldset{border:0;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px 14px;margin:0;padding:0;display:grid}.reg-panel details{margin:12px 0}.reg-panel summary{cursor:pointer;color:var(--text-muted,#ffffff80);margin-bottom:10px}.reg-field{flex-direction:column;gap:4px;min-width:0;display:flex}.reg-field label{flex-wrap:wrap;align-items:center;gap:6px;font-weight:500;display:flex}.reg-field small{color:var(--text-muted,#ffffff73);font-size:11px;line-height:1.35}.reg-field em{color:#ff8a80;font-size:11px;font-style:normal}.reg-field input,.reg-field select,.reg-field textarea{background:var(--item-bg,#111825);color:var(--text-primary,#fff);border:1px solid var(--border,#ffffff1f);font:inherit;box-sizing:border-box;border-radius:8px;width:100%;padding:8px 10px}.reg-field input:focus,.reg-field select:focus,.reg-field textarea:focus{outline:2px solid var(--accent,#c8f135);outline-offset:1px}.reg-invalid input,.reg-invalid select,.reg-invalid textarea{border-color:#ff8a80}.reg-required,.reg-optional,.reg-private{border:1px solid var(--border,#ffffff26);color:var(--text-muted,#ffffff80);border-radius:999px;padding:1px 6px;font-size:10px;font-weight:400}.reg-required{color:var(--accent,#c8f135);border-color:var(--accent,#c8f135)}.reg-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:14px;display:flex}.reg-btn{background:var(--item-bg,#111825);color:var(--text-primary,#fff);border:1px solid var(--border,#ffffff26);min-height:32px;font:inherit;cursor:pointer;border-radius:8px;padding:5px 14px;font-size:13px;line-height:1.2;transition:background-color .15s,border-color .15s,filter .15s}.reg-btn:hover:not(:disabled){background:var(--accent-bg,#c8f13514);border-color:#c8f1358c}.reg-btn:focus-visible{outline:2px solid var(--accent,#c8f135);outline-offset:2px}.reg-btn:disabled{opacity:.5;cursor:not-allowed}.reg-btn[aria-busy=true]{cursor:progress}.reg-primary{background:var(--accent,#c8f135);color:#0b0f0a;border-color:#0000;font-weight:500}.reg-primary:hover:not(:disabled){background:var(--accent,#c8f135);filter:brightness(1.07);border-color:#0000}.reg-quiet{color:var(--text-muted,#fff9);background:0 0}.reg-hint{color:var(--text-muted,#ffffff80);flex-basis:100%;margin:8px 0;font-size:12px}.reg-note{background:var(--accent-bg,#c8f13514);border-radius:8px;margin:0 0 10px;padding:8px 10px}.reg-error{color:#ff8a80;margin:8px 0}.reg-success{color:var(--accent,#c8f135);margin:8px 0}.reg-scan{flex-direction:column;gap:8px;display:flex}.reg-video{background:#000;border-radius:10px;width:100%;max-width:420px}.reg-hidden{display:none}.reg-preview{gap:6px;margin:0;display:grid}.reg-preview div{border-bottom:1px solid var(--border,#ffffff0f);grid-template-columns:minmax(120px,220px) 1fr;gap:10px;padding-bottom:4px;display:grid}.reg-preview dt{color:var(--text-muted,#ffffff80);word-break:break-word}.reg-preview dd{word-break:break-word;margin:0}.reg-steps{flex-wrap:wrap;gap:6px;margin:0 0 12px;padding:0;list-style:none;display:flex}.reg-step{border:1px solid var(--border,#ffffff1f);color:var(--text-muted,#ffffff8c);border-radius:999px;align-items:center;gap:6px;padding:2px 10px 2px 3px;font-size:12px;display:inline-flex}.reg-step small{opacity:.8}.reg-step-number{border:1px solid;border-radius:50%;place-items:center;width:18px;height:18px;font-size:11px;display:grid}.reg-step-current{color:var(--text-primary,#fff);border-color:var(--accent,#c8f135);background:var(--accent-bg,#c8f13514)}.reg-step-current .reg-step-number{background:var(--accent,#c8f135);color:#0b0f0a;border-color:#0000}.reg-step-done{color:var(--accent,#c8f135)}.reg-step-skipped{opacity:.55}.reg-section{margin:0 0 12px}.reg-section-title{border-bottom:1px solid var(--border,#ffffff14);color:var(--text-muted,#fff9);grid-column:1/-1;margin:2px 0 0;padding-bottom:4px;font-size:12px;font-weight:600}.reg-chooser{background:var(--card,#0f1620);border:1px solid var(--border,#ffffff0f);color:var(--text-secondary,#ffffffd9);border-radius:12px;max-width:100%;margin-top:10px;padding:12px 14px;font-size:13px}.reg-chooser h3{color:var(--text-primary,#fff);margin:0 0 8px;font-size:13px;font-weight:500}.reg-methods{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px;display:grid}.reg-method{appearance:none;text-align:left;min-height:52px;font:inherit;color:inherit;cursor:pointer;border:1px solid var(--border,#ffffff1a);background:linear-gradient(160deg, #ffffff0d, #ffffff03), var(--item-bg,#111825);border-radius:10px;grid-template-columns:28px 1fr;grid-template-areas:"icon title""icon desc""status status";align-items:center;gap:1px 10px;padding:8px 10px;transition:transform .15s,box-shadow .15s,border-color .15s;display:grid;box-shadow:inset 0 1px #ffffff0d,0 3px 8px #0000004d}.reg-method:hover:not(:disabled){border-color:#c8f13580;transform:translateY(-1px);box-shadow:inset 0 1px #ffffff12,0 6px 12px #00000059}.reg-method:focus-visible{outline:2px solid var(--accent,#c8f135);outline-offset:2px}.reg-method-selected,.reg-method-selected:disabled{opacity:1;cursor:default;border-color:var(--accent,#c8f135);background:linear-gradient(160deg, var(--accent-bg,#c8f13514), #c8f13505), var(--item-bg,#111825);box-shadow:inset 0 0 0 1px var(--accent,#c8f135), 0 4px 10px #00000059}.reg-method:disabled:not(.reg-method-selected){opacity:.45;cursor:not-allowed;box-shadow:none}.reg-method-icon{width:28px;height:28px;color:var(--accent,#c8f135);background:var(--accent-bg,#c8f13514);border:1px solid #c8f13540;border-radius:8px;grid-area:icon;place-items:center;display:grid}.reg-method-title{color:var(--text-primary,#fff);grid-area:title;font-size:13px;font-weight:600}.reg-method-desc{color:var(--text-muted,#ffffff8c);grid-area:desc;font-size:11px;line-height:1.3}.reg-method-status{color:var(--accent,#c8f135);grid-area:status;align-items:center;gap:6px;margin-top:4px;font-size:11px;display:inline-flex}.reg-spinner{animation:.9s linear infinite reg-spin}@keyframes reg-spin{to{transform:rotate(360deg)}}.reg-history{margin-top:10px}.reg-history-body{margin-top:8px}.reg-history-list{gap:4px;margin:0;padding:0;list-style:none;display:grid}.reg-history-row{border:1px solid var(--border,#ffffff0f);border-radius:8px;grid-template-columns:minmax(120px,1.2fr) 2fr auto;align-items:center;gap:4px 12px;padding:6px 8px;font-size:12px;display:grid}.reg-history-name{color:var(--text-primary,#fff);overflow-wrap:anywhere;font-weight:500}.reg-history-meta{color:var(--text-muted,#ffffff8c);overflow-wrap:anywhere}.reg-status{border:1px solid var(--border,#fff3);white-space:nowrap;border-radius:999px;justify-self:end;padding:1px 8px;font-size:11px}.reg-status-completed{color:var(--accent,#c8f135);border-color:var(--accent,#c8f135)}.reg-status-in_progress{color:#ffd479;border-color:#ffd479}.reg-status-needs_attention{color:#ff8a80;border-color:#ff8a80}.reg-status-unverified{color:var(--text-muted,#ffffffb3);border-color:var(--border,#ffffff59);border-style:dashed}@media (max-width:560px){.reg-panel,.reg-chooser{padding:12px}.reg-panel fieldset,.reg-methods{grid-template-columns:1fr}.reg-history-row{grid-template-columns:1fr auto}.reg-history-meta{order:3;grid-column:1/-1}.reg-actions .reg-btn{flex:auto}.reg-preview div{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.reg-method,.reg-btn{transition:none}.reg-method:hover:not(:disabled){transform:none}.reg-spinner{animation:none}}
