:root{--color-primary:#683d94;--color-primary-light:#a48bbf;--color-primary-dark:#5a3280;--color-secondary:#9c3;--color-secondary-light:#b3d966;--color-secondary-dark:#85b82e;--color-gray-50:#f9fafb;--color-gray-100:#f3f4f6;--color-gray-200:#e5e7eb;--color-gray-300:#d1d5db;--color-gray-400:#9ca3af;--color-gray-500:#6b7280;--color-gray-600:#4b5563;--color-gray-700:#333;--color-gray-800:#2a2a2a;--color-gray-900:#1a1a1a;--color-text:var(--color-gray-900);--color-text-primary:var(--color-gray-900);--color-text-secondary:var(--color-gray-600);--color-text-light:var(--color-gray-600);--color-text-muted:var(--color-gray-500);--color-background:var(--color-gray-50);--color-background-card:#fff;--color-background-subtle:var(--color-gray-50);--color-background-input:#fff;--color-card-bg:#fff;--color-border:var(--color-gray-200);--color-border-light:var(--color-gray-100);--color-border-medium:var(--color-gray-300);--color-success:#9c3;--color-success-light:#b3d966;--color-success-dark:#85b82e;--color-warning:#f59e0b;--color-warning-light:#fbbf24;--color-warning-dark:#d97706;--color-error:#ef4444;--color-error-light:#f87171;--color-error-dark:#dc2626;--color-info-light:#a48bbf;--color-info-dark:#5a3280;--color-dermatology:#a48bbf;--color-neurology:#683d94;--color-cardiology:#ef4444;--color-pulmonology:#9c3;--color-gastroenterology:#f59e0b;--space-xs:0.25rem;--space-sm:0.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:4rem;--radius-sm:0.25rem;--radius-md:0.5rem;--radius-lg:0.75rem;--radius-xl:1rem;--radius-2xl:1.5rem;--radius-full:9999px;--border-radius-sm:var(--radius-sm);--border-radius-md:var(--radius-md);--border-radius-lg:var(--radius-lg);--border-radius-xl:var(--radius-xl);--border-radius-2xl:var(--radius-2xl);--shadow-xs:0 1px 2px #0000000d;--shadow-sm:0 1px 3px #0000001a,0 1px 2px #0000000f;--shadow-md:0 4px 6px #00000012,0 2px 4px #0000000f;--shadow-lg:0 10px 15px #0000001a,0 4px 6px #0000000d;--shadow-xl:0 20px 25px #0000001a,0 10px 10px #0000000a;--shadow-medium:var(--shadow-md);--font-heading:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto",sans-serif;--font-body:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto",sans-serif;--font-mono:"SFMono-Regular","Monaco","Consolas","Courier New",monospace;--font-family-primary:var(--font-body);--font-family-mono:var(--font-mono);--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--text-5xl:3rem;--leading-tight:1.25;--leading-normal:1.5;--leading-relaxed:1.625;--transition-fast:150ms ease;--transition-normal:250ms ease;--transition-medium:300ms ease;--transition-slow:350ms ease;--color-bg-secondary:var(--color-gray-100)}body{background-color:#f9fafb;color:#1a1a1a;color:var(--color-text);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-family:var(--font-body);font-size:1rem;font-size:var(--text-base);line-height:1.5;line-height:var(--leading-normal);margin:0}code{font-family:SFMono-Regular,Monaco,Consolas,Courier New,monospace;font-family:var(--font-mono)}h1{color:#1a1a1a;color:var(--color-text);font-size:var(--text-4xl);font-weight:700;line-height:1.25;line-height:var(--leading-tight);margin:0 0 1.5rem;margin:0 0 var(--space-lg) 0}h2{font-size:1.875rem;font-size:var(--text-3xl)}h2,h3{color:#1a1a1a;color:var(--color-text);font-weight:600;line-height:1.25;line-height:var(--leading-tight);margin:0 0 1rem;margin:0 0 var(--space-md) 0}h3{font-size:var(--text-2xl)}h4{font-size:var(--text-xl)}h4,h5{color:#1a1a1a;color:var(--color-text);font-weight:600;line-height:1.5;line-height:var(--leading-normal);margin:0 0 .5rem;margin:0 0 var(--space-sm) 0}h5{font-size:1.125rem;font-size:var(--text-lg)}h6{color:#1a1a1a;color:var(--color-text);font-size:var(--text-base);font-weight:600;line-height:1.5;line-height:var(--leading-normal);margin:0 0 .5rem;margin:0 0 var(--space-sm) 0}p{line-height:1.625;line-height:var(--leading-relaxed);margin:0 0 1rem;margin:0 0 var(--space-md) 0}a{color:#683d94;color:var(--color-primary);text-decoration:none;transition:color .15s ease;transition:color var(--transition-fast)}a:hover{color:#5a3280;color:var(--color-primary-dark);text-decoration:underline}:root{--color-primary-purple:#683d94;--color-primary-purple-dark:#552f7a;--color-primary-purple-light:#7d4caf;--color-lite-purple:#a48bbf;--color-lite-purple-bg:#f3e5f5;--color-green-accent:#9c3;--color-green-accent-dark:#8b2;--color-green-accent-light:#e8f5e9;--color-dark-gray:#333;--color-medium-gray:#666;--color-light-gray:#e0e0e0;--color-background:#f5f5f5;--color-background-light:#fafafa;--color-background-card:#f8f8f8;--color-white:#fff;--color-success:#4caf50;--color-success-bg:#e8f5e9;--color-error:#d32f2f;--color-error-bg:#ffebee;--color-warning:#ffa000;--color-warning-bg:#fff9e6;--color-info:#683d94;--color-info-bg:#f3e5f5;--font-family-primary:"Inter","Roboto",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-size-h1:48px;--font-size-h2:36px;--font-size-h3:24px;--font-size-h4:18px;--font-size-body-large:16px;--font-size-body:14px;--font-size-body-small:12px;--font-weight-regular:400;--font-weight-medium:500;--font-weight-bold:700;--line-height-heading:1.2;--line-height-body:1.6;--spacing-xs:8px;--spacing-sm:16px;--spacing-md:24px;--spacing-lg:32px;--spacing-xl:48px;--spacing-2xl:64px;--spacing-3xl:80px;--spacing-4xl:96px;--sidebar-width:160px;--header-height:80px;--max-content-width:1200px;--border-radius-sm:0;--border-radius-md:0;--border-radius-lg:0;--border-radius-xl:0;--border-radius-pill:0;--border-width:1px;--border-width-thick:2px;--border-width-accent:4px;--shadow-sm:0 2px 4px #00000014;--shadow-md:0 2px 8px #00000014;--shadow-lg:0 4px 16px #0000001f;--shadow-xl:0 8px 24px #00000029;--transition-fast:0.2s ease;--transition-base:0.3s ease;--transition-slow:0.4s ease;--z-index-dropdown:1000;--z-index-sticky:1020;--z-index-fixed:1030;--z-index-modal-backdrop:1040;--z-index-modal:1050;--z-index-popover:1060;--z-index-tooltip:1070;--breakpoint-mobile:768px;--breakpoint-tablet:1024px}@media (max-width:768px){:root{--font-size-h1:36px;--font-size-h2:28px;--font-size-h3:20px;--font-size-h4:16px;--spacing-xl:32px;--spacing-2xl:48px}}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;background-color:var(--color-background);color:#333;color:var(--color-dark-gray);font-family:Inter,Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-family-primary);font-size:14px;font-size:var(--font-size-body);line-height:1.6;line-height:var(--line-height-body)}.h1,h1{font-size:48px;font-size:var(--font-size-h1)}.h1,.h2,h1,h2{color:#333;color:var(--color-dark-gray);font-weight:700;font-weight:var(--font-weight-bold);line-height:1.2;line-height:var(--line-height-heading);margin-bottom:24px;margin-bottom:var(--spacing-md)}.h2,h2{font-size:36px;font-size:var(--font-size-h2)}.h3,h3{font-size:24px;font-size:var(--font-size-h3)}.h3,.h4,h3,h4{color:#333;color:var(--color-dark-gray);font-weight:700;font-weight:var(--font-weight-bold);line-height:1.2;line-height:var(--line-height-heading);margin-bottom:16px;margin-bottom:var(--spacing-sm)}.h4,h4{font-size:18px;font-size:var(--font-size-h4)}.text-large{color:#333;color:var(--color-dark-gray);font-size:16px;font-size:var(--font-size-body-large)}.text-body{font-size:14px;font-size:var(--font-size-body)}.text-body,.text-small{color:#666;color:var(--color-medium-gray)}.text-small{font-size:12px;font-size:var(--font-size-body-small)}.text-primary{color:#683d94;color:var(--color-primary-purple)}.text-accent{color:#9c3;color:var(--color-green-accent)}.text-dark{color:#333;color:var(--color-dark-gray)}.text-medium{color:#666;color:var(--color-medium-gray)}.text-light{color:#e0e0e0;color:var(--color-light-gray)}.bg-primary{background-color:#683d94;background-color:var(--color-primary-purple)}.bg-lite-purple{background-color:#a48bbf;background-color:var(--color-lite-purple)}.bg-accent{background-color:#9c3;background-color:var(--color-green-accent)}.bg-background{background-color:#f5f5f5;background-color:var(--color-background)}.bg-white{background-color:#fff;background-color:var(--color-white)}.font-bold{font-weight:700;font-weight:var(--font-weight-bold)}.font-medium{font-weight:500;font-weight:var(--font-weight-medium)}.font-regular{font-weight:400;font-weight:var(--font-weight-regular)}.mt-xs{margin-top:8px;margin-top:var(--spacing-xs)}.mt-sm{margin-top:16px;margin-top:var(--spacing-sm)}.mt-md{margin-top:24px;margin-top:var(--spacing-md)}.mt-lg{margin-top:32px;margin-top:var(--spacing-lg)}.mt-xl{margin-top:48px;margin-top:var(--spacing-xl)}.mb-xs{margin-bottom:8px;margin-bottom:var(--spacing-xs)}.mb-sm{margin-bottom:16px;margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:24px;margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:32px;margin-bottom:var(--spacing-lg)}.mb-xl{margin-bottom:48px;margin-bottom:var(--spacing-xl)}.p-xs{padding:8px;padding:var(--spacing-xs)}.p-sm{padding:16px;padding:var(--spacing-sm)}.p-md{padding:24px;padding:var(--spacing-md)}.p-lg{padding:32px;padding:var(--spacing-lg)}.p-xl{padding:48px;padding:var(--spacing-xl)}.homepage-new{background-color:#f5f5f5;height:100%;width:100%}.homepage-content{margin:0 auto;max-width:1600px;padding:40px 60px}.hero-image-container{border:1px solid #000;height:300px;margin-bottom:40px;overflow:hidden;width:100%}.hero-image{display:block;height:100%;object-fit:cover;width:100%}.feature-cards-grid{grid-gap:0;display:grid;gap:0;grid-template-columns:repeat(4,1fr);margin-bottom:60px}.feature-cards-grid.secondary-grid{grid-template-columns:repeat(4,1fr);margin-bottom:60px}.feature-card-new{aspect-ratio:1;background-color:#fff;border:1px solid #000;color:inherit;display:flex;flex-direction:column;justify-content:space-between;padding:17px;position:relative;text-decoration:none!important;transition:all .2s ease}.feature-card-new:hover{background-color:#9c3!important;box-shadow:0 4px 12px #0000001a;text-decoration:none!important;transform:translateY(-2px)}.feature-card-new:hover .card-title,.feature-card-new:link .card-title,.feature-card-new:visited .card-title{color:#683d94!important}.feature-card-new+.feature-card-new{border-left:none}.card-content{flex:1 1}.card-title{line-height:1.3;margin:0 0 17px;padding-bottom:7px;text-decoration:none!important}.card-title,.feature-card-new .card-title,.feature-card-new h3{color:#683d94!important}.card-description{color:#5a5a5a;font-size:15px;font-weight:400;line-height:1.5;margin:0;max-width:75%}.card-footer{height:auto;justify-content:space-between;margin-top:auto;padding-top:14px}.card-footer,.card-icon{align-items:center;display:flex}.card-icon{background:#0000;height:48px;justify-content:flex-start;width:48px}.card-icon img{height:100%;object-fit:contain;width:100%}.card-arrow{color:#2d2d2d;font-size:24px;font-weight:300;line-height:1}.homepage-description{margin:0;max-width:900px}.homepage-description p{color:#6a6a6a;font-size:15px;line-height:1.6;margin:0}@media (max-width:1200px){.feature-cards-grid,.feature-cards-grid.secondary-grid{grid-template-columns:repeat(2,1fr)}.feature-card-new:nth-child(2n){border-left:1px solid #000}.feature-card-new:nth-child(n+3){border-top:none}}.how-it-works-section{margin-bottom:64px;margin-top:48px}.section-heading{color:#333;font-size:36px;font-weight:700;letter-spacing:normal;margin-bottom:32px;text-transform:none}.steps-container{width:100%}.steps-grid{align-items:center;display:flex;gap:0}.step-item{align-items:flex-start;background-color:#fff;border:1px solid #000;border-radius:0;box-shadow:0 2px 8px #00000014;display:flex;flex:1 1;flex-direction:column;min-height:300px;padding:24px;transition:all .3s ease}.step-item:hover{background-color:#9c3;box-shadow:0 8px 24px #0000001f;transform:translateY(-4px)}.step-connector{color:#2d2d2d;flex-shrink:0;font-size:48px;font-weight:300;margin:0 24px}.step-heading{color:#683d94;font-size:24px;font-weight:700;line-height:1.4;margin:0 0 20px;padding-bottom:8px;text-align:left}.step-text{color:#666;font-size:16px;line-height:1.5;margin:0 0 16px;text-align:left}.step-icon{align-items:center;display:flex;height:64px;justify-content:flex-start;margin-top:auto;width:64px}.step-icon img{height:100%;object-fit:contain;width:100%}@media (max-width:1024px){.steps-grid{flex-direction:column;gap:24px}.step-connector{margin:16px 0;transform:rotate(90deg)}.step-item{min-height:320px}}@media (max-width:768px){.homepage-content{padding:24px}.feature-cards-grid{grid-template-columns:1fr;margin-bottom:40px}.feature-card-new{border-left:1px solid #000!important;min-height:280px}.feature-card-new,.feature-card-new:first-child{border-top:1px solid #000}.feature-card-new+.feature-card-new{border-top:none}.card-title{font-size:16px}.card-description{font-size:13px}.how-it-works-section{margin-bottom:48px;margin-top:48px}.section-heading{font-size:28px;margin-bottom:32px}.steps-grid{flex-direction:column;gap:20px}.step-connector{font-size:40px;margin:12px 0;transform:rotate(90deg)}.step-item{min-height:300px;padding:36px 24px}.step-heading{font-size:18px}.step-text{font-size:13px;margin-bottom:32px}.step-icon{height:64px;width:64px}}.previous-docs-overlay{align-items:center;animation:fadeIn .2s ease;background-color:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}.previous-docs-modal{animation:slideUp .3s ease;background-color:#fff;border:2px solid #000;border-radius:0;display:flex;flex-direction:column;max-height:85vh;max-width:900px;width:90%}.previous-docs-header{align-items:center;background-color:#fff;border-bottom:2px solid #000;display:flex;justify-content:space-between;padding:1.5rem}.previous-docs-header h2{color:#2d2d2d;font-size:24px;font-weight:600;margin:0}.previous-docs-close{align-items:center;background:none;border:none;color:#666;cursor:pointer;display:flex;font-size:32px;height:40px;justify-content:center;padding:0;transition:color .2s ease;width:40px}.previous-docs-close:hover{color:#000}.previous-docs-controls{background-color:#fafafa;border-bottom:1px solid #e0e0e0;display:flex;gap:1rem;padding:1rem 1.5rem}.previous-docs-search{border:1px solid #e0e0e0;border-radius:0;flex:1 1;font-family:Inter,sans-serif;font-size:14px;padding:.75rem}.previous-docs-search:focus{border-color:#683d94;outline:none}.previous-docs-filter{align-items:center;color:#2d2d2d;cursor:pointer;display:flex;font-size:14px;gap:.5rem;-webkit-user-select:none;user-select:none}.previous-docs-filter input[type=checkbox]{cursor:pointer;height:18px;width:18px}.previous-docs-error{background-color:#ffebee;border-bottom:1px solid #ef5350;color:#c62828;font-size:14px;padding:1rem 1.5rem}.previous-docs-list{flex:1 1;overflow-y:auto;padding:1rem 1.5rem}.previous-docs-empty,.previous-docs-loading{color:#666;font-size:16px;padding:3rem;text-align:center}.previous-doc-item{background-color:#fff;border:1px solid #e0e0e0;border-radius:0;cursor:pointer;margin-bottom:1rem;padding:1.5rem;transition:all .2s ease}.previous-doc-item:hover{border-color:#683d94;box-shadow:0 2px 8px #683d941a}.previous-doc-header{margin-bottom:.75rem}.previous-doc-title-row{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:.5rem}.previous-doc-title{color:#2d2d2d;flex:1 1;font-size:18px;font-weight:600;margin:0}.previous-doc-star{background:none;border:none;cursor:pointer;flex-shrink:0;font-size:20px;padding:.25rem;transition:transform .2s ease}.previous-doc-star:hover{transform:scale(1.2)}.previous-doc-star.starred{color:#ffb300}.previous-doc-description{color:#666;font-size:14px;line-height:1.5;margin:0}.previous-doc-meta{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.previous-doc-tag{background-color:#f5f5f5;border:1px solid #e0e0e0;border-radius:0;color:#2d2d2d;font-size:12px;font-weight:500;padding:.25rem .75rem}.previous-doc-date{color:#999;font-size:12px;margin-left:auto}.previous-doc-detail{flex:1 1;overflow-y:auto;padding:1.5rem}.previous-doc-back{background-color:#fff;border:1px solid #683d94;border-radius:0;color:#683d94;cursor:pointer;font-family:Inter,sans-serif;font-size:14px;font-weight:600;margin-bottom:1.5rem;padding:.5rem 1rem;transition:all .2s ease}.previous-doc-back:hover{background-color:#683d94;color:#fff}.previous-doc-detail-header{align-items:flex-start;border-bottom:2px solid #e0e0e0;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem;padding-bottom:1rem}.previous-doc-detail-header h3{color:#2d2d2d;flex:1 1;font-size:24px;font-weight:600;margin:0}.previous-doc-star-btn{background-color:#fff;border:1px solid #e0e0e0;border-radius:0;color:#2d2d2d;cursor:pointer;font-family:Inter,sans-serif;font-size:14px;font-weight:600;padding:.5rem 1rem;transition:all .2s ease}.previous-doc-star-btn.starred{background-color:#fff9e6;border-color:#ffb300;color:#ffb300}.previous-doc-star-btn:hover{border-color:#ffb300}.previous-doc-detail-desc{color:#666;font-size:14px;line-height:1.6;margin-bottom:1rem}.previous-doc-detail-meta{background-color:#f5f5f5;border:1px solid #e0e0e0;color:#666;display:flex;flex-wrap:wrap;font-size:14px;gap:1rem;margin-bottom:1.5rem;padding:1rem}.previous-doc-detail-meta span{display:inline-block}.previous-doc-content{background-color:#fafafa;border:1px solid #e0e0e0;border-radius:0;margin-bottom:1.5rem;padding:1.5rem}.previous-doc-content pre{word-wrap:break-word;color:#2d2d2d;font-family:Inter,sans-serif;font-size:14px;line-height:1.6;margin:0;white-space:pre-wrap}.previous-doc-messages{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.previous-doc-message{border:1px solid #e0e0e0;border-radius:0;padding:1rem}.previous-doc-message.user{background-color:#f5f0ff;border-left:4px solid #683d94}.previous-doc-message.assistant{background-color:#f5f5f5;border-left:4px solid #2196f3}.previous-doc-message-role{color:#666;font-size:12px;font-weight:600;margin-bottom:.5rem;text-transform:uppercase}.previous-doc-message-content{color:#2d2d2d;font-size:14px;line-height:1.6;white-space:pre-wrap}.previous-doc-use-btn{background-color:#683d94;border:none;border-radius:0;color:#fff;cursor:pointer;font-family:Inter,sans-serif;font-size:16px;font-weight:600;padding:1rem;transition:background-color .2s ease;width:100%}.previous-doc-use-btn:hover{background-color:#552f7a}@media (max-width:768px){.previous-docs-modal{max-height:90vh;width:95%}.previous-docs-header{padding:1rem}.previous-docs-header h2{font-size:20px}.previous-docs-controls{flex-direction:column;padding:1rem}.previous-doc-item{padding:1rem}.previous-doc-title{font-size:16px}.previous-doc-detail-header{flex-direction:column}.previous-doc-detail-header h3{font-size:20px}}.protocol-generator{font-family:Inter,sans-serif;margin:0 auto;max-width:1400px;padding:2rem}.protocol-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.protocol-header h2{color:#2d2d2d;font-family:Inter,sans-serif;font-size:36px;font-weight:700;margin-bottom:.5rem;text-align:left}.protocol-header p{color:#8a8a8a;font-family:Inter,sans-serif;font-size:15px;margin:0}.protocol-generator h3{font-size:20px}.protocol-generator h3,.protocol-generator h4{color:#2d2d2d;font-family:Inter,sans-serif;font-weight:600}.protocol-generator h4{font-size:18px}.protocol-generator label,.protocol-generator p{font-family:Inter,sans-serif;font-size:15px}.protocol-section{background-color:#fff;border:1px solid #000;border-radius:12px;box-shadow:0 2px 4px #0000001a;margin-bottom:2rem;padding:2rem}.protocol-generator input[type=date],.protocol-generator input[type=number],.protocol-generator input[type=text],.protocol-generator select,.protocol-generator textarea{font-family:Inter,sans-serif;font-size:15px}.progress-bar-fill{background-color:#683d94;transition:width .3s ease,background-color .3s ease}.progress-bar-fill.complete{background-color:#10b981}.protocol-content h4,.protocol-content strong,.protocol-generator strong{color:#2d2d2d;font-family:Inter,sans-serif;font-weight:600}.protocol-content h4{font-size:20px;margin:1.5rem 0 1rem}.protocol-content h5{color:#2d2d2d;font-family:Inter,sans-serif;font-size:18px;font-weight:600;margin:1rem 0 .5rem}.protocol-content p{margin-bottom:.75rem}.protocol-content li,.protocol-content p{color:#4a4a4a;font-family:Inter,sans-serif;font-size:15px;line-height:1.6}.protocol-content li{margin-bottom:.5rem}@media (max-width:768px){.protocol-generator{padding:1rem}.protocol-header{align-items:flex-start;flex-direction:column;gap:1rem}.protocol-header h2{font-size:28px}}.unified-regulatory-generator{font-family:Inter,sans-serif}.generator-header{border-bottom:2px solid #e0e0e0}.generator-header p{color:#8a8a8a}.header-actions{display:flex;gap:1rem}.unified-regulatory-generator h4{color:#2d2d2d;font-family:Inter,sans-serif;font-size:18px;font-weight:600}.interactive-map-container{background:var(--color-background-card);border:1px solid var(--color-border-light);border-radius:0;margin-bottom:2rem;padding:2rem}.map-placeholder{background:var(--color-background-subtle);border:2px dashed var(--color-border-medium);border-radius:0;padding:2rem;text-align:center}.previous-docs-section{background:var(--color-background-card);border:1px solid var(--color-border-light);border-radius:0;margin-bottom:2rem;padding:1.5rem}.previous-docs-section h4{color:var(--color-text-primary);margin:0 0 1rem}.docs-list{display:flex;flex-direction:column;gap:.75rem}.doc-item{align-items:center;background:var(--color-background-subtle);border-left:4px solid var(--color-primary);border-radius:0;display:flex;justify-content:space-between;padding:.75rem}.doc-item strong{color:var(--color-text-primary)}.doc-item span{color:var(--color-text-secondary);font-size:.9rem}.mode-selection{margin-bottom:2rem}.mode-selection h3{color:#2d2d2d;font-family:Inter,sans-serif;font-size:20px;font-weight:600;margin-bottom:1rem}.mode-toggle{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr 1fr;max-width:600px}.mode-card{background:#fff;border:2px solid #e0e0e0;border-radius:0;cursor:pointer;padding:2rem;position:relative;text-align:center;transition:all .2s ease}.mode-card:hover{border-color:#683d94;box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.mode-card.active{background:#fdf8fd;border-color:#683d94;box-shadow:0 4px 12px #683d9426}.mode-card.active:after{align-items:center;background:#683d94;border-radius:50%;color:#fff;content:"";display:flex;height:1.5rem;justify-content:center;position:absolute;right:.5rem;top:.5rem;width:1.5rem}.mode-icon{font-size:2.5rem;margin-bottom:1rem}.mode-card h4{color:#2d2d2d;font-size:18px;font-weight:600;margin:0 0 .5rem}.mode-card h4,.mode-card p{font-family:Inter,sans-serif}.mode-card p{color:#6a6a6a;font-size:15px;margin:0}.form-section{background:#fff;border:1px solid #000;border-radius:0;margin-bottom:2rem;padding:2rem}.form-section h3{align-items:center;color:#2d2d2d;display:flex;font-family:Inter,sans-serif;font-size:20px;font-weight:600;gap:.5rem;margin:0 0 1.5rem}.form-grid{grid-gap:1.5rem;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.form-label{margin-bottom:.5rem}.form-input,.form-select,.form-textarea{background:#fff;border:1px solid #d1d5db;border-radius:0;font-family:Inter,sans-serif;font-size:15px;padding:.75rem;transition:border-color .2s ease}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:#683d94}.required{color:var(--color-error)}.selected-country-info{background:var(--color-success-light);border:1px solid var(--color-success);border-radius:0;margin-bottom:1.5rem;padding:1rem}.selected-country-info h4{color:var(--color-success-dark);margin:0 0 .5rem}.selected-country-info p{color:var(--color-success-dark);font-size:.9rem;margin:0}.advanced-toggle{align-items:center;border-bottom:1px solid var(--color-border-light);cursor:pointer;display:flex;justify-content:space-between;margin-bottom:1rem;padding:.5rem 0}.advanced-toggle:hover{color:var(--color-primary)}.toggle-icon{color:var(--color-text-secondary);font-size:1.2rem;transition:transform var(--transition-fast)}.advanced-params{padding-top:1rem}.csv-upload-section{margin-bottom:2rem}.csv-upload-section h4{color:var(--color-text-primary);margin:0 0 1rem}.upload-area{display:flex;flex-direction:column;gap:1rem}.upload-dropzone{background:var(--color-background-subtle);border:2px dashed var(--color-border-medium);border-radius:0;cursor:pointer;padding:3rem;text-align:center;transition:all var(--transition-fast)}.upload-dropzone:hover{background:var(--color-primary-light);border-color:var(--color-primary)}.upload-content{gap:1rem}.upload-icon{font-size:3rem}.upload-content p,.upload-icon{color:var(--color-text-secondary)}.upload-content p{font-size:1.1rem}.upload-actions{display:flex;justify-content:center}.csv-preview-section{margin-bottom:2rem}.csv-preview-section h4{color:var(--color-text-primary);margin:0 0 1rem}.preview-table-container{background:var(--color-background-card);border:1px solid var(--color-border-light);border-radius:0;overflow:hidden}.preview-table{border-collapse:collapse;width:100%}.preview-table td,.preview-table th{border-bottom:1px solid var(--color-border-light);padding:.75rem;text-align:left}.preview-table th{background:var(--color-background-subtle);color:var(--color-text-primary);font-weight:600}.preview-table td{color:var(--color-text-secondary)}.status-badge{border-radius:0;font-size:.8rem;font-weight:500;padding:.25rem .5rem;text-transform:capitalize}.status-badge.pending{background:var(--color-warning-light);color:var(--color-warning-dark)}.status-badge.processing{background:var(--color-info-light);color:var(--color-info-dark)}.status-badge.completed{background:var(--color-success-light);color:var(--color-success-dark)}.status-badge.error{background:var(--color-error-light);color:var(--color-error-dark)}.preview-note{background:var(--color-background-subtle);color:var(--color-text-secondary);font-style:italic;margin:0;padding:.75rem;text-align:center}.batch-progress-section{margin-bottom:2rem}.batch-progress-section h4{color:var(--color-text-primary);margin:0 0 1rem}.progress-list{display:flex;flex-direction:column;gap:1rem}.progress-item{background:var(--color-background-card);border:1px solid var(--color-border-light);border-radius:0;padding:1rem}.progress-info{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.study-name{color:var(--color-text-primary);font-weight:500}.progress-status{border-radius:0;font-size:.8rem;font-weight:500;padding:.25rem .5rem;text-transform:capitalize}.progress-status.pending{background:var(--color-warning-light);color:var(--color-warning-dark)}.progress-status.processing{background:var(--color-info-light);color:var(--color-info-dark)}.progress-status.completed{background:var(--color-success-light);color:var(--color-success-dark)}.progress-status.error{background:var(--color-error-light);color:var(--color-error-dark)}.progress-bar{background:var(--color-border-light);border-radius:0;height:6px;overflow:hidden}.progress-fill{background:var(--color-primary);height:100%;transition:width var(--transition-medium)}.batch-results-section{margin-bottom:2rem}.batch-results-section h4{color:var(--color-text-primary);margin:0 0 1rem}.results-summary{display:flex;gap:1rem;margin-bottom:1rem}.success-count{color:var(--color-success-dark);font-weight:500}.error-count{color:var(--color-error-dark);font-weight:500}.action-buttons{flex-wrap:wrap;gap:1rem;margin-top:2rem}.btn{font-size:1rem;font-weight:500;gap:.5rem;min-height:44px;padding:.75rem 1.5rem}.btn-primary{background:#683d94}.btn-primary:hover:not(:disabled){background:#5a2d84;box-shadow:0 4px 12px #683d9433;transform:translateY(-1px)}.btn-secondary{background:var(--color-background-subtle);border:1px solid var(--color-border-medium);color:var(--color-text-primary)}.btn-secondary:hover:not(:disabled){background:var(--color-border-light)}.btn-outline{background:#0000;border:1px solid var(--color-primary);color:var(--color-primary)}.btn-outline:hover:not(:disabled){background:var(--color-primary);color:#fff}.btn-lg{font-size:1.1rem;padding:1rem 2rem}.btn-loading{position:relative}.btn-loading:after{animation:spin 1s linear infinite;border:2px solid #0000;border-radius:50%;border-top-color:currentcolor;content:"";height:16px;margin-left:.5rem;position:absolute;width:16px}.result-container{background:var(--color-background-card);border:1px solid var(--color-border-light);border-radius:0;margin-top:2rem;padding:2rem}.tabs{border-bottom:2px solid var(--color-border-light);margin-bottom:2rem}.tab-btn{background:#0000;border:none;border-bottom:2px solid #0000;color:#6a6a6a;cursor:pointer;font-family:Inter,sans-serif;font-size:15px;font-weight:500;padding:1rem 2rem;transition:all .2s ease}.tab-btn:hover{color:#683d94}.tab-btn.active{border-bottom-color:#683d94;color:#683d94}.module-content h3{color:#2d2d2d;font-family:Inter,sans-serif;font-size:20px;font-weight:600;margin:0 0 1rem}.content-area{background:var(--color-background-subtle);border:1px solid var(--color-border-light);border-radius:0;max-height:500px;overflow-y:auto;padding:1.5rem}.content-area pre{color:var(--color-text-primary);font-family:var(--font-mono);font-size:.9rem;line-height:1.5;margin:0;white-space:pre-wrap}.alert{border-radius:0;font-weight:500;margin:1rem 0;padding:1rem}.alert-error{background:var(--color-error-light);border:1px solid var(--color-error);color:var(--color-error-dark)}.alert-success{background:var(--color-success-light);border:1px solid var(--color-success);color:var(--color-success-dark)}.alert-warning{background:var(--color-warning-light);border:1px solid var(--color-warning);color:var(--color-warning-dark)}@media (max-width:768px){.unified-regulatory-generator{padding:1rem}.generator-header{flex-direction:column;gap:1rem}.header-actions{flex-direction:column;width:100%}.form-grid,.mode-toggle{grid-template-columns:1fr}.action-buttons{flex-direction:column}.action-buttons .btn{width:100%}.tabs{flex-direction:column}.tab-btn{text-align:left}}.loading-indicator{flex-direction:column;padding:2rem;text-align:center}.loading-spinner{border-top:3px solid var(--color-border-light);border:3px solid var(--color-border-light);height:32px;margin-bottom:1rem;width:32px}.btn:focus,.form-input:focus,.form-select:focus,.form-textarea:focus{outline:2px solid var(--color-primary);outline-offset:2px}@media (prefers-contrast:high){.mode-card{border-width:3px}.btn{border-width:2px}}.unified-regulatory-generator{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;margin:0 auto;max-width:1200px;padding:2rem}.generator-header{align-items:flex-start;border-bottom:2px solid #000;display:flex;justify-content:space-between;margin-bottom:2rem;padding-bottom:1rem}.generator-header h2{color:#2d2d2d;font-family:Inter,sans-serif;font-size:36px;font-weight:700;margin:0}.generator-header p{color:#666;font-family:Inter,sans-serif;font-size:15px;line-height:1.6;margin:.5rem 0 0}.mode-selector{box-shadow:none;display:flex;margin-bottom:2rem;padding:0}.mode-button,.mode-selector{background:#0000;border:none;border-radius:0}.mode-button{color:var(--color-text-secondary);cursor:pointer;flex:1 1;font-size:.95rem;font-weight:500;padding:.75rem 1.5rem;transition:all var(--transition-normal)}.mode-button:hover{background:var(--color-gray-50);color:var(--color-text)}.mode-button.active{background:#683d94;box-shadow:0 2px 4px #683d9433;color:#fff}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-family:Inter,sans-serif;font-size:15px}.form-group select{background:var(--color-background-card);border:none;border-radius:var(--radius-md);color:var(--color-text);font-size:.95rem;padding:.75rem;transition:all var(--transition-normal);width:100%}.form-group select:focus{border:none;box-shadow:none;outline:none}.form-group textarea{background:var(--color-background-card);border:none;border-radius:var(--radius-md);color:var(--color-text);font-family:var(--font-mono);font-size:.95rem;line-height:1.6;min-height:120px;padding:.75rem;resize:vertical;transition:all var(--transition-normal);width:100%}.form-group textarea:focus{border:none;box-shadow:none;outline:none}.form-group textarea::placeholder{color:var(--color-text-muted);font-style:italic}.results-section{background:var(--color-gray-50);border:1px solid #000;border-radius:var(--radius-lg);margin-top:2rem;padding:1.5rem}.results-section h4{color:#2d2d2d;font-family:Inter,sans-serif;font-size:20px;font-weight:700;margin:0 0 1rem}.result-metadata{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem}.confidence-badge,.timestamp,.type-badge{border-radius:var(--radius-full);color:#fff;font-size:.8rem;font-weight:500;padding:.375rem .75rem}.confidence-badge{background:#683d94}.timestamp{background:#6b7280}.type-badge{background:#683d94}.result-content{background:var(--color-background-card);border:1px solid #000;border-radius:var(--radius-md);overflow-x:auto;padding:1rem}.result-content pre{color:var(--color-text);font-family:var(--font-mono);font-size:.9rem;line-height:1.6;margin:0;white-space:pre-wrap}.reasoning-breakdown{margin-top:1.5rem}.decision-summary{margin-bottom:1.5rem}.decision-summary h5{color:#2d2d2d;font-family:Inter,sans-serif;font-size:18px;font-weight:600;margin:0 0 .75rem}.decision-content{background:var(--color-background-card);border:1px solid #000;border-radius:var(--radius-md);padding:1rem}.reasoning-details h5{color:#2d2d2d;font-family:Inter,sans-serif;font-size:18px;font-weight:600;margin:0 0 1rem}.reasoning-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.reasoning-item{background:var(--color-background-card);border:1px solid #000;border-radius:var(--radius-md);box-shadow:0 1px 3px #0000000d;padding:1rem}.reasoning-item strong{color:#683d94;display:block;font-size:.95rem;font-weight:600;margin-bottom:.5rem}.reasoning-item p{color:var(--color-text);font-size:.9rem;line-height:1.5;margin:0}.loading-overlay{animation:fadeIn .3s ease-out;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172acc;bottom:0;left:0;position:fixed;right:0;top:0;z-index:1000}.professional-loading-container{animation:slideIn .4s ease-out;background:#fff;border:1px solid #fff3;border-radius:20px;box-shadow:0 20px 50px #0000004d;min-width:320px;padding:3rem 2.5rem;text-align:center}.medical-spinner{height:80px;margin:0 auto 2rem;position:relative;width:80px}.pulse-ring{animation:pulse 2s cubic-bezier(.455,.03,.515,.955) infinite;border:2px solid #0000;border-color:#683d944d;border-radius:50%;height:100%;left:0;position:absolute;top:0;width:100%}.pulse-ring.delay-1{animation-delay:-.4s;border-color:#683d9440}.pulse-ring.delay-2{animation-delay:-.8s;border-color:#683d9433}.center-icon{animation:iconPulse 1.5s ease-in-out infinite;color:#683d94;height:32px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:32px}.loading-content h3{color:#1e293b;font-size:1.5rem;font-weight:600;letter-spacing:-.025em;margin:0 0 .5rem}.loading-content p{color:#64748b;font-size:1rem;font-weight:400;margin:0 0 1.5rem}.progress-dots{display:flex;gap:.5rem;justify-content:center}.progress-dots span{animation:dotBounce 1.4s ease-in-out infinite;background:#683d94;border-radius:50%;height:8px;width:8px}.progress-dots span:first-child{animation-delay:-.32s}.progress-dots span:nth-child(2){animation-delay:-.16s}.progress-dots span:nth-child(3){animation-delay:0s}@keyframes slideIn{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes pulse{0%{opacity:1;transform:scale(.8)}to{opacity:0;transform:scale(1.8)}}@keyframes iconPulse{0%,to{opacity:1;transform:translate(-50%,-50%) scale(1)}50%{opacity:.8;transform:translate(-50%,-50%) scale(1.1)}}@keyframes dotBounce{0%,80%,to{opacity:.5;transform:scale(.8)}40%{opacity:1;transform:scale(1.2)}}.card{background:var(--color-background-card);border:1px solid #000;border-radius:0;box-shadow:none;margin-bottom:2rem}.card-header{border-bottom:1px solid #000;padding:1.5rem}.card-title{color:#2d2d2d;font-size:20px;font-weight:700}.card-subtitle,.card-title{font-family:Inter,sans-serif}.card-subtitle{color:#666;font-size:15px;line-height:1.6;margin:.5rem 0 0}.card-body{padding:1.5rem}@media (max-width:768px){.unified-regulatory-generator{padding:1rem}.generator-header h2{font-size:1.5rem}.mode-selector{flex-direction:column}.mode-button{margin-bottom:.25rem}.mode-button:last-child{margin-bottom:0}.result-metadata{flex-direction:column;gap:.5rem}.reasoning-grid{grid-template-columns:1fr}}@media (max-width:480px){.card-body{padding:1rem}.form-group textarea{font-size:.9rem}.generator-header h2{font-size:1.25rem}}.excel-analysis-container{font-family:var(--font-family-primary);margin:0 auto;max-width:1400px;padding:var(--spacing-2xl)}.excel-analysis-container .container{background-color:#fff;border:1px solid #000;border-radius:0;padding:var(--spacing-2xl)}.analysis-header{margin-bottom:var(--spacing-2xl)}.analysis-header h1{color:#2d2d2d;font-size:36px;font-weight:700;margin:0 0 12px}.analysis-header h1,.analysis-header p{font-family:var(--font-family-primary);text-align:left}.analysis-header p{color:#666;font-size:15px;line-height:1.7;margin:0}.upload-section{margin-bottom:var(--spacing-2xl)}.upload-zone{background-color:var(--color-background-light);border:2px dashed var(--color-light-gray);border-radius:0;cursor:pointer;padding:var(--spacing-2xl);text-align:center;transition:all var(--transition-base)}.upload-zone.drag-over,.upload-zone:hover{background-color:#683d940d;border-color:var(--color-primary-purple);box-shadow:var(--shadow-md)}.upload-content{align-items:center;display:flex;flex-direction:column;gap:var(--spacing-md)}.upload-icon{background:url('data:image/svg+xml;utf8,<svg width="64" height="64" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M13 7L11.8845 4.76892C11.5634 4.1268 11.4029 3.80573 11.1634 3.57116C10.9516 3.36373 10.6963 3.20597 10.4161 3.10931C10.0992 3 9.74021 3 9.02229 3H5.2C4.0799 3 3.51984 3 3.09202 3.21799C2.71569 3.40973 2.40973 3.71569 2.21799 4.09202C2 4.51984 2 5.0799 2 6.2V7M2 7H17.2C18.8802 7 19.7202 7 20.362 7.32698C20.9265 7.6146 21.3854 8.07354 21.673 8.63803C22 9.27976 22 10.1198 22 11.8V16.2C22 17.8802 22 18.7202 21.673 19.362C21.3854 19.9265 20.9265 20.3854 20.362 20.673C19.7202 21 18.8802 21 17.2 21H6.8C5.11984 21 4.27976 21 3.63803 20.673C3.07354 20.3854 2.6146 19.9265 2.32698 19.362C2 18.7202 2 17.8802 2 16.2V7Z" stroke="%232D2D2D" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>') no-repeat 50%;background-size:contain;height:64px;width:64px}.upload-content h3{color:#2d2d2d;font-size:20px;font-weight:700}.upload-content h3,.upload-content p{font-family:var(--font-family-primary);margin:0}.upload-content p{color:#666;font-size:15px}.file-input{display:none}.btn{border-radius:0;font-size:15px;font-weight:600;padding:12px 24px}.btn-primary:hover{background-color:var(--color-primary-purple-dark);box-shadow:var(--shadow-md)}.btn-secondary:hover{border-color:var(--color-primary-purple);color:var(--color-primary-purple)}.error-section,.loading-section{background-color:var(--color-white);border:1px solid var(--color-light-gray);border-radius:0;margin-bottom:var(--spacing-xl);padding:var(--spacing-2xl);text-align:center}.loading-spinner{border:4px solid var(--color-light-gray);border-top-color:var(--color-primary-purple);height:48px;margin:0 auto var(--spacing-md);width:48px}.loading-section p{color:#666}.error-message,.loading-section p{font-family:var(--font-family-primary);font-size:15px}.error-message{background-color:var(--color-error-bg);border-left:4px solid var(--color-error);border-radius:0;color:var(--color-error);padding:var(--spacing-md)}.results-section{background-color:var(--color-white);border:1px solid var(--color-light-gray);border-radius:0;box-shadow:var(--shadow-sm);margin-bottom:var(--spacing-xl);padding:var(--spacing-xl)}.analysis-section{margin:var(--spacing-2xl) 0}.analysis-section h4{border-bottom:2px solid var(--color-light-gray);color:#2d2d2d;font-family:var(--font-family-primary);font-size:20px;font-weight:700;margin:0 0 var(--spacing-xl) 0;padding-bottom:var(--spacing-md)}.key-metrics{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:var(--spacing-2xl)}.metric-card{background-color:var(--color-background-light);border:1px solid var(--color-light-gray);border-radius:0;padding:var(--spacing-lg);text-align:center;transition:all var(--transition-base)}.metric-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.metric-value{color:var(--color-primary-purple);font-size:32px;font-weight:700}.metric-label,.metric-value{font-family:var(--font-family-primary);margin:0 0 var(--spacing-xs) 0}.metric-label{color:var(--color-dark-gray);font-size:15px;font-weight:600}.metric-sublabel{color:var(--color-medium-gray);font-family:var(--font-family-primary);font-size:13px;margin:0}.tab-navigation{border-bottom:2px solid var(--color-light-gray);display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-xl)}.tab-button{background:none;border:none;border-bottom:3px solid #0000;color:var(--color-medium-gray);cursor:pointer;font-family:var(--font-family-primary);font-size:15px;font-weight:600;margin-bottom:-2px;padding:var(--spacing-md) var(--spacing-lg);transition:all var(--transition-fast)}.tab-button.active,.tab-button:hover{color:var(--color-primary-purple)}.tab-button.active{border-bottom-color:var(--color-primary-purple)}@media (max-width:768px){.excel-analysis-container{padding:var(--spacing-lg)}.analysis-header h1{font-size:var(--font-size-h2)}.key-metrics{grid-template-columns:1fr}.tab-navigation{flex-direction:column}.tab-button{border-bottom:none;border-left:3px solid #0000;margin-bottom:0;padding-left:var(--spacing-md)}.tab-button.active{border-bottom-color:#0000;border-left-color:var(--color-primary-purple)}}.login-container{background:#683d94;padding:var(--space-lg)}.login-card{border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-width:400px;padding:var(--space-2xl)}.login-header{margin-bottom:var(--space-xl)}.login-header h1{color:var(--color-text);font-size:var(--text-3xl);margin:0 0 var(--space-xs)}.login-header p{color:var(--color-text-muted);font-size:var(--text-sm)}.login-form{gap:var(--space-lg)}.form-group{gap:var(--space-xs)}.form-group label{color:var(--color-text);font-size:var(--text-sm)}.form-group input{border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--text-base);padding:var(--space-md);transition:border-color .2s}.form-group input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #4f46e51a;outline:none}.login-button{background:var(--color-primary);border-radius:var(--radius-md);font-size:var(--text-base);padding:var(--space-md) var(--space-lg);transition:background-color .2s}.login-button:hover:not(:disabled){background:var(--color-primary-dark)}.login-button:disabled{opacity:.6}.error-message{background:#fee;border:1px solid #fed7d7;border-radius:var(--radius-md);color:#c53030;font-size:var(--text-sm);padding:var(--space-md)}.logout-button{background:none;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);cursor:pointer;font-size:var(--text-sm);padding:var(--space-sm) var(--space-md);transition:all .2s}.logout-button:hover{background:var(--color-background-subtle);border-color:var(--color-text-muted)}.loading-container{gap:var(--space-lg)}.loading-spinner{animation:spin 1s linear infinite;border-top:4px solid var(--color-border);border:4px solid var(--color-border);border-radius:50%;border-top-color:var(--color-primary);height:40px;width:40px}.container{max-width:1200px;padding:0 var(--space-lg);width:100%}.App{display:flex;flex-direction:column}.app-layout{display:flex;min-height:100vh}.main-content{flex:1 1;margin-left:260px;transition:margin-left .3s ease}.main-content,.side-nav{display:flex;flex-direction:column}.side-nav{background:linear-gradient(180deg,#2a1f3d,#3d2c52);border-right:1px solid #ffffff1a;box-shadow:4px 0 20px #00000026;height:100vh;left:0;position:fixed;top:0;width:260px;z-index:1000}.side-nav-header{background:linear-gradient(135deg,#683d94,#5a3280);border-bottom:1px solid #ffffff1a;padding:var(--space-xl) var(--space-lg)}.side-nav-header .logo{color:#fff;font-size:var(--text-2xl);font-weight:700;letter-spacing:-.025em;text-align:center;text-shadow:0 2px 4px #0003}.side-nav-links{flex:1 1;list-style:none;margin:0;overflow-y:auto;padding:var(--space-lg) 0}.side-nav-links li{margin:0}.side-nav-links a{align-items:center;border-left:3px solid #0000;color:#fffc;display:flex;font-size:var(--text-sm);font-weight:500;gap:var(--space-md);overflow:hidden;padding:var(--space-md) var(--space-lg);position:relative;text-decoration:none;transition:all .3s ease}.side-nav-links a:before{background:linear-gradient(90deg,#683d9433,#5a32801a);content:"";height:100%;left:0;position:absolute;top:0;transition:width .3s ease;width:0;z-index:-1}.side-nav-links a:hover{background:#683d941a;border-left-color:#a48bbf;color:#fff;transform:translateX(4px)}.side-nav-links a:hover:before{width:100%}.side-nav-links a.active{background:linear-gradient(90deg,#683d9433,#5a32801a);border-left-color:#a48bbf;color:#fff;font-weight:600}.side-nav-links a.active:before{width:100%}.side-nav-links svg{flex-shrink:0;height:20px;opacity:.8;transition:all .3s ease;width:20px}.side-nav-links a.active svg,.side-nav-links a:hover svg{opacity:1;transform:scale(1.1)}.side-nav-links span{font-size:var(--text-sm);line-height:1.4}.side-nav-footer{background:#0000001a;border-top:1px solid #ffffff1a;padding:var(--space-lg)}.side-nav-footer a{align-items:center;border-radius:var(--radius-md);color:#ffffffb3;display:flex;font-size:var(--text-sm);gap:var(--space-md);margin-bottom:var(--space-sm);padding:var(--space-sm) var(--space-md);text-decoration:none;transition:all .3s ease}.side-nav-footer a:hover{background:#ffffff1a;color:#fff;transform:translateX(2px)}.side-nav-footer a:last-child{margin-bottom:0}.side-nav-footer .logout-button{align-items:center;background:none;border:1px solid #fff3;border-radius:var(--radius-md);color:#ffffffb3;cursor:pointer;display:flex;font-size:var(--text-sm);gap:var(--space-md);justify-content:center;margin-top:var(--space-sm);padding:var(--space-sm) var(--space-md);transition:all .3s ease;width:100%}.side-nav-footer .logout-button:hover{background:#dc262633;border-color:#dc262666;color:#fff;transform:translateX(2px)}.App-header{background-color:#fff;border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-sm);padding:var(--space-lg) 0}.App-header h1{color:var(--color-text);font-size:var(--text-3xl);font-weight:700;letter-spacing:-.025em;margin:0}.App-header .tagline{color:var(--color-text-muted);font-size:var(--text-sm);font-weight:500;margin:var(--space-xs) 0 0}.trademark{color:var(--color-text-muted);font-size:.75em}.copyright{font-size:1.1em}footer{background-color:var(--color-gray-100);border-top:1px solid var(--color-border);color:var(--color-text-muted);font-size:var(--text-sm);margin-top:auto;padding:var(--space-xl) 0;text-align:center}main{flex:1 1;min-height:calc(100vh - 200px);padding:var(--space-2xl) 0}@media (max-width:768px){.container{padding:0 var(--space-md)}.main-content{margin-left:0}.side-nav{transform:translateX(-100%);transition:transform .3s ease}.app-layout.sidebar-open .side-nav{transform:translateX(0)}.App-header h1{font-size:var(--text-2xl)}main{padding:var(--space-lg) 0}.side-nav-links span{font-size:var(--text-xs)}}h1,h2,h3,h4,h5,h6{color:var(--color-text);font-family:var(--font-heading);line-height:1.2;margin-top:0}h1{font-size:2.25rem;margin-bottom:var(--space-lg)}h2{font-size:1.8rem}h2,h3{margin-bottom:var(--space-md)}h3{font-size:1.5rem}h4{font-size:1.25rem;margin-bottom:var(--space-sm)}h5{font-size:1.1rem}h5,h6{margin-bottom:var(--space-xs)}h6{font-size:1rem}p{line-height:1.6;margin-bottom:var(--space-md);margin-top:0}.text-sm{font-size:.875rem}.text-xs{font-size:.75rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-muted{color:var(--color-text-light)}.text-primary{color:var(--color-primary)}.text-success{color:var(--color-success)}.text-error{color:var(--color-error)}.subtitle,.text-center{text-align:center}.subtitle{font-size:1.1rem;margin-bottom:var(--space-xl)}.breadcrumb,.subtitle{color:var(--color-text-light)}.breadcrumb{font-size:.875rem;margin-bottom:var(--space-lg)}.breadcrumb a{color:var(--color-primary)}.breadcrumb a:hover{color:var(--color-primary-dark);text-decoration:underline}.breadcrumb .separator{color:var(--color-text-light);margin:0 var(--space-xs)}.action-buttons button,.btn,.submit-btn,button:not([class]),button[type=submit]{align-items:center;background-color:var(--color-primary);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;justify-content:center;padding:var(--space-sm) var(--space-lg);position:relative;text-decoration:none;transition:all .2s ease}.btn:focus,.submit-btn:focus,button:not([class]):focus,button[type=submit]:focus{box-shadow:0 0 0 3px #4299e180;outline:none}.action-buttons button:hover:not(:disabled),.btn:hover:not(:disabled),.submit-btn:hover:not(:disabled),button:not([class]):hover:not(:disabled),button[type=submit]:hover:not(:disabled){background-color:var(--color-primary-dark);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-primary{background-color:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-dark)}.action-buttons button.btn-secondary,.btn-secondary{background-color:var(--color-background);border:1px solid var(--color-border);color:var(--color-text)}.action-buttons button.btn-secondary:hover:not(:disabled),.btn-secondary:hover:not(:disabled){background-color:#f1f5f9;transform:translateY(-1px)}.btn-success{background-color:var(--color-success);color:#fff}.btn-success:hover:not(:disabled){background-color:#0ab65d;box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-danger{background-color:var(--color-error);color:#fff}.btn-danger:hover:not(:disabled){background-color:#c53030;box-shadow:var(--shadow-md);transform:translateY(-1px)}.action-buttons button:disabled,.btn:disabled,.submit-btn:disabled,button:not([class]):disabled,button[type=submit]:disabled{background-color:#9e9e9e;box-shadow:none!important;cursor:not-allowed;opacity:.6;transform:none!important}.btn-sm{font-size:.75rem;padding:var(--space-xs) var(--space-sm)}.btn-lg{font-size:1rem;padding:var(--space-md) var(--space-xl)}.btn-icon{margin-right:var(--space-xs)}.btn-loading,button.loading{color:#0000!important}.btn-loading:after,button.loading:after{animation:spin .8s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;content:"";height:1rem;position:absolute;width:1rem}.brand-name .trademark,h1 .trademark,h2 .trademark{font-size:.4em;font-weight:400;margin-left:2px;vertical-align:super}.trademark{font-size:.4em;font-weight:400;margin-left:1px;vertical-align:super}.brand-name .copyright,h1 .copyright,h2 .copyright{font-size:.4em;font-weight:400;margin-left:2px;vertical-align:super}.copyright{font-size:.4em;font-weight:400;margin-left:1px;vertical-align:super}.form-control,.form-group{display:flex;flex-direction:column;margin-bottom:var(--space-lg)}.form-label,label{color:var(--color-text);display:block;font-weight:500;margin-bottom:var(--space-xs)}.form-input,input[type=date],input[type=email],input[type=number],input[type=password],input[type=search],input[type=text],input[type=time]{background-color:#fff;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:.875rem;padding:.625rem;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.form-select,.form-textarea,select,textarea{background-color:#fff;border:none;border-radius:var(--radius-md);font-size:.875rem;padding:.625rem;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.form-input:focus,input[type=date]:focus,input[type=email]:focus,input[type=number]:focus,input[type=password]:focus,input[type=search]:focus,input[type=text]:focus,input[type=time]:focus{border-color:var(--color-primary-light);box-shadow:none;outline:none}.form-select:focus,.form-textarea:focus,select:focus,textarea:focus{border:none;box-shadow:none;outline:none}.form-input::placeholder,.form-textarea::placeholder,input::placeholder,textarea::placeholder{color:#a0aec0}.form-textarea,textarea{min-height:80px;resize:vertical}.form-select,select{appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 24 24' stroke='%23a0aec0'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m19 9-7 7-7-7'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:1rem;padding-right:2rem}.form-checkbox,.form-radio{align-items:center;display:flex;margin-bottom:var(--space-xs)}.form-checkbox input,.form-radio input{margin-right:var(--space-xs)}.form-input.is-invalid,.form-select.is-invalid,.form-textarea.is-invalid,input.is-invalid,select.is-invalid,textarea.is-invalid{border-color:var(--color-error)}.form-input.is-valid,.form-select.is-valid,.form-textarea.is-valid,input.is-valid,select.is-valid,textarea.is-valid{border-color:var(--color-success)}.error-message,.form-error{background-color:#e53e3e1a;border-left:4px solid var(--color-error);border-radius:var(--radius-sm);color:var(--color-error);font-size:.875rem;margin-bottom:var(--space-md);margin-top:var(--space-xs);padding:var(--space-sm) var(--space-md)}.form-hint{color:var(--color-text-light);font-size:.75rem;margin-top:var(--space-xs)}.required,.required-mark{color:var(--color-error);margin-left:2px}.form-group{margin-bottom:var(--space-lg)}.form-grid{grid-gap:var(--space-lg);display:grid;gap:var(--space-lg);grid-template-columns:repeat(2,1fr)}.full-width{grid-column:1/-1}.form-actions{gap:var(--space-md);margin-top:var(--space-xl);position:relative}.form-section{display:flex;flex-direction:column;gap:var(--space-lg)}.form-block{background-color:#fff;border:1px solid var(--color-border);padding:var(--space-lg)}.card,.form-block{border-radius:var(--radius-lg);margin-bottom:var(--space-lg)}.card{background-color:var(--color-card-bg);overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.card-header{border-bottom:1px solid var(--color-border);padding:var(--space-md) var(--space-lg)}.card-body{padding:var(--space-lg)}.card-footer{background-color:#00000003;border-top:1px solid var(--color-border);padding:var(--space-md) var(--space-lg)}.card-title{color:var(--color-text);font-size:1.25rem;font-weight:600;margin:0}.card-subtitle{color:var(--color-text-light);font-size:.875rem;margin-top:var(--space-xs)}.feature-card{border-left:4px solid;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);display:flex;flex-direction:column;height:100%;padding:var(--space-xl);text-decoration:none;transition:transform .3s,box-shadow .3s}.feature-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-5px)}.card-icon{font-size:2.5rem;margin-bottom:var(--space-md)}.card-button{background-color:#fff;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);font-weight:500;margin-top:auto;padding:var(--space-sm) var(--space-md);text-align:center;transition:background-color .2s}.feature-card:hover .card-button{background-color:#fffc}.alert,.error-message,.success-message{align-items:flex-start;border-radius:var(--radius-md);display:flex;margin-bottom:var(--space-lg);padding:var(--space-md) var(--space-lg);position:relative}.alert-icon,.icon-success{align-items:center;display:flex;flex-shrink:0;justify-content:center;margin-right:var(--space-md)}.alert-content{flex-grow:1}.alert-title{font-size:1rem;font-weight:600;margin-bottom:var(--space-xs)}.success-message{background-color:#0cce6b1a;border-left:4px solid var(--color-success);color:#0b6e3a}.info-box{background-color:var(--color-background);border-left:4px solid var(--color-primary);border-radius:var(--radius-md);margin-top:var(--space-lg);padding:var(--space-lg)}.info-box h4{color:var(--color-text);margin-top:0}.info-box h4,.info-box p{margin-bottom:var(--space-sm)}.info-box p{color:var(--color-text-light)}.analysis-tabs,.document-tabs,.tabs{border-bottom:1px solid var(--color-border);display:flex;margin-bottom:var(--space-lg);overflow-x:auto;scrollbar-width:none}.analysis-tabs::-webkit-scrollbar,.document-tabs::-webkit-scrollbar,.tabs::-webkit-scrollbar{display:none}.tab-btn,.tab-button{background:none;border:none;color:var(--color-text-light);cursor:pointer;font-size:.875rem;font-weight:500;padding:var(--space-md) var(--space-lg);position:relative;transition:all .2s ease;white-space:nowrap}.tab-btn.active,.tab-btn:hover,.tab-button.active,.tab-button:hover{color:var(--color-primary)}.tab-btn.active:after,.tab-button.active:after{background-color:var(--color-primary);bottom:-1px;content:"";height:3px;left:0;position:absolute;width:100%}.analysis-content,.tab-content{padding-top:var(--space-md)}.loading-indicator .spinner,.spinner{animation:spin 1s linear infinite;border:2px solid #0000001a;border-left:2px solid var(--color-primary);border-radius:50%;display:inline-block;height:24px;width:24px}.spinner-sm{border-width:1.5px;height:16px;width:16px}.spinner-lg{border-width:3px;height:32px;width:32px}.loading-indicator{align-items:center;display:flex;margin-top:var(--space-md)}.loading-indicator p{color:var(--color-text-light);margin:0 0 0 var(--space-sm)}.loading-overlay{align-items:center;background-color:#fffc;display:flex;flex-direction:column;inset:0;justify-content:center;position:absolute;z-index:10}.loading-text{color:var(--color-text);font-size:.875rem;font-weight:500;margin-top:var(--space-sm)}.loader{color:var(--color-text-light);margin:var(--space-lg) 0;text-align:center}.grid{grid-gap:var(--space-lg);display:grid;gap:var(--space-lg)}.grid-1{grid-template-columns:repeat(1,1fr)}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.flex{display:flex}.flex-column{flex-direction:column}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.items-center{align-items:center}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg,.specialty-grid{gap:var(--space-lg)}.specialty-grid{grid-gap:var(--space-lg);grid-template-columns:repeat(auto-fill,minmax(250px,1fr));margin-bottom:var(--space-xl)}.specialty-card{align-items:center;background-color:var(--color-card-bg);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);display:flex;flex-direction:column;padding:var(--space-xl);text-align:center;transition:transform .2s,box-shadow .2s}.specialty-card.active:hover{box-shadow:var(--shadow-lg);transform:translateY(-5px)}.specialty-card.inactive{opacity:.7}.specialty-icon{font-size:2.5rem;margin-bottom:var(--space-md)}.specialty-card h3{color:var(--color-text);margin:0 0 var(--space-sm) 0}.specialty-card p{color:var(--color-text-light);flex-grow:1;margin-bottom:var(--space-lg)}.specialty-button{border-radius:var(--radius-md);display:inline-block;font-weight:500;padding:var(--space-sm) var(--space-md);transition:background-color .2s}.specialty-button.active{background-color:var(--color-primary);color:#fff}.specialty-button.active:hover{background-color:var(--color-primary-dark)}.specialty-button.inactive{background-color:var(--color-background);color:var(--color-text-light);cursor:not-allowed}.home-page{margin:0 auto;max-width:1200px;padding:var(--space-lg)}.hero-section{margin:var(--space-xl) 0 var(--space-2xl);text-align:center}.hero-section h1{color:var(--color-text);font-size:2.5rem;margin-bottom:var(--space-md)}.hero-section p{color:var(--color-text-light);font-size:1.25rem;margin:0 auto;max-width:700px}.feature-grid{grid-gap:var(--space-xl);display:grid;gap:var(--space-xl);grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.feature-grid,.info-section{margin-bottom:var(--space-2xl)}.info-section{background-color:var(--color-background);border-radius:var(--radius-lg);padding:var(--space-xl)}.info-section h2{color:var(--color-text);margin-bottom:var(--space-xl);text-align:center}.workflow-steps{display:flex;flex-wrap:wrap;gap:var(--space-lg);justify-content:space-between}.step{align-items:flex-start;display:flex;flex:1 1;min-width:250px}.step-number{align-items:center;background-color:var(--color-primary);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-weight:700;height:36px;justify-content:center;margin-right:var(--space-md);width:36px}.step-content h3{color:var(--color-text);margin:0 0 var(--space-xs) 0}.step-content p{color:var(--color-text-light);margin:0}.about-section{background-color:var(--color-background);border-radius:var(--radius-lg);padding:var(--space-xl)}.about-section h2{color:var(--color-text);margin-bottom:var(--space-lg)}.about-section p{color:var(--color-text-light);line-height:1.6}.icon-copy:before{content:"📋"}.icon-download:before{content:"💾"}.icon-print:before{content:"🖨️"}.icon-email:before{content:"📧"}.icon-pdf:before{content:"📄"}.icon-success:before{content:"✓"}.fade-in{animation:fadeIn .3s ease}.mt-lg{margin-top:var(--space-lg)}.mb-lg{margin-bottom:var(--space-lg)}.mt-md{margin-top:var(--space-md)}.mb-md{margin-bottom:var(--space-md)}.query-assistant{margin:0 auto;max-width:800px;padding:var(--space-lg)}.answer-container{background-color:var(--color-card-bg);border-left:4px solid var(--color-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);margin-top:var(--space-lg);padding:var(--space-lg)}.answer-content{color:var(--color-text);line-height:1.6}.query-history{border-top:1px solid var(--color-border);margin-top:var(--space-xl);padding-top:var(--space-lg)}.query-history h4{color:var(--color-text);margin-bottom:var(--space-md)}.query-history ul{list-style:none;margin:0;padding:0}.query-history li{border-bottom:1px solid var(--color-border);padding:var(--space-sm) 0}.query-history small{color:var(--color-text-light);display:block;font-size:.75rem;margin-top:var(--space-xs)}.batch-result-card{border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:1rem;padding:1rem;transition:all .2s ease}.batch-result-card.positive{background-color:#fff5f5;border-color:#fc8181}.batch-result-card.negative{background-color:#f0fff4;border-color:#9ae6b4}.batch-result-card.error{background-color:#fffaf0;border-color:#f6e05e}.batch-summary{background-color:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-top:1.5rem;padding:1.5rem}.batch-summary h4{margin-bottom:1rem;margin-top:0}.batch-summary ul{display:flex;gap:2rem;justify-content:center}.batch-summary .summary-value{color:var(--color-primary);font-size:1.5rem;font-weight:700}.batch-summary .summary-label{color:var(--color-text-light);font-size:.8rem}.results-chat-overlay{align-items:center;animation:fadeIn .3s ease;background-color:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:2rem;position:fixed;right:0;top:0;z-index:1000}.results-chat-modal{background-color:#fff;border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:flex;flex-direction:row;height:90vh;max-width:1400px;overflow:hidden;width:95%}.results-chat-table-pane{background-color:var(--color-background);border-right:1px solid var(--color-border);display:flex;flex:1 1 55%;flex-direction:column;overflow:hidden}.results-chat-conversation-pane{background-color:#fff;display:flex;flex:1 1 45%;flex-direction:column;overflow:hidden}.results-chat-header{align-items:center;background-color:#f8f9fa;border-bottom:1px solid var(--color-border);display:flex;flex-shrink:0;justify-content:space-between;padding:var(--space-md) var(--space-lg)}.results-chat-header h3{color:var(--color-text);font-size:1.1rem;font-weight:600;margin:0}.results-chat-header .close-btn{background:none;border:none;color:var(--color-text-light);cursor:pointer;font-size:1.5rem;line-height:1;transition:color .2s}.results-chat-header .close-btn:hover{color:var(--color-text)}.results-table-container{flex-grow:1;overflow-y:auto;padding:var(--space-sm)}.results-table-container::-webkit-scrollbar{width:8px}.results-table-container::-webkit-scrollbar-track{background:#f1f1f1}.results-table-container::-webkit-scrollbar-thumb{background:#ccc;border-radius:4px}.results-table-container::-webkit-scrollbar-thumb:hover{background:#aaa}.results-table{border-collapse:collapse;font-size:.8rem;width:100%}.results-table td,.results-table th{border-bottom:1px solid var(--color-border);padding:var(--space-sm) var(--space-md);text-align:left;white-space:nowrap}.results-table th{background-color:#e9ecef;color:var(--color-text-light);font-weight:600;position:sticky;top:0;z-index:1}.results-table tbody tr:hover{background-color:#edf2f7}.results-table td[data-value="Cancer Indicators Detected"]:before,.results-table td[data-value=Yes]:before{background-color:var(--color-error);border-radius:50%;content:"";display:inline-block;height:8px;margin-right:8px;vertical-align:middle;width:8px}.results-table td[data-value="No Indicators"]:before,.results-table td[data-value=No]:before{background-color:var(--color-success);border-radius:50%;content:"";display:inline-block;height:8px;margin-right:8px;vertical-align:middle;width:8px}.results-chat-messages{display:flex;flex-direction:column;flex-grow:1;gap:var(--space-md);overflow-y:auto;padding:var(--space-lg)}.results-chat-messages::-webkit-scrollbar{width:8px}.results-chat-messages::-webkit-scrollbar-track{background:#f1f1f1}.results-chat-messages::-webkit-scrollbar-thumb{background:#ccc;border-radius:4px}.results-chat-messages::-webkit-scrollbar-thumb:hover{background:#aaa}.chat-message{display:flex;gap:var(--space-sm);line-height:1.5;max-width:85%}.chat-avatar{align-items:center;background-color:var(--color-border);border-radius:50%;display:flex;flex-shrink:0;font-weight:700;height:32px;justify-content:center;margin-top:4px;overflow:hidden;width:32px}.chat-avatar.ai-avatar{background-color:var(--color-secondary);color:#fff}.chat-avatar.user-avatar{background-color:var(--color-primary);color:#fff}.chat-bubble{border-radius:var(--radius-lg);padding:var(--space-sm) var(--space-md);position:relative}.chat-bubble pre{word-wrap:break-word;background-color:initial;border-radius:0;font-family:inherit;font-size:.9rem;margin:0;padding:0;white-space:pre-wrap}.chat-message.user{align-self:flex-end;flex-direction:row-reverse}.chat-message.user .chat-bubble{background-color:var(--color-primary);border-bottom-right-radius:var(--radius-sm);color:#fff}.chat-message.user .chat-bubble:after{border-color:#0000 #0000 #0000 var(--color-primary);border-style:solid;border-width:10px 0 0 10px;bottom:0;content:"";position:absolute;right:-8px}.chat-message.ai{align-self:flex-start}.chat-message.ai .chat-bubble{background-color:#f1f5f9;border-bottom-left-radius:var(--radius-sm);color:var(--color-text)}.chat-message.ai .chat-bubble:after{border-color:#0000 #f1f5f9 #0000 #0000;border-style:solid;border-width:10px 10px 0 0;bottom:0;content:"";left:-8px;position:absolute}.chat-message.loading{align-self:flex-start}.chat-message.loading .spinner{border-left-color:var(--color-text)}.results-chat-input-form{background-color:#f8f9fa;border-top:1px solid var(--color-border);display:flex;flex-shrink:0;gap:var(--space-md);padding:var(--space-md)}.results-chat-input-form textarea{border:1px solid var(--color-border);border-radius:var(--radius-md);flex-grow:1;font-size:.9rem;padding:var(--space-sm);resize:none;transition:border-color .2s,box-shadow .2s}.results-chat-input-form textarea:focus{border-color:var(--color-primary-light);box-shadow:0 0 0 3px #4299e140;outline:none}.results-chat-input-form button{font-size:1.2rem;height:44px;min-width:44px;padding:var(--space-sm) var(--space-md)}.validation-status{display:inline-block;margin-left:1rem;position:relative}.validation-icon{cursor:help;font-size:1.1rem}.validation-icon.validating .spinner-sm{border-left-color:var(--color-primary)}.validation-tooltip{background-color:#333;border-radius:var(--radius-md);bottom:125%;box-shadow:var(--shadow-lg);color:#fff;font-size:.8rem;left:50%;line-height:1.4;margin-left:-140px;opacity:0;padding:var(--space-md);position:absolute;text-align:left;transition:opacity .3s;visibility:hidden;width:280px;z-index:10}.validation-tooltip:after{border:5px solid #0000;border-top-color:#333;content:"";left:50%;margin-left:-5px;position:absolute;top:100%}.validation-status:hover .validation-tooltip{opacity:1;visibility:visible}.validation-tooltip h5{border-bottom:1px solid #555;color:#fff;font-size:.9rem;margin-bottom:.5rem;padding-bottom:.5rem}.validation-mismatch-warning{background-color:#fffaf0;background-color:var(--color-warning-light,#fffaf0);border:1px solid var(--color-warning);border-left-width:4px;border-radius:var(--radius-md);color:#b45309;color:var(--color-warning-dark,#b45309);margin-top:1rem;padding:var(--space-md);text-align:left}@media (max-width:1024px){.hero-section h1{font-size:2.25rem}.hero-section p{font-size:1.1rem}.results-chat-modal{flex-direction:column;height:95vh}.results-chat-table-pane{border-bottom:1px solid var(--color-border);border-right:none;flex:1 1 40%}.results-chat-conversation-pane{flex:1 1 60%}}@media (max-width:768px){.form-grid,.specialty-grid{grid-template-columns:1fr}.workflow-steps{flex-direction:column}}@media (max-width:576px){.App-header{padding:var(--space-md)}.App-header h1{font-size:1.8rem}.App-header p{font-size:1rem}.hero-section h1{font-size:1.8rem}.hero-section p{font-size:1rem}.specialty-card{padding:var(--space-md)}.results-chat-overlay{padding:0}.results-chat-modal{border-radius:0;height:100vh;width:100%}}.background-jobs{background:#fff;border:1px solid #e5e7eb;border-radius:12px;bottom:20px;box-shadow:0 10px 25px #00000026;max-width:400px;overflow:hidden;position:fixed;right:20px;transition:all .3s ease;z-index:1000}.background-jobs.collapsed{max-height:60px;overflow:hidden}.background-jobs-header{align-items:center;background:#683d94;color:#fff;cursor:pointer;display:flex;justify-content:space-between;padding:16px 20px;-webkit-user-select:none;user-select:none}.background-jobs-header:hover{background:#5a3280}.background-jobs-title{align-items:center;display:flex;font-size:14px;font-weight:600;gap:8px}.background-jobs-count{background:#fff3;border-radius:12px;font-size:12px;font-weight:600;padding:2px 8px}.background-jobs-toggle{background:none;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:4px;transition:background-color .2s ease}.background-jobs-toggle:hover{background:#ffffff1a}.background-jobs-content{max-height:400px;overflow-y:auto;padding:16px}.background-jobs-section{margin-bottom:16px}.background-jobs-section:last-child{margin-bottom:0}.background-jobs-section-title{align-items:center;color:#374151;display:flex;font-size:13px;font-weight:600;gap:6px;margin-bottom:8px}.background-jobs-list{display:flex;flex-direction:column;gap:8px}.background-job-item{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:12px;transition:all .2s ease}.background-job-item:hover{background:#f3f4f6;border-color:#d1d5db}.background-job-item.active{background:#fef3c7;border-color:#f59e0b}.background-job-item.completed{background:#f0fdf4;border-color:#10b981}.background-job-item.error{background:#fef2f2;border-color:#ef4444}.background-job-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.background-job-info{flex:1 1}.background-job-type{color:#1f2937;font-size:13px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.background-job-status{color:#6b7280;font-size:11px;margin-top:2px}.background-job-actions{align-items:center;display:flex;gap:6px}.background-job-progress{background-color:#e5e7eb;border-radius:3px;height:6px;margin-left:8px;overflow:hidden;width:60px}.background-job-progress-bar{background:#683d94;border-radius:3px;height:100%;transition:width .3s ease}.background-job-progress-bar.completed{background:#9c3}.background-job-progress-bar.error{background:#ef4444}.background-job-button{border:none;font-size:10px;padding:4px 8px}.results-chart-popup{align-items:center;animation:fadeIn .3s ease;background-color:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:2rem;position:fixed;right:0;top:0;z-index:1000}.results-chart-content{background-color:#fff;border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;max-height:90vh;max-width:1200px;overflow:hidden;width:95%}.results-chart-header{align-items:center;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;padding:1rem 1.5rem}.results-chart-header h3{font-size:1.25rem;margin:0}.results-chart-content .close-btn{align-self:flex-end;background:none;border:none;color:var(--color-text-light);cursor:pointer;font-size:1.5rem;line-height:1;transition:color .2s}.results-chart-content .close-btn:hover{color:var(--color-text)}.charts-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));overflow-y:auto;padding:1.5rem}.chart-card{background-color:#f8f9fa;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1rem}.chart-title{font-size:1rem;font-weight:600;margin-bottom:1rem;text-align:center}.chart-container{width:100%}.chart-bar-group rect{transition:opacity .2s ease-in-out}.chart-bar-group:hover rect{opacity:.8}.clinical-dossier-compiler{align-items:flex-start;background-color:#fff;border:1px solid #000;border-radius:0;display:flex;gap:var(--spacing-xl);margin:0 auto;max-width:calc(var(--max-content-width) + var(--spacing-2xl));padding:var(--spacing-2xl)}.dossier-main-content{display:flex;flex:1 1;flex-direction:column;gap:var(--spacing-lg);min-width:0}.page-header{margin-bottom:var(--spacing-lg)}.page-header-card{background:linear-gradient(135deg,#683d9414,#99cc3314);border:1px solid #683d9426;border-radius:var(--border-radius-xl);box-shadow:var(--shadow-md);display:flex;flex-direction:column;gap:var(--spacing-md);padding:var(--spacing-xl)}.page-header-text{display:flex;flex-direction:column;gap:var(--spacing-sm)}.page-title{color:var(--color-dark-gray);font-size:var(--font-size-h2);font-weight:var(--font-weight-bold);margin:0}.page-description{color:var(--color-medium-gray);font-size:var(--font-size-body-large);line-height:var(--line-height-body);margin:0}.page-meta{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.status-badge{align-items:center;background-color:var(--color-background-light);border-radius:var(--border-radius-pill);color:var(--color-medium-gray);display:inline-flex;font-size:var(--font-size-body-small);font-weight:var(--font-weight-medium);gap:6px;line-height:1.2;padding:6px 16px}.status-badge-highlight{background-color:var(--color-lite-purple-bg);color:var(--color-primary-purple)}.status-badge-muted{background-color:var(--color-light-gray);color:var(--color-medium-gray)}.status-badge-neutral{background-color:var(--color-white);border:1px solid var(--color-light-gray);color:var(--color-medium-gray)}.status-badge-accent{background-color:var(--color-green-accent-light);color:var(--color-green-accent)}.dossier-section{background-color:var(--color-white);border:1px solid var(--color-light-gray);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:var(--spacing-md);padding:var(--spacing-xl);transition:box-shadow var(--transition-base),transform var(--transition-base)}.dossier-section:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.section-header{align-items:flex-start;display:flex;gap:var(--spacing-lg);justify-content:space-between}.section-title{color:var(--color-dark-gray);font-size:var(--font-size-h3);font-weight:var(--font-weight-bold);margin:0}.section-description{color:var(--color-medium-gray);font-size:var(--font-size-body);line-height:var(--line-height-body);margin:var(--spacing-xs) 0 0}.category-select,.form-input,.form-select{background-color:var(--color-white);border:1px solid var(--color-light-gray);border-radius:var(--border-radius-md);color:var(--color-dark-gray);font-size:var(--font-size-body);padding:12px 16px;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);width:100%}.category-select:focus,.form-input:focus,.form-select:focus{border-color:var(--color-primary-purple);box-shadow:0 0 0 4px #683d941f;outline:none}.category-select{min-width:200px}.dossier-types-grid{grid-gap:var(--spacing-md);display:grid;gap:var(--spacing-md);grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.dossier-type-card{align-items:flex-start;background-color:var(--color-white);border:1px solid var(--color-light-gray);border-radius:var(--border-radius-lg);color:var(--color-dark-gray);cursor:pointer;display:flex;flex-direction:column;gap:var(--spacing-sm);padding:var(--spacing-lg);text-align:left;transition:border-color var(--transition-base),box-shadow var(--transition-base),transform var(--transition-base)}.dossier-type-card:hover{border-color:var(--color-primary-purple);box-shadow:var(--shadow-md);transform:translateY(-2px)}.dossier-type-card.selected{background:linear-gradient(135deg,#683d9414,#683d9405);border-color:var(--color-primary-purple);box-shadow:var(--shadow-lg)}.dossier-type-card:focus-visible{outline:2px solid var(--color-primary-purple);outline-offset:2px}.dossier-type-header{align-items:center;display:flex;gap:var(--spacing-sm)}.dossier-type-icon{align-items:center;background-color:var(--color-lite-purple-bg);border-radius:var(--border-radius-md);display:flex;height:32px;justify-content:center;width:32px}.dossier-type-icon img{height:100%;object-fit:contain;width:100%}.dossier-type-name{color:var(--color-dark-gray);font-size:var(--font-size-h4);font-weight:var(--font-weight-bold);margin:0}.dossier-type-description{color:var(--color-medium-gray);font-size:var(--font-size-body);line-height:var(--line-height-body);margin:0}.dropzone{background-color:var(--color-background-light);border:2px dashed var(--color-light-gray);border-radius:var(--border-radius-lg);cursor:pointer;padding:var(--spacing-2xl) var(--spacing-xl);text-align:center;transition:border-color var(--transition-base),background-color var(--transition-base),box-shadow var(--transition-base)}.dropzone.active,.dropzone:hover{background-color:#683d9414;border-color:var(--color-primary-purple);box-shadow:var(--shadow-md)}.dropzone-icon{color:var(--color-primary-purple);font-size:48px;margin-bottom:var(--spacing-sm)}.dropzone-title{color:var(--color-dark-gray);font-size:var(--font-size-body-large);font-weight:var(--font-weight-medium);margin:0 0 var(--spacing-xs)}.dropzone-subtitle{color:var(--color-medium-gray);font-size:var(--font-size-body);margin:0}.validation-metrics{grid-gap:var(--spacing-md);display:grid;gap:var(--spacing-md);grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.validation-metric-card{background-color:var(--color-background-light);border:1px solid var(--color-light-gray);border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-md)}.metric-label{color:var(--color-medium-gray);font-size:var(--font-size-body-small);letter-spacing:.08em;text-transform:uppercase}.metric-value{color:var(--color-dark-gray);font-size:var(--font-size-h3);font-weight:var(--font-weight-bold)}.document-checklist-grid{grid-gap:var(--spacing-md);display:grid;gap:var(--spacing-md);grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.checklist-item{align-items:center;background-color:var(--color-white);border:1px solid var(--color-light-gray);border-radius:var(--border-radius-md);display:flex;gap:var(--spacing-sm);justify-content:space-between;padding:var(--spacing-md);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.checklist-item.status-success{background-color:var(--color-green-accent-light);border-color:var(--color-green-accent)}.checklist-item.status-warning{background-color:var(--color-warning-bg);border-color:var(--color-warning)}.checklist-item.status-danger{background-color:var(--color-error-bg);border-color:var(--color-error)}.checklist-item.status-neutral{background-color:var(--color-background-light);border-color:var(--color-light-gray)}.checklist-item-content{display:flex;flex-direction:column;gap:var(--spacing-xs)}.checklist-item-name{color:var(--color-dark-gray);font-size:var(--font-size-body-large);font-weight:var(--font-weight-bold)}.checklist-item-required{color:var(--color-error);margin-left:4px}.checklist-item-count{color:var(--color-medium-gray)}.checklist-item-count,.status-chip{font-size:var(--font-size-body-small)}.status-chip{align-items:center;border-radius:var(--border-radius-pill);display:inline-flex;font-weight:var(--font-weight-medium);padding:6px 12px}.status-chip.status-success{background-color:var(--color-green-accent-light);color:var(--color-green-accent)}.status-chip.status-warning{background-color:var(--color-warning-bg);color:var(--color-warning)}.status-chip.status-danger{background-color:var(--color-error-bg);color:var(--color-error)}.status-chip.status-neutral{background-color:var(--color-light-gray);color:var(--color-medium-gray)}.documents-list{background-color:var(--color-white);border:1px solid var(--color-light-gray);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;gap:var(--spacing-md)}.document-item,.documents-list{display:flex;padding:var(--spacing-md)}.document-item{align-items:flex-start;border:1px solid #0000;border-radius:var(--border-radius-md);gap:var(--spacing-lg);justify-content:space-between;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.document-item:hover{border-color:#683d9433;box-shadow:var(--shadow-sm)}.document-info{flex:1 1;flex-direction:column;min-width:0}.document-info,.document-name-row{display:flex;gap:var(--spacing-sm)}.document-name-row{align-items:baseline;flex-wrap:wrap;justify-content:space-between}.document-name{color:var(--color-dark-gray);font-size:var(--font-size-body-large);font-weight:var(--font-weight-bold)}.document-size{color:var(--color-medium-gray);font-size:var(--font-size-body-small)}.document-tags{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.tag{align-items:center;background-color:var(--color-background-light);border-radius:var(--border-radius-pill);color:var(--color-medium-gray);display:inline-flex;font-size:var(--font-size-body-small);font-weight:var(--font-weight-medium);padding:4px 12px}.tag-category{background-color:var(--color-lite-purple-bg);color:var(--color-primary-purple)}.tag-muted{background-color:var(--color-light-gray)}.tag-muted,.tag-neutral{color:var(--color-medium-gray)}.tag-neutral{background-color:var(--color-background-card)}.tag-success{background-color:var(--color-green-accent-light);color:var(--color-green-accent)}.tag-warning{background-color:var(--color-warning-bg);color:var(--color-warning)}.tag-danger{background-color:var(--color-error-bg);color:var(--color-error)}.tag-light{background-color:var(--color-white);border:1px solid var(--color-light-gray);color:var(--color-medium-gray)}.document-validation{word-wrap:break-word;background-color:var(--color-background-light);border-radius:var(--border-radius-md);display:block;max-width:100%;overflow-wrap:break-word;padding:var(--spacing-sm)}.validation-description{color:var(--color-medium-gray);margin:0}.validation-description,.validation-recommendation{display:inline;font-size:var(--font-size-body-small);line-height:1.4}.validation-recommendation{color:var(--color-dark-gray);font-style:italic;margin:0 0 0 6px}.document-actions{align-items:center;display:flex;gap:var(--spacing-sm)}.btn{font-weight:var(--font-weight-medium);transition:background-color var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}.btn:disabled{box-shadow:none;opacity:.6;transform:none}.btn-small{font-size:var(--font-size-body-small);padding:8px 16px}.btn-lg{padding:var(--spacing-md) var(--spacing-xl)}.btn-primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.btn-secondary{border:1px solid var(--color-light-gray);color:var(--color-medium-gray)}.btn-secondary:hover:not(:disabled){border-color:var(--color-primary-purple);color:var(--color-primary-purple)}.btn-accent:hover:not(:disabled){box-shadow:var(--shadow-md)}.btn-outline-primary{background-color:var(--color-white);border:1px solid var(--color-primary-purple);color:var(--color-primary-purple)}.btn-outline-primary:hover:not(:disabled){background-color:var(--color-primary-purple);color:var(--color-white)}.btn-outline-danger{background-color:var(--color-white);border:1px solid var(--color-error);color:var(--color-error)}.btn-outline-danger:hover:not(:disabled){background-color:var(--color-error);color:var(--color-white)}.btn-block{justify-content:center;width:100%}.dossier-cta{background-color:var(--color-white);border:1px solid var(--color-light-gray);text-align:center}.dossier-cta-content{align-items:center;display:flex;flex-direction:column;gap:var(--spacing-md)}.dossier-cta-title{color:var(--color-dark-gray);font-size:var(--font-size-h3);font-weight:var(--font-weight-bold);margin:0}.dossier-cta-copy{color:var(--color-medium-gray);font-size:var(--font-size-body);line-height:var(--line-height-body);margin:0;max-width:520px}.info-message,.warning-message{border-radius:var(--border-radius-md);font-size:var(--font-size-body-small);font-weight:var(--font-weight-medium);margin:0;padding:12px 16px;text-align:left;width:100%}.warning-message{background-color:var(--color-warning-bg);border-left:4px solid var(--color-warning);color:var(--color-warning)}.info-message{background-color:var(--color-info-bg);border-left:4px solid var(--color-info);color:var(--color-primary-purple)}.dossier-sidebar{background-color:var(--color-background-light);border:1px solid var(--color-light-gray);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:var(--spacing-xl);min-height:600px;padding:var(--spacing-2xl);position:sticky;top:calc(var(--spacing-xl));width:420px}.sidebar-title{color:var(--color-dark-gray);font-size:var(--font-size-h3);font-weight:var(--font-weight-bold);margin:0}.sidebar-card{background-color:var(--color-white);border:1px solid var(--color-light-gray);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);padding:var(--spacing-lg)}.sidebar-card-title{color:var(--color-dark-gray);font-size:var(--font-size-h4);font-weight:var(--font-weight-bold);margin:0 0 var(--spacing-sm)}.sidebar-card-info{color:var(--color-medium-gray);font-size:var(--font-size-body);line-height:var(--line-height-body);margin:0 0 var(--spacing-xs)}.sidebar-card-info strong{color:var(--color-dark-gray)}.sidebar-documents-list{display:flex;flex-direction:column;gap:var(--spacing-xs);max-height:500px;overflow-y:auto;padding-right:var(--spacing-sm)}.sidebar-document-item{align-items:center;border-bottom:1px solid var(--color-light-gray);display:flex;gap:var(--spacing-sm);padding-bottom:var(--spacing-xs)}.sidebar-document-item:last-child{border-bottom:none}.sidebar-document-bullet{color:var(--color-primary-purple);font-weight:var(--font-weight-bold)}.sidebar-document-name{color:var(--color-dark-gray);font-size:var(--font-size-body)}.sidebar-empty{background-color:var(--color-white);border:1px dashed #683d944d;border-radius:var(--border-radius-lg);color:var(--color-medium-gray);display:flex;flex-direction:column;gap:var(--spacing-sm);padding:var(--spacing-xl);text-align:center}.sidebar-empty-icon{align-items:center;display:flex;font-size:56px;justify-content:center}.sidebar-empty-text{font-size:var(--font-size-body);line-height:var(--line-height-body);margin:0}@media (max-width:1200px){.clinical-dossier-compiler{max-width:none;padding:var(--spacing-xl)}}@media (max-width:1024px){.clinical-dossier-compiler{flex-direction:column}.dossier-sidebar{position:static;width:100%}}@media (max-width:768px){.clinical-dossier-compiler,.dossier-section,.page-header-card{padding:var(--spacing-lg)}.section-header{align-items:flex-start;flex-direction:column}.document-checklist-grid,.validation-metrics{grid-template-columns:1fr}.document-item{align-items:flex-start;flex-direction:column}.document-actions{align-items:stretch;flex-direction:column;width:100%}.btn-outline-danger,.btn-outline-primary,.btn-small,.category-select{width:100%}}@media (max-width:480px){.clinical-dossier-compiler{padding:var(--spacing-md)}.page-title{font-size:var(--font-size-h3)}}.skin-disease-detector{margin:0 auto;max-width:1400px;padding:2rem;position:relative}.metadata-inputs{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}@media (max-width:768px){.skin-disease-detector{padding:1rem}.page-header h1{font-size:28px}.analysis-tabs{flex-direction:column}.batch-summary ul,.metadata-inputs{grid-template-columns:1fr}}.lung-cancer-detector{margin:0 auto;max-width:1400px;padding:2rem;position:relative}.page-navigation{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.breadcrumb{color:#6a6a6a;font-family:Inter,sans-serif;font-size:15px;gap:.5rem}.breadcrumb a{color:#683d94;text-decoration:none;transition:color .2s ease}.breadcrumb a:hover{color:#5a2d84}.breadcrumb .separator{color:#d0d0d0}.page-header{margin-bottom:2rem}.page-header h1{color:#2d2d2d;font-family:Inter,sans-serif;font-size:36px;font-weight:700;margin:0 0 .5rem}.page-header p{color:#8a8a8a;font-family:Inter,sans-serif;font-size:15px;margin:0}.analysis-tabs{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:2rem}.analysis-content{display:flex;flex-direction:column;gap:1.5rem}.upload-card{background-color:#fff;border-radius:12px;box-shadow:0 4px 6px #00000012;padding:30px}.upload-card h3{font-size:20px;margin-bottom:1rem}.upload-card h3,.upload-card h4{color:#2d2d2d;font-family:Inter,sans-serif;font-weight:600;margin-top:0}.upload-card h4{font-size:18px;margin-bottom:.75rem}.form-label{color:#4a4a4a;font-weight:500;margin-bottom:5px}.form-label,.form-textarea{font-family:Inter,sans-serif;font-size:15px}.form-textarea{border:1px solid #d1d5db;border-radius:6px;padding:12px;transition:border-color .2s ease;width:100%}.form-textarea:focus{border-color:#683d94;box-shadow:0 0 0 3px #683d941a;outline:none}.prediction-results{margin-top:30px}.batch-files-container{margin-top:20px}.batch-result-card{background-color:#fff;border:1px solid #000;border-radius:8px;margin-bottom:15px;padding:20px;transition:border-color .2s ease}.batch-result-card:hover{border-color:#683d94}.batch-result-card.positive{background-color:#fdf8fd;border-left:4px solid #683d94}.batch-result-card.negative{border-left:4px solid #d0d0d0}.batch-result-card.error{background-color:#fef5f5;border-left:4px solid #e53e3e}.batch-summary{background-color:#fff;border-radius:12px;box-shadow:0 4px 6px #00000012;margin-top:20px;padding:25px}.batch-summary h4{color:#2d2d2d;font-family:Inter,sans-serif;font-size:20px;font-weight:600;margin:0 0 20px}.batch-summary ul{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));list-style:none;margin:0;padding:0}.batch-summary li{background-color:#f5f5f5;border-radius:8px;padding:20px;text-align:center}.summary-value{color:#683d94;font-family:Inter,sans-serif;font-size:32px;font-weight:700;margin-bottom:8px}.summary-label{color:#6a6a6a;font-family:Inter,sans-serif;font-size:15px}.transcript-container{margin-top:20px}.transcript-box{background-color:#fff;border-radius:12px;box-shadow:0 4px 6px #00000012;padding:20px}.transcript-box h4{color:#2d2d2d;font-family:Inter,sans-serif;font-size:18px;font-weight:600;margin:0 0 15px}.transcript-text{color:#4a4a4a;font-family:Inter,sans-serif;font-size:15px;line-height:1.6;margin:0;white-space:pre-wrap}@media (max-width:768px){.lung-cancer-detector{padding:1rem}.page-header h1{font-size:28px}.analysis-tabs{flex-direction:column}.batch-summary ul{grid-template-columns:1fr}}.disease-diagnosis-container{margin:0 auto;max-width:1200px;padding:2rem;position:relative}.diagnosis-header{margin-bottom:2rem;text-align:left}.diagnosis-header h1{color:#2d2d2d;font-family:Inter,sans-serif;font-size:36px;font-weight:700;margin-bottom:.5rem;text-align:left}.diagnosis-header p{color:#8a8a8a;font-family:Inter,sans-serif;font-size:15px;margin:0}.specialty-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.specialty-card{background-color:#fff;border:1px solid #000;border-radius:0;box-shadow:0 1px 3px #0000001a;padding:1.5rem;transition:box-shadow .2s ease,transform .2s ease}.specialty-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.specialty-card.inactive{opacity:.6}.specialty-card.inactive:hover{box-shadow:0 1px 3px #0000001a;transform:none}.specialty-card-header{align-items:center;display:flex;gap:1rem;margin-bottom:1rem}.specialty-icon{align-items:center;background-color:#f5f5f5;border-radius:0;color:#683d94;display:flex;flex-shrink:0;font-size:14px;font-weight:600;height:40px;justify-content:center;min-width:40px;width:40px}.specialty-card-header h3{color:#2d2d2d;font-family:Inter,sans-serif;font-size:18px;font-weight:600;line-height:1;margin:0;padding:0}.specialty-description{color:#6a6a6a;font-family:Inter,sans-serif;font-size:15px;line-height:1.5;margin:0 0 1.5rem}.specialty-button{display:block;text-align:center;text-decoration:none;width:100%}@media (max-width:768px){.disease-diagnosis-container{padding:1rem}.diagnosis-header h1{font-size:28px}.specialty-grid{grid-template-columns:1fr}}.user-management-container{background-color:#fff;border:1px solid #000;border-radius:0;margin-top:2rem;padding:2rem}.user-management-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:2rem;padding-bottom:1rem}.user-management-header h2{color:#2d2d2d;font-size:24px;font-weight:600;margin:0}.user-management-loading{color:#666;padding:2rem;text-align:center}.user-management-error{background-color:#ffebee;border:1px solid #ef5350;border-radius:0;color:#c62828;margin-bottom:1rem;padding:1rem}.users-table-container{overflow-x:auto}.users-table{border-collapse:collapse;width:100%}.users-table thead{background-color:#f5f5f5}.users-table th{border-bottom:2px solid #000;font-weight:600;text-align:left}.users-table td,.users-table th{color:#2d2d2d;font-size:14px;padding:1rem}.users-table td{border-bottom:1px solid #e0e0e0}.users-table tbody tr:hover{background-color:#fafafa}.role-badge{border-radius:0;display:inline-block;font-size:12px;font-weight:600;padding:.25rem .75rem;white-space:nowrap}.role-admin{background-color:#683d94;color:#fff}.role-full_access{background-color:#4caf50;color:#fff}.role-custom{background-color:#ff9800;color:#fff}.role-diagnosis_only,.role-protocol_only,.role-query_only,.role-regulatory_only{background-color:#2196f3;color:#fff}.action-buttons{display:flex;gap:.5rem}.btn-cancel,.btn-create-user,.btn-delete,.btn-edit,.btn-submit{border:none;border-radius:0;cursor:pointer;font-family:Inter,sans-serif;font-size:14px;font-weight:600;padding:.5rem 1rem;transition:all .2s ease}.btn-create-user{background-color:#683d94;color:#fff}.btn-create-user:hover{background-color:#552f7a}.btn-edit{background-color:#2196f3;color:#fff}.btn-edit:hover{background-color:#1976d2}.btn-delete{background-color:#f44336;color:#fff}.btn-delete:hover{background-color:#d32f2f}.btn-cancel{background-color:#e0e0e0;color:#2d2d2d}.btn-cancel:hover{background-color:#bdbdbd}.btn-submit{background-color:#683d94;color:#fff}.btn-submit:hover{background-color:#552f7a}.modal-overlay{z-index:1000}.modal-content{background-color:#fff;border:2px solid #000;border-radius:0;max-height:90vh;max-width:700px;overflow-y:auto;width:90%}.modal-header{border-bottom:1px solid #e0e0e0;padding:1.5rem}.modal-header h3{color:#2d2d2d;font-size:20px;font-weight:600;margin:0}.modal-close{color:#666;font-size:28px}.modal-close:hover{color:#000}.user-form{padding:1.5rem}.form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr;margin-bottom:1rem}.form-group{display:flex;flex-direction:column}.form-group label{color:#2d2d2d;font-size:14px;font-weight:600;margin-bottom:.5rem}.form-group input,.form-group select{border:1px solid #e0e0e0;border-radius:0;font-family:Inter,sans-serif;font-size:14px;padding:.75rem}.form-group input:focus,.form-group select:focus{border-color:#683d94;outline:none}.form-group input:disabled{background-color:#f5f5f5;cursor:not-allowed}.permissions-grid{grid-gap:.75rem;background-color:#fafafa;border:1px solid #e0e0e0;border-radius:0;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));padding:1rem}.permission-checkbox{align-items:center;color:#2d2d2d;cursor:pointer;display:flex;font-size:14px;gap:.5rem}.permission-checkbox input[type=checkbox]{cursor:pointer;height:18px;width:18px}.form-actions{border-top:1px solid #e0e0e0;display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1.5rem}@media (max-width:768px){.user-management-container{padding:1rem}.user-management-header{align-items:flex-start;flex-direction:column;gap:1rem}.form-row{grid-template-columns:1fr}.users-table{font-size:12px}.users-table td,.users-table th{padding:.5rem}.action-buttons{flex-direction:column}.modal-content{width:95%}}.profile-container{margin:0 auto;max-width:1400px;padding:var(--spacing-2xl)}.profile-loading{align-items:center;color:#683d94;display:flex;font-size:18px;justify-content:center;min-height:400px}.profile-header{align-items:center;background-color:#fff;border:1px solid #000;border-radius:0;display:flex;gap:2rem;margin-bottom:2rem;padding:2rem}.profile-avatar{align-items:center;background:linear-gradient(135deg,#683d94,#8a5ab8);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:48px;font-weight:600;height:100px;justify-content:center;width:100px}.profile-header-info{flex:1 1}.profile-name{color:#2d2d2d;font-size:32px;font-weight:400;margin:0 0 .5rem}.profile-role-badge{background-color:#683d94;border-radius:0;color:#fff;display:inline-block;font-size:14px;font-weight:600;margin:0;padding:.5rem 1rem}.profile-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(500px,1fr));margin-bottom:2rem}.profile-card{background-color:#fff;border:1px solid #000;border-radius:0;padding:2rem}.profile-card-title{border-bottom:1px solid #e0e0e0;color:#2d2d2d;font-size:24px;font-weight:600;margin:0 0 1.5rem;padding-bottom:1rem}.profile-info-group{display:flex;flex-direction:column;gap:1rem}.profile-info-item{align-items:center;border-bottom:1px solid #f5f5f5;display:flex;justify-content:space-between;padding:.75rem 0}.profile-info-item:last-child{border-bottom:none}.profile-info-label{color:#666;font-size:14px;font-weight:600}.profile-info-value{color:#2d2d2d;font-size:14px;font-weight:500;text-align:right}.profile-status-badge{border-radius:0;font-size:12px;font-weight:600;padding:.25rem .75rem}.profile-status-active{background-color:#4caf50;color:#fff}.profile-permissions-card{grid-column:1/-1;margin-bottom:2rem}.profile-permissions-subtitle{color:#666;font-size:14px;margin:0 0 1.5rem}.profile-modules-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.profile-module-item{align-items:center;background-color:#fafafa;border:1px solid #e0e0e0;border-radius:0;display:flex;gap:.75rem;padding:1rem;transition:all .2s ease}.profile-module-accessible{background-color:#f1f8f4;border-color:#4caf50}.profile-module-accessible .profile-module-indicator{background-color:#4caf50;color:#fff}.profile-module-restricted{background-color:#f5f5f5;border-color:#e0e0e0;opacity:.6}.profile-module-restricted .profile-module-indicator{background-color:#e0e0e0;color:#999}.profile-module-indicator{align-items:center;border-radius:50%;display:flex;flex-shrink:0;font-size:14px;font-weight:600;height:28px;justify-content:center;width:28px}.profile-module-name{color:#2d2d2d;font-size:14px;font-weight:500}.profile-stats-card{grid-column:1/-1}.profile-stats-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.profile-stat-item{background-color:#fafafa;border:1px solid #e0e0e0;border-radius:0;padding:1.5rem;text-align:center}.profile-stat-value{color:#683d94;font-size:36px;font-weight:600;margin-bottom:.5rem}.profile-stat-label{color:#666;font-size:14px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}@media (max-width:768px){.profile-container{padding:var(--spacing-lg)}.profile-header{flex-direction:column;text-align:center}.profile-name{font-size:24px}.profile-grid,.profile-modules-grid,.profile-stats-grid{grid-template-columns:1fr}.profile-avatar{font-size:36px;height:80px;width:80px}}.sidebar{background-color:#5a5a5a;display:flex;flex-direction:column;height:100vh;left:0!important;overflow-x:hidden;overflow-y:auto;position:fixed!important;top:0;transition:width .3s cubic-bezier(.4,0,.2,1)!important;width:280px!important;z-index:1010}.sidebar-collapsed{width:70px!important}.sidebar-brand{align-items:center;background-color:#683d94;border-bottom:none;display:flex;min-height:110px;padding:32px 24px}.sidebar-brand-text{color:var(--color-white);font-size:24px;font-weight:400;letter-spacing:.5px;overflow:hidden;white-space:nowrap}.sidebar-collapsed .sidebar-brand{justify-content:center;padding:32px 12px}.sidebar-collapsed .sidebar-brand-text{display:none}.sidebar-nav{flex:1 1;list-style:none;margin:0;padding:0}.sidebar-nav li{margin:0}.sidebar-nav-item{align-items:center;color:var(--color-white);display:flex;gap:var(--spacing-sm);padding:var(--spacing-sm);position:relative;text-decoration:none!important;transition:all var(--transition-fast);white-space:nowrap}.sidebar-nav-item:hover{background-color:#683d94}.sidebar-nav-item-active,.sidebar-nav-item:hover{color:var(--color-white)!important;text-decoration:none!important}.sidebar-nav-item-active{background-color:initial;border-left:4px solid #683d94;padding-left:calc(var(--spacing-sm) - 4px)}.sidebar-nav-icon{align-items:center;display:flex;height:24px;justify-content:center;min-width:24px;width:24px}.sidebar-nav-icon img{height:100%;object-fit:contain;width:100%}.sidebar-nav-label{color:var(--color-white)!important;font-size:var(--font-size-body);font-weight:var(--font-weight-medium);text-decoration:none!important}.sidebar-collapsed .sidebar-nav-label{display:none}.sidebar-toggle{align-items:center;background-color:#fff3;border:none;border-radius:var(--border-radius-md);bottom:var(--spacing-md);color:var(--color-white);cursor:pointer;display:flex;font-size:16px;height:32px;justify-content:center;position:absolute;right:var(--spacing-sm);transition:all var(--transition-fast);width:32px}.sidebar-toggle:hover{background-color:#ffffff4d}.sidebar-mobile-toggle{background-color:var(--color-primary-purple);border:none;border-radius:var(--border-radius-md);box-shadow:var(--shadow-lg);color:var(--color-white);cursor:pointer;display:none;font-size:24px;height:48px;left:var(--spacing-md);position:fixed;top:var(--spacing-md);width:48px;z-index:calc(var(--z-index-fixed) + 1)}.sidebar-overlay{display:none}@media (max-width:768px){.sidebar{transform:translateX(-100%);width:240px}.sidebar-collapsed{transform:translateX(0)}.sidebar-collapsed .sidebar-nav-label{display:block}.sidebar-mobile-toggle{align-items:center;display:flex;justify-content:center}.sidebar-overlay{background-color:#00000080;bottom:0;display:block;left:0;position:fixed;right:0;top:0;z-index:calc(var(--z-index-fixed) - 1)}.sidebar-toggle{display:none}}.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-track{background:#ffffff0d}.sidebar::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.sidebar::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.header{background-color:#fff;border-bottom:1px solid #000;height:110px;left:280px!important;position:fixed!important;right:0;top:0;transition:left .3s cubic-bezier(.4,0,.2,1)!important;z-index:var(--z-index-sticky)}.header.header-collapsed{left:70px!important}.header-content{align-items:center;display:flex;height:100%;justify-content:space-between;max-width:100%;padding:0 var(--spacing-lg)}.header-left{flex:1 1;min-width:0}.header-logo-container{align-items:center;display:flex}.header-logo{height:60px;object-fit:contain;width:auto}.header-title-container{display:flex;flex-direction:column;gap:8px}.header-title{color:#6a6a6a;font-size:32px;font-weight:300;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-subtitle{color:#8a8a8a;font-size:15px;font-weight:400;line-height:1.5;margin:0}.header-right{align-items:center;display:flex;gap:var(--spacing-md)}.header-user-section{align-items:center;display:flex;gap:1rem}.header-user-email{color:#666;font-size:14px;font-weight:500}.header-logout-btn{background-color:#683d94;border:none;border-radius:0;color:#fff;cursor:pointer;font-family:Inter,sans-serif;font-size:14px;font-weight:600;padding:.5rem 1rem;transition:background-color .2s ease}.header-logout-btn:hover{background-color:#552f7a}.header-brand{color:#683d94;font-size:36px;font-weight:400;letter-spacing:2px;position:relative;white-space:nowrap}.header-brand:after{background-color:#9c3;border-radius:50%;content:"";height:8px;position:absolute;right:-8px;top:0;width:8px}@media (max-width:768px){.header{left:0}.header-content{padding:0 var(--spacing-md);padding-left:72px}.header-logo{height:50px}.header-brand,.header-title{font-size:var(--font-size-h4)}.breadcrumb{font-size:var(--font-size-body-small)}}@media (max-width:480px){.header-brand{display:none}}.login-container{align-items:center;background:linear-gradient(135deg,#f5f5f5,#e8e8e8);display:flex;justify-content:center;min-height:100vh;padding:2rem}.login-card{background:#fff;border:1px solid #000;border-radius:0;box-shadow:0 4px 12px #0000001a;max-width:450px;padding:3rem;width:100%}.login-header{margin-bottom:2rem;text-align:center}.login-header h1{color:#683d94;font-family:Inter,sans-serif;font-size:36px;font-weight:700;margin:0 0 .5rem}.login-header p{color:#666;font-family:Inter,sans-serif;font-size:15px;margin:0}.login-form{display:flex;flex-direction:column;gap:1.5rem}.login-error{background-color:#ffebee;border:1px solid #d32f2f;border-radius:0;color:#d32f2f;font-size:14px;padding:.75rem;text-align:center}.login-form .form-group{display:flex;flex-direction:column;gap:.5rem}.login-form label{color:#2d2d2d;font-weight:600}.login-form input,.login-form label{font-family:Inter,sans-serif;font-size:15px}.login-form input{border:1px solid #e0e0e0;border-radius:0;padding:.75rem;transition:border-color .2s ease}.login-form input:focus{border-color:#683d94;outline:none}.login-button{background-color:#683d94;border:none;border-radius:0;color:#fff;cursor:pointer;font-family:Inter,sans-serif;font-size:16px;font-weight:600;margin-top:.5rem;padding:.875rem;transition:background-color .2s ease}.login-button:hover:not(:disabled){background-color:#552f7a}.login-button:disabled{background-color:#a48bbf;cursor:not-allowed}.login-demo-credentials{border-top:1px solid #e0e0e0;margin-top:2rem;padding-top:2rem}.demo-title{color:#666;font-family:Inter,sans-serif;font-size:14px;font-weight:600;margin:0 0 1rem;text-align:center}.demo-users{display:flex;flex-direction:column;gap:.5rem}.demo-user{background-color:#f5f5f5;border-radius:0;color:#666;font-family:Inter,sans-serif;font-size:13px;padding:.5rem}.demo-user strong{color:#683d94;font-weight:600}@media (max-width:768px){.login-card{padding:2rem}.login-header h1{font-size:28px}}.card{background-color:var(--color-white);border:var(--border-width) solid var(--color-light-gray);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);padding:var(--spacing-lg);transition:all var(--transition-base)}.card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.card-highlighted{background-color:var(--color-lite-purple);border:none}.card-compact{padding:var(--spacing-sm)}.card-large{padding:var(--spacing-2xl)}.btn{align-items:center;border:none;border-radius:var(--border-radius-md);cursor:pointer;display:inline-flex;font-family:var(--font-family-primary);font-size:var(--font-size-body);font-weight:var(--font-weight-bold);gap:var(--spacing-xs);justify-content:center;padding:12px var(--spacing-md);text-decoration:none;transition:all var(--transition-fast)}.btn:disabled{cursor:not-allowed;opacity:.5}.btn-primary{background-color:var(--color-primary-purple);color:var(--color-white)}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-purple-dark)}.btn-secondary{background-color:var(--color-white);border:var(--border-width-thick) solid var(--color-primary-purple);color:var(--color-primary-purple)}.btn-secondary:hover:not(:disabled){background-color:var(--color-primary-purple);color:var(--color-white)}.btn-accent{background-color:var(--color-green-accent);color:var(--color-white)}.btn-accent:hover:not(:disabled){background-color:var(--color-green-accent-dark)}.btn-link{background-color:initial;color:var(--color-primary-purple);font-weight:var(--font-weight-regular);padding:0}.btn-link:hover:not(:disabled){text-decoration:underline}.btn-link-accent{color:var(--color-green-accent)}.btn-sm{font-size:var(--font-size-body-small);padding:8px var(--spacing-sm)}.btn-lg{font-size:var(--font-size-body-large);padding:var(--spacing-sm) var(--spacing-lg)}.form-group{margin-bottom:var(--spacing-md)}.form-label{display:block;font-weight:var(--font-weight-medium);margin-bottom:var(--spacing-xs)}.form-input,.form-label,.form-select,.form-textarea{color:var(--color-dark-gray);font-size:var(--font-size-body)}.form-input,.form-select,.form-textarea{background-color:var(--color-white);border:var(--border-width) solid var(--color-light-gray);border-radius:var(--border-radius-md);font-family:var(--font-family-primary);padding:12px var(--spacing-sm);transition:all var(--transition-fast);width:100%}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--color-primary-purple);box-shadow:0 0 0 3px #683d941a;outline:none}.form-input::placeholder{color:var(--color-medium-gray)}.form-textarea{min-height:100px;resize:vertical}.form-helper-text{color:var(--color-medium-gray);display:block;font-size:var(--font-size-body-small);margin-top:var(--spacing-xs)}.form-error{border-color:var(--color-error)}.form-error-text{color:var(--color-error);display:block;font-size:var(--font-size-body-small);margin-top:var(--spacing-xs)}.form-checkbox,.form-radio{accent-color:var(--color-primary-purple);cursor:pointer;height:20px;width:20px}.form-check-label{align-items:center;cursor:pointer;display:flex;gap:var(--spacing-xs)}.alert{align-items:flex-start;border-left:var(--border-width-accent) solid;border-radius:var(--border-radius-md);display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);padding:var(--spacing-sm)}.alert-success{background-color:var(--color-success-bg);border-color:var(--color-green-accent);color:var(--color-success)}.alert-error{background-color:var(--color-error-bg);border-color:var(--color-error);color:var(--color-error)}.alert-warning{background-color:var(--color-warning-bg);border-color:var(--color-warning);color:var(--color-warning)}.alert-info{background-color:var(--color-info-bg);border-color:var(--color-info);color:var(--color-info)}.table{background-color:var(--color-white);border-collapse:collapse;border-radius:var(--border-radius-lg);overflow:hidden;width:100%}.table thead{background-color:var(--color-background-card)}.table th{font-size:var(--font-size-body);font-weight:var(--font-weight-bold);text-align:left}.table td,.table th{border-bottom:1px solid #000;color:var(--color-dark-gray);padding:var(--spacing-sm)}.table tbody tr:hover{background-color:var(--color-background)}.table tbody tr:last-child td{border-bottom:none}.badge{align-items:center;border-radius:var(--border-radius-pill);display:inline-flex;font-size:var(--font-size-body-small);font-weight:var(--font-weight-medium);padding:4px 12px;white-space:nowrap}.badge-primary{background-color:var(--color-lite-purple-bg);color:var(--color-primary-purple)}.badge-success{background-color:var(--color-green-accent-light);color:var(--color-green-accent-dark)}.badge-error{background-color:var(--color-error-bg);color:var(--color-error)}.badge-warning{background-color:var(--color-warning-bg);color:var(--color-warning)}.breadcrumb{color:var(--color-medium-gray);font-size:var(--font-size-body);margin-bottom:var(--spacing-md)}.breadcrumb,.breadcrumb-item{align-items:center;display:flex;gap:var(--spacing-xs)}.breadcrumb-link{color:var(--color-medium-gray);text-decoration:none;transition:color var(--transition-fast)}.breadcrumb-link:hover{color:var(--color-primary-purple)}.breadcrumb-current{color:var(--color-dark-gray);font-weight:var(--font-weight-medium)}.breadcrumb-separator{color:var(--color-light-gray)}.tabs{border-bottom:var(--border-width-thick) solid var(--color-light-gray);display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.tab{background:none;border:none;border-bottom:var(--border-width-thick) solid #0000;color:var(--color-medium-gray);cursor:pointer;font-size:var(--font-size-body);font-weight:var(--font-weight-medium);margin-bottom:calc(var(--border-width-thick)*-1);padding:var(--spacing-sm) var(--spacing-md);transition:all var(--transition-fast)}.tab:hover{color:var(--color-dark-gray)}.tab-active{border-bottom-color:var(--color-primary-purple);color:var(--color-primary-purple)}.modal-overlay{align-items:center;animation:fadeIn var(--transition-base);background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:var(--z-index-modal-backdrop)}.modal{animation:slideUp var(--transition-base);background-color:var(--color-white);border-radius:var(--border-radius-lg);max-height:90vh;max-width:600px;overflow-y:auto;padding:var(--spacing-lg);position:relative;width:90%;z-index:var(--z-index-modal)}.modal-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--spacing-md)}.modal-title{color:var(--color-dark-gray);font-size:var(--font-size-h3);font-weight:var(--font-weight-bold)}.modal-close{align-items:center;background:none;border:none;border-radius:var(--border-radius-md);color:var(--color-medium-gray);cursor:pointer;display:flex;font-size:24px;height:32px;justify-content:center;padding:0;transition:all var(--transition-fast);width:32px}.modal-close:hover{background-color:var(--color-background);color:var(--color-dark-gray)}.modal-body{margin-bottom:var(--spacing-md)}.modal-footer{display:flex;gap:var(--spacing-sm);justify-content:flex-end}.tooltip{display:inline-block;position:relative}.tooltip-text{background-color:var(--color-dark-gray);border-radius:var(--border-radius-sm);bottom:125%;color:var(--color-white);font-size:var(--font-size-body-small);left:50%;opacity:0;padding:var(--spacing-xs) var(--spacing-sm);pointer-events:none;position:absolute;text-align:center;transform:translateX(-50%);transition:opacity var(--transition-fast);visibility:hidden;white-space:nowrap;z-index:var(--z-index-tooltip)}.tooltip:hover .tooltip-text{opacity:1;transition-delay:.5s;visibility:visible}.spinner{animation:spin .8s linear infinite;border-top:3px solid var(--color-light-gray);border:3px solid var(--color-light-gray);border-radius:50%;border-top-color:var(--color-primary-purple);height:40px;width:40px}.spinner-sm{border-width:2px;height:20px;width:20px}.spinner-lg{border-width:4px;height:60px;width:60px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.skeleton{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,var(--color-light-gray) 25%,var(--color-background) 50%,var(--color-light-gray) 75%);background-size:200% 100%;border-radius:var(--border-radius-md)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn var(--transition-slow)}.slide-up{animation:slideUp var(--transition-base)}.App{background-color:var(--color-background);min-height:100vh}.app-main-wrapper{display:flex;flex-direction:column;margin-left:280px!important;min-height:100vh;position:relative;transition:margin-left .3s cubic-bezier(.4,0,.2,1)!important}.app-main-wrapper.wrapper-collapsed{margin-left:70px!important}.app-main-content{background-color:#f5f5f5;flex:1 1;margin-top:110px;min-height:calc(100vh - 110px);padding:0}.app-footer{background-color:var(--color-white);border-top:var(--border-width) solid var(--color-light-gray);margin-top:var(--spacing-2xl);padding:var(--spacing-md) var(--spacing-xl);text-align:center}.app-footer p{color:var(--color-medium-gray);font-size:var(--font-size-body-small);margin:0}.copyright{font-family:Arial,sans-serif}.loading-container{align-items:center;background-color:var(--color-background);display:flex;flex-direction:column;gap:var(--spacing-md);justify-content:center;min-height:100vh}.loading-container p{color:var(--color-medium-gray);font-size:var(--font-size-body-large);margin:0}@media (max-width:768px){.app-main-wrapper{margin-left:0}.app-footer,.app-main-content{padding:var(--spacing-md)}}.container{margin:0 auto;max-width:var(--max-content-width);padding:0 var(--spacing-md)}:focus-visible{outline:2px solid var(--color-primary-purple);outline-offset:2px}html{scroll-behavior:smooth}::selection{background-color:var(--color-primary-purple);color:var(--color-white)}::-moz-selection{background-color:var(--color-primary-purple);color:var(--color-white)}
/*# sourceMappingURL=main.8f160de8.css.map*/