:root{--navy:#152b45;--blue:#2e6f95;--sky:#e9f3f8;--ink:#172033;--muted:#64748b;--line:#dbe3ec;--paper:#fff;--bg:#f4f7fa;--green:#176b4d;--greenbg:#e9f7f0;--amber:#9a5b08;--amberbg:#fff7e6;--red:#a12c2c;--redbg:#fff0f0;--radius:14px}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.5}.topbar{height:64px;background:var(--navy);display:flex;align-items:center;padding:0 max(22px,calc((100vw - 1160px)/2));gap:16px;color:white}.brand{font-size:22px;font-weight:800;color:white;text-decoration:none}.tagline{opacity:.75}.logout{margin-left:auto;color:white;text-decoration:none;font-size:14px}.demo-banner{padding:10px 20px;background:var(--amberbg);color:#754408;text-align:center;border-bottom:1px solid #efc777}.shell{max-width:1160px;margin:34px auto;padding:0 22px 50px}.footer{text-align:center;color:var(--muted);padding:28px 16px 42px;font-size:13px}.hero{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center;margin-bottom:24px}.hero.compact{margin-bottom:18px}.hero h1{font-size:clamp(30px,4vw,48px);line-height:1.08;margin:4px 0 12px;max-width:800px}.hero.compact h1{font-size:36px}.hero p{max-width:780px;color:#44546a;font-size:17px}.eyebrow{margin:0;color:var(--blue);font-weight:800;text-transform:uppercase;letter-spacing:.11em;font-size:12px}.workflow-mini{display:grid;gap:8px}.workflow-mini span{background:white;border:1px solid var(--line);border-radius:999px;padding:8px 14px;font-size:13px}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:24px;box-shadow:0 4px 16px rgba(16,37,63,.04);margin-bottom:18px}.narrow{max-width:470px;margin:90px auto}.card h2{margin:0 0 14px;font-size:21px}.stack{display:grid;gap:18px}.field-grid{display:grid;gap:16px}.field-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.field-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}label{display:grid;gap:7px;font-weight:700;font-size:14px}input,textarea,select{width:100%;border:1px solid #bdc9d7;border-radius:9px;padding:11px 12px;background:white;color:var(--ink);font:inherit;font-weight:400}textarea{resize:vertical}input:focus,textarea:focus{outline:3px solid rgba(46,111,149,.16);border-color:var(--blue)}small,.muted{color:var(--muted);font-weight:400}.required{color:var(--red);font-size:11px;text-transform:uppercase}.optional{color:var(--muted);font-size:11px;text-transform:uppercase}fieldset{border:1px solid var(--line);border-radius:12px;padding:18px;display:grid;gap:16px}legend{font-weight:800;padding:0 8px}.mode-tabs{display:flex;gap:10px;flex-wrap:wrap}.mode-tabs label{display:flex;align-items:center;gap:7px;background:var(--sky);padding:8px 11px;border-radius:999px}.mode-tabs input{width:auto}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:9px;padding:11px 17px;font-weight:800;text-decoration:none;cursor:pointer;font-size:14px}.button.primary{background:var(--navy);color:white}.button.secondary{background:var(--blue);color:white}.button.ghost{background:white;color:var(--navy);border:1px solid var(--line)}.button:disabled{opacity:.38;cursor:not-allowed}.alert{padding:14px 17px;border-radius:10px;margin-bottom:18px}.alert.error{background:var(--redbg);border:1px solid #efb8b8;color:var(--red)}.alert.warning{background:var(--amberbg);border:1px solid #efcf91;color:#754408}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.pill{background:var(--sky);padding:4px 9px;border-radius:999px;font-weight:800}.application-list{display:grid}.application-row{display:flex;justify-content:space-between;gap:16px;padding:15px 0;border-top:1px solid var(--line);text-decoration:none;color:var(--ink)}.application-row:first-child{border-top:0}.application-row>div:last-child{text-align:right}.status{display:inline-block;border-radius:999px;background:#eef2f6;padding:4px 8px;font-size:11px;font-weight:800}.status.approved,.status.ready_for_approval{background:var(--greenbg);color:var(--green)}.status.confirmation_required{background:var(--amberbg);color:var(--amber)}.empty-state{color:var(--muted);font-style:italic}.stepper{display:flex;gap:0;margin:0 0 24px;overflow:auto}.stepper span{white-space:nowrap;padding:8px 14px;background:#e7edf3;border-right:1px solid white;font-size:12px;font-weight:800}.stepper span:first-child{border-radius:999px 0 0 999px}.stepper span:last-child{border-radius:0 999px 999px 0}.stepper .done{background:#cde7da;color:var(--green)}.stepper .active{background:var(--navy);color:white}.source-text{white-space:pre-wrap;overflow:auto;max-height:420px;background:#f7f9fb;border:1px solid var(--line);border-radius:10px;padding:16px;font:13px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace}.source-text.tall{max-height:720px}.score-card{width:130px;height:130px;border-radius:50%;background:var(--navy);color:white;display:grid;place-content:center;text-align:center}.score-card strong{font-size:42px;line-height:1}.score-card span{font-size:12px;opacity:.8}.status-panel{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 22px;border-radius:12px;margin-bottom:18px}.status-panel.ready{background:var(--greenbg);border:1px solid #a9dbc7;color:var(--green)}.status-panel.blocked{background:var(--amberbg);border:1px solid #efd18f;color:#754408}.approval-stamp{border:2px solid currentColor;border-radius:999px;padding:6px 11px;font-weight:900;text-transform:uppercase;font-size:12px}.review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.review-grid .card{margin:0}.review-grid ul,.attention ul{padding-left:20px}.review-grid li,.attention li{margin-bottom:12px}.question{font-weight:800;color:var(--amber)}.attention{border-left:5px solid var(--amber)}.comparison-layout{display:grid;grid-template-columns:1fr 1fr;gap:18px}.document-preview{min-width:0}.rendered-doc{background:#fff;border:1px solid var(--line);padding:28px;min-height:500px}.rendered-doc h2{font-size:25px;border-bottom:2px solid var(--navy);padding-bottom:7px}.rendered-doc h3{font-size:16px;text-transform:uppercase;letter-spacing:.05em;margin-top:22px}.rendered-doc h4{font-size:15px}.rendered-doc p,.rendered-doc li{font-family:Arial,sans-serif;font-size:14px}.rendered-doc.letter{max-width:780px;margin:auto}.approval-box{border-top:5px solid var(--navy)}.approved-box{border-top:5px solid var(--green)}.download-grid{display:flex;gap:10px;flex-wrap:wrap}details summary{font-weight:800;cursor:pointer}
@media(max-width:800px){.hero{grid-template-columns:1fr}.workflow-mini{grid-template-columns:repeat(2,1fr)}.field-grid.two,.field-grid.three,.review-grid,.comparison-layout{grid-template-columns:1fr}.score-card{width:100px;height:100px}.application-row{display:grid}.application-row>div:last-child{text-align:left}.shell{padding:0 14px 40px}.card{padding:18px}}

/* v0.9.6 navigable workflow and safe fallback actions */
.stepper a{white-space:nowrap;padding:8px 14px;background:#e7edf3;border-right:1px solid white;font-size:12px;font-weight:800;color:var(--ink);text-decoration:none}
.stepper a:first-child{border-radius:999px 0 0 999px}
.stepper a:last-child{border-radius:0 999px 999px 0}
.stepper a:hover{text-decoration:underline}
.action-row{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0}
.application-item{display:flex;align-items:center;gap:12px;border-top:1px solid var(--line)}
.account-summary{margin-left:auto;color:white;font-size:14px}
.application-item:first-child{border-top:0}.application-item .application-row{flex:1;border-top:0}
.button.danger{background:var(--redbg);color:var(--red);border:1px solid #efb8b8}
.consent-option{display:flex;grid-template-columns:auto 1fr;align-items:flex-start;gap:10px;padding:14px;border:1px solid var(--line);border-radius:10px;background:#f8fafc}
.consent-option input{width:auto;margin-top:4px}.legal-copy{max-width:820px;margin:auto}.legal-copy h1{font-size:36px}.legal-copy h2{margin-top:24px}

/* Structured confirmation and suitability states */
.status-panel.not-recommended {
  background: #fff1f0;
  border-color: #f0a3a0;
  color: #7a1f1b;
}
.confirmation-form {
  gap: 1rem;
}
.confirmation-question {
  border: 1px solid #d8e1ec;
  border-radius: 12px;
  padding: 1rem;
  background: #fbfcfe;
}
.confirmation-question legend {
  font-weight: 800;
  padding: 0 .35rem;
}
.confirmation-question select,
.confirmation-question textarea {
  width: 100%;
  margin-top: .35rem;
}
.confirmation-question label {
  display: block;
  margin-top: .75rem;
  font-weight: 700;
}
.field-help {
  margin: .5rem 0 0;
  color: #667085;
  font-size: .9rem;
}


/* v0.8 simple Yes/No confirmation controls */
.answer-choice {
  display: flex;
  gap: .75rem;
  flex-wrap: wrap;
}
.yes-no-option {
  display: inline-flex !important;
  align-items: center;
  gap: .55rem;
  min-width: 110px;
  margin: 0 !important;
  padding: .75rem 1rem;
  border: 1px solid #bdc9d7;
  border-radius: 10px;
  background: #fff;
  cursor: pointer;
}
.yes-no-option:has(input:checked) {
  border-color: var(--blue);
  background: var(--sky);
  box-shadow: 0 0 0 3px rgba(46,111,149,.12);
}
.yes-no-option input {
  width: auto;
  margin: 0;
  accent-color: var(--blue);
}
.yes-no-option span {
  font-weight: 800;
}
.yes-details[hidden] {
  display: none;
}
.yes-details {
  padding-top: .25rem;
}

/* Guided, résumé-section confirmation dialog */
.confirmation-launch{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px;border:1px solid #cfe0da;border-radius:14px;background:linear-gradient(135deg,#f6faf8,#edf5f2)}
.confirmation-launch h3{margin:7px 0 4px;font-size:20px}.confirmation-launch p{max-width:720px;margin:0;color:var(--muted)}
.resume-section-badge{display:inline-flex;width:max-content;padding:5px 9px;border-radius:999px;background:#e5f0ec;color:#406c61;font-size:11px;font-weight:850;letter-spacing:.04em;text-transform:uppercase}
.confirmation-shell.is-guided>.confirmation-modal{display:none}
.confirmation-shell.is-guided>.confirmation-modal.is-open{position:fixed;z-index:1000;inset:0;display:grid;place-items:center;padding:22px;background:rgba(22,38,45,.58);backdrop-filter:blur(5px)}
.confirmation-dialog{width:min(720px,100%);max-height:min(760px,calc(100vh - 44px));overflow:auto;border:1px solid #d8e4df;border-radius:20px;background:#fff;box-shadow:0 32px 90px rgba(22,38,45,.28)}
.confirmation-dialog-header{position:sticky;z-index:2;top:0;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:23px 26px 18px;border-bottom:1px solid #e2e9e6;background:rgba(255,255,255,.97)}
.confirmation-dialog-header h2{margin:3px 0 0;font-size:24px}.confirmation-close{width:40px;height:40px;border:1px solid #d3dfda;border-radius:10px;background:#f8faf9;color:#3b5660;font-size:25px;line-height:1;cursor:pointer}
.confirmation-close:hover{background:#edf4f1}.confirmation-progress{padding:16px 26px 0;color:var(--muted);font-size:13px;font-weight:750}
.confirmation-progress-track{height:7px;margin-top:9px;overflow:hidden;border-radius:999px;background:#e5ece9}.confirmation-progress-track span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#52788b,#5d8d7e);transition:width .22s ease}
.confirmation-dialog .confirmation-form{padding:20px 26px 26px}.confirmation-shell.is-guided .confirmation-question{display:none;border:0;padding:2px 0 0;background:transparent}.confirmation-shell.is-guided .confirmation-question.is-active{display:grid}
.confirmation-question legend{float:left;width:100%;margin:8px 0 0;padding:0;color:#29424c;font-size:21px;line-height:1.25}.confirmation-reason{margin:0;color:var(--muted)}
.confirmation-dialog-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:4px;border-top:1px solid #e5ebe8}.confirmation-dialog-actions .button:first-child{margin-right:auto}
.confirmation-ready-note{margin:4px 0 0}.confirmation-modal-open{overflow:hidden}
@media(max-width:650px){.confirmation-launch{display:grid}.confirmation-launch .button{width:100%}.confirmation-shell.is-guided>.confirmation-modal.is-open{padding:0;align-items:end}.confirmation-dialog{max-height:92vh;border-radius:20px 20px 0 0}.confirmation-dialog-header,.confirmation-progress,.confirmation-dialog .confirmation-form{padding-left:19px;padding-right:19px}.confirmation-dialog-actions{display:grid;grid-template-columns:1fr 1fr}.confirmation-dialog-actions .button{width:100%}.confirmation-dialog-actions [data-confirmation-submit]{grid-column:1/-1}.confirmation-dialog-actions .button:first-child{margin:0}}

/* v0.9.10 private beta feedback */
.alert.success{background:var(--greenbg);border:1px solid #a9dbc7;color:var(--green)}
.feedback-box{border-top:5px solid var(--blue)}
.rating-options{display:grid;grid-template-columns:repeat(5,minmax(46px,1fr));gap:10px;max-width:440px}
.rating-option{display:block;cursor:pointer}
.rating-option input{position:absolute;opacity:0;pointer-events:none}
.rating-option span{display:grid;place-items:center;padding:10px;border:1px solid #bdc9d7;border-radius:9px;background:white;font-weight:800}
.rating-option input:checked+span{background:var(--navy);border-color:var(--navy);color:white;box-shadow:0 0 0 3px rgba(46,111,149,.16)}
.rating-option input:focus-visible+span{outline:3px solid rgba(46,111,149,.28)}
.rating-labels{display:flex;justify-content:space-between;max-width:440px;color:var(--muted);font-size:12px}

/* v0.9.12 responsive background-generation progress */
.generation-hero{align-items:center}
.generation-spinner{width:58px;height:58px;border:6px solid #d9e4ee;border-top-color:var(--blue);border-radius:50%;animation:generation-spin .9s linear infinite}
@keyframes generation-spin{to{transform:rotate(360deg)}}
.generation-track{height:12px;background:#e5ebf2;border-radius:999px;overflow:hidden;margin-bottom:1.25rem}
.generation-track span{display:block;width:18%;height:100%;background:linear-gradient(90deg,var(--blue),#36a881);border-radius:inherit;transition:width .5s ease}
.generation-steps{display:grid;grid-template-columns:repeat(6,1fr);gap:.75rem;padding:0;list-style:none;counter-reset:generation}
.generation-steps li{color:var(--muted);font-weight:700}
.generation-steps li::before{counter-increment:generation;content:counter(generation);display:grid;place-items:center;width:30px;height:30px;margin-bottom:.45rem;border-radius:50%;background:#e5ebf2;color:var(--muted)}
.generation-steps li.active{color:var(--navy)}
.generation-steps li.active::before{background:var(--navy);color:#fff}
@media(max-width:700px){.generation-steps{grid-template-columns:1fr}.generation-steps li{display:flex;align-items:center;gap:.65rem}.generation-steps li::before{margin:0;flex:0 0 auto}.generation-spinner{width:44px;height:44px}}

/* v0.9.14 ATS-safe resume template selector */
.template-picker>.muted{margin-top:0}
.template-recommendation{display:grid;gap:.3rem;margin:1rem 0;padding:1rem 1.1rem;border-left:4px solid var(--teal);border-radius:0 10px 10px 0;background:#effaf7;color:var(--ink)}
.template-recommendation span{color:var(--muted);font-size:.9rem}
.template-auto,.template-option{display:flex;align-items:center;gap:.75rem;padding:.8rem;border:1px solid #cbd5e1;border-radius:10px;background:#fff;cursor:pointer}
.template-auto{max-width:520px;margin-bottom:1rem}
.template-auto input,.template-option input{width:auto;accent-color:var(--blue)}
.template-auto span:last-child,.template-option span:last-child{display:grid;gap:.15rem}
.template-auto small,.template-option small{color:var(--muted);font-weight:400}
.template-category-tabs{display:flex;gap:.55rem;overflow-x:auto;padding:.15rem .1rem .8rem;scrollbar-width:thin}
.template-category-tab{flex:0 0 auto;padding:.7rem .9rem;border:1px solid #cbd5e1;border-radius:999px;background:#fff;color:var(--navy);font:inherit;font-size:.88rem;font-weight:800;cursor:pointer}
.template-category-tab:hover{border-color:var(--blue);background:var(--sky)}
.template-category-tab.is-active{border-color:var(--navy);background:var(--navy);color:#fff;box-shadow:0 7px 16px rgba(16,42,67,.16)}
.template-category-tab:focus-visible{outline:3px solid rgba(46,111,149,.25);outline-offset:2px}
.template-groups{display:grid;gap:1rem}
.template-group{border-top:1px solid #e3e8ef;padding-top:.8rem}
.template-group h3{margin:.1rem 0 .65rem}
.template-group>p{margin:-.25rem 0 .75rem;color:var(--muted);font-size:.86rem}
.template-options{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr));gap:.65rem}
.template-option{align-items:flex-start;min-width:0}
.template-option:has(input:checked),.template-auto:has(input:checked){border-color:var(--blue);background:var(--sky);box-shadow:0 0 0 3px rgba(46,111,149,.12)}
.template-swatch{width:10px;min-width:10px;height:42px;border-radius:6px;background:var(--template-accent)}
.applied-template-preview{margin-top:1.4rem;padding-top:1.2rem;border-top:1px solid var(--line)}
.applied-template-preview .section-heading{margin-bottom:.8rem}
.cv-pdf-preview{display:block;width:100%;height:min(76vh,820px);min-height:520px;border:1px solid var(--line);border-radius:14px;background:#eef2f6;box-shadow:var(--shadow-soft)}
@media(max-width:1050px){.template-options{grid-template-columns:repeat(2,minmax(180px,1fr))}}
@media(max-width:620px){.template-options{grid-template-columns:1fr}.cv-pdf-preview{min-height:460px;height:65vh}}

/* Accessible password visibility controls */
.password-field{position:relative;display:block;margin-top:.35rem}
.password-field input{width:100%;padding-right:5.2rem;margin-top:0}
.password-toggle{position:absolute;right:.45rem;top:50%;transform:translateY(-50%);min-width:4.1rem;padding:.5rem .65rem;border:1px solid #aebdca;border-radius:7px;background:#fff;color:var(--navy);font:inherit;font-size:.9rem;font-weight:800;cursor:pointer}
.password-toggle:hover{background:var(--sky)}
.password-toggle:focus-visible{outline:3px solid rgba(46,111,149,.28);outline-offset:2px}
.form-divider{display:flex;align-items:center;gap:12px;margin:2px 0;color:var(--muted);font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.1em}
.form-divider::before,.form-divider::after{content:"";height:1px;flex:1;background:var(--line)}
.form-divider span{padding:0 5px}

/* v0.9.16 professional visual refresh */
:root{--navy:#102a43;--navy-2:#183f63;--blue:#1677a6;--teal:#14866d;--sky:#edf7fb;--ink:#132238;--muted:#617187;--line:#d8e2eb;--bg:#f5f8fb;--radius:18px;--shadow:0 18px 50px rgba(16,42,67,.08);--shadow-soft:0 8px 24px rgba(16,42,67,.06)}
html{scroll-behavior:smooth}
body{min-height:100vh;background:radial-gradient(circle at 12% 3%,rgba(68,186,194,.11),transparent 27rem),radial-gradient(circle at 92% 14%,rgba(22,119,166,.08),transparent 25rem),var(--bg);font-size:15px}
a{color:var(--blue);text-underline-offset:3px}
.topbar{height:auto;min-height:76px;padding:0 24px;background:linear-gradient(112deg,#0d2439 0%,#123958 64%,#15566a 100%);box-shadow:0 7px 25px rgba(10,31,49,.18)}
.topbar-inner{width:min(1180px,100%);min-height:76px;margin:auto;display:flex;align-items:center;gap:14px}
.brand{display:inline-flex;align-items:center;gap:11px;font-size:inherit}
.brand-mark{width:42px;height:42px;display:block;flex:0 0 auto;object-fit:contain;border-radius:11px;filter:drop-shadow(0 7px 12px rgba(0,0,0,.2))}
.brand-copy{display:grid;line-height:1.08}.brand-copy strong{font-size:20px;letter-spacing:-.02em}.brand-copy small{margin-top:4px;color:#bdd0df;font-size:10px;letter-spacing:.06em;text-transform:uppercase}
.version-badge{padding:5px 9px;border:1px solid rgba(255,255,255,.2);border-radius:999px;color:#d8e9f3;background:rgba(255,255,255,.08);font-size:11px;font-weight:800}
.tagline{margin-left:auto;color:#d4e4ee;font-size:13px}.account-summary{display:flex;align-items:center;gap:8px;margin-left:auto}.account-summary a{padding:8px 10px;border-radius:8px;color:#fff;text-decoration:none;font-weight:750}.account-summary a:hover{background:rgba(255,255,255,.11)}.account-email{max-width:230px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#c5d8e4;font-size:12px}
.shell{max-width:1180px;margin:42px auto;padding:0 24px 64px}
.hero{position:relative;grid-template-columns:minmax(0,1.4fr) minmax(270px,.6fr);gap:38px;padding:34px;margin-bottom:26px;overflow:hidden;border:1px solid rgba(188,210,224,.75);border-radius:24px;background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(240,249,250,.9));box-shadow:var(--shadow)}
.hero::after{content:"";position:absolute;right:-90px;top:-130px;width:300px;height:300px;border-radius:50%;background:linear-gradient(145deg,rgba(59,190,167,.15),rgba(33,130,172,.08));pointer-events:none}
.hero>div{position:relative;z-index:1}.hero h1{margin:7px 0 14px;color:#10263d;font-size:clamp(34px,4.4vw,55px);letter-spacing:-.045em}.hero p{margin-bottom:0;color:#4f6278;line-height:1.65}
.hero-badges{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px}.hero-badges span,.secure-label{padding:7px 11px;border:1px solid #c9e4e0;border-radius:999px;background:#f2fbf8;color:#176850;font-size:11px;font-weight:850}
.workflow-card{padding:20px;border:1px solid #d6e4ec;border-radius:18px;background:rgba(255,255,255,.8);box-shadow:var(--shadow-soft)}
.workflow-card>.eyebrow{margin-bottom:13px}.workflow-mini{gap:7px}.workflow-mini span{display:flex;align-items:center;gap:9px;padding:8px 10px;border:0;background:transparent;color:#3e5369;font-weight:750}.workflow-mini b{width:25px;height:25px;display:grid;place-items:center;border-radius:8px;background:#e9f5f7;color:#147661;font-size:11px}
.card{border-color:rgba(203,216,227,.9);border-radius:var(--radius);padding:28px;box-shadow:var(--shadow-soft)}
.form-card{padding:32px}.form-heading{padding-bottom:20px;border-bottom:1px solid #e5ebf0}.form-heading h2{margin:4px 0 0;font-size:25px;letter-spacing:-.02em}
fieldset{border-color:#dbe5ed;border-radius:15px;padding:21px;background:#fcfdfe}legend{color:#1b3853;font-size:15px}
input,textarea,select{border-color:#b9c8d5;border-radius:11px;padding:12px 13px;transition:border-color .16s,box-shadow .16s,background .16s}input:hover,textarea:hover,select:hover{border-color:#8fa7ba}input:focus,textarea:focus,select:focus{outline:0;border-color:var(--blue);box-shadow:0 0 0 4px rgba(22,119,166,.13)}
.field-grid.two>label:has(input[type="radio"]){position:relative;display:grid;grid-template-columns:auto 1fr;padding:16px;border:1px solid #d5e0e8;border-radius:13px;background:#fff;cursor:pointer;transition:.16s}.field-grid.two>label:has(input[type="radio"]):hover{border-color:#93b3c5;transform:translateY(-1px)}.field-grid.two>label:has(input[type="radio"]):has(input:checked){border-color:#2688a7;background:#effafb;box-shadow:0 0 0 3px rgba(38,136,167,.1)}.field-grid.two>label>input[type="radio"]{width:auto;align-self:start;margin-top:3px;accent-color:var(--teal)}.field-grid.two>label:has(input[type="radio"]) small{grid-column:2}
.button{min-height:44px;border-radius:11px;padding:12px 19px;transition:transform .16s,box-shadow .16s,filter .16s}.button:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.04)}.button.primary{background:linear-gradient(120deg,var(--navy),#17617b);box-shadow:0 9px 20px rgba(16,42,67,.18)}.button.secondary{background:linear-gradient(120deg,#176e91,#17836d)}.button:focus-visible{outline:3px solid rgba(22,119,166,.3);outline-offset:3px}
.application-item{padding:4px 0}.application-row{border-radius:10px;padding:16px 12px;transition:background .15s,transform .15s}.application-row:hover{background:#f6fafc;transform:translateX(2px)}
.stepper{padding:5px;border:1px solid #d9e3eb;border-radius:999px;background:#fff;box-shadow:var(--shadow-soft)}.stepper span,.stepper a{border:0;border-radius:999px!important;background:transparent}.stepper .active{background:var(--navy)}
.auth-layout{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(430px,.78fr);max-width:1050px;margin:56px auto 30px;border:1px solid rgba(198,214,225,.9);border-radius:25px;overflow:hidden;background:#fff;box-shadow:0 28px 70px rgba(16,42,67,.13)}
.auth-intro{position:relative;overflow:hidden;padding:54px;background:linear-gradient(145deg,#102a43,#154c64 72%,#176d70);color:#fff}.auth-intro::after{content:"";position:absolute;width:270px;height:270px;right:-100px;bottom:-110px;border:1px solid rgba(255,255,255,.17);border-radius:50%;box-shadow:0 0 0 44px rgba(255,255,255,.035),0 0 0 88px rgba(255,255,255,.025)}.auth-intro .eyebrow{color:#7edbc5}.auth-intro h1{max-width:470px;margin:13px 0 18px;font-size:clamp(38px,4vw,56px);line-height:1.03;letter-spacing:-.045em}.auth-intro>p:not(.eyebrow){max-width:510px;color:#d2e2eb;font-size:17px;line-height:1.65}.trust-list{display:grid;gap:19px;margin-top:34px}.trust-list>div{display:grid;grid-template-columns:30px 1fr;gap:11px}.trust-list>div>span{width:27px;height:27px;display:grid;place-items:center;border-radius:8px;background:rgba(100,221,189,.17);color:#77e1c5;font-weight:900}.trust-list p{display:grid;margin:0}.trust-list strong{font-size:14px}.trust-list small{margin-top:3px;color:#bed2df;line-height:1.45}.trust-note{position:relative;z-index:1;display:inline-flex;align-items:center;gap:8px;margin-top:40px;padding:9px 12px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:rgba(255,255,255,.07);color:#dbeaf1;font-size:11px;font-weight:750}
.auth-card{align-self:stretch;margin:0;padding:49px 45px;border:0;border-radius:0;box-shadow:none}.auth-card h1{margin:7px 0 7px;font-size:31px;letter-spacing:-.03em}.auth-card hr{margin:28px 0;border:0;border-top:1px solid #e0e8ee}.auth-card h2{font-size:20px}
.alert{border-radius:12px}.alert.error{box-shadow:inset 4px 0 #c94040}.alert.success{box-shadow:inset 4px 0 #27916f}
.footer{padding:30px 24px 42px}.footer-inner{width:min(1132px,100%);margin:auto;display:flex;justify-content:space-between;gap:22px;padding-top:24px;border-top:1px solid #dbe4eb;text-align:left}.footer-inner>div{display:grid}.footer-inner strong{color:#213c55}.footer-inner span{margin-top:3px}.footer-inner nav{display:flex;gap:18px}.footer a{color:#526b7f;text-decoration:none}.footer a:hover{text-decoration:underline}
@media(max-width:850px){.topbar-inner{flex-wrap:wrap;padding:12px 0}.tagline,.account-email{display:none}.shell{margin-top:24px;padding-inline:14px}.hero{grid-template-columns:1fr;padding:25px}.workflow-card{display:none}.form-card{padding:20px}.auth-layout{grid-template-columns:1fr;margin:24px auto}.auth-intro{padding:34px}.auth-intro h1{font-size:38px}.auth-card{padding:34px}.footer-inner{display:grid}.footer-inner nav{flex-wrap:wrap}}
@media(max-width:520px){.brand-copy small,.version-badge{display:none}.account-summary{gap:1px}.account-summary a{padding:7px}.hero h1{font-size:34px}.hero{padding:21px;border-radius:18px}.auth-intro{padding:28px 23px}.auth-intro h1{font-size:34px}.trust-list{gap:14px}.auth-card{padding:29px 22px}.field-grid.two{grid-template-columns:1fr}.rating-options{gap:6px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}

/* v0.9.16-rc11 separate résumé design, preview and download studio */
.design-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center}
.design-journey{display:grid;grid-template-columns:repeat(4,auto);gap:10px}
.design-journey span{display:grid;justify-items:center;gap:6px;color:var(--muted);font-size:11px;font-weight:800}
.design-journey b{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#dcece4;color:#356b59}
.template-studio-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(310px,.5fr);align-items:start;gap:22px}
.template-gallery{min-width:0}.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.section-heading h2{margin:3px 0 0}
.pill{display:inline-flex;padding:6px 10px;border-radius:999px;background:#edf5f2;color:#416e61;font-size:11px;font-weight:850;white-space:nowrap}
.template-card{position:relative;display:grid;gap:9px;padding:10px;border:1px solid #d5dfdb;border-radius:13px;background:#fff;cursor:pointer;transition:border-color .16s,box-shadow .16s,transform .16s}
.template-card:hover{transform:translateY(-2px);border-color:#93aca4;box-shadow:var(--shadow-soft)}
.template-card:has(input:checked){border-color:var(--template-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--template-accent) 18%,transparent)}
.template-card>input{position:absolute;top:9px;right:9px;width:auto;z-index:2;accent-color:var(--template-accent)}
.template-card-copy{display:grid;gap:2px;min-width:0}.template-card-copy strong{padding-right:20px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.template-card-copy small{color:var(--muted);font-size:10px}
.resume-miniature{position:relative;display:grid;grid-template-columns:2fr .8fr;grid-template-rows:28px 95px;height:123px;overflow:hidden;border:1px solid #dbe3df;border-radius:5px;background:#fff;box-shadow:0 5px 13px rgba(38,63,74,.08)}
.mini-header{grid-column:1/-1;display:flex;align-items:center;gap:5px;padding:6px 8px;border-top:5px solid var(--template-accent);background:#fff}.mini-header i{display:block;height:3px;border-radius:3px;background:var(--template-accent)}.mini-header i:first-child{width:38%}.mini-header i:nth-child(2){width:22%;opacity:.45}.mini-header b{margin-left:auto;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--template-accent);color:#fff;font-size:7px}
.mini-body,.mini-sidebar{display:grid;align-content:start;gap:6px;padding:9px}.mini-sidebar{background:var(--template-fill)}.mini-body i,.mini-sidebar i{height:3px;border-radius:4px;background:#b9c7c3}.mini-body i:nth-child(3n+1){width:82%;background:var(--template-accent)}.mini-sidebar i:nth-child(odd){width:75%;background:var(--template-accent)}
.resume-miniature.layout-single{grid-template-columns:1fr}.resume-miniature.layout-single .mini-sidebar{display:none}.resume-miniature.layout-executive{grid-template-columns:1fr}.resume-miniature.layout-executive .mini-sidebar{display:none}.resume-miniature.layout-executive .mini-header{justify-content:center}
.resume-miniature.layout-single_compact,.resume-miniature.layout-single_band,.resume-miniature.layout-executive_band,.resume-miniature.layout-banner,.resume-miniature.layout-photo_banner{grid-template-columns:1fr}
.resume-miniature.layout-single_compact .mini-sidebar,.resume-miniature.layout-single_band .mini-sidebar,.resume-miniature.layout-executive_band .mini-sidebar,.resume-miniature.layout-banner .mini-sidebar,.resume-miniature.layout-photo_banner .mini-sidebar{display:none}
.resume-miniature.layout-single_compact{grid-template-rows:22px 101px}.resume-miniature.layout-single_band .mini-header,.resume-miniature.layout-executive_band .mini-header{background:var(--template-fill);border-top-width:8px}.resume-miniature.layout-executive_band .mini-header{justify-content:center}
.resume-miniature.layout-sidebar_left,.resume-miniature.layout-photo_left{grid-template-columns:.8fr 2fr}.resume-miniature.layout-sidebar_left .mini-body,.resume-miniature.layout-photo_left .mini-body{grid-column:2}.resume-miniature.layout-sidebar_left .mini-sidebar,.resume-miniature.layout-photo_left .mini-sidebar{grid-column:1;grid-row:2}
.resume-miniature.layout-split{grid-template-columns:1fr 1fr}.resume-miniature.layout-banner .mini-body,.resume-miniature.layout-photo_banner .mini-body{grid-template-columns:repeat(2,1fr);padding-inline:13px}.resume-miniature.layout-photo_banner .mini-header b{border-radius:5px}
.example-preview{position:sticky;top:20px;min-width:0}.example-preview h2{margin:4px 0 0;font-size:20px}.large-resume-example{margin-top:17px;aspect-ratio:.707;display:grid;grid-template-rows:auto 1fr;overflow:hidden;border:1px solid #cedbd6;border-radius:7px;background:#fff;box-shadow:0 15px 38px rgba(38,63,74,.14)}
.large-resume-example header{display:flex;justify-content:space-between;gap:10px;padding:20px;border-top:8px solid var(--preview-accent)}.large-resume-example header div{display:grid;gap:4px}.large-resume-example header strong{color:var(--preview-accent);font-size:18px}.large-resume-example header span{font-size:10px;font-weight:800}.large-resume-example header small{color:#718087;font-size:7px}.large-resume-example header>b{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--preview-accent);color:#fff;font-size:12px}
.large-resume-example main{display:grid;grid-template-columns:1.7fr .8fr;min-height:0}.large-resume-example section,.large-resume-example aside{display:grid;align-content:start;gap:8px;padding:16px}.large-resume-example aside{background:var(--preview-fill)}.large-resume-example h4{margin:3px 0 0;color:var(--preview-accent);font-size:8px;text-transform:uppercase;letter-spacing:.08em}.large-resume-example i{display:block;width:100%;height:4px;border-radius:4px;background:#d4ddda}.large-resume-example i:nth-of-type(even){width:74%}
.large-resume-example.layout-single main,.large-resume-example.layout-executive main{grid-template-columns:1fr}.large-resume-example.layout-single aside,.large-resume-example.layout-executive aside{display:none}.large-resume-example.layout-executive header{text-align:center;justify-content:center}
.large-resume-example.layout-single_compact main,.large-resume-example.layout-single_band main,.large-resume-example.layout-executive_band main,.large-resume-example.layout-banner main,.large-resume-example.layout-photo_banner main{grid-template-columns:1fr}.large-resume-example.layout-single_compact aside,.large-resume-example.layout-single_band aside,.large-resume-example.layout-executive_band aside,.large-resume-example.layout-banner aside,.large-resume-example.layout-photo_banner aside{display:none}.large-resume-example.layout-single_band header,.large-resume-example.layout-executive_band header{background:var(--preview-fill);color:#172b4d}.large-resume-example.layout-executive_band header{text-align:center;justify-content:center}.large-resume-example.layout-sidebar_left main,.large-resume-example.layout-photo_left main{grid-template-columns:.8fr 1.7fr}.large-resume-example.layout-sidebar_left main section,.large-resume-example.layout-photo_left main section{grid-column:2}.large-resume-example.layout-sidebar_left main aside,.large-resume-example.layout-photo_left main aside{grid-column:1;grid-row:1}.large-resume-example.layout-split main{grid-template-columns:1fr 1fr}.large-resume-example.layout-photo_banner header b{border-radius:8px}
.photo-upload{margin-top:18px;padding:16px;border:1px dashed #a8bbb4;border-radius:12px;background:#f6faf8}.photo-upload input{margin-top:8px}.photo-upload small{display:block;margin-top:7px;color:var(--muted);line-height:1.5}
.sticky-template-action{position:sticky;bottom:12px;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:14px;margin:20px -8px -8px;padding:13px 15px;border:1px solid #cfddd7;border-radius:13px;background:rgba(255,255,255,.96);box-shadow:0 14px 34px rgba(38,63,74,.14);backdrop-filter:blur(8px)}.sticky-template-action span{font-weight:850}
.applied-template-preview{margin-top:22px}.download-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.download-grid .button{justify-content:center;text-align:center}
@media(max-width:980px){.template-studio-grid{grid-template-columns:1fr}.example-preview{position:static;max-width:470px;margin-inline:auto}.design-hero{grid-template-columns:1fr}.design-journey{margin-top:16px;justify-content:start}.download-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.design-journey{grid-template-columns:repeat(2,auto)}.template-options{grid-template-columns:repeat(2,minmax(0,1fr))}.sticky-template-action{display:grid}.sticky-template-action .button{width:100%}.download-grid{grid-template-columns:1fr}}

/* v0.9.16 calm, professional visual refinement */
:root{
  --navy:#263f4a;
  --navy-2:#345562;
  --blue:#52788b;
  --teal:#527f78;
  --sky:#eef5f2;
  --ink:#26353d;
  --muted:#687881;
  --line:#dbe4e0;
  --paper:#ffffff;
  --bg:#f6f7f4;
  --green:#3f7763;
  --greenbg:#edf6f0;
  --amber:#8a652d;
  --amberbg:#fbf6e9;
  --red:#994c4c;
  --redbg:#fbefef;
  --shadow:0 22px 58px rgba(38,63,74,.09);
  --shadow-soft:0 9px 28px rgba(38,63,74,.065);
}
body{
  overflow-x:hidden;
  background:
    radial-gradient(circle at 8% 4%,rgba(143,174,157,.16),transparent 30rem),
    radial-gradient(circle at 94% 12%,rgba(105,134,155,.11),transparent 28rem),
    linear-gradient(180deg,#fafbf8 0%,var(--bg) 48%,#f3f6f4 100%);
}
.topbar{
  background:linear-gradient(112deg,#263f4a 0%,#31545d 64%,#527f78 100%);
  box-shadow:0 7px 24px rgba(38,63,74,.16);
}
.brand-mark{
  background:transparent;
  box-shadow:none;
}
.brand-copy small,.tagline,.account-email{color:#d8e5e3}
.version-badge{color:#edf4f2;background:rgba(255,255,255,.1)}
.shell{width:100%}
.hero{
  border-color:#d9e5df;
  background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(241,247,243,.94));
}
.hero::after{background:linear-gradient(145deg,rgba(143,174,157,.2),rgba(105,134,155,.09))}
.hero h1{color:#263f4a}
.hero p{color:#596c75}
.hero-badges span,.secure-label{border-color:#d1e3da;background:#f2f8f4;color:#416e61}
.workflow-card{border-color:#dde7e3;background:rgba(255,255,255,.86)}
.workflow-mini b{background:#e8f1ed;color:#477568}
.card{border-color:#dde5e2;background:rgba(255,255,255,.98)}
.form-heading{border-color:#e7ece9}
fieldset{border-color:#dce6e2;background:#fdfefd}
legend{color:#35535d}
input,textarea,select{border-color:#bdcbc6;background:#fff}
input:hover,textarea:hover,select:hover{border-color:#8da79e}
input:focus,textarea:focus,select:focus{border-color:var(--teal);box-shadow:0 0 0 4px rgba(82,127,120,.14)}
.field-grid.two>label:has(input[type="radio"]){border-color:#d9e3df}
.field-grid.two>label:has(input[type="radio"]):hover{border-color:#9eb6ad}
.field-grid.two>label:has(input[type="radio"]):has(input:checked){border-color:#70988e;background:#f0f6f3;box-shadow:0 0 0 3px rgba(82,127,120,.1)}
.button.primary{background:linear-gradient(120deg,#294653,#426d70);box-shadow:0 9px 20px rgba(38,63,74,.17)}
.button.secondary{background:linear-gradient(120deg,#557d8c,#56867b)}
.button.ghost{border-color:#cedbd6;background:#fbfcfb;color:#35515b}
.button:focus-visible{outline-color:rgba(82,127,120,.34)}
.application-row:hover{background:#f5f8f6}
.stepper{border-color:#dce5e1;background:rgba(255,255,255,.94)}
.stepper .active{background:#365864}
.stepper .done{background:#dcece4;color:#356b59}
.status-panel.ready{border-color:#b9d8c8;background:#edf6f0}
.status-panel.blocked{border-color:#e5d3a9;background:#fbf6e9;color:#785923}
.source-text{background:#f8faf8}
.rendered-doc{border-color:#dce4e1;box-shadow:0 10px 28px rgba(38,63,74,.055)}
.rendered-doc h2{border-color:#3c5e69}
.auth-layout{
  width:min(1050px,100%);
  grid-template-columns:minmax(0,1.04fr) minmax(360px,.76fr);
  border-color:#d8e3de;
  box-shadow:0 28px 70px rgba(38,63,74,.13);
}
.auth-intro{background:linear-gradient(145deg,#29434e,#3a6267 70%,#5d8a7d)}
.auth-intro .eyebrow{color:#c7e0d5}
.auth-intro>p:not(.eyebrow),.trust-list small{color:#dce8e5}
.trust-list>div>span{background:rgba(218,238,229,.16);color:#d3eadf}
.trust-note{color:#edf5f1;background:rgba(255,255,255,.08)}
.auth-card{min-width:0}
.password-toggle{border-color:#b9c9c3;color:#35565d}
.password-toggle:hover{background:#eef5f2}
.footer-inner{border-color:#dce5e1}
.footer-inner strong{color:#35515b}
.footer a{color:#60747b}
@media(max-width:850px){
  .auth-layout{grid-template-columns:minmax(0,1fr);margin:24px auto}
  .auth-intro,.auth-card{min-width:0}
}
@media(max-width:520px){
  .topbar{padding-inline:14px}
  .topbar-inner{min-width:0}
  .brand,.brand-copy,.account-summary{min-width:0}
  .auth-layout{border-radius:19px}
  .auth-intro h1{overflow-wrap:anywhere}
  .auth-card h1{font-size:28px}
  .password-field{min-width:0}
  .footer{padding-inline:14px}
}

/* Reliable résumé preview when server-side DOCX-to-PDF conversion is unavailable. */
.browser-resume-preview{position:relative;max-width:850px;min-height:900px;margin:18px auto 0;background:#fff;border:1px solid #d8e0e8;border-top:10px solid var(--preview-accent,#17324f);box-shadow:0 16px 38px rgba(16,37,63,.12);overflow:hidden}
.browser-resume-preview::after{content:"";position:absolute;inset:0 auto 0 0;width:10px;background:var(--preview-fill,#eef3f7);pointer-events:none}
.browser-preview-content{position:relative;z-index:1;border:0;min-height:900px;padding:44px 52px 60px}
.browser-preview-content h2{color:var(--preview-accent,#17324f);border-color:var(--preview-accent,#17324f)}
.browser-preview-content h3{color:var(--preview-accent,#17324f)}
.browser-preview-photo{position:absolute;z-index:2;right:48px;top:34px;width:96px;height:112px;border:4px solid #fff;border-radius:14px;background:var(--preview-fill,#eef3f7);box-shadow:0 4px 18px rgba(16,37,63,.18);display:grid;place-items:center;overflow:hidden;color:var(--preview-accent,#17324f);font-weight:800}
.browser-preview-photo img{width:100%;height:100%;object-fit:cover}
.browser-resume-preview:has(.browser-preview-photo) .browser-preview-content>h2:first-child{padding-right:130px}
.browser-resume-preview.layout-sidebar_left::after,.browser-resume-preview.layout-photo_left::after{width:31%;background:linear-gradient(180deg,var(--preview-fill,#eef3f7),#fff 92%);opacity:1}
.browser-resume-preview.layout-sidebar_left .browser-preview-content,.browser-resume-preview.layout-photo_left .browser-preview-content{padding-left:34%}
.browser-resume-preview.layout-sidebar::after,.browser-resume-preview.layout-photo_sidebar::after{width:28%;left:auto;right:0;background:linear-gradient(180deg,var(--preview-fill,#eef3f7),#fff 92%);opacity:1}
.browser-resume-preview.layout-sidebar .browser-preview-content,.browser-resume-preview.layout-photo_sidebar .browser-preview-content{padding-right:31%}
.browser-resume-preview.layout-split::after{width:50%;background:linear-gradient(180deg,var(--preview-fill,#eef3f7),#fff 92%);opacity:.65}
.browser-resume-preview.layout-split .browser-preview-content{column-count:2;column-gap:34px;padding-left:34px;padding-right:34px}
.browser-resume-preview.layout-split .browser-preview-content>*{break-inside:avoid}
.browser-resume-preview.layout-banner,.browser-resume-preview.layout-photo_banner{border-top:0}
.browser-resume-preview.layout-banner::before,.browser-resume-preview.layout-photo_banner::before{content:"";display:block;height:92px;background:linear-gradient(135deg,var(--preview-accent,#17324f),color-mix(in srgb,var(--preview-accent,#17324f) 62%,#fff))}
.browser-resume-preview.layout-banner::after,.browser-resume-preview.layout-photo_banner::after{width:100%;height:9px;top:92px;bottom:auto;background:var(--preview-fill,#eef3f7);opacity:1}
.browser-resume-preview.layout-banner .browser-preview-content,.browser-resume-preview.layout-photo_banner .browser-preview-content{padding-top:28px}
.browser-resume-preview.layout-executive,.browser-resume-preview.layout-executive_band{text-align:center}
.browser-resume-preview.layout-executive .browser-preview-content,.browser-resume-preview.layout-executive_band .browser-preview-content{padding-left:76px;padding-right:76px}
.browser-resume-preview.layout-single_band,.browser-resume-preview.layout-executive_band{border-top:0}
.browser-resume-preview.layout-single_band::before,.browser-resume-preview.layout-executive_band::before{content:"";display:block;height:70px;background:var(--preview-fill,#eef3f7);border-bottom:8px solid var(--preview-accent,#17324f)}
.preview-note{text-align:center;color:var(--muted);font-size:13px;margin:12px 0 0}
@media(max-width:720px){
  .browser-resume-preview{min-height:650px}
  .browser-preview-content{min-height:650px;padding:28px 22px 40px}
  .browser-preview-photo{width:70px;height:82px;right:20px;top:24px}
  .browser-resume-preview:has(.browser-preview-photo) .browser-preview-content>h2:first-child{padding-right:88px}
}
.ats-panel { border-top: 4px solid var(--navy, #17324d); }
.ats-score { background: #e8f3ef; color: #17634d; border-radius: 999px; padding: .45rem .75rem; font-weight: 700; font-size: .85rem; }
.ats-check-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; margin-top: 1rem; }
.ats-check { display: flex; gap: .65rem; padding: .75rem; border: 1px solid #dce5ec; border-radius: .7rem; background: #fbfcfd; }
.ats-check.is-review { border-color: #f0d59a; background: #fffaf0; }
.ats-icon { flex: 0 0 1.5rem; width: 1.5rem; height: 1.5rem; border-radius: 50%; display: grid; place-items: center; font-weight: 800; color: #fff; background: #2f8f71; }
.is-review .ats-icon { background: #c7861b; }
.ats-check strong { display: block; font-size: .92rem; }
.ats-check p { margin: .2rem 0 0; color: #5c6b78; font-size: .82rem; line-height: 1.35; }
.ats-check-copy { min-width: 0; flex: 1; }
.ats-check-title { display: flex; align-items: center; gap: .4rem; flex-wrap: wrap; }
.ats-category, .ats-priority { border-radius: 999px; padding: .15rem .45rem; font-size: .68rem; font-weight: 750; letter-spacing: .02em; }
.ats-category { background: #eaf0f5; color: #40566a; }
.ats-priority { background: #f8e1d7; color: #93462f; }
.ats-check .ats-action { margin-top: .45rem; padding-top: .45rem; border-top: 1px solid #ecd9ad; color: #604b20; }
@media (max-width: 760px) { .ats-check-grid { grid-template-columns: 1fr; } }

.premium-recommendation{align-items:center;justify-content:space-between;gap:1.25rem;background:linear-gradient(135deg,#f7fbff,#f5f7fb);border-color:#cbd9e8}.premium-recommendation>div:first-child{display:grid;gap:.25rem}.skill-focus{display:grid;gap:.3rem;min-width:210px}.skill-focus small{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:700}.skill-focus div{display:flex;gap:.3rem;flex-wrap:wrap}.skill-focus span{font-size:.72rem;padding:.25rem .45rem;border-radius:999px;background:#fff;border:1px solid #d5e0ec;color:var(--ink);white-space:nowrap}.template-card-copy em{display:block;color:#245b78;font-size:.7rem;font-style:normal;font-weight:700;margin-top:.25rem}@media (max-width:700px){.premium-recommendation{align-items:stretch;flex-direction:column}.skill-focus{min-width:0}}

/* RC12.1 product experience refresh */
:root{
  --brand-950:#102d35;
  --brand-900:#173e47;
  --brand-700:#286d6d;
  --brand-500:#4e9a87;
  --brand-100:#e8f4ef;
  --warm:#f5efe4;
}
body{background:linear-gradient(180deg,#f8faf7 0%,#f3f7f4 46%,#f7f8f6 100%)}
.skip-link{position:fixed;z-index:2000;left:16px;top:10px;transform:translateY(-150%);padding:10px 14px;border-radius:9px;background:#fff;color:var(--brand-950);font-weight:800;box-shadow:var(--shadow)}
.skip-link:focus{transform:translateY(0)}
.topbar{background:rgba(16,45,53,.97);border-bottom:1px solid rgba(255,255,255,.11);box-shadow:0 8px 28px rgba(15,42,49,.13);backdrop-filter:blur(16px)}
.brand-mark{width:46px;height:46px}.brand-copy strong{font-size:21px}.brand-copy small{color:#bad2cc}
.account-summary a{border:1px solid transparent}.account-summary a:hover{border-color:rgba(255,255,255,.15)}
.shell{max-width:1240px;margin-top:36px}
.hero{grid-template-columns:minmax(0,1.35fr) minmax(310px,.65fr);min-height:350px;padding:48px 50px;border:1px solid #dbe7e1;border-radius:30px;background:linear-gradient(125deg,#fff 0%,#f5faf7 62%,#eaf4ee 100%);box-shadow:0 24px 70px rgba(29,74,69,.1)}
.hero::before{content:"";position:absolute;right:40px;bottom:-185px;width:340px;height:340px;border:1px solid rgba(78,154,135,.18);border-radius:50%;box-shadow:0 0 0 42px rgba(78,154,135,.045),0 0 0 84px rgba(78,154,135,.035)}
.hero::after{right:12%;top:-50px;width:220px;height:220px;background:radial-gradient(circle,rgba(194,219,207,.44),rgba(194,219,207,0) 70%)}
.hero h1{max-width:760px;color:var(--brand-950);font-size:clamp(42px,5vw,66px);line-height:1.01;letter-spacing:-.055em}
.hero p{max-width:720px;color:#536a6e;font-size:17px}.hero .eyebrow{color:#3a8374}
.hero-badges{gap:10px}.hero-badges span{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-color:#d8e8e0;background:rgba(255,255,255,.82);color:#315e56}.hero-badges b{display:grid;place-items:center;width:17px;height:17px;border-radius:50%;background:#dff0e8;color:#317563;font-size:10px}
.workflow-card{padding:24px;border-color:#d6e3dd;border-radius:22px;background:rgba(255,255,255,.88);box-shadow:0 16px 42px rgba(25,65,63,.09)}
.workflow-card-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:13px}.workflow-card-heading .eyebrow{margin:0}.workflow-card-heading>span{color:#71837f;font-size:10px;font-weight:800}
.workflow-mini span{position:relative;padding:9px 10px;color:#385653}.workflow-mini span:not(:last-child)::after{content:"";position:absolute;left:22px;top:39px;width:1px;height:7px;background:#c9ddd4}.workflow-mini b{border-radius:50%;background:#e6f2ed;color:#337666}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;align-items:start;gap:22px}
.dashboard-primary{min-width:0}.dashboard-aside{position:sticky;top:22px;display:grid;gap:16px}.dashboard-aside .card{margin:0}
.form-card{padding:34px;border-color:#dbe5e0;box-shadow:0 14px 38px rgba(29,70,66,.07)}
.form-heading{margin:-4px -4px 4px}.form-heading h2{color:var(--brand-950);font-size:27px}.secure-label{background:#edf7f1;color:#3e735f}
.stack{gap:22px}fieldset{border-color:#dce7e2;background:#fbfdfc}legend{color:#294f52;font-size:15px}
label{color:#30494d}small,.muted{color:#71817f}
input,textarea,select{border-color:#c5d2ce;background:#fff}input:hover,textarea:hover,select:hover{border-color:#8ca9a1}input:focus,textarea:focus,select:focus{border-color:#4b8e7f;box-shadow:0 0 0 4px rgba(78,154,135,.14)}
.field-grid.two>label:has(input[type="radio"]){padding:18px;border-color:#dbe4e0}.field-grid.two>label:has(input[type="radio"]):has(input:checked){border-color:#65a08f;background:#f1f8f4;box-shadow:0 0 0 3px rgba(78,154,135,.1)}
.submit-application{justify-content:space-between;width:100%;min-height:52px;padding-inline:20px;background:linear-gradient(120deg,var(--brand-950),var(--brand-700))!important;font-size:15px}.submit-application span:last-child{font-size:21px;transition:transform .16s}.submit-application:hover span:last-child{transform:translateX(3px)}
.output-card{padding:27px;background:linear-gradient(160deg,#173e47,#245c60 72%,#347b70);color:#fff;box-shadow:0 18px 48px rgba(16,45,53,.15)}.output-card .eyebrow{color:#92d2bd}.output-card h2{margin:8px 0 22px;color:#fff;font-size:24px;line-height:1.18;letter-spacing:-.025em}.output-list{display:grid;gap:17px;margin:0;padding:0;list-style:none}.output-list li{display:grid;grid-template-columns:38px 1fr;gap:12px;align-items:start}.output-list li>span{display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(255,255,255,.19);border-radius:11px;background:rgba(255,255,255,.09);color:#aee2d0;font-size:10px;font-weight:900}.output-list div{display:grid}.output-list strong{font-size:14px}.output-list small{margin-top:3px;color:#c7dcda;font-size:11px;line-height:1.45}
.privacy-card{display:grid;grid-template-columns:42px 1fr;gap:13px;padding:21px;background:#fffdf9}.privacy-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:var(--warm);color:#8a6644;font-size:23px}.privacy-card strong{color:#3b514f}.privacy-card p{margin:5px 0 0;color:#77837f;font-size:12px;line-height:1.55}
.applications-card{margin-top:22px;padding:30px}.applications-card .section-heading h2{color:var(--brand-950);font-size:24px}.empty-state{display:grid;grid-template-columns:46px 1fr;align-items:center;gap:14px;margin:0;padding:23px;border:1px dashed #cbdcd4;border-radius:15px;background:#fafcfb;font-style:normal}.empty-state>span{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#eaf4ef;color:#417c6d;font-size:24px}.empty-state div{display:grid}.empty-state strong{color:#385250}.empty-state p{margin:3px 0 0;color:#7a8985;font-size:13px}
.footer{margin-top:10px;background:rgba(255,255,255,.48)}
@media(max-width:1020px){.hero{grid-template-columns:1fr;padding:39px}.workflow-card{display:none}.dashboard-grid{grid-template-columns:minmax(0,1fr)}.dashboard-aside{position:static;grid-template-columns:1fr 1fr}.output-card{grid-row:span 2}}
@media(max-width:700px){.shell{padding-inline:13px}.hero{min-height:auto;padding:27px 23px;border-radius:21px}.hero h1{font-size:39px}.hero p{font-size:15px}.dashboard-aside{grid-template-columns:1fr}.output-card{grid-row:auto}.form-card,.applications-card{padding:21px}.form-heading{align-items:flex-start}.secure-label{display:none}.empty-state{padding:17px}.footer-inner{gap:18px}}

/* RC12.1 restrained product motion */
@keyframes ambient-orbit{0%,100%{transform:translate3d(var(--motion-x,0),var(--motion-y,0),0) scale(1)}50%{transform:translate3d(calc(var(--motion-x,0px) - 8px),calc(var(--motion-y,0px) + 7px),0) scale(1.025)}}
@keyframes brand-breathe{0%,100%{transform:translateY(0) rotate(0);filter:drop-shadow(0 6px 12px rgba(4,25,31,.12))}50%{transform:translateY(-3px) rotate(-1deg);filter:drop-shadow(0 10px 18px rgba(4,25,31,.18))}}
@keyframes workflow-pulse{0%,100%{box-shadow:0 0 0 0 rgba(78,154,135,0)}50%{box-shadow:0 0 0 6px rgba(78,154,135,.1)}}
@keyframes button-sheen{0%{transform:translateX(-150%) skewX(-20deg)}55%,100%{transform:translateX(250%) skewX(-20deg)}}
.brand-mark{animation:brand-breathe 7s ease-in-out infinite;will-change:transform}
.brand:hover .brand-mark{animation-duration:2.3s}
.hero{--motion-x:0px;--motion-y:0px;isolation:isolate;transition:box-shadow .35s ease,border-color .35s ease}
.hero:hover{border-color:#c9ded4;box-shadow:0 30px 82px rgba(29,74,69,.135)}
.hero::before{z-index:-1;animation:ambient-orbit 14s ease-in-out infinite;transition:transform .45s cubic-bezier(.2,.8,.2,1);will-change:transform}
.hero::after{z-index:-1;animation:ambient-orbit 18s ease-in-out -5s infinite reverse;will-change:transform}
.hero-badges span{transition:transform .2s ease,border-color .2s ease,background .2s ease,box-shadow .2s ease}
.hero-badges span:hover{transform:translateY(-2px);border-color:#bad8cb;background:#fff;box-shadow:0 8px 20px rgba(35,91,79,.08)}
.workflow-mini b{animation:workflow-pulse 4.5s ease-in-out infinite}
.workflow-mini span:nth-child(2) b{animation-delay:.65s}.workflow-mini span:nth-child(3) b{animation-delay:1.3s}.workflow-mini span:nth-child(4) b{animation-delay:1.95s}
.motion-ready .reveal-on-scroll{opacity:0;transform:translateY(20px) scale(.992);transition:opacity .62s ease,transform .72s cubic-bezier(.2,.75,.2,1);transition-delay:calc(var(--reveal-order,0) * 70ms);will-change:opacity,transform}
.motion-ready .reveal-on-scroll.is-visible{opacity:1;transform:translateY(0) scale(1)}
.dashboard-aside>.card,.applications-card,.template-card{transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}
.dashboard-aside>.card:hover,.applications-card:hover{transform:translateY(-3px);border-color:#ccded6;box-shadow:0 18px 44px rgba(29,70,66,.1)}
.output-list li{padding:3px;border-radius:12px;transition:transform .2s ease,background .2s ease}
.output-list li:hover{transform:translateX(4px);background:rgba(255,255,255,.055)}
.submit-application,.button.primary,.button.secondary{position:relative;overflow:hidden;isolation:isolate}
.submit-application::before,.button.primary::before,.button.secondary::before{content:"";position:absolute;z-index:-1;inset:-30% auto -30% -35%;width:28%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transform:translateX(-150%) skewX(-20deg)}
.submit-application:hover::before,.button.primary:hover::before,.button.secondary:hover::before{animation:button-sheen 1.15s ease}
.button:active:not(:disabled){transform:translateY(1px) scale(.985)}
.application-row{transition:background .2s ease,transform .2s ease,box-shadow .2s ease}
.application-row:hover{box-shadow:inset 3px 0 #74a596}
.empty-state>span,.privacy-icon{transition:transform .25s cubic-bezier(.2,.8,.2,1),background .2s ease}
.empty-state:hover>span,.privacy-card:hover .privacy-icon{transform:rotate(-4deg) scale(1.06)}
@media(prefers-reduced-motion:reduce){
  .motion-ready .reveal-on-scroll{opacity:1!important;transform:none!important;transition:none!important}
  .brand-mark,.hero::before,.hero::after,.workflow-mini b{animation:none!important}
  .hero{transition:none!important}
}

/* RC12.1 premium authentication experience */
.auth-experience{position:relative;overflow:hidden;min-height:690px;background:rgba(255,255,255,.94)}
.auth-experience::before{content:"";position:absolute;z-index:2;inset:0 auto 0 calc(58% - 1px);width:1px;background:linear-gradient(180deg,transparent,#dce8e3 12%,#dce8e3 88%,transparent);pointer-events:none}
.auth-intro{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:center;padding:56px 52px;overflow:hidden}
.auth-intro::after{content:"";position:absolute;z-index:-1;inset:auto -18% -38% auto;width:420px;height:420px;border:1px solid rgba(198,233,220,.22);border-radius:50%;box-shadow:0 0 0 54px rgba(203,236,224,.06),0 0 0 108px rgba(203,236,224,.035)}
.auth-intro h1{max-width:520px;margin:11px 0 18px;font-size:clamp(40px,4.3vw,59px);line-height:1.02;letter-spacing:-.052em}
.auth-intro>p:not(.eyebrow){max-width:500px;font-size:16px;line-height:1.65}
.auth-orb{position:absolute;z-index:-1;border-radius:50%;filter:blur(2px);pointer-events:none}
.auth-orb-one{top:-90px;right:-75px;width:250px;height:250px;background:radial-gradient(circle at 35% 35%,rgba(154,220,198,.28),rgba(154,220,198,0) 70%);animation:ambient-orbit 13s ease-in-out infinite}
.auth-orb-two{left:-70px;bottom:80px;width:190px;height:190px;background:radial-gradient(circle,rgba(242,218,174,.15),rgba(242,218,174,0) 70%);animation:ambient-orbit 16s ease-in-out -5s infinite reverse}
.trust-list{display:grid;gap:10px;margin-top:27px}
.trust-list>div{display:grid;grid-template-columns:35px 1fr;gap:11px;padding:10px 11px;border:1px solid transparent;border-radius:13px;transition:transform .2s ease,background .2s ease,border-color .2s ease}
.trust-list>div:hover{transform:translateX(4px);border-color:rgba(223,242,233,.13);background:rgba(255,255,255,.055)}
.trust-list>div>span{width:35px;height:35px;border-radius:11px}
.trust-list p{margin:0}.trust-list strong{font-size:13px}.trust-list small{display:block;margin-top:2px;font-size:11px;line-height:1.4}
.auth-preview{position:relative;margin-top:25px;padding:17px 18px;border:1px solid rgba(224,243,235,.19);border-radius:17px;background:linear-gradient(145deg,rgba(255,255,255,.13),rgba(255,255,255,.065));box-shadow:0 18px 42px rgba(4,25,31,.12);backdrop-filter:blur(12px)}
.auth-preview-head{display:flex;align-items:center;justify-content:space-between;gap:14px}.auth-preview-head>div{display:grid;gap:2px}.auth-preview-head small{color:#a9c9c1;font-size:8px;font-weight:900;letter-spacing:.13em}.auth-preview-head strong{color:#fff;font-size:14px}.auth-preview-head>span{padding:5px 9px;border-radius:999px;background:#c9ebdc;color:#245f51;font-size:9px;font-weight:900}
.auth-preview-progress{height:6px;margin:14px 0;border-radius:99px;background:rgba(255,255,255,.12);overflow:hidden}.auth-preview-progress i{display:block;width:86%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#8ed0b9,#e8d49f);animation:auth-progress 1.25s .3s both cubic-bezier(.2,.8,.2,1)}
.auth-preview-items{display:flex;gap:7px;flex-wrap:wrap}.auth-preview-items span{padding:6px 8px;border:1px solid rgba(255,255,255,.12);border-radius:8px;background:rgba(10,39,44,.18);color:#e3efeb;font-size:9px;font-weight:750}.auth-preview-items b{color:#9ed9c5}
.trust-note{align-self:flex-start;margin-top:16px;padding:8px 11px;border-radius:10px;font-size:10px}
.auth-card{position:relative;display:flex;flex-direction:column;justify-content:center;padding:54px 48px;border:0;border-radius:0;background:linear-gradient(180deg,#fff 0%,#fcfdfc 100%);box-shadow:none}
.auth-card::before{content:"";position:absolute;left:48px;top:31px;width:42px;height:4px;border-radius:99px;background:linear-gradient(90deg,#4e9a87,#d1ad72)}
.auth-card h1{margin-bottom:8px;color:var(--brand-950);font-size:35px;letter-spacing:-.04em}.auth-card h2{color:var(--brand-950);font-size:20px}.auth-card hr{margin:27px 0 23px;border:0;border-top:1px solid #e3ebe7}
.auth-card .stack{gap:14px}.auth-card label{gap:6px;font-size:12px}.auth-card input{min-height:48px;border-radius:11px}.auth-card .button{min-height:47px;border-radius:11px}.auth-card .muted{margin-bottom:17px;font-size:13px;line-height:1.55}
@keyframes auth-progress{from{width:0}to{width:86%}}
@media(max-width:850px){.auth-experience{min-height:0}.auth-experience::before{display:none}.auth-intro{padding:38px 31px}.auth-intro h1{font-size:42px}.auth-preview{max-width:520px}.auth-card{padding:48px 31px}.auth-card::before{left:31px;top:28px}}
@media(max-width:520px){.auth-intro{padding:31px 23px}.auth-intro h1{font-size:36px}.auth-preview-items span{flex:1;text-align:center}.auth-card{padding:43px 23px}.auth-card::before{left:23px}.trust-list small{font-size:10px}}
@media(prefers-reduced-motion:reduce){.auth-orb,.auth-preview-progress i{animation:none!important}}

/* Verified student template studio: real document artwork, not schematic placeholders. */
.template-document-preview{display:block;aspect-ratio:.707;overflow:hidden;border:1px solid #d8e1df;border-radius:7px;background:#fff;box-shadow:0 8px 22px rgba(24,48,65,.1)}
.template-document-preview img{display:block;width:100%;height:100%;object-fit:contain;background:#fff}
.large-template-document{margin-top:17px;max-height:690px;overflow:auto;border:1px solid #cedbd6;border-radius:9px;background:#e9efed;box-shadow:0 15px 38px rgba(38,63,74,.14)}
.large-template-document img{display:block;width:100%;height:auto;background:#fff}
.browser-resume-preview.layout-student_master{border-top:0;padding-top:26px}
.browser-resume-preview.layout-student_master::before{content:"";display:block;height:9px;margin:0 34px 18px;background:var(--preview-accent,#17324f)}
.browser-resume-preview.layout-student_master::after{display:none}
.browser-resume-preview.layout-student_master .browser-preview-content{padding-top:0}
.browser-resume-preview.layout-student_master .browser-preview-content>h1:first-child,
.browser-resume-preview.layout-student_master .browser-preview-content>h2:first-child{text-align:center;color:var(--preview-accent,#17324f)}
.browser-resume-preview.layout-student_master .browser-preview-content h2{padding-bottom:5px;border-bottom:2px solid var(--preview-accent,#17324f)}
@media(max-width:620px){.large-template-document{max-height:520px}.browser-resume-preview.layout-student_master::before{margin-inline:18px}}
