/**
 * Reclass doc generator
 *
 * @author Jiri Hybek <jiri@hybek.cz>
 * @license Apache-2.0 (c) 2017 Jiri Hybek
 */
* {
  margin: 0px;
  padding: 0px; }

body {
  background: #ffffff;
  font-family: 'Open Sans', sans-serif;
  font-size: 15px;
  line-height: 1.0;
  color: #333333; }

a {
  color: #1E88E5;
  text-decoration: underline; }

a:hover {
  text-decoration: none; }

/**
 * Navigation
 */
#navigation {
  position: absolute;
  left: 0;
  top: 0;
  width: 340px;
  bottom: 0;
  background: #f3f3f3;
  display: flex;
  flex-direction: column; }
  #navigation h1 {
    padding: 28px 30px 10px 30px;
    font-weight: 300;
    display: flex;
    flex-shrink: 0;
    flex-direction: row;
    align-items: center;
    margin-bottom: 5px; }
    #navigation h1 img {
      max-height: 40px;
      margin-right: 12px; }
    #navigation h1 .title {
      display: block;
      padding: 10px 0px;
      flex-grow: 1; }
  #navigation .search {
    margin-bottom: 20px;
    padding: 0px 26px; }
  #navigation nav.menu {
    flex-grow: 1;
    padding: 0px 26px 26px 26px;
    overflow: auto; }
    #navigation nav.menu h2 {
      padding-top: 16px;
      padding-left: 4px;
      padding-right: 4px;
      margin-bottom: 12px;
      font-size: 16px; }
    #navigation nav.menu ul.nav-items {
      list-style: none;
      padding-left: 20px;
      margin-bottom: 5px; }
      #navigation nav.menu ul.nav-items li a {
        display: block;
        line-height: 16px;
        padding: 4px;
        font-size: 14px;
        text-decoration: none; }
        #navigation nav.menu ul.nav-items li a .mdi {
          display: inline-block;
          font-size: 16px;
          margin-right: 4px;
          vertical-align: top; }
        #navigation nav.menu ul.nav-items li a button {
          display: inline-block;
          background: transparent;
          border: 0px none;
          line-height: inherit;
          vertical-align: top; }
          #navigation nav.menu ul.nav-items li a button .mdi {
            display: none;
            font-size: 16px;
            line-height: 20px;
            vertical-align: top; }
        #navigation nav.menu ul.nav-items li a .label {
          display: inline-block;
          text-decoration: underline; }
      #navigation nav.menu ul.nav-items li a:hover .label {
        text-decoration: none; }
      #navigation nav.menu ul.nav-items li.current > a {
        color: #444444;
        text-decoration: none; }
        #navigation nav.menu ul.nav-items li.current > a .label {
          text-decoration: none;
          font-weight: 600; }
    #navigation nav.menu > ul.nav-items {
      margin-bottom: 10px;
      padding-left: 0px; }

#page {
  position: absolute;
  left: 340px;
  top: 0;
  right: 0;
  bottom: 0;
  overflow-x: hidden;
  overflow-y: auto; }
  #page article {
    padding: 0px 20px; }
    #page article > header {
      padding: 30px 20px 10px 20px; }
      #page article > header ul.crumbs {
        list-style: none;
        margin-bottom: 5px;
        padding-top: 10px; }
        #page article > header ul.crumbs li {
          display: inline-block; }
          #page article > header ul.crumbs li a {
            display: inline-block; }
          #page article > header ul.crumbs li .sep {
            color: #999999; }
    #page article > section {
      padding: 11px 20px;
      margin-bottom: 20px; }
      #page article > section h2, #page article > section h3 {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        align-items: center;
        line-height: 30px; }
        #page article > section h2 > span, #page article > section h3 > span {
          flex-grow: 1; }
        #page article > section h2 strong, #page article > section h3 strong {
          font-weight: 600; }
        #page article > section h2 > .mdi, #page article > section h3 > .mdi {
          font-size: 24px;
          margin-right: 5px; }
        #page article > section h2 > .controls, #page article > section h3 > .controls {
          font-weight: 400;
          font-size: 14px;
          display: flex;
          flex-direction: row;
          align-items: center;
          justify-content: flex-end;
          flex-grow: 1; }
          #page article > section h2 > .controls > *, #page article > section h3 > .controls > * {
            margin-left: 16px; }
          #page article > section h2 > .controls input[type="checkbox"], #page article > section h3 > .controls input[type="checkbox"] {
            margin-right: 6px; }
          #page article > section h2 > .controls .search-box:not(:focus), #page article > section h3 > .controls .search-box:not(:focus) {
            border-color: #cccccc; }
      #page article > section h2 {
        font-size: 26px;
        font-weight: 500;
        margin-bottom: 25px;
        padding: 12px 10px 0px 10px;
        margin-left: -10px;
        margin-right: -10px;
        border-bottom: 1px solid #dddddd; }
        #page article > section h2 > * {
          margin-bottom: 16px; }
      #page article > section h3 {
        font-size: 17px;
        font-weight: 600;
        margin-bottom: 16px;
        color: #444444; }
      #page article > section ul.class-list {
        list-style: none;
        margin-left: -6px;
        margin-right: -6px; }
        #page article > section ul.class-list li {
          line-height: 1.3;
          margin-bottom: 3px;
          padding: 6px 8px;
          background: #fafafa;
          border-radius: 3px; }
          #page article > section ul.class-list li > .item {
            display: block; }
          #page article > section ul.class-list li button {
            display: none;
            float: right;
            background: transparent;
            border: 0px none;
            font-size: 13px;
            line-height: 16px;
            color: #2196F3;
            cursor: pointer;
            text-decoration: underline; }
            #page article > section ul.class-list li button .mdi {
              display: inline-block;
              font-size: 16px;
              vertical-align: top; }
          #page article > section ul.class-list li button:hover {
            text-decoration: none; }
          #page article > section ul.class-list li > ul {
            padding-left: 25px;
            display: none; }
            #page article > section ul.class-list li > ul > li {
              background: transparent;
              padding: 5px 8px;
              margin-bottom: 0; }
        #page article > section ul.class-list li.show-details ul {
          display: block;
          padding-top: 8px; }
        #page article > section ul.class-list li:hover > .item button {
          display: inline-block; }
        #page article > section ul.class-list > li:nth-child(odd) {
          background: #f6f6f6; }
        #page article > section ul.class-list > li:last-child {
          margin-bottom: 0; }
    #page article > section.type-class > header {
      display: flex;
      flex-direction: row;
      flew-wrap: wrap;
      justify-content: space-between; }
      #page article > section.type-class > header > div {
        margin-bottom: 30px;
        width: 48%; }
    #page article > section.type-class > ul {
      margin-bottom: 40px; }
    #page article > section.type-class ul.prop-list {
      list-style: none;
      font-size: 13px;
      line-height: 16px; }
      #page article > section.type-class ul.prop-list > li {
        display: none; }
        #page article > section.type-class ul.prop-list > li .item {
          margin-bottom: 1px;
          overflow: hidden; }
          #page article > section.type-class ul.prop-list > li .item .comment {
            color: #666666;
            font-style: italic;
            padding: 10px 5px 0px 5px; }
            #page article > section.type-class ul.prop-list > li .item .comment .entry {
              margin-bottom: 8px;
              font-size: 13px;
              line-height: 1.3; }
          #page article > section.type-class ul.prop-list > li .item .comment:empty {
            display: none; }
          #page article > section.type-class ul.prop-list > li .item .label {
            padding: 4px 5px;
            font-family: monospace;
            font-size: 14px;
            line-height: 16px;
            cursor: pointer;
            display: flex;
            flex-direction: row;
            flex-wrap: no-wrap;
            align-items: baseline; }
            #page article > section.type-class ul.prop-list > li .item .label .name {
              color: #00796B;
              margin-right: 5px; }
            #page article > section.type-class ul.prop-list > li .item .label .value {
              overflow: auto;
              flex-grow: 1; }
            #page article > section.type-class ul.prop-list > li .item .label button.toggle {
              display: inline-block;
              opacity: 0.0;
              background: transparent;
              border: 0px none;
              font-size: 13px;
              line-height: 16px;
              color: #2196F3;
              cursor: pointer;
              text-decoration: underline; }
              #page article > section.type-class ul.prop-list > li .item .label button.toggle .mdi {
                display: inline-block;
                font-size: 16px;
                vertical-align: top; }
            #page article > section.type-class ul.prop-list > li .item .label button.toggle:hover {
              text-decoration: none; }
            #page article > section.type-class ul.prop-list > li .item .label button.collapse {
              display: inline-block;
              background: transparent;
              border: 0px none;
              line-height: 16px;
              color: #bbbbbb;
              cursor: pointer; }
              #page article > section.type-class ul.prop-list > li .item .label button.collapse .mdi {
                display: inline-block;
                font-size: 16px;
                vertical-align: top; }
              #page article > section.type-class ul.prop-list > li .item .label button.collapse .closed {
                display: none; }
            #page article > section.type-class ul.prop-list > li .item .label button.collapse:hover {
              color: #000000; }
          #page article > section.type-class ul.prop-list > li .item .details {
            display: none;
            padding: 5px 10px 15px 20px; }
            #page article > section.type-class ul.prop-list > li .item .details h4 {
              font-size: 12px;
              font-weight: 600;
              margin-bottom: 5px;
              padding-top: 15px; }
            #page article > section.type-class ul.prop-list > li .item .details .label {
              padding: 0; }
            #page article > section.type-class ul.prop-list > li .item .details ul.sources {
              list-style: none; }
              #page article > section.type-class ul.prop-list > li .item .details ul.sources li {
                display: flex;
                flex-direction: row;
                line-height: 16px;
                align-items: baseline;
                margin-bottom: 3px; }
                #page article > section.type-class ul.prop-list > li .item .details ul.sources li .merge-type {
                  display: inline-block;
                  width: 60px;
                  margin-right: 10px;
                  flex-shrink: 0; }
                #page article > section.type-class ul.prop-list > li .item .details ul.sources li .label {
                  display: inline-block;
                  flex-grow: 1; }
                #page article > section.type-class ul.prop-list > li .item .details ul.sources li .name {
                  display: inline-block;
                  min-width: 25%; }
                #page article > section.type-class ul.prop-list > li .item .details ul.sources li .source-link {
                  min-width: 80px; }
            #page article > section.type-class ul.prop-list > li .item .details ul.refs {
              list-style: none; }
        #page article > section.type-class ul.prop-list > li .item:hover {
          background: #f3f3f3; }
          #page article > section.type-class ul.prop-list > li .item:hover .label button.toggle {
            opacity: 1.0; }
        #page article > section.type-class ul.prop-list > li .item.show-details {
          background: #E3F2FD; }
          #page article > section.type-class ul.prop-list > li .item.show-details > .label {
            box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.15); }
          #page article > section.type-class ul.prop-list > li .item.show-details > .details {
            display: block; }
        #page article > section.type-class ul.prop-list > li .item.with-reference .label .value {
          color: #E65100; }
        #page article > section.type-class ul.prop-list > li > ul.prop-list {
          padding-left: 20px; }
      #page article > section.type-class ul.prop-list li:target > .item {
        background: #FFF59D; }
      #page article > section.type-class ul.prop-list li.collapsed .item > .label > button.collapse {
        color: #333333; }
        #page article > section.type-class ul.prop-list li.collapsed .item > .label > button.collapse .opened {
          display: none; }
        #page article > section.type-class ul.prop-list li.collapsed .item > .label > button.collapse .closed {
          display: inline-block; }
      #page article > section.type-class ul.prop-list li.collapsed > ul.prop-list {
        display: none; }
      #page article > section.type-class ul.prop-list li.own-prop {
        display: block; }
        #page article > section.type-class ul.prop-list li.own-prop > .item > .label > .name {
          color: #3F51B5; }
    #page article > section.type-class ul.prop-list.root > li > ul.prop-list {
      padding-left: 0; }
    #page article > section.type-class.inherited-props ul.prop-list > li:not(.own-prop) {
      display: block; }
    #page article > section.type-document .contents {
      margin-bottom: 30px; }
    #page article > section.type-document > .section-source-link {
      text-align: right; }
    #page article > section.type-source .contents pre {
      font-size: 14px; }
      #page article > section.type-source .contents pre .code-line {
        position: relative;
        padding: 2px 2px 2px 52px;
        min-height: 1em; }
        #page article > section.type-source .contents pre .code-line .code-line-nr {
          display: block;
          background: #eeeeee;
          position: absolute;
          left: 0;
          top: 0;
          bottom: 0;
          width: 36px;
          padding: 2px 5px; }
      #page article > section.type-source .contents pre .code-line:target {
        background: #FFF59D; }
        #page article > section.type-source .contents pre .code-line:target .code-line-nr {
          background: #FFF176; }
    #page article ul.errors {
      list-style: none; }
      #page article ul.errors li {
        padding: 10px 12px;
        margin-bottom: 10px;
        background: #FFE082;
        border-radius: 3px;
        color: #000000; }
        #page article ul.errors li .stack-trace {
          padding-top: 10px;
          font-size: 13px; }
    #page article .section-source-link a {
      color: #999999;
      font-size: 13px; }
    #page article > section:first-of-type h2 {
      padding-top: 4px; }
  #page article.overview {
    padding-top: 18px; }

i.mdi.error {
  display: inline-block;
  margin-left: 4px;
  color: #EF6C00; }

.search-active .search-item:not(.search-match) {
  display: none !important; }

.search-box {
  box-sizing: border-box;
  background: #ffffff;
  border: 1px solid #dddddd;
  line-height: 16px;
  font-size: 13px;
  padding: 6px 10px;
  border-radius: 14px;
  outline: 0;
  transition: border 0.3s;
  -webkit-transition: border 0.3s; }

.search-box.grow {
  width: 100%; }

.search-box:focus {
  border-color: #2196F3; }

/*
XCode style (c) Angel Garcia <angelgarcia.mail@gmail.com>
*/
.hljs {
  display: block;
  overflow-x: auto;
  padding: 0.5em;
  background: #fff;
  color: black; }

.hljs-comment,
.hljs-quote {
  color: #006a00; }

.hljs-keyword,
.hljs-selector-tag,
.hljs-literal {
  color: #aa0d91; }

.hljs-name {
  color: #008; }

.hljs-variable,
.hljs-template-variable {
  color: #660; }

.hljs-string {
  color: #c41a16; }

.hljs-regexp,
.hljs-link {
  color: #080; }

.hljs-title,
.hljs-tag,
.hljs-symbol,
.hljs-bullet,
.hljs-number,
.hljs-meta {
  color: #1c00cf; }

.hljs-section,
.hljs-class .hljs-title,
.hljs-type,
.hljs-attr,
.hljs-built_in,
.hljs-builtin-name,
.hljs-params {
  color: #5c2699; }

.hljs-attribute,
.hljs-subst {
  color: #000; }

.hljs-formula {
  background-color: #eee;
  font-style: italic; }

.hljs-addition {
  background-color: #baeeba; }

.hljs-deletion {
  background-color: #ffc8bd; }

.hljs-selector-id,
.hljs-selector-class {
  color: #9b703f; }

.hljs-doctag,
.hljs-strong {
  font-weight: bold; }

.hljs-emphasis {
  font-style: italic; }

/**
 * Reclass doc generator
 *
 * @author Jiri Hybek <jiri@hybek.cz>
 * @license Apache-2.0 (c) 2017 Jiri Hybek
 */
/*
 * CONTENT STYLES
 */
#page article > section .rtc {
  line-height: 1.7em;
  /*
	 * Tables 
	 */
  /*
	 * Lists
	 */
  /* PRE */
  /* IMAGES */
  /*
	* Messages
	*/
  /* INFO */
  /* WARN */
  /* ALERT */
  /* SUCCESS */ }
  #page article > section .rtc h1, #page article > section .rtc h2, #page article > section .rtc h3, #page article > section .rtc h4, #page article > section .rtc h5 {
    font-weight: 400;
    line-height: 1.1;
    color: #444444;
    margin-bottom: 20px;
    padding-top: 20px;
    border-bottom: 0px none; }
  #page article > section .rtc h1 {
    clear: both;
    font-weight: 600; }
  #page article > section .rtc h1 {
    font-size: 32px; }
  #page article > section .rtc h2 {
    font-size: 28px; }
  #page article > section .rtc h3 {
    font-size: 23px; }
  #page article > section .rtc h4 {
    font-size: 20px; }
  #page article > section .rtc h5 {
    font-size: 17px; }
  #page article > section .rtc h3, #page article > section .rtc h4, #page article > section .rtc h5 {
    border-bottom: 1px solid #dddddd;
    padding-bottom: 8px; }
  #page article > section .rtc > h1:first-child,
  #page article > section .rtc > h2:first-child {
    margin-top: 0;
    padding-top: 0px; }
  #page article > section .rtc p, #page article > section .rtc ol, #page article > section .rtc ul, #page article > section .rtc pre, #page article > section .rtc table {
    margin-bottom: 20px; }
  #page article > section .rtc *:last-child {
    margin-bottom: 0px; }
  #page article > section .rtc p > *:last-child {
    margin-bottom: 0px; }
  #page article > section .rtc table {
    border: 1px solid #dedede;
    border-collapse: collapse;
    width: 100%; }
  #page article > section .rtc table th,
  #page article > section .rtc table td {
    border: 1px solid #dedede;
    padding: 6px 10px; }
  #page article > section .rtc table th {
    background: #eeeeee;
    font-size: 13px;
    text-align: left; }
  #page article > section .rtc table tbody > tr:nth-child(odd) td {
    background: #ffffff; }
  #page article > section .rtc table tbody > tr:nth-child(even) td {
    background: #f8f8f8; }
  #page article > section .rtc ul, #page article > section .rtc ol {
    padding-left: 26px; }
  #page article > section .rtc ul li,
  #page article > section .rtc ol li {
    line-height: 1.5;
    margin-bottom: 8px; }
  #page article > section .rtc ul > li:last-child,
  #page article > section .rtc ol > li:last-child {
    margin-bottom: 0px; }
  #page article > section .rtc code {
    background: transparent;
    background: #f9f9f9;
    border: 1px solid #dddddd;
    padding: 2px 3px;
    border-radius: 2px; }
  #page article > section .rtc pre > code {
    display: block;
    font-size: 14px;
    line-height: 1.6;
    padding: 8px 12px; }
  #page article > section .rtc img {
    max-width: 100%;
    margin-bottom: 20px; }
  #page article > section .rtc .message {
    position: relative;
    padding: 14px 14px 14px 48px;
    border-left: 6px solid #999999;
    background: #f3f3f3;
    font-size: 14px; }
  #page article > section .rtc .message > *:last-child {
    margin-bottom: 0px; }
  #page article > section .rtc .message i.mdi {
    position: absolute;
    left: 14px;
    top: 14px;
    font-size: 24px; }
  #page article > section .rtc .message .title strong {
    font-weight: 300;
    font-size: 18px; }
  #page article > section .rtc .message .title {
    margin-bottom: 8px; }
  #page article > section .rtc .message.info {
    border-color: #1E88E5;
    background: #E3F2FD; }
  #page article > section .rtc .message.info i.mdi,
  #page article > section .rtc .message.info .title {
    color: #1E88E5; }
  #page article > section .rtc .message.warn {
    border-color: #FB8C00;
    background: #FFF3E0; }
  #page article > section .rtc .message.warn i.mdi,
  #page article > section .rtc .message.warn .title {
    color: #FB8C00; }
  #page article > section .rtc .message.alert {
    border-color: #E53935;
    background: #FFEBEE; }
  #page article > section .rtc .message.alert i.mdi,
  #page article > section .rtc .message.alert .title {
    color: #E53935; }
  #page article > section .rtc .message.success {
    border-color: #7CB342;
    background: #F1F8E9; }
  #page article > section .rtc .message.success i.mdi,
  #page article > section .rtc .message.success .title {
    color: #7CB342; }
