:root{
  --red:#0b0d10;
  --red-2:#050607;
  --red-3:#000000;
  --red-soft:#f1f2f4;
  --red-soft-2:#e4e7eb;
  --bg:#eef0f3;
  --panel:#ffffff;
  --panel2:#f7f8fa;
  --text:#101216;
  --muted:#666d77;
  --line:#d9dde3;
  --shadow:0 18px 48px rgba(5,7,10,.10);
  --shadow-red:0 12px 32px rgba(0,0,0,.24);
  --obsidian:#050607;
  --obsidian-2:#0b0d10;
  --graphite:#171a1f;
  --steel:#7d858f;
  --silver:#c8cdd4;
  --ice:#f7f8fa;
}
*{scrollbar-color:#4b5057 #e9ebee}
body{
  background:
    radial-gradient(circle at 90% 0%,rgba(255,255,255,.95),transparent 31%),
    linear-gradient(145deg,#e8eaed 0%,#f6f7f8 48%,#e9ebee 100%);
  color:var(--text);
}
.topbar{
  position:relative;
  overflow:hidden;
  background:linear-gradient(115deg,#000 0%,#0a0c0f 42%,#171a1f 72%,#050607 100%);
  border-bottom:1px solid rgba(255,255,255,.16);
  box-shadow:0 12px 34px rgba(0,0,0,.32),inset 0 1px 0 rgba(255,255,255,.12);
}
.topbar::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(105deg,transparent 0%,rgba(255,255,255,.10) 22%,transparent 43%);
  transform:translateX(-58%);
}
.brand-mark{
  background:linear-gradient(145deg,#fff,#cfd3d8 48%,#fff);
  border:1px solid rgba(255,255,255,.82);
  box-shadow:0 8px 28px rgba(0,0,0,.32),inset 0 0 0 1px rgba(0,0,0,.08);
}
.sidebar{
  background:linear-gradient(180deg,#050607 0%,#0b0d10 50%,#030405 100%);
  border-right:1px solid #22262c;
  box-shadow:10px 0 34px rgba(0,0,0,.08),inset -1px 0 rgba(255,255,255,.04);
}
.sidebar .label,.sidebar .nav-btn{color:#c8cdd4}
.nav-btn{border:1px solid transparent}
.nav-btn:hover:not(.active){background:rgba(255,255,255,.07);color:#fff;border-color:rgba(255,255,255,.06)}
.nav-btn.active{
  background:linear-gradient(115deg,#ffffff 0%,#dfe2e6 50%,#ffffff 100%);
  color:#050607!important;
  border-color:#fff;
  box-shadow:0 10px 24px rgba(0,0,0,.26),inset 0 1px 0 #fff;
}
.nav-btn.active .label,.nav-btn.active .nav-icon{color:#050607!important}
.sidebar-brand-note{
  color:#d9dde2;background:linear-gradient(145deg,#16191e,#090b0d);
  border-color:#2d3239;box-shadow:inset 0 1px rgba(255,255,255,.06);
}
.sidebar-brand-note strong{color:#fff}
.creator-credit{
  color:#fff!important;background:linear-gradient(145deg,#171a1f,#070809)!important;
  border:1px solid #30353c!important;box-shadow:inset 0 1px rgba(255,255,255,.08)!important;
}
.content{background:transparent}
.content::before{opacity:.013;filter:grayscale(1)}
.card,.kpi,.modal{
  border-color:#d8dce2;
  box-shadow:0 14px 38px rgba(8,10,13,.08),inset 0 1px 0 rgba(255,255,255,.86);
}
.kpi{border-top-color:#111419}
.btn{transition:transform .15s ease,box-shadow .15s ease,background .15s ease,border-color .15s ease}
.btn:active{transform:translateY(1px)}
.btn-primary{
  color:#fff;
  background:linear-gradient(115deg,#020304 0%,#15191f 46%,#050607 100%);
  border:1px solid #252a31;
  box-shadow:0 9px 22px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.17);
}
.btn-primary:hover{background:linear-gradient(115deg,#15191f,#020304 75%);box-shadow:0 12px 28px rgba(0,0,0,.29),inset 0 1px 0 rgba(255,255,255,.20)}
.btn-ghost{border-color:#cfd4da;background:#fff;color:#181b20}
.btn-ghost:hover{border-color:#747c86;background:#f2f4f6;color:#000}
.input,.select,textarea{border-color:#cfd4da;background:#fff;color:#101216}
.input:focus,.select:focus,textarea:focus{border-color:#15191f;box-shadow:0 0 0 4px rgba(10,12,15,.10)}
.scan-icon,.product-thumb,.system-icon{background:linear-gradient(145deg,#f0f2f4,#dfe3e7);color:#0a0c0f;border:1px solid #d1d6dc}
.qty-control{border-color:#d0d5db}.qty-control button,.qty-btn,.action-tile .cp-icon,.pay-shortcut .cp-icon{color:#0a0c0f}
.quick:hover:not(:disabled){border-color:#868e98;box-shadow:0 9px 24px rgba(0,0,0,.09)}
.cart-header{
  background:linear-gradient(110deg,#000 0%,#101318 55%,#030405 100%);
  border-bottom-color:#2a2f36;box-shadow:inset 0 1px rgba(255,255,255,.10);
}
.total-card::before{background:linear-gradient(90deg,#050607,#b8bec6,#050607)}
.grand{border-top-color:#d8dce2}.grand .money{color:#050607}
.payment-panel{
  background:linear-gradient(145deg,#050607 0%,#181c22 52%,#000 100%);
  border-color:#252a31;box-shadow:0 18px 38px rgba(0,0,0,.24),inset 0 1px rgba(255,255,255,.10);
}
.payment-panel,.payment-panel .muted{color:#fff}.payment-panel .muted{opacity:.72}
.pay-shortcut{border-color:rgba(255,255,255,.14)}
.pay-shortcut:hover:not(:disabled){box-shadow:0 10px 26px rgba(0,0,0,.28);border-color:rgba(255,255,255,.30)}
.action-tile.primary{background:linear-gradient(115deg,#000,#181c22,#050607);box-shadow:var(--shadow-red)}
.table tbody tr:hover{background:#f1f3f5}
.modal-back{background:rgba(0,0,0,.62);backdrop-filter:blur(5px)}
.modal{border-color:#cfd4da;box-shadow:0 34px 100px rgba(0,0,0,.36)}
.pay-card.active{border-color:#111419;background:#f0f2f4;color:#050607;box-shadow:0 0 0 3px rgba(10,12,15,.10)}
.login-wrap{
  background:
    radial-gradient(circle at 15% 15%,rgba(255,255,255,.18),transparent 26%),
    linear-gradient(135deg,#010203 0%,#11151a 48%,#000 100%);
}
.login-wrap .login-card{box-shadow:0 30px 90px rgba(0,0,0,.46);border:1px solid #272c33}
.login-brand,.login-brand h1,.login-brand p{color:#fff}
.login-brand .brand-mark{background:linear-gradient(145deg,#fff,#d9dde2)}
.stock-low{color:#a42f3b}
.toast{
  left:50%;right:auto;bottom:auto;top:18px;transform:translate(-50%,-10px);
  max-width:min(760px,calc(100vw - 36px));white-space:pre-wrap;line-height:1.45;
  background:linear-gradient(115deg,#050607,#1b1f25);color:#fff;border:1px solid #343a42;
  box-shadow:0 16px 42px rgba(0,0,0,.32);
}
.toast.show{transform:translate(-50%,0)}.toast.error{background:#7f3039;border-color:#9c454f}
.access-warning,.mapping-note{border-color:#ccd1d7!important;background:#f1f3f5!important;color:#20242a!important}
.mapping-section{border-color:#d8dce1!important;background:#fafbfc!important}
.role-chip{background:rgba(255,255,255,.12)!important;border-color:rgba(255,255,255,.24)!important;color:#fff!important}
.api-error-card{margin:0 0 16px;padding:16px;border:1px solid #cfd4da;border-left:4px solid #111419;border-radius:14px;background:#f7f8fa}
.api-error-card strong{display:block;color:#111419;margin-bottom:6px}
.api-error-card pre{white-space:pre-wrap;word-break:break-word;margin:10px 0 0;padding:13px;border-radius:10px;background:#050607;color:#f5f6f7;border:1px solid #2b3037;font:12px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;max-height:270px;overflow:auto}
/* v0.1.7 — identidade do contratante */
.client-settings{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:18px}
.client-form-card{position:relative;overflow:hidden}
.client-form-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#050607,#d9dde2,#050607)}
.client-logo-drop{display:grid;place-items:center;min-height:155px;border:1.5px dashed #aeb4bc;border-radius:16px;background:linear-gradient(145deg,#fafbfc,#eef1f4);cursor:pointer;text-align:center;padding:20px}
.client-logo-drop:hover{border-color:#111419;background:#f5f6f7}
.client-logo-drop strong{display:block;margin-bottom:5px}.client-logo-drop small{color:#707782}
.client-brand-preview{position:relative;min-height:360px;border-radius:20px;overflow:hidden;background:linear-gradient(145deg,#000,#12161b 52%,#030405);color:#fff;border:1px solid #272c33;box-shadow:0 24px 50px rgba(0,0,0,.24),inset 0 1px rgba(255,255,255,.11)}
.client-brand-preview::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 5%,rgba(255,255,255,.09) 29%,transparent 48%);pointer-events:none}
.client-brand-preview .client-watermark{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}
.client-brand-preview .client-watermark img{max-width:72%;max-height:62%;object-fit:contain;filter:grayscale(.12)}
.client-preview-content{position:relative;z-index:2;padding:28px;min-height:360px;display:flex;flex-direction:column;justify-content:space-between}
.client-preview-logo{max-width:125px;max-height:70px;object-fit:contain;filter:drop-shadow(0 8px 18px rgba(0,0,0,.30))}
.client-preview-title{font-size:26px;font-weight:900;letter-spacing:-.02em}.client-preview-title small{display:block;margin-top:5px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#b9c0c8}
.client-preview-foot{font-size:11px;color:#aeb4bc;font-weight:700;letter-spacing:.03em}
/* diagnóstico pré-envio */
.blue-diagnostic{border:1px solid #cfd4da;border-radius:16px;padding:14px;background:#f8f9fa;margin-top:10px}
.blue-diagnostic.ready{border-left:4px solid #16834a}.blue-diagnostic.blocked{border-left:4px solid #a42f3b}
.blue-diagnostic pre{white-space:pre-wrap;word-break:break-word;background:#050607;color:#eef0f2;border-radius:10px;padding:12px;max-height:320px;overflow:auto;font:12px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace}
@media(max-width:1000px){.client-settings{grid-template-columns:1fr}}
@media(max-width:800px){.toast{top:10px;max-width:calc(100vw - 24px)}.client-brand-preview,.client-preview-content{min-height:280px}}
