:root{--primary:#0f172a;--secondary:#1e293b;--accent:#ef4444;--syncing:#00f;--light:#f8fafc;--dark:#0f172a;--success:#10b981;--warning:#f59e0b;--danger:#ef4444;--border-radius:8px;--shadow:0 4px 6px -1px rgba(0,0,0,.1)}*{box-sizing:border-box;font-family:Inter,Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:0;padding:0}body{background-color:#f1f5f9;color:var(--dark);height:100%;line-height:1.6}.container{margin:0 auto;max-width:1400px;padding:20px}header{align-items:center;background:linear-gradient(135deg,var(--primary),var(--secondary));border-color:var(--accent);border-radius:var(--border-radius);border-style:solid;border-width:3px;box-shadow:var(--shadow);color:#fff;display:flex;justify-content:space-between;margin-bottom:20px;padding:20px}.header-left{display:flex;flex-direction:column}.header-right{align-items:center;display:flex;gap:10px}.btn-logout{background-color:#e53e3e;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:8px 16px}.btn-logout:hover{opacity:.9;transform:translateY(-2px)}.logo{align-items:center;display:flex;margin-bottom:10px}.logo i{color:var(--accent);font-size:28px;margin-right:10px}.logo-text{font-size:28px;font-weight:900;letter-spacing:-.5px}.logo-text span:first-child{color:#fff}.logo-text span:last-child{color:var(--accent)}.tagline{font-size:14px;margin-bottom:5px;opacity:.9}.provider{font-size:12px;opacity:.7}.module-container{background-color:#fff;border-radius:var(--border-radius);box-shadow:var(--shadow);display:flex;flex-direction:column;margin-bottom:30px;padding-bottom:30px}.module-header{align-items:center;background-color:var(--secondary);border-top-left-radius:var(--border-radius);border-top-right-radius:var(--border-radius);color:#fff;display:flex;justify-content:space-between;padding:15px 20px}.module-title{font-size:18px;font-weight:600}.module-nav{display:flex;gap:10px}.nav-btn{background-color:#4a5568;border:none;border-radius:6px;box-shadow:0 2px 4px #0000001a;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .3s}.nav-btn:hover{background-color:var(--accent);box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.nav-btn.active{background-color:var(--accent);box-shadow:0 0 0 2px #fff,0 0 0 4px var(--accent)}.nav-btn-edit{background-color:#4a5568;border:none;border-radius:6px;box-shadow:0 2px 4px #0000001a;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .3s}.nav-btn-edit:hover{background-color:#5b677a;box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.nav-btn-edit.active{background-color:var(--accent);box-shadow:0 0 0 2px #fff,0 0 0 4px var(--accent)}.module-content{flex:1;height:calc(100vh - 320px);min-height:500px;overflow:visible;padding:20px}.grid-2-col{grid-template-columns:1fr 1.25fr}.grid-2-col,.grid-2-col-user{display:grid;gap:20px;height:100%}.grid-2-col-user{grid-template-columns:1fr 1fr}@media(min-width:1024px){.grid-2-col{height:75vh}}@media(max-width:1023px){.grid-2-col{height:100vh}}.pane{overflow-y:auto}.pane,.user-pane{background-color:var(--light);border-radius:var(--border-radius);box-shadow:inset 0 0 5px #0000000d;height:100%;padding:15px}.pane-header{border-bottom:1px solid #e2e8f0;color:var(--primary);justify-content:space-between;margin-bottom:15px;padding-bottom:10px}.add-user-btn,.pane-header{align-items:center;display:flex;font-weight:600}.add-user-btn{background:var(--accent);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;gap:8px;padding:10px 16px;transition:all .2s}.add-user-btn:hover{background:#dc2626}.add-user-btn.disabled{cursor:not-allowed;opacity:.5}.data-source-list{list-style:none}.data-source-item{align-items:center;background-color:#fff;border-left:4px solid transparent;border-radius:var(--border-radius);cursor:pointer;display:flex;margin-bottom:10px;padding:12px;transition:all .2s}.data-source-item:hover{border-left-color:var(--accent);box-shadow:var(--shadow);transform:translateY(-2px)}.data-source-item i{color:var(--accent);font-size:22px;margin-right:10px}.data-source-item.disabled{cursor:not-allowed;opacity:.5}.hint{color:#e53e3e;font-size:12px}.connection-list{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.connection-card{background-color:#fff;border-radius:var(--border-radius);border-top:4px solid var(--success);box-shadow:var(--shadow);padding:20px;position:relative;transition:all .3s}.connection-card:hover{box-shadow:0 10px 15px #0000001a;transform:translateY(-5px)}.connection-card.warning{border-top-color:var(--warning)}.connection-card.danger{border-top-color:var(--danger)}.connection-name{align-items:center;display:flex;font-size:18px;font-weight:600;gap:8px;margin-bottom:5px}.connection-type{background-color:#f7fafc;border-radius:4px;color:#718096;font-size:12px;padding:2px 8px}.status-clickable{cursor:pointer;text-decoration:underline}.connection-details{display:flex;flex-direction:column;gap:10px;margin-top:15px}.connection-detail{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;padding:8px 0}.connection-detail:last-child{border-bottom:none}.detail-label{color:#718096;font-size:12px;font-weight:500}.detail-value{color:var(--dark);font-size:13px;font-weight:600;text-align:right}.status-healthy{color:var(--success)}.status-error{color:var(--danger)}.status-pending{color:var(--warning)}.status-syncing{color:var(--syncing)}.status-complete{color:var(--success)}.connection-status{background-color:#e6fffa;border-radius:20px;color:#234e52;display:inline-block;font-size:12px;padding:3px 8px}.connection-actions{display:flex;gap:5px;position:absolute;right:15px;top:15px}.connection-action-btn{background:none;border:none;border-radius:4px;cursor:pointer;font-size:14px;padding:5px;transition:background-color .2s}.connection-edit-btn{color:var(--primary)}.connection-edit-btn:hover{background:#e2e8f0}.connection-sync-btn{color:var(--syncing)}.connection-sync-btn:hover{background:#e2e8f0}.connection-remove-btn{color:#991b1b}.connection-remove-btn:hover{background:#e2e8f0}.user-list{list-style:none}.user-item{align-items:center;background-color:#fff;border-radius:var(--border-radius);cursor:pointer;display:flex;margin-bottom:10px;padding:12px;transition:all .2s}.user-item.active,.user-item:hover{background-color:#ebf8ff;box-shadow:var(--shadow);transform:translateY(-2px)}.user-item.active{border-left:4px solid var(--accent)}.user-avatar{align-items:center;background-color:var(--accent);border-radius:50%;color:#fff;display:flex;font-weight:600;height:40px;justify-content:center;margin-right:10px;width:40px}.user-info{flex:1}.user-name{font-weight:600}.user-role{color:#718096;font-size:12px}.access-badge{background-color:var(--success);border-radius:4px;color:#fff;font-size:12px;padding:3px 8px}.chat-container{display:grid;gap:20px;grid-template-columns:300px 1fr;height:600px}.chat-history{background-color:var(--light);overflow-y:auto;padding:15px}.chat-history,.history-item{border-radius:var(--border-radius)}.history-item{align-items:center;background-color:#fff;cursor:pointer;display:flex;justify-content:space-between;margin-bottom:10px;padding:12px;transition:all .2s}.history-item.active{background:#fef2f2;border-left:4px solid var(--accent)}.history-item:hover{background-color:#f0f4f8}.history-content{flex:1;min-width:0}.history-title{font-weight:600;margin-bottom:5px}.history-preview,.history-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-preview{color:#718096;font-size:12px}.history-remove{color:#94a3b8;font-size:14px;margin-left:12px;opacity:0;transition:opacity .2s ease}.history-item:hover .history-remove{opacity:1}.history-remove:hover{color:var(--accent)}.add-chat-btn{align-items:center;background:var(--accent);border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:10px 16px;transition:all .2s}.add-chat-btn:hover{background:#dc2626}.add-chat-btn.disabled{cursor:not-allowed;opacity:.5}.empty-history{padding:15px;text-align:center}.chat-area{border-radius:var(--border-radius);box-shadow:var(--shadow);display:flex;flex-direction:column;overflow:hidden}.chat-messages{background-color:#fff;display:flex;flex:1;flex-direction:column;overflow-y:auto;padding:20px}.chat-messages img,.chat-messages video{border-radius:8px;display:block;margin:8px 0;max-height:300px;max-width:100%;-o-object-fit:contain;object-fit:contain}.chat-messages li,.chat-messages ol,.chat-messages ul{padding:0 20px}.chat-messages table{border-collapse:collapse;font-size:14px;margin:12px 0;width:100%}.chat-messages td,.chat-messages th{border:1px solid #e2e8f0;padding:8px 10px;text-align:left}.chat-messages th{background-color:#f8fafc;font-weight:600}.chat-messages tr:nth-child(2n){background-color:#f9fafb}.mermaid{min-height:100px;overflow-x:auto}.chat-messages pre{background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px;color:#333;display:block;line-height:1.42857143;margin:0 0 10px;padding:9.5px;white-space:pre-wrap;word-break:break-word}.message{border-radius:18px;margin-bottom:15px;max-width:80%;padding:12px 15px;position:relative}.message.user{align-self:flex-end;background-color:#ebf8ff;border-bottom-right-radius:0}.message.bot{align-self:flex-start;background-color:#f7fafc;border-bottom-left-radius:0}.message.thinking{align-self:flex-start;background-color:#f0f4f8;color:#718096;font-style:italic}.pre-title{font-size:1.6em;padding:15px;text-align:center}.chat-input{background-color:#fff;border-top:1px solid #e2e8f0;display:flex;padding:15px}.chat-input input{border:1px solid #e2e8f0;border-radius:24px;flex:1;outline:none;padding:12px 15px}.chat-input button{align-items:center;background-color:var(--accent);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:40px;justify-content:center;margin-left:10px;width:40px}.output-area{background-color:#fff;border-radius:var(--border-radius);box-shadow:var(--shadow);overflow-y:auto;padding:15px}.output-title{color:var(--primary);font-weight:600;margin-bottom:15px}.chart-container{height:250px;margin-bottom:20px}.summary-box{background-color:var(--light);border-radius:var(--border-radius);margin-bottom:20px;padding:15px}.summary-title{color:var(--primary);font-weight:600;margin-bottom:10px}.summary-content{font-size:14px;line-height:1.5}.kpi-grid{display:grid;gap:15px;grid-template-columns:repeat(2,1fr)}.kpi-card{background-color:#fff;border-radius:var(--border-radius);box-shadow:var(--shadow);padding:15px;text-align:center}.kpi-value{color:var(--primary);font-size:24px;font-weight:700;margin-bottom:5px}.kpi-label{color:#718096;font-size:12px}.footer{color:#718096;font-size:14px;margin-top:30px;padding:20px;text-align:center}.admin-table{border-collapse:collapse;width:100%}.admin-table th{background-color:var(--primary);color:#fff;font-size:14px;font-weight:600;padding:12px;text-align:left}.admin-table td{border-bottom:1px solid #e2e8f0;font-size:14px;padding:12px}.admin-table tr:hover{background-color:#f7fafc}.action-btn{background:none;border:none;border-radius:4px;cursor:pointer;font-size:16px;margin-right:10px;padding:5px;transition:background-color .2s}.edit-btn{background:#f1f5f9;color:var(--primary)}.edit-btn:hover{background:#e2e8f0}.remove-btn{background:#fee2e2;color:#991b1b}.remove-btn:hover{background:#fecaca}.department-tag{background-color:#e2e8f0;border-radius:4px;display:inline-block;font-size:12px;margin-bottom:5px;margin-right:5px;padding:4px 8px}.pagination-info{background-color:var(--light);border-radius:var(--border-radius);margin-top:15px;padding:10px}.record-count{font-weight:600}.user-form-container{background-color:#fff;border-radius:var(--border-radius);box-shadow:var(--shadow);margin:0 auto;max-width:800px;padding:30px}.form-group{margin-bottom:25px}.form-group label{color:var(--primary);display:block;font-weight:600;margin-bottom:8px}.form-group input,.form-group select,.form-group textarea{border:1px solid #e2e8f0;border-radius:4px;font-size:14px;padding:12px 15px;width:100%}.form-group textarea{min-height:100px;resize:vertical}.department-checkboxes{display:grid;gap:12px;grid-template-columns:repeat(3,1fr);margin-top:10px}.checkbox-group{align-items:center;background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;display:flex;gap:8px;min-height:44px;padding:10px;transition:all .2s}.checkbox-group:hover{background-color:#edf2f7;border-color:#cbd5e0}.checkbox-group input[type=checkbox]{height:16px;margin:0;width:16px}.checkbox-group label{color:#2d3748;flex:1;font-size:14px;font-weight:500;margin:0}.form-actions{display:flex;gap:15px;justify-content:flex-end;margin-top:30px}.cancel-btn{background-color:#e2e8f0;border:none;border-radius:4px;color:var(--dark);cursor:pointer;font-weight:600;padding:12px 24px;transition:background-color .2s}.cancel-btn:hover{background-color:#cbd5e0}.save-btn{background-color:var(--accent);border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:600;padding:12px 24px;transition:background-color .2s}.save-btn:hover{background:#dc2626}.select-all{align-items:center;background-color:#f0fff4;border-left:4px solid var(--success);border-radius:6px;display:flex;gap:10px;margin-bottom:15px;padding:12px}.select-all input[type=checkbox]{height:16px;margin:0;width:16px}.select-all label{color:var(--primary);font-weight:600;margin:0}.llm-examples{color:#718096;font-size:12px;margin-top:10px}.llm-examples ul{margin-left:20px;margin-top:5px}.llm-examples li{margin-bottom:3px}.login-container{align-items:center;background:linear-gradient(135deg,var(--primary),var(--secondary));display:flex;justify-content:center;min-height:100vh}.login-box{background-color:#fff;border-radius:var(--border-radius);box-shadow:var(--shadow);max-width:400px;padding:40px;width:100%}.login-logo{margin-bottom:30px;text-align:center}.login-logo i{color:var(--accent)!important;font-size:48px!important;margin-bottom:15px}.login-logo h1{color:var(--primary);margin-bottom:5px}.login-logo .tagline{color:var(--secondary);font-size:14px}.login-form .form-group{margin-bottom:20px}.login-form label{color:var(--primary);display:block;font-weight:600;margin-bottom:8px}.login-form input{border:1px solid #e2e8f0;border-radius:4px;font-size:14px;padding:12px 15px;width:100%}.login-btn{background-color:var(--accent);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;margin-top:10px;padding:12px;transition:background-color .3s;width:100%}.login-btn:hover{background:#dc2626}.login-footer{color:#718096;font-size:14px;margin-top:20px;text-align:center}.login-password-group{margin-bottom:15px;position:relative}.login-password-group label{color:var(--primary);display:block;font-weight:600;margin-bottom:8px}.login-password-input{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:10px 40px 10px 10px;width:100%}.login-password-toggle{color:#555;cursor:pointer;font-size:16px;position:absolute;right:10px;top:50%;z-index:2}.connection-form-container{background-color:#fff;border-radius:var(--border-radius);box-shadow:var(--shadow);margin:0 auto;max-width:800px;padding:30px}.ssl-section{background-color:#f0fff4;border-left:4px solid var(--success);border-radius:6px;margin-top:15px;padding:15px}.ssl-section h4{color:var(--primary);margin-bottom:10px}.connection-form-actions{display:flex;gap:15px;justify-content:flex-end;margin-top:30px}.department-management{margin-top:20px}.department-list{display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));margin-top:15px}.department-card{background-color:#fff;border-radius:var(--border-radius);border-top:4px solid var(--accent);box-shadow:var(--shadow);padding:15px;position:relative}.department-name{font-weight:600;margin-bottom:5px}.department-description{color:#718096;font-size:12px;margin-bottom:10px}.department-actions{display:flex;gap:5px;position:absolute;right:10px;top:10px}.department-action-btn{background:none;border:none;border-radius:4px;cursor:pointer;font-size:14px;padding:5px;transition:background-color .2s}.department-edit-btn{color:var(--primary)}.department-edit-btn:hover{background:#e2e8f0}.department-remove-btn{color:#991b1b}.department-remove-btn:hover{background:#e2e8f0}.add-department-btn{align-items:center;background:var(--accent);border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:10px 16px;transition:all .2s}.add-department-btn:hover{background:#dc2626}.department-form-container{background-color:#fff;border-radius:var(--border-radius);box-shadow:var(--shadow);margin:0 auto;max-width:600px;padding:30px}@media(max-width:1024px){.chat-container,.grid-2-col{grid-template-columns:1fr}.chat-container{height:auto}.chat-history,.output-area{height:300px}.department-checkboxes,.department-list{grid-template-columns:repeat(2,1fr)}.connection-list{grid-template-columns:1fr}}@media(max-width:768px){.kpi-grid{grid-template-columns:1fr}.admin-table{display:block;overflow-x:auto}.module-nav{flex-wrap:wrap}.department-checkboxes,.department-list{grid-template-columns:1fr}}.datasource-banner{align-items:flex-start;background:#f0f7ff;border-left:4px solid #3b82f6;border-radius:8px;display:flex;gap:12px;margin-bottom:20px;padding:16px}.banner-icon{color:#3b82f6;font-size:22px;margin-top:2px}.banner-text{display:flex;flex-direction:column}.banner-title{color:#1e3a8a;font-size:16px;font-weight:600}.info{display:"flex";flex-direction:"column";gap:"20px"}.data-empty{color:#aaa;padding:20px;text-align:center}.empty-state{color:#718096;font-size:48px;padding:40px 20px;text-align:center}.view-user{font-size:16px}.right-pane{gap:20px}.quick-actions,.right-pane{display:flex;flex-direction:column}.quick-actions{gap:10px;padding-top:5px}.pagination-info{align-items:center;display:flex;font-size:14px;justify-content:space-between;margin-top:10px}.pagination-info .pagination-controls{display:flex;gap:8px;justify-content:flex-end}.pagination-info .pagination-controls button{background-color:#f7fafc;border:1px solid #cbd5e0;border-radius:4px;color:#2d3748;cursor:pointer;font-size:13px;padding:4px 10px;transition:background-color .2s,border-color .2s}.pagination-info .pagination-controls button:disabled{cursor:not-allowed;opacity:.5}.pagination-info .pagination-controls button:not(:disabled):hover{background-color:#e2e8f0;border-color:#a0aec0}.checkbox-reset-password{align-items:center;display:flex;font-weight:600;gap:8px;padding:10px 0}.departments{text-align:end}.sync-now-btn{background-color:var(--accent);border:none;border-radius:var(--border-radius);box-shadow:0 4px 6px #0000001a;color:#fff;cursor:pointer;font-weight:600;padding:11px 0;transition:background-color .3s,transform .2s;width:100%}.sync-now-btn:hover:not(:disabled){background:#dc2626;transform:translateY(-2px)}.sync-now-btn:disabled{background-color:#a0aec0;box-shadow:none;cursor:not-allowed}.analytics-hub-container{display:grid;gap:20px;grid-template-columns:300px 1fr;height:600px}.analytics-sidebar{background:var(--primary);border:1px solid #334155;border-radius:var(--border-radius);display:flex;flex-direction:column;overflow:hidden}.analytics-main{background:#fff;border:1px solid #e2e8f0;border-radius:var(--border-radius);display:flex;flex:1;flex-direction:column;overflow:hidden}.analytics-sidebar-header{border-bottom:1px solid #334155;padding:24px}.analytics-sidebar-title{font-size:24px;font-weight:900;letter-spacing:-.5px;margin-bottom:8px}.analytics-sidebar-title span:first-child{color:#fff}.analytics-sidebar-title span:last-child{color:var(--accent)}.analytics-sidebar-subtitle{color:#94a3b8;font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase}.analytics-tabs-container{flex:1;overflow-y:auto;padding:8px 0}.analytics-tab{align-items:center;border-left:4px solid transparent;color:#cbd5e1;cursor:pointer;display:flex;font-size:14px;font-weight:500;justify-content:space-between;padding:14px 24px;transition:all .2s}.analytics-tab:hover{background:#ffffff0d;color:#fff}.analytics-tab.active{background:#ef44441a;border-left:4px solid var(--accent);color:#fff}.analytics-tab-delete{background:none;border:none;border-radius:4px;color:#64748b;cursor:pointer;font-size:18px;opacity:0;padding:0 4px;transition:opacity .2s}.analytics-tab:hover .analytics-tab-delete{opacity:1}.analytics-tab-delete:hover{color:var(--accent)}.analytics-sidebar-footer{border-top:1px solid #334155;padding:16px 24px}.add-template-btn{align-items:center;background:var(--accent);border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:700;gap:8px;justify-content:center;letter-spacing:-.2px;padding:12px;transition:all .2s;width:100%}.add-template-btn:hover{background:#dc2626;box-shadow:0 4px 8px #ef44444d;transform:translateY(-1px)}.export-pdf-btn{align-items:center;background:#1e293b;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:700;gap:8px;justify-content:center;letter-spacing:-.2px;padding:12px;transition:all .2s;width:100%}.export-pdf-btn:hover{background:#0f172a;box-shadow:0 4px 8px #0f172a4d;transform:translateY(-1px)}.export-pdf-btn i{color:#ef4444}.analytics-header{background:#fff;border-bottom:1px solid #e2e8f0;min-height:60px;padding:12px 24px;position:relative}.analytics-title{color:var(--primary);font-size:24px;font-weight:900;letter-spacing:-.5px;margin-bottom:2px}.analytics-description,.analytics-title{background:transparent;border:none;outline:none;width:calc(100% - 250px)}.analytics-description{color:#64748b;font-size:12px}.analytics-content{flex:1;overflow-y:auto;padding:16px}.analytics-footer{background:#fff;border-top:1px solid #e2e8f0;display:none;padding:20px;text-align:center}.add-component-buttons{display:flex;gap:8px;position:absolute;right:24px;top:12px}.add-component-btn{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:6px;color:#64748b;cursor:pointer;display:flex;font-size:12px;font-weight:700;gap:6px;letter-spacing:-.2px;padding:8px 12px;transition:all .2s}.add-component-btn:hover{border-color:#cbd5e1;color:#475569}.add-component-btn.primary{background:var(--primary);border:none;color:#fff}.add-component-btn.primary:hover{background:#1e293b}.analytics-component{align-items:flex-start;display:flex;gap:8px;margin-bottom:12px}.drag-handle{border-radius:4px;color:#cbd5e1;cursor:grab;margin-top:4px;padding:6px 4px}.drag-handle:hover{background:#f1f5f9;color:#64748b}.drag-handle:active{cursor:grabbing}.component-content{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 1px 3px #0000000d;flex:1;padding:12px 16px;position:relative}.component-delete{background:none;border:none;border-radius:4px;color:#cbd5e1;cursor:pointer;font-size:16px;opacity:0;padding:2px;position:absolute;right:6px;top:6px;transition:all .2s}.analytics-component:hover .component-delete{opacity:1}.component-delete:hover{color:var(--accent)}.prompt-input-container{align-items:center;display:flex;gap:8px;margin-bottom:8px}.prompt-input{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:var(--primary);flex:1;font-size:13px;font-weight:500;padding:8px 12px;transition:all .2s}.prompt-input:focus{background:#fff;border-color:var(--accent);box-shadow:0 0 0 4px #ef44441a;outline:none}.prompt-input:disabled{background:#f1f5f9;border-color:#e2e8f0;color:#94a3b8;cursor:not-allowed}.prompt-execute{background:var(--primary);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:11px;font-weight:700;letter-spacing:.5px;padding:8px 12px;text-transform:uppercase;transition:all .2s}.prompt-execute:hover:not(:disabled){background:#1e293b;transform:translateY(-1px)}.prompt-execute:disabled{background:#cbd5e1;cursor:not-allowed}.text-component{background:transparent;border:1px dashed #e2e8f0;border-radius:6px;color:var(--primary);font-size:14px;line-height:1;max-height:60px;min-height:10px;overflow:hidden;padding:2px;resize:vertical;transition:all .2s;width:100%}.text-component:hover{background:#f8fafc;border-color:#cbd5e1}.text-component:focus{background:#fff;border-color:var(--accent);outline:none}.result-placeholder{color:#cbd5e1;font-size:12px;font-style:italic;padding:20px 10px;text-align:center}.modal-backdrop{align-items:center;background:#00000073;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.modal{animation:modalFadeIn .2s ease-out;background:#fff;border-radius:10px;box-shadow:0 10px 30px #00000040;max-width:90%;padding:20px 24px 24px;position:relative;width:420px}.modal h3{color:#333;font-size:18px;font-weight:600;margin:0 0 16px}.modal-close-btn{align-items:center;background:transparent;border:none;color:#666;cursor:pointer;display:flex;font-size:16px;height:32px;justify-content:center;position:absolute;right:12px;top:12px;width:32px}.modal-close-btn:hover{background:#0000000d;border-radius:50%;color:#000}.failed-list{margin:0;padding-left:18px}.failed-list li{margin-bottom:12px}.failed-list strong{color:#222;display:block;font-size:14px}.error-text{color:#d9534f;font-size:13px;line-height:1.4;margin-top:4px}.empty-text{color:#888;font-size:14px;padding:16px 0;text-align:center}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.message.loading{align-items:center;background:#f1f3f5;border-radius:12px;display:inline-flex;gap:6px;margin:8px 0;padding:10px 14px}.message.loading .dot{animation:blink 1.4s infinite both;background:#999;border-radius:50%;height:6px;width:6px}.message.loading .dot:nth-child(2){animation-delay:.2s}.message.loading .dot:nth-child(3){animation-delay:.4s}@keyframes blink{0%{opacity:.2}20%{opacity:1}to{opacity:.2}}.page-enter-active,.page-leave-active{transition:all .2s}.page-enter-from,.page-leave-to{filter:blur(1rem);opacity:0}
