* { margin: 0; padding: 0; box-sizing: border-box; } body { font-family: 'Arial', sans-serif; background: linear-gradient(135deg, #001122, #002244, #003366); color: #fff; min-height: 100vh; overflow-x: hidden; } .dark-mode { background: linear-gradient(135deg, #000000, #111111, #222222) !important; } .theme-transition { transition: background-color 0.5s, color 0.5s, border-color 0.5s, box-shadow 0.5s; } /* Theme Variables */ :root { --primary-color: #0077FF; --primary-hover: #0066DD; --primary-active: #0055BB; --primary-color-rgba: rgba(0, 119, 255, 0.8); --primary-glow: rgba(0, 119, 255, 0.8); } :root[data-theme="aquila"] { --primary-color: #0077FF; --primary-hover: #0066DD; --primary-active: #0055BB; --primary-color-rgba: rgba(0, 119, 255, 0.8); --primary-glow: rgba(0, 119, 255, 0.8); } :root[data-theme="hell"] { --primary-color: #8B0000; --primary-hover: #660000; --primary-active: #4D0000; --primary-color-rgba: rgba(139, 0, 0, 0.8); --primary-glow: rgba(139, 0, 0, 0.8); } :root[data-theme="sun"] { --primary-color: #FFD700; --primary-hover: #FFC000; --primary-active: #E6AC00; --primary-color-rgba: rgba(255, 215, 0, 0.8); --primary-glow: rgba(255, 215, 0, 0.8); } :root[data-theme="nico"] { --primary-color: #87CEEB; --primary-hover: #6BB6D6; --primary-active: #4F9BC1; --primary-color-rgba: rgba(135, 206, 235, 0.8); --primary-glow: rgba(135, 206, 235, 0.8); } :root[data-theme="femboy"] { --primary-color: #FF69B4; --primary-hover: #FF1493; --primary-active: #C71585; --primary-color-rgba: rgba(255, 105, 180, 0.8); --primary-glow: rgba(255, 105, 180, 0.8); } :root[data-theme="lgbtq"] { --primary-color: #FF69B4; --primary-hover: #FF1493; --primary-active: #C71585; --primary-color-rgba: rgba(255, 105, 180, 0.8); --primary-glow: rgba(255, 105, 180, 0.8); } :root[data-theme="augenlaser"] { --primary-color: #FFFFFF; --primary-hover: #E0E0E0; --primary-active: #CCCCCC; --primary-color-rgba: rgba(255, 255, 255, 0.8); --primary-glow: rgba(255, 255, 255, 0.8); } .page { display: none; min-height: 100vh; } .page.active { display: block; } .browser-container { height: 100vh; display: flex; flex-direction: column; position: relative; } .particles { position: fixed; top: 0; left: 0; width: 100%; height: 100%; pointer-events: none; z-index: 1; } .particle { position: absolute; background: rgba(255, 255, 255, 0.1); border-radius: 50%; animation: particleFloat 15s infinite linear; } @keyframes particleFloat { 0% { transform: translateY(100vh) rotate(0deg); opacity: 0; } 10% { opacity: 1; } 90% { opacity: 1; } 100% { transform: translateY(-100px) rotate(360deg); opacity: 0; } } .glowing-dots { position: fixed; top: 0; left: 0; width: 100%; height: 100%; pointer-events: none; z-index: 1; } .glow-dot { position: absolute; background: radial-gradient(circle, var(--primary-color-rgba), transparent); border-radius: 50%; animation: glowPulse 3s infinite ease-in-out; } @keyframes glowPulse { 0%, 100% { transform: scale(1); opacity: 0.3; } 50% { transform: scale(1.5); opacity: 0.8; } } .tab-bar { height: 32px; background: rgba(0, 30, 60, 0.9); display: flex !important; align-items: center; padding: 0 10px; border-bottom: 1px solid rgba(255, 255, 255, 0.1); z-index: 10; position: relative; overflow-x: auto; } .tab { min-width: 180px; max-width: 220px; height: 28px; background: rgba(255, 255, 255, 0.05); border-radius: 6px 6px 0 0; display: flex; align-items: center; padding: 0 10px; margin-right: 2px; cursor: pointer; transition: all 0.3s ease; border: 1px solid rgba(255, 255, 255, 0.1); border-bottom: none; position: relative; } .tab.active { background: rgba(0, 119, 255, 0.2); border-color: rgba(0, 119, 255, 0.3); } .tab:hover:not(.active) { background: rgba(255, 255, 255, 0.1); } .tab-title { flex: 1; font-size: 11px; color: #fff; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; margin-right: 6px; } .tab-close { width: 14px; height: 14px; border-radius: 50%; display: flex; align-items: center; justify-content: center; cursor: pointer; transition: all 0.2s ease; opacity: 0.7; } .tab-close:hover { background: rgba(255, 255, 255, 0.2); opacity: 1; } .tab-close svg { width: 8px; height: 8px; fill: #fff; } .new-tab-button { width: 28px; height: 28px; background: rgba(255, 255, 255, 0.1); border-radius: 6px; display: flex; align-items: center; justify-content: center; cursor: pointer; transition: all 0.3s ease; border: 1px solid rgba(255, 255, 255, 0.1); } .new-tab-button:hover { background: rgba(0, 119, 255, 0.2); transform: scale(1.05); box-shadow: 0 0 10px rgba(0, 119, 255, 0.3); } .new-tab-button svg { width: 16px; height: 16px; fill: #fff; } .navigation-bar { height: 42px; background: rgba(0, 30, 60, 0.9); display: flex; align-items: center; padding: 0 12px; gap: 8px; border-bottom: 1px solid rgba(255, 255, 255, 0.1); z-index: 10; position: relative; } .nav-buttons { display: flex; gap: 4px; } .nav-button { width: 32px; height: 32px; background: rgba(255, 255, 255, 0.1); border-radius: 6px; display: flex; align-items: center; justify-content: center; cursor: pointer; transition: all 0.3s ease; border: 1px solid rgba(255, 255, 255, 0.1); } .nav-button:hover { background: rgba(0, 119, 255, 0.2); transform: translateY(-1px); box-shadow: 0 2px 8px rgba(0, 119, 255, 0.3); } .nav-button svg { width: 16px; height: 16px; fill: #fff; } .address-bar { flex: 1; margin: 0 10px; } .address-bar input { width: 100%; height: 32px; background: rgba(255, 255, 255, 0.1); border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 16px; padding: 0 16px; color: #fff; font-size: 13px; font-family: 'Arial', sans-serif; outline: none; transition: all 0.3s ease; } .address-bar input::placeholder { color: rgba(255, 255, 255, 0.6); } .address-bar input:focus { background: rgba(255, 255, 255, 0.15); border-color: rgba(0, 119, 255, 0.5); box-shadow: 0 0 15px rgba(0, 119, 255, 0.3); } .refresh-button { width: 32px; height: 32px; background: rgba(255, 255, 255, 0.1); border-radius: 6px; display: flex; align-items: center; justify-content: center; cursor: pointer; transition: all 0.3s ease; border: 1px solid rgba(255, 255, 255, 0.1); } .refresh-button:hover { background: rgba(0, 119, 255, 0.2); transform: rotate(180deg); box-shadow: 0 2px 8px rgba(0, 119, 255, 0.3); } .refresh-button svg { width: 16px; height: 16px; fill: #fff; } .browser-content { flex: 1; background: rgba(0, 0, 0, 0.3); position: relative; display: flex; align-items: center; justify-content: center; } .tab-contents { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 5; } .tab-content { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: #fff; display: none; } .tab-content.active { display: block; } .tab-content webview { width: 100%; height: 100%; border: none; } .loading-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.5); display: flex; flex-direction: column; align-items: center; justify-content: center; z-index: 20; } .loading-spinner { width: 50px; height: 50px; border: 3px solid rgba(255, 255, 255, 0.2); border-top: 3px solid var(--primary-color); border-radius: 50%; animation: loadingRotate 1s linear infinite; margin-bottom: 16px; } @keyframes loadingRotate { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } .loading-text { color: #fff; font-size: 14px; font-weight: 500; } .bottom-bar { height: 42px; background: rgba(0, 30, 60, 0.9); display: flex; align-items: center; justify-content: center; border-top: 1px solid rgba(255, 255, 255, 0.1); z-index: 10; position: relative; } .bottom-buttons { display: flex; gap: 12px; } .bottom-button { width: 36px; height: 36px; background: rgba(255, 255, 255, 0.1); border-radius: 8px; display: flex; align-items: center; justify-content: center; cursor: pointer; transition: all 0.3s ease; border: 1px solid rgba(255, 255, 255, 0.1); } .bottom-button:hover { background: rgba(0, 119, 255, 0.2); transform: translateY(-2px) scale(1.05); box-shadow: 0 4px 12px rgba(0, 119, 255, 0.4); } .bottom-button svg { width: 18px; height: 18px; fill: #fff; } .settings-icon-container { position: fixed; top: 80px; right: 20px; z-index: 100; display: flex; flex-direction: column; gap: 12px; } .settings-icon, .partner-icon { width: 44px; height: 44px; background: rgba(255, 255, 255, 0.15); border-radius: 50%; display: flex; align-items: center; justify-content: center; cursor: pointer; transition: all 0.3s ease; box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2); border: 1px solid rgba(255, 255, 255, 0.1); } .settings-icon:hover { transform: rotate(30deg) scale(1.1); background: rgba(0, 119, 255, 0.2); box-shadow: 0 0 20px rgba(0, 119, 255, 0.5); } .partner-icon:hover { transform: scale(1.1); background: rgba(0, 119, 255, 0.2); box-shadow: 0 0 20px rgba(0, 119, 255, 0.5); } .settings-icon svg, .partner-icon svg { width: 24px; height: 24px; fill: #fff; filter: drop-shadow(0 0 5px rgba(0, 119, 255, 0.7)); transition: all 0.3s ease; } .settings-icon:hover svg, .partner-icon:hover svg { fill: #0077FF; transform: scale(1.1); } .logo-container { text-align: center; margin-top: 120px; margin-bottom: 60px; z-index: 10; position: relative; } .logo { display: inline-flex; align-items: center; font-size: 48px; font-weight: bold; color: #fff; text-shadow: 0 0 20px var(--primary-glow); animation: logoGlow 3s ease-in-out infinite alternate; } @keyframes logoGlow { 0% { text-shadow: 0 0 20px var(--primary-glow); } 100% { text-shadow: 0 0 30px var(--primary-glow), 0 0 40px var(--primary-glow); } } .logo svg { width: 40px; height: 40px; margin-right: 15px; fill: #fff; filter: drop-shadow(0 0 10px var(--primary-glow)); } .tagline { font-size: 18px; color: rgba(255, 255, 255, 0.8); margin-top: 10px; font-style: italic; } .search-container { display: flex; justify-content: center; margin-bottom: 60px; z-index: 10; position: relative; } .search-bar { display: flex; background: rgba(255, 255, 255, 0.1); border-radius: 30px; padding: 15px 25px; width: 500px; max-width: 90vw; border: 1px solid rgba(255, 255, 255, 0.1); box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3); transition: all 0.3s ease; } .search-bar:hover { background: rgba(255, 255, 255, 0.15); box-shadow: 0 8px 32px rgba(0, 119, 255, 0.2); } .search-bar input { flex: 1; background: none; border: none; outline: none; color: #fff; font-size: 16px; font-family: 'Arial', sans-serif; } .search-bar input::placeholder { color: rgba(255, 255, 255, 0.6); } .search-button { background: none; border: none; color: #fff; cursor: pointer; padding: 5px; border-radius: 50%; transition: all 0.3s ease; display: flex; align-items: center; justify-content: center; } .search-button:hover { background: rgba(0, 119, 255, 0.2); transform: scale(1.1); } .search-button svg { width: 20px; height: 20px; } .bookmarks-container { max-width: 800px; margin: 0 auto 60px auto; padding: 0 20px; z-index: 10; position: relative; } .history-modal { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(135deg, rgba(0, 51, 102, 0.95), rgba(0, 18, 48, 0.98)); z-index: 200; display: none; opacity: 0; transition: opacity 0.4s ease-in-out; overflow-y: auto; } .history-modal.active { display: block; opacity: 1; animation: historyModalFadeIn 0.4s ease-out; } @keyframes historyModalFadeIn { from { opacity: 0; transform: translateY(-10px); } to { opacity: 1; transform: translateY(0); } } .history-header { display: flex; justify-content: space-between; align-items: center; padding: 25px; border-bottom: 1px solid rgba(255, 255, 255, 0.1); position: sticky; top: 0; background: rgba(0, 51, 102, 0.8); z-index: 10; } .history-title { display: flex; align-items: center; font-family: 'Arial', sans-serif; font-size: 24px; font-weight: bold; color: #fff; text-shadow: 0 0 10px rgba(0, 119, 255, 0.7); } .close-history { width: 44px; height: 44px; border-radius: 50%; display: flex; align-items: center; justify-content: center; cursor: pointer; background: rgba(255, 255, 255, 0.1); border: 1px solid rgba(255, 255, 255, 0.1); transition: all 0.3s ease; } .close-history:hover { background: rgba(255, 255, 255, 0.2); transform: rotate(90deg); box-shadow: 0 0 15px rgba(0, 119, 255, 0.6); } .close-history svg { width: 24px; height: 24px; fill: #fff; transition: all 0.3s ease; } .close-history:hover svg { fill: #0077FF; } .history-content { max-width: 900px; margin: 20px auto; padding: 20px; position: relative; } .history-search { display: flex; gap: 16px; margin-bottom: 30px; align-items: center; } .history-search input { flex: 1; background: rgba(255, 255, 255, 0.1); border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 12px; padding: 12px 16px; color: #fff; font-size: 14px; font-family: 'Arial', sans-serif; outline: none; transition: all 0.3s ease; } .history-search input::placeholder { color: rgba(255, 255, 255, 0.6); } .history-search input:focus { background: rgba(255, 255, 255, 0.15); border-color: rgba(0, 119, 255, 0.5); box-shadow: 0 0 15px rgba(0, 119, 255, 0.3); } .clear-history-btn { background: linear-gradient(to right, #ff4444, #cc3333); color: #fff; border: none; padding: 12px 20px; border-radius: 12px; cursor: pointer; font-size: 14px; font-weight: 600; transition: all 0.3s ease; box-shadow: 0 2px 10px rgba(255, 68, 68, 0.3); } .clear-history-btn:hover { transform: translateY(-2px); box-shadow: 0 5px 15px rgba(255, 68, 68, 0.5); } .history-list { display: flex; flex-direction: column; gap: 12px; } .history-item { display: flex; align-items: center; padding: 16px 20px; background: rgba(255, 255, 255, 0.05); border-radius: 12px; border: 1px solid rgba(255, 255, 255, 0.05); transition: all 0.3s ease; cursor: pointer; animation: historyItemFadeIn 0.5s ease-out forwards; opacity: 0; transform: translateY(10px); } @keyframes historyItemFadeIn { to { opacity: 1; transform: translateY(0); } } .history-item:hover { background: rgba(255, 255, 255, 0.1); transform: translateY(-2px); box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2); border-color: rgba(0, 119, 255, 0.3); } .history-item:nth-child(odd) { animation-delay: 0.1s; } .history-item:nth-child(even) { animation-delay: 0.2s; } .history-favicon { width: 32px; height: 32px; margin-right: 16px; border-radius: 6px; background: rgba(255, 255, 255, 0.1); display: flex; align-items: center; justify-content: center; font-size: 18px; min-width: 32px; } .history-info { flex: 1; display: flex; flex-direction: column; gap: 4px; min-width: 0; } .history-title { font-size: 15px; font-weight: 500; color: #fff; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .history-url { font-size: 13px; color: rgba(255, 255, 255, 0.6); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .history-time { font-size: 12px; color: rgba(255, 255, 255, 0.5); margin-left: 16px; min-width: 80px; text-align: right; } .history-empty { text-align: center; padding: 60px 20px; color: rgba(255, 255, 255, 0.6); } .history-empty svg { width: 64px; height: 64px; margin-bottom: 20px; fill: rgba(255, 255, 255, 0.3); } .history-empty h3 { font-size: 20px; margin-bottom: 10px; color: rgba(255, 255, 255, 0.7); } .history-empty p { font-size: 14px; line-height: 1.5; } .section-title { font-size: 24px; color: #fff; margin-bottom: 30px; text-align: center; font-weight: 600; } .bookmarks-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); gap: 20px; } .bookmark { display: flex; flex-direction: column; align-items: center; padding: 20px; background: rgba(255, 255, 255, 0.1); border-radius: 15px; cursor: pointer; transition: all 0.3s ease; border: 1px solid rgba(255, 255, 255, 0.1); } .bookmark:hover { background: rgba(255, 255, 255, 0.2); transform: translateY(-5px); box-shadow: 0 10px 25px rgba(0, 0, 0, 0.3); } .bookmark-icon { margin-bottom: 15px; } .bookmark-icon svg { width: 40px; height: 40px; } .bookmark-title { font-size: 14px; color: #fff; text-align: center; font-weight: 500; } .footer { text-align: center; padding: 30px; color: rgba(255, 255, 255, 0.6); font-size: 14px; z-index: 10; position: relative; } .settings-menu { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(135deg, rgba(0, 51, 102, 0.95), rgba(0, 18, 48, 0.98)); z-index: 150; display: none; opacity: 0; transition: opacity 0.4s ease-in-out; overflow-y: auto; } .settings-menu.active { display: block; opacity: 1; animation: settingsMenuFadeIn 0.4s ease-out; } @keyframes settingsMenuFadeIn { from { opacity: 0; transform: translateY(-10px); } to { opacity: 1; transform: translateY(0); } } .settings-header { display: flex; justify-content: space-between; align-items: center; padding: 25px; border-bottom: 1px solid rgba(255, 255, 255, 0.1); position: sticky; top: 0; background: rgba(0, 51, 102, 0.8); z-index: 10; } .settings-title { font-family: 'Arial', sans-serif; font-size: 28px; font-weight: bold; color: #fff; text-shadow: 0 0 10px rgba(0, 119, 255, 0.7); animation: glowPulse 2s infinite alternate; } @keyframes glowPulse { 0% { text-shadow: 0 0 5px rgba(0, 119, 255, 0.5); } 100% { text-shadow: 0 0 15px rgba(0, 119, 255, 0.9); } } .close-settings { width: 44px; height: 44px; border-radius: 50%; display: flex; align-items: center; justify-content: center; cursor: pointer; background: rgba(255, 255, 255, 0.1); border: 1px solid rgba(255, 255, 255, 0.1); transition: all 0.3s ease; } .close-settings:hover { background: rgba(255, 255, 255, 0.2); transform: rotate(90deg); box-shadow: 0 0 15px rgba(0, 119, 255, 0.6); } .close-settings svg { width: 24px; height: 24px; fill: #fff; transition: all 0.3s ease; } .close-settings:hover svg { fill: #0077FF; } .settings-content { max-width: 800px; margin: 20px auto; padding: 20px; position: relative; } .settings-menu::before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3E%3Ccircle cx='2' cy='2' r='2' fill='rgba(0, 119, 255, 0.1)'/%3E%3C/svg%3E") repeat; opacity: 0.3; z-index: -1; animation: particleFloat 20s linear infinite; } @keyframes particleFloat { 0% { background-position: 0 0; } 100% { background-position: 100px 100px; } } .settings-section { margin-bottom: 40px; animation: sectionFadeIn 0.6s ease-out forwards; opacity: 0; transform: translateY(20px); } .settings-section:nth-child(1) { animation-delay: 0.1s; } .settings-section:nth-child(2) { animation-delay: 0.2s; } .settings-section:nth-child(3) { animation-delay: 0.3s; } .settings-section:nth-child(4) { animation-delay: 0.4s; } .settings-section:nth-child(5) { animation-delay: 0.5s; } @keyframes sectionFadeIn { to { opacity: 1; transform: translateY(0); } } .settings-section-title { font-family: 'Arial', sans-serif; font-size: 18px; color: var(--primary-color); margin-bottom: 25px; padding-left: 12px; border-left: 4px solid var(--primary-color); font-weight: 600; display: flex; align-items: center; } .settings-section-title::after { content: ''; height: 1px; background: linear-gradient(to right, var(--primary-color), transparent); flex: 1; margin-left: 15px; } .settings-option { display: flex; justify-content: space-between; align-items: center; padding: 18px 20px; background: rgba(255, 255, 255, 0.05); border-radius: 12px; margin-bottom: 15px; border: 1px solid rgba(255, 255, 255, 0.05); transition: all 0.3s ease; animation: optionFadeIn 0.5s ease-out forwards; opacity: 0; transform: translateX(-10px); } @keyframes optionFadeIn { to { opacity: 1; transform: translateX(0); } } .settings-option:hover { background: rgba(255, 255, 255, 0.1); transform: translateY(-3px); box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2); border-color: rgba(0, 119, 255, 0.3); } .settings-option:nth-child(2) { animation-delay: 0.15s; } .settings-option:nth-child(3) { animation-delay: 0.25s; } .settings-option:nth-child(4) { animation-delay: 0.35s; } .settings-option > div:first-child { flex: 1; margin-right: 16px; } .settings-option-title { font-family: 'Arial', sans-serif; font-size: 16px; color: #fff; font-weight: 500; margin-bottom: 4px; } .settings-option-description { font-family: 'Arial', sans-serif; font-size: 14px; color: rgba(255, 255, 255, 0.7); line-height: 1.4; } /* Toggle Switch Styles */ .toggle-switch { position: relative; width: 50px; height: 24px; background: rgba(255, 255, 255, 0.2); border-radius: 12px; cursor: pointer; transition: all 0.3s ease; border: 1px solid rgba(255, 255, 255, 0.1); } .toggle-switch.active { background: var(--primary-color); box-shadow: 0 0 15px rgba(0, 119, 255, 0.5); } .toggle-handle { position: absolute; top: 2px; left: 2px; width: 18px; height: 18px; background: #fff; border-radius: 50%; transition: all 0.3s ease; box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3); } .toggle-switch.active .toggle-handle { transform: translateX(26px); } /* Theme Select Dropdown */ .theme-select { background: rgba(255, 255, 255, 0.1); border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 8px; color: white; padding: 8px 12px; font-size: 14px; cursor: pointer; outline: none; transition: all 0.3s ease; min-width: 200px; } .theme-select:hover { border-color: var(--primary-color); background: rgba(255, 255, 255, 0.15); } .theme-select:focus { border-color: var(--primary-color); box-shadow: 0 0 10px rgba(0, 119, 255, 0.3); } .theme-select option { background: #2a2a2a; color: white; padding: 8px; } /* Performance Sliders */ .slider { -webkit-appearance: none; appearance: none; width: 100%; height: 6px; background: rgba(255, 255, 255, 0.2); border-radius: 3px; outline: none; margin: 8px 0; cursor: pointer; } .slider::-webkit-slider-thumb { -webkit-appearance: none; appearance: none; width: 20px; height: 20px; background: var(--primary-color); border-radius: 50%; cursor: pointer; transition: background-color 0.3s ease; } .slider::-webkit-slider-thumb:hover { background: var(--primary-hover); } .slider::-moz-range-thumb { width: 20px; height: 20px; background: var(--primary-color); border-radius: 50%; cursor: pointer; border: none; transition: background-color 0.3s ease; } .slider::-moz-range-thumb:hover { background: var(--primary-hover); } /* Slider Value Display */ .slider-value { font-size: 12px; color: rgba(255, 255, 255, 0.8); text-align: center; margin-top: 4px; font-weight: 500; } /* Performance Details Section */ .performance-details { margin-left: 20px; opacity: 0.7; transition: all 0.3s ease; display: none; } .performance-details.visible { opacity: 1; display: block; } .partner-button { display: inline-block; padding: 8px 15px; background: var(--primary-color); color: #fff; font-size: 14px; border-radius: 20px; text-decoration: none; transition: all 0.3s ease; margin-top: 5px; border: none; cursor: pointer; font-weight: 500; box-shadow: 0 2px 10px rgba(0, 119, 255, 0.3); white-space: nowrap; } .partner-button:hover { background: var(--primary-hover); transform: translateY(-2px); box-shadow: 0 5px 15px rgba(0, 119, 255, 0.5); } .partner-button:active { background: var(--primary-active); transform: translateY(0); } /* Partner Menu Styles */ .partner-menu { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(135deg, rgba(0, 51, 102, 0.95), rgba(0, 18, 48, 0.98)); z-index: 160; display: none; opacity: 0; transition: opacity 0.4s ease-in-out; overflow-y: auto; } .partner-menu.active { display: block; opacity: 1; animation: partnerMenuFadeIn 0.4s ease-out; } @keyframes partnerMenuFadeIn { from { opacity: 0; transform: translateY(-10px); } to { opacity: 1; transform: translateY(0); } } .partner-header { display: flex; justify-content: space-between; align-items: center; padding: 25px; border-bottom: 1px solid rgba(255, 255, 255, 0.1); position: sticky; top: 0; background: rgba(0, 51, 102, 0.8); z-index: 10; } .partner-title { font-family: 'Arial', sans-serif; font-size: 28px; font-weight: bold; color: #fff; text-shadow: 0 0 10px rgba(0, 119, 255, 0.7); animation: glowPulse 2s infinite alternate; } .close-partner { width: 44px; height: 44px; border-radius: 50%; display: flex; align-items: center; justify-content: center; cursor: pointer; background: rgba(255, 255, 255, 0.1); border: 1px solid rgba(255, 255, 255, 0.1); transition: all 0.3s ease; } .close-partner:hover { background: rgba(255, 255, 255, 0.2); transform: rotate(90deg); box-shadow: 0 0 15px rgba(0, 119, 255, 0.6); } .close-partner svg { width: 24px; height: 24px; fill: #fff; transition: all 0.3s ease; } .close-partner:hover svg { fill: #0077FF; } .partner-content { max-width: 800px; margin: 20px auto; padding: 20px; position: relative; } .partner-menu::before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3E%3Ccircle cx='2' cy='2' r='2' fill='rgba(0, 119, 255, 0.1)'/%3E%3C/svg%3E") repeat; opacity: 0.3; z-index: -1; animation: particleFloat 20s linear infinite; } .partner-section { animation: sectionFadeIn 0.6s ease-out forwards; opacity: 0; transform: translateY(20px); } .partner-item { display: flex; align-items: flex-start; padding: 25px; background: rgba(255, 255, 255, 0.05); border-radius: 15px; margin-bottom: 25px; border: 1px solid rgba(255, 255, 255, 0.05); transition: all 0.3s ease; animation: optionFadeIn 0.5s ease-out forwards; opacity: 0; transform: translateX(-10px); } .partner-item:nth-child(1) { animation-delay: 0.1s; } .partner-item:nth-child(2) { animation-delay: 0.2s; } .partner-item:hover { background: rgba(255, 255, 255, 0.1); transform: translateY(-3px); box-shadow: 0 8px 25px rgba(0, 0, 0, 0.3); border-color: rgba(0, 119, 255, 0.3); } .partner-logo { width: 60px; height: 60px; margin-right: 20px; border-radius: 12px; background: rgba(255, 255, 255, 0.1); display: flex; align-items: center; justify-content: center; min-width: 60px; border: 2px solid rgba(255, 255, 255, 0.1); transition: all 0.3s ease; } .partner-item:hover .partner-logo { border-color: var(--primary-color); box-shadow: 0 0 15px rgba(0, 119, 255, 0.4); } .partner-logo svg { width: 32px; height: 32px; } .partner-info { flex: 1; display: flex; flex-direction: column; gap: 8px; } .partner-info h3 { font-family: 'Arial', sans-serif; font-size: 20px; color: #fff; font-weight: 600; margin: 0; text-shadow: 0 0 5px rgba(0, 119, 255, 0.3); } .partner-info > p { font-family: 'Arial', sans-serif; font-size: 14px; color: var(--primary-color); font-weight: 500; margin: 0; } .partner-description { font-family: 'Arial', sans-serif; font-size: 14px; color: rgba(255, 255, 255, 0.8); line-height: 1.5; margin: 8px 0 16px 0; } .partner-link { display: inline-flex; align-items: center; padding: 10px 16px; background: var(--primary-color); color: #fff; font-size: 14px; border-radius: 20px; text-decoration: none; transition: all 0.3s ease; font-weight: 500; box-shadow: 0 2px 10px rgba(0, 119, 255, 0.3); align-self: flex-start; } .partner-link:hover { background: var(--primary-hover); transform: translateY(-2px); box-shadow: 0 5px 15px rgba(0, 119, 255, 0.5); text-decoration: none; } .partner-link:active { background: var(--primary-active); transform: translateY(0); } .partner-link svg { fill: currentColor; } /* LGBTQ Theme Special Handling */ :root[data-theme="lgbtq"] .toggle-switch.active { background: linear-gradient(45deg, #e40303, #ff8c00, #ffed00, #008018, #004cff, #732982); } :root[data-theme="lgbtq"] .partner-button { background: linear-gradient(45deg, #e40303, #ff8c00, #ffed00, #008018, #004cff, #732982); } :root[data-theme="lgbtq"] .partner-link { background: linear-gradient(45deg, #e40303, #ff8c00, #ffed00, #008018, #004cff, #732982); } :root[data-theme="lgbtq"] .settings-section-title { background: linear-gradient(45deg, #e40303, #ff8c00, #ffed00, #008018, #004cff, #732982); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; border-left-color: #e40303; } :root[data-theme="lgbtq"] .slider::-webkit-slider-thumb { background: linear-gradient(45deg, #e40303, #ff8c00, #ffed00, #008018, #004cff, #732982); } :root[data-theme="lgbtq"] .slider::-moz-range-thumb { background: linear-gradient(45deg, #e40303, #ff8c00, #ffed00, #008018, #004cff, #732982); } :root[data-theme="lgbtq"] .glow-dot { animation: glowPulse 3s infinite ease-in-out; } :root[data-theme="lgbtq"] .glow-dot:nth-child(6n+1) { background: radial-gradient(circle, rgba(228, 3, 3, 0.8), transparent); } :root[data-theme="lgbtq"] .glow-dot:nth-child(6n+2) { background: radial-gradient(circle, rgba(255, 140, 0, 0.8), transparent); } :root[data-theme="lgbtq"] .glow-dot:nth-child(6n+3) { background: radial-gradient(circle, rgba(255, 237, 0, 0.8), transparent); } :root[data-theme="lgbtq"] .glow-dot:nth-child(6n+4) { background: radial-gradient(circle, rgba(0, 128, 24, 0.8), transparent); } :root[data-theme="lgbtq"] .glow-dot:nth-child(6n+5) { background: radial-gradient(circle, rgba(0, 76, 255, 0.8), transparent); } :root[data-theme="lgbtq"] .glow-dot:nth-child(6n+6) { background: radial-gradient(circle, rgba(115, 41, 130, 0.8), transparent); } @keyframes lgbtqGlow { 0% { background: radial-gradient(circle, rgba(228, 3, 3, 0.8), transparent); } 16% { background: radial-gradient(circle, rgba(255, 140, 0, 0.8), transparent); } 33% { background: radial-gradient(circle, rgba(255, 237, 0, 0.8), transparent); } 50% { background: radial-gradient(circle, rgba(0, 128, 24, 0.8), transparent); } 66% { background: radial-gradient(circle, rgba(0, 76, 255, 0.8), transparent); } 83% { background: radial-gradient(circle, rgba(115, 41, 130, 0.8), transparent); } 100% { background: radial-gradient(circle, rgba(228, 3, 3, 0.8), transparent); } } :root[data-theme="lgbtq"] .logo { animation: lgbtqLogoGlow 6s ease-in-out infinite; } @keyframes lgbtqLogoGlow { 0% { text-shadow: 0 0 20px rgba(228, 3, 3, 0.8); } 16% { text-shadow: 0 0 20px rgba(255, 140, 0, 0.8); } 33% { text-shadow: 0 0 20px rgba(255, 237, 0, 0.8); } 50% { text-shadow: 0 0 20px rgba(0, 128, 24, 0.8); } 66% { text-shadow: 0 0 20px rgba(0, 76, 255, 0.8); } 83% { text-shadow: 0 0 20px rgba(115, 41, 130, 0.8); } 100% { text-shadow: 0 0 20px rgba(228, 3, 3, 0.8); } } :root[data-theme="lgbtq"] .loading-spinner { border-top-color: #e40303; animation: lgbtqSpinner 2s linear infinite; } @keyframes lgbtqSpinner { 0% { transform: rotate(0deg); border-top-color: #e40303; } 16% { border-top-color: #ff8c00; } 33% { border-top-color: #ffed00; } 50% { border-top-color: #008018; } 66% { border-top-color: #004cff; } 83% { border-top-color: #732982; } 100% { transform: rotate(360deg); border-top-color: #e40303; } } @media (max-width: 768px) { .navigation-bar { padding: 0 8px; gap: 6px; } .address-bar { margin: 0 8px; } .bottom-buttons { gap: 10px; } .nav-button, .refresh-button { width: 30px; height: 30px; } .nav-button svg, .refresh-button svg { width: 14px; height: 14px; } .settings-content, .history-content, .partner-content { padding: 15px; } .bookmarks-grid { grid-template-columns: repeat(auto-fit, minmax(100px, 1fr)); gap: 15px; } .logo { font-size: 36px; } .search-bar { width: 90vw; padding: 12px 20px; } .history-search { flex-direction: column; gap: 12px; } .clear-history-btn { width: 100%; } .history-item { padding: 12px 16px; } .history-favicon { width: 28px; height: 28px; margin-right: 12px; font-size: 16px; } .history-time { margin-left: 8px; min-width: 60px; font-size: 11px; } .settings-option { flex-direction: column; align-items: flex-start; gap: 12px; } .settings-option > div:first-child { margin-right: 0; } .theme-select { width: 100%; } .partner-item { flex-direction: column; text-align: center; gap: 16px; } .partner-logo { margin-right: 0; align-self: center; } .partner-info { align-items: center; text-align: center; } .settings-icon-container { top: 60px; right: 15px; } .settings-icon, .partner-icon { width: 40px; height: 40px; } .settings-icon svg, .partner-icon svg { width: 20px; height: 20px; } } @media (max-width: 480px) { .navigation-bar { height: 38px; padding: 0 6px; } .address-bar input { height: 30px; padding: 0 12px; font-size: 12px; } .bottom-button { width: 34px; height: 34px; } .bottom-button svg { width: 16px; height: 16px; } .tab-bar { height: 38px; padding: 0 10px; } .settings-title, .partner-title { font-size: 22px; } .settings-header, .partner-header { padding: 15px; } .partner-item { padding: 20px; margin-bottom: 20px; } .partner-logo { width: 50px; height: 50px; } .partner-logo svg { width: 28px; height: 28px; } .partner-info h3 { font-size: 18px; } .partner-description { font-size: 13px; } } /* Notification Styles */ @keyframes slideIn { from { opacity: 0; transform: translateX(100%); } to { opacity: 1; transform: translateX(0); } } /* Scrollbar Styles */ ::-webkit-scrollbar { width: 8px; height: 8px; } ::-webkit-scrollbar-track { background: rgba(255, 255, 255, 0.05); border-radius: 4px; border: 1px solid rgba(255, 255, 255, 0.1); } ::-webkit-scrollbar-thumb { background: var(--primary-color); border-radius: 4px; transition: all 0.3s ease; border: 1px solid rgba(255, 255, 255, 0.1); } ::-webkit-scrollbar-thumb:hover { background: var(--primary-hover); box-shadow: 0 0 8px var(--primary-glow); transform: scale(1.1); } ::-webkit-scrollbar-thumb:active { background: var(--primary-active); } ::-webkit-scrollbar-corner { background: rgba(255, 255, 255, 0.05); } /* Firefox Scrollbar */ * { scrollbar-width: thin; scrollbar-color: var(--primary-color) rgba(255, 255, 255, 0.05); } /* Dark Mode Scrollbar Adjustments */ .dark-mode ::-webkit-scrollbar-track { background: rgba(255, 255, 255, 0.02); border-color: rgba(255, 255, 255, 0.05); } .dark-mode ::-webkit-scrollbar-corner { background: rgba(255, 255, 255, 0.02); } /* Special LGBTQ Theme Scrollbar */ :root[data-theme="lgbtq"] ::-webkit-scrollbar-thumb { background: linear-gradient(45deg, #e40303, #ff8c00, #ffed00, #008018, #004cff, #732982); animation: lgbtqScrollbar 3s ease-in-out infinite; } :root[data-theme="lgbtq"] ::-webkit-scrollbar-thumb:hover { background: linear-gradient(45deg, #e40303, #ff8c00, #ffed00, #008018, #004cff, #732982); box-shadow: 0 0 12px rgba(228, 3, 3, 0.6), 0 0 12px rgba(255, 140, 0, 0.4), 0 0 12px rgba(0, 76, 255, 0.4); } @keyframes lgbtqScrollbar { 0%, 100% { background: linear-gradient(45deg, #e40303, #ff8c00, #ffed00, #008018, #004cff, #732982); } 50% { background: linear-gradient(45deg, #732982, #e40303, #ff8c00, #ffed00, #008018, #004cff); } } /* Modal and Menu Scrollbars */ .settings-menu ::-webkit-scrollbar, .history-modal ::-webkit-scrollbar, .partner-menu ::-webkit-scrollbar { width: 10px; } .settings-menu ::-webkit-scrollbar-track, .history-modal ::-webkit-scrollbar-track, .partner-menu ::-webkit-scrollbar-track { background: rgba(0, 51, 102, 0.3); border-radius: 5px; } .settings-menu ::-webkit-scrollbar-thumb, .history-modal ::-webkit-scrollbar-thumb, .partner-menu ::-webkit-scrollbar-thumb { background: var(--primary-color); border-radius: 5px; border: 1px solid rgba(255, 255, 255, 0.2); } .settings-menu ::-webkit-scrollbar-thumb:hover, .history-modal ::-webkit-scrollbar-thumb:hover, .partner-menu ::-webkit-scrollbar-thumb:hover { background: var(--primary-hover); box-shadow: 0 0 10px var(--primary-glow); } /* Tab Content Scrollbars */ .tab-content ::-webkit-scrollbar { width: 6px; } .tab-content ::-webkit-scrollbar-track { background: rgba(0, 0, 0, 0.1); } .tab-content ::-webkit-scrollbar-thumb { background: var(--primary-color); border-radius: 3px; } .tab-content ::-webkit-scrollbar-thumb:hover { background: var(--primary-hover); } /* Mobile Scrollbar Adjustments */ @media (max-width: 768px) { ::-webkit-scrollbar { width: 6px; height: 6px; } .settings-menu ::-webkit-scrollbar, .history-modal ::-webkit-scrollbar, .partner-menu ::-webkit-scrollbar { width: 8px; } } @media (max-width: 480px) { ::-webkit-scrollbar { width: 4px; height: 4px; } .settings-menu ::-webkit-scrollbar, .history-modal ::-webkit-scrollbar, .partner-menu ::-webkit-scrollbar { width: 6px; } } .subtitle-input { background: rgba(255, 255, 255, 0.1); border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 8px; color: white; padding: 10px 14px; font-size: 14px; font-family: 'Arial', sans-serif; outline: none; transition: all 0.3s ease; min-width: 250px; width: 100%; max-width: 350px; } .subtitle-input::placeholder { color: rgba(255, 255, 255, 0.6); font-style: italic; } .subtitle-input:hover { border-color: var(--primary-color); background: rgba(255, 255, 255, 0.15); transform: translateY(-1px); box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); } .subtitle-input:focus { border-color: var(--primary-color); background: rgba(255, 255, 255, 0.15); box-shadow: 0 0 15px var(--primary-glow); transform: translateY(-1px); } .subtitle-input:focus::placeholder { color: rgba(255, 255, 255, 0.4); } :root[data-theme="lgbtq"] .subtitle-input:focus { box-shadow: 0 0 15px rgba(228, 3, 3, 0.4), 0 0 15px rgba(255, 140, 0, 0.3), 0 0 15px rgba(0, 76, 255, 0.3); border-color: #e40303; } :root[data-theme="lgbtq"] .subtitle-input:hover { border-color: #ff8c00; } @media (max-width: 768px) { .subtitle-input { min-width: 200px; max-width: 100%; padding: 12px 16px; font-size: 15px; } } @media (max-width: 480px) { .subtitle-input { min-width: 150px; padding: 10px 12px; font-size: 14px; } } .update-modal { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(135deg, rgba(0, 51, 102, 0.95), rgba(0, 18, 48, 0.98)); z-index: 170; display: none; opacity: 0; transition: opacity 0.4s ease-in-out; overflow-y: auto; } .update-modal.active { display: block; opacity: 1; animation: updateModalFadeIn 0.4s ease-out; } @keyframes updateModalFadeIn { from { opacity: 0; transform: translateY(-10px); } to { opacity: 1; transform: translateY(0); } } .update-header { display: flex; justify-content: space-between; align-items: center; padding: 25px; border-bottom: 1px solid rgba(255, 255, 255, 0.1); position: sticky; top: 0; background: rgba(0, 51, 102, 0.8); z-index: 10; } .update-title { display: flex; align-items: center; font-family: 'Arial', sans-serif; font-size: 28px; font-weight: bold; color: #fff; text-shadow: 0 0 10px rgba(0, 119, 255, 0.7); animation: updateGlowPulse 2s infinite alternate; } @keyframes updateGlowPulse { 0% { text-shadow: 0 0 5px rgba(0, 119, 255, 0.5); } 100% { text-shadow: 0 0 15px rgba(0, 119, 255, 0.9), 0 0 25px rgba(0, 255, 127, 0.3); } } .close-update { width: 44px; height: 44px; border-radius: 50%; display: flex; align-items: center; justify-content: center; cursor: pointer; background: rgba(255, 255, 255, 0.1); border: 1px solid rgba(255, 255, 255, 0.1); transition: all 0.3s ease; } .close-update:hover { background: rgba(255, 255, 255, 0.2); transform: rotate(90deg); box-shadow: 0 0 15px rgba(0, 119, 255, 0.6); } .close-update svg { width: 24px; height: 24px; fill: #fff; transition: all 0.3s ease; } .close-update:hover svg { fill: #0077FF; } .update-content { max-width: 700px; margin: 30px auto; padding: 30px; position: relative; } .update-modal::before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3E%3Ccircle cx='2' cy='2' r='2' fill='rgba(0, 255, 127, 0.1)'/%3E%3C/svg%3E") repeat; opacity: 0.2; z-index: -1; animation: updateParticleFloat 25s linear infinite; } @keyframes updateParticleFloat { 0% { background-position: 0 0; } 100% { background-position: 100px 100px; } } .version-info { display: flex; align-items: center; justify-content: center; gap: 20px; margin-bottom: 40px; animation: versionInfoFadeIn 0.6s ease-out; } @keyframes versionInfoFadeIn { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } } .version-card { background: rgba(255, 255, 255, 0.08); border-radius: 15px; padding: 25px; text-align: center; border: 1px solid rgba(255, 255, 255, 0.1); transition: all 0.3s ease; min-width: 150px; } .version-card:hover { background: rgba(255, 255, 255, 0.12); transform: translateY(-3px); box-shadow: 0 8px 25px rgba(0, 0, 0, 0.3); } .current-version { border-color: rgba(255, 193, 7, 0.3); } .latest-version { border-color: rgba(0, 255, 127, 0.3); box-shadow: 0 0 20px rgba(0, 255, 127, 0.2); } .version-label { font-size: 14px; color: rgba(255, 255, 255, 0.7); margin-bottom: 8px; font-weight: 500; text-transform: uppercase; letter-spacing: 0.5px; } .version-number { font-size: 32px; font-weight: bold; color: #fff; text-shadow: 0 0 10px var(--primary-glow); } .current-version .version-number { color: #FFC107; text-shadow: 0 0 10px rgba(255, 193, 7, 0.5); } .latest-version .version-number { color: #00FF7F; text-shadow: 0 0 10px rgba(0, 255, 127, 0.5); animation: latestVersionGlow 2s ease-in-out infinite alternate; } @keyframes latestVersionGlow { 0% { text-shadow: 0 0 10px rgba(0, 255, 127, 0.5); } 100% { text-shadow: 0 0 20px rgba(0, 255, 127, 0.8), 0 0 30px rgba(0, 255, 127, 0.4); } } .version-arrow { color: var(--primary-color); animation: arrowPulse 2s ease-in-out infinite; } .version-arrow svg { width: 32px; height: 32px; fill: var(--primary-color); filter: drop-shadow(0 0 5px var(--primary-glow)); } @keyframes arrowPulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.2); } } .update-changelog { background: rgba(255, 255, 255, 0.05); border-radius: 15px; padding: 25px; margin-bottom: 30px; border: 1px solid rgba(255, 255, 255, 0.1); animation: changelogFadeIn 0.7s ease-out 0.2s both; } @keyframes changelogFadeIn { from { opacity: 0; transform: translateX(-20px); } to { opacity: 1; transform: translateX(0); } } .changelog-title { font-size: 20px; color: var(--primary-color); margin-bottom: 20px; font-weight: 600; display: flex; align-items: center; } .changelog-title::before { content: '✨'; margin-right: 10px; font-size: 24px; animation: sparkle 2s ease-in-out infinite; } @keyframes sparkle { 0%, 100% { transform: scale(1) rotate(0deg); } 50% { transform: scale(1.2) rotate(180deg); } } .changelog-list { display: flex; flex-direction: column; gap: 12px; } .changelog-item { display: flex; align-items: flex-start; padding: 12px 16px; background: rgba(255, 255, 255, 0.03); border-radius: 8px; border-left: 3px solid var(--primary-color); transition: all 0.3s ease; animation: changelogItemFadeIn 0.5s ease-out forwards; opacity: 0; transform: translateX(-10px); } .changelog-item:nth-child(1) { animation-delay: 0.1s; } .changelog-item:nth-child(2) { animation-delay: 0.15s; } .changelog-item:nth-child(3) { animation-delay: 0.2s; } .changelog-item:nth-child(4) { animation-delay: 0.25s; } .changelog-item:nth-child(5) { animation-delay: 0.3s; } @keyframes changelogItemFadeIn { to { opacity: 1; transform: translateX(0); } } .changelog-item:hover { background: rgba(255, 255, 255, 0.08); transform: translateX(5px); box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2); } .changelog-item::before { content: '•'; color: var(--primary-color); font-weight: bold; margin-right: 12px; font-size: 18px; line-height: 1; margin-top: 2px; } .changelog-text { color: rgba(255, 255, 255, 0.9); font-size: 14px; line-height: 1.5; flex: 1; } .update-actions { display: flex; gap: 15px; margin-bottom: 30px; animation: actionsFadeIn 0.8s ease-out 0.4s both; } @keyframes actionsFadeIn { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } } .update-button { padding: 12px 24px; border-radius: 25px; border: none; font-size: 14px; font-weight: 600; cursor: pointer; transition: all 0.3s ease; display: flex; align-items: center; justify-content: center; min-width: 120px; position: relative; overflow: hidden; } .update-button::before { content: ''; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent); transition: left 0.5s ease; } .update-button:hover::before { left: 100%; } .update-button.primary { background: linear-gradient(45deg, var(--primary-color), var(--primary-hover)); color: #fff; box-shadow: 0 4px 15px rgba(0, 119, 255, 0.4); } .update-button.primary:hover { background: linear-gradient(45deg, var(--primary-hover), var(--primary-active)); transform: translateY(-2px); box-shadow: 0 6px 20px rgba(0, 119, 255, 0.6); } .update-button.secondary { background: rgba(255, 255, 255, 0.1); color: #fff; border: 1px solid rgba(255, 255, 255, 0.2); } .update-button.secondary:hover { background: rgba(255, 255, 255, 0.2); transform: translateY(-2px); box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3); } .update-button.tertiary { background: transparent; color: rgba(255, 255, 255, 0.7); border: 1px solid rgba(255, 255, 255, 0.1); } .update-button.tertiary:hover { background: rgba(255, 255, 255, 0.05); color: rgba(255, 255, 255, 0.9); border-color: rgba(255, 255, 255, 0.3); } .update-details { background: rgba(255, 255, 255, 0.03); border-radius: 12px; padding: 20px; border: 1px solid rgba(255, 255, 255, 0.05); animation: detailsFadeIn 0.9s ease-out 0.6s both; } @keyframes detailsFadeIn { from { opacity: 0; transform: scale(0.95); } to { opacity: 1; transform: scale(1); } } .update-detail-item { display: flex; justify-content: space-between; align-items: center; padding: 8px 0; border-bottom: 1px solid rgba(255, 255, 255, 0.05); } .update-detail-item:last-child { border-bottom: none; } .detail-label { color: rgba(255, 255, 255, 0.6); font-size: 13px; font-weight: 500; } .detail-value { color: #fff; font-size: 13px; font-weight: 600; } :root[data-theme="lgbtq"] .update-button.primary { background: linear-gradient(45deg, #e40303, #ff8c00, #ffed00, #008018, #004cff, #732982); } :root[data-theme="lgbtq"] .update-button.primary:hover { background: linear-gradient(45deg, #732982, #e40303, #ff8c00, #ffed00, #008018, #004cff); } :root[data-theme="lgbtq"] .latest-version .version-number { animation: lgbtqVersionGlow 3s ease-in-out infinite; } @keyframes lgbtqVersionGlow { 0% { color: #e40303; text-shadow: 0 0 15px rgba(228, 3, 3, 0.6); } 16% { color: #ff8c00; text-shadow: 0 0 15px rgba(255, 140, 0, 0.6); } 33% { color: #ffed00; text-shadow: 0 0 15px rgba(255, 237, 0, 0.6); } 50% { color: #008018; text-shadow: 0 0 15px rgba(0, 128, 24, 0.6); } 66% { color: #004cff; text-shadow: 0 0 15px rgba(0, 76, 255, 0.6); } 83% { color: #732982; text-shadow: 0 0 15px rgba(115, 41, 130, 0.6); } 100% { color: #e40303; text-shadow: 0 0 15px rgba(228, 3, 3, 0.6); } } @media (max-width: 768px) { .update-content { padding: 20px; margin: 20px auto; } .version-info { flex-direction: column; gap: 15px; } .version-arrow { transform: rotate(90deg); } .update-actions { flex-direction: column; gap: 12px; } .update-button { width: 100%; } .version-card { min-width: 120px; padding: 20px; } .version-number { font-size: 28px; } .update-title { font-size: 24px; } .changelog-title { font-size: 18px; } } @media (max-width: 480px) { .update-header { padding: 20px 15px; } .update-content { padding: 15px; } .version-card { padding: 15px; min-width: 100px; } .version-number { font-size: 24px; } .update-title { font-size: 20px; } .changelog-title { font-size: 16px; } .changelog-item { padding: 10px 12px; } .changelog-text { font-size: 13px; } .update-button { padding: 10px 20px; font-size: 13px; } .detail-label, .detail-value { font-size: 12px; } } .custom-filters-modal { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(135deg, rgba(0, 51, 102, 0.95), rgba(0, 18, 48, 0.98)); z-index: 180; display: none; opacity: 0; transition: opacity 0.4s ease-in-out; overflow-y: auto; } .custom-filters-modal.active { display: block; opacity: 1; animation: customFiltersModalFadeIn 0.4s ease-out; } @keyframes customFiltersModalFadeIn { from { opacity: 0; transform: translateY(-10px); } to { opacity: 1; transform: translateY(0); } } .custom-filters-header { display: flex; justify-content: space-between; align-items: center; padding: 25px; border-bottom: 1px solid rgba(255, 255, 255, 0.1); position: sticky; top: 0; background: rgba(0, 51, 102, 0.8); z-index: 10; } .custom-filters-title { display: flex; align-items: center; font-family: 'Arial', sans-serif; font-size: 28px; font-weight: bold; color: #fff; text-shadow: 0 0 10px rgba(0, 119, 255, 0.7); animation: customFiltersGlowPulse 2s infinite alternate; } @keyframes customFiltersGlowPulse { 0% { text-shadow: 0 0 5px rgba(0, 119, 255, 0.5); } 100% { text-shadow: 0 0 15px rgba(0, 119, 255, 0.9); } } .close-custom-filters { width: 44px; height: 44px; border-radius: 50%; display: flex; align-items: center; justify-content: center; cursor: pointer; background: rgba(255, 255, 255, 0.1); border: 1px solid rgba(255, 255, 255, 0.1); transition: all 0.3s ease; } .close-custom-filters:hover { background: rgba(255, 255, 255, 0.2); transform: rotate(90deg); box-shadow: 0 0 15px rgba(0, 119, 255, 0.6); } .close-custom-filters svg { width: 24px; height: 24px; fill: #fff; transition: all 0.3s ease; } .close-custom-filters:hover svg { fill: #0077FF; } .custom-filters-content { max-width: 900px; margin: 20px auto; padding: 20px; position: relative; } .custom-filters-modal::before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='6' viewBox='0 0 6 6'%3E%3Cpolygon points='3,0 6,3 3,6 0,3' fill='rgba(0, 119, 255, 0.05)'/%3E%3C/svg%3E") repeat; opacity: 0.3; z-index: -1; animation: filterParticleFloat 30s linear infinite; } @keyframes filterParticleFloat { 0% { background-position: 0 0; } 100% { background-position: 120px 120px; } } .custom-filters-section { margin-bottom: 40px; animation: filterSectionFadeIn 0.6s ease-out forwards; opacity: 0; transform: translateY(20px); } .custom-filters-section:nth-child(1) { animation-delay: 0.1s; } .custom-filters-section:nth-child(2) { animation-delay: 0.2s; } @keyframes filterSectionFadeIn { to { opacity: 1; transform: translateY(0); } } .custom-filters-section-title { font-family: 'Arial', sans-serif; font-size: 20px; color: var(--primary-color); margin-bottom: 25px; padding-left: 15px; border-left: 4px solid var(--primary-color); font-weight: 600; display: flex; align-items: center; position: relative; } .custom-filters-section-title::before { content: '🛡️'; margin-right: 10px; font-size: 22px; animation: shieldPulse 2s ease-in-out infinite; } @keyframes shieldPulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.1); } } .custom-filters-section-title::after { content: ''; height: 1px; background: linear-gradient(to right, var(--primary-color), transparent); flex: 1; margin-left: 15px; } .custom-filters-input-group { display: flex; gap: 12px; margin-bottom: 25px; align-items: center; animation: inputGroupFadeIn 0.5s ease-out forwards; opacity: 0; transform: translateX(-10px); } .custom-filters-input-group:nth-child(2) { animation-delay: 0.15s; } @keyframes inputGroupFadeIn { to { opacity: 1; transform: translateX(0); } } .custom-filter-input { flex: 1; background: rgba(255, 255, 255, 0.1); border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 12px; padding: 14px 18px; color: #fff; font-size: 14px; font-family: 'Arial', sans-serif; outline: none; transition: all 0.3s ease; } .custom-filter-input::placeholder { color: rgba(255, 255, 255, 0.6); font-style: italic; } .custom-filter-input:focus { background: rgba(255, 255, 255, 0.15); border-color: rgba(0, 119, 255, 0.5); box-shadow: 0 0 15px rgba(0, 119, 255, 0.3); transform: translateY(-1px); } .custom-filter-input:hover { background: rgba(255, 255, 255, 0.12); border-color: rgba(255, 255, 255, 0.2); } .add-filter-btn { background: linear-gradient(45deg, var(--primary-color), var(--primary-hover)); color: #fff; border: none; padding: 14px 24px; border-radius: 12px; cursor: pointer; font-size: 14px; font-weight: 600; transition: all 0.3s ease; box-shadow: 0 3px 12px rgba(0, 119, 255, 0.3); position: relative; overflow: hidden; min-width: 120px; } .add-filter-btn::before { content: ''; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent); transition: left 0.5s ease; } .add-filter-btn:hover::before { left: 100%; } .add-filter-btn:hover { background: linear-gradient(45deg, var(--primary-hover), var(--primary-active)); transform: translateY(-2px); box-shadow: 0 6px 18px rgba(0, 119, 255, 0.5); } .add-filter-btn:active { transform: translateY(0); box-shadow: 0 2px 8px rgba(0, 119, 255, 0.4); } .custom-filters-list, .filter-lists { display: flex; flex-direction: column; gap: 12px; animation: listFadeIn 0.6s ease-out 0.3s both; } @keyframes listFadeIn { from { opacity: 0; transform: translateY(15px); } to { opacity: 1; transform: translateY(0); } } .filter-item, .filter-list-item { display: flex; align-items: center; justify-content: space-between; padding: 16px 20px; background: rgba(255, 255, 255, 0.05); border-radius: 12px; border: 1px solid rgba(255, 255, 255, 0.05); transition: all 0.3s ease; animation: filterItemFadeIn 0.5s ease-out forwards; opacity: 0; transform: translateY(10px); } .filter-item:nth-child(odd) { animation-delay: 0.1s; } .filter-item:nth-child(even) { animation-delay: 0.2s; } .filter-list-item:nth-child(odd) { animation-delay: 0.15s; } .filter-list-item:nth-child(even) { animation-delay: 0.25s; } @keyframes filterItemFadeIn { to { opacity: 1; transform: translateY(0); } } .filter-item:hover, .filter-list-item:hover { background: rgba(255, 255, 255, 0.1); transform: translateY(-2px); box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2); border-color: rgba(0, 119, 255, 0.3); } .filter-text { flex: 1; color: #fff; font-size: 14px; font-family: 'Courier New', monospace; margin-right: 15px; word-break: break-all; line-height: 1.4; } .filter-list-url { flex: 1; color: rgba(255, 255, 255, 0.9); font-size: 13px; margin-right: 15px; word-break: break-all; line-height: 1.4; } .filter-list-status { padding: 4px 12px; border-radius: 15px; font-size: 12px; font-weight: 600; margin-right: 15px; text-transform: uppercase; letter-spacing: 0.5px; } .filter-list-status.active { background: linear-gradient(45deg, #00c851, #00a041); color: #fff; box-shadow: 0 0 10px rgba(0, 200, 81, 0.3); } .filter-list-status.inactive { background: rgba(255, 68, 68, 0.2); color: #ff4444; border: 1px solid rgba(255, 68, 68, 0.3); } .filter-list-status.loading { background: rgba(255, 193, 7, 0.2); color: #FFC107; border: 1px solid rgba(255, 193, 7, 0.3); animation: statusPulse 1.5s ease-in-out infinite; } @keyframes statusPulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.6; } } .remove-filter-btn, .remove-list-btn, .toggle-list-btn { background: rgba(255, 68, 68, 0.2); color: #ff4444; border: 1px solid rgba(255, 68, 68, 0.3); padding: 8px 12px; border-radius: 8px; cursor: pointer; font-size: 12px; font-weight: 600; transition: all 0.3s ease; margin-left: 8px; } .remove-filter-btn:hover, .remove-list-btn:hover { background: rgba(255, 68, 68, 0.3); transform: translateY(-1px); box-shadow: 0 3px 8px rgba(255, 68, 68, 0.3); } .toggle-list-btn { background: rgba(0, 119, 255, 0.2); color: var(--primary-color); border-color: rgba(0, 119, 255, 0.3); } .toggle-list-btn:hover { background: rgba(0, 119, 255, 0.3); transform: translateY(-1px); box-shadow: 0 3px 8px rgba(0, 119, 255, 0.3); } .filters-empty, .lists-empty { text-align: center; padding: 40px 20px; color: rgba(255, 255, 255, 0.6); background: rgba(255, 255, 255, 0.02); border-radius: 12px; border: 2px dashed rgba(255, 255, 255, 0.1); margin-top: 20px; } .filters-empty h4, .lists-empty h4 { font-size: 18px; margin-bottom: 8px; color: rgba(255, 255, 255, 0.8); } .filters-empty p, .lists-empty p { font-size: 14px; line-height: 1.5; } :root[data-theme="lgbtq"] .add-filter-btn { background: linear-gradient(45deg, #e40303, #ff8c00, #ffed00, #008018, #004cff, #732982); } :root[data-theme="lgbtq"] .add-filter-btn:hover { background: linear-gradient(45deg, #732982, #e40303, #ff8c00, #ffed00, #008018, #004cff); } :root[data-theme="lgbtq"] .custom-filters-section-title { background: linear-gradient(45deg, #e40303, #ff8c00, #ffed00, #008018, #004cff, #732982); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; border-left-color: #e40303; } :root[data-theme="lgbtq"] .filter-list-status.active { background: linear-gradient(45deg, #e40303, #ff8c00, #ffed00, #008018, #004cff, #732982); } @media (max-width: 768px) { .custom-filters-content { padding: 15px; margin: 15px auto; } .custom-filters-input-group { flex-direction: column; gap: 10px; } .add-filter-btn { width: 100%; padding: 12px 20px; } .custom-filter-input { width: 100%; padding: 12px 16px; } .filter-item, .filter-list-item { flex-direction: column; align-items: flex-start; gap: 12px; padding: 14px 16px; } .filter-text, .filter-list-url { margin-right: 0; margin-bottom: 8px; } .filter-actions { display: flex; gap: 8px; align-self: flex-end; } .custom-filters-title { font-size: 24px; } .custom-filters-section-title { font-size: 18px; } } .adblocker-select { background: rgba(255, 255, 255, 0.1); border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 8px; color: white; padding: 8px 12px; font-size: 14px; cursor: pointer; outline: none; transition: all 0.3s ease; min-width: 150px; } .adblocker-select:hover { border-color: var(--primary-color); background: rgba(255, 255, 255, 0.15); } .adblocker-select:focus { border-color: var(--primary-color); box-shadow: 0 0 10px rgba(0, 119, 255, 0.3); } .adblocker-select option { background: #2a2a2a; color: white; padding: 8px; } @media (max-width: 480px) { .custom-filters-header { padding: 20px 15px; } .custom-filters-content { padding: 12px; } .custom-filter-input { padding: 10px 14px; font-size: 13px; } .add-filter-btn { padding: 10px 16px; font-size: 13px; } .filter-text { font-size: 13px; } .filter-list-url { font-size: 12px; } .custom-filters-title { font-size: 20px; } .custom-filters-section-title { font-size: 16px; padding-left: 12px; } .remove-filter-btn, .remove-list-btn, .toggle-list-btn { padding: 6px 10px; font-size: 11px; } .adblocker-select { min-width: 120px; padding: 10px 12px; } }