:root{--navy:#172437;--navy2:#1f3047;--blue:#0876df;--blue2:#1268cf;--bg:#f5f8fc;--text:#172033;--muted:#64748b;--line:#e5eaf1;--green:#15945a;--red:#d9282f;--yellow:#d99412;--shadow:0 8px 24px rgba(23,36,55,.06)}*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--text)}button,input,select{font:inherit}button{cursor:pointer} .hidden{display:none!important}
.login-wrap{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#eaf5ff,#f7fafc)}.login-card{width:min(430px,92vw);background:#fff;border-radius:24px;padding:38px;box-shadow:0 24px 70px rgba(23,36,55,.15)}.logo,.brand-mark{display:grid;place-items:center;background:linear-gradient(135deg,#0d8bff,#0962c5);color:#fff;font-weight:900}.logo{width:76px;height:76px;border-radius:20px;font-size:30px;margin:auto auto 18px}.login-card h1{text-align:center;font-size:24px;margin:0 0 8px}.login-card p{text-align:center;color:var(--muted);margin:0 0 24px}.login-card label{display:block;font-weight:700;margin:14px 0}.login-card input{display:block;width:100%;margin-top:8px;padding:14px 15px;border:1px solid #dbe2ea;border-radius:12px;outline:none}.login-card input:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(8,118,223,.12)}.login-card form button{width:100%;padding:14px;border:0;border-radius:12px;background:var(--blue);color:#fff;font-weight:800;margin-top:8px}.msg{min-height:22px;color:#c62828;margin-top:12px;font-size:14px}
.topbar{height:76px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:20}.brand-mobile{display:none}.top-user{display:flex;align-items:center;gap:14px}.bell{position:relative;font-size:25px;color:#1f2e43}.bell span{position:absolute;right:-8px;top:-8px;min-width:20px;height:20px;padding:0 5px;border-radius:20px;background:#ef3340;color:#fff;font-size:11px;display:grid;place-items:center;font-weight:800}.user-avatar{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#1976d2;color:#fff;font-weight:800}.user-name{display:flex;flex-direction:column;line-height:1.1}.user-name span{font-size:12px;color:var(--muted);margin-top:4px}.top-logout{border:1px solid #d5dce5;background:#fff;border-radius:10px;padding:9px 14px;color:#334155}.layout{display:flex;min-height:calc(100vh - 76px)}.sidebar{width:278px;flex:0 0 278px;background:linear-gradient(180deg,#172638,#111c2b);color:#dce7f4;padding:24px 14px;display:flex;flex-direction:column}.sidebar-brand{display:flex;gap:13px;align-items:center;padding:0 10px 28px}.cart-logo{font-size:39px;color:#2995ff;filter:saturate(1.1)}.sidebar-brand strong{display:block;font-size:25px;color:#fff;letter-spacing:-.5px}.sidebar-brand span{display:block;color:#aebdce;font-size:14px;margin-top:4px}.sidebar nav{display:flex;flex-direction:column;gap:7px}.nav{width:100%;border:0;background:transparent;color:#dbe6f2;text-align:left;padding:15px 14px;border-radius:10px;display:flex;align-items:center;gap:17px;font-size:17px}.nav span{width:28px;text-align:center;font-size:25px}.nav:hover{background:rgba(255,255,255,.06)}.nav.active{background:linear-gradient(90deg,#1357a0,#1265bd);color:#fff;box-shadow:0 6px 16px rgba(8,91,180,.2)}.nav-badge{margin-left:auto;background:#ef3340;color:#fff;border-radius:20px;padding:3px 8px;font-size:12px}.sidebar-footer{margin-top:auto;color:#6f8298;font-size:12px;padding:20px 12px 0}.sidebar-footer small{font-size:11px}
main{flex:1;padding:32px 34px 48px;min-width:0}.welcome-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:24px}.welcome-head h1{font-size:34px;line-height:1.1;margin:0 0 5px;letter-spacing:-.8px}.welcome-head p{margin:0;color:var(--muted);font-size:18px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.metric-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px 20px;display:flex;gap:16px;align-items:center;min-height:138px;box-shadow:var(--shadow)}.metric-card .metric-icon{width:60px;height:60px;border-radius:13px;display:grid;place-items:center;font-size:30px;font-weight:900;flex:0 0 60px}.metric-card>div:last-child{display:flex;flex-direction:column}.metric-card span{font-size:15px}.metric-card b{font-size:34px;line-height:1.05;margin:6px 0}.metric-card small{color:var(--muted)}.metric-card.blue .metric-icon{background:#e9f3ff;color:#096bd0}.metric-card.red{border-color:#f4d6d7}.metric-card.red span{color:#df1e2b}.metric-card.red .metric-icon{background:#ffe4e5;color:#d71920}.metric-card.yellow{border-color:#f1e0b9}.metric-card.yellow span{color:#cc8100}.metric-card.yellow .metric-icon{background:#fff2cb;color:#cc8500}.metric-card.green{border-color:#d8eee5}.metric-card.green span{color:#0c7950}.metric-card.green .metric-icon{background:#e1f5ed;color:#08764e}
.panel{background:#fff;border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow)}.home-toolbar{margin-top:18px;padding:18px 22px;display:grid;grid-template-columns:1fr 155px;gap:14px}.home-search,.search-box{display:flex;align-items:center;border:1px solid #d8e0e9;border-radius:10px;background:#fff;min-height:50px;padding:0 15px}.home-search span,.search-box span{font-size:25px;color:#334155;margin-right:10px}.home-search input,.search-box input{border:0;outline:0;width:100%;font-size:16px}.filter-button{border:0;border-radius:10px;background:#0d6ed6;color:#fff;font-weight:800;padding:0 18px}.home-filters{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.home-filters select,.product-toolbar select{min-height:50px;border:1px solid #d8e0e9;border-radius:10px;background:#fff;padding:0 13px;color:#334155}.featured-panel{margin-top:18px;padding:22px}.section-heading,.page-head,.panel-title{display:flex;align-items:center;justify-content:space-between;gap:15px}.section-heading h2,.page-head h2{margin:0;font-size:26px}.section-heading p,.subtitle{margin:5px 0 0;color:var(--muted)}.link-button{border:0;background:transparent;color:#1268cf;font-weight:800}.table-wrap{overflow:auto}.modern-table{width:100%;border-collapse:separate;border-spacing:0;min-width:920px}.modern-table th{background:#f5f8fb;color:#4b5a6e;font-size:14px;text-align:left;padding:14px 12px;border-bottom:1px solid var(--line)}.modern-table td{padding:14px 12px;border-bottom:1px solid #edf0f4;vertical-align:middle}.modern-table tr[data-id]{cursor:pointer}.modern-table tbody tr:hover{background:#fafcff}.modern-table td:first-child{font-weight:700}.badge{display:inline-flex;align-items:center;border-radius:8px;padding:7px 10px;font-size:12px;font-weight:800;white-space:nowrap}.badge.validos{background:#dff4e9;color:#08754c}.badge.proximos{background:#fff0c9;color:#ad6900}.badge.vencidos{background:#ffe0e1;color:#c41e28}.days{font-size:12px}.days.validos{color:#0b8055}.days.proximos{color:#bb7400}.days.vencidos{color:#d0262e}.actions-cell{display:flex;gap:6px}.icon-btn{width:32px;height:32px;border:1px solid #dfe5ec;border-radius:8px;background:#fff;color:#344155}.page-head{margin-bottom:20px}.secondary{border:1px solid #d7e0e9;background:#fff;color:#0b6bc8;padding:10px 14px;border-radius:10px;font-weight:800}.product-summary,.report-cards,.alert-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}.product-summary>div,.report-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:17px 18px;box-shadow:var(--shadow)}.product-summary strong,.report-card strong{display:block;font-size:28px}.product-summary span,.report-card span{color:var(--muted);font-size:14px}.product-toolbar{display:grid;grid-template-columns:1fr 220px 220px;gap:12px;margin-bottom:18px}.alert-summary{grid-template-columns:repeat(4,1fr)}.alert-card{background:#fff;border:1px solid var(--line);border-left:5px solid;border-radius:12px;padding:18px}.alert-card strong{display:block;font-size:28px}.alert-card span{color:var(--muted)}.alert-card.vencidos{border-left-color:#df3036}.alert-card.sete{border-left-color:#ff8b21}.alert-card.quinze{border-left-color:#e3ad19}.alert-card.trinta{border-left-color:#25a35a}.alert-groups{display:grid;gap:18px}.alert-group{padding:18px 22px}.group-title{display:flex;align-items:center;justify-content:space-between}.group-title h3{margin:0}.group-title>span{background:#eef2f5;padding:7px 11px;border-radius:20px;font-weight:800}.alert-detail-row{display:flex;justify-content:space-between;gap:20px;padding:14px 0;border-top:1px solid #edf0f4}.alert-detail-row>div:first-child{display:flex;flex-direction:column;gap:5px}.alert-detail-row span,.alert-date span{color:var(--muted);font-size:13px}.alert-date{text-align:right}.report-cards{grid-template-columns:repeat(4,1fr)}.report-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.report-grid .panel,.report-sector-panel,.report-table-panel{padding:22px;margin-bottom:18px}.report-note{color:var(--muted);font-size:13px}.bar-list{display:grid;gap:18px}.bar-head{display:flex;justify-content:space-between;margin-bottom:7px}.bar-head small{color:var(--muted);font-weight:500}.bar-track{height:10px;border-radius:20px;background:#edf1f3;overflow:hidden}.bar-fill{height:100%;border-radius:20px}.bar-fill.validos,.bar-fill.trinta,.bar-fill.sector{background:#21a15b}.bar-fill.proximos,.bar-fill.quinze{background:#f0ad18}.bar-fill.vencidos,.bar-fill.sete{background:#ee7f25}.bar-fill.mais{background:#789b91}.empty{text-align:center;color:var(--muted);padding:20px}.small-empty{padding:16px}.account-hero{padding:25px;display:flex;align-items:center;gap:20px;margin-bottom:18px}.account-avatar{width:80px;height:80px;border-radius:18px;display:grid;place-items:center;background:#0c9b50;color:#fff;font-size:27px;font-weight:900}.account-main h3{margin:0;font-size:23px}.account-main p{margin:6px 0;color:var(--muted)}.account-status{color:#08764e;font-weight:800}.account-status i{display:inline-block;width:8px;height:8px;border-radius:50%;background:#23a15c}.account-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}.account-item{padding:22px;display:flex;flex-direction:column;gap:7px}.account-label{color:var(--muted)}.account-item strong{font-size:24px}.account-item small{color:var(--muted)}.account-actions{padding:22px;display:flex;justify-content:space-between;align-items:center;gap:20px}.account-actions h3{margin:0 0 5px}.account-actions p{margin:0;color:var(--muted)}.danger{background:#e53935;color:#fff;border:0;border-radius:10px;padding:12px 18px;font-weight:800}.coming-soon{padding:60px;text-align:center}.coming-icon{font-size:46px;color:#1268cf}.coming-soon h3{font-size:24px}.coming-soon p{color:var(--muted);max-width:600px;margin:auto}.modal{position:fixed;inset:0;background:rgba(8,18,31,.48);display:grid;place-items:center;z-index:50;padding:20px}.modal-card{position:relative;background:#fff;border-radius:18px;padding:28px;width:min(560px,94vw);box-shadow:0 20px 60px rgba(0,0,0,.2)}.modal-close{position:absolute;right:12px;top:10px;border:0;background:transparent;font-size:30px;color:#64748b}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:20px}.detail-grid>div{padding:14px;border:1px solid var(--line);border-radius:10px}.detail-grid span{display:block;color:var(--muted);font-size:13px;margin-bottom:5px}.detail-wide{grid-column:1/-1}
@media(max-width:1100px){.sidebar{width:230px;flex-basis:230px}.cards,.report-cards{grid-template-columns:repeat(2,1fr)}.alert-summary{grid-template-columns:repeat(2,1fr)}.product-toolbar{grid-template-columns:1fr 1fr}.product-toolbar .search-box{grid-column:1/-1}.home-toolbar{grid-template-columns:1fr}.home-filters{grid-template-columns:1fr}.report-grid{grid-template-columns:1fr}}
@media(max-width:760px){.topbar{padding:0 14px}.sidebar{width:76px;flex-basis:76px;padding:16px 8px}.sidebar-brand{justify-content:center;padding:0 0 20px}.sidebar-brand>div:last-child,.nav:not(.active)::after,.sidebar-footer{display:none}.cart-logo{font-size:29px}.nav{justify-content:center;padding:14px 6px}.nav span{margin:0}.nav{font-size:0}.nav-badge{font-size:10px;margin-left:-10px}.nav.active{font-size:0}main{padding:22px 14px}.welcome-head h1{font-size:28px}.welcome-head p{font-size:15px}.cards,.alert-summary,.account-grid{grid-template-columns:1fr}.top-user .user-name{display:none}.topbar .brand-mobile{display:flex;align-items:center;gap:10px}.brand-mark{width:38px;height:38px;border-radius:10px}.brand-mobile strong{font-size:13px}.brand-mobile span{display:block;color:var(--muted);font-size:10px}.top-logout{display:none}.home-toolbar{padding:14px}.section-heading{align-items:flex-start}.section-heading h2{font-size:22px}.account-actions{flex-direction:column;align-items:stretch}}
@media print{.sidebar,.topbar,.page-head button,.top-user,.home-toolbar,.secondary{display:none!important}main{padding:0}.panel{box-shadow:none}}



/* V8 - modo compacto para a lista de produtos */
.product-table {
  font-size: 13px;
}
.product-table th,
.product-table td {
  padding: 9px 10px !important;
}
.product-table img,
.product-image,
.product-photo {
  width: 72px !important;
  height: 72px !important;
  max-width: 72px !important;
  max-height: 72px !important;
  object-fit: cover !important;
}
.product-row,
.product-card,
.product-item {
  min-height: 0 !important;
}
.product-table .product-name {
  font-size: 14px !important;
  line-height: 1.2 !important;
}
.product-table .product-meta {
  font-size: 12px !important;
}
.product-table .status,
.product-table .badge {
  font-size: 11px !important;
  padding: 5px 8px !important;
}
.product-table .actions button {
  width: 32px !important;
  height: 32px !important;
}
