/* Reset y Variables */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
  }
  
  :root {
    --primary-color: #2563eb;
    --secondary-color: #1e40af;
    --accent-color: #3b82f6;
    --text-primary: #1f2937;
    --text-secondary: #6b7280;
    --bg-primary: #ffffff;
    --bg-secondary: #f8fafc;
    --bg-card: #ffffff;
    --border-color: #e5e7eb;
    --shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    --shadow-lg: 0 4px 12px rgba(0, 0, 0, 0.15);
    --transition: all 0.3s ease;
  
    /* Tech Colors */
    --php-color: #777bb4;
    --java-color: #ed8b00;
    --js-color: #f7df1e;
    --vbscript-color: #086cbd;
    --batch-color: #086cbd;
    --csharp-color: #239120;
    --html-color: #e4552e;
    --css-color: #1476bc;
    --primefaces-color: #d1d9dd;
    --primereact-color: #0bc5e9;
    --cplusplus-color: #084a86;
    --ampleadmin-color: #ff7676;
    --freya-color: #ff7676;
    --bootstrap-color: #5a437f;
    --tamagui-color: #49df97;
    --android-color: #9ac243;
    --postgres-color: #396c94;
    --http-color: #08609e;
    --postman-color: #ff713d;
    --gitlab-color: #e2492f;
    --windows-color: #00abf0;
    --kalilinux-color: #267dfa;
    --parrot-color: #18d8e5;
    --ubuntu-color: #f47828;
    --ubuntuserver-color: #f47828;
    --truenas-color: #31beec;
    --cpanel-color: #f76f25;
    --webmin-color: #0d5381;
    --vb-color: #945db7;
    --aspnet-color: #512bd4;
    --python-color: #3776ab;
    --sql-color: #336791;
    --laravel-color: #ff2d20;
    --codeigniter-color: #ee4323;
    --django-color: #092e20;
    --react-color: #61dafb;
    --reactnative-color: #61dafb;
    --jsp-color: #ed8b00;
    --jsf-color: #4caf50;
    --winforms-color: #0078d4;
    --tkinter-color: #3776ab;
    --mariadb-color: #003545;
    --websocket-color: #010101;
    --vba-color: #217346;
    --kotlin-color: #7f52ff;
    --xamarin-color: #3498db;
  }
  
  /* Dark Theme Variables */
  [data-theme="dark"] {
    --text-primary: #f9fafb;
    --text-secondary: #d1d5db;
    --bg-primary: #111827;
    --bg-secondary: #1f2937;
    --bg-card: #1f2937;
    --border-color: #374151;
    --shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
    --shadow-lg: 0 4px 12px rgba(0, 0, 0, 0.4);
  }
  
  body {
    font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
    line-height: 1.4;
    color: var(--text-primary);
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    height: 100vh;
    max-height: 100vh;
    overflow: hidden;
    /* zoom: 0.70; */
    transition: var(--transition);
  }
  
  [data-theme="dark"] body {
    background: linear-gradient(135deg, #1e3a8a 0%, #3730a3 100%);
  }
  
  .portfolio-container {
    height: 100vh;
    max-height: 100vh;
    display: flex;
    flex-direction: column;
    /* max-width: 1800px; */
    max-width: 80vw;
    margin: 0 auto;
    padding: 10px;
    gap: 10px;
  }
  
  /* Header */
  .header {
    background: var(--bg-card);
    border-radius: 12px;
    box-shadow: var(--shadow-lg);
    padding: 15px 25px;
    flex-shrink: 0;
    transition: var(--transition);
  }
  
  .header-content {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  div a {
    text-decoration: none;
    color: inherit;
  }
  
  .profile-section {
    display: flex;
    align-items: center;
    gap: 20px;
  }
  
  .profile-img {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    object-fit: cover;
    border: 3px solid var(--primary-color);
  }
  
  .profile-info h1 {
    font-size: calc(0.05vh + 1.8rem);
    font-weight: 700;
    color: var(--text-primary);
    margin-bottom: 5px;
  }
  
  .profile-info p {
    color: var(--text-secondary);
    font-size: calc(0.05vh + 1.1rem);
    margin-bottom: 10px;
  }
  
  .contact-quick {
    display: flex;
    gap: 20px;
    font-size: calc(0.05vh + 0.9rem);
    color: var(--text-secondary);
  }
  
  .contact-quick span {
    display: flex;
    align-items: center;
    gap: 5px;
  }
  
  .contact-quick i {
    color: var(--primary-color);
  }
  
  /* Theme Toggle */
  .theme-toggle {
    display: flex;
    align-items: center;
    margin-right: 15px;
  }
  
  .theme-btn {
    background: var(--bg-secondary);
    border: 2px solid var(--border-color);
    border-radius: 50%;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: var(--transition);
    color: var(--text-primary);
  }
  
  .theme-btn:hover {
    background: var(--primary-color);
    color: white;
    transform: scale(1.1);
  }
  
  .social-links {
    display: flex;
    gap: 10px;
    align-items: center;
  }
  
  .social-btn {
    display: flex;
    align-items: center;
    gap: 5px;
    padding: 8px 12px;
    background: var(--primary-color);
    color: white;
    text-decoration: none;
    border-radius: 6px;
    font-size: calc(0.05vh + 0.9rem);
    transition: var(--transition);
  }
  
  .social-btn:hover {
    background: var(--secondary-color);
    transform: translateY(-2px);
  }
  
  /* Main Content */
  .main-content {
    display: grid;
    grid-template-columns: 1fr 1.5fr 1fr;
    gap: 15px;
    flex: 1;
    overflow: auto;
    height: 100vh;
    max-height: 100vh;
  }
  
  /* Cards Base */
  .about-card,
  .experience-card,
  .technologies-card,
  .contact-card,
  .projects-card,
  .certifications-card {
    background: var(--bg-card);
    border-radius: 12px;
    padding: 20px;
    box-shadow: var(--shadow-lg);
    overflow-y: auto;
    transition: var(--transition);
  }
  
  .about-card h2,
  .experience-card h2,
  .technologies-card h2,
  .contact-card h2,
  .projects-card h2,
  .certifications-card h2 {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: calc(0.05vh + 1.3rem);
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 15px;
    padding-bottom: 10px;
    border-bottom: 2px solid var(--border-color);
  }
  
  .about-card h2 i,
  .experience-card h2 i,
  .technologies-card h2 i,
  .contact-card h2 i,
  .projects-card h2 i,
  .certifications-card h2 i {
    color: var(--primary-color);
  }
  
  /* Left Column */
  .left-column {
    display: flex;
    flex-direction: column;
    gap: 15px;
  }

  @media (min-width: 1925px) and (max-width: 2560px){

    .about-card {
      max-height: 40vh;
      text-align: justify;
    }
  
    .experience-card {
      max-height: 63vh;
    }
  
    .technologies-card {
      max-height: 52vh;
    }
    
    .contact-card {
      max-height: 51vh;
    }
  
    .projects-card {
      max-height: 57vh;
    }
  
    .certifications-card {
      max-height: 37vh;
    } 

  }

  @media (max-width: 1920px) {

    .about-card {
      max-height: 40vh;
      text-align: justify;
    }
  
    .experience-card {
      max-height: 60vh;
    }
  
    .technologies-card {
      max-height: 52vh;
    }
    
    .contact-card {
      max-height: 51vh;
    }
  
    .projects-card {
      max-height: 60vh;
    }
  
    .certifications-card {
      max-height: 40vh;
    } 

  }

  @media (min-width: 3400px) {

    .about-card {
      flex: 0.4;
      text-align: justify;
    }
  
    .experience-card {
      flex: 0.6;
    }
  
    .technologies-card {
      flex: 0.7;
    }
    
    .contact-card {
      flex: 0.3;
    }
  
    .projects-card {
      flex: 0.6;
    }
  
    .certifications-card {
      flex: 0.4;
    } 

  }
  
  .about-card p {
    color: var(--text-secondary);
    line-height: 1.6;
    margin-bottom: 15px;
    font-size: calc(0.05vh + 0.95rem);
  }
  
  .stats-mini {
    display: flex;
    justify-content: space-around;
    margin-top: 15px;
  }
  
  .stat-item {
    text-align: center;
  }
  
  .stat-item strong {
    display: block;
    font-size: calc(0.05vh + 1.5rem);
    color: var(--primary-color);
    font-weight: 700;
  }
  
  .stat-item span {
    font-size: calc(0.05vh + 0.8rem);
    color: var(--text-secondary);
  }
  
  .experience-item {
    margin-bottom: 20px;
  }
  
  .experience-item h3 {
    font-size: calc(0.05vh + 1.1rem);
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 5px;
  }
  
  .company {
    color: var(--text-secondary);
    font-size: calc(0.05vh + 0.9rem);
    margin-bottom: 8px;
  }
  
  .experience-item ul {
    list-style: none;
    padding-left: 0;
  }
  
  .experience-item li {
    font-size: calc(0.05vh + 0.85rem);
    color: var(--text-secondary);
    margin-bottom: 3px;
    padding-left: 15px;
    position: relative;
  }
  
  .experience-item li::before {
    content: "▸";
    position: absolute;
    left: 0;
    color: var(--primary-color);
  }
  
  /* Center Column */
  .center-column {
    display: flex;
    flex-direction: column;
    gap: 15px;
  }
  
  /* Tech Categories */
  .tech-category {
    margin-bottom: 15px;
  }
  
  .tech-category h3 {
    font-size: calc(0.05vh + 0.9rem);
    margin-bottom: 8px;
    padding: 6px 10px;
    background: var(--bg-secondary);
    border-radius: 6px;
    border-left: 4px solid var(--primary-color);
  }
  
  .tech-grid-small {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 6px;
  }
  
  .tech-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 8px 6px;
    border-radius: 8px;
    transition: var(--transition);
    cursor: pointer;
    position: relative;
  }

  .img-vbscript{
    width: 25px;
    height: 30px;
  }

  .img-batch{
    width: 40px;
    height: 30px;
  }

  .img-tamagui{
    width: 25px;
    height: 25px;
  }
  
  /* Tech Item Backgrounds */
  .tech-item.php {
    background: rgba(119, 123, 180, 0.1);
  }
  .tech-item.java {
    background: rgba(237, 139, 0, 0.1);
  }
  .tech-item.javascript {
    background: rgba(247, 223, 30, 0.1);
  }
  .tech-item.csharp {
    background: rgba(35, 145, 32, 0.1);
  }
  .tech-item.cplusplus {
    background: rgba(106,157,211, 0.1);
  }
  .tech-item.vbscript {
    background: rgba(8,108,189, 0.1);
  }
  .tech-item.batch {
    background: rgba(8,108,189, 0.1);
  }
  .tech-item.primefaces {
    background: rgba(209, 217, 221, 0.1);
  }
  .tech-item.primereact {
    background: rgba(11, 197, 233, 0.1);
  }
  .tech-item.html {
    background: rgba(240,105,49, 0.1);
  }
  .tech-item.css {
    background: rgba(49, 177, 214, 0.1);
  }
  .tech-item.ampleadmin {
    background: rgba(255, 118, 118, 0.1);
  }
  .tech-item.freya {
    background: rgba(255, 118, 118, 0.1);
  }
  .tech-item.bootstrap {
    background: rgba(120, 24, 247, 0.1);
  }
  .tech-item.tamagui {
    background: rgba(255, 255, 20, 0.1);
  }
  .tech-item.android {
    background: rgba(154, 194, 67, 0.1);
  }
  .tech-item.postgres {
    background: rgba(57, 108, 148, 0.1);
  }
  .tech-item.http {
    background: rgba(8,96,158, 0.1);
  }
  .tech-item.postman {
    background: rgba(255, 113, 61, 0.1);
  }
  .tech-item.gitlab {
    background: rgba(255, 161, 34, 0.1);
  }
  .tech-item.windows {
    background: rgba(8, 174, 240, 0.1);
  }
.tech-item.kalilinux {
    background: rgba(20, 63, 133, 0.1);
  }
.tech-item.parrot {
    background: rgba(23, 211, 224, 0.1);
  }
.tech-item.ubuntu {
    background: rgba(117, 38, 100, 0.1);
  }
.tech-item.ubuntuserver {
    background: rgba(117, 38, 100, 0.1);
  }
.tech-item.truenas {
    background: rgba(0, 149, 213, 0.1);
  }
.tech-item.cpanel {
    background: rgba(16, 33, 68, 0.1);
  }
.tech-item.webmin {
    background: rgba(13, 83, 129, 0.1);
  }
  .tech-item.vb {
    background: rgba(148, 93, 183, 0.1);
  }
  .tech-item.aspnet {
    background: rgba(81, 43, 212, 0.1);
  }
  .tech-item.python {
    background: rgba(55, 118, 171, 0.1);
  }
  .tech-item.sql {
    background: rgba(51, 103, 145, 0.1);
  }
  .tech-item.laravel {
    background: rgba(255, 45, 32, 0.1);
  }
  .tech-item.codeigniter {
    background: rgba(238, 67, 35, 0.1);
  }
  .tech-item.django {
    background: rgba(9, 46, 32, 0.1);
  }
  .tech-item.react {
    background: rgba(97, 218, 251, 0.1);
  }
  .tech-item.reactnative {
    background: rgba(97, 218, 251, 0.1);
  }
  .tech-item.jsp {
    background: rgba(237, 139, 0, 0.1);
  }
  .tech-item.jsf {
    background: rgba(76, 175, 80, 0.1);
  }
  .tech-item.winforms {
    background: rgba(0, 120, 212, 0.1);
  }
  .tech-item.tkinter {
    background: rgba(55, 118, 171, 0.1);
  }
  .tech-item.mariadb {
    background: rgba(0, 53, 69, 0.1);
  }
  .tech-item.websocket {
    background: rgba(1, 1, 1, 0.1);
  }
  .tech-item.vba {
    background: rgba(33, 115, 70, 0.1);
  }
  .tech-item.kotlin {
    background: rgba(127, 82, 255, 0.1);
  }
  .tech-item.xamarin {
    background: rgba(52, 152, 219, 0.1);
  }
  
  [data-theme="dark"] .tech-item.websocket {
    background: rgba(255, 255, 255, 0.1);
  }
  
  .tech-item:hover {
    transform: translateY(-3px);
    box-shadow: var(--shadow-lg);
  }
  
  .tech-item i {
    font-size: calc(0.05vh + 1.3rem);
    margin-bottom: 4px;
  }
  
  /* Tech Item Icon Colors */
  .tech-item.php i {
    color: var(--php-color);
  }
  .tech-item.java i {
    color: var(--java-color);
  }
  .tech-item.javascript i {
    color: var(--js-color);
    background: #333;
    border-radius: 4px;
    padding: 2px;
  }
  .tech-item.csharp svg {
    color: var(--csharp-color);
  }
  .tech-item.cplusplus svg {
    color: var(--cplusplus-color);
  }
  .tech-item.cplusplus i {
    color: var(--vbscript-color);
  }
  .tech-item.cplusplus i {
    color: var(--batch-color);
  }
  .tech-item.primereact i {
    color: var(--primereact-color);
  }
  .tech-item.primefaces i {
    color: var(--primefaces-color);
  }
  .tech-item.html i {
    color: var(--html-color);
  }
  .tech-item.css i {
    color: var(--css-color);
  }
  .tech-item.ampleadmin i {
    color: var(--ampleadmin-color);
  }
  .tech-item.freya i {
    color: var(--freya-color);
  }
  .tech-item.bootstrap i {
    color: var(--bootstrap-color);
  }
  .tech-item.tamagui i {
    color: var(--tamagui-color);
  }
  .tech-item.android i {
    color: var(--android-color);
  }
  .tech-item.postgres svg {
    color: var(--postgres-color);
  }
  .tech-item.http i {
    color: var(--http-color);
  }
  .tech-item.postman i {
    color: var(--postman-color);
  }
  .tech-item.gitlab i {
    color: var(--gitlab-color);
  }
  .tech-item.windows i {
    color: var(--windows-color);
  }
.tech-item.kalilinux i {
    color: var(--kalilinux-color);
  }
.tech-item.parrot i {
    color: var(--parrot-color);
  }
.tech-item.ubuntu i {
    color: var(--ubuntu-color);
  }
.tech-item.ubuntuserver i {
    color: var(--ubuntuserver-color);
  }
.tech-item.truenas i {
    color: var(--truenas-color);
  }
.tech-item.cpanel i {
    color: var(--cpanel-color);
  }
.tech-item.webmin i {
    color: var(--webmin-color);
  }
  .tech-item.vb svg {
    color: var(--vb-color);
  }
  .tech-item.aspnet i {
    color: var(--aspnet-color);
  }
  .tech-item.python i {
    color: var(--python-color);
  }
  .tech-item.sql i {
    color: var(--sql-color);
  }
  .tech-item.laravel i {
    color: var(--laravel-color);
  }
  .tech-item.codeigniter i {
    color: var(--codeigniter-color);
  }
  .tech-item.django i {
    color: var(--django-color);
  }
  .tech-item.react i {
    color: var(--react-color);
  }
  .tech-item.reactnative i {
    color: var(--reactnative-color);
  }
  .tech-item.jsp i {
    color: var(--jsp-color);
  }
  .tech-item.jsf i {
    color: var(--jsf-color);
  }
  .tech-item.winforms i {
    color: var(--winforms-color);
  }
  .tech-item.tkinter i {
    color: var(--tkinter-color);
  }
  .tech-item.mariadb i {
    color: var(--mariadb-color);
  }
  .tech-item.mariadb svg {
    color: #ea7f08;
  }
  .tech-item.websocket i {
    color: var(--websocket-color);
  }
  .tech-item.vba i {
    color: var(--vba-color);
  }
  .tech-item.kotlin i {
    color: var(--kotlin-color);
  }
  .tech-item.xamarin i {
    color: var(--xamarin-color);
  }
  
  [data-theme="dark"] .tech-item.websocket i {
    color: #ffffff;
  }
  [data-theme="dark"] .tech-item.django i {
    color: #44b78b;
  }
  [data-theme="dark"] .tech-item.mariadb i {
    color: #c0765a;
  }
  
  .tech-item h4 {
    font-size: calc(0.05vh + 0.7rem);
    font-weight: 600;
    margin-bottom: 4px;
    text-align: center;
    color: var(--text-primary);
  }
  
  .skill-level {
    width: 100%;
    height: 3px;
    background: var(--border-color);
    border-radius: 2px;
    margin-bottom: 4px;
    overflow: hidden;
  }
  
  .skill-bar {
    height: 100%;
    border-radius: 2px;
    transition: width 2s ease;
  }
  
  /* Skill Bar Colors */
  .tech-item.php .skill-bar {
    background: var(--php-color);
  }
  .tech-item.java .skill-bar {
    background: var(--java-color);
  }
  .tech-item.javascript .skill-bar {
    background: #333;
  }
  .tech-item.csharp .skill-bar {
    background: var(--csharp-color);
  }
  .tech-item.cplusplus .skill-bar {
    background: var(--cplusplus-color);
  }
  .tech-item.vbscript .skill-bar {
    background: var(--cplusplus-color);
  }
  .tech-item.batch .skill-bar {
    background: var(--cplusplus-color);
  }
  .tech-item.primereact .skill-bar {
    background: var(--primereact-color);
  }
  .tech-item.primefaces .skill-bar {
    background: var(--primefaces-color);
  }
  .tech-item.html .skill-bar {
    background: var(--html-color);
  }
  .tech-item.css .skill-bar {
    background: var(--css-color);
  }
  .tech-item.ampleadmin .skill-bar {
    background: var(--ampleadmin-color);
  }
  .tech-item.freya .skill-bar {
    background: var(--freya-color);
  }
  .tech-item.bootstrap .skill-bar {
    background: var(--bootstrap-color);
  }
  .tech-item.tamagui .skill-bar {
    background: var(--tamagui-color);
  }
  .tech-item.android .skill-bar {
    background: var(--android-color);
  }
  .tech-item.postgres .skill-bar {
    background: var(--postgres-color);
  }
  .tech-item.http .skill-bar {
    background: var(--http-color);
  }
  .tech-item.postman .skill-bar {
    background: var(--postman-color);
  }
  .tech-item.gitlab .skill-bar {
    background: var(--gitlab-color);
  }
  .tech-item.windows .skill-bar {
    background: var(--windows-color);
  }
.tech-item.kalilinux .skill-bar {
    background: var(--kalilinux-color);
  }
.tech-item.parrot .skill-bar {
    background: var(--parrot-color);
  }
.tech-item.ubuntu .skill-bar {
    background: var(--ubuntu-color);
  }
.tech-item.ubuntuserver .skill-bar {
    background: var(--ubuntuserver-color);
  }
.tech-item.truenas .skill-bar {
    background: var(--truenas-color);
  }
.tech-item.cpanel .skill-bar {
    background: var(--cpanel-color);
  }
.tech-item.webmin .skill-bar {
    background: var(--webmin-color);
  }
  .tech-item.vb .skill-bar {
    background: var(--vb-color);
  }
  .tech-item.aspnet .skill-bar {
    background: var(--aspnet-color);
  }
  .tech-item.python .skill-bar {
    background: var(--python-color);
  }
  .tech-item.sql .skill-bar {
    background: var(--sql-color);
  }
  .tech-item.laravel .skill-bar {
    background: var(--laravel-color);
  }
  .tech-item.codeigniter .skill-bar {
    background: var(--codeigniter-color);
  }
  .tech-item.django .skill-bar {
    background: var(--django-color);
  }
  .tech-item.react .skill-bar {
    background: var(--react-color);
  }
  .tech-item.reactnative .skill-bar {
    background: var(--reactnative-color);
  }
  .tech-item.jsp .skill-bar {
    background: var(--jsp-color);
  }
  .tech-item.jsf .skill-bar {
    background: var(--jsf-color);
  }
  .tech-item.winforms .skill-bar {
    background: var(--winforms-color);
  }
  .tech-item.tkinter .skill-bar {
    background: var(--tkinter-color);
  }
  .tech-item.mariadb .skill-bar {
    background: var(--mariadb-color);
  }
  .tech-item.websocket .skill-bar {
    background: var(--websocket-color);
  }
  .tech-item.vba .skill-bar {
    background: var(--vba-color);
  }
  .tech-item.kotlin .skill-bar {
    background: var(--kotlin-color);
  }
  .tech-item.xamarin .skill-bar {
    background: var(--xamarin-color);
  }
  
  [data-theme="dark"] .tech-item.websocket .skill-bar {
    background: #ffffff;
  }
  [data-theme="dark"] .tech-item.django .skill-bar {
    background: #44b78b;
  }
  [data-theme="dark"] .tech-item.mariadb .skill-bar {
    background: #c0765a;
  }
  
  .tech-item span {
    font-size: calc(0.05vh + 0.6rem);
    color: var(--text-secondary);
    font-weight: 500;
  }
  
  .contact-form-mini {
    display: flex;
    flex-direction: column;
    gap: 12px;
  }
  
  .form-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
  }
  
  .contact-form-mini input,
  .contact-form-mini textarea {
    padding: 10px 14px;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: calc(0.05vh + 0.95rem);
    transition: var(--transition);
    font-family: inherit;
    background: var(--bg-primary);
    color: var(--text-primary);
  }
  
  .contact-form-mini input:focus,
  .contact-form-mini textarea:focus {
    outline: none;
    border-color: var(--primary-color);
  }
  
  .contact-form-mini textarea {
    resize: vertical;
    min-height: 80px;
  }
  
  .btn-send {
    padding: 12px 18px;
    background: var(--primary-color);
    color: white;
    border: none;
    border-radius: 6px;
    font-size: calc(0.05vh + 1rem);
    font-weight: 600;
    cursor: pointer;
    transition: var(--transition);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 5px;
  }
  
  .btn-send:hover {
    background: var(--secondary-color);
    transform: translateY(-2px);
  }
  
  /* Agregar estilos para la información adicional de contacto */
  .contact-info-mini {
    display: flex;
    justify-content: space-around;
    margin-top: 15px;
    padding-top: 15px;
    border-top: 1px solid var(--border-color);
  }
  
  .contact-method {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5px;
    font-size: calc(0.05vh + 0.8rem);
    color: var(--text-secondary);
  }
  
  .contact-method i {
    color: var(--primary-color);
    font-size: calc(0.05vh + 1.2rem);
  }
  
  /* Right Column */
  .right-column {
    display: flex;
    flex-direction: column;
    gap: 15px;
  }
  
  .projects-list {
    display: flex;
    flex-direction: column;
    gap: 15px;
  }
  
  .project-mini {
    padding: 15px;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    transition: var(--transition);
  }
  
  .project-mini:hover {
    border-color: var(--primary-color);
    box-shadow: var(--shadow);
  }
  
  .project-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 8px;
  }
  
  .project-header h3 {
    font-size: calc(0.05vh + 1rem);
    font-weight: 600;
    color: var(--text-primary);
  }
  
  .project-links {
    display: flex;
    gap: 8px;
  }
  
  .project-links a {
    color: var(--text-secondary);
    font-size: calc(0.05vh + 0.9rem);
    transition: var(--transition);
  }
  
  .project-links a:hover {
    color: var(--primary-color);
  }
  
  .project-mini p {
    font-size: calc(0.05vh + 0.85rem);
    color: var(--text-secondary);
    line-height: 1.5;
    margin-bottom: 10px;
  }
  
  .project-tech {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
  }
  
  .tech-tag {
    padding: 2px 8px;
    border-radius: 12px;
    font-size: calc(0.05vh + 0.7rem);
    font-weight: 500;
    color: white;
  }
  
  /* Tech Tag Colors */
  .tech-tag.php {
    background: var(--php-color);
  }
  .tech-tag.java {
    background: var(--java-color);
  }
  .tech-tag.javascript {
    background: #333;
  }
  .tech-tag.csharp {
    background: var(--csharp-color);
  }
  .tech-tag.cplusplus {
    background: var(--cplusplus-color);
  }
  .tech-tag.vbscript {
    background: var(--cplusplus-color);
  }
  .tech-tag.batch {
    background: var(--cplusplus-color);
  }
  .tech-tag.primereact {
    background: var(--primereact-color);
    color: #000;
  }
  .tech-tag.primefaces {
    background: var(--primefaces-color);
    color: #000;
  }
  .tech-tag.html {
    background: var(--html-color);
  }
  .tech-tag.css {
    background: var(--css-color);
  }
  .tech-tag.ampleadmin {
    background: var(--ampleadmin-color);
    color: #333333;
  }
  .tech-tag.freya {
    background: var(--freya-color);
    color: #000;
  }
  .tech-tag.tamagui {
    background: var(--tamagui-color);
  }
  .tech-tag.bootstrap {
    background: var(--bootstrap-color);
  }
  .tech-tag.android {
    background: var(--android-color);
  }
  .tech-tag.postgres {
    background: var(--postgres-color);
  }
  .tech-tag.http {
    background: var(--http-color);
  }
  .tech-tag.postman {
    background: var(--postman-color);
  }
  .tech-tag.gitlab {
    background: var(--gitlab-color);
  }
  .tech-tag.windows {
    background: var(--windows-color);
  }
.tech-tag.kalilinux {
    background: var(--kalilinux-color);
  }
.tech-tag.parrot {
    background: var(--parrot-color);
  }
.tech-tag.ubuntu {
    background: var(--ubuntu-color);
  }
.tech-tag.ubuntuserver {
    background: var(--ubuntuserver-color);
  }
.tech-tag.truenas {
    background: var(--truenas-color);
  }
.tech-tag.cpanel {
    background: var(--cpanel-color);
  }
.tech-tag.webmin {
    background: var(--webmin-color);
  }
  .tech-tag.vb {
    background: var(--vb-color);
  }
  .tech-tag.aspnet {
    background: var(--aspnet-color);
  }
  .tech-tag.python {
    background: var(--python-color);
  }
  .tech-tag.sql {
    background: var(--sql-color);
  }
  .tech-tag.laravel {
    background: var(--laravel-color);
  }
  .tech-tag.codeigniter {
    background: var(--codeigniter-color);
  }
  .tech-tag.django {
    background: var(--django-color);
  }
  .tech-tag.react {
    background: var(--react-color);
    color: #000;
  }
  .tech-tag.reactnative {
    background: var(--reactnative-color);
    color: #000;
  }
  .tech-tag.jsp {
    background: var(--jsp-color);
  }
  .tech-tag.jsf {
    background: var(--jsf-color);
  }
  .tech-tag.winforms {
    background: var(--winforms-color);
  }
  .tech-tag.tkinter {
    background: var(--tkinter-color);
  }
  .tech-tag.mariadb {
    background: var(--mariadb-color);
  }
  .tech-tag.websocket {
    background: var(--websocket-color);
  }
  .tech-tag.vba {
    background: var(--vba-color);
  }
  .tech-tag.kotlin {
    background: var(--kotlin-color);
  }
  .tech-tag.xamarin {
    background: var(--xamarin-color);
  }
  
  [data-theme="dark"] .tech-tag.websocket {
    background: #ffffff;
    color: #000;
  }
  [data-theme="dark"] .tech-tag.django {
    background: #44b78b;
  }
  [data-theme="dark"] .tech-tag.mariadb {
    background: #c0765a;
  }
  
  .cert-list {
    display: flex;
    flex-direction: column;
    gap: 10px;
  }
  
  .cert-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 12px;
    background: var(--bg-secondary);
    border-radius: 6px;
    font-size: calc(0.05vh + 0.9rem);
    transition: var(--transition);
  }
  
  .cert-item i {
    color: var(--primary-color);
    font-size: calc(0.05vh + 1.2rem);
  }
  
  /* Responsive Design Mejorado */
  @media (max-width: 1200px) {
    .main-content {
      grid-template-columns: 1fr 1fr;
    }
  
    .right-column {
      grid-column: 1 / -1;
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 15px;
    }
  
    .tech-grid-small {
      grid-template-columns: repeat(4, 1fr);
    }
  }
  
  /* Tablet y móvil - Permitir scroll */
  @media (max-width: 768px) {
    body {
      overflow: auto; /* Permitir scroll en móviles */
      height: auto;
      min-height: 100vh;
    }
  
    .portfolio-container {
      height: auto;
      min-height: 100vh;
      padding: 10px;
      gap: 15px;
    }
  
    .header-content {
      flex-direction: column;
      gap: 15px;
      text-align: center;
    }
  
    .profile-section {
      flex-direction: column;
      gap: 15px;
    }
  
    .contact-quick {
      flex-direction: column;
      gap: 8px;
      align-items: center;
    }
  
    .main-content {
      grid-template-columns: 1fr;
      gap: 15px;
      overflow: visible;
    }
  
    .about-card,
    .experience-card,
    .technologies-card,
    .contact-card,
    .projects-card,
    .certifications-card {
      overflow-y: auto;
      height: auto;
    }
  
    .tech-grid-small {
      grid-template-columns: repeat(3, 1fr);
      gap: 8px;
    }
  
    .tech-category {
      margin-bottom: 20px;
    }
  
    .tech-category h3 {
      font-size: calc(0.05vh + 1rem);
      padding: 8px 12px;
    }
  
    .tech-item {
      padding: 10px 8px;
    }
  
    .tech-item i {
      font-size: calc(0.05vh + 1.5rem);
      margin-bottom: 6px;
    }
  
    .tech-item h4 {
      font-size: calc(0.05vh + 0.8rem);
      margin-bottom: 6px;
    }
  
    .tech-item span {
      font-size: calc(0.05vh + 0.7rem);
    }
  
    .form-row {
      grid-template-columns: 1fr;
    }
  
    .contact-form-mini {
      gap: 15px;
    }
  
    .contact-form-mini input,
    .contact-form-mini textarea {
      padding: 12px 16px;
      font-size: calc(0.05vh + 1rem);
    }
  
    .btn-send {
      padding: 14px 20px;
      font-size: calc(0.05vh + 1.1rem);
    }
  
    .right-column {
      display: flex;
      flex-direction: column;
      gap: 15px;
    }
  
    .project-mini {
      padding: 20px;
    }
  
    .project-mini p {
      font-size: calc(0.05vh + 0.9rem);
      line-height: 1.6;
    }
  
    .cert-item {
      padding: 12px 16px;
      font-size: calc(0.05vh + 1rem);
    }
  
    /* Ajustes específicos para móvil */
    .profile-img {
      width: 100px;
      height: 100px;
    }
  
    .profile-info h1 {
      font-size: calc(0.05vh + 2rem);
    }
  
    .profile-info p {
      font-size: calc(0.05vh + 1.2rem);
    }
  
    .section-title {
      font-size: calc(0.05vh + 1.8rem);
    }
  
    .about-card p {
      font-size: calc(0.05vh + 1rem);
      line-height: 1.7;
    }
  
    .experience-item h3 {
      font-size: calc(0.05vh + 1.2rem);
    }
  
    .experience-item li {
      font-size: calc(0.05vh + 0.95rem);
      line-height: 1.5;
    }
  }
  
  @media (max-width: 480px) {
    .portfolio-container {
      padding: 8px;
    }
  
    .header {
      padding: 20px;
    }
  
    .profile-info h1 {
      font-size: calc(0.05vh + 1.8rem);
    }
  
    .contact-quick {
      font-size: calc(0.05vh + 1rem);
    }
  
    .tech-grid-small {
      grid-template-columns: repeat(2, 1fr);
      gap: 10px;
    }
  
    .tech-item {
      padding: 12px 10px;
    }
  
    .social-links {
      flex-direction: column;
      gap: 8px;
    }
  
    .social-btn {
      padding: 10px 16px;
      font-size: calc(0.05vh + 1rem);
    }
  
    .contact-info-mini {
      flex-direction: column;
      gap: 10px;
    }
  }
  
  /* Estilos específicos para desktop con zoom automático */
  @media (min-width: 769px) {
    .portfolio-container.auto-zoom {
      transform-origin: top center;
      transition: transform 0.3s ease;
    }
  }
  
  /* Scrollbar personalizado */
  ::-webkit-scrollbar {
    width: 6px;
  }
  
  ::-webkit-scrollbar-track {
    background: var(--bg-secondary);
    border-radius: 3px;
  }
  
  ::-webkit-scrollbar-thumb {
    background: var(--primary-color);
    border-radius: 3px;
  }
  
  ::-webkit-scrollbar-thumb:hover {
    background: var(--secondary-color);
  }
  
  /* Animaciones adicionales para el cambio de tema */
  * {
    transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
  }
  