@charset "utf-8";

/*///////////////////////////////////////////////////////////////////////
//created for FEDLink SSS site - externalized
//handcoded by Dawn Gower-Godfrey, JAG-Global
//dawn.gowergodfrey@jaggloballearning.com
//player housing with ToC and Transcripts is completely self-contained for portability
//videos and transcripts are in a state of hidden/visible, based on which title is activated in the ToC
//dynamic code implemented where possible, like assigning the tabindex order to over 150 elements, because the tab flow is not "straight" top to bottom
//playbar is completely custom made and dynamically syncs to whichever video is "visible/active"
//coded to meet 508 compliance standards of 2017, which matches WCAG 2.0 A rating, of ISO 2012: https://www.section508.gov/manage/program-roadmap/
//finalized Dec 2024
////////////////////////////////////////////////////////////////////////*/
body {
    font-family: 'Franklin Gothic ATF - regular', sans-serif;
	font-style: normal;
	font-size: 14px;
    margin: 0;
    background-color: #000;
    display: flex;
    height: 100vh;
}
.currentmenu_highlighted {
    background: #ccc;
    color: #000;
    border: 2px solid black !important;
}
.menuitm {
    border: 1px solid white;
}
.menuitm a:hover {
    background: #ccc;
    color: #000;
	border: 2px solid #EE522D;
}
.menuitm a:focus {
    background: #ccc;
    color: #000;
	border: 2px solid #EE522D;
}
.sctn-bold {
	font-weight: bold;	
		
}
.tab-container {
    display: flex;
    flex-direction: column;
	flex-grow: 1;
    width: 200px;
    background: #f4f4f4;
    box-shadow: 2px 0 5px rgba(0, 0, 0, 0.1);
	overflow: hidden;
	min-width: 200px;
	min-height: 658px;
	max-height: 720px;
    bottom: 0px;
}
.logo-container {
    background: #F5F5F5;
    text-align: block;
    padding: 10px;
}
.logo-container img {
    max-width: 100%;
    height: auto;
}
.tabs {
    display: flex;
    justify-content: space-around;
    background: #F5F5F5;
    cursor: pointer;
    border-radius: 10px 10px 0 0;
    margin-bottom: 0;
	
}
.tabs button {
    flex: 1;
    text-align: center;
    padding: 10px;
    border-radius: 10px 10px 0 0;
    background: gray;
    margin: 0;
    transition: background 0.3s;
    cursor: pointer;
}
.tabs button:hover, .tabs button:focus {
    background: #ccc;
}
.tabs button.active {
    background: white;
    font-weight: bold;
    border-bottom: 1px solid grey;
}
.tab-content {
    background: white;
    display: none;
    border-top: none;
	height: 500px;
	padding-bottom: 40;
	overflow-y: scroll;
	z-index: 6000;
}
.tab-content.active {
    display: flex;
	flex-grow: 1;
	flex-direction: column;
	position: relative;
    border: 2px solid gray;
    padding: 5px;
    visibility: visible;
	height: calc(50vh);
	
}
.tab-content a {
    display: block;
    padding: 10px;
    margin: 0;
    background: #e7e7e7;
    color: #333;
    text-decoration: none;
    transition: background 0.3s, color 0.3s;
    border-radius: 0;
    text-align: center;
    border: 1px solid white;
}
.tab-content a:hover {
    background: #ccc;
    color: #000;
	border: 2px solid #EE522D;
}
.tab-content a:focus {
    background: #ccc;
    color: #000;
	border: 2px solid #EE522D;
}
.script-content {
    background: white;
    display: none;
    border-top: none;
    width: calc(95%);
	z-index: 6000;
    overflow-y: scroll;
	padding: 5px;
    scroll-padding: 5px;
	padding-bottom: 40px;
}
.script-content.active {
    visibility: visible;
	
}
.script-content button {
    margin: 0;
	width: calc(95%);
}
.script-content button:hover {
    color: #000;
}
.content {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
	padding-top: 50px;
    height: auto;
    width: 1080px;
	background: #000;
	min-width: 1080px;
    /*video image sizes - must manually calculate to adjust for side bar spacing, as the total width must be fixed so the faux title tags and hotspots line up, no matter the zoom amount:      
		4320p (8k): 7680x4320.
		2160p (4K): 3840x2160.
		1440p (2k): 2560x1440.
		1080p (HD): 1920x1080.
		720p (HD): 1280x720. <--current resolution setup
		480p (SD): 854x480.
		360p (SD): 640x360.
		240p (SD): 426x240.*/
}
.video-css {
    position: absolute;
	display: flex;
    title: "Video" !important;
	background-color: black;
    width: 1080px;
    height: auto;
	padding-bottom: 40px;
}
.video-wrapper {
    position: relative;
    display: flex;
	flex-direction: row;
	background-color: black;
    flex-grow: 1;
	title: "Video Wrapper" !important;
    background: #000;
}
.hotspot {
	fill: transparent;
	opacity: 0;
	display:none;
	visibility: hidden;
    position: absolute;
    cursor: pointer;
	outline: none;
    stroke: #0072cf;
    stroke-width: 4;
    paint-order: stroke;
	z-index: 5000;
	
}
.hotspot:hover {
	opacity: 0;
}
.hotspot1 {
	height: 25px;
	width: 158px;
	left: 720px;
	top: 469px;
	resize: both;
}
.hotspot2 {
	height: 25px;
	width: 218px;
	left: 720px;
	top: 530px;
	resize: both;
}
.hotspot3 {
	height: 55px;
	width: 350px;
	left: 175px;
	top: 497px;
	resize: both;	
}
.hotspot4 {
	height: 25px;
	width: 455px;
	left: 565px;
	top: 362px;
	resize: both;	
}
.hotspot5 {
	height: 30px;
	width: 100px;
	left: 165px;
	top: 350px;
	resize: both;	
}
.hotspot6 {
	height: 60px;
	width: 345px;
	left: 715px;
	top: 523px;
	resize: both;
}
.hotspot7 {
	height: 25px;
	width: 100px;
	left: 169px;
	top: 353px;
	resize: both;
}
.hotspot8 {
	height: 25px;
	width: 145px;
	left: 480px;
	top: 207px;
	resize: both;
}
.hotspot9 {
	height: 30px;
	width: 265px;
	left: 87px;
	top: 303px;
	resize: both;
}
.hotspot22_1{
	height: 25px;
	width: 175px;
	left: 180px;
	top: 93px;
	resize: both;
}
.hotspot22_2{
	height: 25px;
	width: 225px;
	left: 150px;
	top: 172px;
	resize: both;
}
.hotspot22_3{
	height: 25px;
	width: 225px;
	left: 343px;
	top: 251px;
	resize: both;
}

.hotspot22_4{
	height: 25px;
	width: 340px;
	left: 170px;
	top: 330px;
	resize: both;
}
.hotspot22_5{
	height: 25px;
	width: 198px;
	left: 110px;
	top: 375px;
	resize: both;
}
.hotspot22_6{
	height: 25px;
	width: 145px;
	left: 110px;
	top: 419px;
	resize: both;
}
.hotspot22_7{
	height: 25px;
	width: 275px;
	left: 110px;
	top: 464px;
	resize: both;
}
.hotspot22_8{
	height: 25px;
	width: 100px;
	left: 110px;
	top: 503px;
	resize: both;
}
.hotspot22_9{
	height: 25px;
	width: 218px;
	left: 110px;
	top: 548px;
	resize: both;
}
.navigation-buttons {
    display: flex;
	flex-direction: row;
    justify-content:center;
    position:fixed;
    bottom: 0px;
	width: 100vw;
	left: 0px;
    height: 5vh;
    vertical-align: top;
	background: black;
	padding: 2px;
	
}
.navigation-buttons contents{
   
	vertical-align: top;
	
}
.navigation-buttons button {
	display: block;
	align-content: center;
	vertical-align: middle;
    border: none;
    background: black;
    cursor: pointer;
    border-radius: 5px;
    transition: background 0.3s;
    align-items: top;
	height:5vh;
	
	padding-bottom: 5px;
}
.navigation-buttons button:hover,
    .navigation-buttons button:focus {
        background: #cc411c;
        outline: ridge;
}

.navigation-buttons img {
	max-height: 4vh;
	vertical-align: top;
	
}
video::-webkit-media-controls {
  display:none !important;
}
#progress {
	background-color: white;
	color:#EE522C;
	width: 70em;
	vertical-align: middle;
}
progress::-moz-progress-bar { background: #EE522C; }
progress::-webkit-progress-value { background: #EE522C; }
#timer {
	color: white;
}


[role="tooltip"],
.hidetooltip.hidetooltip.hidetooltip + [role="tooltip"] {
  visibility: hidden;
  display: none;
  position: absolute;
  padding: 2px;
  padding-bottom: 5px;
  background: #E0DFDF;
  color: black;
  outline: ridge black 1px;
}
[aria-describedby]:hover,
[aria-describedby]:focus {
  position: relative;
}
[aria-describedby]:hover + [role="tooltip"],
[aria-describedby]:focus + [role="tooltip"] {
  display: block;
  visibility: visible;
  
}
.nav-title-tags{
	max-height: 3vh;
	font-size: calc(2vh);
	top: calc(-4.2vh);
	
	
} 
video::cue {
	line-height: 2;
	font-size: 1em;
}
.vdsz1 ::cue{
	font-size: 1em;
}
.vdsz1-5 ::cue{
	font-size: 1.5em;
}
.vdsz2 ::cue{
	font-size: 2em;
}
#keybd_instruc{
	top: 5rem;
	left: 0rem;
	width: 25rem;
	z-index: 90000;
	word-wrap: normal;
}