@import url("projeto-v2.css?v=20261007-guia-acolhedor-v1");
:root{--prog-navy:#081d49;--prog-blue:#1257c4;--prog-blue-2:#2f7be5;--prog-gold:#f2bd2d;--prog-ink:#14213d;--prog-muted:#65728a;--prog-line:#dce3ee;--prog-bg:#f3f6fa;--prog-white:#fff;--prog-success:#167347;--prog-danger:#b42318;--prog-purple:#7652b6}
.prog-page{min-height:72vh;background:radial-gradient(circle at 90% 5%,#e7f0ff 0,transparent 26%),var(--prog-bg);color:var(--prog-ink);padding:38px 0 76px}.prog-container{width:min(1380px,calc(100% - 36px));margin:auto}.prog-narrow{max-width:940px}.prog-kicker{display:inline-flex;padding:6px 10px;border-radius:999px;background:#e8f0ff;color:var(--prog-blue);font-size:.75rem;font-weight:900;letter-spacing:.07em}.prog-page h1{font-weight:850;letter-spacing:-.035em}.prog-page h2,.prog-page h3{font-weight:800}.prog-lead{font-size:1.08rem;color:var(--prog-muted);max-width:780px}.prog-panel{background:var(--prog-white);border:1px solid var(--prog-line);border-radius:18px;padding:24px;box-shadow:0 12px 38px rgba(8,29,73,.07)}.prog-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:16px}.prog-section-head h2{margin:0}.prog-progress{height:11px;background:#e4e9f1;border-radius:999px;overflow:hidden}.prog-progress span{display:block;height:100%;background:linear-gradient(90deg,var(--prog-blue),#55a0ff);border-radius:inherit}.prog-clean-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 30px;margin:24px 0;padding-left:20px}.prog-actions{display:flex;flex-wrap:wrap;gap:10px}.prog-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid #b9c8df;background:#fff;color:var(--prog-navy);padding:10px 15px;border-radius:10px;text-decoration:none;font-weight:800;cursor:pointer}.prog-btn:hover{color:var(--prog-navy);border-color:var(--prog-blue);background:#f8fbff}.prog-btn.primary{background:var(--prog-navy);border-color:var(--prog-navy);color:#fff}.prog-btn.primary:hover{background:#102f70;color:#fff}.prog-btn.gold{background:var(--prog-gold);border-color:var(--prog-gold);color:#182033}.prog-btn.ghost{background:transparent}.prog-btn.danger{background:#fff2f0;border-color:#f2b8b1;color:var(--prog-danger)}.prog-btn.sm{padding:7px 10px;font-size:.83rem}.prog-alert{padding:13px 15px;border-radius:11px;margin:14px 0;font-weight:650}.prog-alert.ok{background:#eaf8f0;color:var(--prog-success)}.prog-alert.erro{background:#fff0ee;color:var(--prog-danger)}
.prog-public-nav{display:flex;align-items:center;justify-content:space-between;gap:15px;background:#fff;border:1px solid var(--prog-line);border-radius:15px;padding:10px 12px;margin-bottom:20px;position:sticky;top:10px;z-index:20;box-shadow:0 8px 28px rgba(8,29,73,.08)}.prog-public-nav .links{display:flex;gap:6px;flex-wrap:wrap}.prog-public-nav a{padding:9px 12px;border-radius:9px;color:#36445e;text-decoration:none;font-weight:750}.prog-public-nav a.ativo,.prog-public-nav a:hover{background:#eaf1ff;color:var(--prog-blue)}.prog-public-nav .marca{display:flex;align-items:center;gap:9px;font-weight:900;color:var(--prog-navy)}.prog-public-nav .marca span{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:var(--prog-navy);color:#fff}.prog-hero{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:30px;align-items:center;background:linear-gradient(135deg,#061638,var(--prog-navy) 55%,#174a9b);color:#fff;border-radius:26px;padding:clamp(30px,5vw,66px);overflow:hidden}.prog-hero p{color:#dbe7ff;font-size:1.08rem}.prog-hero-visual{height:240px;position:relative}.prog-float-code{position:absolute;border:1px solid #ffffff30;background:#ffffff12;backdrop-filter:blur(7px);padding:12px 16px;border-radius:12px;font:700 .85rem/1.5 ui-monospace,monospace;animation:progFloat 5s ease-in-out infinite}.prog-float-code:nth-child(1){top:15px;left:10px}.prog-float-code:nth-child(2){top:95px;right:0;animation-delay:-1.5s}.prog-float-code:nth-child(3){bottom:5px;left:45px;animation-delay:-3s}@keyframes progFloat{50%{transform:translateY(-12px)}}.prog-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:20px}.prog-choice a{background:#fff;border:1px solid var(--prog-line);border-radius:18px;padding:25px;color:inherit;text-decoration:none;box-shadow:0 10px 30px rgba(8,29,73,.06);transition:.2s}.prog-choice a:hover{transform:translateY(-3px);border-color:#9dbbe6;box-shadow:0 15px 36px rgba(8,29,73,.11)}.prog-choice .icon{display:grid;place-items:center;width:48px;height:48px;border-radius:13px;background:#eaf1ff;color:var(--prog-blue);font-size:1.4rem}.prog-choice h2{font-size:1.25rem;margin:15px 0 7px}.prog-codepen{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#111827;color:#fff;border-radius:16px;padding:20px 23px;margin-top:18px;text-decoration:none}.prog-codepen:hover{color:#fff;background:#080d18}.prog-section{margin-top:34px}.prog-toolbar{display:grid;grid-template-columns:minmax(240px,2fr) repeat(2,minmax(150px,1fr)) auto;gap:10px}.prog-input,.prog-select,.prog-textarea{width:100%;border:1px solid #cbd5e1;border-radius:10px;padding:10px 12px;background:#fff;color:var(--prog-ink)}.prog-textarea{min-height:110px;resize:vertical}.prog-field label{display:block;font-weight:800;margin-bottom:5px}.prog-field small{color:var(--prog-muted)}.prog-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.prog-field.full{grid-column:1/-1}.prog-tags{display:flex;flex-wrap:wrap;gap:6px}.prog-tag{display:inline-flex;padding:5px 9px;border-radius:999px;background:#eaf1ff;color:var(--prog-blue);font-size:.75rem;font-weight:850}.prog-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.prog-code-card{background:#fff;border:1px solid var(--prog-line);border-radius:17px;overflow:hidden;display:flex;flex-direction:column;min-height:245px;box-shadow:0 8px 24px rgba(8,29,73,.055);transition:.2s}.prog-code-card:hover{transform:translateY(-3px);box-shadow:0 15px 32px rgba(8,29,73,.1)}.prog-code-card .visual{height:92px;display:grid;place-items:center;background:linear-gradient(135deg,#edf4ff,#f9fbff);color:var(--prog-blue);font:900 1.7rem ui-monospace,monospace}.prog-code-card .body{padding:18px;flex:1}.prog-code-card h3{font-size:1.03rem}.prog-code-card p{font-size:.9rem;color:var(--prog-muted)}.prog-code-card .foot{display:flex;justify-content:space-between;gap:8px;padding:13px 18px;border-top:1px solid var(--prog-line)}.prog-empty{text-align:center;padding:42px;color:var(--prog-muted)}
.prog-trail{display:grid;gap:12px}.prog-trail-step{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:14px;background:#fff;border:1px solid var(--prog-line);border-radius:15px;padding:16px}.prog-trail-step .number{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--prog-navy);color:#fff;font-weight:900}.prog-trail-step.bloqueado{opacity:.58}.prog-trail-step.bloqueado .number{background:#8c98aa}.prog-project-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:20px}.prog-project-side{position:sticky;top:84px;align-self:start;max-height:calc(100vh - 105px);overflow:auto}.prog-stage-link{display:block;padding:12px;border-radius:10px;color:inherit;text-decoration:none;border:1px solid transparent}.prog-stage-link.ativo{background:#eaf1ff;border-color:#c1d4ef;color:var(--prog-blue)}.prog-stage-link.bloqueado{opacity:.55}.prog-session{border-top:1px solid var(--prog-line);padding:22px 0}.prog-session:first-of-type{border-top:0}.prog-check{display:flex;gap:10px;padding:10px 12px;background:#f7f9fc;border-radius:10px;margin-top:8px}.prog-check input{margin-top:.25rem}.prog-code-reference{margin-top:12px;border-left:4px solid var(--prog-blue);background:#f4f8ff;padding:13px;border-radius:0 10px 10px 0}
.prog-modal{position:fixed;inset:0;background:#071329b8;display:none;place-items:center;padding:24px;z-index:9999}.prog-modal.aberto{display:grid}.prog-modal-dialog{width:min(1100px,100%);max-height:92vh;overflow:auto;background:#fff;border-radius:20px;box-shadow:0 30px 90px #0006}.prog-modal-head{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:18px 22px;border-bottom:1px solid var(--prog-line);position:sticky;top:0;background:#fff;z-index:2}.prog-modal-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,.75fr);gap:18px;padding:22px}.prog-preview{width:100%;min-height:380px;border:1px solid var(--prog-line);border-radius:12px;background:#fff}.prog-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.prog-tabs button{border:1px solid var(--prog-line);background:#fff;border-radius:8px;padding:7px 10px;font-weight:750}.prog-tabs button.ativo{background:var(--prog-navy);color:#fff}.prog-codebox{position:relative;background:#0f172a;color:#dbeafe;border-radius:12px;overflow:hidden}.prog-codebox pre{margin:0;padding:18px;max-height:430px;overflow:auto;font:13px/1.55 ui-monospace,Consolas,monospace}.prog-copy{position:absolute;right:9px;top:9px}
.prog-admin{display:grid;grid-template-columns:270px minmax(0,1fr);gap:20px}.prog-admin-side{position:sticky;top:20px;align-self:start;background:#081d49;color:#fff;border-radius:18px;padding:18px;min-height:650px}.prog-admin-brand{display:flex;align-items:center;gap:10px;padding:8px 7px 18px}.prog-admin-brand>span{display:grid;place-items:center;width:40px;height:40px;border-radius:11px;background:var(--prog-gold);color:#15203b;font-weight:950}.prog-admin-brand small{display:block;color:#b9c9e5}.prog-admin-side nav a{display:block;color:#d8e4f9;text-decoration:none;padding:10px 12px;border-radius:9px;margin:3px 0}.prog-admin-side nav a:hover,.prog-admin-side nav a.ativo{background:#ffffff17;color:#fff}.prog-admin-side hr{border-color:#ffffff2e}.prog-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.prog-kpi{background:#fff;border:1px solid var(--prog-line);border-radius:15px;padding:18px}.prog-kpi strong{display:block;font-size:1.9rem;color:var(--prog-blue)}.prog-table-wrap{overflow:auto}.prog-table{width:100%;border-collapse:collapse;min-width:820px}.prog-table th,.prog-table td{text-align:left;padding:12px;border-bottom:1px solid var(--prog-line);vertical-align:top}.prog-table th{font-size:.82rem;color:#536078;text-transform:uppercase;letter-spacing:.03em}.prog-hierarchy{display:grid;grid-template-columns:280px minmax(0,1fr);gap:16px}.prog-file-row{background:#f7f9fc;border:1px solid var(--prog-line);border-radius:13px;padding:15px;margin-bottom:12px}
@media(max-width:1100px){.prog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.prog-hero{grid-template-columns:1fr}.prog-hero-visual{display:none}.prog-admin{grid-template-columns:1fr}.prog-admin-side{position:static;min-height:auto}.prog-admin-side nav{display:flex;flex-wrap:wrap}.prog-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.prog-project-layout,.prog-hierarchy{grid-template-columns:1fr}.prog-project-side{position:static}.prog-modal-body{grid-template-columns:1fr}}
@media(max-width:760px){.prog-page{padding-top:22px}.prog-public-nav{position:static;align-items:flex-start;flex-direction:column}.prog-choice,.prog-form-grid,.prog-clean-list{grid-template-columns:1fr}.prog-field.full{grid-column:auto}.prog-toolbar{grid-template-columns:1fr}.prog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.prog-kpis{grid-template-columns:1fr 1fr}}
@media(max-width:500px){.prog-container{width:min(100% - 22px,1380px)}.prog-grid{grid-template-columns:1fr}.prog-trail-step{grid-template-columns:42px minmax(0,1fr)}.prog-trail-step>.prog-btn{grid-column:1/-1}.prog-modal{padding:10px}.prog-modal-dialog{border-radius:13px}.prog-modal-body{padding:14px}.prog-actions .prog-btn,.prog-actions form{width:100%}.prog-actions form .prog-btn{width:100%}}

/* ADM — controle rápido de liberação de etapas (preservado da atualização) */
.prog-stage-control{margin-bottom:22px;border-top:4px solid var(--prog-gold)}
.prog-stage-control-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px}
.prog-stage-control-head h2{margin:8px 0 4px}
.prog-stage-control-head p{margin:0;color:var(--prog-muted);max-width:720px}
.prog-stage-control-list{display:grid;gap:8px}
.prog-stage-control-row{display:grid;grid-template-columns:42px minmax(180px,1fr) auto;align-items:center;gap:12px;padding:11px;border:1px solid var(--prog-line);border-radius:12px;background:#f9fbfd}
.prog-stage-control-index{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:var(--prog-navy);color:#fff;font-weight:950}
.prog-stage-control-name{display:flex;align-items:center;gap:10px;min-width:0}
.prog-stage-control-name strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.prog-state-badge{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:.7rem;font-weight:900}
.prog-state-badge.liberada{background:#e5f6ec;color:var(--prog-success)}
.prog-state-badge.bloqueada{background:#eef1f5;color:#5f6c80}
.prog-state-badge.oculta{background:#fff4df;color:#8a6511}
.prog-stage-control-actions{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}

/* Mobile/tablet: deixa o liberador confortável para usar durante a aula */
@media(max-width:1100px){
  .prog-stage-control-row{grid-template-columns:42px minmax(0,1fr)}
  .prog-stage-control-actions{grid-column:1/-1;justify-content:flex-start;padding-left:54px}
}
@media(max-width:760px){
  .prog-stage-control-head{flex-direction:column}
  .prog-stage-control-head .prog-actions{width:100%}
  .prog-stage-control-head .prog-actions>*{flex:1}
  .prog-stage-control-head .prog-actions .prog-btn{width:100%}
}
@media(max-width:500px){
  .prog-stage-control-actions{padding-left:0}
  .prog-stage-control-actions .prog-btn{flex:1}
  .prog-stage-control-name{align-items:flex-start;flex-direction:column;gap:4px}
}

/* Expansão pedagógica — perguntas, atividades e materiais */
.prog-toolbar-compact{grid-template-columns:minmax(220px,420px) auto;margin:16px 0}
.prog-choice-four{grid-template-columns:repeat(2,minmax(0,1fr))}
.prog-mode-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:20px 0}
.prog-mode-overview article{display:flex;flex-direction:column;gap:5px;padding:18px;border-radius:16px;border:1px solid var(--prog-line);background:#fff;box-shadow:0 8px 24px rgba(7,23,57,.05)}
.prog-mode-overview article strong{font-size:1rem}.prog-mode-overview article span{font-size:.86rem;color:var(--prog-muted)}
.prog-mode-overview .mode-pratica{border-top:4px solid var(--prog-success)}.prog-mode-overview .mode-identificada{border-top:4px solid var(--prog-blue-2)}.prog-mode-overview .mode-avaliacao{border-top:4px solid var(--prog-purple)}
.prog-mode-badge{display:inline-flex;width:max-content;padding:6px 10px;border-radius:999px;font-size:.72rem;font-weight:900;letter-spacing:.03em}
.prog-mode-badge.mode-pratica,.mode-pratica>.prog-mode-badge{background:#e7f6ee;color:var(--prog-success)}
.prog-mode-badge.mode-identificada,.mode-identificada>.prog-mode-badge{background:#e7f0ff;color:var(--prog-blue-2)}
.prog-mode-badge.mode-avaliacao,.mode-avaliacao>.prog-mode-badge{background:#f0eafd;color:#6941a5}
.prog-activity-grid{align-items:stretch}.prog-activity-card{display:flex;flex-direction:column;gap:12px;min-height:250px;padding:22px;border-radius:18px;background:#fff;border:1px solid var(--prog-line);box-shadow:0 10px 30px rgba(7,23,57,.07)}
.prog-activity-card.mode-pratica{border-top:4px solid var(--prog-success)}.prog-activity-card.mode-identificada{border-top:4px solid var(--prog-blue-2)}.prog-activity-card.mode-avaliacao{border-top:4px solid var(--prog-purple)}
.prog-activity-card h2,.prog-activity-card h3{margin:0}.prog-activity-card p{color:var(--prog-muted);flex:1}.prog-activity-card .prog-btn{width:max-content}
.prog-activity-meta,.prog-project-meta{display:flex;gap:8px;flex-wrap:wrap}.prog-activity-meta span,.prog-project-meta span{display:inline-flex;padding:5px 9px;border-radius:999px;background:#edf2f8;color:#44516a;font-size:.76rem;font-weight:800}
.prog-activity-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:clamp(24px,5vw,48px);border-radius:24px;color:#fff;background:linear-gradient(135deg,var(--prog-navy),var(--prog-blue));box-shadow:0 20px 50px rgba(7,23,57,.18)}
.prog-activity-hero.mode-pratica{background:linear-gradient(135deg,#0f5e3c,#168052)}.prog-activity-hero.mode-avaliacao{background:linear-gradient(135deg,#43266f,#7652b6)}
.prog-activity-hero p{color:#eef4ff;max-width:720px}.prog-activity-hero .prog-activity-meta span{background:#ffffff1c;color:#fff;border:1px solid #ffffff2c}
.prog-breadcrumb{display:flex;gap:9px;align-items:center;margin-bottom:16px;color:var(--prog-muted);font-size:.9rem}.prog-breadcrumb a{color:var(--prog-blue);font-weight:800;text-decoration:none}
.prog-question-list{display:grid;gap:16px}.prog-question{position:relative}.prog-question-number{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--prog-navy);color:#fff;font-weight:900;margin-bottom:12px}
.prog-support{padding:13px 15px;border-left:4px solid var(--prog-gold);background:#fff9e9;border-radius:0 10px 10px 0;margin:10px 0;color:#4a5262}
.prog-options{display:grid;gap:9px;margin:14px 0}.prog-options label{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;background:#f6f8fb;border:1px solid var(--prog-line);border-radius:11px;cursor:pointer}.prog-options label:hover{border-color:#9eb8dd;background:#f0f5fd}.prog-options input{margin-top:3px}.prog-options label.selected-correct{border-color:#75bd95;background:#e9f7ef}.prog-options label.selected-wrong{border-color:#d89b9f;background:#fff0f1}
.prog-practice{margin-top:24px;border-top:4px solid var(--prog-success)}.prog-practice .prog-question{padding:20px 0;border-top:1px solid var(--prog-line)}.prog-practice .prog-question:first-of-type{border-top:0}
.prog-feedback{padding:12px 14px;margin-top:10px;border-radius:10px;background:#eef3fa}.prog-feedback[data-state="correct"]{background:#e6f5ed;color:#11633e}.prog-feedback[data-state="review"]{background:#fff5e4;color:#79560d}.prog-feedback[data-state="warning"]{background:#fff0ee;color:var(--prog-danger)}
.prog-btn-large{padding:14px 22px;font-size:1rem}.prog-result-summary{text-align:center}.prog-score{display:block;font-size:clamp(2rem,6vw,4rem);color:var(--prog-blue);margin:12px}.prog-score-small{font-size:1.35rem;color:var(--prog-blue)}
.prog-review{padding:15px;border-left:4px solid #94a3b8;background:#f7f9fc;border-radius:0 11px 11px 0;margin:10px 0}.prog-review.correta{border-color:var(--prog-success);background:#edf8f2}.prog-review.incorreta{border-color:var(--prog-danger);background:#fff2f2}.prog-review.pendente{border-color:var(--prog-gold);background:#fff9e9}.prog-points-input{display:inline-block;width:100px;margin:0 6px}
.prog-question-picker{display:grid;gap:8px;max-height:580px;overflow:auto;padding-right:5px}.prog-question-picker>label{display:flex;gap:11px;padding:12px;border:1px solid var(--prog-line);border-radius:11px;background:#f9fbfd;cursor:pointer}.prog-question-picker>label>input{margin-top:4px}.prog-question-picker span{display:flex;flex-direction:column;gap:3px}.prog-question-picker small{color:var(--prog-muted)}
.prog-related-list{display:grid;gap:8px}.prog-related-list>a{display:flex;justify-content:space-between;gap:15px;padding:12px 14px;border:1px solid var(--prog-line);border-radius:10px;text-decoration:none;color:var(--prog-ink);background:#f9fbfd}.prog-related-list>a:hover{border-color:#9eb8dd}.prog-related-list small{color:var(--prog-muted)}
.prog-check-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.prog-check-options label{padding:10px;background:#f7f9fc;border-radius:9px}
.prog-project-brief{display:grid;grid-template-columns:1.5fr 1fr;gap:14px;margin-top:14px}.prog-project-brief>div{background:#fff;border:1px solid var(--prog-line);border-radius:15px;padding:18px}.prog-project-brief p{margin-bottom:0;color:var(--prog-muted)}
.prog-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}

/* Mapa V14 — uso real, integridade e planejamento do acervo */
.prog-map-kpis{margin:18px 0}.prog-map-kpis .prog-kpi small{color:var(--prog-muted);font-weight:800}.prog-map-filters{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:13px;margin:18px 0}.prog-map-filters .prog-actions{grid-column:1/-1;align-items:flex-end}.prog-map-panel{padding:0;overflow:hidden}.prog-map-note{padding:16px 20px;background:#eef5ff;border-bottom:1px solid #ccdcf2;color:#33435f}.prog-map-table{min-width:1180px}.prog-map-main-row>td{padding-top:18px;padding-bottom:18px}.prog-map-main-row code{font-size:.78rem;color:var(--prog-muted)}.prog-map-number{font-size:1.35rem;color:var(--prog-blue)}.prog-map-warning{display:inline-flex;margin-top:5px;padding:4px 7px;border-radius:999px;background:#fff0ee;color:var(--prog-danger);font-size:.7rem;font-weight:900}.prog-map-usage{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:.74rem;font-weight:900}.prog-map-usage.em-uso{background:#e5f6ec;color:var(--prog-success)}.prog-map-usage.nunca{background:#eef1f5;color:#5f6c80}.prog-map-detail-row>td{padding:0 12px 16px;background:#f7f9fc}.prog-map-details{border:1px solid var(--prog-line);border-radius:12px;background:#fff}.prog-map-details>summary{cursor:pointer;padding:12px 15px;color:var(--prog-blue);font-weight:900}.prog-map-details[open]>summary{border-bottom:1px solid var(--prog-line)}.prog-map-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:15px}.prog-map-block{padding:17px;border:1px solid var(--prog-line);border-radius:12px;background:#fff}.prog-map-block h3{margin-top:0}.prog-map-block-wide{grid-column:1/-1}.prog-map-muted{color:var(--prog-muted)}.prog-map-ref-table{min-width:760px}.prog-map-ref-table th,.prog-map-ref-table td{padding:10px}.prog-map-plan-list{display:grid;gap:10px}.prog-map-plan{display:grid;grid-template-columns:2fr 1.2fr .8fr auto;gap:10px;align-items:end;padding:13px;border:1px solid var(--prog-line);border-radius:11px;background:#f7f9fc}.prog-map-plan .prog-actions{padding-bottom:1px}
@media(max-width:1100px){.prog-map-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.prog-map-detail-grid{grid-template-columns:1fr}.prog-map-block-wide{grid-column:auto}.prog-map-plan{grid-template-columns:1fr 1fr}.prog-map-plan .prog-actions{grid-column:1/-1}}
@media(max-width:620px){.prog-map-filters,.prog-map-plan{grid-template-columns:1fr}.prog-map-plan .prog-actions{grid-column:auto}.prog-map-detail-grid{padding:10px}.prog-map-block{padding:13px}}

/* As regras experimentais de remodelação abaixo ficam isoladas. A versão
   híbrida usa o visual legado acima e preserva somente os componentes novos. */
@media (max-width:0px){
/* Modo escuro aprovado: fundo azul vivo, superfícies claras e cores visíveis. */
html[data-theme="dark"] .prog-page,html[data-tema="escuro"] .prog-page,body.dark-mode .prog-page,body.modo-escuro .prog-page{background:radial-gradient(circle at 85% 0,#1769E055 0,transparent 30%),linear-gradient(160deg,#071739,#0D2C6C 75%,#123f8d);color:#f4f7fb}
html[data-theme="dark"] .prog-panel,html[data-theme="dark"] .prog-code-card,html[data-theme="dark"] .prog-public-nav,html[data-theme="dark"] .prog-choice a,html[data-theme="dark"] .prog-activity-card,html[data-theme="dark"] .prog-mode-overview article,html[data-theme="dark"] .prog-project-brief>div,html[data-tema="escuro"] .prog-panel,html[data-tema="escuro"] .prog-code-card,html[data-tema="escuro"] .prog-public-nav,html[data-tema="escuro"] .prog-choice a,html[data-tema="escuro"] .prog-activity-card,html[data-tema="escuro"] .prog-mode-overview article,html[data-tema="escuro"] .prog-project-brief>div,body.dark-mode .prog-panel,body.dark-mode .prog-code-card,body.dark-mode .prog-public-nav,body.dark-mode .prog-choice a,body.dark-mode .prog-activity-card,body.dark-mode .prog-mode-overview article,body.dark-mode .prog-project-brief>div,body.modo-escuro .prog-panel,body.modo-escuro .prog-code-card,body.modo-escuro .prog-public-nav,body.modo-escuro .prog-choice a,body.modo-escuro .prog-activity-card,body.modo-escuro .prog-mode-overview article,body.modo-escuro .prog-project-brief>div{background:#f8fbff;color:var(--prog-ink);border-color:#c9d8eb}
html[data-theme="dark"] .prog-lead,html[data-tema="escuro"] .prog-lead,body.dark-mode .prog-lead,body.modo-escuro .prog-lead{color:#d9e6fb}
html[data-theme="dark"] .prog-panel .prog-lead,html[data-tema="escuro"] .prog-panel .prog-lead,body.dark-mode .prog-panel .prog-lead,body.modo-escuro .prog-panel .prog-lead{color:var(--prog-muted)}

@media(max-width:900px){.prog-mode-overview{grid-template-columns:1fr}.prog-activity-hero{align-items:flex-start;flex-direction:column}.prog-project-brief{grid-template-columns:1fr}.prog-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.prog-choice-four,.prog-check-options{grid-template-columns:1fr}.prog-toolbar-compact{grid-template-columns:1fr}.prog-related-list>a{flex-direction:column;gap:4px}.prog-activity-card .prog-btn{width:100%}}
@media(prefers-reduced-motion:reduce){.prog-float-code{animation:none}.prog-code-card,.prog-choice a{transition:none}}
}

/* ==================================================================
   VISUAL APROVADO 2026 — ÁREA PÚBLICA DE PROGRAMAÇÃO
   Mantém a administração e toda a lógica existentes sem alterações.
   ================================================================== */
.prog-public{
  --prog-navy:#071a42;
  --prog-blue:#1769e0;
  --prog-blue-2:#3b82f6;
  --prog-violet:#7455bd;
  --prog-teal:#0b947d;
  --prog-gold:#f2be2f;
  --prog-ice:#f5f8fc;
  --prog-ink:#14213d;
  --prog-muted:#67758d;
  --prog-line:#d7e1ee;
  position:relative;
  overflow:hidden;
  padding:28px 0 80px;
  background:
    radial-gradient(circle at 92% 8%,rgba(57,132,234,.13),transparent 23%),
    radial-gradient(circle at 8% 72%,rgba(111,169,245,.09),transparent 24%),
    linear-gradient(180deg,#f7faff 0%,#f2f6fb 100%);
  color:var(--prog-ink);
}
.prog-public::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.42;background-image:linear-gradient(rgba(23,105,224,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(23,105,224,.035) 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(to bottom,#000,transparent 55%)}
.prog-public>.prog-container{position:relative;z-index:1}
.prog-public .prog-panel{border-color:var(--prog-line);box-shadow:0 14px 38px rgba(7,26,66,.075)}
.prog-public .prog-kicker{background:#e9f2ff;color:var(--prog-blue);font-size:.69rem;letter-spacing:.11em}
.prog-public .prog-btn{min-height:43px;border-radius:12px;transition:transform .22s ease,box-shadow .22s ease,background .22s ease}
.prog-public .prog-btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(7,26,66,.13)}
.prog-public .prog-btn.primary{background:linear-gradient(135deg,var(--prog-navy),#174c9d)}
.prog-public .prog-btn.gold{border-color:var(--prog-gold);background:linear-gradient(135deg,#ffd05a,var(--prog-gold));color:#13213d}
.prog-public .prog-btn.light{border-color:rgba(255,255,255,.34);background:rgba(255,255,255,.1);color:#fff;backdrop-filter:blur(9px)}

/* Navegação interna: uma cor de identidade para cada área. */
.prog-public-nav{position:sticky;top:10px;z-index:30;min-height:72px;margin-bottom:24px;padding:9px 11px 9px 14px;border:1px solid rgba(190,205,226,.8);border-radius:19px;background:rgba(255,255,255,.9);box-shadow:0 16px 42px rgba(7,26,66,.11);backdrop-filter:blur(18px)}
.prog-public-nav .marca{padding:2px;color:var(--prog-navy)}
.prog-public-nav .marca>span:first-child{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:linear-gradient(145deg,var(--prog-navy),var(--prog-blue));color:#fff;font:900 .74rem ui-monospace,monospace;box-shadow:0 9px 20px rgba(23,105,224,.24)}
.prog-public-nav .marca>span:last-child{display:flex;flex-direction:column;gap:2px}
.prog-public-nav .marca strong{font-size:.93rem}.prog-public-nav .marca small{color:var(--prog-muted);font-size:.58rem;font-weight:850;letter-spacing:.09em;text-transform:uppercase}
.prog-public-nav .links{display:flex;align-items:center;gap:5px;flex-wrap:nowrap}
.prog-public-nav .links a{display:flex;align-items:center;gap:6px;min-height:42px;padding:9px 12px;border:1px solid transparent;border-radius:12px;color:#3d4a62;font-size:.81rem;white-space:nowrap}
.prog-public-nav .links a>span{font-weight:900}
.prog-public-nav .links a:hover,.prog-public-nav .links a.ativo{transform:none}
.prog-public-nav .nav-inicio:hover,.prog-public-nav .nav-inicio.ativo{border-color:#c5d9f7;background:#eaf2ff;color:#1257c4}
.prog-public-nav .nav-acervo:hover,.prog-public-nav .nav-acervo.ativo{border-color:#d1dae7;background:#f0f3f7;color:#3e506a}
.prog-public-nav .nav-projetos:hover,.prog-public-nav .nav-projetos.ativo{border-color:#d9caef;background:#f2ecfb;color:#6946aa}
.prog-public-nav .nav-atividades:hover,.prog-public-nav .nav-atividades.ativo{border-color:#bfe5dc;background:#e8f7f2;color:#087d6a}
.prog-public-nav .links .nav-codepen{margin-left:5px;border-color:#e5bd3e;background:linear-gradient(135deg,#ffd461,#f2be2f);color:#172033;box-shadow:0 8px 18px rgba(207,156,16,.2)}

/* Página inicial. */
.prog-public .prog-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);gap:44px;min-height:500px;padding:clamp(38px,5vw,72px);border:1px solid rgba(255,255,255,.14);border-radius:30px;background:radial-gradient(circle at 86% 12%,rgba(57,127,226,.48),transparent 28%),linear-gradient(130deg,#061633 0%,#082354 55%,#174c9d 100%);box-shadow:0 30px 75px rgba(7,26,66,.23)}
.prog-public .prog-hero::before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:64px 64px}
.prog-public .prog-hero::after{content:"";position:absolute;width:310px;height:310px;right:-120px;bottom:-150px;border:1px solid rgba(255,255,255,.11);border-radius:50%}
.prog-hero-copy{position:relative;z-index:2}.prog-public .prog-hero h1{margin:.35em 0 .25em;color:#fff;font-size:clamp(2.6rem,5.2vw,5.2rem);line-height:.96;letter-spacing:-.055em}.prog-public .prog-hero h1 em{color:var(--prog-gold);font-style:normal}.prog-public .prog-hero p{max-width:630px;color:#dce8fb;font-size:clamp(1rem,1.5vw,1.18rem);line-height:1.7}.prog-public .prog-hero .prog-actions{margin-top:26px}
.prog-hero-tags{display:flex;gap:8px;margin-top:27px}.prog-hero-tags span{padding:6px 9px;border:1px solid rgba(255,255,255,.17);border-radius:8px;color:#aabfdf;background:rgba(255,255,255,.055);font:800 .64rem ui-monospace,monospace}
.prog-hero-window{position:relative;z-index:2;align-self:center;border:1px solid rgba(255,255,255,.2);border-radius:20px;background:#061126;box-shadow:0 34px 65px rgba(0,0,0,.31);transform:rotate(1.2deg);animation:progWindowFloat 8s ease-in-out infinite}
.prog-window-bar{display:flex;align-items:center;gap:7px;height:46px;padding:0 15px;border-bottom:1px solid rgba(255,255,255,.08);background:#0e1d38}.prog-window-bar i{width:10px;height:10px;border-radius:50%;background:#e06b70}.prog-window-bar i:nth-child(2){background:#d7a93d}.prog-window-bar i:nth-child(3){background:#49a87b}.prog-window-bar span{margin-left:8px;color:#91a6c6;font:700 .7rem ui-monospace,monospace}
.prog-hero-window pre{min-height:245px;margin:0;padding:36px 28px;color:#dae7fa;font:700 clamp(.78rem,1.2vw,.98rem)/1.9 ui-monospace,Consolas,monospace;white-space:pre-wrap}.code-selector{color:#78b9ff}.code-property{color:#f1ca62}.code-value{color:#6dd2a6}
.prog-window-status{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-top:1px solid rgba(255,255,255,.08);color:#6dd2a6;font:850 .61rem ui-monospace,monospace;letter-spacing:.07em}.prog-window-status strong{color:var(--prog-gold);font-size:1rem}
.prog-code-orbit{position:absolute;padding:9px 12px;border:1px solid rgba(255,255,255,.18);border-radius:10px;background:rgba(22,57,111,.88);color:#dbe8fb;font:700 .66rem ui-monospace,monospace;box-shadow:0 12px 30px rgba(0,0,0,.2);animation:progOrbit 9s ease-in-out infinite}.orbit-a{right:-28px;top:22%}.orbit-b{left:-38px;bottom:15%;animation-delay:-4.5s}
@keyframes progWindowFloat{50%{transform:rotate(-.4deg) translateY(-9px)}}@keyframes progOrbit{50%{transform:translateY(-10px) translateX(4px)}}
.prog-choice-public{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:20px}.prog-choice-public a{--choice:#1769e0;--choice-soft:#edf4ff;position:relative;isolation:isolate;min-height:255px;padding:25px;overflow:hidden;border:1px solid #cfdaea;background:#fff;box-shadow:0 14px 36px rgba(7,26,66,.07)}.prog-choice-public a::before{content:"";position:absolute;inset:auto -35% -80% -35%;z-index:-1;height:120%;border-radius:50%;background:var(--choice-soft);transition:transform .55s cubic-bezier(.2,.8,.2,1)}.prog-choice-public a:hover::before{transform:translateY(-48%)}.prog-choice-public .choice-project{--choice:#7455bd;--choice-soft:#f0eafb}.prog-choice-public .choice-library{--choice:#1769e0;--choice-soft:#eaf2ff}.prog-choice-public .choice-practice{--choice:#0b947d;--choice-soft:#e4f6f1}.prog-choice-public a:hover{border-color:color-mix(in srgb,var(--choice) 55%,#fff);box-shadow:0 23px 50px color-mix(in srgb,var(--choice) 16%,transparent)}.prog-choice-public .icon{display:grid;place-items:center;width:52px;height:52px;border-radius:15px;background:var(--choice-soft);color:var(--choice);font-size:1.15rem}.prog-choice-public small{display:block;margin-top:22px;color:var(--choice);font-size:.65rem;font-weight:950;letter-spacing:.11em}.prog-choice-public h2{margin:7px 0;font-size:1.3rem}.prog-choice-public p{margin:0;color:var(--prog-muted);font-size:.9rem}.prog-card-link{position:absolute;left:25px;bottom:20px;color:var(--choice);font-size:.81rem}
.prog-public .prog-codepen{position:relative;overflow:hidden;margin-top:18px;border:1px solid #e3b633;background:linear-gradient(110deg,#ffd96f,#f2be2f);color:#16213b;box-shadow:0 15px 34px rgba(186,139,17,.18)}.prog-public .prog-codepen::before{content:"";position:absolute;right:-30px;top:-65px;width:180px;height:180px;border:2px solid rgba(255,255,255,.4);border-radius:50%}.prog-public .prog-codepen:hover{color:#16213b;background:linear-gradient(110deg,#ffe18d,#f6c747)}

/* Cabeçalhos, filtros e acervo. */
.prog-page-heading{display:flex;align-items:center;justify-content:space-between;gap:28px;margin:35px 0 24px;padding:28px 4px 25px;border-bottom:1px solid var(--prog-line)}.prog-page-heading h1{margin:.2em 0 .12em;font-size:clamp(2.3rem,4.6vw,4.2rem);letter-spacing:-.05em}.prog-page-heading .prog-lead{margin:0}.prog-count,.prog-heading-mark{display:grid;place-items:center;flex:0 0 auto;width:92px;height:92px;border:1px solid #c9d7e9;border-radius:23px;background:rgba(255,255,255,.86);box-shadow:0 12px 30px rgba(7,26,66,.08)}.prog-count{display:flex;flex-direction:column;gap:3px}.prog-count strong{color:var(--prog-blue);font-size:2rem}.prog-count span{color:var(--prog-muted);font-size:.62rem;font-weight:900;text-transform:uppercase}.prog-heading-mark{background:linear-gradient(145deg,#15356d,#1769e0);color:#fff;font-size:2rem}
.prog-area-acervo .prog-toolbar{padding:13px;border:1px solid #ccdaeb;border-radius:17px;background:rgba(255,255,255,.9);box-shadow:0 12px 32px rgba(7,26,66,.07)}
.prog-public .prog-code-card{--pointer-x:50%;--pointer-y:50%;position:relative;isolation:isolate;min-height:305px;border-color:#d2ddeb;border-radius:19px;background:#fff;box-shadow:0 13px 34px rgba(7,26,66,.07)}.prog-public .prog-code-card::before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;opacity:0;background:radial-gradient(240px circle at var(--pointer-x) var(--pointer-y),rgba(23,105,224,.14),transparent 66%);transition:opacity .25s ease}.prog-public .prog-code-card:hover::before{opacity:1}.prog-public .prog-code-card:hover{transform:translateY(-5px);border-color:#91b9ee;box-shadow:0 22px 46px rgba(23,105,224,.13)}.prog-public .prog-code-card .visual{height:112px;background:linear-gradient(145deg,#e8f1ff,#f7faff);color:var(--prog-blue);font-size:1.85rem}.prog-public .prog-code-card .body{padding:21px}.prog-public .prog-code-card .foot{padding:14px 19px;background:#fbfdff}.prog-public .prog-tag{border:1px solid #cee0fa;background:#edf4ff;color:#155fc8}

/* Projetos: violeta suave na visão geral. */
.prog-area-projetos{background:radial-gradient(circle at 87% 5%,rgba(116,85,189,.13),transparent 24%),linear-gradient(180deg,#f8f9fd,#f3f5fa)}.prog-projects-heading .prog-kicker{background:#f0eafb;color:#6946aa}.prog-projects-heading .prog-heading-mark{background:linear-gradient(145deg,#563b94,#8667c7)}
.prog-area-projetos .prog-section.prog-panel{border-top:5px solid #8a70c8;background:linear-gradient(145deg,#fff,#faf8ff)}.prog-area-projetos .prog-trail::before{background:#d9cfeb}.prog-area-projetos .prog-trail-step{border-color:#ddd5ed;background:#fff}.prog-area-projetos .prog-trail-step .number{background:linear-gradient(145deg,#6447a6,#896dcc)}.prog-area-projetos .prog-trail-step:not(.bloqueado):hover{border-color:#aa96d4;box-shadow:0 12px 30px rgba(116,85,189,.1)}.prog-area-projetos .prog-code-card .visual{background:#f2eef9;color:#7455bd}.prog-area-projetos .prog-code-card:hover{border-color:#af9bd5}.prog-area-projetos .prog-btn.primary{background:linear-gradient(135deg,#563b94,#8062c3)}

/* Projeto aberto: painel educacional com gamificação discreta. */
.prog-area-projeto{background:radial-gradient(circle at 90% 5%,rgba(116,85,189,.1),transparent 22%),linear-gradient(180deg,#f7f9fc,#f2f5f9)}.prog-project-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:24px;margin:32px 0 20px;padding:clamp(28px,4vw,46px);overflow:hidden;border:1px solid #d4deeb;border-radius:25px;background:linear-gradient(145deg,#fff,#f6f8fc);box-shadow:0 18px 45px rgba(7,26,66,.09)}.prog-project-hero::before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:linear-gradient(#1769e0,#7455bd)}.prog-project-hero h1{margin:.32em 0 .2em;font-size:clamp(2.1rem,4vw,3.7rem);letter-spacing:-.05em}.prog-project-hero .prog-lead{max-width:820px}.prog-project-hero-mark{display:flex;align-items:center;gap:9px;padding:14px 17px;border-radius:16px;background:#f1ecfa;color:#60429e}.prog-project-hero-mark span{font-size:2rem}.prog-project-hero-mark strong{font-size:.62rem;letter-spacing:.11em;line-height:1.5}.prog-project-meta{display:flex;flex-wrap:wrap;gap:7px}.prog-project-meta span{padding:5px 9px;border:1px solid #d4deeb;border-radius:999px;background:#fff;color:#4e5d74;font-size:.73rem;font-weight:800}
.prog-checkpoint-route{display:flex;align-items:stretch;gap:9px;margin:18px 0;overflow-x:auto;padding:3px 2px 8px}.prog-checkpoint-route>span{position:relative;display:grid;grid-template-columns:34px minmax(110px,1fr);grid-template-rows:auto auto;gap:1px 9px;flex:1;min-width:170px;padding:12px;border:1px solid #d7e0ec;border-radius:14px;background:#fff}.prog-checkpoint-route i{grid-row:1/3;display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:#edf2f8;color:#67758d;font-style:normal;font-size:.75rem}.prog-checkpoint-route small{color:#7d899b;font-size:.57rem;font-weight:900;letter-spacing:.1em}.prog-checkpoint-route strong{font-size:.78rem}.prog-checkpoint-route .is-current{border-color:#b9a8dc;background:#f4f0fb}.prog-checkpoint-route .is-current i{background:#7455bd;color:#fff}.prog-checkpoint-route .is-open i{background:#e7f6ef;color:#168052}.prog-checkpoint-route .is-locked{opacity:.68}
.prog-area-projeto .prog-project-brief{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.prog-area-projeto .prog-project-brief>div{padding:17px;border-color:#d7e0ec;background:#fff;box-shadow:0 9px 24px rgba(7,26,66,.045)}.prog-area-projeto .prog-project-brief strong{color:#60429e}.prog-area-projeto .prog-project-brief p{font-size:.85rem}
.prog-progress-card{display:grid;grid-template-columns:220px minmax(0,1fr);align-items:center;gap:22px;margin:18px 0;padding:17px 20px;border:1px solid #d5deea;border-radius:16px;background:#fff;box-shadow:0 10px 28px rgba(7,26,66,.06)}.prog-progress-card>div:first-child{display:flex;flex-direction:column;gap:5px}.prog-progress-card .prog-progress{height:11px;background:#e6eaf1}.prog-progress-card .prog-progress span{background:linear-gradient(90deg,#7455bd,#9a7bd8)}.prog-progress-card.is-complete{border-color:#9ed1b9;background:#f4fbf7}
.prog-mission-layout{display:grid;grid-template-columns:250px minmax(0,1fr) 285px;gap:16px;align-items:start}.prog-mission-layout .prog-project-side{position:sticky;top:104px;max-height:calc(100vh - 125px);padding:18px;border-top:4px solid #7455bd}.prog-project-side h2{margin:10px 0 15px;font-size:1rem}.prog-stage-link{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;align-items:center;margin:6px 0;padding:11px;border:1px solid transparent;border-radius:12px;color:var(--prog-ink)}.prog-stage-link i{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:#edf1f6;color:#6b778b;font-style:normal;font-size:.7rem;font-weight:900}.prog-stage-link span{font-size:.8rem;font-weight:850}.prog-stage-link small{display:block;color:#8a95a6;font-size:.55rem;letter-spacing:.09em}.prog-stage-link.ativo{border-color:#c6b8e2;background:#f2eef9;color:#5d3d9a}.prog-stage-link.ativo i{background:#7455bd;color:#fff}.prog-stage-link.is-complete i{background:#168052;color:#fff}.prog-stage-link.is-complete i::after{content:"✓"}.prog-stage-link.bloqueado{opacity:.66;background:#f4f5f7}
.prog-mission-stage{min-width:0;padding:clamp(22px,3vw,32px);border-top:4px solid #1769e0}.prog-mission-stage-head{display:flex;justify-content:space-between;gap:20px;padding-bottom:19px;border-bottom:1px solid var(--prog-line)}.prog-mission-stage-head h2{margin:9px 0 5px;font-size:clamp(1.6rem,3vw,2.3rem)}.prog-mission-stage-head p{margin:0;color:var(--prog-muted)}.prog-mission-stage-head>span{display:grid;place-items:center;flex:0 0 auto;width:54px;height:54px;border-radius:15px;background:#eaf2ff;color:#1769e0;font:900 .8rem ui-monospace,monospace}.prog-session{padding:24px 0;border-top:1px solid var(--prog-line)}.prog-session:first-of-type{border-top:0}.prog-session header{display:flex;align-items:center;gap:11px}.prog-session header>span{display:grid;place-items:center;width:40px;height:40px;border-radius:11px;background:#0d2c6c;color:#fff;font-size:.69rem;font-weight:900}.prog-session header small{color:#7455bd;font-size:.58rem;font-weight:900;letter-spacing:.1em}.prog-session header h3{margin:2px 0 0}.prog-code-reference{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;margin-top:13px;padding:13px;border:1px solid #cbdcf2;border-left:4px solid #1769e0;border-radius:12px;background:#f3f8ff}.prog-code-reference p{margin:4px 0;color:var(--prog-muted);font-size:.82rem}
.prog-mission-checks{position:sticky;top:104px;display:grid;gap:13px}.prog-mission-checks>.prog-panel:first-child{border-top:4px solid #168052}.prog-mission-checks h2{margin:10px 0 5px;font-size:1.1rem}.prog-mission-checks>section>p{color:var(--prog-muted);font-size:.8rem}.prog-check{display:flex;align-items:flex-start;gap:9px;margin-top:8px;padding:10px;border:1px solid #dde5ef;border-radius:11px;background:#f8fafc;font-size:.8rem}.prog-check input{margin-top:2px;accent-color:#168052}.prog-check.is-done{border-color:#b9ddcc;background:#edf8f2;color:#446858}.prog-next-stage{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;padding:16px;background:#f7f8fa}.prog-next-stage>span{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:#e8ebf0}.prog-next-stage small{display:block;color:#858fa0;font-size:.57rem;font-weight:900;letter-spacing:.09em}.prog-next-stage strong{font-size:.8rem}.prog-next-stage p{margin:5px 0 0;color:#7a8596;font-size:.73rem}.prog-muted-note{color:var(--prog-muted)}

/* Praticar: cartões sóbrios e identidade verde-azulada. */
.prog-area-atividades,.prog-area-atividade{background:radial-gradient(circle at 88% 5%,rgba(11,148,125,.11),transparent 23%),linear-gradient(180deg,#f7fbfb,#f2f7f8)}.prog-practice-heading .prog-kicker{background:#e6f6f2;color:#087d6a}.prog-practice-heading .prog-heading-mark{background:linear-gradient(145deg,#087563,#12a189)}
.prog-practice-filters{display:flex;gap:7px;overflow-x:auto;margin:0 0 18px;padding:6px;border:1px solid #d5e4e2;border-radius:15px;background:rgba(255,255,255,.82);width:max-content;max-width:100%}.prog-practice-filters a{padding:9px 13px;border-radius:10px;color:#526075;text-decoration:none;font-size:.8rem;font-weight:850;white-space:nowrap}.prog-practice-filters a:hover,.prog-practice-filters a.ativo{background:#e5f6f1;color:#087d6a}
.prog-area-atividades .prog-mode-overview{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.prog-area-atividades .prog-mode-overview article{min-height:96px;border-color:#d9e5e4;background:rgba(255,255,255,.84);box-shadow:0 8px 22px rgba(7,70,60,.045)}
.prog-exam-grid{grid-template-columns:repeat(auto-fit,minmax(270px,1fr));align-items:stretch}.prog-exam-card{--mode:#0b947d;--mode-soft:#e6f6f2;--pointer-x:50%;--pointer-y:50%;position:relative;isolation:isolate;display:flex;flex-direction:column;min-height:355px;padding:22px;overflow:hidden;border:1px solid #d3e1e1;border-radius:20px;background:#fff;box-shadow:0 14px 36px rgba(7,58,52,.075);color:var(--prog-ink);transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}.prog-exam-card.mode-identificada{--mode:#1769e0;--mode-soft:#eaf2ff}.prog-exam-card.mode-avaliacao{--mode:#7455bd;--mode-soft:#f0eafb}.prog-exam-card::before{content:"";position:absolute;inset:0;z-index:-1;opacity:0;background:radial-gradient(260px circle at var(--pointer-x) var(--pointer-y),color-mix(in srgb,var(--mode) 16%,transparent),transparent 65%);transition:opacity .25s}.prog-exam-card::after{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--mode)}.prog-exam-card:hover{transform:translateY(-5px);border-color:color-mix(in srgb,var(--mode) 45%,#fff);box-shadow:0 22px 46px color-mix(in srgb,var(--mode) 13%,transparent)}.prog-exam-card:hover::before{opacity:1}.prog-exam-card-top{display:flex;justify-content:space-between;gap:12px}.prog-exam-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:var(--mode-soft);color:var(--mode);font-size:1.2rem}.prog-exam-status{padding:6px 10px;border:1px solid color-mix(in srgb,var(--mode) 30%,#fff);border-radius:999px;background:var(--mode-soft);color:var(--mode);font-size:.67rem;font-weight:900}.prog-exam-type{display:block;margin-top:21px;color:var(--mode);font-size:.64rem;font-weight:950;letter-spacing:.11em;text-transform:uppercase}.prog-exam-card h2{margin:7px 0 8px;color:var(--prog-ink);font-size:1.35rem}.prog-exam-description{margin:0 0 12px;color:var(--prog-muted);font-size:.84rem}.prog-exam-facts{display:grid;gap:6px;margin:8px 0 18px}.prog-exam-facts div{display:grid;grid-template-columns:19px minmax(0,1fr);gap:6px}.prog-exam-facts dt,.prog-exam-facts dd{margin:0}.prog-exam-facts dt{color:var(--mode)}.prog-exam-facts dd{color:#48556b;font-size:.78rem;font-weight:750}.prog-exam-action{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;padding:12px 14px;border:1px solid color-mix(in srgb,var(--mode) 35%,#fff);border-radius:12px;background:var(--mode-soft);color:var(--mode);text-decoration:none;font-weight:900}.prog-exam-action:hover{background:var(--mode);color:#fff}.prog-exam-action.is-disabled{justify-content:center;opacity:.65}.prog-exam-card.state-encerrada{filter:saturate(.55);opacity:.82}
.prog-how-practice{margin-top:34px;padding:28px;border:1px solid #d6e4e2;border-radius:22px;background:rgba(255,255,255,.78)}.prog-how-practice>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:16px}.prog-how-practice article{padding:16px;border-top:1px solid #d6e4e2}.prog-how-practice article>strong{color:#0b947d;font-size:.72rem}.prog-how-practice h2{margin:7px 0 4px;font-size:1rem}.prog-how-practice p{margin:0;color:var(--prog-muted);font-size:.82rem}

/* Atividade aberta: questão central e acompanhamento à direita. */
.prog-activity-content{width:min(1160px,100%);margin:auto}.prog-breadcrumb{display:flex;align-items:center;gap:8px;width:max-content;max-width:100%;margin-bottom:15px;padding:10px 13px;border:1px solid #d6e3e2;border-radius:12px;background:rgba(255,255,255,.82);color:var(--prog-muted);font-size:.82rem}.prog-breadcrumb a{color:#087d6a;text-decoration:none;font-weight:850}.prog-breadcrumb strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.prog-area-atividade .prog-activity-hero{position:relative;min-height:245px;padding:clamp(28px,4vw,46px);overflow:hidden;border:1px solid rgba(255,255,255,.16);border-radius:24px;background:radial-gradient(circle at 86% 15%,rgba(45,188,164,.42),transparent 26%),linear-gradient(135deg,#075d50,#0b947d);box-shadow:0 22px 55px rgba(7,91,77,.18)}.prog-area-atividade .prog-activity-hero.mode-identificada{background:linear-gradient(135deg,#0d376f,#1769e0)}.prog-area-atividade .prog-activity-hero.mode-avaliacao{background:linear-gradient(135deg,#432a79,#7455bd)}.prog-activity-hero>div:first-child{position:relative;z-index:1;max-width:780px}.prog-activity-hero h1{margin:.28em 0 .17em;color:#fff;font-size:clamp(2rem,4vw,3.6rem)}.prog-activity-hero p{color:#e9f7f5}.prog-activity-hero .prog-activity-meta span{border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.11);color:#fff}.prog-activity-hero-mark{position:absolute;right:5%;top:50%;display:grid;place-items:center;width:135px;height:135px;border:1px solid rgba(255,255,255,.18);border-radius:34px;background:rgba(255,255,255,.08);color:rgba(255,255,255,.7);font-size:3.5rem;transform:translateY(-50%) rotate(5deg)}
.prog-linked-example{border-top:4px solid #1769e0}.prog-inline-code-status{padding:17px;border-radius:12px;background:#f1f5fa;color:var(--prog-muted);font-weight:800}.prog-inline-code-status.erro{background:#fff0ee;color:var(--prog-danger)}.prog-inline-code-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);gap:16px}.prog-inline-preview{min-height:420px}.prog-inline-no-preview{display:grid;place-items:center;min-height:220px;padding:22px;border:1px dashed #b9c9dd;border-radius:13px;background:#f7f9fc;color:var(--prog-muted);text-align:center}
.prog-practice-shell{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:17px;align-items:start;margin-top:24px}.prog-practice-main{min-width:0;padding:clamp(22px,4vw,36px);border-top:4px solid #0b947d}.prog-practice-main .prog-runner-pages{min-height:400px}.prog-practice-sidebar{position:sticky;top:104px;border-top:4px solid #0b947d}.prog-practice-sidebar h2{margin:9px 0}.prog-practice-clock{margin:14px 0;padding:16px;border-radius:15px;background:linear-gradient(135deg,#075d50,#0b947d);color:#fff}.prog-practice-clock small,.prog-practice-clock strong{display:block}.prog-practice-clock small{color:#ccece5;font-weight:800}.prog-practice-clock strong{margin-top:5px;font:900 2rem ui-monospace,monospace}.prog-practice-tip{margin-top:17px;padding:12px;border-left:4px solid var(--prog-gold);border-radius:0 10px 10px 0;background:#fff8df;color:#6d5615;font-size:.76rem}.prog-practice-tip strong{display:block}.prog-runner-count{display:flex;align-items:baseline;gap:4px;padding:9px 13px;border-radius:12px;background:#e5f6f1;color:#087d6a}.prog-runner-count strong{font-size:1.45rem}.prog-runner-progress{height:9px;overflow:hidden;border-radius:999px;background:#dfe8e7}.prog-runner-progress span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0b947d,#38b69f);transition:width .3s ease}.prog-runner-question[hidden]{display:none!important}.prog-practice .prog-question{padding:22px 0;border-top:0}.prog-question-head{display:flex;align-items:center;gap:9px;margin-bottom:15px}.prog-question-number{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:linear-gradient(145deg,#075d50,#0b947d);color:#fff;font-size:.75rem;font-weight:900}.prog-question-head small{color:var(--prog-muted);font-size:.62rem;font-weight:900;letter-spacing:.11em}.prog-practice .prog-question h3,.prog-test-stage .prog-question h2{font-size:clamp(1.35rem,3vw,2rem);line-height:1.25}.prog-options{display:grid;gap:9px;margin:16px 0}.prog-options label{display:flex;align-items:flex-start;gap:10px;min-height:50px;padding:13px 14px;border:1px solid #d6e1e7;border-radius:12px;background:#f8fafc;cursor:pointer}.prog-options label:hover{border-color:#8bcfc2;background:#f0faf7}.prog-options label:has(input:checked){border-color:#52b6a3;background:#eaf8f4;box-shadow:inset 3px 0 #0b947d}.prog-options input{margin-top:3px;accent-color:#0b947d}.prog-options label.selected-correct{border-color:#75bd95;background:#e9f7ef}.prog-options label.selected-wrong{border-color:#d89b9f;background:#fff0f1}.prog-question-tools{display:flex;flex-wrap:wrap;gap:8px}.prog-feedback{margin-top:11px;padding:13px 14px;border-radius:11px;background:#eef3fa}.prog-feedback[data-state="correct"]{background:#e6f5ed;color:#11633e}.prog-feedback[data-state="review"]{background:#fff5e4;color:#79560d}.prog-feedback[data-state="warning"]{background:#fff0ee;color:var(--prog-danger)}
.prog-question-map{display:flex;flex-wrap:wrap;gap:7px;margin:14px 0}.prog-question-map button{display:grid;place-items:center;width:36px;height:36px;border:1px solid #c8d7dc;border-radius:10px;background:#fff;color:#34465e;font-weight:900;cursor:pointer}.prog-question-map button.is-current{border-color:#0b947d;background:#075d50;color:#fff;box-shadow:0 0 0 3px rgba(11,148,125,.13)}.prog-question-map button.is-answered:not(.is-current){border-color:#62b695;background:#e8f8f1;color:#116341}.prog-question-map button.is-review:not(.is-current){border-color:#d9b647;background:#fff7d9;color:#795b0d}.prog-map-legend{display:flex;flex-wrap:wrap;gap:9px;color:var(--prog-muted);font-size:.66rem}.prog-map-legend span{display:flex;align-items:center;gap:5px}.prog-map-legend i{width:9px;height:9px;border-radius:3px;background:#075d50}.prog-map-legend span+span i{background:#62b695}.prog-map-legend .legend-review i{background:#d9b647}.prog-review-toggle{margin-top:10px}.prog-review-toggle.is-active{border-color:#d9b647;background:#fff7d9;color:#795b0d}
.prog-test-runner{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:17px;align-items:start;margin-top:25px}.prog-test-progress{grid-column:2;position:sticky;top:104px;padding:21px;border-top:4px solid #0b947d}.prog-test-stage{grid-column:1;grid-row:1;min-width:0}.prog-test-stage .prog-question{min-height:430px;padding:clamp(23px,4vw,38px);border-top:4px solid #0b947d}.prog-test-stage .prog-runner-actions{padding:14px}.prog-test-clock{margin:14px 0;padding:16px;border-radius:15px;background:linear-gradient(135deg,#075d50,#0b947d);color:#fff}.prog-test-clock small,.prog-test-clock strong{display:block}.prog-test-clock strong{margin-top:5px;font:900 2rem ui-monospace,monospace}.prog-test-person{display:flex;flex-direction:column;padding:12px;border-radius:11px;background:#f4f8f8}.prog-test-person span{color:var(--prog-muted);font-size:.76rem}.prog-test-dates{display:grid;gap:7px;margin:13px 0}.prog-test-dates div{display:flex;justify-content:space-between;gap:9px;padding-bottom:7px;border-bottom:1px solid var(--prog-line)}.prog-test-dates dt,.prog-test-dates dd{margin:0;font-size:.73rem}.prog-test-dates dt{color:var(--prog-muted);font-weight:800}.prog-test-dates dd{text-align:right;font-weight:850}.prog-runner-actions{display:flex;justify-content:space-between;gap:9px;margin-top:16px}.prog-runner-actions .prog-btn:last-child{margin-left:auto}

/* Responsividade pública. */
@media(max-width:1120px){.prog-public .prog-hero{grid-template-columns:minmax(0,1fr) minmax(310px,.8fr);gap:28px}.prog-mission-layout{grid-template-columns:220px minmax(0,1fr)}.prog-mission-checks{grid-column:1/-1;position:static;grid-template-columns:1fr 1fr}.prog-area-projeto .prog-project-brief{grid-template-columns:1fr 1fr}.prog-area-projeto .prog-project-brief>div:last-child{grid-column:1/-1}}
@media(max-width:900px){.prog-public{padding-top:18px}.prog-public-nav{position:static}.prog-public-nav .marca{margin-bottom:8px}.prog-public-nav{display:block}.prog-public-nav .links{overflow-x:auto;padding-bottom:4px}.prog-public .prog-hero{grid-template-columns:1fr;min-height:auto}.prog-hero-window{max-width:650px;transform:none}.prog-choice-public{grid-template-columns:1fr}.prog-choice-public a{min-height:220px}.prog-project-hero{grid-template-columns:1fr}.prog-project-hero-mark{display:none}.prog-project-hero>.prog-btn{width:max-content}.prog-mission-layout{grid-template-columns:1fr}.prog-mission-layout .prog-project-side,.prog-mission-checks{position:static;max-height:none}.prog-area-projeto .prog-project-brief{grid-template-columns:1fr}.prog-area-projeto .prog-project-brief>div:last-child{grid-column:auto}.prog-practice-shell,.prog-test-runner{grid-template-columns:1fr}.prog-practice-sidebar,.prog-test-progress{position:static;grid-column:1;grid-row:auto}.prog-test-stage{grid-column:1;grid-row:auto}.prog-inline-code-grid{grid-template-columns:1fr}.prog-how-practice>div{grid-template-columns:1fr}}
@media(max-width:700px){.prog-public>.prog-container{width:min(100% - 22px,1380px)}.prog-public-nav{padding:9px}.prog-public-nav .marca>span:last-child{display:none}.prog-public-nav .links a{padding:8px 10px;font-size:.75rem}.prog-public-nav .links .nav-codepen{margin-left:0}.prog-public .prog-hero{padding:31px 22px;border-radius:23px}.prog-public .prog-hero h1{font-size:clamp(2.4rem,13vw,3.7rem);overflow-wrap:anywhere}.prog-hero-window{width:100%;animation:none}.prog-code-orbit{display:none}.prog-hero-window pre{min-height:0;padding:25px 18px;font-size:.7rem}.prog-page-heading{align-items:flex-start;margin-top:22px;padding-top:18px}.prog-count,.prog-heading-mark{display:none}.prog-page-heading h1{font-size:2.4rem}.prog-toolbar{grid-template-columns:1fr}.prog-public .prog-grid{grid-template-columns:1fr}.prog-project-hero{padding:25px 20px}.prog-checkpoint-route>span{min-width:155px}.prog-progress-card{grid-template-columns:1fr;gap:11px}.prog-mission-checks{grid-template-columns:1fr}.prog-code-reference{grid-template-columns:1fr}.prog-code-reference .prog-btn{width:100%}.prog-mode-overview{grid-template-columns:1fr!important}.prog-activity-hero-mark{display:none}.prog-activity-hero{min-height:0;padding:28px 21px}.prog-start-summary{grid-template-columns:1fr}.prog-runner-actions{display:grid;grid-template-columns:1fr 1fr}.prog-runner-actions .prog-btn{width:100%;margin:0}.prog-runner-actions .prog-finish-button{grid-column:1/-1}.prog-practice-main,.prog-test-stage .prog-question{padding:20px;min-height:390px}.prog-question-tools{display:grid}.prog-question-tools .prog-btn{width:100%}.prog-inline-preview{min-height:340px}.prog-activity-content{width:100%}}
@media(max-width:430px){.prog-public .prog-hero h1{font-size:2.45rem}.prog-public .prog-hero p{font-size:.95rem}.prog-public .prog-hero .prog-actions{display:grid}.prog-public .prog-hero .prog-btn{width:100%}.prog-choice-public a{min-height:235px}.prog-public-nav .links a>span{display:none}.prog-project-hero h1{font-size:2.2rem}.prog-practice-filters{width:100%}.prog-practice-filters a{padding:8px 10px}.prog-options label{padding:12px}.prog-breadcrumb{width:100%}}
@media(prefers-reduced-motion:reduce){.prog-hero-window,.prog-code-orbit{animation:none}.prog-public .prog-btn,.prog-public .prog-code-card,.prog-exam-card,.prog-choice-public a::before{transition:none}}

@media (max-width:0px){

/* Atividades V2 — cartões, exemplo visível e execução pergunta a pergunta */
.prog-exam-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));align-items:stretch}
.prog-exam-card{--card-a:#9e315f;--card-b:#cf3f7a;position:relative;isolation:isolate;display:flex;flex-direction:column;min-height:390px;padding:23px;overflow:hidden;border:1px solid rgba(255,255,255,.24);border-radius:22px;background:linear-gradient(145deg,var(--card-a),var(--card-b));box-shadow:0 18px 42px rgba(7,23,57,.16);color:#fff;transition:transform .3s ease,box-shadow .3s ease}
.prog-exam-card::before,.prog-exam-card::after{content:"";position:absolute;z-index:-1;border:1px solid rgba(255,255,255,.13);border-radius:50%;pointer-events:none}.prog-exam-card::before{width:230px;height:230px;right:-95px;top:-80px}.prog-exam-card::after{width:155px;height:155px;right:-15px;top:15px}
.prog-exam-card:hover{transform:translateY(-6px);box-shadow:0 25px 55px rgba(7,23,57,.24)}
.prog-exam-card.palette-teal{--card-a:#087f7b;--card-b:#19a39f}.prog-exam-card.palette-blue{--card-a:#154fa5;--card-b:#2876dd}.prog-exam-card.palette-violet{--card-a:#5b3c9b;--card-b:#8464c5}.prog-exam-card.palette-amber{--card-a:#9b6810;--card-b:#d39b27}
.prog-exam-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.prog-exam-icon{display:grid;place-items:center;width:50px;height:50px;border-radius:15px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);font-size:1.3rem}.prog-exam-status{padding:7px 11px;border:1px solid rgba(255,255,255,.3);border-radius:999px;background:rgba(4,17,44,.16);font-size:.72rem;font-weight:900}
.prog-exam-type{display:block;margin-top:23px;font-size:.68rem;font-weight:950;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.78)}.prog-exam-card h2{margin:7px 0 8px;color:#fff;font-size:1.45rem}.prog-exam-description{min-height:38px;margin:0 0 12px;color:rgba(255,255,255,.84);font-size:.86rem}.prog-exam-facts{display:grid;gap:7px;margin:8px 0 18px}.prog-exam-facts div{display:grid;grid-template-columns:20px minmax(0,1fr);gap:7px;align-items:start}.prog-exam-facts dt,.prog-exam-facts dd{margin:0}.prog-exam-facts dt{color:rgba(255,255,255,.68);font-weight:900}.prog-exam-facts dd{font-size:.8rem;font-weight:750;color:#fff}.prog-exam-action{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding:13px 15px;border:1px solid rgba(255,255,255,.56);border-radius:13px;background:rgba(255,255,255,.9);color:#13223e;text-decoration:none;font-weight:900;box-shadow:inset 0 1px rgba(255,255,255,.9)}.prog-exam-action:hover{background:#fff;color:#071739}.prog-exam-action.is-disabled{justify-content:center;opacity:.72;cursor:not-allowed}.prog-exam-card.state-encerrada{filter:saturate(.68)}

.prog-linked-example{border-top:5px solid var(--prog-blue)}.prog-inline-code-status{padding:18px;border-radius:13px;background:#f4f7fb;color:var(--prog-muted);font-weight:800}.prog-inline-code-status.erro{background:#fff0ee;color:var(--prog-danger)}.prog-inline-code-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);gap:16px;align-items:start}.prog-inline-preview{min-height:430px}.prog-inline-no-preview{display:grid;place-items:center;min-height:220px;padding:24px;border:1px dashed #b9c8df;border-radius:14px;background:#f7f9fc;color:var(--prog-muted);text-align:center}

.prog-question-runner{overflow:hidden}.prog-question-runner .prog-runner-pages{min-height:270px}.prog-runner-count{display:flex;align-items:baseline;gap:5px;padding:10px 14px;border-radius:13px;background:#eaf1ff;color:var(--prog-navy)}.prog-runner-count strong{font-size:1.5rem}.prog-runner-progress{height:9px;overflow:hidden;border-radius:999px;background:#dfe7f2}.prog-runner-progress span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--prog-blue),#4aa7ff);transition:width .3s ease}.prog-question-map{display:flex;flex-wrap:wrap;gap:7px;margin:15px 0}.prog-question-map button{display:grid;place-items:center;width:36px;height:36px;border:1px solid #c8d4e5;border-radius:10px;background:#fff;color:var(--prog-navy);font-weight:900;cursor:pointer}.prog-question-map button.is-current{border-color:var(--prog-blue);background:var(--prog-navy);color:#fff;box-shadow:0 0 0 3px rgba(23,105,224,.14)}.prog-question-map button.is-answered:not(.is-current){border-color:#56ad8a;background:#e8f8f1;color:#116341}.prog-runner-question[hidden]{display:none!important}.prog-practice .prog-runner-question{padding:21px 0;border-top:0}.prog-runner-actions{display:flex;justify-content:space-between;gap:10px;margin-top:18px}.prog-runner-actions .prog-btn:last-child{margin-left:auto}

.prog-test-intro{max-width:790px;margin:30px auto 0}.prog-test-start{padding:clamp(24px,5vw,42px);border-top:5px solid var(--prog-blue)}.prog-test-start h2{font-size:clamp(1.6rem,4vw,2.35rem)}.prog-start-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:22px 0}.prog-start-summary div{padding:15px;border:1px solid var(--prog-line);border-radius:14px;background:#f7faff}.prog-start-summary strong,.prog-start-summary span{display:block}.prog-start-summary strong{font-size:1.35rem;color:var(--prog-navy)}.prog-start-summary span{margin-top:3px;color:var(--prog-muted);font-size:.75rem;font-weight:850;text-transform:uppercase}.prog-start-warning{padding:12px 14px;border-left:4px solid var(--prog-gold);border-radius:0 10px 10px 0;background:#fff9e8;color:#5d4a16}

.prog-test-runner{display:grid;grid-template-columns:270px minmax(0,1fr);gap:18px;align-items:start;margin-top:28px}.prog-test-progress{position:sticky;top:86px;padding:22px;border-top:5px solid var(--prog-blue)}.prog-test-progress h2{margin:8px 0 14px}.prog-test-person{display:flex;flex-direction:column;padding:12px;border-radius:12px;background:#f5f8fc}.prog-test-person span{margin-top:3px;color:var(--prog-muted);font-size:.78rem}.prog-test-clock{margin:14px 0;padding:16px;border-radius:15px;background:linear-gradient(135deg,#071739,#154a9c);color:#fff}.prog-test-clock small,.prog-test-clock strong{display:block}.prog-test-clock small{color:#cbdaf3;font-weight:800}.prog-test-clock strong{margin-top:4px;font:900 2rem/1 ui-monospace,Consolas,monospace}.prog-test-clock.is-ending{background:linear-gradient(135deg,#8f2b39,#c44958);animation:progClockPulse 1.6s ease-in-out infinite}.prog-test-dates{display:grid;gap:8px;margin:14px 0}.prog-test-dates div{display:flex;justify-content:space-between;gap:8px;padding-bottom:8px;border-bottom:1px solid var(--prog-line)}.prog-test-dates dt,.prog-test-dates dd{margin:0;font-size:.76rem}.prog-test-dates dt{color:var(--prog-muted);font-weight:800}.prog-test-dates dd{text-align:right;font-weight:850}.prog-test-progress>p{margin:9px 0;color:var(--prog-muted)}.prog-map-legend{display:flex;flex-wrap:wrap;gap:9px;color:var(--prog-muted);font-size:.68rem}.prog-map-legend span{display:flex;align-items:center;gap:5px}.prog-map-legend i{width:9px;height:9px;border-radius:3px;background:var(--prog-navy)}.prog-map-legend span+span i{background:#56ad8a}.prog-test-stage{min-width:0}.prog-test-stage .prog-question{min-height:410px;padding:clamp(23px,4vw,38px);border-top:5px solid var(--prog-blue)}.prog-test-stage .prog-question h2{font-size:clamp(1.35rem,3vw,2rem)}.prog-test-stage .prog-runner-actions{margin-top:14px;padding:15px}.prog-finish-button{margin-left:auto}
@keyframes progClockPulse{50%{box-shadow:0 0 0 7px rgba(196,73,88,.13)}}

html[data-theme="dark"] .prog-test-start,html[data-theme="dark"] .prog-test-progress,html[data-theme="dark"] .prog-test-stage .prog-question,html[data-theme="dark"] .prog-linked-example,body.dark-mode .prog-test-start,body.dark-mode .prog-test-progress,body.dark-mode .prog-test-stage .prog-question,body.dark-mode .prog-linked-example{background:#f8fbff;color:var(--prog-ink)}

@media(max-width:900px){.prog-inline-code-grid,.prog-test-runner{grid-template-columns:1fr}.prog-test-progress{position:static}.prog-test-progress .prog-question-map{max-width:520px}.prog-test-stage .prog-question{min-height:360px}}
@media(max-width:600px){.prog-exam-grid{grid-template-columns:1fr}.prog-exam-card{min-height:360px}.prog-start-summary{grid-template-columns:1fr}.prog-start-summary div{display:flex;align-items:center;justify-content:space-between}.prog-start-summary span{margin:0}.prog-runner-actions{display:grid;grid-template-columns:1fr 1fr}.prog-runner-actions .prog-btn{width:100%;margin:0}.prog-runner-actions .prog-finish-button{grid-column:1/-1}.prog-test-stage .prog-question{min-height:430px}.prog-inline-code-grid{display:block}.prog-inline-preview{min-height:360px;margin-top:14px}.prog-question-map button{width:34px;height:34px}}
@media(prefers-reduced-motion:reduce){.prog-exam-card,.prog-runner-progress span{transition:none}.prog-exam-card:hover{transform:none}.prog-test-clock.is-ending{animation:none}}

/* ==================================================================
   META 6 / V4 — SISTEMA VISUAL UNIFICADO
   Caderno digital de Programação da Biblioteca Virtual do Aparício
   ================================================================== */
:root{
  --prog-navy:#071739;
  --prog-navy-2:#0D2C6C;
  --prog-blue:#1769E0;
  --prog-blue-soft:#E9F2FF;
  --prog-gold:#D2A642;
  --prog-gold-soft:#FFF7DC;
  --prog-ink:#172033;
  --prog-muted:#65728A;
  --prog-bg:#F4F7FB;
  --prog-surface:#FFFFFF;
  --prog-line:#DCE5F0;
  --prog-success:#168052;
  --prog-danger:#A22D3A;
  --prog-purple:#7652B6;
  --prog-shadow:0 18px 50px rgba(7,23,57,.09);
  --prog-shadow-hover:0 24px 65px rgba(7,23,57,.15);
  --prog-radius:20px;
  --prog-radius-sm:13px;
}

.prog-page{
  position:relative;
  min-height:78vh;
  padding:34px 0 84px;
  overflow:hidden;
  background:
    radial-gradient(circle at 92% 3%,rgba(23,105,224,.12),transparent 26%),
    radial-gradient(circle at 3% 36%,rgba(210,166,66,.08),transparent 23%),
    var(--prog-bg);
  color:var(--prog-ink);
  font-family:Inter,"Segoe UI",Arial,sans-serif;
}
.prog-page::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  opacity:.26;
  background-image:linear-gradient(rgba(13,44,108,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(13,44,108,.035) 1px,transparent 1px);
  background-size:32px 32px;
  mask-image:linear-gradient(to bottom,#000,transparent 72%);
}
.prog-page>.prog-container{position:relative;z-index:1}
.prog-container{width:min(1380px,calc(100% - 40px))}
.prog-narrow{max-width:980px}
.prog-page h1,.prog-page h2,.prog-page h3{color:inherit;line-height:1.12}
.prog-page h1{font-size:clamp(2.15rem,4.7vw,4.55rem);letter-spacing:-.055em;margin:.35em 0 .25em}
.prog-page h2{letter-spacing:-.025em}
.prog-page p{line-height:1.7}
.prog-page a,.prog-page button,.prog-page input,.prog-page select,.prog-page textarea{font:inherit}
.prog-page :focus-visible{outline:3px solid rgba(210,166,66,.72);outline-offset:3px}
.prog-lead{font-size:clamp(1rem,1.7vw,1.16rem);line-height:1.7;color:var(--prog-muted)}
.prog-kicker{
  min-height:28px;
  align-items:center;
  padding:6px 11px;
  border:1px solid #C8D9F1;
  background:var(--prog-blue-soft);
  color:var(--prog-navy-2);
  font-size:.7rem;
  font-weight:900;
  letter-spacing:.115em;
}
.prog-panel{
  border:1px solid var(--prog-line);
  border-radius:var(--prog-radius);
  background:rgba(255,255,255,.97);
  box-shadow:var(--prog-shadow);
}
.prog-section{margin-top:38px}
.prog-section-head{align-items:center;margin-bottom:20px}
.prog-section-head h2{font-size:clamp(1.45rem,2.5vw,2rem);margin:.3em 0 0}

/* Botões e campos */
.prog-btn{
  min-height:43px;
  padding:10px 16px;
  border:1px solid #B7C8DF;
  border-radius:11px;
  background:#fff;
  color:var(--prog-navy);
  font-weight:850;
  box-shadow:0 3px 0 rgba(7,23,57,.05);
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease;
}
.prog-btn:hover{transform:translateY(-2px);border-color:var(--prog-blue);box-shadow:0 10px 24px rgba(7,23,57,.12)}
.prog-btn.primary{background:linear-gradient(135deg,var(--prog-navy),var(--prog-navy-2));border-color:var(--prog-navy);color:#fff}
.prog-btn.primary:hover{background:linear-gradient(135deg,var(--prog-navy-2),var(--prog-blue));color:#fff}
.prog-btn.gold{background:var(--prog-gold);border-color:var(--prog-gold);color:var(--prog-ink)}
.prog-btn.gold:hover{background:#E2BA51;color:var(--prog-ink)}
.prog-btn.light{border-color:rgba(255,255,255,.28);background:rgba(255,255,255,.1);color:#fff;box-shadow:none}
.prog-btn.light:hover{background:#fff;color:var(--prog-navy)}
.prog-btn.danger{background:#FFF4F4;border-color:#E7B8BD;color:var(--prog-danger)}
.prog-btn.sm{min-height:35px;padding:7px 11px;font-size:.8rem}
.prog-input,.prog-select,.prog-textarea{
  min-height:45px;
  border:1px solid #C6D3E3;
  border-radius:11px;
  background:#FBFDFF;
  color:var(--prog-ink);
  box-shadow:inset 0 1px 2px rgba(7,23,57,.035);
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
.prog-input:hover,.prog-select:hover,.prog-textarea:hover{border-color:#91ACD0;background:#fff}
.prog-input:focus,.prog-select:focus,.prog-textarea:focus{border-color:var(--prog-blue);box-shadow:0 0 0 4px rgba(23,105,224,.11);outline:0;background:#fff}
.prog-field label{font-size:.84rem;color:#35425A}
.prog-field small{display:block;margin-top:5px;line-height:1.45}

/* Navegação pública */
.prog-public-nav{
  top:12px;
  min-height:68px;
  padding:9px 10px 9px 14px;
  border-color:#CFDBE9;
  border-radius:17px;
  background:rgba(255,255,255,.94);
  box-shadow:0 14px 40px rgba(7,23,57,.11);
  backdrop-filter:blur(14px);
}
.prog-public-nav .marca{gap:11px;padding:2px 8px 2px 2px}
.prog-public-nav .marca>span:first-child{width:42px;height:42px;border-radius:12px;background:linear-gradient(145deg,var(--prog-navy),var(--prog-blue));box-shadow:0 8px 18px rgba(13,44,108,.22)}
.prog-public-nav .marca>span:last-child{display:flex;flex-direction:column;width:auto;height:auto;border-radius:0;background:transparent;color:inherit;line-height:1.1}
.prog-public-nav .marca strong{font-size:.94rem}
.prog-public-nav .marca small{margin-top:4px;color:var(--prog-muted);font-size:.64rem;font-weight:700;letter-spacing:.055em;text-transform:uppercase}
.prog-public-nav .links{align-items:center}
.prog-public-nav .links a{position:relative;padding:10px 12px;font-size:.82rem}
.prog-public-nav .links a.ativo{background:var(--prog-blue-soft);color:var(--prog-navy-2)}
.prog-public-nav .links a.ativo::after{content:"";position:absolute;left:12px;right:12px;bottom:4px;height:2px;border-radius:999px;background:var(--prog-blue)}

/* Abertura pública */
.prog-hero{
  position:relative;
  grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);
  min-height:470px;
  padding:clamp(36px,5vw,72px);
  border:1px solid rgba(255,255,255,.13);
  border-radius:28px;
  background:
    linear-gradient(120deg,rgba(255,255,255,.035),transparent 38%),
    linear-gradient(135deg,#06142F 0%,#071739 45%,#0D2C6C 76%,#1769E0 140%);
  box-shadow:0 30px 80px rgba(7,23,57,.22);
}
.prog-hero::before{content:"";position:absolute;left:0;top:0;width:150px;height:5px;border-radius:28px 0 8px 0;background:var(--prog-gold)}
.prog-hero::after{content:"CSS";position:absolute;right:24px;bottom:-23px;color:rgba(255,255,255,.035);font-size:clamp(6rem,15vw,12rem);font-weight:950;letter-spacing:-.08em}
.prog-hero-copy{position:relative;z-index:2}
.prog-hero .prog-kicker{border-color:rgba(255,255,255,.22);background:rgba(255,255,255,.1);color:#fff}
.prog-hero h1{max-width:760px;color:#fff}
.prog-hero h1 em{color:#CFE2FF;font-style:normal}
.prog-hero p{max-width:650px;color:#DCE8FB;font-size:clamp(1rem,1.6vw,1.16rem)}
.prog-hero-window{
  position:relative;
  z-index:2;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.2);
  border-radius:18px;
  background:#071126;
  box-shadow:0 30px 55px rgba(0,0,0,.3);
  transform:rotate(1.5deg);
}
.prog-window-bar{display:flex;align-items:center;gap:6px;height:46px;padding:0 15px;border-bottom:1px solid #FFFFFF18;background:#0E1C36}
.prog-window-bar i{width:10px;height:10px;border-radius:50%;background:#E06B70}.prog-window-bar i:nth-child(2){background:#D2A642}.prog-window-bar i:nth-child(3){background:#45A376}
.prog-window-bar span{margin-left:10px;color:#9EB0CB;font:700 .72rem ui-monospace,monospace}
.prog-hero-window pre{margin:0;padding:34px 28px;color:#DDE9FA;font:700 clamp(.78rem,1.35vw,1rem)/1.9 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre-wrap}
.code-selector{color:#75B5FF}.code-property{color:#E4C56B}.code-value{color:#7DDBB1}
.prog-window-status{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-top:1px solid #FFFFFF15;color:#78DDAE;font:800 .63rem ui-monospace,monospace;letter-spacing:.06em}
.prog-window-status strong{color:#D2A642;font-size:1rem}
.prog-choice-public{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:20px}
.prog-choice-public a{position:relative;min-height:250px;padding:24px;overflow:hidden}
.prog-choice-public a::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--prog-blue)}
.prog-choice-public a:nth-child(2)::before{background:var(--prog-gold)}.prog-choice-public a:nth-child(3)::before{background:var(--prog-success)}
.prog-choice-public .icon{width:48px;height:48px;background:var(--prog-navy);color:#fff;font-size:.8rem;letter-spacing:.06em}
.prog-choice-public small{display:block;margin-top:18px;color:var(--prog-blue);font-size:.67rem;font-weight:900;letter-spacing:.12em}
.prog-choice-public h2{margin:7px 0;font-size:1.3rem}
.prog-choice-public p{margin:0;color:var(--prog-muted);font-size:.9rem}
.prog-card-link{position:absolute;left:24px;bottom:20px;color:var(--prog-navy-2);font-size:.82rem}
.prog-codepen{position:relative;overflow:hidden;margin-top:16px;border:1px solid #263A5D;background:linear-gradient(110deg,#0B1425,#111F37);box-shadow:0 16px 36px rgba(7,23,57,.12)}
.prog-codepen::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--prog-gold)}

/* Cabeçalhos e catálogos */
.prog-page-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  margin:38px 0 24px;
  padding:22px 0 24px;
  border-bottom:1px solid var(--prog-line);
}
.prog-page-heading h1{margin:.22em 0 .12em;font-size:clamp(2.25rem,4vw,3.8rem)}
.prog-page-heading .prog-lead{margin-bottom:0}
.prog-count{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:112px;min-height:92px;border:1px solid #C9D8EA;border-radius:18px;background:#fff;color:var(--prog-muted);box-shadow:0 10px 28px rgba(7,23,57,.07);font-size:.75rem;font-weight:800;text-transform:uppercase}
.prog-count strong{color:var(--prog-navy-2);font-size:2rem;line-height:1}
.prog-heading-mark{display:grid;place-items:center;width:84px;height:84px;border-radius:22px;background:linear-gradient(145deg,var(--prog-navy),var(--prog-blue));color:#fff;font-size:2rem;font-weight:900;box-shadow:0 16px 35px rgba(13,44,108,.22)}
.prog-toolbar{padding:13px;border:1px solid var(--prog-line);border-radius:16px;background:#fff;box-shadow:0 12px 32px rgba(7,23,57,.07)}
.prog-grid{gap:18px}
.prog-code-card{position:relative;min-height:310px;border-radius:18px;border-color:var(--prog-line);box-shadow:0 12px 34px rgba(7,23,57,.075)}
.prog-code-card:hover{transform:translateY(-5px);border-color:#A8C2E7;box-shadow:var(--prog-shadow-hover)}
.prog-code-card .visual{height:112px;display:flex;flex-direction:column;gap:6px;background:linear-gradient(145deg,#EAF2FF,#F9FBFF);color:var(--prog-navy-2)}
.prog-code-card .visual span{font:900 1.9rem ui-monospace,monospace}.prog-code-card .visual small{font-size:.58rem;font-weight:900;letter-spacing:.12em}
.prog-code-card .body{padding:20px}.prog-code-card h3{margin:14px 0 8px;font-size:1.08rem}.prog-code-card .foot{padding:14px 18px;background:#FAFCFF}
.prog-tag{border:1px solid #CDDDF1;background:#EFF5FF;color:var(--prog-navy-2)}
.prog-code-detail{margin-bottom:20px;border-top:5px solid var(--prog-blue)}
.prog-detail-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:20px}
.prog-detail-columns>div{padding:18px;border:1px solid var(--prog-line);border-radius:14px;background:#F8FAFD}
.prog-detail-columns small{color:var(--prog-blue);font-size:.66rem;font-weight:900;letter-spacing:.11em}.prog-detail-columns h3{margin:5px 0}
.prog-grid-empty{grid-column:1/-1}

/* Projetos e sequência do aluno */
.prog-project-hero{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  align-items:center;
  gap:26px;
  margin:34px 0 20px;
  padding:clamp(28px,4vw,48px);
  overflow:hidden;
  border-radius:25px;
  background:linear-gradient(135deg,#fff,#F3F7FC);
  border:1px solid var(--prog-line);
  box-shadow:var(--prog-shadow);
}
.prog-project-hero::before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:linear-gradient(var(--prog-blue),var(--prog-gold))}
.prog-project-hero h1{font-size:clamp(2rem,4vw,3.5rem)}
.prog-project-hero .prog-lead{max-width:820px}
.prog-project-hero-mark{display:flex;align-items:center;gap:10px;padding:15px 18px;border-radius:16px;background:var(--prog-navy);color:#fff}
.prog-project-hero-mark span{font-size:2rem;font-weight:950;color:var(--prog-gold)}.prog-project-hero-mark strong{font-size:.67rem;letter-spacing:.11em;line-height:1.5}
.prog-project-meta span{border:1px solid #D2DFEE;background:#fff}
.prog-project-brief{gap:16px}.prog-project-brief>div{position:relative;overflow:hidden;box-shadow:0 10px 28px rgba(7,23,57,.06)}.prog-project-brief>div::after{content:"";position:absolute;right:-25px;bottom:-25px;width:80px;height:80px;border-radius:50%;background:rgba(23,105,224,.06)}
.prog-progress-card{display:grid;grid-template-columns:220px minmax(0,1fr);align-items:center;gap:24px;margin:18px 0;padding:18px 22px;border:1px solid #CDD9E8;border-radius:16px;background:#fff;box-shadow:0 10px 28px rgba(7,23,57,.06)}
.prog-progress-card>div:first-child{display:flex;flex-direction:column;align-items:flex-start;gap:7px}.prog-progress-card strong{font-size:.86rem}
.prog-progress{height:12px;background:#E4EAF2}.prog-progress span{background:linear-gradient(90deg,var(--prog-blue),#49A0FF,var(--prog-gold));transition:width .35s ease}
.prog-progress-card.is-complete{border-color:#8EC8AA;background:#F3FBF7}
.prog-project-layout{grid-template-columns:310px minmax(0,1fr);gap:18px}
.prog-project-side{top:94px;padding:18px;border-top:5px solid var(--prog-navy-2)}
.prog-project-side h2{margin:0 0 12px;padding:0 8px;font-size:1rem;text-transform:uppercase;letter-spacing:.08em}
.prog-stage-link{margin:5px 0;padding:12px 13px;border:1px solid transparent;border-radius:11px;font-weight:750}
.prog-stage-link.ativo{border-color:#BFD2EE;background:linear-gradient(90deg,#EAF2FF,#F7FAFF);box-shadow:inset 4px 0 var(--prog-blue)}
.prog-stage-link.bloqueado{background:#F3F5F8;color:#727E90}
.prog-session{position:relative;padding:25px 0}.prog-session header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.prog-session header>span{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--prog-navy);color:#fff;font-weight:900}.prog-session header small{color:var(--prog-blue);font-size:.62rem;font-weight:900;letter-spacing:.1em}.prog-session header h3{margin:2px 0 0}
.prog-check{align-items:flex-start;padding:12px 13px;border:1px solid #E0E7F0;background:#F8FAFD;transition:.18s ease}.prog-check:hover{border-color:#AAC1E0;background:#F1F6FD}.prog-check input{width:18px;height:18px;accent-color:var(--prog-success)}.prog-check.is-done{border-color:#B8DDCA;background:#F0F9F4;color:#49705C}.prog-check.is-done span{text-decoration:line-through;text-decoration-thickness:1px}
.prog-code-reference{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:13px;margin-top:14px;border:1px solid #C9DCF4;border-left:5px solid var(--prog-blue);border-radius:13px;background:#F3F8FF}.prog-code-reference-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:10px;background:var(--prog-navy);color:#fff;font:800 .75rem ui-monospace,monospace}.prog-code-reference strong{display:block;margin:2px 0}.prog-code-reference p{margin:3px 0;color:var(--prog-muted);font-size:.86rem}.prog-code-role{color:var(--prog-blue);font-size:.62rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.prog-trail{position:relative}.prog-trail::before{content:"";position:absolute;left:37px;top:25px;bottom:25px;width:2px;background:#D7E1EE}.prog-trail-step{position:relative;border-radius:14px}.prog-trail-step .number{z-index:1;border:4px solid #fff;box-shadow:0 0 0 1px #C9D8EB}

/* Atividades e perguntas */
.prog-mode-overview{gap:16px}.prog-mode-overview article{position:relative;min-height:112px;padding:20px 20px 18px 66px;justify-content:center;overflow:hidden}.prog-mode-overview article::before{position:absolute;left:20px;top:27px;display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#EAF2FF;color:var(--prog-blue);font-weight:900}.prog-mode-overview .mode-pratica::before{content:"↻"}.prog-mode-overview .mode-identificada::before{content:"✓"}.prog-mode-overview .mode-avaliacao::before{content:"◆"}.mode-pratica .prog-mode-badge{background:#e7f6ee;color:var(--prog-success)}.mode-identificada .prog-mode-badge{background:#e7f0ff;color:var(--prog-blue)}.mode-avaliacao .prog-mode-badge{background:#f0eafd;color:#6941a5}
.prog-activity-card{position:relative;min-height:280px;padding:22px;border-radius:18px;overflow:hidden}.prog-activity-card::after{content:"";position:absolute;right:-28px;bottom:-28px;width:90px;height:90px;border-radius:50%;background:rgba(23,105,224,.055)}.prog-activity-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.prog-activity-symbol{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#EDF3FB;color:var(--prog-navy-2);font-weight:900}.prog-activity-card h2,.prog-activity-card h3{font-size:1.15rem}.prog-activity-card .prog-btn{z-index:1}
.prog-activity-hero{position:relative;overflow:hidden;min-height:300px;align-items:center;padding:clamp(30px,5vw,54px);border:1px solid rgba(255,255,255,.14);box-shadow:0 28px 65px rgba(7,23,57,.22)}
.prog-activity-hero>div:first-child{position:relative;z-index:1;max-width:760px}.prog-activity-hero h1{font-size:clamp(2rem,4vw,3.65rem);color:#fff}.prog-activity-hero-mark{position:absolute;right:5%;display:grid;place-items:center;width:150px;height:150px;border:1px solid rgba(255,255,255,.16);border-radius:36px;background:rgba(255,255,255,.08);color:rgba(255,255,255,.75);font-size:4rem;font-weight:900;transform:rotate(5deg)}
.prog-breadcrumb{padding:11px 14px;border:1px solid var(--prog-line);border-radius:12px;background:rgba(255,255,255,.84);width:max-content;max-width:100%;overflow:hidden}.prog-breadcrumb strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.prog-question{overflow:hidden}.prog-question::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#D5E2F2}.prog-question-head{display:flex;align-items:center;gap:8px;margin-bottom:13px}.prog-question-head small{color:var(--prog-muted);font-size:.65rem;font-weight:900;letter-spacing:.12em}.prog-question-number{width:38px;height:38px;border-radius:11px;background:linear-gradient(145deg,var(--prog-navy),var(--prog-blue));font-size:.78rem}
.prog-options label{position:relative;min-height:48px;align-items:center;padding:12px 14px;border-radius:12px;background:#F8FAFD}.prog-options label:has(input:checked){border-color:#8BB2E8;background:#EDF5FF;box-shadow:inset 3px 0 var(--prog-blue)}.prog-options input{width:17px;height:17px;accent-color:var(--prog-blue)}
.prog-support{border-left-color:var(--prog-gold);background:var(--prog-gold-soft)}
.prog-practice{border-top:0;box-shadow:var(--prog-shadow)}.prog-practice::before{content:"";display:block;height:5px;margin:-24px -24px 22px;background:linear-gradient(90deg,var(--prog-success),#65B889)}.prog-practice-mark{display:grid;place-items:center;width:52px;height:52px;border-radius:15px;background:#E8F7EF;color:var(--prog-success);font-size:1.5rem;font-weight:900}
.prog-access-form{display:grid;grid-template-columns:110px minmax(0,1fr);align-items:center;gap:24px;border-top:5px solid var(--prog-purple)}.prog-access-symbol{display:grid;place-items:center;width:90px;height:90px;border-radius:24px;background:#F0EAFB;color:var(--prog-purple);font-size:2.2rem}.prog-access-controls{display:grid;grid-template-columns:minmax(220px,1fr) auto;align-items:end;gap:10px;max-width:620px}
.prog-result-summary{padding:40px}.prog-result-icon{display:grid;place-items:center;width:70px;height:70px;margin:0 auto 15px;border-radius:50%;background:#E8F7EF;color:var(--prog-success);font-size:2rem;font-weight:900}.prog-score{color:var(--prog-navy-2)}

/* Modal de código */
.prog-modal{background:rgba(5,15,35,.82);backdrop-filter:blur(8px)}
.prog-modal-dialog{border:1px solid rgba(255,255,255,.18);border-radius:22px;box-shadow:0 35px 100px rgba(0,0,0,.48)}
.prog-modal-head{padding:16px 20px;background:#F9FBFE}.prog-modal-body{gap:16px;background:#F3F6FA}
.prog-tabs button{border-radius:9px}.prog-codebox{border-radius:13px;background:#071126}.prog-preview{min-height:430px}

/* Administração */
.prog-admin{grid-template-columns:278px minmax(0,1fr);gap:22px}
.prog-admin-side{top:18px;min-height:690px;padding:17px;border:1px solid rgba(255,255,255,.12);border-radius:20px;background:linear-gradient(165deg,#071739,#0D2C6C);box-shadow:0 24px 55px rgba(7,23,57,.2)}
.prog-admin-brand{margin-bottom:10px;padding:10px 8px 20px;border-bottom:1px solid rgba(255,255,255,.12)}.prog-admin-brand>span{width:44px;height:44px;background:var(--prog-gold);box-shadow:0 8px 20px rgba(0,0,0,.18)}.prog-admin-brand strong{font-size:.95rem}.prog-admin-brand small{margin-top:3px;font-size:.68rem;text-transform:uppercase;letter-spacing:.06em}
.prog-admin-side nav{display:grid;gap:2px}.prog-admin-side nav a{position:relative;padding:11px 12px;font-size:.82rem;font-weight:750}.prog-admin-side nav a.ativo{background:rgba(255,255,255,.13);box-shadow:inset 3px 0 var(--prog-gold)}
.prog-admin>section{min-width:0}
.prog-admin>section>.prog-section-head{min-height:100px;margin-bottom:18px;padding:22px 24px;border:1px solid var(--prog-line);border-radius:18px;background:linear-gradient(135deg,#fff,#F5F8FC);box-shadow:0 12px 34px rgba(7,23,57,.07)}
.prog-admin>section>.prog-section-head h1{font-size:clamp(2rem,3.4vw,3.1rem)}
.prog-kpis{gap:14px}.prog-kpi{position:relative;overflow:hidden;min-height:112px;padding:19px;border-radius:16px;box-shadow:0 10px 28px rgba(7,23,57,.065)}.prog-kpi::after{content:"";position:absolute;right:-16px;top:-16px;width:55px;height:55px;border-radius:50%;background:#EDF4FF}.prog-kpi span{color:var(--prog-muted);font-size:.72rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.prog-kpi strong{position:relative;z-index:1;font-size:2.1rem}
.prog-choice-four{gap:14px}.prog-choice-four a{min-height:220px;padding:22px}.prog-choice-four h2{font-size:1.05rem}
.prog-table-wrap{border:1px solid var(--prog-line);border-radius:13px}.prog-table{background:#fff}.prog-table th{padding:13px 14px;background:#F1F5FA;color:#48566D}.prog-table td{padding:13px 14px}.prog-table tbody tr{transition:background .16s ease}.prog-table tbody tr:hover{background:#F7FAFE}.prog-table tbody tr:last-child td{border-bottom:0}
.prog-form-grid{gap:16px}.prog-file-row{border-radius:14px;background:#F8FAFD}.prog-related-list>a{background:#FAFCFF}.prog-question-picker>label{background:#FAFCFF}.prog-question-picker>label:has(input:checked){border-color:#8BB2E8;background:#EDF5FF;box-shadow:inset 4px 0 var(--prog-blue)}
.prog-stage-control{border-top:0;overflow:hidden}.prog-stage-control::before{content:"";display:block;height:5px;margin:-24px -24px 20px;background:linear-gradient(90deg,var(--prog-gold),#F0CE79)}.prog-stage-control-row{background:#FAFCFF}.prog-stage-control-index{background:linear-gradient(145deg,var(--prog-navy),var(--prog-blue))}
.prog-alert{border:1px solid currentColor;border-radius:12px;box-shadow:0 8px 22px rgba(7,23,57,.05)}

/* Administração: cabeçalhos, estados e editores */
.prog-admin-heading{align-items:center!important}.prog-admin-heading-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px}.prog-admin-heading-mark{display:grid;place-items:center;flex:0 0 auto;width:58px;height:58px;border-radius:17px;background:linear-gradient(145deg,var(--prog-navy),var(--prog-blue));color:var(--prog-gold);font-size:1.35rem;font-weight:950;box-shadow:0 10px 25px rgba(7,23,57,.16)}
.prog-kpi small{display:block;margin-top:7px;color:var(--prog-muted);font-size:.72rem}.prog-origin,.prog-type-badge,.prog-status{display:inline-flex;align-items:center;width:max-content;max-width:220px;padding:5px 9px;border-radius:999px;font-size:.69rem;font-weight:850;line-height:1.15}.prog-origin{background:#EEF3F9;color:#4E5D73}.prog-type-badge{background:#E9F2FF;color:var(--prog-blue-2)}.prog-status{background:#EEF2F7;color:#566379}.prog-status.status-publicado,.prog-status.publicado,.prog-status.status-liberada,.prog-status.liberada,.prog-status.status-novo,.prog-status.novo{background:#E5F6ED;color:#16704A}.prog-status.status-rascunho,.prog-status.rascunho,.prog-status.status-bloqueada,.prog-status.bloqueada,.prog-status.status-pendente,.prog-status.pendente{background:#FFF4D9;color:#8A6110}.prog-status.status-arquivado,.prog-status.arquivado,.prog-status.status-oculta,.prog-status.oculta,.prog-status.status-invalido,.prog-status.invalido,.prog-status.status-conflito,.prog-status.conflito{background:#FDEAE8;color:#A53C34}.prog-status.status-existente,.prog-status.existente{background:#E9F2FF;color:#195DAE}
.prog-editor-title{display:flex;align-items:flex-start;gap:13px;margin-bottom:18px}.prog-editor-title h2{margin:0;font-size:1.18rem}.prog-editor-title p{margin:4px 0 0;color:var(--prog-muted);font-size:.87rem}.prog-section-index{display:grid;place-items:center;flex:0 0 auto;width:38px;height:38px;border-radius:11px;background:var(--prog-navy);color:#fff;font-size:.7rem;font-weight:950;letter-spacing:.05em}.prog-code-editor{min-height:320px!important;padding:17px!important;background:#071126!important;color:#DCEAFF!important;border-color:#21365F!important;font:500 .84rem/1.65 ui-monospace,SFMono-Regular,Consolas,monospace!important;tab-size:2}.prog-code-file-editor{border-left:4px solid var(--prog-blue)}.prog-stage-editor,.prog-session-editor,.prog-session-new{border-left:4px solid #D4E0EF}.prog-session-editor{background:#FAFCFF}.prog-session-new{border-style:dashed;border-left-style:solid;background:#F4F8FD}.prog-inline-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.prog-editor-actions{align-items:center;margin-top:14px}.prog-editor-tip{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px;padding:13px 15px;border:1px solid #C8DDF8;border-radius:12px;background:#F1F7FF;color:#315B91}.prog-editor-tip>span{display:grid;place-items:center;flex:0 0 auto;width:24px;height:24px;border-radius:50%;background:var(--prog-blue);color:#fff;font-weight:900}.prog-editor-tip p{margin:3px 0}.prog-editor-tip>code{margin-left:auto;padding:7px 9px;border-radius:8px;background:#fff;color:var(--prog-navy)}.prog-question-editor,.prog-alternatives-editor{border-top:4px solid var(--prog-blue)}

/* Trilhas */
.prog-trail-index{display:grid;gap:8px}.prog-trail-index .prog-stage-link{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;margin:0;border:1px solid var(--prog-line);background:#FAFCFF}.prog-trail-index .prog-stage-link:hover{border-color:#A9C3E5;background:#F1F6FD}.prog-trail-editor{border-top:5px solid var(--prog-gold)}.prog-trail-project{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;align-items:start;padding:14px;border:1px solid var(--prog-line);border-radius:13px;background:#FAFCFF}.prog-trail-project:has(input[type="checkbox"]:checked){border-color:#8BB2E8;background:#EDF5FF;box-shadow:inset 4px 0 var(--prog-blue)}.prog-trail-order{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:#E7EEF7;color:var(--prog-navy-2);font-size:.72rem;font-weight:950}

/* Atividades, resultados e importadores */
.prog-activity-editor{border-top:4px solid #D7E2F0}.prog-activity-editor:first-of-type{border-top-color:var(--prog-blue)}.prog-access-code-preview{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:2px 0 18px;padding:14px 17px;border:1px solid #D7C07A;border-radius:13px;background:var(--prog-gold-soft)}.prog-access-code-preview span{font-size:.7rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#705817}.prog-access-code-preview strong{font:900 1.6rem/1 ui-monospace,monospace;letter-spacing:.12em;color:var(--prog-navy)}.prog-output-actions{padding-top:16px;border-top:1px solid var(--prog-line)}.prog-result-count{padding:9px 12px;border:1px solid var(--prog-line);border-radius:11px;background:#fff;color:var(--prog-muted);font-size:.75rem}.prog-result-count strong{display:block;color:var(--prog-navy);font-size:1.15rem}.prog-result-detail{border-top:5px solid var(--prog-blue)}.prog-result-detail .prog-section-head{align-items:center}.prog-result-detail h2{margin-top:10px}.prog-review{display:grid;grid-template-columns:34px minmax(0,1fr);gap:11px;border-left-width:0}.prog-review-number{display:grid;place-items:center;width:31px;height:31px;border-radius:9px;background:rgba(7,23,57,.09);color:var(--prog-navy);font-size:.72rem;font-weight:950}.prog-review p{margin:6px 0}.prog-results-filter{margin-bottom:16px}.prog-table-score{white-space:nowrap;font-weight:850;color:var(--prog-navy-2)}.prog-import-panel{border-top:5px solid var(--prog-blue)}.prog-import-button{margin-top:12px}.prog-import-example{overflow:hidden}.prog-import-example summary{cursor:pointer;color:var(--prog-blue-2)}.prog-import-example pre{max-height:470px;overflow:auto;background:#071126;color:#DCEAFF}.prog-import-total,.prog-install-count{display:grid;place-items:center;min-width:78px;padding:11px;border-radius:12px;background:var(--prog-navy);color:#fff;font-size:.8rem;text-align:center}.prog-import-analysis{border-top:5px solid var(--prog-gold)}

/* Instalação e manutenção */
.prog-installer-hero,.prog-maintenance-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:22px;margin-bottom:18px;padding:30px;border-radius:22px;overflow:hidden}.prog-installer-hero{background:linear-gradient(140deg,#071739,#0D2C6C);color:#fff;box-shadow:0 22px 50px rgba(7,23,57,.2)}.prog-installer-hero::after{content:"";position:absolute;right:-60px;top:-80px;width:240px;height:240px;border-radius:50%;background:rgba(23,105,224,.3)}.prog-installer-hero .prog-kicker{background:rgba(255,255,255,.11);color:#F2D77F}.prog-installer-hero h1{margin:12px 0 8px;color:#fff;font-size:clamp(2.1rem,5vw,3.5rem)}.prog-installer-hero .prog-lead{color:#D8E6FA}.prog-installer-mark,.prog-maintenance-mark{position:relative;z-index:1;display:grid;place-items:center;width:100px;height:100px;border-radius:25px;font-weight:950}.prog-installer-mark{background:rgba(255,255,255,.1);color:var(--prog-gold);font:950 2rem/1 ui-monospace,monospace}.prog-installer-panel{border-top:5px solid var(--prog-gold)}.prog-install-list{padding:0;list-style:none}.prog-install-list li{display:flex;align-items:center;gap:10px;padding:11px;border:1px solid var(--prog-line);border-radius:11px;background:#FAFCFF}.prog-install-list li span{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#E8F1FF;color:var(--prog-blue-2);font-size:.65rem;font-weight:950}.prog-maintenance-hero{border:1px solid #E6D095;background:linear-gradient(135deg,#FFFDF7,#FFF6D9);box-shadow:0 15px 38px rgba(95,70,15,.09)}.prog-maintenance-hero h1{margin:12px 0 8px;font-size:clamp(2rem,5vw,3.25rem)}.prog-maintenance-mark{background:#FFF0C2;color:#8A6110;font-size:3rem}.prog-maintenance-step{border-top:4px solid #D8E3F0}.prog-danger-zone{border-color:#E6AAA4;background:#FFFDFC}.prog-danger-zone .prog-section-index{background:var(--prog-danger)}.prog-maintenance-actions{margin-top:14px}

/* Modo escuro: fundo azul vivo, superfícies claras e cores mais presentes */
html[data-theme="dark"] .prog-page,html[data-tema="escuro"] .prog-page,body.dark-mode .prog-page,body.modo-escuro .prog-page{
  background:
    radial-gradient(circle at 84% 0,rgba(23,105,224,.65),transparent 31%),
    radial-gradient(circle at 5% 68%,rgba(210,166,66,.16),transparent 25%),
    linear-gradient(155deg,#06142F 0%,#071739 38%,#0D2C6C 100%);
}
html[data-theme="dark"] .prog-page::before,html[data-tema="escuro"] .prog-page::before,body.dark-mode .prog-page::before,body.modo-escuro .prog-page::before{opacity:.25;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px)}
html[data-theme="dark"] .prog-page-heading,html[data-tema="escuro"] .prog-page-heading,body.dark-mode .prog-page-heading,body.modo-escuro .prog-page-heading{color:#fff;border-color:rgba(255,255,255,.18)}
html[data-theme="dark"] .prog-page-heading .prog-lead,html[data-tema="escuro"] .prog-page-heading .prog-lead,body.dark-mode .prog-page-heading .prog-lead,body.modo-escuro .prog-page-heading .prog-lead{color:#D8E5F8}
html[data-theme="dark"] .prog-section>.prog-section-head,html[data-tema="escuro"] .prog-section>.prog-section-head,body.dark-mode .prog-section>.prog-section-head,body.modo-escuro .prog-section>.prog-section-head{color:#fff}
html[data-theme="dark"] .prog-panel .prog-section-head,html[data-tema="escuro"] .prog-panel .prog-section-head,body.dark-mode .prog-panel .prog-section-head,body.modo-escuro .prog-panel .prog-section-head{color:var(--prog-ink)}
html[data-theme="dark"] .prog-admin>section>.prog-section-head,html[data-tema="escuro"] .prog-admin>section>.prog-section-head,body.dark-mode .prog-admin>section>.prog-section-head,body.modo-escuro .prog-admin>section>.prog-section-head{color:var(--prog-ink)}
html[data-theme="dark"] .prog-progress-card,html[data-tema="escuro"] .prog-progress-card,body.dark-mode .prog-progress-card,body.modo-escuro .prog-progress-card{background:#fff;color:var(--prog-ink)}
html[data-theme="dark"] .prog-breadcrumb,html[data-tema="escuro"] .prog-breadcrumb,body.dark-mode .prog-breadcrumb,body.modo-escuro .prog-breadcrumb{background:#F8FBFF;color:var(--prog-muted)}

/* Responsividade */
@media(max-width:1180px){
  .prog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .prog-hero{grid-template-columns:minmax(0,1fr) minmax(300px,.8fr)}
  .prog-admin{grid-template-columns:1fr}
  .prog-admin-side{position:static;min-height:auto}
  .prog-admin-side nav{display:flex;gap:4px;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}.prog-admin-side nav a{flex:0 0 auto}.prog-admin-side nav hr{display:none}
}
@media(max-width:900px){
  .prog-hero{grid-template-columns:1fr;min-height:auto}.prog-hero-window{max-width:650px;transform:none}
  .prog-choice-public{grid-template-columns:1fr}.prog-choice-public a{min-height:210px}
  .prog-project-hero{grid-template-columns:1fr}.prog-project-hero-mark{display:none}.prog-project-hero>.prog-btn{width:max-content}
  .prog-project-layout{grid-template-columns:1fr}.prog-project-side{position:static;max-height:none}
  .prog-progress-card{grid-template-columns:1fr;gap:12px}
  .prog-detail-columns{grid-template-columns:1fr}
  .prog-activity-hero-mark{right:3%;opacity:.4}
}
@media(max-width:760px){
  .prog-page{padding:18px 0 56px}.prog-container{width:min(100% - 24px,1380px)}
  .prog-public-nav{position:static;display:block;padding:10px}.prog-public-nav .marca{width:max-content;margin-bottom:8px}.prog-public-nav .links{display:flex;flex-wrap:nowrap;overflow-x:auto;padding:3px 0 4px;scrollbar-width:thin}.prog-public-nav .links a{flex:0 0 auto}
  .prog-hero{padding:32px 24px;border-radius:22px}.prog-hero h1 br{display:none}.prog-hero-window pre{padding:24px 18px}
  .prog-page-heading{align-items:flex-start;margin-top:24px}.prog-heading-mark,.prog-count{display:none}
  .prog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .prog-toolbar{grid-template-columns:1fr;padding:12px}
  .prog-section-head{align-items:flex-start;flex-direction:column}.prog-section-head>.prog-actions{width:100%}
  .prog-activity-hero{min-height:260px}.prog-activity-hero-mark{display:none}
  .prog-access-form{grid-template-columns:1fr}.prog-access-symbol{width:62px;height:62px;border-radius:18px}.prog-access-controls{grid-template-columns:1fr}
  .prog-code-reference{grid-template-columns:42px minmax(0,1fr)}.prog-code-reference>.prog-btn{grid-column:1/-1;width:100%}
  .prog-admin-brand{margin-bottom:8px}.prog-admin-side nav{margin:0 -5px}.prog-admin>section>.prog-section-head{padding:18px}.prog-admin-heading-actions{width:100%;justify-content:space-between}.prog-admin-heading-mark{width:48px;height:48px;border-radius:14px}.prog-inline-fields{grid-template-columns:1fr}.prog-editor-tip{display:grid;grid-template-columns:auto minmax(0,1fr)}.prog-editor-tip>code{grid-column:1/-1;margin:0}.prog-result-detail .prog-section-head{align-items:flex-start}
  .prog-installer-hero,.prog-maintenance-hero{grid-template-columns:1fr;padding:24px}.prog-installer-mark,.prog-maintenance-mark{position:absolute;right:18px;top:18px;width:60px;height:60px;border-radius:17px;opacity:.35}.prog-installer-hero>div,.prog-maintenance-hero>div{position:relative;z-index:1}
  .prog-form-grid,.prog-clean-list{grid-template-columns:1fr}.prog-field.full{grid-column:auto}
}
@media(max-width:520px){
  .prog-grid{grid-template-columns:1fr}.prog-panel{padding:19px;border-radius:17px}.prog-practice::before,.prog-stage-control::before{margin:-19px -19px 18px}
  .prog-hero{padding:28px 20px}.prog-hero-window{margin-top:4px}.prog-hero-window pre{font-size:.7rem;line-height:1.7}.prog-window-status{font-size:.55rem}
  .prog-page h1{font-size:2.25rem}.prog-page-heading h1{font-size:2.25rem}
  .prog-project-hero{padding:25px 20px}.prog-project-brief{grid-template-columns:1fr}
  .prog-stage-control-actions{padding-left:0}.prog-stage-control-actions .prog-btn{flex:1 1 100%}
  .prog-trail-step{grid-template-columns:42px minmax(0,1fr)}.prog-trail-step>*:last-child{grid-column:1/-1;margin-left:54px}
  .prog-modal-body{padding:12px}.prog-preview{min-height:330px}
  .prog-activity-hero{padding:28px 21px;border-radius:20px}.prog-activity-hero h1{font-size:2.25rem}
  .prog-question{padding:19px}.prog-options label{padding:11px}.prog-editor-title{gap:9px}.prog-trail-index .prog-stage-link{grid-template-columns:minmax(0,1fr) auto}.prog-trail-index .prog-stage-link .prog-status{grid-column:1/-1}.prog-trail-project{grid-template-columns:1fr}.prog-access-code-preview{align-items:flex-start;flex-direction:column}.prog-output-actions .prog-btn{width:100%}
}
@media(prefers-reduced-motion:reduce){.prog-btn,.prog-code-card,.prog-choice a,.prog-check,.prog-progress span{transition:none}.prog-btn:hover,.prog-code-card:hover,.prog-choice a:hover{transform:none}}

/* V14 · central de publicação e relatórios */
.prog-admin-nav-label{display:block;margin:13px 11px 4px;color:#91A8CE;font-size:.61rem;font-weight:950;letter-spacing:.12em;text-transform:uppercase}.prog-admin-nav-label:first-child{margin-top:3px}.prog-status-tabs{display:flex;gap:7px;margin:0 0 14px;padding:6px;overflow-x:auto;border:1px solid var(--prog-line);border-radius:14px;background:#fff;box-shadow:0 8px 22px rgba(7,23,57,.05)}.prog-status-tabs a{display:flex;align-items:center;gap:7px;flex:0 0 auto;padding:9px 12px;border-radius:10px;color:var(--prog-muted);font-size:.78rem;font-weight:850;text-decoration:none}.prog-status-tabs a b{display:grid;place-items:center;min-width:23px;height:23px;padding:0 6px;border-radius:999px;background:#EEF2F7;color:#566379;font-size:.68rem}.prog-status-tabs a.ativo{background:var(--prog-navy);color:#fff}.prog-status-tabs a.ativo b{background:var(--prog-gold);color:var(--prog-navy)}.prog-list-search{grid-template-columns:minmax(230px,1fr) auto auto;margin:0 0 14px}.prog-bulk-note{padding:10px 18px;border-top:1px solid var(--prog-line);border-bottom:1px solid var(--prog-line);background:#F7F9FC;color:var(--prog-muted);font-size:.76rem}.prog-select-cell{width:42px;text-align:center!important}.prog-select-cell input{width:17px;height:17px;accent-color:var(--prog-blue)}[data-selection-count]{color:var(--prog-muted);font-weight:750}.prog-publication-queue{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.prog-publication-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:17px;border:1px solid var(--prog-line);border-radius:14px;background:#F9FBFE;color:var(--prog-ink);text-decoration:none;transition:.2s ease}.prog-publication-card:hover{border-color:#9FBCE4;box-shadow:0 10px 25px rgba(7,23,57,.08);transform:translateY(-1px)}.prog-publication-card>span{display:grid;place-items:center;width:39px;height:39px;border-radius:11px;background:#EAF2FF;color:var(--prog-blue);font-weight:950}.prog-publication-card div{display:grid;gap:3px}.prog-publication-card small{color:var(--prog-muted)}.prog-publication-card b{display:grid;place-items:center;min-width:38px;height:38px;padding:0 8px;border-radius:12px;background:#FFF4D9;color:#8A6110;font-size:1.05rem}.prog-flow-strip{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:13px;align-items:center}.prog-flow-strip>div{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;align-items:center;padding:15px;border:1px solid var(--prog-line);border-radius:13px;background:#F9FBFE}.prog-flow-strip span{display:grid;grid-row:1/3;place-items:center;width:35px;height:35px;border-radius:10px;background:var(--prog-navy);color:var(--prog-gold);font-weight:950}.prog-flow-strip small{color:var(--prog-muted)}.prog-flow-strip>i{color:#89A0C3;font-style:normal;font-weight:950}.prog-quick-actions{display:flex;flex-wrap:wrap;gap:9px}.prog-editor-top-actions{flex-wrap:wrap}.prog-editor-top-actions .prog-admin-heading-mark{margin-right:2px}
html[data-ri-theme="dark"] .prog-status-tabs,html[data-ri-theme="dark"] .prog-publication-card{border-color:#30415B;background:#162238;color:#F4F7FD}html[data-ri-theme="dark"] .prog-bulk-note{border-color:#30415B;background:#111C30;color:#B8C5D8}html[data-ri-theme="dark"] .prog-flow-strip>div{border-color:#30415B;background:#162238}
@media(max-width:1100px){.prog-publication-queue{grid-template-columns:1fr}.prog-flow-strip{grid-template-columns:1fr}.prog-flow-strip>i{display:none}.prog-editor-top-actions{justify-content:flex-start}}
@media(max-width:760px){.prog-admin-nav-label{display:none}.prog-list-search{grid-template-columns:1fr}.prog-status-tabs{margin-top:4px}.prog-publication-card{padding:14px}.prog-editor-top-actions .prog-btn{flex:1}.prog-editor-top-actions .prog-admin-heading-mark{display:none}}
}

/* Compatibilidade das funções novas com o desenho original. */
.prog-choice-public{grid-template-columns:repeat(3,minmax(0,1fr))}
.prog-check.is-done{background:#eaf8f0;color:#426554}.prog-check.is-done span{text-decoration:line-through}
.prog-admin-heading-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px}
.prog-admin-heading-mark{display:grid;place-items:center;width:50px;height:50px;border-radius:13px;background:var(--prog-navy);color:var(--prog-gold);font-weight:900}
.prog-editor-title{display:flex;align-items:flex-start;gap:11px;margin-bottom:16px}.prog-editor-title h2{margin:0}.prog-editor-title p{margin:4px 0 0;color:var(--prog-muted)}
.prog-section-index{display:grid;place-items:center;flex:0 0 auto;width:36px;height:36px;border-radius:10px;background:var(--prog-navy);color:#fff;font-size:.7rem;font-weight:900}
.prog-inline-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.prog-editor-actions{margin-top:12px}
.prog-code-editor{min-height:300px;background:#0f172a;color:#dbeafe;font:13px/1.55 ui-monospace,Consolas,monospace}
.prog-status,.prog-origin,.prog-type-badge{display:inline-flex;padding:5px 8px;border-radius:999px;background:#eef2f7;color:#526078;font-size:.7rem;font-weight:850}
.prog-status.status-publicado,.prog-status.status-liberada,.prog-status.status-novo{background:#e5f6ec;color:var(--prog-success)}
.prog-status.status-rascunho,.prog-status.status-bloqueada,.prog-status.status-pendente{background:#fff4df;color:#8a6511}
.prog-status.status-arquivado,.prog-status.status-oculta,.prog-status.status-invalido,.prog-status.status-conflito{background:#fff0ee;color:var(--prog-danger)}
.prog-trail-project{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px}.prog-trail-order{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#eaf1ff;color:var(--prog-navy);font-weight:900}
.prog-result-count{padding:9px 12px;border:1px solid var(--prog-line);border-radius:10px;background:#fff;color:var(--prog-muted)}.prog-result-count strong{display:block;color:var(--prog-navy)}
.prog-access-code-preview{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;border:1px solid #ead18c;border-radius:12px;background:#fff9e9}.prog-access-code-preview strong{font:900 1.5rem monospace;letter-spacing:.1em}
.prog-import-total,.prog-install-count{display:grid;place-items:center;min-width:76px;padding:10px;border-radius:11px;background:var(--prog-navy);color:#fff}

@media(max-width:900px){.prog-choice-public{grid-template-columns:1fr}.prog-mode-overview{grid-template-columns:1fr}.prog-activity-hero{align-items:flex-start;flex-direction:column}.prog-project-brief{grid-template-columns:1fr}}
@media(max-width:760px){.prog-choice-four,.prog-check-options,.prog-inline-fields{grid-template-columns:1fr}.prog-toolbar-compact{grid-template-columns:1fr}.prog-related-list>a{flex-direction:column;gap:4px}.prog-activity-card .prog-btn{width:100%}.prog-admin-heading-actions{width:100%;justify-content:space-between}}
@media(prefers-reduced-motion:reduce){.prog-float-code{animation:none}.prog-code-card,.prog-choice a{transition:none}}

/* ==================================================================
   ACERVO V5 — VITRINE, FUNÇÕES VISUAIS, FILTROS E PAGINAÇÃO
   ================================================================== */
.prog-acervo-hero{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(320px,.8fr);
  gap:36px;
  align-items:center;
  min-height:340px;
  padding:clamp(32px,5vw,58px);
  overflow:hidden;
  border-radius:26px;
  color:#fff;
  background:
    radial-gradient(circle at 88% 15%,rgba(210,166,66,.20),transparent 23%),
    linear-gradient(135deg,#071739 0%,#0D2C6C 56%,#2259AE 100%);
  box-shadow:0 22px 55px rgba(7,23,57,.18);
}
.prog-acervo-hero::before{content:"";position:absolute;left:0;top:0;width:160px;height:5px;background:var(--prog-gold)}
.prog-acervo-hero-copy{position:relative;z-index:2}.prog-acervo-hero .prog-kicker{border-color:rgba(255,255,255,.22);background:rgba(255,255,255,.1);color:#fff}
.prog-acervo-hero h1{margin:.24em 0 .18em;color:#fff;font-size:clamp(2.5rem,5vw,4.9rem);letter-spacing:-.055em}
.prog-acervo-hero p{max-width:610px;margin:0;color:#DCE8FB;font-size:clamp(1rem,1.5vw,1.14rem);line-height:1.65}
.prog-acervo-total{display:flex;align-items:center;gap:10px;width:max-content;margin-top:24px;padding:9px 13px;border:1px solid rgba(255,255,255,.16);border-radius:12px;background:rgba(255,255,255,.08)}
.prog-acervo-total strong{color:#F4CA65;font-size:1.45rem;line-height:1}.prog-acervo-total span{color:#E6EEFB;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.prog-acervo-code{position:relative;z-index:2;overflow:hidden;border:1px solid rgba(255,255,255,.22);border-radius:19px;background:#071226;box-shadow:0 30px 60px rgba(0,0,0,.3);transform:rotate(1deg)}
.prog-acervo-code pre{min-height:190px;margin:0;padding:27px 25px;color:#DDE9FA;font:700 clamp(.78rem,1.25vw,.96rem)/1.85 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre-wrap}
.prog-acervo-code-flow{display:flex;gap:7px;overflow:hidden;padding:11px 14px;border-top:1px solid rgba(255,255,255,.1);background:#0B1A34}
.prog-acervo-code-flow span{flex:0 0 auto;padding:5px 8px;border:1px solid rgba(255,255,255,.12);border-radius:7px;color:#AFC6E8;font:700 .62rem ui-monospace,monospace;animation:progAcervoFlow 9s ease-in-out infinite}
.prog-acervo-code-flow span:nth-child(2){animation-delay:-3s}.prog-acervo-code-flow span:nth-child(3){animation-delay:-6s}
@keyframes progAcervoFlow{50%{transform:translateX(12px);color:#F2CB68}}

.prog-acervo-recentes{padding-bottom:7px}.prog-acervo-catalogo{padding-top:30px;border-top:1px solid var(--prog-line)}
.prog-results-label{padding:8px 11px;border-radius:10px;background:#EAF2FF;color:var(--prog-navy-2);font-size:.76rem}
.prog-acervo-toolbar{grid-template-columns:minmax(220px,2fr) repeat(3,minmax(145px,1fr)) auto auto;margin-bottom:24px}
.prog-acervo-grid{margin-top:0}

.prog-code-card{--func-color:#60779F;--func-soft:#EFF3F8;--func-glow:rgba(96,119,159,.15);border-top:4px solid var(--func-color)}
.prog-code-card.funcao-estrutura{--func-color:#60779F;--func-soft:#EFF3F8;--func-glow:rgba(96,119,159,.15)}
.prog-code-card.funcao-layout{--func-color:#278EAD;--func-soft:#EAF7FA;--func-glow:rgba(39,142,173,.15)}
.prog-code-card.funcao-navegacao{--func-color:#2868D8;--func-soft:#EDF3FF;--func-glow:rgba(40,104,216,.15)}
.prog-code-card.funcao-interface{--func-color:#5864CF;--func-soft:#F0F1FF;--func-glow:rgba(88,100,207,.15)}
.prog-code-card.funcao-formularios{--func-color:#15947E;--func-soft:#EAF8F5;--func-glow:rgba(21,148,126,.15)}
.prog-code-card.funcao-estilo_visual{--func-color:#CC6F62;--func-soft:#FCEFED;--func-glow:rgba(204,111,98,.15)}
.prog-code-card.funcao-animacoes{--func-color:#C99716;--func-soft:#FFF8E3;--func-glow:rgba(201,151,22,.16)}
.prog-code-card.funcao-interacao_javascript{--func-color:#D47B32;--func-soft:#FFF2E8;--func-glow:rgba(212,123,50,.15)}
.prog-code-card.funcao-backend_php{--func-color:#755AB7;--func-soft:#F2EEFB;--func-glow:rgba(117,90,183,.15)}
.prog-code-card.funcao-banco_dados{--func-color:#347C72;--func-soft:#EDF7F5;--func-glow:rgba(52,124,114,.15)}
.prog-code-card.funcao-outros{--func-color:#70809A;--func-soft:#F0F3F7;--func-glow:rgba(112,128,154,.14)}
.prog-public .prog-code-card::before{background:radial-gradient(240px circle at var(--pointer-x) var(--pointer-y),var(--func-glow),transparent 66%)}
.prog-public .prog-code-card:hover{border-color:var(--func-color);border-top-color:var(--func-color);box-shadow:0 22px 46px var(--func-glow)}
.prog-public .prog-code-card .visual{
  position:relative;
  height:116px;
  display:grid;
  grid-template-columns:48px minmax(0,1fr) auto;
  align-items:center;
  justify-content:stretch;
  gap:12px;
  padding:20px;
  background:linear-gradient(145deg,var(--func-soft),#fff);
  color:var(--func-color);
}
.prog-code-symbol{display:grid;place-items:center;width:46px;height:46px;border-radius:13px;background:#fff;box-shadow:0 8px 20px var(--func-glow);font-size:1.35rem}
.prog-public .prog-code-card .visual>small{font-size:.64rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.prog-code-difficulty{justify-self:end;align-self:start;padding:4px 8px;border:1px solid rgba(112,128,154,.25);border-radius:999px;background:rgba(255,255,255,.8);color:var(--func-color);font-size:.64rem;font-weight:850}
.prog-public .prog-code-card .prog-tag{border-color:#D8E1EC;background:#F5F7FA;color:#536178}
.prog-public .prog-code-card .foot .prog-btn.primary{background:var(--prog-navy-2)}

.prog-pagination{display:flex;align-items:center;justify-content:center;gap:7px;flex-wrap:wrap;margin-top:30px}
.prog-pagination a{display:grid;place-items:center;min-width:42px;min-height:42px;padding:8px 12px;border:1px solid #CFD9E7;border-radius:11px;background:#fff;color:var(--prog-navy-2);text-decoration:none;font-size:.8rem;font-weight:850}
.prog-pagination a:hover{border-color:#8CB4E8;background:#F0F6FF}.prog-pagination a.ativo{border-color:var(--prog-navy-2);background:var(--prog-navy-2);color:#fff}

.prog-details-modal .prog-modal-dialog{width:min(1050px,100%);overflow:auto}
.prog-details-heading{display:flex;align-items:center;gap:12px}.prog-details-heading small{display:block;margin-bottom:3px;color:var(--prog-muted);font-size:.62rem;font-weight:900;letter-spacing:.1em}.prog-details-heading h2{margin:0}
.prog-details-symbol{display:grid;place-items:center;width:46px;height:46px;border-radius:12px;background:#EAF2FF;color:var(--prog-blue);font-size:1.2rem}
.prog-details-symbol.funcao-estrutura{background:#EFF3F8;color:#60779F}.prog-details-symbol.funcao-layout{background:#EAF7FA;color:#278EAD}.prog-details-symbol.funcao-navegacao{background:#EDF3FF;color:#2868D8}.prog-details-symbol.funcao-interface{background:#F0F1FF;color:#5864CF}.prog-details-symbol.funcao-formularios{background:#EAF8F5;color:#15947E}.prog-details-symbol.funcao-estilo_visual{background:#FCEFED;color:#CC6F62}.prog-details-symbol.funcao-animacoes{background:#FFF8E3;color:#C99716}.prog-details-symbol.funcao-interacao_javascript{background:#FFF2E8;color:#D47B32}.prog-details-symbol.funcao-backend_php{background:#F2EEFB;color:#755AB7}.prog-details-symbol.funcao-banco_dados{background:#EDF7F5;color:#347C72}.prog-details-symbol.funcao-outros{background:#F0F3F7;color:#70809A}
.prog-details-body{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(330px,.8fr);gap:20px;padding:22px;background:#F5F7FB}
.prog-details-copy,.prog-details-aside{min-width:0}.prog-details-copy{padding:23px;border:1px solid var(--prog-line);border-radius:15px;background:#fff}.prog-details-copy section{padding-top:18px;margin-top:18px;border-top:1px solid var(--prog-line)}.prog-details-copy h3{margin:0 0 7px;font-size:1rem}.prog-details-copy p{margin:0;color:var(--prog-muted);line-height:1.65}.prog-details-intro{padding:15px;border-radius:12px;background:#F3F7FE}.prog-details-intro p{margin-top:10px;color:var(--prog-ink);font-weight:650}
.prog-details-aside{display:flex;flex-direction:column;gap:13px}.prog-details-aside .prog-preview{min-height:300px;background:#fff}.prog-details-facts{padding:16px;border:1px solid var(--prog-line);border-radius:13px;background:#fff}.prog-details-facts>strong{display:block;margin:0 0 9px}.prog-details-facts>strong:not(:first-child){margin-top:15px}.prog-details-facts ul{list-style:none;margin:0;padding:0}.prog-details-facts li{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-top:1px solid #EDF0F5}.prog-details-facts li small{color:var(--prog-muted);text-transform:uppercase}
.prog-details-actions{display:flex;justify-content:flex-end;gap:9px;padding:15px 20px;border-top:1px solid var(--prog-line);background:#fff}

@media(max-width:1100px){.prog-acervo-toolbar{grid-template-columns:minmax(220px,2fr) repeat(2,minmax(150px,1fr))}.prog-acervo-toolbar .prog-btn{width:100%}}
@media(max-width:900px){.prog-acervo-hero{grid-template-columns:1fr}.prog-acervo-code{max-width:650px;transform:none}.prog-details-body{grid-template-columns:1fr}.prog-details-aside .prog-preview{min-height:360px}}
@media(max-width:760px){.prog-acervo-toolbar{grid-template-columns:1fr}.prog-acervo-hero{min-height:auto;padding:32px 24px}.prog-details-modal{padding:0}.prog-details-modal .prog-modal-dialog{min-height:100%;max-height:100%;border-radius:0}.prog-details-actions{position:sticky;bottom:0;flex-direction:column}.prog-details-actions .prog-btn{width:100%}}
@media(max-width:520px){.prog-public .prog-code-card .visual{grid-template-columns:44px minmax(0,1fr);padding:17px}.prog-code-difficulty{position:absolute;right:14px;top:12px}.prog-details-body{padding:12px}.prog-details-copy{padding:18px}}
@media(prefers-reduced-motion:reduce){.prog-acervo-code-flow span{animation:none}}

/* Navegação própria do módulo Programação no cabeçalho principal */
.ri-site-header .ri-programacao-menu{align-items:center;gap:2px}
.ri-site-header .ri-programacao-menu .nav-link{white-space:nowrap}
.ri-site-header .ri-programacao-menu .ri-programacao-inicio.active,
.ri-site-header .ri-programacao-menu .ri-programacao-acervo.active{border-color:#8DB5EC;background:#E9F2FF;color:#174F9F}
.ri-site-header .ri-programacao-menu .ri-programacao-projetos.active{border-color:#D2C2EC;background:#F1EBFA;color:#6745A8}
.ri-site-header .ri-programacao-menu .ri-programacao-praticar.active{border-color:#ADDED2;background:#E5F5F0;color:#087765}
.ri-site-header .ri-programacao-menu .ri-programacao-codepen{
  margin-left:5px;
  border-color:#D7A817;
  background:linear-gradient(135deg,#FFD35B,#F4BD2F);
  color:#15213A;
  box-shadow:0 8px 18px rgba(197,145,13,.18);
}
.ri-site-header .ri-programacao-menu .ri-programacao-codepen:hover,
.ri-site-header .ri-programacao-menu .ri-programacao-codepen:focus{
  border-color:#C99308;
  background:linear-gradient(135deg,#FFDA70,#F8C43C);
  color:#101A30;
}
html[data-ri-theme="dark"] .ri-site-header .ri-programacao-menu .nav-link:not(.ri-programacao-codepen){color:#CBD8EB}
html[data-ri-theme="dark"] .ri-site-header .ri-programacao-menu .nav-link:not(.ri-programacao-codepen):hover,
html[data-ri-theme="dark"] .ri-site-header .ri-programacao-menu .nav-link:not(.ri-programacao-codepen):focus{border-color:#4B6388;background:#1A3155;color:#F4F7FF}
html[data-ri-theme="dark"] .ri-site-header .ri-programacao-menu .ri-programacao-inicio.active,
html[data-ri-theme="dark"] .ri-site-header .ri-programacao-menu .ri-programacao-acervo.active{border-color:#467EC7;background:#173B72;color:#DCEBFF}
html[data-ri-theme="dark"] .ri-site-header .ri-programacao-menu .ri-programacao-projetos.active{border-color:#795FB0;background:#332657;color:#E7DBFF}
html[data-ri-theme="dark"] .ri-site-header .ri-programacao-menu .ri-programacao-praticar.active{border-color:#2E8C78;background:#143F36;color:#C8F2E5}
html[data-ri-theme="dark"] .ri-site-header .ri-programacao-menu .ri-programacao-codepen{border-color:#DBAA17;background:linear-gradient(135deg,#FFD45F,#F2B92D);color:#101A30;box-shadow:0 8px 22px rgba(0,0,0,.26)}
@media(max-width:1199.98px){
  .ri-site-header .ri-programacao-menu{align-items:stretch;margin-top:10px}
  .ri-site-header .ri-programacao-menu .ri-programacao-codepen{margin:5px 0 0}
}

/* Modo escuro real do módulo — acompanha o seletor do cabeçalho unificado. */
html[data-ri-theme="dark"] .prog-page{
  --prog-ink:#E8EEF9;
  --prog-muted:#AAB8CC;
  --prog-line:#30415B;
  --prog-white:#152238;
  --prog-bg:#091426;
  background:
    radial-gradient(circle at 88% 0,rgba(41,103,191,.22),transparent 28%),
    linear-gradient(155deg,#081225,#0B1C34 70%,#102A4B);
  color:var(--prog-ink);
}
html[data-ri-theme="dark"] .prog-page::before{opacity:.18;background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px)}
html[data-ri-theme="dark"] .prog-panel,
html[data-ri-theme="dark"] .prog-code-card,
html[data-ri-theme="dark"] .prog-choice a,
html[data-ri-theme="dark"] .prog-activity-card,
html[data-ri-theme="dark"] .prog-mode-overview article,
html[data-ri-theme="dark"] .prog-project-brief>div,
html[data-ri-theme="dark"] .prog-progress-card,
html[data-ri-theme="dark"] .prog-kpi,
html[data-ri-theme="dark"] .prog-trail-step,
html[data-ri-theme="dark"] .prog-modal-dialog,
html[data-ri-theme="dark"] .prog-modal-head,
html[data-ri-theme="dark"] .prog-details-copy{
  border-color:#30415B;
  background:#142239;
  color:#E8EEF9;
  box-shadow:0 15px 38px rgba(0,0,0,.22);
}
html[data-ri-theme="dark"] .prog-page-heading,
html[data-ri-theme="dark"] .prog-section>.prog-section-head,
html[data-ri-theme="dark"] .prog-admin>section>.prog-section-head{color:#F4F7FD;border-color:#30415B}
html[data-ri-theme="dark"] .prog-panel .prog-section-head{color:#E8EEF9}
html[data-ri-theme="dark"] .prog-lead,
html[data-ri-theme="dark"] .prog-code-card p,
html[data-ri-theme="dark"] .prog-field small,
html[data-ri-theme="dark"] .prog-empty,
html[data-ri-theme="dark"] .prog-question-picker small,
html[data-ri-theme="dark"] .prog-related-list small{color:#AAB8CC}
html[data-ri-theme="dark"] .prog-input,
html[data-ri-theme="dark"] .prog-select,
html[data-ri-theme="dark"] .prog-textarea{
  border-color:#3B4E69;
  background:#0F1C30;
  color:#EEF3FC;
}
html[data-ri-theme="dark"] .prog-input::placeholder,
html[data-ri-theme="dark"] .prog-textarea::placeholder{color:#7F90A8}
html[data-ri-theme="dark"] .prog-btn:not(.primary):not(.gold):not(.danger){border-color:#405572;background:#182A44;color:#E4ECF8}
html[data-ri-theme="dark"] .prog-btn:not(.primary):not(.gold):not(.danger):hover{border-color:#6E94C8;background:#203654;color:#FFF}
html[data-ri-theme="dark"] .prog-btn.primary{border-color:#2A6ED0;background:#1B56AD;color:#FFF}
html[data-ri-theme="dark"] .prog-btn.primary:hover{background:#2366C7}
html[data-ri-theme="dark"] .prog-btn.danger{border-color:#83474C;background:#3B2028;color:#FFCFD2}
html[data-ri-theme="dark"] .prog-progress,
html[data-ri-theme="dark"] .prog-runner-progress{background:#263750}
html[data-ri-theme="dark"] .prog-code-card .visual{background:linear-gradient(145deg,#172841,#111F34)}
html[data-ri-theme="dark"] .prog-code-symbol{background:#223551;box-shadow:0 8px 22px rgba(0,0,0,.24)}
html[data-ri-theme="dark"] .prog-code-difficulty{border-color:#415876;background:rgba(14,27,46,.82);color:inherit}
html[data-ri-theme="dark"] .prog-public .prog-code-card .prog-tag,
html[data-ri-theme="dark"] .prog-tag{border-color:#3A4E69;background:#1B2D48;color:#C9D7EA}
html[data-ri-theme="dark"] .prog-code-card .foot{border-color:#30415B}
html[data-ri-theme="dark"] .prog-acervo-catalogo{border-color:#30415B}
html[data-ri-theme="dark"] .prog-results-label{background:#19365D;color:#CFE1FF}
html[data-ri-theme="dark"] .prog-pagination a{border-color:#3C506D;background:#14243B;color:#DDE7F5}
html[data-ri-theme="dark"] .prog-pagination a:hover{border-color:#608AC2;background:#1B3353}
html[data-ri-theme="dark"] .prog-pagination a.ativo{border-color:#3977CE;background:#245CA9;color:#FFF}
html[data-ri-theme="dark"] .prog-file-row,
html[data-ri-theme="dark"] .prog-stage-control-row,
html[data-ri-theme="dark"] .prog-question-picker>label,
html[data-ri-theme="dark"] .prog-related-list>a,
html[data-ri-theme="dark"] .prog-check,
html[data-ri-theme="dark"] .prog-test-person,
html[data-ri-theme="dark"] .prog-start-summary div,
html[data-ri-theme="dark"] .prog-inline-code-status,
html[data-ri-theme="dark"] .prog-inline-no-preview{
  border-color:#344862;
  background:#101D31;
  color:#DDE6F4;
}
html[data-ri-theme="dark"] .prog-options label{border-color:#3A4D67;background:#111F34;color:#E3EBF7}
html[data-ri-theme="dark"] .prog-options label:hover{border-color:#579D8C;background:#17332F}
html[data-ri-theme="dark"] .prog-options label:has(input:checked){border-color:#4EAE98;background:#173D35}
html[data-ri-theme="dark"] .prog-question-map button{border-color:#3A4E69;background:#132239;color:#DDE7F4}
html[data-ri-theme="dark"] .prog-question-map button.is-answered:not(.is-current){border-color:#3F9276;background:#163B31;color:#A9DFC9}
html[data-ri-theme="dark"] .prog-details-body{background:#0D192B}
html[data-ri-theme="dark"] .prog-details-intro{background:#172B47}
html[data-ri-theme="dark"] .prog-details-intro p{color:#E4ECF8}
html[data-ri-theme="dark"] .prog-tabs button{border-color:#3C506B;background:#14243A;color:#DDE7F5}
html[data-ri-theme="dark"] .prog-tabs button.ativo{border-color:#477FC8;background:#245A9F;color:#FFF}
html[data-ri-theme="dark"] .prog-breadcrumb{color:#AAB8CC}
html[data-ri-theme="dark"] .prog-table th{color:#AFC0D7}
html[data-ri-theme="dark"] .prog-table th,
html[data-ri-theme="dark"] .prog-table td{border-color:#30415B}
html[data-ri-theme="dark"] .prog-review{background:#101D31}
html[data-ri-theme="dark"] .prog-review.correta{background:#14392E;color:#C3EBD9}
html[data-ri-theme="dark"] .prog-review.incorreta{background:#3C2027;color:#FFD2D5}
html[data-ri-theme="dark"] .prog-review.pendente{background:#3B311B;color:#F4D994}

/* ==================================================================
   PROJETOS GUIADOS E PRATICAR V6
   ================================================================== */
.prog-projects-hero-v6,.prog-practice-hero-v6{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(390px,.9fr);align-items:center;gap:42px;min-height:390px;padding:clamp(35px,5vw,64px);overflow:hidden;border-radius:28px;color:#fff;box-shadow:0 24px 58px rgba(7,23,57,.2)}
.prog-projects-hero-v6{background:radial-gradient(circle at 86% 12%,rgba(255,211,91,.18),transparent 25%),linear-gradient(135deg,#261653 0%,#563A91 55%,#7455BD 100%)}
.prog-projects-hero-v6::before,.prog-practice-hero-v6::before{content:"";position:absolute;left:0;top:0;width:180px;height:5px;background:var(--prog-gold)}
.prog-projects-hero-v6>div:first-child,.prog-practice-hero-v6>div:first-child{position:relative;z-index:2}.prog-projects-hero-v6 .prog-kicker,.prog-practice-hero-v6 .prog-kicker{border-color:rgba(255,255,255,.2);background:rgba(255,255,255,.1);color:#fff}
.prog-projects-hero-v6 h1,.prog-practice-hero-v6 h1{margin:.25em 0 .2em;color:#fff;font-size:clamp(2.7rem,5vw,5.15rem);letter-spacing:-.06em;line-height:.92}.prog-projects-hero-v6 h1 em,.prog-practice-hero-v6 h1 em{color:#F5D472;font-style:normal}.prog-projects-hero-v6 p,.prog-practice-hero-v6 p{max-width:610px;margin:0 0 25px;color:#EEE9FA;font-size:1.05rem;line-height:1.65}
.prog-project-route-art{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,1fr);align-items:center;min-height:220px;padding:30px 22px;border:1px solid rgba(255,255,255,.17);border-radius:24px;background:rgba(17,8,43,.25);backdrop-filter:blur(6px)}
.prog-project-route-art::before{content:"";position:absolute;left:12%;right:12%;top:50%;height:3px;border-radius:999px;background:rgba(255,255,255,.18)}.prog-project-route-art>b{position:absolute;left:12%;top:calc(50% - 2px);width:25%;height:3px;border-radius:999px;background:#F3CB61;box-shadow:0 0 18px rgba(243,203,97,.65);animation:progRoute 6s ease-in-out infinite}
.prog-project-route-art span{position:relative;z-index:2;display:grid;place-items:center;gap:9px}.prog-project-route-art i{display:grid;place-items:center;width:55px;height:55px;border:1px solid rgba(255,255,255,.25);border-radius:16px;background:#4B327F;color:#E5DAF8;font-size:1.2rem}.prog-project-route-art span.is-active i{background:#F5CC63;color:#241A3E;box-shadow:0 8px 25px rgba(0,0,0,.22)}.prog-project-route-art small{font-size:.6rem;font-weight:950;letter-spacing:.09em;color:#E7DEF7}
@keyframes progRoute{0%,100%{width:10%}50%{width:76%}}
.prog-trails-v6{margin-top:38px}.prog-trail-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:14px}.prog-trail-strip article{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:14px;align-items:center;padding:18px;border:1px solid #DED6EF;border-radius:17px;background:linear-gradient(145deg,#fff,#FAF8FE);box-shadow:0 11px 28px rgba(73,48,126,.07)}.prog-trail-strip article>span{display:grid;place-items:center;width:50px;height:50px;border-radius:14px;background:#EFE8FA;color:#6848A5;font-size:1.2rem}.prog-trail-strip small{color:#7959B3;font-size:.61rem;font-weight:950;letter-spacing:.11em}.prog-trail-strip h3{margin:3px 0 4px;font-size:1rem}.prog-trail-strip p{margin:0;color:var(--prog-muted);font-size:.77rem}.prog-trail-strip article>strong{padding:7px 9px;border-radius:9px;background:#F3EFFA;color:#6848A5;font-size:.69rem}
.prog-project-grid-v6{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}.prog-project-card-v6{--project-accent:#7455BD;--project-soft:#F0EAF9;--pointer-x:50%;--pointer-y:50%;position:relative;isolation:isolate;display:flex;flex-direction:column;min-height:430px;overflow:hidden;border:1px solid #DBD4E8;border-radius:22px;background:#fff;box-shadow:0 16px 38px rgba(49,31,88,.09);transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}.prog-project-card-v6.is-challenge{--project-accent:#B17D13;--project-soft:#FFF5D9}.prog-project-card-v6::before{content:"";position:absolute;inset:0;z-index:-1;opacity:0;background:radial-gradient(260px circle at var(--pointer-x) var(--pointer-y),color-mix(in srgb,var(--project-accent) 13%,transparent),transparent 67%);transition:opacity .25s}.prog-project-card-v6:hover{transform:translateY(-6px);border-color:color-mix(in srgb,var(--project-accent) 48%,#fff);box-shadow:0 24px 54px color-mix(in srgb,var(--project-accent) 15%,transparent)}.prog-project-card-v6:hover::before{opacity:1}.prog-project-card-top{display:flex;align-items:center;justify-content:space-between;padding:22px 22px 0}.prog-project-card-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:15px;background:var(--project-soft);color:var(--project-accent);font-size:1.25rem}.prog-project-card-state{display:flex;align-items:center;gap:6px;padding:6px 9px;border-radius:999px;background:#EAF7F1;color:#187252;font-size:.66rem;font-weight:900}.prog-project-card-state i{width:7px;height:7px;border-radius:50%;background:#25A878}.prog-project-card-copy{padding:22px}.prog-project-card-copy>small{color:var(--project-accent);font-size:.62rem;font-weight:950;letter-spacing:.11em}.prog-project-card-copy h3{margin:7px 0 9px;font-size:1.35rem;line-height:1.2}.prog-project-card-copy p{margin:0;color:var(--prog-muted);font-size:.86rem;line-height:1.55}.prog-project-card-facts{display:flex;flex-wrap:wrap;gap:7px;margin-top:auto;padding:0 22px 26px}.prog-project-card-facts span{display:inline-flex;align-items:center;gap:5px;padding:6px 8px;border:1px solid #E3DEEB;border-radius:9px;background:#FAF9FC;color:#596277;font-size:.69rem;font-weight:800}.prog-project-card-facts i{color:var(--project-accent)}.prog-project-card-wave{position:relative;min-height:98px;padding:35px 22px 18px;background:linear-gradient(135deg,color-mix(in srgb,var(--project-accent) 82%,#111),var(--project-accent));clip-path:ellipse(82% 78% at 50% 100%)}.prog-project-card-wave a{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:20px;color:#fff;text-decoration:none;font-weight:900}.prog-project-card-wave a i{transition:transform .2s}.prog-project-card-wave a:hover i{transform:translateX(5px)}

/* Fluxo interno dos projetos */
.prog-project-flow-v6 [hidden]{display:none!important}.prog-project-welcome{position:relative;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(260px,.55fr);align-items:center;gap:48px;min-height:600px;padding:clamp(40px,7vw,86px);overflow:hidden;border:1px solid #DCD3EC;border-radius:28px;background:radial-gradient(circle at 85% 18%,rgba(116,85,189,.15),transparent 25%),linear-gradient(145deg,#fff,#F7F3FC);box-shadow:0 22px 58px rgba(54,36,91,.1)}.prog-project-back{position:absolute;left:28px;top:25px;display:inline-flex;gap:7px;align-items:center;color:#5D4A87;text-decoration:none;font-size:.78rem;font-weight:850}.prog-project-welcome-copy h1{max-width:850px;margin:.3em 0 .2em;font-size:clamp(3rem,6vw,6.2rem);line-height:.93;letter-spacing:-.065em}.prog-project-welcome-copy>p{max-width:690px;color:var(--prog-muted);font-size:1.05rem;line-height:1.7}.prog-project-welcome-copy .prog-btn{margin-top:25px}.prog-project-welcome-art{display:grid;place-items:center;min-height:330px;border:1px solid #D8CDEA;border-radius:28px;background:linear-gradient(150deg,#321F67,#7555BD);box-shadow:0 24px 45px rgba(65,41,117,.24);color:#fff;transform:rotate(2deg)}.prog-project-welcome-art>span{font:950 5rem/1 var(--prog-font);color:rgba(255,255,255,.15)}.prog-project-welcome-art>i{font-size:4.2rem;color:#F5CD66}.prog-project-welcome-art>small{font-weight:950;letter-spacing:.13em}
.prog-project-intro{position:relative;min-height:600px;padding:clamp(35px,6vw,72px);overflow:hidden;border-radius:28px;background:linear-gradient(140deg,#201244,#4A2F82 58%,#7455BD);color:#fff;box-shadow:0 22px 58px rgba(42,23,80,.2)}.prog-project-intro-progress{height:5px;overflow:hidden;border-radius:999px;background:rgba(255,255,255,.15)}.prog-project-intro-progress span{display:block;width:0;height:100%;background:#F4CE69;transition:width .5s ease}.prog-intro-skip{position:absolute;right:clamp(35px,6vw,72px);top:92px;border-color:rgba(255,255,255,.28)!important;background:rgba(255,255,255,.1)!important;color:#fff!important}.prog-project-intro-slides{display:grid;place-items:center;min-height:420px}.prog-project-intro-slides article{width:min(800px,100%);text-align:center;animation:progIntro .45s ease}.prog-project-intro-slides article>span{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 18px;border:1px solid rgba(255,255,255,.2);border-radius:18px;background:rgba(255,255,255,.1);color:#F4CE69;font-weight:950}.prog-project-intro-slides small{font-size:.68rem;font-weight:950;letter-spacing:.14em;color:#DCCFF2}.prog-project-intro-slides h2{margin:.35em 0 .3em;color:#fff;font-size:clamp(2.2rem,5vw,4.3rem);letter-spacing:-.045em}.prog-project-intro-slides p{max-width:760px;margin:auto;color:#EEE8F7;font-size:clamp(1rem,2vw,1.28rem);line-height:1.75}.prog-project-intro-actions{display:flex;justify-content:center;gap:10px}.prog-project-intro-actions .prog-btn:not(.primary){border-color:rgba(255,255,255,.25);background:rgba(255,255,255,.08);color:#fff}@keyframes progIntro{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.prog-project-lessons>header{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:18px;padding:32px;border:1px solid #DDD5EB;border-radius:22px;background:linear-gradient(135deg,#fff,#F7F3FC)}.prog-project-lessons h1{margin:.18em 0 .1em;font-size:clamp(2.4rem,5vw,4.5rem)}.prog-project-lessons header p{margin:0;color:var(--prog-muted)}.prog-project-overall{display:grid;grid-template-columns:240px minmax(0,1fr);align-items:center;gap:18px;margin-bottom:18px;padding:16px 20px;border:1px solid #DDD5EB;border-radius:15px;background:#fff}.prog-project-overall strong,.prog-project-overall span{display:block}.prog-project-overall span{margin-top:3px;color:var(--prog-muted);font-size:.7rem}.prog-lessons-grid{display:grid;gap:12px}.prog-lesson-card{display:grid;grid-template-columns:72px minmax(0,1fr);gap:18px;align-items:center;min-height:150px;padding:24px;border:1px solid #D9D1E7;border-left:5px solid #7455BD;border-radius:18px;background:#fff;color:var(--prog-ink);text-decoration:none;box-shadow:0 10px 28px rgba(52,34,91,.06);transition:transform .2s,border-color .2s,box-shadow .2s}.prog-lesson-card:not(.is-locked):hover{transform:translateX(5px);border-color:#A890D4;box-shadow:0 15px 35px rgba(74,48,128,.12)}.prog-lesson-number{display:grid;place-items:center;width:62px;height:62px;border-radius:18px;background:#EEE7F8;color:#6747A2;font-weight:950;font-size:1.1rem}.prog-lesson-card small{color:#7455BD;font-size:.61rem;font-weight:950;letter-spacing:.11em}.prog-lesson-card h2{margin:4px 0 6px;font-size:1.25rem}.prog-lesson-card p{margin:0 0 8px;color:var(--prog-muted);font-size:.82rem}.prog-lesson-card strong{color:#6747A2;font-size:.76rem}.prog-lesson-card.is-complete{border-left-color:#20946D}.prog-lesson-card.is-complete .prog-lesson-number{background:#E5F5EE;color:#187252}.prog-lesson-card.is-locked{border-left-color:#C7CDD7;background:#F7F8FA;opacity:.72}.prog-lesson-card.is-locked .prog-lesson-number{background:#E7E9EE;color:#7C8798}.prog-lesson-card.is-locked strong{color:#7A8493}
.prog-workspace-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:13px;padding:11px 14px;border:1px solid #D8D0E6;border-radius:14px;background:#fff}.prog-workspace-head>div{text-align:right}.prog-workspace-head>div>*{display:block}.prog-project-layout-v6{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:20px;align-items:start}.prog-lesson-main{display:grid;gap:18px;min-width:0}.prog-lesson-hero{padding:clamp(30px,5vw,55px);border-radius:23px;background:radial-gradient(circle at 90% 0,rgba(255,211,91,.2),transparent 25%),linear-gradient(135deg,#2E1C61,#7455BD);color:#fff}.prog-lesson-hero .prog-kicker{background:rgba(255,255,255,.1);color:#fff}.prog-lesson-hero h1{margin:.3em 0 .18em;color:#fff;font-size:clamp(2.3rem,5vw,4.3rem)}.prog-lesson-hero p{max-width:750px;margin:0;color:#EEE8F8;line-height:1.65}.prog-lesson-block{padding:clamp(22px,4vw,36px);border:1px solid var(--prog-line);border-radius:20px;background:#fff;box-shadow:0 11px 30px rgba(7,23,57,.06)}.prog-lesson-block-title{display:flex;align-items:center;gap:13px;margin-bottom:15px}.prog-lesson-block-title>span{display:grid;place-items:center;width:46px;height:46px;border-radius:13px;background:#EDE6F8;color:#6747A2;font-weight:950}.prog-lesson-block-title small{color:#7455BD;font-size:.6rem;font-weight:950;letter-spacing:.11em}.prog-lesson-block-title h2{margin:2px 0 0}.prog-lesson-block>p{color:var(--prog-muted)}.prog-session-v6{padding:21px 0;border-top:1px solid var(--prog-line)}.prog-session-v6:first-of-type{border-top:0}.prog-session-v6 header{display:flex;align-items:center;gap:12px}.prog-session-v6 header>span{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:var(--prog-navy);color:#fff;font-weight:950}.prog-session-v6 small{color:#7455BD;font-size:.59rem;font-weight:950;letter-spacing:.1em}.prog-session-v6 h3{margin:2px 0 0}.prog-session-v6>p{margin:12px 0;color:#4E5C72;line-height:1.7}.prog-code-reference{grid-template-columns:44px minmax(0,1fr) auto}.prog-code-reference-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:11px;background:#DDEAFF;color:#1769E0}.prog-code-reference small,.prog-code-reference strong{display:block}.prog-code-reference small{color:#1769E0;font-size:.58rem;font-weight:950;letter-spacing:.1em;text-transform:uppercase}.prog-lesson-review>.prog-practice{margin:0}.prog-lesson-review .prog-section-head p{max-width:580px}
.prog-checklist-v6{position:sticky;top:92px}.prog-checklist-v6>.prog-panel{padding:22px;border-top:5px solid #20946D}.prog-checklist-v6-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.prog-checklist-v6-head>strong{padding:6px 9px;border-radius:9px;background:#E6F5EF;color:#167151;font-size:.72rem}.prog-checklist-v6 h2{margin:10px 0 5px;font-size:1.15rem}.prog-checklist-v6>section>p{color:var(--prog-muted);font-size:.8rem}.prog-checklist-v6 .prog-check{cursor:pointer}.prog-complete-lesson{width:100%;margin-top:16px}.prog-complete-lesson:disabled{opacity:.48;cursor:not-allowed}.prog-complete-lesson.is-ready{box-shadow:0 8px 22px rgba(23,105,224,.22)}.prog-complete-lesson.is-complete{border-color:#17805B;background:#17805B}.prog-next-lesson-link{display:flex;align-items:center;justify-content:space-between;margin-top:9px;padding:12px 14px;border-radius:11px;background:#E9F5EF;color:#167151;text-decoration:none;font-weight:900}.prog-checklist-v6 .prog-next-stage{margin-top:10px;border:0;box-shadow:none}

/* Praticar: vitrine, filtros e cartões */
.prog-practice-hero-v6{background:radial-gradient(circle at 85% 12%,rgba(255,211,91,.2),transparent 25%),linear-gradient(135deg,#064B44,#087C70 55%,#12A18D)}.prog-practice-hero-v6 p{color:#DDF5F1}.prog-answer-animation{position:relative;z-index:2;display:grid;gap:9px;padding:25px;border:1px solid rgba(255,255,255,.18);border-radius:23px;background:rgba(2,51,46,.42);box-shadow:0 25px 50px rgba(0,0,0,.18);transform:rotate(1deg)}.prog-answer-head{display:flex;justify-content:space-between;color:#CDEDE7;font-size:.64rem;font-weight:950;letter-spacing:.1em}.prog-answer-animation>p{margin:7px 0 8px;color:#fff;font-weight:850}.prog-answer-animation>span{display:flex;align-items:center;gap:10px;padding:11px;border:1px solid rgba(255,255,255,.16);border-radius:11px;background:rgba(255,255,255,.08);color:#EAF8F5;font-size:.78rem;font-weight:800}.prog-answer-animation>span i{display:grid;place-items:center;width:29px;height:29px;border-radius:8px;background:rgba(255,255,255,.14);font-style:normal}.prog-answer-animation>span:nth-of-type(2){animation:progAnswer 6s ease-in-out infinite}@keyframes progAnswer{0%,30%,100%{border-color:rgba(255,255,255,.16);background:rgba(255,255,255,.08)}45%,70%{border-color:#F3CB61;background:rgba(243,203,97,.17);transform:translateX(5px)}}
.prog-practice-filters{display:flex;flex-wrap:wrap;gap:7px;margin:24px 0 8px;padding:8px;border:1px solid var(--prog-line);border-radius:14px;background:#fff}.prog-practice-filters a{padding:9px 12px;border-radius:9px;color:#566279;text-decoration:none;font-size:.74rem;font-weight:850}.prog-practice-filters a:hover,.prog-practice-filters a.ativo{background:#E5F5F0;color:#087765}.prog-practice-filter-divider{width:1px;background:var(--prog-line);margin:4px}
.prog-practice-filters-v6>div{display:flex;align-items:center;flex-wrap:wrap;gap:5px}.prog-practice-filters-v6>div+div{padding-left:8px;border-left:1px solid var(--prog-line)}.prog-practice-filters-v6>div>span{padding:0 5px;color:var(--prog-muted);font-size:.62rem;font-weight:950;letter-spacing:.09em;text-transform:uppercase}
.prog-public .prog-activity-card-v6{--mode:#0B8C7A;--mode-soft:#E5F5F1;min-height:385px;padding:22px;border:1px solid #D5E3E0;border-top:4px solid var(--mode);border-radius:21px;background:#fff;color:var(--prog-ink);box-shadow:0 14px 36px rgba(7,58,52,.075)}.prog-public .prog-activity-card-v6.mode-identificada{--mode:#1769E0;--mode-soft:#EAF2FF}.prog-public .prog-activity-card-v6.mode-avaliacao{--mode:#B78619;--mode-soft:#FFF5D9}.prog-public .prog-activity-card-v6::after{display:none}.prog-public .prog-activity-card-v6::before{z-index:-1;border:0;border-radius:0;background:radial-gradient(260px circle at var(--pointer-x) var(--pointer-y),color-mix(in srgb,var(--mode) 14%,transparent),transparent 65%)}.prog-public .prog-activity-card-v6 .prog-exam-icon{border:0;background:var(--mode-soft);color:var(--mode)}.prog-public .prog-activity-card-v6 .prog-exam-status{display:flex;align-items:center;gap:6px;border:0;background:#EAF7F1;color:#187252}.prog-public .prog-activity-card-v6 .prog-exam-status i{width:7px;height:7px;border-radius:50%;background:#25A878}.prog-public .prog-activity-card-v6 .prog-exam-type{color:var(--mode)}.prog-public .prog-activity-card-v6 h2{color:var(--prog-ink)}.prog-public .prog-activity-card-v6 .prog-exam-description{color:var(--prog-muted)}.prog-public .prog-activity-card-v6 .prog-exam-facts dd{color:#4F5C70}.prog-public .prog-activity-card-v6 .prog-exam-facts dt{color:var(--mode)}.prog-public .prog-activity-card-v6 .prog-exam-action{border-color:color-mix(in srgb,var(--mode) 28%,#fff);background:var(--mode-soft);color:var(--mode)}.prog-public .prog-activity-card-v6 .prog-exam-action:hover{background:var(--mode);color:#fff}.prog-public .prog-activity-card-v6.state-encerrada .prog-exam-status{background:#F1F2F4;color:#737E8E}.prog-public .prog-activity-card-v6.state-encerrada .prog-exam-status i{background:#8C95A3}

/* Tela individual das atividades */
.prog-activity-hero-v6{min-height:330px}.prog-activity-hero-v6 .prog-activity-meta span{display:inline-flex;align-items:center;gap:6px}.prog-focus-header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px;padding:12px 16px;border:1px solid #CFE2DE;border-left:5px solid #0B8C7A;border-radius:13px;background:#fff}.prog-focus-header.mode-identificada{border-left-color:#1769E0}.prog-focus-header.mode-avaliacao{border-left-color:#B78619}.prog-focus-header>div{display:flex;align-items:center;gap:10px}.prog-focus-header span{padding:5px 8px;border-radius:8px;background:#E5F5F1;color:#087765;font-size:.65rem;font-weight:900}.prog-focus-header strong{font-size:.86rem}.prog-focus-header>a{color:var(--prog-muted);text-decoration:none;font-weight:850;font-size:.77rem}.prog-activity-orientations{border-left:5px solid #0B8C7A}.prog-practice-prestart{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:30px;align-items:center;margin-top:22px;padding:clamp(28px,5vw,50px);border:1px solid #CFE2DE;border-radius:22px;background:linear-gradient(145deg,#fff,#F0FAF7);box-shadow:0 15px 38px rgba(7,58,52,.08)}.prog-practice-prestart h2{margin:.35em 0 .2em;font-size:clamp(2rem,4vw,3.5rem)}.prog-practice-prestart p{max-width:690px;color:var(--prog-muted);line-height:1.65}.prog-practice-prestart-mark{display:grid;place-items:center;width:140px;height:140px;border-radius:34px;background:linear-gradient(145deg,#075D50,#0B947D);color:#F5D26F;font-size:3.5rem;transform:rotate(4deg)}.prog-test-intro-v6{max-width:860px;margin:24px auto 0}.prog-test-intro-v6 .prog-test-start{border-top:5px solid #1769E0}.prog-test-intro-v6 .prog-test-start>p{color:var(--prog-muted)}.prog-start-warning i{margin-right:5px}.prog-result-v6{max-width:780px;margin:24px auto!important;padding:clamp(32px,6vw,68px)!important;text-align:center;border-top:5px solid #20946D!important}.prog-result-v6 .prog-result-icon{margin:0 auto 18px}.prog-result-v6 .prog-score small{font-size:.35em;color:var(--prog-muted)}
.prog-practice-result-v6{max-width:780px;margin:24px auto;padding:clamp(32px,6vw,65px);text-align:center;border-top:5px solid #20946D}.prog-practice-result-v6 .prog-result-icon{margin:0 auto 18px}.prog-practice-result-v6 p{max-width:590px;margin:10px auto 22px;color:var(--prog-muted);line-height:1.65}

/* V6 no modo escuro */
html[data-ri-theme="dark"] .prog-trail-strip article,html[data-ri-theme="dark"] .prog-project-card-v6,html[data-ri-theme="dark"] .prog-project-lessons>header,html[data-ri-theme="dark"] .prog-project-overall,html[data-ri-theme="dark"] .prog-lesson-card,html[data-ri-theme="dark"] .prog-workspace-head,html[data-ri-theme="dark"] .prog-lesson-block,html[data-ri-theme="dark"] .prog-practice-filters,html[data-ri-theme="dark"] .prog-public .prog-activity-card-v6,html[data-ri-theme="dark"] .prog-focus-header,html[data-ri-theme="dark"] .prog-practice-prestart{border-color:#354763;background:#142239;color:#E8EEF9;box-shadow:0 15px 38px rgba(0,0,0,.22)}
html[data-ri-theme="dark"] .prog-project-welcome{border-color:#3E3258;background:radial-gradient(circle at 85% 18%,rgba(116,85,189,.2),transparent 25%),linear-gradient(145deg,#111D31,#1B1830)}html[data-ri-theme="dark"] .prog-project-welcome-copy h1,html[data-ri-theme="dark"] .prog-project-lessons h1,html[data-ri-theme="dark"] .prog-project-card-v6 h3,html[data-ri-theme="dark"] .prog-lesson-card h2,html[data-ri-theme="dark"] .prog-lesson-block h2,html[data-ri-theme="dark"] .prog-session-v6 h3,html[data-ri-theme="dark"] .prog-practice-prestart h2{color:#F1F4FB}html[data-ri-theme="dark"] .prog-project-welcome-copy>p,html[data-ri-theme="dark"] .prog-project-card-v6 p,html[data-ri-theme="dark"] .prog-lesson-card p,html[data-ri-theme="dark"] .prog-session-v6>p,html[data-ri-theme="dark"] .prog-practice-prestart p{color:#AAB8CC}html[data-ri-theme="dark"] .prog-project-card-facts span{border-color:#3A4B64;background:#101D31;color:#C8D3E2}html[data-ri-theme="dark"] .prog-trail-strip article>span,html[data-ri-theme="dark"] .prog-lesson-number,html[data-ri-theme="dark"] .prog-lesson-block-title>span{background:#30264A;color:#CDB9F0}html[data-ri-theme="dark"] .prog-lesson-card.is-locked{background:#101B2D;opacity:.65}html[data-ri-theme="dark"] .prog-code-reference{border-color:#36516E;background:#12263E}html[data-ri-theme="dark"] .prog-code-reference-icon{background:#18375B}html[data-ri-theme="dark"] .prog-checklist-v6-head>strong{background:#163B31;color:#A9DFC9}html[data-ri-theme="dark"] .prog-practice-filters a{color:#C4D0E0}html[data-ri-theme="dark"] .prog-practice-filters a:hover,html[data-ri-theme="dark"] .prog-practice-filters a.ativo{background:#143F36;color:#C8F2E5}html[data-ri-theme="dark"] .prog-public .prog-activity-card-v6 .prog-exam-facts dd{color:#C1CDDD}html[data-ri-theme="dark"] .prog-public .prog-activity-card-v6 .prog-exam-action{border-color:#3A506A;background:#172C45}html[data-ri-theme="dark"] .prog-focus-header span{background:#143F36;color:#C8F2E5}html[data-ri-theme="dark"] .prog-project-overall .prog-progress{background:#263750}

@media(max-width:1050px){.prog-projects-hero-v6,.prog-practice-hero-v6{grid-template-columns:1fr}.prog-project-route-art,.prog-answer-animation{max-width:720px}.prog-project-layout-v6{grid-template-columns:minmax(0,1fr) 290px}.prog-project-welcome{grid-template-columns:minmax(0,1fr) 240px}}
@media(max-width:850px){.prog-project-welcome{grid-template-columns:1fr;min-height:auto;padding-top:75px}.prog-project-welcome-art{min-height:210px;transform:none}.prog-project-layout-v6{grid-template-columns:1fr}.prog-checklist-v6{position:sticky;z-index:8;bottom:10px;top:auto}.prog-checklist-v6>.prog-panel{max-height:46vh;overflow:auto;box-shadow:0 -12px 35px rgba(7,23,57,.16)}.prog-project-overall{grid-template-columns:1fr}.prog-practice-prestart{grid-template-columns:1fr}.prog-practice-prestart-mark{position:absolute;right:25px;top:25px;width:70px;height:70px;border-radius:20px;opacity:.2;font-size:2rem}}
@media(max-width:650px){.prog-projects-hero-v6,.prog-practice-hero-v6{min-height:auto;padding:32px 23px}.prog-projects-hero-v6 h1,.prog-practice-hero-v6 h1{font-size:2.8rem}.prog-project-route-art{grid-template-columns:repeat(2,1fr);gap:28px}.prog-project-route-art::before,.prog-project-route-art>b{display:none}.prog-project-grid-v6{grid-template-columns:1fr}.prog-trail-strip article{grid-template-columns:48px minmax(0,1fr)}.prog-trail-strip article>strong{grid-column:2}.prog-project-welcome{padding:70px 23px 26px}.prog-project-welcome-copy h1{font-size:2.8rem}.prog-project-welcome-art{display:none}.prog-project-intro{min-height:560px;padding:30px 22px}.prog-intro-skip{right:22px;top:55px}.prog-project-intro-slides{min-height:400px}.prog-project-intro-actions{display:grid;grid-template-columns:1fr 1fr}.prog-project-lessons>header{align-items:flex-start;flex-direction:column;padding:24px}.prog-lesson-card{grid-template-columns:54px minmax(0,1fr);padding:18px}.prog-lesson-number{width:50px;height:50px}.prog-workspace-head{align-items:flex-start;flex-direction:column}.prog-workspace-head>div{text-align:left}.prog-lesson-hero{padding:28px 22px}.prog-lesson-block{padding:20px}.prog-code-reference{grid-template-columns:40px minmax(0,1fr)}.prog-code-reference>.prog-btn{grid-column:1/-1;width:100%}.prog-practice-filters-v6{display:block}.prog-practice-filters-v6>div+div{margin-top:7px;padding:7px 0 0;border-top:1px solid var(--prog-line);border-left:0}.prog-practice-prestart{padding:27px 21px}.prog-focus-header>div{align-items:flex-start;flex-direction:column}.prog-focus-header strong{max-width:240px}.prog-public .prog-activity-card-v6{min-height:360px}}
@media(prefers-reduced-motion:reduce){.prog-project-route-art>b,.prog-answer-animation>span:nth-of-type(2){animation:none}.prog-project-intro-slides article{animation:none}}

/* V6.1 — correções de contraste observadas no modo escuro. */
html[data-ri-theme="dark"] .prog-public .prog-code-card .foot{
  border-color:#30415B;
  background:#101D31;
}
html[data-ri-theme="dark"] .prog-public .prog-code-card .foot .prog-btn.primary{
  border-color:#3977CE!important;
  background:#245CA9!important;
  color:#FFF!important;
}
html[data-ri-theme="dark"] .prog-public .prog-code-card .foot .prog-btn:not(.primary){
  border-color:#405572;
  background:#182A44;
  color:#E4ECF8;
}
html[data-ri-theme="dark"] .prog-choice-public a::before{display:none}
html[data-ri-theme="dark"] .prog-choice-public a{
  border-color:#30415B;
  background:linear-gradient(145deg,#142239,#101D31);
}
html[data-ri-theme="dark"] .prog-choice-public a:hover{
  border-color:color-mix(in srgb,var(--choice) 65%,#30415B);
  background:linear-gradient(145deg,#172944,#122238);
}
html[data-ri-theme="dark"] .prog-choice-public p{color:#B8C5D8}
html[data-ri-theme="dark"] .prog-choice-public .icon{
  background:color-mix(in srgb,var(--choice) 20%,#17263D);
  color:color-mix(in srgb,var(--choice) 72%,#FFF);
}

/* ==================================================================
   V7 — ECOSSISTEMA VISUAL, FLUXOS E PRÁTICA PROTAGONISTA
   ================================================================== */

/* Os quatro banners mantêm a mesma moldura e formam uma sequência de cor. */
.prog-area-inicio .prog-hero,
.prog-area-acervo .prog-acervo-hero,
.prog-area-projetos .prog-projects-hero-v6,
.prog-area-atividades .prog-practice-hero-v6{min-height:500px;border-radius:30px}
.prog-area-inicio .prog-hero::after{content:"";position:absolute;inset:0 0 0 auto;width:16%;height:auto;border:0;border-radius:0;background:linear-gradient(90deg,transparent,rgba(49,96,174,.34));pointer-events:none}
.prog-area-inicio .prog-hero::before{width:20%}
.prog-area-acervo .prog-acervo-hero::before{width:45%}
.prog-area-projetos .prog-projects-hero-v6::before{width:70%}
.prog-area-atividades .prog-practice-hero-v6::before{width:100%}
.prog-area-acervo .prog-acervo-hero{background:radial-gradient(circle at 24% 18%,rgba(104,171,244,.2),transparent 26%),linear-gradient(115deg,#174C9D 0%,#2B63B6 68%,#594394 100%)}
.prog-area-projetos .prog-projects-hero-v6{background:radial-gradient(circle at 78% 12%,rgba(255,211,91,.17),transparent 25%),linear-gradient(115deg,#594394 0%,#6543A1 72%,#176F70 100%)}
.prog-area-atividades{background:radial-gradient(circle at 14% 12%,rgba(24,174,153,.12),transparent 23%),linear-gradient(180deg,#EDF8F6 0%,#F4F8F8 55%,#EEF5F5 100%)}
.prog-area-atividades .prog-practice-hero-v6{min-height:540px;background:radial-gradient(circle at 82% 14%,rgba(255,211,91,.2),transparent 24%),linear-gradient(120deg,#176F70 0%,#087D70 58%,#12A18D 100%)}

/* Acervo: campo de fragmentos leves e brilho em movimento. */
.prog-area-acervo{background:radial-gradient(circle at 12% 20%,rgba(38,111,216,.09),transparent 24%),linear-gradient(110deg,#F4F7FB,#EEF4FB 58%,#F4F1FA);background-size:180% 100%;animation:progAcervoAura 16s ease-in-out infinite alternate}
.prog-acervo-float-field{position:relative;z-index:2;min-height:310px}
.prog-acervo-float-field span{position:absolute;display:block;padding:11px 15px;border:1px solid rgba(255,255,255,.24);border-radius:12px;background:rgba(7,24,57,.42);box-shadow:0 18px 35px rgba(4,18,44,.16);color:#E8F2FF;font:800 clamp(.7rem,1vw,.9rem)/1.3 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:nowrap;backdrop-filter:blur(5px);animation:progCodeDrift 7s ease-in-out infinite}
.prog-acervo-float-field .float-html{left:4%;top:12%;color:#F4D16C}.prog-acervo-float-field .float-css{right:7%;top:6%;animation-delay:-1.1s}.prog-acervo-float-field .float-js{left:23%;top:39%;color:#7FD9C0;animation-delay:-2.2s}.prog-acervo-float-field .float-hover{right:2%;top:54%;color:#D5C5F1;animation-delay:-3.3s}.prog-acervo-float-field .float-form{left:2%;bottom:12%;animation-delay:-4.4s}.prog-acervo-float-field .float-sql{right:20%;bottom:4%;color:#78D8C0;animation-delay:-5.1s}.prog-acervo-float-field .float-main{left:48%;top:4%;animation-delay:-2.8s}.prog-acervo-float-field .float-const{left:31%;bottom:22%;color:#F2D47B;animation-delay:-6s}
@keyframes progCodeDrift{0%,100%{transform:translate3d(0,0,0) rotate(-1deg)}50%{transform:translate3d(8px,-14px,0) rotate(1deg)}}
@keyframes progAcervoAura{to{background-position:100% 0}}

/* Códigos: identidade de função mais legível sem colorir o corpo inteiro. */
.prog-public .prog-code-card{border-top-width:5px;box-shadow:0 13px 32px rgba(8,32,76,.085)}
.prog-public .prog-code-card .visual{background:linear-gradient(145deg,color-mix(in srgb,var(--func-color) 18%,#fff),#fff 88%)}
.prog-public .prog-code-card .prog-code-symbol{background:var(--func-color);color:#fff;box-shadow:0 10px 23px color-mix(in srgb,var(--func-color) 28%,transparent)}
.prog-public .prog-code-card .visual>small{color:var(--func-color)}
.prog-public .prog-code-card .foot .prog-btn.primary{border-color:#0D326F!important;background:#0D326F!important;color:#fff!important}
.prog-public .prog-code-card .foot .prog-btn.primary:hover{border-color:#1769E0!important;background:#1769E0!important}
.prog-public .prog-code-card .foot .prog-btn:not(.primary){border-color:#B7C9E3;background:#fff;color:#0B285F}
.prog-choice-public .choice-project{--choice:#7048B8;--choice-soft:#E9DDF8}.prog-choice-public .choice-library{--choice:#1769E0;--choice-soft:#DCEAFF}.prog-choice-public .choice-practice{--choice:#0B947D;--choice-soft:#D9F1EA}
.prog-choice-public a{border-color:color-mix(in srgb,var(--choice) 24%,#D4DEEA)}.prog-choice-public .icon{box-shadow:0 8px 20px color-mix(in srgb,var(--choice) 17%,transparent)}

/* Projetos: três modelos, mesma proporção, dificuldade independente. */
.prog-project-card-v6.type-conceito{--project-accent:#5669D8;--project-soft:#EAEDFF}
.prog-project-card-v6.type-unico{--project-accent:#7048B8;--project-soft:#F0E9FB}
.prog-project-card-v6.type-trilha{--project-accent:#9265D1;--project-soft:#F3ECFC}
.prog-project-card-v6.type-trilha .prog-project-card-top{background:linear-gradient(135deg,rgba(146,101,209,.1),transparent)}
.prog-project-difficulty{display:flex;align-items:center;gap:9px;margin:0 22px 12px;color:var(--project-accent);font-size:.69rem}
.prog-project-difficulty>span{display:flex;gap:4px}.prog-project-difficulty i{display:block;width:18px;height:6px;border-radius:999px;background:#E1DDE9}.prog-project-difficulty i.is-filled{background:var(--project-accent)}
.prog-project-difficulty strong{font-size:.69rem}
.prog-project-activity-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:18px;padding:14px;border:1px dashed #D7CDE9;border-radius:14px;background:#FBF9FE}
.prog-project-activity-actions>span{margin-right:4px;color:#7455BD;font-size:.62rem;font-weight:950;letter-spacing:.1em}

/* A pergunta da aula só aparece sob demanda; o checklist acompanha a rolagem. */
.prog-project-flow-v6,.prog-project-workspace,.prog-project-layout-v6{overflow:visible}
.prog-checklist-v6{position:sticky!important;top:92px;align-self:start;height:max-content}
.prog-lesson-question{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:24px;border:1px solid #D8CDEB;border-left:5px solid #7455BD;border-radius:18px;background:linear-gradient(135deg,#fff,#F8F4FC);box-shadow:0 12px 30px rgba(62,39,105,.07)}
.prog-lesson-question h2{margin:6px 0}.prog-lesson-question p{margin:0;color:var(--prog-muted)}
.prog-project-question-timer{display:flex;align-items:center;gap:8px;padding:9px 12px;border-radius:11px;background:#2D1D59;color:#fff}.prog-project-question-timer span{font-size:.62rem;font-weight:850}.prog-project-question-timer strong{font:900 1.05rem ui-monospace,monospace;color:#F3D06D}
.prog-project-question-body,.prog-project-question-expired{grid-column:1/-1}.prog-project-question-body>.prog-practice{margin-top:4px}.prog-project-question-expired{padding:11px 13px;border-radius:10px;background:#FFF5D9!important;color:#795B12!important}
.prog-lesson-question.is-complete{border-left-color:#17906A;background:linear-gradient(135deg,#fff,#EFF9F5)}.prog-lesson-question.is-complete::after{content:"Revisão concluída + progresso";grid-column:1/-1;color:#167151;font-size:.72rem;font-weight:900}

/* Praticar: protagonista e variações dentro da família verde-água. */
.prog-public .prog-activity-card-v6.variant-livre{--mode:#087C70;--mode-soft:#E2F5F1}
.prog-public .prog-activity-card-v6.variant-revisao{--mode:#159A91;--mode-soft:#E2F7F5}
.prog-public .prog-activity-card-v6.variant-desafio{--mode:#168FA8;--mode-soft:#E3F5F8}
.prog-public .prog-activity-card-v6.variant-avaliacao{--mode:#327C88;--mode-soft:#E8F2F3}
.prog-public .prog-activity-card-v6 .prog-exam-icon{background:var(--mode);color:#fff;box-shadow:0 10px 22px color-mix(in srgb,var(--mode) 25%,transparent)}
.prog-public .prog-activity-card-v6 .prog-exam-action{border-color:var(--mode);background:var(--mode);color:#fff}
.prog-public .prog-activity-card-v6 .prog-exam-action:hover{filter:brightness(.92);transform:translateY(-1px)}
.prog-answer-animation{padding:31px;transform:rotate(1.3deg) scale(1.03)}

/* Tela interna: uma apresentação e, ao iniciar, apenas as questões. */
.prog-area-atividade{background:radial-gradient(circle at 12% 10%,rgba(18,161,141,.12),transparent 24%),linear-gradient(180deg,#EDF8F6,#F5F8F8)}
.prog-activity-hero-protagonist{min-height:520px!important;padding:clamp(38px,6vw,72px)!important;border-radius:30px!important}
.prog-activity-hero-protagonist>div:first-child{max-width:780px}.prog-activity-hero-protagonist .prog-btn{margin-top:26px}
.prog-activity-hero-protagonist.mode-identificada{background:linear-gradient(120deg,#075D62,#147F89 72%,#2E7F9B)!important}.prog-activity-hero-protagonist.mode-avaliacao{background:linear-gradient(120deg,#075D62,#247B83 72%,#55508E)!important}
.prog-test-intro-v6{max-width:760px;margin-top:18px}.prog-test-intro-v6 .prog-test-start{padding:clamp(26px,5vw,46px);border-top-color:#168F83}
.prog-test-runner-v7{display:block;max-width:980px;margin:20px auto 0}.prog-test-stage-v7{display:grid;gap:14px}.prog-question-sessionbar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 18px;border-top:4px solid #0B8C7A}.prog-question-sessionbar>div:first-child small,.prog-question-sessionbar>div:first-child strong{display:block}.prog-question-sessionbar>div:first-child small{color:var(--prog-muted);font-size:.72rem}.prog-question-sessionbar .prog-test-clock{min-width:145px;margin:0;padding:11px 14px;text-align:center}.prog-question-sessionbar .prog-test-clock strong{font-size:1.35rem}.prog-question-sessionbar>.prog-runner-progress{grid-column:1/-1;margin:0}.prog-test-stage-v7 .prog-question{min-height:430px}.prog-test-stage-v7 .prog-runner-actions{margin-top:0}
.prog-practice-shell-v7{display:block;max-width:980px;margin:20px auto 0}.prog-practice-shell-v7 .prog-practice-main{min-height:560px}.prog-practice-shell-v7 .prog-runner-pages{min-height:390px}

@media(max-width:900px){.prog-area-inicio .prog-hero,.prog-area-acervo .prog-acervo-hero,.prog-area-projetos .prog-projects-hero-v6,.prog-area-atividades .prog-practice-hero-v6{min-height:auto}.prog-acervo-float-field{min-height:260px}.prog-checklist-v6{position:sticky!important;top:auto;bottom:10px}.prog-lesson-question{grid-template-columns:1fr}.prog-lesson-question>.prog-btn{width:100%}.prog-activity-hero-protagonist{min-height:430px!important}}
@media(max-width:650px){.prog-acervo-float-field{min-height:220px}.prog-acervo-float-field span{padding:8px 10px;font-size:.62rem}.prog-acervo-float-field .float-main,.prog-acervo-float-field .float-const{display:none}.prog-project-activity-actions{align-items:stretch;flex-direction:column}.prog-project-activity-actions .prog-btn{width:100%}.prog-activity-hero-protagonist{min-height:0!important;padding:32px 23px!important}.prog-question-sessionbar{grid-template-columns:1fr}.prog-question-sessionbar .prog-test-clock{width:100%}}
@media(prefers-reduced-motion:reduce){.prog-area-acervo,.prog-acervo-float-field span{animation:none}.prog-answer-animation{transform:none}}

/* Compatibilidade mínima até a revisão completa do modo escuro. */
html[data-ri-theme="dark"] .prog-lesson-question,html[data-ri-theme="dark"] .prog-project-activity-actions{border-color:#3B4D66;background:#142239;color:#E9EFF9}
html[data-ri-theme="dark"] .prog-lesson-question p{color:#AAB8CC}
html[data-ri-theme="dark"] .prog-question-sessionbar{border-color:#344862;background:#142239;color:#E8EEF9}

/* ==================================================================
   V8 — PROJETOS GUIADOS: VIOLETA VIVO EM TODO O FLUXO
   A identidade fica restrita à listagem e às telas internas de projeto.
   ================================================================== */
.prog-area-projetos,
.prog-area-projeto{
  --project-violet-950:#2B155C;
  --project-violet-900:#3B1D78;
  --project-violet-800:#5126A8;
  --project-violet-700:#6933CA;
  --project-violet-600:#8550E4;
  --project-lilac:#A978F4;
  --project-indigo:#4D5FD5;
  --project-gold:#F6C744;
  --project-success:#16A07F;
  --project-ice:#F4F0FF;
}

/* Listagem: violeta mais luminoso, sem romper a transição para o Praticar. */
.prog-area-projetos{
  background:
    radial-gradient(circle at 11% 8%,rgba(133,80,228,.16),transparent 27%),
    linear-gradient(180deg,#F6F3FC 0%,#F8F9FD 44%,#F1F4FA 100%);
}
.prog-area-projetos .prog-projects-hero-v6{
  background:
    radial-gradient(circle at 77% 10%,rgba(246,199,68,.22),transparent 25%),
    linear-gradient(115deg,#5B35A4 0%,#7C45D2 58%,#8B55DB 76%,#16766F 100%);
  background-size:145% 145%;
  animation:progProjectAura 14s ease-in-out infinite alternate;
  box-shadow:0 25px 60px rgba(73,34,141,.25);
}
.prog-area-projetos .prog-project-route-art{
  border-color:rgba(255,255,255,.28);
  background:linear-gradient(145deg,rgba(42,19,91,.54),rgba(72,38,130,.38));
  box-shadow:inset 0 1px rgba(255,255,255,.12),0 22px 45px rgba(33,17,73,.2);
}
.prog-area-projetos .prog-project-route-art i{
  background:linear-gradient(145deg,#6840B2,#8255D2);
  color:#FFF;
  box-shadow:0 11px 24px rgba(31,15,66,.2);
}
.prog-area-projetos .prog-project-route-art span.is-active i{
  background:var(--project-gold);
  color:#2B155C;
  box-shadow:0 0 0 5px rgba(246,199,68,.13),0 12px 28px rgba(32,17,69,.25);
}

/* Cada modelo usa uma combinação diferente dentro da mesma família. */
.prog-project-card-v6.type-conceito{
  --project-accent:#5667E5;
  --project-deep:#3949B8;
  --project-vivid:#7180F2;
  --project-soft:#EAEDFF;
}
.prog-project-card-v6.type-unico{
  --project-accent:#7B3FDC;
  --project-deep:#5522AD;
  --project-vivid:#9259EB;
  --project-soft:#F0E7FF;
}
.prog-project-card-v6.type-trilha{
  --project-accent:#A34BC9;
  --project-deep:#71339F;
  --project-vivid:#BA68D8;
  --project-soft:#F6E8FB;
}
.prog-area-projetos .prog-project-card-v6{
  border-color:color-mix(in srgb,var(--project-accent) 32%,#D7DEEA);
  background:linear-gradient(180deg,var(--project-soft) 0 104px,#FFF 104px);
  box-shadow:0 17px 40px color-mix(in srgb,var(--project-accent) 13%,transparent);
}
.prog-area-projetos .prog-project-card-v6:hover{
  border-color:var(--project-accent);
  box-shadow:0 26px 56px color-mix(in srgb,var(--project-accent) 24%,transparent);
}
.prog-area-projetos .prog-project-card-top{
  min-height:104px;
  padding:22px;
  background:linear-gradient(128deg,var(--project-deep),var(--project-vivid));
}
.prog-area-projetos .prog-project-card-icon{
  border:1px solid rgba(255,255,255,.25);
  background:rgba(255,255,255,.15);
  color:#FFF;
  box-shadow:0 12px 25px rgba(34,16,77,.18);
  backdrop-filter:blur(5px);
}
.prog-area-projetos .prog-project-card-state{
  border:1px solid rgba(255,255,255,.27);
  background:rgba(255,255,255,.15);
  color:#FFF;
  backdrop-filter:blur(5px);
}
.prog-area-projetos .prog-project-card-state i{background:#7FF0C8;box-shadow:0 0 0 4px rgba(127,240,200,.12)}
.prog-area-projetos .prog-project-card-copy>small{color:var(--project-deep)}
.prog-area-projetos .prog-project-difficulty i{background:color-mix(in srgb,var(--project-accent) 18%,#E1E5ED)}
.prog-area-projetos .prog-project-difficulty i.is-filled{background:var(--project-accent);box-shadow:0 3px 9px color-mix(in srgb,var(--project-accent) 35%,transparent)}
.prog-area-projetos .prog-project-card-wave{
  background:linear-gradient(128deg,var(--project-deep),var(--project-vivid));
}

/* Entrada e introdução: o card protagonista passa a carregar a identidade. */
.prog-area-projeto{
  background:
    radial-gradient(circle at 10% 7%,rgba(133,80,228,.13),transparent 25%),
    linear-gradient(180deg,#F4F0FC 0%,#F7F8FC 48%,#F1F4F9 100%);
}
.prog-area-projeto .prog-project-welcome{
  border-color:#A98AE2;
  background:
    radial-gradient(circle at 79% 18%,rgba(246,199,68,.19),transparent 21%),
    linear-gradient(125deg,#432187 0%,#6933CA 54%,#9259EB 100%);
  color:#FFF;
  box-shadow:0 27px 65px rgba(73,34,141,.28);
}
.prog-area-projeto .prog-project-back{color:#EEE7FF}
.prog-area-projeto .prog-project-back:hover{color:#FFF}
.prog-area-projeto .prog-project-welcome-copy h1{color:#FFF;text-shadow:0 4px 22px rgba(42,18,88,.16)}
.prog-area-projeto .prog-project-welcome-copy>p{color:#EEE9FA}
.prog-area-projeto .prog-project-welcome .prog-kicker{
  border-color:rgba(255,255,255,.24);
  background:rgba(255,255,255,.13);
  color:#FFF;
}
.prog-area-projeto .prog-project-welcome .prog-project-meta span{
  border-color:rgba(255,255,255,.24);
  background:rgba(255,255,255,.13);
  color:#FFF;
}
.prog-area-projeto .prog-project-welcome-art{
  border-color:rgba(255,255,255,.28);
  background:linear-gradient(150deg,#2D175E,#5B2AAF 62%,#7441CE);
  box-shadow:0 25px 50px rgba(30,14,64,.32);
}
.prog-area-projeto .prog-project-welcome-art>span{color:rgba(255,255,255,.19)}
.prog-area-projeto .prog-project-intro{
  background:
    radial-gradient(circle at 82% 15%,rgba(246,199,68,.2),transparent 23%),
    linear-gradient(135deg,#32176C 0%,#652FC3 54%,#9154E7 100%);
  background-size:145% 145%;
  animation:progProjectAura 13s ease-in-out infinite alternate;
  box-shadow:0 26px 62px rgba(67,28,132,.3);
}
.prog-area-projeto .prog-project-intro-progress span{background:linear-gradient(90deg,#F6C744,#FFE69A);box-shadow:0 0 17px rgba(246,199,68,.62)}
.prog-area-projeto .prog-project-intro-slides article>span{background:rgba(255,255,255,.14);color:#FFE07A}
.prog-area-projeto .prog-project-intro-slides small{color:#E7D9FF}

/* Mapa de aulas e ambiente de trabalho. */
.prog-area-projeto .prog-project-lessons>header{
  border-color:#8E69D2;
  background:linear-gradient(118deg,#5126A8 0%,#7A43D2 62%,#9C68E8 100%);
  color:#FFF;
  box-shadow:0 18px 42px rgba(75,35,142,.18);
}
.prog-area-projeto .prog-project-lessons>header h1,
.prog-area-projeto .prog-project-lessons>header p{color:#FFF}
.prog-area-projeto .prog-project-lessons>header .prog-kicker{border-color:rgba(255,255,255,.24);background:rgba(255,255,255,.13);color:#FFF}
.prog-area-projeto .prog-project-lessons>header .prog-btn{border-color:rgba(255,255,255,.3);background:rgba(255,255,255,.13);color:#FFF}
.prog-area-projeto .prog-project-overall{border-color:#CCB8EE;box-shadow:0 12px 28px rgba(74,38,137,.08)}
.prog-area-projeto .prog-progress span{background:linear-gradient(90deg,#5A2CB2,#955BE8)}
.prog-area-projeto .prog-lesson-card{border-color:#D2C2EE;border-left-color:var(--project-violet-600);box-shadow:0 12px 30px rgba(73,36,139,.09)}
.prog-area-projeto .prog-lesson-card:not(.is-locked):hover{border-color:var(--project-violet-600);box-shadow:0 17px 38px rgba(91,42,175,.17)}
.prog-area-projeto .prog-lesson-number{background:linear-gradient(145deg,#6A34C9,#945BE8);color:#FFF;box-shadow:0 10px 22px rgba(83,37,160,.2)}
.prog-area-projeto .prog-lesson-card small,
.prog-area-projeto .prog-lesson-card strong{color:#6730BE}
.prog-area-projeto .prog-workspace-head{border-color:#CCB9EC;border-left:5px solid var(--project-violet-600);box-shadow:0 10px 25px rgba(69,34,128,.07)}
.prog-area-projeto .prog-lesson-hero{
  background:
    radial-gradient(circle at 88% 5%,rgba(246,199,68,.24),transparent 27%),
    linear-gradient(125deg,#432187,#6933CA 60%,#9259EB);
  box-shadow:0 21px 46px rgba(68,29,137,.22);
}
.prog-area-projeto .prog-lesson-block{border-color:#D9CAEF;box-shadow:0 13px 32px rgba(62,30,118,.08)}
.prog-area-projeto .prog-lesson-block-title>span{background:linear-gradient(145deg,#6530C2,#9259E8);color:#FFF;box-shadow:0 9px 20px rgba(78,33,153,.19)}
.prog-area-projeto .prog-lesson-block-title small,
.prog-area-projeto .prog-session-v6 small{color:#7136C9}
.prog-area-projeto .prog-session-v6 header>span{background:linear-gradient(145deg,#3A207B,#6840C4);box-shadow:0 8px 18px rgba(55,28,111,.18)}
.prog-area-projeto .prog-code-reference{
  border-color:#6474E6;
  background:linear-gradient(135deg,#EEF0FF,#F8F7FF);
  box-shadow:inset 4px 0 #5667E5;
}
.prog-area-projeto .prog-code-reference-icon{background:#5667E5;color:#FFF;box-shadow:0 8px 18px rgba(64,80,190,.22)}
.prog-area-projeto .prog-code-reference small{color:#4353C4}
.prog-area-projeto .prog-project-activity-actions{border-color:#BEA4E7;background:linear-gradient(135deg,#F5EFFF,#FBF9FF)}
.prog-area-projeto .prog-project-activity-actions>span{color:#6933BA}

/* Pergunta opcional e checklist: cor com função pedagógica clara. */
.prog-area-projeto .prog-lesson-question{
  border-color:#B79BE3;
  border-left-color:var(--project-violet-600);
  background:linear-gradient(125deg,#F1E8FF,#FFF 64%);
  box-shadow:0 14px 34px rgba(76,35,143,.12);
}
.prog-area-projeto .prog-lesson-question .prog-kicker{background:#E8DAFF;color:#6730BE}
.prog-area-projeto .prog-project-question-timer{background:linear-gradient(135deg,#3B1D78,#6D35CF);box-shadow:0 9px 20px rgba(53,24,108,.2)}
.prog-area-projeto .prog-lesson-question.is-complete{border-color:#63B99E;border-left-color:var(--project-success);background:linear-gradient(135deg,#EAF8F3,#FFF)}
.prog-area-projeto .prog-checklist-v6>.prog-panel{border-color:#CDBAED;border-top-color:var(--project-violet-600);box-shadow:0 17px 38px rgba(65,30,123,.11)}
.prog-area-projeto .prog-checklist-v6-head>strong{background:#E9DFFF;color:#6730BE}
.prog-area-projeto .prog-checklist-v6 .prog-check{border:1px solid #E0D5F0;background:#F9F6FE;transition:border-color .2s,background .2s,transform .2s}
.prog-area-projeto .prog-checklist-v6 .prog-check:hover{border-color:#B79BE3;background:#F2EBFC;transform:translateX(-2px)}
.prog-area-projeto .prog-checklist-v6 .prog-check:has(input:checked){border-color:#6CC0A5;background:#EAF8F3}
.prog-area-projeto .prog-checklist-v6 .prog-btn.primary{border-color:#6631BF;background:linear-gradient(135deg,#5626AC,#7D46D8)}
.prog-area-projeto .prog-checklist-v6 .prog-btn.primary.is-ready{box-shadow:0 9px 24px rgba(100,46,190,.3)}
.prog-area-projeto .prog-checklist-v6 .prog-btn.primary.is-complete{border-color:#138366;background:#138366}

/* Modo escuro: fundo marinho e superfícies distintas; o violeta não perde vida. */
html[data-ri-theme="dark"] .prog-area-projetos,
html[data-ri-theme="dark"] .prog-area-projeto{
  background:
    radial-gradient(circle at 10% 6%,rgba(133,80,228,.2),transparent 27%),
    linear-gradient(180deg,#081A31 0%,#0B1D35 54%,#0A203B 100%);
}
html[data-ri-theme="dark"] .prog-area-projetos .prog-projects-hero-v6{
  background:
    radial-gradient(circle at 78% 10%,rgba(246,199,68,.21),transparent 25%),
    linear-gradient(115deg,#48248F 0%,#7139C9 62%,#8650DE 78%,#126D69 100%);
  box-shadow:0 27px 66px rgba(0,0,0,.36);
}
html[data-ri-theme="dark"] .prog-area-projetos .prog-project-card-v6{
  border-color:color-mix(in srgb,var(--project-accent) 48%,#31445F);
  background:linear-gradient(180deg,#172945 0 104px,#11243D 104px);
  color:#F4F6FC;
}
html[data-ri-theme="dark"] .prog-area-projetos .prog-project-card-copy h3{color:#F7F8FC}
html[data-ri-theme="dark"] .prog-area-projetos .prog-project-card-copy p{color:#B8C5D8}
html[data-ri-theme="dark"] .prog-area-projetos .prog-project-card-copy>small,
html[data-ri-theme="dark"] .prog-area-projetos .prog-project-difficulty{color:color-mix(in srgb,var(--project-vivid) 75%,#FFF)}
html[data-ri-theme="dark"] .prog-area-projetos .prog-project-card-facts span{border-color:#40526D;background:#172B47;color:#DCE5F3}
html[data-ri-theme="dark"] .prog-area-projeto .prog-project-welcome{
  border-color:#8B5BD9;
  background:
    radial-gradient(circle at 80% 17%,rgba(246,199,68,.2),transparent 22%),
    linear-gradient(125deg,#32166C,#5D2DBA 55%,#824BDD);
}
html[data-ri-theme="dark"] .prog-area-projeto .prog-project-lessons>header{
  border-color:#7C4CC8;
  background:linear-gradient(118deg,#3C1B7C,#632FC0 62%,#8651DA);
}
html[data-ri-theme="dark"] .prog-area-projeto .prog-project-overall,
html[data-ri-theme="dark"] .prog-area-projeto .prog-lesson-card,
html[data-ri-theme="dark"] .prog-area-projeto .prog-workspace-head,
html[data-ri-theme="dark"] .prog-area-projeto .prog-lesson-block,
html[data-ri-theme="dark"] .prog-area-projeto .prog-checklist-v6>.prog-panel{
  border-color:#4B3B69;
  background:#11243D;
  color:#F4F6FC;
  box-shadow:0 16px 38px rgba(0,0,0,.24);
}
html[data-ri-theme="dark"] .prog-area-projeto .prog-lesson-card h2,
html[data-ri-theme="dark"] .prog-area-projeto .prog-lesson-block h2,
html[data-ri-theme="dark"] .prog-area-projeto .prog-session-v6 h3,
html[data-ri-theme="dark"] .prog-area-projeto .prog-checklist-v6 h2{color:#F7F8FC}
html[data-ri-theme="dark"] .prog-area-projeto .prog-lesson-card p,
html[data-ri-theme="dark"] .prog-area-projeto .prog-lesson-block>p,
html[data-ri-theme="dark"] .prog-area-projeto .prog-session-v6>p,
html[data-ri-theme="dark"] .prog-area-projeto .prog-checklist-v6>section>p{color:#B8C5D8}
html[data-ri-theme="dark"] .prog-area-projeto .prog-lesson-card small,
html[data-ri-theme="dark"] .prog-area-projeto .prog-lesson-card strong,
html[data-ri-theme="dark"] .prog-area-projeto .prog-lesson-block-title small,
html[data-ri-theme="dark"] .prog-area-projeto .prog-session-v6 small{color:#C5A8FA}
html[data-ri-theme="dark"] .prog-area-projeto .prog-code-reference{border-color:#7180F2;background:linear-gradient(135deg,#172C4A,#192A49);color:#EEF2FF}
html[data-ri-theme="dark"] .prog-area-projeto .prog-code-reference small{color:#AAB5FF}
html[data-ri-theme="dark"] .prog-area-projeto .prog-project-activity-actions{border-color:#594279;background:linear-gradient(135deg,#1B2944,#251F45)}
html[data-ri-theme="dark"] .prog-area-projeto .prog-project-activity-actions>span{color:#C5A8FA}
html[data-ri-theme="dark"] .prog-area-projeto .prog-lesson-question{border-color:#62488A;border-left-color:#9259EB;background:linear-gradient(125deg,#251D43,#11243D 68%);color:#F4F6FC}
html[data-ri-theme="dark"] .prog-area-projeto .prog-lesson-question h2{color:#F7F8FC}
html[data-ri-theme="dark"] .prog-area-projeto .prog-lesson-question p{color:#B8C5D8}
html[data-ri-theme="dark"] .prog-area-projeto .prog-lesson-question .prog-kicker{background:#38275A;color:#D7C2FA}
html[data-ri-theme="dark"] .prog-area-projeto .prog-checklist-v6-head>strong{background:#38275A;color:#D7C2FA}
html[data-ri-theme="dark"] .prog-area-projeto .prog-checklist-v6 .prog-check{border-color:#3C506B;background:#0F2037;color:#E7EDF7}
html[data-ri-theme="dark"] .prog-area-projeto .prog-checklist-v6 .prog-check:hover{border-color:#8259C7;background:#192744}
html[data-ri-theme="dark"] .prog-area-projeto .prog-checklist-v6 .prog-check:has(input:checked){border-color:#348F74;background:#123B32}

@keyframes progProjectAura{
  from{background-position:0 45%}
  to{background-position:100% 55%}
}
@media(prefers-reduced-motion:reduce){
  .prog-area-projetos .prog-projects-hero-v6,
  .prog-area-projeto .prog-project-intro{animation:none}
}

/* ==================================================================
   V14 — CENTRAL PEDAGÓGICA PROFISSIONAL
   Escopo exclusivo da administração de Programação.
   ================================================================== */
.prog-admin{
  --admin-navy:#071A42;
  --admin-blue:#1769E0;
  --admin-blue-soft:#EAF2FF;
  --admin-gold:#F2BE2F;
  --admin-violet:#7455BD;
  --admin-green:#0B947D;
  --admin-surface:#FFFFFF;
  --admin-soft:#F6F8FC;
  --admin-line:#D8E2EF;
  --admin-ink:#14213D;
  --admin-muted:#68768D;
  grid-template-columns:250px minmax(0,1fr);
  gap:26px;
  align-items:start;
}
.prog-admin>section{min-width:0}.prog-admin .prog-panel{border-color:var(--admin-line);border-radius:20px;box-shadow:0 14px 38px rgba(7,26,66,.075)}
.prog-admin-side{position:sticky;top:18px;min-height:calc(100vh - 36px);padding:15px 13px 18px;overflow:hidden;border:1px solid rgba(255,255,255,.1);border-radius:22px;background:linear-gradient(165deg,#071A42 0%,#0A2862 68%,#0C397F 100%);box-shadow:0 22px 52px rgba(7,26,66,.23)}
.prog-admin-side::after{content:"";position:absolute;right:-75px;bottom:-75px;width:190px;height:190px;border:28px solid rgba(255,255,255,.045);border-radius:50%;pointer-events:none}.prog-admin-brand{position:relative;z-index:1;margin:0 3px 10px;padding:10px 8px 19px;border-bottom:1px solid rgba(255,255,255,.13)}.prog-admin-brand>span{width:43px;height:43px;border-radius:13px;background:linear-gradient(145deg,#FFD968,var(--admin-gold));box-shadow:0 8px 20px rgba(0,0,0,.2)}.prog-admin-brand strong{font-size:.93rem;letter-spacing:-.01em}.prog-admin-brand small{margin-top:2px;color:#AFC2E1;font-size:.65rem;letter-spacing:.055em;text-transform:uppercase}.prog-admin-side nav{position:relative;z-index:1;display:grid;gap:2px}.prog-admin-nav-label{margin:13px 10px 4px;color:#809AC5;font-size:.58rem;letter-spacing:.14em}.prog-admin-side nav a{display:flex;align-items:center;gap:10px;margin:0;padding:9px 11px;border:1px solid transparent;border-radius:10px;color:#D9E5F8;font-size:.78rem;font-weight:740}.prog-admin-side nav a i{display:grid;place-items:center;width:19px;color:#8FB5EF;font-size:.9rem}.prog-admin-side nav a:hover{border-color:rgba(255,255,255,.1);background:rgba(255,255,255,.075)}.prog-admin-side nav a.ativo{border-color:rgba(255,255,255,.12);background:rgba(255,255,255,.13);box-shadow:inset 3px 0 var(--admin-gold);color:#FFF}.prog-admin-side nav a.ativo i{color:var(--admin-gold)}.prog-admin-side nav hr{width:calc(100% - 16px);margin:12px 8px 6px;border-color:rgba(255,255,255,.12)}
.prog-eyebrow{display:block;margin-bottom:6px;color:var(--admin-blue);font-size:.64rem;font-weight:950;letter-spacing:.13em;text-transform:uppercase}.prog-dashboard-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:25px;min-height:270px;padding:38px 40px;overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:26px;background:radial-gradient(circle at 80% 20%,rgba(72,145,255,.26),transparent 27%),linear-gradient(125deg,#071A42 0%,#0C357B 67%,#1769E0 100%);color:#FFF;box-shadow:0 24px 56px rgba(7,26,66,.22)}.prog-dashboard-hero::before{content:"";position:absolute;inset:auto -80px -160px auto;width:370px;height:370px;border:52px solid rgba(255,255,255,.055);border-radius:50%}.prog-dashboard-hero>div:first-child{position:relative;z-index:1}.prog-dashboard-hero .prog-kicker{border:1px solid rgba(255,255,255,.19);background:rgba(255,255,255,.11);color:#DCEAFF}.prog-dashboard-hero h1{max-width:650px;margin:13px 0 10px;font-size:clamp(2.15rem,4.2vw,3.7rem);line-height:.98;letter-spacing:-.055em}.prog-dashboard-hero p{max-width:690px;margin:0 0 23px;color:#D7E5FA;font-size:1rem;line-height:1.65}.prog-dashboard-hero .prog-btn{min-height:43px;border-color:rgba(255,255,255,.24);background:rgba(255,255,255,.09);color:#FFF}.prog-dashboard-hero .prog-btn:hover{background:rgba(255,255,255,.16);color:#FFF}.prog-dashboard-hero .prog-btn.primary{border-color:var(--admin-gold);background:var(--admin-gold);color:#14213D}.prog-dashboard-hero-art{position:relative;z-index:1;display:grid;place-items:center;align-self:center;justify-self:end;width:220px;height:180px;border:1px solid rgba(255,255,255,.17);border-radius:22px;background:rgba(255,255,255,.085);box-shadow:inset 0 1px rgba(255,255,255,.12);backdrop-filter:blur(10px);transform:rotate(2deg)}.prog-dashboard-hero-art>span{font:950 2.2rem ui-monospace,Consolas,monospace;color:#FFF}.prog-dashboard-hero-art>i{position:absolute;right:17px;top:16px;display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--admin-gold);color:#14213D;font-size:1.12rem}.prog-dashboard-hero-art>b{position:absolute;left:18px;bottom:17px;padding:7px 9px;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:rgba(7,26,66,.36);color:#BFD7FA;font-size:.58rem;letter-spacing:.14em}
.prog-dashboard-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin:16px 0 0}.prog-dashboard-metrics article{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:center;min-height:112px;padding:17px;border:1px solid var(--admin-line);border-radius:17px;background:var(--admin-surface);box-shadow:0 10px 26px rgba(7,26,66,.055)}.metric-icon{display:grid;place-items:center;width:43px;height:43px;border-radius:13px;font-size:1.05rem}.metric-icon.amber{background:#FFF4D8;color:#8A6110}.metric-icon.green{background:#E4F5F0;color:#087763}.metric-icon.blue{background:#E8F1FF;color:#145DBF}.metric-icon.violet{background:#F0EAF9;color:#6441A2}.prog-dashboard-metrics div{display:grid;grid-template-columns:1fr auto;align-items:end;gap:1px 7px}.prog-dashboard-metrics small{grid-column:1/2;color:var(--admin-muted);font-size:.64rem;font-weight:900;letter-spacing:.085em;text-transform:uppercase}.prog-dashboard-metrics strong{grid-column:2;grid-row:1/3;color:var(--admin-ink);font-size:1.85rem;letter-spacing:-.05em}.prog-dashboard-metrics p{grid-column:1/-1;margin:1px 0 0;color:var(--admin-muted);font-size:.72rem;line-height:1.3}
.prog-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(290px,.72fr);gap:18px;align-items:start}.prog-dashboard-main{min-width:0}.prog-dashboard-aside{display:grid;gap:18px;margin-top:34px}.prog-editorial-panel .prog-section-head,.prog-cadence-panel .prog-section-head,.prog-action-panel .prog-section-head,.prog-acervo-health .prog-section-head{align-items:flex-start}.prog-editorial-panel .prog-section-head p,.prog-cadence-panel .prog-section-head p{max-width:580px;margin:5px 0 0;color:var(--admin-muted);font-size:.86rem;line-height:1.5}.prog-queue-total{display:flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid #F0D993;border-radius:11px;background:#FFF8E4;color:#76540C;font-size:.72rem;font-weight:850}.prog-queue-total b{font-size:1rem}.prog-editorial-list{display:grid;border:1px solid var(--admin-line);border-radius:15px;overflow:hidden}.prog-editorial-list>a{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:13px;align-items:center;padding:15px 16px;border-bottom:1px solid var(--admin-line);background:#FFF;color:var(--admin-ink);text-decoration:none;transition:.18s ease}.prog-editorial-list>a:last-child{border-bottom:0}.prog-editorial-list>a:hover{background:#F7FAFF}.editorial-icon{display:grid;place-items:center;width:41px;height:41px;border-radius:12px;background:var(--admin-blue-soft);color:var(--admin-blue);font-size:1rem}.prog-editorial-list>a:nth-child(2) .editorial-icon{background:#F0EAF9;color:var(--admin-violet)}.prog-editorial-list>a:nth-child(3) .editorial-icon{background:#E4F5F0;color:var(--admin-green)}.prog-editorial-list>a>div{display:grid;gap:3px}.prog-editorial-list>a>div>small{color:var(--admin-muted);font-size:.75rem}.prog-mini-progress{display:block;width:min(220px,100%);height:4px;margin-top:5px;overflow:hidden;border-radius:999px;background:#E8EDF4}.prog-mini-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--admin-blue),#5B9CF4)}.editorial-numbers{display:grid;min-width:58px;text-align:right}.editorial-numbers b{color:var(--admin-ink);font-size:1.25rem}.editorial-numbers small{color:var(--admin-muted);font-size:.62rem}.prog-editorial-list>a>.bi-chevron-right{color:#91A0B6}
.prog-cadence-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}.prog-cadence-flow article{position:relative;min-height:166px;padding:16px 14px;border:1px solid var(--admin-line);border-right:0;background:#FFF}.prog-cadence-flow article:first-child{border-radius:14px 0 0 14px}.prog-cadence-flow article:last-child{border-right:1px solid var(--admin-line);border-radius:0 14px 14px 0}.prog-cadence-flow article::after{content:"";position:absolute;z-index:2;right:-6px;top:30px;width:10px;height:10px;border-top:2px solid #AFC0D6;border-right:2px solid #AFC0D6;background:#FFF;transform:rotate(45deg)}.prog-cadence-flow article:last-child::after{display:none}.prog-cadence-flow span{color:#91A0B6;font-size:.62rem;font-weight:950;letter-spacing:.1em}.prog-cadence-flow i{display:grid;place-items:center;width:35px;height:35px;margin:10px 0 12px;border-radius:10px;background:var(--admin-blue-soft);color:var(--admin-blue)}.prog-cadence-flow article:nth-child(2) i{background:#F0EAF9;color:var(--admin-violet)}.prog-cadence-flow article:nth-child(3) i{background:#FFF4D8;color:#8A6110}.prog-cadence-flow article:nth-child(4) i{background:#E4F5F0;color:var(--admin-green)}.prog-cadence-flow strong{display:block;font-size:.86rem}.prog-cadence-flow p{margin:4px 0 0;color:var(--admin-muted);font-size:.71rem;line-height:1.45}
.prog-action-panel{padding:21px}.prog-action-panel h2,.prog-acervo-health h2{font-size:1.15rem}.prog-create-list{display:grid;gap:7px}.prog-create-list>a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px;border:1px solid transparent;border-radius:12px;color:var(--admin-ink);text-decoration:none}.prog-create-list>a:hover{border-color:var(--admin-line);background:#F7F9FC}.prog-create-list>a>span{display:grid;place-items:center;width:37px;height:37px;border-radius:10px}.prog-create-list .blue{background:var(--admin-blue-soft);color:var(--admin-blue)}.prog-create-list .violet{background:#F0EAF9;color:var(--admin-violet)}.prog-create-list .amber{background:#FFF4D8;color:#8A6110}.prog-create-list .green{background:#E4F5F0;color:var(--admin-green)}.prog-create-list div{display:grid;gap:2px}.prog-create-list strong{font-size:.8rem}.prog-create-list small{color:var(--admin-muted);font-size:.66rem}.prog-create-list>a>.bi-plus-lg{color:#91A0B6;font-size:.75rem}.prog-acervo-health{padding:21px}.prog-acervo-health .prog-section-head>a{color:var(--admin-blue);font-size:.72rem;font-weight:850;text-decoration:none}.health-ring{display:grid;place-items:center;width:122px;height:122px;margin:18px auto;border-radius:50%;background:conic-gradient(var(--admin-green) var(--health),#E8EDF4 0)}.health-ring::before{content:"";grid-area:1/1;width:92px;height:92px;border-radius:50%;background:#FFF}.health-ring>div{z-index:1;grid-area:1/1;display:grid;text-align:center}.health-ring strong{font-size:1.35rem;letter-spacing:-.04em}.health-ring small{color:var(--admin-muted);font-size:.65rem}.health-stats{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:14px}.health-stats span{padding:9px;border-radius:10px;background:#F5F8FC;color:var(--admin-muted);font-size:.64rem;text-align:center}.health-stats b{display:block;color:var(--admin-ink);font-size:.95rem}.prog-acervo-health>.prog-btn{width:100%;font-size:.73rem}
.prog-admin-page-heading{position:relative;align-items:center!important;min-height:145px!important;padding:27px 29px!important;overflow:hidden;border-radius:22px!important;background:radial-gradient(circle at 88% 10%,#E8F1FF 0,transparent 28%),linear-gradient(135deg,#FFF,#F7F9FD)!important}.prog-admin-page-heading::after{content:"";position:absolute;right:-42px;bottom:-62px;width:155px;height:155px;border:22px solid rgba(23,105,224,.045);border-radius:50%}.prog-admin-page-heading>div{position:relative;z-index:1}.prog-admin-page-heading h1{margin:6px 0 6px;font-size:clamp(2rem,3.2vw,2.8rem)!important}.prog-admin-page-heading .prog-lead{margin:0;font-size:.95rem}.prog-admin-heading-actions{position:relative;z-index:2}.prog-admin-heading-mark{border:1px solid #D4E1F3;background:linear-gradient(145deg,#0B2B68,#1769E0);color:#FFF;box-shadow:0 10px 25px rgba(7,26,66,.17)}
.prog-status-tabs{gap:5px;margin:0 0 12px;padding:6px;border-color:var(--admin-line);border-radius:14px;box-shadow:0 7px 22px rgba(7,26,66,.045)}.prog-status-tabs a{gap:7px;padding:9px 12px;border-radius:9px;font-size:.73rem}.prog-status-tabs a>i{font-size:.8rem}.prog-status-tabs a.ativo{background:var(--admin-navy);box-shadow:0 6px 14px rgba(7,26,66,.16)}.prog-collection-tools{display:flex;align-items:center;justify-content:space-between;gap:13px;margin-bottom:13px}.prog-list-search{display:flex;align-items:center;gap:7px;flex:1}.prog-list-search label{position:relative;display:block;flex:1;max-width:500px}.prog-list-search label>i{position:absolute;z-index:1;left:13px;top:50%;color:#8696AC;transform:translateY(-50%)}.prog-list-search label .prog-input{height:42px;padding-left:38px;border-color:var(--admin-line);border-radius:11px;background:#FFF}.prog-page-tools{display:flex;gap:6px}.prog-page-tools a{display:inline-flex;align-items:center;gap:6px;padding:9px 11px;border:1px solid var(--admin-line);border-radius:10px;background:#FFF;color:var(--admin-navy);font-size:.72rem;font-weight:850;text-decoration:none}.prog-page-tools a:hover{border-color:#9BBBE7;background:#F5F9FF}.prog-collection-panel{padding:0!important;overflow:hidden}.prog-collection-panel>.prog-section-head{align-items:center;margin:0;padding:19px 21px}.prog-collection-panel>.prog-section-head h2{font-size:1.13rem}.prog-collection-panel>.prog-section-head small{display:block;margin-top:4px;color:var(--admin-muted);font-size:.7rem}.prog-bulk-actions .prog-btn{min-height:38px;padding:8px 11px;font-size:.72rem}.prog-bulk-note{display:flex;align-items:center;gap:8px;padding:10px 20px;border-color:#D8E5F6;background:#F2F7FF;color:#53657E;font-size:.72rem}.prog-bulk-note>i{color:var(--admin-blue)}.prog-collection-panel .prog-table th{padding:12px 14px;border-bottom:1px solid var(--admin-line);background:#F7F9FC;color:#68768D;font-size:.62rem;letter-spacing:.08em}.prog-collection-panel .prog-table td{padding:13px 14px;border-bottom:1px solid #E5EAF2;font-size:.77rem;vertical-align:middle}.prog-collection-panel .prog-table tbody tr{transition:background .16s}.prog-collection-panel .prog-table tbody tr:hover{background:#F8FAFD}.prog-collection-panel .prog-table tbody tr:last-child td{border-bottom:0}.prog-collection-panel .prog-table td strong{font-size:.78rem}.prog-collection-panel .prog-table td small{color:var(--admin-muted);font-size:.68rem}.prog-collection-panel .prog-table code{color:#D33F75;font-size:.68rem}.prog-select-cell input{width:16px;height:16px}.prog-status{gap:5px;padding:5px 8px}.prog-status::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.prog-status.publicado,.prog-status.status-publicado{background:#E5F6ED;color:#16704A}.prog-status.rascunho,.prog-status.status-rascunho{background:#FFF4D9;color:#8A6110}.prog-status.arquivado,.prog-status.status-arquivado{background:#EEF1F5;color:#65728A}
.prog-mode-overview{gap:10px;margin:13px 0}.prog-mode-overview article{min-height:92px;padding:15px 17px;border-radius:14px;box-shadow:0 7px 20px rgba(7,26,66,.045)}.prog-mode-overview article strong{font-size:.86rem}.prog-mode-overview article span{font-size:.72rem;line-height:1.45}
.prog-editor-top-actions{gap:7px}.prog-editor-top-actions .prog-btn{min-height:40px;padding:9px 12px;font-size:.73rem}.prog-editor-top-actions .prog-btn.primary{background:linear-gradient(135deg,#0B2B68,#1769E0)}.prog-admin .prog-field label{color:#34435D;font-size:.78rem}.prog-admin .prog-input,.prog-admin .prog-select,.prog-admin .prog-textarea{border-color:#CFD9E7;border-radius:11px}.prog-admin .prog-input:focus,.prog-admin .prog-select:focus,.prog-admin .prog-textarea:focus{border-color:#77A7EA;box-shadow:0 0 0 3px rgba(23,105,224,.1);outline:0}.prog-admin .prog-file-row,.prog-admin .prog-question-picker>label{border-color:var(--admin-line);background:#F8FAFD}
.prog-map-kpis .prog-kpi{border:1px solid var(--admin-line);border-radius:16px;background:#FFF;box-shadow:0 9px 26px rgba(7,26,66,.055)}.prog-map-kpis .prog-kpi strong{color:var(--admin-blue)}.prog-map-filters{border-color:var(--admin-line);border-radius:18px;background:#FFF}.prog-map-panel{border-radius:20px}.prog-map-note{border-color:#D8E5F6;background:#F2F7FF}.prog-map-details{border-color:var(--admin-line)}
.prog-collection-tools-end{justify-content:flex-end}.prog-admin .prog-editor-title{display:flex;align-items:flex-start;gap:12px;margin-bottom:17px}.prog-admin .prog-editor-title h2{margin:1px 0 3px;font-size:1.08rem}.prog-admin .prog-editor-title p{margin:0;color:var(--admin-muted);font-size:.76rem;line-height:1.45}.prog-admin .prog-section-index{display:grid;place-items:center;flex:0 0 auto;width:34px;height:34px;border-radius:10px;background:var(--admin-navy);color:#FFF;font-size:.68rem;font-weight:950;box-shadow:0 7px 16px rgba(7,26,66,.14)}.prog-admin form>.prog-panel,.prog-admin form>.prog-section{position:relative}.prog-admin form>.prog-panel::before{content:"";position:absolute;left:24px;right:24px;top:0;height:3px;border-radius:0 0 999px 999px;background:linear-gradient(90deg,var(--admin-blue),#75A9F1);opacity:.8}.prog-admin .prog-question-editor::before{background:linear-gradient(90deg,var(--admin-violet),#AF8AE6)}.prog-admin .prog-activity-editor::before{background:linear-gradient(90deg,var(--admin-green),#5CC9B5)}
html[data-ri-theme="dark"] .prog-admin{--admin-surface:#11243D;--admin-soft:#0E2037;--admin-line:#30445F;--admin-ink:#F4F7FD;--admin-muted:#B5C3D7}.prog-page:has(.prog-admin){background:radial-gradient(circle at 86% 1%,#E6F0FF 0,transparent 27%),linear-gradient(180deg,#F5F7FB,#EEF3F9)}html[data-ri-theme="dark"] .prog-page:has(.prog-admin){background:radial-gradient(circle at 86% 1%,rgba(23,105,224,.22) 0,transparent 28%),linear-gradient(180deg,#081A31,#0A2039);color:#F4F7FD}html[data-ri-theme="dark"] .prog-admin .prog-panel,html[data-ri-theme="dark"] .prog-dashboard-metrics article,html[data-ri-theme="dark"] .prog-editorial-list>a,html[data-ri-theme="dark"] .prog-cadence-flow article,html[data-ri-theme="dark"] .prog-status-tabs,html[data-ri-theme="dark"] .prog-page-tools a,html[data-ri-theme="dark"] .prog-list-search label .prog-input{border-color:var(--admin-line);background:var(--admin-surface);color:var(--admin-ink)}html[data-ri-theme="dark"] .prog-editorial-list>a:hover,html[data-ri-theme="dark"] .prog-create-list>a:hover{background:#172B47}html[data-ri-theme="dark"] .prog-cadence-flow article::after{border-color:#55708F;background:var(--admin-surface)}html[data-ri-theme="dark"] .health-ring::before{background:var(--admin-surface)}html[data-ri-theme="dark"] .health-stats span,html[data-ri-theme="dark"] .prog-collection-panel .prog-table th{background:#172B47;color:#B5C3D7}html[data-ri-theme="dark"] .prog-admin-page-heading{border-color:var(--admin-line)!important;background:radial-gradient(circle at 88% 10%,rgba(23,105,224,.16),transparent 28%),linear-gradient(135deg,#11243D,#0E2037)!important;color:#F4F7FD}html[data-ri-theme="dark"] .prog-collection-panel .prog-table tbody tr:hover{background:#142842}html[data-ri-theme="dark"] .prog-bulk-note,html[data-ri-theme="dark"] .prog-map-note{border-color:#304D70;background:#102C4D;color:#C2D3E8}
@media(max-width:1180px){.prog-admin{grid-template-columns:225px minmax(0,1fr);gap:18px}.prog-dashboard-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.prog-dashboard-grid{grid-template-columns:1fr}.prog-dashboard-aside{grid-template-columns:1fr 1fr;margin-top:0}.prog-cadence-flow article{min-height:155px}}
@media(max-width:980px){.prog-admin{grid-template-columns:1fr}.prog-admin-side{position:static;min-height:auto;padding:13px}.prog-admin-brand{padding-bottom:13px}.prog-admin-side nav{display:flex;gap:5px;overflow-x:auto;padding-bottom:3px}.prog-admin-side nav a{flex:0 0 auto}.prog-admin-nav-label,.prog-admin-side nav hr{display:none}.prog-dashboard-hero{grid-template-columns:1fr}.prog-dashboard-hero-art{display:none}.prog-collection-tools{align-items:stretch;flex-direction:column}.prog-page-tools{justify-content:flex-end}}
@media(max-width:760px){.prog-dashboard-hero{min-height:0;padding:28px 23px}.prog-dashboard-hero h1{font-size:2.25rem}.prog-dashboard-metrics{grid-template-columns:1fr 1fr}.prog-dashboard-grid,.prog-dashboard-aside{grid-template-columns:1fr}.prog-cadence-flow{grid-template-columns:1fr 1fr;gap:8px}.prog-cadence-flow article,.prog-cadence-flow article:first-child,.prog-cadence-flow article:last-child{min-height:145px;border:1px solid var(--admin-line);border-radius:13px}.prog-cadence-flow article::after{display:none}.prog-admin-page-heading{align-items:flex-start!important;padding:22px!important}.prog-admin-page-heading::after{display:none}.prog-status-tabs{border-radius:12px}.prog-collection-panel>.prog-section-head{align-items:flex-start;flex-direction:column}.prog-bulk-actions{width:100%}.prog-bulk-actions .prog-btn{flex:1}.prog-list-search{display:grid;grid-template-columns:1fr auto}.prog-list-search label{grid-column:1/-1;max-width:none}.prog-page-tools{justify-content:flex-start;overflow-x:auto}.prog-editor-top-actions{width:100%}.prog-editor-top-actions .prog-btn{flex:1}.prog-editor-top-actions .prog-admin-heading-mark{display:none}}
@media(max-width:500px){.prog-dashboard-metrics{grid-template-columns:1fr}.prog-dashboard-metrics article{min-height:96px}.prog-editorial-list>a{grid-template-columns:auto minmax(0,1fr) auto}.prog-editorial-list>a>.bi-chevron-right{display:none}.editorial-numbers{min-width:44px}.prog-cadence-flow{grid-template-columns:1fr}.prog-cadence-flow article{min-height:0}.prog-dashboard-aside{grid-template-columns:1fr}.prog-bulk-actions{display:grid}.prog-bulk-actions .prog-btn{width:100%}.prog-page-tools a{flex:0 0 auto}}
@media(prefers-reduced-motion:reduce){.prog-publication-card,.prog-editorial-list>a{transition:none}}

/* V14 · Aulas de continuação */
.prog-project-contributions{overflow:hidden;border-color:#cfdcf1!important;background:linear-gradient(135deg,#fff 0%,#f8fbff 100%)!important}.prog-project-contributions>.prog-section-head{padding-bottom:18px;border-bottom:1px solid #e3eaf5}.prog-contribution-list{display:grid;gap:9px;margin-top:18px}.prog-contribution-list>a{display:grid;grid-template-columns:42px minmax(0,1fr) auto 18px;align-items:center;gap:12px;padding:13px 14px;border:1px solid #dbe4f2;border-radius:12px;background:#fff;color:#10244a;text-decoration:none;transition:.18s ease}.prog-contribution-list>a:hover{border-color:#83a8e7;box-shadow:0 8px 22px #0a2d6812;transform:translateY(-1px)}.prog-contribution-list>a>i:first-child{display:grid;place-items:center;width:42px;height:42px;border-radius:10px;background:#eef4ff;color:#1459c7;font-size:18px}.prog-contribution-list span{display:grid;gap:3px;min-width:0}.prog-contribution-list strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.prog-contribution-list small{color:#62708a}.prog-contribution-list em{font-style:normal}.prog-status-pill{padding:5px 9px;border-radius:999px;background:#edf1f7;color:#536079;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.prog-status-pill.publicado{background:#e3f7ed;color:#137049}.prog-status-pill.arquivado{background:#f2eafc;color:#7653a6}.prog-empty-soft{display:grid;justify-items:center;gap:8px;margin-top:18px;padding:34px!important;background:#f7faff!important;border:1px dashed #b9c9e1!important}.prog-empty-soft>i{font-size:28px;color:#2066ce}.prog-empty-soft h3,.prog-empty-soft p{margin:0}.prog-empty-soft p{max-width:560px;color:#65738c}
.prog-aporte-editor{display:grid;gap:18px}.prog-editor-topbar{position:sticky;top:8px;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 16px;border:1px solid #d8e1ef;border-radius:14px;background:#fffffff2;box-shadow:0 9px 30px #071b4014;backdrop-filter:blur(14px)}.prog-editor-topbar>div:first-child{display:grid;grid-template-columns:auto auto;align-items:center;column-gap:8px}.prog-editor-topbar small{grid-column:2;color:#687690}.prog-status-dot{width:9px;height:9px;border-radius:50%;background:#8995a9}.prog-status-dot.publicado{background:#22a46b;box-shadow:0 0 0 4px #22a46b1a}.prog-status-dot.arquivado{background:#825fb5}.prog-aporte-type-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.prog-aporte-type{cursor:pointer}.prog-aporte-type input{position:absolute;opacity:0;pointer-events:none}.prog-aporte-type span{display:grid;align-content:start;gap:6px;min-height:145px;padding:16px;border:1px solid #d9e2f0;border-radius:13px;background:#fff;transition:.18s ease}.prog-aporte-type i{display:grid;place-items:center;width:37px;height:37px;border-radius:10px;background:#eef4ff;color:#1459c7;font-size:17px}.prog-aporte-type strong{font-size:13px;color:#10244a}.prog-aporte-type small{color:#66738b;line-height:1.45}.prog-aporte-type:hover span{border-color:#94b2df;transform:translateY(-1px)}.prog-aporte-type input:checked+span{border-color:#195fc9;background:#f4f8ff;box-shadow:inset 0 0 0 1px #195fc9,0 8px 22px #164f9e12}.prog-aporte-type input:focus-visible+span{outline:3px solid #ffca3a;outline-offset:2px}.prog-aporte-textarea{min-height:190px!important}.prog-editor-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 2px 28px}.prog-editor-footer>span{color:#63718a;font-size:12px}.prog-editor-footer>span i{margin-right:6px;color:#195fc9}
.prog-aportes{display:grid;gap:14px;margin:22px 0}.prog-aportes-heading{display:flex;align-items:end;justify-content:space-between;gap:15px}.prog-aportes-heading h2{margin:2px 0 0;font-size:20px}.prog-aportes-list{display:grid;gap:11px}.prog-aporte-card{--aporte-color:#1762cf;--aporte-bg:#edf5ff;display:grid;grid-template-columns:46px minmax(0,1fr);gap:14px;padding:17px 18px;border:1px solid #cbd9ec;border-left:4px solid var(--aporte-color);border-radius:13px;background:linear-gradient(120deg,var(--aporte-bg),#fff 55%)}.prog-aporte-card.tipo-material{--aporte-color:#7256b5;--aporte-bg:#f3efff}.prog-aporte-card.tipo-desafio{--aporte-color:#d47b00;--aporte-bg:#fff7e7}.prog-aporte-card.tipo-aviso{--aporte-color:#bd3b52;--aporte-bg:#fff0f3}.prog-aporte-card.tipo-link{--aporte-color:#078078;--aporte-bg:#eafaf7}.prog-aporte-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:11px;background:var(--aporte-color);color:#fff;font-size:19px}.prog-aporte-card small{color:var(--aporte-color);font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.prog-aporte-card h3{margin:3px 0 7px;font-size:16px}.prog-aporte-copy{color:#34435e;line-height:1.68}.prog-aporte-link{display:inline-flex;align-items:center;gap:6px;margin-top:11px;color:var(--aporte-color);font-size:12px;font-weight:900;text-decoration:none}.prog-aporte-link:hover{text-decoration:underline}.prog-session-v6 .prog-aportes{margin:16px 0}.prog-session-v6 .prog-aportes-heading h2{font-size:16px}.prog-session-v6 .prog-aporte-card{padding:14px}
html[data-ri-theme="dark"] .prog-project-contributions,html[data-ri-theme="dark"] .prog-contribution-list>a,html[data-ri-theme="dark"] .prog-editor-topbar,html[data-ri-theme="dark"] .prog-aporte-type span{background:#0d1d38!important;border-color:#233b61!important;color:#eaf2ff}html[data-ri-theme="dark"] .prog-contribution-list strong,html[data-ri-theme="dark"] .prog-aporte-type strong{color:#eef5ff}html[data-ri-theme="dark"] .prog-contribution-list small,html[data-ri-theme="dark"] .prog-aporte-type small,html[data-ri-theme="dark"] .prog-editor-footer>span{color:#9fafc8}html[data-ri-theme="dark"] .prog-aporte-type input:checked+span{background:#102c55!important;border-color:#4f8fea!important}html[data-ri-theme="dark"] .prog-aporte-card{background:linear-gradient(120deg,#102945,#0c1b34 58%);border-color:#294266}html[data-ri-theme="dark"] .prog-aporte-card h3{color:#eef5ff}html[data-ri-theme="dark"] .prog-aporte-copy{color:#bac7dc}
@media(max-width:1000px){.prog-aporte-type-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.prog-aporte-type:last-child{grid-column:span 2}.prog-editor-topbar{position:static}}@media(max-width:700px){.prog-editor-topbar,.prog-editor-footer{align-items:stretch;flex-direction:column}.prog-editor-topbar .prog-actions,.prog-editor-footer .prog-actions{display:grid;grid-template-columns:1fr 1fr}.prog-editor-topbar .prog-btn,.prog-editor-footer .prog-btn{justify-content:center}.prog-aporte-type-grid{grid-template-columns:1fr}.prog-aporte-type:last-child{grid-column:auto}.prog-aporte-type span{min-height:0}.prog-contribution-list>a{grid-template-columns:38px minmax(0,1fr) 16px}.prog-contribution-list .prog-status-pill{grid-column:2;justify-self:start}.prog-aporte-card{grid-template-columns:38px minmax(0,1fr);padding:14px}.prog-aporte-icon{width:36px;height:36px}}
.prog-admin-page-heading .prog-admin-heading-actions{flex-wrap:wrap}
.prog-status.status-atualizar{background:#e9f2ff;color:#195dae}.prog-status.status-publicar{background:#e5f6ed;color:#16704a}.prog-status.status-arquivar{background:#fff0ee;color:#a53c34}

/* V14 · Aportes exibidos como aulas de continuação */
.prog-lesson-card.is-continuation{margin-left:34px;border-color:#C7D9F4;border-left-color:#1769E0;background:linear-gradient(135deg,#F4F8FF 0%,#FFF 62%)}
.prog-lesson-card.is-continuation .prog-lesson-number{background:#DDEBFF;color:#135CBF}
.prog-lesson-card.is-continuation small,.prog-lesson-card.is-continuation strong{color:#145DBF}
.prog-lesson-card.is-continuation.is-complete{border-left-color:#20946D}
.prog-lesson-card.is-continuation.is-complete .prog-lesson-number{background:#E5F5EE;color:#187252}
.prog-lesson-card.is-progression-locked{cursor:not-allowed;filter:saturate(.55);opacity:.68;border-style:dashed;box-shadow:none}
.prog-lesson-card.is-progression-locked:hover{transform:none;border-color:var(--prog-border);box-shadow:none}
.prog-lesson-card.is-progression-locked .prog-lesson-number{background:#E8EDF5;color:#687792}
.prog-lesson-card.is-progression-locked [data-lesson-action]{color:#687792}
.prog-continuation-hero{background:radial-gradient(circle at 88% 4%,rgba(255,216,91,.24),transparent 27%),linear-gradient(135deg,#0B2B68,#1769E0)!important}
.prog-continuation-body{padding:0!important;overflow:hidden}
.prog-continuation-heading{padding:30px 32px 24px;border-bottom:1px solid #D9E4F3;background:linear-gradient(135deg,#F5F9FF,#FFF)}
.prog-continuation-heading h2{margin:8px 0 5px}
.prog-continuation-heading p{max-width:760px;margin:0;color:#607089;line-height:1.65}
.prog-continuation-blocks{display:grid;padding:0 32px}
.prog-continuation-block{--continuation-color:#1769E0;display:grid;grid-template-columns:46px minmax(0,1fr);gap:15px;padding:25px 0;border-bottom:1px solid #E0E7F1}
.prog-continuation-block:last-child{border-bottom:0}
.prog-continuation-block.tipo-material{--continuation-color:#7455BD}.prog-continuation-block.tipo-desafio{--continuation-color:#D47B00}.prog-continuation-block.tipo-aviso{--continuation-color:#BD3B52}.prog-continuation-block.tipo-link{--continuation-color:#078078}
.prog-continuation-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:color-mix(in srgb,var(--continuation-color) 13%,#FFF);color:var(--continuation-color);font-size:18px}
.prog-continuation-block small{color:var(--continuation-color);font-size:.61rem;font-weight:950;letter-spacing:.11em;text-transform:uppercase}
.prog-continuation-block h3{margin:4px 0 8px;font-size:1.05rem}
.prog-continuation-copy{color:#34435E;line-height:1.75}
html[data-ri-theme="dark"] .prog-lesson-card.is-continuation{border-color:#31527A;background:linear-gradient(135deg,#102B4E,#142239 65%)}
html[data-ri-theme="dark"] .prog-lesson-card.is-continuation .prog-lesson-number{background:#173B65;color:#BBD7FF}
html[data-ri-theme="dark"] .prog-continuation-body{border-color:#354763;background:#142239}
html[data-ri-theme="dark"] .prog-continuation-heading{border-color:#30445F;background:linear-gradient(135deg,#102B4E,#142239)}
html[data-ri-theme="dark"] .prog-continuation-heading h2,html[data-ri-theme="dark"] .prog-continuation-block h3{color:#F1F4FB}
html[data-ri-theme="dark"] .prog-continuation-heading p,html[data-ri-theme="dark"] .prog-continuation-copy{color:#B7C4D7}
html[data-ri-theme="dark"] .prog-continuation-block{border-color:#30445F}
@media(max-width:650px){.prog-lesson-card.is-continuation{margin-left:12px}.prog-continuation-heading{padding:24px 21px 20px}.prog-continuation-blocks{padding:0 21px}.prog-continuation-block{grid-template-columns:38px minmax(0,1fr);gap:12px}.prog-continuation-icon{width:36px;height:36px}}

/* V15 · Continuações tratadas como aulas completas */
.prog-lesson-card.is-continuation{margin-left:0;border-left-width:1px}
.prog-lesson-card.is-continuation .prog-lesson-number{font-variant-numeric:tabular-nums}
.prog-continuation-admin-table{min-width:1080px}
.prog-continuation-admin-table td{vertical-align:top}
.prog-continuation-admin-table td:nth-child(2){min-width:280px}
.prog-continuation-admin-table td:nth-child(4){min-width:230px}
.prog-continuation-order{display:block;width:max-content;margin-bottom:6px;padding:4px 8px;border-radius:999px;background:#EAF2FF;color:#145DBF;font-size:.61rem;font-weight:950;letter-spacing:.09em}
.prog-continuation-block-list summary{display:flex;align-items:center;gap:7px;width:max-content;cursor:pointer;color:#174F9E;font-size:.76rem;font-weight:850;list-style:none}
.prog-continuation-block-list summary::-webkit-details-marker{display:none}
.prog-continuation-block-list summary:after{content:'+';display:grid;place-items:center;width:20px;height:20px;border-radius:6px;background:#EDF3FC;color:#1759B8;font-size:14px}
.prog-continuation-block-list[open] summary:after{content:'−'}
.prog-continuation-block-list ol{display:grid;gap:7px;margin:10px 0 0;padding:0;list-style:none}
.prog-continuation-block-list li{display:grid;grid-template-columns:29px minmax(150px,1fr) auto;align-items:center;gap:8px;padding:8px;border:1px solid #DCE5F1;border-radius:9px;background:#F9FBFE}
.prog-continuation-block-list li>span{display:grid;place-items:center;width:27px;height:27px;border-radius:7px;background:#E7F0FF;color:#155AB9;font-size:.65rem;font-weight:900}
.prog-continuation-block-list li>div{display:grid;gap:2px}
.prog-continuation-block-list li strong{font-size:.7rem}
.prog-continuation-block-list li small{font-size:.61rem;color:#67758C}
.prog-continuation-block-list li>a{color:#165DBD;font-size:.65rem;font-weight:850;text-decoration:none}
.prog-continuation-status-detail{display:block;margin-top:7px;color:#69778D;line-height:1.4}
html[data-ri-theme="dark"] .prog-continuation-order{background:#173B65;color:#C6DDFF}
html[data-ri-theme="dark"] .prog-continuation-block-list summary{color:#BBD7FF}
html[data-ri-theme="dark"] .prog-continuation-block-list summary:after,html[data-ri-theme="dark"] .prog-continuation-block-list li>span{background:#173B65;color:#C6DDFF}
html[data-ri-theme="dark"] .prog-continuation-block-list li{border-color:#30445F;background:#10213A}
html[data-ri-theme="dark"] .prog-continuation-block-list li strong{color:#EEF5FF}
@media(max-width:650px){.prog-lesson-card.is-continuation{margin-left:0}.prog-continuation-admin-table{min-width:980px}}

/* V16 · Aula de continuação com o mesmo desenho das demais aulas */
.prog-area-projeto .prog-continuation-hero{background:radial-gradient(circle at 88% 5%,rgba(246,199,68,.24),transparent 27%),linear-gradient(125deg,#432187,#6933CA 60%,#9259EB)!important}
.prog-continuation-lesson-steps .prog-continuation-intro{margin:-2px 0 7px;color:#5C6A80;line-height:1.65}
.prog-continuation-step{--continuation-step-color:#1769E0}
.prog-continuation-step.tipo-material{--continuation-step-color:#7455BD}
.prog-continuation-step.tipo-desafio{--continuation-step-color:#D47B00}
.prog-continuation-step.tipo-aviso{--continuation-step-color:#BD3B52}
.prog-continuation-step.tipo-link{--continuation-step-color:#078078}
.prog-area-projeto .prog-continuation-step header>span{background:linear-gradient(145deg,color-mix(in srgb,var(--continuation-step-color) 78%,#18234A),var(--continuation-step-color));box-shadow:0 8px 18px color-mix(in srgb,var(--continuation-step-color) 24%,transparent)}
.prog-area-projeto .prog-continuation-step small{color:var(--continuation-step-color)}
.prog-continuation-step small i{margin-right:4px}
.prog-continuation-step .prog-aporte-link{width:max-content;padding:8px 11px;border:1px solid color-mix(in srgb,var(--continuation-step-color) 28%,#DCE4EF);border-radius:9px;background:color-mix(in srgb,var(--continuation-step-color) 7%,#FFF);color:var(--continuation-step-color)}
html[data-ri-theme="dark"] .prog-continuation-lesson-steps .prog-continuation-intro{color:#AAB8CC}
html[data-ri-theme="dark"] .prog-continuation-step .prog-aporte-link{border-color:color-mix(in srgb,var(--continuation-step-color) 45%,#30445F);background:color-mix(in srgb,var(--continuation-step-color) 13%,#142239)}

/* Comunidade · copiloto contextual dos Projetos Guiados */
.prog-community-copilot{--community-blue:#0D3D91;--community-blue-deep:#071D46;--community-turquoise:#18A7A2;--community-gray:#EEF2F6;position:fixed;inset:0;z-index:1080;pointer-events:none}
.prog-community-toggle{position:fixed;right:-14px;top:58%;display:flex;align-items:center;gap:11px;min-height:58px;max-width:62px;padding:8px 18px 8px 9px;border:1px solid rgba(255,255,255,.5);border-radius:18px 0 0 18px;background:linear-gradient(145deg,rgba(13,61,145,.94),rgba(7,29,70,.96));color:#FFF;box-shadow:0 12px 30px rgba(7,29,70,.22);cursor:pointer;overflow:hidden;opacity:.52;filter:saturate(.82);pointer-events:auto;transform:translateY(-50%);transition:right .22s ease,max-width .28s ease,opacity .22s ease,filter .22s ease,box-shadow .22s ease}
.prog-community-toggle:hover,.prog-community-toggle:focus-visible{right:10px;max-width:210px;opacity:1;filter:saturate(1);box-shadow:0 18px 42px rgba(7,29,70,.3)}
.prog-community-toggle:focus-visible{outline:3px solid #F6C744;outline-offset:3px}
.prog-community-toggle-icon{position:relative;display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:13px;background:linear-gradient(145deg,#2B70D8,#124AAB);font-size:18px;box-shadow:inset 0 1px rgba(255,255,255,.28)}
.prog-community-toggle-icon b{position:absolute;right:-2px;top:-2px;width:10px;height:10px;border:2px solid #0D3D91;border-radius:50%;background:var(--community-turquoise);box-shadow:0 0 0 3px rgba(24,167,162,.16)}
.prog-community-toggle-copy{display:grid;min-width:130px;text-align:left;white-space:nowrap;opacity:0;transform:translateX(8px);transition:opacity .18s ease,transform .22s ease}
.prog-community-toggle:hover .prog-community-toggle-copy,.prog-community-toggle:focus-visible .prog-community-toggle-copy{opacity:1;transform:none}
.prog-community-toggle-copy small{color:#9FE8E4;font-size:.56rem;font-weight:950;letter-spacing:.1em}
.prog-community-toggle-copy strong{font-size:.9rem;font-weight:900}
.prog-community-copilot.is-open .prog-community-toggle{right:-80px;opacity:0;pointer-events:none}
.prog-community-drawer{position:fixed;right:18px;top:86px;bottom:18px;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;width:min(440px,calc(100vw - 34px));overflow:hidden;border:1px solid #BFCBDA;border-top:4px solid var(--community-turquoise);border-radius:22px;background:var(--community-gray);box-shadow:0 28px 80px rgba(7,29,70,.3);pointer-events:auto;transform:translateX(calc(100% + 38px));opacity:0;transition:transform .24s ease,opacity .2s ease}
.prog-community-copilot.is-open .prog-community-drawer{transform:none;opacity:1}
.prog-community-drawer>header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:17px 18px;background:linear-gradient(125deg,var(--community-blue-deep),var(--community-blue));color:#FFF}
.prog-community-drawer>header>div{display:grid;gap:3px}.prog-community-drawer>header span{color:#8DE1DD;font-size:.59rem;font-weight:950;letter-spacing:.11em}.prog-community-drawer>header strong{font-size:1rem;font-weight:900}
.prog-community-drawer>header button{display:grid;place-items:center;width:36px;height:36px;border:1px solid rgba(255,255,255,.3);border-radius:11px;background:rgba(255,255,255,.1);color:#FFF;cursor:pointer}.prog-community-drawer>header button:hover{background:rgba(255,255,255,.2)}.prog-community-drawer>header button:focus-visible{outline:3px solid #F6C744;outline-offset:2px}
.prog-community-context{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;padding:11px 16px;border-bottom:1px solid #CFD8E4;background:#FFF;color:#233551}
.prog-community-context>i{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:#DDF5F3;color:#087A76;font-size:17px}.prog-community-context div{display:grid;gap:2px;min-width:0}.prog-community-context small{color:#758197;font-size:.59rem;font-weight:850;text-transform:uppercase;letter-spacing:.07em}.prog-community-context strong{overflow:hidden;font-size:.73rem;text-overflow:ellipsis;white-space:nowrap}
.prog-community-drawer iframe{width:100%;height:100%;min-height:0;border:0;background:#FFF}
.prog-community-drawer>footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-top:1px solid #CFD8E4;background:#F8FAFC;color:#6E7A8F;font-size:.64rem}.prog-community-drawer>footer a{display:inline-flex;align-items:center;gap:5px;color:#124FAE;font-weight:850;text-decoration:none;white-space:nowrap}.prog-community-drawer>footer a:hover{text-decoration:underline}
html[data-ri-theme="dark"] .prog-community-drawer{border-color:#35506F;background:#101F35}html[data-ri-theme="dark"] .prog-community-context{border-color:#30455F;background:#152943;color:#EAF2FF}html[data-ri-theme="dark"] .prog-community-context small{color:#9EADC1}html[data-ri-theme="dark"] .prog-community-drawer>footer{border-color:#30455F;background:#102039;color:#AAB7C9}html[data-ri-theme="dark"] .prog-community-drawer>footer a{color:#83B6FF}
@media(max-width:700px){.prog-community-toggle{top:auto;bottom:20px;right:-12px;transform:none}.prog-community-toggle:hover,.prog-community-toggle:focus-visible{right:8px}.prog-community-drawer{inset:72px 8px 8px;width:auto;border-radius:18px}.prog-community-drawer>footer span{display:none}.prog-community-drawer>footer{justify-content:flex-end}}
@media(prefers-reduced-motion:reduce){.prog-community-toggle,.prog-community-toggle-copy,.prog-community-drawer{transition:none}}
/* Identificação opcional e sincronização do projeto */
.prog-student-sync{position:relative;display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:13px;margin:0 0 18px;padding:13px 16px;border:1px solid #d4dfeb;border-radius:17px;background:linear-gradient(120deg,#fff,#f0f5fa);box-shadow:0 10px 28px rgba(16,39,69,.08)}
.prog-student-sync-avatar{display:grid;place-items:center;width:46px;height:46px;border-radius:15px;color:#fff;background:linear-gradient(145deg,#207cc2,#123d71);font-size:1.2rem}.prog-student-sync-avatar.is-guest{color:#40526a;background:#e1e7ee}
.prog-student-sync small{display:block;color:#1a6aa7;font-size:.64rem;font-weight:900;letter-spacing:.12em}.prog-student-sync strong{display:block;color:#17283f;font-size:.95rem}.prog-student-sync p{margin:2px 0 0;color:#667387;font-size:.78rem}.prog-student-sync>a{display:inline-flex;align-items:center;gap:7px;padding:9px 12px;border-radius:10px;color:#174f7e;background:#e0edf8;text-decoration:none;font-size:.78rem;font-weight:850}.prog-sync-status{position:absolute;right:16px;bottom:-16px;color:#607086;font-size:.67rem}
@media(max-width:680px){.prog-student-sync{grid-template-columns:42px 1fr}.prog-student-sync>a{grid-column:1/-1;justify-content:center}.prog-sync-status{display:none}}
.prog-identified-student{display:flex;align-items:center;gap:12px;margin:18px 0;padding:14px;border:1px solid #cfdeeb;border-radius:14px;background:#f0f6fb}.prog-identified-student>i{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;color:#fff;background:#1a6ba8}.prog-identified-student small,.prog-attendance header small{display:block;color:#2274ae;font-size:.66rem;font-weight:900;letter-spacing:.11em}.prog-identified-student strong{color:#1b2c43}
.prog-attendance{margin:18px 0;padding:16px;border:1px solid #d7e0ea;border-radius:16px;background:#f8fafc}.prog-attendance header{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:11px}.prog-attendance header strong{display:block;color:#192b43;font-size:1.1rem}.prog-attendance header>span{color:#6d7888;font-size:.75rem}.prog-attendance-member{display:flex;align-items:center;gap:10px;padding:10px 11px;margin-top:7px;border:1px solid #e0e6ed;border-radius:11px;background:#fff;cursor:pointer}.prog-attendance-member input{width:18px;height:18px;accent-color:#1668a7}.prog-attendance-member span{display:flex;flex-direction:column}.prog-attendance-member small{color:#758196;font-size:.7rem}.prog-attendance>p{margin:13px 0 0;color:#5f6d80;font-size:.77rem}
.prog-tracking-tabs{display:flex;gap:7px;margin:0 0 20px;padding:6px;border:1px solid #d9e2ec;border-radius:14px;background:#eef3f8;overflow:auto}.prog-tracking-tabs a{padding:10px 15px;border-radius:10px;color:#526178;text-decoration:none;font-weight:800;white-space:nowrap}.prog-tracking-tabs a.ativo{color:#fff;background:linear-gradient(135deg,#174f86,#0c2c56);box-shadow:0 7px 16px rgba(12,44,86,.18)}
.prog-attendance-admin{margin:20px 0;padding:17px;border-radius:15px;background:#f1f5f9}.prog-attendance-admin>p{color:#647287}.prog-attendance-admin>label{display:grid;grid-template-columns:minmax(180px,1fr) minmax(230px,.8fr);align-items:center;gap:12px;padding:9px 0;border-top:1px solid #dce4ec}.prog-attendance-admin>label span{display:flex;flex-direction:column}.prog-attendance-admin small{color:#748196}
.prog-tracking-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:15px}.prog-progress-admin{padding:18px}.prog-progress-admin header{display:flex;justify-content:space-between;gap:15px}.prog-progress-admin header small{color:#2675ad;font-size:.65rem;font-weight:900;letter-spacing:.1em}.prog-progress-admin header h2{margin:3px 0}.prog-progress-admin header p{margin:0;color:#69768a}.prog-progress-admin header>strong{color:#174f86;font-size:1.7rem}.prog-progress-admin form{display:grid;gap:8px;margin-top:12px}
.prog-groups-layout{display:grid;grid-template-columns:minmax(330px,.8fr) minmax(420px,1.2fr);gap:18px;align-items:start}.prog-group-list{padding:8px}.prog-group-list>a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border-radius:11px;color:#26364e;text-decoration:none}.prog-group-list>a:hover,.prog-group-list>a.ativo{background:#e8f1f9}.prog-group-list span{display:flex;flex-direction:column}.prog-group-list small{color:#718096}.prog-group-list b{color:#1c6a9e;font-size:.68rem}.prog-group-members{display:grid;gap:7px;margin:15px 0}.prog-group-members>label{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:10px;border:1px solid #dfe6ee;border-radius:11px}.prog-group-members span{display:flex;flex-direction:column}.prog-group-members small{color:#748197}.prog-group-members input[type=checkbox]{width:18px;height:18px;accent-color:#176ba7}.prog-group-members input[type=radio]{width:17px;height:17px;accent-color:#e8a300}
@media(max-width:900px){.prog-groups-layout{grid-template-columns:1fr}.prog-attendance-admin>label{grid-template-columns:1fr}}

/* Código primeiro; prévia aberta sob solicitação. */
.prog-modal-body{display:block}.prog-modal-body>#prog-modal-preview:not([hidden]){width:100%;margin-top:16px}.prog-modal-body>[data-code-preview-toggle]{margin-top:16px}.prog-details-aside>[data-details-preview-toggle]{margin-bottom:12px}
