.home-page {
    --site-bg: #1a120c;
    --site-bg-deep: #120c08;
    --site-panel: rgba(36, 26, 18, .94);
    --site-panel-strong: rgba(48, 34, 24, .96);
    --site-card-soft: rgba(42, 30, 22, .92);
    --site-card-elevated: rgba(52, 38, 28, .94);
    --site-card-subtle: rgba(58, 42, 30, .78);
    --site-border: rgba(75, 148, 158, .28);
    --site-border-soft: rgba(75, 148, 158, .16);
    --site-border-strong: rgba(75, 148, 158, .38);
    --site-text: #f2e6d4;
    --site-text-secondary: #c9b59a;
    --site-text-muted: #9a856c;
    --site-link: #4b949e;
    --site-link-hover: #6aaeb6;
    --site-accent: #4b949e;
    --site-primary-top: #5a9fa8;
    --site-primary-bottom: #3d7279;
    --site-primary-text: #eefafb;
    --site-secondary-top: #5a7040;
    --site-secondary-bottom: #3f4f2c;
    --site-input: rgba(24, 18, 12, .92);
    --site-input-soft: rgba(32, 24, 16, .82);
    --site-danger: #ff9a88;
    --site-shadow: rgba(0, 0, 0, .38);
    min-height: 100vh;
    margin: 0;
    overflow-x: hidden;
    background: transparent;
    color: var(--site-text);
    font-family: system-ui, -apple-system, "Segoe UI", Arial, Helvetica, sans-serif;
    font-size: 16px;
    line-height: 1.5;
}

.home-page *,
.home-page *::before,
.home-page *::after {
    box-sizing: border-box;
    font-family: inherit;
    font-size: inherit;
}

.home-page a {
    color: var(--site-link);
    text-decoration: none;
}

.home-page a:hover,
.home-page a:focus {
    color: var(--site-link-hover);
    text-decoration: none;
}

.home-page .text-orange,
.home-page .text-orange b {
    color: #4b949e !important;
}

.home-page img {
    max-width: 100%;
    height: auto;
}

.home-video-bg,
.home-bg {
    position: fixed;
    inset: 0;
    z-index: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    pointer-events: none;
}

.home-bg {
    background-color: #1a120c;
    background-image: url('../images/dwarych_home_bg.jpg');
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
}

@supports (background-image: -webkit-image-set(url('../images/dwarych_home_bg.webp') type('image/webp'))) {
    .home-bg {
        background-image: -webkit-image-set(
            url('../images/dwarych_home_bg.webp') type('image/webp'),
            url('../images/dwarych_home_bg.jpg') type('image/jpeg')
        );
        background-image: image-set(
            url('../images/dwarych_home_bg.webp') type('image/webp'),
            url('../images/dwarych_home_bg.jpg') type('image/jpeg')
        );
    }
}

.home-page::before {
    content: "";
    position: fixed;
    inset: 0;
    z-index: 1;
    background:
        linear-gradient(180deg, rgba(8, 10, 12, .06), rgba(18, 12, 8, .14) 55%, rgba(8, 6, 4, .24) 100%),
        radial-gradient(circle at 50% 40%, transparent 28%, rgba(0, 0, 0, .10) 100%);
    pointer-events: none;
}

.home-hero,
.home-layout,
.home-inner-layout,
.home-footer {
    position: relative;
    z-index: 2;
    width: min(1380px, calc(100% - 48px));
    margin: 0 auto;
}

.home-hero {
    padding: 20px 0 18px;
}

.home-topbar {
    display: grid;
    grid-template-columns: 400px minmax(0, 1fr);
    align-items: center;
    gap: 18px;
    width: 100%;
}

.home-topbar .home-brand {
    flex: 0 0 auto;
    min-width: 0;
    line-height: 0;
}

.home-topbar .home-brand img {
    display: block;
    width: 400px;
    height: 238px;
    max-width: none;
    filter: drop-shadow(0 10px 24px rgba(0, 0, 0, .45));
}

.home-nav {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 12px;
    min-width: 0;
    justify-self: end;
}

.home-brand {
    display: inline-flex;
    align-items: center;
    min-width: 0;
}

.home-brand img {
    filter: drop-shadow(0 14px 30px rgba(3, 11, 18, .42));
}

.home-nav__links {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 8px;
    min-width: 0;
}

.home-nav__links--full {
    justify-content: center;
    width: 100%;
}

.home-nav__links a {
    display: inline-flex;
    align-items: center;
    min-height: 40px;
    padding: 9px 14px;
    border: 1px solid rgba(120, 78, 42, .72);
    border-radius: 6px;
    background: rgba(42, 30, 22, .88);
    color: var(--site-text);
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
}

.home-nav__links a:hover,
.home-nav__links a:focus {
    border-color: rgba(160, 110, 60, .92);
    background: rgba(58, 42, 30, .96);
    color: var(--site-link-hover);
}

.home-nav__links .home-nav__cta {
    border: 1px solid rgba(120, 78, 42, .85);
    background: linear-gradient(180deg, var(--site-primary-top), var(--site-primary-bottom));
}

.home-nav__links .home-nav__login {
    border-color: rgba(120, 78, 42, .72);
    background: rgba(42, 30, 22, .88);
    color: var(--site-text);
}

.home-nav__links .home-nav__login:hover,
.home-nav__links .home-nav__login:focus {
    border-color: rgba(160, 110, 60, .92);
    background: rgba(58, 42, 30, .96);
    color: var(--site-link-hover);
}

.home-hero__content {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: end;
    gap: 28px;
    padding-top: clamp(48px, 9vw, 118px);
}

.home-kicker,
.home-card__eyebrow {
    margin: 0 0 8px;
    color: var(--site-accent);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0;
    text-transform: uppercase;
}

.home-hero h1 {
    margin: 0;
    color: var(--site-text);
    font-size: clamp(42px, 8vw, 96px);
    line-height: .92;
    letter-spacing: 0;
    text-shadow: 0 16px 34px rgba(3, 11, 18, .52);
}

.home-hero__lead {
    max-width: 680px;
    margin: 18px 0 0;
    color: var(--site-text-secondary);
    font-size: 19px;
}

.home-hero__actions,
.home-action-row {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.home-action-row--stacked {
    flex-direction: column;
}

.home-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 11px 16px;
    border: 1px solid transparent;
    border-radius: 6px;
    color: #ffffff !important;
    font-size: 14px;
    font-weight: 800;
    text-align: center;
    cursor: pointer;
    transition: border-color .16s ease, filter .16s ease, transform .16s ease;
}

.home-button--primary {
    background: linear-gradient(180deg, var(--site-primary-top), var(--site-primary-bottom));
    border-color: rgba(75, 148, 158, .40);
    box-shadow: 0 14px 26px rgba(40, 88, 94, .20);
}

.home-button--secondary {
    background: linear-gradient(180deg, var(--site-secondary-top), var(--site-secondary-bottom));
    border-color: rgba(148, 231, 255, .36);
}

.home-button--ghost {
    background: rgba(52, 38, 28, .88);
    border-color: var(--site-border);
}

.home-button--danger {
    border-color: rgba(255, 145, 128, .42);
    background: rgba(82, 36, 30, .72);
    color: #ffd0ca !important;
}

.home-button--danger:hover,
.home-button--danger:focus {
    border-color: rgba(255, 145, 128, .62);
    color: #ffffff !important;
}

.home-button:hover,
.home-button:focus {
    transform: translateY(-1px);
    filter: brightness(1.08);
}

.home-client .home-action-row--stacked {
    align-items: flex-start;
    gap: 9px;
}

.home-client .home-button {
    min-width: 160px;
    min-height: 38px;
    padding: 8px 14px;
    font-size: 13px;
    box-shadow: none;
}

.home-client .home-button--secondary {
    min-width: 178px;
}

.home-layout {
    display: grid;
    grid-template-columns: 400px minmax(0, 1fr) minmax(320px, 380px);
    align-items: start;
    gap: 18px;
    padding-bottom: 36px;
}

.home-layout__left {
    width: 100%;
    max-width: 400px;
}

.home-layout__left,
.home-layout__right,
.home-layout__main {
    display: grid;
    gap: 18px;
    min-width: 0;
}

.home-card,
.home-layout__main {
    border: 1px solid var(--site-border-soft);
    border-radius: 8px;
    background: var(--site-card-soft);
    color: var(--site-text);
    box-shadow: 0 20px 52px var(--site-shadow);
    backdrop-filter: blur(10px);
}

.home-card {
    padding: 18px;
}

.home-layout__main {
    min-width: 0;
    padding: 20px;
}

.home-card h2,
.home-section-heading h2 {
    margin: 0 0 14px;
    color: var(--site-text);
    font-size: 23px;
    line-height: 1.2;
    font-weight: 800;
}

.home-card p {
    margin: 0 0 14px;
    color: var(--site-text-secondary);
}

.home-section-heading {
    min-width: 0;
    padding-bottom: 8px;
}

.home-account__user {
    display: grid;
    gap: 4px;
    margin-bottom: 14px;
}

.home-account__label,
.home-muted {
    color: var(--site-text-muted);
}

.home-login-form {
    display: grid;
    gap: 12px;
}

.home-login-form label,
.home-comment-form label {
    display: grid;
    gap: 6px;
    color: var(--site-text-secondary) !important;
    font-weight: 700;
}

.home-login-form label span,
.home-comment-form label span {
    color: var(--site-text-secondary) !important;
}

.home-login-form input,
.home-comment-form textarea {
    width: 100%;
    border: 1px solid var(--site-border);
    border-radius: 6px;
    background: var(--site-input);
    color: var(--site-text);
    font: inherit;
}

.home-login-form input {
    min-height: 42px;
    padding: 10px 12px;
}

.home-comment-form textarea {
    min-height: 120px;
    padding: 12px;
    resize: vertical;
}

.home-login-form input:focus,
.home-comment-form textarea:focus {
    outline: 2px solid rgba(121, 223, 255, .34);
    border-color: var(--site-border-strong);
}

.home-auth-panel {
    display: grid;
    gap: 18px;
    min-width: 0;
}

.home-auth-panel__lead {
    max-width: 720px;
    margin: 0;
    color: var(--site-text-secondary);
    font-size: 16px;
    line-height: 1.62;
}

.home-modern-form {
    display: grid;
    gap: 18px;
    min-width: 0;
}

.home-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.home-form-grid label,
.home-form-static {
    display: grid;
    gap: 7px;
    min-width: 0;
}

.home-form-grid label span,
.home-form-static span {
    color: var(--site-text-secondary) !important;
    font-size: 13px;
    font-weight: 800;
}

.home-modern-form input,
.home-modern-form select {
    width: 100%;
    min-height: 44px;
    border: 1px solid var(--site-border);
    border-radius: 6px;
    background: var(--site-input);
    color: var(--site-text);
    font: inherit;
    padding: 10px 12px;
}

.home-modern-form select {
    appearance: none;
    background-image:
        linear-gradient(45deg, transparent 50%, var(--site-link) 50%),
        linear-gradient(135deg, var(--site-link) 50%, transparent 50%);
    background-position:
        calc(100% - 18px) 18px,
        calc(100% - 12px) 18px;
    background-size: 6px 6px, 6px 6px;
    background-repeat: no-repeat;
    padding-right: 34px;
}

.home-modern-form input:focus,
.home-modern-form select:focus {
    outline: 2px solid rgba(121, 223, 255, .34);
    border-color: var(--site-border-strong);
}

.home-modern-form input:disabled {
    color: var(--site-text-muted);
    opacity: 1;
}

.home-form-grid__wide {
    grid-column: 1 / -1;
}

.home-form-note,
.home-form-switch {
    margin: 0;
    color: var(--site-text-secondary);
    font-size: 14px;
    line-height: 1.55;
}

.home-form-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.home-form-alert {
    display: grid;
    gap: 6px;
    padding: 12px 14px;
    border: 1px solid var(--site-border-soft);
    border-radius: 8px;
    background: rgba(32, 58, 75, .82);
}

.home-form-alert p {
    margin: 0;
    color: var(--site-text);
}

.home-form-alert--error {
    border-color: rgba(255, 123, 104, .34);
    background: rgba(105, 45, 42, .50);
}

.home-form-alert--success {
    border-color: rgba(90, 214, 153, .34);
    background: rgba(28, 91, 70, .46);
}

.home-field-error {
    color: var(--site-danger) !important;
    font-size: 12px !important;
    font-weight: 700;
}

.home-form-static {
    min-height: 44px;
    padding: 10px 12px;
    border: 1px solid var(--site-border-soft);
    border-radius: 6px;
    background: var(--site-input-soft);
}

.home-form-static strong {
    color: var(--site-text);
    font-weight: 800;
}

.home-phone-row {
    display: grid;
    grid-template-columns: minmax(72px, .4fr) minmax(0, 1fr);
    gap: 8px;
}

.home-login-form__links {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    width: 100%;
    font-size: 14px;
}

.home-fast-news__list,
.home-news-strip,
.home-news-strip__more {
    display: grid;
    gap: 10px;
    min-width: 0;
}

.home-fast-news__item,
.home-news-strip__item {
    display: grid;
    gap: 4px;
    min-width: 0;
    padding: 12px;
    border: 1px solid var(--site-border-soft);
    border-radius: 6px;
    background: var(--site-card-subtle);
    overflow-wrap: anywhere;
}

.home-fast-news__item span,
.home-news-strip__item span {
    color: var(--site-text-secondary);
}

.home-fast-news__item time,
.home-news-strip__item time,
.home-news-card__header time {
    color: var(--site-link);
    font-size: 12px;
    font-weight: 800;
}

.home-social-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 40px;
    margin-top: 14px;
    border: 1px solid var(--site-border-strong);
    border-radius: 6px;
    background: rgba(75, 148, 158, .28);
    font-weight: 800;
}

.home-news-strip {
    margin-bottom: 16px;
}

.home-news-strip__more {
    border: 0;
}

.home-news-strip__more summary {
    display: inline-flex;
    width: max-content;
    padding: 8px 12px;
    border-radius: 6px;
    background: rgba(75, 148, 158, .22);
    color: var(--site-text);
    cursor: pointer;
}

.home-news-card {
    display: grid;
    gap: 16px;
    min-width: 0;
    overflow: hidden;
    padding: 18px;
    border: 1px solid var(--site-border-soft);
    border-radius: 8px;
    background: var(--site-card-elevated);
    color: var(--site-text);
}

.home-news-card > * {
    min-width: 0;
}

.home-news-card + .home-news-card {
    margin-top: 14px;
}

.home-news-card--featured {
    border-color: rgba(75, 148, 158, .30);
    background: rgba(68, 48, 32, .94);
}

.home-news-card__header {
    display: grid;
    gap: 7px;
}

.home-news-card__header h2 {
    margin: 0;
    font-size: 24px;
    font-weight: 800;
    line-height: 1.24;
}

.home-news-card__header h2 a {
    color: var(--site-text);
}

.home-news-card__body,
.home-comment__body {
    max-width: 100% !important;
    color: var(--site-text) !important;
    font-size: 16px !important;
    line-height: 1.72;
    overflow-wrap: anywhere;
}

.home-news-card__body *,
.home-comment__body * {
    max-width: 100% !important;
    font-size: inherit !important;
    line-height: inherit;
    overflow-wrap: anywhere;
}

.home-news-card__body *:not([style*="color"]),
.home-comment__body *:not([style*="color"]) {
    color: inherit;
}

.home-news-card__body a,
.home-comment__body a {
    color: var(--site-link) !important;
    font-weight: 700;
}

.home-news-card__body table {
    width: 100% !important;
    table-layout: auto;
}

.home-news-card__body tbody,
.home-news-card__body tr,
.home-news-card__body td {
    max-width: 100% !important;
}

.home-news-card__body iframe,
.home-news-card__body object,
.home-news-card__body embed {
    max-width: 100% !important;
}

.home-news-card__body img {
    max-width: 100%;
    height: auto !important;
    border-radius: 6px;
    object-fit: contain !important;
    vertical-align: middle;
}

.home-news-card__body img[src*="/for_news/"],
.home-news-card__body img[src*="/for_best/"],
.home-news-card__body img[src*="/images/common/"] {
    display: block;
    width: auto !important;
    max-width: min(100%, 560px) !important;
    margin: 18px auto;
    border: 1px solid var(--site-border-soft);
    border-radius: 8px;
    background: rgba(32, 22, 14, .45);
    box-shadow: 0 12px 30px rgba(3, 11, 18, .20);
}

.home-news-card__body img[src*="race"] {
    display: inline-block;
    width: 14px !important;
    height: 14px !important;
    margin: 0 2px;
    border: 0;
    border-radius: 0;
    background: none;
    box-shadow: none;
}

.home-news-card__footer {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
    padding-top: 8px;
    border-top: 1px solid var(--site-border-soft);
}

.home-comment-form {
    display: grid;
    width: 100%;
    gap: 10px;
}

.home-comment-form__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
}

#commentSize {
    color: var(--site-text-muted);
    font-size: 13px;
}

.home-comment {
    padding: 14px;
    border: 1px solid var(--site-border-soft);
    border-radius: 6px;
    background: rgba(48, 34, 24, .72);
}

.home-comment__header {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
    margin-bottom: 8px;
    color: var(--site-text-muted);
    font-size: 13px;
}

.home-comment__delete {
    margin-left: auto;
    color: var(--site-danger) !important;
}

.home-back-row,
.home-pagination {
    display: flex;
    justify-content: center;
    margin: 16px 0 0;
}

.home-ratings {
    overflow: hidden;
}

.home-rating-controls {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 10px;
}

.home-rating-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 32px;
    padding: 7px 10px;
    border: 1px solid var(--site-border-soft);
    border-radius: 6px;
    background: rgba(33, 59, 76, .78);
    color: var(--site-text) !important;
    font-size: 12px;
    font-weight: 800;
}

.home-rating-button.active {
    border-color: rgba(75, 148, 158, .62);
    background: rgba(58, 118, 126, .45);
    color: var(--site-primary-text) !important;
}

.home-rating-controls--compact .home-rating-button {
    flex: 1 1 auto;
}

.home-rating-list {
    display: grid;
    gap: 7px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.home-rating-list__item {
    display: grid;
    grid-template-columns: 28px minmax(0, 1fr) 24px;
    align-items: center;
    gap: 8px;
    min-height: 40px;
    padding: 8px 9px;
    border: 1px solid var(--site-border-soft);
    border-radius: 6px;
    background: rgba(35, 61, 78, .72);
    color: var(--site-text);
}

.home-rating-list__num {
    color: var(--site-accent);
    font-size: 13px;
    font-weight: 800;
}

.home-rating-list__name {
    display: flex;
    align-items: center;
    min-width: 0;
    overflow: hidden;
    color: var(--site-text) !important;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.home-rating-list__name,
.home-rating-list__name * {
    color: var(--site-text) !important;
    font-size: 13px !important;
}

.home-rating-list__name .text-rating-bb,
.home-rating-list__name .b_ui_link {
    color: #ffffff !important;
    font-weight: 800;
}

.home-rating-list__name img {
    width: 14px;
    height: 14px;
    object-fit: contain;
    vertical-align: middle;
}

.home-rating-list__name .b-icon-32x32 {
    width: 16px;
    height: 16px;
    background-size: auto;
    vertical-align: middle;
}

.home-rating-list__name--clan {
    display: flex;
    align-items: center;
    gap: 6px;
}

.home-rating-list__name--clan img {
    width: 18px;
    height: 18px;
    object-fit: contain;
}

.home-rating-list__name--clan .home-rating-list__rank {
    width: 13px;
    height: 13px;
}

.home-rating-list__name--clan button {
    overflow: hidden;
    border: 0;
    background: none;
    color: var(--site-text);
    font: inherit;
    font-weight: 800;
    text-align: left;
    text-overflow: ellipsis;
    white-space: nowrap;
    cursor: pointer;
}

.home-rating-list__race {
    display: inline-flex;
    justify-content: flex-end;
}

.home-footer {
    display: grid;
    grid-template-columns: 1fr;
    justify-items: center;
    gap: 8px;
    padding: 22px 0 38px;
    color: var(--site-text-muted);
    font-size: 13px;
    line-height: 1.55;
    text-align: center;
}

.home-footer p {
    margin: 0;
    max-width: 920px;
}

.home-footer strong {
    color: var(--site-link);
}

.pg,
.pg td {
    color: var(--site-text-secondary);
}

.home-nav__links .home-nav__link--active {
    border-color: rgba(180, 130, 70, .98);
    background: rgba(58, 42, 30, .96);
    color: var(--site-accent);
    box-shadow: inset 0 0 0 1px rgba(120, 78, 42, .35);
}

.home-nav__status {
    display: inline-flex;
    align-items: center;
    min-height: 40px;
    padding: 9px 14px;
    border: 1px solid rgba(120, 78, 42, .72);
    border-radius: 6px;
    background: rgba(42, 30, 22, .88);
    color: var(--site-text);
    font-size: 14px;
    font-weight: 800;
}

.home-hero--compact {
    padding-bottom: 28px;
}

.home-hero--compact .home-hero__content {
    padding-top: clamp(32px, 6vw, 72px);
}

.site-layout {
    display: grid;
    grid-template-columns: minmax(250px, 330px) minmax(0, 1fr);
    align-items: start;
    gap: 22px;
    width: min(1380px, calc(100% - 48px));
    margin: 0 auto;
}

.site-sidebar,
.site-content-panel {
    min-width: 0;
}

.site-sidebar {
    display: grid;
    gap: 18px;
}

.site-content-panel {
    display: grid;
    gap: 16px;
    padding: 22px;
    border: 1px solid var(--site-border-soft);
    border-radius: 8px;
    background: linear-gradient(180deg, rgba(30, 54, 70, .92), rgba(24, 44, 58, .88));
    color: var(--site-text);
    box-shadow: 0 20px 70px var(--site-shadow);
}

.site-section-heading h2 {
    margin-bottom: 0;
}

.site-alert {
    margin-bottom: 2px;
}

.site-side-nav__groups {
    display: grid;
    gap: 16px;
}

.site-side-nav__group {
    display: grid;
    gap: 8px;
}

.site-side-nav__group h3 {
    margin: 0;
    color: var(--site-accent);
    font-size: 13px;
    font-weight: 900;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.site-side-nav__group nav {
    display: grid;
    gap: 6px;
}

.site-side-link-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 6px;
}

.site-side-link {
    display: flex;
    align-items: center;
    min-width: 0;
    min-height: 38px;
    padding: 9px 11px;
    border: 1px solid var(--site-border-soft);
    border-radius: 6px;
    background: rgba(39, 67, 84, .64);
    color: var(--site-text) !important;
    font-size: 14px;
    font-weight: 750;
    line-height: 1.25;
}

.site-side-link span {
    min-width: 0;
    color: inherit !important;
    overflow-wrap: anywhere;
}

.site-side-link:hover,
.site-side-link:focus,
.site-side-link--active {
    border-color: var(--site-border-strong);
    background: rgba(39, 91, 116, .74);
    color: #ffffff !important;
}

.site-card,
.site-empty-card {
    min-width: 0;
    border: 1px solid var(--site-border-soft);
    border-radius: 8px;
    background: rgba(31, 55, 71, .74);
    color: var(--site-text);
}

.site-card {
    display: grid;
    gap: 14px;
    padding: 18px;
}

.site-empty-card {
    padding: 18px;
    color: var(--site-text-secondary);
}

.site-empty-card p {
    margin: 0;
}

.site-card__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    min-width: 0;
}

.site-card__title-group {
    display: grid;
    gap: 7px;
    min-width: 0;
}

.site-card__title {
    margin: 0;
    color: var(--site-text);
    font-size: clamp(22px, 2vw, 30px);
    line-height: 1.18;
    font-weight: 900;
}

h3.site-card__title {
    font-size: 21px;
}

.site-card__title a {
    color: var(--site-text);
}

.site-card__title a:hover,
.site-card__title a:focus {
    color: var(--site-link-hover);
}

.site-badge-row,
.site-meta-row,
.site-card__footer,
.site-admin-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
}

.site-badge {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    padding: 4px 8px;
    border-radius: 999px;
    background: rgba(75, 148, 158, .18);
    color: #c5dde0;
    font-size: 12px;
    font-weight: 850;
}

.site-badge--muted {
    background: rgba(168, 189, 200, .16);
    color: var(--site-text-secondary);
}

.site-meta-row,
.site-meta-row *,
.site-card__footer {
    color: var(--site-text-muted) !important;
    font-size: 13px !important;
    line-height: 1.45;
}

.site-card__footer :where(span, time, small, b, i) {
    color: inherit !important;
    font-size: inherit !important;
}

.site-card__footer :where(a, a *, .text-orange, .text-orange *) {
    color: var(--site-accent) !important;
}

.site-card__footer a:hover,
.site-card__footer a:focus-visible {
    color: var(--site-link-hover) !important;
}

.site-author,
.site-author * {
    color: var(--site-accent) !important;
    font-weight: 800;
}

.site-admin-actions {
    justify-content: flex-end;
    flex-shrink: 0;
}

.site-admin-actions--inline {
    gap: 4px;
}

.site-admin-actions--footer {
    justify-content: flex-start;
    padding-top: 12px;
    border-top: 1px solid var(--site-border-soft);
}

.site-action-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 7px 11px;
    border: 1px solid var(--site-border);
    border-radius: 6px;
    background: rgba(38, 66, 83, .82);
    color: var(--site-text) !important;
    font-size: 13px;
    font-weight: 850;
}

.site-action-button:hover,
.site-action-button:focus {
    border-color: rgba(75, 148, 158, .62);
    background: rgba(58, 118, 126, .40);
    color: #ffffff !important;
}

.site-action-button--danger {
    border-color: rgba(255, 145, 128, .42);
    color: #ffd0ca !important;
}

.site-action-button--icon {
    width: 30px;
    min-height: 30px;
    padding: 0;
    font-size: 15px;
}

.site-rich-text {
    min-width: 0;
    overflow-x: auto;
    color: var(--site-text-secondary);
    font-size: 16px;
    line-height: 1.72;
    word-break: normal;
    overflow-wrap: anywhere;
}

.site-rich-text *,
.site-rich-text td {
    max-width: 100%;
}

.site-rich-text p {
    margin: 0 0 14px;
}

.site-rich-text :where(ul, ol) {
    margin: 0 0 16px;
    padding-left: 1.35em;
}

.site-rich-text :where(li + li) {
    margin-top: 5px;
}

.site-rich-text p:last-child {
    margin-bottom: 0;
}

.site-rich-text table {
    max-width: 100%;
    border-collapse: collapse;
}

.site-rich-text :where(td, th) {
    padding: 8px 10px;
    border: 1px solid var(--site-border-soft);
    color: var(--site-text-secondary);
    word-break: normal;
    overflow-wrap: break-word;
    vertical-align: top;
}

.site-rich-text .artifact-table :where(td, th) {
    padding: 0;
    border: 0;
}

.site-rich-text img {
    max-width: 100% !important;
    height: auto !important;
}

.site-rich-text iframe,
.site-rich-text object,
.site-rich-text embed {
    max-width: 100%;
}

.site-topic-card--pinned {
    border-color: rgba(75, 148, 158, .34);
}

.site-topic-card--closed {
    opacity: .88;
}

.site-topic-card__preview {
    color: var(--site-text-secondary);
}

.site-post-card {
    margin-top: 12px;
    background: rgba(38, 65, 82, .58);
}

.site-post-card__header {
    padding-bottom: 10px;
    border-bottom: 1px solid var(--site-border-soft);
}

.site-editor-card h3 {
    margin: 0;
    color: var(--site-text);
    font-size: 21px;
    line-height: 1.25;
}

.site-editor-form {
    gap: 14px;
}

.site-editor-form label {
    display: grid;
    gap: 7px;
}

.site-editor-form textarea {
    width: 100%;
    min-height: 170px;
    padding: 12px;
    border: 1px solid var(--site-border);
    border-radius: 6px;
    background: var(--site-input);
    color: var(--site-text);
    font: inherit;
    resize: vertical;
}

.site-editor-form textarea:focus {
    outline: 2px solid rgba(121, 223, 255, .34);
    border-color: var(--site-border-strong);
}

.site-editor-tools {
    display: grid;
    gap: 10px;
    padding: 10px;
    border: 1px solid var(--site-border-soft);
    border-radius: 6px;
    background: rgba(39, 67, 84, .54);
}

.site-bb-toolbar {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.site-bb-toolbar button {
    width: 34px;
    height: 32px;
    border: 1px solid var(--site-border);
    border-radius: 6px;
    background: rgba(38, 66, 83, .82);
    color: #ffffff;
    cursor: pointer;
}

.site-smiles {
    max-width: 100%;
    overflow-x: auto;
}

.site-smiles table {
    width: auto;
}

.site-smiles img {
    width: 22px;
    height: 22px;
}

.site-counter {
    align-self: center;
    color: var(--site-text-muted);
    font-size: 13px;
}

.site-pagination {
    padding: 12px;
    border: 1px solid var(--site-border-soft);
    border-radius: 8px;
    background: rgba(39, 67, 84, .54);
}

.site-selector-card {
    padding: 14px;
}

.site-select-label {
    display: grid;
    gap: 8px;
}

.site-library-article__body {
    color: var(--site-text-secondary);
}

.site-library-article__body :where(p, div, span, form, label, details, summary, ul, ol, li, table, tbody, thead, tfoot, tr, td, th, font, u, ins) {
    color: var(--site-text-secondary);
}

.site-library-article__body table[style*="table-layout: fixed" i] {
    table-layout: auto !important;
}

.site-library-article__body h1,
.site-library-article__body h2,
.site-library-article__body h3,
.site-library-article__body h4,
.site-library-article__body h5,
.site-library-article__body h6 {
    margin: 24px 0 12px;
    color: var(--site-text);
    line-height: 1.22;
    font-weight: 700;
}

.site-library-article__body h1:first-child,
.site-library-article__body h2:first-child,
.site-library-article__body h3:first-child,
.site-library-article__body h4:first-child,
.site-library-article__body h5:first-child,
.site-library-article__body h6:first-child {
    margin-top: 0;
}

.site-library-article__body :where(strong, b) {
    color: var(--site-text);
}

.site-library-article__body :where(em, i) {
    color: #dbeaf0;
}

.site-library-article__body :where(u, ins) {
    text-decoration-color: rgba(75, 148, 158, .72);
    text-underline-offset: 3px;
}

.site-library-article__body a,
.site-library-article__body a * {
    color: var(--site-link) !important;
}

.site-library-article__body a:hover,
.site-library-article__body a:focus-visible {
    color: var(--site-link-hover) !important;
}

.site-library-article__body blockquote {
    margin: 16px 0;
    padding: 12px 14px;
    border-left: 3px solid var(--site-border-strong);
    border-radius: 0 6px 6px 0;
    background: rgba(40, 71, 89, .54);
    color: var(--site-text-secondary);
}

.site-library-article__body :where(pre, code) {
    border: 1px solid var(--site-border-soft);
    border-radius: 6px;
    background: var(--site-input-soft);
    color: var(--site-text);
}

.site-library-article__body pre {
    max-width: 100%;
    margin: 16px 0;
    padding: 12px;
    overflow-x: auto;
    white-space: pre-wrap;
}

.site-library-article__body code {
    padding: 2px 5px;
    font-size: .94em;
}

.site-library-article__body pre code {
    padding: 0;
    border: 0;
    background: transparent;
}

.site-library-article__body :where(input, select, textarea) {
    max-width: 100%;
    border: 1px solid var(--site-border);
    border-radius: 6px;
    background: var(--site-input);
    color: var(--site-text);
    font: inherit;
}

.site-library-article__body :where(input[type="text"], select, textarea) {
    min-height: 34px;
    padding: 6px 8px;
}

.site-library-article__body :where(input[type="button"], input[type="submit"], button) {
    min-height: 34px;
    padding: 7px 14px;
    border-color: rgba(148, 231, 255, .36);
    background: linear-gradient(180deg, var(--site-secondary-top), var(--site-secondary-bottom));
    color: #fff !important;
    font-weight: 750;
    cursor: pointer;
}

.site-library-article__body :where(input[type="button"], input[type="submit"], button):hover,
.site-library-article__body :where(input[type="button"], input[type="submit"], button):focus-visible {
    border-color: rgba(75, 148, 158, .62);
    filter: brightness(1.08);
}

.site-library-article__body hr {
    height: 1px;
    margin: 22px 0;
    border: 0;
    background: var(--site-border-soft);
}

.site-library-article__body [style^="color: #000" i],
.site-library-article__body [style^="color:#000" i],
.site-library-article__body [style*="; color: #000" i],
.site-library-article__body [style*=";color:#000" i],
.site-library-article__body [style^="color: black" i],
.site-library-article__body [style^="color:black" i],
.site-library-article__body [style*="; color: black" i],
.site-library-article__body [style*=";color:black" i],
.site-library-article__body [style^="color: rgb(0, 0, 0)" i],
.site-library-article__body [style^="color:rgb(0,0,0)" i],
.site-library-article__body [style*="; color: rgb(0, 0, 0)" i],
.site-library-article__body [style*=";color:rgb(0,0,0)" i],
.site-library-article__body [style^="color: #111" i],
.site-library-article__body [style^="color:#111" i],
.site-library-article__body [style*="; color: #111" i],
.site-library-article__body [style*=";color:#111" i],
.site-library-article__body [style^="color: #222" i],
.site-library-article__body [style^="color:#222" i],
.site-library-article__body [style*="; color: #222" i],
.site-library-article__body [style*=";color:#222" i],
.site-library-article__body [style^="color: #333" i],
.site-library-article__body [style^="color:#333" i],
.site-library-article__body [style*="; color: #333" i],
.site-library-article__body [style*=";color:#333" i],
.site-library-article__body [style^="color: #444" i],
.site-library-article__body [style^="color:#444" i],
.site-library-article__body [style*="; color: #444" i],
.site-library-article__body [style*=";color:#444" i],
.site-library-article__body font[color="#000" i],
.site-library-article__body font[color="#000000" i],
.site-library-article__body font[color="black" i] {
    color: var(--site-text-secondary) !important;
}

.site-library-article__body [style^="color: #006600" i],
.site-library-article__body [style^="color:#006600" i],
.site-library-article__body [style*="; color: #006600" i],
.site-library-article__body [style*=";color:#006600" i] {
    color: #9ee6bd !important;
}

.site-library-article__body [style^="color: #0015e1" i],
.site-library-article__body [style^="color:#0015e1" i],
.site-library-article__body [style*="; color: #0015e1" i],
.site-library-article__body [style*=";color:#0015e1" i],
.site-library-article__body [style^="color: #016e71" i],
.site-library-article__body [style^="color:#016e71" i],
.site-library-article__body [style*="; color: #016e71" i],
.site-library-article__body [style*=";color:#016e71" i] {
    color: var(--site-link) !important;
}

.site-library-article__body [style^="color: #7a0086" i],
.site-library-article__body [style^="color:#7a0086" i],
.site-library-article__body [style*="; color: #7a0086" i],
.site-library-article__body [style*=";color:#7a0086" i] {
    color: #d9b7ff !important;
}

.site-library-article__body [style^="color: #cc0000" i],
.site-library-article__body [style^="color:#cc0000" i],
.site-library-article__body [style*="; color: #cc0000" i],
.site-library-article__body [style*=";color:#cc0000" i] {
    color: var(--site-danger) !important;
}

.cke {
    max-width: 100%;
}

@media (max-width: 1180px) {
    .home-layout {
        grid-template-columns: minmax(240px, 280px) minmax(0, 1fr);
    }

    .home-layout__left {
        max-width: 280px;
    }

    .home-layout__right {
        grid-column: 1 / -1;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    }

    .home-layout__right .home-rating {
        grid-column: 1 / -1;
    }

    .site-layout {
        grid-template-columns: minmax(220px, 300px) minmax(0, 1fr);
    }
}

@media (max-width: 820px) {
    .home-hero,
    .home-layout,
    .home-footer,
    .site-layout {
        width: min(100% - 28px, 680px);
    }

    .home-nav,
    .home-topbar,
    .home-hero__content,
    .home-footer,
    .home-layout,
    .home-layout__right,
    .site-layout {
        grid-template-columns: 1fr;
    }

    .home-topbar {
        grid-template-columns: 1fr;
        justify-items: center;
        gap: 12px;
    }

    .home-topbar .home-brand img {
        width: 400px;
        max-width: 100%;
        height: auto;
    }

    .home-nav {
        display: flex;
        justify-content: center;
        justify-self: stretch;
        width: 100%;
    }

    .home-nav__links {
        justify-content: center;
    }

    .home-nav__links {
        justify-content: center;
    }

    .home-hero {
        padding-top: 16px;
    }

    .home-hero__content {
        padding-top: 34px;
    }

    .home-hero__actions,
    .home-action-row {
        width: 100%;
    }

    .home-button {
        flex: 1 1 180px;
    }

    .home-client .home-action-row--stacked {
        align-items: stretch;
    }

    .home-client .home-button {
        flex: 0 0 auto;
        width: 100%;
    }

    .home-layout__main {
        padding: 16px;
    }

    .site-content-panel {
        padding: 16px;
    }

    .site-card__header {
        display: grid;
    }

    .site-admin-actions {
        justify-content: flex-start;
    }

    .home-page--auth .home-layout__main {
        order: -1;
    }

    .home-form-grid {
        grid-template-columns: 1fr;
    }

    .home-form-actions .home-button {
        flex: 1 1 180px;
    }
}

@media (max-width: 480px) {
    .home-hero,
    .home-layout,
    .home-footer,
    .site-layout {
        width: calc(100% - 20px);
    }

    .home-nav__links {
        display: grid;
        width: 100%;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .home-nav__links a,
    .home-nav__status,
    .home-button {
        width: 100%;
    }

    .home-hero h1 {
        font-size: 34px;
    }

    .home-hero__lead {
        font-size: 16px;
    }

    .home-news-card,
    .home-card,
    .home-layout__main,
    .site-content-panel,
    .site-card {
        border-radius: 6px;
    }

    .site-card {
        padding: 14px;
    }

    .site-side-link-row {
        grid-template-columns: minmax(0, 1fr);
    }

    .site-card__title {
        font-size: 22px;
    }

    h3.site-card__title,
    .site-editor-card h3 {
        font-size: 19px;
    }

    .site-action-button {
        flex: 1 1 auto;
        min-height: 36px;
    }

    .site-action-button--icon {
        flex: 0 0 36px;
    }

    .home-news-card__header h2 {
        font-size: 20px;
    }

    .home-news-card__body,
    .home-comment__body {
        font-size: 15px !important;
        line-height: 1.66;
    }

    .home-rating-list__item {
        grid-template-columns: 24px minmax(0, 1fr) 20px;
        gap: 6px;
        padding: 7px 6px;
    }

    .home-rating-list__name,
    .home-rating-list__name * {
        font-size: 12px !important;
    }

    .home-form-actions .home-button {
        flex-basis: auto;
        width: 100%;
    }

    .home-phone-row {
        grid-template-columns: 1fr;
    }
}

/* ====== Dwarych dark theme overrides ====== */

.home-page html,
body.home-page {
    min-width: 0 !important;
}

body.home-page .b-main-wrapper,
body.home-page .b-main {
    min-width: 0 !important;
    width: auto !important;
    left: auto !important;
    margin: 0 !important;
}

.home-hero--compact {
    padding: 14px 0 16px;
}

.home-hero--compact .home-topbar {
    align-items: center;
}

.home-hero--compact .home-nav {
    flex-wrap: wrap;
}

.home-nav--image {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 8px 0 4px;
    background: none;
    border: 0;
    border-radius: 0;
}

.home-nav--image .nav-mnu-btn {
    color: #4b949e !important;
    text-decoration: none;
    background: url('../images/button_menu_01.png') center center no-repeat;
    background-size: 100% 100% !important;
    padding: 7px 16px !important;
    margin: 0;
    display: inline-block;
    font-weight: bold;
    font-size: 13px !important;
    line-height: 1.3;
    white-space: nowrap;
    min-height: 26px !important;
    box-sizing: border-box;
}

.home-nav--image .nav-mnu-btn span {
    color: inherit !important;
    display: block;
    position: relative;
    top: -1px;
}

.home-nav--image .nav-mnu-btn:hover,
.home-nav--image .nav-mnu-btn:hover span {
    color: #b3a998 !important;
}

.home-nav--image .nav-mnu-btn.active,
.home-nav--image .nav-mnu-btn.active:hover {
    color: #b3a998 !important;
    background-image: url('../images/button_menu_02.png');
}

.home-nav--image .nav-mnu-btn.active span,
.home-nav--image .nav-mnu-btn.active:hover span {
    color: #b3a998 !important;
}

.home-nav--image .nav-mnu-online {
    color: #4b949e;
    font-weight: bold;
    font-size: 13px !important;
    margin-left: 6px;
    background: none;
    padding: 0;
    min-height: 0;
    pointer-events: none;
}

.home-nav--image .nav-mnu-online span {
    display: inline;
}

.home-rating {
    padding-bottom: 14px;
}

.home-rating__inner {
    margin: 0;
}

.home-rating .b-ratings__best,
.home-rating .b-ratings__type,
.home-rating .b-ratings__icons {
    font-size: 0 !important;
    margin: 0 0 10px;
}

.home-rating__best .rating-ctrl,
.home-rating__kinds .rating-ctrl {
    display: inline-block;
    margin: 3px;
    padding: 7px 12px;
    border: 1px solid rgba(75, 148, 158, .35);
    border-radius: 6px;
    background: rgba(0, 0, 0, .28);
    color: #e8d5bc;
    font-size: 12px !important;
    font-weight: 700;
    line-height: 1.2;
    text-decoration: none;
    vertical-align: middle;
    cursor: pointer;
    transition: background .15s, border-color .15s, color .15s;
}

.home-rating__best .rating-ctrl {
    min-width: 118px;
    text-align: center;
}

.home-rating__kinds .rating-ctrl {
    min-width: 72px;
    text-align: center;
}

.home-rating .rating-ctrl:hover,
.home-rating .rating-ctrl:focus {
    background: rgba(75, 148, 158, .22);
    border-color: rgba(75, 148, 158, .55);
    color: var(--site-primary-text);
}

.home-rating .rating-ctrl.is-active {
    background: rgba(75, 148, 158, .26);
    border-color: #4b949e;
    color: var(--site-primary-text);
}

.home-rating__types .rating-ctrl {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 3px;
    padding: 0;
    width: 42px;
    height: 36px;
    border: 1px solid rgba(75, 148, 158, .28);
    border-radius: 6px;
    background: rgba(0, 0, 0, .24);
    line-height: 0;
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
    cursor: pointer;
}

.home-rating__types .rating-ctrl.is-active {
    background: rgba(75, 148, 158, .22);
    border-color: #4b949e;
}

.rating-type-icon {
    display: block;
    width: 28px;
    height: 28px;
    background: url('../images/home-rating/rating-icons.svg') no-repeat 0 0;
    background-size: 140px 28px;
    flex: 0 0 28px;
    opacity: .82;
}

.rating-type-icon--rating { background-position: 0 0; }
.rating-type-icon--honor { background-position: -28px 0; }
.rating-type-icon--exp { background-position: -56px 0; }
.rating-type-icon--reputation { background-position: -84px 0; }
.rating-type-icon--achievements { background-position: -112px 0; }

.home-rating__types .rating-ctrl.is-active .rating-type-icon,
.home-rating__types .rating-ctrl:hover .rating-type-icon {
    opacity: 1;
    filter: drop-shadow(0 0 4px rgba(75, 148, 158, .55));
}

.home-rating .b-ratings__table {
    width: 100%;
    margin: 8px 0 12px;
    border-collapse: separate;
    border-spacing: 0 2px;
}

.home-rating .b-ratings__table td {
    color: #e8d5bc !important;
    vertical-align: middle;
    padding: 4px 6px;
    font-size: 13px !important;
    line-height: 1.35;
}

.home-rating .b-ratings__odd td {
    background: rgba(0, 0, 0, .22) !important;
}

.home-rating .text-orange,
.home-rating .text-orange b {
    color: #4b949e !important;
}

.home-rating .b-ratings__table td img,
.home-rating .b-icon-32x32 {
    max-width: none;
    vertical-align: middle;
}

.home-rating .b-icon-32x32_info {
    cursor: pointer;
    pointer-events: auto;
}

.home-rating .b-ratings__table td a {
    cursor: pointer;
}

.home-page .home-rating a {
    color: inherit;
}

.home-layout__right .home-rating {
    width: 100%;
}

.home-nav__links a {
    background: rgba(42, 30, 22, .88);
    border-color: rgba(120, 78, 42, .72);
    color: var(--site-text);
}

.home-nav__links a:hover,
.home-nav__links a:focus {
    background: rgba(58, 42, 30, .96);
    border-color: rgba(160, 110, 60, .92);
    color: var(--site-link-hover);
}

.home-nav__links .home-nav__link--active {
    border-color: rgba(180, 130, 70, .98);
    background: rgba(58, 42, 30, .96);
    color: var(--site-accent);
    box-shadow: inset 0 0 0 1px rgba(120, 78, 42, .35);
}

.home-nav__links .home-nav__cta {
    border: 1px solid rgba(120, 78, 42, .85);
    background: linear-gradient(180deg, var(--site-primary-top), var(--site-primary-bottom));
    color: var(--site-primary-text) !important;
}

.home-nav__online {
    display: inline-flex;
    align-items: center;
    min-height: 40px;
    padding: 9px 14px;
    border: 1px solid rgba(120, 78, 42, .85);
    border-radius: 6px;
    background: rgba(90, 112, 64, .22);
    color: var(--site-text);
    font-size: 14px;
    font-weight: 800;
}

.home-rating-button {
    background: rgba(42, 30, 22, .88);
    color: var(--site-text) !important;
}

.home-rating-button.active {
    border-color: rgba(75, 148, 158, .62);
    background: linear-gradient(180deg, var(--site-primary-top), var(--site-primary-bottom));
    color: var(--site-primary-text) !important;
}

.home-social-link {
    background: rgba(90, 112, 64, .28);
    border-color: var(--site-border);
    color: var(--site-text);
}

.home-comment {
    background: rgba(42, 30, 22, .72);
}

.home-banner-info {
    position: fixed;
    top: 16px;
    right: 16px;
    z-index: 1000;
    max-width: 280px;
    padding: 10px 12px;
    border: 1px solid var(--site-border-soft);
    border-radius: 8px;
    background: rgba(42, 30, 22, .94);
    color: var(--site-text);
    box-shadow: 0 12px 30px var(--site-shadow);
    font-size: 13px;
}

.home-banner {
    margin-bottom: 16px;
    border: 1px solid var(--site-border-soft);
    border-radius: 8px;
    overflow: hidden;
    background: var(--site-card-elevated);
}

.home-banner img {
    display: block;
    width: 100%;
    height: auto;
}

.home-banner__switch {
    display: flex;
    gap: 6px;
    padding: 10px;
    justify-content: center;
}

.home-banner__switch a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border: 1px solid var(--site-border-soft);
    border-radius: 6px;
    background: rgba(42, 30, 22, .88);
    color: var(--site-text);
    font-weight: 800;
}

.home-banner__switch a.active {
    background: linear-gradient(180deg, var(--site-primary-top), var(--site-primary-bottom));
    color: var(--site-primary-text);
    border-color: rgba(75, 148, 158, .42);
}

.home-page .superman {
    display: inline-block;
    vertical-align: middle;
    position: relative;
}

.home-page .superman td {
    width: 60px;
    height: 60px;
}

.home-news-card__body .superman .bpdig,
.home-layout__main .superman .bpdig {
    position: absolute;
    right: 2px;
    bottom: 2px;
    z-index: 2;
    min-width: 18px;
    height: 14px;
    margin: 0;
    padding: 0 2px;
    text-align: center;
    line-height: 14px;
    font-size: 11px !important;
    font-weight: bold;
    border-radius: 2px;
    background: #0a1118;
    color: #bac6d2 !important;
}


.home-page .b-popup-shader {
    background: rgba(0, 0, 0, .65);
}

.home-page .b-common-popup {
    z-index: 10001;
    width: 380px !important;
    max-width: calc(100vw - 32px);
    margin: 0;
}

.home-page #recoveryPasswordStep1 {
    width: 380px !important;
    max-width: calc(100vw - 32px);
}

.home-page #errorForm {
    width: 420px !important;
    max-width: calc(100vw - 32px);
}

.home-page #recoveryPasswordStep1 .b-common-block,
.home-page .b-common-popup .b-common-block {
    position: relative;
    width: 100%;
    max-width: 100%;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid rgba(120, 78, 42, .85);
    border-radius: 10px;
    background: var(--site-card-soft) !important;
    box-shadow: 0 24px 56px var(--site-shadow);
    overflow: hidden;
    box-sizing: border-box;
}

.home-page #recoveryPasswordStep1 .b-common-block__l,
.home-page #recoveryPasswordStep1 .b-common-block__r,
.home-page #recoveryPasswordStep1 .b-common-block__t,
.home-page #recoveryPasswordStep1 .b-common-block__b,
.home-page #recoveryPasswordStep1 .b-common-block__tl,
.home-page #recoveryPasswordStep1 .b-common-block__tr,
.home-page #recoveryPasswordStep1 .b-common-block__bl,
.home-page #recoveryPasswordStep1 .b-common-block__br,
.home-page #recoveryPasswordStep1 .b-common-block__decor-tl,
.home-page #recoveryPasswordStep1 .b-common-block__decor-tr,
.home-page #recoveryPasswordStep1 .b-common-block__decor-bl,
.home-page #recoveryPasswordStep1 .b-common-block__decor-br,
.home-page #recoveryPasswordStep1 .b-common-block__decor-tl-2,
.home-page #recoveryPasswordStep1 .b-common-block__decor-tr-2,
.home-page #recoveryPasswordStep1 .b-common-block__decor-bl-2,
.home-page #recoveryPasswordStep1 .b-common-block__decor-br-2,
.home-page .b-common-popup .b-common-block__l,
.home-page .b-common-popup .b-common-block__r,
.home-page .b-common-popup .b-common-block__t,
.home-page .b-common-popup .b-common-block__b,
.home-page .b-common-popup .b-common-block__tl,
.home-page .b-common-popup .b-common-block__tr,
.home-page .b-common-popup .b-common-block__bl,
.home-page .b-common-popup .b-common-block__br,
.home-page .b-common-popup .b-common-block__decor-tl,
.home-page .b-common-popup .b-common-block__decor-tr,
.home-page .b-common-popup .b-common-block__decor-bl,
.home-page .b-common-popup .b-common-block__decor-br,
.home-page .b-common-popup .b-common-block__decor-tl-2,
.home-page .b-common-popup .b-common-block__decor-tr-2,
.home-page .b-common-popup .b-common-block__decor-bl-2,
.home-page .b-common-popup .b-common-block__decor-br-2 {
    display: none !important;
}

.home-page #recoveryPasswordStep1 .b-common-block__header,
.home-page .b-common-popup .b-common-block__header {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    background: none !important;
    padding: 16px 40px 6px 16px !important;
}

.home-page #recoveryPasswordStep1 .b-common-block__header-inner,
.home-page .b-common-popup .b-common-block__header-inner {
    display: block;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    background: none !important;
    color: var(--site-accent);
    font-size: 22px;
    line-height: 1.2;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .04em;
    text-shadow: none;
}

.home-page #recoveryPasswordStep1 .b-common-block__close,
.home-page .b-common-popup .b-common-block__close {
    position: absolute !important;
    z-index: 6;
    top: 10px !important;
    right: 10px !important;
    left: auto !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 28px !important;
    height: 28px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid rgba(120, 78, 42, .75);
    border-radius: 50%;
    background: rgba(24, 18, 12, .92) !important;
    overflow: visible;
    text-indent: 0;
    font-size: 0;
    line-height: 0;
    cursor: pointer;
}

.home-page #recoveryPasswordStep1 .b-common-block__close::before,
.home-page .b-common-popup .b-common-block__close::before {
    content: "×";
    position: static;
    display: block;
    width: auto;
    height: auto;
    margin: 0;
    padding: 0;
    background: none !important;
    color: var(--site-accent);
    font-size: 20px;
    line-height: 1;
    font-weight: 700;
    text-align: center;
    transform: translateY(-2px);
}

.home-page #recoveryPasswordStep1 .b-common-block__close::after,
.home-page .b-common-popup .b-common-block__close::after {
    display: none !important;
}

.home-page #recoveryPasswordStep1 .b-common-block__close:hover::before,
.home-page .b-common-popup .b-common-block__close:hover::before {
    color: var(--site-link-hover);
}

.home-page #recoveryPasswordStep1 .b-common-block__cont,
.home-page #recoveryPasswordStep1 .b-common-block__bgl,
.home-page #recoveryPasswordStep1 .b-common-block__bgr,
.home-page .b-common-popup .b-common-block__cont,
.home-page .b-common-popup .b-common-block__bgl,
.home-page .b-common-popup .b-common-block__bgr {
    background: none !important;
    margin: 0 !important;
    padding: 0 !important;
    min-height: 0 !important;
}

.home-page #recoveryPasswordStep1 .b-common-block__bgr,
.home-page .b-common-popup .b-common-block__bgr {
    padding: 0 16px 16px !important;
}

.home-page #recoveryPasswordStep1 .b-common-form__table,
.home-page .b-common-popup .b-common-form__table {
    width: 100%;
    max-width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
}

.home-page #recoveryPasswordStep1 .b-common-form__table tr:first-child td:last-child,
.home-page .b-common-popup .b-common-form__table tr:first-child td:last-child {
    width: auto;
}

.home-page #recoveryPasswordStep1 .b-common-form__table tr:first-child .b-common-form__label,
.home-page .b-common-popup .b-common-form__table tr:first-child .b-common-form__label {
    display: inline-block;
    margin: 0;
}

.home-page #recoveryPasswordStep1 .b-common-form__table tr:first-child,
.home-page .b-common-popup .b-common-form__table tr:first-child {
    display: table-row;
}

.home-page #recoveryPasswordStep1 .b-common-form__table tr:first-child td,
.home-page .b-common-popup .b-common-form__table tr:first-child td {
    display: table-cell;
    width: auto;
    padding: 0 !important;
    vertical-align: middle;
}

.home-page #recoveryPasswordStep1 .b-common-form__table tr:first-child td:first-child,
.home-page .b-common-popup .b-common-form__table tr:first-child td:first-child {
    width: 1%;
    padding-right: 12px !important;
    white-space: nowrap;
}

.home-page #recoveryPasswordStep1 .b-common-form__table tr + tr,
.home-page .b-common-popup .b-common-form__table tr + tr {
    display: block;
    width: 100%;
    margin-top: 14px;
}

.home-page #recoveryPasswordStep1 .b-common-form__table tr + tr td,
.home-page .b-common-popup .b-common-form__table tr + tr td {
    display: block;
    width: 100%;
    padding: 0 !important;
}

.home-page .b-common-popup .b-common-form__label {
    display: block;
    margin: 0 0 6px;
    padding: 0;
    color: var(--site-text-secondary);
    font-size: inherit;
    font-weight: 700;
    text-shadow: none;
}

.home-page #recoveryPasswordStep1 .b-common-form__field,
.home-page #recoveryPasswordStep1 .b-common-form__field:focus,
.home-page #recoveryPasswordStep1 .b-common-form__field.focus,
.home-page #recoveryPasswordStep1 .b-common-form__field.error,
.home-page .b-common-popup .b-common-form__field,
.home-page .b-common-popup .b-common-form__field:focus,
.home-page .b-common-popup .b-common-form__field.focus,
.home-page .b-common-popup .b-common-form__field.error {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
    padding: 0;
    background: none;
    box-sizing: border-box;
}

.home-page #recoveryPasswordStep1 .b-common-form__field-inner,
.home-page #recoveryPasswordStep1 .b-common-form__field:focus .b-common-form__field-inner,
.home-page #recoveryPasswordStep1 .b-common-form__field.focus .b-common-form__field-inner,
.home-page #recoveryPasswordStep1 .b-common-form__field.error .b-common-form__field-inner,
.home-page .b-common-popup .b-common-form__field-inner,
.home-page .b-common-popup .b-common-form__field:focus .b-common-form__field-inner,
.home-page .b-common-popup .b-common-form__field.focus .b-common-form__field-inner,
.home-page .b-common-popup .b-common-form__field.error .b-common-form__field-inner {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
    padding: 0;
    background: none;
    box-sizing: border-box;
}

.home-page .b-common-popup .b-common-form__field-inner input[type="text"],
.home-page .b-common-popup .b-common-form__field-inner input[type="password"] {
    width: 100%;
    min-height: 42px;
    padding: 10px 12px;
    border: 1px solid var(--site-border);
    border-radius: 6px;
    background: var(--site-input);
    color: var(--site-text);
    font: inherit;
    box-sizing: border-box;
}

.home-page .b-common-popup .b-common-form__field-inner input[type="text"]:focus,
.home-page .b-common-popup .b-common-form__field-inner input[type="password"]:focus {
    outline: none;
    border-color: var(--site-accent);
    box-shadow: 0 0 0 2px rgba(75, 148, 158, .18);
}

.home-page #recoveryPasswordStep1 .b-common-block {
    overflow: visible;
}

.home-page #recoveryPasswordStep1 .b-common-block__close {
    top: 6px !important;
    right: 6px !important;
}

.home-page #recoveryPasswordStep1 .b-common-form__table tr:first-child {
    display: block !important;
}

.home-page #recoveryPasswordStep1 .b-common-form__table tr:first-child td:first-child {
    display: none !important;
}

.home-page #recoveryPasswordStep1 .b-common-form__table tr:first-child td:last-child {
    display: block !important;
    width: 100% !important;
}

.home-page #recoveryPasswordStep1 .b-common-form__field-inner input[type="text"] {
    color: var(--site-text);
}

.home-page #recoveryPasswordStep1 .b-common-form__field-inner input[type="text"]::placeholder {
    color: var(--site-text-secondary);
    opacity: 1;
}

.home-page #recoveryPasswordStep1 .b-common-form__field-inner input[type="text"]::-webkit-input-placeholder {
    color: var(--site-text-secondary);
    opacity: 1;
}

.home-page #recoveryPasswordStep1 .b-common-form__field-inner input[type="text"]:-ms-input-placeholder {
    color: var(--site-text-secondary);
    opacity: 1;
}

.home-page #recoveryPasswordStep1 .b-common-form__table tr:last-child {
    display: block !important;
    width: 100%;
    margin-top: 14px;
}

.home-page #recoveryPasswordStep1 .b-common-form__table tr:last-child td {
    display: block !important;
    width: 100% !important;
    padding: 0 !important;
    text-align: center;
}

.home-page #recoveryPasswordStep1 button.b-button-red-5 {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    background: none !important;
    background-image: none !important;
}

.home-page #recoveryPasswordStep1 button.b-button-red-5 .b-button-red-5__inner {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 44px;
    padding: 11px 16px !important;
    border: 1px solid rgba(75, 148, 158, .40);
    border-radius: 6px;
    background: linear-gradient(180deg, var(--site-primary-top), var(--site-primary-bottom)) !important;
    background-image: none !important;
    box-shadow: 0 14px 26px rgba(40, 88, 94, .20);
    color: #ffffff !important;
    font-size: 14px;
    font-weight: 800;
    line-height: 1.2;
    text-align: center;
    text-shadow: none !important;
}

.home-page #recoveryPasswordStep1 button.b-button-red-5:hover .b-button-red-5__inner {
    filter: brightness(1.08);
    background: linear-gradient(180deg, var(--site-primary-top), var(--site-primary-bottom)) !important;
    background-image: none !important;
}

.home-page .b-common-popup .text-center {
    text-align: center;
}

.home-page .b-common-popup button.b-button-red-5,
.home-page .b-common-popup a.b-button-red-5 {
    display: block;
    width: 100%;
    height: auto;
    padding: 0;
    border: 0;
    background: none;
}

.home-page .b-common-popup .b-button-red-5__inner {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-width: 0;
    min-height: 44px;
    padding: 11px 16px;
    border: 1px solid rgba(75, 148, 158, .40);
    border-radius: 6px;
    background: linear-gradient(180deg, var(--site-primary-top), var(--site-primary-bottom));
    box-shadow: 0 14px 26px rgba(40, 88, 94, .20);
    color: #ffffff;
    font-size: 14px;
    font-weight: 800;
    line-height: 1.2;
    text-align: center;
    text-shadow: none;
}

.home-page .b-common-popup button.b-button-red-5:hover .b-button-red-5__inner,
.home-page .b-common-popup a.b-button-red-5:hover .b-button-red-5__inner {
    filter: brightness(1.08);
}

.home-page .b-common-popup #sendPasswordContainer .red.b {
    margin: 0 0 14px;
    color: var(--site-danger) !important;
    font-weight: 700;
    text-align: center;
    text-shadow: none;
}

.home-page .b-common-popup #errorText {
    color: var(--site-text);
    font-weight: 700;
    line-height: 1.45;
}

/* authPopup — сброс legacy-формы и нормальная вёрстка */
.home-page #authPopup {
    width: 420px !important;
}

.home-page #authPopup .b-auth-form > .b-common-form__table:first-child {
    display: none !important;
}

.home-page #authPopup .b-common-form__table tr {
    display: block !important;
    width: 100% !important;
    margin-top: 12px;
}

.home-page #authPopup .b-common-form__table tr:first-child {
    margin-top: 0;
}

.home-page #authPopup .b-common-form__table tr td {
    display: block !important;
    width: 100% !important;
    padding: 0 !important;
    vertical-align: top !important;
}

.home-page #authPopup .b-common-form__table tr td:first-child:empty,
.home-page #authPopup .b-common-form__table tr td:first-child {
    width: 100% !important;
}

.home-page #authPopup .b-common-form__table tr:nth-child(3) td:first-child {
    display: none !important;
}

.home-page #authPopup .b-common-form__field,
.home-page #authPopup .b-common-form__field:focus,
.home-page #authPopup .b-common-form__field.focus,
.home-page #authPopup .b-common-form__field.error,
.home-page #authPopup .b-common-form__field-inner,
.home-page #authPopup .b-common-form__field:focus .b-common-form__field-inner,
.home-page #authPopup .b-common-form__field.focus .b-common-form__field-inner,
.home-page #authPopup .b-common-form__field.error .b-common-form__field-inner {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    padding: 0 !important;
    background: none !important;
    background-image: none !important;
    box-sizing: border-box;
}

.home-page #authPopup .b-common-form__field-inner input[type="text"],
.home-page #authPopup .b-common-form__field-inner input[type="password"] {
    width: 100% !important;
    min-height: 42px;
    padding: 10px 12px;
    border: 1px solid var(--site-border);
    border-radius: 6px;
    background: var(--site-input) !important;
    color: var(--site-text) !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    text-shadow: none !important;
    box-sizing: border-box;
}

.home-page #authPopup .invert,
.home-page #authPopup .invert b {
    display: inline-block;
    color: var(--site-link) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.4;
    white-space: normal;
    text-shadow: none !important;
}

.home-page #authPopup .b-divider-4 {
    height: 1px;
    margin: 16px 0;
    border: 0;
    background: var(--site-border-soft);
}

.home-page #authPopup .b-common-block__bgr > p.text-center {
    margin: 0 0 10px;
    color: var(--site-text-secondary);
    font-size: 14px;
    line-height: 1.45;
}

.home-page #authPopup .b-common-block__bgr > p.text-center b {
    color: var(--site-text-secondary) !important;
    font-weight: 700;
    text-shadow: none !important;
}

.home-page .b-common-popup a.b-button-green-5 {
    display: block;
    width: 100%;
    height: auto;
    padding: 0;
    border: 0;
    background: none;
    text-decoration: none;
}

.home-page .b-common-popup .b-button-green-5__inner {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 44px;
    padding: 11px 16px;
    border: 1px solid rgba(120, 78, 42, .75);
    border-radius: 6px;
    background: linear-gradient(180deg, var(--site-secondary-top), var(--site-secondary-bottom));
    box-shadow: 0 14px 26px rgba(0, 0, 0, .22);
    color: #ffffff !important;
    font-size: 14px;
    font-weight: 800;
    line-height: 1.2;
    text-align: center;
    text-shadow: none !important;
}

.home-page .b-common-popup a.b-button-green-5:hover .b-button-green-5__inner {
    filter: brightness(1.08);
}

.home-page .b-common-popup .b-news-footer > span {
    display: none !important;
}

.home-page .b-common-popup .b-news-footer {
    margin: 0;
    padding: 0;
    border: 0;
    background: none !important;
}

.home-page .b-common-popup .b-news-footer__cont {
    padding: 0;
    color: var(--site-text) !important;
    font-size: 16px !important;
    font-weight: 800;
    text-align: center;
}

@media (max-width: 820px) {
    .home-banner-info {
        position: static;
        max-width: none;
        margin: 0 auto 12px;
        width: calc(100% - 28px);
    }

    .home-layout__right {
        grid-template-columns: 1fr;
    }
}

/* Перебиваем глобальный бежевый скролл из style/main.css */
html:has(body.home-page) {
    scrollbar-width: thin;
    scrollbar-color: rgba(75, 148, 158, .62) #1a120c;
}

html:has(body.home-page)::-webkit-scrollbar {
    width: 10px;
    background-color: #1a120c;
}

html:has(body.home-page)::-webkit-scrollbar-track {
    background: #1a120c;
    border-left: 1px solid rgba(75, 148, 158, .12);
}

html:has(body.home-page)::-webkit-scrollbar-thumb {
    border: 1px solid rgba(75, 148, 158, .28);
    border-radius: 999px;
    background: linear-gradient(180deg, rgba(90, 159, 168, .78), rgba(61, 114, 121, .92));
}

html:has(body.home-page)::-webkit-scrollbar-thumb:hover {
    background: linear-gradient(180deg, rgba(106, 174, 182, .88), rgba(75, 148, 158, .98));
}

html:has(body.home-page)::-webkit-scrollbar-button {
    display: none;
    width: 0;
    height: 0;
    background: none;
}

/* ====== Inner pages (library, forum, rating) ====== */

.home-inner-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
    gap: 18px;
    padding-bottom: 36px;
}

.home-inner-layout__content {
    min-width: 0;
}

.home-page--inner .b-column-wrapper {
    display: grid;
    grid-template-columns: minmax(220px, 260px) minmax(0, 1fr);
    gap: 18px;
    width: min(100%, 1040px) !important;
    max-width: 1040px;
    margin: 0 auto !important;
}

.home-page--inner .b-column-left,
.home-page--inner .b-column-right {
    float: none !important;
    width: auto !important;
    margin: 0 !important;
}

.home-page--inner .home-inner-layout__content .b-main-frame > span,
.home-page--inner .home-inner-layout__content .b-common-block > span:not(.b-common-block__header):not(.b-common-block__header-inner),
.home-page--inner .home-inner-layout__content .b-news-footer > span,
.home-page--inner .b-footer {
    display: none !important;
}

.home-page--inner .home-inner-layout__content .b-main-frame,
.home-page--inner .home-inner-layout__content .b-main-frame__cont,
.home-page--inner .home-inner-layout__content .b-index-decor,
.home-page--inner .home-inner-layout__content .b-index-decor_left {
    background: none !important;
    border: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    width: auto !important;
    min-height: 0 !important;
}

.home-page--inner .home-inner-layout__content .b-common-block {
    display: grid;
    gap: 12px;
    padding: 16px;
    margin: 0 0 16px;
    border: 1px solid var(--site-border-soft);
    border-radius: 8px;
    background: var(--site-card-soft);
    box-shadow: 0 20px 52px var(--site-shadow);
}

.home-page--inner .home-inner-layout__content .b-common-block:last-child {
    margin-bottom: 0;
}

.home-page--inner .home-inner-layout__content .b-common-block__header {
    display: block !important;
    position: static !important;
    height: auto !important;
    margin: 0;
    padding: 0 0 10px;
    border-bottom: 1px solid var(--site-border-soft);
    background: none !important;
}

.home-page--inner .home-inner-layout__content .b-common-block__header-inner,
.home-page--inner .home-inner-layout__content .b-common-block__header-inner span {
    display: block;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    background: none !important;
    color: var(--site-accent) !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    letter-spacing: .04em;
    line-height: 1.3 !important;
    text-transform: uppercase;
    text-shadow: none !important;
}

.home-page--inner .home-inner-layout__content .b-common-block__cont,
.home-page--inner .home-inner-layout__content .b-common-block__bgl,
.home-page--inner .home-inner-layout__content .b-common-block__bgr {
    padding: 0 !important;
    margin: 0 !important;
    background: none !important;
    border: 0 !important;
}

.home-page--inner .home-inner-layout__content a.b-mainmenu__item-red,
.home-page--inner .home-inner-layout__content a.b-mainmenu__item-blue {
    display: flex !important;
    align-items: center;
    justify-content: center !important;
    width: 100% !important;
    min-height: 38px;
    margin: 0 0 6px !important;
    padding: 0 !important;
    border: 1px solid var(--site-border-soft) !important;
    border-radius: 6px !important;
    background: rgba(42, 30, 22, .88) !important;
    text-decoration: none !important;
}

.home-page--inner .home-inner-layout__content a.b-mainmenu__item-blue {
    border-color: rgba(75, 148, 158, .55) !important;
    background: rgba(75, 148, 158, .22) !important;
}

.home-page--inner .home-inner-layout__content .b-mainmenu__item-red-inner,
.home-page--inner .home-inner-layout__content .b-mainmenu__item-blue-inner {
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100% !important;
    min-height: 38px !important;
    padding: 9px 11px !important;
    background: none !important;
    color: var(--site-text) !important;
    font-size: 14px !important;
    font-weight: 750 !important;
    line-height: 1.25 !important;
    text-align: center !important;
}

.home-inner-side-link__inner,
.home-rating-side-link__inner {
    width: 100%;
}

.home-rating-side-link .home-rating-icon,
.home-inner-side-link .home-rating-icon {
    flex: 0 0 22px;
    width: 22px;
    height: 22px;
}

.home-inner-side-link__text,
.home-rating-side-link__text {
    flex: 1 1 auto;
    text-align: center;
}

.home-page--inner .b-column-left .b-common-block + .b-common-block {
    margin-top: 0;
}

.home-page--inner .home-inner-layout__content a.b-mainmenu__item-red:hover,
.home-page--inner .home-inner-layout__content a.b-mainmenu__item-blue:hover,
.home-page--inner .home-inner-layout__content a.b-mainmenu__item-blue {
    color: var(--site-text) !important;
}

.home-page--inner .home-inner-layout__content a.b-mainmenu__item-red:hover .b-mainmenu__item-red-inner,
.home-page--inner .home-inner-layout__content a.b-mainmenu__item-blue:hover .b-mainmenu__item-blue-inner {
    color: var(--site-link-hover) !important;
}

.home-page--inner .b-news-item {
    margin-bottom: 18px;
    padding: 18px;
    border: 1px solid var(--site-border-soft);
    border-radius: 8px;
    background: var(--site-card-soft);
    color: var(--site-text-secondary);
}

.home-page--inner .b-news-item__head,
.home-page--inner .b-news-item__head a {
    color: var(--site-text) !important;
    font-size: 20px !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
}

.home-page--inner .b-news-item__head a:hover {
    color: var(--site-link-hover) !important;
}

.home-page--inner .b-news-item__datetime,
.home-page--inner .b-news-item__datetime-inner {
    display: none !important;
}

.home-forum-datetime {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 10px;
    border: 1px solid rgba(120, 78, 42, .45);
    border-radius: 999px;
    background: rgba(68, 48, 32, .72);
    color: var(--site-link);
    font-size: 12px;
    font-weight: 800;
    line-height: 1.2;
    white-space: nowrap;
}

.home-forum-datetime::before {
    content: "";
    width: 12px;
    height: 12px;
    border: 2px solid currentColor;
    border-radius: 50%;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .08);
    opacity: .85;
}

.home-forum-topic__header {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px 14px;
    margin-bottom: 10px;
}

.home-forum-topic__header .b-news-item__head {
    flex: 1 1 220px;
    margin: 0 !important;
}

.home-forum-topic__meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 12px;
    padding-bottom: 12px;
    border-bottom: 1px solid var(--site-border-soft);
}

.home-forum-topic__admin {
    margin-left: auto;
}

.home-forum-topic__content,
.home-forum-topic__excerpt {
    margin-bottom: 14px;
}

.home-forum-topic__comments {
    margin-top: 10px;
}

.home-forum-post {
    margin-top: 14px;
}

.home-forum-post__head {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 8px;
}

.home-forum-post__body {
    color: var(--site-text-secondary);
    font-size: 14px;
    line-height: 1.55;
}

.home-forum-post__footer {
    display: flex;
    justify-content: flex-end;
    margin-top: 10px;
}

.home-forum-pagination {
    margin-top: 16px;
    padding-top: 12px;
    border-top: 1px solid var(--site-border-soft);
}

.home-forum-editor .textarea-styled,
.home-forum-editor .textarea-styled > div[class*="textarea-styled__"],
.home-forum-editor .ff__input-wrap,
.home-forum-editor .ff__input-wrap-inner,
.home-forum-editor .ff__input-wrap-input {
    background: none !important;
    border: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    width: auto !important;
    min-height: 0 !important;
    box-shadow: none !important;
}

.home-forum-editor .textarea-styled > div[class*="textarea-styled__"] {
    display: none !important;
}

.home-forum-editor .textarea-styled textarea,
.home-forum-editor .ff__input-wrap input {
    width: 100% !important;
}

.home-forum-editor {
    margin-top: 0;
}

.home-forum-bb-toolbar button,
.home-forum-smiles__btn {
    user-select: none;
}

.home-forum-smiles__btn img {
    pointer-events: none;
}

.home-page--inner .b-divider-2 {
    display: none !important;
}

.home-page--inner .b-news-footer {
    margin: 12px 0 0;
    padding: 14px;
    border: 1px solid var(--site-border-soft);
    border-radius: 8px;
    background: rgba(42, 30, 22, .72);
}

.home-page--inner .b-news-footer__cont {
    color: var(--site-text-secondary) !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
}

.home-forum-topic__content,
.home-forum-post__body,
.home-forum-topic__excerpt {
    word-break: break-word;
}

.home-forum-topic__content :where(b, strong),
.home-forum-post__body :where(b, strong),
.home-forum-topic__excerpt :where(b, strong) {
    font-weight: 800;
    color: var(--site-text);
}

.home-forum-topic__content :where(i, em),
.home-forum-post__body :where(i, em),
.home-forum-topic__excerpt :where(i, em) {
    font-style: italic;
}

.home-forum-topic__content :where(u, ins),
.home-forum-post__body :where(u, ins),
.home-forum-topic__excerpt :where(u, ins) {
    text-decoration: underline;
}

.home-page--inner .b-common-typography {
    color: var(--site-text-secondary);
    font-size: 16px;
    line-height: 1.72;
}

.home-page--inner .b-common-typography :where(a, a *) {
    color: var(--site-link) !important;
}

.home-page--inner .w488 select,
.home-page--inner .tbl-reg_input,
.home-page--inner .gui-input,
.home-page--inner .gui-textarea {
    max-width: 100%;
    border: 1px solid var(--site-border);
    border-radius: 6px;
    background: var(--site-input);
    color: var(--site-text);
}

.home-forum-editor {
    margin: 16px 0 0;
    padding: 16px;
    border: 1px solid rgba(120, 78, 42, .55);
    border-radius: 8px;
    background: rgba(42, 30, 22, .92);
    box-shadow: 0 12px 32px rgba(0, 0, 0, .28);
}

.home-forum-editor h3 {
    margin: 0 0 14px;
    color: var(--site-text);
    font-size: 20px;
    font-weight: 800;
    line-height: 1.25;
    text-align: center;
}

.home-forum-editor .site-editor-form {
    display: grid;
    gap: 14px;
}

.home-forum-editor__label {
    display: grid;
    gap: 8px;
    color: var(--site-text-secondary);
    font-size: 14px;
    font-weight: 700;
}

.home-forum-editor__title,
.home-forum-editor__textarea {
    width: 100%;
    padding: 11px 12px;
    border: 1px solid rgba(120, 78, 42, .55);
    border-radius: 6px;
    background: var(--site-input);
    color: var(--site-text);
    font: inherit;
}

.home-forum-editor__textarea {
    min-height: 180px !important;
    height: auto !important;
    line-height: 1.45;
    resize: vertical;
}

.home-forum-editor__textarea:focus,
.home-forum-editor__title:focus {
    outline: 2px solid rgba(75, 148, 158, .28);
    border-color: rgba(106, 174, 182, .65);
}

.home-forum-editor__tools {
    display: grid;
    gap: 12px;
    padding: 12px;
    border: 1px solid rgba(120, 78, 42, .45);
    border-radius: 8px;
    background: rgba(24, 18, 12, .72);
}

.home-forum-bb-toolbar {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.home-forum-bb-toolbar button {
    min-width: 38px;
    height: 34px;
    padding: 0 10px;
    border: 1px solid rgba(120, 78, 42, .55);
    border-radius: 6px;
    background: rgba(42, 30, 22, .92);
    color: var(--site-accent);
    font-size: 14px;
    font-weight: 800;
    cursor: pointer;
}

.home-forum-bb-toolbar button:hover {
    border-color: rgba(160, 110, 60, .92);
    color: var(--site-link-hover);
}

.home-forum-smiles {
    display: grid;
    gap: 10px;
}

.home-forum-smiles__title {
    margin-bottom: 6px;
    color: var(--site-text-muted);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.home-forum-smiles__grid {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
}

.home-forum-smiles__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    padding: 0;
    border: 1px solid rgba(120, 78, 42, .35);
    border-radius: 6px;
    background: rgba(42, 30, 22, .88);
    cursor: pointer;
    transition: border-color .15s ease, transform .15s ease;
}

.home-forum-smiles__btn:hover {
    border-color: rgba(106, 174, 182, .55);
    transform: translateY(-1px);
}

.home-forum-smiles__btn img {
    width: 20px;
    height: 20px;
    object-fit: contain;
}

.home-forum-smiles__btn--emoji {
    width: 34px;
    height: 34px;
    font-size: 20px;
    line-height: 1;
}

.home-forum-editor__footer {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 10px 14px;
}

.home-forum-editor__counter {
    color: var(--site-text-muted);
    font-size: 12px;
    font-weight: 700;
}

.home-forum-editor__submit {
    min-width: 132px;
    min-height: 42px;
    padding: 10px 22px;
    border: 1px solid rgba(120, 78, 42, .85);
    border-radius: 6px;
    background: linear-gradient(180deg, var(--site-primary-top), var(--site-primary-bottom));
    color: var(--site-primary-text) !important;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: .02em;
    box-shadow: 0 8px 20px rgba(0, 0, 0, .24);
    cursor: pointer;
}

.home-forum-editor__submit:hover,
.home-forum-editor__submit:focus {
    filter: brightness(1.06);
    transform: translateY(-1px);
    box-shadow: 0 10px 24px rgba(0, 0, 0, .3);
}

.home-library-editor {
    margin: 16px 0 0;
    padding: 16px;
    border: 1px solid rgba(120, 78, 42, .55);
    border-radius: 8px;
    background: rgba(42, 30, 22, .92);
    box-shadow: 0 12px 32px rgba(0, 0, 0, .28);
}

.home-library-editor h3 {
    margin: 0 0 14px;
    color: var(--site-text);
    font-size: 20px;
    font-weight: 800;
    line-height: 1.25;
    text-align: center;
}

.home-library-editor .site-editor-form {
    display: grid;
    gap: 14px;
}

.home-library-editor__label {
    display: grid;
    gap: 8px;
    color: var(--site-text-secondary);
    font-size: 14px;
    font-weight: 700;
}

.home-library-editor__title,
.home-library-editor__code {
    width: 100%;
    padding: 11px 12px;
    border: 1px solid rgba(120, 78, 42, .55);
    border-radius: 6px;
    background: var(--site-input);
    color: var(--site-text);
    font: inherit;
}

.home-library-editor__title:focus,
.home-library-editor__code:focus {
    outline: 2px solid rgba(75, 148, 158, .28);
    border-color: rgba(106, 174, 182, .65);
}

.home-library-editor__editor {
    min-width: 0;
}

.home-library-editor__footer,
.home-library-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
}

.home-library-actions {
    margin-top: 16px;
}

.home-library-editor__footer {
    margin-top: 4px;
}

.home-page--inner .home-library-editor .b-common-form__field,
.home-page--inner .home-library-editor .b-common-form__field-inner {
    width: 100% !important;
    background: none !important;
    border: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    box-shadow: none !important;
}

.home-library-picker {
    position: relative;
    width: min(100%, 720px);
    max-width: 720px;
    margin: 0 auto 18px;
    text-align: center;
}

.home-library-picker__toggle {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    min-height: 48px;
    padding: 12px 42px 12px 16px;
    border: 1px solid rgba(120, 78, 42, .55);
    border-radius: 8px;
    background: rgba(42, 30, 22, .92);
    color: var(--site-text);
    font: inherit;
    font-size: 18px;
    font-weight: 800;
    line-height: 1.25;
    letter-spacing: .04em;
    text-transform: uppercase;
    cursor: pointer;
    transition: border-color .15s ease, background .15s ease;
}

.home-library-picker__toggle::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 16px;
    width: 8px;
    height: 8px;
    margin-top: -5px;
    border-right: 2px solid var(--site-link);
    border-bottom: 2px solid var(--site-link);
    transform: rotate(45deg);
    transition: transform .15s ease, margin-top .15s ease;
}

.home-library-picker__toggle[aria-expanded="true"] {
    border-color: rgba(106, 174, 182, .65);
    background: rgba(52, 36, 26, .96);
}

.home-library-picker__toggle[aria-expanded="true"]::after {
    margin-top: -2px;
    transform: rotate(-135deg);
}

.home-library-picker__menu {
    position: absolute;
    z-index: 30;
    top: calc(100% + 8px);
    left: 0;
    right: 0;
    max-height: min(70vh, 520px);
    margin: 0;
    padding: 10px;
    overflow-y: auto;
    list-style: none;
    border: 1px solid rgba(120, 78, 42, .55);
    border-radius: 8px;
    background: rgba(28, 20, 14, .98);
    box-shadow: 0 18px 40px rgba(0, 0, 0, .38);
}

.home-library-picker__menu[hidden] {
    display: none !important;
}

.home-library-picker__menu::-webkit-scrollbar {
    width: 8px;
}

.home-library-picker__menu::-webkit-scrollbar-thumb {
    border-radius: 999px;
    background: rgba(120, 78, 42, .55);
}

.home-library-picker__option {
    display: block;
    padding: 13px 18px;
    border-radius: 6px;
    color: var(--site-text-secondary) !important;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.35;
    text-align: center;
    text-transform: none;
    letter-spacing: 0;
}

.home-library-picker__option:hover,
.home-library-picker__option:focus {
    color: var(--site-text) !important;
    background: rgba(75, 148, 158, .18);
}

.home-library-picker__option.is-active {
    color: var(--site-link) !important;
    background: rgba(75, 148, 158, .24);
}

.home-page--inner .b-column-left .b-common-block__header {
    margin-bottom: 4px;
    padding-bottom: 10px;
    text-align: center;
}

.home-page--inner .b-column-left .b-common-block__header-inner,
.home-page--inner .b-column-left .b-common-block__header-inner span {
    font-size: 14px !important;
    letter-spacing: .1em;
    text-align: center;
}

.home-page--inner .content {
    width: 100% !important;
    max-width: 100%;
    padding: 0 !important;
    text-align: left;
}

.home-page--inner .rating-filter {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin: 0 0 16px;
    padding: 12px;
    border: 1px solid var(--site-border-soft);
    border-radius: 8px;
    background: rgba(42, 30, 22, .72);
    float: none;
    overflow: visible;
}

.home-rating-kind-links {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 4px 0;
    width: 100%;
}

.home-rating-kind-links__item {
    padding: 0 12px;
    color: var(--site-text-secondary) !important;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.4;
    text-decoration: none !important;
    border-right: 1px solid rgba(120, 78, 42, .45);
    transition: color .15s ease;
}

.home-rating-kind-links__item:first-child {
    padding-left: 0;
}

.home-rating-kind-links__item:last-child {
    border-right: 0;
}

.home-rating-kind-links__item:hover,
.home-rating-kind-links__item:focus {
    color: var(--site-text) !important;
}

.home-rating-kind-links__item.is-active {
    color: var(--site-accent) !important;
    font-weight: 800;
}

.home-page--inner #searchNick {
    display: none !important;
}

.home-page--inner .btn-rating {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--site-text-secondary);
    font-size: 14px;
}

.home-page--inner .rating-search {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 0;
}

.home-page--inner .rating-table {
    width: 100%;
    margin: 0 0 14px;
    border-collapse: separate;
    border-spacing: 0;
    border: 1px solid var(--site-border-soft);
    border-radius: 8px;
    overflow: hidden;
    background: rgba(24, 18, 12, .88);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .03);
}

.home-page--inner .content .bg_l,
.home-page--inner .content .bg_l3 {
    background: none !important;
    background-image: none !important;
}

.home-page--inner .rating-table th,
.home-page--inner .rating-table td {
    padding: 10px 12px;
    border: 0;
    border-bottom: 1px solid var(--site-border-soft);
    color: var(--site-text-secondary);
    vertical-align: middle;
    background-image: none !important;
}

.home-page--inner .rating-table th {
    color: var(--site-text);
    font-weight: 800;
    background: rgba(75, 148, 158, .18) !important;
    border-bottom: 1px solid rgba(75, 148, 158, .28);
}

.home-page--inner .rating-table tbody tr {
    background: transparent !important;
    background-image: none !important;
}

.home-page--inner .rating-table tbody tr td {
    background: rgba(42, 30, 22, .72) !important;
}

.home-page--inner .rating-table tbody tr.bg_l td {
    background: rgba(52, 38, 28, .58) !important;
}

.home-page--inner .rating-table tbody tr.bg_l3 td {
    background: rgba(75, 148, 158, .16) !important;
    box-shadow: inset 3px 0 0 rgba(106, 174, 182, .75);
}

.home-page--inner .rating-table tbody tr:last-child td {
    border-bottom: 0;
}

.home-page--inner .rating-table td.rating-place {
    color: var(--site-accent) !important;
    font-weight: 800;
    white-space: nowrap;
}

.home-page--inner .rating-table tbody td:last-child {
    color: #f2e6d4 !important;
    font-size: 17px;
    font-weight: 800;
    text-align: right;
}

.home-page--inner .rating-table td table td {
    background: transparent !important;
    border: 0 !important;
    padding: 0 !important;
}

.home-page--inner .rating-table td .nick {
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0 3px;
    line-height: 1.2;
    vertical-align: middle;
}

.home-page--inner .rating-table .nick,
.home-page--inner .rating-table .nick * {
    color: var(--site-link) !important;
    vertical-align: middle !important;
}

.home-page--inner .rating-table .nick img {
    display: inline-block;
    vertical-align: middle !important;
}

.home-page--inner .rating-table .nick a,
.home-page--inner .rating-table .nick b {
    display: inline-flex;
    align-items: center;
    line-height: 1.2;
}

.home-page--inner .b-filter {
    border-color: var(--site-border);
    background: var(--site-input);
}

.home-page--inner .b-filter label {
    color: var(--site-text-muted) !important;
}

.home-page--inner .home-inner-layout__content .b-button-brown-2,
.home-page--inner .home-inner-layout__content .b-button-red-5,
.home-page--inner .home-inner-layout__content .b-button-green-5 {
    border-radius: 6px !important;
}

/* Rating page — новые иконки и UI без portal GIF */
.home-rating-heading {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin: 0 0 16px;
    padding: 12px 16px;
    border: 1px solid var(--site-border-soft);
    border-radius: 8px;
    background: rgba(42, 30, 22, .72);
    color: var(--site-text);
    font-size: 22px;
    font-weight: 900;
    line-height: 1.2;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.home-rating-heading__text {
    color: var(--site-text);
}

.home-rating-icon {
    flex: 0 0 28px;
    width: 28px;
    height: 28px;
    background: center / contain no-repeat;
}

.home-rating-icon--rating { background-image: url('../images/rating-icons/rating.svg'); }
.home-rating-icon--honor { background-image: url('../images/rating-icons/honor.svg'); }
.home-rating-icon--exp { background-image: url('../images/rating-icons/exp.svg'); }
.home-rating-icon--rep_rating { background-image: url('../images/rating-icons/rep_rating.svg'); }
.home-rating-icon--achievements { background-image: url('../images/rating-icons/achievements.svg'); }
.home-rating-icon--battles { background-image: url('../images/rating-icons/battles.svg'); }
.home-rating-icon--drakoskalp { background-image: url('../images/rating-icons/drakoskalp.svg'); }
.home-rating-icon--repgreat { background-image: url('../images/rating-icons/repgreat.svg'); }

.home-page--inner .btn-rating {
    float: none;
    width: auto;
    min-width: 0;
    margin: 0;
    font-weight: 700;
    text-align: center;
}

.home-page--inner .btn-rating .btn {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 38px !important;
    height: 38px !important;
    margin: 0 auto 4px !important;
    border: 2px solid var(--site-border);
    border-radius: 50%;
    background: rgba(42, 30, 22, .92) !important;
    background-image: none !important;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .04);
    transition: border-color .15s ease, box-shadow .15s ease;
}

.home-page--inner .btn-rating .btn:hover {
    border-color: var(--site-accent);
    box-shadow: 0 0 0 2px rgba(75, 148, 158, .18);
}

.home-page--inner .btn-rating .btn.all,
.home-page--inner .btn-rating .btn.human,
.home-page--inner .btn-rating .btn.magmar {
    background: rgba(42, 30, 22, .92) !important;
    background-image: none !important;
}

.home-page--inner .btn-rating .btn.level {
    background: rgba(42, 30, 22, .92) !important;
    font-size: 11px;
    font-weight: 900;
    color: var(--site-accent);
    line-height: 1;
}

.home-page--inner .btn-rating .btn.level::before {
    content: "Lv";
}

.home-page--inner .btn-rating .btn.level.active {
    border-color: var(--site-accent);
    background: rgba(75, 148, 158, .24) !important;
    color: #fff;
}

.home-page--inner .rating-search {
    float: none;
}

.home-page--inner .rating-search .butt1,
.home-page--inner .rating-search .butt1 b {
    display: block;
    margin: 0;
    padding: 0;
    border: 0;
    background: none !important;
}

.home-page--inner .rating-search input.redd {
    min-height: 38px;
    padding: 8px 14px;
    border: 1px solid rgba(75, 148, 158, .40);
    border-radius: 6px;
    background: linear-gradient(180deg, var(--site-primary-top), var(--site-primary-bottom));
    color: #fff !important;
    font-size: 13px;
    font-weight: 800;
    cursor: pointer;
}

.home-page--inner .rating-search input.redd:hover {
    filter: brightness(1.08);
}

.home-page--inner .b-filter__icon {
    background: none !important;
}

.home-page--inner .b-filter__icon::before {
    content: "";
    display: block;
    width: 16px;
    height: 16px;
    border: 2px solid var(--site-accent);
    border-radius: 50%;
    box-shadow: inset 0 0 0 1px rgba(75, 148, 158, .18);
}

.home-page--inner .b-filter__reset,
.home-page--inner .b-filter__reset-season {
    background: none !important;
    color: var(--site-text-muted);
    font-size: 18px;
    line-height: 1;
}

.home-page--inner .b-filter__reset::before,
.home-page--inner .b-filter__reset-season::before {
    content: "×";
}

.home-page--inner .rating-table td .rating-down,
.home-page--inner .rating-table td .rating-up,
.home-page--inner .rating-table td .rating-new {
    display: inline-block;
    margin-left: 4px;
    padding: 0 !important;
    background: none !important;
    font-size: 11px !important;
    font-weight: 800;
    line-height: 1;
    vertical-align: middle;
}

.home-page--inner .rating-table td .rating-up {
    color: #6ecf8a !important;
}

.home-page--inner .rating-table td .rating-up::before {
    content: "▲ ";
}

.home-page--inner .rating-table td .rating-down {
    color: #ff8a78 !important;
}

.home-page--inner .rating-table td .rating-down::before {
    content: "▼ ";
}

.home-page--inner .rating-table td .rating-new {
    color: var(--site-accent) !important;
    font-size: 10px !important;
    letter-spacing: .03em;
    text-transform: uppercase;
}

.home-page--inner .rating-table td .rating-new::before {
    content: "NEW";
}

.home-page--inner .content .title img,
.home-page--inner .content > table img[src*="portal/"],
.home-page--inner .content > table img[src*="/images/data/rating/"] {
    display: none !important;
}

@media (max-width: 1180px) {
    .home-inner-layout {
        grid-template-columns: minmax(0, 1fr);
    }
}

@media (max-width: 820px) {
    .home-inner-layout {
        grid-template-columns: 1fr;
        width: min(100% - 28px, 680px);
    }

    .home-page--inner .b-column-wrapper {
        grid-template-columns: 1fr;
    }
}

/* ====== Recruitment page ====== */

.home-page--recruitment .recruitment-page-content {
    padding: 0;
    color: var(--site-text-secondary);
    font-size: 15px;
    line-height: 1.65;
}

.home-page--recruitment .recruitment-page-content p {
    margin: 0 0 14px;
}

.home-page--recruitment .recruitment-page-content a,
.home-page--recruitment .recruitment-page-content a.redd {
    color: var(--site-link) !important;
}

.home-page--recruitment .recruitment-page-content a:hover,
.home-page--recruitment .recruitment-page-content a:focus {
    color: var(--site-link-hover) !important;
}

.home-page--recruitment table.tbl-shp-sml,
.home-page--recruitment .progress_bar_bg,
.home-page--recruitment .achieve_header,
.home-page--recruitment .achieve_bg {
    display: none !important;
}

.home-recruit-card {
    border: 1px solid var(--site-border-soft);
    border-radius: 8px;
    background: rgba(42, 30, 22, .72);
    overflow: hidden;
}

.home-recruit-card__title {
    margin: 0;
    padding: 12px 16px;
    border-bottom: 1px solid var(--site-border-soft);
    background: rgba(52, 36, 26, .88);
    color: var(--site-text);
    font-size: 16px;
    font-weight: 800;
    text-align: center;
}

.home-recruit-card__body {
    padding: 16px;
}

.home-recruit-stats {
    width: 100%;
    margin: 14px 0;
    border-collapse: collapse;
    border: 1px solid var(--site-border-soft);
    border-radius: 8px;
    overflow: hidden;
    background: rgba(24, 18, 12, .55);
}

.home-recruit-stats th,
.home-recruit-stats td {
    padding: 10px 12px;
    border-top: 1px solid var(--site-border-soft);
    color: var(--site-text-secondary);
    text-align: left;
    vertical-align: middle;
}

.home-recruit-stats tr:first-child th,
.home-recruit-stats tr:first-child td {
    border-top: 0;
}

.home-recruit-stats th {
    width: 58%;
    font-weight: 600;
}

.home-recruit-stats__value {
    color: var(--site-accent);
    font-weight: 800;
    text-align: right !important;
}

.home-recruit-stats__value--action {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
}

.home-recruit-stats--compact {
    margin-bottom: 18px;
}

.home-recruit-inline-form {
    margin: 0;
}

.home-recruit-link {
    margin: 16px 0;
    text-align: center;
}

.home-recruit-link__label {
    margin: 0 0 8px;
    color: var(--site-text);
    font-weight: 800;
}

.home-recruit-link__url,
.home-page--recruitment #recruitment_reflink_select {
    display: block;
    padding: 12px 14px;
    border: 1px dashed rgba(106, 174, 182, .45);
    border-radius: 8px;
    background: rgba(24, 18, 12, .72);
    color: var(--site-link) !important;
    font-size: 14px;
    font-weight: 700;
    word-break: break-all;
    cursor: text;
}

.home-recruit-link__hint {
    margin: 8px 0 0;
    color: var(--site-text-secondary);
    font-size: 13px;
    font-style: italic;
}

.home-recruit-links {
    width: 100%;
    margin: 0 0 16px;
    border-collapse: collapse;
    border: 1px solid var(--site-border-soft);
    border-radius: 8px;
    overflow: hidden;
    background: rgba(24, 18, 12, .55);
}

.home-recruit-links caption {
    padding: 10px 12px;
    border-bottom: 1px solid var(--site-border-soft);
    background: rgba(52, 36, 26, .88);
    color: var(--site-text);
    font-weight: 800;
    text-align: center;
}

.home-recruit-links td {
    padding: 10px 12px;
    border-top: 1px solid var(--site-border-soft);
    color: var(--site-text-secondary);
}

.home-recruit-links td:last-child {
    width: 120px;
    text-align: right;
    white-space: nowrap;
}

.home-recruit-tips__title {
    margin: 0 0 8px;
}

.home-recruit-tips__list {
    margin: 0;
    padding-left: 20px;
    color: var(--site-text-secondary);
}

.home-page--recruitment .recruitment-search {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin: 0 0 16px;
}

.home-page--recruitment .recruitment-search .b-filter {
    flex: 1 1 260px;
    max-width: 420px;
    margin: 0;
}

.home-page--recruitment .recruitment-search .ff__input-wrap,
.home-page--recruitment .recruitment-search .ff__input-wrap-inner,
.home-page--recruitment .recruitment-search .ff__input-wrap-input {
    width: 100% !important;
    background: none !important;
    border: 0 !important;
    box-shadow: none !important;
}

.home-page--recruitment .recruitment-search .filterField {
    width: 100%;
    min-height: 42px;
    padding: 10px 12px;
    border: 1px solid rgba(120, 78, 42, .55);
    border-radius: 6px;
    background: var(--site-input);
    color: var(--site-text);
    font: inherit;
}

.home-recruit-sort-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    min-height: 42px;
    padding: 0;
    border: 1px solid rgba(120, 78, 42, .55);
    border-radius: 6px;
    background: rgba(42, 30, 22, .92);
    color: var(--site-text);
    cursor: pointer;
}

.home-recruit-sort-btn::before {
    content: "";
    width: 14px;
    height: 14px;
    background:
        linear-gradient(var(--site-link), var(--site-link)) 0 2px / 14px 2px no-repeat,
        linear-gradient(var(--site-link), var(--site-link)) 0 6px / 10px 2px no-repeat,
        linear-gradient(var(--site-link), var(--site-link)) 0 10px / 6px 2px no-repeat;
}

.home-recruit-sort-btn:hover,
.home-recruit-sort-btn:focus {
    border-color: rgba(106, 174, 182, .55);
}

.home-recruit-list {
    border: 1px solid var(--site-border-soft);
    border-radius: 8px;
    overflow: hidden;
    background: rgba(42, 30, 22, .72);
}

.home-recruit-list__head {
    padding: 10px 12px;
    border-bottom: 1px solid var(--site-border-soft);
    background: rgba(52, 36, 26, .88);
    color: var(--site-text);
    font-weight: 800;
    text-align: center;
}

.home-recruit-list__row {
    padding: 10px 12px;
    border-top: 1px solid var(--site-border-soft);
    text-align: center;
}

.home-recruit-list__row:first-of-type {
    border-top: 0;
}

.home-recruit-list__empty {
    padding: 18px 12px;
    color: var(--site-text-secondary);
    text-align: center;
}

.home-recruit-chronicle {
    width: 100%;
    margin: 0 0 14px;
    border-collapse: collapse;
    border: 1px solid var(--site-border-soft);
    border-radius: 8px;
    overflow: hidden;
    background: rgba(42, 30, 22, .72);
}

.home-recruit-chronicle th,
.home-recruit-chronicle td {
    padding: 10px 12px;
    border-top: 1px solid var(--site-border-soft);
    color: var(--site-text-secondary);
    text-align: center;
    vertical-align: middle;
}

.home-recruit-chronicle thead th {
    border-top: 0;
    background: rgba(52, 36, 26, .88);
    color: var(--site-text);
    font-weight: 800;
}

.home-recruit-chronicle tbody tr.is-alt td {
    background: rgba(36, 26, 18, .42);
}

.home-recruit-chronicle__empty {
    padding: 16px 12px;
    color: var(--site-text-secondary);
}

.home-recruit-progress-title {
    margin: 0 0 10px;
    text-align: center;
}

.home-recruit-progress {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    max-width: 520px;
    margin: 0 auto 18px;
}

.home-recruit-progress__track {
    position: relative;
    height: 14px;
    border: 1px solid rgba(120, 78, 42, .55);
    border-radius: 999px;
    background: rgba(24, 18, 12, .88);
    overflow: hidden;
}

.home-recruit-progress__fill {
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, rgba(188, 4, 2, .85), rgba(138, 1, 8, .95));
    transition: width .25s ease;
}

.home-recruit-progress__label {
    min-width: 56px;
    color: var(--site-text);
    font-size: 13px;
    font-weight: 800;
    text-align: right;
    white-space: nowrap;
}

.home-recruit-progress--compact {
    max-width: none;
    margin: 0;
    flex: 0 0 220px;
}

.home-recruit-progress--compact .home-recruit-progress__track {
    height: 10px;
}

.home-recruit-progress--compact .home-recruit-progress__label {
    min-width: 48px;
    font-size: 11px;
}

.home-page--recruitment .pg,
.home-page--recruitment .pg td,
.home-page--recruitment .pg a {
    color: var(--site-text-secondary) !important;
}

.home-page--recruitment .pg a:hover {
    color: var(--site-link-hover) !important;
}

.home-page--recruitment .recr-awards-shell {
    margin: 0;
    padding: 0;
}

.home-recruit-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 0 0 14px;
    padding: 6px;
    border: 1px solid var(--site-border-soft);
    border-radius: 8px;
    background: rgba(24, 18, 12, .72);
}

.home-recruit-tabs__link {
    flex: 1 1 auto;
    min-width: 110px;
    padding: 9px 12px;
    border: 1px solid rgba(120, 78, 42, .45);
    border-radius: 6px;
    background: rgba(42, 30, 22, .88);
    color: var(--site-text-secondary) !important;
    font-size: 13px;
    font-weight: 800;
    text-align: center;
    text-decoration: none !important;
}

.home-recruit-tabs__link:hover,
.home-recruit-tabs__link:focus {
    border-color: rgba(106, 174, 182, .45);
    color: var(--site-link-hover) !important;
}

.home-recruit-tabs__link.is-active {
    border-color: rgba(188, 4, 2, .55);
    background: rgba(138, 1, 8, .35);
    color: var(--site-text) !important;
}

.home-recruit-awards {
    display: grid;
    gap: 12px;
}

.home-recruit-awards__empty {
    padding: 18px 12px;
    border: 1px dashed rgba(120, 78, 42, .45);
    border-radius: 8px;
    color: var(--site-text-secondary);
    text-align: center;
}

.home-recruit-award {
    border: 1px solid var(--site-border-soft);
    border-radius: 8px;
    overflow: hidden;
    background: rgba(42, 30, 22, .72);
}

.home-recruit-award.is-done {
    border-color: rgba(106, 174, 182, .35);
}

.home-recruit-award.is-pending {
    opacity: .92;
}

.home-recruit-award__head {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 10px 14px;
    padding: 12px 14px;
    border-bottom: 1px solid var(--site-border-soft);
    background: rgba(52, 36, 26, .72);
}

.home-recruit-award__title {
    margin: 0;
    color: #e8b4b4;
    font-size: 14px;
    font-weight: 800;
    line-height: 1.35;
}

.home-recruit-award.is-done .home-recruit-award__title {
    color: var(--site-text);
}

.home-recruit-award__body {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 12px 14px;
    padding: 14px;
    align-items: start;
}

.home-recruit-award__artifact {
    flex: 0 0 auto;
    width: auto !important;
    min-width: 60px;
    padding: 0 !important;
    background: none !important;
}

.home-recruit-award__artifact table.item.pctntr {
    display: block;
    float: none !important;
    width: 60px !important;
    height: 60px !important;
    margin: 0 !important;
    border-collapse: collapse;
}

.home-recruit-award__artifact table.item.pctntr td {
    display: block;
    width: 60px !important;
    height: 60px !important;
    position: relative !important;
    padding: 0 !important;
    vertical-align: top !important;
    overflow: hidden;
}

.home-recruit-award__artifact .bpdig {
    position: absolute !important;
    left: 2px !important;
    right: auto !important;
    bottom: 2px !important;
    top: auto !important;
    z-index: 2;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    width: auto !important;
    max-width: calc(100% - 4px);
    height: 16px !important;
    margin: 0 !important;
    padding: 0 4px !important;
    border: 1px solid #6f4a24 !important;
    border-radius: 2px;
    background-color: #6e534c !important;
    color: #f6d9a6 !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    text-align: center;
    box-sizing: border-box;
    white-space: nowrap;
}

.home-recruit-award__desc {
    padding: 0 !important;
    color: var(--site-text-secondary) !important;
    background: none !important;
    font-size: 14px;
    line-height: 1.55;
}

.home-recruit-award__desc b,
.home-recruit-award__desc strong {
    color: var(--site-text);
}

@media (max-width: 640px) {
    .home-recruit-progress {
        grid-template-columns: 1fr;
    }

    .home-recruit-progress__label {
        text-align: center;
    }

    .home-recruit-award__head {
        flex-direction: column;
        align-items: stretch;
    }

    .home-recruit-progress--compact {
        flex: 1 1 auto;
        width: 100%;
    }

    .home-recruit-award__body {
        grid-template-columns: 1fr;
        justify-items: center;
        text-align: center;
    }
}

/* ====== Bank pay offline (order.php popup) ====== */

.home-page--bank-pay {
    min-height: 100vh;
}

.home-page--bank-pay .home-topbar--solo {
    display: flex;
    justify-content: center;
    align-items: center;
    grid-template-columns: none;
    width: 100%;
}

.home-page--bank-pay .home-topbar--solo .home-brand {
    display: flex;
    justify-content: center;
    width: 100%;
    margin: 0 auto;
    text-align: center;
}

.home-page--bank-pay .home-topbar--solo .home-brand img {
    width: min(220px, 72vw);
    height: auto;
    margin: 0 auto;
}

.home-bank-pay-layout {
    position: relative;
    z-index: 1;
    padding: 0 16px 32px;
}

.home-bank-pay-layout__content {
    width: min(100%, 560px);
    margin: 0 auto;
}

.home-bank-pay-card {
    border: 1px solid var(--site-border-soft);
    border-radius: 8px;
    background: var(--site-card-soft);
    box-shadow: 0 20px 52px var(--site-shadow);
    overflow: hidden;
}

.home-bank-pay-card__title {
    margin: 0;
    padding: 12px 16px;
    border-bottom: 1px solid var(--site-border-soft);
    background: rgba(52, 36, 26, .88);
    color: var(--site-accent);
    font-size: 13px;
    font-weight: 900;
    letter-spacing: .04em;
    line-height: 1.3;
    text-align: center;
    text-transform: uppercase;
}

.home-bank-pay-card__body,
.home-page--bank-pay .bank-offline {
    padding: 16px;
    color: var(--site-text-secondary);
    text-align: center;
}

.home-page--bank-pay .bank-offline p,
.home-page--bank-pay .bank-offline li,
.home-page--bank-pay .bank-offline b {
    color: inherit;
}

.home-page--bank-pay .bank-offline__order {
    margin: 0 0 8px;
    color: var(--site-text-secondary);
    font-size: 14px;
    line-height: 1.45;
}

.home-page--bank-pay .bank-offline__order b {
    color: var(--site-text);
}

.home-page--bank-pay .bank-offline__lead {
    margin: 0 0 12px;
    color: var(--site-text-secondary);
    font-size: 14px;
    line-height: 1.5;
}

.home-page--bank-pay .bank-offline__product {
    margin: 0 auto 12px;
    padding: 12px 14px;
    border: 1px solid var(--site-border-soft);
    border-radius: 8px;
    background: rgba(24, 18, 12, .72);
    color: var(--site-text-secondary);
    font-size: 14px;
    line-height: 1.45;
    max-width: 480px;
}

.home-page--bank-pay .bank-offline__product b {
    color: var(--site-text);
    font-size: 16px;
}

.home-page--bank-pay .bank-offline__gold {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    white-space: nowrap;
    color: var(--site-accent);
    font-weight: 800;
}

.home-page--bank-pay .bank-offline__dmd-icon {
    width: 11px;
    height: 11px;
    margin: 0;
    border: 0;
    vertical-align: middle;
}

.home-page--bank-pay .bank-offline__expire {
    margin: 0 0 14px;
    color: var(--site-link);
    font-size: 13px;
    font-weight: 800;
}

.home-page--bank-pay .bank-offline__box {
    margin: 0 auto 14px;
    padding: 14px 12px;
    border: 1px solid var(--site-border-soft);
    border-radius: 8px;
    background: rgba(24, 18, 12, .72);
    max-width: 480px;
    text-align: center;
}

.home-page--bank-pay .bank-offline__row {
    margin: 0 auto 12px;
    max-width: 440px;
}

.home-page--bank-pay .bank-offline__label {
    margin-bottom: 6px;
    color: var(--site-text);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .03em;
    text-transform: uppercase;
}

.home-page--bank-pay .bank-offline__value span {
    display: block;
    margin: 0 auto 8px;
    padding: 10px 12px;
    border: 1px dashed rgba(106, 174, 182, .45);
    border-radius: 6px;
    background: rgba(42, 30, 22, .92);
    color: var(--site-link) !important;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.35;
    word-break: break-all;
}

.home-page--bank-pay .bank-offline__value .home-button {
    min-height: 34px;
    padding: 6px 12px;
    font-size: 12px;
}

.home-page--bank-pay .bank-offline__note {
    margin: 12px auto 0;
    max-width: 440px;
    color: var(--site-text-secondary);
    font-size: 13px;
    line-height: 1.5;
    text-align: center;
}

.home-page--bank-pay .bank-offline__note--reuse {
    margin: 0 auto 10px;
    padding: 8px 12px;
    border: 1px solid rgba(106, 174, 182, .35);
    border-radius: 6px;
    background: rgba(75, 148, 158, .12);
    color: var(--site-link);
    font-weight: 800;
    max-width: 480px;
}

.home-page--bank-pay .bank-offline__list {
    display: inline-block;
    margin: 12px auto 0;
    padding-left: 18px;
    max-width: 440px;
    color: var(--site-text-secondary);
    text-align: left;
}

.home-page--bank-pay .bank-offline__list li {
    margin-bottom: 6px;
    line-height: 1.45;
}

.home-page--bank-pay .bank-offline__banner {
    display: block;
    margin: 0 auto 12px;
    max-width: 180px;
    max-height: 48px;
    width: auto;
    height: auto;
}

.home-page--bank-pay .bank-offline__actions {
    margin-top: 16px;
    text-align: center;
}

.home-page--bank-pay .bank-offline__error {
    margin: 10px 0 16px;
    color: var(--site-danger);
    font-size: 15px;
    font-weight: 800;
    line-height: 1.5;
}

.home-page--bank-pay .bank-offline__qr {
    margin: 16px auto 8px;
    text-align: center;
}

.home-page--bank-pay .bank-offline__qr img {
    display: block;
    margin: 0 auto;
    padding: 8px;
    border: 1px solid var(--site-border-soft);
    border-radius: 8px;
    background: #fff;
}

.home-page--bank-pay .bank-offline__qr-hint {
    margin-top: 8px;
    color: var(--site-text-secondary);
    font-size: 12px;
    font-weight: 700;
}

/* ====== Register page ====== */

.home-nav__cta--active {
    border-color: rgba(75, 148, 158, .55) !important;
    background: rgba(75, 148, 158, .22) !important;
    color: var(--site-text) !important;
    pointer-events: none;
}

.home-register-layout {
    position: relative;
    z-index: 1;
    padding: 0 16px 36px;
}

.home-register-layout__content {
    width: min(100%, 1120px);
    margin: 0 auto;
}

.home-register-grid {
    display: grid;
    grid-template-columns: minmax(320px, 500px) minmax(0, 1fr);
    gap: 18px;
    align-items: stretch;
}

.home-register-canvas-panel {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 16px;
    border: 1px solid var(--site-border-soft);
    border-radius: 8px;
    background: rgba(12, 10, 8, .94);
    box-shadow: 0 20px 52px var(--site-shadow);
}

.home-register-fields {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 0;
}

.home-register-canvas-panel__title {
    margin: 0 0 4px;
    color: var(--site-text);
    font-size: 20px;
    font-weight: 800;
}

.home-register-canvas-panel__hint {
    margin: 0 0 14px;
    color: var(--site-text-secondary);
    font-size: 13px;
}

.home-register-picker {
    display: grid;
    gap: 8px;
    margin: 0 0 12px;
}

.home-register-picker__label {
    color: var(--site-text);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .03em;
    text-transform: uppercase;
}

.home-register-picker__group {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.home-register-picker__btn {
    flex: 1 1 120px;
    min-height: 38px;
    padding: 8px 12px;
    border: 1px solid rgba(120, 78, 42, .55);
    border-radius: 6px;
    background: rgba(42, 30, 22, .92);
    color: var(--site-text-secondary);
    font: inherit;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
}

.home-register-picker__btn:hover,
.home-register-picker__btn:focus {
    border-color: rgba(106, 174, 182, .55);
    color: var(--site-link-hover);
}

.home-register-picker__btn.is-active {
    border-color: rgba(75, 148, 158, .55);
    background: rgba(75, 148, 158, .18);
    color: var(--site-text);
}

.home-register-canvas-wrap {
    position: relative;
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    min-height: 420px;
}

.home-register-canvas {
    flex: 1 1 auto;
    min-height: 420px;
    border: 1px solid rgba(75, 148, 158, .18);
    border-radius: 8px;
    background: #0a0908;
    overflow: hidden;
}

.home-register-canvas canvas {
    display: block;
    margin: 0;
}

.home-register-canvas-ui {
    position: absolute;
    top: 28px;
    right: 10px;
    z-index: 2;
    display: grid;
    gap: 12px;
    width: min(100%, 210px);
    pointer-events: none;
}

.home-register-canvas-row {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr) 34px;
    align-items: center;
    gap: 6px;
    pointer-events: auto;
}

.home-register-canvas-row__label {
    color: var(--site-text);
    font-size: 12px;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
}

.home-register-canvas-arrow {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    padding: 0;
    border: 1px solid rgba(106, 174, 182, .42);
    border-radius: 8px;
    background: linear-gradient(180deg, rgba(52, 40, 30, .96) 0%, rgba(28, 22, 18, .96) 100%);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .06);
    color: #8ecfd8;
    font: inherit;
    line-height: 0;
    cursor: pointer;
}

.home-register-canvas-arrow::before {
    content: '';
    display: block;
    width: 8px;
    height: 8px;
    border-bottom: 2px solid currentColor;
    border-left: 2px solid currentColor;
}

.home-register-canvas-arrow--prev::before {
    transform: rotate(45deg);
    margin-left: 2px;
}

.home-register-canvas-arrow--next::before {
    transform: rotate(-135deg);
    margin-right: 2px;
}

.home-register-canvas-arrow:hover,
.home-register-canvas-arrow:focus {
    border-color: rgba(106, 174, 182, .72);
    background: linear-gradient(180deg, rgba(75, 148, 158, .28) 0%, rgba(28, 22, 18, .96) 100%);
    color: #c8eef2;
}

.home-register-canvas-arrow:active {
    transform: translateY(1px);
}

.home-register-canvas__footer {
    display: flex;
    justify-content: center;
    flex-shrink: 0;
    margin-top: auto;
    padding-top: 12px;
}

.home-register-random {
    min-width: 220px;
}

.home-register-card {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    height: 100%;
}

.home-register-card__title {
    margin: 0;
    padding: 12px 16px;
    border-bottom: 1px solid var(--site-border-soft);
    background: rgba(52, 36, 26, .88);
    color: var(--site-accent);
    font-size: 13px;
    font-weight: 900;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.home-register-card__body {
    padding: 16px;
}

.home-register-field {
    display: grid;
    gap: 6px;
    margin: 0 0 14px;
}

.home-register-field__label {
    color: var(--site-text);
    font-size: 14px;
    font-weight: 700;
}

.home-register-field__label--accent {
    color: var(--site-danger);
}

.home-register-field__error {
    min-height: 18px;
    color: var(--site-danger);
    font-size: 13px;
    font-weight: 700;
}

.home-register-field__input {
    width: 100%;
    min-height: 42px;
    padding: 10px 12px;
    border: 1px solid rgba(120, 78, 42, .55);
    border-radius: 6px;
    background: var(--site-input);
    color: var(--site-text);
    font: inherit;
}

.home-register-field__input:focus {
    outline: none;
    border-color: rgba(106, 174, 182, .55);
}

.home-register-referrer {
    margin: 0 0 14px;
    padding: 12px;
    border: 1px solid var(--site-border-soft);
    border-radius: 8px;
    background: rgba(24, 18, 12, .72);
}

.home-register-referrer__hint {
    margin: 8px 0 0;
    color: var(--site-text-secondary);
    font-size: 13px;
}

.home-register-nick-help {
    margin: -6px 0 14px;
    color: var(--site-text-muted);
    font-size: 12px;
    line-height: 1.5;
}

.home-register-nick-examples {
    padding: 10px 12px;
    border: 1px dashed rgba(120, 78, 42, .45);
    border-radius: 6px;
    background: rgba(24, 18, 12, .72);
    color: var(--site-text-secondary);
    font-size: 13px;
}

.home-register-nick-examples:empty {
    display: none;
}

.home-register-nick-suggest {
    color: var(--site-link) !important;
    font-weight: 700;
}

.home-register-agreement {
    margin: 0 0 16px;
    color: var(--site-text-secondary);
    font-size: 13px;
    line-height: 1.55;
}

.home-register-agreement a {
    color: var(--site-link) !important;
}

.home-register-actions {
    display: flex;
    justify-content: center;
}

.home-register-submit {
    min-width: 220px;
}

@media (max-width: 960px) {
    .home-register-grid {
        grid-template-columns: 1fr;
    }

    .home-register-canvas {
        min-height: 380px;
    }
}

@media (max-width: 640px) {
    .home-register-canvas-ui {
        position: static;
        width: 100%;
        margin-top: 10px;
        pointer-events: auto;
    }

    .home-register-canvas-wrap {
        display: grid;
        gap: 10px;
    }

    .home-register-canvas__footer .home-button,
    .home-register-random {
        width: 100%;
    }

    .home-register-submit {
        width: 100%;
    }
}
