.modal-overlay{z-index:9999;background:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--color-surface);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border:1px solid var(--color-border);width:900px;min-height:500px;box-shadow:var(--shadow-panel);border-radius:16px;flex-direction:column;gap:15px;max-width:90%;max-height:90vh;padding:40px;display:flex;overflow-y:auto}.modal h2{text-align:center;color:var(--color-text);margin:0 0 10px;font-size:24px}.modal.modal-small{width:420px;min-height:auto}.modal input,.modal textarea,.modal select{border:1px solid var(--color-border-strong);background:var(--color-bg-alt);width:100%;color:var(--color-text);box-sizing:border-box;border-radius:8px;outline:none;padding:12px;font-family:inherit;font-size:14px}.modal select{cursor:pointer}.modal textarea{resize:vertical;min-height:100px}.modal input:focus,.modal textarea:focus,.modal select:focus{border-color:var(--color-accent)}.modal-buttons{justify-content:flex-end;gap:10px;margin-top:15px;display:flex}.modal-buttons button{cursor:pointer;text-transform:uppercase;letter-spacing:.04em;border:none;border-radius:8px;padding:10px 20px;font-size:13px;font-weight:700;transition:all .2s}.btnCancel{background:var(--color-surface-alt);color:var(--color-text-muted)}.btnCancel:hover{background:var(--color-border-strong);color:var(--color-text)}.btnSave{background:var(--color-accent);color:#1a1004}.btnSave:hover{background:var(--color-accent-strong)}@media (max-width:640px){.modal{min-height:auto;padding:24px 20px}.modal.modal-small{width:100%}.modal-buttons{flex-direction:column-reverse}.modal-buttons button{width:100%}}
.categorias-filtro{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.category-chip{border:1px solid var(--color-border);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;cursor:pointer;background:var(--color-surface);border-radius:6px;align-items:center;gap:6px;padding:9px 20px;font-size:12px;font-weight:700;transition:all .2s;display:flex}.category-chip:hover{border-color:var(--color-border-strong);color:var(--color-text)}.category-chip.active{border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-accent-strong)}.category-chip.selected{border-color:var(--color-danger);color:var(--color-danger-strong);background:#ef444429}.category-chip-add{border:1px dashed var(--color-border-strong);background:0 0;justify-content:center;width:38px;height:38px;padding:0}.category-chip-add:hover{border-color:var(--color-accent);background:var(--color-accent-soft)}.category-chip-add .plus-icon{font-size:18px}.chip-check{background:var(--color-danger);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:10px;font-weight:700;display:flex}
.toolbar{justify-content:space-between;align-items:center;margin-bottom:30px;display:flex}.filtros{gap:12px;display:flex}.search{border:1px solid var(--color-border);background:var(--color-surface);width:350px;color:var(--color-text);border-radius:8px;padding:12px 18px;font-family:inherit;font-size:16px}.search::placeholder{color:var(--color-text-muted)}.search:focus{border-color:var(--color-accent);outline:none}.toolbar-buttons{gap:10px;display:flex}.btnCancel,.btnCreate,.btnDelete{cursor:pointer;text-transform:uppercase;letter-spacing:.04em;color:var(--color-bg);border:none;border-radius:8px;padding:12px 22px;font-size:13px;font-weight:700;transition:all .2s}.btnCreate{background:var(--color-success);color:#06210f}.btnCreate:hover{background:var(--color-success-strong)}.btnDelete{background:var(--color-danger);color:#2b0505}.btnDelete:hover{background:var(--color-danger-strong)}.btnCancel{background:var(--color-surface-alt);color:var(--color-text-muted)}.btnCancel:hover{background:var(--color-border-strong);color:var(--color-text)}@media (max-width:768px){.toolbar{flex-direction:column;align-items:stretch;gap:16px}.filtros{flex-direction:column;gap:12px}.search{width:100%}.toolbar-buttons{flex-wrap:wrap}.btnCancel,.btnCreate,.btnDelete{flex:auto;padding:12px;font-size:12px}}
.grid-produtos{flex-wrap:wrap;align-items:flex-start;gap:25px;min-height:120px;margin-bottom:40px;display:flex}.card.card-add{border:2px dashed var(--color-border-strong);min-height:220px;box-shadow:none;background:0 0;justify-content:center;align-items:center;display:flex}.card.card-add:hover{border-color:var(--color-accent);background:var(--color-accent-soft)}.plus-icon{color:var(--color-text-muted);font-size:48px;font-weight:300}.card.card-add:hover .plus-icon{color:var(--color-accent)}.card{background:var(--color-surface);border:1px solid var(--color-border);cursor:pointer;border-radius:8px;flex:0 0 260px;transition:all .2s;position:relative;overflow:hidden;box-shadow:0 5px 15px #0000004d}.card.selected{border-color:var(--color-danger);transform:scale(.98)}.selectedIcon{background:var(--color-danger);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:18px;font-weight:700;display:flex;position:absolute;top:10px;right:10px}.card:hover{border-color:var(--color-border-strong);transform:translateY(-5px)}.card img{object-fit:cover;width:100%;height:220px}.card-body{flex-direction:column;gap:15px;padding:20px;display:flex}.card-body h3{color:var(--color-text);font-size:16px}.card-body span{color:var(--color-coin);font-size:20px;font-weight:700}.card-body button{cursor:pointer;background:var(--color-accent);color:#1a1004;text-transform:uppercase;letter-spacing:.04em;border:none;border-radius:8px;padding:12px;font-size:13px;font-weight:700}.card-body button:hover{background:var(--color-accent-strong)}.card-body p{color:var(--color-text-muted);min-height:45px;font-size:14px}.card-body small{color:var(--color-success-strong);font-weight:700}@media (max-width:640px){.grid-produtos{gap:16px}.card,.card.card-add{flex:100%}.card img{height:180px}}
.context-menu{background:var(--color-surface);border:1px solid var(--color-border-strong);box-shadow:var(--shadow-panel);z-index:10000;border-radius:8px;min-width:140px;margin:0;padding:6px;list-style:none;position:fixed}.context-menu li{color:var(--color-text);cursor:pointer;border-radius:6px;padding:10px 14px;font-size:14px}.context-menu li:hover{background:var(--color-accent-soft);color:var(--color-accent-strong)}
.containerHome{width:90%;margin:40px auto}.containerHome h1{color:var(--color-text);margin-bottom:30px}.section-title{color:var(--color-text);border-left:4px solid var(--color-accent);margin:10px 0 15px;padding-left:12px;font-size:20px}
