.theme-switcher {
    position: fixed;
    top: 20px;
    left: 20px;
    z-index: 99999;

    width: 56px;
    background: #f3f3f3;
    border-radius: 30px;
    box-shadow: 0 5px 20px rgba(0,0,0,0.15);
    padding: 8px 0;

    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
}

.theme-switcher .theme-btn {
    width: 38px;
    height: 38px;
    border: none;
    border-radius: 50%;
    background: transparent;
    color: #666;
    font-size: 18px;
    cursor: pointer;
    transition: all 0.3s ease;
}

.theme-switcher .theme-btn.active {
    background: #ffffff;
    color: #111827;
    box-shadow: 0 3px 10px rgba(0,0,0,0.12);
}

body.dark-mode {
    background: #0f172a;
    color: #e2e8f0;
}

body.dark-mode .navbar {
    background: #111827 !important;
}

body.dark-mode .home,
body.dark-mode .about,
body.dark-mode .portfolio,
body.dark-mode .contact,
body.dark-mode section {
    background: #0f172a !important;
    color: #e2e8f0 !important;
}

body.dark-mode h1,
body.dark-mode h2,
body.dark-mode h3,
body.dark-mode h4,
body.dark-mode h5,
body.dark-mode h6,
body.dark-mode p,
body.dark-mode span,
body.dark-mode a,
body.dark-mode li {
    color: #e2e8f0 !important;
}

body.dark-mode .btn {
    background: #2563eb !important;
    color: #fff !important;
    border-color: #2563eb !important;
}

body.dark-mode input,
body.dark-mode textarea,
body.dark-mode select {
    background: #1e293b !important;
    color: #e2e8f0 !important;
    border: 1px solid #334155 !important;
}

body.dark-mode .box,
body.dark-mode .card,
body.dark-mode .portfolio-box,
body.dark-mode .service-box,
body.dark-mode form {
    background: #1e293b !important;
    color: #e2e8f0 !important;
}

body,
section,
div,
a,
button,
input,
textarea {
    transition: background 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}
