/* core.less */

/** Page layout CSS starts **/
.layout-option-noheader #page-header,
.layout-option-nonavbar #page-navbar,
.layout-option-nofooter #page-footer,
.layout-option-nocourseheader .course-content-header,
.layout-option-nocoursefooter .course-content-footer {
    display: none;
}

.empty-region-side-pre #block-region-side-pre, // Pre region is empty.
.empty-region-side-post #block-region-side-post, // Post region is empty.
.jsenabled.docked-region-side-post #block-region-side-post, // All post blocks are docked.
.jsenabled.docked-region-side-pre #block-region-side-pre { // All pre blocks are docked.
    display: none;
}

/* Default Three Columns - All
------------------------------*/

.content-only {
    #region-main-box,
    #region-main {
        width: 100%;
    }
}
.empty-region-side-pre {
    &.used-region-side-post {
        #region-main {
            width: 100%;
        }
    }
}
.empty-region-side-post {
    &.used-region-side-pre {
        #region-main-box {
            width: 100%;
        }
    }
}
.jsenabled {
    &.docked-region-side-pre {
        &.empty-region-side-pre {
            &.used-region-side-post {
                #region-main {
                    width: 100%;
                }
            }
        }
    }
    &.docked-region-side-post {
        &.empty-region-side-post {
            &.used-region-side-pre {
                #region-main-box {
                    width: 100%;
                }
            }
        }
    }
}
.empty-region-side-post.used-region-side-pre, // Post region is empty and pre region is in use.
.jsenabled.docked-region-side-post.used-region-side-pre { // All post blocks docked and pre region is in use.
    #region-main.span8 {
        /** Increase the span size by 1 **/
        .fluid-span(9);
    }
    #block-region-side-pre.span4 {
        /** Decrease the span size by 1 **/
        .fluid-span(3);
    }
}

/** Page layout CSS ends **/

.mdl-left {
    text-align: left;
}
.mdl-right {
    text-align: right;
}

/*rtl:ignore*/
.text-ltr {
    direction: ltr !important;  /* stylelint-disable-line declaration-no-important */
}

#add,
#remove,
.centerpara,
.mdl-align {
    text-align: center;
}
a.dimmed,
a.dimmed:link,
a.dimmed:visited,
a.dimmed_text,
a.dimmed_text:link,
a.dimmed_text:visited,
.dimmed_text,
.dimmed_text a,
.dimmed_text a:link,
.dimmed_text a:visited,
.usersuspended,
.usersuspended a,
.usersuspended a:link,
.usersuspended a:visited,
.dimmed_category,
.dimmed_category a {
    .muted
}
.activity.label .dimmed_text {
    .opacity(50)
}
.unlist,
.unlist li,
.inline-list,
.inline-list li,
.block .list,
.block .list li,
.section li.activity,
.section li.movehere,
.tabtree li {
    list-style: none;
    margin: 0;
    padding: 0;
}
.inline,
.inline-list li {
    display: inline;
}
.notifytiny {
    font-size: @fontSizeMini;
}
.notifytiny li,
.notifytiny td {
    font-size: 100%;
}
.red,
.notifyproblem {
    color: @errorText;
}
.green,
.notifysuccess {
    color: @successText;
}
.highlight {
    background: @infoBackground;
}
.reportlink {
    text-align: right;
}
a.autolink.glossary:hover {
    cursor: help;
}
/* Block which is hidden if javascript enabled, prevents fickering visible when JS from footer used! */
.collapsibleregioncaption {
    white-space: nowrap;
}
.pagelayout-mydashboard.jsenabled .collapsibleregioncaption {
    cursor: pointer;
}
.collapsibleregioncaption img {
    vertical-align: middle;
}

.jsenabled .hiddenifjs {
    display: none;
}
.visibleifjs {
    display: none;
}
.jsenabled .visibleifjs {
    display: inline;
}
.jsenabled .collapsibleregion {
    overflow: hidden;
}
.jsenabled .collapsed .collapsibleregioninner {
    visibility: hidden;
}
.collapsible-actions {
    display: none;
    text-align: right;
}
.jsenabled .collapsible-actions {
    display: block;
}
.collapsible-actions .collapseexpand {
    padding-left: 20px;
    background: url([[pix:t/collapsed]]) 2px center no-repeat;
}
/*rtl:raw:
.collapsible-actions .collapseexpand {
    background: url([[pix:t/collapsed_rtl]]) right center no-repeat;
}
*/
.collapsible-actions .collapse-all {
    background-image: url([[pix:t/expanded]]);
}
.yui-overlay .yui-widget-bd {
    background-color: #ffee69;
    border: 1px solid #a6982b;
    border-top-color: #d4c237;
    color: #000;
    left: 0;
    padding: 2px 5px;
    position: relative;
    top: 0;
    z-index: 1;
}
.clearer {
    background: transparent;
    border-width: 0;
    clear: both;
    display: block;
    height: 1px;
    margin: 0;
    padding: 0;
}
.bold,
.warning,
.errorbox .title,
.pagingbar .title,
.pagingbar .thispage {
    font-weight: bold;
}
img.userpicture {
    margin-right: 5px;
}
img.resize {
    height: 1em;
    width: 1em;
}
.block img.resize,
.breadcrumb img.resize {
    height: 0.9em;
    width: 0.8em;
}
/* Icon styles */
img.icon {
    height: 16px;
    vertical-align: text-bottom;
    width: 16px;
    padding-right: 6px;
}
img.iconsmall {
    height: 12px;
    margin-right: 3px;
    vertical-align: middle;
    width: 12px;
}
img.iconhelp,
.helplink img {
    height: 16px;
    padding-left: 3px;
    vertical-align: text-bottom;
    width: 16px;
}
h1 img.iconhelp,
h1 img.icon,
h2 img.iconhelp,
h2 img.icon,
h3 img.iconhelp,
h3 img.icon,
h4 img.iconhelp,
h4 img.icon,
h5 img.iconhelp,
h5 img.icon,
h6 img.iconhelp,
h6 img.icon {
    vertical-align: middle;
    padding: 4px;
}
img.iconlarge {
    height: 24px;
    width: 24px;
    vertical-align: middle;
}
img.iconsort {
    vertical-align: text-bottom;
    padding-left: .3em;
    margin-bottom: .15em;
}
img.icontoggle {
    height: 17px;
    vertical-align: middle;
    width: 50px;
}
img.iconkbhelp {
    height: 17px;
    width: 49px;
}
img.icon-pre {
    padding-right: 3px;
    padding-left: 0;
}
img.icon-post {
    padding-left: 3px;
    padding-right: 0;
}
.boxaligncenter {
    margin-left: auto;
    margin-right: auto;
}
.boxalignright {
    margin-left: auto;
    margin-right: 0;
}
.boxalignleft {
    margin-left: 0;
    margin-right: auto;
}
.boxwidthnarrow {
    width: 30%;
}
.boxwidthnormal {
    width: 50%;
}
.boxwidthwide {
    width: 80%;
}
.headermain {
    font-weight: bold;
}
#maincontent {
    display: block;
    height: 1px;
    overflow: hidden;
}
img.uihint {
    cursor: help;
}
#addmembersform table {
    margin-left: auto;
    margin-right: auto;
}
table.flexible .emptyrow {
    display: none;
}
img.emoticon {
    vertical-align: middle;
    width: 15px;
    height: 15px;
}
form.popupform,
form.popupform div {
    display: inline;
}
.arrow_button input {
    overflow: hidden;
}
.action-icon img.smallicon {
    vertical-align: text-bottom;
    margin: 0 0.3em;
}

/** The 1-pixel padding is there to avoid phantom scroll bars on OS X (FF, Safari and Chrome)**/
.no-overflow {
    overflow: auto;
    padding-bottom: 1px;
}
.pagelayout-report .no-overflow {
    overflow: visible;
}
.no-overflow > .generaltable {
    margin-bottom: 0;
}
// Accessibility features

// Accessibility: text 'seen' by screen readers but not visual users.
.accesshide {
    position: absolute;
    left: -10000px;
    font-weight: normal;
    font-size: 1em;
}
span.hide,
div.hide {
    display: none;
}
// Accessibility: Skip block link, for keyboard-only users.
a.skip-block,
a.skip {
    position: absolute;
    top: -1000em;
    font-size: 0.85em;
    text-decoration: none;
}
a.skip-block:focus,
a.skip-block:active,
a.skip:focus,
a.skip:active {
    position: static;
    display: block;
}
.skip-block-to {
    display: block;
    height: 1px;
    overflow: hidden;
}
// Blogs
.addbloglink {
    text-align: center;
}
.blog_entry .audience {
    text-align: right;
    padding-right: 4px;
}
.blog_entry .tags {
    margin-top: 15px;
}
.blog_entry .tags .action-icon img.smallicon {
    height: 16px;
    width: 16px;
}
.blog_entry .content {
    margin-left: 43px;
}
// Group
#page-group-index #groupeditform {
    text-align: center;
}
#doc-contents h1 {
    margin: 1em 0 0 0;
}
#doc-contents ul {
    margin: 0;
    padding: 0;
    width: 90%;
}
#doc-contents ul li {
    list-style-type: none;
}
.groupmanagementtable td {
    vertical-align: top;
}
.groupmanagementtable #existingcell,
.groupmanagementtable #potentialcell {
    width: 42%;
}
.groupmanagementtable #buttonscell {
    width: 16%;
}
.groupmanagementtable #buttonscell p.arrow_button input {
    width: auto;
    min-width: 80%;
    margin: 0 auto;
}
.groupmanagementtable #removeselect_wrapper,
.groupmanagementtable #addselect_wrapper {
    width: 100%;
}
.groupmanagementtable #removeselect_wrapper label,
.groupmanagementtable #addselect_wrapper label {
    font-weight: normal;
}
#group-usersummary {
    width: 14em;
}
.groupselector {
    margin-top: 3px;
    margin-bottom: 3px;
    display: inline-block;
}
.groupselector label {
    display: inline-block;
}
// Data format selector
.dataformatselector {
    margin: 1em 0;
}
.dataformatselector label {
    display: inline-block;
    margin: 0 5px 10px 0;
    line-height: 30px;
    vertical-align: top;
}

// Login
.loginbox {
    margin: 15px;
    overflow: visible;
}
.loginbox.twocolumns {
    margin: 15px;
}
.loginbox h2,
.loginbox .subcontent {
    margin: 5px;
    padding: 10px;
    text-align: center;
}
.loginbox .loginpanel .desc {
    margin: 0;
    padding: 0;
    margin-bottom: 5px;
    margin-top: 15px;
}
.loginbox .loginsub {
    margin-left: 0;
    margin-right: 0;
}
.loginbox .guestsub,
.loginbox .forgotsub {
    margin: 5px 12%;
}
.loginbox .loginform {
    margin-top: 1em;
    text-align: left;
}
.loginbox .loginform .form-label {
    float: left;
    text-align: right;
    width: 49%;
    white-space: nowrap;
}
.loginbox .loginform .form-input {
    float: right;
    width: 50%;
}
.loginbox .loginform .form-input input {
    width: 6em;
}
.loginbox .signupform {
    margin-top: 1em;
    text-align: center;
}
.loginbox.twocolumns .loginpanel,
.loginbox.twocolumns .signuppanel {
    width: 48%;
    border: 0;
    margin: 0;
    padding: 0;
    .box-sizing(border-box);
    display: block;
    float: left;
    margin-left: 2.76243%;
    min-height: 30px;
    margin-bottom: -2000px;
    padding-bottom: 2000px;
}
.loginbox .potentialidp {
    margin-bottom: 0.3em;
}
.loginbox .potentialidp .smallicon {
    vertical-align: text-bottom;
    margin: 0 .3em;
}

// Notes
.notepost {
    margin-bottom: 1em;
}
.notepost .userpicture {
    float: left;
}
.notepost .content,
.notepost .footer {
    clear: both;
}
.notesgroup {
    margin-left: 20px;
}

// My Moodle
.path-my .coursebox .overview {
    margin: 15px 30px 10px 30px;
}
.path-my .coursebox .info {
    float: none;
    margin: 0;
}

// Modules
.mod_introbox {
    padding: 10px;
}
table.mod_index {
    width: 100%;
}

// Comments
.comment-ctrl {
    font-size: 12px;
    display: none;
    margin: 0;
    padding: 0;
}
.comment-ctrl h5 {
    margin: 0;
    padding: 5px;
}
.comment-area {
    max-width: 400px;
    padding: 5px;
}
.comment-area textarea {
    width: 100%;
    overflow: auto;
    &.fullwidth {
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
    }
}
.comment-area .fd {
    text-align: right;
}
.comment-meta span {
    color: gray;
}
.comment-link img {
    vertical-align: text-bottom;
}
.comment-list {
    font-size: 11px;
    overflow: auto;
    list-style: none;
    padding: 0;
    margin: 0;
}
.comment-list li {
    margin: 2px;
    list-style: none;
    margin-bottom: 5px;
    clear: both;
    padding: .3em;
    position: relative;
}
.comment-list li.first {
    display: none;
}
.comment-paging {
    text-align: center;
}
.comment-paging .pageno {
    padding: 2px;
}
.comment-paging .curpage {
    border: 1px solid #ccc;
}
.comment-message .picture {
    width: 20px;
    float: left;
}
.comment-message .text {
    margin: 0;
    padding: 0;
}
.comment-message .text p {
    padding: 0;
    margin: 0 18px 0 0;
}
.comment-delete {
    position: absolute;
    top: 0;
    right: 0;
    margin: .3em;
}
.comment-report-selectall {
    display: none;
}
.comment-link {
    display: none;
}
.jsenabled .comment-link {
    display: block;
}
.jsenabled .showcommentsnonjs {
    display: none;
}
.jsenabled .comment-report-selectall {
    display: inline;
}
/**
* Completion progress report
*/
.completion-expired {
    background: @errorBackground;
}
.completion-expected {
    font-size: @fontSizeMini;
}
.completion-sortchoice,
.completion-identifyfield {
    font-size: @fontSizeMini;
    vertical-align: bottom;
}
.completion-progresscell {
    text-align: right;
}
.completion-expired .completion-expected {
    font-weight: bold;
}
/**
* Tags
*/
img.user-image {
    height: 100px;
    width: 100px;
}
#tag-search-box {
    text-align: center;
    margin: 10px auto;
}

.path-tag .tag-index-items .tagarea {
    border: 1px solid #e3e3e3;
    border-radius: 4px;
    padding: 10px;
    margin-top: 10px;
}

.path-tag .tag-index-items .tagarea h3 {
    display: block;
    padding: 3px 0 10px 0;
    margin: 0;
    font-size: 1.1em;
    font-weight: bold;
    line-height: 20px;
    color: #999;
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
    text-transform: uppercase;
    word-wrap: break-word;
    border-bottom: solid 1px #e3e3e3;
    margin-bottom: 10px;
}

.path-tag .tagarea .controls,
.path-tag .tagarea .taggeditems {
    .clearfix();
}
.path-tag .tagarea .controls,
.path-tag .tag-backtoallitems {
    text-align: center;
}
.path-tag .tagarea .controls .gotopage.nextpage {
    float: right;
}
.path-tag .tagarea .controls .gotopage.prevpage {
    float: left;
}
.path-tag .tagarea .controls .exclusivemode {
    display: inline-block;
}
.path-tag .tagarea .controls.controls-bottom {
    margin-top: 5px;
}
.path-tag .tagarea .controls .gotopage.nextpage::after {
    /*rtl:remove*/
    content: "»";
    /*rtl:raw:
    content: "«";
    */
    padding-right: 5px;
    padding-left: 5px;
}
.path-tag .tagarea .controls .gotopage.prevpage::before {
    /*rtl:remove*/
    content: "«";
    /*rtl:raw:
    content: "»";
    */
    padding-right: 5px;
    padding-left: 5px;
}

span.flagged-tag,
tr.flagged-tag,
span.flagged-tag a,
tr.flagged-tag a {
    color: @errorText;
}
.tag-management-table td,
.tag-management-table th {
    vertical-align: middle;
    padding: 4px;
}
.tag-management-table .inplaceeditable.inplaceeditingon input {
    width: 150px;
}
.path-admin-tag .addstandardtags {
    float: right;
    img {
        margin: 0 5px;
    }
}
.path-tag .tag-relatedtags {
    padding-top: 10px;
}
.path-tag .tag-management-box {
    text-align: right;
}
.path-tag .tag-index-toc {
    padding: 10px;
    text-align: center;
}
.path-tag .tag-index-toc li,
.path-tag .tag-management-box li {
    margin-left: 5px;
    margin-right: 5px;
}
.path-tag .tag-management-box li a.edittag {
    background-image: url([[pix:moodle|i/settings]]);
}
.path-tag .tag-management-box li a.flagasinappropriate {
    background-image: url([[pix:moodle|i/flagged]]);
}
.path-tag .tag-management-box li a.removefrommyinterests {
    background-image: url([[pix:moodle|t/delete]]);
}
.path-tag .tag-management-box li a.addtomyinterests {
    background-image: url([[pix:moodle|t/add]]);
}
.path-tag .tag-management-box li a {
    background-repeat: no-repeat;
    background-position: left;
    padding-left: 17px;
}
.tag_feed.media-list .media .itemimage {
    float: left;
}
.tag_feed.media-list .media .itemimage img {
    height: 35px;
    width: 35px;
}
.tag_feed.media-list .media .media-body {
    padding-right: 10px;
    padding-left: 10px;
}
.tag_feed .media .muted a {
    .muted();
}
.tag_cloud {
    text-align: center;
}
.tag_cloud .inline-list li {
    padding: 0 0.2em;
}
.tag_cloud .tag_overflow {
    margin-top: 1em;
    font-style: italic;
}
.tag_cloud .s20 {
    font-size: 2.7em;
}
.tag_cloud .s19 {
    font-size: 2.6em;
}
.tag_cloud .s18 {
    font-size: 2.5em;
}
.tag_cloud .s17 {
    font-size: 2.4em;
}
.tag_cloud .s16 {
    font-size: 2.3em;
}
.tag_cloud .s15 {
    font-size: 2.2em;
}
.tag_cloud .s14 {
    font-size: 2.1em;
}
.tag_cloud .s13 {
    font-size: 2em;
}
.tag_cloud .s12 {
    font-size: 1.9em;
}
.tag_cloud .s11 {
    font-size: 1.8em;
}
.tag_cloud .s10 {
    font-size: 1.7em;
}
.tag_cloud .s9 {
    font-size: 1.6em;
}
.tag_cloud .s8 {
    font-size: 1.5em;
}
.tag_cloud .s7 {
    font-size: 1.4em;
}
.tag_cloud .s6 {
    font-size: 1.3em;
}
.tag_cloud .s5 {
    font-size: 1.2em;
}
.tag_cloud .s4 {
    font-size: 1.1em;
}
.tag_cloud .s3 {
    font-size: 1em;
}
.tag_cloud .s2 {
    font-size: 0.9em;
}
.tag_cloud .s1 {
    font-size: 0.8em;
}
.tag_cloud .s0 {
    font-size: 0.7em;
}
.tag_list ul {
    display: inline;
}
.tag_list.hideoverlimit .overlimit {
    display: none;
}
.tag_list .tagmorelink {
    display: none;
}
.tag_list.hideoverlimit .tagmorelink {
    display: inline;
}
.tag_list.hideoverlimit .taglesslink {
    display: none;
}

/**
* Web Service
*/
#webservice-doc-generator td {
    text-align: left;
    border: 0 solid black;
}
/**
* Smart Select Element
*/
.smartselect {
    position: absolute;
}
.smartselect .smartselect_mask {
    background-color: #fff;
}
.smartselect ul {
    padding: 0;
    margin: 0;
}
.smartselect ul li {
    list-style: none;
}
.smartselect .smartselect_menu {
    margin-right: 5px;
}
.safari .smartselect .smartselect_menu {
    margin-left: 2px;
}
.smartselect .smartselect_menu,
.smartselect .smartselect_submenu {
    border: 1px solid #000;
    background-color: #fff;
    display: none;
}
.smartselect .smartselect_menu.visible,
.smartselect .smartselect_submenu.visible {
    display: block;
}
.smartselect .smartselect_menu_content ul li {
    position: relative;
    padding: 2px 5px;
}
.smartselect .smartselect_menu_content ul li a {
    color: #333;
    text-decoration: none;
}
.smartselect .smartselect_menu_content ul li a.selectable {
    color: inherit;
}
.smartselect .smartselect_submenuitem {
    background-image: url([[pix:moodle|t/collapsed]]);
    background-repeat: no-repeat;
    background-position: 100%;
}
/** Spanning mode */
.smartselect.spanningmenu .smartselect_submenu {
    position: absolute;
    top: -1px;
    left: 100%;
}
.smartselect.spanningmenu .smartselect_submenu a {
    white-space: nowrap;
    padding-right: 16px;
}
.smartselect.spanningmenu .smartselect_menu_content ul li a.selectable:hover {
    text-decoration: underline;
}
/** Compact mode */
.smartselect.compactmenu .smartselect_submenu {
    position: relative;
    margin: 2px -3px;
    margin-left: 10px;
    display: none;
    border-width: 0;
    z-index: 1010;
}
.smartselect.compactmenu .smartselect_submenu.visible {
    display: block;
}
.smartselect.compactmenu .smartselect_menu {
    z-index: 1000;
    overflow: hidden;
}
.smartselect.compactmenu .smartselect_submenu .smartselect_submenu {
    z-index: 1020;
}
.smartselect.compactmenu .smartselect_submenuitem:hover > .smartselect_menuitem_label {
    font-weight: bold;
}
/**
* Registration
*/
#page-admin-registration-register .registration_textfield {
    width: 300px;
}
/**
* Enrol
*/
.userenrolment {
    width: 100%;
    border-collapse: collapse;
}
.userenrolment tr {
    vertical-align: top;
}
.userenrolment td {
    padding: 0;
    height: 41px;
}
.userenrolment .subfield {
    margin-right: 5px;
}
.userenrolment .col_userdetails .subfield {
    margin-left: 40px;
}
.userenrolment .col_userdetails .subfield_picture {
    float: left;
    margin-left: 0;
}
.userenrolment .col_lastseen {
    width: 150px;
}
.userenrolment .col_role {
    width: 262px;
}
.userenrolment .col_role .roles,
.userenrolment .col_group .groups {
    margin-right: 30px;
}
.userenrolment .col_role .role {
    float: left;
    padding: 0 3px 3px;
    margin: 0 3px 3px;
    white-space: nowrap;
}
.userenrolment .col_group .group {
    float: left;
    padding: 3px;
    margin: 3px;
    white-space: nowrap;
}
.userenrolment .col_role .role a,
.userenrolment .col_group .group a {
    margin-left: 3px;
    cursor: pointer;
}
.userenrolment .col_role .addrole,
.userenrolment .col_group .addgroup {
    float: right;
    padding: 3px;
    margin: 3px;
    > a:hover {
        border-bottom: 1px solid #666;
    }
}
.userenrolment .col_role .addrole img,
.userenrolment .col_group .addgroup img {
    vertical-align: baseline;
}

.userenrolment .hasAllRoles .col_role .addrole {
    display: none;
}

.userenrolment .col_enrol .enrolment {
    float: left;
    padding: 0 3px 3px;
    margin: 0 3px 3px;
}
.userenrolment .col_enrol .enrolment a {
    float: right;
    margin-left: 3px;
}
#page-enrol-users {
    .enrol_user_buttons {
        float: right;
        .enrolusersbutton {
            display: inline;
            div,
            form {
                display: inline;
                margin-right: 0;
            }
        }
    }
    #filterform {
        .well;
        .well-small;
        display: inline-block;
        .fitem {
            display: inline-block;
            line-height: @baseLineHeight * 2;
            margin-right: .3em;
            white-space: nowrap;
            label {
                display: inline;
                line-height: @baseLineHeight;
                padding-right: .3em;
            }
            :before,
            :after {
                display: inline;
            }
        }
        div,
        fieldset {
            display: inline;
            float: none;
            clear: none;
            width: auto;
            margin: 0;
        }
        select,
        .ftext input {
            width: 7em;
        }
        input,
        select {
            margin-bottom: 0;
        }
    }
    .user-enroller-panel .uep-search-results .user .details {
        width: 237px;
    }
    .user-enroller-panel .uep-search-results .cohort .details {
        width: 237px;
    }
}

#page-enrol-users .enrol-users-page-action input {
    margin-left: 0;
}

.corelightbox {
    background-color: #ccc;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-align: center;
}
.corelightbox img {
    position: fixed;
    top: 50%;
    left: 50%;
}

.mod-indent-outer {
    display: table;
}
.mod-indent {
    display: table-cell;
}
.label .mod-indent {
    float: left;
    padding-top: 20px;
}

/* Creates a series of .mod-indent-# rule declarations based on indent size and number of indent levels. */
@mod-indent-size: 30px;
@mod-indent-levels: 16;
.mod-indent-generate(@n, @i: 1) when (@i =< @n) {
    .mod-indent-@{i} {
        width: (@i * @mod-indent-size);
    }
    .mod-indent-generate(@n, (@i + 1));
}
.mod-indent-generate(@n, @i: 1) when (@i = @n) {
    .mod-indent-huge {
        width: (@i * @mod-indent-size);
    }
}
.mod-indent-generate(@mod-indent-levels);

/* Audio player size in 'block' mode (can only change width, height is hardcoded in JS) */
.resourcecontent .mediaplugin_mp3 object {
    height: 25px;
    width: 600px;
}
.resourcecontent audio.mediaplugin_html5audio {
    width: 600px;
}
/** Large resource images should avoid hidden overflow **/
.resourceimage {
    max-width: 100%;
}
/* Audio player size in 'inline' mode (can only change width, as above) */
.mediaplugin_mp3 object {
    height: 15px;
    width: 300px;
}
audio.mediaplugin_html5audio {
    width: 300px;
}
/* TinyMCE moodle media preview frame should not have padding */
.core_media_preview.pagelayout-embedded #content {
    padding: 0;
}
.core_media_preview.pagelayout-embedded #maincontent {
    height: 0;
}
body#page-lib-editor-tinymce-plugins-moodlemedia-preview {
    padding: 0;
    margin: 0;
    min-width: 0;
    background: none;
}
/** Fix YUI 2 Treeview for Right to left languages **/
.dir-rtl .ygtvtn,
.dir-rtl .ygtvtm,
.dir-rtl .ygtvtmh,
.dir-rtl .ygtvtmhh,
.dir-rtl .ygtvtp,
.dir-rtl .ygtvtph,
.dir-rtl .ygtvtphh,
.dir-rtl .ygtvln,
.dir-rtl .ygtvlm,
.dir-rtl .ygtvlmh,
.dir-rtl .ygtvlmhh,
.dir-rtl .ygtvlp,
.dir-rtl .ygtvlph,
.dir-rtl .ygtvlphh,
.dir-rtl .ygtvdepthcell,
.dir-rtl .ygtvok,
.dir-rtl .ygtvok:hover,
.dir-rtl .ygtvcancel,
.dir-rtl .ygtvcancel:hover {
    width: 18px;
    height: 22px;
    background-image: url([[pix:theme|yui2-treeview-sprite-rtl]]);
    background-repeat: no-repeat;
    cursor: pointer;
}
.dir-rtl .ygtvtn {
    background-position: 0 -5600px;
}
.dir-rtl .ygtvtm {
    background-position: 0 -4000px;
}
.dir-rtl .ygtvtmh,
.dir-rtl .ygtvtmhh {
    background-position: 0 -4800px;
}
.dir-rtl .ygtvtp {
    background-position: 0 -6400px;
}
.dir-rtl .ygtvtph,
.dir-rtl .ygtvtphh {
    background-position: 0 -7200px;
}
.dir-rtl .ygtvln {
    background-position: 0 -1600px;
}
.dir-rtl .ygtvlm {
    background-position: 0 0;
}
.dir-rtl .ygtvlmh,
.dir-rtl .ygtvlmhh {
    background-position: 0 -800px;
}
.dir-rtl .ygtvlp {
    background-position: 0 -2400px;
}
.dir-rtl .ygtvlph,
.dir-rtl .ygtvlphh {
    background-position: 0 -3200px;
}
.dir-rtl .ygtvdepthcell {
    background-position: 0 -8000px;
}
.dir-rtl .ygtvok {
    background-position: 0 -8800px;
}
.dir-rtl .ygtvok:hover {
    background-position: 0 -8844px;
}
.dir-rtl .ygtvcancel {
    background-position: 0 -8822px;
}
.dir-rtl .ygtvcancel:hover {
    background-position: 0 -8866px;
}
.dir-rtl.yui-skin-sam .yui-panel .hd {
    text-align: right;
}
.dir-rtl .yui-skin-sam .yui-layout .yui-layout-unit div.yui-layout-bd {
    text-align: right;
}
/** Fix TinyMCE editor right to left **/
.dir-rtl .clearlooks2.ie9 .mceAlert .mceMiddle span,
.dir-rtl .clearlooks2 .mceConfirm .mceMiddle span {
    top: 44px;
}
.dir-rtl .o2k7Skin table,
.dir-rtl .o2k7Skin tbody,
.dir-rtl .o2k7Skin a,
.dir-rtl .o2k7Skin img,
.dir-rtl .o2k7Skin tr,
.dir-rtl .o2k7Skin div,
.dir-rtl .o2k7Skin td,
.dir-rtl .o2k7Skin iframe,
.dir-rtl .o2k7Skin span,
.dir-rtl .o2k7Skin *,
.dir-rtl .o2k7Skin .mceText,
.dir-rtl .o2k7Skin .mceListBox .mceText {
    text-align: right;
}
.path-rating .ratingtable {
    width: 100%;
    margin-bottom: 1em;
}
.path-rating .ratingtable th.rating {
    width: 100%;
}
.path-rating .ratingtable td.rating,
.path-rating .ratingtable td.time {
    white-space: nowrap;
    text-align: center;
}
.initialbar {
    a,
    strong {
        padding-left: 3px;
        padding-right: 3px;
    }
}
/* Moodle Dialogue Settings (moodle-core-dialogue)  */
.moodle-dialogue-base .moodle-dialogue-lightbox {
    background-color: #aaa;
}
.moodle-dialogue-base .hidden,
.moodle-dialogue-base .moodle-dialogue-hidden {
    display: none;
}
.no-scrolling {
    overflow: hidden;
}
.moodle-dialogue-base .moodle-dialogue-fullscreen {
    left: 0;
    top: 0;
    right: 0;
    bottom: -50px;
    position: fixed;
}
.moodle-dialogue-base .moodle-dialogue-fullscreen .moodle-dialogue-content {
    overflow: auto;
}
.moodle-dialogue-base .moodle-dialogue-fullscreen .closebutton {
    width: 28px;
    height: 16px;
    background-size: 100%;
}
.moodle-dialogue-base .moodle-dialogue {
    padding: 0;
    margin: 0;
    background: none;
    border: none;
    z-index: 600;
    outline: #000 dotted 0;
}
.moodle-dialogue-base .moodle-dialogue-wrap {
    margin-top: -3px;
    margin-left: -3px;
    background-color: #fff;
    border: 1px solid #ccc;
    .border-radius(10px);
    .box-shadow(5px 5px 20px 0 #666);
}
.moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-hd,
.moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-hd.yui3-widget-hd {
    margin: 0;
    padding: 5px;
    font-size: 12px;
    font-weight: normal;
    letter-spacing: 1px;
    color: #333;
    text-align: center;
    text-shadow: 1px 1px 1px #fff;
    .border-radius(10px 10px 0 0);
    border-bottom: 1px solid #bbb;
    background: #ccc;
    #gradient > .vertical(#fff, #ccc);
    filter: 0;
}
.moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-hd h1 {
    padding: 0;
    display: inline;
    font-size: 100%;
    font-weight: bold;
}
.moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-hd .yui3-widget-buttons {
    padding: 5px;
}
.moodle-dialogue-base .closebutton {
    width: 25px;
    height: 15px;
    float: right;
    display: inline-block;
    cursor: pointer;
    padding: 0;
    background-image: url([[pix:theme|sprite]]);
    background-repeat: no-repeat;
    border-style: none;
}
.moodle-dialogue-base .moodle-dialogue .moodle-dialogue-bd {
    padding: 1em;
    line-height: 2em;
    color: #555;
    font-size: 12px;
}
.moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-content {
    padding: 0;
    background: #fff;
}

.moodle-dialogue-base .moodle-dialogue-fullscreen .moodle-dialogue-hd {
    padding: 10px;
    font-size: 16px;
}

.moodle-dialogue-base .moodle-dialogue-fullscreen .moodle-dialogue-content {
    overflow: auto;
    position: absolute;
    top: 0;
    bottom: 50px;
    left: 0;
    right: 0;
    margin: 0;
    border: 0;
}
.moodle-dialogue-base .moodle-dialogue-fullscreen .moodle-dialogue-hd,
.moodle-dialogue-base .moodle-dialogue-fullscreen .moodle-dialogue-wrap {
    border-radius: 0;
}
.moodle-dialogue-confirm .confirmation-dialogue {
    text-align: center;
}
.moodle-dialogue-confirm .confirmation-dialogue input {
    text-align: center;
}
.moodle-dialogue-exception .moodle-exception-message {
    text-align: center;
}
.moodle-dialogue-exception .moodle-exception-param label {
    font-weight: bold;
}
.moodle-dialogue-exception .param-stacktrace label {
    background-color: #eee;
    border: 1px solid #ccc;
    border-bottom-width: 0;
}
.moodle-dialogue-exception .param-stacktrace pre {
    border: 1px solid #ccc;
    background-color: #fff;
}
.moodle-dialogue-exception .param-stacktrace .stacktrace-file {
    color: navy;
    font-size: @fontSizeSmall;
}
.moodle-dialogue-exception .param-stacktrace .stacktrace-line {
    color: @errorText;
    font-size: @fontSizeSmall;
}
.moodle-dialogue-exception .param-stacktrace .stacktrace-call {
    color: #333;
    font-size: 90%;
    border-bottom: 1px solid #eee;
}
.moodle-dialogue-base .moodle-dialogue .moodle-dialogue-content .moodle-dialogue-ft {
    padding: 0;
    margin: 0.7em 1em;
    text-align: right;
    background-color: #fff;
    font-size: 12px;
}
.moodle-dialogue-confirm .confirmation-message {
    margin: 0.5em 1em;
}
.moodle-dialogue-confirm .confirmation-dialogue input {
    min-width: 80px;
}
.moodle-dialogue-exception .moodle-exception-message {
    margin: 1em;
}
.moodle-dialogue-exception .moodle-exception-param {
    margin-bottom: 0.5em;
}
.moodle-dialogue-exception .moodle-exception-param label {
    width: 150px;
}
.moodle-dialogue-exception .param-stacktrace label {
    display: block;
    margin: 0;
    padding: 4px 1em;
}
.moodle-dialogue-exception .param-stacktrace pre {
    display: block;
    height: 200px;
    overflow: auto;
}
.moodle-dialogue-exception .param-stacktrace .stacktrace-file {
    display: inline-block;
    margin: 4px 0;
}
.moodle-dialogue-exception .param-stacktrace .stacktrace-line {
    display: inline-block;
    width: 50px;
    margin: 4px 1em;
}
.moodle-dialogue-exception .param-stacktrace .stacktrace-call {
    padding-left: 25px;
    margin-bottom: 4px;
    padding-bottom: 4px;
}
.moodle-dialogue .moodle-dialogue-bd .content-lightbox {
    .opacity(75);
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: white;
    text-align: center;
    padding: 10% 0;
}
/* Apply a default max-height on tooltip text */
.moodle-dialogue .tooltiptext {
    max-height: 300px;
}

.moodle-dialogue-base .moodle-dialogue.moodle-dialogue-tooltip {
    z-index: 3001;

    .moodle-dialogue-bd {
        overflow: auto;
    }
}

/**
 * Chooser Dialogues (moodle-core-chooserdialogue)
 *
 * This CSS belong to the chooser dialogue which should work both with, and
 * without javascript enabled
 */
/* Hide the dialog and it's title */
.chooserdialoguebody,
.choosertitle {
    display: none;
}
.moodle-dialogue.chooserdialogue .moodle-dialogue-content .moodle-dialogue-ft {
    margin: 0;
}
.chooserdialogue .moodle-dialogue-wrap .moodle-dialogue-bd {
    padding: 0;
    background: #f2f2f2;
    .border-bottom-radius(10px);
}
/* Center the submit buttons within the area */
.choosercontainer #chooseform .submitbuttons {
    padding: 0.7em 0;
    text-align: center;
}
/* Fixed for safari browser on iPhone4S with ios7.*/
@media (max-height: 639px) {
    .ios.safari .choosercontainer #chooseform .submitbuttons {
        padding: 45px 0;
    }
}
.choosercontainer #chooseform .submitbuttons input {
    min-width: 100px;
    margin: 0 0.5em;
}
/* Various settings for the options area */
.choosercontainer #chooseform .options {
    position: relative;
    border-bottom: 1px solid #bbb;
}
/* Only set these options if we're showing the js container */
.jschooser .choosercontainer #chooseform .alloptions {
    overflow-x: hidden;
    overflow-y: auto;
    max-width: 20.3em;
    .box-shadow(inset 0 0 30px 0 #ccc);
    .option {
        input[type=radio] {
            display: inline-block;
        }
        .modicon {
            display: inline-block;
        }
        .typename {
            display: inline-block;
            width: 65%;
        }
    }
}

/* Settings for option rows and option subtypes */
.choosercontainer #chooseform .moduletypetitle,
.choosercontainer #chooseform .option,
.choosercontainer #chooseform .nonoption {
    margin-bottom: 0;
    padding: 0 1.6em 0 1.6em;
}
.choosercontainer #chooseform .moduletypetitle {
    text-transform: uppercase;
    padding-top: 1.2em;
    padding-bottom: 0.4em;
}
.choosercontainer #chooseform .option .typename,
.choosercontainer #chooseform .option span.modicon img.icon,
.choosercontainer #chooseform .nonoption .typename,
.choosercontainer #chooseform .nonoption span.modicon img.icon {
    padding: 0 0 0 0.5em;
}

.chooserdialogue-course-modchooser .choosercontainer #chooseform .option span.modicon img.icon,
.chooserdialogue-course-modchooser .choosercontainer #chooseform .nonoption span.modicon img.icon {
    height: 24px;
    width: 24px;
}
.choosercontainer #chooseform .option input[type=radio],
.choosercontainer #chooseform .option span.typename,
.choosercontainer #chooseform .option span.modicon {
    vertical-align: middle;
}
.choosercontainer #chooseform .option label {
    display: block;
    padding: 0.3em 0 0.1em 0;
    border-bottom: 1px solid #fff;
}
.choosercontainer #chooseform .nonoption {
    padding-left: 2.7em;
    padding-top: 0.3em;
    padding-bottom: 0.1em;
}
.choosercontainer #chooseform .subtype {
    margin-bottom: 0;
    padding: 0 1.6em 0 3.2em;
}
.choosercontainer #chooseform .subtype .typename {
    margin: 0 0 0 0.2em;
}

/* The instruction/help area */
.jschooser .choosercontainer #chooseform .instruction,
.jschooser .choosercontainer #chooseform .typesummary {
    display: none;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 20.3em;
    margin: 0;
    padding: 1.6em;
    background-color: #fff;
    overflow-x: hidden;
    overflow-y: auto;
    line-height: 2em;
}

/* Selected option settings */
.jschooser .choosercontainer #chooseform .instruction,
.choosercontainer #chooseform .selected .typesummary {
    display: block;
}
.choosercontainer #chooseform .selected {
    background-color: #fff;
    .box-shadow(0px 0 10px 0 #ccc);
}
.section-modchooser-link img.smallicon {
    padding: 3px;
}
/* Form element: listing */
.formlistingradio {
    padding-bottom: 25px;
    padding-right: 10px;
}
.formlistinginputradio {
    float: left;
}
.formlistingmain {
    min-height: 225px;
}
.formlisting {
    position: relative;
    margin: 15px 0;
    padding: 1px 19px 14px;
    background-color: white;
    border: 1px solid #ddd;
    .border-radius(4px);
}
.formlistingmore {
    position: absolute;
    cursor: pointer;
    bottom: -1px;
    right: -1px;
    padding: 3px 7px;
    font-size: 12px;
    font-weight: bold;
    background-color: #f5f5f5;
    border: 1px solid #ddd;
    color: #9da0a4;
    .border-radius(4px 0 4px 0);
}
.formlistingall {
    margin: 15px 0;
    padding: 0;
    .border-radius(4px);
}
.formlistingrow {
    cursor: pointer;
    border-bottom: 1px solid;
    border-color: #e1e1e8;
    border-left: 1px solid #e1e1e8;
    border-right: 1px solid #e1e1e8;
    background-color: #f7f7f9;
    .border-radius(0 0 4px 4px);
    padding: 6px;
    top: 50%;
    left: 50%;
    min-height: 34px;
    float: left;
    width: 150px;
}
body.jsenabled .formlistingradio {
    display: none;
}
body.jsenabled .formlisting {
    display: block;
}

/* Badges styles */
table.collection {
    .table;
    .table-bordered;
    .table-striped;
}
table.collection td.name {
    text-align: left;
    vertical-align: middle;
}
table.collection td.awards {
    width: 15%;
    text-align: center;
    vertical-align: middle;
}
table.collection td.criteria {
    width: 40%;
    text-align: left;
    vertical-align: top;
}
table.collection td.status {
    width: 15%;
    text-align: center;
    vertical-align: middle;
}
table.collection td.description {
    width: 25%;
    text-align: left;
}
table.collection td.actions {
    width: 11em;
    text-align: center;
    vertical-align: middle;
}
a.criteria-action {
    padding: 0 3px;
    float: right;
}
div.criteria-description {
    padding: 10px 15px;
    margin: 5px 0;
    background: none repeat scroll 0 0 #f9f9f9;
    border: 1px solid #eee;
}
ul.badges {
    margin: 0;
    list-style: none;
}
.badges li {
    position: relative;
    display: inline-block;
    padding-top: 1em;
    text-align: center;
    vertical-align: top;
    width: 150px;
}
.badges li .badge-name {
    display: block;
    padding: 5px;
}
.badges li > img {
    position: absolute;
}
.badges li .badge-image {
    width: 100px;
    height: 100px;
    left: 10px;
    top: 0;
    z-index: 1;
}
.badges li .badge-actions {
    position: relative;
}
.badges li .expireimage {
    width: 100px;
    height: 100px;
    left: 25px;
    top: 0;
    position: absolute;
    z-index: 10;
    opacity: 0.85;
}

#badge-image {
    background-color: transparent;
    padding: 0;
    position: relative;
    min-width: 100px;
    width: 20%;
    display: inline-block;
    vertical-align: top;
    margin-top: 17px;

    .expireimage {
        width: 100px;
        height: 100px;
        left: 0;
        top: 0;
        .opacity(85);
        position: absolute;
        z-index: 10;
    }

    .singlebutton {
        padding-top: 5px;

        input {
            margin-left: 0;
        }
    }
}
#badge-details {
    display: inline-block;
    width: 79%;
}

#badge-overview dl,
#badge-details dl {
    margin: 0;

    dt,
    dd {
        vertical-align: top;
        padding: 3px 0;
    }
    dt {
        clear: both;
        display: inline-block;
        width: 20%;
        min-width: 100px;
    }
    dd {
        display: inline-block;
        width: 79%;
        margin-left: 1%;
    }
}

.badge-profile {
    vertical-align: top;
}
.connected {
    color: @successText;
}
.notconnected {
    color: @errorText;
}
.connecting {
    color: @warningText;
}
#page-badges-award .recipienttable tr td {
    vertical-align: top;
}
#page-badges-award .recipienttable tr td.actions .actionbutton {
    margin: 0.3em 0;
    padding: 0.5em 0;
    width: 100%;
}
#page-badges-award .recipienttable tr td.existing,
#page-badges-award .recipienttable tr td.potential {
    width: 42%;
}

#issued-badge-table .activatebadge {
    display: inline-block;
}
.statusbox.active {
    background-color: @successBackground;
}
.statusbox.inactive {
    background-color: @warningBackground;
}
.statusbox {
    text-align: center;
    margin-bottom: 5px;
    padding: 5px;
}
.statusbox .activatebadge {
    display: inline-block;
}
.statusbox .activatebadge input[type=submit] {
    margin: 3px;
}
.activatebadge {
    margin: 0;
    text-align: left;
    vertical-align: middle;
}
img#persona_signin {
    cursor: pointer;
}
.addcourse {
    float: right;
}
.invisiblefieldset {
    display: inline;
    padding: 0;
    border-width: 0;
}
.breadcrumb-nav {
    float: left;
    margin-bottom: 10px;
}
.breadcrumb-button .singlebutton div {
    margin-right: 0;
}
.breadcrumb-nav .breadcrumb {
    margin: 0;
}

/** Header-bar styles **/
.page-context-header {
    // We need to be explicit about the height of the header.
    @pageHeaderHeight: 140px;

    // Do not remove these rules.
    overflow: hidden;

    .page-header-image,
    .page-header-headings {
        display: block;
        position: relative;
    }
    .page-header-image {
        margin-bottom: 1em;
    }
    .page-header-headings {
        margin-top: 30px;
        margin-bottom: 10px;

        h1 {
            display: block;
        }
    }

    .page-header-headings,
    .header-button-group {
        position: relative;
        line-height: 24px;
        vertical-align: middle;
    }

    .header-button-group {
        display: block;

        a {
            position: relative;

            // Don't touch it unless you know exactly what you are doing.
            top: -0.4em;
        }
    }
}

.page-context-header {
    .page-header-image {
        float: left;
        margin-right: 1em;
    }

    .header-button-group {
        float: left;
    }
}

/** Action menu component styles **/
.moodle-actionmenu,
.moodle-actionmenu > ul,
.moodle-actionmenu > ul > li {
    display: inline-block;
}

.moodle-actionmenu ul {
    padding: 0;
    margin: 0;
    list-style-type: none;
}

.section_action_menu .moodle-actionmenu ul.menubar {
    margin: 0;
}

.section_action_menu .moodle-actionmenu ul.menu {
    margin: 0 10px 10px 0;
}

.moodle-actionmenu .toggle-display,
.moodle-actionmenu .menu-action-text {
    display: none; /** Hidden by default, display none so that we don't take up space. **/
}

.jsenabled {
    .moodle-actionmenu[data-enhance] {
        display: block;
        .menu {
            display: none;
        }
        .toggle-display {
            display: inline; /** JS is enabled, we'll be using it so return display to normal **/
            .opacity(50);
        }
        .toggle-display.textmenu {
            display: block;
            margin-left: 4px;
            padding-left: 4px;
            padding-right: 4px;

            .iconsmall,
            .smallicon {
                margin: 4px 4px 4px 0;
                padding: 8px 4px 0 2px;
                vertical-align: text-bottom;
            }

            .caret {
                margin-top: 8px;
                margin-left: 2px;
                border-top-color: @navbarLinkColor;
                &:hover,
                &:active {
                    border-top-color: @navbarLinkColorActive;
                }
            }
        }
    }
    .moodle-actionmenu[data-enhanced] {
        .toggle-display {
            .opacity(100);
        }
        .menu-action-text {
            display: inline;
        }
    }
}

.moodle-actionmenu[data-enhanced].show {

    position: relative;

    .menu {

        display: block;
        position: absolute;
        text-align: left;
        background-color: @dropdownBackground;
        border: 1px solid @dropdownBorder;
        z-index: 1000;
        .border-radius(5px);
        .box-shadow(5px 5px 20px 0 #666);

        a {
            display: block;
            color: @dropdownLinkColor;
            padding: 2px 1em 2px 28px;
            &:hover {
                color: @dropdownLinkColorHover;
                background-color: @dropdownLinkBackgroundHover;
            }
            &:first-child {
                .border-top-radius(4px);
            }
            &:last-child {
                .border-bottom-radius(4px);
            }
        }
        a.hidden {
            display: none;
        }
        img {
            vertical-align: middle;
        }
        .iconsmall,
        .smallicon {
            margin: 4px 4px 4px -24px;
            padding: 4px;
        }
        > li {
            display: block;
        }

        /** bottom left of button **/
        &.align-tl-bl {
            top: 100%;
            left: 0;
            margin-top: 4px;
        }
        &.align-tr-bl {
            top: 100%;
            right: 100%;
        }
        &.align-bl-bl {
            bottom: 100%;
            left: 0;
        }
        &.align-br-bl {
            bottom: 100%;
            right: 100%;
        }
        /** bottom right of button **/
        &.align-tl-br {
            top: 100%;
            left: 100%;
        }
        &.align-tr-br {
            top: 100%;
            right: 0;
            margin-top: 4px;
        }

        &.align-bl-br {
            bottom: 100%;
            left: 100%;
        }

        &.align-br-br {
            bottom: 100%;
            right: 0;
        }
        /** top left of button **/
        &.align-tl-tl {
            top: 0;
            left: 0;
        }

        &.align-tr-tl {
            top: 0;
            right: 100%;
            margin-right: 4px;
        }

        &.align-bl-tl {
            bottom: 100%;
            left: 0;
            margin-bottom: 4px;
        }

        &.align-br-tl {
            bottom: 100%;
            right: 100%;
        }
        /** top right of button **/
        &.align-tl-tr {
            top: 0;
            left: 100%;
            margin-left: 4px;
        }

        &.align-tr-tr {
            top: 0;
            right: 0;
        }

        &.align-bl-tr {
            bottom: 100%;
            left: 100%;
        }

        &.align-br-tr {
            bottom: 100%;
            right: 0;
            margin-bottom: 4px;
        }

    }
    /** no wrap is set - prevent menu items from wrapping **/
    &.nowrap-items .menu > li {
        white-space: nowrap;
    }
}

.block .moodle-actionmenu {
    text-align: right;
}

ul.dragdrop-keyboard-drag li {
    list-style-type: none;
}

.block-control-actions .moodle-core-dragdrop-draghandle img {
    width: 12px;
    height: 12px;
}

a.disabled:hover,
a.disabled {
    text-decoration: none;
    cursor: default;
    font-style: italic;
    color: #808080;
}
body.lockscroll {
    height: 100%;
    overflow: hidden;
}

.progressbar_container {
    max-width: 500px;
    margin: 0 auto;
}

/* IE10 only fix for calendar titling */
.ie10 .yui3-calendar-header-label {
    display: inline-block;
}

dd:before,
dd:after {
    display: block;
    content: " ";
}
dd:after {
    clear: both;
}

// Active tabs with links should have a different
// cursor to indicate they are clickable.
.nav-tabs > .active > a[href],
.nav-tabs > .active > a[href]:hover,
.nav-tabs > .active > a[href]:focus {
    cursor: pointer;
}

.inplaceeditable {

    &.inplaceeditingon {
        position: relative;

        .editinstructions {
            margin-top: -30px;
            font-weight: normal;
            margin-right: 0;
            margin-left: 0;
            left: 0;
            right: auto;
            white-space: nowrap;
        }

        input {
            width: 330px;
            height: 16px;
            vertical-align: text-bottom;
            margin-bottom: 0;
        }

        select {
            margin-bottom: 0;
        }
    }

    .quickediticon img {
        opacity: 0.2;
    }

    .quickeditlink {
        color: inherit;
        text-decoration: inherit;
    }

    &:hover .quickeditlink .quickediticon img,
    .quickeditlink:focus .quickediticon img {
        opacity: 1;
    }

    &.inplaceeditable-toggle .quickediticon {
        display: none;
    }
}

h3.sectionname .inplaceeditable.inplaceeditingon .editinstructions {
    margin-top: -20px;
}

/** Chart area. */
.chart-area {

    .chart-table-data {
        display: none;
    }

    .chart-table {
        .chart-output-htmltable caption {
            white-space: nowrap;
        }
        /** When accessible, we display the table only. */
        &.accesshide {
            .chart-table-expand {
                display: none;
            }
            .chart-table-data {
                display: block;
            }
        }
    }
}

.hover-tooltip-container {
    position: relative;

    .hover-tooltip {
        opacity: 0;
        visibility: hidden;
        position: absolute;
        /*rtl:ignore*/
        left: 50%;
        top: ~"calc(-50% - 5px)";
        transform: translate(-50%, -50%);
        background-color: #fff;
        border: 1px solid rgba(0, 0, 0, .2);
        border-radius: .3rem;
        box-sizing: border-box;
        padding: 5px;
        white-space: nowrap;
        transition: opacity 0.15s, visibility 0.15s;
        z-index: 1000;

        &:before {
            content: '';
            display: inline-block;
            border-left: 8px solid transparent;
            border-right: 8px solid transparent;
            border-top: 8px solid rgba(0, 0, 0, .2);
            position: absolute;
            bottom: -8px;
            left: ~"calc(50% - 8px)";
        }

        &:after {
            content: '';
            display: inline-block;
            border-left: 7px solid transparent;
            border-right: 7px solid transparent;
            border-top: 7px solid #fff;
            position: absolute;
            bottom: -6px;
            left: ~"calc(50% - 7px)";
            z-index: 2;
        }
    }

    &:hover {
        .hover-tooltip {
            opacity: 1;
            visibility: visible;
            transition: opacity 0.15s 0.5s, visibility 0.15s 0.5s;
        }
    }
}
