.resume-main{width:100%;max-width:760px;margin:0 auto;padding:0 var(--space-6) var(--space-16);box-sizing:border-box}.resume-page-header{padding:var(--space-12) 0 var(--space-8);border-bottom:2px solid var(--color-border);margin-bottom:0}.resume-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;margin-bottom:var(--space-4)}.resume-page-name{font-size:var(--font-size-3xl);font-weight:var(--font-weight-extrabold);color:var(--color-text-primary);letter-spacing:-.03em;margin:0 0 .25rem;line-height:var(--line-height-tight)}.resume-page-headline{font-size:var(--font-size-base);color:var(--color-text-secondary);margin:0;line-height:1.4}.resume-download-btn{display:inline-flex;align-items:center;gap:.4rem;padding:var(--space-2) var(--space-4);background:var(--color-primary);color:var(--color-white);border-radius:var(--radius-md);text-decoration:none;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);transition:background var(--transition-fast);white-space:nowrap;flex-shrink:0}.resume-download-btn:hover{background:var(--color-primary-dark);color:var(--color-white)}.resume-contact-bar{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem;font-size:var(--font-size-xs)}.resume-contact-item{color:var(--color-text-secondary);text-decoration:none;transition:color var(--transition-fast)}a.resume-contact-item:hover{color:var(--color-primary)}.resume-contact-sep{color:var(--color-gray-300)}.resume-body{padding-top:var(--space-4)}.resume-body h2{font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:var(--letter-spacing-wider);color:var(--color-primary);margin:2.25rem 0 .875rem;padding-bottom:.4rem;border-bottom:1px solid var(--color-primary)}.resume-body h2:first-child{margin-top:var(--space-5)}.resume-body h3{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:var(--space-5) 0 .2rem}.resume-body h3 a{color:var(--color-text-primary);text-decoration:underline;text-underline-offset:2px}.resume-body h3 a:hover{color:var(--color-primary)}.resume-body h4{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);font-style:italic;margin:0 0 .4rem}.resume-body p{font-size:var(--font-size-sm);color:var(--color-text-primary);line-height:1.65;margin:0 0 .6rem;text-align:left}.resume-body ul{margin:.3rem 0 .75rem var(--space-4);padding:0}.resume-body li{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.6;margin-bottom:.3rem;padding-left:.1rem}.resume-body strong{color:var(--color-text-primary);font-weight:var(--font-weight-semibold)}.resume-body a{color:var(--color-primary);text-decoration:underline;text-underline-offset:2px}.resume-body a:hover{color:var(--color-primary-dark)}.resume-body hr{display:none}.resume-skills{display:flex;flex-direction:column;gap:.45rem;margin-bottom:var(--space-2)}.resume-skill-row{display:grid;grid-template-columns:160px 1fr;gap:var(--space-4);font-size:var(--font-size-sm);line-height:1.5}.resume-skill-label{font-weight:var(--font-weight-semibold);color:var(--color-text-primary);white-space:nowrap}.resume-skill-details{color:var(--color-text-secondary)}.resume-period{font-size:var(--font-size-xs);color:var(--color-text-tertiary);margin:0 0 .5rem;font-weight:var(--font-weight-medium)}.resume-stack{display:flex;flex-wrap:wrap;gap:.35rem;margin:.5rem 0 .75rem}.resume-badge{display:inline-block;padding:.15rem .5rem;background:var(--color-surface-sunken);color:var(--color-text-secondary);border:1px solid var(--color-border);border-radius:var(--radius-base);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);line-height:1.4}@media print{.resume-download-btn,header,footer{display:none!important}.resume-main{padding:0;max-width:100%}.resume-page-header{padding:0 0 var(--space-4)}}@media(max-width:640px){.resume-main{padding:0 var(--space-4) var(--space-12)}.resume-title-row{flex-direction:column;align-items:flex-start}.resume-page-name{font-size:var(--font-size-2xl)}.resume-contact-bar{font-size:.775rem}}button.resume-contact-item{cursor:pointer;font-family:inherit;background:none;border:none;padding:0;display:inline-flex;align-items:center;gap:.3rem;transition:color var(--transition-fast)}button.resume-contact-item:hover{color:var(--color-primary)}.resume-copy-email .icon-check,.resume-copy-email .label-copied,.resume-copy-email[data-copied] .icon-copy,.resume-copy-email[data-copied] .label-default{display:none}.resume-copy-email[data-copied] .icon-check,.resume-copy-email[data-copied] .label-copied{display:inline}.resume-copy-email[data-copied]{color:var(--color-primary)}
