$tertiary-hover: $gray-200; $tertiary: $gray-400; $tertiary-active-hover: $gray-300; $tertiary-dark: $gray-700; $tertiary-dark-hover: $gray-800; $tertiary-dark-active-open: $gray-600; .action-row { @extend .d-flex; @extend .p-2; @extend .mt-5; // background-color: map-get($theme-colors, "primary"); background-color: var(--bs-tertiary-bg); * { @extend .me-2; @extend .my-auto; } } .hover-row:hover { background-color: var(--bs-tertiary-bg); } .comment { @extend .alert; @extend .alert-warning; border: 0; border-left: 4px solid var(--bs-warning); } .navbar-brand { color: $pink; } .form-label { font-size: 1.3rem; } .highlight-when-nonempty:not([value=""]) { @extend .border-primary } @mixin details-icon($color) { background: url('data:image/svg+xml;utf8,'); background-size: cover; } @mixin toggle-off-icon($color) { background: url('data:image/svg+xml;utf8,') } @mixin toggle-on-icon($color) { background: url('data:image/svg+xml;utf8, ') } .page_nav nav ul { padding-left: 0; list-style-type: none; li { margin-bottom: 0.5rem; } a { color: var(--bs-text); text-decoration: none; } a:hover { // text-decoration: underline; } ul { padding-left: 0rem; } } details.switch { >summary { display: flex; } >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 } } 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"))); } } // 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 { background-color: $tertiary; } >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) { border-left: solid 2px $tertiary; padding-left: 36px; // background-color: $gray-900; } } } @include color-mode(dark) { 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; } } } details.tree[open]>summary::before { transform: rotate(90deg); padding-bottom: 0; } details.success_criterion:last-child { border-bottom: solid 1px $tertiary; } details.success_criterion { border-left: solid 1px $tertiary; border-right: solid 0px $tertiary; border-top: solid 0px $tertiary; summary:hover { background-color: $tertiary-hover; // border-right: solid 4px $primary; } // padding-left: 22px; .result-icon { width: 3rem; } >.content { padding-left: 1rem; padding-right: 1rem; padding-bottom: 1rem; } } @include color-mode(dark) { details.success_criterion { summary:hover { background-color: $tertiary-dark-hover; } } } details.success_criterion[open] { /* border: solid 1px $tertiary; */ >summary { background-color: $tertiary; } >summary:hover { background-color: $tertiary-active-hover; } } @include color-mode(dark) { details.success_criterion { border-left: solid 1px $tertiary-dark; border-right: solid 1px $tertiary-dark; border-top: solid 1px $tertiary-dark; } details.success_criterion:last-child { border-bottom: solid 1px $tertiary-dark; } details.success_criterion[open] { /* border: solid 1px $tertiary-dark; */ >summary { background-color: $tertiary-dark; } >summary:hover { background-color: $tertiary-dark-active-open; } } } details.tree { summary:hover, li:has(a):hover { background-color: $tertiary-hover; } } @include color-mode(dark) { details.tree { summary:hover, li:has(a):hover { background-color: $tertiary-dark-hover; } } } .sc-level-a { background-color: $pink; } .sc-level-aa { background-color: $indigo; } .sc-level-aaa { background-color: $purple; } .handle { cursor: move; } details[open] { summary { .handle { display: none; } } } .sortable-chosen { border: solid 3px $secondary !important; } .sortable-ghost { border: solid 3px $primary !important; } $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%); } }