html, body {
    position: relative;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
}

body {
    color: #e0e0e0;
    background-color: #1a1a1a;
    font-family: 'Roboto', -apple-system, BlinkMacSystemFont, "Segoe UI", Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
    line-height: 1.6;
    font-size: 16px;
    /* Smooth scrolling for iOS */
    -webkit-overflow-scrolling: touch;
}

main {
    max-width: 800px;
    margin: 0 auto;
    padding: 20px;
    /* Responsive padding */
    padding: clamp(15px, 5vw, 20px);
}

h1, h2, h3, h4, h5, h6 {
    color: #ffffff;
    margin-top: 0;
    /* Responsive font size */
    word-wrap: break-word;
}

h1 { font-size: clamp(1.75rem, 4vw, 2.5rem); }
h2 { font-size: clamp(1.5rem, 3vw, 2rem); }
h3 { font-size: clamp(1.25rem, 2.5vw, 1.75rem); }

a {
    color: #4da6ff;
    text-decoration: none;
    transition: color 0.3s ease;
}

a:hover {
    color: #80bfff;
    text-decoration: underline;
}

a:visited {
    color: #3385ff;
}

/* Updated for mobile */
nav {
    background-color: #2c2c2c;
    padding: 10px 0;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

nav ul {
    list-style-type: none;
    padding: 0;
    margin: 0;
    display: flex;
    justify-content: center;
    /* Allow wrapping on small screens */
    flex-wrap: wrap;
    gap: 10px;
}

nav li {
    margin: 5px;
}

nav a {
    color: #ffffff;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: 14px;
    /* Improve tap target size on mobile */
    padding: 8px 12px;
    display: inline-block;
}

nav a:hover {
    color: #4da6ff;
    text-decoration: none;
}

input, button, select, textarea {
    font-family: inherit;
    font-size: inherit;
    padding: 0.6em;
    margin: 0 0 0.5em 0;
    box-sizing: border-box;
    border: 1px solid #444;
    border-radius: 4px;
    background-color: #2c2c2c;
    color: #e0e0e0;
    /* Improve touch target size */
    min-height: 44px;
    width: 100%;
    max-width: 100%;
}

button {
    background-color: #4da6ff;
    color: #ffffff;
    border: none;
    padding: 12px 20px;
    cursor: pointer;
    transition: background-color 0.3s ease;
    /* Improve touch target size */
    min-height: 44px;
}

button:hover {
    background-color: #3385ff;
}

button:disabled {
    background-color: #666;
    cursor: not-allowed;
}

/* Media queries for different screen sizes */
@media (max-width: 768px) {
    body {
        font-size: 15px;
    }

    nav ul {
        padding: 0 10px;
    }
}

@media (max-width: 480px) {
    body {
        font-size: 14px;
    }

    nav {
        padding: 5px 0;
    }

    nav a {
        font-size: 13px;
        padding: 6px 10px;
    }

    button {
        width: 100%;
    }
}

/* Dark mode support */
@media (prefers-color-scheme: dark) {

}

/* Reduced motion preference support */
@media (prefers-reduced-motion: reduce) {
    * {
        animation: none !important;
        transition: none !important;
    }
}

/* Touch device optimizations */
@media (hover: none) {
    a:hover {
        color: #4da6ff; /* Keep original color on touch devices */
        text-decoration: none;
    }

    button:hover {
        background-color: #4da6ff; /* Keep original color on touch devices */
    }
}
.home-container.svelte-3vci4p{max-width:600px;margin:0 auto;padding:clamp(20px, 5vw, 40px) clamp(15px, 3vw, 20px);text-align:center}h1.svelte-3vci4p{font-size:clamp(1.8em, 5vw, 2.5em);margin-bottom:clamp(15px, 4vw, 20px);word-wrap:break-word}p.svelte-3vci4p{margin-bottom:clamp(15px, 4vw, 20px);font-size:clamp(1rem, 2.5vw, 1.1rem);line-height:1.6}.cta-buttons.svelte-3vci4p{display:flex;justify-content:center;gap:clamp(10px, 3vw, 20px);margin-top:clamp(20px, 4vw, 30px);flex-wrap:wrap}.cta-button.svelte-3vci4p{display:inline-block;padding:clamp(8px, 2vw, 10px) clamp(15px, 3vw, 20px);background-color:#4da6ff;color:white;border-radius:5px;text-decoration:none;transition:background-color 0.3s ease;min-height:44px;display:flex;align-items:center;justify-content:center;&:focus {
            outline: 3px solid #fff;
            outline-offset: 2px;
        };background-color:#0066cc}.cta-button.svelte-3vci4p:hover{background-color:#0052a3}@media(max-width: 480px){.cta-button.svelte-3vci4p{width:100%;margin:0}.cta-buttons.svelte-3vci4p{gap:15px;margin-left:0;margin-right:0}}@media(hover: none){.cta-button.svelte-3vci4p:hover{background-color:#4da6ff}.cta-button.svelte-3vci4p:active{background-color:#3385ff;transform:scale(0.98)}}
.about-container.svelte-1s3x56c{max-width:800px;margin:0 auto;padding:clamp(20px, 5vw, 40px) clamp(15px, 3vw, 20px)}.about-content.svelte-1s3x56c{background-color:rgba(255, 255, 255, 0.05);border-radius:8px;padding:clamp(15px, 3vw, 20px);margin-top:clamp(15px, 3vw, 20px);word-wrap:break-word}h1.svelte-1s3x56c{text-align:center;margin-bottom:clamp(20px, 4vw, 30px);font-size:clamp(1.8rem, 4vw, 2.5rem)}ul.svelte-1s3x56c{list-style-type:none;padding-left:0;margin:clamp(10px, 2vw, 15px) 0}li.svelte-1s3x56c{margin-bottom:clamp(8px, 2vw, 10px);position:relative;padding-left:clamp(20px, 4vw, 25px);line-height:1.5}li.svelte-1s3x56c:before{content:"•";color:#4da6ff;font-size:clamp(1.3em, 3vw, 1.5em);position:absolute;left:0;top:clamp(-4px, -1vw, -5px)}@media(max-width: 480px){li.svelte-1s3x56c{margin-bottom:12px}.about-content.svelte-1s3x56c{font-size:clamp(0.95rem, 2.5vw, 1rem);line-height:1.6}}@media(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi){.about-content.svelte-1s3x56c{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}
.projects-container.svelte-1orq3lg.svelte-1orq3lg{max-width:1200px;margin:0 auto;padding:clamp(20px, 5vw, 40px) clamp(15px, 3vw, 20px)}h1.svelte-1orq3lg.svelte-1orq3lg{text-align:center;margin-bottom:clamp(20px, 4vw, 30px);font-size:clamp(1.8rem, 4vw, 2.5rem)}.project-grid.svelte-1orq3lg.svelte-1orq3lg{display:grid;grid-template-columns:repeat(auto-fit, minmax(min(100%, 300px), 1fr));gap:clamp(15px, 3vw, 20px)}.project-card.svelte-1orq3lg.svelte-1orq3lg{background-color:rgba(255, 255, 255, 0.05);border-radius:8px;padding:clamp(15px, 3vw, 20px);transition:transform 0.3s ease;word-wrap:break-word}.project-card.svelte-1orq3lg.svelte-1orq3lg:hover{transform:translateY(-5px)}.project-card.svelte-1orq3lg h2.svelte-1orq3lg{margin-top:0;color:#4da6ff;font-size:clamp(1.3rem, 3vw, 1.5rem);margin-bottom:clamp(10px, 2vw, 15px)}.project-links.svelte-1orq3lg.svelte-1orq3lg{display:flex;justify-content:space-between;margin-top:clamp(12px, 3vw, 15px);flex-wrap:wrap;gap:10px}.project-link.svelte-1orq3lg.svelte-1orq3lg{display:inline-block;background-color:#4da6ff;color:white;padding:clamp(8px, 2vw, 10px) clamp(12px, 3vw, 15px);border-radius:5px;text-decoration:none;transition:background-color 0.3s ease;min-height:44px;white-space:nowrap}.project-link.svelte-1orq3lg.svelte-1orq3lg:hover{background-color:#3385ff}@media(max-width: 480px){.project-card.svelte-1orq3lg.svelte-1orq3lg{transform:none !important}.project-links.svelte-1orq3lg.svelte-1orq3lg{flex-direction:column;gap:10px}.project-link.svelte-1orq3lg.svelte-1orq3lg{width:100%;text-align:center}}@media(hover: none){.project-card.svelte-1orq3lg.svelte-1orq3lg:hover{transform:none}.project-link.svelte-1orq3lg.svelte-1orq3lg:hover{background-color:#4da6ff}.project-link.svelte-1orq3lg.svelte-1orq3lg:active{background-color:#3385ff;transform:scale(0.98)}}.project-card.svelte-1orq3lg.svelte-1orq3lg:focus{outline:2px solid #4da6ff;outline-offset:2px;transform:translateY(-5px)}.project-link.svelte-1orq3lg.svelte-1orq3lg:focus{outline:2px solid white;outline-offset:2px;background-color:#3385ff}@media(max-width: 480px){.project-card.svelte-1orq3lg.svelte-1orq3lg{transform:none !important}.project-card.svelte-1orq3lg.svelte-1orq3lg:focus{transform:none !important;outline:2px solid #4da6ff}}
.resume-container.svelte-1o8lfqi.svelte-1o8lfqi{max-width:800px;margin:0 auto;padding:clamp(20px, 5vw, 40px) clamp(15px, 3vw, 20px)}h1.svelte-1o8lfqi.svelte-1o8lfqi,h2.svelte-1o8lfqi.svelte-1o8lfqi{text-align:center;margin-bottom:clamp(20px, 4vw, 30px)}h1.svelte-1o8lfqi.svelte-1o8lfqi{font-size:clamp(1.8rem, 4vw, 2.5rem)}h2.svelte-1o8lfqi.svelte-1o8lfqi{font-size:clamp(1.4rem, 3vw, 1.8rem)}h3.svelte-1o8lfqi.svelte-1o8lfqi{font-size:clamp(1.1rem, 2.5vw, 1.3rem)}section.svelte-1o8lfqi.svelte-1o8lfqi{margin-bottom:clamp(30px, 5vw, 40px)}.resume-item.svelte-1o8lfqi.svelte-1o8lfqi{background-color:rgba(255, 255, 255, 0.05);border-radius:8px;padding:clamp(15px, 3vw, 20px);margin-bottom:clamp(15px, 3vw, 20px);transition:transform 0.2s ease-in-out;word-wrap:break-word}.resume-item.svelte-1o8lfqi.svelte-1o8lfqi:hover{transform:translateY(-2px);box-shadow:0 4px 8px rgba(0, 0, 0, 0.2)}.resume-item.svelte-1o8lfqi h3.svelte-1o8lfqi{color:#4da6ff;margin-top:0;margin-bottom:clamp(8px, 2vw, 12px)}.skills-grid.svelte-1o8lfqi.svelte-1o8lfqi{display:grid;grid-template-columns:repeat(auto-fit, minmax(min(100%, 200px), 1fr));gap:clamp(15px, 3vw, 20px)}.skill-category.svelte-1o8lfqi.svelte-1o8lfqi{background-color:rgba(255, 255, 255, 0.05);border-radius:8px;padding:clamp(12px, 2.5vw, 15px)}.skill-category.svelte-1o8lfqi h3.svelte-1o8lfqi{color:#4da6ff;margin-top:0;margin-bottom:clamp(8px, 2vw, 10px)}ul.svelte-1o8lfqi.svelte-1o8lfqi{list-style-type:none;padding-left:0;margin:0.5em 0}li.svelte-1o8lfqi.svelte-1o8lfqi{margin-bottom:clamp(4px, 1.5vw, 5px);line-height:1.4;padding:2px 0}@media(max-width: 480px){.resume-item.svelte-1o8lfqi.svelte-1o8lfqi{transform:none !important}.resume-item.svelte-1o8lfqi.svelte-1o8lfqi:hover{box-shadow:none}li.svelte-1o8lfqi.svelte-1o8lfqi{padding:4px 0}.resume-item.svelte-1o8lfqi ul.svelte-1o8lfqi{padding-left:10px}.resume-item.svelte-1o8lfqi>p.svelte-1o8lfqi:nth-child(2){font-size:0.9em;color:#888;margin:5px 0}}@media(hover: none){.resume-item.svelte-1o8lfqi.svelte-1o8lfqi:hover{transform:none;box-shadow:none}}@media print{.resume-container.svelte-1o8lfqi.svelte-1o8lfqi{padding:0}.resume-item.svelte-1o8lfqi.svelte-1o8lfqi,.skill-category.svelte-1o8lfqi.svelte-1o8lfqi{break-inside:avoid;background-color:transparent;box-shadow:none}h1.svelte-1o8lfqi.svelte-1o8lfqi,h2.svelte-1o8lfqi.svelte-1o8lfqi,h3.svelte-1o8lfqi.svelte-1o8lfqi{color:#000}}.resume-item.svelte-1o8lfqi.svelte-1o8lfqi:focus-within{outline:2px solid #4da6ff}.resume-item.svelte-1o8lfqi h3.svelte-1o8lfqi{color:#66b3ff}@media(prefers-color-scheme: dark){.resume-item.svelte-1o8lfqi.svelte-1o8lfqi{background-color:rgba(255, 255, 255, 0.08)}}
.recommendations-container.svelte-kbmicn.svelte-kbmicn{max-width:1200px;margin:0 auto;padding:clamp(20px, 5vw, 40px) clamp(15px, 3vw, 20px)}h1.svelte-kbmicn.svelte-kbmicn,h2.svelte-kbmicn.svelte-kbmicn{text-align:center;margin-bottom:clamp(20px, 4vw, 30px)}h1.svelte-kbmicn.svelte-kbmicn{font-size:clamp(1.8rem, 4vw, 2.5rem)}h2.svelte-kbmicn.svelte-kbmicn{font-size:clamp(1.4rem, 3vw, 1.8rem)}.disclaimer.svelte-kbmicn.svelte-kbmicn{text-align:center;font-style:italic;margin-bottom:clamp(20px, 4vw, 30px);font-size:clamp(0.9rem, 2vw, 1rem);line-height:1.6;padding:0 clamp(10px, 3vw, 20px)}section.svelte-kbmicn.svelte-kbmicn{margin-bottom:clamp(30px, 6vw, 50px)}.recommendation-grid.svelte-kbmicn.svelte-kbmicn{display:grid;grid-template-columns:repeat(auto-fit, minmax(min(100%, 250px), 1fr));gap:clamp(15px, 3vw, 20px)}.recommendation-card.svelte-kbmicn.svelte-kbmicn{background-color:rgba(255, 255, 255, 0.05);border-radius:8px;padding:clamp(15px, 3vw, 20px);text-align:center;transition:transform 0.3s ease;word-wrap:break-word}.recommendation-card.svelte-kbmicn h3.svelte-kbmicn{font-size:clamp(1.1rem, 2.5vw, 1.3rem);margin-bottom:clamp(10px, 2vw, 15px)}.recommendation-card.svelte-kbmicn.svelte-kbmicn:hover{transform:translateY(-5px)}.recommendation-link.svelte-kbmicn.svelte-kbmicn{display:inline-block;background-color:#4da6ff;color:white;padding:clamp(8px, 2vw, 10px) clamp(12px, 3vw, 15px);border-radius:5px;text-decoration:none;transition:background-color 0.3s ease;margin-top:clamp(8px, 2vw, 10px);min-height:44px;display:flex;align-items:center;justify-content:center}.recommendation-link.svelte-kbmicn.svelte-kbmicn:hover{background-color:#3385ff}@media(max-width: 480px){.recommendation-card.svelte-kbmicn.svelte-kbmicn{transform:none !important}.recommendation-link.svelte-kbmicn.svelte-kbmicn{width:100%;max-width:200px;margin-left:auto;margin-right:auto}}@media(hover: none){.recommendation-card.svelte-kbmicn.svelte-kbmicn:hover{transform:none}.recommendation-link.svelte-kbmicn.svelte-kbmicn:hover{background-color:#4da6ff}.recommendation-link.svelte-kbmicn.svelte-kbmicn:active{background-color:#3385ff;transform:scale(0.98)}}.recommendation-link.svelte-kbmicn.svelte-kbmicn:focus{outline:2px solid #3385ff;outline-offset:2px}
nav.svelte-1l3e1qr{box-shadow:0 2px 4px rgba(0, 0, 0, 0.1);position:sticky;top:0;z-index:100;background-color:#2c2c2c}.active.svelte-1l3e1qr{border-bottom:2px solid #4da6ff;padding-bottom:clamp(2px, 1vw, 4px)}@media(max-width: 480px){nav.svelte-1l3e1qr{box-shadow:0 1px 3px rgba(0, 0, 0, 0.2)}}@media(hover: none){.active.svelte-1l3e1qr{background-color:rgba(77, 166, 255, 0.1)}}a.svelte-1l3e1qr:focus{outline:3px solid #4da6ff;outline-offset:2px}a.svelte-1l3e1qr{color:#ffffff;text-decoration:none;padding:0.5rem 1rem}
