/* /careers — page-only additions on top of site.css (tokens + .rb-* components). Logical properties only (RTL). */

/* Posting header + in-page navigation */
.rbp-job{display:flex;flex-direction:column;align-items:flex-start;gap:1rem;padding:1.5rem}
@media (min-width:640px){.rbp-job{padding:2.5rem}}
@media (min-width:1024px){.rbp-job{padding:3rem}}
.rbp-job__tags{display:flex;flex-wrap:wrap;gap:.5rem}
.rbp-job__tags .rb-tag{font-size:.8rem}
.rbp-job__title{font-size:var(--rb-text-h2);font-weight:800;line-height:var(--rb-leading-h2);color:var(--rb-ink)}
.rbp-job .rb-lead{max-width:48rem}
.rbp-toc{align-self:stretch;margin-top:1rem;padding-top:1.5rem;border-top:1px solid var(--rb-line)}
.rbp-toc .rb-chip{min-height:2.25rem;padding:.4rem .9rem;font-size:.85rem}
.rbp-toc .rb-chip:hover{border-color:var(--rb-accent);color:var(--rb-accent-deep)}

/* Company */
.rbp-body-lg{font-size:1.05rem;line-height:1.8;color:var(--rb-ink-2);text-wrap:pretty}
.rbp-subtitle{font-size:1.2rem;font-weight:800;color:var(--rb-ink)}
.rbp-location{margin-top:1.75rem;background:var(--rb-white);border:1px solid var(--rb-line)}
.rbp-location strong{margin-inline-end:.375rem;color:var(--rb-ink)}

/* Duties: one row per duty (title + share | content) */
.rbp-step{margin-top:3.5rem}
.rbp-step .rb-group__head .rb-index{padding-inline:.75rem}
.rbp-duties{display:grid;gap:.75rem}
.rbp-duty{display:grid;gap:1.25rem;padding:1.5rem}
@media (min-width:640px){.rbp-duty{padding:1.75rem}}
@media (min-width:1024px){.rbp-duty{grid-template-columns:15rem minmax(0,1fr);gap:2rem;padding:2rem}}
.rbp-duty__head{display:flex;flex-direction:column;align-items:flex-start;gap:.625rem}
.rbp-duty__title{font-size:1.1rem;font-weight:800;line-height:1.4;color:var(--rb-ink);text-wrap:balance}
.rbp-duty__groups{display:grid;gap:1.25rem}
@media (min-width:640px){.rbp-duty__groups{grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:1.5rem}}
.rbp-duty__group .rb-dot-list{margin-top:.625rem}
@media (min-width:640px){.rbp-duty__groups--flat{display:block}.rbp-duty__groups--flat .rb-dot-list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:1.5rem}}
.rbp-gain{margin-top:.75rem;padding:1.5rem;border:1px solid var(--rb-line);border-radius:var(--rb-radius-card);background:var(--rb-accent-tint)}
@media (min-width:1024px){.rbp-gain{display:grid;grid-template-columns:15rem minmax(0,1fr);gap:2rem;align-items:start;padding:2rem}}
.rbp-gain__title{display:flex;align-items:center;gap:.625rem;font-size:1rem;font-weight:800;color:var(--rb-ink)}
.rbp-gain .rb-check-list{margin-top:1rem}
@media (min-width:640px){.rbp-gain .rb-check-list--cols{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1024px){.rbp-gain .rb-check-list{margin-top:0}}

/* Requirements */
.rbp-card-head{display:flex;align-items:center;gap:.875rem}
.rbp-card-head__title{font-family:var(--rb-font-display);font-size:1.4rem;font-weight:800;line-height:1.3;color:var(--rb-ink)}
.rbp-req-grid{display:grid;gap:1.5rem;margin-top:1.75rem}
@media (min-width:640px){.rbp-req-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.75rem 1.5rem}}
.rbp-req-grid .rb-check-list,.rbp-req-grid .rb-dot-list{margin-top:.625rem}

/* Why this role (night) */
.rbp-night-card{display:flex;flex-direction:column;align-items:flex-start;gap:1rem;padding:1.5rem;border-radius:var(--rb-radius-card)}
@media (min-width:640px){.rbp-night-card{padding:2rem}}
.rbp-night-card__title{font-size:1.3rem;font-weight:800;line-height:1.35;color:var(--rb-on-night)}
.rbp-night-card__text{font-size:.98rem;line-height:var(--rb-leading-relaxed);color:var(--rb-on-night-2);text-wrap:pretty}
.rbp-roadmap{display:grid;gap:.625rem;align-self:stretch}
.rbp-roadmap li{display:flex;align-items:flex-start;gap:.875rem;padding:.875rem 1rem;border:1px solid var(--rb-night-border);border-radius:var(--rb-radius-md);background:color-mix(in srgb,var(--rb-on-night) 4%,transparent);font-size:.95rem;line-height:1.5;color:var(--rb-on-night-2)}
.rbp-roadmap b{color:var(--rb-on-night)}
.rbp-roadmap__n{display:grid;place-items:center;flex:none;width:1.75rem;height:1.75rem;border-radius:var(--rb-radius-pill);background:color-mix(in srgb,var(--rb-accent-bright) 14%,transparent);color:var(--rb-accent-bright);font:700 .8rem/1 var(--rb-font-display)}
.rbp-roadmap__arrow svg{display:inline-block;width:.9rem;height:.9rem;vertical-align:-.12em;color:var(--rb-accent-bright)}
.rbp-skill{height:100%;padding:1.5rem;border-radius:var(--rb-radius-lg)}
.rbp-skill__title{font-size:1.05rem;font-weight:800;color:var(--rb-on-night)}
#value .rb-group__head::after{background:var(--rb-night-border)}
#value .rb-group__title{color:var(--rb-on-night)}

/* Selection process: horizontal rail from 1024px (node above each card; 2×2 at 1024–1279, 4 equal columns from 1280) */
@media (min-width:768px) and (max-width:1023px){
.rbp-hrail .rb-rail__line{inset-inline-start:1.35rem}
.rbp-hrail .rb-rail__list{gap:1.25rem}
.rbp-hrail .rb-rail__item{display:block}
.rbp-hrail .rb-rail__node{position:absolute}
.rbp-hrail .rb-rail__card,.rbp-hrail .rb-rail__item:nth-child(even) .rb-rail__card{margin:0;margin-inline-start:4rem}
}
@media (min-width:1024px){
.rbp-hrail{max-width:none}
.rbp-hrail .rb-rail__line{top:1.375rem;bottom:auto;inset-inline:1.375rem 0;width:auto;height:1px}
.rbp-hrail .rb-rail__line::after{top:-.5px;bottom:auto;inset-inline:0;width:auto;height:2px;background:repeating-linear-gradient(to right,var(--rb-accent) 0 8px,transparent 8px 20px);animation:rbp-dash-x 1.6s linear 3}
.rbp-hrail .rb-rail__list{grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem}
.rbp-hrail .rb-rail__item{display:flex;flex-direction:column;align-items:flex-start;gap:1.25rem}
.rbp-hrail .rb-rail__node{position:relative}
.rbp-hrail .rb-rail__card,.rbp-hrail .rb-rail__item:nth-child(even) .rb-rail__card{flex:1;align-self:stretch;margin:0}
}
/* 1024–1279px: 2×2 (four columns are too narrow for the longer languages, e.g. ru titles broke over 3–4 lines).
   The full-width line is replaced by a dashed connector from each row's first node to the second (1→2, 3→4). */
@media (min-width:1024px) and (max-width:1279px){
.rbp-hrail .rb-rail__line{display:none}
.rbp-hrail .rb-rail__list{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem 1.5rem}
.rbp-hrail .rb-rail__item:nth-child(odd)::before{content:"";position:absolute;top:calc(1.375rem - 1px);inset-inline:2.75rem -1.5rem;height:2px;background:repeating-linear-gradient(to right,var(--rb-accent) 0 8px,transparent 8px 20px);animation:rbp-dash-x 1.6s linear 3}
}
@keyframes rbp-dash-x{to{background-position:40px 0}}
@media (prefers-reduced-motion:reduce){.rbp-hrail .rb-rail__line::after,.rbp-hrail .rb-rail__item::before{animation:none}}
#process .rb-group__head{margin-top:4rem}

/* How to apply */
.rbp-docs > li > div{min-width:0}
.rbp-docs .rbp-docs__sub{margin-top:.625rem}
.rbp-docs .rbp-docs__sub li{display:block;font-size:.92rem;color:var(--rb-ink-2)}
.rbp-docs .rbp-docs__sub li::before{top:.62em;width:.35rem;height:.35rem;margin-top:0;border-radius:50%;background:var(--rb-line-strong);-webkit-mask:none;mask:none}
.rbp-message{display:flex;flex-direction:column;gap:.875rem}

/* Final notes */
.rbp-notes__grid{display:grid;gap:1.5rem;margin-top:1.5rem}
@media (min-width:768px){.rbp-notes__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem}}

/* Phones: tighter cards on the long page */
@media (max-width:639px){
.rbp-skill{padding:1.25rem}
.rbp-duty{padding:1.25rem}
.rbp-gain{padding:1.25rem}
.rbp-night-card{padding:1.25rem}
.rbp-roadmap li{padding:.75rem .875rem}
}

/* Japanese headings: phrase-aware breaks (Chromium auto-phrase; other engines ignore it). Stopgap until core covers all ja pages */
html:lang(ja) main :is(h1,h2,h3,h4){word-break:auto-phrase}

/* Korean fallback body on a non-ko page (no careers pack yet; wrapper set in the template): keep-all as under
   html:lang(ko), and undo the html[dir=rtl] icon / breadcrumb flips inside the LTR wrapper */
.rbp-ko-fallback{word-break:keep-all}
.rbp-ko-fallback .rb-icon-flip{transform:none}
.rbp-ko-fallback .rb-breadcrumb li + li::before{transform:rotate(45deg)}
