:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}@font-face{font-family:Effra;src:url(../assets/fonts/Effra-100.ttf);font-weight:100}@font-face{font-family:Effra;src:url(../assets/fonts/Effra-100-It.ttf);font-weight:100;font-style:italic}@font-face{font-family:Effra;src:url(../assets/fonts/Effra-200.ttf);font-weight:200}@font-face{font-family:Effra;src:url(../assets/fonts/Effra-200-It.ttf);font-weight:200;font-style:italic}@font-face{font-family:Effra;src:url(../assets/fonts/Effra-300.ttf);font-weight:300}@font-face{font-family:Effra;src:url(../assets/fonts/Effra-300-It.ttf);font-weight:300;font-style:italic}@font-face{font-family:Effra;src:url(../assets/fonts/Effra-400.ttf);font-weight:400}@font-face{font-family:Effra;src:url(../assets/fonts/Effra-400-It.ttf);font-weight:400;font-style:italic}@font-face{font-family:Effra;src:url(../assets/fonts/Effra-500.ttf);font-weight:500}@font-face{font-family:Effra;src:url(../assets/fonts/Effra-500-It.ttf);font-weight:500;font-style:italic}@font-face{font-family:Effra;src:url(../assets/fonts/Effra-600.ttf);font-weight:600}@font-face{font-family:Effra;src:url(../assets/fonts/Effra-600-It.ttf);font-weight:600;font-style:italic}@font-face{font-family:Effra;src:url(../assets/fonts/Effra-700.ttf);font-weight:700}@font-face{font-family:Effra;src:url(../assets/fonts/Effra-700-It.ttf);font-weight:700;font-style:italic}@font-face{font-family:Effra;src:url(../assets/fonts/Effra-800.ttf);font-weight:800}@font-face{font-family:Effra;src:url(../assets/fonts/Effra-800-It.ttf);font-weight:800;font-style:italic}@font-face{font-family:Effra;src:url(../assets/fonts/Effra-900.ttf);font-weight:900}@font-face{font-family:Effra;src:url(../assets/fonts/Effra-900-It.ttf);font-weight:900;font-style:italic}*{box-sizing:border-box;margin:0;padding:0}body,html,#root{height:100%;width:100%;font-family:Segoe UI,Roboto,Helvetica,Arial,sans-serif;overflow:auto;color:var(--color-text-primary)}.app-layout{display:flex;height:100%;width:100%;overflow:hidden;position:static}.chat-container{flex:1;display:flex;flex-direction:column;min-height:0;background-color:var(--color-contrast-light);overflow:hidden}.chat-header{padding:0 55px 0 15px;height:50px;background-color:var(--color-brand);border-bottom:1px solid #e0e0e0;display:flex;align-items:center;justify-content:space-between;box-shadow:0 2px 4px #0000000d;z-index:10;margin:0}.chat-header h2{font-size:16px;color:#fff;font-weight:600}.btn-primary{font-size:14px}.chat-messages{flex:1;padding:15px;overflow-y:auto;min-height:0;display:flex;flex-direction:column;background-color:#f8fafc;scroll-behavior:smooth}.message-row{display:flex;margin-bottom:4px;width:100%}.message-row.user{justify-content:flex-end}.message-row.model{justify-content:flex-start}.message-group{display:flex;flex-direction:column;max-width:85%}.message-row.user .message-group{align-items:flex-end}.message-row.model .message-group{align-items:flex-start}.message-bubble{width:fit-content;max-width:100%;padding:10px 12px;font-size:14px;line-height:1.5;box-shadow:0 1px 2px #0000001a;white-space:pre-wrap;word-wrap:break-word}.message-row.model .message-bubble{background-color:#fff;color:var(--color-text-primary);border-radius:12px 12px 12px 2px}.message-row.user .message-bubble{background-color:var(--color-brand);color:#fff;border-radius:12px 12px 2px;text-align:left}.message-row.system-error .message-bubble{background-color:#fff1f2;color:var(--color-error);border:1px solid var(--color-error);font-size:14px;max-width:90%;border-radius:8px;padding:8px 12px;box-shadow:none}.message-bubble.streaming>*:last-child:after{content:"█";display:inline-block;margin-left:4px;vertical-align:text-bottom;animation:cursorBlink 1s step-end infinite;color:var(--color-brand)}@keyframes cursorBlink{0%,to{opacity:1}50%{opacity:0}}.feedback-actions{display:flex;gap:8px;margin-left:4px;opacity:.7;transition:opacity .2s ease}.message-group:hover .feedback-actions{opacity:1}.feedback-btn{background:none;border:none;cursor:pointer;font-size:1rem;padding:4px;border-radius:50%;transition:transform .2s,background-color .2s;filter:grayscale(100%)}.feedback-btn:hover{background-color:#0000000d;transform:scale(1.1);filter:grayscale(0%)}.feedback-btn.liked,.feedback-btn.disliked{filter:grayscale(0%);transform:scale(1.1)}.dynamic-loading-container{display:flex;align-items:center;gap:12px;padding:4px 6px}.bouncing-dots{display:flex;align-items:center;justify-content:center;gap:4px;height:20px}.bouncing-dots .dot{width:6px;height:6px;background-color:var(--color-brand);border-radius:50%;animation:smoothPulse 1.4s infinite ease-in-out both}.bouncing-dots .dot:nth-child(1){animation-delay:-.32s}.bouncing-dots .dot:nth-child(2){animation-delay:-.16s}.bouncing-dots .dot:nth-child(3){animation-delay:0s}@keyframes smoothPulse{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}.loading-text{font-size:.95em;font-style:italic;animation:fadeInOut 1.4s infinite ease-in-out}@keyframes fadeInOut{0%,to{opacity:.5}50%{opacity:1}}.table-loading{padding:12px;background-color:#f8f9fa;border-radius:8px;border:1px solid #eee}.chat-input-area{padding:15px;background-color:#fff;border-top:1px solid #e0e0e0;display:flex;gap:10px}.chat-input-area input{flex:1;padding:12px 15px;border:1px solid var(--color-utility);border-radius:25px;outline:none;font-size:14px;transition:border-color .15s,box-shadow .15s;background-color:#fff;color:var(--color-text-primary)}.chat-input-area input:focus{border-color:var(--color-brand);box-shadow:0 0 0 3px var(--color-bg-selection)}.chat-input-area button{padding:0 20px;background-color:var(--color-brand);color:#fff;border:none;border-radius:25px;font-weight:600;cursor:pointer;transition:background-color .2s}.chat-input-area button:hover:not(:disabled){background-color:var(--color-interactive-primary)}.chat-input-area button:disabled{background-color:var(--color-bg-disabled);color:var(--color-text-disabled);cursor:not-allowed}.typing .dot{display:inline-block;width:6px;height:6px;background-color:var(--color-utility);border-radius:50%;margin-right:3px;animation:bounce 1.4s infinite ease-in-out both}.typing .dot:nth-child(1){animation-delay:-.32s}.typing .dot:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.suggested-questions-container{display:flex;flex-direction:column;gap:16px;padding:10px;background:#fff;width:100%;margin-bottom:0;border-top:1px solid #f0f0f0;flex-shrink:0}.suggested-label{margin:0;font-size:14px;font-weight:600;color:#555}.suggested-questions{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;width:100%}.suggested-question-btn{padding:8px 12px;background:#f5f5f5;border:1px solid #e0e0e0;border-radius:8px;text-align:left;cursor:pointer;font-size:12px;color:#333;font-weight:400;transition:all .2s ease;min-height:auto;display:flex;align-items:center}.suggested-question-btn:hover{background:#efefef;border-color:#999;box-shadow:0 2px 4px #00000014}.suggested-question-btn:active{background:#e0e0e0;transform:scale(.98)}@media(max-width:480px){.chat-header h2{font-size:16px;padding:10px 15px}.message-group{padding:5px}.chat-input-area{padding:10px;gap:8px}.chat-input-area input{padding:10px 12px;font-size:14px}.chat-input-area button{padding:0 16px;font-size:14px}}@media(max-width:768px){.app-layout{position:relative}}@media(min-width:1024px){.suggested-questions{gap:16px}}@media(min-width:1440px){.message-group{max-width:70%}.chat-messages{padding:24px}}@media print{.chat-header,.chat-input-area{display:none}.chat-container{max-height:100vh}.message-bubble{break-inside:avoid}}:root{--color-brand: oklch(35.223% .10795 252.807);--color-interactive-primary: oklch(48.941% .12236 249.591);--color-interactive-primary-hover: oklch(32.16% .13009 262.362);--color-utility: oklch(55.604% .13102 244.748);--color-utility-hover: oklch(32.16% .13009 262.362);--color-contrast-light: oklch(96.381% .00531 95.188);--color-contrast-light-hover: oklch(34.642% .00526 121.961);--color-highlight: oklch(57.739% .14159 243.716);--color-success: oklch(67.311% .16242 144.231);--color-error: oklch(64.263% .21531 28.791);--color-warning: oklch(77.025% .17409 64.047);--color-info: oklch(65.817% .16904 248.834);--color-text-primary: oklch(32.109% .00004 271.152);--color-text-disabled: oklch(55.754% .01655 244.997);--color-bg-disabled: oklch(95.514% .00011 271.152);--color-bg-selection: oklch(86.286% .06739 254.07)}@font-face{font-family:Effra;src:url(../assets/fonts/Effra-100.ttf);font-weight:100}@font-face{font-family:Effra;src:url(../assets/fonts/Effra-100-It.ttf);font-weight:100;font-style:italic}@font-face{font-family:Effra;src:url(../assets/fonts/Effra-200.ttf);font-weight:200}@font-face{font-family:Effra;src:url(../assets/fonts/Effra-200-It.ttf);font-weight:200;font-style:italic}@font-face{font-family:Effra;src:url(../assets/fonts/Effra-300.ttf);font-weight:300}@font-face{font-family:Effra;src:url(../assets/fonts/Effra-300-It.ttf);font-weight:300;font-style:italic}@font-face{font-family:Effra;src:url(../assets/fonts/Effra-400.ttf);font-weight:400}@font-face{font-family:Effra;src:url(../assets/fonts/Effra-400-It.ttf);font-weight:400;font-style:italic}@font-face{font-family:Effra;src:url(../assets/fonts/Effra-500.ttf);font-weight:500}@font-face{font-family:Effra;src:url(../assets/fonts/Effra-500-It.ttf);font-weight:500;font-style:italic}@font-face{font-family:Effra;src:url(../assets/fonts/Effra-600.ttf);font-weight:600}@font-face{font-family:Effra;src:url(../assets/fonts/Effra-600-It.ttf);font-weight:600;font-style:italic}@font-face{font-family:Effra;src:url(../assets/fonts/Effra-700.ttf);font-weight:700}@font-face{font-family:Effra;src:url(../assets/fonts/Effra-700-It.ttf);font-weight:700;font-style:italic}@font-face{font-family:Effra;src:url(../assets/fonts/Effra-800.ttf);font-weight:800}@font-face{font-family:Effra;src:url(../assets/fonts/Effra-800-It.ttf);font-weight:800;font-style:italic}@font-face{font-family:Effra;src:url(../assets/fonts/Effra-900.ttf);font-weight:900}@font-face{font-family:Effra;src:url(../assets/fonts/Effra-900-It.ttf);font-weight:900;font-style:italic}*,*:before,*:after{box-sizing:border-box}::selection{background-color:var(--color-bg-selection)}html{font-family:Effra,sans-serif}body{margin:0;color:var(--color-text-primary)}a{display:inline-block}a,button{text-align:center;cursor:pointer}.container-standard{max-width:1440px;margin-inline:auto}.btn-primary{background-color:var(--color-brand);color:#fff}@media(hover:hover){.btn-primary:hover:not(:disabled){color:#fff;background-color:var(--color-interactive-primary)}}.btn-light{background-color:var(--color-utility);color:#fff;border:2px solid var(--color-utility)}@media(hover:hover){.btn-light:hover:not(:disabled){color:#fff;background-color:var(--color-utility-hover);border-color:var(--color-utility-hover)}}.btn-secondary{background-color:var(--color-contrast-light);color:#000;border:2px solid var(--color-contrast-light)}@media(hover:hover){.btn-secondary:hover:not(:disabled){color:#fff;background-color:var(--color-contrast-light-hover);border-color:var(--color-contrast-light-hover)}}.btn-outline{color:var(--color-utility);border:2px solid var(--color-utility)}@media(hover:hover){.btn-outline:hover:not(:disabled){color:var(--color-utility-hover);border-color:var(--color-utility-hover)}}.btn-ghost{background:none}@media(hover:hover){.btn-ghost:hover:not(:disabled){background-color:var(--color-contrast-light)}}.btn-link{color:var(--color-utility)}@media(hover:hover){.btn-link:hover:not(:disabled){color:var(--color-utility-hover)}}input,select,textarea,button{transition:color .15s,background-color .15s,border-color .15s}:is(input,select,textarea,button):disabled{background-color:var(--color-bg-disabled);border-color:var(--color-bg-disabled);color:var(--color-text-disabled);cursor:not-allowed}.response-summary{line-height:1.5}.response-table-wrapper{margin-top:10px;overflow-x:auto;border:1px solid #e2e8f0;border-radius:8px;background:#fff;width:100%}.response-table-wrapper table{width:max-content;min-width:100%;border-collapse:collapse}.response-table-wrapper th{background-color:#f8fafc;font-weight:600;text-align:left;padding:8px;border-bottom:2px solid #e2e8f0;color:#334155;text-transform:capitalize}.response-table-wrapper td{padding:8px;border-bottom:1px solid #f1f5f9;color:#475569}.response-table-wrapper tr:last-child td{border-bottom:none}.response-table-wrapper tr:hover{background-color:#f1f5f9}.pagination-info{font-size:.85rem;color:#64748b;font-weight:500;white-space:nowrap}.pagination-controls{display:flex;align-items:center;justify-content:space-between;padding:8px 16px}.pagination-info{font-size:12px;color:var(--color-text-primary)}.pagination-buttons{display:flex;gap:8px}.pagination-btn.circle{width:32px;height:32px;border-radius:50%;padding:0;display:flex;align-items:center;justify-content:center;background-color:#fff;border:1px solid #cbd5e1;color:var(--color-text-primary);font-size:1.5rem;line-height:1;cursor:pointer;transition:all .2s ease}.pagination-btn.circle:hover:not(:disabled){background-color:#fff;border-color:var(--color-interactive-primary-hover);transform:scale(1.05)}.pagination-btn:disabled{opacity:.4;cursor:not-allowed;background-color:transparent;border-color:#e2e8f0}
