#civicview360-root.cv360{--cv-bg:#f4f7fb;--cv-ink:#172033;--cv-muted:#667085;--cv-card:#fff;--cv-line:#e5e7eb;--cv-brand:#0f62fe;--cv-dark:#101828;--cv-good:#027a48;--cv-warn:#b54708;--cv-bad:#b42318;box-sizing:border-box;font-family:Arial,Helvetica,sans-serif;background:var(--cv-bg);color:var(--cv-ink);display:flex;width:100%;min-height:720px;border-radius:16px;overflow:hidden;box-shadow:0 8px 30px rgba(0,0,0,.08)}
#civicview360-root.cv360 *{box-sizing:border-box}.cv-mobile-header{display:none}.cv-sidebar{width:285px;background:var(--cv-dark);color:#fff;padding:22px;flex:0 0 285px}.cv-brand{display:flex;gap:12px;align-items:center;margin-bottom:20px}.cv-logo{width:48px;height:48px;border-radius:14px;background:var(--cv-brand);display:grid;place-items:center;font-weight:800}.cv-brand h2{font-size:20px;line-height:1.1;margin:0;color:#fff}.cv-brand p{margin:4px 0 0;color:#b6c0cf;font-size:12px}.cv-nav button{display:block;width:100%;text-align:left;background:transparent;color:#d0d5dd;border:0;padding:11px 12px;border-radius:10px;margin:3px 0;cursor:pointer;font-size:14px}.cv-nav button.active,.cv-nav button:hover{background:#1d2939;color:#fff}.cv-main{width:calc(100% - 285px);padding:28px}.cv-hero{background:#fff;border:1px solid var(--cv-line);border-radius:18px;padding:22px;margin-bottom:18px}.cv-hero span{font-size:12px;font-weight:800;color:var(--cv-brand);text-transform:uppercase;letter-spacing:.07em}.cv-hero h1{font-size:30px;line-height:1.15;margin:6px 0;color:var(--cv-ink)}.cv-hero p,.cv-panel p{color:var(--cv-muted);line-height:1.5}.cv-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.cv360 button,.cv360 input,.cv360 select{font:inherit}.cv360 button{border:1px solid var(--cv-line);background:#fff;border-radius:10px;padding:10px 14px;cursor:pointer;font-weight:700;color:var(--cv-ink)}.cv360 .cv-primary{background:var(--cv-brand);border-color:var(--cv-brand);color:#fff}.cv-page{display:none}.cv-page.active{display:block}.cv-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:18px}.cv-grid2{display:grid;grid-template-columns:1.1fr .9fr;gap:16px}.cv-card,.cv-panel{background:var(--cv-card);border:1px solid var(--cv-line);border-radius:18px;padding:20px;box-shadow:0 8px 24px rgba(16,24,40,.05);margin-bottom:18px}.cv-card span{display:block;color:var(--cv-muted);font-size:13px}.cv-card strong{display:block;font-size:32px;margin:7px 0}.cv-card small{color:var(--cv-good)}.cv-panel h3{margin:0 0 12px;font-size:21px;color:var(--cv-ink)}.cv-table-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.cv360 table{width:100%;border-collapse:collapse;min-width:680px}.cv360 th,.cv360 td{padding:12px;border-bottom:1px solid var(--cv-line);text-align:left;font-size:14px;vertical-align:top}.cv360 th{font-size:12px;text-transform:uppercase;color:var(--cv-muted)}.cv-badge{display:inline-block;padding:5px 9px;border-radius:999px;font-size:12px;font-weight:800}.cv-public{background:#dcfae6;color:var(--cv-good)}.cv-review{background:#fff4e5;color:var(--cv-warn)}.cv-restricted{background:#fee4e2;color:var(--cv-bad)}.cv-search,.cv360 input,.cv360 select{width:100%;padding:12px;border:1px solid var(--cv-line);border-radius:10px;margin:8px 0 14px;background:#fff;color:var(--cv-ink)}.cv-bar-row{margin:12px 0}.cv-bar-label{display:flex;justify-content:space-between;gap:12px;font-size:13px;margin-bottom:5px}.cv-bar-track{height:13px;background:#edf2f7;border-radius:999px;overflow:hidden}.cv-bar-fill{height:100%;background:var(--cv-brand);border-radius:999px}.cv-rating{font-size:26px;line-height:1.7}.cv-map{height:280px;border-radius:18px;background:linear-gradient(135deg,#eef4ff,#fff);border:1px dashed #98a2b3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--cv-muted);text-align:center}.cv-map b{font-size:26px;color:var(--cv-ink)}.cv-chat{min-height:260px;background:#f8fafc;border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:12px;overflow:auto}.cv-bot,.cv-user{padding:12px 14px;border-radius:14px;max-width:88%}.cv-bot{background:#fff;border:1px solid var(--cv-line)}.cv-user{background:var(--cv-brand);color:#fff;margin-left:auto}.cv-chat-input{display:flex;gap:10px;margin-top:12px}.cv-chat-input input{margin:0}
@media(max-width:900px){#civicview360-root.cv360{display:block;border-radius:0;min-height:100vh}.cv-mobile-header{display:flex;position:sticky;top:0;z-index:10;background:var(--cv-dark);color:#fff;padding:14px 16px;justify-content:space-between;align-items:center}.cv-mobile-header span{display:block;color:#b6c0cf;font-size:12px}.cv-menu-toggle{background:#fff!important;color:#101828!important}.cv-sidebar{display:none;width:100%;padding:14px;min-height:auto}.cv-sidebar.open{display:block}.cv-brand{display:none}.cv-nav{display:grid;grid-template-columns:1fr 1fr;gap:6px}.cv-nav button{font-size:13px;padding:10px;background:#1d2939}.cv-main{width:100%;padding:14px}.cv-hero{padding:18px;border-radius:14px}.cv-hero h1{font-size:24px}.cv-cards,.cv-grid2{grid-template-columns:1fr}.cv-card,.cv-panel{padding:16px;border-radius:14px}.cv-card strong{font-size:28px}.cv-actions button,.cv-chat-input{width:100%}.cv-chat-input{display:block}.cv360 table{min-width:620px}.cv-map{height:220px}.cv-map b{font-size:20px}}
.cv-dept-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.cv-dept-card{background:#fff;border:1px solid var(--cv-line,#e5e7eb);border-radius:16px;padding:18px;box-shadow:0 8px 24px rgba(16,24,40,.05)}.cv-dept-card h3{margin:0 0 8px;color:var(--cv-ink,#172033)}.cv-dept-card p{color:var(--cv-muted,#667085);line-height:1.45}.cv-dept-meta{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.cv-dept-meta span{background:#eef4ff;color:#0f62fe;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:800}.cv-dept-card code{display:block;background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;padding:8px;white-space:normal}.cv360-dept-page{display:block!important;min-height:auto!important;padding:0;background:#f4f7fb;border-radius:16px;box-shadow:none}@media(max-width:900px){.cv-dept-grid{grid-template-columns:1fr}.cv360-dept-page{border-radius:0}.cv-dept-card{padding:14px}}
.cv-dept-live{position:relative;overflow:hidden}.cv-dept-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.cv-live-pill{background:#dcfae6;color:#027a48;border-radius:999px;padding:6px 10px;font-weight:800;font-size:12px;white-space:nowrap}.cv-dept-mini{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0}.cv-dept-mini div{background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;padding:10px;color:#667085;font-size:12px}.cv-dept-mini b{color:#172033}.cv-dept-report-table{min-width:520px!important}.cv-dept-actions{margin-top:12px;color:#667085;font-size:12px}.cv-dept-actions code{display:inline-block;background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;padding:6px 8px;white-space:normal;color:#172033}@media(max-width:900px){.cv-dept-mini{grid-template-columns:1fr}.cv-dept-top{display:block}.cv-live-pill{display:inline-block;margin-top:8px}.cv-dept-report-table{min-width:560px!important}}

.cv-dept-actions{display:flex;flex-direction:column;gap:8px;margin-top:14px;font-size:13px;color:#64748b}.cv-dept-open{display:inline-flex;align-items:center;justify-content:center;padding:10px 12px;border-radius:12px;background:#eef6ff;color:#0b63ce;font-weight:800;text-decoration:none;border:1px solid #dbeafe}.cv-sync-note{line-height:1.4}.cv-dept-report-table td,.cv-dept-report-table th{white-space:normal}.cv-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.cv360 table{min-width:520px}
@media(max-width:760px){.cv360 .cv-dept-grid{grid-template-columns:1fr}.cv360 .cv-dept-card{overflow:hidden}.cv360 table{font-size:12px}.cv-dept-mini{grid-template-columns:1fr}.cv360 .cv-hero h1{font-size:28px}}
.cv-director-panel{border:1px solid rgba(37,99,235,.18)!important;background:linear-gradient(180deg,#ffffff,#f8fbff)!important}
.cv-front-form{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:18px;box-shadow:0 8px 24px rgba(15,23,42,.05)}
.cv-front-form h4{margin:0 0 12px;font-size:18px}
.cv-front-form label{display:block;margin:10px 0 5px;font-weight:700;font-size:13px;color:#334155}
.cv-front-form input,.cv-front-form select,.cv-front-form textarea{width:100%;box-sizing:border-box;border:1px solid #cbd5e1;border-radius:10px;padding:10px;background:#fff;color:#111827}
.cv-front-form button{margin-top:12px;width:100%}
@media(max-width:760px){.cv-front-form{padding:14px}.cv-director-panel .cv-grid2{grid-template-columns:1fr!important}}
.cv-ops-panel .cv-front-form select,.cv-ops-panel .cv-front-form input,.cv-ops-panel .cv-front-form textarea{width:100%;box-sizing:border-box}.cv-record-feed{background:#f8fafc;border:1px solid #e5e7eb;border-radius:16px;padding:18px}.cv-ops-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px;margin:12px 0 0 18px}.cv-check{display:flex!important;gap:8px;align-items:center;margin:12px 0}.cv-check input{width:auto!important}@media(max-width:800px){.cv-ops-list{grid-template-columns:1fr}.cv-record-feed{padding:12px}}

.cv-sync-status{background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;padding:12px;margin-top:12px;color:#475569;font-size:13px;line-height:1.45}.cv-sync-status strong{color:#0f172a}.cv-sync-status span{display:block;margin-top:3px}

/* v2.5 report submit visibility and sync confirmation fix */
.cv-front-form{overflow:visible!important;position:relative!important;padding-bottom:24px!important;margin-bottom:24px!important}
.cv-front-form textarea{min-height:180px!important;display:block!important;margin-bottom:18px!important}
.cv-submit-row{display:block!important;clear:both!important;margin-top:18px!important;padding-top:12px!important;border-top:1px solid #e5e7eb!important}
.cv360 input.cv-submit,.cv-front-form .cv-submit{display:block!important;width:100%!important;background:#0f62fe!important;border:1px solid #0f62fe!important;color:#fff!important;border-radius:12px!important;padding:14px 16px!important;font-weight:800!important;cursor:pointer!important;appearance:none!important;-webkit-appearance:none!important;min-height:52px!important;line-height:1.2!important}
.cv360 input.cv-submit:hover,.cv-front-form .cv-submit:hover{filter:brightness(.95)!important}
.cv-sync-success{background:#ecfdf3;border:1px solid #abefc6;color:#027a48;border-radius:14px;padding:14px 16px;margin:0 0 16px;font-size:14px;line-height:1.45}
.cv-sync-success strong{display:block;color:#027a48;margin-bottom:2px}
@media(max-width:760px){.cv-front-form{padding-bottom:28px!important}.cv360 input.cv-submit{font-size:16px!important}}
.cv360-wrap{max-width:1180px;margin:0 auto;padding:28px 16px;font-family:Inter,Arial,sans-serif;color:#0f172a}.cv360-hero{background:#fff;border:1px solid #e5e7eb;border-radius:22px;padding:28px;margin-bottom:22px;box-shadow:0 12px 32px rgba(15,23,42,.07)}.cv360-hero span{text-transform:uppercase;font-weight:800;font-size:12px;letter-spacing:.08em}.cv360-hero h1{margin:6px 0 8px;font-size:36px;line-height:1.1}.cv360-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin:18px 0}.cv-card,.cv360-card{background:#fff;border:1px solid #e5e7eb;border-radius:18px;padding:20px;box-shadow:0 10px 28px rgba(15,23,42,.06);overflow:hidden}.cv-card small{font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#64748b}.cv-card h2,.cv-card h3{margin:8px 0}.cv-card strong{font-size:28px}.cv-pill{display:inline-block;background:#eef5ff;color:#005de8;border-radius:999px;padding:6px 10px;font-weight:800;font-size:13px;margin:2px}.cv360-table-wrap{overflow-x:auto;background:#fff;border:1px solid #e5e7eb;border-radius:16px}.cv360-table{width:100%;border-collapse:collapse;min-width:720px}.cv360-table th,.cv360-table td{padding:13px 14px;border-bottom:1px solid #edf2f7;text-align:left}.cv360-table th{font-size:12px;text-transform:uppercase;letter-spacing:.05em}.cv360-btn,button.cv360-btn{background:#14a83b;color:#fff;border:0;border-radius:10px;padding:12px 18px;font-weight:800;cursor:pointer}.cv-card input,.cv-card select,.cv-card textarea,.cv360-card input,.cv360-card select,.cv360-card textarea{width:100%;max-width:100%;border:1px solid #cbd5e1;border-radius:10px;padding:11px;margin-top:5px}@media(max-width:700px){.cv360-hero h1{font-size:28px}.cv360-wrap{padding:16px 10px}.cv-card,.cv360-card{padding:16px}}
.cv360-search-form input,.cv360-search-form select{width:100%;padding:12px;border:1px solid #cbd5e1;border-radius:10px;background:#fff}.cv360-btn-secondary{background:#f1f5f9!important;color:#0f172a!important;text-decoration:none;display:inline-block}.cv360-search-card label{font-weight:700;color:#0f172a}

/* RC1.1 tab visibility fix */
.cv-tabs{display:flex!important;flex-wrap:wrap!important;gap:10px!important;margin:18px 0!important;padding:10px!important;background:#f1f5f9!important;border:1px solid #e5e7eb!important;border-radius:18px!important;overflow:visible!important}
.cv-tabs .cv-tab,.cv360 .cv-tabs .cv-tab,button.cv-tab{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:52px!important;padding:13px 18px!important;border-radius:14px!important;border:1px solid #d0d7e2!important;background:#ffffff!important;color:#0f172a!important;font-weight:900!important;font-size:15px!important;line-height:1.2!important;text-decoration:none!important;opacity:1!important;visibility:visible!important;text-indent:0!important;letter-spacing:0!important;box-shadow:0 3px 8px rgba(15,23,42,.04)!important;appearance:none!important;-webkit-appearance:none!important}
.cv-tabs .cv-tab:hover,.cv-tabs .cv-tab:focus{background:#eef5ff!important;color:#005de8!important;border-color:#bcd7ff!important;outline:2px solid rgba(15,98,254,.2)!important;outline-offset:1px!important}
.cv-tabs .cv-tab.active{background:#0f62fe!important;border-color:#0f62fe!important;color:#ffffff!important;box-shadow:0 8px 18px rgba(15,98,254,.25)!important}
.cv-section{display:none!important}.cv-section.active{display:block!important}
@media(max-width:700px){.cv-tabs{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important}.cv-tabs .cv-tab,.cv360 .cv-tabs .cv-tab{width:100%!important;font-size:14px!important;padding:12px 10px!important}}


/* RC1.2 hard tab text visibility fix: defeats theme button text overrides */
.cv360-wrap .cv-tabs button.cv-tab,
.cv360-wrap .cv-tabs .cv-tab,
#civicview360-root .cv-tabs button.cv-tab{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:150px!important;
  min-height:56px!important;
  padding:14px 18px!important;
  border-radius:14px!important;
  border:1px solid #d0d7e2!important;
  background:#ffffff!important;
  color:#0f172a!important;
  opacity:1!important;
  visibility:visible!important;
  text-indent:0!important;
  font-size:0!important;
  line-height:1!important;
  overflow:visible!important;
  text-transform:none!important;
}
.cv360-wrap .cv-tabs button.cv-tab span{
  display:none!important;
}
.cv360-wrap .cv-tabs button.cv-tab::before{
  content:attr(data-label)!important;
  display:block!important;
  color:#0f172a!important;
  font-size:16px!important;
  font-weight:900!important;
  line-height:1.2!important;
  opacity:1!important;
  visibility:visible!important;
  text-indent:0!important;
  text-transform:none!important;
  letter-spacing:0!important;
  white-space:nowrap!important;
}
.cv360-wrap .cv-tabs button.cv-tab.active,
#civicview360-root .cv-tabs button.cv-tab.active{
  background:#0f62fe!important;
  border-color:#0f62fe!important;
}
.cv360-wrap .cv-tabs button.cv-tab.active::before{
  color:#ffffff!important;
}
@media(max-width:700px){.cv360-wrap .cv-tabs button.cv-tab{min-width:0!important;width:100%!important}.cv360-wrap .cv-tabs button.cv-tab::before{font-size:14px!important}}


/* RC1.3 permanent tab label fix: show actual span labels, no pseudo dependency */
.cv360-wrap .cv-tabs button.cv-tab,
.cv360-wrap .cv-tabs .cv-tab,
#civicview360-root .cv-tabs button.cv-tab{
  font-size:16px!important;
  color:#0f172a!important;
  background:#ffffff!important;
  min-width:150px!important;
  min-height:56px!important;
  padding:14px 18px!important;
  line-height:1.2!important;
}
.cv360-wrap .cv-tabs button.cv-tab span,
#civicview360-root .cv-tabs button.cv-tab span{
  display:inline-block!important;
  color:#0f172a!important;
  opacity:1!important;
  visibility:visible!important;
  font-size:16px!important;
  font-weight:900!important;
  line-height:1.2!important;
  text-indent:0!important;
  white-space:nowrap!important;
}
.cv360-wrap .cv-tabs button.cv-tab::before,
#civicview360-root .cv-tabs button.cv-tab::before{content:none!important;display:none!important;}
.cv360-wrap .cv-tabs button.cv-tab.active,
#civicview360-root .cv-tabs button.cv-tab.active{background:#0f62fe!important;border-color:#0f62fe!important;color:#ffffff!important;}
.cv360-wrap .cv-tabs button.cv-tab.active span,
#civicview360-root .cv-tabs button.cv-tab.active span{color:#ffffff!important;}
@media(max-width:700px){.cv360-wrap .cv-tabs button.cv-tab{min-width:0!important;width:100%!important}.cv360-wrap .cv-tabs button.cv-tab span{font-size:14px!important}}

/* RC3 software development build */
.cv360-app{display:flex;min-height:80vh;background:#f6f7fb;border-radius:24px;overflow:hidden;border:1px solid #e6e8f0;margin:20px 0}
.cv360-sidebar{width:260px;background:#101827;color:#fff;padding:20px;flex:0 0 260px}
.cv360-brand{display:flex;flex-direction:column;gap:4px;margin-bottom:18px;font-size:20px}.cv360-brand span{font-size:12px;color:#b8c2d6}.cv360-sidebar nav{display:flex;flex-direction:column;gap:8px}.cv360-sidebar a{color:#eaf0ff;text-decoration:none;padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.06);font-weight:700}.cv360-sidebar a.active,.cv360-sidebar a:hover{background:#fff;color:#101827}.cv360-sidebar-note{font-size:12px;color:#c6d0e4;margin-top:20px;line-height:1.4}.cv360-main{flex:1;padding:22px;min-width:0}.cv360-inline-form{margin:0}.cv-mini-btn,.cv360-cert{background:#15223a;color:#fff;border:0;border-radius:9px;padding:7px 10px;font-size:12px;font-weight:800;cursor:pointer;white-space:nowrap}.cv360-cert{background:#3554b8}.cv360-table td{vertical-align:top}.cv-tab,.cv-tab span,.cv-tabs button,.cv-tabs button span{color:#101827!important;opacity:1!important;visibility:visible!important;text-shadow:none!important}.cv-tab.active,.cv-tab.active span{color:#fff!important}.cv360-law-modal,.cv360-cert-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:999999;display:flex;align-items:center;justify-content:center;padding:20px}.cv360-law-modal-inner,.cv360-cert-modal{background:#fff;max-width:760px;width:100%;border-radius:22px;padding:24px;box-shadow:0 25px 80px rgba(0,0,0,.25);color:#111}.cv360-law-modal-inner button,.cv360-cert-close{margin-top:15px;background:#101827;color:#fff;border:0;border-radius:10px;padding:10px 16px;font-weight:800}.cv360-table-wrap{overflow-x:auto}@media(max-width:800px){.cv360-app{display:block}.cv360-sidebar{width:auto}.cv360-sidebar nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.cv360-main{padding:14px}}
