* {
    box-sizing: border-box;
}

html {
    -webkit-text-size-adjust: 100%;
}

body {
    margin: 0;
    background: #fff;
    color: #333;
    font-family: Arial, "Microsoft YaHei", sans-serif;
    font-size: 13px;
}

a {
    color: #075bc7;
    text-decoration: none;
}

a:hover {
    color: #e04423;
    text-decoration: underline;
}

button,
input,
select {
    font-family: inherit;
    font-size: 12px;
}

input[type="text"],
select {
    height: 26px;
    border: 1px solid #aebdcc;
    border-radius: 2px;
    background: #fff;
    color: #333;
    vertical-align: middle;
}

input[type="text"] {
    padding: 2px 5px;
}

button,
input[type="button"],
input[type="submit"] {
    min-height: 26px;
    padding: 3px 10px;
    border: 1px solid #a7b8c9;
    border-radius: 3px;
    background: #f4f7fa;
    color: #214467;
    cursor: pointer;
    vertical-align: middle;
}

button:hover,
input[type="button"]:hover,
input[type="submit"]:hover {
    background: #e5f0fc;
}

button:disabled,
input:disabled {
    cursor: default;
    opacity: .65;
}

input[type="checkbox"] {
    vertical-align: middle;
    cursor: pointer;
    accent-color: #087bc0;
}

.wrap {
    width: 1000px;
    max-width: calc(100% - 24px);
    margin: 0 auto;
}

.site-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    padding: 18px 0;
}

.site-logo {
    color: #e00000;
    font-size: 38px;
    font-weight: bold;
    font-family: "Microsoft YaHei", sans-serif;
    line-height: 1.1;
}

.site-logo small {
    display: block;
    font-family: Arial, sans-serif;
    font-size: 13px;
    letter-spacing: 2px;
}

.site-logo:hover {
    color: #e00000;
    text-decoration: none;
}

.header-links {
    text-align: right;
    line-height: 25px;
}

.header-links a {
    margin-left: 14px;
}

.xg-member-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 8px;
    padding: 10px 14px;
    margin-bottom: 12px;
    border: 1px solid #d5e4f4;
    background: #f5faff;
    line-height: 25px;
}

.member-name {
    color: #075bc7;
    font-weight: bold;
}

.member-level {
    display: inline-block;
    margin-left: 8px;
    padding: 0 10px;
    border-radius: 15px;
    background: #e7edf4;
    font-size: 12px;
}

.member-level.vip {
    color: #9b6200;
    background: #fff0c5;
}

.member-links a {
    margin-left: 12px;
}

.main-nav {
    background: #087ebd;
}

.main-nav .wrap {
    display: flex;
    overflow-x: auto;
}

.main-nav a {
    flex: 1 0 auto;
    padding: 12px 15px;
    color: #fff;
    text-align: center;
    font-size: 14px;
    font-weight: bold;
    white-space: nowrap;
}

.main-nav a:hover,
.main-nav a.current {
    background: #066496;
    text-decoration: none;
}

.sub-nav {
    padding: 9px 0;
    line-height: 25px;
}

.sub-nav a {
    display: inline-block;
    margin-right: 17px;
}

.stock-search {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px;
    padding: 15px 10px;
    margin-bottom: 12px;
    border: 1px solid #d3dde8;
    background: #f8fafc;
}

#topStockCode {
    width: 200px;
}

.tjbox,
.fhbox,
.datatopbox,
.drzxq,
.member-description {
    border: 1px solid #d2dfec;
    margin-bottom: 12px;
    background: #fff;
}

.tjboxtop,
.tjboxbottom {
    padding: 9px 12px;
    line-height: 32px;
}

.tjboxtop + .tjboxtop,
.tjboxbottom {
    border-top: 1px solid #edf1f5;
}

.czxx {
    color: #d33;
    font-weight: bold;
    margin-right: 8px;
}

.scspan {
    margin-right: 4px;
}

.tjboxtop select {
    margin-right: 8px;
    max-width: 210px;
}

.shsubmit {
    margin-right: 5px;
}

#hybk {
    width: 155px;
}

#dybk {
    width: 125px;
}

#gnbk {
    width: 180px;
}

#gnrst {
    display: inline;
}

#gnrst span {
    display: inline-block;
    margin: 3px 5px 3px 0;
    padding: 0 5px 0 8px;
    border: 1px solid #24a77a;
    border-radius: 4px;
    background: #e9f8f1;
    color: #087752;
    line-height: 24px;
}

#gnrst em {
    padding: 0 4px 0 8px;
    color: #444;
    cursor: pointer;
    font-style: normal;
    font-weight: bold;
}

#selectfangan {
    min-width: 180px;
    max-width: 270px;
    margin-right: 8px;
}

#iguSchemeTools {
    border-top: 1px solid #edf1f5;
    line-height: 36px;
}

#iguSchemeTools input {
    width: 190px;
}

#iguSchemeTools button,
#iguSchemeCount {
    margin-left: 8px;
}

#iguSchemeCount {
    display: inline-block;
    color: #916000;
}

.fhbox {
    display: flex;
    padding: 12px;
    gap: 14px;
}

.fhboxleft {
    flex: 0 0 105px;
    color: #d33;
    text-align: center;
    line-height: 24px;
}

.fhboxright {
    flex: 1;
    min-width: 0;
}

.fhboxright ul {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 8px 12px;
    padding: 0;
    margin: 0;
    list-style: none;
}

.fhboxright label {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 4px;
    color: #075bc7;
    cursor: pointer;
}

.regular-member .fhbox,
.guest-member .fhbox {
    display: none;
}

.datatop {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    padding: 9px 12px;
    line-height: 25px;
}

.datatop + .datatop {
    border-top: 1px solid #edf1f5;
}

.help a {
    margin-right: 12px;
}

.up {
    color: #555;
}

#updatetime,
#zhxgupdatetime {
    color: #d33;
    margin-right: 10px;
}

#pageer a,
#pageer strong {
    display: inline-block;
    padding: 0 4px;
    margin-right: 2px;
}

#pageer strong {
    color: #d33;
}

#go {
    width: 43px;
}

/*
 * 左侧股票固定区域 + 右侧指标横向滚动。
 * 两侧不设固定高度，保持数据行垂直对齐。
 */
#sj {
    display: flex;
    align-items: flex-start;
    width: 100%;
    border: 1px solid #cad8e7;
    margin-bottom: 12px;
}

#sjleft {
    flex: 0 0 340px;
    width: 340px;
    overflow-x: auto;
    min-width: 0;
}

#sjright {
    flex: 1 1 auto;
    overflow-x: auto;
    min-width: 0;
    border-left: 1px solid #cad8e7;
}

#sj table {
    border-collapse: collapse;
    border-spacing: 0;
    white-space: nowrap;
    font-size: 12px;
}

#sjtableleft1 {
    width: 100%;
}

#sjtableright {
    width: max-content;
}

#sj th,
#sj td {
    border-right: 1px solid #d6e1ed;
    border-bottom: 1px solid #d6e1ed;
    padding: 0 4px;
    height: 30px;
    text-align: center;
    font-weight: normal;
}

#sj th:last-child,
#sj td:last-child {
    border-right: 0;
}

#sj .sjth1,
#tt1 th {
    height: 30px;
    background: #eef5fc;
    font-weight: bold;
}

#sj .sjth2 th,
#tt2 td {
    height: 30px;
    background: #eafbff;
}

#sj .xgth,
#tt3 td {
    height: 38px;
    background: #fbfcfe;
}

#sj .trbt th,
#tt4 td {
    height: 30px;
    background: #f4f8fc;
}

#sj .xh {
    width: 38px;
    min-width: 38px;
}

#sj .gpid {
    width: 68px;
    min-width: 68px;
}

#sj .gpname {
    text-align: left;
    padding-left: 7px;
}

#sj .gpname input[type="checkbox"] {
    width: 13px;
    height: 13px;
    margin: 0 2px;
}

#stockid {
    width: 110px;
    margin-right: 5px;
}

#ksxgb,
#qcxgcsb {
    padding: 2px 7px;
    margin-right: 3px;
}

#tt3 input {
    display: inline-block;
    width: 37px;
    height: 23px;
    margin: 0 1px;
    padding: 1px 2px;
    text-align: center;
}

#sj tr.f6 td {
    background: #e8f4ed;
}

#sj tr.b6 td {
    background: #fff1ce;
}

.drzxq {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    padding: 10px 12px;
}

#fanganright span {
    margin-right: 10px;
}

.batch-note {
    color: #777;
    font-size: 12px;
}

.member-description {
    padding: 12px 14px;
    background: #fbfcfe;
    line-height: 25px;
}

.member-description p {
    margin: 0;
}

.site-footer {
    margin-top: 20px;
    padding: 18px 0 25px;
    border-top: 1px solid #e1e7ed;
    text-align: center;
    color: #777;
    font-size: 12px;
    line-height: 24px;
}

.suggestContainer {
    position: absolute !important;
    z-index: 1000 !important;
    background: #fff !important;
    border: 1px solid #bbc9d7 !important;
}

#sjtableleft1 .xgth {
    position: relative;
}

@media (max-width: 760px) {
    .wrap {
        max-width: calc(100% - 16px);
    }

    .site-header {
        padding: 12px 0;
    }

    .site-logo {
        font-size: 30px;
    }

    .header-links {
        font-size: 12px;
    }

    .main-nav a {
        padding: 11px 13px;
    }

    .fhbox {
        display: block;
    }

    .regular-member .fhbox,
    .guest-member .fhbox {
        display: none;
    }

    .fhboxleft {
        text-align: left;
        margin-bottom: 10px;
    }

    .fhboxright ul {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    /*
     * 窄屏允许整个表格区域横向滚动，
     * 不把股票列和指标挤成很窄的一列。
     */
    #gd {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    #sj {
        min-width: 900px;
    }

    #sjleft {
        flex-basis: 340px;
    }

    #iguSchemeTools button {
        margin-left: 4px;
    }
}
/* 技术形态：文字靠右，紧挨对应复选框 */
.fhbox .fhboxright li {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    white-space: nowrap;
}

.fhbox .fhboxright li > a {
    float: none;
    flex: 0 1 auto;
    width: auto;
    margin: 0;
    text-align: right;
}

.fhbox .fhboxright li > input[type="checkbox"] {
    position: static;
    float: none;
    flex: 0 0 auto;
    margin: 0 0 0 6px;
}
@media (min-width: 769px) {
    .fhbox .fhboxleft {
        text-align: left;
    }
}
