a11yist/app/assets/stylesheets/layout.scss
david ab335decd3
Some checks failed
/ Run tests (push) Failing after 1m37s
/ Run system tests (push) Failing after 1m42s
/ Build, push and deploy image (push) Has been skipped
:hovers and layout
2024-11-09 01:25:47 +01:00

317 lines
No EOL
6.1 KiB
SCSS

$tertiary: $gray-300;
$tertiary-dark: $gray-700;
.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;
}
}
// // Fix trix dark mode
// .trix-button-row {
// .trix-button-group {
// border: var(--bs-border-width) solid var(--bs-border-color);
// .trix-button {
// border: 0;
// }
// }
// }
// [data-bs-theme=dark] {
// .trix-button-row {
// .trix-button-group {
// .trix-button {
// background-color: transparent;
// filter: invert(100%);
// }
// }
// }
// }
// // end fix trix dark mode
// .trix-content pre {
// background-color: var(--bs-secondary-bg);
// color: var(--bs-secondary-color);
// border: var(--bs-border-width) solid var(--bs-border-color);
// border-radius: var(--bs-border-radius);
// padding: var(--bs-padding);
// }
.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,<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;
}
@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>')
}
.page_nav nav ul {
padding-left: 0;
list-style-type: none;
line-height: 2rem;
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;
}
// summary.active::before {
// @include details-icon(to-rgb($primary));
// }
.sc-level-a {
background-color: $purple;
}
.sc-level-aa {
background-color: $orange;
}
.sc-level-aaa {
background-color: $teal;
}
.sc-level {
// font-size: 0.5rem;
}
details.success_criterion {
summary:hover {
background-color: shade-color($tertiary, 40%);
// border-right: solid 4px $primary;
}
// padding-left: 22px;
.result-icon {
width: 3rem;
}
>.content {
padding-left: 1rem;
padding-right: 1rem;
}
}
@include color-mode(dark) {
details.success_criterion {
summary:hover {
background-color: shade-color($tertiary-dark, 40%);
}
}
}
details.success_criterion[open] {
// padding-left: 8px;
border: solid 1px $tertiary;
margin-bottom: 2rem;
padding-bottom: 1rem;
summary {
background-color: $tertiary;
}
summary:hover {
background-color: shade-color($tertiary, 30%);
// border-right: solid 4px $primary;
}
}
@include color-mode(dark) {
details.success_criterion[open] {
border: solid 1px $tertiary-dark;
summary {
background-color: $tertiary-dark;
}
summary:hover {
background-color: shade-color($tertiary-dark, 30%);
}
}
}
details.tree {
summary:hover,
li:has(a):hover {
background-color: shade-color($tertiary, 50%);
}
}
@include color-mode(dark) {
details.tree {
summary:hover,
li:has(a):hover {
background-color: shade-color($tertiary-dark, 40%);
}
}
}