:root{
  --navy:#062c50;--navy-deep:#031d35;--blue:#075fc2;--blue-2:#0874df;--cyan:#eaf7ff;
  --bg:#f4faff;--panel:#fff;--line:#d8e8f5;--line-2:#e8f1f8;--text:#08255f;--body:#27486f;
  --muted:#5d85b7;--green:#079953;--green-bg:#e9f8ef;--red:#e12a22;--red-bg:#fff0ee;
  --amber:#e9820b;--amber-bg:#fff4e5;--purple:#7047df;--shadow:0 8px 30px rgba(17,88,143,.07);
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--body);background:var(--bg);font-size:14px}
button,input,select{font:inherit}.hidden{display:none!important}
button,select,input{outline:none}.app-shell{display:grid;grid-template-columns:214px minmax(0,1fr);min-height:100vh}
.sidebar{background:radial-gradient(circle at 75% 28%,#08436f 0,transparent 36%),linear-gradient(180deg,var(--navy),var(--navy-deep));color:#fff;padding:17px 12px 19px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;border-right:1px solid #0d6eae;z-index:10}
.brand{display:flex;align-items:center;justify-content:center;gap:10px;padding:7px 8px 23px;min-height:62px}.brand .brand-text{display:block;white-space:nowrap;font-size:22px;letter-spacing:-.02em;line-height:1.05;text-align:left}.logo-mark{position:static;transform:none;flex:0 0 42px;width:42px;height:42px}.logo-mark svg{display:block;width:100%;height:100%}
.sidebar nav{display:grid;gap:7px}.nav-btn{border:0;background:transparent;color:#f0f7ff;padding:14px 14px;border-radius:9px;text-align:left;cursor:pointer;display:flex;gap:14px;align-items:center;font-weight:600;transition:.18s ease}.nav-btn:hover,.nav-btn.active{background:linear-gradient(90deg,rgba(17,105,183,.56),rgba(30,111,192,.38));box-shadow:inset 0 0 0 1px rgba(125,196,255,.08)}.nav-btn svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.nav-btn span{font-size:14px}
.sidebar-foot{margin-top:auto;padding:10px 10px 6px;color:#e5f2ff}.sidebar-foot small{display:block;line-height:1.75;color:#e5f2ff;margin-top:8px}.offline-line{display:flex;align-items:center;gap:7px}.offline-line strong{font-weight:500}.offline-dot{width:10px;height:10px;border-radius:50%;background:#12d6ab;box-shadow:0 0 0 3px rgba(18,214,171,.13),0 0 12px rgba(18,214,171,.65)}
.main{min-width:0;padding:14px 22px 26px;background:radial-gradient(circle at 58% 1%,rgba(143,215,255,.14),transparent 30%),linear-gradient(180deg,#f7fbff,#f3f9fe 46%,#f7fbfe)}
.topbar{min-height:51px;display:flex;align-items:flex-start;justify-content:space-between;gap:22px;margin-bottom:11px;padding:0 2px}.page-heading h1{font-size:22px;line-height:1.18;margin:0;color:#08245f;letter-spacing:-.025em;font-weight:800}.page-heading p{margin:4px 0 0;color:#4378ba;font-size:13px}.top-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.btn{border:1px solid transparent;border-radius:8px;padding:10px 15px;cursor:pointer;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;transition:transform .12s ease,box-shadow .12s ease,background .12s ease}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.btn.small{padding:8px 13px;font-size:12px;border-radius:7px}.btn.primary{background:linear-gradient(180deg,#0b63b8,#07539e);color:#fff;box-shadow:0 4px 10px rgba(6,79,153,.14)}.btn.top-import{background:#edf8ff;border-color:#d9ebf8;color:#073e94;padding:10px 16px}.btn.top-backup{background:#fff;border-color:#d9e7f3;color:#07347b;padding:10px 16px}.btn.outline,.btn.clear-button{background:#fff;border-color:#cfe2f2;color:#0860c8}.btn.secondary-file{background:#fff;border-color:#cfe1ee;color:#0c5eb3}.btn.export-kml{background:#ebfaf1;border-color:#d9f1e4;color:#09894c}.btn.export-pdf{background:#eef7ff;border-color:#dceeff;color:#0862d2}.btn.danger{background:#fff1f1;border-color:#f5d2d2;color:#bd2020}
.section{display:none}.section.active{display:block}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.stat-card{background:rgba(255,255,255,.96);border:1px solid #e2edf6;border-radius:11px;box-shadow:var(--shadow);padding:15px 17px;display:flex;align-items:center;gap:18px;min-height:96px}.stat-card>div:last-child{display:grid}.stat-card span{font-weight:700;color:#12366d;font-size:13px}.stat-card strong{font-size:26px;line-height:1;margin:7px 0 5px;color:#092b73;letter-spacing:.01em}.stat-card small{font-size:12px;color:#4382c9}.stat-icon{width:65px;height:65px;border-radius:12px;display:grid;place-items:center;flex:0 0 auto}.stat-icon svg{width:35px;height:35px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linejoin:round;stroke-linecap:round}.stat-icon.blue{background:#e9f5ff;color:#0878ee}.stat-icon.green{background:#eaf8f1;color:#00a760}.stat-icon.purple{background:#f2edff;color:#7045ed}.stat-icon.orange{background:#fff2e7;color:#ff6a00}
.panel{background:rgba(255,255,255,.98);border:1px solid #dce9f3;border-radius:12px;box-shadow:var(--shadow);margin-bottom:14px;overflow:hidden}.search-panel{padding:15px 16px 10px}.panel-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.title-with-icon{display:flex;gap:10px;align-items:flex-start}.panel-icon{color:#0870ec;width:29px;height:29px;display:grid;place-items:center;flex:0 0 auto}.panel-icon svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.panel-title-row h2{margin:0;color:#0a2d69;font-size:16px;letter-spacing:-.01em}.panel-title-row p{margin:3px 0 0;color:#4d84c5;font-size:12px}.base-pill{align-self:flex-start;border-radius:999px;background:#eff8ff;color:#3e80c1;padding:5px 10px;font-size:11px;display:flex;align-items:center;gap:7px}.base-pill span{width:7px;height:7px;border-radius:50%;background:#0ab86a}.search-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px 18px;margin-top:14px}.field{display:flex;flex-direction:column;gap:5px;min-width:0}.field.span-2{grid-column:span 2}.field>span{font-size:12px;font-weight:800;color:#0f356d}.field input,.field select{height:37px;border:1px solid #cbdff0;border-radius:5px;padding:0 11px;color:#11396e;background:#fff;box-shadow:inset 0 1px 2px rgba(20,80,125,.025)}.field input::placeholder{color:#64a0e2}.field input:focus,.field select:focus{border-color:#6fb2ef;box-shadow:0 0 0 3px rgba(27,128,220,.08)}.search-actions-row{display:flex;align-items:flex-end;gap:10px;margin-top:12px}.search-button{min-width:139px;height:43px}.clear-button{height:43px}
.results-panel{overflow:visible}.results-toolbar{min-height:61px;padding:12px 15px 10px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line-2)}.results-title{display:flex;align-items:center;gap:9px;min-width:0}.results-title h2{font-size:17px;color:#0a2c68;margin:0}.results-icon{color:#0871ec;width:25px;height:25px}.results-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.count-badge{background:#e7f4ff;color:#0669dc;border-radius:999px;padding:4px 9px;font-size:11px;font-weight:800}.selection-info{font-size:11px;color:#6f91b8;white-space:nowrap}.toolbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.toolbar-actions .btn svg{width:16px;height:16px}
.table-wrap{overflow:auto;max-height:57vh;border-radius:0 0 10px 10px}.table-loading{padding:8px 15px;background:#eef7ff;color:#286aa7;font-size:12px;border-bottom:1px solid #dceaf5}table{width:100%;min-width:1600px;border-collapse:separate;border-spacing:0;font-size:11px;color:#174477;table-layout:fixed}thead{position:sticky;top:0;z-index:3}thead th{background:#eff8ff;color:#0756aa;text-transform:uppercase;font-size:9.7px;letter-spacing:.005em;text-align:left;padding:8px 4px;border-bottom:1px solid #d8e9f6;white-space:nowrap}tbody td{padding:7px 4px;border-bottom:1px solid #e7eff6;vertical-align:middle;background:#fff;line-height:1.34}tbody tr:nth-child(even) td{background:#fbfdff}tbody tr:hover td{background:#f3faff}tbody tr.selected td{background:#eef8ff}.check-col{width:30px;text-align:center!important}.owner-col{width:165px}.name-col{width:190px}.access-col{width:705px}.city-col{width:72px;text-align:center!important}.car-col{width:120px;text-align:center!important}.area-col{width:64px;text-align:center!important}.coord-col{width:110px;text-align:center!important}.link-col,.kml-col,.file-col{width:52px;text-align:center!important}.owner-cell{min-width:0;font-weight:600;color:#154a8e}.owner-main{font-weight:700;color:#154a8e;line-height:1.25}.owner-doc{display:block;margin-top:2px;font-size:9.8px;color:#5078a3;font-weight:600}.owner-person{display:block}.owner-person-more{margin-top:6px;padding-top:5px;border-top:1px dotted #d5e3ef}.name-cell{min-width:0}.name-cell .text-link{display:block;width:100%;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.car-cell{min-width:0;white-space:normal;overflow-wrap:anywhere;word-break:normal;text-align:center}.access-cell{min-width:0;white-space:normal;line-height:1.42;color:#27547f}.coords-cell{min-width:0;font-family:ui-monospace,"SFMono-Regular",Consolas,monospace;color:#075abc;text-align:center}.city-col+th,.car-col+th,.area-col+th,.coord-col+th,.link-col+th,.kml-col+th,.file-col+th{padding-left:3px;padding-right:3px}tbody td:nth-child(5),tbody td:nth-child(6),tbody td:nth-child(7),tbody td:nth-child(8),tbody td:nth-child(9),tbody td:nth-child(10),tbody td:nth-child(11){text-align:center;padding-left:3px;padding-right:3px}.coord-box{display:flex;align-items:center;justify-content:center;gap:3px}.coord-values{display:grid;gap:2px;text-align:right;white-space:nowrap;line-height:1.24}.coord-values span{display:block}.text-link{border:0;background:none;padding:0;color:#006dea;font-weight:700;cursor:pointer;text-align:left}.text-link:hover{text-decoration:underline}.icon-btn{border:0;background:none;color:#0874df;cursor:pointer;font-size:15px;padding:2px;border-radius:4px;line-height:1}.icon-btn:hover{background:#e5f3ff}.action-btn{border:1px solid transparent;border-radius:7px;min-width:48px;height:29px;padding:0 6px;font-weight:700;cursor:pointer;font-size:10px;display:inline-flex;align-items:center;justify-content:center;gap:4px;text-decoration:none}.action-btn.maps{background:#eef7ff;color:#0b63c8;border-color:#dcecff}.action-btn.kml{background:#eaf8f0;color:#038a47;border-color:#d7f0e1}.action-btn.pdf{background:#edf6ff;color:#0767d8;border-color:#dcecff}.empty-row td{text-align:center!important;padding:38px;color:#7892aa}.pagination{padding:10px 15px;display:flex;align-items:center;justify-content:flex-end;gap:9px;border-top:1px solid #e5eef5;background:#fff;color:#5e7895;font-size:12px}.pagination label{display:flex;align-items:center;gap:6px}.pagination select{border:1px solid #d1e2ef;border-radius:6px;padding:6px 8px;color:#315c85;background:#fff}
.import-panel,.bank-panel{padding:18px}.import-heading-row{margin-bottom:15px}.folder-feature{border:1px solid #cfe5f5;background:linear-gradient(135deg,#f1f9ff,#f7fcff);border-radius:12px;padding:17px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:15px}.folder-feature-icon{width:52px;height:52px;border-radius:12px;background:#e3f3ff;color:#0872dc;display:grid;place-items:center}.folder-feature-icon svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.folder-feature-copy strong{color:#0a3472;font-size:15px}.folder-feature-copy p{margin:4px 0 0;color:#5b7fa7;line-height:1.55;font-size:12px}.folder-btn{height:42px}.drop-zone{margin-top:14px;border:1.5px dashed #b9d9ee;border-radius:12px;padding:24px;text-align:center;background:#fbfdff;color:#4d78a3;transition:.16s}.drop-zone.drag{border-color:#0874df;background:#eef8ff;box-shadow:0 0 0 4px rgba(8,116,223,.05)}.drop-icon{width:52px;height:52px;border-radius:50%;background:#edf7ff;color:#0874df;display:grid;place-items:center;margin:0 auto 8px}.drop-icon svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.drop-zone h3{margin:0;color:#124c88;font-size:15px}.drop-zone p{margin:6px auto 14px;max-width:680px;font-size:12px;line-height:1.5}.scan-summary{margin-top:12px;border-radius:9px;background:#eef8ff;border:1px solid #d5ebfa;padding:11px 13px;color:#225f98;font-size:12px;line-height:1.45}.batch-progress{margin-top:12px;padding:12px;border-radius:9px;background:#fbfdff;border:1px solid #e0edf6}.batch-progress-head{display:flex;justify-content:space-between;gap:15px;margin-bottom:7px;color:#2c5e8a;font-size:12px}.progress{height:8px;background:#e6eef5;border-radius:99px;overflow:hidden}.progress.slim{height:7px}.progress-bar{height:100%;width:3%;background:linear-gradient(90deg,#0873dc,#12bfa2);border-radius:inherit;transition:width .18s ease}.import-notes{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}.import-notes>div{border:1px solid #e1edf5;border-radius:10px;padding:12px;display:flex;gap:10px;background:#fff}.import-notes strong{display:block;color:#143f72;font-size:12px}.import-notes span:not(.note-icon){display:block;margin-top:3px;color:#6c87a3;line-height:1.4;font-size:11px}.note-icon{width:28px;height:28px;border-radius:7px;display:grid!important;place-items:center;font-weight:800;flex:0 0 auto}.note-icon.excel{background:#e9f8ef;color:#087e47}.note-icon.geo{background:#f0edff;color:#694bd8}.note-icon.merge{background:#eaf5ff;color:#0872d8}.import-queue{margin-top:14px;display:grid;gap:7px}.queue-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid #e0ebf3;border-radius:8px;padding:10px 12px;background:#fff}.queue-item strong{display:block;color:#174b7f;font-size:12px;word-break:break-word}.queue-item small{display:block;color:#7890a8;margin-top:3px;word-break:break-word}.queue-item>span{font-weight:800;color:#3172ad}.queue-ok{color:#0a9556!important}.queue-error{color:#cb2a2a!important}
.bank-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:16px}.bank-grid>div{border:1px solid #dfebf4;border-radius:10px;padding:14px;background:#fbfdff}.bank-grid span{display:block;font-size:11px;color:#7390aa;margin-bottom:5px}.bank-grid strong{color:#183f6c}.bank-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.file-label{cursor:pointer}.warning-text{color:#98602b;background:#fff8ef;border:1px solid #f3e3cb;padding:10px;border-radius:8px;font-size:11px;margin:12px 0 0}
.boot-overlay{position:fixed;inset:0;background:linear-gradient(135deg,#f7fbff,#e9f6ff);z-index:1000;display:grid;place-items:center}.boot-card{width:min(430px,calc(100vw - 32px));background:#fff;border:1px solid #dbe9f3;border-radius:18px;padding:30px;box-shadow:0 22px 60px rgba(8,52,91,.14);text-align:center}.boot-logo{width:64px;height:64px;margin:0 auto 8px}.boot-logo svg{width:100%;height:100%}.boot-card h1{color:#0a2e67;margin:0 0 6px}.boot-card p{color:#4777a8}.boot-byline{margin:0 0 10px;color:#315f93!important;font-size:13px;font-weight:600}.boot-status{margin:0 0 9px;color:#6b88aa!important;font-size:11.5px}.boot-card small{display:block;color:#7790a8;margin-top:12px;line-height:1.5}
.modal{position:fixed;inset:0;background:rgba(2,27,49,.55);z-index:500;display:grid;place-items:center;padding:25px}.modal-card{width:min(1050px,96vw);max-height:92vh;overflow:auto;background:#fff;border-radius:14px;box-shadow:0 22px 80px rgba(0,0,0,.25);position:relative;padding:24px}.modal-close{position:sticky;top:0;float:right;z-index:2;width:34px;height:34px;border:0;border-radius:50%;background:#edf5fb;color:#345f83;font-size:22px;cursor:pointer}.detail-head h2{margin:0;color:#0d3c72}.detail-head p{color:#5681a7}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.detail-box{border:1px solid #dfebf4;background:#fbfdff;padding:10px;border-radius:8px}.detail-box span{display:block;color:#7990a5;font-size:10px;text-transform:uppercase}.detail-box strong{display:block;color:#234d73;margin-top:4px}.detail-section{margin-top:16px}.detail-section h3{font-size:13px;color:#0e4b82;margin:0 0 7px}.access-detail{white-space:pre-wrap;line-height:1.55;background:#f7fbfe;border:1px solid #e0ebf3;border-radius:8px;padding:12px}.polygon-preview{height:260px;border:1px solid #e0ebf3;border-radius:8px;overflow:hidden}.polygon-preview svg{width:100%;height:100%}.detail-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:13px}.detail-table{min-width:0;font-size:11px}.detail-table td:first-child{width:34%;font-weight:700;color:#3d6589}.toast{position:fixed;right:22px;bottom:22px;z-index:1100;background:#073a63;color:#fff;padding:11px 15px;border-radius:9px;box-shadow:0 8px 25px rgba(0,0,0,.18);max-width:420px}
@media(max-width:1200px){.app-shell{grid-template-columns:190px 1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}.search-form-grid{grid-template-columns:repeat(2,1fr)}.field.span-2{grid-column:span 2}.folder-feature{grid-template-columns:auto 1fr}.folder-btn{grid-column:1/-1}.results-toolbar{align-items:flex-start;flex-direction:column}.toolbar-actions{justify-content:flex-start}.selection-info{display:none}}
@media(max-width:780px){.app-shell{display:block}.sidebar{position:relative;height:auto;padding:10px}.brand{padding:4px 6px 10px;gap:8px}.sidebar nav{grid-template-columns:repeat(3,1fr)}.nav-btn{justify-content:center}.sidebar-foot{display:none}.main{padding:12px}.topbar{flex-direction:column}.top-actions{justify-content:flex-start}.stats-grid{grid-template-columns:1fr}.search-form-grid{grid-template-columns:1fr}.field.span-2{grid-column:span 1}.search-actions-row{flex-wrap:wrap}.import-notes,.bank-grid,.detail-grid{grid-template-columns:1fr}.folder-feature{grid-template-columns:1fr}.folder-feature-icon{display:none}}

/* v1.1.6: aproxima Nome do imóvel e Descrição do acesso */
thead th.name-col{padding-right:2px} thead th.access-col{padding-left:2px} tbody td.name-cell{padding-right:2px} tbody td.access-cell{padding-left:2px}

/* ===== JusMaps Online / Cloudflare ===== */
.auth-overlay{position:fixed;inset:0;z-index:2000;display:grid;place-items:center;padding:24px;background:#063a78 url('/assets/login-bg.png') center/cover no-repeat}.auth-overlay::before{content:"";position:absolute;inset:0;background:rgba(1,41,93,.10);pointer-events:none}.auth-card{position:relative;z-index:1;width:min(420px,calc(100vw - 32px));background:rgba(255,255,255,.985);border:1px solid rgba(215,231,245,.9);border-radius:18px;padding:28px 30px;box-shadow:0 24px 80px rgba(0,27,65,.28)}.auth-card.register-card{width:min(470px,calc(100vw - 32px));max-height:92vh;overflow:auto}.auth-brand{display:flex;align-items:center;gap:12px;margin-bottom:23px}.auth-logo{width:48px;height:48px;border-radius:14px;background:#edf7ff;display:grid;place-items:center;box-shadow:0 5px 16px rgba(4,67,135,.10)}.auth-logo svg{width:39px;height:39px}.auth-brand strong{display:block;color:#092e69;font-size:18px;line-height:1.05}.auth-brand span{display:block;margin-top:4px;color:#6685a8;font-size:11px;font-weight:700;letter-spacing:.04em}.auth-card h1{margin:0;color:#0b326d;font-size:27px;letter-spacing:-.02em}.auth-lead{margin:7px 0 20px;color:#6684a4;font-size:12.5px;line-height:1.5}.auth-form{display:grid;gap:13px}.auth-form label{display:grid;gap:6px}.auth-form label>span{font-size:12px;font-weight:800;color:#133d73}.auth-form input{height:43px;border:1px solid #c9ddec;border-radius:8px;padding:0 12px;background:#fff;color:#173e69;outline:none}.auth-form input:focus{border-color:#4e9ee5;box-shadow:0 0 0 3px rgba(34,132,218,.10)}.auth-primary,.auth-secondary{height:45px;border-radius:8px;font-weight:800;cursor:pointer;font-size:13px}.auth-primary{border:0;background:linear-gradient(180deg,#0c65ba,#07549f);color:#fff;box-shadow:0 5px 13px rgba(7,82,157,.17)}.auth-secondary{border:1px solid #bdd9ee;background:#f7fbff;color:#0b60b9}.auth-card small{display:block;text-align:center;color:#7a91a8;font-size:10.5px;margin-top:15px}.auth-message{margin-top:13px;padding:10px 12px;border-radius:8px;background:#eef7ff;border:1px solid #d7eaf8;color:#275e91;font-size:12px;line-height:1.45}.auth-message.error{background:#fff1f1;border-color:#f4d0d0;color:#a62525}.auth-message.success{background:#edf9f2;border-color:#d4eddf;color:#0d7d4c}.current-user{display:grid;min-width:145px;text-align:right;line-height:1.15;margin-right:2px}.current-user strong{font-size:12px;color:#163e70;max-width:320px;white-space:normal}.current-user span{font-size:9px;font-weight:700;color:#6a8aad;margin-top:3px;max-width:320px;white-space:normal}.admin-panel{padding:18px}.admin-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:16px 0}.admin-stats article{border:1px solid #dceaf4;background:#fafdff;border-radius:10px;padding:13px}.admin-stats span{display:block;color:#6c8aa8;font-size:11px;font-weight:700}.admin-stats strong{display:block;color:#0e4f91;font-size:24px;margin-top:5px}.admin-table-wrap{overflow:auto;border:1px solid #dfebf4;border-radius:10px}.admin-table{min-width:1050px;width:100%;table-layout:auto;font-size:11px}.admin-table th{background:#eff8ff;color:#0756aa;text-transform:uppercase;font-size:9.5px;padding:9px 8px}.admin-table td{padding:9px 8px;vertical-align:top}.admin-actions{display:flex;gap:5px;flex-wrap:wrap}.admin-action{border:1px solid #cfe2f2;background:#fff;color:#0a61bd;border-radius:6px;padding:5px 8px;font-size:9.5px;font-weight:800;cursor:pointer}.admin-action.approve{background:#eaf8f0;border-color:#d4ebde;color:#07854a}.admin-action.block{background:#fff0ef;border-color:#f2d2cf;color:#c43b30}.admin-action.role{background:#f1efff;border-color:#ded8fb;color:#644bc2}.user-status{display:inline-flex;border-radius:999px;padding:4px 8px;font-size:9px;font-weight:800}.user-status.PENDING{background:#fff4df;color:#c87400}.user-status.ACTIVE{background:#e8f8ef;color:#07884b}.user-status.BLOCKED{background:#fff0ef;color:#c43b30}.admin-help{margin-top:12px;padding:12px;border:1px solid #dceaf4;border-radius:9px;background:#f8fcff;color:#587796;font-size:11px;line-height:1.5}.admin-help strong{color:#143f71}.cloud-info-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:12px}.cloud-info-grid>div{padding:10px;border:1px solid #dfebf4;border-radius:8px;background:#fbfdff}.cloud-info-grid span{display:block;color:#7290aa;font-size:10px}.cloud-info-grid strong{display:block;margin-top:4px;color:#1b527f}.admin-only.hidden{display:none!important}
@media(max-width:780px){.auth-overlay{padding:12px}.auth-card{padding:22px 20px}.admin-stats{grid-template-columns:1fr}.current-user{text-align:left;min-width:0}.top-actions{align-items:center}}


/* v2.0.3: login único e app oculto até autenticação */
body.auth-mode .app-shell{display:none!important}
.auth-card.auth-single{width:min(400px,calc(100vw - 32px));padding:34px 28px 32px;text-align:center}
.auth-hero{display:grid;justify-items:center;gap:7px;margin-bottom:26px}
.auth-hero-logo{width:86px;height:86px;border-radius:50%;background:#f5f9ff;display:grid;place-items:center;box-shadow:0 10px 30px rgba(6,67,139,.12);border:1px solid #e1edf7}
.auth-hero-logo svg{width:58px;height:58px}
.auth-hero strong{display:block;color:#0b2f69;font-size:28px;line-height:1.04;letter-spacing:-.02em}
.auth-hero span{display:block;color:#5d7fa6;font-size:14px;font-weight:700;letter-spacing:.02em}
.auth-single h1{margin:0 0 8px;color:#0b326d;font-size:24px;letter-spacing:-.02em}
.auth-single .auth-lead{margin:0 0 20px;color:#6684a4;font-size:12.5px;line-height:1.5}
.auth-single .auth-form{text-align:left}

/* ===== JusMaps v2.4.0: Banco de Dados unificado ===== */
.db-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:10px;margin:16px 0}
.db-summary-grid article{border:1px solid #dce9f4;background:linear-gradient(180deg,#fff,#f8fcff);border-radius:10px;padding:13px;min-height:96px;box-shadow:0 4px 15px rgba(20,92,150,.04)}
.db-summary-grid span{display:block;color:#6889aa;font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.02em}
.db-summary-grid strong{display:block;color:#0c4f91;font-size:23px;margin:8px 0 5px;white-space:nowrap}
.db-summary-grid small{display:block;color:#7993ab;font-size:10px;line-height:1.35}
.db-subsection{margin-top:18px;padding-top:18px;border-top:1px solid #e2edf5}.db-subsection:first-of-type{margin-top:8px}
.db-subsection-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}.db-subsection-head h3,.db-maintenance h3{margin:0;color:#123f73;font-size:15px}.db-subsection-head p,.db-maintenance p{margin:4px 0 0;color:#6886a5;font-size:11px;line-height:1.45}
.db-table-wrap{overflow:auto;border:1px solid #dce9f3;border-radius:10px;background:#fff}
.db-status-table,.db-history-table{width:100%;border-collapse:collapse;min-width:1100px;font-size:10.5px}
.db-status-table th,.db-history-table th{background:#eff8ff;color:#0756aa;text-transform:uppercase;font-size:9px;padding:9px 8px;text-align:left;white-space:nowrap}
.db-status-table td,.db-history-table td{border-top:1px solid #edf3f8;padding:9px 8px;vertical-align:top;color:#355b7d}
.db-status-table tr:hover td,.db-history-table tr:hover td{background:#fbfdff}
.db-status-table td:first-child{min-width:160px}.db-status-table td:nth-child(2),.db-status-table td:nth-child(3){min-width:170px}.db-history-table td:first-child{min-width:240px}.db-history-table td:nth-child(3){min-width:220px;max-width:360px}
.db-status{display:inline-flex;align-items:center;border-radius:999px;padding:4px 8px;font-size:8.8px;font-weight:900;white-space:nowrap;border:1px solid transparent}.db-status.ok{background:#e9f8ef;color:#07834a;border-color:#d6eddf}.db-status.processing{background:#edf6ff;color:#1267b7;border-color:#d7e9fa}.db-status.received{background:#f1f5fb;color:#536f91;border-color:#dfe8f2}.db-status.error{background:#fff0ef;color:#c33b31;border-color:#f2d2cf}.db-status.partial{background:#fff6e7;color:#b96d00;border-color:#f1e0bf}.db-status.neutral{background:#f3f6f9;color:#71869a;border-color:#e3e9ef}
.db-status-sub{display:block;margin-top:4px;max-width:190px;color:#758da4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.db-error-text{display:block;margin-top:5px;color:#b43b35;max-width:320px;white-space:normal;line-height:1.35}
.db-row-action{border:1px solid #efd0ce;background:#fff4f3;color:#bd342d;border-radius:6px;padding:6px 8px;font-size:9px;font-weight:800;cursor:pointer;white-space:nowrap}.db-row-action:hover{background:#ffebe9}
.db-maintenance{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.db-maintenance .warning-text{flex-basis:100%}
.admin-action.delete{background:#fff0ef;border-color:#f0cbc8;color:#b72d27}
@media(max-width:1350px){.db-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:780px){.db-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.db-maintenance{display:block}.db-maintenance .bank-actions{margin-top:12px}}
.queue-warn{color:#c57900!important}
.import-control-bar{margin-top:10px;border:1px solid #dceaf5;background:#f8fbfe;border-radius:9px;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:12px}.import-control-state{display:flex;flex-direction:column;gap:2px}.import-control-state span{font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:#7590aa}.import-control-state strong{font-size:12px;color:#174b7f}.import-control-actions{display:flex;gap:8px;flex-wrap:wrap}.import-control-actions .btn{min-width:92px}.queue-item .queue-warn{color:#c57900!important}@media(max-width:780px){.import-control-bar{align-items:flex-start;flex-direction:column}.import-control-actions{width:100%}.import-control-actions .btn{flex:1}}


/* ===== JusMaps v2.5.0: Configurações e Suporte ===== */
.auth-support{display:flex;align-items:center;justify-content:center;gap:7px;text-decoration:none;box-sizing:border-box}
.auth-support svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.settings-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.8fr);gap:14px;align-items:stretch}
.settings-card{padding:18px;margin-bottom:0}.settings-card-head{display:flex;align-items:center;gap:11px;margin-bottom:17px}.settings-card-head h2,.summary-title h2,.support-contact-copy h2,.support-section-head h2{margin:0;color:#0b326d;font-size:18px;letter-spacing:-.01em}.settings-card-head p,.summary-title p,.support-contact-copy p,.support-section-head p{margin:3px 0 0;color:#5e86ad;font-size:11px;line-height:1.45}
.settings-icon{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#eaf5ff;color:#0877df;flex:0 0 auto}.settings-icon.lock{border-radius:10px}.settings-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.settings-form{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px}.settings-form .span-all{grid-column:1/-1}.password-form{display:grid;gap:12px}.settings-note{background:#f1f8ff;border:1px solid #e0edf8;border-radius:8px;padding:11px 12px;color:#4d78a3;font-size:11px}.settings-actions{display:flex;justify-content:flex-end}.settings-actions .btn{min-width:180px}
.account-summary-panel{padding:18px;margin-top:14px}.account-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:15px}.account-summary-grid article{border:1px solid #dce9f4;background:linear-gradient(180deg,#fff,#f7fbff);border-radius:10px;padding:14px;min-height:92px}.account-summary-grid span{display:block;color:#7390ab;font-size:10px}.account-summary-grid strong{display:block;color:#123f73;font-size:16px;margin:8px 0 5px}.account-summary-grid small{color:#6d89a5;font-size:9.5px;line-height:1.35}
.support-contact-panel{padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:18px;background:linear-gradient(90deg,#fff,#f3faff)}.support-contact-copy{display:flex;align-items:center;gap:15px}.support-contact-copy strong{display:block;color:#143f73;font-size:13px;margin-top:2px}.support-whatsapp-mark{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#eaf8f1;color:#08a85f;flex:0 0 auto}.support-whatsapp-mark svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.support-whatsapp-button{height:40px;min-width:185px;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none}.support-whatsapp-button svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2}
.support-content-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(330px,1fr);gap:14px}.support-library-card{padding:18px}.support-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.support-videos-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.support-video-card{border:1px solid #deebf5;border-radius:10px;overflow:hidden;background:#fff;position:relative}.support-video-frame{aspect-ratio:16/9;background:#062e58}.support-video-frame iframe{width:100%;height:100%;border:0;display:block}.support-video-copy{padding:10px 11px}.support-video-copy strong{display:block;color:#0d4a85;font-size:12px}.support-video-copy p{margin:4px 0 0;color:#6583a0;font-size:10.5px;line-height:1.4}.support-delete{position:absolute;top:7px;right:7px;z-index:2;border:0;border-radius:7px;background:rgba(173,32,32,.92);color:#fff;font-size:10px;font-weight:800;padding:5px 7px;cursor:pointer}
.support-files-list{display:grid;gap:8px}.support-file-row{border:1px solid #deebf5;border-radius:9px;padding:10px 11px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;background:#fff}.support-file-icon{width:34px;height:34px;border-radius:7px;display:grid;place-items:center;font-size:9px;font-weight:900}.support-file-icon.pdf{background:#fff0ef;color:#d63a34}.support-file-icon.kml{background:#eaf8ef;color:#0b9956}.support-file-copy strong{display:block;color:#123f73;font-size:11px}.support-file-copy small{display:block;color:#748ea7;margin-top:3px;font-size:9.5px}.support-file-actions{display:flex;align-items:center;gap:6px}.support-download{border:1px solid #cfe2f2;background:#f7fbff;color:#0b62bb;border-radius:6px;padding:6px 9px;font-size:9.5px;font-weight:800;text-decoration:none}.support-file-delete{border:1px solid #efd0ce;background:#fff3f2;color:#bd342d;border-radius:6px;padding:6px 8px;font-size:9px;font-weight:800;cursor:pointer}.support-empty{grid-column:1/-1;border:1px dashed #cfe0ed;border-radius:9px;padding:22px;text-align:center;color:#7390aa;font-size:11px;background:#fbfdff}
.support-admin-panel{padding:18px}.support-admin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.support-admin-box{border:1px solid #dce9f4;border-radius:10px;padding:13px;background:#fbfdff;display:grid;gap:10px;align-content:start}.support-admin-box h3{margin:0;color:#123f73;font-size:13px}.support-admin-box input[type=file]{height:auto;min-height:37px;padding:8px;background:#fff}.support-admin-box .btn{justify-self:end}.support-file-meta{color:#7890a7;font-size:9px;white-space:nowrap}
@media(max-width:1250px){.settings-grid{grid-template-columns:1fr}.support-content-grid{grid-template-columns:1fr}.support-videos-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.support-admin-grid{grid-template-columns:1fr 1fr}.account-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:780px){.settings-form{grid-template-columns:1fr}.settings-form .span-all{grid-column:auto}.account-summary-grid,.support-videos-grid,.support-admin-grid{grid-template-columns:1fr}.support-contact-panel{align-items:flex-start;flex-direction:column}.support-whatsapp-button{width:100%}.support-file-row{grid-template-columns:auto minmax(0,1fr)}.support-file-actions{grid-column:1/-1;justify-content:flex-end}.settings-actions .btn{width:100%}}
