
:root{
  --blue-1:#245db5;
  --blue-2:#5e92de;
  --blue-3:#d9e7fb;
  --blue-4:#b9cef1;
  --blue-5:#89afe6;
  --line:#6f8fbe;
  --card:#edf4ff;
  --card-2:#dbe8fb;
  --ink:#17365f;
  --ink-soft:#49698f;
  --danger:#b43f3f;
  --success:#2f814d;
  --warn:#cb9126;
  --shadow:0 10px 24px rgba(15,42,84,.18);
  --shadow-3d:0 2px 0 rgba(255,255,255,.9) inset, 0 -2px 0 rgba(84,116,168,.22) inset, 0 6px 10px rgba(17,42,79,.14);
  --radius:12px;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family:Tahoma,Arial,sans-serif;
  background:linear-gradient(180deg,#c9dcfb 0%, #b3cdf5 42%, #9cbeef 100%);
  color:var(--ink);
}
a{color:inherit}
img{max-width:100%;display:block}
button,input,select,textarea{font:inherit}

.global-top-menu{
  position:fixed;top:0;left:0;right:0;z-index:1000;
  background:linear-gradient(180deg,#4b7fd6 0%, #2e60ad 55%, #29569a 100%);
  box-shadow:0 3px 0 rgba(255,255,255,.35) inset, 0 -2px 0 rgba(17,42,79,.16) inset, 0 3px 10px rgba(0,0,0,.16);
  border-bottom:1px solid rgba(255,255,255,.45);
}
.global-top-menu-inner{
  max-width:1500px;margin:0 auto;padding:6px 12px;
  display:flex;align-items:center;gap:16px;justify-content:space-between;
}
.global-brand{
  color:#fff;text-decoration:none;font-size:25px;font-weight:700;letter-spacing:-.6px;
  text-shadow:0 1px 0 rgba(0,0,0,.32), 0 2px 8px rgba(0,0,0,.18);
}
.global-nav{display:flex;gap:7px;flex-wrap:wrap;align-items:center}
.global-nav a{
  text-decoration:none;color:#fff;padding:6px 10px;border-radius:9px;
  background:linear-gradient(180deg,rgba(255,255,255,.26),rgba(255,255,255,.09));
  border:1px solid rgba(255,255,255,.26);
  box-shadow:0 1px 0 rgba(255,255,255,.55) inset, 0 -1px 0 rgba(0,0,0,.14) inset;
  font-size:12px;font-weight:700;
}
.global-nav a:hover{background:linear-gradient(180deg,rgba(255,255,255,.34),rgba(255,255,255,.14))}
.global-nav .nav-logout{background:linear-gradient(180deg,rgba(198,78,78,.65),rgba(139,39,39,.65))}
.with-fixed-menu{padding-top:56px}
.page-wrap{max-width:1450px;margin:10px auto;padding:0 10px 14px}
.page-title{font-size:25px;margin:0 0 10px;color:#173965}
.card,.table-card,.small-card,.login-card,.card-box,.pix-card{
  background:linear-gradient(180deg,#f9fbff 0%, #e6effd 45%, #d7e6fb 100%);
  border:1px solid #81a0cb;border-radius:14px;box-shadow:var(--shadow-3d), var(--shadow);
}
.card,.table-card,.small-card,.card-box,.pix-card{padding:12px}
.table-card{overflow:auto}
label{display:block;margin-bottom:5px;font-weight:700;color:#204675}
input,select,textarea{
  width:100%;padding:7px 10px;border-radius:9px;border:1px solid #8fabd4;
  background:linear-gradient(180deg,#ffffff,#edf4ff);color:#16345f;outline:none;
  box-shadow:0 1px 0 rgba(255,255,255,.8) inset, 0 1px 3px rgba(31,72,128,.1);
}
textarea{min-height:90px;resize:vertical}
.btn{
  border:1px solid rgba(28,66,117,.28);border-radius:10px;padding:8px 12px;font-weight:700;cursor:pointer;
  box-shadow:0 1px 0 rgba(255,255,255,.7) inset, 0 -1px 0 rgba(0,0,0,.12) inset, 0 4px 8px rgba(42,76,132,.14);
}
.btn:hover{filter:brightness(1.03)}
.btn-inline{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}
.btn-full{width:100%}
.btn-success{background:linear-gradient(180deg,#5a8fe2,#2f66bb);color:#fff}
.btn-light{background:linear-gradient(180deg,#ffffff,#e5efff);color:#15365f;border:1px solid #92abd1}
.btn-whats{background:linear-gradient(180deg,#57ba72,#2d8746);color:#fff}
.btn-print{background:linear-gradient(180deg,#f3cd73,#d59b2c);color:#593d00}
.btn-pix{background:linear-gradient(180deg,#78d4df,#359aaa);color:#fff}
.align-end{display:flex;align-items:flex-end}
.center{text-align:center}
.small-card{margin-bottom:16px}
.grid2,.grid3,.grid4,.filter-grid,.product-form-grid,.user-form-grid{
  display:grid;gap:12px;
}
.grid2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid3,.filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid4,.product-form-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.user-form-grid{grid-template-columns:repeat(6,minmax(0,1fr))}
.alert-box,.warning-box{
  padding:12px 14px;border-radius:12px;margin-bottom:12px;font-weight:700
}
.alert-box{background:#ffe1e1;border:1px solid #d89a9a;color:#7d2323}
.warning-box{background:#fff0ce;border:1px solid #e2c27a;color:#7a580b}
.muted{color:var(--ink-soft)}
.small-text{font-size:12px}
.display{width:100%}
.dataTables_wrapper{color:var(--ink)}

.login-page{
  min-height:100vh;display:grid;place-items:center;
  background:linear-gradient(180deg,#86aee8 0%,#6b96d9 50%,#87afe9 100%);
}
.login-card{width:min(430px,92vw);padding:26px}
.brand-login{font-size:40px;font-weight:700;color:#1a3f70;margin-bottom:6px}
.login-sub{margin:0 0 16px;color:#315987}
.login-form{display:grid;gap:12px}
.demo-box{margin-top:16px;background:#edf4ff;border:1px solid #9bb6dd;padding:12px;border-radius:12px;color:#23446d}

.pdv-shell{max-width:1570px;margin:6px auto;padding:0 6px 10px}
.pdv-shortcuts{display:grid;grid-template-columns:1fr 348px;gap:8px;align-items:stretch}
.pdv-logo-panel{
  background:linear-gradient(180deg,#4b7fd6 0%, #2e60ae 60%, #275397 100%);
  color:#fff;padding:10px 16px;border-radius:14px;box-shadow:var(--shadow-3d), var(--shadow);
  min-height:80px;display:flex;align-items:center;gap:14px;border:1px solid rgba(255,255,255,.42)
}
.pdv-logo-mark{font-size:44px;line-height:1;filter:drop-shadow(0 2px 2px rgba(0,0,0,.22))}
.pdv-logo-text{font-size:30px;font-weight:700;letter-spacing:-.8px;text-shadow:0 1px 0 rgba(0,0,0,.34),0 2px 7px rgba(0,0,0,.18)}
.pdv-logo-sub{font-size:11px;opacity:.98;margin-top:2px}
.pdv-shortcut-panel{
  background:linear-gradient(180deg,#fdfefe 0%, #ecf3ff 35%, #d8e5fb 100%);
  border:1px solid #88a7d5;border-radius:14px;padding:8px 10px;box-shadow:var(--shadow-3d), var(--shadow)
}
.shortcut-title{font-weight:700;text-align:center;font-size:19px;color:#173b68;margin-bottom:6px;text-shadow:0 1px 0 #fff}
.shortcut-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.shortcut-btn{
  border:1px solid #90abd3;border-radius:9px;background:linear-gradient(180deg,#ffffff 0%,#eef4ff 48%,#dce8ff 100%);
  box-shadow:0 1px 0 rgba(255,255,255,.9) inset, 0 -1px 0 rgba(58,92,146,.16) inset, 0 2px 4px rgba(17,42,79,.12);
  padding:6px;text-align:left;cursor:pointer;color:#173965;min-height:42px
}
.shortcut-btn strong{display:inline-block;font-size:20px;margin-right:6px;text-shadow:0 1px 0 #fff}
.shortcut-btn span{font-size:10px;font-weight:700;display:inline-block;vertical-align:middle;width:calc(100% - 40px)}
.shortcut-btn:hover{background:linear-gradient(180deg,#fff,#dce9ff)}

.pdv-ribbon{
  margin:6px auto;background:linear-gradient(180deg,#ffffff,#e4eeff 52%,#d5e4fb);border:1px solid #89a8d4;
  width:190px;text-align:center;border-radius:999px;padding:3px 12px;font-weight:700;color:#2e5585;box-shadow:var(--shadow-3d), var(--shadow)
}
.pdv-product-title{
  background:linear-gradient(180deg,#ffffff 0%,#f0f4fb 45%,#dae4f4 100%);border:1px solid #8aa9d5;
  border-radius:12px;box-shadow:var(--shadow-3d), var(--shadow);padding:8px 12px;margin-bottom:8px;
  text-align:center;font-size:38px;line-height:1;min-height:64px;color:#000;display:flex;align-items:center;justify-content:center;
  text-shadow:0 1px 0 rgba(255,255,255,.75)
}

.pdv-main-grid{display:grid;grid-template-columns:1.18fr .5fr;gap:8px;align-items:start}
.pdv-left,.pdv-right{min-width:0}
.pdv-panel{
  background:linear-gradient(180deg,#f5f9ff 0%, #e4eefc 45%, #d6e4fb 100%);border:1px solid #82a0cd;border-radius:12px;box-shadow:var(--shadow-3d), var(--shadow);overflow:hidden
}
.pdv-panel-title{
  background:linear-gradient(180deg,#4a79c7,#2f64b8 58%, #29559d);color:#fff;padding:5px 10px;text-align:center;
  font-size:19px;font-weight:700;border-bottom:1px solid rgba(255,255,255,.28);text-shadow:0 1px 0 rgba(0,0,0,.25)
}
.pdv-ticket-wrap{padding:0}
.pdv-ticket-table{width:100%;border-collapse:collapse;font-size:11px;background:#fff}
.pdv-ticket-table thead th{background:linear-gradient(180deg,#eef4fd,#dde8f8);border:1px solid #b5c7e0;padding:4px 3px;color:#294f7e;text-shadow:0 1px 0 #fff}
.pdv-ticket-table tbody td{border:1px solid #d0dceb;padding:4px 3px;color:#183a63;background:#ffffff}

.product-palette{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:8px;max-height:124px;overflow:auto}
.product-palette .produto-card{border:1px solid #88a6d0;border-radius:9px;background:linear-gradient(180deg,#ffffff,#e8f1ff 54%,#dbe8ff);padding:6px;text-align:left;cursor:pointer;box-shadow:0 1px 0 rgba(255,255,255,.9) inset, 0 -1px 0 rgba(51,83,136,.14) inset, 0 2px 5px rgba(20,57,107,.11)}
.product-palette .produto-card strong{display:block;color:#173965;font-size:12px}
.product-palette .produto-card span{float:right;font-weight:700;color:#24538a;font-size:11px}
.product-palette .produto-card small{display:block;color:#58779f;font-size:10px;margin-top:4px}
.product-palette .produto-card:hover{background:linear-gradient(180deg,#fff,#d9e7ff)}
.pdv-ticket-scroll{height:314px;overflow:auto;background:#fff;box-shadow:inset 0 2px 6px rgba(41,75,129,.08)}
.pdv-ticket-table tbody tr:nth-child(even) td{background:#f8fbff}
.pdv-ticket-table tbody tr.active td{background:#cfe1fb}
.pdv-ticket-empty{padding:30px;color:#5f7ea8;text-align:center}

.right-top-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px}
.info-box,.product-photo-box,.total-pay-box,.status-box{
  background:linear-gradient(180deg,#fdfefe 0%,#edf3ff 44%,#dce5f8 100%);border:1px solid #8ba8d1;border-radius:10px;box-shadow:var(--shadow-3d), var(--shadow);overflow:hidden
}
.info-label,.photo-label,.total-pay-label{
  text-align:center;font-size:15px;font-weight:700;color:#1f4b7d;padding:4px 6px 0;text-shadow:0 1px 0 #fff
}
.info-value{
  margin:4px 8px 8px;
  background: linear-gradient(180deg, #1f91d4, #0d67e0 60%, #132a49);
  border: 1px solid #12366d;
  border-radius:10px;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.88), inset 0 -2px 0 rgba(128,149,183,.18), 0 3px 6px rgba(0,0,0,.08);font-size:24px;color:#182f4f;
  min-height:52px;display:flex;align-items:center;justify-content:center;text-align:center;padding:6px 8px
}
.product-photo-box{grid-row:span 2;display:flex;flex-direction:column}
.product-photo-frame{padding:8px;flex:1}
.product-photo{
  border-radius:10px;
  background:linear-gradient(135deg,#efe5c5 0%,#d6b97c 45%,#bb9858 100%);
  min-height:136px;border:1px solid #b28f4d;position:relative;overflow:hidden;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.35), inset 0 -2px 0 rgba(92,67,22,.12)
}
.product-photo::before,
.product-photo::after{content:"";position:absolute;border-radius:50%;background:radial-gradient(circle at 40% 38%,#fffdf6 0,#f5efd6 46%,#dfc893 100%);border:2px solid #d0bd8c;width:64px;height:38px;transform:rotate(28deg);box-shadow:inset 0 0 0 6px rgba(255,255,255,.28), 0 2px 4px rgba(0,0,0,.16)}
.product-photo::before{left:18px;top:20px}
.product-photo::after{right:18px;bottom:22px}
.product-photo-inner{position:absolute;inset:0;display:grid;place-items:center;color:#735c2c;font-weight:700;font-size:15px;text-shadow:0 1px 0 rgba(255,255,255,.4)}
.total-pay-box .info-value{font-size:48px;min-height:86px;color:#000;letter-spacing:-1px}
.status-box{margin-top:8px;padding:10px;text-align:center;font-size:16px;font-weight:700;color:#284f7f;text-shadow:0 1px 0 #fff}

.pdv-actions-bar{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;margin-top:8px}
.pdv-action{padding:9px 6px;border-radius:10px;border:1px solid #8ba8d1;background:linear-gradient(180deg,#fff,#e5efff 58%,#d9e7ff);box-shadow:0 1px 0 rgba(255,255,255,.9) inset, 0 -1px 0 rgba(51,83,136,.14) inset, 0 3px 5px rgba(20,57,107,.12);cursor:pointer;font-weight:700;color:#16345f;font-size:12px;text-shadow:0 1px 0 rgba(255,255,255,.65)}
.pdv-action:hover{background:linear-gradient(180deg,#fff,#d8e8ff)}
.pdv-action.primary{background:linear-gradient(180deg,#5e92df,#2f64b8 62%,#29579f);color:#fff;text-shadow:0 1px 0 rgba(0,0,0,.22)}
.pdv-action.warn{background:linear-gradient(180deg,#f2cf76,#d59b2c 62%,#b57c12);color:#593d00}
.pdv-action.success{background:linear-gradient(180deg,#56bd74,#2a7d4a 62%,#23653b);color:#fff;text-shadow:0 1px 0 rgba(0,0,0,.2)}
.pdv-action.danger{background:linear-gradient(180deg,#de7373,#b73939 62%,#8f2b2b);color:#fff;text-shadow:0 1px 0 rgba(0,0,0,.2)}

.checkout-modal{
  position:fixed;inset:0;background:rgba(12,35,69,.45);display:flex;align-items:center;justify-content:center;z-index:1200;padding:16px
}
.checkout-modal.hidden{display:none}
.checkout-card{
  width:min(860px,96vw);background:linear-gradient(180deg,#ffffff,#edf4ff 44%,#dce8ff);border:1px solid #89a8d4;border-radius:18px;box-shadow:var(--shadow-3d), 0 20px 40px rgba(8,26,53,.32);overflow:hidden
}
.checkout-head{background:linear-gradient(180deg,#4a79c7,#2f64b8);color:#fff;padding:12px 18px;font-size:28px;font-weight:700;display:flex;justify-content:space-between;align-items:center}
.checkout-body{padding:18px}
.checkout-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.checkout-help{margin-top:12px;background:#edf4ff;border:1px solid #9cb5da;color:#274c7b;padding:12px;border-radius:12px;font-weight:700}
.checkout-actions{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:16px}
.checkout-close{background:transparent;border:none;color:#fff;font-size:28px;cursor:pointer}
.hidden{display:none !important}

.dashboard-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px}
.stat-card{padding:14px}
.stat-card strong{display:block;font-size:28px;margin-top:2px}
.quick-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.quick-link{display:flex;flex-direction:column;gap:6px;text-decoration:none;padding:14px;border-radius:12px;background:linear-gradient(180deg,#fff,#e9f2ff 54%,#dbe8ff);border:1px solid #8aa8d2;box-shadow:var(--shadow-3d), var(--shadow);font-weight:700}
.quick-link small{color:#496a95;font-weight:400}

@media (max-width:1200px){
  .pdv-shortcuts,.pdv-main-grid{grid-template-columns:1fr}
  .right-top-grid{grid-template-columns:repeat(2,1fr)}
  .product-photo-box{grid-row:auto}
  .pdv-actions-bar,.checkout-actions,.dashboard-grid,.quick-links,.grid4,.product-form-grid,.user-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:760px){
  .with-fixed-menu{padding-top:98px}
  .global-top-menu-inner{flex-direction:column;align-items:flex-start}
  .global-nav{width:100%}
  .pdv-logo-text{font-size:22px}
  .pdv-product-title{font-size:24px;min-height:54px}
  .shortcut-grid,.pdv-actions-bar,.checkout-actions,.dashboard-grid,.quick-links,.grid2,.grid3,.grid4,.filter-grid,.product-form-grid,.user-form-grid,.checkout-grid{grid-template-columns:1fr}
  .right-top-grid{grid-template-columns:1fr}
  .total-pay-box .info-value{font-size:34px}
}


.compact-note{font-size:11px;color:#4d6c94}
.scroll-y{overflow:auto;max-height:100%}


:root{
  --brand:#2D7EF7;
  --brand-dark:#0F3F88;
  --brand-soft:#eaf2ff;
}
body{background:linear-gradient(180deg,#e8f1ff 0 180px,#f4f8ff 180px 100%)}
.global-top-menu{backdrop-filter:blur(14px);background:rgba(103,162,255,.82)!important;border-bottom:1px solid rgba(255,255,255,.08)}
.global-brand{display:flex!important;align-items:center;gap:12px;font-size:20px!important}
.global-brand img{width:42px;height:42px;display:block}
.global-brand span{font-weight:800;color:#fff;letter-spacing:-.5px}
.card{background:linear-gradient(180deg,#ffffff 0%,#f7faff 100%);border:1px solid #dbe7fb;box-shadow:0 16px 38px rgba(15,63,136,.08);border-radius:20px}
.hero-banner{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:22px 24px;margin-bottom:16px}
.gradient-card{background:linear-gradient(135deg,#0f3f88 0%,#2563eb 58%,#60a5fa 100%);color:#fff;border:none}
.gradient-card h1,.gradient-card p,.gradient-card .eyebrow{color:#fff}
.gradient-card p{max-width:700px;opacity:.92}
.eyebrow{font-size:12px;font-weight:800;letter-spacing:.14em;opacity:.85}
.hero-actions{display:flex;gap:10px;flex-wrap:wrap}
.premium-stats .stat-card{position:relative;overflow:hidden;border:none}
.premium-stats .stat-card::after{content:"";position:absolute;right:-30px;top:-30px;width:110px;height:110px;border-radius:50%;background:rgba(255,255,255,.12)}
.premium-stats .stat-card span,.premium-stats .stat-card small{color:#fff;opacity:.92}
.premium-stats .stat-card strong{color:#fff}
.stat-blue{background:linear-gradient(135deg,#1d4ed8,#60a5fa)}
.stat-green{background:linear-gradient(135deg,#059669,#34d399)}
.stat-purple{background:linear-gradient(135deg,#7c3aed,#a78bfa)}
.stat-orange{background:linear-gradient(135deg,#ea580c,#fdba74)}
.stat-cyan{background:linear-gradient(135deg,#0891b2,#67e8f9)}
.stat-dark{background:linear-gradient(135deg,#1f2937,#475569)}
.dashboard-modern-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:14px;margin-bottom:14px}
.chart-card,.top-products-card,.premium-summary-card,.premium-form-card{padding:18px}
.rank-row{display:flex;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid #edf2fb}
.rank-row:last-child{border-bottom:none}
.rank-badge{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#0f3f88,#2d7ef7);color:#fff;font-weight:800}
.modern-links{grid-template-columns:repeat(3,minmax(0,1fr))}
.modern-history-row{background:#fff;border:1px solid #ebf0fb;border-radius:14px;padding:12px 14px;margin-bottom:8px;box-shadow:0 6px 18px rgba(15,63,136,.05)}
.logo-img-small{width:70px;height:auto;display:block}
.premium-logo-panel{background:linear-gradient(135deg,#0f3f88 0%,#2d7ef7 70%,#7db5ff 100%);border:none;box-shadow:0 18px 34px rgba(15,63,136,.26)}
.premium-shortcut-panel{background:linear-gradient(180deg,#fff 0%,#f5f9ff 100%)}
.premium-market-shell{padding-bottom:12px}
.premium-title{background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);border:1px solid #d9e4f8;box-shadow:0 10px 24px rgba(15,63,136,.09);font-size:34px}
.premium-panel,.premium-photo-box,.premium-total-box,.premium-checkout-card{box-shadow:0 20px 40px rgba(15,63,136,.14)}
.real-photo-wrap{min-height:220px;background:#fff!important;border:1px solid #dce7fb}
.real-photo-wrap::before,.real-photo-wrap::after,.product-photo-inner{display:none!important}
.real-photo-wrap img{width:100%;height:100%;object-fit:cover;display:block;border-radius:10px;min-height:220px}
.premium-total-box .info-value{font-size:44px;background:linear-gradient(180deg,#0f172a,#1e3a8a);color:#fff;border:none;box-shadow:none}
.premium-actions-bar .pdv-action{border:none;box-shadow:0 10px 18px rgba(15,63,136,.12)}
.product-preview-box{display:flex;flex-direction:column;gap:8px}
.product-thumb,.table-thumb{border-radius:14px;border:1px solid #dbe7fb;object-fit:cover;background:#fff}
.product-thumb{width:100%;max-width:180px;height:120px}
.table-thumb{width:56px;height:56px}
.detail-block.soft-block{background:#f7faff;border:1px solid #e3ebfb;border-radius:16px;padding:14px}
.text-success{color:#047857;font-weight:700}.text-danger{color:#b91c1c;font-weight:700}
.stack-form{display:grid;gap:12px}.caixa-cta{margin-top:14px}
.compact-hero{padding:18px 22px}.top-products-card .list-scroll{max-height:320px}.chart-card canvas{max-height:290px}
@media (max-width:1100px){.dashboard-modern-grid,.modern-links{grid-template-columns:1fr}}


/* ===== V8 DASHBOARD DESKTOP + MOBILE ===== */
.dashboard-v8-wrap{max-width:1500px}
.dashboard-v8-hero{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:16px 18px;margin-bottom:12px
}
.dashboard-v8-hero h1{margin:4px 0 6px;font-size:30px;line-height:1}
.dashboard-v8-hero p{margin:0;color:var(--ink-soft);max-width:760px}
.hero-badges{display:flex;gap:8px;flex-wrap:wrap}
.hero-badge{
  padding:8px 12px;border-radius:999px;font-size:12px;font-weight:700;
  background:#edf4ff;border:1px solid #a9c0e7
}
.hero-badge.ok{background:#e7fff0;border-color:#92d2ae;color:#1d6f41}
.hero-badge.off{background:#fff3f3;border-color:#e1b0b0;color:#9b3d3d}
.stats-v8-grid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:12px
}
.stat-v8{padding:14px 16px}
.stat-v8 .stat-label{display:block;font-size:12px;font-weight:700;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.4px}
.stat-v8 strong{display:block;font-size:28px;line-height:1.1;margin:10px 0 6px}
.stat-v8 small{color:var(--ink-soft)}
.dashboard-v8-main{
  display:grid;grid-template-columns:minmax(0,1.5fr) minmax(320px,.9fr);gap:12px;align-items:start
}
.dashboard-v8-left,.dashboard-v8-right{display:grid;gap:12px}
.chart-v8-card,.quick-v8-card,.side-v8-card{padding:14px}
.chart-v8-holder{height:300px}
.quick-v8-grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px
}
.quick-v8-link{
  display:block;text-decoration:none;padding:12px;border-radius:12px;
  background:linear-gradient(180deg,#ffffff,#edf5ff);border:1px solid #b8cdee;
  box-shadow:0 1px 0 rgba(255,255,255,.9) inset
}
.quick-v8-link strong{display:block;font-size:15px;margin-bottom:5px}
.quick-v8-link small{display:block;color:var(--ink-soft);line-height:1.35}
.dashboard-v8-scroll{max-height:360px}
.dashboard-v8-top-list{display:grid;gap:10px}
.top-v8-row{
  display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:center;
  padding:10px 0;border-bottom:1px solid rgba(23,54,95,.08)
}
.top-v8-row:last-child{border-bottom:none}
.top-v8-row .rank{
  width:34px;height:34px;border-radius:10px;display:grid;place-items:center;
  background:linear-gradient(180deg,#4f86db,#2f62b0);color:#fff;font-weight:700
}
.top-info strong{display:block}
.top-info small{color:var(--ink-soft)}
.resume-v8-list{display:grid;gap:10px}
.resume-v8-list div{
  display:flex;align-items:center;justify-content:space-between;
  padding:10px 12px;border-radius:12px;background:#f4f8ff;border:1px solid #c1d4f0
}
.resume-v8-list span{color:var(--ink-soft)}
.resume-v8-list strong{text-transform:capitalize}
@media (max-width: 1100px){
  .stats-v8-grid{grid-template-columns:repeat(2,1fr)}
  .dashboard-v8-main{grid-template-columns:1fr}
}
@media (max-width: 720px){
  .dashboard-v8-hero{flex-direction:column;align-items:flex-start}
  .dashboard-v8-hero h1{font-size:24px}
  .stats-v8-grid{grid-template-columns:1fr}
  .quick-v8-grid{grid-template-columns:1fr}
  .chart-v8-holder{height:240px}
}

/* ===== V8 PDV COMPACTO E DIDÁTICO ===== */
.pdv-v8-wrap{
  max-width:1500px;margin:10px auto;padding:0 10px 14px;
  display:grid;grid-template-columns:320px minmax(0,1fr);gap:12px
}
.pdv-v8-catalog,.pdv-v8-ticket,.pdv-v8-summary{padding:12px}
.pdv-v8-headline{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;margin-bottom:10px}
.pdv-v8-headline h2{margin:0;font-size:22px}
.pdv-v8-headline small{color:var(--ink-soft)}
.pdv-state{
  padding:7px 10px;border-radius:999px;font-size:11px;font-weight:700;
  background:#edf4ff;border:1px solid #b7caea
}
.pdv-state.ok{background:#e8fff1;border-color:#8fcdab;color:#1f6e40}
.pdv-state.off{background:#fff1f1;border-color:#e1b1b1;color:#933d3d}
.pdv-v8-search{margin-bottom:10px}
.pdv-v8-search input{
  width:100%;padding:10px 12px;border-radius:10px;border:1px solid #aac1e4;background:#fff
}
.pdv-v8-product-list{display:grid;gap:8px;max-height:calc(100vh - 170px);overflow:auto;padding-right:2px}
.produto-card-v8{
  display:grid;grid-template-columns:46px 1fr auto;gap:10px;align-items:center;
  width:100%;padding:8px 9px;border-radius:12px;border:1px solid #b8cdee;background:linear-gradient(180deg,#fff,#edf5ff);
  box-shadow:0 1px 0 rgba(255,255,255,.9) inset;cursor:pointer;text-align:left
}
.produto-card-v8 img{width:46px;height:46px;object-fit:cover;border-radius:10px;border:1px solid #cad9ef;background:#fff}
.produto-card-v8 strong{display:block;font-size:13px;line-height:1.2}
.produto-card-v8 small{display:block;color:var(--ink-soft);font-size:11px;line-height:1.25}
.produto-card-v8 span{font-weight:700;font-size:12px;white-space:nowrap}
.pdv-v8-main{display:grid;grid-template-columns:minmax(0,1.3fr) 300px;gap:12px}
.pdv-v8-topline{
  display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:10px
}
.pdv-v8-topline h1{margin:2px 0 0;font-size:28px;line-height:1}
.pdv-v8-top-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.mini-action{
  border:1px solid #9bb8e4;background:linear-gradient(180deg,#ffffff,#e6f0ff);
  padding:8px 10px;border-radius:10px;font-weight:700;cursor:pointer;min-width:92px
}
.mini-action.primary{background:linear-gradient(180deg,#4f86db,#2f62b0);color:#fff;border-color:#2f62b0}
.mini-action.warn{background:linear-gradient(180deg,#ffe8b9,#f2c15e);border-color:#e5b04c}
.mini-action.danger{background:linear-gradient(180deg,#ffd6d6,#e7a3a3);border-color:#d88d8d}
.compact-warning{padding:8px 10px;margin-bottom:10px}
.pdv-v8-ticket-box{border:1px solid #b8cdee;border-radius:12px;background:#fff;overflow:hidden}
.compact-ticket-table{width:100%;border-collapse:collapse}
.compact-ticket-table thead th{
  font-size:12px;padding:9px 8px;background:#e9f1ff;border-bottom:1px solid #bdd0ef;text-align:left;position:sticky;top:0
}
.compact-ticket-table tbody td{
  font-size:12px;padding:7px 8px;border-bottom:1px solid #eef3fb
}
.compact-ticket-table tbody tr.active{background:#dce9ff}
.pdv-v8-ticket-scroll{max-height:440px;overflow:auto}
.pdv-v8-footer{
  margin-top:10px;display:flex;align-items:center;justify-content:space-between;gap:10px
}
.compact-status{padding:9px 12px;font-size:12px;flex:1}
.pdv-v8-fast-actions{display:flex;gap:8px}
.pdv-v8-summary{display:grid;gap:10px;align-content:start}
.pdv-v8-photo{
  background:#fff;border:1px solid #c4d5ef;border-radius:14px;padding:10px;display:grid;place-items:center
}
.pdv-v8-photo img{width:100%;max-width:180px;height:180px;object-fit:contain}
.pdv-v8-product-name{
  font-size:20px;font-weight:800;line-height:1.1;color:#123561;
  min-height:44px;display:flex;align-items:center
}
.pdv-v8-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.info-mini{
  background:#f7faff;border:1px solid #c6d7f0;border-radius:12px;padding:10px
}
.info-mini span{display:block;font-size:11px;text-transform:uppercase;color:var(--ink-soft);margin-bottom:4px}
.info-mini strong{font-size:15px}
.compact-total-box{padding:14px}
.compact-total-box .info-value{font-size:32px;line-height:1}
.pdv-v8-help{
  padding:10px 12px;border-radius:12px;background:#eef5ff;border:1px dashed #a9c2e9
}
.pdv-v8-help strong{display:block;margin-bottom:4px}
.pdv-v8-help small{display:block;color:var(--ink-soft);line-height:1.4}
.compact-checkout-card{max-width:980px}
@media (max-width: 1180px){
  .pdv-v8-wrap{grid-template-columns:290px 1fr}
  .pdv-v8-main{grid-template-columns:1fr 280px}
}
@media (max-width: 980px){
  .pdv-v8-wrap{grid-template-columns:1fr}
  .pdv-v8-product-list{max-height:260px}
  .pdv-v8-main{grid-template-columns:1fr}
  .pdv-v8-ticket-scroll{max-height:300px}
}
@media (max-width: 720px){
  .pdv-v8-wrap{padding:0 8px 12px}
  .pdv-v8-topline{flex-direction:column}
  .pdv-v8-topline h1{font-size:22px}
  .pdv-v8-top-actions,.pdv-v8-fast-actions{width:100%}
  .mini-action,.pdv-action{flex:1}
  .pdv-v8-footer{flex-direction:column;align-items:stretch}
  .pdv-v8-info-grid{grid-template-columns:1fr 1fr}
  .compact-total-box .info-value{font-size:26px}
}


/* ===== V9 PDV PREMIUM COM TECLADO ===== */
.pdv-v9-wrap{
  max-width:1520px;margin:10px auto;padding:0 10px 14px;
  display:grid;grid-template-columns:330px minmax(0,1fr);gap:14px
}
.pdv-v9-catalog,.pdv-v9-ticket,.pdv-v9-summary,.pdv-v9-keypad{padding:14px}
.pdv-v9-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;margin-bottom:12px}
.pdv-v9-head h2{margin:2px 0 4px;font-size:24px}
.pdv-v9-head small,.pdv-sublegend{color:var(--ink-soft)}
.pdv-v9-search-stack{display:grid;gap:8px;margin-bottom:12px}
.pdv-v9-search-stack input{
  width:100%;padding:11px 12px;border-radius:12px;border:1px solid #aac1e4;background:#fff;
  box-shadow:0 1px 0 rgba(255,255,255,.9) inset
}
.pdv-v9-product-list{
  display:grid;gap:8px;max-height:calc(100vh - 205px);overflow:auto;padding-right:2px
}
.produto-card-v9{
  display:grid;grid-template-columns:52px 1fr auto;gap:10px;align-items:center;
  width:100%;padding:9px 10px;border-radius:14px;border:1px solid #b8cdee;background:linear-gradient(180deg,#fff,#edf5ff);
  box-shadow:0 1px 0 rgba(255,255,255,.9) inset, 0 8px 14px rgba(18,53,97,.05);cursor:pointer;text-align:left;
  transition:transform .15s ease, box-shadow .15s ease
}
.produto-card-v9:hover{transform:translateY(-1px);box-shadow:0 1px 0 rgba(255,255,255,.9) inset, 0 12px 18px rgba(18,53,97,.08)}
.produto-card-v9 img{width:52px;height:52px;object-fit:cover;border-radius:12px;border:1px solid #cad9ef;background:#fff}
.produto-card-v9-info strong{display:block;font-size:13px;line-height:1.2;margin-bottom:3px}
.produto-card-v9-info small{display:block;color:var(--ink-soft);font-size:11px;line-height:1.25}
.produto-card-v9 span{font-weight:800;font-size:12px;white-space:nowrap;color:#163965}

.pdv-v9-main{display:grid;grid-template-columns:minmax(0,1.35fr) 340px;gap:14px}
.pdv-v9-side{display:grid;gap:14px;align-content:start}
.pdv-v9-topline{
  display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px
}
.pdv-v9-topline h1{margin:2px 0 6px;font-size:30px;line-height:1}
.pdv-v9-top-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.pdv-v9-highlight{
  margin-bottom:10px;padding:12px 14px;border-radius:14px;
  background:linear-gradient(135deg,#2f62b0,#4f86db 65%,#78a8ed);color:#fff;
  box-shadow:0 12px 24px rgba(47,98,176,.22)
}
.highlight-label{font-size:11px;text-transform:uppercase;opacity:.9;letter-spacing:.6px;margin-bottom:4px}
.highlight-name{font-size:28px;font-weight:900;line-height:1.05;min-height:30px}
.pdv-v9-ticket-box{border:1px solid #b8cdee;border-radius:14px;background:#fff;overflow:hidden}
.pdv-v9-ticket-scroll{max-height:470px;overflow:auto}
.pdv-v9-footer{margin-top:12px;display:flex;align-items:center;justify-content:space-between;gap:10px}
.pdv-v9-fast-actions{display:flex;gap:8px}
.pdv-v9-summary .panel-title,.pdv-v9-keypad .panel-title{margin-bottom:10px}
.pdv-v9-photo{
  background:linear-gradient(180deg,#ffffff,#eef5ff);border:1px solid #c4d5ef;border-radius:16px;padding:12px;display:grid;place-items:center
}
.pdv-v9-photo img{width:100%;max-width:200px;height:200px;object-fit:contain}
.pdv-v9-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.premium-total-v9{
  background:linear-gradient(135deg,#123c76,#245db5 65%,#4f86db);color:#fff;border:0;
  box-shadow:0 14px 26px rgba(36,93,181,.24)
}
.premium-total-v9 .total-pay-label{color:rgba(255,255,255,.85)}
.premium-total-v9 .info-value{color:#fff}
.pdv-v9-help{
  padding:12px 14px;border-radius:14px;background:#f2f7ff;border:1px dashed #a9c2e9;display:grid;gap:4px
}
.pdv-v9-help strong{margin-bottom:2px}
.pdv-v9-help small{color:var(--ink-soft)}

.pdv-v9-keypad{
  background:linear-gradient(180deg,#f9fbff 0%, #edf4ff 100%);
}
.keypad-display{
  height:54px;border-radius:14px;border:1px solid #b8cdee;background:#fff;padding:0 14px;margin-bottom:10px;
  display:flex;align-items:center;justify-content:flex-end;font-size:28px;font-weight:800;color:#163965;
  box-shadow:inset 0 2px 8px rgba(18,53,97,.06)
}
.keypad-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.keypad-btn{
  min-height:56px;border-radius:14px;border:1px solid #b8cdee;background:linear-gradient(180deg,#ffffff,#e8f1ff);
  font-size:20px;font-weight:800;color:#163965;cursor:pointer;
  box-shadow:0 1px 0 rgba(255,255,255,.92) inset, 0 8px 14px rgba(18,53,97,.06)
}
.keypad-btn.zero{grid-column:span 2}
.keypad-btn.action{font-size:14px}
.keypad-btn.action.primary{background:linear-gradient(180deg,#4f86db,#2f62b0);color:#fff;border-color:#2f62b0}
.keypad-btn.action.success{background:linear-gradient(180deg,#69c78b,#2f814d);color:#fff;border-color:#2f814d}
.keypad-btn.action.warn{background:linear-gradient(180deg,#ffe8b9,#f2c15e);border-color:#e5b04c}
.keypad-btn.action.danger{background:linear-gradient(180deg,#ffd6d6,#e7a3a3);border-color:#d88d8d}

@media (max-width: 1180px){
  .pdv-v9-wrap{grid-template-columns:300px 1fr}
  .pdv-v9-main{grid-template-columns:1fr 320px}
}
@media (max-width: 980px){
  .pdv-v9-wrap{grid-template-columns:1fr}
  .pdv-v9-product-list{max-height:260px}
  .pdv-v9-main{grid-template-columns:1fr}
  .pdv-v9-side{grid-template-columns:1fr 1fr}
  .pdv-v9-ticket-scroll{max-height:320px}
}
@media (max-width: 720px){
  .pdv-v9-wrap{padding:0 8px 12px}
  .pdv-v9-topline{flex-direction:column}
  .pdv-v9-topline h1{font-size:23px}
  .highlight-name{font-size:22px}
  .pdv-v9-side{grid-template-columns:1fr}
  .pdv-v9-footer{flex-direction:column;align-items:stretch}
  .pdv-v9-fast-actions,.pdv-v9-top-actions{width:100%}
  .mini-action,.pdv-action{flex:1}
  .keypad-display{font-size:24px}
}


/* ===== V10 FECHAMENTO MAIS COMERCIAL ===== */
.checkout-card.compact-checkout-card{
  max-width:1040px;
  border-radius:20px;
  overflow:hidden;
  box-shadow:0 20px 45px rgba(18,53,97,.24);
}
.checkout-head{
  background:linear-gradient(135deg,#123c76,#245db5 65%,#4f86db);
  color:#fff;
  padding:14px 18px;
  font-size:20px;
  font-weight:800;
}
.checkout-close{
  width:40px;height:40px;border-radius:12px;border:1px solid rgba(255,255,255,.28);
  background:rgba(255,255,255,.14);color:#fff;font-size:24px;cursor:pointer;
}
.checkout-body{padding:18px;background:linear-gradient(180deg,#fbfdff 0%, #eef4ff 100%)}
.checkout-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.checkout-grid label{font-size:12px;text-transform:uppercase;letter-spacing:.3px}
.checkout-grid input,.checkout-grid select{
  width:100%;
  padding:12px 12px;
  border-radius:12px;
  border:1px solid #b7caea;
  background:#fff;
  box-shadow:inset 0 1px 3px rgba(18,53,97,.05);
}
.checkout-help{
  margin-top:14px;
  padding:12px 14px;
  border-radius:14px;
  background:#f5f9ff;
  border:1px solid #c9daf2;
  font-size:14px;
  line-height:1.5;
}
.checkout-actions{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:10px;
  margin-top:14px;
}
.checkout-actions .btn{
  min-height:48px;
  font-weight:800;
  border-radius:14px;
}
@media (max-width: 900px){
  .checkout-grid{grid-template-columns:1fr 1fr}
  .checkout-actions{grid-template-columns:1fr 1fr}
}
@media (max-width: 620px){
  .checkout-grid{grid-template-columns:1fr}
  .checkout-actions{grid-template-columns:1fr}
}


/* ===== V11 TROCO E ATALHOS ===== */
.checkout-grid input[readonly]{
  background:#eef3fb;
  color:#123561;
  font-weight:800;
}


/* ===== V12 TELA CHEIA E CUPOM ===== */
:fullscreen body{background:linear-gradient(180deg,#c9dcfb 0%, #b3cdf5 42%, #9cbeef 100%)}


/* ===== V13 PAINEL OPERADOR E TROCO SUGERIDO ===== */
.pdv-v13-operator{
  padding:14px;
}
.operator-grid{
  display:grid;
  gap:8px;
  margin-bottom:12px;
}
.operator-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:10px 12px;
  border-radius:12px;
  background:#f5f9ff;
  border:1px solid #c6d7f0;
}
.operator-row span{color:var(--ink-soft);font-size:12px}
.operator-row strong{font-size:14px}
.small-title{font-size:13px}
.sugestion-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:8px;
  margin-top:10px;
}
.suggest-btn{
  min-height:42px;
  border-radius:12px;
  border:1px solid #b8cdee;
  background:linear-gradient(180deg,#ffffff,#e8f1ff);
  font-weight:800;
  color:#163965;
  cursor:pointer;
  box-shadow:0 1px 0 rgba(255,255,255,.92) inset, 0 8px 14px rgba(18,53,97,.06);
}
.suggest-btn.active{
  background:linear-gradient(180deg,#4f86db,#2f62b0);
  color:#fff;
  border-color:#2f62b0;
}
@media (max-width: 720px){
  .sugestion-grid{
    grid-template-columns:repeat(2,1fr);
  }
}


/* ===== V14 AJUSTES SEM TECLADO / PAGAMENTOS MÚLTIPLOS ===== */
.pdv-v9-main{grid-template-columns:minmax(0,1.35fr) 340px}
.pdv-v9-fast-actions{flex-wrap:wrap}
.pdv-v9-fast-actions .pdv-action{min-width:120px}
.multi-pay-grid{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:12px;
  grid-column:1 / -1;
}
#forma_pagamento,#valor_recebido_view,#troco_view{
  background:#eef3fb;
  color:#123561;
  font-weight:700;
}
@media (max-width: 900px){
  .multi-pay-grid{grid-template-columns:1fr 1fr}
}
@media (max-width: 620px){
  .multi-pay-grid{grid-template-columns:1fr}
}

/* ===== V15 FECHAMENTO PROFISSIONAL ===== */
#credito_parcelado_view,#fechamento_status{
  background:#eef3fb;
  color:#123561;
  font-weight:700;
}
.ok-state{
  background:#e8fff1 !important;
  color:#18653c !important;
  border-color:#8fcdab !important;
}
.warn-state{
  background:#fff8e3 !important;
  color:#8a6206 !important;
  border-color:#e6c15c !important;
}
.danger-state{
  background:#fff1f1 !important;
  color:#933d3d !important;
  border-color:#e1b1b1 !important;
}
@media (max-width: 900px){
  .checkout-grid{grid-template-columns:1fr 1fr !important;}
}
@media (max-width: 620px){
  .checkout-grid{grid-template-columns:1fr !important;}
}


/* ===== V16 ESTÁVEL REVISADO ===== */
.table-card table,
.card table{
  width:100%;
  border-collapse:collapse;
}
.table-card th,.table-card td,
.card th,.card td{
  padding:9px 10px;
  border-bottom:1px solid rgba(23,54,95,.08);
  font-size:13px;
}
.card .display,
.table-card .display{
  width:100% !important;
}
.page-wrap.wide-wrap{
  max-width:1500px;
}
.empty-box{
  padding:16px;
  border:1px dashed #b8cdee;
  border-radius:12px;
  background:#f7faff;
  color:#527096;
}
.warning-box{
  padding:10px 12px;
  border-radius:12px;
  background:#fff5db;
  border:1px solid #e5c15c;
  color:#7c5a08;
}
.pdv-ticket-table tbody tr:hover{
  background:#eef5ff;
}
input:focus,select:focus,textarea:focus,button:focus{
  outline:2px solid rgba(47,98,176,.18);
  outline-offset:1px;
}
.global-top-menu{
  backdrop-filter: blur(8px);
}
@media (max-width: 720px){
  .global-top-menu-inner{
    gap:10px;
    align-items:flex-start;
    flex-direction:column;
  }
  .global-nav{
    width:100%;
  }
}


/* ===== V19 PREMIUM VISUAL ===== */
:root{
  --premium-bg-1:#dce9ff;
  --premium-bg-2:#c7dcff;
  --premium-panel:#f8fbff;
  --premium-panel-2:#eef5ff;
  --premium-line:#c9daf5;
  --premium-ink:#123561;
  --premium-soft:#5e7aa0;
  --premium-brand:#2f62b0;
  --premium-brand-2:#5a8fe0;
  --premium-success:#2d9b62;
  --premium-warn:#d8a033;
  --premium-danger:#c45454;
  --premium-glow:0 18px 40px rgba(32,78,150,.14);
}

body{
  background:
    radial-gradient(circle at top left, rgba(255,255,255,.7), transparent 34%),
    radial-gradient(circle at top right, rgba(90,143,224,.18), transparent 28%),
    linear-gradient(180deg,var(--premium-bg-1),var(--premium-bg-2));
  color:var(--premium-ink);
}

.global-top-menu{
  background:linear-gradient(135deg,#173b73 0%, #2f62b0 52%, #5a8fe0 100%);
  box-shadow:0 10px 28px rgba(11,42,90,.18);
  border-bottom:1px solid rgba(255,255,255,.22);
}

.global-brand{
  font-size:26px;
  letter-spacing:-.7px;
}

.global-nav a{
  border-radius:12px;
  padding:8px 12px;
  background:linear-gradient(180deg,rgba(255,255,255,.22),rgba(255,255,255,.08));
  box-shadow:0 1px 0 rgba(255,255,255,.45) inset, 0 8px 18px rgba(0,0,0,.08);
}

.card,.table-card,.small-card,.login-card,.card-box,.pix-card{
  background:linear-gradient(180deg,#ffffff 0%, var(--premium-panel) 45%, var(--premium-panel-2) 100%);
  border:1px solid var(--premium-line);
  box-shadow:var(--premium-glow);
  border-radius:18px;
}

.panel-title{
  font-size:16px;
  font-weight:800;
  color:var(--premium-ink);
  margin-bottom:10px;
}

.btn,.mini-action,.pdv-action,.keypad-btn,.suggest-btn,.quick-v8-link,.produto-card-v9,.produto-card-v8{
  transition:transform .16s ease, box-shadow .16s ease, filter .16s ease;
}

.btn:hover,.mini-action:hover,.pdv-action:hover,.keypad-btn:hover,.suggest-btn:hover,.quick-v8-link:hover,.produto-card-v9:hover,.produto-card-v8:hover{
  transform:translateY(-1px);
  filter:brightness(1.02);
}

.btn{
  border-radius:14px;
  box-shadow:0 10px 20px rgba(18,53,97,.08);
}

.btn-success{
  background:linear-gradient(135deg,#37b071,#2d9b62);
}
.btn-whats{
  background:linear-gradient(135deg,#33d178,#1faf5d);
}
.btn-print{
  background:linear-gradient(135deg,#ffd778,#f0b94a);
}
.btn-pix{
  background:linear-gradient(135deg,#86ffd4,#53d9ae);
}
.btn-light{
  background:linear-gradient(135deg,#ffffff,#edf4ff);
}

.resume-v8-list div,
.operator-row,
.info-mini,
.resume-v8-list div{
  border-radius:14px;
  background:linear-gradient(180deg,#ffffff,#f2f7ff);
  border:1px solid var(--premium-line);
}

.history-row.modern-history-row,
.quick-v8-link{
  border-radius:14px;
  border:1px solid var(--premium-line);
  background:linear-gradient(180deg,#ffffff,#f4f8ff);
}

.table-card,
.pdv-v9-ticket-box{
  overflow:hidden;
}

.pdv-v9-highlight{
  border-radius:18px;
  box-shadow:0 18px 36px rgba(47,98,176,.22);
}

.pdv-v9-photo,
.pdv-v8-photo{
  border-radius:18px;
  background:linear-gradient(180deg,#ffffff,#eef5ff);
  box-shadow:0 12px 26px rgba(18,53,97,.08);
}

.compact-total-box,
.premium-total-v9{
  border-radius:18px;
  box-shadow:0 18px 36px rgba(19,59,118,.2);
}

.checkout-card.compact-checkout-card{
  border-radius:22px;
  box-shadow:0 22px 60px rgba(18,53,97,.22);
}

.checkout-head{
  background:linear-gradient(135deg,#173b73 0%, #2f62b0 55%, #5a8fe0 100%);
}

.checkout-body{
  background:linear-gradient(180deg,#ffffff,#f1f7ff);
}

.checkout-grid input,
.checkout-grid select,
.search-box input,
.pdv-v9-search-stack input,
.pdv-v8-search input,
input[type="text"],input[type="number"],input[type="date"],select,textarea{
  border-radius:14px;
  border:1px solid var(--premium-line);
  background:#dceef8;
  box-shadow:inset 0 1px 3px rgba(18,53,97,.04);
}

.pdv-ticket-table thead th{
  background:linear-gradient(180deg,#edf4ff,#dce9ff);
  color:#183b6b;
  font-weight:800;
}

.pdv-ticket-table tbody td{
  background:rgba(255,255,255,.72);
}

.pdv-ticket-table tbody tr:nth-child(even) td{
  background:rgba(240,246,255,.9);
}

.status-box,
.warning-box,
.empty-box{
  border-radius:14px;
}

.warning-box{
  background:linear-gradient(180deg,#fff7e3,#fff0c3);
}

.empty-box{
  background:linear-gradient(180deg,#fafdff,#eef5ff);
}

.login-page{
  background:
    radial-gradient(circle at top left, rgba(255,255,255,.55), transparent 28%),
    linear-gradient(180deg,#2f62b0 0 130px,#dce9ff 130px 100%);
}

.login-card{
  box-shadow:0 24px 70px rgba(12,44,94,.26);
}

@media (max-width:720px){
  .card,.table-card,.small-card,.login-card,.card-box,.pix-card{
    border-radius:16px;
  }
}


/* ===== V20 PREMIUM FINAL ===== */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

body,button,input,select,textarea,table{
  font-family:'Inter',Tahoma,Arial,sans-serif;
}

.global-brand::before{content:'◈ ';font-size:.85em;opacity:.95}
.panel-title::before{content:'✦ ';opacity:.85}
h1,h2,h3,.page-title{letter-spacing:-.03em}

.global-top-menu{
  background:
    linear-gradient(135deg,rgba(255,255,255,.07),rgba(255,255,255,0) 40%),
    linear-gradient(135deg,#123566 0%, #24539a 45%, #4b82d9 100%);
}

.global-nav a{
  font-size:12px;
  font-weight:800;
  letter-spacing:.01em;
  padding:9px 13px;
}

.page-wrap{padding:0 12px 18px}
.card,.table-card,.small-card,.login-card,.card-box,.pix-card{
  border-radius:20px;
}

.card,.table-card,.small-card,.login-card,.card-box,.pix-card,
.history-row.modern-history-row,.quick-v8-link,.resume-v8-list div,.operator-row,.info-mini{
  box-shadow:
    0 1px 0 rgba(255,255,255,.92) inset,
    0 14px 32px rgba(24,59,107,.10);
}

.btn,.mini-action,.pdv-action{
  font-weight:800;
  letter-spacing:.01em;
}

.btn:hover,.mini-action:hover,.pdv-action:hover,.quick-v8-link:hover,.history-row.modern-history-row:hover{
  box-shadow:0 14px 24px rgba(24,59,107,.14);
}

.checkout-grid label,
label{
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.04em;
  color:#537299;
}

.checkout-grid input,
.checkout-grid select,
.search-box input,
.pdv-v9-search-stack input,
input[type="text"],input[type="number"],input[type="date"],select,textarea{
  min-height:30px;
  padding:11px 13px;
}

input[readonly]{
  font-weight:700;
}

.resume-v8-list div span,
.operator-row span,
.info-mini span{
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.04em;
}

.resume-v8-list div strong,
.operator-row strong,
.info-mini strong{
  font-size:14px;
}

.pdv-v9-highlight .highlight-name,
.pdv-v8-product-name{
  letter-spacing:-.04em;
}

.table-card th,.table-card td,
.card th,.card td{
  padding:10px 11px;
}

.history-row.modern-history-row{
  margin-bottom:8px;
}

.list-scroll.compact-list{
  padding-right:4px;
}

.list-scroll.compact-list::-webkit-scrollbar,
.pdv-v9-ticket-scroll::-webkit-scrollbar,
.pdv-v9-product-list::-webkit-scrollbar{
  width:10px;
}
.list-scroll.compact-list::-webkit-scrollbar-thumb,
.pdv-v9-ticket-scroll::-webkit-scrollbar-thumb,
.pdv-v9-product-list::-webkit-scrollbar-thumb{
  background:linear-gradient(180deg,#b8cef3,#8fb0e5);
  border-radius:999px;
  border:2px solid #eef5ff;
}
.list-scroll.compact-list::-webkit-scrollbar-track,
.pdv-v9-ticket-scroll::-webkit-scrollbar-track,
.pdv-v9-product-list::-webkit-scrollbar-track{
  background:#eef5ff;
  border-radius:999px;
}

.latest-sales-scroll{
  max-height:560px;
  overflow:auto;
}

.status-box{
  font-weight:800;
  letter-spacing:.01em;
}

@media (max-width:720px){
  .global-brand::before,.panel-title::before{display:none}
  .page-wrap{padding:0 8px 14px}
  .card,.table-card,.small-card,.login-card,.card-box,.pix-card{border-radius:16px}
}


.menu-role-badge{
  display:inline-flex;
  align-items:center;
  padding:8px 12px;
  border-radius:999px;
  background:linear-gradient(180deg,rgba(255,255,255,.3),rgba(255,255,255,.12));
  color:green;
  font-size:12px;
  font-weight:800;
  letter-spacing:.03em;
  border:1px solid rgba(255,255,255,.22);
}


.cash-summary-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.cash-card{
  border:1px solid var(--premium-line,#c9daf5);
  border-radius:18px;
  padding:14px;
  background:linear-gradient(180deg,#ffffff,#f2f7ff);
  box-shadow:0 12px 24px rgba(24,59,107,.08);
}
.cash-card-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:8px;
}
.cash-card-user{
  font-size:15px;
  font-weight:800;
  color:#183b6b;
  margin-bottom:4px;
}
.cash-card-meta{
  font-size:12px;
  color:#5c799f;
  margin-bottom:10px;
}
.cash-card-values{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}
.cash-card-values div{
  border:1px solid #d5e2f7;
  background:#fff;
  border-radius:12px;
  padding:10px;
}
.cash-card-values span{
  display:block;
  font-size:11px;
  text-transform:uppercase;
  color:#5b779d;
  margin-bottom:4px;
}
.cash-card-values b{
  font-size:14px;
  color:#123561;
}
.cash-status{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:6px 10px;
  border-radius:999px;
  font-size:11px;
  font-weight:800;
}
.cash-status.aberto{background:#e8fff1;color:#1d6f41;border:1px solid #9ed4b0}
.cash-status.fechado{background:#eef4ff;color:#355f99;border:1px solid #bfd3f1}

@media (max-width:900px){
  .cash-summary-grid{grid-template-columns:1fr}
}


.history-row form{margin:0}


.row-actions{
  display:flex;
  gap:8px;
  align-items:center;
  flex-wrap:wrap;
}
.btn-action{
  border:none;
  border-radius:10px;
  padding:8px 12px;
  font-size:12px;
  font-weight:800;
  cursor:pointer;
}
.btn-edit{
  background:linear-gradient(135deg,#5a8fe0,#2f62b0);
  color:#fff;
}
.btn-delete{
  background:linear-gradient(135deg,#f08080,#c45454);
  color:#fff;
}
.tag-fixed{
  display:inline-flex;
  padding:6px 10px;
  border-radius:999px;
  background:#eef5ff;
  color:#355f99;
  font-size:12px;
  font-weight:700;
}
.compact-products-page .page-wrap,
.compact-products-page{
  max-width:1500px;
}
.compact-product-form{
  padding:14px;
  margin-bottom:12px;
}
.compact-grid{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}
.compact-grid input,
.compact-grid select{
  min-height:42px;
}
.compact-form-actions{
  display:flex;
  gap:8px;
  justify-content:flex-end;
  margin-top:12px;
}
.compact-table-card table td,
.compact-table-card table th{
  padding:8px 10px;
}
.price-pill,
.stock-pill,
.status-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:6px 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:800;
}
.price-pill{
  background:linear-gradient(135deg,#d8fff0,#8ce4b8);
  color:#10633a;
}
.stock-pill{
  background:linear-gradient(135deg,#fff7d6,#f3d26b);
  color:#7a5b00;
}
.status-on{
  background:linear-gradient(135deg,#dfffea,#94ddb1);
  color:#17653d;
}
.status-off{
  background:linear-gradient(135deg,#ffe2e2,#e7a3a3);
  color:#8e3535;
}
.compact-form{
  padding:14px;
}
@media (max-width:1100px){
  .compact-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media (max-width:720px){
  .compact-grid{grid-template-columns:1fr;}
  .compact-form-actions{justify-content:stretch;flex-direction:column;}
}


.user-level-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:6px 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:800;
}
.level-admin{
  background:linear-gradient(135deg,#dff1ff,#8fc0f7);
  color:#124b89;
}
.level-caixa{
  background:linear-gradient(135deg,#e8fff1,#8fd8ac);
  color:#1a6b40;
}
.level-operador{
  background:linear-gradient(135deg,#fff7d8,#f2d56f);
  color:#7a5c00;
}

.table-product-thumb{
  width:60px;
  height:60px;
  object-fit:cover;
  border-radius:12px;
  border:1px solid #e5e7eb;
  box-shadow:0 2px 6px rgba(0,0,0,0.08);
  background:#fff;
}

/* ===== DASHBOARD PREMIUM COMPACTO ===== */
.compact-dashboard-wrap{
  max-width: 1500px;
}

.compact-hero-premium{
  display:grid;
  grid-template-columns:1.45fr .75fr;
  gap:14px;
  margin-bottom:12px;
  padding:18px 20px;
  border-radius:22px;
  background:linear-gradient(135deg,#123566 0%, #24539a 50%, #4b82d9 100%);
  color:#fff;
  box-shadow:0 18px 38px rgba(15,63,136,.22);
}

.compact-hero-premium .eyebrow,
.compact-hero-premium h1,
.compact-hero-premium p{
  color:#fff;
}

.compact-hero-premium h1{
  margin:4px 0 7px;
  font-size:32px;
  line-height:1;
}

.compact-hero-premium p{
  margin:0;
  max-width:680px;
  opacity:.92;
  font-size:14px;
}

.dashboard-hero-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-top:14px;
}

.dashboard-premium-hero-side{
  display:grid;
  gap:10px;
}

.hero-side-card{
  border-radius:16px;
  padding:14px;
  background:rgba(255,255,255,.13);
  border:1px solid rgba(255,255,255,.16);
}

.hero-side-card span{
  display:block;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.05em;
  opacity:.86;
  margin-bottom:5px;
}

.hero-side-card strong{
  display:block;
  font-size:23px;
  line-height:1;
  margin-bottom:5px;
}

.hero-side-card small{
  opacity:.9;
  font-size:12px;
}

.compact-dashboard-stats{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin-bottom:12px;
}

.premium-stat-card{
  border-radius:18px;
  padding:14px 15px;
  color:#fff;
  box-shadow:0 14px 28px rgba(15,63,136,.16);
  position:relative;
  overflow:hidden;
}

.premium-stat-card::after{
  content:"";
  position:absolute;
  right:-18px;
  top:-18px;
  width:90px;
  height:90px;
  border-radius:50%;
  background:rgba(255,255,255,.12);
}

.premium-stat-top{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:8px;
}

.premium-stat-top span{
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.05em;
  font-weight:800;
}

.premium-stat-icon{
  font-size:18px;
}

.premium-stat-card strong{
  display:block;
  font-size:26px;
  line-height:1.05;
  margin:12px 0 4px;
  position:relative;
  z-index:2;
}

.premium-stat-card small{
  position:relative;
  z-index:2;
  font-size:12px;
  opacity:.92;
}

.gradient-blue{background:linear-gradient(135deg,#1d4ed8,#60a5fa)}
.gradient-green{background:linear-gradient(135deg,#059669,#34d399)}
.gradient-red{background:linear-gradient(135deg,#dc2626,#f87171)}
.gradient-gold{background:linear-gradient(135deg,#d97706,#fdba74)}

.compact-dashboard-main{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(320px,.85fr);
  gap:12px;
  align-items:start;
}

.dashboard-premium-left,
.dashboard-premium-right{
  display:grid;
  gap:12px;
}

.compact-premium-block{
  padding:14px;
  border-radius:18px;
}

.premium-block-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:10px;
  margin-bottom:12px;
}

.premium-block-head h3{
  margin:4px 0 0;
  font-size:19px;
  line-height:1.1;
  color:#123561;
}

.compact-chart-holder{
  height:280px;
}

.compact-links-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}

.premium-link-card{
  min-height:82px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  border-radius:14px;
  padding:10px 12px;
}

.premium-link-card strong{
  font-size:14px;
  margin-bottom:4px;
}

.premium-link-card small{
  font-size:12px;
}

.compact-sales-scroll{
  max-height:330px;
}

.compact-sale-row{
  border-radius:14px;
  padding:10px 12px;
}

.compact-sale-row strong{
  font-size:13px;
}

.compact-sale-row small{
  font-size:11px;
}

.compact-top-list{
  gap:8px;
}

.compact-top-row{
  padding:8px 0;
}

.compact-top-row .rank{
  width:34px;
  height:34px;
  border-radius:10px;
  font-size:13px;
}

.compact-cash-summary-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}

.compact-cash-card{
  padding:12px;
  border-radius:16px;
}

.compact-cash-card .cash-card-user{
  font-size:14px;
  margin-bottom:3px;
}

.compact-cash-card .cash-card-meta{
  font-size:11px;
  margin-bottom:8px;
}

.compact-cash-values{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}

.compact-cash-values div{
  padding:8px 9px;
  border-radius:10px;
}

.compact-cash-values span{
  font-size:10px;
  margin-bottom:3px;
}

.compact-cash-values b{
  font-size:13px;
}

@media (max-width:1100px){
  .compact-hero-premium{
    grid-template-columns:1fr;
  }

  .compact-dashboard-stats{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .compact-dashboard-main{
    grid-template-columns:1fr;
  }

  .compact-cash-summary-grid{
    grid-template-columns:1fr;
  }
}

@media (max-width:720px){
  .compact-hero-premium{
    padding:16px;
  }

  .compact-hero-premium h1{
    font-size:26px;
  }

  .compact-dashboard-stats{
    grid-template-columns:1fr;
  }

  .compact-links-grid{
    grid-template-columns:1fr;
  }

  .compact-chart-holder{
    height:230px;
  }

  .compact-cash-values{
    grid-template-columns:1fr 1fr;
  }
}
/* ===== HERO SIDE CARDS COMPACTOS ===== */
.hero-side-inline{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  align-items:stretch;
}

.compact-hero-mini-card{
  min-height:unset;
  padding:12px 14px;
  border-radius:16px;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.18);
  box-shadow:0 10px 24px rgba(0,0,0,.08);
}

.compact-hero-mini-card span{
  display:block;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.06em;
  opacity:.86;
  margin-bottom:4px;
  color:#fff;
}

.compact-hero-mini-card strong{
  display:block;
  font-size:22px;
  line-height:1;
  margin-bottom:5px;
  color:#fff;
}

.compact-hero-mini-card small{
  display:block;
  font-size:12px;
  line-height:1.35;
  color:rgba(255,255,255,.92);
}

@media (max-width: 1100px){
  .hero-side-inline{
    grid-template-columns:1fr 1fr;
  }
}

@media (max-width: 720px){
  .hero-side-inline{
    grid-template-columns:1fr;
  }

  .compact-hero-mini-card strong{
    font-size:20px;
  }
}
/* ===== SCROLL DO CATÁLOGO DE PRODUTOS ===== */
.pdv-v9-catalog{
  height: calc(100vh - 80px);
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.pdv-v9-product-list{
  flex: 1;
  overflow-y: auto;
  overflow-x: hidden;
  padding-right: 4px;
}

/* scrollbar bonita */
.pdv-v9-product-list::-webkit-scrollbar{
  width: 10px;
}

.pdv-v9-product-list::-webkit-scrollbar-thumb{
  background: linear-gradient(180deg,#b8cef3,#8fb0e5);
  border-radius: 999px;
  border:2px solid #eef5ff;
}

.pdv-v9-product-list::-webkit-scrollbar-track{
  background:#eef5ff;
  border-radius:999px;
}
.pdv-v9-wrap{
  height: calc(100vh - 70px);
}
/* ===== CATÁLOGO PREMIUM COMPATÍVEL COM V9 ===== */
.premium-catalog-v9{
  height: calc(100vh - 78px);
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.catalog-v9-toolbar{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin:10px 0 10px;
  padding-bottom:2px;
}

.catalog-v9-chip{
  border:none;
  border-radius:999px;
  padding:8px 12px;
  background:linear-gradient(180deg,#ffffff,#e7f0ff);
  border:1px solid #bfd2f0;
  color:#173965;
  font-size:12px;
  font-weight:800;
  cursor:pointer;
  box-shadow:0 1px 0 rgba(255,255,255,.92) inset, 0 6px 12px rgba(18,53,97,.06);
}

.catalog-v9-chip.active{
  background:linear-gradient(135deg,#2f62b0,#5a8fe0);
  color:#fff;
  border-color:#2f62b0;
}

.premium-v9-scroll{
  flex:1 1 auto;
  min-height:0;
  overflow-y:auto;
  overflow-x:hidden;
  padding-right:4px;
}

.premium-v9-scroll::-webkit-scrollbar{
  width:10px;
}
.premium-v9-scroll::-webkit-scrollbar-thumb{
  background:linear-gradient(180deg,#b8cef3,#8fb0e5);
  border-radius:999px;
  border:2px solid #eef5ff;
}
.premium-v9-scroll::-webkit-scrollbar-track{
  background:#eef5ff;
  border-radius:999px;
}

.premium-produto-card-v9{
  grid-template-columns:54px 1fr auto;
  border-radius:14px;
  padding:9px 10px;
  min-height:72px;
}

.premium-produto-card-v9 img{
  width:54px;
  height:54px;
  border-radius:12px;
}

.premium-produto-card-v9 strong{
  font-size:13px;
  margin-bottom:4px;
}

.premium-produto-card-v9 small{
  font-size:11px;
  line-height:1.25;
}

.premium-produto-card-v9 span{
  font-size:12px;
  font-weight:800;
  color:#123561;
}

@media (max-width:980px){
  .premium-catalog-v9{
    height:auto;
    max-height:none;
  }

  .premium-v9-scroll{
    max-height:320px;
  }
}
/* SCROLL RESUMO DE CAIXAS */

.compact-cash-summary-grid{
  max-height: 700px;
  overflow-y: auto;
  padding-right: 6px;
}

/* scrollbar premium */
.compact-cash-summary-grid::-webkit-scrollbar{
  width: 8px;
}

.compact-cash-summary-grid::-webkit-scrollbar-thumb{
  background: linear-gradient(180deg,#7ea9f5,#4e7fe0);
  border-radius: 999px;
}

.compact-cash-summary-grid::-webkit-scrollbar-track{
  background:#eef3ff;
  border-radius:999px;
}
/* ===== PDV2 ESTILO CLÁSSICO ===== */
.pdv2-page .global-top-menu{
  display:none;
}
.pdv2-page.with-fixed-menu{
  padding-top:0;
}
.pdv2-page{
  background:#bfc7ef !important;
}

.pdv2-wrap{
  max-width:1280px;
  margin:0 auto;
  padding:18px 10px;
}

.pdv2-shell{
  display:grid;
  grid-template-columns:310px minmax(0,1fr);
  gap:16px;
  align-items:start;
}

.pdv2-left{
  display:grid;
  gap:12px;
}

.pdv2-label{
  font-size:16px;
  font-weight:900;
  color:#000;
  text-transform:uppercase;
  margin-bottom:4px;
}

.pdv2-topline{
  display:grid;
  grid-template-columns:64px 1fr;
  gap:8px;
  align-items:center;
}

.pdv2-mini-tag{
  min-height:44px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#d7d7d7;
  border:1px solid #7a94d8;
  color:#8c97b5;
  font-size:24px;
  font-weight:800;
}

.pdv2-code-input{
  width:100%;
  min-height:44px;
  border:1px solid #2f62b0;
  background:#fff;
  font-size:18px;
  padding:8px 10px;
  color:#15365f;
}

.pdv2-field{
  min-height:80px;
  background:#f3f3f3;
  border:1px solid #7a94d8;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  padding:8px 12px;
  font-size:50px;
  line-height:1;
  color:#776a56;
  font-weight:500;
  letter-spacing:-1px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
}

.pdv2-ok,
.pdv2-action{
  border:1px solid #7a94d8;
  background:#d7d7d7;
  min-height:50px;
  font-weight:800;
  cursor:pointer;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8);
}

.pdv2-ok{
  width:100%;
  font-size:20px;
  color:#000;
}

.pdv2-action-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}

.pdv2-right{
  display:grid;
  grid-template-rows:auto 1fr auto auto;
  gap:8px;
}

.pdv2-product-title{
  min-height:76px;
  border:1px solid #8a93ab;
  background:#ececcf;
  padding:0 16px;
  display:flex;
  align-items:center;
  font-size:34px;
  font-weight:700;
  color:#4a5572;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.pdv2-ticket-box{
  background:#efefef;
  border:1px solid #a7aec5;
  min-height:495px;
  display:flex;
  flex-direction:column;
  overflow:hidden;
}

.pdv2-ticket-head{
  background:linear-gradient(180deg,#f8fbff,#d8e4f8);
  border-bottom:1px solid #a7aec5;
}

.pdv2-ticket-table{
  width:100%;
  border-collapse:collapse;
  table-layout:fixed;
}

.pdv2-ticket-table th,
.pdv2-ticket-table td{
  padding:3px 6px;
  border-right:1px solid #c7cede;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  font-size:13px;
  color:#000;
}

.pdv2-ticket-table th:last-child,
.pdv2-ticket-table td:last-child{
  border-right:none;
}

.pdv2-ticket-scroll{
  flex:1;
  overflow:auto;
}

.pdv2-ticket-scroll table tbody tr:nth-child(odd){
  background:#f3f0d1;
}

.pdv2-ticket-scroll table tbody tr:nth-child(even){
  background:#efefef;
}

.pdv2-ticket-scroll table tbody tr.active{
  background:#d8dce6 !important;
}

.pdv2-empty{
  padding:16px;
  font-weight:700;
  color:#56647f;
}

.pdv2-footer{
  display:grid;
  grid-template-columns:1fr 290px;
  gap:14px;
  align-items:end;
}

.pdv2-subtotal-label{
  display:flex;
  justify-content:flex-end;
  align-items:flex-end;
  text-align:right;
  font-size:18px;
  font-weight:900;
  color:#000;
  line-height:1.1;
}

.pdv2-subtotal-box{
  min-height:74px;
  background:#f3f3f3;
  border:1px solid #a7aec5;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  padding:8px 14px;
  font-size:58px;
  line-height:1;
  color:#776a56;
  font-weight:500;
  letter-spacing:-1px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
}

@media (max-width:980px){
  .pdv2-shell{
    grid-template-columns:1fr;
  }

  .pdv2-footer{
    grid-template-columns:1fr;
  }

  .pdv2-subtotal-label{
    justify-content:flex-start;
    text-align:left;
  }

  .pdv2-ticket-box{
    min-height:360px;
  }
}

.pdv-form-mini{
  padding:10px 12px;
  border-radius:14px;
  box-shadow:0 6px 18px rgba(0,0,0,.06);
  border:1px solid rgba(0,0,0,.06);
  background:#fff;
}

.pdv-mini-grid{
  display:grid;
  grid-template-columns: 2fr 1.1fr .8fr .8fr;
  gap:8px 10px;
  align-items:end;
}

.pdv-form-mini .f-item{
  display:flex;
  flex-direction:column;
  min-width:0;
}

.pdv-form-mini .span-2{
  grid-column:span 2;
}

.pdv-form-mini label,
.pdv-form-mini .f-preview-label{
  font-size:11px;
  font-weight:700;
  line-height:1;
  margin:0 0 4px;
  color:#4b5563;
  letter-spacing:.2px;
}

.pdv-form-mini input[type="text"],
.pdv-form-mini select,
.pdv-form-mini input[type="file"]{
  width:100%;
  height:34px;
  min-height:34px;
  border:1px solid #d8dee8;
  border-radius:10px;
  padding:6px 10px;
  font-size:13px;
  background:linear-gradient(180deg,#ffffff 0%, #f7f9fc 100%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.9),
    0 1px 2px rgba(0,0,0,.04);
  outline:none;
  transition:.18s ease;
}

.pdv-form-mini input[type="file"]{
  padding:5px 8px;
  font-size:12px;
}

.pdv-form-mini input:focus,
.pdv-form-mini select:focus,
.pdv-form-mini input[type="file"]:focus{
  border-color:#86b7fe;
  box-shadow:
    0 0 0 3px rgba(13,110,253,.12),
    inset 0 1px 0 rgba(255,255,255,.95);
}

.pdv-form-mini .f-preview{
  display:flex;
  flex-direction:column;
}

.pdv-form-mini .f-preview-box{
  height:72px;
  border:1px dashed #cfd8e3;
  border-radius:12px;
  background:linear-gradient(180deg,#fbfcfe 0%, #f2f5f9 100%);
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}

.pdv-form-mini .f-preview-box img{
  max-width:100%;
  max-height:60px;
  object-fit:contain;
  display:block;
}

.pdv-mini-actions{
  display:flex;
  gap:8px;
  justify-content:flex-end;
  margin-top:10px;
  padding-top:8px;
  border-top:1px solid #eef2f7;
}

.pdv-mini-actions .btn{
  height:34px;
  min-height:34px;
  padding:0 14px;
  border-radius:10px;
  font-size:13px;
  font-weight:700;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 2px 8px rgba(0,0,0,.08);
}

.btn-mini-save{
  min-width:92px;
}

.btn-mini-clear{
  min-width:82px;
}

@media (max-width: 991px){
  .pdv-mini-grid{
    grid-template-columns:1fr 1fr;
  }

  .pdv-form-mini .span-2{
    grid-column:span 2;
  }
}

@media (max-width: 575px){
  .pdv-form-mini{
    padding:10px;
    border-radius:12px;
  }

  .pdv-mini-grid{
    grid-template-columns:1fr;
    gap:8px;
  }

  .pdv-form-mini .span-2{
    grid-column:span 1;
  }

  .pdv-form-mini .f-preview-box{
    height:64px;
  }

  .pdv-mini-actions{
    justify-content:stretch;
  }

  .pdv-mini-actions .btn{
    flex:1;
  }
}
.pdv-shortcuts{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:6px;
}

.shortcut-chip{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:7px 12px;
  border-radius:12px;
  font-size:13px;
  font-weight:700;
  line-height:1;
  color:#fff;
  box-shadow:0 4px 10px rgba(0,0,0,.12);
  border:1px solid rgba(255,255,255,.15);
}

.shortcut-chip b{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:34px;
  height:28px;
  padding:0 8px;
  border-radius:8px;
  background:rgba(255,255,255,.18);
  font-size:12px;
  letter-spacing:.3px;
}

.sc-money{
  background:linear-gradient(135deg,#16a34a,#22c55e);
}

.sc-pix{
  background:linear-gradient(135deg,#06b6d4,#14b8a6);
}

.sc-debit{
  background:linear-gradient(135deg,#2563eb,#3b82f6);
}

.sc-credit{
  background:linear-gradient(135deg,#7c3aed,#a855f7);
}

.sc-finish{
  background:linear-gradient(135deg,#ea580c,#f97316);
}

@media (max-width: 576px){
  .pdv-shortcuts{
    gap:6px;
  }

  .shortcut-chip{
    font-size:12px;
    padding:6px 10px;
  }

  .shortcut-chip b{
    min-width:30px;
    height:24px;
    font-size:11px;
  }
}
.pdv-shortcuts{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:8px;
}

.shortcut-chip{
  border:none;
  cursor:pointer;
  padding:8px 12px;
  border-radius:999px;
  font-size:13px;
  font-weight:600;
  transition:.2s ease;
  box-shadow:0 2px 8px rgba(0,0,0,.12);
}

.shortcut-chip:hover{
  transform:translateY(-1px);
  box-shadow:0 4px 12px rgba(0,0,0,.18);
}

.shortcut-chip:active{
  transform:scale(.98);
}

.sc-money{ background:#e8fff1; color:#0f8f4b; }
.sc-pix{ background:#e8fffd; color:#0a8f86; }
.sc-debit{ background:#eef3ff; color:#315efb; }
.sc-credit{ background:#fff1f3; color:#c1355b; }
.sc-finish{ background:#fff7e8; color:#b26a00; }
