.no-list-style,
.flyout-navlist {
   list-style: none;
}

.oregon-leg-icon-link {
   padding-left: 171px;
   padding-top: 125px;
   float: left;
   position: absolute;
   top: 0;
   left: 0;
   background-image: url(https://www.oregonlegislature.gov/Documents/OLIS/capital-building-logo.jpg);
}

.center-content-padding {
   padding: 0;
   padding-top: 60px;
}

.banner-header {
   color: white;
   /* padding-top: 3px; */
   padding-top: 27px;
}

   .banner-header a,
   .banner-header a:visited {
      color: white;
      /* padding-top: 3px; */
      cursor: pointer;
      font-size: 23pt;
      font-family: "Segoe UI", Helvetica, Verdana, sans-serif;
   }

.banner-subheader {
   color: #FC3;
   font-size: 12pt;
   font-weight: bold;
}

.session-details {
   font-weight: bold;
}

.no-left-margin {
   margin-left: 0px;
}

.convene-times {
   padding-top: 10px;
   padding-bottom: 10px;
}

.session-full-name {
   font-size: 18px;
   padding-bottom: 20px;
   font-weight: bold;
}

.page-title {
   font-size: 14px;
   font-weight: bold;
}

.link-header-text {
   padding-right: 10px;
   padding-left: 10px;
   color: #1d190f;
   font-weight: bold;
}
/* loading and loaded used for div[data-load-action] elements*/
.loading {
   height: 50px;
   /* height and padding are the same here specificly to force the loading div to be shown*/
   padding-top: 50px;
}

.loaded {
   height: auto;
   /* height must be changed to auto in order for the collapse bootstrap element to work correctly*/
   padding-top: 0px;
   /* give IE something to work with for padding-top so it behaves properly for the loaded content once loaded*/
}

.top-menu {
   display: block;
   color: #3e5667;
}

.default-main-nav {
   width: 345px;
   margin: 0 auto;
   background: url(../Images/buttonBackground.jpg) center center no-repeat;
   border: none;
   /*width: 100%;*/
}

/*.button-area {*/
   /* float: right; */
   /*padding-top: 20px;
   padding-bottom: 5px;
   padding-left: 10px;
   padding-right: 0px;*/
   /* position: absolute; */
   /*-moz-border-radius: 0px 0px 10px 10px;
   -webkit-border-radius: 0px 0px 10px 10px;
   border-radius: 0px 0px 10px 10px;
   background-image: url(../Images/buttonBackground.jpg);
   height: 94px;*/
   /* right: 0; */
   /*width: 290px;
   top: 0;
   background-repeat: no-repeat;*/
   /* background:  blue; */
/*}*/

.mobile-button-area {
   padding-top: 20px;
   padding-bottom: 5px;
   padding-left: 10px;
   padding-right: 0px;
   height: 73px;
   width: 290px;
}

.button-group {
   display: block;
   /*float: right;*/
   text-align: center;
   padding-right: 0px;
   width: 80px;
}

.container-footer {
   position: relative;
   color: #3e5667;
   background: url(../Images/footer.jpg) repeat-x;
   padding: 10px 0;
   border-top: solid 1px #666;
   height: 87px;
   /*	opacity:0.9;
   filter:alpha(opacity=90);*/
}

.page-menu {
   padding-top: 8px;
}

   .page-menu a {
      color: #ffffff;
   }

.page-menu-text {
   font-size: .8em;
   color: white;
}

.footer-logo {
   float: right;
   margin-left: 10px;
   margin-top: 5px;
}

.nav-links {
   background: #f0ede7;
}

.btn-small-padding {
   padding-left: 3px;
   padding-right: 3px;
   padding-bottom: 0px;
   padding-top: 0px;
}

.input-small-search {
   width: 137px;
   margin-left: 10px;
   padding-top: 0px !important;
   /* should rewrite without !important */
   padding-bottom: 0px !important;
}

.input-large-search {
   /*width: 150px;*/
   margin-left: 10px;
   padding-top: 0px !important;
   /* should rewrite without !important */
   padding-bottom: 0px !important;
}

.footer-text {
   color: #fff;
   font-weight: bold;
}

.footer-text-small {
   color: white;
   font-weight: normal;
}

.bill-text-search {
   padding-left: 12px;
   overflow-x: hidden;
}

.collapsible-section {
   background: white;
}

.row-title {
   font-weight: bold;
   padding-top: 5px;
   padding-right: 7px;
   padding-left: 0px;
}

.icon-alignment {
   margin-top: 4px;
   margin-left: 4px;
}

.member-collapse-link {
   font-weight: bold;
}
/* duplicates above style */
.main-text-color {
   color: #333333;
}

.main-text-color-bold {
   color: #333333;
   font-weight: bold;
}

.committee-member-vote {
   padding-left: 15px;
   display: table-row;
}

.accordion-group {
   border: 0;
   cursor: pointer;
}

.vote-aye {
   color: green;
}

.vote-nay {
   color: red;
}

.access-marker-legend {
   font-size: 11px;
   float: left;
   padding-top: 5px;
   width: 100%;
   background: #dfdfdf;
   padding-bottom: 5px;
   height: 17px;
}

.access-marker-legend-dot {
   display: inline-block;
   height: 10px;
   width: 10px;
   text-align: left;
   margin-right: 5px;
}

.access-marker-dot {
   display: inline-block;
   height: 14px;
   width: 14px;
   text-align: left;
   margin-right: 5px;
}

.access-marker-committee {
   background: #748aaf;
}

.access-marker-building {
   background: #5d250c;
}

.access-marker-public {
   background: #009f7c;
}

.access-marker-chair {
   background: #e14900;
}

.dotted-filler {
   border-bottom: 1px dotted;
   margin-top: -6px;
}
/* for when we want to keep an element in the flow but keep it hidden */
.invisible {
   visibility: hidden;
}

.horiz-scrollbar {
   overflow-x: auto;
}

.third-reading-header {
   font-weight: bold;
}

.small-indent {
   margin-left: 9px;
}

.medium-indent,
.third-reading-list .medium-indent {
   margin-left: 13px;
}

.large-indent {
   margin-left: 17px;
}

.session-reading {
   padding-left: 15px;
}

.measure-item-table {
   width: 93%;
}

.pending-subsequent-list {
   padding-top: 15px;
   margin-left: 0;
}

.adopted-amendment {
   background: #AAAAAA;
}

.data-table .sorting {
   cursor: pointer;
   background: url(../Images/sort-both.png) no-repeat center right;
   padding-right: 20px;
}

.data-table .sorting_asc {
   cursor: pointer;
   background: url(../Images/sort-asc.png) no-repeat center right;
   padding-right: 20px;
}

.data-table .sorting_desc {
   cursor: pointer;
   background: url(../Images/sort-desc.png) no-repeat center right;
   padding-right: 20px;
}

.scheduled-events {
   margin-top: 15px;
   margin-bottom: 15px;
}

.width150 {
   width: 150px;
}

.rule-suspension {
   width: 50px;
   font-style: italic;
}

.medium-top-padding {
   padding-top: 20px;
}

.measure-desc {
   min-height: 100px;
   margin-bottom: 15px;
}

   .measure-desc:nth-child(odd) {
      background: #f4f4f4;
   }

.disabled-arrow {
   visibility: hidden;
   cursor: none;
}

.disclaimer {
   color: silver;
   font-size: 10px;
   padding-left: 12px;
   padding-right: 0px;
   padding-top: 10px;
}

.subheader {
   background: #b3ac9f;
   background: #dfdfdf;
   padding: 3px;
   -moz-box-sizing: border-box;
   -webkit-box-sizing: border-box;
   box-sizing: border-box;
   border-radius: 2px;
}

.meeting-type-description {
   font-weight: 600 !important;
}

.collapse {
   overflow: hidden;
}

.flyout-content {
   padding-top: 25px;
   width: 270px;
}

.btn-lineheight-fix {
   line-height: 1.3;
}

.input-append-fix {
   margin-left: -23px;
   border-top-right-radius: 15px;
   border-bottom-right-radius: 15px;
}

.mobile-header-text {
   color: #013370;
   font-size: 1.2em;
   font-weight: bold;
   padding-left: 15px;
}

.thumbnails {
   list-style: none;
   margin: 0;
   padding: 0;
}

.mobile-page-menu {
   background-color: #fdfdfd;
   padding-left: 15px;
}

   .mobile-page-menu a,
   .mobile-page-menu a:visited {
      color: #333;
   }

.mobile-menu-li {
   background: #f6f6f6 url('../images/nav-bg.png') repeat-y right top;
}

   .mobile-menu-li > a {
      padding-top: 10px;
      padding-bottom: 10px;
      display: block;
      border-bottom-color: #bbbbc5;
      border-bottom-style: solid;
      border-bottom-width: 1px;
   }

i.mobile-nav-icon {
   color: #d8d8d8;
}
/* styles for comments */
.username {
   font-weight: bold;
}

.timeago {
   color: #474747;
}
/* kind of a hack */
#comment0Row .comment-edit-link {
   display: none;
}

.edit-show {
   display: none;
}


#commentsMain .collapse {
   overflow: visible;
}

.commentIcon {
   margin: 5px;
}

.empty-glyph {
   color: white;
   font-size: 13px;
   text-shadow: -1px -1px 0 #428bca, 1px -1px 0 #428bca, -1px 1px 0 #428bca, 1px 1px 0 #428bca;
}

.typeahead,
.tt-query,
.tt-hint {
   width: 396px;
   height: 34px;
   padding: 1px 12px;
   font-size: 18px;
   border: 1px solid #ccc;
   /*-webkit-border-radius: 4px;
   -moz-border-radius: 4px;
   border-radius: 4px;*/
   outline: none;
   -moz-box-sizing: border-box;
   -webkit-box-sizing: border-box;
   box-sizing: border-box;
}

.typeahead {
   background-color: #fff;
}

   .typeahead:focus {
      border: 1px solid #0097cf;
   }

.tt-query {
   -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
   -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
   box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}

.tt-hint {
   color: #999999;
}

.tt-dropdown-menu {
   margin-top: 12px;
   padding: 8px 0;
   background-color: #fff;
   border: 1px solid #ccc;
   border: 1px solid rgba(0, 0, 0, 0.2);
   -webkit-border-radius: 8px;
   -moz-border-radius: 8px;
   border-radius: 8px;
   -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
   -moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
   box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
}

.tt-suggestion {
   padding: 3px 20px;
   font-size: 18px;
}

   .tt-suggestion.tt-cursor {
      color: #fff;
      background-color: #0097cf;
   }

   .tt-suggestion p {
      margin: 0;
   }

.gist {
   font-size: 14px;
}

.tt-input {
   padding-top: 1px;
   padding-bottom: 1px;
}

body {
   height: 100%;
   background-position: top;
   background-color: #f5f1f2;
}

header {
   min-height: 125px;
   background-image: url(https://www.oregonlegislature.gov/Documents/OLIS/header-no-logo.jpg);
   max-height: 125px;
   height: 125px;
}

#center-backdrop {
   background: white;
   width: 1140px;
   margin: 0 auto;
}

#center-content {
   /* background: url(../Images/content-background.png); */
   margin: 0 auto;
   /*margin-top: -47px;*/
   min-height: 625px;
   padding: 15px;
   /*padding-top: 50px;*/
   background-color: #fdfdfd;
}

   #center-content .container .row:first-child {
      margin: 0 auto;
   }

.header {
   color: white;
   /*#181511;*/
   background: #b3ac9f;
   padding: 4px;
   -moz-box-sizing: border-box;
   -webkit-box-sizing: border-box;
   box-sizing: border-box;
   border-radius: 2px;
   /* color the icons in the headers, as of bootstrap3 this is a font instead of an image */
}

   .header a:focus {
      text-decoration: none;
   }

   .header a {
      color: white;
   }

      .header .glyphicon,
      .header a .glyphicon {
         color: #1d190f;
      }

.collapse table {
   margin-left: 0px;
}

/* HORIZONTAL NAVIGATION BAR
/////////////////////////////////////*/
ul#navigation {
   width: 345px;
   list-style: none;
   height: 68px;
   margin: 0 0 10px 0;
}

/*ul#navigation {
   width: 345px;
   margin: 0 auto;
   display: block;
}*/

   ul#navigation li {
      display: inline;
   }

      ul#navigation li a {
         height: 68px;
         float: left;
         text-indent: -9999px;
         text-decoration: none;
      }

         ul#navigation li a span {
            float: left;
            display: block;
         }

      ul#navigation li#navigation-1 a {
         width: 69px;
         background: url(../images/navigation-stack.png) no-repeat 0px 0;
      }

         ul#navigation li#navigation-1 a .current {
            background-position: 0px -136px;
         }

         ul#navigation li#navigation-1 a:active,
         ul#navigation li#navigation-1 a:hover {
            background-position: 0px -68px;
         }

      ul#navigation li#navigation-2 a {
         width: 69px;
         background: url(../images/navigation-stack.png) no-repeat -69px 0;
      }

         ul#navigation li#navigation-2 a .current {
            background-position: -69px -136px;
         }

         ul#navigation li#navigation-2 a:active,
         ul#navigation li#navigation-2 a:hover {
            background-position: -69px -68px;
         }

      ul#navigation li#navigation-3 a {
         width: 69px;
         background: url(../images/navigation-stack.png) no-repeat -138px 0;
      }

         ul#navigation li#navigation-3 a .current {
            background-position: -138px -136px;
         }

         ul#navigation li#navigation-3 a:active,
         ul#navigation li#navigation-3 a:hover {
            background-position: -138px -68px;
         }

      ul#navigation li#navigation-4 a {
         width: 69px;
         background: url(../images/navigation-stack.png) no-repeat -207px 0;
      }

         ul#navigation li#navigation-4 a .current {
            background-position: -207px -136px;
         }

         ul#navigation li#navigation-4 a:active,
         ul#navigation li#navigation-4 a:hover {
            background-position: -207px -68px;
         }


      ul#navigation li#navigation-5 a {
         width: 69px;
         background: url(../images/navigation-stack.png) no-repeat -276px 0;
      }

         ul#navigation li#navigation-5 a .current {
            background-position: -276px -136px;
         }

         ul#navigation li#navigation-5 a:active,
         ul#navigation li#navigation-5 a:hover {
            background-position: -276px -68px;
         }

#navigation-mobile {
   margin: 0;
}

#navigation-flyout {
   position: absolute;
   z-index: 3000;
   background-color: #dacebf;
   /* -moz-opacity: 1; */
   opacity: 1;
   border: 1px solid #f0ede7;
   height: 525px;
   overflow: auto;
   width: 286px;
   display: none;
}

#navigation-flyout .nav-tabs {
   margin-left: 0px;
}

#navigation-flyout li.panel-group {
   /* override bootstrap's panel group for menu items '*/
   margin-bottom: 0;
}

/* for the checkboxes in the bill text search */
#navigation-flyout .controls-row input[type=checkbox] {
   margin-top: 0px;
   margin-right: 5px;
}

#billTextSearchResults {
   padding-left: 22px;
}

#measureOverviewTable tr td {
   padding-bottom: 8px;
}

a.print-link {
   padding-top: 7px;
   padding-right: 7px;
}

   a.print-link :before {
      content: "Print";
      padding-right: 7px;
   }

/*********************************************************************************/
/* Override bootstrap classes here, this would be better done through customizing the basic bootstrap package */
.nav-tabs > li > a {
   padding-top: 5px;
   padding-bottom: 5px;
   line-height: 20px;
   border: 1px solid transparent;
   -webkit-border-radius: 4px 4px 0 0;
   -moz-border-radius: 4px 4px 0 0;
   border-radius: 4px 4px 0 0;
   color: #2c2c2c;
   font-weight: bold;
   font-size: 0.8em;
   background-color: #bba98f;
}

.nav-tabs > .active > a,
.nav-tabs > .active > a:hover {
   color: #000;
   cursor: default;
   background-color: #dacebf;
   border-bottom-color: transparent;
   /*border: 2px solid rgb(240,237,231);*/
}

.nav-links > li > a:hover {
   text-decoration: none;
   background-color: #a5947b;
}

.nav-tabs > li > a.no-tab,
.nav-tabs > li > a.no-tab:hover {
   background-color: transparent !important;
   border: none;
   color: #08c;
   font-size: 14px;
   font-weight: normal;
   vertical-align: text-bottom;
   margin-top: 8px;
}

   .nav-tabs > li > a.no-tab:hover {
      color: #005580;
   }

.input-append input,
.input-prepend input,
.input-append select,
.input-prepend select,
.input-append .uneditable-input,
.input-prepend .uneditable-input {
   font-size: 12px;
}

.navbar-nav {
   list-style: none;
}

.navbar {
   margin-top: 10px;
   margin-bottom: 0;
}

#navbar {
   margin-top: 300px;
   position: absolute;
   margin-left: 30px;
   width: 299px;
   right: 66px;
}

/*********************************************************************************/
.nav-tabs li > a {
   padding: 8px;
}

.nav-links > li {
   margin-right: 2px;
   margin-top: 3px;
}

.table {
   margin-bottom: 0px;
}

#collapseMeasureSummary {
   padding-right: 5px;
}

#meetingsTree {
   background: #f9f9f9;
   padding-left: 15px;
}
/* keep colors consistent, even with links*/
li a strong {
   color: #333333;
}

div.votes-report {
   /* div.votes-report instead of just .vote-report increases specificity, probably a better way */
   display: table-row;
}

[class*=vote-exc] {
   color: #000000;
}

#legend ul li {
   float: right;
   padding-right: 5px;
}

.multiselect ul {
   height: 200px;
   overflow-y: auto;
   overflow-x: hidden;
}

.table-striped tbody tr.completed-item:nth-child(odd) td,
.table-striped tbody tr.completed-item:nth-child(odd) th {
   background: #dfdfdf;
}

.session-reading > li {
   margin-bottom: 5px;
}
/* bootstrap override */
.thumbnails.small-bottom-margin > li {
   margin-bottom: 0px;
}

li > a.current-measure-version,
a.current-measure-version {
   font-weight: bold;
}

input.input-validation-error:focus {
   border-color: #e9322d;
}

ul.striped li {
   border-top: 1pt solid #ddd;
}

ul.striped:nth-child(odd) li {
   background-color: #f9f9f9;
}

@media (min-width: 767px) {
   .tabspace {
      margin-left: 20px;
   }
}

@media (max-width: 767px) {
   .tabspace {
      margin-left: 0px;
   }
}

/* bootstrap 3 fixes */
ul,
ol {
   padding: 0;
   margin: 0 0 10px 25px;
}

input.search-query {
   padding-right: 14px;
   padding-right: 4px \9;
   padding-left: 14px;
   padding-left: 4px \9;
   margin-bottom: 0;
   -webkit-border-radius: 15px;
   -moz-border-radius: 15px;
   border-radius: 15px;
}

.form-search .input-append .btn {
   -webkit-border-radius: 0 14px 14px 0;
   -moz-border-radius: 0 14px 14px 0;
   border-radius: 0 14px 14px 0;
}

#billsTop {
   margin: 0 0 10px 25px;
}

textarea:focus,
input[type="text"]:focus,
input[type="password"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="time"]:focus,
input[type="week"]:focus,
input[type="number"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="color"]:focus,
.uneditable-input:focus {
   border-color: rgba(82, 168, 236, 0.8);
   outline: 0;
   outline: thin dotted \9;
   -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
   -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
   box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
}

/* /bootstrap 3 fixes */
#mobile-navbar {
   margin-top: 0;
   width: 100%;
   padding-left: 0;
   padding-right: 0;
}

   #mobile-navbar nav {
      margin-top: 0;
      margin-bottom: 0;
   }

   #mobile-navbar .default-main-nav {
      background: url(../Images/OLIS_Mobile_bg.png);
   }

   #mobile-navbar a.navbar-brand {
      color: #fff;
   }

   #mobile-navbar button.navbar-toggle .icon-bar {
      background-color: #fff;
   }

#mobile-main-menu-bar-mobile-collapse {
   background: #f6f6f6 url('../images/nav-bg.png') no-repeat right top;
   padding-left: 0;
   padding-right: 0;
   /*height: 110px;*/
}

#mobile-main-menu-bar ul {
   width: 100%;
}

   #mobile-main-menu-bar ul > li {
      /*height: 20px;*/
      display: block;
      width: 100%;
      text-align: left;
   }

#measureTextMenu .dropdown-menu a {
   display: inline-block;
   padding-right: 0px;
}

#measureTextMenu li {
   width: 230px;
}

.dropdown-menu a.inline-menu-link {
   padding: 0;
   margin-left: 5px;
   margin-right: 5px;
   display: inline;
}

.pdf-link {
   background: url("../Images/pdficon_small.png");
   padding-left: 16px;
   background-repeat: no-repeat;
}

#measureTextMenu .dropdown-menu a.menu-link {
   padding-right: 0;
   margin-right: 55px;
}

#measureTextMenu .dropdown-menu a.padded-link {
   padding-right: 60px;
   /*outline: blue;
    outline-width: 1px;
    outline-style: dotted;*/
}

span.link-icons {
   float: right;
   margin-left: 5px;
   margin-top: -22px;
}

   span.link-icons.canAnnotate {
      width: 60px;
   }

.flyout-navlist {
   margin-left: 15px;
   margin-top: 8px;
}

   .flyout-navlist li {
      padding-top: 5px;
      border-bottom: 1px dotted #bbb;
      padding-bottom: 3px;
   }

   .flyout-navlist,
   .flyout-navlist > li > ul > li > ul > li:last-child,
   .flyout-navlist > li > ul > li:last-child {
      padding-top: 5px;
      border-bottom: none;
      padding-bottom: 3px;
   }

.commentIcon .loading {
   display: none;
}
/* for the menu-bar on the measure overview page*/
#menu-bar .dropdown-menu > li > a {
   padding-right: 60px;
}

.selected {
   font-weight: bold;
}

.comment-container {
   /* This allows our source to contain white space for 
   readibility without affecting the comment formatting  */
   font-size: 0;
}

.comment-text {
   font-size: 14px;
}

.preserve-whitespace {
   white-space: pre-wrap;
}

   .preserve-whitespace.in {
      display: inline;
   }

.comment-control-icon,
.comment-edit-link,
.comment-delete-link {
   padding-left: 4px;
}

li.measure-desc.row .pdf-link {
   display: none;
}

i.informational-icon {
   color: #616161;
}

.btn-custom {
   color: #04c;
}

.btndisable {
   background-color: #ddd;
}

   .btndisable > span {
      color: rgba(255,255,255,0.9);
   }

.uploadify-button-new {
   height: 28px;
   padding: 0 10px 0 10px;
   min-width: 110px;
   border-radius: 15px;
   background-color: #595858;
   color: white;
   text-align: center;
   font-weight: 400;
   border-style: none;
}

   .uploadify-button-new:hover {
      background-color: #7d7b7b;
      color: white;
   }

   .uploadify-button-new:active {
      background-color: #7d7b7b;
      color: white;
   }

   .uploadify-button-new:focus {
      outline: none;
   }

label.uploadify-button-new {
   padding-top: 5px;
}

table.dataTable thead th, table.dataTable thead td {
   border-bottom: 0px;
}

table.dataTable.no-footer {
   border-bottom: 0px;
}

.span-link {
   white-space: nowrap;
   color: #428bca;
   cursor: pointer;
}

/* Desktop/tablet: show table layout, hide mobile layout */
.appt-desktop {
   display: block;
}

.appt-mobile {
   display: none;
}

.appt-header-row {
   margin-bottom: 8px;
   margin-top: 5px;
}

@media (max-width: 767px) {
   .appt-desktop {
      display: none;
   }

   .appt-mobile {
      display: block;
   }
}

/* Table-style row formatting for desktop */
.appt-row {
   display: flex;
   flex-wrap: wrap;
   border-bottom: 1px solid #ccc;
   margin-bottom: 8px;
   padding-bottom: 8px;
}

.appt-field {
   flex: 1 1 16%;
   min-width: 120px;
   padding: 2px 8px;
}

.appt-label {
   display: none;
   font-weight: bold;
}

/* Mobile: label-value pairs, one per line */
@media (max-width: 767px) {
   .appt-row {
      border-bottom: 1px solid #ccc;
      margin-bottom: 2px;
      padding-bottom: 2px;
      display: block;
   }

   .appt-field {
      display: block;
      padding: 4px 8px;
   }

   .appt-label {
      display: inline;
      font-weight: bold;
      margin-right: 4px;
   }

   .appt-value {
      display: inline;
   }
}