/* --------------------------------------------------------------------------
Sets up all the overrides or additional CSS that the site uses.
---------------------------------------------------------------------------*/
::-moz-selection {
  background: #B53C2C;
  color: #fff;
  text-shadow: none;
}

::selection {
  background: #B53C2C;
  color: #fff;
  text-shadow: none;
}

.navbar-brand {
  padding: 16px 15px 16px 15px;
  height: 140px;
}

/* CSS for the new full SVG CL logo */
.cl-full-logo {
    height: 115px;
    display: block;
}
.cl-full-logo .free-law-link{
  fill: transparent;
}
.cl-full-logo .cls-1 {
  fill: #B53C2C;
}
.cl-full-logo .cls-1, .cls-2, .cls-3, .cls-4 {
  stroke-width: 0px;
}
.cl-full-logo .cls-2 {
  fill: #968f7f;
}
.cl-full-logo .cls-3 {
  fill: #fff;
}
.cl-full-logo .cls-4 {
  fill: #848582;
}

header {
  margin-bottom: 30px;
}

.navbar {
  margin-bottom: 0;
  border-right: none;
  border-bottom-color: #e7e7e7;
  border-left: none;
}

.navbar-brand > img {
  display: block;
  margin: 0 0 0 -1px; /* visually compensate for leading edge 'C' */
}

.navbar-toggle {
  margin-bottom: 0;
}

.navbar-default .navbar-nav > li a {
  padding-top: 13px;
  padding-bottom: 10px;
  border-bottom: 3px solid transparent;
  color: #555555;
}

.navbar-default .navbar-nav > li form button{
  padding: 13px 20px 10px;
  color: #555555;
}

.navbar-default .navbar-nav > li.active a {
  background-color: transparent;
  border-bottom-color: #B53C2C;
}

.subnav {
  min-height: 0;
  border-top: 0;
}

.subnav .navbar-nav {
  margin: 0;
}

.subnav .navbar-nav > li {
  float: left;
}

#navbar-r > a:after {
  content: "PACER";
  display: block;
  position: absolute;
  top: 25px;
  left: 14px;
  color: gray;
  opacity: 0;
  transform: skewX(0deg) rotate(180deg) translateX(0px);
  transition: opacity .4s, transform .4s;
}

#navbar-r:hover > a:after {
  opacity: 1;
  transform: skewX(20deg) rotate(180deg) translateX(-3px);
  backface-visibility: hidden; /* Fixes jumpy transition */
}

.navbar-default .navbar-nav > li > a.donate,
.navbar-default .navbar-nav > .active > a.donate,
.navbar-default .navbar-nav > .active > a.donate:focus {
  color: #B53C2C;
  background-color: transparent;
  font-weight: bold;
  font-size: 110%;
}

.navbar-default .navbar-nav > .active > a.donate:hover {
  background-color: #e7e7e7;
  color: #B53C2C;
}

.navbar-default .navbar-nav > li > a.donate:hover {
  color: #d90c0c;
}

.nav .open > a,
.nav .open > a:hover,
.nav .open > a:focus {
  border-color: transparent;
}

.navbar-default .navbar-nav .dropdown-menu > li > a,
.navbar-default .navbar-nav .dropdown-menu > li > a:hover,
.navbar-default .navbar-nav .dropdown-menu > li > a:focus {
  border-color: transparent;
}

#search-results {
  margin-top: 23px;
}

#search-results article {
  padding-top: 10px;
}

/* Make anchor targets in tables have a special color. */
.table-hover > tbody > tr:target {
  background-color: #f5f5f5;
}

/* Standard target color. */
*:target {
    -webkit-animation: target-fade 3s;
    -moz-animation: target-fade 3s;
    -o-animation: target-fade 3s;
    animation: target-fade 3s;
}

@-webkit-keyframes target-fade {
    from { background-color: lightyellow; }
    to { background-color: transparent; }
}

@-moz-keyframes target-fade {
    from { background-color: lightyellow; }
    to { background-color: transparent; }
}

@-o-keyframes target-fade {
    from { background-color: lightyellow; }
    to { background-color: transparent; }
}

@keyframes target-fade {
    from { background-color: lightyellow; }
    to { background-color: transparent; }
}

.alt {
  color: #666;
  font-family: "Warnock Pro", "Book Antiqua", Georgia, serif;
  font-style: italic;
  font-weight: normal;
}

.caps {
  font-variant: small-caps;
  letter-spacing: 1px;
  text-transform: lowercase;
  font-weight: bold;
  padding: 0 2px;
}

.tooltip {
  text-transform: none;
}

.recap-tooltip {
  position: absolute;
  max-width: 220px;
  z-index: 1000;
  display: none;
}

.recap-tooltip-body{
  margin-top: 10px;
  border: 1px solid #ccc;
  padding: 12px 16px;
  background: white;
  box-shadow: 0px 2px 8px rgba(0,0,0,0.1);
  border-radius: 12px;
}

.tooltip-header {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 10px;
}

.recap-tooltip-close {
  background: none;
  border: none;
  cursor: pointer;
  color: #999;
  position: absolute;
  font-size: 1.5rem;
  top: 12px;
  right: 8px;
}

/* Tooltip Arrow */
.tooltip-arrow {
  width: 0;
  height: 0;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-bottom: 10px solid #ccc;
  filter: drop-shadow(0 -1px 1px rgba(0,0,0,0.1));
}

.tooltip-arrow::after {
  content: '';
  position: absolute;
  top: 1px; /* moves down inside the border */
  left: -10px;
  width: 0;
  height: 0;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-bottom: 10px solid white; /* inner arrow fill */
  z-index: 2;
}

.dotted {
  text-decoration: dotted underline gray;
}

.flex {
  display: flex;
}

.flex-column {
  flex-direction: column;
}

.ml-auto {
  margin-left: auto;
}

ul.outdent {
  padding-left: 20px;
}

a.button:active {
  background-color: #6299c5;
  /* border:1px solid #6299c5; */
  color: #fff;
}

.shadow {
  box-shadow: 2px 2px 5px #000000;
}

#main-query-box {
  transition: all 0.5s ease;
  margin-bottom: 4em;
  margin-top: 4em;
}

.filter-box #main-query-box {
  margin-bottom: 0;
  margin-top: 0;
  padding-bottom: 1rem;
}
.filter-box #main-query-box .input-group {
    vertical-align: middle;
    display: flex;
}

@media (max-width: 767px) {
  .cl-full-logo{
    height: 90px;
  }
  .navbar-brand {
    height: 115px;
  }
  .navbar-default .navbar-nav > li form button{
    padding: 5px 15px 5px 25px;
    color: #777777;
  }

  #homepage #main-query-box {
    margin-bottom: 2em;
  }

  #main-query-box #id_q, #main-query-box #id_full_citation {
    width: 250px;
  }

  #main-query-box .input-group {
    display: inline-table;
    vertical-align: middle;
  }

  #main-query-box .input-group-btn {
    width: auto;
  }

  #main-query-box .form-group {
    display: inline-block;
    margin-bottom: 0;
    vertical-align: middle;
  }

  .headshot { /* shrink photos on about page for phone size*/
    height: 135px;
    width: 135px;
  }

  #court-picker-tabs {
    padding-top: 15px;
  }

  #donate-image {
    text-align: center;
    margin: 1em auto;
  }

  #by-line {
    text-align: center;
  }

  .dl-horizontal dd {
    margin-left: 15px;
  }

  .broken-email-banner {
    padding-right: 0px;
  }

  .broken-email-banner .navbar-text {
    float: left;
  }
}

@media (min-width: 768px) {
  #main-query-box #id_q {
    width: 400px;
  }

  .filter-box #main-query-box .input-group-btn {
    width: auto;
  }

  #above-main-query {
    margin-top: 6em;
  }

  #advanced-search {
    margin-bottom: 6em;
  }

  #advanced-search p:not(:first-child) {
    margin-top: 1.5em;
  }

  #court-picker-tabs {
    text-align: right;
  }

  .dl-horizontal dt {
    white-space: normal;
    width: 100px;
  }

  .dl-horizontal dd {
    margin-left: 120px;
  }

  .filter-box #de-filter-search{
  font-size: 12px;
  }

  #de-filter-search::placeholder{
    font-size: 12px;
  }

  .flex-sm-column {
    flex-direction: column;
  }

}

@media (min-width: 992px) {
  #main-query-box #id_q, #main-query-box #id_full_citation {
    width: 600px;
  }

  .filter-box #main-query-box {
  padding-bottom: 0;
  }

  .lg-v-offset-below-3 {
    padding-bottom: 40px;
  }

  .col-md-offset-half {
    margin-left: 4.166666666%;
  }
}

@media (min-width: 1200px) {
  #main-query-box #id_q, #main-query-box #id_full_citation {
    width: 800px;
  }

  .flex-lg-row {
    flex-direction: row;
  }
}

.bottom {
  margin-bottom: 0;
  padding-bottom: 0;
}

.top {
  margin-top: 0;
  padding-top: 0;
}

.x-large {
  font-size: 25px;
}

.large {
  font-size: 21px;
}

.medium {
  font-size: 15px;
}

.btn-xl {
  padding: 15px 22px;
  font-size: 20px;
  border-radius: 9px;
}

.btn-close {
  padding-left: 3px;
  padding-right: 3px;
}

#jurisdiction-count {
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.container > .content {
  margin-bottom: 4em;
}

.container > .base-newsletter {
  background-color: #e5ecf9;
  border-top: 1px solid #c8d7f2;
  padding: 10px;
}

.container > footer {
  padding-top: 2em;
  border-top: 1px solid #dddddd;
}

.footer-item {
  margin-bottom: 0.4em;
  font-size: 120%;
  line-height: 1.2em;
}

#by-line {
  margin: 1em 0;
}

#by-line a {
  color: gray;
  text-decoration: underline;
}

#social-container {
  display: block;
  background: none;
  /*width: 200px; */
  margin: 2em auto;
}

#social-container a {
  margin-right: 0.75em;
}

#social-container .fa-lg:hover i.fa-circle {
  color: #6683b7;
}

/* General class shortcuts */
.inline {
  display: inline;
}

.inline-block {
  display: inline-block;
}

.bold {
  font-weight: bold;
}

.striken {
  text-decoration: line-through;
  color: gray;
}

.no-underline,
.no-underline:hover,
.no-underline:active,
.no-underline:focus {
  text-decoration: none;
}

a.black-link,
a.black-link:hover,
a.black-link:active,
a.black-link:focus {
  color: #333333;
}

.gray, .grey {
  color: gray;
}

.gold {
  color: gold;
}

.red {
  color: #8a1f11;
}

.green {
  color: green;
}

.white-background {
  background-color: white;
}

.align-top {
  vertical-align: top;
}

.table > tbody > tr > td.align-middle {
  vertical-align: middle;
}

.left {
  float: left;
}

.center {
  text-align: center;
}

.right {
  text-align: right;
}

.float-right { /* replace with text-right? */
  float: right;
}

.nowrap {
  white-space: nowrap;
}
.tall {
  max-height: 740px;
}

.round-bottom {
  -webkit-border-bottom-right-radius: 6px;
  -webkit-border-bottom-left-radius: 6px;
  border-bottom-right-radius: 6px;
  border-bottom-left-radius: 6px;
}

.pointer, .cursor, label {
  cursor: pointer;
  cursor: hand;
}

.open_buy_acms_modal.cursor{
  cursor: pointer;
}

.cursor-help {
  cursor: help;
}

mark {
  /* Needs extra declarations for old browsers */
  background-color: #ffffbf;
  padding: 0;
}

.no-gutter {
  margin-left: -15px;
  margin-right: -15px;
}

/* For adding vertical whitespace */
.v-offset-above-1 {
  margin-top: 10px;
}

.v-offset-above-2 {
  margin-top: 20px;
}

.v-offset-above-3 {
  margin-top: 40px;
}

.v-offset-above-4 {
  margin-top: 60px;
}

.v-offset-above-5 {
  margin-top: 80px;
}

.v-offset-above-6 {
  margin-top: 100px;
}

.v-offset-above-7 {
  margin-top: 150px;
}

.v-offset-below-1 {
  margin-bottom: 10px;
}

.v-offset-below-2 {
  margin-bottom: 20px;
}

.v-offset-below-3 {
  margin-bottom: 40px;
}

.v-offset-below-4 {
  margin-bottom: 60px;
}

.v-offset-below-5 {
  margin-bottom: 80px;
}

.v-offset-below-6 {
  margin-bottom: 100px;
}

.v-offset-below-7 {
  margin-bottom: 150px;
}

.radio-list ul {
  /* Django creates radio items as a list, but they need to be wrapped in a
     div with class "radio-list" then this style will make them look normal */
  list-style-type: none;
  padding-left: 0;
}

.serif {
  font-family: "Warnock Pro", "Palatino", "Book Antiqua", Georgia, serif;
}

.serif-text {
  font-family: Georgia, "Times New Roman", Times, serif;
  font-size: 15px;
  letter-spacing: 0.2px;
}

.meta-data-header {
  font-weight: bold;
}

.meta-data-value {
  margin-right: 2em;
}

.select-all {
    -webkit-user-select: all;
    user-select: all;
    cursor: text;
}

/* layout */
body {
  background-color: #E9E8E8;
}

.container {
  background-color: white;
  border-left: 1px solid #c2c2c2;
  border-bottom: 1px solid #c2c2c2;
  border-right: 1px solid #c2c2c2;
}

#id_q, #de-filter-search, #id_full_citation {
  border-color: #a6a6a6 #a6a6a6 #a6a6a6 #a6a6a6;
  border-style: solid none solid solid;
  border-width: 1px 0px 1px 1px;
  margin: 0;
  font-size: 16px;
  transition: all 0.5s ease;
  /* Adjust to the right and set blur of 1px  */
  box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.075);
}

#search-form .input-group-addon-blended {
  background-color: inherit;
  border-top: 1px solid;
  border-bottom: 1px solid;
  border-left: 0;
  border-color: #a6a6a6 transparent;
  /* Adjust to the left and set blur of 1px. This eliminates a tiny line
     between the input box and this box */
  box-shadow: inset -1px 1px 1px rgba(0, 0, 0, 0.075);
  padding: 0.5em 1em 0.5em 0;
}

#advanced {
  color: black;
}

#scrollable-jurisdictions {
  overflow-y: scroll;
  height: 500px;
}

/* New case view styling, including citations */
#default-text pre, .plaintext .citation {
  background-color: transparent;
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: inherit;
  font-style: inherit;
  font-size: 100%;
  font-family: "andale mono", "lucida console", monospace;
  vertical-align: baseline;
  white-space: pre;
}

/* cited by sidebar list styling */
div.shown {
  padding-top: 5px;
}

div.shown ul {
  margin: 0;
  padding: 0 0 0 17px;
}

/* cited by and authorities styling */
#authorities hr,
#all-summaries hr,
#cited-by hr,
#visualizations hr,
#recommendations hr {
  margin-bottom: 2px;
}

#authorities ul,
#all-summaries ul,
#docket-list ul,
#cited-by ul,
#visualizations ul,
#recommendations ul,
#citation-redirect ul,
#referers ul {
  padding: 0;
  margin: 0 0 1.5em 0;
}

#authorities ul li,
#all-summaries ul li,
#cited-by ul li,
#visualizations ul li,
#recommendations ul li,
#citation-redirect ul li,
#referers ul li {
  list-style-type: none;
  padding: 3px 0 2px 0;
  border-bottom: 1pt solid #DDD;
}

#docket-list > ul > li {
  /* Use > b/c we don't want rule applying to drop downs */
  list-style-type: none;
  padding: 3px 0 5px 0;
}

#summaries li {
  padding-bottom: 5px;
}

.bullet-tail:after {
  content: " \2022";
  padding: 0.5em;
}

.bullet-tail:last-child:after {
  content: none;
}

.group-summaries {
  padding: 0 1em 0 1em !important;
}

.summary-group-metadata {
  padding-top: 5px;
}

.toggle-group-summaries {
  padding: 0;
}

.toggle-group-summaries:focus {
  outline: none;
}

[aria-expanded="false"] > .expanded,
[aria-expanded="true"] > .collapsed {
  display: none;
}

.citation-name {
  font-size: 1.2em;
}

input.bottom {
  margin-bottom: 0;
}

#sidebar {
  margin-top: 6px;
}

.sidebar-section {
  margin-bottom: 3em;
}

.sidebar-section h3 {
  margin-bottom: 0.6em;
  margin-top: 0;
  border-bottom: 1px solid #ddd;
}

.sidebar-section h3 > span {
  padding: 0.5em 0 0.1em;
  line-height: 1.4em;
}

.sidebar-section h3 > .edit {
  font-size: 1.2ex;
  font-weight: normal;
}

div.sidebar-checkbox {
  padding-top: 2px;
  padding-bottom: 2px;
}

div.sidebar-checkbox label {
  display: block;
  padding-left: 22px;
}

div.sidebar-checkbox input {
  width: 13px;
  height: 13px;
  padding: 0;
  margin: 0 0 0 5px;
  vertical-align: bottom;
  position: relative;
  top: 1px;
  overflow: hidden;
}

input.court-checkbox, input.status-checkbox {
  top: 0;
}

#citation-count {
  float: right;
}

#slider-range {
  margin: 0.5em;
}

/* Results page */
#id_q:focus {
  outline-style: none;
}

#new-search-chooser {
  float: right;
}

.nojs #sidebar-search-form {
  display: none;
}

#pagination-left {
  float: left;
  width: 200px;
}

#pagination-center {
  margin: auto;
  text-align: center;
}

#pagination-right {
  float: right;
  width: 200px;
  text-align: right;
}

/* Docket page */
#id_entry_gte, #id_entry_lte {
  width: 60px;
}

#id_filed_after,
#id_filed_before,
#id_entry_date_filed_after,
#id_entry_date_filed_before {
  width: 95px;
}

#advanced-page #id_filed_after,
#advanced-page #id_filed_before,
#advanced-page #id_entry_date_filed_after,
#advanced-page #id_entry_date_filed_before {
  width: auto;
}

#docket-entry-table .row {
  padding-top: 8px;
  border-bottom: 1px solid #dddddd;
}

.description-header,
.export-csv {
  padding: 0px;
}

#export-csv-error {
  padding: 5px 0px;
}

@media (min-width: 767px) {
  .export-csv {
    padding: 5px 10px;
  }
}
#docket-entry-table .recap-documents.row {
  padding-top: 0px;
  border-bottom: none;
}

.representation {
  margin-top: 8.5px;
}

.odd {
  background-color: #f5f5f5;
}

/* Docket entry page*/
.embed-responsive.embed-responsive-8by11 {
  padding-bottom: 80%;
}

/* Donations page */
#id_amount_other {
  float: none;
  margin-top: 0;
}

#how-much-donate-choices {
  padding-left: 2em;
}

#unconfirmed-email-warning {
  margin-top: 9px;
  margin-left: 5px;
}

/* Special case for Oregon, which has a name attr with a value of TOP on
   content that isn't a link. See example here:
   https://www.publications.ojd.state.or.us/docs/S054822.htm#TOP

   Idea here is to simply ignore the anchor element.
*/
a[name="TOP"]:focus, a[name="TOP"]:hover, a[name="TOP"] {
  text-decoration: none;
  color: #333;
}

a:focus, a:hover {
  color: #009;
}

a {
  color: #009;
}

a:visited.visitable {
  color: #9d11b3;
}

a.gray:hover, a.gray:focus, a.grey:hover, a.grey:focus {
  color: gray;
}

#share-links a:hover {
  text-decoration: none;
}


/* Display cases from Resource.org neatly */
#resource-org-text span.num {
  position: absolute;
  color: #999999;
}

#resource-org-text p.indent {
  position: relative;
  margin-left: 2em;
  margin-top: 1.5em;
}

#resource-org-text div.footnotes {
  border-top: 1px dotted black;
  padding-top: 1em;
}

/*Custom css to display Harvard content*/
/*The id that starts with A indicates a new line in the body of the text, sometimes the
information is on the same line and needs to be formatted to make the context resemble more
closely the content in the book*/
#headmatter > *[id^="A"] {
  margin-left: 5px;
}

#headmatter > div.footnotes > .footnote > p {
  margin-left: 2em;
}


#headmatter > div.footnotes {
  border-top: 1px dotted black;
  padding-top: 1em;
}

#headmatter > .footnotes > .footnote > a {
  color: #000099;
  font-size: 1em;
}

#headmatter > attorneys, docketnumbers, judges, footnotes, court, decisiondate {
  line-height: 2em;
  font-size: 14px;
}

#headmatter > parties {
  font-style: italic;
  line-height: 1em;
  font-size: 14px;
}

#headmatter > .footnotes > div.footnote {
   font-size: 12px;
}

#headmatter > * > span.star-pagination::after {
   left: -1.5em;
}

.harvard > opinion > div.footnotes > .footnote > p {
  margin-left: 2em;
}

.harvard > opinion > div.footnotes {
  border-top: 1px dotted black;
  padding-top: 1em;
}

.harvard > opinion > .footnotes > .footnote > a {
  color: #000099;
  position: absolute;
  font-size: 1em;
}

.harvard > opinion > p > a.footnote {
  border-bottom: 0;
  margin-bottom: 5px;
  color: #000099;
  vertical-align: super;
  font-size: .85em;
  font-weight: bold;
}

.harvard > opinion > author {
  line-height: 2em;
  font-size: 20px;
}

#resource-org-text div.prelims {
  background: none repeat scroll 0 0 #eeeeee;
  border: 1px solid #dddddd;
  padding-top: 1.5em;
}

#resource-org-text div.prelims p {
  position: relative;
  margin-left: 2em;
  margin-right: 2em;
  margin-top: 0;
}

#resource-org-text p.parties {
  text-align: center;
  font-size: 1.25em;
  font-weight: bold;
}

#resource-org-text div.footnote a.footnote {
  /* Needs proper color use */
  color: #000099;
  position: absolute;
}

#resource-org-text p a.footnote {
  /* make footnotes superscript */
  vertical-align: text-top;
  font-size: 70%;
  color: #000099;
}

/* End Resource.org display CSS */


/* Start lawbox display CSS */
#lawbox-text h1 {
  font-size: 1.25em;
  padding-top: 0.75em;
  padding-bottom: 0.75em;
  font-weight: bold;
}

#lawbox-text h2 {
  font-size: 1.25em;
  font-weight: bold;
}
#lawbox p {
  line-height: 2em;
  font-size: 16px;
}

span.star-pagination {
  color: #555555;
}

span.star-pagination::after {
  display: inline;
  position: relative;
  content: "•";
  float: left;
  left: -1em;
  font-size: 1em;
  color: #8a1f11;
  width: 0;
}

blockquote span.star-pagination::after {
  left: -2.5em;
}

/* End lawbox display CSS */


/* Disabled button formatting */
button[disabled]:active, button[disabled]:hover, button[disabled] {
  color: #bdbdbd;
  background-color: #F5F5F5;
  -moz-border-bottom-colors: none;
  -moz-border-image: none;
  -moz-border-left-colors: none;
  -moz-border-right-colors: none;
  -moz-border-top-colors: none;
  border-color: #EEEEEE #DEDEDE #DEDEDE #EEEEEE;
  border-right: 1px solid #DEDEDE;
  border-style: solid;
  border-width: 1px;
  cursor: default;
}

/* Save notes and modal box configs */
.modal {
  box-shadow: 2px 2px 5px #000000;
  border: 1px solid #dddddd;
}

.modal-content {
  padding: 1em;
}

#modal-court-picker {
  width: 95%;
  max-width: 950px;
}

#modal-court-picker p.inline {
  margin-left: 10px;
}

#modal-court-picker a.close {
  font-size: 2em;
  position: relative;
  top: -0.45em;
  padding: 0.3em 0.7em 0.1em;
  left: 0.4em;
}

#modal-court-picker label {
  font-weight: normal;
}

#modal-court-picker #tab-state .appeals-court {
  /* Indent appeals courts in the state tab. */
  margin-left: 15px;
}

#court-filter {
  float: left;
  width: 218px;
}

#modal-court-picker #court-picker-tabs li {
  /* Has very specific selector to beat specific one in Bootstrap */
  float: none;
  display: inline-block;
}

.nav-tabs a {
  text-transform: uppercase;
}

#modal-save-note .modal-dialog {
  width: 430px;
}

#modal-save-note textarea, #modal-save-note input {
  width: 404px !important;
}

#save-note-text-area {
  height: auto;
}

#modal-save-note .save-note-button {
  margin-right: 0;
}

#notes-bottom-section {
  margin-top: 5.5em;
}

#save-note-delete {
  margin-bottom: 0.3em;
}

#notes-buttons {
  position: absolute;
  right: 1em;
  bottom: 0.3em;
}

/* Tables on settings pages */
.settings-table {
  border-collapse: collapse;
}

.settings-table th {
  border-width: 0 0 1px 0;
  border-style: solid;
  border-color: gray;
}

.settings-table tr {
  border-width: 0 0 1px 0;
  border-style: dotted;
  border-color: gray;
}

.settings-table tr:last-child {
  border-width: 0;
}

.settings-table tbody tr:hover {
  background-color: #f0f0f0;
}

#copy-input {
  width: 118px;
}

.help-block {
  color: #8a1f11;
}

/* Visualization CSS */
body.embed {
  background-color: white;
}

body.embed div.container {
  border: 0 none;
  margin: 0;
}

body.embed div#title-block {
  margin-bottom: 0;
}

body.embed .plottable .axis text {
  font-size: 10px;
}

body.embed .plottable .label-area text,
body.embed .caseHoverText {
  font-size: 11px;
}

.caseHoverText {
  color: rgb(51, 51, 51);
  font-size: 14px;
  text-shadow: white 0 0 6px, white 0 0 6px, white 0 0 6px, white 0 0 6px;
}

.label-area .text-line {
  text-shadow: white 0 0 6px, white 0 0 6px, white 0 0 6px, white 0 0 6px;
}

.plottable .light-label .text-line {
  fill: #000;
}

.plottable-colors-0 {
  background-color: mediumpurple;
}

.plottable-colors-1 {
  background-color: orangered;
}

#table {
  overflow-y: auto;
  max-height: 450px;
}

#viz-page .tooltip-inner {
  text-align: left;
}

#viz-homepage #background-chart {
  position: absolute;
}

#viz-homepage #background-chart svg {
  filter: url(#blur);
  filter: blur(1px);
}

#viz-homepage .white-out {
  background-color: rgba(255, 255, 255, 0.65);
  z-index: 1;
  position: relative;
}

#coverageChart .bar-area {
  cursor: pointer;
}


/* Typeahead */
.twitter-typeahead .tt-query,
.twitter-typeahead .tt-hint {
  margin-bottom: 0;
}

.tt-menu {
  max-height: 150px;
  overflow-y: auto;
  margin-top: 2px;
  padding: 5px 0;
  background-color: #ffffff;
  border: 1px solid #cccccc;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 4px;
  -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  background-clip: padding-box;
}

.tt-suggestion {
  display: block;
  padding: 3px 20px;
}

.tt-suggestion:hover {
  color: #fff;
  background-color: #B53C2C;
}

.tt-suggestion.tt-is-under-cursor a {
  color: #fff;
}

.tt-suggestion p {
  margin: 0;
}

.twitter-typeahead, .tt-hint, .tt-input, .tt-menu {
  width: 100%;
}

#notes.markdown img {
  /* disable highlight border on images without height/width */
  border: 0;
}

.tag {
  display: inline-block;
  border-width: 1px;
  border-style: solid;
  border-color: #c8d7f2 transparent #c8d7f2 #c8d7f2;
  border-radius: .25em 0 0 .25em;
  padding: 0.1em 0.6em 0.1em 0.3em;
  margin-right: 0.8em;
  background-color: #e5ecf9;
  line-height: 1.2em;
}

.tag:after {
  content: "\25CF";
  position: absolute;
  display: inline-block;
  height: 1.2em;
  width: 1.17em;
  transform: rotate(45deg);
  color: white;
  text-indent: 0.3em;
  text-shadow: 0 0 1px #333;
  line-height: 1em;
  background-color: #e5ecf9;
  border-radius: 0.33em 0.33em 0.33em 1em;
  border-width: 1px;
  border-style: solid;
  border-color: #c8d7f2 #c8d7f2 transparent transparent;
}

/* Highlights images that need height/width */
img:not([width]):not([height]) {
  border: 2px solid red;
}

/* Tax specific css tweak*/
.footnotes > ul {
  padding: 0px;
}

.courtsummary {
  padding: 20px;
}

.courtcasedocbody > hr {
  display: none !important;
}

/* This ends up being the decision decided commentary in tax cases that
is right aligned in the reporters*/

emphasis {
  font-style: italic;
}

.fullcasename, .shortcasename, .docketnumber, .courtinfo {
  text-align: center;
}

/*New paragraphs are indented in tax reports*/
.caseopinions > div > bodytext > p {
  text-indent: 10px;
}

/* END Tax specific css tweak*/

/*Improve contrast on alert boxes*/
.alert-dismissible .navbar-text.lead, .alert-danger, .alert-warning,
.alert-danger .help-block {
  color: #333333;
}

.alert-dismissible .navbar-text {
  margin: 10px 0px;
}

.alert-dismissible .navbar-text p {
  margin-bottom: 0px;
}

.alert-dismissible .btn-default {
  border-color: #999999;
}

.alert-dismissible .second-row-btn {
  margin-bottom: 10px;
}

.h-captcha > div {
  color: #333333 !important;
  font-family: Helvetica;
}

/* Profile tabs styles */
.centered-tabs {
  display: inline-flex;
  width: 100%;
  justify-content: center;
}

.left-tabs {
  display: inline-flex;
  width: 100%;
  justify-content: left;
}

@media (max-width: 767px) {
  .centered-tabs {
    display: block;
    justify-content: left;
  }
}

.recap-email-toggle .toggle {
  width: 6rem;
}

.recap-email-toggle label {
  line-height: 10px;
}

/* END Profile tabs styles */

/* Webhooks styles */
.webhooks .panel-body {
  padding: 0px;
}

.webhooks .panel-heading {
  background-color: white;
}

.empty-webhooks {
  padding: 1rem;
}

.justify-content-end {
  justify-content: flex-end;
}

.justify-content-between {
  justify-content: space-between;
}

.justify-content-around{
  justify-content: space-around;
}

.justify-content-center{
  justify-content: center;
}

.align-items-center {
  align-items: center;
}

.mr-1 {
  margin-right: 0.25em;
}

.mr-2 {
  margin-right: 0.5em;
}

[data-loading] {
  display: none;
}

textarea {
  resize: vertical;
}

.dummy-area{
  position:relative;
}

.copy-text-icon {
    color: #999;
    font-size: 1.5em;
    width: 20px;
    height: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    right: 10px;
    top: 10px;
    cursor: pointer;
}

.copy-text-icon:hover{
  color: #222;
}

.webhook-detail{
  padding: 1em;
}
.webhook-child {
    padding-left: 1rem;
}

.payload p{
  margin: 0 0 5px;
}
.payload hr{
  margin-top: 5px;
  margin-bottom: 5px;
}
#toc > ul > ul,
#toc > ul > li > ul,
#toc > ul > ul > ul,
#toc > ul > li > ul > li > ul {
  padding-inline-start: 20px;
}
#toc-container {
  position: sticky;
  top: 0px;
}
/* END Webhooks styles */


/* Prevent images inside opinion from overflowing */
div.subopinion-content img {
  max-width: 100%;
  height: auto;
}

/* CourtListner specific grid codes to allow for extra extra small */
.cl-form-inline {
  vertical-align: middle;
}
.cl-form-group, .cl-form-group > label, .cl-form-group > input {
  margin-bottom: 5px;
  display: inline-block;
  vertical-align: middle;
}

.tight-input input, .tight-input a {
  padding: 6px 6px;
  margin: 0px 0px;
}

@media (max-width: 768px) {
  .xs-pull-left {
    float: left !important;
  }
  .xs-pull-right {
    float: right !important;
  }
}

/* Custom CSS for opinion coverage page */
.timelines-dialog {
    width: 95vw;
}

.legendG {
    display: None;
}

#fullScreenModal {
  width: 100vw;
}

#toc-container {
  overflow-y: auto;
  height: 100vh;
}

@media (max-width: 1000px) {
    #toc-container {
        overflow-y: initial;
        position: relative;
        height: min-content;
    }
}

@media (min-width: 576px) {
  .flex-sm-row {
    flex-direction: row;
  }

  .justify-content-sm-end {
    justify-content: end;
  }

  .alert-dismissible .navbar-text {
    margin: 20px 0px;
  }
}

@media (max-width: 576px) {
  .alert-dismissible {
    padding-right: 0px;
  }

  .alert-dismissible .close {
    right: 0px;
  }
}

.brusher {
  display: none;
}

rect.series-segment {
  fill: rgb(49, 54, 149) !important;
  fill-opacity: 1.0 !important;
}

.ml-1 {
  margin-left: 0.25rem !important;
}

.htmx-indicator {
  opacity: 0;
  transition: opacity 200ms ease-in;
}

.htmx-hidden-indicator {
    display:none;
}
.htmx-request .htmx-hidden-indicator {
    display:inline;
}
.htmx-request.htmx-hidden-indicator {
    display:inline;
}

.turbo-progress-bar {
  position: fixed;
  display: block;
  top: 0;
  left: 0;
  height: 3px;
  background: #B53C2C;
  z-index: 2147483647;
  transition:
    width 300ms ease-out,
    opacity 150ms 150ms ease-in;
  transform: translate3d(0, 0, 0);
}

/* CSS for responsive tables with stacked columns */
/* requires responsive-table.js */
.responsive-table-wrapper table {
  width: 100%;
  color: #555555;
}
@media screen and (min-width: 767px) {
  .responsive-table-wrapper tbody td::before {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .responsive-table-wrapper thead tr > *:not(:first-child) {
    display: none;
  }

  .responsive-table-wrapper tbody,
  .responsive-table-wrapper tbody tr,
  .responsive-table-wrapper tbody td {
    display: flex;
    flex-direction: column;
    word-break: break-word;
    white-space: normal !important;
    max-width: 100%;
  }
  .responsive-table-wrapper .row-active td:first-child {
    margin-bottom: -1rem;
  }

  .responsive-table-wrapper tbody td:not(:first-child) {
    padding-block: clamp(1.44rem, calc(0.01rem + 2.49vw), 2.34rem);
  }

  .responsive-table-wrapper tbody td:first-child {
    flex-direction: row;
    align-items: center;
  }

  .responsive-table-wrapper tbody td:first-child::before {
    display: none;
  }

  .responsive-table-wrapper tbody tr > *:not(:first-child) {
    transition: padding 0.3s ease;
    overflow: hidden;
  }

  .responsive-table-wrapper tbody tr:not(.row-active) > *:not(:first-child) {
    max-width: 0;
    max-height: 0;
    padding-block: 0;
    opacity: 0;
  }

  .responsive-table-wrapper tbody button {
    display: inline-block;
  }

  .responsive-table-wrapper tbody td:not(:first-child)::before {
    display: block;
    font-weight: 600;
  }

  .responsive-table-wrapper tbody td:first-child::after {
    content: '\25BC'; /* Down arrow */
    margin-left: 0.5rem;
    transition: transform 0.3s;
  }

  .responsive-table-wrapper tbody tr.row-active td:first-child::after {
    transform: rotate(180deg); /* Rotate to point up when expanded */
  }
}

.prayer-button[data-gap-size="small"] {
  margin-left: 8px;
}

.prayer-button[data-gap-size="large"]{
  margin-left: 44px;
}

.gap-1 {
  gap: 0.25rem
}

.gap-2 {
  gap: 0.5rem
}

.prayer-top-buttons.navbar-right {
  right: 15px;
  position: relative;
}

.prayer-top-buttons.nav>li>a {
  padding: 11px 15px;
}

.prayer-top-buttons.nav>li>div {
  padding: 10px 15px;
}

.learn-more-prayer-btn {
  margin-right: auto;
}

.row-gap-3 {
  row-gap: 1rem;
}

#doc-no-available-warning a.btn {
  height: 28px;
}


/* Date relative filter */
.relative-select {
  position: relative;
  display: flex;
  align-items: stretch;
}
.date-filter-mode .radio-inline {
  margin-left: 15px;
}

.date-filter-mode input[name="date-mode"] {
  margin-top: 1px;
}


.relative-select input.form-control {
  flex: 1;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.btn-dropdown-toggle {
  margin-left: -1px;
  padding: 0 0.75em;
  border-left: none;
  border-radius: 0 .25em .25em 0;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
.btn-dropdown-toggle:hover {
  background-color:white;
  border-color: #cccccc;
}

.relative-options-list {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  z-index: 1000;
  display: none;
  max-height: 200px;
  overflow-y: auto;
  margin: 0;
  padding: 0;
  list-style: none;
}

.relative-options-list.show {
  display: block;
}

.relative-options-list li {
  padding: 5px 10px;
  cursor: pointer;
}

.relative-options-list li:hover {
  background-color: #f5f5f5;
}

/* Search alerts validation links */
.link-red a {
  color: #8a1f11;
  text-decoration: underline;
}

.btn-sealed{
  min-width: 96px;
}

.toggle-disable{
  opacity: 0.65;
}
