/*
 * Estilo base — não é a implementação visual final dos mockups (seção
 * "Decisões de estilo" do handoff v6), só o suficiente para navegar e testar
 * o fluxo ponta a ponta. Paleta e tom de interface já seguem o combinado:
 * acento âmbar/madeira, superfícies neutras claras, sentence case, sem
 * "clique aqui".
 */

:root {
    --cor-acento: #A9642A;
    --cor-acento-escuro: #8a5222;
    --cor-fundo: #FAF7F2;
    --cor-superficie: #FFFFFF;
    --cor-borda: #E5DED3;
    --cor-texto: #2B2620;
    --cor-texto-suave: #6B6157;
}

* {
    box-sizing: border-box;
}

body {
    margin: 0;
    font-family: -apple-system, "Segoe UI", Roboto, sans-serif;
    background: var(--cor-fundo);
    color: var(--cor-texto);
}

a {
    color: var(--cor-acento);
}

.container {
    max-width: 1100px;
    margin: 0 auto;
    padding: 24px 20px 64px;
}

.marca {
    display: flex;
    align-items: center;
    gap: 10px;
    font-weight: 600;
    font-size: 1.1rem;
}

.marca .barras {
    display: inline-flex;
    align-items: flex-end;
    gap: 2px;
    height: 20px;
}

.marca .barras span {
    display: block;
    width: 3px;
    background: var(--cor-acento);
    border-radius: 1px;
}

.marca .barras span:nth-child(1) { height: 60%; }
.marca .barras span:nth-child(2) { height: 100%; }
.marca .barras span:nth-child(3) { height: 40%; }
.marca .barras span:nth-child(4) { height: 80%; }

nav.interna {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 20px;
    background: var(--cor-superficie);
    border-bottom: 1px solid var(--cor-borda);
}

nav.interna .links {
    display: flex;
    gap: 16px;
    font-size: 0.9rem;
}

nav.interna .links a {
    color: var(--cor-texto-suave);
    text-decoration: none;
}

.cartao {
    background: var(--cor-superficie);
    border: 1px solid var(--cor-borda);
    border-radius: 10px;
    padding: 20px;
}

.grade-produtos {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 16px;
    margin-top: 20px;
}

.produto-card {
    background: var(--cor-superficie);
    border: 1px solid var(--cor-borda);
    border-radius: 10px;
    overflow: hidden;
    text-decoration: none;
    color: inherit;
    display: block;
}

.produto-card .capa {
    aspect-ratio: 1 / 1;
    background: var(--cor-fundo);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--cor-texto-suave);
    font-size: 0.8rem;
}

.produto-card .capa img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.produto-card .info {
    padding: 10px 12px;
}

.produto-card .nome {
    font-size: 0.95rem;
    margin: 0 0 4px;
}

.produto-card .preco {
    color: var(--cor-acento-escuro);
    font-weight: 600;
    font-size: 0.9rem;
}

.form-campo {
    margin-bottom: 14px;
}

.form-campo label {
    display: block;
    font-size: 0.85rem;
    color: var(--cor-texto-suave);
    margin-bottom: 4px;
}

.form-campo input,
.form-campo select,
.form-campo textarea {
    width: 100%;
    padding: 9px 10px;
    border: 1px solid var(--cor-borda);
    border-radius: 6px;
    font-size: 0.95rem;
    background: var(--cor-superficie);
}

.botao {
    display: inline-block;
    background: var(--cor-acento);
    color: #fff;
    border: none;
    padding: 10px 18px;
    border-radius: 6px;
    font-size: 0.9rem;
    cursor: pointer;
    text-decoration: none;
}

.botao:hover {
    background: var(--cor-acento-escuro);
}

.botao.secundario {
    background: transparent;
    color: var(--cor-texto);
    border: 1px solid var(--cor-borda);
}

.badge {
    display: inline-block;
    background: var(--cor-fundo);
    border: 1px solid var(--cor-borda);
    border-radius: 999px;
    padding: 2px 10px;
    font-size: 0.78rem;
    color: var(--cor-texto-suave);
}

.aviso {
    background: #fdf0e6;
    border: 1px solid var(--cor-acento);
    color: var(--cor-acento-escuro);
    padding: 10px 14px;
    border-radius: 8px;
    font-size: 0.88rem;
    margin-bottom: 16px;
}

table.tabela {
    width: 100%;
    border-collapse: collapse;
    margin-top: 16px;
}

table.tabela th,
table.tabela td {
    text-align: left;
    padding: 10px 12px;
    border-bottom: 1px solid var(--cor-borda);
    font-size: 0.9rem;
}

.filtros-publicos {
    display: flex;
    gap: 24px;
    margin-top: 20px;
}

.filtros-publicos aside {
    width: 220px;
    flex-shrink: 0;
}

.filtros-publicos .lista-filtro label {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 0.88rem;
    margin-bottom: 6px;
}

.galeria-produto {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
    gap: 10px;
    margin: 16px 0;
}

.galeria-produto .miniatura {
    aspect-ratio: 1 / 1;
    border-radius: 8px;
    overflow: hidden;
    border: 1px solid var(--cor-borda);
}

.galeria-produto .miniatura img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.chips-lista {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 10px 0;
}

.chip {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    background: var(--cor-fundo);
    border: 1px solid var(--cor-borda);
    border-radius: 999px;
    padding: 4px 6px 4px 12px;
    font-size: 0.85rem;
}

.chip button {
    background: none;
    border: none;
    color: var(--cor-texto-suave);
    cursor: pointer;
    font-size: 1rem;
    line-height: 1;
    padding: 2px 6px;
}

.chip button:hover {
    color: var(--cor-acento-escuro);
}
