:root{--canvas:#fff;--layer:#f4f4f4;--layer-2:#fff;--layer-hover:#e8e8e8;--field:#f4f4f4;--border:#e0e0e0;--border-strong:#8d8d8d;--text:#161616;--text-2:#525252;--text-3:#6f6f6f;--text-on:#fff;--text-disabled:#a8a8a8;--accent:#006317;--accent-hover:#004f12;--accent-active:#003a0d;--accent-text:#006317;--accent-light:#e3f9e8;--accent-border:#9be8ad;--brand:#00d030;--error:#da1e28;--warning:orange;--info:#002b4a;--blue:#002b4a;--amber:#8a5a00;--red:#da1e28;--danger:#da1e28;--r-sm:0;--r:0;--r-lg:0;--font-ui:"Montserrat", system-ui, sans-serif;--font-display:"Montserrat", system-ui, sans-serif;--font-mono:"Montserrat", system-ui, sans-serif;--shadow-1:0 1px 2px #0000000f;--shadow-2:0 8px 24px #00000029;--green:var(--accent);--green-bright:#00d030;--green-dim:#006317;--green-glow:#00631729;--green-soft:var(--accent-light);--green-line:var(--accent-border);--white:#fff;--muted:var(--text-2);--muted-strong:var(--text);--line:var(--border);--line-strong:var(--border-strong);--navy-900:var(--canvas);--navy-800:var(--layer);--navy-700:var(--field);--navy-600:var(--border);--black:#fff;--amber-bright:#f1c21b;--amber-dim:#b28600;--amber-glow:#f1c21b38;--blue-dim:#0f62fe8c}*{box-sizing:border-box}html,body{background:var(--canvas);color:var(--text);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;min-height:100vh;margin:0;padding:0;overflow-x:hidden}.bg-layer{z-index:0;background:var(--canvas);position:fixed;inset:0}.bg-grid,.bg-rows{display:none}#root{z-index:5;min-height:100vh;position:relative}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-thumb{background:#c6c6c6}::-webkit-scrollbar-track{background:0 0}.app-header{border-bottom:1px solid var(--border);background:var(--canvas);z-index:50;justify-content:space-between;align-items:center;height:56px;padding:0 48px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:14px;display:flex}.brand-logo-img{width:auto;height:26px;display:block}.brand-divider{background:var(--border);width:1px;height:24px}.brand-text{line-height:1.25}.brand-text .name{color:var(--text);letter-spacing:0;font-size:13px;font-weight:600}.brand-text .tag{font-family:var(--font-mono);color:var(--text-3);letter-spacing:.02em;text-transform:uppercase;margin-top:1px;font-size:11px;font-weight:400}.header-right{align-items:center;gap:24px;display:flex}.breadcrumb{font-family:var(--font-mono);color:var(--text-3);letter-spacing:.02em;text-transform:uppercase;font-size:12px;font-weight:400}.breadcrumb span{color:var(--text);margin-left:6px}.score-pill{background:var(--layer);border:1px solid var(--border);border-radius:var(--r-sm);align-items:center;gap:10px;padding:7px 14px;font-size:12px;font-weight:400;display:flex}.score-pill .dot{background:var(--accent);border-radius:50%;width:7px;height:7px}.score-pill .label{color:var(--text-2)}.score-pill .value{color:var(--accent-text);font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:13px;font-weight:600}.progress-track{background:var(--border);height:3px;position:relative;overflow:hidden}.progress-fill{background:var(--accent);transition:width .5s cubic-bezier(.2,0,.38,.9);position:absolute;inset:0 auto 0 0}.main{grid-template-columns:300px 1fr;min-height:calc(100vh - 57px);display:grid}@supports (justify-content:safe center){.content{justify-content:safe center}}.sidebar{border-right:1px solid var(--border);background:var(--canvas);align-self:start;max-height:calc(100vh - 57px);padding:40px 28px;position:sticky;top:57px;overflow-y:auto}.sidebar h4{letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);margin:0 0 22px;font-size:11px;font-weight:600}.stage-list{flex-direction:column;gap:1px;display:flex}.stage{cursor:default;border-left:3px solid #0000;align-items:center;gap:14px;padding:13px 12px;transition:background .16s;display:flex}.stage.active{background:var(--accent-light);border-left-color:var(--accent)}.stage.done{opacity:.6}.stage-num{background:var(--canvas);border:1px solid var(--border-strong);width:26px;height:26px;font-family:var(--font-mono);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:500;transition:all .16s;display:flex}.stage.active .stage-num{background:var(--accent);border-color:var(--accent);color:var(--text-on)}.stage.done .stage-num{border-color:var(--accent);color:var(--accent);background:0 0}.stage-name{color:var(--text);font-size:13px;font-weight:500;line-height:1.35}.stage-name small{color:var(--text-3);margin-top:2px;font-size:12px;font-weight:400;display:block}.sidebar-spacer{height:40px}.sidebar-hint{background:var(--accent-light);border-left:3px solid var(--accent);color:var(--text-2);margin-top:28px;padding:16px;font-size:12px;line-height:1.5}.sidebar-hint strong{color:var(--accent-active);letter-spacing:.06em;text-transform:uppercase;margin-bottom:5px;font-size:11px;font-weight:600;display:block}.content{flex-direction:column;justify-content:center;min-height:calc(100vh - 57px);padding:56px 80px;display:flex;position:relative}.welcome{max-width:760px;animation:.48s cubic-bezier(.2,0,.38,.9) fadeUp}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.eyebrow{color:var(--accent-text);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:12px;margin-bottom:22px;font-size:12px;font-weight:600;display:flex}.eyebrow:before{content:"";background:var(--accent);width:24px;height:2px}.welcome h1{font-family:var(--font-display);letter-spacing:-.01em;color:var(--text);margin:0 0 24px;font-size:clamp(38px,4.8vw,64px);font-weight:300;line-height:1.05}.welcome h1 .accent{color:var(--accent-text);font-weight:400;display:block}.welcome .lede{color:var(--text-2);max-width:580px;margin-bottom:40px;font-size:18px;font-weight:400;line-height:1.6}.welcome-stats{background:var(--border);border:1px solid var(--border);grid-template-columns:repeat(3,1fr);gap:1px;max-width:580px;margin-bottom:40px;display:grid}.stat-card{background:var(--layer);padding:20px}.stat-card .num{font-family:var(--font-mono);color:var(--text);font-variant-numeric:tabular-nums;font-size:28px;font-weight:500;line-height:1}.stat-card .lbl{color:var(--text-3);text-transform:uppercase;letter-spacing:.04em;margin-top:8px;font-size:11px;font-weight:500;line-height:1.35}.btn{background:var(--accent);color:var(--text-on);border-radius:var(--r-sm);min-height:48px;font-family:var(--font-ui);letter-spacing:0;cursor:pointer;border:1px solid #0000;justify-content:space-between;align-items:center;gap:32px;padding:13px 16px;font-size:14px;font-weight:400;transition:background .11s;display:inline-flex}.btn:hover{background:var(--accent-hover)}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:-4px}.btn:disabled{color:#8d8d8d;cursor:not-allowed;background:#c6c6c6}.btn-ghost{color:var(--accent-text);border:1px solid var(--accent);background:0 0}.btn-ghost:hover{background:var(--accent-light)}.btn-ghost:disabled{border-color:var(--border);color:var(--text-disabled);background:0 0}.btn-arrow{flex-shrink:0;width:18px;height:18px}.question-shell{width:100%;max-width:860px;animation:.38s cubic-bezier(.2,0,.38,.9) fadeUp}.q-meta{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.q-counter{font-family:var(--font-mono);color:var(--text-3);letter-spacing:.02em;text-transform:uppercase;font-size:12px;font-weight:400}.q-counter strong{color:var(--text);font-weight:600}.q-tag{border-radius:var(--r-sm);letter-spacing:.04em;text-transform:uppercase;border:1px solid #0000;padding:4px 10px;font-size:11px;font-weight:500}.q-tag.fundamental{background:var(--accent-light);color:var(--accent-active)}.q-tag.intermediario{color:#0043ce;background:#edf5ff}.q-tag.avancado{color:#684e00;background:#fcf4d6}.q-tag.aplicacao{color:#6929c4;background:#f6f2ff}.q-tag.etica{color:#a2191f;background:#fff1f1}.question-title{font-family:var(--font-display);letter-spacing:-.01em;color:var(--text);margin:0 0 14px;font-size:clamp(26px,2.8vw,38px);font-weight:400;line-height:1.2}.question-sub{color:var(--text-2);max-width:660px;margin-bottom:28px;font-size:16px;line-height:1.6}.choices{background:var(--border);border:1px solid var(--border);flex-direction:column;gap:1px;margin-bottom:30px;display:flex}.choice{background:var(--layer-2);cursor:pointer;text-align:left;color:var(--text);border:none;border-left:3px solid #0000;align-items:center;gap:16px;padding:16px 20px;font-family:inherit;font-size:15px;font-weight:400;line-height:1.45;transition:background .12s;display:flex}.choice:hover{background:var(--layer-hover)}.choice.selected{background:var(--accent-light);border-left-color:var(--accent)}.choice-marker{border:1px solid var(--border-strong);width:22px;height:22px;font-family:var(--font-mono);color:var(--text-3);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:500;transition:all .12s;display:flex}.choice.selected .choice-marker{background:var(--accent);border-color:var(--accent);color:var(--text-on)}.choice-text{flex:1}.choice-text small{color:var(--text-3);margin-top:4px;font-size:13px;font-weight:400;display:block}.choices-grid{background:var(--border);border:1px solid var(--border);grid-template-columns:repeat(3,1fr);gap:1px;margin-bottom:30px;display:grid}@media (width<=900px){.choices-grid{grid-template-columns:repeat(2,1fr)}}.grid-choice{background:var(--layer-2);cursor:pointer;text-align:left;color:var(--text);border:none;border-top:3px solid #0000;padding:20px;font-family:inherit;transition:background .12s;position:relative}.grid-choice:hover{background:var(--layer-hover)}.grid-choice.selected{background:var(--accent-light);border-top-color:var(--accent)}.grid-choice .gc-icon{border-radius:var(--r-sm);background:var(--canvas);border:1px solid var(--border);width:34px;height:34px;font-size:15px;font-family:var(--font-mono);color:var(--accent-text);justify-content:center;align-items:center;margin-bottom:14px;font-weight:500;display:flex}.grid-choice.selected .gc-icon{border-color:var(--accent-border)}.grid-choice .gc-title{margin-bottom:6px;font-size:16px;font-weight:600}.grid-choice .gc-desc{color:var(--text-3);font-size:13px;line-height:1.45}.freeform-wrap{margin-bottom:30px}.freeform-input{background:var(--field);border:none;border-bottom:1px solid var(--border-strong);width:100%;min-height:180px;color:var(--text);resize:vertical;outline-offset:-2px;border-radius:0;outline:2px solid #0000;padding:16px;font-family:inherit;font-size:15px;line-height:1.6;transition:outline 90ms}.freeform-input:focus{outline-color:var(--accent)}.freeform-input::placeholder{color:var(--text-3)}.freeform-meta{color:var(--text-3);justify-content:space-between;align-items:center;margin-top:12px;font-size:12px;display:flex}.freeform-meta .count{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--text-2)}.freeform-meta .quality{align-items:center;gap:10px;display:flex}.freeform-quality-bar{background:var(--border);width:120px;height:4px;overflow:hidden}.freeform-quality-fill{background:var(--accent);height:100%;transition:width .2s}.freeform-tier{text-transform:uppercase;letter-spacing:.04em;text-align:right;min-width:80px;font-size:11px;font-weight:600}.freeform-tier.absent{color:var(--text-3)}.freeform-tier.short{color:var(--amber)}.freeform-tier.medium{color:var(--info)}.freeform-tier.complete{color:var(--accent-text)}.slider-box{background:var(--layer);border:1px solid var(--border);margin-bottom:30px;padding:26px 28px}.slider-marks{font-family:var(--font-mono);color:var(--text-3);text-transform:uppercase;letter-spacing:.04em;justify-content:space-between;margin-bottom:14px;font-size:11px;font-weight:400;display:flex}.slider-track{align-items:center;height:52px;display:flex;position:relative}.slider-rail{background:var(--border-strong);height:4px;position:absolute;top:50%;left:10%;right:10%;transform:translateY(-50%)}.slider-rail-fill{background:var(--accent);height:100%;transition:width .3s cubic-bezier(.25,.46,.45,.94)}.slider-stops{grid-template-columns:repeat(5,1fr);place-items:center;display:grid;position:absolute;inset:0}.slider-stop{cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;transition:all .16s;display:flex;position:relative}.slider-stop-inner{background:var(--canvas);border:2px solid var(--border-strong);border-radius:50%;width:14px;height:14px;transition:all .16s}.slider-stop:hover .slider-stop-inner{border-color:var(--accent);transform:scale(1.25)}.slider-stop.active .slider-stop-inner{background:var(--accent);border-color:var(--accent);width:24px;height:24px;box-shadow:0 0 0 6px var(--accent-light)}.slider-stop.done .slider-stop-inner{background:var(--accent);border-color:var(--accent)}.slider-readout{text-align:center;color:var(--accent-text);min-height:22px;margin-top:18px;font-size:16px;font-weight:600}.slider-labels{grid-template-columns:repeat(5,1fr);margin-top:16px;display:grid}.slider-labels .slider-label{text-align:center;color:var(--text-3);padding:4px 8px;font-size:12px;font-weight:400;line-height:1.35;transition:color .16s,letter-spacing .16s}.slider-labels .slider-label.active{color:var(--accent-text);letter-spacing:.01em;font-weight:600}.slider-labels .slider-label.done{color:var(--text-2)}.scenario{background:var(--layer);border-left:3px solid var(--accent);margin-bottom:22px;padding:18px 20px;position:relative}.scenario:before{content:"CENÁRIO";font-family:var(--font-mono);letter-spacing:.06em;color:var(--accent-text);margin-bottom:6px;font-size:11px;font-weight:500;display:block}.scenario p{color:var(--text-2);margin:0;font-size:14px;line-height:1.55}.q-nav{justify-content:space-between;align-items:center;gap:16px;display:flex}.q-nav .hint{color:var(--text-3);text-align:right;flex:1;font-size:12px}.q-nav .hint kbd{background:var(--layer);border:1px solid var(--border);font-family:var(--font-mono);color:var(--text-2);margin:0 2px;padding:2px 7px;font-size:11px}.ms-hint{color:var(--text-3);margin-bottom:14px;font-size:12px}.ms-counter{background:var(--accent-light);font-family:var(--font-mono);color:var(--accent-active);align-items:center;gap:6px;margin-left:8px;padding:4px 10px;font-size:11px;font-weight:500;display:inline-flex}.result-actions{gap:12px;margin-top:36px;display:flex}.contact{text-align:center;max-width:580px;margin:0 auto;padding:24px 0;animation:.48s cubic-bezier(.2,0,.38,.9) fadeUp}.contact .eyebrow{justify-content:center}.contact-title{font-family:var(--font-display);letter-spacing:-.01em;color:var(--text);margin:0 0 22px;font-size:clamp(34px,4.2vw,54px);font-weight:300;line-height:1.1}.contact-title .accent{color:var(--accent-text);font-weight:400;display:block}.contact-lede{color:var(--text-2);max-width:480px;margin:0 auto 36px;font-size:16px;line-height:1.6}.contact-form{text-align:left}.contact-field{margin-bottom:18px}.contact-label{letter-spacing:.02em;color:var(--text-2);margin-bottom:8px;font-size:12px;font-weight:500;display:block}.contact-input{background:var(--field);border:none;border-bottom:1px solid var(--border-strong);width:100%;color:var(--text);outline-offset:-2px;border-radius:0;outline:2px solid #0000;padding:14px 16px;font-family:inherit;font-size:15px;transition:outline 90ms}.contact-input:focus{outline-color:var(--accent)}.contact-input::placeholder{color:var(--text-3)}.contact-input.has-error{outline:2px solid var(--error)}.contact-error{color:var(--error);margin-top:6px;font-size:12px;display:block}.contact-privacy{color:var(--text-3);margin:4px 0 0;font-size:12px;line-height:1.55}.contact .result-actions{justify-content:space-between}.thanks{text-align:center;max-width:660px;margin:0 auto;padding:24px 0;animation:.48s cubic-bezier(.2,0,.38,.9) fadeUp}.thanks-icon{width:80px;height:80px;margin:0 auto 32px;position:relative}.thanks-icon svg{width:100%;height:100%}@keyframes drawRing{0%{stroke-dashoffset:226px}to{stroke-dashoffset:0}}@keyframes drawCheck{0%{stroke-dashoffset:50px}to{stroke-dashoffset:0}}.thanks-title{font-family:var(--font-display);letter-spacing:-.01em;color:var(--text);margin:12px 0 24px;font-size:clamp(38px,5vw,60px);font-weight:300;line-height:1.1}.thanks-title .accent{color:var(--accent-text);font-weight:400;display:block}.thanks-lede{color:var(--text-2);max-width:520px;margin:0 auto 48px;font-size:17px;line-height:1.65}.thanks-steps{text-align:left;background:var(--border);border:1px solid var(--border);grid-template-columns:repeat(3,1fr);gap:1px;margin-bottom:44px;display:grid}.thanks-step{background:var(--layer);flex-direction:column;gap:14px;padding:22px 18px;display:flex}.thanks-step-num{font-family:var(--font-mono);color:var(--accent-text);letter-spacing:.04em;font-size:12px;font-weight:500}.thanks-step-text strong{margin-bottom:6px;font-size:14px;font-weight:600;line-height:1.35;display:block}.thanks-step-text{color:var(--text-3);font-size:12px;line-height:1.5}.thanks .result-actions{justify-content:center}@media (width<=720px){.thanks-steps{grid-template-columns:1fr}}@media (width<=1024px){.main{grid-template-columns:minmax(0,1fr)}.sidebar{display:none}.content{padding:48px 36px}.app-header{padding:0 24px}}@media (width<=600px){.app-header{padding:0 18px}.header-right{gap:14px}.breadcrumb{display:none}.content{padding:36px 18px}.welcome-stats,.choices-grid{grid-template-columns:1fr}.choice{gap:12px;padding:14px 16px}.slider-box{padding:20px 12px}.slider-stops,.slider-labels{grid-template-columns:repeat(5,minmax(0,1fr))}.slider-labels .slider-label{overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;padding:4px 2px;font-size:11px}.q-nav{gap:10px}.q-nav .hint{display:none}.q-nav .btn{flex:1;gap:12px;padding:13px 14px}}@media (width<=380px){.content{padding:28px 14px}.btn{padding:12px 14px}.score-pill{padding:6px 12px;font-size:12px}}
