@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
    }
legend {
    color: var(--ink-3);
    font-size: var(--font-size-smaller);
    padding: var(--default-gap-xxsmall);
    }
body .firstRun {
    display: none;
    }
body.firstRun .firstRun {
    background-color: rgb(var(--dashboard-highlight-surface-rgb));
    display: block;
    padding: 8px;
    }
h3 {
    margin: 1em 0;
    }
p {
    white-space: pre-line;
    }

section > div {
    padding: 0 var(--default-gap-xxsmall);
    }

#showBlockedCount:has(input[type="checkbox"][disabled]) {
    opacity: 0.5;
    }

#defaultFilteringMode {
    display: grid;
    gap: 1em;
    grid: auto-flow dense / 1fr 1fr 1fr;
    }
.filteringModeCard {
    border: 1px solid var(--surface-3);
    border-radius: 4px;
    display: flex;
    flex-direction: column;
    }
.filteringModeCard:has(.radio > [type="radio"]:checked) {
    background-color: var(--surface-0);
    }
.filteringModeCard .input.radio ~ [data-i18n] {
    text-transform: capitalize;
    }
.filteringModeCard span:has(> .input) {
    align-items: center;
    display: inline-flex;
    }
.filteringModeCard > div {
    align-items: center;
    box-sizing: border-box;
    display: flex;
    padding: 0.5em;
    width: 100%;
    }
.filteringModeCard > div:nth-of-type(2) {
    justify-content: center;
    }
.filteringModeCard > div:nth-of-type(3) {
    border-top: 1px solid var(--surface-2);
    font-size: var(--font-size-smaller);
    white-space: pre-line;
    }
.filteringModeSlider {
    height: calc(60px / 2);
    pointer-events: none;
    width: calc(240px / 2);
    }

h3[data-i18n="filteringMode0Name"]::first-letter {
    text-transform: capitalize;
    }
#trustedSites  {
    box-sizing: border-box;
    height: 6rem;
    resize: vertical;
    width: 100%;
    }

#lists {
    margin: 0.5em 0 0 0;
    padding: 0;
    }
.groupEntry:not([data-groupkey="user"]) .geDetails::before {
    color: var(--ink-3);
    content: '\2212';
    font-family: monospace;
    font-size: large;
    margin-inline-end: 0.25em;
    -webkit-margin-end: 0.25em;
    }
.groupEntry.hideUnused:not([data-groupkey="user"]) .geDetails::before {
    content: '+';
    }
.groupEntry {
    margin: 0.5em 0;
    }
.groupEntry .geDetails {
    cursor: pointer;
    }
.groupEntry .geName {
    pointer-events: none;
    }
.groupEntry .geCount {
    color: var(--ink-3);
    font-size: 90%;
    pointer-events: none;
    }
.listEntries {
    margin-inline-start: 0.6em;
    -webkit-margin-start: 0.6em;
    }
.groupEntry:not([data-groupkey="user"]) .listEntry:not(.isDefault).unused {
    display: none;
    }
.listEntry > * {
    margin-left: 0;
    margin-right: 0;
    unicode-bidi: embed;
    }
.listEntry .listname {
    white-space: nowrap;
    }
.listEntry a,
.listEntry .fa-icon {
    color: var(--info0-ink);
        fill: var(--info0-ink);
    display: none;
    font-size: 120%;
    margin: 0 0.2em 0 0;
    }
.listEntry .fa-icon:hover {
    transform: scale(1.25);
    }
.listEntry .content {
    display: inline-flex;
    }
.listEntry a.towiki {
    display: inline-flex;
    }
.listEntry.support a.support {
    display: inline-flex;
    }
.listEntry.mustread a.mustread {
    color: var(--info1-ink);
        fill: var(--info1-ink);
    display: inline-flex;
    }
.listEntry .status {
    cursor: default;
    display: none;
}

body.noMoreRuleset .listEntry:not(.checked) {
    opacity: 0.5;
    pointer-events: none;
}

/* touch-screen devices */
:root.mobile .listEntry .fa-icon {
    font-size: 120%;
    margin: 0 0.5em 0 0;
    }
:root.mobile .listEntries {
    margin-inline-start: 0;
    -webkit-margin-start: 0;
    }
:root.mobile .li.listEntry {
    overflow-x: auto;
    }
:root.mobile .li.listEntry label > span:not([class]) {
    flex-grow: 1;
    }
:root.mobile .li.listEntry .listname,
:root.mobile .li.listEntry .iconbar {
    align-items: flex-start;
    display: flex;
    white-space: nowrap;
    }
:root.mobile .li.listEntry .iconbar {
    margin-top: 0.2em;
    }

#templates {
    display: none;
    }

@media (max-width: 480px) {
    #defaultFilteringMode {
        grid: 1fr 1fr 1fr / auto-flow dense;
    }
    .filteringModeCard > div:nth-of-type(2) {
        justify-content: flex-start;
    }
}
