/* On Training — Excel para RH (complementa /assets/primeiros-passos/pp.css) */
/* On Training — IA no Trabalho com Segurança (complementa /assets/primeiros-passos/pp.css) */
/* ---- sala: páginas de conteúdo */
.pps-art.is-wide { width: min(1180px, calc(100% - 40px)); }
@media (max-width: 1020px) { .pps-art.is-wide { width: calc(100% - 24px); } }
.pbi-prose p { line-height: 1.7; }
.pbi-prose code, .pbi-steps-real code { font: 700 .9em Consolas, monospace; color: #0f766e; background: #ecfdf5; padding: .05rem .35rem; border-radius: 5px; }
.pbi-flow { list-style: none; counter-reset: f; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: .5rem; margin: 1.1rem 0 1.3rem; padding: 0; }
.pbi-flow li { counter-increment: f; position: relative; padding: .8rem .7rem .7rem; border-radius: 12px; background: #f1f7fb; border: 1px solid #dbe7f0; }
.pbi-flow li::before { content: counter(f); display: grid; place-items: center; width: 1.6rem; height: 1.6rem; margin-bottom: .4rem; border-radius: 50%; background: #f2c811; color: #061a2b; font: 800 .8rem Inter, sans-serif; }
.pbi-flow li b { display: block; color: #061a2b; font-size: .95rem; }
.pbi-flow li span { display: block; margin-top: .2rem; color: #52667a; font-size: .8rem; line-height: 1.4; }
@media (max-width: 700px) { .pbi-flow { grid-template-columns: 1fr 1fr; } }
.pbi-cards2, .pbi-cards3 { display: grid; gap: .7rem; margin: 1.1rem 0; }
.pbi-cards2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.pbi-cards3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 700px) { .pbi-cards2, .pbi-cards3 { grid-template-columns: 1fr; } }
.pbi-cards2 > div, .pbi-cards3 > div { padding: 1rem 1.1rem; border-radius: 14px; background: #fff; border: 1px solid #dbe5ee; box-shadow: 0 10px 24px -20px rgba(6, 26, 43, .45); }
.pbi-cards2 b, .pbi-cards3 b { color: #061a2b; font-size: 1rem; }
.pbi-cards2 p, .pbi-cards3 p { margin: .35rem 0 0; color: #3d5266; font-size: .92rem; line-height: 1.55; }
.pbi-key { display: flex; gap: .8rem; margin: 1.2rem 0 0; padding: 1rem 1.1rem; border-radius: 14px; background: #fff8db; border: 1px solid #f2d56b; }
.pbi-key > .ms { color: #a16207; font-size: 1.6rem; }
.pbi-key b { color: #713f12; }
.pbi-key p { margin: .2rem 0 0; color: #3f2f0a; }
.pbi-news { display: flex; gap: .8rem; margin: .8rem 0 0; padding: .9rem 1.1rem; border-radius: 14px; background: #eef6ff; border: 1px solid #c7dcf3; }
.pbi-news > .ms { color: #0f6cbd; font-size: 1.5rem; }
.pbi-news p { margin: 0; color: #12324f; font-size: .93rem; line-height: 1.6; }
.pbi-star { display: grid; grid-template-columns: 1fr 1.15fr 1fr; align-items: center; gap: 0; margin: 1.2rem auto; max-width: 560px; position: relative; }
.pbi-star > div { position: relative; z-index: 1; padding: .9rem .6rem; border-radius: 12px; text-align: center; font-weight: 800; color: #061a2b; background: #fff; border: 2px solid #c9d6e2; }
.pbi-star > div small { display: block; margin-top: .15rem; font-weight: 600; font-size: .75rem; color: #52667a; text-transform: uppercase; letter-spacing: .08em; }
.pbi-star .f { background: #fff8db; border-color: #f2c811; }
.pbi-star::before { content: ""; position: absolute; left: 12%; right: 12%; top: 50%; height: 2px; background: #9bb0c3; }
.pbi-dax { margin: 1rem 0; padding: 1rem 1.1rem; border-radius: 12px; background: #0b1a29; color: #e5eef6; font: 600 .95rem/1.7 Consolas, "Cascadia Code", monospace; overflow-x: auto; }
.pbi-vguide { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: .5rem; margin: 1rem 0; }
.pbi-vguide div { padding: .7rem; border-radius: 12px; background: #f1f7fb; border: 1px solid #dbe7f0; }
.pbi-vguide b { display: block; color: #061a2b; font-size: .9rem; }
.pbi-vguide span { color: #52667a; font-size: .8rem; }
@media (max-width: 700px) { .pbi-vguide { grid-template-columns: 1fr 1fr; } }
.pbi-lic { width: 100%; margin: 1rem 0; border-collapse: collapse; font-size: .92rem; }
.pbi-lic th, .pbi-lic td { padding: .6rem .7rem; border-bottom: 1px solid #e2ebf3; text-align: left; vertical-align: top; }
.pbi-lic th { background: #f1f7fb; color: #061a2b; }
.pbi-pits { display: grid; gap: .7rem; margin-top: 1rem; }
.pbi-pit { display: flex; gap: .8rem; padding: 1rem 1.1rem; border-radius: 14px; background: #fff; border: 1px solid #f3d2c7; border-left: 5px solid #e8590c; }
.pbi-pit > .ms { color: #c2410c; }
.pbi-pit b { color: #061a2b; }
.pbi-pit p { margin: .25rem 0 0; color: #3d5266; line-height: 1.55; }
.pbi-steps-real { margin: 1rem 0; padding-left: 1.3rem; display: grid; gap: .5rem; }
.pbi-steps-real li { line-height: 1.6; padding-left: .3rem; }
.pbi-xl { display: flex; gap: 1rem; align-items: center; margin: 1.2rem 0; padding: 1rem 1.1rem; border-radius: 14px; background: #f0fdf4; border: 1px solid #bbe5c8; }
.pbi-xl b { display: block; margin-bottom: .6rem; color: #064e3b; }
.pbi-xlic { display: grid; place-items: center; width: 3rem; height: 3rem; border-radius: 12px; background: #107c41; color: #fff; }
.pbi-note { display: flex; gap: .5rem; align-items: flex-start; margin: .6rem 0 0; color: #52667a; font-size: .9rem; line-height: 1.55; }
.pbi-note .ms { color: #0f6cbd; font-size: 1.15rem; }

/* ---- Excel para RH: complementos */
.ia-sem { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .6rem; margin: 1rem 0; }
.ia-sem > div { padding: .9rem 1rem; border-radius: 14px; border: 1px solid; border-top-width: 6px; }
.ia-sem b { display: block; color: #061a2b; }
.ia-sem p { margin: .3rem 0 0; font-size: .9rem; line-height: 1.5; color: #3d5266; }
.ia-sem .g { border-color: #86d9a8; background: #f0fdf5; }
.ia-sem .y { border-color: #f2d56b; background: #fffbea; }
.ia-sem .r { border-color: #f4a582; background: #fff6f1; }
@media (max-width: 700px) { .ia-sem { grid-template-columns: 1fr; } }
.ia-cases { display: grid; gap: .8rem; margin-top: 1rem; }
.ia-case { padding: 1rem 1.1rem; border-radius: 14px; background: #fff; border: 1px solid #dbe5ee; box-shadow: 0 10px 24px -20px rgba(6, 26, 43, .45); display: grid; grid-template-columns: 1fr 1fr; gap: .5rem 1rem; }
.ia-case h3 { grid-column: 1 / -1; margin: 0; font-size: 1.05rem; color: #061a2b; }
.ia-case small { display: block; font-size: .7rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.ia-case p { margin: .25rem 0 0; line-height: 1.55; font-size: .93rem; }
.ia-case-a { padding: .7rem .8rem; border-radius: 10px; background: #f6f8fb; }
.ia-case-a small { color: #64748b; }
.ia-case-b { padding: .7rem .8rem; border-radius: 10px; background: #effcf8; border-left: 4px solid #00aa91; }
.ia-case-b small { color: #047857; }
@media (max-width: 700px) { .ia-case { grid-template-columns: 1fr; } }
.ia-tpl { margin: 1.1rem 0 0; border-radius: 14px; border: 1px solid #cfe0ec; overflow: hidden; }
.ia-tpl-h { display: flex; justify-content: space-between; align-items: center; gap: .6rem; padding: .6rem .8rem; background: #f1f7fb; }
.ia-tpl-h b { display: flex; align-items: center; gap: .4rem; color: #061a2b; }
.ia-tpl pre { margin: 0; padding: .9rem 1rem; white-space: pre-wrap; font: 600 .9rem/1.6 Consolas, "Cascadia Code", monospace; color: #12324f; background: #fff; }
.ia-mats { display: grid; gap: .5rem; }
.ia-mat { display: flex; align-items: center; gap: .8rem; padding: .8rem 1rem; border-radius: 14px; border: 1px solid #bfe9de; background: #effcf8; color: #061a2b; text-decoration: none; }
.ia-mat:hover { border-color: #00aa91; }
.ia-mat > .ms:first-child { display: grid; place-items: center; width: 2.4rem; height: 2.4rem; border-radius: 10px; background: #00cca3; color: #061a2b; }
.ia-mat > .ms:last-child { margin-left: auto; color: #52667a; }
.ia-mat b { display: block; }
.ia-mat small { color: #3d5266; }
.rh-rep-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 1.2rem; margin-top: 1rem; align-items: start; }
@media (max-width: 860px) { .rh-rep-grid { grid-template-columns: 1fr; } }
.rh-rep-form { display: grid; gap: .8rem; }
.rh-rep-form > label { display: grid; gap: .3rem; font-weight: 700; color: #061a2b; font-size: .92rem; }
.rh-rep-form input[type=text], .rh-rep-form textarea { padding: .6rem .75rem; border-radius: 10px; border: 1px solid #b9c7d3; font: 500 .95rem Inter, sans-serif; color: #10243a; }
.rh-rep-form fieldset { margin: 0; padding: .7rem .8rem; border-radius: 12px; border: 1px solid #dbe5ee; display: grid; gap: .35rem; }
.rh-rep-form legend { font-weight: 800; color: #061a2b; padding: 0 .3rem; }
.rh-rep-ck { display: flex; gap: .55rem; align-items: flex-start; font-size: .9rem; line-height: 1.45; cursor: pointer; }
.rh-rep-ck input { margin-top: .2rem; width: 1.05rem; height: 1.05rem; accent-color: #008b76; flex: none; }
.rh-rep-out { position: sticky; top: 0; }
.rh-rep-doc { padding: 1.2rem 1.3rem; border-radius: 14px; background: #fff; border: 1px solid #dbe5ee; border-top: 6px solid #f4b400; box-shadow: 0 16px 34px -26px rgba(6, 26, 43, .5); margin-bottom: .8rem; }
.rh-rep-doc h3 { margin: 0 0 .5rem; font-size: 1.15rem; color: #061a2b; }
.rh-rep-by { margin: .1rem 0; color: #3d5266; font-size: .92rem; }
.rh-rep-doc ol { margin: .7rem 0; padding-left: 1.2rem; display: grid; gap: .35rem; line-height: 1.5; font-size: .93rem; }
.rh-rep-doc small { color: #64748b; }

/* ---- projeto final: relatório mensal */
.rh-rep-2 { display: grid; grid-template-columns: 1fr 1fr; gap: .6rem; }
.rh-rep-form input[type=number] { padding: .6rem .75rem; border-radius: 10px; border: 1px solid #cfdbe6; font: 600 .95rem Inter, sans-serif; width: 100%; box-sizing: border-box; }
.rh-rep-kpis { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .6rem; margin: .8rem 0; }
.rh-rep-kpis > div { padding: .7rem .8rem; border-radius: 12px; background: #f1f7fb; border: 1px solid #d6e4ef; }
.rh-rep-kpis small { display: block; color: #52667a; font-weight: 700; font-size: .75rem; }
.rh-rep-kpis b { display: block; margin-top: .15rem; font-size: 1.2rem; color: #061a2b; }
.rh-rep-f { margin: .4rem 0; }
/* ---- vitrine: arte do topo (planilha) */
.rh-hero-art { position: absolute; inset: 18px 6px 26px 18px; border-radius: 16px; overflow: hidden; background: #fff; color: #10243a; box-shadow: 0 40px 80px -30px rgba(0, 0, 0, .7), 0 0 0 1px rgba(255, 255, 255, .12); display: flex; flex-direction: column; font-size: .82rem; }
.rh-ha-t { display: flex; align-items: center; gap: .5rem; padding: .55rem .8rem; background: #0c1f33; color: #fff; font-weight: 700; }
.rh-ha-t i { display: grid; place-items: center; width: 1.5rem; height: 1.5rem; border-radius: 8px; background: linear-gradient(135deg, #00cca3, #3fa7d6); color: #061a2b; font-style: normal; font-size: .8rem; }
.rh-ha-t small { margin-left: auto; color: #9fb4c8; font-weight: 600; font-size: .66rem; }
.rh-ha-f { display: flex; align-items: center; gap: .5rem; padding: .4rem .7rem; border-bottom: 1px solid #c8d3dc; background: #f7f9fa; }
.rh-ha-f b { padding: .1rem .5rem; border: 1px solid #c8d3dc; background: #fff; font-weight: 600; }
.rh-ha-f code { font: 13px Consolas, monospace; }
.rh-ha-g { flex: 1; display: grid; grid-template-columns: 1.6rem 1.5fr 1fr .9fr .9fr; align-content: start; font-size: .74rem; }
.rh-ha-g span { padding: .32rem .45rem; border-right: 1px solid #e3e9ef; border-bottom: 1px solid #e3e9ef; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rh-ha-g .h { background: #eef2f6; font-weight: 700; color: #52667a; text-align: center; }
.rh-ha-g .n { text-align: right; }
.rh-ha-g .k { background: #fff4c2; box-shadow: inset 0 0 0 2px #f4b400; font-weight: 800; }
@media (max-width: 860px) { .rh-rep-2, .rh-rep-kpis { grid-template-columns: 1fr 1fr; } }

/* long formulas in inline code must wrap on small screens */
.pps-main code{white-space:normal;overflow-wrap:anywhere;word-break:break-word}

.rh-xl { display: flex; gap: 1rem; align-items: center; margin: 0 0 1.2rem; padding: 1rem 1.1rem; border-radius: 14px; background: #f0fdf4; border: 1px solid #bbf7d0; }
.rh-xl b { display: block; margin-bottom: .3rem; }
.rh-xl small { display: block; margin-bottom: .7rem; color: #52667a; line-height: 1.45; }
.rh-xl code { font: 700 .95em Consolas, monospace; background: #fff; border: 1px solid #bbf7d0; padding: .05rem .35rem; border-radius: 5px; }
.rh-xlic { flex: none; display: grid; place-items: center; width: 3.2rem; height: 3.2rem; border-radius: 12px; background: #107c41; color: #fff; }
@media (max-width: 560px) { .rh-xl { flex-direction: column; align-items: flex-start; } }
