* { box-sizing: border-box; }
:root {
  --os-checkbox-size: 18px;
  --os-checkbox-radius: 4px;
  --os-checkbox-bg: #f8fbff;
  --os-checkbox-border: #7a96b7;
  --os-checkbox-accent: #2e7de0;
  --os-checkbox-check: #ffffff;
  --os-checkbox-hover-ring: rgba(46, 125, 224, 0.18);
  --os-checkbox-focus-ring: rgba(46, 125, 224, 0.28);
  --os-checkbox-disabled-bg: #d6dee9;
  --os-checkbox-disabled-border: #8a99ad;
  --os-checkbox-disabled-check: #eef3f8;
}
html, body { height: 100%; }
body {
  margin: 0;
  font-family: "Segoe UI", Arial, sans-serif;
  overflow: hidden;
  color: #fff;
  background: #000;
}
html.leads-print-route,
body.leads-print-route {
  height: auto;
  min-height: 100%;
  overflow: auto;
}
button, input, select { font-family: inherit; }
.hidden { display: none !important; }

input[type="checkbox"] {
  appearance: none;
  -webkit-appearance: none;
  width: var(--os-checkbox-size);
  height: var(--os-checkbox-size);
  min-height: 0;
  padding: 0;
  margin: 0 0.45rem 0 0;
  border: 1.5px solid var(--os-checkbox-border);
  border-radius: var(--os-checkbox-radius);
  background: var(--os-checkbox-bg);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.45);
  color: var(--os-checkbox-check);
  cursor: pointer;
  display: inline-grid;
  place-content: center;
  vertical-align: -0.18em;
  position: relative;
  flex: 0 0 auto;
  transition: border-color .16s ease, background-color .16s ease, box-shadow .16s ease, transform .12s ease;
}

input[type="checkbox"]::before {
  content: "";
  width: calc(var(--os-checkbox-size) * 0.58);
  height: calc(var(--os-checkbox-size) * 0.58);
  background: currentColor;
  clip-path: polygon(14% 50%, 0 64%, 38% 100%, 100% 20%, 86% 6%, 38% 67%);
  transform: scale(0);
  transform-origin: center;
  transition: transform .14s ease;
}

input[type="checkbox"]:checked,
input[type="checkbox"]:indeterminate {
  border-color: var(--os-checkbox-accent);
  background: var(--os-checkbox-accent);
}

input[type="checkbox"]:checked::before,
input[type="checkbox"]:indeterminate::before {
  transform: scale(1);
}

input[type="checkbox"]:indeterminate::before {
  width: calc(var(--os-checkbox-size) * 0.58);
  height: calc(var(--os-checkbox-size) * 0.16);
  clip-path: none;
  border-radius: 999px;
}

input[type="checkbox"]:hover:not(:disabled) {
  border-color: var(--os-checkbox-accent);
  box-shadow: 0 0 0 4px var(--os-checkbox-hover-ring), inset 0 1px 0 rgba(255, 255, 255, 0.45);
}

input[type="checkbox"]:focus-visible {
  outline: none;
  border-color: var(--os-checkbox-accent);
  box-shadow: 0 0 0 4px var(--os-checkbox-focus-ring), inset 0 1px 0 rgba(255, 255, 255, 0.45);
}

input[type="checkbox"]:active:not(:disabled) {
  transform: scale(0.94);
}

input[type="checkbox"]:disabled {
  cursor: not-allowed;
  border-color: var(--os-checkbox-disabled-border);
  background: var(--os-checkbox-disabled-bg);
  box-shadow: none;
  color: var(--os-checkbox-disabled-check);
  opacity: 0.78;
}

.switch {
  font-size: 14px;
  position: relative;
  display: inline-block;
  width: 3.2em;
  height: 1.8em;
}

.switch input {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  opacity: 0;
  width: 0;
  height: 0;
  position: absolute;
}

.switch input::before {
  content: none;
}

.slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #B0B0B0;
  border: 1px solid #B0B0B0;
  transition: .4s;
  border-radius: 32px;
  outline: none;
}

.slider::before {
  position: absolute;
  content: "";
  height: 1.3em;
  width: 1.3em;
  border-radius: 50%;
  outline: 0.12em solid #B0B0B0;
  left: 0.15em;
  top: 50%;
  background-color: #fff;
  transform: translateY(-50%);
  transition: transform .25s ease-in-out 0s, outline-color .25s ease-in-out 0s;
}

.slider-icon {
  opacity: 0;
  height: 0.7em;
  width: 0.7em;
  stroke-width: 8;
  position: absolute;
  z-index: 999;
  stroke: #222222;
  right: 58%;
  top: 50%;
  transform: translateY(-50%);
  transition: right ease-in-out .3s, opacity ease-in-out .15s;
}

.slider-icon path {
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.switch input:checked + .slider {
  background-color: #222222;
  border-color: #222222;
}

.switch input:checked + .slider .slider-icon {
  opacity: 1;
  right: 18%;
}

.switch input:checked + .slider::before {
  transform: translate(1.55em, -50%);
  outline-color: #181818;
}

.switch.switch-with-label {
  width: auto;
  height: auto;
  min-height: 1.8em;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.switch.switch-with-label .switch-label-text {
  color: inherit;
  font-size: inherit;
  line-height: 1.2;
  display: inline-flex;
  align-items: center;
  align-self: stretch;
}

.switch.switch-with-label .slider {
  position: relative;
  width: 3.2em;
  min-width: 3.2em;
  height: 1.8em;
  flex: 0 0 3.2em;
}

button.plusButton {
  --plus_sideLength: 2.5rem;
  --plus_topRightTriangleSideLength: 0.9rem;
  --plus_iconScale: 0.62;
  --plus_borderColor: #ffffff;
  --plus_bg: #000000;
  --plus_iconColor: #ffffff;
  --plus_hoverIconColor: #000000;
  --plus_focusRing: rgba(255, 255, 255, 0.28);
  position: relative;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: var(--plus_sideLength);
  min-width: var(--plus_sideLength);
  height: var(--plus_sideLength);
  padding: 0;
  border: 1px solid var(--plus_borderColor);
  border-radius: 0;
  background-color: var(--plus_bg);
  color: var(--plus_iconColor);
  overflow: hidden;
  cursor: pointer;
  user-select: none;
  -webkit-user-select: none;
  appearance: none;
  -webkit-appearance: none;
  vertical-align: middle;
  flex: 0 0 auto;
  outline: none;
}

button.plusButton::before {
  position: absolute;
  content: "";
  top: 0;
  right: 0;
  width: 0;
  height: 0;
  border-width: 0 var(--plus_topRightTriangleSideLength) var(--plus_topRightTriangleSideLength) 0;
  border-style: solid;
  border-color: transparent var(--plus_borderColor) transparent transparent;
  transition-timing-function: ease-in-out;
  transition-duration: 0.2s;
}

button.plusButton:hover,
button.plusButton:focus-visible,
button.plusButton:active {
  background-color: var(--plus_bg);
  border-color: var(--plus_borderColor);
  box-shadow: none;
  transform: none;
}

button.plusButton:hover::before,
button.plusButton:focus-visible::before {
  border-width: 0 calc(var(--plus_sideLength) * 2) calc(var(--plus_sideLength) * 2) 0;
}

button.plusButton:focus-visible {
  box-shadow: 0 0 0 2px var(--plus_focusRing);
}

button.plusButton > .plusIcon {
  fill: currentColor;
  width: calc(var(--plus_sideLength) * var(--plus_iconScale));
  height: calc(var(--plus_sideLength) * var(--plus_iconScale));
  z-index: 1;
  transition-timing-function: ease-in-out;
  transition-duration: 0.2s;
}

button.plusButton:hover > .plusIcon,
button.plusButton:focus-visible > .plusIcon {
  color: var(--plus_hoverIconColor);
  transform: rotate(180deg);
}

button.plusButton.tray-button {
  --plus_sideLength: 20px;
  --plus_topRightTriangleSideLength: 7px;
  --plus_iconScale: 0.56;
  --plus_borderColor: rgba(255, 255, 255, 0.86);
}

button.plusButton.mdt-map-control {
  --plus_sideLength: 38px;
  --plus_topRightTriangleSideLength: 12px;
  --plus_iconScale: 0.54;
}

.citation-app button.plusButton.citation-icon-btn,
.citation-app button.plusButton.citation-inline-add {
  --plus_sideLength: calc(18px * var(--citation-side-scale));
  --plus_topRightTriangleSideLength: calc(6px * var(--citation-side-scale));
  --plus_iconScale: 0.54;
}

.booking-app button.plusButton.booking-icon-btn {
  --plus_sideLength: 22px;
  --plus_topRightTriangleSideLength: 7px;
  --plus_iconScale: 0.54;
}

button.plusButton.dispatch-proto-watch {
  --plus_sideLength: 14px;
  --plus_topRightTriangleSideLength: 4px;
  --plus_iconScale: 0.5;
  --plus_borderColor: #52697f;
  --plus_bg: #1b2d3f;
  --plus_iconColor: #95aabd;
}

button.plusButton.dispatch-proto-watch.active {
  --plus_borderColor: #a4525c;
  --plus_bg: #8d2b2b;
  --plus_iconColor: #ffffff;
}

button.plusButton.dispatch-cad-watch-toggle {
  --plus_sideLength: 14px;
  --plus_topRightTriangleSideLength: 4px;
  --plus_iconScale: 0.5;
  --plus_borderColor: #5b6f85;
  --plus_bg: #394a5d;
  --plus_iconColor: #cfd8e3;
}

button.plusButton.dispatch-cad-watch-toggle.active {
  --plus_borderColor: #d86a6a;
  --plus_bg: #8d2b2b;
  --plus_iconColor: #ffffff;
}

.dispatch-cad-day button.plusButton.dispatch-cad-watch-toggle {
  --plus_borderColor: #8ea6bd;
  --plus_bg: #edf3f8;
  --plus_iconColor: #1f2a33;
}

.cm-evidence-map-controls button.plusButton {
  --plus_sideLength: 28px;
  --plus_topRightTriangleSideLength: 9px;
  --plus_iconScale: 0.55;
  --plus_borderColor: #d6d0c7;
  --plus_bg: rgba(255, 255, 255, 0.92);
  --plus_iconColor: #6d737b;
  --plus_hoverIconColor: #000000;
}

.rws-map-toolbar button.plusButton.rws-btn {
  --plus_sideLength: 32px;
  --plus_topRightTriangleSideLength: 10px;
  --plus_iconScale: 0.54;
  --plus_borderColor: #c5d1dd;
  --plus_bg: #eef3f8;
  --plus_iconColor: #42586e;
  --plus_hoverIconColor: #000000;
  border-radius: 0;
  padding: 0;
}

button.plusButton.pc-admin-slot-circle {
  --plus_sideLength: 16px;
  --plus_topRightTriangleSideLength: 5px;
  --plus_iconScale: 0.5;
  --plus_borderColor: rgba(126, 118, 98, 0.6);
}

.dot-spinner {
  --uib-size: 2.8rem;
  --uib-speed: 0.9s;
  --uib-color: #183153;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  height: var(--uib-size);
  width: var(--uib-size);
  flex: 0 0 auto;
}

.dot-spinner__dot {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  height: 100%;
  width: 100%;
}

.dot-spinner__dot::before {
  content: "";
  height: 20%;
  width: 20%;
  border-radius: 50%;
  background-color: var(--uib-color);
  transform: scale(0);
  opacity: 0.5;
  animation: pulse0112 calc(var(--uib-speed) * 1.111) ease-in-out infinite;
  box-shadow: 0 0 20px rgba(18, 31, 53, 0.3);
}

.dot-spinner__dot:nth-child(2) {
  transform: rotate(45deg);
}

.dot-spinner__dot:nth-child(2)::before {
  animation-delay: calc(var(--uib-speed) * -0.875);
}

.dot-spinner__dot:nth-child(3) {
  transform: rotate(90deg);
}

.dot-spinner__dot:nth-child(3)::before {
  animation-delay: calc(var(--uib-speed) * -0.75);
}

.dot-spinner__dot:nth-child(4) {
  transform: rotate(135deg);
}

.dot-spinner__dot:nth-child(4)::before {
  animation-delay: calc(var(--uib-speed) * -0.625);
}

.dot-spinner__dot:nth-child(5) {
  transform: rotate(180deg);
}

.dot-spinner__dot:nth-child(5)::before {
  animation-delay: calc(var(--uib-speed) * -0.5);
}

.dot-spinner__dot:nth-child(6) {
  transform: rotate(225deg);
}

.dot-spinner__dot:nth-child(6)::before {
  animation-delay: calc(var(--uib-speed) * -0.375);
}

.dot-spinner__dot:nth-child(7) {
  transform: rotate(270deg);
}

.dot-spinner__dot:nth-child(7)::before {
  animation-delay: calc(var(--uib-speed) * -0.25);
}

.dot-spinner__dot:nth-child(8) {
  transform: rotate(315deg);
}

.dot-spinner__dot:nth-child(8)::before {
  animation-delay: calc(var(--uib-speed) * -0.125);
}

@keyframes pulse0112 {
  0%,
  100% {
    transform: scale(0);
    opacity: 0.5;
  }

  50% {
    transform: scale(1);
    opacity: 1;
  }
}

.os-loading-shell {
  display: grid;
  justify-items: center;
  align-content: center;
  gap: 14px;
  min-height: 100%;
  padding: 28px;
  text-align: center;
}

.os-loading-shell-compact {
  min-height: 0;
  padding: 16px;
}

.os-loading-shell-dark {
  color: #dbe8f8;
}

.os-loading-shell-dark .dot-spinner {
  --uib-color: #dbe8f8;
}

.os-loading-copy {
  display: grid;
  gap: 8px;
  justify-items: center;
  max-width: 560px;
}

.os-loading-copy h3 {
  margin: 0;
  color: #183153;
  font-size: 24px;
  font-weight: 700;
  letter-spacing: 0.02em;
}

.os-loading-copy p {
  margin: 0;
  color: #38506d;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.5;
}

.os-loading-copy small {
  color: #6a809a;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.os-loading-shell-dark .os-loading-copy h3 {
  color: #f5f9ff;
}

.os-loading-shell-dark .os-loading-copy p {
  color: #d7e4f5;
}

.os-loading-shell-dark .os-loading-copy small {
  color: #9db3d1;
}

.os-loading-inline {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  vertical-align: middle;
}

.os-loading-inline .dot-spinner {
  --uib-size: 1.35rem;
  --uib-color: currentColor;
}

.os-loading-inline-copy {
  display: inline-block;
}

.os-loading-inline-dark {
  color: #e8f2ff;
}
.screen {
  position: fixed;
  inset: 0;
}

/* Lock screen */
.lock-screen {
  background: url('/static/lockscreen.jpg') center center / cover no-repeat;
}
.lock-overlay {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.08);
}
.lock-content {
  position: absolute;
  left: 62px;
  bottom: 62px;
  z-index: 2;
  transition: transform .5s ease, opacity .5s ease;
}
.lock-content.slide-up {
  transform: translateY(-140vh);
  opacity: 0;
}
.lock-glyph {
  font-size: 84px;
  line-height: 1;
  margin-bottom: 8px;
  text-shadow: 0 2px 12px rgba(0,0,0,.4);
}
.lock-time {
  font-size: 86px;
  font-weight: 300;
  line-height: 1;
  text-shadow: 0 2px 12px rgba(0,0,0,.45);
}
.lock-date {
  font-size: 34px;
  font-weight: 300;
  margin-top: 10px;
  text-shadow: 0 2px 12px rgba(0,0,0,.45);
}

/* Login */
.login-screen {
  background: #005a6c;
}
.login-screen::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 88% 86%, rgba(255,255,255,0.09), transparent 0 180px),
    radial-gradient(circle at 88% 86%, rgba(0,0,0,0.12), transparent 0 260px);
}
.login-bg-tint {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(0,0,0,0.04), rgba(0,0,0,0.12));
}
.back-arrow {
  position: absolute;
  left: 28px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 3;
  border: none;
  background: transparent;
  color: rgba(255,255,255,0.92);
  font-size: 42px;
  cursor: pointer;
}
.login-center {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: 22px;
  width: max-content;
  margin: 160px auto 0;
}
.user-tile {
  width: 200px;
  height: 300px;
  background: #5d5d5d;
  display: flex;
  align-items: center;
  justify-content: center;
}
.avatar-wrap {
  width: 160px;
  height: 220px;
  position: relative;
}
.avatar-circle {
  width: 95px;
  height: 95px;
  background: #e8e8e8;
  border-radius: 50%;
  margin: 0 auto;
}
.avatar-body {
  position: absolute;
  left: 18px;
  right: 18px;
  bottom: 0;
  height: 135px;
  background: #e8e8e8;
  border-radius: 90px 90px 0 0;
}
.login-panel {
  min-width: 340px;
}
.login-identity-head {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 16px;
}
.login-username {
  font-size: 29px;
  font-weight: 300;
  margin-bottom: 0;
  line-height: 1.1;
}
.login-reset-cog {
  border: 0;
  background: rgba(0,0,0,.2);
  color: #fff;
  font-size: 22px;
  width: 42px;
  height: 42px;
  border-radius: 8px;
  cursor: pointer;
  line-height: 1;
}
.login-reset-cog:hover,
.login-reset-cog:focus-visible {
  background: rgba(0,0,0,.34);
  outline: 1px solid rgba(255,255,255,.55);
}
.input-container {
  --c-text: rgb(50, 50, 80);
  --c-bg: rgb(252, 252, 252);
  --c-outline: rgb(55, 45, 190);
  display: grid;
  gap: 1ch;
  position: relative;
  max-width: 190px;
  margin: 0;
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
  color: black;
}
.input-field {
  padding: 0.5em 0.75em;
  border-radius: 0.2em;
  border: 1px solid var(--c-border, currentColor);
  background: var(--c-bg);
  color: var(--c-text);
  font-size: 1rem;
  letter-spacing: 0.1ch;
  width: 100%;
}
.input-field:not(:placeholder-shown) + .input-label {
  transform: translateY(-220%);
  opacity: 1;
}
.input-field:invalid {
  --c-border: rgb(230, 85, 60);
  --c-text: rgb(230, 85, 60);
  --c-outline: rgb(230, 85, 60);
}
.input-field:is(:disabled, :read-only) {
  --c-border: rgb(150, 150, 150);
  --c-text: rgb(170, 170, 170);
}
.input-field:is(:focus, :focus-visible) {
  outline: 2px solid var(--c-outline);
  outline-offset: 2px;
}
.input-label {
  --timing: 200ms ease-in;
  position: absolute;
  left: 0;
  top: 50%;
  transition: transform var(--timing), opacity var(--timing);
  transform: translateY(-50%);
  opacity: 0;
  color: var(--c-text);
  font-weight: 500;
}
.login-input-container {
  width: 308px;
  max-width: none;
  margin: 0 0 14px;
  padding-top: 18px;
  --c-text: rgba(255, 255, 255, 0.94);
  --c-outline: rgba(181, 214, 255, 0.95);
}
.login-input-container .input-field {
  color: #22314d;
  caret-color: #22314d;
}
.login-input-container .input-label {
  top: 0;
  transform: translateY(0);
  opacity: 1;
  color: rgba(255, 255, 255, 0.96);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  pointer-events: none;
}
.login-input-container .input-field:not(:placeholder-shown) + .input-label,
.login-input-container .input-field:focus + .input-label,
.login-input-container .input-field:focus-visible + .input-label {
  transform: translateY(0);
  opacity: 1;
}
.login-state {
  font-size: 16px;
  color: rgba(255,255,255,0.92);
  margin: -2px 0 12px;
}
.password-row {
  display: flex;
  align-items: flex-end;
  gap: 10px;
  width: 308px;
}
.login-password-container {
  width: auto;
  flex: 1 1 auto;
  margin: 0;
}
.submit-arrow {
  width: 40px;
  min-width: 40px;
  height: 39px;
  border: none;
  border-radius: 0.2em;
  background: #00838f;
  color: #fff;
  font-size: 18px;
  cursor: pointer;
}
.login-message {
  min-height: 24px;
  margin-top: 10px;
  font-size: 14px;
  color: #ffd9d9;
}
.login-public-tab {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 308px;
  min-height: 38px;
  margin-top: 8px;
  padding: 0 14px;
  border: 1px solid rgba(255,255,255,0.28);
  background: rgba(10, 24, 40, 0.34);
  color: #fff;
  text-decoration: none;
  font-size: 14px;
  letter-spacing: .02em;
  transition: background .18s ease, border-color .18s ease, transform .18s ease;
}
.login-public-tab:hover,
.login-public-tab:focus-visible {
  background: rgba(0, 120, 215, 0.32);
  border-color: rgba(255,255,255,0.44);
  transform: translateY(-1px);
}
.login-panel .button.x.discord-login-btn {
  width: 308px;
  max-width: 308px;
  display: flex;
  justify-content: center;
  padding: 0.7rem 1.35rem;
  margin-top: 4px;
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 700;
  text-align: center;
  text-transform: uppercase;
  vertical-align: middle;
  align-items: center;
  border-radius: 0.5rem;
  border: 1px solid rgba(86, 98, 246, 0.25);
  gap: 0.75rem;
  color: #ffffff;
  background-color: #5662f6;
  cursor: pointer;
  transition: all 0.6s ease;
  text-decoration: none;
}
.login-panel .button.x.discord-login-btn svg {
  height: 24px;
  width: 24px;
  fill: #fff;
  margin-right: 0.1rem;
  flex: 0 0 auto;
}
.login-panel .button.x.discord-login-btn:hover {
  transform: scale(1.02);
  background-color: rgb(119, 133, 204);
  box-shadow: 0 2px 4px rgba(119, 133, 204, 0.1);
}
.login-panel .button.x.discord-login-btn:focus {
  outline: none;
  box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.3);
}
.login-panel .button.x.discord-login-btn:active {
  transform: scale(0.98);
  opacity: 0.8;
}
.discord-login-hint {
  width: 308px;
  margin-top: 8px;
  color: rgba(255,255,255,0.8);
  font-size: 12px;
  line-height: 1.45;
}
@media (max-width: 480px) {
  .login-panel .button.x.discord-login-btn {
    max-width: 100%;
  }
}
.session-options {
  margin-top: 18px;
  width: 420px;
}
.session-card {
  background: rgba(0,0,0,0.2);
  padding: 18px;
  border: 1px solid rgba(255,255,255,0.18);
}
.session-title {
  font-size: 17px;
  margin-bottom: 12px;
}
.session-card label {
  display: block;
  margin: 10px 0 6px;
  font-size: 13px;
}
.session-card select {
  width: 100%;
  height: 34px;
  border: none;
  background: #f1f1f1;
  color: #222;
  padding: 0 8px;
}
.session-card select option:disabled {
  color: #7b8694;
}
.session-buttons {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  margin-top: 14px;
}
.ghost-btn, .primary-btn {
  border: 1px solid rgba(255,255,255,.2);
  padding: 10px 14px;
  cursor: pointer;
  color: #fff;
}
.ghost-btn { background: rgba(255,255,255,.08); }
.primary-btn { background: #0078d7; border-color: #0078d7; }

.vista-loading-screen {
  background:
    radial-gradient(circle at top, rgba(255,255,255,.18) 0%, rgba(255,255,255,0) 35%),
    linear-gradient(180deg, #0b2038 0%, #163a60 38%, #0d223a 100%);
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
}

.vista-loader-window {
  min-width: 320px;
  padding: 24px 32px 34px;
  border-radius: 20px;
  background: linear-gradient(180deg, rgba(255,255,255,.16) 0%, rgba(255,255,255,.06) 100%);
  border: 1px solid rgba(196,224,255,.22);
  box-shadow: 0 18px 44px rgba(0,0,0,.3), inset 0 1px 0 rgba(255,255,255,.18);
  backdrop-filter: blur(6px);
}

.vista-loader-container {
  width: 150px;
  height: 10px;
  border: 2px solid #b2b2b2;
  border-radius: 7px;
  margin: 0 auto;
  padding: 2px 1px;
  overflow: hidden;
  font-size: 0;
  background: rgba(255,255,255,.12);
}

.vista-loader-box {
  width: 9px;
  height: 100%;
  background: linear-gradient(to bottom, #2838c7 0%, #5979ef 17%, #869ef3 32%, #869ef3 45%, #5979ef 59%, #2838c7 100%);
  display: inline-block;
  margin-right: 2px;
  animation: vista-loader 2s infinite linear;
}

.vista-loader-logo {
  width: 220px;
  margin: 20px auto 50px;
}

.vista-loader-logo p {
  margin: 0;
  padding: 0;
}

.vista-loader-logo .top {
  font-size: 16px;
  font-weight: 300;
  line-height: 16px;
}

.vista-loader-logo .top::after {
  content: "\00a9";
  font-size: 10px;
  position: relative;
  top: -5px;
  margin-left: 2px;
}

.vista-loader-logo .mid {
  font-size: 46px;
  font-weight: 700;
  line-height: 36px;
}

.vista-loader-logo .mid span {
  font-size: 22px;
  display: inline-block;
  vertical-align: top;
  color: #FF6821;
  margin-top: -6px;
  margin-left: 4px;
}

.vista-loader-logo .bottom {
  font-size: 30px;
  font-weight: 300;
  line-height: 30px;
  margin-left: 5px;
}

.desktop-loading-overlay {
  position: fixed;
  inset: 0;
  z-index: 10000;
  min-height: 100vh;
  display: grid;
  place-items: center;
  overflow: hidden;
  opacity: 1;
  pointer-events: auto;
  background:
    radial-gradient(circle at 24% 28%, rgba(31, 98, 255, 0.42), transparent 26%),
    radial-gradient(circle at 76% 70%, rgba(0, 255, 239, 0.34), transparent 28%),
    linear-gradient(135deg, #071426 0%, #091021 46%, #070816 100%);
  transition: opacity 1s ease;
}

.desktop-loading-overlay.hidden {
  display: none;
}

.desktop-loading-overlay.is-fading {
  opacity: 0;
  pointer-events: none;
}

.system-loader-scene {
  position: relative;
  width: min(520px, 92vw);
  aspect-ratio: 1;
  display: grid;
  place-items: center;
  perspective: 1000px;
}

.system-loader-ambient-glow {
  position: absolute;
  width: min(620px, 118vw);
  height: min(620px, 118vw);
  border-radius: 50%;
  background:
    radial-gradient(circle at 30% 28%, rgba(65, 116, 255, 0.55), transparent 30%),
    radial-gradient(circle at 75% 74%, rgba(0, 255, 238, 0.38), transparent 34%),
    radial-gradient(circle, rgba(24, 97, 255, 0.16), transparent 62%);
  filter: blur(28px);
  opacity: 0.9;
  animation: systemLoaderGlowMove 6s ease-in-out infinite alternate;
}

.system-loader-motion-streaks {
  position: absolute;
  inset: 0;
  pointer-events: none;
  filter: blur(1px);
  animation: systemLoaderFloatStreaks 4.5s ease-in-out infinite alternate;
}

.system-loader-motion-streaks span {
  position: absolute;
  height: 13px;
  border-radius: 999px;
  background: linear-gradient(90deg, transparent, rgba(91, 207, 255, 0.72), transparent);
  opacity: 0.65;
  filter: blur(3px);
}

.system-loader-motion-streaks span:nth-child(1) {
  width: 145px;
  top: 32%;
  left: 6%;
}

.system-loader-motion-streaks span:nth-child(2) {
  width: 118px;
  top: 58%;
  right: 2%;
  animation-delay: -1s;
}

.system-loader-motion-streaks span:nth-child(3) {
  width: 94px;
  bottom: 18%;
  left: 42%;
  animation-delay: -2s;
}

.system-loader-outer-panel {
  position: relative;
  width: min(340px, 72vw);
  aspect-ratio: 1;
  display: grid;
  place-items: center;
  border-radius: clamp(42px, 14vw, 72px);
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0.025)),
    rgba(8, 20, 40, 0.52);
  border: 1px solid rgba(137, 196, 255, 0.45);
  box-shadow:
    0 34px 90px rgba(0, 0, 0, 0.45),
    0 0 64px rgba(34, 127, 255, 0.22),
    inset 0 1px 2px rgba(255, 255, 255, 0.35),
    inset 0 -26px 80px rgba(0, 255, 239, 0.09);
  backdrop-filter: blur(22px) saturate(150%);
  transform: rotateX(7deg) rotateZ(-1.5deg);
  animation: systemLoaderPanelDrift 5s ease-in-out infinite alternate;
}

.system-loader-outer-panel::before {
  content: "";
  position: absolute;
  inset: -2px;
  border-radius: inherit;
  padding: 2px;
  background: linear-gradient(135deg, rgba(85, 145, 255, 0.95), transparent 36%, rgba(74, 255, 245, 0.95));
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  opacity: 0.75;
  filter: drop-shadow(0 0 18px rgba(79, 188, 255, 0.6));
}

.system-loader-outer-panel::after {
  content: "";
  position: absolute;
  inset: 18px;
  border-radius: clamp(34px, 12vw, 58px);
  background: radial-gradient(circle at 50% 20%, rgba(255, 255, 255, 0.08), transparent 34%);
  pointer-events: none;
}

.system-loader-icon-tile {
  position: relative;
  z-index: 2;
  width: min(192px, 42vw);
  aspect-ratio: 1;
  display: grid;
  place-items: center;
  border-radius: clamp(32px, 10vw, 50px);
  background:
    linear-gradient(150deg, rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0.035)),
    rgba(11, 23, 43, 0.74);
  border: 1px solid rgba(176, 208, 255, 0.32);
  box-shadow:
    0 24px 60px rgba(0, 0, 0, 0.38),
    0 0 38px rgba(67, 135, 244, 0.2),
    inset 0 1px 1px rgba(255, 255, 255, 0.22),
    inset 0 -18px 48px rgba(0, 255, 239, 0.08);
  backdrop-filter: blur(16px) saturate(140%);
}

.system-cloud-loader {
  --cloud-color: #347cff;
  --arrows-color: #c7f5ff;
  --time-animation: 1.35s;
  position: relative;
  width: min(132px, 30vw);
  aspect-ratio: 1;
  display: grid;
  place-items: center;
}

.system-cloud-loader svg {
  width: min(126px, 29vw);
  height: min(126px, 29vw);
  overflow: visible;
  filter:
    drop-shadow(0 0 8px rgba(85, 164, 255, 0.85))
    drop-shadow(0 16px 24px rgba(0, 0, 0, 0.32));
}

.system-cloud-loader rect {
  fill: var(--cloud-color);
}

.system-sync-arrows {
  transform-origin: 50% 72.8938%;
  fill: var(--arrows-color);
  filter: drop-shadow(0 0 11px rgba(171, 243, 255, 0.92));
  animation: systemLoaderRotation var(--time-animation) linear infinite;
}

.cloud-loader-morph-circle {
  animation: systemLoaderCloudMorph calc(var(--time-animation) * 2) linear infinite;
}

.cloud-loader-morph-circle:nth-child(2) {
  animation-delay: calc((var(--time-animation) * 2) / -3);
}

.cloud-loader-morph-circle:nth-child(3) {
  animation-delay: calc((var(--time-animation) * 2) / -1.5);
}

.cloud-loader-lines line {
  stroke-width: 5;
  transform-origin: 50% 50%;
  rotate: -65deg;
  animation: systemLoaderLines calc(var(--time-animation) / 1.33) linear infinite;
}

@keyframes systemLoaderRotation {
  to { transform: rotate(360deg); }
}

@keyframes systemLoaderLines {
  from { transform: translateY(-10px); }
  to { transform: translateY(8px); }
}

@keyframes systemLoaderCloudMorph {
  0% { cx: 20; cy: 60; r: 15; }
  50% { cx: 50; cy: 45; r: 20; }
  100% { cx: 80; cy: 60; r: 15; }
}

@keyframes systemLoaderPanelDrift {
  from { transform: rotateX(7deg) rotateZ(-1.5deg) translate3d(-8px, -4px, 0); }
  to { transform: rotateX(7deg) rotateZ(1.5deg) translate3d(10px, 8px, 0); }
}

@keyframes systemLoaderGlowMove {
  from { transform: translate3d(-42px, -34px, 0) scale(0.92); }
  to { transform: translate3d(44px, 34px, 0) scale(1.08); }
}

@keyframes systemLoaderFloatStreaks {
  from { transform: translateX(-24px); opacity: 0.45; }
  to { transform: translateX(28px); opacity: 0.85; }
}

@keyframes vista-loader {
  0% {
    transform: translate(-30px);
  }

  100% {
    transform: translate(150px);
  }
}

/* Desktop */
.desktop-screen {
  background: url('/static/desktop_wallpaper.jpg') center center / cover no-repeat;
  --workspace-accent: #4d6d8d;
  --workspace-accent-soft: rgba(77,109,141,.16);
  --workspace-border: rgba(77,109,141,.28);
  --workspace-panel-bg: linear-gradient(145deg, rgba(77,109,141,.2) 0%, rgba(255,255,255,.94) 100%);
  --workspace-badge-bg: rgba(77,109,141,.12);
  --workspace-badge-color: #1f3b59;
}
.desktop-icons {
  position: absolute;
  top: 18px;
  left: 14px;
  display: grid;
  gap: 14px;
}
.desktop-icon {
  width: 84px;
  text-align: center;
  color: #fff;
  text-shadow: 0 1px 4px rgba(0,0,0,.6);
}
.desktop-icon span {
  display: block;
  font-size: 34px;
  margin-bottom: 6px;
}

.or-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.15em;
  height: 2.15em;
  flex: 0 0 auto;
  position: relative;
}

.or-icon svg {
  display: block;
  width: 100%;
  height: 100%;
  filter: drop-shadow(0 10px 18px rgba(18, 32, 56, 0.18));
}

.or-icon-manager {
  overflow: visible;
}

.or-icon-manager,
.or-icon-manager * {
  box-sizing: border-box;
}

.or-icon-manager .or-manager-stage {
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 7% 4% 6%;
  perspective: 1500px;
}

.or-icon-manager .or-manager-file {
  position: relative;
  width: 100%;
  height: 100%;
  transform-style: preserve-3d;
  transform-origin: center bottom;
}

.or-icon-manager .or-manager-work {
  position: absolute;
  display: block;
  margin: 0 !important;
  transform-origin: center bottom;
  transition:
    transform 560ms ease,
    box-shadow 560ms ease,
    filter 560ms ease,
    opacity 560ms ease,
    background 560ms ease;
}

.or-icon-manager .or-manager-work-5 {
  inset: 12% 0 9% 0;
  z-index: 1;
  background: #d97706;
  border-radius: 18% 18% 18% 4%;
  filter: drop-shadow(0 10px 18px rgba(73, 47, 8, 0.18));
}

.or-icon-manager .or-manager-work-5::after {
  content: '';
  position: absolute;
  bottom: 99%;
  left: 0;
  width: 34%;
  height: 11%;
  background: #d97706;
  border-radius: 0.7em 0.7em 0 0;
}

.or-icon-manager .or-manager-work-5::before {
  content: '';
  position: absolute;
  top: -8%;
  left: 32%;
  width: 8%;
  height: 11%;
  background: #d97706;
  clip-path: polygon(0 35%, 0 100%, 50% 100%);
}

.or-icon-manager .or-manager-work-4 {
  inset: 16% 4% 12% 4%;
  z-index: 2;
  background: #a1a1aa;
  border-radius: 16%;
}

.or-icon-manager .or-manager-work-3 {
  inset: 17% 4% 12% 4%;
  z-index: 3;
  background: #d4d4d8;
  border-radius: 16%;
}

.or-icon-manager .or-manager-work-2 {
  inset: 18% 4% 12% 4%;
  z-index: 4;
  background: #e4e4e7;
  border-radius: 16%;
}

.or-icon-manager .or-manager-work-1 {
  left: 4%;
  right: 4%;
  bottom: 0;
  height: 78%;
  z-index: 5;
  background: linear-gradient(180deg, #fbbf24 0%, #fb923c 40%, #d97706 100%);
  border-radius: 17% 17% 17% 4%;
  box-shadow:
    0 10px 22px rgba(64, 41, 8, 0.18),
    inset 0 1px 0 rgba(255, 255, 255, 0.46);
}

.or-icon-manager .or-manager-work-1::after {
  content: '';
  position: absolute;
  bottom: 99%;
  right: 0;
  width: 66%;
  height: 11%;
  background: #fbbf24;
  border-radius: 0.7em 0.7em 0 0;
}

.or-icon-manager .or-manager-work-1::before {
  content: '';
  position: absolute;
  top: -7%;
  right: 62%;
  width: 7%;
  height: 10%;
  background: #fbbf24;
  clip-path: polygon(100% 14%, 50% 100%, 100% 100%);
}

.or-icon-manager .or-manager-stage,
.or-icon-manager .or-manager-file,
.or-icon-manager .or-manager-work,
.or-icon-manager .or-manager-work::before,
.or-icon-manager .or-manager-work::after {
  pointer-events: none;
}

.desktop-icon .or-icon-manager span,
.home-app .or-icon-manager span,
.start-link .or-icon-manager span,
.task-icon .or-icon-manager span,
.search-item .or-icon-manager span,
.search-top-app .or-icon-manager span,
.search-modal-link .or-icon-manager span,
.window-title .or-icon-manager span {
  margin-bottom: 0;
  font-size: inherit;
}

.or-icon-manager:hover .or-manager-work-4,
.desktop-icon:hover .or-icon-manager .or-manager-work-4,
.home-app:hover .or-icon-manager .or-manager-work-4,
.start-link:hover .or-icon-manager .or-manager-work-4,
.task-icon:hover .or-icon-manager .or-manager-work-4,
.search-item:hover .or-icon-manager .or-manager-work-4,
.search-top-app:hover .or-icon-manager .or-manager-work-4,
.search-modal-link:hover .or-icon-manager .or-manager-work-4 {
  transform: rotateX(-20deg);
}

.or-icon-manager:hover .or-manager-work-3,
.desktop-icon:hover .or-icon-manager .or-manager-work-3,
.home-app:hover .or-icon-manager .or-manager-work-3,
.start-link:hover .or-icon-manager .or-manager-work-3,
.task-icon:hover .or-icon-manager .or-manager-work-3,
.search-item:hover .or-icon-manager .or-manager-work-3,
.search-top-app:hover .or-icon-manager .or-manager-work-3,
.search-modal-link:hover .or-icon-manager .or-manager-work-3 {
  transform: rotateX(-30deg);
}

.or-icon-manager:hover .or-manager-work-2,
.desktop-icon:hover .or-icon-manager .or-manager-work-2,
.home-app:hover .or-icon-manager .or-manager-work-2,
.start-link:hover .or-icon-manager .or-manager-work-2,
.task-icon:hover .or-icon-manager .or-manager-work-2,
.search-item:hover .or-icon-manager .or-manager-work-2,
.search-top-app:hover .or-icon-manager .or-manager-work-2,
.search-modal-link:hover .or-icon-manager .or-manager-work-2 {
  transform: rotateX(-38deg);
}

.or-icon-manager:hover .or-manager-work-1,
.desktop-icon:hover .or-icon-manager .or-manager-work-1,
.home-app:hover .or-icon-manager .or-manager-work-1,
.start-link:hover .or-icon-manager .or-manager-work-1,
.task-icon:hover .or-icon-manager .or-manager-work-1,
.search-item:hover .or-icon-manager .or-manager-work-1,
.search-top-app:hover .or-icon-manager .or-manager-work-1,
.search-modal-link:hover .or-icon-manager .or-manager-work-1 {
  transform: rotateX(-46deg) translateY(1px);
  box-shadow:
    0 14px 28px rgba(64, 41, 8, 0.2),
    inset 0 18px 34px rgba(251, 191, 36, 0.72),
    inset 0 -16px 28px rgba(217, 119, 6, 0.58);
}

.or-icon-manager:hover .or-manager-work-5,
.desktop-icon:hover .or-icon-manager .or-manager-work-5,
.home-app:hover .or-icon-manager .or-manager-work-5,
.start-link:hover .or-icon-manager .or-manager-work-5,
.task-icon:hover .or-icon-manager .or-manager-work-5,
.search-item:hover .or-icon-manager .or-manager-work-5,
.search-top-app:hover .or-icon-manager .or-manager-work-5,
.search-modal-link:hover .or-icon-manager .or-manager-work-5 {
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.18);
}

.or-icon-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  filter: drop-shadow(0 10px 18px rgba(18, 32, 56, 0.18));
}

.or-icon-emoji {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.02em;
  line-height: 1;
  filter: drop-shadow(0 2px 2px rgba(255,255,255,.28)) drop-shadow(0 4px 8px rgba(18,32,56,.18));
}

.window-title {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.window-title-icon {
  width: 18px;
  height: 18px;
}
.desktop-icon small {
  font-size: 12px;
  line-height: 1.2;
}
.window-card {
  position: absolute;
  top: 86px;
  left: 160px;
  width: 680px;
  background: rgba(245,245,245,.96);
  color: #111;
  box-shadow: 0 24px 80px rgba(0,0,0,.35);
}
.window-titlebar {
  height: 34px;
  background: rgba(230,230,230,.98);
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 0 0 12px;
}
.window-title { font-size: 12px; color: #333; }
.window-controls { display: flex; }
.window-controls > span {
  width: 46px;
  height: 34px;
  display: inline-block;
  border-left: 1px solid rgba(0,0,0,.05);
}
.window-controls > .close { background: #e81123; }
.window-body { padding: 26px; }
.window-body h1 {
  margin: 0 0 10px;
  font-size: 42px;
  font-weight: 300;
}
.window-body p { margin: 0 0 22px; color: #333; }
.workspace-body {
  display: grid;
  gap: 16px;
}
.workspace-summary-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}
.workspace-hero {
  display: flex;
  align-items: flex-start;
  gap: 18px;
}
.workspace-brand-mark {
  width: 72px;
  height: 72px;
  flex: 0 0 72px;
  border-radius: 18px;
  border: 1px solid var(--workspace-border);
  background: var(--workspace-panel-bg);
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.72);
}
.workspace-brand-mark img {
  width: 46px;
  height: 46px;
  object-fit: contain;
}
.workspace-hero-copy {
  min-width: 0;
}
.workspace-kicker {
  margin: 0 0 8px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--workspace-badge-color);
}
.workspace-hero-copy h1 {
  line-height: 1.04;
}
.workspace-hero-copy p {
  margin: 0;
  line-height: 1.45;
}
.workspace-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.workspace-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  padding: 8px 12px;
  border-radius: 999px;
  border: 1px solid var(--workspace-border);
  background: var(--workspace-badge-bg);
  color: var(--workspace-badge-color);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .02em;
}
.workspace-badge-muted {
  background: rgba(255,255,255,.78);
}
.workspace-summary-tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  padding: 5px 10px;
  border-radius: 999px;
  background: rgba(255,255,255,.82);
  border: 1px solid var(--workspace-border);
  color: var(--workspace-badge-color);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.workspace-home-panel {
  display: grid;
  gap: 12px;
  padding: 14px;
  border: 1px solid var(--workspace-border);
  background: linear-gradient(180deg, rgba(255,255,255,.84) 0%, rgba(255,255,255,.66) 100%);
}

#welcomeWindow #desktopCategory {
  display: none;
}
.workspace-panel-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
}
.workspace-panel-head strong {
  display: block;
  font-size: 14px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--workspace-badge-color);
}
.workspace-panel-head span {
  display: block;
  margin-top: 4px;
  color: #546474;
  line-height: 1.45;
}
.home-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 12px;
}
.home-app {
  border: 1px solid #c9c9c9;
  background: #fff;
  padding: 16px;
  cursor: pointer;
  text-align: center;
  display: grid;
  grid-template-columns: 1fr;
  justify-items: center;
  align-content: center;
  row-gap: 10px;
  transition: background .18s ease, border-color .18s ease, transform .18s ease;
}
.home-app > .or-icon,
.home-app > .home-app-icon,
.home-app > .home-app-icon-wrap {
  width: 32px !important;
  height: 32px !important;
  min-width: 32px;
  min-height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0;
}
.home-app span:last-child {
  display: block;
  width: 100%;
  min-width: 0;
  text-align: center;
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
}
.home-app:hover {
  transform: translateY(-1px);
}
.workspace-group-shell {
  min-height: 100%;
  padding: 18px;
  background: linear-gradient(180deg, #eef3f9 0%, #dde7f3 100%);
  display: grid;
  gap: 18px;
}
.workspace-group-hero {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 16px;
  align-items: center;
  padding: 18px;
  border: 1px solid rgba(126, 150, 180, .36);
  border-radius: 18px;
  background: rgba(255,255,255,.76);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.85);
}
.workspace-group-hero-icon,
.workspace-group-launch-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.workspace-group-hero-icon .or-icon,
.workspace-group-hero-icon .workspace-group-app-icon {
  width: 56px !important;
  height: 56px !important;
}
.workspace-group-hero-copy span {
  display: block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #52627a;
}
.workspace-group-hero-copy h2 {
  margin: 4px 0 6px;
  font-size: 28px;
  color: #20344d;
}
.workspace-group-hero-copy p {
  margin: 0;
  color: #47586f;
  line-height: 1.5;
}
.workspace-group-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 14px;
}
.workspace-group-launch {
  width: 100%;
  min-height: 92px;
  border: 1px solid rgba(124, 146, 174, .42);
  border-radius: 16px;
  background: linear-gradient(180deg, rgba(255,255,255,.96) 0%, rgba(233,240,248,.95) 100%);
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 14px;
  align-items: center;
  padding: 16px 18px;
  text-align: left;
  cursor: pointer;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.workspace-group-launch:hover {
  transform: translateY(-1px);
  border-color: rgba(84, 126, 184, .48);
  box-shadow: 0 10px 20px rgba(38, 63, 95, .12);
}
.workspace-group-launch-icon .or-icon,
.workspace-group-launch-icon .workspace-group-item-icon {
  width: 40px !important;
  height: 40px !important;
}
.workspace-group-launch-copy {
  display: grid;
  gap: 4px;
  min-width: 0;
}
.workspace-group-launch-copy strong {
  color: #1f3046;
  font-size: 15px;
  line-height: 1.2;
}
.workspace-group-launch-copy small {
  color: #5a6c83;
  line-height: 1.4;
}
.workspace-group-window .app-window-body {
  padding: 0;
  background: #dfe8f2;
}
.taskbar {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 40px;
  background: rgba(0,0,0,.82);
  z-index: 260;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 8px 0 0;
}
.taskbar-left, .taskbar-right {
  display: flex;
  align-items: center;
  height: 100%;
}
.start-button, .task-icon {
  width: 43px;
  height: 36px;
  border: none;
  background: transparent;
  color: white;
  cursor: pointer;
}
.start-button:hover, .task-icon:hover, .task-icon.active { background: rgba(255,255,255,.1); }
.win-logo {
  display: inline-block;
  width: 17px;
  height: 17px;
  position: relative;
}
.win-logo::before, .win-logo::after {
  content: '';
  position: absolute;
  inset: 0;
  background:
   linear-gradient(#fff,#fff) 0 0/7px 7px no-repeat,
   linear-gradient(#fff,#fff) 10px 0/7px 7px no-repeat,
   linear-gradient(#fff,#fff) 0 10px/7px 7px no-repeat,
   linear-gradient(#fff,#fff) 10px 10px/7px 7px no-repeat;
}
.search-box {
  width: 280px;
  height: 30px;
  background: rgba(255,255,255,.16);
  color: rgba(255,255,255,.72);
  display: flex;
  align-items: center;
  padding: 0 12px;
  font-size: 13px;
  margin-right: 4px;
  box-sizing: border-box;
}
.taskbar-right {
  gap: 6px;
  color: #fff;
  font-size: 12px;
}
.tray-item {
  width: 16px;
  text-align: center;
  opacity: .9;
}
.tray-button {
  width: 22px;
  height: 22px;
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 6px;
  background: rgba(255,255,255,.08);
  color: inherit;
  font-size: 16px;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  cursor: pointer;
}
.tray-button:hover {
  background: rgba(255,255,255,.16);
}
.clock-stack {
  text-align: right;
  padding: 0 9px;
  line-height: 1.1;
  font-size: 10px;
}
.start-menu {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 420px;
  height: 460px;
  display: flex;
  background: rgba(20,20,20,.92);
  color: #fff;
  box-shadow: 0 -10px 40px rgba(0,0,0,.38);
  z-index: 340;
}
.start-left-rail {
  width: 48px;
  background: rgba(255,255,255,.04);
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-end;
  padding: 0;
}
.start-left-rail button {
  border: none;
  background: transparent;
  color: #fff;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 48px;
}
.start-rail-spacer {
  flex: 1 1 auto;
}
.start-power-button {
  padding: 0;
}
.start-power-logo {
  width: 26px;
  height: 26px;
  object-fit: contain;
  display: block;
}
.start-rail-brand {
  display: none;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 48px;
}
.start-main {
  flex: 1;
  padding: 18px;
}
.start-account {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 18px;
}
.start-section-head {
  display: grid;
  gap: 4px;
  margin-bottom: 14px;
}
.start-section-head strong {
  font-size: 13px;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.start-section-head span {
  font-size: 12px;
  line-height: 1.45;
  opacity: .86;
}
.mini-avatar {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #dcdcdc;
}
.start-tiles {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 12px;
}
.start-tiles button {
  min-height: 74px;
  border: none;
  color: #fff;
  background: #0f7ad8;
  cursor: pointer;
  text-align: center;
  padding: 12px;
  font-size: 16px;
  display: grid;
  grid-template-columns: 1fr;
  justify-items: center;
  align-content: center;
  gap: 10px;
}
.start-footer {
  display: grid;
  gap: 4px;
  margin-top: 16px;
  padding-top: 12px;
  border-top: 1px solid rgba(0,0,0,.08);
}
.start-footer span {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.start-footer small {
  font-size: 11px;
  line-height: 1.45;
  opacity: .82;
}

@media (max-width: 1100px) {
  .window-card { width: calc(100vw - 210px); left: 110px; }
  .search-box { width: 220px; }
}

@media (max-width: 720px) {
  .workspace-hero {
    flex-direction: column;
  }
  #welcomeWindow .workspace-brand-mark {
    width: 60px;
    height: 60px;
    flex-basis: 60px;
  }
}

.desktop-icon {
  text-decoration: none;
}

.start-link {
  min-height: 74px;
  color: #fff;
  background: #0f7ad8;
  text-align: left;
  padding: 12px;
  font-size: 16px;
  text-decoration: none;
  display: block;
}

/* v7 desktop/workspace improvements */
.desktop-icons {
  grid-template-columns: repeat(2, 92px);
  max-height: calc(100vh - 90px);
  overflow-y: auto;
  padding-right: 8px;
}

.app-launcher {
  border: none;
  background: transparent;
  cursor: pointer;
  color: inherit;
}

#welcomeWindow {
  left: auto;
  right: 22px;
  top: 86px;
  width: min(760px, calc(100vw - 44px));
  border: 1px solid var(--workspace-border);
  box-shadow: 0 28px 84px rgba(0,0,0,.28);
}

#welcomeWindow .window-titlebar {
  background: linear-gradient(90deg, var(--workspace-accent-soft) 0%, rgba(255,255,255,.88) 40%, rgba(230,230,230,.98) 100%);
  border-bottom: 1px solid var(--workspace-border);
}

#welcomeWindow .window-title {
  color: #eef6ff;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
}

#welcomeWindow .window-body {
  background: linear-gradient(180deg, rgba(255,255,255,.92) 0%, rgba(255,255,255,.98) 52%, var(--workspace-accent-soft) 100%);
}

#welcomeWindow #desktopCategory {
  margin: 0;
  color: #2d3844;
  font-weight: 600;
}

#welcomeWindow .home-grid {
  margin-top: 2px;
}

#welcomeWindow .home-app {
  border-color: var(--workspace-border);
  background: linear-gradient(180deg, rgba(255,255,255,.96) 0%, var(--workspace-accent-soft) 100%);
  font-weight: 600;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.74);
}

#welcomeWindow .home-app:hover {
  background: linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(255,255,255,.88) 30%, var(--workspace-accent-soft) 100%);
}

.window-controls .window-action {
  width: 46px;
  height: 34px;
  border: none;
  border-left: 1px solid rgba(0,0,0,.08);
  background: rgba(255,255,255,0.3);
  cursor: pointer;
}

.window-controls .window-action.close-btn {
  background: #e81123;
  color: #fff;
}

.taskbar {
  gap: 8px;
}

.taskbar-left {
  min-width: 0;
  flex: 1;
  overflow: hidden;
}

.taskbar-apps {
  display: flex;
  align-items: center;
  gap: 2px;
  overflow-x: auto;
  max-width: 100%;
}

.taskbar-apps .task-icon {
  flex: 0 0 auto;
}

.start-menu {
  width: min(700px, 96vw);
  height: min(560px, 78vh);
}

.start-main {
  overflow: auto;
}

.start-tiles {
  grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
}

#appWindows {
  position: absolute;
  inset: 0 0 var(--taskbar-height, 40px) 0;
  overflow: hidden;
  pointer-events: none;
}

.app-window {
  position: absolute;
  width: 760px;
  height: 540px;
  background: rgba(245,245,245,.99);
  color: #111;
  border: 1px solid rgba(40, 57, 78, 0.35);
  border-radius: 12px;
  box-shadow: 0 24px 70px rgba(0,0,0,.35);
  resize: both;
  overflow: auto;
  pointer-events: auto;
  min-width: min(520px, calc(100vw - 8px));
  min-height: min(360px, calc(100vh - var(--taskbar-height, 40px) - 8px));
  max-width: calc(100vw - 8px);
  max-height: calc(100vh - var(--taskbar-height, 40px) - 8px);
}

.app-window.minimized {
  display: none;
}

.app-window.maximized {
  top: 0 !important;
  left: 0 !important;
  width: calc(100vw - 2px) !important;
  height: calc(100vh - var(--taskbar-height, 40px) - 2px) !important;
}

.app-window-body {
  padding: 14px;
}

.leads-print-window .app-window-body {
  padding: 0;
  height: calc(100% - var(--window-chrome-height, 72px));
  min-height: 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.program-window {
  background: linear-gradient(180deg, #e8eef6 0%, #c8d4e3 100%);
  border-color: rgba(35, 56, 79, 0.58);
  box-shadow: 0 26px 72px rgba(4, 12, 21, 0.38);
}

.program-window .app-titlebar {
  min-height: 36px;
  background: linear-gradient(180deg, #2f5f95 0%, #204775 100%);
  border-bottom: 1px solid rgba(11, 31, 56, 0.7);
  color: #f3f8ff;
}

.program-window .window-title {
  color: #f3f8ff;
  font-weight: 700;
  letter-spacing: .02em;
}

.program-window .window-title-icon {
  filter: drop-shadow(0 1px 0 rgba(0,0,0,.15));
}

.program-window .window-action {
  color: #f4f8ff;
  border-color: rgba(187, 214, 245, 0.24);
  background: rgba(255,255,255,.08);
}

.program-window .window-action:hover {
  background: rgba(255,255,255,.16);
}

.web-module-window .app-window-body {
  padding: 0;
  height: calc(100% - var(--window-chrome-height, 72px));
  background: #131a24;
  overflow: hidden;
}

.program-window.web-module-window .app-window-body {
  background: linear-gradient(180deg, #122032 0%, #0f1826 100%);
}

.embedded-app-wrap {
  height: 100%;
  display: flex;
  flex-direction: column;
}

.embedded-app-wrap-loading {
  position: relative;
}

.program-window .embedded-app-wrap {
  position: relative;
  background: linear-gradient(180deg, rgba(255,255,255,.04) 0%, rgba(0,0,0,.08) 100%);
}

.embedded-app-loading-shell {
  flex: 1;
  display: grid;
  place-items: center;
  gap: 10px;
  padding: 0;
  text-align: center;
  color: #dbe6f5;
  background:
    radial-gradient(circle at top, rgba(73, 151, 255, .16), transparent 48%),
    linear-gradient(180deg, rgba(255,255,255,.04) 0%, rgba(0,0,0,.14) 100%);
}

.embedded-app-loading-shell > .os-loading-shell {
  width: 100%;
  height: 100%;
}

.embedded-app-loading-shell h3 {
  margin: 0;
  font-size: 22px;
  color: #f4f8ff;
}

.embedded-app-loading-shell p {
  margin: 0;
  color: #9fb4d3;
}

.embedded-app-frame {
  flex: 1;
  width: 100%;
  height: 100%;
  border: 0;
  border-radius: 0;
  background: #131a24;
}

.embedded-app-frame.hidden {
  display: none;
}

.window-browserbar {
  height: 36px;
  padding: 6px 10px;
  display: grid;
  grid-template-columns: 34px 1fr 70px;
  align-items: center;
  gap: 10px;
  background: linear-gradient(#d2d2d2, #bdbdbd);
  border-bottom: 1px solid #a8a8a8;
}

.browser-menu-btn {
  width: 28px;
  height: 24px;
  border: 1px solid #adadad;
  background: #d5d5d5;
  border-radius: 4px;
  color: #6b6b6b;
  font-size: 16px;
  line-height: 1;
}

.browser-url {
  height: 24px;
  border: 1px solid #b7b7b7;
  background: #e4e4e4;
  border-radius: 2px;
  color: #5e5e5e;
  padding: 0 10px;
}

.browser-dots {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
}

.browser-dots span {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #666;
}

.notepad-layout {
  display: grid;
  grid-template-columns: 220px 1fr;
  gap: 10px;
  height: calc(100% - 6px);
}

.notes-list-pane {
  border: 1px solid #c4d3df;
  padding: 8px;
  background: #fff;
}

.notepad-loading-shell {
  min-height: 120px;
}

.np-note-list {
  margin-top: 8px;
  display: grid;
  gap: 6px;
}

.np-note-item, .notepad-btn {
  border: 1px solid #b7c9d8;
  background: #f6fbff;
  padding: 6px;
  cursor: pointer;
}

.notes-editor-pane {
  border: 1px solid #c4d3df;
  background: #fff;
  display: grid;
  gap: 8px;
  padding: 8px;
}

.notes-editor-pane textarea {
  min-height: 180px;
  height: 100%;
}

.notepad-actions {
  display: flex;
  gap: 8px;
}

.docs-table {
  width: 100%;
  border-collapse: collapse;
}

.docs-table th, .docs-table td {
  border: 1px solid #c4d3df;
  padding: 6px;
  text-align: left;
}

.docs-inline-label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

/* v8 avatar + hard-lock desktop */
.lock-avatar-wrap {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 8px;
  background: transparent;
  padding: 0;
  min-width: 0;
  min-height: 0;
}

.user-avatar {
  width: 82px;
  height: 82px;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid rgba(255,255,255,0.75);
}

.user-avatar.large {
  width: 150px;
  height: 150px;
  border-radius: 8px;
  border-color: rgba(255,255,255,0.65);
}

.hidden { display: none !important; }

.mini-avatar-img {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  object-fit: cover;
}

.desktop-icons {
  position: absolute;
  top: 18px;
  left: 14px;
  display: grid;
  grid-template-columns: repeat(3, 88px);
  grid-auto-rows: 88px;
  gap: 14px;
  overflow: hidden !important;
  height: calc(100vh - 144px);
  max-height: calc(100vh - 144px);
  align-content: start;
  justify-content: start;
  justify-items: stretch;
  align-items: stretch;
  padding: 4px 12px 20px 0;
  box-sizing: border-box;
  --desktop-cell-size: 88px;
  --desktop-icon-size: 36px;
  --desktop-font-size: 11px;
  --desktop-label-lines: 2;
}

.desktop-icon {
  width: 100%;
  max-width: var(--desktop-cell-size);
  min-width: 0;
  height: 100%;
  min-height: 0;
  display: grid;
  justify-items: center;
  align-content: center;
  justify-self: stretch;
  align-self: stretch;
  text-align: center;
  cursor: pointer;
  box-sizing: border-box;
  padding: 4px 3px;
  border: none;
  background: transparent;
  color: #fff;
  overflow: hidden;
}

.desktop-icon > .email-icon-wrap {
  width: 100%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.desktop-icon span {
  font-size: var(--desktop-icon-size);
  margin-bottom: 4px;
}

.desktop-icon small {
  font-size: var(--desktop-font-size);
  line-height: 1.1;
  display: block;
  width: 100%;
  max-width: 100%;
  text-align: center;
  margin: 0 auto;
  display: -webkit-box;
  -webkit-line-clamp: var(--desktop-label-lines);
  -webkit-box-orient: vertical;
  overflow: hidden;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.desktop-icon.dragging {
  cursor: grabbing;
  transform-origin: center top;
  opacity: .96;
  filter: drop-shadow(0 14px 18px rgba(0, 0, 0, .3));
}

.taskbar-apps {
  overflow: hidden !important;
}

.taskbar-apps .task-icon {
  width: 24px;
  min-width: 24px;
}

.explorer-shell {
  display: grid;
  grid-template-columns: 180px 1fr;
  gap: 10px;
  height: 100%;
}

.explorer-sidebar {
  border: 1px solid #c6d4e0;
  background: #f3f8fd;
  padding: 8px;
  display: grid;
  gap: 8px;
  align-content: start;
}
.explorer-sidebar > div:not(.explorer-head) {
  display: flex;
  align-items: center;
  gap: 8px;
}

.explorer-head {
  font-weight: 700;
  color: #1d446f;
}

.explorer-main {
  border: 1px solid #c6d4e0;
  background: #fff;
  display: grid;
  grid-template-rows: auto 1fr;
}

.explorer-toolbar {
  padding: 8px;
  border-bottom: 1px solid #c6d4e0;
  background: #eaf2fb;
  font-weight: 600;
}

.docs-action {
  margin-right: 6px;
  border: 1px solid #9fb5cb;
  background: #f4f8fd;
  cursor: pointer;
}

.note-view-content {
  white-space: pre-wrap;
  background: #fff;
  border: 1px solid #c6d4e0;
  padding: 10px;
  min-height: 180px;
}

.email-client-window .app-window-body.email-client-body {
  padding: 0;
  height: calc(100% - var(--window-chrome-height, 72px));
  min-height: 0;
  overflow: hidden;
  background: #d9e7f5;
  color: #16324f;
}

.email-loading-shell {
  display: grid;
  min-height: 100%;
}

.email-client-shell {
  --email-accent: #0f6cbd;
  --email-accent-deep: #0a4f92;
  --email-rail: #0d2f57;
  --email-rail-soft: #143d70;
  --email-panel: rgba(255, 255, 255, 0.94);
  --email-border: #c7d8ea;
  --email-shadow: rgba(11, 41, 77, 0.18);
  --email-muted: #5f748c;
  --email-selected: #d9ebff;
  --email-hover: #eef5fd;
  position: relative;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  min-height: 100%;
  height: 100%;
  background:
    radial-gradient(circle at top right, rgba(255,255,255,0.82), transparent 24%),
    linear-gradient(180deg, #eef5fc 0%, #dce9f6 100%);
  color: #16324f;
}

.email-client-topbar {
  display: flex;
  align-items: center;
  gap: 18px;
  padding: 16px 20px;
  border-bottom: 1px solid var(--email-border);
  background: linear-gradient(180deg, rgba(255,255,255,0.94) 0%, rgba(236,244,252,0.94) 100%);
}

.email-client-brand {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 220px;
}

.email-client-brand strong,
.email-client-account strong {
  display: block;
}

.email-client-brand small,
.email-client-account small,
.email-client-account span,
.email-client-search span,
.email-client-nav-footer span,
.email-reading-kicker,
.email-reading-meta-card span,
.email-reading-attachments > span {
  color: var(--email-muted);
}

.email-client-brand-badge {
  display: inline-grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border-radius: 12px;
  background: linear-gradient(180deg, var(--email-accent) 0%, var(--email-accent-deep) 100%);
  color: #fff;
  font-size: 22px;
  font-weight: 800;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.24), 0 10px 18px rgba(15,108,189,0.18);
}

.email-client-search {
  flex: 1;
  min-width: 220px;
  display: grid;
  gap: 6px;
}

.email-client-search input,
.email-compose-field input,
.email-compose-field textarea {
  width: 100%;
  border: 1px solid var(--email-border);
  border-radius: 12px;
  background: rgba(255,255,255,0.94);
  color: #173555;
  box-shadow: inset 0 1px 2px rgba(9, 35, 67, 0.04);
}

.email-client-search input,
.email-compose-field input {
  min-height: 42px;
  padding: 10px 12px;
}

.email-compose-field textarea {
  min-height: 180px;
  padding: 12px;
  resize: vertical;
  line-height: 1.6;
}

.email-client-search input:focus,
.email-compose-field input:focus,
.email-compose-field textarea:focus {
  outline: none;
  border-color: rgba(15, 108, 189, 0.54);
  box-shadow: 0 0 0 3px rgba(15,108,189,0.12);
}

.email-client-account {
  min-width: 230px;
  text-align: right;
}

.email-client-main {
  min-height: 0;
  display: grid;
  grid-template-columns: 220px minmax(320px, 390px) minmax(0, 1fr);
}

.email-client-nav {
  display: grid;
  align-content: start;
  gap: 18px;
  padding: 20px 16px;
  color: #eef6ff;
  background:
    radial-gradient(circle at top, rgba(255,255,255,0.12), transparent 30%),
    linear-gradient(180deg, var(--email-rail) 0%, var(--email-rail-soft) 100%);
}

.email-folder-button,
.email-recipient-row,
.email-action-btn,
.email-recipient-chip,
.email-flight-btn {
  border: 1px solid transparent;
  cursor: pointer;
}

.email-compose-launch {
  width: 100%;
  justify-content: center;
}

.email-flight-btn {
  font-family: inherit;
  font-size: 20px;
  background: royalblue;
  color: #fff;
  padding: 0.7em 1em;
  padding-left: 0.9em;
  display: inline-flex;
  align-items: center;
  border: none;
  border-radius: 16px;
  overflow: hidden;
  transition: all 0.2s;
  cursor: pointer;
  box-shadow: 0 14px 28px rgba(15, 70, 150, 0.22);
}

.email-flight-btn .svg-wrapper-1,
.email-flight-btn .svg-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
}

.email-flight-btn .email-flight-label {
  display: block;
  margin-left: 0.3em;
  transition: all 0.3s ease-in-out;
  white-space: nowrap;
}

.email-flight-btn svg {
  display: block;
  transform-origin: center center;
  transition: transform 0.3s ease-in-out;
}

.email-flight-btn:hover .svg-wrapper {
  animation: email-fly-1 0.6s ease-in-out infinite alternate;
}

.email-flight-btn:hover svg {
  transform: translateX(1.2em) rotate(45deg) scale(1.1);
}

.email-flight-btn:hover .email-flight-label {
  transform: translateX(5em);
}

.email-flight-btn:active {
  transform: scale(0.95);
}

.email-flight-btn-send {
  min-width: 176px;
  justify-content: center;
}

.email-folder-list {
  display: grid;
  gap: 8px;
}

.email-folder-button {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 12px 14px;
  border-radius: 14px;
  background: rgba(255,255,255,0.08);
  color: #eef6ff;
  text-align: left;
}

.email-folder-button:hover,
.email-recipient-row:hover,
.email-action-btn:hover,
.email-recipient-chip:hover {
  filter: brightness(1.02);
}

.email-folder-button.active {
  background: linear-gradient(180deg, rgba(255,255,255,0.96) 0%, rgba(231,242,255,0.96) 100%);
  color: #123d67;
  box-shadow: 0 12px 22px rgba(4, 18, 37, 0.16);
}

.email-folder-metrics {
  display: grid;
  text-align: right;
  gap: 2px;
}

.email-folder-metrics strong {
  font-size: 12px;
  line-height: 1.2;
}

.email-folder-metrics small {
  color: inherit;
  opacity: 0.76;
}

.email-client-nav-footer {
  padding-top: 18px;
  border-top: 1px solid rgba(255,255,255,0.12);
}

.email-client-nav-footer strong,
.email-client-nav-footer small {
  display: block;
}

.email-client-nav-footer small {
  margin-top: 6px;
  color: rgba(238,246,255,0.72);
}

.email-message-column,
.email-reading-column {
  min-height: 0;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  background: var(--email-panel);
  border-left: 1px solid var(--email-border);
}

.email-message-column {
  background: linear-gradient(180deg, rgba(255,255,255,0.98) 0%, rgba(243,248,253,0.96) 100%);
}

.email-column-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 16px 18px;
  border-bottom: 1px solid var(--email-border);
}

.email-column-header strong,
.email-column-header small {
  display: block;
}

.email-message-list {
  min-height: 0;
  overflow: auto;
  display: grid;
  align-content: start;
  gap: 10px;
  padding: 12px;
  background:
    linear-gradient(180deg, rgba(247,251,255,0.98) 0%, rgba(239,246,252,0.98) 100%);
}

.email-message-card {
  width: 100%;
  padding: 14px;
  border-radius: 16px;
  text-align: left;
  background: rgba(255,255,255,0.98);
  border: 1px solid rgba(199,216,234,0.92);
  box-shadow: 0 10px 18px rgba(11, 41, 77, 0.06);
}

.email-message-card.unread {
  border-left: 4px solid var(--email-accent);
  padding-left: 11px;
}

.email-message-card.active {
  background: linear-gradient(180deg, #ffffff 0%, #edf5ff 100%);
  border-color: rgba(15,108,189,0.32);
  box-shadow: 0 16px 28px rgba(15,108,189,0.12);
}

.email-message-card-row {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
}

.email-message-card-row strong,
.email-message-card-row span,
.email-message-card-meta,
.email-message-card p,
.email-message-card-attachments {
  overflow-wrap: anywhere;
}

.email-message-card-row span,
.email-message-card-meta,
.email-message-card-attachments {
  color: var(--email-muted);
  font-size: 12px;
}

.email-message-card-subject {
  margin-top: 6px;
}

.email-message-card-subject span {
  font-size: 14px;
  font-weight: 700;
  color: #1b3858;
}

.email-unread-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--email-accent);
  box-shadow: 0 0 0 4px rgba(15,108,189,0.14);
}

.email-message-card-meta {
  margin-top: 6px;
}

.email-message-card p {
  margin: 10px 0 0;
  color: #38506c;
  line-height: 1.45;
}

.email-message-card-attachments {
  margin-top: 10px;
  font-weight: 600;
}

.email-reading-pane {
  min-height: 0;
  overflow: auto;
  padding: 24px;
  background:
    radial-gradient(circle at top right, rgba(255,255,255,0.78), transparent 28%),
    linear-gradient(180deg, #f6fbff 0%, #eef5fc 100%);
}

.email-reading-shell {
  display: grid;
  gap: 18px;
  min-height: 100%;
}

.email-reading-toolbar {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
}

.email-reading-toolbar h2 {
  margin: 6px 0 0;
  color: #14324f;
}

.email-reading-actions,
.email-compose-actions,
.email-attachment-list {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.email-action-btn {
  min-height: 38px;
  padding: 9px 14px;
  border-radius: 12px;
  font-weight: 600;
  background: linear-gradient(180deg, var(--email-accent) 0%, var(--email-accent-deep) 100%);
  color: #fff;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.16);
}

.email-action-btn.secondary {
  background: #fff;
  color: #1a3d65;
  border-color: rgba(15,108,189,0.18);
  box-shadow: 0 6px 14px rgba(11, 41, 77, 0.05);
}

.email-reading-meta-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.email-reading-meta-card,
.email-reading-attachments,
.email-reading-body,
.email-error-state,
.email-empty-state {
  border: 1px solid rgba(199,216,234,0.9);
  border-radius: 18px;
  background: rgba(255,255,255,0.94);
  box-shadow: 0 16px 28px rgba(11, 41, 77, 0.06);
}

.email-reading-meta-card {
  padding: 14px;
}

.email-reading-meta-card strong,
.email-reading-meta-card span,
.email-reading-attachments > span {
  display: block;
}

.email-reading-meta-card strong {
  margin-top: 6px;
}

.email-reading-attachments {
  padding: 16px;
}

.email-attachment-link {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 8px 12px;
  border-radius: 999px;
  background: #edf5ff;
  color: #0e5fa9;
  border: 1px solid rgba(15,108,189,0.12);
  text-decoration: none;
}

.email-reading-body {
  padding: 20px;
  color: #223d5a;
  line-height: 1.7;
  overflow-wrap: anywhere;
}

.email-reading-empty-copy {
  color: var(--email-muted);
}

.email-empty-state {
  display: grid;
  place-items: center;
  gap: 8px;
  padding: 28px;
  text-align: center;
  color: #31506f;
  min-height: 220px;
}

.email-empty-state.roomy {
  min-height: 100%;
}

.email-empty-state p,
.email-error-state p {
  margin: 0;
}

.email-compose-backdrop {
  position: absolute;
  inset: 0;
  border: 0;
  background: rgba(7,24,45,0.26);
  opacity: 0;
  pointer-events: none;
  transition: opacity 160ms ease;
}

.email-compose-drawer {
  position: absolute;
  top: 18px;
  right: 18px;
  bottom: 18px;
  width: min(1075px, calc(100% - 36px));
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  border: 1px solid var(--email-border);
  border-radius: 22px;
  background: linear-gradient(180deg, rgba(255,255,255,0.98) 0%, rgba(242,248,253,0.98) 100%);
  box-shadow: 0 28px 60px rgba(11, 41, 77, 0.24);
  transform: translateX(24px);
  opacity: 0;
  pointer-events: none;
  transition: transform 180ms ease, opacity 180ms ease;
  overflow: hidden;
}

.email-compose-drawer.open,
.email-compose-backdrop.open {
  opacity: 1;
  pointer-events: auto;
}

.email-compose-drawer.open {
  transform: translateX(0);
}

.email-compose-header,
.email-compose-body,
.email-compose-actions {
  padding: 18px;
}

.email-compose-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  border-bottom: 1px solid var(--email-border);
}

.email-compose-header strong,
.email-compose-header small {
  display: block;
}

.email-compose-body {
  min-height: 0;
  overflow: auto;
  display: grid;
  gap: 14px;
}

.email-compose-field {
  display: grid;
  gap: 6px;
}

.email-compose-field span {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: #526883;
}

.email-selected-recipients {
  min-height: 54px;
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  padding: 10px;
  border-radius: 12px;
  border: 1px solid var(--email-border);
  background: rgba(245,249,253,0.96);
}

.email-recipient-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 34px;
  padding: 6px 12px;
  border-radius: 999px;
  background: #e8f2ff;
  color: #0f4f8d;
}

.email-recipient-chip strong {
  font-size: 14px;
}

.email-recipient-empty,
.email-recipient-directory-empty {
  color: var(--email-muted);
  font-size: 13px;
}

.email-recipient-directory {
  max-height: 220px;
  overflow: auto;
  display: grid;
  gap: 8px;
  padding-right: 2px;
}

.email-recipient-row {
  display: grid;
  gap: 4px;
  padding: 10px 12px;
  border-radius: 12px;
  text-align: left;
  background: rgba(255,255,255,0.92);
  border-color: rgba(199,216,234,0.92);
}

.email-recipient-row strong {
  color: #173555;
}

.email-recipient-row span {
  color: var(--email-muted);
  font-size: 12px;
}

.email-recipient-row.active {
  background: linear-gradient(180deg, #f4f9ff 0%, #e5f1ff 100%);
  border-color: rgba(15,108,189,0.28);
}

.email-compose-attachments {
  display: grid;
  gap: 12px;
}

.email-compose-actions {
  border-top: 1px solid var(--email-border);
  justify-content: flex-end;
}

.email-status-bar {
  min-height: 40px;
  display: flex;
  align-items: center;
  padding: 10px 18px;
  border-top: 1px solid var(--email-border);
  background: rgba(255,255,255,0.92);
  color: #35516f;
}

.email-status-bar.error {
  background: #fff2f2;
  color: #8d1f28;
  border-top-color: #f0bec2;
}

@keyframes email-fly-1 {
  from {
    transform: translateY(0.1em);
  }

  to {
    transform: translateY(-0.1em);
  }
}

.email-error-state {
  min-height: 100%;
  display: grid;
  place-content: center;
  gap: 8px;
  padding: 32px;
  text-align: center;
  background: linear-gradient(180deg, rgba(255,255,255,0.96) 0%, rgba(245,249,253,0.98) 100%);
}

.email-icon-wrap { position: relative; display: inline-flex; align-items: center; justify-content: center; min-width: 32px; min-height: 32px; }
.email-icon-wrap .or-icon { width: var(--app-icon-size, 32px); height: var(--app-icon-size, 32px); }
.or-icon-mail-client {
  --mail-icon-scale: 0.14;
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  overflow: visible;
  width: 100%;
  height: 100%;
  font-size: inherit;
}

.or-icon-mail-client .letter-image {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 200px;
  height: 200px;
  transform: translate(-50%, -50%) scale(var(--mail-icon-scale));
  transform-origin: center center;
  cursor: pointer;
  pointer-events: none;
}

.or-icon-mail-client .animated-mail {
  position: absolute;
  height: 150px;
  width: 200px;
  transition: 0.4s;
}

.or-icon-mail-client .animated-mail .body {
  position: absolute;
  bottom: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 100px 200px;
  border-color: transparent transparent #e95f55 transparent;
  z-index: 2;
}

.or-icon-mail-client .animated-mail .top-fold {
  position: absolute;
  top: 50px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 50px 100px 0 100px;
  transform-origin: 50% 0%;
  transition: transform 0.4s 0.4s, z-index 0.2s 0.4s;
  border-color: #cf4a43 transparent transparent transparent;
  z-index: 2;
}

.or-icon-mail-client .animated-mail .back-fold {
  position: absolute;
  bottom: 0;
  width: 200px;
  height: 100px;
  background: #cf4a43;
  z-index: 0;
}

.or-icon-mail-client .animated-mail .left-fold {
  position: absolute;
  bottom: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 50px 0 50px 100px;
  border-color: transparent transparent transparent #e15349;
  z-index: 2;
}

.or-icon-mail-client .animated-mail .letter {
  left: 20px;
  bottom: 0;
  position: absolute;
  width: 160px;
  height: 60px;
  background: #fff;
  z-index: 1;
  overflow: hidden;
  transition: 0.4s 0.2s;
}

.or-icon-mail-client .animated-mail .letter .letter-border {
  height: 10px;
  width: 100%;
  background: repeating-linear-gradient(
    -45deg,
    #cb5a5e,
    #cb5a5e 8px,
    transparent 8px,
    transparent 18px
  );
}

.or-icon-mail-client .animated-mail .letter .letter-title {
  margin-top: 10px;
  margin-left: 5px;
  height: 10px;
  width: 40%;
  background: #cb5a5e;
}

.or-icon-mail-client .animated-mail .letter .letter-context {
  margin-top: 10px;
  margin-left: 5px;
  height: 10px;
  width: 20%;
  background: #cb5a5e;
}

.or-icon-mail-client .animated-mail .letter .letter-stamp {
  margin-top: 30px;
  margin-left: 120px;
  border-radius: 100%;
  height: 30px;
  width: 30px;
  background: rgba(203, 90, 94, 0.3);
}

.or-icon-mail-client .animated-mail .letter .letter-stamp-inner {
  width: 100%;
  height: 100%;
  border-radius: 100%;
}

.or-icon-mail-client .shadow {
  position: absolute;
  top: 200px;
  left: 50%;
  width: 400px;
  height: 30px;
  transition: 0.4s;
  transform: translateX(-50%);
  border-radius: 100%;
  background: radial-gradient(
    rgba(0, 0, 0, 0.5),
    rgba(0, 0, 0, 0),
    rgba(0, 0, 0, 0)
  );
}

.or-icon-mail-client:hover .animated-mail {
  transform: translateY(18%);
}

.or-icon-mail-client:hover .animated-mail .top-fold {
  transition: transform 0.4s, z-index 0.2s;
  transform: rotateX(180deg);
  z-index: 0;
}

.or-icon-mail-client:hover .animated-mail .letter {
  height: 180px;
}

.or-icon-mail-client:hover .shadow {
  width: 250px;
}

.taskbar-app-icon.or-icon-mail-client {
  --mail-icon-scale: 0.1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.search-result-icon.or-icon-mail-client,
.inline-tool-icon.or-icon-mail-client,
.nav-app-icon.or-icon-mail-client,
.explorer-side-icon.or-icon-mail-client {
  --mail-icon-scale: 0.085;
}

.desktop-app-icon.or-icon-mail-client,
.home-app-icon.or-icon-mail-client,
.start-tile-icon.or-icon-mail-client,
.search-top-icon-svg.or-icon-mail-client,
.app-brand-icon.or-icon-mail-client {
  --mail-icon-scale: 0.12;
}

.desktop-screen[data-desktop-theme] .taskbar-apps .task-icon .or-icon-mail-client {
  --mail-icon-scale: 0.082;
  width: 100%;
  height: 100%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.desktop-screen[data-desktop-theme] .taskbar-apps .task-icon .or-icon-mail-client .letter-image {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(var(--mail-icon-scale));
}

.desktop-screen[data-desktop-theme] .taskbar-apps .task-icon .or-icon-mail-client .animated-mail {
  left: 0;
  bottom: 0;
}

.desktop-screen[data-desktop-theme] .taskbar-apps .task-icon .or-icon-mail-client:hover .animated-mail {
  transform: translateY(12%);
}

.desktop-screen[data-desktop-theme] .taskbar-apps .task-icon .or-icon-mail-client .shadow {
  display: none;
}

.desktop-app-icon { width: calc(var(--desktop-icon-size, 34px) + 18px) !important; height: calc(var(--desktop-icon-size, 34px) + 18px) !important; }
.taskbar-app-icon { width: 26px !important; height: 26px !important; }
.search-result-icon { width: 22px !important; height: 22px !important; }
.search-top-icon-svg { width: 40px !important; height: 40px !important; }
.home-app-icon { width: 34px !important; height: 34px !important; }
.start-tile-icon { width: 36px !important; height: 36px !important; }
.app-brand-icon { width: 38px !important; height: 38px !important; }
.inline-tool-icon { width: 18px !important; height: 18px !important; }
.nav-app-icon { width: 18px !important; height: 18px !important; }
.feature-card-icon { width: 20px !important; height: 20px !important; }
.explorer-side-icon { width: 18px !important; height: 18px !important; }
.email-badge-dot {
  position: absolute;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #e02020;
  right: -6px;
  top: -6px;
  border: 2px solid #ffffff;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.35);
}

@media (max-width: 1200px) {
  .email-client-main {
    grid-template-columns: 104px minmax(280px, 340px) minmax(0, 1fr);
  }

  .email-client-nav {
    padding: 18px 12px;
  }

  .email-folder-button {
    flex-direction: column;
    align-items: flex-start;
  }

  .email-folder-metrics {
    text-align: left;
  }
}

@media (max-width: 1040px) {
  .email-client-main {
    grid-template-columns: 104px minmax(0, 1fr);
    grid-template-rows: minmax(280px, 1fr) minmax(240px, 1fr);
  }

  .email-message-column {
    grid-column: 2;
    grid-row: 1;
  }

  .email-reading-column {
    grid-column: 2;
    grid-row: 2;
    border-top: 1px solid var(--email-border);
  }

  .email-client-account {
    display: none;
  }
}

@media (max-width: 760px) {
  .email-client-topbar {
    flex-wrap: wrap;
    align-items: stretch;
  }

  .email-client-brand,
  .email-client-search {
    min-width: 0;
    width: 100%;
  }

  .email-reading-meta-grid {
    grid-template-columns: 1fr;
  }
}

.character-shell {
  display: grid;
  gap: 8px;
  color: #102c4a;
}

.character-shell .field-row {
  grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
}

.character-shell.modern {
  background: linear-gradient(135deg, #071b35 0%, #0b2b55 55%, #0f3a73 100%);
  border: 1px solid #214b7f;
  border-radius: 12px;
  padding: 14px;
  color: #f2f6ff;
}

.character-shell.modern h3 { margin: 0; color: #f7faff; }
.character-shell.modern label { color: #d9e8ff; font-weight: 600; }
.character-shell.modern input,
.character-shell.modern select,
.character-shell.modern textarea {
  background: rgba(6, 18, 36, 0.65);
  border: 1px solid #3b6292;
  color: #f2f8ff;
  border-radius: 8px;
  min-height: 36px;
}
.character-shell.modern .notepad-btn { border-radius: 8px; }
.character-shell .field-row.two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.character-shell .field-row.three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.character-shell .field-row.four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.character-head { align-items: center; }

.civ11-wrap {
  background: radial-gradient(circle at top left, rgba(255,255,255,.72), transparent 32%), linear-gradient(135deg, #dce7ff 0%, #bfd1ff 42%, #d7ccff 100%);
  border-radius: 22px;
  padding: 20px;
  border: 1px solid rgba(255,255,255,.55);
  box-shadow: 0 16px 40px rgba(64, 88, 144, 0.18);
}
.civ11-header { display:flex; justify-content:space-between; align-items:center; margin-bottom:14px; }
.civ11-header h2 { margin:0; font-size: 34px; letter-spacing: -0.02em; color:#1f2a44; }
.civ11-card {
  background: rgba(255,255,255,.42);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid rgba(255,255,255,.48);
  border-radius: 22px;
  overflow: hidden;
}
.civ11-section { padding: 18px; border-top: 1px solid rgba(165,182,227,.25); }
.civ11-section:first-child { border-top: none; }
.civ11-section h3 { margin: 0 0 12px 0; color:#223456; }
.persona-builder-org {
  background: linear-gradient(180deg, rgba(233,242,255,.88), rgba(245,249,255,.92));
}
.persona-builder-context {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 14px;
}
.persona-builder-context-compact {
  align-items: end;
}
.persona-builder-context span {
  display: block;
  font-size: 12px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #5f7395;
  margin-bottom: 4px;
}
.persona-builder-context strong {
  color: #1f2a44;
}
.persona-builder-required-copy {
  color: #111827;
}
.persona-builder-required-copy strong {
  color: inherit;
}
.persona-builder-context select {
  width: 100%;
}
.civ11-grid { display:grid; gap: 12px; margin-bottom: 12px; }
.civ11-grid:last-child { margin-bottom: 0; }
.civ11-grid-3 { grid-template-columns: 1fr 1fr 1fr; }
.civ11-grid-2 { grid-template-columns: 1fr 1fr; }
.civ11-grid-dob { grid-template-columns: 1fr 130px; }
.civ11-grid-4 { grid-template-columns: 1fr 1fr .7fr .7fr; }
.civ11-grid-home-top { grid-template-columns: 140px 1fr; }
.civ11-grid-home-bottom { grid-template-columns: 1fr 1fr .6fr; }
.civ11-section .field label { font-size: 14px; font-weight: 600; color:#2f4266; }
.civ11-section input,
.civ11-section select,
.civ11-section textarea {
  width:100%;
  min-height: 42px;
  border-radius: 14px;
  border: 1px solid rgba(143,162,211,.4);
  background: rgba(255,255,255,.5);
  color:#1f2a44;
  padding: 0 12px;
}
.civ11-section input:focus,
.civ11-section select:focus,
.civ11-section textarea:focus { box-shadow: 0 0 0 3px rgba(47,125,246,.15); border-color: rgba(88,136,255,.65); }
.civ11-footer { display:flex; justify-content:flex-end; gap:12px; margin-top: 14px; }
.civ11-btn { min-width: 130px; height: 42px; border-radius: 12px; border: none; cursor: pointer; font-weight: 600; }
.civ11-btn-secondary { background: rgba(255,255,255,.6); border: 1px solid rgba(143,162,211,.4); color:#1f2a44; }
.civ11-btn-primary { background: linear-gradient(180deg,#4d97ff,#2f7df6); color:#fff; box-shadow: 0 8px 16px rgba(47,125,246,.25); }
.civilian-profile-window {
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.civilian-profile-window .app-window-body.civilian-profile-body {
  flex: 1 1 auto;
  min-height: 0;
  min-width: 0;
  overflow-y: auto;
  overflow-x: hidden;
  padding: 14px;
  background:
    radial-gradient(circle at top right, rgba(255,255,255,.7), transparent 30%),
    linear-gradient(180deg, #f5f9ff 0%, #e3edf9 100%);
  color: #162033;
  scroll-behavior: smooth;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
}
.civilian-profile-window .app-window-body.civilian-profile-body .civ11-wrap {
  width: 100%;
  min-height: 100%;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.civilian-profile-window .app-window-body.civilian-profile-body .civ11-header,
.civilian-profile-window .app-window-body.civilian-profile-body .civ11-footer,
.civilian-profile-window .app-window-body.civilian-profile-body #charMsg {
  flex: 0 0 auto;
}
.civilian-profile-window .app-window-body.civilian-profile-body .civ11-header {
  margin-bottom: 0;
}
.civilian-profile-window .app-window-body.civilian-profile-body .civ11-card {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  overflow-x: hidden;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  scrollbar-gutter: stable;
}
.call911-window { background: linear-gradient(180deg, #eef4fb 0%, #dde9f7 100%); }
.call911-window .app-window-body { padding: 0; overflow: auto; background: radial-gradient(circle at top right, rgba(255,255,255,.7), transparent 30%), linear-gradient(180deg, #f5f9ff 0%, #e3edf9 100%); color: #162033; }
.call911-shell { min-height: 100%; padding: 22px; display: grid; gap: 18px; }
.call911-hero, .call911-panel { background: rgba(255,255,255,.82); border: 1px solid rgba(69,101,145,.18); border-radius: 22px; box-shadow: 0 18px 40px rgba(28,48,79,.12); backdrop-filter: blur(10px); }
.call911-hero { display: grid; grid-template-columns: minmax(0, 1.8fr) minmax(230px, 1fr); gap: 18px; padding: 22px 24px; }
.call911-eyebrow { display: inline-block; margin-bottom: 8px; font-size: 11px; font-weight: 800; letter-spacing: .18em; text-transform: uppercase; color: #315b8d; }
.call911-hero h2 { margin: 0; font-size: 32px; font-weight: 300; color: #1d2d44; }
.call911-hero p { margin: 10px 0 0; max-width: 700px; color: #52627a; line-height: 1.55; }
.call911-hero-meta { display: grid; gap: 10px; align-content: start; }
.call911-hero-meta div { padding: 12px 14px; border-radius: 16px; background: linear-gradient(180deg, rgba(241,246,255,.96) 0%, rgba(227,238,253,.88) 100%); border: 1px solid rgba(80,113,160,.18); }
.call911-hero-meta span, .call911-panel .field span { display: block; font-size: 11px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: #49678f; }
.call911-hero-meta strong { display: block; margin-top: 6px; font-size: 16px; color: #1f3048; }
.call911-panel { padding: 18px 20px 20px; }
.call911-status { margin-bottom: 16px; padding: 11px 14px; border-radius: 14px; border: 1px solid rgba(99,131,177,.18); background: linear-gradient(180deg, rgba(245,249,255,.94) 0%, rgba(233,240,251,.92) 100%); color: #2a4266; font-size: 13px; font-weight: 600; }
.call911-status.error { border-color: rgba(169,66,66,.22); background: linear-gradient(180deg, rgba(255,244,244,.96) 0%, rgba(255,232,232,.92) 100%); color: #8f1f2f; }
.call911-status.success { border-color: rgba(69,128,93,.18); background: linear-gradient(180deg, rgba(244,255,249,.96) 0%, rgba(231,248,238,.92) 100%); color: #24563a; }
.call911-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 16px; }
.call911-field-span { grid-column: 1 / -1; }
.call911-panel .field { display: grid; gap: 6px; }
  .call911-panel input:not([type="checkbox"]), .call911-panel textarea, .call911-panel select { width: 100%; border: 1px solid rgba(118,144,182,.26); border-radius: 14px; background: linear-gradient(180deg, #ffffff 0%, #f4f8ff 100%); padding: 11px 13px; font: inherit; color: #162033; box-shadow: inset 0 1px 0 rgba(255,255,255,.62); }
.call911-panel textarea { min-height: 132px; resize: vertical; }
.call911-panel input[readonly] { cursor: default; background: linear-gradient(180deg, #f8fbff 0%, #edf3fb 100%); }
.call911-picker-inline { display: grid; grid-template-columns: 1fr auto auto; gap: 8px; align-items: center; }
.call911-picker-inline button, .call911-actions button { border: 1px solid rgba(65,96,141,.22); border-radius: 12px; background: linear-gradient(180deg, #ffffff 0%, #edf4ff 100%); color: #24466b; padding: 10px 12px; font: inherit; font-size: 12px; font-weight: 700; cursor: pointer; }
.call911-actions button.primary { background: linear-gradient(180deg, #2d79d5 0%, #1f62b4 100%); color: #fff; border-color: rgba(17,68,131,.52); box-shadow: inset 0 1px 0 rgba(255,255,255,.26); }
.call911-anon-toggle { display: inline-flex; align-items: center; align-self: end; min-height: 48px; padding: 10px 14px; border-radius: 14px; background: linear-gradient(180deg, rgba(242,247,255,.96) 0%, rgba(232,240,252,.9) 100%); border: 1px solid rgba(89,117,161,.18); color: #24466b; font-size: 13px; font-weight: 700; }
.call911-anon-toggle .switch-label-text { display: block; min-height: 24px; font-size: 13px; letter-spacing: 0; text-transform: none; color: inherit; }
.call911-actions { margin-top: 18px; display: flex; justify-content: flex-end; gap: 10px; }
@media (max-width: 840px) { .call911-hero, .call911-grid { grid-template-columns: 1fr; } }
.mysos-tab-row { display: flex; flex-wrap: wrap; gap: 8px; margin: 6px 0 8px; }
.mysos-app-btn {
  border: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  padding: 0.7em 2.4em;
  min-height: 52px;
  min-width: 132px;
  width: 100%;
  font-size: 18px;
  line-height: 1.2;
  background: transparent;
  cursor: pointer;
  user-select: none;
  overflow: hidden;
  color: royalblue;
  z-index: 1;
  font-family: inherit;
  font-weight: 500;
  text-align: center;
}
.mysos-app-btn .mysos-btn-label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: inherit;
  font-size: inherit;
  font-weight: inherit;
}
.mysos-app-btn .mysos-btn-frame {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: transparent;
  z-index: -1;
  border: 4px solid royalblue;
}
.mysos-app-btn .mysos-btn-frame::before {
  content: "";
  display: block;
  position: absolute;
  width: 8%;
  height: 500%;
  background: var(--lightgray, #eef2f8);
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(-60deg);
  transition: all 0.3s;
}
.mysos-app-btn:hover .mysos-btn-frame::before {
  transform: translate(-50%, -50%) rotate(-90deg);
  width: 100%;
  background: royalblue;
}
.mysos-app-btn:hover { color: #ffffff; }
.mysos-app-btn:active .mysos-btn-frame::before { background: #2751cd; }
.mysos-nav .mysos-app-btn {
  width: auto;
  min-width: 190px;
}
.mysos-license-card .mysos-app-btn,
.mysos-quick .mysos-app-btn {
  width: 100%;
}
.mysos-app-btn-icon {
  width: 52px;
  min-width: 52px;
  min-height: 52px;
  padding: 0.7em;
}
.mysos-app-btn-icon .inline-tool-icon,
.mysos-app-btn .nav-app-icon {
  flex: 0 0 auto;
}
.mysos-nav .mysos-app-btn,
.mysos-user .mysos-app-btn {
  gap: 0.7em;
}
.mysos-pill-btn.active { color: #2751cd; }
.mysos-pill-btn:disabled { opacity: .78; cursor: default; }
.mysos-open-btn { margin-top: 8px; }
.license-card .mysos-pill-btn { width: 100%; margin-top: 8px; }
.sa-license-card {
  --sa-license-ink: #0c2e5f;
  --sa-license-ink-strong: #071a35;
  --sa-license-paper: #f7f3ea;
  --sa-license-field: rgba(255,255,255,.96);
  --sa-license-field-border: rgba(18,52,101,.22);
  margin-top: 14px;
  position: relative;
  overflow: hidden;
  border-radius: 18px;
  border: 1px solid rgba(23,54,102,.18);
  background:
    linear-gradient(135deg, rgba(255,208,74,.34), rgba(255,255,255,0) 42%),
    linear-gradient(115deg, rgba(41,149,255,.16), rgba(255,255,255,0) 52%),
    linear-gradient(180deg, #fffdf9, var(--sa-license-paper));
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.55);
}
.sa-license-card-bg {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 18% 72%, rgba(49,189,216,.28), transparent 22%),
    radial-gradient(circle at 83% 27%, rgba(154,196,61,.22), transparent 20%),
    repeating-linear-gradient(100deg, rgba(222,104,149,.14) 0 1px, transparent 1px 6px),
    repeating-linear-gradient(12deg, rgba(60,114,188,.14) 0 1px, transparent 1px 8px);
  opacity: .95;
  pointer-events: none;
}
.sa-license-card-head {
  position: relative;
  z-index: 1;
  padding: 14px 16px 0;
}
.sa-license-card-brand {
  display: grid;
  gap: 2px;
}
.sa-license-card-state {
  color: var(--sa-license-ink);
  font-size: 38px;
  font-weight: 900;
  letter-spacing: -.04em;
  line-height: .92;
  text-transform: uppercase;
}
.sa-license-card-type {
  color: var(--sa-license-ink);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .18em;
  text-transform: uppercase;
}
.sa-license-card-body {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 150px minmax(0, 1fr);
  gap: 16px;
  padding: 14px 16px 16px;
}
.sa-license-photo-frame {
  min-height: 196px;
  border-radius: 12px;
  border: 1px solid rgba(7,40,81,.24);
  background:
    linear-gradient(180deg, rgba(44,203,229,.96), rgba(87,200,221,.86)),
    repeating-linear-gradient(0deg, rgba(255,255,255,.15) 0 2px, transparent 2px 12px);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.32);
}
.sa-license-photo {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.sa-license-photo-placeholder {
  color: rgba(255,255,255,.94);
  font-size: 52px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.sa-license-details {
  display: grid;
  gap: 8px;
  min-width: 0;
}
.sa-license-id-row,
.sa-license-name-row,
.sa-license-meta-row,
.sa-license-address-row,
.sa-license-signature-row {
  display: grid;
  gap: 8px;
}
.sa-license-id-row {
  grid-template-columns: 1.3fr .7fr .8fr .8fr;
}
.sa-license-name-row {
  grid-template-columns: 1fr 1fr;
}
.sa-license-meta-row {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.sa-license-address-row {
  grid-template-columns: 1.7fr .8fr;
}
.sa-license-signature-row {
  grid-template-columns: 1.2fr .8fr;
}
.sa-license-field,
.sa-license-signature-block,
.sa-license-issuer-block {
  min-width: 0;
  border-radius: 12px;
  border: 1px solid var(--sa-license-field-border);
  background: var(--sa-license-field);
  padding: 8px 10px;
  display: grid;
  gap: 3px;
  box-shadow: 0 1px 0 rgba(255,255,255,.7), inset 0 0 0 1px rgba(255,255,255,.4);
}
.sa-license-field span,
.sa-license-signature-block span,
.sa-license-issuer-block span {
  color: var(--sa-license-ink);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.sa-license-field strong,
.sa-license-signature-block strong,
.sa-license-issuer-block strong {
  color: var(--sa-license-ink-strong);
  font-size: 15px;
  font-weight: 800;
  line-height: 1.2;
  overflow-wrap: anywhere;
}
.sa-license-field.wide strong {
  font-size: 14px;
}
.sa-license-name-row-editor {
  grid-template-columns: 1fr 1fr .8fr;
}
.sa-license-field.sa-license-field-editable {
  align-content: start;
}
.sa-license-field.sa-license-field-editable input,
.sa-license-field.sa-license-field-editable select {
  width: 100%;
  min-width: 0;
  border: none;
  background: transparent;
  color: var(--sa-license-ink-strong);
  font-size: 15px;
  font-weight: 800;
  line-height: 1.2;
  padding: 0;
  font-family: inherit;
  outline: none;
}
.sa-license-field.sa-license-field-editable input::placeholder {
  color: rgba(12, 46, 95, 0.42);
  font-weight: 700;
}
.sa-license-field.sa-license-field-editable select {
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}
.sa-license-field.sa-license-field-editable input:focus,
.sa-license-field.sa-license-field-editable select:focus {
  box-shadow: inset 0 -2px 0 rgba(39, 81, 205, 0.26);
}
.sa-license-field.sa-license-field-editable input[readonly] {
  color: #16325f;
}
.sa-license-address-editor {
  gap: 8px;
}
.sa-license-inline-address {
  display: grid;
  grid-template-columns: .55fr 1.4fr 1.2fr .45fr;
  gap: 8px;
  align-items: stretch;
}
.sa-license-inline-address > input,
.sa-license-picker-control input {
  min-height: 34px;
  padding: 0 10px;
  border-radius: 10px;
  border: 1px solid rgba(18, 52, 101, 0.18) !important;
  background: rgba(240, 246, 255, 0.9) !important;
}
.sa-license-picker-control {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 6px;
}
.sa-license-picker-control .civ11-btn {
  min-height: 34px;
  padding: 0 14px;
  border-radius: 10px;
  white-space: nowrap;
}
.sa-license-photo-stack {
  display: grid;
  gap: 10px;
  align-content: start;
}
.sa-license-photo-upload {
  cursor: pointer;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.sa-license-photo-upload:hover,
.sa-license-photo-upload:focus-within {
  transform: translateY(-1px);
  border-color: rgba(23, 84, 177, 0.45);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.32), 0 0 0 4px rgba(64, 126, 225, 0.14);
}
.sa-license-photo-caption {
  margin: 0;
  color: #4f668e;
  font-size: 12px;
  line-height: 1.45;
}
.mysos-license-signature-field.mysos-license-autofill input,
.mysos-license-issuer-field.mysos-license-autofill input {
  animation: mysos-license-autofill-slide .6s ease both;
}

@keyframes mysos-license-autofill-slide {
  0% {
    opacity: 0;
    transform: translateY(10px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (max-width: 900px) {
  .civ11-grid-3, .civ11-grid-2, .civ11-grid-dob, .civ11-grid-4, .civ11-grid-home-top, .civ11-grid-home-bottom, .persona-builder-context { grid-template-columns: 1fr; }
  .sa-license-card-body,
  .sa-license-id-row,
  .sa-license-name-row,
  .sa-license-meta-row,
  .sa-license-address-row,
  .sa-license-signature-row {
    grid-template-columns: 1fr;
  }
  .sa-license-inline-address,
  .sa-license-name-row-editor {
    grid-template-columns: 1fr;
  }
  .civ11-header h2 { font-size: 28px; }
  .civ11-footer { flex-direction: column; }
  .civ11-btn { width: 100%; }
}

.settings-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}

.settings-grid section {
  border: 1px solid #c6d4e0;
  background: #fff;
  padding: 10px;
}

.settings-msg {
  margin-top: 8px;
  font-size: 12px;
  color: #0f4f91;
}
.mydmv-shell {
  min-height: 100%;
  background: linear-gradient(135deg, #f6f8ff 0%, #eaf0ff 40%, #edf4ff 100%);
  border: 1px solid #d9e2fb;
  border-radius: 18px;
  overflow: hidden;
}
.mydmv-header { display:flex; justify-content:space-between; align-items:center; padding:16px 18px; background:#ffffff; border-bottom:1px solid #dce3f7; }
.mydmv-brand { display:flex; align-items:center; gap:10px; color:#274779; }
.mydmv-brand h2 { margin:0; font-size:22px; }
.mydmv-logo { font-size:34px; }
.mydmv-profile { display:flex; align-items:center; gap:10px; }
.mydmv-profile span { display:inline-flex; align-items:center; gap:8px; }
.mydmv-app-btn {
  border: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.55em;
  position: relative;
  padding: 0.7em 2.4em;
  min-height: 52px;
  width: 100%;
  font-size: 18px;
  background: transparent;
  cursor: pointer;
  user-select: none;
  overflow: hidden;
  color: royalblue;
  z-index: 1;
  font-family: inherit;
  font-weight: 500;
  line-height: 1.2;
  text-align: center;
}
.mydmv-app-btn .mydmv-btn-label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: inherit;
  font-size: inherit;
  font-weight: inherit;
}
.mydmv-app-btn .mydmv-btn-frame {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: transparent;
  z-index: -1;
  border: 4px solid royalblue;
}
.mydmv-app-btn .mydmv-btn-frame::before {
  content: "";
  display: block;
  position: absolute;
  width: 8%;
  height: 500%;
  background: var(--lightgray, #eef2f8);
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(-60deg);
  transition: all 0.3s;
}
.mydmv-app-btn:hover .mydmv-btn-frame::before {
  transform: translate(-50%, -50%) rotate(-90deg);
  width: 100%;
  background: royalblue;
}
.mydmv-app-btn:hover { color: #ffffff; }
.mydmv-app-btn:active .mydmv-btn-frame::before { background: #2751cd; }
.mydmv-app-btn-icon {
  width: 52px;
  min-width: 52px;
  min-height: 52px;
  padding: 0.7em;
}
.mydmv-app-btn-icon .inline-tool-icon,
.mydmv-app-btn .nav-app-icon {
  flex: 0 0 auto;
}
.mydmv-nav { display:flex; gap:8px; padding:8px 14px; background:#f8fbff; border-bottom:1px solid #dce3f7; flex-wrap:wrap; }
.mydmv-nav button { width:auto; min-width:170px; }
.mydmv-nav button.active { color:#2e4f89; }
.mydmv-grid { display:grid; grid-template-columns: 2fr 1fr; gap:14px; padding:14px; }
.mydmv-hero { background:linear-gradient(135deg, #dce7ff, #c7d6fb); border:1px solid #d5ddf5; border-radius:18px; padding:16px; }
.mydmv-hero h3 { margin:0 0 12px; font-size:20px; color:#3a4f78; }
.mydmv-quick-actions { display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap:10px; }
.mydmv-quick-actions button { min-height:64px; width:100%; }
.mydmv-card-grid { display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:10px; margin-top:12px; }
.mydmv-feature-card { border:1px solid #d6def4; background:#ffffff; border-radius:14px; padding:14px; }
.mydmv-feature-card h4 { margin:0 0 6px; color:#3a4f78; font-size:16px; display:flex; align-items:center; gap:9px; }
.mydmv-feature-card p { margin:0; color:#5b6b8e; font-size:14px; }
.mydmv-bottom-grid { margin-top:12px; display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:10px; }
.mydmv-panel { border:1px solid #d6def4; background:#ffffff; border-radius:14px; padding:14px; }
.mydmv-panel h4 { margin:0 0 8px; color:#334b79; font-size:16px; }
.mydmv-panel p { margin:0; color:#596b8d; font-size:14px; line-height:1.35; }
.mydmv-panel ul { margin:0; padding-left:18px; display:grid; gap:7px; color:#596b8d; font-size:14px; }
.mydmv-links { list-style:none; padding:0 !important; }
.mydmv-links li { border:1px solid #d5def4; border-radius:10px; background:#fff; padding:8px 10px; }
.mydmv-vehicle { border:1px solid #d5def4; border-radius:12px; background:#fff; padding:10px; margin-bottom:10px; display:grid; gap:6px; }
.mydmv-vehicle strong { font-size:15px; color:#314b79; }
.mydmv-vehicle span { font-size:13px; color:#5f6f92; }
.mydmv-vehicle div { display:flex; gap:6px; }
.mydmv-full-btn { width:100%; margin-top:6px; }
.mydmv-hours { padding:8px 4px; color:#5b6d90; }
.mydmv-hours h4 { margin:0 0 8px; color:#3a4f78; font-size:16px; }
.mydmv-hours p { margin:0 0 4px; font-size:13px; }
@media (max-width: 1200px) {
  .mydmv-grid, .mydmv-bottom-grid, .mydmv-card-grid, .mydmv-quick-actions { grid-template-columns: 1fr; }
}

.mysos-portal { min-height:100%; display:flex; flex-direction:column; background: linear-gradient(135deg, #f7f9ff 0%, #edf2ff 45%, #eef5ff 100%); border: 1px solid #d9e2fb; border-radius: 18px; overflow: hidden; }
.mysos-portal-head { display:flex; justify-content:space-between; align-items:center; padding:16px 18px; background:#ffffff; border-bottom:1px solid #dce3f7; }
.mysos-brand { display:flex; align-items:center; gap:10px; color:#274779; }
.mysos-brand h2 { margin:0; font-size:22px; }
.mysos-brand span { font-size:34px; }
.mysos-user { display:flex; align-items:center; gap:10px; color:#425882; font-weight:600; }
.mysos-user .inline-tool-icon { margin-right: 2px; }
.mysos-nav { display:flex; gap:8px; padding:8px 14px; background:#f8fbff; border-bottom:1px solid #dce3f7; flex-wrap:wrap; }
.mysos-nav button { border:none; background:transparent; padding:10px 12px; color:#4f5f86; border-bottom:3px solid transparent; font-weight:600; display:inline-flex; align-items:center; gap:8px; }
.mysos-nav button.active { color:#2e4f89; border-bottom-color:#4e84e7; }
.mysos-nav .mysos-create-character-btn { margin-left:auto; min-width:220px; }
.mysos-hero { margin:14px; padding:16px; border-radius:18px; background:linear-gradient(135deg, #dde8ff, #cad8fb); border:1px solid #d5ddf5; }
.mysos-hero h3 { margin:0 0 10px; color:#394f79; font-size:20px; }
.mysos-quick { display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap:10px; }
.mysos-quick .mysos-app-btn { min-height:60px; }
.mysos-layout { display:grid; grid-template-columns:2fr 1fr; gap:14px; padding:0 14px 14px; }
.mysos-site-footer {
  margin-top:auto;
  padding: 16px 18px 14px;
  border-top: 1px solid #d7e2fb;
  background:
    radial-gradient(circle at top right, rgba(116, 164, 255, 0.18), transparent 28%),
    linear-gradient(180deg, #f7faff 0%, #ebf1ff 100%);
}
.mysos-site-footer-top {
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
  padding-bottom:12px;
  border-bottom:1px solid rgba(128, 153, 201, 0.24);
}
.mysos-site-footer-brand {
  display:flex;
  align-items:flex-start;
  gap:14px;
  min-width:0;
}
.mysos-site-footer-seal {
  flex:0 0 auto;
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  border-radius:18px;
  border:1px solid rgba(70, 103, 159, 0.26);
  background:linear-gradient(180deg, #ffffff 0%, #e8f0ff 100%);
  color:#2d4d83;
  font-size:17px;
  font-weight:900;
  letter-spacing:.12em;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.8);
}
.mysos-site-footer-copy { min-width:0; }
.mysos-site-footer-kicker {
  display:inline-flex;
  margin-bottom:4px;
  color:#55709f;
  font-size:10px;
  font-weight:800;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.mysos-site-footer-copy strong {
  display:block;
  color:#243f6f;
  font-size:18px;
}
.mysos-site-footer-copy p {
  margin:5px 0 0;
  max-width:720px;
  color:#62779d;
  font-size:12px;
  line-height:1.5;
}
.mysos-site-footer-badges {
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:8px;
}
.mysos-site-footer-badge,
.mysos-site-footer-link {
  display:inline-flex;
  align-items:center;
  width:max-content;
  min-height:28px;
  padding:5px 10px;
  border-radius:999px;
  border:1px solid rgba(109, 136, 182, 0.24);
  background:rgba(255,255,255,.84);
  color:#365381;
  font-size:11px;
  font-weight:700;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.72);
}
.mysos-site-footer-grid {
  display:grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap:14px 16px;
  padding-top:12px;
}
.mysos-site-footer-section {
  min-width:0;
  display:grid;
  gap:8px;
}
.mysos-site-footer-section h5 {
  margin:0;
  color:#2e4b7c;
  font-size:12px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.mysos-site-footer-link-list,
.mysos-site-footer-detail-list {
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}
.mysos-site-footer-detail-list span {
  display:block;
  color:#62779d;
  font-size:12px;
  line-height:1.45;
}
.mysos-site-footer-bottom {
  margin-top:12px;
  padding-top:10px;
  border-top:1px solid rgba(128, 153, 201, 0.2);
  display:flex;
  flex-wrap:wrap;
  gap:10px 18px;
  color:#6980a7;
  font-size:11px;
  line-height:1.45;
}
.mysos-main h4 { margin:0 0 10px; color:#334b79; }
.mysos-license-grid { display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:10px; }
.mysos-license-card { border:1px solid #d6def4; background:#ffffff; border-radius:14px; padding:12px; display:grid; gap:8px; position:relative; overflow:hidden; }
.mysos-license-card-head, .sa-license-card-head { display:flex; justify-content:space-between; align-items:flex-start; gap:10px; }
.sa-license-card-head h4 { margin:0; }
.mysos-license-card strong { color:#324b79; font-size:14px; }
.mysos-license-card span { color:#5d6d92; font-size:13px; }
.mysos-license-status {
  color:#3f577f;
  font-size:15px;
  font-family:"Palatino Linotype","Book Antiqua",Georgia,serif;
  font-style:italic;
  font-weight:700;
  letter-spacing:.03em;
  text-transform:none;
}
.mysos-license-card select { border:1px solid #ccd7f5; background:#edf3ff; border-radius:10px; padding:6px 10px; color:#36507f; }
.mysos-license-stamp { position:relative; display:inline-flex; align-items:center; justify-content:center; min-width:108px; padding:7px 12px; border:4px solid currentColor; border-radius:14px; font-size:17px; font-weight:900; letter-spacing:.11em; text-transform:uppercase; line-height:1; transform:rotate(-8deg); background:repeating-linear-gradient(135deg, rgba(255,255,255,.04) 0 8px, rgba(255,255,255,.16) 8px 14px); box-shadow:inset 0 0 0 2px rgba(255,255,255,.35); pointer-events:none; }
.mysos-license-stamp::before { content:''; position:absolute; inset:7px; border:2px solid currentColor; border-radius:8px; opacity:.88; }
.mysos-license-stamp.is-valid { color:#31b648; background-color:rgba(49,182,72,.08); }
.mysos-license-stamp.is-invalid { color:#c92c3a; background-color:rgba(201,44,58,.08); }
.mysos-panel { border:1px solid #d6def4; background:#ffffff; border-radius:14px; padding:12px; margin-top:10px; }
.mysos-panel h4 { margin:0 0 8px; color:#334b79; }
.mysos-panel ul { margin:0; padding-left:18px; display:grid; gap:6px; color:#596b8d; font-size:13px; }
.mysos-side-item { border:1px solid #d5def4; border-radius:10px; background:#fff; padding:8px 10px; color:#55678d; margin-bottom:6px; }
.mysos-empty { color:#687a9e; font-size:12px; font-style:italic; line-height:1.35; }
#mysosProfilePanel, #mysosCharactersPanel, #mysosLicensesPanel { padding:10px; }
.mysos-character-directory { border:1px solid #d7e0f4; border-radius:16px; background:#ffffff; overflow:hidden; box-shadow:0 12px 24px rgba(83,112,162,.07); }
.mysos-character-directory-head { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:10px 12px; background:linear-gradient(135deg, #dde8ff, #f4f7ff); border-bottom:1px solid #d8e1f5; }
.mysos-character-directory-head h4 { margin:0; color:#2e4d82; font-size:15px; }
.mysos-character-directory-head p { margin:3px 0 0; color:#63789f; font-size:11px; line-height:1.35; }
.mysos-character-count { padding:6px 10px; border-radius:999px; background:#ffffff; border:1px solid #d6def4; color:#37517f; font-size:12px; font-weight:700; white-space:nowrap; }
.mysos-table-wrap { overflow-x:auto; padding:8px; }
.mysos-character-table { width:100%; min-width:760px; table-layout:fixed; border-collapse:separate; border-spacing:0 6px; }
.mysos-character-table thead th { padding:0 10px 5px; color:#62779f; font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; text-align:left; white-space:nowrap; }
.mysos-character-table tbody td { padding:8px 10px; vertical-align:middle; background:#ffffff; border-top:1px solid #d9e2f5; border-bottom:1px solid #d9e2f5; }
.mysos-character-table tbody td:first-child { border-left:1px solid #d9e2f5; border-radius:14px 0 0 14px; }
.mysos-character-table tbody td:last-child { border-right:1px solid #d9e2f5; border-radius:0 14px 14px 0; }
.mysos-character-table tbody tr:hover td { background:linear-gradient(180deg, #ffffff, #f0f5ff); border-color:#c8d6f4; }
.mysos-character-primary { white-space:nowrap; }
.mysos-character-primary strong { display:inline-block; max-width:180px; margin-right:8px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:#304b79; font-size:13px; vertical-align:middle; }
.mysos-character-primary span { display:inline-block; color:#61779e; font-size:11px; vertical-align:middle; }
.mysos-character-stack { min-width:0; overflow:hidden; white-space:nowrap; }
.mysos-character-stack strong { color:#304b79; font-size:12px; }
.mysos-character-inline-list { display:flex; align-items:center; gap:6px; min-width:0; flex-wrap:nowrap; }
.mysos-character-inline-value { display:inline-block; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:#304b79; font-size:12px; font-weight:700; vertical-align:middle; }
.mysos-character-inline-note { display:inline-block; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:#61779e; font-size:11px; vertical-align:middle; }
.mysos-character-inline-truncate { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; max-width:100%; }
.mysos-table-label { display:inline-flex; width:max-content; margin-bottom:0; padding:2px 6px; border-radius:999px; background:#edf3ff; border:1px solid #d4dff7; color:#58709a; font-size:9px; font-weight:800; text-transform:uppercase; letter-spacing:.06em; vertical-align:middle; }
.mysos-character-actions { width:190px; white-space:normal; }
.mysos-character-action-stack { display:flex; align-items:center; gap:6px; }
.mysos-character-actions .mysos-app-btn { width:auto; min-width:0; flex:1 1 0; }
.mysos-character-btn { min-height:34px; min-width:0; padding:0.48em 0.9em; font-size:12px; line-height:1.05; }
.mysos-character-btn .mysos-btn-frame { border-width:3px; }
.mysos-character-btn .mysos-btn-label { white-space:nowrap; }
.mysos-character-empty { text-align:center; color:#687a9e; font-style:italic; border-radius:16px !important; }
.mysos-profile-page { display:grid; gap:12px; }
.mysos-profile-hero-page {
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:16px;
  padding:18px;
  border-radius:18px;
  border:1px solid #d5def5;
  background:
    radial-gradient(circle at top right, rgba(122, 170, 255, 0.24), transparent 34%),
    linear-gradient(135deg, #f7fbff 0%, #e2ebff 55%, #d6e2ff 100%);
  box-shadow:0 14px 28px rgba(78, 109, 164, .08);
}
.mysos-profile-hero-copy { min-width:0; }
.mysos-profile-eyebrow {
  display:inline-flex;
  margin-bottom:6px;
  color:#5c75a2;
  font-size:10px;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.mysos-profile-hero-copy h3 {
  margin:0;
  color:#274779;
  font-size:28px;
  letter-spacing:-.03em;
}
.mysos-profile-hero-copy p {
  margin:8px 0 0;
  max-width:760px;
  color:#5f7399;
  font-size:13px;
  line-height:1.5;
}
.mysos-profile-actions {
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:8px;
}
.mysos-profile-action-btn { min-width:180px; }
.mysos-profile-stat-grid {
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(160px, 1fr));
  gap:10px;
}
.mysos-profile-stat-card {
  display:grid;
  gap:5px;
  padding:12px 14px;
  border:1px solid #d7e0f4;
  border-radius:14px;
  background:linear-gradient(180deg, #ffffff 0%, #f5f8ff 100%);
  box-shadow:0 10px 20px rgba(92, 118, 165, .05);
}
.mysos-profile-stat-card span {
  color:#61779e;
  font-size:10px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.mysos-profile-stat-card strong {
  color:#2c4979;
  font-size:17px;
  line-height:1.2;
}
.mysos-profile-stat-card small {
  color:#6a7fa6;
  font-size:11px;
}
.mysos-profile-content {
  display:grid;
  grid-template-columns:minmax(0, 1.7fr) minmax(300px, 0.95fr);
  gap:14px;
  align-items:start;
}
.mysos-profile-main,
.mysos-profile-side {
  display:grid;
  gap:12px;
}
.mysos-profile-section { margin-top:0; }
.mysos-profile-field-grid {
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:10px;
}
.mysos-profile-field {
  min-width:0;
  display:grid;
  gap:4px;
  padding:10px 12px;
  border:1px solid #d8e1f5;
  border-radius:12px;
  background:linear-gradient(180deg, #ffffff 0%, #f7faff 100%);
}
.mysos-profile-field.wide { grid-column:span 2; }
.mysos-profile-field span {
  color:#61779e;
  font-size:10px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.mysos-profile-field strong {
  min-width:0;
  overflow:hidden;
  color:#2e4b7a;
  font-size:13px;
  line-height:1.4;
  text-overflow:ellipsis;
}
.mysos-profile-list {
  margin:0;
  padding-left:18px;
  display:grid;
  gap:6px;
  color:#5a6f95;
  font-size:13px;
}
.mysos-profile-list li { line-height:1.45; }
.mysos-profile-subsection {
  margin-top:12px;
  padding-top:12px;
  border-top:1px dashed #d8e1f5;
}
.mysos-profile-subsection h5 {
  margin:0 0 8px;
  color:#46618d;
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.mysos-profile-license-list { display:grid; gap:8px; }
.mysos-profile-license-row {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  padding:10px 12px;
  border:1px solid #d8e1f5;
  border-radius:12px;
  background:linear-gradient(180deg, #ffffff 0%, #f5f9ff 100%);
}
.mysos-profile-license-row strong {
  color:#2f4c7a;
  font-size:13px;
}
.mysos-profile-license-row span {
  color:#61779e;
  font-size:12px;
  text-align:right;
}
.mysos-license-modal-overlay {
  align-items: flex-start;
  overflow: auto;
  padding: 14px;
  background: rgba(6, 17, 31, 0.72);
}
.mysos-license-modal-window {
  width: min(940px, calc(100vw - 28px));
  max-width: 940px;
  border: none;
  background: transparent;
  box-shadow: none;
}
.mysos-license-modal-shell {
  position: relative;
  display: grid;
  gap: 14px;
  max-width: 940px;
  margin: 0 auto;
  max-height: none;
  overflow: visible;
  padding: 8px;
}
.mysos-license-modal-close {
  position: absolute;
  top: 8px;
  right: 8px;
  width: 40px;
  height: 40px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.36);
  background: rgba(10, 23, 39, 0.7);
  color: #fff;
  font-weight: 700;
  font-size: 16px;
  z-index: 2;
}
.mysos-license-modal-heading {
  padding-right: 52px;
}
.mysos-license-modal-heading h3 {
  margin: 0;
  color: #000;
  font-size: 28px;
  font-weight: 800;
  letter-spacing: -.03em;
}
.mysos-license-modal-heading p {
  margin: 6px 0 0;
  color: #000;
  font-size: 14px;
  line-height: 1.45;
}
.mysos-license-editor-card {
  margin-top: 0;
  width: min(900px, 100%);
  margin-inline: auto;
  border-radius: 18px;
}
.mysos-license-editor-card .sa-license-card-head {
  padding: 14px 16px 0;
}
.mysos-license-editor-card .sa-license-card-brand {
  gap: 2px;
}
.mysos-license-editor-card .sa-license-card-state {
  font-size: 38px;
}
.mysos-license-editor-card .sa-license-card-type {
  font-size: 13px;
  letter-spacing: .18em;
}
.mysos-license-editor-card .sa-license-card-body {
  grid-template-columns: 150px minmax(0, 1fr);
  gap: 16px;
  padding: 14px 16px 16px;
}
.mysos-license-editor-card .sa-license-photo-frame {
  min-height: 196px;
  border-radius: 12px;
}
.mysos-license-editor-card .sa-license-photo-placeholder {
  font-size: 52px;
}
.mysos-license-editor-card .sa-license-photo-stack {
  gap: 10px;
}
.mysos-license-editor-card .sa-license-photo-caption {
  font-size: 12px;
}
.mysos-license-editor-card .sa-license-details {
  gap: 8px;
}
.mysos-license-editor-card .sa-license-id-row,
.mysos-license-editor-card .sa-license-name-row,
.mysos-license-editor-card .sa-license-meta-row,
.mysos-license-editor-card .sa-license-address-row,
.mysos-license-editor-card .sa-license-signature-row {
  gap: 8px;
}
.mysos-license-editor-card .sa-license-field,
.mysos-license-editor-card .sa-license-signature-block,
.mysos-license-editor-card .sa-license-issuer-block {
  min-height: 0;
  border-radius: 12px;
  padding: 8px 10px;
  gap: 3px;
}
.mysos-license-editor-card .sa-license-field span,
.mysos-license-editor-card .sa-license-signature-block span,
.mysos-license-editor-card .sa-license-issuer-block span {
  font-size: 10px;
  letter-spacing: .12em;
}
.mysos-license-editor-card .sa-license-field strong,
.mysos-license-editor-card .sa-license-signature-block strong,
.mysos-license-editor-card .sa-license-issuer-block strong {
  font-size: 15px;
  line-height: 1.2;
}
.mysos-license-editor-card .sa-license-field.wide strong {
  font-size: 14px;
}
.mysos-license-editor-card .sa-license-field.sa-license-field-editable input,
.mysos-license-editor-card .sa-license-field.sa-license-field-editable select {
  font-size: 15px;
  line-height: 1.2;
}
.mysos-license-editor-card .sa-license-address-editor {
  gap: 8px;
}
.mysos-license-editor-card .sa-license-address-row {
  grid-template-columns: 1.95fr .75fr;
}
.mysos-license-editor-card .sa-license-inline-address {
  grid-template-columns: minmax(68px, .62fr) minmax(0, 1.5fr) minmax(0, 1.4fr) minmax(62px, .52fr);
  gap: 8px;
}
.mysos-license-editor-card .sa-license-inline-address > input,
.mysos-license-editor-card .sa-license-picker-control input {
  min-height: 34px;
  padding: 0 10px;
  border-radius: 10px;
}
.mysos-license-editor-card .sa-license-picker-control {
  gap: 6px;
}
.mysos-license-editor-card .sa-license-picker-control .civ11-btn {
  min-width: 72px;
  min-height: 34px;
  padding: 0 12px;
  border-radius: 10px;
  font-size: 12px;
}
.mysos-license-editor-card .mysos-license-stamp {
  min-width: 108px;
  padding: 7px 12px;
  border-width: 4px;
  border-radius: 14px;
  font-size: 17px;
}
.mysos-license-editor-card .mysos-license-stamp::before {
  inset: 7px;
  border-width: 2px;
  border-radius: 8px;
}
.mysos-license-modal-meta {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 12px;
}
.mysos-license-modal-copy {
  margin: 0;
  color: rgba(229, 238, 250, 0.92);
  line-height: 1.45;
}
.mysos-license-modal-meta .settings-msg {
  color: #e9f1ff;
  font-size: 14px;
  line-height: 1.45;
}
.mysos-license-modal-actions {
  display: flex;
  gap: 10px;
  justify-content: flex-end;
}
.mysos-license-modal-actions .civ11-btn {
  min-width: 180px;
  height: 42px;
  border-radius: 12px;
  font-size: 14px;
}
.mysos-license-modal-confirming .mysos-license-editor-card {
  filter: saturate(.92) brightness(.99);
}
.cfg-picker-modal.mysos-value-picker-modal {
  border: 1px solid #6f8db4;
  background: linear-gradient(180deg, #f6fbff 0%, #edf4ff 100%);
  color: #1f3654;
  box-shadow: 0 26px 60px rgba(9, 23, 39, 0.38);
}
.cfg-picker-modal.mysos-value-picker-modal .modal-titlebar {
  background: linear-gradient(180deg, #2a5ca7 0%, #214c8b 100%);
  border-bottom-color: #89a8d4;
}
.cfg-picker-modal.mysos-value-picker-modal .modal-close {
  border-color: rgba(255,255,255,.42);
  background: rgba(12, 34, 60, 0.28);
}
.cfg-picker-modal.mysos-value-picker-modal .field label {
  color: #43618d;
}
.cfg-picker-modal.mysos-value-picker-modal input {
  border-color: #bfd0ea;
  background: #ffffff;
  color: #203956;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.65);
}
.cfg-picker-modal.mysos-value-picker-modal .inline-row.wrap button {
  border-color: #c2d4ee;
  background: linear-gradient(180deg, #ffffff 0%, #edf4ff 100%);
  color: #24406a;
}
.cfg-picker-modal.mysos-value-picker-modal .inline-row.wrap button.primary {
  border-color: #6f92c7;
  background: linear-gradient(180deg, #3c74cf 0%, #2d5fae 100%);
  color: #fff;
}
.cfg-picker-modal.mysos-value-picker-modal .cfg-picker-list {
  border-color: #c7d6ea;
  background: rgba(255,255,255,0.88);
}
.cfg-picker-modal.mysos-value-picker-modal .cfg-picker-option {
  border-color: #d2dff1;
  background: linear-gradient(180deg, #ffffff 0%, #edf4ff 100%);
  color: #27456d;
}
.cfg-picker-modal.mysos-value-picker-modal .cfg-picker-option:hover {
  border-color: #8bb1ea;
  background: linear-gradient(180deg, #f4f8ff 0%, #deebff 100%);
}
.cfg-picker-modal.mysos-value-picker-modal .cfg-picker-option.active {
  border-color: #4f84dd;
  box-shadow: inset 0 0 0 1px #4f84dd;
}
.cfg-picker-modal.mysos-value-picker-modal .cfg-picker-option strong {
  color: #214165;
}
.cfg-picker-modal.mysos-value-picker-modal .cfg-picker-option small,
.cfg-picker-modal.mysos-value-picker-modal .cfg-picker-empty {
  color: #5d749a;
}
@media (max-width: 1200px) {
  .mysos-layout, .mysos-license-grid, .mysos-quick { grid-template-columns:1fr; }
  .mysos-character-directory-head { flex-direction:column; }
  .mysos-character-actions { width:180px; }
  .mysos-profile-hero-page { flex-direction:column; align-items:flex-start; }
  .mysos-profile-content { grid-template-columns:1fr; }
  .mysos-profile-actions {
    width:100%;
    justify-content:flex-start;
  }
  .mysos-profile-action-btn {
    width:100%;
    min-width:0;
  }
  .mysos-profile-field-grid { grid-template-columns:1fr; }
  .mysos-profile-field.wide { grid-column:auto; }
  .mysos-nav .mysos-create-character-btn { margin-left: 0; width: 100%; }
  .mysos-site-footer-top,
  .mysos-site-footer-grid,
  .mysos-site-footer-bottom {
    grid-template-columns:1fr;
    flex-direction:column;
    align-items:flex-start;
  }
  .mysos-site-footer-badges {
    justify-content:flex-start;
  }
  .mysos-license-modal-meta {
    flex-direction: column;
    align-items: stretch;
  }
  .mysos-license-modal-window {
    width: calc(100vw - 16px);
  }
  .mysos-license-modal-shell {
    gap: 12px;
    padding: 8px;
  }
  .mysos-license-modal-heading {
    padding-right: 48px;
  }
  .mysos-license-modal-heading h3 {
    font-size: 24px;
  }
  .mysos-license-modal-heading p,
  .mysos-license-modal-meta .settings-msg {
    font-size: 14px;
  }
  .mysos-license-editor-card .sa-license-card-head {
    padding: 14px 16px 0;
  }
  .mysos-license-editor-card .sa-license-card-state {
    font-size: 34px;
  }
  .mysos-license-editor-card .sa-license-card-type {
    font-size: 12px;
  }
  .mysos-license-editor-card .sa-license-card-body {
    grid-template-columns: 1fr;
    gap: 16px;
    padding: 14px 16px 16px;
  }
  .mysos-license-editor-card .sa-license-photo-frame {
    min-height: 220px;
  }
  .mysos-license-editor-card .sa-license-photo-placeholder {
    font-size: 56px;
  }
  .mysos-license-editor-card .sa-license-details,
  .mysos-license-editor-card .sa-license-id-row,
  .mysos-license-editor-card .sa-license-name-row,
  .mysos-license-editor-card .sa-license-meta-row,
  .mysos-license-editor-card .sa-license-address-row,
  .mysos-license-editor-card .sa-license-signature-row,
  .mysos-license-editor-card .sa-license-inline-address {
    grid-template-columns: 1fr;
    gap: 8px;
  }
  .mysos-license-editor-card .sa-license-field,
  .mysos-license-editor-card .sa-license-signature-block,
  .mysos-license-editor-card .sa-license-issuer-block {
    min-height: 0;
    padding: 8px 10px;
  }
  .mysos-license-editor-card .sa-license-field span,
  .mysos-license-editor-card .sa-license-signature-block span,
  .mysos-license-editor-card .sa-license-issuer-block span {
    font-size: 10px;
  }
  .mysos-license-editor-card .sa-license-field strong,
  .mysos-license-editor-card .sa-license-signature-block strong,
  .mysos-license-editor-card .sa-license-issuer-block strong,
  .mysos-license-editor-card .sa-license-field.sa-license-field-editable input,
  .mysos-license-editor-card .sa-license-field.sa-license-field-editable select {
    font-size: 15px;
  }
  .mysos-license-editor-card .sa-license-photo-caption {
    font-size: 12px;
  }
  .mysos-license-editor-card .sa-license-inline-address > input,
  .mysos-license-editor-card .sa-license-picker-control input,
  .mysos-license-editor-card .sa-license-picker-control .civ11-btn {
    min-height: 34px;
    font-size: 12px;
  }
  .mysos-license-modal-actions {
    width: 100%;
  }
  .mysos-license-modal-actions .civ11-btn {
    width: 100%;
  }
}

.mdt-shell { background:#1a2028; color:#e7ebf1; border:1px solid #3a434f; font-family:"Segoe UI", Tahoma, sans-serif; min-height:100%; height:100%; display:flex; flex-direction:column; }
.mdt-window {
  --mdt-button-bg: linear-gradient(#39546F, #5f8bb7);
  --mdt-button-shadow:
    inset -1px -1px #292929,
    inset 1px 1px #889caf,
    inset -2px -2px #132B41,
    inset 2px 2px #ffffff;
  --mdt-button-shadow-active:
    inset -1px -1px #183148,
    inset 1px 1px #183148,
    inset -2px -2px #183148,
    inset 2px 2px rgb(158, 158, 158);
  background:#1a2028;
}
.mdt-window .app-window-body.mdt-body { padding:0; height:calc(100% - var(--window-chrome-height, 72px)); background:#1a2028; overflow:hidden; }
.mdt-topbar { background:#252d38; border-bottom:1px solid #3a4556; padding:8px 10px; }
.mdt-topbar-ops { display:grid; grid-template-columns: minmax(0, 1fr) minmax(0, auto) auto; align-items:center; gap:8px; }
.mdt-top-left { display:flex; align-items:center; gap:8px; min-width:0; flex-wrap:nowrap; }
.mdt-title { font-size:17px; font-weight:700; letter-spacing:.02em; padding:2px 4px; }
.mdt-dispatch-state { font-size:11px; color:#d2dbea; border:1px solid #5e7494; padding:5px 8px; background:#1f2a39; font-weight:700; text-transform:uppercase; }
.mdt-top-center { display:flex; gap:6px; justify-content:center; align-items:center; min-width:0; flex-wrap:nowrap; }
.mdt-mode-badge, .mdt-active-call-chip { border:1px solid #4d5f79; background:#202b3a; padding:4px 9px; font-size:12px; color:#d6e0ef; }
.mdt-active-call-chip { max-width:260px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.mdt-nav-controls { display:flex; gap:3px; flex-wrap:nowrap; justify-content:flex-end; align-items:center; min-width:0; overflow-x:auto; overflow-y:hidden; scrollbar-width:none; }
.mdt-nav-controls::-webkit-scrollbar { display:none; }
.mdt-mailbox-button { --mdt-button-font-size: 12px; --mdt-button-padding: 5px 12px; display:inline-flex; align-items:center; gap:8px; min-height:34px; white-space:nowrap; }
.mdt-nav-controls button { --mdt-button-font-size: 11px; --mdt-button-padding: 0 10px; flex:0 0 auto; border:1px solid #4a596f; background:#2f3a4a; color:#eef2f8; min-width:78px; min-height:34px; border-radius:0; font-weight:700; text-transform:uppercase; letter-spacing:.02em; transition: background-color .14s ease, transform .08s ease, border-color .14s ease; white-space:nowrap; }
.mdt-nav-controls button.active { background:#445772; border-color:#677f9f; }
.mdt-nav-controls .mdt-emergency { background:#5d2d2d; border-color:#8f4848; }
.mdt-nav-controls button:hover { background:#3a4760; border-color:#7a93b8; transform:translateY(-1px); }
.mdt-nav-controls .mdt-emergency:hover { background:#6d3b3b; border-color:#a45a5a; }
.mdt-subbar { display:flex; justify-content:space-between; align-items:center; padding:5px 10px; border-bottom:1px solid #394554; background:#202833; font-size:12px; color:#cad3df; text-transform:uppercase; letter-spacing:.02em; }
.mdt-messages { border-bottom:1px solid #3d495b; background:#222b37; padding:6px 10px; font-size:12px; display:grid; gap:2px; color:#d8e0ea; }
.mdt-workspace-grid { display:grid; grid-template-columns: 27% 48% 25%; gap:8px; padding:8px; flex:1; min-height:0; }
.mdt-calls-panel, .mdt-center-panel, .mdt-query-panel { border:1px solid #3e4959; background:#232c38; padding:8px; min-height:0; overflow:auto; }
.mdt-query-panel { display:flex; flex-direction:column; }
.mdt-center-panel { background:#263241; border-color:#4f6076; box-shadow: inset 0 0 0 1px #314359; display:flex; flex-direction:column; overflow:hidden; }
.mdt-panel-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:4px; border-bottom:1px solid #3f4b5b; padding-bottom:4px; }
.mdt-panel-head h3, .mdt-query-panel h3 { margin:0; font-size:14px; text-transform:uppercase; letter-spacing:.02em; }
.mdt-calls-stats { border:1px solid #3e4f64; background:#1f2b3a; color:#bfd0e4; padding:5px 7px; font-size:11px; text-transform:uppercase; letter-spacing:.03em; margin-bottom:6px; font-weight:700; }
.mdt-toolbar { display:flex; gap:3px; flex-wrap:wrap; margin-bottom:6px; }
  .mdt-toolbar select, .mdt-toolbar button, .mdt-toolbar input:not([type="checkbox"]) { border:1px solid #4a5668; background:#2f3a49; color:#eaf0f8; padding:4px 6px; font-size:11px; }
  .mdt-toolbar button { --mdt-button-font-size: 11px; --mdt-button-padding: 4px 8px; }
  .mdt-toggle { display:inline-flex; align-items:center; vertical-align:middle; border:1px solid #4a5668; background:#2f3a49; color:#eaf0f8; padding:4px 8px; min-height:32px; font-size:11px; }
  .mdt-toggle .switch-label-text { display:inline-flex; align-items:center; min-height:24px; line-height:1.2; }
.mdt-my-calls-filter-strip { display:inline-flex; align-items:center; gap:3px; flex-wrap:nowrap; }
.mdt-department-filter-group { position:relative; display:flex; align-items:center; min-height:32px; }
.mdt-department-filter-dropdown { position:relative; min-width:92px; font-size:11px; font-weight:700; text-transform:uppercase; }
.mdt-department-filter-dropdown summary { list-style:none; display:flex; align-items:center; justify-content:space-between; gap:8px; min-height:32px; border:1px solid #4a5668; background:#2f3a49; color:#eaf0f8; padding:4px 24px 4px 8px; cursor:pointer; user-select:none; }
.mdt-department-filter-dropdown summary::-webkit-details-marker { display:none; }
.mdt-department-filter-dropdown summary::after { content:''; position:absolute; right:9px; top:50%; transform:translateY(-25%); border-left:4px solid transparent; border-right:4px solid transparent; border-top:5px solid currentColor; }
.mdt-department-filter-menu { position:absolute; z-index:50; top:calc(100% + 2px); left:0; min-width:100%; display:grid; gap:2px; border:1px solid #4a5668; background:#1f2b3a; padding:3px; box-shadow:0 8px 18px rgba(0,0,0,.35); }
.mdt-department-filter-option { display:flex; align-items:center; gap:6px; border:1px solid transparent; color:#eaf0f8; padding:5px 7px; min-height:26px; font-size:11px; font-weight:700; cursor:pointer; white-space:nowrap; }
.mdt-department-filter-option:hover, .mdt-department-filter-option:has(input:checked) { border-color:#4a5668; background:#2f3a49; color:#ffffff; }
.mdt-department-filter-option input { margin:0; accent-color:#8fb9ff; }
.mdt-calls-list { display:grid; gap:4px; }
.mdt-call-row { position:relative; overflow:hidden; border:1px solid #445166; background:#2a3443; padding:6px; display:grid; gap:3px; cursor:pointer; }
.mdt-call-row > * { position:relative; z-index:1; }
.mdt-call-row:hover { background:#2d3950; }
.mdt-call-row.selected { border-color:#9db4d4; box-shadow: inset 0 0 0 1px #9db4d4; background:#314059; }
.mdt-call-row.pending { border-left:4px solid #b08f3e; }
.mdt-call-row.active { border-left:4px solid #69d57a; }
.mdt-call-row.closed { border-left:4px solid #6a7078; }
.mdt-call-row.backup-request-flash::before { content:''; position:absolute; inset:0; pointer-events:none; z-index:0; background:rgba(177, 48, 48, .72); opacity:0; animation:mdt-call-backup-flash 1s steps(2, end) infinite; }
.mdt-call-row.backup-request-flash { animation:mdt-call-backup-border 1s steps(2, end) infinite; }
@keyframes mdt-call-backup-flash {
  0%, 49.999% { opacity: 0; }
  50%, 100% { opacity: 1; }
}
@keyframes mdt-call-backup-border {
  0%, 49.999% { border-color:#445166; }
  50%, 100% { border-color:#d77272; }
}
@keyframes mdt-call-backup-border-retro {
  0%, 49.999% { border-color:#4b6075; }
  50%, 100% { border-color:#d77a7a; }
}
.mdt-call-main { display:flex; align-items:center; gap:7px; font-size:12px; }
.mdt-call-main strong { color:#f4f7fc; font-size:13px; min-width:78px; }
.mdt-call-type { color:#d5dfec; font-weight:700; text-transform:uppercase; font-size:11px; }
.mdt-call-tag { border:1px solid #50657f; color:#d4e0f0; background:#2a3a50; padding:1px 5px; font-size:9px; letter-spacing:.05em; }
.mdt-call-tag.attached { border-color:#4f7a5d; background:#2a4a3a; }
.mdt-call-preview { color:#9fb0c6; font-size:11px; }
.mdt-call-meta, .mdt-call-sub { display:flex; justify-content:space-between; gap:6px; font-size:11px; color:#bcc7d6; align-items:center; }
.mdt-call-loc { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; display:block; max-width:100%; }
.mdt-priority { font-weight:700; }
.mdt-call-sub button { --mdt-button-font-size: 11px; --mdt-button-padding: 3px 7px; border:1px solid #55657d; background:#334153; color:#eff4fb; text-transform:uppercase; font-weight:700; }
.mdt-call-sub button[data-call-action="attach"],
.mdt-call-sub button[data-call-action="override"],
.mdt-call-sub button[data-call-action="request"] {
  border-color: #93b77a;
  background: #B3D69A;
  color: #223018;
}
.mdt-call-sub button[data-call-action="attach"] {
  border-color: #7e9f67;
  background: #8eae77;
  color: #ffffff;
}
.mdt-call-sub button[data-call-action="detach"],
.mdt-unit-actions button[data-unit-action="detach"] {
  border-color: #b86f61;
  background: #CE705F;
  color: #fff5f3;
}
.mdt-center-header { border-bottom:1px solid #4c5f76; background:#213041; padding:6px; margin-bottom:6px; display:flex; justify-content:space-between; align-items:flex-end; gap:8px; }
.mdt-center-header h3 { margin:0; font-size:17px; text-transform:uppercase; letter-spacing:.04em; }
.mdt-center-meta { display:flex; gap:6px; font-size:12px; color:#c3cfde; flex-wrap:wrap; }
.mdt-center-content { font-size:13px; color:#e4eaf4; display:flex; flex-direction:column; gap:8px; flex:1; min-height:0; overflow:auto; }
.mdt-section { border:1px solid #415368; background:#243344; padding:6px; }
.mdt-incident-summary { border:1px solid #556c86; background:#1f2e41; display:grid; grid-template-columns: 1fr 2fr auto; gap:6px; align-items:center; padding:6px; }
.mdt-incident-id { font-size:17px; font-weight:700; color:#f1f6ff; letter-spacing:.03em; }
.mdt-incident-type { font-size:13px; font-weight:700; color:#d4deed; text-transform:uppercase; }
.mdt-incident-time { font-size:12px; color:#b4c3d8; }
.mdt-call-header-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:5px; margin-bottom:0; }
.mdt-call-header-grid div { border:1px solid #3f4a5a; background:#283242; padding:5px; }
.mdt-call-header-grid strong { font-size:11px; text-transform:uppercase; color:#aebbd0; letter-spacing:.05em; }
.mdt-call-header-grid p { margin:2px 0 0; color:#e9eef7; font-size:13px; font-weight:600; }
.mdt-query-section { border:1px solid #405065; background:#222f3f; padding:5px; margin-bottom:6px; }
.mdt-query-section-title { font-size:11px; text-transform:uppercase; color:#afbdd3; margin-bottom:4px; letter-spacing:.05em; font-weight:700; }
.mdt-query-grid { display:grid; grid-template-columns:1fr 1fr; gap:4px; }
.mdt-query-grid.single { grid-template-columns:1fr; }
.mdt-query-field { display:grid; gap:4px; }
.mdt-query-field span { font-size:11px; text-transform:uppercase; color:#afbdd3; font-weight:700; letter-spacing:.05em; }
.mdt-query-grid input,
.mdt-query-grid select { border:1px solid #4b586a; background:#2f3a49; color:#eef3fa; padding:5px 6px; font-size:11px; width:100%; }
.mdt-query-grid select { text-transform:uppercase; }
.mdt-query-tabs { margin-bottom:8px; }
.mdt-query-actions { margin-top:8px; }
.mdt-recent-queries { display:grid; gap:4px; margin-top:6px; }
.mdt-recent-queries button { --mdt-button-font-size: 11px; --mdt-button-padding: 5px 7px; border:1px solid #46556a; background:#2c3848; color:#e9eff8; text-align:left; display:flex; justify-content:space-between; align-items:center; }
.mdt-recent-queries button small { color:#9fb1c8; font-size:9px; }
.mdt-button-log-panel { margin-top:auto; border:1px solid #3d5066; background:#172231; min-height:86px; display:grid; grid-template-rows:auto minmax(0,1fr); }
.mdt-button-log-head { padding:5px 7px; border-bottom:1px solid #34475d; background:#202e3f; color:#aebdd1; font-size:10px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.mdt-button-log { min-height:0; max-height:112px; overflow:auto; padding:5px 7px; font-family:Consolas, "Courier New", monospace; font-size:10px; line-height:1.35; color:#d9f7d9; display:flex; flex-direction:column; gap:3px; }
.mdt-button-log-line { display:flex; gap:6px; align-items:baseline; border-bottom:1px solid rgba(106,138,173,.14); padding-bottom:2px; }
.mdt-button-log-line span { flex:0 0 auto; color:#7fbd8a; }
.mdt-button-log-line strong { min-width:0; color:#e7f4e8; font-weight:600; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.mdt-button-log-line.muted { color:#7f91a8; font-style:italic; border-bottom:0; }
.mdt-actionbar { display:grid; grid-template-columns: repeat(6,minmax(0,1fr)); background:#242d39; border-top:1px solid #3a4556; border-bottom:1px solid #3a4556; gap:6px; padding:6px; }
.mdt-actionbar button { --mdt-button-font-size: 12px; --mdt-button-padding: 5px 16px; border:1px solid #41536d; background:#2e3a4c; color:#ecf2fb; min-height:50px; font-weight:700; border-radius:0; text-transform:uppercase; letter-spacing:.02em; display:flex; align-items:center; justify-content:center; transition: background-color .14s ease, transform .08s ease, border-color .14s ease; }
.mdt-actionbar button:hover { background:#3a4860; border-color:#6f87ab; transform:translateY(-1px); }
.mdt-actionbar button.danger { background:#5a2d2d; }
.mdt-actionbar button.danger:hover { background:#6a3939; border-color:#a16464; }
.mdt-actionbar-split { display:grid; grid-template-columns:3fr 1fr; gap:6px; min-width:0; }
.mdt-actionbar-split button { min-width:0; width:100%; padding-left:6px; padding-right:6px; }
.mdt-actionbar-split #mdtActTraffic { border-color:#4f7a5d; background:#2a4a3a; color:#f0fff4; font-size:10px; }
.mdt-actionbar-split #mdtActTraffic:hover { background:#356346; border-color:#75a881; }
.mdt-status-strip { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); background:#1b2430; color:#cad4e2; font-weight:700; font-size:11px; letter-spacing:.03em; text-transform:uppercase; }
.mdt-status-strip span { padding:5px 9px; border-right:1px solid #3a4658; }
#mdtFooterConn { color:#69d57a; }
.mdt-inline { display:flex; gap:6px; margin-top:8px; flex-wrap:wrap; }
.mdt-inline input, .mdt-inline select, .mdt-inline button, .mdt-center-content button, .mdt-panel-head button, .mdt-query-panel button { border:1px solid #4f5d72; background:#334153; color:#eef3fb; padding:5px 7px; border-radius:0; font-size:12px; }
.mdt-inline button, .mdt-center-content button, .mdt-panel-head button, .mdt-query-panel button { --mdt-button-font-size: 12px; --mdt-button-padding: 5px 7px; }
.mdt-inline button:hover, .mdt-center-content button:hover, .mdt-panel-head button:hover, .mdt-query-panel button:hover, .mdt-recent-queries button:hover, .mdt-call-sub button:hover { background:#40516a; border-color:#6e87ab; }
.mdt-call-sub button[data-call-action="attach"]:hover,
.mdt-call-sub button[data-call-action="override"]:hover,
.mdt-call-sub button[data-call-action="request"]:hover {
  background: #D7F0C5;
  border-color: #b8d79f;
  color: #1e2a15;
}
.mdt-call-sub button[data-call-action="attach"]:hover {
  background: #9abc81;
  border-color: #86a86e;
  color: #ffffff;
}
.mdt-call-sub button[data-call-action="detach"]:hover,
.mdt-unit-actions button[data-unit-action="detach"]:hover {
  background: #DEA095;
  border-color: #c98a80;
  color: #2f1915;
}
.mdt-center-content #mdtMarkScene {
  border-color: #4faea1;
  background: #5FCEBF;
  color: #16312d;
}
.mdt-center-content #mdtMarkScene:hover {
  background: #95DED4;
  border-color: #77c8bd;
  color: #13302b;
}
.mdt-center-content #mdtClearCall {
  border-color: #b85d5d;
  background: #CE5F5F;
  color: #fff4f4;
}
.mdt-center-content #mdtClearCall:hover {
  background: #d98383;
  border-color: #c97575;
  color: #331717;
}
.mdt-note-entry input { flex:1; min-width:220px; }
.mdt-inline textarea { min-height:62px; width:100%; border:1px solid #4f5d72; background:#2b3645; color:#eef3fb; padding:7px; border-radius:0; font-size:12px; }
.mdt-return { margin-top:6px; border:1px solid #405066; background:#1a2432; color:#e8efff; padding:9px; max-height:280px; overflow:auto; font-size:12px; white-space:pre-wrap; }
.mdt-message-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:4px; }
.mdt-message-head button { --mdt-button-font-size: 11px; --mdt-button-padding: 2px 8px; border:1px solid #4c5f77; background:#2e3f55; color:#ecf3ff; border-radius:0; }
.mdt-status { font-weight:700; text-transform:uppercase; font-size:11px; }
.mdt-status.pending { color:#d8b65c; }
.mdt-status.active { color:#69d57a; }
.mdt-status.closed { color:#9ba3ad; }
.mdt-map-placeholder { border:1px dashed #50627c; background:#263242; padding:10px; min-height:300px; display:grid; gap:8px; }
.mdt-map-placeholder p { margin:0; color:#eef6ff; }
.mdt-map-list { display:grid; gap:4px; }
.mdt-map-marker { border:1px solid #536784; background:#304056; color:#e9f1ff; text-align:left; padding:6px; }
.mdt-map-marker.unit { border-color:#4f6a59; background:#30453b; }
.mdt-map-view { display:grid; grid-template-columns:minmax(0, 1.8fr) minmax(240px, .8fr); gap:10px; min-height:100%; }
.mdt-map-stage { border:1px solid #42566f; background:linear-gradient(180deg, #233246 0%, #1d2a3b 100%); display:grid; grid-template-rows:auto minmax(0,1fr); min-height:0; box-shadow:inset 0 0 0 1px rgba(157,187,225,0.08); }
.mdt-map-stage-head { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:10px 12px; border-bottom:1px solid #41566f; background:rgba(91,121,160,0.12); }
.mdt-map-stage-head strong { display:block; font-size:13px; letter-spacing:.05em; text-transform:uppercase; color:#eef5ff; }
.mdt-map-stage-head p { margin:4px 0 0; font-size:11px; color:#b8c7da; }
.mdt-map-controls { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; align-items:center; }
.mdt-map-control { --mdt-button-font-size: 12px; --mdt-button-padding: 0 12px; min-width:44px; height:38px; border:1px solid rgba(121,154,197,0.5); background:linear-gradient(180deg, rgba(62,88,122,0.95) 0%, rgba(42,60,84,0.98) 100%); color:#eef5ff; font-weight:700; letter-spacing:.04em; text-transform:uppercase; box-shadow:0 8px 18px rgba(7,14,24,0.24), inset 0 1px 0 rgba(255,255,255,0.08); transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease, background .16s ease; }
.mdt-map-control:hover { transform:translateY(-2px); border-color:#9cbced; background:linear-gradient(180deg, rgba(78,109,150,0.98) 0%, rgba(52,73,103,1) 100%); box-shadow:0 12px 20px rgba(8,18,30,0.3), inset 0 1px 0 rgba(255,255,255,0.12); }
.mdt-map-control:active { transform:translateY(1px) scale(.97); box-shadow:0 5px 10px rgba(8,18,30,0.3), inset 0 2px 4px rgba(0,0,0,0.2); }
.mdt-map-control.reset { min-width:78px; background:linear-gradient(180deg, rgba(74,102,140,0.98) 0%, rgba(48,67,93,1) 100%); }
.mdt-map-zoom-readout { min-width:64px; padding:0 12px; height:38px; display:inline-flex; align-items:center; justify-content:center; border:1px solid rgba(117,146,182,0.4); background:rgba(20,31,46,0.78); color:#dfe9f8; font-size:11px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.mdt-map-image-shell { position:relative; min-height:420px; height:100%; padding:12px; display:flex; align-items:center; justify-content:center; background:radial-gradient(circle at center, rgba(76,116,160,0.35) 0%, rgba(31,47,68,0.72) 42%, rgba(20,31,44,0.96) 100%); overflow:hidden; cursor:grab; touch-action:none; }
.mdt-map-image-shell.is-dragging { cursor:grabbing; }
.mdt-map-canvas { display:flex; align-items:center; justify-content:center; transform-origin:center center; transition:transform .18s ease; will-change:transform; user-select:none; -webkit-user-select:none; -webkit-user-drag:none; }
.mdt-map-image { max-width:100%; max-height:100%; width:auto; height:auto; object-fit:contain; border:1px solid rgba(190,214,244,0.28); box-shadow:0 18px 44px rgba(0,0,0,0.34); background:#1d2c40; user-select:none; -webkit-user-select:none; -webkit-user-drag:none; pointer-events:none; }
.mdt-map-image-fallback { display:none; max-width:360px; border:1px dashed #6b86a8; background:rgba(28,42,58,0.92); padding:16px; text-align:center; color:#dce8f8; }
.mdt-map-image-fallback strong { display:block; margin-bottom:6px; text-transform:uppercase; letter-spacing:.05em; font-size:12px; }
.mdt-map-image-fallback p { margin:0; font-size:12px; color:#bfcee2; }
.mdt-map-image-shell.is-missing .mdt-map-image-fallback { display:block; }
.mdt-map-sidebar { min-height:0; display:flex; }
.mdt-map-sidebar .mdt-map-placeholder { width:100%; min-height:100%; align-content:start; }
.mdt-map-sidebar .mdt-map-list { max-height:100%; overflow:auto; }
.mdt-empty { border:1px dashed #4d5a6d; background:#252f3d; color:#aebad0; padding:10px; font-size:12px; }
.mdt-calls-overview { border:1px solid #415267; background:linear-gradient(180deg, #243345 0%, #202d3d 100%); margin-bottom:8px; padding:10px; display:grid; gap:10px; }
.mdt-calls-overview-head { display:grid; gap:3px; }
.mdt-calls-overview-head strong { font-size:13px; text-transform:uppercase; letter-spacing:.05em; color:#eef4ff; }
.mdt-calls-overview-head span { font-size:11px; color:#b8c5d6; }
.mdt-calls-overview-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px; }
.mdt-calls-overview-stat { border:1px solid #3f5166; background:#1f2d3d; padding:8px 6px; display:grid; gap:5px; text-align:left; }
.mdt-calls-overview-stat span { font-size:10px; text-transform:uppercase; letter-spacing:.05em; color:#afbed1; font-weight:700; }
.mdt-calls-overview-stat strong { font-size:18px; color:#f5f9ff; }
.mdt-calls-divider { height:1px; margin:0 0 8px; background:linear-gradient(90deg, rgba(122,145,173,0.45) 0%, rgba(122,145,173,0.1) 100%); }
.mdt-action-row { margin-top:0; }
.mdt-action-row button { min-width:122px; }
.mdt-transfer-primary-modal { display:grid; gap:8px; }
.mdt-transfer-primary-modal p { margin:0; color:#d7e3f2; }
.mdt-transfer-primary-modal label { display:grid; gap:4px; font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.05em; color:#aebdd1; }
.mdt-unit-actions { display:flex; gap:4px; flex-wrap:wrap; }
.mdt-unit-actions button { --mdt-button-font-size: 11px; --mdt-button-padding: 2px 6px; }
.mdt-units-titlebar { display:flex; align-items:center; gap:10px; }
.mdt-units-help { --mdt-button-font-size: 12px; --mdt-button-padding: 0; width:22px; height:22px; display:inline-flex; align-items:center; justify-content:center; font-size:12px; letter-spacing:0; outline-offset:-4px; }
.mdt-units-panel { border:1px solid #3f4d5f; background:linear-gradient(180deg, #253244 0%, #223041 100%); min-height:100%; display:flex; flex-direction:column; }
.mdt-units-head, .mdt-units-row { display:grid; grid-template-columns: 92px 96px 100px minmax(78px, 1fr) minmax(86px, 1fr) minmax(92px, max-content); align-items:center; }
.mdt-units-head { padding:10px 14px; background:#2b384b; border-bottom:1px solid #415065; text-transform:uppercase; letter-spacing:.06em; font-size:11px; color:#d6dfeb; font-weight:700; }
.mdt-units-head span:nth-child(5), .mdt-units-head span:nth-child(6) { text-align:center; }
.mdt-units-body { display:flex; flex-direction:column; }
.mdt-units-row { min-height:54px; border-bottom:1px solid #39485b; background:linear-gradient(180deg, rgba(34,48,65,0.96) 0%, rgba(31,44,59,0.96) 100%); }
.mdt-units-cell { padding:10px 14px; border-right:1px solid rgba(70,86,106,0.35); min-height:100%; min-width:0; display:flex; align-items:center; justify-content:flex-start; }
.mdt-units-cell:last-child { border-right:none; justify-content:center; }
.mdt-units-cell.unit-id strong { font-size:12px; letter-spacing:.03em; color:#a9d8ff; text-transform:uppercase; }
.mdt-units-cell.callsign span, .mdt-units-cell.officer span { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:11px; color:#eef3fb; }
.mdt-units-cell.current-call { justify-content:center; font-size:12px; letter-spacing:.05em; color:#e5edf8; }
.mdt-unit-badge { display:inline-flex; align-items:center; justify-content:center; min-width:66px; padding:6px 10px; border:1px solid #5b6c84; background:#344559; color:#dce9f7; text-transform:uppercase; letter-spacing:.05em; font-weight:700; font-size:11px; box-shadow: inset 0 0 0 1px rgba(255,255,255,0.03); }
.mdt-unit-badge.available { background:#314a3e; border-color:#597760; }
.mdt-unit-badge.active { background:#3a465f; border-color:#607292; }
.mdt-unit-badge.busy { background:#5b4732; border-color:#8c6d43; }
.mdt-unit-badge.neutral, .mdt-unit-badge.area { background:#324457; border-color:#61748d; }
.mdt-unit-status-select { width:100%; border:1px solid #52637a; background:#314154; color:#eef3fb; padding:6px 8px; border-radius:0; font-size:11px; text-transform:uppercase; font-weight:700; }
.mdt-unit-status-select:disabled { opacity:.7; cursor:not-allowed; }
.mdt-unit-assignment-select { min-width:74px; max-width:150px; border:1px solid #61748d; background:#324457; color:#dce9f7; padding:5px 22px 5px 6px; border-radius:0; font-size:10px; text-transform:uppercase; font-weight:700; text-align:center; }
.mdt-units-footnote { padding:12px 14px; color:#b8c5d5; font-size:11px; }
.mdt-units-empty { padding:16px 14px; color:#c2cede; font-size:11px; }
.mdt-units-toolbar { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; padding:12px 14px; border-bottom:1px solid #415065; background:linear-gradient(180deg, rgba(46,62,82,.96) 0%, rgba(40,55,73,.96) 100%); }
.mdt-units-toolbar strong { display:block; font-size:13px; text-transform:uppercase; letter-spacing:.05em; color:#eef4ff; }
.mdt-units-toolbar span { display:block; margin-top:4px; font-size:11px; color:#b7c4d6; }
.mdt-units-toolbar button { --mdt-button-font-size: 11px; --mdt-button-padding: 7px 10px; border:1px solid #5a6f8e; background:#33465f; color:#edf4ff; font-weight:700; text-transform:uppercase; }
.mdt-units-panel.embedded { min-height:auto; height:100%; }
.mdt-units-panel.compact .mdt-units-toolbar { padding:7px 9px; align-items:center; }
.mdt-units-panel.compact .mdt-units-toolbar strong { font-size:11px; }
.mdt-units-panel.compact .mdt-units-toolbar span { margin-top:2px; font-size:9px; }
.mdt-units-panel.compact .mdt-units-toolbar button { --mdt-button-font-size: 9px; --mdt-button-padding: 4px 7px; }
.mdt-units-panel.compact .mdt-units-head,
.mdt-units-panel.compact .mdt-units-row { grid-template-columns: 72px 72px 100px minmax(58px, 1fr) minmax(64px, 1fr) minmax(74px, max-content); }
.mdt-units-panel.compact .mdt-units-head { padding:5px 8px; font-size:9px; }
.mdt-units-panel.compact .mdt-units-row { min-height:26px; }
.mdt-units-panel.compact .mdt-units-cell { padding:4px 8px; }
.mdt-units-panel.compact .mdt-units-cell.unit-id strong,
.mdt-units-panel.compact .mdt-units-cell.current-call,
.mdt-units-panel.compact .mdt-units-cell.callsign span,
.mdt-units-panel.compact .mdt-units-cell.officer span { font-size:10px; }
.mdt-units-panel.compact .mdt-unit-status-select { padding:2px 4px; font-size:9px; }
.mdt-units-panel.compact .mdt-unit-badge { min-width:50px; padding:3px 6px; font-size:9px; }
.mdt-units-panel.compact .mdt-units-footnote { padding:6px 8px; font-size:9px; }
.mdt-units-row.linked { box-shadow: inset 4px 0 0 #84aef1; background:linear-gradient(180deg, rgba(42,58,79,0.98) 0%, rgba(36,51,69,0.98) 100%); }
.mdt-units-row.mine { box-shadow: inset 0 0 0 1px rgba(126, 189, 146, 0.32); }
.mdt-home-layout { display:grid; grid-template-columns:1fr; grid-template-rows:minmax(0,1fr) auto; gap:8px; align-items:start; min-height:0; height:100%; }
.mdt-home-main, .mdt-home-side { display:grid; gap:8px; align-content:start; min-height:0; }
.mdt-home-main { min-height:300px; }
.mdt-home-side { align-self:end; }
.mdt-home-stage-empty { min-height:220px; display:flex; align-items:flex-start; }
.mdt-home-layout.dragover .mdt-home-stage-empty,
.mdt-home-stage-empty.dragover { border-color:#7fb0ff; background:#2d3f54; color:#f5f9ff; box-shadow: inset 0 0 0 1px rgba(127,176,255,0.28); }
.mdt-inline-field { flex:1; min-width:180px; }
.mdt-leads-header { border:1px solid #425469; background:#253243; color:#dce7f9; padding:6px 8px; font-size:12px; margin-bottom:6px; }
.mdt-leads-header { display:flex; justify-content:space-between; align-items:center; }
.mdt-leads-header-actions { display:flex; align-items:center; gap:8px; }
.mdt-leads-header-actions button { white-space:nowrap; }
.mdt-leads-row { border:1px solid #425569; background:#243346; margin-bottom:5px; }
.mdt-leads-row-head { --mdt-button-font-size: 11px; --mdt-button-padding: 6px 8px; width:100%; border:0; border-bottom:1px solid #394c61; background:#2b3a4d; color:#e8f0fb; display:flex; justify-content:space-between; align-items:center; text-align:left; }
.mdt-leads-row-head:hover { background:#34465e; }
.mdt-leads-row.expanded { border-color:#667f9f; }
.mdt-leads-row .mdt-return { margin:0; border:0; border-top:1px solid #42556b; max-height:220px; }
.mdt-leads-view { display:flex; flex-direction:column; flex:1; min-height:0; gap:6px; }
.mdt-page-list { display:grid; gap:3px; flex:0 0 auto; max-height:40%; overflow:auto; }
.mdt-leads-content { display:flex; flex:1; min-height:0; }
.mdt-leads-content .mdt-return,
.mdt-center-content > .mdt-return {
  margin:0;
  max-height:none;
  width:100%;
  height:100%;
  flex:1;
}
.mdt-page-row { --mdt-button-font-size: 11px; --mdt-button-padding: 5px 7px; width:100%; text-align:left; border:1px solid #3d5067; background:#243447; color:#e8f1ff; text-transform:uppercase; letter-spacing:.02em; }
.mdt-page-row.subject-1 { background:#27394f; }
.mdt-page-row.active { border-color:#8ba4c8; background:#314863; color:#ffffff; font-weight:700; }
.mdt-page-row:hover { background:#3a5270; }
.mdt-page-row.mdt-leads-hit-button,
.mdt-page-row.mdt-leads-hit-button.active {
  border-color:#e7a7a7 !important;
  background:#E07E7E !important;
  color:#ffffff !important;
}
.mdt-call-row.dragging { opacity:.52; }
.mdt-table { font-size:12px; }
.mdt-table th { text-transform:uppercase; font-size:11px; letter-spacing:.04em; }
.mdt-table-wrap { width:100%; overflow-x:auto; }
.mdt-resizable-table { width:100%; table-layout:fixed; }
.mdt-resizable-table th { position:relative; width:auto; }
.mdt-resizable-table th > span { display:block; padding-right:10px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.mdt-resizable-table td { overflow-wrap:anywhere; }
.mdt-col-resizer { position:absolute; top:0; right:-5px; width:10px; height:100%; border:0; padding:0; background:transparent; cursor:col-resize; z-index:2; opacity:0; appearance:none; -webkit-appearance:none; outline:none; box-shadow:none; }
.mdt-col-resizer::after { display:none; content:''; }
.mdt-col-resizer:hover::after, .mdt-col-resizer:focus-visible::after { display:none; background:transparent; }
.mdt-resizable-table.mdt-log-table td:first-child { width:auto; white-space:nowrap; }
.mdt-events-history td { vertical-align:top; }
.mdt-events-history td:last-child { min-width:240px; }
.mdt-map-image-fallback code { color:#f2f7ff; }
@media (max-width: 1280px) {
  .mdt-map-view { grid-template-columns:1fr; }
  .mdt-map-image-shell { min-height:320px; }
  .mdt-map-stage-head { align-items:flex-start; flex-direction:column; }
  .mdt-map-controls { justify-content:flex-start; }
}
.mdt-link-button { border:none; background:transparent; color:#8dc3ff; font:inherit; padding:0; text-decoration:underline; cursor:pointer; }
.mdt-link-button:hover { color:#c4e3ff; }
.mdt-log-table td:first-child { white-space:nowrap; width:88px; }
.mdt-detail-tabs { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:10px; }
.mdt-detail-tab { --mdt-button-font-size: 11px; --mdt-button-padding: 6px 10px; border:1px solid #51647e; background:#33465c; color:#dde8f9; font-weight:700; text-transform:uppercase; letter-spacing:.04em; }
.mdt-detail-tab.active { background:#4d6e98; border-color:#89a8cf; color:#f6fbff; }
.mdt-detail-pane.hidden { display:none; }
.mdt-return-table td { vertical-align:top; }
.mdt-return-table td:nth-child(5) { min-width:360px; }
.mdt-return-table td:last-child { white-space:nowrap; width:96px; }
.mdt-attached-return-content { display:grid; gap:10px; }
.mdt-attached-return-pages { display:flex; flex-wrap:wrap; gap:10px; align-items:stretch; }
.mdt-attached-return-page { flex:1 1 250px; min-width:220px; border:1px solid #45596f; background:linear-gradient(180deg, rgba(45,62,82,.96), rgba(31,43,58,.98)); box-shadow: inset 0 0 0 1px rgba(143,174,211,.08); }
.mdt-attached-return-page-head { display:flex; justify-content:space-between; align-items:center; gap:10px; padding:8px 10px; border-bottom:1px solid #4b6078; background:rgba(116,150,192,.12); }
.mdt-attached-return-page-head span { font-size:10px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:#9fb7d8; }
.mdt-attached-return-page-head strong { font-size:12px; letter-spacing:.03em; color:#f2f7ff; }
.mdt-attached-return-page-body { display:grid; grid-template-columns:repeat(auto-fit, minmax(180px, 1fr)); gap:10px; padding:10px; }
.mdt-attached-return-section { border:1px solid rgba(132,160,194,.18); background:rgba(17,25,36,.34); padding:10px; display:grid; gap:8px; }
.mdt-attached-return-section h5 { margin:0; font-size:11px; text-transform:uppercase; letter-spacing:.08em; color:#a9c6ea; }
.mdt-attached-return-fields { margin:0; display:grid; gap:7px; }
.mdt-attached-return-fields div { display:grid; gap:3px; padding-bottom:7px; border-bottom:1px solid rgba(143,174,211,.1); }
.mdt-attached-return-fields div:last-child { border-bottom:none; padding-bottom:0; }
.mdt-attached-return-fields dt { font-size:10px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:#90abc9; }
.mdt-attached-return-fields dd { margin:0; font-size:12px; color:#f5f8fd; word-break:break-word; }
.mdt-attached-return-section p { margin:0; line-height:1.45; color:#e5edf8; }
.mdt-attached-return-empty { font-size:12px; color:#b9c7d9; }
.mdt-attached-return-action-cell { text-align:center; }
.mdt-attached-return-action { min-width:84px; }
@media (max-width: 1280px) {
  .mdt-attached-return-page { flex-basis:100%; min-width:0; }
  .mdt-attached-return-page-body { grid-template-columns:1fr; }
}
.mdt-modal-host { position:absolute; inset:0; background:rgba(7,10,16,.65); display:flex; align-items:flex-start; justify-content:center; z-index:50; padding:14px; overflow:auto; }
.mdt-modal { width:min(620px,90%); max-height:calc(100% - 8px); border:1px solid #55647a; background:#273241; color:#e8eef8; display:flex; flex-direction:column; overflow:hidden; margin:auto 0; }
.mdt-modal header { display:flex; justify-content:space-between; align-items:center; padding:8px 10px; border-bottom:1px solid #455468; background:#1f2937; }
.mdt-modal-body { padding:10px; display:grid; gap:8px; font-size:12px; overflow:auto; min-height:0; }
.mdt-modal-body p { margin:0; color:#ffffff; }
.mdt-modal-body input, .mdt-modal-body select, .mdt-modal-body textarea { border:1px solid #4f5d72; background:#334153; color:#eef3fb; padding:6px 8px; border-radius:0; font-size:12px; width:100%; }
.mdt-modal-body textarea { min-height:72px; resize:vertical; }
.mdt-modal footer { display:flex; justify-content:flex-end; gap:6px; padding:8px 10px; border-top:1px solid #445265; }
.mdt-mailbox-viewer-modal { width:min(980px, 96%); }
.mdt-mailbox-viewer-title { display:grid; gap:2px; }
.mdt-mailbox-viewer-title span { font-size:11px; text-transform:uppercase; letter-spacing:.06em; color:#c7d5e6; }
.mdt-mailbox-viewer-body { padding:12px; min-height:420px; }
.mdt-mailbox-viewer { display:grid; gap:10px; min-height:0; height:100%; }
.mdt-mailbox-viewer-toolbar { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; flex-wrap:wrap; }
.mdt-mailbox-viewer-summary { display:grid; gap:2px; }
.mdt-mailbox-viewer-summary strong { font-size:13px; text-transform:uppercase; letter-spacing:.04em; }
.mdt-mailbox-viewer-summary span { font-size:11px; color:#cbd7e6; }
.mdt-mailbox-viewer-layout { display:grid; grid-template-columns:minmax(260px, 34%) minmax(0, 1fr); gap:10px; min-height:360px; }
.mdt-mailbox-viewer-list, .mdt-mailbox-viewer-pane { min-height:0; overflow:auto; border:1px solid #46576d; background:#202b39; padding:8px; }
.mdt-mailbox-viewer-list { display:grid; gap:8px; }
.mdt-mailbox-viewer-row { width:100%; border:1px solid #4a5b72; background:#283548; color:#edf4ff; padding:10px; display:grid; gap:6px; text-align:left; text-decoration:none; cursor:pointer; }
.mdt-mailbox-viewer-row:hover { background:#32445c; color:#ffffff; text-decoration:none; }
.mdt-mailbox-viewer-row:focus-visible { outline:1px dotted #BFCDDC; outline-offset:-5px; }
.mdt-mailbox-viewer-row.selected { border-color:#a9c0dd; background:#354a63; box-shadow:inset 0 0 0 1px rgba(209, 227, 247, .14); }
.mdt-mailbox-viewer-row.unread { border-color:#88a5c9; }
.mdt-mailbox-viewer-row-head, .mdt-mailbox-viewer-row-meta { display:flex; align-items:center; justify-content:space-between; gap:8px; flex-wrap:wrap; }
.mdt-mailbox-viewer-row-head strong { font-size:12px; }
.mdt-mailbox-viewer-row-head span, .mdt-mailbox-viewer-row-meta span { font-size:11px; color:#c4d4e8; }
.mdt-mailbox-viewer-row-preview { font-size:12px; line-height:1.4; color:#e0eaf7; }
.mdt-mailbox-viewer-pane { display:grid; align-content:start; }
.mdt-mailbox-viewer-pane .mdt-mailbox-item { display:grid; gap:10px; }
.mdt-mailbox-viewer-message { min-height:220px; border:1px solid rgba(132,160,194,.24); background:rgba(17,25,36,.34); padding:12px; color:#eef5ff; line-height:1.5; word-break:break-word; }
.mdt-mailbox-recipient-meta { display:grid; gap:4px; }
.mdt-mailbox-recipient-meta strong { font-size:12px; }
.mdt-mailbox-recipient-meta span { font-size:11px; }
@media (max-width: 980px) {
  .mdt-mailbox-viewer-modal { width:min(96%, 840px); }
  .mdt-mailbox-viewer-layout { grid-template-columns:1fr; min-height:0; }
  .mdt-mailbox-viewer-message { min-height:160px; }
}
.mdt-window .mdt-shell,
.mdt-window .mdt-modal {
  --mdt-button-bg: linear-gradient(#39546F, #5f8bb7);
  --mdt-button-shadow:
    inset -1px -1px #292929,
    inset 1px 1px #889caf,
    inset -2px -2px #132B41,
    inset 2px 2px #ffffff;
  --mdt-button-shadow-active:
    inset -1px -1px #183148,
    inset 1px 1px #183148,
    inset -2px -2px #183148,
    inset 2px 2px rgb(158, 158, 158);
}
.mdt-modal button { --mdt-button-font-size: 12px; --mdt-button-padding: 6px 10px; border:none; background:var(--mdt-button-bg); color:#ebebeb; border-radius:0; }
.mdt-modal button.danger,
.mdt-window .mdt-shell .mdt-actionbar button.danger {
  --mdt-button-bg: linear-gradient(#6d3b3b, #a45a5a);
  --mdt-button-shadow:
    inset -1px -1px #2c1717,
    inset 1px 1px #b98a8a,
    inset -2px -2px #4b2424,
    inset 2px 2px #fff2f2;
  --mdt-button-shadow-active:
    inset -1px -1px #3b1f1f,
    inset 1px 1px #3b1f1f,
    inset -2px -2px #3b1f1f,
    inset 2px 2px rgb(184, 150, 150);
}
.mdt-window .mdt-shell button:not(.mdt-link-button):not(.mdt-col-resizer),
.mdt-window .mdt-modal button:not(.mdt-link-button):not(.mdt-col-resizer) {
  font-family: inherit;
  border: none;
  outline: 1px dotted #BFCDDC;
  outline-offset: -6px;
  cursor: pointer;
  background: var(--mdt-button-bg);
  box-shadow: var(--mdt-button-shadow);
  font-size: var(--mdt-button-font-size, 14px);
  color: #ebebeb;
  text-transform: uppercase;
  letter-spacing: 2px;
  padding: var(--mdt-button-padding, 5px 30px);
  transition: transform .14s ease, filter .14s ease, box-shadow .14s ease;
}
.mdt-window .mdt-shell button:not(.mdt-link-button):not(.mdt-col-resizer):hover:not(:disabled),
.mdt-window .mdt-modal button:not(.mdt-link-button):not(.mdt-col-resizer):hover:not(:disabled) {
  transform: translateY(-1px);
  background: var(--mdt-button-bg);
  box-shadow: 0 4px 10px rgba(8,18,30,.18), var(--mdt-button-shadow);
  filter: brightness(1.08);
}
.mdt-window .mdt-shell button:not(.mdt-link-button):not(.mdt-col-resizer):active:not(:disabled),
.mdt-window .mdt-modal button:not(.mdt-link-button):not(.mdt-col-resizer):active:not(:disabled) {
  transform: none;
  filter: none;
  box-shadow: var(--mdt-button-shadow-active);
}
.mdt-window .mdt-shell button:not(.mdt-link-button):not(.mdt-col-resizer):disabled,
.mdt-window .mdt-modal button:not(.mdt-link-button):not(.mdt-col-resizer):disabled {
  cursor: not-allowed;
  opacity: .7;
  filter: saturate(.55);
  transform: none;
  box-shadow: var(--mdt-button-shadow);
}
.mdt-window .mdt-shell button:not(.mdt-link-button):not(.mdt-col-resizer):disabled:hover,
.mdt-window .mdt-modal button:not(.mdt-link-button):not(.mdt-col-resizer):disabled:hover {
  transform: none;
  filter: saturate(.55);
  box-shadow: var(--mdt-button-shadow);
}
.mdt-window .mdt-shell button.active:not(.mdt-link-button):not(.mdt-col-resizer),
.mdt-window .mdt-modal button.active:not(.mdt-link-button):not(.mdt-col-resizer) {
  background: linear-gradient(#4A6785, #729cc8);
  color: #ffffff;
}
.mdt-window .mdt-shell .mdt-nav-controls .mdt-emergency {
  --mdt-button-bg: linear-gradient(#6d3b3b, #a45a5a);
  color: #fff4f4;
}
.mdt-window .mdt-shell .mdt-nav-controls button:not(.mdt-emergency),
.mdt-window .mdt-shell .mdt-toolbar button,
.mdt-window .mdt-shell .mdt-recent-queries button,
.mdt-window .mdt-shell .mdt-actionbar button:not(.danger),
.mdt-window .mdt-shell .mdt-inline button,
.mdt-window .mdt-shell .mdt-center-content button,
.mdt-window .mdt-shell .mdt-panel-head button,
.mdt-window .mdt-shell .mdt-query-panel button,
.mdt-window .mdt-shell .mdt-message-head button,
.mdt-window .mdt-shell .mdt-unit-actions button,
.mdt-window .mdt-shell .mdt-units-toolbar button,
.mdt-window .mdt-shell .mdt-call-sub button:not([data-call-action="attach"]):not([data-call-action="override"]):not([data-call-action="request"]):not([data-call-action="detach"]) {
  background: var(--mdt-button-bg);
  color: #ebebeb;
  border: none;
}
.mdt-window .mdt-shell .mdt-call-sub button[data-call-action="attach"],
.mdt-window .mdt-shell .mdt-call-sub button[data-call-action="override"],
.mdt-window .mdt-shell .mdt-call-sub button[data-call-action="request"] {
  --mdt-button-bg: linear-gradient(#3c6243, #5f9b6b);
  --mdt-button-shadow:
    inset -1px -1px #1f3323,
    inset 1px 1px #8ec09a,
    inset -2px -2px #27462f,
    inset 2px 2px #edf9f0;
  --mdt-button-shadow-active:
    inset -1px -1px #28412c,
    inset 1px 1px #28412c,
    inset -2px -2px #28412c,
    inset 2px 2px rgb(154, 174, 158);
  color:#f2fff6;
}
.mdt-window .mdt-shell .mdt-call-sub button[data-call-action="detach"] {
  --mdt-button-bg: linear-gradient(#6a3a3a, #9e5959);
  --mdt-button-shadow:
    inset -1px -1px #2b1818,
    inset 1px 1px #b58585,
    inset -2px -2px #4a2626,
    inset 2px 2px #fff2f2;
  --mdt-button-shadow-active:
    inset -1px -1px #3b2020,
    inset 1px 1px #3b2020,
    inset -2px -2px #3b2020,
    inset 2px 2px rgb(176, 150, 150);
  color:#fff3f3;
}
.mdt-window .mdt-shell .mdt-call-sub button[data-call-action="attach"],
.mdt-window .mdt-shell .mdt-call-sub button[data-call-action="override"],
.mdt-window .mdt-shell .mdt-call-sub button[data-call-action="request"] {
  --mdt-button-bg: linear-gradient(#86aa6d, #B3D69A);
  color: #223018;
}
.mdt-window .mdt-shell .mdt-call-sub button[data-call-action="attach"] {
  --mdt-button-bg: linear-gradient(#6f905a, #8eae77);
  color: #ffffff;
}
.mdt-window .mdt-shell .mdt-call-sub button[data-call-action="detach"],
.mdt-window .mdt-shell .mdt-unit-actions button[data-unit-action="detach"] {
  --mdt-button-bg: linear-gradient(#a95a4b, #CE705F);
  color: #fff5f3;
}
.mdt-window .mdt-shell .mdt-center-content #mdtMarkScene {
  --mdt-button-bg: linear-gradient(#4aa89c, #5FCEBF);
  color: #16312d;
}
.mdt-window .mdt-shell .mdt-center-content #mdtMarkEnroute {
  --mdt-button-bg: linear-gradient(#4d8f5a, #6bc37c);
  --mdt-button-shadow:
    inset -1px -1px #22432a,
    inset 1px 1px #a3d7ad,
    inset -2px -2px #2d5c37,
    inset 2px 2px #f0fff3;
  --mdt-button-shadow-active:
    inset -1px -1px #2c5133,
    inset 1px 1px #2c5133,
    inset -2px -2px #2c5133,
    inset 2px 2px rgb(160, 181, 166);
  color: #132915;
}
.mdt-window .mdt-shell .mdt-center-content #mdtClearCall,
.mdt-window .mdt-shell .mdt-actionbar button.danger,
.mdt-window .mdt-modal button.danger {
  --mdt-button-bg: linear-gradient(#a04d4d, #CE5F5F);
  color: #fff4f4;
}
.mdt-window .mdt-modal header .close {
  --mdt-button-padding: 0;
  width: 30px;
  min-width: 30px;
  height: 30px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  letter-spacing: 0;
  outline-offset: -4px;
}
.mdt-alerts-modal { width:min(1320px,96%); min-height:min(820px,92%); max-height:calc(100% - 8px); display:flex; flex-direction:column; }
.mdt-alerts-header { display:flex; justify-content:space-between; align-items:center; gap:10px; padding:10px 12px; border-bottom:1px solid #455468; background:#1f2937; }
.mdt-alerts-header > div:first-child { display:grid; gap:2px; }
.mdt-alerts-header strong { font-size:18px; letter-spacing:.05em; }
.mdt-alerts-header span { font-size:11px; color:#b4c2d6; text-transform:uppercase; letter-spacing:.04em; }
.mdt-alerts-body { padding:0; display:flex; flex-direction:column; min-height:0; flex:1; }
.mdt-alerts-toolbar { display:grid; grid-template-columns:160px 160px 150px minmax(0,1fr); gap:10px; padding:10px 12px; border-bottom:1px solid #425063; background:#233042; }
.mdt-alert-toolbar-field { display:grid; gap:4px; min-width:0; }
.mdt-alert-toolbar-field span { font-size:11px; text-transform:uppercase; letter-spacing:.05em; color:#b4c2d6; font-weight:700; }
.mdt-alert-toolbar-search input { width:100%; }
.mdt-alerts-layout { display:grid; grid-template-columns:320px minmax(0,1fr); gap:10px; padding:10px 12px 12px; min-height:0; flex:1; }
.mdt-alerts-list { border:1px solid #425267; background:#202b3a; padding:10px; display:grid; gap:8px; overflow:auto; min-height:0; align-content:start; }
.mdt-alert-row { width:100%; text-align:left; border:1px solid #45556b; background:#2a3546; color:#edf4ff; padding:10px; display:grid; gap:6px; }
.mdt-alert-row:hover { background:#314156; border-color:#637a9b; }
.mdt-alert-row.active { border-color:#92abd0; box-shadow:inset 0 0 0 1px #92abd0; background:#34465d; }
.mdt-alert-row.inactive { opacity:.58; }
.mdt-alert-row-head, .mdt-alert-row-meta, .mdt-alert-entry-head, .mdt-alert-pane-head { display:flex; justify-content:space-between; align-items:flex-start; gap:10px; }
.mdt-alert-row-head strong { font-size:12px; text-transform:uppercase; letter-spacing:.05em; }
.mdt-alert-row-subject { font-size:16px; font-weight:700; color:#a9d8ff; }
.mdt-alert-row-meta { font-size:11px; color:#c6d2e3; text-transform:uppercase; letter-spacing:.04em; }
.mdt-alert-row small { color:#99aac1; font-size:11px; }
.mdt-alert-severity { display:inline-flex; align-items:center; justify-content:center; min-width:68px; padding:4px 8px; border:1px solid #5c6d84; background:#344559; color:#dce9f7; text-transform:uppercase; font-size:10px; letter-spacing:.06em; font-weight:700; }
.mdt-alert-severity.high { background:#5b3431; border-color:#8d5a55; color:#ffd9d1; }
.mdt-alert-severity.medium { background:#5c4932; border-color:#8d704a; color:#ffebc8; }
.mdt-alert-severity.low { background:#314a58; border-color:#5d7889; color:#d7f2ff; }
.mdt-alerts-detail { min-height:0; overflow:auto; }
.mdt-alert-pane { min-height:100%; border:1px solid #425267; background:#202b3a; padding:12px; display:grid; gap:12px; align-content:start; }
.mdt-alert-pane-head h3, .mdt-alert-form-section h4, .mdt-alert-detail-section h4 { margin:0; font-size:16px; text-transform:uppercase; letter-spacing:.04em; color:#edf4ff; }
.mdt-alert-pane-head p, .mdt-alert-form-section p { margin:4px 0 0; color:#aebed3; font-size:12px; }
.mdt-alert-meta-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.mdt-alert-meta-grid article, .mdt-alert-audit-grid div { border:1px solid #3f5066; background:#253243; padding:8px; display:grid; gap:4px; }
.mdt-alert-meta-grid span, .mdt-alert-audit-grid strong { font-size:11px; text-transform:uppercase; letter-spacing:.05em; color:#aebed3; }
.mdt-alert-meta-grid strong, .mdt-alert-audit-grid span { color:#edf4ff; font-size:12px; }
.mdt-alert-detail-section, .mdt-alert-form-section { border:1px solid #3f5066; background:#253243; padding:10px; display:grid; gap:10px; }
.mdt-alert-detail-section p { margin:0; color:#edf4ff; line-height:1.5; }
.mdt-alert-entry-stack { display:grid; gap:8px; }
.mdt-alert-entry-card, .mdt-alert-entry-editor { border:1px solid #43546a; background:#293648; padding:10px; display:grid; gap:8px; }
.mdt-alert-entry-card.severity-high, .mdt-alert-entry-editor.severity-high { border-left:4px solid #ba5a4e; }
.mdt-alert-entry-card.severity-medium, .mdt-alert-entry-editor.severity-medium { border-left:4px solid #c99a4f; }
.mdt-alert-entry-card.severity-low, .mdt-alert-entry-editor.severity-low { border-left:4px solid #5f88a3; }
.mdt-alert-entry-card h5 { margin:0; font-size:13px; color:#eef4ff; }
.mdt-alert-entry-card p { margin:0; color:#eef4ff; }
.mdt-alert-entry-card small { color:#afbed1; }
.mdt-alert-entry-head strong { margin:0; font-size:12px; text-transform:uppercase; letter-spacing:.05em; color:#eef4ff; }
.mdt-alert-entry-head span { color:#aebed3; font-size:11px; text-transform:uppercase; letter-spacing:.05em; }
.mdt-alert-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.mdt-alert-field { display:grid; gap:4px; }
.mdt-alert-field span { font-size:11px; text-transform:uppercase; letter-spacing:.05em; color:#b4c2d6; font-weight:700; }
.mdt-alert-field-wide { grid-column:1 / -1; }
.mdt-alert-field input, .mdt-alert-field select, .mdt-alert-field textarea, .mdt-alert-toolbar-field input, .mdt-alert-toolbar-field select { width:100%; border:1px solid #4f5d72; background:#334153; color:#eef3fb; padding:6px 8px; border-radius:0; font-size:12px; }
.mdt-alert-field textarea { min-height:92px; resize:vertical; }
.mdt-alert-audit-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.mdt-alerts-modal .mdt-inline { margin-top:0; }
.mdt-alerts-modal .mdt-return { margin:0; max-height:260px; }
.mdt-alerts-modal button.primary { background:#3f5878; border-color:#6d87aa; }
.mdt-alerts-modal button.primary:hover { background:#4a678c; }
.mdt-settings-section { border:1px solid #425266; background:#233140; padding:8px; display:grid; gap:8px; }
.mdt-settings-title { font-size:11px; text-transform:uppercase; letter-spacing:.05em; color:#b4c3d8; font-weight:700; }
.mdt-settings-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.mdt-settings-field { display:grid; gap:4px; font-size:11px; text-transform:uppercase; letter-spacing:.03em; color:#d6dfeb; }
.mdt-settings-field-wide { grid-column:1 / -1; }
.mdt-settings-errors { display:grid; gap:4px; min-height:0; color:#ffb3b3; font-size:11px; font-weight:700; letter-spacing:.03em; }
.mdt-settings-note { margin:0; color:#ffffff; line-height:1.45; }
.mdt-settings-actions { display:flex; justify-content:flex-start; }
.mdt-settings-message { min-height:16px; color:#cfe8c6; font-size:11px; font-weight:700; letter-spacing:.03em; }
.mdt-settings-message.error { color:#ffb3b3; }
.mdt-settings-readonly { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.mdt-settings-readonly div { border:1px solid #3c4a5c; background:#293748; padding:6px; display:grid; gap:3px; }
.mdt-settings-readonly span { font-size:10px; text-transform:uppercase; letter-spacing:.05em; color:#aebbd0; }
.mdt-settings-readonly strong { font-size:12px; color:#eff4fb; }
.mdt-picker-inline { display:grid; grid-template-columns:minmax(0,1fr) auto auto; gap:6px; width:100%; }
.cfg-picker-list { display:grid; gap:8px; max-height:320px; overflow:auto; border:1px solid #3b4859; padding:8px; background:#202833; }
.cfg-picker-option { width:100%; display:flex; justify-content:space-between; align-items:center; gap:12px; text-align:left; }
.cfg-picker-option.active { border-color:#6a87c9; box-shadow:0 0 0 1px #6a87c9 inset; }
.cfg-picker-option small { color:#9aa7b8; }
.cfg-picker-empty { margin:0; padding:10px; text-align:center; color:#9aa7b8; }
.mdt-reports-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px; }
.mdt-shell.mdt-dark { background:#252525; border-color:#3d3d3d; color:#e4d9c8; }
.mdt-shell.mdt-dark .mdt-topbar, .mdt-shell.mdt-dark .mdt-subbar, .mdt-shell.mdt-dark .mdt-messages { background:#2f2c28; border-color:#5b5445; color:#e4d9c8; }
.mdt-shell.mdt-dark .mdt-calls-panel, .mdt-shell.mdt-dark .mdt-center-panel, .mdt-shell.mdt-dark .mdt-query-panel, .mdt-shell.mdt-dark .mdt-call-row, .mdt-shell.mdt-dark .mdt-call-header-grid div, .mdt-shell.mdt-dark .mdt-empty { background:#2f2f2f; border-color:#695f4d; color:#e8dcc8; }
.mdt-shell.mdt-dark .mdt-table { background:#343434; color:#eadfcf; }
.mdt-shell.mdt-dark .mdt-table th, .mdt-shell.mdt-dark .mdt-table td { border-color:#6f6553; }
.mdt-shell.mdt-dark .mdt-table th { background:#4a4337; }
.mdt-shell.mdt-dark .mdt-detail-tab { background:#463f36; border-color:#786b59; color:#ecdfcc; }
.mdt-shell.mdt-dark .mdt-detail-tab.active { background:#6e5e47; border-color:#ab9778; color:#fff4df; }
.mdt-shell.mdt-dark .mdt-inline input, .mdt-shell.mdt-dark .mdt-inline select, .mdt-shell.mdt-dark .mdt-inline textarea, .mdt-shell.mdt-dark .mdt-inline button, .mdt-shell.mdt-dark .mdt-center-content button, .mdt-shell.mdt-dark .mdt-query-grid input, .mdt-shell.mdt-dark .mdt-recent-queries button { background:#4b4438; border-color:#8a7a61; color:#f0e5d2; }
.mdt-shell.mdt-dark .mdt-actionbar button { background:#4d463c; border-color:#7f735f; color:#f0e5d2; }
.mdt-shell.mdt-dark .mdt-status-strip { background:#3d3a34; color:#f0e5d2; border-color:#746856; }
@media (max-width: 1200px) {
  .mdt-topbar-ops { grid-template-columns:1fr; }
  .mdt-top-center { justify-content:flex-start; }
  .mdt-workspace-grid { grid-template-columns:1fr; }
  .mdt-actionbar { grid-template-columns: repeat(3, minmax(0,1fr)); }
  .mdt-status-strip { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .mdt-home-layout, .mdt-home-stat-grid { grid-template-columns:1fr; }
  .mdt-settings-grid, .mdt-settings-readonly, .mdt-alerts-toolbar, .mdt-alerts-layout, .mdt-alert-form-grid, .mdt-alert-meta-grid, .mdt-alert-audit-grid { grid-template-columns:1fr; }
}

/* Law enforcement retro MDT theme */
.mdt-window.mdt-law-retro-window,
.mdt-window.mdt-law-retro-window .mdt-modal {
  --mdt-retro-screen-bg: #0b1118;
  --mdt-retro-shell-top: #1e2b38;
  --mdt-retro-shell-bottom: #111a24;
  --mdt-retro-panel-top: #1f3043;
  --mdt-retro-panel-bottom: #152130;
  --mdt-retro-panel-soft: #26384d;
  --mdt-retro-inset-bg: #162434;
  --mdt-retro-control-top: #24364a;
  --mdt-retro-control-bottom: #182739;
  --mdt-retro-input-bg: #243448;
  --mdt-retro-input-shadow: #101923;
  --mdt-retro-border-light: #7f93a8;
  --mdt-retro-border-mid: #506579;
  --mdt-retro-border-dark: #09111a;
  --mdt-retro-border-black: #020509;
  --mdt-retro-text: #f4f8ff;
  --mdt-retro-text-soft: #c8d5e3;
  --mdt-retro-text-muted: #93a5b6;
  --mdt-retro-text-dark: #05080d;
  --mdt-retro-hot-top: #873b3f;
  --mdt-retro-hot-bottom: #c26065;
  --mdt-retro-green: #18f56b;
  --mdt-retro-font-ui: Tahoma, "MS Sans Serif", Geneva, Verdana, sans-serif;
  --mdt-retro-font-condensed: "Arial Narrow", Tahoma, Arial, sans-serif;
}

.mdt-window.mdt-law-retro-window {
  background: var(--mdt-retro-screen-bg);
}

.mdt-window.mdt-law-retro-window .app-window-body.mdt-body,
.mdt-window.mdt-law-retro-window .app-window-body.mdt-law-retro-body {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.04), transparent 12%),
    radial-gradient(circle at 25% 0%, rgba(83, 116, 152, 0.24), transparent 38%),
    linear-gradient(180deg, var(--mdt-retro-shell-top) 0%, var(--mdt-retro-shell-bottom) 100%);
}

.mdt-window.mdt-law-retro-window .mdt-law-retro-shell,
.mdt-window.mdt-law-retro-window .mdt-modal {
  font-family: var(--mdt-retro-font-ui);
  color: var(--mdt-retro-text);
  text-shadow: 1px 1px 0 #000000;
  font-size: 12px;
  line-height: 1.25;
  letter-spacing: -0.1px;
}

.mdt-window.mdt-law-retro-window .mdt-law-retro-shell {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.04), transparent 12%),
    radial-gradient(circle at 25% 0%, rgba(83, 116, 152, 0.25), transparent 38%),
    linear-gradient(180deg, var(--mdt-retro-shell-top) 0%, var(--mdt-retro-shell-bottom) 100%);
  border: 1px solid var(--mdt-retro-border-black);
  box-shadow:
    inset 1px 1px #5f7080,
    inset -1px -1px #020508;
  padding: 4px;
}

.mdt-window.mdt-law-retro-window .mdt-shell input,
.mdt-window.mdt-law-retro-window .mdt-shell select,
.mdt-window.mdt-law-retro-window .mdt-shell textarea,
.mdt-window.mdt-law-retro-window .mdt-modal input,
.mdt-window.mdt-law-retro-window .mdt-modal select,
.mdt-window.mdt-law-retro-window .mdt-modal textarea {
  font-family: inherit;
  border: 1px solid #566c82;
  background: var(--mdt-retro-input-bg);
  color: var(--mdt-retro-text);
  box-shadow:
    inset 1px 1px var(--mdt-retro-input-shadow),
    inset -1px -1px #657a90;
  text-shadow: none;
}

.mdt-window.mdt-law-retro-window .mdt-shell input::placeholder,
.mdt-window.mdt-law-retro-window .mdt-shell textarea::placeholder,
.mdt-window.mdt-law-retro-window .mdt-modal input::placeholder,
.mdt-window.mdt-law-retro-window .mdt-modal textarea::placeholder {
  color: var(--mdt-retro-text-muted);
}

.mdt-window.mdt-law-retro-window .mdt-shell select option,
.mdt-window.mdt-law-retro-window .mdt-modal select option,
.mdt-window.mdt-law-retro-window .mdt-shell select optgroup,
.mdt-window.mdt-law-retro-window .mdt-modal select optgroup {
  background: #182535;
  color: #eef5ff;
  text-shadow: none;
}

.mdt-window.mdt-law-retro-window .mdt-shell button:not(.mdt-link-button):not(.mdt-col-resizer),
.mdt-window.mdt-law-retro-window .mdt-modal button:not(.mdt-link-button):not(.mdt-col-resizer) {
  font-family: inherit;
  font-weight: 900;
  text-shadow: 1px 1px 0 #00101f;
  letter-spacing: 1.4px;
}

.mdt-window.mdt-law-retro-window .mdt-shell button:not(.mdt-link-button):not(.mdt-col-resizer):hover:not(:disabled),
.mdt-window.mdt-law-retro-window .mdt-modal button:not(.mdt-link-button):not(.mdt-col-resizer):hover:not(:disabled) {
  transform: translate(-1px, -1px);
  filter: brightness(1.12);
  box-shadow: 0 6px 12px rgba(2, 7, 12, 0.24), var(--mdt-button-shadow);
}

.mdt-window.mdt-law-retro-window .mdt-shell button:not(.mdt-link-button):not(.mdt-col-resizer):active:not(:disabled),
.mdt-window.mdt-law-retro-window .mdt-modal button:not(.mdt-link-button):not(.mdt-col-resizer):active:not(:disabled) {
  transform: translate(1px, 1px);
}

.mdt-window.mdt-law-retro-window .mdt-topbar {
  min-height: 44px;
  padding: 6px 4px 4px;
  border-bottom: 1px solid #3d5063;
  background: linear-gradient(180deg, #202d3b, #17212d);
}

.mdt-window.mdt-law-retro-window .mdt-topbar-ops {
  gap: 10px;
  grid-template-columns: minmax(320px, auto) minmax(0, 1fr) auto;
  align-items: center;
}

.mdt-window.mdt-law-retro-window .mdt-top-left {
  gap: 8px;
  min-width: 0;
}

.mdt-window.mdt-law-retro-window .mdt-title {
  padding: 0;
  color: var(--mdt-retro-text);
  font-family: var(--mdt-retro-font-condensed);
  font-size: 19px;
  font-weight: 900;
  letter-spacing: 0.4px;
  text-transform: uppercase;
}

.mdt-window.mdt-law-retro-window .mdt-dispatch-state,
.mdt-window.mdt-law-retro-window .mdt-mode-badge,
.mdt-window.mdt-law-retro-window .mdt-active-call-chip,
.mdt-window.mdt-law-retro-window .mdt-mailbox-count {
  border: 1px solid #607489;
  background: linear-gradient(180deg, #203348, #142131);
  box-shadow:
    inset 1px 1px #9ab0c8,
    inset -1px -1px #06101a;
  color: #ecf5ff;
  text-shadow: 1px 1px 0 #02080f;
}

.mdt-window.mdt-law-retro-window .mdt-dispatch-state {
  min-height: 24px;
  padding: 5px 10px;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.08em;
}

.mdt-window.mdt-law-retro-window .mdt-top-center {
  gap: 5px;
  justify-content: flex-end;
}

.mdt-window.mdt-law-retro-window .mdt-mode-badge,
.mdt-window.mdt-law-retro-window .mdt-active-call-chip {
  min-height: 24px;
  padding: 5px 10px;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
}

.mdt-window.mdt-law-retro-window .mdt-active-call-chip {
  max-width: 280px;
}

.mdt-window.mdt-law-retro-window .mdt-mailbox-button {
  --mdt-button-font-size: 11px;
  --mdt-button-padding: 0 12px;
  min-height: 35px;
}

.mdt-window.mdt-law-retro-window .mdt-mailbox-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 20px;
  min-height: 20px;
  padding: 0 5px;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.08em;
}

.mdt-window.mdt-law-retro-window .mdt-nav-controls {
  gap: 5px;
  overflow: hidden auto;
}

.mdt-window.mdt-law-retro-window .mdt-nav-controls button {
  --mdt-button-font-size: 10px;
  --mdt-button-padding: 0 11px;
  min-width: 76px;
  min-height: 30px;
  white-space: nowrap;
}

.mdt-window.mdt-law-retro-window .mdt-nav-controls [data-mdt-nav="status"] {
  min-width: 124px;
}

.mdt-window.mdt-law-retro-window .mdt-subbar {
  min-height: 26px;
  padding: 0 8px;
  border-top: 1px solid #0a1119;
  border-bottom: 1px solid #4d6073;
  background: #182535;
  color: var(--mdt-retro-text);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.05em;
}

.mdt-window.mdt-law-retro-window .mdt-subbar strong,
.mdt-window.mdt-law-retro-window .mdt-subbar span {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
}

.mdt-window.mdt-law-retro-window .mdt-messages {
  margin-top: 6px;
  padding: 8px 10px;
  border: 1px solid var(--mdt-retro-border-mid);
  background: linear-gradient(180deg, #1d2d40, #162230);
  box-shadow:
    inset 1px 1px #334a60,
    inset -1px -1px #071019;
  color: var(--mdt-retro-text-soft);
}

.mdt-window.mdt-law-retro-window .mdt-workspace-grid {
  grid-template-columns: 27% 48% 25%;
  gap: 6px;
  padding: 6px 0 0;
}

.mdt-window.mdt-law-retro-window .mdt-calls-panel,
.mdt-window.mdt-law-retro-window .mdt-center-panel,
.mdt-window.mdt-law-retro-window .mdt-query-panel,
.mdt-window.mdt-law-retro-window .mdt-units-panel,
.mdt-window.mdt-law-retro-window .mdt-modal,
.mdt-window.mdt-law-retro-window .mdt-alerts-list,
.mdt-window.mdt-law-retro-window .mdt-alert-pane {
  border: 1px solid var(--mdt-retro-border-mid);
  background: linear-gradient(180deg, var(--mdt-retro-panel-top) 0%, var(--mdt-retro-panel-bottom) 100%);
  box-shadow:
    inset 1px 1px #334a60,
    inset -1px -1px #071019;
}

.mdt-window.mdt-law-retro-window .mdt-calls-panel,
.mdt-window.mdt-law-retro-window .mdt-center-panel,
.mdt-window.mdt-law-retro-window .mdt-query-panel {
  padding: 6px;
}

.mdt-window.mdt-law-retro-window .mdt-center-panel {
  overflow: hidden;
}

.mdt-window.mdt-law-retro-window .mdt-panel-head,
.mdt-window.mdt-law-retro-window .mdt-query-panel h3 {
  min-height: 32px;
  margin: 0 0 8px;
  padding: 0 2px 6px;
  border-bottom: 1px solid #40566b;
  font-size: 14px;
  font-weight: 900;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--mdt-retro-text);
}

.mdt-window.mdt-law-retro-window .mdt-query-panel h4 {
  margin: 0 0 12px;
  font-size: 16px;
  font-weight: 900;
  text-transform: none;
  letter-spacing: 0;
  color: var(--mdt-retro-text);
}

.mdt-window.mdt-law-retro-window .mdt-calls-stats,
.mdt-window.mdt-law-retro-window .mdt-return,
.mdt-window.mdt-law-retro-window .mdt-empty,
.mdt-window.mdt-law-retro-window .mdt-map-placeholder,
.mdt-window.mdt-law-retro-window .mdt-map-zoom-readout,
.mdt-window.mdt-law-retro-window .mdt-settings-readonly div,
.mdt-window.mdt-law-retro-window .mdt-call-header-grid div,
.mdt-window.mdt-law-retro-window .mdt-calls-overview-stat,
.mdt-window.mdt-law-retro-window .mdt-mailbox-recipient-meta,
.mdt-window.mdt-law-retro-window .mdt-mailbox-hint {
  border: 1px solid #4c6176;
  background: var(--mdt-retro-inset-bg);
  box-shadow:
    inset 1px 1px #0b1118,
    inset -1px -1px #53687d;
}

.mdt-window.mdt-law-retro-window .mdt-calls-stats,
.mdt-window.mdt-law-retro-window .mdt-empty {
  padding: 8px 10px;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.mdt-window.mdt-law-retro-window .mdt-empty {
  color: var(--mdt-retro-text-soft);
  border-style: dashed;
  background: rgba(0, 0, 0, 0.12);
  box-shadow: none;
}

.mdt-window.mdt-law-retro-window .mdt-calls-overview {
  margin-bottom: 8px;
  padding: 10px;
  border: 1px solid var(--mdt-retro-border-mid);
  background: linear-gradient(180deg, #243345 0%, #202d3d 100%);
  box-shadow:
    inset 1px 1px #334a60,
    inset -1px -1px #071019;
}

.mdt-window.mdt-law-retro-window .mdt-calls-overview-head strong,
.mdt-window.mdt-law-retro-window .mdt-calls-overview-stat strong {
  color: var(--mdt-retro-text);
}

.mdt-window.mdt-law-retro-window .mdt-calls-overview-head span,
.mdt-window.mdt-law-retro-window .mdt-calls-overview-stat span {
  color: var(--mdt-retro-text-soft);
}

.mdt-window.mdt-law-retro-window .mdt-toolbar {
  gap: 6px;
  margin-bottom: 8px;
}

.mdt-window.mdt-law-retro-window .mdt-toolbar select,
.mdt-window.mdt-law-retro-window .mdt-toolbar input:not([type="checkbox"]) {
  min-height: 34px;
  padding: 0 10px;
  background: linear-gradient(180deg, var(--mdt-retro-control-top), var(--mdt-retro-control-bottom));
  border: 1px solid #607489;
  box-shadow:
    inset 1px 1px #7c91a8,
    inset -1px -1px #071019;
}

.mdt-window.mdt-law-retro-window .mdt-toolbar select {
  color: #eef5ff;
  appearance: none;
  -webkit-appearance: none;
  color-scheme: dark;
  padding-right: 28px;
  background:
    linear-gradient(180deg, var(--mdt-retro-control-top), var(--mdt-retro-control-bottom)),
    linear-gradient(45deg, transparent 50%, #eef5ff 50%),
    linear-gradient(135deg, #eef5ff 50%, transparent 50%);
  background-repeat: no-repeat;
  background-position:
    0 0,
    calc(100% - 16px) 50%,
    calc(100% - 10px) 50%;
  background-size:
    auto,
    6px 6px,
    6px 6px;
}

.mdt-window.mdt-law-retro-window .mdt-toggle {
  min-height: 34px;
  padding: 4px 10px;
  border: 1px solid #607489;
  background: linear-gradient(180deg, var(--mdt-retro-control-top), var(--mdt-retro-control-bottom));
  box-shadow:
    inset 1px 1px #7c91a8,
    inset -1px -1px #071019;
  color: var(--mdt-retro-text);
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  gap: 10px;
}

.mdt-window.mdt-law-retro-window .mdt-toggle .slider {
  width: 3em;
  min-width: 3em;
  height: 1.55em;
  border-radius: 14px;
  border: 1px solid #0b1118;
  background: linear-gradient(#eeeeee, #858585);
  box-shadow:
    inset 1px 1px #ffffff,
    inset -1px -1px #333333;
}

.mdt-window.mdt-law-retro-window .mdt-toggle .slider::before {
  width: 1.15em;
  height: 1.15em;
  left: 0.12em;
  outline-color: #0b1118;
  background: linear-gradient(#355274, #1e3146);
}

.mdt-window.mdt-law-retro-window .mdt-department-filter-dropdown {
  min-width: 106px;
  letter-spacing: 0.05em;
}

.mdt-window.mdt-law-retro-window .mdt-department-filter-dropdown summary {
  min-height: 34px;
  padding: 4px 28px 4px 10px;
  border: 1px solid #607489;
  background:
    linear-gradient(180deg, var(--mdt-retro-control-top), var(--mdt-retro-control-bottom));
  color: var(--mdt-retro-text);
  box-shadow:
    inset 1px 1px #7c91a8,
    inset -1px -1px #071019;
}

.mdt-window.mdt-law-retro-window .mdt-department-filter-dropdown summary::after {
  right: 11px;
  border-top-color: #eef5ff;
}

.mdt-window.mdt-law-retro-window .mdt-department-filter-menu {
  border: 1px solid #607489;
  background: #13283a;
  box-shadow:
    inset 1px 1px #31495f,
    inset -1px -1px #071019,
    0 8px 18px rgba(0,0,0,.45);
}

.mdt-window.mdt-law-retro-window .mdt-department-filter-option {
  color: var(--mdt-retro-text);
}

.mdt-window.mdt-law-retro-window .mdt-department-filter-option:hover,
.mdt-window.mdt-law-retro-window .mdt-department-filter-option:has(input:checked) {
  border-color: #607489;
  background: linear-gradient(180deg, #244561, #172b40);
}

.mdt-window.mdt-law-retro-window .switch input:checked + .slider {
  background: linear-gradient(#294765, #1b3048);
  border-color: #526b86;
}

.mdt-window.mdt-law-retro-window .switch input:checked + .slider::before {
  transform: translate(1.4em, -50%);
  outline-color: #0b1118;
}

.mdt-window.mdt-law-retro-window .switch input:checked + .slider .slider-icon {
  color: #e5f4ff;
}

.mdt-window.mdt-law-retro-window .mdt-calls-list {
  gap: 7px;
}

.mdt-window.mdt-law-retro-window .mdt-call-row {
  padding: 0;
  border: 1px solid #4b6075;
  background: rgba(12, 20, 29, 0.28);
  box-shadow:
    inset 1px 1px #0b1118,
    inset -1px -1px #53687d;
}

.mdt-window.mdt-law-retro-window .mdt-call-row:hover {
  background: rgba(22, 34, 50, 0.44);
}

.mdt-window.mdt-law-retro-window .mdt-call-row.selected {
  border-color: #8ca6bf;
  background: rgba(25, 40, 57, 0.58);
  box-shadow:
    inset 1px 1px #d4e4f5,
    inset -1px -1px #0b1118,
    inset 3px 0 0 rgba(164, 196, 239, 0.9);
}

.mdt-window.mdt-law-retro-window .mdt-call-row.backup-request-flash {
  animation-name: mdt-call-backup-border-retro;
}

.mdt-window.mdt-law-retro-window .mdt-call-row.backup-request-flash::before {
  background: rgba(168, 47, 47, .78);
}

.mdt-window.mdt-law-retro-window .mdt-call-main {
  min-height: 40px;
  padding: 0 10px;
  border-bottom: 1px solid #40566b;
  font-size: 13px;
  font-weight: 900;
}

.mdt-window.mdt-law-retro-window .mdt-call-main strong {
  min-width: auto;
  font-size: 14px;
  color: var(--mdt-retro-text);
}

.mdt-window.mdt-law-retro-window .mdt-call-type {
  color: var(--mdt-retro-text-soft);
  font-size: 11px;
  letter-spacing: 0.05em;
}

.mdt-window.mdt-law-retro-window .mdt-call-tag,
.mdt-window.mdt-law-retro-window .mdt-unit-badge,
.mdt-window.mdt-law-retro-window .mdt-alert-severity {
  border: 1px solid #526b86;
  box-shadow:
    inset 1px 1px #7590aa,
    inset -1px -1px #0b1118;
  text-shadow: 1px 1px 0 #09131e;
}

.mdt-window.mdt-law-retro-window .mdt-call-tag {
  padding: 2px 6px;
  background: linear-gradient(#355274, #1e3146);
  color: #e8f3ff;
}

.mdt-window.mdt-law-retro-window .mdt-call-tag.attached {
  background: linear-gradient(#35543c, #203529);
  border-color: #5a7f61;
}

.mdt-window.mdt-law-retro-window .mdt-call-preview,
.mdt-window.mdt-law-retro-window .mdt-call-meta,
.mdt-window.mdt-law-retro-window .mdt-call-sub,
.mdt-window.mdt-law-retro-window .mdt-calls-overview-head span,
.mdt-window.mdt-law-retro-window .mdt-center-meta {
  color: var(--mdt-retro-text-soft);
}

.mdt-window.mdt-law-retro-window .mdt-call-preview,
.mdt-window.mdt-law-retro-window .mdt-call-meta,
.mdt-window.mdt-law-retro-window .mdt-call-sub {
  padding: 0 10px 7px;
}

.mdt-window.mdt-law-retro-window .mdt-call-sub button {
  --mdt-button-font-size: 10px;
  --mdt-button-padding: 4px 8px;
}

.mdt-window.mdt-law-retro-window .mdt-center-header {
  margin-bottom: 8px;
  padding: 0 6px 8px;
  border-bottom: 1px solid #40566b;
  background: transparent;
}

.mdt-window.mdt-law-retro-window .mdt-center-header h3 {
  font-size: 14px;
  font-weight: 900;
  letter-spacing: 0.04em;
}

.mdt-window.mdt-law-retro-window .mdt-center-meta {
  gap: 8px;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
}

.mdt-window.mdt-law-retro-window .mdt-home-layout,
.mdt-window.mdt-law-retro-window .mdt-home-main,
.mdt-window.mdt-law-retro-window .mdt-home-side,
.mdt-window.mdt-law-retro-window .mdt-center-content {
  gap: 8px;
}

.mdt-window.mdt-law-retro-window .mdt-home-stage-empty {
  min-height: 260px;
  padding: 10px 12px;
}

.mdt-window.mdt-law-retro-window .mdt-incident-summary,
.mdt-window.mdt-law-retro-window .mdt-section,
.mdt-window.mdt-law-retro-window .mdt-map-stage,
.mdt-window.mdt-law-retro-window .mdt-query-section,
.mdt-window.mdt-law-retro-window .mdt-leads-header,
.mdt-window.mdt-law-retro-window .mdt-leads-row,
.mdt-window.mdt-law-retro-window .mdt-attached-return-page,
.mdt-window.mdt-law-retro-window .mdt-settings-section,
.mdt-window.mdt-law-retro-window .mdt-alert-detail-section,
.mdt-window.mdt-law-retro-window .mdt-alert-form-section,
.mdt-window.mdt-law-retro-window .mdt-alert-entry-card,
.mdt-window.mdt-law-retro-window .mdt-alert-entry-editor,
.mdt-window.mdt-law-retro-window .cfg-picker-list {
  border: 1px solid #40566b;
  background: rgba(11, 17, 24, 0.18);
  box-shadow:
    inset 1px 1px rgba(255, 255, 255, 0.08),
    inset -1px -1px #071019;
}

.mdt-window.mdt-law-retro-window .mdt-incident-summary {
  grid-template-columns: 1fr 1fr auto;
  padding: 0;
  background: rgba(12, 20, 29, 0.28);
  box-shadow:
    inset 1px 1px #0b1118,
    inset -1px -1px #53687d;
}

.mdt-window.mdt-law-retro-window .mdt-incident-id,
.mdt-window.mdt-law-retro-window .mdt-incident-type,
.mdt-window.mdt-law-retro-window .mdt-incident-time {
  min-height: 40px;
  display: flex;
  align-items: center;
  padding: 0 10px;
  border-bottom: 1px solid #40566b;
}

.mdt-window.mdt-law-retro-window .mdt-incident-id {
  font-size: 14px;
  font-weight: 900;
}

.mdt-window.mdt-law-retro-window .mdt-incident-type {
  justify-content: center;
  font-size: 13px;
  color: var(--mdt-retro-text);
}

.mdt-window.mdt-law-retro-window .mdt-incident-time {
  justify-content: flex-end;
  font-size: 10px;
  color: var(--mdt-retro-text-soft);
}

.mdt-window.mdt-law-retro-window .mdt-call-header-grid {
  gap: 0;
  margin: 0;
  padding: 0;
  background: transparent;
  box-shadow: none;
}

.mdt-window.mdt-law-retro-window .mdt-call-header-grid div {
  min-height: 44px;
  padding: 6px 8px;
  border-right: 1px solid #40566b;
  border-bottom: 1px solid #40566b;
}

.mdt-window.mdt-law-retro-window .mdt-call-header-grid div:nth-child(2n) {
  border-right: 0;
}

.mdt-window.mdt-law-retro-window .mdt-call-header-grid strong,
.mdt-window.mdt-law-retro-window .mdt-query-section-title,
.mdt-window.mdt-law-retro-window .mdt-settings-title,
.mdt-window.mdt-law-retro-window .mdt-settings-field,
.mdt-window.mdt-law-retro-window .mdt-settings-readonly span,
.mdt-window.mdt-law-retro-window .mdt-alert-field span,
.mdt-window.mdt-law-retro-window .mdt-alert-toolbar-field span,
.mdt-window.mdt-law-retro-window .mdt-alert-meta-grid span,
.mdt-window.mdt-law-retro-window .mdt-alert-audit-grid strong {
  color: #e7f0fb;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.mdt-window.mdt-law-retro-window .mdt-call-header-grid p,
.mdt-window.mdt-law-retro-window .mdt-settings-readonly strong,
.mdt-window.mdt-law-retro-window .mdt-alert-meta-grid strong,
.mdt-window.mdt-law-retro-window .mdt-alert-audit-grid span,
.mdt-window.mdt-law-retro-window .mdt-alert-pane-head p,
.mdt-window.mdt-law-retro-window .mdt-alert-form-section p,
.mdt-window.mdt-law-retro-window .mdt-settings-note,
.mdt-window.mdt-law-retro-window .mdt-modal-body p {
  color: var(--mdt-retro-text);
}

.mdt-window.mdt-law-retro-window .mdt-table-wrap {
  border: 1px solid #40566b;
  background: rgba(255, 255, 255, 0.02);
  box-shadow:
    inset 1px 1px rgba(255, 255, 255, 0.04),
    inset -1px -1px #071019;
}

.mdt-window.mdt-law-retro-window .mdt-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  background: transparent;
}

.mdt-window.mdt-law-retro-window .mdt-table th,
.mdt-window.mdt-law-retro-window .mdt-table td {
  padding: 4px 6px;
  text-align: left;
  vertical-align: top;
  overflow-wrap: anywhere;
}

.mdt-window.mdt-law-retro-window .mdt-table th {
  color: #f6fbff;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  border-bottom: 1px solid #40566b;
}

.mdt-window.mdt-law-retro-window .mdt-table td {
  font-size: 11px;
  color: var(--mdt-retro-text);
  border-top: 1px solid rgba(64, 86, 107, 0.56);
}

.mdt-window.mdt-law-retro-window .mdt-table tbody tr:nth-child(odd) td {
  background: rgba(255, 255, 255, 0.018);
}

.mdt-window.mdt-law-retro-window .mdt-col-resizer::after {
  display: none;
  background: transparent;
}

.mdt-window.mdt-law-retro-window .mdt-detail-tabs {
  gap: 7px;
  margin-bottom: 8px;
}

.mdt-window.mdt-law-retro-window .mdt-detail-tab,
.mdt-window.mdt-law-retro-window .mdt-page-row,
.mdt-window.mdt-law-retro-window .mdt-leads-row-head {
  --mdt-button-font-size: 10px;
  --mdt-button-padding: 0 11px;
  min-height: 26px;
  font-weight: 900;
}

.mdt-window.mdt-law-retro-window .mdt-detail-tab.active,
.mdt-window.mdt-law-retro-window .mdt-page-row.active {
  background: linear-gradient(#4a6785, #729cc8);
  color: #ffffff;
}

.mdt-window.mdt-law-retro-window .mdt-action-row {
  gap: 7px;
  padding: 6px;
  margin-top: 0;
  background: rgba(255, 255, 255, 0.02);
}

.mdt-window.mdt-law-retro-window .mdt-query-section {
  padding: 6px;
  margin-bottom: 8px;
}

.mdt-window.mdt-law-retro-window .mdt-query-grid,
.mdt-window.mdt-law-retro-window .mdt-settings-grid,
.mdt-window.mdt-law-retro-window .mdt-settings-readonly,
.mdt-window.mdt-law-retro-window .mdt-alert-form-grid,
.mdt-window.mdt-law-retro-window .mdt-alert-meta-grid,
.mdt-window.mdt-law-retro-window .mdt-alert-audit-grid {
  gap: 6px;
}

.mdt-window.mdt-law-retro-window .mdt-query-grid input,
.mdt-window.mdt-law-retro-window .mdt-unit-status-select,
.mdt-window.mdt-law-retro-window .mdt-alert-field input,
.mdt-window.mdt-law-retro-window .mdt-alert-field select,
.mdt-window.mdt-law-retro-window .mdt-alert-field textarea,
.mdt-window.mdt-law-retro-window .mdt-alert-toolbar-field input,
.mdt-window.mdt-law-retro-window .mdt-alert-toolbar-field select {
  min-height: 27px;
  padding: 0 8px;
}

.mdt-window.mdt-law-retro-window .mdt-inline textarea,
.mdt-window.mdt-law-retro-window .mdt-modal-body textarea,
.mdt-window.mdt-law-retro-window .mdt-alert-field textarea {
  min-height: 72px;
  padding: 8px;
}

.mdt-window.mdt-law-retro-window .mdt-return {
  min-height: 31px;
  padding: 8px;
  font-weight: 700;
}

.mdt-window.mdt-law-retro-window .mdt-recent-queries {
  gap: 7px;
  margin-top: 0;
}

.mdt-window.mdt-law-retro-window .mdt-recent-queries button {
  --mdt-button-font-size: 10px;
  --mdt-button-padding: 6px 10px;
  min-height: 30px;
}

.mdt-window.mdt-law-retro-window .mdt-recent-queries button small,
.mdt-window.mdt-law-retro-window .mdt-map-stage-head p,
.mdt-window.mdt-law-retro-window .mdt-calls-overview-head span,
.mdt-window.mdt-law-retro-window .mdt-units-toolbar span,
.mdt-window.mdt-law-retro-window .mdt-units-footnote,
.mdt-window.mdt-law-retro-window .mdt-alert-row small,
.mdt-window.mdt-law-retro-window .mdt-alert-row-meta,
.mdt-window.mdt-law-retro-window .mdt-alert-entry-head span,
.mdt-window.mdt-law-retro-window .mdt-mailbox-item-meta,
.mdt-window.mdt-law-retro-window .mdt-mailbox-item-head span,
.mdt-window.mdt-law-retro-window .mdt-mailbox-hint {
  color: var(--mdt-retro-text-soft);
}

.mdt-window.mdt-law-retro-window .mdt-map-view {
  gap: 8px;
}

.mdt-window.mdt-law-retro-window .mdt-map-stage-head,
.mdt-window.mdt-law-retro-window .mdt-attached-return-page-head,
.mdt-window.mdt-law-retro-window .mdt-units-toolbar,
.mdt-window.mdt-law-retro-window .mdt-alerts-header,
.mdt-window.mdt-law-retro-window .mdt-alerts-toolbar,
.mdt-window.mdt-law-retro-window .mdt-modal header,
.mdt-window.mdt-law-retro-window .mdt-mailbox-toolbar {
  background: linear-gradient(180deg, #202d3b, #17212d);
  border-bottom: 1px solid #40566b;
}

.mdt-window.mdt-law-retro-window .mdt-map-stage-head {
  padding: 8px 10px;
}

.mdt-window.mdt-law-retro-window .mdt-map-stage-head strong,
.mdt-window.mdt-law-retro-window .mdt-alert-pane-head h3,
.mdt-window.mdt-law-retro-window .mdt-alert-form-section h4,
.mdt-window.mdt-law-retro-window .mdt-alert-detail-section h4,
.mdt-window.mdt-law-retro-window .mdt-mailbox-toolbar strong,
.mdt-window.mdt-law-retro-window .mdt-units-toolbar strong,
.mdt-window.mdt-law-retro-window .mdt-leads-header strong {
  color: var(--mdt-retro-text);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.mdt-window.mdt-law-retro-window .mdt-map-control {
  --mdt-button-font-size: 11px;
  --mdt-button-padding: 0 10px;
  min-width: 40px;
  height: 30px;
}

.mdt-window.mdt-law-retro-window .mdt-map-control.reset {
  min-width: 74px;
}

.mdt-window.mdt-law-retro-window .mdt-map-zoom-readout {
  min-width: 64px;
  height: 30px;
  padding: 0 10px;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.08em;
}

.mdt-window.mdt-law-retro-window .mdt-map-image-shell {
  padding: 10px;
  background:
    radial-gradient(circle at center, rgba(70, 106, 144, 0.2) 0%, rgba(27, 41, 57, 0.76) 40%, rgba(16, 24, 34, 0.98) 100%);
  box-shadow:
    inset 1px 1px #0b1118,
    inset -1px -1px #53687d;
}

.mdt-window.mdt-law-retro-window .mdt-map-image {
  border: 1px solid #526b86;
  background: #142131;
  box-shadow:
    0 0 0 1px rgba(0, 0, 0, 0.42),
    0 12px 24px rgba(0, 0, 0, 0.22);
}

.mdt-window.mdt-law-retro-window .mdt-map-image-fallback {
  border: 1px dashed #566b80;
  background: rgba(0, 0, 0, 0.18);
  color: var(--mdt-retro-text-soft);
}

.mdt-window.mdt-law-retro-window .mdt-map-image-fallback p {
  color: var(--mdt-retro-text-soft);
}

.mdt-window.mdt-law-retro-window .mdt-map-marker {
  border: 1px solid #4b6075;
  background: rgba(12, 20, 29, 0.28);
  box-shadow:
    inset 1px 1px #0b1118,
    inset -1px -1px #53687d;
  color: var(--mdt-retro-text);
}

.mdt-window.mdt-law-retro-window .mdt-map-marker.unit {
  border-color: #5a7f61;
  background: rgba(17, 37, 26, 0.34);
}

.mdt-window.mdt-law-retro-window .mdt-units-panel {
  min-height: 100%;
}

.mdt-window.mdt-law-retro-window .mdt-units-toolbar,
.mdt-window.mdt-law-retro-window .mdt-units-head {
  padding-left: 10px;
  padding-right: 10px;
}

.mdt-window.mdt-law-retro-window .mdt-units-head {
  background: rgba(255, 255, 255, 0.03);
  border-bottom: 1px solid #40566b;
  color: var(--mdt-retro-text);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.06em;
}

.mdt-window.mdt-law-retro-window .mdt-units-row {
  min-height: 46px;
  border-bottom: 1px solid #40566b;
  background: rgba(255, 255, 255, 0.018);
}

.mdt-window.mdt-law-retro-window .mdt-units-row:nth-child(even) {
  background: rgba(0, 0, 0, 0.08);
}

.mdt-window.mdt-law-retro-window .mdt-units-row.linked {
  box-shadow:
    inset 3px 0 0 #84aef1,
    inset 1px 1px rgba(255, 255, 255, 0.04),
    inset -1px -1px #071019;
}

.mdt-window.mdt-law-retro-window .mdt-units-row.mine {
  box-shadow:
    inset 0 0 0 1px rgba(126, 189, 146, 0.42),
    inset 1px 1px rgba(255, 255, 255, 0.03);
}

.mdt-window.mdt-law-retro-window .mdt-units-cell {
  padding: 8px 10px;
  border-right: 1px solid rgba(64, 86, 107, 0.58);
}

.mdt-window.mdt-law-retro-window .mdt-units-cell.unit-id strong,
.mdt-window.mdt-law-retro-window .mdt-alert-row-subject {
  color: var(--mdt-retro-text);
  font-weight: 900;
}

.mdt-window.mdt-law-retro-window .mdt-unit-badge,
.mdt-window.mdt-law-retro-window .mdt-alert-severity {
  background: linear-gradient(#355274, #1e3146);
  color: #e8f3ff;
}

.mdt-window.mdt-law-retro-window .mdt-unit-badge.available {
  background: linear-gradient(#35543c, #203529);
}

.mdt-window.mdt-law-retro-window .mdt-unit-badge.busy {
  background: linear-gradient(#63503c, #3b2f22);
}

.mdt-window.mdt-law-retro-window .mdt-unit-badge.neutral,
.mdt-window.mdt-law-retro-window .mdt-unit-badge.area {
  background: linear-gradient(#3a556e, #23384b);
}

.mdt-window.mdt-law-retro-window .mdt-unit-status-select,
.mdt-window.mdt-law-retro-window .mdt-unit-assignment-select {
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  border-color: #607489;
  background: linear-gradient(#3a556e, #23384b);
  color: #e8f3ff;
}

.mdt-window.mdt-law-retro-window .mdt-leads-header-actions {
  gap: 6px;
}

.mdt-window.mdt-law-retro-window .mdt-page-list {
  gap: 6px;
}

.mdt-window.mdt-law-retro-window .mdt-attached-return-page-head span,
.mdt-window.mdt-law-retro-window .mdt-attached-return-fields dt {
  color: var(--mdt-retro-text-soft);
}

.mdt-window.mdt-law-retro-window .mdt-attached-return-page-body,
.mdt-window.mdt-law-retro-window .mdt-attached-return-content {
  gap: 8px;
}

.mdt-window.mdt-law-retro-window .mdt-attached-return-section {
  background: rgba(255, 255, 255, 0.02);
  border-color: #40566b;
}

.mdt-window.mdt-law-retro-window .mdt-attached-return-fields dd,
.mdt-window.mdt-law-retro-window .mdt-attached-return-section p {
  color: var(--mdt-retro-text);
}

.mdt-window.mdt-law-retro-window .mdt-status.pending {
  color: #f0d37c;
}

.mdt-window.mdt-law-retro-window .mdt-status.active,
.mdt-window.mdt-law-retro-window #mdtFooterConn {
  color: var(--mdt-retro-green);
}

.mdt-window.mdt-law-retro-window .mdt-status.closed {
  color: #b7c2cf;
}

.mdt-window.mdt-law-retro-window .mdt-actionbar {
  grid-template-columns: repeat(5, minmax(0, 1fr)) minmax(120px, 0.92fr);
  gap: 6px;
  padding: 6px 0 0;
  background: transparent;
  border: 0;
}

.mdt-window.mdt-law-retro-window .mdt-actionbar button {
  --mdt-button-font-size: 11px;
  --mdt-button-padding: 0 12px;
  min-height: 38px;
}

.mdt-window.mdt-law-retro-window .mdt-status-strip {
  margin-top: 2px;
  border-top: 1px solid #52677d;
  background: #101822;
  color: var(--mdt-retro-text);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.04em;
}

.mdt-window.mdt-law-retro-window .mdt-status-strip span {
  display: flex;
  align-items: center;
  min-height: 26px;
  padding: 0 8px;
  border-right: 1px solid #52677d;
}

.mdt-window.mdt-law-retro-window .mdt-modal-host {
  background: rgba(7, 10, 16, 0.72);
}

.mdt-window.mdt-law-retro-window .mdt-modal {
  border: 1px solid var(--mdt-retro-border-black);
  box-shadow:
    inset 1px 1px #5f7080,
    inset -1px -1px #020508,
    0 20px 44px rgba(0, 0, 0, 0.38);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.04), transparent 12%),
    linear-gradient(180deg, #1b2a3b 0%, #14202d 100%);
}

.mdt-window.mdt-law-retro-window .mdt-modal header {
  padding: 8px 10px;
}

.mdt-window.mdt-law-retro-window .mdt-modal header strong,
.mdt-window.mdt-law-retro-window .mdt-modal header h3,
.mdt-window.mdt-law-retro-window .mdt-modal header h4 {
  color: var(--mdt-retro-text);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.mdt-window.mdt-law-retro-window .mdt-modal-body {
  padding: 10px;
  gap: 8px;
}

.mdt-window.mdt-law-retro-window .mdt-modal footer {
  padding: 8px 10px;
  border-top: 1px solid #40566b;
  background: rgba(0, 0, 0, 0.08);
}

.mdt-window.mdt-law-retro-window .mdt-settings-section,
.mdt-window.mdt-law-retro-window .mdt-settings-readonly div,
.mdt-window.mdt-law-retro-window .cfg-picker-list {
  padding: 8px;
}

.mdt-window.mdt-law-retro-window .mdt-settings-message {
  color: #dff3d5;
}

.mdt-window.mdt-law-retro-window .mdt-settings-message.error,
.mdt-window.mdt-law-retro-window .mdt-settings-errors {
  color: #ffc3c3;
}

.mdt-window.mdt-law-retro-window .cfg-picker-option {
  border: 1px solid #4b6075;
  background: rgba(12, 20, 29, 0.28);
  box-shadow:
    inset 1px 1px #0b1118,
    inset -1px -1px #53687d;
}

.mdt-window.mdt-law-retro-window .cfg-picker-option.active {
  border-color: #8ca6bf;
  box-shadow:
    inset 1px 1px #d4e4f5,
    inset -1px -1px #0b1118;
}

.mdt-window.mdt-law-retro-window .mdt-alerts-modal {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.04), transparent 12%),
    linear-gradient(180deg, #1b2a3b 0%, #14202d 100%);
}

.mdt-window.mdt-law-retro-window .mdt-alerts-layout {
  gap: 8px;
  padding: 10px;
}

.mdt-window.mdt-law-retro-window .mdt-alerts-list {
  padding: 8px;
  gap: 7px;
}

.mdt-window.mdt-law-retro-window .mdt-alert-row,
.mdt-window.mdt-law-retro-window .mdt-mailbox-item {
  border: 1px solid #4b6075;
  background: rgba(12, 20, 29, 0.28);
  box-shadow:
    inset 1px 1px #0b1118,
    inset -1px -1px #53687d;
}

.mdt-window.mdt-law-retro-window .mdt-alert-row:hover,
.mdt-window.mdt-law-retro-window .mdt-mailbox-item:hover {
  background: rgba(22, 34, 50, 0.44);
}

.mdt-window.mdt-law-retro-window .mdt-alert-row.active {
  border-color: #8ca6bf;
  box-shadow:
    inset 1px 1px #d4e4f5,
    inset -1px -1px #0b1118;
  background: rgba(25, 40, 57, 0.58);
}

.mdt-window.mdt-law-retro-window .mdt-alert-pane {
  padding: 10px;
}

.mdt-window.mdt-law-retro-window .mdt-alert-severity.high,
.mdt-window.mdt-law-retro-window .mdt-modal button.danger,
.mdt-window.mdt-law-retro-window .mdt-actionbar button.danger {
  background: linear-gradient(var(--mdt-retro-hot-top), var(--mdt-retro-hot-bottom));
}

.mdt-window.mdt-law-retro-window .mdt-alert-severity.medium {
  background: linear-gradient(#6e5a38, #a48759);
}

.mdt-window.mdt-law-retro-window .mdt-alert-severity.low {
  background: linear-gradient(#355274, #1e3146);
}

.mdt-window.mdt-law-retro-window .mdt-mailbox-toolbar,
.mdt-window.mdt-law-retro-window .mdt-mailbox-item-head,
.mdt-window.mdt-law-retro-window .mdt-mailbox-item-meta,
.mdt-window.mdt-law-retro-window .mdt-mailbox-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  flex-wrap: wrap;
}

.mdt-window.mdt-law-retro-window .mdt-mailbox-toolbar {
  padding: 0 0 8px;
  border-bottom: 1px solid #40566b;
  background: transparent;
}

.mdt-window.mdt-law-retro-window .mdt-mailbox-list {
  display: grid;
  gap: 8px;
}

.mdt-window.mdt-law-retro-window .mdt-mailbox-item {
  padding: 10px;
  display: grid;
  gap: 8px;
}

.mdt-window.mdt-law-retro-window .mdt-mailbox-item.unread {
  border-color: #8ca6bf;
}

.mdt-window.mdt-law-retro-window .mdt-mailbox-item-body {
  color: var(--mdt-retro-text);
  line-height: 1.4;
}

.mdt-window.mdt-law-retro-window .mdt-mailbox-recipient-list {
  width: 100%;
  min-height: 180px;
  padding: 6px;
}

.mdt-window.mdt-law-retro-window .mdt-mailbox-recipient-meta,
.mdt-window.mdt-law-retro-window .mdt-mailbox-hint {
  padding: 8px;
  font-size: 11px;
}

.mdt-window.mdt-law-retro-window .mdt-mailbox-viewer-modal {
  width: min(1020px, 96%);
}

.mdt-window.mdt-law-retro-window .mdt-mailbox-viewer-title span,
.mdt-window.mdt-law-retro-window .mdt-mailbox-viewer-summary span,
.mdt-window.mdt-law-retro-window .mdt-mailbox-viewer-row-head span,
.mdt-window.mdt-law-retro-window .mdt-mailbox-viewer-row-meta span {
  color: var(--mdt-retro-text-soft);
}

.mdt-window.mdt-law-retro-window .mdt-mailbox-viewer-list,
.mdt-window.mdt-law-retro-window .mdt-mailbox-viewer-pane,
.mdt-window.mdt-law-retro-window .mdt-mailbox-viewer-message {
  border: 1px solid #4c6176;
  background: var(--mdt-retro-inset-bg);
  box-shadow:
    inset 1px 1px #0b1118,
    inset -1px -1px #53687d;
}

.mdt-window.mdt-law-retro-window .mdt-mailbox-viewer-row {
  border: 1px solid #4b6075;
  background: rgba(12, 20, 29, 0.28);
  box-shadow:
    inset 1px 1px #0b1118,
    inset -1px -1px #53687d;
  color: var(--mdt-retro-text);
}

.mdt-window.mdt-law-retro-window .mdt-mailbox-viewer-row:hover {
  background: rgba(22, 34, 50, 0.44);
  color: var(--mdt-retro-text);
}

.mdt-window.mdt-law-retro-window .mdt-mailbox-viewer-row.selected {
  border-color: #8ca6bf;
  box-shadow:
    inset 1px 1px #d4e4f5,
    inset -1px -1px #0b1118;
  background: rgba(25, 40, 57, 0.58);
}

.mdt-window.mdt-law-retro-window .mdt-mailbox-viewer-row-preview,
.mdt-window.mdt-law-retro-window .mdt-mailbox-viewer-message {
  color: var(--mdt-retro-text);
}

.mdt-window.mdt-law-retro-window .mdt-reports-grid {
  gap: 8px;
}

@media (max-width: 1200px) {
  .mdt-window.mdt-law-retro-window .mdt-topbar-ops {
    grid-template-columns: 1fr;
  }

  .mdt-window.mdt-law-retro-window .mdt-top-center,
  .mdt-window.mdt-law-retro-window .mdt-nav-controls {
    justify-content: flex-start;
  }

  .mdt-window.mdt-law-retro-window .mdt-workspace-grid {
    grid-template-columns: 1fr;
  }

  .mdt-window.mdt-law-retro-window .mdt-actionbar {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .mdt-window.mdt-law-retro-window .mdt-status-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .mdt-window.mdt-law-retro-window .mdt-settings-grid,
  .mdt-window.mdt-law-retro-window .mdt-settings-readonly,
  .mdt-window.mdt-law-retro-window .mdt-alerts-toolbar,
  .mdt-window.mdt-law-retro-window .mdt-alerts-layout,
  .mdt-window.mdt-law-retro-window .mdt-alert-form-grid,
  .mdt-window.mdt-law-retro-window .mdt-alert-meta-grid,
  .mdt-window.mdt-law-retro-window .mdt-alert-audit-grid,
  .mdt-window.mdt-law-retro-window .mdt-query-grid {
    grid-template-columns: 1fr;
  }
}

.leads-window { background:#cfc7bb; }
.leads-window .app-window-body.leads-body { padding:0; height:calc(100% - var(--window-chrome-height, 72px)); overflow:hidden; background:#c7c0b5; color:#1b1d21; }
.leads-window .app-window-body.leads-body button,
.leads-manual-window .app-window-body.leads-manual-body button {
  font-family: inherit;
  border: none;
  outline: 1px dotted rgb(37, 37, 37);
  outline-offset: -4px;
  cursor: pointer;
  background: hsl(0deg 0% 75%);
  box-shadow:
    inset -1px -1px #292929,
    inset 1px 1px #fff,
    inset -2px -2px rgb(158, 158, 158),
    inset 2px 2px #ffffff;
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: 2px;
  padding: 5px 30px;
  color: #171717;
}

.leads-window .app-window-body.leads-body button:active,
.leads-manual-window .app-window-body.leads-manual-body button:active,
.leads-window .app-window-body.leads-body button.active,
.leads-manual-window .app-window-body.leads-manual-body button.active {
  box-shadow:
    inset -1px -1px #fff,
    inset 1px 1px #292929,
    inset -2px -2px #ffffff,
    inset 2px 2px rgb(158, 158, 158);
}

.leads-window .app-window-body.leads-body button:hover,
.leads-window .app-window-body.leads-body button:focus-visible,
.leads-manual-window .app-window-body.leads-manual-body button:hover,
.leads-manual-window .app-window-body.leads-manual-body button:focus-visible {
  text-decoration: none;
}
.stic-window { background:#0d1621; }
.stic-window .app-window-body { padding:0; height:calc(100% - var(--window-chrome-height, 72px)); overflow:hidden; background:#0e1b28; color:#edf7ff; }
.stic-shell { height:100%; display:grid; grid-template-columns:280px minmax(0,1fr); background:radial-gradient(circle at top right, rgba(58,176,208,.18), transparent 34%), linear-gradient(180deg,#0f1a26 0%,#112337 100%); }
.stic-sidebar { border-right:1px solid rgba(152,201,232,.16); background:linear-gradient(180deg, rgba(9,22,35,.96) 0%, rgba(14,31,48,.98) 100%); padding:22px 18px; display:grid; align-content:start; gap:18px; }
.stic-brand { display:flex; align-items:center; gap:12px; }
.stic-brand .or-icon { width:46px; height:46px; flex:0 0 46px; }
.stic-brand strong { display:block; font-size:24px; letter-spacing:.08em; }
.stic-brand span { display:block; margin-top:4px; color:#9cc6dd; font-size:12px; line-height:1.45; text-transform:uppercase; letter-spacing:.08em; }
.stic-sidebar-card { border:1px solid rgba(145,193,224,.16); background:rgba(255,255,255,.04); border-radius:18px; padding:16px; display:grid; gap:6px; box-shadow:inset 0 1px 0 rgba(255,255,255,.04); }
.stic-sidebar-card span { font-size:11px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; color:#83b6d1; }
.stic-sidebar-card strong { font-size:18px; color:#f4fbff; }
.stic-sidebar-card small { color:#a9c6d8; line-height:1.5; }
.stic-main { min-width:0; display:grid; grid-template-rows:auto 1fr; gap:18px; padding:24px 26px; }
.stic-header { display:flex; justify-content:space-between; align-items:flex-start; gap:18px; padding:20px 22px; border-radius:24px; border:1px solid rgba(143,197,228,.18); background:linear-gradient(180deg, rgba(23,47,68,.92) 0%, rgba(14,32,47,.92) 100%); box-shadow:0 16px 38px rgba(4,10,18,.24); }
.stic-header p { margin:0 0 6px; color:#7fb1cc; text-transform:uppercase; letter-spacing:.14em; font-size:11px; font-weight:800; }
.stic-header h2 { margin:0; font-size:34px; letter-spacing:.03em; color:#f3fbff; }
.stic-header-badges { display:flex; gap:10px; flex-wrap:wrap; justify-content:flex-end; }
.stic-header-badges span { padding:8px 12px; border-radius:999px; background:rgba(58,176,208,.14); border:1px solid rgba(100,198,226,.24); color:#bcecff; font-size:11px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.stic-grid { display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:18px; }
.stic-panel { border-radius:24px; border:1px solid rgba(143,197,228,.18); background:linear-gradient(180deg, rgba(14,29,44,.94) 0%, rgba(10,22,35,.94) 100%); padding:18px; box-shadow:0 14px 32px rgba(3,9,16,.22); display:grid; gap:14px; }
.stic-panel h3 { margin:0; font-size:14px; letter-spacing:.12em; text-transform:uppercase; color:#8dc8e2; }
.stic-panel p { margin:0; color:#d4e8f3; line-height:1.6; }
.stic-panel-wide { grid-column:1 / -1; }
.stic-list { list-style:none; margin:0; padding:0; display:grid; gap:12px; }
.stic-list li { display:grid; gap:4px; padding:12px 0; border-top:1px solid rgba(143,197,228,.12); }
.stic-list li:first-child { border-top:none; padding-top:0; }
.stic-list strong { color:#effbff; font-size:15px; }
.stic-list span { color:#aacddd; line-height:1.55; }
.stic-action-grid { display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:12px; }
.stic-action-grid button { border:1px solid rgba(107,192,222,.28); background:linear-gradient(180deg, rgba(32,80,109,.96) 0%, rgba(21,53,75,.96) 100%); color:#eefbff; border-radius:16px; min-height:50px; font-weight:800; letter-spacing:.04em; transition:transform .14s ease, border-color .14s ease, box-shadow .14s ease; }
.stic-action-grid button:hover { transform:translateY(-1px); border-color:rgba(129,215,244,.48); box-shadow:0 10px 24px rgba(6,17,27,.28); }
.stic-stat-grid { display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:12px; }
.stic-stat-grid div { border-radius:18px; border:1px solid rgba(143,197,228,.16); background:rgba(255,255,255,.04); padding:14px; display:grid; gap:6px; }
.stic-stat-grid span { color:#8dc4dd; font-size:11px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.stic-stat-grid strong { color:#f3fbff; font-size:28px; }
.stic-nav { display:grid; gap:10px; }
.stic-nav button { border:1px solid rgba(145,193,224,.16); background:rgba(255,255,255,.04); color:#d9eef8; border-radius:16px; padding:12px 14px; display:flex; align-items:center; gap:10px; font-weight:700; text-align:left; }
.stic-nav button.active { background:linear-gradient(180deg, rgba(42,109,143,.92) 0%, rgba(25,75,104,.92) 100%); border-color:rgba(151,220,246,.28); color:#fff; }
.stic-loading, .stic-fail { display:grid; place-items:center; height:100%; color:#edf7ff; font-size:18px; }
.stic-loading .os-loading-shell { width:100%; height:100%; padding:0; }
.stic-fail { gap:10px; text-align:center; padding:32px; }
.stic-message { margin:0 0 16px; padding:12px 14px; border-radius:16px; border:1px solid rgba(113,192,226,.18); background:rgba(255,255,255,.05); color:#d9eef8; }
.stic-message.error { border-color:rgba(229,114,114,.22); background:rgba(109,31,31,.28); color:#ffd8d8; }
.stic-grid-two { grid-template-columns:minmax(320px, .85fr) minmax(0, 1.15fr); }
.stic-feed { display:grid; gap:12px; }
.stic-feed-card, .stic-ticket-card, .stic-alert-card { border-radius:18px; border:1px solid rgba(143,197,228,.16); background:rgba(255,255,255,.04); padding:14px; display:grid; gap:8px; }
.stic-feed-top { display:flex; justify-content:space-between; align-items:flex-start; gap:12px; }
.stic-chip-row { display:flex; gap:8px; flex-wrap:wrap; justify-content:flex-end; }
.stic-chip { padding:6px 10px; border-radius:999px; border:1px solid rgba(143,197,228,.16); background:rgba(255,255,255,.05); color:#d6eef8; font-size:10px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.stic-chip-low { background:rgba(88,140,170,.18); border-color:rgba(122,194,226,.28); }
.stic-chip-medium { background:rgba(61,122,161,.22); border-color:rgba(107,192,222,.28); }
.stic-chip-high { background:rgba(184,113,37,.20); border-color:rgba(240,173,78,.32); color:#ffe4bc; }
.stic-chip-critical { background:rgba(166,55,55,.22); border-color:rgba(230,102,102,.34); color:#ffd6d6; }
.stic-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.stic-form-grid label { display:grid; gap:6px; min-width:0; }
.stic-form-grid label span { font-size:11px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; color:#8dc8e2; }
.stic-form-grid input, .stic-form-grid select, .stic-form-grid textarea, .stic-inline-actions button, .stic-ticket-card textarea { border:1px solid rgba(145,193,224,.18); background:rgba(6,18,29,.72); color:#eef8ff; border-radius:14px; padding:10px 12px; font:inherit; }
.stic-form-grid textarea, .stic-ticket-card textarea { min-height:92px; resize:vertical; }
.stic-form-span { grid-column:1 / -1; }
.stic-inline-actions { display:flex; gap:10px; flex-wrap:wrap; }
.stic-inline-actions button { cursor:pointer; font-weight:700; }
.stic-inline-actions .primary { background:linear-gradient(180deg, rgba(44,111,145,.96) 0%, rgba(26,79,109,.96) 100%); }
.stic-meta-grid { display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:8px; font-size:12px; color:#9cc6dd; }
.stic-note-callout { border-left:3px solid rgba(113,192,226,.38); padding:10px 12px; background:rgba(255,255,255,.04); color:#d7ecf7; border-radius:12px; }
.stic-alert-grid { display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:12px; }
.stic-empty { border:1px dashed rgba(143,197,228,.18); border-radius:16px; padding:18px; color:#9fc6d9; text-align:center; }
@media (max-width: 1180px) {
  .stic-shell { grid-template-columns:1fr; }
  .stic-grid { grid-template-columns:1fr; }
  .stic-header { flex-direction:column; }
  .stic-grid-two, .stic-form-grid, .stic-alert-grid, .stic-meta-grid { grid-template-columns:1fr; }
}
.leads-shell { display:grid; grid-template-columns:220px 1fr; height:100%; background:#c7c0b5; }
.leads-sidebar { background:linear-gradient(180deg,#214786 0%,#173565 56%,#122a4d 100%); color:#edf5ff; padding:14px 12px; display:flex; flex-direction:column; gap:14px; border-right:2px solid #847c70; box-shadow:inset -1px 0 0 #f2eee6; }
.leads-brand span { display:block; font-size:24px; font-weight:800; letter-spacing:.08em; }
.leads-brand small { display:block; margin-top:6px; color:#d3def0; line-height:1.4; }
.leads-nav { display:grid; gap:8px; }
.leads-nav button { border:2px solid; border-color:#f3f0e8 #0d1d38 #0d1d38 #f3f0e8; background:#d7d2c8; color:#14253a; padding:10px 12px; text-align:left; font-weight:700; border-radius:0; box-shadow:inset 1px 1px 0 #fff; }
.leads-nav button.active { background:#3a5f93; color:#f3f7ff; border-color:#f3f0e8 #14253a #14253a #f3f0e8; box-shadow:inset 1px 1px 0 rgba(255,255,255,.25); }
.leads-sidebar-foot { margin-top:auto; font-size:12px; color:#b8cad9; line-height:1.5; border-top:1px solid rgba(255,255,255,.08); padding-top:14px; }
.leads-main { display:flex; flex-direction:column; min-width:0; }
.leads-header { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; padding:12px 16px 10px; border-bottom:2px solid #8a8278; background:linear-gradient(180deg,#e9e4db 0%,#d6cec2 100%); box-shadow:inset 0 1px 0 #fff; }
.leads-header h2 { margin:0; font-size:24px; color:#18293d; text-transform:uppercase; letter-spacing:.05em; }
.leads-header p { margin:4px 0 0; color:#505866; }
.leads-header-meta { display:flex; gap:8px; flex-wrap:wrap; }
.leads-header-meta span, .leads-count-chip, .leads-role-chip { background:#284d82; color:#eef6ff; padding:5px 9px; border:1px solid #18355e; border-radius:0; font-size:11px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; box-shadow:inset 1px 1px 0 rgba(255,255,255,.24); }
.leads-role-chip { background:#6b4e26; color:#fff3df; border-color:#4d371b; }
.leads-message { margin:12px 20px 0; background:#fff7d8; color:#6e5200; border:1px solid #f0dc91; padding:10px 12px; border-radius:12px; font-size:13px; }
.leads-page-shell, .leads-results-shell, .leads-search-layout { padding:18px 20px 20px; min-height:0; }
.leads-search-layout { display:grid; grid-template-columns:1.35fr .85fr; gap:18px; }
.leads-results-shell { display:grid; grid-template-columns:320px 1fr 280px; gap:18px; flex:1; min-height:0; }
.leads-intel-grid { display:grid; grid-template-columns:1fr 1fr 1fr; gap:18px; }
.leads-panel, .leads-result-list, .leads-result-main { background:#dfd8cd; border:2px solid; border-color:#f6f1e8 #8a8278 #8a8278 #f6f1e8; border-radius:0; box-shadow:inset 1px 1px 0 #fff; padding:14px; min-height:0; }
.leads-result-list, .leads-result-main { display:flex; flex-direction:column; }
.leads-panel-head { display:flex; justify-content:space-between; align-items:flex-start; gap:12px; margin-bottom:14px; }
.leads-panel-head h3 { margin:0; color:#12263a; font-size:18px; }
.leads-panel-head p { margin:5px 0 0; color:#607181; font-size:13px; }
.leads-search-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.leads-field-wide { grid-column:1 / -1; }
.leads-form-field { display:grid; gap:6px; }
.leads-form-field span { font-size:12px; font-weight:700; color:#4b5d6d; text-transform:uppercase; letter-spacing:.04em; }
.leads-form-field input, .leads-form-field select, .leads-toolbar input, .leads-toolbar select, .leads-note-editor input, .leads-note-editor textarea { width:100%; border:2px solid; border-color:#847c70 #f5f0e7 #f5f0e7 #847c70; background:#f2efe8; color:#13212f; border-radius:0; padding:9px 10px; font-size:14px; box-shadow:inset 1px 1px 0 #c0bbb2; }
.leads-note-editor textarea { min-height:128px; resize:vertical; }
.leads-form-actions, .leads-record-actions, .leads-card-actions, .leads-toolbar { display:flex; gap:10px; flex-wrap:wrap; }
.leads-form-actions { margin-top:14px; }
.leads-form-actions button, .leads-record-actions button, .leads-toolbar button, .leads-card-actions button, .leads-note-editor button, .leads-panel button, .leads-table button { border:2px solid; border-color:#f5f0e7 #41556f #41556f #f5f0e7; background:#d7d2c8; color:#14253a; padding:9px 13px; border-radius:0; font-weight:700; box-shadow:inset 1px 1px 0 #fff; }
.leads-form-actions button.primary, .leads-note-editor button.primary { background:#3a5f93; border-color:#f5f0e7 #122a49 #122a49 #f5f0e7; color:#eef6ff; }
.leads-mini-history, .leads-result-stack, .leads-card-list { display:grid; gap:10px; overflow:auto; }
.leads-mini-history button, .leads-result-row { border:2px solid; border-color:#f4efe6 #8d8579 #8d8579 #f4efe6; background:#ece6dc; border-radius:0; padding:12px; text-align:left; color:#13212f; box-shadow:inset 1px 1px 0 #fff; }
.leads-mini-history button strong, .leads-result-row strong { display:block; }
.leads-mini-history button span, .leads-mini-history button small, .leads-result-row span { display:block; color:#617282; margin-top:4px; }
.leads-result-row.active { border-color:#f4efe6 #17345d #17345d #f4efe6; background:#c8d4e3; box-shadow:inset 1px 1px 0 rgba(255,255,255,.75); }
.leads-record-header { display:flex; justify-content:space-between; gap:16px; align-items:flex-start; }
.leads-record-header h3 { margin:0; font-size:26px; color:#102435; }
.leads-record-header p { margin:5px 0 0; color:#627485; }
.leads-summary-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin:16px 0; }
.leads-summary-card { background:#ece5da; border:2px solid; border-color:#f5f0e7 #887f74 #887f74 #f5f0e7; border-radius:0; padding:14px; }
.leads-summary-card span { display:block; font-size:11px; text-transform:uppercase; color:#6a7b8a; letter-spacing:.05em; margin-bottom:6px; }
.leads-summary-card strong { color:#13212f; font-size:17px; }
.leads-tab-strip { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:14px; }
.leads-tab-strip button { border:2px solid; border-color:#f4efe6 #8b8478 #8b8478 #f4efe6; background:#dad3c8; color:#1b3447; padding:8px 12px; border-radius:0; font-size:12px; font-weight:700; }
.leads-tab-strip button.active { background:#3d5f92; color:#edf6ff; border-color:#f4efe6 #142a48 #142a48 #f4efe6; }
.leads-tab-body { flex:1; min-height:0; background:#20374f; border-radius:0; padding:16px; overflow:auto; border:2px solid; border-color:#7f776d #f2ede4 #f2ede4 #7f776d; }
.leads-tab-body pre, .leads-print-preview pre { margin:0; white-space:pre-wrap; font-size:13px; font-family:"Consolas","Courier New",monospace; }
.leads-tab-body pre { color:#f1f6ff; }
.leads-flag-row { display:flex; gap:6px; flex-wrap:wrap; margin-top:8px; }
.leads-flag-row-block { margin-top:0; }
.leads-flag { border-radius:999px; padding:5px 9px; font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.04em; }
.leads-flag.warrant { background:#5f1d1d; color:#ffd6d6; }
.leads-flag.caution { background:#735514; color:#fff1c5; }
.leads-flag.protection { background:#173d66; color:#d7ebff; }
.leads-flag.bolo { background:#582f66; color:#f1ddff; }
.leads-flag.clear { background:#dbe7d7; color:#335842; }
.leads-mini-list { margin:0; padding-left:18px; display:grid; gap:7px; color:#445563; }
.leads-table { width:100%; border-collapse:collapse; font-size:13px; }
.leads-table th, .leads-table td { padding:11px 10px; border-bottom:1px solid #dde5ec; text-align:left; vertical-align:top; }
.leads-table th { font-size:11px; text-transform:uppercase; letter-spacing:.05em; color:#5c6f80; }
.leads-card { border:2px solid; border-color:#f4efe6 #8c8378 #8c8378 #f4efe6; background:#ece5da; border-radius:0; padding:14px; }
.leads-card p { color:#485867; line-height:1.5; }
.leads-card small { color:#69808f; }
.leads-alert-card.severity-high { border-left:6px solid #ba4a28; }
.leads-alert-card.severity-medium { border-left:6px solid #bb9136; }
.leads-alert-card.severity-low { border-left:6px solid #3b7393; }
.leads-alert-head { display:flex; justify-content:space-between; gap:12px; align-items:center; margin-bottom:8px; }
.leads-association-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.leads-association-grid article { background:#eee7db; border:2px solid; border-color:#f4efe6 #8c8378 #8c8378 #f4efe6; border-radius:0; padding:14px; }
.leads-association-grid h4 { margin:0 0 10px; color:#1a3347; }
.leads-intel-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin-bottom:14px; }
.leads-intel-stats article { background:#ece5da; border:2px solid; border-color:#f4efe6 #8c8378 #8c8378 #f4efe6; border-radius:0; padding:14px; }
.leads-intel-stats span { display:block; color:#5d7283; font-size:11px; text-transform:uppercase; letter-spacing:.04em; }
.leads-intel-stats strong { display:block; margin-top:6px; font-size:22px; color:#13212f; }
.leads-note-editor { display:grid; gap:10px; }
.leads-loading, .leads-fail, .leads-empty, .leads-empty-copy { color:#4f6373; }
.leads-fail, .leads-loading, .leads-print-preview { padding:24px; }
.leads-loading .os-loading-shell,
.leads-splash-card .os-loading-shell { padding:0; min-height:0; }
.leads-print-preview { min-height:100%; background:linear-gradient(180deg,#cfc7bb 0%,#bbb2a5 100%); }
.leads-print-window .leads-print-preview {
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  padding: 18px;
}
.leads-print-sheet { max-width:960px; margin:0 auto; background:#f5efe4; border:2px solid; border-color:#fffaf2 #8d8476 #8d8476 #fffaf2; box-shadow:0 18px 32px rgba(20,30,45,.18); color:#223041; padding:24px; display:grid; gap:18px; }
.leads-print-window .leads-print-sheet {
  flex: 1 1 auto;
  width: 100%;
  max-width: none;
  min-height: 0;
  margin: 0;
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr);
}
.leads-print-head { display:flex; justify-content:space-between; align-items:flex-start; gap:20px; border-bottom:2px solid #c8bcab; padding-bottom:16px; }
.leads-print-kicker { display:block; font-size:11px; font-weight:800; letter-spacing:.14em; color:#4b6283; margin-bottom:6px; }
.leads-print-head h2 { margin:0; font-size:30px; letter-spacing:.05em; color:#183257; }
.leads-print-head p { margin:6px 0 0; color:#46586b; }
.leads-print-meta { min-width:260px; display:grid; grid-template-columns:repeat(2, minmax(120px, 1fr)); gap:10px; }
.leads-print-meta div, .leads-print-summary-grid div { border:1px solid #d6ccbf; background:#fbf7ef; padding:10px 12px; display:grid; gap:4px; }
.leads-print-meta span, .leads-print-summary-grid span { font-size:10px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; color:#708199; }
.leads-print-meta strong, .leads-print-summary-grid strong { color:#213140; font-size:13px; }
.leads-print-summary { display:grid; gap:10px; }
.leads-print-summary h3 { margin:0; font-size:15px; letter-spacing:.06em; color:#213a5b; text-transform:uppercase; }
.leads-print-summary-grid { display:grid; grid-template-columns:repeat(auto-fit, minmax(180px, 1fr)); gap:10px; }
.leads-print-pages { display:grid; gap:14px; }
.scroll-snap-card {
  height: min(72vh, 720px);
  width: 100%;
  scroll-snap-type: y mandatory;
  overflow: auto;
  border-radius: 10px;
  padding-right: 6px;
}
.scroll-snap-card .slide {
  width: 100%;
  min-height: 100%;
  scroll-snap-align: start;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;
}
.scroll-snap-card .slide p {
  font-size: 1em;
  color: white;
  font-weight: 700;
}
.leads-print-page { border:2px solid; border-color:#fff8ef #998f82 #998f82 #fff8ef; background:#efe7db; }
.leads-print-page-head { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:10px 14px; border-bottom:1px solid #cabdac; background:linear-gradient(180deg,#ece2d4 0%,#dfd3c2 100%); }
.leads-print-page-head span { font-size:10px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; color:#5f748f; }
.leads-print-page-head strong { font-size:15px; letter-spacing:.08em; color:#1d3350; }
.leads-print-page pre { padding:16px; background:#fbf7ef; color:#1c2633; }
html.leads-print-route .scroll-snap-card,
body.leads-print-route .scroll-snap-card,
.leads-print-window .scroll-snap-card {
  height: min(calc(100vh - 320px), 720px);
}
.leads-print-window .scroll-snap-card {
  flex: 1 1 auto;
  min-height: 0;
  height: auto;
  overflow-y: auto;
  overflow-x: hidden;
  overscroll-behavior: contain;
}
html.leads-print-route .scroll-snap-card,
body.leads-print-route .scroll-snap-card {
  height: auto;
  overflow: visible;
  scroll-snap-type: none;
  padding-right: 0;
}
@media print {
  .scroll-snap-card {
    height: auto !important;
    overflow: visible !important;
    scroll-snap-type: none !important;
    padding-right: 0 !important;
  }
  .scroll-snap-card .slide {
    min-height: 0 !important;
  }
}
@media (max-width: 960px) {
  .leads-print-head { grid-template-columns:1fr; display:grid; }
  .leads-print-meta { min-width:0; grid-template-columns:1fr 1fr; }
  .scroll-snap-card,
  html.leads-print-route .scroll-snap-card,
  body.leads-print-route .scroll-snap-card,
  .leads-print-window .scroll-snap-card {
    height: min(calc(100vh - 260px), 640px);
  }
  .leads-print-window .scroll-snap-card {
    height: auto;
  }
}
.leads-empty { border:1px dashed #ced8e1; background:#f8fafc; border-radius:18px; padding:20px; }
.leads-splash { display:grid; place-items:center; height:100%; background:linear-gradient(180deg,#cfc7bb 0%,#bfb7ab 100%); }
.leads-splash-card { min-width:420px; max-width:560px; padding:22px 24px; background:#dfd8cd; border:2px solid; border-color:#f7f3ea #847c70 #847c70 #f7f3ea; box-shadow:inset 1px 1px 0 #fff; text-align:left; }
.leads-splash-card h2 { margin:0 0 8px; font-size:30px; letter-spacing:.08em; color:#183257; }
.leads-splash-card p { margin:0; font-size:16px; color:#2a3340; }
.leads-splash-card small { display:block; margin-top:10px; color:#59606b; text-transform:uppercase; letter-spacing:.08em; }
@media (max-width: 1320px) {
  .leads-shell { grid-template-columns:1fr; }
  .leads-sidebar { flex-direction:row; align-items:flex-start; flex-wrap:wrap; }
  .leads-sidebar-foot { margin-top:0; width:100%; }
  .leads-results-shell, .leads-search-layout, .leads-intel-grid { grid-template-columns:1fr; }
  .leads-summary-grid, .leads-intel-stats, .leads-association-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 820px) {
  .leads-header { flex-direction:column; }
  .leads-search-grid, .leads-summary-grid, .leads-intel-stats, .leads-association-grid { grid-template-columns:1fr; }
}

/* Retro LEADS Refresh */
.leads-window {
  border-radius: 0;
  border: 2px solid #7a746b;
  box-shadow: 0 20px 44px rgba(0,0,0,.34);
  background: #c8c2b7;
}

.leads-window.program-window .app-titlebar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 34px;
  padding-left: 10px;
  background: linear-gradient(180deg, #28569a 0%, #163c73 100%);
  border-bottom: 1px solid #10294d;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.18);
  overflow: hidden;
}

.leads-window .window-title {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 1 1 auto;
  min-width: 0;
  color: #f4f7ff;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .02em;
}

.leads-window .window-title span {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.leads-window .window-title-icon {
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
}

.leads-window .window-controls {
  flex: 0 0 auto;
  gap: 4px;
  padding-right: 8px;
  align-items: center;
}

.leads-window .window-action {
  width: 28px;
  height: 26px;
  min-width: 28px;
  border-radius: 0;
  border: 2px solid;
  border-color: #fbf8f1 #3a3a3a #3a3a3a #fbf8f1;
  background: linear-gradient(180deg, #e5dfd1 0%, #c9c2b4 100%);
  color: #111;
  font-size: 15px;
  font-weight: 700;
  line-height: 1;
  box-shadow: inset 1px 1px 0 rgba(255,255,255,.8);
}

.leads-window .window-action:hover {
  background: linear-gradient(180deg, #efe9dc 0%, #d6cebe 100%);
}

.leads-window .window-action.close-btn {
  background: linear-gradient(180deg, #ddd6c8 0%, #c7bfaf 100%);
}

.leads-window .app-window-body.leads-body {
  display: flex;
  flex-direction: column;
  padding: 0;
  height: calc(100% - var(--window-chrome-height, 72px));
  overflow: hidden;
  background: #c4beb3;
  color: #181715;
}

.leads-shell {
  flex: 1 1 auto;
  width: 100%;
  min-width: 0;
  min-height: 0;
  display: flex;
  flex-direction: column;
  background:
    linear-gradient(180deg, rgba(255,255,255,.24) 0%, rgba(255,255,255,0) 10%),
    linear-gradient(180deg, #c8c2b8 0%, #bdb5aa 100%);
  overflow: hidden;
}

.leads-menubar {
  display: grid;
  grid-template-columns: max-content minmax(0, 1fr);
  align-items: center;
  gap: 16px;
  padding: 7px 16px;
  background: linear-gradient(180deg, #ebe5d9 0%, #d5cdc0 100%);
  border-bottom: 2px solid #8e867b;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9);
}

.leads-menu-buttons {
  display: flex;
  flex-wrap: nowrap;
  min-width: max-content;
  gap: 18px;
}

.leads-menu-buttons button {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
  border: 0;
  padding: 0;
  background: transparent;
  color: #111;
  font-size: 15px;
  line-height: 1;
  font-weight: 400;
  min-height: auto;
  white-space: nowrap;
}

.leads-menu-buttons button:hover,
.leads-menu-buttons button:focus-visible {
  text-decoration: underline;
  outline: none;
  transform: none;
}

.leads-menu-status {
  min-width: 0;
  color: #1d1d1d;
  font-size: 14px;
  text-align: right;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  justify-self: end;
}

.leads-workspace {
  flex: 1 1 auto;
  min-height: 0;
  display: grid;
  grid-template-columns: 286px minmax(0, 1fr) 316px;
  gap: 10px;
  padding: 10px;
  overflow: hidden;
}

.leads-sidebar,
.leads-main,
.leads-recent-rail {
  min-height: 0;
}

.leads-sidebar {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 10px;
  background: linear-gradient(180deg, #ddd6c9 0%, #cac3b7 100%);
  border: 2px solid;
  border-color: #f8f5ef #8f887c #8f887c #f8f5ef;
  box-shadow: inset 1px 1px 0 rgba(255,255,255,.92);
  overflow: auto;
}

.leads-brand-panel {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  padding: 12px 12px 11px;
  background: linear-gradient(180deg, #4f6d9e 0%, #2d4f87 100%);
  border: 2px solid;
  border-color: #eef4ff #11284d #11284d #eef4ff;
  color: #f4f8ff;
  box-shadow: inset 1px 1px 0 rgba(255,255,255,.18);
}

.leads-brand-mark {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.18);
}

.leads-brand-icon {
  width: 26px;
  height: 26px;
}

.leads-brand-copy strong {
  display: block;
  font-size: 15px;
  line-height: 1.1;
}

.leads-brand-copy span {
  display: block;
  margin-top: 4px;
  font-size: 12px;
  color: #dbe8fb;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.leads-nav {
  display: grid;
  gap: 6px;
  padding: 2px 0 0;
}

.leads-nav button {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  border: 1px solid transparent;
  border-radius: 0;
  background: transparent;
  padding: 10px 12px;
  color: #151515;
  text-align: left;
  font-size: 14px;
  font-weight: 500;
  box-shadow: none;
}

.leads-nav button.active {
  border: 2px solid;
  border-color: #edf3ff #13284b #13284b #edf3ff;
  background: linear-gradient(180deg, #5472a5 0%, #34598e 100%);
  color: #f5f8ff;
  box-shadow: inset 1px 1px 0 rgba(255,255,255,.18);
}

.leads-nav button:not(.active):hover,
.leads-nav button:not(.active):focus-visible {
  background: rgba(59,88,129,.08);
  outline: none;
  transform: none;
}

.leads-nav-icon {
  width: 22px;
  height: 22px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(30,45,71,.25);
  background: linear-gradient(180deg, #f3efe7 0%, #d1c9bc 100%);
  color: #243851;
  font-size: 11px;
  font-weight: 800;
  box-shadow: inset 1px 1px 0 rgba(255,255,255,.75);
}

.leads-nav-icon .or-icon {
  width: 15px !important;
  height: 15px !important;
}

.leads-nav button.active .leads-nav-icon {
  border-color: rgba(255,255,255,.24);
  background: rgba(255,255,255,.12);
  color: #fff;
  box-shadow: inset 1px 1px 0 rgba(255,255,255,.14);
}

.leads-admin-panel {
  margin-top: 4px;
  padding: 0;
  border: 2px solid;
  border-color: #f6f1e8 #8e867a #8e867a #f6f1e8;
  background: #ddd6ca;
  box-shadow: inset 1px 1px 0 rgba(255,255,255,.9);
}

.leads-panel-caption {
  padding: 8px 12px;
  background: linear-gradient(180deg, #4d6e9d 0%, #355688 100%);
  color: #eef5ff;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
  border-bottom: 1px solid #203d66;
}

.leads-admin-panel select {
  width: calc(100% - 16px);
  margin: 10px 8px 8px;
  border: 2px solid;
  border-color: #8d8679 #f6f1e8 #f6f1e8 #8d8679;
  background: #f1ece3;
  color: #171717;
  padding: 8px 10px;
  border-radius: 0;
  box-shadow: inset 1px 1px 0 rgba(255,255,255,.7);
}

.leads-sidebar-status {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  margin-top: auto;
  padding: 12px;
  background: linear-gradient(180deg, #e7e0d3 0%, #d4ccbf 100%);
  border: 2px solid;
  border-color: #f8f4ec #8f887c #8f887c #f8f4ec;
  box-shadow: inset 1px 1px 0 rgba(255,255,255,.92);
}

.leads-sidebar-status-icon {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  background: rgba(255,255,255,.35);
  border: 1px solid rgba(57,70,90,.16);
}

.leads-sidebar-status-mark {
  width: 20px;
  height: 20px;
}

.leads-sidebar-status strong,
.leads-sidebar-status span {
  display: block;
}

.leads-sidebar-status strong {
  font-size: 13px;
  color: #1b1b1b;
}

.leads-sidebar-status span {
  margin-top: 3px;
  font-size: 12px;
  color: #2e3742;
}

.leads-main {
  min-width: 0;
  min-height: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
  overflow: hidden;
}

.leads-message {
  margin: 0;
  border-radius: 0;
  border: 2px solid;
  border-color: #fff7d4 #c1b26a #c1b26a #fff7d4;
  background: #f5e7a7;
  color: #564102;
  padding: 10px 12px;
  font-size: 13px;
  box-shadow: inset 1px 1px 0 rgba(255,255,255,.72);
}

.leads-message.error {
  border-color: #ffe1dd #a9685f #a9685f #ffe1dd;
  background: #e9b4a7;
  color: #532018;
}

.leads-message.success {
  border-color: #edf9df #6f9465 #6f9465 #edf9df;
  background: #b8d2a5;
  color: #1d3a16;
}

.leads-terminal-panel {
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr);
  min-height: 0;
  background: linear-gradient(180deg, #dfd8cd 0%, #d4cdbf 100%);
  border: 2px solid;
  border-color: #fbf7f0 #8a8277 #8a8277 #fbf7f0;
  box-shadow: inset 1px 1px 0 rgba(255,255,255,.95);
  overflow: hidden;
}

.leads-terminal-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  padding: 18px 18px 14px;
  border-bottom: 1px solid #aca392;
}

.leads-terminal-head h2 {
  margin: 0;
  color: #151515;
  font-size: 23px;
  line-height: 1.1;
  letter-spacing: .02em;
  text-transform: uppercase;
}

.leads-terminal-head p {
  margin: 5px 0 0;
  color: #3a3a38;
  font-size: 16px;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.leads-terminal-clock {
  padding-top: 2px;
  color: #1d1d1d;
  font-size: 15px;
  font-weight: 500;
  white-space: nowrap;
}

.leads-run-strip {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
  padding: 10px 18px;
  border-top: 1px solid rgba(255,255,255,.55);
  border-bottom: 1px solid #a69d8d;
  background: linear-gradient(180deg, #dfd7ca 0%, #cfc6b7 100%);
  font-size: 14px;
  color: #222;
  text-transform: uppercase;
}

.leads-terminal-body {
  min-height: 0;
  display: grid;
  gap: 14px;
  padding: 16px 18px 18px;
  align-content: start;
  overflow: auto;
}

.leads-terminal-section {
  border-top: 1px solid rgba(255,255,255,.75);
  border-bottom: 1px solid #aaa08f;
  padding: 12px 0 14px;
}

.leads-section-title {
  margin: 0 0 10px;
  color: #1c1c1c;
  font-size: 18px;
  font-weight: 500;
}

.leads-query-tabs {
  display: grid;
  gap: 8px;
}

.leads-query-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 10px;
}

.leads-query-row-secondary {
  padding-top: 2px;
}

.leads-query-tab {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 7px 14px;
  border: 1px solid #aea58f;
  background: linear-gradient(180deg, #ede6d7 0%, #ded5c7 100%);
  color: #181818;
  border-radius: 0;
  box-shadow: inset 1px 1px 0 rgba(255,255,255,.82);
  font-size: 14px;
  font-weight: 400;
}

.leads-query-tab:hover,
.leads-query-tab:focus-visible {
  transform: none;
  outline: none;
  background: linear-gradient(180deg, #f2ebdd 0%, #e3dacc 100%);
}

.leads-query-tab.active {
  border-color: #8a7f68;
  background: linear-gradient(180deg, #e3dbcc 0%, #d5cab9 100%);
}

.leads-query-dot {
  width: 16px;
  height: 16px;
  border-radius: 999px;
  border: 2px solid #6b665b;
  background: #eae3d7;
  box-shadow: inset 1px 1px 0 rgba(255,255,255,.82);
}

.leads-query-tab.active .leads-query-dot {
  background:
    radial-gradient(circle at center, #3b5b8e 0 4px, transparent 4px),
    #ece4d7;
}

.leads-terminal-section-qvehper {
  gap: 10px;
}

.leads-qvehper-shell {
  display: grid;
  gap: 10px;
}

.leads-qvehper-routing {
  display: grid;
  grid-template-columns: minmax(220px, 320px) minmax(0, 1fr);
  gap: 10px;
}

.leads-qvehper-routing-field,
.leads-qvehper-field {
  display: grid;
  gap: 4px;
}

.leads-qvehper-routing-field span,
.leads-qvehper-field span {
  color: #232322;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .03em;
  text-transform: uppercase;
}

.leads-qvehper-group {
  border: 1px solid #bbb3a7;
  background: linear-gradient(180deg, #ebe7dd 0%, #e1dbcf 100%);
  box-shadow: inset 1px 1px 0 rgba(255,255,255,.94);
}

.leads-qvehper-group-title {
  padding: 4px 8px;
  border-bottom: 1px solid #c7bfb2;
  background: #e2ddd2;
  color: #171717;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.leads-qvehper-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px 10px;
  padding: 8px;
}

.leads-qvehper-field-span-2 {
  grid-column: span 2;
}

.leads-qvehper-field-span-4 {
  grid-column: 1 / -1;
}

.leads-qvehper-field input,
.leads-qvehper-static-value {
  width: 100%;
  min-height: 28px;
  border: 1px solid;
  border-color: #8f887c #faf7ef #faf7ef #8f887c;
  background: #f7f4ed;
  color: #171717;
  border-radius: 0;
  padding: 4px 8px;
  box-shadow: inset 1px 1px 0 rgba(255,255,255,.78);
  font-size: 13px;
}

.leads-qvehper-field input[readonly] {
  background: #efebe2;
  color: #3f3e39;
}

.leads-qvehper-static-value {
  display: flex;
  align-items: center;
  background: #ece7de;
}

.leads-qvehper-static-select {
  position: relative;
  padding-right: 26px;
}

.leads-qvehper-static-select::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 9px;
  width: 0;
  height: 0;
  margin-top: -2px;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 6px solid #333;
}

.leads-qvehper-field-dob .leads-inline-fields {
  display: grid;
  grid-template-columns: 56px 56px minmax(88px, 1fr);
  gap: 6px;
}

.leads-field-grid,
.leads-filter-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px 16px;
}

.leads-field-grid-person {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.leads-form-row {
  display: grid;
  gap: 6px;
}

.leads-form-row-span {
  grid-column: 1 / -1;
}

.leads-form-row span {
  color: #2c2c2b;
  font-size: 13px;
}

.leads-form-row input,
.leads-form-row select,
.leads-toolbar input,
.leads-toolbar select {
  width: 100%;
  min-height: 36px;
  border: 2px solid;
  border-color: #8d8578 #f7f2e8 #f7f2e8 #8d8578;
  background: #f1ede5;
  color: #171717;
  border-radius: 0;
  padding: 7px 10px;
  box-shadow: inset 1px 1px 0 rgba(255,255,255,.72);
  font-size: 14px;
}

.leads-form-row input[readonly] {
  background: #e8e1d5;
  color: #3f3e39;
}

.leads-form-row-dob .leads-inline-fields {
  display: grid;
  grid-template-columns: 92px 92px minmax(120px, 1fr);
  gap: 8px;
}

.leads-form-row-note {
  align-content: end;
}

.leads-inline-status {
  min-height: 36px;
  display: flex;
  align-items: center;
  padding: 7px 10px;
  border: 2px solid;
  border-color: #8d8578 #f7f2e8 #f7f2e8 #8d8578;
  background: #ece5d8;
  color: #2e415f;
  font-size: 13px;
  font-weight: 700;
  box-shadow: inset 1px 1px 0 rgba(255,255,255,.72);
}

.leads-terminal-actions,
.leads-record-actions,
.leads-toolbar,
.leads-status-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.leads-terminal-actions button,
.leads-record-actions button,
.leads-toolbar button,
.leads-status-actions button,
.leads-logoff-btn,
.leads-recent-rail button,
.leads-result-row,
.leads-tab-strip button {
  border-radius: 0;
}

.leads-terminal-actions button,
.leads-record-actions button,
.leads-toolbar button,
.leads-status-actions button,
.leads-logoff-btn {
  min-height: 38px;
  border: 2px solid;
  border-color: #f8f4ec #4c4c48 #4c4c48 #f8f4ec;
  background: linear-gradient(180deg, #e4ddcf 0%, #cfc6b8 100%);
  color: #151515;
  padding: 0 16px;
  font-size: 14px;
  font-weight: 500;
  box-shadow: inset 1px 1px 0 rgba(255,255,255,.82);
}

.leads-terminal-actions button.primary,
.leads-record-actions button.primary,
.leads-status-actions .danger {
  color: #f6f7f4;
}

.leads-terminal-actions button.primary,
.leads-record-actions button.primary {
  border-color: #edf6e7 #18422d #18422d #edf6e7;
  background: linear-gradient(180deg, #557f63 0%, #31543f 100%);
}

.leads-status-actions .danger,
.leads-logoff-btn {
  border-color: #fff0c9 #8d6a1d #8d6a1d #fff0c9;
  background: linear-gradient(180deg, #d9b565 0%, #c89d3a 100%);
  color: #1f1710;
}

.leads-terminal-actions button:hover,
.leads-record-actions button:hover,
.leads-toolbar button:hover,
.leads-status-actions button:hover,
.leads-logoff-btn:hover,
.leads-query-tab:hover,
.leads-result-row:hover,
.leads-tab-strip button:hover,
.leads-nav button:hover,
.leads-recent-rail button:hover {
  transform: none;
}

.leads-audit-strip {
  padding-top: 2px;
  color: #333;
  font-size: 14px;
}

.leads-results-layout {
  display: grid;
  grid-template-columns: 320px minmax(0, 1fr);
  gap: 14px;
  min-height: 0;
}

.leads-results-layout.queue-hidden {
  grid-template-columns: minmax(0, 1fr);
}

.leads-result-list,
.leads-result-main {
  min-height: 0;
  background: linear-gradient(180deg, #e4ddd0 0%, #d6cebf 100%);
  border: 2px solid;
  border-color: #f9f5ed #8e8679 #8e8679 #f9f5ed;
  box-shadow: inset 1px 1px 0 rgba(255,255,255,.92);
  padding: 12px;
}

.leads-result-list {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
}

.leads-result-main {
  display: flex;
  flex-direction: column;
}

.leads-result-stack,
.leads-rail-list {
  min-height: 0;
  overflow: auto;
  display: grid;
  gap: 10px;
}

.leads-result-row {
  display: grid;
  gap: 5px;
  text-align: left;
  padding: 11px 12px;
  border: 2px solid;
  border-color: #f7f3eb #8c8377 #8c8377 #f7f3eb;
  background: linear-gradient(180deg, #f0eadf 0%, #ddd5c8 100%);
  color: #161616;
  box-shadow: inset 1px 1px 0 rgba(255,255,255,.86);
}

.leads-result-row strong,
.leads-rail-card-body strong {
  font-size: 15px;
}

.leads-result-row span,
.leads-rail-card-body span,
.leads-rail-card-body small {
  color: #454842;
}

.leads-result-row.active {
  border-color: #eef4ff #17325a #17325a #eef4ff;
  background: linear-gradient(180deg, #6b86b2 0%, #45628f 100%);
  color: #f6f9ff;
}

.leads-result-row.active span {
  color: #dde9fd;
}

.leads-results-shell.queue-hidden {
  grid-template-columns: minmax(0, 1fr) 280px;
}

.leads-record-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 14px;
}

.leads-record-header h3 {
  margin: 0;
  color: #171717;
  font-size: 24px;
}

.leads-record-header p {
  margin: 4px 0 0;
  color: #4b4a45;
  font-size: 14px;
}

.leads-summary-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin: 6px 0 8px;
}

.leads-summary-card {
  padding: 4px 10px 5px;
  min-height: 48px;
  background: linear-gradient(180deg, #f0e8dc 0%, #e1d7c8 100%);
  border: 2px solid;
  border-color: #f9f5ed #8d8478 #8d8478 #f9f5ed;
  box-shadow: inset 1px 1px 0 rgba(255,255,255,.82);
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.leads-summary-card span {
  display: block;
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: #536178;
  line-height: 1.1;
}

.leads-summary-card strong {
  display: block;
  margin-top: 2px;
  color: #191919;
  font-size: 14px;
  line-height: 1.15;
}

.leads-tab-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 8px;
}

.leads-tab-strip button {
  min-height: 34px;
  padding: 0 12px;
  border: 2px solid;
  border-color: #f7f3eb #8a8276 #8a8276 #f7f3eb;
  background: linear-gradient(180deg, #efe7da 0%, #d8cfbf 100%);
  color: #173253;
  font-size: 13px;
  font-weight: 700;
  box-shadow: inset 1px 1px 0 rgba(255,255,255,.82);
}

.leads-tab-strip button.active {
  border-color: #eef4ff #17325a #17325a #eef4ff;
  background: linear-gradient(180deg, #6c87b2 0%, #46628f 100%);
  color: #f6f9ff;
}

.leads-tab-body {
  flex: 1 1 auto;
  min-height: 260px;
  overflow: auto;
  background: linear-gradient(180deg, #243750 0%, #16263d 100%);
  border: 2px solid;
  border-color: #7f776d #efe9dc #efe9dc #7f776d;
  padding: 14px;
}

.leads-tab-body pre {
  margin: 0;
  color: #f2f6fe;
  white-space: pre-wrap;
  font-size: 13px;
  line-height: 1.45;
  font-family: "Consolas","Courier New",monospace;
}

.leads-flag-row {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 4px;
}

.leads-flag {
  border-radius: 999px;
  padding: 4px 9px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.leads-flag.warrant { background: #5f1d1d; color: #ffd6d6; }
.leads-flag.caution { background: #735514; color: #fff1c5; }
.leads-flag.protection { background: #173d66; color: #d7ebff; }
.leads-flag.bolo { background: #582f66; color: #f1ddff; }
.leads-flag.clear { background: #dbe7d7; color: #335842; }

.leads-recent-rail {
  min-height: 0;
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr) auto;
  gap: 8px;
  padding: 10px;
  background: linear-gradient(180deg, #ddd6c9 0%, #cbc4b8 100%);
  border: 2px solid;
  border-color: #f8f5ef #8f887c #8f887c #f8f5ef;
  box-shadow: inset 1px 1px 0 rgba(255,255,255,.92);
  overflow: hidden;
}

.leads-rail-title {
  padding: 10px 12px;
  background: linear-gradient(180deg, #4e6e9e 0%, #355688 100%);
  border: 2px solid;
  border-color: #eef4ff #13284b #13284b #eef4ff;
  color: #eef5ff;
  font-size: 14px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .05em;
  box-shadow: inset 1px 1px 0 rgba(255,255,255,.18);
}

.leads-rail-subtitle {
  padding: 0 4px 6px;
  color: #252525;
  font-size: 14px;
}

.leads-rail-card {
  display: grid;
  gap: 8px;
  text-align: left;
  padding: 10px 11px;
  border: 1px solid #aca392;
  background: linear-gradient(180deg, #eee8dc 0%, #ddd4c6 100%);
  box-shadow: inset 1px 1px 0 rgba(255,255,255,.82);
}

.leads-rail-card-head {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: flex-start;
}

.leads-rail-card-head span {
  color: #52591b;
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
}

.leads-rail-card-head strong {
  color: #212121;
  font-size: 13px;
  white-space: nowrap;
}

.leads-rail-card-body {
  display: grid;
  gap: 4px;
}

.leads-rail-card-body small {
  font-size: 12px;
}

.leads-rail-empty {
  padding: 16px 12px;
  border: 1px dashed #a8a092;
  background: rgba(255,255,255,.22);
  color: #4a4a45;
  text-align: center;
  font-size: 13px;
}

.leads-logoff-btn {
  justify-self: end;
  min-width: 110px;
}

.leads-statusbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  padding: 9px 12px;
  border-top: 2px solid #8f887c;
  background: linear-gradient(180deg, #eae4d8 0%, #d4ccbf 100%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9);
}

.leads-status-left {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  font-size: 14px;
  color: #191919;
}

.leads-status-dot {
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: radial-gradient(circle at center, #fff1b8 0 2px, #f0c357 2px, #ce9830 100%);
  box-shadow: 0 0 0 1px rgba(120,90,28,.4);
}

.leads-terminal-table-wrap {
  min-height: 0;
  overflow: auto;
}

.leads-table {
  width: 100%;
  border-collapse: collapse;
  background: #ebe3d6;
  border: 1px solid #a49a89;
}

.leads-table th,
.leads-table td {
  padding: 9px 10px;
  border-bottom: 1px solid #c6bbac;
  text-align: left;
  vertical-align: top;
  color: #181818;
}

.leads-table th {
  background: #ddd4c6;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: #44515f;
}

.leads-empty {
  border: 1px dashed #b9ae9e;
  background: rgba(255,255,255,.22);
  padding: 18px;
  color: #4d4d48;
  text-align: center;
}

.leads-manual-window {
  background: #cfc7bb;
}

.leads-manual-window .app-window-body.leads-manual-body {
  padding: 0;
  height: calc(100% - var(--window-chrome-height, 72px));
  overflow: auto;
  background: #c7c0b5;
  color: #191917;
}

.leads-manual-shell {
  min-height: 100%;
  display: grid;
  grid-template-columns: 260px minmax(0, 1fr);
  background:
    radial-gradient(circle at top right, rgba(255,255,255,.24), transparent 28%),
    linear-gradient(180deg, #cec5b8 0%, #c8c0b4 48%, #c5beb2 100%);
}

.leads-manual-sidebar {
  min-width: 0;
  padding: 18px 14px;
  display: grid;
  align-content: start;
  gap: 14px;
  background: linear-gradient(180deg, #284f86 0%, #183865 56%, #132a4c 100%);
  color: #eef5ff;
  border-right: 2px solid #857e72;
  box-shadow: inset -1px 0 0 rgba(255,255,255,.3);
  position: sticky;
  top: 0;
  align-self: start;
}

.leads-manual-sidebar-top {
  display: flex;
  align-items: center;
  gap: 12px;
}

.leads-manual-sidebar-icon {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(255,255,255,.36);
  background: rgba(255,255,255,.1);
  box-shadow: inset 1px 1px 0 rgba(255,255,255,.22);
}

.leads-manual-sidebar-mark {
  width: 24px;
  height: 24px;
}

.leads-manual-sidebar strong {
  display: block;
  font-size: 20px;
  letter-spacing: .04em;
}

.leads-manual-sidebar span {
  display: block;
  margin-top: 4px;
  color: #d7e4f5;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.leads-manual-sidebar-copy {
  margin: 0;
  color: #f1f7ff;
  line-height: 1.55;
  font-size: 13px;
}

.leads-manual-nav {
  display: grid;
  gap: 8px;
}

.leads-manual-nav button,
.leads-manual-hero-actions button {
  border: 2px solid;
  border-color: #f3f0e8 #14253a #14253a #f3f0e8;
  border-radius: 0;
  background: #d8d2c7;
  color: #14253a;
  box-shadow: inset 1px 1px 0 rgba(255,255,255,.82);
  font: inherit;
  font-weight: 700;
  cursor: pointer;
}

.leads-manual-nav button {
  padding: 10px 12px;
  text-align: left;
}

.leads-manual-nav button:hover,
.leads-manual-hero-actions button:hover {
  background: #ebe5da;
}

.leads-manual-sidebar-card {
  margin-top: 4px;
  padding: 12px;
  border: 1px solid rgba(255,255,255,.3);
  background: rgba(255,255,255,.12);
  box-shadow: inset 1px 1px 0 rgba(255,255,255,.18);
}

.leads-manual-sidebar-card span {
  margin: 0 0 6px;
  color: #f6fbff;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.leads-manual-sidebar-card small {
  display: block;
  color: #e0ebf8;
  line-height: 1.55;
}

.leads-manual-main {
  min-width: 0;
  padding: 20px;
  display: grid;
  align-content: start;
  gap: 18px;
}

.leads-manual-hero,
.leads-manual-section {
  background: #e3dcd0;
  border: 2px solid;
  border-color: #f6f1e8 #8a8278 #8a8278 #f6f1e8;
  box-shadow: inset 1px 1px 0 #fff;
}

.leads-manual-hero {
  padding: 20px;
  display: grid;
  gap: 16px;
}

.leads-manual-kicker {
  display: inline-block;
  margin-bottom: 8px;
  color: #294c7c;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.leads-manual-hero h2 {
  margin: 0;
  font-size: 34px;
  letter-spacing: .02em;
  color: #161615;
}

.leads-manual-hero p,
.leads-manual-section p {
  margin: 0;
  color: #2a2a27;
  line-height: 1.7;
}

.leads-manual-hero-meta {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.leads-manual-hero-meta div,
.leads-manual-demo-grid article {
  padding: 12px 14px;
  background: rgba(255,255,255,.36);
  border: 1px solid #b8ae9e;
  box-shadow: inset 1px 1px 0 rgba(255,255,255,.78);
}

.leads-manual-hero-meta span,
.leads-manual-demo-grid span {
  display: block;
  color: #5a6472;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.leads-manual-hero-meta strong,
.leads-manual-demo-grid strong {
  display: block;
  margin-top: 6px;
  color: #141413;
  font-size: 18px;
}

.leads-manual-hero-meta small {
  display: block;
  margin-top: 6px;
  color: #4f555d;
  line-height: 1.5;
}

.leads-manual-hero-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.leads-manual-hero-actions button {
  padding: 10px 14px;
  min-height: 38px;
}

.leads-manual-section {
  padding: 18px;
  display: grid;
  gap: 14px;
}

.leads-manual-section-head h3 {
  margin: 0;
  color: #151514;
  font-size: 24px;
}

.leads-manual-section-body {
  display: grid;
  gap: 14px;
}

.leads-manual-subhead {
  margin: 2px 0 0;
  color: #18293d;
  font-size: 17px;
}

.leads-manual-callout,
.leads-manual-example {
  padding: 14px 16px;
  border: 1px solid #b8ab96;
  background: #f0ebdf;
  box-shadow: inset 1px 1px 0 rgba(255,255,255,.76);
}

.leads-manual-callout strong,
.leads-manual-example strong {
  color: #18293d;
}

.leads-manual-example {
  display: grid;
  gap: 10px;
}

.leads-manual-example pre {
  margin: 0;
  padding: 12px;
  overflow: auto;
  border: 1px solid #bcb2a5;
  background: #f7f4ed;
  color: #171717;
  font-family: "Courier New", monospace;
  font-size: 13px;
  line-height: 1.55;
}

.leads-manual-list {
  margin: 0;
  padding-left: 20px;
  display: grid;
  gap: 8px;
  color: #242421;
  line-height: 1.65;
}

.leads-manual-list-ordered {
  padding-left: 24px;
}

.leads-manual-table-wrap {
  overflow-x: auto;
  border: 1px solid #b9ae9f;
  background: #f5f1e8;
}

.leads-manual-table {
  width: 100%;
  border-collapse: collapse;
  min-width: 760px;
}

.leads-manual-table th,
.leads-manual-table td {
  padding: 10px 12px;
  border: 1px solid #c9c0b3;
  vertical-align: top;
  text-align: left;
  color: #161615;
  line-height: 1.55;
}

.leads-manual-table th {
  background: #e3ddd1;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.leads-manual-table td code,
.leads-manual-section code,
.leads-manual-demo-grid code {
  padding: 1px 4px;
  background: rgba(41,76,124,.1);
  border: 1px solid rgba(41,76,124,.16);
  color: #183153;
  font-family: "Courier New", monospace;
  font-size: .95em;
}

.leads-manual-demo-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.leads-manual-demo-grid p {
  margin-top: 8px;
}

.leads-window .app-window-body.leads-body button,
.leads-manual-window .app-window-body.leads-manual-body button {
  border: none !important;
  outline: 1px dotted rgb(37, 37, 37) !important;
  outline-offset: -4px !important;
  background: hsl(0deg 0% 75%) !important;
  box-shadow:
    inset -1px -1px #292929,
    inset 1px 1px #fff,
    inset -2px -2px rgb(158, 158, 158),
    inset 2px 2px #ffffff !important;
  font-size: 14px !important;
  text-transform: uppercase !important;
  letter-spacing: 2px !important;
  padding: 5px 30px !important;
  color: #171717 !important;
}

.leads-window .app-window-body.leads-body button:active,
.leads-manual-window .app-window-body.leads-manual-body button:active,
.leads-window .app-window-body.leads-body button.active,
.leads-manual-window .app-window-body.leads-manual-body button.active {
  box-shadow:
    inset -1px -1px #fff,
    inset 1px 1px #292929,
    inset -2px -2px #ffffff,
    inset 2px 2px rgb(158, 158, 158) !important;
}

@media (max-width: 1440px) {
  .leads-workspace {
    grid-template-columns: 250px minmax(0, 1fr) 280px;
  }

  .leads-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 1180px) {
  .leads-workspace {
    grid-template-columns: 1fr;
  }

  .leads-manual-shell {
    grid-template-columns: 1fr;
  }

  .leads-manual-sidebar {
    position: static;
    border-right: none;
    border-bottom: 2px solid #857e72;
  }

  .leads-manual-hero-meta,
  .leads-manual-demo-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .leads-sidebar,
  .leads-recent-rail {
    order: 0;
  }

  .leads-main {
    order: 1;
  }

  .leads-results-layout {
    grid-template-columns: 1fr;
  }

  .leads-qvehper-routing,
  .leads-qvehper-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .leads-qvehper-field-span-2,
  .leads-qvehper-field-span-4 {
    grid-column: auto;
  }
}

@media (max-width: 900px) {
  .leads-menubar {
    grid-template-columns: 1fr;
    align-items: flex-start;
  }

  .leads-manual-main {
    padding: 16px;
  }

  .leads-manual-hero h2 {
    font-size: 28px;
  }

  .leads-manual-hero-meta,
  .leads-manual-demo-grid {
    grid-template-columns: 1fr;
  }

  .leads-manual-hero-actions {
    flex-direction: column;
  }

  .leads-menu-buttons {
    flex-wrap: wrap;
    min-width: 0;
  }

  .leads-statusbar,
  .leads-terminal-head {
    flex-direction: column;
    align-items: flex-start;
  }

  .leads-menu-status {
    text-align: left;
    justify-self: start;
  }

  .leads-field-grid,
  .leads-filter-grid,
  .leads-summary-grid {
    grid-template-columns: 1fr;
  }

  .leads-qvehper-routing,
  .leads-qvehper-grid,
  .leads-qvehper-field-dob .leads-inline-fields {
    grid-template-columns: 1fr;
  }

  .leads-form-row-dob .leads-inline-fields {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}


.search-wrap { position: relative; min-width: 0; }
.search-box {
  width: 280px;
  height: 30px;
  background: rgba(255,255,255,.16);
  color: #fff;
  border: 1px solid rgba(255,255,255,.1);
  padding: 0 10px;
  box-sizing: border-box;
}

.search-results {
  position: absolute;
  left: 0;
  bottom: 42px;
  width: max(320px, var(--search-width, 280px));
  max-height: 320px;
  overflow: auto;
  background: rgba(22,22,22,.95);
  border: 1px solid rgba(255,255,255,.2);
  z-index: 200;
}

.search-item {
  width: 100%;
  text-align: left;
  border: none;
  background: transparent;
  color: #fff;
  padding: 8px;
  cursor: pointer;
  display: grid;
  grid-template-columns: 22px 1fr;
  gap: 8px;
  align-items: center;
}

.search-item strong {
  display: block;
  font-size: 13px;
  font-weight: 600;
}

.search-item small {
  display: block;
  opacity: 0.75;
  font-size: 11px;
}

.search-item-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.search-item:hover { background: rgba(255,255,255,.12); }

.search-empty {
  padding: 10px;
  color: rgba(255,255,255,.75);
  font-size: 12px;
}

.search-modal {
  position: absolute;
  left: 50%;
  bottom: 96px;
  transform: translateX(-50%);
  width: min(920px, 86vw);
  max-height: min(560px, 72vh);
  z-index: 240;
}

.search-modal-shell {
  display: flex;
  flex-direction: column;
  min-height: 100%;
}

.search-modal-head {
  padding: 22px 28px 14px;
}

.search-modal-entry {
  display: grid;
  grid-template-columns: 26px 1fr;
  align-items: center;
  gap: 12px;
  padding: 0 16px;
  min-height: 52px;
}

.search-modal-entry-icon {
  font-size: 22px;
  text-align: center;
}

.search-modal-input {
  width: 100%;
  border: none;
  background: transparent;
  font: inherit;
  outline: none;
}

.search-modal-tabs {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 18px;
}

.search-modal-tabs button {
  border: none;
  background: transparent;
  padding: 0 4px 10px;
  font: inherit;
  cursor: default;
}

.search-modal-tabs button.active {
  font-weight: 600;
}

.search-modal-body {
  padding: 0 28px 28px;
  overflow: auto;
}

.search-modal-section + .search-modal-section,
.search-modal-columns {
  margin-top: 26px;
}

.search-modal-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 14px;
}

.search-modal-section-head h3,
.search-modal-list-group h4 {
  margin: 0;
  font-size: 16px;
}

.search-modal-section-head span {
  font-size: 13px;
  opacity: .75;
}

.search-modal-top-apps {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
}

.search-top-app,
.search-modal-link {
  border: none;
  background: transparent;
  cursor: pointer;
  font: inherit;
}

.search-top-app {
  min-height: 124px;
  padding: 18px 16px;
  text-align: left;
}

.search-top-app-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  margin-bottom: 18px;
}

.search-top-app span:last-child {
  display: block;
}

.search-modal-columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 44px;
}

.search-modal-list {
  display: grid;
  gap: 8px;
  margin-top: 12px;
}

.search-modal-link {
  display: grid;
  grid-template-columns: 28px 1fr;
  align-items: center;
  gap: 12px;
  min-height: 42px;
  text-align: left;
  padding: 0 4px;
}

.search-modal-results-list {
  display: grid;
  gap: 10px;
}

.search-modal-result {
  border-radius: 14px;
}

@media (max-width: 980px) {
  .search-modal-top-apps {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .search-modal-columns {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}

.modal-overlay {
  position: fixed;
  inset: 0;
  background: rgba(10, 22, 37, 0.6);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1000;
}

.modal-window {
  width: min(760px, 92vw);
  border: 1px solid #7f9db9;
  background: #f8fbff;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.35);
}

.persona-confirm-modal {
  width: min(460px, 90vw);
  border-color: #6f8fb3;
  background: linear-gradient(180deg, #f7fbff 0%, #eef4fb 100%);
}

.persona-confirm-content {
  display: grid;
  grid-template-columns: 64px 1fr;
  gap: 16px;
  padding: 22px 24px 16px;
  color: #17314b;
}

.persona-confirm-icon {
  width: 64px;
  height: 64px;
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 34px;
  font-weight: 300;
  color: #fff;
  background: linear-gradient(180deg, #3794ff 0%, #1168d6 100%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.35), 0 12px 24px rgba(17,104,214,.22);
}

.persona-confirm-copy h3 {
  margin: 0 0 8px;
  font-size: 24px;
  font-weight: 400;
  color: #14314d;
}

.persona-confirm-copy p {
  margin: 0 0 8px;
  line-height: 1.5;
  color: #3a5169;
}

.persona-confirm-actions {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  padding: 0 24px 22px;
}

.persona-builder-modal-window {
  width: min(1120px, 94vw);
  height: min(88vh, 920px);
  display: flex;
  flex-direction: column;
  border-color: #5d7ea6;
  background: linear-gradient(180deg, #f5f9ff 0%, #e8f0fb 100%);
  box-shadow: 0 24px 64px rgba(0, 0, 0, 0.42);
}

.persona-builder-modal-titlebar {
  background: linear-gradient(180deg, #0f62c9 0%, #0b4f9f 100%);
}

.persona-builder-modal-content {
  flex: 1;
  overflow: auto;
  padding: 18px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.72), rgba(231,240,251,.94)),
    linear-gradient(135deg, #d8e8ff 0%, #f4f8ff 42%, #d6e4f7 100%);
}

.persona-builder-modal-content .civ11-wrap {
  min-height: 100%;
  border-radius: 0;
  padding: 24px;
  border: 1px solid rgba(96, 124, 162, 0.34);
  background:
    linear-gradient(180deg, rgba(255,255,255,.94), rgba(245,249,255,.98)),
    linear-gradient(135deg, #eef5ff 0%, #e1ecff 100%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.75);
}

.persona-builder-modal-content .civ11-header h2 {
  font-size: 30px;
  font-weight: 400;
}

.persona-builder-modal-content .civ11-card {
  border-radius: 0;
  border: 1px solid rgba(112, 138, 173, 0.24);
  background: rgba(255,255,255,.8);
  box-shadow: none;
}

.desktop-shortcut-modal-window {
  width: min(760px, 92vw);
}

.modal-titlebar {
  height: 34px;
  background: linear-gradient(#0f4f91, #0c3f78);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 10px;
  font-size: 13px;
  font-weight: 600;
}

.desktop-shortcut-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 10px;
}

.desktop-shortcut-option {
  display: grid;
  grid-template-columns: auto 28px 1fr;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border: 1px solid #c7d4e3;
  border-radius: 10px;
  background: linear-gradient(180deg, #ffffff 0%, #eef4fb 100%);
  cursor: pointer;
}

.desktop-shortcut-option input {
  margin: 0;
}

.desktop-shortcut-option-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.desktop-shortcut-option-label {
  font-weight: 600;
  color: #22364a;
}

.desktop-shortcut-actions {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  margin-top: 12px;
}

.modal-close {
  border: 1px solid rgba(255,255,255,0.45);
  background: transparent;
  color: #fff;
  width: 28px;
  height: 24px;
  padding: 0;
}

.modal-content {
  padding: 10px;
  max-height: 72vh;
  overflow: auto;
}
.cfg-picker-modal {
  width: min(700px, 92vw);
  border: 1px solid #4f6078;
  background: linear-gradient(180deg, #253243 0%, #202b38 100%);
  color: #edf4ff;
  box-shadow: 0 20px 50px rgba(3, 10, 18, 0.55);
}
.cfg-picker-modal .modal-titlebar {
  background: linear-gradient(180deg, #2e537f 0%, #234363 100%);
  border-bottom: 1px solid #5d7ea8;
}
.cfg-picker-modal .modal-close {
  border-color: rgba(210, 228, 255, 0.45);
  background: rgba(20, 34, 53, 0.45);
}
.cfg-picker-modal-content {
  display: grid;
  gap: 10px;
  padding: 12px;
}
.cfg-picker-modal .field label {
  color: #c7d5e9;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .05em;
  font-weight: 700;
}
.cfg-picker-modal input {
  border: 1px solid #5a6c84;
  background: #314154;
  color: #eef4ff;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.03);
}
.cfg-picker-modal .inline-row.wrap {
  justify-content: flex-end;
  gap: 8px;
}
.cfg-picker-modal .inline-row.wrap button {
  border: 1px solid #5a6f8d;
  background: #33465d;
  color: #eef4ff;
}
.cfg-picker-modal .inline-row.wrap button.primary {
  background: #3c5a7f;
  border-color: #7390b7;
}
.cfg-picker-modal .cfg-picker-list {
  border-color: #46576d;
  background: #1f2a37;
  padding: 10px;
}
.cfg-picker-modal .cfg-picker-option {
  border: 1px solid #46586f;
  background: linear-gradient(180deg, #2b394b 0%, #263445 100%);
  color: #edf4ff;
  padding: 10px 12px;
}
.cfg-picker-modal .cfg-picker-option:hover {
  border-color: #6f8cb2;
  background: linear-gradient(180deg, #33465d 0%, #2d3d51 100%);
}
.cfg-picker-modal .cfg-picker-option.active {
  border-color: #7da8eb;
  box-shadow: inset 0 0 0 1px #7da8eb;
}
.cfg-picker-modal .cfg-picker-option strong {
  color: #f2f7ff;
}
.cfg-picker-modal .cfg-picker-option small,
.cfg-picker-modal .cfg-picker-empty {
  color: #a8bad1;
}

.password-setup-window {
  width: min(460px, 92vw);
}

.password-reset-window {
  width: min(500px, 92vw);
}

.password-setup-copy {
  margin: 0 0 12px;
  color: #234d75;
  line-height: 1.5;
}

.password-setup-grid {
  grid-template-columns: 1fr;
}

.password-reset-grid {
  grid-template-columns: 1fr;
}

.password-setup-wide {
  grid-column: 1 / -1;
}

.password-setup-actions,
.password-reset-actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 10px;
}

.password-setup-msg,
.password-reset-msg {
  margin: 10px 0 0;
  min-height: 18px;
}

.settings-intro {
  margin: 0 0 12px;
  color: #234d75;
}

.settings-section {
  border: 1px solid #c6d4e0;
  background: #fff;
  padding: 10px;
  margin-bottom: 10px;
}

.settings-section h3 {
  margin: 0 0 8px;
  font-size: 14px;
  color: #153a5f;
}

.settings-help {
  margin: 0 0 8px;
  color: #385f83;
  font-size: 12px;
}

.settings-fields-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 8px 12px;
  margin-bottom: 8px;
}

.settings-fields-grid label {
  display: block;
  margin-bottom: 4px;
  font-size: 12px;
  color: #153a5f;
}

.settings-fields-grid input,
.settings-fields-grid select {
  width: 100%;
}

.inline-row.wrap {
  flex-wrap: wrap;
}

.sub-line { margin-left: 16px; }


.desktop-shortcut-manager {
  position: fixed;
  right: 18px;
  bottom: 56px;
  width: 88px;
  text-decoration: none;
  text-align: center;
  color: #fff;
  text-shadow: 0 1px 4px rgba(0,0,0,.6);
  z-index: 55;
}

.desktop-shortcut-manager span {
  display: block;
  font-size: 30px;
  margin-bottom: 4px;
}

.desktop-shortcut-manager small {
  font-size: 11px;
  line-height: 1.1;
}

/* Display 2.0 desktop shell themes */
.desktop-screen[data-desktop-theme] {
  --desktop-theme-font: "Segoe UI", Arial, sans-serif;
  --desktop-wallpaper: url('/static/theme_windows_10.svg');
  --desktop-icon-color: #ffffff;
  --desktop-icon-shadow: 0 1px 4px rgba(0,0,0,.6);
  --desktop-icon-bg: transparent;
  --desktop-icon-bg-hover: transparent;
  --desktop-icon-border: transparent;
  --desktop-icon-radius: 10px;
  --desktop-icon-padding: 0;
  --desktop-icon-box-shadow: none;
  --desktop-icon-blur: none;
  --manager-shortcut-bottom: 96px;
  --taskbar-height: 80px;
  --taskbar-bg: rgba(0,0,0,.82);
  --taskbar-border-top: rgba(255,255,255,.08);
  --taskbar-shadow: inset 0 1px 0 rgba(255,255,255,.08);
  --taskbar-blur: blur(0px);
  --taskbar-pad-right: 8px;
  --taskbar-left-gap: 0px;
  --taskbar-left-justify: flex-start;
  --taskbar-app-width: 22px;
  --taskbar-app-border: transparent;
  --taskbar-app-radius: 0;
  --taskbar-app-bg: transparent;
  --taskbar-app-hover: rgba(255,255,255,.1);
  --taskbar-app-active: rgba(255,255,255,.16);
  --taskbar-app-shadow: none;
  --start-btn-width: 43px;
  --start-btn-bg: transparent;
  --start-btn-border: none;
  --start-btn-radius: 0;
  --start-btn-color: #ffffff;
  --start-btn-hover: rgba(255,255,255,.1);
  --start-btn-shadow: none;
  --start-btn-padding: 0 12px;
  --start-btn-gap: 0;
  --start-btn-justify: center;
  --start-btn-label: "";
  --start-btn-label-size: 0px;
  --start-btn-label-weight: 700;
  --start-logo-display: inline-block;
  --start-logo-scale: 1;
  --start-logo-filter: none;
  --search-width: 280px;
  --search-bg: rgba(255,255,255,.16);
  --search-border: rgba(255,255,255,.1);
  --search-color: #ffffff;
  --search-placeholder: rgba(255,255,255,.72);
  --search-radius: 0;
  --search-shadow: none;
  --search-results-bg: rgba(22,22,22,.95);
  --search-results-border: rgba(255,255,255,.2);
  --search-item-color: #ffffff;
  --search-item-hover: rgba(255,255,255,.12);
  --start-menu-left: 0;
  --start-menu-bottom: 0;
  --start-menu-transform: none;
  --start-menu-width: 420px;
  --start-menu-height: 460px;
  --start-menu-bg: rgba(20,20,20,.92);
  --start-menu-border: rgba(255,255,255,.05);
  --start-menu-radius: 0;
  --start-menu-shadow: 0 -10px 40px rgba(0,0,0,.38);
  --start-menu-blur: blur(0px);
  --start-left-rail-width: 48px;
  --start-left-rail-bg: rgba(255,255,255,.04);
  --start-power-bg: transparent;
  --start-power-hover: rgba(255,255,255,.1);
  --start-power-color: #ffffff;
  --start-power-shadow: none;
  --start-power-border: transparent;
  --start-rail-brand-display: none;
  --start-rail-brand-bg: transparent;
  --start-rail-brand-border: transparent;
  --start-rail-brand-shadow: none;
  --start-rail-brand-color: #ffffff;
  --start-account-bg: transparent;
  --start-account-border: transparent;
  --start-account-radius: 0;
  --start-tiles-bg: #0f7ad8;
  --start-tiles-color: #ffffff;
  --start-tiles-border: transparent;
  --start-tiles-radius: 0;
  --start-tiles-hover: #278ae2;
  --window-bg: rgba(245,245,245,.99);
  --window-border: rgba(0,0,0,.18);
  --window-radius: 0;
  --window-shadow: 0 24px 70px rgba(0,0,0,.35);
  --window-titlebar-bg: rgba(230,230,230,.98);
  --window-titlebar-border-bottom: rgba(0,0,0,.08);
  --window-title-color: #333333;
  --window-body-text: #1f1f1f;
  --window-control-bg: rgba(255,255,255,.3);
  --window-control-border: rgba(0,0,0,.08);
  --window-control-color: #222222;
  --window-control-radius: 0;
  --window-control-hover: rgba(255,255,255,.6);
  --window-close-bg: #e81123;
  --window-close-color: #ffffff;
  --window-close-hover: #c50f1f;
  --browserbar-bg: linear-gradient(#d2d2d2, #bdbdbd);
  --browserbar-border: #a8a8a8;
  --browser-btn-bg: #d5d5d5;
  --browser-btn-border: #adadad;
  --browser-btn-color: #6b6b6b;
  --browser-url-bg: #e4e4e4;
  --browser-url-border: #b7b7b7;
  --browser-url-color: #5e5e5e;
  --tray-color: #ffffff;
  --clock-color: #ffffff;
}

.desktop-screen[data-desktop-theme] {
  background: var(--desktop-wallpaper) center center / cover no-repeat;
  font-family: var(--desktop-theme-font);
}

.desktop-screen[data-desktop-theme] .desktop-icon,
.desktop-screen[data-desktop-theme] .desktop-shortcut-manager {
  color: var(--desktop-icon-color);
  text-shadow: var(--desktop-icon-shadow);
}

.desktop-screen[data-desktop-theme] .desktop-icon.app-launcher,
.desktop-screen[data-desktop-theme] .desktop-shortcut-manager {
  border: 1px solid var(--desktop-icon-border);
  background: var(--desktop-icon-bg);
  border-radius: var(--desktop-icon-radius);
  padding: var(--desktop-icon-padding);
  box-shadow: var(--desktop-icon-box-shadow);
  backdrop-filter: var(--desktop-icon-blur);
}

.desktop-screen[data-desktop-theme] .desktop-icon.app-launcher:hover,
.desktop-screen[data-desktop-theme] .desktop-shortcut-manager:hover {
  background: var(--desktop-icon-bg-hover);
}

.desktop-screen[data-desktop-theme] .desktop-icon.app-launcher,
.desktop-screen[data-desktop-theme] .desktop-shortcut-manager {
  border: none;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
}

.desktop-screen[data-desktop-theme] .desktop-shortcut-manager {
  bottom: var(--manager-shortcut-bottom);
}

.desktop-screen[data-desktop-theme] .taskbar {
  height: var(--taskbar-height);
  background: var(--taskbar-bg);
  padding: 0 var(--taskbar-pad-right) 0 0;
  border-top: 1px solid var(--taskbar-border-top);
  box-shadow: var(--taskbar-shadow);
  backdrop-filter: var(--taskbar-blur);
}

.desktop-screen[data-desktop-theme] .taskbar-left {
  gap: var(--taskbar-left-gap);
  justify-content: var(--taskbar-left-justify);
}

.desktop-screen[data-desktop-theme] .taskbar-right,
.desktop-screen[data-desktop-theme] .tray-item {
  color: var(--tray-color);
  text-shadow: 0 1px 2px rgba(0,0,0,.55);
}

.desktop-screen[data-desktop-theme] .clock-stack {
  color: var(--clock-color);
  font-weight: 600;
  text-shadow: 0 1px 2px rgba(0,0,0,.65);
}

.desktop-screen[data-desktop-theme] .start-button {
  width: var(--start-btn-width);
  min-width: var(--start-btn-width);
  height: calc(var(--taskbar-height) - 10px);
  background: var(--start-btn-bg);
  border: var(--start-btn-border);
  border-radius: var(--start-btn-radius);
  color: var(--start-btn-color);
  box-shadow: var(--start-btn-shadow);
  display: flex;
  align-items: center;
  justify-content: var(--start-btn-justify);
  padding: var(--start-btn-padding);
  gap: var(--start-btn-gap);
}

.desktop-screen[data-desktop-theme] .start-button:hover {
  background: var(--start-btn-hover);
}

.desktop-screen[data-desktop-theme] .start-button::after {
  content: var(--start-btn-label);
  font-size: var(--start-btn-label-size);
  font-weight: var(--start-btn-label-weight);
  line-height: 1;
}

.desktop-screen[data-desktop-theme] .start-button .win-logo {
  display: var(--start-logo-display);
  transform: scale(var(--start-logo-scale));
  filter: var(--start-logo-filter);
}

.desktop-screen[data-desktop-theme] .taskbar-apps .task-icon {
  width: var(--taskbar-app-width);
  min-width: var(--taskbar-app-width);
  height: calc(var(--taskbar-height) - 10px);
  border: 1px solid var(--taskbar-app-border);
  border-radius: var(--taskbar-app-radius);
  background: var(--taskbar-app-bg);
  box-shadow: var(--taskbar-app-shadow);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
}

.desktop-screen[data-desktop-theme] .taskbar-apps {
  gap: var(--taskbar-app-gap, 2px);
}

.desktop-screen[data-desktop-theme] .taskbar-apps .task-icon:hover {
  background: var(--taskbar-app-hover);
}

.desktop-screen[data-desktop-theme] .taskbar-apps .task-icon.active {
  background: var(--taskbar-app-active);
}

.desktop-screen[data-desktop-theme] .search-box {
  width: var(--search-width);
  min-width: var(--search-width);
  background: var(--search-bg);
  border: 1px solid var(--search-border);
  color: var(--search-color);
  border-radius: var(--search-radius);
  box-shadow: var(--search-shadow);
}

.desktop-screen[data-desktop-theme] .search-wrap {
  flex: 0 0 var(--search-width);
  width: var(--search-width);
  min-width: var(--search-width);
}

.desktop-screen[data-desktop-theme] .search-box::placeholder {
  color: var(--search-placeholder);
}

.desktop-screen[data-desktop-theme] .search-results {
  background: var(--search-results-bg);
  border: 1px solid var(--search-results-border);
}

.desktop-screen[data-desktop-theme] .search-item {
  color: var(--search-item-color);
}

.desktop-screen[data-desktop-theme] .search-item:hover {
  background: var(--search-item-hover);
}

.desktop-screen[data-desktop-theme] .start-menu {
  left: var(--start-menu-left);
  bottom: var(--start-menu-bottom);
  transform: var(--start-menu-transform);
  width: min(var(--start-menu-width), 96vw);
  height: min(var(--start-menu-height), 78vh);
  background: var(--start-menu-bg);
  border: 1px solid var(--start-menu-border);
  border-radius: var(--start-menu-radius);
  box-shadow: var(--start-menu-shadow);
  backdrop-filter: var(--start-menu-blur);
  overflow: hidden;
  z-index: 340;
}

.desktop-screen[data-desktop-theme] .start-left-rail {
  width: var(--start-left-rail-width);
  background: var(--start-left-rail-bg);
}

.desktop-screen[data-desktop-theme] .start-power-button {
  background: var(--start-power-bg);
  color: var(--start-power-color);
  border-top: 1px solid var(--start-power-border);
  box-shadow: var(--start-power-shadow);
}

.desktop-screen[data-desktop-theme] .start-power-button:hover {
  background: var(--start-power-hover);
}

.desktop-screen[data-desktop-theme] .start-rail-brand {
  display: var(--start-rail-brand-display);
  background: var(--start-rail-brand-bg);
  border-top: 1px solid var(--start-rail-brand-border);
  box-shadow: var(--start-rail-brand-shadow);
  color: var(--start-rail-brand-color);
}

.desktop-screen[data-desktop-theme] .start-rail-brand .win-logo {
  filter: none;
}

.desktop-screen[data-desktop-theme] .start-account {
  background: var(--start-account-bg);
  border: 1px solid var(--start-account-border);
  border-radius: var(--start-account-radius);
  padding: 8px 10px;
}

.desktop-screen[data-desktop-theme] .start-section-head,
.desktop-screen[data-desktop-theme] .start-footer {
  color: var(--start-tiles-color);
}

.desktop-screen[data-desktop-theme] .workspace-home-panel {
  border-radius: calc(var(--window-radius) + 2px);
}

.desktop-screen[data-desktop-theme] .start-tiles button,
.desktop-screen[data-desktop-theme] .start-link {
  background: var(--start-tiles-bg);
  color: var(--start-tiles-color);
  border: 1px solid var(--start-tiles-border);
  border-radius: var(--start-tiles-radius);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.14);
}

.desktop-screen[data-desktop-theme] .start-tiles button:hover,
.desktop-screen[data-desktop-theme] .start-link:hover {
  background: var(--start-tiles-hover);
}

.desktop-screen[data-desktop-theme="windows_10"] .start-button,
.desktop-screen[data-desktop-theme="windows_10"] .taskbar-apps .task-icon,
.desktop-screen[data-desktop-theme="windows_10"] .search-wrap,
.desktop-screen[data-desktop-theme="windows_11"] .start-button,
.desktop-screen[data-desktop-theme="windows_11"] .taskbar-apps .task-icon,
.desktop-screen[data-desktop-theme="windows_11"] .search-wrap {
  transition: transform .18s cubic-bezier(.22, 1, .36, 1), background .18s ease, box-shadow .18s ease, border-color .18s ease, filter .18s ease;
  transform-origin: center bottom;
}

.desktop-screen[data-desktop-theme="windows_10"] .start-button:hover,
.desktop-screen[data-desktop-theme="windows_10"] .taskbar-apps .task-icon:hover,
.desktop-screen[data-desktop-theme="windows_10"] .search-wrap:hover,
.desktop-screen[data-desktop-theme="windows_11"] .start-button:hover,
.desktop-screen[data-desktop-theme="windows_11"] .taskbar-apps .task-icon:hover,
.desktop-screen[data-desktop-theme="windows_11"] .search-wrap:hover {
  transform: translateY(-2px);
}

.desktop-screen[data-desktop-theme="windows_10"] .start-button:active,
.desktop-screen[data-desktop-theme="windows_10"] .taskbar-apps .task-icon:active,
.desktop-screen[data-desktop-theme="windows_10"] .search-wrap:active,
.desktop-screen[data-desktop-theme="windows_11"] .start-button:active,
.desktop-screen[data-desktop-theme="windows_11"] .taskbar-apps .task-icon:active,
.desktop-screen[data-desktop-theme="windows_11"] .search-wrap:active {
  transform: translateY(0) scale(.96);
}

.desktop-screen[data-desktop-theme="windows_10"] .start-button.active,
.desktop-screen[data-desktop-theme="windows_11"] .start-button.active {
  background: var(--start-btn-hover);
}

.desktop-screen[data-desktop-theme="windows_10"] .taskbar-button-pop,
.desktop-screen[data-desktop-theme="windows_11"] .taskbar-button-pop {
  animation: taskbarButtonPop .26s cubic-bezier(.2, .9, .25, 1);
}

.desktop-screen[data-desktop-theme] .app-window,
.desktop-screen[data-desktop-theme] .window-card {
  background: var(--window-bg);
  border: 1px solid var(--window-border);
  border-radius: var(--window-radius);
  box-shadow: var(--window-shadow);
}

.desktop-screen[data-desktop-theme] .window-titlebar {
  background: var(--window-titlebar-bg);
  border-bottom: 1px solid var(--window-titlebar-border-bottom);
}

@keyframes taskbarButtonPop {
  0% {
    transform: scale(1);
  }
  45% {
    transform: translateY(-2px) scale(1.06);
  }
  100% {
    transform: scale(1);
  }
}

.desktop-screen[data-desktop-theme] .window-title {
  color: var(--window-title-color);
}

.desktop-screen[data-desktop-theme] .window-controls .window-action {
  background: var(--window-control-bg);
  border-left: 1px solid var(--window-control-border);
  color: var(--window-control-color);
  border-radius: var(--window-control-radius);
}

.desktop-screen[data-desktop-theme] .window-controls .window-action:hover {
  background: var(--window-control-hover);
}

.desktop-screen[data-desktop-theme] .window-controls .window-action.close-btn {
  background: var(--window-close-bg);
  color: var(--window-close-color);
}

.desktop-screen[data-desktop-theme] .window-controls .window-action.close-btn:hover {
  background: var(--window-close-hover);
}

.desktop-screen[data-desktop-theme] .window-browserbar {
  background: var(--browserbar-bg);
  border-bottom: 1px solid var(--browserbar-border);
}

.desktop-screen[data-desktop-theme] .browser-menu-btn {
  background: var(--browser-btn-bg);
  border-color: var(--browser-btn-border);
  color: var(--browser-btn-color);
}

.desktop-screen[data-desktop-theme] .browser-url {
  background: var(--browser-url-bg);
  border-color: var(--browser-url-border);
  color: var(--browser-url-color);
}

.desktop-screen[data-desktop-theme] #welcomeWindow .window-body,
.desktop-screen[data-desktop-theme] #welcomeWindow .window-body p {
  color: var(--window-body-text);
}

.desktop-screen[data-desktop-theme] #welcomeWindow .window-title,
.desktop-screen[data-desktop-theme] #welcomeWindow .workspace-kicker,
.desktop-screen[data-desktop-theme] #welcomeWindow .workspace-badge {
  color: var(--workspace-badge-color);
}

.desktop-screen[data-desktop-theme] #welcomeWindow .workspace-summary-tag,
.desktop-screen[data-desktop-theme] #welcomeWindow .workspace-panel-head strong {
  color: var(--workspace-badge-color);
}

.desktop-screen[data-desktop-theme="windows_xp"] {
  --desktop-theme-font: Tahoma, "Segoe UI", sans-serif;
  --desktop-wallpaper: url('/static/theme_windows_xp.svg');
  --desktop-icon-bg: transparent;
  --desktop-icon-bg-hover: transparent;
  --desktop-icon-border: transparent;
  --desktop-icon-radius: 10px;
  --taskbar-height: 50px;
  --taskbar-bg: linear-gradient(180deg, #4198f7 0%, #2a71eb 50%, #1450c4 100%);
  --taskbar-border-top: #8bc8ff;
  --taskbar-shadow: inset 0 1px 0 rgba(255,255,255,.58), inset 0 -1px 0 rgba(0,0,0,.22);
  --taskbar-app-width: 42px;
  --taskbar-app-border: #5f8ee0;
  --taskbar-app-radius: 4px;
  --taskbar-app-bg: linear-gradient(180deg, rgba(255,255,255,.3), rgba(44,103,198,.48));
  --taskbar-app-hover: linear-gradient(180deg, rgba(255,255,255,.44), rgba(83,142,230,.58));
  --taskbar-app-active: linear-gradient(180deg, rgba(255,255,255,.54), rgba(112,168,245,.74));
  --start-btn-width: 42px;
  --start-btn-bg: linear-gradient(180deg, #58be49 0%, #329223 58%, #2a731c 100%);
  --start-btn-border: 1px solid #1a5d16;
  --start-btn-radius: 6px;
  --start-btn-shadow: inset 0 1px 0 rgba(255,255,255,.52), 1px 0 0 rgba(255,255,255,.16);
  --start-btn-padding: 0;
  --start-btn-gap: 0;
  --start-btn-justify: center;
  --start-btn-label: "";
  --start-btn-label-size: 0px;
  --start-logo-scale: .98;
  --start-logo-filter: drop-shadow(0 1px 0 rgba(0,0,0,.35));
  --search-width: 180px;
  --search-bg: linear-gradient(180deg, #fffdf4 0%, #ece5c8 100%);
  --search-border: #a99d79;
  --search-color: #2c446f;
  --search-placeholder: #6d7f9a;
  --search-radius: 4px;
  --start-menu-bg: linear-gradient(180deg, rgba(182,211,250,.98) 0%, rgba(121,171,238,.98) 100%);
  --start-menu-border: #6f98db;
  --start-menu-radius: 8px 8px 0 0;
  --start-left-rail-bg: linear-gradient(180deg, #f5a846 0%, #d56a1e 100%);
  --start-account-bg: linear-gradient(180deg, rgba(36,119,223,.96) 0%, rgba(14,78,185,.96) 100%);
  --start-account-border: rgba(255,255,255,.25);
  --start-account-radius: 6px;
  --start-tiles-bg: linear-gradient(180deg, #ffffff 0%, #e7f0ff 100%);
  --start-tiles-color: #21436f;
  --start-tiles-border: #8daede;
  --start-tiles-radius: 8px;
  --start-tiles-hover: linear-gradient(180deg, #ffffff 0%, #f3f8ff 100%);
  --window-bg: linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(236,233,216,.99) 100%);
  --window-border: #315a9a;
  --window-radius: 7px;
  --window-titlebar-bg: linear-gradient(180deg, #3b8df4 0%, #2369d7 55%, #1756bd 100%);
  --window-titlebar-border-bottom: #174d9b;
  --window-title-color: #ffffff;
  --window-control-bg: linear-gradient(180deg, #fefefe 0%, #cadcf7 100%);
  --window-control-border: #4169a3;
  --window-control-color: #153260;
  --window-control-radius: 4px;
  --window-control-hover: linear-gradient(180deg, #ffffff 0%, #e0edff 100%);
  --window-close-bg: linear-gradient(180deg, #ff9f8c 0%, #df4b2f 100%);
  --window-close-hover: linear-gradient(180deg, #ffb8aa 0%, #f16244 100%);
  --browserbar-bg: linear-gradient(180deg, #f7f2de 0%, #ddd0a9 100%);
  --browserbar-border: #a89667;
  --browser-btn-bg: linear-gradient(180deg, #ffffff 0%, #e5ddc0 100%);
  --browser-btn-border: #a99765;
  --browser-btn-color: #5f552f;
  --browser-url-bg: #fffdf2;
  --browser-url-border: #b4a675;
  --browser-url-color: #4e4627;
}

.desktop-screen[data-desktop-theme="windows_vista"] {
  --desktop-theme-font: "Segoe UI", Tahoma, sans-serif;
  --desktop-wallpaper: url('/static/theme_windows_vista.svg');
  --desktop-icon-bg: rgba(21, 33, 46, .24);
  --desktop-icon-bg-hover: rgba(255,255,255,.18);
  --desktop-icon-border: rgba(221, 239, 255, .24);
  --desktop-icon-radius: 14px;
  --desktop-icon-box-shadow: inset 0 1px 0 rgba(255,255,255,.18);
  --taskbar-height: 56px;
  --taskbar-bg: linear-gradient(180deg, rgba(132,152,171,.74) 0%, rgba(52,61,74,.86) 46%, rgba(22,27,35,.94) 100%);
  --taskbar-border-top: rgba(226,239,255,.42);
  --taskbar-shadow: inset 0 1px 0 rgba(255,255,255,.38), 0 -1px 0 rgba(10,12,16,.58);
  --taskbar-blur: blur(14px);
  --taskbar-app-width: 32px;
  --taskbar-app-border: rgba(214,233,255,.24);
  --taskbar-app-radius: 7px;
  --taskbar-app-bg: linear-gradient(180deg, rgba(255,255,255,.16), rgba(103,121,147,.14));
  --taskbar-app-hover: linear-gradient(180deg, rgba(255,255,255,.3), rgba(124,148,180,.26));
  --taskbar-app-active: linear-gradient(180deg, rgba(255,255,255,.44), rgba(153,180,218,.3));
  --start-btn-width: 42px;
  --start-btn-bg: radial-gradient(circle at 35% 35%, #ecfff8 0%, #86bfff 26%, #3474d9 58%, #163364 100%);
  --start-btn-border: 1px solid rgba(220,240,255,.55);
  --start-btn-radius: 50%;
  --start-btn-shadow: inset 0 2px 7px rgba(255,255,255,.34), 0 0 12px rgba(139,187,255,.38);
  --search-bg: linear-gradient(180deg, rgba(255,255,255,.94), rgba(221,230,237,.84));
  --search-border: rgba(191,208,227,.7);
  --search-color: #263443;
  --search-placeholder: #5f7184;
  --search-radius: 6px;
  --start-menu-bg: linear-gradient(180deg, rgba(29,38,49,.88) 0%, rgba(15,21,29,.94) 100%);
  --start-menu-border: rgba(213,232,255,.2);
  --start-menu-radius: 10px 10px 0 0;
  --start-menu-shadow: 0 -14px 36px rgba(0,0,0,.44);
  --start-menu-blur: blur(18px);
  --start-left-rail-bg: linear-gradient(180deg, rgba(255,255,255,.12), rgba(120,140,168,.08));
  --start-account-bg: rgba(255,255,255,.08);
  --start-account-border: rgba(220,236,255,.16);
  --start-account-radius: 10px;
  --start-tiles-bg: linear-gradient(180deg, rgba(60,72,88,.92), rgba(30,38,48,.96));
  --start-tiles-color: #edf3fb;
  --start-tiles-border: rgba(205,223,245,.12);
  --start-tiles-radius: 10px;
  --start-tiles-hover: linear-gradient(180deg, rgba(82,95,114,.94), rgba(36,45,56,.98));
  --window-bg: linear-gradient(180deg, rgba(255,255,255,.96) 0%, rgba(239,241,239,.98) 100%);
  --window-border: rgba(189,200,207,.62);
  --window-radius: 8px;
  --window-shadow: 0 26px 72px rgba(6,10,16,.42);
  --window-titlebar-bg: linear-gradient(180deg, rgba(245,249,252,.84) 0%, rgba(171,183,197,.58) 56%, rgba(129,140,151,.7) 100%);
  --window-titlebar-border-bottom: rgba(232,239,245,.48);
  --window-title-color: #ffffff;
  --window-control-bg: linear-gradient(180deg, rgba(255,255,255,.64), rgba(203,214,223,.4));
  --window-control-border: rgba(208,223,235,.44);
  --window-control-color: #24384f;
  --window-control-radius: 999px;
  --window-control-hover: linear-gradient(180deg, rgba(255,255,255,.82), rgba(223,233,242,.58));
  --window-close-bg: linear-gradient(180deg, rgba(255,181,171,.98), rgba(209,73,55,.96));
  --window-close-hover: linear-gradient(180deg, rgba(255,209,204,.98), rgba(226,94,73,.98));
  --browserbar-bg: linear-gradient(180deg, rgba(246,250,251,.94), rgba(215,223,216,.9));
  --browserbar-border: rgba(177,189,177,.94);
  --browser-btn-bg: linear-gradient(180deg, rgba(255,255,255,.88), rgba(225,233,225,.84));
  --browser-btn-border: rgba(178,191,182,.94);
  --browser-btn-color: #3e514a;
  --browser-url-bg: rgba(255,255,255,.92);
  --browser-url-border: rgba(178,191,182,.92);
  --browser-url-color: #41534b;
}

.desktop-screen[data-desktop-theme="windows_10"] {
  --desktop-theme-font: "Segoe UI", Arial, sans-serif;
  --desktop-wallpaper: url('/static/theme_windows_10.svg');
  --desktop-icon-bg: rgba(8, 34, 72, .12);
  --desktop-icon-bg-hover: rgba(255,255,255,.14);
  --desktop-icon-border: rgba(255,255,255,.12);
  --desktop-icon-radius: 8px;
  --manager-shortcut-bottom: 78px;
  --taskbar-height: 52px;
  --taskbar-bg: #111111;
  --taskbar-border-top: rgba(255,255,255,.06);
  --taskbar-shadow: inset 0 1px 0 rgba(255,255,255,.06);
  --taskbar-app-width: 42px;
  --taskbar-app-gap: 6px;
  --taskbar-app-border: transparent;
  --taskbar-app-radius: 0;
  --taskbar-app-bg: transparent;
  --taskbar-app-hover: rgba(255,255,255,.12);
  --taskbar-app-active: rgba(255,255,255,.18);
  --start-btn-width: 52px;
  --start-btn-bg: transparent;
  --start-btn-border: none;
  --start-btn-padding: 0;
  --start-btn-justify: center;
  --search-width: 320px;
  --search-bg: rgba(255,255,255,.18);
  --search-border: rgba(255,255,255,.08);
  --search-color: #ffffff;
  --search-placeholder: rgba(255,255,255,.76);
  --search-radius: 0;
  --start-menu-bottom: 0;
  --start-menu-width: 560px;
  --start-menu-height: 520px;
  --start-menu-bg: rgba(230,230,230,.96);
  --start-menu-border: rgba(180,180,180,.86);
  --start-menu-radius: 0;
  --start-menu-shadow: 0 -10px 30px rgba(0,0,0,.32);
  --start-left-rail-width: 56px;
  --start-left-rail-bg: #2a2a2a;
  --start-power-bg: rgba(255,255,255,.03);
  --start-power-hover: rgba(255,255,255,.12);
  --start-power-color: #ffffff;
  --start-power-shadow: inset 0 1px 0 rgba(255,255,255,.04);
  --start-power-border: rgba(255,255,255,.06);
  --start-rail-brand-display: flex;
  --start-rail-brand-bg: #1b1b1b;
  --start-rail-brand-border: rgba(255,255,255,.06);
  --start-rail-brand-shadow: inset 0 1px 0 rgba(255,255,255,.03);
  --start-rail-brand-color: #ffffff;
  --start-account-bg: rgba(255,255,255,.82);
  --start-account-border: rgba(210,210,210,.84);
  --start-account-radius: 0;
  --start-tiles-bg: #f8f8f8;
  --start-tiles-color: #202020;
  --start-tiles-border: #d2d2d2;
  --start-tiles-radius: 0;
  --start-tiles-hover: #ededed;
  --window-bg: rgba(255,255,255,.98);
  --window-border: #cfcfcf;
  --window-radius: 0;
  --window-shadow: 0 20px 56px rgba(0,0,0,.2);
  --window-titlebar-bg: #ffffff;
  --window-titlebar-border-bottom: #d7d7d7;
  --window-title-color: #252525;
  --window-control-bg: rgba(255,255,255,.98);
  --window-control-border: #e3e3e3;
  --window-control-color: #202020;
  --window-control-radius: 0;
  --window-control-hover: #ececec;
  --window-close-bg: #ffffff;
  --window-close-color: #202020;
  --window-close-hover: #e81123;
  --browserbar-bg: linear-gradient(180deg, #ffffff 0%, #f1f1f1 100%);
  --browserbar-border: #d7d7d7;
  --browser-btn-bg: #f5f5f5;
  --browser-btn-border: #dbdbdb;
  --browser-btn-color: #5f5f5f;
  --browser-url-bg: #ffffff;
  --browser-url-border: #d5d5d5;
  --browser-url-color: #3d3d3d;
}

.desktop-screen[data-desktop-theme="windows_11"] {
  --desktop-theme-font: "Segoe UI Variable", "Segoe UI", Arial, sans-serif;
  --desktop-wallpaper: url('/static/theme_windows_11.svg');
  --desktop-icon-bg: rgba(255,255,255,.1);
  --desktop-icon-bg-hover: rgba(255,255,255,.18);
  --desktop-icon-border: rgba(255,255,255,.18);
  --desktop-icon-radius: 16px;
  --desktop-icon-box-shadow: inset 0 1px 0 rgba(255,255,255,.22);
  --manager-shortcut-bottom: 87px;
  --taskbar-height: 65px;
  --taskbar-bg: rgba(243, 247, 252, .64);
  --taskbar-border-top: rgba(255,255,255,.85);
  --taskbar-shadow: inset 0 1px 0 rgba(255,255,255,.94), 0 -8px 28px rgba(64,93,132,.16);
  --taskbar-blur: blur(18px);
  --taskbar-pad-right: 12px;
  --taskbar-left-gap: 6px;
  --taskbar-left-justify: center;
  --taskbar-control-size: 40px;
  --taskbar-app-width: var(--taskbar-control-size);
  --taskbar-app-border: rgba(124,145,176,.16);
  --taskbar-app-radius: 14px;
  --taskbar-app-bg: rgba(255,255,255,.4);
  --taskbar-app-hover: rgba(255,255,255,.76);
  --taskbar-app-active: rgba(255,255,255,.92);
  --start-btn-width: var(--taskbar-control-size);
  --start-btn-bg: rgba(255,255,255,.58);
  --start-btn-border: 1px solid rgba(124,145,176,.18);
  --start-btn-radius: 14px;
  --start-btn-hover: rgba(255,255,255,.9);
  --start-btn-padding: 0;
  --start-btn-shadow: inset 0 1px 0 rgba(255,255,255,.76), 0 4px 12px rgba(96,124,160,.12);
  --start-btn-color: #31445a;
  --search-width: var(--taskbar-control-size);
  --search-bg: rgba(255,255,255,.62);
  --search-border: rgba(124,145,176,.2);
  --search-color: transparent;
  --search-placeholder: transparent;
  --search-radius: 14px;
  --search-shadow: inset 0 1px 0 rgba(255,255,255,.82), 0 4px 12px rgba(96,124,160,.1);
  --search-results-bg: rgba(246,249,255,.92);
  --search-results-border: rgba(186,201,221,.72);
  --search-item-color: #2b394a;
  --search-item-hover: rgba(34,86,145,.08);
  --start-menu-left: 50%;
  --start-menu-bottom: 0;
  --start-menu-transform: translateX(-50%);
  --start-menu-width: 760px;
  --start-menu-height: 540px;
  --start-menu-bg: rgba(246,249,255,.82);
  --start-menu-border: rgba(186,201,221,.72);
  --start-menu-radius: 22px;
  --start-menu-shadow: 0 -18px 48px rgba(70,98,136,.18);
  --start-menu-blur: blur(24px);
  --start-left-rail-width: 58px;
  --start-left-rail-bg: rgba(39,45,53,.92);
  --start-power-bg: rgba(255,255,255,.04);
  --start-power-hover: rgba(255,255,255,.12);
  --start-power-color: #f6fbff;
  --start-power-shadow: inset 0 1px 0 rgba(255,255,255,.06);
  --start-power-border: rgba(255,255,255,.08);
  --start-rail-brand-display: flex;
  --start-rail-brand-bg: rgba(24,29,35,.98);
  --start-rail-brand-border: rgba(255,255,255,.08);
  --start-rail-brand-shadow: inset 0 1px 0 rgba(255,255,255,.04);
  --start-rail-brand-color: #ffffff;
  --start-account-bg: rgba(255,255,255,.52);
  --start-account-border: rgba(184,199,219,.68);
  --start-account-radius: 14px;
  --start-tiles-bg: rgba(255,255,255,.64);
  --start-tiles-color: #29384b;
  --start-tiles-border: rgba(184,199,219,.68);
  --start-tiles-radius: 14px;
  --start-tiles-hover: rgba(255,255,255,.88);
  --window-bg: rgba(247,249,251,.94);
  --window-border: rgba(207,217,228,.78);
  --window-radius: 16px;
  --window-shadow: 0 28px 78px rgba(6,10,18,.22);
  --window-titlebar-bg: linear-gradient(180deg, rgba(254,254,254,.98) 0%, rgba(241,244,248,.94) 100%);
  --window-titlebar-border-bottom: rgba(213,221,231,.88);
  --window-title-color: #202b36;
  --window-control-bg: rgba(244,247,250,.92);
  --window-control-border: rgba(214,223,233,.94);
  --window-control-color: #344153;
  --window-control-radius: 10px;
  --window-control-hover: rgba(233,238,243,.98);
  --window-close-bg: rgba(243,88,88,.92);
  --window-close-hover: rgba(228,70,70,.96);
  --browserbar-bg: linear-gradient(180deg, rgba(251,252,253,.98) 0%, rgba(236,241,247,.96) 100%);
  --browserbar-border: rgba(212,222,234,.96);
  --browser-btn-bg: rgba(244,247,250,.96);
  --browser-btn-border: rgba(212,222,234,.96);
  --browser-btn-color: #4c5a6f;
  --browser-url-bg: rgba(255,255,255,.98);
  --browser-url-border: rgba(215,224,235,.96);
  --browser-url-color: #3e4d61;
  --tray-color: #f2f7ff;
  --clock-color: #ffffff;
}

.desktop-screen[data-desktop-theme="windows_xp"] .start-main {
  background: linear-gradient(180deg, rgba(184,210,247,.96) 0%, rgba(121,171,238,.96) 100%);
}

.desktop-screen[data-desktop-theme="windows_xp"] .desktop-icon.app-launcher,
.desktop-screen[data-desktop-theme="windows_xp"] .desktop-icon.app-launcher:hover,
.desktop-screen[data-desktop-theme="windows_xp"] .desktop-icon.app-launcher:focus,
.desktop-screen[data-desktop-theme="windows_xp"] .desktop-shortcut-manager,
.desktop-screen[data-desktop-theme="windows_xp"] .desktop-shortcut-manager:hover {
  border: none;
  background: transparent;
  outline: none;
  box-shadow: none;
}

.desktop-screen[data-desktop-theme="windows_xp"] .taskbar-apps .task-icon .email-icon-wrap,
.desktop-screen[data-desktop-theme="windows_xp"] .start-button .win-logo {
  display: flex;
  align-items: center;
  justify-content: center;
}

.desktop-screen[data-desktop-theme="windows_xp"] .start-button,
.desktop-screen[data-desktop-theme="windows_xp"] .taskbar-apps .task-icon {
  width: 50px;
  min-width: 50px;
  height: 50px;
}

.desktop-screen[data-desktop-theme="windows_xp"] .start-button .win-logo {
  width: 20px;
  height: 20px;
  transform: scale(1.22);
}

.desktop-screen[data-desktop-theme="windows_xp"] .taskbar-apps .task-icon .email-icon-wrap {
  width: 100%;
  min-width: 0;
  min-height: 0;
  font-size: 26px;
  line-height: 1;
}

.desktop-screen[data-desktop-theme="windows_xp"] .start-account {
  color: #ffffff;
}

.desktop-screen[data-desktop-theme="windows_xp"] #welcomeWindow {
  top: 68px;
  right: 18px;
  width: min(760px, calc(100vw - 36px));
}

.desktop-screen[data-desktop-theme="windows_xp"] #welcomeWindow .window-titlebar {
  background: linear-gradient(180deg, #4f98f6 0%, #2867d7 58%, #1755bf 100%);
}

.desktop-screen[data-desktop-theme="windows_xp"] #welcomeWindow .window-body {
  background: linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(233,239,249,.98) 52%, rgba(190,216,250,.92) 100%);
}

.desktop-screen[data-desktop-theme="windows_xp"] #welcomeWindow .workspace-home-panel {
  background: linear-gradient(180deg, #ffffff 0%, #edf4ff 100%);
  border-radius: 8px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.82);
}

.desktop-screen[data-desktop-theme="windows_xp"] .start-main {
  padding: 14px;
}

.desktop-screen[data-desktop-theme="windows_xp"] .start-section-head {
  color: #ffffff;
  background: linear-gradient(180deg, rgba(31,101,196,.78) 0%, rgba(18,79,171,.78) 100%);
  border: 1px solid rgba(255,255,255,.24);
  border-radius: 6px;
  padding: 8px 10px;
}

.desktop-screen[data-desktop-theme="windows_xp"] .start-tiles {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.desktop-screen[data-desktop-theme="windows_xp"] .start-tiles button {
  min-height: 54px;
  padding: 10px 12px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  text-align: left;
  line-height: 1.2;
  white-space: normal;
  word-break: break-word;
  overflow-wrap: anywhere;
  font-size: 14px;
  font-weight: 700;
}

.desktop-screen[data-desktop-theme="windows_xp"] .start-footer {
  color: #113a74;
  border-top-color: rgba(53,102,170,.28);
}

.desktop-screen[data-desktop-theme="windows_xp"] .search-box {
  height: 22px;
  font-size: 9px;
  padding: 0 8px;
}

.desktop-screen[data-desktop-theme="windows_xp"] .search-wrap {
  display: none;
}

.desktop-screen[data-desktop-theme="windows_xp"] .taskbar-right {
  gap: 14px;
  padding-right: 15px;
  font-size: 9px;
}

.desktop-screen[data-desktop-theme="windows_xp"] .tray-item {
  width: 30px;
  min-width: 30px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  line-height: 1;
}

.desktop-screen[data-desktop-theme="windows_xp"] .clock-stack {
  font-size: 19px;
  padding: 0 10px;
  line-height: 1.05;
}

.desktop-screen[data-desktop-theme="windows_vista"] .start-main {
  background: linear-gradient(180deg, rgba(49,57,69,.72) 0%, rgba(20,25,31,.88) 100%);
}

.desktop-screen[data-desktop-theme="windows_vista"] #welcomeWindow {
  top: 72px;
  right: 20px;
  width: min(760px, calc(100vw - 40px));
}

.desktop-screen[data-desktop-theme="windows_vista"] #welcomeWindow .window-titlebar {
  background: linear-gradient(180deg, rgba(227,239,250,.72) 0%, rgba(126,143,165,.54) 56%, rgba(80,92,107,.72) 100%);
  backdrop-filter: blur(12px);
}

.desktop-screen[data-desktop-theme="windows_vista"] #welcomeWindow .window-body {
  background: linear-gradient(180deg, rgba(255,255,255,.95) 0%, rgba(241,245,249,.94) 100%);
}

.desktop-screen[data-desktop-theme="windows_vista"] #welcomeWindow .workspace-home-panel {
  background: linear-gradient(180deg, rgba(255,255,255,.9) 0%, rgba(235,240,246,.88) 100%);
  border-radius: 12px;
}

.desktop-screen[data-desktop-theme="windows_vista"] .start-main {
  padding: 18px;
}

.desktop-screen[data-desktop-theme="windows_vista"] .start-button {
  position: relative;
  width: 50px;
  min-width: 50px;
  height: 50px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: linear-gradient(#2e3c87, #24b8e8);
  box-shadow: inset 0 1px 1px rgba(255,255,255,.42), 0 0 0 1px rgba(10,18,36,.55), 0 8px 16px rgba(6,10,18,.24);
  overflow: visible;
}

.desktop-screen[data-desktop-theme="windows_vista"] .start-button:hover,
.desktop-screen[data-desktop-theme="windows_vista"] .start-button.active {
  background: linear-gradient(#384899, #31c4f0);
  box-shadow: inset 0 1px 1px rgba(255,255,255,.48), 0 0 0 1px rgba(14,28,54,.64), 0 0 18px rgba(69,185,255,.38);
}

.desktop-screen[data-desktop-theme="windows_vista"] .start-button:active {
  transform: translateY(1px);
}

.desktop-screen[data-desktop-theme="windows_vista"] .start-button::after,
.desktop-screen[data-desktop-theme="windows_vista"] .start-button .win-logo {
  display: none;
}

.desktop-screen[data-desktop-theme="windows_vista"] .start-button .start-menu-inner {
  cursor: pointer;
  position: absolute;
  inset: 3px;
  border-radius: 50%;
  display: block;
  background: radial-gradient(circle at 50% 100%, #30f8f8 10%, #28cff1 30%, #2d6284 60%, #2c517b);
  overflow: hidden;
}

.desktop-screen[data-desktop-theme="windows_vista"] .start-button .top-white {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  background: linear-gradient(#fffe, #fff0 60%), radial-gradient(circle at 50% 2%, #fff5, #fff5 7%, #fff0 50%);
  clip-path: url(#top-clip);
}

.desktop-screen[data-desktop-theme="windows_vista"] .start-button .colors {
  position: absolute;
  inset: 0;
  filter: blur(4px);
  opacity: 0;
  transition: 0.5s opacity;
}

.desktop-screen[data-desktop-theme="windows_vista"] .start-button:hover .colors,
.desktop-screen[data-desktop-theme="windows_vista"] .start-button.active .colors {
  opacity: 1;
}

.desktop-screen[data-desktop-theme="windows_vista"] .start-button:active .colors {
  opacity: 0.65;
}

.desktop-screen[data-desktop-theme="windows_vista"] .start-button .red,
.desktop-screen[data-desktop-theme="windows_vista"] .start-button .green,
.desktop-screen[data-desktop-theme="windows_vista"] .start-button .blue,
.desktop-screen[data-desktop-theme="windows_vista"] .start-button .yellow {
  position: absolute;
  bottom: 50%;
  right: 50%;
  transform-origin: 100% 100%;
}

.desktop-screen[data-desktop-theme="windows_vista"] .start-button .red {
  width: 2.5em;
  height: 2.5em;
  background: linear-gradient(190deg, #f00 15%, #f004 40%, #0000), linear-gradient(80deg, #f00 15%, #f004 40%, #0000), linear-gradient(#0f0, #0f0);
  filter: url(#red-filter);
  rotate: 13deg;
}

.desktop-screen[data-desktop-theme="windows_vista"] .start-button .green {
  width: 2.5em;
  height: 2.5em;
  background: linear-gradient(200deg, #f00 15%, #f004 40%, #0000), linear-gradient(70deg, #f00 15%, #f004 40%, #0000), linear-gradient(#0f0, #0f0);
  filter: url(#green-filter);
  rotate: 103deg;
}

.desktop-screen[data-desktop-theme="windows_vista"] .start-button .blue {
  width: 2.65em;
  height: 2.65em;
  background: linear-gradient(190deg, #f00 15%, #f004 40%, #0000), linear-gradient(65deg, #f00 20%, #f004 45%, #0000), linear-gradient(#0f0, #0f0);
  filter: url(#blue-filter);
  rotate: 283deg;
}

.desktop-screen[data-desktop-theme="windows_vista"] .start-button .yellow {
  width: 2.5em;
  height: 2.5em;
  background: linear-gradient(190deg, #f00 15%, #f004 40%, #0000), linear-gradient(80deg, #f00 15%, #f004 40%, #0000), linear-gradient(#0f0, #0f0);
  filter: url(#yellow-filter);
  rotate: 193deg;
}

.desktop-screen[data-desktop-theme="windows_vista"] .start-button .win7 {
  position: absolute;
  inset: 0.5em;
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFAAAABQCAYAAACOEfKtAAABhWlDQ1BJQ0MgcHJvZmlsZQAAKJF9kT1Iw0AcxV9bpVIqIhYUcchQnayIijjWKhShQqgVWnUwufRDaNKQpLg4Cq4FBz8Wqw4uzro6uAqC4AeIs4OToouU+L+k0CLGg+N+vLv3uHsH+OtlppodcUDVLCOdTAjZ3IoQfEUIvejHGMYlZuqzopiC5/i6h4+vdzGe5X3uz9Gt5E0G+ATiONMNi3ideHrT0jnvE0dYSVKIz4lHDbog8SPXZZffOBcd9vPMiJFJzxFHiIViG8ttzEqGSjxFHFVUjfL9WZcVzluc1XKVNe/JXxjOa8tLXKc5hCQWsAgRAmRUsYEyLMRo1Ugxkab9hId/0PGL5JLJtQFGjnlUoEJy/OB/8LtbszA54SaFE0Dni21/DAPBXaBRs+3vY9tunACBZ+BKa/krdWDmk/RaS4seAT3bwMV1S5P3gMsdYOBJlwzJkQI0/YUC8H5G35QD+m6B0KrbW3Mfpw9AhrpK3QAHh8BIkbLXPN7d1d7bv2ea/f0ABXhy4RfcrkEAAAAGYktHRABsAIcAux1IRjIAAAAJcEhZcwAALiMAAC4jAXilP3YAAAAHdElNRQfoChIAFjsr8OgJAAAAGXRFWHRDb21tZW50AENyZWF0ZWQgd2l0aCBHSU1QV4EOFwAAH7JJREFUeNrtnHm0JVdd7z+/vXdVnXPu0H17SHfSCYlARkKYEzA80YydDigCig8Bnz6fI+8tn6ylgMunSxkExKU+xSmgQCAgBBlk0iQQMoGPQAgknTmGdHe6b093OkNV7b1/749dZ7g34fm4iYqa3atu1ak6VbXPt76/+VcNj4/Hx+Pj8fH4eHysc8g/9w2WfuHMYjnapw2y7c+ocCeXvcH3xLrepj52ooDJsoErsnnptO4Jg5Vb64WD1519xTfu/w8N4KGff97Te/mmS7tL3fMGK/3n9ld8pz44Tzi0F+qYvmSbuwugYKZncSecSL5pVovZ9m433fpovXDwL59+2Zfv+w8B4KFXn3fqQlH8ePfo4st7y71TBvfeg/ZWIIDWaUGADMSBsSCSdpkhlgZMlo65404kf+JJvr155qNxsPjGU/7oum/8uwTwlvPPeoabnf2D7sLi8/v33C6xH9AKNE5c3YHkDTAToBnSHxkiaCbOETA5uA1zTJ1+Zsi3z73HrBx8/RP+8Kb5f1cAXv3ELe+2g5WfDAsDtARaQ2QScCYH48ANQRMQm46tEuP/x8gKaG3dQfvMM462N7Ve28nn/2r2dV/W7wYA3aM5+a4zkAcre3F9sEIE6DQHDEgLrBvjZFxzNzcBmEkHpVmbZr8RiCTdqBG8QvfgXvyNe+fM6c9+t5+b2QK8/d88gIcX87M01+PExdGVpGhETxrWWaBoUGyMh2RgbVrMpA6cMCoioAraABmBqFAdXYAq3P7dIsKPCsCqmHkRVTVilbTAZQ3RDJAno5HkEGwOzjbADkVZJlg5of/QZpc2VjoCHtx0u+zX1bXDObzjU98/feym7a1XPO+Dh/41ADSP5uTo7E6qflL4nQReTlrTGVtcNwXtFnQsFBZsAdJp9GVLIBMoDBQCbZO2283nwkAukIPMdpBW9vkzPnzbCsDv/tm5Yn129d75/Xf+0Wdf+OqPfO2V8m+GgTefyOaFXJ5LVWKnIDMNkVoN6wRMC3KX8JFsaDhkpPtwJlFSDBgz9msE0IaGsVGEGsnaW4kaPz2SgFZ80rYN257ztb3XSnXQvufQ0vH/5c+ueun//NkLrvz6Pydo/+m/HfvMF1/ynCcdenD/lesGsN/euBP11rQb8ASk3QCTJcuZm6TnmAQvl2RdMpc+20aejY4BnHQSooAaiEo+3WHlSPnZ4dEgulONSggL2KLF4e79P3B4Yf4rv3nFuX+9bdOW3/r5iz9+52MF2g/90o7t+49WP7o40FcNbHbGHXvuebB3lIfWDaAU2cW238euAU8yyFpJ+mSoA4fA5Rk4NwbUSDrZggxNcMNA0WREGBoSb8jz7O7TP3Lr3cM5tIvpS0rtU+QtvK/AlFBU7sDy0ivml+d/7Fffd/ZnN7Xm3lvY4lO/9JJPrHwnv+8VbznVlgvxqQ8d7V/Y65eX3r5v8HxMZm3LsHV7cb+vur39B9q3rAvAe88UO29kp+33kngOwcuhKBqRbZE2HNBy4PJkjZ2MTLQ4sI0jLRPmWBoAY0wAomBlBvXyqeEc3vyBc6c2bzrmBfuWvonLcozNiHVFHUpcAcTaHOkv7ZpffHBXi7nBa/7kadc7k91UmHx3UbTujdEfjVUc1ME7r9pZWq42L3cHT1pYGZwyKOun3Xf/4vOOLNcbvSaVk7WFoCV1hNnpzkJVya1X/8kdK+sC8KgvzsGx1cWYgGqYVxRJnKXVAFUIFDnkNjEwEyRrwrWJsE2G6u8RTJo2KrAtLVb2VZ8Z7Q/xBa4wU3F5QC4ZwdYEU2B8hvV96lCRS4U1hqqqWlVpL6gqucBX4L0hRFGrRsoqaLeGsoyiXqi8UoWIakAciERQxWuSkE7bVYWN5crAfH7dRiQWU5dIVSXD0Ihj3loDXkugaGQ5T4vJwTYAWpOc66ETvcohHKHUfPRAP18ZrIQvjg5F2WVzxWUW41tYzfBSEjIQ08H4CuNLaiJohZLcJpsBpUG8kdoLtUMyFDVCVSt5bdAQqGpBUKwKUdKTVIQtm9qHq77vLB5sf3H9Vtjai6W3kkTSQNZOBmMVeK0WtJILIkWauC2S/TCN+I7DlEcAUEjes4LxOfTM1WdcuXsA8L8v3yl2Q+uSQVgmL6bwtiQGEN9GtEZsmTx6MUA/AS5Ame6pGimJZM0tKoUcQ4iGEAO5CsFEQjQYhYgkPYwyO+OODnph/1V/cuf96wLw6yfL9oGVZ0E5dlVGbkrDtknwWsmBzhr2iWsc7LWhnXm4Iz1koZMO1SB+bjiH5bh46omz25640L+b3Bhs3qKOGWIGSC3YaBAzAJchIkjVG11LK1DXRDUKuUKwEDSSO0Opkiy+M/Q1Mc+qUKNYY7SV2+Xukl63bj+wnp6+CLwZGQ2XWDWKOlpFI7YJXFskAG3egJxPujVr2GcfLsJEkG4Wl/eEkQEJhF2uEEzdAjxCjTFCnXUQUxIq0NBGTR+PI8vaQD/Zo5jAy7K0XWvyVQcKVgPWWqIFp5DZlL6UAEYMW7ZMLdbdylbd4tp1A6h5cSnlAEwyrE4aUKxAkY0iBykanZen70kxBHgCuJE7s4Z9Zmx9iYL2s9tO/+id3xrOoShmLs2KSD4QfMgIaoGa3FRYaVEBVCChg5gePsuIqmQ6QPPGN/cJxBCa8DJCHZXcRoIxRFGcEbwBjYLVyMbp7HB3yRstzU3rAvD208l7zpzPch9xjdEY+Xkm+XmNwbA5uGICvGJCdO0Q9AYsNwHkZJJNwfU6xMAo+njL5c+b2bpp2/f26h4ub2FCja/Bx5yA4KQC10IxUJeob4P0UZcn7mpNliUXSQ2j7cxCiImizhmqCE4Fa8AbRYLQbtmlxaPxy1f/xR1+XQBWJn+ukbA5aEhiKUNHmQa85PuZrGGna8DLJ8DLJsAbWnHzbTKUCq4uWDzA343dGjlvarrdqnWA2BxjHJlUiK8QnxMAKyW5y6mJTRRYEO0A1RaZDahGXKMHVcH7tLYRYoDMRmpnICjOJhdmqp2XoQyVRnvdumNhM9O5JNYehuwbsiY36RFmkjLPWdKLo/i3aNb5BHjFxN1lgoFmtQjH+/Ojg3muH87BR3ZNdTJ6gxyPxwtElzeZ7gp8jgJOKtS1iBqhhKieaD2ZK4ixT3RJfKNJUWUI6WcEAxojToTaJNE2Imze3D60fMRPUXeuXTeA1tlLquUVbJOyGoVpWdboM0nZl6HByCYYOuEzjtgoE6y0D89Mm7KAnlz1lI/fWQH87pXPl3a2ZWfUiCXDYDB4aqkJrsDS+Co+w6MjEDX0cHWBSkCtw1qL1YBrgLMOrE+i7GyzNuCtYILgRGm33OL8vvrum951x751pbNuPYUnqOWsUJdY2+TyjKQ7WQO2Aa9JlIpbA1o2ofuGbGs1i3sEIyLgei3KRR1Z36oXzpybm3uCN1W6Hw5HRk6GxSAuw2YZ1gqWHIPFGYtzOcaatM8IzhUYaXxTm6Ki0doMk0MRMQpGKTJRibIsam5Ydz7QbCwuinUtNIWhkeV0JsW8VhCbxHcUXQxBs2vAkzXbTIh6C2inxSzmceWeaqT/fAiXzm7okDuHzW3KN4rFjiA0iC1wzmFFEHIsgnEZ1hqsZFgxSW9ak56/S2Fk5sZZNSNgRFNS2MDc3NTRhQOly2x23boBlMy80JdVuslkXdc2d8yGExCss1hx2OiwtcMGQeKEwsjGOUOGmetiNTtFLXrY3nL6xx54aDiHVntm11SrIJeMzDlsloouIgZHhsMiYjBZhnUG2zw51+wTESwugWTzpG4b5knDviELGa4FpqbzI0sL1HluvrquhOru02hFY873gz6m1dQumspa5hxFBlmImGWQhRytIqoxalAIqiLeOFGRaQPHGeJJEX+cIU6Z1WBOTmylTd2Po+TBm9/7vLmtm445J0aPYMjEIVaogKAe8RZHTmSAF4e1nhAiEjMMAWcygq0w0WGkwtgMZwaEmNR4kASYbzghAkYixlo0mOUQzY1//8dj9+U7ArDO3PMNOq0xYgy0Zh3FlMV58AfLur4nfK1a0X8Iym1Cd/e+kgOZ8oBAvaUFD/bYfnyH441wqhHOzmZ5QTHNGeY5VsI5OfXxbrVMCNjlgqX7q0+MPRo9f8OGjblqenoCOFGitaiLxBix0eBwRGqiy7AhEKJFsVhRjHNIUEy0GAlY4xDxKSMUxkwcJccFOp3WoHs0VO3c3rDulL7puEuMjRxzYk5boFoM+/sPlH8z8PztQytcf+E8S//EJfY0y5eA9wB87UROmdkbfrz9hf7PtJ5ttvuLCvwJbgSg7rcHpKy+MsoAqVyycXaGqH6UZZAm/FYXqaJCZZKI4oliMcZiJRI17RNxGGoEBxIQ6zDej6uDE90SKcWmzMwUhx58wLc3TnU+v24A5453J7FYLQ8eqP/6QF+vuHuBL7xsgfBoUuTPeIC7gN+4ZgdvOeGq+MrOl/q/VvygO7G+qBAxU8QV+bsnf3BfBPid9zzPzM4dsysTS62ROOFpGwzWGIwVolFMTLovoBhnEV8jISlsay3BSsNAEJPWQ10ssakWNno+AJnJFsp+vfvq991xdN0A7t8jr1zYW9vz9+gjpsVf/4GbpvYu9U81xp2qJm4rimzK5dlU0ZKqlefLM1PFoakiv23bhs43f+y07YPJc8/bywC47JodXH7SFf61UzeF12UvnJ5aOeRH+i8Kz9w0t3mbiWCxKIKmDB+CYLAYG4kmQpTk0gAqJhmMIEQEI4KIac6BtDXUd0OjCOIba+xcHCxLt3Dmi4+qKvesLy/3VxVY3vixjQvd+kJMdoF1fO/N9x88Lc8LN9VR2oUhMyYlo4FMoa6UJS0pTV2+8yv33zjdyj6x0fLBHzz9+P1rgHzTHVEvn/s7//LpTv3JsfsSd22ZmxPbBPaK4CeyDgbBiiFYQT0MIYwYjAy5ZDBExJgEopqUjjOCRE3Ma2yjb7Y709NHD95V5tPTresedVnzub94+ZbFsnoZxr3svn3LL8jbzk1NGdqdFu12TicXWgW0rKOdGQqntC20c0sh0MrBqhaq4QdCcD+wbOVtn7h7z5Wzeett33/ilq8N73PaPTzAPYffNnnvdnvmounpNuIjJg7rTtJowYaFkgpTahSJad9QmQmx4VvzWUiZBBnuDyMvYOTPCxR5fqTf893OtvjNdQH4psu/Ln/6NzfurNGffvDQ0gtnN7Ty9nSGa2cULUORGbLMYJuK2uivDDuvxiIiArkquQkYG8mxWQz8WFlVP/rFPfMf3kTr9WceP/uwxso//PjFW6K6s1U16SYBo7IKQNb8pYEVJCVUh4BNtI/IqJ1EVicyzPiYFbfk8nj9Vb9/t64LwE9++evP6kznn1arFFM5rrBY15iqoRqfDMFkdWl3xI/J/Zr2OZpScFCjtb68n/Oi2+eX3jhT8LsnbJith9e/8Zt3+bvv6l+/96Gj33/Buc+UDcVMc1N5GGCyqjKqjR6U5ls6ppZOQN4AbGRVFo28Pd3TQR3aubt23a0d1mYXT822Ma2MiCKqifYyfuIy8ezHT53Vk57cFFlTdVN0UBN73U704c0HuuXVk8c/+Gv3L+y/u3/BBz5778+8/bKPH/yH3bfRr3sTGVfW3mkCvnFdWdZ8UYdVDlVUR+UXAKbbBSdunnNVNxyTOfvFdbd2WGMu9WW1qsZjNdFOdVipGs2ISEqwjcu5MipNrq5Trv7BEQg+0F3p8tU9Cw+z9HtvXIyweBkvPuYju9/zpV8/98y7fuH7nnta66Tjt9PKs4eBqKN/w6uPAZuAbhWwzuR0OlP0orBvT+C6aw7et2NW3njD+x/orQvAc19z2WZjzNl1HSCTUZuZNtqHoSvRgKEKoopK08piUj+akp6wagqXnCpRY8oYT/xwDwwGgaO96rOT8zj4yYtntr7oc8sAez82vwC89gbkHdd/46ZfOveMLT/1rLOesPmUk7fTbucjGo3hU2JcDZhGTR1fCIWdxrmN9JdqDu2L3Hbn8tHFpXgli/597kh53Q139v7JJk737btCOxfXdbA68StVZYRWRBpgYiMG0vQBxXE/X1SiBiI2FXNM8+N8wDvbZEzSJQNwpFfpoe7yyP/bc+VZP59vf9rbl3b/yO8gc2+bPe2lFcDevzmwD/iVmzC/cePuQy+cbWUv/d6nnHDhKd9z3KZjj93A7MwMLqtQE8DVlHXFUtWl6tWEbp+lpZIjB9t8a+9S9/YHjn4jBv0C/fA55uub9n5zuXxMurOMuJ1VVTbIyUgQkum3qe0CJeo4NR4jRBuJQYmZECMEDURRghesazyy4PHBkTk76rsMwOGVwe7fe/kLRr0vRc5PuW0nd0L/wG8TD//npd1/+trZ039uxNA9H3uoD3x4L3x48SXefvbme58C8kzQk0LUkwrnNmTOSB0CZR0HVmQZ0TtB9hC5RQ+V9+67YaF+zNvbnvkT7xCMXNQfVGOrpRBjTEVUiagaooKPgVwjUS0hQiQSohJjEnTvA1ke8d5iA3gLLkZiFaiMoTApKgghstgrR+y7/S84ttjwlGcEY2DqGKgWzqC8/zNLu3/zGph5k7PF5zunvGYkIPs+uj8AtzbLdzwe+v1TxNd6VrV85MUH5o/umDrZ/tbTXlvvWReAm7dse2YddJsf5ruHeg4lEjHYCdalTEi0jZhGJYgnxhxvwIZI0ICnyd7YpO8yX1HXArmjEKE38Bzp9j499gDkwmLzSaakTk8w70C2A6pD51Hdd54PxTeWbvv1ywj5R2fP+vU96wFtz2XnHMeg/3wGRy/wKwd3Bl0+oZjxK5WVG7b9p9c9HX57fQBam1+60quGim8kxkMxVY1IVEKUxLag1E7JouCj4kzE+4i1BldD7Spc5qhrg7VQuWSCXFVRkyrbR1YGC0vdwShkmt2w49LY2SJJuIc+nIFiM+QzUB15Kr1Df8Bg8PtLX/6vu1F3Hepu1crdI7U/jNTzMZRL9OMGCfXWvg7mvO+eQH3kFEL/NHz1bKn/cYftLIqbVpwVTPD0ltgXOueFLaecfOP6daDIrsGgHAMYGwAjyYKqBU1V+0wVHwM2WoJYvIdgPbV3OGuoM7B1pLIVYgqqUsbvhmjElhV1iCwuD65+509fVAPc/le4Yvb0C7xrTfh7TZsCsXmoM5Dn4PqCXzyDsHSGlstgKuosEkJEqVFbgi1ROUxGxJg+JvMYbfreexlUQL+CAIslBzo7jr1vw8ZXH1kXgJe+9i+3KDx7sFKmWgcKId1NDWiAYCMuemLIiBbqGMlCxJuk5+qgWKmT3rNC7cHUNTa3SMyQQaoXq4WM5EgvLHc/NS5A87zWpifPefGrvUVtCrd1Db5OjS7Epgg9hRQZMCCjT0bjbNchPWnfAXqpbqAeuo3likPf1KMBf6DH4bm5Lbes24g417mw269t1NhkLHTERFVBY0wZEbWIRqpoMDFQh4BxFhcNPoA3gTrUGJ+lYnulIIOUvg8ZOoC8SI0+3UEdDh05NLKunU7rYju7TfxQfFUTcCGmOmQYgjdcymbtgbpBhuYcgegZq4I6fa3ZTJYu6SZfM7/CcXL6k0766roBFDEXdbs9NIDYVNZLoULK9cQI0UfUBgiG0OyrQ03mLVVmMB5qoxipkdpgxFFmIKUy0AGaKxozwkDIHHR79c3vfM0Pj4pHUxtOfZG3U1BX4w7L2ICnQ4CqBoGyWUKz9umYluADxKppdW3YqnXaHAIYSWyOykrFQ7NPeI5vT2dfXxeAP/yGd1qNsnNhZUCMzbsZOvJhIFqiNJY2BMQYjBdKYzCilKFGjMGLxdSpu1OkQqqUaSsz0FJRLQlZILc5sTb0ev1R69ruP+eEYuNpZ4aqP24Q1DDWfyOWDZch88rm8yCJaKgTA2M1gdQgfXV4mUhqz4o1BDjUZ761Y8PXpo/7xbg+Buqm51R12N4tA5mABkVMBBdSBiQomCbiCMlpNhIJ3qQkZB1wUlOJYDBQg5GAUCJVjuJSb16lqK/xRcAZy/z+hZH/Z5xcXGzYakrtTgR6OvGr/QQD/cPBw0PsN6LeTyAOmal+LLbV8JIeohI9i4f69E/esv2WdTvSFntxd6WPqhIlRRJ2GNjGmPSJSSz0ISLBEMVjgqG0BhOVgfcp4ysZ+CZUywNKRSxB1RKdEAA3iFShPFCVB/9hOIcNszt2xrwD2pvotByyL0wAGNYwsWFe7IOP4AcT4DXsq9dcwmtiqIdBzQE3d05ry47tN60bQBHZubjUSyJqwETBeBILbfPORjQQU99w8AEjBpEANZRiEIkMtE4ph9yBTxGJZgG1A2KZ4WJGbg3BgSmrz/35r/xkANj9LvJi4+nnefqj1txxviauAbKaALFsRKJhnu8nEWYw1o0hjlk3xLSu034PCyXzU8dsv3/21F8+si4Af/QN79uikWcfXhiAEVQlES6C9TFVWYjphmJQEUJQjCQxNwKhEkoEcYGBr2iLMsgyCt/4kJmSu4pQB6LP6GBZOrL8qXHjON9XzB475/Xo6ibBEQvDhPKaMCTqIZbJXYn9xupOGpQ6YakT9qaKEKp0eqSe7zE/NTv71XXHwrkpLji6PHCxTt2GGhW1EKNgAkgIyfOMsWFiw8IQkcpD7rAEvLeUCBDoKxQKOEfEoFXCP3OBaAN56fzC/oW/H1nfTnunnS7wHOHhmdg4kfhqZ1p/1Rj4hON1a3AdhEcSkA4oMpBVXkgVOaupaP5ra/60GMP2OPj8fH4eHw8Ph4fj9n4v2gWX5FOUoFMAAAAAElFTkSuQmCC");
  background-size: 100% 100%;
  z-index: 1;
}

.desktop-screen[data-desktop-theme="windows_vista"] .start-section-head {
  color: #edf3fb;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(215,230,249,.14);
}

.desktop-screen[data-desktop-theme="windows_vista"] .start-tiles button {
  min-height: 66px;
  padding: 14px;
}

.desktop-screen[data-desktop-theme="windows_vista"] .start-footer {
  color: #d3deeb;
  border-top-color: rgba(215,230,249,.14);
}

.desktop-screen[data-desktop-theme="windows_10"] .start-main {
  background: #e7e7e7;
}

.desktop-screen[data-desktop-theme="windows_10"] .app-window.browser-shell-modern,
.desktop-screen[data-desktop-theme="windows_11"] .app-window.browser-shell-modern {
  background: #353535;
  border: 0;
  border-radius: 7px;
  overflow: hidden;
  box-shadow: 5px 5px 10px rgba(31, 31, 31, 0.245);
}

.desktop-screen[data-desktop-theme="windows_10"] .browser-shell-modern .app-titlebar,
.desktop-screen[data-desktop-theme="windows_11"] .browser-shell-modern .app-titlebar {
  position: relative;
  z-index: 2;
  background: #353535;
  height: 40px;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  padding: 0 0 0 20px;
  border-bottom: 0;
  overflow: visible;
}

.desktop-screen[data-desktop-theme="windows_10"] .browser-shell-modern .browser-tabs,
.desktop-screen[data-desktop-theme="windows_11"] .browser-shell-modern .browser-tabs {
  display: flex;
  align-items: flex-end;
  min-width: 0;
}

.desktop-screen[data-desktop-theme="windows_10"] .browser-shell-modern .browser-tab-open,
.desktop-screen[data-desktop-theme="windows_11"] .browser-shell-modern .browser-tab-open {
  width: 100px;
  min-width: 100px;
  max-width: 100px;
  height: 34px;
  border-radius: 7px 7px 0 0;
  background-color: #515151;
  display: flex;
  gap: 5px;
  align-items: flex-start;
  justify-content: space-between;
  padding: 4px 8px;
  position: relative;
  color: #fff;
  overflow: visible;
}

.desktop-screen[data-desktop-theme="windows_10"] .browser-shell-modern .browser-tab-label,
.desktop-screen[data-desktop-theme="windows_11"] .browser-shell-modern .browser-tab-label {
  color: #fff;
  font-size: 10px;
  line-height: 1.2;
  padding-top: 1px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  flex: 1 1 auto;
  min-width: 0;
}

.desktop-screen[data-desktop-theme="windows_10"] .browser-shell-modern .browser-tab-close,
.desktop-screen[data-desktop-theme="windows_11"] .browser-shell-modern .browser-tab-close {
  color: #fff;
  font-size: 9px;
  line-height: 1;
  padding: 1px 4px;
  border-radius: 50%;
  pointer-events: none;
  flex: 0 0 auto;
  cursor: default;
}

.desktop-screen[data-desktop-theme="windows_10"] .browser-shell-modern .browser-tab-open:hover .browser-tab-close,
.desktop-screen[data-desktop-theme="windows_11"] .browser-shell-modern .browser-tab-open:hover .browser-tab-close {
  background-color: #5d5d5d;
}

.desktop-screen[data-desktop-theme="windows_10"] .browser-shell-modern .browser-tab-rounded,
.desktop-screen[data-desktop-theme="windows_11"] .browser-shell-modern .browser-tab-rounded {
  position: absolute;
  background-color: #515151;
  width: 20px;
  height: 24px;
  top: 0;
  overflow: hidden;
}

.desktop-screen[data-desktop-theme="windows_10"] .browser-shell-modern .browser-tab-rounded-left,
.desktop-screen[data-desktop-theme="windows_11"] .browser-shell-modern .browser-tab-rounded-left {
  left: 0;
  transform: translate(-100%);
}

.desktop-screen[data-desktop-theme="windows_10"] .browser-shell-modern .browser-tab-rounded-right,
.desktop-screen[data-desktop-theme="windows_11"] .browser-shell-modern .browser-tab-rounded-right {
  right: 0;
  transform: translate(100%);
}

.desktop-screen[data-desktop-theme="windows_10"] .browser-shell-modern .browser-tab-rounded-left .mask-round,
.desktop-screen[data-desktop-theme="windows_11"] .browser-shell-modern .browser-tab-rounded-left .mask-round {
  width: 100%;
  height: 100%;
  background-color: #353535;
  border-radius: 0 0 7px 0;
}

.desktop-screen[data-desktop-theme="windows_10"] .browser-shell-modern .browser-tab-rounded-right .mask-round,
.desktop-screen[data-desktop-theme="windows_11"] .browser-shell-modern .browser-tab-rounded-right .mask-round {
  width: 100%;
  height: 100%;
  background-color: #353535;
  border-radius: 0 0 0 7px;
}

.desktop-screen[data-desktop-theme="windows_10"] .browser-shell-modern .window-controls.window-opt,
.desktop-screen[data-desktop-theme="windows_11"] .browser-shell-modern .window-controls.window-opt {
  display: flex;
  margin-left: auto;
}

.desktop-screen[data-desktop-theme="windows_10"] .browser-shell-modern .window-controls .window-action,
.desktop-screen[data-desktop-theme="windows_11"] .browser-shell-modern .window-controls .window-action {
  height: 30px;
  width: 30px;
  border: none;
  background-color: transparent;
  transition: 0.1s ease-out;
  color: #fff;
  margin-bottom: 10px;
  border-radius: 0;
  padding: 0;
  display: grid;
  place-items: center;
  line-height: 1;
}

.desktop-screen[data-desktop-theme="windows_10"] .browser-shell-modern .window-controls .window-action:hover,
.desktop-screen[data-desktop-theme="windows_11"] .browser-shell-modern .window-controls .window-action:hover {
  background-color: rgba(81, 81, 81, 0.78);
}

.desktop-screen[data-desktop-theme="windows_10"] .browser-shell-modern .window-controls .window-action.close-btn:hover,
.desktop-screen[data-desktop-theme="windows_11"] .browser-shell-modern .window-controls .window-action.close-btn:hover {
  background-color: rgb(255, 52, 52);
}

.window-controls .window-action.close-btn.button,
.desktop-screen[data-desktop-theme] .window-controls .window-action.close-btn.button {
  --window-close-button-width: 36px;
  --window-close-button-height: 24px;
  --window-close-stroke-width: 8px;
  --window-close-stroke-thickness: 1.25px;
  --window-close-tooltip-min-width: 2.75em;
  --window-close-tooltip-height: 1.35em;
  position: relative;
  width: var(--window-close-button-width);
  min-width: var(--window-close-button-width);
  height: var(--window-close-button-height);
  flex: 0 0 var(--window-close-button-width);
  padding: 0;
  border: none;
  border-left: 1px solid var(--window-control-border, rgba(0,0,0,.08));
  background: rgb(210, 0, 0);
  color: #fff;
  overflow: visible;
  display: block;
  line-height: 1;
  transition: background-color 0.15s ease, color 0.15s ease;
}

.window-controls .window-action.close-btn.button > .X,
.window-controls .window-action.close-btn.button > .Y {
  position: absolute;
  top: 50%;
  left: 50%;
  width: var(--window-close-stroke-width);
  height: var(--window-close-stroke-thickness);
  background-color: currentColor;
  pointer-events: none;
  transform-origin: center;
  transition: background-color 0.15s ease;
}

.window-controls .window-action.close-btn.button > .X {
  transform: translate(-50%, -50%) rotate(45deg);
}

.window-controls .window-action.close-btn.button > .Y {
  transform: translate(-50%, -50%) rotate(-45deg);
}

.window-controls .window-action.close-btn.button > .close {
  position: absolute;
  top: calc(100% + 6px);
  right: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: var(--window-close-tooltip-min-width);
  height: var(--window-close-tooltip-height);
  padding: 0 0.45em;
  font-size: 11px;
  background-color: rgb(254, 255, 225);
  color: #000;
  border: 1px solid #000;
  box-shadow: 0 2px 8px rgba(0,0,0,.18);
  pointer-events: none;
  opacity: 0;
  white-space: nowrap;
  z-index: 20;
}

.window-controls .window-action.close-btn.button:hover,
.desktop-screen[data-desktop-theme] .window-controls .window-action.close-btn.button:hover {
  background: rgb(236, 72, 72);
  color: #fff;
}

.window-controls .window-action.close-btn.button:active,
.desktop-screen[data-desktop-theme] .window-controls .window-action.close-btn.button:active {
  background: rgb(130, 0, 0);
  color: #fff;
}

.window-controls .window-action.close-btn.button:hover > .close,
.window-controls .window-action.close-btn.button:focus-visible > .close {
  animation: window-close-tooltip-show 0.2s forwards 1.25s;
}

.window-controls .window-action.close-btn.button:focus-visible {
  outline: 2px solid rgba(255,255,255,.82);
  outline-offset: -2px;
  background: rgb(236, 72, 72);
  color: #fff;
}

.desktop-screen[data-desktop-theme="windows_10"] .window-controls .window-action.close-btn.button,
.desktop-screen[data-desktop-theme="windows_11"] .window-controls .window-action.close-btn.button {
  --window-close-button-width: 46px;
  --window-close-button-height: 34px;
  --window-close-stroke-width: 10px;
  --window-close-stroke-thickness: 1.25px;
  --window-close-tooltip-min-width: 2.85em;
  --window-close-tooltip-height: 1.4em;
}

.desktop-screen[data-desktop-theme="windows_10"] .browser-shell-modern .window-controls .window-action.close-btn.button,
.desktop-screen[data-desktop-theme="windows_11"] .browser-shell-modern .window-controls .window-action.close-btn.button {
  --window-close-button-width: 30px;
  --window-close-button-height: 30px;
  --window-close-stroke-width: 10px;
  --window-close-stroke-thickness: 1.25px;
  --window-close-tooltip-min-width: 2.6em;
  --window-close-tooltip-height: 1.3em;
  border-left: none;
  color: #fff;
}

@keyframes window-close-tooltip-show {
  100% {
    opacity: 1;
  }
}

.desktop-screen[data-desktop-theme="windows_10"] .browser-shell-modern .window-browserbar,
.desktop-screen[data-desktop-theme="windows_11"] .browser-shell-modern .window-browserbar {
  position: absolute;
  top: 30px;
  left: 0;
  width: 100%;
  height: 40px;
  background: #515151;
  padding: 7px;
  display: flex;
  align-items: center;
  gap: 5px;
  border-radius: 7px 7px 0 0;
  border-bottom: 0;
  z-index: 3;
}

.desktop-screen[data-desktop-theme="windows_10"] .browser-shell-modern .browser-nav-btn,
.desktop-screen[data-desktop-theme="windows_11"] .browser-shell-modern .browser-nav-btn {
  width: 27px;
  height: 25px;
  border: none;
  background-color: transparent;
  color: #fff;
  border-radius: 50%;
  transition: 0.2s ease-in-out;
  flex: 0 0 auto;
  padding: 0;
  display: grid;
  place-items: center;
  line-height: 1;
}

.desktop-screen[data-desktop-theme="windows_10"] .browser-shell-modern .browser-nav-btn:disabled,
.desktop-screen[data-desktop-theme="windows_11"] .browser-shell-modern .browser-nav-btn:disabled {
  opacity: 0.4;
}

.desktop-screen[data-desktop-theme="windows_10"] .browser-shell-modern .browser-nav-btn:hover,
.desktop-screen[data-desktop-theme="windows_11"] .browser-shell-modern .browser-nav-btn:hover {
  background-color: #5d5d5d;
}

.desktop-screen[data-desktop-theme="windows_10"] .browser-shell-modern .browser-nav-btn:disabled:hover,
.desktop-screen[data-desktop-theme="windows_11"] .browser-shell-modern .browser-nav-btn:disabled:hover {
  background-color: transparent;
}

.desktop-screen[data-desktop-theme="windows_10"] .browser-shell-modern .browser-url,
.desktop-screen[data-desktop-theme="windows_11"] .browser-shell-modern .browser-url {
  background-color: #3b3b3b;
  border: 2px solid transparent;
  height: 100%;
  border-radius: 20px;
  outline: none;
  color: #fff;
  padding: 0 54px 0 15px;
  flex: 1 1 auto;
  min-width: 0;
  transition: 0.2s ease-in-out;
  cursor: default;
}

.desktop-screen[data-desktop-theme="windows_10"] .browser-shell-modern .browser-url:hover,
.desktop-screen[data-desktop-theme="windows_11"] .browser-shell-modern .browser-url:hover {
  background-color: #5d5d5d;
}

.desktop-screen[data-desktop-theme="windows_10"] .browser-shell-modern .browser-url:focus,
.desktop-screen[data-desktop-theme="windows_11"] .browser-shell-modern .browser-url:focus {
  border-color: rgb(173, 214, 255);
  background-color: #3b3b3b;
  transition: none;
}

.desktop-screen[data-desktop-theme="windows_10"] .browser-shell-modern .browser-url::placeholder,
.desktop-screen[data-desktop-theme="windows_11"] .browser-shell-modern .browser-url::placeholder {
  color: #fff;
}

.desktop-screen[data-desktop-theme="windows_10"] .browser-shell-modern .browser-overflow-btn,
.desktop-screen[data-desktop-theme="windows_11"] .browser-shell-modern .browser-overflow-btn {
  font-size: 16px;
}

.desktop-screen[data-desktop-theme="windows_10"] .browser-shell-modern .browser-star-btn,
.desktop-screen[data-desktop-theme="windows_11"] .browser-shell-modern .browser-star-btn {
  color: #fff;
  position: absolute;
  right: 45px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 15px;
  opacity: 0.7;
  height: 18px;
  width: 19px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-bottom: 3px;
}

.desktop-screen[data-desktop-theme="windows_10"] .browser-shell-modern .browser-star-btn:hover,
.desktop-screen[data-desktop-theme="windows_11"] .browser-shell-modern .browser-star-btn:hover {
  background-color: transparent;
  opacity: 1;
}

.desktop-screen[data-desktop-theme="windows_10"] .browser-shell-modern .app-window-body,
.desktop-screen[data-desktop-theme="windows_11"] .browser-shell-modern .app-window-body {
  margin-top: 30px;
  height: calc(100% - 70px);
  padding: 0;
  background: #353535;
  overflow: hidden;
}

.desktop-screen[data-desktop-theme="windows_10"] .browser-shell-modern .embedded-app-wrap,
.desktop-screen[data-desktop-theme="windows_11"] .browser-shell-modern .embedded-app-wrap,
.desktop-screen[data-desktop-theme="windows_10"] .browser-shell-modern .embedded-app-loading-shell,
.desktop-screen[data-desktop-theme="windows_11"] .browser-shell-modern .embedded-app-loading-shell {
  background: #353535;
}

.desktop-screen[data-desktop-theme="windows_10"] .browser-shell-modern .embedded-app-loading-shell,
.desktop-screen[data-desktop-theme="windows_11"] .browser-shell-modern .embedded-app-loading-shell {
  color: #dfe4ec;
}

.desktop-screen[data-desktop-theme="windows_10"] .browser-shell-modern .embedded-app-loading-shell h3,
.desktop-screen[data-desktop-theme="windows_11"] .browser-shell-modern .embedded-app-loading-shell h3 {
  color: #ffffff;
}

.desktop-screen[data-desktop-theme="windows_10"] .browser-shell-modern .embedded-app-loading-shell p,
.desktop-screen[data-desktop-theme="windows_11"] .browser-shell-modern .embedded-app-loading-shell p {
  color: #c5cfdd;
}

.desktop-screen[data-desktop-theme="windows_10"] .browser-shell-modern .embedded-app-frame,
.desktop-screen[data-desktop-theme="windows_11"] .browser-shell-modern .embedded-app-frame {
  background: #353535;
}

.desktop-screen[data-desktop-theme="windows_10"] .start-account {
  color: #1d1d1d;
}

.desktop-screen[data-desktop-theme="windows_10"] #welcomeWindow {
  top: 60px;
  right: 18px;
  width: min(760px, calc(100vw - 40px));
}

.desktop-screen[data-desktop-theme="windows_10"] #welcomeWindow .window-titlebar {
  background: #f3f3f3;
}

.desktop-screen[data-desktop-theme="windows_10"] #welcomeWindow .window-body {
  background: linear-gradient(180deg, #ffffff 0%, #f4f4f4 100%);
}

.desktop-screen[data-desktop-theme="windows_10"] #welcomeWindow .workspace-summary-row {
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(0,0,0,.08);
}

.desktop-screen[data-desktop-theme="windows_10"] #welcomeWindow .workspace-home-panel {
  padding: 16px;
  border-radius: 0;
  background: #fafafa;
}

.desktop-screen[data-desktop-theme="windows_10"] .start-main {
  padding: 18px 18px 14px;
}

.desktop-screen[data-desktop-theme="windows_10"] .start-section-head {
  color: #303030;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(0,0,0,.08);
}

.desktop-screen[data-desktop-theme="windows_10"] .start-tiles {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.desktop-screen[data-desktop-theme="windows_10"] .start-tiles button {
  min-height: 64px;
  padding: 12px 14px;
  font-size: 14px;
}

.desktop-screen[data-desktop-theme="windows_10"] .start-footer {
  color: #4b4b4b;
  border-top-color: rgba(0,0,0,.08);
}

.desktop-screen[data-desktop-theme="windows_10"] .start-left-rail button,
.desktop-screen[data-desktop-theme="windows_10"] .start-rail-brand,
.desktop-screen[data-desktop-theme="windows_11"] .start-left-rail button,
.desktop-screen[data-desktop-theme="windows_11"] .start-rail-brand {
  min-height: 56px;
}

.desktop-screen[data-desktop-theme="windows_10"] .start-rail-brand .win-logo,
.desktop-screen[data-desktop-theme="windows_11"] .start-rail-brand .win-logo {
  transform: scale(1.08);
}

.desktop-screen[data-desktop-theme="windows_10"] .start-button .win-logo,
.desktop-screen[data-desktop-theme="windows_10"] .taskbar-apps .task-icon .email-icon-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
}

.desktop-screen[data-desktop-theme="windows_10"] .start-button .win-logo {
  width: 22px;
  height: 22px;
  transform: none;
}

.desktop-screen[data-desktop-theme="windows_10"] .taskbar-apps .task-icon .email-icon-wrap {
  width: 100%;
  height: 100%;
  min-width: 0;
  min-height: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  font-size: 0;
  line-height: 0;
}

.desktop-screen[data-desktop-theme="windows_10"] .search-box {
  height: calc(var(--taskbar-height) - 12px);
  padding: 0 18px;
  font-size: 18px;
}

.desktop-screen[data-desktop-theme="windows_10"] .taskbar-right {
  gap: 12px;
  padding-right: 16px;
  font-size: 24px;
}

.desktop-screen[data-desktop-theme="windows_10"] .tray-item {
  width: 32px;
  min-width: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  line-height: 1;
}

.desktop-screen[data-desktop-theme="windows_10"] .clock-stack {
  font-size: 20px;
  padding: 0 18px;
  line-height: 1.05;
}

.desktop-screen[data-desktop-theme="windows_11"] .start-main {
  background: linear-gradient(180deg, rgba(255,255,255,.18) 0%, rgba(241,247,255,.28) 100%);
}

.desktop-screen[data-desktop-theme="windows_11"] .taskbar {
  color: #eef6ff;
}

.desktop-screen[data-desktop-theme="windows_11"] .start-button,
.desktop-screen[data-desktop-theme="windows_11"] .taskbar-apps .task-icon {
  width: var(--taskbar-control-size);
  min-width: var(--taskbar-control-size);
  height: var(--taskbar-control-size);
}

.desktop-screen[data-desktop-theme="windows_11"] .taskbar-apps .task-icon .email-icon-wrap,
.desktop-screen[data-desktop-theme="windows_11"] .start-button .win-logo {
  display: flex;
  align-items: center;
  justify-content: center;
}

.desktop-screen[data-desktop-theme="windows_11"] .taskbar-apps .task-icon .email-icon-wrap {
  width: 100%;
  height: 100%;
  min-width: 0;
  min-height: 0;
  position: relative;
  font-size: 0;
  line-height: 0;
}

.desktop-screen[data-desktop-theme="windows_11"] .start-button .win-logo {
  filter: saturate(1.1);
}

.desktop-screen[data-desktop-theme="windows_11"] .search-wrap {
  position: relative;
  flex: 0 0 var(--taskbar-control-size);
  width: var(--taskbar-control-size);
  min-width: var(--taskbar-control-size);
  height: var(--taskbar-control-size);
}

.desktop-screen[data-desktop-theme="windows_11"] .search-wrap::before {
  content: "⌕";
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #465a72;
  font-size: 15px;
  pointer-events: none;
  z-index: 2;
}

.desktop-screen[data-desktop-theme="windows_11"] .search-box {
  width: var(--taskbar-control-size);
  min-width: var(--taskbar-control-size);
  height: var(--taskbar-control-size);
  padding: 0;
  color: transparent;
  text-indent: -9999px;
  cursor: pointer;
}

.desktop-screen[data-desktop-theme="windows_11"] .search-box::placeholder {
  color: transparent;
}

.desktop-screen[data-desktop-theme="windows_11"] .search-results {
  display: none !important;
}

.desktop-screen[data-desktop-theme="windows_11"] .start-left-rail {
  width: 58px;
  border-right: 1px solid rgba(188,202,221,.6);
}

.desktop-screen[data-desktop-theme="windows_11"] .start-left-rail button {
  color: #f6fbff;
}

.desktop-screen[data-desktop-theme="windows_11"] .start-account {
  color: #ffffff;
  text-shadow: 0 1px 0 rgba(0, 0, 0, .26);
}

.desktop-screen[data-desktop-theme="windows_11"] #summaryAccount {
  color: #ffffff;
}

.desktop-screen[data-desktop-theme="windows_11"] #summaryDepartment {
  color: rgba(255, 255, 255, .92);
}

.desktop-screen[data-desktop-theme="windows_11"] #welcomeWindow {
  top: 72px;
  right: 20px;
  width: min(760px, calc(100vw - 44px));
}

.desktop-screen[data-desktop-theme="windows_11"] #welcomeWindow .window-titlebar {
  backdrop-filter: blur(18px);
}

.desktop-screen[data-desktop-theme="windows_11"] #welcomeWindow .window-body {
  background: linear-gradient(180deg, rgba(255,255,255,.86) 0%, rgba(246,250,255,.78) 100%);
}

.desktop-screen[data-desktop-theme="windows_11"] #welcomeWindow .workspace-summary-row {
  padding: 4px 0 10px;
}

.desktop-screen[data-desktop-theme="windows_11"] #welcomeWindow .workspace-home-panel {
  background: linear-gradient(180deg, rgba(255,255,255,.76) 0%, rgba(244,248,255,.64) 100%);
  border-radius: 18px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.84);
}

.desktop-screen[data-desktop-theme="windows_11"] .start-main {
  padding: 22px 22px 16px;
}

.desktop-screen[data-desktop-theme="windows_11"] .start-section-head {
  color: #ffffff;
  padding: 0 2px 6px;
}

.desktop-screen[data-desktop-theme="windows_11"] .start-section-head strong {
  color: #ffffff;
}

.desktop-screen[data-desktop-theme="windows_11"] .start-section-head span {
  color: rgba(255, 255, 255, .92);
  opacity: 1;
}

.desktop-screen[data-desktop-theme="windows_11"] .start-tiles {
  gap: 10px;
}

.desktop-screen[data-desktop-theme="windows_11"] .start-tiles button {
  width: 100%;
  min-height: 64px;
  height: auto;
  position: relative;
  padding: 14px 16px;
  border: 3px ridge #149CEA;
  outline: none;
  background: linear-gradient(180deg, rgba(248, 251, 255, 0.72) 0%, rgba(224, 234, 246, 0.84) 100%);
  color: #f8fbff;
  text-shadow: 0 1px 2px rgba(32, 52, 79, 0.42);
  transition: box-shadow 1s ease, color .3s ease, background .3s ease, border-color .3s ease;
  border-radius: 0.3em;
  font-size: 15px;
  font-weight: 700;
  cursor: pointer;
  overflow: hidden;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1.2;
  white-space: normal;
  word-break: break-word;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.46), 0 8px 18px rgba(67, 102, 143, 0.12);
  isolation: isolate;
}

.desktop-screen[data-desktop-theme="windows_11"] .start-tiles button::after {
  content: "";
  position: absolute;
  top: -10px;
  left: 3%;
  width: 95%;
  height: 40%;
  background: linear-gradient(180deg, rgba(255,255,255,.44) 0%, rgba(255,255,255,.08) 100%);
  transition: transform 0.5s ease;
  transform-origin: center;
  z-index: -1;
}

.desktop-screen[data-desktop-theme="windows_11"] .start-tiles button::before {
  content: "";
  transform-origin: center;
  position: absolute;
  top: 80%;
  left: 3%;
  width: 95%;
  height: 40%;
  background: linear-gradient(180deg, rgba(143, 184, 229, 0.16) 0%, rgba(90, 136, 191, 0.32) 100%);
  transition: transform 0.5s ease;
  z-index: -1;
}

.desktop-screen[data-desktop-theme="windows_11"] .start-tiles button:hover::before,
.desktop-screen[data-desktop-theme="windows_11"] .start-tiles button:hover::after,
.desktop-screen[data-desktop-theme="windows_11"] .start-tiles button:focus-visible::before,
.desktop-screen[data-desktop-theme="windows_11"] .start-tiles button:focus-visible::after {
  transform: scale(0);
}

.desktop-screen[data-desktop-theme="windows_11"] .start-tiles button:hover,
.desktop-screen[data-desktop-theme="windows_11"] .start-tiles button:focus-visible {
  background: linear-gradient(180deg, rgba(255,255,255,.92) 0%, rgba(230, 240, 252, .96) 100%);
  border-color: #4fb2ff;
  box-shadow: inset 0 0 22px rgba(20, 121, 234, 0.54), 0 10px 22px rgba(57, 105, 160, 0.18);
}

.desktop-screen[data-workspace-category="dispatch-communications"] .start-account {
  color: #eef6ff;
  text-shadow: 0 1px 0 rgba(0, 0, 0, .26);
}

.desktop-screen[data-workspace-category="dispatch-communications"] #summaryAccount {
  color: #ffffff;
  font-weight: 700;
}

.desktop-screen[data-workspace-category="dispatch-communications"] #summaryDepartment {
  color: #dbe7f5;
}

.desktop-screen[data-workspace-category="dispatch-communications"] .start-section-head strong {
  color: #ffffff;
  text-shadow: 0 1px 0 rgba(0, 0, 0, .22);
}

.desktop-screen[data-workspace-category="dispatch-communications"] .start-section-head span {
  color: #d7e3f0;
  opacity: 1;
}

.desktop-screen[data-desktop-theme="windows_11"] .start-footer {
  color: #5b6d81;
  border-top-color: rgba(170,189,212,.48);
}

.desktop-screen[data-desktop-theme="windows_11"] .search-modal-shell {
  background: linear-gradient(180deg, rgba(248,251,255,.9) 0%, rgba(241,246,253,.84) 100%);
  border: 1px solid rgba(186,201,221,.72);
  border-radius: 22px;
  box-shadow: 0 28px 64px rgba(70,98,136,.2);
  backdrop-filter: blur(26px);
  color: #2b394a;
}

.desktop-screen[data-desktop-theme="windows_11"] .search-modal {
  bottom: 84px;
}

.desktop-screen[data-desktop-theme="windows_11"] .search-modal-entry {
  background: rgba(255,255,255,.84);
  border: 1px solid rgba(171,190,214,.78);
  border-radius: 14px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9);
}

.desktop-screen[data-desktop-theme="windows_11"] .search-modal-input {
  color: #31445a;
  font-size: 17px;
}

.desktop-screen[data-desktop-theme="windows_11"] .search-modal-input::placeholder {
  color: #62768f;
}

.desktop-screen[data-desktop-theme="windows_11"] .search-modal-tabs {
  color: #516275;
}

.desktop-screen[data-desktop-theme="windows_11"] .search-modal-tabs button.active {
  color: #1c2b3f;
  border-bottom: 3px solid #0b67c5;
}

.desktop-screen[data-desktop-theme="windows_11"] .search-top-app {
  background: rgba(255,255,255,.72);
  border: 1px solid rgba(188,202,221,.66);
  border-radius: 12px;
  color: #2b394a;
}

.desktop-screen[data-desktop-theme="windows_11"] .search-top-app:hover,
.desktop-screen[data-desktop-theme="windows_11"] .search-modal-link:hover,
.desktop-screen[data-desktop-theme="windows_11"] .search-modal-result:hover {
  background: rgba(255,255,255,.92);
}

.desktop-screen[data-desktop-theme="windows_11"] .search-top-app-icon {
  background: rgba(231,239,249,.88);
  border-radius: 12px;
}

.desktop-screen[data-desktop-theme="windows_11"] .search-modal-link {
  border-radius: 10px;
  color: #324257;
}

.desktop-screen[data-desktop-theme="windows_11"] .search-modal-section-head span,
.desktop-screen[data-desktop-theme="windows_11"] .search-empty {
  color: #65778b;
}

.desktop-screen[data-desktop-theme="windows_11"] .taskbar-right {
  gap: 9px;
  padding-right: 14px;
  font-size: 18px;
}

.desktop-screen[data-desktop-theme="windows_11"] .tray-item {
  width: 24px;
  min-width: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  line-height: 1;
}

.desktop-screen[data-desktop-theme="windows_11"] .clock-stack {
  font-size: 15px;
  padding: 0 9px;
  line-height: 1.05;
}

.citation-window .app-window-body {
  padding: 0;
  height: calc(100% - 72px);
  overflow: hidden;
  background: linear-gradient(180deg, #edf0f4 0%, #dde2e8 100%);
  color: #111;
}

.citation-home-shell {
  min-height: 100%;
  height: 100%;
  padding: 28px;
  display: grid;
  gap: 18px;
  background: linear-gradient(180deg, #edf0f4 0%, #dde2e8 100%);
  color: #111;
  overflow: auto;
}

.citation-home-hero,
.citation-home-list {
  background: rgba(255,255,255,.86);
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 18px;
  box-shadow: 0 14px 34px rgba(0,0,0,.12);
  padding: 22px;
}

.citation-home-brand {
  display: flex;
  align-items: flex-start;
  gap: 16px;
}

.citation-home-brand-icon {
  width: 52px !important;
  height: 52px !important;
  flex: 0 0 52px;
}

.citation-home-eyebrow {
  display: inline-block;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: #475569;
  margin-bottom: 10px;
}

.citation-home-hero h2,
.citation-home-list h3 {
  margin: 0;
}

.citation-home-hero p {
  max-width: 720px;
  margin: 10px 0 0;
  color: #475569;
}

.citation-home-actions {
  margin-top: 18px;
}

.citation-home-primary,
.citation-home-draft button {
  border: 1px solid #0f172a;
  background: #0f172a;
  color: #fff;
  border-radius: 10px;
  padding: 10px 14px;
  font-weight: 700;
  cursor: pointer;
}

.citation-home-list-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
}

.citation-home-list-head span {
  font-size: 12px;
  color: #64748b;
  font-weight: 700;
}

.citation-home-list-body {
  display: grid;
  gap: 10px;
}

.citation-home-draft {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 14px;
  background: #fff;
}

.citation-home-draft strong {
  display: block;
  margin-bottom: 4px;
}

.citation-home-draft p,
.citation-home-empty {
  margin: 0;
  color: #475569;
}

.citation-home-empty {
  padding: 22px;
  text-align: center;
  border: 1px dashed rgba(0,0,0,.18);
  border-radius: 14px;
  background: rgba(255,255,255,.6);
}

.citation-app {
  --citation-side-scale: 1.15;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 18px;
  height: 100%;
  min-height: 0;
  display: grid;
  grid-template-columns: minmax(260px, 280px) minmax(0, 1.45fr) minmax(360px, 420px);
  gap: 18px;
  align-items: stretch;
  color: #111;
  overflow: hidden;
}

.citation-window .app-window-body {
  position: relative;
}

.citation-app .sidebar {
  width: 100%;
  background: rgba(255,255,255,.78);
  border: 1px solid rgba(0,0,0,.08);
  border-radius: calc(18px * var(--citation-side-scale));
  box-shadow: 0 14px 34px rgba(0,0,0,.12);
  padding: calc(14px * var(--citation-side-scale)) calc(12px * var(--citation-side-scale));
  position: static;
  min-height: 0;
  max-height: 100%;
  overflow: auto;
}

.citation-app .side-title {
  font-size: calc(12px * var(--citation-side-scale));
  font-weight: 800;
  letter-spacing: .08em;
  line-height: 1.35;
  text-transform: uppercase;
  margin-bottom: calc(12px * var(--citation-side-scale));
  padding: 2px 2px 0;
}

.citation-app .side-label {
  color: #666;
  font-size: calc(9px * var(--citation-side-scale));
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  margin: calc(12px * var(--citation-side-scale)) 4px calc(6px * var(--citation-side-scale));
}

.citation-app .side-btn,
.citation-mini-draft {
  width: 100%;
  display: block;
  border: 1px solid rgba(0,0,0,.12);
  background: #fff;
  color: #111;
  text-align: left;
  font-size: calc(10px * var(--citation-side-scale));
  font-weight: 700;
  padding: calc(10px * var(--citation-side-scale));
  border-radius: calc(10px * var(--citation-side-scale));
  margin-bottom: calc(8px * var(--citation-side-scale));
  cursor: pointer;
}

.citation-app .side-btn.active {
  background: #0f172a;
  color: #fff;
  border-color: #0f172a;
}

.citation-app .mini-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: calc(8px * var(--citation-side-scale));
  margin-top: calc(8px * var(--citation-side-scale));
}

.citation-app .mini-card,
.citation-app .note {
  background: #fff;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: calc(12px * var(--citation-side-scale));
  padding: calc(10px * var(--citation-side-scale)) calc(9px * var(--citation-side-scale));
}

.citation-app .mini-card .k {
  font-size: calc(8px * var(--citation-side-scale));
  letter-spacing: .14em;
  text-transform: uppercase;
  color: #666;
  font-weight: 700;
  margin-bottom: calc(6px * var(--citation-side-scale));
}

.citation-app .mini-card .v {
  font-size: calc(11px * var(--citation-side-scale));
  font-weight: 800;
}

.citation-app .note {
  font-size: calc(10px * var(--citation-side-scale));
  line-height: 1.45;
  color: #444;
}

.citation-app .workspace,
.citation-app .citation-preview-column,
.citation-app .citation-fields-column {
  min-width: 0;
  min-height: 0;
  max-height: 100%;
  background: rgba(255,255,255,.74);
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 16px;
  box-shadow: 0 14px 34px rgba(0,0,0,.12);
}

.citation-app .workspace,
.citation-app .citation-preview-column {
  padding: 8px 12px 14px;
  overflow: hidden;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
}

.citation-app .citation-fields-column {
  padding: 0;
  overflow: hidden;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
}

.citation-app .booking-fields-head {
  padding: 14px 16px 12px;
  border-bottom: 1px solid rgba(0,0,0,.08);
  background: linear-gradient(180deg, rgba(248,250,252,.95) 0%, rgba(238,242,247,.95) 100%);
}

.citation-app .booking-fields-head h2 {
  margin: 0;
  font-size: 15px;
  font-weight: 900;
  color: #07122d;
}

.citation-app .booking-fields-head p {
  margin: 4px 0 0;
  color: #596579;
  font-size: 12px;
  font-weight: 700;
}

.citation-app .toolbar {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  padding: 2px 0 8px;
}

.citation-app .toolbar h1 {
  margin: 0;
  font-size: 14px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.citation-app .toolbar p {
  margin: 3px 0 0;
  font-size: 9px;
  color: #666;
}

.citation-app .toolbar-actions,
.citation-app .action-row {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}

.citation-app .toolbar-actions button,
.citation-app .action-row button {
  border-radius: 8px;
  padding: 7px 10px;
  font-size: 9px;
  font-weight: 700;
  border: 1px solid rgba(0,0,0,.14);
  background: #fff;
  cursor: pointer;
}

.citation-app .toolbar-actions .primary,
.citation-app .action-row .primary {
  background: #0f172a;
  color: #fff;
  border-color: #0f172a;
}

.citation-app .toolbar-actions .citation-print-submit-btn,
.citation-app .action-row .citation-print-submit-btn {
  background: #244d79;
  color: #fff;
  border-color: #1d3d60;
  box-shadow: 0 6px 14px rgba(36, 77, 121, .18);
}

.citation-app .toolbar-actions .citation-print-submit-btn:hover,
.citation-app .action-row .citation-print-submit-btn:hover {
  background: #1f4268;
  transform: translateY(-1px);
}

.citation-app .toolbar-actions .danger,
.citation-app .action-row .danger {
  background: #b42318;
  color: #fff;
  border-color: #8f1c13;
}

.citation-app .content {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 1px minmax(0, calc(330px * var(--citation-side-scale)));
  gap: 14px;
  align-items: stretch;
  min-width: 0;
  min-height: 0;
  height: 100%;
}

.citation-app .sheet-wrap {
  min-width: 0;
  min-height: 0;
  overflow: hidden;
  display: grid;
}

.citation-app .citation-preview-pane {
  min-width: 0;
  display: grid;
  gap: 12px;
  min-height: 0;
  max-height: 100%;
  grid-template-rows: auto minmax(0, 1fr);
  overflow: hidden;
}

.citation-app .citation-preview-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 14px;
  border-radius: 16px;
  border: 1px solid rgba(0,0,0,.08);
  background: linear-gradient(180deg, rgba(245,247,250,.94) 0%, rgba(232,237,243,.94) 100%);
}

.citation-app .citation-preview-head strong {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.citation-app .citation-preview-head span {
  font-size: 10px;
  color: #596579;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.citation-app .citation-content-divider {
  width: 1px;
  align-self: stretch;
  background: linear-gradient(180deg, rgba(15,23,42,.04) 0%, rgba(15,23,42,.16) 12%, rgba(15,23,42,.16) 88%, rgba(15,23,42,.04) 100%);
  border-radius: 999px;
}

.citation-app .paper-wrap {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  min-width: 0;
  min-height: 0;
  max-height: 100%;
  border-radius: 20px;
  border: 1px solid rgba(0,0,0,.08);
  background: linear-gradient(180deg, rgba(247,249,252,.94) 0%, rgba(235,240,246,.94) 100%);
  padding: 14px;
  overflow: auto;
}

.citation-app .paper {
  width: min(100%, 760px);
  background: #fff;
  border: 1px solid #1b1b1b;
  box-shadow: 0 8px 18px rgba(0,0,0,.08);
}

.citation-app .citation-preview-form,
.citation-app .citation-preview-form * { box-sizing: border-box; }
.citation-app .citation-preview-form {
  width: 645px;
  max-width: none;
  margin: 0 auto;
  background: #fff;
  border: 4px solid #111;
  padding: 7px;
  box-shadow: 0 12px 35px rgba(0, 0, 0, .3);
  color: #111;
  font-family: Arial, Helvetica, sans-serif;
  transform-origin: top center;
}
.citation-app .citation-preview-inner { border: 1px solid #111; background: #fff; }
.citation-app .citation-preview-black-bar,
.citation-app .citation-preview-bottom-title {
  background: #111;
  color: #fff;
  text-align: center;
  font-weight: 900;
  letter-spacing: .5px;
  text-transform: uppercase;
}
.citation-app .citation-preview-black-bar { padding: 4px 6px; font-size: 15px; line-height: 1; }
.citation-app .citation-preview-bottom-title { font-size: 17px; padding: 3px; }
.citation-app .citation-preview-top-row { display: grid; grid-template-columns: 190px 1fr; border-bottom: 1px solid #111; }
.citation-app .citation-preview-barcode-wrap { padding: 8px 8px 5px; border-right: 1px solid #111; }
.citation-app .citation-preview-barcode {
  height: 26px;
  background: repeating-linear-gradient(90deg, #111 0 2px, #fff 2px 4px, #111 4px 5px, #fff 5px 8px, #111 8px 11px, #fff 11px 13px);
  border: 1px solid #222;
}
.citation-app .citation-preview-dcn-box { padding: 5px 7px; display: grid; grid-template-rows: auto 1fr; gap: 5px; }
.citation-app .citation-preview-form input,
.citation-app .citation-preview-form textarea {
  width: 100%;
  border: 0;
  background: transparent;
  font: inherit;
  color: #111;
  outline: none;
  padding: 1px 2px;
}
.citation-app .citation-preview-number { text-align: center; font-size: 17px; letter-spacing: 2px; }
.citation-app .citation-preview-dcn-line { display: grid; grid-template-columns: 36px 1fr; align-items: center; gap: 5px; font-size: 10px; font-weight: 700; }
.citation-app .citation-preview-line-input { border-bottom: 1px solid #111 !important; min-height: 17px; }
.citation-app .citation-preview-box-input { border: 1px solid #888 !important; min-height: 16px; }
.citation-app .citation-preview-row { display: grid; border-bottom: 1px solid #111; }
.citation-app .citation-preview-row > div,
.citation-app .citation-preview-row > label,
.citation-app .citation-preview-field { border-right: 1px solid #111; min-height: 22px; }
.citation-app .citation-preview-row > div:last-child,
.citation-app .citation-preview-row > label:last-child,
.citation-app .citation-preview-field:last-child { border-right: 0; }
.citation-app .citation-preview-case-row { grid-template-columns: 1.45fr 45px 74px 88px; }
.citation-app .citation-preview-county-row { grid-template-columns: 1fr 1.5fr; }
.citation-app .citation-preview-field { min-height: 24px; padding: 2px 5px; position: relative; }
.citation-app .citation-preview-label { display: block; font-size: 9px; font-weight: 900; text-transform: uppercase; line-height: 1; margin-bottom: 1px; }
.citation-app .citation-preview-small-label { font-size: 8px; font-weight: 800; text-transform: uppercase; }
.citation-app .citation-preview-violator-label { font-size: 14px; }
.citation-app .citation-preview-usdot-label { font-size: 12px; }
.citation-app .citation-preview-vs-row { display: grid; grid-template-columns: 1fr 22px; align-items: center; padding: 5px 6px; border-bottom: 1px solid #111; font-weight: 900; font-size: 11px; }
.citation-app .citation-preview-person-row { padding: 5px 6px 3px; border-bottom: 1px solid #111; }
.citation-app .citation-preview-name-head { display: grid; grid-template-columns: 1fr 110px; gap: 10px; }
.citation-app .citation-preview-name-head strong { font-size: 12px; }
.citation-app .citation-preview-name-head label { font-size: 10px; font-weight: 900; }
.citation-app .citation-preview-name-grid { display: grid; grid-template-columns: 1.2fr 1.2fr 1.6fr 86px; border-bottom: 1px solid #111; }
.citation-app .citation-preview-name-grid .citation-preview-field:last-child label { display: flex; gap: 5px; align-items: center; font-size: 10px; }
.citation-app .citation-preview-address-grid { display: grid; grid-template-columns: 1.35fr 72px 74px; border-bottom: 1px solid #111; }
.citation-app .citation-preview-city-grid { display: grid; grid-template-columns: 1.5fr 60px 60px 66px; border-bottom: 1px solid #111; }
.citation-app .citation-preview-license-grid { display: grid; grid-template-columns: 1.4fr 58px 48px 75px 1fr; border-bottom: 1px solid #111; }
.citation-app .citation-preview-undersigned { padding: 6px; border-bottom: 1px solid #111; font-size: 10px; line-height: 1.25; }
.citation-app .citation-preview-inline-date { width: 230px !important; display: inline-block; }
.citation-app .citation-preview-vehicle-grid { display: grid; grid-template-columns: 1.65fr 58px 58px 1.35fr; border-bottom: 1px solid #111; }
.citation-app .citation-preview-vehicle-grid .citation-preview-field { min-height: 28px; }
.citation-app .citation-preview-vehicle-details { display: grid; grid-template-columns: 1fr 1fr; border-bottom: 1px solid #111; }
.citation-app .citation-preview-two-col { display: grid; grid-template-columns: 1fr 1fr; border-bottom: 1px solid #111; }
.citation-app .citation-preview-no-bottom { border-bottom: 0; }
.citation-app .citation-preview-vehicle-use { padding: 4px 6px; font-size: 9px; line-height: 1.35; border-left: 1px solid #111; }
.citation-app .citation-preview-check-line { display: flex; align-items: center; justify-content: space-between; gap: 6px; white-space: nowrap; }
.citation-app .citation-preview-check-line label { display: inline-flex; align-items: center; gap: 3px; margin-left: 3px; }
.citation-app .citation-preview-checkbox {
  width: 12px !important;
  height: 12px;
  appearance: none;
  border: 2px solid #111 !important;
  background: #fff !important;
  display: inline-block;
  vertical-align: middle;
  padding: 0 !important;
  pointer-events: none;
}
.citation-app .citation-preview-checkbox:checked {
  background: linear-gradient(45deg, transparent 42%, #111 42%, #111 58%, transparent 58%), linear-gradient(-45deg, transparent 42%, #111 42%, #111 58%, transparent 58%) !important;
  background-size: 100% 100% !important;
}
.citation-app .citation-preview-pedestrian { padding: 5px 6px; border-bottom: 1px solid #111; font-size: 10px; }
.citation-app .citation-preview-highway-row { display: grid; grid-template-columns: 1fr 64px; border-bottom: 1px solid #111; }
.citation-app .citation-preview-urban { font-size: 8px; display: flex; align-items: center; justify-content: center; gap: 3px; }
.citation-app .citation-preview-offense-wrap { padding: 5px 6px; border-bottom: 1px solid #111; font-size: 10px; }
.citation-app .citation-preview-offense-options { display: grid; grid-template-columns: 54px 1fr 70px; align-items: center; gap: 7px; margin-bottom: 4px; }
.citation-app .citation-preview-chapter-line,
.citation-app .citation-preview-imported-statute-line { display: grid; grid-template-columns: 128px 1fr; gap: 5px; align-items: end; margin-bottom: 5px; }
.citation-app .citation-preview-chapter-line span,
.citation-app .citation-preview-imported-statute-line span { font-size: 9px; font-weight: 800; text-transform: uppercase; }
.citation-app .citation-preview-offense-wrap textarea { height: 34px; resize: none; }
.citation-app .citation-preview-accident,
.citation-app .citation-preview-court { padding: 6px; border-bottom: 1px solid #111; }
.citation-app .citation-preview-accident h3,
.citation-app .citation-preview-court h3 { margin: 0 0 5px; font-size: 11px; text-transform: uppercase; }
.citation-app .citation-preview-stack-line { display: grid; grid-template-columns: 74px 1fr; gap: 5px; align-items: end; margin-bottom: 4px; font-size: 10px; }
.citation-app .citation-preview-report-row { display: grid; grid-template-columns: 68px 1fr 54px 1fr; gap: 5px; align-items: end; margin-bottom: 4px; font-size: 10px; }
.citation-app .citation-preview-date-grid { display: grid; grid-template-columns: 48px 1fr 34px 1fr 40px 1fr 42px 1fr; gap: 5px; align-items: end; font-size: 10px; margin-top: 6px; }
.citation-app .citation-preview-court-location { white-space: nowrap; overflow: hidden; min-width: 0; }
.citation-app .citation-preview-appearance { padding: 14px 20px 9px 82px; border-bottom: 1px solid #111; font-size: 15px; font-weight: 900; letter-spacing: .3px; }
.citation-app .citation-preview-appearance label { display: flex; align-items: center; gap: 7px; margin: 3px 0; }
.citation-app .citation-preview-appearance .citation-preview-checkbox { width: 16px !important; height: 16px; }
.citation-app .citation-preview-signature-grid { display: grid; grid-template-columns: 1.2fr 1fr 1.9fr 58px; gap: 10px; padding: 5px 6px 2px; border-bottom: 1px solid #111; }
.citation-app .citation-preview-signature-grid label { display: grid; gap: 1px; align-items: end; }
.citation-app .citation-preview-signature-grid input { border-bottom: 1px solid #111; height: 18px; }
.citation-app .citation-preview-signature-grid span { text-align: center; font-size: 7px; }
.citation-app .citation-preview-fine-print { padding: 3px 12px 5px; font-size: 7px; line-height: 1.15; text-align: center; }

.citation-app .topbar,
.citation-app .bottombar {
  background: linear-gradient(180deg, #1a1a1a 0%, #090909 100%);
  color: #fff;
  text-align: center;
  text-transform: uppercase;
  font-weight: 800;
  letter-spacing: .03em;
}

.citation-app .topbar {
  padding: 10px 12px 8px;
  font-size: 28px;
}

.citation-app .bottombar {
  padding: 9px 12px 7px;
  font-size: 30px;
}

.citation-app .row {
  display: grid;
  border-top: 1px solid #202020;
  min-height: 31px;
  background: #fff;
}

.citation-app .cell {
  border-right: 1px solid #202020;
  padding: 5px 7px;
  position: relative;
  min-height: 31px;
}

.citation-app .cell:last-child {
  border-right: none;
}

.citation-app .bigtext,
.citation-app .midtext,
.citation-app .smalltext {
  font-weight: 700;
  line-height: 1.15;
  text-transform: uppercase;
}

.citation-app .bigtext { font-size: 16px; }
.citation-app .midtext { font-size: 12px; }
.citation-app .smalltext,
.citation-app .plain { font-size: 10px; }
.citation-app .center { text-align: center; }
.citation-app .vcenter { display: flex; align-items: center; }
.citation-app .between { display: flex; justify-content: space-between; align-items: center; }

.citation-app .barcode {
  height: 46px;
  width: 100%;
  border: 1px solid #555;
  background: repeating-linear-gradient(90deg, #111 0px, #111 2px, #fff 2px, #fff 4px, #111 4px, #111 5px, #fff 5px, #fff 7px, #111 7px, #111 8px, #fff 8px, #fff 11px);
}

.citation-app .vertical-label {
  background: linear-gradient(180deg, #222 0%, #111 100%);
  color: #fff;
  writing-mode: vertical-rl;
  transform: rotate(180deg);
  text-align: center;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  padding: 8px 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.citation-app .checks {
  display: grid;
  gap: 3px;
}

.citation-app .checkrow {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 9px;
  font-weight: 700;
  text-transform: uppercase;
}

.citation-app .box {
  width: 12px;
  height: 12px;
  border: 1px solid #222;
  display: inline-block;
  background: #fff;
  flex: 0 0 auto;
}

.citation-app .box.large {
  width: 24px;
  height: 24px;
}

.citation-app .box.checked {
  background: linear-gradient(135deg, #0f172a 0%, #0f172a 42%, #fff 42%, #fff 58%, #0f172a 58%, #0f172a 100%);
}

.citation-app .citation-paper-line,
.citation-app .citation-paper-field {
  min-height: 24px;
  border-bottom: 2px dashed #999;
  margin-top: 6px;
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
}

.citation-app .citation-paper-field {
  border: 1px solid #555;
  padding: 4px 8px;
  margin-top: 0;
}

.citation-app .citation-paper-token {
  font-size: 26px;
  font-weight: 500;
  letter-spacing: .03em;
}

.citation-app .citation-paper-compact-note {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px 8px;
  padding: 6px 10px;
  font-size: 10px;
  line-height: 1.2;
}

.citation-app .citation-paper-line.citation-paper-line-compact {
  min-width: 122px;
  min-height: 18px;
  margin-top: 0;
  display: inline-flex;
  align-items: flex-end;
  font-size: 12px;
}

.citation-app .citation-paper-metrics {
  display: grid;
  gap: 6px;
  align-content: center;
  padding: 6px 8px;
}

.citation-app .citation-paper-metrics .metric {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.citation-app .citation-paper-metrics .label {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.citation-app .citation-paper-metrics .value {
  font-size: 18px;
  font-weight: 700;
  letter-spacing: .02em;
  text-transform: uppercase;
}

.citation-app .citation-paper-vehicle-meta {
  align-items: end;
}

.citation-app .citation-paper-plate-block {
  display: grid;
  gap: 4px;
}

.citation-app .citation-paper-plate-label {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.citation-app .citation-paper-plate-value {
  font-size: 22px;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.citation-app .form-panel {
  min-width: 0;
  min-height: 0;
  max-height: 100%;
  display: grid;
  gap: calc(10px * var(--citation-side-scale));
  align-self: stretch;
  overflow: auto;
  padding-right: 4px;
}

.citation-app .citation-fields-column .panel-stack {
  min-height: 0;
  overflow: auto;
  padding: 12px;
  display: grid;
  gap: calc(10px * var(--citation-side-scale));
}

.citation-app #citation-fields-offense {
  order: -1;
}

.citation-app .card,
.citation-app .panel {
  background: rgba(255,255,255,.95);
  border: 1px solid rgba(0,0,0,.1);
  border-radius: calc(14px * var(--citation-side-scale));
  padding: calc(12px * var(--citation-side-scale));
  box-shadow: 0 6px 16px rgba(0,0,0,.04);
}

.citation-app .card h3 {
  margin: 0 0 calc(8px * var(--citation-side-scale));
  font-size: calc(11px * var(--citation-side-scale));
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.citation-app .citation-card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: calc(8px * var(--citation-side-scale));
  margin-bottom: calc(8px * var(--citation-side-scale));
}

.citation-app .citation-card-head h3 {
  margin: 0;
}

.citation-app .citation-card-actions {
  display: flex;
  align-items: center;
  gap: calc(6px * var(--citation-side-scale));
}

.citation-app .citation-icon-btn,
.citation-app .citation-inline-add {
  width: calc(20px * var(--citation-side-scale));
  height: calc(20px * var(--citation-side-scale));
  border: 1px solid rgba(0,0,0,.18);
  border-radius: calc(6px * var(--citation-side-scale));
  background: #fff;
  color: #0f172a;
  font-size: calc(11px * var(--citation-side-scale));
  font-weight: 800;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

.citation-app .citation-icon-btn-danger {
  color: #9b1c1c;
  border-color: rgba(155,28,28,.28);
  background: #fff6f6;
}

.citation-app .fields {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: calc(8px * var(--citation-side-scale));
}

.citation-app .citation-field-span {
  grid-column: 1 / -1;
}

.citation-app .field {
  display: grid;
  gap: calc(4px * var(--citation-side-scale));
}

.citation-app .field label {
  font-size: calc(8px * var(--citation-side-scale));
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #555;
}

.citation-app .field input,
.citation-app .field textarea,
.citation-app .field select {
  width: 100%;
  border: 1px solid rgba(0,0,0,.12);
  border-radius: calc(8px * var(--citation-side-scale));
  background: #fff;
  padding: calc(7px * var(--citation-side-scale)) calc(8px * var(--citation-side-scale));
  font: inherit;
  font-size: calc(11px * var(--citation-side-scale));
  color: #111;
}

.citation-app .field textarea {
  min-height: calc(62px * var(--citation-side-scale));
  resize: vertical;
}

.citation-app .citation-inline-field {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: calc(6px * var(--citation-side-scale));
  align-items: center;
}

.citation-app .citation-violation-stack {
  display: grid;
  gap: calc(8px * var(--citation-side-scale));
}

.citation-app .citation-violation-block {
  border: 1px solid rgba(0,0,0,.1);
  border-radius: calc(10px * var(--citation-side-scale));
  padding: calc(8px * var(--citation-side-scale));
  background: #fafafa;
}

.citation-app .citation-violation-block-head,
.citation-app .citation-violation-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: calc(6px * var(--citation-side-scale));
  flex-wrap: wrap;
}

.citation-app .citation-violation-meta {
  margin-top: calc(6px * var(--citation-side-scale));
  font-size: calc(9px * var(--citation-side-scale));
  color: #475569;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.citation-app .citation-violation-name {
  margin-top: calc(6px * var(--citation-side-scale));
  font-size: calc(11px * var(--citation-side-scale));
  font-weight: 700;
}

.citation-app .citation-signature-input,
.citation-app .citation-signature-paper {
  font-family: "Brush Script MT", "Segoe Script", cursive;
  letter-spacing: .03em;
}
.citation-app .citation-preview-signature-grid .citation-signature-paper {
  font-size: 15px;
  line-height: 1;
}

.citation-app .field input[readonly],
.citation-app .field textarea[readonly],
.citation-app .field select:disabled {
  color: #334155;
  background: #eef2f7;
  border-style: dashed;
}

.citation-validation-list {
  margin: 10px 0 0;
  padding-left: 18px;
  display: grid;
  gap: 5px;
  color: #7f1d1d;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.35;
}

.citation-app .citation-violation-paper-list {
  margin-top: 14px;
  display: grid;
  gap: 6px;
}

.citation-app .citation-violation-line {
  font-size: 11px;
  line-height: 1.25;
}

.citation-app .citation-violation-line strong {
  text-transform: uppercase;
}

.citation-app .inline-checks {
  display: grid;
  gap: calc(5px * var(--citation-side-scale));
  margin-top: calc(8px * var(--citation-side-scale));
  font-size: calc(11px * var(--citation-side-scale));
  font-weight: 700;
}

.citation-app .inline-checks label {
  display: flex;
  align-items: center;
  gap: calc(7px * var(--citation-side-scale));
}

.citation-modal-host {
  position: absolute;
  inset: 0;
  background: rgba(15, 23, 42, .55);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 30;
}

.citation-modal-shell {
  width: min(860px, 92%);
  max-height: 88%;
}

.citation-modal-shell.citation-confirm-shell {
  width: min(520px, 92%);
}

.citation-modal-window {
  background: #fff;
  border: 1px solid rgba(0,0,0,.12);
  border-radius: 16px;
  box-shadow: 0 20px 48px rgba(15, 23, 42, .25);
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.citation-window .citation-modal-host {
  background: rgba(15, 23, 42, .42);
  padding: 16px;
}

.citation-window .citation-modal-shell,
.citation-window .booking-modal-shell {
  width: min(650px, 96vw);
  max-height: calc(100vh - 32px);
}

.citation-window .citation-confirm-shell {
  width: min(520px, 92vw);
}

.citation-window .citation-modal-shell.citation-confirm-shell {
  width: min(520px, 92vw);
}

.citation-window .citation-person-shell,
.citation-window .citation-vehicle-shell,
.citation-window .citation-call-shell,
.citation-window .citation-officer-shell {
  width: min(650px, 96vw);
}

.citation-window .citation-statute-shell {
  width: min(980px, 96vw);
}

.citation-window .citation-modal-window,
.citation-window .booking-modal-window {
  background: rgba(255,255,255,.95);
  border: 1px solid rgba(148, 163, 184, .32);
  border-radius: 14px;
  box-shadow: 0 14px 40px rgba(0,0,0,.32), inset 0 1px 0 rgba(255,255,255,.85);
  backdrop-filter: blur(9px);
}

.citation-modal-window header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding: 16px 18px 14px;
  border-bottom: 1px solid rgba(0,0,0,.08);
}

.citation-window .citation-modal-window header,
.citation-window .booking-modal-window header {
  align-items: flex-start;
  gap: 12px;
  padding: 22px 24px 18px;
  border-bottom: 1px solid #d7dce4;
}

.citation-window .booking-modal-title-wrap {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}

.citation-window .booking-modal-badge {
  width: 38px;
  height: 38px;
  border-radius: 999px;
  background: #eef1f5;
  color: #101827;
  display: grid;
  place-items: center;
  box-shadow: inset 0 -4px 8px rgba(15, 23, 42, .05);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .02em;
  flex: 0 0 auto;
}

.citation-modal-window header h3 {
  margin: 0;
  font-size: 15px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.citation-window .citation-modal-window header h3,
.citation-window .booking-modal-window header h3 {
  font-size: 18px;
  letter-spacing: -.02em;
  line-height: 1.08;
  text-transform: none;
  color: #101827;
}

.citation-modal-window header p {
  margin: 5px 0 0;
  font-size: 11px;
  color: #64748b;
}

.citation-window .citation-modal-window header p,
.citation-window .booking-modal-window header p {
  margin: 6px 0 0;
  font-size: 10px;
  color: #667085;
}

.citation-modal-close {
  border: 1px solid rgba(0,0,0,.14);
  border-radius: 8px;
  background: #fff;
  min-width: 34px;
  height: 34px;
  font-weight: 800;
  cursor: pointer;
}

.citation-window .citation-modal-close {
  width: 28px;
  min-width: 28px;
  height: 28px;
  border: 1px solid #cfd6df;
  border-radius: 9px;
  background: #f8fafc;
  font-size: 14px;
  line-height: 1;
  color: #0f172a;
  box-shadow: 0 4px 10px rgba(15, 23, 42, .12);
}

.citation-modal-body {
  padding: 16px 18px 18px;
  display: grid;
  gap: 12px;
  overflow: auto;
}

.citation-window .citation-modal-body {
  padding: 16px 24px 22px;
  gap: 10px;
}

.citation-modal-tabs {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

.citation-window .citation-modal-tabs {
  gap: 10px;
  margin-top: 0;
}

.citation-modal-tabs button,
.citation-modal-toolbar button {
  border: 1px solid rgba(0,0,0,.14);
  border-radius: 10px;
  background: #fff;
  padding: 9px 12px;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
}

.citation-window .citation-modal-tabs button,
.citation-window .citation-modal-toolbar button {
  border: 1px solid #d3d8e1;
  background: #ffffff;
  color: #111827;
  padding: 10px 14px;
  border-radius: 6px;
  font-size: 10px;
  font-weight: 800;
  box-shadow: 0 2px 6px rgba(15, 23, 42, .06);
}

.citation-modal-tabs button.active,
.citation-modal-toolbar .primary,
.citation-search-result .primary {
  background: #0f172a;
  color: #fff;
  border-color: #0f172a;
}

.citation-window .citation-modal-tabs button.active,
.citation-window .citation-modal-toolbar .primary,
.citation-window .citation-search-result .primary {
  background: #101827;
  color: #fff;
  border-color: #101827;
  box-shadow: 0 6px 12px rgba(15, 23, 42, .22);
}

.citation-modal-toolbar .danger {
  background: #991b1b;
  color: #fff;
  border-color: #991b1b;
}

.citation-window .citation-modal-toolbar .danger {
  background: #991b1b;
  color: #fff;
  border-color: #991b1b;
  box-shadow: 0 6px 12px rgba(153, 27, 27, .22);
}

.citation-confirm-copy {
  display: grid;
  gap: 6px;
}

.citation-confirm-copy p {
  margin: 0;
  color: #0f172a;
  font-size: 14px;
  font-weight: 800;
  line-height: 1.35;
}

.citation-confirm-copy span {
  color: #475569;
  font-size: 12px;
  line-height: 1.45;
}

.citation-confirm-actions {
  justify-content: flex-end;
}

.citation-modal-fields {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.citation-window .citation-modal-fields {
  gap: 8px;
}

.citation-modal-fields-single {
  grid-template-columns: 1fr;
}

.citation-window .citation-modal-body .field {
  margin-top: 0;
}

.citation-window .citation-modal-body .field label,
.citation-window .citation-modal-body label {
  display: block;
  font-size: 10px;
  font-weight: 850;
  margin-bottom: 8px;
  color: #111827;
}

.citation-window .citation-modal-body .field input,
.citation-window .citation-modal-body .field select,
.citation-window .citation-modal-body .field textarea {
  min-height: 34px;
  border: 1.5px solid #c8d0db;
  background: #fff;
  border-radius: 6px;
  padding: 10px 12px;
  font-size: 10px;
  color: #111827;
  box-shadow: inset 0 1px 1px rgba(15, 23, 42, .03);
}

.citation-window .booking-modal-name-dob-grid {
  display: grid;
  grid-template-columns: minmax(88px, 1.2fr) minmax(88px, 1.2fr) 64px minmax(132px, 1fr);
  gap: 8px;
}

.citation-window .booking-modal-name-dob-grid input {
  min-width: 0;
}

.citation-modal-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}

.citation-window .citation-modal-toolbar {
  align-items: center;
  gap: 10px;
}

.citation-modal-status {
  font-size: 12px;
  font-weight: 700;
  color: #475569;
}

.citation-window .citation-modal-status {
  font-size: 10px;
  color: #667085;
}

.citation-modal-status.error {
  color: #b42318;
}

.citation-modal-results {
  display: grid;
  gap: 10px;
}

.citation-window .citation-law-results {
  max-height: calc((72px * 7) + (10px * 6));
  overflow-y: auto;
  overflow-x: hidden;
  overscroll-behavior: contain;
  padding-right: 4px;
}

.citation-window .citation-call-results {
  max-height: calc((98px * 5) + (10px * 4));
  overflow-y: auto;
  overflow-x: hidden;
  overscroll-behavior: contain;
  padding-right: 4px;
}

.booking-app .citation-modal-results {
  max-height: 320px;
  padding-right: 4px;
  overflow-y: auto;
  overflow-x: hidden;
}

.booking-app .booking-law-results {
  max-height: min(52vh, 440px);
  align-content: start;
}

.booking-window .mdt-modal.booking-statute-modal {
  width: min(860px, 94%);
  max-height: min(86vh, 760px);
}

.booking-window .mdt-modal.booking-statute-modal footer {
  display: none;
}

.booking-window .mdt-modal-body.booking-statute-modal-body {
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-height: 0;
  overflow: hidden;
}

.booking-window .booking-law-results.scroll-snap-card {
  flex: 1 1 auto;
  min-height: 0;
  max-height: none;
  padding-right: 6px;
  overflow-y: auto;
  overflow-x: hidden;
  scroll-snap-type: y proximity;
  overscroll-behavior: contain;
}

.citation-modal-empty {
  border: 1px dashed rgba(100,116,139,.35);
  border-radius: 12px;
  padding: 20px 16px;
  color: #64748b;
  text-align: center;
  font-size: 12px;
}

.citation-window .citation-modal-empty {
  border-color: #cfd6df;
  border-radius: 8px;
  background: #f8fafc;
  color: #667085;
}

.citation-search-result {
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 12px;
  padding: 12px 14px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  background: #fbfbfb;
}

.citation-window .citation-search-result {
  border: 1px solid #d7dce4;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 2px 10px rgba(15, 23, 42, .05);
}

.citation-window .citation-search-result:hover {
  border-color: #aeb8c6;
  box-shadow: 0 6px 18px rgba(15, 23, 42, .08);
}

.citation-search-result-copy {
  display: grid;
  gap: 4px;
}

.citation-window .citation-search-result-copy {
  min-width: 0;
}

.citation-search-result-copy strong {
  font-size: 13px;
}

.citation-window .citation-search-result-copy strong {
  color: #101827;
  font-size: 12px;
  overflow-wrap: anywhere;
}

.citation-search-result-copy span,
.citation-search-result-copy small {
  color: #475569;
}

.citation-window .citation-search-result-copy span,
.citation-window .citation-search-result-copy small {
  color: #667085;
  font-size: 10px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.citation-window .citation-statute-shell .citation-law-results {
  max-height: calc((64px * 7) + (10px * 6));
}

.citation-window .citation-statute-shell .citation-search-result {
  padding: 12px 14px;
}

.citation-window .citation-statute-shell .citation-search-result-copy {
  display: grid;
  grid-template-columns: minmax(190px, 240px) minmax(0, 1fr) minmax(160px, 190px);
  gap: 0;
  align-items: center;
  width: 100%;
}

.citation-window .citation-statute-shell .citation-search-result-copy strong,
.citation-window .citation-statute-shell .citation-search-result-copy span,
.citation-window .citation-statute-shell .citation-search-result-copy small {
  margin: 0;
  padding: 0 14px;
  white-space: normal;
  overflow-wrap: anywhere;
}

.citation-window .citation-statute-shell .citation-search-result-copy > * + * {
  border-left: 1px solid rgba(148, 163, 184, .26);
}

.citation-window .citation-statute-shell .citation-search-result-copy strong {
  padding-left: 0;
  white-space: nowrap;
}

.citation-window .citation-statute-shell .citation-search-result-copy small {
  padding-right: 0;
  text-align: right;
}

@media (max-width: 960px) {
  .citation-app {
    grid-template-columns: 1fr;
  }

  .citation-app .sidebar {
    position: static;
  }

  .citation-app .content {
    grid-template-columns: 1fr;
  }

  .citation-app .citation-content-divider {
    display: none;
  }

  .citation-app .paper {
    width: 100%;
  }
}

@media (max-width: 780px) {
  .citation-home-shell,
  .citation-app {
    padding: 10px;
  }

  .citation-app .fields {
    grid-template-columns: 1fr;
  }

  .citation-app .topbar {
    font-size: 20px;
  }

  .citation-app .bottombar {
    font-size: 22px;
  }
}

.booking-window .app-window-body {
  padding: 0;
  height: calc(100% - 72px);
  overflow: hidden;
  background: linear-gradient(180deg, #eef2f6 0%, #dde3ea 100%);
  color: #111;
}

.booking-window .citation-modal-host {
  background: transparent;
  padding: 16px;
}

.booking-window .citation-modal-shell,
.booking-window .booking-modal-shell {
  width: min(550px, 96vw);
  max-height: calc(100vh - 32px);
}

.booking-window .booking-report-import-shell {
  width: min(1100px, 96vw);
}

.booking-window .booking-agency-call-shell {
  width: min(650px, 96vw);
}

.booking-window .booking-officer-shell {
  width: min(650px, 96vw);
}

.booking-window .booking-statute-shell {
  width: min(1650px, 96vw);
}

.booking-window .booking-statute-shell .booking-law-results.scroll-snap-card .slide {
  min-height: 0;
  height: auto;
}

.booking-window .booking-statute-shell .booking-law-result {
  padding: 12px 14px;
}

.booking-window .booking-statute-shell .booking-law-option {
  grid-template-columns: auto minmax(0, 1fr);
  gap: 14px;
  align-items: center;
}

.booking-window .booking-statute-shell .booking-law-option .citation-search-result-copy {
  display: grid;
  grid-template-columns: minmax(220px, 260px) minmax(0, 1fr) minmax(120px, 150px) minmax(100px, 130px);
  gap: 0;
  align-items: center;
  min-width: 0;
}

.booking-window .booking-statute-shell .booking-law-option .citation-search-result-copy strong,
.booking-window .booking-statute-shell .booking-law-option .citation-search-result-copy span,
.booking-window .booking-statute-shell .booking-law-option .citation-search-result-copy small {
  white-space: normal;
  overflow-wrap: anywhere;
  line-height: 1.35;
  padding: 0 14px;
  margin: 0;
}

.booking-window .booking-statute-shell .booking-law-option .citation-search-result-copy > * + * {
  border-left: 1px solid rgba(148, 163, 184, .26);
}

.booking-window .booking-statute-shell .booking-law-option .citation-search-result-copy strong {
  font-size: 13px;
  padding-left: 0;
  white-space: nowrap;
}

.booking-window .booking-statute-shell .booking-law-option .citation-search-result-copy span {
  font-size: 12px;
}

.booking-window .booking-statute-shell .booking-law-option .booking-law-type,
.booking-window .booking-statute-shell .booking-law-option .citation-search-result-copy small {
  font-size: 11px;
  white-space: nowrap;
  text-align: center;
}

.booking-window .booking-statute-shell .booking-law-option .booking-law-fine {
  text-align: right;
  padding-right: 0;
}

.booking-window .citation-modal-window,
.booking-window .booking-modal-window {
  background: rgba(255,255,255,.94);
  border: 1px solid rgba(148, 163, 184, .32);
  border-radius: 14px;
  box-shadow: 0 14px 40px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.85);
  backdrop-filter: blur(9px);
}

.booking-window .citation-modal-window header,
.booking-window .booking-modal-window header {
  align-items: flex-start;
  gap: 12px;
  padding: 22px 24px 18px;
  border-bottom: 1px solid #d7dce4;
}

.booking-window .booking-modal-title-wrap {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}

.booking-window .booking-modal-badge {
  width: 38px;
  height: 38px;
  border-radius: 999px;
  background: #eef1f5;
  display: grid;
  place-items: center;
  box-shadow: inset 0 -4px 8px rgba(15, 23, 42, .05);
  font-size: 18px;
  flex: 0 0 auto;
}

.booking-window .citation-modal-window header h3,
.booking-window .booking-modal-window header h3 {
  font-size: 18px;
  letter-spacing: -.04em;
  line-height: 1.08;
  text-transform: none;
  color: #101827;
}

.booking-window .citation-modal-window header p,
.booking-window .booking-modal-window header p {
  margin: 6px 0 0;
  font-size: 10px;
  color: #667085;
}

.booking-window .citation-modal-close {
  width: 28px;
  min-width: 28px;
  height: 28px;
  border: 1px solid #cfd6df;
  border-radius: 9px;
  background: #f8fafc;
  font-size: 18px;
  line-height: 1;
  color: #0f172a;
  box-shadow: 0 4px 10px rgba(15, 23, 42, .12);
}

.booking-window .citation-modal-body {
  padding: 16px 24px 22px;
  gap: 10px;
}

.booking-window .citation-modal-tabs {
  gap: 10px;
  margin-top: 0;
}

.booking-window .citation-modal-tabs button,
.booking-window .citation-modal-toolbar button {
  border: 1px solid #d3d8e1;
  background: #ffffff;
  color: #111827;
  padding: 10px 14px;
  border-radius: 6px;
  font-size: 10px;
  font-weight: 800;
  box-shadow: 0 2px 6px rgba(15, 23, 42, .06);
}

.booking-window .citation-modal-tabs button.active,
.booking-window .citation-modal-toolbar .primary,
.booking-window .citation-search-result .primary {
  background: #101827;
  color: #fff;
  border-color: #101827;
  box-shadow: 0 6px 12px rgba(15, 23, 42, .22);
}

.booking-window .citation-modal-fields {
  gap: 8px;
}

.booking-window .citation-modal-body .field {
  margin-top: 0;
}

.booking-window .citation-modal-body .field label,
.booking-window .citation-modal-body label {
  display: block;
  font-size: 10px;
  font-weight: 850;
  margin-bottom: 8px;
  color: #111827;
}

.booking-window .citation-modal-body .field input,
.booking-window .citation-modal-body .field select,
.booking-window .citation-modal-body .field textarea {
  min-height: 34px;
  border: 1.5px solid #c8d0db;
  background: #fff;
  border-radius: 6px;
  padding: 10px 12px;
  font-size: 10px;
  color: #111827;
  box-shadow: inset 0 1px 1px rgba(15, 23, 42, .03);
}

.booking-window .citation-modal-body .field textarea {
  min-height: 70px;
}

.booking-window .booking-modal-name-dob-grid {
  display: grid;
  grid-template-columns: minmax(88px, 1.2fr) minmax(88px, 1.2fr) 64px minmax(132px, 1fr);
  gap: 8px;
}

.booking-window .booking-modal-name-dob-grid input {
  width: 100%;
}

.booking-window .citation-modal-toolbar {
  gap: 8px;
}

.booking-window .citation-modal-status {
  font-size: 10px;
  font-weight: 700;
}

.booking-window .citation-modal-results {
  gap: 8px;
  max-height: min(40vh, 210px);
  padding-right: 4px;
}

.booking-window .citation-modal-empty {
  min-height: 110px;
  border: 1.5px dashed #b9c2cf;
  border-radius: 9px;
  display: grid;
  place-items: center;
  text-align: center;
  color: #667085;
  background: rgba(248, 250, 252, .45);
  font-size: 10px;
}

.booking-window .citation-search-result,
.booking-window .booking-law-result {
  border: 1.5px solid rgba(148, 163, 184, .24);
  border-radius: 9px;
  padding: 10px 12px;
  background: rgba(255,255,255,.82);
  box-shadow: 0 4px 10px rgba(15, 23, 42, .05);
}

.booking-window .citation-search-result-copy {
  gap: 4px;
}

.booking-window .citation-search-result-copy strong {
  font-size: 12px;
  color: #101827;
}

.booking-window .citation-search-result-copy span,
.booking-window .citation-search-result-copy small {
  font-size: 10px;
  color: #667085;
}

@media (max-width: 720px) {
  .booking-window .booking-modal-name-dob-grid {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 520px) {
  .booking-window .booking-modal-name-dob-grid {
    grid-template-columns: 1fr;
  }
}

.booking-window .booking-law-option {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 8px;
  align-items: start;
  width: 100%;
  cursor: pointer;
}

.booking-window .booking-law-option .citation-search-result-copy {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.booking-window .booking-law-option .citation-search-result-copy strong,
.booking-window .booking-law-option .citation-search-result-copy span,
.booking-window .booking-law-option .citation-search-result-copy small {
  margin: 0;
  white-space: normal;
  overflow-wrap: anywhere;
}

.booking-window .booking-law-option input[type="radio"] {
  margin-top: 3px;
}

.booking-window .booking-call-results {
  max-height: 320px;
  overflow: auto;
  display: grid;
  gap: 10px;
  padding-right: 4px;
}

.citation-window .citation-call-results {
  max-height: calc((112px * 5) + (10px * 4));
  overflow-y: auto;
  overflow-x: hidden;
  overscroll-behavior: contain;
}

.booking-window .booking-call-result {
  border: 1.5px solid rgba(148, 163, 184, .24);
  border-radius: 9px;
  padding: 10px 12px;
  background: rgba(255,255,255,.82);
  box-shadow: 0 4px 10px rgba(15, 23, 42, .05);
}

.booking-window .booking-call-option {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  width: 100%;
  cursor: pointer;
}

.booking-window .booking-call-option input[type="radio"] {
  margin-top: 3px;
}

.booking-window .booking-call-copy {
  display: grid;
  gap: 8px;
  min-width: 0;
}

.booking-window .booking-call-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
  gap: 10px 14px;
  align-items: end;
}

.booking-window .booking-call-key {
  min-width: 0;
}

.booking-window .booking-call-key small {
  display: block;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: #667085;
  margin-bottom: 3px;
}

.booking-window .booking-call-key strong {
  display: block;
  font-size: 13px;
  color: #101827;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.booking-window .booking-call-type {
  align-self: start;
  justify-self: end;
  font-size: 11px;
  font-weight: 700;
  color: #274c8e;
  background: rgba(39, 76, 142, .08);
  border: 1px solid rgba(39, 76, 142, .14);
  border-radius: 999px;
  padding: 4px 10px;
  text-align: center;
}

.booking-window .booking-call-meta-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 12px;
}

.booking-window .booking-call-meta-item {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.booking-window .booking-call-meta-item b {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
  color: #667085;
}

.booking-window .booking-call-meta-item span {
  font-size: 12px;
  line-height: 1.35;
  color: #344054;
  overflow-wrap: anywhere;
}

.booking-window .booking-call-meta-span {
  grid-column: 1 / -1;
}

.booking-window .booking-officer-results {
  max-height: calc(5 * 72px);
  overflow: auto;
  display: grid;
  gap: 10px;
  padding-right: 4px;
}

.booking-window .booking-officer-result {
  border: 1.5px solid rgba(148, 163, 184, .24);
  border-radius: 9px;
  padding: 10px 12px;
  min-height: 62px;
  background: rgba(255,255,255,.82);
  box-shadow: 0 4px 10px rgba(15, 23, 42, .05);
}

.booking-window .booking-officer-option {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  width: 100%;
  cursor: pointer;
}

.booking-window .booking-officer-option input[type="radio"] {
  margin-top: 3px;
}

.booking-window .booking-officer-copy {
  display: grid;
  gap: 8px;
  min-width: 0;
}

.booking-window .booking-officer-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px 14px;
  align-items: end;
}

.booking-window .booking-officer-key {
  min-width: 0;
}

.booking-window .booking-officer-key small {
  display: block;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: #667085;
  margin-bottom: 3px;
}

.booking-window .booking-officer-key strong {
  display: block;
  font-size: 13px;
  color: #101827;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.booking-window .booking-officer-unit {
  align-self: start;
  justify-self: end;
  font-size: 11px;
  font-weight: 700;
  color: #274c8e;
  background: rgba(39, 76, 142, .08);
  border: 1px solid rgba(39, 76, 142, .14);
  border-radius: 999px;
  padding: 4px 10px;
  text-align: center;
}

.booking-window .booking-officer-meta-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 12px;
}

.booking-window .booking-officer-meta-item {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.booking-window .booking-officer-meta-item b {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
  color: #667085;
}

.booking-window .booking-officer-meta-item span {
  font-size: 12px;
  line-height: 1.35;
  color: #344054;
  overflow-wrap: anywhere;
}

.citation-window .booking-call-results,
.citation-window .booking-officer-results {
  overflow: auto;
  display: grid;
  gap: 10px;
  padding-right: 4px;
}

.citation-window .booking-call-result,
.citation-window .booking-officer-result {
  border: 1.5px solid rgba(148, 163, 184, .24);
  border-radius: 9px;
  padding: 10px 12px;
  background: rgba(255,255,255,.82);
  box-shadow: 0 4px 10px rgba(15, 23, 42, .05);
}

.citation-window .booking-call-option,
.citation-window .booking-officer-option {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  width: 100%;
  cursor: pointer;
}

.citation-window .booking-call-option input[type="radio"],
.citation-window .booking-officer-option input[type="radio"] {
  margin-top: 3px;
}

.citation-window .booking-call-copy,
.citation-window .booking-officer-copy {
  display: grid;
  gap: 8px;
  min-width: 0;
}

.citation-window .booking-call-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
  gap: 10px 14px;
  align-items: end;
}

.citation-window .booking-officer-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px 14px;
  align-items: end;
}

.citation-window .booking-call-key,
.citation-window .booking-officer-key,
.citation-window .booking-call-meta-item,
.citation-window .booking-officer-meta-item {
  min-width: 0;
}

.citation-window .booking-call-key small,
.citation-window .booking-officer-key small,
.citation-window .booking-call-meta-item b,
.citation-window .booking-officer-meta-item b {
  display: block;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
  color: #667085;
  margin-bottom: 3px;
}

.citation-window .booking-call-key strong,
.citation-window .booking-officer-key strong {
  display: block;
  font-size: 13px;
  color: #101827;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.citation-window .booking-call-type,
.citation-window .booking-officer-unit {
  align-self: start;
  justify-self: end;
  font-size: 11px;
  font-weight: 700;
  color: #274c8e;
  background: rgba(39, 76, 142, .08);
  border: 1px solid rgba(39, 76, 142, .14);
  border-radius: 999px;
  padding: 4px 10px;
  text-align: center;
}

.citation-window .booking-call-meta-grid,
.citation-window .booking-officer-meta-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 12px;
}

.citation-window .booking-call-meta-item,
.citation-window .booking-officer-meta-item {
  display: grid;
  gap: 3px;
}

.citation-window .booking-call-meta-item span,
.citation-window .booking-officer-meta-item span {
  font-size: 12px;
  line-height: 1.35;
  color: #344054;
  overflow-wrap: anywhere;
}

.citation-window .booking-call-meta-span {
  grid-column: 1 / -1;
}

@media (max-width: 760px) {
  .booking-window .booking-call-header {
    grid-template-columns: 1fr;
  }

  .booking-window .booking-call-type {
    justify-self: start;
  }

  .booking-window .booking-call-meta-grid {
    grid-template-columns: 1fr;
  }

  .booking-window .booking-officer-header {
    grid-template-columns: 1fr;
  }

  .booking-window .booking-officer-unit {
    justify-self: start;
  }

  .booking-window .booking-officer-meta-grid {
    grid-template-columns: 1fr;
  }
}

.booking-window .booking-report-import-results {
  max-height: min(48vh, 320px);
  overflow: auto;
}

.booking-window .booking-report-import-table {
  min-width: 760px;
}

.booking-window .booking-report-import-row {
  cursor: pointer;
  transition: background-color .18s ease;
}

.booking-window .booking-report-import-row:hover td {
  background: rgba(15, 23, 42, .035);
}

.booking-window .booking-report-import-row.active td {
  background: rgba(21, 94, 239, .08);
  color: #0a50c7;
  font-weight: 700;
}

.booking-window .booking-call-meta-grid span {
  min-width: 0;
  white-space: normal;
  overflow-wrap: anywhere;
}

.booking-home-shell,
.booking-app {
  padding: 18px;
  color: #111;
}

.booking-home-shell {
  width: 100%;
  max-width: none;
  margin: 0;
}

.booking-app {
  width: 100%;
  max-width: none;
  margin: 0;
}

.booking-home-shell {
  min-height: 100%;
  height: 100%;
  padding: 0;
  overflow: auto;
}

.booking-home-hero,
.booking-home-list,
.booking-app .sidebar,
.booking-app .booking-preview-column,
.booking-app .booking-fields-column,
.booking-app .panel {
  background: rgba(255,255,255,.84);
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 18px;
  box-shadow: 0 16px 38px rgba(0,0,0,.12);
  backdrop-filter: blur(10px);
}

.booking-home-eyebrow,
.booking-app .side-label,
.booking-app .field label,
.booking-app .panel h3,
.booking-app .mini-card .k {
  text-transform: uppercase;
  letter-spacing: .12em;
  font-weight: 800;
}

.booking-home-draft button,
.booking-app .toolbar-actions button,
.booking-app .action-row button,
.booking-app .side-btn,
.booking-mini-draft {
  border: 1px solid rgba(0,0,0,.12);
  background: #fff;
  border-radius: 10px;
  padding: 10px 12px;
  font-size: 11px;
  font-weight: 700;
  cursor: pointer;
}

.booking-app .toolbar-actions .primary,
.booking-app .action-row .primary,
.booking-app .side-btn.active {
  background: #0f172a;
  color: #fff;
  border-color: #0f172a;
}

.booking-app .toolbar-actions .danger,
.booking-app .action-row .danger { background: #b42318; color: #fff; border-color: #8f1c13; }
.booking-app .toolbar-actions .danger:hover,
.booking-app .action-row .danger:hover { background: #991b1b; border-color: #7f1d1d; }
.booking-home-list-body,
.booking-mini-drafts,
.booking-app .panel-stack,
.booking-app .checklist { display: grid; gap: 10px; }

.booking-home-list-body-scroll {
  max-height: 308px;
  overflow-y: auto;
  padding-right: 6px;
}

.booking-home-list-body-scroll .booking-home-draft-row:first-child {
  margin-top: 0;
}
.booking-home-empty { padding: 22px; text-align: center; border: 1px dashed rgba(0,0,0,.18); border-radius: 14px; background: rgba(255,255,255,.6); }

.booking-home-shell-grid {
  width: 100%;
  min-height: 100%;
  height: 100%;
  display: grid;
  grid-template-columns: 72px 1fr;
  background: #f8fafc;
  border: 0;
  border-radius: 0;
  overflow: hidden;
}

.booking-home-sidebar {
  background: linear-gradient(180deg, #071935 0%, #143c78 100%);
  padding: 22px 12px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 24px;
  color: #fff;
}

.booking-home-shield {
  width: 40px;
  height: 40px;
  border: 2px solid rgba(255,255,255,.85);
  border-radius: 14px 14px 18px 18px;
  display: grid;
  place-items: center;
  font-size: 18px;
  margin-bottom: 12px;
}

.booking-home-shield .booking-home-app-icon,
.booking-home-shield .or-icon-image {
  width: 24px;
  height: 24px;
  display: grid;
  place-items: center;
}

.booking-home-shield .booking-home-app-icon img,
.booking-home-shield .or-icon-image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

.booking-home-nav-icon {
  width: 48px;
  height: 48px;
  border-radius: 10px;
  display: grid;
  place-items: center;
  color: rgba(255,255,255,.78);
  font-size: 22px;
  background: linear-gradient(135deg, rgba(255,255,255,.08), rgba(255,255,255,0));
  background-size: 200% 200%;
  transition: background-position 1.4s ease, background-color 1.4s ease, color 1.4s ease, box-shadow 1.4s ease, transform .3s ease;
}

.booking-home-nav-icon.active {
  background: #fff;
  color: #0f4bc2;
  box-shadow: 0 12px 28px rgba(0,0,0,.22);
}

.booking-home-nav-icon:hover {
  background-position: 100% 100%;
  transform: translateY(-1px);
}

.booking-home-nav-icon-disabled {
  opacity: .38;
  cursor: default;
  pointer-events: none;
}

.booking-home-help {
  margin-top: auto;
}

.booking-home-main {
  padding: 26px 28px 34px;
  overflow: auto;
}

.booking-home-topbar {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  margin-bottom: 20px;
}

.booking-home-user-chip {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: #0b1d42;
  font-weight: 800;
  font-size: 15px;
}

.booking-home-avatar {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: #e8edf5;
  display: grid;
  place-items: center;
  font-size: 19px;
}

.booking-home-hero,
.booking-home-list {
  background: #fff;
  border: 1px solid #e1e7f0;
  border-radius: 16px;
  box-shadow: 0 12px 36px rgba(15, 23, 42, .07);
  backdrop-filter: none;
}

.booking-home-hero {
  position: relative;
  padding: 36px 38px 28px;
  overflow: hidden;
  min-height: 285px;
}

.booking-home-skyline {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 48%;
  height: 100%;
  opacity: .68;
  background:
    radial-gradient(circle at 70% 32%, rgba(255, 212, 128, .65) 0 12%, transparent 13%),
    linear-gradient(to top, rgba(196, 214, 238, .95), rgba(232, 240, 250, .25) 48%, transparent 49%);
  clip-path: polygon(0 68%, 10% 57%, 18% 66%, 26% 48%, 35% 63%, 43% 44%, 47% 62%, 52% 35%, 56% 62%, 61% 42%, 66% 65%, 73% 50%, 78% 67%, 84% 45%, 88% 66%, 94% 52%, 100% 69%, 100% 100%, 0 100%);
}

.booking-home-hero-content {
  position: relative;
  z-index: 1;
  max-width: 760px;
}

.booking-home-eyebrow {
  color: #0a50c7;
  font-size: 13px;
  letter-spacing: .14em;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 12px;
}

.booking-home-hero h1 {
  margin: 0;
  font-size: clamp(32px, 4vw, 48px);
  line-height: 1.08;
  letter-spacing: -.045em;
  color: #07122d;
}

.booking-home-hero p {
  margin: 16px 0 30px;
  color: #5c667a;
  font-size: 18px;
  line-height: 1.55;
}

.booking-home-actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(220px, 1fr));
  gap: 20px;
  position: relative;
  z-index: 1;
}

.booking-home-action-card {
  border: 1px solid #e1e7f0;
  background: linear-gradient(135deg, rgba(255,255,255,.97) 0%, rgba(243,248,255,.96) 50%, rgba(230,239,252,.98) 100%);
  background-size: 220% 220%;
  border-radius: 12px;
  padding: 20px;
  display: grid;
  grid-template-columns: 48px 1fr 24px;
  align-items: center;
  gap: 16px;
  box-shadow: 0 10px 24px rgba(15, 23, 42, .08);
  cursor: pointer;
  transition: background-position 1.6s ease, border-color 1.2s ease, box-shadow 1.2s ease, transform .3s ease;
}

.booking-home-action-card.primary {
  background: linear-gradient(135deg, #0b1d42, #0f3f86);
  background-size: 220% 220%;
  color: #fff;
  border-color: #102f67;
}

.booking-home-action-card:hover {
  background-position: 100% 100%;
  border-color: #c9d7ec;
  box-shadow: 0 16px 34px rgba(15, 23, 42, .12);
  transform: translateY(-2px);
}

.booking-home-action-icon {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: #eaf1ff;
  color: #0f4bc2;
  font-size: 22px;
}

.booking-home-action-icon.green { background: #e8f7ec; color: #168044; }
.booking-home-action-icon.purple { background: #efe7ff; color: #673acb; }
.booking-home-action-card.primary .booking-home-action-icon { background: rgba(255,255,255,.13); color: #fff; }

.booking-home-action-title {
  font-weight: 900;
  font-size: 17px;
  margin-bottom: 5px;
}

.booking-home-action-subtitle {
  color: #64708a;
  font-size: 14px;
}

.booking-home-action-card.primary .booking-home-action-subtitle {
  color: rgba(255,255,255,.72);
}

.booking-home-chev {
  font-size: 28px;
  font-weight: 300;
}

.booking-home-list {
  margin-top: 24px;
  padding: 26px 28px 32px;
}

.booking-home-columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  margin-top: 24px;
  align-items: start;
}

.booking-home-columns .booking-home-list {
  margin-top: 0;
}

.booking-home-list-wide {
  margin-top: 24px;
}

.booking-home-list-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid #e7edf5;
  padding-bottom: 18px;
  margin-bottom: 16px;
  position: relative;
}

.booking-home-draft-title {
  display: flex;
  align-items: center;
  gap: 14px;
  font-size: 21px;
  font-weight: 950;
  color: #07122d;
}

.booking-home-draft-title::after {
  content: "";
  position: absolute;
  width: 118px;
  height: 3px;
  background: #155eef;
  border-radius: 999px;
  transform: translateY(35px);
}

.booking-home-draft-count {
  color: #475467;
  font-size: 15px;
}

.booking-home-draft-count b {
  color: #0a50c7;
}

.booking-home-draft-row {
  position: relative;
  display: grid;
  grid-template-columns: 56px 1fr 170px 92px 24px;
  gap: 20px;
  align-items: center;
  min-height: 80px;
  border: 1px solid #e3e9f2;
  border-radius: 12px;
  padding: 14px 18px;
  margin-top: 16px;
  box-shadow: 0 5px 14px rgba(15, 23, 42, .04);
}

.booking-home-draft-id {
  font-size: 17px;
  font-weight: 950;
  color: #07122d;
  margin-bottom: 6px;
}

.booking-home-draft-meta {
  color: #536078;
  font-size: 14px;
}

.booking-home-draft-status {
  margin-top: 4px;
  color: #0a50c7;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.booking-home-settings-card {
  border: 1px solid #e3e9f2;
  border-radius: 14px;
  background: rgba(255,255,255,.92);
  padding: 22px 24px;
  box-shadow: 0 10px 24px rgba(15, 23, 42, .05);
}

.booking-home-settings-title {
  font-size: 18px;
  font-weight: 900;
  color: #07122d;
  margin-bottom: 14px;
}

.booking-home-settings-toggle {
  display: grid;
  grid-template-columns: 20px 1fr;
  gap: 14px;
  align-items: flex-start;
  color: #0f172a;
}

.booking-home-settings-toggle input {
  width: 18px;
  height: 18px;
  margin-top: 2px;
}

.booking-home-settings-toggle strong {
  display: block;
  font-size: 15px;
  margin-bottom: 6px;
}

.booking-home-settings-toggle small {
  display: block;
  color: #536078;
  font-size: 13px;
  line-height: 1.5;
}

.booking-home-settings-actions {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 20px;
}

.booking-home-settings-status {
  color: #536078;
  font-size: 13px;
  font-weight: 700;
}

.booking-home-settings-status.error {
  color: #b42318;
}

.booking-home-date {
  color: #536078;
  font-size: 14px;
  line-height: 1.45;
}

.booking-home-open-btn {
  height: 44px;
  border: 1px solid #d7dee9;
  border-radius: 10px;
  background: linear-gradient(135deg, #ffffff 0%, #f3f7ff 52%, #e4edff 100%);
  background-size: 220% 220%;
  color: #064acb;
  font-weight: 850;
  font-size: 15px;
  cursor: pointer;
  transition: background-position 1.5s ease, border-color 1.2s ease, box-shadow 1.2s ease, transform .3s ease;
}

.booking-home-open-btn:hover {
  background-position: 100% 100%;
  border-color: #bcd0f3;
  box-shadow: 0 10px 22px rgba(21, 94, 239, .12);
  transform: translateY(-1px);
}

.booking-home-more {
  position: relative;
  font-size: 26px;
  color: #536078;
  text-align: center;
  border: 0;
  background: transparent;
  cursor: pointer;
  line-height: 1;
  padding: 0;
}

.booking-home-more-static {
  opacity: .58;
  cursor: default;
  pointer-events: none;
}

.booking-home-menu-popover {
  position: absolute;
  top: calc(100% + 6px);
  right: 10px;
  z-index: 5;
  min-width: 148px;
  display: grid;
  gap: 6px;
  padding: 8px;
  border: 1px solid rgba(15, 23, 42, .12);
  border-radius: 12px;
  background: rgba(255,255,255,.98);
  box-shadow: 0 16px 34px rgba(15, 23, 42, .16);
}

.booking-home-menu-popover button {
  border: 1px solid rgba(15, 23, 42, .08);
  border-radius: 8px;
  background: #fff;
  color: #0f172a;
  padding: 9px 10px;
  font-size: 12px;
  font-weight: 700;
  text-align: left;
  cursor: pointer;
}

.booking-home-menu-popover button.danger {
  color: #991b1b;
  background: #fff5f5;
  border-color: rgba(153, 27, 27, .14);
}

.booking-home-table-wrap {
  overflow: auto;
  border: 1px solid #e3e9f2;
  border-radius: 14px;
  background: #fff;
}

.booking-home-table {
  width: 100%;
  min-width: 980px;
  border-collapse: collapse;
}

.booking-home-table th,
.booking-home-table td {
  padding: 14px 16px;
  border-bottom: 1px solid #e7edf5;
  text-align: left;
  vertical-align: middle;
}

.booking-home-table th {
  background: #f8fbff;
  color: #475467;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.booking-home-table td {
  color: #07122d;
  font-size: 14px;
}

.booking-home-table tbody tr:last-child td {
  border-bottom: 0;
}

.booking-home-status-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 28px;
  padding: 4px 10px;
  border-radius: 999px;
  background: rgba(21, 94, 239, .1);
  color: #0a50c7;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.booking-home-view-all {
  margin-top: 28px;
  text-align: center;
  color: #0756d8;
  font-weight: 850;
  background: linear-gradient(135deg, rgba(7,86,216,.08) 0%, rgba(7,86,216,0) 55%, rgba(21,94,239,.12) 100%);
  background-size: 220% 220%;
  border-radius: 12px;
  padding: 12px 16px;
  transition: background-position 1.5s ease, color 1.2s ease, transform .3s ease;
}

.booking-home-view-all:hover {
  background-position: 100% 100%;
  color: #0a50c7;
  transform: translateY(-1px);
}

.booking-app {
  display: grid;
  grid-template-columns: minmax(260px, 280px) minmax(0, 1.45fr) minmax(360px, 420px);
  gap: 18px;
  align-items: stretch;
  min-height: 100%;
  height: 100%;
  overflow: hidden;
}

.booking-app.booking-app-ecomplaint {
  grid-template-columns: minmax(250px, 290px) minmax(900px, 1fr) minmax(410px, 470px);
}

.booking-window .booking-document-viewer-shell {
  width: min(1280px, 96vw);
  max-height: calc(100vh - 32px);
}

.booking-window .booking-document-viewer-window {
  height: min(92vh, 1100px);
  max-height: calc(100vh - 32px);
  display: flex;
  flex-direction: column;
}

.booking-window .booking-document-viewer-body {
  padding: 18px 20px 22px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  min-height: 0;
  background: #eef2f7;
}

.booking-document-viewer {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  gap: 14px;
  min-height: 0;
  height: 100%;
}

.booking-document-viewer-meta {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.booking-document-viewer-meta div {
  display: grid;
  gap: 4px;
  padding: 12px 14px;
  border: 1px solid rgba(15, 23, 42, .08);
  border-radius: 12px;
  background: rgba(255,255,255,.94);
}

.booking-document-viewer-meta span {
  color: #667085;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.booking-document-viewer-meta strong {
  color: #07122d;
  font-size: 14px;
}

.booking-document-viewer-stack {
  display: grid;
  gap: 18px;
}

.booking-document-viewer-pages {
  min-height: 0;
  overflow: auto;
  padding-right: 6px;
  scroll-snap-type: y proximity;
  overscroll-behavior: contain;
}

.booking-document-viewer-section {
  display: grid;
  gap: 10px;
}

.booking-document-viewer-actions {
  justify-content: flex-end;
}

.booking-document-viewer-section-head {
  color: #07122d;
  font-size: 16px;
  font-weight: 900;
  letter-spacing: -.02em;
}

.booking-document-viewer-paper {
  padding: 16px;
  border: 1px solid rgba(15, 23, 42, .08);
  border-radius: 16px;
  background: #f7f9fc;
  overflow: hidden;
}

.booking-document-viewer-preview.booking-app {
  display: block;
  width: 100%;
  min-height: 0;
  height: auto;
  padding: 0;
  margin: 0;
  overflow: visible;
  background: transparent;
  box-shadow: none;
  grid-template-columns: none;
  gap: 0;
  align-items: initial;
}

.booking-document-viewer-preview.booking-app .booking-ecomplaint-document,
.booking-document-viewer-preview.booking-app .booking-arrest-warrant-document {
  width: 100%;
  max-width: none;
  padding: 8px 0 12px;
  justify-items: center;
}

.booking-document-viewer-preview.booking-app .booking-ecomplaint-page {
  scroll-snap-align: start;
}

.booking-document-viewer-paper textarea[readonly] {
  cursor: default;
  resize: none;
}

.booking-document-viewer-preview.booking-app button,
.booking-document-viewer-paper input[disabled],
.booking-document-viewer-paper textarea[readonly] {
  pointer-events: none;
}

.booking-app.booking-app-ecomplaint .booking-fields-column {
  padding-left: 16px;
  padding-right: 16px;
}

.booking-app.booking-app-ecomplaint .booking-vehicle-admin-fields,
.booking-app.booking-app-ecomplaint .fields {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.booking-app .sidebar { padding: 16px; min-height: 0; max-height: 100%; overflow: auto; }
.booking-app .side-title { font-size: 14px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; line-height: 1.35; margin-bottom: 14px; }
.booking-app .side-label { font-size: 10px; color: #5a5a5a; margin: 14px 2px 8px; }
.booking-app .mini-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.booking-app .mini-card,
.booking-app .note { background: #fff; border: 1px solid rgba(0,0,0,.08); border-radius: 12px; padding: 10px; }
.booking-app .mini-card .k { font-size: 8px; color: #666; margin-bottom: 6px; }
.booking-app .mini-card .v { font-size: 12px; font-weight: 800; }
.booking-app .note { font-size: 11px; line-height: 1.45; color: #444; }
.booking-app .booking-sent-back-note { margin: 12px 14px 0; border-color: #b91c1c; background: #fff1f2; color: #450a0a; }
.booking-app .booking-sent-back-note span { display: block; margin-top: 6px; color: #7f1d1d; font-size: 10px; }
.booking-mini-draft strong { display: block; margin-bottom: 4px; }
.booking-mini-draft span { font-size: 10px; color: #64748b; }

.booking-app .booking-preview-column,
.booking-app .booking-fields-column {
  min-width: 0;
  min-height: 0;
  max-height: 100%;
  padding: 12px;
  overflow: hidden;
}

.booking-app .booking-preview-column {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
}

.booking-app .booking-fields-column {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
}

.booking-app .toolbar { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; margin-bottom: 12px; }
.booking-app .toolbar h1 { margin: 0; font-size: 15px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.booking-app .toolbar p { margin: 4px 0 0; color: #666; font-size: 10px; }
.booking-app .booking-fields-head { display: grid; gap: 4px; margin-bottom: 12px; }
.booking-app .booking-fields-head h2 { margin: 0; font-size: 15px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.booking-app .booking-fields-head p { margin: 0; color: #666; font-size: 10px; }
.booking-app .toolbar-actions,
.booking-app .action-row { display: flex; gap: 6px; flex-wrap: wrap; }
.booking-app .booking-signatures-action-row { margin-top: 8px; }
.booking-app .sheet-wrap { display: flex; justify-content: center; align-self: stretch; min-width: 0; min-height: 0; max-height: 100%; overflow: auto; }
.booking-app.booking-app-ecomplaint .sheet-wrap {
  justify-content: center;
  overflow-x: hidden;
}

.booking-app .booking-ecomplaint-fit-shell {
  width: 100%;
  min-width: 0;
  display: flex;
  justify-content: center;
  align-items: flex-start;
}

.booking-app .booking-ecomplaint-fit-stage {
  width: 800px;
  min-width: 800px;
  transform-origin: top center;
  transform: scale(var(--booking-ecomplaint-scale, 1));
  will-change: transform;
}
.booking-app.booking-app-search-warrant .booking-ecomplaint-fit-stage.booking-search-warrant-fit-stage {
  width: 900px;
  min-width: 900px;
}
.booking-app .booking-search-warrant-document {
  width: 100%;
  padding: 28px;
  background: #777;
  color: #111;
  font-family: "Times New Roman", Times, serif;
  font-size: 12px;
  line-height: 1.25;
}
.booking-app .booking-search-warrant-document * {
  box-sizing: border-box;
}
.booking-app .booking-search-warrant-document .page {
  width: 8.5in;
  min-height: 11in;
  margin: 0 auto 28px;
  padding: .42in .47in .36in;
  background: #fff;
  border: 2px solid #222;
  box-shadow: 0 6px 24px rgba(0,0,0,.35);
  position: relative;
  overflow: hidden;
}
.booking-app .booking-search-warrant-document .inner-border {
  border: 1.5px solid #222;
  height: 100%;
  min-height: calc(11in - .84in);
  padding: .18in .1in .22in;
  position: relative;
}
.booking-app .booking-search-warrant-document h1 {
  margin: 0 0 8px;
  text-align: center;
  font-size: 18px;
  line-height: 1.05;
  text-transform: uppercase;
  letter-spacing: .02em;
}
.booking-app .booking-search-warrant-document h2 {
  margin: 14px 0 8px;
  text-align: center;
  font-size: 14px;
  text-transform: uppercase;
  text-decoration: underline;
}
.booking-app .booking-search-warrant-document p {
  margin: 7px 0;
}
.booking-app .booking-search-warrant-document .caption {
  font-size: 10px;
  font-style: italic;
}
.booking-app .booking-search-warrant-document .admin-header {
  display: grid;
  grid-template-columns: 1.05fr 2.65fr .85fr;
  border-bottom: 2px solid #111;
  margin: -.18in -.1in 8px;
  min-height: .72in;
}
.booking-app .booking-search-warrant-document .admin-left,
.booking-app .booking-search-warrant-document .admin-case {
  padding: 6px 7px;
  font-size: 10px;
  line-height: 1.1;
}
.booking-app .booking-search-warrant-document .admin-left {
  border-right: 2px solid #111;
}
.booking-app .booking-search-warrant-document .admin-title {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 6px 8px;
  text-align: center;
}
.booking-app .booking-search-warrant-document .admin-title h1 {
  margin: 0;
  font-size: 17px;
  line-height: 1.05;
}
.booking-app .booking-search-warrant-document .admin-case {
  border-left: 2px solid #111;
}
.booking-app .booking-search-warrant-document .booking-search-warrant-admin-case-row {
  display: grid;
  gap: 2px;
  margin-top: 4px;
}
.booking-app .booking-search-warrant-document .booking-search-warrant-admin-case-row:first-child {
  margin-top: 0;
}
.booking-app .booking-search-warrant-document .booking-search-warrant-admin-case-row b {
  display: block;
  font-size: 10px;
  line-height: 1.05;
}
.booking-app .booking-search-warrant-document .admin-rev {
  display: flex;
  gap: 20px;
  margin-top: 9px;
  font-size: 9px;
  font-weight: 700;
}
.booking-app .booking-search-warrant-document .court-heading-row {
  display: grid;
  grid-template-columns: 58px 1fr 78px 1fr 96px;
  align-items: end;
  column-gap: 5px;
  margin-top: 8px;
}
.booking-app .booking-search-warrant-document .party-row {
  display: grid;
  grid-template-columns: 1fr 28px 1fr;
  align-items: end;
  column-gap: 10px;
  margin: 8px 0 10px;
}
.booking-app .booking-search-warrant-document .party-left {
  line-height: 1.45;
}
.booking-app .booking-search-warrant-document .party-left .municipality-line {
  display: inline-block;
  width: calc(100% - 118px);
  min-width: 0;
}
.booking-app .booking-search-warrant-document .booking-search-warrant-display-blank.municipality-line {
  height: 22px;
  vertical-align: bottom;
}
.booking-app .booking-search-warrant-document .party-v {
  text-align: center;
  font-weight: 700;
  padding-bottom: 15px;
}
.booking-app .booking-search-warrant-document .defendant-caption {
  font-size: 9px;
  font-style: italic;
  text-align: center;
  margin-top: 2px;
}
.booking-app .booking-search-warrant-document .booking-search-warrant-line-input {
  display: inline-block;
  min-width: 120px;
  width: auto;
  height: 22px;
  border: none;
  border-bottom: 1px solid #222;
  background: transparent;
  vertical-align: bottom;
  padding: 0 2px;
  font-family: "Times New Roman", Times, serif;
  font-size: 12px;
  outline: none;
  border-radius: 0;
}
.booking-app .booking-search-warrant-document .booking-search-warrant-line-input.long { min-width: 260px; }
.booking-app .booking-search-warrant-document .booking-search-warrant-line-input.med { min-width: 170px; }
.booking-app .booking-search-warrant-document .booking-search-warrant-line-input.short { min-width: 70px; }
.booking-app .booking-search-warrant-document .booking-search-warrant-line-input.tiny { min-width: 36px; }
.booking-app .booking-search-warrant-document .booking-search-warrant-line-input.date-time-line {
  text-align: center;
}
.booking-app .booking-search-warrant-document .court-heading-row .booking-search-warrant-line-input,
.booking-app .booking-search-warrant-document .defendant-field .booking-search-warrant-line-input,
.booking-app .booking-search-warrant-document .admin-case .booking-search-warrant-line-input {
  width: 100%;
  min-width: 0;
}
.booking-app .booking-search-warrant-document .booking-search-warrant-textarea {
  width: 100%;
  border: none;
  border-bottom: 1px solid #222;
  padding: 4px 0;
  font-family: "Times New Roman", Times, serif;
  font-size: 12px;
  resize: none;
  background: transparent;
  outline: none;
}
.booking-app .booking-search-warrant-document .booking-search-warrant-textarea.tall {
  height: 120px;
}
.booking-app .booking-search-warrant-document .booking-search-warrant-textarea.narrative {
  height: 420px;
  border: 1.5px solid #222;
  padding: 10px;
  background: #fff;
}
.booking-app .booking-search-warrant-document .booking-search-warrant-textarea.return-location {
  height: 70px;
}
.booking-app .booking-search-warrant-document .check-row {
  display: grid;
  grid-template-columns: 14px minmax(0, 1fr);
  column-gap: 8px;
  align-items: start;
  margin: 6px 0;
  padding-left: 0;
  text-indent: 0;
}
.booking-app .booking-search-warrant-document .cl-checkbox {
  --cl-checkbox-size: 14px;
  --cl-checkbox-border: 1.5px;
  --cl-checkbox-color: #018786;
  position: relative;
  display: inline-block;
  width: var(--cl-checkbox-size);
  height: var(--cl-checkbox-size);
  flex: 0 0 var(--cl-checkbox-size);
  margin: 0 5px 0 0;
  vertical-align: -2px;
  line-height: 1;
}
.booking-app .booking-search-warrant-document .check-row > .cl-checkbox {
  margin: 1px 0 0;
}
.booking-app .booking-search-warrant-document .cl-checkbox > input {
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  z-index: -1;
  position: absolute;
  left: -10px;
  top: -10px;
  display: block;
  margin: 0;
  border-radius: 50%;
  width: 34px;
  height: 34px;
  background-color: rgba(0, 0, 0, 0.6);
  box-shadow: none;
  outline: none;
  opacity: 0;
  transform: scale(1);
  pointer-events: none;
  transition: opacity 0.3s, transform 0.2s;
}
.booking-app .booking-search-warrant-document .cl-checkbox > span {
  display: inline-block;
  width: 100%;
  height: 100%;
  cursor: pointer;
}
.booking-app .booking-search-warrant-document .cl-checkbox > span::before {
  content: "";
  display: block;
  box-sizing: border-box;
  border: solid var(--cl-checkbox-border) rgba(0, 0, 0, 0.6);
  border-radius: 2px;
  width: var(--cl-checkbox-size);
  height: var(--cl-checkbox-size);
  transition: border-color 0.2s, background-color 0.2s;
}
.booking-app .booking-search-warrant-document .cl-checkbox > span::after {
  content: "";
  display: block;
  position: absolute;
  top: 3px;
  left: 2px;
  width: 8px;
  height: 4px;
  border: solid 2px transparent;
  border-right: none;
  border-top: none;
  transform: rotate(-45deg);
}
.booking-app .booking-search-warrant-document .cl-checkbox > input:checked,
.booking-app .booking-search-warrant-document .cl-checkbox > input:indeterminate {
  background-color: var(--cl-checkbox-color);
}
.booking-app .booking-search-warrant-document .cl-checkbox > input:checked + span::before,
.booking-app .booking-search-warrant-document .cl-checkbox > input:indeterminate + span::before {
  border-color: var(--cl-checkbox-color);
  background-color: var(--cl-checkbox-color);
}
.booking-app .booking-search-warrant-document .cl-checkbox > input:checked + span::after,
.booking-app .booking-search-warrant-document .cl-checkbox > input:indeterminate + span::after {
  border-color: #fff;
}
.booking-app .booking-search-warrant-document .cl-checkbox > input:indeterminate + span::after {
  border-left: none;
  transform: translate(1px, -1px);
}
.booking-app .booking-search-warrant-document .cl-checkbox:hover > input {
  opacity: 0.04;
}
.booking-app .booking-search-warrant-document .cl-checkbox > input:focus {
  opacity: 0.12;
}
.booking-app .booking-search-warrant-document .cl-checkbox:hover > input:focus {
  opacity: 0.16;
}
.booking-app .booking-search-warrant-document .cl-checkbox > input:active {
  opacity: 1;
  transform: scale(0);
  transition: transform 0s, opacity 0s;
}
.booking-app .booking-search-warrant-document .cl-checkbox > input:active + span::before {
  border-color: #85b8b7;
}
.booking-app .booking-search-warrant-document .cl-checkbox > input:checked:active + span::before {
  border-color: transparent;
  background-color: rgba(0, 0, 0, 0.6);
}
.booking-app .booking-search-warrant-document .cl-checkbox > input:disabled {
  opacity: 0;
}
.booking-app .booking-search-warrant-document .cl-checkbox > input:disabled + span {
  color: rgba(0, 0, 0, 0.38);
  cursor: initial;
}
.booking-app .booking-search-warrant-document .cl-checkbox > input:disabled + span::before {
  border-color: currentColor;
}
.booking-app .booking-search-warrant-document .cl-checkbox > input:checked:disabled + span::before,
.booking-app .booking-search-warrant-document .cl-checkbox > input:indeterminate:disabled + span::before {
  border-color: transparent;
  background-color: currentColor;
}
.booking-app .booking-search-warrant-document .signature-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 36px;
  margin-top: 24px;
  align-items: end;
}
.booking-app .booking-search-warrant-document .sig {
  text-align: center;
  min-height: 40px;
}
.booking-app .booking-search-warrant-document .judge-signature-block {
  width: 290px;
  margin: 0 auto;
  text-align: center;
}
.booking-app .booking-search-warrant-document .booking-search-warrant-judge-block {
  position: relative;
  top: -10px;
}
.booking-app .booking-search-warrant-document .judge-signature-input {
  display: block;
  width: 100%;
  border: none;
  border-bottom: 1.5px solid #111;
  height: 30px;
  line-height: 30px;
  font-family: "Brush Script MT", "Lucida Handwriting", cursive;
  font-size: 28px;
  text-align: center;
  background: transparent;
  outline: none;
  margin-bottom: 6px;
}
.booking-app .booking-search-warrant-document .judge-signature-meta {
  font-size: 10px;
  line-height: 1.22;
  text-align: center;
  transform: none;
}
.booking-app .booking-search-warrant-document .affiant-signature-input {
  width: 260px;
  border: none;
  border-bottom: 1.5px solid #111;
  background: transparent;
  outline: none;
  text-align: center;
  font-family: "Brush Script MT", "Lucida Handwriting", cursive;
  font-size: 28px;
  height: 40px;
}
.booking-app .booking-search-warrant-document .inventory {
  width: 100%;
  border-collapse: collapse;
  margin: 8px 0 12px;
  font-size: 11px;
}
.booking-app .booking-search-warrant-document .inventory th,
.booking-app .booking-search-warrant-document .inventory td {
  border: 1px solid #222;
  height: 22px;
  padding: 3px 6px;
}
.booking-app .booking-search-warrant-document .inventory th {
  text-align: center;
  font-weight: 700;
  background: #f7f7f7;
}
.booking-app .booking-search-warrant-document .inventory td {
  background: transparent;
}
.booking-app .booking-search-warrant-document .inventory .booking-search-warrant-line-input.inventory {
  width: 100%;
  min-width: 0;
  height: 100%;
  border: none;
  padding: 0;
  font-size: 11px;
}
.booking-app .booking-search-warrant-document .booking-search-warrant-check-group {
  margin-left: 20px;
}
.booking-app .booking-search-warrant-document .booking-search-warrant-execution-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 18px;
  row-gap: 2px;
  margin-top: 8px;
  font-size: 11px;
}
.booking-app .booking-search-warrant-document .footer-page {
  position: absolute;
  left: 0;
  right: 0;
  bottom: .16in;
  text-align: center;
  font-size: 11px;
}
.booking-window .booking-search-warrant-choice-grid {
  display: grid;
  gap: 14px;
}
.booking-window .booking-search-warrant-choice-card {
  width: 100%;
  border: 1px solid rgba(15, 23, 42, .12);
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(255,255,255,.98) 0%, rgba(240,247,255,.96) 100%);
  padding: 18px 20px;
  text-align: left;
  cursor: pointer;
  color: inherit;
  font: inherit;
  display: grid;
  gap: 6px;
  box-shadow: 0 10px 24px rgba(15, 23, 42, .06);
  transition: border-color .24s ease, box-shadow .24s ease, transform .24s ease;
}
.booking-window .booking-search-warrant-choice-card strong {
  font-size: 15px;
  color: #07122d;
}
.booking-window .booking-search-warrant-choice-card span {
  color: #536078;
  font-size: 13px;
  line-height: 1.45;
}
.booking-window .booking-search-warrant-choice-card:hover {
  border-color: #bfd4f7;
  box-shadow: 0 14px 30px rgba(15, 23, 42, .1);
  transform: translateY(-1px);
}
.booking-app .booking-search-warrant-inventory-grid {
  display: grid;
  gap: 10px;
}
.booking-app .booking-search-warrant-inventory-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}
.booking-app .sheet { width: min(100%, 1080px); background: #fff; border: 2px solid #1a1a1a; box-shadow: 0 8px 22px rgba(0,0,0,.08); overflow: hidden; }
.booking-app .title { text-align: center; font-size: 24px; font-weight: 500; padding: 10px 8px 4px; text-transform: uppercase; letter-spacing: .02em; border-bottom: 2px solid #1a1a1a; }
.booking-app .sheet-grid { display: grid; grid-template-columns: 58px 1fr; }
.booking-app .vlabel { writing-mode: vertical-rl; transform: rotate(180deg); display: flex; align-items: center; justify-content: center; text-align: center; white-space: normal; line-height: 1.1; border-right: 2px solid #1a1a1a; border-bottom: 2px solid #1a1a1a; font-size: 14px; letter-spacing: .05em; text-transform: uppercase; padding: 8px 0; background: #111; color: #fff; font-weight: 800; }
.booking-app .section { border-bottom: 2px solid #1a1a1a; background: #fff; }
.booking-app .r { display: grid; min-height: 34px; border-bottom: 2px solid #1a1a1a; }
.booking-app .r:last-child { border-bottom: none; }
.booking-app .c { border-right: 2px solid #1a1a1a; padding: 4px 6px; min-height: 34px; background: #fff; position: relative; }
.booking-app .c:last-child { border-right: none; }
.booking-app .label { font-size: 10px; font-weight: 700; line-height: 1.1; }
.booking-app .small { font-size: 9px; line-height: 1.15; }
.booking-app .text { font-size: 12px; font-weight: 700; text-transform: uppercase; line-height: 1.15; margin-top: 4px; }
.booking-app .plain { font-size: 11px; line-height: 1.25; }
.booking-app .between { display: flex; justify-content: space-between; align-items: center; gap: 8px; }
.booking-app .box { width: 13px; height: 13px; border: 1.6px solid #222; display: inline-block; vertical-align: middle; margin-right: 4px; background: #fff; }
.booking-app .box.checked { background: linear-gradient(135deg, #111 0%, #111 42%, #fff 42%, #fff 58%, #111 58%, #111 100%); }
.booking-app .panel-stack { display: grid; gap: 10px; width: 100%; min-width: 0; min-height: 0; max-height: 100%; padding-right: 4px; overflow: auto; align-content: start; }
.booking-app .panel { padding: 12px; }
.booking-app .panel h3 { margin: 0 0 8px; font-size: 11px; }
.booking-app .booking-card-head { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 8px; }
.booking-app .booking-card-head.compact { margin-bottom: 6px; }
.booking-app .booking-card-head h3 { margin: 0; }
.booking-app .booking-card-actions { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.booking-app .booking-search-button {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  padding: 0;
  color: #e8e8e8;
  background-color: #212121;
  font-size: 8px;
  text-transform: uppercase;
  border: 1px solid #212121;
  border-radius: 3.5px;
  transition: all 0.6s cubic-bezier(0.23, 1, 0.320, 1);
  box-shadow: 1.75px 1.75px 0.75px rgba(0, 0, 0, 0.15),
    0.75px 0.75px 0.75px rgba(0, 0, 0, 0.1),
    -1px -1px 0.75px rgba(255, 255, 255, 0.05),
    -0.75px -0.75px 0.5px rgba(255, 255, 255, 0.05);
  overflow: hidden;
  cursor: pointer;
}
.booking-app .booking-search-button__icon {
  position: relative;
  z-index: 2;
  transition: all 0.6s cubic-bezier(0.23, 1, 0.320, 1);
}
.booking-app .booking-search-button::before {
  content: "";
  position: absolute;
  background-color: #e8e8e8;
  width: 100%;
  height: 100%;
  left: 0%;
  bottom: 0%;
  transform: translate(-100%, 100%);
  border-radius: 3.5px;
  transition: all 0.6s cubic-bezier(0.23, 1, 0.320, 1);
}
.booking-app .booking-search-button:hover::before {
  transform: translate(0, 0);
  transition-delay: 0.4s;
}
.booking-app .booking-search-button:hover .booking-search-button__icon {
  scale: 1.2;
}
.booking-app .booking-search-button:hover {
  box-shadow: none;
}
.booking-app .booking-search-button:active {
  scale: 0.95;
}
.booking-app .booking-icon-btn { width: 24px; height: 24px; border: 1px solid rgba(0,0,0,.18); border-radius: 6px; background: #fff; color: #0f172a; font-size: 12px; font-weight: 800; line-height: 1; display: inline-flex; align-items: center; justify-content: center; cursor: pointer; }
.booking-app .booking-icon-btn-danger { color: #9b1c1c; border-color: rgba(155,28,28,.28); background: #fff6f6; }
.booking-app .fields { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.booking-app .booking-vehicle-admin-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.booking-app .booking-field-span { grid-column: 1 / -1; }
.booking-app .field { display: grid; gap: 4px; }
.booking-app .field label { font-size: 8px; color: #555; }
.booking-app .field input:not([type="checkbox"]):not([type="radio"]),
.booking-app .field select,
.booking-app .field textarea {
  width: 100%;
  border: 1px solid rgba(0,0,0,.12);
  border-radius: 8px;
  padding: 8px;
  font: inherit;
  font-size: 11px;
  background: #fff;
}

.booking-app .field textarea { min-height: 86px; resize: vertical; }
.booking-app .checklist {
  display: grid;
  gap: 8px;
  margin-top: 8px;
  font-size: 11px;
  font-weight: 700;
}
.booking-app .booking-property-lockup-checklist {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.booking-app .booking-release-checklist {
  margin-bottom: 10px;
}
.booking-app .checklist label {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  line-height: 1.35;
}
.booking-app .checklist input[type="checkbox"] {
  width: 14px;
  height: 14px;
  margin: 1px 0 0;
  flex: 0 0 auto;
  accent-color: #0f172a;
}
.booking-app .booking-picker-inline { display: grid; grid-template-columns: 1fr auto auto; gap: 6px; align-items: center; }
.booking-app .booking-picker-inline button { border: 1px solid rgba(0,0,0,.14); background: #fff; border-radius: 8px; padding: 8px 9px; font-size: 10px; font-weight: 700; cursor: pointer; }
.booking-app .booking-violation-stack { display: grid; gap: 8px; margin-top: 8px; }
.booking-app .booking-violation-block { border: 1px solid rgba(0,0,0,.1); border-radius: 10px; padding: 8px; background: #fafafa; }
.booking-app .booking-victim-stack { display: grid; gap: 12px; margin-top: 8px; }
.booking-app .booking-victim-block { border: 1px solid rgba(0,0,0,.08); border-radius: 14px; padding: 10px; background: #fff; }
.booking-app .booking-victim-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 10px; }
.booking-app .booking-victim-head h3 { margin: 0; font-size: 12px; letter-spacing: .08em; text-transform: uppercase; }
.booking-app .booking-charge-row .c { min-height: 64px; }
.booking-app .booking-charge-row .text { min-height: 2.4em; display: flex; align-items: flex-start; }
.booking-app .booking-mugshot-field-shell {
  min-height: 220px;
  border: 1px dashed rgba(0,0,0,.22);
  border-radius: 12px;
  background: #f8fafc;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.booking-app .booking-mugshot-field-image {
  width: 100%;
  height: 220px;
  object-fit: cover;
  display: block;
}
.booking-app .booking-mugshot-field-placeholder {
  padding: 18px;
  text-align: center;
  color: #64748b;
  font-size: 12px;
  font-weight: 700;
}
.booking-app .booking-mugshot-field-actions {
  margin-top: 10px;
}
.booking-app .booking-mugshot-field-actions button {
  width: 100%;
}
.booking-app .booking-lockup-activity-stack {
  display: grid;
  gap: 12px;
}
.booking-app .booking-lockup-activity-block {
  display: grid;
  gap: 8px;
}
.booking-app .booking-lockup-activity-block h4 {
  margin: 0;
  font-size: 10px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #475569;
}
.booking-app .booking-lockup-rows {
  display: grid;
  gap: 8px;
}
.booking-app .booking-lockup-row {
  display: grid;
  grid-template-columns: .8fr 1.5fr .7fr auto;
  gap: 8px;
  align-items: center;
}
.booking-app .booking-lockup-row input {
  width: 100%;
  border: 1px solid rgba(0,0,0,.12);
  border-radius: 8px;
  padding: 8px;
  font: inherit;
  font-size: 11px;
  background: #fff;
}
.booking-app .booking-lockup-remove-row {
  width: 24px;
  height: 24px;
  border: 1px solid rgba(220, 38, 38, 0.28);
  border-radius: 999px;
  background: #fff5f5;
  color: #b91c1c;
  font: inherit;
  font-size: 13px;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
}
.booking-app .booking-lockup-remove-row:hover {
  background: #fee2e2;
  border-color: rgba(220, 38, 38, 0.45);
}
.booking-preview-narrative { width: 100%; min-height: 172px; border: none; outline: none; resize: vertical; font: inherit; font-size: 11px; line-height: 1.3; background: transparent; color: #111; }
.booking-intake-form {
  width: min(100%, 1100px);
  margin: 0 auto;
  background: #f3f4f6;
  color: #111827;
  font-family: Arial, Helvetica, sans-serif;
  padding: 10px;
}
.booking-intake-form * { box-sizing: border-box; }
.booking-intake-form-container {
  background: #fff;
  padding: 14px;
  border: 1px solid #111827;
}
.booking-intake-header {
  text-align: center;
  border-bottom: 2px solid #111827;
  padding-bottom: 8px;
  margin-bottom: 10px;
}
.booking-intake-header h1 {
  margin: 0;
  font-size: 20px;
  letter-spacing: 1px;
  text-transform: uppercase;
}
.booking-intake-header p {
  margin: 2px 0 0;
  font-size: 11px;
}
.booking-intake-section {
  border: 1px solid #111827;
  margin-bottom: 8px;
}
.booking-intake-section-title {
  background: #111827;
  color: #fff;
  padding: 4px 8px;
  font-weight: 700;
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: .5px;
}
.booking-intake-section-body { padding: 8px; }
.booking-intake-compact-body { padding: 5px 8px 8px; }
.booking-intake-grid { display: grid; gap: 6px; }
.booking-intake-grid-2 { grid-template-columns: repeat(2, 1fr); }
.booking-intake-grid-4 { grid-template-columns: repeat(4, 1fr); }
.booking-intake-custom { align-items: end; }
.booking-intake-name-row { grid-template-columns: 1.5fr 1.5fr 1.5fr 1fr .8fr; }
.booking-intake-residency-row { grid-template-columns: .35fr .35fr 1.3fr .9fr 2.8fr; margin-top: 6px; }
.booking-intake-license-row { grid-template-columns: 1.8fr 1.8fr .4fr .4fr .5fr .5fr; margin-top: 6px; }
.booking-intake-address-row { grid-template-columns: 1fr 1.5fr 1fr 1fr .8fr; margin-top: 6px; }
.booking-intake-employment-row { grid-template-columns: 1fr 1.5fr 1.5fr 1fr; margin-top: 6px; }
.booking-intake-scars-row { grid-template-columns: 1.5fr 1fr 1fr; margin-top: 6px; }
.booking-intake-armed-row { grid-template-columns: .7fr .7fr 1.5fr; margin-top: 6px; align-items: start; }
.booking-intake-vehicle-row { grid-template-columns: .6fr 1fr 1fr .8fr 1fr 1.5fr; }
.booking-intake-disposition-row { grid-template-columns: .9fr .9fr .9fr .9fr 1fr 1.2fr; margin-top: 6px; }
.booking-intake-release-top { grid-template-columns: 1.2fr 1.2fr 1fr 1fr; gap: 10px; align-items: start; }
.booking-intake-signature-grid { margin-top: 8px; gap: 12px; align-items: end; }
.booking-intake-form label {
  display: block;
  font-size: 10px;
  font-weight: 700;
  margin-bottom: 2px;
  text-transform: uppercase;
}
.booking-intake-line-value,
.booking-intake-textarea-value {
  width: 100%;
  border: none;
  border-bottom: 1px solid #111827;
  min-height: 20px;
  padding: 2px 1px;
  font-size: 11px;
  background: transparent;
}
.booking-intake-textarea-value {
  min-height: 42px;
  border: 1px solid #6b7280;
  padding: 4px;
  background: #fff;
}
.booking-intake-live-input,
.booking-intake-live-textarea {
  appearance: none;
  -webkit-appearance: none;
  color: inherit;
  font: inherit;
}
.booking-intake-line-hidden { visibility: hidden; }
.booking-intake-checkbox-grid {
  display: grid;
  gap: 4px 8px;
}
.booking-intake-property-grid { grid-template-columns: repeat(6, 1fr); gap: 2px 6px; }
.booking-intake-condition-grid { grid-template-columns: repeat(4, 1fr); }
.booking-intake-checkbox-item {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
}
.booking-intake-checkbox-item input {
  width: 12px;
  height: 12px;
  accent-color: #111827;
}
.booking-intake-mini-checks,
.booking-intake-stack-checks {
  display: flex;
  flex-direction: column;
  gap: 2px;
  justify-content: flex-end;
}
.booking-intake-method-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2px 10px;
  padding-top: 14px;
  align-items: start;
}
.booking-intake-photo-row {
  display: grid;
  grid-template-columns: .65fr 2.35fr;
  gap: 8px;
}
.booking-intake-placeholder-box {
  border: 2px dashed #6b7280;
  min-height: 260px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: #4b5563;
  font-size: 13px;
  padding: 10px;
  background: #fafafa;
}
.booking-intake-mugshot-box {
  overflow: hidden;
}
.booking-intake-mugshot-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.booking-intake-fingerprint-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 4px;
}
.booking-intake-fingerprint-box {
  border: 1px solid #6b7280;
  min-height: 130px;
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto;
  padding: 0;
  font-size: 10px;
  text-align: center;
  background: #fff;
  position: relative;
  overflow: hidden;
}
.booking-intake-fingerprint-box.has-image {
  background: #fff;
}
.booking-intake-fingerprint-media {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 0;
  padding: 6px 6px 2px;
  overflow: hidden;
}
.booking-intake-fingerprint-label {
  border-top: 1px solid #d1d5db;
  padding: 4px 6px;
  font-size: 10px;
  font-weight: 700;
  line-height: 1.15;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  background: #fff;
  position: relative;
  z-index: 2;
}
.booking-intake-fingerprint-image {
  width: auto;
  height: auto;
  max-width: 94%;
  max-height: 94%;
  object-fit: contain;
  display: block;
}
.booking-intake-fingerprint-image.animate {
  animation: bookingFingerprintSlideIn .42s ease;
}
@keyframes bookingFingerprintSlideIn {
  0% {
    opacity: 0;
    transform: translateX(-24px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.booking-intake-two-column {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}
.booking-intake-two-column h3,
.booking-intake-subsection h3,
.booking-intake-min-box h3 {
  margin: 0 0 4px;
  font-size: 11px;
  text-transform: uppercase;
}
.booking-intake-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 11px;
}
.booking-intake-table-input {
  width: 100%;
  border: 0;
  background: transparent;
  padding: 2px 1px;
  font: inherit;
  font-size: 11px;
  outline: none;
}
.booking-intake-table th,
.booking-intake-table td {
  border: 1px solid #6b7280;
  padding: 3px;
  vertical-align: top;
}
.booking-intake-table th {
  background: #e5e7eb;
  text-align: left;
  font-size: 12px;
  text-transform: uppercase;
}
.booking-intake-table tbody tr { height: 26px; }
.booking-intake-subsection,
.booking-intake-min-box {
  border: 1px solid #9ca3af;
  padding: 6px;
  margin-top: 4px;
}
.booking-intake-min-box {
  margin: 0;
  min-height: 72px;
}
.booking-intake-signature-line {
  width: 100%;
  border: 0;
  border-bottom: 1px solid #111827;
  border-radius: 0;
  height: 22px;
  margin-top: 8px;
  padding: 0 0 2px;
  background: transparent;
  box-shadow: none;
}
.booking-intake-signature-input {
  width: 100%;
  padding: 0;
  background: transparent;
}
.booking-intake-signature-line:focus {
  outline: none;
  border-bottom-color: #2563eb;
  box-shadow: 0 1px 0 0 #2563eb;
}
.booking-app .booking-ecomplaint-document {
  --page-w: 800px;
  width: min(100%, var(--page-w));
  display: grid;
  gap: 28px;
  justify-items: center;
  padding: 18px 0 28px;
  color: #050505;
  font-family: "Times New Roman", Times, serif;
  font-size: 13px;
  line-height: 1.15;
}

.booking-app .booking-ecomplaint-document * {
  box-sizing: border-box;
}

.booking-app .booking-ecomplaint-page {
  width: min(100%, var(--page-w));
  min-height: 1035px;
  background: #fff;
  padding: 34px 32px 28px;
  box-shadow: 0 3px 18px rgba(0,0,0,.25);
  position: relative;
}

.booking-app .booking-ecomplaint-caption {
  position: absolute;
  top: -16px;
  left: 0;
  font-size: 12px;
  text-transform: uppercase;
}

.booking-app .booking-ecomplaint-court-title {
  text-align: center;
  font-weight: 700;
  font-size: 11px;
  margin-bottom: 6px;
}

.booking-app .booking-ecomplaint-state-county {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  font-size: 12px;
  font-weight: 700;
  margin-bottom: 16px;
}

.booking-app .booking-ecomplaint-court-line {
  text-align: center;
  font-weight: 700;
  margin-bottom: 12px;
  font-size: 12px;
}

.booking-app .booking-ecomplaint-header-box {
  display: grid;
  grid-template-columns: 280px 1fr 260px;
  border: 1.8px solid #111;
  min-height: 255px;
}

.booking-app .booking-ecomplaint-header-left,
.booking-app .booking-ecomplaint-header-middle,
.booking-app .booking-ecomplaint-header-right {
  position: relative;
  padding: 10px 12px;
}

.booking-app .booking-ecomplaint-header-left {
  border-right: 1.8px solid #111;
}

.booking-app .booking-ecomplaint-header-middle {
  text-align: center;
}

.booking-app .booking-ecomplaint-header-right {
  border-left: 1.8px solid #111;
  padding: 0;
}

.booking-app .booking-ecomplaint-case-area {
  margin: 44px auto 0;
  width: 190px;
  text-align: center;
}

.booking-app .booking-ecomplaint-case-label {
  border-top: 1.5px solid #111;
  border-bottom: 1.5px solid #111;
  padding: 2px 0;
  font-size: 10px;
  font-weight: 700;
  width: 125px;
  margin: 0 auto;
}

.booking-app .booking-ecomplaint-case-label-wide {
  width: 140px;
}

.booking-app .booking-ecomplaint-black-label {
  background: #000;
  color: #fff;
  display: inline-block;
  padding: 9px 28px;
  font-weight: 700;
  text-align: center;
  line-height: 1.05;
  font-size: 17px;
  margin-top: 28px;
}

.booking-app .booking-ecomplaint-redact {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  background: #fff;
  border: 2px solid #000;
  min-height: 24px;
  padding: 2px 6px;
  font-family: inherit;
  font-size: 13px;
  color: #000;
  white-space: pre-wrap;
  word-break: break-word;
}

.booking-app .booking-ecomplaint-redact > span {
  display: block;
  width: 100%;
}

.booking-app .booking-ecomplaint-r-sm { width: 125px; }
.booking-app .booking-ecomplaint-r-md { width: 130px; }
.booking-app .booking-ecomplaint-r-lg { width: 205px; }
.booking-app .booking-ecomplaint-r-xl { width: 300px; }

.booking-app .booking-ecomplaint-people-box {
  margin-top: 58px;
  text-align: center;
  min-height: 150px;
  position: relative;
}

.booking-app .booking-ecomplaint-people-name {
  margin-top: 8px;
}

.booking-app .booking-ecomplaint-defendant-label {
  position: absolute;
  bottom: -18px;
  right: 0;
  font-size: 10px;
}

.booking-app .booking-ecomplaint-stamp-box {
  height: 255px;
  position: relative;
  overflow: hidden;
}

.booking-app .booking-ecomplaint-seal {
  position: absolute;
  width: 185px;
  height: 185px;
  border-radius: 50%;
  right: 20px;
  top: 42px;
  opacity: .55;
  background:
    radial-gradient(circle, transparent 38%, rgba(80,70,120,.28) 39%, transparent 41%),
    radial-gradient(circle, rgba(255,255,255,.6) 0 45%, rgba(150,135,180,.45) 46% 52%, transparent 53%),
    repeating-radial-gradient(circle, rgba(60,40,140,.2) 0 2px, transparent 2px 7px);
  border: 2px solid rgba(50,40,120,.35);
}

.booking-app .booking-ecomplaint-seal::before {
  content: "Cindy Crawford";
  position: absolute;
  top: 45px;
  left: 0;
  right: 0;
  text-align: center;
  font-style: italic;
  font-weight: 700;
  font-size: 17px;
  color: rgba(35,25,95,.55);
}

.booking-app .booking-ecomplaint-seal-right {
  right: 38px;
  top: 55px;
}

.booking-app .booking-ecomplaint-file-date {
  position: absolute;
  left: 18px;
  top: 128px;
  width: 168px;
  min-height: 74px;
  border: 2px solid rgba(70,70,70,.55);
  background: rgba(255,255,255,.15);
  font-family: "Courier New", monospace;
  font-size: 11px;
  padding: 8px 10px;
  line-height: 1.15;
  transform: rotate(-2deg);
  color: rgba(35,35,35,.88);
  text-transform: uppercase;
  letter-spacing: .4px;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.4), 0 0 2px rgba(0,0,0,.15);
  backdrop-filter: blur(.4px);
}

.booking-app .booking-ecomplaint-file-date::before {
  content: "FILED";
  position: absolute;
  top: -11px;
  left: 10px;
  background: rgba(80,80,80,.9);
  color: #fff;
  font-size: 9px;
  font-weight: 700;
  padding: 2px 7px;
  border-radius: 2px;
  letter-spacing: 1px;
}

.booking-app .booking-ecomplaint-file-date::after {
  content: "CLERK OF THE CIRCUIT COURT";
  position: absolute;
  bottom: 5px;
  right: 8px;
  font-size: 8px;
  color: rgba(60,60,60,.7);
  letter-spacing: .8px;
}

.booking-app .booking-ecomplaint-file-date-right {
  left: 16px;
  top: 126px;
}

.booking-app .booking-ecomplaint-stamp-caption {
  position: absolute;
  bottom: -14px;
  left: 0;
  right: 0;
  text-align: center;
  font-size: 11px;
}

.booking-app .booking-ecomplaint-rule {
  height: 2px;
  background: #000;
  margin: 30px 16px 16px;
}

.booking-app .booking-ecomplaint-count-row {
  margin: 0 16px 22px;
  display: grid;
  grid-template-columns: 110px 1fr;
  align-items: start;
  gap: 8px;
}

.booking-app .booking-ecomplaint-count-row-extra {
  margin-top: 0;
}

.booking-app .booking-ecomplaint-count-box {
  display: grid;
  grid-template-columns: 58px 52px;
  height: 36px;
  font-weight: 700;
  font-size: 13px;
}

.booking-app .booking-ecomplaint-count-box div {
  border: 1.5px solid #000;
  display: flex;
  align-items: center;
  justify-content: center;
}

.booking-app .booking-ecomplaint-charge {
  font-size: 13px;
  font-weight: 700;
  padding-top: 4px;
  text-transform: uppercase;
}

.booking-app .booking-ecomplaint-charge-wrap {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
}

.booking-app .booking-ecomplaint-count-tools {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.booking-app .booking-ecomplaint-mini-btn {
  border: 1px solid rgba(0,0,0,.18);
  background: #fff;
  border-radius: 8px;
  padding: 5px 8px;
  font-size: 10px;
  font-weight: 700;
  cursor: pointer;
}

.booking-app .booking-ecomplaint-mini-btn.danger {
  color: #9b1c1c;
  border-color: rgba(155,28,28,.28);
  background: #fff6f6;
}

.booking-app .booking-ecomplaint-body-redaction {
  margin: -18px 10px 36px 16px;
  height: 220px;
  border: 2px solid #000;
  background: #fff;
  padding: 10px;
}

.booking-app .booking-ecomplaint-body-redaction textarea {
  width: 100%;
  height: 100%;
  border: 0;
  outline: none;
  resize: vertical;
  font-family: inherit;
  font-size: 13px;
  line-height: 1.25;
  background: transparent;
}

.booking-app .booking-law-option {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 8px;
  align-items: start;
  width: 100%;
  cursor: pointer;
}

.booking-app .booking-law-result {
  padding: 10px 12px;
  scroll-snap-align: start;
}

.booking-app .booking-law-option .citation-search-result-copy {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.booking-app .booking-law-option .citation-search-result-copy strong,
.booking-app .booking-law-option .citation-search-result-copy span,
.booking-app .booking-law-option .citation-search-result-copy small {
  margin: 0;
  overflow-wrap: anywhere;
  white-space: normal;
}

.booking-app .booking-law-option .citation-search-result-copy strong {
  font-size: 12px;
}

.booking-app .booking-law-option .citation-search-result-copy span,
.booking-app .booking-law-option .citation-search-result-copy small {
  font-size: 12px;
}

.booking-app .booking-law-option .citation-search-result-copy small {
  color: #475569;
}

.booking-app .booking-ecomplaint-footer {
  position: absolute;
  left: 32px;
  right: 32px;
  bottom: 10px;
  text-align: center;
  font-size: 12px;
  font-weight: 700;
}

.booking-app .booking-ecomplaint-page-no {
  position: absolute;
  right: 0;
  bottom: 0;
  font-size: 12px;
}

.booking-app .booking-ecomplaint-verification-header {
  display: grid;
  grid-template-columns: 260px 210px 260px;
  border: 1.8px solid #111;
  min-height: 255px;
}

.booking-app .booking-ecomplaint-left-info {
  padding: 36px 12px 8px;
}

.booking-app .booking-ecomplaint-middle-info {
  padding: 84px 10px 8px;
  text-align: center;
}

.booking-app .booking-ecomplaint-right-info {
  border-left: 1.8px solid #111;
  position: relative;
}

.booking-app .booking-ecomplaint-field-line {
  border-bottom: 1px solid #000;
  min-height: 24px;
  margin-bottom: 6px;
  display: flex;
  align-items: flex-end;
  padding-bottom: 2px;
}

.booking-app .booking-ecomplaint-field-line-center {
  justify-content: center;
}

.booking-app .booking-ecomplaint-field-label {
  text-align: center;
  font-size: 10px;
  font-weight: 700;
  margin-bottom: 8px;
}

.booking-app .booking-ecomplaint-verify-label {
  background: #000;
  color: #fff;
  font-size: 17px;
  font-weight: 700;
  display: inline-block;
  padding: 10px 35px;
  margin-bottom: 34px;
}

.booking-app .booking-ecomplaint-tiny {
  font-size: 10px;
}

.booking-app .booking-ecomplaint-tiny-gap {
  margin-top: 2px;
}

.booking-app .booking-ecomplaint-verification-copy {
  margin: 12px 6px 8px;
  font-size: 13px;
  line-height: 1.25;
}

.booking-app .booking-ecomplaint-complainant-block {
  margin: 18px 8px 2px;
}

.booking-app .booking-ecomplaint-signature-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px;
  margin-top: 10px;
}

.booking-app .booking-ecomplaint-bold {
  font-weight: 700;
}

.booking-app .booking-ecomplaint-uppercase {
  text-transform: uppercase;
}

.booking-app .booking-ecomplaint-large-redact {
  width: 245px;
  height: 68px;
  border: 2px solid #000;
  background: #fff;
  margin-top: 4px;
  padding: 6px;
}

.booking-app .booking-ecomplaint-signature-copy {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  text-align: center;
  white-space: pre-wrap;
  word-break: break-word;
}

.booking-app .booking-ecomplaint-signature-label {
  border-top: 1px solid #000;
  margin-top: 6px;
  padding-top: 2px;
  text-align: center;
  font-size: 11px;
}

.booking-app .booking-ecomplaint-form-line {
  border-bottom: 2px solid #000;
  margin: 8px 6px;
  padding-bottom: 5px;
}

.booking-app .booking-ecomplaint-form-line-thin {
  border-bottom-width: 1px;
}

.booking-app .booking-ecomplaint-inline-field {
  display: inline-block;
  min-width: 110px;
  border-bottom: 1px solid #000;
  min-height: 17px;
  vertical-align: middle;
  padding: 0 4px 1px;
}

.booking-app .booking-ecomplaint-inline-field-wide {
  min-width: 360px;
}

.booking-app .booking-ecomplaint-defendant-info-head {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 6px 6px 0;
  flex-direction: column;
  gap: 8px;
}

.booking-app .booking-ecomplaint-section-title {
  display: inline-block;
  border: 1px solid #000;
  font-weight: 700;
  padding: 2px 5px;
  background: #fff;
  font-size: 12px;
}

.booking-app .booking-ecomplaint-checkbox {
  display: inline-block;
  width: 12px;
  height: 12px;
  border: 1px solid #000;
  position: relative;
  top: 2px;
  margin: 0 4px;
}

.booking-app .booking-ecomplaint-checkbox.checked::after {
  content: "✓";
  position: absolute;
  left: 0;
  top: -5px;
  font-size: 15px;
  font-weight: 700;
}

.booking-app .booking-ecomplaint-wide-redaction {
  background: #fff;
  margin: 0 0 10px;
  padding: 8px;
}

.booking-app .booking-ecomplaint-data-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6px 14px;
  font-size: 11px;
  line-height: 1;
}

.booking-app .booking-ecomplaint-data-grid-single {
  margin-top: 6px;
  font-size: 11px;
}

.booking-app .booking-ecomplaint-data-field {
  width: 100%;
  min-height: 18px;
  border: 1px solid #000;
  background: #fff;
  margin-top: 2px;
  padding: 2px 4px;
  font-size: 13px;
  line-height: 1.2;
  white-space: pre-wrap;
  word-break: break-word;
}

.booking-app .booking-arrest-warrant-document {
  --page-w: 800px;
  width: min(100%, var(--page-w));
  display: grid;
  gap: 28px;
  justify-items: center;
  padding: 18px 0 28px;
  color: #050505;
  font-family: "Times New Roman", Times, serif;
  font-size: 13px;
  line-height: 1.15;
}

.booking-app .booking-arrest-warrant-document * {
  box-sizing: border-box;
}

.booking-app .booking-arrest-warrant-case-area {
  margin: 8px auto 0;
  width: 190px;
  text-align: center;
}

.booking-app .booking-arrest-warrant-case-group {
  margin-top: 10px;
}

.booking-app .booking-arrest-warrant-black-label {
  background: #000;
  color: #fff;
  display: inline-block;
  padding: 9px 26px;
  font-weight: 700;
  text-align: center;
  line-height: 1.05;
  font-size: 15px;
  margin-top: 28px;
  text-transform: uppercase;
  font-family: Arial, sans-serif;
  white-space: nowrap;
}

.booking-app .booking-arrest-warrant-r-md {
  width: 215px;
}

.booking-app .booking-arrest-warrant-section-title {
  display: inline-block;
  border: 1px solid #000;
  font-weight: 700;
  padding: 2px 5px;
  background: #fff;
  font-size: 12px;
  margin-top: 8px;
  text-transform: uppercase;
}

.booking-app .booking-arrest-warrant-template-grid {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  border-left: 1px solid #111;
  border-top: 1px solid #111;
  font-size: 11px;
  margin-bottom: 0;
}

.booking-app .booking-arrest-warrant-field {
  min-height: 34px;
  border-right: 1px solid #111;
  border-bottom: 1px solid #111;
  padding: 3px 5px;
}

.booking-app .booking-arrest-warrant-field.c2 { grid-column: span 2; }
.booking-app .booking-arrest-warrant-field.c3 { grid-column: span 3; }
.booking-app .booking-arrest-warrant-field.c4 { grid-column: span 4; }
.booking-app .booking-arrest-warrant-field.c6 { grid-column: span 6; }
.booking-app .booking-arrest-warrant-field.c12 { grid-column: span 12; }

.booking-app .booking-arrest-warrant-label {
  display: block;
  font-weight: 700;
  font-size: 10px;
  text-transform: uppercase;
  margin-bottom: 2px;
}

.booking-app .booking-arrest-warrant-value {
  display: block;
  font-size: 12px;
  font-weight: 700;
  min-height: 14px;
  white-space: pre-wrap;
  word-break: break-word;
}

.booking-app .booking-arrest-warrant-intro {
  font-size: 12px;
  font-weight: 700;
  margin: 9px 0 4px;
  text-transform: uppercase;
}

.booking-app .booking-arrest-warrant-body-text {
  font-size: 12px;
  line-height: 1.32;
  text-align: justify;
  margin: 7px 0;
}

.booking-app .booking-arrest-warrant-inline-name {
  display: inline-block;
  min-width: 260px;
  border-bottom: 1px solid #000;
  padding: 0 4px 1px;
}

.booking-app .booking-arrest-warrant-checks {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin-top: 10px;
  font-size: 12px;
}

.booking-app .booking-arrest-warrant-check-row {
  display: flex;
  align-items: flex-start;
  gap: 6px;
  margin: 4px 0;
}

.booking-app .booking-arrest-warrant-signature-area {
  display: grid;
  grid-template-columns: 1fr 235px;
  gap: 30px;
  align-items: end;
  margin-top: 15px;
  font-size: 12px;
}

.booking-app .booking-arrest-warrant-signature-line {
  border-bottom: 1px solid #111;
  min-height: 34px;
  text-align: center;
  line-height: 32px;
}

.booking-app .booking-arrest-warrant-signature-caption {
  text-align: center;
  font-size: 11px;
}

.booking-app input.booking-ecomplaint-checkbox {
  appearance: auto;
  accent-color: #111;
  margin: 0 4px 0 0;
  pointer-events: none;
}

.booking-app input.booking-ecomplaint-checkbox.booking-ecomplaint-checkbox-interactive {
  pointer-events: auto;
  cursor: pointer;
}

@media (max-width: 900px) {
  .booking-document-viewer-meta {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .booking-app .booking-ecomplaint-page {
    min-height: auto;
    padding: 28px 18px 24px;
  }

  .booking-app .booking-ecomplaint-header-box,
  .booking-app .booking-ecomplaint-verification-header,
  .booking-app .booking-ecomplaint-signature-grid,
  .booking-app .booking-ecomplaint-data-grid,
  .booking-app .booking-arrest-warrant-template-grid,
  .booking-app .booking-arrest-warrant-checks,
  .booking-app .booking-arrest-warrant-signature-area {
    grid-template-columns: 1fr;
  }

  .booking-app .booking-ecomplaint-header-left,
  .booking-app .booking-ecomplaint-header-right,
  .booking-app .booking-ecomplaint-right-info {
    border: 0;
  }

  .booking-app .booking-ecomplaint-header-left,
  .booking-app .booking-ecomplaint-header-middle {
    border-bottom: 1.8px solid #111;
  }

  .booking-app .booking-ecomplaint-right-info {
    min-height: 255px;
    border-top: 1.8px solid #111;
  }

  .booking-app .booking-ecomplaint-large-redact {
    width: 100%;
  }

  .booking-app .booking-ecomplaint-inline-field-wide {
    min-width: 180px;
  }

  .booking-app .booking-arrest-warrant-inline-name {
    min-width: 0;
    width: 100%;
  }

  .booking-app .booking-arrest-warrant-field.c2,
  .booking-app .booking-arrest-warrant-field.c3,
  .booking-app .booking-arrest-warrant-field.c4,
  .booking-app .booking-arrest-warrant-field.c6,
  .booking-app .booking-arrest-warrant-field.c12 {
    grid-column: auto;
  }
}

.booking-signature { font-family: "Brush Script MT", "Segoe Script", cursive; font-size: 18px !important; letter-spacing: .02em; text-transform: none; }
.booking-app .booking-submit-btn { min-width: 148px; font-size: 12px; font-weight: 800; padding-inline: 14px; }
.booking-submit-modal p { margin: 0 0 12px; color: #334155; line-height: 1.45; }
.booking-submit-question-group { display: grid; gap: 8px; margin: 0 0 14px; }
.booking-submit-question-group label { font-size: 12px; font-weight: 700; color: #0f172a; line-height: 1.45; }
.booking-submit-question-group input,
.booking-submit-question-group select,
.booking-review-notes {
  width: 100%;
  border: 1px solid rgba(15, 23, 42, .16);
  border-radius: 10px;
  background: #fff;
  padding: 10px 12px;
  font: inherit;
  color: #0f172a;
}
.booking-submit-method-tabs { margin-bottom: 14px; }
.booking-submit-method-tabs button[disabled] { opacity: .45; cursor: default; box-shadow: none; }
.booking-review-notes { min-height: 140px; resize: vertical; }
.booking-submit-error-list { margin: 0 0 12px 18px; padding: 0; color: #7f1d1d; line-height: 1.45; }
.booking-submit-error-list li + li { margin-top: 6px; }
.booking-submit-summary { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-bottom: 12px; }
.booking-submit-summary div { border: 1px solid rgba(0,0,0,.1); border-radius: 10px; padding: 10px; background: #f8fafc; }
.booking-submit-summary span { display: block; font-size: 10px; font-weight: 700; color: #64748b; text-transform: uppercase; letter-spacing: .06em; margin-bottom: 4px; }
.booking-submit-summary strong { font-size: 12px; color: #0f172a; }
.booking-submit-cancel-btn { border: 1px solid rgba(0,0,0,.14); background: #fff; border-radius: 8px; padding: 8px 12px; font-size: 10px; font-weight: 700; cursor: pointer; }
.booking-search-warrant-assignment-note {
  margin: 0 0 12px;
  padding: 10px 12px;
  border: 1px solid rgba(36, 77, 121, .18);
  border-radius: 10px;
  background: #f1f7ff;
  color: #244d79;
  font-size: 11px;
  line-height: 1.45;
  font-weight: 700;
}
.booking-search-warrant-assignment select {
  max-width: 100%;
}

@media (max-width: 1360px) {
  .booking-app { grid-template-columns: 1fr; }
  .booking-app .sheet-wrap,
  .booking-app .panel-stack { max-width: none; padding-inline: 0; }
  .booking-app .sheet { width: 100%; }
}

@media (max-width: 980px) {
  .booking-home-shell {
    padding: 0;
  }

  .booking-home-shell-grid {
    grid-template-columns: 1fr;
    border-radius: 0;
  }

  .booking-home-sidebar {
    display: none;
  }

  .booking-home-main {
    padding: 18px;
  }

  .booking-home-actions {
    grid-template-columns: 1fr;
  }

  .booking-home-columns {
    grid-template-columns: 1fr;
  }

  .booking-home-skyline {
    width: 65%;
    opacity: .35;
  }

  .booking-home-draft-row {
    grid-template-columns: 48px 1fr 90px;
  }

  .booking-home-date,
  .booking-home-more {
    display: none;
  }
}

@media (max-width: 840px) {
  .booking-app { padding: 10px; }
  .booking-app .fields { grid-template-columns: 1fr; }
  .booking-app .booking-vehicle-admin-fields { grid-template-columns: 1fr; }
  .booking-app .title { font-size: 18px; }
  .booking-app .sheet-grid { grid-template-columns: 44px 1fr; }
  .booking-app .vlabel { font-size: 11px; }
}
#welcomeWindow #desktopWorkspaceTitle {
  white-space: nowrap;
  max-width: 100%;
}

.dispatch-cad-window { background:#223246; }
.dispatch-cad-window .app-window-body.dispatch-cad-body { padding:0; height:calc(100% - var(--window-chrome-height, 72px)); min-height:0; display:flex; flex-direction:column; background:#223246; overflow:hidden; }
.dispatch-cad-window.maximized .app-window-body.dispatch-cad-body { height:calc(100vh - var(--taskbar-height, 40px) - var(--window-chrome-height, 72px) - 2px); }
.dispatch-cad-window .app-window-body.dispatch-cad-body {
  --dispatch-cad-button-bg: linear-gradient(#39546F, #5f8bb7);
  --dispatch-cad-button-shadow:
    inset -1px -1px #292929,
    inset 1px 1px #889caf,
    inset -2px -2px #132B41,
    inset 2px 2px #ffffff;
  --dispatch-cad-button-shadow-active:
    inset -1px -1px #183148,
    inset 1px 1px #183148,
    inset -2px -2px #183148,
    inset 2px 2px rgb(158, 158, 158);
  --dispatch-cad-button-color:#ebebeb;
}
.dispatch-cad-window .app-window-body.dispatch-cad-body button:not(.dispatch-proto-tag):not(.dispatch-proto-custom-marker):not(.dispatch-cad-marker) {
  font-family:inherit;
  border:none;
  outline:1px dotted #BFCDDC;
  outline-offset:-6px;
  cursor:pointer;
  background:var(--dispatch-cad-button-bg);
  box-shadow:var(--dispatch-cad-button-shadow);
  color:var(--dispatch-cad-button-color);
  text-transform:uppercase;
  letter-spacing:2px;
  transition:transform .18s cubic-bezier(.22,1,.36,1), filter .18s ease, box-shadow .18s ease, background .18s ease;
}
.dispatch-cad-window .app-window-body.dispatch-cad-body button::before {
  content:none;
}
.dispatch-cad-window .app-window-body.dispatch-cad-body button:hover::before,
.dispatch-cad-window .app-window-body.dispatch-cad-body button:focus-visible::before {
  content:none;
}
.dispatch-cad-window .app-window-body.dispatch-cad-body button:not(.dispatch-proto-tag):not(.dispatch-proto-custom-marker):not(.dispatch-cad-marker):hover,
.dispatch-cad-window .app-window-body.dispatch-cad-body button:not(.dispatch-proto-tag):not(.dispatch-proto-custom-marker):not(.dispatch-cad-marker):focus-visible {
  transform:translateY(-2px);
  filter:brightness(1.08);
  box-shadow:0 5px 14px rgba(0,0,0,.22), var(--dispatch-cad-button-shadow);
}
.dispatch-cad-window .app-window-body.dispatch-cad-body button:not(.dispatch-proto-tag):not(.dispatch-proto-custom-marker):not(.dispatch-cad-marker):active {
  transform:none;
  filter:none;
  box-shadow:var(--dispatch-cad-button-shadow-active);
}
.dispatch-cad-shell { flex:1 1 auto; min-height:0; height:100%; display:grid; grid-template-rows:auto auto minmax(0,1fr); background:linear-gradient(180deg,#223246 0%,#1b2735 100%); color:#ecf4ff; overflow:hidden; }
.dispatch-cad-topbar { display:grid; grid-template-columns:minmax(240px,1fr) auto minmax(240px,1fr); gap:clamp(8px,1vw,14px); align-items:center; padding:12px 16px 8px; border-bottom:1px solid rgba(130,160,195,.18); background:#31475f; }
.dispatch-cad-kicker { font-size:11px; letter-spacing:.18em; text-transform:uppercase; color:#86b6ec; margin-bottom:6px; }
.dispatch-cad-topbar h2 { margin:0; font-size:16px; font-weight:700; }
.dispatch-cad-topbar p { margin:4px 0 0; color:#9fb6d1; max-width:620px; font-size:12px; line-height:1.35; }
.dispatch-cad-topbar p.error { color:#ffb8b8; }
.dispatch-cad-top-stats { justify-self:center; align-self:center; width:auto; display:grid; grid-template-columns:repeat(8,minmax(168px,1fr)); gap:18px; }
.dispatch-cad-top-actions { display:flex; gap:8px; align-items:center; justify-self:end; align-self:start; flex-wrap:wrap; justify-content:flex-end; }
.dispatch-cad-top-actions button { border:1px solid #5d7694; background:#213347; color:#eef6ff; min-height:32px; padding:0 12px; font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.04em; }
.dispatch-cad-top-actions button,
.dispatch-proto-ctl,
.dispatch-proto-tiny,
.dispatch-proto-map-action-btn,
.dispatch-proto-marker-actions button,
.dispatch-settings-actions button,
.dispatch-proto-watch,
.dispatch-proto-timer-btn,
.dispatch-proto-close-unit-btn,
.mdt-modal button {
  transition: transform .18s cubic-bezier(.22, 1, .36, 1), filter .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}
.dispatch-cad-top-stats .dispatch-cad-stat-card { min-height:148px; padding:18px 14px; }
.dispatch-cad-top-stats .dispatch-cad-stat-card strong { font-size:74px; }
.dispatch-cad-top-stats .dispatch-cad-stat-card span { font-size:28px; }
.dispatch-cad-stats { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:8px; padding:8px 16px 0; }
.dispatch-cad-stats article { border:1px solid rgba(106,138,173,.26); background:#223445; padding:8px 10px; display:grid; gap:4px; min-height:58px; }
.dispatch-cad-stats span { font-size:11px; letter-spacing:.12em; text-transform:uppercase; color:#8ca8c6; }
.dispatch-cad-stats strong { font-size:18px; color:#f5fbff; line-height:1; }
.dispatch-cad-stats.hidden { display:none; }
.dispatch-cad-workspace { min-height:0; height:100%; padding:4px 8px 8px; overflow:hidden; }
.dispatch-cad-workspace-proto { height:100%; padding:0; overflow:hidden; }
.dispatch-cad-loading-shell { height:100%; }
.dispatch-proto-app { width:100%; height:100%; min-width:0; min-height:0; display:grid; grid-template-rows:minmax(0,1fr); background:linear-gradient(180deg,#12263c 0%,#0d1e30 100%); border:1px solid #35516e; box-shadow:0 0 0 1px rgba(0,0,0,.45); overflow:hidden; box-sizing:border-box; align-self:stretch; justify-self:stretch; }
.dispatch-proto-metric { min-width:52px; background:#122437; border:1px solid #27435f; box-shadow:inset 0 1px 0 rgba(255,255,255,.03); padding:9px 6px 8px; text-align:center; }
.dispatch-proto-metric .num { display:block; font-size:14px; font-weight:700; line-height:1; margin-bottom:2px; color:#fff; }
.dispatch-proto-metric .num.compact { font-size:8px; line-height:1.1; margin-top:2px; }
.dispatch-proto-metric.red .num { color:#ef5561; }
.dispatch-proto-metric.green .num { color:#38d37e; }
.dispatch-proto-metric.yellow .num { color:#f7d548; }
.dispatch-proto-metric .lbl { display:block; font-size:7px; line-height:1; text-transform:uppercase; letter-spacing:.06em; color:#b1c3d6; white-space:nowrap; }
.dispatch-proto-toolbar { display:flex; align-items:center; gap:6px; padding:7px 10px; border-bottom:1px solid #27435f; background:#10253b; min-height:36px; }
.dispatch-proto-toolbar .label { font-size:13px; font-weight:700; color:#dce8f5; margin-right:8px; white-space:nowrap; }
.dispatch-proto-tool { width:20px; height:20px; border:1px solid #4d6c8b; background:linear-gradient(180deg,#23405b 0%,#17304a 100%); position:relative; box-shadow:inset 0 1px 0 rgba(255,255,255,.03); flex:0 0 auto; }
.dispatch-proto-tool::before { content:""; position:absolute; left:5px; top:5px; width:8px; height:8px; background:#f2c94c; opacity:.9; }
.dispatch-proto-workspace { display:grid; grid-template-columns:minmax(760px,1.9fr) 184px minmax(760px,1.6fr); width:100%; min-width:0; min-height:0; height:100%; align-self:stretch; overflow:hidden; }
.dispatch-proto-left,
.dispatch-proto-center,
.dispatch-proto-right { min-height:0; height:100%; }
.dispatch-proto-left { border-right:1px solid #27435f; background:linear-gradient(180deg,#10263b 0%,#0d2033 100%); display:grid; grid-template-rows:520px 1fr; }
.dispatch-proto-left.assignment-expanded { grid-template-rows:420px minmax(260px,1fr); }
.dispatch-proto-left.draft-expanded { grid-template-rows:var(--dispatch-proto-left-draft-top-height, 520px) minmax(0,1fr); }
.dispatch-proto-left.draft-leads-expanded { grid-template-rows:var(--dispatch-proto-left-draft-top-height, 300px) minmax(260px,1fr); }
.dispatch-proto-left.draft-expanded .dispatch-proto-block:first-child { display:grid; grid-template-rows:28px minmax(0,1fr); }
.dispatch-proto-left.draft-expanded .dispatch-proto-block > .dispatch-proto-fill-wrap { height:100%; min-height:0; }
.dispatch-proto-left.detail-expanded { grid-template-rows:minmax(0,1fr); }
.dispatch-proto-left.detail-expanded .dispatch-proto-block { display:grid; grid-template-rows:28px minmax(0,1fr); }
.dispatch-proto-left.detail-expanded .dispatch-proto-block { border-bottom:0; }
.dispatch-proto-left.detail-expanded .dispatch-proto-block-responders { display:none; }
.dispatch-proto-center { border-right:1px solid #27435f; background:linear-gradient(180deg,#11283f 0%,#0f2236 100%); display:grid; grid-template-rows:220px 1fr; }
.dispatch-proto-right { background:linear-gradient(180deg,#10263b 0%,#0d2033 100%); display:grid; grid-template-rows:minmax(0,1fr) 150px; }
.dispatch-proto-right.detail-expanded { grid-template-rows:320px 154px minmax(160px,1fr); }
.dispatch-proto-right.detail-expanded.assignment-expanded { grid-template-rows:320px 118px minmax(280px,1fr); }
.dispatch-proto-right.detail-expanded > #dispatchProtoMapSlot,
.dispatch-proto-right.detail-expanded > .dispatch-proto-map-wrap { min-height:320px; height:320px; align-self:stretch; }
.dispatch-proto-right.detail-expanded > #dispatchProtoMapSlot > .dispatch-proto-map-wrap,
.dispatch-proto-right.detail-expanded > .dispatch-proto-map-wrap { min-height:320px; height:100%; }
.dispatch-proto-right.detail-expanded > .dispatch-proto-events { min-height:154px; height:154px; }
.dispatch-proto-right.detail-expanded.assignment-expanded > .dispatch-proto-events { min-height:118px; height:118px; }
.dispatch-proto-block { border-bottom:1px solid #27435f; position:relative; min-height:0; height:100%; }
.dispatch-proto-block-responders { border-bottom:0; }
.dispatch-proto-block-responders.assignment-expanded { overflow:visible; }
.dispatch-proto-block-responders.dispatch-proto-block-leads {
  display:grid;
  grid-template-rows:28px minmax(0,1fr);
  overflow:hidden;
}
.dispatch-proto-block-responders.dispatch-proto-block-leads.dynamic-fit {
  overflow:visible;
}
.dispatch-proto-section-title { height:28px; display:flex; align-items:center; justify-content:space-between; padding:0 10px; border-bottom:1px solid #1e3851; background:linear-gradient(180deg,#17324b 0%,#132b42 100%); text-transform:uppercase; font-size:12px; font-weight:700; letter-spacing:.05em; color:#dce7f3; white-space:nowrap; }
.dispatch-proto-section-title .count { text-transform:none; color:#8ea8c3; font-size:10px; letter-spacing:0; font-weight:600; white-space:nowrap; }
.dispatch-proto-fill-wrap { height:calc(100% - 28px); min-height:0; }
.dispatch-proto-table-wrap { min-height:0; overflow:auto; }
.dispatch-proto-table { width:100%; border-collapse:collapse; table-layout:fixed; }
.dispatch-proto-table thead th { height:26px; padding:5px 8px; font-size:11px; font-weight:700; color:#88a3be; text-transform:uppercase; letter-spacing:.06em; border-bottom:1px solid #1e3851; text-align:left; white-space:nowrap; }
.dispatch-proto-table tbody td { padding:9px 8px; font-size:12px; border-bottom:1px solid rgba(40,66,92,.7); color:#dce8f6; vertical-align:middle; }
.dispatch-proto-table.calls tbody tr { cursor:pointer; }
.dispatch-proto-table.calls tbody tr:hover { background:rgba(52,79,107,.28); }
.dispatch-proto-table.calls tbody tr.active { background:rgba(63,103,141,.34); box-shadow:inset 2px 0 0 #4aa1ff; }
.dispatch-proto-table.calls tbody tr.dispatch-proto-call-drop-target { transition:background .14s ease, box-shadow .14s ease; }
.dispatch-proto-table.calls tbody tr.dispatch-proto-call-drop-hover { background:rgba(72,132,188,.34); box-shadow:inset 0 0 0 1px rgba(140,194,255,.65), inset 4px 0 0 #86c2ff; }
.dispatch-proto-table.calls thead th:nth-child(1) { width:86px; }
.dispatch-proto-table.calls thead th:nth-child(2) { width:132px; }
.dispatch-proto-table.calls thead th:nth-child(3) { width:126px; }
.dispatch-proto-table.calls thead th:nth-child(5) { width:44px; text-align:center; }
.dispatch-proto-table.calls thead th:nth-child(6) { width:54px; text-align:center; }
.dispatch-proto-table.calls thead th:nth-child(7) { width:72px; }
.dispatch-proto-table.calls thead th:nth-child(8) { width:104px; text-align:left; padding-left:4px; padding-right:16px; }
.dispatch-proto-table.calls tbody td:nth-child(8) { text-align:left; padding-left:4px; padding-right:16px; }
.dispatch-proto-table.active-units thead th:nth-child(1) { width:68px; text-align:center; }
.dispatch-proto-table.active-units thead th:nth-child(2) { width:52px; text-align:center; }
.dispatch-proto-table.active-units thead th:nth-child(3) { width:auto; }
.dispatch-proto-table.active-units thead th:nth-child(5) { width:150px; }
.dispatch-proto-table.active-units thead th:nth-child(6) { width:48px; }
.dispatch-proto-table.active-units thead th:nth-child(7) { width:100px; text-align:center; }
.dispatch-proto-table.active-units thead th:nth-child(8) { width:140px; }
.dispatch-proto-table.active-units thead th:nth-child(9) { width:130px; text-align:center; }
.dispatch-proto-empty { text-align:center; color:#7f9bbb; font-size:12px; }
.dispatch-proto .score-link, .dispatch-proto-app .score-link { color:#6fb9ff; font-weight:700; }
.dispatch-proto-app .callid { color:#dfeefe; font-weight:700; }
.dispatch-proto-app .prio { width:18px; height:18px; display:inline-grid; place-items:center; background:#f7d548; color:#242424; font-weight:800; border-radius:3px; font-size:11px; margin-top:1px; }
.dispatch-proto-app .td-center { text-align:center; }
.dispatch-proto-mini-panel { min-height:0; display:grid; grid-template-rows:28px minmax(0,1fr); border-bottom:1px solid #27435f; height:100%; }
.dispatch-proto-mini-panel:last-child { border-bottom:0; }
.dispatch-proto-center-grid { padding:8px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; align-content:start; min-height:0; }
.dispatch-proto-center-grid .dispatch-proto-ctl.wide,
.dispatch-proto-center-grid .dispatch-proto-split-ctl.wide { grid-column:1 / -1; }
.dispatch-proto-ctl { min-height:38px; border:1px solid #39546f; background:linear-gradient(180deg,#1d3851 0%,#132b41 100%); box-shadow:inset 0 1px 0 rgba(255,255,255,.03); display:flex; align-items:center; justify-content:center; flex-direction:column; font-size:10px; color:#dce8f5; text-transform:uppercase; letter-spacing:.04em; padding:4px 3px; text-align:center; gap:3px; white-space:nowrap; overflow:hidden; }
.dispatch-proto-ctl .icon { width:9px; height:9px; border-radius:1px; background:#d8e7f5; opacity:.9; flex:0 0 auto; }
.dispatch-proto-ctl.red { background:linear-gradient(180deg,#812532 0%,#5b1822 100%); border-color:#ad4451; }
.dispatch-proto-split-ctl { display:grid; grid-template-columns:5fr 3fr; gap:6px; min-height:38px; }
.dispatch-proto-split-ctl .dispatch-proto-ctl { width:100%; min-width:0; min-height:38px; }
.dispatch-proto-split-side { border-color:#547a45; background:linear-gradient(180deg,#2d5b3c 0%,#1f422d 100%); color:#f0ffef; }
.dispatch-proto-responders-area { height:calc(100% - 28px); background:linear-gradient(180deg,rgba(255,255,255,.01),rgba(255,255,255,0)); overflow:auto; }
.dispatch-proto-block-responders.assignment-expanded .dispatch-proto-responders-area { overflow:visible; }
.dispatch-proto-map-wrap { display:grid; grid-template-rows:28px 1fr; height:100%; min-height:0; }
.dispatch-proto-map-head { height:28px; padding:0 10px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid #1e3851; background:linear-gradient(180deg,#17324b 0%,#132b42 100%); color:#dce7f3; font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.05em; white-space:nowrap; }
.dispatch-proto-map-panel { padding:6px 6px 0; display:grid; grid-template-rows:22px minmax(0,1fr); min-height:0; }
.dispatch-proto-right.detail-expanded .dispatch-proto-map-panel { min-height:0; height:calc(100% - 28px); }
.dispatch-proto-map-subrow { display:flex; align-items:center; justify-content:space-between; color:#87a3bf; font-size:10px; padding:0 4px 4px; gap:8px; white-space:nowrap; min-width:0; }
.dispatch-proto-map-subrow > div:first-child { min-width:0; flex:1 1 auto; }
.dispatch-proto-reset-wrap { display:flex; align-items:center; gap:6px; color:#f1f6fb; }
.dispatch-proto-tiny { height:18px; padding:0 7px; border:1px solid #486583; background:linear-gradient(180deg,#223d59 0%,#17314b 100%); color:#e5eef8; font-size:10px; font-weight:700; box-shadow:inset 0 1px 0 rgba(255,255,255,.03); white-space:nowrap; }
.dispatch-proto-tiny-green { border-color:#2f7a4d; background:linear-gradient(180deg,#2f8f57 0%,#236b41 100%); color:#f4fff8; }
.dispatch-proto-tiny-green:hover { border-color:#45a96a; background:linear-gradient(180deg,#39a962 0%,#2a7f4d 100%); }
.dispatch-proto-tiny-danger { border-color:#a4525c; background:linear-gradient(180deg,#7a2631 0%,#5b1822 100%); color:#fff2f4; }
.dispatch-proto-tiny-danger:hover { border-color:#c86a75; background:linear-gradient(180deg,#91303d 0%,#6d1f2b 100%); }
.dispatch-proto-map { border:1px solid #27435f; background:linear-gradient(rgba(72,109,147,.2) 1px, transparent 1px), linear-gradient(90deg, rgba(72,109,147,.2) 1px, transparent 1px), linear-gradient(180deg,#071828 0%,#091a29 100%); background-size:22px 22px, 22px 22px, auto; position:relative; overflow:hidden; cursor:crosshair; touch-action:none; user-select:none; -webkit-user-select:none; z-index:1; }
.dispatch-proto-right.detail-expanded .dispatch-proto-map { min-height:0; height:100%; }
.dispatch-proto-map.is-armed { cursor:crosshair; }
.dispatch-proto-map.is-dragging { cursor:grabbing; }
.dispatch-proto-map-card { position:absolute; left:0; top:0; width:100%; height:100%; background:linear-gradient(180deg,#1cb9e4 0%,#23addd 100%); box-shadow:0 0 0 1px rgba(255,255,255,.06); overflow:hidden; transform-origin:0 0; will-change:transform; z-index:2; pointer-events:auto; }
.dispatch-proto-map-image { width:100%; height:100%; object-fit:fill; display:block; }
.dispatch-proto-map-overlays,
.dispatch-proto-map-markers { position:absolute; inset:0; }
.dispatch-proto-map-overlays { pointer-events:none; z-index:3; }
.dispatch-proto-map-markers { pointer-events:none; z-index:4; }
.dispatch-proto-live-units { position:absolute; inset:0; z-index:5; pointer-events:none; }
.dispatch-proto-map-menu-layer { position:absolute; inset:0; z-index:8; pointer-events:none; }
.dispatch-proto-map-action-bar { position:absolute; left:10px; bottom:10px; z-index:12; pointer-events:none; }
.dispatch-proto-map-action-btn { min-height:26px; padding:0 10px; border:1px solid #486583; background:linear-gradient(180deg,#223d59 0%,#17314b 100%); color:#e5eef8; font-size:10px; font-weight:700; pointer-events:auto; }
.dispatch-proto-map.polygon-armed { cursor:crosshair; }
.dispatch-proto-geometry-overlay { position:absolute; inset:0; width:100%; height:100%; overflow:visible; }
.dispatch-proto-geometry-overlay,
.dispatch-proto-geometry-overlay * { pointer-events:none !important; }
.dispatch-proto-marker-polygon-overlay { position:absolute; inset:0; width:100%; height:100%; overflow:visible; pointer-events:none; }
.dispatch-proto-geometry { vector-effect:non-scaling-stroke; }
.dispatch-proto-geometry.county { fill:rgba(88,168,255,.05); stroke:rgba(120,170,221,.45); stroke-width:.26; }
.dispatch-proto-geometry.city { fill:rgba(56,211,126,.07); stroke:rgba(104,214,157,.5); stroke-width:.24; }
.dispatch-proto-geometry.street { fill:none; stroke:rgba(255,243,208,.5); stroke-width:.18; }
.dispatch-proto-geometry.street-node { fill:rgba(255,243,208,.7); stroke:rgba(15,34,54,.75); stroke-width:.10; }
.dispatch-proto-geometry.postal { fill:rgba(247,213,72,.85); stroke:rgba(15,34,54,.8); stroke-width:.12; }
.dispatch-proto-geometry.postal-label { fill:#6e1d1d; font-size:2.4px; font-weight:800; text-anchor:middle; dominant-baseline:middle; paint-order:stroke; stroke:#0f2236; stroke-width:.45px; letter-spacing:.02em; transition:none !important; animation:none !important; }
.dispatch-proto-marker-polygon { fill:rgba(88,168,255,.15); stroke:rgba(88,168,255,.5); stroke-width:.45; vector-effect:non-scaling-stroke; }
.dispatch-proto-marker-polygon.draft { fill:none; stroke:rgba(247,213,72,.65); stroke-dasharray:1 1; }
.dispatch-proto-radial-menu { position:absolute; width:212px; height:212px; transform:translate(-50%,-50%); z-index:10; pointer-events:auto; }
.dispatch-proto-radial-menu svg { width:100%; height:100%; overflow:visible; filter:drop-shadow(0 12px 24px rgba(0,0,0,.26)); }
.dispatch-proto-radial-sector-group { cursor:pointer; }
.dispatch-proto-radial-sector { stroke:rgba(156,162,171,.9); stroke-width:1; transition:stroke .18s ease, filter .18s ease, opacity .18s ease; }
.dispatch-proto-radial-sector.is-primary { stroke:rgba(54,139,190,.95); }
.dispatch-proto-radial-sector-group:hover .dispatch-proto-radial-sector,
.dispatch-proto-radial-sector-group[data-active="1"] .dispatch-proto-radial-sector { stroke:#2397d1; filter:brightness(1.06) saturate(1.12); }
.dispatch-proto-radial-sector-group:hover .dispatch-proto-radial-label,
.dispatch-proto-radial-sector-group[data-active="1"] .dispatch-proto-radial-label { fill:#ffffff; stroke:rgba(10,34,58,.55); stroke-width:.58px; }
.dispatch-proto-radial-label { fill:#1c2732; font-size:7.8px; font-weight:900; text-anchor:middle; dominant-baseline:middle; pointer-events:none; letter-spacing:.02em; paint-order:stroke; stroke:rgba(255,255,255,.82); stroke-width:.5px; }
.dispatch-proto-radial-sector-group .dispatch-proto-radial-sector.is-primary ~ .dispatch-proto-radial-label { fill:#ffffff; stroke:rgba(10,34,58,.55); stroke-width:.58px; }
.dispatch-proto-radial-label.is-plus { font-size:12px; font-weight:700; }
.dispatch-proto-radial-plus-mark { pointer-events:none; transition:filter .18s ease; }
.dispatch-proto-radial-sector-group:hover .dispatch-proto-radial-plus-mark,
.dispatch-proto-radial-sector-group[data-active="1"] .dispatch-proto-radial-plus-mark { filter:drop-shadow(0 0 3px rgba(0,0,0,.22)); }
.dispatch-proto-radial-label.is-compact { font-size:5.2px; }
.dispatch-proto-radial-center { stroke:rgba(205,210,216,.95); stroke-width:1; transition:filter .18s ease, stroke .18s ease; }
.dispatch-proto-radial-center-group:hover .dispatch-proto-radial-center,
.dispatch-proto-radial-center-group:focus-visible .dispatch-proto-radial-center { stroke:#93c8e8; filter:brightness(1.02); }
.dispatch-proto-radial-center-title { fill:#2a3139; font-size:6.3px; font-weight:500; text-anchor:middle; dominant-baseline:middle; pointer-events:none; paint-order:stroke; stroke:rgba(255,255,255,.72); stroke-width:.26px; }
.dispatch-proto-radial-center-subtitle { fill:#535c66; font-size:3.2px; font-weight:500; text-anchor:middle; dominant-baseline:middle; pointer-events:none; letter-spacing:.02em; paint-order:stroke; stroke:rgba(255,255,255,.6); stroke-width:.16px; }
.dispatch-proto-radial-center-group { cursor:pointer; }
.dispatch-proto-map-debug { position:absolute; right:8px; bottom:8px; width:320px; max-width:calc(100% - 16px); max-height:46%; display:none; grid-template-rows:24px minmax(0,1fr); border:1px solid #486583; background:rgba(8,18,30,.97); z-index:30; box-shadow:0 10px 24px rgba(0,0,0,.34); pointer-events:auto; }
.dispatch-proto-map-debug.open,
.dispatch-proto-map-debug[data-open="1"] { display:grid; }
.dispatch-proto-map-debug-head { display:flex; align-items:center; justify-content:space-between; padding:0 8px; background:linear-gradient(180deg,#17324b 0%,#132b42 100%); border-bottom:1px solid #1e3851; color:#dce7f3; font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.05em; }
.dispatch-proto-map-debug-body { min-height:0; overflow:auto; padding:6px; display:grid; gap:6px; font-size:10px; }
.dispatch-proto-map-debug-entry { border:1px solid #2f4963; background:#10263c; padding:5px 6px; }
.dispatch-proto-map-debug-line { display:flex; gap:8px; align-items:flex-start; color:#dce8f5; }
.dispatch-proto-map-debug-line strong { color:#8cc2ff; flex:0 0 auto; }
.dispatch-proto-map-debug-entry pre { margin:4px 0 0; white-space:pre-wrap; word-break:break-word; color:#a9bfd5; font-size:9px; font-family:Consolas, 'Courier New', monospace; }
.dispatch-proto-map-debug-empty { color:#8ea8c3; }
.dispatch-proto-map-image, .dispatch-proto-tag { -webkit-user-drag:none; user-select:none; -webkit-user-select:none; }
.dispatch-proto-map-image { pointer-events:none; }
.dispatch-proto-tag { position:absolute; transform:translate(-50%,-50%) scale(var(--dispatch-proto-marker-scale, 1)); transform-origin:center center; padding:2px 5px; background:#6e3134; color:#fff; border:1px solid #dcc57b; font-size:9px; font-weight:700; text-transform:uppercase; letter-spacing:.06em; white-space:nowrap; z-index:4; }
.dispatch-proto-tag.draft { background:#70511f; border-color:#f0c87a; }
.dispatch-proto-tag.pending { background:#6e3134; border-color:#dcc57b; }
.dispatch-proto-tag.active { background:#244b77; border-color:#8cc2ff; }
.dispatch-proto-tag.selected { box-shadow:0 0 0 2px rgba(255,255,255,.22); }
.dispatch-cad-window .app-window-body.dispatch-cad-body button.dispatch-proto-tag,
.dispatch-cad-window .app-window-body.dispatch-cad-body button.dispatch-proto-custom-marker {
  pointer-events:auto;
  cursor:pointer;
  appearance:none;
  -webkit-appearance:none;
  transition:none;
  min-width:0 !important;
  min-height:0 !important;
  width:auto !important;
  height:auto !important;
  padding:0 !important;
  margin:0 !important;
  border-radius:0 !important;
  outline:none !important;
}
.dispatch-cad-window .app-window-body.dispatch-cad-body button.dispatch-proto-tag::before,
.dispatch-cad-window .app-window-body.dispatch-cad-body button.dispatch-proto-tag:hover::before,
.dispatch-cad-window .app-window-body.dispatch-cad-body button.dispatch-proto-tag:focus-visible::before,
.dispatch-cad-window .app-window-body.dispatch-cad-body button.dispatch-proto-tag:active::before,
.dispatch-cad-window .app-window-body.dispatch-cad-body button.dispatch-proto-custom-marker::before,
.dispatch-cad-window .app-window-body.dispatch-cad-body button.dispatch-proto-custom-marker:hover::before,
.dispatch-cad-window .app-window-body.dispatch-cad-body button.dispatch-proto-custom-marker:focus-visible::before,
.dispatch-cad-window .app-window-body.dispatch-cad-body button.dispatch-proto-custom-marker:active::before {
  content:none !important;
  display:none !important;
}
.dispatch-cad-window .app-window-body.dispatch-cad-body button.dispatch-proto-tag:hover,
.dispatch-cad-window .app-window-body.dispatch-cad-body button.dispatch-proto-tag:focus-visible,
.dispatch-cad-window .app-window-body.dispatch-cad-body button.dispatch-proto-tag:active,
.dispatch-cad-window .app-window-body.dispatch-cad-body button.dispatch-proto-custom-marker:hover,
.dispatch-cad-window .app-window-body.dispatch-cad-body button.dispatch-proto-custom-marker:focus-visible,
.dispatch-cad-window .app-window-body.dispatch-cad-body button.dispatch-proto-custom-marker:active {
  transform:translate(-50%,-50%) scale(var(--dispatch-proto-marker-scale, 1)) !important;
  box-shadow:none !important;
  filter:none !important;
  background:transparent !important;
  border:0 !important;
  min-width:0 !important;
  min-height:0 !important;
  width:auto !important;
  height:auto !important;
  padding:0 !important;
  margin:0 !important;
  border-radius:0 !important;
  outline:none !important;
}
.dispatch-proto-custom-marker { position:absolute; transform:translate(-50%,-50%) scale(var(--dispatch-proto-marker-scale, 1)); transform-origin:center center; display:inline-flex; flex-direction:column; align-items:center; justify-content:center; gap:3px; padding:0; border:0; background:transparent; color:#eef5ff; pointer-events:auto; cursor:pointer; }
.dispatch-proto-custom-marker,
.dispatch-proto-custom-marker:hover,
.dispatch-proto-custom-marker:focus-visible,
.dispatch-proto-custom-marker:active,
.dispatch-proto-tag,
.dispatch-proto-tag:hover,
.dispatch-proto-tag:focus-visible,
.dispatch-proto-tag:active {
  background-clip:padding-box;
}
.dispatch-proto-custom-marker-dot { width:8px; height:8px; border-radius:999px; background:#58a8ff; border:1px solid #eef5ff; box-shadow:0 0 0 1px rgba(15,34,54,.6); }
.dispatch-proto-custom-marker-label { order:-1; font-size:9px; font-weight:800; letter-spacing:.04em; text-transform:uppercase; white-space:nowrap; text-align:center; color:#7a1f27; text-shadow:0 1px 0 rgba(255,255,255,.55), 0 0 2px rgba(255,255,255,.35); pointer-events:none; }
.dispatch-proto-live-unit { position:absolute; transform:translate(-50%,-50%) scale(var(--dispatch-proto-marker-scale,1)); transform-origin:center center; display:inline-flex; flex-direction:column; align-items:center; justify-content:center; gap:2px; min-width:0 !important; min-height:0 !important; padding:0 !important; margin:0 !important; border:0 !important; background:transparent !important; box-shadow:none !important; filter:none !important; border-radius:0 !important; pointer-events:auto; transition:left .45s ease, top .45s ease; }
.dispatch-proto-live-unit:hover,
.dispatch-proto-live-unit:focus-visible,
.dispatch-proto-live-unit:active { transform:translate(-50%,-50%) scale(var(--dispatch-proto-marker-scale,1)) !important; background:transparent !important; border:0 !important; box-shadow:none !important; filter:none !important; }
.dispatch-proto-live-unit-icon { width:11px; height:11px; display:block; clip-path:polygon(50% 0, 100% 52%, 50% 100%, 0 52%); background:#6fd0ff; border:1px solid rgba(238,245,255,.82); box-shadow:0 0 0 1px rgba(15,34,54,.62); }
.dispatch-proto-live-unit.stale .dispatch-proto-live-unit-icon { background:#97aabd; border-color:rgba(212,224,238,.72); }
.dispatch-proto-live-unit-label { display:inline-flex; align-items:center; justify-content:center; min-height:14px; padding:0 5px; border:1px solid rgba(126,167,210,.55); background:rgba(16,31,47,.9); color:#eef6ff; font-size:8px; font-weight:800; letter-spacing:.05em; white-space:nowrap; line-height:1; }
.dispatch-proto-live-unit.stale .dispatch-proto-live-unit-label { color:#c8d7e8; border-color:rgba(130,153,176,.55); }
.dispatch-proto-live-unit-speed { position:absolute; top:100%; margin-top:4px; padding:2px 5px; border:1px solid rgba(126,167,210,.55); background:rgba(8,18,30,.96); color:#eef6ff; font-size:8px; font-weight:700; white-space:nowrap; opacity:0; pointer-events:none; transition:opacity .18s ease; }
.dispatch-proto-live-unit:hover .dispatch-proto-live-unit-speed,
.dispatch-proto-live-unit:focus-visible .dispatch-proto-live-unit-speed { opacity:1; }
.dispatch-proto-road-overlay { position:absolute; inset:0; width:100%; height:100%; pointer-events:none; overflow:visible; }
.dispatch-proto-road-overlay polyline { fill:none; stroke:#7e91a4; stroke-width:.42; stroke-linecap:round; stroke-linejoin:round; vector-effect:non-scaling-stroke; opacity:.7; }
.dispatch-proto-road-overlay text { fill:#d9e8f6; font-size:1.65px; font-weight:700; text-anchor:middle; paint-order:stroke; stroke:#0f2236; stroke-width:.35px; }
.dispatch-proto-events { min-height:0; height:100%; overflow:hidden; border-top:1px solid #27435f; }
.dispatch-proto-events .dispatch-proto-table thead th { font-size:10px; text-align:center; }
.dispatch-proto-events .dispatch-proto-table tbody td { font-size:10px; color:#ffffff; text-align:center; padding-top:8px; padding-bottom:7px; }
.dispatch-proto-right.detail-expanded .dispatch-proto-events .dispatch-proto-table tbody tr { height:25px; }
.dispatch-proto-events .dispatch-proto-placeholder-row td { color:transparent; }
.dispatch-proto-right-detail-units { min-height:212px; height:100%; overflow:visible; border-top:1px solid #27435f; display:grid; grid-template-rows:28px minmax(0,1fr); }
.dispatch-proto-right-detail-units.assignment-expanded { min-height:280px; }
.dispatch-proto-right-detail-units .dispatch-proto-responders-area { height:100%; overflow:visible; }
.dispatch-settings-modal { display:grid; gap:12px; }
.dispatch-settings-field { display:grid; gap:6px; }
.dispatch-settings-field span { color:#9cb5cf; font-size:12px; text-transform:uppercase; letter-spacing:.05em; }
.dispatch-settings-field input, .dispatch-settings-field select { width:100%; min-height:34px; border:1px solid #45627e; background:#132b41; color:#eef5ff; padding:6px 8px; }
.dispatch-settings-field div { min-height:34px; border:1px solid #45627e; background:#132b41; color:#eef5ff; padding:8px; display:flex; align-items:center; }
.dispatch-settings-actions { display:flex; justify-content:flex-end; }
.dispatch-settings-actions .danger { min-height:32px; padding:0 12px; border:1px solid #a4525c; background:#5b1822; color:#fff; font-weight:700; }
.dispatch-proto-marker-actions { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.dispatch-proto-marker-actions button { min-height:32px; border:1px solid #45627e; background:#17314b; color:#eef5ff; font-weight:700; }
.dispatch-proto-marker-actions .danger { border-color:#a4525c; background:#5b1822; }
.dispatch-proto-premise-modal .dispatch-proto-table thead th,
.dispatch-proto-premise-modal .dispatch-proto-table tbody td { text-align:left; }
.dispatch-proto-watch { width:24px; height:24px; border:1px solid #52697f; background:#1b2d3f; color:#95aabd; font-size:14px; font-weight:800; line-height:1; padding:0; }
.dispatch-proto-watch.active { color:#ef5561; border-color:#a4525c; }
.dispatch-proto-supervisor { color:#637a93; font-size:39px; font-weight:800; line-height:1; display:inline-flex; align-items:center; justify-content:center; width:100%; }
.dispatch-proto-supervisor.active { color:#f7d548; }
.dispatch-proto-status-select { width:100%; min-height:24px; height:24px; border:1px solid #45627e; background:#132b41; color:#eef5ff; font-size:11px; padding:2px 4px; text-align:center; }
.dispatch-proto-assigned-wrap { position:relative; width:100%; min-width:0; }
.dispatch-proto-assigned-btn { width:100%; min-height:24px; padding:0 6px; font-size:10px; letter-spacing:.06em; display:flex; align-items:center; justify-content:space-between; gap:6px; }
.dispatch-proto-assigned-btn span { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.dispatch-proto-assigned-btn strong { font-size:8px; line-height:1; flex:0 0 auto; }
.dispatch-proto-assigned-menu { position:absolute; left:0; right:0; top:calc(100% + 4px); z-index:14; border:1px solid #486583; background:#10263c; box-shadow:0 10px 24px rgba(0,0,0,.34); display:grid; gap:0; max-height:none; overflow:visible; }
.dispatch-proto-assigned-option { width:100%; min-height:34px; padding:6px 8px; display:grid; gap:2px; text-align:left; font-size:10px; letter-spacing:.05em; }
.dispatch-proto-assigned-option span { color:#eef6ff; font-weight:700; line-height:1.15; }
.dispatch-proto-assigned-option small { color:#9cb5cf; font-size:9px; line-height:1.15; text-transform:none; letter-spacing:0; }
.dispatch-proto-assigned-option.active { background:linear-gradient(#4A6785, #729cc8); color:#ffffff; }
.dispatch-proto-assigned-option.active span,
.dispatch-proto-assigned-option.active small { color:#ffffff; }
.dispatch-proto-assigned-empty { padding:8px; color:#9cb5cf; font-size:10px; text-align:center; }
.dispatch-proto-elapsed, .dispatch-proto-timer-btn { display:inline-flex; align-items:center; justify-content:center; min-width:54px; }
.dispatch-proto-timer-btn { min-height:24px; height:24px; border:1px solid #486583; background:#17314b; color:#e5eef8; font-size:11px; font-weight:700; padding:0 6px; }
.dispatch-proto-elapsed.warn, .dispatch-proto-timer-btn.warn { color:#f7d548; }
.dispatch-proto-elapsed.danger, .dispatch-proto-timer-btn.danger { color:#ef5561; }
.dispatch-proto-table.active-units tbody td:nth-child(3) { white-space:nowrap; }
.dispatch-proto-table.active-units tbody td:nth-child(6) { text-align:left; padding-left:4px; }
.dispatch-proto-table.active-units tbody td:nth-child(7) { text-align:center; }
.dispatch-proto-table.active-units tbody td:nth-child(8) { min-width:140px; }
.dispatch-proto-table.active-units tbody td:nth-child(9) { min-width:130px; }
.dispatch-proto-table.active-units tbody td:nth-child(4),
.dispatch-proto-table.active-units tbody td:nth-child(5),
.dispatch-proto-table.active-units tbody td:nth-child(6),
.dispatch-proto-table.active-units tbody td:nth-child(7),
.dispatch-proto-table.active-units tbody td:nth-child(9) { font-size:12px; }
.dispatch-proto-unit-timer-cell { display:inline-flex; align-items:center; justify-content:center; gap:4px; min-height:24px; }
.dispatch-proto-close-unit-btn { width:18px; height:18px; border:1px solid #a4525c; background:#5b1822; color:#fff; font-size:10px; font-weight:800; line-height:1; padding:0; }
.dispatch-proto-spc-scroll { max-width:150px; overflow-x:auto; overflow-y:hidden; white-space:nowrap; scrollbar-width:thin; }
.dispatch-proto-table.active-units tbody td { padding-top:4px; padding-bottom:4px; font-size:15px; line-height:1.15; }
.dispatch-proto-table.active-units tbody tr { height:30px; }
.dispatch-proto-table.active-units tbody tr[draggable="true"] { cursor:grab; }
.dispatch-proto-table.active-units tbody tr.dispatch-proto-unit-row-dragging { opacity:.55; cursor:grabbing; }
.dispatch-proto-table.active-units tbody tr.dispatch-proto-unit-attach-request { animation:dispatchProtoAttachRequestBlink 2s steps(2, end) infinite; }
.dispatch-proto-table.active-units tbody tr.dispatch-proto-unit-attach-request td { animation:dispatchProtoAttachRequestTextBlink 2s steps(2, end) infinite; }
.dispatch-proto-table.active-units tbody tr.dispatch-proto-unit-attach-request .dispatch-proto-assigned-btn,
.dispatch-proto-table.active-units tbody tr.dispatch-proto-unit-attach-request .dispatch-proto-timer-btn {
  animation:dispatchProtoAttachRequestButtonBlink 2s steps(2, end) infinite;
}
.dispatch-proto-table.active-units thead th { height:24px; padding-top:4px; padding-bottom:4px; }
.dispatch-proto-watch { width:16px; height:16px; font-size:10px; }
.dispatch-proto-supervisor { font-size:18px; }
.dispatch-proto-status-select { min-height:24px; height:24px; font-size:13px; padding:0 2px; }
.dispatch-proto-elapsed { min-width:44px; font-size:10px; }
.dispatch-proto-spc-scroll { max-width:150px; font-size:15px; line-height:1; }
.dispatch-proto-create-shell { min-height:0; height:100%; overflow:auto; padding:10px; }
.dispatch-proto-left.detail-expanded .dispatch-proto-block > .dispatch-proto-fill-wrap { height:100%; min-height:0; }
.dispatch-proto-create-wrap { min-height:100%; display:grid; grid-template-rows:auto minmax(0,1fr) auto; gap:10px; }
.dispatch-proto-create-shell[data-dispatch-proto-editor-shell="detail"] { overflow:hidden; }
.dispatch-proto-create-wrap-detail { height:100%; min-height:0; grid-template-rows:auto auto auto auto minmax(0,1fr); }
.dispatch-proto-create-wrap-detail .dispatch-proto-detail-pane-wrap { min-height:0; overflow:auto; padding-right:2px; }
.dispatch-proto-create-head { display:flex; justify-content:space-between; gap:10px; align-items:flex-start; padding-bottom:8px; border-bottom:1px solid rgba(106,138,173,.16); }
.dispatch-proto-create-head strong { display:block; font-size:16px; color:#eef6ff; }
.dispatch-proto-create-head span { color:#9cb5cf; font-size:12px; }
.dispatch-proto-create-meta { display:flex; flex-wrap:wrap; gap:14px; margin-top:4px; }
.dispatch-proto-create-meta span { white-space:nowrap; }
.dispatch-proto-create-meta b { color:#d9e6f4; font-weight:700; }
.dispatch-proto-create-status { border:1px solid rgba(106,138,173,.24); background:#17283a; padding:5px 9px; font-size:11px; letter-spacing:.08em; text-transform:uppercase; color:#d0dbe6; white-space:nowrap; }
.dispatch-proto-create-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; align-content:start; }
.dispatch-proto-create-grid label { display:grid; gap:6px; }
.dispatch-proto-create-grid span { font-size:11px; letter-spacing:.08em; text-transform:uppercase; color:#9db6d1; }
.dispatch-proto-create-grid input,
.dispatch-proto-create-grid select { width:100%; border:1px solid #425a75; background:#182637; color:#eef6ff; padding:8px 10px; font-size:12px; min-height:34px; }
.dispatch-proto-create-grid input[readonly] { color:#b8cadb; background:#162433; }
.dispatch-proto-span-1 { grid-column:span 1; }
.dispatch-proto-span-2 { grid-column:span 2; }
.dispatch-proto-span-4 { grid-column:1 / -1; }
.dispatch-proto-dropdown { position:relative; }
.dispatch-proto-dropdown-input-row { display:grid; grid-template-columns:minmax(0,1fr) auto; }
.dispatch-proto-dropdown-input { width:100%; border:1px solid #425a75; border-right:0; background:#182637; color:#eef6ff; padding:8px 10px; font-size:12px; min-height:34px; }
.dispatch-proto-dropdown-toggle { min-width:36px; border:1px solid #425a75; background:#182637; color:#9db6d1; display:inline-flex; align-items:center; justify-content:center; padding:0 8px; }
.dispatch-proto-dropdown-toggle strong { font-size:10px; line-height:1; }
.dispatch-proto-dropdown-trigger { width:100%; min-height:34px; border:1px solid #425a75; background:#182637; color:#eef6ff; padding:8px 10px; font-size:12px; display:flex; align-items:center; justify-content:space-between; gap:8px; text-align:left; }
.dispatch-proto-dropdown-trigger span { font-size:12px; letter-spacing:0; text-transform:none; color:#eef6ff; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.dispatch-proto-dropdown-trigger strong { font-size:10px; color:#9db6d1; flex:0 0 auto; }
.dispatch-proto-dropdown-menu { position:absolute; left:0; right:0; top:calc(100% + 4px); max-height:220px; overflow:auto; border:1px solid #425a75; background:#132131; box-shadow:0 8px 24px rgba(0,0,0,.35); display:none; z-index:6; }
.dispatch-proto-dropdown.open .dispatch-proto-dropdown-menu { display:grid; }
.dispatch-proto-dropdown-option { width:100%; border:0; border-bottom:1px solid rgba(106,138,173,.14); background:#132131; color:#eef6ff; padding:8px 10px; font-size:12px; text-align:left; }
.dispatch-proto-dropdown-option:hover,
.dispatch-proto-dropdown-option.active { background:#1d3851; }
.dispatch-proto-dropdown-empty { padding:10px; color:#8ea8c3; font-size:11px; text-align:center; }
.dispatch-proto-dropdown-empty.hidden { display:none; }
.dispatch-proto-create-actions { display:flex; justify-content:flex-end; gap:8px; padding-top:6px; border-top:1px solid rgba(106,138,173,.14); }
.dispatch-proto-detail-tabs { display:flex; gap:6px; flex-wrap:wrap; }
.dispatch-proto-detail-tabs button { border:1px solid #435d79; background:#152436; color:#eef6ff; min-height:28px; padding:0 10px; font-size:11px; font-weight:700; }
.dispatch-proto-detail-tabs button.active { background:#35506f; border-color:#88b5e5; }
.dispatch-proto-detail-pane-wrap { min-height:0; overflow:hidden; }
.dispatch-proto-detail-pane.hidden { display:none; }
.dispatch-proto-detail-pane { min-height:0; }
.dispatch-proto-detail-pane-head { padding:0 0 6px; color:#9db6d1; font-size:11px; letter-spacing:.08em; text-transform:uppercase; }
.dispatch-proto-detail-stack { display:grid; gap:8px; }
.dispatch-proto-detail-card { border:1px solid rgba(106,138,173,.18); background:#162638; padding:10px; display:grid; gap:8px; }
.dispatch-proto-detail-card-head { display:flex; justify-content:space-between; gap:10px; align-items:flex-start; }
.dispatch-proto-detail-card-head strong { font-size:12px; color:#eef6ff; }
.dispatch-proto-detail-card-head span { font-size:10px; color:#8ca8c6; text-transform:uppercase; letter-spacing:.08em; }
.dispatch-proto-detail-card-body p { margin:0; color:#d9e6f5; line-height:1.4; }
.dispatch-proto-detail-lines { display:grid; gap:6px; }
.dispatch-proto-detail-lines div { display:grid; gap:2px; }
.dispatch-proto-detail-lines span { font-size:10px; color:#8ca8c6; text-transform:uppercase; letter-spacing:.08em; }
.dispatch-proto-detail-lines strong { font-size:12px; color:#eef6ff; }
.dispatch-proto-detail-return { display:grid; gap:8px; }
.dispatch-proto-unit-check { width:14px; height:14px; accent-color:#58a8ff; }
.dispatch-proto-leads-panel { height:100%; min-height:0; max-height:100%; min-width:0; overflow:hidden; padding:8px; box-sizing:border-box; }
.dispatch-proto-block-leads > .dispatch-proto-leads-panel,
.dispatch-proto-block-leads > .dispatch-proto-fill-wrap.dispatch-proto-leads-panel { height:100%; min-height:0; max-height:100%; }
.dispatch-proto-leads-panel.dynamic-fit,
.dispatch-proto-block-leads > .dispatch-proto-fill-wrap.dispatch-proto-leads-panel.dynamic-fit {
  overflow:visible;
  max-height:none;
}
.dispatch-proto-leads-shell { height:100%; min-height:0; max-height:100%; min-width:0; display:grid; grid-template-rows:auto minmax(0,1fr); gap:8px; overflow:hidden; box-sizing:border-box; }
.dispatch-proto-leads-panel.dynamic-fit .dispatch-proto-leads-shell,
.dispatch-proto-leads-panel.dynamic-fit .dispatch-proto-leads-form-shell,
.dispatch-proto-leads-panel.dynamic-fit .dispatch-proto-leads-result-shell {
  height:auto;
  overflow:visible;
  max-height:none;
}
.dispatch-proto-leads-panel.dynamic-fit .dispatch-proto-leads-shell,
.dispatch-proto-leads-panel.dynamic-fit .dispatch-proto-leads-form-shell,
.dispatch-proto-leads-panel.dynamic-fit .dispatch-proto-leads-result-shell {
  grid-template-rows:auto auto;
  align-content:start;
}
.dispatch-proto-leads-tabs { display:flex; gap:6px; flex-wrap:wrap; }
.dispatch-proto-leads-tab { min-height:26px; padding:0 10px; border:1px solid #486583; background:linear-gradient(180deg,#223d59 0%,#17314b 100%); color:#e5eef8; font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.05em; }
.dispatch-proto-leads-tab.active { background:#2b4b69; border-color:#86abd6; }
.dispatch-proto-leads-form-shell { height:100%; min-height:0; max-height:100%; min-width:0; display:grid; grid-template-rows:minmax(0,1fr) auto; gap:8px; overflow:hidden; align-content:stretch; }
.dispatch-proto-leads-result-shell { height:100%; min-height:0; max-height:100%; min-width:0; display:grid; grid-template-rows:auto auto minmax(0,1fr) auto; gap:8px; overflow:hidden; align-content:stretch; }
.dispatch-proto-leads-grid { min-height:0; max-height:100%; overflow:auto; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; align-content:start; }
.dispatch-proto-leads-panel.dynamic-fit .dispatch-proto-leads-grid,
.dispatch-proto-leads-panel.dynamic-fit .dispatch-proto-leads-grid.is-person-search,
.dispatch-proto-leads-panel.dynamic-fit .dispatch-proto-leads-document-wrap,
.dispatch-proto-leads-panel.dynamic-fit .dispatch-proto-leads-document-viewport {
  height:auto;
  overflow:visible;
  max-height:none;
}
.dispatch-proto-leads-grid.is-person-search {
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:6px;
  overflow-x:hidden;
  overflow-y:auto;
}
.dispatch-proto-leads-grid.is-person-search .dispatch-proto-leads-field.wide { grid-column:span 2; }
.dispatch-proto-leads-field { display:grid; gap:5px; }
.dispatch-proto-leads-grid.is-person-search .dispatch-proto-leads-field { gap:4px; }
.dispatch-proto-leads-field span { font-size:10px; letter-spacing:.06em; text-transform:uppercase; color:#9db6d1; }
.dispatch-proto-leads-field input,
.dispatch-proto-leads-field select { width:100%; min-height:30px; border:1px solid #425a75; background:#182637; color:#eef6ff; padding:6px 8px; font-size:12px; }
.dispatch-proto-leads-grid.is-person-search .dispatch-proto-leads-field span { font-size:9px; }
.dispatch-proto-leads-grid.is-person-search .dispatch-proto-leads-field input,
.dispatch-proto-leads-grid.is-person-search .dispatch-proto-leads-field select {
  min-height:28px;
  padding:5px 7px;
  font-size:11px;
}
.dispatch-proto-leads-result-tabs { display:flex; gap:6px; flex-wrap:wrap; align-items:center; min-width:0; }
.dispatch-proto-leads-result-tab { min-height:24px; padding:0 9px; border:1px solid #486583; background:linear-gradient(180deg,#223d59 0%,#17314b 100%); color:#e5eef8; font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.05em; white-space:nowrap; }
.dispatch-proto-leads-result-tab.active { background:#2b4b69; border-color:#86abd6; }
.dispatch-proto-leads-result-tab.dispatch-proto-leads-hit-button,
.dispatch-proto-leads-result-tab.dispatch-proto-leads-hit-button.active {
  border-color:#e7a7a7 !important;
  background:#E07E7E !important;
  color:#ffffff !important;
}
.dispatch-proto-leads-actions {
  display:flex;
  gap:8px;
  justify-content:flex-end;
  padding-top:6px;
  padding-bottom:2px;
  border-top:1px solid rgba(106,138,173,.14);
  flex-wrap:wrap;
  min-width:0;
  flex:0 0 auto;
  margin-top:auto;
  background:linear-gradient(180deg, rgba(16,38,59,0) 0%, rgba(16,38,59,.94) 24%, rgba(16,38,59,1) 100%);
}
.dispatch-proto-leads-result-head { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:10px; align-items:start; }
.dispatch-proto-leads-result-head strong { color:#eef6ff; font-size:14px; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.dispatch-proto-leads-result-head span { color:#9cb5cf; font-size:11px; text-transform:uppercase; letter-spacing:.06em; white-space:nowrap; justify-self:end; }
.dispatch-proto-leads-document-wrap { min-height:0; max-height:100%; overflow:hidden; border:1px solid #425a75; background:#20374f; display:grid; grid-template-columns:minmax(0,1fr) 14px; gap:0; }
.dispatch-proto-leads-document-viewport { min-height:0; max-height:100%; overflow:hidden; padding:10px 8px 10px 10px; }
.dispatch-proto-leads-document { margin:0; white-space:pre-wrap; font-size:12px; line-height:1.4; color:#f1f6ff; font-family:"Consolas","Courier New",monospace; }
.dispatch-proto-custom-scrollbar { display:flex; align-items:stretch; justify-content:center; padding:6px 3px; border-left:1px solid rgba(66,90,117,.9); background:rgba(17,33,49,.65); }
.dispatch-proto-custom-scrollbar-track { position:relative; width:8px; border-radius:999px; background:rgba(112,138,166,.22); cursor:pointer; }
.dispatch-proto-custom-scrollbar-thumb { position:absolute; left:0; top:0; width:100%; min-height:34px; border-radius:999px; background:linear-gradient(180deg,#98abc0 0%,#7288a1 100%); box-shadow:inset 0 1px 0 rgba(255,255,255,.25); }
.dispatch-proto-leads-document-wrap.is-scroll-static .dispatch-proto-custom-scrollbar { opacity:.35; }

.leads-hit-word {
  color:#E07E7E;
  background:#FFE88A;
  font-weight:700;
  padding:0 1px;
}

.leads-tab-strip button.leads-hit-button,
.leads-tab-strip button.leads-hit-button.active {
  border-color:#fbe1e1 #9b4b4b #9b4b4b #fbe1e1 !important;
  background:#E07E7E !important;
  color:#ffffff !important;
}

.dispatch-cad-workspace-reset { display:grid; place-items:center; padding:20px; }
.dispatch-cad-reset-shell { width:min(760px,100%); display:grid; }
.dispatch-cad-reset-card { display:grid; grid-template-rows:auto minmax(0,1fr); overflow:hidden; }
.dispatch-cad-reset-body { padding:20px; display:grid; gap:14px; color:#d7e4f3; font-size:14px; line-height:1.55; }
.dispatch-cad-reset-body p { margin:0; }
.dispatch-cad-reset-actions { display:flex; justify-content:flex-start; }
.dispatch-cad-reset-actions button { border:1px solid #5d7694; background:#1d2e40; color:#eef6ff; min-height:34px; padding:0 14px; font-size:12px; font-weight:700; }
.dispatch-cad-reset-actions button:hover { background:#294158; border-color:#86abd6; }
.dispatch-cad-workspace.dashboard { padding:clamp(6px,.8vw,8px) clamp(6px,.8vw,10px) clamp(6px,.8vw,10px); }
.dispatch-cad-dashboard { min-height:100%; height:100%; display:grid; grid-template-rows:clamp(34px,4vh,38px) minmax(0,1fr); gap:clamp(6px,.8vw,8px); overflow:hidden; }
.dispatch-cad-widget-panel { min-height:0; display:grid; grid-template-columns:auto minmax(0,1fr); align-items:center; padding:0 10px; border:1px solid rgba(106,138,173,.22); background:#213547; box-shadow:inset 0 0 0 1px rgba(28,49,71,.28); }
.dispatch-cad-widget-head { display:flex; align-items:center; padding-right:12px; margin-right:12px; border-right:1px solid rgba(122,151,183,.16); }
.dispatch-cad-widget-head strong { font-size:13px; color:#f5fbff; letter-spacing:.02em; }
.dispatch-cad-widget-strip { min-width:0; display:flex; align-items:center; gap:6px; overflow:hidden; }
.dispatch-cad-widget-btn { width:30px; height:30px; padding:0; border:1px solid #566f8a; background:#2a4157; display:inline-flex; align-items:center; justify-content:center; box-shadow:inset 0 0 0 1px rgba(14,26,39,.2); }
.dispatch-cad-widget-btn:hover { background:#35506b; border-color:#86abd6; }
.dispatch-cad-widget-icon { width:16px; height:16px; }
.dispatch-cad-widget-icon svg, .dispatch-cad-dashboard-icon svg { filter:none; }
.dispatch-cad-dashboard-grid { min-height:0; height:100%; display:grid; grid-template-columns:minmax(420px,1.52fr) clamp(116px,8vw,140px) minmax(380px,1.28fr); gap:clamp(6px,.8vw,10px); overflow:hidden; }
.dispatch-cad-dashboard-left, .dispatch-cad-dashboard-rail, .dispatch-cad-dashboard-right { min-height:0; display:grid; gap:clamp(6px,.8vw,10px); overflow:hidden; }
.dispatch-cad-dashboard-left { grid-template-rows:minmax(160px,calc(100% - var(--dispatch-left-bottom-height, 180px) - 8px)) 8px minmax(120px,var(--dispatch-left-bottom-height, 180px)); }
.dispatch-cad-dashboard-rail { grid-template-rows:auto auto minmax(0,1fr); align-content:start; }
.dispatch-cad-dashboard-rail .dispatch-cad-button-panel:first-child { min-height:clamp(214px,28vh,286px); }
.dispatch-cad-dashboard-rail .dispatch-cad-button-panel:nth-child(2) { min-height:clamp(96px,14vh,132px); }
.dispatch-cad-dashboard-right { grid-template-rows:minmax(220px,calc(100% - var(--dispatch-right-bottom-height, 108px) - 8px)) 8px minmax(88px,var(--dispatch-right-bottom-height, 108px)); }
.dispatch-cad-dashboard-right .dispatch-cad-map-panel { min-height:0; }
.dispatch-cad-dashboard-right .dispatch-cad-map-shell { min-height:0; }
.dispatch-cad-dashboard-right .dispatch-cad-map-head p { margin-top:3px; font-size:11px; color:#8ea7c4; }
.dispatch-cad-table-panel, .dispatch-cad-button-panel, .dispatch-cad-dashboard-stats-panel, .dispatch-cad-recent-panel { min-height:0; display:grid; grid-template-rows:auto minmax(0,1fr); overflow:hidden; }
.dispatch-cad-table-wrap { min-height:0; overflow:auto; padding:0 8px 8px; }
.dispatch-cad-table { width:100%; border-collapse:separate; border-spacing:0; table-layout:fixed; font-size:12px; color:#ebf4ff; }
.dispatch-cad-table thead th { position:sticky; top:0; z-index:1; padding:9px 10px; border-bottom:1px solid rgba(122,151,183,.18); background:#1f3042; color:#8fa8c4; font-size:11px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; text-align:left; }
.dispatch-cad-table tbody td { padding:9px 10px; border-bottom:1px solid rgba(122,151,183,.1); vertical-align:top; }
.dispatch-cad-table.calls thead th,
.dispatch-cad-table.calls tbody td { padding-top:5px; padding-bottom:5px; }
.dispatch-cad-table.calls tbody td { vertical-align:middle; }
.dispatch-cad-table.calls thead th:nth-child(1) { width:76px; }
.dispatch-cad-table.calls thead th:nth-child(2) { width:96px; }
.dispatch-cad-table.calls thead th:nth-child(3) { width:120px; }
.dispatch-cad-table.calls thead th:nth-child(5) { width:54px; text-align:center; }
.dispatch-cad-table.calls thead th:nth-child(6) { width:54px; text-align:center; }
.dispatch-cad-table.calls thead th:nth-child(7) { width:70px; }
.dispatch-cad-table.calls thead th:nth-child(8) { width:86px; }
.dispatch-cad-table tbody tr { cursor:pointer; }
.dispatch-cad-table tbody tr:hover { background:rgba(52,79,107,.28); }
.dispatch-cad-table tbody tr.active { background:rgba(63,103,141,.34); box-shadow:inset 2px 0 0 #4aa1ff; }
.dispatch-cad-table tbody td:nth-child(4) { white-space:normal; line-height:1.35; }
.dispatch-cad-table.calls tbody td { font-size:11px; }
.dispatch-cad-table.responders tbody td:nth-child(1),
.dispatch-cad-table.responders tbody td:nth-child(2),
.dispatch-cad-table.responders tbody td:nth-child(3),
.dispatch-cad-table.responders tbody td:nth-child(4),
.dispatch-cad-table.responders tbody td:nth-child(5),
.dispatch-cad-table.recent tbody td { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.dispatch-cad-table-empty { padding:16px 10px !important; text-align:center; color:#89a4c0; cursor:default; }
.dispatch-cad-priority-pill { display:inline-flex; align-items:center; justify-content:center; min-width:20px; height:20px; border-radius:4px; background:#f7ea35; color:#18242f; font-size:11px; font-weight:800; }
.dispatch-cad-call-id-cell { font-weight:700; }
.dispatch-cad-location-cell { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; line-height:1.2; min-height:2.4em; }
.dispatch-cad-prio-cell { text-align:center; }
.dispatch-cad-panel-head { position:relative; min-width:0; }
.dispatch-cad-panel-head strong { min-width:0; }
.dispatch-cad-panel-head span { min-width:0; color:#a9bfd8; font-size:11px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.dispatch-cad-button-panel .dispatch-cad-panel-head,
.dispatch-cad-dashboard-stats-panel .dispatch-cad-panel-head,
.dispatch-cad-recent-panel .dispatch-cad-panel-head,
.dispatch-cad-table-panel .dispatch-cad-panel-head { padding:8px 12px; }
.dispatch-cad-button-panel .dispatch-cad-panel-head { align-items:center; }
.dispatch-cad-button-panel .dispatch-cad-panel-head strong { font-size:12px; line-height:1.1; white-space:normal; overflow-wrap:anywhere; }
.dispatch-cad-dash-button-grid { padding:clamp(5px,.7vw,8px); display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(5px,.7vw,8px); align-content:start; }
.dispatch-cad-dash-button-grid-comm { align-content:start; }
.dispatch-cad-dash-action { min-height:clamp(42px,6.2vh,52px); border:1px solid rgba(122,151,183,.18); background:#202f3f; box-shadow:inset 0 0 0 1px rgba(21,35,49,.26); display:grid; justify-items:center; align-content:center; gap:4px; padding:clamp(4px,.7vw,6px) 4px; color:#edf5ff; text-transform:uppercase; }
.dispatch-cad-dash-action.wide { grid-column:1 / -1; }
.dispatch-cad-dash-action:hover { background:#294158; border-color:#86abd6; }
.dispatch-cad-dash-action.active { background:#2c475e; border-color:#7ca8d8; }
.dispatch-cad-dash-action-icon { display:inline-flex; align-items:center; justify-content:center; }
.dispatch-cad-dashboard-icon { width:16px; height:16px; }
.dispatch-cad-dash-action-label { font-size:9px; letter-spacing:.06em; line-height:1.05; text-align:center; width:100%; }
.dispatch-cad-dashboard-stats-grid { padding:8px; display:grid; grid-template-columns:repeat(8,minmax(0,1fr)); gap:6px; }
.dispatch-cad-stat-card { min-height:54px; border:1px solid rgba(122,151,183,.18); background:#202f3f; display:grid; gap:3px; place-items:center; text-align:center; padding:6px 4px; }
.dispatch-cad-stat-card strong { font-size:28px; line-height:1; color:#f8fbff; }
.dispatch-cad-stat-card span { font-size:10px; letter-spacing:.08em; text-transform:uppercase; color:#f1f6fd; line-height:1.15; }
.dispatch-cad-stat-card.unassigned strong { color:#ff5555; }
.dispatch-cad-stat-card.available strong { color:#18a661; }
.dispatch-cad-stat-card.open strong,
.dispatch-cad-stat-card.dispatched strong,
.dispatch-cad-stat-card.responding strong,
.dispatch-cad-stat-card.closed strong,
.dispatch-cad-stat-card.average strong { color:#f5fbff; }
.dispatch-cad-dashboard-right .dispatch-cad-map-panel { display:grid; grid-template-rows:auto minmax(0,1fr); }
.dispatch-cad-dashboard-right .dispatch-cad-map-head { padding:8px 12px; }
.dispatch-cad-dashboard-right .dispatch-cad-map-tools { gap:6px; }
.dispatch-cad-dashboard-right .dispatch-cad-map-tools button { min-height:24px; padding:0 8px; font-size:11px; }
.dispatch-cad-recent-panel { align-self:end; }
.dispatch-cad-recent-panel .dispatch-cad-table-wrap { overflow:hidden; padding:0 8px 8px; }
.dispatch-cad-recent-panel .dispatch-cad-table thead th { position:static; }
.dispatch-cad-recent-panel .dispatch-cad-table tbody tr { height:30px; }
.dispatch-cad-recent-panel .dispatch-cad-table tbody td { padding-top:4px; padding-bottom:4px; }
.dispatch-cad-call-panel-wrap { min-height:0; overflow:auto; padding:10px; }
.dispatch-cad-call-panel-wrap .dispatch-cad-call-focus { min-height:100%; height:100%; border:none; box-shadow:none; background:transparent; padding:0; }
.dispatch-cad-road-overlay { position:absolute; inset:0; width:100%; height:100%; overflow:visible; pointer-events:none; }
.dispatch-cad-road-overlay polyline { fill:none; stroke:#7e91a4; stroke-width:.42; stroke-linecap:round; stroke-linejoin:round; opacity:.6; vector-effect:non-scaling-stroke; }
.dispatch-cad-idle-layout { min-height:100%; height:100%; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; overflow:hidden; }
.dispatch-cad-drafting-layout { min-height:100%; height:100%; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; overflow:hidden; }
.dispatch-cad-split-map { min-height:0; overflow:hidden; }
.dispatch-cad-drafting-side { min-height:0; display:grid; grid-template-rows:minmax(0,3fr) minmax(180px,2fr); gap:12px; overflow:hidden; }
.dispatch-cad-panel, .dispatch-cad-map-panel, .dispatch-cad-call-focus, .dispatch-cad-empty-card { border:1px solid rgba(106,138,173,.24); background:#1c2a39; box-shadow:inset 0 0 0 1px rgba(29,51,74,.32); }
.dispatch-cad-map-panel { min-height:0; display:grid; grid-template-rows:auto minmax(0,1fr); overflow:hidden; }
.dispatch-cad-map-head, .dispatch-cad-panel-head { display:flex; justify-content:space-between; gap:10px; align-items:flex-start; padding:10px 12px; border-bottom:1px solid rgba(106,138,173,.18); background:#223445; }
.dispatch-cad-map-head strong, .dispatch-cad-panel-head strong { font-size:13px; letter-spacing:.04em; text-transform:uppercase; }
.dispatch-cad-map-head p { margin:2px 0 0; color:#8fa9c7; font-size:12px; line-height:1.3; }
.dispatch-cad-map-tools { display:flex; gap:8px; align-items:center; }
.dispatch-cad-map-tools button { border:1px solid #5d7694; background:#1d2e40; color:#eef6ff; min-height:28px; padding:0 10px; font-size:12px; font-weight:700; }
.dispatch-cad-map-shell { position:relative; overflow:hidden; background:linear-gradient(0deg, rgba(62,92,123,.18) 1px, transparent 1px), linear-gradient(90deg, rgba(62,92,123,.18) 1px, transparent 1px), #0e1721; background-size:48px 48px; touch-action:none; cursor:grab; }
.dispatch-cad-map-shell.is-dragging { cursor:grabbing; }
.dispatch-cad-map-shell.relocation-armed { cursor:crosshair; }
.dispatch-cad-map-canvas { position:absolute; left:0; top:0; width:100%; height:100%; transform-origin:0 0; user-select:none; -webkit-user-select:none; -webkit-user-drag:none; }
.dispatch-cad-map-image { position:absolute; inset:0; width:100%; height:100%; object-fit:fill; display:block; pointer-events:none; user-select:none; -webkit-user-select:none; -webkit-user-drag:none; }
.dispatch-cad-map-markers { position:absolute; inset:0; pointer-events:none; }
.dispatch-cad-marker { position:absolute; transform:translate(-50%, -100%) scale(var(--dispatch-marker-scale, 1)); transform-origin:center bottom; border:1px solid #8dbef2; background:#163250; color:#eef8ff; padding:3px 6px; font-size:10px; font-weight:700; line-height:1; pointer-events:auto; }
.dispatch-cad-marker.call { cursor:grab; }
.dispatch-cad-marker.call:active { cursor:grabbing; }
.dispatch-cad-marker::after { content:''; position:absolute; left:50%; bottom:-6px; width:8px; height:8px; background:#163250; border-left:1px solid #8dbef2; border-bottom:1px solid #8dbef2; transform:translateX(-50%) rotate(-45deg); }
.dispatch-cad-marker.active { background:#29537f; }
.dispatch-cad-marker.draft { border-color:#f0c87a; background:#6f5120; padding:2px 5px; font-size:9px; }
.dispatch-cad-sidebar { min-height:0; display:grid; gap:12px; overflow:hidden; align-self:stretch; }
.dispatch-cad-idle-side { grid-template-rows:minmax(0,2fr) minmax(0,1fr); }
.dispatch-cad-idle-side.queue-active { grid-template-rows:minmax(0,2fr) minmax(0,1fr); }
.dispatch-cad-idle-side.call-active { grid-template-rows:minmax(0,2fr) minmax(0,1fr); }
.dispatch-cad-call-focus, .dispatch-cad-empty-card { padding:10px; display:grid; gap:10px; min-height:0; overflow:auto; align-content:start; }
.dispatch-cad-call-focus-head { display:flex; justify-content:space-between; gap:10px; align-items:flex-start; }
.dispatch-cad-call-focus-head strong { display:block; font-size:16px; }
.dispatch-cad-call-focus-head span { color:#9cb5cf; }
.dispatch-cad-focus-meta, .dispatch-cad-focus-units { display:flex; gap:8px; flex-wrap:wrap; }
.dispatch-cad-focus-meta span, .dispatch-cad-focus-units span { border:1px solid rgba(116,146,180,.26); background:#172738; padding:5px 8px; font-size:11px; }
.dispatch-cad-queue { padding:8px 10px 10px; display:grid; gap:6px; overflow:auto; }
.dispatch-cad-queue-row { border:1px solid rgba(106,138,173,.24); background:#182838; color:#eef6ff; text-align:left; padding:8px 10px; display:grid; gap:3px; }
.dispatch-cad-queue-row.active { border-color:#90bdf0; background:#22384d; }
.dispatch-cad-queue-row span, .dispatch-cad-queue-row small, .dispatch-cad-empty-list, .dispatch-cad-autofill-note { color:#93aeca; }
.dispatch-cad-call-editor, .dispatch-cad-unit-panel { min-height:0; display:grid; grid-template-rows:auto minmax(0,1fr) auto; overflow:hidden; }
.dispatch-cad-idle-side .dispatch-cad-unit-panel { align-self:end; }
.dispatch-cad-form-grid { padding:10px 12px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; align-content:start; overflow:auto; }
.dispatch-cad-form-grid label, .dispatch-admin-grid label, .dispatch-admin-section label { display:grid; gap:6px; }
.dispatch-cad-form-grid label.wide { grid-column:1 / -1; }
.dispatch-cad-form-grid span, .dispatch-admin-grid span, .dispatch-admin-section span { font-size:11px; letter-spacing:.1em; text-transform:uppercase; color:#9db6d1; }
.dispatch-cad-form-grid input, .dispatch-cad-form-grid select, .dispatch-cad-form-grid textarea, .dispatch-cad-unit-toolbar input, .dispatch-admin-grid input, .dispatch-admin-section input, .dispatch-admin-section textarea { width:100%; border:1px solid #425a75; background:#182637; color:#eef6ff; padding:8px 10px; font-size:12px; }
.dispatch-cad-form-grid textarea, .dispatch-admin-section textarea { min-height:72px; resize:vertical; }
.dispatch-cad-autofill-note { padding:0 12px; font-size:11px; line-height:1.35; }
.dispatch-cad-form-actions { padding:10px 12px 12px; display:flex; justify-content:space-between; gap:10px; }
.dispatch-cad-form-actions button, .dispatch-admin-section button { border:1px solid #435d79; background:#152436; color:#eef6ff; min-height:30px; padding:0 12px; font-size:12px; font-weight:700; }
.dispatch-cad-form-actions button.primary { background:#1e5f47; border-color:#3e8f70; }
.dispatch-cad-unit-toolbar { padding:8px 12px 0; }
.dispatch-cad-unit-list { padding:8px 12px 12px; display:grid; gap:6px; overflow:auto; }
.dispatch-cad-unit-row { border:1px solid rgba(106,138,173,.24); background:#132333; padding:8px 10px; display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:8px; align-items:center; }
.dispatch-cad-unit-row.checked { border-color:#8bbcf2; background:#17314b; }
.dispatch-cad-unit-row strong { display:block; font-size:12px; }
.dispatch-cad-unit-row span, .dispatch-cad-unit-row small { color:#99b2cc; font-size:11px; }
.dispatch-cad-unit-summary { width:100%; border:1px solid rgba(106,138,173,.24); background:#132333; color:#eef6ff; text-align:left; }
.dispatch-cad-unit-summary:hover { background:#183049; border-color:#86b4e5; }
.dispatch-cad-unit-summary input { display:none; }
.dispatch-cad-chip { border:1px solid rgba(106,138,173,.24); background:#17283a; padding:5px 9px; font-size:11px; letter-spacing:.08em; text-transform:uppercase; }
.dispatch-cad-chip.pending, .dispatch-cad-chip.low { border-color:#9e7c34; background:#4c3c18; color:#ffe7b1; }
.dispatch-cad-chip.active, .dispatch-cad-chip.high { border-color:#4e8e72; background:#183a2d; color:#d7ffec; }
.dispatch-cad-chip.closed, .dispatch-cad-chip.medium { border-color:#55697d; background:#1c2a37; color:#d0dbe6; }
.dispatch-cad-detail-grid { padding:0; overflow:visible; }
.dispatch-cad-detail-actions { padding:0; justify-content:flex-end; }
.dispatch-cad-detail-meta-grid span { font-size:10px; }
.dispatch-cad-detail-section { border:1px solid rgba(106,138,173,.18); background:#132131; display:grid; gap:0; overflow:hidden; }
.dispatch-cad-detail-section .dispatch-cad-panel-head { padding:8px 10px; }
.dispatch-cad-dashboard-draft .dispatch-cad-dashboard-grid { grid-template-columns:minmax(340px,1.42fr) clamp(112px,8.8vw,142px) minmax(300px,1.08fr); gap:clamp(6px,.8vw,10px); }
.dispatch-cad-dashboard-draft .dispatch-cad-dashboard-left,
.dispatch-cad-dashboard-draft .dispatch-cad-dashboard-rail,
.dispatch-cad-dashboard-draft .dispatch-cad-dashboard-right { gap:clamp(6px,.8vw,10px); }
.dispatch-cad-dashboard-draft .dispatch-cad-dashboard-left { grid-template-rows:minmax(220px,calc(100% - var(--dispatch-left-bottom-height, 220px) - 8px)) 8px minmax(120px,var(--dispatch-left-bottom-height, 220px)); }
.dispatch-cad-dashboard-draft .dispatch-cad-dashboard-rail { grid-template-rows:minmax(clamp(184px,24vh,214px),auto) minmax(clamp(96px,12vh,112px),auto) minmax(0,1fr); }
.dispatch-cad-dashboard-draft .dispatch-cad-dashboard-rail .dispatch-cad-button-panel:first-child { min-height:clamp(184px,24vh,214px); }
.dispatch-cad-dashboard-draft .dispatch-cad-dashboard-rail .dispatch-cad-button-panel:nth-child(2) { min-height:clamp(96px,12vh,112px); }
.dispatch-cad-dashboard-draft .dispatch-cad-dashboard-right { grid-template-rows:minmax(220px,calc(100% - var(--dispatch-right-bottom-height, 104px) - 8px)) 8px minmax(88px,var(--dispatch-right-bottom-height, 104px)); }
.dispatch-cad-dashboard-draft .dispatch-cad-call-panel-wrap { padding:12px; }
.dispatch-cad-dashboard-draft .dispatch-cad-draft-focus { gap:12px; }
.dispatch-cad-dashboard-draft .dispatch-cad-draft-focus .dispatch-cad-call-focus-head { padding-bottom:8px; border-bottom:1px solid rgba(106,138,173,.16); }
.dispatch-cad-dashboard-draft .dispatch-cad-draft-focus .dispatch-cad-focus-meta { padding-bottom:8px; border-bottom:1px solid rgba(106,138,173,.14); }
.dispatch-cad-dashboard-draft .dispatch-cad-detail-section { box-shadow:inset 0 1px 0 rgba(255,255,255,.015); }
.dispatch-cad-dashboard-draft .dispatch-cad-detail-section .dispatch-cad-panel-head { min-height:36px; align-items:center; }
.dispatch-cad-dashboard-draft .dispatch-cad-detail-section .dispatch-cad-panel-head span { text-align:right; }
.dispatch-cad-dashboard-draft .dispatch-cad-detail-grid { padding:8px 10px 10px; gap:8px; }
.dispatch-cad-dashboard-draft .dispatch-cad-form-grid span { font-size:10px; letter-spacing:.085em; }
.dispatch-cad-dashboard-draft .dispatch-cad-form-grid input,
.dispatch-cad-dashboard-draft .dispatch-cad-form-grid select,
.dispatch-cad-dashboard-draft .dispatch-cad-form-grid textarea { padding:7px 8px; font-size:11px; }
.dispatch-cad-dashboard-draft .dispatch-cad-form-grid textarea { min-height:64px; }
.dispatch-cad-dashboard-draft .dispatch-cad-action-row { justify-content:space-between; padding:0 2px; gap:10px; }
.dispatch-cad-dashboard-draft .dispatch-cad-action-row .dispatch-cad-autofill-note { flex:1 1 auto; padding:0; }
.dispatch-cad-dashboard-draft .dispatch-cad-unit-panel { grid-template-rows:auto auto minmax(0,1fr); }
.dispatch-cad-dashboard-draft .dispatch-cad-unit-toolbar { padding:10px 12px 0; }
.dispatch-cad-dashboard-draft .dispatch-cad-unit-list { padding-top:10px; }
.dispatch-cad-dashboard-draft .dispatch-cad-map-panel { min-height:0; }
.dispatch-cad-dashboard-draft .dispatch-cad-map-head { padding:10px 12px 8px; }
.dispatch-cad-dashboard-draft .dispatch-cad-dashboard-right .dispatch-cad-dashboard-map-panel { height:100%; min-height:0; }
.dispatch-cad-dashboard-draft .dispatch-cad-map-shell { min-height:0; height:100%; }
.dispatch-cad-dashboard-draft .dispatch-cad-recent-panel .dispatch-cad-panel-head { padding:8px 10px; }
.dispatch-cad-dashboard-draft .dispatch-cad-recent-panel .dispatch-cad-table tbody tr { height:28px; }
.dispatch-cad-dashboard-draft .dispatch-cad-panel-head strong,
.dispatch-cad-dashboard-draft .dispatch-cad-map-head strong { font-size:12px; }
.dispatch-cad-dashboard-draft .dispatch-cad-dash-button-grid { padding:6px; gap:6px; }
.dispatch-cad-dashboard-draft .dispatch-cad-dash-action { min-height:44px; padding:5px 4px; }
.dispatch-cad-dashboard-draft .dispatch-cad-button-panel .dispatch-cad-panel-head strong { font-size:10px; letter-spacing:.04em; line-height:1.1; }
.dispatch-cad-dashboard-draft .dispatch-cad-dash-action-label { font-size:8px; letter-spacing:.04em; }
.dispatch-cad-dashboard-draft .dispatch-cad-dashboard-icon { width:14px; height:14px; }
.dispatch-cad-dashboard-draft .dispatch-cad-inline button:last-child { margin-left:auto; }

@media (max-width: 1500px), (max-height: 900px) {
  .dispatch-cad-dashboard-draft .dispatch-cad-dashboard-grid { grid-template-columns:minmax(300px,1.28fr) clamp(108px,9vw,128px) minmax(260px,1fr); }
  .dispatch-cad-dashboard-draft .dispatch-cad-form-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
  .dispatch-cad-dashboard-draft .dispatch-cad-detail-section .dispatch-cad-panel-head { min-height:32px; }
}

@media (max-width: 1280px), (max-height: 760px) {
  .dispatch-cad-dashboard-draft .dispatch-cad-dashboard-grid { grid-template-columns:minmax(280px,1.18fr) 104px minmax(240px,.9fr); }
  .dispatch-cad-dashboard-draft .dispatch-cad-dashboard-left { grid-template-rows:minmax(0,calc(100% - var(--dispatch-left-bottom-height, 160px) - 8px)) 8px minmax(120px,var(--dispatch-left-bottom-height, 160px)); }
  .dispatch-cad-dashboard-draft .dispatch-cad-dashboard-right { grid-template-rows:minmax(220px,calc(100% - var(--dispatch-right-bottom-height, 88px) - 8px)) 8px minmax(72px,var(--dispatch-right-bottom-height, 88px)); }
  .dispatch-cad-dashboard-draft .dispatch-cad-form-grid { grid-template-columns:1fr; }
  .dispatch-cad-dashboard-draft .dispatch-cad-form-grid label.wide { grid-column:auto; }
}
.dispatch-cad-dashboard:not(.dispatch-cad-dashboard-draft) .dispatch-cad-dashboard-grid { grid-template-columns:minmax(320px,1.34fr) clamp(118px,8.5vw,132px) minmax(360px,1.14fr); gap:clamp(4px,.6vw,6px); }
.dispatch-cad-dashboard:not(.dispatch-cad-dashboard-draft) .dispatch-cad-dashboard-left,
.dispatch-cad-dashboard:not(.dispatch-cad-dashboard-draft) .dispatch-cad-dashboard-rail,
.dispatch-cad-dashboard:not(.dispatch-cad-dashboard-draft) .dispatch-cad-dashboard-right { gap:clamp(4px,.6vw,6px); }
.dispatch-cad-dashboard:not(.dispatch-cad-dashboard-draft) .dispatch-cad-dashboard-left { grid-template-rows:minmax(136px,calc(100% - var(--dispatch-left-bottom-height, 148px) - 8px)) 8px minmax(120px,var(--dispatch-left-bottom-height, 148px)); }
.dispatch-cad-dashboard:not(.dispatch-cad-dashboard-draft) .dispatch-cad-dashboard-rail { grid-template-rows:minmax(clamp(164px,24vh,184px),auto) minmax(clamp(88px,12vh,102px),auto) minmax(0,1fr); }
.dispatch-cad-dashboard:not(.dispatch-cad-dashboard-draft) .dispatch-cad-dashboard-rail .dispatch-cad-button-panel:first-child { min-height:clamp(164px,24vh,184px); }
.dispatch-cad-dashboard:not(.dispatch-cad-dashboard-draft) .dispatch-cad-dashboard-rail .dispatch-cad-button-panel:nth-child(2) { min-height:clamp(88px,12vh,102px); }
.dispatch-cad-dashboard:not(.dispatch-cad-dashboard-draft) .dispatch-cad-dashboard-right { grid-template-rows:minmax(260px,calc(100% - var(--dispatch-right-bottom-height, 96px) - 8px)) 8px minmax(72px,var(--dispatch-right-bottom-height, 96px)); }
.dispatch-cad-dashboard:not(.dispatch-cad-dashboard-draft) .dispatch-cad-table-panel .dispatch-cad-panel-head,
.dispatch-cad-dashboard:not(.dispatch-cad-dashboard-draft) .dispatch-cad-recent-panel .dispatch-cad-panel-head,
.dispatch-cad-dashboard:not(.dispatch-cad-dashboard-draft) .dispatch-cad-button-panel .dispatch-cad-panel-head,
.dispatch-cad-dashboard:not(.dispatch-cad-dashboard-draft) .dispatch-cad-map-head { padding:7px 10px; }
.dispatch-cad-dashboard:not(.dispatch-cad-dashboard-draft) .dispatch-cad-button-panel .dispatch-cad-panel-head strong { font-size:10px; letter-spacing:.04em; line-height:1.1; }
.dispatch-cad-dashboard:not(.dispatch-cad-dashboard-draft) .dispatch-cad-dash-button-grid { padding:6px; gap:6px; }
.dispatch-cad-dashboard:not(.dispatch-cad-dashboard-draft) .dispatch-cad-dash-action { min-height:44px; gap:3px; padding:4px 3px; }
.dispatch-cad-dashboard:not(.dispatch-cad-dashboard-draft) .dispatch-cad-dashboard-icon { width:14px; height:14px; }
.dispatch-cad-dashboard:not(.dispatch-cad-dashboard-draft) .dispatch-cad-dash-action-label { font-size:8px; letter-spacing:.04em; }
.dispatch-cad-dashboard:not(.dispatch-cad-dashboard-draft) .dispatch-cad-table-wrap,
.dispatch-cad-dashboard:not(.dispatch-cad-dashboard-draft) .dispatch-cad-recent-panel .dispatch-cad-table-wrap { padding:0; }
.dispatch-cad-dashboard:not(.dispatch-cad-dashboard-draft) .dispatch-cad-dashboard-right .dispatch-cad-dashboard-map-panel { height:100%; min-height:0; }
.dispatch-cad-dashboard:not(.dispatch-cad-dashboard-draft) .dispatch-cad-dashboard-right .dispatch-cad-map-shell { min-height:0; height:100%; }
.dispatch-cad-dashboard:not(.dispatch-cad-dashboard-draft) .dispatch-cad-dashboard-right .dispatch-cad-map-head p { font-size:10px; }
.dispatch-cad-dashboard:not(.dispatch-cad-dashboard-draft) .dispatch-cad-recent-panel .dispatch-cad-table tbody tr { height:clamp(18px,2.7vh,22px); }
.dispatch-cad-dashboard:not(.dispatch-cad-dashboard-draft) .dispatch-cad-recent-panel .dispatch-cad-table tbody td { padding-top:2px; padding-bottom:2px; font-size:10px; }
.dispatch-cad-dashboard:not(.dispatch-cad-dashboard-draft) .dispatch-cad-widget-panel { min-height:clamp(34px,4.2vh,38px); }

@media (max-width: 1600px), (max-height: 900px) {
  .dispatch-cad-topbar { grid-template-columns:minmax(220px,1fr) minmax(320px,1fr) auto; }
  .dispatch-cad-top-stats { max-width:min(700px,46vw); }
  .dispatch-cad-dashboard:not(.dispatch-cad-dashboard-draft) .dispatch-cad-dashboard-grid { grid-template-columns:minmax(300px,1.18fr) clamp(112px,9vw,126px) minmax(320px,1fr); }
  .dispatch-cad-dashboard:not(.dispatch-cad-dashboard-draft) .dispatch-cad-dashboard-right { grid-template-rows:minmax(240px,calc(100% - var(--dispatch-right-bottom-height, 88px) - 8px)) 8px minmax(70px,var(--dispatch-right-bottom-height, 88px)); }
  .dispatch-cad-dashboard:not(.dispatch-cad-dashboard-draft) .dispatch-cad-table thead th { font-size:10px; }
  .dispatch-cad-dashboard:not(.dispatch-cad-dashboard-draft) .dispatch-cad-table.calls tbody td,
  .dispatch-cad-dashboard:not(.dispatch-cad-dashboard-draft) .dispatch-cad-table.responders tbody td { font-size:10px; }
}
.dispatch-cad-panel-splitter { position:relative; min-height:8px; height:8px; cursor:ns-resize; background:transparent; z-index:2; }
.dispatch-cad-panel-splitter::before { content:''; position:absolute; inset:0; }
.dispatch-cad-panel-splitter-left { grid-row:2; }
.dispatch-cad-panel-splitter-right { grid-row:2; }

@media (max-width: 1360px), (max-height: 780px) {
  .dispatch-cad-topbar { grid-template-columns:1fr; align-items:start; }
  .dispatch-cad-top-stats { max-width:none; justify-self:stretch; }
  .dispatch-cad-top-actions { justify-self:start; justify-content:flex-start; }
  .dispatch-cad-dashboard:not(.dispatch-cad-dashboard-draft) .dispatch-cad-dashboard-grid { grid-template-columns:minmax(280px,1.06fr) clamp(108px,10vw,120px) minmax(280px,.98fr); }
  .dispatch-cad-dashboard:not(.dispatch-cad-dashboard-draft) .dispatch-cad-button-panel .dispatch-cad-panel-head strong { font-size:9px; }
  .dispatch-cad-dashboard:not(.dispatch-cad-dashboard-draft) .dispatch-cad-dash-action-label { font-size:7px; }
}
.dispatch-cad-dashboard:not(.dispatch-cad-dashboard-draft) .dispatch-cad-table thead th { padding-top:8px; padding-bottom:8px; }
.dispatch-cad-detail-unit-list, .dispatch-cad-log-list, .dispatch-cad-return-list { padding:10px; display:grid; gap:8px; overflow:auto; }
.dispatch-cad-detail-unit { border:1px solid rgba(106,138,173,.18); background:#162638; padding:8px 10px; display:grid; gap:4px; }
.dispatch-cad-detail-unit strong { display:block; font-size:12px; }
.dispatch-cad-detail-unit span, .dispatch-cad-detail-unit small { color:#96b1cd; font-size:11px; }
.dispatch-cad-detail-unit-actions { display:flex; gap:6px; flex-wrap:wrap; }
.dispatch-cad-detail-unit-actions button, .dispatch-cad-detail-tabs button, .dispatch-cad-inline button, .dispatch-cad-return-actions button { border:1px solid #435d79; background:#152436; color:#eef6ff; min-height:28px; padding:0 10px; font-size:11px; font-weight:700; }
.dispatch-cad-detail-tabs { display:flex; gap:6px; flex-wrap:wrap; }
.dispatch-cad-detail-tabs button.active { background:#35506f; border-color:#88b5e5; }
.dispatch-cad-detail-pane.hidden { display:none; }
.dispatch-cad-inline { padding:10px; display:flex; gap:8px; flex-wrap:wrap; align-items:center; }
.dispatch-cad-inline input { flex:1 1 220px; border:1px solid #425a75; background:#182637; color:#eef6ff; padding:8px 10px; font-size:12px; }
.dispatch-cad-action-row { padding:0; }
.dispatch-cad-log-entry { border:1px solid rgba(106,138,173,.16); background:#162638; padding:8px 10px; display:grid; gap:4px; }
.dispatch-cad-log-entry strong { font-size:12px; color:#eef6ff; }
.dispatch-cad-log-entry span { font-size:10px; text-transform:uppercase; letter-spacing:.08em; color:#8ca8c6; }
.dispatch-cad-log-entry p { margin:0; color:#d9e6f5; line-height:1.4; }
.dispatch-cad-return-card { border:1px solid rgba(106,138,173,.18); background:#162638; padding:10px; display:grid; gap:8px; }
.dispatch-cad-return-card header { display:flex; justify-content:space-between; gap:10px; align-items:flex-start; }
.dispatch-cad-return-card header strong { font-size:12px; color:#eef6ff; }
.dispatch-cad-return-card header span, .dispatch-cad-return-query { font-size:10px; color:#8ca8c6; text-transform:uppercase; letter-spacing:.08em; }
.dispatch-cad-return-body { display:grid; gap:8px; }
.dispatch-cad-return-actions { display:flex; justify-content:flex-end; }
.dispatch-cad-active-units-head { padding:4px 8px 0; display:grid; grid-template-columns:124px 56px 74px 1fr; gap:6px; color:#98b0ca; font-size:9px; letter-spacing:.08em; text-transform:uppercase; }
.dispatch-cad-active-units-list { align-content:start; overflow:auto; min-height:0; padding:6px 8px 8px; }
.dispatch-cad-active-unit-row { border:1px solid rgba(106,138,173,.24); background:#182838; padding:4px 5px; display:grid; grid-template-columns:34px minmax(0,1.3fr) 64px 64px minmax(92px,.8fr); gap:6px; align-items:center; min-height:30px; }
.dispatch-cad-active-unit-icons { display:flex; gap:4px; align-items:center; }
.dispatch-cad-watch-toggle { width:16px; height:16px; border:1px solid #5b6f85; background:#394a5d; color:#cfd8e3; font-weight:900; font-size:10px; line-height:1; display:inline-flex; align-items:center; justify-content:center; padding:0; }
.dispatch-cad-watch-toggle.active { background:#8d2b2b; border-color:#d86a6a; color:#fff; }
.dispatch-cad-supervisor-icon { color:#f2d27d; font-size:11px; font-weight:900; }
.dispatch-cad-supervisor-icon.hidden { visibility:hidden; }
.dispatch-cad-active-unit-meta strong { display:block; font-size:10px; line-height:1.1; }
.dispatch-cad-active-unit-meta span, .dispatch-cad-active-unit-type, .dispatch-cad-active-unit-call { color:#97b0ca; font-size:9px; line-height:1.1; }
.dispatch-cad-active-unit-status select { width:100%; border:1px solid #52637a; background:#314154; color:#eef3fb; padding:3px 5px; border-radius:0; font-size:9px; text-transform:uppercase; font-weight:700; min-height:22px; }
.dispatch-cad-top-actions button:hover,
.dispatch-cad-map-tools button:hover,
.dispatch-cad-form-actions button:hover,
.dispatch-cad-inline button:hover,
.dispatch-cad-detail-unit-actions button:hover,
.dispatch-cad-watch-toggle:hover { background:#40516a; border-color:#86abd6; }
.dispatch-cad-day .dispatch-cad-window,
.dispatch-cad-day.dispatch-cad-window { background:#dfe6ed; }
.dispatch-cad-day .app-window-body.dispatch-cad-body { background:#dfe6ed; }
.dispatch-cad-day .dispatch-cad-shell { background:linear-gradient(180deg,#eef3f7 0%,#dfe6ed 100%); color:#1f2a33; }
.dispatch-cad-day .dispatch-cad-reset-body { color:#33475b; }
.dispatch-cad-day .dispatch-cad-reset-actions button { background:#e3ebf3; color:#213447; border-color:#829bb4; }
.dispatch-cad-day .dispatch-cad-topbar { background:#36506a; }
.dispatch-cad-day .dispatch-cad-topbar p, .dispatch-cad-day .dispatch-cad-kicker { color:#d7e5f5; }
.dispatch-cad-day .dispatch-cad-widget-panel,
.dispatch-cad-day .dispatch-cad-stat-card,
.dispatch-cad-day .dispatch-cad-dash-action,
.dispatch-cad-day .dispatch-cad-table thead th { background:#edf3f8; color:#1f2a33; border-color:rgba(81,110,140,.24); box-shadow:none; }
.dispatch-cad-day .dispatch-cad-widget-head { border-right-color:rgba(81,110,140,.2); }
.dispatch-cad-day .dispatch-cad-widget-head strong { color:#1f2a33; }
.dispatch-cad-day .dispatch-cad-widget-btn { background:#f4f8fb; border-color:#8ea6bd; }
.dispatch-cad-day .dispatch-cad-dashboard-stats-grid .dispatch-cad-stat-card span,
.dispatch-cad-day .dispatch-cad-dash-action-label,
.dispatch-cad-day .dispatch-cad-table thead th,
.dispatch-cad-day .dispatch-cad-table-empty { color:#51697e; }
.dispatch-cad-day .dispatch-cad-stats article,
.dispatch-cad-day .dispatch-cad-panel,
.dispatch-cad-day .dispatch-cad-map-panel,
.dispatch-cad-day .dispatch-cad-call-focus,
.dispatch-cad-day .dispatch-cad-empty-card,
.dispatch-cad-day .dispatch-cad-detail-section,
.dispatch-cad-day .dispatch-cad-log-entry,
.dispatch-cad-day .dispatch-cad-return-card,
.dispatch-cad-day .dispatch-cad-detail-unit,
.dispatch-cad-day .dispatch-cad-queue-row,
.dispatch-cad-day .dispatch-cad-unit-row,
.dispatch-cad-day .dispatch-cad-active-unit-row { background:#f4f7fa; color:#1e2a35; border-color:rgba(81,110,140,.24); box-shadow:none; }
.dispatch-cad-day .dispatch-cad-map-head,
.dispatch-cad-day .dispatch-cad-panel-head { background:#dfe7ef; border-bottom-color:rgba(81,110,140,.22); }
.dispatch-cad-day .dispatch-cad-map-head p,
.dispatch-cad-day .dispatch-cad-queue-row span,
.dispatch-cad-day .dispatch-cad-queue-row small,
.dispatch-cad-day .dispatch-cad-empty-list,
.dispatch-cad-day .dispatch-cad-autofill-note,
.dispatch-cad-day .dispatch-cad-unit-row span,
.dispatch-cad-day .dispatch-cad-unit-row small,
.dispatch-cad-day .dispatch-cad-active-unit-meta span,
.dispatch-cad-day .dispatch-cad-active-unit-type,
.dispatch-cad-day .dispatch-cad-active-unit-call,
.dispatch-cad-day .dispatch-cad-log-entry span,
.dispatch-cad-day .dispatch-cad-return-card header span,
.dispatch-cad-day .dispatch-cad-return-query,
.dispatch-cad-day .dispatch-cad-active-units-head { color:#51697e; }
.dispatch-cad-day .dispatch-cad-form-grid input,
.dispatch-cad-day .dispatch-cad-form-grid select,
.dispatch-cad-day .dispatch-cad-form-grid textarea,
.dispatch-cad-day .dispatch-cad-unit-toolbar input,
.dispatch-cad-day .dispatch-cad-inline input,
.dispatch-cad-day .dispatch-cad-active-unit-status select { background:#fff; color:#1f2a33; border-color:#a9bbce; }
.dispatch-cad-day .dispatch-cad-top-actions button,
.dispatch-cad-day .dispatch-cad-map-tools button,
.dispatch-cad-day .dispatch-cad-form-actions button,
.dispatch-cad-day .dispatch-cad-inline button,
.dispatch-cad-day .dispatch-cad-detail-unit-actions button,
.dispatch-cad-day .dispatch-cad-return-actions button,
.dispatch-cad-day .dispatch-cad-watch-toggle { background:#edf3f8; color:#1f2a33; border-color:#8ea6bd; }
.dispatch-cad-day .dispatch-cad-chip { background:#e8eef4; color:#304358; }
.dispatch-cad-day .dispatch-cad-chip.pending, .dispatch-cad-day .dispatch-cad-chip.low { background:#f6edda; color:#6c5517; }
.dispatch-cad-day .dispatch-cad-chip.active, .dispatch-cad-day .dispatch-cad-chip.high { background:#dff0e8; color:#20533b; }
.dispatch-cad-day .dispatch-cad-chip.closed, .dispatch-cad-day .dispatch-cad-chip.medium { background:#e4ebf1; color:#405769; }
.dispatch-cad-day .dispatch-cad-map-shell { background:linear-gradient(0deg, rgba(106,138,173,.09) 1px, transparent 1px), linear-gradient(90deg, rgba(106,138,173,.09) 1px, transparent 1px), #dbe5ef; }
.dispatch-admin-section { display:grid; gap:10px; padding:12px 0; border-bottom:1px solid rgba(106,138,173,.2); }
.dispatch-admin-section:last-child { border-bottom:none; }
.dispatch-admin-section h4 { margin:0; text-transform:uppercase; letter-spacing:.08em; font-size:13px; }
.dispatch-admin-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.dispatch-admin-msg { min-height:18px; color:#b7d5f6; }
.dispatch-admin-result { margin:0; border:1px solid #425a75; background:#152436; color:#eef6ff; padding:12px; max-height:220px; overflow:auto; }
.dispatch-map-admin-modal { width:min(1220px,96%); min-height:min(820px,92%); }
.dispatch-map-admin-modal-fullscreen { width:min(96vw,1820px); height:94vh; min-height:94vh; max-height:94vh; margin:0; }
.dispatch-map-admin-modal .mdt-modal-body { padding:8px 12px 12px; }
.dispatch-map-admin-modal footer { display:none; }
.dispatch-map-admin-modal .mdt-modal-body { flex:1 1 auto; display:flex; flex-direction:column; overflow:hidden; }
.dispatch-chat-modal { width:min(1020px,96%); min-height:min(760px,92%); }
.dispatch-chat-viewer-body { min-height:440px; }
.dispatch-cad-window .app-window-body.dispatch-cad-body button.dispatch-chat-viewer-row {
  width:100%;
  min-height:unset;
  padding:10px;
  border:1px solid #4a5b72;
  outline:none;
  box-shadow:none;
  text-transform:none;
  letter-spacing:.02em;
  font-size:12px;
  text-shadow:none;
  text-align:left;
  background:#203244;
  color:#edf4ff;
}
.dispatch-cad-window .app-window-body.dispatch-cad-body button.dispatch-chat-viewer-row:hover,
.dispatch-cad-window .app-window-body.dispatch-cad-body button.dispatch-chat-viewer-row:focus-visible {
  transform:none;
  filter:none;
  box-shadow:none;
  background:#294158;
  color:#ffffff;
}
.dispatch-cad-window .app-window-body.dispatch-cad-body button.dispatch-chat-viewer-row.selected {
  border-color:#89acd2;
  background:#33506b;
}
.dispatch-cad-window .app-window-body.dispatch-cad-body button.dispatch-chat-viewer-row.unread {
  border-color:#7aa7d7;
}
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-chat-viewer-pane,
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-chat-viewer-list {
  background:#162637;
  border-color:#35516e;
}
.dispatch-map-admin-shell { display:grid; gap:8px; min-height:0; height:100%; flex:1 1 auto; grid-template-rows:auto minmax(0,1fr); align-content:start; align-items:start; }
.dispatch-admin-summary { display:grid; grid-template-columns:repeat(8,minmax(0,1fr)); gap:4px; grid-auto-rows:44px; align-items:start; }
.dispatch-admin-summary article { border:1px solid rgba(106,138,173,.24); background:#172638; padding:4px 8px; display:grid; gap:1px; min-height:0; height:44px; align-content:center; overflow:hidden; }
.dispatch-admin-summary span { font-size:9px; text-transform:uppercase; letter-spacing:.08em; color:#97b0c8; line-height:1; }
.dispatch-admin-summary strong { font-size:11px; color:#f3f8ff; line-height:1.05; }
.dispatch-admin-summary small { color:#8ba4bc; font-size:9px; line-height:1.05; }
.dispatch-admin-layout { min-height:0; height:100%; display:grid; grid-template-columns:180px minmax(0,1fr); gap:8px; align-items:start; align-content:start; }
.dispatch-admin-nav { display:grid; gap:6px; align-content:start; }
.dispatch-admin-nav button { text-align:left; border:1px solid #425b76; background:#18273a; color:#eaf3ff; padding:8px 10px; font-weight:700; font-size:12px; }
.dispatch-admin-nav button.active { background:#22415f; border-color:#86b4e5; }
.dispatch-admin-main { min-height:0; height:100%; display:grid; gap:8px; grid-template-rows:auto minmax(0,1fr); align-content:stretch; }
.dispatch-admin-banner { border:1px solid rgba(106,138,173,.24); background:#162536; color:#bfd6ef; padding:6px 10px; font-size:12px; line-height:1.2; min-height:36px; height:36px; display:flex; align-items:center; overflow:hidden; }
.dispatch-admin-panel { min-height:0; height:100%; display:grid; gap:8px; align-content:start; }
.dispatch-admin-panel[data-admin-panel="builder"] { min-height:0; grid-template-rows:auto auto minmax(0,1fr); align-content:stretch; }
.dispatch-admin-panel[data-admin-panel="calibration"] { grid-template-rows:auto minmax(0,1fr); }
.dispatch-admin-panel[data-admin-panel="live-map"] { min-height:0; grid-template-rows:auto minmax(0,1fr); align-content:stretch; }
.dispatch-admin-section-head { display:flex; justify-content:space-between; gap:12px; align-items:flex-start; border:1px solid rgba(106,138,173,.2); background:#162536; padding:10px; }
.dispatch-admin-section-head h4, .dispatch-admin-dataset-head h4 { margin:0; font-size:14px; text-transform:uppercase; letter-spacing:.06em; }
.dispatch-admin-section-head p, .dispatch-admin-dataset-head p { margin:4px 0 0; color:#99b3cd; font-size:12px; line-height:1.4; }
.dispatch-admin-section-head button, .dispatch-admin-dataset-head button { justify-self:start; }
.dispatch-admin-two-column { min-height:0; display:grid; grid-template-columns:minmax(320px,420px) minmax(0,1fr); gap:12px; }
.dispatch-admin-inline-actions { display:flex; gap:8px; flex-wrap:wrap; align-items:center; }
.dispatch-admin-note, .dispatch-admin-note-list { border:1px solid rgba(106,138,173,.18); background:#152334; padding:10px 12px; display:grid; gap:8px; }
.dispatch-admin-note strong, .dispatch-admin-note-list strong { color:#eef6ff; }
.dispatch-admin-note span, .dispatch-admin-note-list span { color:#9bb4ce; font-size:12px; line-height:1.4; }
.dispatch-admin-preview-shell { position:relative; overflow:hidden; min-height:260px; border:1px solid rgba(106,138,173,.24); background:linear-gradient(180deg, #102133 0%, #0f1823 100%); cursor:crosshair; }
.dispatch-admin-preview-image { width:100%; height:100%; object-fit:contain; display:block; user-select:none; -webkit-user-select:none; -webkit-user-drag:none; pointer-events:none; }
.dispatch-admin-preview-pin { position:absolute; width:18px; height:18px; border-radius:999px; border:2px solid #ffd27d; background:rgba(255,210,125,.28); transform:translate(-50%, -50%); box-shadow:0 0 0 2px rgba(15,24,35,.85); }
.dispatch-admin-preview-pin::after { content:''; position:absolute; left:50%; top:50%; width:6px; height:6px; border-radius:999px; background:#ffd27d; transform:translate(-50%, -50%); }
.dispatch-admin-dataset-tabs { display:flex; gap:8px; flex-wrap:wrap; }
.dispatch-admin-dataset-tabs button { border:1px solid #425b76; background:#18273a; color:#eaf3ff; padding:8px 10px; }
.dispatch-admin-dataset-tabs button.active { background:#22415f; border-color:#86b4e5; }
.dispatch-admin-dataset-tabs button span { color:#9fc2e4; margin-left:6px; }
.dispatch-admin-dataset-head { display:flex; justify-content:space-between; gap:12px; align-items:flex-start; }
.dispatch-admin-grid.compact { grid-template-columns:repeat(2,minmax(0,1fr)); }
.dispatch-builder-tabs { display:flex; gap:8px; flex-wrap:wrap; }
.dispatch-builder-tabs button { border:1px solid #425b76; background:#18273a; color:#eaf3ff; padding:8px 10px; }
.dispatch-builder-tabs button.active { background:#22415f; border-color:#86b4e5; }
.dispatch-builder-tabs button span { color:#9fc2e4; margin-left:6px; }
.dispatch-builder-layout { min-height:0; height:100%; display:grid; grid-template-columns:260px minmax(0,1fr) 260px; gap:10px; overflow:hidden; align-self:stretch; }
.dispatch-builder-controls, .dispatch-builder-list-panel { min-height:0; height:100%; display:grid; gap:10px; overflow:hidden; align-content:start; align-self:stretch; }
.dispatch-builder-stage { min-height:0; height:100%; border:1px solid rgba(106,138,173,.2); background:#152334; padding:6px; overflow:hidden; display:grid; grid-template-rows:auto minmax(0,1fr); gap:6px; align-self:stretch; }
.dispatch-builder-map-toolbar { display:flex; justify-content:space-between; gap:10px; align-items:center; color:#a8c0d8; font-size:12px; }
.dispatch-builder-map-toolbar > div { display:flex; gap:8px; align-items:center; }
.dispatch-builder-map-toolbar button { border:1px solid #425b76; background:#18273a; color:#eef6ff; min-height:28px; padding:0 10px; font-size:12px; }
.dispatch-builder-map-shell { position:relative; min-height:0; height:100%; align-self:stretch; background:linear-gradient(180deg, #102133 0%, #0f1823 100%); overflow:hidden; cursor:crosshair; touch-action:none; }
.dispatch-builder-map-shell.is-dragging { cursor:grabbing; }
.dispatch-builder-map-canvas { position:absolute; inset:0; transform-origin:0 0; }
.dispatch-builder-map-image { position:absolute; display:block; user-select:none; -webkit-user-select:none; -webkit-user-drag:none; pointer-events:none; }
.dispatch-builder-map-overlay { position:absolute; overflow:visible; }
.dispatch-builder-map-svg { position:absolute; inset:0; width:100%; height:100%; overflow:visible; pointer-events:none; }
.dispatch-builder-handle { position:absolute; transform:translate(-50%, -50%); border:1px solid #7fb0e5; background:#17314b; color:#eef6ff; pointer-events:auto; transition:none !important; animation:none !important; box-shadow:none; filter:none; }
.dispatch-builder-handle::before { content:none !important; display:none !important; }
.dispatch-builder-handle:hover,
.dispatch-builder-handle:focus-visible { cursor:default; background:#17314b !important; border-color:#7fb0e5 !important; color:#eef6ff !important; box-shadow:none !important; filter:none !important; outline:none !important; transition:none !important; animation:none !important; }
.dispatch-builder-handle:active { cursor:grabbing; background:#17314b !important; border-color:#7fb0e5 !important; color:#eef6ff !important; box-shadow:none !important; filter:none !important; outline:none !important; transition:none !important; animation:none !important; }
.dispatch-builder-handle.point { min-width:18px; min-height:18px; padding:0 5px; border-radius:999px; font-size:9px; font-weight:700; transform:translate(-50%, -50%) scale(var(--dispatch-builder-label-scale, 1)); transform-origin:center center; white-space:nowrap; }
.dispatch-builder-handle.point span { pointer-events:none; }
.dispatch-builder-handle.vertex, .dispatch-builder-handle.draft-vertex { width:3px; height:3px; border-radius:999px; padding:0; transform:translate(-50%, -50%) scale(var(--dispatch-builder-node-scale, 1)); transform-origin:center center; box-shadow:none; }
.dispatch-builder-handle.draft-vertex { border-color:#ffd27d; background:#6f5120; }
.dispatch-builder-handle.vertex.city-vertex,
.dispatch-builder-handle.draft-vertex.city-vertex { width:0.75px; height:0.75px; }
.dispatch-builder-handle.active { box-shadow:0 0 0 2px rgba(255,255,255,.14); }
.dispatch-builder-handle.point:hover,
.dispatch-builder-handle.point:focus-visible,
.dispatch-builder-handle.point:active { transform:translate(-50%, -50%) scale(var(--dispatch-builder-label-scale, 1)); }
.dispatch-builder-handle.vertex:hover,
.dispatch-builder-handle.vertex:focus-visible,
.dispatch-builder-handle.vertex:active,
.dispatch-builder-handle.draft-vertex:hover,
.dispatch-builder-handle.draft-vertex:focus-visible,
.dispatch-builder-handle.draft-vertex:active { transform:translate(-50%, -50%) scale(var(--dispatch-builder-node-scale, 1)); }
.dispatch-map-admin-modal .dispatch-builder-handle,
.dispatch-map-admin-modal .dispatch-builder-handle:hover,
.dispatch-map-admin-modal .dispatch-builder-handle:focus-visible,
.dispatch-map-admin-modal .dispatch-builder-handle:active { min-width:unset !important; min-height:unset !important; width:auto; height:auto; margin:0 !important; box-shadow:none !important; filter:none !important; background-clip:padding-box; }
.dispatch-map-admin-modal .dispatch-builder-label,
.dispatch-map-admin-modal .dispatch-builder-label span { transition:none !important; animation:none !important; }
.dispatch-map-admin-modal .dispatch-builder-label.active span,
.dispatch-map-admin-modal .dispatch-builder-handle.active { box-shadow:none !important; }
.dispatch-builder-label { position:absolute; transform:translate(-50%, -50%) scale(var(--dispatch-builder-label-scale, 1)); transform-origin:center center; pointer-events:none; z-index:2; }
.dispatch-builder-label span { display:inline-flex; align-items:center; min-height:16px; padding:0 5px; border-radius:999px; border:1px solid rgba(126,167,210,.55); background:rgba(16,31,47,.84); color:#eef6ff; font-size:9px; font-weight:700; line-height:1; white-space:nowrap; text-transform:none; }
.dispatch-builder-label.route span { background:rgba(97,47,47,.5); border-color:rgba(97,47,47,.5); }
.dispatch-builder-label.polygon span { border-color:var(--dispatch-builder-label-accent, rgba(126,167,210,.55)); }
.dispatch-builder-label.active span { box-shadow:0 0 0 2px rgba(255,255,255,.14); }
.dispatch-builder-list-panel .dispatch-admin-section { min-height:0; height:100%; display:grid; grid-template-rows:auto minmax(0,1fr); gap:6px; padding:6px 0 0; overflow:hidden; }
.dispatch-builder-list { display:grid; gap:6px; overflow:auto; min-height:0; max-height:100%; padding-right:2px; align-content:start; }
.dispatch-builder-item { border:1px solid rgba(106,138,173,.24); background:#132333; padding:8px 10px; display:grid; gap:6px; }
.dispatch-builder-item.active { border-color:#86b4e5; background:#183049; }
.dispatch-builder-item strong { display:block; color:#eef6ff; }
.dispatch-builder-item small { color:#9fb6d1; font-size:11px; line-height:1.2; }
.dispatch-builder-item-actions { display:flex; gap:6px; }
.dispatch-builder-item-actions button { border:1px solid #425b76; background:#18273a; color:#eef6ff; padding:4px 8px; min-height:26px; font-size:11px; }
.dispatch-builder-swatch { display:inline-block; width:12px; height:12px; border:1px solid transparent; margin-right:8px; vertical-align:middle; }
.dispatch-live-map-layout { min-height:0; height:100%; display:grid; grid-template-columns:320px minmax(0,1fr) 260px; gap:10px; overflow:hidden; align-self:stretch; }
.dispatch-live-map-controls,
.dispatch-live-map-status { min-height:0; height:100%; display:grid; gap:10px; overflow:auto; align-content:start; padding-right:2px; }
.dispatch-live-map-stage { min-height:0; height:100%; border:1px solid rgba(106,138,173,.2); background:#152334; padding:6px; overflow:hidden; display:grid; grid-template-rows:auto minmax(0,1fr); gap:6px; align-self:stretch; }
.dispatch-live-map-point-list { display:grid; gap:6px; }
.dispatch-live-map-point-row { border:1px solid rgba(106,138,173,.24); background:#132333; color:#eef6ff; padding:8px 10px; display:grid; gap:4px; text-align:left; min-height:48px; }
.dispatch-live-map-point-row strong { color:#eef6ff; font-size:12px; }
.dispatch-live-map-point-row small { color:#9fb6d1; font-size:11px; line-height:1.2; }
.dispatch-live-map-point-row.active { border-color:#86b4e5; background:#183049; }
.dispatch-live-map-overlay { position:absolute; inset:0; overflow:visible; }
.dispatch-live-map-point-marker { fill:#58a8ff; stroke:#eef6ff; stroke-width:.26; vector-effect:non-scaling-stroke; opacity:.95; }
.dispatch-live-map-status-list { display:grid; gap:8px; }
.dispatch-live-map-status-list article { border:1px solid rgba(106,138,173,.2); background:#132333; padding:8px 10px; display:grid; gap:4px; }
.dispatch-live-map-status-list span { color:#9cb5cf; font-size:10px; text-transform:uppercase; letter-spacing:.08em; }
.dispatch-live-map-status-list strong { color:#eef6ff; font-size:12px; line-height:1.3; word-break:break-word; }
@keyframes dispatchProtoAttachRequestBlink {
  0%, 49.999% {
    background:transparent;
    box-shadow:none;
  }
  50%, 100% {
    background:rgba(123,30,43,.42);
    box-shadow:inset 0 0 0 1px rgba(214,103,118,.58);
  }
}
@keyframes dispatchProtoAttachRequestTextBlink {
  0%, 49.999% {
    color:inherit;
  }
  50%, 100% {
    color:#fff4f6;
  }
}
@keyframes dispatchProtoAttachRequestButtonBlink {
  0%, 49.999% {
    border-color:#486583;
    background:#17314b;
    color:#e5eef8;
  }
  50%, 100% {
    border-color:#d66776;
    background:linear-gradient(#7a2631, #b35461);
    color:#fff6f8;
  }
}
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-cad-top-actions button,
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-proto-ctl:not(.red),
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-proto-tiny:not(.dispatch-proto-tiny-green):not(.dispatch-proto-tiny-danger),
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-proto-map-action-btn,
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-proto-marker-actions button:not(.danger),
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-settings-actions button:not(.danger),
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-proto-watch:not(.active),
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-proto-timer-btn,
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-cad-reset-actions button,
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-cad-widget-btn,
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-cad-dash-action:not(.active),
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-cad-map-tools button,
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-cad-form-actions button:not(.primary),
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-cad-detail-unit-actions button,
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-cad-detail-tabs button:not(.active),
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-cad-inline button,
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-cad-return-actions button,
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-admin-nav button:not(.active),
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-admin-dataset-tabs button:not(.active),
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-builder-tabs button:not(.active),
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-builder-map-toolbar button,
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-builder-item-actions button,
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-admin-section-head button,
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-admin-dataset-head button,
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-proto-detail-tabs button:not(.active),
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-proto-leads-tab:not(.active),
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-proto-leads-result-tab:not(.active),
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-proto-dropdown-toggle,
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-proto-dropdown-trigger {
  background:var(--dispatch-cad-button-bg);
  color:var(--dispatch-cad-button-color);
  border:none;
}
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-proto-ctl.red,
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-proto-tiny-danger,
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-settings-actions .danger,
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-proto-marker-actions .danger,
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-proto-close-unit-btn,
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-cad-watch-toggle.active {
  --dispatch-cad-button-bg: linear-gradient(#7a2631, #b35461);
  --dispatch-cad-button-shadow:
    inset -1px -1px #351218,
    inset 1px 1px #d39ca5,
    inset -2px -2px #581c26,
    inset 2px 2px #fff3f5;
  --dispatch-cad-button-shadow-active:
    inset -1px -1px #4a1820,
    inset 1px 1px #4a1820,
    inset -2px -2px #4a1820,
    inset 2px 2px rgb(184, 151, 157);
  --dispatch-cad-button-color:#fff2f4;
}
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-proto-tiny-green,
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-cad-form-actions button.primary,
.dispatch-cad-window .app-window-body.dispatch-cad-body #dispatchProtoTrafficCreate {
  --dispatch-cad-button-bg: linear-gradient(#2f8f57, #56b874);
  --dispatch-cad-button-shadow:
    inset -1px -1px #21452b,
    inset 1px 1px #abdcb6,
    inset -2px -2px #2f613a,
    inset 2px 2px #f3fff6;
  --dispatch-cad-button-shadow-active:
    inset -1px -1px #2e5436,
    inset 1px 1px #2e5436,
    inset -2px -2px #2e5436,
    inset 2px 2px rgb(162, 185, 168);
  --dispatch-cad-button-color:#f4fff8;
}
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-cad-dash-action.active,
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-cad-detail-tabs button.active,
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-admin-nav button.active,
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-admin-dataset-tabs button.active,
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-builder-tabs button.active,
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-proto-detail-tabs button.active,
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-proto-leads-tab.active,
.dispatch-cad-window .app-window-body.dispatch-cad-body .dispatch-proto-leads-result-tab.active {
  --dispatch-cad-button-bg: linear-gradient(#4A6785, #729cc8);
  --dispatch-cad-button-shadow:
    inset -1px -1px #243446,
    inset 1px 1px #b0c7dc,
    inset -2px -2px #314a65,
    inset 2px 2px #ffffff;
  --dispatch-cad-button-shadow-active:
    inset -1px -1px #304861,
    inset 1px 1px #304861,
    inset -2px -2px #304861,
    inset 2px 2px rgb(166, 180, 193);
  --dispatch-cad-button-color:#ffffff;
}
.dispatch-cad-window .app-window-body.dispatch-cad-body button:not(.dispatch-proto-tag):not(.dispatch-proto-custom-marker):not(.dispatch-cad-marker):hover,
.dispatch-cad-window .app-window-body.dispatch-cad-body button:not(.dispatch-proto-tag):not(.dispatch-proto-custom-marker):not(.dispatch-cad-marker):focus-visible,
.dispatch-cad-window .app-window-body.dispatch-cad-body button:not(.dispatch-proto-tag):not(.dispatch-proto-custom-marker):not(.dispatch-cad-marker):active {
  background:var(--dispatch-cad-button-bg);
  color:var(--dispatch-cad-button-color);
  border:none;
}
@media (max-width: 1120px) {
  .dispatch-cad-stats { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .dispatch-cad-dashboard-grid { grid-template-columns:1fr; }
  .dispatch-cad-dashboard-left,
  .dispatch-cad-dashboard-right,
  .dispatch-cad-dashboard-rail { grid-template-rows:auto; }
  .dispatch-cad-dashboard-stats-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .dispatch-cad-idle-layout, .dispatch-cad-drafting-layout { grid-template-columns:1fr; }
  .dispatch-cad-drafting-side { grid-template-rows:minmax(0,1fr) minmax(320px,40vh); }
  .dispatch-cad-active-units-head { display:none; }
  .dispatch-cad-active-unit-row { grid-template-columns:56px minmax(0,1fr); }
  .dispatch-cad-active-unit-type, .dispatch-cad-active-unit-call { display:none; }
  .dispatch-admin-summary { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .dispatch-admin-layout, .dispatch-admin-two-column { grid-template-columns:1fr; }
  .dispatch-builder-layout { grid-template-columns:1fr; }
  .dispatch-live-map-layout { grid-template-columns:1fr; }
}
@media (max-width: 720px) {
  .dispatch-cad-topbar { padding:14px 14px 10px; grid-template-columns:1fr; }
  .dispatch-cad-top-stats { max-width:none; }
  .dispatch-cad-top-actions { justify-self:start; }
  .dispatch-cad-stats { padding:12px 14px 0; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .dispatch-cad-dashboard { grid-template-rows:auto minmax(0,1fr); }
  .dispatch-cad-widget-panel { grid-template-columns:1fr; padding:8px; gap:8px; }
  .dispatch-cad-widget-head { padding-right:0; margin-right:0; border-right:none; }
  .dispatch-cad-dashboard-stats-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .dispatch-cad-workspace { padding:12px 14px 14px; }
  .dispatch-cad-form-grid, .dispatch-admin-grid { grid-template-columns:1fr; }
  .dispatch-admin-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

.booking-window .booking-search-warrant-source-shell {
  width: min(980px, 96vw);
}

.booking-window .booking-search-warrant-source-search {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px 14px;
  margin-bottom: 12px;
}

.booking-window .booking-search-warrant-source-search .field {
  margin: 0;
}

.booking-window .booking-search-warrant-source-note {
  margin: 0 0 12px;
  font-size: 12px;
  color: #475467;
}

.booking-window .booking-search-warrant-source-results {
  max-height: 360px;
}

.booking-window .booking-search-warrant-source-empty {
  border: 1.5px dashed rgba(148, 163, 184, .4);
  border-radius: 12px;
  padding: 18px 16px;
  text-align: center;
  color: #475467;
  background: rgba(255,255,255,.7);
}

.booking-window .booking-search-warrant-source-actions {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-top: 16px;
}
.alert-log-window .app-window-body {
  background: #f4f7fb;
  color: #172033;
  padding: 0;
}

.alert-log-shell {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  gap: 14px;
  padding: 18px;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.alert-log-header {
  align-items: flex-start;
  background: linear-gradient(135deg, #10233d, #25516d);
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 8px;
  color: #fff;
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding: 18px 20px;
  box-shadow: 0 18px 44px rgba(13, 32, 56, 0.18);
}

.alert-log-eyebrow {
  color: #9ed9ff;
  display: block;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.12em;
  margin-bottom: 6px;
  text-transform: uppercase;
}

.alert-log-header h2 {
  font-size: 27px;
  line-height: 1.1;
  margin: 0 0 6px;
}

.alert-log-header p {
  color: #d7e7f8;
  font-size: 13px;
  margin: 0;
}

.alert-log-header-actions {
  align-items: flex-end;
  display: flex;
  flex: 0 0 auto;
  flex-direction: column;
  gap: 9px;
}

.alert-log-live {
  align-items: center;
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 999px;
  color: #eff8ff;
  display: inline-flex;
  flex: 0 0 auto;
  font-size: 12px;
  font-weight: 800;
  gap: 8px;
  padding: 8px 12px;
}

.alert-log-live.is-error {
  background: rgba(255, 236, 229, 0.14);
  border-color: rgba(255, 170, 145, 0.45);
  color: #ffe1d6;
}

.alert-log-live span {
  animation: alert-log-pulse 1.8s ease-in-out infinite;
  background: #58f3a1;
  border-radius: 999px;
  box-shadow: 0 0 0 5px rgba(88, 243, 161, 0.14);
  display: inline-block;
  height: 8px;
  width: 8px;
}

.alert-log-live.is-error span {
  background: #ffad7a;
  box-shadow: 0 0 0 5px rgba(255, 173, 122, 0.16);
}

.alert-log-refresh {
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid rgba(255, 255, 255, 0.42);
  border-radius: 8px;
  color: #17324d;
  cursor: pointer;
  font-size: 12px;
  font-weight: 900;
  min-height: 34px;
  padding: 7px 12px;
}

.alert-log-refresh:hover {
  background: #ffffff;
}

@keyframes alert-log-pulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.5; transform: scale(0.72); }
}

.alert-log-metrics {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(5, minmax(120px, 1fr));
}

.alert-log-metric {
  background: #ffffff;
  border: 1px solid #d7e1ed;
  border-radius: 8px;
  padding: 13px 14px;
  box-shadow: 0 10px 28px rgba(33, 52, 78, 0.08);
}

.alert-log-metric span {
  color: #64748b;
  display: block;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  margin-bottom: 5px;
  text-transform: uppercase;
}

.alert-log-metric strong {
  color: #0f2a44;
  display: block;
  font-size: 26px;
  line-height: 1;
}

.alert-log-toolbar {
  align-items: center;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}

.alert-log-filters {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.alert-log-filters button,
.alert-log-table button {
  background: #ffffff;
  border: 1px solid #cbd8e6;
  border-radius: 8px;
  color: #25435f;
  cursor: pointer;
  font-weight: 800;
  min-height: 36px;
  padding: 8px 12px;
}

.alert-log-filters button.active,
.alert-log-table button {
  background: #0d5f8f;
  border-color: #0d5f8f;
  color: #ffffff;
}

.alert-log-search {
  align-items: center;
  background: #ffffff;
  border: 1px solid #cbd8e6;
  border-radius: 8px;
  color: #64748b;
  display: flex;
  flex: 0 1 420px;
  gap: 10px;
  padding: 0 12px;
}

.alert-log-search span {
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.alert-log-search input {
  border: 0;
  color: #172033;
  flex: 1;
  font: inherit;
  min-height: 42px;
  min-width: 0;
  outline: 0;
}

.alert-log-table-wrap {
  background: #ffffff;
  border: 1px solid #d7e1ed;
  border-radius: 8px;
  box-shadow: 0 16px 42px rgba(33, 52, 78, 0.1);
  flex: 1;
  min-height: 360px;
  overflow: auto;
}

.alert-log-table {
  border-collapse: separate;
  border-spacing: 0;
  min-width: 980px;
  width: 100%;
}

.alert-log-table th {
  background: #edf3f8;
  border-bottom: 1px solid #d5e1ec;
  color: #52657c;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.08em;
  padding: 12px 14px;
  position: sticky;
  text-align: left;
  text-transform: uppercase;
  top: 0;
  z-index: 1;
}

.alert-log-table td {
  border-bottom: 1px solid #e4ebf3;
  color: #203047;
  padding: 13px 14px;
  vertical-align: middle;
}

.alert-log-table tr {
  cursor: pointer;
}

.alert-log-table tr:hover td {
  background: #f6faff;
}

.alert-log-table tr.is-high td:first-child {
  box-shadow: inset 4px 0 0 #d84a3a;
}

.alert-log-table time {
  color: #56677d;
  display: block;
  font-size: 12px;
  white-space: nowrap;
}

.alert-log-source {
  color: #0d5f8f;
  font-weight: 900;
}

.alert-log-table strong {
  color: #162238;
  display: block;
  font-size: 14px;
  margin-bottom: 4px;
}

.alert-log-table small {
  color: #65758a;
  display: block;
  font-size: 12px;
  line-height: 1.35;
  max-width: 560px;
}

.alert-log-status {
  border-radius: 999px;
  display: inline-flex;
  font-size: 11px;
  font-weight: 900;
  padding: 6px 10px;
  text-transform: uppercase;
  white-space: nowrap;
}

.alert-log-status-approval {
  background: #fff0d7;
  color: #8c4f00;
}

.alert-log-status-sendback {
  background: #ffe2de;
  color: #a33327;
}

.alert-log-status-draft {
  background: #e8f0ff;
  color: #254f9a;
}

.alert-log-status-message {
  background: #e4f8ef;
  color: #11623c;
}

.alert-log-status-open {
  background: #eaf2f7;
  color: #33556f;
}

.alert-log-empty {
  align-items: center;
  color: #627085;
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: center;
  min-height: 320px;
  padding: 30px;
  text-align: center;
}

.alert-log-empty strong {
  color: #162238;
  font-size: 18px;
  margin-bottom: 6px;
}

.alert-log-empty p {
  margin: 0;
  max-width: 520px;
}

@media (max-width: 920px) {
  .alert-log-header,
  .alert-log-toolbar {
    align-items: stretch;
    flex-direction: column;
  }

  .alert-log-header-actions {
    align-items: flex-start;
  }

  .alert-log-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .alert-log-search {
    flex-basis: auto;
  }
}
