/* Resume viewer: the same visible page elements are used by native print preview. */
#resume-viewer[hidden]{display:none!important}
#resume-viewer{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:max(8px,env(safe-area-inset-top)) max(6px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(6px,env(safe-area-inset-left));background:#000d;touch-action:pan-x pan-y}
.resume-viewer-panel{display:flex;flex-direction:column;width:min(980px,100%);height:min(1050px,100%);max-height:100%;overflow:hidden;border:1px solid #ffffff1c;border-radius:20px;color:#e9f3f7;background:linear-gradient(145deg,#0c0e0f,#030404);touch-action:pan-x pan-y}
.resume-viewer-header{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:18px 22px;border-bottom:1px solid #ffffff1c;background:linear-gradient(145deg,#111315,#050606);flex:none}
.resume-viewer-heading{min-width:0;grid-column:1;grid-row:1}
#resume-viewer-kind{margin:0 0 8px;color:var(--blue);font-size:.625rem;line-height:1.5;font-weight:650;letter-spacing:.16em}
#resume-viewer-title{margin:0;font-size:clamp(1rem,.85rem + .45vw,1.4rem);line-height:1.4;letter-spacing:-.015em}
#resume-viewer .resume-controls{grid-column:2;grid-row:1;display:flex;align-items:center;gap:.45rem;max-width:100%}
#resume-viewer .resume-close-button{grid-column:3;grid-row:1;display:grid;place-items:center;width:48px;height:48px;border:1px solid #ffffff20;border-radius:15px;background:#ffffff06;color:#e4f6ff;flex:none;margin-left:8px}
#resume-viewer .resume-close-button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round}
#resume-viewer :is(button,.resume-zoom-controls){touch-action:pan-x pan-y}
#resume-language-switch{margin:0;padding:3px}
#resume-language-switch button{min-width:4rem;min-height:40px;padding:.5rem .65rem;gap:.3rem;font-size:.75rem}
#resume-language-switch button[aria-pressed="true"]{border-color:transparent}
#resume-language-switch button:focus-visible{outline:2px solid #ffffff80;outline-offset:1px}
#resume-viewer .resume-print-button{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-height:48px;padding:.55rem .9rem;border:1px solid #ffffff20;border-radius:100px;background:linear-gradient(145deg,#ffffff09,#0008);box-shadow:inset 0 1px 0 #ffffff07;color:#e4f6ff;font-size:.75rem;line-height:1.2;font-weight:650;white-space:nowrap}
#resume-viewer .resume-print-button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
#resume-print[data-resume-action="share"] .resume-print-icon,#resume-print:not([data-resume-action="share"]) .resume-share-icon{display:none}
#resume-print[data-resume-action="share"] .resume-share-icon{width:19px;height:19px}
#resume-viewer .resume-print-button:hover{border-color:#88d5f53b;background:linear-gradient(145deg,#88d5f51f,#88d5f507)}
#resume-viewer .resume-print-button:disabled{opacity:.6;cursor:wait}
#resume-viewer :is(.resume-print-button,.resume-close-button):focus-visible{outline:2px solid #ffffff80;outline-offset:2px}
.resume-zoom-controls{display:flex;align-items:center;flex:none;padding:3px;border:1px solid #ffffff20;border-radius:100px;background:linear-gradient(145deg,#ffffff09,#0008);box-shadow:inset 0 1px 0 #ffffff07}
.resume-zoom-controls button{display:inline-flex;align-items:center;justify-content:center;min-width:34px;min-height:40px;padding:.45rem .35rem;border:0;border-radius:100px;background:transparent;color:#e4f6ff;font-size:.75rem;line-height:1.2;font-weight:650}
.resume-zoom-controls button:hover{background:#ffffff0b}
.resume-zoom-controls button:focus-visible{outline:2px solid #ffffff80;outline-offset:1px}
.resume-zoom-controls button:disabled{opacity:.3;cursor:default}
.resume-zoom-controls svg{width:16px;height:16px;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;fill:none}
#resume-zoom-reset{min-width:50px;font-variant-numeric:tabular-nums}
#resume-viewer-media{flex:1;min-height:0;overflow:auto;overflow-anchor:none;overscroll-behavior:contain;scrollbar-gutter:stable;padding:10px;background:#000;touch-action:pan-x pan-y}
#resume-viewer .resume-pages{display:flex;flex-direction:column;gap:10px;width:min(100%,850px);max-width:none;margin:0 auto;touch-action:pan-x pan-y}
#resume-viewer .resume-viewer-page{flex:none;margin:0;padding:0;aspect-ratio:17 / 22}
#resume-viewer .resume-pages img{display:block;width:100%;height:auto;max-width:none;max-height:none;aspect-ratio:17 / 22;object-fit:contain;background:#fff;border-radius:10px;pointer-events:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}
#resume-viewer-status{margin:0;padding:12px 20px;color:#e9f3f7;font-size:.8rem}
@media(max-width:760px),(max-width:920px) and (orientation:landscape){
 .resume-viewer-header{grid-template-columns:minmax(0,1fr) auto;gap:10px 12px;padding:13px}
 #resume-viewer-kind{margin-bottom:5px}
 #resume-viewer .resume-close-button{grid-column:2;grid-row:1;margin:0;align-self:start}
 #resume-viewer .resume-controls{grid-column:1 / -1;grid-row:2;display:grid;grid-template-columns:auto auto auto;justify-content:space-between;gap:6px;padding-top:10px;border-top:1px solid #ffffff12}
 #resume-language-switch button{min-width:3.3rem;min-height:40px;padding:.45rem .4rem;gap:.25rem;font-size:.6875rem}
 .resume-zoom-controls button{min-width:32px;min-height:40px;font-size:.6875rem;padding:.4rem .2rem}
 #resume-zoom-reset{min-width:44px}
 #resume-viewer .resume-print-button{min-width:48px;min-height:48px;padding:.5rem .75rem}
}
@media(max-width:480px){#resume-print-label{display:none}#resume-viewer .resume-print-button{padding:.5rem}}
@media(max-width:350px){.resume-viewer-header{padding:11px}#resume-language-switch .language-flag{display:none}#resume-language-switch button{min-width:3.125rem;padding-inline:.25rem;white-space:nowrap}}
@media(max-height:500px) and (orientation:landscape){.resume-viewer-header{padding:10px 13px}.resume-viewer-panel{border-radius:14px}}
@page{size:auto;margin:10mm}
@media print{
 html.resume-viewer-open,html.resume-viewer-open body{display:block!important;position:static!important;height:auto!important;min-height:0!important;max-height:none!important;width:auto!important;max-width:none!important;margin:0!important;padding:0!important;overflow:visible!important;background:white!important;color:black!important;color-scheme:light!important;transform:none!important;filter:none!important;print-color-adjust:exact!important;-webkit-print-color-adjust:exact!important}
 html.resume-viewer-open body>:not(#resume-viewer),html.resume-viewer-open body::before,html.resume-viewer-open body::after{display:none!important}
 html.resume-viewer-open #resume-viewer,html.resume-viewer-open .resume-viewer-panel,html.resume-viewer-open #resume-viewer-media{display:block!important;position:static!important;inset:auto!important;box-sizing:border-box!important;width:auto!important;max-width:none!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding:0!important;overflow:visible!important;scrollbar-gutter:auto!important;background:white!important;border:0!important;border-radius:0!important;box-shadow:none!important;transform:none!important;filter:none!important;animation:none!important;opacity:1!important;visibility:visible!important}
 html.resume-viewer-open .resume-viewer-header,html.resume-viewer-open #resume-viewer-status{display:none!important}
 html.resume-viewer-open #resume-viewer .resume-pages{display:block!important;position:static!important;width:180mm!important;max-width:none!important;height:auto!important;margin:0 auto!important;padding:0!important;gap:0!important}
 html.resume-viewer-open #resume-viewer .resume-viewer-page{display:block!important;position:static!important;width:180mm!important;height:232.941mm!important;aspect-ratio:auto!important;margin:0!important;padding:0!important;overflow:hidden!important;border:0!important;break-inside:avoid;page-break-inside:avoid;break-after:page;page-break-after:always}
 html.resume-viewer-open #resume-viewer .resume-viewer-page:last-child{break-after:auto;page-break-after:auto}
 html.resume-viewer-open #resume-viewer .resume-pages img{display:block!important;position:static!important;width:180mm!important;height:232.941mm!important;max-width:none!important;max-height:none!important;margin:0!important;padding:0!important;object-fit:contain!important;border:0!important;border-radius:0!important;box-shadow:none!important;transform:none!important}
}
