        /* Custom font and styles */
        body {
            font-family: 'VT323', monospace;
            background-color: #0d1117;
            color: #67e8f9;
            margin: 0;
            padding: 0;
            width: 100vw;
            height: 100vh;
            overflow: hidden;
            background: #111;
        }
        #terminal {
            background: none;
            border: none;
            border-radius: 0;
            box-shadow: none;
            padding: 0;
        }
        /* Logo size adjustment */
        #main-logo {
            max-width: 55vw;
            max-height: 55vh;
            width: auto;
            height: auto;
            display: block;
            opacity: 0;
            transition: opacity 3s;
        }
        @media (max-width: 900px) {
            body {
                font-size: 1.1rem;
                padding: 0;
            }
            #terminal {
                max-width: 98vw;
                padding: 0 2vw;
            }
            #main-logo {
                max-width: 80vw;
                max-height: 40vh;
            }
        }
        @media (max-width: 600px) {
            body {
                font-size: 0.95rem;
                padding: 0;
            }
            #terminal {
                max-width: 100vw;
                padding: 0 1vw;
            }
            #main-logo {
                max-width: 90vw;
                max-height: 30vh;
            }
            .loading-text {
                font-size: 1.1rem;
            }
            .bg-image {
                object-fit: cover;
                min-height: 100vh;
                min-width: 100vw;
            }
            .loading-overlay {
                display: flex !important;
                align-items: center !important;
                justify-content: center !important;
                position: fixed !important;
                inset: 0 !important;
                width: 100vw !important;
                height: 100vh !important;
                z-index: 10000 !important;
                background: rgba(0, 0, 0, 0.6);
            }
            .loading-spinner {
                width: 40px !important;
                height: 40px !important;
                margin: 0 auto 12px auto !important;
            }
        }
        /* Blinking cursor animation */
        .cursor {
            display: inline-block;
            background-color: #fff;
            width: 10px;
            animation: blink 1s step-end infinite;
        }
        @keyframes blink {
            from, to { background-color: transparent; }
            50% { background-color: #fff; }
        }
        /* ASCII art style */
        pre {
            font-family: monospace;
            font-size: 0.8rem;
            line-height: 1.0;
            color: #67e8f9;
            text-shadow: 0 0 6px #a259f7, 0 0 3px #67e8f9;
        }
        .prompt {
            color: #a259f7;
        }
        .system-message {
            color: #fff;
        }
        #output div {
            color: #67e8f9;
        }
        .comment {
            color: #a259f7;
        }
        input#terminal-input {
            background: transparent;
            border: none;
            outline: none;
            color: #fff;
            font-size: inherit;
            font-family: inherit;
            box-shadow: none;
            padding: 0;
            margin: 0;
        }
        /* Additional colorful decorations */
        .path {
            color: #67e8f9;
        }
        .command {
            color: #bc4a38;
        }
        .info {
            color: #e6b422;
        }
        .user {
            color: #f5e9da;
        }
        /* Custom scrollbar */
        ::-webkit-scrollbar {
            width: 8px;
            background: #223a4b;
        }
        ::-webkit-scrollbar-thumb {
            background: #bc4a38;
            border-radius: 4px;
        }
        .bg-image {
            position: fixed;
            top: 0;
            left: 0;
            width: 100vw;
            height: 100vh;
            object-fit: cover;
            z-index: 1;
            opacity: 0;
            transition: opacity 2.5s cubic-bezier(0.4,0,0.2,1);
            pointer-events: none;
        }
        .bg-image.visible {
            opacity: 1;
        }
        .loading-overlay {
            align-items: center;
            justify-content: center;
            position: fixed;
            inset: 0;
            width: 100vw;
            height: 100vh;
            z-index: 10000;
            background: rgba(0, 0, 0, 0.6);
            display: none;
        }
        .loading-overlay.visible {
            display: flex !important;
        }
        .loading-spinner {
            width: 48px;
            height: 48px;
            border: 6px solid #67e8f9;
            border-top: 6px solid #a259f7;
            border-radius: 50%;
            animation: spin 1s linear infinite;
            margin: 0 auto 16px auto !important;
        }
        @keyframes spin {
            0% { transform: rotate(0deg);}
            100% { transform: rotate(360deg);}
        }
        .loading-text {
            color: #67e8f9;
            font-size: 1.5rem;
            font-family: 'VT323', monospace;
            text-align: center;
        }
        .loading-text::after {
          content: '';
          display: inline-block;
          width: 1.5em;
          text-align: left;
          animation: dots 1.2s steps(3, end) infinite;
        }

        @keyframes dots {
          0% { content: ''; }
          33% { content: '.'; }
          66% { content: '..'; }
          100% { content: '...'; }
        } 