:root {
    --avalon-ease: cubic-bezier(.2, .65, .3, 1);
}
.p-staffBar {
    background: linear-gradient(110deg, #2b2026, #35282d 60%, #2b2026);
}
.p-staffBar-inner {
    background: transparent;
}
.p-staffBar-link:hover,
.p-staffBar-link.is-menuOpen {
    background: #49343e;
    color: #fff5f8;
}
.p-nav {
    background: linear-gradient(110deg, #2b2026, #392830 58%, #2b2026);
    box-shadow: 0 1px 0 #b98b9c18, 0 6px 20px #00000016;
}
html body .p-nav-list .p-navEl:not(.is-selected):hover,
html body .p-nav-list .p-navEl.is-menuOpen {
    background: linear-gradient(120deg, #674653, #49343e) !important;
    color: #fff5f8 !important;
}
html body .p-nav-list .p-navEl:hover > .p-navEl-link,
html body .p-nav-list .p-navEl:hover > .p-navEl-splitTrigger,
html body .p-nav-list .p-navEl.is-menuOpen > .p-navEl-link,
html body .p-nav-list .p-navEl.is-menuOpen > .p-navEl-splitTrigger {
    background: none !important;
    color: #fff5f8 !important;
    -webkit-text-fill-color: #fff5f8;
}
.p-body-header {
    background: linear-gradient(115deg, #302229, #241c20 72%);
    border-color: #59414d;
}
.block-header,
.block-minorHeader {
    background-image: linear-gradient(110deg, #67435235, #35282d00 65%), url('/styles/xenfocus/ortem/pattern.png');
    background-blend-mode: normal, luminosity;
}
.block-container {
    box-shadow: 0 2px 8px #00000014;
    transition: border-color 220ms var(--avalon-ease), box-shadow 220ms var(--avalon-ease);
}
.block-container > .block-header:first-child,
.block-container > .block-minorHeader:first-child {
    margin: 0;
    border-width: 0 0 1px;
    border-radius: 7px 7px 0 0;
}
.button,
a.button,
.p-navgroup-link--register {
    background-image: linear-gradient(135deg, #ffffff0b, #ffffff00 58%, #00000012);
    transition: background-color 180ms var(--avalon-ease), border-color 180ms var(--avalon-ease), box-shadow 180ms var(--avalon-ease), transform 180ms var(--avalon-ease);
}
.button.button--primary,
a.button.button--primary,
.p-navgroup-link--register {
    background-color: #694552;
    background-image: linear-gradient(120deg, #7b5262, #5b3948);
    border-color: #a7798c;
    color: #fff5f8;
}
.nostalgia-navigator a {
    background-image: linear-gradient(120deg, #9a63751c, #ffffff00 65%), url('/styles/xenfocus/ortem/pattern.png');
    background-blend-mode: normal, luminosity;
    transition: border-color 200ms var(--avalon-ease), box-shadow 200ms var(--avalon-ease), background-color 200ms var(--avalon-ease), transform 200ms var(--avalon-ease);
}
.p-navEl,
.tabs-tab,
.menu-linkRow,
.input,
.pageNav-page,
.pageNav-jump {
    transition: background-color 180ms var(--avalon-ease), border-color 180ms var(--avalon-ease), box-shadow 180ms var(--avalon-ease);
}
html body .node,
html body .structItem {
    background-image: linear-gradient(100deg, #b6839400, #b6839400);
    transition: box-shadow 220ms var(--avalon-ease), background-image 220ms var(--avalon-ease);
}
.input:focus {
    box-shadow: 0 0 0 3px #b683941c;
}
.menu.is-active .menu-content,
.overlay.is-active {
    animation: avalon-menu-in 180ms var(--avalon-ease) both;
}
.p-body-main {
    animation: avalon-content-in 350ms var(--avalon-ease) both;
}
@keyframes avalon-content-in {
    from { opacity: .35; transform: translateY(5px); }
    to { opacity: 1; transform: none; }
}
@keyframes avalon-menu-in {
    from { opacity: 0; transform: translateY(4px); }
    to { opacity: 1; transform: none; }
}
@media (hover: hover) and (pointer: fine) {
    .block-container:hover {
        border-color: #72505f;
        box-shadow: 0 3px 14px #00000020;
    }
    html body .node:hover,
    html body .structItem:hover {
        background-image: linear-gradient(100deg, #b683941b, #b6839404);
        box-shadow: none;
    }
    .button:hover,
    a.button:hover,
    .p-navgroup-link--register:hover,
    .nostalgia-navigator a:hover {
        transform: translateY(-1px);
        box-shadow: 0 4px 12px #0000002a, inset 0 1px #ffffff10;
        border-color: #bd8c9e;
    }
    .p-navEl:not(.is-selected):hover { background-color: #ffffff08; }
}
.button:active,
a.button:active,
.nostalgia-navigator a:active {
    transform: translateY(0);
    box-shadow: inset 0 2px 5px #00000022;
}
:is(.button,.nostalgia-navigator a,.p-navEl-link,.tabs-tab):focus-visible {
    outline: 2px solid #d8a8ba;
    outline-offset: 3px;
}
@media (prefers-reduced-motion: reduce) {
    .p-body-main,
    .menu.is-active .menu-content,
    .overlay.is-active { animation: none; }
    .block-container,
    .button,
    a.button,
    .p-navgroup-link--register,
    .nostalgia-navigator a,
    .p-navEl,
    .tabs-tab,
    .menu-linkRow,
    .input,
    .pageNav-page,
    .pageNav-jump,
    html body .node,
    html body .structItem { transition: none; }
    .button:hover,
    a.button:hover,
    .p-navgroup-link--register:hover,
    .nostalgia-navigator a:hover { transform: none; }
}
