/* EasyLearnSpace Resume Builder: editor UI (uses the site colour tokens, so it follows dark/light) + the A4 resume document (always white paper) + print. */
.rb-shell{max-width:1500px;margin:0 auto;padding:22px max(16px,env(safe-area-inset-left,0px)) 40px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
#rb{color:var(--body)}
.rb-title h1,#rb h3,#rb h4{color:var(--fg);margin:0}
.rb-top{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-bottom:16px}
.rb-title{flex:1 1 260px;min-width:0}
.rb-title h1{font-size:26px;line-height:1.2}
.rb-title span{color:var(--muted);font-size:14px}
.rb-docs,.rb-exp{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.rb-docs select{max-width:200px}
#rb select,#rb input,#rb textarea{font:inherit;font-size:14px;color:var(--fg);background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:7px 9px;min-width:0}
#rb textarea{resize:vertical;width:100%;line-height:1.45}
#rb input[type=color]{padding:2px;width:44px;height:34px}
#rb input[type=range]{padding:0;accent-color:var(--accent)}
#rb input:focus,#rb select:focus,#rb textarea:focus{outline:2px solid var(--accent);outline-offset:0;border-color:transparent}
.rb-b{font:inherit;font-size:14px;font-weight:600;color:var(--fg);background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:7px 12px;cursor:pointer;white-space:nowrap}
.rb-b:hover{border-color:var(--accent)}
.rb-b.rb-pri{background:var(--accent);border-color:var(--accent);color:var(--bg)}
.rb-b.rb-pri:hover{filter:brightness(1.08)}
.rb-b:focus-visible,.rb-i:focus-visible,.rb-add:focus-visible,.rb-tpl:focus-visible,.rb-tabs button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.rb-i{font:inherit;font-size:13px;width:28px;height:28px;display:inline-grid;place-items:center;border:1px solid var(--line);background:var(--bg);color:var(--fg);border-radius:7px;cursor:pointer;flex:none}
.rb-i:hover:not(:disabled){border-color:var(--accent)}
.rb-i:disabled{opacity:.35;cursor:default}
.rb-add{font:inherit;font-size:13.5px;font-weight:600;color:var(--accent);background:none;border:1px dashed var(--line);border-radius:8px;padding:6px 10px;cursor:pointer;margin-top:6px}
.rb-add:hover{border-color:var(--accent)}

.rb-main{display:grid;grid-template-columns:minmax(360px,500px) minmax(0,1fr);gap:18px;align-items:start}
.rb-left{min-width:0;position:sticky;top:72px;max-height:calc(100vh - 86px);display:flex;flex-direction:column}
.rb-tabs{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid var(--line);margin-bottom:10px;flex:none}
.rb-tabs::-webkit-scrollbar{display:none}
.rb-tabs button{font:inherit;font-size:14px;font-weight:600;color:var(--muted);background:none;border:0;border-bottom:2px solid transparent;padding:8px 10px;cursor:pointer;white-space:nowrap}
.rb-tabs button[aria-selected=true]{color:var(--fg);border-bottom-color:var(--accent)}
.rb-pane{overflow-y:auto;padding-right:4px;min-height:0;overscroll-behavior:contain}
.rb-card{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:14px;margin-bottom:12px}
.rb-card h3{font-size:16px;margin-bottom:10px;display:flex;align-items:baseline;gap:8px}
.rb-card h3 small{font-size:12.5px;font-weight:400;color:var(--muted)}
.rb-card h4{font-size:14.5px;margin:14px 0 6px}
.rb-quick{display:grid;gap:8px}
.rb-quick small{color:var(--muted);font-size:12.5px}
.rb-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:6px}
.rb-row select{flex:1 1 160px}
.rb-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 10px}
.rb-f{display:flex;flex-direction:column;gap:3px;min-width:0}
.rb-f>span{font-size:12.5px;color:var(--muted)}
.rb-f.rb-wide{grid-column:1/-1}
.rb-f.rb-inline{flex-direction:row;align-items:center;gap:6px}
.rb-links{margin-top:8px}
.rb-links .rb-row{flex-wrap:nowrap;align-items:flex-end}
.rb-links .rb-f:first-child{flex:0 0 110px}
.rb-links .rb-f:nth-child(2){flex:1}
.rb-sec.off{opacity:.6}
.rb-sh{display:flex;gap:5px;align-items:center;margin-bottom:8px}
.rb-sh .rb-st{flex:1;font-weight:700;font-size:15px!important;min-width:0}
.rb-ty{font-size:11.5px;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:2px 8px;white-space:nowrap}
.rb-item{border:1px solid var(--line);border-radius:10px;padding:10px;margin-bottom:8px;background:var(--bg2)}
.rb-ih{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px}
.rb-ih b{font-size:14px;color:var(--fg);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.rb-ih span{display:flex;gap:4px;flex:none}
.rb-tip{font-size:13.5px;color:var(--muted);line-height:1.5;margin:6px 0}
.rb-flash{animation:rbf 1.6s}
@keyframes rbf{0%,60%{box-shadow:0 0 0 3px var(--amber)}100%{box-shadow:none}}

/* template picker */
.rb-tpls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.rb-tpl{font:inherit;text-align:left;display:grid;grid-template-columns:46px 1fr;grid-template-rows:auto 1fr auto;column-gap:10px;row-gap:2px;padding:9px;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--fg);cursor:pointer}
.rb-tpl:hover{border-color:var(--accent)}
.rb-tpl.on{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}
.rb-tpl .tp{grid-row:1/4}
.rb-tpl b{font-size:14px}
.rb-tpl small{font-size:12px;color:var(--muted);line-height:1.35}
.rb-tpl em{font-style:normal;font-size:11.5px;font-weight:600}
.rb-tpl em.ok{color:var(--green)}.rb-tpl em.warn{color:var(--amber)}
.tp{display:block;width:46px;height:62px;border-radius:4px;background-color:#fff;border:1px solid #d8dde6;--k:#1f4e8c;background-repeat:no-repeat}
.tp-ats{background-image:linear-gradient(var(--k),var(--k)),linear-gradient(#c6ccd6,#c6ccd6),linear-gradient(var(--k),var(--k)),repeating-linear-gradient(#e2e6ec 0 2px,transparent 2px 5px),linear-gradient(var(--k),var(--k)),repeating-linear-gradient(#e2e6ec 0 2px,transparent 2px 5px);background-size:22px 4px,30px 2px,36px 1px,36px 14px,36px 1px,36px 12px;background-position:5px 6px,5px 12px,5px 20px,5px 23px,5px 40px,5px 43px}
.tp-classic{background-image:linear-gradient(#333,#333),linear-gradient(#c6ccd6,#c6ccd6),linear-gradient(#333,#333),repeating-linear-gradient(#e2e6ec 0 2px,transparent 2px 5px),linear-gradient(#333,#333),repeating-linear-gradient(#e2e6ec 0 2px,transparent 2px 5px);background-size:20px 4px,28px 2px,36px 1px,36px 14px,36px 1px,36px 12px;background-position:center 6px,center 12px,5px 20px,5px 23px,5px 40px,5px 43px}
.tp-modern{background-image:linear-gradient(var(--k),var(--k)),linear-gradient(var(--k),var(--k)),repeating-linear-gradient(#e2e6ec 0 2px,transparent 2px 5px),linear-gradient(var(--k),var(--k)),repeating-linear-gradient(#e2e6ec 0 2px,transparent 2px 5px);background-size:24px 5px,3px 5px,32px 14px,3px 5px,32px 12px;background-position:5px 6px,5px 18px,10px 24px,5px 40px,10px 46px}
.tp-banner{background-image:linear-gradient(var(--k),var(--k)),linear-gradient(var(--k),var(--k)),repeating-linear-gradient(#e2e6ec 0 2px,transparent 2px 5px),linear-gradient(var(--k),var(--k)),repeating-linear-gradient(#e2e6ec 0 2px,transparent 2px 5px);background-size:100% 13px,36px 4px,36px 10px,36px 4px,36px 10px;background-position:0 0,5px 18px,5px 25px,5px 38px,5px 45px}
.tp-minimal{background-image:linear-gradient(#555,#555),repeating-linear-gradient(#eceef2 0 2px,transparent 2px 6px),linear-gradient(#999,#999),repeating-linear-gradient(#eceef2 0 2px,transparent 2px 6px);background-size:18px 3px,34px 14px,14px 2px,34px 14px;background-position:6px 7px,6px 18px,6px 36px,6px 42px}
.tp-compact{background-image:linear-gradient(#222,#222),linear-gradient(#333,#333),repeating-linear-gradient(#d9dde4 0 2px,transparent 2px 3.5px),linear-gradient(#333,#333),repeating-linear-gradient(#d9dde4 0 2px,transparent 2px 3.5px);background-size:22px 3px,38px 1px,38px 17px,38px 1px,38px 17px;background-position:4px 4px,4px 11px,4px 13px,4px 33px,4px 35px}
.tp-executive{background-image:linear-gradient(#fff,#fff),linear-gradient(#26304a,#26304a),linear-gradient(var(--k),var(--k)),linear-gradient(90deg,#c9ced8 0 9px,transparent 9px 12px,#e2e6ec 12px),linear-gradient(90deg,#c9ced8 0 9px,transparent 9px 12px,#e2e6ec 12px),linear-gradient(var(--k),var(--k)),repeating-linear-gradient(#e2e6ec 0 2px,transparent 2px 5px);background-size:20px 3px,100% 15px,36px 1px,36px 2px,36px 2px,36px 1px,36px 10px;background-position:5px 5px,0 0,5px 21px,5px 25px,5px 29px,5px 36px,5px 40px}
.tp-sidebar{background-image:linear-gradient(var(--k),var(--k)),repeating-linear-gradient(#cfd8e6 0 2px,transparent 2px 5px),linear-gradient(#e7eef8,#e7eef8),repeating-linear-gradient(#e2e6ec 0 2px,transparent 2px 5px);background-size:22px 4px,10px 30px,15px 100%,22px 40px;background-position:19px 5px,3px 16px,0 0,19px 15px}

/* ready-made gallery */
.rb-lv{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:4px}
.rb-lv button{font:inherit;font-size:13px;font-weight:600;color:var(--muted);background:var(--bg);border:1px solid var(--line);border-radius:999px;padding:5px 11px;cursor:pointer}
.rb-lv button[aria-selected=true]{background:var(--accent);border-color:var(--accent);color:var(--bg)}
.rb-lv button:hover{border-color:var(--accent)}
.rb-gcs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.rb-gc{font:inherit;text-align:left;display:grid;grid-template-columns:46px minmax(0,1fr);grid-template-rows:auto auto 1fr;column-gap:10px;row-gap:1px;padding:9px;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--fg);cursor:pointer}
.rb-gc:hover{border-color:var(--accent)}
.rb-gc.on{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}
.rb-gc .tp{grid-row:1/4}
.rb-gc b{font-size:13.5px;line-height:1.3}
.rb-gc small{font-size:12px;color:var(--muted);line-height:1.3}
.rb-gc em{font-style:normal;font-size:11.5px;color:var(--accent);font-weight:600;align-self:end}
.rb-quick2{margin-top:-4px}
.tp-elegant{background-image:linear-gradient(#333,#333),linear-gradient(#999,#999),linear-gradient(#bbb,#bbb),repeating-linear-gradient(#e2e6ec 0 2px,transparent 2px 5px),linear-gradient(#bbb,#bbb),repeating-linear-gradient(#e2e6ec 0 2px,transparent 2px 5px);background-size:20px 3px,26px 1px,36px 1px,36px 12px,36px 1px,36px 12px;background-position:center 7px,center 13px,5px 19px,5px 24px,5px 39px,5px 44px}
.tp-bold{background-image:linear-gradient(var(--k),var(--k)),linear-gradient(var(--k),var(--k)),linear-gradient(90deg,var(--k) 0 2px,#dfe6f1 2px),repeating-linear-gradient(#e2e6ec 0 2px,transparent 2px 5px),linear-gradient(90deg,var(--k) 0 2px,#dfe6f1 2px),repeating-linear-gradient(#e2e6ec 0 2px,transparent 2px 5px);background-size:100% 3px,28px 6px,36px 4px,36px 10px,36px 4px,36px 10px;background-position:0 0,5px 7px,5px 19px,5px 26px,5px 39px,5px 46px}
@media (max-width:560px){.rb-gcs{grid-template-columns:minmax(0,1fr)}}

.rb-sw{width:28px;height:28px;border-radius:50%;border:2px solid var(--panel);box-shadow:0 0 0 1px var(--line);cursor:pointer;padding:0}
.rb-sw.on{box-shadow:0 0 0 2px var(--fg)}

/* preview */
.rb-right{min-width:0;position:sticky;top:72px}
.rb-pbar{display:flex;align-items:center;gap:6px;margin-bottom:8px;font-size:14px;color:var(--muted)}
.rb-pbar .grow{flex:1}
.rb-pbar .rb-b{padding:4px 10px}
#rb-pages.warn{color:var(--warn,var(--red));font-weight:600}
#rb-zoom{min-width:44px;text-align:center}
.rb-stage{background:var(--bg2);border:1px solid var(--line);border-radius:12px;padding:12px;overflow:auto;max-height:calc(100vh - 130px)}
.rb-scale{position:relative;margin:0 auto;overflow:hidden}
.rb-scale>.rdoc{position:absolute;left:0;top:0;transform-origin:0 0;box-shadow:0 2px 14px rgba(0,0,0,.25)}
.rcover{display:none}
.rb-jump{display:none}

/* modal */
.rb-modal{position:fixed;inset:0;z-index:90;background:rgba(5,10,20,.6);display:grid;place-items:center;padding:16px}
.rb-modal[hidden]{display:none}
.rb-mbox{position:relative;width:min(720px,100%);max-height:calc(100vh - 32px);overflow:auto;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:20px}
.rb-mbox h3{font-size:19px;margin:0 30px 8px 0!important}
.rb-mbox p{margin:6px 0 10px}
.rb-x{position:absolute;right:10px;top:10px;font-size:15px;width:32px;height:32px;border-radius:8px;border:1px solid var(--line);background:var(--bg);color:var(--fg);cursor:pointer}
.rb-chips{display:flex;flex-wrap:wrap;gap:5px;align-items:center;margin-bottom:6px}
.rb-chips small{width:100%;color:var(--muted);font-size:12px}
.rb-chips button{font:inherit;font-size:13px;border:1px solid var(--line);background:var(--bg);color:var(--fg);border-radius:999px;padding:3px 10px;cursor:pointer}
.rb-chips button:hover,.rb-idea:hover{border-color:var(--accent)}
.rb-mbox details{border:1px solid var(--line);border-radius:10px;padding:8px 10px;margin-bottom:6px}
.rb-mbox summary{cursor:pointer;font-weight:600;color:var(--fg)}
.rb-idea{display:block;width:100%;text-align:left;font:inherit;font-size:13.5px;line-height:1.45;color:var(--body);background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:7px 9px;margin-top:6px;cursor:pointer}
.rb-checks{display:grid;gap:6px}
.rb-checks label{display:flex;gap:9px;align-items:flex-start;border:1px solid var(--line);border-radius:9px;padding:8px 10px;cursor:pointer;background:var(--bg);font-size:14px}
.rb-checks input{margin-top:3px;accent-color:var(--accent)}
.rb-checks small{color:var(--muted)}
.rb-checks em{font-style:normal;color:var(--green);font-size:12.5px;font-weight:600}
.rb-txt{min-height:300px;font-family:var(--mono)!important;font-size:12.5px!important}

/* ATS + score */
.rb-jd{min-height:160px}
.rb-score{display:flex;gap:14px;align-items:center}
.rb-ring{flex:none;width:86px;height:86px;border-radius:50%;background:conic-gradient(var(--c) calc(var(--p) * 1%),var(--line) 0);display:grid;place-items:center}
.rb-ring b{width:68px;height:68px;border-radius:50%;background:var(--panel);display:grid;place-items:center;font-size:20px;color:var(--fg)}
.rb-kw{display:flex;flex-wrap:wrap;gap:5px}
.rb-kw span,.rb-kw button{font:inherit;font-size:13px;border-radius:999px;padding:3px 10px;border:1px solid var(--line)}
.rb-kw .ok{background:var(--greenbg,rgba(46,160,110,.15));color:var(--green);border-color:transparent}
.rb-kw .no{background:var(--redbg,rgba(220,70,70,.14));color:var(--red);border-color:transparent;cursor:pointer}
.rb-kw .no:hover{border-color:var(--red)}
.rb-kw .neu{color:var(--muted)}
.rb-kw em{color:var(--muted);font-size:13.5px}
.rb-checklist,.rb-fixes{margin:0;padding-left:0;list-style:none;display:grid;gap:6px;font-size:14px}
.rb-checklist li::before{margin-right:6px}
.rb-checklist li.ok::before{content:'✅'}.rb-checklist li.warn::before{content:'⚠️'}
.rb-fixes li{border:1px solid var(--line);border-radius:9px;padding:8px 10px;background:var(--bg);line-height:1.45}
.rb-fixes .rb-add{margin:4px 0 0;padding:2px 8px;font-size:12.5px}

@media (max-width:1020px){
  .rb-main{grid-template-columns:minmax(0,1fr)}
  .rb-left,.rb-right{position:static;max-height:none}
  .rb-pane{overflow:visible}
  .rb-stage{max-height:none;scroll-margin-top:70px}
  .rb-jump{display:block;position:fixed;left:14px;bottom:14px;z-index:60;background:var(--accent);color:var(--bg);font-weight:700;font-size:14px;text-decoration:none;border-radius:999px;padding:9px 14px;box-shadow:0 4px 14px rgba(0,0,0,.35)}
}
@media (max-width:560px){
  .rb-shell{padding-top:14px}
  .rb-title h1{font-size:22px}
  .rb-grid,.rb-tpls{grid-template-columns:minmax(0,1fr)}
  .rb-docs select{flex:1 1 100%;max-width:none}
  .rb-b{padding:7px 10px}
  .rb-stage{padding:6px}
  .rb-links .rb-f:first-child{flex-basis:84px}
}

/* ============ the resume document (A4, always white) ============ */
.rdoc{--r-ac:#1f4e8c;--r-ink:#1d2433;--r-mut:#4a5468;--r-sp:1;--r-mg:14mm;width:210mm;min-height:297mm;box-sizing:border-box;padding:var(--r-mg);background:#fff;color:var(--r-ink);
  font-family:var(--r-font,Arial,sans-serif);font-size:var(--r-size,10.5pt);line-height:calc(1.28 + .1 * var(--r-sp));text-align:left;
  -webkit-print-color-adjust:exact;print-color-adjust:exact;overflow-wrap:anywhere}
.rdoc h1,.rdoc h2{color:inherit;margin:0;font-family:inherit}
.rdoc a{color:inherit;text-decoration:none}
.rdoc p{margin:0}
.rdoc .r-head{margin-bottom:calc(.9em * var(--r-sp))}
.rdoc .r-head h1{font-size:2.15em;line-height:1.1;font-weight:700;letter-spacing:-.01em}
.rdoc .r-title{font-size:1.1em;font-weight:600;color:var(--r-mut);margin-top:.15em}
.rdoc .r-contact{font-size:.9em;color:var(--r-mut);margin-top:.3em}
.rdoc .r-dot{opacity:.6}
.rdoc .r-sec{margin-top:calc(.85em * var(--r-sp))}
.rdoc .r-sec h2{font-size:1.02em;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin-bottom:calc(.4em * var(--r-sp));break-after:avoid}
.rdoc .r-it{margin-bottom:calc(.55em * var(--r-sp));break-inside:avoid}
.rdoc .r-it:last-child{margin-bottom:0}
.rdoc .r-row{display:flex;flex-wrap:wrap;gap:0 .55em;align-items:baseline}
.rdoc .r-row>b{font-weight:700}
.rdoc .r-org{color:var(--r-mut)}
.rdoc .r-org::before{content:'·';margin-right:.5em;opacity:.7}
.rdoc .r-date{margin-left:auto;color:var(--r-mut);font-size:.93em;white-space:nowrap}
.rdoc .r-sub{color:var(--r-mut);font-size:.93em;font-style:italic}
.rdoc ul{margin:calc(.2em * var(--r-sp)) 0 0;padding-left:1.15em}
.rdoc li{margin-bottom:calc(.14em * var(--r-sp))}
.rdoc li::marker{color:var(--r-ac)}
.rdoc .r-lb{font-weight:700}
.rdoc .r-skill{margin-bottom:.15em}
.rdoc .r-summary p{text-align:left}
.rdoc .r-letter p{margin-bottom:1em;line-height:1.55}
.rdoc .r-letter{margin-top:1.6em}

/* ATS Pro */
.tpl-ats .r-head h1{color:var(--r-ac)}
.tpl-ats .r-sec h2{color:var(--r-ac);font-variant:small-caps;text-transform:none;font-size:1.15em;letter-spacing:.04em;border-bottom:1px solid var(--r-ac);padding-bottom:.1em}
/* Classic */
.tpl-classic .r-head{text-align:center;border-bottom:1.5px solid #222;padding-bottom:.6em}
.tpl-classic .r-sec h2{border-bottom:1px solid #444;padding-bottom:.1em}
/* Modern */
.tpl-modern .r-head h1{color:var(--r-ac)}
.tpl-modern .r-title{color:var(--r-ink)}
.tpl-modern .r-sec h2{color:var(--r-ac);border-left:4px solid var(--r-ac);padding-left:.5em}
.tpl-modern .r-row>b{color:var(--r-ink)}
/* Banner */
.tpl-banner .r-head{background:var(--r-ac);color:#fff;margin:calc(-1 * var(--r-mg)) calc(-1 * var(--r-mg)) calc(1em * var(--r-sp));padding:calc(var(--r-mg) * .85) var(--r-mg)}
.tpl-banner .r-title,.tpl-banner .r-contact{color:rgba(255,255,255,.92)}
.tpl-banner .r-sec h2{background:var(--r-ac);color:#fff;padding:.18em .6em}
.tpl-banner li::marker{color:var(--r-ac)}
/* Minimal */
.tpl-minimal .r-head h1{font-weight:500;letter-spacing:.01em}
.tpl-minimal .r-sec h2{font-weight:600;color:#6a7385;letter-spacing:.16em;font-size:.92em}
.tpl-minimal .r-sec{margin-top:calc(1.15em * var(--r-sp))}
.tpl-minimal li::marker{color:#8a92a3}
/* Compact */
.tpl-compact{line-height:calc(1.2 + .08 * var(--r-sp))}
.tpl-compact .r-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:.1em .8em;margin-bottom:.4em;border-bottom:1.5px solid var(--r-ac);padding-bottom:.35em}
.tpl-compact .r-head h1{font-size:1.75em}
.tpl-compact .r-contact{flex-basis:100%;margin-top:0}
.tpl-compact .r-sec{margin-top:calc(.55em * var(--r-sp))}
.tpl-compact .r-sec h2{color:var(--r-ac);font-size:.95em;margin-bottom:.2em}
.tpl-compact .r-it{margin-bottom:calc(.35em * var(--r-sp))}
.tpl-compact li{margin-bottom:0}
/* Executive */
.tpl-executive .r-head{background:color-mix(in srgb,var(--r-ac) 45%,#0d1424);color:#fff;margin:calc(-1 * var(--r-mg)) calc(-1 * var(--r-mg)) calc(1em * var(--r-sp));padding:calc(var(--r-mg) * .95) var(--r-mg)}
.tpl-executive .r-head h1{letter-spacing:.04em;text-transform:uppercase;font-size:1.95em}
.tpl-executive .r-title{color:rgba(255,255,255,.9)}
.tpl-executive .r-contact{color:rgba(255,255,255,.8)}
.tpl-executive .r-sec h2{color:var(--r-ac);border-bottom:2px solid var(--r-ac);padding-bottom:.12em;letter-spacing:.1em}
.tpl-executive .r-skills .r-skill{display:grid;grid-template-columns:30% 1fr;gap:.6em;padding:.22em 0;border-bottom:1px solid #e3e6ec;margin:0}
.tpl-executive .r-skills .r-skill:last-child{border-bottom:0}
.tpl-executive .r-skills .r-skill b{color:var(--r-ac)}
.tpl-executive .r-experience .r-org{font-style:italic}
/* Two-column */
.tpl-sidebar .r-head h1{color:var(--r-ac)}
.tpl-sidebar .r-cols{display:grid;grid-template-columns:32% minmax(0,1fr);gap:1.4em;align-items:start}
.tpl-sidebar .r-side{background:color-mix(in srgb,var(--r-ac) 9%,#fff);padding:.4em .9em .9em;border-radius:3px}
.tpl-sidebar .r-side .r-sec:first-child,.tpl-sidebar .r-main .r-sec:first-child{margin-top:.4em}
.tpl-sidebar .r-sec h2{color:var(--r-ac);border-bottom:1px solid color-mix(in srgb,var(--r-ac) 40%,#fff);padding-bottom:.1em}
.tpl-sidebar .r-side .r-skill b{display:block}
.tpl-sidebar .r-side .r-skill{margin-bottom:.45em}
.tpl-sidebar .r-side .r-row{display:block}
.tpl-sidebar .r-side .r-row>*{display:block;margin:0}
.tpl-sidebar .r-side .r-org::before{content:none}

/* Elegant */
.tpl-elegant .r-head{text-align:center;padding-bottom:.5em;border-bottom:1px solid #bbb}
.tpl-elegant .r-head h1{font-weight:400;letter-spacing:.08em;text-transform:uppercase;font-size:1.95em}
.tpl-elegant .r-title{color:var(--r-ac);font-weight:400;font-style:italic}
.tpl-elegant .r-sec h2{text-align:center;font-weight:400;letter-spacing:.22em;color:var(--r-ac);border-bottom:1px solid #ccc;padding-bottom:.15em}
.tpl-elegant li::marker{color:#999}
/* Bold */
.tpl-bold .r-head{border-top:7px solid var(--r-ac);margin:calc(-1 * var(--r-mg)) calc(-1 * var(--r-mg)) calc(1em * var(--r-sp));padding:calc(var(--r-mg) * .8) var(--r-mg) 0}
.tpl-bold .r-head h1{font-size:2.6em;color:var(--r-ac);font-weight:800;letter-spacing:-.02em}
.tpl-bold .r-title{color:var(--r-ink);font-weight:700}
.tpl-bold .r-sec h2{background:color-mix(in srgb,var(--r-ac) 11%,#fff);border-left:4px solid var(--r-ac);color:var(--r-ac);padding:.15em .55em}
.tpl-bold .r-skills .r-skill b{color:var(--r-ac)}
/* Executive layout also applies to Elegant/Bold competency grids at senior levels */
.tpl-elegant .r-skills .r-skill,.tpl-bold .r-skills .r-skill{display:grid;grid-template-columns:28% 1fr;gap:.6em;padding:.15em 0;margin:0}

/* ============ print: only the document ============ */
@media print{
  @page{size:A4;margin:11mm 0}
  @page:first{margin-top:0}
  html,body{background:#fff!important;color-scheme:light!important}
  body>*:not(main),.rb-jump,.rb-top,.rb-left,.rb-pbar,.rb-modal,.l24-float,.top,footer,.gl-tip{display:none!important}
  .rb-shell{padding:0!important;max-width:none!important}
  .rb-main{display:block!important}
  .rb-right{position:static!important}
  .rb-stage{all:unset;display:block}
  .rb-scale{width:auto!important;height:auto!important;overflow:visible!important}
  .rb-scale>.rdoc{position:static!important;transform:none!important;box-shadow:none!important}
  .rdoc{width:auto!important;min-height:0!important;padding-top:var(--r-mg)!important;padding-bottom:0!important}
  body.rb-print-cover .rb-stage{display:none!important}
  body.rb-print-cover .rcover{display:block!important}
}
