:root{
  --navy:#0A1F2E;--navy-2:#112840;--navy-3:#163550;
  --teal:#0BC4D4;--teal-dark:#089AAA;--teal-dim:rgba(11,196,212,.12);
  --gold:#E8A020;--gold-dim:rgba(232,160,32,.12);
  --text:#EDF3F8;--text-muted:#9ABBC8;--text-dim:#7A9AB0;
  --border:rgba(255,255,255,.08);--border-light:rgba(255,255,255,.15);
  --surface:rgba(255,255,255,.04);--surface-hover:rgba(255,255,255,.09);
  --success:#1DB87A;--warning:#E8A020;--danger:#E05050;
  --radius:10px;--sw:244px;
}
*{box-sizing:border-box;margin:0;padding:0;}
body{font-family:'Barlow',sans-serif;background:var(--navy);color:var(--text);min-height:100vh;display:flex;overflow-x:hidden;}
.sb{width:var(--sw);background:var(--navy-2);border-right:1px solid var(--border);display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;z-index:100;overflow-y:auto;}
.sb{width:var(--sw);background:var(--navy-2);border-right:1px solid var(--border);display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;z-index:100;overflow-y:auto;overflow-x:hidden;transition:width .2s ease;}
.sb.collapsed{width:44px;}
.sb.collapsed .slogo-t,.sb.collapsed .snav .ni span,.sb.collapsed .snav .ni .nb,.sb.collapsed .slbl,.sb.collapsed .uname,.sb.collapsed .urole,.sb.collapsed .district-btn span,.sb.collapsed .district-btn .district-caret,.sb.collapsed .district-sub{display:none;}
.sb.collapsed .ni{justify-content:center;padding:8px 0;}
.sb.collapsed .ni svg{width:16px;height:16px;opacity:.7;}
.sb.collapsed .slogo{justify-content:center;padding:12px 0;}
.sb.collapsed .sftr{padding:8px 0;display:flex;justify-content:center;}
.sb.collapsed .ucard{justify-content:center;}
.sb.collapsed .district-btn{justify-content:center;padding:8px 0;border-left:none;}
.sb-collapse-btn{position:absolute;top:16px;right:-13px;width:26px;height:26px;border-radius:50%;background:var(--teal);border:2px solid var(--navy-2);display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:101;transition:all .2s ease;box-shadow:0 0 0 2px rgba(11,196,212,.3);}
.sb-collapse-btn:hover{background:#0ad4e6;transform:scale(1.1);}
.sb-collapse-btn svg{width:11px;height:11px;color:var(--navy);transition:transform .2s ease;}
.sb.collapsed .sb-collapse-btn svg{transform:rotate(180deg);}
.sb.collapsed .main-adj{margin-left:44px;}
.slogo{padding:15px 13px 12px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:8px;position:relative;}
.slogo-icon{width:30px;height:30px;background:var(--teal-dim);border:1px solid var(--teal-dark);border-radius:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.slogo-t{font-family:'Barlow Condensed',sans-serif;font-size:11px;font-weight:700;color:var(--teal);letter-spacing:.08em;text-transform:uppercase;line-height:1.2;}
.slogo-t span{display:block;font-size:10px;color:var(--text-dim);font-weight:400;}
.snav{flex:1;padding:5px 0;display:flex;flex-direction:column;}
.slbl{font-size:11px;font-weight:600;color:var(--text-dim);letter-spacing:.11em;text-transform:uppercase;padding:10px 13px 3px;}
.ni{display:flex;align-items:center;gap:7px;padding:8px 13px;font-size:13px;font-weight:500;color:var(--text-muted);cursor:pointer;transition:all .15s;position:relative;border:none;background:none;width:100%;text-align:left;}
.ni:hover{color:var(--text);background:var(--surface-hover);}
.ni.active{color:var(--teal);background:var(--teal-dim);}
.ni.active::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--teal);border-radius:0 2px 2px 0;}
.ni svg{width:13px;height:13px;flex-shrink:0;opacity:.7;}
.ni.active svg,.ni:hover svg{opacity:1;}
.nb{margin-left:auto;font-size:9px;font-weight:700;padding:1px 5px;border-radius:8px;min-width:15px;text-align:center;}
.nb-t{background:var(--teal);color:var(--navy);}
.nb-w{background:var(--warning);color:var(--navy);}
.nb-d{background:var(--danger);color:#fff;}
.district-btn{display:flex;align-items:center;gap:7px;padding:8px 13px;font-size:13px;font-weight:600;color:var(--teal);cursor:pointer;border:none;background:rgba(11,196,212,.07);border-left:3px solid var(--teal);width:100%;text-align:left;transition:all .15s;}
.district-btn:hover{background:rgba(11,196,212,.13);}
.district-btn svg{width:13px;height:13px;flex-shrink:0;opacity:.9;}
.district-caret{margin-left:auto;font-size:9px;color:var(--text-dim);transition:transform .2s;display:inline-block;}
.district-caret.open{transform:rotate(180deg);}
.district-sub{border-left:2px solid rgba(11,196,212,.18);margin-left:0;background:var(--navy-3);}
.ni-district{display:flex;align-items:center;gap:7px;padding:7px 13px 7px 22px;font-size:12px;font-weight:500;color:var(--text-muted);cursor:pointer;border:none;background:none;width:100%;text-align:left;transition:all .15s;position:relative;}
.ni-district:hover{color:var(--text);background:var(--surface-hover);}
.ni-district.active{color:var(--success);background:rgba(29,184,122,.1);}
.ni-district.active::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--success);border-radius:0 2px 2px 0;}
.ni-district svg{width:12px;height:12px;flex-shrink:0;opacity:.65;}
.ni-district.active svg,.ni-district:hover svg{opacity:1;}
.ni-district.archive-link{color:#BA7517;}
.ni-district.archive-link:hover{color:var(--gold);background:rgba(232,160,32,.08);}
.sub-sep{height:1px;background:var(--border);margin:3px 10px;}
.nav-spacer{flex:1;}
/* ── VIOLATIONS TAB ─────────────────────────────────────────── */
.vkpi-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px;height:52px;}
.vkpi{background:var(--navy-2);border:1px solid var(--border-light);border-radius:var(--radius);padding:5px 12px;display:flex;flex-direction:column;justify-content:center;}
.vkpi-day{font-size:9px;color:var(--text-dim);margin-bottom:1px;line-height:1.1;}
.vkpi-lbl{font-size:10px;color:var(--text-muted);margin-bottom:2px;line-height:1.1;}
.vkpi-val{font-size:16px;font-weight:700;color:var(--teal);line-height:1;}
.v-top-iframes{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:6px;max-width:calc(100vw - 84px);box-sizing:border-box;padding-right:4px;}
/* Auto Watcher only: three-up iframes (SWFWMD | Signal PDF | PA). Scoped to .aw-thirds so other pages keep 2-up. */
/* Shrink the middle (Signal PDF) pane and widen SWFWMD map + PA so SWFWMD parcel/section numbers stay visible (Jul-13 QA). */
.v-top-iframes.aw-thirds{grid-template-columns:1.2fr 0.85fr 1.2fr;}
/* Jul-26 Auto Watcher redesign: two-up Merlin split for the top strip (map | Merlin panel). New class, .aw-thirds markup/rule above are untouched for any view still using it. */
.v-top-iframes.aw-merlin-split{grid-template-columns:60fr 40fr;}
/* Jul-26 Auto Watcher redesign: nav bar + form stack in the left rail; Sunbiz spans both rows to the nav bar's top edge. Scoped to #rpanel-autowatch so Manual Watcher / Violations / Transfers keep the shared ~50/50 split. */
#rpanel-autowatch .v-lower{grid-template-columns:60fr 40fr;grid-template-rows:auto 1fr;}
.vif-panel{background:#fff;border:1px solid #d0e0db;border-radius:6px;overflow:hidden;display:flex;flex-direction:column;}
.vif-hdr{padding:4px 9px;display:flex;justify-content:space-between;align-items:center;background:#f0f7f5;border-bottom:1px solid #d8ede8;}
.vif-lbl{font-size:8px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#0F6E56;}
.vif-opentab{font-size:7px;color:#9dbdb6;text-decoration:none;}
.vif-urlbar{padding:2px 8px;display:flex;align-items:center;gap:4px;background:#fafcfb;border-bottom:1px solid #eee;}
.vif-dot{width:4px;height:4px;border-radius:50%;flex-shrink:0;}
.vif-url{font-size:7px;font-family:'IBM Plex Mono',monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;color:#7a9e96;}
.vif-body{height:615px;min-height:615px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px;background:#f7faf9;font-size:11px;color:#aaa;}
.viol-nav{background:#f0f7f5;border:1px solid #d0e0db;border-radius:4px;padding:3px 8px;display:flex;align-items:center;gap:5px;margin-bottom:6px;flex-wrap:wrap;max-width:calc((100vw - 84px - 6px - 4px) / 2);box-sizing:border-box;}
/* Jul-26 Auto Watcher redesign: rail-width nav bar that wraps instead of overflowing once the left column narrows to 44%. Added alongside .viol-nav, not replacing it. */
.aw-nav-rail{flex-wrap:wrap;row-gap:4px;height:auto;min-height:0;align-content:flex-start;padding-top:6px;padding-bottom:6px;margin-bottom:0;}
.vnav-lbl{font-size:8px;font-weight:700;text-transform:uppercase;color:#0F6E56;letter-spacing:.06em;}
.vnav-ct{font-size:10px;color:#1a1a1a;}
.vndiv{width:1px;height:14px;background:#d0e0db;flex-shrink:0;margin:0 2px;}
/* Dividers read as noise once the rail-width nav wraps to multiple rows. */
.aw-nav-rail .vndiv{display:none;}
.vnb{border:none;border-radius:2px;font-size:8px;font-weight:700;cursor:pointer;white-space:nowrap;height:20px;padding:0 7px;font-family:'Barlow',sans-serif;}
.vnb.vnav{background:#1D9E75;color:#fff;}
.vnb.vnav:disabled{opacity:.4;cursor:default;}
.vnb.vfilt{background:#e8f5f0;color:#0F6E56;border:1px solid #b0d9cc;}
.vnb.vfilt.act{background:#0F6E56;color:#fff;}
.vnav-pos{font-size:10px;font-weight:600;color:#2a4a3e;}
.v-lower{display:grid;grid-template-columns:calc(50% + 90px) calc(50% - 90px);gap:6px;margin-bottom:10px;max-width:calc(100vw - 84px);box-sizing:border-box;padding-right:4px;}
.v-ver-form{background:#fff;border:1px solid #d0e0db;border-radius:7px;overflow:hidden;min-width:0;}
.vgrp-hdr{background:#f7faf9;border-bottom:1px solid #e0eeea;padding:6px 12px;display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.vgrp-num{background:#0F6E56;color:#fff;border-radius:3px;padding:1px 8px;font-size:9px;font-weight:700;}
.vgrp-name{font-size:11px;font-weight:700;color:#1a2e29;}
.vgrp-county{font-size:10px;color:#1a1a1a;}
.vbtn-1v{background:#378ADD;color:#fff;border:none;border-radius:3px;padding:2px 10px;font-size:9px;font-weight:700;cursor:pointer;font-family:'Barlow',sans-serif;}
.vbtn-2v{background:#0F6E56;color:#fff;border:none;border-radius:3px;padding:2px 10px;font-size:9px;font-weight:700;cursor:pointer;font-family:'Barlow',sans-serif;}
.vform-body{padding:8px 10px 10px;}
.vsec-badge{font-size:7.5px;font-weight:700;text-transform:uppercase;border-radius:3px;display:inline-block;padding:2px 7px;margin-bottom:5px;}
.vsec-badge.green{background:#e8f5f0;color:#0F6E56;border:1px solid #b0d9cc;}
.vsec-badge.blue{background:#eaf3fb;color:#185FA5;border:1px solid #7B7BFF;}
.vsec-badge.purple{background:#f0eeff;color:#3C3489;border:1px solid #AFA9EC;}
.vsec-badge.amber{background:#fef3e2;color:#854F0B;border:1px solid #EF9F27;}
.vsec-badge.cyan{background:#e5f7f9;color:#0B7C8A;border:1px solid #7fd4de;}
.vsec-fields{display:flex;align-items:flex-end;gap:5px;flex-wrap:wrap;margin-bottom:7px;}
.vsec-div{border-top:1px solid #e8f0ee;margin:5px 0;}
.vfld{display:flex;flex-direction:column;gap:1px;}
.vflbl{font-size:8px;text-transform:uppercase;letter-spacing:.08em;color:#1a1a1a;font-weight:600;}
.vfinp{border:1px solid #c8ddd8;border-radius:3px;padding:1px 5px;font-size:9px;color:#1a2e29;background:#fff;height:22px;font-family:'Barlow',sans-serif;}
.vfinp:focus{outline:none;border-color:#1D9E75;}
/* Jul-26 Auto Watcher redesign: kv field rows (label above value) for the compact record card. Scoped to #rpanel-autowatch. */
#rpanel-autowatch .aw-kv-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px 14px;padding:6px 0 2px;}
#rpanel-autowatch .aw-kv{min-width:0;}
#rpanel-autowatch .aw-kv.aw-kv-wide{grid-column:1 / -1;}
#rpanel-autowatch .aw-kv .vflbl{display:block;margin-bottom:1px;}
/* Editable-but-quiet cells: read as plain text until hover/focus reveals the input underneath. */
#rpanel-autowatch .aw-cell{width:100%;min-width:0;font-size:12px;font-weight:600;color:#1a2e29;background:transparent;border:1px solid transparent;border-radius:3px;padding:1px 3px;}
#rpanel-autowatch .aw-cell:hover{border-color:#d8ede8;background:#fbfdfc;}
#rpanel-autowatch .aw-cell:focus{border-color:#378ADD;background:#fff;outline:none;}
/* Ownership match strip: three-source side-by-side comparison, with a full-width flag row when values disagree. */
#rpanel-autowatch .aw-tri{display:grid;grid-template-columns:1fr 1.12fr 1fr;gap:0;margin:2px 0 4px;}
#rpanel-autowatch .aw-tri-col{min-width:0;padding:8px 12px 10px;}
#rpanel-autowatch .aw-tri-col+.aw-tri-col{border-left:1px solid #e8f0ee;}
#rpanel-autowatch .aw-tri-src{display:flex;align-items:center;gap:6px;font-size:8.5px;font-weight:800;letter-spacing:.09em;margin-bottom:2px;}
#rpanel-autowatch .aw-tri-dot{width:7px;height:7px;border-radius:50%;flex:0 0 auto;}
#rpanel-autowatch .aw-tri-col.swf .aw-tri-src{color:#0F6E56;} #rpanel-autowatch .aw-tri-col.swf .aw-tri-dot{background:#0F6E56;}
#rpanel-autowatch .aw-tri-col.mer .aw-tri-src{color:#185FA5;} #rpanel-autowatch .aw-tri-col.mer .aw-tri-dot{background:#185FA5;}
#rpanel-autowatch .aw-tri-col.sun .aw-tri-src{color:#7F77DD;} #rpanel-autowatch .aw-tri-col.sun .aw-tri-dot{background:#7F77DD;}
#rpanel-autowatch .aw-tri-owner{font-size:14px;font-weight:800;line-height:1.2;min-height:34px;display:flex;align-items:center;overflow-wrap:anywhere;color:#1a2e29;}
#rpanel-autowatch .aw-tri-chip{display:inline-block;font-size:8.5px;font-weight:800;letter-spacing:.04em;border-radius:3px;padding:2px 7px;margin:2px 0 4px;}
#rpanel-autowatch .aw-tri-chip.base{background:#f0f7f5;color:#7a9e96;border:.5px solid #d0e0db;}
#rpanel-autowatch .aw-tri-chip.match{background:#E6F7EF;color:#0F6E56;border:.5px solid #0F6E56;}
#rpanel-autowatch .aw-tri-chip.flag{background:#FAEEDA;color:#633806;border:.5px solid #BA7517;}
#rpanel-autowatch .aw-tri-chip.mismatch{background:#FAECE7;color:#993C1D;border:.5px solid #D85A30;}
/* Notes + Merlin write-back status line. */
#rpanel-autowatch .aw-note{font-size:9px;color:#7a9e96;padding:4px 0 0;}
#rpanel-autowatch #aw-merlin-wb-status{margin-top:5px;padding:4px 8px;background:#E6F7EF;border:0.5px solid #1D9E75;border-radius:3px;color:#0F6E56;font-size:10px;font-weight:600;}
.vfcopy{background:#5DCAA5;color:#085041;border:none;border-radius:3px;padding:0 7px;font-size:9px;font-weight:700;cursor:pointer;height:22px;font-family:'Barlow',sans-serif;}
.vfbtn-docs{background:#EF9F27;color:#411802;border:none;border-radius:3px;padding:0 9px;font-size:9px;font-weight:700;cursor:pointer;height:22px;font-family:'Barlow',sans-serif;}
.vfbtn-del{background:#E24B4A;color:#fff;border:none;border-radius:3px;padding:0 7px;font-size:9px;font-weight:700;cursor:pointer;height:22px;font-family:'Barlow',sans-serif;}
.vfbtn-add{background:#1D9E75;color:#fff;border:none;border-radius:3px;padding:0 9px;font-size:14px;font-weight:700;cursor:pointer;height:22px;line-height:1;font-family:'Barlow',sans-serif;}
.vfbtn-upload{background:#111;color:#ccc;border:1px solid #444;border-radius:10px;padding:0 9px;font-size:9px;font-weight:700;cursor:pointer;height:22px;font-family:'Barlow',sans-serif;letter-spacing:.03em;}
.vfbtn-upload:hover{background:#222;color:#fff;}
.vupload-list{margin-top:6px;display:flex;flex-direction:column;gap:3px;}
.vupload-item{display:flex;align-items:center;gap:5px;background:#f0f4f8;border:1px solid #d0e0db;border-radius:3px;padding:2px 6px;font-size:9px;color:#1a1a1a;}
.vupload-item a{color:#185FA5;text-decoration:none;font-weight:600;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.vupload-item .vup-del{background:none;border:none;color:#E24B4A;cursor:pointer;font-size:10px;padding:0 2px;line-height:1;}
.vupload-spinner{font-size:9px;color:#7a9e96;font-style:italic;}
.vfbtn-lookup{background:#7F77DD;color:#fff;border:none;border-radius:3px;padding:0 7px;font-size:9px;font-weight:700;cursor:pointer;height:22px;font-family:'Barlow',sans-serif;white-space:nowrap;}
.vbadge{font-size:8px;padding:1px 6px;border-radius:8px;font-weight:700;white-space:nowrap;display:inline-block;}
.vbadge.condition{background:#fde8e8;color:#993C1D;}
.vbadge.consent{background:#ede8ff;color:#3C3489;}
.vbadge.asbuilt{background:#e8f5ea;color:#1B5E3B;}
.vbadge.complaint{background:#fdeaea;color:#7B0000;}
.vbadge.compliance{background:#fff8e1;color:#7B5800;}
.vbadge.unauthorized{background:#fce8e6;color:#B71C1C;}
.vbadge.expired{background:#fff3e0;color:#BF360C;}
.vbadge.warning{background:#fff3e0;color:#E65100;}
.vbadge.legal{background:#fce4ec;color:#880E4F;}
#v-viol-type.vt-condition{background:#fde8e8;color:#993C1D;border-color:#f5c0b0;font-weight:700;}
#v-viol-type.vt-consent{background:#ede8ff;color:#3C3489;border-color:#c8bff5;font-weight:700;}
#v-viol-type.vt-asbuilt{background:#e8f5ea;color:#1B5E3B;border-color:#b0d9bc;font-weight:700;}
#v-viol-type.vt-complaint{background:#fdeaea;color:#7B0000;border-color:#f5b8b8;font-weight:700;}
#v-viol-type.vt-compliance{background:#fff8e1;color:#7B5800;border-color:#ffe082;font-weight:700;}
#v-viol-type.vt-unauthorized{background:#fce8e6;color:#B71C1C;border-color:#ef9a9a;font-weight:700;}
#v-viol-type.vt-expired{background:#fff3e0;color:#BF360C;border-color:#ffcc80;font-weight:700;}
#v-viol-type.vt-warning{background:#fff3e0;color:#E65100;border-color:#ffcc80;font-weight:700;}
#v-viol-type.vt-legal{background:#fce4ec;color:#880E4F;border-color:#f48fb1;font-weight:700;}
.venv-section{margin-top:10px;border-top:1px solid #e8f0ee;padding-top:8px;}
/* Jul-26 Auto Watcher redesign: envelopes now render outside the form, directly under #rpanel-autowatch. The base rule above assumes it's nested in .v-ver-form, so give it its own full-width card here. */
#rpanel-autowatch > .venv-section{background:#fff;border:1px solid #d0e0db;border-radius:7px;padding:8px 10px 10px;margin-bottom:10px;}
.venv-wrap{border:1px solid #d0e0db;border-radius:4px;overflow:hidden;margin-top:6px;}
.venv-hdr,.venv-row{display:grid;grid-template-columns:28px 60px 110px 150px 120px 70px 170px 210px 150px 210px 160px 1fr;}
/* Auto-Watch only: 13 tracks (adds Lead Type after Lead #) + horizontal scroll.
   min-width = the fixed tracks (1398) + the Site Address minimum (160) so every
   row/header resolves identically whether the pane is narrower or wider. The
   shared 12-track rule above stays untouched for Violations / Transfers. */
#aw-env-section .venv-hdr,#aw-env-section .venv-row{grid-template-columns:28px 60px 115px 80px 88px 82px 50px 130px 210px 150px 210px 160px minmax(400px,1fr);min-width:1763px;}
#aw-env-section .venv-wrap{overflow-x:auto;}
#aw-env-section .venv-wrap::-webkit-scrollbar{height:9px;}
#aw-env-section .venv-wrap::-webkit-scrollbar-track{background:#eef4f2;}
#aw-env-section .venv-wrap::-webkit-scrollbar-thumb{background:#9ec7bc;border-radius:5px;}
.venv-hdr{background:#1D9E75;border-bottom:none;}
.venv-hdr div{padding:3px 5px;font-size:8.5px;font-weight:700;text-transform:uppercase;color:#fff;border-right:1px solid rgba(255,255,255,0.15);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.venv-row{background:#ffff99;border-bottom:0.5px solid #e6e600;}
.venv-row:last-child{border-bottom:none;}
.venv-row:nth-child(even){background:#ffff99;}
.venv-row,.venv-row *{color:#1a2e29 !important;}
.venv-row div{padding:3px 5px;font-size:9px;border-right:1px solid #e6e600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;align-items:center;}
.venv-del{background:#E24B4A;color:#fff;border:none;border-radius:3px;width:18px;height:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;flex-shrink:0;}
.vmail-tag{font-size:7.5px;border-radius:2px;padding:1px 4px;font-weight:700;white-space:nowrap;}
.vmail-tag.owner{background:#e8f5f0;color:#0F6E56;border:1px solid #b0d9cc;}
.vmail-tag.site{background:#eaf3fb;color:#185FA5;border:1px solid #7B7BFF;}
.vmail-tag.sunbiz{background:#f0eeff;color:#3C3489;border:1px solid #AFA9EC;}
.vmail-tag.officer{background:#fef3e2;color:#854F0B;border:1px solid #EF9F27;}
.v-sunbiz-panel{background:#fff;border:1px solid #c8c2f0;border-radius:6px;overflow:hidden;display:flex;flex-direction:column;min-width:0;}
.vsun-hdr{background:#f5f3ff;border-bottom:1px solid #d4cff5;padding:4px 10px;display:flex;align-items:center;justify-content:space-between;}
.vsun-lbl{font-size:8px;font-weight:700;text-transform:uppercase;color:#3C3489;letter-spacing:.06em;}
.vsun-sub{font-size:7px;color:#7F77DD;}
.vsun-urlbar{background:#fdfcff;border-bottom:1px solid #eae8f8;padding:2px 10px;display:flex;align-items:center;gap:4px;}
.vsun-url{font-size:7px;font-family:'IBM Plex Mono',monospace;color:#9a90cc;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;}
.vsun-body{flex:1;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px;background:#faf9ff;font-size:11px;color:#aaa;min-height:200px;}
/* Jul-26 Auto Watcher redesign: Sunbiz panel now spans both v-lower rows. #aw-sunbiz-iframe carries an inline style min-height:200px (index.html), so overriding it needs !important. */
.aw-sunbiz-tall #aw-sunbiz-iframe{min-height:680px !important;}
.vlead-section{background:var(--navy-2);border:1px solid var(--border-light);border-radius:var(--radius);max-width:calc(100vw - 84px);box-sizing:border-box;overflow-x:auto;}#vlead-list{padding:10px;overflow-x:auto;}
.vlead-hdr{background:var(--navy-3);border-bottom:1px solid var(--border-light);padding:5px 10px;display:flex;align-items:center;gap:8px;}
.vlead-lbl{font-size:7px;font-weight:700;text-transform:uppercase;color:var(--teal);letter-spacing:.06em;}
.vlead-ct{font-size:10px;color:#1a1a1a;}
.vtriple{display:flex;gap:5px;margin-left:auto;align-items:center;}
.vsel-ct{font-size:10px;color:#1a1a1a;}
.vtbtn{font-size:9px;padding:2px 10px;border-radius:3px;cursor:pointer;font-weight:700;border:none;font-family:'Barlow',sans-serif;}
.vtbtn.archive{background:rgba(11,196,212,.15);color:var(--teal);}
.vtbtn.archdel{background:rgba(201,79,79,.15);color:#ff8080;}
.vtbtn.del{background:rgba(255,255,255,.06);color:var(--text-muted);}
.vlead-group{border:1px solid var(--border);margin:0 10px 10px;overflow:hidden;border-radius:4px;}
.vintel-cols{grid-template-columns:32px 70px 72px 60px 55px 74px 68px 110px 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;}
.vintel-unver-cols{display:grid;grid-template-columns:32px 50px 115px 90px 160px 1fr;}
.vintel-hdr,.vintel-row,.venvl-hdr,.venvl-row{display:grid;}
.vintel-hdr{background:#f0f7f5;border-bottom:2px solid #d0e0db;}
.vintel-hdr div{padding:4px 5px;font-size:7px;font-weight:700;text-transform:uppercase;color:#0F6E56;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.vintel-row.verified{background:#A8E6C8;border-bottom:2px solid #1D9E75;border-left:3px solid var(--teal);}
.vintel-row.unverified{background:var(--navy-3);border-bottom:1px solid var(--border);}
.vintel-row div{padding:4px 5px;font-size:8.5px;display:flex;align-items:center;overflow:hidden;white-space:nowrap;}
.vintel-row.verified div{color:#0a1f2e;}
.vintel-row.unverified div{color:var(--text-muted);}
.venvl-cols{grid-template-columns:70px 110px 80px 70px 1fr 1fr 1fr 1fr;}
.venvl-hdr div,.venvl-row div{padding:5px 6px;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.venvl-hdr div{font-weight:600;}
.venvl-hdr.yellow,.venvl-row.yellow{background:#FFFF00;}
.venvl-hdr.yellow div,.venvl-row.yellow div{color:#0a1f04;}
.venvl-hdr.indigo,.venvl-row.indigo{background:#ADADFF;}
.venvl-hdr.indigo div,.venvl-row.indigo div{color:#0a0a40;}
/* ── END VIOLATIONS TAB ─────────────────────────────────────── */
.sftr{padding:10px 13px;border-top:1px solid var(--border);}
.ucard{display:flex;align-items:center;gap:8px;}
.uav{width:27px;height:27px;border-radius:50%;background:var(--teal-dim);border:1px solid var(--teal-dark);display:flex;align-items:center;justify-content:center;font-family:'Barlow Condensed',sans-serif;font-size:10px;font-weight:700;color:var(--teal);flex-shrink:0;}
.uname{font-size:12px;font-weight:600;color:var(--text);}
.urole{font-size:11px;color:var(--text-dim);}
.main{margin-left:var(--sw);flex:1;display:flex;flex-direction:column;min-height:100vh;transition:margin-left .2s ease;}
.topbar{height:49px;background:var(--navy-2);border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 18px;gap:10px;position:sticky;top:0;z-index:50;}
.ttl{font-family:'Barlow Condensed',sans-serif;font-size:16px;font-weight:700;color:var(--text);flex:1;letter-spacing:.03em;}
.ttl span{color:var(--teal);}
.pc{flex:1;padding:18px;}
.page{display:none;}
.page.active{display:block;animation:fu .18s ease;}
#page-settings.active,#page-edu.active,#page-archive-insp.active,#page-violations.active,#page-archive.active{
  display:block;flex:1;padding:18px;overflow-y:auto;
}
/* ── ARCHIVE TAB ────────────────────────────────────────────── */
.arch-pill-nav{display:flex;gap:8px;padding:0 0 14px 0;border-bottom:1px solid var(--border-light);margin-bottom:16px;flex-wrap:wrap;}
.arch-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:20px;font-size:11px;font-weight:700;letter-spacing:.03em;cursor:pointer;border:1px solid transparent;transition:all .15s;font-family:'Barlow',sans-serif;white-space:nowrap;background:none;}
.arch-pill svg{width:12px;height:12px;flex-shrink:0;}
.arch-pill.insp{background:rgba(11,196,212,.12);color:var(--teal);border-color:rgba(11,196,212,.3);}
.arch-pill.insp.active,.arch-pill.insp:hover{background:var(--teal);color:var(--navy);border-color:var(--teal);}
.arch-pill.viol{background:rgba(224,80,80,.1);color:#E05050;border-color:rgba(224,80,80,.3);}
.arch-pill.viol.active,.arch-pill.viol:hover{background:#E05050;color:#fff;border-color:#E05050;}
.arch-pill.pt{background:rgba(232,160,32,.1);color:var(--gold);border-color:rgba(232,160,32,.3);}
.arch-pill.pt.active,.arch-pill.pt:hover{background:var(--gold);color:var(--navy);border-color:var(--gold);}
.arch-pill.newp{background:rgba(29,184,122,.1);color:var(--success);border-color:rgba(29,184,122,.3);}
.arch-pill.newp.active,.arch-pill.newp:hover{background:var(--success);color:#fff;border-color:var(--success);}
.arch-pill.aw{background:rgba(127,119,221,.12);color:#7F77DD;border-color:rgba(127,119,221,.3);}
.arch-pill.aw.active,.arch-pill.aw:hover{background:#7F77DD;color:#fff;border-color:#7F77DD;}
/* Archive district nav (2026-07-17): Level 1 district macro pills + Level 3 watcher micro pills.
   Level 2 product pills reuse .arch-pill above. */
.arch-dpill{display:inline-flex;align-items:center;padding:7px 18px;border-radius:20px;font-size:12px;font-weight:700;letter-spacing:.05em;cursor:pointer;border:1px solid rgba(11,196,212,.3);background:rgba(11,196,212,.08);color:var(--teal);transition:all .15s;font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;white-space:nowrap;}
.arch-dpill.active,.arch-dpill:hover{background:var(--teal);color:var(--navy);border-color:var(--teal);}
.arch-sub-nav{border-bottom:none;padding-bottom:4px;margin-bottom:10px;}
.arch-wpill{display:inline-flex;align-items:center;padding:4px 12px;border-radius:14px;font-size:10.5px;font-weight:700;cursor:pointer;border:1px solid rgba(122,154,176,.35);background:rgba(122,154,176,.08);color:#7A9AB0;transition:all .15s;font-family:'Barlow',sans-serif;white-space:nowrap;}
.arch-wpill.active,.arch-wpill:hover{background:#7A9AB0;color:var(--navy);border-color:#7A9AB0;}
.arch-panel{display:none;}
.mq-fpill{padding:2px 10px;border-radius:12px;font-size:10px;font-weight:700;cursor:pointer;border:1px solid rgba(255,255,255,.15);color:#9ABBC8;background:transparent;font-family:'Barlow',sans-serif;}
.mq-fpill.active{background:rgba(11,196,212,.15);color:#0BC4D4;border-color:rgba(11,196,212,.35);}
.arch-panel.active{display:block;animation:fu .18s ease;}
.arch-empty{padding:40px 20px;text-align:center;color:var(--text-dim);font-size:13px;}
.arch-empty svg{display:block;margin:0 auto 12px;opacity:.25;}
.verif-card{border:1px solid var(--border-light);border-radius:8px;margin-bottom:8px;overflow:hidden;}
.verif-card-hdr{display:flex;align-items:center;gap:10px;padding:9px 14px;background:var(--navy-3);cursor:pointer;transition:background .12s;}
.verif-card-hdr:hover{background:var(--surface-hover);}
.verif-num{background:#E05050;color:#fff;border-radius:3px;padding:2px 9px;font-size:10px;font-weight:700;white-space:nowrap;}
.verif-date{font-size:12px;font-weight:600;color:var(--text);}
.verif-date-time{font-size:10px;color:var(--text-dim);font-weight:400;}
.verif-meta{display:flex;gap:8px;margin-left:auto;align-items:center;}
.verif-chip{font-size:9px;font-weight:700;padding:2px 8px;border-radius:10px;white-space:nowrap;}
.verif-chip.leads{background:rgba(11,196,212,.15);color:var(--teal);border:1px solid rgba(11,196,212,.3);}
.verif-chip.envs{background:rgba(255,255,0,.12);color:#c8c800;border:1px solid rgba(200,200,0,.3);}
.verif-chip.docs{background:rgba(224,80,80,.12);color:#E05050;border:1px solid rgba(224,80,80,.25);}
.verif-caret{font-size:10px;color:var(--text-dim);margin-left:4px;transition:transform .2s;display:inline-block;}
.verif-caret.open{transform:rotate(180deg);}
.verif-body{display:none;border-top:1px solid var(--border);}
.verif-body.open{display:block;}
.venv-mini-hdr,.venv-mini-row{display:grid;grid-template-columns:32px 68px 88px 130px 1fr 1fr 80px;border-bottom:1px solid var(--border);}
.venv-mini-hdr div{padding:4px 6px;font-size:8px;font-weight:700;text-transform:uppercase;color:var(--teal);letter-spacing:.04em;background:var(--navy-3);}
.venv-mini-row.yellow{background:#FFFF00;}
.venv-mini-row.yellow div{color:#0a1f04;}
.venv-mini-row.indigo{background:#ADADFF;}
.venv-mini-row.indigo div{color:#0a0a40;}
.venv-mini-row div{padding:4px 6px;font-size:9px;}
/* ── END ARCHIVE TAB ────────────────────────────────────────── */
.main:has(#page-violations.active) .m360-hero,
.main:has(#page-transfers.active) .m360-hero,
.main:has(#page-newpermits.active) .m360-hero,
.main:has(#page-archive.active) .m360-hero{display:none!important;}
@keyframes fu{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}
@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
.btn{font-family:'Barlow',sans-serif;font-size:12px;font-weight:600;padding:7px 13px;border-radius:6px;border:none;cursor:pointer;transition:all .15s;display:inline-flex;align-items:center;gap:5px;white-space:nowrap;}
.btn-p{background:var(--teal);color:var(--navy);}
.btn-p:hover{background:var(--teal-dark);}
.btn-g{background:var(--surface);color:var(--text-muted);border:1px solid var(--border-light);}
.btn-g:hover{background:var(--surface-hover);color:var(--text);}
.btn-s{background:rgba(29,184,122,.15);color:var(--success);border:1px solid rgba(29,184,122,.3);}
.btn-gold{background:var(--gold);color:var(--navy);font-weight:700;}
.btn-gold:hover{background:#d4911a;}
.btn-lg{font-size:14px;padding:11px 22px;border-radius:8px;}
.card{background:var(--navy-2);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;margin-bottom:14px;}
#lead-groups-card{max-width:calc(100vw - 244px - 30px);overflow:hidden;}
#mq-body{max-width:calc(100vw - 244px - 62px);overflow-x:auto;padding:10px 14px;}
.sb.collapsed ~ .main #mq-body{max-width:calc(100vw - 44px - 62px);}
#pl-body{max-width:calc(100vw - 244px - 62px);overflow-x:auto;padding:10px 14px;}
.sb.collapsed ~ .main #pl-body{max-width:calc(100vw - 44px - 62px);}
#vmq-body{max-width:calc(100vw - 244px - 62px);overflow-x:auto;padding:10px 14px;}
.sb.collapsed ~ .main #vmq-body{max-width:calc(100vw - 44px - 62px);}
#vpl-body{max-width:calc(100vw - 244px - 62px);overflow-x:auto;padding:10px 14px;}
.sb.collapsed ~ .main #vpl-body{max-width:calc(100vw - 44px - 62px);}
/* Auto Watcher Master Queue + Past Verified Leads: group grids are
   min-width:max-content (wider than the viewport), so — like the Pool 1/2
   bodies above — they need a viewport-bounded max-width + overflow-x to scroll
   right instead of bleeding off-page with the download button unreachable. */
#awmq-body{max-width:calc(100vw - 244px - 62px);overflow-x:auto;padding:10px 14px;}
.sb.collapsed ~ .main #awmq-body{max-width:calc(100vw - 44px - 62px);}
#awpl-body{max-width:calc(100vw - 244px - 62px);overflow-x:auto;padding:10px 14px;}
.sb.collapsed ~ .main #awpl-body{max-width:calc(100vw - 44px - 62px);}
.sb.collapsed ~ .main #lead-groups-card{max-width:calc(100vw - 44px - 62px);}
.ch{display:flex;align-items:center;justify-content:space-between;padding:12px 15px;border-bottom:1px solid var(--border);gap:8px;flex-wrap:wrap;}
.ct{font-family:'Barlow Condensed',sans-serif;font-size:16px;font-weight:700;color:var(--text);letter-spacing:.02em;}
.ct span{color:var(--text-dim);font-size:12px;font-weight:400;}
.field{display:flex;flex-direction:column;gap:4px;}
.field label{font-size:11px;font-weight:600;color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;}
.inp,.sel{font-family:'Barlow',sans-serif;font-size:13px;background:var(--surface);border:1.5px solid var(--border-light);border-radius:6px;padding:8px 10px;color:var(--text);outline:none;transition:border-color .15s;width:100%;}
.inp:focus,.sel:focus{border-color:var(--teal);}
.inp::placeholder{color:var(--text-dim);}
.sel option{background:var(--navy-2);}
.fg2{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.fg3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;}
.fg4{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:10px;}
@media(max-width:700px){.fg2,.fg3,.fg4{grid-template-columns:1fr;}}
.search-panel{background:var(--navy-3);border:1px solid var(--border-light);border-radius:var(--radius);padding:16px;margin-bottom:14px;}
.spt{font-family:'Barlow Condensed',sans-serif;font-size:12px;font-weight:600;color:var(--teal);letter-spacing:.09em;text-transform:uppercase;margin-bottom:12px;display:flex;align-items:center;gap:6px;}
table{width:100%;border-collapse:collapse;}
th{font-size:10px;font-weight:600;color:var(--text-dim);letter-spacing:.06em;text-transform:uppercase;padding:8px 14px;text-align:left;border-bottom:1px solid var(--border);background:var(--surface);white-space:nowrap;}
td{font-size:11px;color:var(--text);padding:10px 14px;border-bottom:1px solid var(--border);vertical-align:middle;}
tr:last-child td{border-bottom:none;}
tr.cr{cursor:pointer;}
tr.cr:hover td{background:var(--surface);}
.tm{color:var(--text-muted);font-size:12px;}
.pill{display:inline-flex;align-items:center;gap:3px;font-size:10px;font-weight:600;padding:2px 7px;border-radius:20px;white-space:nowrap;}
.pill::before{content:'';width:4px;height:4px;border-radius:50%;}
.pa{background:rgba(11,196,212,.15);color:var(--teal);}.pa::before{background:var(--teal);}
.pp{background:rgba(232,160,32,.15);color:var(--gold);}.pp::before{background:var(--gold);}
.pc2{background:rgba(29,184,122,.15);color:var(--success);}.pc2::before{background:var(--success);}
.pf{background:rgba(224,80,80,.15);color:var(--danger);}.pf::before{background:var(--danger);}
.pd{background:rgba(255,255,255,.06);color:var(--text-dim);}.pd::before{background:var(--text-dim);}
.pb{background:rgba(55,138,221,.15);color:#378ADD;}.pb::before{background:#378ADD;}
.kc{background:var(--navy-2);border:1px solid var(--border);border-radius:var(--radius);padding:12px 14px;position:relative;overflow:hidden;}
.kc::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;}
.kc.t::before{background:var(--teal)}.kc.g::before{background:var(--success)}.kc.o::before{background:var(--gold)}.kc.r::before{background:var(--danger)}.kc.b::before{background:#378ADD;}
.kl{font-size:11px;font-weight:600;color:var(--text-dim);letter-spacing:.06em;text-transform:uppercase;margin-bottom:5px;}
.kv{font-family:'Barlow Condensed',sans-serif;font-size:26px;font-weight:700;color:var(--text);line-height:1;}
.ks{font-size:13px;color:var(--text-dim);margin-top:3px;}
.kg{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin-bottom:16px;}
.m360-hero{background:var(--navy-3);border-bottom:1px solid var(--border-light);padding:20px 22px 18px;margin-bottom:0;display:flex;align-items:center;justify-content:space-between;gap:12px;position:relative;overflow:hidden;}
.m360-hero::before{content:'360';position:absolute;right:-10px;top:-20px;font-family:'Barlow Condensed',sans-serif;font-size:130px;font-weight:700;color:rgba(11,196,212,.04);line-height:1;pointer-events:none;user-select:none;}
.m360-title{font-family:'Barlow Condensed',sans-serif;font-size:22px;font-weight:700;color:var(--text);}
.m360-title span{color:var(--teal);}
.m360-sub{font-size:12px;color:var(--text-muted);margin-top:3px;}
.mbadge{font-size:10px;font-weight:700;padding:3px 8px;border-radius:20px;letter-spacing:.04em;text-transform:uppercase;}
.mbadge-t{background:var(--teal-dim);color:var(--teal);border:1px solid rgba(11,196,212,.25);}
.mbadge-g{background:rgba(29,184,122,.12);color:var(--success);border:1px solid rgba(29,184,122,.25);}
.mbadge-o{background:var(--gold-dim);color:var(--gold);border:1px solid rgba(232,160,32,.25);}
.sec-div{font-size:11px;font-weight:700;color:var(--teal);letter-spacing:.11em;text-transform:uppercase;padding:6px 0 8px;margin-bottom:12px;display:flex;align-items:center;gap:8px;}
.sec-div::after{content:'';flex:1;height:1px;background:var(--border);}
.detail-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:8px;padding:12px 15px;}
.ic{background:var(--navy);border:1px solid var(--border);border-radius:7px;padding:9px 11px;}
.il{font-size:9px;font-weight:600;color:var(--text-dim);letter-spacing:.06em;text-transform:uppercase;margin-bottom:3px;}
.iv{font-size:12px;font-weight:600;color:var(--text);}
.iv.t{color:var(--teal)}.iv.s{color:var(--success)}.iv.w{color:var(--warning)}.iv.d{color:var(--danger)}.iv.b{color:#378ADD;}
/* ENTRY TOGGLE */
.entry-toggle{display:flex;border:1px solid var(--border-light);border-radius:8px;overflow:hidden;width:fit-content;margin-bottom:14px;}
.ebt{font-family:'Barlow',sans-serif;font-size:13px;font-weight:600;padding:9px 18px;border:none;cursor:pointer;transition:all .15s;display:flex;align-items:center;gap:6px;}
.ebt.on{background:var(--teal);color:var(--navy);}
.ebt.off{background:var(--surface);color:var(--text-muted);}
.ebt.off:hover{background:var(--surface-hover);color:var(--text);}
.ediv{width:1px;background:var(--border-light);}
/* RESULT TWO-PANEL */
.two-panel{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--border);}
@media(max-width:860px){.two-panel{grid-template-columns:1fr;}}
.rpanel{padding:14px 15px;min-width:0;}
.rpanel:first-child{border-right:1px solid var(--border);}
.rpt{font-family:'Barlow Condensed',sans-serif;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-bottom:10px;display:flex;align-items:center;gap:6px;}
/* EXT LINK BUTTONS */
.xbtn{font-family:'Barlow',sans-serif;font-size:11px;font-weight:600;padding:5px 10px;border-radius:6px;border:none;cursor:pointer;display:inline-flex;align-items:center;gap:4px;text-decoration:none;transition:all .15s;white-space:nowrap;}
.xmaps{background:rgba(66,133,244,.12);color:#6BA3FF;border:1px solid rgba(66,133,244,.25);}
.xmaps:hover{background:rgba(66,133,244,.22);}
.xpa{background:var(--gold-dim);color:var(--gold);border:1px solid rgba(232,160,32,.3);}
.xpa:hover{background:rgba(232,160,32,.2);}
.xdocs{background:var(--teal-dim);color:var(--teal);border:1px solid rgba(11,196,212,.3);}
.xdocs:hover{background:rgba(11,196,212,.2);}
/* DOC ITEMS */
.doc-item{display:flex;align-items:center;gap:8px;padding:7px 0;border-bottom:1px solid var(--border);font-size:11px;}
.doc-item:last-child{border-bottom:none;}
.doc-ico{width:24px;height:24px;border-radius:4px;background:var(--teal-dim);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.doc-name{flex:1;color:var(--text);}
.doc-sz{font-size:10px;color:var(--text-dim);}
/* RESULT HEADER */
.rh{padding:14px 15px;border-bottom:1px solid var(--border);background:var(--navy-3);}
.rh-id{font-family:'Barlow Condensed',sans-serif;font-size:20px;font-weight:700;color:var(--text);}
.rh-meta{font-size:12px;color:var(--text-muted);margin-top:4px;display:flex;gap:10px;flex-wrap:wrap;align-items:center;}
/* RUN */
.run-status{border-radius:var(--radius);padding:14px 16px;margin-bottom:12px;display:flex;align-items:center;gap:10px;font-size:13px;font-weight:500;}
.run-status.idle{background:var(--surface);border:1px solid var(--border);color:var(--text-muted);}
.run-status.running{background:rgba(11,196,212,.08);border:1px solid rgba(11,196,212,.25);color:var(--teal);}
.run-status.done{background:rgba(29,184,122,.08);border:1px solid rgba(29,184,122,.25);color:var(--success);}
.spin{width:14px;height:14px;border:2px solid rgba(11,196,212,.3);border-top-color:var(--teal);border-radius:50%;animation:spin .8s linear infinite;flex-shrink:0;}
@keyframes spin{to{transform:rotate(360deg)}}
.sdot{width:8px;height:8px;border-radius:50%;flex-shrink:0;}
.sdot.idle{background:var(--text-dim)}.sdot.run{background:var(--teal)}.sdot.done{background:var(--success)}.sdot.err{background:var(--danger);}
.prog-wrap{background:var(--surface);border-radius:20px;height:4px;overflow:hidden;margin-top:6px;}
.prog-bar{height:100%;border-radius:20px;background:var(--teal);transition:width .4s ease;}
.dl-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px;}
.dl-card{background:var(--navy-3);border:1px solid var(--border-light);border-radius:var(--radius);padding:14px 16px;display:flex;align-items:center;gap:12px;}
.dl-ico{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.dl-ico.g{background:rgba(29,184,122,.15);border:1px solid rgba(29,184,122,.25);}
.dl-ico.t{background:var(--teal-dim);border:1px solid rgba(11,196,212,.25);}
.dl-info{flex:1;min-width:0;}
.dl-name{font-size:12px;font-weight:600;color:var(--text);}
.dl-meta{font-size:12px;color:var(--text-muted);margin-top:2px;}
.url-box{background:var(--surface);border:1px solid var(--border-light);border-radius:6px;padding:9px 12px;display:flex;align-items:center;gap:8px;margin-top:8px;}
.url-text{font-size:11px;color:var(--text-muted);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.copy-btn{font-size:11px;font-weight:600;color:var(--teal);background:none;border:none;cursor:pointer;white-space:nowrap;font-family:'Barlow',sans-serif;}
.stage-row{display:flex;align-items:center;padding:10px 15px;gap:10px;border-bottom:1px solid var(--border);}
.stage-row:last-child{border-bottom:none;}
.snum{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;flex-shrink:0;}
.snum.idle{background:var(--surface);color:var(--text-dim);border:1px solid var(--border-light);}
.snum.act{background:var(--teal-dim);color:var(--teal);border:1px solid rgba(11,196,212,.3);}
.snum.done{background:rgba(29,184,122,.15);color:var(--success);border:1px solid rgba(29,184,122,.3);}
.sinfo{flex:1;}
.sname{font-size:13px;font-weight:600;color:var(--text);}
.sdesc{font-size:12px;color:var(--text-muted);margin-top:2px;}
.rsummary{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px;padding:14px 15px;background:var(--navy-3);}
.rstat-v{font-family:'Barlow Condensed',sans-serif;font-size:22px;font-weight:700;}
.rstat-l{font-size:10px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em;margin-top:2px;}
/* MAP PANEL */
.map-panel{background:var(--navy-2);border:1px solid var(--border-light);border-radius:var(--radius);overflow:hidden;margin-bottom:14px;}
.map-toolbar{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--border);gap:8px;flex-wrap:wrap;}
.map-title{font-family:'Barlow Condensed',sans-serif;font-size:12px;font-weight:700;color:var(--text);letter-spacing:.05em;display:flex;align-items:center;gap:6px;}
.map-links{display:flex;gap:6px;flex-wrap:wrap;}
.map-split{display:grid;grid-template-columns:1fr 1fr;height:300px;}
@media(max-width:700px){.map-split{grid-template-columns:1fr;height:520px;}}
.map-pane{position:relative;overflow:hidden;}
.map-pane:first-child{border-right:1px solid var(--border);}
.map-pane iframe{width:100%;height:100%;border:none;display:block;}
.map-pane-label{position:absolute;top:8px;left:8px;z-index:10;font-family:'Barlow Condensed',sans-serif;font-size:11px;font-weight:700;padding:3px 9px;border-radius:20px;letter-spacing:.07em;text-transform:uppercase;pointer-events:none;}
.map-pane-label.swf{background:rgba(11,196,212,.85);color:var(--navy);}
.map-pane-label.pa{background:rgba(232,160,32,.85);color:var(--navy);}
.map-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:var(--navy-3);color:var(--text-dim);}
.map-placeholder svg{opacity:.2;}
.map-placeholder-t{font-size:12px;color:var(--text-dim);text-align:center;padding:0 20px;}
.empty{text-align:center;padding:40px 20px;color:var(--text-dim);}
.empty-t{font-size:14px;font-weight:600;color:var(--text-muted);margin-bottom:6px;}
.empty-s{font-size:12px;line-height:1.6;max-width:460px;margin:0 auto;}
.toast{position:fixed;bottom:20px;right:20px;background:var(--navy-3);border:1px solid var(--border-light);border-radius:8px;padding:10px 16px;font-size:12px;font-weight:500;color:var(--text);z-index:999;transform:translateY(20px);opacity:0;transition:all .25s;pointer-events:none;max-width:320px;}
.toast.show{transform:translateY(0);opacity:1;}
.toast.ok{border-color:rgba(29,184,122,.4);color:var(--success);}
@media(max-width:900px){.run-layout{grid-template-columns:1fr!important;}}
/* RUN SUB-TABS */
.ni-sub{padding-left:13px!important;font-size:13px;}.ni-sub.active{color:var(--teal)!important;background:var(--teal-dim)!important;}.rtab{font-family:'Barlow',sans-serif;font-size:12px;font-weight:600;padding:10px 18px;border:none;background:none;cursor:pointer;color:var(--text-dim);display:flex;align-items:center;gap:6px;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .15s;}
.rtab:hover{color:var(--text);}
.rtab.active{color:var(--teal);border-bottom-color:var(--teal);}
.rtab svg{opacity:.7;}
.rtab.active svg{opacity:1;}
/* SCHEDULE TOGGLE */
.sched-toggle{display:flex;border:1px solid var(--border-light);border-radius:6px;overflow:hidden;}
.scht{font-family:'Barlow',sans-serif;font-size:11px;font-weight:600;padding:4px 10px;border:none;cursor:pointer;color:var(--text-dim);background:var(--surface);transition:all .15s;}
.scht:hover{color:var(--text);background:var(--surface-hover);}
.scht.active{background:var(--teal);color:var(--navy);}
/* HISTORY ROWS */
.hist-row{display:flex;align-items:center;justify-content:space-between;padding:12px 15px;border-bottom:1px solid var(--border);cursor:pointer;transition:background .12s;gap:12px;}
.hist-row:last-child{border-bottom:none;}
.hist-row:hover{background:var(--surface-hover);}
.hist-action-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 9px;border-radius:5px;font-size:11px;font-weight:600;border:1px solid;cursor:pointer;transition:all .15s;background:transparent;font-family:'Barlow',sans-serif;}
.hist-archive-btn{color:var(--teal);border-color:var(--teal-dark);}
.hist-archive-btn:hover{background:var(--teal-dim);}
.hist-delete-btn{color:var(--danger);border-color:rgba(224,80,80,.3);}
.hist-delete-btn:hover{background:rgba(224,80,80,.1);}
.archive-empty{padding:32px 20px;text-align:center;color:var(--text-dim);font-size:13px;}
.archive-empty svg{display:block;margin:0 auto 10px;opacity:.3;}
.mf{display:inline-block;background:var(--teal-dim);color:var(--teal);border-radius:4px;padding:2px 7px;font-size:10px;font-weight:600;cursor:pointer;margin:2px;transition:background .15s;}
.mf:hover{background:rgba(11,196,212,.25);}
.hist-main{flex:1;}
.hist-date{font-size:13px;font-weight:600;color:var(--text);}
.hist-meta{font-size:12px;color:var(--text-muted);margin-top:3px;}
/* LEAD FILTER BUTTONS */
.lf-btn{font-family:'Barlow',sans-serif;font-size:11px;font-weight:600;padding:5px 12px;border:none;background:var(--surface);color:var(--text-muted);cursor:pointer;transition:all .15s;}
.lf-btn:hover{background:var(--surface-hover);color:var(--text);}
.lf-btn.active{background:var(--teal-dim);color:var(--teal);}
/* LEAD GROUP ROWS */
/* Lead Groups — two-tier layout */
.lg-hdr{display:grid;grid-template-columns:62px 100px 120px 80px 100px 65px 160px 240px 330px 330px 330px 240px 330px 330px 140px 330px;background:#0F6E56;border-bottom:none;}
.lg-hc{padding:4px 5px;font-size:10px;font-weight:700;text-transform:uppercase;color:#fff;white-space:nowrap;text-align:left;overflow:hidden;text-overflow:ellipsis;border-right:1px solid rgba(255,255,255,0.15);}
.lg-intel-row{display:grid;grid-template-columns:62px 100px 120px 80px 100px 65px 160px 240px 330px 330px 330px 240px 330px 330px 140px 330px;background:#e8f5f0;border-bottom:1px solid #a0a0a0;cursor:pointer;}
.lg-intel-row:hover{background:#d4ede5;}
.lg-mail-hdr{display:grid;grid-template-columns:80px 140px 80px 110px 70px 170px 110px 220px 180px 260px 280px;background:#8B5E00;border-bottom:none;}
.lg-mail-hc{padding:3px 5px;font-size:8.5px;font-weight:700;text-transform:uppercase;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-right:1px solid rgba(255,255,255,0.15);}
.lg-mail-row{display:grid;grid-template-columns:80px 140px 80px 110px 70px 170px 110px 220px 180px 260px 280px;border-bottom:0.5px solid #D4B86A;background:#FFF5D6;}
.lg-mail-row:hover{background:var(--surface-hover);}
.lg-mail-row.dedup-row{opacity:.4;}
.lg-group{border:1px solid var(--border);margin-bottom:12px;border-radius:4px;width:100%;min-width:max-content;}
.lgc{padding:8px 8px;font-size:11px;color:var(--text);display:flex;align-items:flex-start;line-height:1.4;}
.lg-ic{padding:4px 5px;font-size:10px;color:#0a1f2e;display:flex;align-items:center;line-height:1.4;overflow:hidden;white-space:nowrap;border-right:1px solid #a0a0a0;}
.lg-mail-cell{padding:3px 5px;font-size:9px;color:#1a1a1a;display:flex;align-items:center;line-height:1.4;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;border-right:1px solid #D4B86A;}
.lg-tpl-sel{font-family:'Barlow',sans-serif;font-size:10px;background:var(--surface);border:1px solid var(--border-light);border-radius:4px;padding:3px 5px;color:var(--text);outline:none;cursor:pointer;width:100%;margin-top:5px;}
.lg-tpl-sel:focus{border-color:var(--teal);}
.lg-rfi{color:var(--teal);font-size:10px;text-decoration:underline;cursor:pointer;white-space:nowrap;}
.rfi-loading{font-size:10px;color:var(--text-dim);font-style:italic;}
.rfi-multi{display:flex;flex-direction:column;gap:2px;}
.rfi-none{font-size:10px;color:var(--text-dim);}
/* -- DOC SELECTOR MODAL -- */
.doc-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.65);z-index:3000;display:none;overflow-y:auto;padding:32px 16px;}
.doc-modal.open{display:block;}
.doc-modal-wrap{max-width:680px;margin:0 auto;background:var(--navy-2);border-radius:10px;overflow:hidden;box-shadow:0 24px 64px rgba(0,0,0,.5);}
.doc-modal-hdr{background:var(--navy-3);border-bottom:1px solid var(--border);padding:14px 18px;display:flex;align-items:center;justify-content:space-between;}
.doc-modal-title{font-family:'Barlow Condensed',sans-serif;font-size:14px;font-weight:700;color:var(--text);letter-spacing:.04em;}
.doc-modal-body{padding:12px 0;max-height:60vh;overflow-y:auto;}
.doc-row{display:grid;grid-template-columns:1fr 120px 80px 90px;align-items:center;gap:8px;padding:10px 18px;border-bottom:1px solid var(--border);transition:background .1s;}
.doc-row:last-child{border-bottom:none;}
.doc-row:hover{background:var(--surface-hover);}
.doc-row.selected{background:var(--teal-dim);}
.doc-name{font-size:11px;font-weight:500;color:var(--text);word-break:break-word;line-height:1.4;}
.doc-name a{color:var(--teal);text-decoration:none;}
.doc-name a:hover{text-decoration:underline;}
.doc-date{font-size:10px;color:var(--text-dim);}
.doc-size{font-size:10px;color:var(--text-dim);}
.doc-select-btn{font-family:'Barlow',sans-serif;font-size:10px;font-weight:600;padding:4px 10px;border-radius:4px;border:1px solid rgba(11,196,212,.3);background:var(--teal-dim);color:var(--teal);cursor:pointer;white-space:nowrap;}
.doc-select-btn:hover{background:rgba(11,196,212,.2);}
.doc-select-btn.selected-btn{background:var(--success-dim);border-color:rgba(29,184,122,.3);color:var(--success);}
.doc-modal-empty{padding:32px;text-align:center;color:var(--text-dim);font-size:12px;}
.rfi-choose-btn{font-family:'Barlow',sans-serif;font-size:10px;font-weight:600;padding:2px 7px;border-radius:4px;border:1px solid var(--border-light);background:transparent;color:var(--text-dim);cursor:pointer;white-space:nowrap;margin-left:4px;}
.rfi-choose-btn:hover{border-color:var(--teal);color:var(--teal);}
.ext-links{display:flex;flex-direction:column;gap:3px;}
.ext-link{font-size:10px;font-weight:600;padding:2px 7px;border-radius:4px;text-decoration:none;white-space:nowrap;display:inline-block;border:1px solid;text-align:center;}
.ext-link-swf{color:#1DB4D4;border-color:rgba(29,180,212,.3);background:rgba(29,180,212,.08);}
.ext-link-swf:hover{background:rgba(29,180,212,.2);}
.ext-link-pa{color:#F0A500;border-color:rgba(240,165,0,.3);background:rgba(240,165,0,.08);}
.ext-link-pa:hover{background:rgba(240,165,0,.2);}
.ext-link-sbz{color:#7B8CDE;border-color:rgba(123,140,222,.3);background:rgba(123,140,222,.08);}
.ext-link-sbz:hover{background:rgba(123,140,222,.2);}
.lg-mail-type{font-size:9px;color:var(--text-dim);font-style:italic;display:block;margin-top:2px;}
.lgc{padding:10px 12px;font-size:11px;color:var(--text);display:flex;align-items:center;}
.lg-expand{font-size:10px;color:var(--teal);cursor:pointer;padding:2px 4px;}
.addr-source{font-size:10px;font-weight:600;padding:2px 6px;border-radius:4px;}
.as-owner{background:rgba(29,184,122,.12);color:var(--success);}
.as-sunbiz{background:var(--teal-dim);color:var(--teal);}
.as-officer{background:var(--gold-dim);color:var(--gold);}
/* ── INLINE EDITING ─────────────────────────────────────────── */
.lg-edit-btn{background:none;border:none;cursor:pointer;padding:2px 3px;color:var(--text-muted);opacity:.8;transition:all .15s;line-height:1;flex-shrink:0;display:inline-flex;align-items:center;}
.lg-edit-btn:hover{opacity:1;color:var(--teal);background:var(--teal-dim);border-radius:3px;}
.lg-edited-badge{font-size:9px;font-weight:700;padding:1px 5px;border-radius:8px;background:rgba(29,184,122,.15);color:var(--success);border:1px solid rgba(29,184,122,.3);white-space:nowrap;display:inline-flex;align-items:center;gap:2px;}
.lg-inline-inp{font-family:'Barlow',sans-serif;font-size:10px;background:var(--navy);border:1.5px solid var(--teal);border-radius:4px;padding:3px 6px;color:var(--text);outline:none;min-width:80px;max-width:160px;}
.lg-edit-panel{background:var(--navy-3);border-top:2px solid rgba(11,196,212,.25);border-bottom:1px solid var(--border);padding:12px 16px;display:none;}
.lg-edit-panel.open{display:block;}
/* -- MERGE -- */
.merge-btn{font-family:'Barlow',sans-serif;font-size:10px;font-weight:700;padding:4px 10px;border-radius:4px;border:none;background:var(--gold);color:var(--navy);cursor:pointer;white-space:nowrap;margin-top:5px;display:flex;align-items:center;gap:4px;transition:background .15s;}
.merge-btn:hover{background:#d4911a;}
.merge-btn:disabled{opacity:.4;cursor:not-allowed;}
.merge-btn.merging{background:var(--teal);color:var(--navy);}
.merged-docs-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.65);z-index:3000;display:none;overflow-y:auto;padding:32px 16px;}
.merged-docs-modal.open{display:block;}
.merged-docs-wrap{max-width:700px;margin:0 auto;background:var(--navy-2);border-radius:10px;overflow:hidden;box-shadow:0 24px 64px rgba(0,0,0,.5);}
.merged-docs-hdr{background:var(--navy-3);border-bottom:1px solid var(--border);padding:14px 18px;display:flex;align-items:center;justify-content:space-between;}
.merged-docs-title{font-family:'Barlow Condensed',sans-serif;font-size:14px;font-weight:700;color:var(--text);}
.merged-doc-row{display:grid;grid-template-columns:30px 1fr 90px 90px;align-items:center;gap:8px;padding:10px 18px;border-bottom:1px solid var(--border);}
.merged-doc-row:last-child{border-bottom:none;}
.merged-doc-row:hover{background:var(--surface-hover);}
.merged-doc-name{font-size:11px;font-weight:600;color:var(--teal);}
.merged-doc-sub{font-size:10px;color:var(--text-dim);margin-top:1px;}
/* Hidden letter renderer */
#letter-render-target{position:fixed;left:0;top:0;width:810px;background:#fff;padding:0 20px 40px 20px;font-family:Calibri,Arial,sans-serif;font-size:12pt;color:#1a1a2e;line-height:1.8;z-index:-100;opacity:0;pointer-events:none;}
#letter-render-target *{font-family:inherit!important;font-size:inherit!important;color:inherit!important;line-height:inherit!important;}
#letter-render-target b,#letter-render-target strong{font-weight:700!important;}
#letter-render-target [style*="font-weight:bold"],#letter-render-target [style*="font-weight: bold"],#letter-render-target [style*="font-weight:700"],#letter-render-target [style*="font-weight: 700"]{font-weight:700!important;}
#letter-render-target i,#letter-render-target em{font-style:italic!important;}
.lg-delete-btn{background:none;border:none;cursor:pointer;padding:2px 4px;color:var(--text-dim);opacity:.5;transition:all .15s;line-height:1;flex-shrink:0;display:inline-flex;align-items:center;border-radius:3px;}
.lg-delete-btn:hover{opacity:1;color:var(--danger);background:rgba(224,80,80,.1);}
.lg-mail-row.row-deleted{display:none!important;}
.ep-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px;}
.ep-field{display:flex;flex-direction:column;gap:3px;}
.ep-lbl{font-size:10px;font-weight:600;color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em;}
.lg-edit-inp{font-family:'Barlow',sans-serif;font-size:11px;background:var(--surface);border:1.5px solid var(--border-light);border-radius:5px;padding:6px 9px;color:var(--text);outline:none;width:100%;transition:border-color .15s;}
.lg-edit-inp:focus{border-color:var(--teal);}
/* LETTER TYPE ACTIVE */
.letter-type-active{border-color:rgba(29,184,122,.4)!important;color:var(--success)!important;}
/* MERGE FIELD CHIPS */
.mf{background:var(--surface);border:1px solid var(--border-light);padding:2px 7px;border-radius:4px;color:var(--teal);cursor:pointer;font-size:11px;font-family:monospace;transition:background .12s;}
.mf:hover{background:var(--teal-dim);}
/* LEAD GROUP GRID */
.lg-hc-old{padding:8px 12px;font-size:10px;font-weight:600;color:var(--text-dim);letter-spacing:.05em;text-transform:uppercase;}
.lg-parent-old{display:grid;grid-template-columns:76px 120px 86px 1fr 160px 88px 110px 110px;border-bottom:1px solid var(--border);cursor:pointer;transition:background .12s;background:var(--navy-3);}
.lg-parent-old:hover{background:var(--surface-hover);}
.lg-child-old{display:grid;grid-template-columns:76px 120px 86px 1fr 160px 88px 110px 110px;border-bottom:1px solid var(--border);background:var(--surface);display:none;}
.lg-child-old.show{display:grid;}
.lg-child.dedup-row{opacity:.5;}
/* MACRO OVERVIEW */
.macro-overview{background:var(--navy-3);border:1px solid var(--border-light);border-radius:var(--radius);margin-bottom:16px;overflow:hidden;}
/* EDU DOC INLINE STYLES */
.edu-doc{background:#fff;border-radius:var(--radius);padding:40px 48px;color:#1a1a2e;max-width:860px;}
.edu-doc .edu-cover{text-align:center;padding-bottom:28px;border-bottom:3px solid #0A1F2E;margin-bottom:28px;}
.edu-doc .edu-logo{display:inline-block;background:#0A1F2E;color:#0BC4D4;font-family:'Barlow Condensed',sans-serif;font-size:13px;font-weight:700;letter-spacing:2px;padding:10px 18px;border-radius:6px;margin-bottom:16px;}
.edu-doc h1{font-size:22px;color:#0A1F2E;font-weight:700;margin:0 0 6px;}
.edu-doc .edu-sub{font-size:13px;color:#555;margin-bottom:4px;}
.edu-doc .edu-meta{font-size:10px;color:#888;margin-top:12px;}
.edu-doc .edu-toc{background:#f5f8fc;border-left:4px solid #0BC4D4;padding:16px 20px;margin-bottom:28px;border-radius:0 6px 6px 0;}
.edu-doc .edu-toc h3{font-size:11px;color:#0A1F2E;margin:0 0 10px;text-transform:uppercase;letter-spacing:1px;font-weight:700;}
.edu-doc .edu-toc ol{margin:0;padding-left:18px;}
.edu-doc .edu-toc li{font-size:11px;color:#333;margin-bottom:3px;line-height:1.5;}
.edu-doc .edu-section{margin-bottom:26px;}
.edu-doc .edu-section h2{font-size:14px;color:#0A1F2E;font-weight:700;border-bottom:2px solid #0BC4D4;padding-bottom:5px;margin-bottom:10px;}
.edu-doc .edu-body{font-size:11px;color:#333;line-height:1.85;white-space:pre-wrap;font-family:'Calibri',Arial,sans-serif;}
.edu-doc .edu-footer{text-align:center;font-size:10px;color:#aaa;border-top:1px solid #ddd;padding-top:12px;margin-top:28px;}
@media print{
  .sb,.topbar,.breadcrumb,.btn,.edu-btn-row,.macro-overview-hdr svg{display:none!important;}
  .main{margin-left:0!important;}
  .page{display:block!important;}
  .page:not(#page-edu){display:none!important;}
  .edu-doc{padding:20px;box-shadow:none;}
  /* Letter preview print — strip modal chrome, full page */
  body.lp-printing *{display:none!important;}
  body.lp-printing #lp-print-target{display:block!important;}
  body.lp-printing #lp-print-target *{display:revert!important;}
  #lp-print-target{display:none;}
  @page{margin:2cm;}
}
.macro-overview-hdr{display:flex;align-items:center;justify-content:space-between;padding:11px 15px;cursor:pointer;user-select:none;}
.macro-overview-title{font-family:'Barlow Condensed',sans-serif;font-size:12px;font-weight:700;color:var(--teal);letter-spacing:.1em;text-transform:uppercase;display:flex;align-items:center;gap:7px;}
.macro-overview-body{padding:0 15px 14px;display:none;}
.macro-overview-body.open{display:block;}
.macro-overview-body p{font-size:12px;color:var(--text-muted);line-height:1.8;margin-bottom:10px;}
.macro-overview-body p:last-child{margin-bottom:0;}
.macro-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px;margin-bottom:12px;}
.macro-kc{background:var(--navy-2);border:1px solid var(--border);border-radius:7px;padding:9px 12px;}
.macro-kl{font-size:10px;font-weight:600;color:var(--text-dim);letter-spacing:.06em;text-transform:uppercase;margin-bottom:4px;}
.macro-kv{font-family:'Barlow Condensed',sans-serif;font-size:20px;font-weight:700;color:var(--text);}
.macro-ks{font-size:11px;color:var(--text-dim);margin-top:2px;}
.edu-btn-row{display:flex;gap:8px;flex-wrap:wrap;padding:12px 15px;border-top:1px solid var(--border);background:rgba(11,196,212,.04);}
/* MACRO OVERVIEW */
.breadcrumb{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-dim);margin-bottom:14px;flex-wrap:wrap;}
.bc-link{color:var(--teal);cursor:pointer;}
.bc-link:hover{text-decoration:underline;}
.bc-sep{opacity:.4;}
.bc-cur{color:var(--text-muted);}
/* COMPANY SITE LIST */
.site-list{background:var(--navy-2);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;margin-bottom:14px;}
.site-list-hdr{display:grid;grid-template-columns:1.2fr 1.4fr 1fr 0.8fr 1.8fr;border-bottom:1px solid var(--border);}
.site-list-body-row{display:grid;grid-template-columns:1.2fr 1.4fr 1fr 0.8fr 1.8fr;border-bottom:1px solid var(--border);cursor:pointer;transition:background .12s;}
.site-list-body-row:hover{background:var(--surface-hover);}
.site-list-body-row:last-child{border-bottom:none;}
.slc{padding:10px 14px;font-size:11px;color:var(--text);display:flex;align-items:center;}
.slc.hd{font-size:10px;font-weight:600;color:var(--text-dim);letter-spacing:.06em;text-transform:uppercase;background:var(--surface);padding:8px 14px;}
/* SUNBIZ EXPANDED */
.sunbiz-meta{display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:8px;margin-bottom:14px;}
.sunbiz-officers{margin-top:4px;}
.sunbiz-off-row{display:flex;align-items:flex-start;gap:10px;padding:9px 0;border-bottom:1px solid var(--border);}
.sunbiz-off-row:last-child{border-bottom:none;}
.sunbiz-title-badge{font-size:10px;font-weight:700;padding:2px 8px;border-radius:4px;background:rgba(11,196,212,.1);color:var(--teal);border:1px solid rgba(11,196,212,.2);white-space:nowrap;flex-shrink:0;margin-top:2px;min-width:90px;text-align:center;}
.sunbiz-off-name{font-size:12px;font-weight:600;color:var(--text);}
.sunbiz-off-addr{font-size:11px;color:var(--text-muted);margin-top:2px;line-height:1.5;}

/* ── GRADIENT TITLE ── */
.m360-title{
  font-family:'Barlow Condensed',sans-serif;font-size:52px;font-weight:800;line-height:1;letter-spacing:-.01em;margin-bottom:6px;
  background:linear-gradient(110deg,var(--text) 0%,var(--teal) 65%);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.m360-title span{-webkit-text-fill-color:transparent;}

/* ── THEME DROPDOWN ── */
.dd-wrap{position:relative;flex-shrink:0;}
.dd-btn{
  display:flex;align-items:center;gap:7px;padding:5px 12px;
  border-radius:7px;font-family:'Barlow',sans-serif;font-size:11px;font-weight:600;
  cursor:pointer;border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.08);color:#EDF3F8;
  transition:all .2s;letter-spacing:.02em;white-space:nowrap;
}
.dd-btn:hover{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.26);}
.dd-swatch{width:8px;height:8px;border-radius:2px;flex-shrink:0;}
.dd-caret{font-size:9px;opacity:.6;transition:transform .2s;display:inline-block;}
.dd-wrap.open .dd-caret{transform:rotate(180deg);}
.dd-menu{
  position:absolute;top:calc(100% + 8px);right:0;
  background:#1a2e40;border:1px solid rgba(255,255,255,.14);
  border-radius:10px;min-width:172px;overflow:hidden;
  opacity:0;pointer-events:none;
  transform:translateY(-6px);
  transition:opacity .15s ease,transform .15s ease;
  z-index:9999;
  box-shadow:0 12px 32px rgba(0,0,0,.5);
}
.dd-wrap.open .dd-menu{opacity:1;pointer-events:all;transform:translateY(0);}
.dd-menu-hdr{font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
  color:rgba(255,255,255,.3);padding:9px 13px 4px;}
.dd-opt{
  display:flex;align-items:center;gap:9px;
  width:100%;padding:9px 13px;border:none;background:none;
  font-family:'Barlow',sans-serif;font-size:13px;font-weight:500;
  color:rgba(255,255,255,.6);cursor:pointer;text-align:left;
  transition:background .12s,color .12s;
}
.dd-opt:hover{background:rgba(255,255,255,.07);color:#EDF3F8;}
.dd-opt.sel{color:#0BC4D4;}
.dd-opt .chk{margin-left:auto;opacity:0;font-size:12px;}
.dd-opt.sel .chk{opacity:1;color:#0BC4D4;}
.dd-sep{height:1px;background:rgba(255,255,255,.08);margin:3px 0;}

/* ══════════════════════════════════════
   LIGHT PRO
══════════════════════════════════════ */
body.light-pro{
  --navy:#F0F4F8;--navy-2:#FFFFFF;--navy-3:#F4F8FA;
  --teal:#0A9EB0;--teal-dark:#0880A0;--teal-dim:rgba(10,158,176,.1);
  --gold:#C97C08;--gold-dim:rgba(201,124,8,.1);
  --text:#0A1F2E;--text-muted:#4A6A80;--text-dim:#7A9AB0;
  --border:rgba(0,0,0,.1);--border-light:rgba(0,0,0,.07);
  --surface:rgba(0,0,0,.03);--surface-hover:rgba(0,0,0,.05);
  --success:#0F7A4A;--warning:#C97C08;--danger:#C03030;
}
body.light-pro .sb{background:#0A1F2E !important;border-right-color:rgba(255,255,255,.07) !important;}
body.light-pro .topbar{background:#0A1F2E !important;border-bottom-color:rgba(255,255,255,.08) !important;}
body.light-pro .ni{color:#8AAEC4;}
body.light-pro .ni.active{color:#0BC4D4;background:rgba(11,196,212,.12);}
body.light-pro .ni:hover:not(.active){background:rgba(255,255,255,.05);color:#cde;}
body.light-pro .slbl{color:#3A6A80;}
body.light-pro .uname{color:#8AAEC4;}
body.light-pro .urole{color:#3A6A80;}
body.light-pro .uav{background:rgba(11,196,212,.12);color:#0BC4D4;border-color:#089AAA;}
body.light-pro .slogo-t{color:#0BC4D4;}
body.light-pro .slogo-t span{color:#3A6A80;}
body.light-pro .sb-collapse-btn{background:#163550;border-color:rgba(255,255,255,.13);}
body.light-pro .ttl,body.light-pro .ttl span{color:#EDF3F8;}
body.light-pro .ttl span{color:#0BC4D4;}

/* ══════════════════════════════════════
   DARK PRO  — :root is already Dark Pro
══════════════════════════════════════ */

/* ══════════════════════════════════════
   BOARD ROOM
══════════════════════════════════════ */
body.board-room{
  --navy:#0C0A08;--navy-2:#141210;--navy-3:#100E0C;
  --teal:#00F0E0;--teal-dark:#00C0B8;--teal-dim:rgba(0,240,224,.1);
  --gold:#C8901A;--gold-dim:rgba(200,144,26,.1);
  --text:#E8E0D0;--text-muted:#B09070;--text-dim:#908060;
  --border:rgba(255,255,255,.07);--border-light:rgba(255,255,255,.12);
  --surface:rgba(255,255,255,.03);--surface-hover:rgba(255,255,255,.06);
  --success:#00C890;--warning:#C8901A;--danger:#E05050;
}

/* ══════════════════════════════════════
   CYPHER-CAMO  — no z-index tricks, background-image on body
══════════════════════════════════════ */
body.cypher-camo{
  --navy:#0D1009;--navy-2:#141810;--navy-3:#111408;
  --teal:#72FF44;--teal-dark:#50CC28;--teal-dim:rgba(80,200,60,.1);
  --gold:#E0C030;--gold-dim:rgba(200,170,30,.1);
  --text:#C8E0A0;--text-muted:#AACE80;--text-dim:#8AAA60;
  --border:rgba(80,160,40,.15);--border-light:rgba(80,160,40,.28);
  --surface:rgba(80,160,40,.05);--surface-hover:rgba(80,160,40,.1);
  --success:#50C830;--warning:#E0C030;--danger:#E05050;
  font-family:'IBM Plex Mono',monospace;
  background-image:
    radial-gradient(ellipse 160px 90px at 10% 20%,rgba(40,60,20,.55) 0%,transparent 65%),
    radial-gradient(ellipse 100px 140px at 75% 15%,rgba(25,38,14,.6) 0%,transparent 65%),
    radial-gradient(ellipse 170px 80px at 45% 55%,rgba(50,72,22,.5) 0%,transparent 65%),
    radial-gradient(ellipse 90px 120px at 88% 75%,rgba(32,48,16,.55) 0%,transparent 65%),
    radial-gradient(ellipse 130px 100px at 5% 85%,rgba(46,68,20,.5) 0%,transparent 65%),
    radial-gradient(ellipse 110px 70px at 55% 90%,rgba(28,42,14,.55) 0%,transparent 65%);
}
body.cypher-camo .ni.active::after{
  content:'_';animation:camoblink .8s step-end infinite;
  margin-left:2px;color:#72FF44;
}
body.cypher-camo .lg-ic,
body.cypher-camo .lg-ic *,
body.cypher-camo .lg-rfi{color:#0a1f2e !important;}
body.cypher-camo .lg-hc{color:#fff !important;}
body.cypher-camo .venv-hdr div{color:#fff !important;}
body.cypher-camo 
@keyframes camoblink{0%,100%{opacity:1;}50%{opacity:0;}}

/* ══════════════════════════════════════
   BLUE-PRINT
══════════════════════════════════════ */
body.blue-print{
  --navy:#EEF4FC;--navy-2:#FFFFFF;--navy-3:#F4F8FC;
  --teal:#2A6AB8;--teal-dark:#1E58A0;--teal-dim:rgba(42,106,184,.1);
  --gold:#1A8AA0;--gold-dim:rgba(26,138,160,.1);
  --text:#0A2040;--text-muted:#5A7A9A;--text-dim:#8AA0B8;
  --border:rgba(0,0,0,.1);--border-light:rgba(0,0,0,.07);
  --surface:rgba(0,0,0,.025);--surface-hover:rgba(0,0,0,.05);
  --success:#1A8A50;--warning:#C97C08;--danger:#C03030;
  font-family:'IBM Plex Sans',sans-serif;
}
body.blue-print .sb{background:#1A3A6A !important;border-right-color:rgba(255,255,255,.07) !important;}
body.blue-print .topbar{background:#1A3A6A !important;border-bottom-color:rgba(255,255,255,.08) !important;}
body.blue-print .ni{color:#5A8AAA;}
body.blue-print .ni.active{color:#7AC0E8;background:rgba(74,154,212,.15);}
body.blue-print .ni:hover:not(.active){background:rgba(255,255,255,.06);color:#EEF4FC;}
body.blue-print .slbl{color:#7AAACE;}
body.blue-print .uname{color:#7A9AB8;}
body.blue-print .urole{color:#3A5A7A;}
body.blue-print .uav{background:rgba(74,154,212,.18);color:#7AC0E8;border-color:#4A9AD4;}
body.blue-print .slogo-t{color:#7AC0E8;}
body.blue-print .slogo-t span{color:#4A6A9A;}
body.blue-print .sb-collapse-btn{background:#122d50;border-color:rgba(255,255,255,.12);}
body.blue-print .ttl{color:#EEF4FC;}
body.blue-print .ttl span{color:#7AC0E8;}
body.blue-print .pc{
  background-image:
    linear-gradient(rgba(42,106,184,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(42,106,184,.055) 1px,transparent 1px);
  background-size:24px 24px;
}

/* -- IMAGE RESIZE -- */
#img-resize-overlay{position:fixed;pointer-events:none;z-index:9999;box-sizing:border-box;border:2px solid var(--teal);display:none;border-radius:1px;}
.img-resize-handle{position:absolute;width:10px;height:10px;background:var(--teal);border:2px solid #fff;border-radius:2px;pointer-events:all;box-shadow:0 1px 4px rgba(0,0,0,.3);}
.img-resize-handle[data-pos=nw]{left:-5px;top:-5px;cursor:nw-resize;}
.img-resize-handle[data-pos=ne]{right:-5px;top:-5px;cursor:ne-resize;}
.img-resize-handle[data-pos=sw]{left:-5px;bottom:-5px;cursor:sw-resize;}
.img-resize-handle[data-pos=se]{right:-5px;bottom:-5px;cursor:se-resize;}
.img-resize-lbl{position:absolute;bottom:-22px;left:0;font-size:10px;font-weight:600;color:var(--teal);background:var(--navy-2);padding:1px 5px;border-radius:3px;pointer-events:none;white-space:nowrap;}
/* -- LETTER PREVIEW MODAL -- */
.lp-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.65);z-index:2000;display:none;overflow-y:auto;padding:32px 16px;}
.lp-modal.open{display:block;}
.lp-wrap{max-width:780px;margin:0 auto;border-radius:10px;overflow:hidden;box-shadow:0 24px 64px rgba(0,0,0,.5);}
.lp-topbar{background:var(--navy-2);border-bottom:1px solid var(--border);padding:12px 18px;display:flex;align-items:center;justify-content:space-between;gap:10px;}
.lp-title{font-family:'Barlow Condensed',sans-serif;font-size:14px;font-weight:700;color:var(--text);letter-spacing:.04em;}
.lp-doc{background:#fff;padding:48px 52px;color:#1a1a2e;font-family:Calibri,Arial,sans-serif;font-size:11.5pt;line-height:1.75;}
.lp-section-lbl{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#aaa;border-bottom:1px dashed #ddd;padding-bottom:4px;margin-bottom:10px;margin-top:0;}
.lp-header-area{position:relative;margin-bottom:24px;padding-bottom:20px;border-bottom:0.5px solid #0A1F2E;}
.lp-footer-area{margin-top:24px;padding-top:14px;border-top:1px solid #ccc;font-size:10pt;color:#666;}
.lp-body-area{white-space:pre-wrap;font-size:11pt;line-height:1.8;}
.lp-merge{background:rgba(11,196,212,.12);color:#0A8EA0;border:1px solid rgba(11,196,212,.35);border-radius:3px;padding:0 4px;font-family:monospace;font-size:.88em;}
.lp-empty{color:#bbb;font-style:italic;font-size:10pt;}
.logo-slots{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:10px 16px 6px;}
.logo-slot-lbl{font-size:10px;font-weight:600;color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em;margin-bottom:5px;}
.logo-preview{display:none;background:var(--navy);border:1px solid var(--border-light);border-radius:6px;padding:8px;margin-top:6px;}
.logo-thumb{max-height:56px;max-width:100%;display:block;margin-bottom:6px;border-radius:3px;}
.drag-logo-wrap{display:inline-block;}
.drag-resize-handle{position:absolute;bottom:-4px;right:-4px;width:10px;height:10px;background:#0bc4d4;border:2px solid #fff;border-radius:2px;cursor:se-resize;z-index:11;opacity:0;transition:opacity .15s;}
.drag-logo-wrap:hover .drag-resize-handle{opacity:1;}
.logo-remove-btn{font-family:'Barlow',sans-serif;font-size:10px;padding:3px 6px;border-radius:4px;border:1px solid var(--border-light);background:transparent;color:var(--text-dim);cursor:pointer;}
.logo-remove-btn:hover{color:var(--danger);border-color:rgba(224,80,80,.3);}

/* ── WORKFLOW TAB · HUD ─────────────────────────────────────────── */
.wf-head{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:10px;}
.wf-title{font-family:'Barlow Condensed',sans-serif;font-size:21px;font-weight:700;letter-spacing:.22em;color:var(--text);text-transform:uppercase;}
.wf-title .wf-t-accent{color:var(--teal);text-shadow:0 0 12px rgba(11,196,212,.55);}
.wf-subtitle{font-family:'IBM Plex Mono',monospace;font-size:9.5px;letter-spacing:.08em;color:var(--text-dim);margin-top:4px;text-transform:uppercase;}
.wf-toolbar{display:flex;align-items:center;gap:6px;flex-wrap:wrap;}
.wf-btn{background:rgba(11,196,212,.04);border:1px solid rgba(11,196,212,.22);color:#9ABBC8;border-radius:3px;padding:5px 11px;font-size:9.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;font-family:'Barlow',sans-serif;transition:all .15s;}
.wf-btn:hover{color:#fff;border-color:var(--teal);box-shadow:0 0 10px rgba(11,196,212,.25),inset 0 0 8px rgba(11,196,212,.08);}
.wf-btn.primary{background:rgba(11,196,212,.16);border-color:var(--teal);color:#7FE8F2;text-shadow:0 0 8px rgba(11,196,212,.6);}
.wf-btn.primary:hover{background:rgba(11,196,212,.28);color:#fff;}
.wf-btn.danger{background:rgba(226,75,74,.12);border-color:rgba(226,75,74,.6);color:#FF8A85;width:100%;}
.wf-btn.danger:hover{background:rgba(226,75,74,.25);color:#fff;box-shadow:0 0 10px rgba(226,75,74,.3);}
.wf-btn.active{background:rgba(11,196,212,.2);border-color:var(--teal);color:#7FE8F2;box-shadow:0 0 12px rgba(11,196,212,.35),inset 0 0 10px rgba(11,196,212,.12);}
.wf-sep{width:1px;height:18px;background:rgba(11,196,212,.2);display:inline-block;}
.wf-badge{font-family:'IBM Plex Mono',monospace;font-size:8.5px;font-weight:700;letter-spacing:.1em;padding:3px 9px;border-radius:2px;border:1px solid;position:relative;}
.wf-badge.live{color:#3AE8B0;border-color:rgba(58,232,176,.5);background:rgba(58,232,176,.08);text-shadow:0 0 8px rgba(58,232,176,.5);}
.wf-badge.seed{color:#FFB03A;border-color:rgba(255,176,58,.45);background:rgba(255,176,58,.08);}
.wf-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:8px;}
.wf-legend{display:flex;align-items:center;gap:11px;flex-wrap:wrap;}
.wf-lg-item{display:inline-flex;align-items:center;gap:5px;font-family:'IBM Plex Mono',monospace;font-size:8.5px;letter-spacing:.04em;color:var(--text-dim);text-transform:uppercase;}
.wf-lg-dot{width:7px;height:7px;border-radius:1px;display:inline-block;}
#wf-counts,#wf-status{font-family:'IBM Plex Mono',monospace;font-size:9px;letter-spacing:.1em;}
#wf-counts{color:var(--text-dim);}
#wf-status{color:var(--teal);text-shadow:0 0 8px rgba(11,196,212,.5);animation:wfBlink 1.1s step-end infinite;}
@keyframes wfBlink{50%{opacity:.35;}}

/* Stage: deep-field canvas with tactical grid + vignette */
.wf-stage{position:relative;display:flex;border:1px solid rgba(11,196,212,.25);border-radius:6px;background:#050E17;overflow:hidden;height:calc(100vh - 218px);min-height:460px;box-shadow:inset 0 0 80px rgba(4,10,18,.9),0 0 24px rgba(11,196,212,.06);}
#wf-svg{flex:1;width:100%;height:100%;cursor:grab;display:block;background:
  radial-gradient(ellipse at 50% 42%, rgba(11,196,212,.05), transparent 62%),
  linear-gradient(rgba(11,196,212,.045) 1px, transparent 1px),
  linear-gradient(90deg, rgba(11,196,212,.045) 1px, transparent 1px),
  linear-gradient(rgba(11,196,212,.018) 1px, transparent 1px),
  linear-gradient(90deg, rgba(11,196,212,.018) 1px, transparent 1px);
  background-size:100% 100%,130px 130px,130px 130px,26px 26px,26px 26px;}
#wf-svg:active{cursor:grabbing;}
/* HUD corner frames on the stage */
.wf-stage::before,.wf-stage::after{content:'';position:absolute;width:22px;height:22px;pointer-events:none;z-index:2;border:1.5px solid rgba(11,196,212,.55);}
.wf-stage::before{top:8px;left:8px;border-right:none;border-bottom:none;}
.wf-stage::after{bottom:8px;right:8px;border-left:none;border-top:none;}

/* Nodes: holo cards */
.wf-node{cursor:pointer;}
.wf-nbox{fill:rgba(10,26,40,.88);stroke:rgba(11,196,212,.28);stroke-width:1;}
.wf-node:hover .wf-nbox{stroke:rgba(11,196,212,.7);filter:drop-shadow(0 0 7px rgba(11,196,212,.4));}
.wf-node.wf-sel .wf-nbox{stroke:#0BC4D4;stroke-width:1.6;filter:drop-shadow(0 0 11px rgba(11,196,212,.65));}
.wf-node.wf-lit .wf-nbox{stroke:rgba(11,196,212,.6);filter:drop-shadow(0 0 7px rgba(11,196,212,.35));}
.wf-node.wf-esrc .wf-nbox{stroke:var(--teal);stroke-width:2;stroke-dasharray:4,3;filter:drop-shadow(0 0 10px rgba(11,196,212,.6));}
.wf-nbox.wf-manual{stroke-dasharray:4,3;}
.wf-nlabel{fill:#E8F4F8;font-family:'Barlow',sans-serif;font-size:12px;font-weight:700;letter-spacing:.015em;pointer-events:none;}
.wf-ntype{font-family:'IBM Plex Mono',monospace;font-size:6.8px;font-weight:600;letter-spacing:.14em;pointer-events:none;opacity:.95;}
.wf-npulse{animation:wfPulse 2.4s ease-in-out infinite;}
@keyframes wfPulse{0%,100%{opacity:.9;}50%{opacity:.25;}}
/* Targeting brackets on the selected node */
.wf-corners{fill:none;stroke:#0BC4D4;stroke-width:1.6;filter:drop-shadow(0 0 6px rgba(11,196,212,.8));animation:wfLock .18s ease-out;}
@keyframes wfLock{from{transform:scale(1.25);opacity:0;}to{transform:scale(1);opacity:1;}}

/* Edges: faint spine + animated data-pulse overlay */
.wf-edge{cursor:pointer;}
.wf-ehit{stroke:transparent;stroke-width:16;fill:none;}
.wf-eline{stroke:rgba(122,160,178,.4);stroke-width:1.2;fill:none;}
.wf-eline.wf-manual{stroke-dasharray:6,5;}
.wf-eflow{stroke:rgba(11,196,212,.75);stroke-width:1.5;fill:none;stroke-dasharray:2 14;stroke-linecap:round;animation:wfFlow 1.6s linear infinite;pointer-events:none;filter:drop-shadow(0 0 3px rgba(11,196,212,.5));}
@keyframes wfFlow{to{stroke-dashoffset:-16;}}
.wf-edge:hover .wf-eline{stroke:rgba(154,187,200,.85);stroke-width:1.8;}
.wf-edge.wf-sel .wf-eline,.wf-edge.wf-lit .wf-eline{stroke:rgba(11,196,212,.85);stroke-width:1.8;filter:drop-shadow(0 0 5px rgba(11,196,212,.55));}
.wf-edge.wf-sel .wf-eflow,.wf-edge.wf-lit .wf-eflow{stroke:#7FE8F2;stroke-width:2.2;animation-duration:.9s;}
.wf-elabel{fill:#7FA8BA;font-family:'IBM Plex Mono',monospace;font-size:8px;letter-spacing:.04em;paint-order:stroke;stroke:#050E17;stroke-width:3.5px;pointer-events:none;}
.wf-edge.wf-sel .wf-elabel,.wf-edge.wf-lit .wf-elabel{fill:#AEEFF6;}
.wf-zoomout .wf-elabel{display:none;}

/* Focus mode: everything outside the selection's neighborhood recedes */
.wf-node.wf-dim{opacity:.16;}
.wf-edge.wf-dim{opacity:.08;}
.wf-edge.wf-dim .wf-eflow{animation:none;}

/* Inspector: HUD side console */
.wf-inspector{width:284px;flex-shrink:0;border-left:1px solid rgba(11,196,212,.25);background:linear-gradient(180deg,rgba(8,20,32,.97),rgba(6,15,24,.97));padding:14px;flex-direction:column;overflow-y:auto;box-shadow:inset 8px 0 22px rgba(3,8,14,.7);}
.wf-insp-hdr{display:flex;align-items:center;justify-content:space-between;font-family:'Barlow Condensed',sans-serif;font-size:13px;font-weight:700;letter-spacing:.2em;color:#7FE8F2;margin-bottom:10px;text-shadow:0 0 8px rgba(11,196,212,.4);}
.wf-insp-src{font-family:'IBM Plex Mono',monospace;font-size:7.5px;font-weight:600;letter-spacing:.08em;color:var(--text-dim);border:1px solid rgba(11,196,212,.25);border-radius:2px;padding:2px 7px;}
.wf-insp-lbl{font-family:'IBM Plex Mono',monospace;font-size:8px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#5F8FA3;margin:11px 0 4px;display:block;}
.wf-insp-input{width:100%;box-sizing:border-box;background:rgba(4,11,18,.9);border:1px solid rgba(11,196,212,.22);border-radius:3px;color:#E8F4F8;font-family:'Barlow',sans-serif;font-size:12px;padding:6px 8px;transition:all .15s;}
.wf-insp-input:focus{outline:none;border-color:var(--teal);box-shadow:0 0 10px rgba(11,196,212,.25),inset 0 0 8px rgba(11,196,212,.06);}
textarea.wf-insp-input{resize:vertical;line-height:1.55;font-size:11.5px;}
.wf-insp-fromto{font-size:11px;color:#9ABBC8;padding:6px 0;font-family:'IBM Plex Mono',monospace;}

@media (prefers-reduced-motion: reduce){
  .wf-eflow,.wf-npulse,#wf-status{animation:none;}
}

/* ── WORKFLOW v3: tray · pipelines · narrative ─────────────────── */
.wf-tray{position:absolute;left:10px;bottom:10px;z-index:3;max-width:420px;max-height:55%;overflow-y:auto;background:rgba(6,15,24,.96);border:1px solid rgba(11,196,212,.3);border-radius:4px;box-shadow:0 0 20px rgba(3,8,14,.8),0 0 14px rgba(11,196,212,.08);font-family:'IBM Plex Mono',monospace;}
.wf-tray-hdr{display:flex;align-items:center;gap:7px;padding:8px 12px;font-size:9px;font-weight:700;letter-spacing:.12em;color:#7FE8F2;cursor:pointer;text-shadow:0 0 8px rgba(11,196,212,.4);}
.wf-tray-hdr:hover{background:rgba(11,196,212,.06);}
.wf-tray-caret{color:var(--teal);font-size:9px;width:9px;display:inline-block;}
.wf-tray-count{background:rgba(11,196,212,.14);border:1px solid rgba(11,196,212,.3);border-radius:2px;padding:0 6px;font-size:8.5px;color:#7FE8F2;}
.wf-tray-sub{font-size:7.5px;color:#5F8FA3;letter-spacing:.04em;margin-left:auto;font-weight:400;}
.wf-tray-body{border-top:1px solid rgba(11,196,212,.18);padding:4px 0 8px;}
.wf-tray-sec{display:flex;align-items:center;gap:7px;padding:6px 12px;font-size:8.5px;font-weight:700;letter-spacing:.1em;color:#9ABBC8;cursor:pointer;}
.wf-tray-sec:hover{background:rgba(11,196,212,.06);color:#fff;}
.wf-tray-item{display:flex;align-items:center;gap:7px;padding:4px 12px 4px 28px;font-size:9px;color:#8FB0C0;cursor:pointer;}
.wf-tray-item:hover{background:rgba(11,196,212,.08);color:#E8F4F8;}
.wf-tray-pin{margin-left:auto;font-size:7.5px;color:var(--teal);opacity:0;transition:opacity .12s;letter-spacing:.1em;}
.wf-tray-item:hover .wf-tray-pin{opacity:1;}

.wf-pipes{display:flex;align-items:center;gap:7px;flex-wrap:wrap;}
.wf-pipes-lbl{font-family:'IBM Plex Mono',monospace;font-size:8px;font-weight:700;letter-spacing:.14em;color:#5F8FA3;}
.wf-chip{display:inline-flex;align-items:center;gap:6px;font-family:'IBM Plex Mono',monospace;font-size:8.5px;font-weight:600;letter-spacing:.05em;color:#9ABBC8;border:1px solid rgba(11,196,212,.25);border-radius:2px;padding:3px 8px;cursor:pointer;transition:all .15s;text-transform:uppercase;background:rgba(11,196,212,.03);}
.wf-chip:hover{color:#fff;border-color:rgba(11,196,212,.6);}
.wf-chip.active{background:rgba(11,196,212,.08);}
.wf-chip-x{color:#5F8FA3;margin-left:2px;font-size:11px;line-height:1;}
.wf-chip-x:hover{color:#FF8A85;}

.wf-narrative{position:absolute;right:10px;top:10px;z-index:3;width:330px;max-height:62%;overflow-y:auto;background:rgba(6,15,24,.96);border:1px solid rgba(11,196,212,.3);border-radius:4px;box-shadow:0 0 20px rgba(3,8,14,.8),0 0 14px rgba(11,196,212,.08);}
.wf-narr-hdr{display:flex;align-items:center;padding:8px 12px;font-family:'IBM Plex Mono',monospace;font-size:9px;font-weight:700;letter-spacing:.14em;color:#7FE8F2;border-bottom:1px solid rgba(11,196,212,.18);text-shadow:0 0 8px rgba(11,196,212,.4);}
.wf-narr-x{margin-left:auto;cursor:pointer;color:#5F8FA3;font-size:13px;line-height:1;}
.wf-narr-x:hover{color:#FF8A85;}
.wf-narr-body{padding:4px 0 8px;}
.wf-narr-row{display:flex;align-items:baseline;gap:6px;padding:4px 12px;font-family:'IBM Plex Mono',monospace;font-size:8.8px;cursor:pointer;line-height:1.5;}
.wf-narr-row:hover{background:rgba(11,196,212,.08);}
.wf-narr-num{color:#3AAFC2;font-size:8px;flex-shrink:0;}
.wf-narr-src{color:#C8E4EC;font-weight:600;}
.wf-narr-arrow{color:#5F8FA3;flex-shrink:1;}
.wf-narr-dst{color:#C8E4EC;font-weight:600;}

.wf-pipebar{position:absolute;left:50%;transform:translateX(-50%);bottom:14px;z-index:4;display:flex;align-items:center;gap:9px;background:rgba(6,15,24,.97);border:1px solid var(--teal);border-radius:4px;padding:9px 13px;box-shadow:0 0 24px rgba(11,196,212,.25);}
.wf-pipebar-info{font-family:'IBM Plex Mono',monospace;font-size:8.5px;font-weight:700;letter-spacing:.1em;color:#7FE8F2;}

.wf-conn-row{display:flex;align-items:center;gap:6px;padding:3px 2px;font-size:10.5px;cursor:pointer;border-radius:2px;}
.wf-conn-row:hover{background:rgba(11,196,212,.08);}
.wf-conn-dir{color:var(--teal);font-weight:700;flex-shrink:0;}
.wf-conn-node{color:#C8E4EC;font-weight:600;}
.wf-conn-lbl{margin-left:auto;color:#5F8FA3;font-family:'IBM Plex Mono',monospace;font-size:8px;letter-spacing:.04em;}

/* ── WORKFLOW v4: stage headers · step badges · flows/steps rail ── */
.wf-colhdr{fill:rgba(95,143,163,.55);font-family:'IBM Plex Mono',monospace;font-size:10px;font-weight:700;letter-spacing:.28em;pointer-events:none;}
.wf-ebadge circle{stroke-width:1.4;filter:drop-shadow(0 0 5px rgba(11,196,212,.5));}
.wf-ebadge text{font-family:'IBM Plex Mono',monospace;font-size:8px;font-weight:700;pointer-events:none;}
.wf-step{display:flex;gap:9px;padding:7px 12px;cursor:pointer;border-bottom:1px solid rgba(11,196,212,.07);}
.wf-step:hover{background:rgba(11,196,212,.07);}
.wf-step-num{flex-shrink:0;width:17px;height:17px;border:1.3px solid;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'IBM Plex Mono',monospace;font-size:8.5px;font-weight:700;margin-top:1px;}
.wf-step-body{min-width:0;}
.wf-step-route{font-family:'IBM Plex Mono',monospace;font-size:8.5px;letter-spacing:.03em;color:#8FB0C0;}
.wf-step-action{font-size:11px;font-weight:700;color:#E8F4F8;margin-top:1px;}
.wf-step-desc{font-size:9.5px;color:#5F8FA3;line-height:1.5;margin-top:2px;}
.wf-flow-row{display:flex;align-items:center;gap:9px;padding:8px 12px;cursor:pointer;border-bottom:1px solid rgba(11,196,212,.07);}
.wf-flow-row:hover{background:rgba(11,196,212,.07);}
.wf-flow-name{font-size:11.5px;font-weight:700;color:#E8F4F8;}
.wf-flow-meta{font-family:'IBM Plex Mono',monospace;font-size:8px;color:#5F8FA3;letter-spacing:.06em;margin-top:1px;}
.wf-flow-row .wf-chip-x{margin-left:auto;}
.wf-flow-hint{padding:9px 12px;font-family:'IBM Plex Mono',monospace;font-size:8px;color:#4A7183;letter-spacing:.06em;}

/* ── PERMIT TRANSFERS: PA property-card slot (transfers tab only) ── */
.ptcard-slot{display:flex;align-items:center;gap:6px;min-height:24px;}
.ptcard-attach{background:#185FA5;color:#fff;border:none;border-radius:3px;padding:2px 10px;font-size:11px;font-weight:700;cursor:pointer;height:24px;}
.ptcard-attach:hover{background:#134c84;}
.ptcard-hint{font-size:9px;color:#7a9088;font-style:italic;}
.ptcard-view{display:inline-flex;align-items:center;gap:4px;background:#e8f5f0;border:0.5px solid #0F6E56;color:#0F6E56;border-radius:3px;padding:2px 8px;font-size:11px;font-weight:700;text-decoration:none;}
.ptcard-view:hover{background:#d8efe6;}
.ptcard-clear{background:none;border:none;color:#c94f4f;cursor:pointer;font-size:13px;font-weight:700;padding:0 4px;}
