/* V2.3 — compactação restrita ao bloco 02. */
#desafios{padding-block:70px}
#desafios .section-top{margin-bottom:28px}
#desafios .challenge-layout{gap:6%;align-items:start}
#desafios .challenge-intro h2{margin-top:0}
#desafios .challenge-intro>p{margin-top:16px;line-height:1.7}
#desafios .challenge-tabs{margin-top:24px}
#desafios .challenge-tabs button{min-height:72px;padding:14px 0;gap:16px}
#desafios .tab-copy{gap:3px}
#desafios .challenge-panel{display:flex;flex-direction:column;padding:22px 24px;border-radius:16px;min-height:var(--challenge-panel-min-height,0px)}
#desafios .challenge-panel>*{flex-shrink:0}
#desafios .challenge-panel-measure{position:absolute;inset:0 auto auto 0;visibility:hidden;pointer-events:none}
#desafios .panel-top{min-height:24px}
#desafios .panel-visual{width:100%;height:150px;max-width:380px;margin:8px auto 14px}
#desafios .network-node{width:70px;height:56px;padding:5px;gap:3px;font-size:9px}
#desafios .network-node svg{width:24px;height:24px}
#desafios .network-core{width:96px;height:72px;font-size:17px;box-shadow:0 4px 0 #d1d5c3}
#desafios .network-core small{font-size:6px;margin-top:5px}
#desafios #panel-title{font-size:26px;line-height:1.15;min-height:0}
#desafios .challenge-panel>p:not(.panel-solutions-label){font-size:12px;line-height:1.75;margin-top:12px;min-height:0}
#desafios .panel-solutions-label{display:none}
#desafios .panel-tags{margin-top:14px;margin-bottom:14px;min-height:68px;gap:6px}
#desafios .panel-solution{min-height:30px;padding:5px 8px;font-size:10.5px}
#desafios .panel-tags[data-count="1"] .panel-solution{min-width:170px;min-height:36px;width:auto;padding:8px 12px;font-size:14px}
#desafios .panel-cta{min-height:46px;padding:12px 15px;margin-top:auto}

@media(max-width:980px){
 #desafios{padding-block:60px}
 #desafios .challenge-layout{gap:24px}
 #desafios .challenge-tabs button{min-height:74px;gap:12px}
 #desafios .challenge-panel{padding:20px}
 #desafios .panel-visual{height:132px}
 #desafios .network-node{width:58px;height:50px;font-size:8px}
 #desafios .network-node svg{width:22px;height:22px}
 #desafios .network-core{width:82px;height:64px;font-size:15px}
 #desafios .network-core small{font-size:5px}
 #desafios #panel-title{font-size:23px;min-height:0}
 #desafios .panel-solution{font-size:10px}
}
@media(max-width:700px){
 #desafios{padding-block:50px}
 #desafios .section-top{margin-bottom:24px}
 #desafios .challenge-tabs{margin-top:20px}
 #desafios .challenge-tabs button{min-height:64px;padding:12px 0;gap:15px}
 #desafios .panel-visual{height:132px;max-width:340px;margin-block:8px 14px}
 #desafios .network-node{width:68px;height:54px;font-size:9px}
 #desafios .network-node svg{width:24px;height:24px}
 #desafios .network-core{width:90px;height:68px;font-size:16px}
 #desafios #panel-title{font-size:25.5px;min-height:0}
 #desafios .challenge-panel>p:not(.panel-solutions-label){line-height:1.7;margin-top:10px;min-height:0}
 #desafios .panel-tags{min-height:0;margin-top:14px}
 #desafios .panel-solution{min-height:30px;padding:5px 8px;font-size:10px}
 #desafios .panel-tags[data-count="1"] .panel-solution{min-width:0}
}
@media(max-width:370px){
 #desafios .challenge-panel{padding-inline:18px}
 #desafios .network-node{width:64px;font-size:8.5px}
 #desafios .network-core{width:84px;font-size:15px}
 #desafios #panel-title{font-size:24px}
}
