#gerrit_topmenu {
  font-size: 9pt;
  padding-top: 5px;
  padding-left: 5px;
  padding-right: 5px;
  height: 15px;
}
#gerrit_endtopmenu {
  clear: both;
  height: 5px;
  border-bottom: 1px solid #B0BDCC;
}
#gerrit_body {
  font-size: 11pt;
  padding-left: 5px;
  padding-right: 5px;
  width: 98%;
}
#gerrit_pagefooter {
  clear: both;
  margin-top: 15px;
  padding-top: 2px;
  margin-bottom: 15px;
}
#gerrit_btmmenu {
 clear: both;
}
#gerrit_btmmenu .gerrit-version {
  color: #a0adcc;
  right: 0;
  padding-right: 10px;
  text-align: right;
}
#gerrit_btmmenu .gerrit-version a,
#gerrit_btmmenu .gerrit-version a:visited,
#gerrit_btmmenu .gerrit-version a:hover {
  color: #2a5db0;
}


/** Widgets **/
.gerrit-Hyperlink {
  text-decoration: underline;
}

.gerrit-AccountName {
  white-space: nowrap;
}

.gerrit-visualtab {
  color: red;
  font-weight: bold;
  font-size: 8pt;
}

.gerrit-whitespaceerror {
  background: red;
}

.gerrit-InputFieldTypeHint {
  color: grey;
}

.gerrit-SmallHeading {
  margin-top: 5px;
  font-weight: bold;
}


/** Menu **/
.gwt-MenuItem a,
.gwt-MenuItem a:visited,
.gwt-MenuItem a:hover {
  color: #2a5db0;
}
.gerrit-LinkMenuBar .gwt-MenuItem {
  font-size: 9pt;
  color: #2a5db0;
  text-decoration: underline;
  padding-left: 5px;
  padding-right: 5px;
  white-space: nowrap;
  cursor: pointer;
  cursor: hand;
}
.gerrit-LinkMenuBar .gwt-MenuItem-NormalItem {
  border-right: 1px solid black;
}
.gerrit-LinkMenuBar .gwt-MenuItem-LastItem {
}
.gerrit-FillMenuCenter {
  width: 100%;
}
.gwt-MenuItem .gwt-Hyperlink {
  font-size: 9pt;
  white-space: nowrap;
}
.gerrit-MenuBarUserName {
  font-size: 9pt;
  font-weight: bold;
  padding-left: 5px;
  padding-right: 5px;
  white-space: nowrap;
}

/** RPC Status **/
.gerrit-RpcStatusPanel {
  position: absolute;
  left: 50%;
  float: left;
  top: 6px;
}

.gerrit-RpcStatus {
  padding-top: 4px;
  padding-bottom: 4px;
  padding-left: 10px;
  padding-right: 10px;
  text-align: center;
  font-weight: bold;
}

.gerrit-RpcStatus-Loading {
  background: #FFF1A8;
}


/** Error Dialog **/
.gerrit-ErrorDialog {
  margin: 10px 10px 10px 10px;
}

.gerrit-ErrorDialog-ErrorType {
  font-weight: bold;
  white-space: nowrap;
  margin-bottom: 15px;
}

.gerrit-ErrorDialog-ErrorMessage {
}

.gerrit-ErrorDialog-Buttons {
  width: 100%;
  margin-top: 15px;
  text-align: right;
}


/** Screen **/
.gerrit-Screen {
}

.gerrit-Screen h1 {
  white-space: nowrap;
  font-size: 16pt;
  margin: 3px 0 8px;
  text-overflow: ellipsis;
  overflow: hidden;
}


/** ChangeTable **/
.gerrit-ChangeTable {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
}

.gerrit-ChangeTable .IconCell {
  width: 1px;
  padding: 0px;
  vertical-align: middle;
  border-bottom: 1px solid #d4e9a9;
}

.gerrit-ChangeTable .ChangeTypeCell {
  width: 1px;
  padding-left: 5px;
  padding-right: 5px;
  border-right: 1px solid #d4e9a9;
  border-bottom: 1px solid #d4e9a9;
  vertical-align: top;
}

.gerrit-ChangeTable .CommentCell {
  text-align: right;
  font-weight: bold;
  white-space: nowrap;
}
.gerrit-ChangeTable .CommentCell span.Drafts {
  color: #ff5555;
}

.gerrit-ChangeTable .FilePathCell {
  white-space: nowrap;
}

.gerrit-ChangeTable .FilePathCell .SourceFilePath {
  font-style: italic;
  font-size: 9pt;
}

.gerrit-ChangeTable .DiffLinkCell {
  white-space: nowrap;
}

.gerrit-ChangeTable .LeftMostCell {
  border-left: 1px solid #d4e9a9;
}

.gerrit-ChangeTable .DataCell {
  padding-left: 5px;
  padding-right: 5px;
  border-right: 1px solid #d4e9a9;
  border-bottom: 1px solid #d4e9a9;
}

.gerrit-ChangeTable .ActiveRow {
  background: #ffffcc;
}

.gerrit-ChangeTable .C_ID {
  width: 3.5em;
  text-align: right;
}

.gerrit-ChangeTable .C_SUBJECT div {
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}

.gerrit-ChangeTable .C_PROJECT {
  white-space: nowrap;
}

.gerrit-ChangeTable .C_LAST_UPDATE {
  white-space: nowrap;
}

.gerrit-ChangeTable .IconHeader {
  border-top: 1px solid white;
  border-bottom: 1px solid white;
  background-color: #d4e9a9;
}

.gerrit-ChangeTable .DataHeader {
  border: 1px solid white;
  padding: 2px 6px 1px;
  background-color: #d4e9a9;
  font-style: italic;
  white-space: nowrap;
}

.gerrit-ChangeTable .SectionHeader {
  border-top: 8px solid white;
  padding: 2px 6px 1px;
  background-color: #d4e9a9;
  white-space: nowrap;
  font-weight: bold;
}

.gerrit-ChangeTable .EmptySection {
  border-left: 1px solid #d4e9a9;
  border-right: 1px solid #d4e9a9;
  border-bottom: 1px solid #d4e9a9;
  font-style: italic;
  padding-left: 25px;
}

.gerrit-ChangeTable-PrevNextLinks {
  float: right;
  padding-right: 5px;
}
.gerrit-ChangeTable-PrevNextLinks td {
  width: 5em;
  text-align: right;
}
.gerrit-ChangeTable-PrevNextLinks .gwt-Hyperlink {
  font-size: 9pt;
  color: #2a5db0;
}


/** PatchContentTable **/
.gerrit-PatchContentTable {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
}
.gerrit-PatchContentTable td {  
  font-size: 8pt;
  font-family: monospace;
}

.gerrit-PatchContentTable .IconCell {
  width: 1px;
  padding: 0px;
  vertical-align: middle;
  border-top: 1px solid transparent;
  border-bottom: 1px solid transparent;
}

.gerrit-PatchContentTable .DiffText {
  white-space: pre;
  padding-left: 0.2em;
}

.gerrit-PatchContentTable .DiffText-FILE_HEADER {
  color: grey;
  font-weight: bold;
}
.gerrit-PatchContentTable .DiffText-HUNK_HEADER {
  color: blue;
}
.gerrit-PatchContentTable .DiffText-PRE_IMAGE {
  color: #a00000;
}
.gerrit-PatchContentTable .DiffText-CONTEXT {
  color: grey;
}
.gerrit-PatchContentTable .DiffText-POST_IMAGE {
  color: #006000;
}

.gerrit-PatchContentTable .Comment {
  padding: 0px;
}
.gerrit-PatchContentTable .Comment table {
  border-collapse: separate;
  border-spacing: 0;
}
.gerrit-PatchContentTable .Comment td {
  font-family: Arial Unicode MS,Arial,sans-serif;
  font-size: 8pt;
}
.gerrit-PatchContentTable td.Comment {
  vertical-align: top;
  border-left: 5px solid orange;
}
.gerrit-PatchContentTable .gwt-DisclosurePanel {
  background: #fef8cb;
  padding-right: 5px;
}
.gerrit-PatchContentTable .Comment .header {
  width: 35em;
}
.gerrit-PatchContentTable .Comment .gwt-DisclosurePanel .header td {
  white-space: nowrap;
}
.gerrit-PatchContentTable .Comment .complexHeader {
  white-space: nowrap;
  width: 5em;
}
.gerrit-PatchContentTable .Comment .content {
  border-top: 3px solid #e3e3e3;
}

.gerrit-PatchContentTable .FileColumnHeader {
  background: #d4e9a9;
  font-family: Arial Unicode MS,Arial,sans-serif;
  font-weight: bold;
  text-align: center;
}

.gerrit-PatchContentTable .LineNumber {
  padding-left: 0.2em;
  white-space: pre;
  width: 3.5em;
  text-align: right;
  border-right: thin solid #b0bdcc;
  padding-right: 0.2em;
  border-top: 1px solid transparent;
  border-bottom: 1px solid transparent;
}

.gerrit-PatchContentTable .NoLineLineNumber {
  font-family: monospace;
  width: 3.5em;
  padding-left: 0.2em;
  padding-right: 0.2em;
}

.gerrit-PatchContentTable .FileLine {
  padding-left: 0.2em;
  white-space: pre;
  padding-right: 0.2em;
  border-top: 1px solid transparent;
  border-bottom: 1px solid transparent;
}

.gerrit-PatchContentTable .FileLineNone {
  background: #eeeeee;
}
.gerrit-PatchContentTable .FileLine-DELETE {
  background: #ffeeee;
}
.gerrit-PatchContentTable .FileLine-EQUAL {
}
.gerrit-PatchContentTable .FileLine-INSERT {
  background: #ddffdd;
}

.gerrit-PatchContentTable .SkipLine {
  font-family: Arial Unicode MS,Arial,sans-serif;
  text-align: center;
  font-style: italic;
  background: lightblue;
}
.gerrit-PatchContentTable .SkipLine div {
  display: inline;
}

.gerrit-PatchContentTable .ActiveRow {
  background: #ffffcc;
}
.gerrit-PatchContentTable .ActiveRow td.IconCell,
.gerrit-PatchContentTable .ActiveRow td.LineNumber,
.gerrit-PatchContentTable .ActiveRow td.FileLine,
.gerrit-PatchContentTable .ActiveRow td.DiffText {
  border-top: 1px solid blue;
  border-bottom: 1px solid blue;
}


/** Change **/
.gerrit-ChangeScreen .gwt-DisclosurePanel .header td {
  font-weight: bold;
  white-space: nowrap;
}

.gerrit-ChangeScreen .gwt-DisclosurePanel .complexHeader {
  white-space: nowrap;
}

.gerrit-ChangeScreen .gwt-DisclosurePanel .complexHeader .gerrit-PatchSetLink {
  padding-left: 20px;
  font-size: 8pt;
}

.gerrit-ChangeScreen .gwt-DisclosurePanel .content {
  margin-bottom: 10px;
}

.gerrit-ChangeScreen-Description {
  white-space: pre;
  font-family: monospace;
  font-size: small;
}

.gerrit-ChangeScreen .gerrit-ChangeMessages .header {
  width: 35em;
}
.gerrit-ChangeScreen .gerrit-ChangeMessages .complexHeader {
  width: 5em;
}
.gerrit-ChangeScreen .gerrit-ChangeMessages .content {
  border-top: 3px solid #e3e3e3;
}

.gerrit-ChangeMessage-Message {
  font-size: small;
}

.gerrit-InfoTable {
  border-collapse: collapse;
  border-spacing: 0;
}

.gerrit-InfoTable td {
  border-left: 1px solid #d4e9a9;
  border-bottom: 1px solid #d4e9a9;
  padding: 2px 6px 1px;
}

.gerrit-InfoTable td.header {
  background-color: #d4e9a9;
  border-left: 1px solid white;
  font-weight: normal;
  padding: 2px 4px 0 6px;
  font-style: italic;
  text-align: left;
  vertical-align: top;
  white-space: nowrap;
}

.gerrit-InfoTable td.leftmost  {
}

.gerrit-InfoTable td.rightmost  {
  border-right: 1px solid #d4e9a9;
}

.gerrit-InfoTable td.approvalrole {
  width: 5em;
  border-left: none;
  font-style: italic;
  white-space: nowrap;
}

.gerrit-InfoTable td.approvalscore {
  text-align: center;
}
.gerrit-InfoTable td.negscore {
  color: red;
}
.gerrit-InfoTable td.posscore {
  color: #08a400;
}

.gerrit-InfoTable td.approvalhint {
  white-space: nowrap;
  background-left: 1px none;
  background-bottom: 1px none;
  border: none;
  color: #444444;
}

.gerrit-ChangeInfoBlock {
}

.gerrit-InfoBlock {
  border-collapse: collapse;
  border-spacing: 0;
}

.gerrit-InfoBlock td {
  padding: 2px 4px 2px 6px;
  border-right: 1px solid #d4e9a9;
  border-bottom: 1px solid #d4e9a9;
  text-align: left;
  white-space: nowrap;
}

.gerrit-InfoBlock td.topmost {
  border-top: 1px solid #d4e9a9;
}

.gerrit-InfoBlock td.header {
  border-bottom: 1px solid white;
  background-color: #d4e9a9;
  font-style: italic;
  text-align: right;
}

.gerrit-InfoBlock td.bottomheader {
  border-bottom: 1px solid #d4e9a9;
}

.gerrit-InfoBlock td.closedstate {
  font-weight: bold;
}

.gerrit-InfoBlock td.permalink {
  border-right: 1px none;
  border-bottom: 1px none;
  text-align: right;
}
.gerrit-InfoBlock td.permalink div div {
  display: inline;
}

.gerrit-InfoBlock td.command {
  white-space: pre;
  font-family: monospace;
  font-size: 12px;
}

.gerrit-InfoBlock td.useridentity {
  white-space: nowrap;
}

.gerrit-PatchSetInfoBlock {
  margin-bottom: 10px;
}

.gerrit-PatchSetActions {
  margin-bottom: 10px;
}
.gerrit-PatchSetActions .gwt-Button {
  margin-right: 5px;
  font-size: 8pt;
}

.gerrit-Change-MissingApprovalList {
  margin-top: 5px;
}
.gerrit-Change-MissingApproval {
  font-weight: bold;
  white-space: nowrap;
}

.gerrit-Change-AddReviewer {
  margin-top: 5px;
  white-space: nowrap;
}


/** SideBySideScreen **/
.gerrit-SideBySideScreen-SideBySideTable {
  width: 100%;
  border: 1px solid #B0BDCC;
  display: table;
}

.gerrit-SideBySideScreen-SideBySideTable td.Comment {
  border-left: 5px solid orange;
  border-right: 5px solid orange;
  padding-right: 5px;
  background: #fef8cb;
}

.gerrit-CommentEditor {
  background: lightgrey;
  padding-left: 5px;
  padding-right: 5px;
  padding-top: 5px;
  padding-bottom: 5px;
}
.gerrit-CommentEditor textarea {
  font-size: small;
}
.gerrit-CommentEditor-Buttons {
  margin-top: 5px;
}
.gerrit-CommentEditor-Buttons .gwt-Button {
  margin-right: 5px;
  font-size: 8pt;
}


/** Patch History Table **/
.gerrit-PatchHistoryTable {
  width: auto;
  margin-bottom: 10px;
}

.gerrit-PatchHistoryTable .DataCell {
  white-space: nowrap;
}


/** AccountSettings  **/
.gerrit-SshKeyPanel-EncodedKey {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  font-family: monospace;
  font-size: small;
}
.gerrit-SshKeyPanel-Invalid {
  white-space: nowrap;
  color: red;
  font-weight: bold;
}
.gerrit-Identity-UntrustedExternalId {
  white-space: nowrap;
  color: red;
  font-weight: bold;
}

.gerrit-AccountInfoBlock {
  margin-bottom: 10px;
}
.gerrit-AccountContactPrivacyDetails {
  margin-left: 10px;
  margin-top: 5px;
  margin-bottom: 5px;
  width: 40em;
}
.gerrit-AccountContactOnFile {
  margin-left: 10px;
  margin-top: 5px;
  margin-bottom: 5px;
  font-weight: bold;
}

.gerrit-AddSshKeyPanel {
  margin-top: 10px;
  background-color: #d4e9a9;
  padding: 5px 5px 5px 5px;
}

.gerrit-WatchedProjectPanel {
  margin-top: 10px;
  padding: 5px 5px 5px 5px;
  display: table;
  border: 1px solid #b0bdcc;
}

.gerrit-ContributorAgreement-Button {
  font-weight: bold;
}

.gerrit-ContributorAgreement-ShortDescription {
  margin-left: 20px;
  margin-right: 20px;
  margin-bottom: 10px;
  padding: 5px 5px 5px 5px;
  border: 1px solid #b0bdcc;
}

.gerrit-ContributorAgreement-AlreadySubmitted {
  margin-left: 20px;
  margin-right: 20px;
  padding: 5px 5px 5px 5px;
  color: red;
}

.gerrit-ContributorAgreement-Legal {
  margin-left: 20px;
  margin-right: 20px;
  padding: 5px 5px 5px 5px;
  border: 1px solid #b0bdcc;
}

.gerrit-ProjectAdmin-ApprovalCategoryRangeLine {
  white-space: nowrap;
}
.gerrit-ProjectAdmin-ApprovalCategoryValue {
  font-family: monospace;
  font-size: small;
}


/** PublishCommentsScreen **/

.gerrit-PublishCommentsScreen .gwt-DisclosurePanel .header td {
  font-weight: bold;
  white-space: nowrap;
}

.gerrit-PublishCommentsScreen .gerrit-SmallHeading {
  font-size: small;
  font-weight: bold;
  white-space: nowrap;
}
.gerrit-PublishCommentsScreen .gerrit-ApprovalCategoryList {
  margin-bottom: 10px;
  margin-left: 10px;
  background: #d4e9a9;
  width: 25em;
  white-space: nowrap;
  padding-top: 2px;
  padding-bottom: 2px;
}
.gerrit-PublishCommentsScreen .gerrit-CoverMessage {
  margin-left: 10px;
  background: #d4e9a9;
  padding: 5px 5px 5px 5px;
}
.gerrit-PublishCommentsScreen .gerrit-CoverMessage textarea {
  font-size: small;
}
.gerrit-PublishCommentsScreen .gerrit-ApprovalCategoryList .gwt-RadioButton {
  font-size: smaller;
}
.gerrit-PublishCommentsScreen .gerrit-PatchComments {
  margin-bottom: 10px;
  margin-left: 10px;
}
.gerrit-PublishCommentsScreen .gwt-Hyperlink {
  white-space: nowrap;
  font-size: small;
}
.gerrit-PublishCommentsScreen .gerrit-LineHeader {
  white-space: nowrap;
  font-family: monospace;
  font-size: small;
  font-style: italic;
  border-left: 3px solid #e3e3e3;
  padding-left: 3px;
}
.gerrit-PublishCommentsScreen .gerrit-PatchLineComment {
  border-left: 3px solid #e3e3e3;
  padding-left: 6px;
}


/** OpenIdLoginPanel **/
.gerrit-OpenID-loginform {
  margin-left: 10px;
}

.gerrit-OpenID-logobox {
  width: 98%;
  text-align: right;
}

.gerrit-OpenID-loginline {
  margin-bottom: 10px;
}

.gerrit-OpenID-openid_identifier {
  background: #ffffff url(openidlogin_bg1.cache.gif) no-repeat scroll 5px 50%;
  padding-left: 25px;
  border: 1px solid #999999;
  margin-right: 5px;
}

.gerrit-OpenID-directlink {
  vertical-align: middle;
  margin-right: 5px;
  color: blue;
}
.gerrit-OpenID-directlink:hover {
  text-decoration: underline;
}
.gerrit-OpenID-directlink img {
  margin-right: 3px;
  border: 0 none;
}

.gerrit-OpenID-errorline {
  padding-top: 5px;
  padding-bottom: 5px;
}
.gerrit-OpenID-errorline span {
  padding-top: 4px;
  padding-bottom: 4px;
  padding-left: 10px;
  padding-right: 10px;
  background: #fff1a8;
}
