*{margin:0;padding:0;box-sizing:border-box}:root{--primary-color: #3b82f6;--primary-hover: #2563eb;--secondary-color: #6b7280;--success-color: #10b981;--danger-color: #ef4444;--warning-color: #f59e0b;--text-primary: #1f2937;--text-secondary: #6b7280;--text-muted: #9ca3af;--bg-primary: #ffffff;--bg-secondary: #f9fafb;--bg-tertiary: #f3f4f6;--border-color: #e5e7eb;--border-radius: 8px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1);--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif}body{margin:0;font-family:var(--font-family);color:var(--text-primary);background-color:var(--bg-secondary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6}.btn{display:inline-block;padding:.5rem 1rem;font-size:.875rem;font-weight:500;text-align:center;text-decoration:none;border:1px solid transparent;border-radius:var(--border-radius);cursor:pointer;transition:all .2s;font-family:inherit}.btn-primary{background-color:var(--primary-color);color:#fff;border-color:var(--primary-color)}.btn-primary:hover:not(:disabled){background-color:var(--primary-hover);border-color:var(--primary-hover)}.btn-secondary{background-color:transparent;color:var(--text-primary);border-color:var(--border-color)}.btn-secondary:hover:not(:disabled){background-color:var(--bg-tertiary)}.btn-danger{background-color:var(--danger-color);color:#fff;border-color:var(--danger-color)}.btn-danger:hover:not(:disabled){background-color:#dc2626}.btn-large{padding:.75rem 2rem;font-size:1rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-primary);font-size:.875rem}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.625rem .875rem;font-size:.875rem;border:1px solid var(--border-color);border-radius:var(--border-radius);background-color:var(--bg-primary);transition:border-color .2s,box-shadow .2s;font-family:inherit}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #3b82f61a}.form-group small{display:block;margin-top:.25rem;font-size:.75rem;color:var(--text-muted)}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:1rem}.spinner{width:40px;height:40px;border:4px solid var(--bg-tertiary);border-top-color:var(--primary-color);border-radius:50%;animation:spin .8s linear infinite}.error-message{padding:.75rem 1rem;background-color:#fee2e2;color:var(--danger-color);border:1px solid #fecaca;border-radius:var(--border-radius);font-size:.875rem;margin-bottom:1rem}.error-container{text-align:center;padding:2rem}.success-message{padding:.75rem 1rem;background-color:#d1fae5;color:var(--success-color);border:1px solid #a7f3d0;border-radius:var(--border-radius);font-size:.875rem;margin-bottom:1rem}.text-muted{color:var(--text-muted)}.text-center{text-align:center}.code{font-family:Monaco,Courier New,monospace;background-color:var(--bg-tertiary);padding:.125rem .375rem;border-radius:4px;font-size:.875em}.tag{display:inline-block;padding:.25rem .5rem;background-color:var(--bg-tertiary);color:var(--text-primary);border-radius:4px;font-size:.75rem;margin-right:.5rem;margin-bottom:.5rem}.empty-state{text-align:center;padding:4rem 2rem}.empty-state h2{margin-bottom:.5rem;color:var(--text-primary)}.empty-state p{color:var(--text-secondary);margin-bottom:1.5rem}.app-layout{display:flex;flex-direction:column;min-height:100vh}.app-header{background-color:var(--bg-primary);border-bottom:1px solid var(--border-color);box-shadow:var(--shadow-sm);position:sticky;top:0;z-index:100}.header-content{padding:0 1.5rem;display:flex;align-items:center;justify-content:space-between;height:64px}.header-left{display:flex;align-items:center;gap:1rem}.sidebar-toggle{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background-color:transparent;border:1px solid var(--border-color);border-radius:var(--border-radius);color:var(--text-secondary);cursor:pointer;transition:all .2s}.sidebar-toggle:hover{background-color:var(--bg-secondary);color:var(--primary-color);border-color:var(--primary-color)}.toggle-icon{font-size:1.25rem;line-height:1}.logo{display:flex;align-items:center;gap:.5rem;text-decoration:none;color:var(--text-primary);font-weight:600;font-size:1.25rem}.logo-icon{font-size:1.5rem}.app-content{display:flex;flex:1}.app-sidebar{width:250px;background-color:var(--bg-primary);border-right:1px solid var(--border-color);position:sticky;top:64px;height:calc(100vh - 64px);overflow-y:auto;transition:width .3s ease}.app-sidebar.collapsed{width:70px}.app-sidebar.collapsed .nav-text{display:none}.app-sidebar.collapsed .nav-link{justify-content:center;padding:.875rem .5rem}.main-nav{display:flex;flex-direction:column;padding:1rem 0}.nav-link{display:flex;align-items:center;gap:.75rem;text-decoration:none;color:var(--text-secondary);font-weight:500;padding:.875rem 1.5rem;transition:all .2s;border-left:3px solid transparent}.nav-link:hover{color:var(--primary-color);background-color:var(--bg-secondary);border-left-color:var(--primary-color)}.nav-link.active{color:var(--primary-color);background-color:var(--bg-secondary);border-left-color:var(--primary-color);font-weight:600}.nav-icon{font-size:1.25rem;width:1.5rem;text-align:center;flex-shrink:0}.nav-text{flex:1;white-space:nowrap}.nav-divider{height:1px;background-color:var(--border-color);margin:.75rem 1.5rem}.app-sidebar.collapsed .nav-divider{margin:.75rem .5rem}.nav-section-title{padding:.5rem 1.5rem;color:var(--text-muted);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.app-sidebar.collapsed .nav-section-title{display:none}.user-menu{display:flex;align-items:center;gap:1rem}.company-selector,.project-selector{display:flex;align-items:center;gap:.5rem}.selector-label{font-size:.875rem;font-weight:500;color:var(--text-secondary);white-space:nowrap}.company-select,.project-select{padding:.5rem .75rem;border:1px solid var(--border-color);border-radius:var(--border-radius);background-color:var(--bg-primary);color:var(--text-primary);font-size:.875rem;cursor:pointer;transition:border-color .2s;max-width:200px;min-width:150px}.company-select:hover,.project-select:hover{border-color:var(--primary-color)}.company-select:focus,.project-select:focus{outline:none;border-color:var(--primary-color)}.user-info{display:flex;flex-direction:column;align-items:flex-end;gap:.125rem}.user-name{font-weight:500;font-size:.875rem}.user-role{font-size:.75rem;color:var(--text-muted)}.app-main{flex:1;padding:2rem;overflow-y:auto}.app-footer{background-color:var(--bg-primary);border-top:1px solid var(--border-color);padding:1.5rem;text-align:center;color:var(--text-muted);font-size:.875rem}.page-container{width:100%}.page-header{margin-bottom:2rem;display:flex;justify-content:space-between;align-items:flex-start}.page-header h1{font-size:2rem;font-weight:700;color:var(--text-primary);margin-bottom:.5rem}.page-header p{color:var(--text-secondary)}.back-link{display:inline-block;color:var(--primary-color);text-decoration:none;font-size:.875rem;margin-bottom:.5rem}.back-link:hover{text-decoration:underline}@media(max-width:768px){.header-content{padding:0 1rem}.sidebar-toggle{display:none}.app-content{flex-direction:column}.app-sidebar{width:100%;height:auto;position:static;border-right:none;border-bottom:1px solid var(--border-color)}.app-sidebar.collapsed{width:100%}.app-sidebar.collapsed .nav-text{display:block}.app-sidebar.collapsed .nav-link{justify-content:flex-start;padding:.75rem 1rem}.main-nav{flex-direction:row;padding:.5rem;overflow-x:auto}.nav-divider,.nav-section-title{display:none}.nav-link{flex-direction:column;padding:.75rem 1rem;gap:.25rem;border-left:none;border-bottom:3px solid transparent;min-width:80px;text-align:center}.nav-link:hover,.nav-link.active{border-left-color:transparent;border-bottom-color:var(--primary-color)}.nav-icon{font-size:1.5rem}.nav-text{font-size:.75rem}.app-main{padding:1rem}.page-header{flex-direction:column;gap:1rem}.user-menu{flex-wrap:wrap;gap:.5rem}.company-selector,.project-selector{flex:1 1 auto;min-width:150px}.company-select,.project-select{width:100%;max-width:200px;min-width:150px}.user-info{display:none}}.auth-container{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - 128px);padding:2rem 1rem}.auth-card{width:100%;max-width:450px;background-color:var(--bg-primary);border-radius:var(--border-radius);box-shadow:var(--shadow-lg);padding:2.5rem}.auth-header{text-align:center;margin-bottom:2rem}.auth-header h1{font-size:1.875rem;font-weight:700;color:var(--text-primary);margin-bottom:.5rem}.auth-header p{color:var(--text-secondary);font-size:.938rem}.auth-form{margin-bottom:1.5rem}.auth-footer{text-align:center;padding-top:1.5rem;border-top:1px solid var(--border-color)}.auth-footer p{color:var(--text-secondary);font-size:.875rem;margin-bottom:.5rem}.auth-footer a{color:var(--primary-color);text-decoration:none;font-weight:500}.auth-footer a:hover{text-decoration:underline}._messagesContainer_1wlhs_3{flex:1;overflow-y:auto;padding:2rem;display:flex;flex-direction:column;gap:1.5rem}._message_1wlhs_3{display:flex;gap:1rem;animation:_fadeIn_1wlhs_1 .3s ease-in}@keyframes _fadeIn_1wlhs_1{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}._messageUser_1wlhs_29{flex-direction:row-reverse}._messageAvatar_1wlhs_33{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}._messageUser_1wlhs_29 ._messageAvatar_1wlhs_33{background:linear-gradient(135deg,#f093fb,#f5576c)}._messageContent_1wlhs_49{max-width:70%}._messageUser_1wlhs_29 ._messageContent_1wlhs_49{text-align:right}._messageText_1wlhs_57{background:#f5f5f5;color:#333;padding:1rem 1.5rem;border-radius:18px;display:inline-block;text-align:left;line-height:1.6;white-space:pre-wrap;word-wrap:break-word;max-width:100%}._messageUser_1wlhs_29 ._messageText_1wlhs_57{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}._messageFooter_1wlhs_75{display:flex;justify-content:space-between;align-items:center;margin-top:.5rem;gap:.5rem}._messageTime_1wlhs_83{font-size:.75rem;color:#999}._restoreButton_1wlhs_88{font-size:.75rem;padding:.25rem .5rem;background:transparent;border:1px solid #ddd;border-radius:4px;cursor:pointer;color:#666;transition:all .2s ease;white-space:nowrap}._restoreButton_1wlhs_88:hover{background:#f5f5f5;border-color:#999;color:#333}._restoreButton_1wlhs_88:active{background:#e5e5e5}._loadingText_1wlhs_110{display:flex;gap:.5rem;padding:1rem 1.5rem}._loadingText_1wlhs_110 span{width:8px;height:8px;background:#999;border-radius:50%;animation:_bounce_1wlhs_1 1.4s infinite ease-in-out both}._loadingText_1wlhs_110 span:nth-child(1){animation-delay:-.32s}._loadingText_1wlhs_110 span:nth-child(2){animation-delay:-.16s}@keyframes _bounce_1wlhs_1{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}._emptyState_1wlhs_143{text-align:center;padding:4rem 2rem;color:#666}._emptyIcon_1wlhs_149{font-size:64px;margin-bottom:20px}._emptyState_1wlhs_143 h3{margin:0 0 1rem;font-size:1.5rem;color:#333}._emptyState_1wlhs_143 p{margin:.5rem 0;font-size:14px;color:#666;line-height:1.6}@media(max-width:768px){._messageUser_1wlhs_29 ._messageContent_1wlhs_49,._messageAssistant_1wlhs_170 ._messageContent_1wlhs_49,._ragMessageContent_1wlhs_174{max-width:85%}}.platform-modal-overlay{position:fixed;inset:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.platform-modal-content{background:#fff;border-radius:12px;width:90%;max-width:600px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d}.platform-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 30px;border-bottom:1px solid #e5e7eb}.platform-modal-header h2{margin:0;font-size:24px;font-weight:600;color:#111827}.platform-close-btn{background:none;border:none;font-size:28px;color:#6b7280;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s}.platform-close-btn:hover{background-color:#f3f4f6;color:#111827}.platform-modal-body{flex:1;overflow-y:auto;padding:20px 30px}.platform-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px}.platform-empty{display:flex;align-items:center;justify-content:center;padding:60px;color:#6b7280;font-size:16px}.platform-list{display:flex;flex-direction:column;gap:12px}.platform-item{border:2px solid #e5e7eb;border-radius:8px;transition:all .2s}.platform-item:hover{border-color:#3b82f6;background-color:#f9fafb}.platform-checkbox-label{display:flex;align-items:flex-start;padding:16px;cursor:pointer;gap:12px}.platform-checkbox{margin-top:4px;width:20px;height:20px;cursor:pointer;flex-shrink:0}.platform-info{flex:1;display:flex;flex-direction:column;gap:6px}.platform-name{font-size:16px;font-weight:600;color:#111827}.platform-description{font-size:14px;color:#6b7280;line-height:1.5}.platform-modal-footer{display:flex;justify-content:space-between;align-items:center;padding:20px 30px;border-top:1px solid #e5e7eb}.platform-selected-count{font-size:14px;color:#6b7280;font-weight:500}.platform-buttons{display:flex;gap:12px}.btn-primary:hover:not(:disabled){background-color:#2563eb}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.proofread-modal-overlay{position:fixed;inset:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.proofread-modal-content{background:#fff;border-radius:12px;width:95%;max-width:1400px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d}.proofread-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 30px;border-bottom:1px solid #e5e7eb}.proofread-modal-header h2{margin:0;font-size:24px;font-weight:600;color:#111827}.proofread-close-btn{background:none;border:none;font-size:28px;color:#6b7280;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s}.proofread-close-btn:hover{background-color:#f3f4f6;color:#111827}.proofread-modal-body{flex:1;overflow-y:auto;padding:30px}.proofread-legend{display:flex;gap:20px;padding:12px 20px;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:20px;font-size:13px;color:#6b7280}.legend-item{display:flex;align-items:center;gap:8px}.legend-item mark{padding:2px 8px;border-radius:3px;font-weight:500}.proofread-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px}.loading-spinner{width:50px;height:50px;border:4px solid #f3f4f6;border-top:4px solid #3b82f6;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.proofread-loading p{margin-top:20px;font-size:16px;color:#6b7280}.proofread-content-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-bottom:30px}.proofread-column{display:flex;flex-direction:column;min-height:400px}.column-title{font-size:18px;font-weight:600;color:#111827;margin:0 0 15px;padding-bottom:10px;border-bottom:2px solid #e5e7eb;display:flex;align-items:center;justify-content:space-between}.column-subtitle{font-size:13px;font-weight:400;color:#6b7280;margin-left:12px}.proofread-text-content{flex:1;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:20px;overflow-y:auto;max-height:500px}.proofread-text-content pre{margin:0;font-family:SF Pro Text,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;line-height:1.8;color:#374151;white-space:pre-wrap;word-wrap:break-word}.proofread-text-content-editable{flex:1;display:flex;flex-direction:column;background-color:#fff;border:2px solid #3b82f6;border-radius:8px;overflow:hidden;max-height:500px}.proofread-textarea{flex:1;width:100%;padding:20px;font-family:SF Pro Text,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;line-height:1.8;color:#374151;border:none;outline:none;resize:none;background-color:#fff;overflow-y:auto}.proofread-textarea:focus{background-color:#fefce8}.proofread-textarea::placeholder{color:#9ca3af}.proofread-text-content mark.highlight-original{background-color:#fee2e2;color:#991b1b;padding:2px 4px;border-radius:3px;border:1px solid #fca5a5;font-weight:500}.proofread-text-content mark.highlight-revised{background-color:#d1fae5;color:#065f46;padding:2px 4px;border-radius:3px;border:1px solid #6ee7b7;font-weight:500}.proofread-legend mark.highlight-original{background-color:#fee2e2;color:#991b1b;border:1px solid #fca5a5}.proofread-legend mark.highlight-revised{background-color:#d1fae5;color:#065f46;border:1px solid #6ee7b7}.proofread-modifications{margin-top:30px;padding-top:30px;border-top:2px solid #e5e7eb}.proofread-modifications h3,.proofread-claims h3,.proofread-sources h3{font-size:18px;font-weight:600;color:#111827;margin:0 0 20px}.modifications-list{display:flex;flex-direction:column;gap:15px}.modification-item{background-color:#fffbeb;border:1px solid #fbbf24;border-radius:8px;padding:15px}.modification-header{margin-bottom:10px}.modification-type{display:inline-block;padding:4px 12px;background-color:#fbbf24;color:#78350f;font-size:12px;font-weight:600;border-radius:12px;text-transform:uppercase}.modification-content{display:flex;flex-direction:column;gap:8px}.modification-original,.modification-revised,.modification-reason{font-size:14px;line-height:1.6}.modification-original strong,.modification-revised strong,.modification-reason strong{color:#111827;margin-right:8px}.modification-original span{color:#dc2626;text-decoration:line-through}.modification-revised span{color:#059669}.modification-reason span{color:#6b7280}.proofread-claims{margin-top:30px;padding-top:30px;border-top:2px solid #e5e7eb}.claims-list{display:flex;flex-direction:column;gap:15px}.claim-item{border-radius:8px;padding:15px;border:1px solid}.claim-item.verdict-conflict{background-color:#fef2f2;border-color:#ef4444}.claim-item.verdict-insufficient_evidence{background-color:#fffbeb;border-color:#f59e0b}.claim-header{display:flex;align-items:center;gap:12px;margin-bottom:10px}.claim-verdict{display:inline-block;padding:4px 12px;font-size:12px;font-weight:600;border-radius:12px;text-transform:uppercase}.verdict-conflict .claim-verdict{background-color:#ef4444;color:#fff}.verdict-insufficient_evidence .claim-verdict{background-color:#f59e0b;color:#fff}.claim-text{flex:1;font-size:14px;font-weight:500;color:#111827}.claim-reason{font-size:14px;color:#6b7280;line-height:1.6;margin-bottom:10px}.claim-sources{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:13px}.claim-sources strong{color:#111827}.claim-source-link{color:#3b82f6;text-decoration:none;padding:4px 8px;background-color:#fff;border-radius:4px;transition:background-color .2s}.claim-source-link:hover{background-color:#dbeafe;text-decoration:underline}.proofread-sources{margin-top:30px;padding-top:30px;border-top:2px solid #e5e7eb}.sources-list{display:flex;flex-direction:column;gap:10px}.source-item{display:flex;align-items:center;gap:10px;padding:10px;background-color:#f9fafb;border-radius:6px;font-size:14px}.source-index{font-weight:600;color:#3b82f6;min-width:30px}.source-link{flex:1;color:#111827;text-decoration:none}.source-link:hover{color:#3b82f6;text-decoration:underline}.source-score{color:#6b7280;font-size:12px}.proofread-empty{display:flex;align-items:center;justify-content:center;padding:60px;color:#6b7280;font-size:16px}.proofread-modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 30px;border-top:1px solid #e5e7eb}.btn-primary,.btn-secondary{padding:10px 24px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border:none}.btn-primary{background-color:#3b82f6;color:#fff}.btn-primary:hover{background-color:#2563eb}.btn-secondary:hover{background-color:#e5e7eb}.btn-primary:disabled,.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.proofread-modal-footer button+button{margin-left:12px}.claim-section{margin-bottom:20px}.claim-details{margin:15px 0}.claim-check{margin-bottom:12px}.claim-check strong{display:block;color:#111827;margin-bottom:4px}.claim-check p{margin:0;padding:10px;background-color:#f9fafb;border-left:3px solid #3b82f6;border-radius:4px;font-size:14px;line-height:1.6;color:#374151}.claim-modifications{margin-top:12px;padding-top:12px;border-top:1px solid #e5e7eb}.claim-modifications strong{display:block;color:#111827;margin-bottom:8px}.modification-item-inline{background-color:#fffbeb;border:1px solid #fbbf24;border-radius:6px;padding:12px;margin-bottom:8px}.modification-type-badge{display:inline-block;padding:3px 10px;background-color:#fbbf24;color:#78350f;font-size:11px;font-weight:600;border-radius:10px;text-transform:uppercase;margin-bottom:8px}.modification-original-text,.modification-revised-text{font-size:14px;line-height:1.6;margin:4px 0}.modification-original-text{color:#dc2626}.modification-revised-text{color:#059669}.claim-notes{margin-top:12px;padding:10px;background-color:#fef3c7;border-left:3px solid #f59e0b;border-radius:4px}.claim-notes strong{display:block;color:#92400e;margin-bottom:4px}.claim-notes p{margin:0;font-size:13px;color:#78350f;line-height:1.5}.proofread-no-issues{margin-top:30px;padding:40px;text-align:center}.no-issues-message{max-width:500px;margin:0 auto;padding:30px;background-color:#f0fdf4;border:2px solid #10b981;border-radius:12px}.no-issues-message .success-icon{display:inline-block;width:60px;height:60px;line-height:60px;font-size:36px;color:#fff;background-color:#10b981;border-radius:50%;margin-bottom:20px}.no-issues-message h3{margin:0 0 12px;font-size:20px;font-weight:600;color:#065f46}.no-issues-message p{margin:0;font-size:15px;color:#047857;line-height:1.6}.chat-page-container{display:flex;flex-direction:column;height:100vh;background:#fff}.session-selector{display:flex;gap:12px;padding:12px 16px;background:#f9fafb;border-bottom:1px solid #e5e7eb;align-items:center}.create-session-button{padding:10px 20px;background:#10b981;border:none;border-radius:8px;font-size:14px;font-weight:500;color:#fff;cursor:pointer;transition:all .2s;white-space:nowrap}.create-session-button:hover{background:#059669;transform:translateY(-1px);box-shadow:0 4px 6px #10b9814d}.create-session-button:active{background:#047857;transform:translateY(0)}.session-dropdown{flex:1;padding:10px 16px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;color:#111827;background:#fff;cursor:pointer;transition:all .2s}.session-dropdown:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.session-dropdown:disabled{opacity:.5;cursor:not-allowed;background:#f3f4f6}.load-session-button{padding:10px 24px;background:#3b82f6;border:none;border-radius:8px;font-size:14px;font-weight:500;color:#fff;cursor:pointer;transition:all .2s;white-space:nowrap}.load-session-button:hover:not(:disabled){background:#2563eb;transform:translateY(-1px);box-shadow:0 4px 6px #3b82f64d}.load-session-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.pillar-selector{display:flex;gap:12px;padding:12px 16px;background:#f0f9ff;border-bottom:1px solid #bae6fd;align-items:center}.pillar-dropdown{flex:1;padding:10px 16px;border:1px solid #bae6fd;border-radius:8px;font-size:14px;color:#111827;background:#fff;cursor:pointer;transition:all .2s}.pillar-dropdown:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.pillar-dropdown:disabled{opacity:.5;cursor:not-allowed;background:#f3f4f6}.generate-pillar-button{padding:10px 24px;background:#8b5cf6;border:none;border-radius:8px;font-size:14px;font-weight:500;color:#fff;cursor:pointer;transition:all .2s;white-space:nowrap}.generate-pillar-button:hover:not(:disabled){background:#7c3aed;transform:translateY(-1px);box-shadow:0 4px 6px #8b5cf64d}.generate-pillar-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.chat-header{display:flex;align-items:center;gap:12px;padding:16px 24px;border-bottom:1px solid #e5e7eb;background:#fff}.back-button{background:none;border:none;font-size:18px;cursor:pointer;padding:4px 8px;color:#6b7280;transition:color .2s}.back-button:hover{color:#111827}.chat-title{flex:1;margin:0;font-size:16px;font-weight:500;color:#111827}.chat-title-input{flex:1;margin:0;padding:6px 12px;font-size:16px;font-weight:500;color:#111827;border:2px solid #3b82f6;border-radius:6px;background:#f9fafb;outline:none;transition:all .2s}.chat-title-input:focus{background:#fff;box-shadow:0 0 0 3px #3b82f61a}.edit-button{background:none;border:none;font-size:18px;cursor:pointer;padding:4px 8px;transition:all .2s}.edit-button:hover{color:#3b82f6;transform:scale(1.1)}.chat-tabs{display:flex;align-items:center;gap:12px;padding:12px 24px;border-bottom:1px solid #e5e7eb;background:#f9fafb}.tab-button{padding:6px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;font-size:14px;color:#374151;cursor:pointer;transition:all .2s}.tab-button.active{background:#3b82f6;color:#fff;border-color:#3b82f6}.tab-button:hover:not(.active){background:#f3f4f6}.generate-button{padding:6px 16px;background:#3b82f6;color:#fff;border-color:#3b82f6;border:1px solid #e5e7eb;border-radius:6px;font-size:14px;cursor:pointer;transition:all .2s}.generate-button:hover:not(:disabled){background:#2563eb;transform:translateY(-1px)}.generate-button:disabled{background:#9ca3af;border-color:#9ca3af;color:#d1d5db;cursor:not-allowed;opacity:.6}.refresh-button{padding:6px 12px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;font-size:16px;color:#6b7280;cursor:pointer;transition:all .2s}.refresh-button:hover{background:#f3f4f6}.chat-content-area{flex:1;overflow-y:auto;padding:24px;background:#f9fafb}.messages-display{max-width:900px;margin:0 auto;padding:12px 0}.empty-state{text-align:center;padding:4rem 2rem;color:#666}.empty-icon{font-size:64px;margin-bottom:20px}.empty-state h3{margin:0 0 1rem;font-size:1.5rem;color:#333}.empty-state p{margin:.5rem 0;font-size:14px;color:#666;line-height:1.6}.empty-state .hint{color:#999;font-size:.875rem}.message{margin-bottom:16px;animation:fadeIn .3s ease-in;display:flex;width:100%}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message-user{justify-content:flex-end}.message-user .message-content{background:#3b82f6;padding:10px 14px;border-radius:18px 18px 4px;box-shadow:0 1px 2px #0000001a;max-width:65%;margin-left:auto}.message-assistant{justify-content:flex-start}.message-assistant .message-content{background:#fff;padding:10px 14px;border-radius:18px 18px 18px 4px;box-shadow:0 1px 2px #0000001a;border:1px solid #e5e7eb;max-width:65%;margin-right:auto}.message-text{font-size:14px;line-height:1.5;color:#111827;white-space:pre-wrap;word-wrap:break-word;word-break:break-word;margin-bottom:4px}.message-timestamp{font-size:11px;text-align:right;margin-top:4px}.message-user .message-timestamp{color:#fffc}.message-assistant .message-timestamp{color:#9ca3af}.typing-indicator{display:flex;gap:4px;align-items:center;padding:4px 0}.typing-indicator span{width:8px;height:8px;background:#9ca3af;border-radius:50%;animation:typing 1.4s infinite}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{transform:translateY(0);opacity:.5}30%{transform:translateY(-6px);opacity:1}}.chat-bottom-section{border-top:1px solid #e5e7eb;background:#fff;padding:16px 24px}.bottom-actions{display:flex;align-items:flex-end;gap:16px;max-width:1200px;margin:0 auto}.bottom-btn-left{padding:10px 20px;background:#3b82f6;color:#fff;border:1px solid #3b82f6;border-radius:6px;font-size:14px;white-space:nowrap;cursor:pointer}.center-buttons{display:flex;gap:12px}.bottom-btn{padding:10px 20px;background:#3b82f6;color:#fff;border:1px solid #3b82f6;border-radius:6px;font-size:14px;white-space:nowrap;transition:all .2s;cursor:pointer}.bottom-btn:hover:not(:disabled){background:#2563eb;border-color:#2563eb;transform:translateY(-1px)}.bottom-btn:disabled{background:#9ca3af;border-color:#9ca3af;color:#d1d5db;cursor:not-allowed;opacity:.6}.input-section{flex:1;display:flex;flex-direction:column;gap:8px}.error-message-inline{padding:10px 16px;background:#fef2f2;color:#dc2626;border-radius:8px;font-size:13px;border-left:3px solid #ef4444;margin-bottom:8px}.input-form{display:flex;gap:8px;align-items:center}.text-input{flex:1;padding:10px 16px;border:1px solid #e5e7eb;border-radius:24px;font-size:14px;color:#111827;background:#f9fafb;transition:all .2s}.text-input:focus{outline:none;border-color:#3b82f6;background:#fff;box-shadow:0 0 0 3px #3b82f61a}.text-input:disabled{opacity:.5;cursor:not-allowed}.text-input::placeholder{color:#9ca3af}.attach-button{padding:10px 12px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;font-size:16px;color:#6b7280;cursor:pointer;transition:all .2s}.attach-button:hover{background:#f3f4f6}.send-button{padding:10px 24px;background:#3b82f6;border:none;border-radius:8px;font-size:14px;font-weight:500;color:#fff;cursor:pointer;transition:all .2s;white-space:nowrap}.send-button:hover:not(:disabled){background:#2563eb;transform:translateY(-1px);box-shadow:0 4px 6px #3b82f64d}.send-button:disabled{opacity:.5;cursor:not-allowed;transform:none}@media(max-width:768px){.chat-header{padding:12px 16px}.chat-tabs{padding:8px 16px;overflow-x:auto}.chat-content-area{padding:16px}.chat-bottom-section{padding:12px 16px}.bottom-actions{flex-direction:column;gap:12px}.bottom-btn-left,.center-buttons{display:none}.input-section{width:100%}.message-user .message-content,.message-assistant .message-content{max-width:85%}.session-selector{flex-direction:column}.create-session-button,.session-dropdown,.load-session-button{width:100%}}.rag-query-page{padding:2rem;max-width:1200px;margin:0 auto}.rag-query-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.rag-query-header h1{margin:0 0 .5rem;font-size:2rem;color:#1a1a1a}.rag-query-header .subtitle{margin:0;color:#666;font-size:1rem}.chat-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;height:calc(100vh - 250px);display:flex;flex-direction:column}.messages-list,.messages{flex:1;overflow-y:auto;padding:2rem;display:flex;flex-direction:column;gap:1.5rem}.message.user{display:flex;gap:1rem;flex-direction:row-reverse;animation:fadeIn .3s ease-in}.message.assistant{display:flex;gap:1rem;animation:fadeIn .3s ease-in}.message.user .message-avatar{background:linear-gradient(135deg,#f093fb,#f5576c)}.message.user .message-content{text-align:right;max-width:70%}.message.assistant .message-content{max-width:70%}.message.user .message-text{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:1rem 1.5rem;border-radius:18px;display:inline-block;text-align:left;line-height:1.6;white-space:pre-wrap;word-wrap:break-word}.message.assistant .message-text{background:#f5f5f5;color:#333;padding:1rem 1.5rem;border-radius:18px;display:inline-block;text-align:left;line-height:1.6;white-space:pre-wrap;word-wrap:break-word}.message-text.loading{display:flex;gap:.5rem;padding:1rem 1.5rem}.message-text.loading span{width:8px;height:8px;background:#999;border-radius:50%;animation:bounce 1.4s infinite ease-in-out both}.message-text.loading span:nth-child(1){animation-delay:-.32s}.message-text.loading span:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.message-time{font-size:.75rem;color:#999;margin-top:.5rem}.hint{color:#999;font-size:.875rem}.message-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}.header-actions{display:flex;gap:1rem}.query-form-container{border-top:1px solid #e5e5e5;padding:1.5rem 2rem}.query-form{display:flex;gap:1rem;align-items:flex-end}.query-form textarea{flex:1;padding:1rem;border:2px solid #e5e5e5;border-radius:12px;font-size:1rem;font-family:inherit;resize:none;transition:border-color .2s}.query-form textarea:focus{outline:none;border-color:#667eea}.query-form textarea:disabled{background:#f5f5f5;cursor:not-allowed}.chat-input-form{display:flex;gap:1rem;align-items:flex-end}.chat-input{flex:1;padding:1rem;border:2px solid #e5e5e5;border-radius:12px;font-size:1rem;font-family:inherit;transition:border-color .2s}.chat-input:focus{outline:none;border-color:#3b82f6}.chat-input:disabled{background:#f5f5f5;cursor:not-allowed}.hint-text{margin:.5rem 0 0;font-size:.75rem;color:#999;text-align:center}.rag-documents-page{padding:2rem;max-width:1400px;margin:0 auto}.rag-documents-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.rag-documents-header h1{margin:0 0 .5rem;font-size:2rem;color:#1a1a1a}.card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:2rem;margin-bottom:2rem}.card h2{margin:0 0 1.5rem;font-size:1.5rem;color:#333}.upload-section{margin-bottom:2rem}.upload-form{display:flex;flex-direction:column;gap:1.5rem}.file-input-container{position:relative}.file-input-container input[type=file]{position:absolute;opacity:0;width:0;height:0}.file-input-label{display:block;padding:1rem 1.5rem;background:#f5f5f5;border:2px dashed #ccc;border-radius:12px;text-align:center;cursor:pointer;transition:all .2s}.file-input-label:hover{background:#e5e5e5;border-color:#667eea}.upload-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.upload-options label{display:flex;flex-direction:column;gap:.5rem}.upload-options label span{font-weight:500;color:#333}.upload-options select{padding:.75rem;border:2px solid #e5e5e5;border-radius:8px;font-size:1rem;cursor:pointer}.checkbox-label{flex-direction:row!important;align-items:center;cursor:pointer}.checkbox-label input[type=checkbox]{width:20px;height:20px;cursor:pointer}.supported-formats{margin-top:1rem;padding:1rem;background:#f9f9f9;border-radius:8px;font-size:.875rem;color:#666}.documents-section{overflow-x:auto}.documents-list table{width:100%;border-collapse:collapse}.documents-list th{text-align:left;padding:1rem;background:#f5f5f5;font-weight:600;color:#333;border-bottom:2px solid #e5e5e5}.documents-list td{padding:1rem;border-bottom:1px solid #e5e5e5}.documents-list tr:hover{background:#f9f9f9}.doc-name{font-weight:500;color:#333}.btn-delete{background:none;border:none;cursor:pointer;font-size:1.2rem;padding:.5rem;transition:transform .2s}.btn-delete:hover{transform:scale(1.2)}.loading-state{text-align:center;padding:3rem;color:#666}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:transform .2s,box-shadow .2s}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:#fff;color:#667eea;border:2px solid #667eea;padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-secondary:hover:not(:disabled){background:#667eea;color:#fff}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.error-message{background:#fee;color:#c33;padding:1rem;border-radius:8px;margin-bottom:1rem;border-left:4px solid #c33}@media(max-width:768px){.rag-query-header,.rag-documents-header{flex-direction:column;gap:1rem}.header-actions{width:100%;flex-wrap:wrap}.upload-options{grid-template-columns:1fr}.documents-list{font-size:.875rem}.documents-list th,.documents-list td{padding:.75rem .5rem}}.onboard-container{max-width:800px;margin:0 auto;padding:2rem 1rem}.onboard-card{background-color:var(--bg-primary);border-radius:var(--border-radius);box-shadow:var(--shadow-lg);padding:2.5rem}.onboard-header{text-align:center;margin-bottom:2.5rem}.onboard-header h1{font-size:1.875rem;font-weight:700;color:var(--text-primary);margin-bottom:.5rem}.onboard-header p{color:var(--text-secondary)}.onboard-form{display:flex;flex-direction:column}.form-section{margin-bottom:2.5rem;padding-bottom:2rem;border-bottom:1px solid var(--border-color)}.form-section:last-of-type{border-bottom:none;margin-bottom:2rem}.form-section h2{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin-bottom:1.5rem}.company-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.company-card{background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:1.5rem;text-decoration:none;color:inherit;transition:all .2s;display:flex;flex-direction:column}.company-card:hover{border-color:var(--primary-color);box-shadow:var(--shadow-md);transform:translateY(-2px)}.company-card h3{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.schema-name{font-family:Monaco,Courier New,monospace;font-size:.813rem;color:var(--text-muted);margin-bottom:1rem}.company-meta{flex:1;display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.meta-item{font-size:.875rem}.meta-item strong{color:var(--text-secondary);font-weight:500}.card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid var(--border-color);font-size:.813rem}.date{color:var(--text-muted)}.link-text{color:var(--primary-color);font-weight:500}.detail-card{background-color:var(--bg-primary);border-radius:var(--border-radius);box-shadow:var(--shadow-md);padding:2rem}.detail-section{margin-bottom:2.5rem}.detail-section:last-child{margin-bottom:0}.detail-section h2{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:2px solid var(--border-color)}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.detail-item{display:flex;flex-direction:column;gap:.5rem}.detail-item.full-width{grid-column:1 / -1}.detail-item label{font-size:.813rem;font-weight:500;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.025em}.detail-item .value{font-size:1rem;color:var(--text-primary)}.project-card{background-color:var(--bg-secondary, #f8f9fa);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:1.5rem;margin-bottom:1.5rem}.project-card:last-child{margin-bottom:0}.project-card h3{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-color)}.text-muted{color:var(--text-muted, #6c757d);font-style:italic}@media(max-width:768px){.company-grid,.detail-grid{grid-template-columns:1fr}.onboard-card{padding:1.5rem}.project-card{padding:1rem}}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-bottom:3rem}.dashboard-card{background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:1.5rem;box-shadow:var(--shadow-sm)}.dashboard-card .card-icon{font-size:2.5rem;margin-bottom:1rem}.dashboard-card h3{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.dashboard-card p{color:var(--text-secondary);font-size:.875rem;margin-bottom:1rem}.profile-info{display:flex;flex-direction:column;gap:.75rem}.info-item{font-size:.875rem}.info-item strong{color:var(--text-secondary);font-weight:500}.card-actions{display:flex;flex-direction:column;gap:.75rem}.stats{display:flex;gap:1.5rem;margin:1rem 0}.stat-item{flex:1;text-align:center}.stat-value{font-size:2rem;font-weight:700;color:var(--primary-color);margin-bottom:.25rem}.stat-label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.quick-actions{margin-top:3rem}.quick-actions h2{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin-bottom:1.5rem}.action-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1rem}.action-card{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:1.5rem;background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--border-radius);text-decoration:none;color:var(--text-primary);transition:all .2s;cursor:pointer}.action-card:not(:disabled):hover{border-color:var(--primary-color);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.action-card:disabled{opacity:.5;cursor:not-allowed}.action-icon{font-size:2rem}.action-text{font-size:.875rem;font-weight:500;text-align:center}@media(max-width:768px){.dashboard-grid{grid-template-columns:1fr}.action-grid{grid-template-columns:repeat(2,1fr)}}.home-container{max-width:1280px;margin:0 auto;padding:2rem 1rem}.hero{text-align:center;padding:4rem 2rem;margin-bottom:4rem}.hero-title{font-size:3.5rem;font-weight:800;color:var(--text-primary);margin-bottom:1rem;background:linear-gradient(135deg,var(--primary-color) 0%,#8b5cf6 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-subtitle{font-size:1.25rem;color:var(--text-secondary);max-width:600px;margin:0 auto 2.5rem}.hero-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-top:4rem}.feature-card{background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:2rem;text-align:center;transition:all .3s}.feature-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px);border-color:var(--primary-color)}.feature-icon{font-size:3rem;margin-bottom:1rem}.feature-card h3{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin-bottom:.75rem}.feature-card p{color:var(--text-secondary);font-size:.938rem;line-height:1.6}@media(max-width:768px){.hero{padding:2rem 1rem}.hero-title{font-size:2.5rem}.hero-subtitle{font-size:1rem}.features{grid-template-columns:1fr}}.pillar-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.pillar-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:1.5rem;transition:all .2s;display:flex;flex-direction:column;height:100%}.pillar-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.pillar-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;gap:1rem}.pillar-card-header h3{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin:0;flex:1}.pillar-card-body{flex:1;display:flex;flex-direction:column;gap:1rem}.pillar-description{color:var(--text-secondary);line-height:1.6;margin:0}.pillar-field{display:flex;flex-direction:column;gap:.5rem}.field-label{font-weight:600;font-size:.875rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.field-value{color:var(--text-primary)}.tag{display:inline-flex;align-items:center;padding:.25rem .75rem;background-color:var(--primary-color);color:#fff;border-radius:1rem;font-size:.875rem;font-weight:500}.tag-removable{padding-right:.5rem;gap:.5rem}.tag-remove:hover{background-color:#fff3}.card-footer{display:flex;justify-content:space-between;align-items:center;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color)}.date{font-size:.875rem;color:var(--text-muted)}.link-text{color:var(--primary-color);text-decoration:none;font-weight:500;font-size:.875rem}.link-text:hover{text-decoration:underline}.form-page{max-width:800px;margin:0 auto}.form-header{margin-bottom:2rem}.form-header h1{margin-bottom:.5rem}.form-content{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:2rem}.form-section h2{font-size:1.25rem;font-weight:600;margin-bottom:1rem;color:var(--text-primary)}.form-label{display:block;font-weight:500;margin-bottom:.5rem;color:var(--text-primary)}.form-label.required:after{content:" *";color:var(--danger-color)}.form-input,.form-textarea{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:var(--border-radius);font-size:1rem;font-family:inherit;transition:border-color .2s}.form-input:focus,.form-textarea:focus{outline:none;border-color:var(--primary-color)}.form-textarea{resize:vertical;min-height:100px}.form-help{margin-top:.25rem;font-size:.875rem;color:var(--text-muted)}.topic-input-group{display:flex;gap:.5rem}.topic-input-group .form-input{flex:1}.form-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:2rem;padding-top:2rem;border-top:1px solid var(--border-color)}.alert{padding:1rem;border-radius:var(--border-radius);margin-bottom:1.5rem}.alert-error{background-color:#fee;border:1px solid #fcc;color:#c33}.alert p{margin:0}.detail-page{max-width:900px;margin:0 auto}.detail-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border-color)}.detail-header h1{margin-bottom:.5rem}.detail-actions{display:flex;gap:.75rem}.detail-content{display:flex;flex-direction:column;gap:2rem}.detail-section{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:1.5rem}.detail-section h2{font-size:1.125rem;font-weight:600;margin-bottom:1rem;color:var(--text-primary)}.detail-text{color:var(--text-secondary);line-height:1.7;margin:0}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.info-item{display:flex;flex-direction:column;gap:.25rem}.info-label{font-size:.875rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.info-value{color:var(--text-primary);font-family:Courier New,monospace;font-size:.875rem}@media(max-width:768px){.pillar-grid{grid-template-columns:1fr}.detail-header{flex-direction:column;gap:1rem}.detail-actions{width:100%}.detail-actions .btn{flex:1}.form-actions{flex-direction:column}.form-actions .btn{width:100%}.info-grid{grid-template-columns:1fr}}.suggestion-modal{max-width:1200px;width:95vw;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.suggestion-modal .modal-body{overflow-y:auto;flex:1;padding:1.5rem}.summary-section{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:1.5rem;border-radius:8px;margin-bottom:2rem}.summary-section h3{margin:0 0 1rem;font-size:1.25rem}.summary-section h4{margin:1.5rem 0 .5rem;font-size:1rem}.summary-section p{margin:0;line-height:1.6;font-size:.95rem}.recommendations-list{margin:.5rem 0 0 1.5rem;padding:0}.recommendations-list li{margin-bottom:.5rem;line-height:1.5}.suggestions-section{margin-bottom:2rem}.suggestions-section h3{margin:0 0 1rem;color:#333;font-size:1.25rem}.suggestion-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1rem}.suggestion-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1.25rem;transition:all .2s ease}.suggestion-card:hover{box-shadow:0 4px 12px #0000001a;border-color:#667eea}.suggestion-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem}.suggestion-header h4{margin:0;color:#333;font-size:1.1rem;flex:1}.suggestion-description{color:#666;font-size:.9rem;line-height:1.5;margin-bottom:1rem}.suggestion-field{margin-bottom:.75rem}.suggestion-field:last-child{margin-bottom:0}.suggestion-field strong{display:block;font-size:.85rem;color:#555;margin-bottom:.5rem}.tag{display:inline-block;padding:.25rem .75rem;background:#f0f0f0;border-radius:4px;font-size:.85rem;color:#555}.tag-topic{background:#e3f2fd;color:#1976d2}.tag-keyword{background:#f3e5f5;color:#7b1fa2}.tag-format{background:#e8f5e9;color:#388e3c}.badge{padding:.25rem .75rem;border-radius:4px;font-size:.85rem;font-weight:500}.badge-success{background:#4caf50;color:#fff}.selected-section{background:#f8f9fa;padding:1.5rem;border-radius:8px;margin-top:2rem}.selected-section h3{margin:0 0 1rem;color:#333;font-size:1.25rem}.selected-cards{display:flex;flex-direction:column;gap:1rem}.selected-card{background:#fff;border:2px solid #667eea;border-radius:8px;padding:1rem}.selected-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem}.selected-header h4{margin:0;color:#333;font-size:1.1rem;flex:1}.selected-actions{display:flex;gap:.5rem}.selected-description{color:#666;font-size:.9rem;line-height:1.5;margin-bottom:.75rem}.selected-topics{display:flex;flex-wrap:wrap;gap:.5rem}.edit-modal{max-width:600px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.edit-modal .modal-body{overflow-y:auto;flex:1;padding:1.5rem}.form-group label{display:block;font-weight:500;margin-bottom:.5rem;color:#333}.form-control{width:100%;padding:.5rem;border:1px solid #ddd;border-radius:4px;font-size:.95rem}.form-control:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.array-input{display:flex;gap:.5rem;margin-bottom:.5rem}.array-input .form-control{flex:1}.array-input .btn{flex-shrink:0}.suggest-pillars-btn{display:inline-flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:6px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s ease}.suggest-pillars-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.suggest-pillars-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.suggest-pillars-btn .icon{font-size:1.2rem}.btn-loading{display:inline-flex;align-items:center;gap:.5rem}.btn-loading .spinner-small{width:1rem;height:1rem;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@media(max-width:768px){.suggestion-modal{width:100vw;max-width:100vw;height:100vh;max-height:100vh;border-radius:0}.suggestion-cards{grid-template-columns:1fr}.suggestion-header,.selected-header{flex-direction:column;gap:.75rem}.selected-actions{width:100%;justify-content:flex-end}}.platform-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.platform-card{background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:1.5rem;transition:all .2s;display:flex;flex-direction:column}.platform-card:hover{border-color:var(--primary-color);box-shadow:var(--shadow-md);transform:translateY(-2px)}.platform-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color)}.platform-card-header>div{display:flex;flex-direction:column;gap:.5rem}.platform-card-header h3{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin:0}.platform-badge{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500;text-transform:capitalize}.platform-badge.platform-social{background-color:#3b82f6;color:#fff}.platform-badge.platform-blog{background-color:#8b5cf6;color:#fff}.platform-badge.platform-website{background-color:#10b981;color:#fff}.platform-badge.platform-email{background-color:#f59e0b;color:#fff}.platform-badge.platform-other{background-color:#6b7280;color:#fff}.platform-card-body{flex:1;display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.platform-description{font-size:.875rem;color:var(--text-secondary);line-height:1.5;margin:0}.platform-meta{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;margin-top:.5rem}.status-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500}.status-badge.active{background-color:#d1fae5;color:#065f46}.status-badge.inactive{background-color:#fee2e2;color:#991b1b}.platform-project{font-size:.75rem;color:var(--text-muted);font-family:Monaco,Courier New,monospace}.form-help{display:block;margin-top:.375rem;font-size:.813rem;color:var(--text-muted)}textarea{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:var(--border-radius);font-family:inherit;font-size:1rem;resize:vertical;transition:border-color .2s}textarea:focus{outline:none;border-color:var(--primary-color)}@media(max-width:768px){.platform-grid{grid-template-columns:1fr}.platform-card{padding:1rem}.platform-card-header{flex-direction:column;gap:.75rem;align-items:flex-start}.platform-meta{flex-direction:column;align-items:flex-start;gap:.5rem}}.tabs{display:flex;gap:0;border-bottom:2px solid #e5e7eb;margin-bottom:2rem}.tab{padding:.75rem 1.5rem;background:none;border:none;border-bottom:3px solid transparent;color:#6b7280;font-weight:500;cursor:pointer;transition:all .2s;position:relative;bottom:-2px}.tab:hover{color:#374151;background-color:#f9fafb}.tab.active{color:#2563eb;border-bottom-color:#2563eb;background-color:#eff6ff}.tab-content{padding:1rem 0}.manager-container{width:100%}.manager-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.manager-header h2{margin:0;font-size:1.5rem;color:#111827}.filter-select{padding:.5rem 1rem;border:1px solid #d1d5db;border-radius:6px;background:#fff;font-size:.875rem;cursor:pointer}.table-container{overflow-x:auto;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;margin-bottom:1.5rem}table{width:100%;border-collapse:collapse}thead{background-color:#f9fafb;border-bottom:2px solid #e5e7eb}th{padding:.75rem 1rem;text-align:left;font-weight:600;font-size:.875rem;color:#374151;text-transform:uppercase;letter-spacing:.05em}tbody tr{border-bottom:1px solid #e5e7eb;transition:background-color .15s}tbody tr:hover{background-color:#f9fafb}tbody tr:last-child{border-bottom:none}td{padding:1rem;color:#111827}td code{background-color:#f3f4f6;padding:.125rem .375rem;border-radius:4px;font-size:.875rem;font-family:Courier New,monospace}td .tag{display:inline-block;padding:.25rem .75rem;background-color:#dbeafe;color:#1e40af;border-radius:12px;font-size:.75rem;font-weight:600}.pagination{display:flex;justify-content:space-between;align-items:center;padding:1rem 0;flex-wrap:wrap;gap:1rem}.pagination-info{color:#6b7280;font-size:.875rem}.pagination-controls{display:flex;gap:1rem;align-items:center}.page-info{color:#374151;font-size:.875rem;font-weight:500}.items-per-page label{display:flex;align-items:center;gap:.5rem;color:#6b7280;font-size:.875rem}.items-per-page select{padding:.375rem .75rem;border:1px solid #d1d5db;border-radius:6px;background:#fff;cursor:pointer}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:600px;width:100%;max-height:90vh;overflow-y:auto}.modal-large{max-width:800px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e5e7eb}.modal-header h3{margin:0;font-size:1.25rem;color:#111827}.modal-close{background:none;border:none;font-size:1.5rem;color:#9ca3af;cursor:pointer;padding:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.modal-close:hover{background-color:#f3f4f6;color:#374151}.modal form{padding:1.5rem}.modal hr{margin:1.5rem 0;border:none;border-top:1px solid #e5e7eb}.modal h4{margin:0 0 1rem;font-size:1rem;color:#374151;font-weight:600}.form-group{margin-bottom:1.25rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:#374151;font-size:.875rem}.form-group input[type=text],.form-group input[type=number],.form-group select,.form-group textarea{width:100%;padding:.625rem .875rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;transition:all .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.form-group textarea{resize:vertical;min-height:80px;font-family:Courier New,monospace;font-size:.8125rem}.required{color:#dc2626;margin-left:.25rem}.field-error{display:block;margin-top:.375rem;color:#dc2626;font-size:.75rem}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.checkbox-label input[type=checkbox]{width:auto;cursor:pointer}.property-row{display:flex;gap:.5rem;margin-bottom:.75rem;align-items:center}.property-name{flex:2;padding:.5rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem}.property-type{flex:1;padding:.5rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem}.property-required{display:flex;align-items:center;gap:.25rem;font-size:.75rem;white-space:nowrap;color:#6b7280}.property-required input[type=checkbox]{margin:0}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}.empty-state{padding:3rem 1rem;text-align:center;color:#6b7280;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a}.empty-state p{margin:0;font-size:.875rem}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1rem;gap:1rem}.spinner{border:3px solid #e5e7eb;border-top-color:#2563eb;border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-message{padding:1rem;background-color:#fef2f2;border:1px solid #fecaca;border-radius:6px;color:#dc2626;margin-bottom:1rem}.btn{padding:.625rem 1.25rem;border:none;border-radius:6px;font-weight:500;font-size:.875rem;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background-color:#2563eb;color:#fff}.btn-primary:hover:not(:disabled){background-color:#1d4ed8}.btn-secondary{background-color:#f3f4f6;color:#374151}.btn-secondary:hover:not(:disabled){background-color:#e5e7eb}.btn-danger{background-color:#dc2626;color:#fff}.btn-danger:hover:not(:disabled){background-color:#b91c1c}.btn-small{padding:.375rem .75rem;font-size:.8125rem}@media(max-width:768px){.manager-header{flex-direction:column;align-items:flex-start;gap:1rem}.header-actions{width:100%;flex-direction:column}.filter-select{width:100%}.pagination{flex-direction:column;align-items:stretch}.pagination-controls{justify-content:center}.table-container{font-size:.8125rem}th,td{padding:.5rem}.action-buttons{flex-direction:column}.modal{max-width:100%;margin:0;border-radius:0;max-height:100vh}.property-row{flex-direction:column}.property-name,.property-type{width:100%}}.project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.project-card{background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:1.5rem;transition:all .2s;display:flex;flex-direction:column}.project-card:hover{border-color:var(--primary-color);box-shadow:var(--shadow-md);transform:translateY(-2px)}.project-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color)}.project-card-header h3{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin:0}.project-card-body{flex:1;display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.project-field{display:flex;flex-direction:column;gap:.25rem}.field-label{font-size:.75rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.025em}.field-value{font-size:.875rem;color:var(--text-primary);word-break:break-word}.detail-field{display:flex;flex-direction:column;gap:.5rem}.detail-field.full-width{grid-column:1 / -1}.form-card{background-color:var(--bg-primary);border-radius:var(--border-radius);box-shadow:var(--shadow-md);padding:2rem}.tag-input-container{display:flex;flex-direction:column;gap:.75rem}.tag-list{display:flex;flex-wrap:wrap;gap:.5rem}.tag{display:inline-flex;align-items:center;gap:.5rem;padding:.375rem .75rem;background-color:var(--primary-color);color:#fff;border-radius:9999px;font-size:.813rem;font-weight:500}.tag-remove{background:none;border:none;color:#fff;font-size:1.25rem;line-height:1;cursor:pointer;padding:0;width:1.25rem;height:1.25rem;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s}.tag-remove:hover{background-color:#0000001a}.tag-input-wrapper{display:flex;gap:.5rem}.tag-input-wrapper input{flex:1}.btn-sm{padding:.375rem .75rem;font-size:.813rem}.btn-danger{background-color:#dc3545;color:#fff;border:1px solid #dc3545}.btn-danger:hover{background-color:#bb2d3b;border-color:#bb2d3b}.button-group{display:flex;gap:.75rem}.form-actions{display:flex;gap:1rem;padding-top:2rem}.error-banner{background-color:#f8d7da;border:1px solid #f5c2c7;border-radius:var(--border-radius);padding:1rem;margin-bottom:1.5rem}.error-banner p{color:#842029;margin:0}.required{color:#dc3545}@media(max-width:768px){.project-grid{grid-template-columns:1fr}.form-card{padding:1.5rem}.project-card{padding:1rem}.button-group,.form-actions,.tag-input-wrapper{flex-direction:column}}.quick-actions-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem;margin-bottom:2rem}.action-card{display:flex;align-items:center;gap:1rem;padding:1.5rem;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);border-radius:12px;text-decoration:none;color:#333;transition:all .3s;border:2px solid transparent}.action-card:hover{transform:translateY(-4px);box-shadow:0 8px 16px #0000001a;border-color:#667eea}.action-icon{font-size:2rem;flex-shrink:0}.action-card h3{margin:0 0 .25rem;font-size:1.1rem;color:#333}.action-card p{margin:0;font-size:.875rem;color:#666}.prompt-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem;margin-top:1.5rem}.prompt-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:1.5rem;transition:all .2s;display:flex;flex-direction:column}.prompt-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.prompt-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;gap:1rem}.prompt-card-header h3{margin:0;font-size:1.25rem;color:#1f2937;flex:1}.prompt-type-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;white-space:nowrap}.prompt-type-badge.pillar{background:#dbeafe;color:#1e40af}.prompt-type-badge.idea{background:#fce7f3;color:#be185d}.prompt-type-badge.platform{background:#e0e7ff;color:#4338ca}.prompt-type-badge.content{background:#d1fae5;color:#065f46}.prompt-type-badge.chat{background:#ddd6fe;color:#5b21b6}.prompt-type-badge.proofread{background:#fed7aa;color:#92400e}.prompt-type-badge.rag_markdown{background:#fef3c7;color:#78350f}.prompt-card-body{flex:1;display:flex;flex-direction:column;gap:.75rem}.prompt-field{display:flex;flex-direction:column;gap:.25rem}.prompt-text{font-family:Courier New,monospace;font-size:.875rem;line-height:1.5;background:#f9fafb;padding:.5rem;border-radius:4px;word-break:break-word}.card-footer{display:flex;justify-content:flex-start;align-items:center;gap:.75rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #e5e7eb}.card-footer .link-text{margin-left:auto}.form-section{margin-bottom:2rem}.form-section h2{font-size:1.25rem;margin-bottom:1rem;color:#1f2937}.section-description{color:#6b7280;margin-bottom:1rem;font-size:.875rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:#374151}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:6px;font-size:1rem;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-group textarea{resize:vertical;font-family:Courier New,monospace}.form-hint{display:block;margin-top:.5rem;color:#6b7280;font-size:.875rem}.detected-placeholders{margin-top:.75rem;padding:.75rem;background:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;font-size:.875rem}.detected-placeholders strong{color:#1e40af;margin-right:.5rem}.placeholder-badge{display:inline-block;margin:.25rem;padding:.25rem .5rem;background:#dbeafe;color:#1e40af;border-radius:4px;font-family:Courier New,monospace;font-size:.8125rem}.mapping-list{margin-bottom:1rem;display:flex;flex-direction:column;gap:.5rem}.mapping-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px}.mapping-key{font-weight:600;color:#1f2937;font-family:Courier New,monospace;min-width:120px}.mapping-separator{color:#9ca3af}.mapping-value{flex:1;color:#6b7280;font-family:Courier New,monospace}.mapping-value-input{flex:1;padding:.5rem;border:1px solid #d1d5db;border-radius:4px;font-size:.875rem}.mapping-value-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.btn-remove{background:transparent;border:none;color:#ef4444;font-size:1.5rem;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .2s}.btn-remove:hover{background:#fee2e2}.mapping-input-group{display:flex;gap:.5rem;align-items:stretch}.mapping-input{flex:1;padding:.75rem;border:1px solid #d1d5db;border-radius:6px;font-size:1rem}.mapping-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.manual-mapping{margin-top:1rem;padding:1rem;border:1px solid #e5e7eb;border-radius:6px;background:#f9fafb}.manual-mapping summary{cursor:pointer;font-weight:500;color:#374151;-webkit-user-select:none;user-select:none}.manual-mapping summary:hover{color:#1f2937}.manual-mapping .mapping-input-group{margin-top:1rem}.detail-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:2rem;margin-top:1.5rem}.detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid #e5e7eb}.detail-header h2{margin:0;font-size:1.75rem;color:#1f2937}.detail-section{margin-bottom:2rem}.detail-section h3{font-size:1.125rem;margin-bottom:1rem;color:#374151;font-weight:600}.prompt-content{background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;padding:1rem}.prompt-content pre{margin:0;font-family:Courier New,monospace;font-size:.875rem;line-height:1.6;white-space:pre-wrap;word-break:break-word;color:#1f2937}.mapping-display{background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;padding:1rem;display:flex;flex-direction:column;gap:.75rem}.mapping-row{display:flex;align-items:center;gap:1rem;padding:.5rem;background:#fff;border-radius:4px}.mapping-key-display{font-weight:600;color:#1f2937;font-family:Courier New,monospace;min-width:150px}.mapping-value-display{color:#6b7280;font-family:Courier New,monospace}.metadata-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.metadata-item{display:flex;flex-direction:column;gap:.25rem}.metadata-label{font-size:.875rem;color:#6b7280;font-weight:500}.metadata-value{color:#1f2937;font-size:.875rem}.metadata-value.code{font-family:Courier New,monospace;font-size:.75rem;background:#f9fafb;padding:.25rem .5rem;border-radius:4px}.empty-message{color:#9ca3af;font-style:italic}.header-actions{display:flex;gap:.75rem;align-items:center}.project-filter{padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;background:#fff;cursor:pointer}.project-filter:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.dialog-overlay{position:fixed;inset:0;background:#00000080;z-index:50;animation:fadeIn .2s ease-in-out}.dialog-container{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;z-index:51;max-width:600px;width:90%;max-height:90vh;display:flex;flex-direction:column;animation:slideIn .2s ease-out}@keyframes slideIn{0%{opacity:0;transform:translate(-50%,-48%)}to{opacity:1;transform:translate(-50%,-50%)}}.dialog-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e5e7eb}.dialog-header h2{font-size:1.25rem;font-weight:600;color:#1f2937;margin:0}.dialog-close{background:transparent;border:none;color:#6b7280;font-size:1.5rem;cursor:pointer;padding:.25rem;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.dialog-close:hover{background:#f3f4f6;color:#1f2937}.dialog-content{flex:1;overflow-y:auto;padding:1.5rem}.dialog-description{color:#6b7280;margin-bottom:1.5rem;font-size:.875rem}.dialog-input{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:6px;font-size:1rem;transition:border-color .2s}.dialog-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.dialog-footer{display:flex;gap:.75rem;padding:1.5rem;border-top:1px solid #e5e7eb;justify-content:flex-end}.execute-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:2rem;margin-top:1.5rem}.execute-card h2{font-size:1.5rem;margin-bottom:.5rem;color:#1f2937}.execute-form{margin-top:1.5rem}.execute-form .form-group{margin-bottom:1.5rem}.field-description{font-size:.875rem;color:#6b7280;font-weight:400}.execute-actions{display:flex;gap:.75rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}.execute-result{margin-top:2rem;padding-top:2rem;border-top:2px solid #e5e7eb}.result-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.result-header h3{font-size:1.125rem;color:#374151;margin:0}.result-content{background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;padding:1.5rem}.result-content pre{margin:0;font-family:Courier New,monospace;font-size:.875rem;line-height:1.6;white-space:pre-wrap;word-break:break-word;color:#1f2937}@media(max-width:768px){.prompt-grid{grid-template-columns:1fr}.detail-header{flex-direction:column;align-items:flex-start;gap:1rem}.mapping-input-group{flex-direction:column}.header-actions{flex-wrap:wrap;width:100%}.project-filter{width:100%}.execute-actions{flex-direction:column}.result-header{flex-direction:column;align-items:flex-start;gap:.75rem}.dialog-container{width:95%;max-height:95vh}.dialog-footer{flex-direction:column}.dialog-footer button{width:100%}.card-footer{flex-wrap:wrap}.card-footer .link-text{margin-left:0;width:100%}}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:#fff;border-radius:8px;box-shadow:0 10px 25px #0003;max-width:100%;max-height:100%;overflow:hidden;position:relative;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.markdown-review-modal{max-width:1000px;width:90vw;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.markdown-review-modal .modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:24px 24px 20px;border-bottom:1px solid #e0e0e0;background:#fff;border-radius:8px 8px 0 0}.markdown-review-modal .modal-header h2{margin:0 0 8px;font-size:24px;color:#333}.markdown-review-modal .text-muted{color:#666;font-size:14px;margin:0}.markdown-review-modal .text-small{font-size:12px;margin-top:4px}.markdown-review-modal .close-button{background:none;border:none;font-size:24px;color:#666;cursor:pointer;padding:4px;width:32px;height:32px;line-height:24px;text-align:center;border-radius:4px;transition:all .2s;display:flex;align-items:center;justify-content:center}.markdown-review-modal .close-button:hover{color:#333;background:#f5f5f5}.markdown-review-modal .close-button:disabled{opacity:.5;cursor:not-allowed}.markdown-review-modal .modal-body{flex:1;display:flex;flex-direction:column;overflow:hidden;padding:0 24px 20px}.tabs{display:flex;gap:10px;margin-bottom:15px;border-bottom:2px solid #e0e0e0}.tabs button{padding:10px 20px;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;font-weight:500;color:#666;font-size:14px;transition:all .2s;margin-bottom:-2px}.tabs button:hover:not(:disabled){color:#007bff;background:#f0f7ff}.tabs button.active{color:#007bff;border-bottom-color:#007bff}.tabs button:disabled{opacity:.5;cursor:not-allowed}.content-area{flex:1;overflow:hidden;display:flex;flex-direction:column}.markdown-preview{flex:1;overflow-y:auto;padding:20px;border:1px solid #ddd;border-radius:6px;background:#fff;font-size:15px;line-height:1.7}.markdown-preview h1{font-size:28px;margin:0 0 16px;padding-bottom:8px;border-bottom:2px solid #e0e0e0;color:#333}.markdown-preview h2{font-size:24px;margin:24px 0 12px;color:#444}.markdown-preview h3{font-size:20px;margin:20px 0 10px;color:#555}.markdown-preview p{margin:12px 0;color:#333}.markdown-preview ul,.markdown-preview ol{margin:12px 0;padding-left:24px}.markdown-preview li{margin:6px 0}.markdown-preview code{background:#f5f5f5;padding:2px 6px;border-radius:3px;font-family:Monaco,Menlo,monospace;font-size:13px;color:#d63384}.markdown-preview pre{background:#f5f5f5;padding:12px;border-radius:6px;overflow-x:auto;margin:12px 0}.markdown-preview pre code{background:none;padding:0;color:#333}.markdown-preview table{border-collapse:collapse;width:100%;margin:16px 0}.markdown-preview table th,.markdown-preview table td{border:1px solid #ddd;padding:8px 12px;text-align:left}.markdown-preview table th{background:#f5f5f5;font-weight:600}.markdown-preview blockquote{border-left:4px solid #007bff;padding-left:16px;margin:16px 0;color:#666;font-style:italic}.empty-markdown{display:flex;align-items:center;justify-content:center;height:200px;color:#999;font-style:italic}.markdown-editor{flex:1;padding:16px;border:1px solid #ddd;border-radius:6px;font-family:Monaco,Menlo,Courier New,monospace;font-size:14px;line-height:1.6;resize:none;background:#f9f9f9;color:#333;transition:border-color .2s,background-color .2s}.markdown-editor:focus{outline:none;border-color:#007bff;background:#fff}.markdown-editor:disabled{opacity:.6;cursor:not-allowed;background:#f0f0f0}.error-message{padding:12px;margin:12px 0 0;background:#f8d7da;border:1px solid #f5c2c7;border-radius:4px;color:#842029;font-size:14px}.info-message{padding:12px;margin:12px 0 0;background:#d1ecf1;border:1px solid #bee5eb;border-radius:4px;color:#0c5460;font-size:13px}.info-message strong{font-weight:600}.markdown-review-modal .modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px 24px;border-top:1px solid #e0e0e0;background:#fff;border-radius:0 0 8px 8px}.btn{padding:10px 20px;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:6px}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:#6c757d;color:#fff}.btn-secondary:hover:not(:disabled){background:#5a6268}.btn-primary{background:#007bff;color:#fff}.btn-primary:hover:not(:disabled){background:#0056b3;transform:translateY(-1px);box-shadow:0 2px 8px #007bff4d}.markdown-preview::-webkit-scrollbar,.markdown-editor::-webkit-scrollbar{width:8px}.markdown-preview::-webkit-scrollbar-track,.markdown-editor::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.markdown-preview::-webkit-scrollbar-thumb,.markdown-editor::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}.markdown-preview::-webkit-scrollbar-thumb:hover,.markdown-editor::-webkit-scrollbar-thumb:hover{background:#a8a8a8}@media(max-width:768px){.modal-overlay{padding:10px}.markdown-review-modal{width:100%;max-height:95vh}.markdown-review-modal .modal-header{padding:20px 20px 16px}.markdown-review-modal .modal-header h2{font-size:20px}.markdown-review-modal .modal-body{padding:0 20px 16px}.markdown-review-modal .modal-footer{padding:16px 20px 20px}.tabs button{padding:8px 16px;font-size:13px}.markdown-preview{padding:16px;font-size:14px}.markdown-editor{font-size:13px}}.user-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;margin-top:2rem}.user-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1.5rem;transition:all .2s ease;cursor:pointer;text-decoration:none;color:inherit;display:flex;flex-direction:column}.user-card:hover{border-color:#3b82f6;box-shadow:0 4px 6px #3b82f61a;transform:translateY(-2px)}.user-card h3{margin:0 0 .5rem;font-size:1.25rem;color:#1e293b}.user-email{color:#64748b;font-size:.875rem;margin-bottom:1rem}.user-details{display:flex;flex-direction:column;gap:.5rem;margin-top:auto}.user-detail-row{display:flex;justify-content:space-between;font-size:.875rem}.user-detail-label{color:#64748b;font-weight:500}.user-detail-value{color:#1e293b}.role-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.role-sysadmin{background-color:#ef4444;color:#fff}.role-admin{background-color:#f59e0b;color:#fff}.role-user{background-color:#10b981;color:#fff}.table-container{background:#fff;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden;margin-top:2rem}.data-table{width:100%;border-collapse:collapse}.data-table thead{background-color:#f8fafc;border-bottom:2px solid #e2e8f0}.data-table th{padding:1rem;text-align:left;font-weight:600;color:#475569;font-size:.875rem;text-transform:uppercase;letter-spacing:.5px}.data-table tbody tr{border-bottom:1px solid #e2e8f0;transition:background-color .15s ease}.data-table tbody tr:hover{background-color:#f8fafc}.data-table tbody tr:last-child{border-bottom:none}.data-table td{padding:1rem;color:#1e293b}.action-buttons{display:flex;gap:.5rem}.header-actions{display:flex;gap:1rem;align-items:center}.company-filter-select{padding:.5rem 1rem;border:1px solid #e2e8f0;border-radius:6px;background:#fff;font-size:.875rem;color:#1e293b;cursor:pointer;min-width:200px}.company-filter-select:hover{border-color:#cbd5e1}.company-filter-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:2rem;max-width:600px}.form-group{margin-bottom:1.5rem}.form-label{display:block;margin-bottom:.5rem;font-weight:500;color:#1e293b;font-size:.875rem}.form-label.required:after{content:" *";color:#ef4444}.required-star{color:#ef4444}.form-input{width:100%;padding:.625rem 1rem;border:1px solid #e2e8f0;border-radius:6px;font-size:.875rem;color:#1e293b;transition:all .15s ease}.form-input:hover{border-color:#cbd5e1}.form-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-input:disabled{background-color:#f8fafc;cursor:not-allowed;opacity:.6}.form-help{margin-top:.375rem;font-size:.75rem;color:#64748b}.form-actions{display:flex;gap:1rem;margin-top:2rem;justify-content:flex-end}.btn-sm{padding:.375rem .75rem;font-size:.75rem}.btn-danger{background-color:#ef4444;color:#fff;border:1px solid #ef4444}.btn-danger:hover:not(:disabled){background-color:#dc2626;border-color:#dc2626}@media(max-width:768px){.header-actions{flex-direction:column;align-items:stretch;width:100%}.company-filter-select{width:100%}.table-container{overflow-x:auto}.data-table{min-width:800px}.form-card{padding:1.5rem}.form-actions{flex-direction:column-reverse}.form-actions button{width:100%}}
