.modal-container {
  margin: auto;
  width: 600px;
  background-color: white;
  -webkit-box-shadow: 0px 2px 3px rgba(51, 51, 51, 0.2);
  -moz-box-shadow: 0px 2px 3px rgba(51, 51, 51, 0.2);
  box-shadow: 0px 2px 3px rgba(51, 51, 51, 0.2);
  border: 1px solid #888;
  border-radius: 6px;
}
.save-user-account {
  margin-top: 120px;
  border-radius: 6px;
}
.publish-panel {
  margin-top: 60px;
  padding: 10px 30px;
}
.module-search {
  width: 700px;
  margin-top: 100px;
  font-size: 22px;
  color: #333;
}
.module-search .input-wrapper {
  padding: 0 16px;
  line-height: 46px;
}
.module-search input {
  margin-left: 8px;
  border: 0;
  outline: none;
  width: 540px;
  background: transparent;
  line-height: 46px;
  height: 46px;
}
.module-search:focus {
  outline: none;
}
.module-search input::-ms-clear {
  display: none;
}
.module-search .no-results {
  float: right;
  color: #ccc;
  margin-top: -38px;
  margin-right: 12px;
}
.module-search .results-section {
  border-top: 1px solid #888;
}
.module-search .selected-details {
  width: 418px;
  padding: 12px 18px;
  overflow: scroll;
  height: 420px;
  font-size: 14px;
}
.module-search .selected-details .header-details .name {
  font-size: 24px;
}
.module-search .selected-details .header-details .version {
  font-size: 24px;
  color: #aaa;
}
.module-search .selected-details .header-details .description {
  margin-top: 12px;
  padding-bottom: 16px;
  border-bottom: 1px solid #eee;
}
.module-search .no-selection {
  color: #ccc;
}
.module-search .readme {
  margin-top: 16px;
}
.module-search .readme img {
  max-width: 380px;
}
.module-search .result-list {
  border-right: 1px solid #ccc;
  overflow: scroll;
  height: 420px;
  width: 280px;
  float: left;
}
.module-search .result-list .module-result {
  padding: 6px 16px;
  font-size: 16px;
  cursor: pointer;
  position: relative;
}
.module-search .result-list .module-result:hover {
  background-color: #e1e1e1;
}
.module-search .result-list .module-result.selected {
  background-color: #115fc3;
  color: white;
}
.module-result .name {
  font-weight: bold;
  padding-right: 8px;
}
.module-result .version {
  color: #aaa;
  padding-right: 8px;
  font-size: 90%;
}
.module-result .require-button {
  position: absolute;
  right: 12px;
  top: 6px;
  background: rgba(255, 255, 255, 0.1);
  color: white;
}
.controls {
  border: 1px solid #e4e9ef;
  border-right: 0;
  border-top: 0;
  border-bottom-left-radius: 3pt;
  border-bottom-right-radius: 3pt;
  position: relative;
}
.controls a {
  color: #bbb;
  text-decoration: none;
}
.controls a:hover {
  color: #5e7ca1;
  text-decoration: none;
  background: #e4e9ef;
}
.controls.read-only #help {
  border-right: 1px solid #e4e9ef;
  border-bottom-right-radius: 3pt;
}
.embedded-notebook {
  width: calc(100% - 200px);
  margin: auto;
}
.embedded-notebook .cell-container {
  padding: 0;
  margin: 0;
  width: 100%;
}
.embedded-notebook .cell-content {
  width: 100%;
}
.embedded-notebook .object-description {
  margin: 0;
  width: 100%;
}
.embedded-notebook .source-editor,
.embedded-notebook .source-editor .prerender,
.embedded-notebook .source-editor .CodeMirror-scroll,
.embedded-notebook .source-editor .CodeMirror-lines {
  min-height: 100px;
}
.embedded-notebook .CodeMirror-lines {
  border-top-left-radius: 3pt;
  border-top-right-radius: 3pt;
}
#engine-selector {
  position: relative;
  display: inline-block;
  border-left: 1px solid #e4e9ef;
  padding: 0 0.5rem 0 1rem;
}
#engine-selector .engine {
  display: inline-block;
}
#engine-selector .selector {
  border: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  text-indent: 0;
  text-overflow: '';
  background: inherit;
  cursor: pointer;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
}
#byline {
  color: #bbb;
  overflow: hidden;
  display: block;
  float: left;
  height: 22pt;
  line-height: 22pt;
  padding: 0 5pt;
}
#byline:hover {
  color: #5e7ca1;
  background: #e4e9ef;
}
#byline:hover .logo {
  color: #5e7ca1;
}
#byline .description {
  overflow: hidden;
  white-space: nowrap;
  max-width: 100px;
  transition: max-width 0.75s ease-out;
}
#byline .animation {
  top: -22pt;
  position: relative;
  display: inline-block;
}
#byline .logo {
  font-weight: bold;
  float: right;
  display: inline-block;
  margin-left: 2pt;
  color: #888;
}
#byline.save {
  color: #326ba4;
  transition: color 0.5s ease-out;
}
#byline.save #slide-out {
  max-width: 0;
}
#byline.save .animation {
  top: 0;
  transition: top 0.25s ease-out;
}
#byline.save .logo {
  color: #326ba4;
}
.core-buttons {
  color: #bbb;
  padding: 0 0.25rem;
  float: right;
  border-left: 1pt solid #efefef;
}
.core-buttons a {
  color: #bbb;
  padding-top: 1pt;
  border: 1pt solid rgba(0, 0, 0, 0);
  text-align: center;
  border-radius: 2.5pt;
  width: 18pt;
  line-height: 17pt;
  display: inline-block;
}
.core-buttons a:hover {
  border-color: #e4e9ef;
  color: #888;
}
.version-animator .version {
  opacity: 0;
  max-width: 0;
  display: inline-block;
  overflow: hidden;
  vertical-align: top;
  -webkit-transition: 0.7s 0.7s max-width, 0.25s 0.7s opacity;
  -moz-transition: 0.7s 0.7s max-width, 0.25s 0.7s opacity;
  -o-transition: 0.7s 0.7s max-width, 0.25s 0.7s opacity;
  transition: 0.7s 0.7s max-width, 0.25s 0.7s opacity;
}
.version-animator:hover .version {
  opacity: 1;
  max-width: 100px;
  -webkit-transition: 0.7s 0s max-width, 0.25s 0s opacity;
  -moz-transition: 0.7s 0s max-width, 0.25s 0s opacity;
  -o-transition: 0.7s 0s max-width, 0.25s 0s opacity;
  transition: 0.7s 0s max-width, 0.25s 0s opacity;
}
@media (max-width: 438px) {
  #help {
    display: none;
  }
}
@media (max-width: 360px) {
  #engine-selector {
    display: none;
  }
}
/* Source Editor */
.cm-read-only .CodeMirror-cursor {
  visibility: hidden !important;
}
.source-editor,
.source-viewer {
  position: relative;
}
.source-editor textarea,
.source-viewer textarea {
  width: 0px;
  height: 0px;
  display: block;
  padding: 0;
  margin: 0;
  outline: 0;
  border: 0;
  resize: none;
}
.source-editor .gutter,
.source-viewer .gutter {
  width: 28px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
}
.source-editor .CodeMirror,
.source-viewer .CodeMirror {
  height: auto !important;
}
.source-viewer .CodeMirror-scroll {
  min-height: 1em;
  max-height: 300px;
}
.regexp-results textarea {
  width: 0px;
  height: 0px;
  display: block;
  padding: 0;
  margin: 0;
  outline: 0;
  border: 0;
  resize: none;
}
.regexp-results .CodeMirror {
  height: auto !important;
}
.regexp-results {
  min-height: 30px;
  display: block;
  width: 100%;
  padding: 3px 6px;
  font-size: 14px;
  line-height: 1.42857143;
  color: #888;
  background: #fff;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
.regex-highlight {
  background-color: rgba(21, 179, 0, 0.3);
}
.CodeMirror-placeholder {
  color: #aaa !important;
}
.remove-variable {
  width: 32px;
  fontSize: 115%;
  color: #eba0a0;
  background: transparent;
  border: 0;
}
.remove-variable:hover {
  color: #c80000;
}
.environment-page input {
  font-family: source-code-pro, monospace;
}
.site-navigation {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
}
.site-navigation hr {
  margin: 10px 16px;
  padding: 0;
}
.site-navigation .mobile-only {
  display: none;
}
.site-navigation .user-dropdown .r {
  width: 48px;
  height: 48px;
  background-color: white;
  font-size: 24px;
  font-weight: bold;
  padding-left: 16px;
  padding-top: 6px;
  margin: 16px 12px 8px 12px;
  border: 1px solid #d8d8d8;
  border-radius: 4px;
}
.site-navigation .user-dropdown .menu-wrapper {
  display: none;
  box-shadow: 0 2px 3px rgba(51, 51, 51, 0.2);
  background-color: white;
  margin: 16px 12px 8px 12px;
  border: 1px solid #bbbbbb;
  border-radius: 4px;
  position: absolute;
  top: 0;
  left: 0;
  padding-bottom: 16px;
}
.site-navigation .user-dropdown .menu-title {
  font-size: 24px;
  font-weight: bold;
  padding-top: 6px;
  padding-left: 16px;
  min-width: 200px;
}
.site-navigation .user-dropdown:hover .menu-wrapper {
  display: block;
}
.site-navigation .user-dropdown .menu-item {
  font-size: 15px;
  line-height: 24px;
  margin: 2px 8px;
  padding: 2px 9px;
}
.site-navigation .user-dropdown .menu-item:hover {
  background-color: #f5f5f5;
}
.site-navigation .user-dropdown .menu-item a {
  text-decoration: none;
  color: #333;
  width: 100%;
  display: inline-block;
}
.site-navigation .toolbar-button .circle-element {
  fill: rgba(64, 140, 250, 0.4);
}
.site-navigation .toolbar-button .icon-element {
  fill: rgba(64, 140, 250, 0.6);
}
.site-navigation .toolbar-button:hover .circle-element,
.site-navigation .toolbar-button:hover .icon-element {
  fill: #333;
}
.site-navigation .toolbar-button.dangerous:hover .circle-element,
.site-navigation .toolbar-button.dangerous:hover .icon-element {
  fill: #d86750;
}
.site-navigation .toolbar-button .r-svg {
  float: left;
}
.site-navigation .toolbar-button .r-tooltip {
  display: none;
  float: right;
  margin-left: 8px;
  background-color: #333;
  color: white;
  padding: 4px 6px 2px 6px;
  font-size: 16px;
  border-radius: 4px;
  box-shadow: 0 2px 3px rgba(51, 51, 51, 0.2);
  margin-top: 2px;
}
.site-navigation .toolbar-button:hover .r-tooltip {
  display: block;
}
.site-navigation .toolbar-button.dangerous .r-tooltip {
  background-color: #d86750;
}
#home-page .site-navigation,
.static-page .site-navigation,
.mobile .site-navigation {
  position: absolute;
}
.mobile .toolbar-button {
  display: none;
}
.mobile .site-navigation .mobile-only {
  display: block;
}
.mobile .site-navigation .toolbar-separator {
  display: none;
}
.mobile .site-navigation .user-dropdown:hover .menu-wrapper {
  display: none;
}
/*
.mobile .site-navigation .toolbar-button:hover .r-tooltip {
    display: none;
}

.mobile .site-navigation .toolbar-button:hover .circle-element,
.mobile .site-navigation .toolbar-button:hover .icon-element {
    fill: #d8d8d8;
}
*/
.endpoint-logs .overview {
  border-bottom: 1px solid #e1e1e1;
  font-size: 18px;
}
.endpoint-logs .overview button {
  background: transparent;
  border: 0;
  outline: none;
}
.endpoint-logs .status {
  float: right;
  font-weight: bold;
}
.endpoint-logs .method {
  font-weight: bold;
}
.endpoint-logs .url {
  padding: 0 8px;
}
.endpoint-logs .timestamp {
  color: #aaa;
  font-style: italic;
}
.endpoint-logs .duration {
  float: right;
  margin-right: 8px;
  font-size: 80%;
  line-height: 28px;
  color: #aaa;
}
.endpoint-logs h3 {
  font-size: 14px;
  font-weight: bold;
  margin: 1em;
  padding: 0;
}
.endpoint-logs .body {
  margin-left: 3em;
  white-space: pre-wrap;
}
.detail-wrapper {
  font-size: 14px;
}
.detail-wrapper ul {
  margin: 0 3em;
  padding: 0;
  display: table;
  border-collapse: collapse;
}
.detail-wrapper li {
  list-style-type: none;
  margin: 4px 0;
  border-bottom: 1px solid #f6f6f6;
  display: table-row;
}
.detail-wrapper .header-key {
  color: #999;
  display: table-cell;
  padding: 3px 0;
  width: 200px;
}
.detail-wrapper .header-value {
  display: table-cell;
}
.readme {
  margin: 0;
}
.readme .badge {
  display: inline;
  background: transparent;
  margin: 0;
  padding: 0;
  border-radius: 0px;
}
.readme h1 {
  margin: 0;
  padding: 20px 0 5px 0;
  text-align: left;
  line-height: 1.2;
  font-size: 24px;
}
.readme h2 {
  font-size: 20px;
}
.readme .package-name-redundant,
.readme .package-description-redundant {
  display: none;
}
.readme h1 a,
.readme h2 a,
.readme h3 a,
.readme h4 a,
.readme h5 a,
.readme h6 a {
  text-decoration: none;
}
.readme h2,
.readme h3,
.readme h4,
.readme h5,
.readme h6 {
  font-weight: bold;
  margin: 1.5em 0 0.5em 0;
}
.readme h3 {
  font-size: 18px;
  font-weight: normal;
}
.readme h4,
.readme h5,
.readme h6 {
  font-size: 16px;
}
.readme ol,
.readme ul {
  margin: 0 0 0 20px;
}
.readme img {
  max-width: 100%;
}
.readme pre {
  border: none;
}
.noreadme {
  margin-top: 16px;
  font-size: 18px;
  color: #aaa;
}
/* Top Level */
body {
  margin: 0px;
  padding: 0px;
  font-family: 'fira-sans', sans-serif;
}
.mobile-only {
  display: none !important;
}
.mobile .mobile-only {
  display: initial !important;
}
#react-container {
  padding: 0;
  margin: 0;
}
.page-sizer {
  min-width: 768px;
  max-width: 1100px;
  width: 85%;
  padding: 40px 100px 80px 100px;
  margin: auto;
}
.mobile .page-sizer {
  width: 100%;
}
/* search button */
.search-button {
  position: fixed;
  top: 16px;
  right: 16px;
  zIndex: 100;
}
.mobile .search-button {
  position: absolute;
}
.mobile .source-cell-wrapper .search-button {
  display: none;
}
/* help text */
.blank-doc-help {
  position: relative;
  background-color: #fafafa;
  border-radius: 4px;
  border: 1px solid #f3f3f3;
  margin-top: 50px;
  font-size: 13px;
}
.blank-doc-help li {
  list-style-type: circle;
  margin-top: 0.75em;
}
.blank-doc-help .close-icon {
  cursor: pointer;
  position: absolute;
  top: 12px;
  right: 12px;
  color: #ccc;
}
.blank-doc-help .close-icon:hover {
  color: #333;
}
/* Cells */
.cell-container {
  margin-top: 25px;
  padding: 0px;
  position: relative;
}
.cell-controls {
  position: absolute;
  right: 0;
  color: #ccc;
  opacity: 0;
  width: 50%;
  text-align: right;
}
.mobile-cell-controls {
  display: none;
  height: 22px;
  width: 30px;
}
.mobile .focused .cell-controls {
  opacity: 1;
}
.mobile .mobile-cell-controls {
  display: block;
}
.mobile-cell-controls button {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 30px;
  padding: 0;
  margin: 0;
  color: #8d8d8d;
  background-color: white;
  border: 1px solid #e0e2e5;
  font-size: 12px;
}
.mobile-cell-controls select {
  position: absolute;
  width: 30px;
  height: 22px;
  outline: none;
  border: none;
  opacity: 0;
}
.cell-controls .fa {
  padding: 2px 4px;
  margin: 0px 2px;
  cursor: pointer;
}
.cell-container:hover .cell-controls,
.cell-controls:hover {
  opacity: 1;
}
.run-bo {
  opacity: 0;
}
.run-container {
  left: initial;
  top: initial;
  display: block;
  opacity: 1;
  position: initial;
  margin-top: 4px;
  height: 10px;
}
.has-result .run-container {
  left: 101%;
  display: inline-block;
  opacity: 0;
  margin-top: 1px;
  position: absolute;
  min-width: 200px;
}
kbd {
  display: inline-block;
  margin: 0 .1em;
  padding: .1em .6em;
  font-size: 0.86em;
  color: inherit;
  line-height: 1.4;
  text-shadow: 0 1px 0 #FFF;
  font-family: inherit;
  background: #ffffff ;
  /* Old browsers */
  background: -moz-linear-gradient(top, #ffffff 0%, #f4f4f4 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, #ffffff 0%, #f4f4f4 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, #ffffff 0%, #f4f4f4 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff ', endColorstr='#f4f4f4 ', GradientType=0);
  /* IE6-9 */
  border: 1px solid #adb3b9;
  border-radius: 3px;
  box-shadow: 0 1px 0 rgba(12, 13, 14, 0.2), 0 0 0 2px #FFF inset;
}
.selected-visible-cell-container {
  opacity: 0;
}
.cell-container:hover .selected-visible-cell-container,
.focused .selected-visible-cell-container {
  opacity: 1;
}
.focused .run-container,
.cell-container:hover .run-container {
  opacity: 1;
}
.last-cell-visible {
  display: none;
}
.last-cell .last-cell-visible {
  display: inline;
}
.last-cell-invisible {
  display: inline;
}
.last-cell .last-cell-invisible {
  display: none;
}
.cell-controls .fa:hover {
  color: #333;
}
.runkit-icon {
  position: relative;
}
.runkit-icon:hover .icon-tooltip {
  display: block;
}
.runkit-icon .icon-tooltip {
  display: none;
  position: absolute;
  right: 0;
  width: 120px;
  bottom: -22px;
  z-index: 100;
  background-color: #333;
  color: white;
  padding: 4px 0;
  border-radius: 4px;
  text-align: center;
  font-weight: bold;
  font-size: 13px;
  box-shadow: 0px 2px 3px rgba(51, 51, 51, 0.2);
  /* This is unfortunate (it's because we are nesting the tooltip inside a font awesome tag) */
  font-family: 'fira-sans', sans-serif;
}
/* Rich Text Editor */
.rich-text-editor {
  font-size: 16px;
}
.rich-text-editor textarea,
.string-viewer textarea {
  width: 0px;
  height: 0px;
  display: block;
  padding: 0;
  margin: 0;
  outline: 0;
  border: 0;
  resize: none;
}
.rich-text-editor .prerender,
.string-viewer .prerender {
  width: 100%;
  padding: 4px;
  line-height: 1.5em;
  white-space: pre-wrap;
}
.rich-text-editor .CodeMirror,
.string-viewer .CodeMirror {
  height: auto;
  line-height: 1.5em;
  font-family: 'fira-sans', sans-serif;
}
.cm-read-only .cm-link {
  cursor: pointer;
}
.out-of-date {
  opacity: 0.5;
}
/* misc notebook rules*/
.notebook-end-clone-btn {
  color: #888;
  border: 1px solid #ccc;
}
.notebook-end-clone-btn:hover {
  color: #333;
  border: 1px solid #333;
}
/* globals */
table {
  width: 100%;
}
td {
  width: 1px;
}
a {
  color: #4183c4;
  text-decoration: none;
}
a:hover {
  text-decoration: underline;
}
p,
ul {
  margin: 15px 0;
}
ul {
  padding-left: 30px;
}
.flexBox {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: -moz-box;
  display: flex;
}
.text-hover-underline {
  text-decoration: none;
}
.text-hover-underline:hover {
  text-decoration: underline;
}
button:focus {
  outline: 0;
}
.c3 .c3-axis path,
.c3 .c3-axis line {
  stroke: #d2d2d2;
}
.c3-xgrid,
.c3-ygrid {
  stroke-dasharray: none;
}
.c3-grid line {
  stroke: #f3f3f3;
}
