Spaces:
Sleeping
Sleeping
| /* Smart Summarizer - Main Stylesheet */ | |
| @import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;600;700&display=swap'); | |
| /* Ink Wash Color Palette */ | |
| :root { | |
| --charcoal: #4A4A4A; | |
| --cool-gray: #CBCBCB; | |
| --soft-ivory: #FFFFE3; | |
| --slate-blue: #6D8196; | |
| --card-bg: #F5F0F6; | |
| --white: #ffffff; | |
| } | |
| * { | |
| margin: 0; | |
| padding: 0; | |
| box-sizing: border-box; | |
| } | |
| body { | |
| font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif; | |
| background: var(--soft-ivory); | |
| color: var(--charcoal); | |
| line-height: 1.6; | |
| } | |
| /* Top Navigation Bar */ | |
| .top-navbar { | |
| background: var(--slate-blue); | |
| padding: 1rem 3rem; | |
| display: flex; | |
| justify-content: space-between; | |
| align-items: center; | |
| position: sticky; | |
| top: 0; | |
| z-index: 1000; | |
| box-shadow: 0 2px 10px rgba(74, 74, 74, 0.1); | |
| } | |
| .navbar-logo { | |
| display: flex; | |
| align-items: center; | |
| gap: 0.75rem; | |
| color: white; | |
| font-size: 1.1rem; | |
| font-weight: 600; | |
| text-decoration: none; | |
| transition: opacity 0.3s ease; | |
| } | |
| .navbar-logo:hover { | |
| opacity: 0.9; | |
| } | |
| .logo-circle { | |
| width: 36px; | |
| height: 36px; | |
| background: white; | |
| color: var(--slate-blue); | |
| border-radius: 50%; | |
| display: flex; | |
| align-items: center; | |
| justify-content: center; | |
| font-weight: bold; | |
| font-size: 1.2rem; | |
| } | |
| /* Mobile Menu Toggle */ | |
| .mobile-menu-toggle { | |
| display: none; | |
| background: none; | |
| border: none; | |
| color: white; | |
| font-size: 1.5rem; | |
| cursor: pointer; | |
| padding: 0.5rem; | |
| border-radius: 4px; | |
| transition: background-color 0.3s ease; | |
| } | |
| .mobile-menu-toggle:hover { | |
| background: rgba(255, 255, 255, 0.1); | |
| } | |
| .navbar-links { | |
| display: flex; | |
| gap: 2.5rem; | |
| align-items: center; | |
| } | |
| .nav-item { | |
| color: rgba(255, 255, 255, 0.8); | |
| font-size: 0.95rem; | |
| font-weight: 500; | |
| text-decoration: none; | |
| transition: color 0.3s ease; | |
| cursor: pointer; | |
| display: flex; | |
| align-items: center; | |
| gap: 0.5rem; | |
| } | |
| .nav-item i { | |
| font-size: 0.9rem; | |
| } | |
| .nav-item:hover { | |
| color: white; | |
| } | |
| .nav-item.active { | |
| color: white; | |
| } | |
| /* Hero Section */ | |
| .hero-container { | |
| text-align: center; | |
| padding: 5rem 2rem 3rem 2rem; | |
| max-width: 900px; | |
| margin: 0 auto; | |
| } | |
| .hero-title { | |
| font-family: 'Playfair Display', serif; | |
| font-size: 4.5rem; | |
| font-weight: 400; | |
| color: var(--charcoal); | |
| line-height: 1.1; | |
| margin-bottom: 0.5rem; | |
| letter-spacing: -0.02em; | |
| } | |
| .hero-subtitle { | |
| font-family: 'Playfair Display', serif; | |
| font-size: 4.5rem; | |
| font-weight: 400; | |
| color: var(--slate-blue); | |
| line-height: 1.1; | |
| margin-bottom: 2rem; | |
| letter-spacing: -0.02em; | |
| } | |
| .hero-description { | |
| font-size: 1.1rem; | |
| color: var(--slate-blue); | |
| line-height: 1.6; | |
| margin-bottom: 0.5rem; | |
| } | |
| /* CTA Buttons */ | |
| .cta-container { | |
| display: flex; | |
| gap: 1rem; | |
| justify-content: center; | |
| margin: 3rem 0 4rem 0; | |
| } | |
| .btn-primary { | |
| background: var(--charcoal); | |
| color: white; | |
| padding: 1rem 2.5rem; | |
| border: none; | |
| border-radius: 8px; | |
| font-size: 1rem; | |
| font-weight: 500; | |
| cursor: pointer; | |
| transition: all 0.3s ease; | |
| text-decoration: none; | |
| display: inline-block; | |
| } | |
| .btn-primary:hover { | |
| background: #3a3a3a; | |
| transform: translateY(-2px); | |
| box-shadow: 0 4px 12px rgba(74, 74, 74, 0.3); | |
| } | |
| .btn-secondary { | |
| background: transparent; | |
| color: var(--charcoal); | |
| padding: 1rem 2.5rem; | |
| border: 1px solid var(--cool-gray); | |
| border-radius: 8px; | |
| font-size: 1rem; | |
| font-weight: 500; | |
| cursor: pointer; | |
| transition: all 0.3s ease; | |
| text-decoration: none; | |
| display: inline-block; | |
| } | |
| .btn-secondary:hover { | |
| border-color: var(--slate-blue); | |
| color: var(--slate-blue); | |
| } | |
| /* Model Cards */ | |
| .models-container { | |
| max-width: 1100px; | |
| margin: 0 auto; | |
| padding: 0 2rem 4rem 2rem; | |
| } | |
| .cards-grid { | |
| display: grid; | |
| grid-template-columns: repeat(3, 1fr); | |
| gap: 2rem; | |
| } | |
| .model-card { | |
| background: var(--card-bg); | |
| border-radius: 16px; | |
| padding: 2.5rem 2rem; | |
| text-align: left; | |
| transition: all 0.3s ease; | |
| border: 1px solid rgba(203, 203, 203, 0.3); | |
| } | |
| .model-card:hover { | |
| transform: translateY(-4px); | |
| box-shadow: 0 8px 24px rgba(74, 74, 74, 0.12); | |
| } | |
| .model-emoji { | |
| font-size: 2.5rem; | |
| margin-bottom: 1.5rem; | |
| display: block; | |
| } | |
| .model-name { | |
| font-size: 1.6rem; | |
| font-weight: 600; | |
| color: var(--charcoal); | |
| margin-bottom: 1rem; | |
| } | |
| .model-desc { | |
| font-size: 0.95rem; | |
| color: var(--slate-blue); | |
| line-height: 1.6; | |
| } | |
| /* Page Container */ | |
| .page-container { | |
| max-width: 1200px; | |
| margin: 0 auto; | |
| padding: 3rem 2rem; | |
| } | |
| .page-title { | |
| font-family: 'Playfair Display', serif; | |
| font-size: 2.5rem; | |
| font-weight: 600; | |
| color: var(--charcoal); | |
| margin-bottom: 0.5rem; | |
| } | |
| .page-subtitle { | |
| font-size: 1.1rem; | |
| color: var(--slate-blue); | |
| margin-bottom: 3rem; | |
| } | |
| /* Content Grid */ | |
| .content-grid { | |
| display: grid; | |
| grid-template-columns: 1fr 1fr; | |
| gap: 2rem; | |
| margin-bottom: 2rem; | |
| } | |
| .input-section, .output-section { | |
| background: white; | |
| border-radius: 12px; | |
| padding: 2rem; | |
| border: 1px solid rgba(203, 203, 203, 0.3); | |
| } | |
| .section-label { | |
| font-size: 0.85rem; | |
| font-weight: 600; | |
| color: var(--slate-blue); | |
| text-transform: uppercase; | |
| letter-spacing: 1px; | |
| margin-bottom: 1rem; | |
| } | |
| .text-input { | |
| width: 100%; | |
| min-height: 300px; | |
| padding: 1rem; | |
| border: 1px solid var(--cool-gray); | |
| border-radius: 8px; | |
| font-size: 0.95rem; | |
| font-family: inherit; | |
| resize: vertical; | |
| background: #FAFAFA; | |
| } | |
| .text-input:focus { | |
| outline: none; | |
| border-color: var(--slate-blue); | |
| } | |
| .char-count { | |
| display: flex; | |
| justify-content: space-between; | |
| margin-top: 0.5rem; | |
| font-size: 0.85rem; | |
| color: var(--slate-blue); | |
| } | |
| .output-preview { | |
| min-height: 300px; | |
| padding: 2rem; | |
| border: 2px dashed var(--cool-gray); | |
| border-radius: 8px; | |
| display: flex; | |
| flex-direction: column; | |
| align-items: center; | |
| justify-content: center; | |
| text-align: center; | |
| color: var(--slate-blue); | |
| background: var(--soft-ivory); | |
| } | |
| .output-preview .icon { | |
| font-size: 3rem; | |
| margin-bottom: 1rem; | |
| } | |
| .output-text { | |
| width: 100%; | |
| min-height: 300px; | |
| padding: 1rem; | |
| border: 1px solid var(--cool-gray); | |
| border-radius: 8px; | |
| font-size: 0.95rem; | |
| line-height: 1.8; | |
| background: white; | |
| } | |
| /* Controls */ | |
| .controls-section { | |
| display: flex; | |
| gap: 1rem; | |
| align-items: center; | |
| margin-top: 2rem; | |
| } | |
| .model-select { | |
| padding: 0.75rem 1.5rem; | |
| border: 1px solid var(--cool-gray); | |
| border-radius: 8px; | |
| font-size: 0.95rem; | |
| background: white; | |
| color: var(--charcoal); | |
| cursor: pointer; | |
| } | |
| .btn-generate { | |
| background: var(--charcoal); | |
| color: white; | |
| padding: 0.75rem 2rem; | |
| border: none; | |
| border-radius: 8px; | |
| font-size: 0.95rem; | |
| font-weight: 500; | |
| cursor: pointer; | |
| transition: all 0.3s ease; | |
| } | |
| .btn-generate:hover { | |
| background: #3a3a3a; | |
| transform: translateY(-2px); | |
| box-shadow: 0 4px 12px rgba(74, 74, 74, 0.3); | |
| } | |
| .btn-generate:disabled { | |
| background: var(--cool-gray); | |
| cursor: not-allowed; | |
| transform: none; | |
| } | |
| /* Footer */ | |
| .footer { | |
| background: var(--charcoal); | |
| color: var(--cool-gray); | |
| padding: 2rem 3rem; | |
| margin-top: 4rem; | |
| display: flex; | |
| justify-content: space-between; | |
| align-items: center; | |
| } | |
| .footer-left { | |
| display: flex; | |
| align-items: center; | |
| gap: 0.5rem; | |
| } | |
| .footer-right { | |
| display: flex; | |
| gap: 2rem; | |
| align-items: center; | |
| } | |
| .footer-link { | |
| color: var(--cool-gray); | |
| text-decoration: none; | |
| font-size: 0.9rem; | |
| transition: color 0.3s ease; | |
| display: flex; | |
| align-items: center; | |
| gap: 0.5rem; | |
| } | |
| .footer-link i { | |
| font-size: 1rem; | |
| } | |
| .footer-link:hover { | |
| color: white; | |
| } | |
| /* Loading Spinner */ | |
| .spinner { | |
| border: 3px solid rgba(109, 129, 150, 0.3); | |
| border-top: 3px solid var(--slate-blue); | |
| border-radius: 50%; | |
| width: 40px; | |
| height: 40px; | |
| animation: spin 1s linear infinite; | |
| margin: 2rem auto; | |
| } | |
| @keyframes spin { | |
| 0% { transform: rotate(0deg); } | |
| 100% { transform: rotate(360deg); } | |
| } | |
| /* Responsive Design - Mobile First Approach */ | |
| /* Mobile Styles (320px - 768px) */ | |
| @media (max-width: 768px) { | |
| /* Navigation */ | |
| .top-navbar { | |
| padding: 1rem; | |
| position: relative; | |
| } | |
| .mobile-menu-toggle { | |
| display: block; | |
| } | |
| .navbar-links { | |
| display: none; | |
| position: absolute; | |
| top: 100%; | |
| left: 0; | |
| right: 0; | |
| background: var(--slate-blue); | |
| flex-direction: column; | |
| gap: 0; | |
| padding: 1rem 0; | |
| box-shadow: 0 4px 12px rgba(74, 74, 74, 0.2); | |
| border-radius: 0 0 12px 12px; | |
| } | |
| .navbar-links.mobile-open { | |
| display: flex; | |
| } | |
| .nav-item { | |
| padding: 1rem 2rem; | |
| width: 100%; | |
| border-bottom: 1px solid rgba(255, 255, 255, 0.1); | |
| justify-content: flex-start; | |
| } | |
| .nav-item:last-child { | |
| border-bottom: none; | |
| } | |
| .nav-item:hover { | |
| background: rgba(255, 255, 255, 0.1); | |
| } | |
| /* Hero Section */ | |
| .hero-container { | |
| padding: 3rem 1rem 2rem 1rem; | |
| } | |
| .hero-title, .hero-subtitle { | |
| font-size: 2.5rem; | |
| line-height: 1.2; | |
| } | |
| .hero-description { | |
| font-size: 1rem; | |
| padding: 0 1rem; | |
| } | |
| /* CTA Buttons */ | |
| .cta-container { | |
| flex-direction: column; | |
| align-items: center; | |
| gap: 0.75rem; | |
| margin: 2rem 0 3rem 0; | |
| } | |
| .btn-primary, .btn-secondary { | |
| width: 100%; | |
| max-width: 280px; | |
| text-align: center; | |
| padding: 1rem 1.5rem; | |
| } | |
| /* Model Cards */ | |
| .models-container { | |
| padding: 0 1rem 3rem 1rem; | |
| } | |
| .cards-grid { | |
| grid-template-columns: 1fr; | |
| gap: 1.5rem; | |
| } | |
| .model-card { | |
| padding: 2rem 1.5rem; | |
| } | |
| .model-name { | |
| font-size: 1.4rem; | |
| } | |
| /* Page Container */ | |
| .page-container { | |
| padding: 2rem 1rem; | |
| } | |
| .page-title { | |
| font-size: 2rem; | |
| text-align: center; | |
| } | |
| .page-subtitle { | |
| font-size: 1rem; | |
| text-align: center; | |
| margin-bottom: 2rem; | |
| } | |
| /* Content Grid */ | |
| .content-grid { | |
| grid-template-columns: 1fr; | |
| gap: 1.5rem; | |
| } | |
| .input-section, .output-section { | |
| padding: 1.5rem; | |
| } | |
| .text-input, .output-text { | |
| min-height: 200px; | |
| font-size: 0.9rem; | |
| } | |
| /* Controls */ | |
| .controls-section { | |
| flex-direction: column; | |
| gap: 1rem; | |
| align-items: stretch; | |
| } | |
| .model-select, .btn-generate { | |
| width: 100%; | |
| padding: 1rem; | |
| font-size: 1rem; | |
| } | |
| /* Comparison Grid */ | |
| .comparison-grid { | |
| grid-template-columns: 1fr; | |
| gap: 1.5rem; | |
| } | |
| .comparison-header { | |
| padding: 1rem; | |
| } | |
| .comparison-result { | |
| padding: 1.5rem; | |
| min-height: 200px; | |
| } | |
| .summary-metrics { | |
| flex-direction: column; | |
| gap: 1rem; | |
| } | |
| /* Evaluation Grid */ | |
| .evaluation-grid { | |
| grid-template-columns: 1fr; | |
| gap: 1.5rem; | |
| } | |
| .chart-section { | |
| padding: 1.5rem; | |
| } | |
| /* Batch Processing */ | |
| .batch-controls { | |
| flex-direction: column; | |
| gap: 0.75rem; | |
| } | |
| .batch-table-container { | |
| overflow-x: auto; | |
| } | |
| .batch-table { | |
| min-width: 600px; | |
| font-size: 0.8rem; | |
| } | |
| .batch-table th, | |
| .batch-table td { | |
| padding: 0.75rem 0.5rem; | |
| } | |
| .source-preview { | |
| max-width: 150px; | |
| } | |
| .model-badges { | |
| flex-direction: column; | |
| gap: 0.25rem; | |
| } | |
| .action-buttons { | |
| flex-direction: column; | |
| gap: 0.25rem; | |
| } | |
| /* Footer */ | |
| .footer { | |
| padding: 1.5rem 1rem; | |
| flex-direction: column; | |
| gap: 1rem; | |
| text-align: center; | |
| } | |
| .footer-right { | |
| gap: 1rem; | |
| flex-wrap: wrap; | |
| justify-content: center; | |
| } | |
| /* Input Tabs */ | |
| .input-tabs { | |
| flex-wrap: wrap; | |
| gap: 0.25rem; | |
| } | |
| .tab-btn { | |
| flex: 1; | |
| min-width: 120px; | |
| text-align: center; | |
| padding: 0.75rem 1rem; | |
| font-size: 0.85rem; | |
| } | |
| /* Upload Area */ | |
| .upload-area { | |
| padding: 2rem 1rem; | |
| } | |
| .upload-icon { | |
| font-size: 2.5rem; | |
| } | |
| .file-info { | |
| flex-direction: column; | |
| gap: 1rem; | |
| text-align: center; | |
| } | |
| } | |
| /* Tablet Styles (769px - 1024px) */ | |
| @media (min-width: 769px) and (max-width: 1024px) { | |
| /* Navigation */ | |
| .top-navbar { | |
| padding: 1rem 2rem; | |
| } | |
| .navbar-links { | |
| gap: 1.5rem; | |
| } | |
| /* Hero Section */ | |
| .hero-container { | |
| padding: 4rem 2rem 3rem 2rem; | |
| } | |
| .hero-title, .hero-subtitle { | |
| font-size: 3.5rem; | |
| } | |
| /* Model Cards */ | |
| .cards-grid { | |
| grid-template-columns: repeat(2, 1fr); | |
| gap: 1.5rem; | |
| } | |
| /* Content Grid */ | |
| .content-grid { | |
| gap: 1.5rem; | |
| } | |
| /* Comparison Grid */ | |
| .comparison-grid { | |
| grid-template-columns: repeat(2, 1fr); | |
| gap: 1.5rem; | |
| } | |
| /* Evaluation Grid */ | |
| .evaluation-grid { | |
| grid-template-columns: 1fr; | |
| gap: 1.5rem; | |
| } | |
| /* Batch Table */ | |
| .batch-table { | |
| font-size: 0.9rem; | |
| } | |
| .source-preview { | |
| max-width: 300px; | |
| } | |
| } | |
| /* Large Desktop Styles (1025px+) */ | |
| @media (min-width: 1025px) { | |
| .cards-grid { | |
| grid-template-columns: repeat(3, 1fr); | |
| } | |
| .comparison-grid { | |
| grid-template-columns: repeat(3, 1fr); | |
| } | |
| .evaluation-grid { | |
| grid-template-columns: 1fr 1fr; | |
| } | |
| } | |
| /* Extra Small Mobile (320px - 480px) */ | |
| @media (max-width: 480px) { | |
| .hero-title, .hero-subtitle { | |
| font-size: 2rem; | |
| } | |
| .page-title { | |
| font-size: 1.75rem; | |
| } | |
| .model-card { | |
| padding: 1.5rem 1rem; | |
| } | |
| .input-section, .output-section { | |
| padding: 1rem; | |
| } | |
| .text-input, .output-text { | |
| min-height: 150px; | |
| } | |
| .comparison-result { | |
| padding: 1rem; | |
| min-height: 150px; | |
| } | |
| .chart-section { | |
| padding: 1rem; | |
| } | |
| .batch-table { | |
| font-size: 0.75rem; | |
| } | |
| .batch-table th, | |
| .batch-table td { | |
| padding: 0.5rem 0.25rem; | |
| } | |
| } | |
| /* Landscape Mobile */ | |
| @media (max-width: 768px) and (orientation: landscape) { | |
| .hero-container { | |
| padding: 2rem 1rem; | |
| } | |
| .hero-title, .hero-subtitle { | |
| font-size: 2.25rem; | |
| } | |
| .cta-container { | |
| flex-direction: row; | |
| justify-content: center; | |
| margin: 1.5rem 0 2rem 0; | |
| } | |
| .btn-primary, .btn-secondary { | |
| width: auto; | |
| min-width: 140px; | |
| } | |
| } | |
| /* High DPI Displays */ | |
| @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { | |
| .logo-circle { | |
| border: 0.5px solid rgba(255, 255, 255, 0.1); | |
| } | |
| .model-card { | |
| border-width: 0.5px; | |
| } | |
| .input-section, .output-section { | |
| border-width: 0.5px; | |
| } | |
| } | |
| /* Touch Device Optimizations */ | |
| @media (hover: none) and (pointer: coarse) { | |
| .btn-primary, .btn-secondary, .btn-generate { | |
| min-height: 44px; | |
| padding: 1rem 1.5rem; | |
| } | |
| .nav-item { | |
| min-height: 44px; | |
| display: flex; | |
| align-items: center; | |
| padding: 0.5rem; | |
| } | |
| .tab-btn { | |
| min-height: 44px; | |
| } | |
| .model-select { | |
| min-height: 44px; | |
| } | |
| .btn-icon { | |
| min-height: 44px; | |
| min-width: 44px; | |
| } | |
| } | |
| /* Print Styles */ | |
| @media print { | |
| .top-navbar, | |
| .footer, | |
| .controls-section, | |
| .cta-container { | |
| display: none; | |
| } | |
| .page-container { | |
| max-width: none; | |
| padding: 0; | |
| } | |
| .content-grid { | |
| grid-template-columns: 1fr; | |
| } | |
| .model-card, | |
| .input-section, | |
| .output-section { | |
| border: 1px solid #ccc; | |
| break-inside: avoid; | |
| } | |
| } | |
| /* Accessibility Improvements */ | |
| @media (prefers-reduced-motion: reduce) { | |
| * { | |
| animation-duration: 0.01ms ; | |
| animation-iteration-count: 1 ; | |
| transition-duration: 0.01ms ; | |
| } | |
| } | |
| /* Comparison Page Styles */ | |
| .comparison-input-section { | |
| background: white; | |
| border-radius: 12px; | |
| padding: 2rem; | |
| border: 1px solid rgba(203, 203, 203, 0.3); | |
| margin-bottom: 2rem; | |
| } | |
| .comparison-grid { | |
| display: grid; | |
| grid-template-columns: repeat(3, 1fr); | |
| gap: 2rem; | |
| margin-top: 2rem; | |
| } | |
| .comparison-card { | |
| background: white; | |
| border-radius: 12px; | |
| border: 1px solid rgba(203, 203, 203, 0.3); | |
| overflow: hidden; | |
| } | |
| .comparison-header { | |
| display: flex; | |
| align-items: center; | |
| gap: 0.75rem; | |
| padding: 1.5rem; | |
| background: var(--card-bg); | |
| border-bottom: 1px solid rgba(203, 203, 203, 0.3); | |
| } | |
| .model-indicator { | |
| width: 12px; | |
| height: 12px; | |
| border-radius: 50%; | |
| display: inline-block; | |
| } | |
| .comparison-header h3 { | |
| margin: 0; | |
| font-size: 1.3rem; | |
| font-weight: 600; | |
| color: var(--charcoal); | |
| } | |
| .comparison-result { | |
| padding: 2rem; | |
| min-height: 250px; | |
| display: flex; | |
| flex-direction: column; | |
| align-items: center; | |
| justify-content: center; | |
| } | |
| .awaiting-text { | |
| color: var(--cool-gray); | |
| font-size: 0.95rem; | |
| text-align: center; | |
| } | |
| .summary-content { | |
| line-height: 1.8; | |
| color: var(--charcoal); | |
| margin-bottom: 1.5rem; | |
| text-align: left; | |
| width: 100%; | |
| } | |
| .summary-metrics { | |
| display: flex; | |
| gap: 1.5rem; | |
| padding-top: 1rem; | |
| border-top: 1px solid rgba(203, 203, 203, 0.3); | |
| width: 100%; | |
| } | |
| .metric-item { | |
| display: flex; | |
| flex-direction: column; | |
| gap: 0.25rem; | |
| } | |
| .metric-label { | |
| font-size: 0.75rem; | |
| color: var(--slate-blue); | |
| text-transform: uppercase; | |
| letter-spacing: 0.5px; | |
| font-weight: 600; | |
| } | |
| .metric-value { | |
| font-size: 1.1rem; | |
| color: var(--charcoal); | |
| font-weight: 600; | |
| } | |
| @media (max-width: 1024px) { | |
| .comparison-grid { | |
| grid-template-columns: 1fr; | |
| } | |
| } | |
| /* Input Tabs */ | |
| .input-tabs { | |
| display: flex; | |
| gap: 0.5rem; | |
| margin-bottom: 1rem; | |
| } | |
| .tab-btn { | |
| padding: 0.75rem 1.5rem; | |
| border: 1px solid var(--cool-gray); | |
| background: white; | |
| color: var(--charcoal); | |
| border-radius: 8px 8px 0 0; | |
| cursor: pointer; | |
| font-size: 0.9rem; | |
| font-weight: 500; | |
| transition: all 0.3s ease; | |
| } | |
| .tab-btn:hover { | |
| background: var(--card-bg); | |
| } | |
| .tab-btn.active { | |
| background: var(--slate-blue); | |
| color: white; | |
| border-color: var(--slate-blue); | |
| } | |
| .tab-content { | |
| display: none; | |
| } | |
| .tab-content.active { | |
| display: block; | |
| } | |
| /* File Upload Area */ | |
| .upload-area { | |
| border: 2px dashed var(--cool-gray); | |
| border-radius: 8px; | |
| padding: 3rem 2rem; | |
| text-align: center; | |
| cursor: pointer; | |
| transition: all 0.3s ease; | |
| background: transparent; | |
| } | |
| .upload-area:hover { | |
| border-color: var(--slate-blue); | |
| background: rgba(109, 129, 150, 0.05); | |
| } | |
| .upload-icon { | |
| font-size: 3rem; | |
| margin-bottom: 1rem; | |
| } | |
| .upload-hint { | |
| font-size: 0.85rem; | |
| color: var(--slate-blue); | |
| margin-top: 0.5rem; | |
| } | |
| .file-info { | |
| display: flex; | |
| justify-content: space-between; | |
| align-items: center; | |
| padding: 1rem; | |
| background: var(--card-bg); | |
| border-radius: 8px; | |
| margin-top: 1rem; | |
| } | |
| .btn-remove { | |
| background: #ef4444; | |
| color: white; | |
| border: none; | |
| padding: 0.5rem 1rem; | |
| border-radius: 6px; | |
| cursor: pointer; | |
| font-size: 0.85rem; | |
| transition: all 0.3s ease; | |
| } | |
| .btn-remove:hover { | |
| background: #dc2626; | |
| } | |
| /* Evaluation Page Styles */ | |
| .evaluation-grid { | |
| display: grid; | |
| grid-template-columns: 1fr 1fr; | |
| gap: 2rem; | |
| margin-top: 2rem; | |
| } | |
| .chart-section { | |
| background: white; | |
| border-radius: 12px; | |
| padding: 2rem; | |
| border: 1px solid rgba(203, 203, 203, 0.3); | |
| } | |
| .chart-container { | |
| width: 100%; | |
| } | |
| .chart-title { | |
| font-size: 1.3rem; | |
| font-weight: 600; | |
| color: var(--charcoal); | |
| margin-bottom: 2rem; | |
| text-align: center; | |
| } | |
| .metrics-explanation { | |
| display: flex; | |
| flex-direction: column; | |
| gap: 1.5rem; | |
| } | |
| .section-title { | |
| font-size: 1.3rem; | |
| font-weight: 600; | |
| color: var(--charcoal); | |
| margin-bottom: 0.5rem; | |
| } | |
| .metric-card { | |
| background: white; | |
| border-radius: 12px; | |
| padding: 1.5rem; | |
| border: 1px solid rgba(203, 203, 203, 0.3); | |
| } | |
| .metric-header { | |
| display: flex; | |
| align-items: center; | |
| gap: 0.75rem; | |
| margin-bottom: 0.75rem; | |
| } | |
| .metric-indicator { | |
| width: 12px; | |
| height: 12px; | |
| border-radius: 50%; | |
| } | |
| .metric-card h4 { | |
| font-size: 1.1rem; | |
| font-weight: 600; | |
| color: var(--charcoal); | |
| margin: 0; | |
| } | |
| .metric-card p { | |
| font-size: 0.9rem; | |
| color: var(--slate-blue); | |
| line-height: 1.6; | |
| margin: 0; | |
| } | |
| .insight-box { | |
| background: var(--charcoal); | |
| color: white; | |
| border-radius: 12px; | |
| padding: 1.5rem; | |
| margin-top: 1rem; | |
| } | |
| .insight-box h4 { | |
| font-size: 0.85rem; | |
| font-weight: 600; | |
| letter-spacing: 1px; | |
| margin-bottom: 0.75rem; | |
| color: var(--cool-gray); | |
| } | |
| .insight-box p { | |
| font-size: 0.95rem; | |
| line-height: 1.6; | |
| margin: 0; | |
| font-style: italic; | |
| } | |
| /* Batch Page Styles */ | |
| .batch-controls { | |
| display: flex; | |
| gap: 1rem; | |
| justify-content: flex-end; | |
| margin-bottom: 2rem; | |
| } | |
| .batch-table-container { | |
| background: white; | |
| border-radius: 12px; | |
| border: 1px solid rgba(203, 203, 203, 0.3); | |
| overflow: hidden; | |
| margin-bottom: 2rem; | |
| } | |
| .batch-table { | |
| width: 100%; | |
| border-collapse: collapse; | |
| } | |
| .batch-table thead { | |
| background: var(--card-bg); | |
| } | |
| .batch-table th { | |
| padding: 1rem 1.5rem; | |
| text-align: left; | |
| font-size: 0.75rem; | |
| font-weight: 600; | |
| color: var(--slate-blue); | |
| text-transform: uppercase; | |
| letter-spacing: 1px; | |
| border-bottom: 1px solid rgba(203, 203, 203, 0.3); | |
| } | |
| .batch-table td { | |
| padding: 1.5rem; | |
| border-bottom: 1px solid rgba(203, 203, 203, 0.1); | |
| color: var(--charcoal); | |
| } | |
| .batch-table tbody tr:hover { | |
| background: rgba(109, 129, 150, 0.03); | |
| } | |
| .empty-state { | |
| text-align: center; | |
| } | |
| .empty-message { | |
| padding: 4rem 2rem; | |
| color: var(--cool-gray); | |
| font-size: 1rem; | |
| } | |
| .source-preview { | |
| max-width: 400px; | |
| overflow: hidden; | |
| text-overflow: ellipsis; | |
| white-space: nowrap; | |
| color: var(--charcoal); | |
| } | |
| .model-badges { | |
| display: flex; | |
| gap: 0.5rem; | |
| flex-wrap: wrap; | |
| } | |
| .model-badge { | |
| padding: 0.25rem 0.75rem; | |
| border-radius: 6px; | |
| font-size: 0.8rem; | |
| font-weight: 500; | |
| background: var(--card-bg); | |
| color: var(--charcoal); | |
| border: 1px solid rgba(203, 203, 203, 0.3); | |
| } | |
| .status-badge { | |
| padding: 0.5rem 1rem; | |
| border-radius: 6px; | |
| font-size: 0.85rem; | |
| font-weight: 500; | |
| display: inline-block; | |
| } | |
| .status-pending { | |
| background: rgba(203, 203, 203, 0.2); | |
| color: var(--slate-blue); | |
| } | |
| .status-processing { | |
| background: rgba(109, 129, 150, 0.2); | |
| color: var(--slate-blue); | |
| } | |
| .status-complete { | |
| background: rgba(34, 197, 94, 0.2); | |
| color: #16a34a; | |
| } | |
| .status-error { | |
| background: rgba(239, 68, 68, 0.2); | |
| color: #dc2626; | |
| } | |
| .action-buttons { | |
| display: flex; | |
| gap: 0.5rem; | |
| } | |
| .btn-icon { | |
| background: transparent; | |
| border: 1px solid var(--cool-gray); | |
| color: var(--charcoal); | |
| padding: 0.5rem 0.75rem; | |
| border-radius: 6px; | |
| cursor: pointer; | |
| font-size: 0.85rem; | |
| transition: all 0.3s ease; | |
| } | |
| .btn-icon:hover { | |
| background: var(--card-bg); | |
| border-color: var(--slate-blue); | |
| } | |
| .export-section { | |
| display: flex; | |
| justify-content: flex-end; | |
| } | |
| @media (max-width: 1024px) { | |
| .evaluation-grid { | |
| grid-template-columns: 1fr; | |
| } | |
| .batch-table { | |
| font-size: 0.85rem; | |
| } | |
| .batch-table th, | |
| .batch-table td { | |
| padding: 0.75rem; | |
| } | |
| } | |