* {    margin: 0;    padding: 0;    box-sizing: border-box;}body {    image-rendering: pixelated;    font-family: "RussianGothic", "MS UI Gothic", "NEC_APC3", Tahoma;    text-shadow: var(--body-text-shadow);    font-smooth: never;    -webkit-font-smoothing: none;    line-height: 1.4;    background-color: #fff;    max-width: 800px;    margin: 0 auto;    padding: 2rem;}p, h1, h2, h3, h4, h5, h6, h7, h8, h9, h10 {    color: rgb(22, 22, 22);}img {    image-rendering: auto;    -webkit-font-smoothing: antialiased;    font-smooth: auto;    image-rendering: crisp-edges;}.container {    background-color: #fff;}.header {    padding: 2rem 0 3rem 0;    border-bottom: 2px solid #000;    margin-bottom: 2rem;}.name {    font-size: 2.5rem;    font-weight: bold;    color: #000;    margin-bottom: 0.5rem;}.title {    font-size: 1.1rem;    color: #666;    margin-bottom: 2rem;}.contact-info {    margin-bottom: 2rem;    display: flex;    flex-direction: column;    gap: 0.5rem;}.contact-item {    display: flex;    align-items: center;    color: #000;}.contact-icon {    display: inline-block;    width: 20px;    text-align: center;    margin-right: 0.5rem;    opacity: 0.7;    transition: opacity 0.2s ease;    font-weight: bold;    font-size: 0.9rem;}.contact-item:hover .contact-icon {    opacity: 1;}.contact-link {    color: inherit;    text-decoration: none;    transition: text-decoration 0.2s ease;}.contact-link:hover {    text-decoration: underline wavy #000;    text-underline-offset: 3px;}.download-btn {    background-color: #000;    color: #fff;    border: none;    padding: 0.8rem 1.5rem;    cursor: pointer;    font-family: inherit;    font-size: 0.9rem;}.download-btn:hover {    background-color: #333;}.section {    margin-bottom: 3rem;    padding-bottom: 2rem;    border-bottom: 1px solid #ddd;}.section:last-child {    border-bottom: none;}.section-title {    font-size: 1.3rem;    color: #000;    margin-bottom: 1.5rem;    font-weight: bold;    text-transform: uppercase;    letter-spacing: 1px;}.about-text {    color: #333;    line-height: 1.6;}.experience-item {    margin-bottom: 2rem;}.item-with-icon {    display: flex;    align-items: flex-start;    gap: 1rem;    margin-bottom: 1rem;}.company-icon {    width: 40px;    height: 40px;    flex-shrink: 0;    background-color: #fff;    object-fit: contain;}.item-content {    flex: 1;    min-width: 0;}.job-header {    display: flex;    justify-content: space-between;    align-items: baseline;    margin-bottom: 0.3rem;}.job-title {    font-size: 1.1rem;    color: #000;    font-weight: bold;}.job-period {    color: #666;    font-size: 0.9rem;}.company {    color: #000;    margin-bottom: 0.8rem;    font-weight: bold;}.job-description {    list-style: none;}.job-description li {    margin-bottom: 0.3rem;    color: #333;    padding-left: 1rem;}.job-description li::before {    content: '- ';    color: #000;    margin-left: -1rem;}.skills-grid {    display: grid;    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));    gap: 2rem;}.skill-category h4 {    color: #000;    margin-bottom: 0.8rem;    font-weight: bold;    text-transform: uppercase;    font-size: 0.9rem;    letter-spacing: 0.5px;}.skill-category ul {    list-style: none;}.skill-category li {    color: #333;    margin-bottom: 0.3rem;    padding: 0.2rem 0;}.languages {    display: flex;    flex-direction: column;    gap: 0.8rem;}.language-item {    display: flex;    justify-content: space-between;    align-items: center;    padding: 0.8rem 0;    border-bottom: 1px solid #eee;}.language {    font-weight: bold;    color: #000;}.proficiency {    color: #666;}.education-item {    padding: 1rem 0;    margin-bottom: 1.5rem;    border-bottom: 1px solid #eee;}.education-item:last-child {    margin-bottom: 0;    border-bottom: none;}.degree-header {    display: flex;    justify-content: space-between;    align-items: baseline;    margin-bottom: 0.3rem;}.degree {    font-size: 1.1rem;    color: #000;    font-weight: bold;}.education-period {    color: #666;    font-size: 0.9rem;}.institution {    color: #000;}.project-item {    margin-bottom: 2rem;    padding-bottom: 1.5rem;    border-bottom: 1px solid #eee;}.project-item:last-child {    margin-bottom: 0;    border-bottom: none;}.project-title {    color: #000;    font-size: 1.1rem;    font-weight: bold;    margin-bottom: 0.5rem;}.project-description {    color: #333;    margin-bottom: 1rem;    line-height: 1.5;}.project-tech {    display: flex;    flex-wrap: wrap;    gap: 0.5rem;}.tech-tag {    background-color: #000;    color: #fff;    padding: 0.2rem 0.6rem;    font-size: 0.8rem;    text-transform: uppercase;    letter-spacing: 0.5px;}@media (max-width: 768px) {    body {        padding: 1rem;    }        .name {        font-size: 2rem;    }        .job-header,    .degree-header {        flex-direction: column;        align-items: flex-start;    }        .job-period,    .education-period {        margin-top: 0.2rem;    }        .skills-grid {        grid-template-columns: 1fr;        gap: 1.5rem;    }            .item-with-icon {        gap: 0.8rem;    }        .company-icon {        width: 32px;        height: 32px;    }}@media print {    body {        padding: 0;        max-width: none;    }        .download-btn {        display: none;    }        .section {        page-break-inside: avoid;    }        .company-icon {        display: none;    }        .item-with-icon {        display: block;    }}

/* Accessibility tweaks */
.skip-link {    position: absolute;    left: 0;    top: -40px;    background: #000;    color: #fff;    padding: 8px 12px;    z-index: 1001;}
.skip-link:focus {    top: 0;}

:focus-visible {    outline: 2px dashed #000;    outline-offset: 3px;}

@media (prefers-reduced-motion: reduce) {    * {        animation: none !important;        transition: none !important;        scroll-behavior: auto !important;    }}

/* About list semantics */
.about-list {    margin: 0 0 1rem 1.25rem;    color: #333;}
.about-list li {    margin-bottom: 0.3rem;}

/* Last updated badge */
.last-updated {    position: fixed;    right: 1rem;    bottom: 1rem;    background: rgba(0,0,0,0.85);    color: #fff;    padding: 0.35rem 0.6rem;    font-size: 0.8rem;    border-radius: 4px;    z-index: 1000;    box-shadow: 0 2px 8px rgba(0,0,0,0.15);    pointer-events: none;}

@media (max-width: 768px) {    .last-updated {        position: static;        background: transparent;        color: #666;        box-shadow: none;        padding: 0;        margin-top: 1rem;        text-align: right;    }}

/* Language toggle */
.header {    position: relative;}
.lang-toggle {    position: absolute;    top: 0.5rem;    right: 0.5rem;    background: transparent;    border: none;    color: #666;    font-size: 0.85rem;    cursor: pointer;    padding: 0.2rem 0.4rem;}
.lang-toggle:hover, .lang-toggle:focus-visible {    color: #000;}
.lang-toggle:focus-visible {    outline: 2px dashed #000;    outline-offset: 3px;}

@media (max-width: 768px) {    .lang-toggle {        top: 0.25rem;        right: 0.25rem;    }}