:root{--background:#f4f6f9;--surface:#fff;--text:#10172a;--text-muted:#64748b;--primary:#2563eb;--primary-hover:#1d4ed8;--primary-contrast:#fff;--success:#15803d;--success-bg:#f0fdf4;--warning:#b45309;--warning-bg:#fffbeb;--danger:#b91c1c;--danger-bg:#fef2f2;--border:#e5e9f0;--sidebar-bg:#0f1729;--sidebar-bg-elevated:#161f36;--sidebar-text:#cbd5e1;--sidebar-text-muted:#7c8aa5;--sidebar-text-active:#fff;--sidebar-active-bg:#2563eb38;--sidebar-border:#ffffff14;--faixa-secao-bg:#1e2f57;--faixa-secao-text:#fff;--grupo-categoria-bg:#e8eef8;--grupo-categoria-borda:var(--primary);--grade-divisoria:#cbd5e1;--grade-cabecalho-base:#94a3b8;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--shadow-sm:0 1px 2px #0f172a0d;--shadow-md:0 8px 24px #0f172a1a;--sidebar-width:248px;--font-sans:-apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--background);color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0;font-size:15px;line-height:1.5}button,input{font-family:inherit;font-size:inherit}a{color:var(--primary)}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.button{justify-content:center;align-items:center;gap:var(--space-2);min-height:44px;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);cursor:pointer;border:1px solid #0000;font-size:1rem;font-weight:600;transition:opacity .15s;display:inline-flex}.button:disabled{opacity:.6;cursor:not-allowed}.button--primary{background:var(--primary);color:var(--primary-contrast)}.button--primary:not(:disabled):hover{opacity:.9}.button--secondary{background:var(--surface);color:var(--text);border-color:var(--border)}.button--secondary:not(:disabled):hover{background:var(--background)}.button--danger{background:var(--danger-bg);color:var(--danger);border-color:var(--danger)}.button--danger:not(:disabled):hover{opacity:.85}.button--full{width:100%}.spinner{border:2px solid;border-top-color:#0000;border-radius:50%;width:1em;height:1em;animation:.7s linear infinite girar}@keyframes girar{to{transform:rotate(360deg)}}.field{gap:var(--space-1);flex-direction:column;display:flex}.field label,.field__rotulo{font-size:.9rem;font-weight:600}.field input{min-height:44px;padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--text)}.field input:invalid,.field--erro input{border-color:var(--danger)}.field__erro{color:var(--danger);font-size:.85rem}.field textarea{min-height:64px;padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--text);font:inherit;resize:vertical}.field--erro textarea{border-color:var(--danger)}.field__rodape{justify-content:space-between;gap:var(--space-1) var(--space-3);flex-wrap:wrap;display:flex}.field__dica{color:var(--text-muted);font-size:.8rem}.field__contador{color:var(--text-muted);white-space:nowrap;margin-left:auto;font-size:.8rem}.field__contador--excedido{color:var(--danger);font-weight:600}.observacoes-item{gap:var(--space-1);flex-direction:column;display:flex}.observacoes-item__titulo{font-size:.9rem;font-weight:600}.observacoes-item__texto{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--text);margin:0}.field--quantidade input{text-align:center;min-height:64px;font-size:2rem;font-weight:700}.field--quantidade input::placeholder{color:var(--text-muted);font-size:.95rem;font-weight:400}.field__unidade{text-align:center;color:var(--text-muted);font-weight:600}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-4)}.page-header{margin-bottom:var(--space-5)}.page-header__titulo{letter-spacing:-.01em;margin:0;font-size:22px;font-weight:700}@media (width>=1024px){.page-header__titulo{font-size:28px}}.page-header__subtitulo{color:var(--text-muted);margin:4px 0 0;font-size:14px}.dashboard-grid{gap:var(--space-4);grid-template-columns:1fr;display:grid}@media (width>=768px){.dashboard-grid{grid-template-columns:repeat(3,1fr)}}.dashboard-card{gap:var(--space-3);flex-direction:column;display:flex}.dashboard-card__icone{border-radius:var(--radius-md);background:var(--background);width:40px;height:40px;color:var(--primary);justify-content:center;align-items:center;display:flex}.dashboard-card__titulo{font-size:16px;font-weight:600}.dashboard-card__descricao{color:var(--text-muted);flex:1;font-size:13px}.toolbar{align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.search-input{flex:220px;max-width:360px;position:relative}.seletor-ordenacao{align-items:center;gap:var(--space-2);color:var(--text-muted);font-size:.9rem;display:flex}.seletor-ordenacao select{width:auto;min-height:40px}.search-input__icone{color:var(--text-muted);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.search-input__label-oculto{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.search-input input{width:100%;min-height:40px;padding:var(--space-2) var(--space-3) var(--space-2) 38px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--text)}.section-titulo{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin:0 0 var(--space-2);font-size:13px;font-weight:600}.list-item{align-items:center;gap:var(--space-3);padding:10px var(--space-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);transition:border-color .15s;display:flex}.list-item:hover{border-color:#cbd5e1}.list-item__conteudo{text-align:left;flex:auto;min-width:0}.list-item__principal{align-items:center;gap:var(--space-3);flex:auto;min-width:0;display:flex}.list-item__miniatura{border-radius:var(--radius-sm,4px);flex-shrink:0;width:40px;height:40px;overflow:hidden}.miniatura-item{object-fit:cover;width:100%;height:100%;display:block}.miniatura-item--vazia{background:var(--color-surface-muted,#eee);color:var(--text-muted);opacity:.6;justify-content:center;align-items:center;display:flex}.list-item__titulo{overflow-wrap:anywhere;font-weight:600}.list-item__subtitulo{color:var(--text-muted);font-size:.9rem}.list-item__acoes{gap:var(--space-2);flex-wrap:wrap;flex-shrink:0;display:flex}@media (width<=560px){.list-item{flex-direction:column;align-items:stretch}.list-item__acoes{justify-content:flex-end}}.skeleton{background:linear-gradient(90deg, var(--border) 25%, #f1f5f9 37%, var(--border) 63%);border-radius:var(--radius-md);background-size:400% 100%;height:56px;animation:1.4s infinite skeleton-shimmer}@keyframes skeleton-shimmer{0%{background-position:100%}to{background-position:0}}.empty-state{text-align:center;padding:var(--space-6) var(--space-4);color:var(--text-muted)}.empty-state__titulo{color:var(--text);margin-bottom:var(--space-2);font-weight:600}.toast-container{align-items:center;gap:var(--space-2);padding:0 var(--space-4);z-index:60;pointer-events:none;flex-direction:column;display:flex;position:fixed;bottom:76px;left:0;right:0}@media (width>=768px){.toast-container{bottom:var(--space-5);align-items:flex-end}}.toast{pointer-events:auto;width:100%;max-width:420px;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);box-shadow:var(--shadow-md);font-weight:500}.toast--sucesso{background:var(--success-bg);color:var(--success);border:1px solid var(--success)}.toast--erro{background:var(--danger-bg);color:var(--danger);border:1px solid var(--danger)}.toast--aviso{background:var(--warning-bg);color:var(--warning);border:1px solid var(--warning)}.selector-sheet-backdrop{z-index:50;background:#0f172a66;position:fixed;inset:0}.selector-sheet{background:var(--surface);border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:var(--shadow-md);padding:var(--space-4);z-index:51;max-height:70vh;position:fixed;bottom:0;left:0;right:0;overflow-y:auto}@media (width>=768px){.selector-sheet{border-radius:var(--radius-lg);width:420px;max-height:80vh;inset:50% auto auto 50%;transform:translate(-50%,-50%)}}.selector-sheet__titulo{margin-bottom:var(--space-3);font-weight:700}.selector-sheet__opcao{text-align:left;width:100%;padding:var(--space-3);border-radius:var(--radius-md);cursor:pointer;background:0 0;border:1px solid #0000;min-height:44px;display:block}.selector-sheet__opcao:hover{background:var(--background)}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:1.4s}.skeleton{background:var(--border);animation:none}}.field select{min-height:44px;padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--text)}.form-grid{gap:var(--space-3);margin-bottom:var(--space-4);grid-template-columns:1fr;display:grid}@media (width>=640px){.form-grid--2col{grid-template-columns:1fr 1fr}}.form-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.status-badge{padding:2px var(--space-2);border-radius:999px;align-items:center;font-size:.78rem;font-weight:600;display:inline-flex}.status-badge--ativo{background:var(--success-bg);color:var(--success)}.status-badge--inativo{background:var(--background);color:var(--text-muted);border:1px solid var(--border)}.switch{cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;min-width:44px;min-height:44px;padding:0;display:inline-flex}.switch:disabled{opacity:.6;cursor:not-allowed}.switch__track{background:var(--border);border-radius:999px;width:40px;height:22px;transition:background .15s;position:relative}.switch--ativo .switch__track{background:var(--primary)}.switch__thumb{background:var(--surface);width:18px;height:18px;box-shadow:var(--shadow-sm);border-radius:50%;transition:transform .15s;position:absolute;top:2px;left:2px}.switch--ativo .switch__thumb{transform:translate(18px)}.switch-row{align-items:center;gap:var(--space-3);display:flex}.switch-row__rotulo{font-weight:500}.cadastro-secao{margin-bottom:var(--space-6)}.cadastro-secao__cabecalho{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.lista-cadastro{gap:var(--space-2);flex-direction:column;display:flex}.conversao-formula{font-variant-numeric:tabular-nums;font-weight:600}.conversao-escopo{color:var(--text-muted);font-size:.85rem}@media (prefers-reduced-motion:reduce){.switch__track,.switch__thumb{transition:none}}.grupo-categoria__cabecalho{align-items:center;gap:var(--space-2);width:100%;min-height:44px;margin:0 0 var(--space-2);padding:var(--space-2) var(--space-3);background:var(--grupo-categoria-bg);color:var(--text);border:none;border-left:4px solid var(--grupo-categoria-borda);border-radius:var(--radius-sm);text-align:left;cursor:pointer;font-size:15px;font-weight:700;display:flex}.grupo-categoria__cabecalho:disabled{cursor:default;color:var(--text)}.grupo-categoria__contagem{color:var(--text-muted);font-size:13px;font-weight:500}.bloco-secao{margin:0 0 var(--space-5);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--background);overflow:hidden}.faixa-secao{padding:var(--space-3) var(--space-4);background:var(--faixa-secao-bg);color:var(--faixa-secao-text);letter-spacing:.01em;margin:0;font-size:16px;font-weight:700}.bloco-secao__corpo{padding:var(--space-4)}.bloco-secao__corpo>.card:last-of-type{margin-bottom:var(--space-3)}@media (width<=560px){.bloco-secao__corpo{padding:var(--space-3)}}.selector-sheet__grupo{margin:var(--space-3) 0 var(--space-1);padding:var(--space-2) var(--space-3);background:var(--grupo-categoria-bg);border-left:4px solid var(--grupo-categoria-borda);border-radius:var(--radius-sm);font-size:14px;font-weight:700}.resumo-producao{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.resumo-producao__valor{font-variant-numeric:tabular-nums;font-size:1.75rem;font-weight:700}.resumo-producao__linha{font-variant-numeric:tabular-nums;font-weight:600}.tabela-producao__moldura{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);overflow-x:auto}.tabela-producao{border-collapse:collapse;width:100%;font-size:14px}.tabela-producao th{background:var(--faixa-secao-bg);color:var(--faixa-secao-text);text-align:left;padding:var(--space-2) var(--space-3);white-space:nowrap;font-weight:700}.tabela-producao td{padding:var(--space-2) var(--space-3);border-top:1px solid var(--border);vertical-align:top}.tabela-producao__desvio td{background:var(--danger-bg)}@media (width<=760px){.tabela-producao__moldura{background:0 0;border:none}.tabela-producao thead{display:none}.tabela-producao,.tabela-producao tbody,.tabela-producao tr,.tabela-producao td{width:100%;display:block}.tabela-producao tr{margin-bottom:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);overflow:hidden}.tabela-producao td{border-top:none}.tabela-producao td[data-rotulo]:not([data-rotulo=""]):before{content:attr(data-rotulo);color:var(--text-muted);text-transform:uppercase;font-size:12px;font-weight:700;display:block}}.aviso-pendente{color:var(--warning,#b45309);font-size:.8rem;font-weight:600;display:inline-block}.resultado-salvamento{padding:var(--space-3);border:1px solid var(--danger,#dc2626);border-radius:var(--radius-md);background:var(--surface)}.formulario-campos{border:0;min-width:0;margin:0;padding:0}.aviso-contagem{gap:var(--space-2);margin-bottom:var(--space-3);border-left:4px solid var(--primary);flex-direction:column;display:flex}.aviso-contagem--alerta{border-left-color:var(--warning);background:var(--warning-bg)}.barra-contagem{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.barra-contagem__texto{min-width:0}.barra-contagem__orientacao{gap:var(--space-1) var(--space-3);margin-top:var(--space-1);color:var(--text);flex-wrap:wrap;font-size:.82rem;font-weight:600;display:flex}@media (width<=720px){.barra-contagem__acoes{left:var(--space-4);right:var(--space-4);bottom:calc(64px + var(--space-2));z-index:30;padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);justify-content:flex-end;position:fixed;box-shadow:0 4px 16px #0000001f}.grade-contagem__moldura{margin-bottom:80px}}.barra-contagem__acoes{gap:var(--space-2);flex-wrap:wrap;display:flex}.situacao-salvamento{align-items:center;gap:var(--space-1);margin-top:var(--space-1);color:var(--text-muted);font-size:.85rem;font-weight:600;display:inline-flex}.situacao-salvamento--ok{color:var(--success)}.situacao-salvamento--pendente{color:var(--warning)}.situacao-salvamento--falha{color:var(--danger)}.girando{animation:1s linear infinite girar}.link-botao{color:var(--primary);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.alternador-visao{border:1px solid var(--border);border-radius:var(--radius-md);display:inline-flex;overflow:hidden}.alternador-visao button,.seletor-localizacao button{align-items:center;gap:var(--space-1);min-height:40px;padding:0 var(--space-3);background:var(--surface);color:var(--text);font:inherit;cursor:pointer;border:0;display:inline-flex}.alternador-visao button[aria-pressed=true],.seletor-localizacao button[aria-selected=true]{background:var(--primary);color:var(--primary-contrast)}.seletor-localizacao{gap:var(--space-2);margin-bottom:var(--space-3);padding-bottom:var(--space-1);display:flex;overflow-x:auto}.seletor-localizacao button{border:1px solid var(--border);border-radius:999px;flex:none}.grade-contagem__moldura{--grade-coluna-item:320px;--grade-coluna-local:180px;max-height:max(360px,100dvh - 360px);margin-bottom:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);overscroll-behavior:contain;overflow:auto}.grade-contagem{table-layout:fixed;border-collapse:separate;border-spacing:0;width:max-content;min-width:100%}.grade-contagem th,.grade-contagem td{padding:6px var(--space-2);border-bottom:1px solid var(--border);text-align:left;vertical-align:top;background:var(--surface)}.grade-contagem td+td,.grade-contagem thead th+th{border-left:1px solid var(--grade-divisoria)}.grade-contagem thead th{z-index:2;vertical-align:middle;background:var(--background);border-bottom:2px solid var(--grade-cabecalho-base);white-space:normal;overflow-wrap:break-word;word-break:normal;height:88px;font-size:.875rem;font-weight:700;line-height:1.25;position:sticky;top:0}.grade-contagem__canto{width:var(--grade-coluna-item);min-width:var(--grade-coluna-item);border-right:1px solid var(--grade-divisoria);left:0;z-index:3!important}.grade-contagem__local{width:var(--grade-coluna-local);min-width:var(--grade-coluna-local)}.grade-contagem__item{z-index:1;width:var(--grade-coluna-item);min-width:var(--grade-coluna-item);max-width:var(--grade-coluna-item);border-right:1px solid var(--grade-divisoria);font-weight:500;position:sticky;left:0}.grade-contagem__item-conteudo{align-items:center;gap:var(--space-3);min-width:0;display:flex}.grade-contagem__miniatura{border-radius:var(--radius-sm,4px);flex:0 0 56px;width:56px;height:56px;overflow:hidden}.grade-contagem__item-texto{flex-direction:column;min-width:0;display:flex}.grade-contagem__nome{overflow-wrap:break-word;word-break:normal;line-height:1.3}.grade-contagem__unidade{color:var(--text-muted);font-size:.8rem}.grade-contagem__grupo th{background:var(--grupo-categoria-bg);border-bottom:1px solid var(--border);padding:6px 0;font-size:.85rem;font-weight:700}.grade-contagem__observacoes-botao{align-self:flex-start;align-items:center;gap:4px;min-height:24px;margin-top:2px;font-size:.8rem;display:inline-flex}.grade-contagem__observacoes td{padding:var(--space-2) var(--space-3);background:var(--grupo-categoria-bg);border-bottom:1px solid var(--border)}.grade-contagem__observacoes-conteudo{left:var(--space-3);max-width:min(640px,100vw - 64px);font-size:.9rem;position:sticky}.grade-contagem__grupo-rotulo{padding:0 var(--space-3);border-left:4px solid var(--grupo-categoria-borda);display:inline-block;position:sticky;left:0}.celula-contagem{flex-direction:column;gap:2px;min-width:0;display:flex}.celula-contagem input{width:100%;min-height:36px;padding:0 var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);font:inherit;font-variant-numeric:tabular-nums}.celula-contagem--nao-salva input{border-color:var(--warning)}.celula-contagem--erro input{border-color:var(--danger)}.celula-contagem__estado{color:var(--warning);font-size:.72rem;font-weight:600}.celula-contagem__estado--ok{color:var(--success)}.celula-contagem__erro{color:var(--danger);font-size:.75rem}.celula-contagem__referencia{border-top:1px dashed var(--border);color:var(--text-muted);flex-direction:column;margin-top:2px;padding-top:3px;font-size:.72rem;line-height:1.35;display:flex}.celula-contagem__referencia-linha{white-space:nowrap;align-items:baseline;gap:0 4px;min-width:0;display:flex}.celula-contagem__referencia-linha strong{color:var(--text);font-weight:600}.celula-contagem__referencia-autor{text-overflow:ellipsis;min-width:0;overflow:hidden}@media (width<=720px){.grade-contagem__moldura:has(.grade-contagem--uma){max-height:none;overflow:visible}.grade-contagem--uma thead{display:none}.grade-contagem--uma,.grade-contagem--uma tbody,.grade-contagem--uma tr,.grade-contagem--uma th,.grade-contagem--uma td{width:100%;min-width:0;max-width:none;display:block}.grade-contagem--uma .grade-contagem__item{border-bottom:0;border-right:0;position:static}.grade-contagem--uma .grade-contagem__miniatura{flex-basis:48px;width:48px;height:48px}.grade-contagem--uma td{border-left:0}.grade-contagem--uma .celula-contagem input{min-height:44px;font-size:16px}}.revisao-contagem__secao{margin-bottom:var(--space-4)}.revisao-contagem__linha{gap:var(--space-1);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);margin-bottom:var(--space-2);flex-direction:column;display:flex}.revisao-contagem__linha--pendente{border-color:var(--warning);background:var(--warning-bg)}.revisao-contagem__principal{justify-content:space-between;gap:var(--space-2);flex-wrap:wrap;display:flex}.revisao-contagem__quantidade{font-variant-numeric:tabular-nums}.revisao-contagem__pendencia{gap:var(--space-2);color:var(--warning);flex-direction:column;font-size:.9rem;font-weight:600;display:flex}.revisao-contagem__acoes{gap:var(--space-2);flex-wrap:wrap;display:flex}.resumo-conclusao{padding-left:var(--space-4);margin:0}.resumo-estoque{flex-direction:column;gap:2px;display:flex}.resumo-estoque__locais{gap:2px var(--space-3);flex-wrap:wrap;font-size:.8rem;display:flex}.saldo-negativo{color:var(--danger)}.saldo-desconhecido{color:var(--text-muted);font-style:italic}.saldo-referencia{color:var(--text-muted)}.cobertura-incompleta{color:var(--warning);font-weight:600}.detalhe-estoque{gap:var(--space-2);flex-direction:column;display:flex}.detalhe-estoque__linha{gap:var(--space-2);padding:var(--space-2) 0;border-bottom:1px solid var(--border);grid-template-columns:minmax(96px,30%) 1fr;display:grid}.detalhe-estoque__local{font-weight:600}.troca-unidade{gap:var(--space-3);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--background);flex-direction:column;display:flex}.troca-unidade__bloco{gap:var(--space-2);flex-direction:column;display:flex}.troca-unidade__bloco .section-titulo{margin:0}.troca-unidade__linha{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.troca-unidade__numero{width:7rem;min-height:36px;padding:0 var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);font:inherit}.troca-unidade__confirmacao,.troca-unidade__opcoes label{align-items:flex-start;gap:var(--space-2);font-weight:400;display:flex}.troca-unidade__confirmacao>input,.troca-unidade__opcoes label>input{flex:none;margin-top:.3em}.troca-unidade__texto{align-items:center;gap:var(--space-2);flex-wrap:wrap;min-width:0;display:flex}.troca-unidade__opcoes .link-botao{margin-left:calc(1em + var(--space-2));align-self:flex-start}.troca-unidade__opcoes{gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);flex-direction:column;min-width:0;margin:0;display:flex}.troca-unidade__opcoes legend{padding:0 var(--space-1);overflow-wrap:anywhere;font-weight:600}.troca-unidade__saldo{flex-direction:column;gap:2px;display:flex}.troca-unidade__acoes{gap:var(--space-2);flex-wrap:wrap;display:flex}.troca-unidade__campo{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.troca-unidade__valor{min-height:44px;padding:0 var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--background);flex:1 0 64px;align-items:center;font-weight:600;display:inline-flex}.app-shell{flex-direction:column;min-height:100%;display:flex}.app-main{flex-direction:column;flex:1;min-height:100%;display:flex}.app-sidebar{display:none}.app-topbar{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--surface);border-bottom:1px solid var(--border);z-index:40;display:flex;position:sticky;top:0}.app-topbar__marca{font-size:15px;font-weight:700}.app-topbar__ambiente{flex:1;justify-content:flex-end;min-width:0;display:flex}.app-topbar__offline{background:var(--warning-bg);color:var(--warning);border-radius:var(--radius-sm);padding:2px var(--space-2);white-space:nowrap;font-size:.8rem;font-weight:600}.app-content{padding:var(--space-4);padding-bottom:calc(76px + var(--space-4));flex:1;width:100%;max-width:1200px;margin:0 auto}.app-nav--bottom{background:var(--surface);border-top:1px solid var(--border);z-index:45;display:flex;position:fixed;bottom:0;left:0;right:0}.app-nav--bottom .app-nav__item{padding:var(--space-2) 0;min-height:56px;color:var(--text-muted);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;font-size:.72rem;text-decoration:none;display:flex}.app-nav--bottom .app-nav__item--ativo{color:var(--primary);font-weight:600}.app-nav--sidebar{gap:var(--space-4);padding:var(--space-3);flex-direction:column;display:flex}.app-nav--sidebar>div{flex-direction:column;gap:2px;display:flex}.app-nav__grupo-titulo{padding:0 var(--space-3) var(--space-1);text-transform:uppercase;letter-spacing:.05em;color:var(--sidebar-text-muted);font-size:11px;font-weight:600}.app-nav--sidebar .app-nav__item{align-items:center;gap:var(--space-3);padding:10px var(--space-3);border-radius:var(--radius-md);color:var(--sidebar-text);font-size:14px;font-weight:500;text-decoration:none;display:flex}.app-nav--sidebar .app-nav__item:hover{background:var(--sidebar-bg-elevated);color:var(--sidebar-text-active)}.app-nav--sidebar .app-nav__item--ativo{background:var(--sidebar-active-bg);color:var(--sidebar-text-active);font-weight:600}.environment-selector{align-items:center;gap:var(--space-2);text-align:left;cursor:pointer;border:none;width:100%;min-height:44px;display:flex}.environment-selector__texto{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.environment-selector__rotulo{text-transform:uppercase;letter-spacing:.04em;color:var(--sidebar-text-muted);font-size:11px}.environment-selector__valor{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.environment-selector--sidebar{padding:var(--space-3);border-radius:var(--radius-md);background:var(--sidebar-bg-elevated);color:var(--sidebar-text-active)}.environment-selector--sidebar:hover{background:#1c2947}.environment-selector--sidebar .environment-selector__icone,.environment-selector--sidebar .environment-selector__chevron{color:var(--sidebar-text-muted);flex-shrink:0}.environment-selector--compacto{padding:6px var(--space-3);border-radius:var(--radius-md);background:var(--background);color:var(--text);max-width:260px;margin-left:auto}.environment-selector--compacto:hover{background:#e9edf3}.environment-selector--compacto .environment-selector__valor{font-size:13px;font-weight:500}.environment-selector--compacto .environment-selector__icone,.environment-selector--compacto .environment-selector__chevron{color:var(--text-muted);flex-shrink:0}@media (width>=1024px){.app-shell{flex-direction:row}.app-sidebar{width:var(--sidebar-width);background:var(--sidebar-bg);border-right:1px solid var(--sidebar-border);flex-direction:column;flex-shrink:0;height:100vh;display:flex;position:sticky;top:0}.app-sidebar__marca{align-items:center;gap:var(--space-2);padding:var(--space-4) var(--space-3);color:var(--sidebar-text-active);border-bottom:1px solid var(--sidebar-border);font-size:14px;font-weight:700;line-height:1.3;display:flex}.app-sidebar__rodape{padding:var(--space-3);border-top:1px solid var(--sidebar-border);margin-top:auto}.app-nav--sidebar .app-nav__item span{display:inline}.app-topbar__marca,.app-topbar__ambiente,.app-nav--bottom{display:none}.app-content{padding:var(--space-5);padding-bottom:var(--space-5);max-width:1200px}}
