/*
 * -- BASE STYLES --
 * Most of these are inherited from Base, but I want to change a few.
 * nvm use v14.18.1 && npm install && npm run build
 * or npm run watch
 */
.arrow {
  border: solid #1b98f8;
  border-width: 0 2px 2px 0;
  display: inline-block;
  padding: 3px; }
  .arrow.right {
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg); }
  .arrow.left {
    transform: rotate(135deg);
    -webkit-transform: rotate(135deg); }
  .arrow.up, .arrow.asc {
    transform: rotate(-135deg);
    -webkit-transform: rotate(-135deg); }
  .arrow.down, .arrow.desc {
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg); }

body {
  color: #333;
  background: #262626; }

.pure-table-even {
  background: #fff; }

/* Some styles from https://css-tricks.com/ */
a {
  text-decoration: none;
  color: #1b98f8; }

a.github-link {
  color: #fff; }

.pure-menu-horizontal {
  background: #fff;
  padding: 5px;
  display: flex;
  justify-content: space-between;
  border-bottom: 2px solid #ed5900;
  align-items: center; }

section.content {
  padding-top: 5em;
  padding-bottom: 1em;
  flex-direction: column;
  display: flex;
  align-items: center;
  justify-content: center; }

code {
  background: #eee; }

/* table related */
.watch-table {
  width: 100%;
  font-size: 80%; }
  .watch-table tr.unviewed {
    font-weight: bold; }
  .watch-table .error {
    color: #a00; }
  .watch-table td {
    white-space: nowrap; }
  .watch-table td.title-col {
    word-break: break-all;
    white-space: normal; }
  .watch-table th {
    white-space: nowrap; }
    .watch-table th a {
      font-weight: normal; }
      .watch-table th a.active {
        font-weight: bolder; }
      .watch-table th a.inactive .arrow {
        display: none; }
  .watch-table .title-col a[target="_blank"]::after, .watch-table .current-diff-url::after {
    content: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAQElEQVR42qXKwQkAIAxDUUdxtO6/RBQkQZvSi8I/pL4BoGw/XPkh4XigPmsUgh0626AjRsgxHTkUThsG2T/sIlzdTsp52kSS1wAAAABJRU5ErkJggg==);
    margin: 0 3px 0 5px; }

.watch-tag-list {
  color: #e70069;
  white-space: nowrap; }

.box {
  max-width: 80%;
  flex-direction: column;
  display: flex;
  justify-content: center; }

#post-list-buttons {
  text-align: right;
  padding: 0px;
  margin: 0px; }
  #post-list-buttons li {
    display: inline-block; }
  #post-list-buttons a {
    border-top-left-radius: initial;
    border-top-right-radius: initial;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px; }

body:after {
  content: "";
  background: linear-gradient(130deg, #5ad8f7, #2f50af 41.07%, #9150bf 84.05%); }

body:after, body:before {
  display: block;
  height: 650px;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: -1; }

body::after {
  opacity: 0.91; }

body::before {
  content: "";
  background-size: cover; }

body:after, body:before {
  -webkit-clip-path: polygon(100% 0, 0 0, 0 77.5%, 1% 77.4%, 2% 77.1%, 3% 76.6%, 4% 75.9%, 5% 75.05%, 6% 74.05%, 7% 72.95%, 8% 71.75%, 9% 70.55%, 10% 69.3%, 11% 68.05%, 12% 66.9%, 13% 65.8%, 14% 64.8%, 15% 64%, 16% 63.35%, 17% 62.85%, 18% 62.6%, 19% 62.5%, 20% 62.65%, 21% 63%, 22% 63.5%, 23% 64.2%, 24% 65.1%, 25% 66.1%, 26% 67.2%, 27% 68.4%, 28% 69.65%, 29% 70.9%, 30% 72.15%, 31% 73.3%, 32% 74.35%, 33% 75.3%, 34% 76.1%, 35% 76.75%, 36% 77.2%, 37% 77.45%, 38% 77.5%, 39% 77.3%, 40% 76.95%, 41% 76.4%, 42% 75.65%, 43% 74.75%, 44% 73.75%, 45% 72.6%, 46% 71.4%, 47% 70.15%, 48% 68.9%, 49% 67.7%, 50% 66.55%, 51% 65.5%, 52% 64.55%, 53% 63.75%, 54% 63.15%, 55% 62.75%, 56% 62.55%, 57% 62.5%, 58% 62.7%, 59% 63.1%, 60% 63.7%, 61% 64.45%, 62% 65.4%, 63% 66.45%, 64% 67.6%, 65% 68.8%, 66% 70.05%, 67% 71.3%, 68% 72.5%, 69% 73.6%, 70% 74.65%, 71% 75.55%, 72% 76.35%, 73% 76.9%, 74% 77.3%, 75% 77.5%, 76% 77.45%, 77% 77.25%, 78% 76.8%, 79% 76.2%, 80% 75.4%, 81% 74.45%, 82% 73.4%, 83% 72.25%, 84% 71.05%, 85% 69.8%, 86% 68.55%, 87% 67.35%, 88% 66.2%, 89% 65.2%, 90% 64.3%, 91% 63.55%, 92% 63%, 93% 62.65%, 94% 62.5%, 95% 62.55%, 96% 62.8%, 97% 63.3%, 98% 63.9%, 99% 64.75%, 100% 65.7%);
  clip-path: polygon(100% 0, 0 0, 0 77.5%, 1% 77.4%, 2% 77.1%, 3% 76.6%, 4% 75.9%, 5% 75.05%, 6% 74.05%, 7% 72.95%, 8% 71.75%, 9% 70.55%, 10% 69.3%, 11% 68.05%, 12% 66.9%, 13% 65.8%, 14% 64.8%, 15% 64%, 16% 63.35%, 17% 62.85%, 18% 62.6%, 19% 62.5%, 20% 62.65%, 21% 63%, 22% 63.5%, 23% 64.2%, 24% 65.1%, 25% 66.1%, 26% 67.2%, 27% 68.4%, 28% 69.65%, 29% 70.9%, 30% 72.15%, 31% 73.3%, 32% 74.35%, 33% 75.3%, 34% 76.1%, 35% 76.75%, 36% 77.2%, 37% 77.45%, 38% 77.5%, 39% 77.3%, 40% 76.95%, 41% 76.4%, 42% 75.65%, 43% 74.75%, 44% 73.75%, 45% 72.6%, 46% 71.4%, 47% 70.15%, 48% 68.9%, 49% 67.7%, 50% 66.55%, 51% 65.5%, 52% 64.55%, 53% 63.75%, 54% 63.15%, 55% 62.75%, 56% 62.55%, 57% 62.5%, 58% 62.7%, 59% 63.1%, 60% 63.7%, 61% 64.45%, 62% 65.4%, 63% 66.45%, 64% 67.6%, 65% 68.8%, 66% 70.05%, 67% 71.3%, 68% 72.5%, 69% 73.6%, 70% 74.65%, 71% 75.55%, 72% 76.35%, 73% 76.9%, 74% 77.3%, 75% 77.5%, 76% 77.45%, 77% 77.25%, 78% 76.8%, 79% 76.2%, 80% 75.4%, 81% 74.45%, 82% 73.4%, 83% 72.25%, 84% 71.05%, 85% 69.8%, 86% 68.55%, 87% 67.35%, 88% 66.2%, 89% 65.2%, 90% 64.3%, 91% 63.55%, 92% 63%, 93% 62.65%, 94% 62.5%, 95% 62.55%, 96% 62.8%, 97% 63.3%, 98% 63.9%, 99% 64.75%, 100% 65.7%); }

.button-small {
  font-size: 85%; }

.fetch-error {
  padding-top: 1em;
  font-size: 60%;
  max-width: 400px;
  display: block; }

.button-secondary {
  color: white;
  border-radius: 4px;
  text-shadow: 0 1px 1px rgba(0, 0, 0, 0.2); }

.button-success {
  background: #1cb841;
  /* this is a green */ }

.button-tag {
  background: #636363;
  color: #fff;
  font-size: 65%;
  border-bottom-left-radius: initial;
  border-bottom-right-radius: initial; }
  .button-tag.active {
    background: #9c9c9c;
    font-weight: bold; }

.button-error {
  background: #ca3c3c;
  /* this is a maroon */ }

.button-warning {
  background: #df7514;
  /* this is an orange */ }

.button-secondary {
  background: #42b8dd;
  /* this is a light blue */ }

.button-cancel {
  background: #c8c8c8;
  /* this is a green */ }

.messages li {
  list-style: none;
  padding: 1em;
  border-radius: 10px;
  color: #fff;
  font-weight: bold; }
  .messages li.message {
    background: rgba(255, 255, 255, 0.2); }
  .messages li.error {
    background: rgba(255, 1, 1, 0.5); }
  .messages li.notice {
    background: rgba(255, 255, 255, 0.5); }

.messages.with-share-link > *:hover {
  cursor: pointer; }

#notification-customisation {
  border: 1px solid #ccc;
  padding: 0.5rem;
  border-radius: 5px; }

#notification-error-log {
  border: 1px solid #ccc;
  padding: 1rem;
  border-radius: 5px;
  overflow-wrap: break-word; }

#token-table.pure-table td, #token-table.pure-table th {
  font-size: 80%; }

#new-watch-form {
  background: rgba(0, 0, 0, 0.05);
  padding: 1em;
  border-radius: 10px;
  margin-bottom: 1em; }
  #new-watch-form input {
    display: inline-block;
    margin-bottom: 5px; }
  #new-watch-form .label {
    display: none; }
  #new-watch-form legend {
    color: #fff;
    font-weight: bold; }
  #new-watch-form #watch-add-wrapper-zone > div {
    display: inline-block; }
  @media only screen and (max-width: 760px) {
    #new-watch-form #watch-add-wrapper-zone #url {
      width: 100%; } }

#diff-col {
  padding-left: 40px; }

#diff-jump {
  position: fixed;
  left: 0px;
  top: 120px;
  background: #fff;
  padding: 10px;
  border-top-right-radius: 5px;
  border-bottom-right-radius: 5px;
  box-shadow: 5px 0 5px -2px #888; }
  #diff-jump a {
    color: #1b98f8;
    cursor: grabbing;
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -o-user-select: none; }

footer {
  padding: 10px;
  background: #fff;
  color: #444;
  text-align: center; }

#feed-icon {
  vertical-align: middle; }

#top-right-menu {
  /*
    position: absolute;
    right: 0px;
    background: linear-gradient(to right, #fff0, #fff 10%);
    padding-left: 20px;
    padding-right: 10px;
    */ }

.sticky-tab {
  position: absolute;
  top: 60px;
  font-size: 65%;
  background: #fff;
  padding: 10px; }
  .sticky-tab#left-sticky {
    left: 0px; }
  .sticky-tab#right-sticky {
    right: 0px; }
  .sticky-tab#hosted-sticky {
    right: 0px;
    top: 100px;
    font-weight: bold; }

#new-version-text a {
  color: #e07171; }

.watch-controls {
  /* default */ }
  .watch-controls .state-on img {
    opacity: 0.8; }
  .watch-controls img {
    opacity: 0.2; }
  .watch-controls img:hover {
    transition: opacity 0.3s;
    opacity: 0.8; }

.monospaced-textarea textarea {
  width: 100%;
  font-family: monospace;
  white-space: pre;
  overflow-wrap: normal;
  overflow-x: scroll; }

.pure-form {
  /* The input fields with errors */
  /* The list of errors */ }
  .pure-form fieldset {
    padding-top: 0px; }
    .pure-form fieldset ul {
      padding-bottom: 0px;
      margin-bottom: 0px; }
  .pure-form .pure-control-group, .pure-form .pure-group, .pure-form .pure-controls {
    padding-bottom: 1em; }
    .pure-form .pure-control-group div, .pure-form .pure-group div, .pure-form .pure-controls div {
      margin: 0px; }
    .pure-form .pure-control-group .checkbox > *, .pure-form .pure-group .checkbox > *, .pure-form .pure-controls .checkbox > * {
      display: inline;
      vertical-align: middle; }
    .pure-form .pure-control-group .checkbox > label, .pure-form .pure-group .checkbox > label, .pure-form .pure-controls .checkbox > label {
      padding-left: 5px; }
  .pure-form .error input {
    background-color: #ffebeb; }
  .pure-form ul.errors {
    padding: .5em .6em;
    border: 1px solid #dd0000;
    border-radius: 4px;
    vertical-align: middle;
    -webkit-box-sizing: border-box;
    box-sizing: border-box; }
    .pure-form ul.errors li {
      margin-left: 1em;
      color: #dd0000; }
  .pure-form label {
    font-weight: bold; }
  .pure-form textarea {
    width: 100%; }
  .pure-form .inline-radio ul {
    margin: 0px;
    list-style: none; }
    .pure-form .inline-radio ul li > * {
      display: inline-block; }

@media only screen and (max-width: 760px), (min-device-width: 768px) and (max-device-width: 1024px) {
  .box {
    max-width: 95%; }
  .edit-form {
    padding: 0.5em;
    margin: 0; }
  #nav-menu {
    overflow-x: scroll; } }

@media only screen and (max-width: 760px), (min-device-width: 768px) and (max-device-width: 800px) {
  div.sticky-tab#hosted-sticky {
    top: 60px;
    left: 0px;
    right: auto; }
  section.content {
    padding-top: 110px; }
  div.tabs.collapsable ul li {
    display: block;
    border-radius: 0px;
    margin-right: 0px; }
  input[type='text'] {
    width: 100%; }
  /*
Max width before this PARTICULAR table gets nasty
This query will take effect for any screen smaller than 760px
and also iPads specifically.
*/
  .watch-table {
    /* Force table to not be like tables anymore */
    /* Force table to not be like tables anymore */
    /* Hide table headers (but not display: none;, for accessibility) */ }
    .watch-table thead, .watch-table tbody, .watch-table th, .watch-table td, .watch-table tr {
      display: block; }
    .watch-table .last-checked > span {
      vertical-align: middle; }
    .watch-table .last-checked::before {
      color: #555;
      content: "Last Checked "; }
    .watch-table .last-changed::before {
      color: #555;
      content: "Last Changed "; }
    .watch-table td.inline {
      display: inline-block; }
    .watch-table thead tr {
      position: absolute;
      top: -9999px;
      left: -9999px; }
    .watch-table .pure-table td, .watch-table .pure-table th {
      border: none; }
    .watch-table td {
      /* Behave  like a "row" */
      border: none;
      border-bottom: 1px solid #eee;
      vertical-align: middle; }
      .watch-table td:before {
        /* Top/left values mimic padding */
        top: 6px;
        left: 6px;
        width: 45%;
        padding-right: 10px;
        white-space: nowrap; }
    .watch-table.pure-table-striped tr {
      background-color: #fff; }
    .watch-table.pure-table-striped tr:nth-child(2n-1) {
      background-color: #eee; }
    .watch-table.pure-table-striped tr:nth-child(2n-1) td {
      background-color: inherit; } }

/** Desktop vs mobile input field strategy
- We dont use 'size' with <input> because `size` is too unreliable to override, and will often push-out
- Rely always on width in CSS
*/
@media only screen and (min-width: 761px) {
  /* m-d is medium-desktop */
  .m-d {
    min-width: 80%; } }

.tabs ul {
  margin: 0px;
  padding: 0px;
  display: block; }
  .tabs ul li {
    margin-right: 3px;
    display: inline-block;
    color: #fff;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
    background-color: rgba(255, 255, 255, 0.2); }
    .tabs ul li.active, .tabs ul li :target {
      background-color: #fff; }
      .tabs ul li.active a, .tabs ul li :target a {
        color: #222;
        font-weight: bold; }
    .tabs ul li a {
      display: block;
      padding: 0.8em;
      color: #fff; }

.pure-form-stacked > div:first-child {
  display: block; }

.login-form .inner {
  background: #fff;
  padding: 20px;
  border-radius: 5px; }

.tab-pane-inner {
  padding: 0px; }
  .tab-pane-inner:not(:target) {
    display: none; }
  .tab-pane-inner:target {
    display: block; }

#beta-logo {
  height: 50px;
  right: -3px;
  top: -3px;
  position: absolute; }

#selector-header {
  padding-bottom: 1em; }

.edit-form {
  min-width: 70%;
  /* so it cant overflow */
  max-width: 95%; }
  .edit-form .box-wrap {
    position: relative; }
  .edit-form .inner {
    background: #fff;
    padding: 20px; }
  .edit-form #actions {
    display: block;
    background: #fff; }
  .edit-form .pure-form-message-inline {
    padding-left: 0; }

ul {
  padding-left: 1em;
  padding-top: 0px;
  margin-top: 4px; }

.time-check-widget tr {
  display: inline; }
  .time-check-widget tr input[type="number"] {
    width: 5em; }

#selector-wrapper {
  height: 600px;
  overflow-y: scroll;
  position: relative; }
  #selector-wrapper > img {
    position: absolute;
    z-index: 4;
    max-width: 100%; }
  #selector-wrapper > canvas {
    position: relative;
    z-index: 5;
    max-width: 100%; }
    #selector-wrapper > canvas:hover {
      cursor: pointer; }

#selector-current-xpath {
  font-size: 80%; }

#webdriver-override-options input[type="number"] {
  width: 5em; }

#api-key:hover {
  cursor: pointer; }

#api-key-copy {
  color: #0078e7; }

/* spinner */
.loader,
.loader:after {
  border-radius: 50%;
  width: 10px;
  height: 10px; }

.loader {
  margin: 0px auto;
  font-size: 3px;
  vertical-align: middle;
  display: inline-block;
  text-indent: -9999em;
  border-top: 1.1em solid rgba(38, 104, 237, 0.2);
  border-right: 1.1em solid rgba(38, 104, 237, 0.2);
  border-bottom: 1.1em solid rgba(38, 104, 237, 0.2);
  border-left: 1.1em solid #2668ed;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-animation: load8 1.1s infinite linear;
  animation: load8 1.1s infinite linear; }

@-webkit-keyframes load8 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }

@keyframes load8 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }

.snapshot-age {
  padding: 4px;
  background-color: #dfdfdf;
  border-radius: 3px;
  font-weight: bold;
  margin-bottom: 4px; }
  .snapshot-age.error {
    background-color: #ff0000;
    color: #fff; }

#checkbox-operations {
  background: rgba(0, 0, 0, 0.05);
  padding: 1em;
  border-radius: 10px;
  margin-bottom: 1em;
  display: none; }

.checkbox-uuid > * {
  vertical-align: middle; }

.inline-warning {
  border: 1px solid #ff3300;
  padding: 0.5rem;
  border-radius: 5px;
  color: #ff3300; }
  .inline-warning > span {
    display: inline-block;
    vertical-align: middle; }
  .inline-warning img.inline-warning-icon {
    display: inline;
    height: 26px;
    vertical-align: middle; }
