/*
Theme Name: Astra Child
Theme URI: https://wpastra.com/
Template: astra
Author: Brainstorm Force
Author URI: https://wpastra.com/about/?utm_source=theme_preview&utm_medium=author_link&utm_campaign=astra_theme
Description: The Astra WordPress theme is lightning-fast and highly customizable. It has over 1 million downloads and the only theme in the world with 6,000+ five-star reviews! It’s ideal for professional web designers, solopreneurs, small businesses, eCommerce, membership sites and any type of website. It offers special features and templates so it works perfectly with all page builders like Spectra, Elementor, Beaver Builder, etc. Fast performance, clean code, mobile-first design and schema markup are all built-in, making the theme exceptionally SEO-friendly. It’s fully compatible with WooCommerce, SureCart and other eCommerce plugins and comes with lots of store-friendly features and templates. Astra also provides expert support for free users. A dedicated team of fully trained WordPress experts are on hand to help with every aspect of the theme. Try the live demo of Astra: https://zipwp.org/themes/astra/
Tags: custom-menu,custom-logo,entertainment,one-column,two-columns,left-sidebar,e-commerce,right-sidebar,custom-colors,editor-style,featured-images,full-width-template,microformats,post-formats,rtl-language-support,theme-options,threaded-comments,translation-ready,blog
Version: 4.12.4.1773521643
Updated: 2026-03-14 20:54:03
*/
/* ==========================================================================
   CHARACTER PROFILE
   ========================================================================== */

/* ==========================================================================
   HERO
   ========================================================================== */

.character-hero {
    position: relative;
    display: flex;
    align-items: flex-end;
    min-height: 240px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    color: #ffffff;
}

.character-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(15, 23, 42, 0.58);
    z-index: 1;
}

.character-hero::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -20px;
    height: 20px;
    background: linear-gradient(to bottom, rgba(30, 64, 175, 0.28), rgba(30, 64, 175, 0));
    pointer-events: none;
    z-index: 2;
}

.character-hero .inner {
    position: relative;
    z-index: 3;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 1.75rem 1.25rem 1.5rem;
}

.character-hero h1 {
    margin: 0;
    font-size: clamp(2rem, 4vw, 3rem);
    line-height: 1.05;
    font-weight: 700;
    color: #ffffff;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.7);
}

.character-subtitle,
.character-command,
.character-author,
.character-player {
    position: relative;
    z-index: 3;
    margin: 0;
}

.character-subtitle {
    margin-top: 0.45rem;
    font-size: 1.12rem;
    line-height: 1.35;
    font-weight: 500;
    color: #f3f4f6;
}

.character-command {
    margin-top: 0.6rem;
    font-size: 1rem;
    line-height: 1.4;
    color: #e5e7eb;
}

.character-author {
    margin-top: 0.45rem;
    font-size: 0.98rem;
    line-height: 1.4;
    color: #f3f4f6;
    font-style: italic;
    opacity: 0.95;
}

.character-player {
    margin-top: 0.45rem;
    font-size: 0.95rem;
    line-height: 1.4;
    color: #d1d5db;
}

.character-command a,
.character-author a,
.character-player a {
    text-decoration: none;
}

.character-command a,
.character-author a {
    color: #e5e7eb;
    font-weight: 500;
}

.character-player a {
    color: #e5e7eb;
    font-weight: 600;
}

.character-command a:hover,
.character-command a:focus,
.character-author a:hover,
.character-author a:focus,
.character-player a:hover,
.character-player a:focus {
    color: #ffffff;
    text-decoration: underline;
}

/* ==========================================================================
   HERO UNIVERSE ICON
   ========================================================================== */

.hero-universe-icon {
    position: absolute;
    top: 52%;
    right: 70px;
    z-index: 3;
    transform: translateY(-50%);
}

.hero-universe-icon img {
    display: block;
    width: auto;
    height: 120px;
    opacity: 0.9;
}

/* ==========================================================================
   CHARACTER HEADER BAR
   ========================================================================== */

.character-header-bar {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 88px;
    margin-top: 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.character-header-bar::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.15);
    pointer-events: none;
}

.character-header-bar .inner {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 1.25rem;
}

.character-header-bar h2 {
    margin: 0;
    color: #ffffff;
    font-size: 1.3rem;
    line-height: 1.2;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    text-shadow: 0 1px 4px rgba(0, 0, 0, 0.5);
}

/* ==========================================================================
   CHARACTER PAGE LAYOUT
   ========================================================================== */

.character-page {
    box-sizing: border-box;
    max-width: 1200px;
    margin: 0 auto;
    padding: 1.75rem 1rem 3rem;
}

.grid-container {
    display: grid;
    grid-template-columns: minmax(0, 2fr) 360px;
    gap: 2.25rem;
    align-items: start;
}

.character-main,
.character-sidebar {
    min-width: 0;
}

.character-sidebar {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    padding-left: 1.75rem;
    border-left: 1px solid #e3d8cc;
}

.character-sidebar > * + * {
    margin-top: 1.25rem;
}

/* ==========================================================================
   CHARACTER PAGE ACTIONS
   ========================================================================== */

.character-page-actions {
    margin: 0 0 1.25rem;
}

.character-edit-button {
    display: inline-block;
    padding: 0.45rem 0.8rem;
    background: #8c2d13;
    color: #ffffff;
    text-decoration: none;
    font-weight: 600;
    font-size: 0.85rem;
    line-height: 1.2;
    border: 1px solid #6f210d;
    border-radius: 3px;
}

.character-edit-button:hover,
.character-edit-button:focus {
    background: #a63e16;
    color: #ffffff;
    text-decoration: none;
}

/* ==========================================================================
   CHARACTER CONTENT
   ========================================================================== */

.section-title {
    margin: 0 0 1.25rem;
    padding-bottom: 0.4rem;
    color: #b45309;
    border-bottom: 1px solid #d6cec2;
    font-size: 2rem;
    line-height: 1.2;
    text-transform: uppercase;
    letter-spacing: 0.02em;
}

.prose {
    margin-bottom: 2rem;
    color: #2f2f2f;
    font-size: 1rem;
    line-height: 1.75;
}

.prose > *:first-child {
    margin-top: 0;
}

.prose > *:last-child {
    margin-bottom: 0;
}

.prose h2,
.prose h3,
.prose h4 {
    margin-top: 2rem;
    margin-bottom: 0.75rem;
    color: #374151;
    text-transform: uppercase;
    letter-spacing: 0.01em;
}

.prose p {
    margin: 0 0 1rem;
}

.prose a {
    color: #1d4ed8;
    text-decoration: underline;
}

.family-section {
    margin-bottom: 2rem;
}

.character-section {
    scroll-margin-top: 2rem;
}

/* ==========================================================================
   CHARACTER SIDEBAR MEDIA
   ========================================================================== */

.info-header-bar,
.portrait-wrap,
.info-footer-bar {
    box-sizing: border-box;
    width: 100%;
    margin: 0;
    padding: 0;
    line-height: 0;
}

.info-header-bar,
.info-footer-bar {
    display: block;
}

.portrait-wrap {
    background: #ffffff;
}

.info-header-bar img,
.portrait-img,
.info-footer-bar img {
    display: block;
    width: 100%;
    height: auto;
    margin: 0;
    padding: 0;
}

.portrait-img {
    box-sizing: border-box;
    max-width: 100%;
    padding: 5px;
    border: 1px solid #b98b2f;
    background: #ffffff;
}

/* ==========================================================================
   CHARACTER INFO BOX
   ========================================================================== */

.info-box {
    overflow: hidden;
    margin: 0;
    padding: 0;
    background: #efe4d8;
    border: 1px solid #cfb9a5;
}

.info-box h3 {
    margin: 0;
    padding: 12px 16px;
    background: linear-gradient(90deg, #8c2d13 0%, #c94b1c 35%, #e0682a 65%, #8c2d13 100%);
    color: #ffffff;
    font-size: 1.05rem;
    line-height: 1.2;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

/* ==========================================================================
   CHARACTER TABLES
   ========================================================================== */

.personnel-file,
.family-table {
    width: 100%;
    table-layout: fixed;
    border-collapse: collapse;
    background: #efe4d8;
    color: #2f2f2f;
    border: none !important;
}

.personnel-file tr,
.family-table tr {
    background: #efe4d8;
    border: none !important;
}

.personnel-file th,
.personnel-file td,
.family-table th,
.family-table td {
    padding: 0.7rem 0.9rem;
    text-align: left;
    vertical-align: top;
    font-size: 0.98rem;
    overflow-wrap: break-word;
    word-break: normal;
    background: transparent;
    border-top: none !important;
    border-right: none !important;
    border-bottom: 1px solid #d8c7b7;
    border-left: none !important;
    box-shadow: none !important;
}

.personnel-file th,
.family-table th {
    width: 40%;
    color: #333333;
    font-weight: 700;
}

.personnel-file td,
.family-table td {
    color: #2f2f2f;
}

.personnel-file a,
.family-table a {
    color: #1d4ed8;
    text-decoration: underline;
}

.personnel-file tr:last-child th,
.personnel-file tr:last-child td,
.family-table tr:last-child th,
.family-table tr:last-child td {
    border-bottom: 0;
}

/* ==========================================================================
   CHARACTER RANK DISPLAY
   ========================================================================== */

.rank-display {
    display: flex;
    align-items: left;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.rank-pip,
.rank-insignia {
    display: inline-block;
    width: auto;
    height: 36px;
    vertical-align: middle;
}

/* ==========================================================================
   PLAYER PROFILE
   ========================================================================== */

/* ==========================================================================
   PLAYER PAGE SHELL
   ========================================================================== */

.player-profile-page {
    background: #ececec;
    padding-bottom: 40px;
}

/* ==========================================================================
   PLAYER HERO
   ========================================================================== */

.player-hero {
    position: relative;
    display: flex;
    align-items: flex-end;
    min-height: 260px;
    margin-bottom: 30px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.player-hero-overlay {
    position: absolute;
    inset: 0;
    background: rgba(10, 18, 35, 0.35);
}

.player-hero-inner {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: flex-end;
    gap: 24px;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 40px 20px 30px;
}

.player-avatar img,
.player-avatar .avatar {
    display: block;
    width: 160px;
    height: 160px;
    object-fit: cover;
    border-radius: 50%;
    border: 4px solid #ffffff;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.25);
}

.player-identity h1 {
    margin: 0 0 8px;
    color: #ffffff;
    font-size: 48px;
    line-height: 1.1;
}

.player-identity p {
    margin: 0;
    color: #e6e6e6;
    font-size: 22px;
}

/* ==========================================================================
   PLAYER CUSTOM NAV
   ========================================================================== */

.fa-profile-nav {
    max-width: 1200px;
    margin: 0 auto 28px;
    padding: 0 20px;
}

.fa-profile-nav ul {
    display: flex;
    flex-wrap: wrap;
    gap: 0;
    margin: 0;
    padding: 0;
    list-style: none;
    background: #3f3f3f;
}

.fa-profile-nav li {
    margin: 0;
}

.fa-profile-nav a {
    display: block;
    padding: 14px 20px;
    color: #ffffff;
    text-decoration: none;
    font-weight: 600;
    line-height: 1.2;
}

.fa-profile-nav li.active a,
.fa-profile-nav a:hover,
.fa-profile-nav a:focus {
    background: #36a9e1;
    color: #ffffff;
}

/* ==========================================================================
   PLAYER LAYOUT
   ========================================================================== */

.player-profile-layout {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(280px, 1fr);
    gap: 28px;
    align-items: start;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px 30px;
}

.player-main,
.player-sidebar {
    min-width: 0;
}

.player-sidebar {
    display: flex;
    flex-direction: column;
    gap: 28px;
}

/* ==========================================================================
   SHARED PROFILE CARDS
   ========================================================================== */

.profile-card {
    margin-bottom: 28px;
    background: #ffffff;
    border: 1px solid #d7d7d7;
}

.player-sidebar .profile-card {
    margin-bottom: 0;
}

.profile-card-title {
    margin: 0;
    padding: 12px 18px;
    background: linear-gradient(to right, #8e540c, #c77b16);
    color: #ffffff;
    font-size: 28px;
    line-height: 1.2;
    text-transform: uppercase;
}

.profile-card-body {
    padding: 20px;
}

.player-sidebar .profile-card-title {
    font-size: 24px;
}

.player-sidebar .profile-card-body p {
    margin: 0 0 12px;
}

.player-sidebar .profile-card-body p:last-child {
    margin-bottom: 0;
}

/* ==========================================================================
   PLAYER MAIN CONTENT TIDY-UP
   ========================================================================== */

.player-main .um-profile-body {
    padding: 20px;
    background: #ffffff;
    border: 1px solid #d7d7d7;
}

.player-main .um-profile-body .um-row,
.player-main .um-profile-body .um-col-1,
.player-main .um-profile-body .um-col-alt {
    width: 100% !important;
    float: none !important;
    margin: 0 !important;
}

.player-main .um-profile-body::after {
    content: "";
    display: table;
    clear: both;
}

/* ==========================================================================
   RESPONSIVE
   ========================================================================== */

@media (max-width: 900px) {
    .grid-container {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }

    .character-hero {
        min-height: 220px;
    }

    .character-hero .inner {
        padding: 1.25rem 1rem;
    }

    .character-page {
        padding: 1.25rem 1rem 2rem;
    }

    .character-sidebar {
        margin-top: 0.5rem;
        padding-left: 0;
        border-left: none;
    }

    .character-sidebar > * + * {
        margin-top: 1rem;
    }

    .character-header-bar {
        min-height: 72px;
    }

    .hero-universe-icon {
        top: 50%;
        right: 20px;
    }

    .hero-universe-icon img {
        height: 90px;
    }

    .player-profile-layout {
        grid-template-columns: 1fr;
    }

    .player-hero-inner {
        flex-direction: column;
        align-items: flex-start;
    }

    .player-identity h1 {
        font-size: 36px;
    }

    .player-identity p {
        font-size: 18px;
    }

    .player-avatar img,
    .player-avatar .avatar {
        width: 120px;
        height: 120px;
    }

    .fa-profile-nav a {
        padding: 12px 16px;
        font-size: 0.95rem;
    }
}

@media (max-width: 600px) {
    .character-hero h1 {
        font-size: 2rem;
    }

    .character-subtitle {
        font-size: 1rem;
    }

    .character-command,
    .character-author,
    .character-player {
        font-size: 0.95rem;
    }

    .section-title {
        font-size: 1.5rem;
    }

    .personnel-file th,
    .personnel-file td,
    .family-table th,
    .family-table td {
        padding: 0.65rem 0.75rem;
        font-size: 0.95rem;
    }

    .personnel-file th,
    .family-table th {
        width: 42%;
        white-space: normal;
    }

    .character-header-bar h2 {
        font-size: 1.1rem;
    }

    .hero-universe-icon {
        position: static;
        transform: none;
        margin-top: 1rem;
    }

    .hero-universe-icon img {
        height: 70px;
    }

    .fa-profile-nav ul {
        flex-direction: column;
    }

    .fa-profile-nav a {
        padding: 12px 14px;
        font-size: 0.95rem;
    }
}

/* ==========================================================================
   WORDPRESS EDITOR HIDING
   ========================================================================== */

#postdivrich,
#postdiv,
.wp-editor-wrap {
    display: none !important;
}