From 64f9b8b04384253bfe1c68b268697a922afa0418 Mon Sep 17 00:00:00 2001 From: PMKuipers Date: Sat, 26 Aug 2023 23:37:36 +0200 Subject: [PATCH] Integrated scss style building in Grunt extension --- Gruntfile.js | 101 +++ build.sh | 1 + css/devstyles.css | 1582 +++++++++++++++++++++++----------------- scss/generic.scss | 6 +- scss/readme-moodle.txt | 8 +- scss/studyplan.scss | 53 +- scss/styles.scss | 4 + scssbuild.js | 63 -- styles.css | 1274 +++++++++++++++++++++++++++++++- 9 files changed, 2299 insertions(+), 793 deletions(-) create mode 100644 Gruntfile.js create mode 100644 scss/styles.scss delete mode 100755 scssbuild.js diff --git a/Gruntfile.js b/Gruntfile.js new file mode 100644 index 0000000..fcfaf86 --- /dev/null +++ b/Gruntfile.js @@ -0,0 +1,101 @@ +// This file is part of Moodle - http://moodle.org/ +// +// Moodle is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// Moodle is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with Moodle. If not, see . +/* jshint node: true, browser: false */ +/* eslint-env node */ + +/** + * Grunt configuration for local_treestudyplan + * + * @copyright 2023 P.M. Kuipers + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + + +/** + * Grunt configuration. + * + * @param {Grunt} grunt + */ +module.exports = function(grunt) { + const path = require('path'); + const process = require('process'); + const sass = require('sass'); + + // Import grunt configuration for moodle base + process.chdir("../.."); // change dir to moodle base + require(path.resolve(`./Gruntfile.js`))(grunt); // Run Gruntfile module from moodle base + + grunt.registerTask('scssplugin','Compile scss/*.sccs into styles.css and css/devstyles.css', () => { + + const devoutput = 'css/devstyles.css'; + const prodoutput = 'styles.css'; + + // Get full path of compenent and scss folder + const componentPath = path.join(grunt.moodleEnv.gruntFilePath,grunt.moodleEnv.componentDirectory); + const scssPath = path.join(componentPath, 'scss','styles.scss'); + console.log(`Compiling ${scssPath} including any imported files therein`); + + process.chdir(path.join(componentPath, 'scss')); + const result = sass.compile(scssPath); + if ( result ) { + console.info("got result"); + + // Some regex processing to match moodle stylelint styles + + // change tab indent to 4 instead of 2 + let css = result.css.replace(/^ ([^ ])/gm ," $1"); + + // insert a newline after every comma in a css selector + // (only combined selectors will get that long) + css = css.replace(/^[^ ].*[\{,]$/gm , (m) => { // Find CSS selector lines + return m.replace(/, /g,",\n"); // replace comma followed by space with comma newline + }); + + // replace hex color codes with lowercase (convenience function since I don't really care for the hex codes lowercase only rule) + const hexCodeToLower = (match, m1, m2) => { + return '#'+m1.toLowerCase()+m2; + } + css = css.replace(/#([A-F0-9a-f]{3})([^A-F0-9a-f]?)/gm , hexCodeToLower); // 3 digit color codes + css = css.replace(/#([A-F0-9a-f]{6})([^A-F0-9a-f]?)/gm , hexCodeToLower); // 6 digit color codes + css = css.replace(/#([A-F0-9a-f]{8})([^A-F0-9a-f]?)/gm , hexCodeToLower); // 8 digit color codes (with alpha) + + // All other errors should really be fixed in the scss files :) + + [devoutput,prodoutput].forEach((output) => { + console.info(`Storing ${output}`); + grunt.file.write(path.join(componentPath, output),css); + }); + } + + }); + + // Rebuild on changes in the scss files when using 'grunt watch' + grunt.config.merge({ + watch: { + scssplugin: { + files: ['scss/*.scss'], + tasks: ['scssplugin'] + }, + }, + }); + + // Remove gherkinlint from the startup list, since it exits with an error because of errors in moodle's own code + grunt.moodleEnv.startupTasks.splice(grunt.moodleEnv.startupTasks.indexOf("gherkinlint"),1); + + // Add the 'scssplugin' task as a startup task. + grunt.moodleEnv.startupTasks.push('scssplugin'); + + +}; diff --git a/build.sh b/build.sh index 82da397..fcdde38 100755 --- a/build.sh +++ b/build.sh @@ -14,6 +14,7 @@ $SCRIPTDIR/vuemode.sh prod # so we can be sure all javascript is properly built from the most recent source cd $SCRIPTDIR grunt amd +grunt scssplugin # plugin specific scss task to compile styles.css from scss files # run the build php script php ${SCRIPTDIR}/build.php $@ diff --git a/css/devstyles.css b/css/devstyles.css index 4e295bc..5f72756 100644 --- a/css/devstyles.css +++ b/css/devstyles.css @@ -1,30 +1,33 @@ -/**** colors.scss ****/ -.path-local-treestudyplan, .features-treestudyplan { - /* we can override these colors in the :root field if needed */ - --less-light: color-mix(in srgb, var(--light) 80%, #ccc); - --highlight-mix: 10%; - --highlight: var(--info); - --past: var(--purple); - --present: var(--blue); - --future: var(--gray); - --coursecat-list: var(--blue); - --course-list: var(--green); - --excellent: var(--blue); - --pending: var(--gray); - --incomplete: var(--gray); +.path-local-treestudyplan, +.features-treestudyplan { + /* we can override these colors in the :root field if needed */ + --less-light: color-mix(in srgb, var(--light) 80%, #ccc); + --highlight-mix: 10%; + --highlight: var(--info); + --past: var(--purple); + --present: var(--blue); + --future: var(--gray); + --coursecat-list: var(--blue); + --course-list: var(--green); + --excellent: var(--blue); + --pending: var(--gray); + --incomplete: var(--gray); } -/**** generic.scss ****/ + .path-local-treestudyplan div.tab-pane:target { - margin-top: 0px; + margin-top: 0; } .path-local-treestudyplan [v-cloak] { - visibility: hidden; + visibility: hidden; } .path-local-treestudyplan .vue-loader { - width: 32px; - margin: auto; + width: 32px; + margin: auto; } -/**** invitemanager.scss ****/ +.path-local-treestudyplan .special { + color: gold; +} + /******************* * * Invite manager @@ -32,1064 +35,1277 @@ ********************/ .path-admin-local-treestudyplan table.m-cohortgrouptable, .path-admin-local-treestudyplan table.m-roomtable { - width: auto; + width: auto; } .path-local-treestudyplan table.m-manage_invites { - margin-bottom: 2em; - width: 80%; + margin-bottom: 2em; + width: 80%; } .path-local-treestudyplan table.m-manage_invites thead tr { - background-color: #009EE2; - color: white; + background-color: #009ee2; + color: white; } .path-local-treestudyplan table.m-manage_invites tbody tr:nth-child(even) { - background-color: #D4EDFC; + background-color: #d4edfc; } .path-local-treestudyplan table.m-manage_invites tbody tr:nth-child(odd) { - background-color: white; + background-color: white; } .path-local-treestudyplan table.m-manage_invites tbody td { - padding: 5px; + padding: 5px; } .path-local-treestudyplan table.m-manage_invites tbody td[data-field=name] { - width: 20em; + width: 20em; } .path-local-treestudyplan table.m-manage_invites tbody td[data-field=email] { - width: 10em; + width: 10em; } .path-local-treestudyplan table.m-manage_invites tbody td[data-field=date] { - width: 10em; + width: 10em; } .path-local-treestudyplan table.m-manage_invites tbody td[data-field=allow_details], .path-local-treestudyplan table.m-manage_invites tbody td[data-field=allow_calendar], .path-local-treestudyplan table.m-manage_invites tbody td[data-field=allow_badges] { - width: 5em; - padding-left: 1em; + width: 5em; + padding-left: 1em; } .path-local-treestudyplan table.m-manage_invites tbody td[data-field=control] { - width: 150px; + width: 150px; } .path-local-treestudyplan table.m-manage_invites tbody td[data-field=control] a { - margin-left: 7px; - margin-right: 7px; + margin-left: 7px; + margin-right: 7px; } -/**** studyplan.scss ****/ -.path-local-treestudyplan .t-toolbox-preface, .features-treestudyplan .t-toolbox-preface { - margin: 10px; + +.path-local-treestudyplan .t-toolbox-preface, +.features-treestudyplan .t-toolbox-preface { + margin: 10px; } -.path-local-treestudyplan .t-studyplan-container, .features-treestudyplan .t-studyplan-container { - margin-top: 16px; - min-height: 500px; +.path-local-treestudyplan .t-studyplan-container, +.features-treestudyplan .t-studyplan-container { + margin-top: 16px; + min-height: 500px; } .path-local-treestudyplan .t-studyplan-content, -.path-local-treestudyplan .r-studyplan-content, .features-treestudyplan .t-studyplan-content, +.path-local-treestudyplan .r-studyplan-content, +.features-treestudyplan .t-studyplan-content, .features-treestudyplan .r-studyplan-content { - display: flex; + display: flex; } .path-local-treestudyplan .t-studyplan-headings, -.path-local-treestudyplan .r-studyplan-headings, .features-treestudyplan .t-studyplan-headings, +.path-local-treestudyplan .r-studyplan-headings, +.features-treestudyplan .t-studyplan-headings, .features-treestudyplan .r-studyplan-headings { - display: block; + display: block; } .path-local-treestudyplan .t-studyplan-wrapper, -.path-local-treestudyplan .r-studyplan-wrapper, .features-treestudyplan .t-studyplan-wrapper, +.path-local-treestudyplan .r-studyplan-wrapper, +.features-treestudyplan .t-studyplan-wrapper, .features-treestudyplan .r-studyplan-wrapper { - display: block; + display: block; } .path-local-treestudyplan .t-studyplan-timeline, -.path-local-treestudyplan .r-studyplan-timeline, .features-treestudyplan .t-studyplan-timeline, +.path-local-treestudyplan .r-studyplan-timeline, +.features-treestudyplan .t-studyplan-timeline, .features-treestudyplan .r-studyplan-timeline { - display: grid; - position: relative; /* make sure this grid is the offset for all arrows that are drawn by SimpleLine */ - /* grid-template-columns will be set in the style attribute */ - /* Use the variables below to specify width for filter spots and course spots */ - --studyplan-filter-width: auto; /* better leave this at auto for now*/ - --studyplan-course-width: auto; /* better leave this at auto for now*/ + display: grid; + position: relative; /* make sure this grid is the offset for all arrows that are drawn by SimpleLine */ + /* grid-template-columns will be set in the style attribute */ + /* Use the variables below to specify width for filter spots and course spots */ + --studyplan-filter-width: auto; /* better leave this at auto for now*/ + --studyplan-course-width: auto; /* better leave this at auto for now*/ } .path-local-treestudyplan .t-studyplan-scrollable, -.path-local-treestudyplan .r-studyplan-scrollable, .features-treestudyplan .t-studyplan-scrollable, +.path-local-treestudyplan .r-studyplan-scrollable, +.features-treestudyplan .t-studyplan-scrollable, .features-treestudyplan .r-studyplan-scrollable { - overflow-x: scroll; - overflow-y: clip; /* to ensure the x scrollbar does not cause an y scrollbar to appear */ - scrollbar-color: var(--primary) color-mix(in srgb, var(--primary) 20%, white); - scrollbar-width: thin; + overflow-x: scroll; + overflow-y: clip; /* to ensure the x scrollbar does not cause an y scrollbar to appear */ + scrollbar-color: var(--primary) color-mix(in srgb, var(--primary) 20%, white); + scrollbar-width: thin; } .path-local-treestudyplan .t-studyplan-scrollable::-webkit-scrollbar, -.path-local-treestudyplan .r-studyplan-scrollable::-webkit-scrollbar, .features-treestudyplan .t-studyplan-scrollable::-webkit-scrollbar, +.path-local-treestudyplan .r-studyplan-scrollable::-webkit-scrollbar, +.features-treestudyplan .t-studyplan-scrollable::-webkit-scrollbar, .features-treestudyplan .r-studyplan-scrollable::-webkit-scrollbar { - width: 8px; + width: 8px; } .path-local-treestudyplan .t-studyplan-scrollable::-webkit-scrollbar-track, -.path-local-treestudyplan .r-studyplan-scrollable::-webkit-scrollbar-track, .features-treestudyplan .t-studyplan-scrollable::-webkit-scrollbar-track, +.path-local-treestudyplan .r-studyplan-scrollable::-webkit-scrollbar-track, +.features-treestudyplan .t-studyplan-scrollable::-webkit-scrollbar-track, .features-treestudyplan .r-studyplan-scrollable::-webkit-scrollbar-track { - background: color-mix(in srgb, var(--primary) 20%, white); + background: color-mix(in srgb, var(--primary) 20%, white); } .path-local-treestudyplan .t-studyplan-scrollable::-webkit-scrollbar-thumb, -.path-local-treestudyplan .r-studyplan-scrollable::-webkit-scrollbar-thumb, .features-treestudyplan .t-studyplan-scrollable::-webkit-scrollbar-thumb, +.path-local-treestudyplan .r-studyplan-scrollable::-webkit-scrollbar-thumb, +.features-treestudyplan .t-studyplan-scrollable::-webkit-scrollbar-thumb, .features-treestudyplan .r-studyplan-scrollable::-webkit-scrollbar-thumb { - background: var(--primary); + background: var(--primary); } .path-local-treestudyplan .t-studyplan-column-heading, -.path-local-treestudyplan .r-studyplan-column-heading, .features-treestudyplan .t-studyplan-column-heading, +.path-local-treestudyplan .r-studyplan-column-heading, +.features-treestudyplan .t-studyplan-column-heading, .features-treestudyplan .r-studyplan-column-heading { - color: inherit; /* placeholder */ + color: inherit; /* placeholder */ } -.path-local-treestudyplan ul.dropdown-menu.show, .features-treestudyplan ul.dropdown-menu.show { - background-color: white; +.path-local-treestudyplan ul.dropdown-menu.show, +.features-treestudyplan ul.dropdown-menu.show { + background-color: white; } .path-local-treestudyplan .t-studyline, -.path-local-treestudyplan .r-studyline, .features-treestudyplan .t-studyline, +.path-local-treestudyplan .r-studyline, +.features-treestudyplan .t-studyline, .features-treestudyplan .r-studyline { - display: grid; - grid-auto-flow: column; - /*border-bottom-style: solid;*/ - border-color: #cccccc; - border-width: 1px; + display: grid; + grid-auto-flow: column; + /*border-bottom-style: solid;*/ + border-color: #ccc; + border-width: 1px; } -.path-local-treestudyplan .t-studyline-drag .t-studyline, .features-treestudyplan .t-studyline-drag .t-studyline { - justify-content: start; +.path-local-treestudyplan .t-studyline-drag .t-studyline, +.features-treestudyplan .t-studyline-drag .t-studyline { + justify-content: start; } .path-local-treestudyplan .t-studyline.t-studyline-heading, -.path-local-treestudyplan .r-studyline.r-studyline-heading, .features-treestudyplan .t-studyline.t-studyline-heading, +.path-local-treestudyplan .r-studyline.r-studyline-heading, +.features-treestudyplan .t-studyline.t-studyline-heading, .features-treestudyplan .r-studyline.r-studyline-heading { - border-right-style: none; + border-right-style: none; } .path-local-treestudyplan .t-studyline.end, -.path-local-treestudyplan .r-studyline.end, .features-treestudyplan .t-studyline.end, +.path-local-treestudyplan .r-studyline.end, +.features-treestudyplan .t-studyline.end, .features-treestudyplan .r-studyline.end { - border-right-style: solid; + border-right-style: solid; } -.path-local-treestudyplan .t-studyline .t-studyline-editmode-content, .features-treestudyplan .t-studyline .t-studyline-editmode-content { - border-right-style: solid; - border-color: #cccccc; - border-width: 1px; +.path-local-treestudyplan .t-studyline .t-studyline-editmode-content, +.features-treestudyplan .t-studyline .t-studyline-editmode-content { + border-right-style: solid; + border-color: #ccc; + border-width: 1px; } -.path-local-treestudyplan .t-studyline .controlbox, .features-treestudyplan .t-studyline .controlbox { - white-space: nowrap; - width: 64px; +.path-local-treestudyplan .t-studyline .controlbox, +.features-treestudyplan .t-studyline .controlbox { + white-space: nowrap; + width: 64px; } -.path-local-treestudyplan .t-studyline .control, .features-treestudyplan .t-studyline .control { - display: inline-block; - width: 24px; - text-align: center; - padding-top: 5px; +.path-local-treestudyplan .t-studyline .control, +.features-treestudyplan .t-studyline .control { + display: inline-block; + width: 24px; + text-align: center; + padding-top: 5px; } -.path-local-treestudyplan .t-studyline-editmode-content, .features-treestudyplan .t-studyline-editmode-content { - min-width: 450px; - max-width: 700px; - display: flex; - flex-direction: row; - justify-content: center; +.path-local-treestudyplan .t-studyline-editmode-content, +.features-treestudyplan .t-studyline-editmode-content { + min-width: 450px; + max-width: 700px; + display: flex; + flex-direction: row; + justify-content: center; } -.path-local-treestudyplan .t-studyplan-controlbox, .features-treestudyplan .t-studyplan-controlbox { - height: 30px; +.path-local-treestudyplan .t-studyplan-controlbox, +.features-treestudyplan .t-studyplan-controlbox { + height: 30px; } -.path-local-treestudyplan .t-studyplan-controlbox .control, .features-treestudyplan .t-studyplan-controlbox .control { - float: right; - margin-left: 10px; - margin-right: 5px; +.path-local-treestudyplan .t-studyplan-controlbox .control, +.features-treestudyplan .t-studyplan-controlbox .control { + float: right; + margin-left: 10px; + margin-right: 5px; } -.path-local-treestudyplan .t-studyline-drag, .features-treestudyplan .t-studyline-drag { - display: inline; +.path-local-treestudyplan .t-studyline-drag, +.features-treestudyplan .t-studyline-drag { + display: inline; } -.path-local-treestudyplan .t-studyline-add, .features-treestudyplan .t-studyline-add { - margin-top: 0.5em; - margin-bottom: 1em; +.path-local-treestudyplan .t-studyline-add, +.features-treestudyplan .t-studyline-add { + margin-top: 0.5em; + margin-bottom: 1em; } .path-local-treestudyplan .t-studyline-title, -.path-local-treestudyplan .r-studyline-title, .features-treestudyplan .t-studyline-title, +.path-local-treestudyplan .r-studyline-title, +.features-treestudyplan .t-studyline-title, .features-treestudyplan .r-studyline-title { - padding-top: 5px; - padding-left: 10px; - width: 150px; - white-space: nowrap; - border-color: rgba(0, 0, 0, 0.125); - border-width: 1px; - border-left-style: solid; - display: flex; - flex-direction: column; - justify-content: center; + padding-top: 5px; + padding-left: 10px; + width: 150px; + white-space: nowrap; + border-color: rgba(0, 0, 0, 0.125); + border-width: 1px; + border-left-style: solid; + display: flex; + flex-direction: column; + justify-content: center; } .path-local-treestudyplan .t-studyline-title abbr, -.path-local-treestudyplan .r-studyline-title abbr, .features-treestudyplan .t-studyline-title abbr, +.path-local-treestudyplan .r-studyline-title abbr, +.features-treestudyplan .t-studyline-title abbr, .features-treestudyplan .r-studyline-title abbr { - display: inline-block; - vertical-align: middle; - font-weight: bold; - font-style: italic; + display: inline-block; + vertical-align: middle; + font-weight: bold; + font-style: italic; } -.path-local-treestudyplan svg.empty-slot circle, .features-treestudyplan svg.empty-slot circle { - fill: transparent; - stroke: #ccc; - stroke-width: 4px; - stroke-opacity: 0.5; - stroke-dasharray: 4 4; +.path-local-treestudyplan svg.empty-slot circle, +.features-treestudyplan svg.empty-slot circle { + fill: transparent; + stroke: #ccc; + stroke-width: 4px; + stroke-opacity: 0.5; + stroke-dasharray: 4 4; } .path-local-treestudyplan ul.t-item-module-children, .path-local-treestudyplan ul.t-coursecat-list li, -.path-local-treestudyplan ul.t-course-list li, .features-treestudyplan ul.t-item-module-children, +.path-local-treestudyplan ul.t-course-list li, +.features-treestudyplan ul.t-item-module-children, .features-treestudyplan ul.t-coursecat-list li, .features-treestudyplan ul.t-course-list li { - list-style: none; - padding-left: 0; + list-style: none; + padding-left: 0; } -.path-local-treestudyplan li.t-item-course-gradeinfo, .features-treestudyplan li.t-item-course-gradeinfo { - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; +.path-local-treestudyplan li.t-item-course-gradeinfo, +.features-treestudyplan li.t-item-course-gradeinfo { + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; } -.path-local-treestudyplan span.t-item-course-chk-lbl, .features-treestudyplan span.t-item-course-chk-lbl { - font-size: 0.7em; - display: inline-block; - width: 4em; +.path-local-treestudyplan span.t-item-course-chk-lbl, +.features-treestudyplan span.t-item-course-chk-lbl { + font-size: 0.7em; + display: inline-block; + width: 4em; } -.path-local-treestudyplan li.t-item-course-gradeinfo img, .features-treestudyplan li.t-item-course-gradeinfo img { - vertical-align: top; - top: 3px; - position: relative; - max-width: 24px; - max-height: 24px; +.path-local-treestudyplan li.t-item-course-gradeinfo img, +.features-treestudyplan li.t-item-course-gradeinfo img { + vertical-align: top; + top: 3px; + position: relative; + max-width: 24px; + max-height: 24px; } -.path-local-treestudyplan i.t-coursecat-list-item, .features-treestudyplan i.t-coursecat-list-item { - color: var(--coursecat-list); +.path-local-treestudyplan i.t-coursecat-list-item, +.features-treestudyplan i.t-coursecat-list-item { + color: var(--coursecat-list); } -.path-local-treestudyplan i.t-course-list-item, .features-treestudyplan i.t-course-list-item { - color: var(--course-list); +.path-local-treestudyplan i.t-course-list-item, +.features-treestudyplan i.t-course-list-item { + color: var(--course-list); } -.path-local-treestudyplan ul.t-competency-list li, .features-treestudyplan ul.t-competency-list li { - list-style: none; +.path-local-treestudyplan ul.t-competency-list li, +.features-treestudyplan ul.t-competency-list li { + list-style: none; } .path-local-treestudyplan .collapsed > .when-open, -.path-local-treestudyplan .not-collapsed > .when-closed, .features-treestudyplan .collapsed > .when-open, +.path-local-treestudyplan .not-collapsed > .when-closed, +.features-treestudyplan .collapsed > .when-open, .features-treestudyplan .not-collapsed > .when-closed { - display: none; + display: none; } .path-local-treestudyplan .t-studyline-slot, -.path-local-treestudyplan .r-studyline-slot, .features-treestudyplan .t-studyline-slot, +.path-local-treestudyplan .r-studyline-slot, +.features-treestudyplan .t-studyline-slot, .features-treestudyplan .r-studyline-slot { - width: 130px; + width: 130px; } -.path-local-treestudyplan .r-studyline-slot, .features-treestudyplan .r-studyline-slot { - min-height: 32px; +.path-local-treestudyplan .r-studyline-slot, +.features-treestudyplan .r-studyline-slot { + min-height: 32px; } .path-local-treestudyplan .t-studyline-slot-0.filter .t-slot-item, -.path-local-treestudyplan .r-studyline-slot-0.filter .r-slot-item, .features-treestudyplan .t-studyline-slot-0.filter .t-slot-item, +.path-local-treestudyplan .r-studyline-slot-0.filter .r-slot-item, +.features-treestudyplan .t-studyline-slot-0.filter .t-slot-item, .features-treestudyplan .r-studyline-slot-0.filter .r-slot-item { - margin-left: 0; + margin-left: 0; } .path-local-treestudyplan .t-studyline-slot.t-studyline-slot-0, -.path-local-treestudyplan .r-studyline-slot.r-studyline-slot-0, .features-treestudyplan .t-studyline-slot.t-studyline-slot-0, +.path-local-treestudyplan .r-studyline-slot.r-studyline-slot-0, +.features-treestudyplan .t-studyline-slot.t-studyline-slot-0, .features-treestudyplan .r-studyline-slot.r-studyline-slot-0 { - width: 75px; + width: 75px; } .path-local-treestudyplan .t-studyline-slot.t-studyline-slot-0 .t-slot-drop.filter .t-slot-item, -.path-local-treestudyplan .r-studyline-slot.r-studyline-slot-0 .r-item-base, .features-treestudyplan .t-studyline-slot.t-studyline-slot-0 .t-slot-drop.filter .t-slot-item, +.path-local-treestudyplan .r-studyline-slot.r-studyline-slot-0 .r-item-base, +.features-treestudyplan .t-studyline-slot.t-studyline-slot-0 .t-slot-drop.filter .t-slot-item, .features-treestudyplan .r-studyline-slot.r-studyline-slot-0 .r-item-base { - margin-left: 0px; + margin-left: 0; } .path-local-treestudyplan .t-studyline-slot.gradable.current.odd, -.path-local-treestudyplan .r-studyline-slot.gradable.current.odd, .features-treestudyplan .t-studyline-slot.gradable.current.odd, +.path-local-treestudyplan .r-studyline-slot.gradable.current.odd, +.features-treestudyplan .t-studyline-slot.gradable.current.odd, .features-treestudyplan .r-studyline-slot.gradable.current.odd { - --hlcol: color-mix(in srgb, var(--less-light) , var(--highlight) var(--highlight-mix)); - background-color: var(--hlcol); - position: relative; + --hlcol: color-mix(in srgb, var(--less-light), var(--highlight) var(--highlight-mix)); + background-color: var(--hlcol); + position: relative; } .path-local-treestudyplan .t-studyline-slot.gradable.current.odd:before, -.path-local-treestudyplan .r-studyline-slot.gradable.current.odd:before, .features-treestudyplan .t-studyline-slot.gradable.current.odd:before, +.path-local-treestudyplan .r-studyline-slot.gradable.current.odd:before, +.features-treestudyplan .t-studyline-slot.gradable.current.odd:before, .features-treestudyplan .r-studyline-slot.gradable.current.odd:before { - --hlcol: color-mix(in srgb, var(--less-light) , var(--highlight) var(--highlight-mix)); - box-shadow: -20px 0 10px -7px var(--hlcol) inset; - content: " "; - height: 100%; - left: -20px; - position: absolute; - top: 0; - width: 20px; + --hlcol: color-mix(in srgb, var(--less-light), var(--highlight) var(--highlight-mix)); + box-shadow: -20px 0 10px -7px var(--hlcol) inset; + content: " "; + height: 100%; + left: -20px; + position: absolute; + top: 0; + width: 20px; } .path-local-treestudyplan .t-studyline-slot.gradable.current.odd:after, -.path-local-treestudyplan .r-studyline-slot.gradable.current.odd:after, .features-treestudyplan .t-studyline-slot.gradable.current.odd:after, +.path-local-treestudyplan .r-studyline-slot.gradable.current.odd:after, +.features-treestudyplan .t-studyline-slot.gradable.current.odd:after, .features-treestudyplan .r-studyline-slot.gradable.current.odd:after { - --hlcol: color-mix(in srgb, var(--less-light) , var(--highlight) var(--highlight-mix)); - box-shadow: 20px 0 10px -7px var(--hlcol) inset; - content: " "; - height: 100%; - right: -20px; - position: absolute; - top: 0; - width: 20px; + --hlcol: color-mix(in srgb, var(--less-light), var(--highlight) var(--highlight-mix)); + box-shadow: 20px 0 10px -7px var(--hlcol) inset; + content: " "; + height: 100%; + right: -20px; + position: absolute; + top: 0; + width: 20px; } -.path-local-treestudyplan .t-studyline-slot.lastlyr .t-slot-item, .features-treestudyplan .t-studyline-slot.lastlyr .t-slot-item { - margin-bottom: 0; +.path-local-treestudyplan .t-studyline-slot.lastlyr .t-slot-item, +.features-treestudyplan .t-studyline-slot.lastlyr .t-slot-item { + margin-bottom: 0; } -.path-local-treestudyplan .s-studyline-header-period.current, .features-treestudyplan .s-studyline-header-period.current { - --hlcol: color-mix(in srgb, var(--white) , var(--highlight) var(--highlight-mix)); - box-shadow: 0 0 10px 10px var(--hlcol); - background-color: var(--hlcol); - border-top-left-radius: 16px; - border-top-right-radius: 16px; +.path-local-treestudyplan .s-studyline-header-period.current, +.features-treestudyplan .s-studyline-header-period.current { + --hlcol: color-mix(in srgb, var(--white), var(--highlight) var(--highlight-mix)); + box-shadow: 0 0 10px 10px var(--hlcol); + background-color: var(--hlcol); + border-top-left-radius: 16px; + border-top-right-radius: 16px; } -.path-local-treestudyplan .s-studyline-header-heading, .features-treestudyplan .s-studyline-header-heading { - margin-top: 16px; +.path-local-treestudyplan .s-studyline-header-heading, +.features-treestudyplan .s-studyline-header-heading { + margin-top: 16px; } .path-local-treestudyplan .t-studyline-slot.gradable.current.even, -.path-local-treestudyplan .r-studyline-slot.gradable.current.even, .features-treestudyplan .t-studyline-slot.gradable.current.even, +.path-local-treestudyplan .r-studyline-slot.gradable.current.even, +.features-treestudyplan .t-studyline-slot.gradable.current.even, .features-treestudyplan .r-studyline-slot.gradable.current.even { - --hlcol: color-mix(in srgb, var(--white) , var(--highlight) var(--highlight-mix)); - background-color: var(--hlcol); - position: relative; + --hlcol: color-mix(in srgb, var(--white), var(--highlight) var(--highlight-mix)); + background-color: var(--hlcol); + position: relative; } .path-local-treestudyplan .t-studyline-slot.gradable.current.even:before, -.path-local-treestudyplan .r-studyline-slot.gradable.current.even:before, .features-treestudyplan .t-studyline-slot.gradable.current.even:before, +.path-local-treestudyplan .r-studyline-slot.gradable.current.even:before, +.features-treestudyplan .t-studyline-slot.gradable.current.even:before, .features-treestudyplan .r-studyline-slot.gradable.current.even:before { - --hlcol: color-mix(in srgb, var(--white) , var(--highlight) var(--highlight-mix)); - box-shadow: -20px 0 10px -7px var(--hlcol) inset; - content: " "; - height: 100%; - left: -20px; - position: absolute; - top: 0; - width: 20px; + --hlcol: color-mix(in srgb, var(--white), var(--highlight) var(--highlight-mix)); + box-shadow: -20px 0 10px -7px var(--hlcol) inset; + content: " "; + height: 100%; + left: -20px; + position: absolute; + top: 0; + width: 20px; } -.path-local-treestudyplan .simpleline, .features-treestudyplan .simpleline { - z-index: 20; +.path-local-treestudyplan .simpleline, +.features-treestudyplan .simpleline { + z-index: 20; } .path-local-treestudyplan .t-studyline-slot.gradable.current.even:after, -.path-local-treestudyplan .r-studyline-slot.gradable.current.even:after, .features-treestudyplan .t-studyline-slot.gradable.current.even:after, +.path-local-treestudyplan .r-studyline-slot.gradable.current.even:after, +.features-treestudyplan .t-studyline-slot.gradable.current.even:after, .features-treestudyplan .r-studyline-slot.gradable.current.even:after { - --hlcol: color-mix(in srgb, var(--white) , var(--highlight) var(--highlight-mix)); - box-shadow: 20px 0 10px -7px var(--hlcol) inset; - content: " "; - height: 100%; - right: -20px; - position: absolute; - top: 0; - width: 20px; + --hlcol: color-mix(in srgb, var(--white), var(--highlight) var(--highlight-mix)); + box-shadow: 20px 0 10px -7px var(--hlcol) inset; + content: " "; + height: 100%; + right: -20px; + position: absolute; + top: 0; + width: 20px; } -.path-local-treestudyplan .t-slot-drop, .features-treestudyplan .t-slot-drop { - min-height: 32px; - height: 100%; - min-width: 50px; - display: flex; - flex-direction: column; - align-content: center; - justify-content: center; +.path-local-treestudyplan .t-slot-drop, +.features-treestudyplan .t-slot-drop { + min-height: 32px; + height: 100%; + min-width: 50px; + display: flex; + flex-direction: column; + align-content: center; + justify-content: center; } -.path-local-treestudyplan .t-slot-drop.competency, .features-treestudyplan .t-slot-drop.competency { - min-width: 100px; +.path-local-treestudyplan .t-slot-drop.competency, +.features-treestudyplan .t-slot-drop.competency { + min-width: 100px; } -.path-local-treestudyplan .t-slot-drop.filter, .features-treestudyplan .t-slot-drop.filter { - min-width: 50px; +.path-local-treestudyplan .t-slot-drop.filter, +.features-treestudyplan .t-slot-drop.filter { + min-width: 50px; } -.path-local-treestudyplan .t-slot-drop.secondary, .features-treestudyplan .t-slot-drop.secondary { - min-height: 5px; +.path-local-treestudyplan .t-slot-drop.secondary, +.features-treestudyplan .t-slot-drop.secondary { + min-height: 5px; } -.path-local-treestudyplan .t-slot-drop.secondary.drop-allowed, .features-treestudyplan .t-slot-drop.secondary.drop-allowed { - min-height: 5px; +.path-local-treestudyplan .t-slot-drop.secondary.drop-allowed, +.features-treestudyplan .t-slot-drop.secondary.drop-allowed { + min-height: 5px; } -.path-local-treestudyplan .t-item-deletebox, .features-treestudyplan .t-item-deletebox { - display: inline-block; - width: 100px; - text-align: center; - visibility: hidden; +.path-local-treestudyplan .t-item-deletebox, +.features-treestudyplan .t-item-deletebox { + display: inline-block; + width: 100px; + text-align: center; + visibility: hidden; } -.path-local-treestudyplan .t-item-deletebox.drop-allowed, .features-treestudyplan .t-item-deletebox.drop-allowed { - visibility: visible; - border-width: 1px; - border-style: dashed; - color: #f77; +.path-local-treestudyplan .t-item-deletebox.drop-allowed, +.features-treestudyplan .t-item-deletebox.drop-allowed { + visibility: visible; + border-width: 1px; + border-style: dashed; + color: #f77; } -.path-local-treestudyplan .t-item-deletebox.drop-in, .features-treestudyplan .t-item-deletebox.drop-in { - visibility: visible; - border-style: solid; - background-color: #FFCCCC; - color: #a00; +.path-local-treestudyplan .t-item-deletebox.drop-in, +.features-treestudyplan .t-item-deletebox.drop-in { + visibility: visible; + border-style: solid; + background-color: #fcc; + color: #a00; } -.path-local-treestudyplan .modal-dialog .modal-content, .features-treestudyplan .modal-dialog .modal-content { - background: white; +.path-local-treestudyplan .modal-dialog .modal-content, +.features-treestudyplan .modal-dialog .modal-content { + background: white; } -.path-local-treestudyplan .modal-dialog.modal-lg, .features-treestudyplan .modal-dialog.modal-lg { - max-width: 800px; +.path-local-treestudyplan .modal-dialog.modal-lg, +.features-treestudyplan .modal-dialog.modal-lg { + max-width: 800px; } -.path-local-treestudyplan .modal-dialog.modal-sm, .features-treestudyplan .modal-dialog.modal-sm { - max-width: 300px; +.path-local-treestudyplan .modal-dialog.modal-sm, +.features-treestudyplan .modal-dialog.modal-sm { + max-width: 300px; } .path-local-treestudyplan .gradable .t-slot-item, -.path-local-treestudyplan .gradable .r-slot-item, .features-treestudyplan .gradable .t-slot-item, +.path-local-treestudyplan .gradable .r-slot-item, +.features-treestudyplan .gradable .t-slot-item, .features-treestudyplan .gradable .r-slot-item { - width: 100%; + width: 100%; } .path-local-treestudyplan .t-slot-item, -.path-local-treestudyplan .r-slot-item, .features-treestudyplan .t-slot-item, +.path-local-treestudyplan .r-slot-item, +.features-treestudyplan .t-slot-item, .features-treestudyplan .r-slot-item { - margin-top: 5px; - margin-bottom: 5px; - margin-left: auto; - margin-right: auto; - display: grid; + margin-top: 5px; + margin-bottom: 5px; + margin-left: auto; + margin-right: auto; + display: grid; } .path-local-treestudyplan .t-item-base, -.path-local-treestudyplan .r-item-base, .features-treestudyplan .t-item-base, +.path-local-treestudyplan .r-item-base, +.features-treestudyplan .t-item-base, .features-treestudyplan .r-item-base { - align-self: center; - position: relative; + align-self: center; + position: relative; } -.path-local-treestudyplan .t-item-connector-start, .features-treestudyplan .t-item-connector-start { - position: absolute; - top: calc(50% - 5px); - right: -1px; - line-height: 0px; +.path-local-treestudyplan .t-item-connector-start, +.features-treestudyplan .t-item-connector-start { + position: absolute; + top: calc(50% - 5px); + right: -1px; + line-height: 0; } -.path-local-treestudyplan .t-item-connector-start svg rect, .features-treestudyplan .t-item-connector-start svg rect { - cursor: crosshair; - stroke-width: 1px; - stroke: #3c3; - fill: #3c3; +.path-local-treestudyplan .t-item-connector-start svg rect, +.features-treestudyplan .t-item-connector-start svg rect { + cursor: crosshair; + stroke-width: 1px; + stroke: #3c3; + fill: #3c3; } -.path-local-treestudyplan .t-item-connector-start.deleteMode svg rect, .features-treestudyplan .t-item-connector-start.deleteMode svg rect { - stroke: #f70; - fill: #f70; +.path-local-treestudyplan .t-item-connector-start.deleteMode svg rect, +.features-treestudyplan .t-item-connector-start.deleteMode svg rect { + stroke: #f70; + fill: #f70; } -.path-local-treestudyplan .t-item-connector-end, .features-treestudyplan .t-item-connector-end { - position: absolute; - top: 50%; - transform: translate(0, -50%); - left: -1px; - line-height: 0px; +.path-local-treestudyplan .t-item-connector-end, +.features-treestudyplan .t-item-connector-end { + position: absolute; + top: 50%; + transform: translate(0, -50%); + left: -1px; + line-height: 0; } -.path-local-treestudyplan .t-item-connector-end svg rect, .features-treestudyplan .t-item-connector-end svg rect { - stroke-width: 1px; - stroke: #f00; - fill: #f00; +.path-local-treestudyplan .t-item-connector-end svg rect, +.features-treestudyplan .t-item-connector-end svg rect { + stroke-width: 1px; + stroke: #f00; + fill: #f00; } -.path-local-treestudyplan .sw-studyline-editmode, .features-treestudyplan .sw-studyline-editmode { - display: inline-block; +.path-local-treestudyplan .sw-studyline-editmode, +.features-treestudyplan .sw-studyline-editmode { + display: inline-block; } -.path-local-treestudyplan .t-item-base .deletebox, .features-treestudyplan .t-item-base .deletebox { - position: absolute; - top: 50%; - transform: translate(0, -50%); - right: 5px; - border-radius: 5px; - padding: 3px; - background-color: rgba(255, 255, 255, 0.4666666667); - cursor: default; - border-color: #ccc; - border-width: 1px; - border-style: solid; - z-index: 20; +.path-local-treestudyplan .t-item-base .deletebox, +.features-treestudyplan .t-item-base .deletebox { + position: absolute; + top: 50%; + transform: translate(0, -50%); + right: 5px; + border-radius: 5px; + padding: 3px; + background-color: rgba(255, 255, 255, 0.4666666667); + cursor: default; + border-color: #ccc; + border-width: 1px; + border-style: solid; + z-index: 20; } -.path-local-treestudyplan .t-item-base .deletebox a, .features-treestudyplan .t-item-base .deletebox a { - display: block; - margin: 3px; +.path-local-treestudyplan .t-item-base .deletebox a, +.features-treestudyplan .t-item-base .deletebox a { + display: block; + margin: 3px; } -.path-local-treestudyplan .t-item-base .t-item-contextview, .features-treestudyplan .t-item-base .t-item-contextview { - position: absolute; - left: 50%; - transform: translate(-50%, 100%); - bottom: 0px; - z-index: 25; +.path-local-treestudyplan .t-item-base .t-item-contextview, +.features-treestudyplan .t-item-base .t-item-contextview { + position: absolute; + left: 50%; + transform: translate(-50%, 100%); + bottom: 0; + z-index: 25; } -.path-local-treestudyplan .t-item-contextview .close-button, .features-treestudyplan .t-item-contextview .close-button { - float: right; +.path-local-treestudyplan .t-item-contextview .close-button, +.features-treestudyplan .t-item-contextview .close-button { + float: right; } -.path-local-treestudyplan ul.t-toolbox li, .features-treestudyplan ul.t-toolbox li { - list-style: none; +.path-local-treestudyplan ul.t-toolbox li, +.features-treestudyplan ul.t-toolbox li { + list-style: none; } -.path-local-treestudyplan .t-item-filter, .features-treestudyplan .t-item-filter { - display: inline-block; - height: 1em; - padding: 0px; - margin: 0; - text-align: left; - font-size: 2em; - vertical-align: top; +.path-local-treestudyplan .t-item-filter, +.features-treestudyplan .t-item-filter { + display: inline-block; + height: 1em; + padding: 0; + margin: 0; + text-align: left; + font-size: 2em; + vertical-align: top; } -.path-local-treestudyplan .t-item-filter i, .features-treestudyplan .t-item-filter i { - vertical-align: top; +.path-local-treestudyplan .t-item-filter i, +.features-treestudyplan .t-item-filter i { + vertical-align: top; } -.path-local-treestudyplan .t-toolbox .t-item-filter, .features-treestudyplan .t-toolbox .t-item-filter { - font-size: 1em; +.path-local-treestudyplan .t-toolbox .t-item-filter, +.features-treestudyplan .t-toolbox .t-item-filter { + font-size: 1em; } -.path-local-treestudyplan .t-item-junction i, .features-treestudyplan .t-item-junction i { - color: var(--warning); +.path-local-treestudyplan .t-item-junction i, +.features-treestudyplan .t-item-junction i { + color: var(--warning); } -.path-local-treestudyplan .t-item-finish i, .features-treestudyplan .t-item-finish i { - color: var(--success); +.path-local-treestudyplan .t-item-finish i, +.features-treestudyplan .t-item-finish i { + color: var(--success); } -.path-local-treestudyplan .t-item-start i, .features-treestudyplan .t-item-start i { - color: var(--success); +.path-local-treestudyplan .t-item-start i, +.features-treestudyplan .t-item-start i { + color: var(--success); } -.path-local-treestudyplan .t-item-badge svg, .features-treestudyplan .t-item-badge svg { - color: var(--warning); +.path-local-treestudyplan .t-item-badge svg, +.features-treestudyplan .t-item-badge svg { + color: var(--warning); } -.path-local-treestudyplan .t-slot-drop.type-allowed, .features-treestudyplan .t-slot-drop.type-allowed { - border-color: var(--success); - border-style: dashed; - border-width: 1px; +.path-local-treestudyplan .t-slot-drop.type-allowed, +.features-treestudyplan .t-slot-drop.type-allowed { + border-color: var(--success); + border-style: dashed; + border-width: 1px; } -.path-local-treestudyplan .t-slot-drop.type-allowed.drop-forbidden, .features-treestudyplan .t-slot-drop.type-allowed.drop-forbidden { - border-color: var(--danger); +.path-local-treestudyplan .t-slot-drop.type-allowed.drop-forbidden, +.features-treestudyplan .t-slot-drop.type-allowed.drop-forbidden { + border-color: var(--danger); } -.path-local-treestudyplan .t-slot-drop.filter .t-item-base, .features-treestudyplan .t-slot-drop.filter .t-item-base { - display: inline-block; - margin-top: 5px; - margin-bottom: 5px; - margin-left: auto; - margin-right: auto; - line-height: 1px; +.path-local-treestudyplan .t-slot-drop.filter .t-item-base, +.features-treestudyplan .t-slot-drop.filter .t-item-base { + display: inline-block; + margin-top: 5px; + margin-bottom: 5px; + margin-left: auto; + margin-right: auto; + line-height: 1px; } -.path-local-treestudyplan .t-studyline-slot-0.filter .t-slot-drop.filter .t-item-base, .features-treestudyplan .t-studyline-slot-0.filter .t-slot-drop.filter .t-item-base { - margin-left: 0; +.path-local-treestudyplan .t-studyline-slot-0.filter .t-slot-drop.filter .t-item-base, +.features-treestudyplan .t-studyline-slot-0.filter .t-slot-drop.filter .t-item-base { + margin-left: 0; } -.path-local-treestudyplan a.t-item-config, .features-treestudyplan a.t-item-config { - position: absolute; - top: -5px; - right: -5px; +.path-local-treestudyplan a.t-item-config, +.features-treestudyplan a.t-item-config { + position: absolute; + top: -5px; + right: -5px; } -.path-local-treestudyplan a.t-item-config.badge, .features-treestudyplan a.t-item-config.badge { - top: -5px; - right: -5px; - font-size: 16px; +.path-local-treestudyplan a.t-item-config.badge, +.features-treestudyplan a.t-item-config.badge { + top: -5px; + right: -5px; + font-size: 16px; } -.path-local-treestudyplan a.t-item-course-config, .features-treestudyplan a.t-item-course-config { - font-size: 16pt; - vertical-align: middle; - float: right; - margin-right: 2px; - margin-top: -5px; +.path-local-treestudyplan a.t-item-course-config, +.features-treestudyplan a.t-item-course-config { + font-size: 21px; + vertical-align: middle; + float: right; + margin-right: 2px; + margin-top: -5px; } -.path-local-treestudyplan .t-item-connector-end, .features-treestudyplan .t-item-connector-end { - visibility: hidden; +.path-local-treestudyplan .t-item-connector-end, +.features-treestudyplan .t-item-connector-end { + visibility: hidden; } -.path-local-treestudyplan .t-item-connector-end.type-allowed.drop-allowed, .features-treestudyplan .t-item-connector-end.type-allowed.drop-allowed { - visibility: visible; +.path-local-treestudyplan .t-item-connector-end.type-allowed.drop-allowed, +.features-treestudyplan .t-item-connector-end.type-allowed.drop-allowed { + visibility: visible; } -.path-local-treestudyplan .t-badges li, .features-treestudyplan .t-badges li { - list-style: none; +.path-local-treestudyplan .t-badges li, +.features-treestudyplan .t-badges li { + list-style: none; } -.path-local-treestudyplan .t-badges .t-badge-drag, .features-treestudyplan .t-badges .t-badge-drag { - display: inline; +.path-local-treestudyplan .t-badges .t-badge-drag, +.features-treestudyplan .t-badges .t-badge-drag { + display: inline; } -.path-local-treestudyplan .t-badges img, .features-treestudyplan .t-badges img { - width: 32px; - height: 32px; +.path-local-treestudyplan .t-badges img, +.features-treestudyplan .t-badges img { + width: 32px; + height: 32px; } -.path-local-treestudyplan .t-item-badge, .features-treestudyplan .t-item-badge { - width: 50px; - height: 50px; - position: relative; - margin-top: 3px; +.path-local-treestudyplan .t-item-badge, +.features-treestudyplan .t-item-badge { + width: 50px; + height: 50px; + position: relative; + margin-top: 3px; } -.path-local-treestudyplan .t-item-badge img.badge-image, .features-treestudyplan .t-item-badge img.badge-image { - width: 32px; - height: 32px; - position: absolute; - top: 50%; - left: 50%; - transform: translate(-50%, -50%); +.path-local-treestudyplan .t-item-badge img.badge-image, +.features-treestudyplan .t-item-badge img.badge-image { + width: 32px; + height: 32px; + position: absolute; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); } -.path-local-treestudyplan .t-item-badge svg.t-badge-backdrop, .features-treestudyplan .t-item-badge svg.t-badge-backdrop { - position: absolute; - top: 50%; - left: 50%; - transform: translate(-50%, -50%); +.path-local-treestudyplan .t-item-badge svg.t-badge-backdrop, +.features-treestudyplan .t-item-badge svg.t-badge-backdrop { + position: absolute; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); } -.path-local-treestudyplan .r-report-tabs .list-group-item-action, .features-treestudyplan .r-report-tabs .list-group-item-action { - width: inherit; +.path-local-treestudyplan .r-report-tabs .list-group-item-action, +.features-treestudyplan .r-report-tabs .list-group-item-action { + width: inherit; } .path-local-treestudyplan .r-studyplan-tab, -.path-local-treestudyplan .t-studyplan-tab, .features-treestudyplan .r-studyplan-tab, +.path-local-treestudyplan .t-studyplan-tab, +.features-treestudyplan .r-studyplan-tab, .features-treestudyplan .t-studyplan-tab { - width: auto; - overflow-x: auto; + width: auto; + overflow-x: auto; } .path-local-treestudyplan .t-studyline-drag:nth-child(odd) .t-studyline div, .path-local-treestudyplan .t-studyline-heading.odd, .path-local-treestudyplan .r-studyline-heading.odd, .path-local-treestudyplan .t-studyline-slot.odd, -.path-local-treestudyplan .r-studyline-slot.odd, .features-treestudyplan .t-studyline-drag:nth-child(odd) .t-studyline div, +.path-local-treestudyplan .r-studyline-slot.odd, +.features-treestudyplan .t-studyline-drag:nth-child(odd) .t-studyline div, .features-treestudyplan .t-studyline-heading.odd, .features-treestudyplan .r-studyline-heading.odd, .features-treestudyplan .t-studyline-slot.odd, .features-treestudyplan .r-studyline-slot.odd { - background-color: var(--less-light); + background-color: var(--less-light); } .path-local-treestudyplan .t-studyline-drag:nth-child(even) .t-studyline div, .path-local-treestudyplan .t-studyline-heading.even, .path-local-treestudyplan .r-studyline-heading.even, .path-local-treestudyplan .t-studyline-slot.even, -.path-local-treestudyplan .r-studyline-slot.even, .features-treestudyplan .t-studyline-drag:nth-child(even) .t-studyline div, +.path-local-treestudyplan .r-studyline-slot.even, +.features-treestudyplan .t-studyline-drag:nth-child(even) .t-studyline div, .features-treestudyplan .t-studyline-heading.even, .features-treestudyplan .r-studyline-heading.even, .features-treestudyplan .t-studyline-slot.even, .features-treestudyplan .r-studyline-slot.even { - background-color: var(--white); + background-color: var(--white); } .path-local-treestudyplan .t-studyline-drag:first-child, .path-local-treestudyplan .t-studyline-heading.first, .path-local-treestudyplan .t-studyline-slot.first, .path-local-treestudyplan .r-studyline-heading.first, -.path-local-treestudyplan .r-studyline-slot.first, .features-treestudyplan .t-studyline-drag:first-child, +.path-local-treestudyplan .r-studyline-slot.first, +.features-treestudyplan .t-studyline-drag:first-child, .features-treestudyplan .t-studyline-heading.first, .features-treestudyplan .t-studyline-slot.first, .features-treestudyplan .r-studyline-heading.first, .features-treestudyplan .r-studyline-slot.first { - border-top-style: solid; + border-top-style: solid; } .path-local-treestudyplan .t-studyline-drag:last-child, .path-local-treestudyplan .t-studyline-heading.last, .path-local-treestudyplan .t-studyline-slot.last.newlyr, .path-local-treestudyplan .r-studyline-heading.last, -.path-local-treestudyplan .r-studyline-slot.last, .features-treestudyplan .t-studyline-drag:last-child, +.path-local-treestudyplan .r-studyline-slot.last, +.features-treestudyplan .t-studyline-drag:last-child, .features-treestudyplan .t-studyline-heading.last, .features-treestudyplan .t-studyline-slot.last.newlyr, .features-treestudyplan .r-studyline-heading.last, .features-treestudyplan .r-studyline-slot.last { - border-bottom-style: solid; + border-bottom-style: solid; } -.path-local-treestudyplan .s-studyline-header-period, .features-treestudyplan .s-studyline-header-period { - text-align: center; - padding-top: 5px; - margin-top: 16px; /* To allow for box shadow on highlighted period */ +.path-local-treestudyplan .s-studyline-header-period, +.features-treestudyplan .s-studyline-header-period { + text-align: center; + padding-top: 5px; + margin-top: 16px; /* To allow for box shadow on highlighted period */ } -.path-local-treestudyplan .s-studyline-header-period p, .features-treestudyplan .s-studyline-header-period p { - margin-bottom: 0; +.path-local-treestudyplan .s-studyline-header-period p, +.features-treestudyplan .s-studyline-header-period p { + margin-bottom: 0; } -.path-local-treestudyplan .s-studyline-header-period-datespan, .features-treestudyplan .s-studyline-header-period-datespan { - white-space: nowrap; +.path-local-treestudyplan .s-studyline-header-period-datespan, +.features-treestudyplan .s-studyline-header-period-datespan { + white-space: nowrap; } -.path-local-treestudyplan .s-studyline-header-period-datespan .date, .features-treestudyplan .s-studyline-header-period-datespan .date { - font-weight: bold; +.path-local-treestudyplan .s-studyline-header-period-datespan .date, +.features-treestudyplan .s-studyline-header-period-datespan .date { + font-weight: bold; } -.path-local-treestudyplan .s-studyline-header-period-datespan.small, .features-treestudyplan .s-studyline-header-period-datespan.small { - font-size: 9px; +.path-local-treestudyplan .s-studyline-header-period-datespan.small, +.features-treestudyplan .s-studyline-header-period-datespan.small { + font-size: 9px; } .path-local-treestudyplan .t-studyline-slot.rightmost, -.path-local-treestudyplan .r-studyline-slot.rightmost, .features-treestudyplan .t-studyline-slot.rightmost, +.path-local-treestudyplan .r-studyline-slot.rightmost, +.features-treestudyplan .t-studyline-slot.rightmost, .features-treestudyplan .r-studyline-slot.rightmost { - border-right-style: solid; + border-right-style: solid; } .path-local-treestudyplan .t-studyline-handle, -.path-local-treestudyplan .r-studyline-handle, .features-treestudyplan .t-studyline-handle, +.path-local-treestudyplan .r-studyline-handle, +.features-treestudyplan .t-studyline-handle, .features-treestudyplan .r-studyline-handle { - width: 10px; - height: 100%; - border-left-style: solid; - border-width: 1px; - border-color: rgba(0, 0, 0, 0.125); + width: 10px; + height: 100%; + border-left-style: solid; + border-width: 1px; + border-color: rgba(0, 0, 0, 0.125); } -.path-local-treestudyplan .gradable .r-item-base, .features-treestudyplan .gradable .r-item-base { - width: 100%; +.path-local-treestudyplan .gradable .r-item-base, +.features-treestudyplan .gradable .r-item-base { + width: 100%; } .path-local-treestudyplan .t-item-invalid .card-body, .path-local-treestudyplan .r-item-invalid .card-body, .path-local-treestudyplan .t-item-competency .card-body, .path-local-treestudyplan .t-item-course .card-body, -.path-local-treestudyplan .r-item-competency .card-body, .features-treestudyplan .t-item-invalid .card-body, +.path-local-treestudyplan .r-item-competency .card-body, +.features-treestudyplan .t-item-invalid .card-body, .features-treestudyplan .r-item-invalid .card-body, .features-treestudyplan .t-item-competency .card-body, .features-treestudyplan .t-item-course .card-body, .features-treestudyplan .r-item-competency .card-body { - padding: 3px; - padding-left: 7px; - padding-right: 7px; + padding: 3px; + padding-left: 7px; + padding-right: 7px; } .path-local-treestudyplan .r-item-invalid .card-body, -.path-local-treestudyplan .t-item-invalid .card-body, .features-treestudyplan .r-item-invalid .card-body, +.path-local-treestudyplan .t-item-invalid .card-body, +.features-treestudyplan .r-item-invalid .card-body, .features-treestudyplan .t-item-invalid .card-body { - color: darkred; + color: darkred; } -.path-local-treestudyplan .r-item-filter, .features-treestudyplan .r-item-filter { - display: inline-block; - padding: 0px; - text-align: left; - font-size: 2em; - vertical-align: top; - height: 1em; +.path-local-treestudyplan .r-item-filter, +.features-treestudyplan .r-item-filter { + display: inline-block; + padding: 0; + text-align: left; + font-size: 2em; + vertical-align: top; + height: 1em; } -.path-local-treestudyplan .r-item-filter i, .features-treestudyplan .r-item-filter i { - vertical-align: top; +.path-local-treestudyplan .r-item-filter i, +.features-treestudyplan .r-item-filter i { + vertical-align: top; } -.path-local-treestudyplan .r-item-start i, .features-treestudyplan .r-item-start i { - color: var(--success); +.path-local-treestudyplan .r-item-start i, +.features-treestudyplan .r-item-start i { + color: var(--success); } -.path-local-treestudyplan .r-item-badge i, .features-treestudyplan .r-item-badge i { - color: var(--warning); +.path-local-treestudyplan .r-item-badge i, +.features-treestudyplan .r-item-badge i { + color: var(--warning); } -.path-local-treestudyplan .r-badges li, .features-treestudyplan .r-badges li { - list-style: none; +.path-local-treestudyplan .r-badges li, +.features-treestudyplan .r-badges li { + list-style: none; } -.path-local-treestudyplan .r-badges .r-badge-drag, .features-treestudyplan .r-badges .r-badge-drag { - display: inline; +.path-local-treestudyplan .r-badges .r-badge-drag, +.features-treestudyplan .r-badges .r-badge-drag { + display: inline; } -.path-local-treestudyplan .r-badges img, .features-treestudyplan .r-badges img { - width: 32px; - height: 32px; +.path-local-treestudyplan .r-badges img, +.features-treestudyplan .r-badges img { + width: 32px; + height: 32px; } -.path-local-treestudyplan .r-item-badge, .features-treestudyplan .r-item-badge { - width: 50px; - height: 50px; - position: relative; - margin-top: 3px; +.path-local-treestudyplan .r-item-badge, +.features-treestudyplan .r-item-badge { + width: 50px; + height: 50px; + position: relative; + margin-top: 3px; } -.path-local-treestudyplan .r-item-badge img.badge-image, .features-treestudyplan .r-item-badge img.badge-image { - width: 32px; - height: 32px; - position: absolute; - top: 50%; - left: 50%; - transform: translate(-50%, -50%); +.path-local-treestudyplan .r-item-badge img.badge-image, +.features-treestudyplan .r-item-badge img.badge-image { + width: 32px; + height: 32px; + position: absolute; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); } -.path-local-treestudyplan .r-item-badge svg.r-badge-backdrop, .features-treestudyplan .r-item-badge svg.r-badge-backdrop { - position: absolute; - top: 50%; - left: 50%; - transform: translate(-50%, -50%); +.path-local-treestudyplan .r-item-badge svg.r-badge-backdrop, +.features-treestudyplan .r-item-badge svg.r-badge-backdrop { + position: absolute; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); } -.path-local-treestudyplan .r-item-badge svg.r-badge-backdrop circle, .features-treestudyplan .r-item-badge svg.r-badge-backdrop circle { - stroke: black; - stroke-width: 2px; - fill: #ccc; +.path-local-treestudyplan .r-item-badge svg.r-badge-backdrop circle, +.features-treestudyplan .r-item-badge svg.r-badge-backdrop circle { + stroke: black; + stroke-width: 2px; + fill: #ccc; } -.path-local-treestudyplan .r-item-module-children, .features-treestudyplan .r-item-module-children { - list-style: none; +.path-local-treestudyplan .r-item-module-children, +.features-treestudyplan .r-item-module-children { + list-style: none; } .path-local-treestudyplan .r-item-start.completion-incomplete i, -.path-local-treestudyplan .r-completion-incomplete, .features-treestudyplan .r-item-start.completion-incomplete i, +.path-local-treestudyplan .r-completion-incomplete, +.features-treestudyplan .r-item-start.completion-incomplete i, .features-treestudyplan .r-completion-incomplete { - color: var(--incomplete); + color: var(--incomplete); } -.path-local-treestudyplan .r-completion-progress, .features-treestudyplan .r-completion-progress { - color: var(--warning); +.path-local-treestudyplan .r-completion-progress, +.features-treestudyplan .r-completion-progress { + color: var(--warning); } -.path-local-treestudyplan .r-completion-completed, .path-local-treestudyplan .r-completion-complete-pass, .features-treestudyplan .r-completion-completed, .features-treestudyplan .r-completion-complete-pass { - color: var(--success); +.path-local-treestudyplan .r-completion-completed, +.path-local-treestudyplan .r-completion-complete-pass, +.features-treestudyplan .r-completion-completed, +.features-treestudyplan .r-completion-complete-pass { + color: var(--success); } -.path-local-treestudyplan .r-completion-good, .features-treestudyplan .r-completion-good { - color: var(--info); +.path-local-treestudyplan .r-completion-good, +.features-treestudyplan .r-completion-good { + color: var(--info); } -.path-local-treestudyplan .r-completion-excellent, .path-local-treestudyplan .r-completion-complete, .features-treestudyplan .r-completion-excellent, .features-treestudyplan .r-completion-complete { - color: var(--excellent); +.path-local-treestudyplan .r-completion-excellent, +.path-local-treestudyplan .r-completion-complete, +.features-treestudyplan .r-completion-excellent, +.features-treestudyplan .r-completion-complete { + color: var(--excellent); } -.path-local-treestudyplan .r-completion-pending, .features-treestudyplan .r-completion-pending { - color: var(--pending); +.path-local-treestudyplan .r-completion-pending, +.features-treestudyplan .r-completion-pending { + color: var(--pending); } -.path-local-treestudyplan .r-completion-failed, .path-local-treestudyplan .r-completion-complete-fail, .features-treestudyplan .r-completion-failed, .features-treestudyplan .r-completion-complete-fail { - color: var(--danger); +.path-local-treestudyplan .r-completion-failed, +.path-local-treestudyplan .r-completion-complete-fail, +.features-treestudyplan .r-completion-failed, +.features-treestudyplan .r-completion-complete-fail { + color: var(--danger); } -.path-local-treestudyplan th.r-aggregation-all, .features-treestudyplan th.r-aggregation-all { - color: rgb(0, 32, 80); +.path-local-treestudyplan th.r-aggregation-all, +.features-treestudyplan th.r-aggregation-all { + color: rgb(0, 32, 80); } -.path-local-treestudyplan th.r-aggregation-any, .features-treestudyplan th.r-aggregation-any { - color: rgb(0, 46, 0); +.path-local-treestudyplan th.r-aggregation-any, +.features-treestudyplan th.r-aggregation-any { + color: rgb(0, 46, 0); } -.path-local-treestudyplan tr.r-completion-category-header, .features-treestudyplan tr.r-completion-category-header { - border-top-style: solid; - border-top-width: 1px; - border-color: rgb(127, 127, 127); +.path-local-treestudyplan tr.r-completion-category-header, +.features-treestudyplan tr.r-completion-category-header { + border-top-style: solid; + border-top-width: 1px; + border-color: rgb(127, 127, 127); } -.path-local-treestudyplan .r-course-grading, .features-treestudyplan .r-course-grading { - font-size: 16pt; - margin-right: 2px; - vertical-align: bottom; +.path-local-treestudyplan .r-course-grading, +.features-treestudyplan .r-course-grading { + font-size: 21px; + margin-right: 2px; + vertical-align: bottom; } .path-local-treestudyplan .r-course-graded, -.path-local-treestudyplan .r-course-result, .features-treestudyplan .r-course-graded, +.path-local-treestudyplan .r-course-result, +.features-treestudyplan .r-course-graded, .features-treestudyplan .r-course-result { - font-size: 16pt; - vertical-align: middle; - float: right; - margin-right: 2px; - margin-top: 2px; + font-size: 21px; + vertical-align: middle; + float: right; + margin-right: 2px; + margin-top: 2px; } -.path-local-treestudyplan .r-progress-circle-popup, .features-treestudyplan .r-progress-circle-popup { - position: relative; - top: 0.1em; +.path-local-treestudyplan .r-progress-circle-popup, +.features-treestudyplan .r-progress-circle-popup { + position: relative; + top: 0.1em; } -.path-local-treestudyplan .r-completion-detail-header, .features-treestudyplan .r-completion-detail-header { - font-size: 20pt; +.path-local-treestudyplan .r-completion-detail-header, +.features-treestudyplan .r-completion-detail-header { + font-size: 26px; } .path-local-treestudyplan .r-item-finish.completion-incomplete, -.path-local-treestudyplan .r-item-junction.completion-incomplete, .features-treestudyplan .r-item-finish.completion-incomplete, +.path-local-treestudyplan .r-item-junction.completion-incomplete, +.features-treestudyplan .r-item-finish.completion-incomplete, .features-treestudyplan .r-item-junction.completion-incomplete { - color: var(--incomplete); + color: var(--incomplete); } .path-local-treestudyplan .r-item-finish.completion-progress, -.path-local-treestudyplan .r-item-junction.completion-progress, .features-treestudyplan .r-item-finish.completion-progress, +.path-local-treestudyplan .r-item-junction.completion-progress, +.features-treestudyplan .r-item-finish.completion-progress, .features-treestudyplan .r-item-junction.completion-progress { - color: var(--warning); + color: var(--warning); } .path-local-treestudyplan .r-item-finish.completion-completed, -.path-local-treestudyplan .r-item-junction.completion-completed, .features-treestudyplan .r-item-finish.completion-completed, +.path-local-treestudyplan .r-item-junction.completion-completed, +.features-treestudyplan .r-item-finish.completion-completed, .features-treestudyplan .r-item-junction.completion-completed { - color: var(--success); + color: var(--success); } .path-local-treestudyplan .r-item-finish.completion-good, -.path-local-treestudyplan .r-item-junction.completion-good, .features-treestudyplan .r-item-finish.completion-good, +.path-local-treestudyplan .r-item-junction.completion-good, +.features-treestudyplan .r-item-finish.completion-good, .features-treestudyplan .r-item-junction.completion-good { - color: var(--info); + color: var(--info); } .path-local-treestudyplan .r-item-finish.completion-excellent, -.path-local-treestudyplan .r-item-junction.completion-excellent, .features-treestudyplan .r-item-finish.completion-excellent, +.path-local-treestudyplan .r-item-junction.completion-excellent, +.features-treestudyplan .r-item-finish.completion-excellent, .features-treestudyplan .r-item-junction.completion-excellent { - color: var(--excellent); + color: var(--excellent); } .path-local-treestudyplan .r-item-finish.completion-failed, -.path-local-treestudyplan .r-item-junction.completion-failed, .features-treestudyplan .r-item-finish.completion-failed, +.path-local-treestudyplan .r-item-junction.completion-failed, +.features-treestudyplan .r-item-finish.completion-failed, .features-treestudyplan .r-item-junction.completion-failed { - color: var(--danger); + color: var(--danger); } -.path-local-treestudyplan .r-activity-icon, .features-treestudyplan .r-activity-icon { - position: relative; - top: -2px; +.path-local-treestudyplan .r-activity-icon, +.features-treestudyplan .r-activity-icon { + position: relative; + top: -2px; } -.path-local-treestudyplan table.r-item-course-grade-details td, .features-treestudyplan table.r-item-course-grade-details td { - padding-right: 3px; +.path-local-treestudyplan table.r-item-course-grade-details td, +.features-treestudyplan table.r-item-course-grade-details td { + padding-right: 3px; } -.path-local-treestudyplan .r-course-detail-header-right, .features-treestudyplan .r-course-detail-header-right { - width: 260px; - text-align: end; +.path-local-treestudyplan .r-course-detail-header-right, +.features-treestudyplan .r-course-detail-header-right { + width: 260px; + text-align: end; } .path-local-treestudyplan .r-timing-invalid, -.path-local-treestudyplan .t-timing-invalid, .features-treestudyplan .r-timing-invalid, +.path-local-treestudyplan .t-timing-invalid, +.features-treestudyplan .r-timing-invalid, .features-treestudyplan .t-timing-invalid { - color: var(--danger); + color: var(--danger); } .path-local-treestudyplan .t-timing-past, -.path-local-treestudyplan .r-timing-past, .features-treestudyplan .t-timing-past, +.path-local-treestudyplan .r-timing-past, +.features-treestudyplan .t-timing-past, .features-treestudyplan .r-timing-past { - color: var(--past); + color: var(--past); } .path-local-treestudyplan .t-timing-present, -.path-local-treestudyplan .r-timing-present, .features-treestudyplan .t-timing-present, +.path-local-treestudyplan .r-timing-present, +.features-treestudyplan .t-timing-present, .features-treestudyplan .r-timing-present { - color: var(--present); + color: var(--present); } .path-local-treestudyplan .t-timing-future, -.path-local-treestudyplan .r-timing-future, .features-treestudyplan .t-timing-future, +.path-local-treestudyplan .r-timing-future, +.features-treestudyplan .t-timing-future, .features-treestudyplan .r-timing-future { - color: var(--future); + color: var(--future); } .path-local-treestudyplan .t-timing-indicator, -.path-local-treestudyplan .r-timing-indicator, .features-treestudyplan .t-timing-indicator, +.path-local-treestudyplan .r-timing-indicator, +.features-treestudyplan .t-timing-indicator, .features-treestudyplan .r-timing-indicator { - border-color: rgba(0, 0, 0, 0.125); - width: 7px; - display: inline-block; - height: 100%; - border-width: 1px; - border-top-left-radius: 3.5px; - border-bottom-left-radius: 3.5px; + border-color: rgba(0, 0, 0, 0.125); + width: 7px; + display: inline-block; + height: 100%; + border-width: 1px; + border-top-left-radius: 3.5px; + border-bottom-left-radius: 3.5px; } .path-local-treestudyplan .t-timing-indicator.timing-invalid, -.path-local-treestudyplan .r-timing-indicator.timing-invalid, .features-treestudyplan .t-timing-indicator.timing-invalid, +.path-local-treestudyplan .r-timing-indicator.timing-invalid, +.features-treestudyplan .t-timing-indicator.timing-invalid, .features-treestudyplan .r-timing-indicator.timing-invalid { - background-color: var(--danger); + background-color: var(--danger); } .path-local-treestudyplan .t-timing-indicator.timing-past, -.path-local-treestudyplan .r-timing-indicator.timing-past, .features-treestudyplan .t-timing-indicator.timing-past, +.path-local-treestudyplan .r-timing-indicator.timing-past, +.features-treestudyplan .t-timing-indicator.timing-past, .features-treestudyplan .r-timing-indicator.timing-past { - background-color: var(--past); + background-color: var(--past); } .path-local-treestudyplan .t-timing-indicator.timing-present, -.path-local-treestudyplan .r-timing-indicator.timing-present, .features-treestudyplan .t-timing-indicator.timing-present, +.path-local-treestudyplan .r-timing-indicator.timing-present, +.features-treestudyplan .t-timing-indicator.timing-present, .features-treestudyplan .r-timing-indicator.timing-present { - background-color: var(--present); + background-color: var(--present); } .path-local-treestudyplan .t-timing-indicator.timing-future, -.path-local-treestudyplan .r-timing-indicator.timing-future, .features-treestudyplan .t-timing-indicator.timing-future, +.path-local-treestudyplan .r-timing-indicator.timing-future, +.features-treestudyplan .t-timing-indicator.timing-future, .features-treestudyplan .r-timing-indicator.timing-future { - background-color: var(--future); + background-color: var(--future); } -.path-local-treestudyplan .r-course-am-teacher, .features-treestudyplan .r-course-am-teacher { - box-shadow: 0 0 3px 3px rgba(255, 224, 0, 0.5); +.path-local-treestudyplan .r-course-am-teacher, +.features-treestudyplan .r-course-am-teacher { + box-shadow: 0 0 3px 3px rgba(255, 224, 0, 0.5); } -.path-local-treestudyplan .r-graded-unknown, .features-treestudyplan .r-graded-unknown { - color: rgb(139, 107, 0); +.path-local-treestudyplan .r-graded-unknown, +.features-treestudyplan .r-graded-unknown { + color: rgb(139, 107, 0); } -.path-local-treestudyplan .r-graded-unsubmitted, .features-treestudyplan .r-graded-unsubmitted { - color: var(--incomplete); +.path-local-treestudyplan .r-graded-unsubmitted, +.features-treestudyplan .r-graded-unsubmitted { + color: var(--incomplete); } -.path-local-treestudyplan .r-graded-ungraded, .features-treestudyplan .r-graded-ungraded { - color: var(--danger); +.path-local-treestudyplan .r-graded-ungraded, +.features-treestudyplan .r-graded-ungraded { + color: var(--danger); } -.path-local-treestudyplan .r-graded-allgraded, .features-treestudyplan .r-graded-allgraded { - color: var(--excellent); +.path-local-treestudyplan .r-graded-allgraded, +.features-treestudyplan .r-graded-allgraded { + color: var(--excellent); } -.path-local-treestudyplan .r-graded-graded, .features-treestudyplan .r-graded-graded { - color: var(--success); +.path-local-treestudyplan .r-graded-graded, +.features-treestudyplan .r-graded-graded { + color: var(--success); } -.path-local-treestudyplan .r-graded-nogrades, .features-treestudyplan .r-graded-nogrades { - color: var(--light); +.path-local-treestudyplan .r-graded-nogrades, +.features-treestudyplan .r-graded-nogrades { + color: var(--light); } -.path-local-treestudyplan .t-configured-ok, .features-treestudyplan .t-configured-ok { - color: var(--success); +.path-local-treestudyplan .t-configured-ok, +.features-treestudyplan .t-configured-ok { + color: var(--success); } -.path-local-treestudyplan .t-configured-alert, .features-treestudyplan .t-configured-alert { - color: var(--warning); +.path-local-treestudyplan .t-configured-alert, +.features-treestudyplan .t-configured-alert { + color: var(--warning); } -.path-local-treestudyplan .r-grading-bar, .features-treestudyplan .r-grading-bar { - display: inline-block; - white-space: nowrap; - height: min-content; +.path-local-treestudyplan .r-grading-bar, +.features-treestudyplan .r-grading-bar { + display: inline-block; + white-space: nowrap; + height: min-content; } -.path-local-treestudyplan .r-grading-bar-segment, .features-treestudyplan .r-grading-bar-segment { - border-color: #aaa; - border-width: 1px; - display: inline-block; - border-bottom-style: solid; - border-top-style: solid; +.path-local-treestudyplan .r-grading-bar-segment, +.features-treestudyplan .r-grading-bar-segment { + border-color: #aaa; + border-width: 1px; + display: inline-block; + border-bottom-style: solid; + border-top-style: solid; } -.path-local-treestudyplan .r-grading-bar-segment:first-child, .features-treestudyplan .r-grading-bar-segment:first-child { - border-bottom-left-radius: 3px; - border-top-left-radius: 3px; - border-left-style: solid; +.path-local-treestudyplan .r-grading-bar-segment:first-child, +.features-treestudyplan .r-grading-bar-segment:first-child { + border-bottom-left-radius: 3px; + border-top-left-radius: 3px; + border-left-style: solid; } -.path-local-treestudyplan .r-grading-bar-segment:last-child, .features-treestudyplan .r-grading-bar-segment:last-child { - border-bottom-right-radius: 3px; - border-top-right-radius: 3px; - border-right-style: solid; +.path-local-treestudyplan .r-grading-bar-segment:last-child, +.features-treestudyplan .r-grading-bar-segment:last-child { + border-bottom-right-radius: 3px; + border-top-right-radius: 3px; + border-right-style: solid; } -.path-local-treestudyplan .r-grading-bar-unsubmitted, .features-treestudyplan .r-grading-bar-unsubmitted { - background-color: var(--light); +.path-local-treestudyplan .r-grading-bar-unsubmitted, +.features-treestudyplan .r-grading-bar-unsubmitted { + background-color: var(--light); } -.path-local-treestudyplan .r-grading-bar-graded, .features-treestudyplan .r-grading-bar-graded { - background-color: var(--success); +.path-local-treestudyplan .r-grading-bar-graded, +.features-treestudyplan .r-grading-bar-graded { + background-color: var(--success); } -.path-local-treestudyplan .r-grading-bar-ungraded, .features-treestudyplan .r-grading-bar-ungraded { - background-color: var(--danger); +.path-local-treestudyplan .r-grading-bar-ungraded, +.features-treestudyplan .r-grading-bar-ungraded { + background-color: var(--danger); } -.path-local-treestudyplan .r-completion-bar-incomplete, .features-treestudyplan .r-completion-bar-incomplete { - background-color: var(--light); +.path-local-treestudyplan .r-completion-bar-incomplete, +.features-treestudyplan .r-completion-bar-incomplete { + background-color: var(--light); } -.path-local-treestudyplan .r-completion-bar-completed, .features-treestudyplan .r-completion-bar-completed { - background-color: var(--info); +.path-local-treestudyplan .r-completion-bar-completed, +.features-treestudyplan .r-completion-bar-completed { + background-color: var(--info); } -.path-local-treestudyplan .r-completion-bar-completed-pass, .features-treestudyplan .r-completion-bar-completed-pass { - background-color: var(--success); +.path-local-treestudyplan .r-completion-bar-completed-pass, +.features-treestudyplan .r-completion-bar-completed-pass { + background-color: var(--success); } -.path-local-treestudyplan .r-completion-bar-completed-fail, .features-treestudyplan .r-completion-bar-completed-fail { - background-color: var(--danger); +.path-local-treestudyplan .r-completion-bar-completed-fail, +.features-treestudyplan .r-completion-bar-completed-fail { + background-color: var(--danger); } -.path-local-treestudyplan .r-completion-bar-ungraded, .features-treestudyplan .r-completion-bar-ungraded { - background-color: var(--warning); +.path-local-treestudyplan .r-completion-bar-ungraded, +.features-treestudyplan .r-completion-bar-ungraded { + background-color: var(--warning); } -.path-local-treestudyplan .card.s-studyplan-card, .features-treestudyplan .card.s-studyplan-card { - min-width: 300px; - max-width: 500px; - margin-bottom: 1em; +.path-local-treestudyplan .card.s-studyplan-card, +.features-treestudyplan .card.s-studyplan-card { + min-width: 300px; + max-width: 500px; + margin-bottom: 1em; } -.path-local-treestudyplan .card.s-studyplan-card.timing-past .card-header, .features-treestudyplan .card.s-studyplan-card.timing-past .card-header { - background-color: var(--past); +.path-local-treestudyplan .card.s-studyplan-card.timing-past .card-header, +.features-treestudyplan .card.s-studyplan-card.timing-past .card-header { + background-color: var(--past); } -.path-local-treestudyplan .card.s-studyplan-card.timing-present .card-header, .features-treestudyplan .card.s-studyplan-card.timing-present .card-header { - background-color: var(--present); +.path-local-treestudyplan .card.s-studyplan-card.timing-present .card-header, +.features-treestudyplan .card.s-studyplan-card.timing-present .card-header { + background-color: var(--present); } -.path-local-treestudyplan .card.s-studyplan-card.timing-future .card-header, .features-treestudyplan .card.s-studyplan-card.timing-future .card-header { - background-color: var(--future); +.path-local-treestudyplan .card.s-studyplan-card.timing-future .card-header, +.features-treestudyplan .card.s-studyplan-card.timing-future .card-header { + background-color: var(--future); } -.path-local-treestudyplan .s-studyplan-card-title-buttons, .features-treestudyplan .s-studyplan-card-title-buttons { - font-size: 12pt; - float: right; +.path-local-treestudyplan .s-studyplan-card-title-buttons, +.features-treestudyplan .s-studyplan-card-title-buttons { + font-size: 16px; + float: right; } -.path-local-treestudyplan .s-studyplan-card-title-buttons > *, .features-treestudyplan .s-studyplan-card-title-buttons > * { - margin-left: 0.2em; - margin-right: 0.3em; +.path-local-treestudyplan .s-studyplan-card-title-buttons > *, +.features-treestudyplan .s-studyplan-card-title-buttons > * { + margin-left: 0.2em; + margin-right: 0.3em; } -.path-local-treestudyplan .s-studyplan-card-buttons, .features-treestudyplan .s-studyplan-card-buttons { - float: right; - display: flex; - align-items: center; - justify-content: right; +.path-local-treestudyplan .s-studyplan-card-buttons, +.features-treestudyplan .s-studyplan-card-buttons { + float: right; + display: flex; + align-items: center; + justify-content: right; } -.path-local-treestudyplan .s-studyplan-card-buttons > *, .features-treestudyplan .s-studyplan-card-buttons > * { - margin-left: 1em; +.path-local-treestudyplan .s-studyplan-card-buttons > *, +.features-treestudyplan .s-studyplan-card-buttons > * { + margin-left: 1em; } -.path-local-treestudyplan .s-studyplan-associate-window .custom-select, .features-treestudyplan .s-studyplan-associate-window .custom-select { - width: 100%; - max-width: 100%; +.path-local-treestudyplan .s-studyplan-associate-window .custom-select, +.features-treestudyplan .s-studyplan-associate-window .custom-select { + width: 100%; + max-width: 100%; } -.path-local-treestudyplan .s-required, .features-treestudyplan .s-required { - color: var(--danger); +.path-local-treestudyplan .s-required, +.features-treestudyplan .s-required { + color: var(--danger); } -.path-local-treestudyplan .s-required.complete, .features-treestudyplan .s-required.complete { - color: var(--info); +.path-local-treestudyplan .s-required.complete, +.features-treestudyplan .s-required.complete { + color: var(--info); } .path-local-treestudyplan .s-required.complete-pass, .path-local-treestudyplan .s-required.good, .path-local-treestudyplan .s-required.excellent, -.path-local-treestudyplan .s-required.allgraded, .features-treestudyplan .s-required.complete-pass, +.path-local-treestudyplan .s-required.allgraded, +.features-treestudyplan .s-required.complete-pass, .features-treestudyplan .s-required.good, .features-treestudyplan .s-required.excellent, .features-treestudyplan .s-required.allgraded { - color: var(--success); + color: var(--success); } -.path-local-treestudyplan .s-required.neutral, .features-treestudyplan .s-required.neutral { - color: #aaa; +.path-local-treestudyplan .s-required.neutral, +.features-treestudyplan .s-required.neutral { + color: #aaa; } .path-local-treestudyplan .r-tooltip.incomplete .tooltip-inner, .path-local-treestudyplan .r-tooltip.complete-fail .tooltip-inner, -.path-local-treestudyplan .r-tooltip.completed-fail .tooltip-inner, .features-treestudyplan .r-tooltip.incomplete .tooltip-inner, +.path-local-treestudyplan .r-tooltip.completed-fail .tooltip-inner, +.features-treestudyplan .r-tooltip.incomplete .tooltip-inner, .features-treestudyplan .r-tooltip.complete-fail .tooltip-inner, .features-treestudyplan .r-tooltip.completed-fail .tooltip-inner { - background-color: var(--danger); + background-color: var(--danger); } .path-local-treestudyplan .r-tooltip.incomplete .arrow::before, .path-local-treestudyplan .r-tooltip.complete-fail .arrow::before, -.path-local-treestudyplan .r-tooltip.completed-fail .arrow::before, .features-treestudyplan .r-tooltip.incomplete .arrow::before, +.path-local-treestudyplan .r-tooltip.completed-fail .arrow::before, +.features-treestudyplan .r-tooltip.incomplete .arrow::before, .features-treestudyplan .r-tooltip.complete-fail .arrow::before, .features-treestudyplan .r-tooltip.completed-fail .arrow::before { - border-top-color: var(--danger); + border-top-color: var(--danger); } .path-local-treestudyplan .r-tooltip.complete .tooltip-inner, -.path-local-treestudyplan .r-tooltip.completed .tooltip-inner, .features-treestudyplan .r-tooltip.complete .tooltip-inner, +.path-local-treestudyplan .r-tooltip.completed .tooltip-inner, +.features-treestudyplan .r-tooltip.complete .tooltip-inner, .features-treestudyplan .r-tooltip.completed .tooltip-inner { - background-color: var(--info); + background-color: var(--info); } .path-local-treestudyplan .r-tooltip.complete .arrow::before, -.path-local-treestudyplan .r-tooltip.completed .arrow::before, .features-treestudyplan .r-tooltip.complete .arrow::before, +.path-local-treestudyplan .r-tooltip.completed .arrow::before, +.features-treestudyplan .r-tooltip.complete .arrow::before, .features-treestudyplan .r-tooltip.completed .arrow::before { - border-top-color: var(--info); + border-top-color: var(--info); } .path-local-treestudyplan .r-tooltip.complete-pass .tooltip-inner, -.path-local-treestudyplan .r-tooltip.completed-pass .tooltip-inner, .features-treestudyplan .r-tooltip.complete-pass .tooltip-inner, +.path-local-treestudyplan .r-tooltip.completed-pass .tooltip-inner, +.features-treestudyplan .r-tooltip.complete-pass .tooltip-inner, .features-treestudyplan .r-tooltip.completed-pass .tooltip-inner { - background-color: var(--success); + background-color: var(--success); } .path-local-treestudyplan .r-tooltip.complete-pass .arrow::before, -.path-local-treestudyplan .r-tooltip.completed-pass .arrow::before, .features-treestudyplan .r-tooltip.complete-pass .arrow::before, +.path-local-treestudyplan .r-tooltip.completed-pass .arrow::before, +.features-treestudyplan .r-tooltip.complete-pass .arrow::before, .features-treestudyplan .r-tooltip.completed-pass .arrow::before { - border-top-color: var(--success); + border-top-color: var(--success); } -.path-local-treestudyplan .r-tooltip.incomplete .tooltip-inner, .features-treestudyplan .r-tooltip.incomplete .tooltip-inner { - background-color: var(--danger); +.path-local-treestudyplan .r-tooltip.incomplete .tooltip-inner, +.features-treestudyplan .r-tooltip.incomplete .tooltip-inner { + background-color: var(--danger); } -.path-local-treestudyplan .r-tooltip.incomplete .arrow::before, .features-treestudyplan .r-tooltip.incomplete .arrow::before { - border-top-color: var(--danger); +.path-local-treestudyplan .r-tooltip.incomplete .arrow::before, +.features-treestudyplan .r-tooltip.incomplete .arrow::before { + border-top-color: var(--danger); } -.path-local-treestudyplan .m-buttonbar, .features-treestudyplan .m-buttonbar { - display: flex; - align-items: center; - justify-content: left; +.path-local-treestudyplan .m-buttonbar, +.features-treestudyplan .m-buttonbar { + display: flex; + align-items: center; + justify-content: left; } .path-local-treestudyplan .m-buttonbar a, .path-local-treestudyplan .m-buttonbar span, -.path-local-treestudyplan .m-buttonbar i, .features-treestudyplan .m-buttonbar a, +.path-local-treestudyplan .m-buttonbar i, +.features-treestudyplan .m-buttonbar a, .features-treestudyplan .m-buttonbar span, .features-treestudyplan .m-buttonbar i { - vertical-align: middle; - display: inline; + vertical-align: middle; + display: inline; } -.path-local-treestudyplan .m-buttonbar a, .features-treestudyplan .m-buttonbar a { - margin-right: 1em; +.path-local-treestudyplan .m-buttonbar a, +.features-treestudyplan .m-buttonbar a { + margin-right: 1em; } -.path-local-treestudyplan .s-edit-mod-form [data-fieldtype=submit], .features-treestudyplan .s-edit-mod-form [data-fieldtype=submit] { - display: none !important; +.path-local-treestudyplan .s-edit-mod-form [data-fieldtype=submit], +.features-treestudyplan .s-edit-mod-form [data-fieldtype=submit] { + /* if not working, make selector more specific */ + display: none; } -.path-local-treestudyplan .s-edit-mod-form.genericonly form > fieldset:not(#id_general), .features-treestudyplan .s-edit-mod-form.genericonly form > fieldset:not(#id_general) { - display: none !important; -} -.path-local-treestudyplan .border-grey, .features-treestudyplan .border-grey { - border-color: #aaa; +.path-local-treestudyplan .s-edit-mod-form.genericonly form > fieldset:not(#id_general), +.features-treestudyplan .s-edit-mod-form.genericonly form > fieldset:not(#id_general) { + /* if not working, make selector more specific */ + display: none; } +.path-local-treestudyplan .border-grey, +.features-treestudyplan .border-grey { + border-color: #aaa; +} \ No newline at end of file diff --git a/scss/generic.scss b/scss/generic.scss index 2f2646d..cf65e94 100644 --- a/scss/generic.scss +++ b/scss/generic.scss @@ -1,6 +1,6 @@ .path-local-treestudyplan { div.tab-pane:target { - margin-top: 0px; + margin-top: 0; } [v-cloak] { @@ -12,4 +12,8 @@ margin: auto; } + .special { + color: gold; + } + } \ No newline at end of file diff --git a/scss/readme-moodle.txt b/scss/readme-moodle.txt index 9a7d891..aa92257 100644 --- a/scss/readme-moodle.txt +++ b/scss/readme-moodle.txt @@ -5,16 +5,16 @@ quite hard to maintain. Unfortunately, moodle does not extend the sass/scss compiler support to plugins that are not a theme. -To alleviate this, this plugin includes it's own scss compiler script that compiles -all scss files in this directory into one css file - css/devstyles.css +To alleviate this, this plugin extends moodle's Gruntfile.js scripts +to compile 'scss/styles.scss' into 'css/devstyles.css' (and 'styles.css') -This files is used instead of styles.css in order to avoid having to clear the theme +'css/devstyles.css' is used instead of styles.css in order to avoid having to clear the theme cache every time a style rule is changed during development. Once I devise a method to use styles.css in production environtments and css/devstyles.css production environments, the compiler will compile it into both css/devstyles.css and styles.css -Call the plugin's scss compiler by running scssbuild.sh in the plugin's root. +The grunt command to compile is 'grunt scssplugin' diff --git a/scss/studyplan.scss b/scss/studyplan.scss index 102b32f..5921e28 100644 --- a/scss/studyplan.scss +++ b/scss/studyplan.scss @@ -71,7 +71,7 @@ display: grid; grid-auto-flow: column; /*border-bottom-style: solid;*/ - border-color: #cccccc; + border-color: #ccc; border-width: 1px; } @@ -91,7 +91,7 @@ .t-studyline .t-studyline-editmode-content { border-right-style: solid; - border-color: #cccccc; + border-color: #ccc; border-width: 1px; } @@ -233,19 +233,19 @@ .t-studyline-slot.t-studyline-slot-0 .t-slot-drop.filter .t-slot-item, .r-studyline-slot.r-studyline-slot-0 .r-item-base { - margin-left: 0px; + margin-left: 0; } .t-studyline-slot.gradable.current.odd, .r-studyline-slot.gradable.current.odd { - --hlcol: color-mix(in srgb, var(--less-light) , var(--highlight) var(--highlight-mix)); + --hlcol: color-mix(in srgb, var(--less-light), var(--highlight) var(--highlight-mix)); background-color: var(--hlcol); position: relative; } .t-studyline-slot.gradable.current.odd:before, .r-studyline-slot.gradable.current.odd:before { - --hlcol: color-mix(in srgb, var(--less-light) , var(--highlight) var(--highlight-mix)); + --hlcol: color-mix(in srgb, var(--less-light), var(--highlight) var(--highlight-mix)); box-shadow: -20px 0 10px -7px var(--hlcol) inset; content: " "; height: 100%; @@ -257,7 +257,7 @@ .t-studyline-slot.gradable.current.odd:after, .r-studyline-slot.gradable.current.odd:after { - --hlcol: color-mix(in srgb, var(--less-light) , var(--highlight) var(--highlight-mix)); + --hlcol: color-mix(in srgb, var(--less-light), var(--highlight) var(--highlight-mix)); box-shadow: 20px 0 10px -7px var(--hlcol) inset; content: " "; height: 100%; @@ -272,7 +272,7 @@ } .s-studyline-header-period.current { - --hlcol: color-mix(in srgb, var(--white) , var(--highlight) var(--highlight-mix)); + --hlcol: color-mix(in srgb, var(--white), var(--highlight) var(--highlight-mix)); box-shadow: 0 0 10px 10px var(--hlcol); background-color: var(--hlcol); border-top-left-radius: 16px; @@ -285,14 +285,14 @@ .t-studyline-slot.gradable.current.even, .r-studyline-slot.gradable.current.even { - --hlcol: color-mix(in srgb, var(--white) , var(--highlight) var(--highlight-mix)); + --hlcol: color-mix(in srgb, var(--white), var(--highlight) var(--highlight-mix)); background-color: var(--hlcol); position: relative; } .t-studyline-slot.gradable.current.even:before, .r-studyline-slot.gradable.current.even:before { - --hlcol: color-mix(in srgb, var(--white) , var(--highlight) var(--highlight-mix)); + --hlcol: color-mix(in srgb, var(--white), var(--highlight) var(--highlight-mix)); box-shadow: -20px 0 10px -7px var(--hlcol) inset; content: " "; height: 100%; @@ -308,7 +308,7 @@ .t-studyline-slot.gradable.current.even:after, .r-studyline-slot.gradable.current.even:after { - --hlcol: color-mix(in srgb, var(--white) , var(--highlight) var(--highlight-mix)); + --hlcol: color-mix(in srgb, var(--white), var(--highlight) var(--highlight-mix)); box-shadow: 20px 0 10px -7px var(--hlcol) inset; content: " "; height: 100%; @@ -361,7 +361,7 @@ .t-item-deletebox.drop-in { visibility: visible; border-style: solid; - background-color: #FFCCCC; + background-color: #FCC; color: #a00; } @@ -401,7 +401,7 @@ position: absolute; top: calc(50% - 5px); right: -1px; - line-height: 0px; + line-height: 0; } .t-item-connector-start svg rect { @@ -421,7 +421,7 @@ top: 50%; transform: translate(0, -50%); left: -1px; - line-height: 0px; + line-height: 0; } .t-item-connector-end svg rect { @@ -458,7 +458,7 @@ position: absolute; left: 50%; transform: translate(-50%, 100%); - bottom: 0px; + bottom: 0; z-index: 25; } @@ -474,7 +474,7 @@ .t-item-filter { display: inline-block; height: 1em; - padding: 0px; + padding: 0; margin: 0; text-align: left; font-size: 2em; @@ -545,7 +545,7 @@ a.t-item-course-config { - font-size: 16pt; + font-size: 21px /*16pt*/; vertical-align: middle; float: right; margin-right: 2px; @@ -698,7 +698,7 @@ .r-item-filter { display: inline-block; - padding: 0px; + padding: 0; text-align: left; font-size: 2em; vertical-align: top; @@ -799,14 +799,14 @@ } .r-course-grading { - font-size: 16pt; + font-size: 21px /*16pt*/; margin-right: 2px; vertical-align: bottom; } .r-course-graded, .r-course-result { - font-size: 16pt; + font-size: 21px /*16pt*/; vertical-align: middle; float: right; margin-right: 2px; @@ -819,7 +819,7 @@ } .r-completion-detail-header { - font-size: 20pt; + font-size: 26px /*20pt*/; } .r-item-finish.completion-incomplete, @@ -1019,7 +1019,7 @@ } .s-studyplan-card-title-buttons { - font-size: 12pt; + font-size: 16px /*12pt*/; float: right; } .s-studyplan-card-title-buttons > * { @@ -1115,9 +1115,14 @@ margin-right: 1em; } - .s-edit-mod-form [data-fieldtype=submit] { display: none ! important; } - .s-edit-mod-form.genericonly form > fieldset:not(#id_general) { display: none ! important; } - + .s-edit-mod-form [data-fieldtype=submit] { + /* if not working, make selector more specific */ + display: none; + } + .s-edit-mod-form.genericonly form > fieldset:not(#id_general) { + /* if not working, make selector more specific */ + display: none; + } .border-grey { border-color: #aaa; } diff --git a/scss/styles.scss b/scss/styles.scss new file mode 100644 index 0000000..00025b1 --- /dev/null +++ b/scss/styles.scss @@ -0,0 +1,4 @@ +@import "colors.scss"; +@import "generic.scss"; +@import "invitemanager.scss"; +@import "studyplan.scss" \ No newline at end of file diff --git a/scssbuild.js b/scssbuild.js deleted file mode 100755 index 0c1e148..0000000 --- a/scssbuild.js +++ /dev/null @@ -1,63 +0,0 @@ -#!/usr/bin/env node - -// This file is part of the Studyplan plugin for Moodle -// -// Moodle is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. -// -// Moodle is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with Moodle. If not, see . -/** - * This file compiles the scss files in the scss/ folder into either the main - * styles.css for production upon build or css/devstyles.css for development - * - * Most nice would be to integrate this action with grunt watch, but I am - * not familiar enough with grunt to know if I can extend moodle's grunt actions - * from a Gruntfile.js in this directory without modifying Moodle's Gruntfile.js - * - * @package local_treestudyplan - * @copyright 2023 P.M. Kuipers - * @license https://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later - */ - -const sass = require('sass'); -const path = require('path'); -const fs = require('fs'); - -const output = 'css/devstyles.css'; - -let css = ""; -let map = ""; -//joining path of directory -const directoryPath = path.join(__dirname, 'scss'); -//passsing directoryPath and callback function -fs.readdir(directoryPath, function (err, files) { - //handling error - if (err) { - return console.log('Unable to scan directory: ' + err); - } - //listing all files using forEach - files.forEach(function (file) { - if (file.endsWith(".scss")) { - const result = sass.compile(file); - console.info(`Processing ${file}...`) - if ( result ) { - css = css + `/**** ${file} ****/\n` + result.css + "\n"; - } - } - }); - - console.info(`Storing ${output}`); - fs.writeFile(path.join(__dirname, output),css,(err) => { - if (err) throw err; - }); - -}); - diff --git a/styles.css b/styles.css index 19f3f36..5f72756 100644 --- a/styles.css +++ b/styles.css @@ -1,46 +1,60 @@ -/* stylelint-disable length-zero-no-unit, color-hex-case, color-hex-length*/ -.path-local-treestudyplan div.tab-pane:target { - margin-top: 0px; +.path-local-treestudyplan, +.features-treestudyplan { + /* we can override these colors in the :root field if needed */ + --less-light: color-mix(in srgb, var(--light) 80%, #ccc); + --highlight-mix: 10%; + --highlight: var(--info); + --past: var(--purple); + --present: var(--blue); + --future: var(--gray); + --coursecat-list: var(--blue); + --course-list: var(--green); + --excellent: var(--blue); + --pending: var(--gray); + --incomplete: var(--gray); } +.path-local-treestudyplan div.tab-pane:target { + margin-top: 0; +} .path-local-treestudyplan [v-cloak] { visibility: hidden; } - .path-local-treestudyplan .vue-loader { width: 32px; margin: auto; } +.path-local-treestudyplan .special { + color: gold; +} /******************* * * Invite manager * ********************/ +.path-admin-local-treestudyplan table.m-cohortgrouptable, +.path-admin-local-treestudyplan table.m-roomtable { + width: auto; +} .path-local-treestudyplan table.m-manage_invites { - margin-bottom: 2em; width: 80%; } - .path-local-treestudyplan table.m-manage_invites thead tr { - background-color: #009EE2; + background-color: #009ee2; color: white; } - .path-local-treestudyplan table.m-manage_invites tbody tr:nth-child(even) { - background-color: #D4EDFC; + background-color: #d4edfc; } - .path-local-treestudyplan table.m-manage_invites tbody tr:nth-child(odd) { background-color: white; } - .path-local-treestudyplan table.m-manage_invites tbody td { padding: 5px; } - .path-local-treestudyplan table.m-manage_invites tbody td[data-field=name] { width: 20em; } @@ -50,24 +64,1248 @@ .path-local-treestudyplan table.m-manage_invites tbody td[data-field=date] { width: 10em; } - .path-local-treestudyplan table.m-manage_invites tbody td[data-field=allow_details], .path-local-treestudyplan table.m-manage_invites tbody td[data-field=allow_calendar], .path-local-treestudyplan table.m-manage_invites tbody td[data-field=allow_badges] { width: 5em; padding-left: 1em; } - .path-local-treestudyplan table.m-manage_invites tbody td[data-field=control] { width: 150px; } - .path-local-treestudyplan table.m-manage_invites tbody td[data-field=control] a { margin-left: 7px; margin-right: 7px; } -.path-admin-local-treestudyplan table.m-cohortgrouptable, -.path-admin-local-treestudyplan table.m-roomtable { - width: auto; +.path-local-treestudyplan .t-toolbox-preface, +.features-treestudyplan .t-toolbox-preface { + margin: 10px; } +.path-local-treestudyplan .t-studyplan-container, +.features-treestudyplan .t-studyplan-container { + margin-top: 16px; + min-height: 500px; +} +.path-local-treestudyplan .t-studyplan-content, +.path-local-treestudyplan .r-studyplan-content, +.features-treestudyplan .t-studyplan-content, +.features-treestudyplan .r-studyplan-content { + display: flex; +} +.path-local-treestudyplan .t-studyplan-headings, +.path-local-treestudyplan .r-studyplan-headings, +.features-treestudyplan .t-studyplan-headings, +.features-treestudyplan .r-studyplan-headings { + display: block; +} +.path-local-treestudyplan .t-studyplan-wrapper, +.path-local-treestudyplan .r-studyplan-wrapper, +.features-treestudyplan .t-studyplan-wrapper, +.features-treestudyplan .r-studyplan-wrapper { + display: block; +} +.path-local-treestudyplan .t-studyplan-timeline, +.path-local-treestudyplan .r-studyplan-timeline, +.features-treestudyplan .t-studyplan-timeline, +.features-treestudyplan .r-studyplan-timeline { + display: grid; + position: relative; /* make sure this grid is the offset for all arrows that are drawn by SimpleLine */ + /* grid-template-columns will be set in the style attribute */ + /* Use the variables below to specify width for filter spots and course spots */ + --studyplan-filter-width: auto; /* better leave this at auto for now*/ + --studyplan-course-width: auto; /* better leave this at auto for now*/ +} +.path-local-treestudyplan .t-studyplan-scrollable, +.path-local-treestudyplan .r-studyplan-scrollable, +.features-treestudyplan .t-studyplan-scrollable, +.features-treestudyplan .r-studyplan-scrollable { + overflow-x: scroll; + overflow-y: clip; /* to ensure the x scrollbar does not cause an y scrollbar to appear */ + scrollbar-color: var(--primary) color-mix(in srgb, var(--primary) 20%, white); + scrollbar-width: thin; +} +.path-local-treestudyplan .t-studyplan-scrollable::-webkit-scrollbar, +.path-local-treestudyplan .r-studyplan-scrollable::-webkit-scrollbar, +.features-treestudyplan .t-studyplan-scrollable::-webkit-scrollbar, +.features-treestudyplan .r-studyplan-scrollable::-webkit-scrollbar { + width: 8px; +} +.path-local-treestudyplan .t-studyplan-scrollable::-webkit-scrollbar-track, +.path-local-treestudyplan .r-studyplan-scrollable::-webkit-scrollbar-track, +.features-treestudyplan .t-studyplan-scrollable::-webkit-scrollbar-track, +.features-treestudyplan .r-studyplan-scrollable::-webkit-scrollbar-track { + background: color-mix(in srgb, var(--primary) 20%, white); +} +.path-local-treestudyplan .t-studyplan-scrollable::-webkit-scrollbar-thumb, +.path-local-treestudyplan .r-studyplan-scrollable::-webkit-scrollbar-thumb, +.features-treestudyplan .t-studyplan-scrollable::-webkit-scrollbar-thumb, +.features-treestudyplan .r-studyplan-scrollable::-webkit-scrollbar-thumb { + background: var(--primary); +} +.path-local-treestudyplan .t-studyplan-column-heading, +.path-local-treestudyplan .r-studyplan-column-heading, +.features-treestudyplan .t-studyplan-column-heading, +.features-treestudyplan .r-studyplan-column-heading { + color: inherit; /* placeholder */ +} +.path-local-treestudyplan ul.dropdown-menu.show, +.features-treestudyplan ul.dropdown-menu.show { + background-color: white; +} +.path-local-treestudyplan .t-studyline, +.path-local-treestudyplan .r-studyline, +.features-treestudyplan .t-studyline, +.features-treestudyplan .r-studyline { + display: grid; + grid-auto-flow: column; + /*border-bottom-style: solid;*/ + border-color: #ccc; + border-width: 1px; +} +.path-local-treestudyplan .t-studyline-drag .t-studyline, +.features-treestudyplan .t-studyline-drag .t-studyline { + justify-content: start; +} +.path-local-treestudyplan .t-studyline.t-studyline-heading, +.path-local-treestudyplan .r-studyline.r-studyline-heading, +.features-treestudyplan .t-studyline.t-studyline-heading, +.features-treestudyplan .r-studyline.r-studyline-heading { + border-right-style: none; +} +.path-local-treestudyplan .t-studyline.end, +.path-local-treestudyplan .r-studyline.end, +.features-treestudyplan .t-studyline.end, +.features-treestudyplan .r-studyline.end { + border-right-style: solid; +} +.path-local-treestudyplan .t-studyline .t-studyline-editmode-content, +.features-treestudyplan .t-studyline .t-studyline-editmode-content { + border-right-style: solid; + border-color: #ccc; + border-width: 1px; +} +.path-local-treestudyplan .t-studyline .controlbox, +.features-treestudyplan .t-studyline .controlbox { + white-space: nowrap; + width: 64px; +} +.path-local-treestudyplan .t-studyline .control, +.features-treestudyplan .t-studyline .control { + display: inline-block; + width: 24px; + text-align: center; + padding-top: 5px; +} +.path-local-treestudyplan .t-studyline-editmode-content, +.features-treestudyplan .t-studyline-editmode-content { + min-width: 450px; + max-width: 700px; + display: flex; + flex-direction: row; + justify-content: center; +} +.path-local-treestudyplan .t-studyplan-controlbox, +.features-treestudyplan .t-studyplan-controlbox { + height: 30px; +} +.path-local-treestudyplan .t-studyplan-controlbox .control, +.features-treestudyplan .t-studyplan-controlbox .control { + float: right; + margin-left: 10px; + margin-right: 5px; +} +.path-local-treestudyplan .t-studyline-drag, +.features-treestudyplan .t-studyline-drag { + display: inline; +} +.path-local-treestudyplan .t-studyline-add, +.features-treestudyplan .t-studyline-add { + margin-top: 0.5em; + margin-bottom: 1em; +} +.path-local-treestudyplan .t-studyline-title, +.path-local-treestudyplan .r-studyline-title, +.features-treestudyplan .t-studyline-title, +.features-treestudyplan .r-studyline-title { + padding-top: 5px; + padding-left: 10px; + width: 150px; + white-space: nowrap; + border-color: rgba(0, 0, 0, 0.125); + border-width: 1px; + border-left-style: solid; + display: flex; + flex-direction: column; + justify-content: center; +} +.path-local-treestudyplan .t-studyline-title abbr, +.path-local-treestudyplan .r-studyline-title abbr, +.features-treestudyplan .t-studyline-title abbr, +.features-treestudyplan .r-studyline-title abbr { + display: inline-block; + vertical-align: middle; + font-weight: bold; + font-style: italic; +} +.path-local-treestudyplan svg.empty-slot circle, +.features-treestudyplan svg.empty-slot circle { + fill: transparent; + stroke: #ccc; + stroke-width: 4px; + stroke-opacity: 0.5; + stroke-dasharray: 4 4; +} +.path-local-treestudyplan ul.t-item-module-children, +.path-local-treestudyplan ul.t-coursecat-list li, +.path-local-treestudyplan ul.t-course-list li, +.features-treestudyplan ul.t-item-module-children, +.features-treestudyplan ul.t-coursecat-list li, +.features-treestudyplan ul.t-course-list li { + list-style: none; + padding-left: 0; +} +.path-local-treestudyplan li.t-item-course-gradeinfo, +.features-treestudyplan li.t-item-course-gradeinfo { + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; +} +.path-local-treestudyplan span.t-item-course-chk-lbl, +.features-treestudyplan span.t-item-course-chk-lbl { + font-size: 0.7em; + display: inline-block; + width: 4em; +} +.path-local-treestudyplan li.t-item-course-gradeinfo img, +.features-treestudyplan li.t-item-course-gradeinfo img { + vertical-align: top; + top: 3px; + position: relative; + max-width: 24px; + max-height: 24px; +} +.path-local-treestudyplan i.t-coursecat-list-item, +.features-treestudyplan i.t-coursecat-list-item { + color: var(--coursecat-list); +} +.path-local-treestudyplan i.t-course-list-item, +.features-treestudyplan i.t-course-list-item { + color: var(--course-list); +} +.path-local-treestudyplan ul.t-competency-list li, +.features-treestudyplan ul.t-competency-list li { + list-style: none; +} +.path-local-treestudyplan .collapsed > .when-open, +.path-local-treestudyplan .not-collapsed > .when-closed, +.features-treestudyplan .collapsed > .when-open, +.features-treestudyplan .not-collapsed > .when-closed { + display: none; +} +.path-local-treestudyplan .t-studyline-slot, +.path-local-treestudyplan .r-studyline-slot, +.features-treestudyplan .t-studyline-slot, +.features-treestudyplan .r-studyline-slot { + width: 130px; +} +.path-local-treestudyplan .r-studyline-slot, +.features-treestudyplan .r-studyline-slot { + min-height: 32px; +} +.path-local-treestudyplan .t-studyline-slot-0.filter .t-slot-item, +.path-local-treestudyplan .r-studyline-slot-0.filter .r-slot-item, +.features-treestudyplan .t-studyline-slot-0.filter .t-slot-item, +.features-treestudyplan .r-studyline-slot-0.filter .r-slot-item { + margin-left: 0; +} +.path-local-treestudyplan .t-studyline-slot.t-studyline-slot-0, +.path-local-treestudyplan .r-studyline-slot.r-studyline-slot-0, +.features-treestudyplan .t-studyline-slot.t-studyline-slot-0, +.features-treestudyplan .r-studyline-slot.r-studyline-slot-0 { + width: 75px; +} +.path-local-treestudyplan .t-studyline-slot.t-studyline-slot-0 .t-slot-drop.filter .t-slot-item, +.path-local-treestudyplan .r-studyline-slot.r-studyline-slot-0 .r-item-base, +.features-treestudyplan .t-studyline-slot.t-studyline-slot-0 .t-slot-drop.filter .t-slot-item, +.features-treestudyplan .r-studyline-slot.r-studyline-slot-0 .r-item-base { + margin-left: 0; +} +.path-local-treestudyplan .t-studyline-slot.gradable.current.odd, +.path-local-treestudyplan .r-studyline-slot.gradable.current.odd, +.features-treestudyplan .t-studyline-slot.gradable.current.odd, +.features-treestudyplan .r-studyline-slot.gradable.current.odd { + --hlcol: color-mix(in srgb, var(--less-light), var(--highlight) var(--highlight-mix)); + background-color: var(--hlcol); + position: relative; +} +.path-local-treestudyplan .t-studyline-slot.gradable.current.odd:before, +.path-local-treestudyplan .r-studyline-slot.gradable.current.odd:before, +.features-treestudyplan .t-studyline-slot.gradable.current.odd:before, +.features-treestudyplan .r-studyline-slot.gradable.current.odd:before { + --hlcol: color-mix(in srgb, var(--less-light), var(--highlight) var(--highlight-mix)); + box-shadow: -20px 0 10px -7px var(--hlcol) inset; + content: " "; + height: 100%; + left: -20px; + position: absolute; + top: 0; + width: 20px; +} +.path-local-treestudyplan .t-studyline-slot.gradable.current.odd:after, +.path-local-treestudyplan .r-studyline-slot.gradable.current.odd:after, +.features-treestudyplan .t-studyline-slot.gradable.current.odd:after, +.features-treestudyplan .r-studyline-slot.gradable.current.odd:after { + --hlcol: color-mix(in srgb, var(--less-light), var(--highlight) var(--highlight-mix)); + box-shadow: 20px 0 10px -7px var(--hlcol) inset; + content: " "; + height: 100%; + right: -20px; + position: absolute; + top: 0; + width: 20px; +} +.path-local-treestudyplan .t-studyline-slot.lastlyr .t-slot-item, +.features-treestudyplan .t-studyline-slot.lastlyr .t-slot-item { + margin-bottom: 0; +} +.path-local-treestudyplan .s-studyline-header-period.current, +.features-treestudyplan .s-studyline-header-period.current { + --hlcol: color-mix(in srgb, var(--white), var(--highlight) var(--highlight-mix)); + box-shadow: 0 0 10px 10px var(--hlcol); + background-color: var(--hlcol); + border-top-left-radius: 16px; + border-top-right-radius: 16px; +} +.path-local-treestudyplan .s-studyline-header-heading, +.features-treestudyplan .s-studyline-header-heading { + margin-top: 16px; +} +.path-local-treestudyplan .t-studyline-slot.gradable.current.even, +.path-local-treestudyplan .r-studyline-slot.gradable.current.even, +.features-treestudyplan .t-studyline-slot.gradable.current.even, +.features-treestudyplan .r-studyline-slot.gradable.current.even { + --hlcol: color-mix(in srgb, var(--white), var(--highlight) var(--highlight-mix)); + background-color: var(--hlcol); + position: relative; +} +.path-local-treestudyplan .t-studyline-slot.gradable.current.even:before, +.path-local-treestudyplan .r-studyline-slot.gradable.current.even:before, +.features-treestudyplan .t-studyline-slot.gradable.current.even:before, +.features-treestudyplan .r-studyline-slot.gradable.current.even:before { + --hlcol: color-mix(in srgb, var(--white), var(--highlight) var(--highlight-mix)); + box-shadow: -20px 0 10px -7px var(--hlcol) inset; + content: " "; + height: 100%; + left: -20px; + position: absolute; + top: 0; + width: 20px; +} +.path-local-treestudyplan .simpleline, +.features-treestudyplan .simpleline { + z-index: 20; +} +.path-local-treestudyplan .t-studyline-slot.gradable.current.even:after, +.path-local-treestudyplan .r-studyline-slot.gradable.current.even:after, +.features-treestudyplan .t-studyline-slot.gradable.current.even:after, +.features-treestudyplan .r-studyline-slot.gradable.current.even:after { + --hlcol: color-mix(in srgb, var(--white), var(--highlight) var(--highlight-mix)); + box-shadow: 20px 0 10px -7px var(--hlcol) inset; + content: " "; + height: 100%; + right: -20px; + position: absolute; + top: 0; + width: 20px; +} +.path-local-treestudyplan .t-slot-drop, +.features-treestudyplan .t-slot-drop { + min-height: 32px; + height: 100%; + min-width: 50px; + display: flex; + flex-direction: column; + align-content: center; + justify-content: center; +} +.path-local-treestudyplan .t-slot-drop.competency, +.features-treestudyplan .t-slot-drop.competency { + min-width: 100px; +} +.path-local-treestudyplan .t-slot-drop.filter, +.features-treestudyplan .t-slot-drop.filter { + min-width: 50px; +} +.path-local-treestudyplan .t-slot-drop.secondary, +.features-treestudyplan .t-slot-drop.secondary { + min-height: 5px; +} +.path-local-treestudyplan .t-slot-drop.secondary.drop-allowed, +.features-treestudyplan .t-slot-drop.secondary.drop-allowed { + min-height: 5px; +} +.path-local-treestudyplan .t-item-deletebox, +.features-treestudyplan .t-item-deletebox { + display: inline-block; + width: 100px; + text-align: center; + visibility: hidden; +} +.path-local-treestudyplan .t-item-deletebox.drop-allowed, +.features-treestudyplan .t-item-deletebox.drop-allowed { + visibility: visible; + border-width: 1px; + border-style: dashed; + color: #f77; +} +.path-local-treestudyplan .t-item-deletebox.drop-in, +.features-treestudyplan .t-item-deletebox.drop-in { + visibility: visible; + border-style: solid; + background-color: #fcc; + color: #a00; +} +.path-local-treestudyplan .modal-dialog .modal-content, +.features-treestudyplan .modal-dialog .modal-content { + background: white; +} +.path-local-treestudyplan .modal-dialog.modal-lg, +.features-treestudyplan .modal-dialog.modal-lg { + max-width: 800px; +} +.path-local-treestudyplan .modal-dialog.modal-sm, +.features-treestudyplan .modal-dialog.modal-sm { + max-width: 300px; +} +.path-local-treestudyplan .gradable .t-slot-item, +.path-local-treestudyplan .gradable .r-slot-item, +.features-treestudyplan .gradable .t-slot-item, +.features-treestudyplan .gradable .r-slot-item { + width: 100%; +} +.path-local-treestudyplan .t-slot-item, +.path-local-treestudyplan .r-slot-item, +.features-treestudyplan .t-slot-item, +.features-treestudyplan .r-slot-item { + margin-top: 5px; + margin-bottom: 5px; + margin-left: auto; + margin-right: auto; + display: grid; +} +.path-local-treestudyplan .t-item-base, +.path-local-treestudyplan .r-item-base, +.features-treestudyplan .t-item-base, +.features-treestudyplan .r-item-base { + align-self: center; + position: relative; +} +.path-local-treestudyplan .t-item-connector-start, +.features-treestudyplan .t-item-connector-start { + position: absolute; + top: calc(50% - 5px); + right: -1px; + line-height: 0; +} +.path-local-treestudyplan .t-item-connector-start svg rect, +.features-treestudyplan .t-item-connector-start svg rect { + cursor: crosshair; + stroke-width: 1px; + stroke: #3c3; + fill: #3c3; +} +.path-local-treestudyplan .t-item-connector-start.deleteMode svg rect, +.features-treestudyplan .t-item-connector-start.deleteMode svg rect { + stroke: #f70; + fill: #f70; +} +.path-local-treestudyplan .t-item-connector-end, +.features-treestudyplan .t-item-connector-end { + position: absolute; + top: 50%; + transform: translate(0, -50%); + left: -1px; + line-height: 0; +} +.path-local-treestudyplan .t-item-connector-end svg rect, +.features-treestudyplan .t-item-connector-end svg rect { + stroke-width: 1px; + stroke: #f00; + fill: #f00; +} +.path-local-treestudyplan .sw-studyline-editmode, +.features-treestudyplan .sw-studyline-editmode { + display: inline-block; +} +.path-local-treestudyplan .t-item-base .deletebox, +.features-treestudyplan .t-item-base .deletebox { + position: absolute; + top: 50%; + transform: translate(0, -50%); + right: 5px; + border-radius: 5px; + padding: 3px; + background-color: rgba(255, 255, 255, 0.4666666667); + cursor: default; + border-color: #ccc; + border-width: 1px; + border-style: solid; + z-index: 20; +} +.path-local-treestudyplan .t-item-base .deletebox a, +.features-treestudyplan .t-item-base .deletebox a { + display: block; + margin: 3px; +} +.path-local-treestudyplan .t-item-base .t-item-contextview, +.features-treestudyplan .t-item-base .t-item-contextview { + position: absolute; + left: 50%; + transform: translate(-50%, 100%); + bottom: 0; + z-index: 25; +} +.path-local-treestudyplan .t-item-contextview .close-button, +.features-treestudyplan .t-item-contextview .close-button { + float: right; +} +.path-local-treestudyplan ul.t-toolbox li, +.features-treestudyplan ul.t-toolbox li { + list-style: none; +} +.path-local-treestudyplan .t-item-filter, +.features-treestudyplan .t-item-filter { + display: inline-block; + height: 1em; + padding: 0; + margin: 0; + text-align: left; + font-size: 2em; + vertical-align: top; +} +.path-local-treestudyplan .t-item-filter i, +.features-treestudyplan .t-item-filter i { + vertical-align: top; +} +.path-local-treestudyplan .t-toolbox .t-item-filter, +.features-treestudyplan .t-toolbox .t-item-filter { + font-size: 1em; +} +.path-local-treestudyplan .t-item-junction i, +.features-treestudyplan .t-item-junction i { + color: var(--warning); +} +.path-local-treestudyplan .t-item-finish i, +.features-treestudyplan .t-item-finish i { + color: var(--success); +} +.path-local-treestudyplan .t-item-start i, +.features-treestudyplan .t-item-start i { + color: var(--success); +} +.path-local-treestudyplan .t-item-badge svg, +.features-treestudyplan .t-item-badge svg { + color: var(--warning); +} +.path-local-treestudyplan .t-slot-drop.type-allowed, +.features-treestudyplan .t-slot-drop.type-allowed { + border-color: var(--success); + border-style: dashed; + border-width: 1px; +} +.path-local-treestudyplan .t-slot-drop.type-allowed.drop-forbidden, +.features-treestudyplan .t-slot-drop.type-allowed.drop-forbidden { + border-color: var(--danger); +} +.path-local-treestudyplan .t-slot-drop.filter .t-item-base, +.features-treestudyplan .t-slot-drop.filter .t-item-base { + display: inline-block; + margin-top: 5px; + margin-bottom: 5px; + margin-left: auto; + margin-right: auto; + line-height: 1px; +} +.path-local-treestudyplan .t-studyline-slot-0.filter .t-slot-drop.filter .t-item-base, +.features-treestudyplan .t-studyline-slot-0.filter .t-slot-drop.filter .t-item-base { + margin-left: 0; +} +.path-local-treestudyplan a.t-item-config, +.features-treestudyplan a.t-item-config { + position: absolute; + top: -5px; + right: -5px; +} +.path-local-treestudyplan a.t-item-config.badge, +.features-treestudyplan a.t-item-config.badge { + top: -5px; + right: -5px; + font-size: 16px; +} +.path-local-treestudyplan a.t-item-course-config, +.features-treestudyplan a.t-item-course-config { + font-size: 21px; + vertical-align: middle; + float: right; + margin-right: 2px; + margin-top: -5px; +} +.path-local-treestudyplan .t-item-connector-end, +.features-treestudyplan .t-item-connector-end { + visibility: hidden; +} +.path-local-treestudyplan .t-item-connector-end.type-allowed.drop-allowed, +.features-treestudyplan .t-item-connector-end.type-allowed.drop-allowed { + visibility: visible; +} +.path-local-treestudyplan .t-badges li, +.features-treestudyplan .t-badges li { + list-style: none; +} +.path-local-treestudyplan .t-badges .t-badge-drag, +.features-treestudyplan .t-badges .t-badge-drag { + display: inline; +} +.path-local-treestudyplan .t-badges img, +.features-treestudyplan .t-badges img { + width: 32px; + height: 32px; +} +.path-local-treestudyplan .t-item-badge, +.features-treestudyplan .t-item-badge { + width: 50px; + height: 50px; + position: relative; + margin-top: 3px; +} +.path-local-treestudyplan .t-item-badge img.badge-image, +.features-treestudyplan .t-item-badge img.badge-image { + width: 32px; + height: 32px; + position: absolute; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); +} +.path-local-treestudyplan .t-item-badge svg.t-badge-backdrop, +.features-treestudyplan .t-item-badge svg.t-badge-backdrop { + position: absolute; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); +} +.path-local-treestudyplan .r-report-tabs .list-group-item-action, +.features-treestudyplan .r-report-tabs .list-group-item-action { + width: inherit; +} +.path-local-treestudyplan .r-studyplan-tab, +.path-local-treestudyplan .t-studyplan-tab, +.features-treestudyplan .r-studyplan-tab, +.features-treestudyplan .t-studyplan-tab { + width: auto; + overflow-x: auto; +} +.path-local-treestudyplan .t-studyline-drag:nth-child(odd) .t-studyline div, +.path-local-treestudyplan .t-studyline-heading.odd, +.path-local-treestudyplan .r-studyline-heading.odd, +.path-local-treestudyplan .t-studyline-slot.odd, +.path-local-treestudyplan .r-studyline-slot.odd, +.features-treestudyplan .t-studyline-drag:nth-child(odd) .t-studyline div, +.features-treestudyplan .t-studyline-heading.odd, +.features-treestudyplan .r-studyline-heading.odd, +.features-treestudyplan .t-studyline-slot.odd, +.features-treestudyplan .r-studyline-slot.odd { + background-color: var(--less-light); +} +.path-local-treestudyplan .t-studyline-drag:nth-child(even) .t-studyline div, +.path-local-treestudyplan .t-studyline-heading.even, +.path-local-treestudyplan .r-studyline-heading.even, +.path-local-treestudyplan .t-studyline-slot.even, +.path-local-treestudyplan .r-studyline-slot.even, +.features-treestudyplan .t-studyline-drag:nth-child(even) .t-studyline div, +.features-treestudyplan .t-studyline-heading.even, +.features-treestudyplan .r-studyline-heading.even, +.features-treestudyplan .t-studyline-slot.even, +.features-treestudyplan .r-studyline-slot.even { + background-color: var(--white); +} +.path-local-treestudyplan .t-studyline-drag:first-child, +.path-local-treestudyplan .t-studyline-heading.first, +.path-local-treestudyplan .t-studyline-slot.first, +.path-local-treestudyplan .r-studyline-heading.first, +.path-local-treestudyplan .r-studyline-slot.first, +.features-treestudyplan .t-studyline-drag:first-child, +.features-treestudyplan .t-studyline-heading.first, +.features-treestudyplan .t-studyline-slot.first, +.features-treestudyplan .r-studyline-heading.first, +.features-treestudyplan .r-studyline-slot.first { + border-top-style: solid; +} +.path-local-treestudyplan .t-studyline-drag:last-child, +.path-local-treestudyplan .t-studyline-heading.last, +.path-local-treestudyplan .t-studyline-slot.last.newlyr, +.path-local-treestudyplan .r-studyline-heading.last, +.path-local-treestudyplan .r-studyline-slot.last, +.features-treestudyplan .t-studyline-drag:last-child, +.features-treestudyplan .t-studyline-heading.last, +.features-treestudyplan .t-studyline-slot.last.newlyr, +.features-treestudyplan .r-studyline-heading.last, +.features-treestudyplan .r-studyline-slot.last { + border-bottom-style: solid; +} +.path-local-treestudyplan .s-studyline-header-period, +.features-treestudyplan .s-studyline-header-period { + text-align: center; + padding-top: 5px; + margin-top: 16px; /* To allow for box shadow on highlighted period */ +} +.path-local-treestudyplan .s-studyline-header-period p, +.features-treestudyplan .s-studyline-header-period p { + margin-bottom: 0; +} +.path-local-treestudyplan .s-studyline-header-period-datespan, +.features-treestudyplan .s-studyline-header-period-datespan { + white-space: nowrap; +} +.path-local-treestudyplan .s-studyline-header-period-datespan .date, +.features-treestudyplan .s-studyline-header-period-datespan .date { + font-weight: bold; +} +.path-local-treestudyplan .s-studyline-header-period-datespan.small, +.features-treestudyplan .s-studyline-header-period-datespan.small { + font-size: 9px; +} +.path-local-treestudyplan .t-studyline-slot.rightmost, +.path-local-treestudyplan .r-studyline-slot.rightmost, +.features-treestudyplan .t-studyline-slot.rightmost, +.features-treestudyplan .r-studyline-slot.rightmost { + border-right-style: solid; +} +.path-local-treestudyplan .t-studyline-handle, +.path-local-treestudyplan .r-studyline-handle, +.features-treestudyplan .t-studyline-handle, +.features-treestudyplan .r-studyline-handle { + width: 10px; + height: 100%; + border-left-style: solid; + border-width: 1px; + border-color: rgba(0, 0, 0, 0.125); +} +.path-local-treestudyplan .gradable .r-item-base, +.features-treestudyplan .gradable .r-item-base { + width: 100%; +} +.path-local-treestudyplan .t-item-invalid .card-body, +.path-local-treestudyplan .r-item-invalid .card-body, +.path-local-treestudyplan .t-item-competency .card-body, +.path-local-treestudyplan .t-item-course .card-body, +.path-local-treestudyplan .r-item-competency .card-body, +.features-treestudyplan .t-item-invalid .card-body, +.features-treestudyplan .r-item-invalid .card-body, +.features-treestudyplan .t-item-competency .card-body, +.features-treestudyplan .t-item-course .card-body, +.features-treestudyplan .r-item-competency .card-body { + padding: 3px; + padding-left: 7px; + padding-right: 7px; +} +.path-local-treestudyplan .r-item-invalid .card-body, +.path-local-treestudyplan .t-item-invalid .card-body, +.features-treestudyplan .r-item-invalid .card-body, +.features-treestudyplan .t-item-invalid .card-body { + color: darkred; +} +.path-local-treestudyplan .r-item-filter, +.features-treestudyplan .r-item-filter { + display: inline-block; + padding: 0; + text-align: left; + font-size: 2em; + vertical-align: top; + height: 1em; +} +.path-local-treestudyplan .r-item-filter i, +.features-treestudyplan .r-item-filter i { + vertical-align: top; +} +.path-local-treestudyplan .r-item-start i, +.features-treestudyplan .r-item-start i { + color: var(--success); +} +.path-local-treestudyplan .r-item-badge i, +.features-treestudyplan .r-item-badge i { + color: var(--warning); +} +.path-local-treestudyplan .r-badges li, +.features-treestudyplan .r-badges li { + list-style: none; +} +.path-local-treestudyplan .r-badges .r-badge-drag, +.features-treestudyplan .r-badges .r-badge-drag { + display: inline; +} +.path-local-treestudyplan .r-badges img, +.features-treestudyplan .r-badges img { + width: 32px; + height: 32px; +} +.path-local-treestudyplan .r-item-badge, +.features-treestudyplan .r-item-badge { + width: 50px; + height: 50px; + position: relative; + margin-top: 3px; +} +.path-local-treestudyplan .r-item-badge img.badge-image, +.features-treestudyplan .r-item-badge img.badge-image { + width: 32px; + height: 32px; + position: absolute; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); +} +.path-local-treestudyplan .r-item-badge svg.r-badge-backdrop, +.features-treestudyplan .r-item-badge svg.r-badge-backdrop { + position: absolute; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); +} +.path-local-treestudyplan .r-item-badge svg.r-badge-backdrop circle, +.features-treestudyplan .r-item-badge svg.r-badge-backdrop circle { + stroke: black; + stroke-width: 2px; + fill: #ccc; +} +.path-local-treestudyplan .r-item-module-children, +.features-treestudyplan .r-item-module-children { + list-style: none; +} +.path-local-treestudyplan .r-item-start.completion-incomplete i, +.path-local-treestudyplan .r-completion-incomplete, +.features-treestudyplan .r-item-start.completion-incomplete i, +.features-treestudyplan .r-completion-incomplete { + color: var(--incomplete); +} +.path-local-treestudyplan .r-completion-progress, +.features-treestudyplan .r-completion-progress { + color: var(--warning); +} +.path-local-treestudyplan .r-completion-completed, +.path-local-treestudyplan .r-completion-complete-pass, +.features-treestudyplan .r-completion-completed, +.features-treestudyplan .r-completion-complete-pass { + color: var(--success); +} +.path-local-treestudyplan .r-completion-good, +.features-treestudyplan .r-completion-good { + color: var(--info); +} +.path-local-treestudyplan .r-completion-excellent, +.path-local-treestudyplan .r-completion-complete, +.features-treestudyplan .r-completion-excellent, +.features-treestudyplan .r-completion-complete { + color: var(--excellent); +} +.path-local-treestudyplan .r-completion-pending, +.features-treestudyplan .r-completion-pending { + color: var(--pending); +} +.path-local-treestudyplan .r-completion-failed, +.path-local-treestudyplan .r-completion-complete-fail, +.features-treestudyplan .r-completion-failed, +.features-treestudyplan .r-completion-complete-fail { + color: var(--danger); +} +.path-local-treestudyplan th.r-aggregation-all, +.features-treestudyplan th.r-aggregation-all { + color: rgb(0, 32, 80); +} +.path-local-treestudyplan th.r-aggregation-any, +.features-treestudyplan th.r-aggregation-any { + color: rgb(0, 46, 0); +} +.path-local-treestudyplan tr.r-completion-category-header, +.features-treestudyplan tr.r-completion-category-header { + border-top-style: solid; + border-top-width: 1px; + border-color: rgb(127, 127, 127); +} +.path-local-treestudyplan .r-course-grading, +.features-treestudyplan .r-course-grading { + font-size: 21px; + margin-right: 2px; + vertical-align: bottom; +} +.path-local-treestudyplan .r-course-graded, +.path-local-treestudyplan .r-course-result, +.features-treestudyplan .r-course-graded, +.features-treestudyplan .r-course-result { + font-size: 21px; + vertical-align: middle; + float: right; + margin-right: 2px; + margin-top: 2px; +} +.path-local-treestudyplan .r-progress-circle-popup, +.features-treestudyplan .r-progress-circle-popup { + position: relative; + top: 0.1em; +} +.path-local-treestudyplan .r-completion-detail-header, +.features-treestudyplan .r-completion-detail-header { + font-size: 26px; +} +.path-local-treestudyplan .r-item-finish.completion-incomplete, +.path-local-treestudyplan .r-item-junction.completion-incomplete, +.features-treestudyplan .r-item-finish.completion-incomplete, +.features-treestudyplan .r-item-junction.completion-incomplete { + color: var(--incomplete); +} +.path-local-treestudyplan .r-item-finish.completion-progress, +.path-local-treestudyplan .r-item-junction.completion-progress, +.features-treestudyplan .r-item-finish.completion-progress, +.features-treestudyplan .r-item-junction.completion-progress { + color: var(--warning); +} +.path-local-treestudyplan .r-item-finish.completion-completed, +.path-local-treestudyplan .r-item-junction.completion-completed, +.features-treestudyplan .r-item-finish.completion-completed, +.features-treestudyplan .r-item-junction.completion-completed { + color: var(--success); +} +.path-local-treestudyplan .r-item-finish.completion-good, +.path-local-treestudyplan .r-item-junction.completion-good, +.features-treestudyplan .r-item-finish.completion-good, +.features-treestudyplan .r-item-junction.completion-good { + color: var(--info); +} +.path-local-treestudyplan .r-item-finish.completion-excellent, +.path-local-treestudyplan .r-item-junction.completion-excellent, +.features-treestudyplan .r-item-finish.completion-excellent, +.features-treestudyplan .r-item-junction.completion-excellent { + color: var(--excellent); +} +.path-local-treestudyplan .r-item-finish.completion-failed, +.path-local-treestudyplan .r-item-junction.completion-failed, +.features-treestudyplan .r-item-finish.completion-failed, +.features-treestudyplan .r-item-junction.completion-failed { + color: var(--danger); +} +.path-local-treestudyplan .r-activity-icon, +.features-treestudyplan .r-activity-icon { + position: relative; + top: -2px; +} +.path-local-treestudyplan table.r-item-course-grade-details td, +.features-treestudyplan table.r-item-course-grade-details td { + padding-right: 3px; +} +.path-local-treestudyplan .r-course-detail-header-right, +.features-treestudyplan .r-course-detail-header-right { + width: 260px; + text-align: end; +} +.path-local-treestudyplan .r-timing-invalid, +.path-local-treestudyplan .t-timing-invalid, +.features-treestudyplan .r-timing-invalid, +.features-treestudyplan .t-timing-invalid { + color: var(--danger); +} +.path-local-treestudyplan .t-timing-past, +.path-local-treestudyplan .r-timing-past, +.features-treestudyplan .t-timing-past, +.features-treestudyplan .r-timing-past { + color: var(--past); +} +.path-local-treestudyplan .t-timing-present, +.path-local-treestudyplan .r-timing-present, +.features-treestudyplan .t-timing-present, +.features-treestudyplan .r-timing-present { + color: var(--present); +} +.path-local-treestudyplan .t-timing-future, +.path-local-treestudyplan .r-timing-future, +.features-treestudyplan .t-timing-future, +.features-treestudyplan .r-timing-future { + color: var(--future); +} +.path-local-treestudyplan .t-timing-indicator, +.path-local-treestudyplan .r-timing-indicator, +.features-treestudyplan .t-timing-indicator, +.features-treestudyplan .r-timing-indicator { + border-color: rgba(0, 0, 0, 0.125); + width: 7px; + display: inline-block; + height: 100%; + border-width: 1px; + border-top-left-radius: 3.5px; + border-bottom-left-radius: 3.5px; +} +.path-local-treestudyplan .t-timing-indicator.timing-invalid, +.path-local-treestudyplan .r-timing-indicator.timing-invalid, +.features-treestudyplan .t-timing-indicator.timing-invalid, +.features-treestudyplan .r-timing-indicator.timing-invalid { + background-color: var(--danger); +} +.path-local-treestudyplan .t-timing-indicator.timing-past, +.path-local-treestudyplan .r-timing-indicator.timing-past, +.features-treestudyplan .t-timing-indicator.timing-past, +.features-treestudyplan .r-timing-indicator.timing-past { + background-color: var(--past); +} +.path-local-treestudyplan .t-timing-indicator.timing-present, +.path-local-treestudyplan .r-timing-indicator.timing-present, +.features-treestudyplan .t-timing-indicator.timing-present, +.features-treestudyplan .r-timing-indicator.timing-present { + background-color: var(--present); +} +.path-local-treestudyplan .t-timing-indicator.timing-future, +.path-local-treestudyplan .r-timing-indicator.timing-future, +.features-treestudyplan .t-timing-indicator.timing-future, +.features-treestudyplan .r-timing-indicator.timing-future { + background-color: var(--future); +} +.path-local-treestudyplan .r-course-am-teacher, +.features-treestudyplan .r-course-am-teacher { + box-shadow: 0 0 3px 3px rgba(255, 224, 0, 0.5); +} +.path-local-treestudyplan .r-graded-unknown, +.features-treestudyplan .r-graded-unknown { + color: rgb(139, 107, 0); +} +.path-local-treestudyplan .r-graded-unsubmitted, +.features-treestudyplan .r-graded-unsubmitted { + color: var(--incomplete); +} +.path-local-treestudyplan .r-graded-ungraded, +.features-treestudyplan .r-graded-ungraded { + color: var(--danger); +} +.path-local-treestudyplan .r-graded-allgraded, +.features-treestudyplan .r-graded-allgraded { + color: var(--excellent); +} +.path-local-treestudyplan .r-graded-graded, +.features-treestudyplan .r-graded-graded { + color: var(--success); +} +.path-local-treestudyplan .r-graded-nogrades, +.features-treestudyplan .r-graded-nogrades { + color: var(--light); +} +.path-local-treestudyplan .t-configured-ok, +.features-treestudyplan .t-configured-ok { + color: var(--success); +} +.path-local-treestudyplan .t-configured-alert, +.features-treestudyplan .t-configured-alert { + color: var(--warning); +} +.path-local-treestudyplan .r-grading-bar, +.features-treestudyplan .r-grading-bar { + display: inline-block; + white-space: nowrap; + height: min-content; +} +.path-local-treestudyplan .r-grading-bar-segment, +.features-treestudyplan .r-grading-bar-segment { + border-color: #aaa; + border-width: 1px; + display: inline-block; + border-bottom-style: solid; + border-top-style: solid; +} +.path-local-treestudyplan .r-grading-bar-segment:first-child, +.features-treestudyplan .r-grading-bar-segment:first-child { + border-bottom-left-radius: 3px; + border-top-left-radius: 3px; + border-left-style: solid; +} +.path-local-treestudyplan .r-grading-bar-segment:last-child, +.features-treestudyplan .r-grading-bar-segment:last-child { + border-bottom-right-radius: 3px; + border-top-right-radius: 3px; + border-right-style: solid; +} +.path-local-treestudyplan .r-grading-bar-unsubmitted, +.features-treestudyplan .r-grading-bar-unsubmitted { + background-color: var(--light); +} +.path-local-treestudyplan .r-grading-bar-graded, +.features-treestudyplan .r-grading-bar-graded { + background-color: var(--success); +} +.path-local-treestudyplan .r-grading-bar-ungraded, +.features-treestudyplan .r-grading-bar-ungraded { + background-color: var(--danger); +} +.path-local-treestudyplan .r-completion-bar-incomplete, +.features-treestudyplan .r-completion-bar-incomplete { + background-color: var(--light); +} +.path-local-treestudyplan .r-completion-bar-completed, +.features-treestudyplan .r-completion-bar-completed { + background-color: var(--info); +} +.path-local-treestudyplan .r-completion-bar-completed-pass, +.features-treestudyplan .r-completion-bar-completed-pass { + background-color: var(--success); +} +.path-local-treestudyplan .r-completion-bar-completed-fail, +.features-treestudyplan .r-completion-bar-completed-fail { + background-color: var(--danger); +} +.path-local-treestudyplan .r-completion-bar-ungraded, +.features-treestudyplan .r-completion-bar-ungraded { + background-color: var(--warning); +} +.path-local-treestudyplan .card.s-studyplan-card, +.features-treestudyplan .card.s-studyplan-card { + min-width: 300px; + max-width: 500px; + margin-bottom: 1em; +} +.path-local-treestudyplan .card.s-studyplan-card.timing-past .card-header, +.features-treestudyplan .card.s-studyplan-card.timing-past .card-header { + background-color: var(--past); +} +.path-local-treestudyplan .card.s-studyplan-card.timing-present .card-header, +.features-treestudyplan .card.s-studyplan-card.timing-present .card-header { + background-color: var(--present); +} +.path-local-treestudyplan .card.s-studyplan-card.timing-future .card-header, +.features-treestudyplan .card.s-studyplan-card.timing-future .card-header { + background-color: var(--future); +} +.path-local-treestudyplan .s-studyplan-card-title-buttons, +.features-treestudyplan .s-studyplan-card-title-buttons { + font-size: 16px; + float: right; +} +.path-local-treestudyplan .s-studyplan-card-title-buttons > *, +.features-treestudyplan .s-studyplan-card-title-buttons > * { + margin-left: 0.2em; + margin-right: 0.3em; +} +.path-local-treestudyplan .s-studyplan-card-buttons, +.features-treestudyplan .s-studyplan-card-buttons { + float: right; + display: flex; + align-items: center; + justify-content: right; +} +.path-local-treestudyplan .s-studyplan-card-buttons > *, +.features-treestudyplan .s-studyplan-card-buttons > * { + margin-left: 1em; +} +.path-local-treestudyplan .s-studyplan-associate-window .custom-select, +.features-treestudyplan .s-studyplan-associate-window .custom-select { + width: 100%; + max-width: 100%; +} +.path-local-treestudyplan .s-required, +.features-treestudyplan .s-required { + color: var(--danger); +} +.path-local-treestudyplan .s-required.complete, +.features-treestudyplan .s-required.complete { + color: var(--info); +} +.path-local-treestudyplan .s-required.complete-pass, +.path-local-treestudyplan .s-required.good, +.path-local-treestudyplan .s-required.excellent, +.path-local-treestudyplan .s-required.allgraded, +.features-treestudyplan .s-required.complete-pass, +.features-treestudyplan .s-required.good, +.features-treestudyplan .s-required.excellent, +.features-treestudyplan .s-required.allgraded { + color: var(--success); +} +.path-local-treestudyplan .s-required.neutral, +.features-treestudyplan .s-required.neutral { + color: #aaa; +} +.path-local-treestudyplan .r-tooltip.incomplete .tooltip-inner, +.path-local-treestudyplan .r-tooltip.complete-fail .tooltip-inner, +.path-local-treestudyplan .r-tooltip.completed-fail .tooltip-inner, +.features-treestudyplan .r-tooltip.incomplete .tooltip-inner, +.features-treestudyplan .r-tooltip.complete-fail .tooltip-inner, +.features-treestudyplan .r-tooltip.completed-fail .tooltip-inner { + background-color: var(--danger); +} +.path-local-treestudyplan .r-tooltip.incomplete .arrow::before, +.path-local-treestudyplan .r-tooltip.complete-fail .arrow::before, +.path-local-treestudyplan .r-tooltip.completed-fail .arrow::before, +.features-treestudyplan .r-tooltip.incomplete .arrow::before, +.features-treestudyplan .r-tooltip.complete-fail .arrow::before, +.features-treestudyplan .r-tooltip.completed-fail .arrow::before { + border-top-color: var(--danger); +} +.path-local-treestudyplan .r-tooltip.complete .tooltip-inner, +.path-local-treestudyplan .r-tooltip.completed .tooltip-inner, +.features-treestudyplan .r-tooltip.complete .tooltip-inner, +.features-treestudyplan .r-tooltip.completed .tooltip-inner { + background-color: var(--info); +} +.path-local-treestudyplan .r-tooltip.complete .arrow::before, +.path-local-treestudyplan .r-tooltip.completed .arrow::before, +.features-treestudyplan .r-tooltip.complete .arrow::before, +.features-treestudyplan .r-tooltip.completed .arrow::before { + border-top-color: var(--info); +} +.path-local-treestudyplan .r-tooltip.complete-pass .tooltip-inner, +.path-local-treestudyplan .r-tooltip.completed-pass .tooltip-inner, +.features-treestudyplan .r-tooltip.complete-pass .tooltip-inner, +.features-treestudyplan .r-tooltip.completed-pass .tooltip-inner { + background-color: var(--success); +} +.path-local-treestudyplan .r-tooltip.complete-pass .arrow::before, +.path-local-treestudyplan .r-tooltip.completed-pass .arrow::before, +.features-treestudyplan .r-tooltip.complete-pass .arrow::before, +.features-treestudyplan .r-tooltip.completed-pass .arrow::before { + border-top-color: var(--success); +} +.path-local-treestudyplan .r-tooltip.incomplete .tooltip-inner, +.features-treestudyplan .r-tooltip.incomplete .tooltip-inner { + background-color: var(--danger); +} +.path-local-treestudyplan .r-tooltip.incomplete .arrow::before, +.features-treestudyplan .r-tooltip.incomplete .arrow::before { + border-top-color: var(--danger); +} +.path-local-treestudyplan .m-buttonbar, +.features-treestudyplan .m-buttonbar { + display: flex; + align-items: center; + justify-content: left; +} +.path-local-treestudyplan .m-buttonbar a, +.path-local-treestudyplan .m-buttonbar span, +.path-local-treestudyplan .m-buttonbar i, +.features-treestudyplan .m-buttonbar a, +.features-treestudyplan .m-buttonbar span, +.features-treestudyplan .m-buttonbar i { + vertical-align: middle; + display: inline; +} +.path-local-treestudyplan .m-buttonbar a, +.features-treestudyplan .m-buttonbar a { + margin-right: 1em; +} +.path-local-treestudyplan .s-edit-mod-form [data-fieldtype=submit], +.features-treestudyplan .s-edit-mod-form [data-fieldtype=submit] { + /* if not working, make selector more specific */ + display: none; +} +.path-local-treestudyplan .s-edit-mod-form.genericonly form > fieldset:not(#id_general), +.features-treestudyplan .s-edit-mod-form.genericonly form > fieldset:not(#id_general) { + /* if not working, make selector more specific */ + display: none; +} +.path-local-treestudyplan .border-grey, +.features-treestudyplan .border-grey { + border-color: #aaa; +} \ No newline at end of file