/* ============================================================
   DARK MODE — Inas Wafiyah Portfolio
   Palette: Deep Obsidian + Rose Gold + Dusty Mauve
   ============================================================ */

/* ── Dark mode toggle button ── */
.dark-toggle {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border-radius: 12px;
  background: rgba(255,255,255,.15);
  border: 1px solid rgba(106,170,122,.28);
  cursor: pointer;
  transition: background .25s, border-color .25s, transform .3s var(--spring);
  flex-shrink: 0;
  color: #4a7c59;
  padding: 0;
}
.dark-toggle:hover {
  background: rgba(255,255,255,.28);
  border-color: rgba(106,170,122,.55);
  transform: rotate(15deg) scale(1.08);
}
.dark-toggle svg { display: block; transition: opacity .2s; }
.dark-toggle .icon-moon { display: block; }
.dark-toggle .icon-sun  { display: none; }

/* ── Dark mode variables — Strawberry Matcha ── */
[data-theme="dark"] {
  --sm-strawberry:  #e8334a;
  --sm-straw-deep:  #c41e3a;
  --sm-matcha:      #6aaa7a;
  --sm-matcha-deep: #4a7c59;
  --sm-matcha-dark: #2d5a3d;
  --text-dark:      #f0f7f2;
  --text-mid:       #a8c8a8;
  --text-soft:      #7aaa8a;
  --glass-bg:       rgba(10, 18, 12, 0.82);
  --glass-border:   rgba(74, 124, 89, 0.20);
}

/* ── Body & Background ── */
[data-theme="dark"] body {
  background: linear-gradient(160deg, #130810 0%, #1a0d14 40%, #1e1020 100%);
  color: var(--text-dark);
}

[data-theme="dark"] body::before {
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.06'/%3E%3C/svg%3E");
}

/* ── Blobs ── */
[data-theme="dark"] .blob-1 { background: rgba(106,170,122,.10); }
[data-theme="dark"] .blob-2 { background: rgba(232,51,74,.07); }
[data-theme="dark"] .blob-3 { background: rgba(74,124,89,.12); }

/* ── NAVBAR ── */
[data-theme="dark"] .navbar {
  background: rgba(8, 14, 10, 0.88);
  border-color: rgba(74,124,89,.18);
  box-shadow:
    0 4px 28px rgba(0,0,0,.45),
    inset 0 1px 0 rgba(106,170,122,.10),
    inset 0 -1px 0 rgba(74,124,89,.06);
}
[data-theme="dark"] .navbar.scrolled {
  background: rgba(6, 12, 8, 0.96);
  box-shadow: 0 8px 44px rgba(0,0,0,.55), inset 0 1px 0 rgba(106,170,122,.10);
}

[data-theme="dark"] .logo-text { color: var(--text-dark); }
[data-theme="dark"] .logo-text em { color: #e8334a; }

[data-theme="dark"] .nav-link { color: var(--text-mid); }
[data-theme="dark"] .nav-link:hover {
  color: var(--text-dark);
  background: rgba(106,170,122,.10);
}
[data-theme="dark"] .nav-link.active { color: #6aaa7a; }
[data-theme="dark"] .nav-link::after { background: #6aaa7a; }

[data-theme="dark"] .hamburger {
  background: rgba(74,124,89,.12);
  border-color: rgba(106,170,122,.22);
}
[data-theme="dark"] .hamburger:hover { background: rgba(74,124,89,.22); }
[data-theme="dark"] .hamburger span { background: #6aaa7a; }

/* Mobile menu */
[data-theme="dark"] .mobile-menu {
  background: rgba(6, 12, 8, 0.97);
  border-color: rgba(74,124,89,.18);
  box-shadow: 0 10px 48px rgba(0,0,0,.55);
}
[data-theme="dark"] .mob-link { color: var(--text-mid); }
[data-theme="dark"] .mob-link:hover,
[data-theme="dark"] .mob-link.active {
  background: rgba(106,170,122,.12);
  color: #6aaa7a;
}
[data-theme="dark"] .mob-footer { border-top-color: rgba(74,124,89,.15); }

/* Dark toggle — swap icons */
[data-theme="dark"] .dark-toggle { color: #6aaa7a; }
[data-theme="dark"] .dark-toggle .icon-moon { display: none; }
[data-theme="dark"] .dark-toggle .icon-sun  { display: block; }

/* ── HERO ── */
[data-theme="dark"] .hero {
  background: linear-gradient(160deg, #130810 0%, #1a0d14 40%, #1e1020 100%);
}

/* Title "Portofolio" dark — stroke matcha transparan */
[data-theme="dark"] .hero-bg-text {
  -webkit-text-stroke: 2px rgba(106,170,122,.50);
}

[data-theme="dark"] .hero-photo-wrap::after {
  background: linear-gradient(to top, #1a0d14 0%, transparent 100%);
}

[data-theme="dark"] .hero-photo {
  filter:
    drop-shadow(-16px 0 32px rgba(196,30,58,.18))
    drop-shadow( 16px 0 32px rgba(74,124,89,.18))
    drop-shadow(0 -8px 24px rgba(106,170,122,.10));
}

/* "Software Engineering" vertikal — matcha muted di dark */
[data-theme="dark"] .vertical-text { color: #6aaa7a; }

/* FULL / STACK — matcha di dark mode */
[data-theme="dark"] .rpill {
  color: #6aaa7a;
}

/* "STOWBERRY" handle — matcha soft */
[data-theme="dark"] .hero-handle { color: #6aaa7a; }

/* "MATCHA" — gradient tetap, tapi filter brightened agar muncul di dark */
[data-theme="dark"] .name-top {
  filter: drop-shadow(0 2px 20px rgba(232,51,74,.35)) brightness(1.15);
}

/* name-bot outline matcha — lebih terang di dark */
[data-theme="dark"] .name-bot {
  -webkit-text-stroke-color: #6aaa7a;
  color: transparent;
}

/* Hero title & subtitle */
[data-theme="dark"] .hero-title { color: var(--text-dark); }
[data-theme="dark"] .hero-sub   { color: var(--text-mid); }

/* Hero search bar */
[data-theme="dark"] .hero-search {
  background: rgba(12, 18, 14, 0.92);
  border-color: rgba(74,124,89,.28);
  box-shadow:
    0 8px 40px rgba(0,0,0,.55),
    0 2px 10px rgba(196,30,58,.10),
    inset 0 1.5px 0 rgba(106,170,122,.10),
    inset 0 -1px 0 rgba(74,124,89,.08);
}
[data-theme="dark"] .hero-search:hover {
  box-shadow:
    0 16px 56px rgba(0,0,0,.60),
    0 4px 16px rgba(74,124,89,.20),
    inset 0 1.5px 0 rgba(106,170,122,.14);
}
/* Icon search — matcha di dark */
[data-theme="dark"] .hero-search-icon { color: #6aaa7a; }
/* Label teks — matcha soft */
[data-theme="dark"] .hero-search-label { color: #a8c8a8; }
/* Ampersand */
[data-theme="dark"] .hero-search-amp { color: #6aaa7a; opacity: .7; }
/* Tag "responsive ✦" */
[data-theme="dark"] .hero-search-tag {
  color: #6aaa7a;
  background: rgba(74,124,89,.14);
  border-color: rgba(106,170,122,.28);
}

/* Hero sticker */
[data-theme="dark"] .hero-sticker {
  filter:
    drop-shadow(0 4px 12px rgba(0,0,0,.45))
    brightness(0.82)
    saturate(0.85);
}

/* ── ABOUT ── */
[data-theme="dark"] .about {
  background: linear-gradient(160deg, #130810 0%, #1a0d14 40%, #1e1020 100%);
}

/* Force semua section title terlihat di dark mode */
[data-theme="dark"] .proj-title,
[data-theme="dark"] .skills-title,
[data-theme="dark"] .contact-title,
[data-theme="dark"] .cert-title,
[data-theme="dark"] .about-section-title,
[data-theme="dark"] .about-name,
[data-theme="dark"] .hero-title {
  color: #f0f7f2 !important;
}
[data-theme="dark"] .proj-title em,
[data-theme="dark"] .skills-title em,
[data-theme="dark"] .contact-title em,
[data-theme="dark"] .cert-title em {
  color: #e8334a !important;
}
[data-theme="dark"] .proj-sub,
[data-theme="dark"] .skills-sub,
[data-theme="dark"] .contact-desc,
[data-theme="dark"] .cert-sub {
  color: #a8c8a8 !important;
}

[data-theme="dark"] .about-bg-text {
  -webkit-text-stroke: 2px rgba(106,170,122,.45);
}

[data-theme="dark"] .about-badge {
  color: #6aaa7a;
  border-color: rgba(106,170,122,.35);
}

[data-theme="dark"] .about-name { color: var(--text-dark); }
[data-theme="dark"] .about-name em { color: #e8334a; }

[data-theme="dark"] .about-name span {
  -webkit-text-stroke-color: #e8334a;
}

[data-theme="dark"] .about-bio p { color: var(--text-dark); }
[data-theme="dark"] .about-bio strong { color: #6aaa7a; }

[data-theme="dark"] .about-tag {
  color: #6aaa7a;
  background: rgba(74,124,89,.12);
  border-color: rgba(106,170,122,.25);
}

[data-theme="dark"] .about-contacts li { color: var(--text-dark); }
[data-theme="dark"] .about-contacts a { color: #6aaa7a; }

[data-theme="dark"] .about-section-title { color: var(--text-dark); }
[data-theme="dark"] .about-edu-school { color: #e8334a; }
[data-theme="dark"] .about-edu-year { color: var(--text-mid); }
[data-theme="dark"] .about-edu-major { color: var(--text-dark); }

[data-theme="dark"] .about-hello {
  color: var(--text-mid);
  border-color: rgba(74,124,89,.22);
}

/* Polaroid dark */
[data-theme="dark"] .about-polaroid {
  background: #0f1a11;
  box-shadow:
    0 8px 32px rgba(0,0,0,.5),
    0 2px 8px rgba(0,0,0,.3),
    inset 0 1px 0 rgba(106,170,122,.08);
}
[data-theme="dark"] .about-polaroid-img {
  background: #0a100b;
}
[data-theme="dark"] .about-polaroid-caption { color: var(--text-dark); }
[data-theme="dark"] .about-star { color: #e8334a; }

/* Personal tags */
[data-theme="dark"] .about-personal-tags span {
  background: linear-gradient(135deg, #e8334a, #2d5a3d);
}

/* CV button area */
[data-theme="dark"] .about-cv-btn {
  background: rgba(74,124,89,.12);
  border-color: rgba(106,170,122,.25);
  color: var(--text-dark);
}
[data-theme="dark"] .about-cv-btn:hover {
  background: rgba(74,124,89,.22);
  color: #6aaa7a;
}
[data-theme="dark"] .about-cv-hint { color: var(--text-soft); }

[data-theme="dark"] .about-sticker {
  filter:
    drop-shadow(0 4px 12px rgba(0,0,0,.45))
    brightness(0.82)
    saturate(0.85);
}

/* ── SKILLS ── */
[data-theme="dark"] .skills {
  background: linear-gradient(160deg, #130810 0%, #1a0d14 40%, #1e1020 100%);
}

[data-theme="dark"] .skills-bg-text {
  -webkit-text-stroke: 2px rgba(74,124,89,.45);
}

[data-theme="dark"] .skills-eyebrow {
  color: #6aaa7a;
  background: rgba(74,124,89,.12);
  border-color: rgba(106,170,122,.22);
}

[data-theme="dark"] .skills-title { color: var(--text-dark); }
[data-theme="dark"] .skills-title em { color: #e8334a; }
[data-theme="dark"] .skills-sub { color: var(--text-mid); }

[data-theme="dark"] .skills-marquee-track span {
  color: #6aaa7a;
  border-right-color: rgba(74,124,89,.18);
  opacity: .75;
}

/* Skill cards */
[data-theme="dark"] .skill-card {
  background: rgba(10, 18, 12, 0.92);
  border-color: rgba(74,124,89,.16);
  box-shadow:
    0 4px 24px rgba(0,0,0,.4),
    inset 0 1px 0 rgba(106,170,122,.06);
}
[data-theme="dark"] .skill-card:hover {
  box-shadow:
    0 16px 48px rgba(0,0,0,.55),
    inset 0 1px 0 rgba(106,170,122,.12);
  border-color: rgba(106,170,122,.30);
}

[data-theme="dark"] .skill-card-tag {
  color: #6aaa7a;
  background: rgba(74,124,89,.12);
  border-color: rgba(106,170,122,.20);
}

[data-theme="dark"] .skill-card-title { color: var(--text-dark); }
[data-theme="dark"] .skill-card-title em { color: #e8334a; }

[data-theme="dark"] .skill-list li {
  background: rgba(74,124,89,.06);
}
[data-theme="dark"] .skill-list li:hover {
  background: rgba(74,124,89,.14);
}
[data-theme="dark"] .skill-name { color: var(--text-dark); }

/* Level badges */
[data-theme="dark"] .skill-level--high {
  background: linear-gradient(135deg, #e8334a, #2d5a3d);
  box-shadow: 0 2px 8px rgba(0,0,0,.3);
}
[data-theme="dark"] .skill-level--mid {
  color: #6aaa7a;
  background: rgba(74,124,89,.12);
  border-color: rgba(106,170,122,.30);
}
[data-theme="dark"] .skill-level--low {
  color: var(--text-soft);
  background: rgba(74,124,89,.05);
  border-color: rgba(74,124,89,.14);
}

[data-theme="dark"] .skill-chips span {
  color: var(--text-dark);
  background: rgba(74,124,89,.08);
  border-color: rgba(106,170,122,.18);
}
[data-theme="dark"] .skill-chips span:hover {
  background: linear-gradient(135deg, #e8334a, #2d5a3d);
  color: #fff;
  border-color: transparent;
}

[data-theme="dark"] .skill-soft-item {
  background: rgba(74,124,89,.07);
}
[data-theme="dark"] .skill-soft-item:hover {
  background: rgba(74,124,89,.15);
}
[data-theme="dark"] .skill-soft-item span:last-child { color: var(--text-dark); }

/* Stats */
[data-theme="dark"] .skills-stats {
  background: rgba(10, 18, 12, 0.90);
  border-color: rgba(74,124,89,.16);
  box-shadow:
    0 4px 28px rgba(0,0,0,.45),
    inset 0 1px 0 rgba(106,170,122,.06);
}
[data-theme="dark"] .skills-stat-num { color: var(--text-dark); }
[data-theme="dark"] .skills-stat-num em { color: #e8334a; }
[data-theme="dark"] .skills-stat-label { color: var(--text-mid); }
[data-theme="dark"] .skills-stat-divider { background: rgba(74,124,89,.20); }

/* Skills sticker */
[data-theme="dark"] .skills-sticker {
  filter:
    drop-shadow(0 4px 12px rgba(0,0,0,.45))
    brightness(0.82)
    saturate(0.85);
}

/* ── PROJECTS ── */
[data-theme="dark"] .projects {
  background: linear-gradient(160deg, #130810 0%, #1a0d14 40%, #1e1020 100%);
}

[data-theme="dark"] .proj-bg-text {
  -webkit-text-stroke: 2px rgba(74,124,89,.45);
}

[data-theme="dark"] .proj-eyebrow {
  color: #6aaa7a;
  background: rgba(74,124,89,.12);
  border-color: rgba(106,170,122,.22);
}

[data-theme="dark"] .proj-title { color: var(--text-dark); }
[data-theme="dark"] .proj-title em { color: #e8334a; }
[data-theme="dark"] .proj-sub { color: var(--text-mid); }

/* Project cards */
[data-theme="dark"] .proj-card {
  background: rgba(10, 18, 12, 0.94);
  border-color: rgba(74,124,89,.16);
  box-shadow:
    0 4px 28px rgba(0,0,0,.45),
    inset 0 1px 0 rgba(106,170,122,.05);
}
[data-theme="dark"] .proj-card:hover {
  box-shadow:
    0 20px 56px rgba(0,0,0,.6),
    inset 0 1px 0 rgba(106,170,122,.10);
  border-color: rgba(106,170,122,.30);
}

[data-theme="dark"] .proj-card-img {
  background: none !important;
}
[data-theme="dark"] .proj-card-img::after {
  background: none !important;
  display: none !important;
}
[data-theme="dark"] .proj-card-overlay {
  background: none !important;
  display: none !important;
}
[data-theme="dark"] .proj-card::after,
[data-theme="dark"] .proj-card::before {
  background: none !important;
  display: none !important;
}

[data-theme="dark"] .proj-card-body { background: transparent; }

[data-theme="dark"] .proj-card-num {
  color: #e8334a;
  opacity: .55;
}

[data-theme="dark"] .proj-card-name { color: var(--text-dark); }
[data-theme="dark"] .proj-card-desc { color: var(--text-dark); }

[data-theme="dark"] .proj-card-tag {
  color: #6aaa7a;
  background: rgba(74,124,89,.12);
  border-color: rgba(106,170,122,.22);
}

[data-theme="dark"] .proj-link {
  color: var(--text-dark);
  background: rgba(74,124,89,.08);
  border-color: rgba(106,170,122,.18);
}
[data-theme="dark"] .proj-link:hover {
  color: var(--text-dark);
  background: rgba(74,124,89,.20);
  border-color: rgba(106,170,122,.36);
}

[data-theme="dark"] .proj-slider-wrap::before {
  background: linear-gradient(to right, #130810, transparent) !important;
}
[data-theme="dark"] .proj-slider-wrap::after {
  background: linear-gradient(to left, #1e1020, transparent) !important;
}

/* ── CONTACT ── */
[data-theme="dark"] .contact {
  background: linear-gradient(160deg, #130810 0%, #1a0d14 40%, #1e1020 100%);
}

[data-theme="dark"] .contact-bg-text {
  -webkit-text-stroke: 2px rgba(74,124,89,.45);
}

[data-theme="dark"] .contact-blob--1 {
  background: rgba(106,170,122,.06);
}
[data-theme="dark"] .contact-blob--2 {
  background: rgba(232,51,74,.05);
}

[data-theme="dark"] .contact-eyebrow {
  color: #6aaa7a;
  background: rgba(74,124,89,.12);
  border-color: rgba(106,170,122,.25);
  backdrop-filter: blur(8px);
}

[data-theme="dark"] .contact-title { color: var(--text-dark); }
[data-theme="dark"] .contact-title em { color: #e8334a; }
[data-theme="dark"] .contact-desc { color: var(--text-dark); }

/* Contact info icons */
[data-theme="dark"] .contact-info-icon {
  background: rgba(74,124,89,.12);
  border-color: rgba(106,170,122,.22);
  box-shadow: 0 4px 16px rgba(0,0,0,.3);
  color: #6aaa7a;
}
[data-theme="dark"] .contact-info-label { color: var(--text-mid); }
[data-theme="dark"] .contact-info-value { color: var(--text-dark); }
[data-theme="dark"] .contact-info-value:hover { color: #6aaa7a; }

/* Social pills */
[data-theme="dark"] .contact-social {
  color: var(--text-dark);
  background: rgba(74,124,89,.08);
  border-color: rgba(106,170,122,.18);
  box-shadow: none;
}
[data-theme="dark"] .contact-social:hover {
  background: rgba(74,124,89,.20);
  box-shadow: 0 8px 24px rgba(0,0,0,.4);
  color: #6aaa7a;
}

/* Form card */
[data-theme="dark"] .contact-form-card {
  background: rgba(10, 18, 12, 0.78);
  border-color: rgba(74,124,89,.18);
  box-shadow:
    0 8px 40px rgba(0,0,0,.5),
    inset 0 1px 0 rgba(106,170,122,.08);
}

[data-theme="dark"] .contact-label { color: var(--text-soft); }

[data-theme="dark"] .contact-input,
[data-theme="dark"] .contact-textarea {
  color: var(--text-dark);
  background: rgba(74,124,89,.06);
  border-color: rgba(106,170,122,.18);
  caret-color: #6aaa7a;
}
[data-theme="dark"] .contact-input::placeholder,
[data-theme="dark"] .contact-textarea::placeholder {
  color: var(--text-soft);
  opacity: .6;
}
[data-theme="dark"] .contact-input:focus,
[data-theme="dark"] .contact-textarea:focus {
  border-color: #6aaa7a;
  background: rgba(74,124,89,.10);
  box-shadow: 0 0 0 3px rgba(106,170,122,.14);
}

/* Success message */
[data-theme="dark"] .contact-success { color: var(--text-dark); }

/* ── CV MODAL ── */
[data-theme="dark"] .cv-modal-box {
  background: #0b130d;
  border-color: rgba(74,124,89,.20);
  box-shadow: 0 24px 80px rgba(0,0,0,.7), 0 8px 32px rgba(0,0,0,.4);
}
[data-theme="dark"] .cv-modal-header {
  background: #080e0a;
  border-bottom-color: rgba(74,124,89,.16);
}
[data-theme="dark"] .cv-modal-title { color: var(--text-dark); }
[data-theme="dark"] .cv-modal-title svg { color: #6aaa7a; }
[data-theme="dark"] .cv-download-btn {
  background: rgba(74,124,89,.12);
  border-color: rgba(106,170,122,.25);
  color: #6aaa7a;
}
[data-theme="dark"] .cv-download-btn:hover {
  background: rgba(74,124,89,.24);
}
[data-theme="dark"] .cv-close-btn {
  background: rgba(74,124,89,.08);
  border-color: rgba(106,170,122,.15);
  color: var(--text-mid);
}
[data-theme="dark"] .cv-close-btn:hover {
  background: rgba(74,124,89,.18);
  color: var(--text-dark);
}
[data-theme="dark"] .cv-modal-body { background: #070d08; }
[data-theme="dark"] .cv-fallback { color: var(--text-mid); }

/* ── FOOTER ── */
[data-theme="dark"] .site-footer {
  background: #050a06;
}
[data-theme="dark"] .site-footer::before {
  background: radial-gradient(ellipse at center, rgba(106,170,122,.10) 0%, transparent 70%);
}
[data-theme="dark"] .site-footer::after {
  background: radial-gradient(ellipse at center, rgba(232,51,74,.05) 0%, transparent 70%);
}
[data-theme="dark"] .footer-glow-line {
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(74,124,89,.35) 20%,
    rgba(106,170,122,.65) 50%,
    rgba(232,51,74,.30) 80%,
    transparent 100%);
  box-shadow: 0 0 18px 2px rgba(106,170,122,.20);
}

[data-theme="dark"] .footer-logo { color: #fff; }
[data-theme="dark"] .footer-logo em { color: #e8334a; }
[data-theme="dark"] .footer-tagline { color: rgba(255,255,255,.4); }
[data-theme="dark"] .footer-tagline em { color: rgba(106,170,122,.85); }
[data-theme="dark"] .footer-status {
  color: rgba(255,255,255,.45);
  border-color: rgba(74,124,89,.22);
}
[data-theme="dark"] .footer-nav-label { color: #6aaa7a; opacity: .80; }
[data-theme="dark"] .footer-nav ul li a { color: rgba(255,255,255,.4); }
[data-theme="dark"] .footer-nav ul li a:hover { color: #fff; }
[data-theme="dark"] .footer-nav ul li a::before { color: #6aaa7a; }
[data-theme="dark"] .footer-social-pill {
  color: rgba(255,255,255,.4);
  border-color: rgba(255,255,255,.06);
  background: rgba(255,255,255,.03);
}
[data-theme="dark"] .footer-social-pill:hover {
  background: rgba(74,124,89,.16);
  border-color: rgba(106,170,122,.35);
  color: #fff;
}
[data-theme="dark"] .footer-divider-text { color: #6aaa7a; }
[data-theme="dark"] .footer-divider::before,
[data-theme="dark"] .footer-divider::after {
  background: linear-gradient(90deg, transparent, rgba(106,170,122,.45), transparent);
}
[data-theme="dark"] .footer-copy { color: rgba(255,255,255,.22); }
[data-theme="dark"] .footer-copy em { color: rgba(232,51,74,.55); }
[data-theme="dark"] .footer-made { color: rgba(255,255,255,.18); }
[data-theme="dark"] .footer-heart { color: #e8334a; }

/* ── SCROLL TO TOP ── */
[data-theme="dark"] .scroll-top {
  background: linear-gradient(135deg, #e8334a, #2d5a3d);
  box-shadow: 0 6px 24px rgba(0,0,0,.5), inset 0 1px 0 rgba(255,255,255,.15);
}
[data-theme="dark"] .scroll-top:hover {
  box-shadow: 0 12px 32px rgba(0,0,0,.6);
}

/* ── Smooth theme transition ── */
body,
.navbar, .mobile-menu,
.hero, .about, .skills, .projects, .contact,
.skill-card, .proj-card, .contact-form-card, .contact-social,
.site-footer, .about-polaroid,
.contact-input, .contact-textarea,
.hero-search, .skills-stats, .cv-modal-box,
.cv-modal-header, .cv-modal-body,
.hero-photo-wrap::after,
.nav-link, .mob-link,
.hamburger,
.skills-sticker {
  transition-property: background, background-color, border-color, color, box-shadow, filter;
  transition-duration: 0.35s;
  transition-timing-function: cubic-bezier(0.16, 1, 0.3, 1);
}

/* ============================================================
   DARK MODE — Certificates — Strawberry Matcha
   ============================================================ */
[data-theme="dark"] .certificates {
  background: linear-gradient(160deg, #130810 0%, #1a0d14 40%, #1e1020 100%);
}
[data-theme="dark"] .cert-bg-text {
  -webkit-text-stroke: 2px rgba(74,124,89,.45);
}
[data-theme="dark"] .cert-title { color: var(--text-dark); }
[data-theme="dark"] .cert-title em { color: #e8334a; }
[data-theme="dark"] .cert-sub { color: var(--text-mid); }
[data-theme="dark"] .cert-eyebrow {
  color: #6aaa7a;
  background: rgba(74,124,89,.12);
  border-color: rgba(106,170,122,.22);
}

[data-theme="dark"] .cert-frame {
  background: linear-gradient(145deg, #0f1a11 0%, #0b130d 50%, #0a100b 100%);
  border-color: rgba(74,124,89,.30);
  box-shadow:
    0 8px 40px rgba(0,0,0,.45),
    0 2px 8px rgba(0,0,0,.3),
    inset 0 1px 0 rgba(106,170,122,.08);
}
[data-theme="dark"] .cert-card:hover .cert-frame {
  box-shadow: 0 20px 60px rgba(0,0,0,.6), 0 4px 16px rgba(0,0,0,.3);
  border-color: rgba(106,170,122,.50);
}
[data-theme="dark"] .cert-frame::before { border-color: rgba(106,170,122,.18); }
[data-theme="dark"] .cert-frame::after  { border-color: rgba(106,170,122,.09); }
[data-theme="dark"] .cert-frame-corner::before,
[data-theme="dark"] .cert-frame-corner::after { background: #6aaa7a; }
[data-theme="dark"] .cert-frame-inner {
  background: radial-gradient(ellipse at 50% 0%, rgba(15,35,20,.6) 0%, transparent 70%);
}
[data-theme="dark"] .cert-img {
  background: linear-gradient(145deg, #0f1a11, #0a100b);
}
[data-theme="dark"] .cert-img-overlay {
  background: rgba(45,90,61,.50);
}
[data-theme="dark"] .cert-card-tag {
  color: #6aaa7a;
  background: rgba(74,124,89,.12);
  border-color: rgba(106,170,122,.22);
}
[data-theme="dark"] .cert-card-hint { color: var(--text-mid); }

[data-theme="dark"] .cert-arrow {
  background: rgba(10,18,12,.90);
  border-color: rgba(106,170,122,.28);
  color: #6aaa7a;
  box-shadow: 0 4px 16px rgba(0,0,0,.4);
}
[data-theme="dark"] .cert-arrow:hover {
  background: rgba(15,26,17,.96);
}
[data-theme="dark"] .cert-dot { background: rgba(74,124,89,.22); }
[data-theme="dark"] .cert-dot.active { background: #6aaa7a; }

/* Dark modal */
[data-theme="dark"] .cert-modal-backdrop {
  background: rgba(3, 7, 4, 0.88);
}
[data-theme="dark"] .cert-modal-box {
  background: #0b130d;
  border-color: rgba(106,170,122,.32);
  box-shadow: 0 32px 80px rgba(0,0,0,.7), 0 8px 32px rgba(0,0,0,.4);
}
[data-theme="dark"] .cert-modal-frame::before { border-color: rgba(106,170,122,.18); }
[data-theme="dark"] .cert-modal-frame::after  { border-color: rgba(106,170,122,.09); }
[data-theme="dark"] .cert-modal-corner::before,
[data-theme="dark"] .cert-modal-corner::after { background: #6aaa7a; }
[data-theme="dark"] .cert-modal-img-wrap {
  background: linear-gradient(145deg, #0f1a11, #0a100b);
}
[data-theme="dark"] .cert-modal-caption-tag {
  color: #6aaa7a;
  background: rgba(74,124,89,.12);
  border-color: rgba(106,170,122,.22);
}
[data-theme="dark"] .cert-modal-caption-title { color: var(--text-dark); }
[data-theme="dark"] .cert-modal-close {
  background: rgba(74,124,89,.10);
  border-color: rgba(106,170,122,.22);
  color: var(--text-mid);
}
[data-theme="dark"] .cert-modal-close:hover {
  background: rgba(74,124,89,.22);
  color: #6aaa7a;
}

[data-theme="dark"] .proj-sticker {
  filter:
    drop-shadow(0 4px 12px rgba(0,0,0,.45))
    brightness(0.82)
    saturate(0.85);
}
[data-theme="dark"] .cert-sticker {
  filter:
    drop-shadow(0 4px 12px rgba(0,0,0,.45))
    brightness(0.82)
    saturate(0.85);
}