/* ===== CSS Reset & Base ===== */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;font-size:16px}
body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,'Noto Sans SC',sans-serif;line-height:1.6;color:#1a1a2e;background:#f8f9fa;transition:background 0.3s,color 0.3s}
[data-theme="dark"] body{background:#0f0f1a;color:#e0e0e0}
a{color:#e94560;text-decoration:none;transition:color 0.2s}
a:hover{color:#c73a52}
img{max-width:100%;height:auto;display:block}
h1,h2,h3,h4,h5,h6{line-height:1.3;font-weight:700;margin-bottom:0.5em}
h1{font-size:clamp(1.8rem,4vw,2.8rem)}
h2{font-size:clamp(1.4rem,3vw,2rem)}
h3{font-size:clamp(1.1rem,2vw,1.4rem)}
p{margin-bottom:1rem}
ul{list-style:none;padding:0}

/* ===== Container ===== */
.container{max-width:1200px;margin:0 auto;padding:0 20px}

/* ===== Buttons ===== */
.btn{display:inline-block;padding:12px 28px;border-radius:8px;font-weight:600;font-size:1rem;border:none;cursor:pointer;transition:all 0.3s;text-align:center}
.btn-primary{background:#e94560;color:#fff}
.btn-primary:hover{background:#c73a52;transform:translateY(-2px);box-shadow:0 8px 20px rgba(233,69,96,0.3)}
.btn-outline{background:transparent;border:2px solid #e94560;color:#e94560}
.btn-outline:hover{background:#e94560;color:#fff}

/* ===== Sections ===== */
.section{padding:80px 0}
.section-title{text-align:center;margin-bottom:50px}
.section-title h2{position:relative;display:inline-block;padding-bottom:15px}
.section-title h2::after{content:'';position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:60px;height:3px;background:linear-gradient(90deg,#e94560,#1a1a2e);border-radius:2px}
[data-theme="dark"] .section-title h2::after{background:linear-gradient(90deg,#e94560,#4a4a6a)}

/* ===== Cards ===== */
.card{background:#fff;border-radius:12px;padding:30px;box-shadow:0 4px 20px rgba(0,0,0,0.06);transition:transform 0.3s,box-shadow 0.3s}
[data-theme="dark"] .card{background:#1a1a2e;box-shadow:0 4px 20px rgba(0,0,0,0.3)}
.card:hover{transform:translateY(-4px);box-shadow:0 12px 30px rgba(0,0,0,0.1)}

/* ===== Grids ===== */
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:30px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:25px}
@media(max-width:992px){.grid-4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:768px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.section{padding:50px 0}}

/* ===== Utilities ===== */
.text-center{text-align:center}
.mt-20{margin-top:20px}
.mb-20{margin-bottom:20px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* ===== Navbar ===== */
.navbar{position:fixed;top:0;left:0;right:0;z-index:1000;background:rgba(26,26,46,0.95);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:0 20px;transition:background 0.3s}
.navbar .container{display:flex;align-items:center;justify-content:space-between;height:70px}
.logo{display:flex;align-items:center;gap:10px;font-size:1.5rem;font-weight:800;color:#fff}
.logo span:first-child{color:#e94560}
.logo span:nth-child(2){font-weight:400;color:#aaa}
.logo span:last-child{font-size:1rem;color:#ccc}
.nav-links{display:flex;list-style:none;gap:5px;align-items:center}
.nav-links a{color:#fff;padding:8px 16px;border-radius:6px;font-size:0.95rem;transition:background 0.2s}
.nav-links a:hover{background:rgba(255,255,255,0.1)}
#darkModeToggle{background:none;border:none;color:#fff;font-size:1.3rem;cursor:pointer;padding:8px 12px;border-radius:6px;transition:background 0.2s}
#darkModeToggle:hover{background:rgba(255,255,255,0.1)}
.mobile-menu-btn{display:none;background:none;border:none;color:#fff;font-size:1.8rem;cursor:pointer}
@media(max-width:768px){
  .nav-links{display:none;flex-direction:column;position:absolute;top:70px;left:0;right:0;background:#1a1a2e;padding:20px}
  .mobile-menu-btn{display:block}
  .nav-links.show{display:flex}
}
@media(min-width:769px){
  .nav-links{display:flex!important;flex-direction:row!important;position:static!important;padding:0!important;background:transparent!important}
  .mobile-menu-btn{display:none!important}
}

/* ===== Hero ===== */
.hero{padding-top:120px;padding-bottom:80px;background:linear-gradient(135deg,#1a1a2e 0%,#16213e 50%,#0f3460 100%);color:#fff;position:relative;overflow:hidden}
.hero::before{content:'';position:absolute;top:-50%;left:-20%;width:70%;height:200%;background:radial-gradient(circle,rgba(233,69,96,0.08) 0%,transparent 70%);pointer-events:none}
.hero .container{position:relative;z-index:1}
.hero h1{font-size:clamp(2rem,5vw,3.2rem);margin-bottom:20px;background:linear-gradient(135deg,#fff 30%,#e94560 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.hero h1 span{font-size:clamp(1.2rem,3vw,1.8rem);-webkit-text-fill-color:#ccc;background:linear-gradient(135deg,#ccc,#aaa);-webkit-background-clip:text;background-clip:text}
.hero p{font-size:1.1rem;color:#b0b0d0;margin-bottom:30px;max-width:600px;margin-left:auto;margin-right:auto}
.hero .btn-outline{border-color:#fff;color:#fff}
.hero .btn-outline:hover{background:#fff;color:#1a1a2e}
.hero-features{display:flex;justify-content:center;gap:40px;flex-wrap:wrap;color:#8888aa;font-size:0.9rem;margin-top:40px}
@media(max-width:768px){
  .hero{padding-top:100px;padding-bottom:50px}
  .hero-features{gap:20px}
}

/* ===== About Section ===== */
#about{background:#fff}
[data-theme="dark"] #about{background:#0f0f1a}
#about .card ul li{padding:8px 0;border-bottom:1px solid #eee}
[data-theme="dark"] #about .card ul li{border-bottom-color:#2a2a4e}

/* ===== Products Section ===== */
#products{background:#f8f9fa}
[data-theme="dark"] #products{background:#0a0a12}
#products .card .icon{font-size:3rem;margin-bottom:15px}

/* ===== Features Section ===== */
#features{background:#fff}
[data-theme="dark"] #features{background:#0f0f1a}

/* ===== HowTo Section ===== */
#howto{background:#f8f9fa}
[data-theme="dark"] #howto{background:#0a0a12}
#howto .card{margin-bottom:20px}

/* ===== Resources Section ===== */
#resources{background:#fff}
[data-theme="dark"] #resources{background:#0f0f1a}
#resources .card p{color:#555;font-size:0.95rem}
[data-theme="dark"] #resources .card p{color:#aaa}
#resources .card a{color:#e94560;font-weight:600}

/* ===== FAQ Section ===== */
#faq{background:#f8f9fa}
[data-theme="dark"] #faq{background:#0a0a12}
.faq-item.card{cursor:pointer;margin-bottom:12px}
.faq-item h3{font-size:1.1rem;display:flex;justify-content:space-between;align-items:center;margin-bottom:0}
.faq-icon{font-size:1.2rem;transition:transform 0.3s}
.faq-answer{max-height:0;overflow:hidden;transition:max-height 0.4s ease;margin-top:0}
.faq-answer p{padding-top:15px}
.faq-item.active .faq-icon{transform:rotate(45deg)}

/* ===== Contact Section ===== */
#contact{background:#fff}
[data-theme="dark"] #contact{background:#0f0f1a}
#contact .card ul li{padding:10px 0}

/* ===== Footer ===== */
footer{background:#1a1a2e;color:#8888aa;padding:40px 0 20px}
footer h4{color:#fff;margin-bottom:15px}
footer ul{list-style:none;padding:0;font-size:0.9rem}
footer ul li{margin-bottom:8px}
footer ul li a{color:#8888aa}
footer ul li a:hover{color:#e94560}
footer .border-top{border-top:1px solid #2a2a4e;padding-top:20px;text-align:center;font-size:0.85rem}
footer .border-top p{margin-bottom:0}
footer .border-top p:last-child{margin-top:8px;color:#666}

/* ===== Back to Top ===== */
.back-to-top{position:fixed;bottom:30px;right:30px;width:50px;height:50px;border-radius:50%;background:#e94560;color:#fff;border:none;font-size:1.5rem;cursor:pointer;box-shadow:0 4px 15px rgba(233,69,96,0.3);display:none;z-index:999;transition:all 0.3s}
.back-to-top:hover{background:#c73a52;transform:translateY(-3px);box-shadow:0 6px 20px rgba(233,69,96,0.4)}

/* ===== Scroll Animations (fade-in-up) ===== */
@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
.animate-fade-in{animation:fadeInUp 0.6s ease-out both}
.animate-fade-in-delay-1{animation-delay:0.2s}
.animate-fade-in-delay-2{animation-delay:0.4s}
.animate-fade-in-delay-3{animation-delay:0.6s}

/* ===== Dark Mode Overrides ===== */
[data-theme="dark"] .navbar{background:rgba(15,15,26,0.95)}
[data-theme="dark"] .hero{background:linear-gradient(135deg,#0a0a12 0%,#12122a 50%,#0a1a3a 100%)}
[data-theme="dark"] .hero h1{background:linear-gradient(135deg,#e0e0e0 30%,#e94560 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
[data-theme="dark"] .hero p{color:#8888aa}
[data-theme="dark"] .hero-features{color:#666}
[data-theme="dark"] footer{background:#0a0a12}
[data-theme="dark"] footer .border-top{border-top-color:#1a1a2e}

/* ===== Responsive Fine-tune ===== */
@media(max-width:576px){
  .container{padding:0 15px}
  .hero h1{font-size:1.8rem}
  .hero p{font-size:1rem}
  .btn{padding:10px 20px;font-size:0.9rem}
  .card{padding:20px}
  .section-title{margin-bottom:30px}
  .hero-features{gap:15px;font-size:0.8rem}
  .grid-2,.grid-3,.grid-4{gap:20px}
}
@media(max-width:400px){
  html{font-size:14px}
  .hero h1{font-size:1.5rem}
  .hero-features{flex-direction:column;align-items:center;gap:8px}
}