/* v0.17 Law Enforcement + cross-discipline operational additions */
.home-card-law .home-workspace-icon{stroke:#f6c344}
.law-badge-icon{fill:none;stroke-width:1.8}
.law-workspace-shell,.law-dispatch-page{min-height:100%}
.law-header-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.law-terminal-grid,.law-dispatch-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:12px}
.law-terminal-grid.single{grid-template-columns:1fr}
.law-stack{display:grid;gap:12px}
.law-card{background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:14px}
.law-card h2,.law-card h3{margin:0}
.law-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:12px}
.law-unit-hero{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center}
.law-unit-identity strong{font-size:24px;display:block}
.law-unit-identity small{display:block;color:var(--muted);margin-top:3px}
.law-status-chip{display:inline-flex;align-items:center;justify-content:center;min-width:120px;padding:7px 10px;border-radius:4px;border:1px solid var(--line);font-weight:900}
.law-status-grid{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}
.law-status-grid button{min-width:112px}
.law-status-available{background:#fff;color:#000!important}
.law-status-limited{outline:1px dashed #f4b400}
.law-status-unavailable{opacity:.9}
.law-duty-actions,.law-inline-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap}
.law-incident-list,.law-unit-board,.law-bolo-list{display:grid;gap:8px}
.law-incident-row,.law-unit-row,.law-bolo-row{border:1px solid var(--line);background:var(--panel-soft,#111820);border-radius:5px;padding:10px}
.law-incident-row{cursor:pointer}
.law-incident-row:hover,.law-unit-row:hover{border-color:#4b6071}
.law-row-main{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.law-row-copy strong{display:block}
.law-row-copy small{display:block;color:var(--muted);margin-top:3px}
.law-unit-row.grouped{border-left:4px solid #f6c344}
.law-group-members{display:flex;gap:5px;flex-wrap:wrap;margin-top:7px}
.law-group-members .pill{font-size:10px}
.law-filter-bar{display:grid;grid-template-columns:1fr 180px 180px auto;gap:8px;margin-bottom:10px}
.law-filter-bar input,.law-filter-bar select{width:100%}
.law-note-list{display:grid;gap:7px;max-height:330px;overflow:auto}
.law-note{border-left:3px solid var(--line);padding:7px 9px;background:rgba(255,255,255,.025)}
.law-note small{display:block;color:var(--muted);margin-bottom:3px}
.law-note-form{display:grid;grid-template-columns:1fr auto;gap:7px;margin-top:10px}
.law-note-form textarea{min-height:58px}
.law-assignment-banner{border:1px solid #d4a017;background:rgba(212,160,23,.12);padding:12px;border-radius:5px;margin-bottom:12px}
.law-status-check-due{animation:lawStatusPulse 1s step-end infinite;border-color:#ff3b30!important;box-shadow:0 0 0 1px #ff3b30 inset}
@keyframes lawStatusPulse{50%{background:rgba(255,59,48,.18)}}
.law-global-status-check{border:2px solid #ff3b30;background:rgba(255,59,48,.12);padding:9px;border-radius:5px;margin-bottom:9px}
.law-activity-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px;margin-bottom:12px}
.law-activity-person{border:1px solid var(--line);padding:10px;border-radius:5px}
.law-admin-grid{display:grid;gap:12px}
.law-admin-agency-picker{max-width:420px}
.v017-dialog{width:min(760px,94vw);max-height:90vh;overflow:auto}
/* Matches the Fire incident dialog exactly — see --incident-dialog-width in styles.css. */
.law-incident-dialog{width:var(--incident-dialog-width)}
.law-group-dialog{width:min(680px,94vw)}
.global-panic-banner{position:sticky;top:0;z-index:1500;padding:10px 16px;text-align:center;font-weight:1000;letter-spacing:.05em;border-bottom:2px solid #000;animation:panicBannerFlash .8s step-end infinite}
@keyframes panicBannerFlash{0%,49%{background:#ff1e1e;color:#fff}50%,100%{background:#ffe600;color:#000}}
.panic-action-button{background:#b00020!important;color:#fff!important;border-color:#ff4d62!important;font-weight:1000}
.panic-modal-dialog{width:min(720px,94vw);max-width:720px;border:4px solid #000;padding:0;background:#111;color:#fff}
.panic-modal-dialog::backdrop{background:rgba(0,0,0,.85)}
.panic-modal-content{padding:26px;text-align:center;animation:panicModalFlash .8s step-end infinite}
@keyframes panicModalFlash{0%,49%{background:#b60000;color:#fff}50%,100%{background:#ffd900;color:#000}}
.panic-modal-title{font-size:42px;font-weight:1000;letter-spacing:.08em;margin-bottom:16px}
.panic-modal-content strong{font-size:24px;display:block}
.panic-modal-content small{display:block;margin:6px 0}
.panic-ack-button{margin-top:18px;font-size:18px;padding:12px 24px}
.panic-clear-btn{margin-left:10px}
.law-profile-list{display:grid;gap:8px;margin-top:10px}
.law-profile-row{border:1px solid var(--line);padding:10px;border-radius:5px;display:flex;justify-content:space-between;gap:10px;align-items:center}
.law-profile-row.selected{border-color:#4fa3ff;box-shadow:0 0 0 1px #4fa3ff inset}
.law-profile-meta small{display:block;color:var(--muted)}
.law-profile-editor{display:grid;gap:10px;margin-top:12px}
.law-profile-editor .form-grid{margin-top:0}
.status-display-preview{display:inline-flex;padding:5px 9px;border-radius:4px;font-weight:900;border:1px solid rgba(255,255,255,.25)}
.law-command-help{display:grid;gap:5px}
.law-command-help code{background:#0d141a;padding:5px 7px;border-radius:3px}
@media(max-width:980px){.law-terminal-grid,.law-dispatch-grid{grid-template-columns:1fr}.law-filter-bar{grid-template-columns:1fr 1fr}.law-filter-bar input{grid-column:1/-1}}
@media(max-width:620px){.law-filter-bar{grid-template-columns:1fr}.panic-modal-title{font-size:30px}.law-unit-hero{grid-template-columns:1fr}}

/* v0.17.1 Law terminal parity refinements */
.law-services-menu-wrap{position:relative}
.law-services-menu{min-width:210px}
.law-services-menu button.danger{color:#ffc5c5}
.law-duty-empty{max-width:760px;margin:42px auto}
.law-duty-profile-select{width:min(540px,100%);text-align:left}
.law-current-assignment{display:grid;gap:12px}
.law-current-call-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.law-current-call-head small{display:block;color:var(--muted);margin-top:4px}
.law-terminal-assignment-actions{display:flex;gap:8px;flex-wrap:wrap}
.law-board-head-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.law-board-filter-menu-wrap{position:relative}
.law-board-filter-menu-wrap .unit-board-filter-menu{right:0;left:auto;min-width:360px;z-index:60}
.law-filter-search{margin-bottom:10px}
.law-filter-search input{width:100%}
.law-unit-elapsed{display:block;text-align:right;margin-top:4px}
.law-incident-detail-head{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:start}
.law-incident-detail-head .profile-readonly-grid{margin:0}
.law-command-disabled{opacity:.58}
.law-command-disabled input{cursor:not-allowed}

.panic-action-button{
  width:42px!important;
  min-width:42px!important;
  height:42px!important;
  padding:0!important;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#b00020!important;
  border-color:#ff4d62!important;
}
.panic-beacon-icon{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.panic-action-button:not([hidden]) .panic-beacon-icon{animation:panicBeaconPulse .8s step-end infinite}
@keyframes panicBeaconPulse{0%,49%{filter:drop-shadow(0 0 0 transparent)}50%,100%{filter:drop-shadow(0 0 5px currentColor)}}

/* Law rows/cards are explicitly themed so light mode never inherits dark-only fallbacks. */
body[data-theme="light"] .law-card,
body[data-theme="light"] .law-incident-row,
body[data-theme="light"] .law-unit-row,
body[data-theme="light"] .law-bolo-row,
body[data-theme="light"] .law-profile-row,
body[data-theme="light"] .law-activity-person{
  background:#fff;
  color:#17212b;
  border-color:#cbd5df;
}
body[data-theme="light"] .law-incident-row:hover,
body[data-theme="light"] .law-unit-row:hover{background:#f4f7fa;border-color:#8ea0b2}
body[data-theme="light"] .law-row-copy small,
body[data-theme="light"] .law-profile-meta small,
body[data-theme="light"] .law-card .muted,
body[data-theme="light"] .law-unit-elapsed{color:#5b6875!important}
body[data-theme="light"] .law-note{background:#f7f9fb;border-color:#cbd5df}
body[data-theme="light"] .law-command-help code{background:#eef2f6;color:#17212b}
body[data-theme="light"] .law-assignment-banner{background:#fff6d8;color:#3a2d00;border-color:#d4a017}
body[data-theme="light"] .law-board-filter-menu-wrap .unit-board-filter-menu{background:#fff;color:#17212b;border-color:#cbd5df}

@media(max-width:760px){
  .law-incident-detail-head{grid-template-columns:1fr}
  .law-board-filter-menu-wrap .unit-board-filter-menu{right:auto;left:0;min-width:min(360px,86vw)}
}

/* v0.17.2 operational polish */
.panic-action-button[hidden]{display:none!important}
.panic-action-button{
  background:#2a3138!important;
  border-color:#58636e!important;
  color:#d9e0e6!important;
  box-shadow:none!important;
}
.panic-action-button .panic-beacon-icon{animation:none!important;filter:none!important}
.panic-action-button.panic-originator-active{
  background:#c9182b!important;
  border-color:#ff5b6c!important;
  color:#fff!important;
  animation:panicOriginatorButton .7s step-end infinite;
}
.panic-action-button.panic-originator-active .panic-beacon-icon{animation:panicBeaconPulse .7s step-end infinite!important}
@keyframes panicOriginatorButton{0%,49%{background:#c9182b!important}50%,100%{background:#ff3348!important}}
body[data-theme="light"] .panic-action-button{
  background:#fff!important;
  border-color:#cbd5df!important;
  color:#313943!important;
}
body[data-theme="light"] .panic-action-button.panic-originator-active{
  background:#d71932!important;
  border-color:#a70d22!important;
  color:#fff!important;
}
.law-dispatch-services-menu-wrap{position:relative}
.law-incident-head-actions{display:flex;align-items:center;gap:7px;margin-left:auto}
.law-inline-full-call{width:100%;max-width:none}
.law-inline-full-call .incident-tab-panel{min-height:220px}
.law-incident-details{margin-top:10px}
.law-terminal-clear-actions{justify-content:flex-end}

.law-dispatch-table-wrap,.law-active-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:5px}
.law-dispatch-table,.law-active-table{width:100%;border-collapse:collapse;table-layout:auto}
.law-dispatch-table th,.law-dispatch-table td,.law-active-table th,.law-active-table td{padding:7px 8px;border-bottom:1px solid var(--line);vertical-align:middle;text-align:left}
.law-dispatch-table th,.law-active-table th{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);background:rgba(255,255,255,.025);white-space:nowrap}
.law-dispatch-table tbody tr:last-child td,.law-active-table tbody tr:last-child td{border-bottom:0}
.law-dispatch-table tbody tr:hover,.law-active-table tbody tr:hover{background:rgba(255,255,255,.035)}
.law-dispatch-table .law-unit-cell strong,.law-active-table .law-active-number strong{display:block;white-space:nowrap}
.law-dispatch-table .law-unit-cell small,.law-active-table small{display:block;color:var(--muted);margin-top:2px}
.law-dispatch-table .law-location-cell{min-width:120px;max-width:210px}
.law-dispatch-table .law-personnel-cell{min-width:170px;max-width:300px}
.law-dispatch-table .law-status-cell{min-width:145px}
.law-dispatch-table .dispatch-status-select{width:100%;min-width:125px}
.law-active-table .law-active-location{min-width:240px}
.law-active-table .law-active-units{min-width:150px;max-width:280px}
.law-active-table .law-active-actions{white-space:nowrap}
.law-active-unit-labels{font-weight:700}
.law-timing-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.law-timing-detail-grid .detail{min-height:72px}

body[data-theme="light"] .law-dispatch-table-wrap,
body[data-theme="light"] .law-active-table-wrap{border-color:#cbd5df;background:#fff;color:#17212b}
body[data-theme="light"] .law-dispatch-table th,
body[data-theme="light"] .law-active-table th{background:#f2f5f8;color:#5b6875;border-color:#d7dee5}
body[data-theme="light"] .law-dispatch-table td,
body[data-theme="light"] .law-active-table td{border-color:#e1e7ed}
body[data-theme="light"] .law-dispatch-table tbody tr:hover,
body[data-theme="light"] .law-active-table tbody tr:hover{background:#f4f7fa}

@media(max-width:760px){
  .law-timing-detail-grid{grid-template-columns:1fr}
  .law-incident-head-actions .small-btn{padding:5px 7px;font-size:11px}
}

/* v0.17.3 admin/profile refinements */
.status-color-input{
  width:52px !important;
  min-width:52px !important;
  height:34px !important;
  min-height:34px !important;
  padding:2px !important;
  box-sizing:border-box;
}
.admin-rank-inline{
  display:flex;
  align-items:center;
  gap:6px;
  flex-wrap:wrap;
}
.admin-rank-inline select{min-width:140px;flex:1 1 140px;}
.custom-rank-chip{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:3px 8px;
  border:1px solid var(--border);
  border-radius:999px;
  background:var(--panel-2);
  white-space:nowrap;
}
.law-priority-pill{white-space:nowrap;}
.preferences-notification-category{
  margin-top:12px;
  padding:10px 12px;
  border:1px solid var(--border);
  border-radius:10px;
  background:var(--panel-2);
}
.preferences-notification-category h4{margin:0 0 8px;}

.law-bolo-highlight{outline:2px solid var(--accent,#4ea1ff);outline-offset:-2px;}


/* v0.17.5 attachment + panic polish */
.law-self-attach-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}
.law-self-attach-options button{min-height:44px}
@media(max-width:620px){.law-self-attach-options{grid-template-columns:1fr}}


/* v0.17.6 Law live timers / status-check parity */
.law-status-control-inline{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:nowrap;
}
.law-status-control-inline .dispatch-status-select{
  flex:1 1 auto;
  min-width:120px;
}
.law-status-control-inline .law-unit-elapsed{
  flex:0 0 auto;
  white-space:nowrap;
  margin:0;
  font-variant-numeric:tabular-nums;
}
.law-check-countdown{
  font-variant-numeric:tabular-nums;
  white-space:nowrap;
  font-weight:700;
}
.law-board-check{
  display:flex!important;
  align-items:center;
  gap:6px;
  margin-top:4px!important;
  font-variant-numeric:tabular-nums;
}
.law-status-detail-line{margin-top:3px!important}
body[data-theme="light"] .law-check-countdown{color:#3d4a56}
@media(max-width:760px){
  .law-status-control-inline{align-items:flex-start;flex-direction:column;gap:4px}
}

/* v0.17.7 status-check controls */
.call-status-check-banner[hidden]{display:none !important;}
.law-status-check-section-title,
.status-check-section-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
.status-check-banner-actions{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}

/* v0.17.10 · compact Law unit taskbar identity strip */
#lawTaskbarCenter{min-width:0;overflow:hidden}
#lawTaskbarIdentity{max-width:none;width:100%;overflow:visible;text-overflow:clip}
.law-taskbar-info-strip{
  width:100%;
  display:grid;
  grid-template-columns:minmax(66px,.75fr) minmax(110px,1.25fr) minmax(64px,.7fr) minmax(92px,1fr) minmax(58px,.65fr) minmax(58px,.65fr) minmax(84px,1fr);
  gap:7px;
  align-items:end;
  text-align:center;
  white-space:nowrap;
}
.law-taskbar-info-cell{min-width:0;display:flex;flex-direction:column;gap:1px;overflow:hidden}
.law-taskbar-info-cell small{font-size:7px;line-height:1;color:var(--muted);font-weight:900;letter-spacing:.08em}
.law-taskbar-info-cell strong{font-size:10px;line-height:1.15;color:var(--text);font-weight:900;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.law-taskbar-info-cell .muted{font-size:10px}
.law-taskbar-check{font-variant-numeric:tabular-nums}
@media(max-width:1050px){
  .law-taskbar-info-strip{gap:4px;grid-template-columns:repeat(7,minmax(54px,1fr))}
  .law-taskbar-info-cell strong{font-size:9px}
  .law-taskbar-location{display:none}
  .law-taskbar-info-strip{grid-template-columns:repeat(6,minmax(54px,1fr))}
}


/* v0.17.11.1 privacy search-input normalization */
input.cad-privacy-search::-webkit-search-cancel-button,
input.cad-privacy-search::-webkit-search-decoration {
  -webkit-appearance: none;
  appearance: none;
}

/* v0.17.13 · compact Law identity + editable admin rows */
.law-taskbar-info-strip.law-taskbar-info-strip-compact{grid-template-columns:minmax(90px,1fr) minmax(72px,.8fr) minmax(120px,1.4fr);max-width:560px;margin:0 auto;gap:8px}
.clickable-admin-row{cursor:pointer}
.clickable-admin-row:hover{background:color-mix(in srgb,var(--panel) 78%,var(--text) 6%)}
.admin-link-button{appearance:none;border:0;background:transparent;color:var(--text);font:inherit;font-weight:800;padding:0;cursor:pointer;text-align:left}
.admin-link-button:hover{text-decoration:underline}

/* v0.17.13.2 */
.law-taskbar-info-strip-compact .law-taskbar-info-cell strong{font-size:1.12rem;line-height:1.15}
.law-incident-status-text{display:block;margin-top:5px;font-size:.82rem;letter-spacing:.06em;color:var(--muted);font-weight:900}
body[data-theme="light"] .law-incident-status-text{color:#39414a}

/* v0.17.13.3 activity reporting */
.activity-filter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:10px;align-items:end;margin:12px 0}.activity-filter-actions{display:flex;gap:6px;flex-wrap:wrap;align-items:end;padding-bottom:1px}.activity-search{min-width:230px}.activity-table-wrap{overflow:auto}.activity-table th{white-space:nowrap}.activity-sort{appearance:none;border:0;background:transparent;color:inherit;font:inherit;font-weight:700;padding:0;cursor:pointer;text-align:left}.activity-sort:hover{text-decoration:underline}.activity-pagination{display:flex;gap:12px;align-items:center;justify-content:flex-end;flex-wrap:wrap;margin-top:10px}.activity-empty{margin-top:12px}
