/* * SPDX-FileCopyrightText: Hadad * SPDX-License-Identifier: Apache-2.0 */ .modal-overlay { position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0, 0, 0, 0.8); backdrop-filter: blur(10px); display: flex; align-items: center; justify-content: center; z-index: 9999; padding: 20px; } .modal-content { background: var(--card-bg); border-radius: 24px; padding: clamp(32px, 4vw, 48px); max-width: min(90%, 600px); width: 100%; position: relative; overflow: hidden; box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5); } .modal-content::before { content: ''; position: absolute; top: -50%; left: -50%; width: 200%; height: 200%; background: radial-gradient( circle at center, rgba(99, 102, 241, 0.1) 0%, transparent 70% ); animation: pulse 4s ease-in-out infinite; } .modal-inner { position: relative; z-index: 1; } .modal-title { font-size: clamp(24px, 5vw, 48px); margin-bottom: clamp(20px, 3vw, 40px); text-align: center; } .modal-text { color: var(--text-secondary); line-height: 1.8; margin-bottom: clamp(24px, 3vw, 40px); font-size: clamp(14px, 1.8vw, 17px); word-wrap: break-word; word-break: break-word; } .modal-error-title { font-size: clamp(20px, 3vw, 28px); font-weight: 700; color: var(--danger); margin-bottom: clamp(16px, 2vw, 24px); text-align: center; } .modal-error-text { color: var(--text-secondary); margin-bottom: clamp(20px, 3vw, 32px); text-align: center; font-size: clamp(14px, 1.8vw, 17px); word-wrap: break-word; word-break: break-word; } .header-main { border-bottom: 1px solid var(--border); padding: clamp(20px, 3vw, 32px) 0; } .header-title { font-size: clamp(32px, 6vw, 64px); } .main-content { padding: clamp(24px, 4vw, 48px) 16px; max-width: min(100%, 1800px); } .loading-container { padding: clamp(32px, 4vw, 60px); } .loading-text { color: var(--text-secondary); font-size: clamp(16px, 2vw, 20px); font-weight: 600; margin-bottom: 16px; } .progress-text { color: var(--text-muted); font-size: clamp(14px, 1.6vw, 16px); } .image-actions form { margin: 0; } .image-info { padding: clamp(20px, 2.5vw, 28px); border-top: 1px solid var(--border); } .image-prompt { font-size: clamp(13px, 1.5vw, 15px); color: var(--text-muted); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; margin-bottom: 8px; font-weight: 500; } .image-meta { font-size: clamp(12px, 1.4vw, 14px); color: var(--text-muted); } .image-model { font-weight: 700; color: var(--accent); } .placeholder-icon { margin: 0 auto clamp(20px, 2.5vw, 28px); opacity: 0.15; } .placeholder-text { color: var(--text-muted); font-size: clamp(16px, 2vw, 20px); font-weight: 500; } .form-section { padding: clamp(32px, 4vw, 48px); margin-bottom: clamp(32px, 4vw, 48px); } .form-grid { margin-bottom: clamp(24px, 3vw, 36px); } .form-label { display: block; font-size: clamp(13px, 1.5vw, 15px); font-weight: 700; color: var(--text-secondary); margin-bottom: clamp(10px, 1.2vw, 14px); text-transform: uppercase; letter-spacing: 0.05em; } .form-group { margin-bottom: clamp(24px, 3vw, 36px); } .button-icon { width: clamp(20px, 2.5vw, 28px); height: clamp(20px, 2.5vw, 28px); } .examples-section { padding: clamp(32px, 4vw, 48px); } .examples-title { font-size: clamp(24px, 3vw, 32px); font-weight: 800; color: var(--text-secondary); margin-bottom: clamp(24px, 3vw, 36px); } .example-text { margin-bottom: clamp(12px, 1.5vw, 16px); font-size: clamp(14px, 1.6vw, 16px); line-height: 1.6; font-weight: 500; } .example-meta { font-size: clamp(12px, 1.4vw, 14px); color: var(--text-muted); font-weight: 700; } .example-model { color: var(--accent); } .footer-main { border-top: 1px solid var(--border); padding: clamp(32px, 4vw, 48px) 0; margin-top: clamp(80px, 10vw, 140px); } .footer-copyright { font-size: clamp(13px, 1.5vw, 15px); color: var(--text-muted); font-weight: 500; } .footer-link { display: flex; align-items: center; gap: clamp(10px, 1.5vw, 16px); color: var(--text-muted); text-decoration: none; transition: all 0.3s; font-size: clamp(13px, 1.5vw, 15px); font-weight: 600; } .footer-link:hover { color: var(--accent); transform: translateX(-6px); } .footer-icon { width: clamp(20px, 2.5vw, 26px); height: clamp(20px, 2.5vw, 26px); } .modal-error-content { max-width: min(90%, 480px); } .action-icon { width: clamp(20px, 2.5vw, 28px); height: clamp(20px, 2.5vw, 28px); }