/*

CSS styling for basic structure for Opinto-opas

Use this to customize e.g. a new layout for Opinto-opas

Including also small external css files such as 'select2.css' and 'timeline.css' stylings + mainwrap.css

************************************** NOTE ****************************************************

 - Replace the codes #9E9E9E and #4DB6AC with new brand colors to get the most changes done. (Ctrl+F -> Replace all)
 - Replace the font 'Open Sans' with desired font
 - Check the details: logo etc...

***********************************************************************************************/

body {
    margin: 0;
    font-family: 'Open Sans', Arial, sans-serif;
    background-color: #fff;
    font-weight: 200;
    color: #000;
    font-size: 14px;
    background-attachment: scroll;
    background-clip: border-box;
    overflow-y: scroll; /*Jotta sivu ei pomppisi miten sattuu, kun valitaan tabeja tutkinnon sisällä */
    background-origin: padding-box;
    background-size: 100% 100%;
    min-width: 960px;
}

body b {
    font-weight: bold;
}

/*Bannerin wrapperi, sisältää mm. kolme wrapperia (wrapr1, wrapr2, wrapr3) kielivalinnalle,
linkille oppaan etusivulle ja opinto-opas-tekstille. */

#mainwrap {
    width: 100%;
    margin: 0 auto;
    font-size: 62.5%;
    line-height:1;
    background-color: #4DB6AC;
}

#mainwrap body {
    margin:0;
    padding:0;
}

#mainwrap a {
    text-decoration: none;
    color: #fff;
}

#mainwrap #header_fi .logo {
    float: left;
    margin-top: 3em;
}

.logo{
    content:url("../img/logo.png");
}

/**Wrapperi wrapr1, wrapr2 ja wrapr3 -wrappereille**/
#wrapper {
    display: block;
    margin: 0 auto;
    white-space: nowrap;
    height: 20em;
    margin-bottom: 4em;
    width: 88%;
}

/*Kielivalinta*/
#mainwrap #header_fi #wrapr1 {
    float: right;
    font-family: 'Open Sans', sans-serif;
    font-size: 11px;
    font-weight: normal;
    display: inline;
    margin-right: 2em;
    margin-top: 3em;
    padding: 0 0 5px 0;
    overflow: auto;
}

/*Opinto-oppaan etusivulle*/
#mainwrap #header_fi #wrapr2 {
    float: right;
    clear: right;
    margin-right: 2em;
    margin-top: 1em;
    font-family: 'Open Sans', sans-serif;
    font-size: 11px;
    font-weight: normal;
    display: inline;
    overflow: auto;
    height: 30px;
    text-align: right;
    line-height: 15px;
}

/*Opinto-opas-teksti*/
#mainwrap #header_fi #wrapper #wrapr3 {
    float: right;
    clear: right;
    margin-right: 2em;
    margin-top: 2em;
    font-family: 'Open Sans', sans-serif;
    font-size: 11px;
    font-weight: normal;
    display: inline;
    overflow: inherit;
    height: 30px;
    text-align: right;
    line-height: 15px;
}

/* Opinto-opas -teksti sivun yläoikealla, typeface */

.typeface-js-tunnus {
    color: #fff;
    font-family:  'Open Sans', sans-serif;
    font-size: 2.3em;
    letter-spacing: 0.03em;
    font-weight: normal;
}

/* Murupolku, breadcrumbs*/

#murupolku {
    clear: both;
    font-size: .8em;
    padding-top: 0.7em;
    padding-left: .6em;
    padding-bottom: .5em;
    color: #000;
    /*margin: 0 0 0 6em;
    /*max-width: 1280px;
    min-width: 960px;*/
}
/* Viimeinen eli aktiivinen on boldattu */
#murupolku .last {
    font-weight: bold;
    color: #4DB6AC;
}

/* Oppaan sisältö: vasen ja oikea palkki yhdessä **/
#opas_content {
    overflow: hidden;
    width: 90%;
    margin: 0 auto;
    background-color: #ffffff;
}
/*Määrittelyt vasemmalle palkille, content-left **/
.content-left {
    float: left;
    width: 27%;
    display: inline-block;
}
.content-left.narrow {
    width: 28%;
}

.content-left.narrow #opas_ops_valikko #types a {
    color: #000;
    background-color: #fff;
}

.content-left.narrow #opas_ops_valikko #types a:hover {
    color: #4DB6AC;
}

/*Määrittelyt oikealle palkille, content-right */

.content-right {
    display: inline-block;
    vertical-align: top;
    float: left;
    background: none repeat scroll 0 0 #ffffff;
    border-radius: 4px;
    box-shadow: 0 0 4px #c2c2c2;
    list-style: none outside none;
    margin-top: 0.5em;
    margin-left: 2em;
    padding: 1em 1%;
    width: 65%;
    margin-bottom: 4em;
}

.content-right.narrow {
    width: 66%;
}

.content-right.narrow span.name {
    width: 100%;
    color: #4DB6AC;
}

/**Opas-valikko, kun vasemmalla */

#opas_koulutusvalikko,
.content-left #opas_ops_valikko {
    background: none repeat scroll 0 0 #fff;
    border-radius: 4px;
    box-shadow: 0 0 4px #C2C2C2;
    list-style: none outside none;
    margin: .5em;
    padding: .5em;
}

/*Tutkintovalikko yleiset määrittelyt. Oikeassa palkissa aluksi, siirtyy vasemmalle palkille kun valitaan jokin tutkinto */
#opas_ops_valikko {
    float: left;
    width: 95%;
    max-width: 97%;
    list-style: none;
}

.opas_ops_koulutusvalikko:hover{
    background-color: #fff;
}

#opas_ops_valikko li:first-child {
    margin-top: 0;
}
#opas_ops_valikko li {
    display: block;
    color: #fff;
}

#opas_ops_valikko li:last-child {
    margin-bottom: 0;
}

#opas_ops_valikko ul {
    padding: 0;
    margin: 0;
    margin-bottom: 3px;
    overflow: hidden;
}
#opas_ops_valikko ul li {
    cursor: pointer;
    margin-top: 0;
    margin-bottom: 3px;
    color: #fff;
    background-image: none;
}

#opas_ops_valikko ul li a {
    display: block;
}
#opas_ops_valikko ul li.opas_specialisation_available { /**/
    background-image: url(../img/nappi.png);
}
#opas_ops_valikko ul ul {
    padding-left: 0;
}/*
#opas_ops_valikko ul li ul li {
  background-color: #F7F5F8;
}*/
#opas_ops_valikko ul li ul li a {
    padding: .5em;
}
#opas_ops_valikko ul li ul li a:hover {
    color: #4DB6AC;
}

#opas_ops_valikko ul ul li:last-child {
    margin-bottom: 5px;
}

#opas_ops_valikko ul li.active a {
    color: #4DB6AC;
    padding: .5em;
}
#opas_ops_valikko ul li.active a:before {
    content: "\25B8";
}


#opas_ops_valikko li span.name:hover{
    color: #4DB6AC;
}

#opas_ops_valikko li span.name.language {
    background-color: #4DB6AC; /*tai #6D6D6D*/
    color: #FFFFFF;
}

#opas_ops_valikko li span#toggle_suomenkielinen_language.name:hover, #opas_ops_valikko ul li.active a:hover {
    color: #4DB6AC;
}

.change-button {
    cursor: pointer;
    color: #fff;
    font-size: 0.7em;
    right: 0.3em;
    top: 25%;
    font-weight: normal;
    line-height: 1em;
    position: absolute;
}

.change-button .close,
.change-button .open {
    cursor: pointer;
    color: #fff;
    font-weight: bold;
    line-height: 1em;
    font-size: 3em;
    margin-right: .5em;
}

/* course unit dialog */
.opas_course_unit_dialog {
    box-shadow: -1px -1px 18px 0 rgba(0, 0, 0, 0.6);
    border-radius: 4px;
    overflow-x: hidden;
    background: none repeat scroll 0 0 #E7E6DF;
}
.opas_course_unit_dialog .ui-dialog-titlebar {
    border-bottom: 0;
}
.opas_course_unit_dialog .ui-dialog-content {
    border-top: 0;
    overflow-x: hidden;
    overflow-y: auto;
}
.opas_course_unit_dialog .ui-dialog-titlebar-close {
    margin-right: .1em;
    border: 0;
    border-radius: 2px;
    padding: 2px;
    background: #4DB6AC;
    margin-top: 2px;
    z-index: 1;
}

.opas_course_unit_dialog .ui-dialog-titlebar-close:hover {
    background: #000;
    margin-right: .1em;
    border: 0;
    border-radius: 2px;
    padding: 2px;
    margin-top: 2px;
    z-index: 1;
}
.opas_course_unit_dialog .ui-dialog-titlebar-close:focus,
.opas_course_unit_dialog .ui-dialog-titlebar-close:hover,
.opas_course_unit_dialog .ui-dialog-titlebar-close.ui-state-hover,
.opas_course_unit_dialog .ui-dialog-titlebar-close.ui-state-hover,
.opas_course_unit_dialog .ui-dialog-titlebar-close.ui-state-focus .ui-icon {
    background-color: #4DB6AC;
}

/* Koulutusohjelman nimi */


#opas_koulutusohjelman_nimi {
    font-weight: 200;
    margin: 0.5em 1%;
    color: #000;
}

/* Vuosiluku koulutusohjelman nimen alla */

.detail {
    margin: 1em ;
}

/* Välilehdet (Rakenne/Kuvaus) */

.ui-widget-content {
    border: none;
}
.ui-widget-header {
    border: none;
}
.ui-tabs {
    padding: 0;
}

.ui-tabs .ui-tabs-nav{
    border-bottom: 1px solid #efefef;
    margin: .6em 0 1em 1em;
}


/* Select2, tiputusvalikko */


.select2-container a{
    color: #000;
}
.select2-results .select2-highlighted {
    background: none repeat scroll 0 0 transparent;
}
.select2-results .select2-highlighted .select2-result-label {
    background: none repeat scroll 0 0 #9E9E9E;
    color: #000;
    border-color: #9E9E9E;
}
.select2-results .select2-highlighted .select2-result-label .value small {
    color: #000;
}

.select2-container .select2-choice,
.select2-dropdown-open .select2-choice,
.select2-container.select2-drop-above .select2-choice {
    border: 1px solid #dddddd;
}

.select2-container .select2-choice {
    background-image: none;
    background-color: #fff;
}

/* CSS Styling for short instructions  */
.opas-btn-ohje {
    font-size: small;
    margin: 1em 0 .5em 0;
}

/*------- Lukuvuosi ja -kausinapit ---------*/
/*Lukukaudet-palkki oikealla*/

#right {
    width: auto;
    display: inline-block;
    margin-left: 0.2em;
}

#timing-btns {
    clear: both;
    padding-top: 0.7em;
    padding-bottom: .4em;
}
.timing-btn-wrapper {
    display: inline-block;
    font-weight: normal;
}

.timing-btn-wrapper.active {
    font-weight: bold ;
    border: 1px solid #4DB6AC;
    color: #4DB6AC;
}

.timing-btn-top {
    display: block;
    float: left;
    min-width: 14%;
    padding: 0 1%;
    /*border: 1px solid #777;*/
    -webkit-border-top-left-radius: 3px;
    -webkit-border-top-right-radius: 3px;
    -moz-border-radius-topleft: 3px;
    -moz-border-radius-topright: 3px;
    border-top-left-radius: 3px;
    border-top-right-radius: 3px;
}
.timing-btn-bottom {
    display: inline-block;
}
.timing-btn-bottom .timing-btn {
    text-align: center;
    display: block;
    float: left;
    width: auto !important;
    padding: 0.1em 0.4em;
}

.timing-btn-bottom .timing-btn:last-child,
.timing-btn-bottom .timing-btn.last,
.timing-btn-bottom .timing-btn.last-border {
    border-right-width: 1px;
}
.timing-btn-bottom .timing-btn:last-child:after,
.timing-btn-bottom .timing-btn.last:after,
.timing-btn-bottom .timing-btn.last-border:after {
    /*content: ".";*/ /*Kommentoitu pois, koska aiheutti painikkeeseen pienen virheen*/
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}

.timing-btn-bottom:after:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}

/* Timing päättyy */

/*  CSS styling for table */

table#opas_rakenne tr td,
table.ops tr td {
    -moz-border-bottom-colors: none;
    -moz-border-left-colors: none;
    -moz-border-right-colors: none;
    -moz-border-top-colors: none;
    background: none repeat scroll 0 0 #67695E;
    border-image: none;
    border-style: solid solid solid none;
    border-width: 1px 1px 1px 0;
    color: #4DB6AC;
    padding-top: 8px;
    padding-bottom: 8px;
}
table#opas_rakenne tr.sum-row td,
table#opas_rakenne tr.total-sum-row td,
table.ops tr.sum-row td,
table.ops tr.total-sum-row td {
    background: #F2FAFA;
    border-color: #4DB6AC #ccc;
    border-top: 1px double #4DB6AC;
    color: #000;
}
table#opas_rakenne tr.total-sum-row td,
table.ops tr.total-sum-row td {
    background: none repeat scroll 0 0 #9E9E9E;
    border-color: #9E9E9E;
    color: #000;
}

table#opas_rakenne.offering,
table.ops.offering {
    border-collapse: collapse;
    margin: 0 auto;
    width: 98% !important;
}
table#opas_rakenne.offering tr td,
table.ops.offering tr td,
table#opas_rakenne.offering tr:hover td,
table.ops.offering tr:hover td,
table#opas_rakenne.offering tr:hover td:hover,
table.ops.offering tr:hover td:hover {
    border-width: 1px 0 1px 0;
}
table#opas_rakenne.offering tr:hover td,
table.ops.offering tr:hover td,
table#opas_rakenne.offering tr:hover td:hover,
table.ops.offering tr:hover td:hover {
    background: #4DB6AC;
    color: #fff;
}

.hidden {
    display: none;
}

/**Lukuvuosi ja lukukausinapit **/
.ops-btn {
    border: 1px solid;
    border-width: 1px 1px 1px 0px;
    font-weight: 200;
    padding: .5% 0;
    /*margin: 0.5% 0;*/
    text-decoration: none;
    cursor: pointer;
    border-color: #4DB6AC;
    color: #FFFFFF;
    background-color:#4DB6AC;
}

.ops-btn:first-child {
    border-width: 1px 1px 1px 1px;
}

.ops-btn:active:first-child,
.ops-btn.active:first-child {
    border-width: 1px 1px 1px 1px;
}

.ops-btn.active,
.ops-btn:active{
    border-color: #9E9E9E;
    background-color: #9E9E9E;
    color: #000;
}


.optionality {
    clear: both;
    color: #ECEAE0;
    display: block;
    font-size: smaller;
    margin-right: 1em;
}
tr.opas_study_module td .optionality {
    color: #C5C2B3;
}
td.opas_ajoitus_credits {
    text-align: center;
}
#opas_ajoitus_lukuvuosi_selection {
    width: auto;
}

#opas_rakenne tr.level-1 td:first-child,
.ops tr.level-1 td:first-child {
    padding-left: 15px;
}
#opas_rakenne tr.level-1 .optionality,
.ops tr.level-1 .optionality {
    color: #ECEAE0;
}
#opas_rakenne tr.level-2 td:first-child,
.ops tr.level-2 td:first-child {
    padding-left: 30px;
}
#opas_rakenne tr.level-2 .optionality,
.ops tr.level-2 .optionality {
    color: #221E1D;
}
#opas_rakenne tr.level-3 td:first-child,
.ops tr.level-3 td:first-child {
    padding-left: 45px;
}
/*Eduix Vs muutti 60->45*/
#opas_rakenne tr.level-4 td:first-child,
.ops tr.level-4 td:first-child {
    padding-left: 60px;
}
#opas_rakenne tr.level-5 td:first-child,
.ops tr.level-5 td:first-child {
    padding-left: 75px;
}
#opas_rakenne tr.level-6 td:first-child,
.ops tr.level-6 td:first-child {
    padding-left: 90px;
}
#opas_rakenne tr.level-7 td:first-child,
.ops tr.level-7 td:first-child {
    padding-left: 105px;
}
#opas_rakenne tr.level-8 td:first-child,
.ops tr.level-8 td:first-child {
    padding-left: 120px;
}
#opas_rakenne tr.level-9 td:first-child,
.ops tr.level-9 td:first-child {
    padding-left: 135px;
}
#opas_rakenne tr.level-10 td:first-child,
.ops tr.level-10 td:first-child {
    padding-left: 150px;
}
.ops tr.level-3 {
    cursor: pointer;
}
tr.level-4 td,
.ops tr.level-4 td {
    background: none repeat scroll 0 0 #FBFAF5;
    border-color: #ECEAE0;
    border-width: 1px 1px 0 0;
}


/*** Taulukko **/


/******* CSS style for the Timeline plugin *********/
/** Eli Ajoitussuunnitelma-graafi, joka näkyy pop-upissa, kun valitaan joku kurssi */

.timeline-textformat {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    font-size: 100%;
}
.timeline-container {
    height: 100%;
    margin: 0 auto;
}
.timeline-circles {
    position: relative;
    display: inline-block;
    vertical-align: top;
    cursor: pointer;
    -webkit-transition: all 0.4s ease-in;
    -moz-transition: all 0.4s ease-in;
    -ms-transition: all 0.4s ease-in;
    -o-transition: all 0.4s ease-in;
    transition: all 0.4s ease-in;
}
.timeline-textformat {
    -webkit-transition: all 0.4s ease-in;
    -moz-transition: all 0.4s ease-in;
    -ms-transition: all 0.4s ease-in;
    -o-transition: all 0.4s ease-in;
    transition: all 0.4s ease-in;
}
.timeline-circles:hover {
    -webkit-transform: scale(1.08);
    -webkit-transform-origin: 50% 50%;
    -moz-transform: scale(1.08);
    -moz-transform-origin: 50% 50%;
    -o-transform: scale(1.08);
    -o-transform-origin: 50% 50%;
    -ms-transform: scale(1.08);
    -ms-transform-origin: 50% 50%;
    transform: scale(1.08);
    transform-origin: 50% 50%;
}
.time-line-href {
    position: relative;
    top: 4px;
    font-size: 21px;
    text-decoration: none;
    height: 16px;
    width: 16px;
    display: inline-block;
    -webkit-border-radius: 21px;
    -moz-border-radius: 21px;
    border-radius: 21px;
    background: #000;
    color: #000;
}
.time-line-href.active {
    top: 1px;
    height: 21px;
    width: 21px;
}
.time-line-circle span {
    display: inline-block;
    font-size: 0.8em;
    left: 3px;
    line-height: 0.9em;
    position: absolute;
    text-align: center;
    top: -34px;
    width: 96%;
}
.time-line-circle {
    width: 100px;
    height: 15px;
    text-align: center;
    float: left;
    position: relative;
    top: -12px;
    color: #000;
}
#timeline-line {
    height: 1px;
    background: #000;
}
.circleLine {
    display: none;
    width: 13px;
    height: 13px;
    -webkit-border-radius: 13px;
    -moz-border-radius: 13px;
    border-radius: 13px;
    position: relative;
    top: 4px;
    left: 4px;
    background: #4DB6AC;
}
.circleLine.autumn {
    border-radius: 13px 0 0 13px;
    width: 7px;
}
.circleLine.spring {
    border-radius: 0 13px 13px 0;
    width: 7px;
    left: 10px;
}
.active .circleLine {
    display: block;
}


.ui-widget,
#opas_ops_tabs {
    font-family: 'Open Sans', Arial, sans-serif !important;
    font-weight: 200 !important;
}

#opas_ops_tabs {
    margin: 0;
}
a:link {
    text-decoration: none;
    color: #000;
}
a:link.back {
    font-size: smaller;
    margin-left: 2em;
}
a:visited {
    text-decoration: none;
    color: #000;
}
li {
    list-style: none;
}

/* Koulutusohjelma-n�kym� */
#opas_koulutusohjelma {
    padding: 1.5em 1em;
}
#opas_koulutusohjelma ul,
#opas_koulutusohjelma ul li,
#opas_koulutusohjelma ul li ul,
#opas_koulutusohjelma ul li ul li {
    padding: 0;
    margin: 0;
    color: #000;
}
#opas_koulutusohjelma ul.opas_opetussuunnitelmat_vuosi_selection,
#opas_koulutusohjelma ul.opas_tabs {
    border-bottom: 1px solid #efefef;
    color: #fff;
}
#opas_koulutusohjelma ul.opas_opetussuunnitelmat_vuosi_selection li,
#opas_koulutusohjelma ul.opas_tabs li {
    cursor: pointer;
    float: left;
    margin: 0.5em 0.5em -1px;
    padding: 0.5em 0.4em;
}

#opas_koulutusohjelma ul.opas_opetussuunnitelmat_vuosi_selection li,
#opas_koulutusohjelma ul.opas_tabs li,
#opas_ops_tabs li.ui-state-default.ui-corner-top {
    font-size: 1.1em;
    padding: 0.3em 0.7em;
    background: #4DB6AC;
    border: 0;
    margin-right: 1.3em;
    color: #fff;
}

#opas_koulutusohjelma ul.opas_opetussuunnitelmat_vuosi_selection li:last-child:after,
#opas_koulutusohjelma ul.opas_tabs li:last-child:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}
#opas_koulutusohjelma ul.opas_opetussuunnitelmat_vuosi_selection:after,
#opas_koulutusohjelma ul.opas_tabs:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}
#opas_koulutusohjelma ul.opas_opetussuunnitelmat_vuosi_selection {
    border-bottom: 0 solid #efefef;
}
#opas_koulutusohjelma ul.opas_opetussuunnitelmat_vuosi_selection li {
    cursor: pointer;
    float: left;
    margin: 0.5em 0.5em -1px;
    padding: 0.5em 0.4em;
}
#opas_koulutusohjelma ul.opas_opetussuunnitelmat_vuosi_selection li.active {
    font-weight: bold;
    border: 1px solid #fff;
    border-bottom: 1px solid #efefef;
}
#opas_koulutusohjelma .opas_opetussuunnitelmavuosi {
    clear: both;
    padding-top: 1em;
}
#opas_koulutusohjelma .opas_opetussuunnitelmavuosi > ul {
    margin-top: .4em;
}
#opas_koulutusohjelma .opas_opetussuunnitelmavuosi > ul > li.link {
    margin-bottom: 1em !important;
    margin-top: 1em;
}
#opas_koulutusohjelma .opas_opetussuunnitelmavuosi ul {
    margin-bottom: .6em;
}
#opas_koulutusohjelma .opas_opetussuunnitelmavuosi ul li {
    color: #000;
}
#opas_koulutusohjelma .opas_opetussuunnitelmavuosi ul li ul {
    margin-left: 1.2em;
}
#opas_koulutusohjelma .opas_opetussuunnitelmavuosi ul li.link a {
    color: #000;
    color: #4DB6AC;
    font-size: 1.1em;
}
#opas_koulutusohjelma .opas_opetussuunnitelmavuosi ul li span {
    font-weight: 600;
    display: inline-block;
    width: 100%;
}

/* rakenne */
table#opas_rakenne tr,
table.ops tr {
    background-color: #E2E2E2;
    color: #fff;
}

table#opas_rakenne tr.opas_study_module,
table.ops tr.level-1 {
    background-color: #F1F1F1;
    color: #363636;
}

table#opas_rakenne tr th,
table.ops tr th {
    background-color: #fff;
    padding-top: 1em;
    padding-bottom: 1em;
    color: #000;
}

.opas_timing_dot {
    width: 10px;
    height: 10px;
    background-color: #000;
    border-radius: 5px;
    margin: auto;
}
#opas_ops_tabs_rakenne table {
    border-collapse: collapse;
    margin: 0 auto;
    width: 100% !important;
}

#opas_ops_tabs_rakenne table tr.level-3:hover td,
#opas_ops_tabs_rakenne table tr.opas_course_unit:hover td {
    background-color: #4DB6AC ;
    color: #fff ;
    border-color: #ECEAE0;
    border-width: 1px 1px 0 0;
}
#opas_ops_tabs_rakenne table tr.level-3:hover td .opas_timing_dot,
#opas_ops_tabs_rakenne table tr.opas_course_unit:hover td .opas_timing_dot {
    background-color: #fff;
}
#opas_ops_tabs_rakenne table tr.opas_course_unit:hover {
    cursor: pointer;
}
#opas_ops_tabs_rakenne table tr.opas_offering:hover {
    cursor: pointer;
}
/* Eduix Vs */
table#opas_rakenne tr.opas_offering td {
    color:#000;
}

#opas_ops_tabs_rakenne table tr td {
    min-width: 10px;
}

#opas_ops_tabs_rakenne table tr th.opas_ajoitus_timing_periods {
    color: #fff;
    background-color: #C8C8C8;
    border-bottom: 3px solid #C8C8C8;
}
#opas_ops_tabs_rakenne table tr th.opas_ajoitus_timing_semesters {
    color: #fff;
    border: 0;
    border-right: 1px solid;
}
#opas_ops_tabs_rakenne table tr th.opas_ajoitus_timing_semesters:last-child {
    border-right: 0;
}
#opas_ops_tabs_rakenne table tr th.opas_ajoitus_timing_years {
    color: #fff;
    background-color: #C8C8C8;
    border-bottom: 1px solid #C8C8C8;
}
.opas_ajoitus_credits {
    text-align: center;
}
#opas_ajoitus_selection li {
    display: inline-block;
    cursor: pointer;
}
#opas_classification_selection {
    padding: 0 0 10px 0;
    /*border: 1px solid #fff;
     margin-left: 10px;
     float: right;
     background-color:#E2E2E2;
     position:relative;
     left:5px;*/

}
#opas_classification_selection:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}
#opas_classification_selection .opas_classification_selection_header {
    /**background-color:#484848;
    padding: 2px 5px;*/
    display: inline;
    height: 1.3em;
    margin-right: 1em;
    vertical-align: -webkit-baseline-middle;
}

#opas_classification_selection ul.opas_classification_selections {
    float: left;
    margin: 0;
    padding: 0;
}
#opas_classification_description {
    font-size: 0.9em;
    line-height: 1em;
    padding-bottom: .4em;
}
ul#opas_classification {
    padding-left: 0;
    width: 670px;
}
#opas_classification li {
    display: block;
    height: 40px;
    margin-bottom: 3px;
    line-height: 40px;
    padding-left: 15px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    cursor: pointer;
}
#opas_classification ul {
    padding-left: 0;
}
#opas_classification ul li {
    background-color: #E2E2E2;
    color: #fff;
    padding-left: 35px;
    height: auto;
    white-space: normal;
    text-overflow: clip;
}
#opas_classification li:hover {
    background-color: #393939;
    cursor: pointer;
}
.red {
    color: red;
}

.bold {
    font-weight: bold;
}
footer {
    /*border-color: #EFEFEF;
    border-image: none;
    border-style: solid;
    border-width: 2px 0 0;*/
    clear: both;
    padding: 0.3em 1%;
    background: #fff; /*transparent*/
    width: 78%;
    margin: 0 auto;
    border: 0;
    clear: both;
}
#opas_content footer {
    width: 98%;
}

.clear {
    clear: both;
}
.opas_vertically_centered {
    line-height: normal;
    display: inline-block;
    vertical-align: middle;
}

#opas_koulutusvalikko li {
    color: #fff;
    margin-bottom: 5px;
    display: block;
}
#opas_koulutusvalikko li:last-child a {
    margin-bottom: 0;
}
#opas_koulutusvalikko li a,
.narrow #opas_ops_valikko span.opas_koulutusvalikko,
.opas_koulutusvalikko li a,
#types li a {
    display: block;
    padding: 0.5em 1em;
    position: relative;
    color: #fff;
}
#opas_koulutusvalikko li.active a,
.narrow #opas_ops_valikko span.opas_koulutusvalikko.active {
    color: #fff;
    background-color: #4DB6AC;
    font-size: 1.2em;
}
#opas_koulutusvalikko li.active a:before,
.narrow #opas_ops_valikko span.opas_koulutusvalikko.active:before {
    content: "\25B8";
}
.narrow #opas_ops_valikko span.opas_koulutusvalikko {
    margin-bottom: 3px;
    width: auto;
    display: block;
    padding: 4% 0 4% 1%;
    color: #fff;
}

#opas_koulutusvalikko li a:last-child {
    margin-bottom: 0;
}
#opas_koulutusvalikko li a {
    color: #000;
    font-size: 1.2em;
    padding: 0.3em 0.5em;
}

#opas_koulutusvalikko li a:hover {
    color: #4DB6AC;

}
#opas_koulutusvalikko li p {
    margin: 0;
    float: left;
}

#opas_koulutusvalikko > li.active a:hover{
    color: #fff;
}

/* in module */
.in_module {
    cursor: pointer;
}
/* course_unit */
#opas_tulevat_toteutukset {
    padding-left: 0;
    font-size: 1.1em;
}
#opas_tulevat_toteutukset li {
    padding: 0 0 4px 0;
}
.toteutuslink {
    cursor: pointer;
    padding: 8px;
    background: #4DB6AC;
    display: block;
    color: #fff;
}
.opas_toteutus_info {
    padding: 0.9em 0.6em 0.6em;
    clear: both;
    border: 1px solid #4DB6AC;
}
.opas_toteutus_info h3 {
    margin: 0 0 0.4em;
    color:pink;
    font-family: 'Open Sans', sans-serif;
}
.opas_toteutus_info p {
    margin: 0 0 1em;
}
.opas_toteutus_info .info-row {
    float: left;
    margin: 0;
    padding: 0 0 1% 2%;
    width: 44%;
}

.course_unit_info .info-row {
    float: none;
    margin: 0;
    padding: 0 0 1% 2%;
    width: 100%;
}

.opas_toteutus_info > .info-row:nth-child(odd) {
    clear: both;
    border-right: 2px solid #f7f7f7;
}
.opas_toteutus_info > .info-row:nth-child(even) {
    margin-left: -2px;
    border-left: 2px solid #f7f7f7;
}
.opas_toteutus_info > .info-row:last-child {
    margin-bottom: 1%;
}
.opas_toteutus_info:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}
.opas_toteutus_link_identifier {
    float: right;
    font-size: 1.5em;
    line-height: .7em;
}
#opas_koulutusohjelma_lukuvuoden_opinnot {
    padding-top: 1em;
}
#opas_koulutusohjelma_lukuvuoden_opinnot ul li {
    margin-bottom: .3em;
}

#opas_ops_tabs_rakenne,
#opas_ops_tabs_rakenne_wrap,
#opas_ops_tabs,
.ui-tabs-nav,
#opas_ops_tabs_kuvaus,
#opas_ops_tabs_liitteet,
#opas_ops_tabs_kuvaus_wrap,
#opas_ops_tabs_liitteet_wrap {
    background: none repeat scroll 0 0 transparent;
}

#opas_ops_tabs_rakenne_wrap,
#opas_ops_tabs_kuvaus_wrap,
#opas_ops_tabs_liitteet_wrap {
    background: none repeat scroll 0 0 #FFFFFF;
    color: #000;
    min-height: 444px;
    padding: 0;
}
#opas_ops_tabs_liitteet ul {
    margin: 1em;
    padding: 0;
}
#opas_ops_tabs_liitteet ul li {
    margin-bottom: .2em;
}
#opas_ops_tabs_liitteet ul li a:hover {
    text-decoration: underline;
}
#opas_ops_tabs_liitteet ul li:before {
    color: #4DB6AC;
    content: "\25B8";
    margin-right: .4em;
    text-decoration: none !important;
}
#opas_ops_tabs_rakenne table tr th.opas_ajoitus_timing_years,
#opas_ops_tabs_rakenne table tr th.opas_ajoitus_timing_semesters,
#opas_ops_tabs_rakenne table tr th.opas_ajoitus_timing_periods {
    -moz-border-bottom-colors: none;
    -moz-border-left-colors: none;
    -moz-border-right-colors: none;
    -moz-border-top-colors: none;
    background-color: #F9F8F2;
    border-color: #ECEAE0;
    border-image: none;
    border-style: none solid none none;
    border-width: 0 1px 0 0;
    color: #000;
}
.float-buttons {
    position: fixed;
    top: 0;
    z-index: 9;
    /*background: #fff;
     border: 2px solid #221E1D;
     width:100%;
     max-width: 800px;*/
}


.container {
    padding: 1.5em 0 0 .5em;
}

#popup-right h1,
#popup-left h1,
#popup-right h2,
#popup-left h2,
#popup-right h3,
#popup-left h3,
#popup-right h4,
#popup-left h4,
#popup-right .header,
#popup-left .header {
    font-family:  'Open Sans', sans-serif ;
    font-size: 14px;
    font-weight: 500;
}

#popup-right,
#popup-left {
    width: 50%;
    float: left;
    margin-left: 1em;
    padding-right: 3em;
}
#popup-right.full-width,
#popup-left.full-width {
    width: 96%;
}
#popup-right.full-width .info-row .header,
#popup-left.full-width .info-row .header {
    width: 100%;
}
#popup-right {
    float: right;
    width: 40%;
}
#popup-right > div {
    background: none repeat scroll 0 0 #f7f7f7;
    border: 0 none;
    margin-bottom: 1em;
    padding: 1em 4% 0.4em;
    width: 92%;
}
#popup-right > div:first-child {
    margin-top: 33px;
}

#popup-right .info-row {
    clear: both;
}
#popup-right .info-row .header {
    width: 50%;
    float: left;
}
#popup-right .info-row .content {
    width: 50%;
    float: left;
}

#modules,
#future-realizations {
    display: block;
    font-size: 0.8em;
}
#modules h3.in_module,
#future-realizations h3.in_module {
    margin: 0.5em 0;
    color: #4DB6AC;
}
#modules p,
#future-realizations p {
    clear: both;
}
#future-realizations {
    float: none;
}
#future-realizations .hidden-realization {
    display: none;
}
#modules {
    margin-top: 1em;
}
.in_module_details {
    margin-left: 1.2em;
}
.in_module_details h3,
.in_module_details h4 {
    margin: 0 0 .2em 0;
}
.in_module_details p {
    margin: 0 0 .2em 0;
}
.modules-header {
    font-weight: normal;
    margin: 0 0 0.4em;
}
.toggle-all {
    cursor: pointer;
    text-align: right;
}
.toggler.show:after {
    margin-left: .2em;
    content: "\25BC";
}
.toggler.hide:after {
    margin-left: .2em;
    content: "\25B2";
}
.cu-name {
    font-family: 'Open Sans', sans-serif;
    margin-top: 0;
    margin-bottom: 0;
}
/**Popupissa kurssinimi (esim Viestintätaidot)*/
.cu-name span.name {
    margin-left: 1em;
    border-bottom: 1px solid #c3c3c3;
    display: inline-block;
    margin-bottom: .5em;
    margin-top: 1em;
    padding-bottom: 0.1em;
    width: 100%;

}
/**Kurssikoodi esimerkiksi YPO3A3*/
.cu-name span.code {
    color: #bbbbbb;
    line-height: 1.5em;
    font-size: .7em;
}

.cu-name span.credits {
    color: #bbbbbb;
    display: block;
    font-size: .7em;
}

.info-row {
    margin-bottom: .5em;
}
.info-row .header {
    font-weight: bold !important;
    font-size: .9em;
    margin: 1em;
    font-family: 'Open Sans', sans-serif;
}
.info-row .content {
    font-size: .9em;
    margin-bottom: .5em;
    line-height: 1.3em;
    margin-left: 2em;
}
.info-row .content p:first-child {
    margin-top: 0;
}
.info-row .content p:last-child {
    margin-bottom: 0;
}
.info-row:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}
.opas_toteutus_info .info-row h3 {
    font-size: 1em;
}

.right.col {
    display: block;
    float: right;
    margin: 0.5em 1em 0.5em 2em;
    width: 35%;
}

.right.col a:hover{
    color: #4DB6AC;
}

.box.right {
    border: 1px solid #C2C2C2;
    display: block;
    margin-top: 1em;
    padding: 1em 1em 0 1em;
}
.box.right .title {
    background: none repeat scroll 0 0 #4DB6AC;
    display: block;
    padding: 0.8em;
    margin-left: -1.1em;
    margin-right: -1.1em;
    position: relative;
    top: -1.5em;
    color: #fff;

}
.box.right .content {
    overflow: hidden;
    position: relative;
    top: -1em;
    width: 100%;
    word-wrap: break-word;
}
.box.right .content label {
    font-weight: bold;
    display: block;
}
.opas_koulutusohjelma_tab {
    padding: 0 1em;
}

div#opas_ops_valikko ul li ul li a:before {
    content: "";
}
div#opas_ops_valikko li span.name {
    background-color: #fff;
    color: #000;
    display: block;
    font-size: 1.2em;
    margin-bottom: 5px;
    padding: 0.2em 0.4em 0.1em;
    position: relative;
    background: none repeat scroll 0 0 transparent;

}

table#opas_rakenne tr th,
table.ops tr th,
table#opas_rakenne tr:hover th,
table.ops tr:hover th,
table#opas_rakenne tr:hover th:hover,
table.ops tr:hover th:hover,
#opas_ops_tabs_rakenne table tr th.opas_ajoitus_timing_years,
#opas_ops_tabs_rakenne table tr th.opas_ajoitus_timing_semesters,
#opas_ops_tabs_rakenne table tr th.opas_ajoitus_timing_periods {
    background-color: #FFFFFF ;
}

#opas_koulutusohjelma ul.opas_opetussuunnitelmat_vuosi_selection li a,
#opas_koulutusohjelma ul.opas_tabs li a{
    color: #666666;
}
#opas_ops_tabs li.ui-state-default.ui-corner-top a {
    color: #fff;
}

.ui-tabs .ui-tabs-nav li a {
    padding: 0;
}

#opas_koulutusohjelma ul.opas_opetussuunnitelmat_vuosi_selection li.active,
#opas_koulutusohjelma ul.opas_tabs li.active,
#opas_ops_tabs .ui-state-default.ui-corner-top.ui-state-active {
    background: none repeat scroll 0 0 #9E9E9E;
    color: #000;
    font-size: 1.1em;
}
#opas_koulutusohjelma ul.opas_opetussuunnitelmat_vuosi_selection li.active a,
#opas_koulutusohjelma ul.opas_tabs li.active a,
#opas_ops_tabs .ui-state-default.ui-corner-top.ui-state-active a {
    color: #000;
}

#opas_koulutusohjelma_ops_vuosi {
    border-bottom: 1px inset #ADADAD ;
    padding-bottom: 1em ;
}
#opas_koulutusohjelma .opas_opetussuunnitelmavuosi ul li ul li.link a {
    color: #4DB6AC;
}

#opas_koulutusohjelma .opas_opetussuunnitelmavuosi ul li ul li.link {
    margin-bottom: .5em;
    margin-top: .5em;
}

#opas_rakenne tr.level-1 td,
#opas_rakenne tr.level-1:hover td,
.ops tr.level-1 td,
.ops tr.level-1:hover td,
#opas_rakenne tr.level-1 td:hover,
#opas_rakenne tr.level-1:hover td:hover,
.ops tr.level-1 td:hover,
.ops tr.level-1:hover td:hover,
#opas_rakenne tr.level-1 td.opas_ajoitus_timing,
#opas_rakenne tr.level-1:hover td.opas_ajoitus_timing,
.ops tr.level-1 td.opas_ajoitus_timing,
.ops tr.level-1:hover td.opas_ajoitus_timing,
#opas_rakenne tr.level-1 td.opas_ajoitus_timing:hover,
#opas_rakenne tr.level-1:hover td.opas_ajoitus_timing:hover,
.ops tr.level-1 td.opas_ajoitus_timing:hover,
.ops tr.level-1:hover td.opas_ajoitus_timing:hover,
#opas_rakenne tr.level-1 td.opas_ajoitus_timing:hover,
#opas_rakenne tr.level-1:hover td.opas_ajoitus_timing:hover,
.ops tr.level-1 td.opas_ajoitus_timing:hover,
.ops tr.level-1:hover td.opas_ajoitus_timing:hover {
    background: #4DB6AC;
    border-color: #4DB6AC;
    border-width: 1px;
    color:#FFF;
}
#opas_rakenne tr.level-2 td,
#opas_rakenne tr.level-2:hover td,
.ops tr.level-2 td,
.ops tr.level-2:hover td,
#opas_rakenne tr.level-2 td:hover,
#opas_rakenne tr.level-2:hover td:hover,
.ops tr.level-2 td:hover,
.ops tr.level-2:hover td:hover,
#opas_rakenne tr.level-2 td.opas_ajoitus_timing,
#opas_rakenne tr.level-2:hover td.opas_ajoitus_timing,
.ops tr.level-2 td.opas_ajoitus_timing,
.ops tr.level-2:hover td.opas_ajoitus_timing,
#opas_rakenne tr.level-2 td.opas_ajoitus_timing:hover,
#opas_rakenne tr.level-2:hover td.opas_ajoitus_timing:hover,
.ops tr.level-2 td.opas_ajoitus_timing:hover,
.ops tr.level-2:hover td.opas_ajoitus_timing:hover,
#opas_rakenne tr.level-2 td.opas_ajoitus_timing:hover,
#opas_rakenne tr.level-2:hover td.opas_ajoitus_timing:hover,
.ops tr.level-2 td.opas_ajoitus_timing:hover,
.ops tr.level-2:hover td.opas_ajoitus_timing:hover {
    background: none repeat scroll 0 0 #fff;
    border-color: #D4D6CA transparent;
    border-width: 1px;
    color: #4DB6AC;
}
#opas_rakenne tr.level-3 td,
#opas_rakenne tr.opas_course_unit td,
#opas_rakenne tr.opas_course_unit:hover td,
.ops tr.level-3 td,
.ops tr.opas_course_unit td,
.ops tr.opas_course_unit:hover td,
#opas_rakenne tr.level-3 td:hover,
#opas_rakenne tr.opas_course_unit td:hover,
#opas_rakenne tr.opas_course_unit:hover td:hover,
.ops tr.level-3 td:hover,
.ops tr.opas_course_unit td:hover,
.ops tr.opas_course_unit:hover td:hover,
#opas_rakenne tr.level-3 td.opas_ajoitus_timing,
#opas_rakenne tr.opas_course_unit td.opas_ajoitus_timing,
#opas_rakenne tr.opas_course_unit:hover td.opas_ajoitus_timing,
.ops tr.level-3 td.opas_ajoitus_timing,
.ops tr.opas_course_unit td.opas_ajoitus_timing,
.ops tr.opas_course_unit:hover td.opas_ajoitus_timing,
#opas_rakenne tr.level-3 td.opas_ajoitus_timing:hover,
#opas_rakenne tr.opas_course_unit td.opas_ajoitus_timing:hover,
#opas_rakenne tr.opas_course_unit:hover td.opas_ajoitus_timing:hover,
.ops tr.level-3 td.opas_ajoitus_timing:hover,
.ops tr.opas_course_unit td.opas_ajoitus_timing:hover,
.ops tr.opas_course_unit:hover td.opas_ajoitus_timing:hover,
#opas_rakenne tr.level-3 td.opas_ajoitus_timing:hover,
#opas_rakenne tr.opas_course_unit td.opas_ajoitus_timing:hover,
#opas_rakenne tr.opas_course_unit:hover td.opas_ajoitus_timing:hover,
.ops tr.level-3 td.opas_ajoitus_timing:hover,
.ops tr.opas_course_unit td.opas_ajoitus_timing:hover,
.ops tr.opas_course_unit:hover td.opas_ajoitus_timing:hover {
    background: none repeat scroll 0 0 #FFFFFF;
    border-color: #D4D6CA;
    border-width: 1px;
    color: #000;
}



.opas_course_unit_dialog .ui-widget-content,
.opas_course_unit_dialog .ui-dialog-titlebar {
    border-color: #E7E6DF;
    height: 0;
    padding: 0.2em;
}

.info-row .header,
.info-row .content {
    font-size: 1em;
}
.opas_course_unit_dialog .ui-widget-content {
    background: none repeat scroll 0 0 #fff;
    color: #000;
}
.opas_course_unit_dialog .ui-widget-header {
    background: none repeat scroll 0 0 #F3F3F3;
}
.ui-dialog .ui-dialog-title {
    float: none;
}



#popup-left .info-row .header {
    float: none;
    width: 100%;

}

#popup-left .header + .header {
    font-size: 12px;
}

#popup-left .opas_toteutus_info .info-row .header {
    font-size: 1.1em;
    color: #4DB6AC;
}
#popup-right .info-row .header {
    float: none;
    width: 100%;
}

#types > li {
    background: none repeat scroll 0 0 #000;
}
.opas_toteutus_info > .info-row {
    border: 0;
}

#menu {
    display: none;
}
.module_link_identifier {
    display: none;
}
.in_module:before,
#opas_koulutusohjelma .opas_opetussuunnitelmavuosi ul li ul li.link > a:before,
div#opas_ops_valikko ul li ul li a:before {
    content: "";
    display: inline-block;
    height: 11px;
    width: 6px;
}
#opas_koulutusohjelma .opas_opetussuunnitelmavuosi ul li ul li.link > a:before {
    width: 12px;
}
a.back {
    margin-left: 0.5em;
}
#opas_rakenne tr.opas_course_unit:hover td,
.ops tr.opas_course_unit:hover td,
#opas_rakenne tr.opas_course_unit:hover td:hover,
.ops tr.opas_course_unit:hover td:hover,
#opas_rakenne tr.opas_course_unit:hover td.opas_ajoitus_timing,
.ops tr.opas_course_unit:hover td.opas_ajoitus_timing,
#opas_rakenne tr.opas_course_unit:hover td.opas_ajoitus_timing:hover,
.ops tr.opas_course_unit:hover td.opas_ajoitus_timing:hover,
#opas_rakenne tr.opas_course_unit:hover td.opas_ajoitus_timing:hover,
.ops tr.opas_course_unit:hover td.opas_ajoitus_timing:hover {
    background: none repeat scroll 0 0 #4DB6AC;
    color:#fff;
}

input#filter {
    background: url("../img/icon_search.png") no-repeat scroll 99% center #ffffff;
    border: 1px solid #CECECE;
    height: 1.6em;
    line-height: 1.4em;
    min-width: 53%;
    padding: .3em;
}

div#opas_ops_valikko li:last-child {
    margin-bottom: 0;
}

#opas_ops_tabs_rakenne table tr td.opas_ajoitus_timing {
    background-color: #fff;
    border-bottom: 0 solid #C8C8C8;
    min-width: 30px;
    text-align: center;
}
