/* Resume builder: the six-step builder, your resumes, new resume, and the public page.
   Built from the October 2026 design: a 340px step panel beside a live US Letter preview,
   Montserrat and DM Sans, ink #1C2430, navy #0D2C52, accent #1A3CFF, hairlines #DADDE3 and #EEEFF2, 32px fields. */

.rb{
  --rb-bg:#F7F7F8;--rb-ink:#1C2430;--rb-navy:#0D2C52;--rb-navy-2:#123B6D;--rb-muted:#5B6B7C;--rb-label:#4B5563;
  --rb-accent:#1A3CFF;--rb-accent-hover:#1230D6;--rb-tint:#E6EBFF;--rb-tint-2:#F0F3FF;
  --rb-line:#DADDE3;--rb-line-2:#EEEFF2;--rb-ph:#7A8794;
  --rb-ok:#1E6B45;--rb-ok-bg:#E7F5EE;--rb-warn:#8A5A00;--rb-warn-bg:#FFF4DE;--rb-bad:#B42318;--rb-bad-bg:#FDECEA;
  --rb-ring:0 0 0 3px rgba(26,60,255,.22);
  background:var(--rb-bg);color:var(--rb-ink);font-family:var(--font-body,"DM Sans"),system-ui,-apple-system,"Segoe UI",sans-serif;
}
.rb *,.rb *::before,.rb *::after{box-sizing:border-box}
.rb .rb-ico{width:15px;height:15px;flex:0 0 auto;stroke:currentColor;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.rb :focus-visible{outline:2px solid var(--rb-accent);outline-offset:2px}
.rb [hidden]{display:none !important}
/* The site's form defaults (48px fields, labels stacked in a column) do not apply inside the builder. */
.rb label{display:block}
.rb input.rb-input,.rb select.rb-input,.rb textarea.rb-input{min-height:0}
.rb label.rb-check,.rb label.rb-tick{display:flex;flex-direction:row}
.rb label.rb-chip,.rb label.rb-option{display:inline-flex;flex-direction:row}
.rb label.rb-role{display:flex;flex-direction:row}
.rb label.rb-label{display:block}

/* ---------- Frame: step panel and live preview ---------- */
.rb-shell{max-width:1696px;margin:0 auto;padding:20px clamp(16px,4vw,48px) 48px;display:flex;flex-wrap:wrap;gap:24px;align-items:flex-start}
.rb-panel{flex:0 1 340px;min-width:0;display:flex;flex-direction:column;background:#fff;border:1px solid var(--rb-line);border-radius:12px}
.rb-side{flex:999 1 600px;min-width:0;display:flex;flex-direction:column;gap:10px}

/* Panel head: title, step count, six step buttons */
.rb-panel-head{display:flex;flex-direction:column;gap:12px;padding:16px 20px 14px;border-bottom:1px solid var(--rb-line-2)}
.rb-panel-title{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.rb-title{margin:0;color:var(--rb-navy);font-size:16px;font-weight:700;line-height:1.3;letter-spacing:0}
.rb-stepcount{margin:0;color:var(--rb-muted);font-size:12px;font-weight:600}
.rb-steps{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;margin:0;padding:0;list-style:none}
.rb-steps li{display:flex;margin:0}
.rb-step{flex:1 1 0;display:flex;align-items:center;justify-content:center;height:32px;border-radius:6px;background:var(--rb-line-2);color:var(--rb-label);font-size:13px;font-weight:600;text-decoration:none;transition:background-color .15s ease,color .15s ease}
.rb-step:hover{background:#E3E5EA;color:var(--rb-navy)}
.rb-step.is-current{background:var(--rb-accent);color:#fff;font-weight:700}
.rb-step.is-done{background:var(--rb-tint);color:var(--rb-navy)}
.rb-step.is-done:hover{background:#D9E0FF}
.rb-step .rb-ico{width:14px;height:14px;stroke-width:2.6}

/* Panel body */
.rb-form{display:flex;flex-direction:column;flex:1 1 auto;margin:0}
.rb-body{display:flex;flex-direction:column;gap:14px;padding:14px 16px}
.rb-step-head{display:flex;flex-direction:column;gap:4px}
.rb-step-title{margin:0;color:var(--rb-navy);font-size:15px;font-weight:700;line-height:1.3;letter-spacing:0}
.rb-step-title:focus{outline:none}
.rb-lead{margin:0;color:var(--rb-muted);font-size:13px;line-height:1.5}
.rb-note,.rb-hint{margin:0;color:var(--rb-muted);font-size:12px;line-height:1.5}

/* Fields */
.rb-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(120px,100%),1fr));gap:10px}
.rb-span{grid-column:1/-1}
.rb-field{display:flex;flex-direction:column;gap:4px;min-width:0}
.rb-label{margin:0;color:var(--rb-label);font-size:12px;font-weight:600;line-height:1.4}
.rb-opt{color:var(--rb-muted);font-weight:400}
.rb-label-row{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.rb-counter{color:var(--rb-muted);font-size:12px;white-space:nowrap}
.rb-counter.is-off{color:var(--rb-warn)}
.rb-input{width:100%;height:32px;padding:0 9px;border:1px solid var(--rb-line);border-radius:6px;background:#fff;color:var(--rb-ink);font:inherit;font-size:13px;line-height:1.3;transition:border-color .15s ease,box-shadow .15s ease}
.rb-input::placeholder{color:var(--rb-ph);opacity:1}
.rb-input:hover{border-color:#C5CAD3}
.rb-input:focus{outline:none;border-color:var(--rb-accent);box-shadow:var(--rb-ring)}
textarea.rb-input{height:auto;min-height:72px;padding:6px 9px;line-height:1.45;resize:vertical}
select.rb-input{padding-right:24px;appearance:none;-webkit-appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%235B6B7C' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 9px center}
.rb-input[readonly]{background:var(--rb-bg)}
.rb-static{display:flex;align-items:center;min-height:32px;margin:0;padding:6px 9px;border:1px solid var(--rb-line-2);border-radius:6px;background:var(--rb-bg);color:var(--rb-ink);font-size:13px;line-height:1.35;overflow-wrap:anywhere}
.rb-static.is-id{font-variant-numeric:tabular-nums;letter-spacing:.02em}
.rb-static.is-empty{color:var(--rb-ph)}

/* Checkboxes and the small buttons */
.rb-check{display:flex;align-items:flex-start;gap:8px;margin:0;color:var(--rb-ink);font-size:13px;line-height:1.4;cursor:pointer}
.rb-check input{flex:0 0 auto;width:16px;height:16px;margin:1px 0 0;accent-color:var(--rb-accent)}
.rb-check small{display:block;margin-top:2px;color:var(--rb-muted);font-size:12px}
.rb-check.is-row{padding:8px 0;border-top:1px solid var(--rb-line-2)}
.rb-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:32px;padding:0 14px;border:1px solid transparent;border-radius:6px;font:inherit;font-size:13px;font-weight:600;line-height:1;text-decoration:none;white-space:nowrap;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease}
.rb-btn.is-primary{background:var(--rb-accent);color:#fff}
.rb-btn.is-primary:hover{background:var(--rb-accent-hover);color:#fff}
.rb-btn.is-outline{border-color:var(--rb-line);background:#fff;color:var(--rb-navy-2)}
.rb-btn.is-outline:hover{border-color:#B9C0CB;color:var(--rb-navy)}
.rb-btn.is-disabled,.rb-btn[aria-disabled="true"]{background:#B9C3F5;cursor:not-allowed}
.rb-btn .rb-ico{width:15px;height:15px}
.rb-btn[aria-busy="true"]{opacity:.7;cursor:progress}
.rb-link-btn{display:inline-flex;align-items:center;gap:5px;padding:0;border:0;background:none;color:var(--rb-accent);font:inherit;font-size:12px;font-weight:600;text-decoration:none;cursor:pointer}
.rb-link-btn:hover{color:var(--rb-accent-hover);text-decoration:underline;text-underline-offset:2px}
.rb-link-btn .rb-ico{width:13px;height:13px}
.rb-quiet{color:var(--rb-muted);font-size:13px;font-weight:500;text-decoration:none}
.rb-quiet:hover{color:var(--rb-navy);text-decoration:underline;text-underline-offset:2px}
.rb-add{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;height:32px;padding:0 4px;border:0;background:none;color:var(--rb-accent);font:inherit;font-size:13px;font-weight:600;cursor:pointer}
.rb-add:hover{color:var(--rb-accent-hover)}
.rb-remove{height:24px;padding:0 4px;border:0;background:none;color:var(--rb-bad);font:inherit;font-size:12px;font-weight:600;cursor:pointer}
.rb-remove:hover{text-decoration:underline;text-underline-offset:2px}
.rb-js .rb-nojs{display:none}

/* Panel foot */
.rb-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;padding:12px 20px;border-top:1px solid var(--rb-line-2)}
.rb-save{flex:1 1 auto;margin:0;color:var(--rb-muted);font-size:12px;line-height:1.35;text-align:right}
.rb-save.is-error{color:var(--rb-bad);font-weight:500}
.rb-save a,.rb-save button{padding:0;border:0;background:none;color:inherit;font:inherit;font-weight:600;text-decoration:underline;cursor:pointer}

/* ---------- 1 Contact and summary ---------- */
.rb-suggest{margin-top:2px}
.rb-suggest > summary{display:inline-flex;align-items:center;gap:4px;color:var(--rb-accent);font-size:12px;font-weight:600;list-style:none;cursor:pointer}
.rb-suggest > summary::-webkit-details-marker{display:none}
.rb-suggest > summary::after{content:"";width:6px;height:6px;margin-left:2px;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;transform:rotate(45deg) translate(-1px,-1px)}
.rb-suggest[open] > summary::after{transform:rotate(-135deg) translate(-1px,-1px)}
.rb-sugg-list{display:flex;flex-direction:column;gap:8px;margin:8px 0 0;padding:0;list-style:none}
.rb-sugg{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:9px 10px;border:1px solid var(--rb-line-2);border-radius:8px;background:var(--rb-bg)}
.rb-sugg p{margin:0;color:var(--rb-ink);font-size:12.5px;line-height:1.5}
.rb-ai-row{margin:2px 0 0}
.rb-ai-box{display:flex;flex-direction:column;gap:8px;padding:10px;border:1px solid var(--rb-line);border-radius:8px;background:var(--rb-tint-2);font-size:12.5px;line-height:1.5}
.rb-ai-box p,.rb-ai-box ul{margin:0}
.rb-ai-box ul{padding-left:18px}
.rb-ai-box .rb-ai-actions{display:flex;gap:8px}
.rb-ai-error{color:var(--rb-bad)}

/* ---------- 2 Target role ---------- */
.rb-roles{display:flex;flex-direction:column;gap:8px;margin:0;padding:0;border:0;min-width:0}
.rb-role{position:relative;display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border:1px solid var(--rb-line);border-radius:8px;background:#fff;cursor:pointer;transition:border-color .15s ease,background-color .15s ease}
.rb-role:hover{border-color:#B9C0CB}
.rb-role input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.rb-role-dot{flex:0 0 auto;width:18px;height:18px;margin-top:1px;border:2px solid #8A97A6;border-radius:50%;background:#fff}
.rb-role-text{display:flex;flex-direction:column;gap:2px;min-width:0}
.rb-role-text strong{color:var(--rb-navy);font-size:13px;font-weight:700;line-height:1.35}
.rb-role-text small{color:var(--rb-label);font-size:12px;line-height:1.45}
.rb-role:has(input:checked){border-color:var(--rb-accent);background:var(--rb-tint-2);box-shadow:inset 0 0 0 1px var(--rb-accent)}
.rb-role:has(input:checked) .rb-role-dot{border-color:var(--rb-accent);background:radial-gradient(circle,var(--rb-accent) 0 4px,#fff 4.5px)}
.rb-role:has(input:focus-visible){outline:2px solid var(--rb-accent);outline-offset:2px}

/* ---------- 3 Work experience ---------- */
.rb-jobs{display:flex;flex-direction:column;gap:14px}
.rb-jobs:empty{display:none}
.rb-job{display:flex;flex-direction:column;gap:10px;padding-bottom:14px;border-bottom:1px solid var(--rb-line-2);scroll-margin-top:16px}
.rb-job-head{display:flex;align-items:center;justify-content:space-between;gap:8px}
.rb-job-label{margin:0;color:var(--rb-muted);font-size:12px;font-weight:600;letter-spacing:.14em;line-height:1.4;text-transform:uppercase}
.rb-date-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:4px}
.rb-date{display:flex;flex-direction:column;gap:4px;min-width:0}
.rb-now{display:flex;flex-direction:column;gap:4px;margin:0}
.rb-now-text{display:flex;align-items:center;height:32px;padding:0 9px;border:1px solid var(--rb-line-2);border-radius:6px;background:var(--rb-bg);font-size:13px}
.rb-lines{min-height:96px}
.rb-ticks{border:1px solid var(--rb-line);border-radius:8px;background:#fff}
.rb-ticks > summary{display:flex;align-items:center;gap:8px;min-height:36px;padding:0 10px;color:var(--rb-navy);font-size:13px;font-weight:600;list-style:none;cursor:pointer}
.rb-ticks > summary::-webkit-details-marker{display:none}
.rb-ticks > summary::before{content:"";flex:0 0 auto;width:6px;height:6px;border-right:1.6px solid var(--rb-muted);border-bottom:1.6px solid var(--rb-muted);transform:rotate(-45deg);transition:transform .15s ease}
.rb-ticks[open] > summary::before{transform:rotate(45deg)}
.rb-tick-count{margin-left:auto;color:var(--rb-ok);font-size:12px;font-weight:600}
.rb-ticks-body{display:flex;flex-direction:column;gap:10px;padding:2px 10px 10px}
.rb-tick-list{display:flex;flex-direction:column}
.rb-tick{display:flex;align-items:flex-start;gap:8px;padding:7px 0;border-top:1px solid var(--rb-line-2);color:var(--rb-ink);font-size:12.5px;line-height:1.45;cursor:pointer}
.rb-tick input{flex:0 0 auto;width:16px;height:16px;margin:1px 0 0;accent-color:var(--rb-accent)}
.rb-js .rb-tick-list:not(.is-all) .rb-tick.is-more{display:none}
.rb-tick-tools{display:flex;flex-wrap:wrap;gap:6px 14px;margin:0}
.rb-tick.rb-flash{background:var(--rb-tint-2)}

/* Questions inside a job */
.rb-qbox{border-top:1px solid var(--rb-line-2);padding-top:8px}
.rb-qbox > summary{display:flex;align-items:center;gap:6px;color:var(--rb-navy);font-size:12px;font-weight:600;list-style:none;cursor:pointer}
.rb-qbox > summary::-webkit-details-marker{display:none}
.rb-qbox > summary::before{content:"";width:5px;height:5px;border-right:1.5px solid var(--rb-muted);border-bottom:1.5px solid var(--rb-muted);transform:rotate(-45deg)}
.rb-qbox[open] > summary::before{transform:rotate(45deg)}
.rb-qbox .rb-questions{margin-top:10px}
.rb-questions{display:flex;flex-direction:column;gap:10px}
.rb-questions:empty{display:none}
.rb-q{display:flex;flex-direction:column;gap:6px;min-width:0;margin:0;padding:0;border:0}
.rb-q-title{margin:0 0 2px;padding:0;color:var(--rb-label);font-size:12px;font-weight:600;line-height:1.4}
.rb-optional{color:var(--rb-muted);font-weight:400}
.rb-options{display:flex;flex-wrap:wrap;gap:6px}
.rb-option{position:relative;display:inline-flex;align-items:center;min-height:28px;padding:4px 10px;border:1px solid var(--rb-line);border-radius:999px;background:#fff;color:var(--rb-ink);font-size:12px;line-height:1.3;cursor:pointer}
.rb-option input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.rb-option span{display:flex;flex-direction:column}
.rb-option small{color:inherit;opacity:.8;font-size:11px}
.rb-option:has(input:checked){border-color:var(--rb-accent);background:var(--rb-accent);color:#fff;font-weight:600}
.rb-option:has(input:focus-visible){outline:2px solid var(--rb-accent);outline-offset:2px}
.rb-number .rb-input{width:96px}
.rb-other{margin-top:2px}

/* ---------- 4 Skills ---------- */
.rb-set{display:flex;flex-direction:column;gap:10px;min-width:0;margin:0;padding:0;border:0}
.rb-set + .rb-set,.rb-certs + .rb-set,.rb-check + .rb-set{padding-top:12px;border-top:1px solid var(--rb-line-2)}
.rb-set-head{display:flex;align-items:center;justify-content:space-between;gap:8px}
.rb-set-title{margin:0;padding:0;color:var(--rb-label);font-size:12px;font-weight:600;line-height:1.4}
.rb-count{padding:2px 8px;border-radius:999px;background:var(--rb-ok-bg);color:var(--rb-ok);font-size:12px;font-weight:600;line-height:1.4;white-space:nowrap}
.rb-chips{display:flex;flex-wrap:wrap;gap:6px}
.rb-chip{position:relative;display:inline-flex;align-items:center;gap:5px;min-height:28px;padding:4px 10px;border:1px solid var(--rb-line);border-radius:999px;background:#fff;color:var(--rb-ink);font-size:12px;font-weight:500;line-height:1.3;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease}
.rb-chip:hover{border-color:#B9C0CB}
.rb-chip input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.rb-chip-box{display:none}
.rb-chip-box .rb-ico{width:12px;height:12px;stroke-width:2.8}
.rb-chip:has(input:checked){border-color:var(--rb-accent);background:var(--rb-accent);color:#fff;font-weight:600}
.rb-chip:has(input:checked) .rb-chip-box{display:inline-flex}
.rb-chip:has(input:focus-visible){outline:2px solid var(--rb-accent);outline-offset:2px}
.rb-add-row{display:flex;flex-direction:column;gap:4px}
.rb-add-line{display:flex;gap:8px}
.rb-add-line .rb-input{flex:1 1 auto;min-width:0}

/* ---------- 5 Certificate, desks, education ---------- */
.rb-certs{display:flex;flex-direction:column;gap:12px}
.rb-cert{display:flex;flex-direction:column;gap:10px}
.rb-cert + .rb-cert{padding-top:12px;border-top:1px solid var(--rb-line-2)}
.rb-edu{display:flex;flex-direction:column;gap:8px}
.rb-edu + .rb-edu{padding-top:12px;border-top:1px solid var(--rb-line-2)}

/* ---------- 6 Check before you send ---------- */
.rb-checks{display:flex;flex-direction:column;gap:10px}
.rb-attn{margin:0;padding:10px 12px;border-radius:8px;background:var(--rb-warn-bg);color:var(--rb-warn);font-size:13px;font-weight:600;line-height:1.4}
.rb-attn:focus{outline:none}
.rb-attn.is-clear{background:var(--rb-ok-bg);color:var(--rb-ok)}
.rb-attn-note{margin:-4px 0 0;color:var(--rb-bad);font-size:12px;line-height:1.45}
.rb-checklist{margin:0;padding:0;list-style:none}
.rb-ck{display:flex;align-items:center;gap:10px;min-height:37px;padding:7px 0;border-bottom:1px solid var(--rb-line-2);font-size:13px;line-height:1.4}
.rb-ck:last-child{border-bottom:0}
.rb-ck-ico{flex:0 0 auto;display:grid;place-items:center;width:18px;height:18px;border-radius:50%;font-size:11px;font-weight:700;line-height:1}
.rb-ck-ico .rb-ico{width:11px;height:11px;stroke-width:3}
.rb-ck.is-ok .rb-ck-ico{background:var(--rb-ok-bg);color:#2E8A5A}
.rb-ck.is-warn .rb-ck-ico{background:var(--rb-warn-bg);color:#B26B00}
.rb-ck.is-must .rb-ck-ico{background:var(--rb-bad-bg);color:var(--rb-bad)}
.rb-ck.is-info .rb-ck-ico{background:var(--rb-line-2);color:var(--rb-muted);font-family:Georgia,serif;font-style:italic}
.rb-ck.is-info{color:var(--rb-label)}
.rb-ck-text{flex:1 1 auto;min-width:0}
.rb-ck-quote{display:block;margin-top:2px;color:var(--rb-muted);font-size:12px}
.rb-ck.is-fixed .rb-ck-ico{background:var(--rb-ok-bg);color:#2E8A5A}
.rb-fix{flex:0 0 auto;display:inline-flex;align-items:center;height:28px;padding:0 10px;border-radius:6px;background:var(--rb-tint);color:var(--rb-navy);font-size:12px;font-weight:700;text-decoration:none}
.rb-fix:hover{background:#D9E0FF}
.rb-tools{display:flex;flex-wrap:wrap;gap:6px 16px;margin:0;padding:0;list-style:none}
.rb-disclaimer{margin:0;color:var(--rb-muted);font-size:11.5px;line-height:1.5}
.rb-export-error{margin:0;color:var(--rb-bad);font-size:12px}
.rb-plain{max-height:60vh;margin:0;padding:12px;overflow:auto;border:1px solid var(--rb-line);border-radius:8px;background:var(--rb-bg);font:12px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;white-space:pre-wrap}
.rb-pack{display:flex;flex-direction:column;gap:6px}
.rb-pack-text{min-height:220px;font-size:12.5px}
.rb-pack-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px}
.rb-copied{color:var(--rb-ok);font-size:12px;font-weight:600}
.rb-modal .rb-set{margin-bottom:14px}
.rb-modal .rb-role + .rb-role{margin-top:0}

/* ---------- Live preview ---------- */
.rb-side-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;min-height:34px}
.rb-side-label{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;min-width:0}
.rb-eyebrow{margin:0;color:var(--rb-muted);font-size:12px;font-weight:600;letter-spacing:.14em;line-height:1.4;text-transform:uppercase}
.rb-side-note{margin:0;color:var(--rb-muted);font-size:12px}
.rb-side .rb-btn{height:34px;padding:0 12px;border-radius:8px}
.rb-paper{width:100%;max-width:980px;margin:0 auto}
.rb-page-host{min-height:80px}
.rb-page-host:empty{aspect-ratio:8.5/11;border:1px solid var(--rb-line);border-radius:4px;background:#fff}
.rb-paper .rz-doc{gap:20px}
.rb-paper .rz-page{border:1px solid var(--rb-line);border-radius:4px;box-shadow:0 8px 24px rgba(13,44,82,.08)}
.rb-page-host .rz-l.rb-flash span{background:var(--rb-tint);transition:background-color .6s ease}
.rb-page-host .rz-l.rb-flash.is-done span{background:transparent}

/* ---------- Desktop: the preview stays in view while the panel scrolls ----------
   Full size page; the part below the screen scrolls inside the preview. */
@media (min-width:980px) and (min-height:560px){
  .rb{--rb-top:88px}
  .in-app .rb{--rb-top:16px}
  .rb-side{position:sticky;top:var(--rb-top);max-height:calc(100vh - var(--rb-top) - 16px)}
  .rb-paper{max-height:calc(100vh - var(--rb-top) - 62px);overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:0 2px 12px}
}

/* ---------- Phones: the panel above the preview, full width ---------- */
@media (max-width:720px){
  .rb-shell{gap:16px;padding-top:12px}
  .rb-panel{flex:1 1 100%}
  .rb-side{flex:1 1 100%}
  .rb-panel-head{padding:14px 16px 12px}
  .rb-foot{position:sticky;bottom:0;z-index:2;padding:10px 16px;border-radius:0 0 12px 12px;background:#fff}
}
@media (pointer:coarse){
  .rb input.rb-input,.rb select.rb-input,.rb-now-text,.rb-static{min-height:38px;height:auto}
  .rb textarea.rb-input{min-height:84px}
  .rb-btn,.rb-step{height:38px}
  .rb-chip,.rb-option{min-height:34px}
  .rb-ck{min-height:44px}
}

/* ---------- Your resumes and new resume ---------- */
.rb-page{max-width:1696px;margin:0 auto;padding:24px clamp(16px,4vw,48px) 56px;display:flex;flex-direction:column;gap:16px}
.rb-page.is-narrow{max-width:560px}
.rb-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap}
.rb-page-title{margin:0;color:var(--rb-navy);font-size:22px;font-weight:700;line-height:1.25;letter-spacing:0}
.rb-page-lead{margin:4px 0 0;color:var(--rb-muted);font-size:13px;line-height:1.5}
.rb-card{background:#fff;border:1px solid var(--rb-line);border-radius:12px}
.rb-versions{display:flex;flex-direction:column;gap:10px;margin:0;padding:0;list-style:none}
.rb-version{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;padding:14px 16px}
.rb-version-main{flex:1 1 260px;min-width:0}
.rb-version-name{margin:0;font-size:15px;font-weight:700;line-height:1.35;letter-spacing:0}
.rb-version-name a{color:var(--rb-navy);text-decoration:none}
.rb-version-name a:hover{text-decoration:underline;text-underline-offset:2px}
.rb-version-meta{margin:2px 0 0;color:var(--rb-muted);font-size:12px}
.rb-version-actions{display:flex;flex-wrap:wrap;gap:8px}
.rb-version-more{flex:1 1 100%;display:flex;flex-wrap:wrap;gap:6px 16px;padding-top:10px;border-top:1px solid var(--rb-line-2)}
.rb-version-more .rb-link-btn.is-danger{color:var(--rb-bad)}
.rb-inline-form{flex:1 1 100%;display:flex;flex-direction:column;gap:8px;padding-top:10px;border-top:1px solid var(--rb-line-2);font-size:13px}
.rb-inline-form p{margin:0}
.rb-btn.is-danger{background:var(--rb-bad);color:#fff}
.rb-empty-card{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:20px}
.rb-empty-card p{margin:0;color:var(--rb-label);font-size:13px;line-height:1.5}
.rb-empty-card .rb-empty-title{color:var(--rb-navy);font-size:15px;font-weight:700}
.rb-empty{margin:0;color:var(--rb-muted);font-size:12px;line-height:1.5}
.rb-deleted{display:flex;flex-direction:column;gap:8px}
.rb-deleted-title{margin:0;color:var(--rb-label);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}
.rb-deleted-list{margin:0;padding:0 16px;list-style:none}
.rb-deleted-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid var(--rb-line-2)}
.rb-deleted-list li:first-child{border-top:0}
.rb-deleted-list p{margin:0;font-size:13px}
.rb-foot-note{margin:0;color:var(--rb-muted);font-size:12px;line-height:1.5}
.rb-new-card{display:flex;flex-direction:column;gap:14px;padding:16px}
.rb-new-card .rb-foot{margin:0 -16px -16px}
.rb-error{margin:0;padding:10px 12px;border-radius:8px;background:var(--rb-bad-bg);color:var(--rb-bad);font-size:13px;font-weight:600}
.rb .sx-dialog .rb-input{font-size:13px}

@media (prefers-reduced-motion:reduce){
  .rb *{transition:none !important;animation:none !important}
}

/* ---------- Public page (resume-builder.php) ---------- */
.rbp h1{margin:0 0 var(--s-4);color:var(--navy);letter-spacing:-.025em}
.rbp h2{margin:0 0 var(--s-4);color:var(--navy)}
.rbp h3{margin:0 0 var(--s-2);color:var(--navy);font-size:1.125rem}
.rbp .lead{max-width:56ch}
.rbp-hero{padding:var(--s-8) 0 var(--s-7)}
.rbp-hero .container{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--s-7);align-items:center}
.rbp-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-3);margin-top:var(--s-5)}
.rbp-free{margin:var(--s-4) 0 0;color:var(--ink-2);font-size:15px}
.rbp-sample{margin:0}
.rbp-shot img{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:12px;box-shadow:0 24px 60px rgba(13,44,82,.14)}
.rbp-sheet{max-width:560px;margin:0 auto;padding:36px 40px;border:1px solid var(--line);background:#fff;box-shadow:0 24px 60px rgba(13,44,82,.14);color:#111;font:13px/1.35 Arial,Helvetica,sans-serif}
.rbp-sheet .r-name{margin:0;color:#0D2C52;font-size:26px;font-weight:700;line-height:1.15;letter-spacing:0}
.rbp-sheet .r-headline{margin:6px 0 0;color:#1A3CFF;font-size:13.5px;font-weight:700}
.rbp-sheet .r-contact{margin:3px 0 0;padding-bottom:10px;border-bottom:1.5px solid #0D2C52;color:#4B5563;font-size:11.5px}
.rbp-sheet .r-head{margin:13px 0 3px;color:#0D2C52;font-size:11px;font-weight:700;text-transform:uppercase}
.rbp-sheet p{margin:0}
.rbp-sheet .r-job{display:flex;justify-content:space-between;gap:12px;margin-top:6px;font-weight:700}
.rbp-sheet .r-job span{color:#4B5563;font-weight:400;white-space:nowrap}
.rbp-sheet .r-co{color:#4B5563;font-size:12px}
.rbp-sheet ul{margin:3px 0 0;padding-left:16px}
.rbp-sheet li{margin:0 0 2px}
.rbp-sheet b{font-weight:700}
.rbp-caption{margin:var(--s-3) auto 0;max-width:560px;color:var(--ink-2);font-size:14px;text-align:center}
.rbp-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s-5);margin:var(--s-5) 0 0;padding:0;list-style:none;counter-reset:rbp}
.rbp-steps li{counter-increment:rbp;padding-left:var(--s-4);border-left:2px solid var(--navy)}
.rbp-steps li::before{content:counter(rbp);display:block;margin-bottom:var(--s-2);color:var(--navy);font-size:1.75rem;font-weight:600;line-height:1}
.rbp-steps p{margin:0;color:var(--ink-2)}
.rbp-steps.is-six{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:var(--s-6)}
.rbp-steps strong{display:block;margin-bottom:4px;color:var(--navy);font-weight:600}
.rbp-text > *{max-width:68ch}
.rbp-text p{color:var(--ink-2)}
.rbp-list{margin:var(--s-4) 0 0;padding:0;list-style:none;display:grid;gap:10px;max-width:72ch}
.rbp-list li{position:relative;padding-left:24px;color:var(--ink)}
.rbp-list li::before{content:"";position:absolute;left:3px;top:.5em;width:9px;height:5px;border-left:2px solid var(--navy);border-bottom:2px solid var(--navy);transform:rotate(-45deg)}
.rbp-list.is-off li::before{top:.55em;left:2px;width:11px;height:11px;border:0;transform:none;background:linear-gradient(45deg,transparent 44%,var(--danger,#B42318) 44%,var(--danger,#B42318) 56%,transparent 56%),linear-gradient(-45deg,transparent 44%,var(--danger,#B42318) 44%,var(--danger,#B42318) 56%,transparent 56%)}
.rbp-faq details{border-top:1px solid var(--line);padding:var(--s-4) 0}
.rbp-faq details:last-of-type{border-bottom:1px solid var(--line)}
.rbp-faq summary{display:flex;align-items:center;min-height:44px;color:var(--navy);font-size:17px;font-weight:600;cursor:pointer}
.rbp-faq p{margin:10px 0 0;color:var(--ink-2);max-width:70ch}
.rbp-note{margin-top:var(--s-5);color:var(--ink-2);font-size:13px}
@media (max-width:900px){
  .rbp-hero .container{grid-template-columns:1fr}
  .rbp-steps,.rbp-steps.is-six{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:640px){
  .rbp-hero{padding:var(--s-6) 0 var(--s-5)}
  .rbp-steps,.rbp-steps.is-six{grid-template-columns:1fr}
  .rbp-sheet{padding:20px 18px;font-size:11.5px}
  .rbp-sheet .r-name{font-size:20px}
  .rbp-sheet .r-job{flex-wrap:wrap;gap:0 8px}
  .rbp-actions .btn{flex:1 1 100%}
}

