* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

:root {
    --bg: #0f0f0f;
    --card: rgba(20, 20, 20, 0.92);
    --card-2: #171717;
    --texto: #ffffff;
    --texto-suave: #d7d7d7;
    --borda: rgba(255,255,255,0.08);
    --sombra: 0 15px 40px rgba(0,0,0,0.35);
}

html { scroll-behavior: smooth; }

body {
    font-family: Arial, Helvetica, sans-serif;
    background: var(--bg);
    color: var(--texto);
}

.topo {
    width: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    padding: 18px 5%;
    background: linear-gradient(to bottom, rgba(0,0,0,0.82), rgba(0,0,0,0.25));
    backdrop-filter: blur(6px);
}

.marca { font-size: 1.4rem; font-weight: 700; letter-spacing: 1px; }

.menu-topo { display: flex; gap: 22px; flex-wrap: wrap; }

.menu-topo a, .rodape a, .voltar-site {
    color: white;
    text-decoration: none;
}

.hero {
    min-height: 100vh;
    background: url('fundo.webp') center center / cover no-repeat;
    position: relative;
    display: flex;
    align-items: center;
    padding: 110px 5% 60px;
}

.overlay { position: absolute; inset: 0; background: rgba(0,0,0,0.35); }

.hero-texto, .info-box, .contato-card, .resumo-card, .carrinho-box, .form-pedido, .login-card, .pedido-card {
    background: var(--card);
    border: 1px solid var(--borda);
    box-shadow: var(--sombra);
    border-radius: 22px;
}

.hero-texto {
    position: relative;
    max-width: 620px;
    z-index: 2;
    padding: 32px;
}

.selo {
    display: inline-block;
    background: rgba(217,15,22,0.12);
    color: #ffd0d2;
    border: 1px solid rgba(255,255,255,0.14);
    border-radius: 999px;
    padding: 8px 14px;
    margin-bottom: 18px;
}

.hero h1 {
    font-size: clamp(2.4rem, 5vw, 4.2rem);
    line-height: 1.03;
    margin-bottom: 18px;
    text-transform: uppercase;
}

.hero p, .titulo-secao p, .texto-suave, .categoria-cabecalho span, .item-info small, .vazio, .itens-pedido, .info-box span, .contato-card span, .resumo-card span {
    color: var(--texto-suave);
}

.acoes-hero { display: flex; gap: 14px; flex-wrap: wrap; }

.btn, .btn-add, .btn-small, .btn-limpar {
    border: none;
    border-radius: 12px;
    cursor: pointer;
}

.btn {
    padding: 15px 24px;
    font-weight: 700;
    text-decoration: none;
    transition: transform 0.25s ease, box-shadow 0.25s ease, background 0.25s ease;
    display: inline-block;
}

.btn:hover, .btn-add:hover { transform: translateY(-3px); }

.btn-vermelho, .btn-add, .btn-enviar {
    background: linear-gradient(to bottom, #ef2028, #b20a10);
    color: white;
    box-shadow: 0 10px 24px rgba(217,15,22,0.25);
}

.btn-escuro {
    background: rgba(255,255,255,0.08);
    color: white;
    border: 1px solid rgba(255,255,255,0.12);
}

.btn-escuro:hover, .btn-limpar:hover, .item-acoes button:hover, .btn-small:hover {
    background: rgba(255,255,255,0.16);
}

.secao {
    padding: 72px 5%;
    background: transparent;
}

.destaque, .secao-pedido { background: linear-gradient(to bottom, #121212, #0d0d0d); }

.info-boxes, .contato-grid, .painel-resumo {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 18px;
}

.info-box, .contato-card, .resumo-card, .login-card, .pedido-card { padding: 22px; }

.info-box strong, .contato-card strong, .resumo-card strong { display: block; margin-bottom: 8px; }

.titulo-secao { text-align: center; margin-bottom: 34px; }

.titulo-secao span {
    color: #ff8085;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: 0.9rem;
}

.titulo-secao h2 {
    font-size: clamp(2rem, 4vw, 3rem);
    margin: 10px 0;
    text-transform: uppercase;
}

.categoria-bloco { margin-top: 42px; }

.categoria-cabecalho {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    margin-bottom: 18px;
    padding-bottom: 10px;
    border-bottom: 1px solid rgba(255,255,255,0.08);
}

.categoria-cabecalho h3 {
    font-size: clamp(1.4rem, 3vw, 2rem);
    text-transform: uppercase;
}

.grid-produtos {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 20px;
}

.card-produto {
    background: linear-gradient(180deg, rgba(27,27,27,0.98), rgba(16,16,16,0.96));
    border: 1px solid var(--borda);
    border-radius: 22px;
    padding: 22px;
    box-shadow: var(--sombra);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.card-produto:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 46px rgba(0,0,0,0.42);
}

.categoria {
    display: inline-block;
    margin-bottom: 12px;
    background: rgba(255,255,255,0.06);
    color: #ffc2c4;
    padding: 6px 10px;
    border-radius: 999px;
    font-size: 0.84rem;
}

.card-produto h3 { margin-bottom: 10px; font-size: 1.35rem; }

.card-produto p { color: var(--texto-suave); line-height: 1.55; min-height: 74px; }

.rodape-produto {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    margin-top: 18px;
}

.preco { font-size: 1.15rem; font-weight: 700; }

.btn-add { padding: 11px 14px; color: white; }

.pedido-layout {
    display: grid;
    grid-template-columns: 1fr 1.2fr;
    gap: 24px;
}

.carrinho-box, .form-pedido, .login-card, .pedido-card { padding: 24px; }

.carrinho-topo, .pedido-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
    flex-wrap: wrap;
}

.lista-carrinho {
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-height: 120px;
}

.item-carrinho {
    display: flex;
    justify-content: space-between;
    gap: 14px;
    align-items: center;
    background: var(--card-2);
    border: 1px solid var(--borda);
    padding: 14px;
    border-radius: 14px;
}

.item-acoes {
    display: flex;
    gap: 8px;
    align-items: center;
}

.item-acoes button {
    width: 30px;
    height: 30px;
    background: rgba(255,255,255,0.08);
    color: white;
}

.btn-remover { background: rgba(217,15,22,0.18) !important; }

.total-box { margin-top: 18px; font-size: 1.15rem; }

.form-pedido, .form-login {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.campo, .campo-duplo {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.campo-duplo { flex-direction: row; }
.campo-duplo .campo { flex: 1; }

label { font-weight: 700; }

input, select, textarea {
    width: 100%;
    border: 1px solid rgba(255,255,255,0.1);
    background: rgba(255,255,255,0.04);
    color: white;
    padding: 14px;
    border-radius: 12px;
    outline: none;
}

input::placeholder, textarea::placeholder { color: #bdbdbd; }
input:disabled { opacity: 0.55; }

.btn-enviar { width: 100%; font-size: 1rem; }

.btn-limpar {
    border: 1px solid rgba(255,255,255,0.12);
    background: rgba(255,255,255,0.06);
    color: white;
    padding: 10px 12px;
}

.rodape {
    padding: 24px 5% 38px;
    border-top: 1px solid rgba(255,255,255,0.06);
    display: flex;
    justify-content: space-between;
    gap: 15px;
    flex-wrap: wrap;
    color: var(--texto-suave);
}

.painel {
    max-width: 1100px;
    margin: 110px auto 50px;
    padding: 0 20px;
}

.filtros-painel {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 22px;
}

.filtro-link {
    text-decoration: none;
    color: white;
    border: 1px solid rgba(255,255,255,0.12);
    background: rgba(255,255,255,0.05);
    padding: 10px 14px;
    border-radius: 999px;
}

.filtro-link.ativo, .filtro-link:hover {
    background: rgba(217,15,22,0.18);
    border-color: rgba(217,15,22,0.35);
}

.pedido-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 10px 18px;
    margin-bottom: 12px;
}

.ordem-fila { color: #ffb8bb; margin-top: 6px; }

.tags-pedido { display: flex; gap: 10px; flex-wrap: wrap; }

.status {
    display: inline-block;
    background: rgba(217,15,22,0.16);
    padding: 6px 10px;
    border-radius: 999px;
}

.itens-box {
    margin-top: 14px;
    padding: 14px;
    border-radius: 14px;
    border: 1px solid var(--borda);
    background: rgba(255,255,255,0.03);
}

.itens-pedido { margin-top: 10px; line-height: 1.6; white-space: pre-wrap; }

.acoes-pedido {
    margin-top: 18px;
    padding-top: 14px;
    border-top: 1px solid rgba(255,255,255,0.06);
}

.linha-botoes { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 10px; }

.btn-small { padding: 10px 14px; color: white; background: rgba(255,255,255,0.09); }

.btn-small.pagamento { background: rgba(40,167,69,0.25); }
.btn-small.pagamento-sec { background: rgba(217,15,22,0.2); }

.pagina-login {
    min-height: 100vh;
    background:
        linear-gradient(rgba(0,0,0,0.72), rgba(0,0,0,0.82)),
        url('fundo.webp') center center / cover no-repeat;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
}

.login-box { width: 100%; max-width: 460px; }

.alerta-erro {
    background: rgba(217,15,22,0.15);
    border: 1px solid rgba(217,15,22,0.35);
    color: #ffd2d4;
    padding: 12px 14px;
    border-radius: 12px;
    margin-bottom: 16px;
}

@media (max-width: 900px) {
    .pedido-layout { grid-template-columns: 1fr; }
    .campo-duplo { flex-direction: column; }
    .topo { align-items: flex-start; flex-direction: column; }
    .hero { background-position: 24% center; }
    .hero-texto { max-width: 100%; padding: 24px; }
}

@media (max-width: 600px) {
    .menu-topo { gap: 12px; font-size: 0.95rem; }
    .hero { min-height: 86vh; padding-top: 130px; background-position: 28% center; }
    .hero h1 { font-size: 2rem; }
    .rodape-produto { flex-direction: column; align-items: stretch; }
    .btn-add { width: 100%; }
    .item-carrinho { flex-direction: column; align-items: flex-start; }
}


.body-painel {
    background: linear-gradient(to bottom, #0f0f0f, #151515);
}

.painel-topo {
    position: sticky;
}

.painel-acoes-topo {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.usuario-logado {
    font-size: 0.95rem;
    color: var(--texto-suave);
}

.painel-cabecalho {
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 18px;
    margin-bottom: 24px;
    flex-wrap: wrap;
}

.busca-form {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.busca-form input {
    min-width: 280px;
}

.destaque-card {
    border-color: rgba(239,32,40,0.35);
}

.lista-pedidos {
    display: grid;
    gap: 18px;
}

.pedido-vazio {
    text-align: center;
}

.telefone-link {
    color: white;
    text-decoration: none;
    border-bottom: 1px dashed rgba(255,255,255,0.2);
}

.pedido-meta {
    display: grid;
    gap: 8px;
    margin-top: 8px;
}

.status-pago {
    background: rgba(40,167,69,0.22);
}

.status-pendente {
    background: rgba(217,15,22,0.16);
}

.login-topo {
    margin-bottom: 14px;
}

.login-ajuda {
    margin-top: 16px;
    padding: 14px;
    border-radius: 14px;
    border: 1px solid rgba(255,255,255,0.08);
    background: rgba(255,255,255,0.03);
    color: var(--texto-suave);
    line-height: 1.5;
}

.login-ajuda code {
    color: white;
}

@media (max-width: 700px) {
    .painel-cabecalho {
        align-items: stretch;
    }

    .busca-form input {
        min-width: 100%;
    }

    .painel-acoes-topo {
        width: 100%;
    }

    .usuario-logado {
        width: 100%;
    }
}


.filtros-cardapio {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: center;
    margin-bottom: 30px;
}

.filtro-btn {
    padding: 10px 16px;
    border-radius: 20px;
    border: none;
    cursor: pointer;
    background: #222;
    color: white;
    font-weight: bold;
    transition: 0.3s;
}

.filtro-btn:hover { background: #444; }
.filtro-btn.ativo { background: red; }
.categoria-bloco.oculto { display: none; }
.btn-add.adicionado {
    background: linear-gradient(to bottom, #b91c1c, #7f1d1d);
    color: white;
}
.lista-pedidos-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 20px;
    align-items: start;
}
.grupo-acoes {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.filtro-link-destaque {
    background: rgba(217,15,22,0.18);
    border-color: rgba(217,15,22,0.35);
}
.status-recebido { background: rgba(59, 130, 246, 0.14); color: #93c5fd; }
.status-em-producao, .status-em-produção { background: rgba(249,115,22,0.14); color: #fdba74; }
.status-pronto { background: rgba(168,85,247,0.14); color: #d8b4fe; }
.status-saiu-para-entrega { background: rgba(14,165,233,0.14); color: #7dd3fc; }
.status-feito { background: rgba(34,197,94,0.16); color: #86efac; }
.meus-pedidos-lista {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 16px;
}
.pedido-link-card {
    display: block;
    text-decoration: none;
    color: white;
    background: var(--card);
    border: 1px solid var(--borda);
    box-shadow: var(--sombra);
    border-radius: 18px;
    padding: 18px;
}
.pedido-link-card:hover { transform: translateY(-3px); }
.acompanhamento-card { max-width: 900px; margin: 0 auto; }
.status-timeline {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 12px;
    margin: 20px 0 26px;
}
.etapa {
    border: 1px solid rgba(255,255,255,0.1);
    border-radius: 18px;
    padding: 16px;
    background: rgba(255,255,255,0.03);
    text-align: center;
}
.etapa-bola {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 10px;
    background: rgba(255,255,255,0.08);
}
.etapa.concluida .etapa-bola, .etapa.atual .etapa-bola { background: rgba(217,15,22,0.6); }
.etapa.atual { border-color: rgba(217,15,22,0.35); }
.confirmacao-card { max-width: 820px; margin: 0 auto; text-align: center; }
.pix-box { margin: 24px 0; text-align: left; }
.pix-copia-cola { min-height: 160px; }
@media (max-width: 768px) {
    .lista-pedidos-grid { grid-template-columns: 1fr; }
}


.btn-carrinho-flutuante {
    position: fixed;
    right: 20px;
    bottom: 20px;
    z-index: 999;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: white;
    font-weight: 700;
    padding: 14px 18px;
    border-radius: 999px;
    background: linear-gradient(to bottom, #ef2028, #b20a10);
    box-shadow: 0 14px 30px rgba(217,15,22,0.35);
    border: 1px solid rgba(255,255,255,0.14);
    text-decoration: none;
    transition: transform 0.25s ease, opacity 0.25s ease, box-shadow 0.25s ease;
}

.btn-carrinho-flutuante:hover {
    transform: translateY(-3px) scale(1.02);
    box-shadow: 0 18px 38px rgba(217,15,22,0.42);
}

.btn-carrinho-flutuante.oculto {
    opacity: 0;
    pointer-events: none;
    transform: translateY(20px);
}

.btn-add.adicionado {
    background: linear-gradient(to bottom, #b91c1c, #7f1d1d);
    color: white;
}

.meus-pedidos-lista {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 16px;
}

.pedido-link-card {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 18px;
    border-radius: 18px;
    background: rgba(20,20,20,0.92);
    border: 1px solid rgba(255,255,255,0.08);
    box-shadow: 0 15px 40px rgba(0,0,0,0.35);
    color: #fff;
    text-decoration: none;
}

.pedido-link-card span {
    color: #d7d7d7;
}

@media (max-width: 768px) {
    .btn-carrinho-flutuante {
        right: 14px;
        bottom: 14px;
        font-size: 0.92rem;
        padding: 13px 16px;
    }
}

.btn-copiar{
    background: linear-gradient(to right, #22c55e, #16a34a);
    color: white;
    border: none;
    padding: 12px 15px;
    border-radius: 8px;
    font-weight: bold;
    cursor: pointer;
    margin-top: 10px;
    transition: 0.2s;
}

.btn-copiar:hover {
    transform: scale(1.05);
}




/* =========================
   PAINEL ATENDENTE - ESTILO ANOTA AÍ
   ========================= */

body.painel-atendente-body{
    background:#f4f5f7;
    color:#202124;
}

.painel-atendente{
    min-height:100vh;
    padding:24px;
}

.painel-header-novo{
    background:#fff;
    border-radius:22px;
    padding:18px 20px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    box-shadow:0 12px 32px rgba(15,15,15,.08);
    margin-bottom:18px;
    position:sticky;
    top:12px;
    z-index:30;
}

.painel-header-info h1{
    margin:0;
    font-size:1.6rem;
    color:#111;
}

.painel-header-info p{
    margin:4px 0 0;
    color:#666;
    font-size:.95rem;
}

.painel-header-acoes{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    justify-content:flex-end;
}

.painel-btn{
    border:none;
    text-decoration:none;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    border-radius:14px;
    padding:11px 14px;
    font-weight:800;
    cursor:pointer;
    background:#f1f3f4;
    color:#202124;
    transition:.2s;
}

.painel-btn:hover{
    transform:translateY(-1px);
}

.painel-btn.danger{
    background:#ffe4e4;
    color:#b00020;
}

.painel-btn.dark{
    background:#111;
    color:#fff;
}

.painel-btn.yellow{
    background:#ffd54a;
    color:#3a2600;
}

.painel-busca{
    background:#383737;
    border-radius:20px;
    box-shadow:0 10px 28px rgba(15,15,15,.06);
    padding:14px;
    margin-bottom:18px;
    display:flex;
    gap:10px;
    align-items:center;
    flex-wrap:wrap;
}

.painel-busca input{
    flex:1;
    min-width:240px;
    border:1px solid #e4e5e7;
    background:#f9fafb;
    border-radius:14px;
    padding:12px 14px;
    outline:none;
    color:#202124;
}

.painel-busca input:focus{
    border-color:#d90f16;
    box-shadow:0 0 0 3px rgba(217,15,22,.08);
}

.painel-stats{
    display:grid;
    grid-template-columns:repeat(5,minmax(140px,1fr));
    gap:12px;
    margin-bottom:18px;
}

.stat-card{
    background:#fff;
    border-radius:18px;
    padding:14px;
    box-shadow:0 10px 26px rgba(15,15,15,.06);
    border-left:5px solid #ddd;
}

.stat-card strong{
    display:block;
    font-size:1.8rem;
    margin-bottom:4px;
}

.stat-card span{
    color:#666;
    font-weight:700;
    font-size:.9rem;
}

.stat-recebido{border-color:#ff3b30}
.stat-producao{border-color:#ffb300}
.stat-pronto{border-color:#00a86b}
.stat-entrega{border-color:#2196f3}
.stat-feito{border-color:#8a8f98}

.kanban-pedidos{
    display:grid;
    grid-template-columns:repeat(5,minmax(280px,1fr));
    gap:14px;
    align-items:start;
    overflow-x:auto;
    padding-bottom:16px;
}

.coluna-pedido{
    background:#e9ebef;
    border-radius:22px;
    padding:12px;
    min-height:520px;
    min-width:280px;
}

.coluna-head{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:10px;
    margin-bottom:12px;
    padding:8px 8px 10px;
    border-bottom:1px solid rgba(0,0,0,.08);
}

.coluna-head h2{
    margin:0;
    font-size:1rem;
    color:#1f1f1f;
}

.coluna-count{
    min-width:30px;
    height:30px;
    border-radius:999px;
    display:grid;
    place-items:center;
    font-weight:900;
    background:#fff;
    color:#111;
}

.pedido-operacional{
    background:#fff;
    border-radius:18px;
    padding:14px;
    box-shadow:0 10px 24px rgba(0,0,0,.08);
    margin-bottom:12px;
    border:1px solid rgba(0,0,0,.05);
    position:relative;
    overflow:hidden;
}

.pedido-operacional::before{
    content:"";
    position:absolute;
    left:0;
    top:0;
    bottom:0;
    width:5px;
    background:#ddd;
}

.pedido-operacional.status-recebido::before{background:#ff3b30}
.pedido-operacional.status-producao::before{background:#ffb300}
.pedido-operacional.status-pronto::before{background:#00a86b}
.pedido-operacional.status-entrega::before{background:#2196f3}
.pedido-operacional.status-feito::before{background:#8a8f98}

.pedido-topo{
    display:flex;
    justify-content:space-between;
    gap:10px;
    align-items:flex-start;
    margin-bottom:12px;
}

.pedido-numero{
    font-size:1.2rem;
    font-weight:900;
    color:#111;
}

.pedido-hora{
    font-size:.82rem;
    color:#666;
    font-weight:800;
    white-space:nowrap;
}

.badges-pedido{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    margin-bottom:10px;
}

.badge{
    display:inline-flex;
    align-items:center;
    border-radius:999px;
    padding:6px 8px;
    font-size:.75rem;
    font-weight:900;
}

.badge-status{
    background:#f1f3f4;
    color:#333;
}

.badge-pendente{
    background:#fff1d6;
    color:#8a5700;
}

.badge-pago{
    background:#dff8ed;
    color:#087a4b;
}

.badge-pix{
    background:#e7f0ff;
    color:#0b57d0;
}

.badge-entrega{
    background:#eaf3ff;
    color:#0b57d0;
}

.pedido-dados{
    display:grid;
    gap:7px;
    margin-bottom:12px;
}

.pedido-dados p{
    margin:0;
    color:#333;
    font-size:.9rem;
}

.pedido-dados strong{
    color:#111;
}

.pedido-itens{
    background:#f7f8fa;
    border-radius:14px;
    padding:10px;
    margin:10px 0;
    color:#222;
    font-size:.9rem;
    line-height:1.45;
    border:1px dashed #d8dadd;
}

.pedido-obs{
    background:#fff7e6;
    border:1px solid #ffe0a3;
    color:#6b4300;
    border-radius:14px;
    padding:10px;
    font-size:.88rem;
    margin:10px 0;
}

.pedido-total{
    display:flex;
    justify-content:space-between;
    align-items:center;
    background:#111;
    color:#fff;
    border-radius:14px;
    padding:10px 12px;
    font-weight:900;
    margin:12px 0;
}

.pedido-acoes{
    display:grid;
    gap:8px;
}

.form-inline{
    margin:0;
}

.btn-status{
    width:100%;
    border:none;
    border-radius:14px;
    padding:12px 10px;
    font-weight:900;
    cursor:pointer;
    transition:.2s;
}

.btn-status:hover{
    transform:translateY(-1px);
}

.btn-producao{background:#ffb300;color:#3c2700}
.btn-pronto{background:#00a86b;color:#fff}
.btn-entrega{background:#2196f3;color:#fff}
.btn-feito{background:#2c2f33;color:#fff}
.btn-pago{background:#dff8ed;color:#087a4b}
.btn-voltar{background:#f1f3f4;color:#333}

.acoes-rapidas{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
}

.btn-copy{
    border:none;
    background:#f1f3f4;
    color:#202124;
    border-radius:12px;
    padding:9px;
    font-weight:800;
    cursor:pointer;
}

.coluna-vazia{
    text-align:center;
    color:#777;
    background:rgba(255,255,255,.55);
    border-radius:16px;
    padding:18px 10px;
    font-weight:700;
}

@media (max-width:1200px){
    .painel-stats{
        grid-template-columns:repeat(2,minmax(140px,1fr));
    }
}

@media (max-width:760px){
    .painel-atendente{
        padding:12px;
    }

    .painel-header-novo{
        position:static;
        flex-direction:column;
        align-items:stretch;
    }

    .painel-header-acoes{
        justify-content:stretch;
    }

    .painel-btn{
        flex:1;
    }

    .painel-stats{
        grid-template-columns:1fr 1fr;
    }

    .kanban-pedidos{
        grid-template-columns:1fr;
        overflow-x:visible;
    }

    .coluna-pedido{
        min-width:0;
        min-height:auto;
    }
}


/* ORGANIZAÇÃO DOS CAMPOS DE ENTREGA POR BAIRRO */
#campos-entrega{
    display:block;
}

.linha-carrinho{
    display:flex;
    justify-content:space-between;
    align-items:center;
    color:var(--texto-suave);
    font-weight:700;
    margin-top:10px;
    padding-top:10px;
    border-top:1px solid var(--borda);
}

#bairro{
    cursor:pointer;
}


/* CORREÇÃO SELECT - TEXTO VISÍVEL NAS OPÇÕES */
select,
select option{
    background-color:#fff !important;
    color:#111 !important;
}

select:disabled{
    opacity:.75;
}


/* RESUMO DO CARRINHO COM TAXA */
.resumo-carrinho{
    margin-top:14px;
    border-top:1px solid var(--borda);
    padding-top:12px;
}

.linha-carrinho{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:12px;
    color:var(--texto-suave);
    font-weight:700;
    margin-bottom:8px;
}

.linha-carrinho strong{
    color:#fff;
}

.total-box{
    display:flex;
    justify-content:space-between;
    align-items:center;
    background:rgba(217,15,22,.16);
    border:1px solid rgba(255,255,255,.12);
    border-radius:14px;
    padding:13px 14px;
    margin-top:10px;
    font-size:1.1rem;
}


/* CONTROLE ABRIR / FECHAR LOJA */
.loja-fechada-banner{
    position:sticky;
    top:75px;
    z-index:80;
    margin:0 auto;
    max-width:1100px;
    background:#d90f16;
    color:#fff;
    border-radius:0 0 18px 18px;
    padding:14px 18px;
    display:flex;
    flex-direction:column;
    gap:4px;
    box-shadow:0 12px 28px rgba(0,0,0,.25);
}

.loja-fechada-banner strong{
    font-size:1.05rem;
}

.btn-fechado,
.btn-add--disabled{
    opacity:.55;
    cursor:not-allowed !important;
    filter:grayscale(1);
}

.status-loja{
    border-radius:18px;
    padding:14px 18px;
    font-weight:900;
    margin-bottom:18px;
    box-shadow:0 10px 24px rgba(0,0,0,.08);
}

.status-loja-aberta{
    background:#dff8ed;
    color:#087a4b;
}

.status-loja-fechada{
    background:#ffe4e4;
    color:#b00020;
}


/* SOM DE NOVOS PEDIDOS */
#ativar-som{
    border:2px solid rgba(255,255,255,.18);
}

#ativar-som.yellow{
    background:#ffd54a;
    color:#3a2600;
}

/* Painel de edição do cardápio */
.cardapio-admin-form,
.cardapio-admin-lista {
    background: #fff;
    color: #171717;
    border-radius: 18px;
    padding: 22px;
    margin: 22px 0;
    box-shadow: 0 10px 30px rgba(0,0,0,.08);
}

.cardapio-admin-form h2,
.cardapio-admin-lista h2,
.cardapio-admin-form label,
.cardapio-admin-lista label,
.cardapio-admin-lista td {
    color: #171717;
}

.form-cardapio-admin input,
.form-cardapio-admin select,
.form-cardapio-admin textarea {
    background: #fff;
    color: #171717;
    border: 1px solid #d7d7d7;
}

.form-cardapio-admin input::placeholder,
.form-cardapio-admin textarea::placeholder {
    color: #777;
}

.form-cardapio-admin .campo,
.form-cardapio-admin .campo-duplo {
    margin-bottom: 14px;
}

.check-admin {
    display: inline-flex;
    gap: 8px;
    align-items: center;
    font-weight: 700;
    margin: 8px 0 16px;
}

.alinhado-esquerda {
    justify-content: flex-start !important;
}

.tabela-cardapio-wrap {
    overflow-x: auto;
}

.tabela-cardapio {
    width: 100%;
    border-collapse: collapse;
    min-width: 720px;
}

.tabela-cardapio th,
.tabela-cardapio td {
    padding: 12px;
    border-bottom: 1px solid #eee;
    text-align: left;
    vertical-align: top;
}

.tabela-cardapio th {
    background: #111;
    color: #fff;
}

.linha-esgotado {
    opacity: .62;
    background: #f7f7f7;
}

.acoes-cardapio {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.btn-remover-admin {
    background: #c62828 !important;
    color: #fff !important;
}

.produto-indisponivel {
    opacity: .65;
    filter: grayscale(.2);
}

.produto-indisponivel .preco::after {
    content: ' • Esgotado';
    color: #c62828;
    font-size: .82rem;
    font-weight: 800;
}

/* CORREÇÃO DEFINITIVA - campos do painel de cardápio legíveis */
body.painel-atendente-body .cardapio-admin-form,
body.painel-atendente-body .cardapio-admin-lista {
    background: #ffffff !important;
    color: #171717 !important;
}

body.painel-atendente-body .form-cardapio-admin input,
body.painel-atendente-body .form-cardapio-admin input[type="text"],
body.painel-atendente-body .form-cardapio-admin input[type="number"],
body.painel-atendente-body .form-cardapio-admin select,
body.painel-atendente-body .form-cardapio-admin textarea {
    background-color: #ffffff !important;
    color: #111111 !important;
    -webkit-text-fill-color: #111111 !important;
    border: 1px solid #cfcfcf !important;
    caret-color: #111111 !important;
    box-shadow: none !important;
}

body.painel-atendente-body .form-cardapio-admin input:focus,
body.painel-atendente-body .form-cardapio-admin select:focus,
body.painel-atendente-body .form-cardapio-admin textarea:focus {
    background-color: #ffffff !important;
    color: #111111 !important;
    -webkit-text-fill-color: #111111 !important;
    border-color: #d90f16 !important;
    outline: 2px solid rgba(217, 15, 22, .15) !important;
}

body.painel-atendente-body .form-cardapio-admin input::placeholder,
body.painel-atendente-body .form-cardapio-admin textarea::placeholder {
    color: #777777 !important;
    -webkit-text-fill-color: #777777 !important;
    opacity: 1 !important;
}

body.painel-atendente-body .form-cardapio-admin input:-webkit-autofill,
body.painel-atendente-body .form-cardapio-admin input:-webkit-autofill:hover,
body.painel-atendente-body .form-cardapio-admin input:-webkit-autofill:focus,
body.painel-atendente-body .form-cardapio-admin textarea:-webkit-autofill,
body.painel-atendente-body .form-cardapio-admin textarea:-webkit-autofill:hover,
body.painel-atendente-body .form-cardapio-admin textarea:-webkit-autofill:focus {
    -webkit-text-fill-color: #111111 !important;
    box-shadow: 0 0 0px 1000px #ffffff inset !important;
    transition: background-color 9999s ease-in-out 0s !important;
}

body.painel-atendente-body .check-admin,
body.painel-atendente-body .check-admin input {
    color: #111111 !important;
    -webkit-text-fill-color: #111111 !important;
}
