.template-card{text-align:left}
.template-card b,.template-card small{display:block;text-align:center}
.template-card small{color:#7a8497;font-size:.66rem;margin-top:2px}
.ats-mini:after{left:25%;width:50%}
.cyber-mini:after,.cloud-mini:after{left:0;top:0;width:23%;height:100%;background:#273249}
.service-mini:after{left:0;top:0;width:100%;height:13px}
.systems-mini:after{left:12px;right:12px;width:auto;background:#1f4b99}
.developer-mini{background:#f4f6f9}.developer-mini:after{background:#202b42;box-shadow:34px 0 #5b4cf0}
.data-mini:after{width:42px;background:#086c73}.network-mini:after{left:0;top:0;width:100%;height:6px;background:#146c94}
.resume.ats{font-family:Arial,Helvetica,sans-serif;padding:52px 64px;color:#111}.resume.ats .resume-header{border:0;border-bottom:1px solid #111;text-align:left}.resume.ats .resume-name{font-family:Arial,Helvetica,sans-serif;font-size:2.2em;letter-spacing:0}.resume.ats .resume-title{color:#222;letter-spacing:.06em}.resume.ats .resume-section h2{color:#111;border-bottom:1px solid #111;letter-spacing:.08em}.resume.ats .resume-skills span{background:transparent;padding:0}.resume.ats .resume-skills span:not(:last-child):after{content:" •";margin-left:6px}
.resume.service .resume-header{margin:-55px -60px 28px;padding:42px 60px 24px;background:var(--resume-accent);color:#fff;border:0}.resume.service .resume-name,.resume.service .resume-title,.resume.service .contact-line{color:#fff}.resume.service .resume-section h2{border-left:4px solid var(--resume-accent);padding-left:9px;border-bottom:0;color:#263047}
.resume.systems{border-top:10px solid var(--resume-accent);padding-top:45px}.resume.systems .resume-name{font-family:Inter,Arial,sans-serif;font-weight:800}.resume.systems .resume-header{border-bottom:1px solid #aeb6c6}.resume.systems .resume-section h2{background:#eef2f7;padding:7px 9px;border:0;color:#24324a}.resume.systems .resume-skills span{border:1px solid #ccd3df;background:#fff}
.resume.cyber,.resume.cloud{padding:0;display:grid;grid-template-columns:30% 70%;background:linear-gradient(90deg,#132033 30%,#fff 30%)}.resume.cyber .resume-header,.resume.cloud .resume-header{grid-column:2;padding:48px 44px 22px;margin:0;border:0}.resume.cyber .resume-main,.resume.cloud .resume-main{grid-column:2;padding:0 44px 45px}.resume.cyber .resume-side,.resume.cloud .resume-side{grid-column:1;grid-row:1/3;padding:50px 23px;color:#eef4f8}.resume.cyber .resume-side .resume-section h2,.resume.cloud .resume-side .resume-section h2{color:#5ee6b1;border-color:#3d4c61}.resume.cloud{background:linear-gradient(90deg,#eaf4fb 30%,#fff 30%)}.resume.cloud .resume-side{color:#26384a}.resume.cloud .resume-side .resume-section h2{color:#126c99;border-color:#b9d5e4}.resume.cyber .resume-side .contact-line,.resume.cyber .resume-side .resume-skills,.resume.cloud .resume-side .contact-line,.resume.cloud .resume-side .resume-skills{display:block;color:inherit}.resume.cyber .resume-side span,.resume.cloud .resume-side span{display:block;margin:0 0 8px;background:transparent;padding:0;overflow-wrap:anywhere}
.resume.developer{font-family:"Courier New",monospace;padding:50px 58px;border-top:12px solid #202b42}.resume.developer .resume-name{font-family:"Courier New",monospace;font-weight:700}.resume.developer .resume-title,.resume.developer .resume-section h2{color:var(--resume-accent)}.resume.developer .resume-section h2:before{content:"> ";color:#202b42}.resume.developer .resume-skills span{background:#202b42;color:#fff;border-radius:2px}
.resume.data .resume-header{border:0;padding:30px;background:#eef8f8}.resume.data .resume-name{color:#103b43}.resume.data .resume-section h2{border:0;color:#086c73}.resume.data .resume-section h2:after{content:"";display:block;width:42px;border-bottom:3px solid #086c73;padding-top:5px}.resume.data .resume-entry{border-left:2px solid #b8dddd;padding-left:13px}
.resume.network{border-top:8px solid var(--resume-accent)}.resume.network .resume-header{display:grid;grid-template-columns:1fr auto;align-items:end;border:0}.resume.network .contact-line{grid-column:2;grid-row:1/3;display:block;text-align:right}.resume.network .contact-line span{display:block}.resume.network .resume-section h2{color:#26384b;border-bottom:2px solid var(--resume-accent)}
.corporate-mini:after{left:0;top:0;width:100%;height:18px;background:#0b3d63}.minimal-mini:after{left:18px;top:15px;width:46px;height:2px;background:#333}.elegant-mini:after{left:25%;width:50%;background:#b06f16}.bold-mini:after{left:0;top:0;width:32%;height:100%;background:#111827}.federal-mini:after{left:10px;right:10px;top:10px;width:auto;height:4px;background:#1f4b99}.academic-mini:after{left:30%;width:40%;background:#7b2d26}
.resume.corporate{padding:0 58px 52px;border-top:16px solid var(--resume-accent)}.resume.corporate .resume-header{margin:0 -58px 26px;padding:36px 58px 24px;background:#f3f6f9;border:0}.resume.corporate .resume-name{font-family:Inter,Arial,sans-serif;font-weight:800}.resume.corporate .resume-section h2{color:#253244;border-bottom:2px solid var(--resume-accent)}
.resume.minimal{padding:64px 72px;font-family:Arial,Helvetica,sans-serif}.resume.minimal .resume-header{border:0;padding:0 0 22px}.resume.minimal .resume-name{font-family:Arial,Helvetica,sans-serif;font-weight:400;font-size:2.35em;letter-spacing:.02em}.resume.minimal .resume-title{color:#596273;font-weight:600}.resume.minimal .resume-section{margin-bottom:27px}.resume.minimal .resume-section h2{color:#222;border:0;padding:0;letter-spacing:.2em}
.resume.elegant{padding:58px 72px;border:1px solid #d9d2c3;font-family:Georgia,"Times New Roman",serif}.resume.elegant .resume-header{text-align:center;border-bottom:1px solid var(--resume-accent)}.resume.elegant .resume-name{font-weight:400;letter-spacing:.01em}.resume.elegant .contact-line{justify-content:center}.resume.elegant .resume-section h2{text-align:center;border:0;color:var(--resume-accent)}.resume.elegant .resume-entry h3{font-family:Georgia,"Times New Roman",serif}
.resume.bold{padding:0;display:grid;grid-template-columns:34% 66%;background:linear-gradient(90deg,var(--resume-accent) 34%,#fff 34%)}.resume.bold .resume-header{grid-column:1/-1;margin:0;padding:46px 48px 28px;background:#111827;border:0}.resume.bold .resume-name,.resume.bold .resume-title,.resume.bold .contact-line{color:#fff}.resume.bold .resume-side{grid-column:1;grid-row:2;padding:34px 26px;color:#fff}.resume.bold .resume-main{grid-column:2;padding:34px 40px 48px}.resume.bold .resume-side .resume-section h2,.resume.bold .resume-side .resume-skills{color:#fff;border-color:rgba(255,255,255,.5)}
.resume.federal{font-family:Arial,Helvetica,sans-serif;padding:48px 58px;color:#111}.resume.federal .resume-header{border:2px solid var(--resume-accent);padding:20px;margin-bottom:22px}.resume.federal .resume-name{font-family:Arial,Helvetica,sans-serif;font-size:2.15em;letter-spacing:0}.resume.federal .resume-title{letter-spacing:.05em}.resume.federal .resume-section h2{background:var(--resume-accent);color:#fff;padding:6px 9px;border:0;letter-spacing:.08em}.resume.federal .resume-entry{margin-bottom:19px}
.resume.academic{padding:58px 68px;font-family:Georgia,"Times New Roman",serif}.resume.academic .resume-header{text-align:center;border-bottom:3px double var(--resume-accent)}.resume.academic .resume-name{font-weight:400}.resume.academic .contact-line{justify-content:center}.resume.academic .resume-section h2{font-family:Arial,Helvetica,sans-serif;color:#222;border-bottom:1px solid var(--resume-accent)}.resume.academic .resume-entry h3{font-weight:600}
.consulting-mini:after{left:0;top:0;width:8px;height:100%;background:#0b3d63}.finance-mini:after{left:10px;right:10px;width:auto;background:#176b45}.healthcare-mini:after{left:0;top:0;width:100%;height:9px;background:#086c73}.sales-mini:after{left:0;top:0;width:100%;height:17px;background:#7b2d26}.project-mini:after{left:12px;top:12px;width:52px;background:#b06f16;box-shadow:0 13px #d6dae2}.creative-mini:after{left:0;top:0;width:28%;height:100%;background:linear-gradient(#5b4cf0,#9b3f4f)}
.resume.consulting{border-left:12px solid var(--resume-accent);padding:54px 62px}.resume.consulting .resume-name{font-family:Inter,Arial,sans-serif;font-weight:800}.resume.consulting .resume-header{border-bottom:1px solid #9da7b5}.resume.consulting .resume-section h2{color:#1f2937;border-bottom:0;border-left:3px solid var(--resume-accent);padding-left:9px}
.resume.finance{padding:54px 64px;font-family:Arial,Helvetica,sans-serif;border-top:5px solid var(--resume-accent)}.resume.finance .resume-header{border-bottom:3px double #344054}.resume.finance .resume-name{font-family:Georgia,"Times New Roman",serif;font-weight:600}.resume.finance .resume-section h2{color:#22312a;border-bottom:1px solid var(--resume-accent)}
.resume.healthcare{padding:52px 62px;border-top:11px solid var(--resume-accent)}.resume.healthcare .resume-header{border:0;background:#f1f8f8;padding:22px;margin:-20px -20px 26px}.resume.healthcare .resume-name{font-family:Inter,Arial,sans-serif}.resume.healthcare .resume-section h2{color:#174f54;border-bottom:2px solid #b8dada}
.resume.sales .resume-header{margin:-55px -60px 28px;padding:42px 60px 26px;background:#202838;border-bottom:7px solid var(--resume-accent)}.resume.sales .resume-name,.resume.sales .resume-title,.resume.sales .contact-line{color:#fff}.resume.sales .resume-section h2{color:var(--resume-accent);border-bottom:2px solid var(--resume-accent)}
.resume.project{padding:50px 58px}.resume.project .resume-header{border:0;border-left:8px solid var(--resume-accent);padding-left:20px}.resume.project .resume-name{font-family:Inter,Arial,sans-serif;font-weight:800}.resume.project .resume-section h2{background:#f5f6f8;border:0;border-left:5px solid var(--resume-accent);padding:7px 10px;color:#263047}
.resume.creative{padding:0 54px 50px;border-top:22px solid var(--resume-accent)}.resume.creative .resume-header{margin:0 -54px 27px;padding:34px 54px 24px;background:linear-gradient(120deg,#151c2c,#2d3748);border:0}.resume.creative .resume-name,.resume.creative .resume-title,.resume.creative .contact-line{color:#fff}.resume.creative .resume-section h2{border:0;color:var(--resume-accent);font-size:.86em}.resume.creative .resume-section h2:after{content:"";display:block;width:48px;border-bottom:3px solid var(--resume-accent);padding-top:5px}
.import-modal{position:fixed;inset:0;background:rgba(12,18,32,.72);display:grid;place-items:center;padding:20px;z-index:40}.import-modal[hidden]{display:none}.import-dialog{width:min(520px,100%);background:#fff;border-radius:18px;padding:28px;box-shadow:0 30px 80px rgba(0,0,0,.3);position:relative}.import-dialog h2{margin:0 0 8px;font-size:1.45rem}.import-dialog>p:not(.eyebrow):not(.import-note){color:#657087;line-height:1.5;margin:0 0 18px}.modal-close{position:absolute;right:16px;top:14px;border:0;background:#f0f2f7;border-radius:50%;width:32px;height:32px;font-size:1.3rem;cursor:pointer}.drop-zone{width:100%;border:2px dashed #b8b3f5;border-radius:14px;background:#f8f7ff;padding:30px 18px;color:#263047;font:inherit;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:7px}.drop-zone:hover,.drop-zone.dragging{border-color:var(--accent);background:#f0efff}.drop-zone small{color:#6d7689}.upload-icon{display:grid;place-items:center;width:43px;height:43px;border-radius:12px;background:var(--accent);color:#fff;font-size:1.5rem;margin-bottom:4px}.import-progress{margin-top:16px;border:1px solid #dfe4ed;border-radius:11px;padding:13px;display:flex;align-items:center;gap:12px}.import-progress[hidden]{display:none}.import-progress small{display:block;color:#748095;margin-top:3px}.spinner{width:24px;height:24px;border:3px solid #ddd9ff;border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.import-note{font-size:.74rem;color:#7b8495;margin:14px 0 0;text-align:center}
