/* style.css */
* {
    box-sizing: border-box;
}

/* Gruppenanzeige: feste Sidebar-Geometrie, Farben liegen in theme-base.css. */
.group-live-root {
    display: block;
    width: 250px;
}

.group-live-root:empty {
    display: none;
}

.group-live-root form,
.profile-group-invite-form {
    margin: 0;
}

.group-panel-title span {
    float: right;
    font-size: 12px;
    line-height: 18px;
}

.group-member-list {
    width: 248px;
}

.group-member-card {
    display: grid;
    grid-template-columns: 27px 60px 161px;
    width: 248px;
    height: 88px;
    overflow: hidden;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    box-sizing: border-box;
}

.group-member-state {
    display: flex;
    width: 27px;
    height: 87px;
    padding-top: 7px;
    flex-direction: column;
    align-items: center;
    gap: 5px;
    box-sizing: border-box;
}

.group-online-light {
    display: block;
    width: 10px;
    height: 10px;
    border-radius: 50%;
}

.group-leader-crown {
    display: block;
    width: 20px;
    height: 20px;
    padding: 0;
    font-size: 18px;
    line-height: 20px;
    text-align: center;
}

.group-member-admin {
    display: flex;
    width: 22px;
    flex-direction: column;
    gap: 4px;
}

.group-icon-action {
    display: block;
    width: 22px;
    height: 22px;
    min-width: 0;
    margin: 0;
    padding: 0;
    border-width: 1px;
    border-style: solid;
    font-size: 17px;
    font-weight: 900;
    line-height: 19px;
    text-align: center;
    cursor: pointer;
    box-sizing: border-box;
}

.group-member-avatar-wrap {
    position: relative;
    display: block;
    width: 60px;
    height: 87px;
    overflow: hidden;
}

.group-member-avatar {
    display: block;
    width: 60px;
    height: 87px;
    object-fit: cover;
}

.group-member-avatar-wrap.is-team::after {
    position: absolute;
    right: 0;
    bottom: 0;
    display: block;
    height: 14px;
    padding: 0 3px;
    content: "DB-RG";
    font-size: 7px;
    font-weight: 900;
    line-height: 14px;
}

.group-member-data {
    width: 161px;
    height: 87px;
    padding: 8px 8px 0;
    box-sizing: border-box;
}

.group-member-head {
    display: flex;
    width: 145px;
    height: 28px;
    margin-bottom: 7px;
    align-items: center;
    justify-content: space-between;
    gap: 5px;
}

.group-member-head strong {
    display: block;
    width: 103px;
    overflow: hidden;
    font-size: 13px;
    line-height: 18px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.group-member-head span {
    display: block;
    width: 37px;
    font-size: 10px;
    font-weight: 900;
    line-height: 18px;
    text-align: right;
    white-space: nowrap;
}

.group-member-bar {
    position: relative;
    display: block;
    width: 145px;
    height: 17px;
    margin-bottom: 4px;
    overflow: hidden;
    border-width: 1px;
    border-style: solid;
    box-sizing: border-box;
}

.group-member-bar > span {
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    height: 15px;
}

.group-member-bar > strong {
    position: relative;
    z-index: 1;
    display: block;
    width: 143px;
    height: 15px;
    overflow: hidden;
    font-size: 8px;
    line-height: 15px;
    text-align: center;
    white-space: nowrap;
}

.group-panel-footer {
    width: 248px;
    padding: 8px;
    box-sizing: border-box;
}

.group-leave-button,
.group-invitation-actions button {
    display: block;
    height: 32px;
    margin: 0;
    padding: 0 8px;
    border-width: 1px;
    border-style: solid;
    font-size: 11px;
    font-weight: 900;
    line-height: 30px;
    text-align: center;
    cursor: pointer;
    box-sizing: border-box;
}

.group-leave-button {
    width: 232px;
}

.group-invitation-card {
    display: block;
    width: 228px;
    padding: 12px 10px;
    border-width: 1px;
    border-style: solid;
    box-sizing: border-box;
}

.group-invitation-list {
    display: grid;
    width: 248px;
    padding: 10px;
    gap: 10px;
    box-sizing: border-box;
}

.group-invitation-card > strong,
.group-invitation-card > span {
    display: block;
    width: 206px;
    overflow-wrap: anywhere;
}

.group-invitation-card > strong {
    margin-bottom: 4px;
    font-size: 14px;
}

.group-invitation-card > span {
    font-size: 11px;
    line-height: 16px;
}

.group-invitation-actions {
    display: grid;
    grid-template-columns: 99px 99px;
    width: 206px;
    margin-top: 10px;
    gap: 8px;
}

.group-invitation-actions button {
    width: 99px;
}

.profile-action-rail .profile-group-invite-form {
    display: block;
    width: 70px;
    height: 62px;
    margin: 0 auto 8px;
}

.profile-action-rail .profile-action-group {
    position: relative;
    display: block;
    width: 70px;
    height: 62px;
    margin: 0;
    padding: 0;
    overflow: hidden;
    border-width: 0;
    border-radius: 4px;
    font-size: 0;
    cursor: pointer;
}

.profile-action-rail .profile-action-group::before,
.profile-action-rail .profile-action-group::after {
    position: absolute;
    display: block;
    content: "";
}

.profile-action-rail .profile-action-group::before {
    left: 17px;
    top: 20px;
    width: 13px;
    height: 13px;
    border-radius: 50%;
    box-shadow: 22px 0 0 currentColor;
    background: currentColor;
}

.profile-action-rail .profile-action-group::after {
    left: 12px;
    top: 36px;
    width: 24px;
    height: 13px;
    border-radius: 14px 14px 3px 3px;
    box-shadow: 22px 0 0 currentColor;
    background: currentColor;
}

.profile-action-rail .profile-action-group:disabled {
    cursor: not-allowed;
    opacity: .42;
}

/* Die aktive Gruppe ist eine feste Außenleiste rechts neben der Navigation. */
.right-column {
    position: relative;
    overflow: visible;
}

.right-column .group-panel {
    position: absolute;
    z-index: 12;
    left: 250px;
    top: 0;
    display: block;
    width: 142px;
    height: 570px;
    margin: 0;
    padding: 0;
    overflow: hidden;
    border-left-width: 0;
    border-radius: 0 7px 7px 0;
}

.right-column .group-panel > .group-panel-title {
    display: block;
    width: 141px;
    height: 25px;
    padding: 0;
    font-size: 9px;
    line-height: 24px;
    text-align: center;
    text-transform: uppercase;
}

.right-column .group-panel > .group-panel-title span {
    float: none;
    display: block;
    width: 141px;
    height: 24px;
    font-size: 9px;
    line-height: 24px;
    text-align: center;
}

.right-column .group-panel .group-member-list {
    display: block;
    width: 141px;
    height: 510px;
    padding: 5px;
    overflow: hidden;
    box-sizing: border-box;
}

.right-column .group-panel .group-member-card {
    position: relative;
    display: block;
    width: 130px;
    height: 124px;
    margin: 0 0 4px;
    overflow: hidden;
    border-width: 1px;
    border-style: solid;
    border-radius: 6px;
    box-sizing: border-box;
}

.right-column .group-panel .group-member-card:last-child {
    margin-bottom: 0;
}

.right-column .group-panel .group-member-name {
    display: block;
    width: 128px;
    height: 17px;
    padding: 0 4px;
    overflow: hidden;
    font-size: 10px;
    font-weight: 900;
    line-height: 17px;
    text-align: center;
    text-overflow: ellipsis;
    white-space: nowrap;
    box-sizing: border-box;
    text-decoration: none;
}

.right-column .group-panel .group-member-name:hover {
    text-decoration: none;
}

.right-column .group-panel .group-member-card-body {
    position: relative;
    display: grid;
    grid-template-columns: 66px 47px;
    width: 128px;
    height: 83px;
    padding: 2px 5px;
    gap: 5px;
    overflow: hidden;
    border: 0;
    border-radius: 0;
    box-sizing: border-box;
}

.right-column .group-panel .group-member-visual {
    display: block;
    width: 66px;
    height: 79px;
}

.right-column .group-panel .group-member-state {
    position: absolute;
    z-index: 4;
    right: 5px;
    top: 2px;
    display: flex;
    width: 47px;
    height: 79px;
    padding: 0;
    gap: 3px;
    background: transparent;
    justify-content: flex-start;
}

.right-column .group-panel .group-member-level {
    display: block;
    width: 47px;
    height: 18px;
    overflow: hidden;
    font-size: 9px;
    font-weight: 900;
    line-height: 18px;
    text-align: center;
    white-space: nowrap;
}

.right-column .group-panel .group-online-light {
    width: 12px;
    height: 12px;
    margin: 1px auto 0;
}

.right-column .group-panel .group-leader-crown {
    width: 24px;
    height: 24px;
    margin: 3px auto 0;
    font-size: 20px;
    line-height: 24px;
}

.right-column .group-panel .group-member-admin {
    width: 24px;
    margin: 1px auto 0;
    gap: 4px;
}

.right-column .group-panel .group-icon-action {
    width: 24px;
    height: 20px;
    font-size: 15px;
    line-height: 18px;
}

.right-column .group-panel .group-member-avatar-wrap,
.right-column .group-panel .group-member-avatar {
    width: 66px;
    height: 64px;
}

.right-column .group-panel .group-member-avatar-wrap {
    position: relative;
    z-index: 1;
    left: 0;
    top: 0;
}

.right-column .group-panel .group-member-avatar {
    object-fit: cover;
    border-radius: 0;
}

.right-column .group-panel .group-member-avatar-wrap.is-team::after {
    height: 10px;
    padding: 0 2px;
    font-size: 5px;
    line-height: 10px;
}

.right-column .group-panel .group-member-bars {
    display: block;
    width: 66px;
    height: 14px;
    margin-top: 1px;
}

.right-column .group-panel .group-member-bar {
    width: 66px;
    height: 6px;
    margin: 0 0 1px;
    border-width: 0;
}

.right-column .group-panel .group-member-bar > span {
    height: 6px;
}

.right-column .group-panel .group-member-bar > strong {
    display: none;
}

.right-column .group-panel .group-panel-footer {
    position: absolute;
    left: 6px;
    bottom: 4px;
    width: 129px;
    height: 27px;
    padding: 0;
}

.right-column .group-panel .group-member-footer {
    display: block;
    width: 128px;
    height: 22px;
    overflow: hidden;
}

.right-column .group-panel .group-member-location {
    width: 128px;
    height: 22px;
    margin: 0;
    padding: 0 4px;
    overflow: hidden;
    font-size: 8px;
    font-weight: 800;
    line-height: 22px;
    text-align: center;
    text-overflow: ellipsis;
    white-space: nowrap;
    box-sizing: border-box;
}

.right-column .group-panel .group-member-ban {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    width: 128px;
    height: 11px;
    min-height: 0;
    margin: 0;
    background: rgba(0, 0, 0, 0.38);
    font-size: 8px;
    line-height: 1;
    text-align: center;
    text-transform: uppercase;
}

.right-column .group-panel .group-member-footer.has-ban .group-member-location {
    height: 11px;
    line-height: 11px;
}

.right-column .group-panel .group-member-ban time {
    color: var(--accent);
    font-weight: 700;
}

.fight-penalty-content {
    padding: 12px;
    text-align: center;
}

.fight-penalty-content p {
    margin: 0 0 9px;
    font-size: 12px;
    line-height: 1.45;
}

.fight-penalty-content time {
    display: block;
    color: var(--accent);
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
}

.right-column .group-panel .group-leave-button {
    width: 129px;
    height: 27px;
    padding: 0;
    font-size: 9px;
    line-height: 25px;
}

html {
    height: 100%;
    overflow-y: scroll;
}

body {
    margin: 0;
    font-family: "Roboto Condensed", "Segoe UI", Arial, Helvetica, sans-serif;
    font-size: 14px;
    line-height: 1.35;
}

a {
    text-decoration: none;
}

a:focus,
a:focus-visible,
button:focus,
button:focus-visible {
    outline: none;
}

.page-shell {
    width: 1526px;
    margin: 0 auto;
    padding: 0 20px 8px 20px;
}

.site-banner {
    position: relative;
    height: 176px;
    padding: 0;
    border-bottom-width: 0;
    border-bottom-style: solid;
    overflow: hidden;
}

.site-banner-image {
    position: absolute;
    left: 0;
    top: 0;
    width: 1486px;
    height: 176px;
    object-fit: fill;
}

.site-banner-brand {
    position: absolute;
    left: 42px;
    top: 24px;
    z-index: 2;
    width: 440px;
    height: 96px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    pointer-events: none;
}

.site-banner-brand-title {
    display: block;
    height: 58px;
    font-family: "Arial Narrow", Impact, Arial, Helvetica, sans-serif;
    font-size: 54px;
    font-weight: 900;
    line-height: 56px;
    letter-spacing: 0;
    text-transform: uppercase;
}

.site-banner-brand-subtitle {
    display: block;
    height: 28px;
    margin-top: 2px;
    font-size: 20px;
    font-weight: 900;
    line-height: 26px;
}

.banner-player-card {
    position: absolute;
    right: 0;
    top: 51px;
    z-index: 3;
    display: grid;
    grid-template-columns: 36px 160px 264px;
    grid-template-rows: 25px 24px 24px 24px 63px;
    width: 460px;
    height: 160px;
    padding: 0;
    border-width: 0;
    border-style: solid;
    overflow: hidden;
    clip-path: polygon(36px 0, 460px 0, 460px 160px, 0 160px);
    transform: scale(.75);
    transform-origin: top right;
}

.banner-player-card::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    z-index: 1;
    width: 36px;
    height: 160px;
    pointer-events: none;
    background: transparent;
}

.banner-player-card::after {
    content: "";
    position: absolute;
    left: 32px;
    top: 0;
    z-index: 4;
    width: 4px;
    height: 166px;
    transform: rotate(13deg);
    transform-origin: 0 0;
    pointer-events: none;
}

.banner-player-card-border {
    position: absolute;
    left: 0;
    top: 0;
    z-index: 5;
    width: 460px;
    height: 160px;
    pointer-events: none;
    border-width: 2px;
    border-style: solid;
    clip-path: polygon(36px 0, 460px 0, 460px 160px, 0 160px);
}

.banner-player-avatar {
    position: relative;
    grid-column: 2;
    grid-row: 1 / span 5;
    z-index: 2;
    width: 160px;
    height: 160px;
    overflow: hidden;
    border-right-width: 1px;
    border-right-style: solid;
}

.banner-player-avatar img {
    display: block;
    width: 160px;
    height: 160px;
    margin-top: 0;
    object-fit: cover;
}

.banner-player-title {
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    width: 156px;
    height: 24px;
    overflow: hidden;
    font-size: 12px;
    font-weight: 900;
    line-height: 24px;
    text-align: center;
}

.banner-player-role {
    position: absolute;
    left: 0;
    bottom: 0;
    display: block;
    width: 160px;
    height: 24px;
    padding-left: 0;
    overflow: hidden;
    font-size: 13px;
    font-weight: 900;
    line-height: 24px;
    text-align: center;
    z-index: 3;
}

.banner-player-head {
    display: grid;
    grid-column: 3;
    grid-row: 1;
    grid-template-columns: 132px 132px;
    width: 264px;
    height: 25px;
}

.banner-player-head strong {
    display: block;
    width: 132px;
    height: 25px;
    overflow: hidden;
    border-right-width: 1px;
    border-right-style: solid;
    font-size: 13px;
    font-weight: 900;
    line-height: 25px;
    text-align: center;
}

.banner-player-head span {
    display: block;
    width: 132px;
    height: 25px;
    padding-top: 0;
    overflow: hidden;
    font-size: 13px;
    font-weight: 900;
    line-height: 25px;
    text-align: center;
}

.banner-player-bar {
    position: relative;
    width: 264px;
    height: 24px;
    margin: 0;
    overflow: hidden;
    border-top-width: 1px;
    border-top-style: solid;
}

.banner-player-lp {
    grid-column: 3;
    grid-row: 2;
}

.banner-player-kp {
    grid-column: 3;
    grid-row: 3;
}

.banner-player-fill {
    display: block;
    height: 23px;
    overflow: hidden;
}

.banner-player-bar strong {
    position: absolute;
    left: 0;
    top: 1px;
    z-index: 2;
    display: block;
    width: 264px;
    height: 23px;
    overflow: hidden;
    font-size: 12px;
    font-weight: 900;
    line-height: 23px;
    text-align: center;
}

.banner-player-row {
    grid-column: 3;
    width: 264px;
    height: 24px;
    overflow: hidden;
    border-top-width: 1px;
    border-top-style: solid;
    font-size: 12px;
    font-weight: 900;
    line-height: 23px;
    text-align: center;
}

.banner-player-zeni {
    grid-row: 4;
}

.banner-player-meta {
    grid-column: 3;
    grid-row: 5;
    display: grid;
    grid-template-columns: 132px 132px;
    grid-template-rows: 21px 21px 21px;
    width: 264px;
    height: 63px;
}

.banner-player-meta span {
    display: block;
    width: 132px;
    height: 21px;
    overflow: hidden;
    border-top-width: 1px;
    border-top-style: solid;
    font-size: 10px;
    font-weight: 900;
    line-height: 20px;
    text-align: center;
    text-transform: uppercase;
}

.banner-player-meta span:nth-child(odd) {
    border-right-width: 1px;
    border-right-style: solid;
}


.top-nav {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    width: 1486px;
    height: 46px;
    margin-bottom: 16px;
    border-width: 1px;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-style: solid;
}

.top-nav a {
    position: relative;
    display: block;
    height: 44px;
    padding: 14px 12px 0 36px;
    border-right-width: 1px;
    border-right-style: solid;
    font-size: 15px;
    font-weight: 900;
    text-align: center;
    text-transform: uppercase;
}

.top-nav a[data-icon]::before {
    content: "";
    position: absolute;
    left: 18px;
    top: 14px;
    width: 16px;
    height: 16px;
    -webkit-mask-image: var(--menu-icon);
    mask-image: var(--menu-icon);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: 16px 16px;
    mask-size: 16px 16px;
}

.page-grid {
    display: grid;
    grid-template-columns: 250px 950px 250px;
    column-gap: 18px;
    align-items: stretch;
    width: 1486px;
    overflow: visible;
}

.left-column,
.right-column {
    width: 250px;
    padding: 0;
}

.left-column {
    grid-column: 1;
    grid-row: 1;
    border-right-width: 0;
    border-right-style: none;
}

.right-column {
    grid-column: 3;
    grid-row: 1;
    border-left-width: 0;
    border-left-style: none;
}

.middle-column {
    grid-column: 2;
    grid-row: 1;
    width: 950px;
    padding: 0;
    overflow: hidden;
}

.side-box {
    margin-bottom: 16px;
    border-width: 1px;
    border-style: solid;
}

.side-title {
    margin-bottom: 0;
    height: 38px;
    padding: 9px 14px 0 14px;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    font-size: 16px;
    font-weight: 900;
    text-transform: uppercase;
}

.side-box a {
    display: block;
    margin: 3px 0;
    font-size: 12px;
    font-weight: 700;
}

.bar-fill-p0 { width: 0%; }
.bar-fill-p1 { width: 1%; }
.bar-fill-p2 { width: 2%; }
.bar-fill-p3 { width: 3%; }
.bar-fill-p4 { width: 4%; }
.bar-fill-p5 { width: 5%; }
.bar-fill-p6 { width: 6%; }
.bar-fill-p7 { width: 7%; }
.bar-fill-p8 { width: 8%; }
.bar-fill-p9 { width: 9%; }
.bar-fill-p10 { width: 10%; }
.bar-fill-p11 { width: 11%; }
.bar-fill-p12 { width: 12%; }
.bar-fill-p13 { width: 13%; }
.bar-fill-p14 { width: 14%; }
.bar-fill-p15 { width: 15%; }
.bar-fill-p16 { width: 16%; }
.bar-fill-p17 { width: 17%; }
.bar-fill-p18 { width: 18%; }
.bar-fill-p19 { width: 19%; }
.bar-fill-p20 { width: 20%; }
.bar-fill-p21 { width: 21%; }
.bar-fill-p22 { width: 22%; }
.bar-fill-p23 { width: 23%; }
.bar-fill-p24 { width: 24%; }
.bar-fill-p25 { width: 25%; }
.bar-fill-p26 { width: 26%; }
.bar-fill-p27 { width: 27%; }
.bar-fill-p28 { width: 28%; }
.bar-fill-p29 { width: 29%; }
.bar-fill-p30 { width: 30%; }
.bar-fill-p31 { width: 31%; }
.bar-fill-p32 { width: 32%; }
.bar-fill-p33 { width: 33%; }
.bar-fill-p34 { width: 34%; }
.bar-fill-p35 { width: 35%; }
.bar-fill-p36 { width: 36%; }
.bar-fill-p37 { width: 37%; }
.bar-fill-p38 { width: 38%; }
.bar-fill-p39 { width: 39%; }
.bar-fill-p40 { width: 40%; }
.bar-fill-p41 { width: 41%; }
.bar-fill-p42 { width: 42%; }
.bar-fill-p43 { width: 43%; }
.bar-fill-p44 { width: 44%; }
.bar-fill-p45 { width: 45%; }
.bar-fill-p46 { width: 46%; }
.bar-fill-p47 { width: 47%; }
.bar-fill-p48 { width: 48%; }
.bar-fill-p49 { width: 49%; }
.bar-fill-p50 { width: 50%; }
.bar-fill-p51 { width: 51%; }
.bar-fill-p52 { width: 52%; }
.bar-fill-p53 { width: 53%; }
.bar-fill-p54 { width: 54%; }
.bar-fill-p55 { width: 55%; }
.bar-fill-p56 { width: 56%; }
.bar-fill-p57 { width: 57%; }
.bar-fill-p58 { width: 58%; }
.bar-fill-p59 { width: 59%; }
.bar-fill-p60 { width: 60%; }
.bar-fill-p61 { width: 61%; }
.bar-fill-p62 { width: 62%; }
.bar-fill-p63 { width: 63%; }
.bar-fill-p64 { width: 64%; }
.bar-fill-p65 { width: 65%; }
.bar-fill-p66 { width: 66%; }
.bar-fill-p67 { width: 67%; }
.bar-fill-p68 { width: 68%; }
.bar-fill-p69 { width: 69%; }
.bar-fill-p70 { width: 70%; }
.bar-fill-p71 { width: 71%; }
.bar-fill-p72 { width: 72%; }
.bar-fill-p73 { width: 73%; }
.bar-fill-p74 { width: 74%; }
.bar-fill-p75 { width: 75%; }
.bar-fill-p76 { width: 76%; }
.bar-fill-p77 { width: 77%; }
.bar-fill-p78 { width: 78%; }
.bar-fill-p79 { width: 79%; }
.bar-fill-p80 { width: 80%; }
.bar-fill-p81 { width: 81%; }
.bar-fill-p82 { width: 82%; }
.bar-fill-p83 { width: 83%; }
.bar-fill-p84 { width: 84%; }
.bar-fill-p85 { width: 85%; }
.bar-fill-p86 { width: 86%; }
.bar-fill-p87 { width: 87%; }
.bar-fill-p88 { width: 88%; }
.bar-fill-p89 { width: 89%; }
.bar-fill-p90 { width: 90%; }
.bar-fill-p91 { width: 91%; }
.bar-fill-p92 { width: 92%; }
.bar-fill-p93 { width: 93%; }
.bar-fill-p94 { width: 94%; }
.bar-fill-p95 { width: 95%; }
.bar-fill-p96 { width: 96%; }
.bar-fill-p97 { width: 97%; }
.bar-fill-p98 { width: 98%; }
.bar-fill-p99 { width: 99%; }
.bar-fill-p100 { width: 100%; }

.bb-align-left { text-align: left; }
.bb-align-center { text-align: center; }
.bb-align-right { text-align: right; }
.bb-align-justify { text-align: justify; }
.bb-indent { margin-left: 28px; }
.bb-color-black { color: black; }
.bb-color-white { color: white; }
.bb-color-red { color: red; }
.bb-color-green { color: green; }
.bb-color-blue { color: blue; }
.bb-color-yellow { color: yellow; }
.bb-color-orange { color: orange; }
.bb-color-purple { color: purple; }
.bb-color-pink { color: pink; }
.bb-color-gray { color: gray; }
.bb-color-grey { color: grey; }
.bb-color-silver { color: silver; }
.bb-color-maroon { color: maroon; }
.bb-color-olive { color: olive; }
.bb-color-navy { color: navy; }
.bb-color-teal { color: teal; }
.bb-color-aqua { color: aqua; }
.bb-color-fuchsia { color: fuchsia; }
.bb-color-lime { color: lime; }
.bb-bgcolor-black { background-color: black; }
.bb-bgcolor-white { background-color: white; }
.bb-bgcolor-red { background-color: red; }
.bb-bgcolor-green { background-color: green; }
.bb-bgcolor-blue { background-color: blue; }
.bb-bgcolor-yellow { background-color: yellow; }
.bb-bgcolor-orange { background-color: orange; }
.bb-bgcolor-purple { background-color: purple; }
.bb-bgcolor-pink { background-color: pink; }
.bb-bgcolor-gray { background-color: gray; }
.bb-bgcolor-grey { background-color: grey; }
.bb-bgcolor-silver { background-color: silver; }
.bb-bgcolor-maroon { background-color: maroon; }
.bb-bgcolor-olive { background-color: olive; }
.bb-bgcolor-navy { background-color: navy; }
.bb-bgcolor-teal { background-color: teal; }
.bb-bgcolor-aqua { background-color: aqua; }
.bb-bgcolor-fuchsia { background-color: fuchsia; }
.bb-bgcolor-lime { background-color: lime; }
.bb-font-arial { font-family: Arial, Helvetica, sans-serif; }
.bb-font-verdana { font-family: Verdana, Arial, sans-serif; }
.bb-font-tahoma { font-family: Tahoma, Arial, sans-serif; }
.bb-font-trebuchet-ms { font-family: "Trebuchet MS", Arial, sans-serif; }
.bb-font-georgia { font-family: Georgia, serif; }
.bb-font-times-new-roman { font-family: "Times New Roman", serif; }
.bb-font-courier-new { font-family: "Courier New", monospace; }
.bb-font-lucida-console { font-family: "Lucida Console", monospace; }
.bb-font-monospace { font-family: monospace; }
.bb-font-serif { font-family: serif; }
.bb-font-sans-serif { font-family: sans-serif; }
.bb-size-8 { font-size: 8px; }
.bb-size-9 { font-size: 9px; }
.bb-size-10 { font-size: 10px; }
.bb-size-11 { font-size: 11px; }
.bb-size-12 { font-size: 12px; }
.bb-size-13 { font-size: 13px; }
.bb-size-14 { font-size: 14px; }
.bb-size-15 { font-size: 15px; }
.bb-size-16 { font-size: 16px; }
.bb-size-17 { font-size: 17px; }
.bb-size-18 { font-size: 18px; }
.bb-size-19 { font-size: 19px; }
.bb-size-20 { font-size: 20px; }
.bb-size-21 { font-size: 21px; }
.bb-size-22 { font-size: 22px; }
.bb-size-23 { font-size: 23px; }
.bb-size-24 { font-size: 24px; }
.bb-size-25 { font-size: 25px; }
.bb-size-26 { font-size: 26px; }
.bb-size-27 { font-size: 27px; }
.bb-size-28 { font-size: 28px; }
.bb-size-29 { font-size: 29px; }
.bb-size-30 { font-size: 30px; }
.bb-size-31 { font-size: 31px; }
.bb-size-32 { font-size: 32px; }
.bb-size-33 { font-size: 33px; }
.bb-size-34 { font-size: 34px; }
.bb-size-35 { font-size: 35px; }
.bb-size-36 { font-size: 36px; }
.bb-size-37 { font-size: 37px; }
.bb-size-38 { font-size: 38px; }
.bb-size-39 { font-size: 39px; }
.bb-size-40 { font-size: 40px; }
.bb-size-41 { font-size: 41px; }
.bb-size-42 { font-size: 42px; }
.bb-size-43 { font-size: 43px; }
.bb-size-44 { font-size: 44px; }
.bb-size-45 { font-size: 45px; }
.bb-size-46 { font-size: 46px; }
.bb-size-47 { font-size: 47px; }
.bb-size-48 { font-size: 48px; }
.bb-size-49 { font-size: 49px; }
.bb-size-50 { font-size: 50px; }
.bb-size-51 { font-size: 51px; }
.bb-size-52 { font-size: 52px; }
.bb-size-53 { font-size: 53px; }
.bb-size-54 { font-size: 54px; }
.bb-size-55 { font-size: 55px; }
.bb-size-56 { font-size: 56px; }
.bb-size-57 { font-size: 57px; }
.bb-size-58 { font-size: 58px; }
.bb-size-59 { font-size: 59px; }
.bb-size-60 { font-size: 60px; }
.bb-size-61 { font-size: 61px; }
.bb-size-62 { font-size: 62px; }
.bb-size-63 { font-size: 63px; }
.bb-size-64 { font-size: 64px; }
.bb-size-65 { font-size: 65px; }
.bb-size-66 { font-size: 66px; }
.bb-size-67 { font-size: 67px; }
.bb-size-68 { font-size: 68px; }
.bb-size-69 { font-size: 69px; }
.bb-size-70 { font-size: 70px; }
.bb-size-71 { font-size: 71px; }
.bb-size-72 { font-size: 72px; }
.bb-size-73 { font-size: 73px; }
.bb-size-74 { font-size: 74px; }
.bb-size-75 { font-size: 75px; }
.bb-size-76 { font-size: 76px; }
.bb-size-77 { font-size: 77px; }
.bb-size-78 { font-size: 78px; }
.bb-size-79 { font-size: 79px; }
.bb-size-80 { font-size: 80px; }
.bb-size-81 { font-size: 81px; }
.bb-size-82 { font-size: 82px; }
.bb-size-83 { font-size: 83px; }
.bb-size-84 { font-size: 84px; }
.bb-size-85 { font-size: 85px; }
.bb-size-86 { font-size: 86px; }
.bb-size-87 { font-size: 87px; }
.bb-size-88 { font-size: 88px; }
.bb-size-89 { font-size: 89px; }
.bb-size-90 { font-size: 90px; }
.bb-size-91 { font-size: 91px; }
.bb-size-92 { font-size: 92px; }
.bb-size-93 { font-size: 93px; }
.bb-size-94 { font-size: 94px; }
.bb-size-95 { font-size: 95px; }
.bb-size-96 { font-size: 96px; }
.bb-progress {
    display: block;
    width: 360px;
    height: 24px;
}
.bb-progress-label,
.bb-progress-value {
    display: inline-block;
    height: 18px;
    line-height: 18px;
}
.bb-progress-track {
    display: inline-block;
    width: 220px;
    height: 12px;
    overflow: hidden;
    vertical-align: middle;
}
.bb-progress-bar {
    display: block;
    height: 12px;
}

.bbcode-content {
    font-size: 15px;
    line-height: 1.45;
    word-wrap: break-word;
}

.bbcode-content p,
.bbcode-content div {
    margin: 0 0 8px 0;
    padding: 0;
}

.bbcode-content h1,
.bbcode-content h2,
.bbcode-content h3,
.bbcode-content h4,
.bbcode-content h5,
.bbcode-content h6 {
    margin: 0 0 10px 0;
    padding: 0;
    font-weight: 900;
    line-height: 1.2;
}

.bbcode-content h1 { font-size: 28px; }
.bbcode-content h2 { font-size: 24px; }
.bbcode-content h3 { font-size: 21px; }
.bbcode-content h4 { font-size: 18px; }
.bbcode-content h5 { font-size: 16px; }
.bbcode-content h6 { font-size: 14px; }

.bbcode-content hr {
    display: block;
    width: 100%;
    height: 1px;
    margin: 12px 0;
    padding: 0;
    border: 0;
    border-top-width: 2px;
    border-top-style: solid;
}

.bbcode-content ul,
.bbcode-content ol {
    margin: 8px 0 8px 24px;
    padding: 0;
}

.bbcode-content li {
    margin: 0 0 4px 0;
    padding: 0;
}

.bbcode-content table,
.bb-table {
    width: 100%;
    margin: 8px 0;
    border-collapse: collapse;
}

.bbcode-content td,
.bbcode-content th,
.bb-table td,
.bb-table th {
    padding: 6px 8px;
    border-width: 1px;
    border-style: solid;
    text-align: left;
}

.bbcode-content th,
.bb-table th {
    font-weight: 900;
}

.left-menu-box {
    width: 250px;
    margin-bottom: 16px;
}

.left-menu-box .side-title {
    width: 248px;
}

.left-menu-grid {
    display: grid;
    grid-template-columns: 248px;
    column-gap: 0;
    row-gap: 0;
    width: 248px;
}

.left-menu-grid a,
.left-menu-grid span {
    display: block;
    width: 248px;
    height: 36px;
    margin: 0;
    padding: 10px 20px 0 20px;
    overflow: hidden;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    font-size: 15px;
    font-weight: 700;
    line-height: 16px;
}

.left-game-menu {
    width: 250px;
    margin-bottom: 16px;
    border-width: 1px;
    border-style: solid;
    overflow: hidden;
}

.left-game-title {
    position: relative;
    width: 248px;
    height: 42px;
    padding: 12px 14px 0 42px;
    overflow: hidden;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    font-size: 17px;
    font-weight: 900;
    line-height: 18px;
    text-transform: uppercase;
}

.left-game-title[data-icon]::before,
.right-game-title[data-icon]::before {
    content: "";
    position: absolute;
    left: 15px;
    top: 12px;
    width: 18px;
    height: 18px;
    -webkit-mask-image: var(--menu-icon);
    mask-image: var(--menu-icon);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: 18px 18px;
    mask-size: 18px 18px;
}

.left-game-menu-list {
    width: 248px;
}

.left-game-menu-list a,
.left-game-menu-list span,
.left-game-menu-list summary {
    display: block;
    position: relative;
    width: 248px;
    height: 44px;
    margin: 0;
    padding: 13px 36px 0 46px;
    overflow: hidden;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    font-size: 15px;
    font-weight: 800;
    line-height: 16px;
    text-transform: uppercase;
}

.left-game-menu-list a[data-icon]::before,
.left-game-menu-list span[data-icon]::before,
.left-menu-dropdown summary[data-icon]::before {
    content: "";
    position: absolute;
    left: 14px;
    top: 13px;
    width: 17px;
    height: 17px;
    -webkit-mask-image: var(--menu-icon);
    mask-image: var(--menu-icon);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: 17px 17px;
    mask-size: 17px 17px;
}

.left-game-menu-list span {
    height: 56px;
    padding-top: 11px;
    line-height: 17px;
    white-space: normal;
}


.left-menu-dropdown {
    width: 248px;
}

.left-menu-dropdown summary {
    cursor: pointer;
    list-style: none;
}

.left-menu-dropdown summary::-webkit-details-marker {
    display: none;
}

.left-menu-dropdown summary::after {
    content: "";
    position: absolute;
    right: 14px;
    top: 14px;
    width: 14px;
    height: 14px;
    -webkit-mask-image: var(--icon-chevron);
    mask-image: var(--icon-chevron);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: 14px 14px;
    mask-size: 14px 14px;
    transform: rotate(0deg);
    transition: transform 160ms ease;
}

.left-menu-dropdown[open] summary::after {
    transform: rotate(90deg);
}

.left-menu-dropdown-list {
    width: 248px;
}

.left-menu-dropdown-list a,
.left-menu-dropdown-list span {
    width: 248px;
    height: 34px;
    padding: 9px 24px 0 26px;
    font-size: 13px;
    font-weight: 700;
    line-height: 14px;
    text-transform: none;
}


.left-mini-nav {
    width: 250px;
    height: 112px;
    margin: 0 0 16px 0;
    padding: 12px 20px 0 20px;
}

.left-mini-nav a {
    display: block;
    width: 208px;
    height: 28px;
    margin: 0;
    font-size: 14px;
    font-weight: 900;
    line-height: 28px;
}

.left-login-box {
    width: 250px;
    margin-bottom: 16px;
    border-width: 1px;
    border-style: solid;
    overflow: hidden;
}

.left-login-form {
    width: 248px;
    margin: 0 0 0 0;
    padding: 16px 20px 16px 20px;
}

.left-login-row {
    width: 208px;
    height: 37px;
    margin-bottom: 15px;
}

.left-login-row input {
    display: block;
    width: 208px;
    height: 37px;
    padding: 7px 10px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    font-size: 13px;
}

.left-login-captcha {
    display: none;
    width: 208px;
    height: 144px;
    margin: 0 0 10px 0;
}

.left-login-captcha.is-visible {
    display: block;
}

.left-login-captcha-inner {
    width: 208px;
    height: 144px;
    padding: 10px 8px 0 8px;
    border-width: 1px;
    border-style: solid;
    text-align: center;
}

.left-login-captcha .g-recaptcha {
    width: 164px;
    height: 144px;
    margin: 0 auto;
}

.left-login-captcha-inner span {
    display: block;
    width: 166px;
    height: 19px;
    font-size: 14px;
    font-weight: 900;
}

.left-login-captcha-inner small {
    display: block;
    width: 166px;
    height: 28px;
    margin-top: 4px;
    font-size: 11px;
    line-height: 1.2;
}

.left-login-actions {
    width: 208px;
    height: 24px;
    margin-left: 4px;
    text-align: center;
}

.left-login-actions button {
    width: 120px;
    height: 22px;
    border-width: 0;
    font: inherit;
    font-size: 13px;
    font-weight: 900;
    cursor: pointer;
}

.left-user-menu {
    width: 190px;
    margin: 6px 0 18px 6px;
}

.left-user-menu .side-title {
    width: 190px;
    margin-bottom: 6px;
}

.left-user-links {
    display: grid;
    grid-template-columns: 88px 88px;
    column-gap: 8px;
    row-gap: 2px;
    width: 184px;
}

.left-user-links a {
    display: block;
    width: 88px;
    height: 16px;
    margin: 0;
    font-size: 12px;
    font-weight: 700;
    line-height: 15px;
}

.left-status-box {
    width: 250px;
    height: 96px;
    margin-top: 28px;
    margin-left: 0;
    padding: 10px 20px;
}

.left-status-box div,
.left-status-box a {
    display: block;
    width: 208px;
    height: 24px;
    font-size: 14px;
    font-weight: 400;
    line-height: 22px;
    margin: 0;
}

.left-world-box {
    width: 250px;
    height: 218px;
    margin-top: 0;
    margin-left: 0;
    padding: 0;
}

.left-world-links {
    width: 248px;
    padding: 16px 20px 34px 20px;
}

.left-world-links a {
    position: relative;
    display: block;
    width: 208px;
    height: 56px;
    margin: 0 0 18px 0;
    padding-top: 18px;
    text-align: center;
    font-size: 14px;
    font-weight: 900;
}

.left-world-links a::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 4px;
    height: 54px;
}

.left-world-links strong,
.left-world-links span {
    display: inline;
}

.small-text {
    font-size: 12px;
    line-height: 1.4;
}

.right-screenshot-grid {
    display: grid;
    grid-template-columns: 108px 108px;
    column-gap: 6px;
    row-gap: 6px;
    width: 248px;
    height: 322px;
    padding: 4px;
    border-width: 1px;
    border-style: solid;
    overflow-x: hidden;
    overflow-y: auto;
}

.right-screenshot-button {
    display: block;
    width: 108px;
    height: 58px;
    padding: 0;
    border-width: 1px;
    border-style: solid;
    cursor: pointer;
}

.right-screenshot-button img {
    display: block;
    width: 106px;
    height: 56px;
    object-fit: cover;
}

.right-side-action {
    width: 250px;
    margin-bottom: 16px;
    overflow: hidden;
}

.right-game-menu {
    width: 250px;
    margin: 0 0 16px 0;
    border-width: 1px;
    border-style: solid;
    overflow: hidden;
}

.right-game-title {
    position: relative;
    width: 248px;
    height: 42px;
    padding: 12px 14px 0 42px;
    overflow: hidden;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    font-size: 17px;
    font-weight: 900;
    line-height: 18px;
    text-transform: uppercase;
}

.right-game-menu-list {
    width: 248px;
}

.right-game-menu-list a,
.right-game-menu-list span,
.right-game-menu-list summary {
    display: block;
    width: 248px;
    height: 44px;
    margin: 0;
    padding: 13px 36px 0 18px;
    overflow: hidden;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    font-size: 15px;
    font-weight: 800;
    line-height: 18px;
    text-transform: uppercase;
    box-sizing: border-box;
}

.right-game-menu-list span {
    height: 56px;
    padding-top: 11px;
    line-height: 17px;
    white-space: normal;
}

.right-menu-dropdown {
    width: 248px;
}

.right-menu-dropdown summary {
    display: block;
    position: relative;
    width: 248px;
    height: 44px;
    margin: 0;
    padding: 13px 36px 0 18px;
    overflow: hidden;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    font-size: 15px;
    font-weight: 800;
    line-height: 16px;
    text-transform: uppercase;
    cursor: pointer;
    list-style: none;
    box-sizing: border-box;
}

.right-game-menu-list a[data-icon],
.right-game-menu-list span[data-icon],
.right-menu-dropdown summary[data-icon] {
    position: relative;
    padding-left: 46px;
}

.right-game-menu-list a[data-icon]::before,
.right-game-menu-list span[data-icon]::before,
.right-menu-dropdown summary[data-icon]::before {
    content: "";
    position: absolute;
    left: 14px;
    top: 10px;
    width: 18px;
    height: 18px;
    border-width: 0;
    border-style: none;
    -webkit-mask-image: var(--menu-icon);
    mask-image: var(--menu-icon);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: 18px 18px;
    mask-size: 18px 18px;
    box-sizing: border-box;
}

[data-icon] {
    --menu-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M4 4h16v16H4z'/%3E%3C/svg%3E");
}

:root {
    --icon-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M8 4l10 8L8 20v-5l4-3-4-3V4z'/%3E%3C/svg%3E");
}

[data-icon="home"] {
    --menu-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 3l9 8h-3v10h-5v-6h-2v6H6V11H3l9-8z'/%3E%3C/svg%3E");
}

[data-icon="login"] {
    --menu-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M4 4h9v3H7v10h6v3H4V4zm11 4l6 4-6 4v-3H9v-2h6V8z'/%3E%3C/svg%3E");
}

[data-icon="logout"] {
    --menu-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 4h9v3H6v10h6v3H3V4zm12 4v3H9v2h6v3l6-4-6-4z'/%3E%3C/svg%3E");
}

[data-icon="admin"] {
    --menu-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2l8 4v6c0 5.2-3.3 8.4-8 10-4.7-1.6-8-4.8-8-10V6l8-4zm0 4.2L7 8.4V12c0 3.2 1.8 5.4 5 6.7 3.2-1.3 5-3.5 5-6.7V8.4l-5-2.2z'/%3E%3C/svg%3E");
}

[data-icon="users"],
[data-icon="team"] {
    --menu-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M9 11a4 4 0 1 1 0-8 4 4 0 0 1 0 8zm6.8 0a3.2 3.2 0 1 1 0-6.4 3.2 3.2 0 0 1 0 6.4zM2 20c.4-4.1 2.8-6.5 7-6.5s6.6 2.4 7 6.5H2zm13.2-6.3c3.7.3 5.8 2.4 6.3 6.3h-3.3c-.3-2.5-1.3-4.6-3-6.3z'/%3E%3C/svg%3E");
}

[data-icon="settings"] {
    --menu-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M14 2l1 3 3-1 2 4-2.5 2 .5 2.5 3 1-1.8 4.2-3.2-.8-2 1.8.2 3.3H9.8l.2-3.3-2-1.8-3.2.8L3 13.5l3-1 .5-2.5L4 8l2-4 3 1 1-3h4zm-2 7a3 3 0 1 0 0 6 3 3 0 0 0 0-6z'/%3E%3C/svg%3E");
}

[data-icon="news"],
[data-icon="document"],
[data-icon="rules"] {
    --menu-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M5 2h10l4 4v16H5V2zm9 1.8V7h3.2L14 3.8zM8 10h8v2H8v-2zm0 4h8v2H8v-2zm0 4h6v2H8v-2z'/%3E%3C/svg%3E");
}

[data-icon="list"] {
    --menu-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M4 6h3v3H4V6zm5 .5h11v2H9v-2zM4 11h3v3H4v-3zm5 .5h11v2H9v-2zM4 16h3v3H4v-3zm5 .5h11v2H9v-2z'/%3E%3C/svg%3E");
}

[data-icon="mail"] {
    --menu-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 5h18v14H3V5zm2.5 2L12 12l6.5-5h-13zM5 9v8h14V9l-7 5.4L5 9z'/%3E%3C/svg%3E");
}

[data-icon="bag"] {
    --menu-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7 7V6a5 5 0 0 1 10 0v1h3v14H4V7h3zm2 0h6V6a3 3 0 0 0-6 0v1zm-2 3v8h10v-8H7z'/%3E%3C/svg%3E");
}

[data-icon="training"] {
    --menu-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M5 10h2v4H5v-4zm12 0h2v4h-2v-4zM8 8h2v8H8V8zm6 0h2v8h-2V8zm-3 3h2v2h-2v-2zM2 11h2v2H2v-2zm18 0h2v2h-2v-2z'/%3E%3C/svg%3E");
}

[data-icon="shop"] {
    --menu-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M4 4h16l-1 7H6L4 4zm2 9h12v7H6v-7zm2 2v3h8v-3H8z'/%3E%3C/svg%3E");
}

[data-icon="fight"] {
    --menu-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M13 2L4 13h6l-1 9 11-13h-7l1-7z'/%3E%3C/svg%3E");
}

[data-icon="calendar"] {
    --menu-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M5 3h2v2h10V3h2v2h2v16H3V5h2V3zm0 7v9h14v-9H5zm2 2h3v3H7v-3zm5 0h3v3h-3v-3z'/%3E%3C/svg%3E");
}

[data-icon="star"] {
    --menu-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2l2.8 6 6.2.7-4.6 4.4 1.2 6.4L12 16.2l-5.6 3.3 1.2-6.4L3 8.7 9.2 8 12 2z'/%3E%3C/svg%3E");
}

[data-icon="chat"] {
    --menu-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M4 4h16v11H8l-4 5V4zm3 4v2h10V8H7zm0 4v2h7v-2H7z'/%3E%3C/svg%3E");
}

[data-icon="plus"] {
    --menu-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M10.5 4h3v6.5H20v3h-6.5V20h-3v-6.5H4v-3h6.5V4z'/%3E%3C/svg%3E");
}

[data-icon="info"],
[data-icon="help"] {
    --menu-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a10 10 0 1 1 0 20 10 10 0 0 1 0-20zm-1.2 8v8h2.4v-8h-2.4zm0-4v2.4h2.4V6h-2.4z'/%3E%3C/svg%3E");
}

[data-icon="folder"] {
    --menu-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 5h7l2 2h9v12H3V5zm2 5v7h14v-7H5z'/%3E%3C/svg%3E");
}

[data-icon="shield"] {
    --menu-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2l8 4v6c0 5-3.1 8.4-8 10-4.9-1.6-8-5-8-10V6l8-4zm0 4L7 8.2V12c0 3.1 1.8 5.4 5 6.6V6z'/%3E%3C/svg%3E");
}

[data-icon="cookie"] {
    --menu-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2c.5 2 1.8 3.2 4 3.5-.4 2.2.7 3.7 3 4.5-.5 6.8-4 10-9 10a8 8 0 0 1-8-8c0-5 3.2-8.5 10-10zm-4 8a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3zm5 6a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3zm-5 1a1 1 0 1 0 0-2 1 1 0 0 0 0 2z'/%3E%3C/svg%3E");
}

[data-icon="heart"] {
    --menu-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 21S4 16.4 4 9.8C4 6.5 6.2 4 9 4c1.6 0 2.8.8 3 1.5C12.2 4.8 13.4 4 15 4c2.8 0 5 2.5 5 5.8C20 16.4 12 21 12 21z'/%3E%3C/svg%3E");
}

[data-icon="video"] {
    --menu-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 5h13v14H3V5zm15 4l4-3v12l-4-3V9zM8 8.5v7l5-3.5-5-3.5z'/%3E%3C/svg%3E");
}

[data-icon="planet"] {
    --menu-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 3a7 7 0 0 1 6.7 9c2.2 1.2 3.4 2.5 3.1 3.8-.6 2.4-6 2.8-11.9 1.3C4 15.6-.5 12.7.2 10.3c.4-1.3 2.1-2 4.6-2A7 7 0 0 1 12 3zm0 2.4A4.6 4.6 0 1 0 12 14.6 4.6 4.6 0 0 0 12 5.4zM4.1 10.7c-.8.1-1.3.3-1.4.6-.2.7 2.9 2.5 7.8 3.8 4.9 1.2 8.5.9 8.7.2.1-.3-.3-.7-1-1.1-1.3 2-3.6 3.4-6.2 3.4-3.7 0-6.8-2.8-7.1-6.5l-.8-.4z'/%3E%3C/svg%3E");
}

[data-icon="image"] {
    --menu-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 4h18v16H3V4zm2 2v10l4.2-4 3 2.9L16.5 10 19 12.4V6H5zm11.8 2a1.8 1.8 0 1 0 0 3.6 1.8 1.8 0 0 0 0-3.6z'/%3E%3C/svg%3E");
}

.right-menu-dropdown summary::-webkit-details-marker {
    display: none;
}

.right-menu-dropdown summary::after {
    content: "";
    position: absolute;
    right: 14px;
    top: 14px;
    width: 14px;
    height: 14px;
    -webkit-mask-image: var(--icon-chevron);
    mask-image: var(--icon-chevron);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: 14px 14px;
    mask-size: 14px 14px;
    transform: rotate(0deg);
    transition: transform 160ms ease;
}

.right-menu-dropdown[open] summary::after {
    transform: rotate(90deg);
}

.right-menu-dropdown-list {
    width: 248px;
}

.right-menu-dropdown-list a {
    display: block;
    position: relative;
    width: 248px;
    height: 36px;
    margin: 0;
    padding: 10px 24px 0 26px;
    overflow: hidden;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    font-size: 13px;
    font-weight: 700;
    line-height: 16px;
    text-transform: none;
    box-sizing: border-box;
}

.right-menu-box {
    width: 250px;
    margin-bottom: 18px;
}

.right-menu-list {
    width: 248px;
    padding: 10px 14px 12px 14px;
}

.right-menu-list a,
.right-menu-list span,
.right-menu-list strong {
    display: block;
    width: 224px;
    height: 22px;
    margin: 0;
    font-size: 14px;
    line-height: 20px;
}

.right-menu-list strong {
    font-weight: 700;
}

.right-admin-menu {
    width: 250px;
}

.right-admin-empty {
    width: 248px;
    height: 58px;
    margin-top: 8px;
    padding: 8px 9px;
    border-width: 1px;
    border-style: solid;
    font-size: 12px;
    line-height: 14px;
}

.right-visitor-box,
.right-discord-button,
.right-mmofacts-link {
    display: block;
    width: 248px;
    height: 44px;
    padding: 12px 10px 0 10px;
    border-width: 0;
    border-top-width: 1px;
    border-style: solid;
    font-size: 14px;
    font-weight: 900;
    text-align: center;
}

.right-screenshots {
    width: 250px;
    overflow: hidden;
}

.right-discord-button span,
.right-discord-button strong {
    display: inline;
}

.screen-modal {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 20000;
    display: none;
    width: 100%;
    height: 100%;
    padding-top: 34px;
}

.screen-modal.is-open {
    display: block;
}

.screen-modal-box {
    width: 950px;
    height: 704px;
    margin: 0 auto;
    border-width: 2px;
    border-style: solid;
    overflow: hidden;
}

.screen-modal-head {
    width: 946px;
    height: 42px;
    padding: 12px 14px 0 14px;
    overflow: hidden;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    font-size: 17px;
    font-weight: 900;
    line-height: 18px;
    text-transform: uppercase;
}

.screen-modal-close {
    float: right;
    width: 38px;
    height: 28px;
    margin-top: -5px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    font-weight: 900;
    cursor: pointer;
}

.screen-modal-body {
    width: 946px;
    height: 658px;
    padding: 14px;
}

.screen-modal-image {
    display: block;
    width: 918px;
    height: 560px;
    object-fit: contain;
    border-width: 2px;
    border-style: solid;
}

.screen-modal-desc {
    width: 918px;
    height: 58px;
    margin-top: 12px;
    padding: 10px 12px;
    border-width: 1px;
    border-style: solid;
    font-size: 14px;
    line-height: 1.35;
    overflow: hidden;
}

.content-box {
    width: 950px;
    padding: 0 0 18px 0;
    border-width: 2px;
    border-style: solid;
    overflow: hidden;
}

.content-box h1 {
    width: 946px;
    height: 38px;
    margin: 0 0 18px 0;
    padding: 8px 12px 0 12px;
    overflow: hidden;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    font-size: 22px;
    font-weight: 900;
    line-height: 22px;
}

.content-box p {
    margin: 0 18px;
    line-height: 1.5;
}

.content-box > ul,
.content-box > ol,
.content-box > form,
.content-box > table,
.content-box > div:not(.admin-dashboard-grid) {
    margin-left: 18px;
    margin-right: 18px;
}

.admin-dashboard-grid {
    display: grid;
    grid-template-columns: 260px 260px 260px;
    column-gap: 16px;
    width: 812px;
    height: 70px;
    margin-top: 18px;
}

.admin-dashboard-grid a {
    display: block;
    width: 260px;
    height: 52px;
    padding: 16px 12px 0 12px;
    border-width: 1px;
    border-style: solid;
    font-size: 15px;
    font-weight: 900;
    text-align: center;
}

.login-page-wrap {
    width: 950px;
    margin: 0 auto;
}

.login-page-panel {
    position: relative;
    width: 950px;
    height: 414px;
    padding: 0;
    border-width: 2px;
    border-style: solid;
    overflow: hidden;
}

.login-page-panel.is-captcha-visible {
    height: 510px;
}

.login-page-head {
    display: block;
    width: 946px;
    height: 48px;
    padding: 14px 14px 0 14px;
    overflow: hidden;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    border-bottom-width: 1px;
    border-bottom-style: solid;
}

.login-page-head span {
    display: block;
    height: 20px;
    font-size: 20px;
    font-weight: 900;
    line-height: 20px;
    text-align: center;
    text-transform: uppercase;
}

.login-page-form {
    position: relative;
    display: grid;
    grid-template-columns: 174px 424px 260px;
    column-gap: 14px;
    width: 914px;
    height: 322px;
    margin: 18px 18px 0 18px;
    padding: 12px;
    align-items: start;
    border-width: 1px;
    border-style: solid;
    overflow: hidden;
}

.login-page-form.is-captcha-visible {
    height: 418px;
}

.login-page-form::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 912px;
    height: 320px;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}

.login-page-form.is-captcha-visible::before {
    height: 416px;
}

.login-page-orb {
    position: relative;
    z-index: 1;
    width: 174px;
    height: 274px;
    padding: 48px 12px 0 12px;
    border-width: 1px;
    border-style: solid;
    overflow: hidden;
}

.login-page-orb::before {
    content: "";
    position: absolute;
    left: 28px;
    top: 30px;
    width: 116px;
    height: 116px;
}

.login-page-ball {
    position: relative;
    z-index: 1;
    display: block;
    width: 150px;
    height: 150px;
    object-fit: cover;
}

.login-page-center {
    position: relative;
    z-index: 1;
    width: 424px;
    height: 274px;
    padding: 24px 20px 0 20px;
    border-width: 1px;
    border-left-width: 4px;
    border-style: solid;
    overflow: hidden;
}

.login-page-form.is-captcha-visible .login-page-center {
    height: 370px;
}

.login-page-center-title {
    width: 380px;
    height: 34px;
    margin-bottom: 14px;
    font-size: 24px;
    font-weight: 900;
    line-height: 26px;
    text-align: center;
    text-transform: uppercase;
}

.login-page-center input {
    display: block;
    width: 380px;
    height: 40px;
    margin-bottom: 12px;
    padding: 7px 10px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    font-size: 16px;
}

.login-page-captcha {
    display: none;
    width: 380px;
    height: 86px;
    margin: 0 0 10px 0;
}

.login-page-captcha.is-visible {
    display: block;
}

.login-page-captcha-inner {
    width: 380px;
    height: 86px;
    padding: 11px 12px 0 12px;
    border-width: 1px;
    border-style: solid;
    text-align: center;
}

.login-page-captcha .g-recaptcha {
    width: 304px;
    height: 78px;
    margin: 0 auto;
}

.login-page-captcha-inner span {
    display: block;
    width: 354px;
    height: 20px;
    font-size: 15px;
    font-weight: 900;
}

.login-page-captcha-inner small {
    display: block;
    width: 354px;
    height: 28px;
    margin-top: 4px;
    font-size: 12px;
    line-height: 1.2;
}

.login-page-actions {
    width: 380px;
    height: 38px;
    margin: 6px auto 0 auto;
    text-align: center;
}

.login-page-actions button,
.login-page-actions a {
    display: inline-block;
    vertical-align: top;
    width: 380px;
    height: 38px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    font-size: 14px;
    font-weight: 900;
    cursor: pointer;
}

.login-page-actions a {
    width: 184px;
    margin-left: 0;
    padding-top: 9px;
}

.login-page-info {
    position: relative;
    z-index: 1;
    width: 260px;
    height: 274px;
    padding: 24px 18px 0 18px;
    border-width: 1px;
    border-left-width: 4px;
    border-style: solid;
    overflow: hidden;
}

.login-page-info strong {
    display: block;
    width: 224px;
    height: 26px;
    margin-bottom: 14px;
    font-size: 20px;
    font-weight: 900;
    line-height: 24px;
    text-transform: uppercase;
}

.login-page-info span {
    display: block;
    width: 224px;
    height: 50px;
    margin-bottom: 20px;
    font-size: 14px;
    line-height: 20px;
}

.login-page-info a {
    display: block;
    width: 224px;
    height: 40px;
    margin-bottom: 12px;
    padding-top: 11px;
    border-width: 1px;
    border-style: solid;
    font-size: 14px;
    font-weight: 900;
    text-align: center;
    text-transform: uppercase;
}

.register-page {
    width: 950px;
    margin: 0 auto;
}

.register-panel {
    width: 950px;
    border-width: 1px;
    border-style: solid;
}

.register-head {
    display: block;
    width: 948px;
    height: 42px;
    padding: 10px 12px 0 12px;
    border-bottom-width: 1px;
    border-bottom-style: solid;
}

.register-head span {
    display: block;
    width: 850px;
    height: 22px;
    font-size: 18px;
    font-weight: 900;
    line-height: 20px;
}

.register-form {
    display: grid;
    grid-template-columns: 510px 338px;
    column-gap: 14px;
    width: 850px;
    margin: 12px;
}

.register-fields {
    width: 510px;
}

.register-field {
    display: grid;
    grid-template-columns: 160px 340px;
    column-gap: 10px;
    width: 510px;
    height: 42px;
    margin-bottom: 8px;
}

.register-field span {
    display: block;
    width: 160px;
    height: 34px;
    padding-top: 8px;
    font-size: 14px;
    font-weight: 900;
}

.register-field input,
.register-field select {
    width: 340px;
    height: 34px;
    padding: 6px 8px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    font-size: 14px;
}

.register-field .register-captcha {
    width: 340px;
    height: 78px;
}

.register-field-captcha {
    height: 86px;
}

.register-captcha-missing {
    width: 340px;
    height: 38px;
    padding-top: 9px;
    text-align: center;
}

.register-submit {
    width: 510px;
    height: 42px;
    padding-left: 170px;
}

.register-submit button {
    width: 180px;
    height: 34px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    font-size: 15px;
    font-weight: 900;
    cursor: pointer;
}

.register-preview {
    width: 338px;
    height: 548px;
    padding: 12px;
    border-width: 1px;
    border-style: solid;
}

.register-preview-title {
    width: 314px;
    height: 28px;
    font-size: 18px;
    font-weight: 900;
    line-height: 22px;
    text-align: center;
}

.register-preview-canvas {
    position: relative;
    width: 314px;
    height: 370px;
    margin-top: 4px;
    overflow: hidden;
}

.register-preview-layer {
    position: absolute;
    left: 37px;
    top: 24px;
    width: 240px;
    height: 340px;
    object-fit: contain;
    pointer-events: none;
}

#register-preview-body {
    z-index: 1;
}

#register-preview-hair {
    z-index: 2;
}

.register-trait {
    width: 314px;
    height: 104px;
    margin-top: 18px;
    padding: 9px;
    border-width: 1px;
    border-style: solid;
}

.register-trait strong {
    display: block;
    width: 294px;
    height: 20px;
    font-size: 15px;
}

.register-trait span {
    display: block;
    width: 294px;
    height: 64px;
    margin-top: 5px;
    font-size: 13px;
    line-height: 16px;
}

.register-note {
    width: 950px;
    height: 62px;
    margin-top: 12px;
    padding: 12px;
    border-width: 1px;
    border-style: solid;
    text-align: center;
}

.news-post {
    width: 950px;
    padding: 0;
    border-width: 2px;
    border-style: solid;
    overflow: visible;
}

.news-post-title {
    width: 946px;
    height: 42px;
    padding: 12px 14px 0 14px;
    overflow: hidden;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    font-size: 17px;
    font-weight: 900;
    line-height: 18px;
    text-align: center;
    text-transform: uppercase;
}

.news-layout {
    display: grid;
    grid-template-columns: 154px 792px;
    width: 946px;
    align-items: stretch;
}

.news-author-panel {
    width: 154px;
    padding-top: 18px;
    border-right-width: 1px;
    border-right-style: solid;
    text-align: center;
}

.news-avatar-wrap {
    position: relative;
    width: 132px;
    height: 132px;
    margin: 0 auto 0 auto;
    display: block;
}

.news-avatar {
    width: 132px;
    height: 132px;
    display: block;
    object-fit: cover;
    border-width: 2px;
    border-style: solid;
}

.news-avatar-badge {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 44px;
    height: 16px;
    border-width: 1px;
    border-style: solid;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 8px;
    font-weight: 900;
    line-height: 1;
    z-index: 2;
}

.news-author-panel strong {
    display: block;
    width: 152px;
    height: 34px;
    margin-top: 8px;
    overflow: hidden;
    border-top-width: 1px;
    border-top-style: solid;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    font-size: 18px;
    font-weight: 900;
    line-height: 32px;
}

.news-author-panel span:not(.news-avatar-wrap):not(.news-avatar-badge) {
    display: block;
    width: 152px;
    height: 32px;
    overflow: hidden;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    font-size: 14px;
    font-weight: 800;
    line-height: 31px;
}

.news-main {
    width: 792px;
    padding: 16px 21px 18px 21px;
}

.news-media {
    width: 750px;
    height: 214px;
    margin: 0 0 18px 0;
    overflow: hidden;
    border-width: 1px;
    border-style: solid;
}

.news-hero {
    width: 750px;
    height: 214px;
    display: block;
    object-fit: cover;
}

.news-body {
    width: 750px;
    padding: 0;
    font-size: 16px;
    line-height: 1.55;
    text-align: left;
}

.news-body p,
.news-body blockquote {
    margin-top: 0;
}

.news-divider {
    width: 750px;
    height: 74px;
    margin-top: 26px;
    overflow: hidden;
}

.news-divider img {
    width: 750px;
    height: 74px;
    display: block;
    object-fit: cover;
}

.bbcode-content img {
    width: 710px;
    height: auto;
    margin: 8px auto;
    object-fit: contain;
}

.bbcode-content blockquote {
    width: auto;
    margin: 8px 0;
    padding: 10px 14px;
    border-left-width: 4px;
    border-left-style: solid;
    text-align: left;
}

.news-post-nav {
    display: flex;
    justify-content: space-between;
    width: 946px;
    margin-top: 18px;
    padding: 12px 18px 14px 18px;
    border-top-width: 1px;
    border-top-style: solid;
    font-weight: 700;
}

.section-title {
    width: 950px;
    height: 42px;
    padding: 12px 14px 0 14px;
    overflow: hidden;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    border-width: 2px;
    border-style: solid;
    font-size: 17px;
    font-weight: 900;
    line-height: 18px;
    text-transform: uppercase;
}

.news-list,
.news-history {
    width: 950px;
}

.news-preview {
    width: 950px;
    margin-top: 12px;
    padding: 16px 18px;
    border-width: 1px;
    border-style: solid;
}

.news-preview h2 {
    margin: 4px 0 8px 0;
    font-size: 20px;
}

.news-preview-date {
    font-size: 12px;
    font-weight: 700;
}

.news-preview-text {
    width: 874px;
    margin-bottom: 10px;
    line-height: 1.45;
}

.news-read-more,
.news-more a,
.news-history-entry a {
    font-weight: 700;
}

.news-more {
    width: 950px;
    margin-top: 12px;
    padding: 12px 18px;
    border-width: 1px;
    border-style: solid;
}

.news-history-entry p {
    margin: 0 0 10px 0;
}

.news-history-head {
    width: 950px;
    height: 106px;
    margin-top: 12px;
    padding: 18px 20px;
    border-width: 2px;
    border-style: solid;
    overflow: hidden;
}

.news-history-head-title {
    width: 520px;
    height: 28px;
    float: left;
    font-size: 24px;
    font-weight: 900;
}

.news-history-head-meta {
    width: 300px;
    height: 24px;
    float: right;
    padding-top: 4px;
    font-size: 14px;
    font-weight: 700;
    text-align: right;
}

.news-history-head p {
    clear: both;
    margin: 10px 0 0 0;
    font-size: 16px;
}

.news-history-search {
    display: grid;
    grid-template-columns: 160px 496px 120px 120px;
    column-gap: 8px;
    width: 950px;
    height: 62px;
    margin-top: 12px;
    padding: 12px 12px;
    border-width: 2px;
    border-style: solid;
}

.news-history-search label {
    display: block;
    width: 160px;
    height: 36px;
    padding-top: 9px;
    font-size: 16px;
    font-weight: 900;
}

.news-history-search input[type="text"] {
    width: 496px;
    height: 36px;
    padding: 6px 10px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
}

.news-history-search button,
.news-history-search a {
    display: block;
    width: 120px;
    height: 36px;
    margin: 0;
    padding: 8px 10px 0 10px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    font-weight: 900;
    text-align: center;
    vertical-align: top;
    cursor: pointer;
}

.news-history-search a {
    width: 120px;
}

.news-history-empty {
    width: 950px;
    height: 70px;
    margin-top: 10px;
    padding: 24px 18px 0 18px;
    border-width: 1px;
    border-style: solid;
    font-size: 16px;
    font-weight: 700;
}

.news-history-entry {
    display: grid;
    grid-template-columns: 164px 584px 134px;
    column-gap: 16px;
    width: 950px;
    height: 106px;
    margin-top: 12px;
    padding: 16px;
    border-width: 2px;
    border-style: solid;
    overflow: hidden;
}

.news-history-entry-date {
    width: 164px;
    height: 70px;
    padding: 24px 0 0 14px;
    border-left-width: 4px;
    border-left-style: solid;
    font-size: 14px;
    font-weight: 700;
}

.news-history-entry-content {
    width: 584px;
    height: 70px;
    overflow: hidden;
}

.news-history-entry-content h2 {
    margin: 0 0 7px 0;
    font-size: 20px;
}

.news-history-entry-content p,
.news-history-entry-content .bbcode-content {
    margin: 0;
    font-size: 15px;
    line-height: 1.3;
}

.news-history-open {
    display: block;
    width: 134px;
    height: 36px;
    margin-top: 17px;
    padding: 8px 10px 0 10px;
    border-width: 1px;
    border-style: solid;
    font-size: 15px;
    font-weight: 900;
    text-align: center;
}

.news-pagination {
    width: 950px;
    height: 66px;
    margin-top: 12px;
    padding: 14px 12px;
    border-width: 2px;
    border-style: solid;
    text-align: center;
    overflow: hidden;
}

.news-pagination-link,
.news-pagination-gap {
    display: inline-block;
    width: 34px;
    height: 36px;
    margin: 0 3px;
    padding-top: 9px;
    border-width: 1px;
    border-style: solid;
    font-weight: 900;
    text-align: center;
}

.news-pagination-step {
    width: 88px;
}

.news-pagination-gap {
    border-color: transparent;
}

.players-page {
    width: 950px;
    padding-bottom: 24px;
}

.players-head {
    width: 950px;
    height: 106px;
    margin-top: 12px;
    padding: 18px 20px;
    border-width: 1px;
    border-style: solid;
    overflow: hidden;
}

.players-head-title {
    width: 520px;
    height: 28px;
    float: left;
    font-size: 24px;
    font-weight: 900;
}

.players-head-meta {
    width: 300px;
    height: 24px;
    float: right;
    padding-top: 4px;
    font-size: 14px;
    font-weight: 700;
    text-align: right;
}

.players-head p {
    clear: both;
    margin: 10px 0 0 0;
    font-size: 16px;
}

.players-search {
    display: grid;
    grid-template-columns: 140px 300px 124px 124px 96px 104px;
    column-gap: 8px;
    width: 950px;
    height: 62px;
    margin-top: 12px;
    padding: 12px;
    border-width: 1px;
    border-style: solid;
    overflow: hidden;
}

.players-search label {
    display: block;
    width: 140px;
    height: 36px;
    padding-top: 9px;
    font-size: 16px;
    font-weight: 900;
}

.players-search input[type="text"],
.players-search select {
    width: 300px;
    height: 36px;
    padding: 6px 10px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
}

.players-search select {
    width: 124px;
    padding: 5px 8px;
}

.players-search button,
.players-search a {
    display: block;
    width: 96px;
    height: 36px;
    margin: 0;
    padding: 8px 8px 0 8px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    font-weight: 900;
    text-align: center;
    cursor: pointer;
}

.players-search a {
    width: 104px;
}

.players-table-wrap {
    width: 950px;
    margin-top: 12px;
    border-width: 1px;
    border-style: solid;
    overflow: hidden;
}

.players-table {
    width: 948px;
    border-collapse: collapse;
    table-layout: fixed;
}

.players-table th,
.players-table td {
    height: 74px;
    padding: 9px 10px;
    border-width: 1px;
    border-style: solid;
    vertical-align: middle;
}

.players-table th {
    height: 38px;
    padding-top: 10px;
    font-size: 14px;
    font-weight: 900;
    text-align: left;
    text-transform: uppercase;
}

.players-table tbody td {
    border-left-width: 0;
    border-right-width: 0;
}

.players-table th:nth-child(1),
.players-table td:nth-child(1) {
    width: 248px;
}

.players-table th:nth-child(2),
.players-table td:nth-child(2) {
    width: 70px;
    text-align: center;
}

.players-table th:nth-child(3),
.players-table td:nth-child(3) {
    width: 110px;
    text-align: center;
}

.players-table th:nth-child(4),
.players-table td:nth-child(4),
.players-table th:nth-child(5),
.players-table td:nth-child(5),
.players-table th:nth-child(6),
.players-table td:nth-child(6) {
    width: 110px;
    text-align: center;
}

.players-table th:nth-child(7),
.players-table td:nth-child(7) {
    width: 160px;
    text-align: center;
}

.players-user-cell {
    display: grid;
    grid-template-columns: 54px 164px;
    column-gap: 10px;
    width: 228px;
    height: 54px;
    overflow: hidden;
}

.players-avatar-wrap {
    position: relative;
    display: block;
    width: 54px;
    height: 54px;
}

.players-avatar-wrap img {
    display: block;
    width: 54px;
    height: 54px;
    border-width: 1px;
    border-style: solid;
    object-fit: cover;
    box-sizing: border-box;
}

.players-avatar-wrap.is-team img {
    border-width: 2px;
}

.players-avatar-wrap.is-team::after {
    content: "DB-RG";
    position: absolute;
    right: 0;
    bottom: 0;
    width: 30px;
    height: 12px;
    padding-top: 2px;
    border-width: 1px;
    border-style: solid;
    box-sizing: border-box;
    font-size: 7px;
    font-weight: 900;
    line-height: 1;
    text-align: center;
    z-index: 2;
}

.players-user-cell strong,
.players-user-cell em {
    display: block;
    width: 164px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.players-user-cell strong {
    height: 28px;
    padding-top: 7px;
    font-size: 16px;
    font-weight: 900;
}

.players-user-cell em {
    height: 22px;
    font-size: 12px;
    font-style: normal;
}

.players-empty {
    height: 70px;
    text-align: center;
    font-weight: 900;
}

.players-pagination {
    width: 950px;
    height: 66px;
    margin-top: 12px;
    padding: 14px 12px;
    border-width: 1px;
    border-style: solid;
    text-align: center;
    overflow: hidden;
}

.players-pagination-link,
.players-pagination-gap {
    display: inline-block;
    width: 34px;
    height: 36px;
    margin: 0 3px;
    padding-top: 9px;
    border-width: 1px;
    border-style: solid;
    font-weight: 900;
    text-align: center;
}

.players-pagination-step {
    width: 88px;
}

.players-pagination-gap {
    border-color: transparent;
}

.online-page {
    padding-bottom: 24px;
}

.online-overview {
    display: grid;
    grid-template-columns: 456px 456px;
    column-gap: 16px;
    width: 950px;
    height: 82px;
    margin-top: 12px;
    padding: 12px;
    border-width: 2px;
    border-style: solid;
}

.online-overview div {
    width: 456px;
    height: 54px;
    padding: 9px 12px 0 12px;
    border-width: 1px;
    border-style: solid;
    text-align: center;
}

.online-overview strong,
.online-overview span {
    display: block;
}

.online-overview strong {
    height: 22px;
    font-size: 15px;
    text-transform: uppercase;
}

.online-overview span {
    height: 20px;
    font-size: 18px;
    font-weight: 900;
}

.online-empty {
    width: 950px;
    height: 70px;
    margin-top: 12px;
    padding: 24px 18px 0 18px;
    border-width: 2px;
    border-style: solid;
    font-weight: 900;
    text-align: center;
}

.online-planet-section {
    width: 950px;
    margin-top: 14px;
    border-width: 2px;
    border-style: solid;
}

.online-page > .online-planet-section:first-child {
    margin-top: 0;
}

.online-planet-head {
    display: grid;
    grid-template-columns: 98px 812px;
    column-gap: 18px;
    width: 946px;
    height: 124px;
    padding: 12px 14px;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    overflow: hidden;
}

.online-planet-image,
.online-planet-placeholder {
    display: block;
    width: 98px;
    height: 98px;
    border-width: 1px;
    border-style: solid;
    object-fit: cover;
}

.online-planet-placeholder {
    padding-top: 28px;
    font-size: 28px;
    font-weight: 900;
    text-align: center;
}

.online-planet-head div {
    width: 812px;
    height: 98px;
    overflow: hidden;
}

.online-planet-head strong,
.online-planet-head span {
    display: block;
}

.online-planet-head strong {
    height: 30px;
    font-size: 20px;
    font-weight: 900;
    text-transform: uppercase;
}

.online-planet-head span {
    height: 62px;
    font-size: 14px;
    line-height: 19px;
}

.online-table-wrap {
    width: 946px;
    overflow: hidden;
}

.online-table {
    width: 946px;
    border-collapse: collapse;
    table-layout: fixed;
}

.online-table th,
.online-table td {
    height: 74px;
    padding: 9px 10px;
    border-width: 1px;
    border-style: solid;
    vertical-align: middle;
}

.online-table th {
    height: 38px;
    padding-top: 10px;
    font-size: 14px;
    font-weight: 900;
    text-align: left;
    text-transform: uppercase;
}

.online-table tbody td {
    border-left-width: 0;
    border-right-width: 0;
}

.online-table th:nth-child(1),
.online-table td:nth-child(1) {
    width: 260px;
}

.online-table th:nth-child(2),
.online-table td:nth-child(2) {
    width: 70px;
    text-align: center;
}

.online-table th:nth-child(3),
.online-table td:nth-child(3) {
    width: 105px;
    text-align: center;
}

.online-table th:nth-child(4),
.online-table td:nth-child(4),
.online-table th:nth-child(5),
.online-table td:nth-child(5),
.online-table th:nth-child(6),
.online-table td:nth-child(6) {
    width: 110px;
    text-align: center;
}

.online-table th:nth-child(7),
.online-table td:nth-child(7) {
    width: 170px;
    text-align: center;
}

.online-user-cell {
    display: grid;
    grid-template-columns: 54px 176px;
    column-gap: 10px;
    width: 240px;
    height: 54px;
    overflow: hidden;
}

.online-avatar-wrap {
    position: relative;
    display: block;
    width: 54px;
    height: 54px;
}

.online-avatar-wrap img {
    display: block;
    width: 54px;
    height: 54px;
    border-width: 1px;
    border-style: solid;
    object-fit: cover;
    box-sizing: border-box;
}

.online-avatar-wrap.is-team img {
    border-width: 2px;
}

.online-avatar-wrap.is-team::after {
    content: "DB-RG";
    position: absolute;
    right: 0;
    bottom: 0;
    width: 30px;
    height: 12px;
    padding-top: 2px;
    border-width: 1px;
    border-style: solid;
    box-sizing: border-box;
    font-size: 7px;
    font-weight: 900;
    line-height: 1;
    text-align: center;
    z-index: 2;
}

.online-user-cell strong,
.online-user-cell em {
    display: block;
    width: 206px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.online-user-cell strong {
    height: 26px;
    padding-top: 5px;
    font-size: 17px;
}

.online-user-cell em {
    height: 18px;
    font-size: 12px;
    font-style: normal;
}

.online-action-link {
    display: inline-block;
    width: 70px;
    height: 32px;
    margin: 0 3px;
    padding-top: 7px;
    border-width: 1px;
    border-style: solid;
    font-weight: 900;
    text-align: center;
}

.online-actions {
    width: 154px;
    height: 32px;
    margin: 0 auto;
    overflow: hidden;
}

.today-online-section {
    width: 950px;
    margin-top: 12px;
    border-width: 2px;
    border-style: solid;
}

.today-online-head {
    width: 946px;
    height: 42px;
    padding: 12px 14px 0 14px;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    font-size: 17px;
    font-weight: 900;
    text-transform: uppercase;
}

.today-online-body {
    width: 946px;
    padding: 12px;
}

.today-online-user,
.today-online-empty {
    display: inline-block;
    height: 32px;
    margin: 0 7px 8px 0;
    padding: 7px 10px 0 10px;
    border-width: 1px;
    border-style: solid;
    font-weight: 900;
}

.admin-news-page {
    padding-bottom: 24px;
}

.admin-planet-page {
    padding-bottom: 24px;
}

.admin-planet-tabs {
    display: grid;
    grid-template-columns: repeat(5, 174px);
    column-gap: 8px;
    width: 918px;
    height: 44px;
    margin: 12px 16px 0 16px;
    padding: 6px;
    border-width: 2px;
    border-style: solid;
}

.admin-title-tabs {
    grid-template-columns: repeat(5, 174px);
}

.admin-planet-tabs a,
.admin-planet-tabs span {
    display: block;
    width: 174px;
    height: 30px;
    padding-top: 7px;
    border-width: 1px;
    border-style: solid;
    font-weight: 900;
    text-align: center;
}

.admin-planet-form,
.admin-planet-list {
    width: 918px;
    margin: 12px 16px 0 16px;
    padding: 12px;
    border-width: 2px;
    border-style: solid;
}

.admin-planet-form {
    display: grid;
    grid-template-columns: 286px 286px 286px;
    column-gap: 16px;
    row-gap: 12px;
}

.admin-planet-form-title {
    grid-column: 1 / 4;
    width: 890px;
    height: 38px;
    padding: 10px 12px 0 12px;
    border-width: 1px;
    border-style: solid;
    font-size: 17px;
    font-weight: 900;
    text-transform: uppercase;
}

.admin-planet-form > label {
    display: block;
    width: 100%;
}

.admin-planet-form > label > span {
    display: block;
    height: 22px;
    font-weight: 900;
    text-transform: uppercase;
}

.admin-planet-form input[type="text"],
.admin-planet-form input[type="number"],
.admin-planet-form select,
.admin-planet-form textarea {
    width: 100%;
    height: 34px;
    padding: 6px 8px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
}

.admin-planet-form select {
    appearance: none;
    cursor: pointer;
}

.admin-planet-form textarea {
    height: 96px;
    resize: none;
}

.admin-planet-upload-field {
    height: 58px;
}

.admin-planet-upload-field input[type="file"] {
    width: 286px;
    height: 34px;
    padding: 0;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    overflow: hidden;
}

.admin-planet-image-preview {
    grid-column: 3;
    grid-row: 3 / 5;
    width: 286px;
    height: 168px;
    padding: 10px;
    border-width: 1px;
    border-style: solid;
    overflow: hidden;
}

.admin-planet-image-upload {
    grid-column: 3;
    grid-row: 2;
}

.admin-planet-banner-upload {
    grid-column: 3;
    grid-row: 3;
}

.admin-planet-main-preview {
    grid-column: 3;
    grid-row: 4;
    height: 150px;
}

.admin-planet-banner-preview {
    grid-column: 3;
    grid-row: 5;
    height: 150px;
}

.admin-planet-main-preview img,
.admin-planet-banner-preview img {
    width: 220px;
    height: 82px;
}

.admin-planet-image-preview strong,
.admin-planet-image-preview span {
    display: block;
    width: 264px;
    height: 22px;
    font-weight: 900;
    text-transform: uppercase;
}

.admin-planet-image-preview img,
.admin-planet-image-preview span {
    display: block;
}

.admin-planet-image-preview img {
    width: 164px;
    height: 104px;
    object-fit: contain;
    margin: 12px auto 0 auto;
}

.admin-planet-image-preview span {
    padding: 38px 10px 0 10px;
    font-size: 12px;
    text-align: center;
}

.admin-planet-upload-field input[type="file"]::file-selector-button,
.admin-screen-upload-field input[type="file"]::file-selector-button,
.admin-news-upload input[type="file"]::file-selector-button {
    height: 32px;
    margin: 0 10px 0 0;
    padding: 0 12px;
    border-width: 0 1px 0 0;
    border-style: solid;
    font: inherit;
    font-weight: 900;
    cursor: pointer;
}

.admin-planet-wide {
    grid-column: 1 / 3;
    width: 588px;
}

.admin-planet-form .admin-planet-wide span,
.admin-planet-form .admin-planet-wide textarea {
    width: 588px;
}

.admin-planet-checkbox {
    height: 28px;
    padding-top: 4px;
    font-weight: 900;
}

.admin-planet-checkbox input {
    width: 18px;
    height: 18px;
    margin-right: 7px;
    vertical-align: middle;
}

.admin-planet-actions {
    grid-column: 1 / 4;
    width: 890px;
    height: 42px;
    text-align: right;
}

.admin-planet-actions button,
.admin-planet-actions a,
.admin-planet-row a,
.admin-planet-row button {
    display: inline-block;
    width: 160px;
    height: 34px;
    margin-left: 8px;
    padding: 8px 10px 0 10px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    font-weight: 900;
    text-align: center;
    cursor: pointer;
    vertical-align: top;
}

.admin-training-form .admin-bbcode-editor-field {
    grid-row: auto;
}

.admin-training-form .admin-training-preview {
    grid-column: 3;
    grid-row: 6 / 9;
}

.admin-training-row {
    grid-template-columns: 70px 320px 120px 150px 150px;
}

.admin-planet-row {
    display: grid;
    grid-template-columns: 70px 320px 120px 150px 150px;
    column-gap: 14px;
    width: 890px;
    height: 54px;
    margin-top: 8px;
    padding: 9px 10px;
    border-width: 1px;
    border-style: solid;
    overflow: hidden;
}

.admin-planet-row span,
.admin-planet-row strong,
.admin-planet-row em {
    display: block;
    height: 34px;
    padding-top: 8px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.admin-planet-row em {
    font-style: normal;
}

.admin-planet-row form {
    width: 150px;
    height: 34px;
    margin: 0;
}

.admin-planet-row button {
    margin-left: 0;
}

.admin-planet-row a,
.admin-planet-row button {
    width: 150px;
    margin-left: 0;
}

.admin-planet-empty {
    width: 890px;
    height: 54px;
    margin-top: 8px;
    padding: 18px 12px 0 12px;
    border-width: 1px;
    border-style: solid;
    font-weight: 900;
}

.admin-news-settings {
    display: grid;
    grid-template-columns: 300px 160px;
    column-gap: 12px;
    width: 500px;
    height: 74px;
    margin: 0 18px 16px 18px;
    padding: 12px;
    border-width: 1px;
    border-style: solid;
}

.admin-news-tabs {
    display: grid;
    grid-template-columns: 180px 180px 180px;
    column-gap: 10px;
    width: 560px;
    height: 46px;
    margin: 0 18px 16px 18px;
}

.admin-news-tabs a,
.admin-news-tabs span {
    display: block;
    width: 180px;
    height: 38px;
    padding-top: 10px;
    border-width: 1px;
    border-style: solid;
    font-weight: 900;
    text-align: center;
    text-transform: uppercase;
}

.admin-news-settings label {
    display: block;
    width: 300px;
    height: 48px;
}

.admin-news-settings span {
    display: block;
    width: 300px;
    height: 18px;
    font-size: 13px;
    font-weight: 900;
    text-transform: uppercase;
}

.admin-news-settings input {
    display: block;
    width: 300px;
    height: 30px;
    padding: 5px 8px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
}

.admin-news-settings button {
    width: 160px;
    height: 36px;
    margin-top: 12px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    font-weight: 900;
    cursor: pointer;
}

.admin-news-form,
.admin-news-list {
    width: 914px;
    margin: 0 18px 16px 18px;
    padding: 12px;
    border-width: 1px;
    border-style: solid;
}

.admin-news-form {
    display: grid;
    grid-template-columns: 286px 286px 286px;
    column-gap: 16px;
    row-gap: 12px;
}

.admin-news-form-title {
    grid-column: 1 / 4;
    width: 888px;
    height: 34px;
    padding: 8px 12px 0 12px;
    border-width: 1px;
    border-style: solid;
    font-size: 16px;
    font-weight: 900;
    text-transform: uppercase;
}

.admin-news-form label {
    display: block;
    width: 286px;
}

.admin-news-form label span {
    display: block;
    width: 286px;
    height: 18px;
    font-size: 13px;
    font-weight: 900;
    text-transform: uppercase;
}

.admin-news-form input[type="text"],
.admin-news-form input[type="datetime-local"],
.admin-news-form textarea {
    display: block;
    width: 286px;
    height: 34px;
    padding: 6px 8px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
}

.admin-news-form textarea {
    height: 86px;
    resize: none;
}

.admin-news-form .admin-news-wide {
    grid-column: 1 / 4;
    width: 888px;
}

.admin-news-form .admin-news-wide span,
.admin-news-form .admin-news-wide input,
.admin-news-form .admin-news-wide textarea {
    width: 888px;
}

.admin-news-simple-form {
    grid-template-columns: 888px;
}

.admin-news-simple-form .admin-news-form-title,
.admin-news-simple-form .admin-news-wide,
.admin-news-simple-form .admin-news-actions,
.admin-news-simple-form .admin-news-auto-info {
    grid-column: 1;
}

.admin-news-auto-info {
    display: block;
    width: 888px;
    height: 34px;
    padding: 8px 12px 0 12px;
    border-width: 1px;
    border-left-width: 4px;
    border-style: solid;
    font-weight: 800;
}

.admin-news-form .admin-news-wide textarea[name="body"] {
    height: 190px;
}

.admin-news-editor-field {
    height: 402px;
}

.admin-news-form .admin-news-editor-field span {
    width: 888px;
}

.admin-news-form .admin-news-editor-field textarea[name="body"] {
    width: 888px;
    height: 360px;
}

.admin-news-form .sceditor-container {
    width: 888px !important;
    height: 360px !important;
    border-width: 1px;
    border-style: solid;
    border-radius: 0;
    font: inherit;
}

.admin-news-form .sceditor-container iframe,
.admin-news-form .sceditor-container textarea {
    width: 872px !important;
    height: 292px !important;
    margin: 8px;
    padding: 0;
    font: inherit;
}

.admin-news-form div.sceditor-toolbar {
    height: 42px;
    padding: 5px 6px;
    border-radius: 0;
    border-bottom-width: 1px;
    border-bottom-style: solid;
}

.admin-news-form div.sceditor-group {
    height: 28px;
    margin: 1px 6px 1px 0;
    padding: 2px;
    border-radius: 0;
}

.admin-news-form .sceditor-button {
    width: 20px;
    height: 20px;
    padding: 4px;
    border-radius: 0;
}

.admin-news-form .sceditor-button div,
.admin-news-form .sceditor-button svg {
    width: 16px;
    height: 16px;
}

.admin-news-form .sceditor-button div,
.admin-news-form div.sceditor-grip {
    background-image: url("/static?file=vendor/sceditor/minified/themes/famfamfam.png") !important;
}

.admin-news-upload {
    grid-column: 1;
    display: grid;
    grid-template-columns: 380px 240px 244px;
    column-gap: 12px;
    width: 888px;
    height: 42px;
}

.admin-news-upload input {
    width: 380px;
    height: 34px;
    padding: 0;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    overflow: hidden;
}

.admin-news-upload button {
    width: 240px;
    height: 34px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    font-weight: 900;
    cursor: pointer;
}

.admin-news-upload button:disabled {
    cursor: wait;
}

.admin-news-upload span {
    display: block;
    width: 244px;
    height: 34px;
    padding: 7px 8px 0 8px;
    border-width: 1px;
    border-style: solid;
    font-size: 12px;
    font-weight: 800;
}

div.sceditor-dropdown {
    width: 300px !important;
    height: auto !important;
    padding: 10px;
    border-width: 1px;
    border-style: solid;
    border-radius: 0;
    overflow: hidden;
}

div.sceditor-dropdown input,
div.sceditor-dropdown textarea {
    display: block;
    width: 278px !important;
    height: 30px;
    padding: 5px 8px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    box-sizing: border-box;
}

div.sceditor-dropdown textarea {
    height: 86px !important;
}

div.sceditor-dropdown .button {
    display: block;
    width: 120px !important;
    height: 34px;
    padding: 0;
    border-width: 1px;
    border-style: solid;
    border-radius: 0;
    font: inherit;
    font-weight: 900;
    text-align: center;
}

div.sceditor-dropdown label {
    display: block;
    width: 278px;
    height: 20px;
    padding: 0;
    font-size: 13px;
    font-weight: 900;
}

.admin-bbcode-editor-field {
    height: 402px;
}

.admin-bbcode-editor-field span {
    width: 888px;
}

.admin-bbcode-editor-field textarea {
    width: 888px;
    height: 360px;
}

.admin-planet-form .sceditor-container,
.admin-screen-form .sceditor-container {
    width: 888px !important;
    height: 360px !important;
    border-width: 1px;
    border-style: solid;
    border-radius: 0;
    font: inherit;
}

.admin-planet-form .sceditor-container iframe,
.admin-planet-form .sceditor-container textarea,
.admin-screen-form .sceditor-container iframe,
.admin-screen-form .sceditor-container textarea {
    width: 872px !important;
    height: 292px !important;
    margin: 8px;
    padding: 0;
    font: inherit;
}

.admin-planet-form div.sceditor-toolbar,
.admin-screen-form div.sceditor-toolbar {
    height: 42px;
    padding: 5px 6px;
    border-radius: 0;
    border-bottom-width: 1px;
    border-bottom-style: solid;
}

.admin-planet-form div.sceditor-group,
.admin-screen-form div.sceditor-group {
    height: 28px;
    margin: 1px 6px 1px 0;
    padding: 2px;
    border-radius: 0;
}

.admin-planet-form .sceditor-button,
.admin-screen-form .sceditor-button {
    width: 20px;
    height: 20px;
    padding: 4px;
    border-radius: 0;
}

.admin-planet-form .sceditor-button div,
.admin-planet-form .sceditor-button svg,
.admin-screen-form .sceditor-button div,
.admin-screen-form .sceditor-button svg {
    width: 16px;
    height: 16px;
}

.admin-planet-form .sceditor-button div,
.admin-planet-form div.sceditor-grip,
.admin-screen-form .sceditor-button div,
.admin-screen-form div.sceditor-grip {
    background-image: url("/static?file=vendor/sceditor/minified/themes/famfamfam.png") !important;
}

div.sceditor-toolbar .sceditor-button div,
div.sceditor-grip {
    display: inline-block !important;
    width: 16px !important;
    height: 16px !important;
    overflow: hidden !important;
    background-image: url("/static?file=vendor/sceditor/minified/themes/famfamfam.png") !important;
    background-repeat: no-repeat !important;
    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
}

.admin-news-checkbox {
    height: 34px;
    padding-top: 19px;
    font-weight: 900;
}

.admin-news-checkbox input {
    width: 18px;
    height: 18px;
    margin-right: 6px;
    vertical-align: middle;
}

.admin-news-actions {
    grid-column: 1 / 4;
    width: 888px;
    height: 42px;
    text-align: right;
}

.admin-news-actions button,
.admin-news-actions a,
.admin-news-row a,
.admin-news-row button {
    display: inline-block;
    width: 148px;
    height: 34px;
    padding: 8px 10px 0 10px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    font-weight: 900;
    text-align: center;
    cursor: pointer;
    vertical-align: top;
}

.admin-news-actions button {
    width: 180px;
}

.admin-news-actions a {
    margin-left: 12px;
}

.admin-news-row {
    display: grid;
    grid-template-columns: 140px 320px 78px 136px 136px;
    column-gap: 12px;
    width: 888px;
    height: 48px;
    padding: 7px 10px;
    border-bottom-width: 1px;
    border-bottom-style: solid;
}

.admin-news-list-meta,
.admin-news-empty {
    width: 888px;
    height: 38px;
    padding: 10px 12px 0 12px;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    font-weight: 900;
}

.admin-news-row span,
.admin-news-row strong,
.admin-news-row em {
    display: block;
    height: 34px;
    padding-top: 8px;
    overflow: hidden;
    font-style: normal;
}

.admin-news-row form {
    display: block;
    width: 136px;
    height: 34px;
    margin: 0;
}

.admin-news-row button {
    width: 136px;
}

.admin-news-pagination {
    width: 888px;
    height: 58px;
    padding: 12px 8px;
    text-align: center;
}

.admin-news-pagination a,
.admin-news-pagination span,
.admin-news-pagination em {
    display: inline-block;
    width: 36px;
    height: 34px;
    margin: 0 3px;
    padding-top: 8px;
    border-width: 1px;
    border-style: solid;
    font-style: normal;
    font-weight: 900;
    text-align: center;
}

.admin-news-pagination a:first-child,
.admin-news-pagination span:first-child,
.admin-news-pagination a:last-child,
.admin-news-pagination span:last-child {
    width: 88px;
}

.admin-screen-page {
    padding-bottom: 24px;
}

.admin-screen-tabs {
    display: grid;
    grid-template-columns: 180px 180px 180px;
    column-gap: 8px;
    width: 918px;
    height: 44px;
    margin: 12px 16px 0 16px;
    padding: 6px;
    border-width: 2px;
    border-style: solid;
}

.admin-screen-tabs a,
.admin-screen-tabs span {
    display: block;
    width: 180px;
    height: 30px;
    padding-top: 7px;
    border-width: 1px;
    border-style: solid;
    font-weight: 900;
    text-align: center;
    text-transform: uppercase;
}

.admin-screen-form,
.admin-screen-list {
    width: 914px;
    margin: 0 18px 16px 18px;
    padding: 12px;
    border-width: 1px;
    border-style: solid;
}

.admin-screen-form {
    display: grid;
    grid-template-columns: 286px 286px 286px;
    column-gap: 16px;
    row-gap: 12px;
}

.admin-screen-form-title {
    grid-column: 1 / 4;
    width: 888px;
    height: 34px;
    padding: 8px 12px 0 12px;
    border-width: 1px;
    border-style: solid;
    font-size: 16px;
    font-weight: 900;
    text-transform: uppercase;
}

.admin-screen-form label {
    display: block;
    width: 286px;
}

.admin-screen-form label span {
    display: block;
    width: 286px;
    height: 18px;
    font-size: 13px;
    font-weight: 900;
    text-transform: uppercase;
}

.admin-screen-form input[type="text"],
.admin-screen-form input[type="number"],
.admin-screen-form input[type="file"],
.admin-screen-form textarea {
    display: block;
    width: 286px;
    height: 34px;
    padding: 6px 8px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
}

.admin-screen-form textarea {
    height: 120px;
    resize: none;
}

.admin-screen-wide {
    grid-column: 1 / 3;
    width: 588px;
}

.admin-screen-form .admin-screen-wide span,
.admin-screen-form .admin-screen-wide textarea {
    width: 588px;
}

.admin-screen-upload-field {
    height: 58px;
}

.admin-screen-upload-field input[type="file"] {
    width: 286px;
    height: 34px;
    padding: 0;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    overflow: hidden;
}

.admin-planet-upload-field input[type="file"],
.admin-screen-upload-field input[type="file"],
.admin-news-upload input[type="file"] {
    height: 34px;
    padding: 0;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    line-height: 32px;
    overflow: hidden;
}

.admin-screen-preview {
    grid-column: 3;
    grid-row: 3 / 5;
    width: 286px;
    height: 168px;
    padding: 10px;
    border-width: 1px;
    border-style: solid;
}

.admin-screen-preview strong,
.admin-screen-preview span {
    display: block;
    width: 264px;
    height: 22px;
    font-weight: 900;
    text-transform: uppercase;
}

.admin-screen-preview img {
    display: block;
    width: 164px;
    height: 104px;
    object-fit: contain;
    margin: 12px auto 0 auto;
}

.admin-screen-form .admin-bbcode-editor-field {
    grid-column: 1 / 3;
    width: 588px;
    height: 402px;
}

.admin-planet-form .admin-bbcode-editor-field {
    grid-column: 1 / 3;
    width: 588px;
    height: 402px;
}

.admin-screen-form .admin-bbcode-editor-field span {
    width: 588px;
}

.admin-planet-form .admin-bbcode-editor-field span {
    width: 588px;
}

.admin-screen-form .admin-bbcode-editor-field textarea {
    width: 588px;
    height: 360px;
}

.admin-planet-form .admin-bbcode-editor-field textarea {
    width: 588px;
    height: 360px;
}

.admin-planet-form .sceditor-container,
.admin-screen-form .sceditor-container {
    width: 588px !important;
}

.admin-planet-form .sceditor-container iframe,
.admin-planet-form .sceditor-container textarea,
.admin-screen-form .sceditor-container iframe,
.admin-screen-form .sceditor-container textarea {
    width: 572px !important;
}

.admin-screen-checkbox {
    grid-column: 1;
    height: 34px;
    padding-top: 10px;
    font-weight: 900;
}

.admin-screen-checkbox input {
    width: 18px;
    height: 18px;
    margin-right: 6px;
    vertical-align: middle;
}

.admin-screen-actions {
    grid-column: 1 / 4;
    width: 888px;
    height: 42px;
    text-align: right;
}

.admin-screen-actions button,
.admin-screen-actions a,
.admin-screen-row a,
.admin-screen-row button {
    display: inline-block;
    width: 160px;
    height: 34px;
    margin-left: 8px;
    padding: 8px 10px 0 10px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    font-weight: 900;
    text-align: center;
    cursor: pointer;
    vertical-align: top;
}

.admin-screen-row {
    display: grid;
    grid-template-columns: 82px 54px 324px 76px 136px 136px;
    column-gap: 12px;
    width: 888px;
    height: 72px;
    padding: 10px 8px;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    align-items: center;
}

.admin-screen-row img {
    width: 82px;
    height: 52px;
    object-fit: contain;
}

.admin-screen-row span,
.admin-screen-row strong,
.admin-screen-row em {
    display: block;
    overflow: hidden;
    font-style: normal;
    font-weight: 900;
}

.admin-screen-row form {
    width: 136px;
    height: 34px;
    margin: 0;
}

.admin-screen-row button,
.admin-screen-row a {
    width: 136px;
    margin-left: 0;
}

.admin-planet-actions a,
.admin-screen-actions a {
    margin-left: 12px;
}

.admin-screen-list-meta,
.admin-screen-empty {
    width: 888px;
    height: 34px;
    padding: 8px 12px 0 12px;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    font-weight: 900;
}

.admin-screen-pagination {
    width: 888px;
    height: 58px;
    padding: 12px 8px;
    text-align: center;
}

.admin-screen-pagination a,
.admin-screen-pagination span,
.admin-screen-pagination em {
    display: inline-block;
    width: 36px;
    height: 34px;
    margin: 0 3px;
    padding-top: 8px;
    border-width: 1px;
    border-style: solid;
    font-style: normal;
    font-weight: 900;
    text-align: center;
}

.admin-screen-pagination a:first-child,
.admin-screen-pagination span:first-child,
.admin-screen-pagination a:last-child,
.admin-screen-pagination span:last-child {
    width: 88px;
}

.info-page {
    width: 950px;
    padding: 0 0 24px 0;
}

.info-hub {
    display: grid;
    grid-template-columns: 208px 488px 208px;
    column-gap: 10px;
    width: 950px;
    height: 294px;
    margin-top: 12px;
    padding: 10px 12px;
    border-width: 1px;
    border-style: solid;
}

.info-menu {
    width: 208px;
    height: 272px;
    padding: 7px 9px;
    border-width: 1px;
    border-style: solid;
    overflow: hidden;
}

.info-menu a {
    display: block;
    width: 188px;
    height: 15px;
    margin-bottom: 1px;
    overflow: hidden;
    font-size: 12px;
    font-weight: 700;
    line-height: 14px;
}

.info-hub-center {
    width: 488px;
    height: 272px;
    padding: 10px;
    border-width: 1px;
    border-style: solid;
    text-align: center;
}

.info-hub-center img {
    display: block;
    width: 466px;
    height: 158px;
    object-fit: contain;
    margin: 0 auto 12px auto;
    border-width: 1px;
    border-style: solid;
}

.info-hub-title {
    width: 466px;
    height: 34px;
    margin: 0 auto;
    padding-top: 6px;
    font-size: 20px;
    font-weight: 900;
}

.info-hub-current {
    width: 466px;
    height: 28px;
    margin: 4px auto 0 auto;
    font-size: 16px;
    font-weight: 700;
}

.info-content {
    width: 950px;
    margin-top: 12px;
    padding: 18px 20px;
    border-width: 1px;
    border-style: solid;
}

.info-content h1 {
    width: 908px;
    height: 42px;
    margin: 0 0 14px 0;
    padding-top: 9px;
    overflow: hidden;
    border-width: 1px;
    border-style: solid;
    background-image: linear-gradient(90deg, rgba(0,0,0,.82), rgba(0,0,0,.44)), var(--left-menu-banner-image);
    background-position: center center;
    background-size: cover;
    font-size: 22px;
    font-weight: 900;
    line-height: 22px;
    text-align: center;
    text-transform: uppercase;
}

.info-summary {
    width: 898px;
    margin: 0 0 16px 0;
    padding: 12px 14px;
    border-left-width: 3px;
    border-left-style: solid;
    font-size: 16px;
    line-height: 1.35;
}

.info-content-section {
    width: 908px;
    margin-top: 10px;
    padding: 12px 14px;
    border-width: 1px;
    border-style: solid;
}

.info-content-section .bbcode-content {
    width: 878px;
    line-height: 1.48;
}

.info-content-section h2 {
    margin: 0 0 7px 0;
    font-size: 19px;
    font-weight: 900;
}

.info-content-section p {
    margin: 0;
    font-size: 15px;
    line-height: 1.38;
}

.partner-page {
    width: 950px;
    padding: 0 0 24px 0;
}

.partner-overview {
    position: relative;
    width: 950px;
    height: 210px;
    margin-top: 12px;
    padding: 0;
    border-width: 1px;
    border-style: solid;
    overflow: hidden;
}

.partner-overview-image {
    position: absolute;
    left: 0;
    top: 0;
    width: 948px;
    height: 208px;
    object-fit: fill;
}

.partner-overview::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 948px;
    height: 208px;
}

.partner-overview-title {
    position: relative;
    z-index: 1;
    width: 948px;
    height: 34px;
    padding: 7px 12px 0 12px;
    font-size: 22px;
    font-weight: 900;
}

.partner-overview-body {
    position: relative;
    z-index: 1;
    width: 948px;
    height: 174px;
    padding: 20px 22px;
}

.partner-overview-text {
    width: 386px;
    height: 134px;
    margin-left: 0;
    padding: 14px 16px;
    border-width: 1px;
    border-style: solid;
    text-align: left;
}

.partner-overview-text p {
    margin: 0;
    font-size: 15px;
    line-height: 1.25;
}

.partner-overview-button {
    display: block;
    width: 160px;
    height: 32px;
    margin-top: 16px;
    padding: 7px 10px 0 10px;
    border-width: 1px;
    border-style: solid;
    font-size: 15px;
    font-weight: 900;
    text-align: center;
    text-decoration: none;
}

.partner-join {
    width: 950px;
    margin: 14px 0 0 0;
    padding: 0;
    border-width: 1px;
    border-style: solid;
}

.partner-join-head {
    width: 948px;
    padding: 14px 18px 10px 18px;
    text-align: left;
}

.partner-join-head h2 {
    margin: 0 0 8px 0;
    font-size: 22px;
    font-weight: 900;
}

.partner-join-head p {
    margin: 0 0 8px 0;
    font-size: 16px;
    line-height: 1.35;
}

.partner-banner-list {
    display: grid;
    grid-template-columns: 410px 410px;
    column-gap: 18px;
    row-gap: 14px;
    width: 874px;
    padding: 0 18px 16px 18px;
}

.partner-banner-entry {
    width: 410px;
    border-width: 1px;
    border-style: solid;
}

.partner-banner-label {
    width: 408px;
    height: 24px;
    padding: 3px 8px 0 8px;
    font-size: 16px;
    font-weight: 900;
    text-align: left;
}

.partner-own-banner {
    display: block;
    width: 388px;
    height: 48px;
    margin: 10px auto 8px auto;
    object-fit: cover;
    border-width: 1px;
    border-style: solid;
}

.partner-banner-entry textarea {
    display: block;
    width: 388px;
    height: 54px;
    margin: 0 auto 12px auto;
    padding: 6px 8px;
    resize: none;
    font: inherit;
    line-height: 1.2;
}

.site-footer {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 1486px;
    height: 54px;
    margin-top: 20px;
    padding: 10px 14px;
    border-width: 1px;
    border-top-width: 1px;
    border-top-style: solid;
    border-style: solid;
    text-align: center;
    font-size: 12px;
    font-weight: 700;
}

.footer-legal {
    width: 1040px;
    margin: 0;
    line-height: 1.35;
}

.footer-cookie-link {
    display: inline;
    padding: 0;
    border: 0;
    background: transparent;
    font: inherit;
    font-weight: 700;
    cursor: pointer;
}

.system-message-overlay {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 30000;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .76);
}

.system-message-modal {
    width: 640px;
    border-width: 2px;
    border-style: solid;
    overflow: hidden;
}

.system-message-head {
    width: 636px;
    height: 42px;
    padding: 12px 14px 0 14px;
    overflow: hidden;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    font-size: 17px;
    font-weight: 900;
    line-height: 18px;
    text-transform: uppercase;
}

.system-message-body {
    width: 636px;
    padding: 14px 16px 6px 16px;
}

.system-message-line {
    width: 604px;
    margin-bottom: 10px;
    padding: 12px 14px;
    border-width: 1px;
    border-left-width: 4px;
    border-style: solid;
    line-height: 18px;
}

.system-message-foot {
    width: 636px;
    height: 54px;
    padding: 10px 16px 0 16px;
    border-top-width: 1px;
    border-top-style: solid;
    text-align: right;
}

.system-message-ok {
    width: 112px;
    height: 34px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    font-weight: 900;
    cursor: pointer;
}

.scroll-top-button {
    position: fixed;
    right: 22px;
    bottom: 22px;
    z-index: 50;
    width: 42px;
    height: 42px;
    display: none;
    align-items: center;
    justify-content: center;
    border-width: 1px;
    border-style: solid;
    font-size: 18px;
    font-weight: 900;
    line-height: 1;
    cursor: pointer;
}

.scroll-top-button.is-visible {
    display: flex;
}

.cookie-modal {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 21000;
    display: none;
    width: 100%;
    height: 100%;
    padding-top: 34px;
}

.cookie-modal.is-open {
    display: block;
}

.cookie-modal-box {
    width: 760px;
    height: 542px;
    margin: 0 auto;
    border-width: 2px;
    border-style: solid;
    overflow: hidden;
}

.cookie-modal-head {
    width: 756px;
    height: 42px;
    padding: 12px 14px 0 14px;
    overflow: hidden;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    font-size: 17px;
    font-weight: 900;
    line-height: 18px;
    text-transform: uppercase;
}

.cookie-modal-close {
    float: right;
    width: 38px;
    height: 28px;
    margin-top: -5px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    font-weight: 900;
    cursor: pointer;
}

.cookie-modal-body {
    width: 756px;
    height: 434px;
    padding: 14px 16px;
}

.cookie-modal-text {
    width: 724px;
    height: 102px;
    margin: 0 0 12px 0;
    padding: 14px 16px;
    border-width: 1px;
    border-style: solid;
    font-size: 14px;
    line-height: 1.32;
}

.cookie-modal-text span {
    display: block;
    margin-top: 6px;
    font-weight: 900;
}

.cookie-modal-row {
    display: grid;
    grid-template-columns: 552px 136px;
    column-gap: 14px;
    width: 724px;
    height: 88px;
    margin-bottom: 10px;
    padding: 12px 14px;
    border-width: 1px;
    border-style: solid;
}

.cookie-modal-row > span {
    display: block;
    width: 552px;
    height: 62px;
}

.cookie-modal-row-title {
    display: block;
    height: 22px;
    font-size: 17px;
    font-weight: 900;
    text-transform: uppercase;
}

.cookie-modal-row-text {
    display: block;
    height: 40px;
    margin-top: 4px;
    font-size: 14px;
    line-height: 1.25;
}

.cookie-modal-row-state {
    width: 136px;
    height: 24px;
    margin-top: 21px;
    font-size: 14px;
    font-weight: 900;
    text-align: right;
}

.cookie-modal-choice {
    cursor: pointer;
}

.cookie-modal-choice input {
    width: 24px;
    height: 24px;
    margin-top: 20px;
    margin-left: 112px;
}

.cookie-modal-actions {
    width: 756px;
    height: 64px;
    padding: 14px 16px;
    border-top-width: 1px;
    border-top-style: solid;
    text-align: center;
}

.cookie-modal-actions button {
    display: inline-block;
    width: 226px;
    height: 36px;
    margin: 0;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    font-weight: 900;
    cursor: pointer;
}

.cookie-modal-actions button + button {
    margin-left: 8px;
}

.content-box,
.section-title,
.news-post,
.news-preview,
.news-more,
.news-history-head,
.news-history-search,
.news-history-entry,
.news-history-pagination,
.players-head,
.players-search,
.players-table-wrap,
.players-pagination,
.online-empty,
.online-overview,
.online-planet-section,
.today-online-section,
.login-page-panel,
.register-panel,
.admin-news-page,
.admin-news-settings,
.admin-news-list,
.admin-news-form,
.admin-planet-page,
.admin-planet-tabs,
.admin-planet-list,
.admin-planet-form,
.admin-screen-page,
.admin-screen-tabs,
.admin-screen-list,
.admin-screen-form,
.info-content,
.partner-overview,
.partner-join {
    border-width: 1px;
}

.admin-info-tabs {
    grid-template-columns: repeat(6, 138px);
    width: 888px;
}

.admin-info-tabs a,
.admin-info-tabs span {
    width: 138px;
}

.admin-videos-page .admin-news-tabs {
    grid-template-columns: 220px 220px 220px;
    width: 680px;
}

.admin-videos-page .admin-news-tabs a,
.admin-videos-page .admin-news-tabs span {
    width: 220px;
    height: 46px;
    padding-top: 11px;
    line-height: 16px;
}

.admin-team-tabs {
    display: grid;
    grid-template-columns: 180px 180px 180px;
    column-gap: 10px;
    width: 560px;
    height: 46px;
    margin: 0 18px 16px 18px;
}

.admin-team-tabs a,
.admin-team-tabs span {
    display: block;
    width: 180px;
    height: 38px;
    padding-top: 10px;
    border-width: 1px;
    border-style: solid;
    font-weight: 900;
    text-align: center;
    text-transform: uppercase;
}

.admin-info-form,
.admin-team-form,
.admin-videos-form {
    width: 888px;
    padding: 12px;
}

.admin-info-form .admin-news-wide textarea {
    width: 862px;
    height: 82px;
}

.admin-info-editor-field .sceditor-container,
.admin-team-editor-field .sceditor-container,
.admin-video-editor-field .sceditor-container {
    width: 862px !important;
    height: 342px !important;
}

.admin-team-editor-field .sceditor-container {
    width: 868px !important;
    height: 330px !important;
}

.admin-info-editor-field .sceditor-container iframe,
.admin-info-editor-field .sceditor-container textarea,
.admin-team-editor-field .sceditor-container iframe,
.admin-team-editor-field .sceditor-container textarea,
.admin-video-editor-field .sceditor-container iframe,
.admin-video-editor-field .sceditor-container textarea {
    width: 846px !important;
    height: 258px !important;
    margin: 8px;
    padding: 0;
    font: inherit;
    color: #dff8fb !important;
}

.admin-team-editor-field .sceditor-container iframe,
.admin-team-editor-field .sceditor-container textarea {
    width: 852px !important;
    height: 246px !important;
}

.admin-info-editor-field .sceditor-container textarea,
.admin-team-editor-field .sceditor-container textarea,
.admin-video-editor-field .sceditor-container textarea {
    background: #071012 !important;
    color: #dff8fb !important;
}

.admin-video-form-grid {
    display: grid;
    grid-template-columns: 278px 278px 278px;
    column-gap: 14px;
    row-gap: 12px;
    width: 862px;
}

.admin-video-form-grid label {
    display: block;
    width: 278px;
}

.admin-video-form-grid label.admin-news-wide {
    grid-column: 1 / 4;
    width: 862px;
}

.admin-video-form-grid input,
.admin-video-form-grid select,
.admin-video-form-grid textarea {
    width: 278px;
}

.admin-team-form-grid {
    display: grid;
    grid-template-columns: 280px 280px 280px;
    column-gap: 14px;
    row-gap: 12px;
    width: 868px;
}

.admin-team-field {
    display: block;
    width: 280px;
    height: 56px;
}

.admin-team-field span,
.admin-team-editor-field span {
    display: block;
    width: 280px;
    height: 18px;
    margin-bottom: 4px;
    font-weight: 900;
    text-transform: uppercase;
}

.admin-team-field input {
    width: 280px;
    height: 34px;
    padding: 6px 8px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
}

.admin-team-editor-field {
    grid-column: 1 / 4;
    display: block;
    width: 868px;
    height: 358px;
}

.admin-team-editor-field span {
    width: 868px;
}

.admin-team-editor-field textarea {
    width: 868px;
    height: 330px;
}

.admin-team-checkbox {
    grid-column: 1;
    display: block;
    width: 280px;
    height: 38px;
    padding-top: 8px;
    font-weight: 900;
}

.admin-team-checkbox input {
    width: 18px;
    height: 18px;
    margin-right: 8px;
    vertical-align: middle;
}

.admin-team-actions {
    grid-column: 2 / 4;
    width: 574px;
    height: 42px;
    text-align: right;
}

.admin-team-actions button,
.admin-team-actions a {
    display: inline-block;
    width: 180px;
    height: 34px;
    padding: 8px 10px 0 10px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    font-weight: 900;
    text-align: center;
    cursor: pointer;
    vertical-align: top;
}

.admin-team-actions a {
    margin-left: 12px;
}

.admin-team-row,
.admin-video-row {
    display: grid;
    column-gap: 12px;
    width: 888px;
    height: 78px;
    padding: 7px 10px;
    border-bottom-width: 1px;
    border-bottom-style: solid;
}

.admin-team-row {
    grid-template-columns: 70px 210px 180px 82px 136px 136px;
}

.admin-video-row {
    grid-template-columns: 126px 330px 82px 136px 136px;
}

.admin-team-row strong,
.admin-team-row span,
.admin-team-row em,
.admin-video-row strong,
.admin-video-row span,
.admin-video-row em {
    display: block;
    height: 64px;
    padding-top: 20px;
    overflow: hidden;
    font-style: normal;
}

.admin-team-row .players-avatar-wrap {
    padding-top: 0;
}

.admin-team-row a,
.admin-team-row button,
.admin-video-row a,
.admin-video-row button {
    display: inline-block;
    width: 136px;
    height: 34px;
    margin-top: 15px;
    padding: 8px 10px 0 10px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    font-weight: 900;
    text-align: center;
    cursor: pointer;
    vertical-align: top;
}

.admin-team-row form,
.admin-video-row form {
    display: block;
    width: 136px;
    height: 64px;
    margin: 0;
}

.admin-video-row img {
    display: block;
    width: 112px;
    height: 64px;
    object-fit: contain;
    border-width: 1px;
    border-style: solid;
}

.info-empty {
    width: 840px;
    padding: 14px 16px;
    border-width: 1px;
    border-style: solid;
    font-weight: 900;
}

.info-team-list,
.info-video-list {
    width: 840px;
}

.info-team-list {
    width: 908px;
}

.info-team-section-title {
    width: 908px;
    height: 46px;
    margin-bottom: 14px;
    border-width: 1px;
    border-style: solid;
    background-image: linear-gradient(90deg, rgba(0,0,0,.78), rgba(0,0,0,.35)), var(--left-menu-banner-image);
    background-size: cover;
    background-position: center;
}

.info-team-section-title span {
    display: block;
    width: 906px;
    height: 44px;
    padding-top: 12px;
    text-align: center;
    font-size: 22px;
    font-weight: 900;
    line-height: 22px;
    text-transform: uppercase;
}

.info-team-card {
    display: grid;
    grid-template-columns: 170px 644px;
    grid-template-rows: 38px 170px;
    column-gap: 0;
    width: 840px;
    padding: 0 12px 12px 12px;
    border-width: 1px;
    border-style: solid;
    margin-bottom: 14px;
}

.info-team-card-head {
    grid-column: 1 / 3;
    width: 814px;
    height: 38px;
    margin-bottom: 0;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    background-image: linear-gradient(90deg, rgba(0,0,0,.78), rgba(0,0,0,.35)), var(--left-menu-banner-image);
    background-size: cover;
    background-position: center;
}

.info-team-card-head span {
    display: block;
    width: 814px;
    height: 37px;
    padding-top: 10px;
    text-align: center;
    font-size: 18px;
    font-weight: 900;
    line-height: 18px;
    text-transform: uppercase;
}

.info-team-profile {
    grid-column: 1;
    width: 170px;
    height: 170px;
    padding-top: 12px;
    text-align: center;
}

.info-team-avatar,
.info-team-avatar img {
    width: 128px;
    height: 128px;
}

.info-team-profile strong {
    display: block;
    width: 170px;
    height: 28px;
    padding-top: 7px;
    overflow: hidden;
    font-size: 17px;
    line-height: 19px;
    text-align: center;
}

.info-team-body {
    grid-column: 2;
    width: 644px;
    height: 170px;
    padding: 16px 18px;
    border-left-width: 0;
    border-left-style: none;
    overflow: hidden;
}

.info-video-card h2 {
    height: 32px;
    margin: 0 0 6px 0;
    font-size: 24px;
    line-height: 32px;
}

.info-team-body .bbcode-content {
    width: 608px;
    font-size: 17px;
    line-height: 26px;
    overflow: hidden;
}

.right-menu-sub-dropdown {
    width: 248px;
}

.right-menu-dropdown-list .right-menu-sub-dropdown summary {
    width: 248px;
    height: 36px;
    padding: 10px 36px 0 46px;
    font-size: 13px;
    font-weight: 700;
    line-height: 16px;
    text-transform: none;
    box-sizing: border-box;
}

.right-menu-dropdown-list .right-menu-sub-dropdown summary::after {
    top: 11px;
}

.right-menu-dropdown-list .right-menu-sub-dropdown summary[data-icon]::before {
    left: 16px;
    top: 8px;
}

.right-menu-dropdown-list .right-menu-sub-dropdown .right-menu-dropdown-list a {
    width: 248px;
    padding-left: 54px;
    padding-right: 24px;
    box-sizing: border-box;
}

.right-menu-dropdown-list .right-menu-sub-dropdown .right-menu-dropdown-list a[data-icon]::before {
    left: 26px;
    top: 8px;
}

.info-video-card {
    width: 840px;
    padding: 14px;
    border-width: 1px;
    border-style: solid;
    margin-bottom: 14px;
}

.info-video-card iframe {
    display: block;
    width: 810px;
    height: 456px;
    border-width: 1px;
    border-style: solid;
}

.info-video-description {
    width: 810px;
    padding: 12px 0;
}

.info-video-link {
    display: inline-block;
    width: 210px;
    height: 34px;
    padding-top: 8px;
    border-width: 1px;
    border-style: solid;
    text-align: center;
    font-weight: 900;
}

.info-team-section-title,
.info-team-section-title span,
.info-team-card,
.info-team-card-head,
.info-team-card-head span,
.info-team-profile,
.info-team-body,
.info-team-body .bbcode-content {
    box-sizing: border-box;
}

.admin-news-tabs,
.admin-screen-tabs {
    display: grid;
    grid-template-columns: 180px 180px 180px;
    column-gap: 8px;
    width: 918px;
    height: 44px;
    margin: 12px 16px 0 16px;
    padding: 6px;
    border-width: 2px;
    border-style: solid;
    box-sizing: border-box;
}

.admin-news-tabs a,
.admin-news-tabs span,
.admin-screen-tabs a,
.admin-screen-tabs span {
    display: block;
    width: 180px;
    height: 30px;
    padding-top: 7px;
    border-width: 1px;
    border-style: solid;
    font-weight: 900;
    line-height: 16px;
    text-align: center;
    text-transform: none;
    box-sizing: border-box;
}

.admin-news-settings,
.admin-news-form,
.admin-news-list,
.admin-screen-form,
.admin-screen-list {
    width: 918px;
    margin: 12px 16px 0 16px;
    border-width: 2px;
    border-style: solid;
    box-sizing: border-box;
}

.admin-news-list,
.admin-news-form,
.admin-screen-list,
.admin-screen-form {
    padding: 12px;
}

.admin-news-row {
    display: grid;
    grid-template-columns: 140px 296px 78px 146px 146px;
    column-gap: 14px;
    width: 890px;
    height: 54px;
    margin-top: 8px;
    padding: 9px 10px;
    border-width: 1px;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-style: solid;
    box-sizing: border-box;
}

.admin-news-row span,
.admin-news-row strong,
.admin-news-row em {
    display: block;
    height: 34px;
    padding-top: 8px;
    overflow: hidden;
    font-style: normal;
    line-height: 18px;
    text-overflow: ellipsis;
    white-space: nowrap;
    box-sizing: border-box;
}

.admin-news-row a,
.admin-news-row button,
.admin-screen-row a,
.admin-screen-row button {
    display: inline-block;
    width: 146px;
    height: 34px;
    margin-left: 0;
    padding: 8px 10px 0 10px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    font-weight: 900;
    line-height: 16px;
    text-align: center;
    cursor: pointer;
    vertical-align: top;
    box-sizing: border-box;
}

.admin-news-row form,
.admin-screen-row form {
    display: block;
    width: 146px;
    height: 34px;
    margin: 0;
}

.admin-news-actions,
.admin-screen-actions {
    grid-column: 1 / 4;
    width: 890px;
    height: 42px;
    text-align: right;
    box-sizing: border-box;
}

.admin-news-actions button,
.admin-news-actions a,
.admin-screen-actions button,
.admin-screen-actions a {
    display: inline-block;
    width: 160px;
    height: 34px;
    margin-left: 8px;
    padding: 8px 10px 0 10px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    font-weight: 900;
    line-height: 16px;
    text-align: center;
    cursor: pointer;
    vertical-align: top;
    box-sizing: border-box;
}

.admin-news-actions a,
.admin-screen-actions a {
    margin-left: 12px;
}

.admin-screen-row {
    grid-template-columns: 82px 54px 300px 76px 146px 146px;
    column-gap: 14px;
    width: 890px;
    height: 72px;
    padding: 10px 8px;
    box-sizing: border-box;
}

.admin-screen-row form {
    width: 146px;
}

.top-nav a {
    padding-left: 12px;
}

.top-nav a[data-icon]::before,
.left-game-menu-list > a[data-icon]::before,
.left-game-menu-list > span[data-icon]::before,
.left-menu-dropdown-list a[data-icon]::before,
.left-menu-dropdown-list span[data-icon]::before,
.right-game-menu-list > a[data-icon]::before,
.right-game-menu-list > span[data-icon]::before,
.right-menu-dropdown-list a[data-icon]::before,
.right-menu-dropdown-list span[data-icon]::before {
    display: none !important;
}

.left-game-title[data-icon]::before,
.right-game-title[data-icon]::before,
.left-menu-dropdown summary[data-icon]::before,
.right-menu-dropdown summary[data-icon]::before,
.right-menu-dropdown-list .right-menu-sub-dropdown summary[data-icon]::before {
    top: 50%;
    transform: translateY(-50%);
}

.left-game-menu-list > a[data-icon],
.left-game-menu-list > span[data-icon],
.left-menu-dropdown-list a[data-icon],
.left-menu-dropdown-list span[data-icon],
.right-game-menu-list > a[data-icon],
.right-game-menu-list > span[data-icon],
.right-menu-dropdown-list a[data-icon],
.right-menu-dropdown-list span[data-icon] {
    padding-left: 32px;
}

.left-menu-dropdown > summary[data-icon],
.right-menu-dropdown > summary[data-icon],
.right-menu-sub-dropdown > summary[data-icon] {
    padding-left: 46px;
}

.info-team-section-title {
    width: 908px;
    height: 48px;
    margin-bottom: 14px;
    border-width: 1px;
    border-style: solid;
    background-image: linear-gradient(90deg, rgba(0,0,0,.82), rgba(0,0,0,.44)), var(--left-menu-banner-image);
    background-position: center center;
    background-size: cover;
}

.info-team-section-title span {
    display: block;
    width: 906px;
    height: 46px;
    padding-top: 12px;
    text-align: center;
    font-size: 22px;
    font-weight: 900;
    line-height: 22px;
    text-transform: uppercase;
}

.info-team-card {
    display: grid;
    grid-template-columns: 210px 696px;
    grid-template-rows: 42px 218px;
    column-gap: 0;
    width: 908px;
    height: 262px;
    padding: 0;
    border-width: 1px;
    border-style: solid;
    margin-bottom: 14px;
    overflow: hidden;
}

.info-team-card-head {
    grid-column: 1 / 3;
    width: 906px;
    height: 42px;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    background-image: none;
}

.info-team-card-head span {
    display: block;
    width: 906px;
    height: 41px;
    padding-top: 10px;
    overflow: hidden;
    text-align: center;
    font-size: 20px;
    font-weight: 900;
    line-height: 20px;
    text-transform: none;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.info-team-profile {
    grid-column: 1;
    grid-row: 2;
    width: 210px;
    height: 218px;
    padding-top: 18px;
    border-right-width: 1px;
    border-right-style: solid;
    text-align: center;
}

.info-team-avatar,
.info-team-avatar img {
    display: block;
    width: 132px;
    height: 132px;
    margin: 0 auto;
}

.info-team-profile strong {
    display: block;
    width: 208px;
    height: 34px;
    padding-top: 9px;
    overflow: hidden;
    font-size: 18px;
    line-height: 18px;
    text-align: center;
    text-transform: uppercase;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.info-team-body {
    grid-column: 2;
    grid-row: 2;
    width: 696px;
    height: 218px;
    padding: 22px 24px;
    border-left-width: 0;
    border-left-style: none;
    overflow: hidden;
}

.info-team-body .bbcode-content {
    width: 648px;
    font-size: 17px;
    line-height: 26px;
    overflow: visible;
}

.left-game-menu-list a[data-icon]::before,
.left-game-menu-list span[data-icon]::before,
.left-menu-dropdown summary[data-icon]::before,
.right-game-menu-list a[data-icon]::before,
.right-game-menu-list span[data-icon]::before,
.right-menu-dropdown summary[data-icon]::before,
.right-menu-dropdown-list .right-menu-sub-dropdown summary[data-icon]::before,
.right-menu-dropdown-list .right-menu-sub-dropdown .right-menu-dropdown-list a[data-icon]::before {
    display: none !important;
}

.left-game-menu-list a[data-icon],
.left-game-menu-list span[data-icon],
.left-menu-dropdown summary[data-icon],
.left-menu-dropdown-list a[data-icon],
.left-menu-dropdown-list span[data-icon],
.right-game-menu-list a[data-icon],
.right-game-menu-list span[data-icon],
.right-menu-dropdown summary[data-icon],
.right-menu-dropdown-list a[data-icon],
.right-menu-dropdown-list span[data-icon],
.right-menu-dropdown-list .right-menu-sub-dropdown .right-menu-dropdown-list a[data-icon] {
    padding-left: 32px;
}

.profile-page {
    width: 950px;
}

.profile-showcase {
    position: relative;
    width: 950px;
    height: 646px;
    overflow: hidden;
    border-width: 1px;
    border-style: solid;
    background-image:
        radial-gradient(circle at 52% 42%, rgba(255, 255, 255, .08), transparent 240px),
        linear-gradient(90deg, rgba(0, 0, 0, .82), rgba(0, 0, 0, .38), rgba(0, 0, 0, .82)),
        var(--left-menu-banner-image);
    background-position: center center;
    background-size: cover;
}

.profile-card {
    position: absolute;
    overflow: hidden;
    border-width: 1px;
    border-style: solid;
}

.profile-identity-card {
    left: 18px;
    top: 18px;
    display: grid;
    grid-template-columns: 78px 118px;
    grid-template-rows: 78px;
    width: 214px;
    height: 92px;
    padding: 10px 8px;
}

.profile-avatar-frame {
    position: relative;
    display: block;
    width: 72px;
    height: 72px;
}

.profile-avatar-frame img {
    display: block;
    width: 70px;
    height: 70px;
    object-fit: contain;
    border-width: 1px;
    border-style: solid;
}

.profile-avatar-frame.is-team::after {
    position: absolute;
    right: 1px;
    bottom: 1px;
    width: 34px;
    height: 12px;
    content: "DB-RG";
    font-size: 8px;
    font-weight: 900;
    line-height: 12px;
    text-align: center;
}

.profile-identity-text {
    width: 118px;
    height: 72px;
    padding-left: 8px;
}

.profile-identity-text strong,
.profile-identity-text span,
.profile-identity-text em {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.profile-identity-text strong {
    height: 22px;
    font-size: 16px;
    line-height: 22px;
}

.profile-identity-text span {
    height: 18px;
    font-size: 12px;
    line-height: 18px;
}

.profile-identity-text em {
    height: 18px;
    font-size: 12px;
    font-style: normal;
    font-weight: 900;
    line-height: 18px;
}

.profile-team-badge {
    position: absolute;
    right: 8px;
    bottom: 6px;
    width: 74px;
    height: 16px;
    overflow: hidden;
    font-size: 10px;
    font-weight: 900;
    line-height: 16px;
    text-align: center;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.profile-ki-card {
    left: 18px;
    top: 138px;
    width: 216px;
    height: 82px;
    padding: 12px 16px;
}

.profile-location-card {
    left: 18px;
    top: 248px;
    width: 216px;
    height: 92px;
    padding: 12px 16px;
}

.profile-clan-card {
    left: 18px;
    top: 368px;
    width: 216px;
    height: 96px;
    padding: 12px 16px;
}

.profile-ki-card span,
.profile-location-card span,
.profile-clan-card span {
    display: block;
    height: 20px;
    font-size: 12px;
    font-weight: 900;
    line-height: 20px;
    text-transform: uppercase;
}

.profile-ki-card strong,
.profile-location-card strong,
.profile-clan-card strong {
    display: block;
    width: 184px;
    overflow: hidden;
    font-size: 24px;
    line-height: 30px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.profile-character-stage {
    position: absolute;
    left: 294px;
    top: 70px;
    width: 360px;
    height: 500px;
}

.profile-character-layer {
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    width: 360px;
    height: 500px;
    object-fit: contain;
}

.profile-character-stage-fallback {
    top: 148px;
    height: 300px;
    text-align: center;
}

.profile-character-stage-fallback img {
    display: block;
    width: 220px;
    height: 220px;
    margin: 40px auto 0;
    object-fit: contain;
}

.profile-level-badge {
    position: absolute;
    right: 52px;
    top: 18px;
    width: 144px;
    height: 144px;
    border-width: 5px;
    border-style: solid;
    border-radius: 72px;
    text-align: center;
}

.profile-level-badge span {
    display: block;
    height: 34px;
    padding-top: 26px;
    font-size: 15px;
    font-weight: 900;
    line-height: 18px;
    text-transform: uppercase;
}

.profile-level-badge strong {
    display: block;
    height: 58px;
    font-size: 48px;
    font-weight: 900;
    line-height: 58px;
}

.profile-action-rail {
    position: absolute;
    right: 40px;
    top: 208px;
    display: grid;
    grid-template-columns: 1fr;
    row-gap: 10px;
    width: 116px;
}

.profile-action-rail a {
    display: block;
    width: 116px;
    height: 44px;
    overflow: hidden;
    border-width: 1px;
    border-style: solid;
    font-size: 13px;
    font-weight: 900;
    line-height: 42px;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.profile-facts-panel {
    position: absolute;
    left: 258px;
    bottom: 18px;
    width: 434px;
    height: 126px;
    overflow: hidden;
    border-width: 1px;
    border-style: solid;
}

.profile-stat-bar {
    position: relative;
    width: 432px;
    height: 24px;
    overflow: hidden;
    border-bottom-width: 1px;
    border-bottom-style: solid;
}

.profile-stat-bar meter {
    position: absolute;
    left: 0;
    top: 0;
    width: 432px;
    height: 24px;
    border: 0;
}

.profile-stat-bar meter::-webkit-meter-bar {
    border: 0;
    border-radius: 0;
}

.profile-stat-bar meter::-webkit-meter-optimum-value {
    border-radius: 0;
}

.profile-stat-bar meter::-moz-meter-bar {
    border-radius: 0;
}

.profile-stat-bar strong {
    position: relative;
    z-index: 2;
    display: block;
    width: 432px;
    height: 24px;
    font-size: 13px;
    font-weight: 900;
    line-height: 24px;
    text-align: center;
}

.profile-facts-grid {
    display: grid;
    grid-template-columns: 72px 145px 84px 131px;
    grid-template-rows: repeat(3, 25px);
    width: 432px;
    height: 75px;
}

.profile-facts-grid span,
.profile-facts-grid strong {
    display: block;
    height: 25px;
    overflow: hidden;
    border-right-width: 1px;
    border-bottom-width: 1px;
    border-right-style: solid;
    border-bottom-style: solid;
    font-size: 11px;
    line-height: 24px;
    text-align: center;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

.profile-facts-grid strong {
    font-weight: 900;
}

.profile-empty {
    width: 950px;
    height: 90px;
    padding: 26px;
    border-width: 1px;
    border-style: solid;
    font-size: 16px;
    font-weight: 900;
}

.profile-page .section-title {
    width: 950px;
    height: 42px;
    margin-bottom: 0;
}

.profile-showcase {
    height: 652px;
    border-top-width: 0;
    background-image:
        radial-gradient(circle at 50% 47%, rgba(0, 0, 0, 0), rgba(0, 0, 0, .36) 330px, rgba(0, 0, 0, .74) 520px),
        linear-gradient(90deg, rgba(0, 0, 0, .92), rgba(0, 0, 0, .38) 48%, rgba(0, 0, 0, .90)),
        var(--left-menu-banner-image);
}

.profile-showcase::before {
    position: absolute;
    left: 244px;
    top: 20px;
    width: 466px;
    height: 548px;
    content: "";
    background:
        radial-gradient(ellipse at center, rgba(255, 255, 255, .08), transparent 220px),
        linear-gradient(180deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, .30));
    pointer-events: none;
}

.profile-showcase::after {
    position: absolute;
    left: 274px;
    bottom: 108px;
    width: 400px;
    height: 34px;
    content: "";
    border-radius: 50%;
    background: rgba(0, 0, 0, .42);
    filter: blur(10px);
    pointer-events: none;
}

.profile-identity-card {
    left: 16px;
    top: 18px;
    grid-template-columns: 76px 110px;
    width: 204px;
    height: 88px;
    padding: 8px 8px;
}

.profile-avatar-frame,
.profile-avatar-frame img {
    width: 68px;
    height: 68px;
}

.profile-identity-text {
    width: 110px;
    height: 68px;
    padding-left: 6px;
}

.profile-identity-text strong {
    height: 21px;
    font-size: 15px;
    line-height: 21px;
}

.profile-team-badge {
    right: 8px;
    bottom: 5px;
    width: 68px;
}

.profile-ki-card,
.profile-location-card,
.profile-clan-card {
    left: 18px;
    width: 216px;
    height: 78px;
    padding: 14px 16px;
}

.profile-ki-card {
    top: 136px;
}

.profile-location-card {
    top: 246px;
}

.profile-clan-card {
    top: 356px;
}

.profile-ki-card strong,
.profile-location-card strong,
.profile-clan-card strong {
    width: 184px;
    font-size: 26px;
    line-height: 30px;
}

.profile-character-stage {
    z-index: 2;
    left: 280px;
    top: 36px;
    width: 390px;
    height: 540px;
}

.profile-character-layer {
    width: 390px;
    height: 540px;
    object-fit: contain;
    filter: drop-shadow(0 18px 24px rgba(0, 0, 0, .72));
}

.profile-character-stage-fallback {
    top: 132px;
    width: 390px;
    height: 320px;
}

.profile-character-stage-fallback img {
    width: 250px;
    height: 250px;
    margin-top: 26px;
}

.profile-level-badge {
    right: 70px;
    top: 26px;
    width: 136px;
    height: 136px;
    border-width: 5px;
}

.profile-level-badge::before,
.profile-level-badge::after {
    position: absolute;
    top: 18px;
    width: 26px;
    height: 96px;
    content: "";
    border-top-width: 5px;
    border-bottom-width: 5px;
    border-style: solid;
    opacity: .62;
}

.profile-level-badge::before {
    left: -34px;
    border-right-width: 0;
    border-radius: 56px 0 0 56px;
}

.profile-level-badge::after {
    right: -34px;
    border-left-width: 0;
    border-radius: 0 56px 56px 0;
}

.profile-level-badge span {
    height: 30px;
    padding-top: 25px;
}

.profile-level-badge strong {
    height: 54px;
    font-size: 52px;
    line-height: 54px;
}

.profile-action-rail {
    right: 68px;
    top: 214px;
    row-gap: 8px;
    width: 92px;
}

.profile-action-rail a {
    width: 92px;
    height: 54px;
    font-size: 11px;
    line-height: 52px;
}

.profile-facts-panel {
    z-index: 3;
    left: 254px;
    bottom: 18px;
    width: 440px;
    height: 126px;
}

.profile-stat-bar,
.profile-stat-bar meter,
.profile-stat-bar strong {
    width: 438px;
}

.profile-facts-grid {
    grid-template-columns: 74px 146px 74px 144px;
    width: 438px;
}

.profile-facts-grid span,
.profile-facts-grid strong {
    font-size: 10px;
}

.profile-identity-card {
    left: 20px;
    top: 24px;
    grid-template-columns: 96px 142px;
    width: 264px;
    height: 112px;
    padding: 12px;
}

.profile-avatar-frame,
.profile-avatar-frame img {
    width: 86px;
    height: 86px;
}

.profile-avatar-frame.is-team::after {
    right: 1px;
    bottom: 1px;
    width: 42px;
    height: 14px;
    font-size: 9px;
    line-height: 14px;
}

.profile-identity-text {
    position: relative;
    width: 142px;
    height: 86px;
    padding-left: 6px;
}

.profile-identity-text strong {
    height: 24px;
    font-size: 18px;
    line-height: 24px;
}

.profile-identity-text span {
    height: 20px;
    font-size: 13px;
    line-height: 20px;
}

.profile-identity-text em {
    position: absolute;
    left: 6px;
    bottom: 0;
    width: 136px;
    height: 21px;
    font-size: 17px;
    line-height: 21px;
}

.profile-ki-card,
.profile-location-card,
.profile-clan-card {
    left: 20px;
    width: 262px;
    height: 102px;
    padding: 22px 18px 16px;
    text-align: center;
}

.profile-ki-card {
    top: 184px;
}

.profile-location-card {
    top: 346px;
}

.profile-clan-card {
    top: 508px;
    padding-top: 18px;
}

.profile-ki-card span,
.profile-location-card span,
.profile-clan-card span {
    width: 224px;
    height: 22px;
    font-size: 14px;
    line-height: 22px;
    text-align: center;
}

.profile-ki-card strong,
.profile-location-card strong,
.profile-clan-card strong {
    width: 224px;
    height: 42px;
    font-size: 34px;
    line-height: 42px;
    text-align: center;
}

.profile-clan-card strong {
    height: 34px;
    font-size: 25px;
    line-height: 34px;
}

.profile-character-stage {
    left: 330px;
    top: 34px;
    width: 380px;
    height: 540px;
}

.profile-character-layer {
    width: 380px;
    height: 540px;
}

.profile-level-badge {
    right: 58px;
    top: 28px;
}

.profile-action-rail {
    right: 76px;
    top: 224px;
}

.profile-facts-panel {
    left: 314px;
    bottom: 20px;
}

.profile-showcase {
    height: 652px;
    border-top-width: 0;
    background-image:
        radial-gradient(circle at 54% 45%, rgba(255, 255, 255, .035), transparent 250px),
        linear-gradient(90deg, rgba(0, 0, 0, .18), rgba(255, 255, 255, .018) 50%, rgba(0, 0, 0, .22));
    background-color: transparent;
    background-position: center center;
    background-size: auto;
}

.profile-showcase::before {
    left: 300px;
    top: 24px;
    width: 390px;
    height: 540px;
    background:
        radial-gradient(ellipse at center, rgba(255, 255, 255, .05), transparent 205px),
        linear-gradient(180deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, .28));
}

.profile-showcase::after {
    left: 326px;
    bottom: 74px;
    width: 340px;
    height: 34px;
}

.profile-character-stage {
    left: 330px;
    top: 64px;
    width: 380px;
    height: 540px;
}

.profile-character-layer {
    width: 380px;
    height: 540px;
}

.profile-character-stage-fallback {
    left: 330px;
    top: 150px;
}

.profile-facts-panel {
    display: none;
}

.profile-showcase {
    background-image:
        radial-gradient(ellipse at 52% 48%, rgba(255, 255, 255, .10), rgba(255, 255, 255, .035) 210px, transparent 430px),
        linear-gradient(90deg, rgba(0, 0, 0, .26), rgba(255, 255, 255, .025) 50%, rgba(0, 0, 0, .28));
}

.profile-showcase::before {
    left: 0;
    top: 0;
    width: 950px;
    height: 652px;
    background:
        radial-gradient(ellipse at 53% 50%, rgba(255, 255, 255, .08), rgba(255, 255, 255, .028) 245px, transparent 520px),
        linear-gradient(180deg, rgba(255, 255, 255, .028), rgba(0, 0, 0, .18));
}

.profile-showcase::after {
    left: 350px;
    bottom: 64px;
    width: 300px;
    height: 42px;
    background: rgba(0, 0, 0, .50);
    filter: blur(16px);
}

.profile-identity-card,
.profile-ki-card,
.profile-location-card,
.profile-clan-card {
    border-radius: 6px;
}

.profile-avatar-frame,
.profile-avatar-frame img {
    width: 86px;
    height: 86px;
}

.profile-avatar-frame img {
    border-width: 0;
    object-fit: cover;
}

.profile-avatar-frame.is-team::after {
    right: 0;
    bottom: 0;
}

.profile-character-stage {
    left: 336px;
    top: 58px;
}

.profile-showcase::after {
    display: none;
}

.profile-character-stage {
    left: 250px;
    top: 24px;
    width: 450px;
    height: 620px;
}

.profile-character-layer {
    width: 450px;
    height: 620px;
    filter: none;
}

.profile-character-body {
    z-index: 10;
}

.profile-character-gear {
    z-index: 30;
    pointer-events: none;
}

.profile-character-gear-aura { z-index: 5; }
.profile-character-gear-trainingsitems { z-index: 8; }
.profile-character-gear-waffe { z-index: 9; }
.profile-character-gear-leggins { z-index: 20; }
.profile-character-gear-shirt { z-index: 22; }
.profile-character-gear-schuhe { z-index: 23; }
.profile-character-gear-hose { z-index: 24; }
.profile-character-gear-brust { z-index: 32; }
.profile-character-gear-hand { z-index: 34; }

.profile-character-head {
    z-index: 90;
}

/* Ausrüstung für den separaten Kopfbereich: erst Gesicht, dann Kopf. */
.profile-character-gear-gesicht { z-index: 92; }
.profile-character-gear-kopf { z-index: 94; }

.profile-character-stage-fallback {
    left: 250px;
    top: 128px;
    width: 450px;
    height: 360px;
}

.profile-character-stage-fallback img {
    width: 290px;
    height: 290px;
    margin-top: 32px;
    filter: none;
}

.profile-level-badge {
    right: 52px;
    top: 24px;
    width: 154px;
    height: 154px;
    border-width: 4px;
    border-radius: 77px;
}

.profile-level-badge::before {
    left: -44px;
}

.profile-level-badge::after {
    right: -44px;
}

.profile-level-badge::before,
.profile-level-badge::after {
    top: 24px;
    width: 36px;
    height: 100px;
}

.profile-level-badge span,
.profile-level-badge strong {
    position: relative;
    z-index: 2;
}

.profile-level-badge span {
    height: 30px;
    padding-top: 34px;
}

.profile-level-badge strong {
    height: 62px;
    font-size: 62px;
    line-height: 62px;
}

.profile-level-badge .profile-level-logo {
    position: absolute;
    left: 20px;
    top: 20px;
    display: block;
    width: 106px;
    height: 106px;
    background-image: var(--profile-level-logo, none);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    opacity: .22;
    pointer-events: none;
}

.profile-action-rail {
    right: 76px;
    top: 220px;
    display: block;
    width: 92px;
    height: 318px;
    padding: 12px 10px;
    border-radius: 4px;
}

.profile-action-rail a {
    position: relative;
    width: 70px;
    height: 70px;
    margin: 0 auto 8px;
    overflow: hidden;
    border-width: 0;
    border-radius: 4px;
    font-size: 0;
    line-height: 70px;
}

.profile-action-rail a::before {
    display: block;
    width: 70px;
    height: 70px;
    font-size: 30px;
    font-weight: 900;
    line-height: 70px;
    text-align: center;
}

.profile-action-rail a.profile-action-fight::before {
    content: "X";
}

.profile-action-rail a.profile-action-pm::before {
    content: "PM";
    font-size: 24px;
}

.profile-action-rail a.profile-action-online::before {
    content: "ON";
    font-size: 22px;
}

.profile-action-rail a.profile-action-profile::before {
    content: "P";
}

.profile-action-rail a::before,
.profile-action-rail a::after {
    position: absolute;
    content: "";
}

.profile-action-rail a.profile-action-fight::before,
.profile-action-rail a.profile-action-fight::after {
    left: 33px;
    top: 15px;
    width: 4px;
    height: 40px;
    border-radius: 2px;
    background: currentColor;
}

.profile-action-rail a.profile-action-fight::before {
    transform: rotate(45deg);
}

.profile-action-rail a.profile-action-fight::after {
    transform: rotate(-45deg);
}

.profile-action-rail a.profile-action-pm::before {
    left: 14px;
    top: 21px;
    width: 42px;
    height: 28px;
    border: 3px solid currentColor;
    border-radius: 3px;
}

.profile-action-rail a.profile-action-pm::after {
    left: 17px;
    top: 24px;
    width: 36px;
    height: 20px;
    border-left: 3px solid currentColor;
    border-bottom: 3px solid currentColor;
    transform: rotate(-45deg) skew(10deg, 10deg);
}

.profile-action-rail a.profile-action-online::before {
    left: 28px;
    top: 15px;
    width: 14px;
    height: 14px;
    border-radius: 14px;
    background: currentColor;
    box-shadow: -16px 18px 0 currentColor, 16px 18px 0 currentColor;
}

.profile-action-rail a.profile-action-online::after {
    left: 16px;
    top: 42px;
    width: 38px;
    height: 15px;
    border-radius: 20px 20px 4px 4px;
    background: currentColor;
}

.profile-action-rail a.profile-action-profile::before {
    left: 27px;
    top: 14px;
    width: 16px;
    height: 16px;
    border-radius: 16px;
    background: currentColor;
}

.profile-action-rail a.profile-action-profile::after {
    left: 20px;
    top: 35px;
    width: 30px;
    height: 22px;
    border-radius: 18px 18px 4px 4px;
    background: currentColor;
}

.profile-identity-text .profile-identity-rank {
    height: 18px;
    font-size: 11px;
    line-height: 18px;
}

.profile-level-badge::before,
.profile-level-badge::after {
    display: none;
}

.profile-action-rail {
    right: 109px;
    top: 304px;
    width: 86px;
    height: 294px;
    padding: 10px 8px;
    border-radius: 6px;
}

.profile-action-rail a {
    position: relative;
    display: block;
    width: 70px;
    height: 62px;
    margin: 0 auto 8px;
    border-width: 0;
    border-radius: 4px;
    font-size: 0;
    line-height: 62px;
}

.profile-action-rail a::before {
    position: static;
    display: block;
    width: 70px;
    height: 62px;
    content: "";
    font-size: 0;
    font-weight: 900;
    line-height: 62px;
    text-align: center;
}

.profile-action-rail a::after {
    display: none;
}

.profile-action-rail a.profile-action-fight::before {
    content: "⚔";
    font-size: 34px;
}

.profile-action-rail a.profile-action-pm::before {
    content: "✉";
    font-size: 38px;
}

.profile-action-rail a.profile-action-online::before {
    content: "●●●";
    font-size: 18px;
    letter-spacing: -2px;
}

.profile-action-rail a.profile-action-profile::before {
    content: "●";
    font-size: 34px;
}

.profile-card-bg {
    position: absolute;
    left: 0;
    top: 0;
    z-index: 0;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: .58;
    pointer-events: none;
}

.profile-location-card::after {
    position: absolute;
    left: 0;
    top: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    content: "";
    background: rgba(0, 0, 0, .24);
    pointer-events: none;
}

.profile-location-card span,
.profile-location-card strong,
.profile-location-card em {
    position: relative;
    z-index: 2;
}

.profile-location-card em {
    display: block;
    width: 240px;
    height: 22px;
    margin-top: -2px;
    overflow: hidden;
    font-size: 15px;
    font-style: normal;
    font-weight: 900;
    line-height: 22px;
    text-align: center;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.profile-location-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding-top: 7px;
    padding-bottom: 8px;
    text-align: center;
}

.profile-location-card span {
    width: 100%;
    height: 18px;
    line-height: 18px;
    text-align: center;
}

.profile-location-card strong {
    width: 100%;
    height: 34px;
    font-size: 31px;
    line-height: 34px;
    text-align: center;
}

.profile-location-card em {
    width: 100%;
    height: 18px;
    margin-top: 0;
    line-height: 18px;
    text-align: center;
}

.admin-planet-form {
    display: grid;
    grid-template-columns: 432px 432px;
    column-gap: 24px;
    row-gap: 14px;
    width: 918px;
    padding: 16px;
}

.admin-planet-form-title {
    grid-column: 1 / 3;
    width: 884px;
}

.admin-planet-form > label {
    width: 100%;
}

.admin-planet-form > label:nth-of-type(1) {
    grid-column: 1;
    grid-row: 2;
}

.admin-planet-form > label:nth-of-type(2) {
    grid-column: 1;
    grid-row: 3;
}

.admin-planet-form input[type="text"],
.admin-planet-form input[type="number"] {
    width: 100%;
}

.admin-planet-image-upload,
.admin-planet-banner-upload,
.admin-planet-map-upload {
    grid-column: 2;
    width: 432px;
}

.admin-planet-image-upload {
    grid-row: 2;
}

.admin-planet-banner-upload {
    grid-row: 3;
}

.admin-planet-map-upload {
    grid-row: 4;
}

.admin-planet-upload-field input[type="file"] {
    width: 432px;
}

.admin-planet-main-preview,
.admin-planet-banner-preview,
.admin-planet-map-preview {
    grid-column: 2;
    width: 432px;
    height: 150px;
}

.admin-planet-main-preview {
    grid-row: 5;
}

.admin-planet-banner-preview {
    grid-row: 6;
}

.admin-planet-map-preview {
    grid-row: 7;
}

.admin-planet-image-preview strong,
.admin-planet-image-preview span {
    width: 410px;
}

.admin-planet-main-preview img,
.admin-planet-banner-preview img,
.admin-planet-map-preview img {
    width: 300px;
    height: 84px;
    object-fit: contain;
}

.admin-planet-form .admin-bbcode-editor-field,
.admin-planet-wide {
    grid-column: 1 / 3;
    grid-row: 8;
    width: 884px;
    height: 374px;
}

.admin-planet-form .admin-bbcode-editor-field span,
.admin-planet-form .admin-bbcode-editor-field textarea,
.admin-planet-form .admin-planet-wide span,
.admin-planet-form .admin-planet-wide textarea {
    width: 884px;
}

.admin-planet-form .admin-bbcode-editor-field textarea {
    height: 332px;
}

.admin-planet-form .sceditor-container {
    width: 884px !important;
}

.admin-planet-form .sceditor-container iframe,
.admin-planet-form .sceditor-container textarea {
    width: 868px !important;
}

.admin-planet-checkbox {
    grid-row: 9;
    height: 34px;
    padding-top: 8px;
}

.admin-planet-travel-toggle {
    grid-column: 1;
}

.admin-planet-default-toggle {
    grid-column: 1;
}

.admin-planet-active-toggle {
    grid-column: 2;
}

.admin-planet-actions {
    grid-column: 1 / 3;
    grid-row: 10;
    width: 884px;
    height: 42px;
}

.admin-planet-training-availability ~ .admin-planet-checkbox {
    grid-row: 10;
}

.admin-planet-training-availability ~ .admin-planet-travel-toggle {
    grid-column: 1;
    width: 118px;
}

.admin-planet-training-availability ~ .admin-planet-default-toggle {
    grid-column: 1;
    width: 210px;
    margin-left: 138px;
    padding-left: 0;
}

.admin-planet-training-availability ~ .admin-planet-active-toggle {
    grid-column: 2;
}

.admin-planet-training-availability ~ .admin-planet-actions {
    grid-row: 11;
}

.admin-planet-training-availability {
    grid-column: 1 / 3;
    grid-row: 9;
    width: 884px;
    height: auto;
    padding: 12px;
    border: 1px solid;
    box-sizing: border-box;
}

.admin-planet-special-training-availability {
    grid-row: 10;
}

.admin-planet-special-training-availability ~ .admin-planet-checkbox {
    grid-row: 11;
}

.admin-planet-special-training-availability ~ .admin-planet-actions {
    grid-row: 12;
}

.admin-planet-training-availability strong {
    display: block;
    width: 858px;
    height: 24px;
    line-height: 24px;
    text-transform: uppercase;
}

.admin-planet-training-availability p {
    width: 858px;
    height: 22px;
    line-height: 22px;
    margin: 0;
}

.admin-planet-training-list {
    width: 858px;
    height: auto;
    overflow: visible;
}

.admin-planet-training-row {
    display: grid;
    grid-template-columns: 282px 560px;
    column-gap: 10px;
    width: 858px;
    height: auto;
    margin-bottom: 10px;
    align-items: center;
    border-bottom: 1px solid;
}

.admin-planet-training-row label {
    display: flex;
    align-items: center;
    width: 282px;
    height: auto;
    gap: 10px;
}

.admin-planet-training-row label span {
    width: 232px;
    height: auto;
    line-height: 22px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.admin-planet-training-places {
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    gap: 8px 7px;
    width: 560px;
    height: auto;
    overflow: visible;
}

.admin-planet-training-row .admin-planet-training-place {
    display: flex;
    align-items: center;
    width: 124px;
    height: 22px;
    gap: 6px;
}

.admin-planet-training-row .admin-planet-training-place span {
    width: 98px;
    height: 22px;
    line-height: 22px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.admin-planet-training-empty {
    width: 858px;
    height: 42px;
    line-height: 42px;
}

.admin-training-form {
    grid-template-columns: 274px 274px 274px;
    column-gap: 31px;
    row-gap: 14px;
}

.admin-training-form .admin-planet-form-title {
    grid-column: 1 / 4;
    width: 884px;
}

.admin-training-form label,
.admin-training-form input[type="text"],
.admin-training-form input[type="number"],
.admin-training-form select {
    width: 274px;
}

.admin-training-form select {
    height: 34px;
    padding: 6px 8px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
}

.admin-training-form label:nth-of-type(1) {
    grid-column: 1;
    grid-row: 2;
}

.admin-training-form label:nth-of-type(2) {
    grid-column: 2;
    grid-row: 2;
}

.admin-training-form label:nth-of-type(3) {
    grid-column: 3;
    grid-row: 2;
}

.admin-training-form label:nth-of-type(4) {
    grid-column: 1;
    grid-row: 3;
}

.admin-training-form label:nth-of-type(5) {
    grid-column: 2;
    grid-row: 3;
}

.admin-training-form label:nth-of-type(6) {
    grid-column: 3;
    grid-row: 3;
}

.admin-training-form label:nth-of-type(7) {
    grid-column: 1;
    grid-row: 4;
}

.admin-training-form label:nth-of-type(8) {
    grid-column: 2;
    grid-row: 4;
}

.admin-training-form label:nth-of-type(9) {
    grid-column: 3;
    grid-row: 4;
}

.admin-training-form label:nth-of-type(10) {
    grid-column: 1;
    grid-row: 5;
}

.admin-training-form label:nth-of-type(11) {
    grid-column: 2;
    grid-row: 5;
}

.admin-training-form .admin-planet-upload-field {
    width: 274px;
}

.admin-training-form .admin-planet-upload-field input[type="file"] {
    width: 274px;
}

.admin-training-form .admin-bbcode-editor-field {
    grid-column: 1 / 4;
    grid-row: 6;
    width: 884px;
    height: 430px;
}

.admin-training-form .admin-bbcode-editor-field span,
.admin-training-form .admin-bbcode-editor-field textarea {
    width: 884px;
}

.admin-training-form .sceditor-container {
    width: 884px !important;
}

.admin-training-form .sceditor-container iframe,
.admin-training-form .sceditor-container textarea {
    width: 868px !important;
}

.admin-training-form .admin-training-preview {
    grid-column: 3;
    grid-row: 5;
    width: 274px;
    height: 118px;
}

.admin-training-form .admin-training-preview strong,
.admin-training-form .admin-training-preview span {
    width: 252px;
}

.admin-training-form .admin-training-preview img {
    width: 164px;
    height: 70px;
    object-fit: contain;
    margin-top: 8px;
}

.admin-training-form .admin-planet-checkbox {
    grid-row: 7;
}

.admin-training-form:not(.admin-special-training-form) .admin-planet-checkbox:nth-of-type(13) {
    grid-column: 1;
}

.admin-training-form:not(.admin-special-training-form) .admin-planet-checkbox:nth-of-type(14) {
    grid-column: 2;
}

.admin-training-form .admin-planet-actions {
    grid-column: 1 / 4;
    grid-row: 8;
    width: 884px;
}

.profile-level-badge {
    position: relative;
    right: auto;
    top: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 150px;
    height: 150px;
    border-width: 0;
    border-radius: 75px;
}

.profile-level-badge span:not(.profile-level-logo) {
    display: block;
    width: 28px;
    height: 30px;
    padding-top: 0;
    font-size: 14px;
    line-height: 30px;
    text-align: right;
}

.profile-level-badge strong {
    display: block;
    width: 58px;
    height: 62px;
    font-size: 62px;
    line-height: 62px;
    text-align: left;
}

.profile-level-badge .profile-level-logo {
    left: 22px;
    top: 22px;
    width: 106px;
    height: 106px;
}

.profile-level-wrap {
    position: absolute;
    right: 22px;
    top: 16px;
    width: 260px;
    height: 250px;
}

.profile-level-wrap .profile-level-badge {
    position: absolute;
    left: 55px;
    top: 48px;
    z-index: 2;
}

.profile-equipped-title {
    position: absolute;
    left: 0;
    top: 18px;
    z-index: 3;
    width: 260px;
    height: 24px;
    overflow: hidden;
    font-size: 13px;
    font-weight: 900;
    line-height: 24px;
    text-align: center;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

.profile-title-stars {
    position: absolute;
    left: 0;
    top: 34px;
    z-index: 1;
    width: 260px;
    height: 220px;
    pointer-events: none;
}

.profile-title-star {
    position: absolute;
    display: block;
    width: 28px;
    height: 28px;
    color: var(--profile-title-star-border, #143c45);
    font-size: 28px;
    font-weight: 900;
    line-height: 28px;
    text-align: center;
    filter: drop-shadow(0 1px 1px rgba(0, 0, 0, .85));
    transform: translate(-50%, -50%);
}

.profile-title-star::before,
.profile-title-star::after {
    position: absolute;
    left: 0;
    top: 0;
    width: 28px;
    height: 28px;
    content: "★";
    line-height: 28px;
    text-align: center;
}

.profile-title-star::before {
    color: #050505;
    text-shadow:
        -1px 0 0 var(--profile-title-star-border, #143c45),
        1px 0 0 var(--profile-title-star-border, #143c45),
        0 -1px 0 var(--profile-title-star-border, #143c45),
        0 1px 0 var(--profile-title-star-border, #143c45);
}

.profile-title-star::after {
    overflow: hidden;
    width: 0;
    color: var(--profile-title-star-fill);
}

.profile-title-star.has-base::before {
    color: var(--profile-title-star-base);
}

.profile-title-star.is-half::after {
    width: 14px;
}

.profile-title-star.is-full::after {
    width: 28px;
}

.profile-title-star-1 { left: 38px; top: 89px; }
.profile-title-star-2 { left: 44px; top: 121px; }
.profile-title-star-3 { left: 60px; top: 148px; }
.profile-title-star-4 { left: 84px; top: 169px; }
.profile-title-star-5 { left: 114px; top: 180px; }
.profile-title-star-6 { left: 146px; top: 180px; }
.profile-title-star-7 { left: 176px; top: 169px; }
.profile-title-star-8 { left: 200px; top: 148px; }
.profile-title-star-9 { left: 216px; top: 121px; }
.profile-title-star-10 { left: 222px; top: 89px; }

.profile-title-stars.title-base-gold { --profile-title-star-base: #ffd45a; }
.profile-title-stars.title-base-green { --profile-title-star-base: #39e36a; }
.profile-title-stars.title-base-blue { --profile-title-star-base: #4ca7ff; }
.profile-title-stars.title-base-red { --profile-title-star-base: #ff3f3f; }
.profile-title-stars.title-base-violet { --profile-title-star-base: #a56dff; }
.profile-title-stars.title-base-pink { --profile-title-star-base: #ff4fc3; }
.profile-title-stars.title-base-cyan { --profile-title-star-base: #33eaff; }
.profile-title-stars.title-base-silver { --profile-title-star-base: #d6dde5; }
.profile-title-stars.title-fill-gold { --profile-title-star-fill: #ffd45a; }
.profile-title-stars.title-fill-green { --profile-title-star-fill: #39e36a; }
.profile-title-stars.title-fill-blue { --profile-title-star-fill: #4ca7ff; }
.profile-title-stars.title-fill-red { --profile-title-star-fill: #ff3f3f; }
.profile-title-stars.title-fill-violet { --profile-title-star-fill: #a56dff; }
.profile-title-stars.title-fill-pink { --profile-title-star-fill: #ff4fc3; }
.profile-title-stars.title-fill-cyan { --profile-title-star-fill: #33eaff; }
.profile-title-stars.title-fill-silver { --profile-title-star-fill: #d6dde5; }
.profile-title-stars.title-base-custom { --profile-title-star-base: var(--profile-title-custom); }
.profile-title-stars.title-fill-custom { --profile-title-star-fill: var(--profile-title-custom); }

.profile-pvp-panel {
    width: 950px;
    margin-top: 12px;
    padding: 0 0 16px 0;
    border-width: 1px;
    border-style: solid;
    overflow: hidden;
}

.profile-pvp-head {
    width: 948px;
    height: 44px;
    padding-top: 13px;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    font-size: 17px;
    font-weight: 900;
    line-height: 18px;
    text-align: center;
}

.profile-pvp-head span {
    font-size: 13px;
    font-weight: 700;
}

.profile-pvp-tiles {
    display: grid;
    grid-template-columns: 139px 139px 139px 139px 139px 139px;
    column-gap: 14px;
    width: 904px;
    height: 86px;
    margin: 16px 22px 0 22px;
}

.profile-pvp-tile {
    width: 139px;
    height: 86px;
    padding: 12px 8px 0 8px;
    border-width: 1px;
    border-style: solid;
    text-align: center;
}

.profile-pvp-tile span,
.profile-pvp-tile strong {
    display: block;
    width: 121px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.profile-pvp-tile span {
    height: 22px;
    font-size: 12px;
    font-weight: 900;
    line-height: 22px;
    text-transform: uppercase;
}

.profile-pvp-tile strong {
    height: 34px;
    font-size: 23px;
    font-weight: 900;
    line-height: 34px;
}

.profile-signature-box {
    width: 904px;
    margin: 16px 22px 0 22px;
    border-width: 1px;
    border-style: solid;
}

.profile-signature-title {
    width: 902px;
    height: 36px;
    padding: 9px 12px 0 12px;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    font-size: 16px;
    font-weight: 900;
    line-height: 17px;
    text-transform: uppercase;
}

.profile-signature-content {
    width: 902px;
    padding: 16px;
    font-size: 14px;
    line-height: 1.55;
    overflow-wrap: anywhere;
}

.profile-signature-empty {
    display: block;
    font-style: italic;
}

.profile-showcase .profile-pvp-panel {
    position: absolute;
    left: 175px;
    bottom: 0;
    z-index: 5;
    width: 600px;
    margin: 0;
    padding: 0 0 14px 0;
    border-width: 0;
    border-radius: 8px 8px 0 0;
    background: rgba(0, 0, 0, .62);
    box-shadow: 0 -14px 34px rgba(0, 0, 0, .30);
    overflow: visible;
}

.profile-showcase .profile-pvp-tiles {
    position: absolute;
    left: 14px;
    top: -72px;
    display: grid;
    grid-template-columns: 88px 88px 88px 88px 88px 88px;
    column-gap: 8px;
    width: 576px;
    height: 72px;
    margin: 0;
}

.profile-showcase .profile-pvp-tile {
    width: 88px;
    height: 72px;
    padding: 8px 5px 0 5px;
    border-width: 0;
    border-radius: 6px 6px 0 0;
    background: rgba(0, 0, 0, .64);
    box-shadow: 0 -8px 18px rgba(0, 0, 0, .24);
}

.profile-showcase .profile-pvp-tile span,
.profile-showcase .profile-pvp-tile strong {
    width: 78px;
}

.profile-showcase .profile-pvp-tile span {
    height: 20px;
    font-size: 10px;
    line-height: 20px;
}

.profile-showcase .profile-pvp-tile strong {
    height: 30px;
    font-size: 20px;
    line-height: 30px;
}

.profile-showcase .profile-pvp-head {
    width: 600px;
    height: 50px;
    padding-top: 17px;
    border-bottom-width: 0;
    font-size: 16px;
    line-height: 18px;
}

.profile-showcase .profile-signature-box {
    width: 560px;
    margin: 0 20px;
    border-width: 0;
}

.profile-showcase .profile-signature-title {
    display: none;
}

.profile-showcase .profile-signature-content {
    width: 560px;
    padding: 10px 0 0 0;
    font-size: 13px;
    line-height: 1.45;
    text-align: center;
}

.profile-showcase {
    height: 836px;
}

.profile-showcase::before {
    height: 836px;
}

.profile-showcase .profile-pvp-panel {
    left: 24px;
    bottom: 54px;
    width: 902px;
    padding-bottom: 0;
    border-radius: 8px;
    background: transparent;
}

.profile-showcase .profile-pvp-tiles {
    left: 42px;
    top: -74px;
    grid-template-columns: 128px 128px 128px 128px 128px 128px;
    column-gap: 12px;
    width: 828px;
    height: 74px;
}

.profile-showcase .profile-pvp-tile {
    width: 128px;
    height: 74px;
    padding: 0;
    background: rgba(0, 0, 0, .42);
    border-radius: 6px 6px 0 0;
    overflow: hidden;
}

.profile-showcase .profile-pvp-tile span,
.profile-showcase .profile-pvp-tile strong {
    width: 128px;
}

.profile-showcase .profile-pvp-tile span {
    height: 26px;
    background: rgba(0, 0, 0, .74);
    font-size: 10px;
    line-height: 26px;
    color: inherit;
}

.profile-showcase .profile-pvp-tile strong {
    height: 48px;
    padding-top: 8px;
    font-size: 28px;
    line-height: 32px;
}

.profile-showcase .profile-pvp-head {
    display: none;
}

.profile-showcase .profile-signature-box {
    width: 902px;
    margin: 0;
    border: 0 none transparent;
    border-radius: 7px;
    background: rgba(0, 0, 0, .42);
    box-shadow: none;
    outline: 0;
    overflow: hidden;
}

.profile-showcase .profile-signature-content {
    width: 902px;
    padding: 8px 18px;
    border: 0 none transparent;
    box-shadow: none;
    outline: 0;
}

.admin-planet-location-layout {
    width: 950px;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.admin-planet-subtabs {
    width: 918px;
    margin: 12px 16px 0 16px;
}

.admin-map-upload-form {
    height: 216px;
}

.admin-map-upload {
    grid-column: 1 / 3;
    width: 430px;
}

.admin-map-preview {
    grid-column: 3 / 5;
    width: 430px;
    height: 120px;
}

.admin-map-preview img {
    width: 280px;
    height: 84px;
    object-fit: contain;
}

.admin-map-editor {
    width: 918px;
    margin: 12px 16px 0 16px;
    padding: 16px;
    border-width: 2px;
    border-style: solid;
}

.content-box > div.admin-planet-location-layout,
.content-box > div.admin-map-editor,
.content-box > div.admin-location-list {
    margin-left: 0;
    margin-right: 0;
}

.admin-map-hint {
    width: 884px;
    height: 24px;
    margin: 8px 0 0 0;
    font-size: 13px;
    line-height: 24px;
    overflow: hidden;
}

.admin-map-canvas {
    position: relative;
    width: 884px;
    height: 500px;
    margin-top: 10px;
    border-width: 1px;
    border-style: solid;
    overflow: hidden;
    cursor: crosshair;
}

.admin-map-canvas img {
    display: block;
    width: 884px;
    height: 500px;
    object-fit: fill;
    object-position: center center;
}

.admin-map-canvas > span {
    display: block;
    width: 884px;
    height: 500px;
    padding-top: 230px;
    text-align: center;
}

.admin-map-pin-form {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: 0;
    padding: 0;
    z-index: 5;
}

.admin-map-pin {
    position: absolute;
    left: -11px;
    top: -22px;
    display: block;
    width: 22px;
    height: 22px;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 22px 22px 22px 0;
    background: #d82626;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .85);
    transform: rotate(-45deg);
    cursor: pointer;
}

.admin-map-pin::after {
    position: absolute;
    left: 6px;
    top: 6px;
    width: 10px;
    height: 10px;
    content: "";
    border-radius: 10px;
    background: #fff;
}

.admin-map-pin.is-default {
    background: #22c96a;
}

.admin-map-pin span {
    position: absolute;
    left: 22px;
    top: -2px;
    display: block;
    width: 120px;
    height: 20px;
    padding: 2px 6px 0 6px;
    overflow: hidden;
    border-width: 1px;
    border-style: solid;
    font-size: 11px;
    font-weight: 900;
    line-height: 15px;
    text-overflow: ellipsis;
    white-space: nowrap;
    transform: rotate(45deg);
    opacity: 0;
    pointer-events: none;
}

.admin-map-pin:hover span,
.admin-map-pin:focus span {
    opacity: 1;
}

.admin-map-place-menu {
    position: absolute;
    z-index: 8;
    width: 260px;
    height: 152px;
    padding: 12px;
    border-width: 1px;
    border-style: solid;
    box-shadow: 0 8px 22px rgba(0, 0, 0, .65);
}

.admin-map-place-menu[hidden] {
    display: none;
}

.admin-map-place-menu strong,
.admin-map-place-menu select,
.admin-map-place-menu button,
.admin-map-place-menu span {
    display: block;
    width: 236px;
}

.admin-map-place-menu strong {
    height: 24px;
    margin-bottom: 8px;
    font-size: 14px;
    line-height: 20px;
    overflow: hidden;
}

.admin-map-place-menu select {
    height: 36px;
    margin-bottom: 10px;
    padding: 5px 8px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
}

.admin-map-place-menu button {
    height: 38px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    font-weight: 900;
    cursor: pointer;
}

.admin-map-place-menu span {
    height: 74px;
    padding-top: 12px;
    font-size: 13px;
    line-height: 18px;
}

.admin-location-form {
    display: grid;
    grid-template-columns: 432px 432px;
    grid-template-rows: 38px 52px 144px 34px 42px;
    column-gap: 24px;
    row-gap: 14px;
    height: 400px;
    margin-top: 12px;
}

.admin-location-form .admin-planet-form-title {
    grid-column: 1 / 3;
    grid-row: 1;
}

.admin-location-form label:nth-of-type(1) {
    grid-column: 1;
    grid-row: 2;
}

.admin-location-form label.admin-planet-wide {
    grid-column: 1 / 3;
    grid-row: 3;
    width: 884px;
    height: 144px;
}

.admin-location-form label.admin-planet-wide span,
.admin-location-form label.admin-planet-wide textarea {
    width: 884px;
}

.admin-location-form label.admin-planet-wide textarea {
    height: 106px;
}

.admin-location-form .admin-location-lock-toggle {
    grid-column: 1 / 3;
    grid-row: 4;
    width: 884px;
    height: 34px;
    padding: 7px 0 0;
    box-sizing: border-box;
}

.admin-location-form .admin-planet-actions {
    grid-column: 1 / 3;
    grid-row: 5;
    width: 884px;
    height: 42px;
    display: flex;
    justify-content: center;
    gap: 16px;
    align-self: end;
    text-align: center;
}

.admin-location-form .admin-planet-actions button,
.admin-location-form .admin-planet-actions a {
    margin-left: 0;
}

.admin-location-list {
    margin-top: 12px;
}

.admin-location-row {
    grid-template-columns: 60px 300px 180px 142px 142px;
    column-gap: 16px;
}

.admin-location-row form {
    width: 142px;
}

.admin-location-row a,
.admin-location-row button {
    width: 142px;
}

.confirm-message-foot {
    display: flex;
    justify-content: flex-end;
    gap: 14px;
}

.confirm-message-foot .system-message-ok {
    margin-left: 0;
}

.travel-page {
    width: 950px;
}

.training-page {
    width: 950px;
}

.training-empty {
    width: 918px;
    height: 86px;
    margin: 12px 16px 0 16px;
    padding: 14px 16px;
    border-width: 1px;
    border-style: solid;
}

.training-list {
    width: 918px;
    margin: 12px 16px 0 16px;
}

.training-card {
    display: grid;
    grid-template-columns: 190px 512px 172px;
    column-gap: 16px;
    width: 918px;
    height: 210px;
    margin-bottom: 12px;
    padding: 12px;
    border-width: 1px;
    border-style: solid;
}

.training-card-image {
    width: 170px;
    height: 186px;
    border-width: 1px;
    border-style: solid;
    overflow: hidden;
}

.training-card-image img,
.training-card-image span {
    display: block;
    width: 170px;
    height: 186px;
    object-fit: cover;
    object-position: center center;
}

.training-card-image span {
    padding-top: 72px;
    font-weight: 900;
    text-align: center;
    text-transform: uppercase;
}

.training-card-body {
    width: 512px;
    height: 186px;
    overflow: hidden;
}

.training-card-body h2 {
    height: 28px;
    margin: 0;
    overflow: hidden;
    font-size: 22px;
    line-height: 28px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.training-description {
    width: 512px;
    height: 106px;
    margin-top: 8px;
    overflow: hidden;
}

.training-card-body--with-boost .training-description {
    height: 76px;
}

.training-boost-note {
    height: 20px;
    margin-top: 4px;
    overflow: hidden;
    line-height: 20px;
    white-space: nowrap;
}

.training-card-body--with-boost .training-rewards {
    margin-top: 6px;
}

.training-rewards {
    display: grid;
    grid-template-columns: 136px 136px 136px;
    column-gap: 10px;
    width: 428px;
    height: 32px;
    margin-top: 10px;
}

.training-rewards span {
    display: block;
    height: 32px;
    padding-top: 7px;
    border-width: 1px;
    border-style: solid;
    font-weight: 900;
    text-align: center;
}

.training-start-form {
    width: 172px;
    height: 186px;
}

.training-duration-field,
.training-total-cost,
.training-fixed-time,
.training-start-form select,
.training-start-form button {
    display: block;
    width: 158px;
    margin-left: 0;
    box-sizing: border-box;
}

.training-duration-field > span {
    display: block;
    height: 20px;
    font-weight: 900;
    text-transform: uppercase;
}

.training-start-form select,
.training-fixed-time {
    height: 34px;
    padding: 0 10px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    line-height: 32px;
    text-transform: uppercase;
}

.training-start-form select {
    appearance: none;
    color-scheme: dark;
}

.training-start-form select option {
    background-color: var(--select-bg);
    color: var(--select-text);
}

.training-total-cost {
    height: 42px;
    margin-top: 16px;
    overflow: hidden;
    font-style: normal;
    font-weight: 900;
    line-height: 20px;
    text-align: center;
}

.training-start-form button {
    height: 40px;
    margin-top: 18px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    font-weight: 900;
    cursor: pointer;
}

.training-start-form button:disabled {
    cursor: default;
    opacity: .55;
}

.training-card .training-start-form .training-duration-field,
.training-card .training-start-form .training-total-cost,
.training-card .training-start-form .training-fixed-time,
.training-card .training-start-form select,
.training-card .training-start-form button {
    width: 158px;
    margin-left: 0;
    box-sizing: border-box;
}

.training-card .training-start-form select,
.training-card .training-start-form .training-fixed-time {
    display: block;
    height: 34px;
    min-height: 34px;
    max-height: 34px;
    padding: 0 10px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    line-height: 32px;
    text-transform: uppercase;
}

.training-card .training-start-form .training-total-cost {
    display: block;
    height: 42px;
    min-height: 42px;
    max-height: 42px;
    margin-top: 16px;
    overflow: hidden;
    line-height: 20px;
    text-align: center;
}

.right-status-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 248px;
    min-height: 76px;
    height: auto;
    padding: 8px 12px;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    box-sizing: border-box;
}

.right-status-card b,
.right-status-card strong,
.right-status-card em {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 222px;
    overflow: hidden;
    letter-spacing: 0;
    text-overflow: ellipsis;
    text-align: center;
}

.right-status-card b {
    min-height: 18px;
    line-height: 18px;
    font-size: 13px;
    text-transform: uppercase;
}

.right-status-card strong {
    min-height: 24px;
    padding: 3px 4px;
    font-size: 12px;
    line-height: 18px;
    overflow-wrap: anywhere;
    white-space: normal;
}

.right-status-card em {
    width: 222px;
    height: 28px;
    margin: 4px 0 0 0;
    border-top-width: 1px;
    border-top-style: solid;
    font-size: 14px;
    font-style: normal;
    font-weight: 900;
    line-height: 28px;
    text-align: center;
}

.right-status-card.is-idle strong {
    font-size: 13px;
}

.right-status-card.is-active {
    min-height: 108px;
    height: auto;
}

.right-status-card.is-active em {
    height: 26px;
    line-height: 26px;
}

.right-status-cancel {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 222px;
    height: 20px;
    margin: 2px 0 0 0;
}

.right-status-cancel button {
    width: auto;
    height: 20px;
    margin: 0;
    padding: 0 8px;
    border: 0;
    background: none;
    font: inherit;
    font-size: 10px;
    font-weight: 700;
    line-height: 20px;
    text-decoration: underline;
    text-transform: none;
    cursor: pointer;
}

.travel-map-pin-form[hidden] {
    display: none;
}

.travel-head {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 950px;
    height: 92px;
    margin-top: 12px;
    padding: 0 24px;
    border-width: 1px;
    border-style: solid;
    overflow: hidden;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}

.travel-head::before {
    position: absolute;
    inset: 0;
    content: "";
    background: linear-gradient(90deg, rgba(0, 0, 0, .78), rgba(0, 0, 0, .48), rgba(0, 0, 0, .76));
    pointer-events: none;
}

.travel-head strong,
.travel-head span,
.travel-head em {
    position: relative;
    z-index: 1;
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.travel-head strong {
    width: 900px;
    height: 42px;
    margin-top: 0;
    margin-left: 0;
    font-size: 38px;
    line-height: 42px;
    text-align: center;
    text-transform: uppercase;
}

.travel-head span {
    height: 22px;
    font-size: 16px;
    font-weight: 900;
    line-height: 22px;
    text-transform: uppercase;
}

.travel-head em {
    width: 900px;
    height: 24px;
    margin-left: 0;
    font-size: 18px;
    font-style: normal;
    font-weight: 900;
    line-height: 24px;
    text-align: center;
}

.travel-map {
    position: relative;
    width: 950px;
    height: 500px;
    margin: 12px 0 0 0;
    overflow: hidden;
    border-width: 1px;
    border-style: solid;
}

.travel-map img {
    display: block;
    width: 950px;
    height: 500px;
    object-fit: fill;
    object-position: center center;
}

.travel-map-empty {
    width: 950px;
    height: 500px;
    padding-top: 230px;
    text-align: center;
}

.travel-map-pin-form {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: 0;
    z-index: 8;
}

.travel-map-pin {
    position: absolute;
    left: -11px;
    top: -22px;
    width: 22px;
    height: 22px;
    padding: 0;
    border-width: 0;
    border-radius: 22px 22px 22px 0;
    background: #d82626;
    box-shadow: 0 2px 7px rgba(0, 0, 0, .85);
    cursor: pointer;
    transform: rotate(-45deg);
}

.travel-map-pin::after {
    position: absolute;
    left: 6px;
    top: 6px;
    width: 10px;
    height: 10px;
    content: "";
    border-radius: 10px;
    background: #fff;
}

.travel-map-pin.is-current {
    background: #22c96a;
}

.travel-map-pin.is-target {
    background: #d82626;
}

.travel-route-line {
    position: absolute;
    left: 0;
    top: 0;
    z-index: 5;
    width: 950px;
    height: 500px;
    overflow: visible;
    pointer-events: none;
}

.travel-route-line line {
    stroke-width: 4;
    stroke-dasharray: 10 8;
    stroke-linecap: round;
    stroke: var(--travel-route-stroke, #e72727);
    filter: drop-shadow(0 2px 3px rgba(0, 0, 0, .95));
}

.travel-route-line .travel-route-shadow {
    stroke-width: 8;
    stroke-dasharray: 10 8;
    stroke: rgba(0, 0, 0, .72);
    filter: none;
}

.travel-route-line .travel-route-segment {
    stroke: var(--travel-route-stroke, #e72727);
}

.travel-player-marker {
    position: absolute;
    z-index: 14;
    width: 22px;
    height: 22px;
    margin: -22px 0 0 -11px;
    padding: 0;
    border-width: 0;
    border-radius: 22px 22px 22px 0;
    cursor: pointer;
    background: #1289ff;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .9);
    transform: rotate(-45deg);
}

.travel-player-marker::before {
    position: absolute;
    left: 6px;
    top: 6px;
    width: 10px;
    height: 10px;
    content: "";
    border-radius: 10px;
    background: #fff;
}

.travel-player-marker::after,
.travel-player-marker span {
    display: none;
}

.travel-map-pin-label {
    position: absolute;
    left: 0;
    top: -62px;
    display: none;
    box-sizing: border-box;
    width: 190px;
    min-height: 42px;
    padding: 9px 12px;
    border-width: 1px;
    border-style: solid;
    font-size: 13px;
    font-weight: 900;
    line-height: 18px;
    text-align: center;
    text-transform: uppercase;
    transform: translateX(-50%);
    pointer-events: none;
    z-index: 8;
}

.travel-map-pin-label::after {
    position: absolute;
    left: 50%;
    bottom: -7px;
    width: 12px;
    height: 12px;
    content: "";
    border-right-width: 1px;
    border-bottom-width: 1px;
    border-right-style: solid;
    border-bottom-style: solid;
    transform: translateX(-50%) rotate(45deg);
}

.travel-map-pin-label.is-below {
    top: 34px;
}

.travel-map-pin-label.is-below::after {
    top: -7px;
    bottom: auto;
    border-right-width: 0;
    border-bottom-width: 0;
    border-left-width: 1px;
    border-top-width: 1px;
    border-left-style: solid;
    border-top-style: solid;
}

.travel-map-pin-form:hover .travel-map-pin-label,
.travel-map-pin-form:focus-within .travel-map-pin-label {
    display: block;
}

.travel-map.is-travel-popup-open .travel-map-pin-label,
.travel-map.is-travel-popup-open .travel-map-pin-form:hover .travel-map-pin-label,
.travel-map.is-travel-popup-open .travel-map-pin-form:focus-within .travel-map-pin-label {
    display: none;
}

.travel-destination-popup {
    position: absolute;
    z-index: 20;
    box-sizing: border-box;
    width: 330px;
    min-height: 220px;
    padding: 0 14px 14px 14px;
    border-width: 1px;
    border-style: solid;
    box-shadow: 0 12px 28px rgba(0, 0, 0, .8);
}

.travel-cancel-popup {
    z-index: 24;
    min-height: 320px;
}

.travel-destination-popup[hidden] {
    display: none;
}

.travel-destination-head {
    display: grid;
    grid-template-columns: 1fr 96px;
    width: 300px;
    min-height: 46px;
    column-gap: 10px;
    align-items: center;
    border-bottom-width: 1px;
    border-bottom-style: solid;
}

.travel-destination-head strong {
    overflow: hidden;
    font-size: 22px;
    line-height: 26px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.travel-destination-head span {
    font-size: 14px;
    font-weight: 900;
    line-height: 18px;
    text-align: right;
    text-transform: uppercase;
}

.travel-destination-body {
    width: 300px;
    min-height: 88px;
    padding: 12px 0;
}

.travel-destination-body p {
    margin: 0;
    font-size: 14px;
    line-height: 20px;
}

.travel-item-control {
    display: grid;
    grid-template-columns: 190px 100px;
    gap: 10px;
    width: 300px;
    margin-top: 12px;
}

.travel-item-control label,
.travel-item-control label span {
    display: block;
    width: 190px;
}

.travel-item-control label span {
    height: 20px;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}

.travel-item-control select {
    width: 190px;
    height: 36px;
    padding: 0 8px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
}

.travel-item-control > button {
    align-self: end;
    width: 100px;
    height: 36px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    font-weight: 900;
    cursor: pointer;
}

.travel-item-control > button:disabled {
    cursor: default;
    opacity: .5;
}

.travel-destination-actions {
    display: grid;
    grid-template-columns: 140px 140px;
    column-gap: 20px;
    width: 300px;
}

.travel-destination-actions button {
    width: 140px;
    height: 42px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    font-weight: 900;
    cursor: pointer;
}

.travel-destination-actions button:disabled {
    cursor: default;
    opacity: .55;
}

.special-training-card .training-description {
    height: 110px;
}

.special-training-card:not(.has-unlock) .training-description {
    height: 150px;
}

.special-training-unlock {
    width: 512px;
    height: 32px;
    margin-top: 8px;
    padding: 6px 10px;
    overflow: hidden;
    border-width: 1px;
    border-style: solid;
    box-sizing: border-box;
    font-size: 12px;
    line-height: 18px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.admin-special-training-form label.special-field-name {
    grid-column: 1;
    grid-row: 2;
}

.admin-special-training-form label.special-field-sort {
    grid-column: 2;
    grid-row: 2;
}

.admin-special-training-form label.special-field-image {
    grid-column: 3;
    grid-row: 2;
}

.admin-special-training-form label.special-field-update {
    grid-column: 1;
    grid-row: 3;
}

.admin-special-training-form label.special-field-time {
    grid-column: 2;
    grid-row: 3;
}

.admin-special-training-form label.special-field-fixed {
    grid-column: 3;
    grid-row: 3;
}

.admin-special-training-form label.special-field-max {
    grid-column: 1;
    grid-row: 4;
}

.admin-special-training-form label.special-field-ki {
    grid-column: 2;
    grid-row: 4;
}

.admin-special-training-form label.special-field-lp {
    grid-column: 3;
    grid-row: 4;
}

.admin-special-training-form .admin-bbcode-editor-field {
    grid-column: 1 / 4;
    grid-row: 7;
}

.admin-special-training-form .admin-training-preview {
    grid-column: 3;
    grid-row: 8;
}

.admin-special-training-form label.special-field-kp {
    grid-column: 1;
    grid-row: 5;
}

.admin-special-training-form label.special-field-zeni {
    grid-column: 2;
    grid-row: 5;
}

.admin-special-training-form label.special-field-unlock {
    grid-column: 3;
    grid-row: 5;
}

.admin-special-training-form label.special-field-tail {
    grid-column: 1 / 4;
    grid-row: 6;
    width: 884px;
}

.admin-special-training-form label.special-field-tail select {
    width: 884px;
}

.admin-special-training-form label.special-training-once {
    display: flex;
    grid-column: 1;
    grid-row: 8;
    align-items: center;
    width: 274px;
    padding-top: 0;
}

.admin-special-training-form label.special-training-active {
    display: flex;
    grid-column: 2;
    grid-row: 8;
    align-items: center;
    width: 274px;
    padding-top: 0;
}

.admin-special-training-form .admin-planet-actions {
    grid-column: 1 / 4;
    grid-row: 9;
}

.travel-place-list {
    width: 950px;
    margin-top: 12px;
    padding: 16px;
    border-width: 1px;
    border-style: solid;
}

.travel-place-row {
    display: grid;
    grid-template-columns: 190px 542px 160px;
    column-gap: 16px;
    width: 916px;
    padding: 12px 0;
    border-bottom-width: 1px;
    border-bottom-style: solid;
}

.travel-place-row strong {
    font-size: 16px;
    line-height: 22px;
}

.travel-place-row span {
    font-size: 13px;
    line-height: 20px;
}

.travel-place-row button {
    width: 160px;
    height: 36px;
}

.admin-title-form {
    display: grid;
    box-sizing: border-box;
    grid-template-columns: 209px 209px 209px 209px;
    column-gap: 16px;
    row-gap: 14px;
    width: 918px;
    margin: 12px 16px 0 16px;
    padding: 16px;
    border-width: 2px;
    border-style: solid;
}

.admin-title-form .admin-planet-form-title {
    box-sizing: border-box;
    grid-column: 1 / 5;
    width: 884px;
}

.admin-title-form label {
    box-sizing: border-box;
    display: block;
    width: 209px;
}

.admin-title-form label span {
    display: block;
    height: 22px;
    font-size: 12px;
    font-weight: 900;
    line-height: 22px;
    text-transform: uppercase;
}

.admin-title-form input[type="text"],
.admin-title-form input[type="number"],
.admin-title-form select,
.admin-title-form input[type="color"] {
    box-sizing: border-box;
    width: 209px;
    height: 34px;
    padding: 6px 8px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
}

.admin-title-form input[type="color"] {
    padding: 3px 6px;
}

.admin-title-wide {
    box-sizing: border-box;
    grid-column: 1 / 5;
    width: 884px;
}

.admin-title-wide textarea {
    box-sizing: border-box;
    width: 884px;
    height: 140px;
    padding: 8px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    resize: none;
}

.admin-title-form .admin-planet-checkbox {
    box-sizing: border-box;
    grid-column: 1;
    grid-row: auto;
    width: 209px;
    height: 34px;
    padding-top: 6px;
}

.admin-title-form .admin-planet-actions {
    box-sizing: border-box;
    grid-column: 1 / 5;
    grid-row: auto;
    display: flex;
    justify-content: flex-end;
    gap: 16px;
    width: 884px;
    height: 42px;
}

.admin-title-list {
    box-sizing: border-box;
    width: 918px;
    margin: 12px 16px 0 16px;
    padding: 16px;
    border-width: 2px;
    border-style: solid;
}

.admin-title-list .admin-planet-form-title {
    box-sizing: border-box;
    width: 884px;
}

.admin-title-empty {
    box-sizing: border-box;
    width: 884px;
    height: 54px;
    padding: 16px 12px 0 12px;
    border-width: 1px;
    border-style: solid;
    font-weight: 900;
}

.admin-title-row {
    display: grid;
    box-sizing: border-box;
    grid-template-columns: 70px 1fr 110px 140px 140px;
    column-gap: 16px;
    align-items: center;
    width: 884px;
    height: 54px;
    border-bottom-width: 1px;
    border-bottom-style: solid;
}

.admin-title-row:last-child {
    border-bottom-width: 0;
}

.admin-title-row a,
.admin-title-row button {
    box-sizing: border-box;
    display: block;
    width: 140px;
    height: 36px;
    padding: 0;
    border-width: 1px;
    border-style: solid;
    font-size: 13px;
    font-weight: 900;
    line-height: 34px;
    text-align: center;
    text-decoration: none;
}

.admin-title-row form {
    width: 140px;
    height: 36px;
}

.admin-title-form .admin-planet-actions button,
.admin-title-form .admin-planet-actions a {
    box-sizing: border-box;
    display: block;
    width: 160px;
    height: 36px;
    padding: 0;
    border-width: 1px;
    border-style: solid;
    font-size: 13px;
    font-weight: 900;
    line-height: 34px;
    text-align: center;
    text-decoration: none;
}

.title-color-preview.title-color-gold { color: #ffd45a; }
.title-color-preview.title-color-green { color: #39e36a; }
.title-color-preview.title-color-blue { color: #4ca7ff; }
.title-color-preview.title-color-red { color: #ff3f3f; }
.title-color-preview.title-color-violet { color: #a56dff; }
.title-color-preview.title-color-pink { color: #ff4fc3; }
.title-color-preview.title-color-cyan { color: #33eaff; }
.title-color-preview.title-color-silver { color: #d6dde5; }


/* Item system */
.item-inventory-page,
.admin-item-page {
    width: 950px;
    box-sizing: border-box;
}

.item-inventory-list {
    display: grid;
    grid-template-columns: 450px 450px;
    gap: 12px;
    padding: 14px;
    justify-content: center;
}

.item-inventory-card {
    display: grid;
    grid-template-columns: 100px 318px;
    gap: 10px;
    width: 450px;
    height: 284px;
    padding: 10px;
    border: 1px solid var(--box-border);
    background: var(--box-bg);
}

.item-inventory-image {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100px;
    height: 100px;
    overflow: hidden;
    background: var(--panel-bg, var(--box-bg));
    border: 1px solid var(--box-border);
    box-sizing: border-box;
}

.item-inventory-visual {
    display: flex;
    flex-direction: column;
    gap: 8px;
    width: 100px;
    height: 262px;
}

.item-inventory-image img,
.item-inventory-image span {
    display: block;
    width: 98px;
    height: 98px;
    object-fit: contain;
    text-align: center;
    line-height: 98px;
}

.item-inventory-body {
    width: 318px;
    height: 262px;
}

.item-inventory-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 32px;
    border-bottom: 1px solid var(--box-border);
}

.item-inventory-heading h2 {
    margin: 0;
    overflow: hidden;
    font-size: 17px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.item-inventory-heading strong {
    font-size: 15px;
}

.item-inventory-description {
    height: 144px;
    padding: 7px 0 4px 0;
    overflow: hidden;
    font-size: 13px;
    line-height: 18px;
}

.item-inventory-card.is-ticket .item-inventory-description {
    height: 112px;
}

.item-ticket-expiry {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 318px;
    height: 28px;
    padding: 0 8px;
    border: 1px solid var(--box-border);
    background: var(--panel-bg, var(--box-bg));
    box-sizing: border-box;
    font-size: 12px;
}

.item-ticket-expiry span {
    font-weight: 700;
    text-transform: uppercase;
}

.item-ticket-expiry strong {
    color: var(--accent);
    font-variant-numeric: tabular-nums;
}

.item-inventory-card.is-expired {
    opacity: .55;
}

.item-effect-list {
    display: flex;
    flex-direction: column;
    gap: 6px;
    width: 100px;
    height: 62px;
}

.item-effect-list span {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100px;
    height: 28px;
    border: 1px solid var(--box-border);
    background: var(--panel-bg, var(--box-bg));
    box-sizing: border-box;
    padding: 3px 4px;
    font-size: 12px;
    font-weight: 700;
    line-height: 15px;
    overflow: hidden;
    text-align: center;
    overflow-wrap: anywhere;
    white-space: normal;
}

.item-effect-list span:only-child {
    height: 62px;
}

.item-use-form {
    width: 318px;
    height: 32px;
    margin: 5px 0 0 0;
}

.item-travel-use-hint {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 318px;
    height: 32px;
    margin: 5px 0 0 0;
    padding: 0 8px;
    border-width: 1px;
    border-style: solid;
    box-sizing: border-box;
}

.item-travel-use-hint strong {
    text-transform: uppercase;
}

.item-travel-use-hint span {
    display: block;
    width: 300px;
    overflow: hidden;
    font-size: 11px;
    text-align: center;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.admin-item-actions button,
.admin-item-actions a,
.admin-item-row a,
.admin-item-row button {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 160px;
    height: 34px;
    margin: 0;
    padding: 0 10px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    font-weight: 900;
    text-decoration: none;
    cursor: pointer;
    box-sizing: border-box;
}

.item-use-form button {
    width: 318px;
    height: 32px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    font-weight: 900;
    cursor: pointer;
}

.item-discard-form {
    display: grid;
    grid-template-columns: 197px 111px;
    gap: 10px;
    width: 318px;
    height: 34px;
    margin: 5px 0 0 0;
}

.item-discard-form label {
    display: grid;
    grid-template-columns: 85px 112px;
    align-items: center;
    width: 197px;
    height: 34px;
}

.item-discard-form label span {
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}

.item-discard-form select,
.item-discard-form button {
    height: 34px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
}

.item-discard-form select {
    width: 112px;
    padding: 0 8px;
    cursor: pointer;
}

.item-discard-form button {
    width: 111px;
    padding: 0 8px;
    font-weight: 900;
    cursor: pointer;
}

.item-inventory-empty {
    grid-column: 1 / 3;
    width: 912px;
    padding: 22px;
    border: 1px solid var(--box-border);
    background: var(--box-bg);
    box-sizing: border-box;
    text-align: center;
}

.admin-item-tabs {
    grid-template-columns: 180px 180px 180px 180px;
}

.admin-item-form,
.admin-item-grant {
    display: grid;
    grid-template-columns: 286px 286px 286px;
    column-gap: 16px;
    row-gap: 12px;
    width: 918px;
    margin: 12px 16px 0 16px;
    padding: 12px;
    border-width: 2px;
    border-style: solid;
    box-sizing: border-box;
}

.admin-item-form .admin-planet-form-title,
.admin-item-grant .admin-planet-form-title {
    grid-column: 1 / 4;
    width: 890px;
}

.admin-item-form label,
.admin-item-grant label {
    display: block;
    width: 286px;
}

.admin-item-form label > span,
.admin-item-grant label > span {
    display: block;
    height: 22px;
    font-weight: 700;
    text-transform: uppercase;
}

.admin-item-form input[type="text"],
.admin-item-form input[type="number"],
.admin-item-form select,
.admin-item-form input[type="file"],
.admin-item-grant input[type="text"],
.admin-item-grant input[type="number"],
.admin-item-grant select {
    width: 286px;
    height: 34px;
    padding: 6px 8px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    box-sizing: border-box;
}

.admin-item-form select,
.admin-item-grant select {
    appearance: none;
    cursor: pointer;
}

.admin-item-form input[type="file"] {
    padding: 0;
    overflow: hidden;
}

.admin-item-form input[type="file"]::file-selector-button {
    height: 32px;
    margin: 0 10px 0 0;
    padding: 0 12px;
    border-width: 0 1px 0 0;
    border-style: solid;
    font: inherit;
    font-weight: 900;
    cursor: pointer;
}

.admin-item-effect-group,
.admin-item-settings {
    width: 286px;
    height: 128px;
    padding: 10px;
    border-width: 1px;
    border-style: solid;
}

.admin-item-travel-settings {
    height: 372px;
}

.admin-item-ticket-toggle {
    margin-top: 4px;
}

.admin-item-travel-settings [hidden] {
    display: none !important;
}

.admin-item-travel-settings > label:not(.admin-item-active) {
    display: block;
    width: 264px;
    min-height: 58px;
}

.admin-item-travel-settings > label:not(.admin-item-active) > span {
    display: block;
    width: 264px;
    height: 22px;
    font-size: 12px;
}

.admin-item-travel-settings select,
.admin-item-travel-settings input[type="number"] {
    width: 264px;
    height: 34px;
}

.admin-item-effect-group.is-disabled,
.admin-item-travel-settings [data-item-travel-setting].is-disabled {
    opacity: .42;
}

.admin-item-effect-group > strong,
.admin-item-settings > strong {
    display: block;
    height: 24px;
    text-transform: uppercase;
}

.admin-item-effect-group label {
    display: grid;
    grid-template-columns: 92px 164px;
    align-items: center;
    width: 264px;
    height: 42px;
}

.admin-item-effect-group label > span {
    height: auto;
    font-size: 12px;
}

.admin-item-effect-group select,
.admin-item-effect-group input[type="number"] {
    width: 164px;
    height: 34px;
}

.admin-item-settings > span {
    display: block;
    width: 264px;
    font-size: 12px;
    line-height: 16px;
}

.admin-item-description {
    grid-column: 1 / 3;
    width: 588px !important;
}

.admin-item-description > span,
.admin-item-description textarea,
.admin-item-description .sceditor-container {
    width: 588px !important;
}

.admin-item-description textarea,
.admin-item-description .sceditor-container,
.admin-item-description .sceditor-container iframe {
    height: 300px !important;
}

.admin-item-preview {
    grid-column: 3;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    width: 286px;
    height: 322px;
    padding: 10px;
    border-width: 1px;
    border-style: solid;
}

.admin-item-preview strong {
    align-self: flex-start;
    text-transform: uppercase;
}

.admin-item-preview img {
    width: 240px;
    height: 264px;
    object-fit: contain;
}

.admin-item-preview > span {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 240px;
    height: 264px;
    text-align: center;
}

.admin-item-active {
    display: flex !important;
    align-items: center;
    width: 264px !important;
    height: 34px;
    font-weight: 900;
}

.admin-item-active input {
    width: 18px;
    height: 18px;
    margin-right: 7px;
}

.admin-item-actions {
    grid-column: 1 / 4;
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    width: 890px;
    height: 42px;
}

.admin-item-list {
    width: 918px;
    margin: 12px 16px 0 16px;
}

.admin-item-row {
    display: grid;
    grid-template-columns: 40px 190px 200px 70px 150px 150px;
    gap: 10px;
    align-items: center;
    width: 890px;
    height: 54px;
    padding: 8px 0;
    border-bottom-width: 1px;
    border-bottom-style: solid;
}

.admin-item-row em,
.admin-item-row i {
    font-style: normal;
}

.admin-item-row > strong,
.admin-item-row > em {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.admin-item-row form {
    width: 150px;
    height: 34px;
    margin: 0;
}

.admin-item-row a,
.admin-item-row button {
    width: 150px;
}

.admin-item-grant .admin-item-actions {
    grid-column: 1 / 4;
}

/* Rüstungssystem */
.gear-inventory-page,
.admin-gear-page {
    width: 950px;
    box-sizing: border-box;
}

.gear-summary {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
    width: 890px;
    margin: 12px 30px 0 30px;
}

.gear-summary span {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 36px;
    border-width: 1px;
    border-style: solid;
    background: var(--panel-bg, var(--box-bg));
    font-weight: 900;
    text-transform: uppercase;
}

.gear-inventory-list {
    display: grid;
    grid-template-columns: 430px 430px;
    gap: 14px;
    padding: 14px 30px;
    justify-content: center;
}

.gear-inventory-card {
    display: grid;
    grid-template-columns: 100px 298px;
    gap: 10px;
    width: 430px;
    height: 224px;
    padding: 10px;
    border: 1px solid var(--box-border);
    background: var(--box-bg);
}

.gear-inventory-card.is-equipped {
    box-shadow: inset 0 0 0 1px var(--accent);
}

.gear-inventory-visual {
    display: flex;
    flex-direction: column;
    gap: 8px;
    width: 100px;
    height: 202px;
}

.gear-inventory-image {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100px;
    height: 100px;
    overflow: hidden;
    background: var(--panel-bg, var(--box-bg));
    border: 1px solid var(--box-border);
    box-sizing: border-box;
}

.gear-inventory-image img,
.gear-inventory-image span {
    display: block;
    width: 98px;
    height: 98px;
    object-fit: contain;
    text-align: center;
    line-height: 98px;
}

.gear-effect-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 6px;
    width: 100px;
    height: 94px;
}

.gear-effect-list span {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
    height: 28px;
    padding: 3px;
    border: 1px solid var(--box-border);
    background: var(--panel-bg, var(--box-bg));
    box-sizing: border-box;
    font-size: 11px;
    font-weight: 900;
    line-height: 13px;
    overflow: hidden;
    text-align: center;
    white-space: nowrap;
}

.gear-effect-list span:only-child {
    grid-column: 1 / 3;
    width: 100px;
}

.gear-inventory-body {
    width: 298px;
    height: 202px;
}

.gear-inventory-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 32px;
    border-bottom: 1px solid var(--box-border);
}

.gear-inventory-heading h2 {
    margin: 0;
    overflow: hidden;
    font-size: 17px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.gear-inventory-heading strong {
    padding-left: 8px;
    font-size: 12px;
    text-transform: uppercase;
    white-space: nowrap;
}

.gear-inventory-description {
    height: 120px;
    padding: 7px 0 4px 0;
    overflow: hidden;
    font-size: 13px;
    line-height: 18px;
}

.gear-use-form {
    width: 298px;
    height: 32px;
    margin: 5px 0 0 0;
}

.gear-use-form button {
    width: 298px;
    height: 32px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    font-weight: 900;
    cursor: pointer;
}

.gear-inventory-empty {
    grid-column: 1 / 3;
    width: 912px;
    padding: 22px;
    border: 1px solid var(--box-border);
    background: var(--box-bg);
    box-sizing: border-box;
    text-align: center;
}

.admin-gear-tabs {
    grid-template-columns: 180px 180px 180px 180px;
}

.admin-gear-form,
.admin-gear-grant {
    width: 918px;
    margin: 12px 16px 0 16px;
    padding: 12px;
    border-width: 2px;
    border-style: solid;
    box-sizing: border-box;
}

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

.admin-gear-grant {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px 16px;
}

.admin-gear-form .admin-planet-form-title,
.admin-gear-grant .admin-planet-form-title {
    grid-column: 1 / -1;
    width: 100%;
}

.admin-gear-panel,
.admin-gear-bottom-bar {
    width: 100%;
    min-width: 0;
    padding: 14px;
    border-width: 1px;
    border-style: solid;
    border-color: var(--box-border);
    background: var(--content-bg);
    color: var(--box-text);
    box-shadow: var(--box-shadow);
    box-sizing: border-box;
}

.admin-gear-main-fields {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px 14px;
}

.admin-gear-name-field {
    grid-column: span 2;
}

.admin-gear-form label,
.admin-gear-grant label {
    display: block;
    min-width: 0;
    margin: 0;
}

.admin-gear-form label > span,
.admin-gear-grant label > span {
    display: block;
    min-height: 22px;
    font-weight: 700;
    line-height: 22px;
    text-transform: uppercase;
}

.admin-gear-form input[type="text"],
.admin-gear-form input[type="number"],
.admin-gear-form select,
.admin-gear-form input[type="file"],
.admin-gear-grant input[type="text"],
.admin-gear-grant input[type="number"],
.admin-gear-grant select {
    width: 100%;
    height: 34px;
    padding: 6px 8px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    box-sizing: border-box;
}

.admin-gear-form select,
.admin-gear-grant select {
    appearance: none;
    cursor: pointer;
}

/* Beide Upload-Bereiche bewusst waagerecht: links Inventarbild, rechts Skin-Layer. */
.admin-gear-media-panel {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.admin-gear-upload-block {
    min-width: 0;
    padding: 10px;
    border-width: 1px;
    border-style: solid;
    border-color: var(--box-border);
    background: var(--box-bg);
    box-sizing: border-box;
}

.admin-gear-upload input[type="file"] {
    padding: 0;
    overflow: hidden;
}

.admin-gear-upload input[type="file"]::file-selector-button {
    height: 32px;
    margin: 0 10px 0 0;
    padding: 0 12px;
    border-width: 0 1px 0 0;
    border-style: solid;
    font: inherit;
    font-weight: 900;
    cursor: pointer;
}

.admin-gear-preview {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 118px;
    align-items: center;
    gap: 12px;
    width: 100%;
    min-height: 136px;
    margin-top: 10px;
    padding: 10px;
    border-width: 1px;
    border-style: solid;
    box-sizing: border-box;
}

.admin-gear-preview strong {
    display: block;
    line-height: 1.35;
    text-transform: uppercase;
}

.admin-gear-preview img {
    grid-column: 2;
    grid-row: 1;
    width: 116px;
    height: 112px;
    object-fit: contain;
}

.admin-gear-preview > span {
    grid-column: 2;
    grid-row: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 116px;
    height: 112px;
    text-align: center;
}

.admin-gear-race-availability {
    display: block;
    margin: 0;
    padding-top: 10px;
}

.admin-gear-race-availability legend {
    padding: 0 8px;
    color: var(--title-text);
    font-weight: 900;
    text-transform: uppercase;
}

.admin-gear-race-availability > p {
    margin: 0 0 10px 0;
    line-height: 20px;
}

/* Rassen immer von links nach rechts und erst danach in die nächste Zeile. */
.admin-gear-race-list {
    display: flex !important;
    flex-flow: row wrap !important;
    align-items: stretch;
    gap: 8px 10px;
    width: 100%;
}

.admin-gear-form .admin-gear-race-option,
.admin-gear-form .admin-gear-race-option.is-all {
    display: flex;
    flex: 1 0 150px;
    align-items: center;
    justify-content: flex-start;
    gap: 7px;
    width: auto;
    min-width: 150px;
    min-height: 34px;
    padding: 5px 8px;
    border-width: 1px;
    border-style: solid;
    border-color: var(--box-border);
    background: var(--box-bg);
    cursor: pointer;
    box-sizing: border-box;
}

.admin-gear-form .admin-gear-race-option.is-all {
    font-weight: 900;
}

.admin-gear-form .admin-gear-race-option input {
    flex: 0 0 auto;
    width: 18px;
    height: 18px;
    margin: 0;
    cursor: pointer;
}

.admin-gear-form .admin-gear-race-option > span {
    display: block;
    min-width: 0;
    height: auto;
    overflow: hidden;
    font-weight: 700;
    line-height: 22px;
    text-overflow: ellipsis;
    text-transform: none;
    white-space: nowrap;
}

/* Editor nimmt die komplette nutzbare Formularbreite ein. */
.admin-gear-description {
    display: block !important;
    width: 100% !important;
    min-width: 0;
}

.admin-gear-description > span,
.admin-gear-description textarea,
.admin-gear-description .sceditor-container {
    display: block;
    width: 100% !important;
    max-width: none !important;
    box-sizing: border-box !important;
}

.admin-gear-description textarea,
.admin-gear-description .sceditor-container {
    height: 330px !important;
}

.admin-gear-description .sceditor-container {
    overflow: hidden !important;
}

.admin-gear-description .sceditor-container iframe,
.admin-gear-description .sceditor-container textarea {
    width: calc(100% - 10px) !important;
    max-width: calc(100% - 10px) !important;
    height: 276px !important;
    box-sizing: border-box !important;
}

/* Aktiv-Schalter bewusst ganz unten, direkt über den Aktionen. */
.admin-gear-bottom-bar {
    display: flex;
    align-items: center;
    gap: 24px;
    min-height: 50px;
    padding: 7px 12px;
}

.admin-gear-active {
    display: flex !important;
    align-items: center;
    width: auto !important;
    min-height: 34px;
    padding: 0;
    border: 0;
    background: transparent;
    font-weight: 900;
    box-shadow: none;
    white-space: nowrap;
}

.admin-gear-active input {
    width: 18px;
    height: 18px;
    margin: 0 8px 0 0;
}

.admin-gear-actions {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    width: 100%;
    min-height: 42px;
    padding-top: 2px;
}

.admin-gear-actions button,
.admin-gear-actions a,
.admin-gear-row a,
.admin-gear-row button {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 160px;
    height: 34px;
    margin: 0;
    padding: 0 10px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    font-weight: 900;
    text-decoration: none;
    cursor: pointer;
    box-sizing: border-box;
}

.admin-gear-list {
    width: 918px;
    margin: 12px 16px 0 16px;
}

.admin-gear-row {
    display: grid;
    grid-template-columns: 40px 155px 70px 200px 60px 140px 140px;
    gap: 10px;
    align-items: center;
    width: 890px;
    min-height: 54px;
    padding: 8px 0;
    border-bottom-width: 1px;
    border-bottom-style: solid;
}

.admin-gear-row em,
.admin-gear-row i,
.admin-gear-row b {
    overflow: hidden;
    font-style: normal;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.admin-gear-row form {
    width: 140px;
    height: 34px;
    margin: 0;
}

.admin-gear-row a,
.admin-gear-row button {
    width: 140px;
}

.admin-gear-grant label {
    width: 100%;
}

.admin-gear-grant .admin-gear-actions {
    grid-column: 1 / -1;
}

@media (max-width: 1000px) {
    .admin-gear-main-fields,
    .admin-gear-media-panel {
        grid-template-columns: 1fr;
    }

    .admin-gear-name-field {
        grid-column: auto;
    }
}

/* Weltraum, Raumschiffe, Zeitreisen und G-Räume */
.space-page {
    width: 950px;
    padding-bottom: 18px;
}

.space-section {
    width: 918px;
    margin: 12px 16px 0 16px;
}

.content-box.space-page > div.space-section {
    margin: 12px 14px 0;
}

.space-page > .space-owned {
    margin: 0 14px;
}

.content-box.space-page > div.space-activity {
    margin: 12px 14px 0;
}

.space-section > h2 {
    height: 40px;
    margin: 0;
    padding: 8px 12px;
    font-size: 19px;
    line-height: 22px;
    text-transform: uppercase;
}

.space-subsection-title {
    box-sizing: border-box;
    width: 918px;
    height: 40px;
    margin: 12px 0 0;
    padding: 8px 12px;
    font-size: 18px;
    line-height: 22px;
    text-transform: uppercase;
}

.space-gravity-section > h2 {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.space-gravity-section > h2 em {
    font-size: 15px;
    font-style: normal;
    line-height: 22px;
}

.space-offer-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding-top: 12px;
}

.space-offer {
    display: grid;
    grid-template-columns: 180px 1fr 150px;
    gap: 14px;
    align-items: stretch;
    width: 918px;
    padding: 12px;
}

.space-asset-offer {
    grid-template-columns: 120px 1fr 150px;
    align-items: center;
    height: 164px;
}

.space-asset-offer .space-offer-image {
    width: 120px;
    height: 120px;
}

.space-asset-offer .space-offer-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.space-asset-offer form {
    align-self: stretch;
    align-items: flex-end;
}

.space-offer-image,
.space-owned-image {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 180px;
    height: 120px;
    overflow: hidden;
}

.space-offer-image img,
.space-owned-image img {
    width: 180px;
    height: 120px;
    object-fit: contain;
}

.space-offer-body h2,
.space-offer-body h3,
.space-owned h3 {
    margin: 0 0 7px 0;
    font-size: 21px;
}

.space-offer-body .bbcode-content {
    height: 64px;
    overflow: hidden;
}

.space-facts {
    display: flex;
    gap: 10px;
    margin-top: 8px;
}

.space-facts span {
    padding: 5px 10px;
}

.space-offer form {
    display: flex;
    align-items: flex-end;
    width: 150px;
    margin: 0;
}

.space-offer button,
.space-control-form button,
.space-gravity-inline-upgrade button {
    width: 150px;
    height: 38px;
}

.space-gravity-inline-upgrade > span {
    font-weight: 900;
    text-transform: uppercase;
}

.space-gravity-inline-upgrade h3 {
    margin: 3px 0 6px;
    font-size: 20px;
}

.space-gravity-inline-upgrade form {
    display: flex;
    justify-content: flex-end;
    margin: 9px 0 0;
}

.space-owned {
    display: grid;
    grid-template-columns: 180px 1fr;
    gap: 16px;
    align-items: center;
    width: 918px;
    height: 144px;
    padding: 12px;
}

.space-owned > div:last-child {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.space-ship-owned {
    grid-template-columns: 120px 210px 1fr;
    gap: 16px;
}

.space-ship-owned .space-owned-image {
    width: 120px;
    height: 120px;
}

.space-ship-owned .space-owned-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.space-ship-summary {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 120px;
}

.space-ship-description {
    height: 120px;
    padding: 8px 0 8px 16px;
    overflow: hidden;
    line-height: 1.45;
}

.space-ship-description:empty::before {
    content: "Keine Beschreibung hinterlegt.";
    opacity: .65;
}

.space-gravity-owned.has-upgrade {
    grid-template-columns: 180px 1fr 310px;
    height: 166px;
}

.space-gravity-current {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.space-gravity-factor {
    margin-top: 7px;
    font-size: 13px;
    line-height: 17px;
}

.space-gravity-reward-preview {
    margin-top: 3px;
    font-size: 13px;
    line-height: 17px;
    white-space: nowrap;
}

.space-gravity-inline-upgrade {
    align-self: stretch;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-left: 16px;
    padding-right: 0;
}

.space-gravity-inline-upgrade .space-facts {
    gap: 6px;
    margin-top: 2px;
}

.space-gravity-inline-upgrade .space-facts span {
    padding: 4px 7px;
}

.space-owned > div > span,
.space-activity > span {
    text-transform: uppercase;
    font-weight: 900;
}

.space-activity {
    display: grid;
    grid-template-columns: 180px 1fr 180px;
    align-items: center;
    width: 918px;
    height: 62px;
    margin-top: 12px;
    padding: 10px 14px;
}

.space-activity em {
    text-align: right;
    font-style: normal;
}

.space-control-form {
    display: flex;
    align-items: flex-end;
    gap: 12px;
    width: 918px;
    margin: 12px 0 0 0;
    padding: 12px;
}

.space-operation-form {
    box-sizing: border-box;
    display: grid;
    grid-template-columns: 446px 430px;
    column-gap: 16px;
    align-items: end;
    margin-top: 0;
}

.space-control-selection {
    display: flex;
    align-items: end;
    gap: 12px;
    width: 446px;
}

.space-operation-form .space-control-selection label,
.space-operation-form .space-control-selection select {
    width: 217px;
}

.space-travel-control-form .space-control-selection label,
.space-travel-control-form .space-control-selection select {
    width: 446px;
}

.space-control-action {
    display: grid;
    grid-template-columns: 268px 150px;
    column-gap: 12px;
    align-items: end;
    width: 430px;
}

.space-control-action > strong {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 268px;
    height: 38px;
    padding: 0 8px;
    text-align: center;
    white-space: nowrap;
}

.space-control-action > button {
    width: 150px;
    height: 38px;
}

.space-vehicle-section > .space-activity {
    margin-top: 0;
}

.space-control-form label {
    display: flex;
    flex-direction: column;
    gap: 5px;
    width: 260px;
}

.space-control-form select {
    width: 260px;
    height: 38px;
}

.space-control-form > strong {
    display: flex;
    align-items: center;
    height: 38px;
}

.space-gravity-training-form .gravity-training-total-cost {
    justify-content: center;
    width: 268px;
    padding: 0 10px;
    text-align: center;
    white-space: nowrap;
}

.admin-planet-gravity-bonus {
    grid-column: 1;
    grid-row: 4;
}

.space-gravity-training-form.is-too-expensive .gravity-training-total-cost {
    color: var(--danger, #ff4d4d);
}

.space-empty {
    width: 918px;
    padding: 18px;
    text-align: center;
}

.admin-space-type-tabs {
    grid-template-columns: repeat(5, 174px);
}

.admin-space-form {
    grid-template-columns: 286px 286px 286px;
    column-gap: 16px;
    row-gap: 14px;
}

.admin-planet-form.admin-space-form > * {
    grid-column: auto;
    grid-row: auto;
}

.admin-space-form .admin-planet-form-title,
.admin-space-form .admin-space-planets,
.admin-space-form .admin-bbcode-editor-field,
.admin-space-form .admin-planet-image-preview,
.admin-space-form .admin-planet-actions {
    grid-column: 1 / 4;
    width: 890px;
}

.admin-space-form > label {
    width: 286px;
    height: 58px;
}

.admin-space-form > label > span {
    display: block;
    width: 286px;
    height: 20px;
    margin-bottom: 4px;
    line-height: 20px;
}

.admin-space-form > label input,
.admin-space-form > label select,
.admin-space-form .admin-planet-upload-field input[type="file"] {
    width: 286px;
    height: 34px;
    box-sizing: border-box;
}

.admin-space-form .admin-space-planets {
    grid-row: auto;
    height: auto;
}

.admin-space-form .admin-bbcode-editor-field {
    grid-row: auto;
}

.admin-space-form .admin-bbcode-editor-field span,
.admin-space-form .admin-bbcode-editor-field textarea,
.admin-space-form .admin-bbcode-editor-field .sceditor-container {
    width: 890px !important;
}

.admin-space-form .admin-planet-image-preview {
    grid-row: auto;
    height: 168px;
}

.admin-space-form .admin-planet-image-preview strong,
.admin-space-form .admin-planet-image-preview span {
    width: 864px;
}

.admin-space-form .admin-planet-image-preview img {
    width: 180px;
    height: 120px;
    object-fit: contain;
}

.admin-space-form .admin-planet-actions {
    grid-row: auto;
}

.admin-space-planets {
    display: grid;
    grid-template-columns: 854px;
    row-gap: 7px;
    width: 890px;
    padding: 12px;
}

.admin-space-planets legend {
    padding: 0 6px;
}

.admin-planet-options {
    grid-column: 1 / 4;
    grid-row: 9;
    display: grid;
    grid-template-columns: 864px;
    row-gap: 6px;
    width: 890px;
    height: 184px;
    padding: 10px 12px;
    border-width: 1px;
    border-style: solid;
    align-items: center;
}

.admin-planet-options .admin-planet-checkbox {
    grid-row: auto;
    width: auto;
    height: 28px;
    padding-top: 5px;
    white-space: nowrap;
}

.admin-planet-options ~ .admin-planet-actions {
    grid-row: 10;
}

.admin-planet-special-training-availability ~ .admin-planet-options {
    grid-row: 11;
}

.admin-planet-special-training-availability ~ .admin-planet-options ~ .admin-planet-actions {
    grid-row: 12;
}

.admin-space-planets label {
    display: flex;
    align-items: center;
    gap: 7px;
    width: 854px;
    height: 28px;
}

.admin-space-planets input {
    width: 18px;
    height: 18px;
}

/* Verwaltungs-Navigationen bieten bis zu fuenf gleich breite Plaetze. */
.admin-news-tabs,
.admin-screen-tabs,
.admin-team-tabs,
.admin-item-tabs,
.admin-videos-page .admin-news-tabs {
    grid-template-columns: repeat(5, 174px);
    column-gap: 8px;
    width: 918px;
    height: 44px;
    margin: 12px 16px 0 16px;
    padding: 6px;
    border-width: 2px;
    border-style: solid;
}

.admin-news-tabs a,
.admin-news-tabs span,
.admin-screen-tabs a,
.admin-screen-tabs span,
.admin-team-tabs a,
.admin-team-tabs span,
.admin-item-tabs a,
.admin-item-tabs span,
.admin-videos-page .admin-news-tabs a,
.admin-videos-page .admin-news-tabs span {
    width: 174px;
    height: 30px;
    padding-top: 7px;
    box-sizing: border-box;
}

/* Item-Kategorien: Spieler-Inventar */
.item-category-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 12px 16px 16px;
    padding: 8px;
    border: 1px solid currentColor;
}

.item-category-tabs a {
    min-width: 120px;
    padding: 8px 14px;
    border: 1px solid currentColor;
    text-align: center;
    text-decoration: none;
    box-sizing: border-box;
}

.item-category-tabs a.is-active {
    font-weight: 700;
    box-shadow: inset 0 -3px 0 currentColor;
}

/* Item-Kategorien: Adminbereich */
.admin-item-category-layout {
    display: grid;
    grid-template-columns: minmax(300px, 360px) 1fr;
    gap: 16px;
    margin: 16px;
}

.admin-item-category-form {
    display: grid;
    gap: 10px;
    align-content: start;
    padding: 12px;
    border: 1px solid currentColor;
}

.admin-item-category-form label {
    display: grid;
    gap: 5px;
}

.admin-item-category-row {
    display: grid;
    grid-template-columns: 60px minmax(160px, 1fr) 80px 100px 100px;
    gap: 8px;
    align-items: center;
    padding: 8px;
    border-bottom: 1px solid currentColor;
}

.admin-item-category-row form,
.admin-item-category-row button {
    width: 100%;
}

.admin-item-row b {
    font-style: normal;
    font-weight: 400;
}

@media (max-width: 800px) {
    .admin-item-category-layout {
        grid-template-columns: 1fr;
    }

    .admin-item-category-row {
        grid-template-columns: 45px 1fr;
    }
}

/* Item-Kategorien: Layout-Korrektur im Adminbereich */
.admin-item-category-layout {
    display: grid;
    grid-template-columns: 300px 602px;
    column-gap: 16px;
    align-items: start;
    width: 918px;
    margin: 12px 16px 0 16px;
    box-sizing: border-box;
}

.admin-item-category-form,
.admin-item-category-list {
    margin: 0;
    padding: 12px;
    border: 1px solid var(--box-border);
    background: var(--box-bg);
    box-sizing: border-box;
}

.admin-item-category-form {
    display: grid;
    grid-template-columns: 1fr;
    row-gap: 12px;
    width: 300px;
}

.admin-item-category-list {
    width: 602px;
}

.admin-item-category-form .admin-planet-form-title,
.admin-item-category-list .admin-planet-form-title {
    grid-column: auto;
    width: 100%;
    height: 38px;
    margin: 0;
    padding: 10px 12px 0 12px;
    border: 1px solid var(--box-border);
    background: var(--panel-bg, var(--box-bg));
    box-sizing: border-box;
}

.admin-item-category-form label {
    display: block;
    width: 100%;
    margin: 0;
}

.admin-item-category-form label > span {
    display: block;
    height: 22px;
    font-weight: 700;
    text-transform: uppercase;
}

.admin-item-category-form input[type="text"],
.admin-item-category-form input[type="number"] {
    width: 100%;
    height: 34px;
    padding: 6px 8px;
    border: 1px solid var(--box-border);
    font: inherit;
    box-sizing: border-box;
}

.admin-item-category-form .admin-item-active {
    display: flex;
    align-items: center;
    gap: 8px;
    min-height: 34px;
    font-weight: 700;
}

.admin-item-category-form .admin-item-active input {
    width: 18px;
    height: 18px;
    margin: 0;
}

.admin-item-category-form .admin-item-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    width: 100%;
    margin: 0;
}

.admin-item-category-form .admin-item-actions:has(a:only-child),
.admin-item-category-form .admin-item-actions:not(:has(a)) {
    grid-template-columns: 1fr;
}

.admin-item-category-form .admin-item-actions button,
.admin-item-category-form .admin-item-actions a {
    width: 100%;
    box-sizing: border-box;
}

.admin-item-category-row {
    display: grid;
    grid-template-columns: 48px minmax(150px, 1fr) 70px 92px 92px;
    gap: 8px;
    align-items: center;
    min-height: 52px;
    padding: 8px 0;
    border-bottom: 1px solid var(--box-border);
    box-sizing: border-box;
}

.admin-item-category-row:last-child {
    border-bottom: 0;
}

.admin-item-category-row span,
.admin-item-category-row strong,
.admin-item-category-row em {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.admin-item-category-row em {
    font-style: normal;
}

.admin-item-category-row form {
    width: 92px;
    height: 34px;
    margin: 0;
}

.admin-item-category-row a,
.admin-item-category-row button {
    width: 92px;
    height: 34px;
    box-sizing: border-box;
}

.admin-item-category-list .admin-planet-empty {
    width: 100%;
    margin-top: 0;
    padding: 18px 8px;
    border: 0;
    background: transparent;
    box-sizing: border-box;
}

@media (max-width: 980px) {
    .admin-item-category-layout {
        grid-template-columns: 1fr;
        row-gap: 12px;
        width: calc(100% - 32px);
    }

    .admin-item-category-form,
    .admin-item-category-list {
        width: 100%;
    }
}

/* Item-Verwaltung: Navigation wie bei der Planeten-Verwaltung */
.admin-item-tabs {
    grid-template-columns: repeat(5, 174px);
    column-gap: 8px;
    width: 918px;
    height: 44px;
    margin: 12px 16px 0 16px;
    padding: 6px;
}

.admin-item-tabs a,
.admin-item-tabs span {
    width: 174px;
    height: 30px;
    padding-top: 7px;
    box-sizing: border-box;
}

/* Item-Liste: sieben Elemente sauber in einer Reihe halten */
.admin-item-row {
    grid-template-columns: 34px 150px 145px 150px 55px 120px 120px;
    column-gap: 12px;
    width: 890px;
    height: 54px;
    padding: 8px 0;
    box-sizing: border-box;
}

.admin-item-row > span,
.admin-item-row > strong,
.admin-item-row > b,
.admin-item-row > em,
.admin-item-row > i {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.admin-item-row > b {
    font-style: normal;
    font-weight: 400;
}

.admin-item-row form {
    width: 120px;
    height: 34px;
    margin: 0;
}

.admin-item-row a,
.admin-item-row button {
    width: 120px;
    height: 34px;
    margin: 0;
    box-sizing: border-box;
}

/* Item-Kategorien: finaler, kollisionsfreier Aufbau */
.admin-item-category-layout {
    display: grid !important;
    grid-template-columns: 230px minmax(0, 1fr) !important;
    gap: 14px !important;
    align-items: start !important;
    width: 918px !important;
    max-width: calc(100% - 32px) !important;
    margin: 12px 16px 0 !important;
    box-sizing: border-box !important;
}

.admin-item-category-form,
.admin-item-category-list {
    display: block !important;
    min-width: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 10px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}

.admin-item-category-form .admin-planet-form-title,
.admin-item-category-list .admin-planet-form-title {
    display: block !important;
    grid-column: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 38px !important;
    margin: 0 0 10px !important;
    padding: 10px 10px 0 !important;
    box-sizing: border-box !important;
}

.admin-item-category-form label,
.admin-item-category-form label:nth-of-type(n) {
    display: block !important;
    grid-column: auto !important;
    grid-row: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 10px !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

.admin-item-category-form label > span {
    display: block !important;
    width: 100% !important;
    height: 22px !important;
    line-height: 22px !important;
    box-sizing: border-box !important;
}

.admin-item-category-form input[type="text"],
.admin-item-category-form input[type="number"] {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 34px !important;
    margin: 0 !important;
    padding: 6px 8px !important;
    border-width: 1px !important;
    border-style: solid !important;
    font: inherit !important;
    box-sizing: border-box !important;
}

.admin-item-category-form .admin-item-active,
.admin-item-category-form label.admin-item-active {
    display: flex !important;
    align-items: center !important;
    gap: 7px !important;
    width: 100% !important;
    min-height: 30px !important;
    margin: 0 0 10px !important;
    white-space: normal !important;
}

.admin-item-category-form .admin-item-active input {
    flex: 0 0 16px !important;
    width: 16px !important;
    height: 16px !important;
    margin: 0 !important;
}

.admin-item-category-form .admin-item-actions {
    display: flex !important;
    gap: 8px !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

.admin-item-category-form .admin-item-actions button,
.admin-item-category-form .admin-item-actions a {
    flex: 1 1 0 !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 34px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

.admin-item-category-list .admin-planet-empty {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 8px 6px 12px !important;
    box-sizing: border-box !important;
}

.admin-item-category-row {
    width: 100% !important;
    max-width: 100% !important;
    grid-template-columns: 42px minmax(100px, 1fr) 65px 88px 88px !important;
    gap: 7px !important;
    box-sizing: border-box !important;
}

@media (max-width: 760px) {
    .admin-item-category-layout {
        grid-template-columns: minmax(0, 1fr) !important;
        width: calc(100% - 20px) !important;
        max-width: calc(100% - 20px) !important;
        margin: 10px !important;
    }

    .admin-item-category-row {
        grid-template-columns: 36px minmax(0, 1fr) 60px !important;
    }

    .admin-item-category-row > a,
    .admin-item-category-row > form {
        grid-column: auto !important;
    }
}

/* Item-Kategorien: Aktionsbuttons exakt wie die restlichen Admin-Buttons */
.admin-item-category-row > a,
.admin-item-category-row > form > button {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 92px;
    height: 34px;
    margin: 0;
    padding: 0 8px;
    border-width: 1px;
    border-style: solid;
    box-sizing: border-box;
    font-family: inherit;
    font-size: inherit;
    font-style: normal;
    font-weight: 900;
    line-height: 1;
    text-align: center;
    white-space: nowrap;
    cursor: pointer;
}

.admin-item-category-row > form {
    display: block;
    width: 92px;
    height: 34px;
    margin: 0;
    padding: 0;
}


/* Welt 2: konfigurierbare Technik-Verwaltung */
.admin-technique-intro{margin:0 0 14px;color:var(--text-muted,#9caeb3);line-height:1.55}.admin-technique-form{display:block}.admin-technique-form fieldset{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 16px;padding:14px;border:1px solid rgba(38,210,224,.25);background:rgba(0,0,0,.14)}.admin-technique-form legend{padding:0 8px;font-weight:700;color:var(--accent,#27dcea)}.admin-technique-form label{min-width:0}.admin-technique-form label>span{display:block;margin-bottom:5px;font-weight:700}.admin-technique-form input,.admin-technique-form select,.admin-technique-form textarea{box-sizing:border-box;width:100%}.admin-technique-form textarea{min-height:86px;resize:vertical}.admin-technique-form .admin-planet-wide{grid-column:1/-1}.admin-technique-form .admin-planet-checkbox{display:flex;align-items:center;gap:8px;padding-top:25px}.admin-technique-form .admin-planet-checkbox input{width:auto}.admin-technique-help{grid-column:1/-1;margin:0;color:var(--text-muted,#9caeb3)}.admin-technique-row{grid-template-columns:54px minmax(180px,1fr) minmax(220px,1fr) auto auto}.admin-technique-row em{font-style:normal;color:var(--text-muted,#9caeb3)}@media(max-width:900px){.admin-technique-form fieldset{grid-template-columns:1fr 1fr}.admin-technique-row{grid-template-columns:44px 1fr}.admin-technique-row em,.admin-technique-row a,.admin-technique-row form{grid-column:2}}@media(max-width:620px){.admin-technique-form fieldset{grid-template-columns:1fr}.admin-technique-form .admin-planet-wide{grid-column:auto}}

/* Technik-Verwaltung: vollständiges Admin-Layout im Stil von Welt 2 */
.admin-technique-page {
    padding-bottom: 24px;
}

.admin-technique-page .admin-planet-tabs {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    width: 918px;
    height: auto;
    min-height: 44px;
    box-sizing: border-box;
}

.admin-technique-page .admin-planet-tabs a,
.admin-technique-page .admin-planet-tabs span {
    width: 100%;
    box-sizing: border-box;
}

.admin-technique-intro {
    width: 918px;
    margin: 12px 16px 0;
    padding: 11px 14px;
    border: 1px solid var(--box-border);
    background: var(--content-bg);
    color: var(--box-text);
    line-height: 1.55;
    box-shadow: var(--box-shadow);
    box-sizing: border-box;
}

.admin-planet-form.admin-technique-form {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 14px;
    width: 918px;
    margin: 12px 16px 0;
    padding: 12px;
    box-sizing: border-box;
}

.admin-technique-form > .admin-planet-form-title {
    grid-column: 1;
    width: 100%;
    box-sizing: border-box;
}

.admin-technique-form fieldset {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px 14px;
    width: 100%;
    min-width: 0;
    margin: 0;
    padding: 14px;
    border: 1px solid var(--box-border);
    background: var(--content-bg);
    color: var(--box-text);
    box-shadow: var(--box-shadow);
    box-sizing: border-box;
}

.admin-technique-form fieldset legend {
    max-width: calc(100% - 20px);
    padding: 0 9px;
    color: var(--title-text);
    font-weight: 900;
    text-transform: uppercase;
    white-space: normal;
}

.admin-technique-form fieldset > label {
    display: block;
    width: 100%;
    min-width: 0;
    margin: 0;
}

.admin-technique-form fieldset > label > span {
    display: block;
    min-height: 22px;
    margin: 0;
    overflow: hidden;
    font-weight: 900;
    line-height: 22px;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

.admin-technique-form input[type="text"],
.admin-technique-form input[type="number"],
.admin-technique-form input:not([type]),
.admin-technique-form select,
.admin-technique-form input[type="file"] {
    display: block;
    width: 100%;
    min-width: 0;
    height: 34px;
    padding: 6px 8px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    box-sizing: border-box;
}

.admin-technique-form select {
    appearance: none;
    cursor: pointer;
}

.admin-technique-form input[type="file"] {
    padding: 0;
    overflow: hidden;
}

.admin-technique-form input[type="file"]::file-selector-button {
    height: 32px;
    margin: 0 10px 0 0;
    padding: 0 12px;
    border-width: 0 1px 0 0;
    border-style: solid;
    font: inherit;
    font-weight: 900;
    cursor: pointer;
}

.admin-technique-form textarea {
    display: block;
    width: 100%;
    min-width: 0;
    min-height: 96px;
    padding: 8px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    line-height: 1.45;
    resize: vertical;
    box-sizing: border-box;
}

.admin-technique-form .admin-planet-wide {
    grid-column: 1 / -1;
    width: 100%;
}

.admin-technique-form .admin-planet-wide > span,
.admin-technique-form .admin-planet-wide textarea {
    width: 100%;
}

.admin-technique-form .admin-planet-checkbox {
    display: flex;
    align-items: center;
    align-self: end;
    gap: 8px;
    width: 100%;
    min-height: 34px;
    height: auto;
    padding: 6px 9px;
    border: 1px solid var(--box-border);
    background: var(--box-bg);
    font-weight: 900;
    line-height: 20px;
    cursor: pointer;
    box-sizing: border-box;
}

.admin-technique-form .admin-planet-checkbox input {
    flex: 0 0 auto;
    width: 18px;
    height: 18px;
    margin: 0;
}

.admin-technique-help {
    grid-column: 1 / -1;
    width: 100%;
    margin: 0;
    padding: 9px 11px;
    border: 1px solid var(--box-border);
    background: var(--box-bg);
    color: var(--box-text);
    line-height: 1.45;
    box-sizing: border-box;
}

.admin-technique-form .admin-planet-actions {
    grid-column: 1;
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    width: 100%;
    height: auto;
    min-height: 42px;
    box-sizing: border-box;
}

.admin-technique-form .admin-planet-actions button,
.admin-technique-form .admin-planet-actions a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 160px;
    height: 34px;
    margin: 0;
    padding: 0 10px;
    box-sizing: border-box;
}

.admin-technique-page .admin-planet-list {
    width: 918px;
    box-sizing: border-box;
}

.admin-technique-page .admin-planet-list > .admin-planet-form-title {
    width: 890px;
    box-sizing: border-box;
}

.admin-technique-row {
    grid-template-columns: 48px minmax(170px, 1fr) minmax(250px, 1.5fr) 130px 130px;
    column-gap: 10px;
    width: 890px;
    min-height: 54px;
    height: auto;
    overflow: visible;
    box-sizing: border-box;
}

.admin-technique-row > span,
.admin-technique-row > strong,
.admin-technique-row > em {
    min-width: 0;
}

.admin-technique-row > em {
    font-style: normal;
    color: var(--box-text);
}

.admin-technique-row > a,
.admin-technique-row > form,
.admin-technique-row > form > button {
    width: 130px;
    margin: 0;
}

@media (max-width: 1000px) {
    .admin-technique-form fieldset {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 700px) {
    .admin-technique-form fieldset {
        grid-template-columns: minmax(0, 1fr);
    }

    .admin-technique-form .admin-planet-wide {
        grid-column: 1;
    }
}

/* Technik-Verwaltung: kompakte, überlappungsfreie Formular- und Editor-Darstellung */
.admin-technique-form,
.admin-technique-form * {
    box-sizing: border-box;
}

.admin-technique-form fieldset.admin-technique-section {
    height: auto !important;
    min-height: 0 !important;
    align-items: start;
    grid-auto-rows: min-content;
    overflow: visible;
}

.admin-technique-form fieldset.admin-technique-section > label {
    position: static !important;
    inset: auto !important;
    height: auto !important;
    min-height: 0 !important;
}

.admin-technique-form input:not([type="checkbox"]):not([type="radio"]),
.admin-technique-form select,
.admin-technique-form textarea {
    color: var(--box-text) !important;
    background: var(--box-bg) !important;
    border: 1px solid var(--box-border) !important;
    outline: 0;
    box-shadow: none;
}

.admin-technique-form input:not([type="checkbox"]):not([type="radio"]):focus,
.admin-technique-form select:focus,
.admin-technique-form textarea:focus {
    border-color: var(--title-text) !important;
    box-shadow: 0 0 0 1px var(--title-text);
}

.admin-technique-form input[type="file"] {
    color: var(--box-text) !important;
    background: var(--box-bg) !important;
}

.admin-technique-form input[type="file"]::file-selector-button {
    color: var(--button-text) !important;
    background: var(--button-bg) !important;
    border-color: var(--box-border) !important;
}

.admin-technique-form .admin-planet-checkbox {
    align-self: end;
    min-height: 34px !important;
    margin: 0;
}

.admin-technique-form .admin-technique-editor-field {
    display: block !important;
    grid-column: 1 / -1;
    width: 100% !important;
    min-width: 0;
    height: auto !important;
    margin: 0;
}

.admin-technique-form .admin-technique-editor-field > span {
    display: block;
    width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 0 6px;
    line-height: 20px;
}

.admin-technique-form .admin-technique-editor-field > textarea {
    display: block;
    width: 100% !important;
    max-width: 100% !important;
    height: 118px !important;
    min-height: 118px !important;
}

.admin-technique-form .admin-technique-description > textarea {
    height: 150px !important;
    min-height: 150px !important;
}

.admin-technique-form .admin-technique-editor-field .sceditor-container {
    display: flex !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 166px !important;
    min-height: 166px !important;
    margin: 0 !important;
    overflow: hidden !important;
    border-radius: 0 !important;
}

.admin-technique-form .admin-technique-description .sceditor-container {
    height: 198px !important;
    min-height: 198px !important;
}

.admin-technique-form .admin-technique-editor-field .sceditor-container iframe,
.admin-technique-form .admin-technique-editor-field .sceditor-container textarea {
    flex: 1 1 auto !important;
    width: calc(100% - 12px) !important;
    max-width: calc(100% - 12px) !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 6px !important;
    padding: 0 !important;
}

.admin-technique-form .admin-technique-editor-field div.sceditor-toolbar {
    flex: 0 0 auto;
    width: 100% !important;
    height: auto !important;
    min-height: 38px;
    padding: 4px 5px !important;
    overflow: visible;
}

.admin-technique-form .admin-technique-editor-field div.sceditor-group {
    height: 28px !important;
    margin: 1px 5px 1px 0 !important;
    padding: 1px !important;
}

.admin-technique-form .admin-technique-texts {
    gap: 12px !important;
}

.admin-technique-form .admin-technique-help {
    margin-bottom: 0;
}

.admin-technique-form .admin-planet-actions {
    margin-top: 0;
}

/* Technik-Admin: getrennte Editoren, kompakter Aufbau, Bildvorschau und Farbauswahl */
.admin-technique-form .admin-technique-texts {
    display: block !important;
    padding: 14px !important;
}

.admin-technique-form .admin-technique-texts .admin-technique-help {
    display: block;
    width: 100%;
    margin: 0 0 12px !important;
    padding: 10px 12px;
    border: 1px solid var(--box-border);
    background: var(--content-bg);
}

.admin-technique-form .admin-technique-texts .admin-technique-editor-field {
    display: block !important;
    width: 100% !important;
    margin: 0 0 12px !important;
    clear: both;
}

.admin-technique-form .admin-technique-texts .admin-technique-editor-field:last-child {
    margin-bottom: 0 !important;
}

.admin-technique-form .admin-technique-texts .sceditor-container {
    display: block !important;
    position: relative !important;
    width: 100% !important;
    height: 156px !important;
    min-height: 156px !important;
    margin: 0 !important;
    clear: both;
}

.admin-technique-form .admin-technique-texts .sceditor-container iframe,
.admin-technique-form .admin-technique-texts .sceditor-container textarea {
    display: block !important;
    width: calc(100% - 12px) !important;
    height: 105px !important;
    min-height: 105px !important;
    margin: 6px !important;
}

.admin-technique-form .admin-technique-color-control {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 34px;
}

.admin-technique-form input[type="color"] {
    width: 58px !important;
    min-width: 58px;
    height: 34px;
    padding: 2px !important;
    cursor: pointer;
}

.admin-technique-form .admin-technique-color-control code {
    flex: 1 1 auto;
    padding: 8px 10px;
    border: 1px solid var(--box-border);
    background: var(--box-bg);
    color: var(--box-text);
}

.admin-technique-image-field > span {
    display: block;
    margin-bottom: 6px;
    font-weight: 700;
}

.admin-technique-image-row {
    display: grid;
    grid-template-columns: minmax(260px, 1fr) 180px;
    gap: 12px;
    align-items: stretch;
}

.admin-technique-image-row .admin-planet-upload-field {
    display: flex !important;
    align-items: center;
    min-height: 110px;
    padding: 12px;
    border: 1px solid var(--box-border);
    background: var(--content-bg);
}

.admin-technique-image-preview {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 110px;
    max-height: 150px;
    padding: 8px;
    overflow: hidden;
    border: 1px solid var(--box-border);
    background: var(--box-bg);
}

.admin-technique-image-preview img {
    display: block;
    max-width: 100%;
    max-height: 132px;
    object-fit: contain;
}

.admin-technique-image-preview.is-empty span {
    color: var(--text-muted, #9caeb3);
    text-align: center;
}

.combat-technique-name {
    font-weight: 700;
}

@media (max-width: 720px) {
    .admin-technique-image-row {
        grid-template-columns: 1fr;
    }
}

/* Technik-Admin: finaler Layout-Reset gegen alte Admin-Positionierungen */
.admin-technique-form fieldset.admin-technique-section {
    display: grid !important;
    height: auto !important;
    min-height: 0 !important;
    grid-auto-flow: row !important;
    grid-auto-rows: max-content !important;
    align-content: start !important;
}
.admin-technique-form fieldset.admin-technique-section > label,
.admin-technique-form fieldset.admin-technique-section > .admin-technique-image-field {
    position: relative !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    float: none !important;
    transform: none !important;
    clear: none !important;
}
.admin-technique-form fieldset.admin-technique-section > label > span,
.admin-technique-form .admin-technique-image-field > span,
.admin-technique-form .admin-technique-editor-field > span {
    position: static !important;
    inset: auto !important;
    float: none !important;
    transform: none !important;
    width: auto !important;
    height: auto !important;
    min-height: 20px !important;
    margin: 0 0 6px !important;
    padding: 0 !important;
    overflow: visible !important;
    line-height: 20px !important;
    white-space: normal !important;
    text-overflow: clip !important;
}
.admin-technique-form fieldset.admin-technique-section .admin-planet-checkbox {
    align-self: start !important;
    justify-self: stretch !important;
    padding-top: 6px !important;
}
.admin-technique-form .admin-technique-description {
    grid-column: 1 / -1 !important;
    margin: 0 !important;
}
.admin-technique-form .admin-technique-description .sceditor-container {
    position: relative !important;
    inset: auto !important;
    float: none !important;
    clear: both !important;
    display: block !important;
    height: 180px !important;
    min-height: 180px !important;
    margin: 0 !important;
}
.admin-technique-form .admin-technique-description .sceditor-container iframe,
.admin-technique-form .admin-technique-description .sceditor-container textarea {
    height: 128px !important;
    min-height: 128px !important;
}
.admin-technique-form .admin-technique-texts .admin-technique-editor-field {
    position: relative !important;
    inset: auto !important;
    float: none !important;
    clear: both !important;
    height: auto !important;
    min-height: 0 !important;
}
.admin-technique-form .admin-technique-texts .admin-technique-editor-field + .admin-technique-editor-field {
    margin-top: 10px !important;
}
.admin-technique-form .admin-technique-texts .sceditor-container,
.admin-technique-form .admin-technique-texts .sceditor-container iframe,
.admin-technique-form .admin-technique-texts .sceditor-container textarea,
.admin-technique-form .admin-technique-texts .sceditor-toolbar {
    position: static !important;
    inset: auto !important;
    float: none !important;
    transform: none !important;
}

/* Technikverwaltung v2: eigenständiges, kollisionsfreies Layout */
.admin-technique-form-v2{display:flex;flex-direction:column;gap:14px;margin-top:12px}
.admin-technique-form-v2 *{box-sizing:border-box}
.admin-technique-head{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:14px 16px;border:1px solid rgba(0,229,255,.35);background:rgba(0,15,18,.72)}
.admin-technique-head h2{margin:0 0 4px;color:#25eaff;font-size:20px}.admin-technique-head p{margin:0;color:#b6d3d8}
.admin-technique-active,.admin-technique-toggle-row label,.admin-technique-race{display:flex!important;position:static!important;align-items:center;gap:9px;width:auto!important;margin:0!important}
.admin-technique-card{display:block!important;position:static!important;min-height:0!important;height:auto!important;margin:0!important;padding:16px!important;border:1px solid rgba(0,229,255,.35)!important;background:rgba(0,10,13,.62)}
.admin-technique-card[hidden]{display:none!important}.admin-technique-card legend{position:static!important;width:auto!important;margin:0 0 2px;padding:0 8px;color:#25eaff;font-weight:800;text-transform:uppercase}
.admin-technique-grid,.admin-technique-config-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:6px}
.admin-technique-form-v2 label{position:static!important;top:auto!important;left:auto!important;right:auto!important;bottom:auto!important;display:flex;flex-direction:column;gap:6px;min-width:0;margin:0}
.admin-technique-form-v2 label>span:first-child{position:static!important;display:block!important;margin:0!important;color:#d7f4f7;font-weight:700;line-height:1.25}
.admin-technique-form-v2 input:not([type=checkbox]):not([type=color]):not([type=file]),.admin-technique-form-v2 select,.admin-technique-form-v2 textarea{width:100%!important;max-width:100%!important;min-width:0!important;border:1px solid #07879b!important;background:#061014!important;color:#fff!important;padding:9px 10px!important;line-height:1.25!important;box-shadow:none!important}
.admin-technique-form-v2 input:focus,.admin-technique-form-v2 select:focus,.admin-technique-form-v2 textarea:focus{outline:none!important;border-color:#25eaff!important;box-shadow:0 0 0 2px rgba(37,234,255,.14)!important}
.admin-technique-suffix{display:flex;align-items:stretch}.admin-technique-suffix input{border-right:0!important}.admin-technique-suffix b{display:flex;align-items:center;padding:0 10px;border:1px solid #07879b;background:#0a2930;color:#8feef7;white-space:nowrap}
.admin-technique-color-control{display:flex;align-items:center;gap:10px;height:38px}.admin-technique-color-control input[type=color]{width:54px;height:38px;padding:3px;border:1px solid #07879b;background:#061014}.admin-technique-color-control code{color:#d7f4f7}
.admin-technique-media-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.admin-technique-image-block{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:14px;align-items:end;margin-top:14px}.admin-technique-image-preview{height:110px;border:1px solid #07879b;background:#061014;display:flex;align-items:center;justify-content:center;overflow:hidden}.admin-technique-image-preview img{max-width:100%;max-height:100%;object-fit:contain}.admin-technique-image-preview span{color:#71949a}
.admin-technique-note{margin:0 0 10px;color:#a9cdd2}.admin-technique-races{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.admin-technique-race,.admin-technique-toggle-row label{flex-direction:row!important;padding:9px 10px;border:1px solid rgba(0,229,255,.25);background:#061014}.admin-technique-race span,.admin-technique-toggle-row span{position:static!important;margin:0!important}
.admin-technique-toggle-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.admin-technique-multihit-values{grid-template-columns:repeat(2,minmax(0,220px));margin-top:12px}
.admin-technique-editor-field{display:block!important;margin-top:14px!important}.admin-technique-editor-field>span{margin-bottom:6px!important}.admin-technique-form-v2 .sceditor-container{position:static!important;width:100%!important;height:auto!important;min-height:170px!important;margin:0!important}.admin-technique-form-v2 .sceditor-toolbar{position:static!important;white-space:normal!important}.admin-technique-form-v2 .sceditor-container iframe,.admin-technique-form-v2 .sceditor-container textarea{min-height:125px!important;height:125px!important}
.admin-technique-texts .admin-technique-editor-field{margin-top:10px!important}.admin-technique-texts .sceditor-container{min-height:145px!important}.admin-technique-texts .sceditor-container iframe,.admin-technique-texts .sceditor-container textarea{min-height:100px!important;height:100px!important}
.admin-technique-actions{display:flex;justify-content:flex-end;gap:10px}.admin-technique-actions button,.admin-technique-actions a{display:inline-flex;align-items:center;justify-content:center;min-width:160px;padding:10px 18px;border:1px solid #25eaff;background:linear-gradient(#35e7f6,#0792ae);color:#fff;font-weight:800;text-decoration:none}.admin-technique-actions a{background:#07191e}
@media(max-width:900px){.admin-technique-grid,.admin-technique-config-grid,.admin-technique-races,.admin-technique-toggle-row{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-technique-media-grid,.admin-technique-image-block{grid-template-columns:1fr}}
@media(max-width:600px){.admin-technique-grid,.admin-technique-config-grid,.admin-technique-races,.admin-technique-toggle-row{grid-template-columns:1fr}.admin-technique-head{align-items:flex-start;flex-direction:column}.admin-technique-actions{flex-direction:column}.admin-technique-actions>*{width:100%}}


/* Technikverwaltung: Live-Switch ohne Eingriff in die Farben des BBCode-Editors */
.admin-technique-form-v2 [hidden]{display:none!important}
.admin-technique-form-v2 [data-effect-fields][hidden],
.admin-technique-form-v2 [data-requirement-fields][hidden],
.admin-technique-form-v2 [data-basic-categories][hidden],
.admin-technique-form-v2 [data-text-categories][hidden]{display:none!important}
.admin-technique-form-v2 .admin-technique-config-grid:has(> label:not([hidden])){margin-top:12px}
.admin-technique-form-v2 .admin-technique-texts .admin-technique-editor-field:not([hidden])+ .admin-technique-editor-field:not([hidden]){margin-top:10px!important}

/* Technikverwaltung: Upload und BBCode-Editor im bestehenden Admin-Stil */
.admin-technique-form-v2 input[type="file"]{
    width:100%!important;
    min-height:38px;
    padding:0!important;
    border:1px solid #07879b!important;
    background:#061014!important;
    color:#d7f4f7!important;
    font:inherit;
    cursor:pointer;
}
.admin-technique-form-v2 input[type="file"]::file-selector-button{
    min-height:36px;
    margin:0 10px 0 0;
    padding:0 16px;
    border:0;
    border-right:1px solid #07879b;
    background:linear-gradient(#35e7f6,#0792ae);
    color:#fff;
    font:inherit;
    font-weight:800;
    cursor:pointer;
}
.admin-technique-form-v2 input[type="file"]:hover::file-selector-button{filter:brightness(1.08)}
.admin-technique-form-v2 .admin-technique-editor-field .sceditor-container{
    width:100%!important;
    height:auto!important;
    min-height:170px!important;
    border:1px solid #07879b!important;
    border-radius:0!important;
    font:inherit!important;
    overflow:hidden!important;
}
.admin-technique-form-v2 .admin-technique-editor-field div.sceditor-toolbar{
    min-height:42px!important;
    height:auto!important;
    padding:5px 6px!important;
    border-radius:0!important;
    border-bottom:1px solid #07879b!important;
}
.admin-technique-form-v2 .admin-technique-editor-field div.sceditor-group{
    min-height:28px!important;
    height:auto!important;
    margin:1px 6px 1px 0!important;
    padding:2px!important;
    border-radius:0!important;
}
.admin-technique-form-v2 .admin-technique-editor-field .sceditor-button{
    width:20px!important;height:20px!important;padding:4px!important;border-radius:0!important;
}
.admin-technique-form-v2 .admin-technique-editor-field .sceditor-button div,
.admin-technique-form-v2 .admin-technique-editor-field .sceditor-button svg{width:16px!important;height:16px!important}
.admin-technique-form-v2 .admin-technique-editor-field .sceditor-button div,
.admin-technique-form-v2 .admin-technique-editor-field div.sceditor-grip{
    background-image:url("/static?file=vendor/sceditor/minified/themes/famfamfam.png")!important;
}
.admin-technique-form-v2 .admin-technique-editor-field .sceditor-container iframe,
.admin-technique-form-v2 .admin-technique-editor-field .sceditor-container textarea{
    width:calc(100% - 16px)!important;
    min-height:125px!important;
    height:125px!important;
    margin:8px!important;
    padding:0!important;
    font:inherit!important;
}
.admin-technique-form-v2 .admin-technique-texts .sceditor-container iframe,
.admin-technique-form-v2 .admin-technique-texts .sceditor-container textarea{min-height:96px!important;height:96px!important}

/* Technik-Kategorien: kompakter Wechsel statt einer endlosen Gesamtliste */
.admin-technique-category-filter{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin:12px 0 16px}.admin-technique-category-filter a{display:flex;align-items:center;justify-content:space-between;min-height:42px;padding:8px 11px;border:1px solid var(--border-color,#0c6671);background:rgba(0,0,0,.18);text-decoration:none}.admin-technique-category-filter a:hover,.admin-technique-category-filter a.is-active{border-color:#23d9ed;background:rgba(17,181,203,.14)}.admin-technique-category-filter strong{color:#eafcff}.admin-technique-category-filter span{display:inline-flex;align-items:center;justify-content:center;min-width:25px;height:25px;padding:0 6px;border:1px solid #167786;color:#55e9f7;background:#061519;font-weight:700}

.admin-technique-source-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.admin-technique-source-grid>div{min-width:0;padding:10px 12px;border:1px solid rgba(0,229,255,.24);border-radius:8px;background:rgba(0,0,0,.18)}.admin-technique-source-grid span{display:block;margin-bottom:4px;font-size:12px;opacity:.72}.admin-technique-source-grid strong{display:block;overflow-wrap:anywhere;font-size:13px}@media(max-width:900px){.admin-technique-source-grid{grid-template-columns:1fr}}

/* Technik-Verwaltung: aufgeräumte Navigation, Liste und Formularstruktur */
.admin-technique-page{overflow:visible}
.admin-technique-page>h1{margin-bottom:6px}
.admin-technique-intro{margin:0 0 16px;color:#a9cbd0;line-height:1.55}
.admin-technique-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0 18px}
.admin-technique-nav-item{display:flex;align-items:center;gap:12px;min-width:0;padding:12px 14px;border:1px solid rgba(37,234,255,.24);background:linear-gradient(180deg,rgba(7,29,35,.92),rgba(2,14,18,.92));color:#dffbff;text-decoration:none;transition:.18s ease}
.admin-technique-nav-item:hover{border-color:rgba(37,234,255,.7);transform:translateY(-1px)}
.admin-technique-nav-item.is-active{border-color:#25eaff;background:linear-gradient(180deg,rgba(9,70,80,.95),rgba(4,31,37,.95));box-shadow:inset 0 0 0 1px rgba(37,234,255,.16),0 0 18px rgba(37,234,255,.08)}
.admin-technique-nav-item.is-static{cursor:default}
.admin-technique-nav-icon{display:flex;align-items:center;justify-content:center;flex:0 0 36px;width:36px;height:36px;border:1px solid rgba(37,234,255,.35);background:#061519;color:#55e9f7;font-size:20px;font-weight:800}
.admin-technique-nav-item>span:last-child{display:flex;min-width:0;flex-direction:column;gap:2px}.admin-technique-nav-item strong{font-size:14px}.admin-technique-nav-item small{overflow:hidden;color:#8fb6bc;text-overflow:ellipsis;white-space:nowrap}
.admin-technique-list-panel{padding:16px;border:1px solid rgba(37,234,255,.28);background:rgba(0,10,13,.58)}
.admin-technique-list-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}.admin-technique-list-head h2{margin:0 0 3px;color:#e9fcff;font-size:20px}.admin-technique-list-head p{margin:0;color:#91b7bd}.admin-technique-total{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:5px 10px;border:1px solid #167786;background:#061519;color:#55e9f7;font-weight:800;white-space:nowrap}
.admin-technique-category-filter{grid-template-columns:repeat(auto-fit,minmax(128px,1fr));margin:0 0 14px}.admin-technique-category-filter a{border-radius:0;min-height:40px}.admin-technique-category-filter a.is-active{box-shadow:inset 3px 0 0 #25eaff}
.admin-technique-list{display:flex;flex-direction:column;gap:8px}
.admin-technique-list-item{display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 12px;border:1px solid rgba(37,234,255,.18);background:rgba(2,18,22,.76);transition:.16s ease}
.admin-technique-list-item:hover{border-color:rgba(37,234,255,.48);background:rgba(5,29,35,.9)}
.admin-technique-list-preview{display:flex;align-items:center;justify-content:center;width:54px;height:54px;overflow:hidden;border:1px solid rgba(37,234,255,.28);background:#061014;color:#55e9f7;font-size:20px;font-weight:900}.admin-technique-list-preview img{width:100%;height:100%;object-fit:contain}.admin-technique-list-main{min-width:0}.admin-technique-list-title{display:flex;align-items:center;gap:9px;min-width:0}.admin-technique-list-title strong{overflow:hidden;color:#ecfdff;font-size:15px;text-overflow:ellipsis;white-space:nowrap}.admin-technique-list-title span{color:#6e969d;font-size:12px}.admin-technique-list-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.admin-technique-list-meta span{padding:3px 7px;border:1px solid rgba(37,234,255,.17);background:rgba(0,0,0,.2);color:#a9cbd0;font-size:12px}
.admin-technique-list-actions{display:flex;align-items:center;gap:7px}.admin-technique-list-actions form{margin:0}.admin-technique-list-actions a,.admin-technique-list-actions button{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:6px 11px;border:1px solid #167786;background:#07191e;color:#dffbff;font:inherit;font-weight:700;text-decoration:none;cursor:pointer}.admin-technique-list-actions .is-edit:hover{border-color:#25eaff;background:#0a3139}.admin-technique-list-actions .is-delete{border-color:#873f49;color:#ffc8cf}.admin-technique-list-actions .is-delete:hover{border-color:#e56a78;background:#3a151b}
.admin-technique-form-v2{gap:12px}.admin-technique-head{position:sticky;top:8px;z-index:4;border-color:rgba(37,234,255,.5);backdrop-filter:blur(8px)}
.admin-technique-card{padding:14px!important}.admin-technique-card legend{font-size:13px;letter-spacing:.04em}.admin-technique-grid,.admin-technique-config-grid{gap:10px}.admin-technique-form-v2 label>span:first-child{font-size:13px}.admin-technique-form-v2 input:not([type=checkbox]):not([type=color]):not([type=file]),.admin-technique-form-v2 select,.admin-technique-form-v2 textarea{min-height:38px;padding:8px 9px!important}
.admin-technique-races{grid-template-columns:repeat(5,minmax(0,1fr))}.admin-technique-race{min-height:38px;padding:7px 9px}.admin-technique-toggle-row{grid-template-columns:repeat(4,minmax(0,1fr))}.admin-technique-toggle-row label{min-height:38px;padding:7px 9px}
.admin-technique-actions{position:sticky;bottom:0;z-index:5;padding:10px;border:1px solid rgba(37,234,255,.25);background:rgba(1,13,17,.94);backdrop-filter:blur(8px)}
@media(max-width:900px){.admin-technique-nav{grid-template-columns:1fr}.admin-technique-races{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-technique-toggle-row{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-technique-list-item{grid-template-columns:46px minmax(0,1fr)}.admin-technique-list-preview{width:46px;height:46px}.admin-technique-list-actions{grid-column:1/-1;justify-content:flex-end}}
@media(max-width:600px){.admin-technique-list-panel{padding:10px}.admin-technique-list-head{align-items:flex-start;flex-direction:column}.admin-technique-races,.admin-technique-toggle-row{grid-template-columns:1fr}.admin-technique-list-item{grid-template-columns:1fr}.admin-technique-list-preview{display:none}.admin-technique-list-actions{justify-content:stretch}.admin-technique-list-actions a,.admin-technique-list-actions form,.admin-technique-list-actions button{width:100%}.admin-technique-actions{position:static}}

/* Technik- und Kampf-Audit: eigenständiges, vollständig gekapseltes Layout */
.admin-technique-audit-page,
.admin-combat-audit-page{overflow:visible;padding-bottom:24px}
.admin-technique-audit-page>.admin-planet-tabs,
.admin-combat-audit-page>.admin-planet-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;width:auto;height:auto;min-height:42px;margin:12px 0 16px;padding:0;background:none;box-sizing:border-box}
.admin-technique-audit-page>.admin-planet-tabs a,
.admin-technique-audit-page>.admin-planet-tabs span,
.admin-combat-audit-page>.admin-planet-tabs a,
.admin-combat-audit-page>.admin-planet-tabs span{display:flex;align-items:center;justify-content:center;width:100%;min-width:0;min-height:42px;padding:8px 10px;border:1px solid rgba(37,234,255,.25);background:linear-gradient(180deg,rgba(7,29,35,.92),rgba(2,14,18,.92));color:#dffbff;text-align:center;text-decoration:none;box-sizing:border-box}
.admin-technique-audit-page>.admin-planet-tabs a:hover,
.admin-combat-audit-page>.admin-planet-tabs a:hover,
.admin-technique-audit-page>.admin-planet-tabs .is-active,
.admin-combat-audit-page>.admin-planet-tabs .is-active{border-color:#25eaff;background:linear-gradient(180deg,rgba(9,70,80,.95),rgba(4,31,37,.95));box-shadow:inset 0 0 0 1px rgba(37,234,255,.14)}
.technique-audit-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 14px;padding:12px 14px;border:1px solid rgba(37,234,255,.3);background:rgba(0,10,13,.58)}
.technique-audit-actions span{min-width:0;color:#a9cbd0;overflow-wrap:anywhere}
.technique-audit-export,.technique-audit-edit{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:7px 16px;border:1px solid #18a9bc;background:linear-gradient(180deg,#22c9dc,#08788b);color:#fff!important;font-weight:800;text-decoration:none;text-shadow:0 1px #04434c;box-sizing:border-box;cursor:pointer}
.technique-audit-export:hover,.technique-audit-edit:hover{filter:brightness(1.08)}
.technique-audit-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:0 0 14px}
.technique-audit-summary article{min-width:0;padding:12px;border:1px solid rgba(37,234,255,.28);background:rgba(0,10,13,.58);text-align:center;box-sizing:border-box}
.technique-audit-summary strong{display:block;color:#22e7ff;font-size:25px;line-height:1.1}.technique-audit-summary span{display:block;margin-top:4px;overflow-wrap:anywhere}.technique-audit-summary .is-ok strong{color:#71e59a}.technique-audit-summary .is-error strong,.technique-audit-summary .is-missing strong{color:#ff7b7b}.technique-audit-summary .is-warning strong{color:#ffd36a}
.technique-audit-filter{display:grid;grid-template-columns:220px minmax(240px,1fr) 140px;align-items:end;gap:10px;margin:0 0 14px;padding:12px;border:1px solid rgba(37,234,255,.28);background:rgba(0,10,13,.45);box-sizing:border-box}
.technique-audit-filter label{display:grid;min-width:0;gap:6px}.technique-audit-filter label span{font-weight:700}.technique-audit-filter input,.technique-audit-filter select,.technique-audit-filter button{width:100%;min-width:0;min-height:38px;box-sizing:border-box}.technique-audit-filter button{cursor:pointer}
.technique-audit-list{display:grid;gap:9px;min-width:0}.technique-audit-item{min-width:0;border:1px solid rgba(37,234,255,.28);background:rgba(0,10,13,.48)}
.technique-audit-item>summary{display:grid;grid-template-columns:100px minmax(200px,1fr) minmax(120px,170px) 130px;align-items:center;gap:10px;min-width:0;padding:12px 14px;cursor:pointer;list-style:none;box-sizing:border-box}.technique-audit-item>summary::-webkit-details-marker{display:none}.technique-audit-item>summary strong,.technique-audit-item>summary em,.technique-audit-item>summary b{min-width:0;overflow-wrap:anywhere}.technique-audit-item>summary strong{color:#e8fbff}.technique-audit-item>summary em{color:#9fc5ca;font-style:normal}.technique-audit-item>summary b{text-align:right;font-weight:700}
.technique-audit-status{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:4px 8px;border:1px solid currentColor;font-weight:800;box-sizing:border-box}.technique-audit-item.is-ok .technique-audit-status{color:#71e59a}.technique-audit-item.is-error .technique-audit-status,.technique-audit-item.is-missing .technique-audit-status{color:#ff7b7b}
.technique-audit-detail{min-width:0;padding:14px;border-top:1px solid rgba(37,234,255,.2);box-sizing:border-box}.technique-audit-diff-head,.technique-audit-diff{display:grid;grid-template-columns:minmax(130px,.65fr) minmax(0,1fr) minmax(0,1fr);gap:8px;align-items:start}.technique-audit-diff-head{padding:0 8px 7px;color:#23def5;font-weight:800}.technique-audit-diff{padding:8px;border-top:1px solid rgba(37,234,255,.15)}.technique-audit-diff code{display:block;min-width:0;padding:7px;border:1px solid rgba(37,234,255,.18);background:#071215;color:#d8faff;white-space:pre-wrap;overflow-wrap:anywhere;box-sizing:border-box}
.technique-audit-source{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:12px}.technique-audit-source span{min-width:0;padding:9px;border:1px solid rgba(37,234,255,.22);overflow-wrap:anywhere}.technique-audit-source small{display:block;margin-bottom:5px;color:#23def5}.technique-audit-edit{margin-top:12px}
.technique-audit-mechanisms,.combat-audit-mechanism-tests{margin-top:18px;padding:14px;border:1px solid rgba(37,234,255,.28);background:rgba(0,10,13,.4);box-sizing:border-box}.technique-audit-mechanisms h2,.combat-audit-mechanism-tests h2{margin-top:0;color:#25e6ff}.technique-audit-mechanism-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.technique-audit-mechanism-grid article{display:grid;min-width:0;gap:5px;padding:10px;border:1px solid rgba(37,234,255,.24);background:rgba(0,0,0,.18)}.technique-audit-mechanism-grid article.is-unknown{border-color:#d45c5c}.technique-audit-mechanism-grid article strong{color:#25e6ff}.technique-audit-mechanism-grid article.is-unknown strong{color:#ff7b7b}.technique-audit-mechanism-grid small{opacity:.78;overflow-wrap:anywhere}
.admin-combat-audit-page .combat-audit-verdict{display:flex;flex-direction:column;gap:4px;margin:14px 0;padding:14px 16px;border:1px solid rgba(255,255,255,.14);background:rgba(0,10,13,.55)}.admin-combat-audit-page .combat-audit-verdict.is-ok{border-color:rgba(76,175,80,.55)}.admin-combat-audit-page .combat-audit-verdict.is-error{border-color:rgba(244,67,54,.65)}.admin-combat-audit-page .combat-audit-verdict strong{font-size:17px}
.combat-audit-capabilities{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0}.combat-audit-capabilities article{display:flex;min-width:0;flex-direction:column;gap:3px;padding:12px;border:1px solid rgba(255,255,255,.12);background:rgba(0,10,13,.48)}.combat-audit-capabilities article.is-ok{border-color:rgba(76,175,80,.45)}.combat-audit-capabilities article.is-error{border-color:rgba(244,67,54,.55)}.combat-audit-capabilities small{overflow-wrap:anywhere}
.combat-audit-test-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.combat-audit-test-grid article{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:9px;min-width:0;padding:10px 12px;border:1px solid rgba(255,255,255,.12);background:rgba(0,10,13,.45);box-sizing:border-box}.combat-audit-test-grid article.is-ok{border-color:rgba(76,175,80,.4)}.combat-audit-test-grid article.is-error{border-color:rgba(244,67,54,.55)}.combat-audit-test-grid article strong,.combat-audit-test-grid article small{min-width:0;overflow-wrap:anywhere}.combat-audit-test-grid article p{grid-column:1/-1;margin:0;color:#ffb4ad;overflow-wrap:anywhere}.combat-audit-test-status{display:inline-flex;align-items:center;justify-content:center;min-width:62px;padding:4px 7px;border:1px solid rgba(255,255,255,.18);font-size:11px;font-weight:800;background:rgba(255,255,255,.08)}
.combat-audit-runtime-meta,.combat-audit-preview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:10px 0}.combat-audit-runtime-meta span,.combat-audit-preview span{display:flex;min-width:0;flex-direction:column;gap:3px;padding:8px 10px;border:1px solid rgba(255,255,255,.1);background:rgba(0,10,13,.45);overflow-wrap:anywhere}.combat-audit-runtime-meta small,.combat-audit-preview small{opacity:.72}.combat-audit-errors p{margin:6px 0;padding:8px 10px;border-left:3px solid #e5534b;background:rgba(229,83,75,.1);overflow-wrap:anywhere}.admin-combat-audit-page pre{max-width:100%;padding:10px;border:1px solid rgba(255,255,255,.1);background:rgba(0,0,0,.25);white-space:pre-wrap;overflow-wrap:anywhere;box-sizing:border-box}.combat-audit-export-bottom{display:flex;flex-direction:column;align-items:center;gap:7px;margin-top:20px;padding-top:16px;border-top:1px solid rgba(255,255,255,.12);text-align:center}.combat-audit-export-bottom span{max-width:760px;color:#a9cbd0}
@media(max-width:900px){.admin-technique-audit-page>.admin-planet-tabs,.admin-combat-audit-page>.admin-planet-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.technique-audit-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.technique-audit-filter{grid-template-columns:1fr}.technique-audit-item>summary{grid-template-columns:90px minmax(0,1fr)}.technique-audit-item>summary em,.technique-audit-item>summary b{text-align:left}.technique-audit-diff-head{display:none}.technique-audit-diff{grid-template-columns:1fr}.technique-audit-source,.technique-audit-mechanism-grid,.combat-audit-capabilities,.combat-audit-test-grid,.combat-audit-runtime-meta,.combat-audit-preview{grid-template-columns:1fr}}
@media(max-width:560px){.admin-technique-audit-page>.admin-planet-tabs,.admin-combat-audit-page>.admin-planet-tabs{grid-template-columns:1fr}.technique-audit-summary{grid-template-columns:1fr}.technique-audit-actions{align-items:stretch;flex-direction:column}.technique-audit-export{width:100%}.technique-audit-item>summary{grid-template-columns:1fr}.technique-audit-item>summary b{display:none}}

/* =========================================================
   Technik-/Kampf-Audit – isolierter Stabilitätsfix v2
   ========================================================= */
.admin-technique-audit-page,
.admin-combat-audit-page {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
    box-sizing: border-box !important;
}

.admin-technique-audit-page *,
.admin-combat-audit-page * {
    box-sizing: border-box;
    min-width: 0;
}

.admin-technique-audit-page > h1,
.admin-combat-audit-page > h1,
.admin-technique-audit-page h2,
.admin-combat-audit-page h2 {
    position: static !important;
    float: none !important;
    width: auto !important;
    height: auto !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    line-height: 1.25 !important;
}

.admin-technique-audit-page .admin-technique-intro,
.admin-combat-audit-page .admin-technique-intro {
    position: static !important;
    width: auto !important;
    max-width: none !important;
    height: auto !important;
    margin: 8px 0 14px !important;
    padding: 0 !important;
    overflow: visible !important;
    line-height: 1.55 !important;
}

.admin-technique-audit-page > .admin-planet-tabs,
.admin-combat-audit-page > .admin-planet-tabs {
    position: static !important;
    inset: auto !important;
    float: none !important;
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    align-items: stretch !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 12px 0 16px !important;
    padding: 0 !important;
    overflow: visible !important;
}

.admin-technique-audit-page > .admin-planet-tabs > *,
.admin-combat-audit-page > .admin-planet-tabs > * {
    position: static !important;
    inset: auto !important;
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 42px !important;
    margin: 0 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
}

.technique-audit-actions,
.technique-audit-summary,
.technique-audit-filter,
.technique-audit-list,
.technique-audit-mechanisms,
.combat-audit-mechanism-tests,
.combat-audit-capabilities,
.combat-audit-test-grid,
.combat-audit-techniques,
.combat-audit-export-bottom {
    position: static !important;
    inset: auto !important;
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
}

.technique-audit-summary article,
.combat-audit-capabilities article,
.combat-audit-test-grid article,
.technique-audit-mechanism-grid article {
    position: static !important;
    inset: auto !important;
    float: none !important;
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
}

.technique-audit-filter label,
.technique-audit-filter input,
.technique-audit-filter select,
.technique-audit-filter button {
    position: static !important;
    inset: auto !important;
    float: none !important;
    max-width: 100% !important;
    height: auto !important;
}

.technique-audit-filter input,
.technique-audit-filter select,
.technique-audit-filter button {
    min-height: 40px !important;
    margin: 0 !important;
}

.technique-audit-item {
    position: static !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
}

.technique-audit-item > summary {
    position: static !important;
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 52px !important;
    margin: 0 !important;
    overflow: visible !important;
}

.technique-audit-item > summary > * {
    position: static !important;
    inset: auto !important;
    float: none !important;
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
}

.technique-audit-detail,
.technique-audit-diff,
.technique-audit-source,
.combat-audit-runtime-meta,
.combat-audit-preview,
.combat-audit-errors {
    position: static !important;
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
}

.technique-audit-diff > *,
.technique-audit-source > *,
.combat-audit-runtime-meta > *,
.combat-audit-preview > * {
    position: static !important;
    float: none !important;
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
    overflow-wrap: anywhere !important;
}

.technique-audit-diff code,
.admin-combat-audit-page pre {
    max-width: 100% !important;
    overflow-x: auto !important;
    overflow-y: visible !important;
    white-space: pre-wrap !important;
    word-break: break-word !important;
}

.combat-audit-verdict {
    position: static !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
}

.combat-audit-test-grid article {
    align-content: start !important;
}

.combat-audit-test-grid article strong,
.combat-audit-test-grid article small,
.combat-audit-test-grid article p {
    position: static !important;
    width: auto !important;
    height: auto !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    overflow-wrap: anywhere !important;
}

.technique-audit-export,
.technique-audit-edit {
    position: static !important;
    float: none !important;
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 38px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    white-space: normal !important;
    text-align: center !important;
}

@media (max-width: 980px) {
    .admin-technique-audit-page > .admin-planet-tabs,
    .admin-combat-audit-page > .admin-planet-tabs {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .technique-audit-summary {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .technique-audit-item > summary {
        grid-template-columns: minmax(88px, auto) minmax(0, 1fr) !important;
    }

    .technique-audit-item > summary em,
    .technique-audit-item > summary b {
        grid-column: 2;
        text-align: left !important;
    }
}

@media (max-width: 620px) {
    .admin-technique-audit-page > .admin-planet-tabs,
    .admin-combat-audit-page > .admin-planet-tabs,
    .technique-audit-summary,
    .combat-audit-capabilities,
    .combat-audit-test-grid,
    .technique-audit-mechanism-grid {
        grid-template-columns: 1fr !important;
    }

    .technique-audit-actions {
        align-items: stretch !important;
        flex-direction: column !important;
    }

    .technique-audit-export,
    .technique-audit-edit {
        width: 100% !important;
    }

    .technique-audit-item > summary {
        grid-template-columns: 1fr !important;
        gap: 5px !important;
    }

    .technique-audit-item > summary em,
    .technique-audit-item > summary b {
        grid-column: auto;
        display: block !important;
    }
}

/* === Admin combat audit: stable source coverage layout v3 === */
.admin-combat-audit-page .combat-audit-coverage-grid{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
    width:100% !important;
    margin:12px 0 0 !important;
    padding:0 !important;
    align-items:stretch !important;
    box-sizing:border-box !important;
}
.admin-combat-audit-page .combat-audit-coverage-card{
    display:flex !important;
    flex-direction:column !important;
    min-width:0 !important;
    min-height:132px !important;
    height:auto !important;
    margin:0 !important;
    padding:12px !important;
    border:1px solid rgba(255,255,255,.14) !important;
    background:rgba(0,10,13,.48) !important;
    box-sizing:border-box !important;
    writing-mode:horizontal-tb !important;
    text-orientation:mixed !important;
    overflow:visible !important;
}
.admin-combat-audit-page .combat-audit-coverage-card.is-ok{border-color:rgba(76,175,80,.48) !important}
.admin-combat-audit-page .combat-audit-coverage-card.is-error{border-color:rgba(244,67,54,.62) !important}
.admin-combat-audit-page .combat-audit-coverage-card>header{
    display:grid !important;
    grid-template-columns:minmax(116px,42%) minmax(0,1fr) !important;
    align-items:center !important;
    gap:10px !important;
    width:100% !important;
    min-width:0 !important;
    margin:0 0 10px !important;
    padding:0 !important;
    background:none !important;
    border:0 !important;
    box-sizing:border-box !important;
}
.admin-combat-audit-page .combat-audit-coverage-card>header .combat-audit-test-status{
    display:flex !important;
    width:100% !important;
    min-width:0 !important;
    min-height:28px !important;
    margin:0 !important;
    padding:4px 8px !important;
    white-space:nowrap !important;
    writing-mode:horizontal-tb !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
    box-sizing:border-box !important;
}
.admin-combat-audit-page .combat-audit-coverage-card>header strong{
    display:block !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
    color:#e8fbff !important;
    font-size:14px !important;
    line-height:1.25 !important;
    white-space:normal !important;
    writing-mode:horizontal-tb !important;
    text-orientation:mixed !important;
    word-break:normal !important;
    overflow-wrap:anywhere !important;
}
.admin-combat-audit-page .combat-audit-coverage-card>p{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    margin:0 0 9px !important;
    padding:8px 10px !important;
    color:#ffb4ad !important;
    border-left:3px solid #e5534b !important;
    background:rgba(229,83,75,.08) !important;
    white-space:normal !important;
    writing-mode:horizontal-tb !important;
    word-break:normal !important;
    overflow-wrap:anywhere !important;
    box-sizing:border-box !important;
}
.admin-combat-audit-page .combat-audit-coverage-sources{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    margin-top:auto !important;
    padding-top:2px !important;
    writing-mode:horizontal-tb !important;
}
.admin-combat-audit-page .combat-audit-coverage-sources small{
    display:block !important;
    margin:0 0 5px !important;
    color:#7fd9e5 !important;
    font-weight:700 !important;
    writing-mode:horizontal-tb !important;
}
.admin-combat-audit-page .combat-audit-coverage-sources ul{
    display:grid !important;
    gap:3px !important;
    width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 0 0 18px !important;
    box-sizing:border-box !important;
}
.admin-combat-audit-page .combat-audit-coverage-sources li{
    min-width:0 !important;
    line-height:1.35 !important;
    white-space:normal !important;
    writing-mode:horizontal-tb !important;
    word-break:normal !important;
    overflow-wrap:anywhere !important;
}
@media(max-width:760px){
    .admin-combat-audit-page .combat-audit-coverage-grid{grid-template-columns:1fr !important}
    .admin-combat-audit-page .combat-audit-coverage-card>header{grid-template-columns:1fr !important}
    .admin-combat-audit-page .combat-audit-coverage-card>header .combat-audit-test-status{max-width:220px !important}
}

/* NPC-Verwaltung */

.admin-npc-page{min-width:0}.admin-npc-page *{box-sizing:border-box}.admin-npc-page-title{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px;padding:14px 16px;border:1px solid #087180;background:#06191d}.admin-npc-page-title h1{margin:0;color:#18ddf2}.admin-npc-page-title p{margin:5px 0 0;color:#bdebf0}.admin-npc-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 14px;padding:7px;border:1px solid #075d69;background:#061316}.admin-npc-tabs a,.admin-npc-tabs span{display:flex;align-items:center;justify-content:center;min-height:40px;padding:8px 12px;border:1px solid #0a6773;background:#07181b;color:#fff;text-decoration:none;font-weight:700}.admin-npc-tabs .is-active{color:#12dff4;border-color:#12b8ca;background:#092328}.admin-npc-list{display:grid;gap:10px}.admin-npc-card{display:grid;grid-template-columns:86px minmax(0,1fr) auto;gap:14px;align-items:center;padding:12px;border:1px solid #086674;background:#061619}.admin-npc-card>img,.admin-npc-image-empty{width:86px;height:86px;object-fit:contain;border:1px solid #0a7888;background:#041114}.admin-npc-image-empty{display:flex;align-items:center;justify-content:center;color:#5c8b91;font-weight:700}.admin-npc-card-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:18px}.admin-npc-card-stats{display:flex;gap:7px;flex-wrap:wrap;margin:8px 0}.admin-npc-card-stats span{padding:4px 7px;border:1px solid #075d69;background:#071c20;color:#d7faff}.admin-npc-card-main small{color:#8ac7ce}.admin-npc-boss,.admin-npc-active,.admin-npc-inactive{padding:3px 7px;border:1px solid;font-size:12px}.admin-npc-boss{color:#ffbf5a;border-color:#a76b00}.admin-npc-active{color:#7dffaf;border-color:#188348}.admin-npc-inactive{color:#ff8d8d;border-color:#9b3232}.admin-npc-card-actions{display:flex;gap:8px;align-items:center}.admin-npc-card-actions a,.admin-npc-card-actions button,.admin-npc-actions a,.admin-npc-actions button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:9px 16px;border:1px solid #08a5b8;background:linear-gradient(#23d5eb,#0a91a4);color:#fff;text-decoration:none;font-weight:700;cursor:pointer}.admin-npc-card-actions form{margin:0}.admin-npc-card-actions button{border-color:#a63c3c;background:linear-gradient(#c95454,#8c2828)}.admin-npc-form{display:grid;gap:14px}.admin-npc-form-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding:14px 16px;border:1px solid #087180;background:#06191d}.admin-npc-form-head h2{margin:0;color:#16dff2}.admin-npc-form-head p{margin:6px 0 0}.admin-npc-active-toggle,.admin-npc-check{display:flex!important;align-items:center!important;gap:9px!important}.admin-npc-form fieldset{min-width:0;margin:0;padding:16px;border:1px solid #087180;background:#051316}.admin-npc-form legend{padding:0 9px;color:#19ddf1;font-weight:800;text-transform:uppercase}.admin-npc-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.admin-npc-grid label,.admin-npc-behavior-layout label,.admin-npc-location-head label{display:grid;gap:6px;min-width:0}.admin-npc-grid label>span,.admin-npc-behavior-layout label>span,.admin-npc-location-head label>span{font-weight:700;color:#d9fbff}.admin-npc-grid input,.admin-npc-grid select,.admin-npc-grid textarea,.admin-npc-behavior-layout input,.admin-npc-behavior-layout select,.admin-npc-location-head select,.admin-npc-section-toolbar input{width:100%;min-width:0;min-height:40px;padding:9px 10px;border:1px solid #0a9aac;background:#031114;color:#fff}.admin-npc-grid textarea{min-height:105px;resize:vertical}.admin-npc-wide{grid-column:1/-1}.admin-npc-upload{grid-column:span 3}.admin-npc-preview{display:flex;align-items:center;justify-content:center;min-height:112px;border:1px solid #087180;background:#031114;overflow:hidden}.admin-npc-preview img{max-width:100%;max-height:112px;object-fit:contain}.admin-npc-preview.is-empty{color:#8ab4b9}.admin-npc-stat-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.admin-npc-behavior-layout{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:start}.admin-npc-behavior-help{min-height:72px;padding:12px;border:1px solid #087180;background:#071c20;color:#bfeef3;line-height:1.45}.admin-npc-behavior-layout label small{color:#7fb9c0;line-height:1.35}.admin-npc-section-toolbar{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:12px}.admin-npc-section-toolbar>div{display:grid;gap:3px}.admin-npc-section-toolbar small{color:#8bc5cc}.admin-npc-section-toolbar input{max-width:320px}.admin-npc-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-height:430px;overflow:auto;padding-right:4px}.admin-npc-choice{display:flex;align-items:center;gap:9px;min-width:0;padding:10px;border:1px solid #075d69;background:#06171a;cursor:pointer}.admin-npc-choice:hover,.admin-npc-location-card:hover{border-color:#0bb7ca;background:#082126}.admin-npc-choice span,.admin-npc-location-card span{display:grid;min-width:0}.admin-npc-choice small,.admin-npc-location-card small{color:#7ab8bf}.admin-npc-choice[hidden],.admin-npc-location-card[hidden]{display:none!important}.admin-npc-location-picker{display:grid;gap:12px}.admin-npc-location-head{display:grid;grid-template-columns:minmax(260px,420px) 180px;gap:12px;align-items:end}.admin-npc-location-summary{display:grid;place-items:center;min-height:68px;border:1px solid #087180;background:#071c20}.admin-npc-location-summary strong{font-size:24px;color:#13dff3}.admin-npc-location-summary span{font-size:12px;color:#9dd5dc}.admin-npc-location-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.admin-npc-location-card{display:flex;align-items:center;gap:9px;min-width:0;padding:11px;border:1px solid #075d69;background:#06171a;cursor:pointer}.admin-npc-location-empty{padding:18px;border:1px dashed #087180;background:#041114;color:#8ab4b9;text-align:center}.admin-npc-location-empty[hidden]{display:none}.admin-npc-help{margin:0;color:#b9e8ed}.admin-npc-actions{display:flex;justify-content:flex-end;gap:10px;padding:12px;border:1px solid #087180;background:#06191d}.admin-npc-empty{padding:18px;border:1px solid #087180;background:#06191d;text-align:center;color:#9dd5dc}
@media(max-width:1050px){.admin-npc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-npc-upload{grid-column:span 1}.admin-npc-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-npc-behavior-layout{grid-template-columns:1fr 1fr}.admin-npc-behavior-help{grid-column:2}.admin-npc-choice-grid,.admin-npc-location-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.admin-npc-card{grid-template-columns:72px minmax(0,1fr)}.admin-npc-card>img,.admin-npc-image-empty{width:72px;height:72px}.admin-npc-card-actions{grid-column:1/-1;justify-content:flex-end}.admin-npc-section-toolbar{align-items:stretch;flex-direction:column}.admin-npc-section-toolbar input{max-width:none}.admin-npc-location-head{grid-template-columns:1fr 150px}}
@media(max-width:620px){.admin-npc-tabs,.admin-npc-grid,.admin-npc-stat-grid,.admin-npc-behavior-layout,.admin-npc-choice-grid,.admin-npc-location-list,.admin-npc-location-head{grid-template-columns:1fr}.admin-npc-upload,.admin-npc-wide,.admin-npc-behavior-help{grid-column:auto}.admin-npc-card{grid-template-columns:60px minmax(0,1fr)}.admin-npc-card>img,.admin-npc-image-empty{width:60px;height:60px}.admin-npc-form-head{flex-direction:column}.admin-npc-actions{flex-direction:column}.admin-npc-actions a,.admin-npc-actions button{width:100%;text-align:center}.admin-npc-location-summary{min-height:58px}}


/* =========================================================
   Einheitliche Admin-Norm: Techniken + NPCs
   Gleiche flache Panels, Tabs, Inputs und Aktionsleisten wie
   Items, Titel, Planeten und übrige Welt-2-Verwaltungen.
   ========================================================= */
.admin-technique-page,
.admin-npc-page{overflow:visible!important}
.admin-technique-page *,
.admin-npc-page *{box-sizing:border-box}

.admin-technique-page>h1,
.admin-npc-page-title h1{margin:0 0 4px!important;font-size:22px!important;color:var(--text-color,#e8f8fa)!important}
.admin-technique-intro,
.admin-npc-page-title p{margin:0 0 14px!important;color:var(--muted-color,#9dbbc0)!important;line-height:1.45!important}

/* einfache, durchlaufende Admin-Navigation */
.admin-technique-nav,
.admin-npc-tabs{display:flex!important;flex-wrap:wrap!important;gap:6px!important;margin:12px 0 16px!important;padding:0!important;background:none!important;border:0!important}
.admin-technique-nav-item,
.admin-npc-tabs a{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;min-height:36px!important;padding:7px 13px!important;border:1px solid var(--border-color,#17636d)!important;border-radius:0!important;background:var(--panel-dark,#07191e)!important;color:var(--text-color,#dff7fa)!important;text-decoration:none!important;box-shadow:none!important;transform:none!important}
.admin-technique-nav-item:hover,
.admin-npc-tabs a:hover,
.admin-technique-nav-item.is-active,
.admin-npc-tabs a.is-active{border-color:var(--accent-color,#22d9ed)!important;background:var(--panel-active,#0b333b)!important;color:#fff!important}
.admin-technique-nav-icon{display:none!important}
.admin-technique-nav-item>span:last-child{display:block!important}
.admin-technique-nav-item small{display:none!important}

/* gemeinsame Panel-Norm */
.admin-technique-list-panel,
.admin-technique-card,
.admin-npc-form fieldset,
.admin-npc-card,
.admin-npc-location-card{min-width:0!important;margin:0 0 12px!important;padding:12px!important;border:1px solid var(--border-color,#17636d)!important;border-radius:0!important;background:var(--panel-bg,rgba(2,16,20,.72))!important;box-shadow:none!important}
.admin-technique-card legend,
.admin-npc-form legend{padding:0 7px!important;color:var(--accent-color,#54e8f5)!important;font-size:13px!important;font-weight:700!important;letter-spacing:0!important;text-transform:none!important}

/* keine schwebenden/sticky Speziallayouts */
.admin-technique-head,
.admin-technique-actions,
.admin-npc-form-head{position:static!important;top:auto!important;bottom:auto!important;z-index:auto!important;backdrop-filter:none!important}
.admin-technique-head,
.admin-npc-form-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding:11px 12px!important;border:1px solid var(--border-color,#17636d)!important;background:var(--panel-bg,rgba(2,16,20,.72))!important}
.admin-technique-head h2,
.admin-npc-form-head h2{margin:0!important;font-size:18px!important}

/* Formulare */
.admin-technique-form-v2,
.admin-npc-form{display:flex!important;flex-direction:column!important;gap:12px!important}
.admin-technique-grid,
.admin-technique-config-grid,
.admin-npc-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important}
.admin-technique-form-v2 label,
.admin-npc-form label{min-width:0!important;margin:0!important}
.admin-technique-form-v2 label>span:first-child,
.admin-npc-form label>span:first-child{display:block!important;margin:0 0 5px!important;color:var(--label-color,#bcd5d9)!important;font-size:13px!important;font-weight:600!important}
.admin-technique-form-v2 input:not([type=checkbox]):not([type=color]),
.admin-technique-form-v2 select,
.admin-technique-form-v2 textarea,
.admin-npc-form input:not([type=checkbox]),
.admin-npc-form select,
.admin-npc-form textarea{width:100%!important;min-width:0!important;min-height:37px!important;padding:7px 9px!important;border:1px solid var(--border-color,#17636d)!important;border-radius:0!important;background:var(--input-bg,#061216)!important;color:var(--text-color,#e9fbfd)!important;box-shadow:none!important}
.admin-technique-form-v2 textarea,
.admin-npc-form textarea{min-height:100px!important;resize:vertical!important}
.admin-technique-form-v2 input:focus,
.admin-technique-form-v2 select:focus,
.admin-technique-form-v2 textarea:focus,
.admin-npc-form input:focus,
.admin-npc-form select:focus,
.admin-npc-form textarea:focus{outline:0!important;border-color:var(--accent-color,#22d9ed)!important}
.admin-technique-wide,
.admin-npc-wide{grid-column:1/-1!important}

/* Auswahlfelder: wie übrige Admin-Checkboxgruppen */
.admin-technique-races,
.admin-technique-toggle-row,
.admin-npc-choice-list{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important}
.admin-technique-race,
.admin-technique-toggle-row label,
.admin-npc-choice{display:flex!important;align-items:center!important;gap:8px!important;min-width:0!important;min-height:38px!important;padding:7px 9px!important;border:1px solid rgba(34,217,237,.22)!important;border-radius:0!important;background:var(--input-bg,#061216)!important}
.admin-technique-race input,
.admin-technique-toggle-row input,
.admin-npc-choice input{flex:0 0 auto!important;width:auto!important;min-height:0!important;margin:0!important}
.admin-npc-choice span{min-width:0!important}
.admin-npc-choice strong,.admin-npc-choice small{display:block!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}

/* Listen einheitlich und kompakt */
.admin-technique-list,
.admin-npc-list{display:flex!important;flex-direction:column!important;gap:7px!important}
.admin-technique-list-item,
.admin-npc-card{display:grid!important;grid-template-columns:54px minmax(0,1fr) auto!important;align-items:center!important;gap:11px!important;margin:0!important;padding:9px 11px!important}
.admin-technique-list-preview,
.admin-npc-preview{display:flex!important;align-items:center!important;justify-content:center!important;width:54px!important;height:54px!important;overflow:hidden!important;border:1px solid var(--border-color,#17636d)!important;border-radius:0!important;background:var(--input-bg,#061216)!important}
.admin-technique-list-preview img,
.admin-npc-preview img{width:100%!important;height:100%!important;object-fit:contain!important}
.admin-technique-list-actions,
.admin-npc-card-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:6px!important;flex-wrap:wrap!important}

/* Buttons nach System-Norm */
.admin-technique-actions,
.admin-npc-form-head{flex-wrap:wrap!important}
.admin-technique-actions{display:flex!important;justify-content:flex-end!important;gap:7px!important;padding:10px 0 0!important;border:0!important;background:none!important}
.admin-technique-actions a,
.admin-technique-actions button,
.admin-technique-list-actions a,
.admin-technique-list-actions button,
.admin-npc-page a.button,
.admin-npc-form button,
.admin-npc-card-actions a,
.admin-npc-card-actions button{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:0!important;min-height:35px!important;padding:7px 12px!important;border:1px solid var(--border-color,#17636d)!important;border-radius:0!important;background:var(--button-bg,#0a2930)!important;color:#eaffff!important;font:inherit!important;font-weight:700!important;text-decoration:none!important;box-shadow:none!important;cursor:pointer!important}
.admin-technique-actions button,
.admin-npc-form button[type=submit]{border-color:var(--accent-color,#22d9ed)!important;background:var(--button-primary,#087f91)!important}
.is-delete,
.admin-npc-card-actions .is-delete{border-color:#8b4650!important;background:#35171c!important;color:#ffd8dd!important}

/* Kategorie- und Planetfilter */
.admin-technique-category-filter{display:flex!important;flex-wrap:wrap!important;gap:6px!important;margin:0 0 12px!important}
.admin-technique-category-filter a{display:inline-flex!important;align-items:center!important;gap:8px!important;min-height:35px!important;padding:6px 10px!important;border:1px solid var(--border-color,#17636d)!important;border-radius:0!important;background:var(--input-bg,#061216)!important;text-decoration:none!important}
.admin-technique-category-filter a.is-active{border-color:var(--accent-color,#22d9ed)!important;background:var(--panel-active,#0b333b)!important;box-shadow:none!important}

/* Upload + Vorschau */
.admin-technique-image-block,
.admin-npc-upload{display:grid!important;grid-template-columns:minmax(0,1fr) 150px!important;gap:12px!important;align-items:end!important}
.admin-technique-image-preview,
.admin-npc-preview{border-radius:0!important}

/* BBCode-Editor nur dimensionieren, Farbschema nicht überschreiben */
.admin-technique-form-v2 .sceditor-container{width:100%!important;max-width:100%!important;height:auto!important;min-height:145px!important;margin:0!important;overflow:hidden!important}
.admin-technique-form-v2 .sceditor-container iframe,
.admin-technique-form-v2 .sceditor-container textarea{width:100%!important;min-height:100px!important;height:100px!important}

@media(max-width:900px){
 .admin-technique-grid,.admin-technique-config-grid,.admin-npc-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .admin-technique-races,.admin-technique-toggle-row,.admin-npc-choice-list{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .admin-technique-list-item,.admin-npc-card{grid-template-columns:46px minmax(0,1fr)!important}
 .admin-technique-list-actions,.admin-npc-card-actions{grid-column:1/-1!important}
}
@media(max-width:600px){
 .admin-technique-grid,.admin-technique-config-grid,.admin-npc-grid,
 .admin-technique-races,.admin-technique-toggle-row,.admin-npc-choice-list,
 .admin-technique-image-block,.admin-npc-upload{grid-template-columns:1fr!important}
 .admin-technique-list-item,.admin-npc-card{grid-template-columns:1fr!important}
 .admin-technique-list-preview,.admin-npc-preview{width:64px!important;height:64px!important}
 .admin-technique-list-actions,.admin-npc-card-actions,.admin-technique-actions{justify-content:stretch!important}
 .admin-technique-list-actions a,.admin-technique-list-actions form,.admin-technique-list-actions button,
 .admin-npc-card-actions a,.admin-npc-card-actions form,.admin-npc-card-actions button,
 .admin-technique-actions a,.admin-technique-actions button{width:100%!important}
}

/* =========================================================
   NPC-VERWALTUNG – FINALER EINHEITLICHER ADMIN-AUFBAU
   Strikt auf .admin-npc-page begrenzt
   ========================================================= */
.admin-npc-page{min-width:0!important;overflow:hidden!important}
.admin-npc-page *{box-sizing:border-box}
.admin-npc-page-title{display:block!important;margin:0 0 12px!important;padding:0!important;border:0!important;background:none!important}
.admin-npc-page-title h1{margin:0!important;padding:8px 14px!important;border:1px solid #145762!important;background:linear-gradient(90deg,rgba(2,15,19,.96),rgba(4,30,36,.92))!important;color:#f1feff!important;font-size:22px!important;line-height:1.25!important}
.admin-npc-page-title p{margin:0!important;padding:8px 14px!important;border:1px solid #145762!important;border-top:0!important;background:#07191d!important;color:#a9cbd0!important}

.admin-npc-page .admin-npc-tabs{display:grid!important;grid-template-columns:repeat(2,minmax(150px,220px))!important;gap:8px!important;margin:0 0 16px!important;padding:0!important}
.admin-npc-page .admin-npc-tabs a,
.admin-npc-page .admin-npc-tabs span{display:flex!important;align-items:center!important;justify-content:center!important;min-height:38px!important;padding:8px 14px!important;border:1px solid #17636d!important;background:#06161a!important;color:#e9fbfd!important;font-weight:700!important;text-decoration:none!important;white-space:nowrap!important}
.admin-npc-page .admin-npc-tabs .is-active{border-color:#19cfe3!important;background:#0b3037!important;color:#fff!important}

.admin-npc-list-panel{margin:0!important;padding:14px!important;border:1px solid #17636d!important;background:#06171b!important}
.admin-npc-list-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;margin:0 0 12px!important;padding:0 0 12px!important;border-bottom:1px solid rgba(31,154,169,.35)!important}
.admin-npc-list-head h2{margin:0 0 3px!important;color:#effeff!important;font-size:18px!important}
.admin-npc-list-head p{margin:0!important;color:#9ec4c9!important;font-size:13px!important}
.admin-npc-primary-button{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:36px!important;padding:8px 14px!important;border:1px solid #27cde1!important;background:#087f91!important;color:#fff!important;font-weight:700!important;text-decoration:none!important}

.admin-npc-page .admin-npc-list{display:flex!important;flex-direction:column!important;gap:10px!important}
.admin-npc-page .admin-npc-card{display:grid!important;grid-template-columns:86px minmax(0,1fr) auto!important;align-items:center!important;gap:14px!important;width:100%!important;min-height:108px!important;margin:0!important;padding:10px!important;border:1px solid #145762!important;background:#041317!important;overflow:hidden!important}
.admin-npc-card-image{display:flex!important;align-items:center!important;justify-content:center!important;width:86px!important;height:86px!important;min-width:86px!important;overflow:hidden!important;border:1px solid #17636d!important;background:#061d22!important}
.admin-npc-card-image img{display:block!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important}
.admin-npc-card-image span{color:#789aa0!important;font-weight:700!important}
.admin-npc-card-content{min-width:0!important;display:flex!important;flex-direction:column!important;gap:10px!important}
.admin-npc-card-name{display:flex!important;align-items:center!important;gap:7px!important;flex-wrap:wrap!important}
.admin-npc-card-name>strong{font-size:18px!important;color:#fff!important;line-height:1.2!important}
.admin-npc-badge{display:inline-flex!important;align-items:center!important;min-height:24px!important;padding:3px 8px!important;border:1px solid #17636d!important;background:#09252b!important;font-size:12px!important;font-weight:700!important}
.admin-npc-badge.is-active{border-color:#208f53!important;color:#82efad!important;background:#082417!important}
.admin-npc-badge.is-inactive{border-color:#6c7173!important;color:#c6cfd1!important;background:#1b2022!important}
.admin-npc-badge.is-boss{border-color:#a55d1a!important;color:#ffc57d!important;background:#301b08!important}
.admin-npc-card-stats{display:grid!important;grid-template-columns:repeat(5,minmax(76px,1fr))!important;gap:7px!important;max-width:760px!important}
.admin-npc-card-stats>span{display:flex!important;flex-direction:column!important;gap:2px!important;min-width:0!important;padding:6px 8px!important;border:1px solid rgba(31,154,169,.45)!important;background:#061b20!important}
.admin-npc-card-stats small{color:#7fa9af!important;font-size:10px!important;text-transform:uppercase!important}
.admin-npc-card-stats strong{overflow:hidden!important;color:#eaffff!important;text-overflow:ellipsis!important;white-space:nowrap!important;font-size:13px!important}
.admin-npc-card-meta{display:flex!important;gap:16px!important;flex-wrap:wrap!important;color:#9fc5ca!important;font-size:12px!important}
.admin-npc-page .admin-npc-card-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:8px!important;min-width:190px!important}
.admin-npc-card-actions form{margin:0!important}
.admin-npc-card-actions a,.admin-npc-card-actions button{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:36px!important;padding:8px 13px!important;border:1px solid #17636d!important;background:#0a2930!important;color:#fff!important;font:inherit!important;font-weight:700!important;text-decoration:none!important;cursor:pointer!important}
.admin-npc-card-actions .is-delete{border-color:#8c3d48!important;background:#321218!important;color:#ffd7dc!important}
.admin-npc-empty{display:flex!important;flex-direction:column!important;gap:4px!important;padding:22px!important;border:1px dashed #17636d!important;text-align:center!important;color:#a5c7cc!important}
.admin-npc-empty strong{color:#fff!important}

/* Formular */
.admin-npc-page .admin-npc-form{display:flex!important;flex-direction:column!important;gap:14px!important;min-width:0!important}
.admin-npc-page .admin-npc-form-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;margin:0!important;padding:12px 14px!important;border:1px solid #17636d!important;background:#06191d!important}
.admin-npc-form-head h2{margin:0 0 3px!important;color:#fff!important;font-size:19px!important}
.admin-npc-form-head p{margin:0!important;color:#9dc2c7!important;font-size:13px!important}
.admin-npc-active-toggle{display:flex!important;align-items:center!important;gap:8px!important;min-height:36px!important;padding:7px 10px!important;border:1px solid #17636d!important;background:#061216!important;font-weight:700!important;white-space:nowrap!important}
.admin-npc-active-toggle input{width:auto!important;margin:0!important}
.admin-npc-page .admin-npc-form fieldset{min-width:0!important;margin:0!important;padding:14px!important;border:1px solid #17636d!important;background:#041317!important}
.admin-npc-page .admin-npc-form legend{padding:0 8px!important;color:#39d8e9!important;font-size:14px!important;font-weight:700!important;text-transform:uppercase!important}
.admin-npc-page .admin-npc-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;align-items:start!important}
.admin-npc-page .admin-npc-grid>label{display:block!important;min-width:0!important;margin:0!important}
.admin-npc-page .admin-npc-grid>label>span,
.admin-npc-page .admin-npc-behavior-layout label>span,
.admin-npc-location-head label>span{display:block!important;margin:0 0 5px!important;color:#c9e2e5!important;font-size:13px!important;font-weight:700!important}
.admin-npc-page input:not([type=checkbox]),.admin-npc-page select,.admin-npc-page textarea{width:100%!important;min-width:0!important;min-height:38px!important;padding:8px 10px!important;border:1px solid #16707c!important;background:#061216!important;color:#effeff!important;box-shadow:none!important}
.admin-npc-page textarea{min-height:110px!important;resize:vertical!important}
.admin-npc-wide{grid-column:1/-1!important}
.admin-npc-upload{grid-column:span 2!important}
.admin-npc-page .admin-npc-preview{grid-column:auto!important;display:flex!important;align-items:center!important;justify-content:center!important;width:150px!important;height:110px!important;justify-self:end!important;overflow:hidden!important;border:1px solid #17636d!important;background:#061216!important}
.admin-npc-page .admin-npc-preview img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important}
.admin-npc-page .admin-npc-preview span{color:#789ca2!important;font-size:12px!important}
.admin-npc-stat-grid .admin-npc-check{display:flex!important;align-items:center!important;gap:8px!important;min-height:38px!important;padding:8px 10px!important;border:1px solid #17636d!important;background:#061216!important}
.admin-npc-stat-grid .admin-npc-check input{width:auto!important;margin:0!important}
.admin-npc-behavior-layout{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;align-items:start!important}
.admin-npc-behavior-help{grid-column:1/-1!important;min-height:44px!important;padding:10px!important;border-left:3px solid #1cc8da!important;background:#071e23!important;color:#bcdde1!important}
.admin-npc-behavior-layout small{display:block!important;margin-top:5px!important;color:#81a6ac!important;line-height:1.35!important}
.admin-npc-section-toolbar{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;margin:0 0 10px!important;padding:0 0 10px!important;border-bottom:1px solid rgba(31,154,169,.3)!important}
.admin-npc-section-toolbar strong,.admin-npc-section-toolbar small{display:block!important}
.admin-npc-section-toolbar small{margin-top:3px!important;color:#8fb5ba!important}
.admin-npc-section-toolbar input{max-width:320px!important}
.admin-npc-choice-grid,.admin-npc-location-list{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;max-height:360px!important;overflow:auto!important;padding-right:4px!important}
.admin-npc-page .admin-npc-choice,.admin-npc-page .admin-npc-location-card{display:flex!important;align-items:center!important;gap:9px!important;min-width:0!important;min-height:48px!important;margin:0!important;padding:8px 10px!important;border:1px solid rgba(31,154,169,.45)!important;background:#06191d!important}
.admin-npc-page .admin-npc-choice input,.admin-npc-page .admin-npc-location-card input{flex:0 0 auto!important;width:auto!important;margin:0!important}
.admin-npc-page .admin-npc-choice span,.admin-npc-page .admin-npc-location-card span{min-width:0!important}
.admin-npc-page .admin-npc-choice strong,.admin-npc-page .admin-npc-location-card strong,.admin-npc-page .admin-npc-choice small,.admin-npc-page .admin-npc-location-card small{display:block!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
.admin-npc-page .admin-npc-choice small,.admin-npc-page .admin-npc-location-card small{margin-top:2px!important;color:#80a8ae!important;font-size:11px!important}
.admin-npc-location-head{display:grid!important;grid-template-columns:minmax(240px,1fr) 160px!important;gap:12px!important;align-items:end!important}
.admin-npc-location-summary{display:flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;min-height:38px!important;padding:7px 10px!important;border:1px solid #17636d!important;background:#061216!important}
.admin-npc-location-summary strong{color:#43e4f5!important;font-size:18px!important}
.admin-npc-help{margin:10px 0!important;color:#8fb3b8!important;font-size:12px!important}
.admin-npc-location-empty{padding:16px!important;border:1px dashed #17636d!important;text-align:center!important;color:#82a7ad!important}
.admin-npc-actions{display:flex!important;justify-content:flex-end!important;gap:8px!important;padding-top:2px!important}
.admin-npc-actions a,.admin-npc-actions button{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:38px!important;padding:8px 15px!important;border:1px solid #17636d!important;background:#0a2930!important;color:#fff!important;font:inherit!important;font-weight:700!important;text-decoration:none!important;cursor:pointer!important}
.admin-npc-actions button{border-color:#20cde0!important;background:#087f91!important}

@media(max-width:980px){
 .admin-npc-page .admin-npc-card{grid-template-columns:74px minmax(0,1fr)!important}
 .admin-npc-card-image{width:74px!important;height:74px!important;min-width:74px!important}
 .admin-npc-page .admin-npc-card-actions{grid-column:1/-1!important;justify-content:flex-end!important;min-width:0!important}
 .admin-npc-card-stats{grid-template-columns:repeat(3,minmax(76px,1fr))!important}
 .admin-npc-page .admin-npc-grid,.admin-npc-behavior-layout{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .admin-npc-choice-grid,.admin-npc-location-list{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:640px){
 .admin-npc-page .admin-npc-tabs{grid-template-columns:1fr 1fr!important}
 .admin-npc-list-head,.admin-npc-page .admin-npc-form-head,.admin-npc-section-toolbar{align-items:stretch!important;flex-direction:column!important}
 .admin-npc-primary-button,.admin-npc-section-toolbar input{max-width:none!important;width:100%!important}
 .admin-npc-page .admin-npc-card{grid-template-columns:64px minmax(0,1fr)!important;gap:10px!important}
 .admin-npc-card-image{width:64px!important;height:64px!important;min-width:64px!important}
 .admin-npc-card-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .admin-npc-page .admin-npc-grid,.admin-npc-behavior-layout,.admin-npc-choice-grid,.admin-npc-location-list,.admin-npc-location-head{grid-template-columns:1fr!important}
 .admin-npc-upload{grid-column:auto!important}
 .admin-npc-page .admin-npc-preview{justify-self:start!important;width:120px!important;height:90px!important}
 .admin-npc-page .admin-npc-card-actions,.admin-npc-actions{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%!important}
 .admin-npc-page .admin-npc-card-actions a,.admin-npc-page .admin-npc-card-actions form,.admin-npc-page .admin-npc-card-actions button,.admin-npc-actions a,.admin-npc-actions button{width:100%!important}
}

/* NPC-Verwaltung an das bestehende Planeten-/Item-Adminlayout angleichen */
.admin-npc-page.admin-planet-page{padding-bottom:24px!important;overflow:visible!important}
.admin-npc-page.admin-planet-page>h1{margin:0!important}
.admin-npc-page .admin-npc-tabs{grid-template-columns:repeat(3,174px)!important;width:918px!important;height:44px!important;margin:12px 16px 0!important;padding:6px!important;gap:0 8px!important;border-width:2px!important;border-style:solid!important;background:transparent!important}
.admin-npc-page .admin-npc-tabs>a,.admin-npc-page .admin-npc-tabs>span{display:block!important;width:174px!important;height:30px!important;min-height:30px!important;padding:7px 0 0!important;border-width:1px!important;border-style:solid!important;font-weight:900!important;text-align:center!important;line-height:normal!important;background:transparent!important}
.admin-npc-page .admin-npc-list-panel,.admin-npc-page .admin-npc-form{width:918px!important;margin:12px 16px 0!important;padding:12px!important;border-width:2px!important;border-style:solid!important;background:transparent!important;box-shadow:none!important}
.admin-npc-page .admin-npc-list-panel>.admin-planet-form-title,.admin-npc-page .admin-npc-form>.admin-planet-form-title{width:890px!important;height:38px!important;margin:0 0 10px!important;padding:10px 12px 0!important;border-width:1px!important;border-style:solid!important;font-size:17px!important;font-weight:900!important;text-transform:uppercase!important;box-sizing:border-box!important}
.admin-npc-page .admin-npc-list{gap:8px!important}
.admin-npc-page .admin-npc-card{margin:0!important}
.admin-npc-page .admin-npc-top-options{display:flex!important;justify-content:flex-end!important;width:100%!important;margin:0 0 10px!important;padding:0!important}
.admin-npc-page .admin-npc-active-toggle{min-width:140px!important;height:34px!important;margin:0!important;padding:7px 10px!important;border:1px solid #17636d!important;background:#06161a!important}
.admin-npc-page .admin-npc-form{display:block!important}
.admin-npc-page .admin-npc-form fieldset{width:100%!important;margin:0 0 12px!important;padding:12px!important;border-width:1px!important;border-style:solid!important;background:transparent!important}
.admin-npc-page .admin-npc-form fieldset legend{padding:0 8px!important;font-weight:900!important;text-transform:uppercase!important}
.admin-npc-page .admin-npc-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px 16px!important}
.admin-npc-page .admin-npc-wide{grid-column:1/-1!important}
.admin-npc-page .admin-npc-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.admin-npc-page .admin-npc-behavior-layout{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px 16px!important;align-items:start!important}
.admin-npc-page .admin-npc-behavior-help{grid-column:1/-1!important;min-height:0!important;padding:10px 12px!important;border:1px solid #17636d!important}
.admin-npc-page .admin-npc-section-toolbar,.admin-npc-page .admin-npc-location-head{display:grid!important;grid-template-columns:minmax(0,1fr) 286px!important;gap:16px!important;align-items:end!important}
.admin-npc-page .admin-npc-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.admin-npc-page .admin-npc-actions{display:flex!important;justify-content:flex-end!important;gap:12px!important;margin-top:12px!important;padding-top:12px!important;border-top:1px solid #17636d!important}
.admin-npc-page .admin-npc-actions>*{width:150px!important;min-height:34px!important}
@media(max-width:1000px){.admin-npc-page .admin-npc-tabs,.admin-npc-page .admin-npc-list-panel,.admin-npc-page .admin-npc-form{width:calc(100% - 32px)!important}.admin-npc-page .admin-npc-list-panel>.admin-planet-form-title,.admin-npc-page .admin-npc-form>.admin-planet-form-title{width:100%!important}.admin-npc-page .admin-npc-grid,.admin-npc-page .admin-npc-stat-grid,.admin-npc-page .admin-npc-behavior-layout,.admin-npc-page .admin-npc-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:650px){.admin-npc-page .admin-npc-tabs{grid-template-columns:1fr!important;height:auto!important}.admin-npc-page .admin-npc-tabs>a,.admin-npc-page .admin-npc-tabs>span{width:100%!important}.admin-npc-page .admin-npc-grid,.admin-npc-page .admin-npc-stat-grid,.admin-npc-page .admin-npc-behavior-layout,.admin-npc-page .admin-npc-choice-grid,.admin-npc-page .admin-npc-section-toolbar,.admin-npc-page .admin-npc-location-head{grid-template-columns:1fr!important}}

/* NPC-Liste: Rahmen und Ortsfilter im bestehenden Adminstil */
.admin-npc-page .admin-npc-tabs{
  border:1px solid #17636d!important;
  outline:0!important;
  box-shadow:none!important;
}
.admin-npc-page .admin-npc-tabs>a,
.admin-npc-page .admin-npc-tabs>span{border-color:#17636d!important}
.admin-npc-list-filter{
  display:grid!important;
  grid-template-columns:minmax(260px,420px)!important;
  gap:12px!important;
  align-items:end!important;
  margin:0 0 10px!important;
  padding:10px 12px!important;
  border:1px solid #17636d!important;
  background:transparent!important;
}
.admin-npc-list-filter label{display:grid!important;gap:5px!important;min-width:0!important}
.admin-npc-list-filter label>span{font-size:12px!important;font-weight:700!important;color:#d8f7fa!important}
.admin-npc-list-filter select{width:100%!important;min-height:34px!important;padding:6px 9px!important;border:1px solid #17636d!important;background:#061216!important;color:#fff!important}
.admin-npc-card[hidden]{display:none!important}
@media(max-width:760px){.admin-npc-list-filter{grid-template-columns:1fr!important}}

/* NPC-Planetenfilter: volle Breite und echtes Ausblenden per hidden */
.admin-npc-page .admin-npc-list-filter,
.admin-npc-page .admin-npc-list-filter label,
.admin-npc-page #npc-list-planet-filter {
    width: 100% !important;
    max-width: none !important;
}
.admin-npc-page .admin-npc-list-filter {
    display: block !important;
}
.admin-npc-page .admin-npc-card[hidden],
.admin-npc-page .admin-npc-empty[hidden] {
    display: none !important;
}

/* NPC bearbeiten/erstellen: finaler Form-Fix im bestehenden Adminstil */
.admin-npc-page .admin-npc-form,
.admin-npc-page .admin-npc-form fieldset,
.admin-npc-page .admin-npc-form-title,
.admin-npc-page .admin-npc-top-options,
.admin-npc-page .admin-npc-active-toggle,
.admin-npc-page .admin-npc-check,
.admin-npc-page .admin-npc-upload,
.admin-npc-page .admin-npc-preview,
.admin-npc-page .admin-npc-behavior-help,
.admin-npc-page .admin-npc-section-toolbar,
.admin-npc-page .admin-npc-location-head,
.admin-npc-page .admin-npc-location-summary,
.admin-npc-page .admin-npc-choice,
.admin-npc-page .admin-npc-location-card {
    border-color:#17636d!important;
    outline:0!important;
    box-shadow:none!important;
}
.admin-npc-page .admin-npc-form{
    border:1px solid #17636d!important;
}
.admin-npc-page .admin-npc-form-title{
    border:1px solid #17636d!important;
}
.admin-npc-page .admin-npc-form fieldset{
    border:1px solid #17636d!important;
}
.admin-npc-page .admin-npc-form input[type="text"],
.admin-npc-page .admin-npc-form input[type="number"],
.admin-npc-page .admin-npc-form input[type="search"],
.admin-npc-page .admin-npc-form select,
.admin-npc-page .admin-npc-form textarea,
.admin-npc-page .admin-npc-form input[type="file"]{
    box-sizing:border-box!important;
    width:100%!important;
    min-height:38px!important;
    border:1px solid #17636d!important;
    border-radius:0!important;
    background:#061216!important;
    color:#fff!important;
    box-shadow:none!important;
}
.admin-npc-page .admin-npc-form textarea{min-height:110px!important;padding:9px!important;resize:vertical!important}
.admin-npc-page .admin-npc-upload{display:grid!important;gap:6px!important;align-content:start!important}
.admin-npc-page .admin-npc-upload input[type="file"]{padding:0!important;overflow:hidden!important}
.admin-npc-page .admin-npc-upload input[type="file"]::file-selector-button{
    height:36px!important;
    margin:0 10px 0 0!important;
    padding:0 16px!important;
    border:0!important;
    border-right:1px solid #17636d!important;
    border-radius:0!important;
    background:linear-gradient(to bottom,#39d6e8 0%,#0a8ca0 100%)!important;
    color:#fff!important;
    font:inherit!important;
    font-weight:700!important;
    cursor:pointer!important;
}
.admin-npc-page .admin-npc-upload input[type="file"]::-webkit-file-upload-button{
    height:36px!important;
    margin:0 10px 0 0!important;
    padding:0 16px!important;
    border:0!important;
    border-right:1px solid #17636d!important;
    border-radius:0!important;
    background:linear-gradient(to bottom,#39d6e8 0%,#0a8ca0 100%)!important;
    color:#fff!important;
    font:inherit!important;
    font-weight:700!important;
    cursor:pointer!important;
}
.admin-npc-page .admin-npc-check,
.admin-npc-page .admin-npc-active-toggle{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:9px!important;
    min-height:38px!important;
    padding:8px 11px!important;
    border:1px solid #17636d!important;
    background:#061216!important;
    line-height:1.2!important;
}
.admin-npc-page .admin-npc-check input[type="checkbox"],
.admin-npc-page .admin-npc-active-toggle input[type="checkbox"]{
    flex:0 0 auto!important;
    width:14px!important;
    height:14px!important;
    min-height:0!important;
    margin:0!important;
}
.admin-npc-page .admin-npc-preview{
    width:150px!important;
    height:112px!important;
    justify-self:center!important;
    align-self:end!important;
    border:1px solid #17636d!important;
    background:#061216!important;
}
.admin-npc-page .admin-npc-preview img{width:100%!important;height:100%!important;object-fit:contain!important}

/* NPC-Ortsauswahl: Orte erst nach bewusster Planetenauswahl anzeigen. */
.admin-npc-page #npc-location-list .admin-npc-location-card[hidden],
.admin-npc-page .admin-npc-location-card[hidden] {
    display: none !important;
}

/* NPC-Kampf-Pattern
   Ausschließlich in der zentralen Style-Datei.
   Keine festen Breiten/Höhen und keine min-/max-Dimensionswerte. */
.admin-npc-page .admin-npc-behavior-layout,
.admin-npc-page .admin-npc-pattern-grid,
.admin-npc-page .admin-npc-pattern-base,
.admin-npc-page .admin-npc-pattern-rule,
.admin-npc-page .admin-npc-pattern-gear,
.admin-npc-page .admin-npc-pattern-techniques,
.admin-npc-page .admin-npc-pattern-pool-grid {
    display: grid;
    gap: .75rem;
}

.admin-npc-page .admin-npc-behavior-layout,
.admin-npc-page .admin-npc-pattern-base,
.admin-npc-page .admin-npc-pattern-grid {
    grid-template-columns: repeat(2, 1fr);
}

.admin-npc-page .admin-npc-pattern-intro,
.admin-npc-page .admin-npc-pattern-card,
.admin-npc-page .admin-npc-pattern-rule,
.admin-npc-page .admin-npc-pattern-gear,
.admin-npc-page .admin-npc-pattern-techniques {
    box-sizing: border-box;
    border: 1px solid #075868;
    background: #06171b;
}

.admin-npc-page .admin-npc-behavior-help,
.admin-npc-page .admin-npc-ai-summary,
.admin-npc-page .admin-npc-pattern-intro,
.admin-npc-page .admin-npc-pattern-card {
    padding: 1rem;
}

.admin-npc-page .admin-npc-ai-summary {
    grid-column: 1 / -1;
}

.admin-npc-page .admin-npc-pattern-intro,
.admin-npc-page .admin-npc-pattern-card > header,
.admin-npc-page .admin-npc-pattern-section-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: .75rem;
}

.admin-npc-page .admin-npc-pattern-intro > div,
.admin-npc-page .admin-npc-pattern-section-head > div,
.admin-npc-page .admin-npc-pattern-card > header > div:first-child {
    flex: 1 1 0;
    overflow: hidden;
}

.admin-npc-page .admin-npc-pattern-card > header {
    padding-bottom: .75rem;
    margin-bottom: .9rem;
    border-bottom: 1px solid #075868;
}

.admin-npc-page .admin-npc-pattern-card > header > div:last-child {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
}

.admin-npc-page .admin-npc-pattern-section {
    padding-top: 1rem;
    margin-top: 1rem;
    border-top: 1px solid #006f7d;
}

.admin-npc-page .admin-npc-pattern-section-head {
    margin-bottom: .75rem;
}

.admin-npc-page .admin-npc-pattern-section-head strong,
.admin-npc-page .admin-npc-pattern-section-head small,
.admin-npc-page .admin-npc-pattern-card header small {
    display: block;
}

.admin-npc-page .admin-npc-pattern-section-head small,
.admin-npc-page .admin-npc-pattern-card header small {
    color: #9fd8df;
    font-weight: 400;
}

.admin-npc-page .admin-npc-pattern-rule {
    grid-template-columns: repeat(3, 1fr);
    align-items: center;
    padding: .75rem;
    margin-bottom: .65rem;
    overflow: hidden;
}

.admin-npc-page .admin-npc-pattern-action {
    grid-template-columns: repeat(3, 1fr);
}

.admin-npc-page .admin-npc-pattern-rule > select,
.admin-npc-page .admin-npc-pattern-rule > input,
.admin-npc-page .admin-npc-pattern-rule > button,
.admin-npc-page .admin-npc-pattern-pool-toolbar input {
    box-sizing: border-box;
    width: 100%;
    margin: 0;
}

.admin-npc-page .admin-npc-pattern-rule > p,
.admin-npc-page .admin-npc-pattern-gear,
.admin-npc-page .admin-npc-pattern-techniques,
.admin-npc-page .admin-npc-pattern-rule > .is-delete {
    grid-column: 1 / -1;
}

.admin-npc-page .admin-npc-pattern-rule > p {
    margin: 0;
    padding: .65rem .75rem;
    border-left: .2rem solid #00a9c0;
    background: #071b20;
    color: #9fd8df;
    overflow-wrap: anywhere;
}

.admin-npc-page .admin-npc-pattern-rule > .is-delete {
    justify-self: start;
}

.admin-npc-page .admin-npc-pattern-rule > [hidden],
.admin-npc-page .admin-npc-pattern-techniques[hidden],
.admin-npc-page .admin-npc-pattern-gear[hidden],
.admin-npc-page [data-pool-technique][hidden],
.admin-npc-page [data-action-pool][hidden],
.admin-npc-page [data-action-pool-empty][hidden] {
    display: none !important;
}

.admin-npc-page .admin-npc-pattern-gear {
    grid-template-columns: repeat(3, 1fr);
    padding: .7rem;
    overflow: auto;
}

.admin-npc-page .admin-npc-pattern-gear label,
.admin-npc-page [data-pool-technique] {
    display: flex;
    align-items: center;
    gap: .55rem;
    box-sizing: border-box;
    padding: .65rem .75rem;
    border: 1px solid #075868;
    background: #07171b;
    overflow: hidden;
}

.admin-npc-page .admin-npc-pattern-gear label span,
.admin-npc-page [data-pool-technique] span {
    overflow: hidden;
    overflow-wrap: anywhere;
}

/* Technikpool bleibt exakt in der verfügbaren Aktionsbox. */
.admin-npc-page [data-action-pool] {
    grid-column: 1 / -1;
    box-sizing: border-box;
    width: 100%;
    overflow: hidden;
    border: 1px solid #087b8d;
    background: #04161b;
}

.admin-npc-page .admin-npc-pattern-pool-toolbar {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: .75rem;
    align-items: center;
    box-sizing: border-box;
    width: 100%;
    padding: .8rem;
    border-bottom: 1px solid #087b8d;
    background: #072128;
    overflow: hidden;
}

.admin-npc-page .admin-npc-pattern-pool-toolbar strong,
.admin-npc-page .admin-npc-pattern-pool-toolbar span {
    display: block;
    overflow-wrap: anywhere;
}

.admin-npc-page .admin-npc-pattern-pool-toolbar strong {
    color: #25e4ff;
}

.admin-npc-page .admin-npc-pattern-pool-toolbar span {
    margin-top: .2rem;
    color: #9fd8df;
}

.admin-npc-page .admin-npc-pattern-pool-grid {
    grid-template-columns: repeat(2, 1fr);
    box-sizing: border-box;
    width: 100%;
    padding: .8rem;
    overflow-x: hidden;
    overflow-y: auto;
    background: #03171b;
}

.admin-npc-page [data-pool-technique] {
    width: 100%;
    cursor: pointer;
}

.admin-npc-page [data-pool-technique]:hover {
    border-color: #0aa9bf;
    background: #092127;
}

.admin-npc-page [data-pool-technique] input {
    flex: 0 0 auto;
    margin: 0;
}

.admin-npc-page .admin-npc-pattern-pool-empty {
    grid-column: 1 / -1;
    box-sizing: border-box;
    width: 100%;
    padding: .9rem;
    border: 1px dashed #087b8d;
    text-align: center;
    color: #9fd8df;
}


/* NPC-Techniksuche und einklappbare Kampf-Pattern */
.admin-npc-page .admin-npc-choice.is-filtered-out {
    display: none !important;
}

.admin-npc-page [data-pattern-body][hidden] {
    display: none !important;
}

.admin-npc-page .admin-npc-pattern-card.is-collapsed > header {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: 0;
}

.admin-npc-page [data-pattern-title] {
    overflow-wrap: anywhere;
}

/* Die Oberfläche verwendet nur flexible Anteile der verfügbaren Fläche. */
.admin-npc-page .admin-npc-pattern-rule,
.admin-npc-page .admin-npc-pattern-action,
.admin-npc-page .admin-npc-pattern-pool-toolbar,
.admin-npc-page .admin-npc-pattern-pool-grid,
.admin-npc-page .admin-npc-pattern-gear,
.admin-npc-page .admin-npc-choice-grid,
.admin-npc-page .admin-npc-stat-grid {
    width: 100%;
    box-sizing: border-box;
}

.admin-npc-page .admin-npc-pattern-pool-grid {
    grid-template-columns: 1fr 1fr;
}

.admin-npc-page .admin-npc-pattern-pool-grid > *,
.admin-npc-page .admin-npc-pattern-rule > *,
.admin-npc-page .admin-npc-pattern-action > *,
.admin-npc-page .admin-npc-pattern-gear > * {
    box-sizing: border-box;
    width: 100%;
}


/* NPC-Pattern: zeitlich/bedingt freigegebene Immunitätsausnahmen */
.admin-npc-page .admin-npc-pattern-exceptions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
    align-items: stretch;
    margin-block: 1rem;
    padding: 1rem;
    border: 1px solid #087180;
    background: #051316;
    box-sizing: border-box;
}
.admin-npc-page .admin-npc-pattern-exceptions > div {
    grid-column: 1 / -1;
    display: grid;
    gap: .25rem;
}
.admin-npc-page .admin-npc-pattern-exceptions .admin-npc-check {
    inline-size: 100%;
    box-sizing: border-box;
    border-color: #075d69 !important;
    background: #06171a !important;
}

/* NPC-Kampf: ortsgebundene Gegner und Schwierigkeitsauswahl */
.npc-fight-page,
.npc-fight-page * {
    box-sizing: border-box;
}
.npc-fight-location,
.npc-fight-active,
.npc-fight-empty,
.npc-fight-card {
    border: 1px solid var(--border-color, #087f8c);
    background: var(--panel-background, rgba(0, 18, 22, .72));
}
.npc-fight-location {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    padding: .8rem 1rem;
    margin-bottom: 1rem;
}
.npc-fight-location span,
.npc-fight-empty span {
    color: var(--text-muted, #a9dce2);
}
.npc-fight-list {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1rem;
}
.npc-fight-card {
    display: grid;
    grid-template-columns: 1fr 286px;
    gap: 16px;
    padding: 14px;
}
.npc-fight-card-main {
    display: grid;
    grid-template-columns: 152px 1fr;
    gap: 16px;
    align-items: stretch;
}
.npc-fight-portrait {
    display: grid;
    grid-template-rows: 152px 32px;
    gap: 6px;
    width: 152px;
}
.npc-fight-image {
    width: 152px;
    height: 152px;
    overflow: hidden;
    border: 1px solid var(--border-color, #087f8c);
    display: grid;
    place-items: center;
    background: var(--input-background, rgba(0, 10, 13, .72));
}
.npc-fight-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.npc-fight-name {
    display: flex;
    width: 152px;
    height: 32px;
    align-items: center;
    justify-content: center;
    gap: .6rem;
    border: 1px solid var(--border-color, #087f8c);
    background: var(--heading-background, rgba(0, 20, 24, .86));
    color: var(--accent-color, #1ee7f2);
    font-size: 14px;
    text-align: center;
}
.npc-fight-name em {
    border: 1px solid var(--danger-color, #b43b4f);
    color: var(--danger-text, #ff8898);
    padding: .15rem .45rem;
    font-style: normal;
}
.npc-fight-info p {
    margin: 0;
    padding: 10px 4px;
    color: var(--text-color, #fff);
    font-size: 14px;
    line-height: 1.55;
}
.npc-fight-stats,
.npc-fight-active-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: .55rem;
}
.npc-fight-stats span,
.npc-fight-active-grid div {
    border: 1px solid var(--border-color, #087f8c);
    padding: .55rem;
    display: grid;
    gap: .2rem;
}
.npc-fight-stats small,
.npc-fight-active-grid strong {
    color: var(--accent-color, #1ee7f2);
}
.npc-fight-start-form {
    display: grid;
    align-content: center;
    gap: 12px;
    border-left: 1px solid var(--border-color, #087f8c);
    padding-left: 16px;
}
.npc-fight-start-form label {
    display: grid;
    gap: 6px;
    color: var(--text-color, #fff);
    font-weight: 700;
}
.npc-fight-start-form select,
.npc-fight-start-form button {
    width: 100%;
    height: 36px;
    box-sizing: border-box;
    border: 1px solid var(--border-color, #087f8c);
    border-radius: 0;
    font: inherit;
}
.npc-fight-start-form select {
    padding: 0 10px;
    background: var(--input-background, var(--input-bg, #061519));
    color: var(--text-color, #fff);
}
.npc-fight-start-form select option {
    background: var(--input-background, var(--input-bg, #061519));
    color: var(--text-color, #fff);
}
.npc-fight-start-form button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 10px;
    background: var(--button-background, var(--button-bg, #176f80));
    color: var(--button-color, var(--button-text, #fff));
    font-weight: 800;
    cursor: pointer;
}
.npc-fight-start-form button:hover,
.npc-fight-start-form button:focus-visible {
    background: var(--button-hover-background, #138ba0);
    color: var(--button-hover-color, #fff);
}
.npc-fight-mode-actions {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: .65rem;
}
.npc-fight-empty,
.npc-fight-active {
    padding: 1rem;
}
.npc-fight-empty {
    display: grid;
    gap: .35rem;
    text-align: center;
}
.npc-fight-active-grid {
    grid-template-columns: repeat(3, 1fr);
}
@media (max-width: 52rem) {
    .npc-fight-card,
    .npc-fight-card-main,
    .npc-fight-location {
        grid-template-columns: 1fr;
        display: grid;
    }
    .npc-fight-start-form {
        border-left: 0;
        border-top: 1px solid var(--border-color, #087f8c);
        padding-left: 0;
        padding-top: 1rem;
    }
    .npc-fight-stats,
    .npc-fight-active-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* Spieler-Techniken und Kampfoberfläche */
.admin-standard-panel,
.admin-player-technique-assignment,
.npc-combat-stage,
.npc-combat-log {
    border: 1px solid var(--border-color, #0b7180);
    background: var(--panel-background, rgba(0, 18, 22, .72));
    padding: 1rem;
    box-sizing: border-box;
}

/* System-Verwaltung */
.admin-system-form {
    width: 100%;
    margin-top: 12px;
    box-sizing: border-box;
}

.admin-system-panel {
    width: 100%;
    padding: 14px;
    border-width: 1px;
    border-style: solid;
    box-sizing: border-box;
}

.admin-system-panel-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    height: 42px;
    padding: 8px 12px;
    border-width: 1px;
    border-style: solid;
    box-sizing: border-box;
}

.admin-system-panel-title strong,
.admin-system-panel-title span {
    display: block;
}

.admin-system-panel-title strong {
    font-size: 18px;
    text-transform: uppercase;
}

.admin-system-panel-title span {
    font-size: 13px;
    text-align: right;
}

.admin-system-limit {
    display: grid;
    grid-template-columns: 280px 1fr;
    align-items: end;
    gap: 16px;
    width: 100%;
    margin-top: 12px;
    padding: 12px;
    border-width: 1px;
    border-style: solid;
    box-sizing: border-box;
}

.admin-system-form label,
.admin-system-form label span {
    display: block;
}

.admin-system-form label span {
    margin-bottom: 6px;
    font-size: 13px;
    font-weight: 900;
    text-transform: uppercase;
}

.admin-system-form input[type="number"] {
    display: block;
    width: 100%;
    height: 36px;
    padding: 0 10px;
    border-width: 1px;
    border-style: solid;
    box-sizing: border-box;
    font: inherit;
}

.admin-system-limit p {
    margin: 0;
    padding: 9px 12px;
    border-left-width: 3px;
    border-left-style: solid;
    line-height: 1.45;
}

.admin-system-reward-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    width: 100%;
    margin-top: 12px;
}

.admin-system-reward-card {
    padding: 0 12px 12px;
    border-width: 1px;
    border-style: solid;
    box-sizing: border-box;
}

.admin-system-reward-card h2 {
    height: 38px;
    margin: 0 -12px 12px;
    padding: 9px 12px 0;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    box-sizing: border-box;
    font-size: 15px;
    text-transform: uppercase;
}

.admin-system-range {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
}

.admin-system-range label:last-child {
    grid-column: 1 / -1;
}

.admin-system-actions {
    justify-content: flex-end;
    width: 100%;
    margin-top: 14px;
}

.admin-system-actions button {
    width: 220px;
    height: 38px;
    border-width: 1px;
    border-style: solid;
    box-sizing: border-box;
    font: inherit;
    font-weight: 900;
    cursor: pointer;
}

.admin-player-technique-user-form,
.admin-player-technique-head,
.admin-form-actions,
.npc-combat-fighter-head,
.npc-combat-resource > div {
    display: flex;
    align-items: center;
    gap: .75rem;
    flex-wrap: wrap;
}

.admin-player-technique-user-form label,
.admin-player-technique-head > div,
.admin-player-technique-search {
    flex: 1 1 0;
}

.admin-player-technique-user-form select,
.admin-player-technique-search,
.npc-combat-action-form select {
    width: 100%;
    box-sizing: border-box;
}

.admin-player-technique-grid {
    display: flex;
    flex-wrap: wrap;
    gap: .65rem;
    margin-top: 1rem;
}

.admin-player-technique-entry {
    flex: 1 1 calc(50% - .65rem);
    display: flex;
    align-items: center;
    gap: .7rem;
    border: 1px solid var(--border-color, #0b7180);
    padding: .75rem;
    box-sizing: border-box;
}

.admin-player-technique-entry span,
.admin-player-technique-entry strong,
.admin-player-technique-entry small {
    display: block;
    overflow-wrap: anywhere;
}

.npc-combat-page {
    overflow: hidden;
}

.npc-combat-round {
    text-align: center;
    margin-bottom: 1rem;
}

.npc-combat-stage {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    flex-wrap: wrap;
}

.npc-combat-team,
.npc-combat-center {
    flex: 1 1 30%;
    box-sizing: border-box;
}

.npc-combat-center {
    border-left: 1px solid var(--border-color, #0b7180);
    border-right: 1px solid var(--border-color, #0b7180);
    padding: 0 1rem;
}

.npc-combat-team h2,
.npc-combat-center h2,
.npc-combat-log h2 {
    margin-top: 0;
}

.npc-combat-fighter {
    border: 1px solid var(--border-color, #0b7180);
    padding: .8rem;
    margin-bottom: .75rem;
    box-sizing: border-box;
}

.npc-combat-fighter.is-defeated {
    opacity: .55;
}

.npc-combat-fighter-head img,
.npc-combat-fighter-placeholder {
    flex: 0 1 18%;
    aspect-ratio: 1;
    object-fit: cover;
    display: grid;
    place-items: center;
    border: 1px solid var(--border-color, #0b7180);
}

.npc-combat-fighter-head div {
    flex: 1 1 0;
}

.npc-combat-fighter-head strong,
.npc-combat-fighter-head small {
    display: block;
}

.npc-combat-resource {
    margin-top: .65rem;
}

.npc-combat-resource > div {
    justify-content: space-between;
}

.npc-combat-resource progress {
    width: 100%;
}

.npc-combat-action-form {
    display: grid;
    gap: .85rem;
}

.npc-combat-action-form label span {
    display: block;
    margin-bottom: .3rem;
}

.npc-combat-log {
    margin-top: 1rem;
}

.npc-combat-log-list {
    display: flex;
    flex-direction: column;
    gap: .5rem;
}

.npc-combat-log-entry {
    display: flex;
    gap: 1rem;
    border-bottom: 1px solid var(--border-color, #0b7180);
    padding-bottom: .5rem;
}

.npc-combat-log-entry span {
    flex: 0 0 auto;
    font-weight: 700;
}

.npc-combat-log-entry p {
    margin: 0;
    overflow-wrap: anywhere;
}

@media (orientation: portrait) {
    .admin-player-technique-entry,
    .npc-combat-team,
    .npc-combat-center {
        flex-basis: 100%;
    }

    .npc-combat-center {
        border-left: 0;
        border-right: 0;
        border-top: 1px solid var(--border-color, #0b7180);
        border-bottom: 1px solid var(--border-color, #0b7180);
        padding: 1rem 0;
    }
}


/* Welt-1-orientierte, theme-neutrale Kampfoberfläche */
.world1-combat-layout,
.world1-combat-layout * {
    box-sizing: border-box;
}
.world1-combat-round {
    text-align: center;
    padding: 1rem;
    border-bottom: 1px solid var(--border-color, #0d7580);
}
.world1-combat-arena {
    display: grid;
    grid-template-columns: 1fr 2.3fr 1fr;
    gap: 1rem;
    padding: 1rem;
    align-items: start;
}
.world1-combat-side,
.world1-combat-control,
.world1-combat-log {
    border: 1px solid var(--border-color, #0d7580);
    background: var(--panel-background, rgba(0, 18, 22, .78));
    padding: 1rem;
}
.world1-combat-side h2 {
    text-align: center;
    margin: 0 0 .75rem;
}
.world1-combat-title {
    display: grid;
    gap: .3rem;
    text-align: center;
    padding: .8rem;
    margin-bottom: 1rem;
    border-bottom: 1px solid var(--border-color, #0d7580);
    background: var(--heading-background, rgba(255,255,255,.04));
}
.world1-combat-title strong {
    font-size: 2rem;
    color: var(--accent-color, #25dff2);
}
.world1-combat-fighter {
    display: grid;
    gap: .55rem;
}
.world1-combat-fighter + .world1-combat-fighter {
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid var(--border-color, #0d7580);
}
.world1-combat-fighter-name {
    text-align: center;
    font-size: 1.1rem;
}
.world1-combat-portrait {
    position: relative;
    width: 100%;
    aspect-ratio: 1 / 1;
    border: 1px solid var(--border-color, #0d7580);
    overflow: hidden;
    display: grid;
    place-items: center;
    background: var(--input-background, rgba(0,0,0,.25));
}
.world1-combat-portrait img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.world1-combat-portrait > span {
    font-size: 3rem;
}
.world1-combat-portrait em {
    position: absolute;
    inset: auto 0 0;
    padding: .35rem;
    text-align: center;
    font-style: normal;
    background: var(--button-background, #138ba0);
    color: var(--button-color, #fff);
}
.world1-combat-fighter-meta {
    display: grid;
    gap: .2rem;
}
.world1-combat-resource > div {
    display: flex;
    justify-content: space-between;
    gap: .5rem;
}
.world1-combat-resource progress {
    width: 100%;
}
.world1-combat-action-form {
    display: grid;
    gap: .7rem;
}
.world1-combat-action-form label {
    display: grid;
    grid-template-columns: .7fr 2fr;
    gap: .7rem;
    align-items: center;
}
.world1-combat-action-form select,
.world1-combat-action-form input,
.world1-combat-action-form button {
    width: 100%;
}
.world1-combat-attack {
    justify-self: center;
    width: 45% !important;
}
.world1-combat-quick-actions {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: .55rem;
    margin-top: .4rem;
}
.world1-combat-log {
    margin: 0 1rem 1rem;
}
.world1-combat-log h2 {
    margin-top: 0;
}
.world1-combat-log-list {
    display: grid;
}
.world1-combat-log-entry {
    display: grid;
    grid-template-columns: .5fr 4fr;
    gap: .8rem;
    padding: .65rem 0;
    border-bottom: 1px solid var(--border-color, #0d7580);
}
.world1-combat-log-entry span {
    overflow-wrap: anywhere;
}
.world1-combat-fighter.is-defeated {
    opacity: .55;
}
@media (max-width: 800px) {
    .world1-combat-arena {
        grid-template-columns: 1fr;
    }
    .world1-combat-control {
        order: -1;
    }
    .world1-combat-action-form label,
    .world1-combat-log-entry {
        grid-template-columns: 1fr;
    }
    .world1-combat-attack {
        width: 100% !important;
    }
}

/* Exakte Welt-1-Struktur der Kampfansicht; Farben bleiben theme-gesteuert. */
.world1-infight-page,
.world1-infight-page * {
    box-sizing: border-box;
}
.world1-infight-page {
    padding: 1.2rem;
    background: var(--content-background, var(--panel-background, rgba(0,0,0,.08)));
}
.world1-infight-arena {
    display: grid;
    grid-template-columns: 1fr 2.8fr 1fr;
    gap: 1rem;
    align-items: start;
    padding: .4rem;
}
.world1-infight-side,
.world1-infight-center {
    border: .12rem solid var(--border-color, #0b7180);
    background: var(--panel-background, rgba(0,18,22,.72));
}
.world1-infight-side {
    padding: .55rem;
}
.world1-infight-center {
    padding: 1rem 2.3rem 1.3rem;
}
.world1-infight-title {
    margin: 0 0 1.1rem;
    text-align: center;
    font-size: 2.6rem;
    line-height: 1.05;
    font-weight: 900;
    color: var(--accent-color, #1ee7f2);
    text-shadow: .08rem .08rem 0 var(--border-color, #0b7180);
    background: linear-gradient(90deg, transparent, var(--heading-background, rgba(255,255,255,.16)), transparent);
}
.world1-infight-fighter {
    display: grid;
    gap: .35rem;
}
.world1-infight-fighter + .world1-infight-fighter {
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: .08rem solid var(--border-color, #0b7180);
}
.world1-infight-name {
    text-align: center;
    font-size: 1.05rem;
    color: var(--accent-color, #1ee7f2);
}
.world1-infight-side-right .world1-infight-name {
    color: var(--text-color, #fff);
}
.world1-infight-portrait {
    position: relative;
    width: 100%;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    display: grid;
    place-items: center;
    border: .08rem solid var(--border-color, #0b7180);
    background: var(--input-background, rgba(0,0,0,.3));
}
.world1-infight-portrait img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.world1-infight-portrait > span {
    font-size: 2.4rem;
}
.world1-infight-portrait em {
    position: absolute;
    inset: auto 0 0;
    padding: .18rem .3rem;
    text-align: center;
    font-style: normal;
    font-weight: 700;
    background: var(--button-background, #138ba0);
    color: var(--button-color, #fff);
    border-top: .08rem solid var(--border-color, #0b7180);
}
.world1-infight-meta {
    display: grid;
    line-height: 1.05;
}
.world1-infight-resource {
    display: grid;
    gap: .12rem;
}
.world1-infight-resource-text {
    text-align: center;
    font-weight: 700;
    line-height: 1;
}
.world1-infight-resource progress {
    width: 100%;
    height: .9rem;
    border: .08rem solid var(--border-color, #0b7180);
    background: var(--input-background, rgba(0,0,0,.3));
}
.world1-infight-resource-lp progress {
    accent-color: var(--life-color, #d90000);
}
.world1-infight-resource-kp progress {
    accent-color: var(--energy-color, #0000d8);
}
.world1-infight-status {
    height: 1rem;
    border: .08rem solid var(--border-color, #0b7180);
    background: var(--input-background, rgba(0,0,0,.18));
}
.world1-infight-form {
    display: grid;
    gap: .65rem;
}
.world1-infight-form label {
    display: grid;
    grid-template-columns: .42fr 1fr;
    gap: .7rem;
    align-items: center;
}
.world1-infight-form select,
.world1-infight-form input,
.world1-infight-form button {
    width: 100%;
}
.world1-infight-attack {
    justify-self: center;
    width: 38% !important;
}
.world1-infight-quick-actions {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: .55rem;
}
.world1-infight-result {
    text-align: center;
    padding: 1rem;
}
.world1-infight-result-finished strong,
.world1-infight-result-finished span {
    display: block;
}
.world1-infight-result-finished span {
    margin-top: .45rem;
}
.world1-infight-divider {
    margin: 1.4rem .4rem;
    border-top: .14rem solid var(--border-color, #0b7180);
}
.world1-infight-log {
    margin: 0 .4rem .4rem;
    border: .08rem solid var(--border-color, #0b7180);
    background: var(--panel-background, rgba(0,18,22,.5));
    padding: .75rem;
}
.world1-infight-log-inner {
    border: .08rem solid var(--border-color, #0b7180);
    background: var(--input-background, rgba(0,0,0,.12));
    padding: .5rem .75rem;
}
.world1-infight-log-entry {
    display: grid;
    grid-template-columns: .7fr 5fr;
    gap: .8rem;
    padding: .45rem 0;
    border-bottom: .08rem solid var(--border-color, #0b7180);
}
.world1-infight-log-entry:last-child {
    border-bottom: 0;
}
.world1-infight-log-entry p {
    margin: 0;
    overflow-wrap: anywhere;
}
.world1-infight-empty {
    text-align: center;
    padding: 1rem 0;
}
.world1-infight-fighter.is-defeated {
    opacity: .55;
}
@media (orientation: portrait) {
    .world1-infight-arena {
        grid-template-columns: 1fr;
    }
    .world1-infight-center {
        order: -1;
        padding-inline: 1rem;
    }
    .world1-infight-form label,
    .world1-infight-log-entry {
        grid-template-columns: 1fr;
    }
    .world1-infight-attack {
        width: 100% !important;
    }
}

/* Welt-1-Infight: Arena und rundenweise Kampflog-Darstellung */
.world1-infight-page {
    padding: 1.1rem;
}

.world1-infight-arena {
    display: grid;
    grid-template-columns: 1fr 3fr 1fr;
    gap: 1.1rem;
    align-items: start;
    padding: 0;
}

.world1-infight-side {
    padding: .45rem;
}

.world1-infight-center {
    padding: 1rem 2.6rem 1.25rem;
}

.world1-infight-title {
    margin-bottom: 1rem;
    font-size: 2.8rem;
}

.world1-infight-fighter {
    gap: .22rem;
}

.world1-infight-name {
    line-height: 1.1;
}

.world1-infight-portrait {
    aspect-ratio: 1 / 1;
}

.world1-infight-meta {
    gap: 0;
}

.world1-infight-resource {
    gap: .05rem;
}

.world1-infight-resource progress {
    display: block;
    inline-size: 100%;
    block-size: .85rem;
}

.world1-infight-status {
    block-size: .85rem;
}

.world1-infight-form {
    gap: .42rem;
}

.world1-infight-form label {
    grid-template-columns: .38fr 1fr;
    gap: .55rem;
}

.world1-infight-attack {
    inline-size: 34% !important;
}

.world1-infight-quick-actions {
    gap: .45rem;
}

.world1-infight-divider {
    margin: 1.8rem 0 1.2rem;
}

.world1-infight-log {
    margin: 0;
    padding: .7rem;
}

.world1-infight-round {
    border: .08rem solid var(--border-color, #0b7180);
    background: var(--input-background, rgba(0,0,0,.12));
    padding: 1rem;
}

.world1-infight-round + .world1-infight-round {
    border-top: 0;
}

.world1-infight-round h2 {
    margin: 0;
    padding: .35rem 0 1rem;
    text-align: center;
    font-size: 1.7rem;
    border-bottom: .08rem solid var(--border-color, #0b7180);
}

.world1-infight-round h2 span {
    margin-left: .55rem;
}

.world1-infight-round-events {
    display: grid;
    gap: 1rem;
    padding-top: 1.3rem;
}

.world1-infight-event {
    display: grid;
    grid-template-columns: 1fr 4.4fr;
    gap: 1rem;
    align-items: center;
}

.world1-infight-event-right {
    grid-template-columns: 4.4fr 1fr;
}

.world1-infight-event-right .world1-infight-event-image {
    grid-column: 2;
    grid-row: 1;
}

.world1-infight-event-right p {
    grid-column: 1;
    grid-row: 1;
    text-align: right;
}

.world1-infight-event-left p {
    text-align: left;
}

.world1-infight-event-image {
    aspect-ratio: 1 / 1;
    display: grid;
    place-items: center;
    overflow: hidden;
    border: .08rem solid var(--border-color, #0b7180);
    background: var(--panel-background, rgba(0,18,22,.65));
}

.world1-infight-event-image img {
    inline-size: 100%;
    block-size: 100%;
    object-fit: cover;
}

.world1-infight-event-image span {
    font-size: 2rem;
}

.world1-infight-event p {
    margin: 0;
    line-height: 1.45;
    overflow-wrap: anywhere;
}

.world1-infight-log-empty {
    padding: 1rem;
}

@media (orientation: portrait) {
    .world1-infight-arena {
        grid-template-columns: 1fr;
    }

    .world1-infight-center {
        order: -1;
        padding-inline: 1rem;
    }

    .world1-infight-event,
    .world1-infight-event-right {
        grid-template-columns: 1fr 3fr;
    }

    .world1-infight-event-right .world1-infight-event-image,
    .world1-infight-event-right p {
        grid-column: auto;
        grid-row: auto;
    }

    .world1-infight-event-right p {
        text-align: left;
    }
}

/* Infight-Finish: kompakte Welt-1-Karten im aktiven Welt-2-Theme */
.world1-infight-quick-actions,
.world1-infight-status {
    display: none;
}

.world1-infight-fighter {
    gap: .3rem;
}

.world1-infight-portrait {
    aspect-ratio: 1 / 1;
}

.world1-infight-meta {
    gap: .08rem;
    margin-top: .1rem;
}

.world1-infight-meta span,
.world1-infight-meta b {
    display: block;
}

.world1-infight-resource {
    position: relative;
    display: grid;
    margin-top: .12rem;
    overflow: hidden;
    border: .08rem solid var(--border-color, #0b7180);
    background: var(--input-background, rgba(0, 0, 0, .35));
}

.world1-infight-resource progress {
    grid-area: 1 / 1;
    inline-size: 100%;
    block-size: auto;
    margin: 0;
    padding: 0;
    border: 0;
    appearance: none;
    -webkit-appearance: none;
    background: transparent;
}

.world1-infight-resource progress::-webkit-progress-bar {
    background: var(--input-background, rgba(0, 0, 0, .35));
}

.world1-infight-resource-lp progress::-webkit-progress-value {
    background: var(--combat-lp-color, #d70000);
}

.world1-infight-resource-kp progress::-webkit-progress-value {
    background: var(--combat-kp-color, #0018c9);
}

.world1-infight-resource-lp progress::-moz-progress-bar {
    background: var(--combat-lp-color, #d70000);
}

.world1-infight-resource-kp progress::-moz-progress-bar {
    background: var(--combat-kp-color, #0018c9);
}

.world1-infight-resource-text {
    grid-area: 1 / 1;
    z-index: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: .35rem;
    padding: .13rem .25rem;
    color: var(--combat-bar-text-color, #fff);
    font-weight: 800;
    line-height: 1.1;
    text-shadow: 0 .08rem .12rem rgba(0, 0, 0, .95);
    pointer-events: none;
}

.world1-infight-resource-text span {
    font-weight: 900;
}

.world1-infight-form select,
.world1-infight-form input,
.world1-infight-form button {
    box-sizing: border-box;
    border: .08rem solid var(--border-color, #0b7180);
    background: var(--input-background, rgba(0, 0, 0, .42));
    color: var(--text-color, #fff);
    font: inherit;
    padding: .42rem .55rem;
    outline: none;
}

.world1-infight-form select:focus,
.world1-infight-form input:focus {
    border-color: var(--accent-color, #1ee7f2);
    box-shadow: 0 0 0 .08rem color-mix(in srgb, var(--accent-color, #1ee7f2) 40%, transparent);
}

.world1-infight-form button {
    cursor: pointer;
    font-weight: 800;
    background: var(--button-background, var(--heading-background, rgba(19, 139, 160, .75)));
    color: var(--button-color, #fff);
}

.world1-infight-form button:hover,
.world1-infight-form button:focus-visible {
    background: var(--button-hover-background, var(--accent-color, #1ee7f2));
    color: var(--button-hover-color, var(--content-background, #001014));
}

.world1-infight-attack {
    inline-size: auto !important;
    justify-self: center;
    padding-inline: 1.35rem !important;
}


/* Infight-Kampflog: Technikbilder, vollständige Rundentrenner und saubere Breite */
.world1-infight-log {
    padding-inline: 0;
}

.world1-infight-round {
    inline-size: 100%;
    box-sizing: border-box;
}

.world1-infight-round h2 {
    inline-size: 100%;
    box-sizing: border-box;
}

.world1-infight-event-image img {
    object-fit: contain;
}

/* Infight-Aktionsstatus: wartend blinkend, gewählt ruhig, besiegt als K.O. */
@keyframes world1-infight-action-pulse {
    0%, 100% { opacity: 1; }
    50% { opacity: .3; }
}

.world1-infight-action-state.is-pending {
    animation: none;
}

.world1-infight-action-state.is-pending > span,
.world1-infight-action-state.is-stunned > span {
    display: inline-block;
    animation: world1-infight-action-pulse 1s steps(2, end) infinite;
}

.world1-infight-action-state.is-ready {
    animation: none;
    background: var(--success-background, var(--button-background, #138ba0));
}

.world1-infight-action-state.is-ko {
    animation: none;
    background: var(--danger-background, #8b1620);
    color: var(--danger-color, #fff);
}

.world1-infight-resource.is-hidden-value .world1-infight-resource-text {
    display: none;
}

/* Infight-Ressourcen: sichtbare Balken, Header-nahe Farben und reine Zahlenanzeige */
.world1-infight-resource {
    display: grid;
    inline-size: 100%;
    padding: 0;
    overflow: hidden;
}

.world1-infight-resource progress {
    display: block;
    inline-size: 100%;
    block-size: 1.15em;
    min-inline-size: 0;
    opacity: 1;
}

.world1-infight-resource-text {
    inline-size: 100%;
    box-sizing: border-box;
    padding: 0 .2em;
    gap: 0;
    white-space: nowrap;
}

.world1-infight-resource-text b {
    inline-size: 100%;
    text-align: center;
}

.world1-infight-resource-lp.is-high progress::-webkit-progress-value { background: var(--combat-lp-color, #d71920); }
.world1-infight-resource-lp.is-medium progress::-webkit-progress-value { background: color-mix(in srgb, var(--combat-lp-color, #d71920) 82%, #000); }
.world1-infight-resource-lp.is-low progress::-webkit-progress-value { background: color-mix(in srgb, var(--combat-lp-color, #d71920) 65%, #000); }
.world1-infight-resource-lp.is-critical progress::-webkit-progress-value { background: color-mix(in srgb, var(--combat-lp-color, #d71920) 48%, #000); }
.world1-infight-resource-kp.is-high progress::-webkit-progress-value { background: var(--combat-kp-color, #124fe3); }
.world1-infight-resource-kp.is-medium progress::-webkit-progress-value { background: color-mix(in srgb, var(--combat-kp-color, #124fe3) 82%, #000); }
.world1-infight-resource-kp.is-low progress::-webkit-progress-value { background: color-mix(in srgb, var(--combat-kp-color, #124fe3) 65%, #000); }
.world1-infight-resource-kp.is-critical progress::-webkit-progress-value { background: color-mix(in srgb, var(--combat-kp-color, #124fe3) 48%, #000); }

.world1-infight-resource-lp.is-high progress::-moz-progress-bar { background: var(--combat-lp-color, #d71920); }
.world1-infight-resource-lp.is-medium progress::-moz-progress-bar { background: color-mix(in srgb, var(--combat-lp-color, #d71920) 82%, #000); }
.world1-infight-resource-lp.is-low progress::-moz-progress-bar { background: color-mix(in srgb, var(--combat-lp-color, #d71920) 65%, #000); }
.world1-infight-resource-lp.is-critical progress::-moz-progress-bar { background: color-mix(in srgb, var(--combat-lp-color, #d71920) 48%, #000); }
.world1-infight-resource-kp.is-high progress::-moz-progress-bar { background: var(--combat-kp-color, #124fe3); }
.world1-infight-resource-kp.is-medium progress::-moz-progress-bar { background: color-mix(in srgb, var(--combat-kp-color, #124fe3) 82%, #000); }
.world1-infight-resource-kp.is-low progress::-moz-progress-bar { background: color-mix(in srgb, var(--combat-kp-color, #124fe3) 65%, #000); }
.world1-infight-resource-kp.is-critical progress::-moz-progress-bar { background: color-mix(in srgb, var(--combat-kp-color, #124fe3) 48%, #000); }

/* Gegner behalten sichtbare Balken, erhalten aber keinerlei Label oder Zahlen. */
.world1-infight-resource.is-hidden-value .world1-infight-resource-text {
    display: none;
}

/* Nur der Text des wartenden Aktionsstatus blinkt; Rahmen und Hintergrund bleiben ruhig. */
.world1-infight-action-state > span { display: inline-block; }
.world1-infight-action-state.is-ready > span,
.world1-infight-action-state.is-ko > span { animation: none; opacity: 1; }

/* Infight-Kämpferkarten: kompakte Teamkarten nach der bereitgestellten Vorlage. */
.world1-infight-side {
    display: grid;
    align-content: start;
    gap: .5rem;
    padding: 0;
    border: 0;
    background: transparent;
}

.world1-infight-fighter,
.world1-infight-fighter + .world1-infight-fighter {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
    margin: 0;
    padding: 0;
    overflow: hidden;
    border: .08rem solid var(--border-color, #0b7180);
    border-radius: .35rem;
    background: var(--panel-background, rgba(0,18,22,.78));
    box-shadow: 0 .18rem .3rem rgba(0,0,0,.45);
}

.world1-infight-fighter-head {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: .4rem;
    padding: .22rem .45rem;
    border-bottom: .08rem solid var(--border-color, #0b7180);
    background: linear-gradient(180deg,
        color-mix(in srgb, var(--heading-background, #17343b) 80%, #fff 12%),
        var(--heading-background, #17343b));
}

.world1-infight-fighter-head > span {
    font-weight: 800;
    white-space: nowrap;
}

.world1-infight-name,
.world1-infight-side-right .world1-infight-name {
    color: var(--text-color, #fff);
    text-align: center;
    font-size: 1rem;
    line-height: 1.1;
    overflow-wrap: anywhere;
}

.world1-infight-fighter-body {
    display: grid;
    grid-template-columns: 2fr 3fr;
    align-items: stretch;
}

.world1-infight-portrait {
    inline-size: 100%;
    aspect-ratio: 1 / 1;
    border: 0;
    border-right: .08rem solid var(--border-color, #0b7180);
    background: var(--input-background, rgba(0,0,0,.3));
}

.world1-infight-fighter-data {
    display: grid;
    grid-template-rows: repeat(4, 1fr);
}

.world1-infight-ki-row,
.world1-infight-action-state,
.world1-infight-resource {
    display: grid;
    place-items: center;
    margin: 0;
    border: 0;
    border-bottom: .08rem solid color-mix(in srgb, var(--border-color, #0b7180) 75%, transparent);
    border-radius: 0;
    color: var(--combat-bar-text-color, #fff);
    font-weight: 900;
    text-align: center;
    text-shadow: 0 .08rem .12rem rgba(0,0,0,.9);
    overflow: hidden;
}

.world1-infight-ki-row {
    background: linear-gradient(180deg,
        color-mix(in srgb, var(--combat-kp-color, #124fe3) 72%, #fff 18%),
        color-mix(in srgb, var(--combat-kp-color, #124fe3) 78%, #000));
}

.world1-infight-resource {
    position: relative;
}

.world1-infight-resource progress {
    grid-area: 1 / 1;
    inline-size: 100%;
    block-size: 100%;
    appearance: none;
    -webkit-appearance: none;
    border: 0;
    background: color-mix(in srgb, var(--input-background, #001014) 70%, #000);
}

.world1-infight-resource-text {
    grid-area: 1 / 1;
    z-index: 1;
    inline-size: 100%;
    padding: .12rem .2rem;
    font-size: .92rem;
}

.world1-infight-resource-lp progress::-webkit-progress-value {
    background: linear-gradient(180deg,
        color-mix(in srgb, var(--combat-lp-color, #d71920) 75%, #fff 18%),
        color-mix(in srgb, var(--combat-lp-color, #d71920) 82%, #000));
}
.world1-infight-resource-kp progress::-webkit-progress-value {
    background: linear-gradient(180deg,
        color-mix(in srgb, var(--combat-kp-color, #124fe3) 75%, #fff 18%),
        color-mix(in srgb, var(--combat-kp-color, #124fe3) 82%, #000));
}
.world1-infight-resource-lp progress::-moz-progress-bar {
    background: var(--combat-lp-color, #d71920);
}
.world1-infight-resource-kp progress::-moz-progress-bar {
    background: var(--combat-kp-color, #124fe3);
}

.world1-infight-action-state {
    position: static;
    padding: .12rem .2rem;
    border-bottom: 0;
    background: linear-gradient(180deg,
        color-mix(in srgb, var(--button-background, #138ba0) 76%, #fff 14%),
        color-mix(in srgb, var(--button-background, #138ba0) 82%, #000));
    font-style: normal;
    font-size: .88rem;
}

.world1-infight-action-state.is-ready {
    background: linear-gradient(180deg,
        color-mix(in srgb, var(--success-background, #168a4b) 76%, #fff 14%),
        color-mix(in srgb, var(--success-background, #168a4b) 82%, #000));
}

.world1-infight-action-state.is-ko {
    background: linear-gradient(180deg,
        color-mix(in srgb, var(--danger-background, #8b1620) 76%, #fff 12%),
        color-mix(in srgb, var(--danger-background, #8b1620) 84%, #000));
}

.world1-infight-action-state.is-stunned {
    background: linear-gradient(180deg, #a66d00, #684400);
    color: #fff;
    font-weight: 900;
}

.world1-infight-stunned-form {
    text-align: center;
}

.world1-infight-stunned-note {
    box-sizing: border-box;
    padding: .55rem .65rem;
    border: 1px solid #a66d00;
    background: #2d2108;
    color: #ffe4a3;
    font-weight: 800;
}

.world1-infight-transformation {
    padding: .18rem .4rem;
    border-top: .08rem solid var(--border-color, #0b7180);
    background: var(--heading-background, rgba(255,255,255,.04));
    color: #00e5ff;
    color: attr(data-transformation-color type(<color>), #00e5ff);
    font-weight: 900;
    text-align: center;
    white-space: nowrap;
    overflow: hidden;
}

.world1-infight-status-effect {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
    min-height: 28px;
    padding: .18rem .42rem;
    gap: .45rem;
    border-top: .08rem solid var(--border-color, #0b7180);
    background: color-mix(in srgb, var(--heading-background, #07161a) 86%, #000);
    box-sizing: border-box;
    font-size: .76rem;
    font-weight: 900;
    line-height: 1.15;
    text-align: left;
    white-space: nowrap;
    overflow: hidden;
}

.world1-infight-status-effect strong {
    overflow: hidden;
    text-align: right;
    text-overflow: ellipsis;
}

.world1-infight-status-effect.is-curse {
    color: #e6b4ff;
    background: color-mix(in srgb, #4f1768 48%, var(--heading-background, #07161a));
}

.world1-infight-status-effect.is-stun {
    color: #ffe4a3;
    background: color-mix(in srgb, #684400 48%, var(--heading-background, #07161a));
}

.world1-infight-inactivity {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
    min-height: 31px;
    padding: 3px 5px;
    gap: 5px;
    border-top: 1px solid var(--border-color, #0b7180);
    box-sizing: border-box;
}

.world1-infight-inactivity-countdown {
    display: block;
    overflow: hidden;
    font-size: .78rem;
    font-weight: 900;
    line-height: 23px;
    text-align: center;
    white-space: nowrap;
}

.world1-infight-inactivity form {
    margin: 0;
}

.world1-infight-kick-button {
    width: 94px;
    height: 24px;
    padding: 0 5px;
    border: 1px solid var(--scroll-button-border, var(--border-color, #0b7180));
    background: var(--scroll-button-bg, var(--button-background, #138ba0));
    color: #fff !important;
    font: inherit;
    font-size: .68rem;
    font-weight: 900;
    line-height: 22px;
    cursor: pointer;
    box-sizing: border-box;
}

.world1-infight-kick-button:hover:not(:disabled) {
    background: var(--scroll-button-hover-bg, var(--nav-active-bg));
}

.world1-infight-kick-button:disabled {
    cursor: not-allowed;
    opacity: .48;
}

.world1-infight-fighter.is-defeated {
    opacity: .72;
}

/* Mehrere Kämpfer stehen untereinander wie in der Vorlage. */
.world1-infight-side-left .world1-infight-fighter,
.world1-infight-side-right .world1-infight-fighter {
    inline-size: 100%;
}

@media (orientation: portrait) {
    .world1-infight-fighter-body {
        grid-template-columns: 2fr 3fr;
    }
}

/* Infight-Teamkarten: mehr Raum für Kämpfer, kompaktere Aktionsmitte. */
.world1-infight-arena {
    grid-template-columns: 1.45fr 2.65fr 1.45fr;
    gap: 1.15rem;
}

.world1-infight-side {
    inline-size: 100%;
}

.world1-infight-fighter-body {
    grid-template-columns: 1.15fr 1.45fr;
}

.world1-infight-fighter-head {
    grid-template-columns: 70px 1fr;
    gap: .55rem;
    padding-inline: .6rem;
}

.world1-infight-fighter-head > span:first-child {
    text-align: left;
}

.world1-infight-name {
    text-align: right;
}

.world1-infight-center {
    inline-size: 100%;
    padding: .85rem 1.35rem 1.1rem;
}

.world1-infight-title {
    margin-bottom: .75rem;
    font-size: 2.45rem;
}

.world1-infight-form {
    gap: .5rem;
}

.world1-infight-form label {
    grid-template-columns: .32fr 1fr;
    gap: .65rem;
}

.world1-infight-form label > span {
    text-align: right;
    font-weight: 800;
}

.world1-infight-form select,
.world1-infight-form input {
    padding-block: .48rem;
    padding-inline: .65rem;
}

.world1-infight-attack {
    padding-block: .52rem !important;
    padding-inline: 1.65rem !important;
}

@media (orientation: portrait) {
    .world1-infight-arena {
        grid-template-columns: 1fr;
    }

    .world1-infight-center {
        padding-inline: 1rem;
    }

    .world1-infight-form label {
        grid-template-columns: 1fr;
    }

    .world1-infight-form label > span {
        text-align: left;
    }
}

/* Infight-Aktionsmitte passend zu den kompakten Teamkarten. */
.world1-infight-center {
    align-self: start;
    border-radius: .45rem;
    overflow: hidden;
    padding: 0;
    background: linear-gradient(180deg, rgba(0, 217, 236, .08), rgba(0, 0, 0, .12));
    box-shadow: 0 .35rem .85rem rgba(0, 0, 0, .3);
}

.world1-infight-title {
    margin: 0;
    padding: .45rem .8rem;
    font-size: 1.85rem;
    line-height: 1.1;
    text-align: center;
    border-bottom: 1px solid var(--border-color, #087d8f);
    background: linear-gradient(90deg, rgba(0, 217, 236, .03), rgba(0, 217, 236, .18), rgba(0, 217, 236, .03));
}

.world1-infight-title.world1-infight-title-moon {
    color: #fff;
    background-image:
        linear-gradient(90deg, rgba(0, 0, 0, .72), rgba(0, 0, 0, .28), rgba(0, 0, 0, .72)),
        url("/asset?file=assets%2Ffights%2Fmoon.png");
    background-position: center 46%;
    background-repeat: no-repeat;
    background-size: cover;
    text-shadow: 0 1px 3px #000, 0 0 8px #000;
}

.world1-infight-form {
    display: grid;
    gap: .45rem;
    padding: .8rem 1rem 1rem;
}

.world1-infight-form label {
    display: grid;
    grid-template-columns: 24% 76%;
    gap: 0;
    align-items: stretch;
}

.world1-infight-form label > span {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding-inline-end: .65rem;
    font-weight: 800;
    background: rgba(0, 0, 0, .16);
    border: 1px solid var(--border-color, #087d8f);
    border-inline-end: 0;
}

.world1-infight-form select,
.world1-infight-form input {
    inline-size: 100%;
    box-sizing: border-box;
    margin: 0;
    border-radius: 0;
    border: 1px solid var(--border-color, #087d8f);
    background: var(--input-background, #001114);
    color: var(--text-color, #fff);
    padding: .52rem .65rem;
}

.world1-infight-form select:focus,
.world1-infight-form input:focus {
    outline: 1px solid var(--accent-color, #00d9ec);
    outline-offset: 0;
}

.world1-infight-attack {
    justify-self: center;
    margin-block-start: .2rem;
    border-radius: .2rem;
    padding: .55rem 2.2rem !important;
    font-weight: 900;
}

@media (orientation: portrait) {
    .world1-infight-form label {
        grid-template-columns: 1fr;
    }

    .world1-infight-form label > span {
        justify-content: flex-start;
        border-inline-end: 1px solid var(--border-color, #087d8f);
        border-block-end: 0;
        padding: .35rem .55rem;
    }
}

/* Infight-Kampflog: optisch als Teil derselben Kartenoberfläche. */
.world1-infight-log {
    display: grid;
    gap: .9rem;
    padding: .9rem;
    border: .08rem solid var(--border-color, #0b7180);
    background: linear-gradient(180deg,
        color-mix(in srgb, var(--panel-background, #001216) 92%, var(--accent-color, #00d9ec) 8%),
        var(--panel-background, #001216));
    box-shadow: 0 .35rem .85rem rgba(0, 0, 0, .3);
}

.world1-infight-round {
    display: grid;
    gap: 0;
    overflow: hidden;
    border: .08rem solid var(--border-color, #0b7180);
    border-radius: .4rem;
    background: var(--content-background, rgba(0, 12, 15, .78));
    box-shadow: 0 .2rem .45rem rgba(0, 0, 0, .28);
}

.world1-infight-round h2 {
    margin: 0;
    padding: .48rem .75rem;
    border: 0;
    border-bottom: .08rem solid var(--border-color, #0b7180);
    background: linear-gradient(180deg,
        color-mix(in srgb, var(--heading-background, #17343b) 80%, #fff 10%),
        var(--heading-background, #17343b));
    color: var(--text-color, #fff);
    font-size: 1.15rem;
    line-height: 1.2;
    text-align: center;
    text-shadow: 0 .08rem .12rem rgba(0, 0, 0, .9);
}

.world1-infight-round-events {
    display: grid;
    gap: .7rem;
    padding: .75rem;
}

.world1-infight-event {
    display: grid;
    grid-template-columns: 16% 1fr;
    align-items: center;
    gap: .75rem;
    padding: .55rem;
    border: .08rem solid color-mix(in srgb, var(--border-color, #0b7180) 72%, transparent);
    border-radius: .35rem;
    background: linear-gradient(90deg,
        color-mix(in srgb, var(--heading-background, #17343b) 32%, transparent),
        color-mix(in srgb, var(--content-background, #001014) 92%, transparent));
}

.world1-infight-event-right {
    grid-template-columns: 1fr 16%;
    background: linear-gradient(270deg,
        color-mix(in srgb, var(--heading-background, #17343b) 32%, transparent),
        color-mix(in srgb, var(--content-background, #001014) 92%, transparent));
}

.world1-infight-event-right .world1-infight-event-image {
    grid-column: 2;
    grid-row: 1;
}

.world1-infight-event-right p {
    grid-column: 1;
    grid-row: 1;
    text-align: right;
}

.world1-infight-event-image {
    display: grid;
    place-items: center;
    inline-size: 100%;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    border: .08rem solid var(--border-color, #0b7180);
    background: var(--input-background, rgba(0, 0, 0, .35));
}

.world1-infight-event-image img {
    inline-size: 100%;
    block-size: 100%;
    object-fit: contain;
}

.world1-infight-event p {
    margin: 0;
    color: var(--text-color, #fff);
    font-size: .95rem;
    line-height: 1.5;
    overflow-wrap: anywhere;
}

.world1-infight-log-empty {
    padding: 1rem;
}

@media (orientation: portrait) {
    .world1-infight-event,
    .world1-infight-event-right {
        grid-template-columns: 24% 1fr;
    }

    .world1-infight-event-right .world1-infight-event-image {
        grid-column: 1;
    }

    .world1-infight-event-right p {
        grid-column: 2;
        text-align: left;
    }
}

/* Kampflog: Sprechtexte kompakt, Technikbilder vollständig in ihrer Bildfläche. */
.world1-infight-event-image img {
    inline-size: 100%;
    block-size: 100%;
    object-fit: cover;
    object-position: center;
}

.world1-infight-event-type-speech {
    inline-size: 68%;
    grid-template-columns: 11% 1fr;
    gap: .5rem;
    padding: .35rem .5rem;
    justify-self: start;
    background: color-mix(in srgb, var(--heading-background, #17343b) 20%, var(--content-background, #001014));
}

.world1-infight-event-type-speech.world1-infight-event-right {
    grid-template-columns: 1fr 11%;
    justify-self: end;
}

.world1-infight-event-type-speech p {
    font-size: .9rem;
    line-height: 1.35;
}

@media (orientation: portrait) {
    .world1-infight-event-type-speech,
    .world1-infight-event-type-speech.world1-infight-event-right {
        inline-size: 88%;
        grid-template-columns: 14% 1fr;
    }

    .world1-infight-event-type-speech.world1-infight-event-right .world1-infight-event-image {
        grid-column: 1;
    }

    .world1-infight-event-type-speech.world1-infight-event-right p {
        grid-column: 2;
        text-align: left;
    }
}

/* Kompakter Kampflog im Chat-Verlauf: alle Aktionen wirken wie Nachrichten. */
.world1-infight-round-events {
    gap: .45rem;
    padding: .6rem;
}

.world1-infight-event,
.world1-infight-event-right {
    inline-size: 72%;
    grid-template-columns: 12% 1fr;
    gap: .5rem;
    padding: .38rem;
    align-items: center;
    box-shadow: 0 .12rem .28rem rgba(0, 0, 0, .22);
}

.world1-infight-event-left {
    justify-self: start;
}

.world1-infight-event-right {
    justify-self: end;
    grid-template-columns: 1fr 12%;
}

.world1-infight-event-image {
    inline-size: 100%;
    aspect-ratio: 1 / 1;
}

.world1-infight-event-image img {
    inline-size: 100%;
    block-size: 100%;
    object-fit: cover;
}

.world1-infight-event p {
    font-size: .88rem;
    line-height: 1.35;
}

@media (orientation: portrait) {
    .world1-infight-event,
    .world1-infight-event-right {
        inline-size: 88%;
        grid-template-columns: 16% 1fr;
    }

    .world1-infight-event-right {
        grid-template-columns: 1fr 16%;
    }
}


/* Welt-2-Kampflog: Team-Aktionen je Runde sauber gruppieren. */
.world1-infight-round-events {
    display: grid;
    gap: .85rem;
}

.world1-infight-event-group {
    display: grid;
    gap: .45rem;
    padding: .15rem 0;
}

.world1-infight-event-group-left {
    justify-items: start;
}

.world1-infight-event-group-right {
    justify-items: end;
}


/* Kampflog: Jedes Team behaelt in allen Runden seine feste linke/rechte Spalte. */
.world1-infight-team-groups {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .85rem;
    align-items: start;
}

.world1-infight-team-group {
    display: grid;
    gap: .45rem;
    align-content: start;
    padding: 0;
    box-sizing: border-box;
    border: 0;
    border-radius: 0;
    background: transparent;
}

.world1-infight-team-group-left {
    grid-column: 1;
}

.world1-infight-team-group-right {
    grid-column: 2;
}

.world1-infight-team-group h3 {
    width: 72%;
    margin: 0;
    padding: .25rem .55rem;
    box-sizing: border-box;
    border-bottom: .08rem solid color-mix(in srgb, var(--border-color, #0b7180) 65%, transparent);
    color: color-mix(in srgb, var(--text-color, #fff) 72%, transparent);
    font-size: .78rem;
    line-height: 1.2;
    text-transform: uppercase;
    letter-spacing: .04rem;
}

.world1-infight-team-group-left h3 {
    justify-self: start;
    text-align: left;
}

.world1-infight-team-group-right h3 {
    justify-self: end;
    text-align: right;
}

.world1-infight-team-events {
    display: grid;
    gap: .4rem;
    width: 100%;
}

.world1-infight-team-group .world1-infight-event,
.world1-infight-team-group .world1-infight-event-right {
    inline-size: 72%;
    width: 72%;
    box-sizing: border-box;
}

.world1-infight-team-group-left .world1-infight-event {
    justify-self: start;
}

.world1-infight-team-group-right .world1-infight-event {
    justify-self: end;
}

.world1-infight-team-empty {
    width: 72%;
    padding: .7rem;
    box-sizing: border-box;
    color: color-mix(in srgb, var(--text-color, #fff) 55%, transparent);
    font-size: .82rem;
    text-align: center;
}

.world1-infight-team-group-left .world1-infight-team-empty {
    justify-self: start;
}

.world1-infight-team-group-right .world1-infight-team-empty {
    justify-self: end;
}

@media (orientation: portrait) {
    .world1-infight-team-groups {
        grid-template-columns: minmax(0, 1fr);
    }

    .world1-infight-team-group-left,
    .world1-infight-team-group-right {
        grid-column: 1;
    }

    .world1-infight-team-group h3,
    .world1-infight-team-group .world1-infight-event,
    .world1-infight-team-group .world1-infight-event-right,
    .world1-infight-team-empty {
        inline-size: 88%;
        width: 88%;
    }
}

.world1-infight-log-actor {
    color: #f2c14e;
    font-weight: 900;
    text-shadow: 0 .06rem .1rem rgba(0, 0, 0, .9);
}

.world1-infight-log-target {
    color: #ff5c5c;
    font-weight: 900;
    text-shadow: 0 .06rem .1rem rgba(0, 0, 0, .9);
}

/* NPC-Kampf: feste, etwas breitere Kämpferkarten und lesbare große Werte. */
.world1-infight-arena {
    grid-template-columns: 245px 1fr 245px;
}

.world1-infight-side,
.world1-infight-side-left,
.world1-infight-side-right {
    width: 245px;
}

.world1-infight-fighter,
.world1-infight-fighter + .world1-infight-fighter,
.world1-infight-side-left .world1-infight-fighter,
.world1-infight-side-right .world1-infight-fighter {
    width: 245px;
}

.world1-infight-fighter-head {
    grid-template-columns: 70px 1fr;
}

.world1-infight-fighter-body {
    grid-template-columns: 96px 147px;
}

.world1-infight-resource-text,
.world1-infight-resource-text b {
    white-space: nowrap;
    overflow: hidden;
    font-variant-numeric: tabular-nums;
}

.world1-infight-resource.is-value-compact .world1-infight-resource-text {
    font-size: .76rem;
    letter-spacing: -.01rem;
}

.world1-infight-resource.is-value-dense .world1-infight-resource-text {
    font-size: .65rem;
    letter-spacing: -.015rem;
}

.world1-infight-resource.is-value-tiny .world1-infight-resource-text {
    font-size: .55rem;
    letter-spacing: -.02rem;
}

/* Der nicht gefüllte Bereich bleibt wie im Header dunkelrot bzw. dunkelblau sichtbar. */
.world1-infight-resource-lp,
.world1-infight-resource-lp progress,
.world1-infight-resource-lp progress::-webkit-progress-bar {
    background: #3b0707;
}

.world1-infight-resource-kp,
.world1-infight-resource-kp progress,
.world1-infight-resource-kp progress::-webkit-progress-bar {
    background: #061f3f;
}

@media (orientation: portrait) {
    .world1-infight-arena {
        grid-template-columns: 1fr;
    }

    .world1-infight-side-right {
        justify-self: end;
    }
}


/* Welt-2 Kampfzentrale: Lobby, aktive Kämpfe und Kampfberichte */
.fight-hub-page,
.fight-create-page,
.fight-join-page,
.fight-history-page,
.fight-history-detail,
.fight-watch-page,
.fight-active-empty {
    width: 950px;
}

.fight-hub-toolbar,
.fight-subnav {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 914px;
    height: 38px;
    margin-top: 14px;
    margin-bottom: 14px;
}

.fight-hub-toolbar a,
.fight-subnav a,
.fight-back-link,
.fight-action-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 32px;
    padding: 0 14px;
    border: 1px solid var(--border-color, #0b7180);
    background: var(--button-background, #174e58);
    color: var(--button-color, #fff);
    font-weight: 800;
    text-decoration: none;
}

.fight-hub-toolbar a:hover,
.fight-subnav a:hover,
.fight-back-link:hover,
.fight-action-link:hover {
    background: var(--button-hover-background, #138ba0);
    color: var(--button-hover-color, #fff);
}

.fight-hub-toolbar-bottom {
    margin-top: 18px;
    margin-bottom: 0;
}

.world1-infight-watch-controls {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    width: 100%;
    margin-top: 4px;
    padding-bottom: 12px;
}

.world1-infight-watch-controls a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 190px;
    height: 32px;
    border: 1px solid var(--border-color, #0b7180);
    background: var(--button-background, #174e58);
    color: var(--button-color, #fff);
    font-weight: 800;
    text-decoration: none;
}

.world1-infight-watch-controls a:hover {
    background: var(--button-hover-background, #138ba0);
    color: var(--button-hover-color, #fff);
}

.fight-live-root,
.fight-directory-section,
.fight-directory-table,
.fight-history-table {
    width: 914px;
}

.fight-directory-section + .fight-directory-section {
    margin-top: 18px;
}

.fight-directory-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 914px;
    height: 38px;
    padding: 0 12px;
    box-sizing: border-box;
    border: 1px solid var(--border-color, #0b7180);
    background: var(--heading-background, #17343b);
}

.fight-directory-heading h2 {
    margin: 0;
    font-size: 17px;
}

.fight-directory-heading > span {
    display: grid;
    place-items: center;
    width: 34px;
    height: 24px;
    border: 1px solid var(--border-color, #0b7180);
    background: var(--input-background, #001014);
    font-weight: 900;
}

.fight-directory-empty {
    width: 914px;
    padding: 20px 14px;
    box-sizing: border-box;
    border: 1px solid var(--border-color, #0b7180);
    border-top: 0;
    text-align: center;
}

.fight-directory-row {
    display: grid;
    grid-template-columns: 420px 250px 220px;
    column-gap: 10px;
    align-items: center;
    width: 914px;
    padding: 8px 7px;
    box-sizing: border-box;
    border: 1px solid var(--border-color, #0b7180);
    border-top: 0;
    background: var(--panel-background, rgba(0, 18, 22, .78));
}

.fight-directory-row-head {
    height: 34px;
    padding-top: 0;
    padding-bottom: 0;
    background: var(--heading-background, #17343b);
    font-weight: 900;
    text-align: center;
}

.fight-directory-teams {
    display: grid;
    grid-template-columns: 190px 24px 190px;
    align-items: center;
    gap: 5px;
    width: 414px;
    text-align: center;
}

.fight-directory-teams strong {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.fight-team-one {
    color: #4aa3ff;
}

.fight-team-two {
    color: #ff4040;
}

.fight-directory-type {
    display: grid;
    gap: 3px;
    width: 250px;
    text-align: center;
}

.fight-directory-type strong,
.fight-directory-type span {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.fight-directory-type span {
    font-size: 12px;
    opacity: .82;
}

.fight-password-mark {
    justify-self: center;
    width: 72px;
    padding: 2px 5px;
    border: 1px solid var(--border-color, #0b7180);
    font-size: 11px;
    font-weight: 900;
}

.fight-directory-actions {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 5px;
    width: 220px;
}

.fight-inline-form {
    display: inline-flex;
    margin: 0;
}

.fight-inline-form button {
    height: 32px;
    padding: 0 12px;
    border: 1px solid var(--border-color, #0b7180);
    background: var(--button-background, #174e58);
    color: var(--button-color, #fff);
    font-weight: 800;
    cursor: pointer;
}

.fight-inline-form button:hover {
    background: var(--button-hover-background, #138ba0);
}

.fight-inline-form button.is-danger {
    background: #74212a;
}

.fight-inline-form button.is-compact {
    padding: 0 7px;
    font-size: 11px;
}

.fight-create-form,
.fight-join-form {
    display: grid;
    gap: 12px;
    width: 700px;
    margin-top: 18px;
}

.fight-create-form label,
.fight-join-form label {
    display: grid;
    grid-template-columns: 190px 500px;
    align-items: center;
    gap: 10px;
    width: 700px;
}

.fight-create-form label > span,
.fight-join-form label > span {
    font-weight: 900;
    text-align: right;
}

.fight-create-form input,
.fight-create-form select,
.fight-join-form input,
.fight-join-form select {
    width: 500px;
    height: 38px;
    padding: 0 10px;
    border: 1px solid var(--border-color, #0b7180);
    background: var(--input-background, #001014);
    color: var(--text-color, #fff);
    box-sizing: border-box;
}

.fight-create-team-sizes {
    display: grid;
    grid-template-columns: 340px 340px;
    gap: 20px;
    width: 700px;
}

.fight-create-team-sizes label {
    grid-template-columns: 110px 220px;
    width: 340px;
}

.fight-create-team-sizes select {
    width: 220px;
}

.fight-create-form > button,
.fight-join-form > button {
    justify-self: center;
    width: 220px;
    height: 38px;
    border: 1px solid var(--border-color, #0b7180);
    background: var(--button-background, #174e58);
    color: var(--button-color, #fff);
    font-weight: 900;
    cursor: pointer;
}

.fight-create-note {
    width: 700px;
    padding: 10px 12px;
    box-sizing: border-box;
    border: 1px solid var(--border-color, #0b7180);
    background: var(--panel-background, rgba(0, 18, 22, .78));
    text-align: center;
}

.fight-join-summary,
.fight-watch-status {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 18px;
    width: 914px;
    height: 38px;
    border: 1px solid var(--border-color, #0b7180);
    background: var(--heading-background, #17343b);
}

.fight-join-teams {
    display: grid;
    grid-template-columns: 442px 442px;
    gap: 30px;
    width: 914px;
    margin-top: 14px;
}

.fight-join-teams article {
    display: grid;
    gap: 8px;
    width: 442px;
    padding: 10px;
    box-sizing: border-box;
    border: 1px solid var(--border-color, #0b7180);
    background: var(--panel-background, rgba(0, 18, 22, .78));
    text-align: center;
}

.fight-join-teams h2 {
    margin: 0;
    font-size: 17px;
}

.fight-team-member-list {
    display: grid;
    gap: 4px;
}

.fight-team-slot-empty {
    opacity: .65;
}

.fight-history-row {
    display: grid;
    grid-template-columns: 250px 430px 210px;
    column-gap: 10px;
    align-items: center;
    width: 914px;
    padding: 8px 7px;
    box-sizing: border-box;
    border: 1px solid var(--border-color, #0b7180);
    border-top: 0;
    background: var(--panel-background, rgba(0, 18, 22, .78));
    text-align: center;
}

.fight-history-row-head {
    height: 34px;
    padding-top: 0;
    padding-bottom: 0;
    background: var(--heading-background, #17343b);
    font-weight: 900;
}

.fight-history-row > div:first-child {
    display: grid;
    gap: 3px;
}

.fight-history-row > div:first-child span {
    font-size: 11px;
    opacity: .8;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.fight-history-vs,
.fight-history-detail-vs {
    display: grid;
    grid-template-columns: 190px 30px 190px;
    align-items: center;
    justify-content: center;
    gap: 5px;
}

.fight-history-detail-vs {
    width: 914px;
    height: 42px;
    border: 1px solid var(--border-color, #0b7180);
    background: var(--heading-background, #17343b);
    text-align: center;
}

.fight-pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 5px;
    width: 914px;
    margin: 16px 18px 0 18px;
}

.fight-pagination a,
.fight-pagination span {
    display: grid;
    place-items: center;
    height: 30px;
    padding: 0 9px;
    border: 1px solid var(--border-color, #0b7180);
    text-decoration: none;
}

.fight-pagination a.is-active {
    background: var(--button-background, #174e58);
    font-weight: 900;
}

.fight-history-log-list {
    display: grid;
    gap: 7px;
    width: 914px;
}

.fight-history-log-list p {
    width: 886px;
    margin: 0;
    padding: 8px 12px;
    border: 1px solid var(--border-color, #0b7180);
}

/* Welt-1-artige Kampflobby-Erstellung, weiterhin mit festen Welt-2-Maßen. */
.fight-create-team-row {
    display: grid;
    grid-template-columns: 190px 220px 40px 220px;
    align-items: center;
    gap: 10px;
    width: 700px;
}

.fight-create-team-label {
    font-weight: 900;
    text-align: right;
}

.fight-create-team-row select {
    width: 220px;
    height: 38px;
    padding: 0 10px;
    border: 1px solid var(--border-color, #0b7180);
    background: var(--input-background, #001014);
    color: var(--text-color, #fff);
    box-sizing: border-box;
}

.fight-create-vs {
    text-align: center;
}

.fight-create-password-row {
    display: grid;
    gap: 8px;
    width: 700px;
}

.fight-create-password-row label {
    width: 700px;
}

.fight-create-type-info {
    display: grid;
    gap: 6px;
    width: 700px;
}

.fight-create-type-info article {
    display: grid;
    grid-template-columns: 150px 530px;
    gap: 10px;
    width: 700px;
    padding: 8px 10px;
    border: 1px solid var(--border-color, #0b7180);
    background: var(--panel-background, rgba(0, 18, 22, .78));
    box-sizing: border-box;
}

.fight-create-type-info article strong {
    text-align: right;
}

/* CreateFight V2 - Welt-1-Aufbau im Welt-2-Design */
.fight-create-shell {
    display: grid;
    grid-template-columns: 292px 560px;
    gap: 22px;
    width: 874px;
    margin: 18px 20px 8px 20px;
    align-items: stretch;
}

.fight-create-visual {
    position: relative;
    width: 292px;
    height: 486px;
    overflow: hidden;
    border: 1px solid var(--border-color, #0b7180);
    background:
        linear-gradient(180deg, rgba(0, 221, 238, .14), rgba(0, 12, 16, .96) 48%, rgba(0, 12, 16, 1)),
        var(--panel-background, #001216);
    box-shadow: inset 0 0 34px rgba(0, 221, 238, .07);
}

.fight-create-visual::before {
    content: "";
    position: absolute;
    left: 18px;
    top: 56px;
    width: 254px;
    height: 1px;
    background: var(--border-color, #0b7180);
}

.fight-create-visual-title {
    position: absolute;
    left: 0;
    top: 16px;
    width: 292px;
    text-align: center;
    color: #1be5f2;
    font-size: 20px;
    font-weight: 950;
    letter-spacing: 1px;
    text-shadow: 0 0 12px rgba(0, 229, 242, .24);
}

.fight-create-visual img {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 292px;
    height: 400px;
    object-fit: contain;
    object-position: left bottom;
}

.fight-create-visual-copy {
    position: absolute;
    left: 18px;
    bottom: 14px;
    z-index: 2;
    display: grid;
    gap: 3px;
    width: 256px;
    padding: 8px 9px;
    border: 1px solid rgba(11, 113, 128, .78);
    background: rgba(0, 10, 13, .88);
    box-sizing: border-box;
    text-align: center;
}

.fight-create-visual-copy strong {
    color: #fff;
    font-size: 13px;
}

.fight-create-visual-copy span {
    color: rgba(255, 255, 255, .72);
    font-size: 11px;
    line-height: 1.25;
}

.fight-create-panel {
    width: 560px;
    height: 486px;
    border: 1px solid var(--border-color, #0b7180);
    background: var(--panel-background, rgba(0, 18, 22, .84));
    box-sizing: border-box;
}

.fight-create-panel-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 558px;
    height: 52px;
    padding: 0 16px;
    border-bottom: 1px solid var(--border-color, #0b7180);
    background: linear-gradient(180deg, rgba(28, 82, 92, .92), rgba(16, 53, 61, .92));
    box-sizing: border-box;
}

.fight-create-panel-head span {
    color: #18dceb;
    font-size: 12px;
    font-weight: 950;
    letter-spacing: 1px;
}

.fight-create-panel-head strong {
    color: #fff;
    font-size: 18px;
}

.fight-create-form-v2 {
    display: grid;
    gap: 10px;
    width: 520px;
    margin: 18px 19px 0 19px;
}

.fight-create-field {
    display: grid;
    grid-template-columns: 132px 378px;
    gap: 10px;
    align-items: center;
    width: 520px;
}

.fight-create-field label,
.fight-create-field-label {
    color: #fff;
    font-weight: 900;
    text-align: right;
}

.fight-create-field input,
.fight-create-field select {
    width: 378px;
    height: 38px;
    padding: 0 10px;
    border: 1px solid var(--border-color, #0b7180);
    background: var(--input-background, #001014);
    color: var(--text-color, #fff);
    box-sizing: border-box;
    outline: 0;
}

.fight-create-field input:focus,
.fight-create-field select:focus {
    border-color: #16dceb;
    box-shadow: 0 0 0 1px rgba(22, 220, 235, .24);
}

.fight-create-field input:disabled,
.fight-create-field select:disabled {
    cursor: not-allowed;
    opacity: .48;
}

.fight-create-team-control {
    display: grid;
    grid-template-columns: 166px 26px 166px;
    gap: 10px;
    align-items: center;
    width: 378px;
}

.fight-create-team-control select {
    width: 166px;
}

.fight-create-team-control strong {
    color: #18dceb;
    font-size: 12px;
    text-align: center;
}

.fight-create-type-info-v2 {
    width: 520px;
    height: 104px;
}

.fight-create-type-info-v2--ranked {
    height: 194px;
}

.fight-create-type-info-v2[hidden] {
    display: none;
}

.fight-create-type-card {
    width: 520px;
    height: 104px;
    padding: 10px 12px;
    border: 1px solid var(--border-color, #0b7180);
    background: linear-gradient(90deg, rgba(0, 36, 43, .94), rgba(0, 17, 21, .96));
    box-sizing: border-box;
}

.fight-create-type-card[hidden] {
    display: none;
}

.fight-create-type-card-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 494px;
    height: 22px;
}

.fight-create-type-card-head strong {
    color: #19e0ee;
    font-size: 15px;
}

.fight-create-type-card-head span {
    color: #fff;
    font-size: 11px;
    font-weight: 900;
}

.fight-create-type-card p {
    width: 494px;
    height: 34px;
    margin: 4px 0 2px 0;
    overflow: hidden;
    color: rgba(255, 255, 255, .86);
    font-size: 11px;
    line-height: 17px;
}

.fight-create-type-card--ranked {
    height: 194px;
}

.fight-create-type-card--ranked p {
    height: 17px;
}

.fight-create-type-card--ranked .fight-create-ranked-limit {
    width: 494px;
    height: 34px;
    margin: 3px 0 5px;
    color: var(--text-color, #fff);
    font-size: 11px;
    line-height: 17px;
    overflow: hidden;
}

.fight-create-ranked-rewards {
    display: grid;
    grid-template-rows: 16px 16px 16px;
    width: 494px;
    height: 48px;
    margin: 2px 0;
    color: var(--text-color, #fff);
    font-size: 11px;
    line-height: 16px;
}

.fight-create-ranked-rewards span {
    display: grid;
    grid-template-columns: 92px 1fr;
}

.fight-create-ranked-rewards strong {
    display: block;
    color: var(--heading-color, #19e0ee);
}

.fight-create-type-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 494px;
    height: 20px;
    color: rgba(255, 255, 255, .66);
    font-size: 10px;
}

.fight-create-submit-row {
    display: flex;
    justify-content: center;
    width: 520px;
    height: 40px;
}

.fight-create-submit-row button {
    width: 220px;
    height: 38px;
    border: 1px solid var(--border-color, #0b7180);
    background: var(--button-background, #176f80);
    color: #fff;
    font-weight: 950;
    cursor: pointer;
}

.fight-create-submit-row button:hover:not(:disabled) {
    background: var(--button-hover-background, #138ba0);
}

.fight-create-submit-row button:disabled {
    cursor: not-allowed;
    opacity: .42;
}



/* Spielerkampf: Wartebereich nach abgegebener Aktion */
.world1-infight-waiting {
    display: flex;
    width: 100%;
    flex-direction: column;
    align-items: center;
    gap: 10px;
}

.world1-infight-refresh-button {
    display: inline-flex;
    width: 180px;
    height: 38px;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--border-color);
    background: var(--button-bg);
    color: var(--button-text);
    font-weight: 700;
    text-decoration: none;
    box-sizing: border-box;
}

.world1-infight-refresh-button:hover,
.world1-infight-refresh-button:focus-visible {
    filter: brightness(1.12);
}


/* Kampfabschluss wie in Welt 1, aber im Welt-2-Look. */
.fight-end-screen {
    padding: 24px;
    text-align: center;
}

.fight-end-panel {
    width: 560px;
    margin: 12px auto;
    padding: 18px 20px 20px;
    border: 1px solid #00b9ca;
    background: #07171a;
    box-shadow: 0 0 18px rgba(0, 229, 255, 0.12) inset;
}

.fight-end-kicker {
    height: 28px;
    line-height: 28px;
    color: #9feef5;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: 13px;
    font-weight: 700;
}

.fight-end-panel h1 {
    margin: 2px 0 12px;
    font-size: 28px;
    line-height: 34px;
    color: #00e5ff;
}

.fight-end-image-frame {
    width: 500px;
    height: 278px;
    margin: 0 auto 12px;
    overflow: hidden;
    border: 1px solid #087f8d;
    background: #02090b;
}

.fight-end-image-frame img {
    display: block;
    width: 500px;
    height: 278px;
    object-fit: contain;
}

.fight-end-panel p {
    margin: 8px 0;
    font-size: 16px;
    font-weight: 700;
    color: #f4fbfc;
}

.fight-end-gewonnen h1,
.fight-end-gewonnen .fight-end-kicker {
    color: #7cff9b;
}

.fight-end-verloren h1,
.fight-end-verloren .fight-end-kicker {
    color: #ff6d70;
}

.fight-end-unentschieden h1,
.fight-end-unentschieden .fight-end-kicker {
    color: #ffd86a;
}

.fight-end-redirect-text {
    margin-top: 12px;
    color: #b8d9dd;
    font-size: 13px;
}

.fight-end-loader {
    width: 500px;
    height: 8px;
    margin: 8px auto 12px;
    overflow: hidden;
    border: 1px solid #075d68;
    background: #001013;
}

.fight-end-loader span {
    display: block;
    width: 500px;
    height: 8px;
    background: linear-gradient(90deg, #006a78, #00e5ff, #006a78);
    transform-origin: left center;
    animation: fight-end-countdown 5s linear forwards;
}

.fight-end-report-link {
    display: inline-block;
    padding: 9px 18px;
    border: 1px solid #00aabd;
    background: #0b5560;
    color: #ffffff;
    font-weight: 700;
    text-decoration: none;
}

.fight-end-report-link:hover {
    background: #087381;
}

@keyframes fight-end-countdown {
    from { transform: scaleX(1); }
    to { transform: scaleX(0); }
}

/* Spielerkampf-Abschluss: zentrierte Ergebnisbuehne ohne Eingriff in Redirect-Logik. */
.content-box.fight-end-screen {
    box-sizing: border-box;
    width: 950px;
    padding: 30px 0 34px;
    position: relative;
    overflow: hidden;
    text-align: center;
    background:
        linear-gradient(180deg, rgba(0, 229, 255, .045), rgba(0, 0, 0, .06) 36%, rgba(0, 0, 0, .16)),
        var(--content-background, #071114);
}

.content-box.fight-end-screen::before,
.content-box.fight-end-screen::after {
    content: "";
    position: absolute;
    left: 54px;
    width: 842px;
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--border-color, #0b7180), transparent);
}

.content-box.fight-end-screen::before {
    top: 16px;
}

.content-box.fight-end-screen::after {
    bottom: 18px;
}

.content-box.fight-end-screen > .fight-end-panel {
    --fight-result-color: var(--accent-color, #00e5ff);
    --fight-result-glow: rgba(0, 229, 255, .18);
    box-sizing: border-box;
    width: 840px;
    margin: 0 auto !important;
    padding: 0 28px 28px;
    position: relative;
    overflow: hidden;
    border: 1px solid var(--border-color, #0b7180);
    background:
        linear-gradient(180deg, color-mix(in srgb, var(--panel-background, #06181c) 88%, var(--fight-result-color) 12%), var(--panel-background, #06181c) 24%, #031013 100%);
    box-shadow:
        0 16px 34px rgba(0, 0, 0, .42),
        0 0 28px var(--fight-result-glow) inset;
}

.content-box.fight-end-screen > .fight-end-gewonnen {
    --fight-result-color: #62f58a;
    --fight-result-glow: rgba(98, 245, 138, .17);
}

.content-box.fight-end-screen > .fight-end-verloren {
    --fight-result-color: #ff6268;
    --fight-result-glow: rgba(255, 98, 104, .17);
}

.content-box.fight-end-screen > .fight-end-unentschieden {
    --fight-result-color: #ffd45f;
    --fight-result-glow: rgba(255, 212, 95, .16);
}

.content-box.fight-end-screen .fight-end-kicker {
    box-sizing: border-box;
    width: 782px;
    height: 38px;
    margin: 0 auto;
    padding-top: 10px;
    line-height: 18px;
    border-bottom: 1px solid color-mix(in srgb, var(--fight-result-color) 65%, transparent);
    color: var(--fight-result-color);
    text-transform: uppercase;
    letter-spacing: 3px;
    font-size: 12px;
    font-weight: 900;
}

.content-box.fight-end-screen .fight-end-panel h1 {
    box-sizing: border-box;
    width: 782px;
    height: 58px;
    margin: 0 auto 18px;
    padding: 12px 12px 0;
    overflow: hidden;
    border: 0;
    border-bottom: 1px solid var(--border-color, #0b7180);
    background:
        linear-gradient(90deg, transparent, color-mix(in srgb, var(--fight-result-color) 14%, transparent), transparent),
        var(--heading-background, rgba(0, 0, 0, .14));
    color: var(--fight-result-color);
    font-size: 31px;
    font-weight: 900;
    line-height: 36px;
    text-align: center;
    text-shadow: 0 0 15px var(--fight-result-glow);
}

.content-box.fight-end-screen .fight-end-image-frame {
    box-sizing: border-box;
    width: 760px;
    height: 422px;
    margin: 0 auto 18px;
    padding: 5px;
    overflow: hidden;
    border: 1px solid color-mix(in srgb, var(--fight-result-color) 70%, var(--border-color, #0b7180));
    background: #010809;
    box-shadow:
        0 0 0 1px rgba(255, 255, 255, .035) inset,
        0 0 22px var(--fight-result-glow);
}

.content-box.fight-end-screen .fight-end-image-frame img {
    display: block;
    width: 748px;
    height: 410px;
    object-fit: contain;
    background: #010809;
}

.content-box.fight-end-screen .fight-end-panel p {
    box-sizing: border-box;
    width: 760px;
    margin: 0 auto;
    padding: 13px 18px;
    border-top: 1px solid var(--border-color, #0b7180);
    border-bottom: 1px solid var(--border-color, #0b7180);
    background: rgba(0, 0, 0, .18);
    color: var(--text-color, #f4fbfc);
    font-size: 17px;
    font-weight: 900;
    line-height: 22px;
    text-align: center;
}

.content-box.fight-end-screen .fight-end-redirect-text {
    width: 760px;
    margin: 16px auto 7px;
    color: var(--muted-text, #b8d9dd);
    font-size: 13px;
    font-weight: 700;
    text-align: center;
}

.content-box.fight-end-screen .fight-end-continue-form {
    width: 270px;
    margin: 14px auto 0;
}

.content-box.fight-end-screen .fight-end-loader {
    box-sizing: border-box;
    width: 760px;
    height: 10px;
    margin: 0 auto 18px;
    overflow: hidden;
    border: 1px solid var(--border-color, #075d68);
    background: #001013;
}

.content-box.fight-end-screen .fight-end-loader span {
    display: block;
    width: 758px;
    height: 8px;
    background: linear-gradient(90deg,
        color-mix(in srgb, var(--fight-result-color) 45%, #001013),
        var(--fight-result-color),
        color-mix(in srgb, var(--fight-result-color) 45%, #001013));
    transform-origin: left center;
    animation: fight-end-countdown 5s linear forwards;
}

.content-box.fight-end-screen .fight-end-report-link {
    box-sizing: border-box;
    display: inline-flex;
    width: 270px;
    height: 42px;
    align-items: center;
    justify-content: center;
    border: 1px solid color-mix(in srgb, var(--fight-result-color) 70%, var(--border-color, #0b7180));
    background: color-mix(in srgb, var(--button-background, #0b5560) 82%, var(--fight-result-color) 18%);
    color: var(--button-text, #fff);
    font-weight: 900;
    font-family: inherit;
    font-size: 14px;
    cursor: pointer;
    text-decoration: none;
    box-shadow: 0 0 15px var(--fight-result-glow);
}

.content-box.fight-end-screen .fight-end-report-link:hover,
.content-box.fight-end-screen .fight-end-report-link:focus-visible {
    background: color-mix(in srgb, var(--button-background, #0b5560) 66%, var(--fight-result-color) 34%);
    outline: 1px solid var(--fight-result-color);
    outline-offset: 2px;
}


/* FightJoin V2 - passend zum Welt-2-Design */
.fight-join-shell {
    display: grid;
    gap: 18px;
    width: 914px;
    margin-top: 14px;
}

.fight-join-overview {
    display: grid;
    gap: 6px;
    width: 914px;
    padding: 12px 16px 14px;
    box-sizing: border-box;
    border: 1px solid var(--border-color, #0b7180);
    background: linear-gradient(180deg, rgba(18, 61, 71, .96), rgba(4, 19, 24, .96));
}

.fight-join-overview-top {
    display: grid;
    grid-template-columns: 190px 1fr 110px;
    align-items: center;
    width: 880px;
    height: 28px;
}

.fight-join-overview-tag {
    color: #18dceb;
    font-size: 12px;
    font-weight: 950;
    letter-spacing: 1px;
}

.fight-join-overview-top strong {
    color: #fff;
    font-size: 28px;
    text-align: center;
}

.fight-join-overview-size {
    color: #fff;
    font-size: 18px;
    font-weight: 900;
    text-align: right;
}

.fight-join-overview-name {
    width: 880px;
    color: rgba(255, 255, 255, .74);
    font-size: 13px;
    text-align: center;
}

.fight-join-arena {
    display: grid;
    grid-template-columns: 284px 302px 284px;
    gap: 22px;
    width: 914px;
    align-items: stretch;
}

.fight-join-team-card,
.fight-join-center-card,
.fight-join-action-card {
    border: 1px solid var(--border-color, #0b7180);
    background: linear-gradient(180deg, rgba(0, 28, 34, .95), rgba(0, 12, 16, .98));
    box-sizing: border-box;
}

.fight-join-team-card {
    width: 284px;
}

.fight-join-team-card-left {
    box-shadow: inset 0 0 0 1px rgba(74, 163, 255, .08);
}

.fight-join-team-card-right {
    box-shadow: inset 0 0 0 1px rgba(255, 64, 64, .08);
}

.fight-join-team-card-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 282px;
    height: 44px;
    padding: 0 14px;
    box-sizing: border-box;
    border-bottom: 1px solid var(--border-color, #0b7180);
    background: linear-gradient(180deg, rgba(27, 72, 82, .94), rgba(14, 42, 49, .94));
}

.fight-join-team-card-head span {
    color: #fff;
    font-size: 22px;
    font-weight: 950;
}

.fight-join-team-card-head strong {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 58px;
    height: 24px;
    padding: 0 8px;
    border: 1px solid var(--border-color, #0b7180);
    background: rgba(0, 16, 20, .9);
    color: #fff;
    font-size: 13px;
    font-weight: 950;
    box-sizing: border-box;
}

.fight-join-team-card-body {
    display: grid;
    align-content: start;
    width: 282px;
    padding: 14px;
    box-sizing: border-box;
}

.fight-team-member-list-v2 {
    display: grid;
    gap: 10px;
    width: 254px;
}

.fight-team-member-chip {
    display: grid;
    grid-template-columns: 44px 200px;
    gap: 10px;
    align-items: center;
    width: 254px;
    padding: 8px 9px;
    border: 1px solid rgba(11, 113, 128, .78);
    background: rgba(0, 14, 18, .92);
    box-sizing: border-box;
}

.fight-team-member-avatar {
    display: grid;
    place-items: center;
    width: 44px;
    height: 44px;
    border: 1px solid rgba(11, 113, 128, .9);
    background: linear-gradient(180deg, rgba(15, 68, 77, .92), rgba(0, 13, 17, .96));
    color: #fff;
    font-size: 24px;
    font-weight: 950;
}

.fight-team-member-name {
    overflow: hidden;
    color: #fff;
    font-size: 18px;
    font-weight: 900;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.fight-team-slot-empty-v2 {
    display: grid;
    align-content: center;
    justify-items: center;
    width: 254px;
    padding: 18px 14px;
    border: 1px dashed rgba(11, 113, 128, .78);
    background: rgba(0, 11, 14, .86);
    box-sizing: border-box;
    text-align: center;
}

.fight-team-slot-empty-v2 span {
    color: rgba(255, 255, 255, .88);
    font-size: 25px;
    font-weight: 900;
}

.fight-team-slot-empty-v2 small {
    margin-top: 6px;
    color: rgba(255, 255, 255, .58);
    font-size: 12px;
    line-height: 18px;
}

.fight-join-center-card {
    width: 302px;
}

.fight-join-center-head,
.fight-join-action-head {
    display: grid;
    justify-items: center;
    align-content: center;
    width: 100%;
    height: 70px;
    border-bottom: 1px solid var(--border-color, #0b7180);
    background: linear-gradient(180deg, rgba(21, 78, 89, .95), rgba(7, 37, 44, .96));
    box-sizing: border-box;
}

.fight-join-center-head span,
.fight-join-action-head span {
    color: #18dceb;
    font-size: 11px;
    font-weight: 950;
    letter-spacing: 1px;
}

.fight-join-center-head strong,
.fight-join-action-head strong {
    color: #fff;
    font-size: 27px;
    line-height: 1.05;
}

.fight-join-center-body {
    display: grid;
    gap: 14px;
    width: 300px;
    padding: 18px 18px 16px;
    box-sizing: border-box;
}

.fight-join-center-body p {
    margin: 0;
    color: rgba(255, 255, 255, .82);
    font-size: 13px;
    line-height: 20px;
    text-align: center;
}

.fight-join-center-meta {
    display: grid;
    gap: 8px;
    width: 264px;
}

.fight-join-center-meta span {
    display: block;
    width: 264px;
    padding: 8px 10px;
    border: 1px solid rgba(11, 113, 128, .72);
    background: rgba(0, 11, 14, .8);
    box-sizing: border-box;
    color: rgba(255, 255, 255, .9);
    font-size: 12px;
    font-weight: 800;
    text-align: center;
}

.fight-join-action-card {
    width: 620px;
    margin: 0 auto;
}

.fight-join-action-copy {
    width: 618px;
    padding: 12px 18px 2px;
    box-sizing: border-box;
    color: rgba(255, 255, 255, .8);
    font-size: 13px;
    text-align: center;
}

.fight-join-form-v2 {
    display: grid;
    gap: 12px;
    width: 540px;
    margin: 12px auto 18px;
}

.fight-join-field {
    display: grid;
    grid-template-columns: 152px 378px;
    gap: 10px;
    align-items: center;
    width: 540px;
}

.fight-join-field label,
.fight-join-field-label {
    color: #fff;
    font-weight: 900;
    text-align: right;
}

.fight-join-field input,
.fight-join-field select,
.fight-join-static-value {
    width: 378px;
    height: 40px;
    padding: 0 12px;
    border: 1px solid var(--border-color, #0b7180);
    background: var(--input-background, #001014);
    color: #fff;
    box-sizing: border-box;
}

.fight-join-field input:focus,
.fight-join-field select:focus {
    border-color: #18dceb;
    box-shadow: 0 0 0 1px rgba(24, 220, 235, .24);
    outline: 0;
}

.fight-join-static-value {
    display: flex;
    align-items: center;
    background: linear-gradient(180deg, rgba(10, 48, 56, .9), rgba(3, 21, 26, .95));
    font-weight: 900;
}

.fight-join-submit-row {
    display: flex;
    justify-content: center;
    width: 540px;
}

.fight-join-submit-row button {
    width: 240px;
    height: 40px;
    border: 1px solid var(--border-color, #0b7180);
    background: linear-gradient(180deg, rgba(22, 111, 128, 1), rgba(18, 79, 92, 1));
    color: #fff;
    font-size: 18px;
    font-weight: 950;
    cursor: pointer;
}

.fight-join-submit-row button:hover {
    background: var(--button-hover-background, #138ba0);
}

/* FightJoin V2 - Kampflobby im Welt-2-Design */
.fight-join-lobby-head {
    display: grid;
    grid-template-columns: 210px 374px 300px;
    align-items: center;
    width: 884px;
    height: 62px;
    margin: 18px 15px 0 15px;
    border: 1px solid var(--border-color, #0b7180);
    background: linear-gradient(180deg, rgba(24, 67, 76, .96), rgba(7, 29, 34, .98));
    box-sizing: border-box;
}

.fight-join-lobby-kicker {
    width: 210px;
    padding-left: 16px;
    box-sizing: border-box;
    color: #18dceb;
    font-size: 11px;
    font-weight: 950;
    letter-spacing: 1px;
}

.fight-join-lobby-title {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    width: 374px;
    height: 60px;
    border-left: 1px solid rgba(11, 113, 128, .7);
    border-right: 1px solid rgba(11, 113, 128, .7);
}

.fight-join-lobby-title strong {
    color: #fff;
    font-size: 20px;
}

.fight-join-lobby-title span {
    color: #18dceb;
    font-size: 13px;
    font-weight: 950;
}

.fight-join-lobby-state {
    display: grid;
    gap: 3px;
    width: 300px;
    padding-right: 16px;
    box-sizing: border-box;
    text-align: right;
}

.fight-join-lobby-state span {
    color: rgba(255, 255, 255, .66);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .8px;
}

.fight-join-lobby-state b {
    color: #fff;
    font-size: 12px;
}

.fight-join-arena {
    display: grid;
    grid-template-columns: 376px 112px 376px;
    gap: 10px;
    align-items: start;
    width: 884px;
    margin: 12px 15px 0 15px;
}

.fight-join-team-card {
    width: 376px;
    border: 1px solid var(--border-color, #0b7180);
    background: rgba(0, 16, 20, .92);
    box-sizing: border-box;
}

.fight-join-team-card-left {
    box-shadow: inset 4px 0 0 rgba(56, 142, 255, .72);
}

.fight-join-team-card-right {
    box-shadow: inset -4px 0 0 rgba(255, 57, 66, .72);
}

.fight-join-team-card header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 374px;
    height: 42px;
    padding: 0 14px;
    border-bottom: 1px solid var(--border-color, #0b7180);
    background: linear-gradient(180deg, rgba(24, 65, 74, .94), rgba(13, 44, 51, .94));
    box-sizing: border-box;
}

.fight-join-team-card header span {
    color: #fff;
    font-size: 16px;
    font-weight: 950;
}

.fight-join-team-card-left header strong {
    color: #59a7ff;
}

.fight-join-team-card-right header strong {
    color: #ff575f;
}

.fight-join-team-status {
    width: 374px;
    height: 26px;
    padding-top: 6px;
    box-sizing: border-box;
    color: rgba(255, 255, 255, .62);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .8px;
    text-align: center;
}

.fight-join-roster {
    display: grid;
    gap: 6px;
    width: 354px;
    margin: 0 10px 10px 10px;
}

.fight-join-player-slot {
    display: grid;
    grid-template-columns: 38px 220px 78px;
    gap: 7px;
    align-items: center;
    width: 354px;
    height: 46px;
    padding: 0 8px;
    border: 1px solid rgba(11, 113, 128, .72);
    background: rgba(0, 31, 37, .76);
    box-sizing: border-box;
}

.fight-join-player-slot.is-empty {
    opacity: .58;
    background: rgba(0, 19, 23, .72);
}

.fight-join-player-mark {
    display: grid;
    place-items: center;
    width: 34px;
    height: 34px;
    border: 1px solid var(--border-color, #0b7180);
    background: #061b20;
    color: #18dceb;
    font-size: 18px;
    font-weight: 950;
}

.fight-join-player-slot strong {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    color: #fff;
    font-size: 13px;
}

.fight-join-player-slot em {
    color: #61d48a;
    font-size: 9px;
    font-style: normal;
    font-weight: 950;
    letter-spacing: .7px;
    text-align: right;
}

.fight-join-player-slot.is-empty em {
    color: rgba(255, 255, 255, .54);
}

.fight-join-versus {
    display: grid;
    justify-items: center;
    align-content: center;
    gap: 8px;
    width: 112px;
    height: 116px;
    margin-top: 22px;
}

.fight-join-versus span {
    display: grid;
    place-items: center;
    width: 66px;
    height: 66px;
    border: 1px solid var(--border-color, #0b7180);
    border-radius: 50%;
    background: radial-gradient(circle, rgba(19, 112, 127, .36), rgba(0, 16, 20, .98) 68%);
    color: #fff;
    font-size: 25px;
    font-weight: 950;
    box-shadow: 0 0 18px rgba(0, 218, 235, .14);
}

.fight-join-versus b {
    width: 112px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    color: #18dceb;
    font-size: 10px;
    text-align: center;
}

.fight-join-entry-panel {
    width: 540px;
    margin: 18px auto 20px auto;
    border: 1px solid var(--border-color, #0b7180);
    background: rgba(0, 17, 21, .94);
    box-sizing: border-box;
}

.fight-join-entry-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 538px;
    height: 46px;
    padding: 0 14px;
    border-bottom: 1px solid var(--border-color, #0b7180);
    background: linear-gradient(180deg, rgba(25, 72, 82, .94), rgba(14, 47, 55, .94));
    box-sizing: border-box;
}

.fight-join-entry-head span {
    color: #18dceb;
    font-size: 10px;
    font-weight: 950;
    letter-spacing: 1px;
}

.fight-join-entry-head strong {
    color: #fff;
    font-size: 16px;
}

.fight-join-form-v2 {
    display: grid;
    gap: 10px;
    width: 500px;
    margin: 14px 19px 16px 19px;
}

.fight-join-field {
    display: grid;
    grid-template-columns: 140px 350px;
    gap: 10px;
    align-items: center;
    width: 500px;
}

.fight-join-field label {
    color: #fff;
    font-weight: 900;
    text-align: right;
}

.fight-join-field input,
.fight-join-field select {
    width: 350px;
    height: 38px;
    padding: 0 10px;
    border: 1px solid var(--border-color, #0b7180);
    background: var(--input-background, #001014);
    color: #fff;
    box-sizing: border-box;
    outline: 0;
}

.fight-join-field input:focus,
.fight-join-field select:focus {
    border-color: #16dceb;
    box-shadow: 0 0 0 1px rgba(22, 220, 235, .24);
}

.fight-join-auto-team {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 500px;
    height: 38px;
    border: 1px solid rgba(11, 113, 128, .72);
    background: rgba(0, 31, 37, .62);
    box-sizing: border-box;
}

.fight-join-auto-team span {
    color: rgba(255, 255, 255, .62);
    font-size: 11px;
    font-weight: 800;
}

.fight-join-auto-team strong {
    color: #18dceb;
    font-size: 13px;
}

.fight-join-form-v2 > button {
    justify-self: center;
    width: 230px;
    height: 40px;
    margin-top: 2px;
    border: 1px solid var(--border-color, #0b7180);
    background: var(--button-background, #176f80);
    color: #fff;
    font-weight: 950;
    cursor: pointer;
}

.fight-join-form-v2 > button:hover {
    background: var(--button-hover-background, #138ba0);
}

.fight-join-error {
    width: 884px;
    margin: 12px 15px 0 15px;
    box-sizing: border-box;
}

/* FightJoin V3 - saubere Zentrierung, Profilbilder und volle Join-Leiste */
.content-box > .fight-join-stage {
    width: 884px;
    margin-left: auto;
    margin-right: auto;
}

.fight-join-stage {
    display: block;
}

.fight-join-stage .fight-join-lobby-head {
    width: 884px;
    margin: 18px 0 0 0;
}

.fight-join-stage .fight-join-arena {
    width: 884px;
    margin: 12px 0 0 0;
}

.fight-join-stage .fight-join-error {
    width: 884px;
    margin: 12px 0 0 0;
}

.fight-join-stage .fight-join-entry-panel {
    width: 884px;
    margin: 18px 0 20px 0;
}

.fight-join-stage .fight-join-entry-head {
    width: 882px;
}

.fight-join-stage .fight-join-form-v2 {
    width: 844px;
    margin: 16px 19px 18px 19px;
    justify-items: center;
}

.fight-join-stage .fight-join-field {
    grid-template-columns: 170px 430px;
    width: 610px;
}

.fight-join-stage .fight-join-field input,
.fight-join-stage .fight-join-field select {
    width: 430px;
}

.fight-join-stage .fight-join-auto-team {
    width: 610px;
}

.fight-join-stage .fight-join-form-v2 > button {
    width: 260px;
}

.fight-join-player-slot {
    grid-template-columns: 38px 224px 60px;
}

.fight-join-player-mark.is-avatar {
    overflow: hidden;
    padding: 0;
}

.fight-join-player-mark.is-avatar img {
    display: block;
    width: 34px;
    height: 34px;
    object-fit: cover;
}

.fight-join-player-slot em {
    display: block;
    width: 60px;
    overflow: hidden;
    white-space: nowrap;
    text-align: center;
}


/* CreateFight V3 - exakt zentriert und Mehrteam-Konfiguration */
.content-box.fight-create-page > .fight-create-shell {
    grid-template-columns: 292px 560px;
    width: 874px;
    margin: 18px auto 8px auto;
}

.fight-create-visual,
.fight-create-panel {
    height: 590px;
}

.fight-create-multi-config {
    display: grid;
    gap: 10px;
    width: 520px;
}

.fight-create-multi-config[hidden],
.fight-create-field[data-fight-team-mode-row][hidden],
.fight-create-field[data-fight-team-row][hidden] {
    display: none;
}

/* Mehrteam-Lobby: beide Seiten bleiben auf derselben Mittelachse. */
.fight-join-side-stack {
    display: grid;
    align-content: start;
    gap: 10px;
    width: 376px;
}

.fight-join-stage.is-multi-team .fight-join-versus {
    position: sticky;
    top: 18px;
}

.fight-join-stage.is-multi-team .fight-join-team-card {
    height: auto;
}

.fight-join-ffa-arena {
    width: 884px;
    margin: 12px 0 0 0;
    padding: 12px;
    border: 1px solid var(--border-color, #0b7180);
    background: rgba(0, 13, 17, .72);
    box-sizing: border-box;
}

.fight-join-ffa-label {
    width: 858px;
    height: 34px;
    padding-top: 8px;
    margin-bottom: 12px;
    border-bottom: 1px solid rgba(11, 113, 128, .78);
    box-sizing: border-box;
    color: #18dceb;
    font-size: 12px;
    font-weight: 950;
    letter-spacing: 1.2px;
    text-align: center;
}

.fight-join-ffa-grid {
    display: grid;
    grid-template-columns: 419px 419px;
    gap: 12px 20px;
    width: 858px;
}

.fight-join-team-card-ffa {
    width: 419px;
    box-shadow: inset 0 3px 0 rgba(24, 220, 235, .48);
}

.fight-join-team-card-ffa header {
    width: 417px;
}

.fight-join-team-card-ffa header strong {
    color: #18dceb;
}

.fight-join-team-card-ffa .fight-join-team-status {
    width: 417px;
}

.fight-join-team-card-ffa .fight-join-roster {
    width: 397px;
}

.fight-join-team-card-ffa .fight-join-player-slot {
    grid-template-columns: 38px 278px 60px;
    width: 397px;
}

.fight-directory-teams-ffa strong:first-child,
.fight-directory-teams-ffa strong:last-child,
.fight-history-vs-ffa strong {
    color: #18dceb;
}

.fight-history-vs-ffa {
    grid-template-columns: 150px 50px 210px;
}

.world1-infight-team-groups.is-ffa {
    gap: .75rem;
}

.world1-infight-team-group-ffa h3 {
    justify-self: start;
    text-align: left;
}

.world1-infight-team-group-ffa .world1-infight-event,
.world1-infight-team-group-ffa .world1-infight-event-right,
.world1-infight-team-group-ffa .world1-infight-team-empty {
    justify-self: start;
}

/* Kampf-History: komplette Team-Bloecke wechseln wie Chat-Nachrichten. */
.world1-infight-team-chat {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: .75rem;
    width: 100%;
}

.world1-infight-team-chat .world1-infight-team-group {
    width: 72%;
    inline-size: 72%;
    box-sizing: border-box;
    grid-column: 1;
}

.world1-infight-team-chat .world1-infight-team-group-left {
    justify-self: start;
}

.world1-infight-team-chat .world1-infight-team-group-right {
    justify-self: end;
}

.world1-infight-team-chat .world1-infight-team-group h3,
.world1-infight-team-chat .world1-infight-event,
.world1-infight-team-chat .world1-infight-event-right,
.world1-infight-team-chat .world1-infight-team-empty {
    width: 100%;
    inline-size: 100%;
}

@media (orientation: portrait) {
    .world1-infight-team-chat .world1-infight-team-group {
        width: 88%;
        inline-size: 88%;
    }
}

/* Vollstaendige Live-Kampfhistory wird nur auf Wunsch geladen. */
.fight-live-history-controls {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 914px;
    height: 46px;
    margin: 0 auto 10px;
}

/* Kampfkarte: Namen bleiben auch bei langen Spieler- und NPC-Namen einzeilig. */
.world1-infight-name,
.world1-infight-side-right .world1-infight-name {
    display: block;
    width: 100%;
    white-space: nowrap;
    overflow: hidden;
    overflow-wrap: normal;
    word-break: normal;
    line-height: 1.1;
}

.world1-infight-name.is-name-compact { font-size: .82rem; }
.world1-infight-name.is-name-small { font-size: .7rem; }
.world1-infight-name.is-name-tiny { font-size: .6rem; }
.world1-infight-name.is-name-micro { font-size: .5rem; }

/* Direkte Spieler-Herausforderungen */
.profile-action-rail button.profile-action-fight {
    position: relative;
    display: block;
    width: 70px;
    height: 62px;
    margin: 0 auto 8px;
    padding: 0;
    overflow: hidden;
    border-width: 0;
    border-radius: 4px;
    font-size: 0;
    cursor: pointer;
}

.profile-action-rail button.profile-action-fight::before {
    position: absolute;
    left: 20px;
    top: 16px;
    display: block;
    width: 30px;
    height: 30px;
    background: currentColor;
    -webkit-mask-image: var(--menu-icon);
    mask-image: var(--menu-icon);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: 30px 30px;
    mask-size: 30px 30px;
    content: "";
}

.profile-action-rail button.profile-action-fight:hover:not(:disabled),
.profile-action-rail button.profile-action-fight:focus-visible {
    background: var(--scroll-button-hover-bg);
    color: #fff;
}

.profile-action-rail button.profile-action-fight:disabled {
    opacity: .45;
    cursor: not-allowed;
}

.fight-challenge-dialog[hidden] { display: none; }
.fight-challenge-dialog { z-index: 10020; }
.fight-challenge-modal {
    width: 470px;
    box-sizing: border-box;
}

.fight-challenge-modal .system-message-head,
.fight-challenge-modal form,
.fight-challenge-modal-body,
.fight-challenge-modal .fight-challenge-modal-actions {
    width: 100%;
    box-sizing: border-box;
}

.fight-challenge-modal-body {
    display: grid;
    gap: 10px;
    padding: 18px;
}

.fight-challenge-modal-body p { margin: 0 0 4px; }
.fight-challenge-modal-body label { color: var(--accent, var(--title-text)); font-weight: 700; }
.fight-challenge-modal-body select {
    width: 100%;
    height: 36px;
    padding: 0 10px;
    border: 1px solid var(--select-border);
    background: var(--input-bg, var(--select-bg));
    color: var(--text);
}

.fight-challenge-modal-body select option { background: var(--input-bg, var(--select-bg)); color: var(--text); }
.fight-challenge-modal-actions {
    display: grid;
    grid-template-columns: 140px 140px;
    justify-content: end;
    align-items: center;
    height: 54px;
    padding: 9px 16px;
    gap: 10px;
}
.fight-challenge-modal-actions button,
.fight-challenge-actions button {
    min-width: 108px;
    height: 34px;
    border: 1px solid var(--accent, var(--scroll-button-border));
    background: var(--button-bg, var(--scroll-button-bg));
    color: #fff;
    font: inherit;
    font-weight: 700;
    cursor: pointer;
}

.fight-challenge-modal-actions button {
    width: 140px;
    min-width: 0;
}

.fight-challenge-list { display: grid; gap: 8px; padding: 8px; }
.fight-challenge-card {
    display: grid;
    gap: 5px;
    padding: 9px;
    border: 1px solid var(--box-border);
    background: var(--panel-bg, var(--box-bg));
}
.fight-challenge-card > strong { color: var(--accent, var(--title-text)); }
.fight-challenge-card > span { line-height: 1.35; }
.fight-challenge-actions { display: flex; gap: 7px; margin-top: 3px; }
.fight-challenge-actions form { flex: 1 1 0; margin: 0; }
.fight-challenge-actions button { width: 100%; min-width: 0; }
.fight-challenge-actions button:disabled,
.fight-challenge-modal-actions button:disabled { opacity: .5; cursor: wait; }

/* Rassen, Kategorien und Charaktere */
.admin-race-page { padding-bottom: 24px; }
.admin-race-tabs { grid-template-columns: 295px 295px 296px; }
.admin-race-tabs a { width: 100%; }

.admin-race-list-head,
.admin-race-list,
.admin-race-empty,
.admin-race-form {
    width: 918px;
    margin: 12px 16px 0;
    padding: 12px;
    border-width: 2px;
    border-style: solid;
    box-sizing: border-box;
}

.admin-race-list-head {
    display: grid;
    grid-template-columns: 1fr 174px;
    gap: 12px;
    align-items: center;
}
.admin-race-list-head .admin-planet-form-title {
    width: 100%;
    grid-column: auto;
    box-sizing: border-box;
}
.admin-race-create,
.admin-race-row a,
.admin-race-row button,
.admin-race-bottom button,
.admin-race-bottom a {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 34px;
    padding: 0 14px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    font-weight: 900;
    text-decoration: none;
    box-sizing: border-box;
    cursor: pointer;
}

.admin-race-list { display: grid; gap: 8px; }
.admin-race-row {
    display: grid;
    grid-template-columns: 58px 190px 1fr 80px 292px;
    gap: 10px;
    align-items: center;
    min-height: 54px;
    padding: 8px;
    border-bottom: 1px solid var(--box-border);
    box-sizing: border-box;
}
.admin-race-row > strong,
.admin-race-row > em,
.admin-race-row > span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.admin-race-row em { font-style: normal; }
.admin-race-row > div { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.admin-race-row form { margin: 0; }
.admin-race-row button { width: 100%; }

.admin-race-form {
    display: grid;
    grid-template-columns: 890px;
    grid-auto-flow: row;
    gap: 14px;
    overflow: hidden;
}
.admin-race-form > .admin-planet-form-title,
.admin-race-form > .admin-race-basic-grid,
.admin-race-form > .admin-race-stat-grid,
.admin-race-form > .admin-race-checks,
.admin-race-form > .admin-race-images,
.admin-race-form > .admin-race-description,
.admin-race-form > .admin-race-techniques,
.admin-race-form > .admin-race-bottom {
    width: 890px;
    margin: 0;
    box-sizing: border-box;
}
.admin-race-form > .admin-planet-form-title {
    grid-column: 1;
}
.admin-race-basic-grid,
.admin-race-stat-grid {
    display: grid;
    grid-template-columns: 287px 287px 288px;
    gap: 14px;
}
.admin-race-basic-grid-two {
    grid-template-columns: 438px 438px;
}
.admin-race-basic-grid label,
.admin-race-stat-grid label,
.admin-race-description {
    display: block;
    width: 100%;
    margin: 0;
    overflow: hidden;
    box-sizing: border-box;
}
.admin-race-form label > span {
    display: block;
    height: 22px;
    font-weight: 900;
    text-transform: uppercase;
}
.admin-race-form input[type="text"],
.admin-race-form input[type="number"],
.admin-race-form select,
.admin-race-form textarea {
    width: 100%;
    height: 34px;
    padding: 6px 8px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    box-sizing: border-box;
}
.admin-race-form select { cursor: pointer; }
.admin-race-form textarea { height: 112px; resize: vertical; }
.admin-race-checks,
.admin-race-bottom {
    display: flex;
    align-items: center;
    gap: 24px;
}
.admin-race-checks {
    height: 50px;
    padding: 8px 12px;
    border-width: 1px;
    border-style: solid;
}
.admin-race-checks label,
.admin-race-bottom > label {
    display: flex;
    align-items: center;
    height: 34px;
    gap: 8px;
    margin: 0;
}
.admin-race-checks input[type="checkbox"],
.admin-race-bottom input[type="checkbox"],
.admin-race-techniques input[type="checkbox"] {
    width: 18px;
    height: 18px;
    margin: 0;
}

.admin-race-images {
    display: grid;
    grid-template-columns: 287px 287px 288px;
    gap: 14px;
}
.admin-race-image-field {
    width: 100%;
    padding: 10px;
    border-width: 1px;
    border-style: solid;
    box-sizing: border-box;
}
.admin-race-image-field input[type="file"] {
    width: 100%;
    height: 36px;
    border-width: 1px;
    border-style: solid;
    overflow: hidden;
    box-sizing: border-box;
}
.admin-race-image-field input[type="file"]::file-selector-button {
    height: 34px;
    margin: 0 10px 0 0;
    padding: 0 12px;
    border-width: 0 1px 0 0;
    border-style: solid;
    font: inherit;
    font-weight: 900;
    cursor: pointer;
}
.admin-race-preview {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 230px;
    margin-top: 10px;
    border-width: 1px;
    border-style: solid;
    overflow: hidden;
    box-sizing: border-box;
}
.admin-race-preview img {
    display: block;
    width: 100%;
    height: 210px;
    object-fit: contain;
    object-position: center;
}
.admin-race-description.admin-bbcode-editor-field {
    height: auto;
    overflow: visible;
}
.admin-race-description .sceditor-container {
    width: 890px !important;
    height: 236px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}
.admin-race-description .sceditor-container iframe,
.admin-race-description .sceditor-container textarea {
    width: 872px !important;
    height: 180px !important;
    box-sizing: border-box !important;
}
.admin-race-techniques {
    display: grid;
    grid-template-columns: 279px 279px 278px;
    gap: 8px 14px;
    padding: 12px;
    border-width: 1px;
    border-style: solid;
}
.admin-race-techniques legend { padding: 0 8px; font-weight: 900; }
.admin-race-techniques label { display: flex; align-items: center; gap: 7px; }
.admin-race-bottom {
    justify-content: space-between;
    height: 50px;
    padding: 8px 0;
}
.admin-race-bottom > div { display: grid; grid-template-columns: 160px 160px; gap: 10px; }
.admin-training-config-panel {
    grid-column: 1 / -1;
    width: 100%;
    margin: 12px 0 0;
    padding: 14px;
    border: 1px solid var(--box-border);
    box-sizing: border-box;
}
.admin-training-config-panel legend { padding: 0 8px; color: var(--accent); font-weight: 700; }
.admin-training-config-panel p { margin: 0 0 10px; }
.admin-training-race-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px 16px; }
.admin-training-race-grid label,
.admin-training-show-rewards { display: flex; align-items: center; gap: 8px; }
.admin-training-reward-list { display: grid; gap: 10px; margin: 12px 0; }
.admin-training-reward-row { display: grid; grid-template-columns: 130px 1fr 110px 140px; gap: 10px; align-items: center; }
.admin-training-reward-row select,
.admin-training-reward-row input,
.admin-training-reward-row button,
.admin-training-add-reward { width: 100%; height: 36px; box-sizing: border-box; }
.admin-training-add-reward { width: 220px; }

.admin-system-tail-card { margin-top: 14px; }
.admin-system-tail-card p { margin: 10px 0 0; }

.admin-user-search {
    display: grid;
    grid-template-columns: 1fr 150px 150px;
    gap: 12px;
    align-items: end;
    margin: 14px;
    padding: 14px;
    border: 1px solid var(--box-border);
    box-sizing: border-box;
}
.admin-user-search label,
.admin-user-search label > span { display: block; }
.admin-user-search label > span { margin-bottom: 7px; font-weight: 800; }
.admin-user-search input,
.admin-user-search button,
.admin-user-search a {
    width: 100%;
    height: 38px;
    box-sizing: border-box;
}
.admin-user-search a {
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
}
.admin-user-row {
    display: grid;
    grid-template-columns: 1fr 150px 100px 100px 150px;
    gap: 12px;
    align-items: center;
    min-height: 58px;
    padding: 8px 10px;
    border-bottom: 1px solid var(--box-border);
    box-sizing: border-box;
}
.admin-user-row > div { min-width: 0; }
.admin-user-row strong,
.admin-user-row small { display: block; }
.admin-user-row small {
    margin-top: 4px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.admin-user-row > a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 150px;
    height: 36px;
    text-decoration: none;
    box-sizing: border-box;
}
.admin-user-edit { margin: 14px; padding: 14px; border: 1px solid var(--box-border); box-sizing: border-box; }
.admin-user-account-summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 58px;
    margin: 12px 0;
    padding: 10px 12px;
    border: 1px solid var(--box-border);
    box-sizing: border-box;
}
.admin-user-account-summary div { display: flex; align-items: center; gap: 18px; }
.admin-user-account-summary strong { font-size: 18px; }
.admin-user-account-summary .is-online { color: #39d86b; }
.admin-user-account-summary .is-offline { opacity: .72; }
.admin-user-edit-layout {
    display: grid;
    grid-template-columns: 1fr 230px;
    gap: 14px;
    align-items: stretch;
}
.admin-user-edit-main,
.admin-user-image-panel {
    padding: 12px;
    border: 1px solid var(--box-border);
    box-sizing: border-box;
}
.admin-user-edit-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
}
.admin-user-edit-grid label,
.admin-user-edit-grid label > span { display: block; }
.admin-user-edit-grid label > span { margin-bottom: 6px; font-weight: 800; }
.admin-user-edit-grid input,
.admin-user-edit-grid select {
    width: 100%;
    height: 34px;
    padding: 6px 8px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    box-sizing: border-box;
}
.admin-user-edit-grid select {
    appearance: none;
    cursor: pointer;
}
.admin-user-edit .admin-check { display: flex; align-items: center; gap: 8px; margin-top: 14px; }
.admin-user-edit .admin-check input { flex: 0 0 auto; width: 18px; height: 18px; margin: 0; }
.admin-user-image-panel { display: flex; flex-direction: column; align-items: stretch; gap: 10px; }
.admin-user-image-panel > strong { text-align: center; font-size: 17px; text-transform: uppercase; }
.admin-user-image-preview {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 204px;
    height: 204px;
    padding: 8px;
    border: 1px solid var(--box-border);
    box-sizing: border-box;
    overflow: hidden;
}
.admin-user-image-preview > strong { flex: 0 0 18px; line-height: 18px; text-align: center; }
.admin-user-image-preview img { display: block; width: 170px; height: 170px; object-fit: contain; object-position: center; }
.admin-user-image-upload span { display: block; margin-bottom: 6px; font-weight: 800; }
.admin-user-image-upload input {
    width: 204px;
    height: 34px;
    padding: 0;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    box-sizing: border-box;
    overflow: hidden;
}
.admin-user-image-upload input::file-selector-button {
    height: 32px;
    margin: 0 10px 0 0;
    padding: 0 12px;
    border-width: 0 1px 0 0;
    border-style: solid;
    font: inherit;
    font-weight: 900;
    cursor: pointer;
}
.admin-user-image-remove { line-height: 1.25; }
.admin-user-techniques {
    margin: 14px 0 0;
    padding: 14px;
    border: 1px solid var(--box-border);
    box-sizing: border-box;
}
.admin-user-techniques legend { padding: 0 8px; font-size: 17px; font-weight: 900; }
.admin-user-techniques > p { margin: 0 0 12px; }
.admin-user-technique-group + .admin-user-technique-group { margin-top: 14px; }
.admin-user-technique-group h2 { margin: 0 0 8px; padding: 7px 9px; border: 1px solid var(--box-border); font-size: 15px; text-transform: uppercase; }
.admin-user-technique-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px 14px; }
.admin-user-technique-grid label { display: flex; align-items: center; gap: 8px; min-height: 28px; }
.admin-user-technique-grid input { flex: 0 0 auto; width: 18px; height: 18px; margin: 0; }
.admin-user-actions { margin-top: 14px; }

.admin-user-fight-bans {
    margin: 14px;
    padding: 14px;
    border: 1px solid var(--box-border);
    box-sizing: border-box;
}
.admin-user-ban-empty { margin: 12px 0; }
.admin-user-ban-list {
    display: grid;
    gap: 10px;
    margin-top: 12px;
}
.admin-user-ban-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 10px 12px;
    border: 1px solid var(--box-border);
    box-sizing: border-box;
}
.admin-user-ban-row > div {
    display: grid;
    gap: 4px;
}
.admin-user-ban-row form { margin: 0; }
.admin-user-ban-row button {
    width: 150px;
    height: 38px;
    box-sizing: border-box;
}
.admin-user-ban-form {
    display: grid;
    grid-template-columns: 260px 130px 150px 1fr 170px;
    gap: 12px;
    align-items: end;
    margin-top: 14px;
}
.admin-user-ban-form label,
.admin-user-ban-form label > span { display: block; }
.admin-user-ban-form label > span {
    margin-bottom: 6px;
    font-weight: 800;
}
.admin-user-ban-form input,
.admin-user-ban-form select {
    width: 100%;
    height: 34px;
    padding: 6px 8px;
    border-width: 1px;
    border-style: solid;
    font: inherit;
    box-sizing: border-box;
}
.admin-user-ban-form select {
    appearance: none;
    cursor: pointer;
}
.admin-user-ban-form button {
    width: 100%;
    height: 34px;
    padding: 0 10px;
    box-sizing: border-box;
}

/* Dynamische Trainingskonfiguration: zusätzliche Rassen und Belohnungen erweitern
   das Formular ausschließlich nach unten. */
.admin-training-form {
    grid-template-columns: repeat(3, 274px) !important;
    grid-auto-flow: row !important;
    grid-auto-rows: auto !important;
    align-items: start !important;
    height: auto !important;
}
.admin-training-form > .admin-planet-form-title,
.admin-training-form > .admin-planet-wide,
.admin-training-form > .admin-bbcode-editor-field,
.admin-training-form > .admin-planet-actions {
    grid-column: 1 / -1 !important;
    grid-row: auto !important;
    width: 884px !important;
}
.admin-training-form > label:not(.admin-bbcode-editor-field),
.admin-training-form > .admin-training-preview {
    grid-column: auto !important;
    grid-row: auto !important;
    width: 274px !important;
}
.admin-training-form > .admin-bbcode-editor-field {
    height: auto !important;
    min-height: 430px;
}
.admin-training-form > .admin-bbcode-editor-field > span,
.admin-training-form > .admin-bbcode-editor-field > textarea,
.admin-training-form > .admin-bbcode-editor-field .sceditor-container {
    width: 884px !important;
    box-sizing: border-box !important;
}
.admin-training-form > .admin-bbcode-editor-field .sceditor-container iframe,
.admin-training-form > .admin-bbcode-editor-field .sceditor-container textarea {
    width: 868px !important;
}
.admin-training-form > .admin-planet-checkbox {
    display: flex !important;
    align-items: center !important;
    min-height: 36px;
    padding: 0 !important;
}
.admin-training-config-panel {
    min-width: 0;
    height: auto !important;
    overflow: visible !important;
}
.admin-training-race-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    height: auto !important;
    overflow: visible !important;
}
.admin-training-race-grid label { min-width: 0; min-height: 28px; }
.admin-training-reward-row {
    grid-template-columns: 130px 1fr 110px 140px;
    min-height: 36px;
}
.admin-training-reward-row select,
.admin-training-reward-row input,
.admin-training-reward-row button { min-width: 0; }
.admin-gear-race-availability,
.admin-gear-race-list,
.admin-technique-card,
.admin-technique-races {
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
}
.admin-gear-race-list {
    align-content: start;
}
.admin-technique-races {
    grid-auto-rows: auto !important;
    align-content: start;
}
.admin-technique-race,
.admin-gear-race-option {
    box-sizing: border-box !important;
}
.news-pagination .pagination-gap {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 36px;
    padding: 0 8px;
}

/* Fusion: Zwei Spieler bilden im Kampf optisch genau eine gemeinsame Karte. */
.world1-infight-fighter.is-fusion {
    border-color: color-mix(in srgb, var(--accent-color, #1ee7f2) 72%, var(--border-color, #0b7180));
}

.world1-infight-portrait.is-fusion {
    display: flex;
    align-items: stretch;
    overflow: hidden;
}

.world1-infight-fusion-portrait-half {
    display: flex;
    flex: 0 0 50%;
    width: 50%;
    min-width: 0;
    height: 100%;
    overflow: hidden;
    align-items: center;
    justify-content: center;
    font-size: 1.6rem;
    font-weight: 700;
    color: var(--text-color, #fff);
    background: color-mix(in srgb, var(--surface-2, #0f2130) 88%, #000);
}

.world1-infight-fusion-portrait-half img {
    display: block;
    width: 100%;
    height: 100%;
    min-width: 0;
    object-fit: cover;
}

.world1-infight-fusion-portrait-half + .world1-infight-fusion-portrait-half {
    border-left: .08rem solid var(--border-color, #0b7180);
}

/* theme-base.css */
html { background: var(--html-bg); }
body { background: var(--body-bg); color: var(--text); }

.space-section > h2,
.space-subsection-title,
.space-offer,
.space-owned,
.space-activity,
.space-control-form,
.space-empty,
.admin-space-planets {
    background: var(--box-bg);
    color: var(--box-text);
    border: 1px solid var(--box-border);
    box-shadow: var(--box-shadow);
}

.space-offer-image,
.space-owned-image,
.space-facts span {
    background: var(--panel-bg, var(--box-bg));
    border: 1px solid var(--box-border);
}

.space-offer-body h2,
.space-offer-body h3,
.space-owned h3,
.space-gravity-inline-upgrade h3,
.space-gravity-inline-upgrade > span,
.space-gravity-section > h2 em,
.space-activity strong,
.admin-space-planets legend {
    color: var(--accent, var(--title-text));
}

.space-offer button,
.space-control-form button,
.space-gravity-inline-upgrade button {
    background: var(--scroll-button-bg);
    color: #fff;
    border: 1px solid var(--scroll-button-border);
}

.space-offer button:hover:not(:disabled),
.space-control-form button:hover:not(:disabled),
.space-gravity-inline-upgrade button:hover:not(:disabled) {
    background: var(--nav-active-bg);
    color: #fff;
}

.space-offer button:disabled,
.space-control-form button:disabled,
.space-gravity-inline-upgrade button:disabled {
    opacity: .45;
}

.space-gravity-inline-upgrade {
    border-left: 1px solid var(--box-border);
}

.space-gravity-reward-preview {
    color: var(--accent, var(--title-text));
}

.space-ship-description {
    border-left: 1px solid var(--box-border);
}

.space-control-action > strong {
    background: var(--panel-bg, var(--box-bg));
    color: var(--box-text);
    border: 1px solid var(--box-border);
}

.space-control-form select,
.space-control-form select option {
    background: var(--select-bg);
    color: var(--select-text);
    border-color: var(--select-border);
}
a { color: var(--link); }
a:hover { color: var(--hover); }
.page-shell { background: var(--shell-bg); box-shadow: var(--shell-shadow); }
.site-banner {
    background: var(--banner-bg);
    border-bottom-color: var(--banner-border);
    color: var(--banner-text);
}
.site-banner-brand-title { color: var(--brand-title); text-shadow: var(--brand-title-shadow); }
.site-banner-brand-subtitle { color: var(--brand-subtitle); text-shadow: var(--brand-subtitle-shadow); }
.banner-player-card { background: var(--box-bg); border-color: var(--box-border); box-shadow: var(--box-shadow); }
.banner-player-card-border { border-color: var(--box-border); }
.banner-player-card::before { background: transparent; }
.banner-player-card::after { background: var(--box-border); }
.banner-player-avatar,
.banner-player-head strong,
.banner-player-row,
.banner-player-meta span {
    border-color: var(--box-border);
}
.banner-player-title {
    background: rgba(0,0,0,.35);
    color: var(--section-text);
    border-bottom: 1px solid var(--box-border);
    text-shadow: var(--title-shadow);
}
.banner-player-role {
    background: var(--badge-bg);
    color: var(--badge-text);
    border-top: 1px solid var(--box-border);
    text-shadow: var(--badge-shadow);
}
.banner-player-head strong { background: var(--section-bg); color: var(--section-text); }
.banner-player-head span { background: var(--nav-active-bg); color: var(--nav-active-text); }
.banner-player-bar { border-color: var(--box-border); }
.banner-player-lp { background: #3b0707; }
.banner-player-kp { background: #061f3f; }
.banner-player-bar strong { color: #ffffff; text-shadow: 0 1px 2px rgba(0,0,0,.9); }
.banner-player-lp .banner-player-fill { background: linear-gradient(180deg, #d40000 0%, #8b0000 100%); }
.banner-player-kp .banner-player-fill { background: #0059a9; }
.banner-player-zeni {
    background: rgba(0,0,0,.22);
    color: var(--text);
}
.banner-player-meta span {
    background: var(--section-bg);
    color: var(--section-text);
}
.top-nav { background: var(--nav-bg); border-color: var(--nav-border); box-shadow: var(--box-shadow); }
.top-nav a { color: var(--nav-text); }
.top-nav a { border-right-color: var(--nav-border); }
.top-nav a:hover,
.top-nav a.is-active { background: var(--nav-active-bg); color: var(--nav-active-text); }
.top-nav a[data-icon]::before {
    background: var(--side-hover);
}
.left-column,
.right-column { background: var(--col-bg); }
.left-column { border-right-color: var(--col-border); }
.right-column { border-left-color: var(--col-border); }
.side-box { background: var(--box-bg); border-color: var(--box-border); box-shadow: var(--box-shadow); }
.side-title { background: var(--side-title-bg); border-color: var(--side-title-border); color: var(--side-title-text); }
.side-box a { color: var(--side-link); }
.side-box a:hover { color: var(--side-hover); }
.small-text { color: var(--small-text); }
.left-menu-grid span,
.right-menu-list span,
.right-menu-list strong {
    color: var(--text);
}
.left-menu-grid a,
.left-menu-grid span {
    border-bottom-color: var(--box-border);
}
.left-menu-grid a:hover {
    background: var(--select-hover-bg);
}
.left-game-menu {
    background: var(--box-bg);
    border-color: var(--box-border);
    box-shadow: var(--box-shadow);
}
.left-game-title {
    background-color: var(--side-title-bg);
    background-image: linear-gradient(90deg, rgba(0,0,0,.78), rgba(0,0,0,.35)), var(--left-menu-banner-image);
    border-bottom-color: var(--box-border);
    color: var(--side-title-text);
    text-shadow: var(--title-shadow);
}
.left-game-menu-list a,
.left-game-menu-list span,
.left-game-menu-list summary {
    background: var(--nav-bg);
    border-bottom-color: var(--box-border);
    color: var(--side-link);
}
.left-game-menu-list a::before,
.left-game-menu-list span::before,
.left-menu-dropdown summary[data-icon]::before,
.left-menu-dropdown summary::after,
.left-game-title[data-icon]::before,
.right-game-title[data-icon]::before {
    background: var(--side-hover);
}
.left-game-menu-list a:hover,
.left-menu-dropdown summary:hover {
    background: var(--nav-active-bg);
    color: var(--nav-active-text);
}
.left-menu-dropdown-list a,
.left-menu-dropdown-list span {
    background: var(--box-bg);
    color: var(--side-link);
}
.left-menu-dropdown-list a:hover {
    background: var(--select-hover-bg);
    color: var(--side-hover);
}
.right-game-menu {
    background: var(--box-bg);
    border-color: var(--box-border);
    box-shadow: var(--box-shadow);
}
.right-game-title {
    background-color: var(--side-title-bg);
    background-image: linear-gradient(90deg, rgba(0,0,0,.78), rgba(0,0,0,.35)), var(--left-menu-banner-image);
    border-bottom-color: var(--box-border);
    color: var(--side-title-text);
    text-shadow: var(--title-shadow);
}
.right-game-menu-list a,
.right-game-menu-list span,
.right-menu-dropdown summary {
    background: var(--nav-bg);
    border-bottom-color: var(--box-border);
    color: var(--side-link);
}
.right-game-menu-list a:hover,
.right-menu-dropdown summary:hover {
    background: var(--nav-active-bg);
    color: var(--nav-active-text);
}

.group-member-card,
.group-member-bar,
.group-icon-action,
.group-leave-button,
.group-invitation-card,
.group-invitation-actions button {
    border-color: var(--box-border);
}

.group-member-card,
.group-invitation-card,
.group-panel-footer {
    background: var(--box-bg);
    color: var(--box-text);
}

.group-member-state,
.group-member-data {
    background: var(--box-soft-bg, var(--quote-bg));
}

.group-member-head strong,
.group-panel-title span {
    color: var(--accent, var(--title-text));
}

.group-online-light.is-online {
    background: #24c85a;
    box-shadow: 0 0 7px rgba(36, 200, 90, .75);
}

.group-online-light.is-offline {
    background: #d73333;
    box-shadow: 0 0 7px rgba(215, 51, 51, .65);
}

.group-leader-crown {
    color: #f0c23d;
}

.group-icon-action,
.group-leave-button,
.group-invitation-actions button,
.profile-action-rail .profile-action-group,
.profile-action-rail .profile-action-fight {
    background: var(--scroll-button-bg);
    color: #fff;
}

.group-icon-action:hover,
.group-leave-button:hover,
.group-invitation-actions button:hover,
.profile-action-rail .profile-action-group:hover:not(:disabled),
.profile-action-rail .profile-action-fight:hover:not(:disabled) {
    background: var(--scroll-button-hover-bg);
    color: #fff;
}

.group-icon-action.is-kick {
    border-color: #a52b2b;
}

.group-invitation-actions .is-decline {
    border-color: var(--box-border);
}

.group-icon-action.is-transfer,
.group-invitation-actions .is-accept {
    border-color: #278b4b;
}

.group-member-avatar-wrap.is-team::after {
    background: var(--accent, var(--title-text));
    color: var(--box-bg);
}

.group-member-bar {
    background: var(--box-bg);
}

.group-member-bar-lp > span {
    background: #b40000;
}

.group-member-bar-kp > span {
    background: #005eb8;
}

.group-member-bar > strong {
    color: #fff;
    text-shadow: 0 1px 1px #000;
}

.right-column .group-panel {
    background: var(--col-bg);
    border-color: var(--box-border);
}

.right-column .group-panel .group-member-card {
    background: color-mix(in srgb, var(--box-bg) 90%, transparent);
    border-color: var(--box-border);
    color: var(--box-text);
}

.right-column .group-panel .group-member-card-body {
    background: transparent;
    box-shadow: none;
}

.right-column .group-panel .group-member-level {
    background: transparent;
    color: var(--accent, var(--title-text));
}

.right-column .group-panel .group-member-location {
    background: color-mix(in srgb, var(--box-bg) 88%, transparent);
    color: var(--box-text);
}

.world1-infight-inactivity {
    background: color-mix(in srgb, var(--box-bg) 90%, #000 10%);
    border-top-color: var(--box-border);
    color: var(--box-text);
}

.world1-infight-inactivity-countdown.is-expired {
    color: var(--accent, var(--title-text));
}

.right-column .group-panel .group-member-bar-lp {
    background: #4d0000;
}

.right-column .group-panel .group-member-bar-kp {
    background: #001b42;
}

.right-column .group-panel .group-icon-action.is-kick {
    border-color: var(--box-border);
}
.right-menu-dropdown summary::after {
    background: var(--side-hover);
}
.right-game-menu-list a[data-icon]::before,
.right-game-menu-list span[data-icon]::before,
.right-menu-dropdown summary[data-icon]::before {
    background: var(--side-hover);
}
.right-menu-dropdown-list a {
    background: var(--box-bg);
    border-bottom-color: var(--box-border);
    color: var(--side-link);
}
.right-menu-dropdown-list a:hover {
    background: var(--select-hover-bg);
    color: var(--side-hover);
}
.bb-progress-track {
    background: var(--box-bg);
    border: 1px solid var(--box-border);
}
.bb-progress-bar {
    background: var(--scroll-button-bg);
}
.right-screenshot-grid {
    background: var(--box-bg);
    border-color: var(--box-border);
}
.right-screenshot-button {
    background: var(--select-bg);
    border-color: var(--select-border);
}
.right-screenshot-button:hover {
    border-color: var(--hover);
}
.right-screenshot-grid::-webkit-scrollbar {
    width: 10px;
}
.right-screenshot-grid::-webkit-scrollbar-track {
    background: var(--select-bg);
}
.right-screenshot-grid::-webkit-scrollbar-thumb {
    background: var(--scroll-button-bg);
    border: 1px solid var(--scroll-button-border);
}
.right-admin-empty {
    background: var(--box-bg);
    border-color: var(--box-border);
    color: var(--box-text);
    box-shadow: var(--box-shadow);
}
.right-visitor-box,
.right-discord-button,
.right-mmofacts-link {
    background: var(--nav-bg);
    border-color: var(--box-border);
    color: #ffffff !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.03);
}
.right-visitor-box *,
.right-discord-button *,
.right-mmofacts-link * {
    color: #ffffff !important;
}
.right-visitor-box span,
.right-discord-button span,
.right-discord-button strong,
.right-mmofacts-link span,
.right-mmofacts-link strong {
    color: #ffffff !important;
}
.right-discord-button strong {
    color: #ffffff !important;
}
.right-visitor-box span {
    color: #ffffff !important;
}
.right-discord-button:hover,
.right-mmofacts-link:hover {
    background: var(--nav-active-bg);
    color: #ffffff !important;
}
.right-discord-button:hover span,
.right-discord-button:hover strong,
.right-mmofacts-link:hover span,
.right-mmofacts-link:hover strong {
    color: #ffffff !important;
}
.left-login-row input {
    background: var(--select-bg);
    border-color: var(--select-border);
    color: var(--select-text);
}
.left-login-row input:focus {
    outline: none;
    background: var(--select-hover-bg);
    box-shadow: var(--select-focus-shadow);
}
.left-login-captcha-inner {
    background: var(--box-soft-bg, var(--quote-bg));
    border-color: var(--box-border);
    color: var(--box-text);
}
.left-login-captcha-inner span {
    color: var(--accent, var(--title-text));
}
.left-login-actions button {
    background: var(--nav-active-bg);
    border-color: var(--box-border);
    color: #ffffff !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.04);
}
.left-login-actions button:hover {
    background: var(--select-hover-bg);
    color: #ffffff !important;
}
.left-status-box {
    color: var(--body-text);
}
.left-status-box a {
    color: var(--body-text);
}
.left-status-box a:hover {
    color: var(--accent, var(--title-text));
}
.left-world-links a {
    background: var(--nav-bg);
    border: 1px solid var(--box-border);
    color: #ffffff !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.03);
}
.left-world-links a strong {
    color: #ffffff !important;
}
.left-world-links a span {
    color: var(--success, #25d15f);
}
.left-world-links a::before {
    background: var(--side-hover);
}
.left-world-links a:hover {
    background: var(--nav-active-bg);
    color: #ffffff !important;
}
.login-page-panel {
    background: var(--box-bg);
    border-color: var(--box-border);
    box-shadow: var(--box-shadow);
}
.login-page-head {
    background-color: var(--side-title-bg);
    background-image: linear-gradient(90deg, rgba(0,0,0,.78), rgba(0,0,0,.35)), var(--left-menu-banner-image);
    border-bottom-color: var(--box-border);
}
.login-page-head span {
    color: var(--side-title-text);
    text-shadow: var(--title-shadow);
}
.login-page-orb,
.login-page-info,
.login-page-center {
    background: var(--box-soft-bg, var(--quote-bg));
    border-color: var(--box-border);
}
.login-page-form {
    background-color: var(--box-bg);
    background-image: linear-gradient(90deg, rgba(0,0,0,.86), rgba(0,0,0,.72)), var(--left-menu-banner-image);
    border-color: var(--box-border);
}
.login-page-form::before {
    background-image: linear-gradient(90deg, rgba(0,0,0,.86), rgba(0,0,0,.72)), var(--left-menu-banner-image);
}
.login-page-center,
.login-page-info {
    border-left-color: var(--side-hover);
}
.login-page-orb {
    background: linear-gradient(180deg, var(--box-bg), var(--box-soft-bg, var(--quote-bg)));
}
.login-page-orb::before {
    background: var(--side-hover);
    filter: blur(34px);
    opacity: .5;
}
.login-page-center-title {
    color: var(--accent, var(--title-text));
    text-shadow: var(--title-shadow);
}
.login-page-ball {
    filter: drop-shadow(0 4px 8px rgba(0,0,0,.65));
}
.login-page-center input {
    background: var(--select-bg);
    border-color: var(--select-border);
    color: var(--select-text);
}
.login-page-center input:focus {
    outline: none;
    background: var(--select-hover-bg);
    box-shadow: var(--select-focus-shadow);
}
.login-page-captcha-inner {
    background: var(--box-soft-bg, var(--quote-bg));
    border-color: var(--box-border);
    color: var(--box-text);
}
.register-panel,
.register-preview,
.register-trait,
.register-note,
.system-message-modal,
.system-message-line {
    background: var(--box-bg);
    border-color: var(--box-border);
    color: var(--box-text);
    box-shadow: var(--box-shadow);
}
.system-message-head {
    background-color: var(--side-title-bg);
    background-image: linear-gradient(90deg, rgba(0,0,0,.78), rgba(0,0,0,.35)), var(--left-menu-banner-image);
    border-color: var(--box-border);
    color: var(--side-title-text);
    text-shadow: var(--title-shadow);
}
.system-message-foot {
    background: var(--box-soft-bg, var(--quote-bg));
    border-color: var(--box-border);
}
.system-message-line.success {
    border-left-color: #2f8f2f;
}
.system-message-line.error {
    border-left-color: #b30000;
}
.system-message-ok {
    background: var(--scroll-button-bg);
    border-color: var(--scroll-button-border);
    color: #fff;
}
.system-message-ok:hover {
    background: var(--scroll-button-hover-bg);
    color: #fff;
}
.register-head {
    background: var(--section-bg);
    border-color: var(--box-border);
    color: var(--section-text);
}
.register-field input,
.register-field select {
    background: var(--select-bg);
    border-color: var(--select-border);
    color: var(--select-text);
}
.register-field input:focus,
.register-field select:focus {
    outline: none;
    background: var(--select-bg);
    border-color: var(--accent-color, var(--select-border));
    color: var(--select-text);
    box-shadow: none;
}
.register-field select option {
    background: var(--select-bg);
    color: var(--select-text);
}
.register-submit button {
    background: var(--scroll-button-bg);
    border-color: var(--scroll-button-border);
    color: #ffffff !important;
    box-shadow: var(--scroll-button-shadow);
}
.register-submit button:hover {
    background: var(--scroll-button-hover-bg);
    color: #ffffff !important;
}
.register-preview-canvas {
    background: var(--box-soft-bg, var(--quote-bg));
}
.register-trait strong,
.register-head strong {
    color: var(--accent, var(--title-text));
}
.login-page-captcha-inner span {
    color: var(--accent, var(--title-text));
}
.login-page-actions button,
.login-page-actions a,
.login-page-info a {
    background: var(--scroll-button-bg);
    border-color: var(--scroll-button-border);
    color: #ffffff !important;
    box-shadow: var(--scroll-button-shadow);
}
.login-page-actions button:hover,
.login-page-actions a:hover,
.login-page-info a:hover {
    background: var(--scroll-button-hover-bg);
    color: #ffffff !important;
}
.login-page-info strong {
    color: var(--accent, var(--title-text));
    text-shadow: var(--title-shadow);
}
.login-page-info span {
    color: var(--box-text);
}
.screen-modal {
    background: rgba(0,0,0,.76);
}
.screen-modal-box {
    background: var(--box-bg);
    border-color: var(--box-border);
    color: var(--box-text);
    box-shadow: var(--box-shadow);
}
.screen-modal-head {
    background-color: var(--side-title-bg);
    background-image: linear-gradient(90deg, rgba(0,0,0,.78), rgba(0,0,0,.35)), var(--left-menu-banner-image);
    border-bottom-color: var(--box-border);
    color: var(--side-title-text);
    text-shadow: var(--title-shadow);
}
.screen-modal-close {
    background: var(--scroll-button-bg);
    border-color: var(--scroll-button-border);
    color: #ffffff;
}
.screen-modal-image {
    background: #000;
    border-color: var(--box-border);
}
.screen-modal-desc {
    background: var(--quote-bg);
    border-color: var(--box-border);
    color: var(--box-text);
}
.content-box,
.news-post,
.news-preview,
.news-history-head,
.news-history-search,
.news-history-entry,
.news-history-empty,
.news-more,
.news-pagination { background: var(--box-bg); border-color: var(--box-border); color: var(--box-text); box-shadow: var(--box-shadow); }
.admin-dashboard-grid a {
    background: var(--scroll-button-bg);
    border-color: var(--scroll-button-border);
    color: #ffffff !important;
    box-shadow: var(--scroll-button-shadow);
}
.admin-dashboard-grid a:hover {
    background: var(--scroll-button-hover-bg);
    color: #ffffff !important;
}
.admin-news-settings,
.admin-news-form,
.admin-news-list,
.admin-item-form,
.admin-item-grant,
.admin-item-list,
.admin-gear-form,
.admin-gear-grant,
.admin-gear-list,
.gear-summary span,
.gear-inventory-card,
.gear-inventory-image,
.gear-effect-list span,
.gear-inventory-empty {
    background: var(--box-bg);
    border-color: var(--box-border);
    color: var(--box-text);
    box-shadow: var(--box-shadow);
}
.admin-news-tabs a,
.admin-news-tabs span,
.admin-team-tabs a,
.admin-team-tabs span,
.admin-item-tabs a,
.admin-item-tabs span,
.admin-gear-tabs a,
.admin-gear-tabs span {
    background: var(--scroll-button-bg);
    border-color: var(--scroll-button-border);
    color: #ffffff !important;
    box-shadow: var(--scroll-button-shadow);
}
.admin-news-tabs a:hover,
.admin-news-tabs .is-active,
.admin-team-tabs a:hover,
.admin-team-tabs .is-active,
.admin-item-tabs a:hover,
.admin-item-tabs .is-active,
.admin-gear-tabs a:hover,
.admin-gear-tabs .is-active {
    background: var(--scroll-button-hover-bg);
    color: #ffffff !important;
}
.admin-news-form-title {
    background-color: var(--side-title-bg);
    background-image: linear-gradient(90deg, rgba(0,0,0,.78), rgba(0,0,0,.35)), var(--left-menu-banner-image);
    border-color: var(--box-border);
    color: var(--side-title-text);
    text-shadow: var(--title-shadow);
}
.admin-news-settings span,
.admin-news-form label span,
.admin-news-row strong,
.admin-item-form label span,
.admin-item-grant label span,
.admin-item-row strong,
.admin-gear-form label span,
.admin-gear-grant label span,
.admin-gear-row strong,
.gear-inventory-heading h2 {
    color: var(--accent, var(--title-text));
}
.admin-news-auto-info {
    background: var(--quote-bg);
    border-color: var(--box-border);
    border-left-color: var(--side-hover);
    color: var(--box-text);
}
.admin-news-settings input,
.admin-news-form input[type="text"],
.admin-news-form input[type="datetime-local"],
.admin-news-form textarea,
.admin-item-form input[type="text"],
.admin-item-form input[type="number"],
.admin-item-form select,
.admin-item-form input[type="file"],
.admin-item-grant input[type="text"],
.admin-item-grant input[type="number"],
.admin-item-grant select,
.admin-gear-form input[type="text"],
.admin-gear-form input[type="number"],
.admin-gear-form select,
.admin-gear-form input[type="file"],
.admin-gear-grant input[type="text"],
.admin-gear-grant input[type="number"],
.admin-gear-grant select {
    background: var(--select-bg);
    border-color: var(--select-border);
    color: var(--select-text);
}

.admin-item-form select option,
.admin-item-grant select option,
.admin-gear-form select option,
.admin-gear-grant select option {
    background: var(--select-bg);
    color: var(--select-text);
}
.admin-news-settings input:focus,
.admin-news-form input:focus,
.admin-news-form textarea:focus,
.admin-item-form input:focus,
.admin-item-form select:focus,
.admin-item-grant input:focus,
.admin-item-grant select:focus,
.admin-gear-form input:focus,
.admin-gear-form select:focus,
.admin-gear-grant input:focus,
.admin-gear-grant select:focus {
    outline: none;
    background: var(--select-hover-bg);
    box-shadow: var(--select-focus-shadow);
}
.admin-news-form .sceditor-container,
.admin-planet-form .sceditor-container,
.admin-screen-form .sceditor-container,
.admin-info-form .sceditor-container,
.admin-team-form .sceditor-container,
.admin-videos-form .sceditor-container,
.admin-item-form .sceditor-container,
.admin-gear-form .sceditor-container,
.admin-technique-form-v2 .sceditor-container {
    background: var(--box-bg);
    border-color: var(--select-border);
    color: var(--box-text);
    box-shadow: var(--box-shadow);
}
.admin-news-form div.sceditor-toolbar,
.admin-planet-form div.sceditor-toolbar,
.admin-screen-form div.sceditor-toolbar,
.admin-info-form div.sceditor-toolbar,
.admin-team-form div.sceditor-toolbar,
.admin-videos-form div.sceditor-toolbar,
.admin-item-form div.sceditor-toolbar,
.admin-gear-form div.sceditor-toolbar,
.admin-technique-form-v2 div.sceditor-toolbar {
    background: var(--side-title-bg);
    border-bottom-color: var(--box-border);
}
.admin-news-form div.sceditor-group,
.admin-planet-form div.sceditor-group,
.admin-screen-form div.sceditor-group,
.admin-info-form div.sceditor-group,
.admin-team-form div.sceditor-group,
.admin-videos-form div.sceditor-group,
.admin-item-form div.sceditor-group,
.admin-gear-form div.sceditor-group,
.admin-technique-form-v2 div.sceditor-group {
    background: var(--select-hover-bg);
    border-color: var(--box-border);
}
.admin-news-form .sceditor-button,
.admin-planet-form .sceditor-button,
.admin-screen-form .sceditor-button,
.admin-info-form .sceditor-button,
.admin-team-form .sceditor-button,
.admin-videos-form .sceditor-button,
.admin-item-form .sceditor-button,
.admin-gear-form .sceditor-button,
.admin-technique-form-v2 .sceditor-button {
    background: var(--scroll-button-bg);
    color: #ffffff !important;
}
.admin-news-form .sceditor-button:hover,
.admin-news-form .sceditor-button.active,
.admin-planet-form .sceditor-button:hover,
.admin-planet-form .sceditor-button.active,
.admin-screen-form .sceditor-button:hover,
.admin-screen-form .sceditor-button.active,
.admin-info-form .sceditor-button:hover,
.admin-info-form .sceditor-button.active,
.admin-team-form .sceditor-button:hover,
.admin-team-form .sceditor-button.active,
.admin-videos-form .sceditor-button:hover,
.admin-videos-form .sceditor-button.active,
.admin-item-form .sceditor-button:hover,
.admin-item-form .sceditor-button.active,
.admin-gear-form .sceditor-button:hover,
.admin-gear-form .sceditor-button.active,
.admin-technique-form-v2 .sceditor-button:hover,
.admin-technique-form-v2 .sceditor-button.active {
    background: var(--scroll-button-hover-bg);
    box-shadow: none;
}
.admin-news-form .sceditor-button svg,
.admin-planet-form .sceditor-button svg,
.admin-screen-form .sceditor-button svg,
.admin-info-form .sceditor-button svg,
.admin-team-form .sceditor-button svg,
.admin-videos-form .sceditor-button svg,
.admin-item-form .sceditor-button svg,
.admin-gear-form .sceditor-button svg,
.admin-technique-form-v2 .sceditor-button svg {
    fill: #ffffff;
}
.admin-news-form .sceditor-container iframe,
.admin-news-form .sceditor-container textarea,
.admin-planet-form .sceditor-container iframe,
.admin-planet-form .sceditor-container textarea,
.admin-screen-form .sceditor-container iframe,
.admin-screen-form .sceditor-container textarea,
.admin-info-form .sceditor-container iframe,
.admin-info-form .sceditor-container textarea,
.admin-team-form .sceditor-container iframe,
.admin-team-form .sceditor-container textarea,
.admin-videos-form .sceditor-container iframe,
.admin-videos-form .sceditor-container textarea,
.admin-item-form .sceditor-container iframe,
.admin-item-form .sceditor-container textarea,
.admin-gear-form .sceditor-container iframe,
.admin-gear-form .sceditor-container textarea,
.admin-technique-form-v2 .sceditor-container iframe,
.admin-technique-form-v2 .sceditor-container textarea,
div.sceditor-dropdown input,
div.sceditor-dropdown textarea {
    background: var(--select-bg);
    color: #dff8fb !important;
}
.admin-news-upload input,
.admin-news-upload span,
.admin-item-form input[type="file"],
.admin-gear-form input[type="file"],
.admin-item-form input[type="file"]::file-selector-button,
.admin-gear-form input[type="file"]::file-selector-button,
.admin-technique-form-v2 input[type="file"],
.admin-technique-form-v2 input[type="file"]::file-selector-button,
div.sceditor-dropdown {
    background: var(--select-hover-bg);
    border-color: var(--box-border);
    color: var(--box-text);
}
div.sceditor-dropdown label,
div.sceditor-dropdown a,
div.sceditor-dropdown a:link {
    color: var(--box-text);
}
div.sceditor-dropdown input:focus,
div.sceditor-dropdown textarea:focus {
    outline: none;
    background: var(--select-hover-bg);
    box-shadow: var(--select-focus-shadow);
}
.admin-news-upload button,
div.sceditor-dropdown .button {
    background: var(--scroll-button-bg);
    border-color: var(--scroll-button-border);
    color: #ffffff !important;
    box-shadow: var(--scroll-button-shadow);
}
.admin-news-upload button:hover,
div.sceditor-dropdown .button:hover {
    background: var(--scroll-button-hover-bg);
    color: #ffffff !important;
}
.admin-news-upload .is-loading {
    color: var(--side-hover);
}
.admin-news-upload .is-success {
    color: #6dff8e;
}
.admin-news-upload .is-error {
    color: #ff8a8a;
}

.admin-item-form .sceditor-container {
    background: var(--box-bg);
    border-color: var(--select-border);
    color: var(--box-text);
    box-shadow: var(--box-shadow);
}

.admin-item-form div.sceditor-toolbar {
    background: var(--side-title-bg);
    border-bottom-color: var(--box-border);
}

.admin-item-form div.sceditor-group {
    background: var(--select-hover-bg);
    border-color: var(--box-border);
}

.admin-item-form .sceditor-button {
    background: var(--scroll-button-bg);
    color: #ffffff !important;
}

.admin-item-form .sceditor-button:hover,
.admin-item-form .sceditor-button.active {
    background: var(--scroll-button-hover-bg);
    box-shadow: none;
}

.admin-item-form .sceditor-button svg {
    fill: #ffffff;
}

.admin-item-form .sceditor-container iframe,
.admin-item-form .sceditor-container textarea {
    background: var(--select-bg);
    color: #dff8fb !important;
}

.item-discard-form select,
.item-discard-form select option {
    background: var(--select-bg);
    border-color: var(--select-border);
    color: var(--select-text);
}

.item-discard-form button {
    background: var(--scroll-button-bg);
    border-color: var(--scroll-button-border);
    color: #ffffff !important;
    box-shadow: var(--scroll-button-shadow);
}

.item-discard-form button:hover {
    background: var(--scroll-button-hover-bg);
    color: #ffffff !important;
}
.admin-news-settings button,
.admin-news-actions button,
.admin-news-actions a,
.admin-news-row a,
.admin-news-row button,
.admin-news-pagination a,
.admin-news-pagination span,
.admin-screen-actions button,
.admin-screen-actions a,
.admin-screen-row a,
.admin-screen-row button,
.admin-screen-pagination a,
.admin-screen-pagination span,
.admin-item-actions button,
.admin-item-actions a,
.admin-item-row a,
.admin-item-row button,
.admin-gear-actions button,
.admin-gear-actions a,
.admin-gear-row a,
.admin-gear-row button,
.gear-use-form button {
    background: var(--scroll-button-bg);
    border-color: var(--scroll-button-border);
    color: #ffffff !important;
    box-shadow: var(--scroll-button-shadow);
}
.admin-news-settings button:hover,
.admin-news-actions button:hover,
.admin-news-actions a:hover,
.admin-news-row a:hover,
.admin-news-row button:hover,
.admin-news-pagination a:hover,
.admin-news-pagination .is-active,
.admin-screen-actions button:hover,
.admin-screen-actions a:hover,
.admin-screen-row a:hover,
.admin-screen-row button:hover,
.admin-screen-pagination a:hover,
.admin-screen-pagination .is-active,
.admin-item-actions button:hover,
.admin-item-actions a:hover,
.admin-item-row a:hover,
.admin-item-row button:hover,
.admin-gear-actions button:hover,
.admin-gear-actions a:hover,
.admin-gear-row a:hover,
.admin-gear-row button:hover,
.gear-use-form button:hover {
    background: var(--scroll-button-hover-bg);
    color: #ffffff !important;
}
.admin-news-row,
.admin-news-list-meta,
.admin-news-empty,
.admin-screen-row,
.admin-screen-list-meta,
.admin-screen-empty,
.admin-item-row,
.admin-gear-row,
.gear-inventory-heading {
    border-bottom-color: var(--box-border);
}
.admin-news-pagination em,
.admin-screen-pagination em {
    background: transparent;
    border-color: transparent;
    color: var(--preview-date);
}
.content-box h1,
.news-post-title,
.news-author-panel strong,
.news-preview h2 a,
.news-history-entry h2 a,
.news-history-head-title { color: var(--title-text); }
.content-box h1 {
    background-color: var(--side-title-bg);
    background-image: linear-gradient(90deg, rgba(0,0,0,.78), rgba(0,0,0,.35)), var(--left-menu-banner-image);
    border-bottom-color: var(--box-border);
    color: var(--side-title-text);
    text-shadow: var(--title-shadow);
}
.news-post-title {
    background-color: var(--side-title-bg);
    background-image: linear-gradient(90deg, rgba(0,0,0,.78), rgba(0,0,0,.35)), var(--left-menu-banner-image);
    border-bottom-color: var(--box-border);
    color: var(--side-title-text);
    text-shadow: var(--title-shadow);
}
.news-author-panel {
    background: linear-gradient(180deg, var(--section-bg), var(--box-bg));
    border-right-color: var(--box-border);
}
.news-author-panel strong,
.news-author-panel span:not(.news-avatar-wrap):not(.news-avatar-badge) {
    border-color: var(--box-border);
}
.news-header {
    background-color: var(--news-header-bg);
    background-image: var(--left-menu-banner-image);
    border-color: var(--news-header-border);
}
.news-header::before {
    background: linear-gradient(90deg, rgba(0,0,0,.84), rgba(0,0,0,.68));
}
.news-meta {
    background: transparent;
    color: var(--partner-text, var(--box-text));
    text-shadow: var(--partner-text-shadow, none);
}
.news-avatar { border-color: var(--avatar-border); box-shadow: var(--avatar-shadow); }
.news-avatar-badge { background: var(--badge-bg); border-color: var(--badge-border); color: var(--badge-text); text-shadow: var(--badge-shadow); }
.news-author-panel span:not(.news-avatar-wrap):not(.news-avatar-badge),
.news-body { color: var(--box-text); }
.news-media { border-color: var(--box-border); box-shadow: var(--box-shadow); }
.bbcode-content blockquote { background: var(--quote-bg); border-left-color: var(--quote-border); color: var(--box-text); }
.bbcode-content hr { border-top-color: var(--box-text); }
.bbcode-content td,
.bbcode-content th,
.bb-table td,
.bb-table th { border-color: var(--box-border); }
.news-post-nav { border-top-color: var(--box-border); }
.section-title {
    background-color: var(--side-title-bg);
    background-image: linear-gradient(90deg, rgba(0,0,0,.78), rgba(0,0,0,.35)), var(--left-menu-banner-image);
    border-color: var(--box-border);
    color: var(--side-title-text);
    text-shadow: var(--title-shadow);
}
.news-preview-date,
.news-history-head-meta { color: var(--preview-date); }
.news-history-entry-date {
    background: transparent;
    border-left-color: var(--title-text);
    color: var(--preview-date);
}
.news-history-search label { color: var(--title-text); }
.news-history-search input[type="text"] {
    background: var(--select-bg);
    border-color: var(--select-border);
    color: var(--select-text);
}
.news-history-search button,
.news-history-search a {
    background: var(--scroll-button-bg);
    border-color: var(--scroll-button-border);
    color: #ffffff !important;
    box-shadow: var(--scroll-button-shadow);
}
.news-history-search button:hover,
.news-history-search a:hover {
    background: var(--scroll-button-hover-bg);
    color: #ffffff !important;
}
.news-history-open,
.news-pagination-link {
    background: var(--scroll-button-bg);
    border-color: var(--scroll-button-border);
    color: #ffffff !important;
    box-shadow: var(--scroll-button-shadow);
}
.news-history-open:hover,
.news-pagination-link:hover,
.news-pagination-link.is-active {
    background: var(--scroll-button-hover-bg);
    color: #ffffff !important;
}
.news-pagination-link.is-disabled {
    background: var(--news-header-bg);
    border-color: var(--news-header-border);
    color: var(--preview-date);
    box-shadow: none;
}
.news-pagination-gap {
    background: transparent;
    color: var(--preview-date);
    box-shadow: none;
}
.players-head,
.players-search,
.players-table-wrap,
.players-pagination {
    background: var(--box-bg);
    border-color: var(--box-border);
    color: var(--box-text);
    box-shadow: var(--box-shadow);
}
.players-head-title,
.players-table th,
.players-search label {
    color: var(--title-text);
}
.players-head-meta {
    color: var(--preview-date);
}
.players-search input[type="text"],
.players-search select {
    background: var(--select-bg);
    border-color: var(--select-border);
    color: var(--select-text);
}
.players-search input[type="text"]:focus,
.players-search select:focus {
    outline: none;
    background: var(--select-hover-bg);
    box-shadow: var(--select-focus-shadow);
}
.players-search button,
.players-search a,
.players-pagination-link {
    background: var(--scroll-button-bg);
    border-color: var(--scroll-button-border);
    color: #ffffff !important;
    box-shadow: var(--scroll-button-shadow);
}
.players-search button:hover,
.players-search a:hover,
.players-pagination-link:hover,
.players-pagination-link.is-active {
    background: var(--scroll-button-hover-bg);
    color: #ffffff !important;
}
.players-pagination-link.is-disabled {
    background: var(--news-header-bg);
    border-color: var(--news-header-border);
    color: var(--preview-date) !important;
    box-shadow: none;
}
.players-pagination-gap {
    background: transparent;
    color: var(--preview-date);
    box-shadow: none;
}
.players-table th,
.players-table td,
.players-empty {
    background: var(--content-bg);
    border-color: var(--box-border);
    color: var(--box-text);
}
.players-user-cell strong {
    color: var(--title-text);
}
.players-user-cell em {
    color: var(--preview-date);
}
.players-avatar-wrap img {
    background: var(--box-bg);
    border-color: var(--box-border);
}
.players-avatar-wrap.is-team img {
    border-color: var(--avatar-border);
    box-shadow: var(--avatar-shadow);
}
.players-avatar-wrap.is-team::after {
    background: var(--badge-bg);
    border-color: var(--badge-border);
    color: var(--badge-text);
    text-shadow: var(--badge-shadow);
}
.info-hub,
.info-menu,
.info-hub-center,
.info-content,
.info-content-section {
    background: var(--box-bg);
    border-color: var(--box-border);
    color: var(--box-text);
    box-shadow: var(--box-shadow);
}
.info-menu a { color: var(--side-link); }
.info-menu a:hover,
.info-menu a.is-active { color: var(--hover); }
.info-hub-center img { border-color: var(--box-border); }
.info-hub-title,
.info-content h1,
.info-content-section h2 { color: var(--title-text); }
.info-content h1 {
    background-color: var(--side-title-bg);
    background-image: linear-gradient(90deg, rgba(0,0,0,.82), rgba(0,0,0,.44)), var(--left-menu-banner-image);
    border-color: var(--box-border);
    color: var(--side-title-text);
    text-shadow: var(--title-shadow);
}
.info-hub-current,
.info-summary { color: var(--box-text); }
.info-summary {
    background: var(--quote-bg);
    border-left-color: var(--title-text);
}
.partner-join,
.partner-banner-entry { background: var(--box-bg); border-color: var(--box-border); color: var(--box-text); box-shadow: var(--box-shadow); }
.partner-overview { border-color: var(--box-border); color: var(--box-text); box-shadow: var(--box-shadow); }
.partner-join-head h2 { color: var(--title-text); }
.partner-overview::before { background: var(--partner-overlay-bg, rgba(0,0,0,.46)); }
.partner-overview-title,
.partner-banner-label { background: var(--nav-bg); color: var(--nav-active-text); }
.partner-overview-text {
    background: var(--partner-text-bg, rgba(0,0,0,.58));
    border-color: var(--box-border);
    color: var(--partner-text, #fff);
    text-shadow: var(--partner-text-shadow, 0 1px 2px rgba(0,0,0,.9));
}
.partner-own-banner { border-color: var(--box-border); }
.partner-overview-button {
    background: var(--scroll-button-bg);
    border-color: var(--scroll-button-border);
    color: #ffffff;
    box-shadow: var(--scroll-button-shadow);
}
.partner-overview-button:hover {
    background: var(--scroll-button-hover-bg);
    color: #ffffff;
}
.partner-banner-entry textarea {
    background: var(--select-bg);
    border: 1px solid var(--select-border);
    color: var(--select-text);
}
.site-footer { background: var(--footer-bg); border-color: var(--footer-border); color: var(--footer-text); box-shadow: var(--box-shadow); }
.footer-cookie-link {
    color: var(--footer-text);
}
.footer-cookie-link:hover {
    color: var(--hover);
}
.scroll-top-button {
    background: var(--scroll-button-bg);
    border-color: var(--scroll-button-border);
    color: var(--scroll-button-text);
    box-shadow: var(--scroll-button-shadow);
}
.scroll-top-button:hover {
    background: var(--scroll-button-hover-bg);
    color: var(--scroll-button-hover-text);
}
.cookie-modal {
    background: rgba(0,0,0,.76);
}
.cookie-modal-box {
    background: var(--box-bg);
    border-color: var(--box-border);
    color: var(--box-text);
    box-shadow: var(--box-shadow);
}
.cookie-modal-head {
    background-color: var(--side-title-bg);
    background-image: linear-gradient(90deg, rgba(0,0,0,.78), rgba(0,0,0,.35)), var(--left-menu-banner-image);
    border-bottom-color: var(--box-border);
    color: var(--side-title-text);
    text-shadow: var(--title-shadow);
}
.cookie-modal-close,
.cookie-modal-actions button {
    background: var(--scroll-button-bg);
    border-color: var(--scroll-button-border);
    color: #ffffff;
    box-shadow: var(--scroll-button-shadow);
}
.cookie-modal-close:hover,
.cookie-modal-actions button:hover {
    background: var(--scroll-button-hover-bg);
    color: #ffffff;
}
.cookie-modal-row {
    background: var(--quote-bg);
    border-color: var(--box-border);
}
.cookie-modal-text {
    background: var(--quote-bg);
    border-color: var(--box-border);
    color: var(--box-text);
}
.cookie-modal-text a {
    color: var(--title-text);
}
.cookie-modal-row-title,
.cookie-modal-row-state {
    color: var(--title-text);
}
.cookie-modal-choice input {
    accent-color: var(--title-text);
}

.online-overview,
.online-empty,
.online-planet-section,
.today-online-section,
.admin-planet-tabs,
.admin-planet-form,
.admin-planet-training-availability,
.admin-planet-list,
.admin-screen-tabs,
.admin-screen-form,
.admin-screen-list,
.admin-item-form,
.admin-item-grant,
.admin-item-list,
.admin-gear-form,
.admin-gear-grant,
.admin-gear-list {
    background: var(--box-bg);
    border-color: var(--box-border);
    color: var(--box-text);
    box-shadow: var(--box-shadow);
}

.admin-race-tabs,
.admin-race-form,
.admin-race-list-head,
.admin-race-list,
.admin-race-empty,
.admin-race-image-field,
.admin-race-preview,
.admin-race-checks,
.admin-race-techniques {
    background: var(--box-bg);
    border-color: var(--box-border);
    color: var(--box-text);
    box-shadow: var(--box-shadow);
}

.admin-race-form input,
.admin-race-form select,
.admin-race-form select option,
.admin-race-form textarea {
    background: var(--input-bg, var(--content-bg));
    border-color: var(--box-border);
    color: var(--box-text);
}

.admin-race-form input:focus,
.admin-race-form select:focus,
.admin-race-form textarea:focus {
    outline: none;
    background: var(--input-bg, var(--content-bg));
    border-color: var(--accent-color, var(--box-border));
    color: var(--box-text);
    box-shadow: none;
}

.admin-race-create,
.admin-race-row a,
.admin-race-row button,
.admin-race-bottom button,
.admin-race-bottom a,
.admin-race-image-field input[type="file"]::file-selector-button {
    background: var(--scroll-button-bg);
    border-color: var(--scroll-button-border);
    color: #ffffff !important;
    box-shadow: var(--scroll-button-shadow);
}

.admin-race-create:hover,
.admin-race-row a:hover,
.admin-race-row button:hover,
.admin-race-bottom button:hover,
.admin-race-bottom a:hover,
.admin-race-image-field input[type="file"]::file-selector-button:hover {
    background: var(--scroll-button-hover-bg);
    color: #ffffff !important;
}

.admin-planet-options {
    background: var(--content-bg);
    border-color: var(--box-border);
    color: var(--box-text);
}
.online-overview div,
.online-planet-image,
.online-planet-placeholder,
.online-table th,
.online-table td,
.today-online-user,
.today-online-empty,
.admin-planet-tabs a,
.admin-planet-tabs span,
.admin-planet-form-title,
.admin-planet-image-preview,
.admin-planet-image-preview span,
.admin-planet-training-row,
.admin-planet-training-places,
.admin-planet-training-place,
.admin-planet-row,
.admin-planet-empty,
.admin-screen-tabs a,
.admin-screen-tabs span,
.admin-screen-form-title,
.admin-screen-preview,
.admin-screen-row,
.admin-screen-list-meta,
.admin-screen-empty,
.admin-item-effect-group,
.admin-item-settings,
.admin-item-preview,
.admin-gear-preview,
.admin-gear-active,
.admin-item-row,
.admin-gear-row,
.admin-item-list .admin-planet-empty {
    background: var(--content-bg);
    border-color: var(--box-border);
    color: var(--box-text);
}
.online-planet-head,
.today-online-head {
    background-color: var(--side-title-bg);
    background-image: linear-gradient(90deg, rgba(0,0,0,.78), rgba(0,0,0,.35)), var(--left-menu-banner-image);
    background-position: center center;
    background-size: cover;
    border-color: var(--box-border);
    color: var(--side-title-text);
    text-shadow: var(--title-shadow);
}
.online-overview strong,
.online-planet-head strong,
.today-online-head,
.admin-planet-form-title,
.admin-planet-training-availability strong,
.admin-planet-tabs .is-active,
.admin-screen-form-title,
.admin-screen-tabs .is-active,
.admin-screen-preview strong,
.admin-screen-row strong,
.admin-item-effect-group > strong,
.admin-item-settings > strong,
.admin-item-preview strong,
.admin-item-row strong,
.admin-gear-form .admin-planet-form-title,
.admin-gear-grant .admin-planet-form-title,
.admin-gear-tabs .is-active,
.admin-gear-preview strong,
.admin-gear-row strong {
    color: var(--title-text);
}
.online-avatar-wrap img {
    background: var(--box-bg);
    border-color: var(--box-border);
}
.online-avatar-wrap.is-team img {
    border-color: var(--avatar-border);
    box-shadow: var(--avatar-shadow);
}
.online-avatar-wrap.is-team::after {
    background: var(--badge-bg);
    border-color: var(--badge-border);
    color: var(--badge-text);
    text-shadow: var(--badge-shadow);
}
.online-action-link,
.admin-planet-actions button,
.admin-planet-actions a,
.admin-planet-row a,
.admin-planet-row button,
.admin-screen-tabs a,
.admin-screen-tabs span,
.admin-item-actions button,
.admin-item-actions a,
.admin-item-row a,
.admin-item-row button,
.admin-gear-actions button,
.admin-gear-actions a,
.admin-gear-row a,
.admin-gear-row button,
.gear-use-form button,
.item-use-form button {
    background: var(--scroll-button-bg);
    border-color: var(--scroll-button-border);
    color: #ffffff !important;
    box-shadow: var(--scroll-button-shadow);
}
.online-action-link:hover,
.admin-planet-actions button:hover,
.admin-planet-actions a:hover,
.admin-planet-row a:hover,
.admin-planet-row button:hover,
.admin-screen-tabs a:hover,
.admin-screen-tabs .is-active,
.admin-item-actions button:hover,
.admin-item-actions a:hover,
.admin-item-row a:hover,
.admin-item-row button:hover,
.admin-gear-actions button:hover,
.admin-gear-actions a:hover,
.admin-gear-row a:hover,
.admin-gear-row button:hover,
.gear-use-form button:hover,
.item-use-form button:hover {
    background: var(--scroll-button-hover-bg);
    color: #ffffff !important;
}
.admin-planet-form input[type="text"],
.admin-planet-form input[type="number"],
.admin-planet-form select,
.admin-planet-form select option,
.admin-planet-form input[type="file"],
.admin-planet-form textarea,
.admin-screen-form input[type="text"],
.admin-screen-form input[type="number"],
.admin-screen-form input[type="file"],
.admin-screen-form textarea,
.admin-news-upload input[type="file"],
.admin-item-form input[type="text"],
.admin-item-form input[type="number"],
.admin-item-form select,
.admin-item-form select option,
.admin-item-form input[type="file"],
.admin-item-form textarea,
.admin-item-grant input[type="text"],
.admin-item-grant input[type="number"],
.admin-item-grant select,
.admin-item-grant select option,
.admin-gear-form input[type="text"],
.admin-gear-form input[type="number"],
.admin-gear-form select,
.admin-gear-form select option,
.admin-gear-form input[type="file"],
.admin-gear-form textarea,
.admin-gear-grant input[type="text"],
.admin-gear-grant input[type="number"],
.admin-gear-grant select,
.admin-gear-grant select option {
    background: var(--select-bg);
    border-color: var(--select-border);
    color: var(--select-text);
}

.admin-item-active input,
.admin-gear-active input {
    accent-color: var(--title-text);
}

.training-active,
.training-empty,
.training-card,
.training-card-image,
.training-rewards span,
.training-start-form select,
.training-fixed-time {
    background: var(--box-bg);
    border-color: var(--box-border);
    color: var(--box-text);
}

/* Native option lists cannot render the gradient used by --box-bg. */
.training-card .training-start-form select option {
    background-color: var(--select-bg);
    background-image: none;
    color: var(--select-text);
}

.training-card-body h2,
.training-active span,
.training-rewards span,
.right-status-card em,
.special-training-unlock strong {
    color: var(--accent, var(--title-text));
}

.right-status-card {
    background: var(--box-bg);
    border-bottom-color: var(--box-border);
    color: var(--box-text);
}

.right-status-card b {
    color: var(--muted-text, var(--box-text));
}

.right-status-card strong {
    color: var(--box-text);
}

.right-status-card em {
    border-top-color: var(--box-border);
}

.right-status-cancel button {
    color: var(--accent, var(--title-text));
}

.right-status-cancel button:hover,
.right-status-cancel button:focus-visible {
    color: var(--link-hover, var(--accent));
}

.special-training-unlock {
    background: var(--panel-bg, var(--box-bg));
    border-color: var(--box-border);
    color: var(--box-text);
}

.training-start-form button {
    background: var(--scroll-button-bg);
    border-color: var(--scroll-button-border);
    color: #ffffff;
}

.training-start-form button:hover {
    background: var(--scroll-button-hover-bg);
    color: #ffffff;
}

.training-start-form button:disabled {
    background: var(--select-bg);
    border-color: var(--select-border);
    color: var(--select-text);
}
.admin-planet-upload-field input[type="file"]::file-selector-button,
.admin-screen-upload-field input[type="file"]::file-selector-button,
.admin-news-upload input[type="file"]::file-selector-button,
.admin-item-form input[type="file"]::file-selector-button,
.admin-gear-form input[type="file"]::file-selector-button,
.admin-gear-upload input[type="file"]::file-selector-button,
.admin-user-image-upload input[type="file"]::file-selector-button {
    background: var(--scroll-button-bg);
    border-color: var(--scroll-button-border);
    color: #ffffff;
}
.admin-planet-upload-field input[type="file"]::file-selector-button:hover,
.admin-screen-upload-field input[type="file"]::file-selector-button:hover,
.admin-news-upload input[type="file"]::file-selector-button:hover,
.admin-item-form input[type="file"]::file-selector-button:hover,
.admin-gear-form input[type="file"]::file-selector-button:hover,
.admin-gear-upload input[type="file"]::file-selector-button:hover,
.admin-user-image-upload input[type="file"]::file-selector-button:hover {
    background: var(--scroll-button-hover-bg);
    color: #ffffff;
}

.admin-user-search,
.admin-user-edit,
.admin-user-account-summary,
.admin-user-edit-main,
.admin-user-image-panel,
.admin-user-image-preview,
.admin-user-techniques,
.admin-user-technique-group h2 {
    background: var(--panel-bg, var(--box-bg));
    border-color: var(--box-border);
    color: var(--box-text);
}
.admin-user-fight-bans,
.admin-user-ban-row {
    background: var(--panel-bg, var(--box-bg));
    border-color: var(--box-border);
    color: var(--box-text);
}
.admin-user-ban-form input,
.admin-user-ban-form select,
.admin-user-ban-form select option {
    background: var(--select-bg);
    border-color: var(--select-border);
    color: var(--select-text);
}
.admin-user-ban-form input:focus,
.admin-user-ban-form select:focus {
    outline: none;
    border-color: var(--accent-color, var(--box-border));
    box-shadow: none;
}
.admin-user-ban-row button,
.admin-user-ban-form button {
    background: var(--scroll-button-bg);
    border: 1px solid var(--scroll-button-border);
    color: #ffffff !important;
    box-shadow: var(--scroll-button-shadow);
}
.admin-user-ban-row button:hover,
.admin-user-ban-form button:hover {
    background: var(--scroll-button-hover-bg);
    color: #ffffff !important;
}
.admin-user-search input,
.admin-user-edit input,
.admin-user-edit select,
.admin-user-edit select option,
.admin-user-image-upload input[type="file"] {
    background: var(--select-bg);
    border-color: var(--select-border);
    color: var(--select-text);
}
.admin-user-search input:focus,
.admin-user-edit input:focus,
.admin-user-edit select:focus {
    outline: none;
    border-color: var(--accent-color, var(--box-border));
    box-shadow: none;
}
.admin-user-search button,
.admin-user-search a,
.admin-user-row > a {
    background: var(--scroll-button-bg);
    border: 1px solid var(--scroll-button-border);
    color: #ffffff !important;
    box-shadow: var(--scroll-button-shadow);
}
.admin-user-search button:hover,
.admin-user-search a:hover,
.admin-user-row > a:hover {
    background: var(--scroll-button-hover-bg);
    color: #ffffff !important;
}
.admin-user-techniques legend,
.admin-user-technique-group h2,
.admin-user-image-panel > strong {
    color: var(--title-text);
}

.admin-screen-tabs a,
.admin-screen-tabs span {
    background: var(--content-bg);
    border-color: var(--box-border);
    color: var(--box-text) !important;
    box-shadow: none;
}

.admin-screen-tabs a:hover,
.admin-screen-tabs .is-active {
    background: var(--content-bg);
    border-color: var(--box-border);
    color: var(--title-text) !important;
    box-shadow: none;
}

.admin-news-tabs,
.admin-screen-tabs {
    background: var(--box-bg);
    border-color: var(--box-border);
    color: var(--box-text);
    box-shadow: var(--box-shadow);
}

.admin-news-tabs a,
.admin-news-tabs span,
.admin-screen-tabs a,
.admin-screen-tabs span {
    background: var(--content-bg);
    border-color: var(--box-border);
    color: var(--box-text) !important;
    box-shadow: none;
}

.admin-news-tabs a:hover,
.admin-news-tabs .is-active,
.admin-screen-tabs a:hover,
.admin-screen-tabs .is-active {
    background: var(--content-bg);
    border-color: var(--box-border);
    color: var(--title-text) !important;
    box-shadow: none;
}

div.sceditor-toolbar .sceditor-button div,
div.sceditor-grip {
    background-image: url("/static?file=vendor/sceditor/minified/themes/famfamfam.png") !important;
}

.admin-info-form,
.admin-team-form,
.admin-videos-form,
.info-team-card,
.info-team-section-title,
.info-video-card,
.info-empty {
    background: var(--panel-bg, var(--box-bg));
    border-color: var(--panel-border, var(--box-border));
    color: var(--body-text, var(--box-text));
}

.admin-info-tabs a,
.admin-info-tabs span,
.admin-team-actions button,
.admin-team-actions a,
.admin-team-row a,
.admin-team-row button,
.admin-video-row a,
.admin-video-row button,
.info-video-link {
    background: var(--scroll-button-bg);
    border-color: var(--scroll-button-border);
    color: #ffffff !important;
    box-shadow: var(--scroll-button-shadow);
}

.admin-info-tabs a:hover,
.admin-info-tabs .is-active,
.admin-team-actions button:hover,
.admin-team-actions a:hover,
.admin-team-row a:hover,
.admin-team-row button:hover,
.admin-video-row a:hover,
.admin-video-row button:hover,
.info-video-link:hover {
    background: var(--scroll-button-hover-bg);
    color: #ffffff !important;
}

.admin-team-row,
.admin-video-row {
    border-color: var(--table-border);
    color: var(--body-text);
}

.admin-team-row strong,
.admin-video-row strong,
.info-video-card h2,
.info-team-profile strong,
.info-team-card-head span,
.info-team-section-title span {
    color: var(--title-text, var(--side-title-text));
}

.info-team-card-head,
.info-team-body {
    border-color: var(--panel-border, var(--box-border));
}

.info-team-body {
    background: var(--box-bg);
}

.info-team-section-title {
    background-color: var(--side-title-bg);
    background-image: linear-gradient(90deg, rgba(0,0,0,.82), rgba(0,0,0,.44)), var(--left-menu-banner-image);
    border-color: var(--panel-border, var(--box-border));
    color: var(--title-text, var(--side-title-text));
    text-shadow: var(--title-shadow);
}

.info-team-card-head {
    background: var(--content-bg);
    border-color: var(--panel-border, var(--box-border));
    color: var(--title-text, var(--side-title-text));
    text-shadow: var(--title-shadow);
}

.info-team-profile {
    border-color: var(--panel-border, var(--box-border));
}

.admin-video-row img,
.info-video-card iframe {
    border-color: var(--panel-border, var(--box-border));
}

.admin-info-form input,
.admin-info-form textarea,
.admin-team-form input,
.admin-team-form select,
.admin-team-form textarea,
.admin-videos-form input,
.admin-videos-form select,
.admin-videos-form textarea {
    background: var(--select-bg);
    border-color: var(--select-border);
    color: var(--select-text);
}

.profile-showcase,
.profile-card,
.profile-facts-panel,
.profile-stat-bar,
.profile-facts-grid span,
.profile-facts-grid strong,
.profile-empty {
    border-color: var(--panel-border, var(--box-border));
    color: var(--body-text, var(--box-text));
}

.profile-card,
.profile-facts-panel,
.profile-empty {
    background: var(--panel-bg, var(--box-bg));
    box-shadow: var(--box-shadow);
}

.profile-showcase {
    background-color: var(--right-column-bg, var(--page-bg));
}

.profile-identity-card,
.profile-ki-card,
.profile-location-card,
.profile-clan-card {
    background: rgba(0, 0, 0, .34);
    border-color: rgba(255, 255, 255, .06);
    box-shadow: 0 18px 34px rgba(0, 0, 0, .32);
}

.profile-ki-card {
    background-image:
        linear-gradient(rgba(0, 0, 0, .28), rgba(0, 0, 0, .34)),
        url("/asset?file=assets%2Fui%2Fkampfkraft_banner.png");
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}

.profile-identity-text strong,
.profile-ki-card strong,
.profile-location-card strong,
.profile-clan-card strong,
.profile-level-badge strong,
.profile-facts-grid strong {
    color: var(--title-text, var(--side-title-text));
    text-shadow: var(--title-shadow);
}

.profile-identity-text span,
.profile-ki-card span,
.profile-location-card span,
.profile-clan-card span,
.profile-facts-grid span {
    color: var(--muted-text, var(--box-text));
}

.profile-identity-text em.is-online {
    color: #28e866;
}

.profile-identity-text em.is-offline {
    color: var(--muted-text, var(--box-text));
}

.profile-avatar-frame img,
.profile-character-stage-fallback img {
    border-color: var(--team-avatar-border, var(--panel-border));
    background: var(--content-bg);
}

.profile-avatar-frame.is-team::after,
.profile-team-badge {
    background: var(--team-badge-bg, var(--scroll-button-bg));
    color: #ffffff;
}

.profile-level-badge {
    border-color: transparent;
    background: rgba(0, 0, 0, .34);
    color: var(--title-text, var(--side-title-text));
    box-shadow: 0 18px 34px rgba(0, 0, 0, .32);
}

.profile-equipped-title {
    color: var(--title-text, var(--side-title-text));
    text-shadow: var(--title-shadow);
}

.profile-title-stars {
    --profile-title-star-border: var(--box-border);
}

.admin-title-form,
.admin-title-list,
.admin-title-row,
.admin-title-empty {
    background: var(--box-bg);
    border-color: var(--box-border);
    color: var(--box-text);
    box-shadow: var(--box-shadow);
}

.admin-title-form input[type="text"],
.admin-title-form input[type="number"],
.admin-title-form select,
.admin-title-form select option,
.admin-title-form input[type="color"],
.admin-title-form textarea {
    background: var(--content-bg);
    border-color: var(--box-border);
    color: var(--box-text);
}

.admin-title-row a,
.admin-title-row button,
.admin-title-form .admin-planet-actions button,
.admin-title-form .admin-planet-actions a {
    background: var(--scroll-button-bg);
    border-color: var(--scroll-button-border);
    color: #ffffff !important;
    box-shadow: var(--scroll-button-shadow);
}

.admin-title-row a:hover,
.admin-title-row button:hover,
.admin-title-form .admin-planet-actions button:hover,
.admin-title-form .admin-planet-actions a:hover {
    background: var(--scroll-button-hover-bg);
    color: #ffffff !important;
}

.profile-level-badge::before,
.profile-level-badge::after {
    border-color: var(--title-text, var(--side-title-text));
}

.profile-action-rail {
    background: rgba(0, 0, 0, .34);
    box-shadow: 0 18px 34px rgba(0, 0, 0, .34);
}

.profile-action-rail a {
    background: rgba(255, 255, 255, .08);
    border-color: transparent;
    color: #ffffff !important;
    box-shadow: none;
}

.profile-action-rail a:hover {
    background: var(--scroll-button-bg);
    color: #ffffff !important;
}

.profile-pvp-panel,
.profile-pvp-tile,
.profile-signature-box {
    background: var(--panel-bg, var(--box-bg));
    border-color: var(--panel-border, var(--box-border));
    color: var(--body-text, var(--box-text));
    box-shadow: var(--box-shadow);
}

.profile-pvp-head,
.profile-signature-title {
    background-color: var(--side-title-bg);
    background-image: linear-gradient(90deg, rgba(0,0,0,.78), rgba(0,0,0,.35)), var(--left-menu-banner-image);
    background-position: center center;
    background-size: cover;
    border-color: var(--panel-border, var(--box-border));
    color: var(--title-text, var(--side-title-text));
    text-shadow: var(--title-shadow);
}

.profile-pvp-tile {
    background: rgba(0, 0, 0, .34);
}

.profile-pvp-tile span,
.profile-signature-empty {
    color: var(--muted-text, var(--box-text));
}

.profile-pvp-tile strong {
    color: var(--title-text, var(--side-title-text));
    text-shadow: var(--title-shadow);
}

.profile-signature-content {
    background: var(--content-bg);
    color: var(--box-text);
}

.profile-stat-bar {
    background: var(--content-bg);
}

.profile-stat-bar meter::-webkit-meter-bar {
    background: rgba(0, 0, 0, .58);
}

.profile-stat-bar-lp meter::-webkit-meter-optimum-value {
    background: linear-gradient(90deg, #8d0000, #ff1d1d);
}

.profile-stat-bar-kp meter::-webkit-meter-optimum-value {
    background: linear-gradient(90deg, #00458d, #168fff);
}

.profile-stat-bar-lp meter::-moz-meter-bar {
    background: linear-gradient(90deg, #8d0000, #ff1d1d);
}

.profile-stat-bar-kp meter::-moz-meter-bar {
    background: linear-gradient(90deg, #00458d, #168fff);
}
.admin-map-editor,
.admin-map-canvas,
.admin-map-place-menu,
.travel-head,
.travel-map,
.travel-place-list,
.travel-destination-popup {
    border-color: var(--box-border);
    background-color: var(--box-bg);
}

.admin-map-canvas > span,
.admin-map-hint,
.travel-map-empty {
    color: var(--text-muted);
}

.admin-map-place-menu strong {
    color: var(--accent);
}

.admin-map-place-menu select {
    color: var(--text);
    border-color: var(--input-border);
    background: var(--input-bg);
}

.admin-map-place-menu button {
    color: var(--button-text);
    border-color: var(--button-border);
    background: var(--button-bg);
}

.admin-map-place-menu {
    color: var(--box-text);
    border-color: var(--box-border);
    background: rgba(0, 0, 0, .72);
}

.admin-map-pin span {
    color: var(--button-text);
    border-color: var(--box-border);
    background: var(--section-bg);
}

.travel-map-pin-label {
    color: var(--button-text);
    border-color: var(--box-border);
    background: var(--section-bg);
    box-shadow: var(--box-shadow);
}

.travel-map-pin-label::after {
    border-color: var(--box-border);
    background: var(--section-bg);
}

.travel-destination-head {
    border-bottom-color: var(--box-border);
}

.travel-destination-head strong,
.right-travel-state em {
    color: var(--accent, var(--title-text));
}

.travel-destination-head span,
.travel-destination-body {
    color: var(--box-text);
}

.travel-destination-popup {
    background: var(--shell-bg);
    box-shadow: 0 12px 28px rgba(0, 0, 0, .88), var(--box-shadow);
}

.travel-destination-actions button {
    color: var(--scroll-button-text);
    border-color: var(--scroll-button-border);
    background: var(--scroll-button-bg);
    box-shadow: var(--scroll-button-shadow);
}

.travel-destination-actions button:hover {
    color: var(--scroll-button-hover-text);
    background: var(--scroll-button-hover-bg);
}

.travel-item-control select,
.travel-item-control select option {
    color: var(--select-text);
    border-color: var(--select-border);
    background: var(--select-bg);
}

.travel-item-control > button {
    color: #ffffff;
    border-color: var(--scroll-button-border);
    background: var(--scroll-button-bg);
    box-shadow: var(--scroll-button-shadow);
}

.travel-item-control > button:hover:not(:disabled) {
    color: #ffffff;
    background: var(--scroll-button-hover-bg);
}

.item-travel-use-hint {
    color: var(--box-text);
    border-color: var(--box-border);
    background: var(--content-bg);
}

.item-travel-use-hint strong {
    color: var(--title-text);
}

.travel-route-line .travel-route-shadow {
    stroke: rgba(0, 0, 0, .72);
}

.travel-route-line .travel-route-segment {
    stroke: var(--travel-route-stroke, #e72727);
}

.travel-player-marker {
    background: var(--travel-player-marker-bg, #1289ff);
}

.travel-player-marker::before {
    background: var(--travel-player-marker-dot, #fff);
}

.travel-place-row {
    border-bottom-color: var(--box-border);
}

.travel-place-row.is-current {
    background: rgba(255,255,255,.04);
}

.travel-place-row button {
    color: var(--button-text);
    border-color: var(--badge-border);
    background: var(--badge-bg);
}

/* Item-Kategorien verwenden exakt das bestehende Admin-Theme. */
.admin-item-category-form,
.admin-item-category-list {
    background: var(--box-bg);
    border-color: var(--box-border);
    color: var(--box-text);
    box-shadow: var(--box-shadow);
}

.admin-item-category-form .admin-planet-form-title,
.admin-item-category-list .admin-planet-form-title,
.admin-item-category-row,
.admin-item-category-list .admin-planet-empty {
    background: var(--content-bg);
    border-color: var(--box-border);
    color: var(--box-text);
}

.admin-item-category-form .admin-planet-form-title,
.admin-item-category-list .admin-planet-form-title,
.admin-item-category-row strong {
    color: var(--title-text);
}

.admin-item-category-form input[type="text"],
.admin-item-category-form input[type="number"] {
    background: var(--select-bg);
    border-color: var(--select-border);
    color: var(--select-text);
}

.admin-item-category-form input[type="text"]:focus,
.admin-item-category-form input[type="number"]:focus {
    outline: none;
    border-color: var(--title-text);
}

.admin-item-category-form .admin-item-active input {
    accent-color: var(--title-text);
}

.admin-item-category-form .admin-item-actions button,
.admin-item-category-form .admin-item-actions a,
.admin-item-category-row a,
.admin-item-category-row button {
    background: var(--scroll-button-bg);
    border-color: var(--scroll-button-border);
    color: #ffffff !important;
    box-shadow: var(--scroll-button-shadow);
}

.admin-item-category-form .admin-item-actions button:hover,
.admin-item-category-form .admin-item-actions a:hover,
.admin-item-category-row a:hover,
.admin-item-category-row button:hover {
    background: var(--scroll-button-hover-bg);
    color: #ffffff !important;
}

/* System-Verwaltung verwendet in jedem Theme dieselben Komponentenfarben. */
.admin-system-panel,
.admin-system-limit,
.admin-system-reward-card {
    background: var(--box-bg);
    border-color: var(--box-border);
    color: var(--box-text);
    box-shadow: var(--box-shadow);
}

.admin-system-panel-title,
.admin-system-reward-card h2 {
    background-color: var(--side-title-bg);
    background-image: linear-gradient(90deg, rgba(0,0,0,.78), rgba(0,0,0,.35)), var(--left-menu-banner-image);
    background-position: center center;
    background-size: cover;
    border-color: var(--box-border);
    color: var(--side-title-text);
    text-shadow: var(--title-shadow);
}

.admin-system-panel-title strong,
.admin-system-reward-card h2,
.admin-system-form label span {
    color: var(--title-text);
}

.admin-system-panel-title span {
    color: var(--text-muted);
}

.admin-system-form input[type="number"] {
    background: var(--select-bg);
    border-color: var(--select-border);
    color: var(--select-text);
}

.admin-system-form input[type="number"]:focus {
    outline: none;
    border-color: var(--title-text);
}

.admin-system-limit p {
    background: var(--content-bg);
    border-left-color: var(--title-text);
    color: var(--box-text);
}

.admin-system-actions button {
    background: var(--scroll-button-bg);
    border-color: var(--scroll-button-border);
    color: #ffffff;
    box-shadow: var(--scroll-button-shadow);
}

.admin-system-actions button:hover {
    background: var(--scroll-button-hover-bg);
    color: #ffffff;
}

/* theme-black-cyan.css */
:root {
    --html-bg: radial-gradient(circle at 50% 0%, #07191d, transparent 0%), linear-gradient(180deg, #07191d 0%, #050708 48%, #061216 100%) fixed;
    --body-bg: transparent;
    --text: #dff8fb;
    --link: #dff8fb;
    --hover: #43e8ff;
    --shell-bg: #070b0d;
    --shell-shadow: 0 0 0 1px #174753, 0 0 30px rgba(0,0,0,.88);
    --banner-bg: linear-gradient(135deg, rgba(35,228,255,.16), transparent 38%), linear-gradient(180deg, #132024 0%, #070b0d 100%);
    --banner-border: #078aa0;
    --banner-text: #43e8ff;
    --brand-title: #7af2ff;
    --brand-subtitle: #ddfbff;
    --brand-title-shadow: 0 2px 0 #000, 0 0 12px rgba(67,232,255,.58);
    --brand-subtitle-shadow: 0 1px 0 #000, 0 0 8px rgba(67,232,255,.42);
    --sub-text: #c8e9ee;
    --nav-bg: linear-gradient(180deg, #162126 0%, #070b0d 100%);
    --nav-border: #078aa0;
    --nav-text: #dff8fb;
    --nav-active-bg: linear-gradient(180deg, #087f95 0%, #052a33 100%);
    --nav-active-text: #ddfbff;
    --col-bg: linear-gradient(180deg, rgba(35,228,255,.06), transparent 150px), #0a1113;
    --col-border: #174753;
    --side-title-bg: linear-gradient(180deg, #152327 0%, #0a1113 100%);
    --side-title-border: #174753;
    --side-title-text: #43e8ff;
    --side-link: #c8e9ee;
    --side-hover: #43e8ff;
    --small-text: #c8e9ee;
    --box-bg: radial-gradient(circle at 90% 12%, rgba(35,228,255,.07), transparent 24%), linear-gradient(180deg, #101719 0%, #070b0d 100%);
    --box-border: #174753;
    --box-text: #dff8fb;
    --box-shadow: inset 0 0 0 1px rgba(35,228,255,.09);
    --title-text: #43e8ff;
    --news-header-bg: linear-gradient(180deg, #152327 0%, #0a1113 100%);
    --news-header-border: #174753;
    --avatar-border: #14c9e6;
    --avatar-shadow: 0 0 0 1px #000;
    --quote-bg: rgba(0,0,0,.26);
    --quote-border: #078aa0;
    --section-bg: linear-gradient(180deg, #152327 0%, #0a1113 100%);
    --section-text: #43e8ff;
    --preview-date: #9ecbd2;
    --footer-bg: linear-gradient(180deg, #101719 0%, #070b0d 100%);
    --footer-border: #078aa0;
    --footer-text: #c8e9ee;
    --select-bg: #0a1113;
    --select-border: #078aa0;
    --select-text: #baf7ff;
    --badge-bg: linear-gradient(180deg, #43e8ff 0%, #087f95 100%);
    --badge-border: #14c9e6;
    --badge-text: #041317;
    --badge-shadow: none;
    --banner-shadow: 0 1px 0 #000;
    --title-shadow: 0 1px 0 #000;
    --select-focus-shadow: 0 0 0 2px rgba(67, 232, 255, 0.24);
    --select-hover-bg: #102129;
    --scroll-button-border: #14c9e6;
    --scroll-button-shadow: 0 2px 12px rgba(0,0,0,.55);
    --scroll-button-text: #ffffff;
    --scroll-button-hover-text: #ffffff;
    --scroll-button-hover-bg: linear-gradient(180deg, #ddfbff 0%, #078aa0 100%);
    --scroll-button-bg: linear-gradient(180deg, #43e8ff 0%, #087f95 100%);
    --left-menu-banner-image: url("/asset?file=assets%2Fui%2Fblack-cyan-panel-banner.png"), url("/banner?theme=black-cyan");
    --partner-overlay-bg: rgba(0,0,0,.52);
    --partner-text-bg: rgba(0,0,0,.74);
    --partner-text: #e7fbff;
    --partner-text-shadow: 0 1px 2px rgba(0,0,0,.95);
}


/* bbcode-render.css */
.bbcode-content {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 14px;
    line-height: 1.45;
    color: var(--box-text, #dff8fb);
    word-wrap: break-word;
}

.bbcode-content * {
    box-sizing: border-box;
}

.bbcode-content a,
.bbcode-content a * {
    color: var(--link-color, #43e8ff);
}

.bbcode-content strong,
.bbcode-content b {
    color: #ffffff;
    font-weight: 900;
}

.bbcode-content p,
.bbcode-content div {
    margin: 0 0 8px 0;
    padding: 0;
}

.bbcode-content h1,
.bbcode-content h2,
.bbcode-content h3,
.bbcode-content h4,
.bbcode-content h5,
.bbcode-content h6 {
    margin: 0 0 10px 0;
    padding: 0;
    font-weight: 900;
    line-height: 1.2;
}

.bbcode-content h1 { font-size: 28px; }
.bbcode-content h2 { font-size: 24px; }
.bbcode-content h3 { font-size: 21px; }
.bbcode-content h4 { font-size: 18px; }
.bbcode-content h5 { font-size: 16px; }
.bbcode-content h6 { font-size: 14px; }

.bbcode-content hr {
    display: block;
    width: 100%;
    height: 1px;
    margin: 12px 0;
    padding: 0;
    border: 0;
    border-top: 2px solid var(--box-text, #dff8fb);
}

.bbcode-content blockquote {
    width: auto;
    margin: 8px 0;
    padding: 8px 10px;
    background: var(--quote-bg, #05090a);
    border-left: 4px solid var(--quote-border, #14c9e6);
    color: var(--box-text, #dff8fb);
    text-align: left;
}

.bbcode-content code {
    display: block;
    margin: 8px 0;
    padding: 8px 10px;
    background: var(--content-bg, #05090a);
    border: 1px solid var(--box-border, #174753);
    color: var(--box-text, #dff8fb);
    white-space: pre-wrap;
}

.bbcode-content img {
    display: block;
    width: 710px;
    height: auto;
    margin: 8px auto;
    object-fit: contain;
}

.bbcode-content ul,
.bbcode-content ol {
    margin: 8px 0 8px 24px;
    padding: 0;
}

.bbcode-content li {
    margin: 0 0 4px 0;
    padding: 0;
}

.bbcode-content table,
.bbcode-content .bb-table,
.bb-table {
    width: 100%;
    margin: 8px 0;
    border-collapse: collapse;
}

.bbcode-content td,
.bbcode-content th,
.bb-table td,
.bb-table th {
    padding: 6px 8px;
    border: 1px solid var(--box-border, #174753);
    text-align: left;
}

.bbcode-content th,
.bb-table th {
    font-weight: 900;
}

.bbcode-content .bb-align-left { text-align: left; }
.bbcode-content .bb-align-center { text-align: center; }
.bbcode-content .bb-align-right { text-align: right; }
.bbcode-content .bb-align-justify { text-align: justify; }
.bbcode-content .bb-indent { margin-left: 28px; }

