/* CAMADA-MED V31 — diagnóstico educacional progressivo + resultado visual */
.cm-diagnostic-v31 [hidden]{display:none!important}

.cm-diagnostic-v31{align-items:stretch;position:relative;overflow:hidden}
.cm-diagnostic-v31:before{content:"";position:absolute;inset:-40% auto -40% -18%;width:42%;background:linear-gradient(110deg,transparent 20%,rgba(255,244,202,.06) 42%,rgba(243,215,131,.16) 50%,rgba(255,244,202,.05) 59%,transparent 78%);filter:blur(9px);transform:skewX(-16deg);animation:cmV31Sweep 14s linear infinite;pointer-events:none}
@keyframes cmV31Sweep{0%{translate:-140% 0}100%{translate:430% 0}}
.cm-diagnostic-intro{align-self:center;position:relative;z-index:2}
.cm-diagnostic-preview{display:flex;gap:9px;flex-wrap:wrap;margin-top:22px}
.cm-diagnostic-preview span{padding:9px 12px;border:1px solid rgba(243,215,131,.22);border-radius:999px;background:rgba(0,0,0,.24);color:#f3d783;font:700 10px/1 IBM Plex Mono,monospace;letter-spacing:.08em;text-transform:uppercase}
#leadForm{position:relative;z-index:2;min-width:0;border:1px solid rgba(243,215,131,.2);border-radius:24px;padding:18px;background:linear-gradient(145deg,rgba(4,22,19,.78),rgba(1,5,4,.52));box-shadow:inset 0 1px rgba(255,255,255,.035),0 24px 70px rgba(0,0,0,.28)}
.cm-quiz-head{margin-bottom:16px}
.cm-quiz-head>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.cm-quiz-head span{color:rgba(255,248,235,.62);font:700 10px/1 IBM Plex Mono,monospace;letter-spacing:.13em}
.cm-quiz-head strong{color:#f3d783;font:800 12px/1 IBM Plex Mono,monospace;letter-spacing:.08em}
.cm-quiz-progress{height:6px;border-radius:999px;background:rgba(255,255,255,.055);overflow:hidden;box-shadow:inset 0 0 0 1px rgba(243,215,131,.08)}
.cm-quiz-progress i{display:block;height:100%;width:16.666%;border-radius:inherit;background:linear-gradient(90deg,#9e6a22,#f3d783,#fff0b7);box-shadow:0 0 16px rgba(243,215,131,.38);transition:width .42s cubic-bezier(.2,.8,.2,1)}
.cm-quiz-wizard{display:block;min-height:300px}
.cm-quiz-step{display:none;position:relative;min-height:300px;padding:24px!important;background:radial-gradient(circle at 92% 8%,rgba(243,215,131,.09),transparent 28%),rgba(0,0,0,.2)!important;animation:cmStepIn .34s ease both}
.cm-quiz-step.is-active{display:block}
@keyframes cmStepIn{from{opacity:0;transform:translateY(8px) scale(.992)}to{opacity:1;transform:none}}
.cm-question-number{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:30px;padding:0 10px;margin-bottom:14px;border:1px solid rgba(243,215,131,.28);border-radius:999px;color:#f3d783;background:rgba(243,215,131,.065);font:800 11px/1 IBM Plex Mono,monospace;letter-spacing:.08em}
.cm-quiz-step h3,.cm-quiz-contact h3{margin:0 0 16px!important;font:600 clamp(23px,2.2vw,31px)/1.08 Playfair Display,serif!important;letter-spacing:-.02em;color:#fff8eb!important}
.cm-quiz-step .choice{min-height:56px;margin-top:10px;padding:13px 15px;border-radius:16px;gap:14px;transition:border-color .18s ease,background .18s ease,transform .18s ease,box-shadow .18s ease}
.cm-quiz-step .choice:hover{transform:translateY(-1px);border-color:rgba(243,215,131,.46)}
.cm-quiz-step .choice-copy{flex:1;text-align:left;font-size:14px;line-height:1.28}
.cm-quiz-step .choice-dot{flex:0 0 auto!important;width:19px!important;height:19px!important}
.cm-quiz-step .choice.active{background:linear-gradient(100deg,rgba(243,215,131,.13),rgba(243,215,131,.045));box-shadow:0 0 0 1px rgba(243,215,131,.18),0 12px 34px rgba(0,0,0,.22)}
.cm-quiz-nav{display:flex;gap:10px;align-items:center;justify-content:flex-end;margin-top:15px}
.cm-quiz-nav .btn{min-height:46px;padding:13px 16px}
.cm-quiz-nav [data-quiz-next]:disabled{opacity:.42;cursor:not-allowed}


.cm-quiz-tiebreak,.cm-quiz-loading{min-height:300px;padding:24px;border:1px solid rgba(243,215,131,.18);border-radius:22px;background:radial-gradient(circle at 88% 0,rgba(243,215,131,.1),transparent 32%),rgba(0,0,0,.18);animation:cmStepIn .34s ease both}
.cm-quiz-tiebreak h3,.cm-quiz-loading h3{margin:0 0 12px;font:600 clamp(23px,2.2vw,31px)/1.08 Playfair Display,serif;letter-spacing:-.02em;color:#fff8eb}
.cm-quiz-tiebreak p,.cm-quiz-loading p{margin:0 0 16px;color:rgba(255,248,235,.7)}
.cm-tiebreak-options{display:grid;gap:10px;margin-top:18px}
.cm-tiebreak-choice{min-height:62px!important;margin:0!important}
.cm-quiz-loading{text-align:center;display:grid;place-items:center;align-content:center;gap:12px}
.cm-loading-orbit{width:90px;height:90px;border-radius:50%;position:relative;border:1px solid rgba(243,215,131,.22);box-shadow:0 0 45px rgba(243,215,131,.1),inset 0 0 25px rgba(243,215,131,.05)}
.cm-loading-orbit i,.cm-loading-orbit b{position:absolute;border-radius:50%}
.cm-loading-orbit i{inset:10px;border:2px solid transparent;border-top-color:#f3d783;border-right-color:#c8912e;animation:cmOrbit 1.15s linear infinite}
.cm-loading-orbit b{width:14px;height:14px;left:50%;top:50%;translate:-50% -50%;background:#f3d783;box-shadow:0 0 25px #f3d783}
@keyframes cmOrbit{to{transform:rotate(360deg)}}

/* Resultado V31 */
.cm-profile-result{display:grid;gap:18px}
.cm-profile-hero{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:20px;align-items:center;padding:22px;border:1px solid rgba(243,215,131,.26);border-radius:22px;background:radial-gradient(circle at 84% 16%,rgba(243,215,131,.14),transparent 30%),linear-gradient(145deg,rgba(6,33,28,.78),rgba(0,0,0,.4));overflow:hidden;position:relative}
.cm-profile-hero:after{content:"";position:absolute;inset:-40% auto -40% -40%;width:28%;background:linear-gradient(110deg,transparent,rgba(255,255,255,.05),rgba(243,215,131,.16),rgba(255,255,255,.04),transparent);transform:skewX(-18deg);animation:cmV31Sweep 18s linear infinite}
.cm-profile-copy{position:relative;z-index:2}
.cm-profile-eyebrow{color:#f3d783;font:800 10px/1 IBM Plex Mono,monospace;letter-spacing:.14em;text-transform:uppercase}
.cm-profile-copy h3{margin:10px 0 8px;color:#fff8eb;font:600 clamp(30px,4vw,48px)/.98 Playfair Display,serif;letter-spacing:-.035em}
.cm-profile-copy p{margin:0;color:rgba(255,248,235,.72)}
.cm-profile-score{position:relative;z-index:2;aspect-ratio:1;border:1px solid rgba(243,215,131,.32);border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,rgba(243,215,131,.12),rgba(0,0,0,.28) 66%);box-shadow:0 0 60px rgba(243,215,131,.12),inset 0 0 34px rgba(243,215,131,.07)}
.cm-profile-score strong{display:block;color:#fff0b7;font:700 44px/1 Playfair Display,serif;text-align:center}
.cm-profile-score span{display:block;margin-top:6px;color:rgba(255,248,235,.58);font:700 9px/1.35 IBM Plex Mono,monospace;letter-spacing:.09em;text-transform:uppercase;text-align:center;padding:0 14px}
.cm-axis-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.cm-axis-card{padding:15px;border:1px solid rgba(243,215,131,.17);border-radius:17px;background:rgba(0,0,0,.22)}
.cm-axis-card header{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-bottom:10px}
.cm-axis-card strong{color:#fff8eb;font-size:12px}
.cm-axis-card b{color:#f3d783;font:800 12px/1 IBM Plex Mono,monospace}
.cm-axis-bar{height:7px;border-radius:999px;background:rgba(255,255,255,.055);overflow:hidden}
.cm-axis-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#8f6220,#f3d783,#fff0b7);box-shadow:0 0 14px rgba(243,215,131,.32)}
.cm-result-note{padding:12px 14px;border-left:2px solid rgba(243,215,131,.55);background:rgba(243,215,131,.055);color:rgba(255,248,235,.62);font-size:12px;border-radius:0 12px 12px 0}
.cm-route-roadmap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:16px 0 20px}
.cm-road-step{position:relative;padding:15px;border:1px solid rgba(243,215,131,.18);border-radius:17px;background:rgba(0,0,0,.22)}
.cm-road-step b{display:grid;place-items:center;width:30px;height:30px;margin-bottom:10px;border-radius:50%;border:1px solid rgba(243,215,131,.34);color:#f3d783;font:800 11px/1 IBM Plex Mono,monospace}
.cm-road-step strong{display:block;color:#fff8eb;font-size:12px;line-height:1.25}
.cm-road-step span{display:block;margin-top:5px;color:rgba(255,248,235,.56);font-size:11px;line-height:1.35}
.cm-share-result{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.cm-share-result .btn{min-height:44px;padding:12px 16px}

@media(max-width:920px){
 .cm-diagnostic-v31{grid-template-columns:1fr!important;padding:18px!important}
 .cm-diagnostic-intro{padding:4px 4px 0}
 #leadForm{padding:13px}
 .cm-quiz-step,.cm-quiz-tiebreak,.cm-quiz-loading{padding:18px;min-height:330px}
 .cm-quiz-wizard{min-height:330px}
 .cm-quiz-nav{justify-content:stretch;flex-wrap:wrap}
 .cm-quiz-nav .btn{flex:1 1 auto}
 .cm-profile-hero{grid-template-columns:1fr}
 .cm-profile-score{width:150px;justify-self:start}
 .cm-axis-grid{grid-template-columns:1fr}
 .cm-route-roadmap{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:520px){
 .cm-quiz-nav .btn{width:100%;flex-basis:100%}
 .cm-route-roadmap{grid-template-columns:1fr}
 .cm-profile-score{width:132px}
}
@media(prefers-reduced-motion:reduce){.cm-diagnostic-v31:before,.cm-profile-hero:after{animation:none!important}.cm-quiz-step,.cm-quiz-tiebreak,.cm-quiz-loading{animation:none!important}.cm-loading-orbit i{animation:none!important}}

/* V31 — rota visual conectada */
.cm-route-roadmap{position:relative}
.cm-route-roadmap:before{content:"";position:absolute;left:7%;right:7%;top:30px;height:2px;background:linear-gradient(90deg,rgba(143,98,32,.18),#f3d783,rgba(255,240,183,.72),#f3d783,rgba(143,98,32,.18));box-shadow:0 0 18px rgba(243,215,131,.3);z-index:0}
.cm-road-step{z-index:1;backdrop-filter:blur(14px)}
.cm-road-step b{background:linear-gradient(145deg,rgba(7,35,30,.98),rgba(1,5,4,.96));box-shadow:0 0 20px rgba(243,215,131,.12)}
@media(max-width:920px){.cm-route-roadmap:before{left:calc(25% - 1px);right:auto;top:22px;bottom:22px;width:2px;height:auto;background:linear-gradient(180deg,rgba(143,98,32,.18),#f3d783,rgba(255,240,183,.72),#f3d783,rgba(143,98,32,.18))}}
@media(max-width:520px){.cm-route-roadmap:before{left:29px}}
