.nav, .pagination, .carousel, .panel-title a { cursor: pointer; }

table.component-hierarchy { text-align:center; border: 0; }
table.component-hierarchy td:empty { border:0; }
table.component-hierarchy td ul { display: table; margin:0 auto; padding:0; list-style-type:none; text-align: left; }

ul.undecorated {  margin:0; padding:0; list-style-type:none; }

.clickable { cursor: pointer; }
.clickable-link { /*from bootstrap: a*/ color: #007bff !important; }
.clickable-link:hover, .clickable-link:focus { /*from bootstrap: a*/ color: #0056b3; text-decoration:underline; }
.clickable:hover .clickable-link, .clickable:focus .clickable-link { /*from bootstrap: a*/ color: #0056b3; text-decoration:underline; }

.navbar-inverse .navbar-brand { color: #ddd; }
.navbar-inverse .navbar-nav>li>a { color: #bbb; }

td .edit-alert { margin-top:8px; margin-bottom:0; }

input[type=number].text-right { appearance: textfield; }

/* Title bar text continues under the right nav, rather than wrapping */
@media (min-width:768px){
	.navbar-nav.navbar-right { margin-left:-500px; background-color: #222; position:relative; }
}

.brand-logo { background: url('/logo.png') no-repeat 15px; padding-left: 110px; }
@media (max-width:600px){
	.brand-logo { background: url('/logo.png') no-repeat 5px; padding-left: 90px; font-size:16px; }
}

.nowrap { white-space:nowrap; }

h1, .h1, h2, .h2, h3, .h3 {
	padding-bottom: 5px; /* High level headings get a light horizontal rule underneath */
	border-bottom: 1px solid #f2f2f2;
}

.modal-title {
	padding-bottom: 0;
	border-bottom: 0;
}

.raise-issue {
	color: #A94442
}

.form-inline .has-feedback .form-control-feedback {
	top:0;
}

/* Removes left/right padding on small devices */
@media (max-width:767px){
	.row .no-col-pad-xs > div {
		padding-left: 0;
		padding-right: 0;
	}
}

/* Smaller headings on tiny screens, bootstrap default in comment */
@media (max-width:767px){
	h1, .h1 { font-size: 26px; /*36px*/ }
	h2, .h2 { font-size: 20px; /*30px*/ }
	h3, .h3 { font-size: 18px; /*24px*/ }
	h4, .h4 { font-size: 16px; /*18px*/ }
}

/* Add some padding to raise issue buttons for iPhones, as they seem to have difficulty clicking near the right edge */
/* Also extra padding for tree icons in the menu, which again iPhone has trouble registering clicks on*/
@media (max-width:359px){
	.navbar .abn-tree .tree-icon,
	.raise-issue.pull-right {
		padding-left: 8px;
		padding-right: 8px;
	}
}

.navbar-fixed-top .navbar-collapse, .navbar-fixed-bottom .navbar-collapse {
	max-height: none;
}

.navbar-fixed-top, .navbar-fixed-bottom {
	max-height: 100%;
	overflow-y: auto;
}

.nav .abn-tree {
	background-color: #e5e5e5;
}

.table-ratings input { min-width: 120px; }

/* Needs testing on win8 metro IE. from http://stackoverflow.com/questions/17045132/scrollbar-overlay-in-ie10-how-do-you-stop-that */
@-ms-viewport{ width: auto !important; }

/**** Login page ****/

body.signin {
  padding-top: 40px;
  padding-bottom: 40px;
  background-color: #eee;
}

.form-signin {
  max-width: 320px;
  padding: 15px 10px;
  margin: 0 auto;
}
.form-signin h2 { font-size: 26px; }
.form-signin h3 { font-size: 22px; }

@media (max-width:767px){
	.form-signin {
	  margin-top:-50px;
	}
}

.form-signin .form-signin-heading,
.form-signin .checkbox {
  margin-bottom: 10px;
  margin-top:0;
}
/*
.form-signin .checkbox {
  font-weight: normal;
  margin-left:20px;
}
*/
.form-signin .form-control {
  position: relative;
  height: auto;
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
  padding: 10px;
  font-size: 16px;
}
.form-signin .form-control:focus {
  z-index: 2;
}
.form-signin input[type="email"] {
  margin-bottom: -1px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.form-signin input[type="password"] {
  margin-bottom: 10px;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.form-signin .has-feedback label.sr-only~.form-control-feedback { top:5px; }

.table tbody>tr>td.vert-align { vertical-align: middle; }

td .checkbox { margin-top:5px; margin-bottom: 5px; }

/**** Dashboard ****/

/*
 * Base structure
 */

/* Move down content because we have a fixed navbar that is 50px tall */
body {
  padding-top: 64px;
}

/*
 * Top navigation
 * Hide default border to remove 1px line.
 */
.navbar-fixed-top {
  border: 0;
}

/*
 * Sidebar
 */

/* Hide for mobile, show later */
.sidebar {
  display: none;
}
@media (min-width: 768px) {
  .sidebar {
    position: fixed;
    top: 51px;
    bottom: 0;
    left: 0;
    z-index: 1000;
    display: block;
    padding: 20px;
    overflow-x: hidden;
    overflow-y: auto; /* Scrollable contents if viewport is shorter than content. */
    background-color: #f5f5f5;
    border-right: 1px solid #eee;
  }
}

/* Sidebar navigation */
.nav-sidebar {
  margin-right: -21px; /* 20px padding + 1px border */
  margin-bottom: 20px;
  margin-left: -20px;
}
.nav-sidebar > li > a {
  padding-right: 20px;
  padding-left: 20px;
}
.nav-sidebar > .active > a,
.nav-sidebar > .active > a:hover,
.nav-sidebar > .active > a:focus {
  color: #fff;
  background-color: #428bca;
}


/*
 * Main content
 */

.main {
  padding: 10px;
}
@media (min-width: 768px) {
  .main {
    padding-right: 40px;
    padding-left: 40px;
	padding-top: 20px;
	padding-bottom: 20px;
  }
}
.main .page-header {
  margin-top: 0;
  margin-bottom: 5px;
  padding-bottom: 5px;
}


/**** Component Icons ****/
.compicon {
	position: relative;
	top: 0px;
	line-height: 1.42857143; /* bootstrap body default */
}

.compicon:before {
	display: inline-block;
	vertical-align: top;
	background-size: 1.3em 1.3em;
	background-repeat: no-repeat;
	height: 1.4em;
	width: 1.4em;
}

.compicon-area:before { content: ' '; background-image: url("icons/area.svg"); }
.compicon-cable:before { content: ' '; background-image: url("icons/cable.svg"); }
.compicon-core:before { content: ' '; background-image: url("icons/core.svg"); }
.compicon-device:before { content: ' '; background-image: url("icons/device.svg"); }
.compicon-enclosure:before { content: ' '; background-image: url("icons/enclosure.svg"); }
.compicon-instrument:before { content: ' '; background-image: url("icons/instrument.svg"); }
.compicon-line:before { content: ' '; background-image: url("icons/line.svg"); }
.compicon-plccard:before { content: ' '; background-image: url("icons/plccard.svg"); }
.compicon-tank:before { content: ' '; background-image: url("icons/tank.svg"); }
.compicon-terminal:before { content: ' '; background-image: url("icons/terminal.svg"); }
.compicon-terminalstrip:before { content: ' '; background-image: url("icons/terminalstrip.svg"); }
.compicon-valve:before { content: ' '; background-image: url("icons/valve.svg"); }
.compicon-wire:before { content: ' '; background-image: url("icons/wire.svg"); }
.compicon-document:before { content: ' '; background-image: url("icons/leaf.svg"); }

.compicon-pdf:before { content: ' '; background-image: url("icons/pdf.svg"); }

.compicon-leaf:before { content: ' '; background-image: url("icons/leaf.svg"); }
.compicon-expand:before { content: ' '; background-image: url("icons/expand.svg"); }
.compicon-collapse:before { content: ' '; background-image: url("icons/collapse.svg"); }

.compicon-folder:before { content: ' '; background-image: url("icons/folder.svg"); }

.icon-color-dark { color : rgba(32, 33, 40, 0.86)}

/* Edit button style class modelled after bootstraps btn-default class */
.btn-edit {
	color: #960;
	background-color: #ffffe2;
	border-color: #E0C18D;
}
.btn-edit:hover, .btn-edit:focus, .btn-edit:active, .btn-edit.active, .open>.dropdown-toggle.btn-edit {
	color: #333;
	background-color: #F7F0BE;
	border-color: #960;
}

table.tutorial-results tbody tr { background-color: #FFEAEA; }
table.tutorial-results tbody tr.correct { background-color: #F0FFEA; }

.dash-video-player video {
    width: 100%;
    max-height: 70vh;
    background-color: #000;
}

.dash-video-player:fullscreen video {
    max-height: 100%;
}

course-card .bg-expired {
    background-color:#ffe0e0;
}

course-card .bg-disabled {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' height='100px' width='100px'><text transform='rotate(-45, 50, 50)' x='4' y='58' fill='%23c0c0c0' font-size='24' font-family='Helvetica, Arial, sans-serif'>Disabled</text></svg>");
}

course-card .card-img-top {
    border-bottom: 1px solid rgba(0,0,0,0.125);
}

.btn.disabled:hover, .btn:disabled:hover {
    cursor:not-allowed;
}

nav.page-breadcrumb {
    font-size: 0.8rem;
}

nav.page-breadcrumb .breadcrumb {
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
    padding: 0.375rem 0.5rem;
}

.tcm-sidebar a {
    
}

.tcm-sidebar .icon {

}

/*.tcm-sidebar-tree {
    position: sticky;
    height: calc(100vh - 13rem);
    overflow-y: auto;
}*/

.tcm-sidebar-tree .entry {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.tcm-sidebar-tree .entry[data-selected="true"] {
    font-weight: bold;
}

.tcm-sidebar-tree .entry .grabhandle {
    cursor: grab;
}

.tcm-question {
    padding-left: 0.5rem;
    border-left-style: solid;
    border-left-width: 2px;
    border-left-color: #28a745;
}

.tcm-question-disabled {
    border-left-color: red;
}

.tcm-question-editing {
    border-left-color: gold;
}

.tcm-form-value-changed {
    border-color: gold;
    border-width: 2px;
}

.tcm-editable-block .tcm-edit-btn {
    display: none;
}

.tcm-editable-block:hover .tcm-edit-btn {
    display: inline-block;
    margin-top: -0.5rem;
    margin-bottom: -0.5rem;
}


.icon.inline-l {
    font-size: 1.4rem;
    display: inline-block;
    vertical-align: middle;
    margin-top: calc(-0.5em - 0.2rem);
    margin-bottom: -0.5em;
    line-height: 0;
}

.icon.inline-xl {
    font-size: 2rem;
    display: inline-block;
    vertical-align: middle;
    margin-top: calc(-0.5em - 0.2rem);
    margin-bottom: -0.5em;
    line-height: 0;
}

.drop-box {
    background: #EFF6FF /*#F8F8F8*/;
    border: 5px dashed #60AFFF /*#DDD*/;
    width: 100%;
    text-align: center;
    padding: 50px 10px;
}
