/* Résumé-backed skill categories. */
.stack-grid.stack-categories{grid-template-columns:1fr 1fr;border-left:0;border-top:1px solid var(--line)}
.stack-category{padding:27px 30px 28px 0;border-bottom:1px solid var(--line);min-width:0}
.stack-category:nth-child(even){border-left:1px solid var(--line);padding-left:30px;padding-right:0}
.stack-category-title{display:flex;align-items:center;gap:13px;margin-bottom:12px}
.stack-category-title>span{font-family:var(--font);font-size:8px;color:#81798d;font-variant-numeric:tabular-nums}
.stack-category h4{font-family:var(--display);font-size:19px;font-weight:500;letter-spacing:-.5px;line-height:1.3;margin:0}
.stack-category p{font-size:12px;line-height:1.95;color:#aaa89e;margin:0;max-width:500px}

/* Rendered original pages keep the preview inside the site. */
.resume-dialog.resume-viewer{width:min(1080px,calc(100% - 40px));height:min(920px,calc(100dvh - 40px));max-height:calc(100dvh - 40px);padding:0;overflow:hidden;background:#f1f0ea;color:#111110}
.resume-dialog.resume-viewer[open]{display:flex;flex-direction:column}
.resume-viewer .dialog-close{top:22px;right:24px;z-index:2}
.resume-viewer-header{flex-shrink:0;padding:26px 78px 23px 32px;background:#171716;color:#f1f0ea}
.resume-viewer-header .eyebrow{display:block;font-size:7px;letter-spacing:1.3px;color:#b9a7db;margin-bottom:10px}
.resume-viewer-header h2{font-family:var(--display);font-weight:500;font-size:30px;letter-spacing:-1px;line-height:1.15;margin:0;display:flex;align-items:baseline;gap:17px;flex-wrap:wrap}
.resume-viewer-header h2 span{font-family:var(--font);font-size:12px;letter-spacing:0;font-weight:400;color:#aaa69e}
.resume-viewer-toolbar{flex-shrink:0;display:flex;justify-content:space-between;align-items:center;gap:18px;padding:10px 24px 10px 32px;background:#eeece5;border-bottom:1px solid #11111018}
.resume-viewer-toolbar>span{font-size:8px;letter-spacing:1px;color:#77746b}
.resume-zoom-controls{display:flex;align-items:center;gap:6px}
.resume-zoom-controls button{display:grid;place-items:center;width:32px;height:32px;font-size:20px;line-height:1;border:1px solid #11111020;border-radius:3px;transition:background .2s}
.resume-zoom-controls button:hover:not(:disabled){background:#ded6ed}
.resume-zoom-controls button:disabled{opacity:.3;cursor:default}
.resume-zoom-controls output{font-family:var(--font);font-size:10px;text-align:center;width:44px;font-variant-numeric:tabular-nums}
.resume-zoom-controls #resume-zoom-fit{width:auto;padding:0 12px;font-size:10px;margin-left:6px}
.resume-viewport{min-height:0;flex:1;overflow:auto;overscroll-behavior:contain;padding:24px;background:#dcdad3;scrollbar-width:thin;scrollbar-color:#9b9790 #dcdad3;outline-offset:-4px}
.resume-pages{width:100%;margin:0 auto;display:flex;flex-direction:column;gap:20px}
.resume-page{margin:0;flex-shrink:0}
.resume-page img{display:block;width:100%;height:auto;max-width:none;background:#fff;box-shadow:0 5px 24px #00000010;user-select:none}
.resume-loading{font-size:12px;padding:5px 0 20px;color:#67635b}
.resume-text-version{margin-top:22px;border-top:1px solid #11111026;padding:18px 0 3px}
.resume-text-version summary{cursor:pointer;font-size:11px;font-weight:500;color:#565048;outline-offset:4px;width:fit-content}
.resume-text-version pre{font-family:var(--font);font-size:12px;line-height:1.85;white-space:pre-wrap;overflow-wrap:anywhere;color:#34312d;margin:20px 0 0;background:#f7f6f1;padding:22px;user-select:text}
@media(max-width:800px){.stack-category{padding:22px 22px 24px 0}.stack-category:nth-child(even){padding-left:22px}.stack-category h4{font-size:17px}.stack-category p{font-size:11px}}
@media(max-width:600px){
  .stack-grid.stack-categories{grid-template-columns:1fr}
  .stack-category,.stack-category:nth-child(even){padding:22px 0;border-left:0}
  .stack-category-title{margin-bottom:9px}.stack-category h4{font-size:18px}.stack-category p{font-size:12px;line-height:1.9}
  .resume-dialog.resume-viewer{width:calc(100% - 16px);height:calc(100dvh - 16px);max-height:calc(100dvh - 16px)}
  .resume-viewer-header{padding:22px 59px 20px 20px}.resume-viewer-header .eyebrow{font-size:6px;letter-spacing:1px;margin-bottom:10px}.resume-viewer-header h2{font-size:24px;letter-spacing:-.8px;gap:6px}.resume-viewer-header h2 span{display:block;width:100%;font-size:10px}
  .resume-viewer .dialog-close{top:17px;right:15px;width:30px;height:30px}
  .resume-viewer-toolbar{padding:9px 14px 9px 20px;gap:10px}.resume-viewer-toolbar>span{font-size:6px;white-space:nowrap}.resume-zoom-controls{gap:4px}.resume-zoom-controls button{width:29px;height:32px}.resume-zoom-controls output{width:38px;font-size:9px}.resume-zoom-controls #resume-zoom-fit{padding:0 8px;font-size:9px;margin-left:3px}
  .resume-viewport{padding:12px}.resume-text-version pre{font-size:11px;padding:16px}
}
@media(prefers-reduced-motion:reduce){.resume-zoom-controls button{transition:none}}
