:root{--bg:#f5f3ee;--surface:#faf9f5;--surface-2:#f0ede5;--border:#e8e4da;--border-strong:#d9d3c5;--text:#1f1e1c;--text-2:#6b6a66;--text-3:#9a978f;--accent:#d97757;--accent-hover:#c4633f;--accent-soft:#f6e3da;--accent-text:#b5512e;--on-accent:#fff;--ok:#5e8a5a;--ok-soft:#e3eddf;--bad:#b5512e;--bad-soft:#f6e3da;--track:#e8e4da;--serif:"Source Serif 4", "Tiempos Text", Georgia, "Times New Roman", serif;--sans:"Segoe UI", system-ui, -apple-system, Roboto, "Helvetica Neue", Arial, sans-serif;--radius:6px;--radius-lg:10px;--gutter:16px;--maxw:1080px;--shadow:0 1px 2px #1f1e1c0a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#1f1e1c;--surface:#262624;--surface-2:#2e2d2a;--border:#3a3935;--border-strong:#4a4843;--text:#f2f0ea;--text-2:#b3b0a8;--text-3:#85827a;--accent:#d97757;--accent-hover:#e58a6b;--accent-soft:#3d2a22;--accent-text:#ee9a7c;--ok:#8dbb86;--ok-soft:#26332a;--bad:#ee9a7c;--bad-soft:#3d2a22;--track:#3a3935;--shadow:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#1f1e1c;--surface:#262624;--surface-2:#2e2d2a;--border:#3a3935;--border-strong:#4a4843;--text:#f2f0ea;--text-2:#b3b0a8;--text-3:#85827a;--accent:#d97757;--accent-hover:#e58a6b;--accent-soft:#3d2a22;--accent-text:#ee9a7c;--ok:#8dbb86;--ok-soft:#26332a;--bad:#ee9a7c;--bad-soft:#3d2a22;--track:#3a3935;--shadow:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;font-size:16px;line-height:1.5}#root{min-height:100dvh;padding-top:var(--safe-area-inset-top,env(safe-area-inset-top,0px));padding-bottom:var(--banner-nativo,0px);flex-direction:column;display:flex}a{color:var(--accent-text)}button{font:inherit;color:inherit}h1,h2,h3{font-family:var(--serif);letter-spacing:-.01em;margin:0;font-weight:500}h1{font-size:clamp(2rem,5vw,2.6rem);line-height:1.1}h2{font-size:1.5rem}h3{font-size:1.15rem}p{margin:0}.shell{width:100%;max-width:var(--maxw);padding:0 var(--gutter);flex:1;margin:0 auto}.topbar{max-width:var(--maxw);width:100%;padding:14px var(--gutter);justify-content:space-between;align-items:center;gap:12px;margin:0 auto;display:flex}.brand{color:var(--text);align-items:center;gap:10px;text-decoration:none;display:flex}.brand img{border-radius:7px;width:28px;height:28px}.brand span{font-family:var(--serif);font-size:1.25rem}.nav{flex-wrap:wrap;justify-content:flex-end;gap:2px;display:flex}.nav a{color:var(--text-2);border-radius:var(--radius);border:1px solid #0000;padding:6px 10px;font-size:.92rem;text-decoration:none}.nav a:hover{background:var(--surface-2);color:var(--text)}.nav a.active{color:var(--text);background:var(--surface);border-color:var(--border)}@media (width<=480px){.brand span{display:none}.nav{flex-wrap:nowrap}.nav a{padding:6px 8px;font-size:.88rem}}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;padding:18px 0 20px;display:flex}.subtitle{color:var(--text-2);margin-top:6px}.subtitle .dot{margin:0 6px}.back{color:var(--text-2);margin-top:8px;font-size:.9rem;text-decoration:none;display:inline-block}.back:hover{color:var(--text)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);min-width:0;padding:20px}.stack>*+*{margin-top:16px}.label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-2);margin-bottom:8px;font-size:.74rem;font-weight:600;display:block}.muted{color:var(--text-2)}.small{font-size:.86rem}.tiny{color:var(--text-3);font-size:.76rem}.row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.spacer{flex:1}.grid{gap:16px;display:grid}@media (width>=760px){.grid-2{grid-template-columns:1fr 1fr}.grid-main{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:start}}.btn{border:1px solid var(--border-strong);background:var(--surface);color:var(--text);border-radius:var(--radius);cursor:pointer;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:8px 14px;font-size:.95rem;text-decoration:none;transition:background .15s,border-color .15s;display:inline-flex}.btn:hover{background:var(--surface-2)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:600}.btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.btn-ghost{color:var(--text-2);background:0 0;border-color:#0000}.btn-lg{min-height:48px;padding:10px 20px;font-size:1rem}.btn-block{width:100%}.btn-danger{color:var(--bad)}.pill{background:var(--surface-2);color:var(--text-2);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:.78rem;font-weight:600;display:inline-flex}.pill:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.pill-accent{background:var(--accent-soft);color:var(--accent-text)}.pill-ok{background:var(--ok-soft);color:var(--ok)}.pill-plain:before{display:none}.search,.select{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:var(--radius);font:inherit;min-height:44px;padding:10px 12px}.search{width:100%}.search:focus,.select:focus{outline:2px solid var(--accent);outline-offset:-1px}.filters{grid-template-columns:minmax(0,1fr);gap:10px;margin-bottom:16px;display:grid}@media (width>=600px){.filters{grid-template-columns:minmax(0,1fr) auto auto}}.painel-numeros{background:var(--accent-soft);border-radius:var(--radius-lg);grid-template-columns:1fr 1fr;margin-bottom:20px;display:grid}.painel-numeros>div{flex-direction:column;gap:2px;min-width:0;padding:16px 20px;display:flex}.painel-numeros>div+div{border-left:1px solid color-mix(in srgb, var(--accent) 30%, transparent)}.painel-numeros strong{font-family:var(--serif);color:var(--accent-text);font-size:2.1rem;font-weight:500;line-height:1.1}.painel-numeros span{color:var(--text-2);font-size:.86rem}.referencias{border-top:1px solid var(--border);color:var(--text-2);margin-top:12px;padding-top:10px;font-size:.86rem}.referencias strong{letter-spacing:.06em;text-transform:uppercase;font-size:.74rem}.referencias ul{margin:4px 0 0;padding-left:18px}.referencias li{margin-top:2px}.concurso-card{padding:0;transition:border-color .15s;position:relative}.concurso-card:hover{border-color:var(--accent)}.concurso-card .corpo{color:inherit;padding:20px 56px 20px 20px;text-decoration:none;display:block}.concurso-card h3{margin-bottom:4px}.concurso-card .meta{color:var(--text-2);font-size:.9rem}.concurso-card .foot{flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin-top:12px;display:flex}.concurso-card>.fav{position:absolute;top:8px;right:8px}.salario{color:var(--accent-text);white-space:nowrap}.fav{color:var(--text-3);font:inherit;border-radius:var(--radius);cursor:pointer;background:0 0;border:0;min-width:44px;min-height:44px;font-size:1.5rem;line-height:1}.fav:hover{color:var(--accent-text);background:var(--surface-2)}.fav.on{color:var(--accent)}.fav:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.fav-texto{border:1px solid var(--border);background:var(--surface);padding:0 12px;font-size:.95rem;font-weight:600}.fav-texto.on{border-color:var(--accent);color:var(--accent-text)}.fav-list{margin:0;padding:0;list-style:none}.fav-list li{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.fav-list li:first-child{border-top:0;padding-top:0}.fav-list .nome{font-family:var(--serif);color:var(--text);font-size:1.15rem;font-weight:500;text-decoration:none}.fases{gap:4px;margin:0;display:grid}.fases>div{color:var(--text-2);grid-template-columns:5.2em 1fr;gap:8px;font-size:.92rem;display:grid}.fases dt{font-weight:600}.fases dd{margin:0}.fases>div.atual{color:var(--text)}.fases>div.atual dt{color:var(--accent-text)}.cargos{margin:0;padding:0;list-style:none}.cargos li{border-top:1px solid var(--border);padding:12px 0}.cargos li:first-child{border-top:0}.cargos li.on{border-left:3px solid var(--accent);padding-left:10px}.cargos .linha{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;display:flex}.aviso-edital{color:var(--text-2);border-left:3px solid var(--accent);margin-top:12px;padding:4px 0 4px 10px;font-size:.86rem}.cargos .especialidades{flex-wrap:wrap;gap:6px;margin:8px 0 0;padding:0;list-style:none;display:flex}.cargos .especialidades li{border:0;padding:0}.chip{font:inherit;border:1px solid var(--border);background:var(--surface-2);color:var(--text-2);border-radius:999px;align-items:center;gap:4px;padding:3px 10px;font-size:.82rem;display:inline-flex}button.chip{cursor:pointer;color:var(--text);background:var(--surface)}button.chip:hover{border-color:var(--accent)}.chip.on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-text);font-weight:600}.referencia{color:var(--text-2);border-left:3px solid var(--border);margin-bottom:12px;padding:2px 0 2px 10px;font-size:.82rem}.referencia strong{color:var(--text)}.meter{gap:3px;height:14px;display:flex}.meter i{background:var(--track);border-radius:2px;flex:1}.meter i.on{background:var(--accent)}.bar{background:var(--track);border-radius:999px;height:8px;overflow:hidden}.bar>span{background:var(--accent);border-radius:999px;height:100%;display:block}.bar.ok>span{background:var(--ok)}.bar.mid>span{background:#c9a24a}.disc-row{border-top:1px solid var(--border);padding:14px 0}.disc-row:first-child{border-top:0;padding-top:0}.disc-row:last-child{padding-bottom:0}.disc-row .head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px;display:flex}.disc-row .head strong{font-weight:600}.topic-list{margin:0;padding:0;list-style:none}.topic-list li{border-top:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;padding:10px 0;display:grid}.topic-list li:first-child{border-top:0}.topic-list .why{color:var(--text-2);grid-column:1/-1;font-size:.82rem}.timer{font-family:var(--serif);font-variant-numeric:tabular-nums;font-size:clamp(2.6rem,9vw,4rem);line-height:1}.session-head{flex-wrap:wrap;align-items:flex-end;gap:18px;display:flex}.session-head .status{color:var(--text-2);padding-bottom:6px}.enunciado{white-space:pre-line;font-size:1.06rem;line-height:1.6}.alts{gap:8px;margin:18px 0 0;padding:0;list-style:none;display:grid}.alt{text-align:left;border:1px solid var(--border);background:var(--surface);border-radius:var(--radius);cursor:pointer;grid-template-columns:30px 1fr;align-items:start;gap:10px;width:100%;min-height:48px;padding:10px 12px;line-height:1.45;display:grid}.alt:hover:not(:disabled){border-color:var(--border-strong);background:var(--surface-2)}.alt .letter{border:1px solid var(--border-strong);width:28px;height:28px;color:var(--text-2);border-radius:50%;place-items:center;font-size:.85rem;font-weight:600;display:grid}.alt .txt{padding-top:2px}.alt.selected{border-color:var(--accent);background:var(--accent-soft)}.alt.selected .letter{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.alt.correct{border-color:var(--ok);background:var(--ok-soft)}.alt.correct .letter{background:var(--ok);border-color:var(--ok);color:#fff}.alt.wrong{border-color:var(--bad);background:var(--bad-soft)}.alt.wrong .letter{background:var(--bad);border-color:var(--bad);color:#fff}.alt:disabled{cursor:default;color:var(--text)}.laudo{border-top:1px solid var(--border);margin-top:18px;padding-top:16px}.laudo h3{margin-bottom:8px}.verdict{font-weight:600}.verdict.ok{color:var(--ok)}.verdict.bad{color:var(--bad)}.progress-dots{gap:3px;display:flex}.progress-dots i{background:var(--track);border-radius:2px;flex:1 1 0;max-width:16px;height:6px}.progress-dots i.ok{background:var(--ok)}.progress-dots i.bad{background:var(--bad)}.progress-dots i.cur{background:var(--text-2)}@media (hover:none){.hint-teclado{display:none}}.actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:18px;display:flex}.big-number{font-family:var(--serif);font-size:3rem;line-height:1}.ad-slot{width:100%;margin:28px 0 0}.ad-slot .ad-label{color:var(--text-3);letter-spacing:.06em;text-transform:uppercase;margin-bottom:4px;font-size:.68rem}.ad-slot .ad-box{border:1px dashed var(--border-strong);border-radius:var(--radius);min-height:90px;color:var(--text-3);background:var(--surface-2);place-items:center;font-size:.8rem;display:grid;overflow:hidden}.banner-demo{background:var(--accent-soft);color:var(--accent-text);padding:6px var(--gutter);text-align:center;font-size:.82rem}.empty{text-align:center;color:var(--text-2);padding:32px 16px}.footer{max-width:var(--maxw);width:100%;padding:16px var(--gutter) 28px;padding-bottom:max(28px, env(safe-area-inset-bottom));color:var(--text-3);flex-wrap:wrap;gap:14px;margin:0 auto;font-size:.8rem;display:flex}.footer a{color:var(--text-3)}.overlay{z-index:50;background:#1f1e1c80;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.overlay .card{width:100%;max-width:420px}.avatar{background:var(--accent-soft);width:40px;height:40px;color:var(--accent-text);border-radius:50%;place-items:center;font-weight:600;display:grid;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.ranking{margin:0;padding:0;list-style:none}.ranking li{border-top:1px solid var(--border);align-items:baseline;gap:8px;padding:10px 8px;display:flex}.ranking li:first-child{border-top:0}.ranking .pos{width:2.4em;color:var(--text-2);font-variant-numeric:tabular-nums}.ranking .apelido{overflow-wrap:anywhere;flex:1;min-width:0}.ranking strong{font-variant-numeric:tabular-nums}.ranking li.eu{background:var(--accent-soft);border-top-color:#0000;border-radius:8px}
