| |
| * { |
| margin: 0; |
| padding: 0; |
| box-sizing: border-box; |
| font-feature-settings: "ss01", "ss02", "cv01", "cv02"; |
| } |
|
|
| :root { |
| |
| --primary-bg: #000000; |
| --secondary-bg: #111111; |
| --card-bg: #1A1A1A; |
| --glass-bg: rgba(255, 255, 255, 0.03); |
|
|
| |
| --accent-yellow: #E3F514; |
| |
| --accent-yellow-dim: #D1E300; |
| --accent-dark: #0A0A0A; |
|
|
| |
| --scroll-reveal-distance: 50px; |
| --scroll-transition: 0.8s cubic-bezier(0.2, 0.8, 0.2, 1); |
|
|
| |
| --gradient-primary: linear-gradient(135deg, #E3F514 0%, #B8CC00 100%); |
| --gradient-glow: radial-gradient(circle at center, rgba(227, 245, 20, 0.4) 0%, transparent 70%); |
|
|
| |
| --page-transition: 0.6s ease-in-out; |
|
|
| --gradient-text: linear-gradient(180deg, #FFFFFF 0%, #E3F514 100%); |
|
|
| |
| --text-primary: #FFFFFF; |
| --text-inverse: #000000; |
| --text-secondary: #888888; |
| --text-muted: #6b6b80; |
| |
|
|
| |
| |
| |
| |
| |
| |
|
|
| |
| --container-width: 1200px; |
| --section-padding: 120px; |
| --border-radius-lg: 32px; |
| --border-radius-pill: 100px; |
|
|
| |
| --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.1); |
| |
| --shadow-md: 0 4px 16px rgba(0, 0, 0, 0.2); |
| |
| --shadow-lg: 0 8px 32px rgba(0, 0, 0, 0.3); |
| |
| --shadow-glow: 0 0 60px rgba(227, 245, 20, 0.15); |
| --shadow-3d: 0 20px 60px rgba(0, 0, 0, 0.5); |
| |
| --border-light: 1px solid rgba(255, 255, 255, 0.1); |
| --border-yellow: 1px solid var(--accent-yellow); |
|
|
| |
| --font-primary: 'Inter', system-ui, -apple-system, sans-serif; |
| --font-display: 'Space Grotesk', monospace; |
| } |
|
|
| :root[data-theme="light"] { |
| --primary-bg: #FFFFFF; |
| --secondary-bg: #F0F7FF; |
| |
| --card-bg: #F8FBFF; |
| --glass-bg: rgba(0, 31, 63, 0.05); |
|
|
| --text-primary: #002B5C; |
| |
| --text-inverse: #FFFFFF; |
| --text-secondary: #334E68; |
| --text-muted: #627D98; |
|
|
| --accent-yellow: #0056D2; |
| |
| |
| |
| |
| |
| --accent-yellow: #0044cc; |
| |
| --accent-highlight: #FFD700; |
| |
|
|
| --gradient-text: linear-gradient(180deg, #002B5C 0%, #0056D2 100%); |
| --border-light: 1px solid rgba(0, 43, 92, 0.1); |
| --border-yellow: 1px solid var(--accent-yellow); |
|
|
| --shadow-glow: 0 0 60px rgba(0, 86, 210, 0.15); |
| } |
|
|
| |
| ::view-transition-old(root), |
| ::view-transition-new(root) { |
| animation: none; |
| mix-blend-mode: normal; |
| } |
|
|
|
|
| |
| :root[data-theme="light"] { |
| --accent-yellow: #0044CC; |
| |
| --accent-yellow-dim: #003399; |
| } |
|
|
| :root[data-theme="light"] .feature-card, |
| :root[data-theme="light"] .tech-card, |
| :root[data-theme="light"] .showcase-item, |
| :root[data-theme="light"] .model-card, |
| :root[data-theme="light"] .stat-card { |
| background: #FFFFFF; |
| border: 1px solid rgba(0, 43, 92, 0.1); |
| box-shadow: 0 10px 30px rgba(0, 43, 92, 0.05); |
| color: var(--text-primary); |
| } |
|
|
| :root[data-theme="light"] .feature-description, |
| :root[data-theme="light"] .tech-card p, |
| :root[data-theme="light"] .showcase-item p { |
| color: var(--text-secondary); |
| } |
|
|
| :root[data-theme="light"] .extension-section { |
| background: #F0F7FF; |
| color: var(--text-primary); |
| } |
|
|
| :root[data-theme="light"] .extension-description { |
| color: var(--text-secondary); |
| } |
|
|
| :root[data-theme="light"] .hero-stats { |
| background: rgba(255, 255, 255, 0.8); |
| border: 1px solid rgba(0, 43, 92, 0.1); |
| box-shadow: 0 10px 40px rgba(0, 43, 92, 0.05); |
| } |
|
|
| :root[data-theme="light"] .hero-stats .stat-label { |
| color: var(--text-secondary); |
| } |
|
|
| |
| :root[data-theme="light"] .verdict-card, |
| :root[data-theme="light"] .metric-card { |
| background: #FFFFFF; |
| border: 1px solid rgba(0, 68, 204, 0.15); |
| |
| box-shadow: 0 5px 20px rgba(0, 68, 204, 0.05); |
| |
| color: var(--text-primary); |
| } |
|
|
| :root[data-theme="light"] .queue-header, |
| :root[data-theme="light"] .file-queue-container, |
| :root[data-theme="light"] .upload-area { |
| background: #F8FBFF; |
| |
| border-color: rgba(0, 68, 204, 0.2); |
| } |
|
|
| :root[data-theme="light"] .queue-count-badge { |
| background: #0044CC; |
| color: white; |
| } |
|
|
| :root[data-theme="light"] .btn-primary, |
| :root[data-theme="light"] .btn-secondary-small { |
| background: #0044CC; |
| color: white; |
| border: none; |
| box-shadow: 0 4px 15px rgba(0, 68, 204, 0.3); |
| } |
|
|
| :root[data-theme="light"] .btn-primary:hover { |
| background: #003399; |
| transform: translateY(-2px); |
| } |
|
|
| :root[data-theme="light"] .meter-fill { |
| background: #0044CC; |
| |
| box-shadow: 0 0 10px rgba(0, 68, 204, 0.5); |
| } |
|
|
| :root[data-theme="light"] .stat-value, |
| :root[data-theme="light"] .metric-value, |
| :root[data-theme="light"] .verdict-title { |
| color: #0044CC; |
| |
| -webkit-text-fill-color: #0044CC; |
| } |
|
|
| :root[data-theme="light"] .metric-label, |
| :root[data-theme="light"] .stat-label, |
| :root[data-theme="light"] .verdict-label, |
| :root[data-theme="light"] .upload-description { |
| color: var(--text-secondary); |
| } |
|
|
| :root[data-theme="light"] .section-title, |
| :root[data-theme="light"] .analysis-container h2, |
| :root[data-theme="light"] .analysis-container h3, |
| :root[data-theme="light"] .analysis-container h4 { |
| color: #002B5C; |
| |
| } |
|
|
| |
| :root[data-theme="light"] .feature-icon, |
| :root[data-theme="light"] .stat-icon, |
| :root[data-theme="light"] .metric-icon { |
| background: rgba(0, 68, 204, 0.1); |
| border: 1px solid rgba(0, 68, 204, 0.2); |
| color: #0044CC; |
| } |
|
|
| |
| :root[data-theme="light"] .chart-container { |
| filter: none; |
| |
| } |
|
|
|
|
|
|
|
|
|
|
| |
| :root[data-theme="light"] .feature-icon { |
| background: rgba(0, 68, 204, 0.05); |
| |
| border: 1px solid rgba(0, 68, 204, 0.1); |
| } |
|
|
| :root[data-theme="light"] .feature-icon img, |
| :root[data-theme="light"] .tech-icon { |
| |
| filter: hue-rotate(180deg) brightness(0.8); |
| } |
|
|
| |
| :root[data-theme="light"] .feature-title, |
| :root[data-theme="light"] .tech-card h3 { |
| color: var(--text-primary); |
| } |
|
|
|
|
| |
| :root[data-theme="light"] .results-section { |
| background: #FFFFFF; |
| border: 1px solid rgba(0, 43, 92, 0.1); |
| box-shadow: 0 10px 40px rgba(0, 43, 92, 0.05); |
| border-radius: 24px; |
| } |
|
|
| |
| :root[data-theme="light"] .btn-secondary-outline { |
| color: #0044CC; |
| border-color: rgba(0, 68, 204, 0.3); |
| background: transparent; |
| } |
|
|
| :root[data-theme="light"] .btn-secondary-outline:hover { |
| background: rgba(0, 68, 204, 0.05); |
| border-color: #0044CC; |
| } |
|
|
| |
| :root[data-theme="light"] .empty-state h3 { |
| color: var(--text-primary); |
| } |
|
|
| :root[data-theme="light"] .empty-state p { |
| color: var(--text-secondary); |
| } |
|
|
| |
| :root[data-theme="light"] .history-controls { |
| background: #FFFFFF; |
| border: 1px solid rgba(0, 43, 92, 0.1); |
| box-shadow: 0 10px 30px rgba(0, 43, 92, 0.05); |
| } |
|
|
| :root[data-theme="light"] .search-input, |
| :root[data-theme="light"] .filter-select { |
| background: #F0F7FF; |
| border: 1px solid rgba(0, 68, 204, 0.2); |
| color: var(--text-primary); |
| } |
|
|
| :root[data-theme="light"] .search-input:focus, |
| :root[data-theme="light"] .filter-select:focus { |
| border-color: #0044CC; |
| background: #FFFFFF; |
| } |
|
|
| :root[data-theme="light"] .history-table-container { |
| background: #FFFFFF; |
| border: 1px solid rgba(0, 43, 92, 0.1); |
| box-shadow: 0 10px 30px rgba(0, 43, 92, 0.05); |
| } |
|
|
| :root[data-theme="light"] .history-table th { |
| background: #F0F7FF; |
| color: #002B5C; |
| border-bottom: 2px solid rgba(0, 68, 204, 0.1); |
| } |
|
|
| :root[data-theme="light"] .history-table td { |
| border-bottom: 1px solid rgba(0, 43, 92, 0.05); |
| color: var(--text-secondary); |
| } |
|
|
| :root[data-theme="light"] .history-table tr:hover { |
| background: #F8FBFF; |
| } |
|
|
| :root[data-theme="light"] .history-table td:first-child { |
| color: var(--text-primary); |
| |
| } |
|
|
| |
| :root[data-theme="light"] .action-btn { |
| background: rgba(0, 68, 204, 0.1); |
| color: #0044CC; |
| } |
|
|
| :root[data-theme="light"] .action-btn:hover { |
| background: #0044CC; |
| color: #FFFFFF; |
| } |
|
|
| :root[data-theme="light"] .btn-export { |
| background: #F0F7FF; |
| color: #0044CC; |
| border: 1px solid rgba(0, 68, 204, 0.2); |
| } |
|
|
| :root[data-theme="light"] .btn-export:hover { |
| background: #0044CC; |
| color: #FFFFFF; |
| } |
|
|
| :root[data-theme="light"] .btn-clear-all { |
| background: rgba(255, 0, 0, 0.1); |
| color: #FF0000; |
| border: 1px solid rgba(255, 0, 0, 0.2); |
| } |
|
|
| :root[data-theme="light"] .btn-clear-all:hover { |
| background: #FF0000; |
| color: #FFFFFF; |
| } |
|
|
| |
| :root[data-theme="light"] .history-controls { |
| background: #FFFFFF; |
| border: 1px solid rgba(0, 43, 92, 0.1); |
| box-shadow: 0 10px 30px rgba(0, 43, 92, 0.05); |
| } |
|
|
| :root[data-theme="light"] .search-input, |
| :root[data-theme="light"] .filter-select { |
| background: #F0F7FF; |
| border: 1px solid rgba(0, 68, 204, 0.2); |
| color: var(--text-primary); |
| } |
|
|
| :root[data-theme="light"] .filter-select option { |
| background: #FFFFFF; |
| color: var(--text-primary); |
| } |
|
|
| :root[data-theme="light"] .search-input:focus, |
| :root[data-theme="light"] .filter-select:focus { |
| border-color: #0044CC; |
| background: #FFFFFF; |
| } |
|
|
| :root[data-theme="light"] .history-table-container { |
| background: #FFFFFF; |
| border: 1px solid rgba(0, 43, 92, 0.1); |
| box-shadow: 0 10px 30px rgba(0, 43, 92, 0.05); |
| } |
|
|
| :root[data-theme="light"] .history-table th { |
| background: #F0F7FF; |
| color: #002B5C; |
| border-bottom: 2px solid rgba(0, 68, 204, 0.1); |
| } |
|
|
| :root[data-theme="light"] .history-table td { |
| border-bottom: 1px solid rgba(0, 43, 92, 0.05); |
| color: var(--text-secondary); |
| } |
|
|
| :root[data-theme="light"] .history-table tr:hover { |
| background: #F8FBFF; |
| } |
|
|
| :root[data-theme="light"] .history-table td:first-child { |
| color: var(--text-primary); |
| } |
|
|
| :root[data-theme="light"] .table-badge.fake { |
| background: rgba(0, 68, 204, 0.1); |
| color: #0044CC; |
| border: 1px solid rgba(0, 68, 204, 0.2); |
| } |
|
|
| :root[data-theme="light"] .table-badge.real { |
| background: rgba(16, 185, 129, 0.1); |
| color: #10b981; |
| border: 1px solid rgba(16, 185, 129, 0.3); |
| } |
|
|
| :root[data-theme="light"] .confidence-fill-small { |
| background: #0044CC; |
| } |
|
|
| :root[data-theme="light"] .confidence-bar-small { |
| background: rgba(0, 68, 204, 0.1); |
| } |
|
|
| |
| :root[data-theme="light"] .btn-table-action { |
| background: #F0F7FF; |
| border: 1px solid rgba(0, 68, 204, 0.2); |
| color: #0044CC; |
| } |
|
|
| :root[data-theme="light"] .btn-table-action:hover { |
| background: #0044CC; |
| color: #FFFFFF; |
| } |
|
|
| :root[data-theme="light"] .btn-table-delete { |
| background: rgba(255, 59, 48, 0.05); |
| border-color: rgba(255, 59, 48, 0.3); |
| color: #ff3b30; |
| } |
|
|
| :root[data-theme="light"] .btn-table-delete:hover { |
| background: #ff3b30; |
| color: #FFFFFF; |
| } |
|
|
| :root[data-theme="light"] .btn-export { |
| background: #F0F7FF; |
| color: #0044CC; |
| border: 1px solid rgba(0, 68, 204, 0.2); |
| } |
|
|
| :root[data-theme="light"] .btn-export:hover { |
| background: #0044CC; |
| color: #FFFFFF; |
| } |
|
|
| :root[data-theme="light"] .btn-clear-all { |
| background: rgba(255, 0, 0, 0.05); |
| color: #FF0000; |
| border: 1px solid rgba(255, 0, 0, 0.2); |
| } |
|
|
| :root[data-theme="light"] .btn-clear-all:hover { |
| background: #FF0000; |
| color: #FFFFFF; |
| } |
|
|
| :root[data-theme="light"] .results-count { |
| color: var(--text-secondary); |
| } |
|
|
| :root[data-theme="light"] .results-count span { |
| color: #0044CC; |
| } |
|
|
| |
| :root[data-theme="light"] .recent-card { |
| background: #FFFFFF; |
| border: 1px solid rgba(0, 43, 92, 0.1); |
| box-shadow: 0 10px 30px rgba(0, 43, 92, 0.05); |
| } |
|
|
| :root[data-theme="light"] .recent-card:hover { |
| box-shadow: 0 15px 40px rgba(0, 68, 204, 0.1); |
| border-color: #0044CC; |
| transform: translateY(-5px); |
| } |
|
|
| :root[data-theme="light"] .recent-card-title { |
| color: var(--text-primary); |
| } |
|
|
| :root[data-theme="light"] .recent-date, |
| :root[data-theme="light"] .recent-confidence-label { |
| color: var(--text-secondary); |
| } |
|
|
| :root[data-theme="light"] .recent-confidence-bar { |
| background: rgba(0, 68, 204, 0.1); |
| } |
|
|
| :root[data-theme="light"] .recent-confidence-fill { |
| background: #0044CC; |
| } |
|
|
| :root[data-theme="light"] .recent-badge.fake { |
| background: rgba(0, 68, 204, 0.1); |
| color: #0044CC; |
| border: 1px solid rgba(0, 68, 204, 0.2); |
| } |
|
|
| :root[data-theme="light"] .recent-badge.real { |
| background: rgba(16, 185, 129, 0.1); |
| color: #10b981; |
| border: 1px solid rgba(16, 185, 129, 0.3); |
| } |
|
|
| :root[data-theme="light"] .recent-grid-empty { |
| background: #FFFFFF; |
| border: 1px dashed rgba(0, 68, 204, 0.2); |
| color: var(--text-secondary); |
| } |
|
|
| :root[data-theme="light"] .recent-grid-empty-icon { |
| filter: grayscale(1) opacity(0.5); |
| } |
|
|
|
|
| body { |
| font-family: var(--font-primary); |
| background: var(--primary-bg); |
| color: var(--text-primary); |
| line-height: 1.5; |
| overflow-x: hidden; |
| perspective: 1000px; |
| |
| max-width: 100vw; |
| width: 100%; |
| position: relative; |
| } |
|
|
| |
| .scroll-progress-container { |
| position: fixed; |
| top: 0; |
| left: 0; |
| width: 100%; |
| height: 3px; |
| z-index: 1001; |
| background: transparent; |
| pointer-events: none; |
| } |
|
|
| .scroll-progress-bar { |
| height: 100%; |
| background: var(--accent-yellow); |
| width: 0%; |
| transition: width 0.1s linear; |
| box-shadow: 0 0 10px var(--accent-yellow); |
| } |
|
|
| |
| .scroll-reveal { |
| opacity: 0.2; |
| transform: translateY(20px); |
| transition: all 0.8s ease-out; |
| } |
|
|
| .scroll-reveal.active { |
| opacity: 1; |
| transform: translateY(0); |
| } |
|
|
| .scroll-dim { |
| transition: opacity 0.5s ease; |
| } |
|
|
| |
| .parallax-item { |
| will-change: transform; |
| transition: transform 0.1s linear; |
| } |
|
|
| |
| |
|
|
| |
| #canvas-container { |
| position: fixed; |
| top: 0; |
| left: 0; |
| width: 100%; |
| height: 100%; |
| z-index: -2; |
| opacity: 0.6; |
| } |
|
|
| |
| ::-webkit-scrollbar { |
| width: 10px; |
| } |
|
|
| ::-webkit-scrollbar-track { |
| background: var(--primary-bg); |
| } |
|
|
| ::-webkit-scrollbar-thumb { |
| background: #333; |
| border-radius: 5px; |
| } |
|
|
| ::-webkit-scrollbar-thumb:hover { |
| background: var(--accent-yellow); |
| } |
|
|
| #particles-js { |
| position: fixed; |
| width: 100%; |
| height: 100%; |
| top: 0; |
| left: 0; |
| z-index: 0; |
| pointer-events: none; |
| } |
|
|
| |
| .mesh-background { |
| position: fixed; |
| top: 0; |
| left: 0; |
| width: 100%; |
| height: 100%; |
| background-image: |
| linear-gradient(rgba(255, 255, 255, 0.03) 1px, transparent 1px), |
| linear-gradient(90deg, rgba(255, 255, 255, 0.03) 1px, transparent 1px); |
| background-size: 50px 50px; |
| z-index: -1; |
| mask-image: radial-gradient(circle at 50% 50%, black 40%, transparent 100%); |
| } |
|
|
| :root[data-theme="light"] .mesh-background { |
| background-image: |
| linear-gradient(rgba(0, 174, 239, 0.15) 1px, transparent 1px), |
| linear-gradient(90deg, rgba(0, 174, 239, 0.15) 1px, transparent 1px); |
| |
| |
| |
| } |
|
|
| @keyframes meshMove { |
|
|
| 0%, |
| 100% { |
| opacity: 0.3; |
| transform: scale(1); |
| } |
|
|
| 50% { |
| opacity: 0.5; |
| transform: scale(1.1); |
| } |
| } |
|
|
| .floating-bg-icon { |
| position: absolute; |
| font-size: 24px; |
| opacity: 0.2; |
| color: var(--accent-yellow); |
| animation: floatParticle 10s infinite linear; |
| } |
|
|
| |
|
|
| @keyframes floatParticle { |
| 0% { |
| transform: translateY(0) rotate(0deg); |
| opacity: 0; |
| } |
|
|
| 20% { |
| opacity: 0.5; |
| } |
|
|
| 80% { |
| opacity: 0.5; |
| } |
|
|
| 100% { |
| transform: translateY(-100vh) rotate(360deg); |
| opacity: 0; |
| } |
| } |
|
|
| .container { |
| max-width: var(--container-width); |
| margin: 0 auto; |
| padding: 0 40px; |
| |
| width: 100%; |
| box-sizing: border-box; |
| } |
|
|
| |
| .navbar { |
| position: fixed; |
| top: 0; |
| left: 0; |
| right: 0; |
| z-index: 1000; |
| background: transparent; |
| backdrop-filter: none; |
| border-bottom: none; |
| padding: 20px 0; |
| |
| padding-top: max(20px, env(safe-area-inset-top)); |
| padding-left: env(safe-area-inset-left); |
| padding-right: env(safe-area-inset-right); |
| transition: background 0.3s ease, backdrop-filter 0.3s ease; |
| } |
|
|
| .nav-content { |
| display: flex; |
| align-items: center; |
| justify-content: space-between; |
| position: relative; |
| } |
|
|
| .logo { |
| display: flex; |
| align-items: center; |
| gap: 12px; |
| } |
|
|
| .logo-img { |
| width: 40px; |
| height: 40px; |
| object-fit: contain; |
| border-radius: 8px; |
| |
| } |
|
|
| |
|
|
| .logo-text { |
| font-family: var(--font-display); |
| font-size: 24px; |
| font-weight: 700; |
| color: var(--text-primary); |
| } |
|
|
| .gradient-text { |
| background: var(--gradient-text); |
| -webkit-background-clip: text; |
| -webkit-text-fill-color: transparent; |
| background-clip: text; |
| color: var(--accent-yellow); |
| |
| } |
|
|
| .nav-menu { |
| display: flex; |
| list-style: none; |
| gap: 40px; |
| position: absolute; |
| left: 50%; |
| transform: translateX(-50%); |
| margin: 0; |
| padding: 0; |
| } |
|
|
| .nav-menu a { |
| color: var(--text-secondary); |
| text-decoration: none; |
| font-weight: 500; |
| transition: color 0.3s ease; |
| position: relative; |
| } |
|
|
| .nav-menu a:hover, |
| .nav-menu a.active { |
| color: var(--accent-yellow); |
| } |
|
|
| .nav-menu a::after { |
| content: ''; |
| position: absolute; |
| bottom: -5px; |
| left: 0; |
| width: 0; |
| height: 2px; |
| background: var(--accent-yellow); |
| transition: width 0.3s ease; |
| } |
|
|
| .nav-menu a:hover::after { |
| width: 100%; |
| } |
|
|
| |
| .theme-toggle-btn { |
| background: rgba(255, 255, 255, 0.05); |
| |
| border: 1px solid var(--border-light); |
| color: var(--text-primary); |
| width: 44px; |
| height: 44px; |
| border-radius: 50%; |
| display: flex; |
| align-items: center; |
| justify-content: center; |
| cursor: pointer; |
| font-size: 20px; |
| margin-left: 16px; |
| transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); |
| backdrop-filter: blur(10px); |
| } |
|
|
| .theme-toggle-btn:hover { |
| background: var(--text-primary); |
| color: var(--primary-bg); |
| transform: rotate(180deg); |
| border-color: var(--text-primary); |
| } |
|
|
| |
| |
| .btn-primary, |
| .btn-hero-primary, |
| .btn-hero-secondary { |
| position: relative; |
| overflow: hidden; |
| transform: translateZ(0); |
| |
| } |
|
|
| span.ripple { |
| position: absolute; |
| border-radius: 50%; |
| transform: scale(0); |
| animation: ripple 0.6s linear; |
| background-color: rgba(255, 255, 255, 0.4); |
| pointer-events: none; |
| } |
|
|
| @keyframes ripple { |
| to { |
| transform: scale(4); |
| opacity: 0; |
| } |
| } |
|
|
| |
| .feature-card, |
| .tech-card { |
| transform-style: preserve-3d; |
| transform: perspective(1000px); |
| will-change: transform; |
| |
| transition: transform 0.1s ease-out; |
| } |
|
|
| |
| input:focus, |
| textarea:focus, |
| select:focus { |
| outline: none; |
| border-color: var(--accent-yellow); |
| box-shadow: 0 0 15px rgba(227, 245, 20, 0.3); |
| transition: all 0.3s ease; |
| } |
|
|
| |
| .skeleton { |
| background: linear-gradient(90deg, |
| rgba(255, 255, 255, 0.05) 25%, |
| rgba(255, 255, 255, 0.1) 50%, |
| rgba(255, 255, 255, 0.05) 75%); |
| background-size: 200% 100%; |
| animation: skeleton-loading 1.5s infinite; |
| border-radius: 4px; |
| } |
|
|
| @keyframes skeleton-loading { |
| 0% { |
| background-position: 200% 0; |
| } |
|
|
| 100% { |
| background-position: -200% 0; |
| } |
| } |
|
|
| .loading-dots:after { |
| content: '.'; |
| animation: dots 1.5s steps(5, end) infinite; |
| } |
|
|
| @keyframes dots { |
|
|
| 0%, |
| 20% { |
| content: '.'; |
| } |
|
|
| 40% { |
| content: '..'; |
| } |
|
|
| 60% { |
| content: '...'; |
| } |
|
|
| 80%, |
| 100% { |
| content: ''; |
| } |
| } |
|
|
| |
| .btn-primary { |
| background: var(--accent-yellow); |
| color: var(--text-inverse); |
| padding: 12px 32px; |
| border: none; |
| border-radius: var(--border-radius-pill); |
| font-weight: 700; |
| cursor: pointer; |
| transition: all 0.3s cubic-bezier(0.2, 0.8, 0.2, 1); |
| font-family: var(--font-display); |
| position: relative; |
| overflow: hidden; |
| } |
|
|
| .btn-primary:hover { |
| transform: scale(1.05); |
| box-shadow: 0 0 30px var(--accent-yellow); |
| } |
|
|
| .btn-hero-primary { |
| background: var(--accent-yellow); |
| color: var(--text-inverse); |
| padding: 16px 40px; |
| border: none; |
| border-radius: 16px; |
| font-size: 16px; |
| font-weight: 700; |
| cursor: pointer; |
| transition: all 0.4s cubic-bezier(0.2, 0.8, 0.2, 1); |
| font-family: var(--font-display); |
| text-transform: uppercase; |
| letter-spacing: 0.5px; |
| display: inline-flex; |
| align-items: center; |
| gap: 10px; |
| } |
|
|
| .btn-hero-primary:hover { |
| transform: translateY(-5px) scale(1.02); |
| box-shadow: 0 10px 40px rgba(227, 245, 20, 0.3); |
| } |
|
|
| .btn-hero-secondary { |
| background: transparent; |
| color: var(--text-primary); |
| padding: 16px 36px; |
| border: 1px solid rgba(255, 255, 255, 0.3); |
| border-radius: 16px; |
| font-size: 16px; |
| font-weight: 600; |
| cursor: pointer; |
| transition: all 0.3s ease; |
| backdrop-filter: blur(10px); |
| display: inline-flex; |
| align-items: center; |
| gap: 10px; |
| } |
|
|
| .btn-hero-secondary:hover { |
| background: rgba(255, 255, 255, 0.1); |
| border-color: var(--accent-yellow); |
| color: var(--accent-yellow); |
| } |
|
|
| .btn-hero-white { |
| background: #fff; |
| color: #111; |
| padding: 16px 36px; |
| border: 1px solid #fff; |
| border-radius: 16px; |
| font-size: 16px; |
| font-weight: 600; |
| cursor: pointer; |
| transition: all 0.3s ease; |
| display: inline-flex; |
| align-items: center; |
| gap: 10px; |
| text-decoration: none; |
| } |
|
|
| .btn-hero-white:hover { |
| background: #f0f0f0; |
| transform: translateY(-3px); |
| box-shadow: 0 8px 30px rgba(255, 255, 255, 0.15); |
| } |
|
|
| .play-icon { |
| display: inline-flex; |
| align-items: center; |
| justify-content: center; |
| width: 24px; |
| height: 24px; |
| color: var(--accent-yellow); |
| background: rgba(255, 255, 255, 0.1); |
| border-radius: 50%; |
| font-size: 10px; |
| } |
|
|
| |
| .hero { |
| position: relative; |
| |
| min-height: 100vh; |
| height: auto; |
| display: flex; |
| align-items: center; |
| |
| padding: 120px 0 100px; |
| overflow: visible; |
| |
| transform-style: preserve-3d; |
| } |
|
|
| .hero-background { |
| position: absolute; |
| top: 0; |
| left: 0; |
| right: 0; |
| bottom: 0; |
| overflow: hidden; |
| transform-style: preserve-3d; |
| } |
|
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
|
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
|
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
|
|
| |
| .section-divider { |
| position: relative; |
| top: -1px; |
| |
| width: 100%; |
| overflow: hidden; |
| line-height: 0; |
| transform: rotate(180deg); |
| } |
|
|
| .section-divider svg { |
| position: relative; |
| display: block; |
| width: calc(100% + 1.3px); |
| height: 60px; |
| } |
|
|
| .section-divider .shape-fill { |
| fill: var(--primary-bg); |
| } |
|
|
| |
| .orb-1, |
| .orb-2, |
| .orb-3 { |
| background: radial-gradient(circle, var(--accent-yellow), transparent 70%); |
| opacity: 0.15; |
| } |
|
|
| :root[data-theme="light"] .orb-1, |
| :root[data-theme="light"] .orb-2, |
| :root[data-theme="light"] .orb-3 { |
| background: radial-gradient(circle, #00AEEF, transparent 70%); |
| |
| opacity: 0.2; |
| } |
|
|
| |
| |
| :root[data-theme="light"] .cube-face { |
| background: rgba(0, 174, 239, 0.08); |
| |
| border: 1px solid rgba(0, 174, 239, 0.3); |
| } |
|
|
| :root[data-theme="light"] .pyramid-face { |
| background: rgba(0, 68, 204, 0.1); |
| |
| border: 1px solid rgba(0, 68, 204, 0.4); |
| } |
|
|
| :root[data-theme="light"] .pyramid-front, |
| :root[data-theme="light"] .pyramid-back { |
| border-bottom: 100px solid rgba(0, 68, 204, 0.1); |
| border-bottom-color: rgba(0, 68, 204, 0.15); |
| } |
|
|
| :root[data-theme="light"] .pyramid-left { |
| border-right: 100px solid rgba(0, 68, 204, 0.1); |
| border-right-color: rgba(0, 68, 204, 0.15); |
| } |
|
|
| :root[data-theme="light"] .pyramid-right { |
| border-left: 100px solid rgba(0, 68, 204, 0.1); |
| border-left-color: rgba(0, 68, 204, 0.15); |
| } |
|
|
| :root[data-theme="light"] .pyramid-base { |
| background: rgba(0, 68, 204, 0.08); |
| } |
|
|
| .floating-3d-object { |
| position: absolute; |
| transform-style: preserve-3d; |
| animation: floatUpDown 6s ease-in-out infinite; |
| transition: transform 0.3s ease-out; |
| pointer-events: none; |
| } |
|
|
| .floating-cube { |
| width: 120px; |
| height: 120px; |
| top: 20%; |
| right: 15%; |
| animation-delay: 0s; |
| } |
|
|
| .floating-pyramid { |
| width: 100px; |
| height: 100px; |
| bottom: 25%; |
| left: 10%; |
| animation-delay: -3s; |
| } |
|
|
| |
| .cube-face { |
| position: absolute; |
| width: 120px; |
| height: 120px; |
| background: rgba(227, 245, 20, 0.08); |
| border: 1px solid rgba(227, 245, 20, 0.3); |
| backdrop-filter: blur(5px); |
| } |
|
|
| .cube-front { |
| transform: rotateY(0deg) translateZ(60px); |
| } |
|
|
| .cube-back { |
| transform: rotateY(180deg) translateZ(60px); |
| } |
|
|
| .cube-right { |
| transform: rotateY(90deg) translateZ(60px); |
| } |
|
|
| .cube-left { |
| transform: rotateY(-90deg) translateZ(60px); |
| } |
|
|
| .cube-top { |
| transform: rotateX(90deg) translateZ(60px); |
| } |
|
|
| .cube-bottom { |
| transform: rotateX(-90deg) translateZ(60px); |
| } |
|
|
| |
| .pyramid-face { |
| position: absolute; |
| background: rgba(227, 245, 20, 0.1); |
| border: 1px solid rgba(227, 245, 20, 0.4); |
| backdrop-filter: blur(5px); |
| } |
|
|
| .pyramid-front { |
| width: 0; |
| height: 0; |
| border-left: 50px solid transparent; |
| border-right: 50px solid transparent; |
| border-bottom: 100px solid rgba(227, 245, 20, 0.1); |
| transform: rotateY(0deg) translateZ(50px); |
| background: none; |
| border-bottom-color: rgba(227, 245, 20, 0.15); |
| } |
|
|
| .pyramid-back { |
| width: 0; |
| height: 0; |
| border-left: 50px solid transparent; |
| border-right: 50px solid transparent; |
| border-bottom: 100px solid rgba(227, 245, 20, 0.1); |
| transform: rotateY(180deg) translateZ(50px); |
| background: none; |
| border-bottom-color: rgba(227, 245, 20, 0.15); |
| } |
|
|
| .pyramid-left { |
| width: 0; |
| height: 0; |
| border-top: 50px solid transparent; |
| border-bottom: 50px solid transparent; |
| border-right: 100px solid rgba(227, 245, 20, 0.1); |
| transform: rotateY(-90deg) translateZ(0px); |
| background: none; |
| border-right-color: rgba(227, 245, 20, 0.15); |
| } |
|
|
| .pyramid-right { |
| width: 0; |
| height: 0; |
| border-top: 50px solid transparent; |
| border-bottom: 50px solid transparent; |
| border-left: 100px solid rgba(227, 245, 20, 0.1); |
| transform: rotateY(90deg) translateZ(0px); |
| background: none; |
| border-left-color: rgba(227, 245, 20, 0.15); |
| } |
|
|
| .pyramid-base { |
| width: 100px; |
| height: 100px; |
| background: rgba(227, 245, 20, 0.08); |
| transform: rotateX(90deg) translateZ(0px); |
| } |
|
|
| |
| @keyframes floatUpDown { |
|
|
| 0%, |
| 100% { |
| transform: translateY(0px) rotateX(15deg) rotateY(20deg); |
| } |
|
|
| 50% { |
| transform: translateY(-30px) rotateX(15deg) rotateY(20deg); |
| } |
| } |
|
|
| |
| @media (max-width: 768px) { |
| .floating-cube { |
| width: 80px; |
| height: 80px; |
| right: 5%; |
| } |
|
|
| .cube-face { |
| width: 80px; |
| height: 80px; |
| } |
|
|
| .cube-front { |
| transform: rotateY(0deg) translateZ(40px); |
| } |
|
|
| .cube-back { |
| transform: rotateY(180deg) translateZ(40px); |
| } |
|
|
| .cube-right { |
| transform: rotateY(90deg) translateZ(40px); |
| } |
|
|
| .cube-left { |
| transform: rotateY(-90deg) translateZ(40px); |
| } |
|
|
| .cube-top { |
| transform: rotateX(90deg) translateZ(40px); |
| } |
|
|
| .cube-bottom { |
| transform: rotateX(-90deg) translateZ(40px); |
| } |
|
|
| .floating-pyramid { |
| width: 70px; |
| height: 70px; |
| left: 5%; |
| } |
| } |
|
|
| @keyframes float { |
|
|
| 0%, |
| 100% { |
| transform: translate(0, 0) scale(1); |
| } |
|
|
| 33% { |
| transform: translate(100px, -100px) scale(1.1); |
| } |
|
|
| 66% { |
| transform: translate(-100px, 100px) scale(0.9); |
| } |
| } |
|
|
|
|
| |
|
|
| |
| html.lenis { |
| height: auto; |
| } |
|
|
| .lenis.lenis-smooth { |
| scroll-behavior: auto; |
| } |
|
|
| .lenis.lenis-smooth [data-lenis-prevent] { |
| overscroll-behavior: contain; |
| } |
|
|
| .lenis.lenis-stopped { |
| overflow: hidden; |
| } |
|
|
| .lenis.lenis-scrolling iframe { |
| pointer-events: none; |
| } |
|
|
| |
| |
| .feature-card, |
| .showcase-item, |
| .tech-card { |
| position: relative; |
| background: rgba(26, 26, 26, 1); |
| |
| background: linear-gradient(145deg, #1A1A1A, #111111); |
| border: 1px solid rgba(255, 255, 255, 0.05); |
| overflow: hidden; |
| |
| --mouse-x: -100px; |
| --mouse-y: -100px; |
| } |
|
|
| |
| .feature-card::before, |
| .showcase-item::before, |
| .tech-card::before { |
| content: ""; |
| position: absolute; |
| top: 0; |
| left: 0; |
| width: 100%; |
| height: 100%; |
| background: radial-gradient(800px circle at var(--mouse-x) var(--mouse-y), |
| rgba(255, 255, 255, 0.06), |
| transparent 40%); |
| z-index: 2; |
| pointer-events: none; |
| transition: opacity 0.5s ease; |
| opacity: 0; |
| } |
|
|
| .feature-card:hover::before, |
| .showcase-item:hover::before, |
| .tech-card:hover::before { |
| opacity: 1; |
| } |
|
|
| |
| .feature-card::after, |
| .showcase-item::after, |
| .tech-card::after { |
| content: ""; |
| position: absolute; |
| top: 0; |
| left: 0; |
| width: 100%; |
| height: 100%; |
| background: radial-gradient(600px circle at var(--mouse-x) var(--mouse-y), |
| rgba(227, 245, 20, 0.3), |
| transparent 40%); |
| z-index: 1; |
| pointer-events: none; |
| opacity: 0; |
| transition: opacity 0.3s ease; |
| mix-blend-mode: overlay; |
| } |
|
|
| .feature-card:hover::after, |
| .showcase-item:hover::after, |
| .tech-card:hover::after { |
| opacity: 1; |
| } |
|
|
|
|
| |
| :root[data-theme="light"] .feature-card, |
| :root[data-theme="light"] .showcase-item, |
| :root[data-theme="light"] .tech-card { |
| background: #FFFFFF !important; |
| |
| } |
|
|
| :root[data-theme="light"] .feature-card::before, |
| :root[data-theme="light"] .showcase-item::before, |
| :root[data-theme="light"] .tech-card::before { |
| background: radial-gradient(800px circle at var(--mouse-x) var(--mouse-y), |
| rgba(0, 43, 92, 0.03), |
| |
| transparent 40%); |
| } |
|
|
| :root[data-theme="light"] .feature-card::after, |
| :root[data-theme="light"] .showcase-item::after, |
| :root[data-theme="light"] .tech-card::after { |
| background: radial-gradient(600px circle at var(--mouse-x) var(--mouse-y), |
| rgba(0, 174, 239, 0.2), |
| |
| transparent 40%); |
| } |
|
|
| |
| |
| .btn-primary, |
| .btn-hero-primary { |
| transition: transform 0.1s cubic-bezier(0.2, 0.8, 0.2, 1), box-shadow 0.3s ease, background 0.3s ease; |
| } |
|
|
|
|
| |
| |
| .hero-title, |
| .section-title { |
| opacity: 1; |
| transform: translateY(0); |
| transition: opacity 0.8s cubic-bezier(0.2, 0.8, 0.2, 1), transform 0.8s cubic-bezier(0.2, 0.8, 0.2, 1); |
| } |
|
|
| .section-subtitle { |
| opacity: 1; |
| transform: translateY(0); |
| transition: opacity 0.8s ease 0.2s, transform 0.8s ease 0.2s; |
| } |
|
|
| |
| .hero-title.will-animate, |
| .section-title.will-animate { |
| opacity: 0; |
| transform: translateY(30px); |
| } |
|
|
| .section-subtitle.will-animate { |
| opacity: 0; |
| transform: translateY(20px); |
| } |
|
|
| .hero-title.in-view, |
| .section-title.in-view { |
| opacity: 1; |
| transform: translateY(0); |
| } |
|
|
| .section-title.in-view+.section-subtitle, |
| .section-subtitle.in-view { |
| opacity: 1; |
| transform: translateY(0); |
| } |
|
|
| .hero-title { |
| |
| animation: revealUp 1s cubic-bezier(0.2, 0.8, 0.2, 1) forwards; |
| animation-delay: 0.2s; |
| } |
|
|
| @keyframes revealUp { |
| from { |
| opacity: 0; |
| transform: translateY(40px); |
| } |
|
|
| to { |
| opacity: 1; |
| transform: translateY(0); |
| } |
| } |
|
|
| .hero-reveal-container { |
| position: absolute; |
| top: 0; |
| left: 0; |
| right: 0; |
| bottom: 0; |
| width: 100%; |
| height: 100%; |
| z-index: 5; |
| pointer-events: auto; |
| overflow: hidden; |
| } |
|
|
| .reveal-image { |
| position: absolute; |
| top: 0; |
| left: 0; |
| width: 100%; |
| height: 100%; |
| object-fit: cover; |
| pointer-events: none; |
| } |
|
|
| .reveal-bottom { |
| z-index: 1; |
| } |
|
|
| .reveal-top { |
| z-index: 2; |
| } |
|
|
| .reveal-canvas { |
| position: absolute; |
| top: 0; |
| left: 0; |
| width: 100%; |
| height: 100%; |
| z-index: 3; |
| pointer-events: none; |
| } |
|
|
| .hero-content { |
| position: relative; |
| z-index: 30; |
| text-align: center; |
| max-width: 800px; |
| margin: 0 auto; |
| padding: 0 20px; |
| } |
|
|
| .hero-badge { |
| display: inline-flex; |
| align-items: center; |
| gap: 8px; |
| background: var(--glass-bg); |
| backdrop-filter: blur(10px); |
| border: 1px solid rgba(255, 255, 255, 0.1); |
| padding: 8px 20px; |
| border-radius: 50px; |
| margin-bottom: 30px; |
| |
| } |
|
|
| .badge-dot { |
| width: 8px; |
| height: 8px; |
| background: var(--accent-yellow); |
| |
| border-radius: 50%; |
| animation: pulse 2s infinite; |
| } |
|
|
| @keyframes pulse { |
|
|
| 0%, |
| 100% { |
| opacity: 1; |
| transform: scale(1); |
| } |
|
|
| 50% { |
| opacity: 0.6; |
| transform: scale(1.2); |
| } |
| } |
|
|
| .hero-title { |
| font-family: var(--font-display); |
| font-size: clamp(40px, 5vw, 96px); |
| font-weight: 800; |
| line-height: 0.95; |
| letter-spacing: -3px; |
| margin-bottom: 40px; |
| |
| } |
|
|
| .gradient-text-hero { |
| background: var(--gradient-text); |
| -webkit-background-clip: text; |
| -webkit-text-fill-color: transparent; |
| background-clip: text; |
| display: inline-block; |
| color: var(--accent-yellow); |
| |
| } |
|
|
| .hero-description { |
| font-size: 20px; |
| color: var(--text-secondary); |
| max-width: 700px; |
| margin: 0 auto 40px; |
| line-height: 1.8; |
| |
| } |
|
|
| .hero-actions { |
| display: flex; |
| gap: 16px; |
| justify-content: center; |
| margin-bottom: 48px; |
| flex-wrap: wrap; |
| } |
|
|
| .hero-stats { |
| display: flex; |
| justify-content: center; |
| align-items: center; |
| gap: 40px; |
| padding: 40px; |
| background: rgba(20, 20, 20, 0.8); |
| border: 1px solid rgba(255, 255, 255, 0.05); |
| backdrop-filter: blur(40px); |
| border-radius: 24px; |
| |
| } |
|
|
| .stat-item { |
| text-align: center; |
| } |
|
|
| .stat-value { |
| font-size: 36px; |
| font-weight: 800; |
| color: var(--accent-yellow); |
| font-family: var(--font-display); |
| background: none; |
| -webkit-text-fill-color: var(--accent-yellow); |
| margin-bottom: 8px; |
| } |
|
|
| .stat-label { |
| font-size: 14px; |
| color: var(--text-secondary); |
| font-weight: 500; |
| } |
|
|
| .stat-divider { |
| width: 1px; |
| height: 40px; |
| background: rgba(255, 255, 255, 0.1); |
| } |
|
|
| @keyframes fadeInUp { |
| from { |
| opacity: 0; |
| transform: translateY(30px); |
| } |
|
|
| to { |
| opacity: 1; |
| transform: translateY(0); |
| } |
| } |
|
|
| |
| .features-section { |
| padding: var(--section-padding) 0; |
| position: relative; |
| } |
|
|
| .section-header { |
| text-align: center; |
| margin-bottom: 56px; |
| } |
|
|
| .section-title { |
| font-family: var(--font-display); |
| font-size: clamp(32px, 4vw, 44px); |
| font-weight: 800; |
| margin-bottom: 16px; |
| line-height: 1.1; |
| } |
|
|
| .section-subtitle { |
| font-size: 18px; |
| color: var(--text-secondary); |
| max-width: 560px; |
| margin: 0 auto; |
| line-height: 1.6; |
| } |
|
|
| .features-grid { |
| display: grid; |
| grid-template-columns: repeat(2, 1fr); |
| gap: 30px; |
| } |
|
|
| .feature-card { |
| background: #111111; |
| backdrop-filter: blur(20px); |
| border: 1px solid #222; |
| border-radius: 24px; |
| padding: 40px; |
| transition: all 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275); |
| position: relative; |
| overflow: hidden; |
| transform-style: preserve-3d; |
| } |
|
|
| .feature-card::before { |
| content: ''; |
| position: absolute; |
| top: 0; |
| left: 0; |
| right: 0; |
| height: 3px; |
| background: var(--gradient-primary); |
| opacity: 0; |
| transition: opacity 0.3s ease; |
| } |
|
|
| .feature-card::after { |
| content: ''; |
| position: absolute; |
| top: 50%; |
| left: 50%; |
| width: 300%; |
| height: 300%; |
| background: radial-gradient(circle, rgba(227, 245, 20, 0.2), transparent 70%); |
| |
| transform: translate(-50%, -50%) scale(0); |
| transition: transform 0.6s ease; |
| pointer-events: none; |
| } |
|
|
| .feature-card:hover::before { |
| opacity: 1; |
| } |
|
|
| .feature-card:hover::after { |
| transform: translate(-50%, -50%) scale(1); |
| } |
|
|
| .feature-card:hover { |
| transform: translateY(-12px) rotateX(5deg) rotateY(-5deg) scale(1.02); |
| border-color: var(--accent-yellow); |
| box-shadow: 0 0 50px rgba(227, 245, 20, 0.1); |
| } |
|
|
| .card-glow:hover { |
| box-shadow: 0 30px 80px rgba(102, 126, 234, 0.4), 0 0 100px rgba(102, 126, 234, 0.2); |
| } |
|
|
| .feature-icon { |
| width: 64px; |
| height: 64px; |
| border-radius: 16px; |
| margin-bottom: 24px; |
| display: flex; |
| align-items: center; |
| justify-content: center; |
| font-size: 32px; |
| position: relative; |
| animation: iconFloat 3s ease-in-out infinite; |
| transform-style: preserve-3d; |
| background: transparent; |
| color: var(--accent-yellow); |
| border: 1px solid #333; |
| } |
|
|
| @keyframes iconFloat { |
|
|
| 0%, |
| 100% { |
| transform: translateZ(0) rotateY(0deg); |
| } |
|
|
| 50% { |
| transform: translateZ(20px) rotateY(10deg); |
| } |
| } |
|
|
| .feature-card:hover .feature-icon { |
| animation: iconSpin 1s ease; |
| } |
|
|
| @keyframes iconSpin { |
| 0% { |
| transform: rotateY(0deg) scale(1); |
| } |
|
|
| 50% { |
| transform: rotateY(180deg) scale(1.1); |
| } |
|
|
| 100% { |
| transform: rotateY(360deg) scale(1); |
| } |
| } |
|
|
| |
|
|
| .feature-title { |
| font-size: 24px; |
| font-weight: 700; |
| margin-bottom: 16px; |
| } |
|
|
| .feature-description { |
| color: var(--text-secondary); |
| line-height: 1.8; |
| margin-bottom: 24px; |
| } |
|
|
| .feature-tags { |
| display: flex; |
| gap: 10px; |
| flex-wrap: wrap; |
| } |
|
|
| .tag { |
| padding: 6px 14px; |
| background: rgba(255, 255, 255, 0.05); |
| border: 1px solid rgba(255, 255, 255, 0.1); |
| border-radius: 20px; |
| font-size: 12px; |
| font-weight: 600; |
| color: var(--text-secondary); |
| } |
|
|
| |
| .tech-section { |
| padding: var(--section-padding) 0; |
| background: var(--secondary-bg); |
| } |
|
|
| .tech-grid { |
| display: grid; |
| grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); |
| gap: 20px; |
| max-width: 1000px; |
| margin: 0 auto; |
| } |
|
|
| .tech-card { |
| background: #111111; |
| backdrop-filter: blur(20px); |
| border: 1px solid #222; |
| border-radius: 20px; |
| padding: 30px 20px; |
| text-align: center; |
| transition: all 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275); |
| position: relative; |
| transform-style: preserve-3d; |
| overflow: hidden; |
| } |
|
|
| .tech-card::before { |
| content: ''; |
| position: absolute; |
| top: -50%; |
| left: -50%; |
| width: 200%; |
| height: 200%; |
| background: linear-gradient(45deg, transparent, rgba(255, 255, 255, 0.1), transparent); |
| transform: rotate(45deg); |
| transition: all 0.6s ease; |
| opacity: 0; |
| } |
|
|
| .tech-card:hover::before { |
| opacity: 1; |
| animation: shimmer 1.5s ease infinite; |
| } |
|
|
| @keyframes shimmer { |
| 0% { |
| transform: translateX(-100%) translateY(-100%) rotate(45deg); |
| } |
|
|
| 100% { |
| transform: translateX(100%) translateY(100%) rotate(45deg); |
| } |
| } |
|
|
| .tech-card:hover { |
| transform: translateY(-12px) scale(1.08) rotateX(5deg); |
| border-color: var(--accent-yellow); |
| box-shadow: 0 20px 60px rgba(227, 245, 20, 0.3), 0 0 60px rgba(227, 245, 20, 0.15); |
| } |
|
|
| .tech-icon { |
| font-size: 48px; |
| margin-bottom: 16px; |
| display: inline-block; |
| transition: all 0.4s ease; |
| transform-style: preserve-3d; |
| } |
|
|
| .tech-card:hover .tech-icon { |
| transform: scale(1.3) translateZ(30px) rotateY(360deg); |
| filter: drop-shadow(0 0 20px rgba(227, 245, 20, 0.6)); |
| } |
|
|
| .tech-card h3 { |
| font-size: 18px; |
| font-weight: 700; |
| margin-bottom: 8px; |
| } |
|
|
| .tech-card p { |
| font-size: 13px; |
| color: var(--text-secondary); |
| } |
|
|
| |
| .showcase-section { |
| padding: var(--section-padding) 0; |
| } |
|
|
| .showcase-grid { |
| display: grid; |
| grid-template-columns: repeat(4, 1fr); |
| gap: 30px; |
| } |
|
|
| .showcase-item { |
| text-align: center; |
| } |
|
|
| .showcase-image-wrapper { |
| position: relative; |
| margin-bottom: 20px; |
| border-radius: 20px; |
| overflow: hidden; |
| } |
|
|
| .showcase-image { |
| width: 100%; |
| aspect-ratio: 1; |
| border-radius: 20px; |
| background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); |
| |
| border: 2px solid rgba(255, 255, 255, 0.1); |
| transition: all 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275); |
| position: relative; |
| transform-style: preserve-3d; |
| } |
|
|
| .showcase-image::after { |
| content: ''; |
| position: absolute; |
| top: 0; |
| left: 0; |
| right: 0; |
| bottom: 0; |
| background: linear-gradient(135deg, transparent, rgba(255, 255, 255, 0.2), transparent); |
| border-radius: 20px; |
| opacity: 0; |
| transition: opacity 0.3s ease; |
| } |
|
|
| .showcase-item:hover .showcase-image { |
| transform: scale(1.08) translateZ(20px) rotateY(5deg); |
| box-shadow: 0 20px 60px rgba(0, 0, 0, 0.4); |
| } |
|
|
| .showcase-item:hover .showcase-image::after { |
| opacity: 1; |
| } |
|
|
| .real-sample { |
| background: linear-gradient(135deg, #43e97b 0%, #38f9d7 100%); |
| } |
|
|
| .fake-sample { |
| background: linear-gradient(135deg, #fa709a 0%, #fee140 100%); |
| } |
|
|
| .deepfake-sample { |
| background: linear-gradient(135deg, #f093fb 0%, #f5576c 100%); |
| } |
|
|
| .ai-art-sample { |
| background: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%); |
| } |
|
|
| .showcase-badge { |
| position: absolute; |
| top: 12px; |
| right: 12px; |
| padding: 6px 14px; |
| border-radius: 20px; |
| font-size: 11px; |
| font-weight: 700; |
| backdrop-filter: blur(10px); |
| } |
|
|
| .badge-real { |
| background: var(--accent-yellow); |
| border: 1px solid var(--accent-yellow); |
| color: #000; |
| } |
|
|
| .badge-fake { |
| background: var(--accent-yellow); |
| color: black; |
| border: none; |
| } |
|
|
| .confidence-bar { |
| position: absolute; |
| bottom: 0; |
| left: 0; |
| right: 0; |
| height: 40px; |
| background: rgba(0, 0, 0, 0.7); |
| backdrop-filter: blur(10px); |
| display: flex; |
| align-items: center; |
| padding: 0 16px; |
| } |
|
|
| .confidence-fill { |
| position: absolute; |
| left: 0; |
| top: 0; |
| bottom: 0; |
| background: var(--accent-yellow); |
| color: black; |
| opacity: 0.3; |
| |
| } |
|
|
| .real-confidence { |
| background: linear-gradient(90deg, #43e97b 0%, #38f9d7 100%); |
| } |
|
|
| .fake-confidence { |
| background: linear-gradient(90deg, #fa709a 0%, #fee140 100%); |
| } |
|
|
| .confidence-text { |
| position: relative; |
| z-index: 10; |
| font-size: 12px; |
| font-weight: 600; |
| color: white; |
| } |
|
|
| .showcase-title { |
| font-size: 18px; |
| font-weight: 700; |
| margin-bottom: 8px; |
| } |
|
|
| .showcase-description { |
| font-size: 14px; |
| color: var(--text-secondary); |
| } |
|
|
| |
| .model-section { |
| padding: var(--section-padding) 0; |
| background: var(--secondary-bg); |
| } |
|
|
| .model-card { |
| background: #111111; |
| backdrop-filter: blur(20px); |
| border: 1px solid #222; |
| border-radius: 32px; |
| padding: 50px; |
| } |
|
|
| .model-header { |
| display: flex; |
| align-items: center; |
| gap: 20px; |
| margin-bottom: 40px; |
| } |
|
|
| .model-icon { |
| font-size: 64px; |
| } |
|
|
| .model-name { |
| font-size: 32px; |
| font-weight: 800; |
| margin-bottom: 8px; |
| } |
|
|
| .model-version { |
| color: var(--text-secondary); |
| font-size: 16px; |
| } |
|
|
| .model-stats-grid { |
| display: grid; |
| grid-template-columns: repeat(4, 1fr); |
| gap: 30px; |
| margin-bottom: 40px; |
| padding: 40px; |
| background: rgba(255, 255, 255, 0.03); |
| border-radius: 24px; |
| } |
|
|
| .model-stat { |
| text-align: center; |
| } |
|
|
| .model-stat-label { |
| font-size: 13px; |
| color: var(--text-secondary); |
| margin-bottom: 8px; |
| text-transform: uppercase; |
| letter-spacing: 1px; |
| } |
|
|
| .model-stat-value { |
| font-size: 28px; |
| font-weight: 800; |
| background: var(--gradient-primary); |
| -webkit-background-clip: text; |
| -webkit-text-fill-color: transparent; |
| background-clip: text; |
| } |
|
|
| .capabilities-title { |
| font-size: 20px; |
| font-weight: 700; |
| margin-bottom: 20px; |
| } |
|
|
| .capabilities-grid { |
| display: flex; |
| gap: 12px; |
| flex-wrap: wrap; |
| } |
|
|
| .capability-badge { |
| padding: 10px 20px; |
| background: rgba(227, 245, 20, 0.1); |
| |
| border: 1px solid rgba(227, 245, 20, 0.3); |
| |
| border-radius: 12px; |
| font-size: 14px; |
| font-weight: 600; |
| color: var(--accent-yellow); |
| |
| } |
|
|
| |
| .how-it-works { |
| padding: var(--section-padding) 0; |
| } |
|
|
| .pipeline { |
| display: flex; |
| align-items: center; |
| justify-content: space-between; |
| max-width: 1100px; |
| margin: 0 auto; |
| } |
|
|
| .pipeline-step { |
| flex: 1; |
| text-align: center; |
| padding: 30px; |
| background: var(--card-bg); |
| backdrop-filter: blur(20px); |
| border: 1px solid rgba(255, 255, 255, 0.1); |
| border-radius: 24px; |
| position: relative; |
| transition: all 0.3s ease; |
| } |
|
|
| .pipeline-step:hover { |
| transform: translateY(-8px); |
| border-color: var(--accent-yellow); |
| |
| box-shadow: 0 12px 40px rgba(227, 245, 20, 0.2); |
| |
| } |
|
|
| .step-number { |
| position: absolute; |
| top: -15px; |
| left: 50%; |
| transform: translateX(-50%); |
| width: 40px; |
| height: 40px; |
| background: var(--gradient-primary); |
| border-radius: 50%; |
| display: flex; |
| align-items: center; |
| justify-content: center; |
| font-weight: 800; |
| font-size: 14px; |
| } |
|
|
| .step-icon { |
| font-size: 48px; |
| margin-bottom: 20px; |
| } |
|
|
| .step-title { |
| font-size: 20px; |
| font-weight: 700; |
| margin-bottom: 12px; |
| } |
|
|
| .step-description { |
| font-size: 14px; |
| color: var(--text-secondary); |
| line-height: 1.6; |
| } |
|
|
| .pipeline-arrow { |
| font-size: 32px; |
| color: var(--accent-yellow); |
| |
| margin: 0 20px; |
| opacity: 0.5; |
| } |
|
|
| |
| .demo-section { |
| padding: var(--section-padding) 0; |
| background: var(--secondary-bg); |
| } |
|
|
| .demo-card { |
| background: #111111; |
| backdrop-filter: blur(20px); |
| border: 1px solid #222; |
| border-radius: 32px; |
| padding: 60px; |
| } |
|
|
| .demo-header { |
| text-align: center; |
| margin-bottom: 50px; |
| } |
|
|
| .demo-title { |
| font-family: var(--font-display); |
| font-size: 48px; |
| font-weight: 800; |
| margin-bottom: 16px; |
| } |
|
|
| .demo-subtitle { |
| font-size: 18px; |
| color: var(--text-secondary); |
| } |
|
|
| |
| .upload-area { |
| border: 2px dashed #333; |
| background: #0A0A0A; |
| border-radius: 24px; |
| padding: 80px 40px; |
| text-align: center; |
| transition: all 0.3s ease; |
| cursor: pointer; |
| position: relative; |
| overflow: hidden; |
| } |
|
|
| .upload-area:hover { |
| border-color: var(--accent-yellow); |
| background: #0F0F0F; |
| } |
|
|
| .upload-icon { |
| font-size: 64px; |
| margin-bottom: 20px; |
| color: var(--accent-yellow); |
| } |
|
|
| .upload-title { |
| font-size: 24px; |
| font-weight: 700; |
| margin-bottom: 8px; |
| } |
|
|
| .upload-description { |
| color: var(--text-secondary); |
| margin-bottom: 30px; |
| } |
|
|
| .btn-upload { |
| background: var(--gradient-primary); |
| color: white; |
| padding: 14px 32px; |
| border: none; |
| border-radius: 12px; |
| font-weight: 600; |
| font-size: 16px; |
| cursor: pointer; |
| transition: all 0.3s ease; |
| } |
|
|
| .btn-upload:hover { |
| transform: translateY(-2px); |
| box-shadow: 0 8px 24px rgba(227, 245, 20, 0.4); |
| |
| } |
|
|
| .demo-results { |
| display: grid; |
| grid-template-columns: 1fr 1fr; |
| gap: 40px; |
| align-items: center; |
| } |
|
|
| .result-image-wrapper { |
| border-radius: 24px; |
| overflow: hidden; |
| border: 2px solid rgba(255, 255, 255, 0.1); |
| } |
|
|
| .result-image-wrapper img { |
| width: 100%; |
| display: block; |
| } |
|
|
| .result-details { |
| padding: 20px; |
| } |
|
|
| .result-verdict { |
| font-size: 32px; |
| font-weight: 800; |
| margin-bottom: 24px; |
| padding: 20px; |
| border-radius: 16px; |
| text-align: center; |
| } |
|
|
| .verdict-real { |
| background: #111; |
| color: white; |
| border: 1px solid #333; |
| } |
|
|
| .verdict-fake { |
| background: rgba(227, 245, 20, 0.1); |
| color: var(--accent-yellow); |
| border: 1px solid var(--accent-yellow); |
| box-shadow: 0 0 40px rgba(227, 245, 20, 0.1); |
| } |
|
|
| .result-confidence { |
| margin-bottom: 30px; |
| } |
|
|
| .confidence-label { |
| display: block; |
| font-size: 14px; |
| color: var(--text-secondary); |
| margin-bottom: 12px; |
| font-weight: 600; |
| } |
|
|
| .confidence-bar-large { |
| height: 40px; |
| background: rgba(255, 255, 255, 0.05); |
| border-radius: 20px; |
| overflow: hidden; |
| position: relative; |
| margin-bottom: 12px; |
| } |
|
|
| .confidence-fill-large { |
| height: 100%; |
| background: linear-gradient(90deg, transparent, var(--accent-yellow)); |
| color: black; |
| border-radius: 20px; |
| transition: width 1s ease; |
| display: flex; |
| align-items: center; |
| justify-content: flex-end; |
| padding-right: 16px; |
| font-weight: 700; |
| } |
|
|
| .confidence-value { |
| font-size: 24px; |
| font-weight: 800; |
| background: var(--gradient-primary); |
| -webkit-background-clip: text; |
| -webkit-text-fill-color: var(--accent-yellow); |
| background-clip: text; |
| } |
|
|
| .result-analysis { |
| background: rgba(255, 255, 255, 0.03); |
| padding: 24px; |
| border-radius: 16px; |
| margin-bottom: 24px; |
| } |
|
|
| .result-analysis h4 { |
| font-size: 18px; |
| margin-bottom: 12px; |
| } |
|
|
| .result-analysis p { |
| color: var(--text-secondary); |
| line-height: 1.8; |
| } |
|
|
| .btn-try-another { |
| width: 100%; |
| background: var(--glass-bg); |
| backdrop-filter: blur(10px); |
| color: white; |
| padding: 14px; |
| border: 1px solid rgba(255, 255, 255, 0.1); |
| border-radius: 12px; |
| font-weight: 600; |
| cursor: pointer; |
| transition: all 0.3s ease; |
| } |
|
|
| .btn-try-another:hover { |
| background: rgba(255, 255, 255, 0.1); |
| border-color: rgba(255, 255, 255, 0.2); |
| } |
|
|
| |
| .cta-section { |
| padding: var(--section-padding) 0; |
| position: relative; |
| overflow: hidden; |
| } |
|
|
| .cta-section::before { |
| content: ''; |
| position: absolute; |
| top: 0; |
| left: 0; |
| right: 0; |
| bottom: 0; |
| background: var(--gradient-primary); |
| opacity: 0.1; |
| border-radius: 40px; |
| } |
|
|
| .cta-content { |
| position: relative; |
| text-align: center; |
| padding: 60px 40px; |
| } |
|
|
| .cta-title { |
| font-family: var(--font-display); |
| font-size: clamp(28px, 3.5vw, 40px); |
| font-weight: 800; |
| margin-bottom: 16px; |
| line-height: 1.15; |
| } |
|
|
| .cta-description { |
| font-size: 18px; |
| color: var(--text-secondary); |
| margin-bottom: 32px; |
| } |
|
|
| .cta-actions { |
| display: flex; |
| gap: 20px; |
| justify-content: center; |
| } |
|
|
| .btn-cta-primary { |
| background: var(--gradient-primary); |
| color: white; |
| padding: 18px 40px; |
| border: none; |
| border-radius: 16px; |
| font-size: 18px; |
| font-weight: 600; |
| cursor: pointer; |
| transition: all 0.3s ease; |
| } |
|
|
| .btn-cta-primary:hover { |
| transform: translateY(-3px); |
| box-shadow: var(--shadow-glow); |
| } |
|
|
| .btn-cta-secondary { |
| background: var(--glass-bg); |
| backdrop-filter: blur(10px); |
| color: white; |
| padding: 18px 40px; |
| border: 1px solid rgba(255, 255, 255, 0.2); |
| border-radius: 16px; |
| font-size: 18px; |
| font-weight: 600; |
| cursor: pointer; |
| transition: all 0.3s ease; |
| } |
|
|
| .btn-cta-secondary:hover { |
| background: rgba(255, 255, 255, 0.1); |
| } |
|
|
| |
| .footer { |
| background: rgba(0, 0, 0, 0.7); |
| backdrop-filter: blur(10px); |
| -webkit-backdrop-filter: blur(10px); |
| padding: 40px 0 30px; |
| position: relative; |
| overflow: hidden; |
| border-top: 1px solid rgba(255, 255, 255, 0.1); |
| } |
|
|
| .footer::before { |
| content: ''; |
| position: absolute; |
| top: 0; |
| left: 0; |
| right: 0; |
| height: 1px; |
| background: linear-gradient(90deg, |
| transparent, |
| rgba(227, 245, 20, 0.8) 50%, |
| transparent); |
| z-index: 1; |
| box-shadow: 0 0 20px rgba(227, 245, 20, 0.3); |
| } |
|
|
| .footer-content-minimal { |
| display: grid; |
| grid-template-columns: auto auto; |
| justify-content: space-between; |
| align-items: last baseline; |
| gap: 16px 40px; |
| position: relative; |
| z-index: 2; |
| width: 100%; |
| } |
|
|
| .footer-brand .logo { |
| transition: transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275); |
| } |
|
|
| .footer-brand:hover .logo { |
| transform: scale(1.05) translateY(-5px); |
| } |
|
|
| .footer .logo-img { |
| width: 28px; |
| height: 28px; |
| gap: 8px; |
| } |
|
|
| .footer .logo-text { |
| font-size: 1rem; |
| } |
|
|
| .footer-tagline-premium { |
| font-size: 0.75rem; |
| font-weight: 500; |
| color: var(--text-secondary); |
| letter-spacing: 0.05em; |
| margin: 0; |
| font-family: var(--font-display); |
| text-transform: uppercase; |
| opacity: 0.5; |
| grid-row: 2; |
| grid-column: 1; |
| } |
|
|
| .footer-links-premium { |
| display: flex; |
| gap: 12px; |
| grid-row: 1; |
| grid-column: 2; |
| justify-content: flex-end; |
| } |
|
|
| .footer-link-premium-item { |
| display: flex; |
| align-items: center; |
| gap: 8px; |
| color: var(--text-secondary); |
| text-decoration: none; |
| font-size: 0.8rem; |
| font-weight: 500; |
| padding: 6px 14px; |
| background: rgba(255, 255, 255, 0.03); |
| border: 1px solid rgba(255, 255, 255, 0.1); |
| border-radius: 100px; |
| transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1); |
| position: relative; |
| overflow: hidden; |
| } |
|
|
| .footer-link-premium-item::after { |
| content: ''; |
| position: absolute; |
| inset: 0; |
| background: linear-gradient(135deg, rgba(227, 245, 20, 0.2), transparent); |
| opacity: 0; |
| transition: opacity 0.4s ease; |
| } |
|
|
| .footer-link-premium-item:hover { |
| color: var(--accent-yellow); |
| border-color: var(--accent-yellow); |
| transform: translateY(-5px); |
| box-shadow: 0 10px 30px rgba(227, 245, 20, 0.2); |
| background: rgba(0, 0, 0, 0.6); |
| } |
|
|
| .footer-link-premium-item:hover::after { |
| opacity: 1; |
| } |
|
|
| .footer-link-premium-item img, |
| .footer-link-premium-item svg { |
| width: 18px; |
| height: 18px; |
| transition: transform 0.4s ease; |
| } |
|
|
| .footer-link-premium-item:hover img, |
| .footer-link-premium-item:hover svg { |
| transform: scale(1.2) rotate(10deg); |
| } |
|
|
| .footer-copyright-premium { |
| font-size: 0.7rem; |
| color: var(--text-muted); |
| opacity: 0.4; |
| letter-spacing: 0.02em; |
| margin: 0; |
| grid-row: 2; |
| grid-column: 2; |
| text-align: right; |
| } |
|
|
| .footer-glow-enhanced { |
| position: absolute; |
| bottom: -150px; |
| left: 50%; |
| transform: translateX(-50%); |
| width: 600px; |
| height: 300px; |
| background: radial-gradient(circle, rgba(227, 245, 20, 0.1) 0%, transparent 70%); |
| filter: blur(80px); |
| pointer-events: none; |
| z-index: 1; |
| } |
|
|
| |
| :root[data-theme="light"] .footer { |
| background: rgba(255, 255, 255, 0.8); |
| border-top: 1px solid rgba(0, 68, 204, 0.1); |
| } |
|
|
| :root[data-theme="light"] .footer::before { |
| background: linear-gradient(90deg, transparent, var(--accent-yellow) 50%, transparent); |
| } |
|
|
| :root[data-theme="light"] .footer-tagline-premium { |
| color: #002B5C; |
| } |
|
|
| :root[data-theme="light"] .footer-link-premium-item { |
| background: rgba(0, 68, 204, 0.03); |
| border-color: rgba(0, 68, 204, 0.1); |
| color: var(--text-secondary); |
| } |
|
|
| :root[data-theme="light"] .footer-link-premium-item:hover { |
| background: rgba(0, 68, 204, 0.05); |
| border-color: var(--accent-yellow); |
| color: var(--accent-yellow); |
| } |
|
|
| @media (max-width: 991px) { |
| .footer-content-minimal { |
| display: flex; |
| flex-direction: column; |
| gap: 20px; |
| text-align: center; |
| align-items: center; |
| } |
|
|
| .footer-links-premium { |
| justify-content: center; |
| } |
|
|
| .footer-copyright-premium { |
| text-align: center; |
| } |
| } |
|
|
| .footer-glow { |
| position: absolute; |
| bottom: 0; |
| left: 50%; |
| transform: translateX(-50%); |
| width: 80%; |
| height: 2px; |
| background: linear-gradient(90deg, |
| transparent, |
| var(--accent-yellow) 30%, |
| var(--accent-purple) 50%, |
| var(--accent-yellow) 70%, |
| transparent); |
| opacity: 0.4; |
| filter: blur(2px); |
| animation: footerGlow 3s ease-in-out infinite; |
| } |
|
|
| @keyframes footerGlow { |
|
|
| 0%, |
| 100% { |
| opacity: 0.3; |
| filter: blur(2px); |
| } |
|
|
| 50% { |
| opacity: 0.6; |
| filter: blur(4px); |
| } |
| } |
|
|
| |
| @media (max-width: 1024px) { |
| .features-grid { |
| grid-template-columns: 1fr; |
| } |
|
|
| .tech-grid { |
| grid-template-columns: repeat(3, 1fr); |
| } |
|
|
| .showcase-grid { |
| grid-template-columns: repeat(2, 1fr); |
| } |
|
|
| .pipeline { |
| flex-direction: column; |
| gap: 30px; |
| } |
|
|
| .pipeline-arrow { |
| transform: rotate(90deg); |
| } |
|
|
| .demo-results { |
| grid-template-columns: 1fr; |
| } |
| } |
|
|
| @media (max-width: 768px) { |
| .hero-title { |
| font-size: 48px; |
| } |
|
|
| .section-title { |
| font-size: 40px; |
| } |
|
|
| .tech-grid { |
| grid-template-columns: repeat(2, 1fr); |
| } |
|
|
| .showcase-grid { |
| grid-template-columns: 1fr; |
| } |
|
|
| .model-stats-grid { |
| grid-template-columns: repeat(2, 1fr); |
| } |
|
|
| .footer-content { |
| grid-template-columns: 1fr; |
| } |
| } |
|
|
| |
| .heatmap-toggle-container { |
| position: absolute; |
| bottom: 20px; |
| left: 50%; |
| transform: translateX(-50%); |
| background: rgba(0, 0, 0, 0.7); |
| padding: 8px 16px; |
| border-radius: 30px; |
| border: 1px solid rgba(255, 255, 255, 0.2); |
| display: flex; |
| align-items: center; |
| gap: 10px; |
| backdrop-filter: blur(10px); |
| z-index: 10; |
| } |
|
|
| .toggle-label { |
| color: white; |
| font-size: 14px; |
| font-weight: 500; |
| } |
|
|
| |
| .switch { |
| position: relative; |
| display: inline-block; |
| width: 40px; |
| height: 20px; |
| } |
|
|
| .switch input { |
| opacity: 0; |
| width: 0; |
| height: 0; |
| } |
|
|
| .slider { |
| position: absolute; |
| cursor: pointer; |
| top: 0; |
| left: 0; |
| right: 0; |
| bottom: 0; |
| background-color: #333; |
| transition: .4s; |
| border-radius: 34px; |
| } |
|
|
| .slider:before { |
| position: absolute; |
| content: ""; |
| height: 16px; |
| width: 16px; |
| left: 2px; |
| bottom: 2px; |
| background-color: white; |
| transition: .4s; |
| border-radius: 50%; |
| } |
|
|
| input:checked+.slider { |
| background-color: var(--accent-yellow); |
| } |
|
|
| input:checked+.slider:before { |
| transform: translateX(20px); |
| background-color: black; |
| } |
|
|
| |
| .comparison-container { |
| max-width: 800px; |
| margin: 60px auto; |
| position: relative; |
| border-radius: 20px; |
| padding: 20px; |
| background: #111; |
| border: 1px solid #333; |
| } |
|
|
| .comparison-header { |
| text-align: center; |
| margin-bottom: 30px; |
| } |
|
|
| .comparison-header h3 { |
| font-family: var(--font-display); |
| font-size: 32px; |
| } |
|
|
| .img-comp-container { |
| position: relative; |
| height: 450px; |
| |
| overflow: hidden; |
| border-radius: 12px; |
| cursor: ew-resize; |
| } |
|
|
| .img-comp-img { |
| position: absolute; |
| width: auto; |
| height: auto; |
| overflow: hidden; |
| } |
|
|
| .img-comp-img img { |
| display: block; |
| } |
|
|
| .slider-handle { |
| position: absolute; |
| z-index: 9; |
| cursor: ew-resize; |
| width: 40px; |
| height: 40px; |
| background-color: var(--accent-yellow); |
| color: black; |
| border-radius: 50%; |
| display: flex; |
| align-items: center; |
| justify-content: center; |
| font-weight: bold; |
| top: 50%; |
| transform: translate(-50%, -50%); |
| box-shadow: 0 0 20px rgba(227, 245, 20, 0.5); |
| pointer-events: none; |
| |
| } |
|
|
| @media (max-width: 768px) { |
| .img-comp-container { |
| height: 250px; |
| } |
|
|
| .img-comp-img img { |
| height: 250px; |
| width: auto; |
| } |
| } |
|
|
| |
| .analysis-page { |
| min-height: 100vh; |
| background: var(--primary-bg); |
| } |
|
|
| .analysis-container { |
| padding: 120px 40px 40px; |
| min-height: 100vh; |
| max-width: 1600px; |
| margin: 0 auto; |
| } |
|
|
| .analysis-grid { |
| display: grid; |
| grid-template-columns: 1fr 1fr; |
| gap: 40px; |
| |
| } |
|
|
| |
| @media (max-width: 1024px) { |
| .analysis-grid { |
| grid-template-columns: 1fr; |
| gap: 30px; |
| } |
| } |
|
|
| |
| .upload-section { |
| display: flex; |
| flex-direction: column; |
| gap: 20px; |
| position: relative; |
| |
| } |
|
|
| .section-header-small h2 { |
| font-family: var(--font-display); |
| font-size: 32px; |
| margin-bottom: 8px; |
| color: var(--text-primary); |
| } |
|
|
| .section-header-small p { |
| color: var(--text-secondary); |
| } |
|
|
| .upload-area { |
| flex: 1; |
| border: 2px dashed rgba(255, 255, 255, 0.1); |
| border-radius: 24px; |
| background: rgba(255, 255, 255, 0.02); |
| display: flex; |
| flex-direction: column; |
| align-items: center; |
| justify-content: center; |
| transition: all 0.3s ease; |
| min-height: 400px; |
| padding: 20px; |
| } |
|
|
| .upload-area:hover { |
| border-color: var(--accent-yellow); |
| background: rgba(227, 245, 20, 0.02); |
| } |
|
|
| .preview-area { |
| width: 100%; |
| height: 100%; |
| position: relative; |
| border-radius: 24px; |
| overflow: hidden; |
| border: 1px solid rgba(255, 255, 255, 0.1); |
| } |
|
|
| .preview-area img { |
| width: 100%; |
| height: 100%; |
| object-fit: contain; |
| background: #000; |
| } |
|
|
| .btn-close-preview { |
| position: absolute; |
| top: 20px; |
| right: 20px; |
| width: 40px; |
| height: 40px; |
| border-radius: 50%; |
| background: rgba(0, 0, 0, 0.5); |
| border: 1px solid rgba(255, 255, 255, 0.2); |
| color: white; |
| font-size: 24px; |
| cursor: pointer; |
| backdrop-filter: blur(10px); |
| transition: all 0.3s ease; |
| } |
|
|
| .btn-close-preview:hover { |
| background: var(--accent-yellow); |
| color: black; |
| } |
|
|
| |
| .results-section { |
| background: #111; |
| border: 1px solid #222; |
| border-radius: 24px; |
| padding: 40px; |
| display: flex; |
| flex-direction: column; |
| justify-content: center; |
| } |
|
|
| .empty-state { |
| text-align: center; |
| color: var(--text-secondary); |
| } |
|
|
| .empty-icon { |
| font-size: 64px; |
| margin-bottom: 24px; |
| opacity: 0.2; |
| } |
|
|
| |
| .verdict-card { |
| text-align: center; |
| margin-bottom: 40px; |
| } |
|
|
| .verdict-label { |
| font-size: 14px; |
| letter-spacing: 2px; |
| text-transform: uppercase; |
| color: var(--text-secondary); |
| } |
|
|
| .verdict-title { |
| font-family: var(--font-display); |
| font-size: 64px; |
| margin: 10px 0 30px; |
| line-height: 1; |
| } |
|
|
| .verdict-fake { |
| color: var(--accent-yellow); |
| } |
|
|
| .verdict-real { |
| color: #10b981; |
| } |
|
|
| |
| .confidence-meter { |
| margin: 0 auto; |
| max-width: 400px; |
| } |
|
|
| .meter-bar { |
| height: 12px; |
| background: rgba(255, 255, 255, 0.05); |
| border-radius: 100px; |
| margin-bottom: 10px; |
| overflow: hidden; |
| position: relative; |
| box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.3); |
| } |
|
|
| .meter-fill { |
| height: 100%; |
| background: var(--accent-yellow); |
| width: 0%; |
| transition: width 1.2s cubic-bezier(0.4, 0, 0.2, 1); |
| position: relative; |
| border-radius: 100px; |
| box-shadow: 0 0 20px rgba(227, 245, 20, 0.6); |
| } |
|
|
| |
| .meter-fill::before { |
| content: ''; |
| position: absolute; |
| top: 0; |
| left: -100%; |
| width: 100%; |
| height: 100%; |
| background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent); |
| animation: shimmer 2s infinite; |
| } |
|
|
| @keyframes shimmer { |
| 0% { |
| left: -100%; |
| } |
|
|
| 100% { |
| left: 100%; |
| } |
| } |
|
|
| |
| .meter-fill.confidence-low { |
| background: linear-gradient(90deg, #ef4444, #dc2626); |
| box-shadow: 0 0 20px rgba(239, 68, 68, 0.6); |
| } |
|
|
| .meter-fill.confidence-medium { |
| background: linear-gradient(90deg, #f59e0b, #d97706); |
| box-shadow: 0 0 20px rgba(245, 158, 11, 0.6); |
| } |
|
|
| .meter-fill.confidence-high { |
| background: linear-gradient(90deg, #E3F514, #B8CC00); |
| box-shadow: 0 0 20px rgba(227, 245, 20, 0.6); |
| } |
|
|
| .meter-fill.confidence-very-high { |
| background: linear-gradient(90deg, #10b981, #059669); |
| box-shadow: 0 0 20px rgba(16, 185, 129, 0.6); |
| } |
|
|
| .meter-value { |
| font-family: var(--font-display); |
| font-size: 24px; |
| color: var(--text-primary); |
| font-weight: 700; |
| } |
|
|
| |
| .metrics-grid { |
| display: grid; |
| grid-template-columns: repeat(2, 1fr); |
| gap: 20px; |
| margin-bottom: 40px; |
| } |
|
|
| .metric-card { |
| background: rgba(255, 255, 255, 0.03); |
| border: 1px solid rgba(255, 255, 255, 0.05); |
| padding: 20px; |
| border-radius: 16px; |
| text-align: center; |
| } |
|
|
| .metric-label { |
| display: block; |
| font-size: 14px; |
| color: var(--text-secondary); |
| margin-bottom: 8px; |
| } |
|
|
| .metric-value { |
| font-family: var(--font-display); |
| font-size: 24px; |
| font-weight: 600; |
| } |
|
|
| .btn-secondary-nav { |
| color: var(--text-secondary); |
| text-decoration: none; |
| font-weight: 500; |
| transition: color 0.3s ease; |
| } |
|
|
| .btn-secondary-nav:hover { |
| color: var(--accent-yellow); |
| } |
|
|
| |
| .floating-element { |
| position: absolute; |
| border-radius: 12px; |
| overflow: hidden; |
| box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3); |
| animation: float 6s ease-in-out infinite; |
| z-index: 5; |
| opacity: 0.6; |
| border: 1px solid rgba(255, 255, 255, 0.1); |
| } |
|
|
| .float-1 { |
| top: 20%; |
| right: 10%; |
| width: 200px; |
| background: #000; |
| animation-delay: 0s; |
| } |
|
|
| .float-2 { |
| bottom: 20%; |
| left: 5%; |
| width: 150px; |
| background: #111; |
| animation-delay: 2s; |
| } |
|
|
| .float-3 { |
| top: 60%; |
| right: 5%; |
| width: 120px; |
| background: #222; |
| animation-delay: 4s; |
| } |
|
|
| |
| @media (max-width: 1024px) { |
| .analysis-container { |
| height: auto; |
| overflow-y: auto; |
| } |
|
|
| .analysis-grid { |
| grid-template-columns: 1fr; |
| height: auto; |
| } |
|
|
| .upload-area { |
| min-height: 300px; |
| } |
| } |
|
|
| |
| #chartContainer { |
| width: 60%; |
| margin: 20px auto; |
| position: relative; |
| } |
|
|
| |
| .btn-delete-history { |
| background: rgba(255, 59, 48, 0.1); |
| color: #ff3b30; |
| border: 1px solid rgba(255, 59, 48, 0.3); |
| padding: 12px 24px; |
| border-radius: 12px; |
| font-weight: 600; |
| cursor: pointer; |
| transition: all 0.3s ease; |
| margin-top: 40px; |
| display: block; |
| width: 100%; |
| text-align: center; |
| } |
|
|
| .btn-delete-history:hover { |
| background: rgba(255, 59, 48, 0.2); |
| box-shadow: 0 0 20px rgba(255, 59, 48, 0.2); |
| transform: translateY(-2px); |
| } |
|
|
| |
|
|
| |
| .glitch-hover { |
| position: relative; |
| display: inline-block; |
| } |
|
|
| .glitch-hover:hover::before, |
| .glitch-hover:hover::after { |
| content: attr(data-text); |
| position: absolute; |
| top: 0; |
| left: 0; |
| width: 100%; |
| height: 100%; |
| } |
|
|
| .glitch-hover:hover::before { |
| left: 2px; |
| text-shadow: -2px 0 #ff00c1; |
| clip-path: inset(44% 0 61% 0); |
| animation: glitch-anim 0.3s infinite linear alternate-reverse; |
| } |
|
|
| .glitch-hover:hover::after { |
| left: -2px; |
| text-shadow: -2px 0 #00fff9; |
| clip-path: inset(58% 0 43% 0); |
| animation: glitch-anim 0.3s infinite linear alternate-reverse; |
| } |
|
|
| @keyframes glitch-anim { |
| 0% { |
| clip-path: inset(42% 0 10% 0); |
| transform: skew(0.5deg); |
| } |
|
|
| 10% { |
| clip-path: inset(18% 0 88% 0); |
| transform: skew(0.4deg); |
| } |
|
|
| 20% { |
| clip-path: inset(76% 0 11% 0); |
| transform: skew(0.1deg); |
| } |
|
|
| 30% { |
| clip-path: inset(34% 0 29% 0); |
| transform: skew(0.5deg); |
| } |
|
|
| 40% { |
| clip-path: inset(12% 0 71% 0); |
| transform: skew(0.6deg); |
| } |
|
|
| 50% { |
| clip-path: inset(93% 0 3% 0); |
| transform: skew(0.8deg); |
| } |
|
|
| 60% { |
| clip-path: inset(7% 0 54% 0); |
| transform: skew(0.2deg); |
| } |
|
|
| 70% { |
| clip-path: inset(52% 0 17% 0); |
| transform: skew(0.9deg); |
| } |
|
|
| 80% { |
| clip-path: inset(23% 0 38% 0); |
| transform: skew(0.3deg); |
| } |
|
|
| 90% { |
| clip-path: inset(61% 0 6% 0); |
| transform: skew(0.7deg); |
| } |
|
|
| 100% { |
| clip-path: inset(84% 0 69% 0); |
| transform: skew(0.4deg); |
| } |
| } |
|
|
| |
| .badge-fake { |
| transition: all 0.3s ease; |
| } |
|
|
| .badge-fake:hover { |
| animation: glitch-badge 0.5s infinite; |
| } |
|
|
| @keyframes glitch-badge { |
|
|
| 0%, |
| 100% { |
| transform: translate(0); |
| text-shadow: none; |
| } |
|
|
| 25% { |
| transform: translate(-2px, 1px); |
| text-shadow: 2px 0 #ff00c1, -2px 0 #00fff9; |
| } |
|
|
| 75% { |
| transform: translate(2px, -1px); |
| text-shadow: -2px 0 #ff00c1, 2px 0 #00fff9; |
| } |
| } |
|
|
| |
| .scan-container { |
| position: relative; |
| overflow: hidden; |
| } |
|
|
| .scan-line { |
| position: absolute; |
| top: 0; |
| left: 0; |
| width: 100%; |
| height: 4px; |
| background: var(--accent-yellow); |
| box-shadow: 0 0 15px var(--accent-yellow), 0 0 30px var(--accent-yellow); |
| opacity: 0.6; |
| animation: scanMove 3s linear infinite; |
| z-index: 10; |
| } |
|
|
| |
| .scan-line.fake-scan { |
| background: #ff4444; |
| box-shadow: 0 0 15px #ff4444, 0 0 30px #ff4444; |
| } |
|
|
| @keyframes scanMove { |
| 0% { |
| top: -10%; |
| opacity: 0; |
| } |
|
|
| 10% { |
| opacity: 0.8; |
| } |
|
|
| 90% { |
| opacity: 0.8; |
| } |
|
|
| 100% { |
| top: 110%; |
| opacity: 0; |
| } |
| } |
|
|
| |
| |
| .file-count-badge { |
| background: var(--accent-yellow); |
| color: var(--text-inverse); |
| padding: 8px 16px; |
| border-radius: 20px; |
| font-weight: 700; |
| font-size: 14px; |
| margin-top: 10px; |
| animation: bounceIn 0.3s ease; |
| } |
|
|
| @keyframes bounceIn { |
| 0% { |
| transform: scale(0); |
| } |
|
|
| 50% { |
| transform: scale(1.1); |
| } |
|
|
| 100% { |
| transform: scale(1); |
| } |
| } |
|
|
| |
| .upload-area-active { |
| border-color: var(--accent-yellow) !important; |
| background: rgba(227, 245, 20, 0.1) !important; |
| box-shadow: 0 0 30px rgba(227, 245, 20, 0.3) !important; |
| transform: scale(1.02); |
| } |
|
|
| |
| .file-queue-container { |
| background: rgba(17, 17, 17, 0.6); |
| backdrop-filter: blur(10px); |
| border: 1px solid rgba(255, 255, 255, 0.05); |
| border-radius: 20px; |
| padding: 24px; |
| margin-top: 20px; |
| animation: fadeInUp 0.4s ease; |
| } |
|
|
| .file-queue-container .section-header-small { |
| display: flex; |
| justify-content: space-between; |
| align-items: center; |
| margin-bottom: 15px; |
| } |
|
|
| .file-queue-container .section-header-small h3 { |
| font-size: 18px; |
| color: #fff; |
| margin: 0; |
| } |
|
|
| |
| .file-queue { |
| display: flex; |
| flex-direction: column; |
| gap: 12px; |
| max-height: 400px; |
| overflow-y: auto; |
| padding-right: 10px; |
| } |
|
|
| .file-queue::-webkit-scrollbar { |
| width: 6px; |
| } |
|
|
| .file-queue::-webkit-scrollbar-thumb { |
| background: rgba(227, 245, 20, 0.3); |
| border-radius: 3px; |
| } |
|
|
| .file-queue-item { |
| background: rgba(255, 255, 255, 0.03); |
| border: 1px solid rgba(255, 255, 255, 0.05); |
| border-radius: 12px; |
| padding: 12px 16px; |
| display: flex; |
| align-items: center; |
| gap: 12px; |
| transition: all 0.3s ease; |
| animation: slideInLeft 0.3s ease; |
| } |
|
|
| @keyframes slideInLeft { |
| from { |
| opacity: 0; |
| transform: translateX(-20px); |
| } |
|
|
| to { |
| opacity: 1; |
| transform: translateX(0); |
| } |
| } |
|
|
| .file-queue-item:hover { |
| background: rgba(255, 255, 255, 0.05); |
| border-color: rgba(227, 245, 20, 0.3); |
| } |
|
|
| .file-queue-item.uploading { |
| border-color: var(--accent-yellow); |
| background: rgba(227, 245, 20, 0.05); |
| } |
|
|
| .file-queue-item.completed { |
| border-color: #10b981; |
| background: rgba(16, 185, 129, 0.05); |
| } |
|
|
| .file-queue-item.error { |
| border-color: #ff3b30; |
| background: rgba(255, 59, 48, 0.05); |
| } |
|
|
| .file-icon { |
| font-size: 24px; |
| flex-shrink: 0; |
| } |
|
|
| .file-info { |
| flex: 1; |
| min-width: 0; |
| } |
|
|
| .file-name { |
| color: #fff; |
| font-weight: 500; |
| font-size: 14px; |
| white-space: nowrap; |
| overflow: hidden; |
| text-overflow: ellipsis; |
| } |
|
|
| .file-size { |
| color: #888; |
| font-size: 12px; |
| margin-top: 2px; |
| } |
|
|
| .file-status { |
| flex-shrink: 0; |
| font-size: 12px; |
| font-weight: 600; |
| } |
|
|
| .file-status.pending { |
| color: #888; |
| } |
|
|
| .file-status.uploading { |
| color: var(--accent-yellow); |
| } |
|
|
| .file-status.completed { |
| color: #10b981; |
| } |
|
|
| .file-status.error { |
| color: #ff3b30; |
| } |
|
|
| .file-remove { |
| background: none; |
| border: none; |
| color: #888; |
| font-size: 20px; |
| cursor: pointer; |
| padding: 4px 8px; |
| transition: color 0.2s ease; |
| flex-shrink: 0; |
| } |
|
|
| .file-remove:hover { |
| color: #ff3b30; |
| } |
|
|
| |
| .progress-container { |
| width: 100%; |
| margin-top: 8px; |
| } |
|
|
| .progress-bar-wrapper { |
| width: 100%; |
| height: 6px; |
| background: rgba(255, 255, 255, 0.1); |
| border-radius: 3px; |
| overflow: hidden; |
| position: relative; |
| } |
|
|
| .progress-bar-fill { |
| height: 100%; |
| background: linear-gradient(90deg, #E3F514, #B8CC00); |
| border-radius: 3px; |
| transition: width 0.3s ease; |
| position: relative; |
| overflow: hidden; |
| } |
|
|
| .progress-bar-fill::after { |
| content: ''; |
| position: absolute; |
| top: 0; |
| left: 0; |
| right: 0; |
| bottom: 0; |
| background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent); |
| animation: shimmer 1.5s infinite; |
| } |
|
|
| @keyframes shimmer { |
| 0% { |
| transform: translateX(-100%); |
| } |
|
|
| 100% { |
| transform: translateX(100%); |
| } |
| } |
|
|
| .progress-details { |
| display: flex; |
| justify-content: space-between; |
| margin-top: 4px; |
| font-size: 11px; |
| color: #888; |
| } |
|
|
| |
| .statistics-grid { |
| display: grid; |
| grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); |
| gap: 24px; |
| margin-top: 30px; |
| } |
|
|
| .stat-card { |
| background: rgba(17, 17, 17, 0.6); |
| backdrop-filter: blur(10px); |
| border: 1px solid rgba(255, 255, 255, 0.05); |
| border-radius: 20px; |
| padding: 32px 24px; |
| text-align: center; |
| transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275); |
| position: relative; |
| overflow: hidden; |
| } |
|
|
| .stat-card::before { |
| content: ''; |
| position: absolute; |
| top: 0; |
| left: 0; |
| width: 100%; |
| height: 100%; |
| background: linear-gradient(45deg, transparent, rgba(227, 245, 20, 0.03), transparent); |
| transform: translateX(-100%); |
| transition: transform 0.6s; |
| } |
|
|
| .stat-card:hover { |
| border-color: var(--accent-yellow); |
| transform: translateY(-8px); |
| box-shadow: 0 20px 40px rgba(0, 0, 0, 0.4), 0 0 30px rgba(227, 245, 20, 0.1); |
| } |
|
|
| .stat-card:hover::before { |
| transform: translateX(100%); |
| } |
|
|
| .stat-icon { |
| font-size: 48px; |
| margin-bottom: 16px; |
| filter: grayscale(0.3); |
| } |
|
|
| .stat-value { |
| font-size: 48px; |
| font-weight: 800; |
| color: var(--accent-yellow); |
| font-family: var(--font-display); |
| margin-bottom: 8px; |
| line-height: 1; |
| } |
|
|
| .stat-label { |
| font-size: 14px; |
| color: #888; |
| font-weight: 500; |
| text-transform: uppercase; |
| letter-spacing: 1px; |
| } |
|
|
| |
| .recent-grid { |
| display: grid; |
| grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); |
| gap: 24px; |
| margin-top: 30px; |
| } |
|
|
| .recent-card { |
| background: rgba(17, 17, 17, 0.6); |
| backdrop-filter: blur(10px); |
| border: 1px solid rgba(255, 255, 255, 0.05); |
| border-radius: 20px; |
| overflow: hidden; |
| transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275); |
| cursor: pointer; |
| position: relative; |
| animation: fadeInUp 0.6s ease backwards; |
| } |
|
|
| .recent-card:nth-child(1) { |
| animation-delay: 0.1s; |
| } |
|
|
| .recent-card:nth-child(2) { |
| animation-delay: 0.2s; |
| } |
|
|
| .recent-card:nth-child(3) { |
| animation-delay: 0.3s; |
| } |
|
|
| .recent-card:nth-child(4) { |
| animation-delay: 0.4s; |
| } |
|
|
| .recent-card:nth-child(5) { |
| animation-delay: 0.5s; |
| } |
|
|
| .recent-card:nth-child(6) { |
| animation-delay: 0.6s; |
| } |
|
|
| .recent-card:hover { |
| border-color: var(--accent-yellow); |
| transform: translateY(-8px) scale(1.02); |
| box-shadow: 0 20px 40px rgba(0, 0, 0, 0.4), 0 0 30px rgba(227, 245, 20, 0.1); |
| } |
|
|
| .recent-card::before { |
| content: ''; |
| position: absolute; |
| top: 0; |
| left: 0; |
| width: 100%; |
| height: 100%; |
| background: linear-gradient(45deg, transparent, rgba(227, 245, 20, 0.03), transparent); |
| transform: translateX(-100%); |
| transition: transform 0.6s; |
| z-index: 1; |
| } |
|
|
| .recent-card:hover::before { |
| transform: translateX(100%); |
| } |
|
|
| .recent-card-image { |
| width: 100%; |
| height: 180px; |
| object-fit: cover; |
| background: rgba(255, 255, 255, 0.02); |
| } |
|
|
| .recent-card-content { |
| padding: 20px; |
| position: relative; |
| z-index: 2; |
| } |
|
|
| .recent-card-header { |
| display: flex; |
| justify-content: space-between; |
| align-items: center; |
| margin-bottom: 12px; |
| } |
|
|
| .recent-badge { |
| padding: 6px 12px; |
| border-radius: 8px; |
| font-weight: 700; |
| font-size: 12px; |
| } |
|
|
| .recent-badge.fake { |
| background: rgba(227, 245, 20, 0.1); |
| color: var(--accent-yellow); |
| border: 1px solid var(--accent-yellow); |
| } |
|
|
| .recent-badge.real { |
| background: rgba(16, 185, 129, 0.2); |
| color: #10b981; |
| border: 1px solid #10b981; |
| } |
|
|
| .recent-date { |
| color: #888; |
| font-size: 12px; |
| } |
|
|
| .recent-card-title { |
| color: #fff; |
| font-size: 14px; |
| font-weight: 600; |
| margin-bottom: 8px; |
| white-space: nowrap; |
| overflow: hidden; |
| text-overflow: ellipsis; |
| } |
|
|
| .recent-confidence { |
| display: flex; |
| flex-direction: column; |
| gap: 4px; |
| } |
|
|
| .recent-confidence-label { |
| font-size: 11px; |
| color: #888; |
| } |
|
|
| .recent-confidence-bar { |
| width: 100%; |
| height: 4px; |
| background: rgba(255, 255, 255, 0.1); |
| border-radius: 2px; |
| overflow: hidden; |
| } |
|
|
| .recent-confidence-fill { |
| height: 100%; |
| background: var(--accent-yellow); |
| border-radius: 2px; |
| transition: width 0.5s ease; |
| } |
|
|
| |
| .recent-grid-empty { |
| grid-column: 1 / -1; |
| text-align: center; |
| padding: 60px 20px; |
| color: #888; |
| } |
|
|
| .recent-grid-empty-icon { |
| font-size: 64px; |
| margin-bottom: 16px; |
| opacity: 0.3; |
| } |
|
|
| |
| .section-header { |
| display: flex; |
| justify-content: space-between; |
| align-items: center; |
| margin-bottom: 20px; |
| } |
|
|
| .section-header .btn-secondary { |
| background: transparent; |
| color: var(--text-primary); |
| padding: 10px 20px; |
| border: 1px solid rgba(255, 255, 255, 0.2); |
| border-radius: 20px; |
| font-weight: 600; |
| cursor: pointer; |
| transition: all 0.3s ease; |
| text-decoration: none; |
| display: inline-block; |
| } |
|
|
| .section-header .btn-secondary:hover { |
| background: rgba(255, 255, 255, 0.05); |
| border-color: var(--accent-yellow); |
| color: var(--accent-yellow); |
| } |
|
|
| |
| @media (max-width: 768px) { |
| .statistics-grid { |
| grid-template-columns: repeat(2, 1fr); |
| gap: 16px; |
| } |
|
|
| .stat-card { |
| padding: 24px 16px; |
| } |
|
|
| .stat-icon { |
| font-size: 36px; |
| } |
|
|
| .stat-value { |
| font-size: 36px; |
| } |
|
|
| .recent-grid { |
| grid-template-columns: 1fr; |
| gap: 16px; |
| } |
|
|
| .section-header { |
| flex-direction: column; |
| gap: 12px; |
| align-items: flex-start; |
| } |
| } |
|
|
| |
| .queue-header { |
| display: flex; |
| justify-content: space-between; |
| align-items: center; |
| margin-bottom: 20px; |
| padding-bottom: 16px; |
| border-bottom: 1px solid rgba(255, 255, 255, 0.1); |
| } |
|
|
| .queue-title-section { |
| display: flex; |
| align-items: center; |
| gap: 12px; |
| } |
|
|
| .queue-title { |
| font-size: 18px; |
| color: #fff; |
| margin: 0; |
| font-weight: 700; |
| } |
|
|
| .queue-count-badge { |
| background: var(--accent-yellow); |
| color: #000; |
| padding: 4px 12px; |
| border-radius: 12px; |
| font-size: 13px; |
| font-weight: 800; |
| min-width: 30px; |
| text-align: center; |
| } |
|
|
| .queue-actions { |
| display: flex; |
| gap: 8px; |
| } |
|
|
| .btn-secondary-small { |
| background: rgba(255, 255, 255, 0.05); |
| border: 1px solid rgba(255, 255, 255, 0.2); |
| color: #fff; |
| padding: 8px 14px; |
| border-radius: 10px; |
| font-weight: 600; |
| font-size: 12px; |
| cursor: pointer; |
| transition: all 0.2s ease; |
| white-space: nowrap; |
| } |
|
|
| .btn-secondary-small:hover { |
| background: rgba(255, 255, 255, 0.1); |
| border-color: var(--accent-yellow); |
| color: var(--accent-yellow); |
| transform: translateY(-1px); |
| } |
|
|
| .btn-secondary-outline { |
| background: transparent; |
| border: 1px solid rgba(255, 255, 255, 0.3); |
| color: #fff; |
| padding: 14px 24px; |
| border-radius: 12px; |
| font-weight: 600; |
| font-size: 14px; |
| cursor: pointer; |
| transition: all 0.3s ease; |
| } |
|
|
| .btn-secondary-outline:hover { |
| background: rgba(255, 255, 255, 0.05); |
| border-color: rgba(255, 255, 255, 0.5); |
| transform: translateY(-2px); |
| } |
|
|
| .queue-footer { |
| display: flex; |
| gap: 12px; |
| margin-top: 20px; |
| padding-top: 16px; |
| border-top: 1px solid rgba(255, 255, 255, 0.1); |
| } |
|
|
| |
| .file-queue-item .file-icon { |
| background: rgba(227, 245, 20, 0.1); |
| border-radius: 10px; |
| width: 44px; |
| height: 44px; |
| display: flex; |
| align-items: center; |
| justify-content: center; |
| } |
|
|
| .file-queue-item.uploading .file-icon { |
| animation: pulse 1.5s infinite; |
| } |
|
|
| @keyframes pulse { |
|
|
| 0%, |
| 100% { |
| opacity: 1; |
| } |
|
|
| 50% { |
| opacity: 0.6; |
| } |
| } |
|
|
| .file-queue-item.completed .file-icon { |
| background: rgba(16, 185, 129, 0.1); |
| } |
|
|
| .file-queue-item.error .file-icon { |
| background: rgba(255, 59, 48, 0.1); |
| } |
|
|
| |
| .progress-bar-wrapper { |
| box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.3); |
| } |
|
|
| .progress-details { |
| font-weight: 600; |
| } |
|
|
| |
| @media (max-width: 768px) { |
| .queue-header { |
| flex-direction: column; |
| gap: 12px; |
| align-items: flex-start; |
| } |
|
|
| .queue-actions { |
| width: 100%; |
| } |
|
|
| .btn-secondary-small { |
| flex: 1; |
| } |
|
|
| .queue-footer { |
| flex-direction: column; |
| } |
|
|
| .btn-secondary-outline, |
| .queue-footer .btn-primary { |
| flex: 1 !important; |
| width: 100%; |
| } |
| } |
|
|
| |
| .detection-badges { |
| display: flex; |
| flex-direction: column; |
| gap: 12px; |
| margin-bottom: 24px; |
| width: 100%; |
| } |
|
|
| .detection-badge { |
| padding: 12px 16px; |
| border-radius: 12px; |
| font-weight: 600; |
| display: flex; |
| align-items: center; |
| gap: 10px; |
| font-size: 0.95rem; |
| animation: badgeAppear 0.5s ease-out; |
| box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1); |
| } |
|
|
| .badge-critical { |
| background: rgba(255, 51, 51, 0.1); |
| color: #ff4d4d; |
| border: 1px solid rgba(255, 51, 51, 0.3); |
| } |
|
|
| .badge-warning { |
| background: rgba(227, 245, 20, 0.1); |
| color: var(--accent-yellow); |
| border: 1px solid rgba(227, 245, 20, 0.3); |
| } |
|
|
| |
| :root[data-theme="light"] .badge-critical { |
| background: rgba(255, 51, 51, 0.1); |
| color: #cc0000; |
| border-color: rgba(255, 51, 51, 0.3); |
| box-shadow: 0 4px 12px rgba(255, 51, 51, 0.1); |
| } |
|
|
| :root[data-theme="light"] .badge-warning { |
| background: rgba(0, 68, 204, 0.1); |
| color: #0044CC; |
| border-color: rgba(0, 68, 204, 0.3); |
| box-shadow: 0 4px 12px rgba(0, 68, 204, 0.1); |
| } |
|
|
| @keyframes badgeAppear { |
| from { |
| opacity: 0; |
| transform: translateY(-10px); |
| } |
|
|
| to { |
| opacity: 1; |
| transform: translateY(0); |
| } |
| } |
|
|
| |
|
|
| |
| .skeleton-loader { |
| width: 100%; |
| padding: 20px; |
| background: var(--card-bg); |
| border-radius: var(--border-radius-lg); |
| border: var(--border-light); |
| box-shadow: var(--shadow-sm); |
| } |
|
|
| .skeleton-header { |
| display: flex; |
| align-items: center; |
| gap: 15px; |
| margin-bottom: 25px; |
| } |
|
|
| .skeleton-circle { |
| width: 50px; |
| height: 50px; |
| border-radius: 50%; |
| background: var(--secondary-bg); |
| } |
|
|
| .skeleton-title { |
| width: 60%; |
| height: 30px; |
| border-radius: 6px; |
| background: var(--secondary-bg); |
| } |
|
|
| .skeleton-metrics { |
| display: grid; |
| grid-template-columns: repeat(3, 1fr); |
| gap: 15px; |
| margin-bottom: 25px; |
| } |
|
|
| .skeleton-card { |
| height: 80px; |
| border-radius: 16px; |
| background: var(--secondary-bg); |
| } |
|
|
| .skeleton-text-block { |
| width: 100%; |
| height: 120px; |
| border-radius: 8px; |
| background: var(--secondary-bg); |
| } |
|
|
| .animate-pulse { |
| animation: pulse 1.5s infinite ease-in-out; |
| } |
|
|
| @keyframes pulse { |
| 0% { |
| opacity: 0.5; |
| } |
|
|
| 50% { |
| opacity: 0.8; |
| } |
|
|
| 100% { |
| opacity: 0.5; |
| } |
| } |
|
|
| |
| .upload-progress-container { |
| width: 100%; |
| margin-top: 15px; |
| text-align: center; |
| } |
|
|
| .progress-bar { |
| width: 100%; |
| height: 6px; |
| background: var(--secondary-bg); |
| border-radius: 10px; |
| overflow: hidden; |
| margin-bottom: 8px; |
| } |
|
|
| .progress-fill { |
| height: 100%; |
| background: var(--accent-yellow); |
| width: 0%; |
| transition: width 0.3s ease; |
| } |
|
|
| :root[data-theme="light"] .progress-fill { |
| background: #0044CC; |
| } |
|
|
| .progress-text { |
| font-size: 12px; |
| color: var(--text-secondary); |
| font-family: var(--font-display); |
| } |
|
|
| |
| .toast-container { |
| position: fixed; |
| bottom: 30px; |
| right: 30px; |
| z-index: 9999; |
| display: flex; |
| flex-direction: column; |
| gap: 10px; |
| pointer-events: none; |
| } |
|
|
| .toast { |
| background: #1A1A1A; |
| color: #fff; |
| padding: 16px 24px; |
| border-radius: 12px; |
| border-left: 4px solid var(--accent-yellow); |
| box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3); |
| min-width: 300px; |
| transform: translateX(100%); |
| transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275); |
| display: flex; |
| align-items: center; |
| gap: 12px; |
| pointer-events: auto; |
| font-family: var(--font-primary); |
| } |
|
|
| :root[data-theme="light"] .toast { |
| background: #fff; |
| color: #000; |
| box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1); |
| border-left-color: #0044CC; |
| } |
|
|
| .toast.show { |
| transform: translateX(0); |
| } |
|
|
| .toast.success { |
| border-left-color: #10b981; |
| } |
|
|
| .toast.error { |
| border-left-color: #ef4444; |
| } |
|
|
| .toast.warning { |
| border-left-color: #f59e0b; |
| } |
|
|
| .toast-icon { |
| font-size: 1.2rem; |
| } |
|
|
| .toast-message { |
| font-size: 0.9rem; |
| font-weight: 500; |
| } |
|
|
| |
| .confetti-container { |
| position: fixed; |
| top: 0; |
| left: 0; |
| width: 100%; |
| height: 100%; |
| pointer-events: none; |
| z-index: 10000; |
| overflow: hidden; |
| } |
|
|
| .confetti { |
| position: absolute; |
| width: 10px; |
| height: 10px; |
| background: var(--accent-yellow); |
| opacity: 0.8; |
| } |
|
|
| |
| .btn-filter { |
| background: transparent; |
| border: 1px solid var(--border-light); |
| color: var(--text-secondary); |
| padding: 6px 16px; |
| border-radius: 20px; |
| cursor: pointer; |
| transition: all 0.3s ease; |
| font-family: var(--font-primary); |
| font-size: 12px; |
| } |
|
|
| .btn-filter.active, |
| .btn-filter:hover { |
| background: rgba(255, 255, 255, 0.05); |
| color: var(--text-primary); |
| border-color: var(--text-primary); |
| } |
|
|
| :root[data-theme="light"] .btn-filter.active, |
| :root[data-theme="light"] .btn-filter:hover { |
| background: #F0F7FF; |
| color: #0044CC; |
| border-color: #0044CC; |
| } |
|
|
| |
| .confidence-gauge-wrapper { |
| display: flex; |
| justify-content: center; |
| margin-top: 20px; |
| } |
|
|
| .confidence-gauge { |
| position: relative; |
| width: 160px; |
| height: 160px; |
| } |
|
|
| .gauge-svg { |
| width: 100%; |
| height: 100%; |
| transform: rotate(-90deg); |
| } |
|
|
| .gauge-bg { |
| fill: none; |
| stroke: rgba(255, 255, 255, 0.1); |
| stroke-width: 8; |
| stroke-linecap: round; |
| } |
|
|
| :root[data-theme="light"] .gauge-bg { |
| stroke: rgba(0, 68, 204, 0.1); |
| } |
|
|
| .gauge-fill { |
| fill: none; |
| stroke: var(--accent-yellow); |
| stroke-width: 8; |
| stroke-linecap: round; |
| stroke-dasharray: 283; |
| |
| stroke-dashoffset: 283; |
| |
| transition: stroke-dashoffset 1.5s cubic-bezier(0.4, 0, 0.2, 1); |
| } |
|
|
| :root[data-theme="light"] .gauge-fill { |
| stroke: #0044CC; |
| } |
|
|
| .gauge-text { |
| position: absolute; |
| top: 50%; |
| left: 50%; |
| transform: translate(-50%, -50%); |
| text-align: center; |
| display: flex; |
| flex-direction: column; |
| } |
|
|
| #gaugeValue { |
| font-size: 32px; |
| font-weight: 700; |
| font-family: var(--font-display); |
| color: var(--text-primary); |
| } |
|
|
| .gauge-label { |
| font-size: 12px; |
| color: var(--text-secondary); |
| text-transform: uppercase; |
| letter-spacing: 1px; |
| } |
|
|
| |
| .processing-overlay { |
| position: absolute; |
| top: 0; |
| left: 0; |
| width: 100%; |
| height: 100%; |
| background: rgba(0, 0, 0, 0.7); |
| |
| backdrop-filter: blur(5px); |
| z-index: 100; |
| |
| display: flex; |
| justify-content: center; |
| align-items: center; |
| flex-direction: column; |
| border-radius: 24px; |
| |
| } |
|
|
| .processing-content { |
| text-align: center; |
| color: var(--text-primary); |
| width: 90%; |
| max-width: 320px; |
| |
| padding: 60px 40px; |
| |
| min-height: 400px; |
| |
| display: flex; |
| flex-direction: column; |
| justify-content: center; |
| align-items: center; |
| background: rgba(20, 20, 20, 0.95); |
| |
| border: 1px solid rgba(255, 255, 255, 0.1); |
| border-radius: 24px; |
| box-shadow: 0 10px 40px rgba(0, 0, 0, 0.6); |
| } |
|
|
| .processing-spinner { |
| position: relative; |
| width: 80px; |
| height: 80px; |
| margin: 0 auto 30px; |
| } |
|
|
| .spinner-core { |
| position: absolute; |
| top: 50%; |
| left: 50%; |
| transform: translate(-50%, -50%); |
| width: 40px; |
| height: 40px; |
| background: var(--accent-yellow); |
| mask-image: url("deep_learning_icon.png"); |
| |
| mask-size: contain; |
| -webkit-mask-image: url("deep_learning_icon.png"); |
| -webkit-mask-size: contain; |
| border-radius: 50%; |
| animation: pulseCore 2s infinite ease-in-out; |
| } |
|
|
| |
| .spinner-core { |
| background: transparent; |
| border: 4px solid var(--accent-yellow); |
| border-top-color: transparent; |
| border-radius: 50%; |
| width: 50px; |
| height: 50px; |
| animation: spin 1s linear infinite; |
| -webkit-mask-image: none; |
| mask-image: none; |
| |
| } |
|
|
| .spinner-ring { |
| position: absolute; |
| top: 0; |
| left: 0; |
| width: 100%; |
| height: 100%; |
| border: 2px solid rgba(255, 255, 255, 0.1); |
| border-radius: 50%; |
| border-top-color: var(--accent-yellow); |
| animation: spin 3s linear infinite; |
| } |
|
|
| .processing-title { |
| font-family: var(--font-display); |
| font-size: 1.5rem; |
| letter-spacing: 2px; |
| margin-bottom: 10px; |
| background: var(--gradient-text); |
| -webkit-background-clip: text; |
| -webkit-text-fill-color: transparent; |
| } |
|
|
| .processing-status { |
| color: var(--text-secondary); |
| font-size: 0.9rem; |
| margin-bottom: 30px; |
| } |
|
|
| .processing-progress-container { |
| width: 100%; |
| height: 6px; |
| background: rgba(255, 255, 255, 0.1); |
| border-radius: 100px; |
| overflow: hidden; |
| margin-bottom: 15px; |
| position: relative; |
| } |
|
|
| .processing-progress-bar { |
| width: 0%; |
| height: 100%; |
| background: var(--accent-yellow); |
| box-shadow: 0 0 10px var(--accent-yellow); |
| transition: width 0.3s linear; |
| } |
|
|
| .processing-time { |
| font-family: monospace; |
| color: var(--text-muted); |
| font-size: 0.8rem; |
| } |
|
|
| @keyframes spin { |
| 0% { |
| transform: translate(-50%, -50%) rotate(0deg); |
| } |
|
|
| 100% { |
| transform: translate(-50%, -50%) rotate(360deg); |
| } |
| } |
|
|
| @keyframes spinRing { |
| 0% { |
| transform: rotate(0deg); |
| } |
|
|
| 100% { |
| transform: rotate(360deg); |
| } |
| } |
|
|
| |
| .upload-area.drag-over { |
| border-color: var(--accent-yellow); |
| background: rgba(227, 245, 20, 0.05); |
| |
| transform: scale(1.02); |
| box-shadow: 0 0 30px rgba(227, 245, 20, 0.15); |
| } |
|
|
| .upload-area.drag-over .upload-icon { |
| transform: scale(1.1); |
| color: var(--accent-yellow); |
| text-shadow: 0 0 20px var(--accent-yellow); |
| } |
|
|
| |
| .toast-container { |
| position: fixed; |
| bottom: 30px; |
| right: 30px; |
| display: flex; |
| flex-direction: column; |
| gap: 15px; |
| z-index: 3000; |
| |
| pointer-events: none; |
| |
| } |
|
|
| .toast { |
| background: rgba(20, 20, 20, 0.95); |
| backdrop-filter: blur(10px); |
| border: 1px solid rgba(255, 255, 255, 0.1); |
| border-left: 4px solid var(--accent-yellow); |
| |
| border-radius: 12px; |
| padding: 16px 24px; |
| width: 350px; |
| color: var(--text-primary); |
| box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5); |
| display: flex; |
| align-items: center; |
| gap: 15px; |
| animation: toastSlideIn 0.3s cubic-bezier(0.16, 1, 0.3, 1); |
| pointer-events: auto; |
| transition: all 0.3s ease; |
| } |
|
|
| .toast.toast-error { |
| border-left-color: #ff3b30; |
| box-shadow: 0 10px 30px rgba(255, 59, 48, 0.1); |
| } |
|
|
| .toast.toast-warning { |
| border-left-color: #ffcc00; |
| } |
|
|
| .toast.toast-success { |
| border-left-color: #10b981; |
| |
| box-shadow: 0 10px 30px rgba(16, 185, 129, 0.1); |
| } |
|
|
| .toast.hiding { |
| animation: toastSlideOut 0.3s forwards; |
| } |
|
|
| .toast-icon { |
| font-size: 20px; |
| } |
|
|
| .toast-message { |
| font-size: 14px; |
| line-height: 1.4; |
| font-weight: 500; |
| } |
|
|
| @keyframes toastSlideIn { |
| from { |
| opacity: 0; |
| transform: translateX(50px) scale(0.9); |
| } |
|
|
| to { |
| opacity: 1; |
| transform: translateX(0) scale(1); |
| } |
| } |
|
|
| @keyframes toastSlideOut { |
| to { |
| opacity: 0; |
| transform: translateX(20px) scale(0.9); |
| } |
| } |
|
|
|
|
| |
| :focus-visible { |
| outline: 2px solid var(--accent-yellow); |
| outline-offset: 4px; |
| border-radius: 4px; |
| z-index: 9999; |
| } |
|
|
| |
| button:focus-visible, |
| a:focus-visible, |
| input:focus-visible, |
| [tabindex]:focus-visible { |
| outline: 2px solid var(--accent-yellow); |
| box-shadow: 0 0 0 4px rgba(227, 245, 20, 0.3); |
| } |
|
|
| |
| .btn-primary:focus-visible, |
| .btn-secondary-small:focus-visible, |
| .btn-close-preview:focus-visible { |
| border-radius: 12px; |
| } |
|
|
| .upload-area:focus-visible { |
| border-color: var(--accent-yellow); |
| background: rgba(227, 245, 20, 0.05); |
| } |
|
|
| |
|
|
| |
| html, |
| body { |
| overflow-x: hidden; |
| max-width: 100vw; |
| } |
|
|
| body { |
| position: relative; |
| } |
|
|
| |
| body.menu-open { |
| overflow: hidden; |
| height: 100vh; |
| } |
|
|
| |
| .hamburger { |
| display: none; |
| flex-direction: column; |
| justify-content: space-around; |
| width: 32px; |
| height: 32px; |
| background: transparent; |
| border: none; |
| cursor: pointer; |
| padding: 0; |
| z-index: 1001; |
| transition: all 0.3s ease; |
| } |
|
|
| .hamburger span { |
| width: 100%; |
| height: 3px; |
| background: var(--accent-yellow); |
| border-radius: 3px; |
| transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1); |
| transform-origin: center; |
| } |
|
|
| .hamburger:hover span { |
| background: #fff; |
| } |
|
|
| .hamburger.active span:nth-child(1) { |
| transform: translateY(10px) rotate(45deg); |
| } |
|
|
| .hamburger.active span:nth-child(2) { |
| opacity: 0; |
| transform: translateX(-20px); |
| } |
|
|
| .hamburger.active span:nth-child(3) { |
| transform: translateY(-10px) rotate(-45deg); |
| } |
|
|
| |
| .nav-menu-wrapper { |
| display: flex; |
| align-items: center; |
| gap: 32px; |
| } |
|
|
| |
| @media (max-width: 1200px) { |
| .container { |
| max-width: 100%; |
| padding: 0 40px; |
| } |
| } |
|
|
| |
| @media (max-width: 1024px) { |
| :root { |
| --container-width: 100%; |
| --section-padding: 80px; |
| } |
|
|
| .container { |
| padding: 0 30px; |
| } |
|
|
| |
| .navbar { |
| backdrop-filter: blur(20px); |
| background: rgba(0, 0, 0, 0.8); |
| border-bottom: 1px solid rgba(255, 255, 255, 0.1); |
| } |
|
|
| .nav-menu { |
| gap: 20px; |
| font-size: 14px; |
| } |
|
|
| |
| .hero-title { |
| font-size: 48px; |
| line-height: 1.2; |
| } |
|
|
| .hero-description { |
| font-size: 16px; |
| } |
|
|
| .hero-stats { |
| flex-wrap: wrap; |
| gap: 20px; |
| justify-content: center; |
| } |
|
|
| .hero-actions { |
| flex-wrap: wrap; |
| gap: 12px; |
| } |
|
|
| |
| .tech-grid { |
| grid-template-columns: repeat(3, 1fr); |
| gap: 20px; |
| } |
|
|
| .showcase-grid { |
| grid-template-columns: repeat(2, 1fr); |
| gap: 20px; |
| } |
|
|
| .model-stats-grid { |
| grid-template-columns: repeat(2, 1fr); |
| } |
|
|
| |
| .pipeline { |
| overflow-x: auto; |
| padding-bottom: 20px; |
| -webkit-overflow-scrolling: touch; |
| } |
|
|
| .pipeline::-webkit-scrollbar { |
| height: 6px; |
| } |
| } |
|
|
| |
| @media (max-width: 768px) { |
| :root { |
| --section-padding: 60px; |
| --border-radius-lg: 16px; |
| } |
|
|
| .container { |
| padding: 0 20px; |
| } |
|
|
| |
| .analysis-container { |
| padding: 100px 20px 40px; |
| } |
|
|
| .analysis-grid { |
| grid-template-columns: 1fr; |
| gap: 24px; |
| } |
|
|
| .section-header-small h2 { |
| font-size: 24px; |
| } |
|
|
| .section-header-small p { |
| font-size: 14px; |
| } |
|
|
| .upload-area { |
| min-height: 280px; |
| padding: 20px 16px; |
| border-radius: 16px; |
| } |
|
|
| .upload-icon svg { |
| width: 40px; |
| height: 40px; |
| } |
|
|
| .upload-title { |
| font-size: 18px; |
| } |
|
|
| .upload-description { |
| font-size: 13px; |
| text-align: center; |
| } |
|
|
| .btn-primary { |
| min-height: 48px; |
| padding: 14px 28px; |
| font-size: 15px; |
| width: 100%; |
| max-width: 300px; |
| } |
|
|
| |
| .preview-area { |
| border-radius: 16px; |
| min-height: 300px; |
| } |
|
|
| .btn-close-preview { |
| width: 44px; |
| height: 44px; |
| top: 12px; |
| right: 12px; |
| font-size: 28px; |
| } |
|
|
| |
| .heatmap-toggle-container { |
| bottom: 12px; |
| padding: 10px 16px; |
| font-size: 13px; |
| } |
|
|
| |
| .processing-overlay { |
| border-radius: 16px; |
| } |
|
|
| .processing-title { |
| font-size: 20px; |
| letter-spacing: 2px; |
| } |
|
|
| .processing-status { |
| font-size: 14px; |
| } |
|
|
| .processing-time { |
| font-size: 13px; |
| } |
|
|
| |
| .results-section { |
| padding: 20px; |
| } |
|
|
| .verdict-card { |
| padding: 24px 20px; |
| } |
|
|
| .verdict-label { |
| font-size: 11px; |
| } |
|
|
| .verdict-title { |
| font-size: 28px; |
| } |
|
|
| .meter-value { |
| font-size: 16px; |
| } |
|
|
| |
| .metrics-grid { |
| grid-template-columns: 1fr; |
| gap: 16px; |
| } |
|
|
| .metric-card { |
| padding: 16px; |
| } |
|
|
| .metric-label { |
| font-size: 13px; |
| } |
|
|
| .metric-value { |
| font-size: 20px; |
| } |
|
|
| |
| .file-queue-container { |
| border-radius: 16px; |
| } |
|
|
| .queue-header { |
| flex-direction: column; |
| gap: 12px; |
| align-items: stretch; |
| } |
|
|
| .queue-actions { |
| display: flex; |
| gap: 8px; |
| width: 100%; |
| } |
|
|
| .queue-actions button { |
| flex: 1; |
| min-height: 44px; |
| } |
|
|
| .file-queue-item { |
| padding: 12px; |
| } |
|
|
| .queue-footer { |
| flex-direction: column; |
| gap: 12px; |
| } |
|
|
| .queue-footer button { |
| width: 100% !important; |
| min-height: 48px; |
| } |
|
|
| |
| .statistics-grid { |
| grid-template-columns: repeat(2, 1fr); |
| gap: 16px; |
| } |
|
|
| .stat-card { |
| padding: 20px 16px; |
| } |
|
|
| .stat-icon { |
| font-size: 32px; |
| } |
|
|
| .stat-value { |
| font-size: 28px; |
| } |
|
|
| .stat-label { |
| font-size: 13px; |
| } |
|
|
| |
| .recent-grid { |
| grid-template-columns: 1fr; |
| gap: 16px; |
| } |
|
|
| .recent-card { |
| padding: 16px; |
| } |
|
|
| |
| * { |
| -webkit-tap-highlight-color: transparent; |
| } |
|
|
| |
| html { |
| -webkit-text-size-adjust: 100%; |
| -moz-text-size-adjust: 100%; |
| -ms-text-size-adjust: 100%; |
| } |
|
|
| |
| .navbar { |
| padding: 12px 0; |
| background: rgba(0, 0, 0, 0.95); |
| backdrop-filter: blur(20px); |
| } |
|
|
| .nav-content { |
| flex-direction: row; |
| flex-wrap: wrap; |
| gap: 12px; |
| align-items: center; |
| justify-content: space-between; |
| } |
|
|
| .logo { |
| flex: 0 0 auto; |
| order: 1; |
| } |
|
|
| .logo-img { |
| width: 32px; |
| height: 32px; |
| } |
|
|
| .logo-text { |
| font-size: 18px; |
| } |
|
|
| |
| .hamburger { |
| display: flex; |
| order: 2; |
| margin-left: auto; |
| } |
|
|
| |
| .nav-menu-wrapper { |
| position: fixed; |
| top: 0; |
| right: -100%; |
| height: 100vh; |
| width: 280px; |
| max-width: 85vw; |
| background: rgba(0, 0, 0, 0.98); |
| backdrop-filter: blur(20px); |
| border-left: 1px solid rgba(255, 255, 255, 0.1); |
| padding: 80px 30px 30px; |
| flex-direction: column; |
| align-items: stretch; |
| gap: 30px; |
| transition: right 0.4s cubic-bezier(0.645, 0.045, 0.355, 1); |
| z-index: 1000; |
| overflow-y: auto; |
| } |
|
|
| .nav-menu-wrapper.active { |
| right: 0; |
| box-shadow: -10px 0 40px rgba(0, 0, 0, 0.5); |
| } |
|
|
| |
| .nav-menu-wrapper::before { |
| content: ''; |
| position: fixed; |
| top: 0; |
| left: 0; |
| right: 280px; |
| bottom: 0; |
| background: rgba(0, 0, 0, 0.7); |
| opacity: 0; |
| pointer-events: none; |
| transition: opacity 0.4s ease; |
| z-index: -1; |
| } |
|
|
| .nav-menu-wrapper.active::before { |
| opacity: 1; |
| pointer-events: all; |
| } |
|
|
| |
| .nav-menu { |
| position: relative; |
| left: auto; |
| transform: none; |
| flex-direction: column; |
| justify-content: flex-start; |
| align-items: stretch; |
| gap: 0; |
| flex: none; |
| order: 1; |
| margin: 0; |
| padding: 0; |
| border: none; |
| } |
|
|
| .nav-menu li { |
| flex: none; |
| width: 100%; |
| border-bottom: 1px solid rgba(255, 255, 255, 0.05); |
| } |
|
|
| .nav-menu li:last-child { |
| border-bottom: none; |
| } |
|
|
| .nav-menu a { |
| padding: 16px 20px; |
| font-size: 16px; |
| display: block; |
| width: 100%; |
| text-align: left; |
| transition: all 0.3s ease; |
| border-left: 3px solid transparent; |
| } |
|
|
| .nav-menu a:hover, |
| .nav-menu a.active { |
| background: rgba(227, 245, 20, 0.1); |
| border-left-color: var(--accent-yellow); |
| padding-left: 24px; |
| } |
|
|
| .btn-primary, |
| .btn-secondary-nav { |
| padding: 14px 24px; |
| font-size: 15px; |
| white-space: nowrap; |
| width: 100%; |
| text-align: center; |
| justify-content: center; |
| order: 2; |
| margin: 0; |
| } |
|
|
| |
| .hero { |
| min-height: auto; |
| padding: 140px 0 60px; |
| } |
|
|
| .hero-content { |
| text-align: center; |
| z-index: 2; |
| position: relative; |
| } |
|
|
| .hero-badge { |
| justify-content: center; |
| font-size: 13px; |
| padding: 8px 16px; |
| } |
|
|
| .hero-title { |
| font-size: 36px; |
| line-height: 1.2; |
| margin-bottom: 16px; |
| } |
|
|
| .hero-description { |
| font-size: 15px; |
| line-height: 1.6; |
| max-width: 100%; |
| } |
|
|
| .hero-actions { |
| flex-direction: column; |
| gap: 12px; |
| align-items: stretch; |
| max-width: 400px; |
| margin: 0 auto; |
| } |
|
|
| .btn-hero-primary, |
| .btn-hero-secondary { |
| width: 100%; |
| justify-content: center; |
| padding: 16px 32px; |
| font-size: 15px; |
| } |
|
|
| .hero-stats { |
| flex-direction: column; |
| gap: 20px; |
| padding: 24px 20px; |
| margin-top: 30px; |
| } |
|
|
| .stat-divider { |
| display: none; |
| } |
|
|
| .stat-item { |
| width: 100%; |
| text-align: center; |
| } |
|
|
| .stat-value { |
| font-size: 36px; |
| } |
|
|
| .stat-label { |
| font-size: 14px; |
| } |
|
|
| |
| .floating-3d-object { |
| display: none; |
| } |
|
|
| .gradient-orb { |
| opacity: 0.1 !important; |
| } |
|
|
| |
| .scroll-indicator { |
| display: none; |
| } |
|
|
| |
| section { |
| padding: var(--section-padding) 0; |
| overflow-x: hidden; |
| } |
|
|
| .section-header { |
| text-align: center; |
| margin-bottom: 40px; |
| } |
|
|
| .section-title { |
| font-size: 32px; |
| line-height: 1.2; |
| } |
|
|
| .section-subtitle { |
| font-size: 15px; |
| margin-top: 12px; |
| } |
|
|
| |
| .orbit-container { |
| min-height: 400px; |
| margin: 30px 0; |
| overflow: hidden; |
| } |
|
|
| .orbit-stage { |
| transform: scale(0.6); |
| transform-origin: center; |
| } |
|
|
| .orbit-info-card { |
| position: static; |
| margin: 20px auto; |
| max-width: 100%; |
| padding: 20px; |
| } |
|
|
| |
| .tech-grid { |
| grid-template-columns: repeat(2, 1fr); |
| gap: 16px; |
| } |
|
|
| .tech-card { |
| padding: 24px 16px; |
| } |
|
|
| .tech-icon { |
| font-size: 36px; |
| margin-bottom: 12px; |
| } |
|
|
| .tech-card h3 { |
| font-size: 16px; |
| margin-bottom: 8px; |
| } |
|
|
| .tech-card p { |
| font-size: 13px; |
| } |
|
|
| |
| .showcase-grid { |
| grid-template-columns: 1fr; |
| gap: 24px; |
| } |
|
|
| .showcase-item { |
| max-width: 100%; |
| } |
|
|
| .comparison-container { |
| margin-bottom: 40px; |
| } |
|
|
| .img-comp-container { |
| height: 300px !important; |
| } |
|
|
| |
| .extension-section { |
| padding: 60px 0; |
| } |
|
|
| .extension-container { |
| flex-direction: column; |
| gap: 40px; |
| } |
|
|
| .extension-content, |
| .extension-visual { |
| width: 100%; |
| max-width: 100%; |
| } |
|
|
| .extension-title { |
| font-size: 32px; |
| } |
|
|
| .extension-description { |
| font-size: 15px; |
| } |
|
|
| .chrome-btn { |
| width: 100%; |
| justify-content: center; |
| padding: 16px 32px; |
| } |
|
|
| |
| .model-card { |
| padding: 30px 20px; |
| } |
|
|
| .model-header { |
| flex-direction: column; |
| text-align: center; |
| gap: 16px; |
| } |
|
|
| .model-name { |
| font-size: 22px; |
| } |
|
|
| .model-version { |
| font-size: 14px; |
| } |
|
|
| .model-stats-grid { |
| grid-template-columns: repeat(2, 1fr); |
| gap: 16px; |
| } |
|
|
| .model-stat-label { |
| font-size: 12px; |
| } |
|
|
| .model-stat-value { |
| font-size: 16px; |
| } |
|
|
| .capabilities-grid { |
| grid-template-columns: repeat(2, 1fr); |
| gap: 8px; |
| } |
|
|
| .capability-badge { |
| font-size: 12px; |
| padding: 6px 12px; |
| } |
|
|
| |
| .pipeline { |
| flex-direction: column; |
| align-items: center; |
| gap: 24px; |
| overflow: visible; |
| } |
|
|
| .pipeline-arrow { |
| transform: rotate(90deg); |
| font-size: 28px; |
| margin: 8px 0; |
| } |
|
|
| .pipeline-step { |
| width: 100%; |
| max-width: 350px; |
| padding: 24px 20px; |
| } |
|
|
| .step-number { |
| font-size: 16px; |
| } |
|
|
| .step-icon { |
| font-size: 40px; |
| } |
|
|
| .step-title { |
| font-size: 18px; |
| } |
|
|
| .step-description { |
| font-size: 14px; |
| } |
|
|
| |
| .cta-section { |
| padding: 60px 0; |
| } |
|
|
| .cta-content { |
| text-align: center; |
| padding: 40px 20px; |
| } |
|
|
| .cta-title { |
| font-size: 28px; |
| margin-bottom: 12px; |
| } |
|
|
| .cta-description { |
| font-size: 15px; |
| margin-bottom: 24px; |
| } |
|
|
| .cta-actions { |
| flex-direction: column; |
| gap: 12px; |
| max-width: 400px; |
| margin: 0 auto; |
| } |
|
|
| .btn-cta-primary, |
| .btn-cta-secondary { |
| width: 100%; |
| padding: 16px 32px; |
| font-size: 15px; |
| } |
|
|
| |
| .footer { |
| padding: 50px 0 30px; |
| } |
|
|
| .footer-content { |
| flex-direction: column; |
| gap: 40px; |
| text-align: center; |
| } |
|
|
| .footer-brand { |
| align-items: center; |
| } |
|
|
| .footer-description { |
| font-size: 14px; |
| } |
|
|
| .footer-links { |
| flex-direction: column; |
| gap: 30px; |
| } |
|
|
| .footer-column ul { |
| display: flex; |
| flex-direction: column; |
| gap: 12px; |
| } |
|
|
| .footer-column ul li a { |
| font-size: 14px; |
| } |
|
|
| .footer-bottom { |
| flex-direction: column; |
| gap: 16px; |
| text-align: center; |
| font-size: 13px; |
| margin-top: 40px; |
| } |
|
|
| .footer-legal { |
| gap: 24px; |
| } |
|
|
| |
| .analysis-container { |
| padding-top: 120px; |
| padding-bottom: 40px; |
| } |
|
|
| .analysis-grid { |
| grid-template-columns: 1fr; |
| gap: 30px; |
| } |
|
|
| .section-header-small h2 { |
| font-size: 24px; |
| } |
|
|
| .section-header-small p { |
| font-size: 14px; |
| } |
|
|
| .upload-section, |
| .results-section { |
| width: 100%; |
| max-width: 100%; |
| } |
|
|
| .upload-area { |
| padding: 40px 20px; |
| min-height: 250px; |
| } |
|
|
| .upload-icon svg { |
| width: 40px; |
| height: 40px; |
| } |
|
|
| .upload-title { |
| font-size: 18px; |
| margin-bottom: 8px; |
| } |
|
|
| .upload-description { |
| font-size: 13px; |
| } |
|
|
| .file-queue-container { |
| margin-top: 20px; |
| } |
|
|
| .queue-header { |
| flex-direction: column; |
| gap: 12px; |
| align-items: stretch; |
| } |
|
|
| .queue-title-section { |
| width: 100%; |
| } |
|
|
| .queue-actions { |
| width: 100%; |
| display: flex; |
| gap: 8px; |
| } |
|
|
| .queue-actions button { |
| flex: 1; |
| font-size: 13px; |
| } |
|
|
| .queue-footer { |
| flex-direction: column; |
| gap: 10px; |
| } |
|
|
| .queue-footer button { |
| width: 100% !important; |
| flex: none !important; |
| } |
|
|
| .results-section { |
| padding: 30px 20px; |
| } |
|
|
| .empty-state { |
| padding: 60px 20px; |
| } |
|
|
| .empty-icon svg { |
| width: 40px; |
| height: 40px; |
| } |
|
|
| .empty-state h3 { |
| font-size: 20px; |
| } |
|
|
| .empty-state p { |
| font-size: 14px; |
| } |
|
|
| .verdict-card { |
| padding: 24px 20px; |
| margin-bottom: 20px; |
| } |
|
|
| .verdict-label { |
| font-size: 11px; |
| } |
|
|
| .verdict-title { |
| font-size: 28px; |
| margin: 8px 0; |
| } |
|
|
| .detection-badges { |
| flex-wrap: wrap; |
| gap: 8px; |
| margin: 12px 0; |
| } |
|
|
| .metrics-grid { |
| grid-template-columns: 1fr; |
| gap: 16px; |
| } |
|
|
| .metric-card { |
| grid-column: span 1 !important; |
| padding: 20px 16px; |
| } |
|
|
| .metric-label { |
| font-size: 12px; |
| } |
|
|
| .metric-value { |
| font-size: 28px; |
| } |
|
|
| .statistics-grid { |
| grid-template-columns: repeat(2, 1fr); |
| gap: 16px; |
| } |
|
|
| .stat-card { |
| padding: 20px 16px; |
| } |
|
|
| .stat-icon { |
| font-size: 32px; |
| } |
|
|
| .recent-grid { |
| grid-template-columns: 1fr; |
| gap: 20px; |
| } |
|
|
| |
| .history-controls { |
| flex-direction: column; |
| gap: 16px; |
| padding: 20px; |
| } |
|
|
| .search-container { |
| width: 100%; |
| } |
|
|
| .search-input { |
| width: 100%; |
| font-size: 14px; |
| } |
|
|
| .view-toggle { |
| width: fit-content; |
| margin: 0 auto; |
| } |
|
|
| .filter-controls { |
| flex-direction: column; |
| gap: 12px; |
| width: 100%; |
| } |
|
|
| .filter-select { |
| width: 100%; |
| font-size: 14px; |
| } |
|
|
| .export-controls { |
| flex-direction: column; |
| gap: 10px; |
| width: 100%; |
| } |
|
|
| .btn-export, |
| .btn-clear-all { |
| width: 100%; |
| padding: 12px 16px; |
| font-size: 14px; |
| } |
|
|
| .filter-chips { |
| flex-wrap: wrap; |
| gap: 8px; |
| justify-content: center; |
| } |
|
|
| .chip { |
| flex: 0 1 calc(50% - 4px); |
| min-width: 120px; |
| text-align: center; |
| font-size: 12px; |
| padding: 8px 12px; |
| } |
|
|
| .results-count { |
| text-align: center; |
| font-size: 13px; |
| } |
|
|
| .history-table-container { |
| overflow-x: auto; |
| -webkit-overflow-scrolling: touch; |
| border-radius: 12px; |
| } |
|
|
| .history-table { |
| min-width: 700px; |
| font-size: 13px; |
| } |
|
|
| .history-table th, |
| .history-table td { |
| padding: 12px 8px; |
| white-space: nowrap; |
| } |
|
|
| .table-preview-img { |
| width: 50px; |
| height: 50px; |
| } |
|
|
| .table-filename { |
| max-width: 150px; |
| } |
|
|
| .table-actions { |
| display: flex; |
| flex-direction: column; |
| gap: 6px; |
| } |
|
|
| .btn-table-action { |
| padding: 6px 10px; |
| font-size: 11px; |
| } |
|
|
| .batch-actions-bar { |
| flex-direction: column; |
| gap: 12px; |
| padding: 16px; |
| border-radius: 16px; |
| } |
|
|
| .btn-batch { |
| width: 100%; |
| font-size: 13px; |
| } |
|
|
| .pagination { |
| padding-bottom: 40px; |
| } |
|
|
| |
| .video-demo-section { |
| padding: 60px 0 !important; |
| } |
|
|
| .video-window-container { |
| margin: 0 -20px; |
| border-radius: 0; |
| } |
|
|
| .window-header { |
| padding: 10px; |
| } |
|
|
| .window-controls span { |
| width: 10px; |
| height: 10px; |
| } |
|
|
| .window-title { |
| font-size: 12px; |
| } |
|
|
| .video-content-wrapper { |
| padding: 0; |
| } |
|
|
| |
| .modal-container { |
| width: 95%; |
| max-width: 500px; |
| margin: 20px; |
| border-radius: 16px; |
| } |
|
|
| .modal-body { |
| padding: 24px 20px; |
| } |
|
|
| .modal-close { |
| width: 36px; |
| height: 36px; |
| font-size: 24px; |
| } |
| } |
|
|
| |
| @media (max-width: 480px) { |
| :root { |
| --section-padding: 40px; |
| } |
|
|
| .container { |
| padding: 0 16px; |
| } |
|
|
| |
| .hero-title { |
| font-size: 28px; |
| line-height: 1.2; |
| } |
|
|
| .section-title { |
| font-size: 26px; |
| } |
|
|
| .section-subtitle { |
| font-size: 14px; |
| } |
|
|
| |
| .analysis-container { |
| padding: 90px 16px 30px; |
| } |
|
|
| .section-header-small h2 { |
| font-size: 22px; |
| } |
|
|
| .upload-area { |
| min-height: 240px; |
| padding: 16px 12px; |
| } |
|
|
| .upload-title { |
| font-size: 16px; |
| } |
|
|
| .upload-description { |
| font-size: 12px; |
| padding: 0 8px; |
| } |
|
|
| .btn-primary { |
| width: 100%; |
| max-width: none; |
| font-size: 14px; |
| padding: 14px 24px; |
| } |
|
|
| .verdict-title { |
| font-size: 24px; |
| } |
|
|
| .metric-value { |
| font-size: 18px; |
| } |
|
|
| |
| .statistics-grid { |
| grid-template-columns: 1fr; |
| } |
|
|
| |
| .logo-text { |
| font-size: 16px; |
| } |
|
|
| .nav-menu { |
| gap: 12px; |
| } |
|
|
| .nav-menu a { |
| font-size: 12px; |
| padding: 6px 10px; |
| } |
|
|
| .btn-primary, |
| .btn-secondary-nav { |
| padding: 8px 16px; |
| font-size: 12px; |
| } |
|
|
| |
| .hero { |
| padding: 120px 0 40px; |
| } |
|
|
| .hero-badge { |
| font-size: 11px; |
| padding: 6px 12px; |
| } |
|
|
| .hero-title { |
| font-size: 26px; |
| margin-bottom: 12px; |
| } |
|
|
| .hero-description { |
| font-size: 14px; |
| line-height: 1.6; |
| } |
|
|
| .btn-hero-primary, |
| .btn-hero-secondary { |
| padding: 14px 24px; |
| font-size: 14px; |
| } |
|
|
| .hero-stats { |
| padding: 20px 16px; |
| gap: 16px; |
| } |
|
|
| .stat-value { |
| font-size: 32px; |
| } |
|
|
| .stat-label { |
| font-size: 12px; |
| } |
|
|
| |
| .tech-grid { |
| grid-template-columns: 1fr; |
| gap: 12px; |
| } |
|
|
| .tech-card { |
| padding: 20px 16px; |
| } |
|
|
| .tech-icon { |
| font-size: 32px; |
| } |
|
|
| .tech-card h3 { |
| font-size: 15px; |
| } |
|
|
| .tech-card p { |
| font-size: 12px; |
| } |
|
|
| |
| .showcase-item { |
| padding: 16px; |
| } |
|
|
| .showcase-title { |
| font-size: 16px; |
| } |
|
|
| .showcase-description { |
| font-size: 13px; |
| } |
|
|
| |
| .model-card { |
| padding: 24px 16px; |
| } |
|
|
| .model-name { |
| font-size: 20px; |
| } |
|
|
| .model-stats-grid { |
| grid-template-columns: 1fr; |
| gap: 12px; |
| } |
|
|
| .model-stat { |
| padding: 16px; |
| } |
|
|
| .model-stat-label { |
| font-size: 11px; |
| } |
|
|
| .model-stat-value { |
| font-size: 14px; |
| } |
|
|
| .capabilities-grid { |
| grid-template-columns: 1fr; |
| gap: 8px; |
| } |
|
|
| .capability-badge { |
| font-size: 11px; |
| padding: 6px 10px; |
| } |
|
|
| |
| .pipeline-step { |
| padding: 20px 16px; |
| max-width: 100%; |
| } |
|
|
| .step-number { |
| font-size: 14px; |
| } |
|
|
| .step-icon { |
| font-size: 36px; |
| } |
|
|
| .step-title { |
| font-size: 16px; |
| } |
|
|
| .step-description { |
| font-size: 13px; |
| } |
|
|
| |
| .cta-title { |
| font-size: 24px; |
| } |
|
|
| .cta-description { |
| font-size: 14px; |
| } |
|
|
| .btn-cta-primary, |
| .btn-cta-secondary { |
| padding: 14px 24px; |
| font-size: 14px; |
| } |
|
|
| |
| .extension-title { |
| font-size: 26px; |
| } |
|
|
| .extension-description { |
| font-size: 14px; |
| } |
|
|
| .chrome-btn { |
| padding: 14px 24px; |
| font-size: 14px; |
| } |
|
|
| |
| .analysis-container { |
| padding-top: 100px; |
| } |
|
|
| .upload-area { |
| padding: 32px 16px; |
| min-height: 220px; |
| } |
|
|
| .upload-icon svg { |
| width: 36px; |
| height: 36px; |
| } |
|
|
| .upload-title { |
| font-size: 16px; |
| } |
|
|
| .upload-description { |
| font-size: 12px; |
| } |
|
|
| .verdict-card { |
| padding: 20px 16px; |
| } |
|
|
| .verdict-title { |
| font-size: 24px; |
| } |
|
|
| .metric-value { |
| font-size: 24px; |
| } |
|
|
| .metric-label { |
| font-size: 11px; |
| } |
|
|
| .statistics-grid { |
| grid-template-columns: 1fr; |
| gap: 12px; |
| } |
|
|
| .stat-card { |
| padding: 16px; |
| } |
|
|
| .stat-value { |
| font-size: 28px; |
| } |
|
|
| |
| .history-table { |
| min-width: 650px; |
| font-size: 12px; |
| } |
|
|
| .history-table th, |
| .history-table td { |
| padding: 10px 6px; |
| font-size: 12px; |
| } |
|
|
| .table-preview-img { |
| width: 40px; |
| height: 40px; |
| } |
|
|
| .table-filename { |
| max-width: 100px; |
| } |
|
|
| .table-badge { |
| font-size: 10px; |
| padding: 4px 8px; |
| } |
|
|
| .btn-table-action { |
| padding: 5px 8px; |
| font-size: 10px; |
| } |
|
|
| |
| .footer { |
| padding: 40px 0 20px; |
| } |
|
|
| .footer-title { |
| font-size: 14px; |
| } |
|
|
| .footer-column ul li a { |
| font-size: 13px; |
| } |
|
|
| .footer-bottom { |
| font-size: 12px; |
| } |
|
|
| |
| .orbit-container { |
| min-height: 300px; |
| } |
|
|
| .orbit-stage { |
| transform: scale(0.45); |
| } |
|
|
| .orbit-info-card { |
| padding: 16px; |
| } |
|
|
| |
| button, |
| a.btn-primary, |
| a.btn-secondary, |
| a.btn-hero-primary, |
| a.btn-hero-secondary, |
| .btn-table-action, |
| .btn-cta-primary, |
| .btn-cta-secondary { |
| min-height: 44px; |
| display: inline-flex; |
| align-items: center; |
| justify-content: center; |
| } |
|
|
| |
| input, |
| textarea, |
| select { |
| font-size: 16px; |
| } |
| } |
|
|
| |
| @media (max-width: 480px) and (orientation: landscape) { |
| .hero { |
| padding: 100px 0 30px; |
| } |
|
|
| .hero-title { |
| font-size: 24px; |
| } |
|
|
| section { |
| padding: 40px 0; |
| } |
| } |
|
|
| |
| @media (min-width: 769px) and (max-width: 1024px) and (orientation: landscape) { |
| .hero-title { |
| font-size: 52px; |
| } |
|
|
| .section-title { |
| font-size: 36px; |
| } |
| } |
|
|
| |
|
|
| |
| .touch-active { |
| opacity: 0.7; |
| transform: scale(0.98); |
| } |
|
|
| |
| .has-horizontal-scroll::after { |
| content: '→ Scroll'; |
| position: absolute; |
| right: 20px; |
| top: 50%; |
| transform: translateY(-50%); |
| background: rgba(227, 245, 20, 0.9); |
| color: #000; |
| padding: 6px 12px; |
| border-radius: 20px; |
| font-size: 12px; |
| font-weight: 600; |
| pointer-events: none; |
| animation: fadeInOut 2s infinite; |
| z-index: 10; |
| } |
|
|
| @keyframes fadeInOut { |
|
|
| 0%, |
| 100% { |
| opacity: 0; |
| } |
|
|
| 50% { |
| opacity: 1; |
| } |
| } |
|
|
| |
| @media (prefers-reduced-motion: reduce) { |
|
|
| *, |
| *::before, |
| *::after { |
| animation-duration: 0.01ms !important; |
| animation-iteration-count: 1 !important; |
| transition-duration: 0.01ms !important; |
| } |
| } |
|
|
| |
| .slow-connection .floating-3d-object, |
| .slow-connection .gradient-orb, |
| .slow-connection video { |
| display: none !important; |
| } |
|
|
| |
| .reduce-motion .animate-fade-up, |
| .reduce-motion .animate-float, |
| .reduce-motion .floating-3d-object { |
| animation: none !important; |
| transform: none !important; |
| } |
|
|
| |
| @media (max-width: 768px) { |
| *:focus-visible { |
| outline: 3px solid var(--accent-yellow); |
| outline-offset: 2px; |
| } |
| } |
|
|
| |
| .feedback-section { |
| background: rgba(255, 255, 255, 0.03); |
| border: 1px solid rgba(255, 255, 255, 0.1); |
| border-radius: 16px; |
| padding: 24px; |
| margin-top: 20px; |
| transition: all 0.3s ease; |
| } |
|
|
| .feedback-header { |
| text-align: center; |
| margin-bottom: 20px; |
| } |
|
|
| .feedback-header h4 { |
| font-size: 18px; |
| font-weight: 600; |
| color: var(--text-primary); |
| margin-bottom: 8px; |
| } |
|
|
| .feedback-header p { |
| font-size: 14px; |
| color: var(--text-secondary); |
| margin: 0; |
| } |
|
|
| .feedback-buttons { |
| display: flex; |
| gap: 16px; |
| justify-content: center; |
| } |
|
|
| .btn-feedback { |
| display: flex; |
| align-items: center; |
| justify-content: center; |
| gap: 10px; |
| padding: 14px 28px; |
| font-size: 15px; |
| font-weight: 600; |
| border: 2px solid; |
| border-radius: 12px; |
| cursor: pointer; |
| transition: all 0.3s ease; |
| position: relative; |
| overflow: hidden; |
| } |
|
|
| .btn-feedback svg { |
| width: 20px; |
| height: 20px; |
| transition: transform 0.3s ease; |
| } |
|
|
| .btn-feedback-correct { |
| background: rgba(16, 185, 129, 0.1); |
| border-color: rgba(16, 185, 129, 0.3); |
| color: #10b981; |
| } |
|
|
| .btn-feedback-correct:hover:not(:disabled) { |
| background: rgba(16, 185, 129, 0.2); |
| border-color: #10b981; |
| transform: translateY(-2px); |
| box-shadow: 0 8px 20px rgba(16, 185, 129, 0.2); |
| } |
|
|
| .btn-feedback-correct:hover:not(:disabled) svg { |
| transform: scale(1.2); |
| } |
|
|
| .btn-feedback-wrong { |
| background: rgba(239, 68, 68, 0.1); |
| border-color: rgba(239, 68, 68, 0.3); |
| color: #ef4444; |
| } |
|
|
| .btn-feedback-wrong:hover:not(:disabled) { |
| background: rgba(239, 68, 68, 0.2); |
| border-color: #ef4444; |
| transform: translateY(-2px); |
| box-shadow: 0 8px 20px rgba(239, 68, 68, 0.2); |
| } |
|
|
| .btn-feedback-wrong:hover:not(:disabled) svg { |
| transform: scale(1.2); |
| } |
|
|
| .btn-feedback:disabled { |
| opacity: 0.5; |
| cursor: not-allowed; |
| transform: none !important; |
| } |
|
|
| .feedback-message { |
| margin-top: 16px; |
| padding: 12px 20px; |
| border-radius: 8px; |
| text-align: center; |
| font-size: 14px; |
| font-weight: 500; |
| animation: slideIn 0.3s ease; |
| } |
|
|
| .feedback-message.success { |
| background: rgba(16, 185, 129, 0.15); |
| border: 1px solid rgba(16, 185, 129, 0.3); |
| color: #10b981; |
| } |
|
|
| .feedback-message.error { |
| background: rgba(239, 68, 68, 0.15); |
| border: 1px solid rgba(239, 68, 68, 0.3); |
| color: #ef4444; |
| } |
|
|
| @keyframes slideIn { |
| from { |
| opacity: 0; |
| transform: translateY(-10px); |
| } |
|
|
| to { |
| opacity: 1; |
| transform: translateY(0); |
| } |
| } |
|
|
| |
| :root[data-theme="light"] .feedback-section { |
| background: #F8FBFF; |
| border-color: rgba(0, 68, 204, 0.15); |
| } |
|
|
| :root[data-theme="light"] .feedback-header h4 { |
| color: #002B5C; |
| } |
|
|
| :root[data-theme="light"] .feedback-header p { |
| color: #627D98; |
| } |
|
|
| :root[data-theme="light"] .btn-feedback-correct { |
| background: rgba(16, 185, 129, 0.05); |
| color: #059669; |
| } |
|
|
| :root[data-theme="light"] .btn-feedback-correct:hover:not(:disabled) { |
| background: rgba(16, 185, 129, 0.1); |
| border-color: #059669; |
| } |
|
|
| :root[data-theme="light"] .btn-feedback-wrong { |
| background: rgba(239, 68, 68, 0.05); |
| color: #dc2626; |
| } |
|
|
| :root[data-theme="light"] .btn-feedback-wrong:hover:not(:disabled) { |
| background: rgba(239, 68, 68, 0.1); |
| border-color: #dc2626; |
| } |
|
|
| :root[data-theme="light"] .feedback-message.success { |
| background: rgba(16, 185, 129, 0.1); |
| color: #059669; |
| } |
|
|
| :root[data-theme="light"] .feedback-message.error { |
| background: rgba(239, 68, 68, 0.1); |
| color: #dc2626; |
| } |
|
|
| |
|
|
| .analysis-grid { |
| gap: 40px !important; |
| perspective: 2000px; |
| } |
|
|
| |
| .upload-area { |
| background: rgba(255, 255, 255, 0.03) !important; |
| backdrop-filter: blur(20px) saturate(180%) !important; |
| border: 1px solid rgba(255, 255, 255, 0.1) !important; |
| box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5) !important; |
| transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1) !important; |
| } |
|
|
| .upload-area:hover { |
| background: rgba(255, 255, 255, 0.05) !important; |
| border-color: var(--accent-yellow) !important; |
| transform: translateY(-5px) scale(1.01) !important; |
| box-shadow: 0 30px 60px -12px rgba(227, 245, 20, 0.15) !important; |
| } |
|
|
| |
| .verdict-card { |
| background: rgba(255, 255, 255, 0.02) !important; |
| border: 1px solid rgba(255, 255, 255, 0.05) !important; |
| padding: 30px !important; |
| border-radius: 24px !important; |
| overflow: hidden; |
| position: relative; |
| } |
|
|
| .verdict-card.fake-detected { |
| background: linear-gradient(135deg, rgba(239, 68, 68, 0.1) 0%, transparent 100%) !important; |
| border-color: rgba(239, 68, 68, 0.3) !important; |
| } |
|
|
| .verdict-card.real-detected { |
| background: linear-gradient(135deg, rgba(16, 185, 129, 0.1) 0%, transparent 100%) !important; |
| border-color: rgba(16, 185, 129, 0.3) !important; |
| } |
|
|
| |
| .technical-console { |
| margin-top: 40px; |
| background: #050505; |
| border-radius: 16px; |
| border: 1px solid rgba(255, 255, 255, 0.05); |
| padding: 24px; |
| font-family: 'SF Mono', 'Fira Code', monospace; |
| } |
|
|
| .console-header { |
| display: flex; |
| justify-content: space-between; |
| align-items: center; |
| margin-bottom: 20px; |
| border-bottom: 1px solid rgba(255, 255, 255, 0.1); |
| padding-bottom: 12px; |
| } |
|
|
| .console-title { |
| font-size: 12px; |
| text-transform: uppercase; |
| letter-spacing: 2px; |
| color: var(--accent-yellow); |
| } |
|
|
| .console-status { |
| font-size: 11px; |
| display: flex; |
| align-items: center; |
| gap: 8px; |
| } |
|
|
| .status-dot { |
| width: 6px; |
| height: 6px; |
| background: #10b981; |
| border-radius: 50%; |
| box-shadow: 0 0 10px #10b981; |
| } |
|
|
| .console-logs { |
| height: 180px; |
| overflow-y: auto; |
| font-size: 12px; |
| color: #888; |
| line-height: 1.6; |
| } |
|
|
| .log-entry { |
| margin-bottom: 4px; |
| } |
|
|
| .log-entry .timestamp { |
| color: #555; |
| margin-right: 12px; |
| } |
|
|
| .log-entry .tag { |
| color: var(--accent-yellow); |
| margin-right: 8px; |
| } |
|
|
| |
| .skeleton-title { |
| height: 40px; |
| width: 60%; |
| margin-bottom: 20px; |
| } |
|
|
| .skeleton-text { |
| height: 14px; |
| width: 100%; |
| margin-bottom: 10px; |
| } |
|
|
| .skeleton-metric { |
| height: 80px; |
| width: 100%; |
| border-radius: 16px; |
| } |
|
|
| |
| :root[data-theme="light"] .upload-area { |
| background: rgba(0, 68, 204, 0.02) !important; |
| border-color: rgba(0, 68, 204, 0.1) !important; |
| } |
|
|
| :root[data-theme="light"] .technical-console { |
| background: #f8fbff; |
| border-color: rgba(0, 68, 204, 0.1); |
| } |
|
|
| :root[data-theme="light"] .console-logs { |
| color: #444; |
| } |
|
|
| :root[data-theme="light"] .skeleton { |
| background: linear-gradient(90deg, |
| rgba(0, 68, 204, 0.05) 25%, |
| rgba(0, 68, 204, 0.1) 50%, |
| rgba(0, 68, 204, 0.05) 75%); |
| } |
|
|
| |
| @media (max-width: 768px) { |
| .technical-console { |
| margin-top: 20px; |
| padding: 16px; |
| } |
|
|
| .console-logs { |
| height: 120px; |
| |
| font-size: 10px; |
| } |
|
|
| .verdict-card { |
| padding: 20px !important; |
| } |
|
|
| .verdict-title { |
| font-size: 2rem !important; |
| } |
|
|
| .metric-card { |
| padding: 15px !important; |
| } |
|
|
| .analysis-grid { |
| grid-template-columns: 1fr !important; |
| gap: 20px !important; |
| } |
|
|
| .upload-area { |
| min-height: 250px !important; |
| } |
| } |