:root{
  --bg:#f5f5f3;--panel:#fff;--text:#171717;--muted:#6f6f6f;--line:#e5e2db;
  --black:#111;--gold:#c79a2b;--gold2:#e2ba58;--danger:#b42318;--ok:#18864b;--warn:#a66b00;
  --shadow:0 10px 30px rgba(0,0,0,.07);--radius:18px;
}
*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text)}
button,input,select,textarea{font:inherit}.hidden{display:none!important}.muted{color:var(--muted)}.small{font-size:.88rem}
.login-view{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at top,#33270e 0,#111 42%,#050505 100%)}
.login-card{width:min(430px,100%);background:#fff;border-radius:26px;padding:34px;box-shadow:0 24px 80px rgba(0,0,0,.35)}
.brand-mark{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;margin-bottom:16px;background:linear-gradient(145deg,var(--gold2),#8e6710);color:#111;font-weight:900;border:3px solid #111}
.login-card h1{margin:0}.stack{display:grid;gap:16px;margin-top:24px}label{display:grid;gap:7px;font-weight:650;font-size:.93rem}
input,select,textarea{width:100%;border:1px solid var(--line);background:#fff;color:var(--text);padding:12px 13px;border-radius:11px;outline:none}
input:focus,select:focus,textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(199,154,43,.14)}
.remember{grid-template-columns:auto 1fr;align-items:center;font-weight:500}.remember input{width:auto}
.btn{border:0;border-radius:11px;padding:11px 16px;font-weight:800;cursor:pointer}.btn.primary{background:linear-gradient(135deg,var(--gold2),var(--gold));color:#111}.btn.secondary{background:#1e1e1e;color:#fff}.btn.ghost{background:#efefec}.btn.small{padding:8px 11px}.btn.big{padding:15px 22px}.btn.full{width:100%}
.error-text{color:var(--danger);min-height:1.2em}
.app{min-height:100vh}.topbar{display:none}.sidebar{position:fixed;inset:0 auto 0 0;width:245px;background:#0d0d0d;color:#fff;padding:18px 14px;z-index:20}
.sidebar-brand{display:flex;gap:11px;align-items:center;padding:8px 8px 22px}.small-mark{width:42px;height:42px;margin:0;font-size:.8rem}.sidebar-brand small{display:block;color:#aaa}
nav{display:grid;gap:5px}.nav-item{display:flex;gap:11px;align-items:center;width:100%;border:0;background:transparent;color:#d8d8d8;text-align:left;padding:12px;border-radius:11px;cursor:pointer;font-weight:700}.nav-item:hover,.nav-item.active{background:#202020;color:#fff}.nav-item.accent{color:#f0c961}
.main{margin-left:245px;padding:30px;min-height:100vh}.view{display:none}.active-view{display:block}
.page-head{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:22px}.page-head h2{margin:0 0 3px;font-size:1.7rem}.page-head p{margin:0}
.cards{display:grid;gap:15px}.cards.four{grid-template-columns:repeat(4,1fr)}.metric{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow)}.metric span,.metric small{display:block;color:var(--muted)}.metric strong{display:block;font-size:2rem;margin:8px 0}
.grid{display:grid;gap:18px;margin-top:18px}.grid.two{grid-template-columns:1fr 1fr}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow)}.panel-head{display:flex;justify-content:space-between;align-items:center}.panel-head h3{margin:0 0 12px}
.list{display:grid;gap:10px}.list-item{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:12px;background:#fff}.list-item strong{display:block}.list-item small{color:var(--muted)}
.toolbar{display:flex;gap:10px;margin-bottom:14px}.toolbar input{max-width:560px}
.table-wrap{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:auto;box-shadow:var(--shadow)}table{width:100%;border-collapse:collapse;min-width:760px}th,td{padding:13px 14px;border-bottom:1px solid var(--line);text-align:left}th{background:#faf9f6;font-size:.83rem;text-transform:uppercase;letter-spacing:.03em;color:#686868}td strong{display:block}.badge{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:.78rem;font-weight:800}.badge.ok{background:#e8f6ee;color:var(--ok)}.badge.warn{background:#fff4dc;color:var(--warn)}.badge.danger{background:#fdebea;color:var(--danger)}
.form-panel{max-width:900px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.span-2{grid-column:1/-1}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:6px}.align-end{align-self:end}
.sale-total{display:flex;justify-content:space-between;align-items:center;padding:16px;background:#111;color:#fff;border-radius:14px}.sale-total strong{font-size:1.6rem;color:#efc75e}
.cart{display:grid;gap:8px}.cart-row{display:grid;grid-template-columns:1fr auto auto auto;gap:12px;align-items:center;padding:11px;background:#faf9f6;border:1px solid var(--line);border-radius:11px}.remove-btn{border:0;background:#fdebea;color:var(--danger);border-radius:8px;padding:6px 9px;cursor:pointer}
dialog{border:0;border-radius:20px;padding:0;width:min(760px,calc(100% - 28px));box-shadow:0 30px 100px rgba(0,0,0,.35)}dialog::backdrop{background:rgba(0,0,0,.55)}.modal-form{padding:22px}.modal-head,.modal-actions{display:flex;justify-content:space-between;align-items:center;gap:12px}.modal-head{margin-bottom:18px}.modal-head h3{margin:0}.modal-actions{margin-top:20px;justify-content:flex-end}.icon-btn{border:0;background:transparent;font-size:1.5rem;cursor:pointer}
.toast{position:fixed;right:20px;top:20px;z-index:100;background:#111;color:#fff;padding:13px 16px;border-radius:11px;opacity:0;transform:translateY(-8px);pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:none}.toast.error{background:var(--danger)}
.mobile-only{display:none}
@media(max-width:980px){.cards.four{grid-template-columns:1fr 1fr}.grid.two{grid-template-columns:1fr}}
@media(max-width:760px){
  .topbar{display:flex;position:sticky;top:0;z-index:30;background:#111;color:#fff;padding:11px 13px;align-items:center;justify-content:space-between}.topbar>div{flex:1;margin-left:9px}.topbar small{display:block;color:#bbb}
  .mobile-only{display:inline-block}.sidebar{transform:translateX(-100%);transition:.2s;width:260px;padding-top:70px}.sidebar.open{transform:none}.sidebar-brand{display:none}.main{margin-left:0;padding:18px 13px}
  .cards.four{grid-template-columns:1fr 1fr}.metric{padding:15px}.metric strong{font-size:1.55rem}.page-head{align-items:flex-start}.page-head .btn{white-space:nowrap}
  .form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.cart-row{grid-template-columns:1fr auto}.cart-row .cart-price{grid-column:1}.cart-row .cart-subtotal{grid-column:2}
}
@media(max-width:480px){.cards.four{grid-template-columns:1fr}.page-head{flex-direction:column}.page-head>.btn{width:100%}}

.logout-item{margin-top:12px;border-top:1px solid #262626;border-radius:0;padding-top:16px;color:#f0c961}.logout-item:hover{background:#202020;color:#fff}

.logged-user-card{
  margin:0 8px 14px;
  padding:11px 12px;
  border:1px solid #2b2b2b;
  border-radius:11px;
  background:#161616;
}
.logged-user-card span,
.logged-user-card small{
  display:block;
  color:#9d9d9d;
  font-size:.75rem;
}
.logged-user-card strong{
  display:block;
  margin:3px 0 2px;
  color:#f0c961;
  font-size:.95rem;
}

/* ===== USE COISAS v2.0 ===== */
.page-actions,.inline-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.top-gap{margin-top:16px}.cards.two{grid-template-columns:repeat(2,1fr)}.compact-metrics{max-width:850px;margin-bottom:0}
.btn.danger{background:#b42318;color:#fff}.list-button{width:100%;font:inherit;text-align:left;cursor:pointer}.list-button:hover{border-color:#c8b782;background:#fffdf7}
.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:18px}.detail-grid>div{padding:12px;border:1px solid var(--line);border-radius:11px;background:#faf9f6}.detail-grid span{display:block;color:var(--muted);font-size:.8rem;margin-bottom:4px}.detail-grid strong{display:block}.detail-items{display:grid;gap:8px}.detail-item{display:flex;justify-content:space-between;gap:12px;padding:12px;border:1px solid var(--line);border-radius:11px}.detail-item small{display:block;color:var(--muted);margin-top:3px}.detail-totals{display:grid;gap:7px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.detail-totals span{display:flex;justify-content:space-between}.detail-totals .grand{font-size:1.15rem}.cancel-note{margin-top:15px;padding:12px;border-radius:11px;background:#fdebea;color:#7a1812}

@media(max-width:760px){
  .cards.two{grid-template-columns:1fr}
  .page-actions{width:100%}.page-actions .btn{flex:1}
  .detail-grid{grid-template-columns:1fr}
  .table-wrap{background:transparent;border:0;box-shadow:none;overflow:visible}
  table{min-width:0;width:100%;border-collapse:separate;border-spacing:0}
  table thead{display:none}
  table tbody,table tr,table td{display:block;width:100%}
  table tr{background:#fff;border:1px solid var(--line);border-radius:14px;margin-bottom:12px;padding:8px;box-shadow:var(--shadow)}
  table td{border:0;padding:7px 8px;display:grid;grid-template-columns:minmax(105px,38%) 1fr;gap:10px;align-items:start}
  table td::before{content:attr(data-label);font-weight:800;color:#6b6b6b;font-size:.72rem;text-transform:uppercase;letter-spacing:.03em}
  table td[colspan]{display:block;text-align:center;padding:16px}
  table td[colspan]::before{display:none}
  .inline-actions{justify-content:flex-start}
}


/* ===== USE COISAS v2.1 ===== */
.brand-home{width:100%;border:0;background:transparent;color:#fff;text-align:left;cursor:pointer;font:inherit}
.brand-home:hover{background:#171717;border-radius:12px}
.topbar-brand{border:0;background:transparent;color:#fff;text-align:left;cursor:pointer;font:inherit;padding:0}
.topbar-brand strong,.topbar-brand small{display:block}
.field-help{font-size:.78rem;font-weight:500;color:var(--muted);line-height:1.35}
.photo-editor{display:flex;gap:14px;align-items:center;padding:12px;border:1px dashed #d7d1c3;border-radius:14px;background:#faf9f6}
.product-photo-preview{width:118px;height:118px;object-fit:cover;border-radius:14px;border:1px solid var(--line);background:#fff}
.photo-empty{width:118px;height:118px;display:grid;place-items:center;text-align:center;padding:10px;border-radius:14px;background:#eeeae1;color:#777;font-size:.78rem}
.photo-actions{display:flex;align-items:center;gap:8px}
.sale-product-preview{display:flex;align-items:center;gap:14px;padding:12px;border:1px solid #e2cf99;border-radius:14px;background:#fffaf0}
.sale-product-photo-wrap{width:94px;height:94px;flex:0 0 94px}
.sale-product-photo{width:94px;height:94px;object-fit:cover;border-radius:12px;border:1px solid var(--line);background:#fff}
.sale-photo-empty{width:94px;height:94px;display:grid;place-items:center;text-align:center;border-radius:12px;background:#ece8df;color:#777;font-size:.76rem}
.sale-product-confirm-text span,.sale-product-confirm-text small{display:block;color:var(--muted)}
.sale-product-confirm-text strong{display:block;font-size:1.05rem;margin:5px 0}
@media(max-width:520px){.sale-product-preview{align-items:flex-start}.sale-product-photo-wrap,.sale-product-photo,.sale-photo-empty{width:82px;height:82px;flex-basis:82px}.photo-editor{align-items:flex-start}.product-photo-preview,.photo-empty{width:100px;height:100px}}

.field-help{
  display:block;
  margin-top:5px;
  font-size:.74rem;
  color:#777;
  font-weight:400;
}
.guest-client-box{
  padding:12px 14px;
  border:1px dashed #d7b34a;
  border-radius:12px;
  background:#fffaf0;
}
.optional-label{
  font-weight:400;
  color:#777;
}
.guest-tag{
  display:inline-block;
  margin-left:6px;
  padding:2px 6px;
  border-radius:999px;
  background:#f3f3f3;
  color:#666;
  font-size:.68rem;
  font-weight:600;
}

.action-row{display:flex;gap:8px;flex-wrap:wrap}
.btn.danger{background:#fff0f0;border-color:#efb4b4;color:#a51d1d}
.btn.danger:hover{background:#ffe3e3}

.product-photo-cell{
  width:58px;
  height:58px;
  border-radius:10px;
  overflow:hidden;
  border:1px solid #e3e0d9;
  background:#f6f4ef;
  display:flex;
  align-items:center;
  justify-content:center;
}
.product-thumb{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.product-thumb-empty{
  font-size:.62rem;
  line-height:1.05;
  text-align:center;
  color:#999;
  padding:4px;
}
table td[data-label="Foto"]{
  width:78px;
}
@media (max-width:760px){
  table td[data-label="Foto"]{
    display:flex;
    justify-content:flex-end;
  }
  .product-photo-cell{
    width:72px;
    height:72px;
  }
}


/* ===== USE COISAS v2.5 ===== */
.category-section{
  margin:18px 0 22px;
}
.section-heading{
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:16px;
  margin-bottom:12px;
}
.section-heading h3{
  margin:0 0 3px;
}
.category-cards{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:12px;
}
.category-card{
  border:1px solid var(--line);
  background:#fff;
  border-radius:15px;
  padding:15px;
  text-align:left;
  cursor:pointer;
  box-shadow:var(--shadow);
  transition:.15s ease;
  font:inherit;
}
.category-card:hover{
  transform:translateY(-1px);
  border-color:#d7b34a;
  background:#fffdf8;
}
.category-card-name{
  display:block;
  min-height:31px;
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.025em;
  color:#555;
}
.category-card strong{
  display:block;
  margin:8px 0 2px;
  font-size:1.35rem;
  color:#111;
}
.category-card small{
  color:var(--muted);
}
.filter-toolbar{
  display:flex;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
}
.filter-toolbar input{
  flex:1 1 320px;
}
.filter-toolbar select{
  flex:0 1 230px;
}
.sale-product-confirm-text small + small{
  margin-top:3px;
}
#salePreviewMeta{
  color:#8b6f24;
  font-weight:650;
}

@media(max-width:1050px){
  .category-cards{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:760px){
  .category-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .filter-toolbar input,.filter-toolbar select{flex:1 1 100%;width:100%}
}
@media(max-width:420px){
  .category-cards{grid-template-columns:1fr}
}


/* ===== USE COISAS v2.6 - Tema e Início estilo PDV ===== */

html[data-theme="dark"]{
  --bg:#101010;
  --panel:#191919;
  --text:#f3f1eb;
  --muted:#a7a49c;
  --line:#303030;
  --shadow:0 10px 30px rgba(0,0,0,.28);
}

html[data-theme="light"]{
  --bg:#f5f5f3;
  --panel:#ffffff;
  --text:#171717;
  --muted:#6f6f6f;
  --line:#e5e2db;
  --shadow:0 10px 30px rgba(0,0,0,.07);
}

html,body{
  transition:background-color .18s ease,color .18s ease;
}

.theme-switch{
  border:1px solid var(--line);
  cursor:pointer;
  font:inherit;
}
.login-theme-row{
  display:flex;
  justify-content:flex-end;
  margin-bottom:4px;
}
.theme-switch.compact{
  padding:8px 11px;
  border-radius:999px;
  background:var(--panel);
  color:var(--text);
  font-size:.78rem;
  font-weight:750;
}
.sidebar-theme-switch{
  width:calc(100% - 16px);
  margin:0 8px 12px;
  padding:10px 12px;
  display:flex;
  align-items:center;
  gap:10px;
  border-radius:11px;
  background:#161616;
  color:#d8d8d8;
  border-color:#2b2b2b;
  text-align:left;
  font-weight:700;
}
.sidebar-theme-switch:hover{background:#202020;color:#fff}
.theme-switch-icon{width:20px;text-align:center;color:#f0c961}
.topbar-actions{display:flex;gap:7px;align-items:center}
.topbar-theme-btn{color:#f0c961;font-size:1.15rem;padding:7px}

.home-page-head{margin-bottom:16px}
.home-page-head h2{font-size:1.9rem}

.pdv-quick-actions{
  display:grid;
  grid-template-columns:2fr 1fr;
  gap:16px;
  margin-bottom:26px;
}
.pdv-main-action,
.pdv-secondary-action{
  border:0;
  border-radius:20px;
  min-height:126px;
  padding:22px 26px;
  display:flex;
  align-items:center;
  gap:20px;
  text-align:left;
  cursor:pointer;
  box-shadow:var(--shadow);
  transition:transform .15s ease,filter .15s ease,border-color .15s ease;
  font:inherit;
}
.pdv-main-action{
  background:linear-gradient(135deg,#e5bd5a,#b88418);
  color:#111;
}
.pdv-secondary-action{
  background:var(--panel);
  color:var(--text);
  border:1px solid var(--line);
}
.pdv-main-action:hover,.pdv-secondary-action:hover{transform:translateY(-2px);filter:brightness(1.03)}
.pdv-action-icon{
  width:72px;
  height:72px;
  flex:0 0 72px;
  border-radius:18px;
  display:grid;
  place-items:center;
  background:rgba(0,0,0,.12);
  font-size:2rem;
  font-weight:900;
}
.pdv-secondary-action .pdv-action-icon{
  background:rgba(199,154,43,.13);
  color:#d0a33d;
}
.pdv-action-text strong{
  display:block;
  font-size:1.55rem;
  margin-bottom:6px;
}
.pdv-action-text small{
  display:block;
  font-size:.9rem;
  opacity:.78;
}

.pdv-category-section{margin:0 0 26px}
.pdv-category-cards{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.pdv-category-card{
  min-height:158px;
  padding:22px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  border-radius:20px;
  background:var(--panel);
  color:var(--text);
}
.pdv-category-card:hover{
  background:var(--panel);
  border-color:#c79a2b;
  transform:translateY(-2px);
}
.pdv-category-icon{
  font-size:2rem;
  height:42px;
  display:flex;
  align-items:center;
  margin-bottom:8px;
}
.pdv-category-card .category-card-name{
  min-height:0;
  color:var(--text);
  font-size:1.03rem;
  margin-bottom:12px;
}
.pdv-category-stock{
  display:flex;
  gap:6px;
  align-items:baseline;
  color:var(--muted);
}
.pdv-category-stock strong{
  font-size:1.65rem;
  color:#d0a33d;
  margin:0;
}
.pdv-category-card small{
  margin-top:3px;
}

.low-stock-home{
  max-width:none;
  margin-top:0;
}
.low-stock-subtitle{margin:2px 0 12px}
.empty-state-ok{
  padding:18px;
  border-radius:12px;
  background:rgba(24,134,75,.10);
  color:#54b87c;
  font-weight:700;
}

/* superfícies compatíveis com tema */
.login-card,
.panel,
.metric,
.table-wrap,
.list-item,
dialog,
.modal-form,
.cart-row,
.detail-grid>div,
.detail-item,
.photo-editor,
.product-photo-preview,
.sale-product-photo,
.product-photo-cell{
  background:var(--panel);
  color:var(--text);
}
input,select,textarea{
  background:var(--panel);
  color:var(--text);
}
.btn.ghost{
  background:color-mix(in srgb,var(--panel) 88%,var(--text) 12%);
  color:var(--text);
}
th{
  background:color-mix(in srgb,var(--panel) 88%,var(--bg) 12%);
  color:var(--muted);
}
.guest-client-box,
.sale-product-preview{
  background:color-mix(in srgb,var(--panel) 92%,#c79a2b 8%);
}
.photo-empty,
.sale-photo-empty,
.product-thumb-empty{
  background:color-mix(in srgb,var(--panel) 82%,var(--text) 18%);
  color:var(--muted);
}
.list-button:hover{
  background:color-mix(in srgb,var(--panel) 93%,#c79a2b 7%);
}
html[data-theme="dark"] .btn.secondary{
  background:#2a2a2a;
  color:#fff;
}
html[data-theme="dark"] .badge.ok{background:#143724;color:#73d49a}
html[data-theme="dark"] .badge.warn{background:#3c2e10;color:#f0c55d}
html[data-theme="dark"] .badge.danger{background:#421d1a;color:#ff8d85}
html[data-theme="dark"] .btn.danger{background:#421d1a;border-color:#6b2a25;color:#ff9b94}
html[data-theme="dark"] .btn.danger:hover{background:#55231e}
html[data-theme="dark"] .cancel-note{background:#421d1a;color:#ffb4ae}
html[data-theme="dark"] .guest-tag{background:#303030;color:#c7c7c7}
html[data-theme="dark"] #salePreviewMeta{color:#e0b85b}
html[data-theme="dark"] .login-card{background:#181818}
html[data-theme="dark"] dialog{background:#191919;color:#f3f1eb}
html[data-theme="dark"] .category-card strong{color:var(--text)}
html[data-theme="dark"] .category-card-name{color:var(--text)}

@media(max-width:950px){
  .pdv-category-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .pdv-quick-actions{grid-template-columns:1fr}
  .pdv-main-action,.pdv-secondary-action{min-height:108px;padding:18px}
  .pdv-action-icon{width:60px;height:60px;flex-basis:60px}
  .pdv-category-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pdv-category-card{min-height:140px;padding:18px}
  html[data-theme="dark"] table tr{background:var(--panel)}
}
@media(max-width:440px){
  .pdv-category-cards{grid-template-columns:1fr 1fr}
  .pdv-category-card{min-height:130px;padding:15px}
  .pdv-category-card .category-card-name{font-size:.9rem}
  .pdv-category-stock strong{font-size:1.4rem}
}


/* ===== USE COISAS v3.0 - navegação de estoque + gestão interna ===== */
.panel-lite{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:14px 16px;margin-bottom:14px}
.stock-browser-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}.stock-browser-head small{display:block;color:var(--muted);margin-top:2px}
.stock-step{display:flex;gap:12px;align-items:flex-start;padding:8px 0}.stock-step+.stock-step{border-top:1px solid var(--line)}.stock-step-label{flex:0 0 120px;font-weight:800;color:var(--muted);padding-top:8px}
.filter-chips{display:flex;flex-wrap:wrap;gap:8px}.filter-chip{border:1px solid var(--line);background:color-mix(in srgb,var(--panel) 92%,var(--text) 8%);color:var(--text);border-radius:12px;padding:9px 13px;font:inherit;font-weight:750;cursor:pointer}.filter-chip:hover,.filter-chip.active{border-color:#d0a33d;background:#d0a33d;color:#111}
.month-filter{display:flex;align-items:center;gap:9px;font-weight:700}.month-filter input{min-width:155px}
.internal-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px;padding:6px;background:color-mix(in srgb,var(--panel) 94%,var(--text) 6%);border:1px solid var(--line);border-radius:14px;width:max-content;max-width:100%}.internal-tab-btn{border:0;background:transparent;color:var(--muted);padding:10px 14px;border-radius:10px;font:inherit;font-weight:800;cursor:pointer}.internal-tab-btn.active{background:#d0a33d;color:#111}.internal-tab-panel{display:none}.internal-tab-panel.active{display:block}
.business-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.business-metric{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:18px;box-shadow:var(--shadow)}.business-metric span{display:block;color:var(--muted);font-size:.85rem}.business-metric strong{display:block;font-size:1.55rem;margin:8px 0 4px}.business-metric small{color:var(--muted)}.business-metric.highlight{border-color:#9d7822;background:color-mix(in srgb,var(--panel) 90%,#d0a33d 10%)}
.business-summary-strip{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 18px}.business-summary-strip span{background:var(--panel);border:1px solid var(--line);border-radius:999px;padding:9px 13px;color:var(--muted)}.business-summary-strip strong{color:var(--text);margin-left:4px}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.business-lists .panel{min-height:260px}.subpage-head{display:flex;justify-content:space-between;gap:16px;align-items:center;margin:8px 0 14px}.subpage-head h3{margin:0 0 4px}.checkbox-card{display:flex!important;flex-direction:row!important;align-items:center;gap:10px;border:1px solid var(--line);border-radius:11px;padding:11px 12px}.checkbox-card input{width:auto!important}.info-box{margin-top:12px;padding:12px 14px;border-radius:12px;background:color-mix(in srgb,var(--panel) 90%,#d0a33d 10%);border:1px solid #8e7028;color:var(--muted)}.receipt-modal{max-width:780px}.receipt-image{display:block;max-width:100%;max-height:70vh;margin:auto;border-radius:12px;border:1px solid var(--line)}
@media(max-width:1100px){.business-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:1fr 1fr}.business-lists .panel:last-child{grid-column:1/-1}}
@media(max-width:760px){.stock-step{display:block}.stock-step-label{display:block;margin-bottom:7px}.stock-browser-head,.subpage-head{align-items:flex-start;flex-direction:column}.business-metrics,.grid.three{grid-template-columns:1fr}.business-lists .panel:last-child{grid-column:auto}.internal-tabs{width:100%}.internal-tab-btn{flex:1 1 45%}.month-filter{width:100%;justify-content:space-between}}


/* ===== USE COISAS v3.1 - Início mais limpo + mobile ===== */
.home-page-head{margin-bottom:18px}.home-page-head h2{font-size:2rem}

.home-action-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin-bottom:26px;
}
.home-action-card{
  min-height:132px;border:1px solid var(--line);border-radius:20px;background:var(--panel);color:var(--text);
  padding:20px;text-align:left;cursor:pointer;box-shadow:var(--shadow);display:flex;flex-direction:column;
  justify-content:space-between;gap:16px;transition:.15s ease;font:inherit
}
.home-action-card:hover{transform:translateY(-2px);border-color:#d0a33d}
.home-action-card.primary-action{background:linear-gradient(135deg,#e7bd55,#bd891c);color:#111;border-color:transparent}
.home-action-icon{
  width:48px;height:48px;border-radius:14px;display:grid;place-items:center;font-size:1.45rem;font-weight:900;
  background:color-mix(in srgb,var(--panel) 82%,#d0a33d 18%);color:#d0a33d
}
.primary-action .home-action-icon{background:rgba(0,0,0,.13);color:#111}
.home-action-copy strong{display:block;font-size:1.08rem;margin-bottom:4px}
.home-action-copy small{color:var(--muted);font-size:.82rem}
.primary-action .home-action-copy small{color:rgba(0,0,0,.67)}

.home-category-section{margin:0}
.home-category-cards{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.home-category-card{
  min-height:122px;border-radius:18px;padding:17px;display:flex;flex-direction:column;align-items:flex-start;
  justify-content:center;gap:5px;background:var(--panel);color:var(--text)
}
.home-category-card:hover{background:color-mix(in srgb,var(--panel) 94%,#d0a33d 6%)}
.home-category-icon{font-size:1.65rem;min-height:30px;margin-bottom:5px}
.home-category-card .category-card-name{min-height:auto;margin:0;font-size:.88rem;color:var(--text)}
.home-category-count{color:#d0a33d;font-size:.9rem;font-weight:800}

/* navegação inferior fica invisível no PC */
.mobile-bottom-nav{display:none}

/* botões de filtros de estoque mais confortáveis */
.stock-browser .filter-chip{min-height:44px;padding:10px 16px}

@media(max-width:1150px){
  .home-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .home-category-cards{grid-template-columns:repeat(3,minmax(0,1fr))}
}

@media(max-width:760px){
  body{padding-bottom:74px}
  .main{padding-bottom:92px!important}
  .home-page-head{margin-bottom:12px}.home-page-head h2{font-size:1.6rem}

  .home-action-grid{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:20px}
  .home-action-card{min-height:112px;padding:14px;border-radius:16px;gap:10px}
  .home-action-icon{width:40px;height:40px;border-radius:12px;font-size:1.2rem}
  .home-action-copy strong{font-size:.95rem}.home-action-copy small{font-size:.73rem}

  .home-category-cards{grid-template-columns:1fr 1fr;gap:10px}
  .home-category-card{min-height:104px;padding:14px;border-radius:16px}
  .home-category-icon{font-size:1.4rem;min-height:25px}
  .home-category-card .category-card-name{font-size:.78rem}

  .mobile-bottom-nav{
    position:fixed;left:0;right:0;bottom:0;height:68px;display:grid;grid-template-columns:repeat(5,1fr);
    z-index:45;border-top:1px solid var(--line);background:color-mix(in srgb,var(--panel) 94%,transparent 6%);
    backdrop-filter:blur(14px);box-shadow:0 -8px 24px rgba(0,0,0,.16);
    padding-bottom:env(safe-area-inset-bottom)
  }
  .mobile-nav-item{
    border:0;background:transparent;color:var(--muted);display:flex;flex-direction:column;align-items:center;
    justify-content:center;gap:3px;font:inherit;cursor:pointer;min-width:0
  }
  .mobile-nav-item span{font-size:1.18rem;line-height:1}
  .mobile-nav-item small{font-size:.65rem;font-weight:750}
  .mobile-nav-item.active{color:#d0a33d}
  .mobile-nav-sale span{
    width:38px;height:38px;margin-top:-17px;border-radius:50%;display:grid;place-items:center;background:#d0a33d;
    color:#111;box-shadow:0 5px 16px rgba(0,0,0,.3);font-size:1.4rem
  }

  .stock-step{padding:10px 0}
  .filter-chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%}
  .filter-chip{width:100%;min-height:48px;padding:10px 8px;text-align:center}
  #stockVolumeTiles{grid-template-columns:repeat(3,minmax(0,1fr))}
}

@media(max-width:390px){
  .home-action-card{min-height:105px;padding:12px}
  .home-action-copy small{display:none}
  .home-category-card{min-height:98px;padding:12px}
  #stockVolumeTiles{grid-template-columns:repeat(2,minmax(0,1fr))}
}


/* ===== USE COISAS v3.2 - PWA, recuperação de senha e WhatsApp ===== */

.text-action{
  border:0;
  background:transparent;
  color:#d0a33d;
  font:inherit;
  font-size:.84rem;
  font-weight:750;
  cursor:pointer;
  padding:7px 2px 0;
  text-align:center;
}
.text-action:hover{text-decoration:underline}

.install-app-btn{
  width:100%;
  margin-top:14px;
  border:1px solid var(--line);
  border-radius:13px;
  background:var(--panel);
  color:var(--text);
  padding:11px 13px;
  display:flex;
  align-items:center;
  gap:11px;
  text-align:left;
  cursor:pointer;
  font:inherit;
}
.install-app-btn>span:first-child{
  width:37px;height:37px;border-radius:10px;
  display:grid;place-items:center;
  background:rgba(208,163,61,.13);
  color:#d0a33d;
  font-size:1.1rem;
}
.install-app-btn strong,.install-app-btn small{display:block}
.install-app-btn strong{font-size:.83rem}
.install-app-btn small{font-size:.7rem;color:var(--muted);margin-top:2px}

.sidebar-install-app{
  width:calc(100% - 16px);
  margin:0 8px 12px;
  padding:10px 12px;
  display:flex;
  align-items:center;
  gap:10px;
  border:1px solid #463817;
  border-radius:11px;
  background:#211b0e;
  color:#e7c665;
  font:inherit;
  font-weight:750;
  cursor:pointer;
}
.sidebar-install-app:hover{background:#2b2311}

.compact-modal{
  max-width:480px;
}
.password-reset-info{
  margin:12px 0 3px;
}
.form-message{
  min-height:20px;
  margin:9px 0 0;
  font-size:.8rem;
  line-height:1.4;
}
.form-message.success{color:#48ad72}
.form-message.error{color:#d65b51}

.btn.whatsapp{
  background:#1f9d55;
  border-color:#1f9d55;
  color:#fff;
}
.btn.whatsapp:hover{filter:brightness(1.05)}

.sale-success-modal{
  text-align:center;
  padding-top:28px;
}
.sale-success-icon{
  width:68px;height:68px;margin:0 auto 15px;
  border-radius:50%;
  display:grid;place-items:center;
  background:rgba(31,157,85,.14);
  color:#35b96d;
  font-size:2rem;
  font-weight:900;
}
.sale-success-copy h3{font-size:1.25rem;margin:0 0 6px}
.sale-success-copy p{margin:0 0 22px}
.sale-success-actions{
  display:grid;
  gap:9px;
}
.sale-detail-actions{
  flex-wrap:wrap;
}

@media(max-width:760px){
  dialog .compact-modal{
    width:min(94vw,480px);
  }
  .sale-detail-actions .btn{
    flex:1 1 130px;
  }
}

@media(display-mode:standalone){
  .install-app-btn,.sidebar-install-app{display:none!important}
}


/* ===== USE COISAS v3.3 - Histórico ===== */
.history-tabs{display:flex;gap:8px;margin-bottom:12px}
.history-tab{
  border:1px solid var(--line);background:var(--panel);color:var(--muted);min-height:44px;padding:10px 16px;
  border-radius:12px;font:inherit;font-weight:800;cursor:pointer;display:flex;align-items:center;gap:8px
}
.history-tab.active{border-color:#d0a33d;color:var(--text);background:color-mix(in srgb,var(--panel) 91%,#d0a33d 9%)}
.history-tab-count{
  min-width:24px;height:22px;padding:0 7px;border-radius:999px;display:grid;place-items:center;
  background:color-mix(in srgb,var(--panel) 78%,var(--text) 22%);color:var(--muted);font-size:.7rem
}
.history-tab.active .history-tab-count{background:#d0a33d;color:#111}

.history-panel{padding:16px}
.history-filters{
  display:grid;grid-template-columns:minmax(220px,2fr) repeat(3,minmax(145px,1fr)) auto;
  gap:10px;align-items:end
}
.history-filters label{gap:5px}
.history-filters label>span{color:var(--muted);font-size:.72rem;font-weight:750}
.history-filter-action{display:flex;align-items:flex-end}
.history-filter-action .btn{min-height:44px;white-space:nowrap}
.history-search input{min-width:0}

.history-summary{
  min-height:42px;margin:15px 0 8px;padding:10px 12px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);
  display:flex;align-items:center;flex-wrap:wrap;gap:8px 20px;color:var(--muted);font-size:.82rem
}
.history-summary strong{color:var(--text)}

.history-results{display:grid;gap:8px}
.history-row{
  width:100%;border:1px solid var(--line);border-radius:13px;padding:13px 14px;background:var(--panel);color:var(--text);
  display:flex;justify-content:space-between;align-items:center;gap:14px;text-align:left
}
button.history-row{cursor:pointer;font:inherit}
button.history-row:hover{border-color:#b99236;background:color-mix(in srgb,var(--panel) 95%,#d0a33d 5%)}
.history-row-cancelled{opacity:.68}
.history-main{min-width:0;flex:1}
.history-title-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.history-title-line>strong{font-size:.9rem}
.history-client{color:var(--muted);font-size:.82rem}
.history-product-line{margin-top:5px;font-size:.82rem;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.history-meta{display:flex;flex-wrap:wrap;gap:5px 12px;margin-top:6px;color:var(--muted);font-size:.72rem}
.history-side{min-width:115px;display:flex;flex-direction:column;align-items:flex-end;gap:5px}
.history-side small{color:var(--muted);font-size:.68rem}
.history-value{font-size:1rem}
.movement-qty{color:#d0a33d;font-size:.9rem}
.movement-icon{
  width:28px;height:28px;flex:0 0 28px;border-radius:8px;display:grid;place-items:center;font-weight:900;font-size:.85rem
}
.movement-icon.ok{background:rgba(31,157,85,.14);color:#46b875}
.movement-icon.warn{background:rgba(199,154,43,.15);color:#d0a33d}
.movement-icon.danger{background:rgba(180,35,24,.14);color:#df685e}
.movement-icon.neutral{background:color-mix(in srgb,var(--panel) 78%,var(--text) 22%);color:var(--muted)}

.history-empty{
  min-height:140px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;
  text-align:center;color:var(--muted)
}
.history-empty strong{color:var(--text)}

@media(max-width:1100px){
  .history-filters{grid-template-columns:2fr 1fr 1fr}
}
@media(max-width:760px){
  .history-tabs{
    display:grid;grid-template-columns:1fr 1fr;position:sticky;top:61px;z-index:10;padding:6px 0;background:var(--bg)
  }
  .history-tab{justify-content:center;padding:9px 8px}
  .history-panel{padding:11px}
  .history-filters{grid-template-columns:1fr 1fr;gap:8px}
  .history-search{grid-column:1/-1}
  .history-filter-action{grid-column:1/-1}
  .history-filter-action .btn{width:100%}
  .history-summary{gap:6px 14px;font-size:.75rem}
  .history-row{padding:12px;align-items:flex-start}
  .history-title-line{gap:5px 7px}
  .history-product-line{
    white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden
  }
  .history-side{min-width:84px}
  .history-side .badge{font-size:.66rem}
  .history-value{font-size:.9rem}
  .history-meta{flex-direction:column;gap:2px}
}
@media(max-width:420px){
  .history-filters{grid-template-columns:1fr}
  .history-search,.history-filter-action{grid-column:auto}
  .history-row{flex-direction:column}
  .history-side{
    width:100%;min-width:0;flex-direction:row;justify-content:space-between;align-items:center;
    border-top:1px solid var(--line);padding-top:9px
  }
  .history-side small{margin-left:auto}
}


/* ===== USE COISAS v3.4 - Estoque mobile ===== */

.stock-page-head{
  margin-bottom:14px;
}

.stock-search-toolbar{
  margin-top:12px;
}

.stock-actions-bottom{
  margin-top:18px;
  padding:16px;
  border:1px solid var(--line);
  border-radius:16px;
  background:var(--panel);
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
}
.stock-actions-copy strong,
.stock-actions-copy small{
  display:block;
}
.stock-actions-copy small{
  margin-top:3px;
  color:var(--muted);
  font-size:.78rem;
}
.stock-actions-buttons{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}

.stock-product-main{
  display:flex;
  align-items:center;
  gap:7px;
  flex-wrap:wrap;
}
.product-code-badge{
  display:inline-flex;
  min-height:23px;
  align-items:center;
  justify-content:center;
  padding:2px 7px;
  border:1px solid color-mix(in srgb,#d0a33d 55%,var(--line) 45%);
  border-radius:7px;
  color:#d0a33d;
  background:rgba(208,163,61,.08);
  font-size:.68rem;
  font-weight:850;
  letter-spacing:.02em;
}

/* No celular a categoria é escolhida pelos botões grandes; esconder o select duplicado */
@media(max-width:760px){
  .stock-category-select{
    display:none!important;
  }

  .stock-search-toolbar{
    display:grid;
    grid-template-columns:1fr;
    gap:8px;
  }
  .stock-search-toolbar input,
  .stock-search-toolbar select{
    width:100%;
    min-height:50px;
    font-size:1rem;
  }

  .stock-browser{
    margin-bottom:12px;
  }

  .stock-actions-bottom{
    margin:18px 0 6px;
    padding:14px;
    flex-direction:column;
    align-items:stretch;
  }
  .stock-actions-buttons{
    display:grid;
    grid-template-columns:1fr;
    width:100%;
  }
  .stock-actions-buttons .btn{
    width:100%;
    min-height:48px;
  }

  #stockTableWrap{
    margin-top:8px;
  }

  #stockTableWrap table td[data-label="Produto"]{
    padding-top:10px;
  }

  .product-code-badge{
    font-size:.72rem;
    min-height:25px;
  }
}

@media(min-width:761px){
  .stock-actions-bottom{
    margin-bottom:10px;
  }
}


/* ===== USE COISAS v3.5 - Estoque simplificado ===== */
.simple-stock-search{
  display:block;
  width:100%;
}
.simple-stock-search input{
  width:100%;
  max-width:none;
}
@media(max-width:760px){
  .simple-stock-search{
    margin-top:10px;
  }
  .simple-stock-search input{
    min-height:50px;
    font-size:1rem;
  }
}


/* ===== USE COISAS v3.6 - Produtos e Estoque limpos ===== */

.clean-product-table table,
.clean-stock-table table{
  min-width:1080px;
}

.product-name-cell strong{
  font-size:.9rem;
  line-height:1.25;
}
.product-name-cell small{
  display:block;
  margin-top:4px;
  color:var(--muted);
  font-size:.7rem;
}

.data-pill{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  border-radius:8px;
  padding:4px 8px;
  font-size:.74rem;
  font-weight:750;
  white-space:nowrap;
}
.volume-pill{
  background:rgba(208,163,61,.10);
  color:#d8ad48;
  border:1px solid rgba(208,163,61,.25);
}
.category-pill{
  background:color-mix(in srgb,var(--panel) 82%,var(--text) 18%);
  color:var(--text);
  border:1px solid var(--line);
}
.public-pill{
  background:rgba(80,125,190,.10);
  color:color-mix(in srgb,#6ea1e8 85%,var(--text) 15%);
  border:1px solid rgba(100,150,220,.20);
}
.category-detail{
  display:block;
  margin-top:4px;
  color:var(--muted);
  font-size:.68rem;
}
.muted-value{
  color:var(--muted);
}
.stock-number{
  font-size:1rem;
  color:#d0a33d;
}
.location-stock{
  font-weight:800;
}

/* Desktop: mais respiro e menos informação amontoada */
.clean-product-table th,
.clean-product-table td,
.clean-stock-table th,
.clean-stock-table td{
  vertical-align:middle;
}
.clean-product-table td,
.clean-stock-table td{
  padding-top:11px;
  padding-bottom:11px;
}

/* Mobile vira uma ficha organizada, sem repetir nome/categoria/volume */
@media(max-width:760px){
  .clean-product-table table,
  .clean-stock-table table{
    min-width:0;
  }

  .clean-product-table table tr,
  .clean-stock-table table tr{
    padding:10px;
    border-radius:16px;
  }

  .clean-product-table table td,
  .clean-stock-table table td{
    grid-template-columns:minmax(112px,38%) 1fr;
    gap:10px;
    padding:7px 5px;
    align-items:center;
  }

  .clean-product-table table td[data-label="Foto"],
  .clean-stock-table table td[data-label="Foto"]{
    display:flex;
    justify-content:flex-start;
    padding-bottom:10px;
    border-bottom:1px solid var(--line);
    margin-bottom:4px;
  }
  .clean-product-table table td[data-label="Foto"]::before,
  .clean-stock-table table td[data-label="Foto"]::before{
    display:none;
  }

  .clean-product-table .product-photo-cell,
  .clean-stock-table .product-photo-cell{
    width:72px;
    height:72px;
  }

  .product-name-cell strong{
    font-size:.95rem;
  }

  .data-pill{
    width:max-content;
    max-width:100%;
    min-height:26px;
    padding:3px 8px;
  }

  .clean-product-table td[data-label="Ações"],
  .clean-stock-table td[data-label="Ações"]{
    margin-top:4px;
    padding-top:10px;
    border-top:1px solid var(--line);
  }

  .clean-product-table td[data-label="Ações"] .action-row{
    width:100%;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
  }

  .clean-product-table td[data-label="Ações"] .btn,
  .clean-stock-table td[data-label="Ações"] .btn{
    min-height:42px;
  }

  .clean-stock-table td[data-label="Estoque geral"]{
    margin-top:4px;
    padding-top:10px;
    border-top:1px solid var(--line);
  }
}

/* Em telas muito pequenas, mantém leitura confortável */
@media(max-width:390px){
  .clean-product-table table td,
  .clean-stock-table table td{
    grid-template-columns:105px 1fr;
    gap:8px;
  }
}


/* ===== USE COISAS v4.0 - Financeiro / visão de dono ===== */

.owner-summary-head{
  margin-bottom:12px;
}
.owner-summary-head h3{
  margin:0 0 4px;
}

.owner-summary-strip{
  margin-top:12px;
}

.capital-comparison{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin:0 0 18px;
}
.capital-card{
  border:1px solid var(--line);
  border-radius:14px;
  padding:14px 15px;
  background:var(--panel);
}
.capital-card span{
  display:block;
  color:var(--muted);
  font-size:.76rem;
  margin-bottom:5px;
}
.capital-card strong{
  font-size:1.08rem;
}

.finance-metrics{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin-bottom:12px;
}
.finance-metric{
  border:1px solid var(--line);
  border-radius:16px;
  padding:16px;
  background:var(--panel);
  box-shadow:var(--shadow);
}
.finance-metric span{
  display:block;
  color:var(--muted);
  font-size:.8rem;
}
.finance-metric strong{
  display:block;
  margin:7px 0 3px;
  font-size:1.35rem;
}
.finance-metric small{
  color:var(--muted);
  font-size:.72rem;
}
.finance-metric.positive{border-color:rgba(31,157,85,.34)}
.finance-metric.negative{border-color:rgba(200,70,60,.30)}
.finance-metric.balance{border-color:rgba(208,163,61,.40)}
.finance-metric.warning{border-color:rgba(208,163,61,.40)}

.finance-result-strip{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;
  border:1px solid var(--line);
  border-radius:14px;
  overflow:hidden;
  background:var(--line);
  margin-bottom:14px;
}
.finance-result-strip>div{
  background:var(--panel);
  padding:13px 14px;
}
.finance-result-strip span,
.finance-result-strip small{
  display:block;
  color:var(--muted);
  font-size:.72rem;
}
.finance-result-strip strong{
  display:block;
  margin-top:4px;
  font-size:1rem;
}
.finance-result-strip .result-highlight{
  background:color-mix(in srgb,var(--panel) 90%,#d0a33d 10%);
}
.negative-value{
  color:#dc6a61!important;
}

.finance-toolbar{
  display:grid;
  grid-template-columns:minmax(240px,1fr) 220px;
  gap:10px;
  margin-bottom:10px;
}
.finance-note{
  padding:10px 12px;
  border-radius:11px;
  border:1px solid var(--line);
  background:color-mix(in srgb,var(--panel) 95%,#d0a33d 5%);
  color:var(--muted);
  font-size:.76rem;
  margin-bottom:10px;
}

.finance-ledger{
  display:grid;
  gap:8px;
}
.finance-entry{
  display:grid;
  grid-template-columns:42px minmax(0,1fr) auto;
  align-items:center;
  gap:11px;
  padding:12px;
  border:1px solid var(--line);
  border-radius:13px;
  background:var(--panel);
}
.finance-entry-icon{
  width:38px;
  height:38px;
  border-radius:11px;
  display:grid;
  place-items:center;
  font-size:1.05rem;
  font-weight:900;
}
.finance-entry.in .finance-entry-icon{
  background:rgba(31,157,85,.14);
  color:#46b875;
}
.finance-entry.out .finance-entry-icon{
  background:rgba(190,60,50,.12);
  color:#df685e;
}
.finance-entry.pending .finance-entry-icon{
  background:rgba(208,163,61,.14);
  color:#d0a33d;
}
.finance-entry-main{
  min-width:0;
}
.finance-entry-title{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.finance-entry-title strong{
  font-size:.88rem;
}
.finance-entry-main small{
  display:block;
  margin-top:4px;
  color:var(--muted);
  font-size:.72rem;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.finance-entry-source{
  font-size:.62rem;
  font-weight:800;
  border:1px solid var(--line);
  border-radius:999px;
  padding:2px 6px;
  color:var(--muted);
}
.finance-entry-side{
  text-align:right;
}
.finance-entry-side>strong{
  display:block;
  font-size:.92rem;
}
.finance-entry.in .finance-entry-side>strong{
  color:#46b875;
}
.finance-entry.out .finance-entry-side>strong{
  color:#df685e;
}
.finance-entry.pending .finance-entry-side>strong{
  color:#d0a33d;
}
.finance-entry-status{
  display:block;
  margin-top:2px;
  font-size:.66rem;
  color:var(--muted);
}
.finance-entry-actions{
  display:flex;
  justify-content:flex-end;
  gap:5px;
  margin-top:6px;
}
.btn.tiny{
  min-height:27px;
  padding:4px 8px;
  font-size:.67rem;
}

@media(max-width:1100px){
  .finance-metrics,
  .finance-result-strip{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .capital-comparison{
    grid-template-columns:1fr 1fr 1fr;
  }
}

@media(max-width:760px){
  .capital-comparison,
  .finance-metrics{
    grid-template-columns:1fr 1fr;
  }
  .finance-result-strip{
    grid-template-columns:1fr 1fr;
  }
  .finance-toolbar{
    grid-template-columns:1fr;
  }
  .finance-entry{
    grid-template-columns:36px minmax(0,1fr);
  }
  .finance-entry-icon{
    width:34px;height:34px;
  }
  .finance-entry-side{
    grid-column:1/-1;
    border-top:1px solid var(--line);
    padding-top:8px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    text-align:left;
    gap:8px;
  }
  .finance-entry-actions{
    margin:0 0 0 auto;
  }
  .finance-entry-main small{
    white-space:normal;
  }
}

@media(max-width:440px){
  .capital-comparison,
  .finance-metrics,
  .finance-result-strip{
    grid-template-columns:1fr;
  }
  .owner-summary-strip{
    display:grid;
    grid-template-columns:1fr;
  }
}


/* ===== USE COISAS v4.1.0 ===== */
.brand-logo{
  display:block;
  object-fit:cover;
  background:#000;
  border-radius:50%;
  border:1px solid rgba(226,186,88,.7);
  box-shadow:0 5px 18px rgba(0,0,0,.22);
}
.login-brand-logo{width:86px;height:86px;margin:0 0 16px}
.sidebar-brand .brand-logo.small-mark{width:48px;height:48px;flex:0 0 48px;margin:0}

/* Código vem antes do volume e volumes ganham leitura visual imediata. */
.volume-pill.volume-130{
  background:#f1c84c;
  color:#17130a;
  border:1px solid #d3a928;
}
.volume-pill.volume-230{
  background:#111;
  color:#f0c961;
  border:1px solid #c79a2b;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04);
}
.volume-pill.volume-other{
  background:#ece9e1;
  color:#333;
  border:1px solid var(--line);
}
html[data-theme="dark"] .volume-pill.volume-130{background:#d8ae36;color:#111;border-color:#f0c961}
html[data-theme="dark"] .volume-pill.volume-230{background:#050505;color:#f0c961;border-color:#8e7028}
html[data-theme="dark"] .volume-pill.volume-other{background:#292929;color:#ddd;border-color:#3a3a3a}

.clean-product-table tr.product-group-start td,
.clean-stock-table tr.product-group-start td{
  border-top:3px solid color-mix(in srgb,var(--gold) 55%,var(--line));
}
.stock-row-actions{min-width:220px}
.stock-current-box{
  padding:11px 13px;
  border-radius:11px;
  border:1px solid var(--line);
  background:var(--panel);
  color:var(--muted);
  font-size:.9rem;
}
.stock-current-box strong,.stock-current-box b{color:var(--text)}

.confirm-password-dialog{width:min(520px,calc(100% - 28px))}
.confirm-action-summary{margin:4px 0 18px}
.confirm-info-box,.confirm-danger-box{
  display:grid;
  gap:7px;
  padding:14px 15px;
  border-radius:14px;
  border:1px solid var(--line);
  background:color-mix(in srgb,var(--panel) 94%,var(--gold) 6%);
}
.confirm-info-box>strong,.confirm-danger-box>strong{font-size:1.02rem}
.confirm-info-box span,.confirm-danger-box span,.confirm-info-box small,.confirm-danger-box small{display:block;color:var(--muted)}
.confirm-danger-box{border-color:color-mix(in srgb,var(--danger) 55%,var(--line));background:color-mix(in srgb,var(--panel) 94%,var(--danger) 6%)}
.confirm-danger-box>strong{color:var(--danger)}
.confirm-password-label{margin-top:6px}
.confirm-password-note{margin:8px 0 0}
.stock-change-line{display:flex!important;gap:9px;align-items:center;font-size:1.04rem}
.stock-change-line b{font-size:1.2rem;color:var(--text)}

@media(max-width:760px){
  .login-brand-logo{width:78px;height:78px}
  .clean-product-table tr.product-group-start,
  .clean-stock-table tr.product-group-start{margin-top:20px}
  .clean-product-table tr.product-group-start td,
  .clean-stock-table tr.product-group-start td{border-top:0}
  .stock-row-actions{min-width:0}
}

@media(max-width:760px){
  .clean-stock-table td[data-label="Ações"] .action-row{
    width:100%;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:6px;
  }
  .clean-stock-table td[data-label="Ações"] .btn{padding-left:7px;padding-right:7px;font-size:.78rem}
}
@media(max-width:420px){
  .clean-stock-table td[data-label="Ações"] .action-row{grid-template-columns:1fr 1fr}
  .clean-stock-table td[data-label="Ações"] .delete-product{grid-column:1/-1}
}


/* ===== USE COISAS v4.1.1 - Tabelas mais harmônicas ===== */
/* A informação deixa de parecer um conjunto de botões: somente as ações continuam com destaque. */
.clean-product-table .product-name-cell strong,
.clean-stock-table .product-name-cell strong{
  font-size:.86rem;
  font-weight:650;
  color:var(--text);
}

.table-value{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:22px;
  color:var(--text);
  font-size:.84rem;
  font-weight:600;
  line-height:1.2;
  white-space:nowrap;
}
.code-value{
  font-size:.86rem;
  font-weight:700;
  letter-spacing:.025em;
  font-variant-numeric:tabular-nums;
}
.category-text,
.public-text{
  color:var(--text);
  font-weight:600;
}
.price-value,
.stock-value,
.location-stock{
  color:var(--text);
  font-size:.86rem;
  font-weight:650;
  font-variant-numeric:tabular-nums;
}

/* Volume continua fácil de bater o olho, mas sem virar um botão colorido. */
.volume-value{
  background:none!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  border-radius:0!important;
  color:var(--text)!important;
}
.volume-dot{
  width:8px;
  height:8px;
  flex:0 0 8px;
  border-radius:50%;
  display:inline-block;
  background:#9b9b9b;
  border:1px solid transparent;
}
.volume-value.volume-130 .volume-dot{
  background:#d8ae36;
  border-color:#f0c961;
}
.volume-value.volume-230 .volume-dot{
  background:#111;
  border-color:#c79a2b;
}
.volume-value.volume-other .volume-dot{
  background:#8a8a8a;
  border-color:#a8a8a8;
}
html[data-theme="dark"] .volume-value.volume-230 .volume-dot{
  background:#050505;
  border-color:#d0a33d;
}

/* A linha dourada continua separando um código/produto do próximo. */
.clean-product-table tr.product-group-start td,
.clean-stock-table tr.product-group-start td{
  border-top:2px solid color-mix(in srgb,var(--gold) 58%,var(--line));
}

/* Desktop: cabeçalhos e valores alinhados na mesma leitura visual. */
@media(min-width:761px){
  .clean-product-table th,
  .clean-product-table td,
  .clean-stock-table th,
  .clean-stock-table td{
    text-align:center;
    vertical-align:middle;
  }
  .clean-product-table th,
  .clean-stock-table th{
    color:var(--muted);
    font-size:.76rem;
    font-weight:750;
    letter-spacing:.025em;
  }
  .clean-product-table td,
  .clean-stock-table td{
    color:var(--text);
  }
  .clean-product-table td[data-label="Nome / Fragrância"],
  .clean-stock-table td[data-label="Nome / Fragrância"],
  .clean-product-table td[data-label="Inspirado em"],
  .clean-stock-table td[data-label="Inspirado em"]{
    text-align:center;
  }
  .clean-product-table td[data-label="Foto"],
  .clean-stock-table td[data-label="Foto"]{
    text-align:center;
  }
  .clean-product-table .product-photo-cell,
  .clean-stock-table .product-photo-cell{
    margin-inline:auto;
  }
  .clean-product-table .action-row,
  .clean-stock-table .action-row{
    justify-content:center;
  }
  .category-detail{
    text-align:center;
    margin-top:3px;
  }
}

/* Mobile mantém o formato de ficha, mas com a mesma tipografia neutra. */
@media(max-width:760px){
  .table-value{justify-content:flex-start;white-space:normal}
  .clean-product-table td,
  .clean-stock-table td{text-align:left}
  .clean-product-table td[data-label="Foto"],
  .clean-stock-table td[data-label="Foto"]{text-align:right}
}

/* ===== USE COISAS v4.1.5 - Cadastro em sequência + ações de estoque profissionais ===== */
.product-photo-final-step{
  margin-top:18px;
  padding-top:18px;
  border-top:1px solid var(--line);
}
.product-photo-final-step h4{margin:0 0 4px}
.product-photo-final-step > p{margin:0 0 12px}
.product-photo-file-field{display:grid;gap:7px;margin-bottom:12px}
.product-photo-final-step .photo-editor{margin-top:0}

/* Na tabela de estoque, uma única entrada de Ações evita três botões amontoados. */
.stock-actions-cell{position:relative;overflow:visible!important}
.stock-action-menu{
  position:relative;
  display:inline-block;
  text-align:left;
}
.stock-action-menu > summary{
  list-style:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-width:92px;
  min-height:34px;
  padding:7px 11px;
  border:1px solid var(--line);
  border-radius:9px;
  background:color-mix(in srgb,var(--panel) 92%,var(--text) 8%);
  color:var(--text);
  font-size:.79rem;
  font-weight:700;
  cursor:pointer;
  user-select:none;
  transition:background .15s ease,border-color .15s ease,transform .15s ease;
}
.stock-action-menu > summary::-webkit-details-marker{display:none}
.stock-action-menu > summary:hover{
  background:color-mix(in srgb,var(--panel) 85%,var(--text) 15%);
  border-color:color-mix(in srgb,var(--gold) 45%,var(--line));
}
.stock-action-menu[open] > summary{
  border-color:color-mix(in srgb,var(--gold) 65%,var(--line));
  box-shadow:0 0 0 2px color-mix(in srgb,var(--gold) 12%,transparent);
}
.stock-actions-dots{font-size:.9rem;letter-spacing:1px;line-height:1}
.stock-action-menu-panel{
  position:absolute;
  z-index:80;
  top:calc(100% + 7px);
  right:0;
  width:190px;
  padding:6px;
  border:1px solid var(--line);
  border-radius:12px;
  background:var(--panel);
  box-shadow:0 14px 34px rgba(0,0,0,.22);
}
.stock-action-item{
  width:100%;
  border:0;
  background:transparent;
  color:var(--text);
  display:grid;
  grid-template-columns:24px 1fr;
  align-items:center;
  gap:8px;
  padding:9px 10px;
  border-radius:8px;
  font:inherit;
  font-size:.82rem;
  font-weight:650;
  text-align:left;
  cursor:pointer;
}
.stock-action-item:hover{background:color-mix(in srgb,var(--panel) 84%,var(--text) 16%)}
.stock-action-symbol{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:22px;
  height:22px;
  color:var(--muted);
  font-size:1rem;
  font-weight:800;
}
.stock-action-divider{height:1px;background:var(--line);margin:5px 3px}
.stock-action-item.danger-item{color:var(--danger)}
.stock-action-item.danger-item .stock-action-symbol{color:var(--danger)}
.stock-action-item.danger-item:hover{background:color-mix(in srgb,var(--panel) 90%,var(--danger) 10%)}

@media(min-width:761px){
  .clean-stock-table{overflow:visible}
  .clean-stock-table td[data-label="Ações"]{min-width:118px}
}
@media(max-width:760px){
  .stock-action-menu{width:100%}
  .stock-action-menu > summary{width:100%}
  .stock-action-menu-panel{right:0;width:min(220px,92vw)}
}


/* ===== USE COISAS v4.1.6 - Cadastro alinhado + preços por quantidade ===== */
#productDialog .form-grid > label{
  align-self:start;
}
#productDialog .form-grid > label > input,
#productDialog .form-grid > label > select{
  min-height:46px;
  height:46px;
}
.pricing-block{
  padding-top:2px;
}
.pricing-block h4{
  margin:0 0 10px;
  font-size:.93rem;
}
.pricing-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.pricing-grid label{align-self:start}
.pricing-grid input{min-height:46px;height:46px}
.sale-preview-prices{
  margin-top:5px;
  font-weight:700;
  color:var(--text)!important;
}
@media(max-width:760px){
  .pricing-grid{grid-template-columns:1fr}
}


/* ===== USE COISAS v4.1.7 - Venda por categoria + combos automáticos ===== */
.price-stack{
  display:inline-flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:2px;
  min-width:105px;
  line-height:1.15;
}
.price-stack span{
  display:grid;
  grid-template-columns:34px auto;
  align-items:baseline;
  gap:5px;
  white-space:nowrap;
}
.price-stack small{
  color:var(--muted);
  font-size:.68rem;
  font-weight:650;
  text-align:right;
}
.price-stack strong{
  color:var(--text);
  font-size:.78rem;
  font-weight:700;
  font-variant-numeric:tabular-nums;
}

#saleForm.sale-form-grid > label{
  align-self:start;
}
#saleForm.sale-form-grid > label > select,
#saleForm.sale-form-grid > label > input{
  width:100%;
  min-height:46px;
  height:46px;
  box-sizing:border-box;
}
#saleForm .sale-add-item-wrap{
  display:flex;
  align-items:flex-end;
}
#saleForm .sale-add-item-wrap .btn{
  min-height:46px;
  height:46px;
}
#saleProduct:disabled{
  opacity:.72;
  cursor:not-allowed;
}
.cart-row-v417{
  grid-template-columns:minmax(0,1fr) auto auto auto auto;
}
.cart-product{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:3px;
}
.cart-product strong{
  overflow-wrap:anywhere;
}
.cart-promo{
  display:block;
  color:var(--gold);
  font-size:.74rem;
  font-weight:700;
}
.cart-promo.muted{
  color:var(--muted);
  font-weight:600;
}
.cart-qty,.cart-price,.cart-subtotal{
  white-space:nowrap;
  font-variant-numeric:tabular-nums;
}
.cart-subtotal{font-weight:800}
@media(max-width:760px){
  .price-stack{align-items:flex-start}
  .price-stack span{grid-template-columns:34px auto}
  .cart-row-v417{
    grid-template-columns:1fr auto;
  }
  .cart-row-v417 .cart-product{grid-column:1/-1}
  .cart-row-v417 .cart-price{grid-column:1}
  .cart-row-v417 .cart-subtotal{grid-column:2;text-align:right}
  .cart-row-v417 .remove-btn{grid-column:1/-1}
}

.sale-combo-savings{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:10px 12px;
  margin-top:-2px;
  border:1px solid color-mix(in srgb,var(--gold) 34%,var(--line));
  border-radius:11px;
  background:color-mix(in srgb,var(--panel) 94%,var(--gold) 6%);
  color:var(--muted);
  font-size:.82rem;
}
.sale-combo-savings strong{
  color:var(--gold);
  font-size:.9rem;
  white-space:nowrap;
}


/* ===== USE COISAS v4.1.8 - Seletor pesquisável de produto + resumo objetivo ===== */
.sale-search-select{
  position:relative;
  width:100%;
}
#saleProductSearch{
  width:100%;
  min-height:46px;
  height:46px;
  box-sizing:border-box;
  padding-right:38px;
}
#saleProductSearch:not(:disabled){
  cursor:text;
}
.sale-search-select::after{
  content:"⌄";
  position:absolute;
  top:14px;
  right:14px;
  pointer-events:none;
  color:var(--muted);
  font-weight:800;
}
.sale-search-dropdown{
  position:absolute;
  z-index:80;
  top:calc(100% + 6px);
  left:0;
  right:0;
  max-height:330px;
  overflow:auto;
  border:1px solid var(--line);
  border-radius:12px;
  background:var(--panel);
  box-shadow:0 18px 48px rgba(0,0,0,.32);
  padding:6px;
}
.sale-search-options{display:flex;flex-direction:column;gap:3px}
.sale-search-option{
  appearance:none;
  border:0;
  background:transparent;
  color:var(--text);
  width:100%;
  display:grid;
  grid-template-columns:70px minmax(155px,1.5fr) 78px 130px 92px;
  gap:10px;
  align-items:center;
  text-align:left;
  padding:10px 11px;
  border-radius:9px;
  cursor:pointer;
  font:inherit;
}
.sale-search-option:hover,.sale-search-option:focus{
  background:var(--soft);
  outline:none;
}
.sale-search-option span,.sale-search-option strong,.sale-search-option b{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.sale-search-option strong{font-weight:750}
.sale-search-option b{font-variant-numeric:tabular-nums;text-align:right}
.sale-search-empty{padding:14px 12px;color:var(--muted);font-size:.88rem}
.sale-product-confirm-text strong{font-size:1.02rem}
.sale-product-confirm-text #salePreviewMeta{
  color:var(--text);
  opacity:.88;
  font-weight:650;
}
@media(max-width:760px){
  .sale-search-dropdown{position:fixed;left:12px;right:12px;top:auto;bottom:78px;max-height:52vh}
  .sale-search-option{grid-template-columns:58px minmax(120px,1fr) 65px}
  .sale-search-option span:nth-of-type(3),
  .sale-search-option b{display:none}
}


/* ===== USE COISAS v4.1.9 - Ordem de leitura + preços lado a lado ===== */
.clean-product-table table,
.clean-stock-table table{
  min-width:1180px;
}

/* A foto acompanha o nome, liberando espaço para Código e Volume abrirem a linha. */
.product-main-cell{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-width:0;
}
.product-main-cell .product-photo-cell{
  width:46px;
  height:46px;
  flex:0 0 46px;
  margin:0!important;
}
.product-main-text{
  min-width:0;
  text-align:left;
}
.product-main-text strong,
.product-main-text small{
  display:block;
}

/* Preços agora ficam realmente lado a lado, com separadores discretos. */
.price-inline{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-width:238px;
  white-space:nowrap;
}
.price-inline-item{
  display:inline-flex;
  align-items:baseline;
  gap:4px;
}
.price-inline-item small{
  color:var(--muted);
  font-size:.64rem;
  font-weight:700;
}
.price-inline-item strong{
  color:var(--text);
  font-size:.78rem;
  font-weight:700;
  font-variant-numeric:tabular-nums;
}
.price-divider{
  display:block;
  width:1px;
  height:20px;
  background:var(--line);
  flex:0 0 1px;
}

@media(min-width:761px){
  .clean-product-table th:nth-child(1),
  .clean-stock-table th:nth-child(1){width:78px}
  .clean-product-table th:nth-child(2),
  .clean-stock-table th:nth-child(2){width:92px}
  .clean-product-table th:nth-child(3),
  .clean-stock-table th:nth-child(3){min-width:190px}
  .clean-product-table th:nth-child(4),
  .clean-stock-table th:nth-child(4){min-width:150px}
  .clean-product-table th:nth-child(7),
  .clean-stock-table th:nth-child(7){min-width:250px}
}

@media(max-width:760px){
  .clean-product-table table,
  .clean-stock-table table{min-width:0}
  .product-main-cell{justify-content:flex-end}
  .product-main-text{text-align:right}
  .price-inline{
    min-width:0;
    max-width:100%;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:5px 7px;
  }
  .price-divider{height:16px}
}


/* ===== USE COISAS V5 - tabela em colunas + seletor compacto + zoom de foto ===== */
.clean-product-table table,
.clean-stock-table table{
  min-width:1320px;
}

/* Ordem visual: produto, inspiração, código e volume. */
@media(min-width:761px){
  .clean-product-table th:nth-child(1),
  .clean-stock-table th:nth-child(1){min-width:190px}
  .clean-product-table th:nth-child(2),
  .clean-stock-table th:nth-child(2){min-width:150px}
  .clean-product-table th:nth-child(3),
  .clean-stock-table th:nth-child(3){width:78px}
  .clean-product-table th:nth-child(4),
  .clean-stock-table th:nth-child(4){width:92px}
  .clean-product-table th:nth-child(7),
  .clean-product-table th:nth-child(8),
  .clean-product-table th:nth-child(9),
  .clean-stock-table th:nth-child(7),
  .clean-stock-table th:nth-child(8),
  .clean-stock-table th:nth-child(9){min-width:94px}
}

/* Cada preço ocupa uma coluna própria, igual às colunas de estoque. */
.clean-product-table td[data-label="1 un."],
.clean-product-table td[data-label="Leve 2"],
.clean-product-table td[data-label="Leve 3"],
.clean-stock-table td[data-label="1 un."],
.clean-stock-table td[data-label="Leve 2"],
.clean-stock-table td[data-label="Leve 3"]{
  white-space:nowrap;
  font-variant-numeric:tabular-nums;
}
.clean-product-table .price-value,
.clean-stock-table .price-value{
  font-size:.82rem;
  font-weight:650;
}

/* Seletor da venda: cabeçalho fixo e somente cerca de 5 produtos visíveis. */
.sale-search-dropdown{
  overflow:hidden;
  max-height:none;
  padding:0;
  border-radius:12px;
}
.sale-search-header,
.sale-search-option{
  display:grid;
  grid-template-columns:66px minmax(165px,1.55fr) 76px 132px 88px;
  gap:10px;
  align-items:center;
}
.sale-search-header{
  padding:8px 11px;
  border-bottom:1px solid var(--line);
  background:color-mix(in srgb,var(--panel) 94%,var(--gold) 6%);
  color:var(--muted);
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.025em;
  text-transform:uppercase;
}
.sale-search-header span:last-child{text-align:right}
.sale-search-options{
  display:flex;
  flex-direction:column;
  gap:2px;
  max-height:252px;
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
  padding:5px;
}
.sale-search-option{
  min-height:48px;
  padding:8px 7px;
  border-radius:8px;
  background:transparent;
  border:0;
  color:var(--text);
}
.sale-search-option + .sale-search-option{border-top:1px solid color-mix(in srgb,var(--line) 75%,transparent)}
.sale-search-option:hover,
.sale-search-option:focus{
  background:color-mix(in srgb,var(--panel) 88%,var(--gold) 12%);
}

/* Fotos podem ser abertas para conferência em tamanho maior. */
.product-thumb[data-photo-zoom],
#saleProductPhoto{
  cursor:zoom-in;
}
.product-thumb[data-photo-zoom]:hover,
#saleProductPhoto:hover{
  outline:2px solid color-mix(in srgb,var(--gold) 62%,transparent);
  outline-offset:2px;
}
.product-photo-dialog{
  width:min(760px,calc(100% - 28px));
  max-width:760px;
  border:0;
  padding:0;
  background:transparent;
}
.product-photo-lightbox{
  padding:16px;
  border:1px solid var(--line);
  border-radius:18px;
  background:var(--panel);
  box-shadow:0 24px 70px rgba(0,0,0,.42);
}
.product-photo-lightbox .modal-head{margin-bottom:12px}
.product-photo-lightbox .modal-head h3{margin-bottom:3px}
.product-photo-lightbox .modal-head p{margin:0}
.product-photo-lightbox-stage{
  min-height:260px;
  max-height:72vh;
  display:grid;
  place-items:center;
  overflow:hidden;
  border-radius:14px;
  background:#0b0b0b;
  border:1px solid var(--line);
}
#productPhotoLarge{
  display:block;
  max-width:100%;
  max-height:70vh;
  width:auto;
  height:auto;
  object-fit:contain;
}

@media(max-width:760px){
  .clean-product-table table,
  .clean-stock-table table{min-width:0}
  .sale-search-header{display:none}
  .sale-search-options{max-height:250px}
  .sale-search-option{
    grid-template-columns:58px minmax(120px,1fr) 64px;
    min-height:50px;
  }
  .sale-search-option span:nth-of-type(3),
  .sale-search-option b{display:none}
  .product-photo-lightbox-stage{min-height:220px;max-height:68vh}
  #productPhotoLarge{max-height:66vh}
}


/* ===== USE COISAS V6 - Nova venda mais ampla e seletor sem rolagem horizontal ===== */
@media(min-width:761px){
  #view-sale .form-panel{
    max-width:1180px;
  }

  #saleForm.sale-form-grid{
    grid-template-columns:minmax(300px,.9fr) minmax(560px,1.35fr);
    gap:15px 18px;
  }

  #saleProductDropdown{
    min-width:0;
    width:100%;
    overflow-x:hidden;
  }

  .sale-search-header,
  .sale-search-option{
    width:100%;
    min-width:0;
    grid-template-columns:58px minmax(0,1.55fr) 72px minmax(112px,.9fr) 82px;
    gap:8px;
  }

  .sale-search-header span,
  .sale-search-option span,
  .sale-search-option strong,
  .sale-search-option b{
    min-width:0;
  }

  .sale-search-header span:nth-child(4),
  .sale-search-option span:nth-child(4){
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }

  .sale-search-options{
    overflow-y:auto;
    overflow-x:hidden;
  }
}

@media(min-width:761px) and (max-width:1180px){
  #saleForm.sale-form-grid{
    grid-template-columns:minmax(250px,.8fr) minmax(500px,1.2fr);
  }
  .sale-search-header,
  .sale-search-option{
    grid-template-columns:54px minmax(0,1.5fr) 68px minmax(100px,.85fr) 78px;
    gap:7px;
    font-size:.82rem;
  }
}


/* ===== USE COISAS V7 - foto no carrinho + fluxo contínuo de venda ===== */
.cart-row-v7 .cart-product-block{
  min-width:0;
  display:flex;
  align-items:center;
  gap:10px;
}
.cart-row-v7 .cart-product-block .product-photo-cell{
  width:46px;
  height:46px;
  flex:0 0 46px;
  margin:0;
  border-radius:9px;
}
.cart-row-v7 .cart-product-block .product-thumb-empty{
  font-size:.52rem;
  padding:3px;
}
.cart-row-v7 .cart-product{
  min-width:0;
}
.cart-row-v7 .cart-product strong{
  line-height:1.2;
}
@media(max-width:760px){
  .cart-row-v7 .cart-product-block{
    grid-column:1/-1;
  }
  .cart-row-v7 .cart-product-block .product-photo-cell{
    width:48px;
    height:48px;
    flex:0 0 48px;
  }
  .cart-row-v7 .cart-product{
    grid-column:auto;
  }
}


/* ===== USE COISAS V8 - seletor fechado após adicionar + fotos alinhadas ===== */
@media(min-width:761px){
  .clean-product-table td.product-name-cell,
  .clean-stock-table td.product-name-cell{
    text-align:left;
  }

  .clean-product-table .product-main-cell,
  .clean-stock-table .product-main-cell{
    display:grid;
    grid-template-columns:46px minmax(0,1fr);
    align-items:center;
    justify-content:stretch;
    gap:10px;
    width:100%;
    min-width:0;
  }

  .clean-product-table .product-main-cell .product-photo-cell,
  .clean-stock-table .product-main-cell .product-photo-cell{
    width:46px;
    height:46px;
    min-width:46px;
    margin:0!important;
    justify-self:start;
    align-self:center;
  }

  .clean-product-table .product-main-text,
  .clean-stock-table .product-main-text{
    width:100%;
    min-width:0;
    text-align:left;
  }
}

/* V9 — notas olfativas */
.fragrance-notes-editor{
  margin:2px 0 4px;
  padding:14px;
  border:1px solid var(--border);
  border-radius:14px;
  background:rgba(255,255,255,.018);
}
.fragrance-notes-heading{margin-bottom:10px}
.fragrance-notes-heading h4{margin:0 0 3px}
.fragrance-notes-heading p{margin:0}
.fragrance-notes-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.fragrance-notes-grid label{margin:0}
.fragrance-notes-grid textarea{
  width:100%;
  min-height:76px;
  resize:vertical;
  font:inherit;
  color:var(--text);
  background:var(--panel);
  border:1px solid var(--border);
  border-radius:10px;
  padding:11px 12px;
  line-height:1.35;
}
.fragrance-notes-grid textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 2px rgba(230,184,62,.12)}
.inspiration-cell{vertical-align:middle}
.notes-link{
  display:block;
  margin:5px auto 0;
  padding:0;
  border:0;
  background:transparent;
  color:var(--gold);
  font:inherit;
  font-size:.73rem;
  font-weight:700;
  cursor:pointer;
  text-decoration:none;
}
.notes-link:hover{text-decoration:underline}
.product-notes-dialog{max-width:min(620px,calc(100vw - 28px));width:100%}
.product-notes-modal{padding:4px}
.product-notes-content{display:grid;gap:10px;margin-top:10px}
.note-pyramid-block{
  padding:13px 14px;
  border:1px solid var(--border);
  border-radius:12px;
  background:rgba(255,255,255,.02);
}
.note-pyramid-label{
  display:block;
  margin-bottom:5px;
  color:var(--gold);
  font-size:.78rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.note-pyramid-block p{margin:0;line-height:1.45}
@media(max-width:760px){
  .fragrance-notes-grid{grid-template-columns:1fr}
  .notes-link{margin-left:0;margin-right:0;text-align:left}
}

/* V10 — foto ampliada com estoque e notas olfativas */
.product-detail-dialog{
  width:min(1080px,calc(100% - 28px));
  max-width:1080px;
}
.product-detail-lightbox{padding:18px}
.product-detail-layout{
  display:grid;
  grid-template-columns:minmax(360px,1.15fr) minmax(320px,.85fr);
  gap:18px;
  align-items:start;
}
.product-detail-layout .product-photo-lightbox-stage{
  min-height:430px;
  max-height:72vh;
}
.product-detail-info{
  display:grid;
  gap:12px;
  min-width:0;
  max-height:72vh;
  overflow:auto;
  padding-right:3px;
}
.product-detail-summary,
.product-detail-stock,
.product-detail-notes{
  border:1px solid var(--border);
  border-radius:14px;
  background:rgba(255,255,255,.02);
  padding:14px;
}
.product-detail-summary{display:grid;gap:10px}
.product-detail-summary > div{
  display:grid;
  gap:3px;
  padding-bottom:9px;
  border-bottom:1px solid var(--border);
}
.product-detail-summary > div:last-child{padding-bottom:0;border-bottom:0}
.product-detail-summary span,
.product-detail-stock-row span,
.product-detail-stock-total span{
  color:var(--muted);
  font-size:.78rem;
}
.product-detail-summary strong{
  color:var(--text);
  font-size:.93rem;
  line-height:1.35;
}
.product-detail-section-title{
  margin-bottom:10px;
  color:var(--text);
  font-weight:800;
  font-size:.93rem;
}
.product-detail-stock-total,
.product-detail-stock-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.product-detail-stock-total{
  padding:10px 0;
  border-bottom:1px solid var(--border);
}
.product-detail-stock-total strong{color:var(--gold);font-size:1.02rem}
.product-detail-stock-locations{display:grid}
.product-detail-stock-row{
  padding:8px 0;
  border-bottom:1px solid color-mix(in srgb,var(--border) 72%,transparent);
}
.product-detail-stock-row:last-child{border-bottom:0;padding-bottom:0}
.product-detail-note-block{
  padding:10px 0;
  border-bottom:1px solid var(--border);
}
.product-detail-note-block:last-child{border-bottom:0;padding-bottom:0}
.product-detail-note-block > span{
  display:block;
  margin-bottom:4px;
  color:var(--gold);
  font-size:.76rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.product-detail-note-block p{
  margin:0;
  color:var(--text);
  line-height:1.48;
}
@media(max-width:850px){
  .product-detail-layout{grid-template-columns:1fr}
  .product-detail-layout .product-photo-lightbox-stage{min-height:260px;max-height:52vh}
  .product-detail-info{max-height:none;overflow:visible}
}

/* ===== USE COISAS V11 - ficha ampliada do produto + notas sempre visíveis ===== */
.product-detail-dialog{
  width:min(1240px,calc(100% - 24px));
  max-width:1240px;
  max-height:94vh;
}
.product-detail-lightbox{
  max-height:94vh;
  overflow:auto;
  padding:20px;
}
.product-detail-layout{
  grid-template-columns:minmax(520px,1.25fr) minmax(360px,.75fr);
  gap:20px;
}
.product-detail-layout .product-photo-lightbox-stage{
  min-height:520px;
  max-height:66vh;
}
#productPhotoLarge{
  max-height:64vh;
}
.product-detail-info{
  max-height:none;
  overflow:visible;
}
.product-detail-notes-wide{
  grid-column:1 / -1;
  margin-top:0;
}
.product-detail-notes-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.product-detail-notes-grid .product-detail-note-block{
  border:1px solid var(--border);
  border-radius:12px;
  padding:12px;
  background:rgba(255,255,255,.018);
}
.product-detail-notes-grid .product-detail-note-block:last-child{
  padding-bottom:12px;
}
.product-detail-notes-grid .product-detail-note-block p{
  min-height:44px;
}
@media(max-width:980px){
  .product-detail-dialog{width:min(920px,calc(100% - 18px))}
  .product-detail-layout{grid-template-columns:1fr}
  .product-detail-layout .product-photo-lightbox-stage{min-height:340px;max-height:52vh}
  #productPhotoLarge{max-height:50vh}
  .product-detail-notes-wide{grid-column:auto}
  .product-detail-notes-grid{grid-template-columns:1fr}
}


/* ===== USE COISAS V13 - apenas organização vertical dos preços na ficha ===== */
.product-detail-prices{
  display:grid;
  gap:6px;
  margin-top:2px;
}
.product-detail-price-line{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  line-height:1.35;
}
.product-detail-price-line span{
  color:var(--muted);
  font-size:.82rem;
}
.product-detail-price-line strong{
  color:var(--text);
  font-size:.93rem;
  white-space:nowrap;
}
.product-detail-price-line:first-child strong{color:var(--gold)}
