:root{--paper:#fcfbf7;--card:#fff;--ink:#1e2733;--ink-2:#5b6472;--ink-3:#97a0ad;--navy:#3b82f6;--navy-deep:#2563eb;--navy-wash:#e8f1fe;--sea:#16b364;--sea-wash:#dcf7e8;--flag:#ef4444;--flag-wash:#fdeaea;--rule:#ece9e0;--rule-2:#ddd8cb;--grid-line:rgba(30,39,51,.045);--radius:12px;--radius-lg:20px;--radius-pill:999px;--shadow:0 2px 6px rgba(30,39,51,.05),0 12px 30px rgba(30,39,51,.08);--shadow-hover:0 4px 12px rgba(30,39,51,.08),0 20px 46px rgba(30,39,51,.12);--font-serif:"Fredoka","Trebuchet MS","Segoe UI",sans-serif;--font-sans:"Nunito",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-mono:var(--font-serif);--measure:40rem;--wide:68rem;--header-h:58px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#151a22;--card:#1d242f;--ink:#eef1f5;--ink-2:#a9b2bf;--ink-3:#79828f;--navy:#6ea8ff;--navy-deep:#3b82f6;--navy-wash:#1d2b43;--sea:#3ddc97;--sea-wash:#14301f;--flag:#ff7a7a;--flag-wash:#331b1b;--rule:#2b333f;--rule-2:#3a4451;--grid-line:rgba(238,241,245,.05);--shadow:0 2px 6px rgba(0,0,0,.35),0 12px 30px rgba(0,0,0,.3);--shadow-hover:0 4px 12px rgba(0,0,0,.4),0 20px 46px rgba(0,0,0,.42)}}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--paper);color:var(--ink);font-family:var(--font-sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}::selection{background:var(--navy);color:#fff}a{color:var(--navy);text-decoration:none;font-weight:700}a:hover{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:2px}button{font:inherit;color:inherit;cursor:pointer}:focus-visible{outline:3px solid var(--navy);outline-offset:2px;border-radius:6px}img{max-width:100%}[hidden]{display:none!important}h1,h2,h3{font-family:var(--font-serif);font-weight:500;line-height:1.22;letter-spacing:0;margin:0}.eyebrow{font-family:var(--font-sans);font-size:12px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--navy)}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:50;height:var(--header-h);display:flex;align-items:center;gap:24px;padding:0 clamp(16px,4vw,44px);background:var(--navy-deep);color:#fff;border-bottom:none;box-shadow:0 2px 14px rgba(37,99,235,.22)}.site-header a{color:#fff}.brand{display:flex;align-items:center;gap:8px;white-space:nowrap}.brand:hover{text-decoration:none}.brand b{font-family:var(--font-serif);font-weight:600;font-size:18px;letter-spacing:0}.brand .tag{font-family:var(--font-sans);font-weight:800;font-size:10px;letter-spacing:.12em;padding:3px 7px;background:hsla(0,0%,100%,.16);border-radius:var(--radius-pill);color:#fff}.site-nav{display:flex;gap:4px}.site-nav a{font-family:var(--font-sans);font-weight:700;font-size:13.5px;letter-spacing:0;padding:7px 14px;border-radius:var(--radius-pill);color:hsla(0,0%,100%,.78)}.site-nav a:hover{background:hsla(0,0%,100%,.14);color:#fff;text-decoration:none}.site-nav a.on{color:var(--navy-deep);background:#fff}.site-header .grow{flex:1 1}@media (max-width:560px){.site-header{gap:10px;padding:0 14px}.brand b{font-size:15px}.brand .tag{display:none}.site-nav{gap:2px}.site-nav a{padding:6px 10px;font-size:12px}}.page{max-width:var(--wide);margin:0 auto;padding:clamp(28px,5vw,56px) clamp(16px,4vw,44px) 120px}.page.reading{max-width:calc(var(--measure) + 8rem)}.crumbs{font-family:var(--font-sans);font-weight:700;font-size:13px;letter-spacing:0;color:var(--ink-3);margin-bottom:22px;display:flex;gap:8px;flex-wrap:wrap;align-items:center}.crumbs a{color:var(--navy)}.crumbs .sep{opacity:.5}.page-title{font-size:clamp(1.9rem,3.6vw,2.6rem);margin:6px 0 10px}.page-sub{color:var(--ink-2);max-width:46rem;margin:0 0 32px;font-size:16px;line-height:1.65}.page-sub a{white-space:nowrap}.hero{display:grid;grid-template-columns:1.05fr .95fr;grid-gap:clamp(28px,5vw,64px);gap:clamp(28px,5vw,64px);align-items:center;padding:clamp(12px,4vw,40px) 0 clamp(32px,5vw,56px)}@media (max-width:860px){.hero{grid-template-columns:1fr}}.hero-copy .eyebrow{display:block;margin-bottom:16px}.hero-copy h1{font-size:clamp(2.2rem,5.6vw,3.6rem);font-weight:600;letter-spacing:-.005em;line-height:1.12}.hero-copy h1 em{font-style:normal;color:var(--navy)}.hero-copy p{margin:18px 0 0;color:var(--ink-2);font-size:1.1rem;line-height:1.62;max-width:30rem}.hero-figures{margin-top:28px;display:flex;gap:14px;flex-wrap:wrap}.hero-figures div{font-family:var(--font-sans);background:var(--card);border:1px solid var(--rule);border-radius:var(--radius);padding:12px 18px;box-shadow:var(--shadow)}.hero-figures b{display:block;font-family:var(--font-serif);font-size:1.7rem;font-weight:600;color:var(--navy)}.hero-figures span{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3)}.somatoria{position:relative;display:grid;place-items:center;min-height:172px;padding:32px 28px;background:var(--card);border:1px solid var(--rule);border-radius:var(--radius-lg);box-shadow:var(--shadow);background-image:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px);background-size:22px 22px;background-position:-1px -1px;animation:somatoria-flutua 4.5s ease-in-out infinite}@keyframes somatoria-flutua{0%,to{transform:translateY(0)}50%{transform:translateY(-9px)}}.regua{width:100%;display:grid;grid-template-columns:repeat(7,1fr);border:2px solid var(--rule-2);border-radius:14px;overflow:hidden;background:var(--card)}.seg{text-align:center;padding:14px 0 11px;border-right:1.5px solid var(--rule);transition:background .65s ease,color .65s ease}.seg:last-child{border-right:none}.seg .val{display:block;font-family:var(--font-mono);font-size:15px;font-weight:600;color:var(--ink-2)}.seg .mark{display:block;margin-top:5px;font-size:13px;font-weight:800;line-height:1;color:var(--ink-3);opacity:.35}.seg.on{background:var(--sea);color:#fff}.seg.on .mark,.seg.on .val{color:#fff;opacity:1}@media (max-width:560px){.seg .val{font-size:13px}}.cartao{display:inline-flex;border:2px solid var(--navy);border-radius:12px;overflow:hidden;background:var(--card)}.cartao span{width:32px;height:40px;display:grid;place-items:center;font-family:var(--font-mono);font-size:22px;font-weight:600;color:var(--navy)}.cartao span+span{border-left:1.5px solid var(--rule-2)}.cartao.lg span{width:42px;height:52px;font-size:28px}.cartao.sm span{width:26px;height:32px;font-size:17px}.paths{margin-top:8px;display:grid;grid-gap:12px;gap:12px}.path{display:grid;grid-template-columns:2.6rem 1fr auto;grid-gap:20px;gap:20px;align-items:center;padding:20px;background:var(--card);border:1px solid var(--rule);border-radius:var(--radius-lg);box-shadow:var(--shadow);transition:transform .16s ease,box-shadow .16s ease}.path:hover{text-decoration:none;transform:translateY(-3px);box-shadow:var(--shadow-hover)}.path .idx{font-family:var(--font-mono);font-size:15px;font-weight:600;color:#fff;background:var(--navy);width:2.4rem;height:2.4rem;border-radius:var(--radius-pill);display:grid;place-items:center}.path h3{font-size:1.3rem}.path p{margin:4px 0 0;color:var(--ink-2);font-size:14.5px;max-width:40rem}.path .go{font-family:var(--font-sans);font-weight:800;font-size:13px;color:var(--navy);align-self:center;white-space:nowrap}@media (max-width:620px){.path{grid-template-columns:2.4rem 1fr;row-gap:8px}.path .go{grid-column:2;align-self:start}}.materia-list{display:grid;grid-gap:10px;gap:10px}.materia-row{display:grid;grid-template-columns:3.6rem 1fr auto;grid-gap:18px;gap:18px;align-items:center;padding:16px 18px;background:var(--card);border:1px solid var(--rule);border-radius:var(--radius);box-shadow:var(--shadow);transition:transform .16s ease,box-shadow .16s ease}.materia-row:hover{text-decoration:none;transform:translateY(-3px);box-shadow:var(--shadow-hover)}.code{font-family:var(--font-sans);font-size:12px;font-weight:800;letter-spacing:.04em;color:#fff;background:var(--mc,var(--navy));border-radius:var(--radius-pill);padding:4px 10px;justify-self:start;line-height:1.3}.materia-row h3{font-size:1.2rem;font-weight:500}.materia-row .meta{font-family:var(--font-sans);font-weight:700;font-size:13px;color:var(--ink-3);text-align:right}@media (max-width:560px){.materia-row{grid-template-columns:3rem 1fr;row-gap:4px}.materia-row .meta{grid-column:2;text-align:left}}.assunto-list{display:grid;grid-gap:8px;gap:8px}.assunto-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;background:var(--card);border:1px solid var(--rule);border-radius:var(--radius);transition:transform .14s ease,border-color .14s ease}.assunto-row:hover{text-decoration:none;transform:translateX(4px);border-color:var(--navy)}.assunto-row span:first-child{font-size:15.5px;font-weight:600}.assunto-row .n{font-family:var(--font-sans);font-weight:700;font-size:12.5px;color:var(--ink-3);white-space:nowrap}.toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:22px 0 8px}.search{flex:1 1;min-width:220px;padding:11px 16px;border:1.5px solid var(--rule-2);border-radius:var(--radius-pill);background:var(--card);color:var(--ink);font-family:var(--font-sans);font-size:14.5px;font-weight:600}.search::placeholder{color:var(--ink-3);font-weight:600}.search:focus-visible{border-color:var(--navy)}.chip{font-family:var(--font-sans);font-weight:700;font-size:13px;letter-spacing:0;padding:8px 15px;border:1.5px solid var(--rule-2);border-radius:var(--radius-pill);background:var(--card);color:var(--ink-2);text-transform:none}.chip:hover{color:var(--navy)}.chip.on,.chip:hover{border-color:var(--navy)}.chip.on{background:var(--navy);color:#fff}select.chip{color:var(--ink);text-transform:none;letter-spacing:0}.count-line{font-weight:700;color:var(--ink-3);margin:14px 0 12px}.count-line,.linkbtn{font-family:var(--font-sans);font-size:13px;letter-spacing:0}.linkbtn{background:none;border:none;font-weight:800;color:var(--navy);padding:4px 2px;text-transform:none}.q-list{display:grid;grid-gap:10px;gap:10px;margin-top:4px}.q-row{display:block;padding:18px 20px;background:var(--card);border:1px solid var(--rule);border-radius:var(--radius-lg);box-shadow:var(--shadow);transition:transform .16s ease,box-shadow .16s ease}.q-row:hover{text-decoration:none;transform:translateY(-3px);box-shadow:var(--shadow-hover)}.q-row .line{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-weight:700;font-size:12px;letter-spacing:0;color:var(--ink-3);margin-bottom:8px}.q-row .line,.q-row .prev{font-family:var(--font-sans)}.q-row .prev{font-size:1rem;font-weight:500;line-height:1.55;color:var(--ink);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.q-row .flags{margin-top:10px;display:flex;gap:6px;align-items:center;flex-wrap:wrap}.seal{font-family:var(--font-sans);font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;padding:3px 9px;border-radius:var(--radius-pill);border:1.5px solid var(--rule-2);color:var(--ink-2)}.seal.mat{color:#fff;background:var(--mc,var(--navy));border-color:transparent}.seal.dif-facil{color:var(--sea);border-color:var(--sea)}.seal.dif-media{color:var(--navy);border-color:var(--navy)}.seal.dif-dificil{color:var(--flag);border-color:var(--flag)}.seal.ok{background:var(--sea-wash);color:var(--sea);border-color:var(--sea)}.seal.no{background:var(--flag-wash);color:var(--flag);border-color:var(--flag)}.q-head{display:flex;flex-wrap:wrap;gap:9px;align-items:center;padding-bottom:18px;margin-bottom:22px;border-bottom:2px dashed var(--rule)}.q-head .ref{font-weight:700;font-size:12.5px;letter-spacing:0;color:var(--ink-3)}.q-body,.q-head .ref{font-family:var(--font-sans)}.q-body{font-size:1.075rem;line-height:1.75;color:var(--ink)}.q-body p{margin:0 0 1.1em}.q-body .texto-label{display:block;font-family:var(--font-serif);font-weight:500;font-style:normal;font-size:1rem;color:var(--navy);margin-bottom:.5em;letter-spacing:0}.q-body .fonte,.q-body cite{display:block;font-family:var(--font-sans);font-style:normal;font-size:.85rem;font-weight:600;color:var(--ink-3);margin:-.4em 0 1.4em}.q-figure{margin:22px 0}.q-figure button{display:block;padding:0;border:1px solid var(--rule-2);border-radius:var(--radius);overflow:hidden;background:#fff;line-height:0;cursor:zoom-in}.q-figure img{display:block;width:100%;height:auto}.q-figure figcaption{font-family:var(--font-sans);font-size:12.5px;font-weight:600;color:var(--ink-3);margin-top:8px;line-height:1.5}.props{list-style:none;padding:0;margin:28px 0 0;display:grid;grid-gap:8px;gap:8px}.prop{display:grid;grid-template-columns:3rem 1fr;border:1.5px solid var(--rule);border-radius:var(--radius);overflow:hidden;background:var(--card);transition:border-color .2s ease,background .2s ease}.prop>.pn{font-family:var(--font-mono);font-size:14px;font-weight:600;color:var(--ink-3);padding:16px 12px 16px 0;text-align:center;background:var(--paper);display:grid;place-items:center}.prop>.body{padding:14px 16px}.prop .txt{font-family:var(--font-sans);font-size:1.02rem;font-weight:500;line-height:1.6}.prop label{display:flex;gap:12px;cursor:pointer;align-items:flex-start}.prop label input{margin-top:5px;width:18px;height:18px;accent-color:var(--navy);flex-shrink:0}.prop.reveal.v{background:var(--sea-wash);border-color:var(--sea)}.prop.reveal.v>.pn{color:var(--sea);background:transparent}.prop.reveal.f{border-color:var(--rule-2)}.prop.reveal.f>.pn{color:var(--ink-3)}.prop .verdict{font-family:var(--font-sans);font-size:10.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;margin-left:10px;padding:2px 8px;border-radius:var(--radius-pill)}.verdict.v{color:#fff;background:var(--sea)}.verdict.f{color:var(--ink-3);background:var(--rule)}.prop .yours{font-family:var(--font-sans);font-weight:800;font-size:10.5px;margin-left:8px}.prop .yours.hit{color:var(--sea)}.prop .yours.miss{color:var(--flag)}.prop .coment{margin-top:10px;font-family:var(--font-sans);font-size:14px;font-weight:500;line-height:1.62;color:var(--ink-2)}.solve{margin-top:20px;padding:18px 20px;border:1.5px solid var(--rule);border-left:5px solid var(--navy);border-radius:var(--radius);background:var(--navy-wash)}.solve .eyebrow{display:block;margin-bottom:8px}.solve p{margin:0 0 .8em;font-family:var(--font-sans);font-size:1rem;font-weight:500;line-height:1.68}.solve p:last-child{margin-bottom:0}.answer{margin-top:28px;padding-top:20px;border-top:2px dashed var(--rule);flex-wrap:wrap;gap:16px}.answer,.answer .gab{display:flex;align-items:center}.answer .gab{gap:10px}.answer .gab .eyebrow{writing-mode:initial}.numinput{width:92px;padding:9px 12px;border:2px solid var(--navy);border-radius:var(--radius);font-family:var(--font-mono);font-size:20px;font-weight:600;text-align:center}.btn,.numinput{background:var(--card);color:var(--ink)}.btn{font-family:var(--font-sans);font-weight:800;font-size:14.5px;padding:10px 22px;border:2px solid var(--rule-2);border-radius:var(--radius-pill);transition:transform .12s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease}.btn:hover{border-color:var(--navy);color:var(--navy)}.btn:active{transform:translateY(1px)}.btn.primary{background:var(--navy);border-color:var(--navy);color:#fff;box-shadow:0 4px 14px rgba(59,130,246,.32)}.btn.primary:hover{background:var(--navy-deep);border-color:var(--navy-deep);color:#fff}.btn.ghost{border-color:transparent;background:none;color:var(--ink-2);box-shadow:none}.btn.ghost:hover{color:var(--navy);background:var(--navy-wash)}.btn:disabled{opacity:.4;cursor:default;box-shadow:none}.grow{flex:1 1}.result{margin-top:16px;padding:14px 18px;border-radius:var(--radius);font-size:14.5px;font-weight:700;border:2px solid}.result.ok{background:var(--sea-wash);color:var(--sea);border-color:var(--sea)}.result.mid{background:var(--navy-wash);color:var(--navy);border-color:var(--navy)}.result.bad{background:var(--flag-wash);color:var(--flag);border-color:var(--flag)}.ia-note{margin-top:18px;font-weight:600;font-size:12px;letter-spacing:0;color:var(--ink-3)}.ia-note,.q-nav{font-family:var(--font-sans)}.q-nav{display:flex;justify-content:space-between;gap:12px;margin-top:36px;padding-top:18px;border-top:2px dashed var(--rule);font-weight:700;font-size:13px}.q-nav a{color:var(--ink-2)}.sim-config{display:grid;grid-gap:18px;gap:18px;max-width:30rem;margin-top:4px}.field label{display:block;font-family:var(--font-sans);font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);margin-bottom:7px}.field input,.field select{width:100%;padding:11px 14px;border:1.5px solid var(--rule-2);border-radius:var(--radius);background:var(--card);color:var(--ink);font-family:var(--font-sans);font-size:14.5px;font-weight:600}.sim-progress{display:flex;align-items:center;gap:14px;margin-bottom:22px;font-family:var(--font-sans);font-weight:700;font-size:12.5px;color:var(--ink-3)}.sim-progress .track{flex:1 1;height:8px;background:var(--rule);border-radius:var(--radius-pill);overflow:hidden}.sim-progress .track i{display:block;height:100%;background:var(--sea);border-radius:var(--radius-pill);transition:width .3s ease}.sim-summary{text-align:center;padding:40px 0 28px}.sim-summary .cartao{margin:0 auto 8px}.sim-summary .of{font-size:13px}.empty,.sim-summary .of{font-family:var(--font-sans);font-weight:700;color:var(--ink-3)}.empty{text-align:center;font-size:14px;padding:72px 20px}.center-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:22px}.loadmore{display:block;margin:22px auto 0}.backup{margin-top:40px;padding:20px;background:var(--card);border:1.5px dashed var(--rule-2);border-radius:var(--radius-lg)}.backup-text strong{font-family:var(--font-serif);font-weight:600;font-size:1.05rem}.backup-text p{margin:4px 0 0;color:var(--ink-2);font-size:13.5px;line-height:1.55;max-width:44rem}.backup-actions{margin-top:14px;display:flex;flex-wrap:wrap;gap:8px}.backup-actions .btn{font-size:13px;padding:8px 16px}.backup-msg{margin:12px 0 0;font-family:var(--font-sans);font-weight:700;font-size:12.5px;color:var(--sea)}.lightbox{position:fixed;inset:0;z-index:100;background:rgba(21,26,34,.88);display:grid;place-items:center;padding:24px;cursor:zoom-out}.lightbox img{max-width:96vw;max-height:92vh;border-radius:var(--radius);cursor:default}.lightbox .x{position:fixed;top:14px;right:18px;background:hsla(0,0%,100%,.14);border:none;font-size:15px;padding:8px 14px}.authbtn,.lightbox .x{color:#fff;font-family:var(--font-sans);font-weight:800;border-radius:var(--radius-pill)}.authbtn{font-size:13px;letter-spacing:0;padding:7px 16px;background:hsla(0,0%,100%,.16);border:none;white-space:nowrap}.authbtn:hover{background:hsla(0,0%,100%,.28);text-decoration:none}.authbtn.skel{width:74px;height:30px;opacity:.4}.authmenu{position:relative}.authpop{position:absolute;right:0;top:calc(100% + 8px);min-width:200px;display:flex;flex-direction:column;gap:2px;padding:8px;background:var(--card);border:1px solid var(--rule);border-radius:var(--radius);box-shadow:var(--shadow-hover);z-index:60}.authpop-email{font-size:11.5px;color:var(--ink-3);padding:6px 10px;word-break:break-all}.authpop a,.authpop button,.authpop-email{font-family:var(--font-sans);font-weight:700}.authpop a,.authpop button{text-align:left;font-size:13.5px;color:var(--ink);padding:8px 10px;border:none;background:none;border-radius:8px}.authpop a:hover,.authpop button:hover{background:var(--navy-wash);color:var(--navy);text-decoration:none}.entrar-form{display:grid;grid-gap:14px;gap:14px;max-width:24rem;margin:4px 0 20px}.entrar-ou{font-family:var(--font-sans);font-weight:800;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin:6px 0}.entrar-erro{margin-top:14px;font-size:13px;color:var(--flag)}.acesso-badge,.entrar-erro{font-family:var(--font-sans);font-weight:700}.acesso-badge{display:inline-block;font-size:13.5px;padding:10px 16px;border-radius:var(--radius);border:2px solid;margin-top:4px}.acesso-badge.ok{background:var(--sea-wash);color:var(--sea);border-color:var(--sea)}.acesso-badge.no{background:var(--flag-wash);color:var(--flag);border-color:var(--flag)}.gate{margin-top:20px;padding:20px 22px;border:1.5px dashed var(--navy);border-radius:var(--radius);background:var(--navy-wash)}.gate strong{font-family:var(--font-serif);font-weight:600;font-size:1.05rem;display:block}.gate p{margin:6px 0 14px;color:var(--ink-2);font-size:14px;line-height:1.6;max-width:34rem}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}