﻿* { margin:0; padding:0; box-sizing:border-box; }
body { font-family:'Inter',sans-serif; background:#f8fafc; color:#0f172a; transition:0.3s; line-height:1.7; }
body.light { background:#f8fafc; color:#0f172a; }
.container { max-width:1200px; margin:0 auto; padding:0 20px; }
a { text-decoration:none; color:inherit; }

/* ===== PRELOADER ===== */
#preloader { position:fixed; inset:0; background:#f8fafc; display:flex; align-items:center; justify-content:center; z-index:99999; transition:0.6s; }
body.light #preloader { background:#f8fafc; }
#preloader.hide { opacity:0; visibility:hidden; }
.loader-ring { position:relative; width:80px; height:80px; }
.loader-ring div { box-sizing:border-box; display:block; position:absolute; width:64px; height:64px; margin:8px; border:8px solid #7c3aed; border-radius:50%; animation:loader-ring 1.2s cubic-bezier(0.5,0,0.5,1) infinite; border-color:#7c3aed transparent transparent transparent; }
.loader-ring div:nth-child(1) { animation-delay:-0.45s; }
.loader-ring div:nth-child(2) { animation-delay:-0.3s; }
.loader-ring div:nth-child(3) { animation-delay:-0.15s; }
@keyframes loader-ring { 0%{transform:rotate(0deg)} 100%{transform:rotate(360deg)} }

/* ===== NAVBAR ===== */
.navbar { position:fixed; top:0; left:0; width:100%; z-index:1000; padding:20px 0; transition:0.3s; background:transparent; }
.navbar.scrolled { background:rgba(248,250,252,0.9); backdrop-filter:blur(20px); padding:12px 0; border-bottom:1px solid rgba(124,58,237,0.2); }
body.light .navbar.scrolled { background:rgba(255,255,255,0.95); }
.navbar .container { display:flex; justify-content:space-between; align-items:center; }
.nav-brand { display:flex; align-items:center; gap:12px; }
.brand-icon { width:48px; height:48px; border-radius:14px; background:linear-gradient(135deg,#7c3aed,#a78bfa); color:#0a0a0a; display:flex; align-items:center; justify-content:center; font-size:1.4rem; }
.brand-text { font-weight:800; font-size:1.1rem; letter-spacing:-0.5px; }
.nav-links { display:flex; gap:28px; list-style:none; }
.nav-links a { font-weight:600; font-size:0.85rem; transition:0.3s; position:relative; padding:4px 0; color:#7c3aed; }
.nav-links a::after { content:''; position:absolute; bottom:-4px; left:0; width:0; height:2px; background:#7c3aed; transition:0.3s; }
.nav-links a:hover::after, .nav-links a.active::after { width:100%; }
.nav-links a:hover, .nav-links a.active { color:#7c3aed; }
.nav-actions { display:flex; gap:10px; align-items:center; }
.theme-toggle, .menu-toggle { width:44px; height:44px; border-radius:50%; border:1px solid rgba(124,58,237,0.3); background:transparent; color:#0f172a; cursor:pointer; font-size:1.1rem; transition:0.3s; display:flex; align-items:center; justify-content:center; }
body.light .theme-toggle, body.light .menu-toggle { color:#0f172a; border-color:rgba(124,58,237,0.2); }
.theme-toggle:hover, .menu-toggle:hover { background:#7c3aed; color:#0a0a0a; border-color:#7c3aed; transform:rotate(15deg); }
.menu-toggle { display:none; }
@media (max-width:768px) { .menu-toggle { display:flex; } .nav-links { position:fixed; top:0; right:-100%; width:80%; max-width:320px; height:100vh; background:#f8fafc; flex-direction:column; padding:80px 30px 30px; transition:0.4s; gap:16px; border-left:1px solid rgba(124,58,237,0.2); } body.light .nav-links { background:#f8fafc; } .nav-links.open { right:0; } }

/* ===== HERO ===== */
.hero { min-height:100vh; display:flex; align-items:center; padding:120px 0 60px; position:relative; overflow:hidden; }
.hero::before { content:''; position:absolute; top:-30%; right:-20%; width:60%; height:100%; background:radial-gradient(circle, rgba(124,58,237,0.06), transparent 70%); pointer-events:none; }
.hero-content { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; position:relative; z-index:1; }
.hero-text .hero-badge { display:inline-block; padding:6px 22px; border-radius:50px; background:linear-gradient(135deg,#7c3aed,#a78bfa); color:#0a0a0a; font-size:0.75rem; font-weight:700; margin-bottom:16px; }
.hero-text h1 { font-size:4rem; font-weight:900; line-height:1.1; letter-spacing:-2px; }
.hero-text h1 .typing-text { background:linear-gradient(135deg,#7c3aed,#a78bfa); -webkit-background-clip:text; -webkit-text-fill-color:transparent; }
.hero-subtitle { font-size:1.2rem; font-weight:500; color:#7c3aed; margin:6px 0 12px; }
body.light .hero-subtitle { color:#334155; }
.typing-subtitle { color:#7c3aed; font-weight:700; }
.hero-desc-box { background:#ffffff;border:1px solid transparent; padding:16px 24px; border-radius:12px; border-left:4px solid #7c3aed;  margin:12px 0 20px; }
body.light .hero-desc-box { background:rgba(255,255,255,0.8); }
.hero-desc-box p { font-style:italic; }
.hero-stats { display:flex; gap:40px; margin:20px 0; }
.hero-stats .stat { text-align:center; }
.hero-stats .stat span { display:block; font-size:2rem; font-weight:900; color:#7c3aed; }
.hero-stats .stat label { font-size:0.75rem; color:#7c3aed; font-weight:500; }
body.light .hero-stats .stat label { color:#334155; }
.hero-buttons { display:flex; gap:12px; flex-wrap:wrap; }
.btn { padding:12px 28px; border-radius:50px; font-weight:600; font-size:0.9rem; cursor:pointer; transition:0.3s; border:none; display:inline-flex; align-items:center; gap:8px; }
.btn-primary { background:linear-gradient(135deg,#7c3aed,#a78bfa); color:#0a0a0a; box-shadow:0 10px 30px -10px rgba(124,58,237,0.4); }
.btn-primary:hover { transform:translateY(-3px) scale(1.02); box-shadow:0 20px 40px -10px rgba(124,58,237,0.6); }
.btn-youtube { background:#ff0000; color:#fff; }
.btn-youtube:hover { transform:translateY(-3px) scale(1.02); box-shadow:0 20px 40px -10px rgba(255,0,0,0.4); }
.btn-facebook { background:#1877f2; color:#fff; }
.btn-facebook:hover { transform:translateY(-3px) scale(1.02); box-shadow:0 20px 40px -10px rgba(24,119,242,0.4); }
.btn-outline { background:transparent; border:2px solid #7c3aed; color:#0f172a; }
body.light .btn-outline { color:#0f172a; }
.btn-outline:hover { background:#7c3aed; color:#0a0a0a; transform:translateY(-3px); }

/* ===== PHOTO - RECTANGLE ===== */
.hero-image { display:flex; justify-content:center; align-items:center; }
.hero-photo { position:relative; width:400px; height:500px; border-radius:20px; overflow:hidden; box-shadow:0 30px 60px -20px rgba(124,58,237,0.4); transition:0.5s ease; border:3px solid rgba(124,58,237,0.3); }
.hero-photo:hover { transform:scale(1.02) rotate(1deg); box-shadow:0 40px 80px -20px rgba(124,58,237,0.6); }
.hero-photo img { width:100%; height:100%; object-fit:cover; transition:0.8s ease; }
.hero-photo:hover img { transform:scale(1.05); }
.photo-frame { position:absolute; inset:0; border:2px solid rgba(124,58,237,0.2); border-radius:20px; pointer-events:none; }
@media (max-width:768px) { .hero-content { grid-template-columns:1fr; text-align:center; } .hero-text h1 { font-size:2.8rem; } .hero-photo { width:280px; height:350px; margin:0 auto; } .hero-stats { justify-content:center; } .hero-buttons { justify-content:center; } }

/* ===== SECTION HEADER ===== */
.section-header { text-align:center; margin-bottom:50px; }
.section-tag { display:inline-block; padding:4px 20px; border-radius:50px; background:rgba(124,58,237,0.15); color:#7c3aed; font-weight:700; font-size:0.75rem; letter-spacing:1px; margin-bottom:10px; }
.section-header h2 { font-size:2.8rem; font-weight:800; letter-spacing:-1px; }
.section-header p { color:#7c3aed; max-width:600px; margin:10px auto 0; }

/* ===== ABOUT ===== */
.about { padding:80px 0; background:#ffffff; }
body.light .about { background:rgba(0,0,0,0.02); }
.about-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:20px; }
.about-card { background:#ffffff;border:1px solid transparent; padding:24px 20px; border-radius:16px; text-align:center; transition:0.3s; border:1px solid transparent; }
body.light .about-card { background:#ffffff;border:1px solid transparent; box-shadow:0 10px 40px -8px rgba(0,0,0,0.06); }
.about-card:hover { transform:translateY(-6px); border-color:rgba(124,58,237,0.3); }
.about-card i { font-size:2rem; color:#7c3aed; margin-bottom:8px; }
.about-card h3 { font-size:0.9rem; color:#7c3aed; }
body.light .about-card h3 { color:#334155; }
.about-card p { font-weight:600; }

/* ===== EXPERIENCE ===== */
.experience { padding:80px 0; }
.exp-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:24px; }
.exp-card { background:#ffffff;border:1px solid transparent; padding:24px; border-radius:16px; text-align:center; transition:0.3s; border:1px solid rgba(124,58,237,0.1); }
body.light .exp-card { background:#ffffff;border:1px solid transparent; box-shadow:0 10px 40px -8px rgba(0,0,0,0.06); }
.exp-card:hover { transform:translateY(-6px); border-color:rgba(124,58,237,0.4); }
.exp-card.highlight { border-color:#7c3aed; background:rgba(124,58,237,0.1); }
body.light .exp-card.highlight { background:rgba(124,58,237,0.05); }
.exp-year { display:inline-block; padding:4px 16px; border-radius:50px; background:linear-gradient(135deg,#7c3aed,#a78bfa); color:#0a0a0a; font-weight:700; font-size:0.8rem; margin-bottom:10px; }
.exp-card h3 { font-size:1.1rem; margin-bottom:4px; }
.exp-card p { color:#7c3aed; font-size:0.9rem; }

/* ===== WORK ===== */
.work { padding:80px 0; background:#ffffff; }
body.light .work { background:rgba(0,0,0,0.02); }
.work-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:24px; }
.work-card { background:#ffffff;border:1px solid transparent; padding:30px; border-radius:16px; text-align:center; transition:0.3s; border:1px solid transparent; }
body.light .work-card { background:#ffffff;border:1px solid transparent; box-shadow:0 10px 40px -8px rgba(0,0,0,0.06); }
.work-card:hover { transform:translateY(-6px); border-color:rgba(124,58,237,0.3); }
.work-card i { font-size:2.5rem; color:#7c3aed; margin-bottom:12px; }
.work-card h3 { font-size:1.1rem; margin-bottom:4px; }
.work-card p { color:#7c3aed; }
.work-card .badge { display:inline-block; margin-top:8px; padding:4px 14px; border-radius:50px; background:rgba(124,58,237,0.15); color:#7c3aed; font-size:0.7rem; font-weight:600; }
.btn-small { display:inline-block; padding:8px 20px; border-radius:50px; background:linear-gradient(135deg,#7c3aed,#a78bfa); color:#0a0a0a; font-weight:600; font-size:0.8rem; transition:0.3s; border:none; cursor:pointer; margin-top:10px; }
.btn-small:hover { transform:scale(1.05); }
.btn-small.red { background:#ff0000; color:#fff; }

/* ===== YOUTUBE ===== */
.youtube-section { padding:80px 0; }
.youtube-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:30px; }
.youtube-card { background:#ffffff;border:1px solid transparent; padding:30px; border-radius:16px; text-align:center; transition:0.3s; border:1px solid rgba(124,58,237,0.1); }
body.light .youtube-card { background:#ffffff;border:1px solid transparent; box-shadow:0 10px 40px -8px rgba(0,0,0,0.06); }
.youtube-card:hover { transform:translateY(-6px); border-color:rgba(124,58,237,0.4); }
.youtube-card i { font-size:3rem; color:#ff0000; margin-bottom:12px; }
.youtube-card h3 { font-size:1.2rem; }
.youtube-card p { color:#7c3aed; }
.youtube-card .badge { display:inline-block; margin-top:10px; padding:4px 14px; border-radius:50px; background:rgba(124,58,237,0.15); color:#7c3aed; font-size:0.7rem; font-weight:600; }

/* ===== CONTACT ===== */
.contact { padding:80px 0; background:#ffffff; }
body.light .contact { background:rgba(0,0,0,0.02); }
.contact-grid { display:grid; grid-template-columns:1fr 1.5fr; gap:50px; }
.contact-item { display:flex; gap:16px; margin-bottom:16px; }
.contact-item i { width:44px; height:44px; border-radius:12px; background:rgba(124,58,237,0.15); display:flex; align-items:center; justify-content:center; color:#7c3aed; flex-shrink:0; }
.contact-item a { color:#7c3aed; }
.contact-item a:hover { text-decoration:underline; }
.contact-form input, .contact-form textarea { width:100%; padding:14px 20px; border-radius:12px; border:1px solid rgba(255,255,255,0.1); background:#ffffff;border:1px solid transparent; color:#0f172a; font-size:1rem; transition:0.3s; }
body.light .contact-form input, body.light .contact-form textarea { background:#ffffff;border:1px solid transparent; color:#0f172a; border-color:rgba(0,0,0,0.1); }
.contact-form input:focus, .contact-form textarea:focus { outline:none; border-color:#7c3aed; box-shadow:0 0 0 3px rgba(124,58,237,0.2); }
.contact-form textarea { resize:vertical; }
.contact-form button { width:100%; justify-content:center; }
@media (max-width:768px) { .contact-grid { grid-template-columns:1fr; } }

/* ===== DEVELOPER ===== */
.developer-section { padding:80px 0; border-top:2px solid rgba(124,58,237,0.2); border-bottom:2px solid rgba(124,58,237,0.2); }
.developer-content { display:grid; grid-template-columns:1fr 2fr; gap:50px; align-items:center; }
.dev-image { display:flex; justify-content:center; }
.dev-placeholder { width:180px; height:180px; border-radius:50%; background:linear-gradient(135deg,#7c3aed,#a78bfa); overflow:hidden; border:3px solid rgba(124,58,237,0.3); transition:0.3s; }
.dev-placeholder:hover { transform:scale(1.05) rotate(5deg); }
.dev-placeholder img { width:100%; height:100%; object-fit:cover; }
.dev-badge { display:inline-block; padding:4px 18px; border-radius:50px; background:linear-gradient(135deg,#7c3aed,#a78bfa); color:#0a0a0a; font-weight:700; font-size:0.75rem; margin-bottom:12px; }
.dev-info h2 { font-size:2.5rem; font-weight:800; background:linear-gradient(135deg,#7c3aed,#a78bfa); -webkit-background-clip:text; -webkit-text-fill-color:transparent; }
.dev-stats { display:flex; gap:30px; margin:16px 0; }
.dev-stats .stat-item { text-align:center; }
.dev-stats .stat-item span { display:block; font-size:1.5rem; font-weight:800; color:#7c3aed; }
.dev-stats .stat-item label { font-size:0.7rem; color:#7c3aed; }
.dev-links { display:flex; gap:10px; flex-wrap:wrap; }
.dev-links .btn { padding:8px 20px; font-size:0.8rem; }
.dev-links .btn-outline { border-color:#7c3aed; color:#7c3aed; }
.dev-links .btn-outline:hover { background:#7c3aed; color:#0a0a0a; }
.dev-badges { display:flex; gap:8px; flex-wrap:wrap; margin-top:12px; }
.dev-badges .badge { padding:4px 14px; border-radius:50px; background:rgba(124,58,237,0.1); font-size:0.7rem; font-weight:600; color:#7c3aed; border:1px solid rgba(124,58,237,0.2); }
@media (max-width:768px) { .developer-content { grid-template-columns:1fr; text-align:center; } .dev-placeholder { width:150px; height:150px; } .dev-stats { justify-content:center; } .dev-links { justify-content:center; } }

/* ===== FOOTER ===== */
.footer { padding:60px 0 20px; border-top:1px solid rgba(255,255,255,0.05); }
body.light .footer { border-color:rgba(0,0,0,0.05); }
.footer-content { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:30px; padding-bottom:30px; border-bottom:1px solid rgba(255,255,255,0.05); }
body.light .footer-content { border-color:rgba(0,0,0,0.05); }
.footer-links { display:flex; gap:24px; flex-wrap:wrap; }
.footer-links a:hover { color:#7c3aed; }
.footer-social { display:flex; gap:12px; }
.footer-social a { width:40px; height:40px; border-radius:50%; background:#ffffff;border:1px solid transparent; display:flex; align-items:center; justify-content:center; transition:0.3s; }
body.light .footer-social a { background:rgba(0,0,0,0.05); }
.footer-social a:hover { background:#7c3aed; color:#0a0a0a; transform:translateY(-3px); }
.footer-bottom { text-align:center; padding-top:20px; font-size:0.85rem; color:#7c3aed; }
.footer-bottom a { color:#7c3aed; font-weight:600; }
@media (max-width:768px) { .footer-content { flex-direction:column; text-align:center; } }

.back-to-top { position:fixed; bottom:30px; right:30px; width:50px; height:50px; border-radius:50%; background:linear-gradient(135deg,#7c3aed,#a78bfa); color:#0a0a0a; border:none; cursor:pointer; font-size:1.2rem; transition:0.3s; opacity:0; visibility:hidden; transform:translateY(20px); z-index:999; }
.back-to-top.visible { opacity:1; visibility:visible; transform:translateY(0); }
.back-to-top:hover { transform:translateY(-3px) scale(1.05); }

/* ===== SCROLL REVEAL ===== */
.reveal { opacity:0; transform:translateY(40px); transition:all 0.8s ease; }
.reveal.active { opacity:1; transform:translateY(0); }



/* ===== LIGHT THEME OVERRIDES ===== */
body.light {
    background: #f8fafc;
    color: #0f172a;
}

body.light .navbar.scrolled {
    background: rgba(255,255,255,0.95);
}

body.light .hero-desc-box {
    background: #ffffff;
}

body.light .about-card {
    background: #ffffff;
    box-shadow: 0 10px 40px -8px rgba(0,0,0,0.06);
}

body.light .exp-card {
    background: #ffffff;
    box-shadow: 0 10px 40px -8px rgba(0,0,0,0.06);
}

body.light .work-card {
    background: #ffffff;
    box-shadow: 0 10px 40px -8px rgba(0,0,0,0.06);
}

body.light .youtube-card {
    background: #ffffff;
    box-shadow: 0 10px 40px -8px rgba(0,0,0,0.06);
}

body.light .contact-form input,
body.light .contact-form textarea {
    background: #ffffff;
    color: #0f172a;
    border-color: rgba(0,0,0,0.1);
}

body.light .footer {
    background: #ffffff;
}

body.light .footer-social a {
    background: #f1f5f9;
    color: #0f172a;
}

