:root{color-scheme:light;--bg:#f5f7fb;--panel:#fff;--text:#172033;--muted:#64748b;--line:#dce3ed;--accent:#2563eb;--soft:#eff6ff}html[data-theme=dark]{color-scheme:dark;--bg:#0e1420;--panel:#192333;--text:#f1f5f9;--muted:#a3afc2;--line:#324155;--accent:#70a7ff;--soft:#243750}@media(prefers-color-scheme:dark){html[data-theme=auto]{color-scheme:dark;--bg:#0e1420;--panel:#192333;--text:#f1f5f9;--muted:#a3afc2;--line:#324155;--accent:#70a7ff;--soft:#243750}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.55 system-ui,-apple-system,Segoe UI,sans-serif}a{color:var(--accent);text-decoration:none}.wrap{max-width:1180px;margin:auto;padding:0 22px}.top{background:var(--panel);border-bottom:1px solid var(--line)}.nav{min-height:76px;display:flex;justify-content:space-between;align-items:center;gap:20px}.brand{display:flex;align-items:center;gap:12px;font-weight:800;font-size:22px;color:var(--text)}.brand img{width:44px;height:44px;object-fit:contain}.nav nav{display:flex;align-items:center;flex-wrap:wrap;gap:17px}.welcome{color:var(--muted)}.btn,button{cursor:pointer;font:inherit}.btn,button.primary{background:var(--accent);color:white;border:0;border-radius:9px;padding:11px 17px;display:inline-block}.btn.small{padding:8px 12px;font-size:13px}.theme,.linkbtn{border:1px solid var(--line);border-radius:9px;padding:8px 12px;background:var(--panel);color:var(--text)}.linkbtn{border:0;color:var(--accent)}.inline{display:inline}h1{font-size:30px;margin:30px 0 6px}h2{margin:0 0 18px}.muted{color:var(--muted)}.hero{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:22px 0}.search{width:300px}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:20px;margin:20px 0 45px}.card,.panel{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:20px}.card img{width:100%;aspect-ratio:4/3;object-fit:contain;border-radius:9px;background:var(--soft)}.placeholder{aspect-ratio:4/3;background:var(--soft);display:grid;place-items:center;font-size:46px;border-radius:9px}.card h3{margin:12px 0 5px}.price{font-size:21px;font-weight:800}.card button{width:100%;margin-top:12px}.formbox{max-width:520px;margin:40px auto}.field{display:block;margin:13px 0 5px;font-weight:600}input,textarea,select{width:100%;border:1px solid var(--line);border-radius:9px;padding:11px 12px;background:var(--panel);color:var(--text);font:inherit}input[type=checkbox]{width:auto}textarea{min-height:85px}.row{display:flex;gap:12px;align-items:center}.row>*{flex:1}.notice{padding:13px 17px;margin:18px 0;border:1px solid var(--line);border-radius:10px;background:var(--soft)}.notice.error{border-color:#c65b5b}.footer{padding-top:35px;padding-bottom:35px;color:var(--muted);border-top:1px solid var(--line)}.adminnav{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0}.adminnav a{padding:9px 14px;background:var(--panel);border:1px solid var(--line);border-radius:9px}table{width:100%;border-collapse:collapse}th,td{padding:12px;text-align:left;border-bottom:1px solid var(--line)}.tablewrap{overflow:auto}.right{text-align:right}.smalltext{font-size:12px;color:var(--muted)}@media(max-width:700px){.nav{align-items:flex-start;padding-top:14px;padding-bottom:14px;flex-direction:column}.nav nav{gap:10px}.hero{flex-direction:column;align-items:stretch}.search{width:100%}.row{flex-direction:column;align-items:stretch}}

/* Moldura branca para o logotipo, independente do tema */
.brand-logo-box{display:flex;align-items:center;justify-content:center;flex:0 0 auto;width:70px;height:58px;padding:7px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;box-shadow:0 1px 4px rgba(0,0,0,.08)}
.brand .brand-logo-box img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain}

/* Logo header v1.4 */
.brand .brand-logo-box{background:#fff!important;border-radius:12px!important;min-width:74px!important;width:74px!important;height:58px!important;padding:7px!important;display:flex!important;align-items:center!important;justify-content:center!important}

.product-image-options{display:flex;flex-wrap:wrap;gap:16px;margin:12px 0}.product-image-options label{display:flex;align-items:center;gap:7px}.product-image-options input{width:auto}.product-thumb{width:62px;height:56px;object-fit:contain;border-radius:8px;background:#fff;padding:3px}.product-current-image{display:flex;align-items:center;gap:12px;margin:12px 0}.product-current-image img{width:140px;height:110px;object-fit:contain;background:#fff;border-radius:10px;padding:6px}[hidden]{display:none!important}

/* Produto já incluído no carrinho */
button.primary.in-cart,button.primary.in-cart:disabled{opacity:1;background:#64748b;color:#fff;cursor:not-allowed;border-color:#64748b;}

/* Botão de produto já selecionado no carrinho */
button.in-cart:not(:disabled){background:#b42318;color:#fff;border-color:#b42318;cursor:pointer}
button.in-cart:not(:disabled):hover{background:#912018;border-color:#912018}

button.primary.reserved,button.primary.reserved:disabled{background:#64748b;color:#fff;opacity:1;cursor:not-allowed}

/* Primeira etapa da finalização */
.checkout-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(290px,1fr);gap:20px;margin:22px 0 40px;align-items:start}
.checkout-layout .panel{min-width:0}
@media(max-width:800px){.checkout-layout{grid-template-columns:1fr}}

/* Gestão de pedidos */
.order-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:20px}
.order-actions form{margin:0}
.order-cancel{background:#b42318;color:white;border:0;border-radius:8px;padding:11px 16px;cursor:pointer}
.order-filter{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin-bottom:18px}
.order-filter>div{min-width:180px;flex:1}
.order-filter button,.order-filter a{margin-bottom:2px}

/* Oculta produtos sem estoque, inclusive após confirmação de pedidos. */
[hidden]{display:none!important}

.quantity-dialog{background:var(--panel,#192537);color:inherit;border:1px solid #52647a;border-radius:14px;padding:24px;width:min(92vw,420px);box-shadow:0 20px 60px #0009}
.quantity-dialog::backdrop{background:#0009}
.quantity-dialog form{display:grid;gap:14px}
.quantity-dialog h2{margin:0}
.quantity-dialog input{display:block;width:100%;margin-top:8px;padding:12px;border-radius:8px;border:1px solid #52647a;background:var(--panel,#192537);color:inherit}
.quantity-actions{display:flex;justify-content:flex-end;gap:10px}

/* Consulta avançada de pedidos */
.advanced-order-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 14px;align-items:end;margin-bottom:20px}.advanced-order-filters .field{font-size:13px;margin:0 0 5px}.advanced-order-filters .wide{grid-column:span 2}.advanced-order-filters .filter-buttons{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.advanced-order-filters .filter-buttons .btn{padding:11px 14px}.order-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:20px 0}.order-summary>div{background:var(--soft);border:1px solid var(--line);border-radius:10px;padding:12px}.order-summary span{display:block;color:var(--muted);font-size:12px}.order-summary strong{display:block;font-size:20px}.order-products-inline{margin-top:7px;color:var(--muted);font-size:12px;min-width:190px}.order-products-inline div{margin-top:3px}.orders-pagination{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:18px;flex-wrap:wrap}.orders-pagination>div{display:flex;gap:8px}@media(max-width:850px){.advanced-order-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.order-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:500px){.advanced-order-filters{grid-template-columns:1fr}.advanced-order-filters .wide{grid-column:auto}}

.product-title-link{color:inherit;text-decoration:none}.product-title-link:hover{text-decoration:underline}.product-detail-link{display:block;text-align:center;margin:10px 0}.product-detail{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;align-items:start;margin:20px 0}.product-gallery{min-width:0}.product-main-image{width:100%;max-height:540px;object-fit:contain;background:#233149;border-radius:14px;cursor:zoom-in}.product-thumbnails{display:flex;flex-wrap:wrap;gap:9px;margin-top:12px}.product-thumb-button{width:76px;height:76px;padding:3px;border:2px solid transparent;border-radius:9px;background:transparent;cursor:pointer}.product-thumb-button.selected{border-color:#72a6ff}.product-thumb-button img{width:100%;height:100%;object-fit:cover;border-radius:5px}.product-info .primary{width:100%;margin-top:16px}.product-info h1{margin-top:0}.product-no-image{min-height:300px}.gallery-admin-list{display:flex;flex-wrap:wrap;gap:14px;margin:12px 0}.gallery-admin-item{max-width:135px}.gallery-admin-item img{width:120px;height:110px;object-fit:cover;border-radius:8px}@media(max-width:680px){.product-detail{grid-template-columns:1fr}.product-main-image{max-height:420px}}
/* Filtros públicos do catálogo */
.catalog-filters{display:flex;flex-wrap:wrap;align-items:end;gap:12px;margin:14px 0 12px;padding:16px;background:var(--panel,#1b2738);border:1px solid rgba(130,156,193,.22);border-radius:12px}
.catalog-filter-field{display:flex;flex:1 1 180px;min-width:150px;flex-direction:column;gap:6px;font-size:13px;font-weight:600}
.catalog-search-field{flex:2 1 250px}
.catalog-filter-field input,.catalog-filter-field select{width:100%;min-height:40px;box-sizing:border-box}
.catalog-filters>.btn,.catalog-filters>.primary{min-height:40px;white-space:nowrap}
.catalog-result-count{margin:12px 0 18px}
@media(max-width:620px){.catalog-filters{gap:10px}.catalog-filter-field,.catalog-search-field{flex:1 1 100%}.catalog-filters>.btn,.catalog-filters>.primary{flex:1 1 40%}}
