UNPKG

hownz

Version:

Safely clean the copied text of hidden surprises. Checks for invisible code, hidden watermarks, and tracking symbols.

1,768 lines (1,742 loc) 37.8 kB
:root { --primary-color: #c5b358; --primary-glow-start: #f5e48d; --primary-glow-end: #d4af37; --text-color-secondary: #b0b0b0; --background-color-main: #121212; --background-color-container: #1E1E1E; --text-color-main: #f0f0f0; --border-color: #444; --shadow-color: rgba(255, 255, 255, 0.05); --success-color: #4CAF50; --error-color: #f44336; --solana-gradient: linear-gradient(45deg, #9945FF, #14F195); } .hidden { display: none !important; } .visually-hidden { position: absolute !important; height: 1px; width: 1px; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); white-space: nowrap; } .site-header { background-color: var(--background-color-container); border-bottom: 1px solid var(--border-color); padding: 0 2rem; width: 100%; } .site-header-container { display: flex; align-items: center; justify-content: space-between; height: 60px; max-width: 1200px; margin: 0 auto; } .header-left-side { display: flex; align-items: center; gap: 1rem; } .site-logo a { color: var(--primary-color); text-decoration: none; font-size: 1.5rem; font-weight: 700; } .nav-wrapper { display: flex; align-items: center; gap: 1.5rem; flex-grow: 1; justify-content: flex-end; } .header-actions { display: flex; align-items: center; gap: 1rem; } .coin-balance { display: flex; align-items: center; gap: 0.5rem; color: var(--primary-color); font-weight: 500; font-size: 1.1rem; } .coin-balance svg { color: var(--primary-color); } .btn-logout { background: none; border: 1px solid var(--border-color); color: var(--text-color-secondary); padding: 0.3rem 0.8rem; border-radius: 5px; cursor: pointer; font-weight: 500; transition: all 0.2s; } .btn-logout:hover { background-color: var(--border-color); color: var(--text-color-main); } * { margin: 0; padding: 0; box-sizing: border-box; } body { font-family: 'Roboto', sans-serif; background-color: var(--background-color-main); color: var(--text-color-main); display: flex; justify-content: center; align-items: flex-start; min-height: 100vh; padding: 0; } #root { width: 100%; min-height: 100vh; display: flex; flex-direction: column; } .app-container { background-color: var(--background-color-container); padding: 2rem; border-radius: 8px; box-shadow: 0 4px 12px var(--shadow-color); display: flex; flex-direction: column; gap: 1.5rem; border: 1px solid var(--border-color); max-width: 1200px; margin-top: 2rem; margin-bottom: 2rem; margin-left: auto; margin-right: auto; width: 100%; flex-grow: 1; } .app-header { text-align: center; } .app-header h1 { font-size: 2.5rem; font-weight: 700; background: linear-gradient(45deg, var(--primary-glow-start), var(--primary-glow-end)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; text-fill-color: transparent; text-shadow: 0 0 8px rgba(245, 228, 141, 0.15); } .app-header h2 { font-size: 1.2rem; font-weight: 500; margin-top: 0.5rem; color: var(--text-color-secondary); max-width: 800px; margin-left: auto; margin-right: auto; } .settings-wrapper { border-top: 1px solid var(--border-color); padding-top: 1.5rem; display: flex; flex-wrap: wrap; gap: 2rem; justify-content: center; } .settings-group { display: flex; flex-direction: column; gap: 0.75rem; flex: 1; min-width: 300px; } .settings-heading { font-weight: 500; font-size: 1.1rem; text-align: center; margin-bottom: 0.25rem; color: var(--text-color-main); } #approved-chars-input, #condense-chars-input { width: 100%; padding: 0.5rem; border: 1px solid var(--border-color); border-radius: 6px; font-family: monospace; font-size: 0.9rem; resize: vertical; background-color: #2a2a2a; color: var(--text-color-main); } #approved-chars-input { height: 80px; } .settings-buttons { display: flex; justify-content: center; align-items: center; gap: 1rem; flex-wrap: wrap; margin-top: 0.5rem; } .btn { padding: 0.5rem 1rem; border: none; border-radius: 5px; font-size: 0.9rem; font-weight: 500; cursor: pointer; transition: background-color .2s, transform .1s; text-decoration: none; } .btn:active { transform: translateY(1px); } .btn-primary { background-color: #1a5d1a; color: white; } .btn-primary:hover { background-color: #2b7a2b; } .btn-primary:disabled { background-color: #4a4a4a; cursor: not-allowed; } .btn-secondary { background-color: #555; color: var(--text-color-main); border: 1px solid #666; } .btn-secondary:hover { background-color: #666; } #save-feedback { color: var(--success-color); font-weight: 500; font-size: 0.9rem; text-align: center; opacity: 0; transition: opacity .5s; height: 1.2em; } .option-wrapper { display: flex; justify-content: center; align-items: center; gap: 0.5rem; } .option-wrapper label { cursor: pointer; font-size: 1rem; } .option-wrapper input[type="checkbox"] { cursor: pointer; width: 1rem; height: 1rem; accent-color: var(--primary-color); } .editor-grid { display: grid; grid-template-columns: 1fr; gap: 1rem; } .text-container { display: flex; flex-direction: column; position: relative; } .cleared-text-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 0.5rem; } .btn-collect { padding: 0.3rem 0.8rem; font-size: 0.85rem; font-weight: 700; transition: all .2s; min-width: 110px; border: none; } .btn-collect:disabled { background-color: #4a4a4a; color: #888; cursor: not-allowed; opacity: 0.7; } .btn-collect:not(:disabled) { background-color: var(--success-color); color: white; cursor: pointer; box-shadow: 0 0 8px rgba(76, 175, 80, 0.4); } .btn-collect:not(:disabled):hover { background-color: #5cb85c; transform: scale(1.05); } .btn-summarize { background-color: #333; color: var(--text-color-secondary); border: 1px solid var(--border-color); display: inline-flex; align-items: center; gap: 0.5rem; padding: 0.3rem 0.8rem; font-size: 0.85rem; font-weight: 700; transition: all .2s; } .btn-summarize:hover:not(:disabled) { background-color: var(--border-color); color: var(--text-color-main); transform: none; } .btn-summarize:disabled { background-color: #4a4a4a; color: #888; cursor: not-allowed; opacity: 0.7; } @keyframes spinner-spin { to { transform: rotate(360deg); } } .spinner { width: 1em; height: 1em; border: 2px solid rgba(255, 255, 255, 0.7); border-right-color: transparent; border-radius: 50%; display: inline-block; animation: spinner-spin 0.75s linear infinite; } .collect-feedback-animation { position: absolute; right: 10px; top: 0px; background-color: var(--primary-color); color: var(--background-color-main); padding: 0.2rem 0.6rem; border-radius: 12px; font-weight: bold; font-size: 0.9rem; z-index: 10; animation: fadeUpAndOut 1.5s ease-out forwards; pointer-events: none; } @keyframes fadeUpAndOut { 0% { opacity: 1; transform: translateY(0); } 100% { opacity: 0; transform: translateY(-40px); } } .text-container label { font-weight: 500; margin-bottom: 0.5rem; font-size: 1rem; } textarea { width: 100%; height: 300px; padding: 1rem; border: 1px solid var(--border-color); border-radius: 6px; font-family: 'Roboto', sans-serif; font-size: 1rem; line-height: 1.5; resize: vertical; transition: border-color .2s, box-shadow .2s, background-color .2s; background-color: #2a2a2a; color: #FFFFFF; } textarea:focus { outline: none; border-color: var(--primary-color); box-shadow: 0 0 0 3px rgba(197, 179, 88, 0.25); } #cleared-output { background-color: #252525; transition: all .2s; } .appearance-controls { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: 1rem; } .control-item { display: flex; flex-direction: column; gap: 0.25rem; } .control-item label, .control-item-label { font-size: 0.9rem; color: var(--text-color-secondary); text-align: left; } .control-item select, .control-item input { width: 100%; padding: 0.5rem; border: 1px solid var(--border-color); border-radius: 5px; font-size: 0.9rem; background-color: #333; color: var(--text-color-main); } .control-item input[type="color"] { padding: 0.2rem; min-height: 38px; border-color: #555; } .checkbox-item-row { display: flex; align-items: center; gap: 0.5rem; } .checkbox-item-row label { margin-bottom: 0; } .control-item input[type="checkbox"] { width: 1.1rem; height: 1.1rem; } .settings-reward-hint { color: var(--success-color); font-weight: 500; font-size: 0.9em; margin-left: 0.5rem; opacity: 0.9; } .btn-group-with-link { display: flex; align-items: center; gap: 0.5rem; } .btn-group-with-link a { color: var(--text-color-secondary); font-size: 0.9em; text-decoration: none; } .btn-group-with-link a:hover { text-decoration: underline; color: var(--primary-color); } @media (min-width: 900px) { .editor-grid { grid-template-columns: 1fr 1fr; gap: 2rem; } } .contact-section { border-top: 1px solid var(--border-color); margin-top: 2.5rem; padding-top: 2.5rem; padding-bottom: 1.5rem; text-align: center; } .contact-heading { font-size: 2rem; font-weight: 700; margin-bottom: 0.5rem; background: linear-gradient(45deg, var(--primary-glow-start), var(--primary-glow-end)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; text-fill-color: transparent; text-shadow: 0 0 8px rgba(245, 228, 141, 0.15); } .contact-subheading { font-size: 1.1rem; color: var(--text-color-secondary); margin-bottom: 1.5rem; max-width: 600px; margin-left: auto; margin-right: auto; } .contact-card { background-color: #282828; border: 1px solid var(--border-color); border-radius: 8px; padding: 1.5rem; max-width: 500px; margin: 0 auto; text-align: left; } .contact-card h3 { font-size: 1.5rem; font-weight: 500; margin-bottom: 1rem; color: var(--text-color-main); display: flex; align-items: center; gap: 0.5rem; } .contact-card a { color: var(--primary-color); text-decoration: none; transition: color .2s; } .contact-card a:hover { text-decoration: underline; color: #e0d17e; } .understanding-risks { border-top: 1px solid var(--border-color); margin-top: 1.5rem; padding-top: 1.5rem; text-align: left; } .understanding-risks h2 { font-size: 1.8rem; font-weight: 700; margin-bottom: 1rem; border-bottom: 1px solid var(--border-color); padding-bottom: 0.5rem; text-align: center; background: linear-gradient(45deg, var(--primary-glow-start), var(--primary-glow-end)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; text-fill-color: transparent; text-shadow: 0 0 8px rgba(245, 228, 141, 0.15); } .understanding-risks h3 { font-size: 1.4rem; font-weight: 500; color: var(--text-color-main); margin-top: 1.5rem; margin-bottom: 0.75rem; } .understanding-risks p { line-height: 1.6; margin-bottom: 1rem; color: var(--text-color-secondary); max-width: 800px; margin-left: auto; margin-right: auto; text-align: center; } .understanding-risks ul { list-style-position: outside; padding-left: 2rem; display: flex; flex-direction: column; gap: 0.75rem; margin-bottom: 1rem; max-width: 900px; } .understanding-risks li { color: var(--text-color-secondary); line-height: 1.5; } .understanding-risks strong { color: #E0E0E0; font-weight: 500; } @media screen and (max-width: 960px) { .site-header { padding: 0 1rem; position: static; } .site-header-container { flex-direction: column; height: auto; padding: 1rem 0; } .header-actions { width: 100%; justify-content: center; border-top: 1px solid var(--border-color); padding-top: 1rem; margin-top: 1rem; flex-wrap: wrap; } .app-container { margin-top: 1rem; padding: 1rem; border: none; border-radius: 0; } } .qa-section { border-top: 1px solid var(--border-color); margin-top: 2.5rem; padding-top: 2.5rem; padding-bottom: 1.5rem; } .qa-heading { text-align: center; font-size: 2rem; font-weight: 700; color: var(--primary-color); margin-bottom: 1.5rem; } .qa-list { max-width: 800px; margin: 0 auto; display: flex; flex-direction: column; gap: 0.5rem; } .qa-item { border: 1px solid var(--border-color); border-radius: 6px; background-color: #282828; transition: border-color 0.2s; } .qa-item:hover { border-color: #555; } .qa-item[open] { border-color: var(--primary-color); } .qa-question { display: flex; align-items: center; gap: 0.5rem; padding: 1rem; font-weight: 500; font-size: 1.1rem; cursor: pointer; list-style: none; position: relative; color: var(--text-color-main); } .qa-question::-webkit-details-marker { display: none; } .qa-question::after { content: '+'; position: absolute; right: 1.25rem; top: 50%; transform: translateY(-50%) rotate(0deg); font-size: 1.75rem; font-weight: 300; color: var(--text-color-secondary); transition: transform 0.2s ease-in-out; } .qa-item[open] > .qa-question::after { transform: translateY(-50%) rotate(45deg); } .qa-answer { padding: 0 1rem 1rem 1rem; color: var(--text-color-secondary); line-height: 1.6; border-top: 1px solid var(--border-color); margin: 0.5rem 1rem 0 1rem; padding-top: 1rem; } .risks-details { border-top: 1px solid var(--border-color); margin-top: 2.5rem; padding-top: 2.5rem; } .risks-summary { font-size: 1.6rem; font-weight: 700; color: var(--text-color-main); cursor: pointer; padding: 0.75rem; text-align: center; list-style: none; transition: all 0.2s; border-radius: 6px; text-decoration: underline; text-decoration-color: var(--success-color); text-decoration-thickness: 2px; text-underline-offset: 5px; text-shadow: 0 0 8px rgba(76, 175, 80, 0.3); } .risks-summary:hover { background-color: rgba(76, 175, 80, 0.1); color: #fff; text-decoration-color: #5cb85c; } .risks-summary::-webkit-details-marker { display: none; } .focused-risks-container { margin-top: 1.5rem; padding: 1.5rem; background-color: #282828; border-radius: 8px; border: 1px solid var(--border-color); } .focused-risks-container h3 { text-align: center; font-size: 1.6rem; color: var(--text-color-main); margin-bottom: 0.5rem; } .focused-risks-container p { text-align: center; color: var(--text-color-secondary); margin-bottom: 2rem; max-width: 800px; margin-left: auto; margin-right: auto; line-height: 1.6; } .focused-risks-grid { display: grid; grid-template-columns: 1fr; gap: 1.5rem; } .focused-risk-item { background-color: #1E1E1E; padding: 1rem; border-radius: 6px; border-left: 3px solid var(--primary-color); } .focused-risk-item h4 { font-size: 1.1rem; font-weight: 500; margin-bottom: 0.5rem; color: var(--text-color-main); display: flex; align-items: center; gap: 0.5rem; } .focused-risk-item p { font-size: 0.95rem; line-height: 1.5; text-align: left; color: var(--text-color-secondary); margin-bottom: 0; } @media (min-width: 900px) { .focused-risks-grid { grid-template-columns: 1fr 1fr; } } .header-login-container { display: flex; flex-direction: column; align-items: flex-start; } .header-login-form { display: flex; align-items: center; gap: 0.5rem; } .header-login-form.shake { animation: shake 0.5s; } @keyframes shake { 10%, 90% { transform: translateX(-1px); } 20%, 80% { transform: translateX(2px); } 30%, 50%, 70% { transform: translateX(-4px); } 40%, 60% { transform: translateX(4px); } } .header-login-form input { background-color: #3a3a3a; border: 1px solid var(--border-color); color: var(--text-color-main); padding: 0.4rem 0.8rem; border-radius: 5px; width: 120px; font-size: 0.85rem; transition: border-color 0.2s; } .header-login-form input::placeholder { color: var(--text-color-secondary); opacity: 0.8; } .header-login-form input:focus { outline: none; border-color: var(--primary-color); } .login-hint { font-size: 0.75rem; color: var(--text-color-secondary); padding-top: 4px; white-space: nowrap; } .btn-login-register { background-color: #1a5d1a; color: white; border: none; padding: 0.5rem 1rem; border-radius: 5px; cursor: pointer; font-weight: 500; font-size: 0.85rem; white-space: nowrap; transition: background-color 0.2s; } .btn-login-register:hover { background-color: #2b7a2b; } .btn-rewards-info { background-color: #1a5d1a; color: white; } .btn-rewards-info:hover { background-color: #2b7a2b; } .settings-icon { display: flex; align-items: center; justify-content: center; width: 34px; height: 34px; border: 1px solid var(--border-color); border-radius: 50%; cursor: pointer; color: var(--text-color-secondary); transition: all 0.2s; text-decoration: none; } .settings-icon:hover { background-color: var(--border-color); color: var(--text-color-main); } .settings-icon svg { width: 20px; height: 20px; } .site-footer-main { background-color: #1E1E1E; padding: 1.5rem 2rem; text-align: center; border-top: 1px solid var(--border-color); width: 100%; } .footer-links { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: 2rem; margin-bottom: 1.5rem; } .footer-links a { color: var(--text-color-secondary); text-decoration: none; font-weight: 500; transition: color 0.2s; } .footer-links a:hover { color: var(--text-color-main); text-decoration: underline; } .site-search-container { margin-bottom: 1.5rem; display: flex; justify-content: center; padding: 0 1rem; } .site-search-form { display: flex; align-items: center; max-width: 500px; width: 100%; background-color: #2a2a2a; border-radius: 50px; border: 1px solid var(--border-color); overflow: hidden; transition: border-color .2s, box-shadow .2s; } .site-search-form:focus-within { border-color: var(--primary-color); box-shadow: 0 0 0 3px rgba(197, 179, 88, 0.25); } .site-search-input { flex-grow: 1; border: none; background: none; padding: 0.75rem 1.25rem; color: var(--text-color-main); font-size: 1rem; outline: none; -webkit-appearance: none; } .site-search-input::-webkit-search-decoration, .site-search-input::-webkit-search-cancel-button, .site-search-input::-webkit-search-results-button, .site-search-input::-webkit-search-results-decoration { -webkit-appearance: none; } .site-search-input::placeholder { color: var(--text-color-secondary); } .site-search-button { background: none; border: none; padding: 0 1.25rem; cursor: pointer; color: var(--text-color-secondary); display: flex; align-items: center; justify-content: center; transition: color .2s; } .site-search-button:hover { color: var(--primary-color); } .footer-banner { display: flex; justify-content: center; align-items: center; gap: 1.5rem; flex-wrap: wrap; } .footer-banner p { color: var(--text-color-secondary); margin: 0; } .footer-banner strong { color: var(--primary-color); font-weight: 700; } .login-to-earn-note { margin-top: 1.5rem; padding: 0.75rem 1rem; background-color: rgba(197, 179, 88, 0.1); border: 1px solid var(--primary-color); border-radius: 8px; color: var(--text-color-main); max-width: 700px; margin-left: auto; margin-right: auto; font-size: 0.95rem; } .login-to-earn-note strong { color: var(--primary-color); font-weight: 500; } .coin-guide-section { padding: 2.5rem 0; border-bottom: 1px solid var(--border-color); text-align: center; } .coin-guide-section:last-of-type { border-bottom: none; } .section-title { font-size: 2.2rem; font-weight: 700; color: var(--primary-color); margin-bottom: 2rem; text-transform: uppercase; letter-spacing: 1px; } .coin-logo-container { display: flex; flex-direction: column; align-items: center; gap: 1rem; max-width: 500px; margin: 0 auto; padding-top: 4rem; padding-bottom: 6rem; } .coin-logo-animated { width: 80px; height: 80px; } .coin-logo-container h3 { font-size: 1.5rem; font-weight: 500; color: var(--text-color-main); } .coin-logo-container p { color: var(--text-color-secondary); line-height: 1.6; } .quest-timeline { list-style: none; padding: 0; margin: 2rem auto; max-width: 700px; position: relative; } .quest-timeline::before { content: ''; position: absolute; top: 0; left: 20px; height: 100%; width: 4px; background: var(--border-color); } .quest-step { margin-bottom: 2.5rem; position: relative; padding-left: 60px; text-align: left; } .quest-step::before { content: attr(data-icon); position: absolute; left: 0; top: 0; width: 44px; height: 44px; border-radius: 50%; background-color: var(--primary-color); color: #121212; display: flex; align-items: center; justify-content: center; font-size: 1.5rem; border: 3px solid var(--background-color-container); font-weight: 700; } .quest-step:nth-child(even)::before { background-color: var(--success-color); } .quest-step-title { font-size: 1.4rem; font-weight: 500; color: var(--text-color-main); margin-bottom: 0.5rem; } .quest-step-desc { color: var(--text-color-secondary); line-height: 1.6; margin-bottom: 1rem; } .quest-step-reward { font-size: 1.2rem; font-weight: 700; color: var(--success-color); background-color: rgba(76, 175, 80, 0.1); padding: 0.4rem 0.8rem; border-radius: 20px; display: inline-block; } .solana-horizon-section { background: #181818; border-radius: 8px; padding: 2.5rem 2rem; margin-top: 2rem; border: 1px solid var(--border-color); } .solana-horizon-section h2 { background: var(--solana-gradient); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; text-fill-color: transparent; font-size: 2rem; font-weight: 700; margin-bottom: 1rem; } .solana-horizon-section p { color: var(--text-color-secondary); max-width: 700px; margin: 1rem auto 0; font-size: 1.05rem; line-height: 1.7; } .cta-quest-section { padding: 3rem 1rem; } .cta-quest-section h2 { font-size: 2.2rem; color: var(--primary-color); } @keyframes pulse { 0% { transform: scale(1); box-shadow: 0 0 0 0 rgba(197, 179, 88, 0.5); } 70% { transform: scale(1.05); box-shadow: 0 0 10px 15px rgba(197, 179, 88, 0); } 100% { transform: scale(1); box-shadow: 0 0 0 0 rgba(197, 179, 88, 0); } } .btn-cta-quest { display: inline-block; margin-top: 1.5rem; padding: 1rem 2.5rem; font-size: 1.2rem; font-weight: 700; color: var(--background-color-main); background-color: var(--primary-color); border-radius: 50px; text-decoration: none; transition: transform 0.2s; animation: pulse 2.5s infinite; } .btn-cta-quest:hover { transform: scale(1.1); animation-play-state: paused; } .share-earn-section { border-top: 1px solid var(--border-color); margin-top: 2.5rem; padding-top: 2.5rem; text-align: center; } .share-earn-heading { font-size: 2rem; font-weight: 700; margin-bottom: 0.5rem; background: linear-gradient(45deg, #6a1b9a, #8e24aa); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; text-fill-color: transparent; text-shadow: 0 0 8px rgba(142, 36, 170, 0.3); } .share-earn-subheading { font-size: 1.1rem; color: var(--text-color-secondary); margin-bottom: 2rem; max-width: 600px; margin-left: auto; margin-right: auto; } .share-buttons-container { display: flex; justify-content: center; gap: 1rem; flex-wrap: wrap; margin-bottom: 2rem; } .share-btn { display: inline-flex; align-items: center; gap: 0.5rem; padding: 0.75rem 1.5rem; color: #fff; text-decoration: none; border-radius: 5px; font-weight: 500; transition: all 0.2s ease; border: none; } .share-btn.facebook { background-color: #6a1b9a; } .share-btn.facebook:hover { background-color: #8e24aa; } .share-btn.telegram { background-color: #6a1b9a; } .share-btn.telegram:hover { background-color: #8e24aa; } .referral-container { display: flex; flex-direction: column; align-items: center; gap: 1rem; } #referral-link-wrapper { display: flex; gap: 0.5rem; width: 100%; max-width: 500px; } #referral-link-wrapper.hidden { display: none; } #referral-link-input { flex-grow: 1; background-color: #2a2a2a; border: 1px solid var(--border-color); color: var(--text-color-secondary); padding: 0.5rem 0.8rem; border-radius: 5px; font-family: monospace; } #referral-feedback { min-height: 1.2em; font-size: 0.9rem; font-weight: 500; } .internal-links-section { border-top: 1px solid var(--border-color); margin-top: 2.5rem; padding-top: 2.5rem; text-align: center; } .internal-links-heading { font-size: 2rem; font-weight: 700; margin-bottom: 2rem; background: linear-gradient(45deg, var(--success-color), #81c784); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; text-fill-color: transparent; text-shadow: 0 0 8px rgba(76, 175, 80, 0.3); } .nav-links-relocated { display: flex; flex-wrap: wrap; justify-content: center; gap: 1rem; list-style: none; padding: 0; margin: 0; } .nav-links-relocated a { display: block; padding: 0.75rem 1.5rem; background: linear-gradient(45deg, #1a5d1a, #2b7a2b); color: #fff; text-decoration: none; border-radius: 50px; font-weight: 500; transition: all 0.3s ease; box-shadow: 0 2px 8px rgba(0,0,0,0.4); } .nav-links-relocated a:hover { transform: translateY(-3px) scale(1.05); box-shadow: 0 4px 12px rgba(43, 122, 43, 0.5); background: linear-gradient(45deg, #2b7a2b, #388e3c); } .btn-special { background: var(--solana-gradient); color: white; text-shadow: 1px 1px 2px rgba(0,0,0,0.3); font-weight: 700; } .btn-special:hover { opacity: 0.9; transform: scale(1.02); } .content-page { padding: 1rem 2rem; background-color: #282828; border: 1px solid var(--border-color); border-radius: 8px; max-width: 900px; margin: 2rem auto; } .content-page h1 { font-size: 2.2rem; font-weight: 700; color: var(--primary-color); text-align: center; margin-bottom: 1.5rem; border-bottom: 1px solid var(--border-color); padding-bottom: 1rem; } .content-page h2 { font-size: 1.8rem; font-weight: 500; color: var(--text-color-main); margin-top: 2rem; margin-bottom: 1rem; } .content-page h3 { font-size: 1.4rem; font-weight: 500; color: var(--text-color-main); margin-top: 1.5rem; margin-bottom: 0.5rem; font-style: italic; } .content-page p { line-height: 1.7; color: var(--text-color-secondary); margin-bottom: 1rem; } .content-page .intro-text, .content-page .outro-text { font-size: 1.1rem; font-style: italic; text-align: center; color: var(--text-color-main); } .content-page .outro-text { margin-top: 2rem; font-weight: 500; color: var(--primary-color); } .content-page ul, .content-page ol { list-style-position: outside; padding-left: 2rem; display: flex; flex-direction: column; gap: 1rem; } .content-page li { line-height: 1.6; color: var(--text-color-secondary); } .content-page li::marker { color: var(--primary-color); font-weight: bold; } .content-page ol ol, .content-page ol ul, .content-page ul ol, .content-page ul ul { margin-top: 0.5rem; } .content-page strong { color: var(--text-color-main); font-weight: 500; } .threat-vectors-section { border-top: 1px solid var(--border-color); margin-top: 2.5rem; padding-top: 2.5rem; text-align: center; } .threat-vectors-heading { font-size: 2rem; font-weight: 700; margin-bottom: 0.5rem; background: linear-gradient(45deg, #f44336, #d32f2f); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; text-fill-color: transparent; text-shadow: 0 0 8px rgba(244, 67, 54, 0.3); } .threat-vectors-subheading { font-size: 1.1rem; color: var(--text-color-secondary); margin-bottom: 2rem; max-width: 700px; margin-left: auto; margin-right: auto; } .threat-vectors-grid { display: grid; grid-template-columns: 1fr; gap: 1.5rem; text-align: left; max-width: 900px; margin: 0 auto; } .threat-vector-item { background-color: #282828; padding: 1rem 1.5rem; border-radius: 6px; border-left: 3px solid var(--error-color); transition: all .2s; } .threat-vector-item:hover { transform: translateY(-2px); box-shadow: 0 4px 8px rgba(0,0,0,0.2); } .threat-vector-item h3 { font-size: 1.2rem; font-weight: 500; color: var(--text-color-main); margin-bottom: 0.5rem; } .threat-vector-item h3 em { font-style: italic; color: var(--primary-color); } .threat-vector-item p { color: var(--text-color-secondary); line-height: 1.6; } @media (min-width: 900px) { .threat-vectors-grid { grid-template-columns: 1fr 1fr; } } .privacy-notice { background-color: rgba(197, 179, 88, 0.08); border: 1px solid var(--border-color); border-left: 4px solid var(--primary-color); border-radius: 8px; padding: 1rem 1.5rem; margin: 1.5rem 0; display: flex; align-items: center; gap: 1rem; } .privacy-notice svg { width: 28px; height: 28px; flex-shrink: 0; color: var(--primary-color); } .privacy-notice p { margin: 0; line-height: 1.6; color: var(--text-color-secondary); font-size: 0.95rem; } .privacy-notice strong { color: var(--text-color-main); font-weight: 500; } .disclaimer-notice { margin-top: 1rem; padding: 0.75rem 1rem; background-color: rgba(255, 255, 255, 0.03); border: 1px solid var(--border-color); border-radius: 6px; font-size: 0.85rem; line-height: 1.5; color: var(--text-color-secondary); text-align: center; } .disclaimer-notice p { margin: 0; } .disclaimer-notice strong { color: var(--primary-color); font-weight: 500; } .npm-install-section { margin-top: 2rem; padding: 2rem 1rem; border-top: 1px dashed var(--border-color); background-color: #282828; border-radius: 8px; text-align: center; } .npm-install-section h3 { color: var(--success-color); font-size: 1.5rem; margin-bottom: 0.5rem; font-weight: 500; text-align: center; } .npm-install-subheading { font-size: 1rem; color: var(--text-color-secondary); margin-bottom: 1.5rem; text-align: center; max-width: 800px; margin-left: auto; margin-right: auto; } .install-options-grid { display: grid; gap: 1.5rem; grid-template-columns: 1fr; max-width: 900px; margin: 0 auto; } @media (min-width: 768px) { .install-options-grid { grid-template-columns: 1fr 1fr; } } .install-option-item { background-color: var(--background-color-container); padding: 1.5rem; border-radius: 8px; border: 1px solid var(--border-color); text-align: left; display: flex; flex-direction: column; } .install-option-item p a { color: var(--text-color-secondary); text-decoration: underline; transition: color 0.2s; } .install-option-item p a:hover { color: var(--primary-color); } .install-option-item h4 { font-size: 1.2rem; color: var(--primary-color); margin-bottom: 0.5rem; } .install-option-item p { color: var(--text-color-secondary); font-size: 0.9rem; line-height: 1.5; flex-grow: 1; margin-bottom: 1rem; } .npm-command-wrapper { display: flex; align-items: center; gap: 0.5rem; background-color: #111; border: 1px solid var(--border-color); padding: 0.5rem 0.5rem 0.5rem 1rem; border-radius: 6px; max-width: 100%; } .npm-command { font-family: 'Inconsolata', monospace; color: var(--text-color-main); white-space: pre; overflow-x: auto; font-size: 0.85rem; } .btn-copy-command { padding: 0.4rem 0.8rem; font-size: 0.85rem; flex-shrink: 0; } .btn-claim-install { display: block; margin: 1.5rem auto 0 auto; background-color: var(--primary-color); color: var(--background-color-main); padding: 0.6rem 1.2rem; border: none; border-radius: 5px; cursor: pointer; transition: all 0.2s; font-weight: 700; font-size: 1rem; } .btn-claim-install:hover { background-color: var(--primary-glow-start); transform: scale(1.05); } .btn-claim-install:disabled { background-color: #555; color: #999; cursor: not-allowed; opacity: 0.7; transform: none; } .admin-content-page { padding: 2rem; text-align: center; } .admin-content-page h1 { font-size: 2.2rem; font-weight: 700; color: var(--primary-color); margin-bottom: 1rem; } .admin-content-page .admin-intro-text { font-size: 1.1rem; color: var(--text-color-secondary); margin-bottom: 2rem; max-width: 700px; margin-left: auto; margin-right: auto; } .admin-guide-section { margin-bottom: 3rem; } .admin-guide-section h2 { font-size: 1.8rem; font-weight: 700; margin-bottom: 1rem; color: var(--text-color-main); text-align: center; border-bottom: 1px solid var(--border-color); padding-bottom: 0.75rem; } .admin-guide-section .admin-section-intro { font-size: 1rem; color: var(--text-color-secondary); margin-bottom: 1.5rem; max-width: 800px; margin-left: auto; margin-right: auto; } .install-option-item.admin-option { text-align: left; } .install-option-item.admin-option h4 { font-size: 1.1rem; margin-top: 1rem; margin-bottom: 0.75rem; color: var(--text-color-main); } .install-option-item.admin-option ol { padding-left: 1.5rem; line-height: 1.6; color: var(--text-color-secondary); font-size: 0.9rem; } .install-option-item.admin-option ol li { margin-bottom: 0.5rem; } .install-option-item.admin-option code { background: #111; padding: 2px 6px; border-radius: 4px; font-family: 'Inconsolata', monospace; } .admin-code-block { background-color: #111; border: 1px solid var(--border-color); border-radius: 8px; padding: 1.5rem; text-align: left; overflow-x: auto; max-height: 600px; } .admin-code-block code { font-family: 'Inconsolata', monospace; font-size: 0.9rem; white-space: pre-wrap; word-wrap: break-word; } .cli-usage-section { text-align: center; padding: 2.5rem 0; border-top: 1px solid var(--border-color); margin-top: 2rem; } .cli-usage-section h3 { font-size: 2rem; font-weight: 700; margin-bottom: 0.5rem; color: var(--primary-color); } .cli-usage-subheading { font-size: 1.1rem; color: var(--text-color-secondary); margin-bottom: 2rem; max-width: 700px; margin-left: auto; margin-right: auto; } .cli-commands-grid { display: grid; gap: 1.5rem; text-align: left; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); } @media (min-width: 1200px) { .cli-commands-grid { grid-template-columns: repeat(4, 1fr); } } .cli-command-item { background-color: #282828; padding: 1.5rem; border-radius: 8px; border: 1px solid var(--border-color); display: flex; flex-direction: column; } .cli-command-item code { font-family: 'Inconsolata', monospace; background: #111; padding: 0.5rem 0.75rem; border-radius: 4px; color: var(--text-color-main); margin-bottom: 1rem; font-size: 0.9rem; white-space: pre-wrap; word-break: break-all; } .cli-command-item p { color: var(--text-color-secondary); font-size: 0.95rem; line-height: 1.5; margin: 0; } .share-earn-grid { display: grid; gap: 2rem; grid-template-columns: 1fr; text-align: left; } .api-key-section { background-color: transparent; padding: 0; border-radius: 8px; border: 1px solid var(--border-color); height: 100%; padding: 1rem; background-color: #282828; } .api-key-section h3 { font-size: 1rem; font-weight: 500; color: var(--text-color-main); margin-bottom: 0.5rem; display: flex; align-items: center; gap: 0.5rem; } .api-key-section p { font-size: 0.8rem; color: var(--text-color-secondary); line-height: 1.5; margin-bottom: 1rem; } .api-key-form { display: flex; flex-direction: column; gap: 0.75rem; } .api-key-form input { width: 100%; padding: 0.5rem 0.8rem; border: 1px solid var(--border-color); border-radius: 5px; font-family: monospace; background-color: #3a3a3a; color: var(--text-color-main); font-size: 0.85rem; } .api-key-form button { align-self: flex-start; font-size: 0.8rem; padding: 0.4rem 0.8rem; } #api-key-feedback { min-height: 1.2em; font-size: 0.8rem; font-weight: 500; margin-top: 0.5rem; } @media (min-width: 900px) { .share-earn-grid { grid-template-columns: 1fr 1fr; align-items: start; } } #ip-ad-link img { display: block; filter: grayscale(1) brightness(0.15); opacity: 0.1; transition: all 0.3s ease; } #ip-ad-link:hover img, #ip-ad-link:focus img { filter: grayscale(0) brightness(1); opacity: 0.7; } .footer-v-stack { display: flex; flex-direction: column; align-items: center; gap: 0.5rem; flex-shrink: 0; } #date-time-display { display: flex; flex-direction: column; align-items: center; justify-content: center; color: var(--text-color-secondary); font-family: 'Inconsolata', monospace; width: 185px; height: 50px; border: 1px solid var(--border-color); border-radius: 6px; background-color: #2a2a2a; } #date-time-display .time { font-size: 1.5rem; font-weight: 700; color: var(--text-color-main); letter-spacing: 2px; } #date-time-display .date { font-size: 0.8rem; margin-top: 0.1rem; }