:root {
    --blt-night: #0b0d1d;
    --blt-night-soft: #15182c;
    --blt-panel: #181b31;
    --blt-cinnabar: #b64232;
    --blt-cinnabar-deep: #8f2f28;
    --blt-orange: #f97316;
    --blt-gold: #e8d28b;
    --blt-gold-bright: #fde68a;
    --blt-gold-soft: #c8a860;
    --blt-paper: #fbf4e6;
    --blt-paper-deep: #efe0c5;
    --blt-ink: #30251d;
    --blt-ivory: #f6f1e6;
    --blt-muted: #b8ae9d;
    --blt-jade: #77a99c;
    --blt-line: rgba(232, 210, 139, .32);
    --blt-shadow: 0 14px 38px rgba(0, 0, 0, .28);
}

body.guoxue-theme {
    background-color: var(--blt-night);
    background-image:
        radial-gradient(circle at 88% -8%, rgba(139, 125, 255, .16), transparent 30%),
        radial-gradient(circle at 4% 18%, rgba(249, 115, 22, .16), transparent 29%),
        url("../images/guoxue-cultural-pattern.svg"),
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='36' viewBox='0 0 36 36'%3E%3Cpath d='M1 9h8V1h8v16H1V9zm18 10h16v8h-8v8h-8V19z' fill='none' stroke='%23e8d28b' stroke-opacity='.055' stroke-width='1'/%3E%3C/svg%3E");
    background-position: center top, center top, center 58px, center top;
    background-size: auto, auto, 360px 220px, 36px 36px;
    background-attachment: scroll;
}

.blt-brand-nav {
    position: relative;
    z-index: 1200;
    box-sizing: border-box;
    width: 100%;
    max-width: 750px;
    min-height: 57px;
    margin: 0 auto;
    padding: 6px 10px;
    border-top: 1px solid rgba(253, 230, 138, .16);
    border-bottom: 1px solid rgba(232, 210, 139, .34);
    background: #111426;
}

.blt-brand-nav::after {
    position: absolute;
    right: 10px;
    bottom: -1px;
    left: 10px;
    height: 2px;
    content: "";
    background: linear-gradient(90deg, transparent, var(--blt-gold), var(--blt-orange), var(--blt-gold), transparent);
    opacity: .82;
}

.blt-brand-nav__links {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
}

.blt-brand-nav__link {
    display: inline-flex;
    min-width: 0;
    min-height: 44px;
    flex: 1 1 0;
    align-items: center;
    justify-content: center;
    gap: 5px;
    box-sizing: border-box;
    padding: 0 7px;
    border: 1px solid rgba(232, 210, 139, .28);
    border-radius: 8px;
    color: var(--blt-ivory);
    background: #171a2e;
    font-size: 12px;
    font-weight: 700;
    line-height: 1;
    text-decoration: none;
    white-space: nowrap;
}

.blt-brand-nav__link svg {
    width: 16px;
    height: 16px;
    flex: 0 0 16px;
    fill: currentColor;
}

.blt-brand-nav__link--local {
    color: var(--blt-gold-bright);
}

.blt-brand-nav__link--platform {
    color: var(--blt-gold-bright);
}

.blt-brand-nav__link--member {
    color: #ffc989;
}

.blt-brand-nav__link:active {
    transform: translateY(1px);
    background: rgba(249, 115, 22, .14);
}

.gx-billing {
    position: fixed;
    z-index: 99999;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    padding: 20px;
    background: rgba(2, 3, 12, .78);
}

.gx-billing[hidden] { display: none; }

.gx-billing__panel {
    width: min(420px, 100%);
    box-sizing: border-box;
    padding: 24px 20px 18px;
    border: 1px solid rgba(232, 210, 139, .58);
    border-radius: 8px;
    color: var(--blt-ivory);
    background: #15182c;
    text-align: center;
}

.gx-billing__panel h2 { margin: 0 0 14px; color: var(--blt-gold-bright); font-family: "Microsoft YaHei", Arial, Helvetica, sans-serif; font-weight: 700; text-shadow: none; }
.gx-billing__panel p { margin: 10px 0; line-height: 1.7; }
.gx-billing__error { color: #ff9b8e; }
.gx-billing__member { display: inline-flex; min-height: 44px; align-items: center; color: #ffc989; }
.gx-billing__actions { display: flex; gap: 10px; margin-top: 18px; }
.gx-billing__actions button { min-height: 44px; flex: 1; border: 1px solid rgba(232, 210, 139, .34); border-radius: 8px; color: var(--blt-ivory); background: rgba(255, 255, 255, .05); }
.gx-billing__actions button:last-child { color: #24180d; border-color: transparent; background: linear-gradient(135deg, var(--blt-gold-bright), var(--blt-orange)); }

.guoxue-theme.guoxue-home .wrapper {
    background-color: var(--blt-night);
    background-image:
        linear-gradient(180deg, rgba(255, 255, 255, .025), transparent 16%),
        url("../images/guoxue-cultural-pattern.svg"),
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='36' viewBox='0 0 36 36'%3E%3Cpath d='M1 9h8V1h8v16H1V9zm18 10h16v8h-8v8h-8V19z' fill='none' stroke='%23e8d28b' stroke-opacity='.045' stroke-width='1'/%3E%3C/svg%3E");
    background-position: center top, center 44px, center top;
    background-size: auto, 360px 220px, 36px 36px;
    background-repeat: repeat-y, repeat-y, repeat;
}

.guoxue-theme.guoxue-home .bigbox,
.guoxue-theme.guoxue-home .index3Prod,
.guoxue-theme.guoxue-home .indexTejiProd {
    position: relative;
    border: 1px solid rgba(232, 210, 139, .38);
    border-radius: 8px;
    background: #111426;
}

.guoxue-theme.guoxue-home .bigbox::before,
.guoxue-theme.guoxue-home .bigbox::after {
    position: absolute;
    z-index: 2;
    width: 16px;
    height: 16px;
    content: "";
    pointer-events: none;
    opacity: .78;
}

.guoxue-theme.guoxue-home .bigbox::before {
    top: 7px;
    left: 7px;
    border-top: 1px solid var(--blt-gold);
    border-left: 1px solid var(--blt-gold);
}

.guoxue-theme.guoxue-home .bigbox::after {
    right: 7px;
    bottom: 7px;
    border-right: 1px solid var(--blt-gold);
    border-bottom: 1px solid var(--blt-gold);
}

.guoxue-theme.guoxue-home .indexTitle {
    position: relative;
}

.guoxue-theme.guoxue-home .indexTitle::after {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 1px;
    content: "";
    background: linear-gradient(90deg, rgba(232, 210, 139, .62), rgba(249, 115, 22, .24), transparent 84%);
}

.guoxue-theme.guoxue-home .indexTitle b {
    color: var(--blt-gold-bright);
    text-shadow: none;
}

.guoxue-theme.guoxue-home .indexLikeProd dl,
.guoxue-theme.guoxue-home .indexHotProd a {
    border: 0;
    border-radius: 8px;
    color: var(--blt-ink);
    outline: 1px solid rgba(200, 168, 96, .68);
    outline-offset: -1px;
    background: #f4e6ca;
}

.guoxue-theme.guoxue-home .indexHotProd a img {
    border-radius: 7px 7px 0 0;
}

.guoxue-theme.guoxue-home .indexLikeProd a dl dt span {
    color: #3f3024;
    text-shadow: none;
}

.guoxue-theme.guoxue-home .indexHotProd a,
.guoxue-theme.guoxue-home .indexHotProd a * {
    text-shadow: none;
}

.guoxue-theme.guoxue-home .indexHotProd {
    justify-content: flex-start;
    gap: .2rem .2rem;
}

.guoxue-theme.guoxue-home .indexHotProd a {
    width: calc(25% - .15rem);
    margin-bottom: 0;
}

/* Divination introductions sit on pale illustrated panels and need dark ink. */
.guoxue-theme.guoxue-home .indexInfo,
.guoxue-theme.guoxue-home .indexTxt {
    color: #5b4632 !important;
    text-shadow: none !important;
}

.guoxue-theme a[href],
.guoxue-theme button,
.guoxue-theme [onclick],
.guoxue-theme [role="button"],
.guoxue-theme input[type="submit"],
.guoxue-theme input[type="button"],
.guoxue-theme .J_sex span,
.guoxue-theme .J_gender span,
.guoxue-theme .J_datepicker,
.guoxue-theme .Js_date,
.guoxue-theme [class*="Js_date"],
.guoxue-theme .xinzuodtoph1li1,
.guoxue-theme .guanbi,
.guoxue-theme .tarotClick {
    cursor: pointer !important;
}

/* Shared secondary / tertiary / result-page skin. These rules only change
   colour, border and type rendering; original sizing and positioning remain. */
.guoxue-theme input,
.guoxue-theme select,
.guoxue-theme textarea,
.guoxue-theme button {
    text-shadow: none;
}

.guoxue-theme input:not([type="hidden"]),
.guoxue-theme select,
.guoxue-theme textarea {
    border-color: rgba(200, 168, 96, .62) !important;
}

.guoxue-theme input:not([type="hidden"]):focus,
.guoxue-theme select:focus,
.guoxue-theme textarea:focus {
    border-color: var(--blt-orange) !important;
    outline-color: rgba(249, 115, 22, .28);
}

.guoxue-theme input[type="submit"],
.guoxue-theme button[type="submit"],
.guoxue-theme .submit_btn,
.guoxue-theme .J_ajax_submit_btn {
    border-color: rgba(253, 230, 138, .58) !important;
    color: #26180d !important;
    background-color: var(--blt-orange) !important;
    background-image: linear-gradient(135deg, var(--blt-gold-bright), var(--blt-orange)) !important;
}

.guoxue-theme .public_form_wrap,
.guoxue-theme .order_info,
.guoxue-theme .infor-table,
.guoxue-theme .analysis > li,
.guoxue-theme .result-section,
.guoxue-theme .solution-box {
    border-color: rgba(232, 210, 139, .52) !important;
}

.guoxue-theme .analysis-title,
.guoxue-theme .public_title,
.guoxue-theme .result-header,
.guoxue-theme .result-section-title,
.guoxue-theme .key-text {
    border-color: rgba(232, 210, 139, .55) !important;
    color: #7e281f !important;
    background-color: var(--blt-paper) !important;
    background-image: none !important;
    text-shadow: none !important;
}

.guoxue-theme .result-section,
.guoxue-theme .order_info,
.guoxue-theme .infor-table,
.guoxue-theme .solution-box {
    color: var(--blt-ink);
    background-color: var(--blt-paper) !important;
    background-image: none !important;
}

.guoxue-theme .result-section-content,
.guoxue-theme .order_info p,
.guoxue-theme .infor-table,
.guoxue-theme .solution-box,
.guoxue-theme .public_con_word {
    color: #392c22 !important;
    text-shadow: none !important;
}

/* Original product pages use both pale paper panels and dark illustrated
   panels. Keep their native type colours instead of inheriting the homepage
   ivory text. These targeted controls are always drawn on pale surfaces. */
.guoxue-theme .index-form__words,
.guoxue-theme .index-form__sex span,
.guoxue-theme .form-item .label,
.guoxue-theme .content-sex span {
    color: #5b3420 !important;
    text-shadow: none !important;
}

.guoxue-theme .index-form__input,
.guoxue-theme .index-form__birthday,
.guoxue-theme .form-item input {
    color: #34261d !important;
}

.guoxue-theme .index-form__input::placeholder,
.guoxue-theme .index-form__birthday::placeholder,
.guoxue-theme .form-item input::placeholder {
    color: #8b7b6d !important;
    opacity: 1;
}

.guoxue-theme .forminput_hang_bt,
.guoxue-theme .forminput_hang_sex a {
    color: #6f351f !important;
    text-shadow: none !important;
}

.guoxue-theme .forminput_hang_name input,
.guoxue-theme .forminput_hang_date input {
    color: #34261d !important;
}

.guoxue-theme .swal-modal,
.guoxue-theme .layui-layer,
.guoxue-theme .pay_pop_box {
    border: 1px solid rgba(232, 210, 139, .58);
    color: var(--blt-ink);
    background: #f4e6ca !important;
}

.guoxue-theme button,
.guoxue-theme input[type="submit"],
.guoxue-theme .submit,
.guoxue-theme [class*="btn"] {
    border-color: rgba(232, 210, 139, .42);
}

@media (max-width: 360px) {
    .blt-brand-nav {
        padding-right: 6px;
        padding-left: 6px;
    }

    .blt-brand-nav__links {
        gap: 4px;
    }

    .blt-brand-nav__link {
        gap: 3px;
        padding: 0 4px;
        font-size: 11px;
    }

    .blt-brand-nav__link svg {
        width: 14px;
        height: 14px;
        flex-basis: 14px;
    }
}
