* {
  font-family: Tahoma, Arial, sans-serif;
  font-size: 1em;
}
body {
  margin: .906em;
  font-size: 75%;
}
/*! Common to light and dark for now */
body.gui {
  text-align: center;
  background: #111;
  margin: 0;
}
#header {
  width: 89.35em;
  height: 9.24em;
  background: #111;
  padding-top: .908em;
}
.infopage #header {
  height: 6.612em;
}
#logo {
  background: url(/images/logo.png) left center no-repeat;
  height: 4.076em;
  width: 454px;
  margin-bottom: .272em;
}
h1 {
  display: none;
}
#statusInfo {
  position: absolute;
  top: .908em;
  right: 0;
  width: 32.609em;
  text-align: right;
  color: #ccc;
}
#wrapper {
  position: relative;
  text-align: left;
  width: 89.464em;
  margin: 0 auto;
}
#menu {
  position: relative;
  width: 72.464em;
}
#menuSub {
  position: absolute;
  top: 2.265em;
  left: 0;
  width: 89.35em;
  padding-top: .362em;
  border-width: 0;
  border-style: none;
  border-radius: 4px 4px 0 0;
}
#menuMainList, #menuSubList {
  margin: 0;
  padding: 0;
}
#menuMainList li, #menuSubList li {
  display: inline;
  float: left;
  list-style-type: none;
}
#menuMainList li span, #menuSubList li span,
#menuMainList li a, #menuSubList li a {
  display: block;
  margin-left: .362em;
  border-radius: 4px 4px 0 0;
  border-style: solid solid none;
  border-width: 1px;
  text-decoration: none;
  padding: .453em .906em;
}
#menuMainList li span {
  font-weight: 700;
  padding-bottom: .626em;
  margin-top: 0;
}
#menuSubList li span {
  font-weight: 700;
  padding-bottom: .543em;
  margin-top: 2px;
}
#menuMainList li a, #menuSubList li a {
  margin-top: .09em;
}
#menuMainList li a {
  background: #333;
  color: #ccc;
  border-color: #555;
  font-weight: 700;
}
#menuSubList li a {
  font-weight: 700;
}
#menuMainList li a:hover, #menuSubList li a:hover {
  margin-top: 0;
  padding-bottom: .543em;
}
#menuMainList li a:hover,
#menuMainList li a:focus-visible {
  background: #666;
  color: #eee;
  border-color: #888;
  outline: 0;
}
#menuSubList li {
  margin-bottom: -2px;
}
li.current {
  margin-top: 2px;
}
#main, #helpContainer {
  position: relative;
  float: left;
}
#content {
  border-radius: 0 0 5px 5px;
  margin-bottom: 1em;
}
#main #contents {
  width: 65.536em;
  padding: .906em;
}
#main #contentsInfo {
  width: 87.471em;
  padding: .906em;
}
#main #contentsInfo div.col2l {
  float: left;
  width: 43em;
}
#main #contentsInfo div.col2r {
  float: right;
  width: 43em;
}
.syslog-padding {
  padding: .906em;
}
#help {
  width: 21em;
  padding: .906em 0;
}
#help dl {
  margin: 0;
  padding: 0;
}
#help dt.term {
  margin: 0 0 .362em 0;
  font-weight: 700;
}
#help dd.definition {
  padding-bottom: .908em;
  margin: 0 0 .908em 0;
}
#help a {
  display: block;
  position: absolute;
  top: 1.378em;
  right: .901em;
  text-align: right;
  text-decoration: none;
}
.info a {
  text-decoration: none;
}
.link, :link:hover, #help a:hover, #help a:focus-visible,
.info a:focus-visible {
  text-decoration: underline;
  outline: 0;
}
.link {
  cursor: pointer;
}
textarea {
  padding: 4px;
  font-size: 12px;
  line-height: 1.42857;
  border-radius: 4px;
  box-sizing: border-box;
  width: 100%;
  resize: vertical;
}
pre {
  font-size: 12px;
  font-family: monospace;
  overflow: auto;
  margin: 0 0 .5em 0;
  padding: 8px 4px;
  line-height: 1.42857;
  white-space: pre-wrap;
  border-radius: 4px;
}
table, .table {
  margin: 0 auto;
  width: 100%;
  border-spacing: 1px;
}
.table.raid {
  margin-top: .4em;
}
#logout {
  position: absolute;
  margin-top: -4px !important;
  right: .1rem;
  z-index: 1;
  cursor: pointer;
  background: none !important;
  border: 0 !important;
}
.logout {
  fill: var(--tx-c);
  transition: all 400ms ease-in-out;
  cursor: pointer;
  width: 20px;
  height: 20px;
}
.table.weekdays {
  margin-left: -1.3rem;
}
table#radio_table {
  border-spacing: .1666em;
  text-align: center;
}
table#radio_table tr td, .table_row_bg td {
  height: 18px;
}
table tr th {
  background-color: #777674;
  border: 1px solid #777674;
  color: #fff;
  border-radius: 3px;
  font-weight: 400;
  padding: .09em .543em;
  text-align: left;
  line-height: normal;
  vertical-align: bottom;
}
table tr th[sortdir] {
  cursor: pointer;
}
#active_clients_table,
#dhcp_leases_table {
  table-layout: fixed;
}
#active_clients_table td,
#dhcp_leases_table td {
  text-overflow: ellipsis;
  overflow: hidden;
}
table[summary='ports forwarding table'] .num[size='15'] {
  max-width: 100px;
}
table[summary='ports forwarding table'] .num[size='5'] {
  max-width: 50px;
}
table[summary='ports forwarding table'] input[size='10'] {
  max-width: 79px;
}
form, .button.margin-0 {
  margin: 0;
}
form[name='wds'] select {
  margin-right: .562em;
  margin-top: .1rem;
}
form[name='wds'] input[size='25'] {
  vertical-align: middle;
}
form[name='wireless'] select {
  min-width: 9.7rem;
}
form[name='wireless'] input[name*='ssid'] {
  min-width: 9.1rem;
}
select {
  padding: 4px;
  font-size: 12px;
  height: 1.6rem;
  min-width: 5.6rem;
  border-radius: 4px;
  vertical-align: middle;
}
select[name='time_zone'] {
  min-width: 15.3rem;
}
select[onchange*='blockedServices'] {
  margin-right: .362em;
  height: 1.7rem;
}
select[onchange*='ServiceTable'] {
  width: inherit;
  height: inherit;
}
select[name*='bonding'], select[name*='schedule_'],
select[name='f_id'], .num[name*='openvpncl_remoteport'],
.num[name='schedule_time'], .num[name='bonding_number'],
.num[name*='def_hwaddr_'] {
  vertical-align: unset;
}
h2 {
  background-color: #777674;
  color: #fff;
  padding: 4px 12px;
  line-height: 1.42857;
  letter-spacing: .123rem;
  margin: 0 0 .906em 0;
  border-radius: 4px;
}
hr {
  border: none;
  width: 100%;
  height: .09em;
}
fieldset {
  border-radius: 4px;
  padding: .725em;
  margin: 0;
}
fieldset legend {
  font-weight: 700;
  margin-left: -.362em;
  padding: 0 .272em;
  white-space: nowrap;
}
.setting {
  position: relative;
  margin-bottom: .453em;
  line-height: 1.993;
  width: 100%;
}
.setting input[type] {
  margin-left: 0;
}
.setting [summary='week days table'] input[type] {
  margin-left: .4rem;
}
.setting .label {
  float: left;
  width: 19.444em;
  /* temporary for polish extra long strings */
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.setting .default {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  width: 19em;
}
/* this applies to CPU Features label results and MAC Clone button */
.padding-left {
  padding-left: 14.6rem;
}

/* commands tab, output box label */
.pre_label {
  margin-bottom: .453em;
}
.warning {
  padding: .725em;
  text-align: center;
  border-radius: 4px;
}
.message {
  border-radius: 4px;
  max-width: 72.464em;
  margin: 2em auto;
  padding: 1.812em .906em .906em;
  font-weight: 700;
  text-align: center;
}
.message div input {
  padding: .362em 1.087em;
  margin: 0 .362em;
  margin-top: 1.449em;
  font-weight: 400;
}
.submitFooter {
  padding: 4px 12px;
  margin: 0;
  text-align: center;
  border-radius: 4px;
}
.stick {
  position: sticky;
  bottom: 0;
}
.nostick {
  position: unset;
}
.submitFooter .button {
  margin: .362em;
}
#floatKiller {
  clear: both;
  width: 1px;
  height: 1px;
  font-size: 1px;
}
.center {
  text-align: center;
}
.popup {
  padding: .906em;
}
.meter {
  border-radius: 3px;
  position: relative;
  float: right;
  margin-top: 1px;
  width: 14.49em;
  height: 1.268em;
  overflow: hidden;
}
.meter .bar {
  height: 1.268em;
  border-radius: 2px;
}
.meter .text {
  position: absolute;
  top: 0;
  width: 100%;
  height: 1.268em;
  text-align: center;
  line-height: 1.181;
}
td .meter {
  float: none;
  margin-top: 0;
  width: 99%;
}
.progressbar {
  visibility: visible;
  position: relative;
  overflow: hidden;
  border-radius: 4px;
  margin: 0 auto;
}
.progressbarblock {
  position: absolute;
}
/*! fix spacing between dd-wrt link above paypal and top*/
.center a[href] {
  line-height: 2.2;
  outline: 0;
}
input {
  padding: 4px;
  font-size: 12px;
  line-height: 1.42857;
  border-radius: 4px;
}
input.num {
  padding-left: 2px;
  padding-right: 2px;
  text-align: center;
  vertical-align: middle;
}
input[type='file'] {
  max-width: 400px;
  margin: -4px 0 4px;
}
#firmware input[type='file'] {
  margin: initial;
}
.button {
  padding: 0 1rem;
  margin: 0 .362em 0 0;
  height: 1.6rem;
  cursor: pointer;
}
::file-selector-button, ::-webkit-file-upload-button {
  height: 1.6rem;
  padding: 0 .4rem;
  border-radius: 4px;
  cursor: pointer;
}
:disabled, .off {
  cursor: default;
  opacity: .45;
}
.button[onclick*='bond_del'] {
  margin-top: -.3rem;
  margin-left: .325em;
}
.button[onclick*='add_peer'] {
  margin: 0 0 -8px;
}
.button[onclick*='gen_wg_key'],
.button[onclick*='gen_wg_psk'] {
  margin: 0 0 6px;
}
[type='image'][src*='paypal'] {
  margin-bottom: -1rem;
  margin-top: .2rem;
  padding: 0;
  border: 0;
}
.spaceradio {
  margin-right: .4em;
}
.three_column {
  width: 11.1rem;
  margin-left: 0;
  margin-right: 10px;
}
.three_column_last {
  margin-right: 0;
}
.four_column {
  width: 8rem;
  margin-left: 0;
  margin-right: 10px;
}
.four_column_last {
  margin-right: 0;
}
input.button[onclick*='delete'] {
  margin: -.1rem .5em 0 .362em;
}
input.button[onclick*='to_delete'] {
  margin: 0 .5em 0 .4rem;
}
input.button[onclick*='FilterSummary'] {
  margin-top: -.1rem;
}
/* submitfooter buttons */
.button.green_btn, .button.green_btn:disabled:hover {
  background: #166f2a;
  border-color: #1a6d2d;
  color: #fff;
}
.button.green_btn:hover {
  background: #199235;
  border-color: #199235;
  color: #fff;
}
.button.green_btn:focus, .button.green_btn:focus-visible {
  box-shadow: 0 0 5px 1px #35ee00;
  outline: 0;
}
.button.brown_btn, .button.brown_btn:disabled:hover {
  background: #6f4816;
  border-color: #755416;
  color: #fff;
}
.button.brown_btn:hover {
  background: #925d19;
  border-color: #925d19;
  color: #fff;
}
.button.brown_btn:focus, .button.brown_btn:focus-visible {
  box-shadow: 0 0 5px 1px #ff8400;
  outline: 0;
}
.button.red_btn, .button.red_btn:disabled:hover {
  background: #c00;
  border-color: #c00;
  color: #fff;
}
.button.red_btn:hover {
  background: #e00;
  border-color: #d00;
  color: #fff;
}
.button.red_btn:focus, .button.red_btn:focus-visible {
  box-shadow: 0 0 5px 1px #f00;
  outline: 0;
}
/*! colors below are common to light/dark */
/*! these colors conform to WCAG Standards */
.status_red {
  background: #f66;
  color: #000;
  padding: 2px;
  border-radius: 2px;
}
.status_green {
  background: #35ee00;
  color: #000;
  padding: 2px;
  border-radius: 2px;
}
.status_yellow {
  background: #eec900;
  color: #000;
  padding: 2px;
  border-radius: 2px;
}
.status_orange {
  background: #fea543;
  color: #000;
  padding: 2px;
  border-radius: 2px;
}
.value_error {
  border: 1px solid #f66;
}
.value_error:hover {
  border-color: #c00;
}
.value_error:focus {
  border-color: #c00;
  box-shadow: 0 0 10px 0 #c00;
}
div.bulle {
  position: absolute;
  visibility: hidden;
  width: auto;
  z-index: 2000;
}
table.bulle {
  width: auto;
  height: auto;
  margin: 0;
  padding: 0;
  text-align: justify;
}
td.bulle {
  width: auto;
  height: auto;
  padding: .09em;
  border: 0;
}
div.bulle, table.bulle, td.bulle {
  background-color: #eec900;
  color: #000;
}
#score {
  font-size: 85%;
  position: absolute;
  text-align: center;
  width: 100px;
  z-index: 10;
}
#score, #rating {
  font-weight: 700;
}
#scorebar {
  background-image: url(/images/gradient.svg);
  background-repeat: no-repeat;
  border-radius: 2px;
  position: absolute;
  width: 100px;
  z-index: 0;
}
#scorebarBorder {
  border-radius: 2px;
  height: 16px;
  margin-bottom: 2px;
  width: 100px;
}
#tablePwdCheck tr th {
  background-color: transparent;
  border: 0;
  text-align: right;
  vertical-align: middle;
}
.iplookup {
  overflow-x: hidden;
}
#ddns_status {
  display: block;
  max-height: 10rem;
  overflow-y: auto;
  margin-right: -.4rem;
  line-height: 1.6;
}