body {
  margin: 0;
  padding: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

code {
  font-family: source-code-pro, Menlo, Monaco, Consolas, "Courier New", monospace;
}

.fa-spin {
  animation: fa-spin 2s infinite linear;
}
@keyframes fa-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(359deg);
  }
}

table.table-unbordered tr {
	border: 0 !important;
}
table.table-unbordered td {
	border: 0 !important;
}
table.table-unbordered th {
	border: 0 !important;
}

img.zt-whole-tab-spinner {
	width: 25%;
	padding: 5rem 0 0 0;
}

div.zt-ipv6-rfc4193-template {
	font-family: 'Andale Mono','Lucida Console','Courier New',fixed !important;
	font-size: 9pt;
	padding: 0 0 0 20px;
	letter-spacing: 1px;
}
div.zt-ipv6-rfc4193-template span {
	font-family: 'Andale Mono','Lucida Console','Courier New',fixed !important;
	font-size: 9pt;
	letter-spacing: 1px;
}
span.zt-ipv6-rfc4193-template-hl {
	letter-spacing: 1px;
	font-family: 'Andale Mono','Lucida Console','Courier New',fixed !important;
	font-size: 9pt;
	background: #ffffcc !important;
}
span.zt-ipv6-rfc4193-template-hl2 {
	letter-spacing: 1px;
	font-family: 'Andale Mono','Lucida Console','Courier New',fixed !important;
	font-size: 9pt;
	background: #ccffff !important;
}

.CodeMirror {
	font-family: 'Andale Mono','Lucida Console','Courier New',fixed !important;
	font-size: 10pt !important;
	border: none !important;
  height: 24rem !important;
	width: 100% !important;
	margin: 0 !important;
}
.zt-rules-editor-inner {
	position: relative;
	height: inherit !important;
}
.zt-rules-editor-codemirror-container {
	width: 100%;
}

.zt-member-saving {
	background: #ffffcc;
}
.zt-member-col-auth-yes {
	border-left: 2px solid #00aa00;
	text-align: center;
}
.zt-member-col-auth-no {
	border-left: 2px dashed #aa0000;
	text-align: center;
}
.zt-member-col-advanced {
	-webkit-font-smoothing: antialiased;
	text-align: center;
	width: 2.5ch;
}
.zt-member-col-advanced a {
	text-decoration: none;
}
.zt-member-col-advanced-sel {
	-webkit-font-smoothing: antialiased;
	text-align: center;
	background: #ddddf9;
	width: 2.5ch;
}
.zt-member-col-advanced-sel a {
	text-decoration: none;
}
.zt-member-col-advanced-exp {
	border-top: 0 !important;
	background: #ddddf9;
	padding-left: 12px !important;
	padding-right: 12px !important;
}
.zt-member-col-id {
	font-family: 'Andale Mono','Lucida Console','Courier New',fixed !important;
	font-size: 12pt;
	padding: 0;
	margin: 0;
	background: #ddffff;
	vertical-align: middle;
	text-align: center;
	width: 12ch !important;
	max-width: 12ch !important;
	min-width: 12ch !important;
}
.zt-matrix-col-id {
	font-family: 'Andale Mono','Lucida Console','Courier New',fixed !important;
	vertical-align: middle;
	font-size: 12pt;
	text-align: center;
}
.zt-table-cell-truncate span {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: inline-block;
  max-width: 100%;
}
.zt-member-col-mac {
	font-family: 'Andale Mono','Lucida Console','Courier New',fixed !important;
	font-size: 7pt;
}
.zt-member-col-name {
	width: 100%;
}
.zt-member-name-input {
	font-size: 11pt;
	padding: 0 0.25rem 0 0.25rem;
	background: transparent;
	border: 1px solid #eeeeee;
	margin: 2px 0 2px 0;
	width: 100%;
}
.zt-member-name-input:disabled {
    cursor: not-allowed;
    background-color: #e6e6e6;
}

.zt-member-version-old {
	color: #bb0000;
	font-weight: bold;
}
.zt-member-ip-container {
	white-space: nowrap;
	overflow: hidden;
}
.zt-member-action-icon {
  margin-left: 8px;
}
.zt-member-col-delete-exp {
	border-top: 0 !important;
	padding-left: 12px !important;
	padding-right: 12px !important;
}

.zt-member-add-input {
	width: 16ch;
	font-family: 'Andale Mono','Lucida Console','Courier New',fixed !important;
	font-size: 12pt;
	display: inline-block;
}
.zt-member-offline-notify-select {
	padding: 0.1rem;
	margin: 0;
	font-size: 11pt;
}
.zt-member-confirm-delete {
	background: #aa0000;
	color: #ffffff;
}
.zt-member-confirm-delete a {
	background: #aa0000;
	color: #ffffff;
}
.zt-member-tag {
	margin: 1rem 0 0 0;
}
.zt-member-tag-name-active {
	font-weight: bold;
	padding: 0 0 0.2rem 0;
	color: #009900;
}
.zt-member-tag-name-unset {
	font-weight: bold;
	padding: 0 0 0.2rem 0;
	color: #bb0000;
}
.zt-member-tag-value {
	margin: 0 !important;
}
.zt-member-tag-value select {
	width: 64% !important;
	padding: 0 !important;
	margin: 0 1% 0 0 !important;
}
.zt-member-tag-value input {
	width: 35% !important;
	margin: 0 !important;
	padding: 0 !important;
}
.zt-member-tag-flags span {
	padding: 0;
	margin: 0 0.5rem 0 0;
	white-space: nowrap;
}
.zt-member-tag-flags input {
	padding: 0;
	margin: 0;
}

.zt-api-access-token-list {
	background: #eeeeee;
	padding: 0.5rem;
	margin-bottom: 0.2rem;
}
.zt-user-subscription {
	background: #eeeeee;
	padding: 0.5rem;
}
.zt-user-subscription-item {
	display: table;
}
.zt-user-subscription-sel {
	margin: 0;
	padding: 0.6rem 1rem 0 0.5rem;
	vertical-align: top;
	display: table-cell;
}
.zt-user-subscription-sel input {
	padding: 0;
	margin: 0;
}
.zt-user-subscription-pitch {
	margin: 0;
	padding: 0.5rem 0 0.5rem 0;
	width: 100%;
	display: table-cell;
}
.zt-user-subscription-pitch h4 {
	padding: 0;
	margin: 0 0 0.25rem 0;
	font-weight: bold;
	font-size: 16pt;
	display: inline-block;
}
.zt-payment-card-icon {
	display: inline-block;
	width: 3rem;
	height: 1.75rem;
}

.zt-system-member-map {
	width: 100%;
	height: 100vh;
}

.zt-community-iframe {
	position: absolute;
	top: 0;
	left: 0;
	border-top: 50px solid transparent;
	border-bottom: 0;
	border-left: 0;
	border-right: 0;
	padding: 0;
	margin :0;
	height: 100%;
	width: 100%;
}

.zt-api-iframe {
	position: absolute;
	top: 0;
	left: 0;
	border-top: 50px solid transparent;
	border-bottom: 0;
	border-left: 0;
	border-right: 0;
	padding: 0;
	margin :0;
	height: 100%;
	width: 100%;
}

.line-through {
    text-decoration: line-through;
}

.tab-list {
	border-bottom: 1px solid #ccc;
	padding-left: 0;
}

.tab-list-item {
	display: inline-block;
	list-style: none;
	margin-bottom: -1px;
	padding: 0.5rem 0.75rem;
	cursor: pointer;
}

.tab-list-active {
	background-color: white;
	border: solid #ccc;
	border-width: 1px 1px 0 1px;
}

.pointer:hover {
  cursor: pointer;
}

.not-allowed:hover {
  cursor: not-allowed;
}

.none-child .child {
  display: none;
  opacity: 0;
  transition: opacity .15s ease-in;
}

.none-child:hover .child,
.none-child:focus .child,
.none-child:active .child
{
  display: inherit;
  opacity: 1;
  transition: opacity .15s ease-in;
}

.arrow_box {
	position: relative;
}

.arrow_box:after, .arrow_box:before {
	top: 100%;
	left: 80%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
}
.arrow_box:after {
	border-top-color: inherit;
	border-width: 0.5rem;
}
.arrow_box:before {
	border-width: 0.5rem;
}

.left--3 {
  left: -3rem;
}

.w-320 {
  width: 20rem;
}

.h6 {
  height: 24rem;
}

.h7 {
  height: 32rem;
}

.delay-25 {
  visibility: hidden;
  animation: 0.25s appear;
  animation-fill-mode: forwards;
}

@keyframes appear {
  99% {
    visibility: hidden;
  }
  100% {
    visibility: visible;
  }
}

.fade-in-250 {
    animation: fadeIn ease 0.250s;
    -webkit-animation: fadeIn ease 0.250s;
    -moz-animation: fadeIn ease 0.250s;
    -o-animation: fadeIn ease 0.250s;
    -ms-animation: fadeIn ease 0.250s;

}
.fade-in-1000 {
    animation: fadeIn ease 1s;
    -webkit-animation: fadeIn ease 1s;
    -moz-animation: fadeIn ease 1s;
    -o-animation: fadeIn ease 1s;
    -ms-animation: fadeIn ease 1s;

}

.fade-in-2000 {
    animation: fadeIn ease 2s;
    -webkit-animation: fadeIn ease 2s;
    -moz-animation: fadeIn ease 2s;
    -o-animation: fadeIn ease 2s;
    -ms-animation: fadeIn ease 2s;

}

@keyframes fadeIn {
    0% {
        opacity:0;
    }
    100% {
        opacity:1;
    }
}
.collapse2 {
    border-collapse: collapse;
    border-spacing: 0;
}

.border-spacing-1 {
    border-spacing: 0rem 0.25rem;
}

.zt-member-table thead td {
    padding: 0.25rem 0.5rem ;

}
.zt-member-table tbody td {
    padding: 0.5rem 0.5rem ;
}

.code2 {
    font-family: Consolas,
                 monaco,
                 monospace;
}

.zt-orange {
	color: rgb(255, 179, 84);
}

.bg-zt-orange {
	background-color: rgb(255, 179, 84);
}

.b--zt-orange {
	border-color: rgb(255, 179, 84);
}
/* .b--zt-orange { */
/* 	border-color: rgb(255, 179, 84) */
/* } */

.focus-b--zt-orange:focus {
	border-style: solid;
	border-width: 0.125rem;
	border-color: rgb(255, 179, 84);
}

/* tachyons and cosmo "hn" classes conflict */
.ht1 { height: 1rem; }
.ht2 { height: 2rem; }
.ht3 { height: 4rem; }
.ht4 { height: 8rem; }
.ht5 { height: 16rem; }
.lh2 { line-height: 2; }


@keyframes wiggle {
    0% { transform: rotate(0deg); }
   80% { transform: rotate(0deg); }
   85% { transform: rotate(5deg); }
   95% { transform: rotate(-5deg); }
  100% { transform: rotate(0deg); }
}

.wiggle {
  display: inline-block;
  animation: wiggle 2.5s infinite;
}

.wiggle:hover {
  animation: none;
}

.flex-basis-0 {
	flex-basis: 0;
	flex-grow: 1;
}

.darken:hover {
	background-color: rgba(0,0,0,0.25) !important;
}

.mh-100vh {
	min-height: 100vh;
}

.minh-20vh {
	min-height: 20vh;
}

.maxh-80vh {
	max-height: 80vh;
}

.w-100vw {
	width: 100vw;
}

/* for beamer */
.defaultSelectorContainer {
	width: 100%;
	margin-top: 30px;
	text-align: center;
}

.defaultSelectorAppearence {
	width: 55px;
	height: 55px;
	background-color: rgb(245, 166, 35);
	background-image: url(/img/bell-full.svg);
	border-radius: 50%;
	color: #fff;
	padding-left: 16px;
	padding-top: 16px;
	-webkit-box-shadow: 0 2px 5px 0 rgba(0,0,0,.26);
	box-shadow: 0 2px 5px 0 rgba(0,0,0,.26);
	-webkit-transition: all .3s cubic-bezier(.25,.8,.25,1);
	-o-transition: all .3s cubic-bezier(.25,.8,.25,1);
	transition: all .3s cubic-bezier(.25,.8,.25,1);
	background-repeat: no-repeat;
	background-position: 50% 49%;
	display: inline-block;
	position: relative;
}

.beamerIconAppearence {
	-webkit-font-smoothing: antialiased;
	display: inline-block;
	border-radius: 50%;
	width: 18px;
	height: 18px;
	background-color: #ff3e43;
	position: absolute;
	right: 0;
	top: 0;
	color: #fff;
	font-size: 11px;
	font-family: arial;
	text-align: center;
	line-height: 18px;
	font-weight: 700;
	opacity: 1;
	-webkit-animation: bounce 1.5s linear infinite;
	animation: bounce 1.5s linear infinite;
}

.zt-audit-table > tbody > tr > td {
	padding: 0.5rem 0.5rem
}

/*
"Lobotomized Owl"
Puts space between children. For flexbox
*/

.hspace1 > * + * { margin-left: 0.25rem; }
.hspace2 > * + * { margin-left: 0.5rem; }
.hspace3 > * + * { margin-left: 1rem; }
.hspace4 > * + * { margin-left: 2rem; }
		 >
.vspace1 > * + * { margin-top: 0.25rem; }
.vspace2 > * + * { margin-top: 0.5rem; }
.vspace3 > * + * { margin-top: 1rem; }
.vspace4 > * + * { margin-top: 2rem; }

.hgap1 { column-gap: 0.25rem; }
.hgap2 { column-gap: 0.5rem; }
.hgap3 { column-gap: 1rem; }
.hgap4 { column-gap: 2rem; }
.hgap5 { column-gap: 4rem; }

.vgap1 { row-gap: 0.25rem; }
.vgap2 { row-gap: 0.5rem; }
.vgap3 { row-gap: 1rem; }
.vgap4 { row-gap: 2rem; }
.vgap5 { row-gap: 4rem; }
