@layer theme,base,components,utilities;@layer theme{:root,:host{--font-sans: "Inter", ui-sans-serif, system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--default-font-family: var(--font-sans);--default-mono-font-family: var(--font-mono);--color-bg-base: #F8FAFC;--color-text-primary: #0F172A}}@layer base{*,:after,:before,::backdrop,::file-selector-button{box-sizing:border-box;margin:0;padding:0;border:0 solid}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4;font-family:var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings, normal);font-variation-settings:var(--default-font-variation-settings, normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings, normal);font-variation-settings:var(--default-mono-font-variation-settings, normal);font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea,::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;border-radius:0;background-color:transparent;opacity:1}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px){::placeholder{color:currentcolor}@supports (color: color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]),::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer utilities{.hidden{display:none}.resize{resize:both}}html,body{background:var(--color-bg-base);font-family:var(--font-sans);font-size:14px;color:var(--color-text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0}:focus-visible{outline:2px solid #3B82F6;outline-offset:2px;border-radius:4px}*{scrollbar-width:thin;scrollbar-color:#CBD5E1 transparent;box-sizing:border-box}*::-webkit-scrollbar{width:4px;height:4px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:99px}*::-webkit-scrollbar-thumb:hover{background:#94a3b8}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}@keyframes message-appear{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.message-appear{animation:message-appear .28s cubic-bezier(0,0,.2,1) forwards}@keyframes typing-dot-bounce{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-6px);opacity:1}}.typing-dot:nth-child(1){animation:typing-dot-bounce 1.2s ease infinite}.typing-dot:nth-child(2){animation:typing-dot-bounce 1.2s ease .2s infinite}.typing-dot:nth-child(3){animation:typing-dot-bounce 1.2s ease .4s infinite}.sidebar{transition:width .25s cubic-bezier(0,0,.2,1);overflow:hidden}.sidebar-label{transition:opacity .15s ease,transform .15s ease}.sidebar-collapsed .sidebar-label{opacity:0;transform:translate(-8px);pointer-events:none}@keyframes dropdown-appear{0%{opacity:0;transform:translateY(-6px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.dropdown-appear{animation:dropdown-appear .2s cubic-bezier(0,0,.2,1) forwards;transform-origin:top right}.icon-spin{animation:spin .7s linear infinite}@keyframes toast-in{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}@keyframes toast-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-8px)}}.toast-in{animation:toast-in .2s cubic-bezier(0,0,.2,1) forwards}.toast-out{animation:toast-out .15s cubic-bezier(.4,0,1,1) forwards}.btn:active:not(:disabled){transform:scale(.97);transition:transform 80ms linear}input:focus,textarea:focus,select:focus{outline:none;border-color:#3b82f6!important;box-shadow:0 0 0 3px #3b82f626!important;transition:border-color .15s ease,box-shadow .15s ease}@keyframes mic-pulse{0%,to{box-shadow:0 0 #dc262666}50%{box-shadow:0 0 0 8px #dc262600}}.mic-recording{animation:mic-pulse 1.5s ease infinite}@keyframes fab-appear{0%{opacity:0;transform:translateY(8px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.fab-appear{animation:fab-appear .2s cubic-bezier(0,0,.2,1) forwards}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;font-family:var(--font-sans);font-weight:500;border-radius:var(--radius-md);border:1px solid transparent;cursor:pointer;transition:background-color .15s ease,color .15s ease,border-color .15s ease,box-shadow .15s ease,transform 80ms linear;text-decoration:none;white-space:nowrap;line-height:1}.btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.btn:focus-visible{outline:2px solid #3B82F6;outline-offset:2px}.btn-sm{padding:8px 12px;font-size:13px;height:32px}.btn-md{padding:10px 16px;font-size:14px;height:38px}.btn-lg{padding:12px 20px;font-size:15px;height:44px}.btn-primary{background:#1d4ed8;color:#fff;border-color:#1d4ed8}.btn-primary:hover:not(:disabled){background:#2563eb;border-color:#2563eb}.btn-secondary{background:#fff;color:#1d4ed8;border-color:#bfdbfe}.btn-secondary:hover:not(:disabled){background:#eff6ff}.btn-ghost{background:transparent;color:#475569;border-color:transparent}.btn-ghost:hover:not(:disabled){background:#f1f5f9;color:#0f172a}.btn-destructive{background:#fef2f2;color:#dc2626;border-color:#fecaca}.btn-destructive:hover:not(:disabled){background:#dc2626;color:#fff;border-color:#dc2626}.btn-icon{padding:0;width:36px;height:36px;border-radius:var(--radius-md)}.btn-icon-sm{padding:0;width:32px;height:32px;border-radius:var(--radius-md)}.form-label{display:block;font-size:13px;font-weight:500;color:#0f172a;margin-bottom:6px}.form-label .required{color:#dc2626;margin-left:2px}.form-label .optional-chip{font-size:11px;font-weight:400;background:#f1f5f9;color:#94a3b8;border-radius:4px;padding:1px 6px;margin-left:6px}.input-wrap{position:relative;display:flex;align-items:center}.input-wrap .input-icon-left{position:absolute;left:12px;color:#94a3b8;pointer-events:none;display:flex;align-items:center}.input-wrap .input-icon-right{position:absolute;right:12px;color:#94a3b8;display:flex;align-items:center;cursor:pointer}.form-input{width:100%;height:42px;border:1px solid #E2E8F0;border-radius:var(--radius-md);padding:10px 14px;font-size:14px;font-family:var(--font-sans);color:#0f172a;background:#fff;box-shadow:0 1px 2px #0000000a;transition:border-color .15s ease,box-shadow .15s ease}.form-input.has-icon-left{padding-left:38px}.form-input.has-icon-right{padding-right:38px}.form-input::placeholder{color:#94a3b8}.form-input.input-error{border-color:#dc2626!important;box-shadow:none!important}.form-input.input-valid{border-color:#059669}.form-input:disabled{background:#f1f5f9;color:#94a3b8;cursor:not-allowed}textarea.form-input{height:auto;resize:vertical}.form-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2394A3B8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px}.form-hint{font-size:12px;color:#94a3b8;margin-top:4px}.form-error{font-size:12px;color:#dc2626;margin-top:4px;display:flex;align-items:center;gap:4px}.card{background:#fff;border:1px solid #E2E8F0;border-radius:var(--radius-lg);box-shadow:0 1px 3px #00000014,0 1px 2px #0000000a}.badge{display:inline-flex;align-items:center;font-size:11px;font-weight:600;border-radius:var(--radius-sm);padding:2px 8px;letter-spacing:.03em;text-transform:uppercase}.badge-primary{background:#dbeafe;color:#1d4ed8}.badge-warning{background:#fffbeb;color:#d97706}.badge-success{background:#ecfdf5;color:#059669}.badge-error{background:#fef2f2;color:#dc2626}.badge-muted{background:#f1f5f9;color:#475569}.alert-banner{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:var(--radius-md);font-size:13px;font-weight:400;animation:toast-in .2s cubic-bezier(0,0,.2,1) forwards}.alert-banner .alert-close{margin-left:auto;background:none;border:none;cursor:pointer;color:inherit;opacity:.6;padding:2px;display:flex;align-items:center;border-radius:4px}.alert-banner .alert-close:hover{opacity:1}.alert-success{background:#ecfdf5;border:1px solid #A7F3D0;color:#065f46}.alert-error{background:#fef2f2;border:1px solid #FECACA;color:#991b1b}.alert-info{background:#f0f9ff;border:1px solid #BAE6FD;color:#075985}.alert-warning{background:#fffbeb;border:1px solid #FDE68A;color:#92400e}.modal-backdrop{position:fixed;inset:0;background:#0f172a66;z-index:40;display:flex;align-items:center;justify-content:center;padding:16px}@keyframes modal-appear{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-panel{background:#fff;border-radius:var(--radius-lg);box-shadow:0 10px 15px #00000014,0 4px 6px #0000000a;padding:24px;width:100%;max-width:440px;z-index:50;animation:modal-appear .3s cubic-bezier(0,0,.2,1) forwards}.data-table-wrap{background:#fff;border:1px solid #E2E8F0;border-radius:var(--radius-lg);box-shadow:0 1px 3px #00000014,0 1px 2px #0000000a;overflow:hidden}.data-table{width:100%;border-collapse:collapse;font-size:14px}.data-table thead tr{background:#f1f5f9;border-bottom:1px solid #E2E8F0}.data-table th{padding:12px 16px;text-align:left;font-size:11px;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.07em}.data-table td{padding:14px 16px;border-bottom:1px solid #E2E8F0;color:#0f172a}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover td{background:#f8fafc;transition:background .15s ease}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.5}}.skeleton{background:#f1f5f9;border-radius:6px;animation:skeleton-pulse 1.5s ease infinite}.bot-prose p{margin-bottom:10px;font-size:14px;line-height:1.6}.bot-prose p:last-child{margin-bottom:0}.bot-prose strong{font-weight:600;color:#0f172a}.bot-prose em{font-style:italic;color:#475569}.bot-prose ul,.bot-prose ol{padding-left:20px;margin-bottom:10px}.bot-prose li{margin-bottom:4px;line-height:1.5}.bot-prose a{color:#1d4ed8;text-decoration:underline;text-underline-offset:2px}.bot-prose a:target{text-decoration:none}.bot-prose code{font-family:var(--font-mono);font-size:13px;background:#f1f5f9;border-radius:4px;padding:2px 5px;color:#0f172a;border:1px solid #E2E8F0}.bot-prose pre{background:#f8fafc;border:1px solid #E2E8F0;border-radius:var(--radius-md);padding:14px 16px;overflow-x:auto;margin-bottom:10px}.bot-prose pre code{background:none;border:none;padding:0}.bot-prose h1,.bot-prose h2,.bot-prose h3{font-weight:600;color:#0f172a;margin-bottom:6px;margin-top:14px}.bot-prose h1{font-size:17px}.bot-prose h2{font-size:15px}.bot-prose h3{font-size:14px}.bot-prose blockquote{border-left:3px solid #BFDBFE;padding-left:12px;color:#475569;margin:10px 0}.bot-prose table{width:100%;border-collapse:collapse;margin-bottom:10px;font-size:13px}.bot-prose th{background:#f1f5f9;font-weight:600;padding:8px 12px;text-align:left;border:1px solid #E2E8F0}.bot-prose td{padding:8px 12px;border:1px solid #E2E8F0}.bot-prose tr:nth-child(2n) td{background:#f8fafc}@keyframes spin{to{transform:rotate(360deg)}}
