/* ADVENTURE-042 — consolidated MU Adventure public theme layer.
 *
 * This file preserves the cascade of ADVENTURE-037, -038, -039 and -041
 * in one auditable public sheet. The original Morpheus style-bb.css remains
 * separate and is intentionally retained as the base/fallback layer.
 */

:root {
--adv-deep: #071321;
    --adv-panel: #101827;
    --adv-panel-2: #172338;
    --adv-panel-3: #20324b;
    --adv-gold: #e8bd65;
    --adv-gold-soft: #f2d391;
    --adv-crystal: #59c7ff;
    --adv-blue: #174d9b;
    --adv-blue-dark: #103263;
    --adv-text: #e8edf7;
    --adv-muted: #aebbd0;
    --adv-border: rgba(89, 199, 255, .24);
    --adv-gold-border: rgba(232, 189, 101, .42);
    --adv-shadow: 0 12px 28px rgba(3, 9, 18, .42);

--adv039-panel: rgba(9, 20, 35, .94);
    --adv039-panel-soft: rgba(16, 30, 48, .86);
    --adv039-border: rgba(95, 190, 232, .34);
    --adv039-gold: #f1ca75;
    --adv039-gold-soft: #ffe0a2;
    --adv039-text: #eef5fb;
    --adv039-muted: #b7c9d8;
    --adv039-blue: #2785c6;
    --adventure-unified-scene: url('../images/adventure-background-unified.webp');
}

/* ADVENTURE-037 — identity, shared components and responsive shell. */
/*
 * MU Adventure — ADVENTURE-037 visual layer
 *
 * This file is intentionally kept as a small, reversible layer over the
 * original demon theme. It changes presentation only; the existing layout,
 * background scene, animations and Morpheus component markup remain intact.
 */

html {
    color-scheme: dark;
}

body {
    color: var(--adv-text);
    background-color: var(--adv-deep);
}

::selection {
    color: var(--adv-deep);
    background: var(--adv-gold);
}

a {
    color: var(--adv-crystal);
}

a:hover,
a:focus {
    color: var(--adv-gold-soft);
}

h1,
h2,
h3,
.content-title h1,
.content-title h2,
.content-title h3 {
    color: var(--adv-gold-soft);
}

:focus-visible {
    outline: 2px solid var(--adv-crystal);
    outline-offset: 3px;
}

input,
select,
textarea {
    color: var(--adv-text);
    background-color: rgba(16, 24, 39, .92);
    border-color: var(--adv-border);
}

input::placeholder,
textarea::placeholder {
    color: var(--adv-muted);
}

input:focus,
select:focus,
textarea:focus {
    border-color: var(--adv-crystal);
    box-shadow: 0 0 0 3px rgba(89, 199, 255, .14);
}

button,
.button {
    color: var(--adv-text);
    background: linear-gradient(180deg, #1d61b5 0%, var(--adv-blue) 100%);
    border: 1px solid rgba(89, 199, 255, .48);
    border-radius: 6px;
    box-shadow: 0 7px 16px rgba(3, 11, 24, .42);
}

button:hover,
button:focus-visible,
.button:hover,
.button:focus-visible {
    color: #fff;
    background: linear-gradient(180deg, #2b78cf 0%, #1b5cad 100%);
    border-color: var(--adv-gold);
}

.content a.button,
.content a.button:visited {
    color: var(--adv-text);
}

.content a.button:hover,
.content a.button:focus-visible {
    color: #fff;
}

.button-border:after {
    border-color: rgba(232, 189, 101, .38);
}

/* Header and navigation */
.top-panel {
    background: linear-gradient(180deg, rgba(7, 19, 33, .98), rgba(16, 24, 39, .96));
    border-bottom: 1px solid rgba(89, 199, 255, .42);
    box-shadow: 0 8px 24px rgba(3, 9, 18, .32);
}

.menu a {
    color: var(--adv-text);
}

.menu a:hover,
.menu a:focus,
.menu .active a {
    color: var(--adv-gold-soft);
}

.menu a:hover:after,
.menu .active a {
    border-bottom-color: var(--adv-gold);
}

.menu a:hover:after {
    background: var(--adv-gold);
}

.menu li a:before {
    opacity: .35;
}

.languages a:hover {
    filter: brightness(125%) drop-shadow(0 0 6px rgba(89, 199, 255, .35));
}

.countdown-block h3,
.countdown p {
    color: var(--adv-gold-soft);
}

.countdown span {
    background: rgba(16, 24, 39, .76);
    border: 1px solid var(--adv-gold-border);
}

.countdown li:after {
    color: var(--adv-crystal);
}

.mobile-menu-toggle {
    background: linear-gradient(180deg, rgba(23, 77, 155, .96), rgba(10, 34, 70, .98));
    border-color: rgba(89, 199, 255, .58);
    color: var(--adv-text);
}

.mobile-menu-toggle__brand {
    color: var(--adv-gold-soft);
}

/* Shared surfaces used by sidebars and the main content */
.widget,
.widget.red-dark,
.widget.red-light {
    color: var(--adv-text);
    background: linear-gradient(160deg, rgba(16, 24, 39, .94), rgba(7, 19, 33, .88));
    border: 1px solid var(--adv-border);
    border-radius: 10px;
    box-shadow: var(--adv-shadow);
}

.widget-title {
    color: var(--adv-gold-soft);
    text-shadow: 0 2px 9px rgba(3, 9, 18, .86);
}

.widget-title span,
.widget-title a {
    color: var(--adv-crystal);
}

.widget-title:after {
    filter: drop-shadow(0 0 5px rgba(89, 199, 255, .46));
}

.download-block a,
.event-block a {
    color: var(--adv-text);
    background: linear-gradient(135deg, #174d9b 0%, #102f62 100%);
    border: 1px solid rgba(89, 199, 255, .38);
    border-radius: 8px;
    box-shadow: 0 10px 22px rgba(3, 9, 18, .36);
}

.download-block a:hover,
.event-block a:hover {
    filter: brightness(115%);
    border-color: var(--adv-gold);
}

.download-block b,
.event-block b {
    color: var(--adv-gold-soft);
    text-shadow: none;
}

.panel-li {
    color: var(--adv-text);
    border-bottom-color: var(--adv-border);
}

.panel-li a,
.panel-a,
.panel-a:hover {
    color: var(--adv-crystal);
}

.top-list {
    color: var(--adv-text);
    border-bottom-color: rgba(89, 199, 255, .18);
}

.top-list a {
    color: var(--adv-text);
}

.top-list:hover {
    color: var(--adv-gold-soft);
    background: rgba(23, 77, 155, .24);
    box-shadow: 0 8px 18px rgba(3, 9, 18, .3);
}

.top-list:hover a,
.top-title,
.no-reset a {
    color: var(--adv-gold-soft);
}

.top-title {
    background: rgba(23, 35, 56, .74);
    border-bottom-color: rgba(89, 199, 255, .2);
}

.select-options {
    color: var(--adv-text);
    background: var(--adv-panel-2);
    border-color: var(--adv-border);
}

.select-options li {
    color: var(--adv-text);
    border-bottom-color: rgba(89, 199, 255, .16);
}

.select-options li:hover {
    background: rgba(89, 199, 255, .12);
}

.login-block .lost a,
.desc {
    color: var(--adv-crystal);
}

.status-block {
    color: var(--adv-text);
    background: linear-gradient(160deg, rgba(23, 77, 155, .82), rgba(7, 19, 33, .94));
    border: 1px solid var(--adv-border);
    border-radius: 10px;
    box-shadow: var(--adv-shadow);
}

.server .server-name {
    color: var(--adv-gold-soft);
}

.server .status-online,
.server .status-online b,
.online,
.on {
    color: #74df9a;
}

.progress-bar:after {
    background-color: rgba(3, 9, 18, .72);
}

.progress-bar span {
    background: linear-gradient(90deg, #2a8ee8, var(--adv-crystal));
}

/* Main content, banners, news and page headings */
.content {
    color: var(--adv-text);
    background: linear-gradient(180deg, rgba(16, 24, 39, .82), rgba(7, 19, 33, .74));
    border-left: 1px solid rgba(89, 199, 255, .16);
    border-right: 1px solid rgba(89, 199, 255, .16);
}

.content-page {
    color: var(--adv-text);
}

.content-title {
    background: linear-gradient(135deg, rgba(23, 77, 155, .9), rgba(16, 24, 39, .92));
    border-bottom: 1px solid var(--adv-gold-border);
}

.content-title h1,
.content-title h2,
.content-title h3 {
    color: var(--adv-gold-soft);
}

.content-title a,
.content a {
    color: var(--adv-crystal);
}

.content a:hover,
.content a:focus {
    color: var(--adv-gold-soft);
}

.news .news-info,
.top-news .news-info {
    color: var(--adv-text);
    background: rgba(16, 24, 39, .78);
}

.news .news-info p,
.top-news-block .news-info p {
    color: var(--adv-text);
}

.news-date,
.news-date-page {
    color: var(--adv-muted);
}

.news-date span,
.news-date-page span {
    color: var(--adv-gold);
}

.top-news-block .news-info h2 {
    color: var(--adv-gold-soft);
    border-bottom-color: var(--adv-gold-border);
}

.news-i .button {
    border-color: rgba(89, 199, 255, .5);
    box-shadow: 0 7px 16px rgba(3, 9, 18, .4);
}

.slider,
.slider .slides .slide {
    background-color: var(--adv-deep);
    border-color: rgba(89, 199, 255, .22);
}

.slider .slides .slide-info .slide-text {
    color: var(--adv-text);
    background: linear-gradient(to bottom, rgba(7, 19, 33, .9) 70%, rgba(7, 19, 33, 0));
}

.slider .slides .slide-info .slide-text:before {
    background: var(--adv-gold);
}

.slider .navigation .active {
    background-color: var(--adv-gold);
}

.slider .navigation .active:after {
    border-color: rgba(89, 199, 255, .52);
    box-shadow: 0 0 8px rgba(89, 199, 255, .5);
}

/* Tables, rankings, information cards and pagination */
table {
    color: var(--adv-text);
}

table td,
table th {
    color: var(--adv-text);
    border-color: var(--adv-border);
}

table th {
    color: var(--adv-gold-soft);
    background: rgba(23, 77, 155, .5);
}

table tr:nth-child(odd) {
    background: rgba(23, 35, 56, .68);
}

table tr:nth-child(even) {
    background: rgba(16, 24, 39, .48);
}

caption {
    color: var(--adv-gold-soft);
}

.card,
.credit-shop li {
    color: var(--adv-text);
    background: rgba(16, 24, 39, .78);
    border-color: var(--adv-border);
    border-radius: 8px;
}

.credit-shop .title {
    color: var(--adv-gold-soft);
}

.pagination > li > a,
.pagination > li > span {
    color: var(--adv-crystal);
    background: var(--adv-panel-2);
    border-color: var(--adv-border);
}

.pagination > li > a:hover,
.pagination > li > span:hover,
.pagination > .active > a,
.pagination > .active > span {
    color: var(--adv-deep);
    background: var(--adv-gold);
    border-color: var(--adv-gold);
}

.page-numbers {
    color: var(--adv-crystal);
    background: var(--adv-panel-2);
    border-color: var(--adv-border);
}

.page-numbers.active,
.page-numbers.prev,
.page-numbers.next {
    color: var(--adv-deep);
    background: linear-gradient(145deg, var(--adv-gold-soft), var(--adv-gold));
    border-color: var(--adv-gold);
}

.page-numbers:hover,
.page-numbers.prev:hover,
.page-numbers.next:hover {
    color: var(--adv-deep);
    background: var(--adv-crystal);
}

.list-group-item {
    color: var(--adv-text);
    background: var(--adv-panel-2);
    border-color: var(--adv-border);
}

.list-group-item.active,
.list-group-item:hover {
    color: #fff;
    background: var(--adv-blue);
    border-color: rgba(89, 199, 255, .5);
}

.nav-tabs {
    border-bottom-color: var(--adv-border);
}

.nav-tabs .nav-item.show .nav-link,
.nav-tabs .nav-link.active {
    color: var(--adv-text);
    background: var(--adv-blue);
    border-color: var(--adv-border);
}

/* Poll controls retain their accessible sizing and behavior. */
.last-poll > p,
.last-poll .total-votes {
    color: var(--adv-muted);
}

.poll-vote-form .answer label,
.last-poll .poll .answer {
    color: var(--adv-text);
    background: rgba(16, 24, 39, .72);
    border-color: var(--adv-border);
}

.poll-vote-form .answer label:hover {
    background: rgba(23, 77, 155, .34);
    border-color: var(--adv-gold);
}

.poll-vote-form input[type='checkbox'],
.poll-vote-form input[type='radio'] {
    border-color: var(--adv-crystal);
    background: var(--adv-panel);
}

.poll-vote-form input[type='checkbox']:checked,
.poll-vote-form input[type='radio']:checked {
    border-color: var(--adv-gold);
    background: linear-gradient(145deg, #1f75c5, var(--adv-blue-dark));
}

.poll-actions input[type='submit'],
.poll-actions .poll-show-result {
    color: #fff !important;
    background: linear-gradient(180deg, #1d61b5, var(--adv-blue));
    border-color: rgba(232, 189, 101, .7);
}

.poll-actions .poll-show-result {
    background: rgba(23, 35, 56, .88);
}

.poll-actions input[type='submit']:hover,
.poll-actions .poll-show-result:hover {
    background: linear-gradient(180deg, #2b78cf, #1b5cad);
}

.last-poll .poll .progress {
    background: rgba(255, 255, 255, .08);
    border-color: var(--adv-border);
}

.last-poll .poll .bar {
    background: linear-gradient(90deg, #1d61b5, var(--adv-crystal));
}

/* Footer structure is unchanged; only its visual tokens are modernized. */
.footer {
    color: var(--adv-text);
    border-top: 1px solid rgba(89, 199, 255, .18);
}

.f-menu li a {
    color: var(--adv-muted);
}

.f-menu li a:hover,
.f-menu li a:focus,
.f-menu li a:active {
    color: var(--adv-gold-soft);
}

.adventure-footer__identity strong,
.adventure-footer__credits strong,
.adventure-footer__team strong {
    color: var(--adv-gold-soft);
}

.adventure-footer__identity span,
.adventure-footer__credits,
.adventure-footer__team,
.adventure-footer__license small {
    color: var(--adv-muted);
}

.adventure-footer__license a,
.adventure-footer__credits a {
    color: var(--adv-crystal);
}

.adventure-footer__license a:hover,
.adventure-footer__credits a:hover {
    color: var(--adv-gold-soft);
}

.templstock img {
    opacity: .72;
    filter: saturate(.72) brightness(1.08);
}

.toTop {
    color: var(--adv-gold-soft);
    background: rgba(16, 24, 39, .92);
    border-color: var(--adv-gold);
}

.toTop::before {
    color: var(--adv-gold-soft);
}

/* Mobile keeps the ADVENTURE-030 one-column arrangement and only adjusts
 * spacing/contrast so controls remain comfortable to tap. */
@media (max-width: 899px) {
    .content {
        border-left: 0;
        border-right: 0;
    }

    .content-title {
        border-radius: 8px 8px 0 0;
    }

    .top-news .news-info {
        background: linear-gradient(180deg, rgba(16, 24, 39, .98), rgba(7, 19, 33, .98));
    }
}

@media (max-width: 430px) {
    .menu a {
        font-size: 12px;
    }

    .widget,
    .widget.red-dark,
    .widget.red-light {
        border-radius: 8px;
    }
}

/* ADVENTURE-038 — downloads, register, rankings and page components. */
/*
 * MU Adventure — ADVENTURE-038 page layer
 *
 * Presentation-only refinements for Downloads, Register and Rankings.
 * The Morpheus actions, field names, data loops and navigation URLs stay
 * unchanged in the templates.  This layer is loaded after ADVENTURE-037.
 */

.adventure-page {
    color: var(--adv-text);
}

.adventure-page .title-h2 {
    margin: 0;
    color: var(--adv-gold-soft);
    letter-spacing: .04em;
    font-size: clamp(1rem, 1.8vw, 1.35rem);
}

.adventure-section {
    margin: 0 0 1.7rem;
}

.adventure-section:last-child {
    margin-bottom: 0;
}

.adventure-section__heading {
    display: flex;
    align-items: center;
    gap: .75rem;
    margin: 0 0 1rem;
    padding: .8rem 1rem;
    border: 1px solid var(--adv-gold-border);
    border-radius: 8px;
    background: linear-gradient(135deg, rgba(23, 77, 155, .48), rgba(16, 24, 39, .78));
    box-shadow: 0 8px 18px rgba(3, 9, 18, .24);
}

.adventure-section__heading::before {
    content: "";
    width: .45rem;
    height: 1.6rem;
    flex: 0 0 .45rem;
    border-radius: 999px;
    background: linear-gradient(180deg, var(--adv-gold-soft), var(--adv-crystal));
}

/* Downloads ------------------------------------------------------------- */

.adventure-downloads__grid,
.adventure-support-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 1rem;
}

.adventure-download-card,
.adventure-support-card {
    min-width: 0;
    border: 1px solid var(--adv-border);
    border-radius: 10px;
    background: linear-gradient(155deg, rgba(23, 77, 155, .48), rgba(16, 24, 39, .9));
    box-shadow: var(--adv-shadow);
}

.adventure-download-card {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.15rem;
}

.adventure-download-card__eyebrow {
    margin: 0 0 .4rem;
    color: var(--adv-crystal);
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.adventure-download-card h3 {
    margin: 0;
    color: var(--adv-gold-soft);
    font-size: 1.05rem;
    line-height: 1.35;
    overflow-wrap: anywhere;
}

.adventure-download-card__description {
    margin: .65rem 0 0;
    color: var(--adv-text);
    line-height: 1.55;
}

.adventure-download-card__meta {
    display: flex;
    flex-wrap: wrap;
    gap: .45rem .8rem;
    margin-top: .8rem;
    color: var(--adv-muted);
    font-size: .85rem;
}

.adventure-download-card__meta strong {
    color: var(--adv-gold-soft);
}

.adventure-download-card__actions {
    display: flex;
    flex-wrap: wrap;
    gap: .55rem;
}

.adventure-download-card__link,
.adventure-support-card__action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .45rem;
    min-height: 42px;
    padding: .55rem .8rem;
    color: var(--adv-text) !important;
    border: 1px solid rgba(89, 199, 255, .48);
    border-radius: 7px;
    background: linear-gradient(180deg, #1d61b5, var(--adv-blue));
    box-shadow: 0 7px 16px rgba(3, 11, 24, .3);
    font-weight: 700;
    text-decoration: none;
}

.adventure-download-card__link:hover,
.adventure-download-card__link:focus-visible,
.adventure-support-card:hover .adventure-support-card__action,
.adventure-support-card:focus-visible .adventure-support-card__action {
    color: #fff !important;
    border-color: var(--adv-gold);
    background: linear-gradient(180deg, #2b78cf, #1b5cad);
}

.adventure-support-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: .9rem 1rem;
    color: var(--adv-text);
    text-decoration: none;
}

.adventure-support-card__name {
    min-width: 0;
    color: var(--adv-text);
    line-height: 1.4;
}

.adventure-support-card__action {
    flex: 0 0 auto;
    min-height: 36px;
    padding: .4rem .7rem;
    font-size: .82rem;
}

.adventure-spec-wrap {
    overflow-x: auto;
    border: 1px solid var(--adv-border);
    border-radius: 8px;
    background: rgba(16, 24, 39, .72);
}

.adventure-spec-table {
    width: 100%;
    min-width: 430px;
    margin: 0;
}

.adventure-spec-table td,
.adventure-spec-table th {
    padding: .75rem .85rem;
}

.adventure-driver-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(90px, 1fr));
    gap: .75rem;
}

.adventure-driver-grid a {
    display: grid;
    place-items: center;
    min-height: 78px;
    padding: .55rem;
    border: 1px solid var(--adv-border);
    border-radius: 8px;
    background: rgba(16, 24, 39, .72);
    transition: border-color .2s ease, background .2s ease, transform .2s ease;
}

.adventure-driver-grid a:hover,
.adventure-driver-grid a:focus-visible {
    border-color: var(--adv-gold);
    background: rgba(23, 77, 155, .55);
    transform: translateY(-2px);
}

.adventure-driver-grid img {
    max-width: 100%;
    height: auto;
}

/* Registration ---------------------------------------------------------- */

.adventure-register__form {
    max-width: 900px;
    margin: 0 auto;
}

.adventure-register__table {
    width: 100% !important;
    border-collapse: separate;
    border-spacing: .65rem;
    background: transparent !important;
}

.adventure-register__table tr,
.adventure-register__table td {
    background: transparent !important;
}

.adventure-register__table td {
    width: 50%;
    padding: .75rem;
    vertical-align: top;
    border: 1px solid var(--adv-border);
    border-radius: 8px;
    background: rgba(16, 24, 39, .68) !important;
}

.adventure-register__table td[colspan="2"] {
    width: 100%;
}

.adventure-register__table .form-control-label {
    display: inline-block;
    margin-bottom: .4rem;
    color: var(--adv-gold-soft);
    font-weight: 700;
}

.adventure-register__table input.form-control,
.adventure-register__table select.form-control,
.adventure-register__table textarea.form-control {
    box-sizing: border-box;
    width: 100% !important;
    min-height: 44px;
    margin: 0;
    padding: .65rem .75rem;
    border-radius: 6px;
}

.adventure-register__table textarea.form-control {
    min-height: 110px;
    resize: vertical;
}

.adventure-register__custom-fields label:not(.form-control-label) {
    color: var(--adv-text);
}

.adventure-register__custom-fields > .form-control-label,
.adventure-register__custom-fields > .form-control,
.adventure-register__custom-fields > select,
.adventure-register__custom-fields > textarea {
    display: block;
    width: 100% !important;
    box-sizing: border-box;
    margin-bottom: .75rem;
}

.adventure-register__captcha {
    vertical-align: middle !important;
}

.adventure-register__captcha .captcha,
.adventure-register__captcha .img {
    max-width: 100%;
}

.adventure-register__captcha img {
    max-width: calc(100% - 2rem);
    height: auto;
}

.adventure-register__terms {
    line-height: 1.6;
}

.adventure-register__terms a {
    color: var(--adv-crystal);
}

.adventure-register__submit {
    border: 0 !important;
    background: transparent !important;
}

.adventure-register__submit .submit {
    display: flex;
    justify-content: flex-end;
}

.adventure-register__submit button {
    min-width: 150px;
    min-height: 46px;
}

/* Rankings -------------------------------------------------------------- */

.adventure-ranking-nav,
.adventure-ranking-frequency,
.adventure-ranking-subnav {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: .55rem;
    margin: .25rem 0 1rem;
    padding: .15rem;
}

.adventure-ranking-frequency {
    margin-top: .9rem;
    padding-top: 1rem;
    border-top: 1px solid var(--adv-border);
}

.adventure-ranking-nav a,
.adventure-ranking-frequency a,
.adventure-ranking-subnav a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: .45rem .8rem;
    color: var(--adv-text) !important;
    border: 1px solid var(--adv-border);
    border-radius: 999px;
    background: rgba(16, 24, 39, .78);
    font-weight: 700;
    line-height: 1.2;
    text-decoration: none;
    transition: border-color .2s ease, background .2s ease, color .2s ease, transform .2s ease;
}

.adventure-ranking-nav a:hover,
.adventure-ranking-nav a:focus-visible,
.adventure-ranking-nav a.active,
.adventure-ranking-frequency a:hover,
.adventure-ranking-frequency a:focus-visible,
.adventure-ranking-frequency a.active,
.adventure-ranking-subnav a:hover,
.adventure-ranking-subnav a:focus-visible,
.adventure-ranking-subnav a.active {
    color: #fff !important;
    border-color: var(--adv-gold);
    background: linear-gradient(180deg, #1d61b5, var(--adv-blue));
    transform: translateY(-1px);
}

.adventure-ranking-nav button,
.adventure-ranking-frequency button,
.adventure-ranking-subnav button {
    all: unset;
}

.adventure-ranking-nav__label,
.adventure-ranking-frequency__label,
.adventure-ranking-subnav__label {
    display: inline-block;
}

.adventure-ranking-table-wrap {
    width: 100%;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    border: 1px solid var(--adv-border);
    border-radius: 9px;
    background: rgba(7, 19, 33, .58);
    box-shadow: 0 8px 20px rgba(3, 9, 18, .22);
}

.adventure-ranking-table {
    width: 100%;
    min-width: 700px;
    margin: 0;
}

.adventure-ranking-table th,
.adventure-ranking-table td {
    padding: .7rem .65rem;
    vertical-align: middle;
}

.adventure-ranking-table th {
    white-space: nowrap;
}

.adventure-ranking-table td > div {
    max-width: 100%;
}

.adventure-ranking-table .adventure-ranking-row.top-1 td:first-child,
.adventure-ranking-table .adventure-ranking-row.top-2 td:first-child,
.adventure-ranking-table .adventure-ranking-row.top-3 td:first-child {
    font-weight: 800;
}

.adventure-ranking-table .adventure-ranking-row.top-1 td:first-child {
    color: #ffe49a;
}

.adventure-ranking-table .adventure-ranking-row.top-2 td:first-child {
    color: #d8e5f4;
}

.adventure-ranking-table .adventure-ranking-row.top-3 td:first-child {
    color: #e4b58b;
}

.adventure-ranking-table img {
    max-width: 100%;
    object-fit: contain;
}

@media (max-width: 899px) {
    .adventure-downloads__grid,
    .adventure-support-grid {
        grid-template-columns: 1fr;
    }

    .adventure-driver-grid {
        grid-template-columns: repeat(3, minmax(90px, 1fr));
    }
}

@media (max-width: 600px) {
    .adventure-section__heading {
        padding: .7rem .8rem;
    }

    .adventure-download-card,
    .adventure-support-card {
        padding: .9rem;
    }

    .adventure-support-card {
        align-items: flex-start;
        flex-direction: column;
    }

    .adventure-support-card__action {
        width: 100%;
    }

    .adventure-driver-grid {
        grid-template-columns: repeat(2, minmax(90px, 1fr));
    }

    .adventure-register__table,
    .adventure-register__table tbody,
    .adventure-register__table tr,
    .adventure-register__table td {
        display: block;
        width: 100% !important;
        box-sizing: border-box;
    }

    .adventure-register__table {
        border-spacing: 0;
    }

    .adventure-register__table tr {
        margin-bottom: .7rem;
    }

    .adventure-register__table td {
        margin-bottom: .7rem;
        padding: .8rem;
    }

    .adventure-register__table td:empty {
        display: none;
    }

    .adventure-register__captcha img {
        max-width: 280px;
    }

    .adventure-register__submit .submit {
        justify-content: stretch;
    }

    .adventure-register__submit button {
        width: 100%;
    }

    .adventure-ranking-nav,
    .adventure-ranking-frequency,
    .adventure-ranking-subnav {
        justify-content: stretch;
        gap: .45rem;
    }

    .adventure-ranking-nav a,
    .adventure-ranking-frequency a,
    .adventure-ranking-subnav a {
        flex: 1 1 calc(50% - .45rem);
        min-width: 0;
        text-align: center;
    }

    .adventure-ranking-table-wrap {
        overflow: visible;
        border: 0;
        background: transparent;
        box-shadow: none;
    }

    .adventure-ranking-table {
        display: block;
        min-width: 0;
    }

    .adventure-ranking-table thead {
        display: none;
    }

    .adventure-ranking-table tbody {
        display: grid;
        gap: .75rem;
    }

    .adventure-ranking-table .adventure-ranking-row {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: .2rem .7rem;
        padding: .7rem;
        border: 1px solid var(--adv-border);
        border-radius: 9px;
        background: linear-gradient(155deg, rgba(23, 77, 155, .42), rgba(16, 24, 39, .9));
    }

    .adventure-ranking-table .adventure-ranking-row td {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        gap: .35rem;
        min-width: 0;
        padding: .35rem .15rem;
        border: 0;
        background: transparent !important;
        text-align: right;
    }

    .adventure-ranking-table .adventure-ranking-row td::before {
        content: attr(data-label);
        margin-right: auto;
        color: var(--adv-muted);
        font-size: .72rem;
        font-weight: 700;
        text-align: left;
    }

    .adventure-ranking-table .adventure-ranking-row td:first-child {
        grid-column: 1 / -1;
        justify-content: flex-start;
        color: var(--adv-gold-soft);
        font-size: 1rem;
        text-align: left;
    }

    .adventure-ranking-table .adventure-ranking-row td:first-child::before {
        content: "Posição";
        margin-right: .55rem;
        color: var(--adv-gold-soft);
        font-size: .8rem;
    }

    .adventure-ranking-table .adventure-ranking-row td > div {
        min-width: 0;
        text-align: right !important;
        overflow-wrap: anywhere;
    }

    .adventure-ranking-table .adventure-ranking-row td:nth-last-child(1) {
        grid-column: 1 / -1;
        justify-content: flex-start;
        border-top: 1px solid rgba(89, 199, 255, .14);
        text-align: left;
    }

    .adventure-ranking-table .adventure-ranking-row td:nth-last-child(1)::before {
        content: "Medalha";
        margin-right: .55rem;
    }
}

@media (max-width: 380px) {
    .adventure-ranking-nav a,
    .adventure-ranking-frequency a,
    .adventure-ranking-subnav a {
        flex-basis: 100%;
    }

    .adventure-download-card__actions {
        flex-direction: column;
    }

    .adventure-download-card__link {
        width: 100%;
    }
}

/* ADVENTURE-039 — news, footer, player panel and public refinements. */
/* ADVENTURE-039: focused visual refinement layer.
 * Loaded after the approved ADVENTURE-037/038 sheets so the legacy demon
 * layout remains intact while its high-traffic components become readable.
 */

/* Page headings: keep the demon silhouette, but give long titles room to wrap. */
.content-title {
    box-sizing: border-box;
    min-height: 74px;
    height: auto;
    padding-top: 19px;
    padding-bottom: 14px;
    border-bottom: 2px solid rgba(241, 202, 117, .58);
}

.content-title h1,
.content-title h2,
.content-title h3,
.content-title .title,
.adventure-page-title {
    max-width: 100%;
    color: var(--adv039-gold-soft) !important;
    font-size: clamp(15px, 1.4vw, 21px) !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;
    letter-spacing: .035em;
    overflow-wrap: anywhere;
    text-shadow: 0 2px 12px rgba(0, 0, 0, .5);
}

.content-title > a {
    flex: 0 0 auto;
    margin-left: 16px;
    color: var(--adv039-muted) !important;
    font-size: 12px;
    text-decoration: none;
}

.content-title > a:hover,
.content-title > a:focus {
    color: var(--adv039-gold-soft) !important;
}

.adventure-page-title {
    margin: 0 0 16px;
    padding-bottom: 12px;
    border-bottom: 2px solid rgba(241, 202, 117, .45);
}

/* Main download call-to-action: the old brown <b> was low contrast on blue. */
.download-block > a {
    box-sizing: border-box;
    min-height: 90px;
    height: auto !important;
    padding: 16px 18px;
    border: 1px solid rgba(241, 202, 117, .48);
    border-radius: 8px;
    background: linear-gradient(135deg, #155a91, #1d82bd 58%, #28679c) !important;
    box-shadow: 0 12px 28px rgba(0, 0, 0, .22), inset 0 1px 0 rgba(255,255,255,.12);
    color: #fff !important;
    transition: transform .2s ease, filter .2s ease, box-shadow .2s ease;
}

.download-block > a:hover,
.download-block > a:focus-visible {
    transform: translateY(-2px);
    filter: brightness(1.1);
    box-shadow: 0 15px 32px rgba(0, 0, 0, .3), 0 0 0 3px rgba(241, 202, 117, .14);
}

.download-block > a > span {
    display: block;
    min-width: 0;
    padding-left: 50px;
    color: #fff !important;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
}

.download-block > a b {
    display: block;
    margin-top: 7px;
    color: var(--adv039-gold-soft) !important;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.35;
    text-shadow: 0 1px 2px rgba(0,0,0,.65);
}

/* Featured cards on the homepage and the news index. */
.news-block {
    display: grid;
    gap: 18px;
}

.news-block .top-news-block {
    min-width: 0;
    margin: 0;
}

.news-block .top-news {
    display: grid !important;
    grid-template-columns: minmax(190px, 42%) minmax(0, 58%);
    width: 100%;
    min-height: 304px;
    height: auto !important;
    padding-left: 0 !important;
    overflow: hidden;
    background: #071321 !important;
    border: 1px solid rgba(95, 190, 232, .28);
    border-radius: 8px;
    box-shadow: 0 12px 24px rgba(0, 0, 0, .22);
}

.news-block .top-news::after {
    display: none !important;
}

.news-block .top-news__image {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 304px;
    object-fit: contain;
    object-position: center;
    background: #071321;
}

.news-block .news-info {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    min-width: 0;
    width: auto !important;
    min-height: 304px;
    height: auto !important;
    padding: 24px 24px 20px;
    background: linear-gradient(180deg, rgba(16, 31, 50, .96), rgba(6, 17, 30, .96));
}

.news-block .news-info h2 {
    margin: 0 0 15px;
    padding: 0 0 13px;
    color: var(--adv039-gold-soft);
    border-bottom: 1px solid rgba(241, 202, 117, .35);
    font-size: clamp(16px, 1.45vw, 22px);
    line-height: 1.35;
    overflow-wrap: anywhere;
}

.news-block .news-info > p {
    flex: 1 1 auto;
    height: auto !important;
    max-height: 122px;
    min-height: 70px;
    margin: 0 !important;
    color: var(--adv039-text);
    font-size: 13px;
    line-height: 1.65;
    overflow: hidden;
}

.news-block .news-i {
    display: flex;
    align-items: flex-end;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 18px;
}

.news-block .news-date {
    flex: 1 1 190px;
    min-width: 0;
    margin: 0 !important;
    padding: 0;
    color: var(--adv039-muted);
    font-size: 11px;
    line-height: 1.45;
    overflow-wrap: anywhere;
}

.news-block .news-date b {
    color: var(--adv039-gold-soft);
}

.news-block .news-i .button {
    flex: 0 0 auto;
    min-height: 38px;
    padding: 10px 15px;
    border: 1px solid rgba(241, 202, 117, .5);
    border-radius: 5px;
    background: linear-gradient(180deg, #2b8dca, #175c93);
    color: #fff !important;
    font-size: 12px;
    line-height: 1.2;
    text-decoration: none;
}

.news-block .news-i .button:hover,
.news-block .news-i .button:focus-visible {
    background: linear-gradient(180deg, #3aa5df, #1c6eaa);
}

/* Plugin list views (used when a standalone news list is rendered). */
.adventure-news-list {
    display: grid;
    gap: 12px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.adventure-news-list > .adventure-news-card {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    column-gap: 12px;
    row-gap: 6px;
    min-width: 0;
    padding: 16px 18px;
    border: 1px solid var(--adv039-border);
    border-radius: 8px;
    background: linear-gradient(135deg, rgba(10, 27, 46, .94), rgba(16, 33, 53, .82));
    box-shadow: 0 8px 18px rgba(0, 0, 0, .16);
}

.adventure-news-card > a {
    grid-column: 2;
    min-width: 0;
    color: var(--adv039-gold-soft) !important;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.4;
    overflow-wrap: anywhere;
}

.adventure-news-card > .author-created,
.adventure-news-card > .body {
    grid-column: 2;
    min-width: 0;
    margin: 0;
    color: var(--adv039-muted);
    font-size: 12px;
    line-height: 1.55;
    overflow-wrap: anywhere;
}

.adventure-news-card > .body {
    color: var(--adv039-text);
}

.adventure-news-card > span {
    align-self: start;
    grid-column: 1;
    grid-row: 1 / span 3;
    padding: 4px 7px;
    border: 1px solid rgba(241, 202, 117, .35);
    border-radius: 4px;
    font-size: 10px;
    line-height: 1.2;
}

/* Full news articles and embedded administrator-authored images. */
.adventure-single-news {
    min-width: 0;
    color: var(--adv039-text);
    overflow-wrap: anywhere;
}

.adventure-single-news .image-cover {
    max-width: 100%;
    margin-bottom: 18px;
    padding: 10px;
    border: 1px solid var(--adv039-border);
    border-radius: 8px;
    background: rgba(5, 15, 26, .72);
}

.adventure-single-news .image-cover img,
.adventure-single-news img {
    display: block;
    max-width: 100%;
    height: auto !important;
    object-fit: contain;
}

.adventure-single-news iframe,
.adventure-single-news video,
.adventure-single-news table {
    max-width: 100%;
}

/* Player account summary, login widget and account information. */
.adventure-player-panel .adventure-player-summary {
    box-sizing: border-box;
    width: 100% !important;
    max-width: 100%;
    padding: 14px 18px 8px 0 !important;
}

.adventure-player-panel .adventure-player-summary table,
.adventure-account-info table {
    width: 100%;
    table-layout: fixed;
}

.adventure-player-panel .adventure-player-summary td,
.adventure-account-info td {
    max-width: 50%;
    padding: 8px 6px;
    overflow-wrap: anywhere;
}

.adventure-player-panel .adventure-player-summary td:last-child,
.adventure-account-info td:last-child {
    color: var(--adv039-gold-soft);
    text-align: right;
}

.adventure-login-form {
    max-width: 100%;
}

.adventure-login-form .l-input input {
    box-sizing: border-box;
    width: 100%;
    min-height: 42px;
}

.adventure-login-form .buttons {
    gap: 10px;
    align-items: center;
}

.adventure-login-form .lost {
    min-width: 0;
    line-height: 1.55;
}

.adventure-login-form .cont {
    flex: 0 0 auto;
    min-height: 42px;
    padding: 10px 14px;
    color: #fff !important;
    border-color: rgba(241, 202, 117, .62);
}

/* Internal donation forms: fields remain unchanged, only their wrapping improves. */
.adventure-donation-panel {
    border: 1px solid var(--adv039-border);
    border-radius: 8px;
    background: linear-gradient(135deg, rgba(8, 22, 38, .94), rgba(14, 30, 50, .9));
}

.adventure-donation-panel form,
.adventure-donation-panel table {
    max-width: 100%;
}

.adventure-donation-panel table {
    width: 100%;
}

.adventure-donation-panel input,
.adventure-donation-panel select {
    box-sizing: border-box;
    max-width: 100%;
    min-height: 40px;
}

.adventure-donation-panel .submit button,
.adventure-donation-panel .submit .btn {
    min-height: 42px;
    padding: 10px 18px;
    border: 1px solid rgba(241, 202, 117, .62);
    border-radius: 5px;
    background: linear-gradient(180deg, #2b8dca, #175c93);
    color: #fff;
}

/* Footer keeps the approved markup and attribution, but stops legacy absolute
 * widths from creating a crowded band at narrow sizes. */
.footer {
    box-sizing: border-box;
    width: 100% !important;
    height: auto !important;
    min-height: 220px;
    padding: 0 0 24px;
}

.footer-block-t,
.footer-block-b {
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    box-sizing: border-box;
}

.footer-block-t {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
    min-height: 92px;
    padding: 22px 0 16px;
}

.footer-block-l {
    flex: 1 1 auto;
    width: auto !important;
    min-width: 0;
}

.f-menu {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 20px;
    margin: 0;
}

.f-menu li,
.f-menu li:first-child,
.f-menu li:last-child {
    margin: 0 !important;
}

.f-menu li a {
    padding: 5px 0;
    font-size: 12px;
    line-height: 1.3;
}

.footer-block-r {
    display: flex !important;
    flex: 0 0 auto;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    width: auto !important;
    min-width: 0;
}

.soc-block .social-item {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 40px !important;
    height: 40px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid rgba(95, 190, 232, .3);
    border-radius: 50%;
    background: rgba(7, 20, 35, .76);
}

.soc-block .social-item img {
    display: block;
    width: 18px !important;
    height: 18px !important;
    max-width: 18px !important;
    object-fit: contain;
}

.footer-block-b {
    display: grid !important;
    grid-template-columns: minmax(180px, .8fr) minmax(0, 2fr) auto;
    gap: 18px;
    align-items: start;
    padding: 16px 0 0 !important;
    border-top: 1px solid rgba(95, 190, 232, .18);
}

.adventure-footer__identity,
.adventure-footer__credits,
.adventure-footer__license {
    min-width: 0;
    line-height: 1.55;
}

.adventure-footer__identity strong {
    display: block;
    margin-bottom: 4px;
    color: var(--adv039-gold-soft) !important;
}

.adventure-footer__identity span,
.adventure-footer__credits,
.adventure-footer__team,
.adventure-footer__credits p,
.adventure-footer__license small {
    color: var(--adv039-muted) !important;
    font-size: 11px;
}

.adventure-footer__team {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 14px;
}

.adventure-footer__team span {
    white-space: nowrap;
}

.adventure-footer__credits p {
    margin: 8px 0 0;
}

.adventure-footer__license a {
    color: var(--adv039-gold-soft) !important;
}

.templstock {
    justify-self: end;
    align-self: end;
    width: auto !important;
    height: auto !important;
}

.templstock img {
    display: block;
    max-width: 108px;
    height: auto;
}

@media (max-width: 899px) {
    .news-block .top-news {
        grid-template-columns: 1fr;
        min-height: 0;
    }

    .news-block .top-news__image {
        width: 100% !important;
        height: auto !important;
        min-height: 0;
        max-height: none;
        aspect-ratio: 16 / 9;
    }

    .news-block .news-info {
        min-height: 0;
        padding: 18px 17px 16px;
    }

    .news-block .news-info > p {
        max-height: none;
        min-height: 0;
    }

    .footer-block-t {
        align-items: flex-start;
        flex-direction: column;
        gap: 13px;
        padding-top: 18px;
    }

    .footer-block-r {
        justify-content: flex-start;
    }

    .footer-block-b {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .templstock {
        justify-self: start;
        margin-top: 2px;
    }
}

@media (max-width: 600px) {
    .content-title {
        padding-left: 19px;
        padding-right: 19px;
    }

    .content-title h1,
    .content-title h2,
    .content-title h3,
    .content-title .title,
    .adventure-page-title {
        font-size: 16px !important;
    }

    .download-block > a > span {
        padding-left: 42px;
    }

    .adventure-news-list > .adventure-news-card {
        grid-template-columns: 1fr;
        padding: 14px;
    }

    .adventure-news-card > span,
    .adventure-news-card > a,
    .adventure-news-card > .author-created,
    .adventure-news-card > .body {
        grid-column: 1;
        grid-row: auto;
    }

    .adventure-news-card > span {
        justify-self: start;
    }

    .news-block .news-i {
        align-items: stretch;
    }

    .news-block .news-date {
        flex-basis: 100%;
    }

    .news-block .news-i .button {
        width: 100%;
        text-align: center;
    }

    .adventure-footer__team span {
        white-space: normal;
    }
}

@media (max-width: 380px) {
    .f-menu {
        gap: 6px 14px;
    }

    .f-menu li a {
        font-size: 11px;
    }

    .soc-block .social-item {
        width: 36px !important;
        height: 36px !important;
    }
}

/* ADVENTURE-041 — stable scene scale and lateral login repair. */
/* ADVENTURE-041 public refinements.
 *
 * The previous scene rule used `background-size: auto 100%`, which tied the
 * artwork scale to each document's height. This layer uses the viewport/body
 * width as the stable reference and leaves the aspect ratio untouched.
 */
body {
    background-image: var(--adventure-unified-scene) !important;
    background-position: center top !important;
    background-size: 100% auto !important;
    background-repeat: no-repeat !important;
    background-attachment: scroll !important;
    background-color: #07182d !important;
}

@media (max-width: 767px) {
    body {
        background-position: 32% top !important;
        background-size: 100% auto !important;
    }
}

/*
 * Lateral player login.
 * The original .l-input rule reserves fixed padding for a 235px bitmap and
 * leaves only the remaining inner strip for the actual input. The form keeps
 * the Morpheus markup and endpoint, but gets a fluid, one-column composition.
 */
.left-sidebar .adventure-login-form {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
    width: 100%;
    max-width: 100%;
    margin: 0;
}

.left-sidebar .adventure-login-form .l-input {
    box-sizing: border-box;
    position: relative;
    width: 100%;
    height: 48px;
    margin: 0 0 10px;
    padding: 0 14px 0 46px;
    border: 1px solid rgba(114, 215, 255, .3);
    border-radius: 8px;
    background-color: rgba(4, 17, 31, .84);
    background-image: none !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05),
        0 5px 14px rgba(0, 0, 0, .12);
}

.left-sidebar .adventure-login-form .l-input::before {
    position: absolute;
    top: 50%;
    left: 15px;
    width: 18px;
    height: 18px;
    transform: translateY(-50%);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    opacity: .92;
    pointer-events: none;
}

.left-sidebar .adventure-login-form .login.l-input::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23f1ca75' d='M12 12a4.5 4.5 0 1 0 0-9 4.5 4.5 0 0 0 0 9Zm0 2c-4.4 0-8 2.3-8 5.2V21h16v-1.8c0-2.9-3.6-5.2-8-5.2Z'/%3E%3C/svg%3E");
}

.left-sidebar .adventure-login-form .pass.l-input::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23f1ca75' d='M7 10V8a5 5 0 0 1 10 0v2h1a2 2 0 0 1 2 2v8H4v-8a2 2 0 0 1 2-2h1Zm2 0h6V8a3 3 0 0 0-6 0v2Zm3 3a2 2 0 0 0-1 3.7V19h2v-2.3A2 2 0 0 0 12 13Z'/%3E%3C/svg%3E");
}

.left-sidebar .adventure-login-form .l-input input {
    box-sizing: border-box;
    display: block;
    width: 100%;
    height: 100%;
    min-height: 0;
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    background: transparent !important;
    color: #eaf5fb;
    font-size: 13px;
    line-height: 1.2;
}

.left-sidebar .adventure-login-form .l-input input::placeholder {
    color: rgba(203, 224, 235, .72);
}

.left-sidebar .adventure-login-form .l-input:focus-within {
    border-color: rgba(241, 202, 117, .82);
    box-shadow: 0 0 0 3px rgba(241, 202, 117, .12),
        inset 0 1px 0 rgba(255, 255, 255, .06);
}

.left-sidebar .adventure-login-form .buttons {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
    align-items: stretch;
    width: 100%;
    margin-top: 2px;
}

.left-sidebar .adventure-login-form .lost {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-start;
    gap: 6px 16px;
    min-width: 0;
    line-height: 1.3;
}

.left-sidebar .adventure-login-form .lost br {
    display: none;
}

.left-sidebar .adventure-login-form .lost a {
    display: inline-flex;
    min-height: 28px;
    align-items: center;
    color: var(--adv-crystal, #72d7ff);
    font-size: 12px;
    line-height: 1.3;
}

.left-sidebar .adventure-login-form .cont {
    display: block;
    width: 100%;
    min-height: 44px;
    margin: 0;
    padding: 10px 16px;
    border: 1px solid rgba(241, 202, 117, .7);
    border-radius: 8px;
    background: linear-gradient(180deg, #246fae 0%, #164e80 100%);
    color: #fff !important;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .08em;
    line-height: 1.2;
    text-align: center;
}

.left-sidebar .adventure-login-form .cont:hover,
.left-sidebar .adventure-login-form .cont:focus-visible {
    border-color: #f1ca75;
    background: linear-gradient(180deg, #2b86c7 0%, #1a5c93 100%);
    box-shadow: 0 5px 14px rgba(14, 73, 119, .26);
}

.left-sidebar .adventure-login-form .cont:focus-visible,
.left-sidebar .adventure-login-form .lost a:focus-visible {
    outline: 2px solid rgba(241, 202, 117, .9);
    outline-offset: 2px;
}

.left-sidebar .adventure-login-form .loading-login {
    justify-self: center;
}

@media (max-width: 767px) {
    .left-sidebar .adventure-login-form .l-input {
        height: 46px;
    }

    .left-sidebar .adventure-login-form .lost {
        gap: 6px 14px;
    }
}

/* End of consolidated public layer. */

