/*
Theme Name: ChangefileNow Landing
Theme URI: https://changefilenow.com
Author: ChangefileNow Generator
Version: 1.0
License: MIT
*/

        /* System Fonts - GDPR Safe & Optimized */
        :root {
            --primary: #4f46e5;
            --primary-dark: #4338ca;
            --accent: #f43f5e;
            --secondary: #10b981;
            --background: #f8fafc;
            --text-main: #0f172a;
            --text-muted: #64748b;
        }

        html { scroll-behavior: smooth; }

        body { 
            /* High-End System Font Stack */
            font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
            background-color: var(--background);
            color: var(--text-main);
            overflow-x: hidden;
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
        }

        /* Mesh Gradient */
        .mesh-gradient {
            position: fixed;
            top: 0; left: 0; width: 100%; height: 100%;
            z-index: -1;
            background: 
                radial-gradient(circle at 15% 15%, rgba(79, 70, 229, 0.08) 0%, transparent 45%),
                radial-gradient(circle at 85% 85%, rgba(244, 63, 94, 0.08) 0%, transparent 45%),
                radial-gradient(circle at 50% 50%, rgba(16, 185, 129, 0.05) 0%, transparent 50%),
                var(--background);
            background-size: cover;
            background-position: center;
        }

        .glass-card {
            background: rgba(255, 255, 255, 0.6);
            backdrop-filter: blur(12px);
            -webkit-backdrop-filter: blur(12px);
            border: 1px solid rgba(255, 255, 255, 0.6);
            box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.02), 0 2px 4px -1px rgba(0, 0, 0, 0.02), inset 0 0 0 1px rgba(255, 255, 255, 0.5);
            transition: transform 0.3s ease, box-shadow 0.3s ease;
        }
        
        .glass-card:hover {
            transform: translateY(-4px);
            box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.05), 0 10px 10px -5px rgba(0, 0, 0, 0.02), inset 0 0 0 1px rgba(255, 255, 255, 0.7);
        }

        .hero-text-gradient {
            background: linear-gradient(135deg, #1e293b 0%, #4f46e5 100%);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            /* Fallback */
            color: #1e293b; 
        }

        .feature-icon-box {
            transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
            overflow: hidden;
            display: flex;
            align-items: center;
            justify-content: center;
            border: 1px solid rgba(255, 255, 255, 0.5);
        }
        .feature-card:hover .feature-icon-box { transform: scale(1.05) rotate(3deg); }

        .favicon-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
            gap: 2rem;
        }

        /* ADMIN STYLES */
        body.admin-mode [contenteditable="true"] { outline: 2px dashed transparent; cursor: text; border-radius: 4px; transition: all 0.2s; }
        body.admin-mode [contenteditable="true"]:hover, 
        body.admin-mode [contenteditable="true"]:focus { background: rgba(79, 70, 229, 0.05); outline: 2px dashed rgba(79, 70, 229, 0.3); }

        /* LINK EDITOR TOOLS */
        .link-edit-trigger, .link-delete-trigger {
            display: none; position: absolute; top: -12px;
            width: 24px; height: 24px;
            border-radius: 50%; align-items: center; justify-content: center;
            cursor: pointer; box-shadow: 0 2px 4px rgba(0,0,0,0.2); z-index: 50;
            font-size: 12px; border: 2px solid white; transition: transform 0.2s;
        }
        
        .link-edit-trigger { right: -12px; background: #2563eb; color: white; }
        .link-delete-trigger { right: -40px; background: #ef4444; color: white; }

        .link-edit-trigger:hover { transform: scale(1.1); background: #1d4ed8; }
        .link-delete-trigger:hover { transform: scale(1.1); background: #dc2626; }

        body.admin-mode .editable-link-container:hover .link-edit-trigger { display: flex; }
        /* Only show delete if it's inside a list (ul) */
        body.admin-mode ul .editable-link-container:hover .link-delete-trigger { display: flex; }

        /* ADD ITEM BUTTON */
        .add-item-btn {
            display: none;
            margin-top: 0.5rem;
            padding: 0.25rem 0.75rem;
            font-size: 0.75rem;
            border: 1px dashed #cbd5e1;
            color: #64748b;
            border-radius: 0.5rem;
            cursor: pointer;
            transition: all 0.2s;
        }
        .add-item-btn:hover { border-color: #6366f1; color: #6366f1; background: #eef2ff; }
        body.admin-mode .dynamic-list-container .add-item-btn { display: inline-flex; align-items: center; gap: 4px; }


        body.admin-mode .upload-target { cursor: pointer; position: relative; }
        body.admin-mode .upload-target::after {
            content: 'Change'; position: absolute; inset: 0; background: rgba(0,0,0,0.5);
            color: white; font-size: 9px; font-weight: 800; display: flex;
            align-items: center; justify-content: center; opacity: 0;
            transition: opacity 0.2s; border-radius: inherit; text-transform: uppercase; letter-spacing: 0.1em;
            pointer-events: none;
            backdrop-filter: blur(2px);
        }
        body.admin-mode .upload-target:hover::after { opacity: 1; }

        #admin-dock {
            position: fixed; bottom: 2rem; left: 50%; transform: translateX(-50%);
            background: rgba(15, 23, 42, 0.95); backdrop-filter: blur(10px);
            padding: 0.5rem 0.5rem; border-radius: 1rem;
            display: flex; align-items: center; gap: 0.5rem;
            box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(255,255,255,0.1); 
            z-index: 9999; color: white;
        }

        .admin-btn { 
            display: flex; align-items: center; gap: 0.5rem; 
            font-size: 0.75rem; font-weight: 700; color: #cbd5e1; 
            transition: all 0.2s; cursor: pointer; padding: 0.5rem 1rem; border-radius: 0.75rem;
        }
        .admin-btn:hover { color: white; background: rgba(255,255,255,0.1); }
        .admin-btn.primary { color: white; background: #4f46e5; }
        .admin-btn.primary:hover { background: #4338ca; }
        .admin-btn.wp { color: #e0f2fe; background: #0ea5e9; }
        .admin-btn.wp:hover { background: #0284c7; }
        .admin-btn.theme { color: #fff7ed; background: #ea580c; }
        .admin-btn.theme:hover { background: #c2410c; }
        .admin-btn.active-tool { background: #f43f5e; color: white; box-shadow: 0 0 15px rgba(244, 63, 94, 0.5); }
        
        .admin-divider { width: 1px; height: 24px; background: rgba(255,255,255,0.15); margin: 0 0.25rem; }

        /* Settings Modal */
        .modal-overlay {
            display: none; position: fixed; inset: 0; 
            background: rgba(0,0,0,0.5); backdrop-filter: blur(4px);
            align-items: center; justify-content: center; z-index: 10000;
        }
        .modal-overlay.active { display: flex; }
        
        .settings-content {
            background: white; width: 100%; max-width: 600px; padding: 2rem; 
            border-radius: 1.5rem; box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
            animation: modalFadeIn 0.2s ease-out; position: relative;
        }
        @keyframes modalFadeIn { from { opacity: 0; transform: scale(0.95); } to { opacity: 1; transform: scale(1); } }

        /* CSS/HTML Inspector Styles */
        body.css-inspect-mode * { cursor: crosshair !important; }
        body.css-inspect-mode *:hover { outline: 2px solid #f43f5e !important; box-shadow: inset 0 0 0 1000px rgba(244, 63, 94, 0.1) !important; }
        
        body.html-inspect-mode * { cursor: copy !important; }
        body.html-inspect-mode *:hover { outline: 2px solid #10b981 !important; box-shadow: inset 0 0 0 1000px rgba(16, 185, 129, 0.1) !important; }
        
        .code-output-box {
            font-family: 'Fira Code', 'Courier New', monospace;
            background: #0f172a; color: #a5b4fc;
            padding: 1rem; border-radius: 0.5rem;
            width: 100%; height: 300px; font-size: 12px;
            border: 1px solid #334155; margin-bottom: 1rem;
            white-space: pre; overflow: auto;
        }

        .fade-in-up { animation: fadeInUp 0.8s ease-out forwards; opacity: 0; transform: translateY(20px); }
        .delay-100 { animation-delay: 0.1s; }
        .delay-200 { animation-delay: 0.2s; }
        .delay-300 { animation-delay: 0.3s; }

        @keyframes fadeInUp { to { opacity: 1; transform: translateY(0); } }
    