/* ====================================================== */
/* --- BỔ SUNG: LIGHT/DARK MODE & NÚT CHUYỂN THEME --- */
/* ====================================================== */

/* --- Style cho Nút Chuyển Theme --- */
.theme-toggle-btn {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid var(--border-color);
    color: var(--text-secondary);
    width: 40px;
    height: 40px;
    border-radius: 50%;
    cursor: pointer;
    font-size: 1rem;
    position: relative;
    overflow: hidden;
    flex-shrink: 0;
    transition: all 0.3s ease;
}

.theme-toggle-btn:hover {
    background-color: rgba(255, 255, 255, 0.1);
    color: var(--text-primary);
    border-color: var(--gradient-purple);
}

body.light-mode .theme-toggle-btn {
    background: rgba(0, 0, 0, 0.05);
    color: var(--text-secondary);
}

body.light-mode .theme-toggle-btn:hover {
    background-color: rgba(0, 0, 0, 0.1);
    color: var(--text-primary);
}

.theme-toggle-btn .fa-sun,
.theme-toggle-btn .fa-moon {
    position: absolute;
    top: 50%;
    left: 50%;
    transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s ease;
}

/* Trạng thái Dark (mặc định): Hiện mặt trăng, ẩn mặt trời */
.theme-toggle-btn .fa-moon {
    transform: translate(-50%, -50%) rotate(0);
    opacity: 1;
}

.theme-toggle-btn .fa-sun {
    transform: translate(-50%, 150%) rotate(90deg);
    opacity: 0;
}

/* Trạng thái Light: Ẩn mặt trăng, hiện mặt trời */
body.light-mode .theme-toggle-btn .fa-moon {
    transform: translate(-50%, -150%) rotate(-90deg);
    opacity: 0;
}

body.light-mode .theme-toggle-btn .fa-sun {
    transform: translate(-50%, -50%) rotate(0);
    opacity: 1;
}


/* --- Các điều chỉnh cho Light Mode --- */
body.light-mode .main-header {
    background: rgba(255, 255, 255, 0.85);
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

body.light-mode .resume-button {
    color: #f8fafc;
}

body.light-mode .main-nav a {
    color: var(--text-secondary);
}

body.light-mode .main-nav a:hover,
body.light-mode .main-nav a.is-active {
    color: var(--gradient-purple);
}

body.light-mode .nav-indicator {
    background-color: rgba(124, 58, 237, 0.1);
}

body.light-mode .welcome-badge {
    background: rgba(124, 58, 237, 0.05);
    border-color: rgba(124, 58, 237, 0.2);
    color: var(--gradient-purple);
}

body.light-mode .btn-secondary {
    background: white;
    border-color: var(--border-color);
    color: var(--text-primary);
}

body.light-mode .btn-secondary:hover {
    background: #f1f5f9;
    border-color: var(--gradient-purple);
}

/* Explicitly set dark colors for hero text and social icons in light mode */
body.light-mode .hero-text-content p {
    color: #475569 !important;
}

body.light-mode .social-links a {
    color: #475569 !important;
    border-color: var(--border-color);
    background: white;
}

body.light-mode .social-links a:hover {
    color: white !important;
    background: var(--gradient-purple);
    border-color: transparent;
}

body.light-mode .contact-form input,
body.light-mode .contact-form textarea {
    background-color: white;
    border-color: var(--border-color);
    color: var(--text-primary);
}

body.light-mode .contact-form input:focus,
body.light-mode .contact-form textarea:focus {
    border-color: var(--gradient-purple);
    box-shadow: 0 0 0 3px rgba(124, 58, 237, 0.1);
}

/* Skills Pills in Light Mode */
body.light-mode .grid-item {
    background-color: white;
    border-color: var(--border-color);
    color: var(--text-secondary);
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
}

body.light-mode .grid-item:hover {
    color: var(--gradient-purple);
    border-color: var(--gradient-purple);
    background-color: rgba(124, 58, 237, 0.05);
    box-shadow: 0 5px 15px rgba(124, 58, 237, 0.15);
}