/* --- HEADER --- */.header {  position: fixed;  top: 0; left: 0; right: 0;  height: var(--header-h);  min-width: var(--app-min-width);  z-index: 200;  background: color-mix(in srgb, var(--header-bg) 55%, transparent);  border-bottom: none;  backdrop-filter: blur(12px) saturate(1.35);  -webkit-backdrop-filter: blur(12px) saturate(1.35);  display: flex;  align-items: center;  padding: 0 32px;  gap: 24px;  overflow: visible;  isolation: isolate;}.header::after {
  content: '';  position: absolute;  inset: 0;  pointer-events: none;  z-index: -1;  opacity: 0.035;  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");  background-size: 180px 180px;}
[data-theme="dark"] .header::after {
  opacity: 0.055;
}
.header > :not(.tm-video-layer) {
  position: relative;
  z-index: 2;
}
.header-wordmark {
  display: flex;  align-items: center;  gap: 10px;  position: relative;  flex-shrink: 0;}.header-text-stack {  display: flex;  flex-direction: column;  gap: 1px;}.header-brand-row {  flex-direction: row;  align-items: center;  gap: 10px;}.header-logo-mark { display: inline-flex; align-items: center; height: auto; width: auto; flex-shrink: 0; font-family: var(--brand-pixel); font-size: 30px; font-weight: 400; line-height: 1; letter-spacing: 0; color: var(--accent); text-transform: none; }.header-brand-sep {  width: 1px;  height: 16px;  background: var(--border2);  flex-shrink: 0;  margin: 0 2px;}.header-market-pair {  display: flex;  align-items: center;  gap: 5px;  flex-shrink: 0;}.header-market-icon {  height: 20px;  width: auto;  flex-shrink: 0;  opacity: 0.85;}.header-market-label {  font-family: var(--mono);  font-size: 9px;  font-weight: 600;  color: var(--text3);  letter-spacing: 0.08em;}.header-main-divider {  margin-left: 8px;}.header-divider {  width: 1px;  height: 24px;  background: var(--border2);  flex-shrink: 0;}.header-spacer { flex: 1; }.header-actions {  display: flex;  align-items: center;  gap: 8px;}.header-control-wrap {  position: relative;  display: inline-flex;  align-items: center;}.header-action-btn {  background: transparent;  border: none;  color: var(--text3);  cursor: pointer;  display: flex;  align-items: center;  justify-content: center;  gap: 5px;  flex-shrink: 0;  border-radius: 7px;  transition: background 0.15s, color 0.15s, opacity 0.15s;}.header-action-btn:hover,.header-action-btn.is-open {  background: transparent;  color: var(--accent);}.header-icon-action {  padding: 4px 6px;  font-size: 13px;  line-height: 1;}.header-text-action {  padding: 4px 2px;  font-family: var(--mono);  font-size: 9px;  font-weight: 600;  letter-spacing: 0.1em;  text-transform: uppercase;}#vol-dropdown-btn:hover,#vol-dropdown-btn.is-open {  color: var(--accent);}#wywa-snap-btn {  position: relative;}.chrome-outline-btn {  display: inline-flex;  align-items: center;  justify-content: center;  gap: 6px;  background: transparent;  border: 1px solid var(--border2);  color: var(--text3);  font-family: var(--mono);  font-size: 9px;  font-weight: 700;  letter-spacing: 0.1em;  text-transform: uppercase;  padding: 6px 16px;  cursor: pointer;  transition: background 0.15s, color 0.15s, border-color 0.15s, opacity 0.15s;}.chrome-outline-btn:hover {  border-color: var(--accent);  color: var(--accent);}.chrome-outline-btn-compact {  font-size: 8px;  padding: 3px 10px;}.scanner-back-top-wrap {  display: flex;  justify-content: center;  margin: 48px 0 0;}.github-credit {  display: flex;  align-items: center;  gap: 6px;  text-decoration: none;  opacity: var(--github-credit-opacity);  transition: opacity 0.15s;}.github-credit:hover {  opacity: 1;}.github-credit-compact {  gap: 5px;}.github-credit-icon {  color: var(--text3);  flex-shrink: 0;  width: 16px;  height: 16px;}.github-credit-icon-small {  width: 13px;  height: 13px;}.github-credit-label {  font-family: var(--mono);  font-size: 9px;  font-weight: 600;  color: var(--text3);  letter-spacing: 0.06em;}.ws-diag-overlay {
  display: none;
  position: fixed;  inset: 0;  background: rgba(255,255,255,0.05);  backdrop-filter: blur(10px);  -webkit-backdrop-filter: blur(10px);  z-index: 99998;}[data-theme="dark"] .ws-diag-overlay {  background: rgba(28,27,32,0.5);}.ws-diag-panel {  display: none;  position: fixed;  top: 50%;  left: 50%;  transform: translate(-50%,-50%);  z-index: 99999;  width: 420px;  max-width: calc(100vw - 32px);  background: var(--bg1);  border: 1px solid var(--border2);  border-radius: var(--radius-lg);  font-family: var(--mono);  overflow: hidden;}.ws-diag-head {  display: flex;  align-items: center;  justify-content: space-between;  padding: 10px 14px;  border-bottom: 1px solid var(--border);}.ws-diag-title {  font-size: 9px;  font-weight: 700;  letter-spacing: 0.14em;  color: var(--text3);  text-transform: uppercase;}.ws-diag-close-icon {  background: transparent;  border: none;  color: var(--text3);  cursor: pointer;  font-size: 16px;  line-height: 1;  padding: 0 2px;  transition: color 0.15s;}.ws-diag-close-icon:hover {  color: var(--text);}.ws-diag-log {  padding: 12px 14px;  min-height: 120px;  max-height: 280px;  overflow-y: auto;  display: flex;  flex-direction: column;  gap: 5px;  font-size: 10px;  line-height: 1.5;  color: var(--text2);}.ws-diag-footer {  display: none;  padding: 10px 14px;  border-top: 1px solid var(--border);  align-items: center;  justify-content: space-between;  gap: 10px;}.ws-diag-verdict {  font-size: 11px;  font-weight: 700;  letter-spacing: 0.08em;}.ws-diag-row {  display: flex;  gap: 8px;  align-items: flex-start;}.ws-diag-time {  color: var(--text3);  flex-shrink: 0;  font-size: 9px;  margin-top: 1px;}/* --- CONFIG VIEW --- */.config-view {  max-width: 1040px;  margin: 0 auto;  padding: 38px 36px 82px;}.config-hero {  margin-bottom: 28px;  padding-bottom: 26px;  border-bottom: 1px solid color-mix(in srgb, var(--border2) 46%, transparent);}.config-eyebrow,.config-section-label,.config-field-label,.config-status-label,.config-toggle-btn,.config-action-btn {  font-family: var(--mono);  text-transform: uppercase;}.config-eyebrow {  font-size: 9px;  font-weight: 800;  color: var(--accent);  letter-spacing: 0.14em;  margin-bottom: 8px;}.config-title {  font-family: var(--display-font, var(--sans));  font-size: 24px;  font-weight: 800;  color: var(--text);  letter-spacing: 0.04em;  text-transform: uppercase;  line-height: 1.35;}.config-copy {  max-width: 660px;  font-size: 13px;  color: var(--text3);  margin-top: 8px;  line-height: 1.6;}.config-quick-grid {  display: grid;  grid-template-columns: repeat(3, minmax(0, 1fr));  gap: 8px;  margin-top: 20px;}.config-quick-card {  display: grid;  grid-template-columns: auto 1fr;  column-gap: 10px;  row-gap: 2px;  align-items: center;  min-height: 72px;  padding: 12px;  background: color-mix(in srgb, var(--bg1) 72%, transparent);  border: 1px solid color-mix(in srgb, var(--border2) 46%, transparent);  box-sizing: border-box;}.config-quick-card span {  grid-row: 1 / span 2;  display: inline-flex;  align-items: center;  justify-content: center;  min-width: 42px;  height: 23px;  padding: 0 6px;  border: 1px solid color-mix(in srgb, var(--accent) 34%, transparent);  color: var(--accent);  font-family: var(--mono);  font-size: 8px;  font-weight: 800;  letter-spacing: 0.08em;}.config-quick-card strong {  font-family: var(--display-font, var(--sans));  font-size: 10px;  font-weight: 800;  color: var(--text);  letter-spacing: 0.08em;  text-transform: uppercase;}.config-quick-card em {  font-family: var(--sans);  font-size: 11px;  font-style: normal;  color: var(--text3);  line-height: 1.35;}.config-stack {  display: grid;  grid-template-columns: minmax(0, 1fr);  gap: 10px;}.config-section-label {  display: inline-flex;  align-items: center;  min-height: 22px;  font-size: 8px;  font-weight: 800;  color: var(--accent);  letter-spacing: 0.12em;  padding: 0 0 0 9px;  border-left: 2px solid currentColor;}.config-section-label-spaced {  margin-top: 18px;}.config-card {  background: color-mix(in srgb, var(--bg1) 76%, transparent);  border: 1px solid color-mix(in srgb, var(--border2) 42%, transparent);  padding: 16px;  box-shadow: none;}.config-card-attached {  border-top: 1px solid color-mix(in srgb, var(--border2) 42%, transparent);}.config-card-row {  display: flex;  align-items: center;  gap: 16px;}.config-card-stack {  display: flex;  flex-direction: column;  gap: 14px;}.config-card-stack.config-card-trading {  gap: 14px;}.config-service-row {  display: flex;  align-items: flex-start;  justify-content: space-between;  gap: 16px;}.config-service-main {  flex: 1;  min-width: 0;}.config-service-heading {  display: flex;  align-items: center;  gap: 8px;  margin-bottom: 3px;}.config-service-heading svg {  filter: saturate(0.35) brightness(1.45);  opacity: 0.86;}.config-service-title {  font-family: var(--display-font, var(--sans));  font-weight: 800;  font-size: 11px;  color: var(--text);  letter-spacing: 0.08em;  text-transform: uppercase;}.config-service-desc {  font-size: 11px;  color: var(--text3);  line-height: 1.6;}.config-status {  display: flex;  align-items: center;  gap: 6px;  flex-shrink: 0;  min-height: 22px;  padding: 0 8px;  margin-top: 2px;  border: 1px solid color-mix(in srgb, var(--border2) 38%, transparent);  background: color-mix(in srgb, var(--bg2) 52%, transparent);}.config-status-dot {  width: 5px;  height: 5px;  border-radius: 0;  background: var(--text3);  flex-shrink: 0;}.config-status-dot.ready {  background: var(--bull);}.config-status-label {  font-size: 9px;  font-weight: 700;  color: var(--text3);  letter-spacing: 0.06em;}.config-status-label.ready {  color: var(--bull);}.config-field-stack {  display: flex;  flex-direction: column;  gap: 9px;}.config-field-row {  display: flex;  align-items: center;  gap: 8px;}.config-field-row-wrap {  display: grid;  grid-template-columns: minmax(180px, 1fr) minmax(140px, 0.55fr);  gap: 10px;}.config-field {  flex: 1;  min-width: 0;}.config-field-min-wide,.config-field-min-narrow {  min-width: 0;}.config-field-label {  font-size: 8px;  font-weight: 800;  color: var(--text3);  letter-spacing: 0.1em;  width: 80px;  flex-shrink: 0;}.config-field-label-block {  display: block;  width: auto;  margin-bottom: 6px;  font-size: 8px;  font-weight: 800;  letter-spacing: 0.12em;}.config-input {  width: 100%;  min-width: 0;  min-height: 31px;  background: color-mix(in srgb, var(--bg2) 62%, transparent);  border: 1px solid color-mix(in srgb, var(--border2) 38%, transparent);  border-radius: 0;  color: var(--text);  font-family: var(--mono);  font-size: 11px;  padding: 7px 10px;  outline: none;  box-sizing: border-box;  transition: border-color 0.15s, background 0.15s;}.config-field-row .config-input {  flex: 1;  padding: 7px 10px;}.config-input:focus {  border-color: color-mix(in srgb, var(--accent) 66%, var(--border2));  background: color-mix(in srgb, var(--bg2) 78%, transparent);}.config-hint {  font-size: 10px;  color: var(--text3);  margin-top: 6px;  opacity: 0.76;}.config-feedback {  display: none;  margin-top: 6px;  font-size: 10px;  line-height: 1.45;  font-weight: 700;  color: var(--text3);}.config-feedback.ok {  display: block;  color: var(--bull);}.config-feedback.err {  display: block;  color: var(--bear);}.logo-folder-export-status {  display: block;  margin-top: 0;  opacity: 0.78;}.logo-folder-export-status.ok,.logo-folder-export-status.err {  opacity: 1;}.config-action-btn,.config-toggle-btn {  min-height: 31px;  font-size: 9px;  letter-spacing: 0.08em;  padding: 6px 11px;  border: 1px solid color-mix(in srgb, var(--border2) 42%, transparent);  border-radius: 0;  background: color-mix(in srgb, var(--bg2) 58%, transparent);  color: var(--text3);  cursor: pointer;  transition: background 0.12s, color 0.12s, border-color 0.12s, opacity 0.12s;}.config-action-btn:hover,.config-toggle-btn:hover {  border-color: color-mix(in srgb, var(--accent) 34%, var(--border2));  color: var(--text);  background: color-mix(in srgb, var(--accent) 7%, var(--bg2));}.config-action-btn-primary {  font-weight: 800;  background: var(--accent);  border-color: var(--accent);  color: var(--page-bg);  padding: 6px 14px;}.config-action-btn-primary:hover {  background: color-mix(in srgb, var(--accent) 84%, var(--text3));  border-color: color-mix(in srgb, var(--accent) 84%, var(--text3));  color: var(--page-bg);}.config-action-btn-secondary {  font-weight: 700;  background: transparent;  color: var(--text2);  padding: 6px 10px;}.config-toggle-btn.active {  border-color: var(--accent);  background: var(--accent);  color: var(--page-bg);}.config-toggle-row {  display: flex;  flex-wrap: wrap;  align-items: center;  gap: 6px;}.config-toggle-sep {  width: 1px;  height: 18px;  background: var(--border2);  flex-shrink: 0;  margin: 0 2px;}.config-check-row {  display: flex;  align-items: center;  gap: 10px;  padding-top: 10px;  border-top: 1px solid color-mix(in srgb, var(--border2) 36%, transparent);}.config-check-label {  display: flex;  align-items: center;  gap: 6px;  cursor: pointer;  font-family: var(--mono);  font-size: 10px;  color: var(--text3);}.config-check-label input {  width: 13px;  height: 13px;  cursor: pointer;  accent-color: var(--accent);}.config-muted-note {  color: var(--text3);  opacity: 0.7;}@media (max-width: 860px) {  .config-view {    padding: 30px 18px 70px;  }  .config-quick-grid,  .config-field-row-wrap {    grid-template-columns: minmax(0, 1fr);  }  .config-field-row {    align-items: stretch;    flex-wrap: wrap;  }  .config-field-label {    width: 100%;  }}/* --- TAB MIRROR PANEL --- */
#tabmirror-panel {
  display: none;
  flex-direction: column;
  gap: 0;
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  z-index: 9999;
  min-width: 230px;
  overflow: hidden;
  background: var(--bg1);
  border: 1px solid var(--border);
  border-radius: var(--radius);
}
.tm-panel-head,
.tm-control-row,
.tm-action-row {
  display: flex;
  align-items: center;
}
.tm-panel-head {
  justify-content: space-between;
  padding: 8px 12px 6px;
  border-bottom: 1px solid var(--border);
}
.tm-panel-title,
.tm-panel-kicker,
.tm-control-label,
.tm-action-btn {
  font-family: var(--mono);
  text-transform: uppercase;
}
.tm-panel-title {
  font-size: 9px;
  font-weight: 650;
  letter-spacing: 0.12em;
  color: var(--text);
}
.tm-panel-status {
  font-family: var(--mono);
  font-size: 8px;
  color: var(--text3);
}
.tm-zone-section {
  padding: 8px 12px 4px;
}
.tm-panel-kicker {
  margin-bottom: 5px;
  font-size: 8px;
  font-weight: 600;
  letter-spacing: 0.08em;
  color: var(--text3);
}
.tm-zone-list {
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.tm-zone-label {
  display: flex;
  align-items: center;
  gap: 7px;
  cursor: pointer;
  font-family: var(--mono);
  font-size: 8px;
  font-weight: 600;
  color: var(--text2);
}
.tm-zone-label input,
.tm-range {
  accent-color: var(--accent);
  cursor: pointer;
}
.tm-control-row {
  gap: 8px;
  padding: 4px 12px;
}
.tm-control-row-bordered {
  margin-top: 4px;
  padding-top: 6px;
  padding-bottom: 2px;
  border-top: 1px solid var(--border);
}
.tm-size-row {
  padding-bottom: 8px;
}
.tm-control-label {
  width: 36px;
  white-space: nowrap;
  font-size: 8px;
  font-weight: 600;
  letter-spacing: 0.08em;
  color: var(--text3);
}
.tm-range {
  flex: 1;
  height: 3px;
}
.tm-control-value {
  width: 26px;
  text-align: right;
  font-family: var(--mono);
  font-size: 8px;
  font-weight: 700;
  color: var(--text2);
}
.tm-size-select {
  flex: 1;
  padding: 3px 5px;
  cursor: pointer;
  font-family: var(--mono);
  font-size: 8px;
  font-weight: 600;
  color: var(--text2);
  background: var(--bg2);
  border: 1px solid var(--border2);
  border-radius: 3px;
}
.tm-action-row {
  gap: 0;
  border-top: 1px solid var(--border);
}
.tm-action-btn {
  flex: 1;
  padding: 7px 0;
  cursor: pointer;
  background: none;
  border: none;
  font-size: 8px;
  font-weight: 700;
  letter-spacing: 0.08em;
}
.tm-action-btn:disabled {
  cursor: default;
  opacity: 0.4;
}
.tm-action-start {
  color: var(--bull);
  border-right: 1px solid var(--border);
}
.tm-action-stop {
  color: var(--bear);
}
/* --- HEADER VOLUME AND SYNC POPOVERS --- */
#vol-panel {
  display: none;
  flex-direction: column;
  gap: 6px;
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  z-index: 9999;
  min-width: 0;
  padding: 10px 12px;
  white-space: nowrap;
  background: var(--bg1);
}
.vol-row {
  display: flex;
  align-items: center;
  gap: 8px;
}
.vol-label {
  width: 44px;
  font-family: var(--mono);
  font-size: 8px;
  color: var(--text3);
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.vol-slider {
  width: 80px;
  height: 3px;
  cursor: pointer;
  accent-color: var(--accent);
}
#sync-tooltip {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  z-index: 9999;
  width: 220px;
  padding: 12px 14px;
  pointer-events: none;
  opacity: 0;
  background: var(--bg1);
  color: var(--text2);
  font-family: var(--sans);
  font-size: 11px;
  line-height: 1.6;
  transition: opacity 0.15s;
}
.sync-tooltip-title {
  margin-bottom: 6px;
  font-family: var(--mono);
  font-size: 10px;
  font-weight: 700;
  color: var(--text2);
  letter-spacing: 0.08em;
}
.sync-tooltip-note {
  margin-top: 4px;
  font-size: 10px;
  color: var(--text3);
}
#tabmirror-panel[data-tm-upgraded="1"] {
  width: 440px;
  max-height: calc(100vh - var(--header-h) - 24px);
}
.tm-zones-block {
  max-height: min(560px, calc(100vh - var(--header-h) - 176px));
  overflow-y: auto;
}
.tm-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 8px 12px 7px;
  border-bottom: 1px solid var(--border);
}
.tm-section-note {
  min-width: 0;
  text-align: right;
  font-family: var(--mono);
  font-size: 8px;
  font-weight: 600;
  color: var(--text3);
  letter-spacing: 0.04em;
}
.tm-zone-row {
  padding: 9px 12px 10px;
  border-bottom: 1px solid var(--border);
}
.tm-zone-row:last-child {
  border-bottom: none;
}
.tm-zone-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 8px;
}
.tm-dynamic-zone-label {
  display: flex;
  align-items: center;
  gap: 7px;
  cursor: pointer;
  font-family: var(--mono);
  font-size: 8px;
  color: var(--text2);
}
.tm-dynamic-zone-label {
  margin-bottom: 0;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.tm-dynamic-zone-label input,
.tm-zone-range {
  accent-color: var(--accent);
  cursor: pointer;
}
.tm-dynamic-zone-label input {
  margin: 0;
}
.tm-zone-grid {
  display: grid;
  align-items: center;
  gap: 6px;
}
.tm-zone-grid-source {
  grid-template-columns: 42px minmax(138px, 1fr) 38px 74px;
}
.tm-zone-grid-range {
  grid-template-columns: 42px minmax(92px, 1fr) 34px 74px;
}
.tm-zone-opacity-row {
  margin-top: 5px;
}
.tm-zone-blur-row {
  margin-top: 4px;
}
.tm-zone-body {
  display: grid;
  gap: 7px;
}
.tm-zone-field {
  display: grid;
  align-items: center;
  gap: 4px;
}
.tm-zone-field-source {
  grid-template-columns: 48px minmax(0, 1fr);
}
.tm-zone-pair {
  display: grid;
  grid-template-columns: minmax(120px, 1fr) minmax(134px, 1fr);
  gap: 8px;
}
.tm-zone-slider-grid {
  display: grid;
  grid-template-columns: 48px minmax(80px, 1fr) 34px 32px minmax(80px, 1fr) 34px;
  align-items: center;
  gap: 6px;
}
.tm-zone-snapshot-row,
.tm-pack-row,
.tm-pack-head {
  display: flex;
  align-items: center;
  gap: 6px;
}
.tm-zone-snapshot-row {
  gap: 0;
  overflow: hidden;
  background: var(--bg2);
  border: 1px solid var(--border);
  border-radius: 3px;
}
.tm-zone-snapshot-state {
  flex: 0 0 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-family: var(--mono);
  font-size: 8px;
  font-weight: 650;
  color: var(--text3);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  padding: 3px 7px;
  background: var(--bg2);
  border: 1px solid var(--border);
  border-radius: 3px;
}
.tm-snapshot-btn {
  flex: 1;
  min-width: 0;
  padding: 4px 6px;
  cursor: pointer;
  font-family: var(--mono);
  font-size: 8px;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: var(--text2);
  background: transparent;
  border: 0;
  border-right: 1px solid var(--border);
}
.tm-snapshot-btn:last-child {
  border-right: 0;
}
.tm-pack-block {
  padding: 8px 12px 10px;
  border-top: 1px solid var(--border);
}
.tm-pack-head {
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 7px;
}
.tm-pack-note {
  min-width: 0;
  text-align: right;
  font-family: var(--mono);
  font-size: 8px;
  font-weight: 600;
  color: var(--text3);
  letter-spacing: 0.04em;
}
.tm-pack-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
}
.tm-pack-btn {
  padding: 6px 0;
  color: var(--text2);
  background: var(--bg2);
  border: 1px solid var(--border);
  border-radius: 3px;
}
.tm-dynamic-label,
.tm-extension-title {
  font-family: var(--mono);
  font-size: 8px;
  font-weight: 600;
  color: var(--text3);
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.tm-extension-title {
  font-weight: 600;
}
.tm-zone-select {
  min-width: 0;
  padding: 3px 5px;
  cursor: pointer;
  font-family: var(--mono);
  font-size: 8px;
  font-weight: 600;
  color: var(--text2);
  background: var(--bg2);
  border: 1px solid var(--border2);
  border-radius: 3px;
}
.tm-size,
.tm-zone-select.tm-size {
  width: 100%;
}
.tm-zone-range {
  width: 100%;
  height: 3px;
}
.tm-zone-value,
.tm-extension-health {
  font-family: var(--mono);
  font-size: 8px;
  font-weight: 700;
  color: var(--text2);
}
.tm-zone-value {
  text-align: right;
}
.tm-extension-health {
  color: var(--text3);
}
.tm-extension-meta {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 8px 12px;
  border-top: 1px solid var(--border);
}
.tm-extension-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.tm-video-layer {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  pointer-events: none;
  z-index: 0;
}
.tm-video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  will-change: transform;
}
.tm-snapshot-img {
  display: block;
}
/* Header and diagnostics chrome polish */
.header-action-btn {
  min-height: 24px;
  border: 1px solid transparent;
}
.header-icon-action {
  min-width: 24px;
}
.header-text-action {
  min-width: 34px;
}
.header-action-btn:hover,
.header-action-btn.is-open {
  background: color-mix(in srgb, var(--accent) 8%, transparent);
  border-color: color-mix(in srgb, var(--accent) 18%, transparent);
  color: var(--accent);
}
.header-action-btn:active {
  background: color-mix(in srgb, var(--accent) 12%, transparent);
}
.ws-diag-panel {
  background: linear-gradient(180deg, color-mix(in srgb, var(--bg1) 96%, white 4%) 0%, color-mix(in srgb, var(--bg1) 92%, black 8%) 100%), var(--bg1);
  border-color: color-mix(in srgb, var(--border2) 48%, transparent);
  box-shadow: inset 0 1px 0 color-mix(in srgb, white 8%, transparent), inset 0 -1px 0 color-mix(in srgb, black 10%, transparent);
}
.ws-diag-head,
.ws-diag-footer {
  border-color: var(--border);
}
.ws-diag-close-icon {
  width: 24px;
  height: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid color-mix(in srgb, var(--border2) 36%, transparent);
  border-radius: var(--radius);
}
.ws-diag-close-icon:hover {
  border-color: var(--border2);
  background: var(--bg2);
}
/* Tab Mirror utility surface polish */
#tabmirror-panel {
  background: linear-gradient(180deg,
      color-mix(in srgb, var(--bg1) 96%, white 4%) 0%,
      color-mix(in srgb, var(--bg1) 93%, black 7%) 100%),
    var(--bg1);
  border-color: color-mix(in srgb, var(--border2) 46%, transparent);
  box-shadow: inset 1px 0 0 color-mix(in srgb, white 7%, transparent),
    inset -1px 0 0 color-mix(in srgb, black 8%, transparent),
    inset 0 1px 0 color-mix(in srgb, white 9%, transparent),
    inset 0 -1px 0 color-mix(in srgb, black 10%, transparent);
}
.tm-panel-head,
.tm-section-head,
.tm-pack-block,
.tm-extension-meta,
.tm-action-row {
  border-color: color-mix(in srgb, var(--border) 74%, transparent);
}
.tm-zone-row {
  border-color: color-mix(in srgb, var(--border) 62%, transparent);
}
.tm-zones-block {
  scrollbar-width: thin;
  scrollbar-color: color-mix(in srgb, var(--border2) 70%, transparent) transparent;
}
.tm-zones-block::-webkit-scrollbar { width: 6px; }
.tm-zones-block::-webkit-scrollbar-track { background: transparent; }
.tm-zones-block::-webkit-scrollbar-thumb {
  background: color-mix(in srgb, var(--border2) 70%, transparent);
  border-radius: 99px;
}
.tm-zone-row {
  transition: background-color 0.12s ease;
}
.tm-zone-row:hover {
  background: color-mix(in srgb, var(--accent) 4%, transparent);
}
.tm-zone-select,
.tm-size-select,
.tm-zone-snapshot-row,
.tm-pack-btn {
  background: linear-gradient(180deg,
      color-mix(in srgb, var(--bg2) 92%, white 8%) 0%,
      color-mix(in srgb, var(--bg2) 94%, black 6%) 100%),
    var(--bg2);
  border-color: color-mix(in srgb, var(--border2) 42%, transparent);
  border-radius: var(--radius);
  box-shadow: inset 0 1px 0 color-mix(in srgb, white 7%, transparent),
    inset 0 -1px 0 color-mix(in srgb, black 8%, transparent);
}
.tm-snapshot-btn,
.tm-pack-btn,
.tm-action-btn {
  transition: background-color 0.12s ease, color 0.12s ease, border-color 0.12s ease;
}
.tm-snapshot-btn:hover,
.tm-pack-btn:hover,
.tm-action-btn:hover:not(:disabled) {
  background: color-mix(in srgb, var(--accent) 7%, transparent);
  color: var(--text2);
}
.tm-extension-health,
.tm-panel-status {
  opacity: 0.78;
}
.tm-range,
.tm-zone-range {
  accent-color: var(--accent);
}
.config-collapse {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 18px;
}
.config-collapse-summary {
  grid-column: 1 / -1;
  cursor: pointer;
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 0;
}
.config-collapse-summary::-webkit-details-marker {
  display: none;
}
.config-collapse-summary::after {
  content: '+';
  color: var(--text3);
  opacity: 0.75;
  font-size: 11px;
  line-height: 1;
}
.config-collapse[open] > .config-collapse-summary::after {
  content: '-';
}
.config-collapse .config-card + .config-card {
  margin-top: 0;
}
@media (max-width: 860px) {
  .config-collapse {
    grid-template-columns: minmax(0, 1fr);
  }
}
