.cv-coach{display:flex;align-items:center;gap:10px;padding:8px 18px;background:#f7fbff;border-bottom:1px solid #d7e5f2;color:#334b64;font-size:12.5px;min-height:38px;position:relative;overflow:hidden}.cv-coach:after{content:'';position:absolute;left:0;bottom:0;width:var(--cv-progress,0%);height:2px;background:linear-gradient(90deg,#2b6cb0,#39a77c);transition:width .45s ease}.cv-coach strong{color:#164b88}.cv-coach .coach-dot{width:8px;height:8px;border-radius:50%;background:#2867b2;box-shadow:0 0 0 0 #2867b244;animation:coachPing 2s infinite}.cv-coach .coach-arrow{margin-left:auto;color:#2867b2;font-weight:800;animation:coachNudge 1.3s ease-in-out infinite}
@keyframes coachPing{0%{box-shadow:0 0 0 0 #2867b244}70%{box-shadow:0 0 0 7px #2867b200}100%{box-shadow:0 0 0 0 #2867b200}}@keyframes coachNudge{0%,100%{transform:translateX(0)}50%{transform:translateX(4px)}}
.guide-target{animation:guideGlow 1.2s ease 2;position:relative}@keyframes guideGlow{0%,100%{box-shadow:0 0 0 0 #2878c800}50%{box-shadow:0 0 0 4px #2878c82d}}
#next-step.ready-nudge{animation:nextNudge 1.5s ease-in-out 2}@keyframes nextNudge{0%,100%{transform:translateX(0)}50%{transform:translateX(4px);box-shadow:0 5px 15px #2867b22e}}
.stepbar button.step-done span{background:#27805f!important;color:white!important;border-color:#27805f!important;animation:donePop .32s ease}.stepbar button.step-done span:before{content:'✓';font-size:11px}.stepbar button.step-done span{font-size:0}@keyframes donePop{0%{transform:scale(.75)}100%{transform:scale(1)}}
.wizard-panel.section-enter{animation:sectionEnter .38s cubic-bezier(.2,.8,.2,1)}@keyframes sectionEnter{0%{opacity:0;transform:translateY(12px)}100%{opacity:1;transform:translateY(0)}}
.formatting-focus{animation:formatFocus 1.35s ease}@keyframes formatFocus{0%,100%{box-shadow:0 0 0 0 #347cc500}35%{box-shadow:0 0 0 5px #347cc526}}
.ai-rewrite-status:not(:empty){transition:all .25s ease}.ai-rewrite-box.ai-working{position:relative;overflow:hidden}.ai-rewrite-box.ai-working:after{content:'';position:absolute;left:-35%;bottom:0;height:3px;width:35%;background:#2867b2;animation:aiProgress 1.1s ease-in-out infinite}@keyframes aiProgress{to{left:100%}}

/* Premium section-introduction transition */
.section-intro-overlay[hidden]{display:none}.section-intro-overlay{position:fixed;inset:0;z-index:10000;background:rgba(9,29,52,.28);backdrop-filter:blur(7px);display:grid;place-items:center;padding:22px}.section-intro-card{width:min(620px,92vw);background:linear-gradient(145deg,#fff 0%,#fbfdff 68%,#f3f8fd 100%);border:1px solid #d9e5f1;border-radius:24px;padding:34px 38px 30px;box-shadow:0 30px 80px rgba(15,45,78,.22);position:relative;overflow:hidden;transform:translateY(16px) scale(.98);opacity:0}.section-intro-card.intro-pop{animation:introPop .38s cubic-bezier(.2,.85,.25,1) forwards}@keyframes introPop{to{transform:translateY(0) scale(1);opacity:1}}.section-intro-card:before{content:'';position:absolute;width:230px;height:230px;border-radius:50%;right:-95px;top:-105px;background:radial-gradient(circle,#dcecff 0%,#dcecff00 70%)}.intro-progress{height:4px;background:#e6edf5;border-radius:999px;overflow:hidden;margin:-4px 48px 28px 0}.intro-progress span{display:block;height:100%;background:linear-gradient(90deg,#225f9f,#36a27a);border-radius:inherit;transition:width .45s ease}.intro-icon{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:#eaf3fc;color:#195990;font-size:24px;font-weight:900;margin-bottom:18px;animation:iconFloat 2.4s ease-in-out infinite}@keyframes iconFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}.intro-kicker{font-size:12px;letter-spacing:.18em;font-weight:900;color:#2867b2;margin-bottom:8px}.section-intro-card h2{font-size:34px;line-height:1.08;margin:0 0 13px;color:#13283f;letter-spacing:-.025em}.intro-copy{font-size:16px;line-height:1.6;color:#526579;max-width:520px;margin:0}.intro-actions{display:flex;justify-content:space-between;align-items:center;margin-top:28px}.intro-actions button{min-height:46px;padding:0 20px;border-radius:12px}.intro-continue span{display:inline-block;margin-left:8px;animation:coachNudge 1.25s ease-in-out infinite}.section-intro-skip{position:absolute;right:20px;top:18px;width:38px;height:38px;border-radius:10px;border:0;background:transparent;font-size:27px;color:#526579;padding:0}.section-intro-skip:hover{background:#edf4fa}.intro-back{background:transparent;border:0;color:#49657f}.intro-open{overflow:hidden}

/* Small loading toast for import/processing */
.cv-loading-toast[hidden]{display:none}.cv-loading-toast{position:fixed;right:24px;bottom:24px;z-index:10001;background:#122d49;color:#fff;border-radius:16px;padding:14px 17px;box-shadow:0 18px 45px #0d27433d;display:flex;gap:12px;align-items:center;animation:toastIn .28s ease}.cv-loading-toast strong,.cv-loading-toast span{display:block}.cv-loading-toast strong{font-size:13px}.cv-loading-toast span{font-size:11.5px;color:#c9d8e6;margin-top:2px}.loading-mark{width:25px;height:25px;border:3px solid #ffffff3b;border-top-color:#fff;border-radius:50%;animation:spin .75s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes toastIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}

@media(max-width:700px){.section-intro-card{padding:28px 24px 24px;border-radius:18px}.section-intro-card h2{font-size:27px}.intro-copy{font-size:14px}.intro-actions{gap:8px}.intro-actions button{flex:1}.cv-coach .coach-arrow{display:none}}
@media(prefers-reduced-motion:reduce){.cv-coach .coach-dot,.cv-coach .coach-arrow,.guide-target,#next-step.ready-nudge,.stepbar button.step-done span,.ai-rewrite-box.ai-working:after,.wizard-panel.section-enter,.section-intro-card,.intro-icon,.intro-continue span,.loading-mark{animation:none!important}.section-intro-card{opacity:1;transform:none}}
@media print{.cv-coach,.section-intro-overlay,.cv-loading-toast{display:none!important}}

/* v32: livelier guided-builder motion — typewriter + animated document */
.intro-stage{position:relative;width:118px;height:94px;margin:0 0 18px;display:grid;place-items:center}.intro-doc{position:absolute;width:58px;height:76px;border:2px solid #2867b2;border-radius:10px;background:#fff;box-shadow:0 10px 24px #1c5f9c1f;transform:rotate(-3deg);animation:docBreathe 2.7s ease-in-out infinite}.intro-doc:before{content:'';position:absolute;right:-9px;top:10px;width:18px;height:18px;border-radius:50%;background:#dff5ea;border:2px solid #55ad82;animation:badgePop 2.2s ease-in-out infinite}.intro-doc i{display:block;height:4px;border-radius:999px;background:#d8e7f5;margin-left:10px;width:0;animation:lineType 2.9s ease-in-out infinite}.intro-doc i:nth-child(1){margin-top:17px;--w:37px;animation-delay:.08s}.intro-doc i:nth-child(2){--w:31px;animation-delay:.24s}.intro-doc i:nth-child(3){--w:39px;animation-delay:.40s}.intro-doc i:nth-child(4){--w:25px;animation-delay:.56s}.intro-doc b{position:absolute;right:-5px;bottom:-6px;width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:#2f9a6f;color:white;border:3px solid white;font-size:13px;animation:checkBounce 2.2s ease-in-out infinite}.intro-stage .intro-icon{position:absolute;left:70px;top:38px;width:42px;height:42px;border-radius:14px;margin:0;z-index:3;box-shadow:0 9px 20px #19599022;animation:iconOrbit 3s ease-in-out infinite}.spark{position:absolute;color:#2b6cb0;font-weight:900;opacity:.75;animation:sparkFloat 2.1s ease-in-out infinite}.spark-a{left:2px;top:3px;font-size:17px}.spark-b{right:3px;top:2px;font-size:20px;animation-delay:.45s}.spark-c{right:6px;bottom:4px;font-size:22px;color:#39a77c;animation-delay:.8s}.typing-caret{display:inline-block;width:3px;height:.86em;margin-left:5px;vertical-align:-.05em;background:#2867b2;border-radius:3px;animation:caretBlink .72s steps(1) infinite}.intro-copy{min-height:50px}.intro-status{display:inline-flex;align-items:center;gap:8px;margin-top:16px;padding:7px 11px;border:1px solid #deebf5;border-radius:999px;background:#f8fbfe;color:#5b7085;font-size:11.5px;font-weight:700}.intro-status .status-dot{width:7px;height:7px;border-radius:50%;background:#32a475;box-shadow:0 0 0 0 #32a4754b;animation:statusPulse 1.7s ease-out infinite}.section-intro-card.intro-pop .intro-kicker{animation:revealUp .46s .08s both}.section-intro-card.intro-pop h2{animation:revealUp .5s .13s both}.section-intro-card.intro-pop .intro-copy{animation:revealUp .5s .18s both}.section-intro-card.intro-pop .intro-status{animation:revealUp .5s .24s both}.section-intro-card.intro-pop .intro-actions{animation:revealUp .5s .30s both}
@keyframes docBreathe{0%,100%{transform:rotate(-3deg) translateY(0)}50%{transform:rotate(0deg) translateY(-5px)}}
@keyframes lineType{0%,18%{width:0;opacity:.35}38%,72%{width:var(--w);opacity:1}88%,100%{width:var(--w);opacity:.55}}
@keyframes badgePop{0%,100%{transform:scale(.78);opacity:.65}50%{transform:scale(1.08);opacity:1}}
@keyframes checkBounce{0%,100%{transform:scale(.86) rotate(-8deg)}50%{transform:scale(1.08) rotate(3deg)}}
@keyframes iconOrbit{0%,100%{transform:translate(0,0) rotate(0)}50%{transform:translate(5px,-7px) rotate(5deg)}}
@keyframes sparkFloat{0%,100%{transform:translateY(2px) scale(.9);opacity:.35}50%{transform:translateY(-7px) scale(1.15);opacity:1}}
@keyframes caretBlink{0%,48%{opacity:1}49%,100%{opacity:0}}
@keyframes statusPulse{0%{box-shadow:0 0 0 0 #32a4754b}70%{box-shadow:0 0 0 8px #32a47500}100%{box-shadow:0 0 0 0 #32a47500}}
@keyframes revealUp{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}

/* More life across actual builder panels, without distracting from typing */
.wizard-panel.section-enter .entry,.wizard-panel.section-enter .field,.wizard-panel.section-enter .role-starter{animation:fieldCascade .42s cubic-bezier(.2,.8,.2,1) both}.wizard-panel.section-enter .entry:nth-of-type(2){animation-delay:.05s}.wizard-panel.section-enter .entry:nth-of-type(3){animation-delay:.10s}@keyframes fieldCascade{from{opacity:.15;transform:translateY(7px)}to{opacity:1;transform:none}}

@media(prefers-reduced-motion:reduce){.intro-doc,.intro-doc i,.intro-doc:before,.intro-doc b,.intro-stage .intro-icon,.spark,.typing-caret,.intro-status .status-dot,.section-intro-card.intro-pop .intro-kicker,.section-intro-card.intro-pop h2,.section-intro-card.intro-pop .intro-copy,.section-intro-card.intro-pop .intro-status,.section-intro-card.intro-pop .intro-actions,.wizard-panel.section-enter .entry,.wizard-panel.section-enter .field,.wizard-panel.section-enter .role-starter{animation:none!important}.typing-caret{display:none}}

/* v34: full-screen CV intake / review journey before the builder opens */
.cv-intake-journey[hidden]{display:none!important}
.cv-intake-journey{position:fixed;inset:0;z-index:12000;background:#fff;display:grid;place-items:center;padding:28px;color:#15283f}
.cv-intake-shell{width:min(980px,92vw);min-height:min(620px,82vh);display:grid;grid-template-columns:minmax(240px,360px) minmax(360px,1fr);gap:58px;align-items:center;position:relative}
.cv-intake-brand{position:absolute;left:0;top:0;font-weight:900;letter-spacing:-.02em;color:#173d66;font-size:18px}.cv-intake-brand span{display:inline-block;width:22px;height:28px;border:2px solid currentColor;border-radius:2px;margin-right:8px;vertical-align:-7px;position:relative}.cv-intake-brand span:after{content:'';position:absolute;right:-2px;top:-2px;border-left:9px solid transparent;border-bottom:9px solid #fff;width:0;height:0}
.cv-intake-visual{height:330px;display:grid;place-items:center;position:relative}.intake-blob{position:absolute;width:270px;height:270px;border-radius:44% 56% 53% 47%/48% 45% 55% 52%;background:#eef6ff;animation:intakeBlob 5s ease-in-out infinite}.intake-blob:before,.intake-blob:after{content:'';position:absolute;border-radius:50%}.intake-blob:before{width:42px;height:42px;background:#dff6e9;left:-20px;top:48px;animation:floatDot 2.4s ease-in-out infinite}.intake-blob:after{width:31px;height:31px;background:#fff1cb;right:-9px;bottom:45px;animation:floatDot 2.9s .3s ease-in-out infinite}
.intake-art{width:245px;height:245px;position:relative;z-index:2}.intake-card{position:absolute;left:72px;top:35px;width:105px;height:142px;border:3px solid #18324d;border-radius:10px;background:#fff;box-shadow:0 14px 35px #234d7820;transform:rotate(-3deg);animation:intakeCard 3.1s ease-in-out infinite}.intake-card:before{content:'';position:absolute;left:16px;top:16px;width:45px;height:7px;border-radius:8px;background:#276cae}.intake-line{position:absolute;left:17px;height:5px;border-radius:5px;background:#d7e4f1;transform-origin:left;animation:intakeWrite 1.8s ease-in-out infinite}.intake-line.l1{top:43px;width:68px}.intake-line.l2{top:58px;width:58px;animation-delay:.12s}.intake-line.l3{top:73px;width:73px;animation-delay:.24s}.intake-line.l4{top:102px;width:63px;animation-delay:.36s}.intake-line.l5{top:117px;width:49px;animation-delay:.48s}.intake-scan{position:absolute;left:8px;right:8px;height:3px;border-radius:6px;background:linear-gradient(90deg,#2f9a6f00,#2f9a6f,#2f9a6f00);box-shadow:0 0 12px #2f9a6f77;animation:scanDoc 1.9s ease-in-out infinite}.intake-badge{position:absolute;right:-15px;bottom:-13px;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:#dff6e9;border:3px solid #2f9a6f;color:#1c7f58;font-size:24px;font-weight:900;box-shadow:0 10px 24px #1b7c5522;animation:badgeBounce 2s ease-in-out infinite}.intake-orbit{position:absolute;width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:#fff4d8;border:2px solid #eeb85b;font-size:23px;box-shadow:0 8px 20px #a86c1d17}.intake-orbit.o1{left:24px;top:50px;animation:orbitOne 3.2s ease-in-out infinite}.intake-orbit.o2{right:22px;top:48px;background:#eaf3ff;border-color:#73a5da;animation:orbitTwo 3.4s .2s ease-in-out infinite}.intake-orbit.o3{left:36px;bottom:30px;background:#edf8f2;border-color:#72bb98;animation:orbitOne 3.5s .35s ease-in-out infinite}
.cv-intake-copy{padding-top:30px}.intake-kicker{font-size:12px;letter-spacing:.18em;font-weight:900;color:#2a6db2;margin-bottom:11px}.cv-intake-copy h2{font-size:38px;line-height:1.08;margin:0 0 16px;color:#10273f;letter-spacing:-.028em;min-height:82px}.cv-intake-copy p{font-size:17px;line-height:1.6;color:#53677b;max-width:590px;min-height:60px;margin:0}.intake-typed{display:inline}.intake-caret{display:inline-block;width:3px;height:.86em;margin-left:5px;vertical-align:-.04em;border-radius:4px;background:#2a6db2;animation:caretBlink .72s steps(1) infinite}.intake-meter{margin-top:31px;width:min(520px,100%);height:5px;background:#e9eff5;border-radius:99px;overflow:hidden}.intake-meter span{height:100%;display:block;width:0;background:linear-gradient(90deg,#2869ae,#36a177);border-radius:inherit;transition:width .55s cubic-bezier(.2,.8,.2,1)}.intake-step-label{font-size:12px;color:#7a8b9c;margin-top:10px;font-weight:700}.intake-ready{margin-top:24px;display:inline-flex;align-items:center;gap:8px;padding:9px 13px;border-radius:999px;background:#f1f8f5;color:#287956;font-weight:800;font-size:12px;opacity:0;transform:translateY(5px);transition:.3s ease}.intake-ready.show{opacity:1;transform:none}.intake-ready i{width:8px;height:8px;border-radius:50%;background:#34a573;box-shadow:0 0 0 0 #34a57366;animation:statusPulse 1.6s ease-out infinite}
.cv-intake-journey.stage-enter .cv-intake-copy{animation:intakeCopyIn .42s cubic-bezier(.2,.8,.2,1)}.cv-intake-journey.stage-enter .intake-art{animation:intakeArtIn .5s cubic-bezier(.2,.85,.2,1)}
@keyframes intakeBlob{0%,100%{transform:rotate(0) scale(1)}50%{transform:rotate(4deg) scale(1.03)}}@keyframes floatDot{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes intakeCard{0%,100%{transform:rotate(-3deg) translateY(0)}50%{transform:rotate(0) translateY(-7px)}}@keyframes intakeWrite{0%,15%{transform:scaleX(.05);opacity:.25}45%,75%{transform:scaleX(1);opacity:1}100%{transform:scaleX(.9);opacity:.55}}@keyframes scanDoc{0%{top:26px;opacity:0}15%{opacity:1}75%{opacity:1}100%{top:126px;opacity:0}}@keyframes badgeBounce{0%,100%{transform:scale(.9) rotate(-7deg)}50%{transform:scale(1.08) rotate(4deg)}}@keyframes orbitOne{0%,100%{transform:translate(0,0) rotate(-5deg)}50%{transform:translate(-5px,-10px) rotate(6deg)}}@keyframes orbitTwo{0%,100%{transform:translate(0,0) rotate(5deg)}50%{transform:translate(7px,9px) rotate(-7deg)}}@keyframes intakeCopyIn{from{opacity:.2;transform:translateY(9px)}to{opacity:1;transform:none}}@keyframes intakeArtIn{from{opacity:.4;transform:scale(.95)}to{opacity:1;transform:scale(1)}}
@media(max-width:760px){.cv-intake-shell{grid-template-columns:1fr;gap:8px;min-height:auto;text-align:center}.cv-intake-brand{position:static;text-align:left;margin-bottom:4px}.cv-intake-visual{height:250px}.intake-art{transform:scale(.85)}.cv-intake-copy{padding-top:0}.cv-intake-copy h2{font-size:30px;min-height:66px}.cv-intake-copy p{font-size:15px;min-height:70px}.intake-meter{margin-left:auto;margin-right:auto}.intake-ready{margin-left:auto;margin-right:auto}}
@media(prefers-reduced-motion:reduce){.intake-blob,.intake-blob:before,.intake-blob:after,.intake-card,.intake-line,.intake-scan,.intake-badge,.intake-orbit,.intake-caret,.intake-ready i,.cv-intake-journey.stage-enter .cv-intake-copy,.cv-intake-journey.stage-enter .intake-art{animation:none!important}}
@media print{.cv-intake-journey{display:none!important}}
