:root {
  --bg: #0b141a;
  --bg-soft: #101c23;
  --surface: #15232c;
  --surface-2: #1c2d37;
  --surface-3: #243740;
  --text: #f2f7f8;
  --muted: #9fb1b8;
  --muted-2: #789099;
  --green: #25d366;
  --green-dark: #128c7e;
  --teal: #18b8a4;
  --teal-dark: #075e54;
  --mint: #73f2c0;
  --icon: #73f2c0;
  --button-text: #07120f;
  --icon-contrast: #07120f;
  --bg-rgb: 11 20 26;
  --bg-soft-rgb: 16 28 35;
  --surface-rgb: 21 35 44;
  --surface-2-rgb: 28 45 55;
  --text-rgb: 242 247 248;
  --button-rgb: 37 211 102;
  --icon-rgb: 115 242 192;
  --danger: #ff6b6b;
  --warning: #f7c65d;
  --border: rgba(159, 177, 184, .13);
  --shadow: 0 24px 80px rgba(0, 0, 0, .24);
  --radius-xl: 28px;
  --radius-lg: 20px;
  --radius-md: 14px;
}

* { box-sizing: border-box; }
html { min-height: 100%; background: var(--bg); }
body {
  margin: 0;
  min-height: 100vh;
  color: var(--text);
  background:
    radial-gradient(circle at 10% 0%, rgb(var(--button-rgb) / .12), transparent 30rem),
    radial-gradient(circle at 90% 10%, rgb(var(--button-rgb) / .08), transparent 28rem),
    var(--bg);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  -webkit-font-smoothing: antialiased;
}

a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
code {
  padding: .15rem .45rem;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--bg-soft);
  color: var(--mint);
}

.app-shell { width: min(1240px, calc(100% - 32px)); margin: 0 auto; }
.topbar {
  min-height: 86px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid var(--border);
}
.brand { display: inline-flex; align-items: center; gap: 12px; }
.brand-mark {
  width: 46px; height: 46px; display: grid; place-items: center;
  border-radius: 15px;
  color: #07120f;
  font-size: 1.2rem; font-weight: 900;
  background: linear-gradient(145deg, var(--mint), var(--green));
  box-shadow: 0 12px 35px rgb(var(--button-rgb) / .18);
}
.brand-copy { display: grid; gap: 2px; }
.brand-copy strong { font-size: 1.15rem; letter-spacing: .04em; }
.brand-copy small { color: var(--muted); font-size: .78rem; }
.version-pill, .health-badge {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 32px; padding: 0 12px;
  border: 1px solid var(--border); border-radius: 999px;
  background: rgb(var(--surface-rgb) / .72); color: var(--muted);
  font-weight: 700; font-size: .78rem;
}
.health-badge.is-ok { color: var(--mint); border-color: rgb(var(--icon-rgb) / .25); }
.health-badge.is-warning { color: var(--warning); border-color: rgba(247,198,93,.25); }

.main-content { padding: 56px 0 72px; }
.surface-card {
  border: 1px solid var(--border);
  border-radius: var(--radius-xl);
  background: linear-gradient(160deg, rgb(var(--surface-2-rgb) / .88), rgb(var(--surface-rgb) / .78));
  box-shadow: var(--shadow);
  backdrop-filter: blur(14px);
}
.hero-grid { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(320px, .75fr); gap: 22px; align-items: stretch; }
.hero-card { padding: clamp(28px, 5vw, 58px); overflow: hidden; position: relative; }
.hero-card::after {
  content: ""; position: absolute; width: 320px; height: 320px; right: -130px; bottom: -170px;
  border-radius: 50%; background: rgb(var(--button-rgb) / .08); filter: blur(3px); pointer-events: none;
}
.eyebrow { color: var(--mint); font-size: .78rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.status-dot { display: inline-block; width: 8px; height: 8px; margin-right: 7px; border-radius: 50%; background: var(--green); box-shadow: 0 0 0 5px rgb(var(--button-rgb) / .10); }
h1, h2, h3, p { margin-top: 0; }
h1 { max-width: 760px; margin: 18px 0 18px; font-size: clamp(2.35rem, 6vw, 4.8rem); line-height: .98; letter-spacing: -.055em; }
h1 span { color: var(--mint); }
h2 { margin-bottom: 10px; font-size: clamp(1.45rem, 3vw, 2rem); letter-spacing: -.035em; }
h3 { margin-bottom: 8px; font-size: 1.02rem; }
.hero-text, .section-heading p, .feature-card p, .next-step p, .error-page p { color: var(--muted); line-height: 1.7; }
.hero-text { max-width: 760px; font-size: 1.02rem; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.btn {
  min-height: 46px; display: inline-flex; align-items: center; justify-content: center;
  padding: 0 18px; border: 1px solid transparent; border-radius: 14px;
  cursor: pointer; font-weight: 850; transition: transform .18s ease, border-color .18s ease, background .18s ease;
}
.btn:hover { transform: translateY(-1px); }
.btn-primary { background: linear-gradient(135deg, var(--green), var(--teal)); color: var(--button-text); }
.btn-secondary { background: var(--surface-2); border-color: var(--border); color: var(--text); }

.status-card { padding: 28px; }
.card-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; margin-bottom: 20px; }
.card-heading h2 { margin-top: 7px; margin-bottom: 0; }
.status-list { display: grid; gap: 2px; }
.status-row { display: flex; justify-content: space-between; gap: 16px; padding: 16px 0; border-bottom: 1px solid var(--border); }
.status-row:last-child { border-bottom: 0; }
.status-row span { color: var(--muted); }
.status-row strong { text-align: right; }

.section-block { padding: 70px 0 26px; }
.section-heading { display: grid; grid-template-columns: 1fr minmax(280px, .72fr); gap: 30px; align-items: end; margin-bottom: 24px; }
.section-heading h2 { margin-top: 8px; margin-bottom: 0; }
.section-heading p { margin-bottom: 0; }
.feature-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.feature-card {
  min-height: 215px; padding: 24px; border: 1px solid var(--border); border-radius: var(--radius-lg);
  background: rgb(var(--bg-soft-rgb) / .72); transition: transform .2s ease, border-color .2s ease, background .2s ease;
}
.feature-card:hover { transform: translateY(-3px); border-color: rgb(var(--icon-rgb) / .24); background: rgb(var(--surface-rgb) / .92); }
.feature-icon { display: inline-grid; place-items: center; width: 42px; height: 42px; margin-bottom: 28px; border-radius: 13px; background: rgb(var(--button-rgb) / .10); color: var(--mint); font-weight: 900; font-size: .8rem; }
.feature-card p { margin-bottom: 0; font-size: .91rem; }

.next-step { margin-top: 28px; padding: 30px; display: flex; align-items: center; justify-content: space-between; gap: 30px; }
.next-step h2 { margin-top: 8px; }
.next-step p { max-width: 760px; margin-bottom: 0; }
.step-number { flex: 0 0 auto; font-size: clamp(3rem, 8vw, 6rem); font-weight: 950; letter-spacing: -.08em; color: rgb(var(--icon-rgb) / .16); }

.error-page { max-width: 760px; margin: 7vh auto; padding: clamp(28px, 5vw, 52px); text-align: center; }
.error-code { display: block; color: var(--mint); font-size: clamp(4rem, 12vw, 8rem); font-weight: 950; letter-spacing: -.08em; line-height: 1; }
.error-id { margin: 18px 0 24px; color: var(--muted); }

.footer { min-height: 74px; padding: 20px 0; display: flex; align-items: center; justify-content: space-between; gap: 20px; border-top: 1px solid var(--border); color: var(--muted-2); font-size: .82rem; }
.toast-region { position: fixed; right: 18px; bottom: 18px; z-index: 100; display: grid; gap: 10px; }
.toast { max-width: min(360px, calc(100vw - 36px)); padding: 14px 16px; border: 1px solid rgb(var(--icon-rgb) / .22); border-radius: 14px; background: var(--surface-2); color: var(--text); box-shadow: var(--shadow); animation: toast-in .18s ease-out; }
@keyframes toast-in { from { opacity: 0; transform: translateY(8px); } }

@media (max-width: 900px) {
  .hero-grid, .section-heading { grid-template-columns: 1fr; }
  .feature-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 620px) {
  .app-shell { width: min(100% - 22px, 1240px); }
  .topbar { min-height: 74px; }
  .brand-copy small { display: none; }
  .main-content { padding-top: 26px; }
  .hero-grid { gap: 14px; }
  .hero-card, .status-card, .next-step { border-radius: 20px; }
  .hero-card { padding: 27px 22px; }
  h1 { font-size: clamp(2.25rem, 13vw, 3.7rem); }
  .status-card { padding: 22px; }
  .feature-grid { grid-template-columns: 1fr; }
  .feature-card { min-height: 0; }
  .next-step { align-items: flex-start; }
  .step-number { display: none; }
  .footer { flex-direction: column; align-items: flex-start; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
}

/* ===== SGE 0.2.0 · Multi-tenant e administração ===== */
.public-nav { display:flex; align-items:center; gap:14px; }
.text-link { color:var(--muted); font-weight:800; font-size:.9rem; }
.text-link:hover { color:var(--mint); }
.btn-sm { min-height:38px; padding:0 14px; border-radius:12px; font-size:.84rem; }
.btn-full { width:100%; }
.btn-danger { background:rgba(255,107,107,.12); border-color:rgba(255,107,107,.28); color:var(--danger); }
.btn-warning { background:rgba(247,198,93,.12); border-color:rgba(247,198,93,.28); color:var(--warning); }
.top-notice { margin-top:16px; }
.notice { padding:14px 16px; margin-bottom:18px; border:1px solid var(--border); border-radius:14px; line-height:1.5; }
.notice-success { color:var(--mint); background:rgb(var(--button-rgb) / .08); border-color:rgb(var(--button-rgb) / .22); }
.notice-danger { color:#ffc0c0; background:rgba(255,107,107,.08); border-color:rgba(255,107,107,.22); }
.notice-warning { color:var(--warning); background:rgba(247,198,93,.08); border-color:rgba(247,198,93,.22); }
.landing-hero .hero-card { min-height:520px; display:flex; flex-direction:column; justify-content:center; }
.trust-row { display:flex; flex-wrap:wrap; gap:10px 18px; margin-top:28px; color:var(--muted); font-size:.84rem; font-weight:700; }

.auth-wrap { display:grid; grid-template-columns:minmax(300px,.8fr) minmax(520px,1.2fr); gap:36px; align-items:start; max-width:1120px; margin:0 auto; }
.auth-intro { position:sticky; top:36px; padding:38px 4px; }
.auth-intro h1 { font-size:clamp(2.5rem,5vw,4.6rem); }
.auth-intro p { max-width:520px; color:var(--muted); line-height:1.7; }
.auth-steps { display:grid; gap:12px; margin-top:34px; }
.auth-steps div { display:flex; align-items:center; gap:12px; color:var(--muted); font-weight:750; }
.auth-steps b { width:34px; height:34px; display:grid; place-items:center; border-radius:10px; background:var(--surface-2); color:var(--mint); border:1px solid var(--border); }
.auth-center { min-height:calc(100vh - 240px); display:grid; place-items:center; padding:30px 0; }
.form-card { padding:clamp(24px,4vw,38px); }
.form-card.wide { max-width:1020px; }
.form-heading { margin-bottom:30px; }
.form-heading h2 { margin-top:8px; }
.form-heading p,.form-foot { color:var(--muted); }
.form-section { padding:24px 0; border-top:1px solid var(--border); }
.form-section:first-of-type { border-top:0; padding-top:0; }
.form-section h3 { margin-bottom:18px; }
.field-grid { display:grid; gap:16px; }
.field-grid.two { grid-template-columns:repeat(2,minmax(0,1fr)); }
.field-grid.three { grid-template-columns:repeat(3,minmax(0,1fr)); }
.field { display:grid; gap:8px; margin-bottom:16px; }
.field > span { color:var(--muted); font-size:.82rem; font-weight:800; }
.field input,.field select,.field textarea,.filter-bar select,.search-box input { width:100%; min-height:46px; padding:0 14px; color:var(--text); background:var(--bg-soft); border:1px solid var(--border); border-radius:12px; outline:none; transition:border-color .18s ease,box-shadow .18s ease; }
.field input:focus,.field select:focus,.field textarea:focus,.filter-bar select:focus,.search-box input:focus { border-color:rgb(var(--icon-rgb) / .42); box-shadow:0 0 0 3px rgb(var(--icon-rgb) / .06); }
.field input:disabled { opacity:.6; cursor:not-allowed; }
.field small { color:var(--muted-2); line-height:1.45; }
.field-error { color:var(--danger)!important; font-weight:700; }
.field-error.standalone { display:block; margin:-8px 0 16px; }
.input-prefix { display:flex; align-items:center; min-height:46px; overflow:hidden; background:var(--bg-soft); border:1px solid var(--border); border-radius:12px; }
.input-prefix > span { padding-left:13px; color:var(--muted-2); font-size:.78rem; white-space:nowrap; }
.input-prefix input { min-width:0; border:0; background:transparent; box-shadow:none!important; }
.password-field { display:grid; grid-template-columns:1fr auto; align-items:center; border:1px solid var(--border); border-radius:12px; background:var(--bg-soft); }
.password-field input { border:0; background:transparent; box-shadow:none!important; }
.password-field button { height:100%; padding:0 13px; border:0; background:transparent; color:var(--mint); cursor:pointer; font-weight:800; font-size:.78rem; }
.check-field { display:flex; align-items:flex-start; gap:10px; color:var(--muted); font-size:.84rem; line-height:1.5; }
.check-field input { margin-top:3px; accent-color:var(--green); }
.form-actions { display:flex; justify-content:flex-end; gap:12px; padding-top:22px; border-top:1px solid var(--border); }
.login-card { width:min(100%,520px); padding:clamp(26px,5vw,42px); }
.setup-card { width:min(100%,600px); }
.login-brand { display:flex; gap:18px; align-items:center; margin-bottom:28px; }
.login-brand h1 { margin:6px 0 5px; font-size:clamp(1.7rem,5vw,2.5rem); line-height:1.05; }
.login-brand p { margin:0; color:var(--muted); }
.brand-mark.large { width:62px; height:62px; border-radius:20px; font-size:1.5rem; flex:0 0 auto; }
.tenant-logo { display:grid; place-items:center; width:46px; height:46px; overflow:hidden; border-radius:14px; background:var(--surface-3); border:1px solid var(--border); flex:0 0 auto; }
.tenant-logo.large { width:66px; height:66px; border-radius:20px; }
.tenant-logo img { width:100%; height:100%; object-fit:cover; }
.login-foot { display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap; margin-top:22px; color:var(--muted-2); font-size:.78rem; }
.login-foot a { color:var(--mint); font-weight:800; }
.blocked-card { width:min(100%,600px); padding:44px; text-align:center; }
.blocked-card h1 { margin:12px 0; font-size:2.3rem; }
.blocked-card p { color:var(--muted); }
.blocked-icon { width:64px; height:64px; margin:0 auto 22px; display:grid; place-items:center; border-radius:20px; background:rgba(247,198,93,.1); border:1px solid rgba(247,198,93,.25); color:var(--warning); font-size:2rem; font-weight:900; }

.dashboard-body { overflow-x:hidden; }
.dashboard-shell { min-height:100vh; display:grid; grid-template-columns:270px minmax(0,1fr); }
.sidebar { position:sticky; top:0; height:100vh; padding:22px 16px; background:rgb(var(--bg-rgb) / .94); border-right:1px solid var(--border); display:flex; flex-direction:column; z-index:40; backdrop-filter:blur(16px); }
.sidebar-brand { padding:8px 10px 24px; border-bottom:1px solid var(--border); }
.side-nav { display:grid; gap:6px; padding:22px 0; }
.side-link { min-height:46px; padding:0 12px; display:flex; align-items:center; gap:12px; border:1px solid transparent; border-radius:13px; color:var(--muted); background:transparent; width:100%; text-align:left; cursor:pointer; font-weight:780; font-size:.9rem; }
.side-link span { width:22px; text-align:center; color:var(--icon); }
.side-link em { margin-left:auto; font-size:.65rem; font-style:normal; color:var(--muted-2); }
.side-link:hover,.side-link.active { color:var(--text); background:var(--surface); border-color:var(--border); }
.side-link.active span { color:var(--icon); }
.side-link.disabled { opacity:.5; cursor:not-allowed; }
.sidebar-footer { margin-top:auto; padding-top:16px; border-top:1px solid var(--border); }
.user-chip { display:flex; gap:10px; align-items:center; padding:8px 10px 15px; }
.user-chip > div { min-width:0; display:grid; gap:2px; }
.user-chip strong,.user-chip small { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.user-chip strong { font-size:.84rem; }
.user-chip small { color:var(--muted-2); font-size:.7rem; }
.avatar,.mini-avatar { display:grid; place-items:center; flex:0 0 auto; border-radius:12px; background:var(--surface-3); color:var(--mint); font-weight:900; }
.avatar { width:38px; height:38px; }
.mini-avatar { width:34px; height:34px; }
.logout-link { color:var(--muted-2); }
.dashboard-main { min-width:0; }
.dashboard-topbar { min-height:72px; padding:12px clamp(18px,3vw,34px); display:flex; align-items:center; gap:14px; position:sticky; top:0; z-index:30; background:rgb(var(--bg-rgb) / .82); backdrop-filter:blur(16px); border-bottom:1px solid var(--border); }
.dashboard-topbar > div { display:grid; gap:2px; }
.dashboard-topbar small { color:var(--muted-2); font-size:.72rem; }
.dashboard-topbar .version-pill,.dashboard-topbar .health-badge { margin-left:auto; }
.menu-toggle { display:none; width:42px; height:42px; border:1px solid var(--border); border-radius:12px; background:var(--surface); color:var(--text); cursor:pointer; }
.dashboard-content { padding:clamp(22px,4vw,42px); max-width:1480px; margin:0 auto; }
.sidebar-backdrop { display:none; }
.support-banner { position:fixed; top:0; left:0; right:0; z-index:80; min-height:42px; padding:7px 20px; display:flex; align-items:center; justify-content:center; gap:20px; background:var(--warning); color:#211b08; font-size:.8rem; font-weight:750; }
.support-banner form { margin:0; }
.support-banner button { border:1px solid rgba(0,0,0,.22); background:rgba(255,255,255,.18); border-radius:9px; padding:6px 10px; color:inherit; cursor:pointer; font-weight:900; }
.dashboard-shell.has-support-banner { padding-top:42px; }
.dashboard-shell.has-support-banner .sidebar { top:42px; height:calc(100vh - 42px); }
.dashboard-shell.has-support-banner .dashboard-topbar { top:42px; }

.page-head { display:flex; justify-content:space-between; gap:24px; align-items:flex-end; margin-bottom:26px; }
.page-head h1 { margin:7px 0 8px; font-size:clamp(2rem,5vw,3.4rem); }
.page-head p { margin:0; color:var(--muted); }
.tenant-chip { display:inline-flex; align-items:center; min-height:36px; padding:0 12px; border:1px solid var(--border); border-radius:999px; background:var(--surface); color:var(--mint); font-size:.78rem; font-weight:850; }
.welcome-card { min-height:230px; padding:clamp(28px,5vw,48px); display:flex; align-items:center; justify-content:space-between; gap:30px; }
.welcome-card h1 { margin:8px 0 10px; font-size:clamp(2.2rem,5vw,4rem); }
.welcome-card p { color:var(--muted); max-width:720px; }
.metric-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin:18px 0; }
.metric-card { padding:20px; min-height:130px; border:1px solid var(--border); border-radius:18px; background:rgb(var(--surface-rgb) / .74); display:grid; align-content:center; gap:6px; }
.metric-card span,.metric-card small { color:var(--muted); }
.metric-card span { font-size:.76rem; font-weight:850; text-transform:uppercase; letter-spacing:.06em; }
.metric-card strong { font-size:1.65rem; letter-spacing:-.04em; }
.metric-card small { font-size:.76rem; }
.progress-card,.table-card { padding:24px; }
.section-heading.compact { padding:0; margin-bottom:16px; }
.setup-list { display:grid; }
.setup-item { min-height:76px; display:flex; align-items:center; gap:14px; padding:13px 0; border-top:1px solid var(--border); }
.setup-item b { width:36px; height:36px; flex:0 0 auto; display:grid; place-items:center; border-radius:11px; border:1px solid var(--border); color:var(--muted); }
.setup-item.done b { color:#07130f; background:var(--mint); border-color:transparent; }
.setup-item > div { display:grid; gap:4px; }
.setup-item span { color:var(--muted); font-size:.8rem; }
.setup-item .btn { margin-left:auto; }
.setup-item.muted { opacity:.55; }
.logo-editor { display:flex; align-items:center; gap:20px; padding:0 0 28px; }
.logo-preview { width:88px; height:88px; flex:0 0 auto; display:grid; place-items:center; overflow:hidden; border-radius:22px; border:1px solid var(--border); background:var(--surface-3); color:var(--mint); font-size:2rem; font-weight:900; }
.logo-preview img { width:100%; height:100%; object-fit:cover; }
.logo-editor h3 { margin-bottom:5px; }
.logo-editor p { margin-bottom:12px; color:var(--muted); font-size:.82rem; }
.file-button { cursor:pointer; }
.file-name { margin-left:10px; color:var(--muted-2); font-size:.74rem; }
.filter-bar { display:grid; grid-template-columns:minmax(220px,1fr) 180px auto; gap:12px; padding:14px; margin-bottom:16px; }
.search-box { display:flex; align-items:center; gap:8px; padding-left:12px; background:var(--bg-soft); border:1px solid var(--border); border-radius:12px; }
.search-box span { color:var(--icon); }
.search-box input { border:0; background:transparent; box-shadow:none!important; }
.table-card { overflow:hidden; }
.table-card-head { display:flex; align-items:center; justify-content:space-between; gap:16px; padding-bottom:18px; }
.table-card-head h2 { margin:6px 0 0; }
.responsive-table { overflow:auto; margin:0 -24px -24px; }
table { width:100%; border-collapse:collapse; min-width:760px; }
th,td { padding:15px 18px; text-align:left; border-top:1px solid var(--border); font-size:.84rem; }
th { color:var(--muted-2); font-size:.72rem; text-transform:uppercase; letter-spacing:.05em; }
td { color:var(--muted); }
td strong { color:var(--text); }
.table-action { color:var(--mint); font-weight:850; white-space:nowrap; }
.table-entity { display:flex; align-items:center; gap:10px; }
.table-entity > div { display:grid; gap:3px; }
.table-entity small { color:var(--muted-2); }
.empty-cell { text-align:center; padding:42px; }
.row-muted { opacity:.58; }
.status-tag { display:inline-flex; min-height:27px; align-items:center; padding:0 9px; border-radius:999px; font-size:.68rem; font-weight:900; border:1px solid var(--border); }
.status-tag.ok { color:var(--mint); background:rgb(var(--button-rgb) / .07); border-color:rgb(var(--button-rgb) / .2); }
.status-tag.warn { color:var(--warning); background:rgba(247,198,93,.07); border-color:rgba(247,198,93,.2); }
.status-tag.danger { color:var(--danger); background:rgba(255,107,107,.07); border-color:rgba(255,107,107,.2); }
.status-tag.neutral { color:var(--muted); }
.readonly-card { display:grid; grid-template-columns:1fr 1fr; gap:12px; padding:16px; border:1px solid var(--border); border-radius:14px; background:var(--bg-soft); }
.readonly-card div { display:grid; gap:3px; }
.readonly-card span,.readonly-card small { color:var(--muted-2); font-size:.75rem; }
.readonly-card small { grid-column:1/-1; }
.compact-field { max-width:360px; }
.management-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin-top:18px; }
.action-card { padding:22px; }
.action-card p { color:var(--muted); line-height:1.55; font-size:.84rem; min-height:52px; }
.danger-zone { border-color:rgba(255,107,107,.18); }
.plans-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.plan-card { padding:22px; }
.plan-title { display:flex; gap:7px; min-height:34px; }
.toggle-row { display:flex; flex-wrap:wrap; gap:18px; margin:8px 0 18px; }
.new-plan { border-style:dashed; }

@media (max-width:1080px) {
  .dashboard-shell { grid-template-columns:230px minmax(0,1fr); }
  .metric-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .management-grid,.plans-grid { grid-template-columns:1fr 1fr; }
  .auth-wrap { grid-template-columns:1fr; max-width:760px; }
  .auth-intro { position:static; padding-bottom:0; }
  .auth-intro h1 { max-width:650px; }
}
@media (max-width:820px) {
  .dashboard-shell { display:block; }
  .sidebar { position:fixed; left:0; top:0; width:min(290px,86vw); transform:translateX(-105%); transition:transform .2s ease; box-shadow:var(--shadow); }
  body.sidebar-open .sidebar { transform:translateX(0); }
  .sidebar-backdrop { position:fixed; inset:0; z-index:35; background:rgba(0,0,0,.5); }
  body.sidebar-open .sidebar-backdrop { display:block; }
  .menu-toggle { display:grid; place-items:center; }
  .dashboard-shell.has-support-banner .sidebar { top:42px; }
  .page-head { align-items:flex-start; flex-direction:column; }
  .filter-bar { grid-template-columns:1fr 150px; }
  .filter-bar .btn { grid-column:1/-1; }
  .management-grid,.plans-grid { grid-template-columns:1fr; }
}
@media (max-width:620px) {
  .public-nav .text-link { display:none; }
  .field-grid.two,.field-grid.three,.metric-grid { grid-template-columns:1fr; }
  .input-prefix > span { display:none; }
  .form-card { border-radius:20px; }
  .auth-center { padding:0; min-height:auto; }
  .login-card { border-radius:20px; }
  .login-brand { align-items:flex-start; }
  .dashboard-content { padding:18px 12px 28px; }
  .dashboard-topbar { padding:10px 12px; }
  .dashboard-topbar .version-pill { display:none; }
  .welcome-card { align-items:flex-start; flex-direction:column; border-radius:20px; }
  .welcome-card h1 { font-size:2.4rem; }
  .progress-card,.table-card { border-radius:18px; padding:18px; }
  .responsive-table { margin:0 -18px -18px; }
  .filter-bar { grid-template-columns:1fr; border-radius:18px; }
  .filter-bar .btn { grid-column:auto; }
  .readonly-card { grid-template-columns:1fr; }
  .readonly-card small { grid-column:auto; }
  .form-actions { flex-direction:column-reverse; }
  .form-actions .btn { width:100%; }
  .support-banner { justify-content:space-between; padding:6px 10px; }
  .support-banner span { max-width:62%; }
  .logo-editor { align-items:flex-start; }
  .file-name { display:block; margin:8px 0 0; }
}

/* ===== SGE 0.3.0 · Usuários, perfis, permissões e auditoria ===== */
.nav-caption { margin:18px 12px 7px; color:var(--muted-2); font-size:.68rem; font-weight:900; letter-spacing:.14em; text-transform:uppercase; }
.page-actions { display:flex; gap:10px; flex-wrap:wrap; align-items:center; justify-content:flex-end; }
.compact-metrics { margin-bottom:20px; }
.metric-card.span-2 { grid-column:span 2; }
.usage-head { display:flex; justify-content:space-between; align-items:center; gap:16px; }
.usage-head strong { font-size:1.05rem; }
.progress-track { height:9px; margin:14px 0 10px; overflow:hidden; border-radius:999px; background:var(--bg-soft); border:1px solid var(--border); }
.progress-track i { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--green-dark),var(--mint)); }
.table-person { display:flex; align-items:center; gap:11px; min-width:230px; }
.table-person > div { display:grid; gap:3px; }
.table-person small,.block-small { display:block; color:var(--muted-2); font-size:.75rem; margin-top:3px; }
.role-pill { display:inline-flex; align-items:center; padding:6px 10px; border-radius:999px; background:rgb(var(--button-rgb) / .09); border:1px solid rgb(var(--button-rgb) / .18); color:#a6f6e8; font-size:.76rem; font-weight:850; }
.muted-text { color:var(--muted-2); font-size:.78rem; }
.as-button { border:0; background:transparent; cursor:pointer; padding:0; }
.trash-card { margin-top:18px; padding:0; overflow:hidden; }
.trash-card summary { display:flex; justify-content:space-between; align-items:center; padding:19px 22px; cursor:pointer; list-style:none; }
.trash-card summary::-webkit-details-marker { display:none; }
.trash-card summary > span:first-child { display:grid; gap:3px; }
.trash-card summary small { color:var(--muted-2); font-weight:600; }
.trash-card[open] summary { border-bottom:1px solid var(--border); }
.danger-zone { margin-top:20px; display:flex; align-items:center; justify-content:space-between; gap:24px; padding:22px 24px; border:1px solid rgba(255,107,107,.2); border-radius:18px; background:rgba(255,107,107,.05); }
.danger-zone p { margin:5px 0 0; color:var(--muted); }

.role-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.role-card { padding:22px; display:grid; gap:18px; }
.role-card-top { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; }
.role-card-top > div { display:flex; align-items:center; gap:12px; }
.role-card h2 { margin:0; font-size:1.1rem; }
.role-card p { margin:0; color:var(--muted); line-height:1.55; min-height:48px; }
.role-icon { width:40px; height:40px; display:grid; place-items:center; border-radius:12px; border:1px solid var(--border); background:var(--surface-2); color:var(--icon); font-weight:950; }
.role-card-foot { display:flex; justify-content:space-between; align-items:center; gap:12px; padding-top:15px; border-top:1px solid var(--border); color:var(--muted); font-size:.8rem; }
.status-tag.custom { color:#b9d9ff; border-color:rgba(95,165,255,.24); background:rgba(95,165,255,.08); }
.info-strip { margin-top:18px; padding:20px 22px; display:flex; gap:15px; align-items:flex-start; }
.info-strip p { margin:5px 0 0; color:var(--muted); line-height:1.55; }
.info-icon { width:34px; height:34px; flex:0 0 auto; display:grid; place-items:center; border-radius:11px; background:rgb(var(--icon-rgb) / .09); border:1px solid rgb(var(--icon-rgb) / .2); color:var(--icon); font-weight:950; }
.permission-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin:28px 0 14px; padding-top:24px; border-top:1px solid var(--border); }
.permission-heading h3 { margin:0 0 5px; }
.permission-heading p { margin:0; color:var(--muted); max-width:720px; line-height:1.5; }
.permission-tools { display:flex; gap:10px; flex:0 0 auto; }
.text-button,.module-toggle { border:0; background:transparent; color:var(--mint); font:inherit; font-size:.78rem; font-weight:850; cursor:pointer; padding:5px; }
.module-toggle { color:var(--muted); }
.module-toggle:disabled { opacity:.35; cursor:not-allowed; }
.permission-groups { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.permission-group { overflow:hidden; border:1px solid var(--border); border-radius:16px; background:rgb(var(--bg-rgb) / .26); }
.permission-group > header { display:flex; justify-content:space-between; align-items:center; padding:14px 16px; border-bottom:1px solid var(--border); background:rgb(var(--surface-2-rgb) / .42); }
.permission-list { display:grid; }
.permission-item { display:flex; align-items:flex-start; gap:12px; padding:14px 16px; cursor:pointer; border-top:1px solid rgba(255,255,255,.035); }
.permission-item:first-child { border-top:0; }
.permission-item:hover { background:rgb(var(--icon-rgb) / .025); }
.permission-item input { margin-top:4px; accent-color:var(--green); transform:scale(1.06); }
.permission-item span { display:grid; gap:3px; }
.permission-item strong { font-size:.84rem; }
.permission-item small { color:var(--muted-2); line-height:1.4; }

.filter-bar.audit-filter { display:grid; grid-template-columns:1.3fr 1fr .8fr .8fr auto; align-items:end; gap:12px; padding:16px; margin-bottom:18px; }
.filter-bar.audit-filter label { display:grid; gap:7px; }
.filter-bar.audit-filter label > span { color:var(--muted); font-size:.73rem; font-weight:850; }
.filter-bar.audit-filter input,.filter-bar.audit-filter select { width:100%; min-height:42px; padding:0 12px; color:var(--text); background:var(--bg-soft); border:1px solid var(--border); border-radius:11px; }
.audit-filter.admin-audit-filter { grid-template-columns:1fr 1.2fr auto; }
.audit-action { font-weight:800; color:#c8f9e6; }
.login-help { margin-top:14px; text-align:center; }
.login-help a { color:var(--mint); font-size:.82rem; font-weight:850; }
.muted-paragraph { margin:-4px 0 22px; color:var(--muted); line-height:1.6; }
.settings-grid { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr); gap:18px; align-items:start; }
.smtp-test-card { position:sticky; top:18px; }
.smtp-hints { margin-top:20px; padding:16px; border-radius:14px; background:rgb(var(--button-rgb) / .06); border:1px solid rgb(var(--button-rgb) / .15); }
.smtp-hints p { margin:6px 0 0; color:var(--muted); font-size:.8rem; line-height:1.55; }

@media (max-width:1080px) {
  .role-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .filter-bar.audit-filter { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .filter-bar.audit-filter .btn { width:100%; }
  .settings-grid { grid-template-columns:1fr; }
  .smtp-test-card { position:static; }
}
@media (max-width:760px) {
  .metric-card.span-2 { grid-column:span 1; }
  .role-grid,.permission-groups { grid-template-columns:1fr; }
  .permission-heading,.danger-zone { align-items:flex-start; flex-direction:column; }
  .permission-tools { width:100%; justify-content:flex-start; }
  .filter-bar.audit-filter,.audit-filter.admin-audit-filter { grid-template-columns:1fr; }
  .page-actions { width:100%; justify-content:flex-start; }
}


/* ===== SGE 0.3.1 · White label por tenant ===== */
.branding-layout { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr); gap:18px; align-items:start; }
.branding-form { padding:24px; }
.branding-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; margin-bottom:8px; }
.branding-heading p { margin:5px 0 0; color:var(--muted); font-size:.84rem; line-height:1.5; }
.color-settings { display:grid; gap:10px; }
.color-setting { display:grid; grid-template-columns:42px minmax(0,1fr) auto; gap:14px; align-items:center; padding:14px; border:1px solid var(--border); border-radius:16px; background:rgb(var(--bg-rgb) / .22); }
.color-symbol { width:42px; height:42px; display:grid; place-items:center; border:1px solid var(--border); border-radius:12px; background:var(--surface-2); color:var(--icon); font-weight:950; }
.color-copy { display:grid; gap:4px; }
.color-copy strong { font-size:.9rem; }
.color-copy small { color:var(--muted-2); font-size:.76rem; line-height:1.4; }
.color-control { display:grid; grid-template-columns:44px 100px; gap:8px; align-items:center; }
.color-control input[type="color"] { width:44px; height:44px; padding:3px; border:1px solid var(--border); border-radius:11px; background:var(--bg-soft); cursor:pointer; }
.color-control input[type="text"] { width:100px; height:42px; padding:0 9px; border:1px solid var(--border); border-radius:11px; background:var(--bg-soft); color:var(--text); text-transform:uppercase; font:800 .74rem ui-monospace,SFMono-Regular,Menlo,monospace; outline:none; }
.color-control input[type="text"]:focus { border-color:rgb(var(--icon-rgb) / .42); box-shadow:0 0 0 3px rgb(var(--icon-rgb) / .06); }
.compact-info { margin:18px 0 0; }
.branding-preview-card { position:sticky; top:90px; padding:22px; }
.preview-head { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; margin-bottom:16px; }
.preview-head h2 { margin:5px 0 0; font-size:1.2rem; }
.preview-live { display:inline-flex; align-items:center; min-height:28px; padding:0 9px; border-radius:999px; border:1px solid rgb(var(--button-rgb) / .22); background:rgb(var(--button-rgb) / .08); color:var(--mint); font-size:.7rem; font-weight:900; }
.theme-preview { --preview-bg:#0b141a; --preview-button:#25d366; --preview-text:#f2f7f8; --preview-card:#15232c; --preview-icon:#73f2c0; display:grid; grid-template-columns:66px 1fr; min-height:330px; overflow:hidden; border:1px solid var(--border); border-radius:20px; background:var(--preview-bg); color:var(--preview-text); box-shadow:0 20px 60px rgba(0,0,0,.22); }
.theme-preview-sidebar { display:flex; flex-direction:column; align-items:center; gap:14px; padding:16px 10px; background:var(--preview-bg); border-right:1px solid color-mix(in srgb,var(--preview-text) 13%,transparent); }
.theme-preview-logo { width:38px; height:38px; display:grid; place-items:center; border-radius:11px; background:linear-gradient(145deg,var(--preview-icon),var(--preview-button)); color:#07120f; font-weight:950; }
.theme-preview-sidebar i { width:28px; height:8px; border-radius:999px; background:var(--preview-icon); opacity:.45; }
.theme-preview-main { min-width:0; }
.theme-preview-top { height:52px; display:flex; justify-content:space-between; align-items:center; padding:0 16px; border-bottom:1px solid color-mix(in srgb,var(--preview-text) 13%,transparent); }
.theme-preview-top span { width:76px; height:7px; border-radius:999px; background:var(--preview-text); opacity:.35; }
.theme-preview-top b { color:var(--preview-icon); }
.theme-preview-content { padding:20px; }
.theme-preview-eyebrow { display:block; margin-bottom:7px; color:var(--preview-icon); font-size:.62rem; font-weight:950; letter-spacing:.12em; }
.theme-preview-content > strong { display:block; margin-bottom:5px; font-size:1.12rem; }
.theme-preview-content > small { display:block; color:var(--preview-text); opacity:.62; line-height:1.45; }
.theme-preview-cards { display:grid; grid-template-columns:1fr 1fr; gap:9px; margin:18px 0; }
.theme-preview-cards > span { display:grid; gap:3px; padding:13px; border-radius:13px; background:var(--preview-card); border:1px solid color-mix(in srgb,var(--preview-text) 13%,transparent); }
.theme-preview-cards b { font-size:.9rem; }
.theme-preview-cards small { opacity:.58; font-size:.65rem; }
.theme-preview-content button { width:100%; min-height:38px; border:0; border-radius:11px; background:var(--preview-button); color:var(--preview-button-text,#07120f); font-weight:900; }
.reset-theme-form { margin-top:14px; }
@media (max-width:1080px) { .branding-layout { grid-template-columns:1fr; } .branding-preview-card { position:static; } }
@media (max-width:660px) { .color-setting { grid-template-columns:42px 1fr; } .color-control { grid-column:1/-1; grid-template-columns:52px 1fr; } .color-control input[type="color"] { width:52px; } .color-control input[type="text"] { width:100%; } .branding-heading { flex-direction:column; } }

/* SGE 0.4.0 · Produtos */
.page-actions,.filter-actions,.product-card-actions,.reference-actions,.download-choice{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.product-nav-strip{display:flex;gap:8px;flex-wrap:wrap;margin:-4px 0 18px}.product-nav-strip a{display:inline-flex;align-items:center;min-height:34px;padding:0 11px;border:1px solid var(--border);border-radius:10px;background:rgb(var(--surface-rgb)/.52);color:var(--muted);font-size:.78rem;font-weight:850}.product-nav-strip a:hover{color:var(--text);border-color:rgb(var(--icon-rgb)/.28);background:rgb(var(--icon-rgb)/.06)}
.product-filter{display:grid;grid-template-columns:minmax(220px,1.6fr) repeat(5,minmax(120px,1fr)) auto;gap:11px;align-items:end;margin-bottom:18px;padding:16px}.product-filter .field{margin:0}.product-filter .field>span{font-size:.7rem}.product-filter input,.product-filter select{min-height:42px}.filter-actions{padding-bottom:1px}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.product-card{overflow:hidden;padding:0}.product-card-media{height:190px;display:grid;place-items:center;overflow:hidden;background:linear-gradient(145deg,var(--surface-2),var(--surface));border-bottom:1px solid var(--border)}.product-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .28s ease}.product-card-media:hover img{transform:scale(1.025)}.product-card-media>span{font-size:3rem;color:var(--muted-2);opacity:.7}.product-card-body{display:grid;gap:13px;padding:17px}.product-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.product-card h3{margin:3px 0 0;font-size:1.02rem;line-height:1.3}.product-card h3 a{color:var(--text)}.sku-line{display:block;color:var(--mint);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.66rem;font-weight:900;letter-spacing:.06em}.product-meta-row{display:flex;gap:8px;flex-wrap:wrap;color:var(--muted);font-size:.72rem}.product-meta-row span{padding:5px 7px;border-radius:7px;background:var(--surface-2)}.product-price-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.product-price-row>div{display:grid;gap:3px;padding:10px;border:1px solid var(--border);border-radius:11px;background:rgb(var(--surface-rgb)/.42)}.product-price-row small{color:var(--muted);font-size:.68rem}.product-price-row strong{font-size:.91rem}.status-pill{display:inline-flex;align-items:center;justify-content:center;min-height:25px;padding:0 8px;border-radius:999px;border:1px solid var(--border);font-size:.65rem;font-weight:900;white-space:nowrap}.status-pill.is-active{color:var(--mint);background:rgb(var(--button-rgb)/.08);border-color:rgb(var(--button-rgb)/.24)}.status-pill.is-muted{color:var(--muted);background:var(--surface-2)}.mini-note{padding:8px 9px;border-radius:9px;background:rgb(var(--icon-rgb)/.06);color:var(--muted);font-size:.7rem}.mini-alert{padding:8px 9px;border-radius:9px;font-size:.7rem;font-weight:850}.mini-alert.warning{background:rgba(247,198,93,.10);color:var(--warning)}.mini-alert.danger{background:rgba(255,107,107,.10);color:var(--danger)}.product-card-actions{margin-top:2px}.product-card-actions form{margin-left:auto}.icon-action{width:34px;height:34px;display:grid;place-items:center;padding:0;border:1px solid var(--border);border-radius:9px;background:var(--surface-2);color:var(--muted);font-size:1rem;cursor:pointer}.icon-action:hover{color:var(--text);border-color:rgb(var(--icon-rgb)/.3)}.icon-action.danger:hover{color:var(--danger);border-color:rgba(255,107,107,.35);background:rgba(255,107,107,.07)}.text-warning{color:var(--warning)!important}.text-danger{color:var(--danger)!important}.muted-copy{color:var(--muted);line-height:1.65}.optional{color:var(--muted-2);font-size:.68em;font-weight:700}.empty-state{text-align:center;padding:48px 24px}.empty-state .empty-icon{display:grid;place-items:center;width:60px;height:60px;margin:0 auto 14px;border-radius:17px;background:var(--surface-2);color:var(--mint);font-size:1.65rem}.empty-state h2{margin:0 0 7px}.empty-state p{max-width:530px;margin:0 auto 18px;color:var(--muted)}
.product-form{display:grid;gap:16px;padding-bottom:82px}.product-form .form-card{margin:0}.form-section-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:18px}.form-section-heading>div{display:flex;align-items:flex-start;gap:11px}.form-section-heading h2{margin:0 0 4px;font-size:1.05rem}.form-section-heading p{margin:0;color:var(--muted);font-size:.78rem;line-height:1.5}.step-dot{width:29px;height:29px;display:grid;place-items:center;flex:0 0 auto;border-radius:9px;background:rgb(var(--icon-rgb)/.11);border:1px solid rgb(var(--icon-rgb)/.22);color:var(--mint);font-size:.74rem;font-weight:950}.field-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.field-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.money-input{display:flex;align-items:center;border:1px solid var(--border);border-radius:11px;background:var(--bg-soft);overflow:hidden}.money-input:focus-within{border-color:rgb(var(--icon-rgb)/.55);box-shadow:0 0 0 3px rgb(var(--icon-rgb)/.06)}.money-input>span{padding:0 10px;color:var(--muted);font-size:.76rem;font-weight:850;border-right:1px solid var(--border)}.money-input input{border:0!important;border-radius:0!important;box-shadow:none!important}.sku-readonly,.sku-large,.sku-inline{display:flex;align-items:center;gap:8px;min-height:44px;padding:7px 9px;border:1px dashed rgb(var(--icon-rgb)/.26);border-radius:10px;background:rgb(var(--icon-rgb)/.04)}.sku-readonly code,.sku-large code,.sku-inline code{color:var(--mint);font-weight:900}.sku-readonly button,.sku-large button,.sku-inline button{margin-left:auto;border:0;background:transparent;color:var(--muted);font-size:.69rem;font-weight:900;cursor:pointer}.sku-large{margin-top:5px}.sku-large code{font-size:1.05rem}.sku-inline{display:inline-flex;min-height:30px;padding:4px 7px}.sku-inline button{margin-left:4px}.check-card{display:flex;gap:11px;align-items:flex-start;padding:13px;border:1px solid var(--border);border-radius:12px;background:rgb(var(--surface-rgb)/.42);cursor:pointer;margin:12px 0}.check-card input{margin-top:3px;accent-color:var(--green)}.check-card span{display:grid;gap:2px}.check-card small{color:var(--muted);line-height:1.45}.sticky-form-actions{position:sticky;bottom:12px;z-index:12;display:flex;justify-content:flex-end;gap:10px;padding:11px 13px;border:1px solid var(--border);border-radius:14px;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(12px);box-shadow:0 16px 40px rgba(0,0,0,.24)}
.variation-card{overflow:visible}.variation-dimension{padding:14px;border:1px solid var(--border);border-radius:13px;background:var(--bg-soft);margin-bottom:11px}.variation-dimension-head{display:grid;grid-template-columns:1fr auto;gap:9px;align-items:end}.variation-dimension-head .field{margin:0}.variation-values{display:flex;gap:8px;flex-wrap:wrap;margin:11px 0}.variation-value{display:flex;align-items:center;min-width:170px;max-width:260px;flex:1;border:1px solid var(--border);border-radius:10px;background:var(--surface);overflow:hidden}.variation-value input{min-width:0;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}.variation-value button{width:34px;height:40px;border:0;border-left:1px solid var(--border);background:transparent;color:var(--muted);cursor:pointer}.variation-value button:hover{color:var(--danger)}.text-button{padding:0;border:0;background:transparent;color:var(--mint);font-weight:850;font-size:.75rem;cursor:pointer}.variation-empty{display:grid;gap:3px;padding:18px;border:1px dashed var(--border);border-radius:12px;text-align:center;color:var(--muted)}.variation-empty strong{color:var(--text)}.variant-combinations{margin-top:16px;padding-top:16px;border-top:1px solid var(--border)}.mini-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.mini-heading>div{display:grid;gap:2px}.mini-heading span:not(.status-pill){color:var(--muted);font-size:.72rem}.variant-table{display:grid;gap:7px}.variant-row{display:grid;grid-template-columns:minmax(180px,1fr) minmax(135px,.45fr) minmax(125px,.35fr);align-items:center;gap:10px;padding:10px;border:1px solid var(--border);border-radius:11px;background:rgb(var(--surface-rgb)/.48)}.variant-row strong{font-size:.8rem}.variant-row code{color:var(--muted);font-size:.7rem}.variant-stock-wrap{display:flex;align-items:center;gap:6px}.variant-stock-wrap input{min-height:38px}.variant-stock-wrap small{color:var(--muted)}
.upload-zone{position:relative;display:grid;place-items:center;gap:5px;min-height:130px;padding:20px;border:1.5px dashed rgb(var(--icon-rgb)/.28);border-radius:14px;background:rgb(var(--icon-rgb)/.035);text-align:center;cursor:pointer}.upload-zone:hover{background:rgb(var(--icon-rgb)/.06);border-color:rgb(var(--icon-rgb)/.5)}.upload-zone input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.upload-zone-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;background:rgb(var(--icon-rgb)/.1);color:var(--mint);font-size:1.15rem}.upload-zone small{color:var(--muted)}.upload-zone.large{min-height:190px}.image-manager{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:13px}.image-manage-card{display:grid;gap:7px;padding:8px;border:1px solid var(--border);border-radius:12px;background:var(--bg-soft);font-size:.7rem;color:var(--muted)}.image-manage-card img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:8px}.image-manage-card span{display:flex;align-items:center;gap:5px}.danger-check{color:var(--danger)}
.product-detail-grid{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(360px,1.15fr);gap:16px;margin-bottom:16px}.product-gallery,.product-summary{padding:17px}.product-main-image{width:100%;max-height:430px;aspect-ratio:1/1;object-fit:contain;border-radius:14px;background:var(--bg-soft)}.product-main-placeholder{height:330px;display:grid;place-items:center;align-content:center;gap:7px;border-radius:14px;background:var(--bg-soft);color:var(--muted-2);font-size:3rem}.product-main-placeholder span{font-size:.76rem}.product-thumbs{display:flex;gap:8px;overflow:auto;margin-top:9px}.product-thumbs img{width:66px;height:66px;object-fit:cover;border:1px solid var(--border);border-radius:9px}.summary-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.summary-price{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}.summary-price>div{display:grid;gap:3px;padding:14px;border-radius:12px;background:var(--surface-2);border:1px solid var(--border)}.summary-price small,.detail-list span{color:var(--muted);font-size:.7rem}.summary-price strong{font-size:1.2rem}.detail-list{display:grid}.detail-list>div{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--border)}.detail-list strong{font-size:.78rem;text-align:right}.detail-section{margin-bottom:16px;padding:18px}.detail-section>p{color:var(--muted);line-height:1.65}.detail-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.detail-section hr{height:1px;border:0;background:var(--border);margin:18px 0}.data-table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:11px 12px;border-bottom:1px solid var(--border);text-align:left;vertical-align:middle;font-size:.76rem}.data-table th{color:var(--muted);font-size:.67rem;text-transform:uppercase;letter-spacing:.06em}.data-table td>small{display:block;color:var(--muted);margin-top:2px}.data-table tbody tr:hover{background:rgb(var(--icon-rgb)/.025)}
.reference-layout{display:grid;grid-template-columns:minmax(290px,.72fr) minmax(480px,1.28fr);gap:16px;align-items:start}.reference-layout>.form-card{position:sticky;top:86px}.reference-list{padding:17px}.reference-items{display:grid;gap:8px}.reference-item{display:grid;grid-template-columns:minmax(180px,1fr) auto auto;gap:12px;align-items:center;padding:11px;border:1px solid var(--border);border-radius:11px;background:rgb(var(--surface-rgb)/.45)}.reference-item>div:first-child{display:grid;gap:2px}.reference-item small{color:var(--muted);font-size:.69rem}.supplier-item{grid-template-columns:minmax(200px,1fr) auto auto}.import-layout{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.import-layout>.form-card{margin:0}.import-result{padding:18px;margin-top:16px}.feature-list.compact{display:grid;gap:9px}.feature-list.compact>div{display:flex;gap:9px;align-items:flex-start;color:var(--muted);font-size:.77rem;line-height:1.5}.feature-list.compact b{color:var(--mint)}
.alert-metric-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:11px;margin:0 0 18px}.alert-metric{display:flex;align-items:center;gap:10px;min-height:64px;padding:12px 14px;border:1px solid var(--border);border-radius:13px;background:var(--surface);color:var(--muted)}.alert-metric b{display:grid;place-items:center;min-width:36px;height:36px;border-radius:10px;background:var(--surface-2);color:var(--text);font-size:1rem}.alert-metric span{font-size:.73rem;font-weight:750;line-height:1.35}.alert-metric.has-warning{border-color:rgba(247,198,93,.22)}.alert-metric.has-warning b{color:var(--warning);background:rgba(247,198,93,.08)}.alert-metric.has-danger{border-color:rgba(255,107,107,.22)}.alert-metric.has-danger b{color:var(--danger);background:rgba(255,107,107,.08)}
@media(max-width:1320px){.product-filter{grid-template-columns:repeat(3,minmax(0,1fr))}.filter-search{grid-column:span 2}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.field-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:980px){.reference-layout,.product-detail-grid,.import-layout{grid-template-columns:1fr}.reference-layout>.form-card{position:static}.product-grid{grid-template-columns:1fr 1fr}.alert-metric-grid{grid-template-columns:1fr 1fr}.image-manager{grid-template-columns:repeat(3,minmax(0,1fr))}.field-grid.three{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.product-filter{grid-template-columns:1fr 1fr}.filter-search{grid-column:1/-1}.product-grid{grid-template-columns:1fr}.product-card-media{height:220px}.field-grid.three,.field-grid.four{grid-template-columns:1fr}.variant-row{grid-template-columns:1fr}.image-manager{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-columns{grid-template-columns:1fr}.reference-item,.supplier-item{grid-template-columns:1fr auto}.reference-actions{grid-column:1/-1}.alert-metric-grid{grid-template-columns:1fr}.sticky-form-actions{bottom:8px}.product-nav-strip{overflow:auto;flex-wrap:nowrap;padding-bottom:4px}.product-nav-strip a{white-space:nowrap}.form-section-heading{flex-direction:column}.variation-dimension-head{grid-template-columns:1fr auto}}
@media(max-width:460px){.product-filter{grid-template-columns:1fr}.filter-search{grid-column:auto}.image-manager{grid-template-columns:1fr 1fr}.product-price-row,.summary-price{grid-template-columns:1fr}.page-actions{width:100%}.page-actions .btn{flex:1}.sticky-form-actions .btn{flex:1}}

/* ===== SGE 0.5.0 · Motor de estoque + ajuda guiada ===== */
.topbar-actions{display:flex;align-items:center;gap:10px;margin-left:auto}.guided-help-button{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:0 11px;border:1px solid var(--border);border-radius:10px;background:rgb(var(--surface-rgb)/.72);color:var(--text);font:inherit;font-size:.72rem;font-weight:850;cursor:pointer}.guided-help-button:hover{border-color:rgb(var(--icon-rgb)/.34);background:rgb(var(--icon-rgb)/.08)}.guided-help-button::first-letter{color:var(--mint)}
.stock-metrics{margin-top:0}.stock-filter{grid-template-columns:minmax(240px,1fr) 200px 220px auto}.stock-thumb{width:42px;height:42px;flex:0 0 auto;border-radius:9px;object-fit:cover;border:1px solid var(--border);background:var(--bg-soft)}.stock-thumb.placeholder{display:grid;place-items:center;color:var(--icon);font-size:1rem}.stock-recent{margin-top:18px}.movement-direction{display:inline-grid;place-items:center;width:24px;height:24px;margin-right:4px;border-radius:8px;font-weight:950}.movement-direction.in{color:var(--mint);background:rgb(var(--button-rgb)/.09)}.movement-direction.out{color:var(--warning);background:rgba(247,198,93,.09)}
.movement-filter{grid-template-columns:minmax(230px,1fr) 130px 190px 150px auto}.stock-item-list{display:grid;gap:10px}.stock-item-row{display:grid;grid-template-columns:minmax(320px,1.5fr) minmax(120px,.45fr) minmax(170px,.65fr) 38px;gap:10px;align-items:end;padding:12px;border:1px solid var(--border);border-radius:13px;background:var(--bg-soft)}.stock-item-row .field{margin:0}.stock-row-remove{margin-bottom:3px}.stock-form-summary{display:flex;align-items:center;justify-content:flex-end;gap:14px;padding:15px 2px 0;color:var(--muted);font-size:.8rem}.stock-form-summary strong{color:var(--text);font-size:1.1rem}.notice-soft{border-color:rgb(var(--icon-rgb)/.18);background:rgb(var(--icon-rgb)/.05);color:var(--muted)}.movement-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.movement-summary-grid article{display:grid;gap:6px;padding:18px}.movement-summary-grid span{color:var(--muted);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.movement-summary-grid strong{font-size:1.05rem}.text-mint{color:var(--mint)!important}.reverse-form{display:flex;gap:8px;align-items:center;min-width:min(100%,460px)}.reverse-form input{min-width:220px}.compact-notice{margin:0 0 12px;padding:11px 13px;font-size:.76rem}
.product-form[data-stock-engine-edit="1"] [data-base-stock-field] input[readonly],.product-form[data-stock-engine-edit="1"] [data-variant-stock][readonly]{background:rgb(var(--icon-rgb)/.035);color:var(--muted);cursor:not-allowed}.variation-card [disabled]{opacity:.45;cursor:not-allowed}

/* Ajuda guiada: destaque sem alterar a identidade visual do tenant. */
.guided-tour-highlight{position:fixed;z-index:1500;border:2px solid var(--mint);border-radius:16px;box-shadow:0 0 0 9999px rgba(0,0,0,.78),0 0 0 5px rgb(var(--button-rgb)/.10),0 14px 44px rgba(0,0,0,.28);pointer-events:none;transition:left .18s ease,top .18s ease,width .18s ease,height .18s ease}.guided-tour-highlight[hidden],.guided-tour-popover[hidden]{display:none!important}.guided-tour-popover{position:fixed;z-index:1502;width:min(390px,calc(100vw - 24px));padding:18px;border:1px solid rgb(var(--icon-rgb)/.22);border-radius:17px;background:var(--surface);box-shadow:0 22px 65px rgba(0,0,0,.46);color:var(--text)}.guided-tour-popover h3{margin:10px 0 7px;font-size:1.12rem}.guided-tour-popover p{margin:0;color:var(--muted);font-size:.82rem;line-height:1.58}.guided-tour-progress{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--mint);font-size:.69rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.guided-tour-progress button{padding:0;border:0;background:transparent;color:var(--muted);font:inherit;font-size:.68rem;text-transform:none;letter-spacing:0;cursor:pointer}.guided-tour-progress button:hover{color:var(--danger)}.guided-tour-actions{display:flex;justify-content:space-between;gap:10px;margin-top:17px}.guided-tour-actions .btn{min-width:104px}.guided-tour-actions button:disabled{opacity:.35}.guided-tour-open .sidebar-backdrop{pointer-events:none}

@media(max-width:980px){.stock-filter,.movement-filter{grid-template-columns:1fr 1fr}.stock-filter .filter-search,.movement-filter .filter-search{grid-column:1/-1}.stock-item-row{grid-template-columns:1fr 1fr}.stock-item-select{grid-column:1/-1}.stock-row-remove{justify-self:end}.movement-summary-grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.guided-help-button span{display:none}.guided-help-button{width:34px;padding:0;justify-content:center;border-radius:10px}.stock-filter,.movement-filter{grid-template-columns:1fr}.stock-filter .filter-search,.movement-filter .filter-search{grid-column:auto}.stock-item-row{grid-template-columns:1fr}.stock-item-select{grid-column:auto}.stock-row-remove{justify-self:start}.movement-summary-grid{grid-template-columns:1fr 1fr}.reverse-form{width:100%;flex-direction:column;align-items:stretch}.reverse-form input{min-width:0}.guided-tour-popover{left:12px!important;bottom:12px;top:auto!important}.guided-tour-highlight{transition:none}}
@media(max-width:460px){.movement-summary-grid{grid-template-columns:1fr}.topbar-actions{gap:6px}}
@media(prefers-reduced-motion:reduce){.guided-tour-highlight{transition:none}}

/* ===== SGE 0.6.0 · QR Code, câmera e etiquetas ===== */
.qr-reader-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:18px;align-items:start}.qr-camera-card,.qr-manual-card{padding:20px}.qr-video-shell{position:relative;overflow:hidden;display:grid;place-items:center;min-height:420px;border:1px solid var(--border);border-radius:20px;background:#05090c;margin:14px 0}.qr-video-shell video{width:100%;height:100%;min-height:420px;object-fit:cover;background:#05090c}.qr-camera-placeholder{position:absolute;inset:0;display:grid;place-content:center;gap:8px;text-align:center;background:linear-gradient(180deg,rgba(5,9,12,.92),rgba(5,9,12,.98));color:var(--muted)}.qr-camera-placeholder[hidden]{display:none}.qr-camera-placeholder strong{width:82px;height:82px;margin:auto;display:grid;place-items:center;border:2px dashed rgb(var(--icon-rgb)/.45);border-radius:20px;color:var(--mint);font-size:1.5rem;letter-spacing:.08em}.qr-scan-frame{position:absolute;inset:50% auto auto 50%;width:min(62%,270px);aspect-ratio:1;transform:translate(-50%,-50%);pointer-events:none}.qr-scan-frame span{position:absolute;width:34px;height:34px;border-color:var(--mint);border-style:solid}.qr-scan-frame span:nth-child(1){left:0;top:0;border-width:3px 0 0 3px;border-radius:10px 0 0 0}.qr-scan-frame span:nth-child(2){right:0;top:0;border-width:3px 3px 0 0;border-radius:0 10px 0 0}.qr-scan-frame span:nth-child(3){left:0;bottom:0;border-width:0 0 3px 3px;border-radius:0 0 0 10px}.qr-scan-frame span:nth-child(4){right:0;bottom:0;border-width:0 3px 3px 0;border-radius:0 0 10px 0}.qr-manual-card form{display:grid;gap:12px;margin:18px 0}.btn-block{width:100%;justify-content:center}.field-help{color:var(--muted);font-size:.76rem;line-height:1.55;margin:12px 0 0}
.qr-item-hero{display:grid;grid-template-columns:120px minmax(0,1fr) minmax(150px,.28fr);gap:20px;align-items:center;padding:20px;margin-bottom:16px}.qr-item-photo{width:120px;height:120px;overflow:hidden;display:grid;place-items:center;border:1px solid var(--border);border-radius:18px;background:var(--bg-soft);color:var(--icon);font-size:2.4rem;font-weight:950}.qr-item-photo img{width:100%;height:100%;object-fit:cover}.qr-item-main h2{margin:5px 0 13px;font-size:1.28rem}.sku-copy-large{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--border);border-radius:13px;background:var(--bg-soft)}.sku-copy-large>div{display:grid;gap:3px}.sku-copy-large span{color:var(--muted);font-size:.68rem;font-weight:850;text-transform:uppercase;letter-spacing:.06em}.sku-copy-large code{font-size:.96rem;color:var(--mint)}.qr-serial-highlight{display:inline-flex;align-items:center;gap:8px;margin-bottom:10px;padding:7px 10px;border-radius:10px;background:rgb(var(--icon-rgb)/.07);border:1px solid rgb(var(--icon-rgb)/.17)}.qr-serial-highlight span{color:var(--muted);font-size:.7rem}.qr-serial-highlight strong{color:var(--mint);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.qr-stock-tile{display:grid;place-items:center;text-align:center;min-height:120px;padding:15px;border:1px solid rgb(var(--button-rgb)/.2);border-radius:18px;background:rgb(var(--button-rgb)/.06)}.qr-stock-tile span{color:var(--muted);font-size:.72rem}.qr-stock-tile strong{font-size:2rem;color:var(--text)}.qr-stock-tile small{color:var(--mint);font-weight:900}.qr-detail-metrics{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:16px}.qr-actions-card{padding:18px}.qr-action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.qr-action-tile{display:grid;place-items:center;gap:6px;min-height:130px;padding:16px;border:1px solid var(--border);border-radius:17px;background:var(--bg-soft);color:var(--text);text-align:center;transition:.16s ease}.qr-action-tile:hover{transform:translateY(-2px);border-color:rgb(var(--icon-rgb)/.28);background:rgb(var(--icon-rgb)/.05)}.qr-action-tile>span{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:var(--surface-2);color:var(--mint);font-size:1.2rem;font-weight:950}.qr-action-tile small{color:var(--muted);font-size:.7rem}.qr-action-tile.is-positive>span{color:var(--mint);background:rgb(var(--button-rgb)/.08)}.qr-action-tile.is-negative>span{color:var(--warning);background:rgba(247,198,93,.08)}.qr-action-tile.is-disabled{opacity:.5;cursor:not-allowed}.qr-action-tile.is-disabled:hover{transform:none;border-color:var(--border);background:var(--bg-soft)}
.qr-code-list{display:grid;gap:16px}.qr-code-card{display:grid;grid-template-columns:210px minmax(260px,.75fr) minmax(340px,1.25fr);gap:20px;align-items:start;padding:20px}.qr-code-preview{width:190px;height:190px;display:grid;place-items:center;padding:8px;border-radius:16px;background:#fff}.qr-code-preview svg{max-width:100%;max-height:100%;display:block}.qr-code-info h2{margin:5px 0 10px;font-size:1.05rem}.qr-code-info p{color:var(--muted);font-size:.76rem}.serial-panel{padding-left:18px;border-left:1px solid var(--border)}.serial-create-form{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end;margin:10px 0 14px}.serial-create-form .field{margin:0}.serial-list{display:grid;gap:7px}.serial-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 11px;border:1px solid var(--border);border-radius:11px;background:var(--bg-soft)}.serial-row>div:first-child{display:grid;gap:2px}.serial-row strong{font:800 .76rem ui-monospace,SFMono-Regular,Menlo,monospace}.serial-row small{color:var(--muted);font-size:.67rem}.serial-row.is-inactive{opacity:.48}
.label-body{min-height:100vh;background:var(--bg);color:var(--text)}.label-page{max-width:980px;margin:0 auto;padding:24px}.label-toolbar{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;padding:16px;border:1px solid var(--border);border-radius:16px;background:var(--surface)}.label-toolbar>div:nth-child(2){display:grid;gap:4px}.label-toolbar small{color:var(--muted)}.label-stage{display:grid;place-items:center;min-height:520px;margin:18px 0;border:1px dashed rgb(var(--icon-rgb)/.25);border-radius:20px;background:var(--bg-soft)}.label-physical-preview{width:30mm;height:30mm;background:#fff;box-shadow:0 18px 55px rgba(0,0,0,.38)}.label-physical-preview svg{display:block;width:30mm;height:30mm}.label-note{max-width:720px;margin:0 auto;text-align:center}

@media(max-width:1100px){.qr-code-card{grid-template-columns:190px 1fr}.serial-panel{grid-column:1/-1;padding:16px 0 0;border-left:0;border-top:1px solid var(--border)}.qr-action-grid{grid-template-columns:1fr 1fr}}
@media(max-width:900px){.qr-reader-grid{grid-template-columns:1fr}.qr-item-hero{grid-template-columns:100px 1fr}.qr-item-photo{width:100px;height:100px}.qr-stock-tile{grid-column:1/-1;min-height:90px}.qr-detail-metrics{grid-template-columns:1fr 1fr 1fr}.serial-create-form{grid-template-columns:1fr 1fr}.serial-create-form .btn{grid-column:1/-1}.label-toolbar{grid-template-columns:1fr}.label-toolbar>.btn{justify-self:start}.label-toolbar .button-row{justify-self:start}}
@media(max-width:650px){.qr-video-shell,.qr-video-shell video{min-height:350px}.qr-item-hero{grid-template-columns:1fr;text-align:center}.qr-item-photo{margin:auto}.sku-copy-large{flex-direction:column}.qr-detail-metrics{grid-template-columns:1fr}.qr-action-grid{grid-template-columns:1fr 1fr}.qr-code-card{grid-template-columns:1fr}.qr-code-preview{margin:auto}.qr-code-info{text-align:center}.qr-code-info .button-row,.qr-code-info .sku-inline{justify-content:center}.serial-create-form{grid-template-columns:1fr}.serial-row{align-items:flex-start;flex-direction:column}.label-page{padding:12px}.label-stage{min-height:430px}}
@media(max-width:420px){.qr-action-grid{grid-template-columns:1fr}.qr-video-shell,.qr-video-shell video{min-height:300px}}

/* SGE 0.7.0 · Inventário e catálogo público */
.inventory-list{display:grid;gap:14px}.inventory-card{display:flex;align-items:center;justify-content:space-between;gap:20px;text-decoration:none;color:var(--text);padding:20px}.inventory-card h2{margin:10px 0 4px;font-size:1.05rem}.inventory-card p{margin:0;color:var(--muted)}.inventory-progress{text-align:right}.inventory-progress strong{display:block;font-size:1.25rem}.inventory-progress span{color:var(--muted);font-size:.85rem}.inventory-metrics{grid-template-columns:repeat(5,minmax(0,1fr))}.inline-count-form{display:flex;gap:8px;align-items:center}.inline-count-form input{width:92px}.inventory-scan-feedback{margin-top:14px;min-height:42px;padding:11px 13px;border-radius:12px;background:rgb(var(--surface-2-rgb)/.55);color:var(--muted);font-weight:700}.inventory-scan-feedback.is-success{border:1px solid rgb(var(--button-rgb)/.35);color:var(--text)}.inventory-scan-feedback.is-error{border:1px solid rgb(255 107 107/.45);color:#ffb0b0}.status-pill.is-danger{background:rgb(255 107 107/.12);color:#ff9d9d;border-color:rgb(255 107 107/.3)}.btn-danger{background:rgb(255 107 107/.12);color:#ff9d9d;border:1px solid rgb(255 107 107/.3)}.btn-danger:hover{background:rgb(255 107 107/.2)}

.catalog-body{min-height:100vh;background:var(--bg);color:var(--text)}.catalog-topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px clamp(18px,4vw,52px);background:rgb(var(--bg-rgb)/.9);backdrop-filter:blur(18px);border-bottom:1px solid var(--border)}.catalog-main{width:min(1180px,calc(100% - 32px));margin:0 auto;padding:42px 0 60px}.catalog-footer{display:flex;justify-content:space-between;gap:16px;padding:22px clamp(18px,4vw,52px);border-top:1px solid var(--border);color:var(--muted);font-size:.85rem}.catalog-hero{display:grid;grid-template-columns:1fr minmax(320px,520px);gap:28px;align-items:end;margin-bottom:30px}.catalog-hero h1{font-size:clamp(2rem,5vw,3.8rem);margin:.25rem 0 .65rem}.catalog-hero p{color:var(--muted);max-width:620px}.catalog-search{display:grid;grid-template-columns:1fr 180px auto;gap:10px}.catalog-search input,.catalog-search select{min-width:0}.catalog-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.catalog-card{overflow:hidden;border:1px solid var(--border);border-radius:20px;background:var(--surface);color:var(--text);text-decoration:none;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.catalog-card:hover{transform:translateY(-4px);border-color:rgb(var(--button-rgb)/.35);box-shadow:0 18px 38px rgb(0 0 0/.2)}.catalog-card-image{aspect-ratio:1/1;background:var(--surface-2);display:grid;place-items:center;overflow:hidden;font-size:3rem;font-weight:800;color:var(--icon)}.catalog-card-image img{width:100%;height:100%;object-fit:cover}.catalog-card-body{padding:16px}.catalog-card-body small{color:var(--muted)}.catalog-card-body h2{font-size:1rem;margin:6px 0 14px}.catalog-card-body strong{display:block;font-size:1.15rem}.catalog-card-body span{display:block;margin-top:7px;color:var(--muted);font-size:.85rem}.catalog-empty{max-width:680px;margin:80px auto;text-align:center;padding:38px;border:1px solid var(--border);border-radius:24px;background:var(--surface)}.catalog-empty h1{font-size:clamp(1.8rem,4vw,3rem)}.catalog-empty p{color:var(--muted);line-height:1.7}.catalog-product-page{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.85fr);gap:44px;align-items:start}.catalog-product-media{position:sticky;top:100px}.catalog-product-main-image,.catalog-product-placeholder{width:100%;aspect-ratio:1/1;border-radius:26px;background:var(--surface);border:1px solid var(--border);object-fit:cover}.catalog-product-placeholder{display:grid;place-items:center;font-size:6rem;font-weight:900;color:var(--icon)}.catalog-thumbs{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:10px}.catalog-thumbs img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:12px;border:1px solid var(--border)}.catalog-product-info{padding:12px 0}.catalog-product-info h1{font-size:clamp(2rem,5vw,3.5rem);line-height:1.04;margin:10px 0 8px}.catalog-price{font-size:1.8rem;font-weight:900;margin:22px 0;color:var(--mint)}.catalog-description{color:var(--muted);line-height:1.75}.catalog-qr-identification{display:grid;grid-template-columns:auto 1fr;gap:8px 16px;padding:16px;border-radius:16px;background:var(--surface-2);margin:22px 0}.catalog-qr-identification span{color:var(--muted)}.catalog-qr-identification strong{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.catalog-variants{margin:24px 0}.variant-chip{display:inline-flex;padding:8px 11px;border:1px solid var(--border);border-radius:999px;margin:4px;background:var(--surface-2);font-size:.85rem}.catalog-stock-status{display:inline-flex;padding:8px 12px;border-radius:999px;background:rgb(var(--button-rgb)/.12);color:var(--mint);font-weight:800}

@media(max-width:980px){.inventory-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-hero,.catalog-product-page{grid-template-columns:1fr}.catalog-product-media{position:static;max-width:680px}.catalog-search{grid-template-columns:1fr 1fr}.catalog-search .btn{grid-column:1/-1}}@media(max-width:620px){.inventory-card{align-items:flex-start}.inventory-progress{min-width:74px}.inline-count-form{flex-direction:column;align-items:stretch}.inline-count-form input{width:100%}.catalog-main{width:min(100% - 22px,1180px);padding-top:24px}.catalog-topbar .brand-copy small{display:none}.catalog-grid{grid-template-columns:1fr 1fr;gap:10px}.catalog-card-body{padding:12px}.catalog-card-body h2{font-size:.92rem}.catalog-search{grid-template-columns:1fr}.catalog-search .btn{grid-column:auto}.catalog-footer{flex-direction:column}.catalog-product-info h1{font-size:2rem}}

@media print{.sidebar,.dashboard-topbar,.sidebar-backdrop,.guided-help-overlay,.page-head .button-row,.danger-zone{display:none!important}.dashboard-shell,.dashboard-main,.dashboard-content{display:block!important;margin:0!important;padding:0!important;width:100%!important}.surface-card,.metric-card{break-inside:avoid;box-shadow:none!important}.table-wrap{overflow:visible}.catalog-topbar,.catalog-footer{display:none}.catalog-main{width:100%;padding:0}}


/* SGE 0.8.0 · Alertas e Central de Notificações */
.nav-badge{margin-left:auto;min-width:22px;height:22px;padding:0 6px;display:inline-grid;place-items:center;border-radius:999px;background:var(--danger);color:#fff!important;font-size:.68rem;font-weight:900;line-height:1}.notification-dashboard-card{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:16px;padding:20px}.notification-dashboard-card h2{margin:5px 0 5px;font-size:1.05rem}.notification-dashboard-card p{margin:0;color:var(--muted)}.notification-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.notification-filters{display:grid;grid-template-columns:repeat(3,minmax(160px,1fr)) auto;gap:12px;align-items:end;padding:18px;margin-bottom:18px}.notification-filters .field{margin:0}.notification-list{display:grid;gap:12px}.notification-card{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:16px;align-items:center;padding:18px;border-left:3px solid var(--border)}.notification-card.severity-danger{border-left-color:var(--danger)}.notification-card.severity-warning{border-left-color:var(--warning)}.notification-card.is-read{opacity:.78}.notification-card.is-resolved{opacity:.58}.notification-symbol{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:var(--surface-2);font-size:1.2rem;font-weight:900}.severity-danger .notification-symbol{color:#ff9d9d;background:rgb(255 107 107/.1)}.severity-warning .notification-symbol{color:var(--warning);background:rgb(247 198 93/.09)}.notification-copy{min-width:0}.notification-title-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.notification-title-row h2{margin:0;font-size:1rem}.notification-copy p{margin:5px 0 5px;color:var(--muted)}.notification-copy small{color:var(--muted-2)}.notification-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.notification-actions form{margin:0}.filter-actions{display:flex;gap:8px;align-items:center}.empty-state{text-align:center;padding:38px}.empty-state .empty-icon{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;margin:0 auto 12px;background:rgb(var(--button-rgb)/.12);color:var(--mint);font-size:1.4rem}.empty-state h2{margin:0 0 6px}.empty-state p{margin:0;color:var(--muted)}
@media(max-width:980px){.notification-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.notification-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.notification-card{grid-template-columns:48px 1fr}.notification-actions{grid-column:2;justify-content:flex-start}}
@media(max-width:620px){.notification-dashboard-card{align-items:flex-start;flex-direction:column}.notification-metrics{grid-template-columns:1fr 1fr}.notification-filters{grid-template-columns:1fr}.notification-card{grid-template-columns:40px 1fr;padding:15px}.notification-symbol{width:38px;height:38px}.notification-actions{grid-column:1/-1}.notification-actions .btn{width:100%}.notification-actions form{width:100%}.filter-actions{display:grid;grid-template-columns:1fr 1fr}}

/* ===== Revisão visual 0.8.0 · Sidebar, iconografia e dashboard ===== */
.ui-icon {
  width: 1.35em;
  height: 1.35em;
  display: block;
  flex: 0 0 auto;
  overflow: visible;
}

/* Sidebar: cabeçalho/rodapé fixos e somente a navegação rola. */
.sidebar {
  width: 100%;
  min-width: 0;
  overflow: hidden;
  padding: 18px 12px 14px;
}
.sidebar-brand {
  flex: 0 0 auto;
  padding: 8px 10px 18px;
}
.side-nav {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  overflow-x: hidden;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  scrollbar-width: thin;
  scrollbar-color: rgb(var(--icon-rgb) / .35) rgb(var(--surface-rgb) / .28);
  display: grid;
  align-content: start;
  gap: 5px;
  padding: 17px 7px 18px 2px;
  margin-right: -2px;
}
.side-nav::-webkit-scrollbar { width: 8px; }
.side-nav::-webkit-scrollbar-track {
  background: rgb(var(--surface-rgb) / .25);
  border-radius: 999px;
}
.side-nav::-webkit-scrollbar-thumb {
  background: rgb(var(--icon-rgb) / .28);
  border: 2px solid transparent;
  background-clip: padding-box;
  border-radius: 999px;
}
.side-nav::-webkit-scrollbar-thumb:hover { background: rgb(var(--icon-rgb) / .48); background-clip: padding-box; }
.sidebar-footer {
  flex: 0 0 auto;
  margin-top: 0;
  padding: 13px 4px 0;
  background: linear-gradient(180deg, transparent, rgb(var(--bg-rgb) / .96) 18%);
}

.side-link {
  position: relative;
  min-height: 50px;
  padding: 0 11px;
  gap: 10px;
  border-radius: 14px;
  font-size: .9rem;
  font-weight: 760;
  transition: background .16s ease, border-color .16s ease, color .16s ease, transform .16s ease;
}
.side-link:hover { transform: translateX(1px); }
.side-link::before {
  content: "";
  position: absolute;
  left: -2px;
  top: 10px;
  bottom: 10px;
  width: 3px;
  border-radius: 999px;
  background: transparent;
}
.side-link.active::before { background: var(--mint); box-shadow: 0 0 18px rgb(var(--icon-rgb) / .35); }
.side-link span.side-icon {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  flex: 0 0 34px;
  border: 1px solid transparent;
  border-radius: 10px;
  color: var(--muted);
  text-align: center;
  transition: color .16s ease, background .16s ease, border-color .16s ease;
}
.side-link .side-icon .ui-icon { width: 22px; height: 22px; }
.side-link:hover .side-icon {
  color: var(--text);
  background: rgb(var(--surface-2-rgb) / .54);
  border-color: var(--border);
}
.side-link.active .side-icon {
  color: var(--mint);
  background: rgb(var(--icon-rgb) / .08);
  border-color: rgb(var(--icon-rgb) / .17);
}
.nav-caption {
  margin: 18px 11px 7px;
  font-size: .66rem;
  letter-spacing: .13em;
}
.logout-link .side-icon { color: var(--muted-2); }
.menu-toggle .ui-icon { width: 21px; height: 21px; }

/* Dashboard: um único ritmo vertical impede cards encostados ou sobrepostos. */
.dashboard-content {
  width: 100%;
  max-width: 1560px;
  padding: clamp(22px, 3vw, 38px);
}
.dashboard-stack {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 20px;
  width: 100%;
}
.dashboard-stack > * { min-width: 0; margin-top: 0; margin-bottom: 0; }
.dashboard-stack > .metric-grid,
.dashboard-stack > .alert-metric-grid { margin: 0; }
.surface-card {
  box-shadow: 0 18px 55px rgba(0,0,0,.18);
}

.welcome-card {
  min-height: 150px;
  padding: clamp(24px, 3.5vw, 34px);
  border-radius: 22px;
  background:
    radial-gradient(circle at 92% 10%, rgb(var(--button-rgb) / .10), transparent 17rem),
    linear-gradient(150deg, rgb(var(--surface-2-rgb) / .9), rgb(var(--surface-rgb) / .78));
}
.welcome-card h1 {
  margin: 7px 0 8px;
  font-size: clamp(2rem, 3.7vw, 3.05rem);
}
.welcome-card p { margin: 0; font-size: .92rem; line-height: 1.55; }

.metric-grid { gap: 16px; }
.metric-card {
  min-height: 148px;
  padding: 20px;
  border-radius: 19px;
  box-shadow: 0 12px 32px rgba(0,0,0,.12);
  background:
    linear-gradient(145deg, rgb(var(--surface-2-rgb) / .9), rgb(var(--surface-rgb) / .76));
}
.metric-card-with-icon {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  align-items: center;
  align-content: center;
  gap: 16px;
}
.metric-card-icon {
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  border-radius: 16px;
  border: 1px solid rgb(var(--icon-rgb) / .22);
  background: linear-gradient(145deg, rgb(var(--button-rgb) / .13), rgb(var(--icon-rgb) / .06));
  color: var(--mint);
  box-shadow: inset 0 0 0 1px rgb(var(--icon-rgb) / .03);
}
.metric-card-icon .ui-icon { width: 30px; height: 30px; stroke-width: 1.7; }
.metric-card-copy { min-width: 0; display: grid; gap: 5px; }
.metric-card-copy > span {
  color: var(--muted);
  font-size: .78rem;
  font-weight: 760;
  text-transform: none;
  letter-spacing: 0;
}
.metric-card-copy strong {
  font-size: clamp(1.42rem, 2vw, 1.9rem);
  line-height: 1.05;
  overflow-wrap: break-word;
  word-break: normal;
}
.metric-card-copy small { color: var(--muted-2); line-height: 1.35; }
.metric-card-progress-copy { align-content: center; gap: 9px; }
.metric-card-progress-copy .usage-head { margin: 0; }
.metric-card-progress-copy .usage-head span { color: var(--muted); font-size: .78rem; font-weight: 760; text-transform: none; letter-spacing: 0; }
.metric-card-progress-copy .progress-track { margin: 0; }
.inventory-metrics .metric-card-with-icon { grid-template-columns: 50px minmax(0, 1fr); gap: 12px; }
.inventory-metrics .metric-card-icon { width: 50px; height: 50px; border-radius: 14px; }
.inventory-metrics .metric-card-icon .ui-icon { width: 26px; height: 26px; }

.alert-metric-grid { gap: 12px; }
.alert-metric {
  min-height: 78px;
  padding: 12px 13px;
  border-radius: 16px;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  align-items: center;
  gap: 11px;
  background: linear-gradient(145deg, rgb(var(--surface-rgb) / .9), rgb(var(--bg-soft-rgb) / .82));
  transition: transform .16s ease, border-color .16s ease, background .16s ease;
}
.alert-metric:hover { transform: translateY(-1px); border-color: rgb(var(--icon-rgb) / .25); }
.alert-metric-icon {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 13px;
  background: rgb(var(--surface-2-rgb) / .76);
  color: var(--mint);
}
.alert-metric-icon .ui-icon { width: 22px; height: 22px; }
.alert-metric-copy { min-width: 0; display: grid; gap: 2px; }
.alert-metric-copy b {
  display: block;
  min-width: 0;
  height: auto;
  border-radius: 0;
  background: transparent;
  color: var(--text);
  font-size: 1.05rem;
  line-height: 1.1;
}
.alert-metric-copy small { color: var(--muted); font-size: .7rem; line-height: 1.35; font-weight: 720; }
.alert-metric.has-warning .alert-metric-icon { color: var(--warning); background: rgba(247,198,93,.08); }
.alert-metric.has-danger .alert-metric-icon { color: #ff9d9d; background: rgb(255 107 107 / .08); }
.alert-metric.has-warning .alert-metric-copy b { color: var(--warning); }
.alert-metric.has-danger .alert-metric-copy b { color: #ff9d9d; }

.notification-dashboard-card {
  margin-top: 0;
  padding: 20px;
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr) auto;
  align-items: center;
  gap: 16px;
  border-radius: 20px;
}
.notification-dashboard-icon {
  width: 52px;
  height: 52px;
  display: grid;
  place-items: center;
  border-radius: 15px;
  background: rgb(var(--icon-rgb) / .08);
  border: 1px solid rgb(var(--icon-rgb) / .18);
  color: var(--mint);
}
.notification-dashboard-icon .ui-icon { width: 25px; height: 25px; }
.notification-dashboard-copy { min-width: 0; }
.notification-dashboard-copy h2 { margin: 5px 0; }
.notification-dashboard-copy p { margin: 0; color: var(--muted); }

.progress-card,
.table-card {
  border-radius: 22px;
  padding: 24px;
  overflow: hidden;
}
.section-heading.compact {
  gap: 22px;
  margin-bottom: 10px;
  align-items: center;
}
.setup-list { gap: 0; }
.setup-item {
  min-height: 88px;
  gap: 15px;
  padding: 15px 0;
}
.setup-item:first-child { border-top: 0; }
.setup-item b.setup-icon {
  width: 50px;
  height: 50px;
  display: grid;
  place-items: center;
  border-radius: 14px;
  border: 1px solid rgb(var(--icon-rgb) / .18);
  background: rgb(var(--icon-rgb) / .06);
  color: var(--mint);
}
.setup-item.done b.setup-icon {
  color: var(--mint);
  background: rgb(var(--icon-rgb) / .07);
  border-color: rgb(var(--icon-rgb) / .2);
}
.setup-icon .ui-icon { width: 25px; height: 25px; }
.setup-item > div { min-width: 0; gap: 5px; }
.setup-item strong { font-size: .94rem; }
.setup-item span { line-height: 1.4; }
.setup-item .btn { flex: 0 0 auto; gap: 7px; }
.btn-icon { width: 15px; height: 15px; }
.btn-icon-only { width: 42px; min-width: 42px; padding: 0; }
.btn-icon-only .ui-icon { width: 18px; height: 18px; }

.table-card-head { padding-bottom: 19px; }
.table-card-head h2 { font-size: clamp(1.55rem, 2.5vw, 2rem); }
.responsive-table { scrollbar-width: thin; scrollbar-color: rgb(var(--icon-rgb) / .25) transparent; }

@media (max-width: 1180px) {
  .metric-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .alert-metric-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 820px) {
  .sidebar { width: min(300px, 88vw); padding-right: 10px; }
  .side-nav { padding-right: 6px; }
  .dashboard-content { padding: 20px 14px 30px; }
  .dashboard-stack { gap: 15px; }
  .welcome-card { min-height: 0; }
  .notification-dashboard-card { grid-template-columns: 46px minmax(0,1fr); }
  .notification-dashboard-icon { width: 46px; height: 46px; }
  .notification-dashboard-card > .btn { grid-column: 1 / -1; width: 100%; }
  .section-heading.compact { grid-template-columns: 1fr; gap: 9px; }
}

@media (max-width: 700px) {
  .alert-metric-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .setup-item { align-items: flex-start; flex-wrap: wrap; }
  .setup-item > div { flex: 1 1 calc(100% - 70px); }
  .setup-item .btn { margin-left: 65px; }
}

@media (max-width: 620px) {
  .metric-grid,
  .alert-metric-grid { grid-template-columns: 1fr; }
  .metric-card { min-height: 126px; }
  .welcome-card { padding: 22px 18px; }
  .welcome-card h1 { font-size: 2.2rem; }
  .progress-card,
  .table-card { padding: 18px; border-radius: 18px; }
  .setup-item .btn { margin-left: 0; width: 100%; }
  .setup-item .btn-icon-only { width: 100%; }
}

/* Ajustes de especificidade contra regras legadas dos cards. */
.metric-card span.metric-card-icon {
  color: var(--mint);
  font-size: inherit;
  font-weight: inherit;
  text-transform: none;
  letter-spacing: 0;
}
.alert-metric.has-warning .alert-metric-copy b,
.alert-metric.has-danger .alert-metric-copy b { background: transparent; }

/* Etapa 8 · Relatórios de estoque */
.report-filter-card{padding:20px;margin-bottom:18px}.report-filter-form{display:grid;grid-template-columns:minmax(220px,1.35fr) repeat(2,minmax(140px,.75fr)) minmax(180px,1fr) minmax(180px,1fr);gap:14px;align-items:end}.report-filter-form .field{margin:0}.report-type-field{grid-column:span 1}.report-product-field,.report-search-field{grid-column:span 2}.report-filter-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap;min-height:44px}.report-metric-grid{margin-bottom:18px}.report-result-card{overflow:hidden}.report-result-card .table-card-head{align-items:flex-start;gap:18px}.report-result-card .table-card-head p{max-width:700px;margin:.35rem 0 0;color:var(--muted);font-size:.82rem;line-height:1.55}.report-filter-summary{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.report-filter-summary span{display:inline-flex;align-items:center;min-height:28px;padding:5px 9px;border:1px solid var(--border);border-radius:999px;background:rgb(var(--icon-rgb)/.045);color:var(--muted);font-size:.7rem;white-space:nowrap}.report-table{max-height:min(65vh,720px);overflow:auto}.report-table table{min-width:980px}.report-table thead th{position:sticky;top:0;z-index:2;background:var(--surface-2);box-shadow:0 1px 0 var(--border)}.text-right{text-align:right!important}.btn-icon{width:17px;height:17px;flex:0 0 17px}
@media(max-width:1180px){.report-filter-form{grid-template-columns:repeat(3,minmax(0,1fr))}.report-type-field,.report-product-field,.report-search-field{grid-column:span 1}.report-filter-actions{grid-column:span 3}}
@media(max-width:760px){.report-filter-card{padding:15px}.report-filter-form{grid-template-columns:1fr}.report-type-field,.report-product-field,.report-search-field,.report-filter-actions{grid-column:1}.report-filter-actions .btn{flex:1}.report-result-card .table-card-head{display:grid}.report-filter-summary{justify-content:flex-start}.report-metric-grid{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.report-metric-grid{grid-template-columns:1fr}.report-filter-actions{display:grid;grid-template-columns:1fr 1fr}}

/* Etapa 9 · Fornecedores completo */
.supplier-metric-grid,.supplier-detail-metrics{margin-bottom:18px}.supplier-filter{display:grid;grid-template-columns:minmax(280px,1.6fr) minmax(160px,.45fr) auto;gap:14px;align-items:end;padding:18px;margin-bottom:18px}.supplier-filter .field{margin:0}.supplier-filter .filter-actions{padding-bottom:1px}.supplier-table-card{overflow:hidden}.supplier-table{min-width:1050px}.supplier-name-cell{display:flex;align-items:center;gap:11px;min-width:230px}.supplier-avatar{width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;border-radius:12px;background:rgb(var(--button-rgb)/.12);border:1px solid rgb(var(--button-rgb)/.22);color:var(--mint);font-weight:950}.supplier-name-cell>div{display:grid;gap:2px}.supplier-name-cell small,.table-secondary-strong+.block-small{color:var(--muted);font-size:.7rem}.table-secondary-strong{font-size:.78rem}.table-actions-inline{display:flex;align-items:center;justify-content:flex-end;gap:10px;white-space:nowrap}.table-action.subtle{color:var(--muted)}
.supplier-form-stack{display:grid;gap:16px;padding-bottom:78px}.supplier-form-card{margin:0}.supplier-address-grid{display:grid;grid-template-columns:minmax(120px,.45fr) minmax(260px,1.4fr) minmax(100px,.35fr) minmax(150px,.7fr);gap:13px}.supplier-address-grid .field{margin:0}.supplier-street-field{grid-column:span 2}.supplier-city-field{grid-column:span 2}.supplier-status-field{max-width:360px}.form-inline-note{display:flex;align-items:center;gap:10px;margin-top:14px;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:rgb(var(--icon-rgb)/.04);color:var(--muted);font-size:.75rem}.form-inline-note>.ui-icon{width:20px;height:20px;color:var(--mint);flex:0 0 20px}.form-inline-note a{margin-left:auto;color:var(--mint);font-weight:850}
.supplier-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}.supplier-info-card{padding:20px;min-width:0}.supplier-detail-list{display:grid}.supplier-detail-list>div{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:11px 0;border-bottom:1px solid var(--border)}.supplier-detail-list>div:last-child{border-bottom:0}.supplier-detail-list span{color:var(--muted);font-size:.72rem}.supplier-detail-list strong{max-width:68%;text-align:right;font-size:.78rem;overflow-wrap:anywhere}.supplier-detail-list a{color:var(--mint)}.supplier-address-block{display:flex;gap:14px;align-items:flex-start;padding-top:5px}.supplier-address-icon{width:44px;height:44px;flex:0 0 44px;display:grid;place-items:center;border-radius:13px;background:rgb(var(--button-rgb)/.1);color:var(--mint);border:1px solid rgb(var(--button-rgb)/.18)}.supplier-address-icon .ui-icon{width:23px;height:23px}.supplier-address-block>div{display:grid;gap:4px}.supplier-address-block span:not(.supplier-address-icon){color:var(--muted);font-size:.75rem}.supplier-notes{margin-bottom:0;overflow-wrap:anywhere}.supplier-section-card{margin-bottom:16px;overflow:hidden}.supplier-section-card .table-card-head p{max-width:720px;margin:.35rem 0 0;color:var(--muted);font-size:.78rem}.supplier-section-card table{min-width:900px}.code-accent{color:var(--mint);font-family:ui-monospace,SFMono-Regular,Consolas,monospace}
.supplier-document-upload{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:12px;align-items:center;padding:0 20px 18px}.supplier-upload-zone{min-height:100px;grid-template-columns:auto 1fr;grid-template-rows:auto auto;text-align:left;justify-items:start;align-content:center}.supplier-upload-zone .upload-zone-icon{grid-row:1/3;width:46px;height:46px}.supplier-upload-zone .upload-zone-icon .ui-icon{width:24px;height:24px}.supplier-document-list{display:grid;border-top:1px solid var(--border)}.supplier-document-item{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;align-items:center;padding:13px 20px;border-bottom:1px solid var(--border)}.supplier-document-item:last-child{border-bottom:0}.supplier-document-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:11px;background:var(--surface-2);color:var(--mint)}.supplier-document-icon .ui-icon{width:21px;height:21px}.supplier-document-item>div:not(.supplier-document-actions){display:grid;gap:3px;min-width:0}.supplier-document-item strong{overflow-wrap:anywhere}.supplier-document-item small{color:var(--muted);font-size:.7rem}.supplier-document-actions{display:flex;align-items:center;gap:8px}.supplier-document-actions form{margin:0}.empty-inline{display:flex;align-items:center;gap:12px;padding:22px 20px;color:var(--muted)}.empty-inline>span{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:var(--surface-2);color:var(--muted)}.empty-inline>span .ui-icon{width:22px;height:22px}.empty-inline>div{display:grid;gap:3px}.empty-inline strong{color:var(--text)}.empty-inline small{font-size:.72rem}
.supplier-financial-ready{display:grid;grid-template-columns:52px 1fr;gap:16px;align-items:center;padding:20px;margin-bottom:16px;border-style:dashed}.supplier-financial-icon{width:50px;height:50px;display:grid;place-items:center;border-radius:15px;background:rgb(var(--button-rgb)/.1);color:var(--mint)}.supplier-financial-icon .ui-icon{width:26px;height:26px}.supplier-financial-ready h2{margin:3px 0 5px}.supplier-financial-ready p{margin:0;color:var(--muted);line-height:1.55}.supplier-financial-ready p strong{color:var(--text)}.supplier-danger-zone{margin-top:0}
@media(max-width:1100px){.supplier-filter{grid-template-columns:minmax(240px,1fr) minmax(150px,.45fr)}.supplier-filter .filter-actions{grid-column:1/-1}.supplier-address-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.supplier-street-field,.supplier-city-field{grid-column:span 1}.supplier-document-upload{grid-template-columns:1fr}.supplier-document-upload>.btn{justify-self:start}}
@media(max-width:760px){.supplier-profile-grid{grid-template-columns:1fr}.supplier-filter{grid-template-columns:1fr;padding:15px}.supplier-filter .filter-actions{grid-column:1}.supplier-address-grid{grid-template-columns:1fr}.supplier-address-grid .supplier-street-field,.supplier-address-grid .supplier-city-field{grid-column:1}.supplier-document-item{grid-template-columns:38px minmax(0,1fr)}.supplier-document-actions{grid-column:2;justify-content:flex-start}.supplier-document-upload{padding:0 15px 15px}.supplier-upload-zone{grid-template-columns:1fr;grid-template-rows:auto;text-align:center;justify-items:center}.supplier-upload-zone .upload-zone-icon{grid-row:auto}.supplier-financial-ready{grid-template-columns:1fr}.supplier-detail-list>div{display:grid;gap:4px}.supplier-detail-list strong{max-width:none;text-align:left}.form-inline-note{align-items:flex-start;flex-wrap:wrap}.form-inline-note a{margin-left:30px}}
@media(max-width:520px){.supplier-document-upload>.btn{width:100%}.supplier-document-actions{display:grid;grid-template-columns:1fr auto;width:100%}.supplier-document-actions .btn{width:100%}.supplier-detail-metrics,.supplier-metric-grid{grid-template-columns:1fr}}
.related-supplier-links{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.related-supplier-links a,.related-supplier-links>span{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:6px 10px;border:1px solid var(--border);border-radius:999px;background:var(--surface-2);font-size:.74rem}.related-supplier-links a{color:var(--mint)}.related-supplier-links .ui-icon{width:16px;height:16px}

/* SGE 0.11.0 — Etapa 10: Clientes */
.customer-metric-grid,.customer-detail-metrics{margin-bottom:18px}
.customer-filter{display:grid;grid-template-columns:minmax(260px,1.5fr) minmax(145px,.4fr) minmax(175px,.5fr) auto;gap:14px;align-items:end;padding:18px;margin-bottom:18px}.customer-filter .field{margin:0}.customer-filter .filter-actions{padding-bottom:1px}
.customer-table-card{overflow:hidden}.customer-table{min-width:1080px}.customer-name-cell{display:flex;align-items:center;gap:11px;min-width:230px}.customer-avatar{width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;border-radius:12px;background:rgb(var(--button-rgb)/.12);border:1px solid rgb(var(--button-rgb)/.22);color:var(--mint);font-weight:950}.customer-name-cell>div{display:grid;gap:2px}.customer-name-cell small{color:var(--muted);font-size:.7rem}
.customer-form-stack{display:grid;gap:16px;padding-bottom:78px}.customer-form-card{margin:0}.customer-address-grid{display:grid;grid-template-columns:minmax(120px,.45fr) minmax(260px,1.4fr) minmax(100px,.35fr) minmax(150px,.7fr);gap:13px}.customer-address-grid .field{margin:0}.customer-street-field{grid-column:span 2}.customer-city-field{grid-column:span 2}.customer-status-field{max-width:360px}
.customer-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}.customer-info-card{padding:20px;min-width:0}.customer-detail-list{display:grid}.customer-detail-list>div{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:11px 0;border-bottom:1px solid var(--border)}.customer-detail-list>div:last-child{border-bottom:0}.customer-detail-list span{color:var(--muted);font-size:.72rem}.customer-detail-list strong{max-width:68%;text-align:right;font-size:.78rem;overflow-wrap:anywhere}.customer-detail-list a{color:var(--mint)}.customer-address-block{display:flex;gap:14px;align-items:flex-start;padding-top:5px}.customer-address-icon{width:44px;height:44px;flex:0 0 44px;display:grid;place-items:center;border-radius:13px;background:rgb(var(--button-rgb)/.1);color:var(--mint);border:1px solid rgb(var(--button-rgb)/.18)}.customer-address-icon .ui-icon{width:23px;height:23px}.customer-address-block>div{display:grid;gap:4px}.customer-address-block span:not(.customer-address-icon){color:var(--muted);font-size:.75rem}.customer-notes{margin-bottom:0;overflow-wrap:anywhere}
.customer-credit-card{margin-bottom:16px;overflow:hidden}.customer-credit-card .table-card-head p{max-width:760px;margin:.35rem 0 0;color:var(--muted);font-size:.78rem}.customer-credit-form{display:grid;gap:15px;padding:0 20px 20px}.credit-toggle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.toggle-card{position:relative;display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;align-items:start;padding:15px;border:1px solid var(--border);border-radius:14px;background:rgb(var(--surface-rgb)/.46);cursor:pointer}.toggle-card input{position:absolute;opacity:0;pointer-events:none}.toggle-visual{width:40px;height:23px;border-radius:999px;background:var(--surface-3);border:1px solid var(--border);position:relative;transition:.2s}.toggle-visual:after{content:"";position:absolute;width:17px;height:17px;left:2px;top:2px;border-radius:50%;background:var(--muted);transition:.2s}.toggle-card input:checked+.toggle-visual{background:rgb(var(--button-rgb)/.18);border-color:rgb(var(--button-rgb)/.45)}.toggle-card input:checked+.toggle-visual:after{left:19px;background:var(--mint)}.toggle-card>span:last-child{display:grid;gap:4px}.toggle-card strong{font-size:.8rem}.toggle-card small{color:var(--muted);font-size:.72rem;line-height:1.45}.danger-toggle input:checked+.toggle-visual{background:rgba(255,107,107,.12);border-color:rgba(255,107,107,.42)}.danger-toggle input:checked+.toggle-visual:after{background:var(--danger)}
.customer-future-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}.customer-integration-card{display:grid;grid-template-columns:52px 1fr;gap:16px;align-items:start;padding:20px;border-style:dashed}.customer-integration-icon{width:50px;height:50px;display:grid;place-items:center;border-radius:15px;background:rgb(var(--button-rgb)/.1);color:var(--mint)}.customer-integration-icon .ui-icon{width:26px;height:26px}.customer-integration-card h2{margin:3px 0 5px}.customer-integration-card p{margin:0;color:var(--muted);line-height:1.55}.customer-integration-card p strong{color:var(--text)}
.customer-section-card{margin-bottom:16px;overflow:hidden}.customer-section-card .table-card-head p{max-width:720px;margin:.35rem 0 0;color:var(--muted);font-size:.78rem}.customer-document-upload{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:12px;align-items:center;padding:0 20px 18px}.customer-upload-zone{min-height:100px;grid-template-columns:auto 1fr;grid-template-rows:auto auto;text-align:left;justify-items:start;align-content:center}.customer-upload-zone .upload-zone-icon{grid-row:1/3;width:46px;height:46px}.customer-upload-zone .upload-zone-icon .ui-icon{width:24px;height:24px}.customer-document-list{display:grid;border-top:1px solid var(--border)}.customer-document-item{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;align-items:center;padding:13px 20px;border-bottom:1px solid var(--border)}.customer-document-item:last-child{border-bottom:0}.customer-document-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:11px;background:var(--surface-2);color:var(--mint)}.customer-document-icon .ui-icon{width:21px;height:21px}.customer-document-item>div:not(.customer-document-actions){display:grid;gap:3px;min-width:0}.customer-document-item strong{overflow-wrap:anywhere}.customer-document-item small{color:var(--muted);font-size:.7rem}.customer-document-actions{display:flex;align-items:center;gap:8px}.customer-document-actions form{margin:0}.customer-danger-zone{margin-top:0}
@media(max-width:1100px){.customer-filter{grid-template-columns:minmax(240px,1fr) minmax(145px,.45fr) minmax(165px,.5fr)}.customer-filter .filter-actions{grid-column:1/-1}.customer-address-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.customer-street-field,.customer-city-field{grid-column:span 1}.customer-document-upload{grid-template-columns:1fr}.customer-document-upload>.btn{justify-self:start}}
@media(max-width:760px){.customer-profile-grid,.customer-future-grid,.credit-toggle-grid{grid-template-columns:1fr}.customer-filter{grid-template-columns:1fr;padding:15px}.customer-filter .filter-actions{grid-column:1}.customer-address-grid{grid-template-columns:1fr}.customer-address-grid .customer-street-field,.customer-address-grid .customer-city-field{grid-column:1}.customer-document-item{grid-template-columns:38px minmax(0,1fr)}.customer-document-actions{grid-column:2;justify-content:flex-start}.customer-document-upload{padding:0 15px 15px}.customer-upload-zone{grid-template-columns:1fr;grid-template-rows:auto;text-align:center;justify-items:center}.customer-upload-zone .upload-zone-icon{grid-row:auto}.customer-integration-card{grid-template-columns:1fr}.customer-detail-list>div{display:grid;gap:4px}.customer-detail-list strong{max-width:none;text-align:left}.customer-credit-form{padding:0 15px 15px}}
@media(max-width:520px){.customer-document-upload>.btn{width:100%}.customer-document-actions{display:grid;grid-template-columns:1fr auto;width:100%}.customer-document-actions .btn{width:100%}.customer-detail-metrics,.customer-metric-grid{grid-template-columns:1fr}}
.customer-block-reason{display:flex;gap:12px;align-items:flex-start;margin:0 20px 16px;padding:13px 14px;border:1px solid rgba(255,107,107,.22);border-radius:13px;background:rgba(255,107,107,.055)}.customer-block-reason>span{width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;border-radius:11px;background:rgba(255,107,107,.09);color:var(--danger)}.customer-block-reason>span .ui-icon{width:20px;height:20px}.customer-block-reason>div{display:grid;gap:3px}.customer-block-reason strong{font-size:.78rem}.customer-block-reason p{margin:0;color:var(--muted);font-size:.75rem;line-height:1.45;overflow-wrap:anywhere}
@media(max-width:760px){.customer-block-reason{margin:0 15px 15px}}


/* SGE 0.11.1 — HOTFIX estrutural de contenção de cards e tabelas */
/*
 * Regra permanente: nenhum conteúdo textual deve tocar/ultrapassar a borda
 * de um card. Tabelas largas permanecem roláveis dentro do próprio card,
 * sem usar margens negativas para simular edge-to-edge.
 */
.dashboard-content,
.dashboard-content > *,
.page-head,
.page-head > *,
.surface-card,
.metric-card,
.table-card,
.report-result-card,
.customer-table-card,
.supplier-table-card,
.customer-section-card,
.customer-credit-card,
.responsive-table,
.report-table {
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
}

.page-head {
  flex-wrap: wrap;
}
.page-head > div:first-child {
  min-width: 0;
  flex: 1 1 360px;
}
.page-head .page-actions,
.page-head .button-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-end;
  max-width: 100%;
}

.surface-card h1,
.surface-card h2,
.surface-card h3,
.surface-card p,
.surface-card span,
.surface-card strong,
.surface-card small,
.metric-card h1,
.metric-card h2,
.metric-card h3,
.metric-card p,
.metric-card span,
.metric-card strong,
.metric-card small,
.page-head h1,
.page-head h2,
.page-head h3,
.page-head p,
th,
td {
  overflow-wrap: break-word;
  word-break: normal;
  hyphens: none;
}

/* Cards que contêm tabelas sempre recebem uma área interna segura. */
.table-card,
.report-result-card,
.customer-table-card,
.supplier-table-card {
  overflow: hidden;
  padding: 20px 24px 24px;
}

.table-card > .table-card-head,
.report-result-card > .table-card-head {
  min-width: 0;
  padding: 0 0 18px;
}

/*
 * Importante: sobrescreve a regra legada .responsive-table com margin negativa.
 * A rolagem horizontal fica dentro do card e nunca corta primeira/última coluna.
 */
.table-card > .responsive-table,
.report-result-card > .responsive-table,
.customer-table-card > .responsive-table,
.supplier-table-card > .responsive-table,
.responsive-table.report-table {
  width: 100%;
  max-width: 100%;
  margin: 0 !important;
  overflow-x: auto;
  overflow-y: auto;
  border: 1px solid var(--border);
  border-radius: 13px;
  scrollbar-width: thin;
  scrollbar-color: rgb(var(--icon-rgb) / .28) transparent;
}

/* Respiro obrigatório nas extremidades de qualquer tabela rolável. */
.responsive-table > table thead th:first-child,
.responsive-table > table tbody td:first-child {
  padding-left: 20px !important;
}
.responsive-table > table thead th:last-child,
.responsive-table > table tbody td:last-child {
  padding-right: 20px !important;
}

/* Cabeçalhos de relatório nunca ficam colados à borda do card. */
.report-result-card > .table-card-head > div,
.report-result-card .report-filter-summary,
.table-card > .table-card-head > div {
  min-width: 0;
}
.report-result-card > .table-card-head h2,
.report-result-card > .table-card-head p,
.table-card > .table-card-head h2,
.table-card > .table-card-head p {
  overflow-wrap: break-word;
  word-break: normal;
}

/* Grids/cards podem encolher sem empurrar ou cortar os irmãos. */
.metric-grid > *,
.customer-metric-grid > *,
.report-metric-grid > *,
.customer-filter > *,
.report-filter-form > * {
  min-width: 0;
}
.metric-card-copy {
  min-width: 0;
}
.metric-card-copy > * {
  max-width: 100%;
  overflow-wrap: break-word;
  word-break: normal;
}

@media (max-width: 760px) {
  .table-card,
  .report-result-card,
  .customer-table-card,
  .supplier-table-card {
    padding: 16px 16px 18px;
  }

  .responsive-table > table thead th:first-child,
  .responsive-table > table tbody td:first-child {
    padding-left: 16px !important;
  }
  .responsive-table > table thead th:last-child,
  .responsive-table > table tbody td:last-child {
    padding-right: 16px !important;
  }

  .page-head .page-actions,
  .page-head .button-row {
    width: 100%;
    justify-content: flex-start;
  }
}

/* SGE 0.12.0 — Etapa 11: Compras */
.purchase-metric-grid,.purchase-detail-metrics{margin-bottom:18px}
.purchase-filter{display:grid;grid-template-columns:minmax(260px,1.4fr) minmax(150px,.5fr) minmax(200px,.8fr) 150px 150px auto;gap:14px;align-items:end;padding:18px;margin-bottom:18px}.purchase-filter .field{margin:0}.purchase-filter .filter-actions{padding-bottom:1px}.purchase-filter-search{min-width:0}
.purchase-table-card,.purchase-items-card{overflow:hidden;padding:20px 24px 24px;min-width:0;max-width:100%;box-sizing:border-box}.purchase-table-card>.responsive-table,.purchase-items-card>.responsive-table{width:100%;max-width:100%;margin:0!important;overflow:auto;border:1px solid var(--border);border-radius:13px}.purchase-table{min-width:1180px}.purchase-items-table{min-width:820px}
.purchase-form{display:grid;gap:16px;padding-bottom:82px}.purchase-form .form-card{margin:0;min-width:0}.purchase-item-list{display:grid;gap:11px}.purchase-item-row{display:grid;grid-template-columns:minmax(280px,1.7fr) minmax(110px,.45fr) minmax(150px,.6fr) minmax(110px,.4fr) 42px;gap:11px;align-items:end;padding:14px;border:1px solid var(--border);border-radius:15px;background:rgb(var(--surface-rgb)/.38);min-width:0}.purchase-item-row .field{margin:0;min-width:0}.purchase-item-select{min-width:0}.purchase-line-total{display:grid;gap:6px;align-self:center;min-width:0}.purchase-line-total span{color:var(--muted-2);font-size:.68rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.purchase-line-total strong{font-size:.9rem;overflow-wrap:anywhere}.purchase-row-remove{align-self:center}
.purchase-payable-toggle{margin-top:14px}.purchase-payable-fields{margin-top:12px;max-width:360px}.purchase-payable-fields[hidden]{display:none!important}.purchase-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:16px}.purchase-summary>div{display:grid;gap:5px;padding:13px 14px;border:1px solid var(--border);border-radius:13px;background:var(--bg-soft);min-width:0}.purchase-summary span{color:var(--muted-2);font-size:.68rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.purchase-summary strong{font-size:.92rem;overflow-wrap:anywhere}.purchase-summary-grand{border-color:rgb(var(--button-rgb)/.28)!important;background:rgb(var(--button-rgb)/.07)!important}.purchase-summary-grand strong{color:var(--mint);font-size:1.05rem}.purchase-receive-now .notice{margin-top:14px}
.purchase-status-metric{font-size:clamp(1.15rem,2vw,1.55rem)!important}.purchase-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}.purchase-info-card{padding:20px;min-width:0}.purchase-info-card .table-card-head{padding-bottom:12px}.purchase-detail-list{display:grid}.purchase-detail-list>div{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:11px 0;border-bottom:1px solid var(--border);min-width:0}.purchase-detail-list>div:last-child{border-bottom:0}.purchase-detail-list span{color:var(--muted);font-size:.72rem}.purchase-detail-list strong{max-width:68%;text-align:right;font-size:.78rem;overflow-wrap:anywhere;word-break:break-word}.purchase-detail-list a{color:var(--mint)}.purchase-total-row strong{color:var(--mint);font-size:.96rem}.purchase-notes{margin-top:15px;padding-top:14px;border-top:1px solid var(--border)}.purchase-notes>span{display:block;color:var(--muted-2);font-size:.68rem;font-weight:850;text-transform:uppercase;letter-spacing:.05em;margin-bottom:7px}.purchase-notes p{margin:0;color:var(--muted);line-height:1.55;overflow-wrap:anywhere}
.purchase-items-card{margin-bottom:16px}.purchase-items-card>.table-card-head{padding:0 0 18px}.purchase-action-card{display:grid;grid-template-columns:56px minmax(0,1fr) minmax(300px,.75fr);gap:18px;align-items:center;padding:20px;margin-bottom:16px;min-width:0}.purchase-action-icon,.purchase-integration-icon{width:54px;height:54px;display:grid;place-items:center;border-radius:16px;background:rgb(var(--button-rgb)/.1);border:1px solid rgb(var(--button-rgb)/.2);color:var(--mint)}.purchase-action-icon .ui-icon,.purchase-integration-icon .ui-icon{width:28px;height:28px}.purchase-action-card h2{margin:4px 0 5px}.purchase-action-card p{margin:0;color:var(--muted);line-height:1.5}.purchase-action-card form{display:grid;grid-template-columns:minmax(190px,1fr) auto;gap:10px;align-items:end;min-width:0}.purchase-action-card form .field{margin:0}
.purchase-integration-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}.purchase-integration-card{display:grid;grid-template-columns:54px minmax(0,1fr);gap:15px;align-items:start;padding:20px;min-width:0}.purchase-integration-card h2{margin:4px 0 5px}.purchase-integration-card p{margin:0 0 9px;color:var(--muted);line-height:1.55;overflow-wrap:anywhere}.purchase-integration-card small{display:block;color:var(--muted-2);line-height:1.45}.purchase-cancelled-note{margin-bottom:16px}.purchase-cancel-zone{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.75fr);gap:20px;align-items:end;padding:20px}.purchase-cancel-zone h2{margin:5px 0}.purchase-cancel-zone p{margin:0;color:var(--muted);line-height:1.5}.purchase-cancel-zone form{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:10px;align-items:end;min-width:0}.purchase-cancel-zone .field{margin:0}
.purchase-table-card,.purchase-items-card,.purchase-info-card,.purchase-action-card,.purchase-integration-card,.purchase-cancel-zone,.purchase-filter,.purchase-item-row,.purchase-summary>div{min-width:0;max-width:100%;box-sizing:border-box}.purchase-table-card h1,.purchase-table-card h2,.purchase-table-card h3,.purchase-table-card p,.purchase-table-card span,.purchase-table-card strong,.purchase-items-card h1,.purchase-items-card h2,.purchase-items-card h3,.purchase-items-card p,.purchase-items-card span,.purchase-items-card strong,.purchase-info-card *,.purchase-action-card *,.purchase-integration-card *,.purchase-cancel-zone *{overflow-wrap:anywhere}
@media(max-width:1250px){.purchase-filter{grid-template-columns:repeat(3,minmax(0,1fr))}.purchase-filter-search{grid-column:span 2}.purchase-filter .filter-actions{grid-column:1/-1}.purchase-item-row{grid-template-columns:minmax(260px,1.6fr) minmax(110px,.45fr) minmax(150px,.65fr) minmax(110px,.45fr) 42px}}
@media(max-width:920px){.purchase-item-row{grid-template-columns:minmax(0,1fr) minmax(110px,.35fr) minmax(150px,.5fr) 42px}.purchase-line-total{grid-column:1/4;display:flex;justify-content:flex-end;gap:10px;align-items:center}.purchase-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.purchase-action-card{grid-template-columns:54px minmax(0,1fr)}.purchase-action-card form{grid-column:1/-1}.purchase-cancel-zone{grid-template-columns:1fr}.purchase-cancel-zone form{grid-template-columns:minmax(0,1fr) auto}}
@media(max-width:760px){.purchase-filter{grid-template-columns:1fr;padding:15px}.purchase-filter-search,.purchase-filter .filter-actions{grid-column:1}.purchase-profile-grid,.purchase-integration-grid{grid-template-columns:1fr}.purchase-table-card,.purchase-items-card{padding:16px}.purchase-item-row{grid-template-columns:1fr 1fr}.purchase-item-select{grid-column:1/-1}.purchase-line-total{grid-column:1;justify-content:flex-start}.purchase-row-remove{grid-column:2;justify-self:end}.purchase-action-card{grid-template-columns:48px minmax(0,1fr);padding:16px}.purchase-action-icon,.purchase-integration-icon{width:48px;height:48px}.purchase-action-card form{grid-template-columns:1fr}.purchase-cancel-zone form{grid-template-columns:1fr}.purchase-cancel-zone .btn{width:100%}.purchase-detail-list>div{display:grid;gap:4px}.purchase-detail-list strong{max-width:none;text-align:left}}
@media(max-width:520px){.purchase-summary{grid-template-columns:1fr}.purchase-item-row{grid-template-columns:1fr}.purchase-item-select,.purchase-line-total,.purchase-row-remove{grid-column:1}.purchase-row-remove{justify-self:end}.purchase-detail-metrics,.purchase-metric-grid{grid-template-columns:1fr}}
.purchase-payable-metrics{margin-bottom:18px}.purchase-payable-filter{display:grid;grid-template-columns:minmax(260px,1.4fr) minmax(160px,.5fr) minmax(180px,.55fr) auto;gap:14px;align-items:end;padding:18px;margin-bottom:16px}.purchase-payable-filter .field{margin:0}.purchase-payable-table-card{overflow:hidden;padding:20px 24px 24px;margin-top:16px;min-width:0;max-width:100%;box-sizing:border-box}.purchase-payable-table-card>.responsive-table{width:100%;max-width:100%;margin:0!important;overflow:auto;border:1px solid var(--border);border-radius:13px}.purchase-payable-table{min-width:1050px}
@media(max-width:900px){.purchase-payable-filter{grid-template-columns:repeat(2,minmax(0,1fr))}.purchase-payable-filter .filter-actions{grid-column:1/-1}}
@media(max-width:760px){.purchase-payable-filter{grid-template-columns:1fr;padding:15px}.purchase-payable-filter .filter-actions{grid-column:1}.purchase-payable-table-card{padding:16px}}
@media(max-width:520px){.purchase-payable-metrics{grid-template-columns:1fr}}

/* SGE 0.13.0 — Etapa 12: Orçamentos e Pedidos */
.commercial-metric-grid,.commercial-detail-metrics{margin-bottom:18px}.commercial-filter{display:grid;grid-template-columns:minmax(260px,1.5fr) minmax(170px,.45fr) auto;gap:14px;align-items:end;padding:18px;margin-bottom:18px}.commercial-filter .field{margin:0}.commercial-filter .filter-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.commercial-form{display:grid;gap:16px;padding-bottom:78px}.commercial-form .form-card{margin:0}.commercial-item-list{display:grid;gap:12px}.commercial-item-row{display:grid;grid-template-columns:minmax(270px,1.8fr) minmax(105px,.45fr) minmax(145px,.65fr) minmax(120px,.45fr) 42px;gap:12px;align-items:end;padding:14px;border:1px solid var(--border);border-radius:15px;background:rgb(var(--surface-rgb)/.45);min-width:0}.commercial-item-row>.field{margin:0;min-width:0}.commercial-item-select small{display:block;min-height:1.1em;color:var(--muted);line-height:1.35;overflow-wrap:anywhere}.commercial-line-total{display:grid;gap:5px;align-self:center;min-width:0}.commercial-line-total span{color:var(--muted-2);font-size:.68rem;text-transform:uppercase;letter-spacing:.05em}.commercial-line-total strong{font-size:.86rem;overflow-wrap:anywhere}.commercial-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px}.commercial-summary>div{display:grid;gap:4px;padding:13px 14px;border:1px solid var(--border);border-radius:13px;background:var(--surface-2);min-width:0}.commercial-summary span{color:var(--muted);font-size:.72rem}.commercial-summary strong{font-size:.92rem;overflow-wrap:anywhere}.commercial-summary-grand{border-color:rgb(var(--button-rgb)/.3)!important;background:rgb(var(--button-rgb)/.07)!important}.commercial-summary-grand strong{color:var(--mint);font-size:1.05rem}.commercial-reserve-toggle{margin:0;min-height:100%}.commercial-document-card{margin-bottom:16px}.commercial-two-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}.commercial-info-card{padding:20px;min-width:0}.commercial-timeline{display:grid;gap:0}.commercial-timeline>div{display:grid;grid-template-columns:18px minmax(0,1fr);gap:10px;position:relative;padding:0 0 14px}.commercial-timeline>div:last-child{padding-bottom:0}.commercial-timeline>div>span{width:10px;height:10px;margin-top:5px;border-radius:50%;background:var(--mint);box-shadow:0 0 0 4px rgb(var(--button-rgb)/.09)}.commercial-timeline>div:not(:last-child)>span:after{content:"";position:absolute;left:4px;top:18px;bottom:0;width:1px;background:var(--border)}.commercial-timeline p{display:grid;gap:3px;margin:0;min-width:0}.commercial-timeline strong{font-size:.78rem;overflow-wrap:anywhere}.commercial-timeline small{color:var(--muted);font-size:.68rem;overflow-wrap:anywhere}.commercial-reservation-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px;margin-bottom:16px}.commercial-reservation-card>div{display:grid;grid-template-columns:52px minmax(0,1fr);gap:14px;align-items:center;min-width:0}.commercial-reservation-icon{width:50px;height:50px;display:grid;place-items:center;border-radius:15px;background:rgb(var(--button-rgb)/.1);border:1px solid rgb(var(--button-rgb)/.2);color:var(--mint)}.commercial-reservation-icon .ui-icon{width:27px;height:27px}.commercial-reservation-card h2{margin:3px 0 5px}.commercial-reservation-card p{margin:0;color:var(--muted);font-size:.78rem;line-height:1.5;overflow-wrap:anywhere}.commercial-reservation-card form{flex:0 0 auto}.commercial-document-card table{min-width:920px}
@media(max-width:1050px){.commercial-item-row{grid-template-columns:minmax(240px,1.4fr) minmax(100px,.45fr) minmax(140px,.6fr) 42px}.commercial-line-total{grid-column:1/4;grid-row:2}.commercial-filter{grid-template-columns:1fr 180px}.commercial-filter .filter-actions{grid-column:1/-1}}
@media(max-width:760px){.commercial-filter{grid-template-columns:1fr;padding:15px}.commercial-filter .filter-actions{grid-column:1}.commercial-item-row{grid-template-columns:1fr 1fr;padding:12px}.commercial-item-select{grid-column:1/-1}.commercial-item-row>.icon-action{grid-column:2;justify-self:end}.commercial-line-total{grid-column:1;grid-row:auto}.commercial-summary{grid-template-columns:1fr}.commercial-two-grid{grid-template-columns:1fr}.commercial-reservation-card{display:grid}.commercial-reservation-card>div{grid-template-columns:46px minmax(0,1fr)}.commercial-reservation-icon{width:44px;height:44px}.commercial-reservation-card form,.commercial-reservation-card .btn{width:100%}}
@media(max-width:520px){.commercial-item-row{grid-template-columns:1fr}.commercial-item-select,.commercial-line-total,.commercial-item-row>.icon-action{grid-column:1}.commercial-item-row>.icon-action{justify-self:end}.commercial-metric-grid,.commercial-detail-metrics{grid-template-columns:1fr}}
.customer-commercial-history{margin-bottom:16px}

/* Cadastro assistido por CPF/CNPJ/CEP */
.autofill-populated{animation:sge-autofill-populated .9s ease}
@keyframes sge-autofill-populated{0%{box-shadow:0 0 0 2px rgb(var(--button-rgb)/.34)}100%{box-shadow:0 0 0 0 transparent}}

/* Hotfix 0.13.3 — tipografia resiliente em cards e cabeçalhos compactos */
/*
 * Não usar overflow-wrap:anywhere em textos de interface: ele pode partir
 * palavras normais no meio. Cabeçalhos compactos agora usam flexbox e dão
 * largura real ao título, mantendo chips/status ao lado somente quando couberem.
 */
.section-heading.compact {
  display: flex;
  flex-wrap: wrap;
  grid-template-columns: none;
  align-items: flex-end;
  justify-content: space-between;
  gap: 10px 22px;
  width: 100%;
  min-width: 0;
}
.section-heading.compact > * {
  min-width: 0;
  max-width: 100%;
}
.section-heading.compact > div:first-child {
  flex: 1 1 240px;
}
.section-heading.compact > p {
  flex: 1 1 280px;
}
.section-heading.compact > .status-tag,
.section-heading.compact > .status-pill,
.section-heading.compact > .tenant-chip {
  flex: 0 0 auto;
}
.section-heading.compact h1,
.section-heading.compact h2,
.section-heading.compact h3,
.surface-card h1,
.surface-card h2,
.surface-card h3,
.metric-card h1,
.metric-card h2,
.metric-card h3,
.page-head h1,
.page-head h2,
.page-head h3 {
  overflow-wrap: break-word !important;
  word-break: normal !important;
  hyphens: none !important;
}

/* Textos comuns podem quebrar apenas quando realmente não houver espaço. */
.surface-card p,
.surface-card strong,
.surface-card small,
.surface-card label,
.metric-card p,
.metric-card strong,
.metric-card small,
.customer-detail-list strong,
.supplier-detail-list strong,
.customer-address-block strong,
.customer-address-block span,
.supplier-address-block strong,
.supplier-address-block span {
  overflow-wrap: break-word;
  word-break: normal;
  hyphens: none;
}

/* Os quatro cards da ficha não podem impor largura mínima aos irmãos. */
.customer-profile-grid,
.supplier-profile-grid,
.customer-future-grid,
.credit-toggle-grid {
  align-items: start;
}
.customer-profile-grid > *,
.supplier-profile-grid > *,
.customer-future-grid > *,
.credit-toggle-grid > * {
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
}
.customer-info-card,
.supplier-info-card,
.customer-integration-card,
.customer-credit-card,
.customer-section-card,
.customer-danger-zone {
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
  overflow: visible;
}

/* Campos/valores realmente longos (URL, e-mail, códigos) podem partir se necessário. */
.customer-detail-list a,
.supplier-detail-list a,
code,
.sku-inline,
.table-action {
  overflow-wrap: anywhere;
}

@media (max-width: 760px) {
  .section-heading.compact {
    align-items: flex-start;
    gap: 8px;
  }
  .section-heading.compact > div:first-child,
  .section-heading.compact > p {
    flex-basis: 100%;
  }
}

/* SGE 0.14.0 — Etapa 13: PDV / Vendas */
.sales-metric-grid,.sale-detail-metrics{margin-bottom:18px}
.sales-filter{display:grid;grid-template-columns:minmax(280px,1.45fr) minmax(165px,.55fr) minmax(150px,.45fr) minmax(150px,.45fr) auto;gap:14px;align-items:end;padding:18px;margin-bottom:18px}.sales-filter .field{margin:0;min-width:0}.sales-search{min-width:0}.sales-filter .filter-actions{padding-bottom:1px;white-space:nowrap}
.sales-table-card,.sale-items-card,.sale-receivables-card,.sale-returns-card{overflow:hidden;padding:20px 24px 24px;min-width:0;max-width:100%;box-sizing:border-box}.sales-table-card>.responsive-table,.sale-items-card>.responsive-table,.sale-receivables-card>.responsive-table{width:100%;max-width:100%;margin:0!important;overflow-x:auto;overflow-y:hidden;border:1px solid var(--border);border-radius:13px}.sales-table{min-width:1080px}.sales-table th,.sales-table td{vertical-align:middle}.sales-table th:nth-child(5),.sales-table th:nth-child(7),.sales-table th:nth-child(8){white-space:nowrap}.table-payment-list{display:flex;gap:5px;flex-wrap:wrap}.table-payment-list>span{display:inline-flex;align-items:center;min-height:25px;padding:3px 7px;border-radius:999px;border:1px solid var(--border);background:var(--surface-2);font-size:.67rem;white-space:nowrap}

.pos-form{display:block}.pos-layout{display:grid;grid-template-columns:minmax(0,1.58fr) minmax(330px,.72fr);gap:18px;align-items:start}.pos-main-column,.pos-side-column{display:grid;gap:16px;min-width:0}.pos-side-column{position:sticky;top:92px}.pos-search-card,.pos-cart-card,.pos-customer-card,.pos-payment-card,.pos-summary-card{padding:20px;min-width:0;max-width:100%;box-sizing:border-box}.pos-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}.pos-search-row .field{margin:0;min-width:0}.pos-search-results{display:grid;gap:8px;margin-top:12px}.pos-search-result{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:12px 13px;border:1px solid var(--border);border-radius:13px;background:rgb(var(--surface-rgb)/.42);min-width:0}.pos-search-result>div{display:grid;gap:3px;min-width:0}.pos-search-result strong{overflow-wrap:break-word;word-break:normal}.pos-search-result small{color:var(--muted);line-height:1.4}.pos-search-result .btn{min-width:92px}.pos-requirement{display:inline-flex;margin:2px 3px;padding:4px 8px;border-radius:999px;border:1px solid rgba(247,198,93,.24);background:rgba(247,198,93,.08);white-space:nowrap}
.pos-cart-card>.table-card-head{padding:0 0 16px}.pos-cart{display:grid;gap:10px}.pos-cart-row{display:grid;grid-template-columns:minmax(230px,1.45fr) minmax(95px,.42fr) minmax(130px,.55fr) minmax(105px,.42fr) 42px;gap:10px;align-items:end;padding:13px;border:1px solid var(--border);border-radius:14px;background:rgb(var(--surface-rgb)/.4);min-width:0}.pos-cart-row .field{margin:0;min-width:0}.pos-cart-product{display:grid;gap:3px;align-self:center;min-width:0}.pos-cart-product strong{font-size:.84rem;overflow-wrap:break-word;word-break:normal}.pos-cart-product small{color:var(--muted);font-size:.69rem;line-height:1.4}.pos-cart-line{display:grid;gap:5px;align-self:center;min-width:0}.pos-cart-line span{color:var(--muted-2);font-size:.66rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.pos-cart-line strong{font-size:.87rem;white-space:nowrap}.pos-locked-chip{display:inline-flex;align-items:center;width:max-content;max-width:100%;min-height:27px;padding:4px 8px;border-radius:999px;background:rgb(var(--button-rgb)/.08);border:1px solid rgb(var(--button-rgb)/.2);color:var(--mint);font-size:.66rem;font-weight:850;white-space:nowrap}.pos-cart-empty{margin-top:3px}
.pos-customer-card .field-grid{margin-top:0}.pos-payments{display:grid;gap:10px}.pos-payment-row{display:grid;grid-template-columns:minmax(135px,.72fr) minmax(110px,.46fr) minmax(90px,.35fr) minmax(145px,.55fr) minmax(135px,.52fr) 42px;gap:9px;align-items:end;padding:12px;border:1px solid var(--border);border-radius:13px;background:rgb(var(--surface-rgb)/.38);min-width:0}.pos-payment-row .field{margin:0;min-width:0}.pos-payment-row [hidden]{display:none!important}.payment-installments,.payment-due,.payment-reference{min-width:0}.pos-payment-row .icon-action{align-self:center}.pos-summary-card{display:grid;gap:12px}.pos-summary-card .section-heading{margin-bottom:0}.pos-total-line{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 0;border-bottom:1px solid var(--border);min-width:0}.pos-total-line span{color:var(--muted);font-size:.76rem}.pos-total-line strong{font-size:.95rem;white-space:nowrap}.pos-total-line.total{padding-top:12px;border-bottom:0}.pos-total-line.total span{color:var(--text);font-weight:850}.pos-grand-total{font-size:clamp(1.35rem,2.4vw,1.75rem)!important;color:var(--mint)}.pos-balance{font-weight:900}.pos-balance.is-error{color:var(--danger)}.pos-balance.is-ok{color:var(--mint)}.pos-finish-button{width:100%;min-height:52px;margin-top:2px;font-size:.93rem}.pos-safe-note{display:flex;gap:9px;align-items:flex-start;margin:2px 0 0;color:var(--muted);font-size:.7rem;line-height:1.45}.pos-safe-note .ui-icon{width:17px;height:17px;flex:0 0 17px;color:var(--mint)}

.sale-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}.sale-info-card{padding:20px;min-width:0;max-width:100%;box-sizing:border-box}.sale-payment-list{display:grid;border-top:1px solid var(--border)}.sale-payment-list>div{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--border);min-width:0}.sale-payment-list>div:last-child{border-bottom:0}.sale-payment-list>div>div{display:grid;gap:3px;min-width:0}.sale-payment-list small{color:var(--muted);font-size:.7rem;overflow-wrap:break-word}.sale-payment-list b{white-space:nowrap}.sale-payment-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:rgb(var(--button-rgb)/.1);border:1px solid rgb(var(--button-rgb)/.2);color:var(--mint)}.sale-payment-icon .ui-icon{width:21px;height:21px}.sale-return-list{display:grid;gap:10px}.sale-return-list article{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(150px,.5fr) minmax(220px,1fr) auto;gap:14px;align-items:center;padding:13px 14px;border:1px solid var(--border);border-radius:13px;background:rgb(var(--surface-rgb)/.38);min-width:0}.sale-return-list article>div{display:grid;gap:3px;min-width:0}.sale-return-list article small,.sale-return-list article span{color:var(--muted);font-size:.7rem}.sale-return-list article strong{overflow-wrap:break-word;word-break:normal}.sale-post-action{display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:16px;align-items:center;padding:20px;margin-bottom:16px;min-width:0}.sale-post-action-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:15px;background:rgb(var(--button-rgb)/.1);border:1px solid rgb(var(--button-rgb)/.2);color:var(--mint)}.sale-post-action-icon .ui-icon{width:27px;height:27px}.sale-post-action h2{margin:4px 0 5px}.sale-post-action p{margin:0;color:var(--muted);line-height:1.5}.sale-return-form{display:grid;gap:16px;padding-bottom:78px}.sale-return-details{display:grid;gap:10px}.sale-return-details>div{display:grid;grid-template-columns:minmax(220px,1.2fr) minmax(120px,.45fr) minmax(120px,.45fr);gap:12px;align-items:end;padding:12px;border:1px solid var(--border);border-radius:13px;background:rgb(var(--surface-rgb)/.38);min-width:0}.sale-return-details .field{margin:0}.customer-sales-grid{display:grid;gap:0}.customer-sales-grid .responsive-table{margin-top:0}

/* Cabeçalhos e estados do PDV: sem quebra artificial em desktop. */
@media(min-width:761px){.sales-table th,.sale-items-card th,.sale-receivables-card th{word-break:normal;overflow-wrap:normal}.sales-table th:nth-child(4),.sales-table th:nth-child(5),.sales-table th:nth-child(7),.sales-table th:nth-child(8),.sale-items-card th:nth-child(4),.sale-items-card th:nth-child(5),.sale-items-card th:nth-child(6),.sale-items-card th:nth-child(7){white-space:nowrap}.status-tag{white-space:nowrap}}
@media(max-width:1240px){.sales-filter{grid-template-columns:minmax(260px,1.4fr) minmax(150px,.5fr) repeat(2,minmax(140px,.45fr))}.sales-filter .filter-actions{grid-column:1/-1}.pos-layout{grid-template-columns:minmax(0,1fr) 340px}.pos-payment-row{grid-template-columns:repeat(3,minmax(0,1fr)) 42px}.payment-reference{grid-column:1/3}.pos-payment-row .icon-action{grid-column:4;grid-row:1}}
@media(max-width:980px){.pos-layout{grid-template-columns:1fr}.pos-side-column{position:static}.pos-cart-row{grid-template-columns:minmax(0,1fr) minmax(100px,.35fr) minmax(130px,.5fr) 42px}.pos-cart-line{grid-column:1/4;display:flex;justify-content:flex-end;align-items:center;gap:10px}.sale-return-list article{grid-template-columns:1fr 1fr}.sale-return-list article>.table-action{justify-self:start}.sale-post-action{grid-template-columns:52px minmax(0,1fr)}.sale-post-action>.btn{grid-column:1/-1;width:100%}}
@media(max-width:760px){.sales-filter{grid-template-columns:1fr;padding:15px}.sales-filter .filter-actions{grid-column:1}.sales-table-card,.sale-items-card,.sale-receivables-card,.sale-returns-card{padding:16px}.pos-search-card,.pos-cart-card,.pos-customer-card,.pos-payment-card,.pos-summary-card,.sale-info-card{padding:16px}.pos-search-row{grid-template-columns:1fr}.pos-search-row .btn{width:100%}.pos-cart-row{grid-template-columns:1fr 1fr}.pos-cart-product{grid-column:1/-1}.pos-cart-line{grid-column:1;justify-content:flex-start}.pos-cart-row>.icon-action{grid-column:2;justify-self:end}.pos-payment-row{grid-template-columns:1fr 1fr}.payment-reference{grid-column:1/-1}.pos-payment-row>.icon-action{grid-column:2;grid-row:auto;justify-self:end}.sale-info-grid{grid-template-columns:1fr}.sale-return-list article{grid-template-columns:1fr}.sale-post-action{grid-template-columns:46px minmax(0,1fr);padding:16px}.sale-post-action-icon{width:46px;height:46px}.sale-return-details>div{grid-template-columns:1fr 1fr}.sale-return-details>div>:first-child{grid-column:1/-1}}
@media(max-width:520px){.sales-metric-grid,.sale-detail-metrics{grid-template-columns:1fr}.pos-cart-row,.pos-payment-row,.sale-return-details>div{grid-template-columns:1fr}.pos-cart-product,.pos-cart-line,.pos-cart-row>.icon-action,.payment-reference,.pos-payment-row>.icon-action,.sale-return-details>div>:first-child{grid-column:1}.pos-cart-row>.icon-action,.pos-payment-row>.icon-action{justify-self:end}.sale-payment-list>div{grid-template-columns:40px minmax(0,1fr)}.sale-payment-list b{grid-column:2}.sale-post-action{grid-template-columns:1fr}.sale-post-action-icon{width:46px}.sale-post-action>.btn{grid-column:1}}

/* Detalhes funcionais do PDV. */
.pos-search-result{width:100%;text-align:left;color:inherit;cursor:pointer}.pos-search-result>span{display:grid;gap:3px;min-width:0}.pos-search-result>span:nth-child(2){align-content:center}.pos-search-result>span:last-child{text-align:right;justify-items:end}.pos-search-result-icon{width:38px;height:38px;display:grid!important;place-items:center;border-radius:11px;background:rgb(var(--button-rgb)/.09);border:1px solid rgb(var(--button-rgb)/.18);color:var(--mint);font-size:1rem}.pos-search-result:hover{border-color:rgb(var(--button-rgb)/.34);background:rgb(var(--button-rgb)/.055)}.pos-search-loading,.pos-search-empty{padding:14px;border:1px dashed var(--border);border-radius:12px;color:var(--muted);text-align:center}
.pos-payment-row .payment-installments,.pos-payment-row .payment-due{display:none}.pos-payment-row.payment-has-installments .payment-installments{display:grid}.pos-payment-row.payment-has-due .payment-due{display:grid}

/* O painel lateral do PDV é estreito: pagamentos usam um grid próprio estável. */
.pos-payment-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 38px}.pos-payment-row>.field:nth-child(1){grid-column:1}.pos-payment-row>.field:nth-child(2){grid-column:2}.pos-payment-row>.icon-action{grid-column:3;grid-row:1;justify-self:end}.pos-payment-row .payment-installments{grid-column:1}.pos-payment-row .payment-due{grid-column:2}.pos-payment-row .payment-reference{grid-column:1/3}
@media(max-width:1240px){.pos-payment-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 38px}.pos-payment-row .payment-reference{grid-column:1/3}.pos-payment-row>.icon-action{grid-column:3;grid-row:1}}
@media(max-width:520px){.pos-payment-row{grid-template-columns:1fr 38px}.pos-payment-row>.field:nth-child(1),.pos-payment-row>.field:nth-child(2),.pos-payment-row .payment-installments,.pos-payment-row .payment-due,.pos-payment-row .payment-reference{grid-column:1/-1}.pos-payment-row>.icon-action{grid-column:2;grid-row:auto}}

/* Configuração dos meios de pagamento do PDV. */
.payment-method-metrics{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:18px}.payment-method-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.payment-method-card{padding:20px;min-width:0;max-width:100%;box-sizing:border-box}.payment-method-list{display:grid;border-top:1px solid var(--border)}.payment-method-list>div{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--border);min-width:0}.payment-method-list>div:last-child{border-bottom:0}.payment-method-list>div>div{display:grid;gap:3px;min-width:0}.payment-method-list strong{overflow-wrap:break-word;word-break:normal}.payment-method-list small{color:var(--muted);font-size:.69rem;line-height:1.42}.payment-method-list form{margin:0}.payment-method-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:rgb(var(--button-rgb)/.09);border:1px solid rgb(var(--button-rgb)/.18);color:var(--mint)}.payment-method-icon .ui-icon{width:21px;height:21px}.payment-method-create{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;margin-bottom:14px}.payment-method-create .field{margin:0;min-width:0}
@media(max-width:900px){.payment-method-grid{grid-template-columns:1fr}.payment-method-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.payment-method-metrics{grid-template-columns:1fr}.payment-method-create{grid-template-columns:1fr}.payment-method-create .btn{width:100%}.payment-method-list>div{grid-template-columns:40px minmax(0,1fr)}.payment-method-list>div>.status-tag,.payment-method-list>div>form{grid-column:2;justify-self:start}}

/* SGE 0.14.1 — Hotfix PDV QR + contenção de Compras/Fornecedor + Unidades */
/* PDV: leitor QR reaproveita o mesmo componente do menu Ler QR, em formato compacto. */
.pos-qr-reader{margin-top:12px;border:1px solid var(--border);border-radius:15px;background:rgb(var(--surface-rgb)/.34);overflow:hidden;min-width:0}
.pos-qr-reader>summary{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 13px;cursor:pointer;list-style:none;min-width:0}
.pos-qr-reader>summary::-webkit-details-marker{display:none}
.pos-qr-reader>summary>span:nth-child(2){display:grid;gap:3px;min-width:0}
.pos-qr-reader>summary strong{font-size:.8rem;overflow-wrap:break-word;word-break:normal}
.pos-qr-reader>summary small{color:var(--muted);font-size:.69rem;line-height:1.4;overflow-wrap:break-word;word-break:normal}
.pos-qr-summary-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:rgb(var(--button-rgb)/.09);border:1px solid rgb(var(--button-rgb)/.2);color:var(--mint)}
.pos-qr-summary-icon .ui-icon{width:22px;height:22px}
.pos-qr-reader[open]>summary{border-bottom:1px solid var(--border)}
.pos-qr-reader-body{padding:13px}
.pos-qr-video-shell{min-height:300px;max-height:360px;margin:0 0 12px;border-radius:15px}
.pos-qr-video-shell video{min-height:300px;max-height:360px}
.pos-qr-actions{margin:0;display:flex;gap:9px;flex-wrap:wrap}
.pos-qr-reader .field-help{margin-top:9px}

/* Compras: o grid desktop deve caber dentro da coluna útil ao lado da sidebar. */
.purchase-filter .filter-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;min-width:0;max-width:100%}
.purchase-filter .filter-actions .btn{max-width:100%;white-space:nowrap}
@media(min-width:1251px){
  .purchase-filter{grid-template-columns:minmax(210px,1.25fr) minmax(125px,.48fr) minmax(150px,.7fr) minmax(122px,.48fr) minmax(122px,.48fr) minmax(88px,auto);gap:10px}
}

/* Ficha do fornecedor: cards seccionais sempre têm área interna segura. */
.supplier-section-card{padding:20px 24px 24px;min-width:0;max-width:100%;box-sizing:border-box;overflow:hidden}
.supplier-section-card>.table-card-head{padding:0 0 18px;min-width:0;max-width:100%}
.supplier-section-card>.table-card-head>div{min-width:0;max-width:100%}
.supplier-section-card>.table-card-head h2,
.supplier-section-card>.table-card-head p,
.supplier-section-card>.table-card-head .eyebrow{overflow-wrap:break-word;word-break:normal;hyphens:none}
.supplier-section-card>.responsive-table{width:100%;max-width:100%;margin:0!important;overflow-x:auto;overflow-y:hidden;border:1px solid var(--border);border-radius:13px;box-sizing:border-box}
.supplier-section-card>.responsive-table table{margin:0}
.supplier-documents-card .supplier-document-upload{padding:0 0 18px}
.supplier-documents-card .supplier-document-list{min-width:0;max-width:100%}

/* Unidades: mesma linguagem visual dos demais cadastros auxiliares. */
.reference-toggle-card{margin:14px 0 16px}
.unit-abbreviation{color:var(--mint);font-size:.8em;font-weight:850;white-space:nowrap}

@media(max-width:760px){
  .pos-qr-reader>summary{grid-template-columns:40px minmax(0,1fr)}
  .pos-qr-reader>summary>.status-pill{grid-column:2;justify-self:start}
  .pos-qr-video-shell,.pos-qr-video-shell video{min-height:280px;max-height:330px}
  .supplier-section-card{padding:16px}
  .supplier-documents-card .supplier-document-upload{padding:0 0 16px}
}

/* SGE 0.14.2 — imagens por variação */
.variant-image-editor{grid-column:1/-1;display:grid;gap:10px;padding-top:10px;border-top:1px dashed var(--border);min-width:0}.variant-image-editor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.variant-image-editor-head>div{display:grid;gap:3px;min-width:0}.variant-image-editor-head strong{font-size:.78rem}.variant-image-editor-head small{color:var(--muted);font-size:.7rem;line-height:1.45}.variant-image-manager{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.variant-image-manage-card{display:grid;gap:6px;padding:7px;border:1px solid var(--border);border-radius:11px;background:var(--bg-soft);font-size:.68rem;color:var(--muted);min-width:0}.variant-image-manage-card img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:8px}.variant-image-manage-card span{display:flex;align-items:center;gap:5px;min-width:0}.variant-image-upload{position:relative;display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:9px 12px;border:1px dashed rgb(var(--icon-rgb)/.3);border-radius:11px;background:rgb(var(--icon-rgb)/.035);color:var(--mint);font-weight:800;font-size:.74rem;cursor:pointer;text-align:center}.variant-image-upload:hover{background:rgb(var(--icon-rgb)/.06);border-color:rgb(var(--icon-rgb)/.5)}.variant-image-upload input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.variant-image-upload>span:first-of-type{font-size:1rem}.variant-image-thumbs{display:flex;align-items:center;gap:5px;flex-wrap:wrap;min-width:110px}.variant-image-thumbs img{width:38px;height:38px;object-fit:cover;border-radius:9px;border:1px solid var(--border)}.variant-image-fallback{color:var(--muted);font-size:.7rem;white-space:nowrap}
@media(max-width:980px){.variant-image-manager{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.variant-image-manager{grid-template-columns:repeat(2,minmax(0,1fr))}.variant-image-editor-head{display:grid}}
@media(max-width:460px){.variant-image-manager{grid-template-columns:1fr 1fr}}
.pos-search-result{grid-template-columns:48px minmax(0,1fr) auto}.pos-search-result-icon.has-image{overflow:hidden;padding:0;background:var(--surface-3)}.pos-search-thumb{width:100%;height:100%;object-fit:cover}.pos-cart-product.has-image{grid-template-columns:48px minmax(0,1fr);align-items:center}.pos-cart-thumb{width:48px;height:48px;object-fit:cover;border-radius:10px;border:1px solid var(--border)}.pos-cart-product-copy{display:grid;gap:3px;min-width:0}.pos-cart-product-copy span{color:var(--muted);font-size:.69rem}
@media(max-width:520px){.pos-search-result{grid-template-columns:42px minmax(0,1fr)}.pos-search-result>span:last-child{grid-column:2;text-align:left;justify-items:start}.pos-search-result-icon{width:42px;height:42px}}

/* SGE 0.14.3 — Hotfix de saldo nas combinações */
.variant-row{grid-template-columns:minmax(180px,1fr) minmax(135px,.45fr) minmax(190px,.45fr)}
.variant-stock-wrap{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;min-width:0}
.variant-stock-wrap input{width:100%;min-width:0;min-height:38px}
.variant-stock-wrap small{display:block;white-space:nowrap;color:var(--muted);line-height:1.2}
@media(max-width:700px){.variant-row{grid-template-columns:1fr}.variant-stock-wrap{grid-template-columns:minmax(0,1fr) auto}}

/* SGE 0.14.4 · Prévia de imagens antes de salvar */
.image-preview-scope{display:grid;gap:12px;min-width:0}
.pending-image-preview{display:grid;gap:11px;padding:13px;border:1px solid rgb(var(--icon-rgb)/.16);border-radius:13px;background:rgb(var(--surface-rgb)/.42);min-width:0}
.pending-image-preview[hidden]{display:none!important}
.pending-image-preview-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;min-width:0}
.pending-image-preview-head>strong{font-size:.78rem;color:var(--text)}
.pending-image-preview-head>small{color:var(--muted);font-size:.68rem;text-align:right;line-height:1.4}
.pending-image-preview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;min-width:0}
.pending-image-preview-card{display:grid;gap:7px;margin:0;padding:7px;border:1px solid var(--border);border-radius:11px;background:var(--bg-soft);min-width:0;overflow:hidden}
.pending-image-preview-card img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:8px;background:var(--surface-2)}
.pending-image-preview-card figcaption{display:grid;gap:5px;min-width:0}
.pending-image-preview-card figcaption>span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:.67rem}
.pending-image-primary{display:inline-flex;align-items:center;width:max-content;max-width:100%;min-height:23px;padding:3px 7px;border-radius:999px;background:rgb(var(--button-rgb)/.1);border:1px solid rgb(var(--button-rgb)/.22);color:var(--mint);font-size:.62rem;line-height:1.2;white-space:normal}
.variant-pending-image-preview{padding:11px}
@media(max-width:980px){.pending-image-preview-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.pending-image-preview-head{display:grid}.pending-image-preview-head>small{text-align:left}.pending-image-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:420px){.pending-image-preview-grid{grid-template-columns:1fr 1fr}}

/* SGE 0.14.5 — destaque visual de produtos inativos */
.product-card.is-inactive {
  border-color: rgb(var(--muted-rgb, 159 177 184) / .28);
  background: linear-gradient(160deg, rgb(var(--surface-2-rgb) / .72), rgb(var(--surface-rgb) / .68));
  box-shadow: 0 10px 28px rgba(0,0,0,.16);
}
.product-card.is-inactive .product-card-media { position: relative; isolation: isolate; }
.product-card.is-inactive .product-card-media img {
  filter: grayscale(.82) saturate(.32) brightness(.58);
  transform: none;
}
.product-card.is-inactive .product-card-media:hover img { transform: scale(1.015); }
.product-card.is-inactive .product-card-media > span:not(.product-inactive-overlay) { opacity: .38; }
.product-inactive-overlay {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: grid;
  place-content: center;
  justify-items: center;
  gap: 5px;
  padding: 18px;
  text-align: center;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(4,12,16,.18), rgba(4,12,16,.68));
  color: var(--text);
}
.product-inactive-overlay b {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 31px;
  padding: 0 12px;
  border: 1px solid rgba(255,255,255,.20);
  border-radius: 999px;
  background: rgba(7,18,23,.78);
  box-shadow: 0 8px 24px rgba(0,0,0,.28);
  font-size: .78rem;
  font-weight: 950;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.product-inactive-overlay small {
  color: rgba(242,247,248,.76);
  font-size: .69rem;
  font-weight: 750;
}
.product-card.is-inactive .product-card-body { opacity: .82; }
.product-card.is-inactive .product-card-actions { opacity: 1; }
.product-card.is-inactive .status-pill.is-muted {
  color: var(--text);
  border-color: rgba(255,255,255,.18);
  background: rgba(255,255,255,.07);
}
@media (prefers-reduced-motion: reduce) {
  .product-card.is-inactive .product-card-media img { transition: none; }
}

/* SGE 0.15.0 — Etapa 14: Financeiro */
.finance-subnav{display:flex;gap:8px;overflow-x:auto;padding:2px 0 14px;margin:-4px 0 18px;scrollbar-width:thin}.finance-subnav a{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 12px;border:1px solid var(--border);border-radius:12px;background:rgb(var(--surface-rgb)/.45);color:var(--muted);font-size:.75rem;font-weight:850;white-space:nowrap}.finance-subnav a:hover,.finance-subnav a.active{color:var(--text);border-color:rgb(var(--icon-rgb)/.32);background:rgb(var(--icon-rgb)/.08)}.finance-subnav .ui-icon{width:17px;height:17px;color:var(--mint)}
.finance-metrics{margin-bottom:18px}.finance-dual-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}.finance-summary-card{padding:22px;min-width:0}.finance-summary-lines{display:grid;gap:10px}.finance-summary-lines a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 14px;padding:13px 14px;border:1px solid var(--border);border-radius:13px;background:rgb(var(--surface-rgb)/.38);min-width:0}.finance-summary-lines a span{color:var(--muted);font-size:.76rem}.finance-summary-lines a strong{color:var(--text);white-space:nowrap}.finance-summary-lines a small{grid-column:1/-1;color:var(--muted-2)}.finance-forecast-highlight{display:grid;grid-template-columns:1fr auto;gap:12px 16px;align-items:center;padding:14px;border:1px solid var(--border);border-radius:14px;background:rgb(var(--surface-rgb)/.38)}.finance-forecast-highlight span{color:var(--muted)}.finance-forecast-highlight strong{font-size:1.08rem;white-space:nowrap}.finance-account-card{margin-bottom:16px}
.finance-create-card,.finance-settings-create{padding:20px;margin-bottom:16px}.finance-create-card>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;cursor:pointer;list-style:none}.finance-create-card>summary::-webkit-details-marker{display:none}.finance-create-card>summary span{color:var(--muted);font-size:.75rem}.finance-create-card[open]>summary{padding-bottom:18px;border-bottom:1px solid var(--border);margin-bottom:18px}.finance-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;align-items:end}.finance-form-grid .field{margin:0;min-width:0}.finance-description-field{grid-column:span 2}.finance-notes-field{grid-column:span 2}.finance-form-actions{display:flex;align-items:end;min-height:44px}.finance-form-actions .btn{width:100%}
.finance-filter{display:grid;grid-template-columns:minmax(240px,1.4fr) minmax(120px,.55fr) minmax(150px,.7fr) repeat(2,minmax(135px,.55fr)) auto;gap:12px;align-items:end;padding:17px;margin-bottom:16px;min-width:0}.finance-filter.compact-finance-filter{grid-template-columns:minmax(280px,1.5fr) minmax(170px,.55fr) minmax(180px,.65fr) auto}.finance-filter .field{margin:0;min-width:0}.finance-filter .filter-actions{display:flex;gap:8px;align-items:center;flex-wrap:nowrap}.finance-filter .btn{white-space:nowrap}.finance-table-scroll{overflow-x:auto}.finance-table-scroll table{min-width:980px}.finance-table-scroll th{white-space:nowrap}.finance-table-scroll .status-tag{white-space:nowrap}
.finance-inline-settle{position:relative}.finance-inline-settle>summary{color:var(--mint);font-weight:900;cursor:pointer;white-space:nowrap}.finance-inline-settle[open] form{position:absolute;z-index:20;right:0;top:28px;width:300px;display:grid;gap:9px;padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface-2);box-shadow:0 18px 45px rgba(0,0,0,.38)}.finance-inline-settle label{display:grid;gap:5px;color:var(--muted);font-size:.68rem}.finance-inline-settle input,.finance-inline-settle select{min-width:0}.finance-inline-settle .btn{width:100%}
.finance-account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.finance-account-tile{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:15px;padding:20px;align-items:start;min-width:0}.finance-account-icon{width:50px;height:50px;display:grid;place-items:center;border:1px solid rgb(var(--icon-rgb)/.2);border-radius:15px;background:rgb(var(--icon-rgb)/.08);color:var(--mint)}.finance-account-icon .ui-icon{width:26px;height:26px}.finance-account-tile h2{margin:3px 0 4px;overflow-wrap:normal;word-break:normal}.finance-account-tile p{margin:0 0 10px;color:var(--muted);overflow-wrap:anywhere}.finance-account-tile>div:nth-child(2){min-width:0;display:grid}.finance-account-balance{font-size:1.25rem;margin-top:2px}.finance-account-tile small{color:var(--muted-2)}.finance-account-status{display:grid;gap:10px;justify-items:end}.finance-category-create{display:grid;grid-template-columns:minmax(160px,.45fr) minmax(260px,1fr) auto;gap:12px;align-items:end}.finance-category-create .field{margin:0}.finance-date-filter{display:flex;align-items:end;gap:12px;flex-wrap:wrap;padding:17px;margin-bottom:17px}.finance-date-filter .field{margin:0;min-width:180px}
.pos-payment-row .payment-account{display:block}.pos-payment-row.payment-no-account .payment-account{display:none}
@media(max-width:1180px){.finance-form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.finance-filter{grid-template-columns:repeat(3,minmax(0,1fr))}.finance-filter .filter-actions{grid-column:1/-1}.finance-filter.compact-finance-filter{grid-template-columns:repeat(3,minmax(0,1fr))}.finance-filter.compact-finance-filter .filter-actions{grid-column:1/-1}.finance-account-grid{grid-template-columns:1fr}.finance-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.finance-dual-grid{grid-template-columns:1fr}.finance-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-description-field,.finance-notes-field{grid-column:span 2}.finance-filter,.finance-filter.compact-finance-filter{grid-template-columns:1fr 1fr}.finance-filter .filter-actions,.finance-filter.compact-finance-filter .filter-actions{grid-column:1/-1}.finance-account-tile{grid-template-columns:48px minmax(0,1fr)}.finance-account-status{grid-column:2;justify-items:start}.finance-category-create{grid-template-columns:1fr 1fr}.finance-category-create .btn{grid-column:1/-1}}
@media(max-width:620px){.finance-metrics{grid-template-columns:1fr}.finance-form-grid,.finance-filter,.finance-filter.compact-finance-filter,.finance-category-create{grid-template-columns:1fr}.finance-description-field,.finance-notes-field,.finance-filter .filter-actions,.finance-filter.compact-finance-filter .filter-actions,.finance-category-create .btn{grid-column:1}.finance-filter .filter-actions{display:grid;grid-template-columns:1fr 1fr}.finance-inline-settle[open] form{position:fixed;left:14px;right:14px;top:auto;bottom:14px;width:auto;z-index:90}.finance-account-tile{grid-template-columns:44px minmax(0,1fr);padding:17px}.finance-account-icon{width:44px;height:44px}.finance-summary-lines a{grid-template-columns:1fr}.finance-summary-lines a strong{white-space:normal}.finance-forecast-highlight{grid-template-columns:1fr}.finance-date-filter{display:grid;grid-template-columns:1fr}.finance-date-filter .field{min-width:0}}

/* SGE 0.16.0 — Etapa 15 · Catálogo / Mini Site */
.catalog-admin-metrics{margin-bottom:18px}
.catalog-settings-card{padding:24px}
.catalog-toggle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0}
.catalog-public-url{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:14px;margin:18px 0;padding:15px 16px;border:1px solid var(--border);border-radius:15px;background:rgb(var(--surface-rgb)/.45);min-width:0}
.catalog-public-url-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:14px;background:rgb(var(--button-rgb)/.1);border:1px solid rgb(var(--button-rgb)/.2);color:var(--mint)}
.catalog-public-url-icon .ui-icon{width:25px;height:25px}.catalog-public-url>div{display:grid;gap:3px;min-width:0}.catalog-public-url small{color:var(--muted);font-size:.72rem}.catalog-public-url strong{overflow-wrap:break-word;word-break:normal}

.catalog-body{background:radial-gradient(circle at 15% -10%,rgb(var(--button-rgb)/.09),transparent 30rem),var(--bg)}
.catalog-topbar{min-height:76px}.catalog-brand{min-width:0}.catalog-top-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.catalog-main{width:min(1240px,calc(100% - 36px));padding:36px 0 64px}
.catalog-footer>div{display:grid;gap:5px;min-width:0}.catalog-footer>div:last-child{text-align:right}.catalog-footer strong{color:var(--text)}.catalog-footer span{display:block;overflow-wrap:break-word}
.catalog-hero-modern{grid-template-columns:minmax(0,1fr);align-items:start;gap:22px}.catalog-hero-copy{padding:clamp(24px,4vw,44px);border:1px solid var(--border);border-radius:26px;background:radial-gradient(circle at 88% 10%,rgb(var(--button-rgb)/.12),transparent 22rem),linear-gradient(145deg,rgb(var(--surface-2-rgb)/.9),rgb(var(--surface-rgb)/.78));box-shadow:0 18px 55px rgba(0,0,0,.15)}
.catalog-hero-copy h1{max-width:760px;margin:8px 0 12px;font-size:clamp(2.2rem,5vw,4rem);line-height:1.02}.catalog-hero-copy p{font-size:1rem;line-height:1.65}.catalog-hero-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:22px}.catalog-result-count{display:inline-flex;align-items:center;min-height:42px;padding:0 13px;border:1px solid var(--border);border-radius:999px;color:var(--muted);font-size:.78rem}
.catalog-search-panel{display:grid;grid-template-columns:minmax(220px,1.4fr) repeat(3,minmax(140px,.65fr)) auto;gap:12px;padding:18px;border:1px solid var(--border);border-radius:20px;background:var(--surface);box-shadow:0 14px 38px rgba(0,0,0,.12)}.catalog-search-panel label{display:grid;gap:7px;min-width:0}.catalog-search-panel label>span{color:var(--muted);font-size:.72rem;font-weight:850}.catalog-search-panel input,.catalog-search-panel select{width:100%;min-width:0}.catalog-search-actions{display:flex;align-items:end;gap:8px;flex-wrap:wrap}
.catalog-category-pills{display:flex;gap:8px;overflow:auto;padding:0 0 16px;margin-bottom:3px;scrollbar-width:thin}.catalog-category-pills a{display:inline-flex;align-items:center;gap:7px;flex:0 0 auto;min-height:36px;padding:0 12px;border:1px solid var(--border);border-radius:999px;color:var(--muted);background:var(--surface);font-size:.77rem;font-weight:800}.catalog-category-pills a.active{color:var(--mint);border-color:rgb(var(--button-rgb)/.35);background:rgb(var(--button-rgb)/.09)}.catalog-category-pills small{min-width:20px;height:20px;display:grid;place-items:center;border-radius:999px;background:var(--surface-2);font-size:.64rem}
.catalog-grid-modern{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.catalog-card{min-width:0}.catalog-card-image{position:relative}.catalog-card-image img{transition:transform .25s ease}.catalog-card:hover .catalog-card-image img{transform:scale(1.025)}.catalog-stock-overlay{position:absolute;left:10px;bottom:10px;display:inline-flex;padding:6px 9px;border-radius:999px;background:rgba(8,16,20,.78);border:1px solid rgba(255,255,255,.12);color:#fff;font-size:.68rem;font-weight:850;backdrop-filter:blur(8px)}.catalog-card-out .catalog-card-image img{filter:saturate(.65) brightness(.78)}
.catalog-card-meta{display:flex;gap:8px;justify-content:space-between;align-items:center;min-width:0}.catalog-card-meta small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.catalog-card-body h2{min-height:2.4em;line-height:1.2;overflow-wrap:break-word;word-break:normal}.catalog-variant-count{display:inline-flex!important;margin:0 0 10px!important;padding:4px 7px;border-radius:8px;background:var(--surface-2);font-size:.68rem!important}.catalog-card-availability{display:inline-flex!important;width:max-content;margin-top:10px!important;padding:5px 8px;border-radius:999px;border:1px solid var(--border);font-weight:800}.catalog-card-availability.is-ok{color:var(--mint);background:rgb(var(--button-rgb)/.07);border-color:rgb(var(--button-rgb)/.2)}.catalog-card-availability.is-out{color:var(--muted)}
.catalog-empty-icon{width:58px;height:58px;margin:0 auto 14px;display:grid;place-items:center;border-radius:18px;background:rgb(var(--button-rgb)/.1);border:1px solid rgb(var(--button-rgb)/.2);color:var(--mint)}.catalog-empty-icon .ui-icon{width:30px;height:30px}.catalog-disabled{margin-top:12vh}
.catalog-product-page{gap:38px}.catalog-product-media{min-width:0}.catalog-product-main-image{box-shadow:0 24px 60px rgba(0,0,0,.18)}.catalog-thumbs{grid-template-columns:repeat(6,minmax(0,1fr))}.catalog-thumb-button{padding:0;border:1px solid var(--border);border-radius:12px;overflow:hidden;background:var(--surface-2);cursor:pointer}.catalog-thumb-button img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover}.catalog-thumb-button.is-selected{border-color:var(--mint);box-shadow:0 0 0 2px rgb(var(--button-rgb)/.12)}
.catalog-product-meta{display:flex;gap:9px;flex-wrap:wrap;margin:10px 0}.catalog-product-meta span{display:inline-flex;gap:6px;align-items:center;min-height:30px;padding:5px 9px;border:1px solid var(--border);border-radius:999px;color:var(--muted);font-size:.72rem}.catalog-product-meta strong{color:var(--text)}.catalog-variants>p{margin:-2px 0 10px;color:var(--muted);font-size:.78rem}.catalog-variant-list{display:flex;gap:8px;flex-wrap:wrap}.catalog-variant-button{appearance:none;color:var(--text);cursor:pointer;text-align:left;display:grid!important;gap:3px;margin:0}.catalog-variant-button strong{font-size:.76rem}.catalog-variant-button small{color:var(--muted);font-size:.65rem}.catalog-variant-button.is-selected{border-color:var(--mint);background:rgb(var(--button-rgb)/.1);color:var(--mint)}.catalog-product-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}

@media(max-width:1180px){.catalog-grid-modern{grid-template-columns:repeat(3,minmax(0,1fr))}.catalog-search-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-search-actions{grid-column:1/-1}.catalog-toggle-grid{grid-template-columns:1fr 1fr}}
@media(max-width:820px){.catalog-admin-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-toggle-grid{grid-template-columns:1fr}.catalog-public-url{grid-template-columns:44px minmax(0,1fr)}.catalog-public-url>.btn{grid-column:1/-1;width:100%}.catalog-grid-modern{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-search-panel{grid-template-columns:1fr 1fr}.catalog-product-page{grid-template-columns:1fr}.catalog-product-media{position:static}.catalog-thumbs{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:620px){.catalog-topbar{padding:10px 12px;gap:8px}.catalog-company-login{display:none}.catalog-contact-top{padding:0 12px}.catalog-main{width:min(100% - 20px,1240px);padding:20px 0 42px}.catalog-hero-copy{padding:22px 18px;border-radius:20px}.catalog-hero-copy h1{font-size:2.25rem}.catalog-search-panel{grid-template-columns:1fr;padding:14px}.catalog-search-actions{grid-column:1}.catalog-search-actions .btn{flex:1}.catalog-grid-modern{gap:10px}.catalog-card-body{padding:12px}.catalog-card-body h2{min-height:0}.catalog-footer{padding:18px 14px}.catalog-footer>div:last-child{text-align:left}.catalog-product-actions{display:grid}.catalog-product-actions .btn{width:100%}.catalog-thumbs{grid-template-columns:repeat(4,minmax(0,1fr))}.catalog-admin-metrics{grid-template-columns:1fr}.catalog-settings-card{padding:18px}}

/* SGE 0.16.1 · PIX Mercado Pago */
.mp-settings-section{display:grid;gap:16px}.mp-guide{display:grid;gap:7px}.mp-guide p{margin:0;line-height:1.6}.mp-guide a{color:var(--mint);font-weight:850}.mp-toggle-grid{margin-top:2px}.mp-pix-overlay{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:20px;background:rgba(2,10,14,.82);backdrop-filter:blur(10px)}.mp-pix-overlay[hidden]{display:none!important}.modal-open{overflow:hidden}.mp-pix-dialog{width:min(820px,100%);max-height:calc(100vh - 40px);overflow:auto;padding:24px;border-radius:24px}.mp-pix-head{display:grid;grid-template-columns:54px minmax(0,1fr);gap:16px;align-items:start}.mp-pix-head h2{margin:5px 0 6px}.mp-pix-head p{margin:0;color:var(--muted);line-height:1.55}.mp-pix-brand{width:54px;height:54px;display:grid;place-items:center;border-radius:16px;background:rgb(var(--button-rgb)/.12);border:1px solid rgb(var(--button-rgb)/.28);color:var(--mint)}.mp-pix-brand .ui-icon{width:28px;height:28px}.mp-pix-amount{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:20px 0;padding:14px 16px;border:1px solid var(--border);border-radius:14px;background:var(--surface-2)}.mp-pix-amount span{color:var(--muted)}.mp-pix-amount strong{font-size:1.35rem}.mp-pix-content{display:grid;grid-template-columns:minmax(230px,.75fr) minmax(0,1.25fr);gap:22px;align-items:start}.mp-pix-qr-shell{aspect-ratio:1;display:grid;place-items:center;padding:14px;border-radius:20px;background:#fff;overflow:hidden}.mp-pix-qr-shell img{width:100%;height:100%;object-fit:contain}.mp-pix-qr-placeholder{display:grid;place-items:center;gap:10px;color:#17313b;text-align:center}.mp-pix-qr-placeholder .ui-icon{width:64px;height:64px}.mp-pix-instructions{display:grid;gap:12px}.mp-pix-status{display:flex;align-items:center;gap:9px;min-height:42px;padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:var(--surface-2)}.mp-pix-status>span{width:10px;height:10px;border-radius:50%;background:var(--warning);box-shadow:0 0 0 5px rgba(247,198,93,.1)}.mp-pix-status.is-approved{color:var(--mint);border-color:rgb(var(--button-rgb)/.25)}.mp-pix-status.is-approved>span{background:var(--mint);box-shadow:0 0 0 5px rgb(var(--button-rgb)/.1)}.mp-pix-status.is-error{color:var(--danger);border-color:rgba(255,107,107,.25)}.mp-pix-status.is-error>span{background:var(--danger);box-shadow:0 0 0 5px rgba(255,107,107,.1)}.mp-pix-instructions>p{margin:0;color:var(--muted);line-height:1.5}.mp-pix-instructions textarea{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.76rem;resize:none}.mp-pix-instructions>small{color:var(--muted-2)}.mp-pix-safe{display:grid;gap:4px;margin-top:20px;padding:14px 16px;border-radius:14px;background:rgb(var(--button-rgb)/.06);border:1px solid rgb(var(--button-rgb)/.16)}.mp-pix-safe span{color:var(--muted);font-size:.78rem;line-height:1.5}.payment-row-mercadopago{border-color:rgb(var(--button-rgb)/.3)}
@media(max-width:700px){.mp-pix-overlay{padding:10px}.mp-pix-dialog{max-height:calc(100vh - 20px);padding:18px;border-radius:20px}.mp-pix-content{grid-template-columns:1fr}.mp-pix-qr-shell{width:min(300px,100%);justify-self:center}.mp-pix-amount{align-items:flex-start;flex-direction:column;gap:4px}.mp-pix-head{grid-template-columns:46px minmax(0,1fr)}.mp-pix-brand{width:46px;height:46px}}

/* SGE 0.16.3 — Compra online no Catálogo com PIX Mercado Pago */
.catalog-buy-box{display:grid;grid-template-columns:52px minmax(0,1fr) minmax(118px,150px) auto;gap:14px;align-items:center;margin:26px 0 0;padding:18px;border:1px solid rgb(var(--button-rgb)/.25);border-radius:18px;background:linear-gradient(145deg,rgb(var(--button-rgb)/.09),rgb(var(--surface-2-rgb)/.72));min-width:0}.catalog-buy-icon{width:50px;height:50px;display:grid;place-items:center;border-radius:15px;background:rgb(var(--button-rgb)/.13);color:var(--mint);border:1px solid rgb(var(--button-rgb)/.24)}.catalog-buy-icon .ui-icon{width:27px;height:27px}.catalog-buy-copy{min-width:0}.catalog-buy-copy h3{margin:3px 0 5px;font-size:1rem}.catalog-buy-copy p{margin:0;color:var(--muted);font-size:.76rem;line-height:1.5}.catalog-buy-quantity{margin:0!important}.catalog-buy-quantity input{min-width:0}.catalog-buy-submit{white-space:nowrap}.catalog-buy-hint{grid-column:2/-1;color:var(--muted);font-size:.7rem;line-height:1.45}.catalog-buy-unavailable{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;align-items:start;margin-top:24px;padding:15px;border:1px solid var(--border);border-radius:16px;background:var(--surface-2);min-width:0}.catalog-buy-unavailable>span{width:42px;height:42px;display:grid;place-items:center;color:var(--muted)}.catalog-buy-unavailable .ui-icon{width:23px;height:23px}.catalog-buy-unavailable strong{display:block;margin-bottom:4px}.catalog-buy-unavailable p{margin:0;color:var(--muted);font-size:.77rem;line-height:1.5}.catalog-variant-button:disabled{cursor:not-allowed;opacity:.48}.catalog-variant-button.is-unavailable{filter:saturate(.55)}

.catalog-checkout-shell,.catalog-order-page{min-width:0}.catalog-checkout-head,.catalog-order-head{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;flex-wrap:wrap;margin-bottom:24px}.catalog-checkout-head>div,.catalog-order-head>div{min-width:0;flex:1 1 360px}.catalog-checkout-head h1,.catalog-order-head h1{margin:6px 0 8px;font-size:clamp(2rem,4vw,3.15rem)}.catalog-checkout-head p,.catalog-order-head p{margin:0;color:var(--muted);line-height:1.55}.catalog-checkout-notice{margin-bottom:18px}.catalog-checkout-grid,.catalog-order-grid{display:grid;grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);gap:18px;align-items:start}.catalog-checkout-summary,.catalog-order-summary{padding:22px;position:sticky;top:92px;min-width:0}.catalog-checkout-product{display:grid;grid-template-columns:78px minmax(0,1fr);gap:13px;align-items:center;margin:15px 0 18px;min-width:0}.catalog-checkout-product-image{width:78px;height:78px;display:grid;place-items:center;overflow:hidden;border:1px solid var(--border);border-radius:15px;background:var(--surface-2);font-size:1.8rem;font-weight:900;color:var(--mint)}.catalog-checkout-product-image img{width:100%;height:100%;object-fit:cover}.catalog-checkout-product h2{margin:0 0 4px;font-size:1rem;line-height:1.3;overflow-wrap:break-word;word-break:normal}.catalog-checkout-product small{color:var(--muted);overflow-wrap:anywhere}.catalog-checkout-values{display:grid;margin:0}.catalog-checkout-values>div{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-top:1px solid var(--border)}.catalog-checkout-values dt{color:var(--muted);font-size:.75rem}.catalog-checkout-values dd{margin:0;text-align:right;font-weight:800}.catalog-checkout-values .catalog-checkout-total{padding-top:15px}.catalog-checkout-total dd{font-size:1.25rem;color:var(--mint)}.catalog-checkout-safe,.catalog-order-security{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;margin-top:16px;padding:13px;border-radius:13px;background:rgb(var(--button-rgb)/.06);border:1px solid rgb(var(--button-rgb)/.14);min-width:0}.catalog-checkout-safe>span,.catalog-order-security>span{width:36px;height:36px;display:grid;place-items:center;color:var(--mint)}.catalog-checkout-safe .ui-icon,.catalog-order-security .ui-icon{width:20px;height:20px}.catalog-checkout-safe strong{font-size:.76rem}.catalog-checkout-safe p,.catalog-order-security p{margin:3px 0 0;color:var(--muted);font-size:.7rem;line-height:1.5}.catalog-checkout-form{padding:24px;min-width:0}.catalog-checkout-form .section-heading.compact{margin-bottom:15px}.catalog-checkout-fields,.catalog-checkout-address{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.catalog-checkout-fields .field,.catalog-checkout-address .field{margin:0;min-width:0}.catalog-checkout-fields .field-span-2,.catalog-checkout-address .field-span-2{grid-column:span 2}.catalog-checkout-address-title{margin-top:27px!important;padding-top:20px;border-top:1px solid var(--border)}.catalog-checkout-consent{display:grid;grid-template-columns:34px minmax(0,1fr);gap:9px;align-items:start;margin:22px 0 14px;padding:12px;border-radius:12px;background:var(--surface-2);color:var(--muted);font-size:.7rem;line-height:1.5}.catalog-checkout-consent>span{display:grid;place-items:center;color:var(--mint)}.catalog-checkout-consent .ui-icon{width:19px;height:19px}.catalog-checkout-consent p{margin:0}.catalog-checkout-submit{width:100%;min-height:52px;font-size:.9rem}

.catalog-order-grid{grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr)}.catalog-order-payment{padding:24px;min-width:0}.catalog-order-result{display:grid;grid-template-columns:58px minmax(0,1fr);gap:15px;align-items:start;min-width:0}.catalog-order-result>span{width:56px;height:56px;display:grid;place-items:center;border-radius:17px;border:1px solid var(--border);background:var(--surface-2)}.catalog-order-result>span .ui-icon{width:29px;height:29px}.catalog-order-result h2{margin:4px 0 6px;overflow-wrap:break-word;word-break:normal}.catalog-order-result p{margin:0;color:var(--muted);line-height:1.55}.catalog-order-result.is-success>span{color:var(--mint);background:rgb(var(--button-rgb)/.08);border-color:rgb(var(--button-rgb)/.2)}.catalog-order-result.is-waiting>span,.catalog-order-result.is-processing>span{color:var(--warning)}.catalog-order-result.is-error>span{color:var(--danger)}.catalog-order-code{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-top:20px;padding:14px;border:1px solid var(--border);border-radius:13px;background:var(--surface-2)}.catalog-order-code span{color:var(--muted);font-size:.75rem}.catalog-order-code strong{color:var(--mint);overflow-wrap:anywhere;text-align:right}.catalog-order-pix{display:grid;grid-template-columns:minmax(230px,300px) minmax(0,1fr);gap:20px;align-items:center;margin-top:24px;padding-top:22px;border-top:1px solid var(--border)}.catalog-order-qr{aspect-ratio:1/1;display:grid;place-items:center;align-content:center;gap:8px;padding:12px;border-radius:18px;background:#fff;color:#0b141a;overflow:hidden}.catalog-order-qr img{display:block;width:100%;height:100%;object-fit:contain}.catalog-order-qr>.ui-icon{width:58px;height:58px}.catalog-order-qr small{text-align:center;color:#45555d}.catalog-order-pix-copy{min-width:0}.catalog-order-pix-copy textarea{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.7rem;overflow-wrap:anywhere}.catalog-order-pix-copy>.btn{width:100%;margin-top:8px}.catalog-order-pix-copy>small{display:block;margin-top:10px;color:var(--muted);text-align:center}.catalog-order-live-status{display:flex;align-items:center;justify-content:center;gap:9px;margin-top:18px;padding:12px;border-radius:12px;background:var(--surface-2);color:var(--muted);text-align:center}.catalog-order-live-status>span{width:9px;height:9px;border-radius:50%;background:var(--warning);box-shadow:0 0 0 5px rgba(247,198,93,.08);animation:catalogPulse 1.5s ease-in-out infinite}.catalog-order-live-status strong{font-size:.76rem}.catalog-order-buyer{display:grid;gap:3px;padding-top:15px;border-top:1px solid var(--border)}.catalog-order-buyer span,.catalog-order-buyer small{color:var(--muted);font-size:.72rem}.catalog-order-buyer strong{overflow-wrap:break-word}.catalog-order-security{margin-top:16px}@keyframes catalogPulse{0%,100%{opacity:.45}50%{opacity:1}}

@media(max-width:980px){.catalog-buy-box{grid-template-columns:50px minmax(0,1fr) 130px}.catalog-buy-submit{grid-column:2/-1;width:100%}.catalog-buy-hint{grid-column:2/-1}.catalog-checkout-grid,.catalog-order-grid{grid-template-columns:1fr}.catalog-checkout-summary,.catalog-order-summary{position:static}.catalog-order-summary{order:-1}.catalog-order-pix{grid-template-columns:minmax(210px,280px) minmax(0,1fr)}}
@media(max-width:680px){.catalog-buy-box{grid-template-columns:44px minmax(0,1fr);padding:15px}.catalog-buy-icon{width:42px;height:42px}.catalog-buy-quantity,.catalog-buy-submit,.catalog-buy-hint{grid-column:1/-1}.catalog-buy-submit{white-space:normal}.catalog-checkout-form,.catalog-checkout-summary,.catalog-order-payment,.catalog-order-summary{padding:18px}.catalog-checkout-fields,.catalog-checkout-address{grid-template-columns:1fr}.catalog-checkout-fields .field-span-2,.catalog-checkout-address .field-span-2{grid-column:1}.catalog-order-pix{grid-template-columns:1fr}.catalog-order-qr{width:min(100%,300px);margin:0 auto}.catalog-order-result{grid-template-columns:46px minmax(0,1fr)}.catalog-order-result>span{width:44px;height:44px;border-radius:13px}.catalog-order-result>span .ui-icon{width:23px;height:23px}.catalog-checkout-product{grid-template-columns:66px minmax(0,1fr)}.catalog-checkout-product-image{width:66px;height:66px}}

/* SGE 0.16.6 — documentos comerciais, notificações prioritárias e contato do cliente */
.side-link.notifications-priority{
  position:relative;
  margin-bottom:7px;
  border:1px solid rgb(var(--button-rgb)/.18);
  background:linear-gradient(135deg,rgb(var(--button-rgb)/.08),rgb(var(--surface-rgb)/.5));
  font-weight:900;
}
.side-link.notifications-priority .side-icon{color:var(--mint);background:rgb(var(--button-rgb)/.08);border-color:rgb(var(--button-rgb)/.22)}
.side-link.notifications-priority.has-unread{border-color:rgb(var(--button-rgb)/.38);box-shadow:inset 3px 0 0 var(--mint),0 8px 24px rgba(0,0,0,.08)}
.side-link.notifications-priority.has-unread .nav-badge{margin-left:auto;box-shadow:0 0 0 4px rgba(255,107,107,.08)}

.catalog-order-receipt{width:100%;margin-top:12px;min-height:48px;gap:8px}

/* Ficha do cliente: textos devem permanecer contidos e legíveis em qualquer largura. */
.customer-profile-grid{align-items:stretch}
.customer-profile-grid>*{min-width:0;max-width:100%;overflow:hidden}
.customer-info-card{min-width:0;overflow:hidden}
.customer-info-card .section-heading.compact{min-width:0;max-width:100%}
.customer-info-card .section-heading.compact>div{min-width:0;max-width:100%}
.customer-info-card .section-heading.compact h2,
.customer-info-card .section-heading.compact .eyebrow{max-width:100%;white-space:normal;overflow-wrap:break-word;word-break:normal}
.customer-detail-list>div{display:grid;grid-template-columns:minmax(115px,.72fr) minmax(0,1.28fr);align-items:start;gap:16px;min-width:0}
.customer-detail-list>div>span:first-child{min-width:0}
.customer-detail-list strong{min-width:0;max-width:100%;text-align:right;white-space:normal;overflow-wrap:break-word;word-break:normal}
.customer-address-block,.customer-address-block>div{min-width:0;max-width:100%}
.customer-address-block strong,.customer-address-block span{white-space:normal;overflow-wrap:break-word;word-break:normal}
.customer-notes{max-width:100%;white-space:normal;overflow-wrap:break-word;word-break:normal}
.customer-detail-metrics .metric-card-copy{min-width:0;max-width:100%}
.customer-detail-metrics .metric-card-copy strong{max-width:100%;white-space:normal;overflow-wrap:break-word;word-break:normal;line-height:1.08}

.customer-contact-list .customer-contact-value{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0;max-width:100%;flex-wrap:wrap}
.customer-contact-list .customer-contact-value>strong{flex:1 1 140px;min-width:0;text-align:right}
.customer-contact-action{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:31px;padding:5px 9px;border:1px solid rgb(var(--button-rgb)/.2);border-radius:10px;background:rgb(var(--button-rgb)/.07);color:var(--mint)!important;font-size:.68rem;font-weight:900;white-space:nowrap;text-decoration:none}
.customer-contact-action:hover{background:rgb(var(--button-rgb)/.13);border-color:rgb(var(--button-rgb)/.38)}
.customer-contact-action .ui-icon{width:16px;height:16px;flex:0 0 16px}
.customer-contact-action b{font:inherit;color:inherit}

@media(max-width:760px){
  .customer-detail-list>div{grid-template-columns:1fr;gap:5px}
  .customer-detail-list strong{text-align:left}
  .customer-contact-list .customer-contact-value{justify-content:flex-start}
  .customer-contact-list .customer-contact-value>strong{flex:1 1 100%;text-align:left}
  .customer-contact-action{min-height:36px;padding:7px 10px}
}

.customer-commercial-history,
.customer-sales-card,
.customer-receivables-card,
.customer-documents-card{
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
  overflow:hidden;
}
.customer-commercial-history .table-card-head,
.customer-sales-card .table-card-head,
.customer-receivables-card .table-card-head,
.customer-documents-card .table-card-head{
  min-width:0;
  max-width:100%;
}
.customer-commercial-history .table-card-head>div,
.customer-sales-card .table-card-head>div,
.customer-receivables-card .table-card-head>div,
.customer-documents-card .table-card-head>div{
  min-width:0;
  max-width:100%;
}
.customer-commercial-history .table-card-head h2,
.customer-commercial-history .table-card-head p,
.customer-sales-card .table-card-head h2,
.customer-sales-card .table-card-head p,
.customer-receivables-card .table-card-head h2,
.customer-receivables-card .table-card-head p,
.customer-documents-card .table-card-head h2,
.customer-documents-card .table-card-head p{
  max-width:100%;
  white-space:normal;
  overflow-wrap:break-word;
  word-break:normal;
}
