/* CSS herdado do host r29 (gestor-tarifas.html) usado pelos blocos LOTE 4 (Entregadores, Recargas, Cidades) e pela gaveta. Extraído em 20/09; regras da casca antiga (body/header/nav) removidas. */
  :root{--bg:#f4f6f8;--card:#fff;--b:#e5e7eb;--tx:#111827;--mu:#6b7280;--ac:#059669}
  *{box-sizing:border-box}
  .wrap{padding:0;max-width:none}
  body.op-ativa header.top,body.op-ativa .nav{display:none}
  .sec{font-size:11px;font-weight:800;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;margin:18px 0 8px;border-bottom:1px solid var(--b);padding-bottom:6px}
  .grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px}
  .cid{background:#fff;border:1px solid var(--b);border-radius:12px;padding:12px 14px;cursor:pointer}
  .cid:hover{border-color:#a7f3d0;background:#f0fdf4}
  .cid b{font-size:15px}
  .cid .meta{font-size:11px;color:#94a3b8;margin-top:4px;line-height:1.5}
  .badge{font-size:10px;font-weight:800;border-radius:6px;padding:2px 7px;margin-left:6px}
  .b-ok{background:#ecfdf5;color:#047857}.b-off{background:#f1f5f9;color:#64748b}
  .b-modo{background:#eef2ff;color:#3730a3}
  .bt{width:100%;border:none;border-radius:9px;padding:10px;font:inherit;font-weight:700;font-size:13px;cursor:pointer;background:#0f172a;color:#fff;margin-top:6px}
  .bt.sec2{background:#eef2ff;color:#3730a3}
  .bt.gh{background:#fff;border:1.5px solid var(--b);color:#334155}
  .vbt{display:inline-block;width:auto;border:1.5px solid var(--b);border-radius:8px;padding:5px 10px;font:inherit;font-weight:700;font-size:12px;cursor:pointer;background:#fff;color:#334155;margin:0 0 4px 0}
  .vbt.on{background:#0f172a;color:#fff;border-color:#0f172a}
  .vbt.ok{background:#ecfdf5;color:#047857;border-color:#a7f3d0}.vbt.no{background:#fef2f2;color:#b91c1c;border-color:#fecaca}.vbt.rv{background:#f1f5f9;color:#334155}
  .vin-tab{width:100%;border-collapse:collapse;font-size:13px;background:#fff;border-radius:12px;overflow:hidden}.vin-tab th{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#64748b;padding:8px;border-bottom:1px solid var(--b)}.vin-tab td{padding:8px;border-top:1px solid #f1f5f9;vertical-align:top}
  .bt-novo{background:#059669;color:#fff;border:none;border-radius:9px;padding:8px 14px;font:inherit;font-weight:700;font-size:13px;cursor:pointer}
  table{width:100%;border-collapse:collapse;font-size:13px}
  th,td{text-align:left;padding:8px 10px;border-bottom:1px solid #f1f5f9}
  th{font-size:11px;color:#94a3b8;text-transform:uppercase}
  td select,td input{border:1.5px solid var(--b);border-radius:7px;padding:5px 8px;font:inherit;font-size:12px}
  .f{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:9px;font-size:13px}
  .f>span{font-weight:700;color:#475569}
  .f input,.f select{border:1.5px solid var(--b);border-radius:8px;padding:7px 10px;font:inherit;font-size:13px;max-width:220px;flex:1}
  .chk{display:flex;gap:8px;align-items:center;font-size:13px;color:#334155;margin:6px 0}
  .chk input{width:auto}
  .row{display:flex;justify-content:space-between;align-items:center;font-size:13px;padding:6px 0;border-bottom:1px solid #f1f5f9}
  .rm{border:none;background:#fef2f2;color:#dc2626;border-radius:6px;cursor:pointer;padding:2px 8px;font-weight:800}
  .add{display:flex;gap:6px;margin-top:8px}
  .add input{flex:1;min-width:0;border:1.5px solid var(--b);border-radius:8px;padding:6px 8px;font:inherit;font-size:12px}
  .hint{font-size:11px;color:#94a3b8;margin-top:8px;line-height:1.4}
  .msg{font-size:12px;margin-top:8px;min-height:16px}
  .msg.ok{color:#047857}.msg.err{color:#dc2626}
  .fundo{position:fixed;inset:0;background:rgba(15,23,42,.35);z-index:40}
  .fundo[hidden]{display:none}
  .gaveta{position:fixed;top:0;right:0;height:100vh;width:min(440px,94vw);background:#fff;border-left:1px solid var(--b);z-index:41;box-shadow:-12px 0 32px rgba(0,0,0,.12);overflow-y:auto}
  .gaveta[hidden]{display:none}
  .gav-h{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--b)}
  .gav-h .cod{font-weight:900;font-size:15px}
  .gav-h .x{margin-left:auto;border:none;background:none;font-size:22px;cursor:pointer;color:#64748b}
  .gav-b{padding:14px 16px}
  .sec-t{font-size:11px;font-weight:800;color:#64748b;text-transform:uppercase;margin:16px 0 6px}
  .aviso{background:#fffbeb;border:1px solid #fde68a;color:#92400e;border-radius:10px;padding:14px;margin:16px 18px;font-size:14px}
  .vazio{color:#cbd5e1;padding:14px}

  /* ── Entregadores da malha (v2) ── */
  #view-vin{max-width:1240px}
  .v2-hd{display:flex;align-items:flex-start;gap:16px;flex-wrap:wrap;margin:4px 0 16px}
  .v2-hd h1{margin:0;font-size:26px;font-weight:800;letter-spacing:-.02em} .v2-hd p{margin:4px 0 0;color:var(--mu);font-size:14px}
  .v2-pri{border:0;border-radius:10px;padding:10px 18px;font:inherit;font-weight:700;font-size:14px;background:#0f766e;color:#fff;cursor:pointer;margin-left:auto} .v2-pri:hover{background:#0b5f59} .v2-pri:disabled{opacity:.6}
  .v2-sec{border:1px solid var(--b);border-radius:10px;padding:10px 16px;font:inherit;font-weight:700;font-size:14px;background:#fff;color:var(--tx);cursor:pointer}
  .v2-dng{border:0;border-radius:10px;padding:10px 18px;font:inherit;font-weight:700;font-size:14px;background:#fee2e2;color:#991b1b;cursor:pointer}
  .v2-link{background:none;border:0;color:#0f766e;font:inherit;font-weight:700;cursor:pointer;padding:6px}
  .v2-tabs{display:flex;gap:26px;border-bottom:1px solid var(--b);margin-bottom:16px}
  .v2-tab{background:none;border:0;border-bottom:3px solid transparent;padding:9px 6px;font:inherit;font-size:15px;color:var(--mu);margin-bottom:-1px;cursor:pointer}
  .v2-tab.on{color:#0f766e;border-color:#0f766e;font-weight:700}
  .v2-chips{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:12px}
  .v2-chip{background:#fff;border:1px solid var(--b);border-radius:10px;padding:8px 14px;font:inherit;font-size:14px;color:var(--tx);display:inline-flex;gap:10px;align-items:center;cursor:pointer}
  .v2-chip .n{background:#eef1f4;color:var(--mu);border-radius:999px;padding:1px 9px;font-size:12px;font-weight:700;font-variant-numeric:tabular-nums}
  .v2-chip.on{background:#e3f3f0;border-color:transparent;color:#0f766e;font-weight:700} .v2-chip.on .n{background:#0f766e;color:#fff}
  .v2-filters{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:14px}
  .v2-search{flex:1;min-width:220px;max-width:520px;display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--b);border-radius:10px;padding:0 12px}
  .v2-search input{border:0;background:transparent;padding:11px 0;font:inherit;color:var(--tx);width:100%;outline:none}
  .v2-filters select{background:#fff;border:1px solid var(--b);border-radius:10px;padding:11px 12px;font:inherit;color:var(--tx);min-width:200px}
  .v2-help{color:#475569;font-size:13.5px;margin:4px 0 8px;line-height:1.45}
  .v2-sec-btn{border:1px solid var(--li,#cbd5e1);background:#fff;border-radius:8px;padding:8px 12px;font-weight:600;cursor:pointer} .v2-sec-btn:disabled{opacity:.6;cursor:default}
  .v2-codbox{margin-top:8px;padding:10px;border:1px dashed #94a3b8;border-radius:10px;background:#f8fafc} .v2-codbox .cod{font:700 28px/1.2 ui-monospace,Menlo,Consolas,monospace;letter-spacing:.14em;color:#0f766e;margin-bottom:6px}
  .v2-more{position:relative;margin-left:auto} .v2-menu{position:absolute;right:0;top:44px;background:#fff;border:1px solid var(--b);border-radius:10px;box-shadow:0 10px 30px rgba(0,0,0,.12);min-width:300px;padding:6px;z-index:5}
  .v2-menu button{display:block;width:100%;text-align:left;background:none;border:0;padding:10px 12px;border-radius:8px;color:var(--tx);font:inherit;cursor:pointer} .v2-menu button:hover{background:#eef1f4}
  .v2-note{color:var(--mu);font-size:14px;margin:0 0 12px}
  .v2-tbl{background:#fff;border-radius:12px;box-shadow:0 1px 2px rgba(16,32,42,.06),0 0 0 1px rgba(16,32,42,.05);overflow:auto}
  .v2-tbl table{width:100%;border-collapse:collapse;font-size:14px}
  .v2-tbl th{font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--mu);text-align:left;padding:13px 18px;border-bottom:1px solid var(--b);font-weight:700;background:#fff}
  .v2-tbl td{padding:13px 18px;border-bottom:1px solid var(--b);vertical-align:middle}
  .v2-tbl tbody tr{cursor:pointer} .v2-tbl tbody tr:hover td{background:#f5f7f8} .v2-tbl tr.sel td{background:#e3f3f0}
  .v2-tbl tbody tr:last-child td{border-bottom:0} .v2-tbl tfoot td{color:var(--mu);font-size:13px;background:#f5f7f8;border:0}
  .v2-tbl .dt{font-variant-numeric:tabular-nums;white-space:nowrap}
  .v2-who{display:flex;align-items:center;gap:12px} .v2-av{width:38px;height:38px;border-radius:50%;background:#eef1f4;color:var(--tx);font-weight:800;font-size:12px;display:inline-flex;align-items:center;justify-content:center;flex:none}
  .v2-who .nm,.v2-picked .nm{font-weight:600;font-size:15px} .tel{color:var(--mu);font-size:13px}
  .v2-st{display:inline-block;border-radius:6px;padding:3px 10px;font-size:13px;font-weight:600}
  .v2-st.pendente{background:#fdf0c9;color:#8a5a00} .v2-st.aprovado{background:#dcfce7;color:#166534} .v2-st.reprovado{background:#fee2e2;color:#991b1b} .v2-st.revogado{background:#e5e7eb;color:#4b5563}
  .v2-act{border:1.5px solid #0f766e;color:#0f766e;background:transparent;border-radius:9px;padding:7px 14px;font:inherit;font-weight:700;white-space:nowrap;cursor:pointer}
  .v2-act.ghost{border-color:var(--b);color:var(--tx)}
  .v2-empty{padding:40px 20px;text-align:center;color:var(--mu)} .v2-empty b{display:block;color:var(--tx);font-size:16px;margin-bottom:4px}
  .v2-cards{display:none}
  .v2-card{background:#fff;border-radius:12px;box-shadow:0 1px 2px rgba(16,32,42,.06),0 0 0 1px rgba(16,32,42,.05);padding:14px;margin-bottom:10px;cursor:pointer}
  .v2-card .r{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:8px}
  .gaveta.v2-sheet{width:min(540px,100%);display:flex;flex-direction:column;overflow:hidden;border-left:0;height:100dvh}
  .v2-sh-h{padding:18px 22px 14px;border-bottom:1px solid var(--b);display:flex;gap:12px;align-items:flex-start}
  .v2-sh-h h2{margin:0;font-size:20px;font-weight:800;letter-spacing:-.01em} .v2-sh-h .sub{color:var(--mu);margin-top:4px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
  .v2-sh-h .x{margin-left:auto;background:none;border:0;font-size:24px;color:var(--mu);line-height:1;padding:2px 8px;border-radius:8px;cursor:pointer} .v2-sh-h .x:hover{background:#eef1f4}
  .v2-sh-b{padding:6px 22px 22px;overflow:auto;flex:1}
  .v2-sec{padding:14px 0;border-bottom:1px solid var(--b)} .v2-sec h3,.v2-sec summary{margin:0 0 8px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--mu);font-weight:700}
  .v2-kv{display:flex;justify-content:space-between;gap:14px;padding:6px 0;font-size:14px} .v2-kv .k{color:var(--mu)} .v2-kv .v{text-align:right;font-weight:600}
  .v2-pend{background:#fdf0c9;color:#8a5a00;border-radius:8px;padding:8px 12px;font-size:13.5px;margin-top:6px} .v2-okp{background:#dcfce7;color:#166534;border-radius:8px;padding:8px 12px;font-size:13.5px;margin-top:6px}
  .v2-sec summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:8px} .v2-sec summary::before{content:'›';font-size:16px;transition:transform .15s} .v2-sec details[open] summary::before{transform:rotate(90deg)}
  .v2-ev{display:grid;grid-template-columns:10px 1fr;gap:10px;padding:8px 0;font-size:13.5px} .v2-ev .d{width:8px;height:8px;border-radius:50%;background:#0f766e;margin-top:6px} .v2-ev .d.r{background:#991b1b} .v2-ev small{display:block;color:var(--mu)}
  .v2-sh-f{border-top:1px solid var(--b);padding:14px 22px;display:flex;gap:10px;flex-wrap:wrap;background:#fff} .v2-sh-f button{flex:1;margin:0}
  .v2-modal{position:fixed;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:16px}
  .v2-veil{position:absolute;inset:0;background:rgba(16,32,42,.35)}
  .v2-modal .box{position:relative;background:#fff;border-radius:14px;width:min(520px,100%);box-shadow:0 20px 60px rgba(0,0,0,.25);overflow:hidden}
  .v2-modal .h{padding:18px 22px 8px} .v2-modal .h h2{margin:0;font-size:19px;font-weight:800} .v2-modal .h p{margin:6px 0 0;color:var(--mu)}
  .v2-modal .b{padding:8px 22px 18px} .v2-modal .f{padding:14px 22px;border-top:1px solid var(--b);display:flex;gap:10px;justify-content:flex-end}
  .v2-fld{display:block;margin:12px 0} .v2-fld span{display:block;font-size:13px;color:var(--mu);margin-bottom:6px;font-weight:600}
  .v2-fld input,.v2-fld select,.v2-fld textarea{width:100%;border:1px solid var(--b);border-radius:10px;padding:11px 12px;font:inherit;background:#fff;color:var(--tx)} .v2-fld textarea{min-height:80px;resize:vertical}
  .v2-err{color:#991b1b;font-size:13px;min-height:16px;margin-top:6px}
  .v2-sug{border:1px solid var(--b);border-radius:10px;margin-top:6px;overflow:hidden} .v2-sug button{display:block;width:100%;text-align:left;background:none;border:0;padding:10px 12px;color:var(--tx);border-bottom:1px solid var(--b);font:inherit;cursor:pointer} .v2-sug button:last-child{border-bottom:0} .v2-sug button:hover{background:#eef1f4}
  .v2-picked{display:flex;align-items:center;gap:12px;border:1px solid var(--b);border-radius:10px;padding:10px 12px;margin-top:6px} .v2-picked .v2-link{margin-left:auto}
  .toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:#0f172a;color:#fff;padding:12px 18px;border-radius:10px;font-weight:600;z-index:70;box-shadow:0 10px 30px rgba(0,0,0,.25)}
  @media (max-width:760px){ .v2-tbl{display:none} .v2-cards{display:block} .v2-pri{width:100%;margin-left:0} .v2-filters select{min-width:0;flex:1} .v2-more{margin-left:0} .v2-hd h1{font-size:22px} }
  #vin-n[hidden]{display:none}
