.a11y-settings-panel-v2 {
  width: min(570px, calc(100vw - 32px)) !important;
  max-height: min(760px, calc(100dvh - 32px)) !important;
  box-sizing: border-box !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  border-radius: 18px !important;
}
.a11y-settings-panel-v2 .a11y-settings-header { padding: 16px 24px !important; gap: 14px !important; }
.a11y-settings-panel-v2 .a11y-title-icon { width: 52px !important; height: 52px !important; font-size: 28px !important; }
.a11y-settings-panel-v2 .a11y-settings-header h2 { font-size: 26px !important; }
.a11y-settings-panel-v2 .a11y-settings-close { font-size: 34px !important; }
.a11y-settings-panel-v2 .a11y-settings-content { padding: 22px 28px 26px !important; }
.a11y-settings-panel-v2 .a11y-settings-content h3 { font-size: 24px !important; margin-bottom: 6px !important; }
.a11y-settings-panel-v2 .a11y-intro { font-size: 17px !important; margin-bottom: 18px !important; }
.a11y-settings-panel-v2 .a11y-setting-row { min-height: 82px !important; margin-bottom: 12px !important; padding: 12px 16px !important; border-radius: 16px !important; }
.a11y-settings-panel-v2 .a11y-row-icon { width: 48px !important; height: 48px !important; font-size: 25px !important; }
.a11y-settings-panel-v2 .a11y-setting-row > span:not(.a11y-row-icon) { margin-left: 14px !important; }
.a11y-settings-panel-v2 .a11y-setting-row strong { font-size: 20px !important; }
.a11y-settings-panel-v2 .a11y-setting-row small { margin-top: 3px !important; font-size: 15px !important; }
.a11y-settings-panel-v2 .a11y-setting-row i,
.a11y-settings-panel-v2 .a11y-setting-row input + i {
  display: block !important; position: relative !important; flex: 0 0 58px !important;
  width: 58px !important; height: 32px !important; border: 2px solid #aeb1b5 !important;
  border-radius: 20px !important; background: #aeb1b5 !important; box-sizing: border-box !important;
}
.a11y-settings-panel-v2 .a11y-setting-row i:after {
  content: '' !important; display: block !important; position: absolute !important;
  width: 24px !important; height: 24px !important; left: 2px !important; top: 2px !important;
  border-radius: 50% !important; background: #fff !important; transform: none !important;
}
.a11y-settings-panel-v2 .a11y-setting-row input:checked + i { background: #f15a24 !important; border-color: #f15a24 !important; }
.a11y-settings-panel-v2 .a11y-setting-row input:checked + i:after { left: 28px !important; }
.a11y-settings-panel-v2 .a11y-font-card { padding: 16px 16px 14px !important; border-radius: 16px !important; }
.a11y-settings-panel-v2 .a11y-font-icon { width: 48px !important; height: 48px !important; font-size: 24px !important; margin-bottom: 8px !important; }
.a11y-settings-panel-v2 .a11y-font-card strong { font-size: 21px !important; }
.a11y-settings-panel-v2 .a11y-font-subtitle { font-size: 15px !important; }
.a11y-settings-panel-v2 .a11y-font-controls { gap: 12px !important; margin-top: 16px !important; }
.a11y-settings-panel-v2 .a11y-font-controls button { width: 38px !important; height: 38px !important; font-size: 25px !important; }
.a11y-settings-panel-v2 .a11y-font-labels { font-size: 16px !important; margin-top: 8px !important; }

@media (max-width:700px) {
  .a11y-settings-panel-v2 {
    box-sizing: border-box !important;
    overflow-x: hidden !important;
  }
  .a11y-settings-panel-v2 .a11y-setting-row {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
  }
  .a11y-settings-panel-v2 .a11y-setting-row > span:not(.a11y-row-icon) {
    min-width: 0 !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
  }
  .a11y-settings-panel-v2 .a11y-setting-row strong,
  .a11y-settings-panel-v2 .a11y-setting-row small {
    overflow-wrap: anywhere !important;
  }
}

@media (min-width:701px) and (max-width:991px) {
  .a11y-settings-panel-v2 {
    width: min(570px, calc(100vw - 40px)) !important;
    max-height: calc(100dvh - 40px) !important;
  }
  .a11y-settings-panel-v2 .a11y-settings-content {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
  .a11y-settings-panel-v2 .a11y-setting-row i,
  .a11y-settings-panel-v2 .a11y-setting-row input + i {
    flex-basis: 48px !important;
    width: 48px !important;
    height: 26px !important;
  }
  .a11y-settings-panel-v2 .a11y-setting-row i:after {
    width: 18px !important;
    height: 18px !important;
    left: 2px !important;
    top: 2px !important;
  }
  .a11y-settings-panel-v2 .a11y-setting-row input:checked + i:after {
    left: 26px !important;
  }
}

@media (max-width:700px) {
  .a11y-settings-panel-v2 {
    width: calc(100vw - 24px) !important;
    max-height: calc(100dvh - 24px) !important;
    border-radius: 16px !important;
  }
  .a11y-settings-panel-v2 .a11y-settings-header {
    padding: 14px 16px !important;
    min-height: 68px !important;
  }
  .a11y-settings-panel-v2 .a11y-title-icon {
    width: 42px !important;
    height: 42px !important;
    font-size: 23px !important;
  }
  .a11y-settings-panel-v2 .a11y-settings-header h2 {
    min-width: 0 !important;
    max-width: calc(100% - 100px) !important;
    font-size: clamp(18px, 5.6vw, 23px) !important;
    line-height: 1.15 !important;
  }
  .a11y-settings-panel-v2 .a11y-settings-close {
    flex: 0 0 34px !important;
    font-size: 32px !important;
    line-height: 1 !important;
  }
  .a11y-settings-panel-v2 .a11y-settings-content {
    padding: 18px 14px 20px !important;
  }
  .a11y-settings-panel-v2 .a11y-settings-content h3 {
    font-size: clamp(20px, 6vw, 24px) !important;
    line-height: 1.2 !important;
  }
  .a11y-settings-panel-v2 .a11y-intro {
    font-size: 15px !important;
    line-height: 1.35 !important;
    margin-bottom: 14px !important;
  }
  .a11y-settings-panel-v2 .a11y-setting-row {
    display: flex !important;
    min-height: 76px !important;
    margin-bottom: 10px !important;
    padding: 10px 12px !important;
    gap: 0 !important;
  }
  .a11y-settings-panel-v2 .a11y-row-icon {
    width: 40px !important;
    height: 40px !important;
    font-size: 21px !important;
  }
  .a11y-settings-panel-v2 .a11y-setting-row > span:not(.a11y-row-icon) {
    margin-left: 10px !important;
    margin-right: 8px !important;
  }
  .a11y-settings-panel-v2 .a11y-setting-row strong {
    font-size: 17px !important;
    line-height: 1.2 !important;
  }
  .a11y-settings-panel-v2 .a11y-setting-row small {
    font-size: 13px !important;
    line-height: 1.25 !important;
  }
  .a11y-settings-panel-v2 .a11y-setting-row i,
  .a11y-settings-panel-v2 .a11y-setting-row input + i {
    flex-basis: 44px !important;
    width: 44px !important;
    height: 24px !important;
  }
  .a11y-settings-panel-v2 .a11y-setting-row i:after {
    width: 16px !important;
    height: 16px !important;
    left: 2px !important;
    top: 2px !important;
  }
  .a11y-settings-panel-v2 .a11y-setting-row input:checked + i:after {
    left: 24px !important;
  }
  .a11y-settings-panel-v2 .a11y-font-card {
    padding: 14px 12px 12px !important;
  }
  .a11y-settings-panel-v2 .a11y-font-icon {
    width: 40px !important;
    height: 40px !important;
    font-size: 21px !important;
  }
  .a11y-settings-panel-v2 .a11y-font-card strong {
    font-size: 18px !important;
  }
  .a11y-settings-panel-v2 .a11y-font-controls {
    gap: 8px !important;
    margin-top: 12px !important;
  }
  .a11y-settings-panel-v2 .a11y-font-controls button {
    width: 34px !important;
    height: 34px !important;
    font-size: 23px !important;
  }
  .a11y-settings-panel-v2 .a11y-font-labels {
    font-size: 14px !important;
  }
}

.a11y-settings-panel-v2 .a11y-hide-button-row {
  border-color: #8bcf9c !important;
  background: #effaf1 !important;
}
.a11y-settings-panel-v2 .a11y-hide-button-row .a11y-row-icon {
  background: #d9f3df !important;
  color: #238443 !important;
}
.a11y-settings-panel-v2 .a11y-hide-button-row input:checked + i {
  background: #42a85f !important;
  border-color: #42a85f !important;
}
