:root{
--pp-bg:#0b101e;--pp-bg2:#0f1b2d;--pp-card:#10243a;--pp-card2:#0d2b34;--pp-card3:#0d383b;
--pp-line:#173d62;--pp-line2:#1b5b67;--pp-text:#dce7f4;--pp-muted:#8fa4ba;
--pp-teal:#00cfa3;--pp-cyan:#13b9e6;--pp-blue:#2b79e8;--pp-orange:#f59a23;--pp-danger:#ff5b63;
}
.pp-shell,.pp-admin-wrap{margin:0!important;padding:0!important;max-width:none!important}
.pp-shell{background:linear-gradient(135deg,var(--pp-bg),#111827 48%,#071d29);min-height:100vh;color:var(--pp-text);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.pp-app{width:calc(100% - 32px);max-width:1920px;margin:0 auto;padding:24px 0 48px;box-sizing:border-box}
.pp-hero{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:30px;padding:32px 38px;border:1px solid #1c4770;border-radius:28px;background:linear-gradient(120deg,rgba(9,38,54,.94),rgba(10,20,37,.96));box-shadow:0 25px 60px rgba(0,0,0,.18)}
.pp-kicker{font-size:14px;letter-spacing:.14em;color:var(--pp-teal);font-weight:800}
.pp-hero h1{font-size:34px;line-height:1.05;margin:10px 0 8px;color:#e8f0fa}
.pp-hero p{margin:0;color:#93a7bc;font-size:15px}
.pp-hero-actions{display:flex;gap:10px;flex-wrap:wrap}
.pp-btn{border:0;border-radius:12px;padding:11px 16px;font-weight:800;cursor:pointer;color:white;background:#172538;box-shadow:inset 0 0 0 1px rgba(255,255,255,.05)}
.pp-btn:hover{filter:brightness(1.1);transform:translateY(-1px)}
.pp-btn-primary{background:linear-gradient(135deg,#00bd95,#12aee0)}
.pp-btn-success{background:#079f76}
.pp-btn-ghost{background:#152237;border:1px solid #29415d}
.pp-btn-small{padding:9px 13px;font-size:12px}
.pp-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:24px 0}
.pp-stat{min-height:118px;border:1px solid #173c62;border-radius:25px;background:linear-gradient(135deg,#101f36,#092a34);padding:22px;display:flex;align-items:center;gap:18px}
.pp-stat-accent{border-color:#137b73;background:linear-gradient(135deg,#10263b,#0b3939)}
.pp-stat .pp-icon{width:54px;height:54px;border-radius:17px;display:grid;place-items:center;background:#123c58;border:1px solid #1f6580;color:#9cefff;font-size:21px;flex:none}
.pp-stat small{display:block;color:#91a5bb;font-size:12px;margin-bottom:5px}.pp-stat strong{font-size:22px;color:#dbe8f7}
.pp-toolbar{display:flex;gap:10px;align-items:center;padding:12px;border:1px solid #193c5e;background:#0c1829;border-radius:16px;margin-bottom:10px}
.pp-search,.pp-toolbar select{height:40px;border-radius:8px;border:1px solid #274b6d;background:#101f32;color:#cbd9e8;padding:0 12px;outline:none}
.pp-search{flex:1;min-width:250px}.pp-toolbar select{min-width:175px}
.pp-table-card{width:100%;border:1px solid #1b4166;border-radius:15px;background:#0d1b2b;overflow:hidden;box-sizing:border-box}
.pp-table-wrap{overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch}.pp-table{width:100%;min-width:1650px;border-collapse:collapse;font-size:10px}
.pp-table th,.pp-table td{border-right:1px solid #20415f;border-bottom:1px solid #1c3a56;padding:10px 8px;text-align:center;vertical-align:middle}
.pp-table thead th{background:#12283e;color:#a9bfd4;font-weight:800;white-space:nowrap}
.pp-table tbody td{color:#c8d5e3;background:#0d1d2f}.pp-table tbody tr:hover td{background:#10263a}
.pp-table tfoot th,.pp-table tfoot td{background:#102a42;color:#dce9f7;font-weight:900}
.pp-table input.pp-cell{width:74px;background:#0a1726;color:#e8f2fb;border:1px solid #244661;border-radius:5px;padding:5px;text-align:center}
.pp-sale-cell{background:#0a9e72!important;color:white!important;font-weight:900}
.pp-del{background:#ef4853;color:white;border:0;border-radius:5px;padding:6px 9px;cursor:pointer}
.pp-bottom-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}
.pp-panel{min-height:190px;border:1px solid #193f62;border-radius:15px;background:linear-gradient(135deg,#0d1b2c,#10273a);padding:14px 16px}
.pp-panel h3{margin:0 0 12px;font-size:14px;color:#dce9f6}
.pp-tax-list>div{display:flex;justify-content:space-between;padding:6px 9px;background:#112238;border-bottom:1px solid #1b3c58;color:#afc1d4;font-size:10px}.pp-tax-list b{color:#d9e7f6}
.pp-bars{height:150px;display:flex;align-items:flex-end;justify-content:center;gap:80px;border-bottom:1px solid #2d5476}
.pp-bar-col{height:145px;width:105px;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:5px;font-size:10px}.pp-bar-col i{width:88px;background:linear-gradient(#3e87ed,#2369d4);height:15px;border-radius:3px 3px 0 0}.pp-bar-col:nth-child(2) i{background:linear-gradient(#3ac36d,#18a15c)}
.pp-bar-col strong{font-size:10px;color:#dce7f2}.pp-bar-col span{color:#9db1c4}
.pp-donut{float:left;width:130px;height:130px;border-radius:50%;background:conic-gradient(#7fa0bc 0 65%,#f19a27 65% 100%);display:grid;place-items:center;margin:5px 30px 0 8px}.pp-donut:after{content:"";position:absolute;width:82px;height:82px;border-radius:50%;background:#10263a}.pp-donut>div{position:relative;z-index:2;text-align:center}.pp-donut strong{display:block;font-size:11px}.pp-donut small{color:#91a6bb;font-size:8px}.pp-legend{padding-top:10px}.pp-legend p{display:flex;align-items:center;gap:8px;border-bottom:1px solid #23405a;padding:10px 0;margin:0;color:#c2d0de;font-size:10px}.pp-legend b{margin-left:auto}.dot{width:8px;height:8px;border-radius:50%;background:#6eaff0}.dot.orange{background:#f19a27}
/* Resumo da diferença: Valor Final Total - Valor Total Custo */
.pp-difference-panel{min-width:0}
.pp-difference-box{display:grid;grid-template-columns:1fr auto 1fr auto 1.25fr;align-items:center;gap:12px;min-height:120px;padding:16px;border:1px solid #1a7d68;border-radius:12px;background:linear-gradient(135deg,#092b2c,#0b3b35)}
.pp-difference-box>div:not(.pp-difference-op):not(.pp-difference-equals){display:flex;flex-direction:column;gap:7px}
.pp-difference-box span{font-size:10px;color:#9fb9bd;text-transform:uppercase;letter-spacing:.04em}
.pp-difference-box strong{font-size:18px;color:#e4fff8;font-weight:900}
.pp-difference-op,.pp-difference-equals{font-size:22px;color:#75d9c0;font-weight:900;text-align:center}
.pp-difference-result{padding:12px 14px;border-radius:10px;background:#079f76;border:1px solid #20c69d;box-shadow:0 8px 24px rgba(0,207,163,.15)}
.pp-difference-result span{color:#d6fff4}.pp-difference-result strong{font-size:22px;color:#fff}

.pp-note{margin-top:10px;padding:10px 14px;border:1px solid #1a7968;border-radius:6px;background:#0c302f;color:#79d6bd;font-size:10px}
.pp-modal{position:fixed;inset:0;background:rgba(2,8,16,.75);display:grid;place-items:center;z-index:99999;padding:20px}.pp-modal[hidden]{display:none}.pp-modal-card{width:min(760px,96vw);background:#0e1d30;border:1px solid #1e5271;border-radius:20px;box-shadow:0 30px 100px rgba(0,0,0,.5);padding:22px}.pp-modal-head{display:flex;justify-content:space-between;align-items:center}.pp-modal-head h2{margin:0;color:#e8f2fb}.pp-modal-head button{background:none;border:0;color:#aac0d4;font-size:28px;cursor:pointer}
.pp-form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:18px}.pp-form-grid label{font-size:11px;color:#9fb3c6;font-weight:700}.pp-form-grid input{width:100%;box-sizing:border-box;margin-top:6px;height:40px;border-radius:8px;border:1px solid #284b68;background:#091624;color:#e4edf7;padding:0 10px}.pp-form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}
.pp-empty{padding:35px;text-align:center;color:#738ba2}
@media(max-width:1100px){.pp-app{width:calc(100% - 24px)}.pp-stats{grid-template-columns:repeat(2,1fr)}.pp-bottom-grid{grid-template-columns:1fr}.pp-hero{align-items:flex-start;flex-direction:column}.pp-form-grid{grid-template-columns:repeat(2,1fr)}.pp-difference-box{grid-template-columns:1fr auto 1fr auto 1fr}}
@media(max-width:650px){.pp-app{width:calc(100% - 20px);padding:12px 0 30px}.pp-stats{grid-template-columns:1fr}.pp-toolbar{flex-wrap:wrap}.pp-search{min-width:100%}.pp-form-grid{grid-template-columns:1fr}.pp-hero h1{font-size:27px}.pp-difference-box{grid-template-columns:1fr;text-align:center}.pp-difference-op,.pp-difference-equals{transform:rotate(90deg)}}
body.pp-fullscreen .site-header,body.pp-fullscreen header,body.pp-fullscreen .site-footer,body.pp-fullscreen footer{display:none!important}
body.pp-fullscreen{background:#0b101e!important}

/* Colunas de destaque no painel */
.pp-highlight-cost,.pp-highlight-margin,.pp-highlight-sale,.pp-highlight-final,.pp-highlight-profit{font-weight:900}
.pp-highlight-cost{background:#075f4f!important;color:#9fffe5!important;border-color:#12a887!important;box-shadow:inset 0 0 0 1px rgba(32,198,157,.18)}
.pp-highlight-margin{background:#087c59!important;color:#e7fff8!important;border-color:#20c69d!important;box-shadow:inset 0 0 0 1px rgba(32,198,157,.18)}
.pp-highlight-sale,.pp-highlight-final{background:#075f58!important;color:#9fffe5!important}
.pp-highlight-profit{background:#064d43!important;color:#7fffd0!important}

/* Tabela final: Valor Total de Venda - Custo Total (Produtos), por produto */
.pp-final-difference{margin-top:18px;border:1px solid #1b5b67;background:linear-gradient(180deg,#10243a,#0d2b34);border-radius:14px;padding:18px}
.pp-final-difference-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:14px}
.pp-final-difference-head h3{margin:3px 0 0;color:#e7f4ff;font-size:16px}
.pp-final-difference-formula{display:inline-flex;align-items:center;padding:9px 12px;border-radius:9px;background:#064d43;color:#9fffe5;font-weight:900;font-size:11px;white-space:nowrap}
.pp-final-table-wrap{overflow-x:auto}
.pp-final-table{width:100%;border-collapse:separate;border-spacing:0;min-width:760px;overflow:hidden;border:1px solid #1b5b67;border-radius:10px}
.pp-final-table th,.pp-final-table td{padding:13px 14px;text-align:center;border-right:1px solid #1b5b67}
.pp-final-table th:last-child,.pp-final-table td:last-child{border-right:0}
.pp-final-table thead th{background:#0b1b2b;color:#8fa4ba;text-transform:uppercase;font-size:10px;letter-spacing:.4px}
.pp-final-table tbody td{background:#0c2637;color:#f0f7ff;font-size:18px;font-weight:900}
.pp-final-table .pp-final-op{color:#72e4c2;font-size:22px;width:45px}
.pp-final-table .pp-final-result{background:#087c59;color:#eafff7;box-shadow:inset 0 0 0 1px #20c69d}
@media(max-width:650px){.pp-final-difference-head{align-items:flex-start;flex-direction:column}.pp-final-difference-formula{white-space:normal}.pp-final-table{min-width:600px}}

/* Relatório impresso: somente os dados dos produtos, em paisagem */
@media print{
  @page{size:A4 landscape;margin:8mm}
  html,body{background:#fff!important;color:#111!important}
  body.pp-fullscreen{background:#fff!important}
  body.pp-fullscreen .site-header,body.pp-fullscreen header,body.pp-fullscreen .site-footer,body.pp-fullscreen footer,
  .pp-hero,.pp-stats,.pp-toolbar,.pp-bottom-grid,.pp-final-difference,.pp-note,.pp-modal{display:none!important}
  .pp-shell,.pp-admin-wrap,.pp-app{display:block!important;background:#fff!important;color:#111!important;max-width:none!important;margin:0!important;padding:0!important;min-height:0!important}
  .pp-table-card{display:block!important;border:0!important;border-radius:0!important;background:#fff!important;overflow:visible!important}
  .pp-table-wrap{overflow:visible!important}
  .pp-table{width:100%!important;min-width:0!important;table-layout:fixed!important;border-collapse:collapse!important;font-size:7.5pt!important;color:#111!important}
  .pp-table th,.pp-table td{padding:4px 3px!important;border:1px solid #aeb9c4!important;color:#111!important;background:#fff!important;white-space:normal!important}
  .pp-table thead th{background:#e8eef4!important;color:#10243a!important;font-weight:800!important}
  .pp-table tfoot th,.pp-table tfoot td{background:#eef3f7!important;color:#10243a!important}
  .pp-table input.pp-cell{width:100%!important;box-sizing:border-box!important;border:0!important;background:transparent!important;color:#111!important;padding:0!important;font:inherit!important;text-align:center!important;box-shadow:none!important}
  .pp-table .pp-del,.pp-table th:last-child,.pp-table td:last-child{display:none!important}
  .pp-highlight-cost{background:#dceeff!important;color:#123d63!important}
  .pp-highlight-margin{background:#fff0b8!important;color:#674e00!important}
  .pp-highlight-sale,.pp-highlight-final{background:#c9f4e8!important;color:#075f58!important}
  .pp-highlight-profit{background:#b9f1df!important;color:#07533f!important}
  .pp-table thead th:nth-child(4){background:#b9dbf7!important}
  .pp-table thead th:nth-child(8){background:#ffe39a!important}
  .pp-table thead th:nth-child(11),.pp-table thead th:nth-child(12),.pp-table thead th:nth-child(21){background:#a9eadb!important}
}

/* v1.8: layout optimized for desktop web browsers */
@media(min-width:1101px){.pp-hero{padding:26px 30px}.pp-stats{gap:14px}.pp-stat{min-height:105px;padding:18px}.pp-toolbar{position:sticky;top:10px;z-index:20;box-shadow:0 8px 25px rgba(0,0,0,.18)}.pp-table{min-width:1450px}.pp-final-difference{margin-bottom:10px}}
