.admin-body{min-height:100vh;background:#08050d;color:#f7f2ff}.admin-sidebar{position:fixed;inset:0 auto 0 0;width:255px;background:linear-gradient(180deg,rgba(22,10,31,.98),rgba(8,5,13,.99));border-right:1px solid rgba(186,80,255,.18);padding:20px 14px;display:flex;flex-direction:column;z-index:20}.admin-brand{padding:6px 8px 22px;border-bottom:1px solid rgba(255,255,255,.07);margin-bottom:16px}.admin-brand small{display:block;font:600 9px/1.2 Inter,sans-serif;letter-spacing:2px;color:#79ffb6;margin-top:3px}.admin-nav{display:flex;flex-direction:column;gap:5px;overflow:auto}.admin-nav button{border:0;background:transparent;color:#a9a1b4;text-align:left;padding:11px 12px;border-radius:11px;font:600 13px Inter;cursor:pointer;transition:.2s}.admin-nav button:hover,.admin-nav button.active{color:#fff;background:linear-gradient(90deg,rgba(166,52,255,.22),rgba(77,255,164,.05));box-shadow:inset 2px 0 #a23cff}.sidebar-bottom{margin-top:auto;border-top:1px solid rgba(255,255,255,.07);padding:16px 8px 0;display:grid;gap:10px}.sidebar-bottom a{color:#958da1;font-size:12px;text-decoration:none}.status-live{color:#65ffab;font-size:11px;font-weight:800;letter-spacing:.7px}.admin-main{margin-left:255px;padding:25px 28px 50px;min-height:100vh;position:relative;z-index:2}.admin-topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.admin-topbar h1{font-family:Orbitron;margin:5px 0 0;font-size:26px}.admin-actions{display:flex;gap:12px;align-items:center}.mini-btn{border:1px solid rgba(180,77,255,.35);background:#150d1d;color:#d9c8e7;border-radius:10px;padding:10px 13px;cursor:pointer}.admin-user{display:flex;align-items:center;gap:9px;background:#120b19;border:1px solid rgba(255,255,255,.08);padding:8px 11px;border-radius:12px}.admin-user small{display:block;color:#8b8494;font-size:10px}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.metric{background:linear-gradient(145deg,rgba(26,13,35,.98),rgba(12,7,18,.98));border:1px solid rgba(172,64,255,.20);border-radius:15px;padding:18px;box-shadow:0 12px 35px rgba(0,0,0,.18)}.metric small{display:block;color:#938b9c;font-size:10px;letter-spacing:1.2px;font-weight:800}.metric strong{display:block;font:700 25px Orbitron;color:#fff;margin:9px 0 6px}.metric span{font-size:11px;color:#736c7c}.metric:nth-child(1) strong,.metric:nth-child(4) strong{color:#79ffb6}.admin-grid.two{display:grid;grid-template-columns:1.1fr .9fr;gap:16px;margin-bottom:16px}.admin-card{background:linear-gradient(150deg,rgba(21,11,29,.98),rgba(10,6,15,.98));border:1px solid rgba(177,67,255,.17);border-radius:16px;padding:18px;margin-bottom:16px;box-shadow:0 12px 36px rgba(0,0,0,.18)}.card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px}.card-head h2{font-family:Orbitron;font-size:16px;margin:4px 0 0}.finance-list,.api-mini-list{display:grid;gap:10px}.finance-row,.api-mini{display:flex;align-items:center;justify-content:space-between;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.06)}.finance-row:last-child,.api-mini:last-child{border-bottom:0}.finance-row span,.api-mini span{color:#9a929f;font-size:12px}.finance-row b{font-size:13px}.positive{color:#6dffae}.negative{color:#ff8099}.api-mini-left{display:flex;gap:10px;align-items:center}.api-led{width:9px;height:9px;border-radius:99px;background:#5bff9f;box-shadow:0 0 12px #37ff8c}.api-led.off{background:#ff5b78;box-shadow:0 0 12px #ff365f}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:720px}th{text-align:left;color:#7f7788;font-size:10px;letter-spacing:1px;padding:10px;border-bottom:1px solid rgba(255,255,255,.08)}td{padding:12px 10px;border-bottom:1px solid rgba(255,255,255,.05);font-size:12px;color:#c9c1cf}.pill{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:10px;font-weight:800;background:rgba(114,255,175,.1);color:#71ffad;border:1px solid rgba(114,255,175,.2)}.pill.warn{color:#ffd97b;background:rgba(255,209,105,.08);border-color:rgba(255,209,105,.18)}.pill.purple{color:#d49bff;background:rgba(185,89,255,.1);border-color:rgba(185,89,255,.2)}.admin-view{display:none}.admin-view.active{display:block}.section-actions{display:flex;align-items:center;gap:12px;margin-bottom:16px}.muted{color:#81798b;font-size:12px}.tiny{font-size:10px!important}.compact .metric strong{font-size:20px}.admin-search{background:#100918;color:#ddd1e7;border:1px solid rgba(184,83,255,.25);border-radius:9px;padding:9px 11px;min-width:190px}.api-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:16px}.api-card{background:linear-gradient(145deg,#170c21,#0b0710);border:1px solid rgba(183,75,255,.22);border-radius:15px;padding:16px;position:relative;overflow:hidden}.api-card:before{content:"";position:absolute;width:120px;height:120px;border-radius:50%;background:rgba(86,255,156,.06);filter:blur(30px);right:-40px;top:-40px}.api-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.api-card h3{font-family:Orbitron;font-size:14px;margin:0 0 5px}.api-card small{color:#847c8e}.api-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:15px 0}.api-stat{background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.05);padding:10px;border-radius:9px}.api-stat span{display:block;color:#81798a;font-size:9px}.api-stat b{display:block;margin-top:4px;font-size:13px}.api-actions{display:flex;gap:7px}.api-actions button{flex:1;border:1px solid rgba(176,72,255,.2);background:#120b19;color:#bfb5c8;padding:8px;border-radius:8px;cursor:pointer;font-size:10px}.routing-box{display:flex;flex-wrap:wrap;gap:16px;align-items:end}.routing-box label{display:grid;gap:6px;color:#9a91a2;font-size:11px}.routing-box select,.routing-box input{background:#100918;border:1px solid rgba(176,72,255,.22);color:#e8e0ee;padding:9px;border-radius:8px}.switch-row{display:flex!important;align-items:center;gap:8px!important;padding-bottom:8px}.placeholder-panel{text-align:center;padding:60px 20px}.placeholder-panel .big-icon{font-size:40px;filter:drop-shadow(0 0 15px rgba(150,65,255,.7))}.placeholder-panel h2{font-family:Orbitron}.placeholder-panel p{max-width:650px;margin:0 auto 20px;color:#8d8595;line-height:1.7}.modal-card select,.modal-card input{width:100%}@media(max-width:1100px){.metric-grid{grid-template-columns:repeat(2,1fr)}.api-grid{grid-template-columns:repeat(2,1fr)}.admin-grid.two{grid-template-columns:1fr}}@media(max-width:760px){.admin-sidebar{position:relative;width:auto;inset:auto}.admin-nav{display:grid;grid-template-columns:repeat(2,1fr)}.admin-main{margin-left:0;padding:18px}.admin-topbar{align-items:flex-start}.admin-user{display:none}.metric-grid,.api-grid{grid-template-columns:1fr}.section-actions{align-items:flex-start;flex-direction:column}}
.pix-config-form{display:grid;gap:12px;margin-top:16px}.pix-config-form label,.admin-view[data-view-panel="payments"] label{display:grid;gap:7px;color:#bdb5c9;font-size:13px}.pix-config-form input,.admin-view[data-view-panel="payments"] input,.admin-pix-preview textarea{width:100%;background:#0d0915;border:1px solid rgba(199,107,255,.2);color:#f4eff8;border-radius:10px;padding:12px;outline:none}.pix-config-form input:focus,.admin-view[data-view-panel="payments"] input:focus{border-color:#b54cff;box-shadow:0 0 0 3px rgba(181,76,255,.08)}.notice-box{margin-top:16px;padding:14px;border:1px solid rgba(101,255,63,.2);border-radius:12px;background:rgba(86,255,47,.04);display:grid;gap:5px}.notice-box b{color:#90ff68}.notice-box span{color:#a9a1b6;font-size:12px;line-height:1.55}.admin-pix-preview{margin-top:16px;display:grid;gap:12px}.admin-pix-preview img{width:210px;height:210px;background:#fff;padding:10px;border-radius:12px;margin:auto}.admin-pix-preview textarea{font-size:10px;word-break:break-all}.pix-admin-grid{align-items:start}

.product-actions{flex-wrap:wrap}.products-table{min-width:980px}.tool-name-cell{display:flex;align-items:center;gap:10px}.tool-thumb{width:34px;height:34px;border-radius:9px;object-fit:cover;background:#120b19;border:1px solid rgba(185,89,255,.18)}.tool-thumb-fallback{display:grid;place-items:center;font-size:17px}.row-actions{display:flex;gap:6px;flex-wrap:wrap}.row-actions .mini-btn{padding:7px 9px;font-size:10px}.mini-btn.danger{border-color:rgba(255,91,120,.28);color:#ff8ea2}.product-modal-card{width:min(780px,92vw)}.product-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0}.product-form-grid label{display:grid;gap:6px;color:#bdb5c9;font-size:12px}.product-form-grid input,.product-form-grid select,.product-form-grid textarea{width:100%;background:#0d0915;border:1px solid rgba(199,107,255,.2);color:#f4eff8;border-radius:10px;padding:11px;outline:none}.product-form-grid textarea{resize:vertical}.wide-field{grid-column:1/-1}.check-field{display:flex!important;align-items:center;grid-template-columns:auto 1fr!important;gap:8px!important}.check-field input{width:auto!important}.catalog-empty{text-align:center;padding:30px;color:#82798d}.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:6px;background:#66ffab}.status-dot.offline{background:#ff6b87}.status-dot.maintenance{background:#ffd56a}@media(max-width:760px){.product-form-grid{grid-template-columns:1fr}.wide-field{grid-column:auto}}
.stock-secret{font-family:monospace;max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stock-status{font-weight:700;text-transform:uppercase;font-size:11px}.stock-status.available{color:#29d66f}.stock-status.delivered{color:#a45cff}.stock-status.disabled,.stock-status.expired,.stock-status.revoked{color:#ff5d71}.stock-status.active{color:#29d66f}

/* v0.9 — clientes, suporte, logs e entrega manual */
.admin-ticket{margin:12px 0}.admin-ticket .ticket-head small{display:block;color:#8d8493;margin-top:3px}.ticket-status{max-width:180px}.ticket-thread{max-height:340px;overflow:auto}.ticket-reply{padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.035);margin:7px 0}.ticket-reply.admin-reply{border-left:3px solid #a855f7;background:rgba(168,85,247,.08)}.ticket-reply p{margin:6px 0;white-space:pre-wrap}.ticket-reply-form{display:flex;gap:8px;align-items:flex-end}.ticket-reply-form textarea{flex:1;min-height:64px}#logsTable code{white-space:pre-wrap;word-break:break-word;font-size:11px;color:#bbb0c7}.notice-box span{display:block;margin-top:4px}

/* v0.10 — gerenciador de fotos */
.product-image-manager{border:1px solid rgba(155,72,255,.18);background:rgba(8,6,12,.42);border-radius:14px;padding:14px}.product-image-editor{display:grid;grid-template-columns:190px 1fr;gap:16px;margin-top:8px}.product-image-preview{height:125px;border-radius:12px;overflow:hidden;border:1px dashed rgba(168,85,247,.45);background:#08070b;display:flex;align-items:center;justify-content:center}.product-image-preview img{width:100%;height:100%;object-fit:cover}.product-image-controls{display:grid;gap:9px;align-content:start}.product-image-controls input[type=file]{padding:9px;border:1px solid rgba(255,255,255,.1);border-radius:9px;background:#0a0810;color:#bdb4c7}.product-image-controls small{color:#8e8498}@media(max-width:700px){.product-image-editor{grid-template-columns:1fr}.product-image-preview{height:180px}}

/* v0.10.6 — relatórios funcionais */
.report-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin:18px 0;
}
.metric-card{
  border:1px solid rgba(168,85,247,.22);
  background:rgba(255,255,255,.025);
  border-radius:14px;
  padding:16px;
}
.metric-card span{display:block;color:#8f879a;font-size:12px;margin-bottom:8px}
.metric-card strong{font-size:20px}
.report-actions{display:flex;gap:10px;flex-wrap:wrap}
@media(max-width:900px){.report-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.report-grid{grid-template-columns:1fr}}

/* v0.14.4 — gestão visual do catálogo DHMF */
.catalog-summary{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 14px}.catalog-summary span{background:rgba(255,255,255,.025);border:1px solid rgba(177,67,255,.16);border-radius:10px;padding:8px 11px;color:#8f8799;font-size:11px}.catalog-summary b{color:#f1e9f8;font-size:13px;margin-right:3px}.supplier-products-table{min-width:1320px}.pill.supplier{color:#59ffad;background:rgba(51,255,159,.08);border-color:rgba(51,255,159,.23)}.pill.neutral{color:#bbb2c6;background:rgba(255,255,255,.035);border-color:rgba(255,255,255,.09)}.supplier-id{color:#c99aff;background:rgba(169,83,255,.08);border:1px solid rgba(169,83,255,.12);border-radius:6px;padding:3px 6px;font-size:10px}.markup-factor{display:block;color:#6fffad;margin-top:3px}.mini-btn.activate{border-color:rgba(77,255,164,.35);color:#67ffaf;background:rgba(53,255,155,.07)}.mini-btn.danger-lite{border-color:rgba(255,91,120,.22);color:#ff9aae;background:rgba(255,91,120,.04)}
.pricing-percent{display:inline-flex;align-items:center;gap:7px;padding:6px 9px;border-radius:9px;border:1px solid;font-weight:800}.pricing-percent small{font-size:9px;opacity:.8}.pricing-percent.rental{color:#00f58a;background:rgba(0,245,138,.08);border-color:rgba(0,245,138,.3)}.pricing-percent.activation{color:#c15cff;background:rgba(193,92,255,.09);border-color:rgba(193,92,255,.32)}.pricing-rules-table{margin:8px 0 20px}.pricing-rules-table table{min-width:620px}
