2024-11-09 02:26:38 +01:00
|
|
|
$tertiary-hover: $gray-200;
|
|
|
|
|
$tertiary: $gray-400;
|
|
|
|
|
$tertiary-active-hover: $gray-300;
|
|
|
|
|
|
2024-11-09 00:43:04 +01:00
|
|
|
$tertiary-dark: $gray-700;
|
2024-11-09 02:26:38 +01:00
|
|
|
$tertiary-dark-hover: $gray-800;
|
|
|
|
|
$tertiary-dark-active-open: $gray-600;
|
2024-11-09 00:43:04 +01:00
|
|
|
|
2024-07-16 20:22:59 +02:00
|
|
|
.action-row {
|
|
|
|
|
@extend .d-flex;
|
|
|
|
|
@extend .p-2;
|
2024-11-01 03:26:46 +01:00
|
|
|
@extend .mt-5;
|
2024-07-16 20:22:59 +02:00
|
|
|
|
|
|
|
|
// background-color: map-get($theme-colors, "primary");
|
|
|
|
|
background-color: var(--bs-tertiary-bg);
|
|
|
|
|
|
|
|
|
|
* {
|
|
|
|
|
@extend .me-2;
|
|
|
|
|
@extend .my-auto;
|
|
|
|
|
}
|
2024-07-19 02:29:18 +02:00
|
|
|
}
|
|
|
|
|
|
2024-07-20 16:52:12 +02:00
|
|
|
.hover-row:hover {
|
|
|
|
|
background-color: var(--bs-tertiary-bg);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.comment {
|
|
|
|
|
@extend .alert;
|
|
|
|
|
@extend .alert-warning;
|
|
|
|
|
|
|
|
|
|
border: 0;
|
|
|
|
|
border-left: 4px solid var(--bs-warning);
|
2024-07-21 00:33:38 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.navbar-brand {
|
|
|
|
|
color: $pink;
|
2024-09-23 00:14:33 +02:00
|
|
|
}
|
2024-10-25 22:33:44 +02:00
|
|
|
|
|
|
|
|
.form-label {
|
|
|
|
|
font-size: 1.3rem;
|
2024-10-28 22:39:17 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.highlight-when-nonempty:not([value=""]) {
|
|
|
|
|
@extend .border-primary
|
2024-11-03 21:58:25 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@mixin details-icon($color) {
|
|
|
|
|
background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(#{$color})" class="bi bi-chevron-right" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708"/></svg>');
|
|
|
|
|
background-size: cover;
|
|
|
|
|
}
|
|
|
|
|
|
2024-11-06 22:12:37 +01:00
|
|
|
@mixin toggle-off-icon($color) {
|
|
|
|
|
background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(#{$color})" class="bi bi-toggle-off" viewBox="0 0 16 16"><path d="M11 4a4 4 0 0 1 0 8H8a5 5 0 0 0 2-4 5 5 0 0 0-2-4zm-6 8a4 4 0 1 1 0-8 4 4 0 0 1 0 8M0 8a5 5 0 0 0 5 5h6a5 5 0 0 0 0-10H5a5 5 0 0 0-5 5"/></svg>')
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@mixin toggle-on-icon($color) {
|
|
|
|
|
background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="rgb(#{$color})" class="bi bi-toggle-on" viewBox="0 0 16 16"><path d="M5 3a5 5 0 0 0 0 10h6a5 5 0 0 0 0-10zm6 9a4 4 0 1 1 0-8 4 4 0 0 1 0 8" /> </svg>')
|
|
|
|
|
}
|
|
|
|
|
|
2024-11-03 21:58:25 +01:00
|
|
|
.page_nav nav ul {
|
|
|
|
|
padding-left: 0;
|
|
|
|
|
list-style-type: none;
|
2024-11-23 19:10:09 +01:00
|
|
|
|
2024-11-17 13:44:51 +01:00
|
|
|
li {
|
|
|
|
|
margin-bottom: 0.5rem;
|
|
|
|
|
}
|
2024-11-03 21:58:25 +01:00
|
|
|
|
|
|
|
|
a {
|
|
|
|
|
color: var(--bs-text);
|
|
|
|
|
text-decoration: none;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
a:hover {
|
2024-11-06 22:12:37 +01:00
|
|
|
// text-decoration: underline;
|
2024-11-03 21:58:25 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
ul {
|
2024-11-06 22:12:37 +01:00
|
|
|
padding-left: 0rem;
|
2024-11-03 21:58:25 +01:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2024-11-06 22:12:37 +01:00
|
|
|
details.switch {
|
|
|
|
|
>summary {
|
|
|
|
|
display: flex;
|
|
|
|
|
}
|
2024-11-03 21:58:25 +01:00
|
|
|
|
2024-11-06 22:12:37 +01:00
|
|
|
>summary::after {
|
|
|
|
|
@include toggle-off-icon(to-rgb(map-get($theme-colors, "dark")));
|
|
|
|
|
width: 1rem;
|
|
|
|
|
height: 1rem;
|
|
|
|
|
float: inline-end;
|
|
|
|
|
transition: 0.4s;
|
|
|
|
|
content: '';
|
|
|
|
|
margin-top: 0.25rem;
|
|
|
|
|
margin-right: 0;
|
|
|
|
|
margin-left: 0.5rem
|
|
|
|
|
}
|
2024-11-03 21:58:25 +01:00
|
|
|
}
|
|
|
|
|
|
2024-11-06 22:12:37 +01:00
|
|
|
details.switch[open]>summary::after {
|
|
|
|
|
@include toggle-on-icon(to-rgb(map-get($theme-colors, "dark")));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@include color-mode(dark) {
|
|
|
|
|
details.switch summary::after {
|
|
|
|
|
@include toggle-off-icon(to-rgb(map-get($theme-colors, "light")));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@include color-mode(dark) {
|
|
|
|
|
details.switch[open]>summary::after {
|
|
|
|
|
@include toggle-on-icon(to-rgb(map-get($theme-colors, "light")));
|
|
|
|
|
}
|
2024-11-03 21:58:25 +01:00
|
|
|
}
|
|
|
|
|
|
2024-11-06 22:12:37 +01:00
|
|
|
// details.tree[open]:has(summary.active) {
|
|
|
|
|
// border: solid 1px $primary;
|
|
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
details.tree {
|
|
|
|
|
|
|
|
|
|
>summary,
|
|
|
|
|
>summary a {
|
|
|
|
|
font-size: 1rem;
|
|
|
|
|
font-style: normal;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
>summary {
|
|
|
|
|
display: flex;
|
|
|
|
|
line-height: 2rem;
|
|
|
|
|
padding-left: 12px;
|
|
|
|
|
// padding-top: 8px;
|
|
|
|
|
// padding-bottom: 8px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
>summary.active {
|
2024-11-09 00:43:04 +01:00
|
|
|
background-color: $tertiary;
|
2024-11-06 22:12:37 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
>summary::before {
|
|
|
|
|
@include details-icon(to-rgb(map-get($theme-colors, "dark")));
|
|
|
|
|
content: '';
|
|
|
|
|
float: inline-end;
|
|
|
|
|
width: 0.7rem;
|
|
|
|
|
height: 1rem;
|
|
|
|
|
margin-top: 0.5rem;
|
|
|
|
|
margin-right: 6px;
|
|
|
|
|
// background: url('chevron-right.svg');
|
|
|
|
|
// background-size: cover;
|
|
|
|
|
margin-left: 0px;
|
|
|
|
|
transition: 0.2s;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
ul {
|
|
|
|
|
// li:hover {
|
|
|
|
|
// border-left: solid 2px $white;
|
|
|
|
|
// padding-left: 36px;
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
li {
|
|
|
|
|
padding-left: 38px;
|
|
|
|
|
|
|
|
|
|
a {
|
|
|
|
|
display: block;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
li:has(a.active) {
|
2024-11-09 00:43:04 +01:00
|
|
|
border-left: solid 2px $tertiary;
|
2024-11-06 22:12:37 +01:00
|
|
|
padding-left: 36px;
|
|
|
|
|
// background-color: $gray-900;
|
|
|
|
|
}
|
|
|
|
|
}
|
2024-11-03 21:58:25 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@include color-mode(dark) {
|
2024-11-09 00:43:04 +01:00
|
|
|
details.tree {
|
|
|
|
|
summary::before {
|
|
|
|
|
@include details-icon(to-rgb(map-get($theme-colors, "light")));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
summary.active {
|
|
|
|
|
background-color: $tertiary-dark;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
ul li:has(a.active) {
|
|
|
|
|
border-left: solid 2px $tertiary-dark;
|
|
|
|
|
}
|
2024-11-03 21:58:25 +01:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2024-11-06 22:12:37 +01:00
|
|
|
details.tree[open]>summary::before {
|
2024-11-03 21:58:25 +01:00
|
|
|
transform: rotate(90deg);
|
2024-11-06 22:12:37 +01:00
|
|
|
padding-bottom: 0;
|
|
|
|
|
}
|
|
|
|
|
|
2024-11-17 13:44:51 +01:00
|
|
|
details.success_criterion:last-child {
|
|
|
|
|
border-bottom: solid 1px $tertiary;
|
|
|
|
|
}
|
|
|
|
|
|
2024-11-07 01:24:55 +01:00
|
|
|
details.success_criterion {
|
2024-11-23 19:10:09 +01:00
|
|
|
border-left: solid 1px $tertiary;
|
|
|
|
|
border-right: solid 0px $tertiary;
|
|
|
|
|
border-top: solid 0px $tertiary;
|
2024-11-17 13:44:51 +01:00
|
|
|
|
2024-11-07 01:24:55 +01:00
|
|
|
summary:hover {
|
2024-11-09 02:26:38 +01:00
|
|
|
background-color: $tertiary-hover;
|
2024-11-09 00:43:04 +01:00
|
|
|
|
|
|
|
|
|
2024-11-07 01:24:55 +01:00
|
|
|
// border-right: solid 4px $primary;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// padding-left: 22px;
|
|
|
|
|
.result-icon {
|
|
|
|
|
width: 3rem;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
>.content {
|
2024-11-09 00:43:04 +01:00
|
|
|
padding-left: 1rem;
|
2024-11-07 01:24:55 +01:00
|
|
|
padding-right: 1rem;
|
2024-11-23 19:10:09 +01:00
|
|
|
padding-bottom: 1rem;
|
2024-11-07 01:24:55 +01:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2024-11-09 00:43:04 +01:00
|
|
|
|
|
|
|
|
@include color-mode(dark) {
|
|
|
|
|
details.success_criterion {
|
|
|
|
|
summary:hover {
|
2024-11-09 02:26:38 +01:00
|
|
|
background-color: $tertiary-dark-hover;
|
2024-11-09 00:43:04 +01:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2024-11-07 01:24:55 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
details.success_criterion[open] {
|
2024-11-23 19:10:09 +01:00
|
|
|
/* border: solid 1px $tertiary; */
|
2024-11-09 00:43:04 +01:00
|
|
|
|
2024-11-17 13:44:51 +01:00
|
|
|
>summary {
|
2024-11-09 00:43:04 +01:00
|
|
|
background-color: $tertiary;
|
|
|
|
|
}
|
|
|
|
|
|
2024-11-17 13:44:51 +01:00
|
|
|
>summary:hover {
|
2024-11-09 02:26:38 +01:00
|
|
|
background-color: $tertiary-active-hover;
|
2024-11-09 00:43:04 +01:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@include color-mode(dark) {
|
2024-11-17 13:44:51 +01:00
|
|
|
details.success_criterion {
|
2024-11-23 19:10:09 +01:00
|
|
|
border-left: solid 1px $tertiary-dark;
|
|
|
|
|
border-right: solid 1px $tertiary-dark;
|
|
|
|
|
border-top: solid 1px $tertiary-dark;
|
2024-11-17 13:44:51 +01:00
|
|
|
}
|
2024-11-23 19:10:09 +01:00
|
|
|
|
2024-11-17 13:44:51 +01:00
|
|
|
details.success_criterion:last-child {
|
|
|
|
|
border-bottom: solid 1px $tertiary-dark;
|
|
|
|
|
}
|
2024-11-23 19:10:09 +01:00
|
|
|
|
2024-11-09 00:43:04 +01:00
|
|
|
details.success_criterion[open] {
|
2024-11-23 19:10:09 +01:00
|
|
|
/* border: solid 1px $tertiary-dark; */
|
2024-11-09 00:43:04 +01:00
|
|
|
|
2024-11-17 13:44:51 +01:00
|
|
|
>summary {
|
2024-11-09 00:43:04 +01:00
|
|
|
background-color: $tertiary-dark;
|
|
|
|
|
}
|
|
|
|
|
|
2024-11-17 13:44:51 +01:00
|
|
|
>summary:hover {
|
2024-11-09 02:26:38 +01:00
|
|
|
background-color: $tertiary-dark-active-open;
|
2024-11-09 00:43:04 +01:00
|
|
|
}
|
|
|
|
|
}
|
2024-11-07 01:24:55 +01:00
|
|
|
}
|
|
|
|
|
|
2024-11-09 01:25:47 +01:00
|
|
|
details.tree {
|
2024-11-07 01:24:55 +01:00
|
|
|
|
2024-11-09 01:25:47 +01:00
|
|
|
summary:hover,
|
|
|
|
|
li:has(a):hover {
|
2024-11-09 02:26:38 +01:00
|
|
|
background-color: $tertiary-hover;
|
2024-11-09 01:25:47 +01:00
|
|
|
}
|
2024-11-07 01:24:55 +01:00
|
|
|
}
|
|
|
|
|
|
2024-11-09 01:25:47 +01:00
|
|
|
@include color-mode(dark) {
|
|
|
|
|
details.tree {
|
2024-11-07 01:24:55 +01:00
|
|
|
|
2024-11-09 01:25:47 +01:00
|
|
|
summary:hover,
|
|
|
|
|
li:has(a):hover {
|
2024-11-09 02:26:38 +01:00
|
|
|
background-color: $tertiary-dark-hover;
|
2024-11-09 01:25:47 +01:00
|
|
|
}
|
|
|
|
|
}
|
2024-11-09 02:26:38 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.sc-level-a {
|
|
|
|
|
background-color: $pink;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.sc-level-aa {
|
|
|
|
|
background-color: $indigo;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.sc-level-aaa {
|
|
|
|
|
background-color: $purple;
|
2024-11-11 06:01:19 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.handle {
|
|
|
|
|
cursor: move;
|
2024-11-11 06:07:07 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
details[open] {
|
|
|
|
|
summary {
|
|
|
|
|
.handle {
|
|
|
|
|
display: none;
|
|
|
|
|
}
|
|
|
|
|
}
|
2024-11-11 08:12:18 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.sortable-chosen {
|
2024-11-11 22:32:49 +01:00
|
|
|
border: solid 3px $secondary !important;
|
2024-11-11 08:12:18 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.sortable-ghost {
|
2024-11-11 22:32:49 +01:00
|
|
|
border: solid 3px $primary !important;
|
2024-11-17 13:44:51 +01:00
|
|
|
}
|
2024-11-23 19:10:09 +01:00
|
|
|
|
|
|
|
|
$dialog-animation-time: 0.5s;
|
|
|
|
|
$dialog-animation-start-state: scaleX(1);
|
|
|
|
|
$dialog-animation-end-state: scaleX(1);
|
|
|
|
|
/* dialog::backdrop { */
|
|
|
|
|
/* background-color: white; */
|
|
|
|
|
/* opacity: 0.75; */
|
|
|
|
|
/* } */
|
|
|
|
|
|
|
|
|
|
/* Open state of the dialog */
|
|
|
|
|
dialog[open] {
|
|
|
|
|
opacity: 1;
|
|
|
|
|
transform: $dialog-animation-end-state;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* Closed state of the dialog */
|
|
|
|
|
dialog {
|
|
|
|
|
opacity: 0;
|
|
|
|
|
transform: $dialog-animation-start-state;
|
|
|
|
|
transition:
|
|
|
|
|
opacity $dialog-animation-time ease-out,
|
|
|
|
|
transform $dialog-animation-time ease-out,
|
|
|
|
|
overlay $dialog-animation-time ease-out allow-discrete,
|
|
|
|
|
display $dialog-animation-time ease-out allow-discrete;
|
|
|
|
|
/* Equivalent to
|
|
|
|
|
transition: all $dialog-animation-time allow-discrete; */
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* Before-open state */
|
|
|
|
|
/* Needs to be after the previous dialog[open] rule to take effect,
|
|
|
|
|
as the specificity is the same */
|
|
|
|
|
@starting-style {
|
|
|
|
|
dialog[open] {
|
|
|
|
|
opacity: 0;
|
|
|
|
|
transform: $dialog-animation-start-state;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* Transition the :backdrop when the dialog modal is promoted to the top layer */
|
|
|
|
|
dialog::backdrop {
|
|
|
|
|
background-color: rgb(0 0 0 / 75%);
|
|
|
|
|
transition:
|
|
|
|
|
display $dialog-animation-time allow-discrete,
|
|
|
|
|
overlay $dialog-animation-time allow-discrete,
|
|
|
|
|
background-color $dialog-animation-time;
|
|
|
|
|
/* Equivalent to
|
|
|
|
|
transition: all $dialog-animation-time allow-discrete; */
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
dialog[open]::backdrop {
|
|
|
|
|
background-color: rgb(0 0 0 / 75%);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* This starting-style rule cannot be nested inside the above selector
|
|
|
|
|
because the nesting selector cannot represent pseudo-elements. */
|
|
|
|
|
|
|
|
|
|
@starting-style {
|
|
|
|
|
dialog[open]::backdrop {
|
|
|
|
|
background-color: rgb(0 0 0 / 0%);
|
|
|
|
|
}
|
|
|
|
|
}
|