.card-kpi h3 { margin: 0; font-weight: 700; }
.card-kpi span { color: #6c757d; }
@media print {
  nav, .no-print, footer { display: none !important; }
  body { background: white !important; }
}

@media print {
    .no-print, nav, footer, .btn, .alert { display: none !important; }
    body { background: #fff !important; }
    .card { border: 1px solid #ddd !important; box-shadow: none !important; }
}

.relatorio-rodape {
  display: none;
}

@media print {
  .relatorio-rodape {
    display: block !important;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    font-size: 11px;
    text-align: center;
    color: #555;
    border-top: 1px solid #ccc;
    padding-top: 4px;
    background: white;
  }
  main.container-fluid {
    padding-bottom: 32px;
  }
}

/* === Tami Premium Mobile v2.6.5 === */
:root{
  --tami-rose:#b76e79;
  --tami-rose-2:#d9a5ae;
  --tami-nude:#f8f3f1;
  --tami-text:#5e4b4b;
  --tami-gold:#c9a35b;
}

.btn-rose{background:linear-gradient(135deg,var(--tami-rose),#c88d96);border:0;color:#fff;font-weight:700;box-shadow:0 8px 20px rgba(183,110,121,.22)}
.btn-rose:hover{color:#fff;filter:brightness(.98)}
.btn-outline-rose{border:1px solid var(--tami-rose);color:var(--tami-rose);font-weight:700;background:#fff}
.btn-outline-rose:hover{background:var(--tami-rose);color:#fff}

.mobile-sales-shell{max-width:1040px;margin:0 auto 86px auto;color:var(--tami-text)}
.premium-hero{margin:-1.5rem -1.5rem 0 -1.5rem;padding:calc(env(safe-area-inset-top, 0px) + 22px) 18px 24px 18px;background:linear-gradient(135deg,#b76e79 0%,#e9bdc4 58%,#fff 100%);border-radius:0 0 28px 28px;box-shadow:0 12px 35px rgba(183,110,121,.2)}
.premium-hero.compact{padding-bottom:18px}
.premium-hero-content{display:flex;gap:14px;align-items:flex-start;max-width:1040px;margin:0 auto}
.premium-logo{width:60px;height:60px;object-fit:contain;border-radius:18px;background:rgba(255,255,255,.55);padding:4px;box-shadow:0 10px 24px rgba(0,0,0,.08)}
.premium-eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:800;color:#7b4550}
.premium-hero h1{font-size:1.55rem;font-weight:900;margin:0;color:#4f3839}
.premium-hero p{margin:2px 0 0 0;color:#664b4c;font-size:.95rem}
.mobile-card{background:#fff;border:1px solid rgba(183,110,121,.12);border-radius:22px;padding:16px;box-shadow:0 10px 30px rgba(70,40,45,.07)}
.premium-card{background:linear-gradient(180deg,#fff,#fff8f8)}
.cart-open-card{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;gap:10px}
.add-product-card{position:relative;z-index:2}
.scanner-box{background:#1b1517;border-radius:18px;padding:12px;overflow:hidden;color:#fff}
#readerCarrinho{border-radius:14px;overflow:hidden}
.product-search-results{display:flex;flex-direction:column;gap:10px;max-height:410px;overflow:auto;padding-right:2px}
.product-result-card{display:grid;grid-template-columns:62px 1fr auto;gap:10px;align-items:center;padding:10px;border:1px solid rgba(183,110,121,.16);border-radius:18px;background:#fff}
.product-result-img{width:62px;height:62px;border-radius:16px;overflow:hidden;background:#f3e5e8;display:flex;align-items:center;justify-content:center;color:#9b7b80;font-size:.75rem;text-align:center}
.product-result-img img{width:100%;height:100%;object-fit:cover}
.product-result-info strong{display:block;font-size:.94rem;line-height:1.15;color:#4f3839}
.product-result-info small{display:block;color:#7a686a;font-size:.74rem;margin-top:2px}
.product-result-price{font-weight:800;color:var(--tami-rose);font-size:.86rem;margin-top:2px}
.product-result-action{display:flex;flex-direction:column;gap:6px;align-items:end}
.product-result-action input{width:58px;border:1px solid #ead0d5;border-radius:12px;padding:5px;text-align:center}
.cart-items-list{display:flex;flex-direction:column;gap:12px}
.cart-item-card{background:#fff;border-radius:22px;padding:12px;display:grid;grid-template-columns:82px 1fr auto;gap:12px;box-shadow:0 10px 28px rgba(70,40,45,.07);border:1px solid rgba(183,110,121,.12)}
.cart-item-img-wrap{width:82px;height:82px;border-radius:18px;overflow:hidden;background:#f2e3e6;cursor:pointer}
.cart-item-img{width:100%;height:100%;object-fit:cover}
.cart-item-placeholder{height:100%;display:flex;align-items:center;justify-content:center;font-size:.75rem;color:#8b7478;text-align:center}
.cart-item-title{font-weight:900;line-height:1.15;color:#4f3839}
.cart-item-meta{font-size:.78rem;color:#826d71;margin-top:2px}
.cart-item-price{font-weight:800;color:var(--tami-rose);margin-top:5px}
.qty-form{display:inline-flex;align-items:center;gap:0;margin-top:7px;background:#f8eef0;border-radius:999px;padding:3px}
.qty-form button{width:32px;height:32px;border:0;background:#fff;border-radius:50%;color:var(--tami-rose);font-weight:900}
.qty-form input{width:44px;border:0;background:transparent;text-align:center;font-weight:800;color:#4f3839}
.cart-item-side{text-align:right;display:flex;flex-direction:column;justify-content:space-between;align-items:end;font-size:.9rem}
.cart-bottom-bar{position:fixed;left:0;right:0;bottom:0;z-index:1040;background:linear-gradient(135deg,#b76e79,#d9a5ae);color:#fff;padding:10px 16px calc(env(safe-area-inset-bottom, 0px) + 10px);display:flex;align-items:center;justify-content:space-between;box-shadow:0 -10px 32px rgba(94,75,75,.22)}
.cart-bottom-bar span{display:block;text-transform:uppercase;font-size:.72rem;letter-spacing:.08em;opacity:.9}
.cart-bottom-bar strong{display:block;font-size:1.35rem;line-height:1;font-weight:900}
.cart-bottom-bar .btn{border-radius:999px;color:var(--tami-rose);font-weight:900;padding-left:24px;padding-right:24px}

@media (max-width: 767px){
  body{background:var(--tami-nude)!important;padding-bottom:78px}
  main.container-fluid{padding-left:14px!important;padding-right:14px!important;margin-top:0!important}
  .navbar{background:linear-gradient(135deg,#b76e79,#e9bdc4)!important;border:0;padding-top:calc(env(safe-area-inset-top, 0px) + 8px);box-shadow:0 8px 24px rgba(183,110,121,.18)}
  .navbar .navbar-brand,.navbar .nav-link{color:#fff!important}
  .navbar-toggler{border:0;box-shadow:none!important}
  .premium-hero{margin-left:-14px;margin-right:-14px;border-radius:0 0 26px 26px}
  .mobile-sales-shell{margin-bottom:100px}
  .cart-item-card{grid-template-columns:76px 1fr;position:relative;padding-right:14px}
  .cart-item-side{grid-column:1 / -1;flex-direction:row;align-items:center;width:100%;border-top:1px solid #f1dde1;padding-top:8px;margin-top:2px}
  .product-result-card{grid-template-columns:58px 1fr;align-items:start}
  .product-result-action{grid-column:1 / -1;flex-direction:row;justify-content:space-between;align-items:center}
  .product-result-action input{width:80px}
  .table-responsive.mobile-cardify table,.table-responsive.mobile-cardify thead,.table-responsive.mobile-cardify tbody,.table-responsive.mobile-cardify th,.table-responsive.mobile-cardify td,.table-responsive.mobile-cardify tr{display:block;width:100%}
}


/* === Tami Premium Mobile v2.6.5 REV4 === */
html { background: #b76e79; }
body.tami-mobile-shell { min-height: 100vh; }

@media (max-width: 767px){
  :root{ color-scheme: light; }
  html, body { overflow-x: hidden !important; }
  body.tami-mobile-shell{
    background: linear-gradient(180deg,#fff7f8 0,#f8f3f1 260px,#f7f7f7 100%) !important;
  }

  /* Header/toolbar mobile: aparência de app e safe area */
  .navbar{
    margin-top: calc(env(safe-area-inset-top, 0px) * -1);
    padding-top: calc(env(safe-area-inset-top, 0px) + 12px) !important;
    padding-bottom: 12px !important;
    min-height: calc(70px + env(safe-area-inset-top, 0px));
    background: linear-gradient(135deg,#8d4b57 0%,#b76e79 48%,#e9bdc4 100%) !important;
    box-shadow: 0 8px 26px rgba(141,75,87,.25);
  }
  .navbar .container-fluid{ align-items:center; }
  .navbar-brand{ font-size:1.28rem; line-height:1; color:#fff!important; }
  .navbar-brand img{ width:44px!important; height:44px!important; border-radius:14px!important; background:rgba(255,255,255,.78)!important; }
  .navbar-toggler{ border:1px solid rgba(255,255,255,.35)!important; border-radius:14px; padding:8px 10px; }
  .navbar-collapse{ padding:14px 4px 4px; }
  .navbar-nav .nav-link{ font-size:1.02rem; padding:.66rem .25rem; color:rgba(255,255,255,.88)!important; }
  .dropdown-menu{ border-radius:16px; border:0; box-shadow:0 12px 30px rgba(70,40,45,.16); }
  main.container-fluid{ padding-top:10px!important; }

  /* Carrinho: aproxima do mockup aprovado */
  .carrinho-page .premium-hero{
    margin-top: calc(-10px - env(safe-area-inset-top, 0px));
    padding-top: calc(env(safe-area-inset-top, 0px) + 28px);
    background: radial-gradient(circle at 72% 5%,#f4c9cf 0,#d99aa5 26%,#b76e79 62%,#8d4b57 100%);
    border-radius: 0 0 32px 32px;
    color:#fff;
  }
  .carrinho-page .premium-hero h1{ color:#4b3035; font-size:1.72rem; }
  .carrinho-page .premium-hero p{ color:#68474d; }
  .carrinho-page .premium-eyebrow{ color:#7a4650; }
  .carrinho-page .premium-logo{ width:72px; height:72px; border-radius:22px; background:rgba(255,255,255,.68); }

  /* Cards e botões mais suaves */
  .mobile-card{ border-radius:24px; border:1px solid rgba(183,110,121,.12); box-shadow:0 16px 40px rgba(80,50,55,.08); }
  .btn-rose{ background:linear-gradient(135deg,#b76e79,#cf8490); }
  .btn-outline-rose{ border-color:#b76e79; color:#9b4f5d; }
  .cart-bottom-bar{
    border-radius:22px 22px 0 0;
    background:linear-gradient(135deg,#b76e79,#d99aa5 55%,#8d4b57);
    padding:14px 18px calc(env(safe-area-inset-bottom, 0px) + 14px);
  }
  .cart-bottom-bar strong{ font-size:1.55rem; }
  .cart-bottom-bar .btn{ min-width:145px; min-height:52px; box-shadow:0 0 0 1px rgba(255,255,255,.5),0 8px 22px rgba(0,0,0,.12); }
  .cart-item-card:nth-child(even){ background:linear-gradient(180deg,#fff,#fff6f7); }
  .cart-item-card:nth-child(odd){ background:#fff; }

  /* Tabelas viram cards no celular */
  .table-responsive{ overflow:visible!important; }
  table.tami-responsive-table{
    border-collapse:separate!important;
    border-spacing:0 12px!important;
    width:100%!important;
  }
  table.tami-responsive-table thead{ display:none!important; }
  table.tami-responsive-table tbody,
  table.tami-responsive-table tr,
  table.tami-responsive-table td{ display:block!important; width:100%!important; }
  table.tami-responsive-table tr{
    border-radius:20px!important;
    overflow:hidden;
    background:#fff!important;
    box-shadow:0 8px 24px rgba(70,40,45,.07);
    border:1px solid rgba(183,110,121,.10);
    margin-bottom:12px;
  }
  table.tami-responsive-table tr:nth-child(even){ background:#fff6f7!important; }
  table.tami-responsive-table td{
    border:0!important;
    padding:9px 14px!important;
    display:flex!important;
    justify-content:space-between;
    gap:14px;
    align-items:flex-start;
    text-align:right;
    min-height:38px;
    word-break:break-word;
  }
  table.tami-responsive-table td::before{
    content: attr(data-label);
    flex:0 0 38%;
    text-align:left;
    font-weight:800;
    color:#7a4650;
  }
  table.tami-responsive-table td:empty{ display:none!important; }
  table.tami-responsive-table td:first-child{
    background:linear-gradient(90deg,#f7e5e9,#fff);
    font-weight:900;
    color:#4b3035;
    border-radius:20px 20px 0 0;
  }
  table.tami-responsive-table td:last-child{
    justify-content:flex-end;
    flex-wrap:wrap;
    background:#fff;
    border-radius:0 0 20px 20px;
  }
  table.tami-responsive-table td:last-child::before{ display:none; }
  table.tami-responsive-table .btn{ margin:2px; white-space:normal; }

  /* Grupos de informação com cores suaves */
  table.tami-responsive-table td[data-label*="Tipo"]{ background:#eef6ff!important; }
  table.tami-responsive-table td[data-label*="Cobrança"],
  table.tami-responsive-table td[data-label*="Status"]{ background:#edf9f1!important; }
  table.tami-responsive-table td[data-label*="Vendedor"],
  table.tami-responsive-table td[data-label*="Fornecedor"]{ background:#fff8df!important; }
  table.tami-responsive-table td[data-label*="ID"]{ background:#f4ecff!important; }
  table.tami-responsive-table td[data-label*="Total"],
  table.tami-responsive-table td[data-label*="Valor"]{ font-weight:900; color:#9b4f5d; }

  /* Cabeçalhos e filtros nos relatórios */
  h1,h2{ font-size:1.45rem!important; line-height:1.12; }
  .d-flex.justify-content-between.align-items-center.mb-3{ align-items:flex-start!important; gap:8px; flex-wrap:wrap; }
  .card .card-body{ padding:16px; }
  .form-control{ min-height:44px; border-radius:12px; }
  .btn{ border-radius:12px; }

  footer.no-print{ font-size:.78rem; padding-bottom:16px; }
}

@media print{
  body{ font-size:12px!important; }
  table{ font-size:11px!important; }
  h1,h2,h3{ font-size:18px!important; }
  .card{ margin-bottom:8px!important; }
}

/* === Tami v2.6.5 REV5: branding, status bar e placeholders === */
.report-brand{
  display:flex;
  align-items:center;
  gap:12px;
  padding:10px 12px;
  margin:0 0 14px 0;
  border-radius:18px;
  background:linear-gradient(135deg,#fff7f8,#fff,#f8e3e7);
  border:1px solid rgba(183,110,121,.14);
  box-shadow:0 8px 24px rgba(70,40,45,.06);
}
.report-brand img{width:54px;height:54px;object-fit:contain;border-radius:14px;background:rgba(255,255,255,.7)}
.report-brand strong{display:block;color:#4f3839;font-size:1.05rem;line-height:1.1}
.report-brand small{display:block;color:#8d6b70;font-size:.78rem}
.produto-thumb{background:#fff7f8;border-color:#ead0d5!important}
.placeholder-illustration{background:#fff7f8;filter:saturate(.92);}
.placeholder-badge,.placeholder-mini{position:absolute;right:6px;bottom:6px;background:rgba(255,255,255,.88);color:#8d4b57;border-radius:999px;padding:1px 7px;font-size:.63rem;font-weight:800;box-shadow:0 2px 8px rgba(0,0,0,.08)}
.product-result-img{position:relative}.cart-item-img-wrap{position:relative}.product-result-img img{display:block}.cart-item-img{display:block}

@media (max-width: 767px){
  /* Ajuda o Android/Chrome/PWA a pintar a área superior com a identidade da loja. */
  html{background:#8d4b57!important;}
  body::before{
    content:"";
    position:fixed;
    top:0;left:0;right:0;
    height:calc(env(safe-area-inset-top, 0px) + 14px);
    background:linear-gradient(135deg,#8d4b57,#b76e79,#e9bdc4);
    z-index:2000;
    pointer-events:none;
  }
  .navbar{position:relative;z-index:2001;}
  .report-brand{border-radius:20px;margin-top:4px;padding:10px;background:linear-gradient(135deg,#fff,#fff7f8)}
  .report-brand img{width:48px;height:48px}
}

@media print{
  .report-brand{display:flex!important;box-shadow:none!important;border:0!important;border-bottom:1px solid #ddd!important;border-radius:0!important;margin-bottom:8px!important;padding:4px 0 8px 0!important;background:#fff!important;}
  .report-brand img{width:42px!important;height:42px!important;}
  .report-brand strong{font-size:14px!important;}
  .report-brand small{font-size:10px!important;}
}
