:root { color-scheme: dark; --fundo: #0b1120; --painel: #111827; --painel-2: #0f172a; --term: #0a0f1c; --linha: #1f2a3d; --linha-2: #2b3a52; --texto: #e5e7eb; --texto-2: #9ca3af; --marca: #f97316; --ok: #34d399; --erro: #f87171; --aviso: #fbbf24; --mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace; --sans: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif; }
* { box-sizing: border-box; }
[hidden] { display: none !important; }
html, body { height: 100%; margin: 0; background: var(--fundo); color: var(--texto); font: 15px/1.5 var(--sans); }
body { display: flex; flex-direction: column; }
a { color: var(--texto); }
.topo { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem 1rem; padding: .45rem .9rem; border-bottom: 1px solid var(--linha); background: var(--painel); }
body.no-ide .topo { padding: .35rem .75rem; }
.marca { color: var(--texto); font-weight: 600; text-decoration: none; letter-spacing: .01em; }
.marca span { font-weight: 400; letter-spacing: .08em; } .marca b { color: var(--marca); font-weight: 600; } .marca i { color: var(--marca); font-style: normal; } .marca small { color: var(--texto-2); font: 500 12px var(--mono); margin-left: .35rem; text-transform: uppercase; letter-spacing: .1em; }
.selo { padding: .1rem .55rem; border: 1px solid color-mix(in srgb, var(--marca) 45%, transparent); border-radius: 999px; color: var(--marca); font: 600 12px/1.5 var(--mono); text-transform: uppercase; letter-spacing: .08em; }
.topo-acoes { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; margin-left: auto; }
.quem { color: var(--texto-2); font-size: 13px; }
.paleta-botao { display: inline-flex; align-items: center; gap: .5rem; min-width: 12rem; justify-content: space-between; color: var(--texto-2); }
.paleta-botao kbd { font-size: 12px; }
button { min-height: 36px; padding: .35rem .8rem; border: 1px solid var(--linha); border-radius: 8px; background: transparent; color: var(--texto); font: 500 13px var(--sans); cursor: pointer; }
button:hover, button:focus-visible { border-color: var(--marca); }
button.primario { border-color: var(--marca); background: var(--marca); color: #111; font-weight: 600; min-height: 40px; }
button:disabled { opacity: .6; cursor: progress; }
:focus-visible { outline: 2px solid var(--marca); outline-offset: 2px; }
main { flex: 1; display: flex; min-height: 0; }
.cartao { width: min(32rem, calc(100% - 2rem)); margin: 8vh auto auto; padding: 2rem; border: 1px solid var(--linha); border-radius: 14px; background: var(--painel); }
.cartao h2 { margin: 0 0 .5rem; font-size: 1.5rem; line-height: 1.2; }
.so-leitor { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.cartao p { color: var(--texto-2); }
form { display: grid; gap: .5rem; margin-top: 1rem; }
label { color: var(--texto-2); font: 600 12px var(--mono); text-transform: uppercase; letter-spacing: .06em; }
input, select, textarea { min-height: 40px; padding: .45rem .7rem; border: 1px solid var(--linha); border-radius: 8px; background: var(--fundo); color: var(--texto); font: 14px var(--sans); width: 100%; min-width: 0; }
textarea { resize: vertical; font-family: var(--mono); font-size: 13px; }
.erro { margin: 0; color: var(--erro); font-size: 14px; }
.nota { font-size: 13px; }
code { color: var(--texto); font-family: var(--mono); font-size: .92em; }
kbd { padding: 0 .3rem; border: 1px solid var(--linha); border-bottom-width: 2px; border-radius: 4px; font: 500 12px var(--mono); color: var(--texto); }
.pontos { margin: 1rem 0 .25rem; padding: 0; list-style: none; display: grid; gap: .45rem; color: var(--texto-2); font-size: 14px; }
.pontos li { padding-left: 1.1rem; position: relative; }
.pontos li::before { content: ""; position: absolute; left: 0; top: .6em; width: 6px; height: 6px; border-radius: 50%; background: var(--marca); }
.espaco { flex: 1; }

/* ---------- IDE: sessões | bancada de terminais | inspetor ---------- */
.ide { flex: 1; display: flex; flex-direction: column; min-height: 0; min-width: 0; position: relative; }
.ide:fullscreen { background: var(--fundo); }
.ide-corpo { flex: 1; display: flex; min-height: 0; min-width: 0; position: relative; }
.sessoes { width: 15.5rem; flex: none; display: flex; flex-direction: column; min-height: 0; border-right: 1px solid var(--linha); background: var(--painel); }
.sessoes-topo { display: flex; align-items: center; justify-content: space-between; gap: .5rem; padding: .5rem .65rem; border-bottom: 1px solid var(--linha); }
.sessoes-topo h2 { margin: 0; font: 600 12px var(--mono); text-transform: uppercase; letter-spacing: .08em; color: var(--texto-2); }
.sessoes-topo button { min-height: 32px; padding: .2rem .6rem; font-size: 12.5px; border-color: var(--marca); color: var(--marca); }
.sessoes-lista { list-style: none; margin: 0; padding: .35rem; overflow: auto; flex: 1; display: grid; align-content: start; gap: 2px; }
.sessoes-lista .grupo { margin: .6rem .4rem .15rem; color: var(--texto-2); font: 600 12px var(--mono); text-transform: uppercase; letter-spacing: .06em; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.s-item { display: flex; align-items: stretch; gap: 2px; }
.s-abrir { flex: 1; min-width: 0; min-height: 44px; display: grid; grid-template-columns: auto 1fr auto; gap: .1rem .5rem; align-items: center; padding: .3rem .5rem; border: 1px solid transparent; border-radius: 8px; text-align: left; }
.s-abrir:hover { border-color: var(--linha); background: var(--fundo); }
.s-abrir[data-aberta="true"] { background: color-mix(in srgb, var(--marca) 6%, var(--fundo)); }
.s-abrir[aria-current="true"] { border-color: color-mix(in srgb, var(--marca) 60%, var(--linha)); background: color-mix(in srgb, var(--marca) 11%, var(--fundo)); }
.s-lado { flex: none; min-height: 44px; width: 32px; padding: 0; border-color: transparent; color: var(--texto-2); opacity: 0; }
.s-item:hover .s-lado, .s-lado:focus-visible { opacity: 1; }
.ponto { width: 8px; height: 8px; border-radius: 50%; background: var(--texto-2); grid-row: span 2; flex: none; }
.ponto[data-estado="trabalhando"] { background: var(--ok); box-shadow: 0 0 0 3px color-mix(in srgb, var(--ok) 25%, transparent); }
.ponto[data-estado="parado"] { background: var(--aviso); }
.ponto[data-estado="erro"] { background: var(--erro); }
.ponto[data-estado="encerrada"] { background: transparent; border: 1px solid var(--texto-2); }
.s-nome { font: 600 13px var(--mono); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.s-meta { grid-column: 2 / -1; color: var(--texto-2); font-size: 12px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.s-selo { font: 600 12px var(--mono); padding: 0 .4rem; border-radius: 999px; background: color-mix(in srgb, var(--marca) 22%, transparent); color: var(--marca); }
.s-selo[data-tipo="main"] { background: transparent; border: 1px solid var(--linha); color: var(--texto-2); }
.sessoes-nota { margin: 0; padding: .5rem .65rem; border-top: 1px solid var(--linha); color: var(--texto-2); font-size: 12px; }

.bancada { flex: 1; min-width: 0; min-height: 0; display: grid; gap: 1px; background: var(--linha); grid-template: 1fr / 1fr; }
.bancada[data-modo="2v"] { grid-template: 1fr / 1fr 1fr; }
.bancada[data-modo="2h"] { grid-template: 1fr 1fr / 1fr; }
.bancada[data-modo="4"] { grid-template: 1fr 1fr / 1fr 1fr; }
.bancada[data-maximo] { grid-template: 1fr / 1fr; }
.bancada[data-maximo] .painel-term:not([data-maximo="true"]) { display: none; }
.painel-term { display: flex; flex-direction: column; min-width: 0; min-height: 0; background: var(--term); position: relative; }
.pt-cab { display: flex; align-items: center; gap: .5rem; min-height: 32px; padding: 0 .35rem 0 .65rem; border-bottom: 1px solid var(--linha); background: var(--painel-2); user-select: none; }
.painel-term[data-ativo="true"] .pt-cab { background: color-mix(in srgb, var(--marca) 9%, var(--painel-2)); box-shadow: inset 0 -2px 0 var(--marca); }
.pt-titulo { font: 600 12.5px var(--mono); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pt-meta { color: var(--texto-2); font: 12px var(--mono); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-width: 0; }
.pt-botao { min-height: 28px; min-width: 28px; padding: 0 .35rem; border-color: transparent; color: var(--texto-2); font-size: 14px; line-height: 1; }
.pt-terminal { flex: 1; min-height: 0; padding: .35rem 0 0 .45rem; }
.pt-terminal .xterm { height: 100%; }
.painel-term[data-vazio="true"] .pt-terminal { display: none; }
.pt-escolha { display: none; flex: 1; overflow: auto; }
.painel-term[data-vazio="true"] .pt-escolha { display: flex; align-items: center; justify-content: center; padding: 1rem; }
.escolha { width: min(26rem, 100%); display: grid; gap: .6rem; }
.escolha p { margin: 0; color: var(--texto-2); font-size: 13px; }
.escolha-lista { list-style: none; margin: 0; padding: 0; display: grid; gap: 4px; max-height: 40vh; overflow: auto; }
.escolha-lista button { width: 100%; min-height: 44px; display: flex; justify-content: space-between; gap: .75rem; text-align: left; }
.escolha-lista b { font: 600 12.5px var(--mono); }
.escolha-lista span { color: var(--texto-2); font-size: 12px; }

.inspetor { width: 27rem; flex: none; display: flex; flex-direction: column; min-height: 0; border-left: 1px solid var(--linha); background: var(--painel); }
.inspetor-topo { display: flex; align-items: stretch; border-bottom: 1px solid var(--linha); }
.inspetor-abas { flex: 1; min-width: 0; display: flex; align-items: stretch; gap: 0; overflow-x: auto; scrollbar-width: thin; }
.inspetor-abas [role="tab"] { flex: none; min-height: 40px; padding: 0 .5rem; border: 0; border-radius: 0; border-bottom: 2px solid transparent; color: var(--texto-2); font-size: 12.5px; }
.inspetor-abas [role="tab"][aria-selected="true"] { color: var(--texto); border-bottom-color: var(--marca); }
.fechar-inspetor { margin-left: auto; flex: none; min-height: 40px; border: 0; border-radius: 0; color: var(--texto-2); font-size: 16px; }
.contador { display: inline-block; min-width: 1.25rem; margin-left: .25rem; padding: 0 .3rem; border-radius: 999px; background: var(--marca); color: #111; font: 700 12px/1.5 var(--mono); text-align: center; }
.aba { flex: 1; overflow: auto; padding: .8rem .9rem 1.5rem; display: block; }
.aba-lead { margin: 0 0 .7rem; color: var(--texto-2); font-size: 13px; }
.aba-lead a { color: var(--texto); }
.aba-h { margin: 1rem 0 .4rem; font: 600 12px var(--mono); text-transform: uppercase; letter-spacing: .06em; color: var(--texto-2); }
.vazio { color: var(--texto-2); font-size: 13px; }
.lista-simples { list-style: none; margin: 0; padding: 0; border: 1px solid var(--linha); border-radius: 8px; max-height: 32vh; overflow: auto; }
.lista-simples:empty { display: none; }
.lista-simples li { display: flex; flex-wrap: wrap; gap: .2rem .6rem; align-items: baseline; justify-content: space-between; padding: .35rem .55rem; border-bottom: 1px solid var(--linha); font-size: 12.5px; }
.lista-simples li:last-child { border-bottom: 0; }
.lista-simples.mono li { font-family: var(--mono); }
.lista-simples .sub, .sub { color: var(--texto-2); font-size: 12px; }
.lista-simples button { min-height: 30px; padding: .1rem .5rem; font-size: 12px; }
.mais { color: var(--ok); } .menos { color: var(--erro); }
.alt-resumo { margin: 0 0 .5rem; font-size: 13px; color: var(--texto-2); }
.alt-resumo b { color: var(--texto); }
.caixa-acao { display: grid; gap: .55rem; margin-top: .9rem; padding: .65rem .75rem; border: 1px solid color-mix(in srgb, var(--marca) 45%, var(--linha)); border-radius: 8px; background: color-mix(in srgb, var(--marca) 8%, var(--painel)); }
.caixa-acao.neutra { border-color: var(--linha); background: var(--fundo); }
.caixa-acao p { margin: 0; font-size: 13px; }
.caixa-acao .botoes { display: flex; flex-wrap: wrap; gap: .4rem; }
.linha-acoes { display: flex; flex-wrap: wrap; align-items: center; gap: .4rem .6rem; font-size: 12.5px; }
.linha-acoes button { min-height: 32px; padding: .2rem .6rem; font-size: 12.5px; }
.linha-acoes a { color: var(--texto-2); }
.marcador { display: inline-flex; align-items: center; gap: .35rem; font: 500 12.5px var(--sans); text-transform: none; letter-spacing: 0; color: var(--texto); }
.marcador input { width: auto; min-height: 0; }
.conferencia { margin: .5rem 0; font: 500 12.5px var(--mono); color: var(--texto-2); }
.conferencia[data-estado="ok"]::before { content: "✓ "; color: var(--ok); }
.conferencia[data-estado="erro"] { color: var(--erro); }
.bloco-codigo { margin: .5rem 0; padding: .6rem .75rem; max-height: 40vh; overflow: auto; border: 1px solid var(--linha); border-radius: 8px; background: var(--fundo); font: 12.5px/1.5 var(--mono); white-space: pre-wrap; }
.recibos { list-style: none; margin: 0; padding: 0; max-height: 55vh; overflow: auto; border: 1px solid var(--linha); border-radius: 8px; }
.recibos:empty { display: none; }
.recibos li { display: grid; grid-template-columns: auto 1fr auto; gap: .1rem .6rem; align-items: baseline; padding: .35rem .55rem; border-bottom: 1px solid var(--linha); font-size: 12.5px; }
.recibos li:last-child { border-bottom: 0; }
.recibos time { color: var(--texto-2); font: 12px var(--mono); }
.recibos b { font: 600 12px var(--mono); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.recibos code { grid-column: 1 / -1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--texto-2); }
.selo-recibo { font: 500 12px var(--mono); color: var(--ok); }
.recibos li[data-tom="aviso"] .selo-recibo { color: var(--aviso); }
.recibos li[data-tom="negado"] .selo-recibo { color: var(--erro); }
.recibos li[data-ok="false"] { background: color-mix(in srgb, var(--erro) 12%, transparent); }
.busca { display: flex; gap: .4rem; margin: 0 0 .3rem; }
.busca button { flex: none; }
.cartoes { list-style: none; margin: 0; padding: 0; display: grid; gap: .5rem; }
.cartao-item { display: grid; gap: .35rem; padding: .6rem .7rem; border: 1px solid var(--linha); border-radius: 10px; background: var(--fundo); }
.cartao-item[data-destaque="true"] { border-color: var(--marca); }
.cartao-item > b { font-size: 13.5px; }
.cartao-item p { margin: 0; font-size: 12.5px; color: var(--texto-2); }
.chips { display: flex; flex-wrap: wrap; gap: .3rem; }
.chip { padding: 0 .45rem; border: 1px solid var(--linha); border-radius: 999px; font: 500 12px/1.6 var(--mono); color: var(--texto-2); }
.chip[data-tom="ok"] { color: var(--ok); border-color: color-mix(in srgb, var(--ok) 40%, var(--linha)); }
.chip[data-tom="aviso"] { color: var(--aviso); border-color: color-mix(in srgb, var(--aviso) 40%, var(--linha)); }
.chip[data-tom="negado"] { color: var(--erro); border-color: color-mix(in srgb, var(--erro) 40%, var(--linha)); }
.cartao-acoes { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem .8rem; font-size: 12.5px; }
.cartao-acoes button { min-height: 32px; padding: .2rem .7rem; font-size: 12.5px; }
.cartao-acoes a { color: var(--texto-2); }
.cartao-saida:empty { display: none; }
.cartao-item .cartao-saida { color: var(--texto); }
.arquivos { list-style: none; margin: 0; padding: 0; display: grid; gap: 3px; }
.arquivos li { display: flex; align-items: center; gap: .6rem; justify-content: space-between; font: 12px var(--mono); }
.arquivos li > span:first-child { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.arquivos button { min-height: 30px; padding: .1rem .55rem; font-size: 12px; }
.destino { margin: 0 0 .6rem; padding: .45rem .6rem; border-radius: 8px; background: var(--fundo); font: 12px var(--mono); color: var(--texto-2); }
.destino[data-alerta="true"] { color: var(--aviso); }
.form-sintetico { display: grid; grid-template-columns: 1fr 6rem 6rem; gap: .4rem .5rem; align-items: end; margin: 0; }
.form-sintetico button { grid-column: 1 / -1; justify-self: start; }
.campo { display: grid; gap: .25rem; align-content: start; }
.passos { display: grid; gap: .5rem; }
.passo { display: grid; gap: .25rem; padding: .55rem .65rem; border: 1px solid var(--linha); border-radius: 10px; background: var(--fundo); }
.passo b { font-size: 13px; } .passo span { color: var(--texto-2); font-size: 12.5px; }
.copiar { justify-self: start; font-family: var(--mono); font-size: 12.5px; min-height: 32px; }
.copiar::after { content: "  usar"; color: var(--texto-2); }
.copiar[data-feito="true"]::after { content: "  enviado"; color: var(--ok); }
.atalhos { margin: .3rem 0 0; color: var(--texto-2); font-size: 12.5px; }

.status { display: flex; flex-wrap: wrap; align-items: center; gap: .3rem .45rem; padding: .25rem .6rem; border-top: 1px solid var(--linha); background: var(--painel); }
.status button { min-height: 30px; padding: .1rem .55rem; font-size: 12px; }
.conexao, .medida { color: var(--texto-2); font: 500 12px var(--mono); white-space: nowrap; }
.conexao::before { content: "●"; margin-right: .4rem; color: var(--texto-2); }
.conexao[data-estado="ok"]::before { color: var(--ok); }
.conexao[data-estado="ligando"]::before { color: var(--aviso); }
.conexao[data-estado="erro"]::before { color: var(--erro); }
.medida { padding-left: .5rem; border-left: 1px solid var(--linha); }
.medida[data-alerta="true"] { color: var(--aviso); }
.medida-botao { border: 1px solid color-mix(in srgb, var(--marca) 50%, var(--linha)); border-radius: 999px; color: var(--marca); }
.grupo-botoes { display: inline-flex; border: 1px solid var(--linha); border-radius: 8px; overflow: hidden; }
.grupo-botoes button { border: 0; border-radius: 0; min-width: 34px; padding: 0 .45rem; }
.grupo-botoes button + button { border-left: 1px solid var(--linha); }
.grupo-botoes button[aria-pressed="true"] { background: color-mix(in srgb, var(--marca) 18%, transparent); }
.ic { display: inline-block; width: 16px; height: 12px; border: 1.5px solid currentColor; border-radius: 2px; vertical-align: middle; }
.ic-2v { background: linear-gradient(90deg, transparent calc(50% - .75px), currentColor calc(50% - .75px), currentColor calc(50% + .75px), transparent calc(50% + .75px)); }
.ic-2h { background: linear-gradient(0deg, transparent calc(50% - .75px), currentColor calc(50% - .75px), currentColor calc(50% + .75px), transparent calc(50% + .75px)); }
.ic-4 { background: linear-gradient(90deg, transparent calc(50% - .75px), currentColor calc(50% - .75px), currentColor calc(50% + .75px), transparent calc(50% + .75px)), linear-gradient(0deg, transparent calc(50% - .75px), currentColor calc(50% - .75px), currentColor calc(50% + .75px), transparent calc(50% + .75px)); }
#avisos[data-ligado="true"] { border-color: var(--ok); color: var(--ok); }
.teclas { display: none; gap: .35rem; padding: .35rem .5rem; overflow-x: auto; border-top: 1px solid var(--linha); background: var(--painel); }
.teclas button { min-width: 44px; min-height: 40px; padding: .2rem .5rem; font: 500 13px var(--mono); flex: none; }
@media (pointer: coarse) { .teclas { display: flex; } }
.aviso-copia { position: absolute; right: 1rem; bottom: 3.2rem; z-index: 6; max-width: min(30rem, calc(100% - 2rem)); margin: 0; padding: .45rem .75rem; border: 1px solid color-mix(in srgb, var(--ok) 50%, var(--linha)); border-radius: 8px; background: var(--painel); color: var(--texto); font: 500 12.5px var(--sans); box-shadow: 0 6px 18px rgba(0, 0, 0, .4); }
.aviso-copia[data-alerta="true"] { border-color: color-mix(in srgb, var(--aviso) 60%, var(--linha)); }

/* Faixas de pedido (aprovações, instalar). */
.pedido { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .6rem 1rem; padding: .55rem 1rem; border-bottom: 1px solid color-mix(in srgb, var(--marca) 45%, var(--linha)); background: color-mix(in srgb, var(--marca) 10%, var(--painel)); max-height: 45vh; overflow: auto; }
.pedido p { margin: 0; font-size: 13.5px; }
.pedido button.primario { min-height: 36px; }
.pedido.aprovacoes { display: block; }
.aprovacoes-lista { list-style: none; margin: .5rem 0 0; padding: 0; display: grid; gap: .5rem; }
.aprovacoes-lista li { padding: .55rem .7rem; border: 1px solid var(--linha); border-radius: 8px; background: var(--painel); }
.aprov-topo { display: flex; flex-wrap: wrap; gap: .3rem .75rem; align-items: baseline; font-size: 13px; }
.aprov-topo b { font: 600 13px var(--mono); color: var(--marca); }
.aprov-topo span { color: var(--texto-2); }
.aprov-prazo { margin-left: auto; font: 500 12px var(--mono); }
.aprov-onde { flex-basis: 100%; font: 12px var(--mono); }
.aprovacoes-lista pre { margin: .4rem 0; padding: .45rem .6rem; max-height: 9rem; overflow: auto; border-radius: 6px; background: var(--fundo); font: 12.5px/1.45 var(--mono); white-space: pre-wrap; overflow-wrap: anywhere; }
.aprov-hash { margin: 0 0 .45rem; color: var(--texto-2); font: 12px var(--mono); overflow-wrap: anywhere; }
.aprov-acoes { display: flex; flex-wrap: wrap; gap: .5rem; }
#erro-aprovacao { margin: .5rem 0 0; }

/* Diálogos: nova sessão e paleta de comandos. */
.dialogo { width: min(46rem, calc(100% - 2rem)); max-height: calc(100% - 3rem); padding: 1.1rem 1.2rem; border: 1px solid var(--linha-2); border-radius: 14px; background: var(--painel); color: var(--texto); box-shadow: 0 24px 60px rgba(0, 0, 0, .55); }
.dialogo::backdrop { background: rgba(3, 7, 18, .62); }
.form-nova { grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr)); gap: .6rem .9rem; margin: 0; }
.form-nova h2 { grid-column: 1 / -1; margin: 0; font-size: 1.1rem; }
.campo-largo { grid-column: 1 / -1; }
.nota-nova { margin: 0; color: var(--texto-2); font-size: 12.5px; }
.acoes-nova { display: flex; flex-wrap: wrap; gap: .5rem; }
.paleta { width: min(38rem, calc(100% - 2rem)); margin-top: 12vh; padding: .5rem; }
.paleta input { min-height: 44px; font-size: 15px; border-color: var(--linha-2); }
.paleta-lista { list-style: none; margin: .4rem 0 0; padding: 0; max-height: 50vh; overflow: auto; }
.paleta-lista li { display: flex; justify-content: space-between; gap: 1rem; padding: .5rem .65rem; border-radius: 8px; cursor: pointer; font-size: 13.5px; }
.paleta-lista li[aria-selected="true"] { background: color-mix(in srgb, var(--marca) 16%, transparent); }
.so-celular { display: none; }

@media (max-width: 1100px) {
  .inspetor { position: absolute; inset: 0 0 0 auto; z-index: 5; width: min(25rem, 92vw); box-shadow: -8px 0 24px rgba(0, 0, 0, .45); }
  .sessoes { width: 13.5rem; }
}
@media (max-width: 760px) {
  .so-celular { display: inline-flex; }
  .quem, .selo, .paleta-botao span, #vagas, #tela-cheia, .grupo-botoes, .status [data-acao], #fonte-menos, #fonte-mais { display: none; }
  .paleta-botao { min-width: 0; }
  .sessoes { position: absolute; inset: 0 auto 0 0; z-index: 6; width: min(20rem, 88vw); box-shadow: 8px 0 24px rgba(0, 0, 0, .45); }
  .sessoes:not(.aberta) { display: none; }
  .s-lado { display: none; }
  .bancada { grid-template: 1fr / 1fr !important; }
  .bancada .painel-term:not([data-ativo="true"]) { display: none; }
  .inspetor { width: 100vw; }
  .pt-terminal { padding: .2rem 0 0 .2rem; }
  .form-sintetico { grid-template-columns: 1fr 1fr; }
  .form-sintetico .campo:first-child { grid-column: 1 / -1; }
}

/* 0.8.0: arquivos, editor e busca no terminal. */
.painel-term[data-tipo="editor"] .pt-terminal, .painel-term[data-tipo="editor"] .pt-escolha, .painel-term[data-tipo="editor"] .pt-so-terminal { display: none; }
.pt-editor { display: none; flex: 1; min-height: 0; flex-direction: column; }
.painel-term[data-tipo="editor"] .pt-editor { display: flex; }
.editor-texto { flex: 1; min-height: 0; width: 100%; border: 0; border-radius: 0; padding: .6rem .8rem; background: var(--term); color: var(--texto); font: 13px/1.55 var(--mono); resize: none; tab-size: 2; white-space: pre; overflow: auto; }
.editor-texto:focus-visible { outline: none; box-shadow: inset 0 0 0 1px var(--linha-2); }
.editor-barra { display: flex; flex-wrap: wrap; align-items: center; gap: .4rem .6rem; padding: .3rem .5rem; border-top: 1px solid var(--linha); background: var(--painel-2); font-size: 12.5px; }
.editor-barra button { min-height: 30px; padding: .1rem .6rem; font-size: 12.5px; }
.editor-barra a { color: var(--texto-2); }
.editor-estado { color: var(--texto-2); font: 12px var(--mono); }
.painel-term[data-soltar="true"], #aba-arquivos[data-soltar="true"] { outline: 2px dashed var(--marca); outline-offset: -4px; }
.pt-busca { display: flex; flex-direction: column; max-height: 45%; border-bottom: 1px solid var(--linha); background: var(--painel-2); }
.busca-topo { display: flex; align-items: center; gap: .4rem; padding: .35rem .45rem; }
.busca-topo input { min-height: 32px; font-size: 13px; }
.busca-topo button { min-height: 32px; padding: .1rem .55rem; font-size: 12px; flex: none; }
.busca-topo .sub { flex: none; white-space: nowrap; }
.busca-resultados { list-style: none; margin: 0; padding: 0 .3rem .3rem; overflow: auto; }
.busca-resultados button { width: 100%; min-height: 28px; display: flex; gap: .6rem; padding: .1rem .4rem; border: 0; text-align: left; font: 12px var(--mono); white-space: pre; overflow: hidden; }
.busca-resultados button:hover { background: var(--fundo); }
.busca-resultados mark { background: color-mix(in srgb, var(--marca) 45%, transparent); color: var(--texto); }
.lista-arquivos { list-style: none; margin: .4rem 0 0; padding: 0; border: 1px solid var(--linha); border-radius: 8px; max-height: 55vh; overflow: auto; }
.lista-arquivos li { display: flex; align-items: center; justify-content: space-between; gap: .5rem; padding: .15rem .4rem; border-bottom: 1px solid var(--linha); }
.lista-arquivos li:last-child { border-bottom: 0; }
.arq-nome { flex: 1; min-width: 0; min-height: 34px; padding: .1rem .3rem; border: 0; text-align: left; font: 12.5px var(--mono); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.arq-nome[data-pasta="true"] { color: var(--marca); }
.arq-acoes { display: inline-flex; align-items: center; gap: .6rem; font-size: 12px; }
.arq-acoes a { color: var(--texto-2); }
