/* ===== ename.css - 英文名频道专用样式 ===== */

/* ---------- 模块通用 ---------- */
.module {
    background: #fff;
    border-radius: 8px;
    padding: 20px 24px;
    margin-bottom: 20px;
    box-shadow: 0 1px 4px rgba(0,0,0,0.06);
}
.module .hd {
    margin-bottom: 16px;
}
.module .hd .title {
    font-size: 20px;
    font-weight: 700;
    color: #333;
    position: relative;
    padding-left: 14px;
}
.module .hd .title:before {
    content: '';
    position: absolute;
    left: 0;
    top: 2px;
    width: 4px;
    height: 22px;
    background: #f56954;
    border-radius: 2px;
}
.module .hd .center-title {
    font-size: 26px;
    font-weight: 700;
    text-align: center;
    color: #333;
}
.module .hd .sub-title {
    font-size: 18px;
    font-weight: 700;
    color: #333;
}
.module .hd .title a {
    color: #333;
}
.module .hd .title a:hover {
    color: #f56954;
}

/* ---------- 搜索框 ---------- */
.mod-search {
    border-radius: 10px;
    padding: 24px 30px 30px;
}
.mod-search .bd form {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
}
.mod-search .bd .input-wrapper {
    display: flex;
    align-items: center;
}
.mod-search .bd .input-wrapper .input-title {
    font-size: 15px;
    font-weight: 600;
    padding-right: 2px;
}
.mod-search .bd .input-wrapper .input-text {
    width: 260px;
    padding: 8px 14px;
    background: #f5f5f5;
    border: none;
    border-bottom: 2px solid #ddd;
    font-size: 15px;
    border-radius: 4px;
    outline: none;
    transition: border-color 0.3s;
}
.mod-search .bd .input-wrapper .input-text:focus {
    border-bottom-color: #f56954;
}
.mod-search .bd .btn-red {
    background: #f56954;
    color: #fff;
    border: none;
    padding: 8px 30px;
    border-radius: 6px;
    font-size: 16px;
    cursor: pointer;
    transition: background 0.3s;
    line-height: 0px;
}
.mod-search .bd .btn-red:hover {
    background: #e04e3a;
}
.mod-search .bd .tip {
    margin-top: 16px;
    font-size: 14px;
    color: #999;
    text-align: center;
}
/* 性别选择 */
.mod-search .bd .input-wrapper .gender-options {
    display: flex;
    gap: 15px;
    align-items: center;
}
.mod-search .bd .input-wrapper .gender-options label {
    cursor: pointer;
    font-size: 15px;
}

/* ---------- 首字母 ---------- */
.mod-letter .bd ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 8px;
}
.mod-letter .bd li {
    width: 44px;
    height: 44px;
    line-height: 44px;
    text-align: center;
    background: #f5f5f5;
    border-radius: 50%;
    font-size: 18px;
    font-weight: 600;
    transition: all 0.3s;
    list-style: none;
}
.mod-letter .bd li a {
    display: block;
    color: #333;
}
.mod-letter .bd li:hover {
    background: #f56954;
}
.mod-letter .bd li:hover a {
    color: #fff;
}

/* ---------- 热门推荐 ---------- */
.mod-recommend .bd ul {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
.mod-recommend .bd li {
    width: calc(25% - 10px);
    background: #f8f8f8;
    border-radius: 8px;
    padding: 12px 14px;
    transition: all 0.3s;
    list-style: none;
}
.mod-recommend .bd li:hover {
    background: linear-gradient(135deg, #f5f5f5, #fcd8d0);
}
.mod-recommend .bd li .top {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.mod-recommend .bd li .top span {
    font-size: 20px;
    font-weight: 700;
    color: #333;
}
.mod-recommend .bd li .bottom p {
    font-size: 14px;
    color: #888;
    margin-top: 4px;
}

/* ---------- 来源导航 ---------- */
.mod-origin .bd ul {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.mod-origin .bd ul li {
    padding: 4px 14px;
    background: #f5f5f5;
    border-radius: 20px;
    font-size: 14px;
    transition: all 0.3s;
    list-style: none;
}
.mod-origin .bd ul li:hover {
    background: #f56954;
}
.mod-origin .bd ul li:hover a {
    color: #fff;
}
.mod-origin .bd ul li a {
    color: #333;
}

/* ---------- 来源导航（详细版） ---------- */
.mod-nav .bd ul {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}
.mod-nav .bd li {
    width: calc(16.666% - 6px);
    line-height: 32px;
    list-style: none;
}
.mod-nav .bd li a {
    display: block;
    padding: 0 10px;
    background: #f5f5f5;
    border-radius: 4px;
    text-align: center;
    font-size: 14px;
    color: #333;
    transition: all 0.3s;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.mod-nav .bd li a:hover {
    background: #f56954;
    color: #fff;
}
.mod-nav .bd li a.active {
    background: #f56954;
    color: #fff;
    font-weight: 700;
}

/* ---------- 列表（通用） ---------- */
.mod-list {
    border-bottom: 1px solid #eee;
    padding: 16px 0;
}
.mod-list:last-child {
    border-bottom: none;
}
.mod-list .hd .name .en {
    font-size: 20px;
    font-weight: 700;
    color: #f56954;
}
.mod-list .hd .name .trans {
    font-size: 14px;
    color: #999;
    margin-left: 12px;
}
.mod-list .ft p {
    font-size: 14px;
    color: #666;
    padding: 3px 0;
    line-height: 1.6;
}
.mod-list .ft p span {
    color: #999;
    font-weight: 400;
}

/* ---------- 列表项卡片（新增，分隔明显） ---------- */
.mod-list-item {
    background: #fafafa;
    border: 1px solid #e8e8e8;
    border-radius: 8px;
    padding: 16px 20px;
    margin-bottom: 16px;
    transition: all 0.3s;
}
.mod-list-item:hover {
    background: #f0f4fe;
    border-color: #c0d0f0;
    box-shadow: 0 2px 8px rgba(0,0,0,0.06);
}
.mod-list-item .hd .name {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}
.mod-list-item .hd .name .en {
    font-size: 22px;
    font-weight: 700;
    color: #f56954;
    margin-right: 12px;
}
.mod-list-item .hd .name .trans {
    font-size: 15px;
    color: #666;
    margin-right: 10px;
}
.mod-list-item .hd .name .gender-icon {
    width: 24px;
    height: 24px;
    margin-right: 8px;
    vertical-align: middle;
}
.mod-list-item .hd .name .audio-img {
    cursor: pointer;
    margin-left: 6px;
    vertical-align: middle;
    transition: transform 0.2s;
}
.mod-list-item .hd .name .audio-img:hover {
    transform: scale(1.15);
}
.mod-list-item .ft {
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px dashed #ddd;
}
.mod-list-item .ft p {
    font-size: 14px;
    color: #555;
    padding: 3px 0;
    line-height: 1.6;
}
.mod-list-item .ft p span {
    color: #999;
    font-weight: 400;
}

/* ---------- 详情页 ---------- */
.mod-word {
    border-radius: 12px;
    padding: 24px 28px;
}
.mod-word .hd .center-title span {
    font-size: 32px;
    font-weight: 700;
    color: #f56954;
}
.mod-word .bd .c-hd {
    position: relative;
    padding: 12px 0 16px;
    font-size: 20px;
    font-weight: 700;
}
.mod-word .bd .c-hd:after {
    content: '';
    position: absolute;
    bottom: 6px;
    left: 0;
    width: 60px;
    height: 4px;
    background: #f56954;
    border-radius: 2px;
}
.mod-word .bd .c-bd {
    padding-bottom: 16px;
}
.mod-word .bd .info .c-bd p {
    padding: 6px 0;
    font-size: 15px;
    line-height: 1.8;
}
.mod-word .bd .info .c-bd p span {
    color: #f56954;
    display: inline-block;
}
.mod-word .bd .info .c-bd .intro {
    margin-top: 10px;
    font-size: 15px;
    line-height: 1.9;
    color: #444;
}
.mod-word .bd .info .c-bd .intro p {
    padding: 4px 0;
}
.mod-word .bd .info .c-bd .audio-img {
    cursor: pointer;
    margin-left: 12px;
    vertical-align: middle;
}

/* ---------- 趋势图 ---------- */
.mod-word .bd .trend .c-bd #chart-trend {
    width: 100%;
    height: 380px;
}
.mod-word .bd .trend .c-ft p {
    font-size: 14px;
    color: #666;
    padding: 3px 0;
}

/* ---------- 排行数据 ---------- */
.mod-word .bd .rank .c-bd table {
    width: 100%;
    border-collapse: collapse;
}
.mod-word .bd .rank .c-bd table thead th {
    padding: 10px 12px;
    font-size: 14px;
    text-align: center;
    color: #546d7e;
}
.mod-word .bd .rank .c-bd table tbody td {
    padding: 8px 12px;
    text-align: center;
    border-bottom: 1px solid #f0f0f0;
    font-size: 14px;
}
.mod-word .bd .rank .c-bd table tbody td .data {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}
.mod-word .bd .rank .c-bd table tbody td .data span:first-child {
    width: 44px;
    text-align: right;
}
.mod-word .bd .rank .c-bd table tbody td .data span:last-child {
    width: 80px;
    text-align: left;
    color: #91D3FF;
}
.mod-word .bd .rank .c-bd table tbody td:nth-child(3) .data span:last-child {
    color: #FFA7A7;
}
.mod-word .bd .rank .c-bd table tbody td .data progress {
    width: 120px;
    height: 10px;
    border-radius: 4px;
    background: #eee;
    -webkit-appearance: none;
}
.mod-word .bd .rank .c-bd table tbody td .data progress::-webkit-progress-bar {
    background: #eee;
    border-radius: 4px;
}
.mod-word .bd .rank .c-bd table tbody td .data progress::-webkit-progress-value {
    background: #91D3FF;
    border-radius: 4px;
}
.mod-word .bd .rank .c-bd table tbody td:nth-child(3) .data progress::-webkit-progress-value {
    background: #FFA7A7;
}

/* ---------- 文化 ---------- */
.mod-word .bd .culture .c-bd ul {
    padding-left: 0;
}
.mod-word .bd .culture .c-bd ul li {
    display: flex;
    align-items: center;
    padding: 10px 14px;
    margin-bottom: 6px;
    background: #f8f8f8;
    border-radius: 8px;
    list-style: none;
}
.mod-word .bd .culture .c-bd ul li .name {
    font-weight: 600;
    min-width: 180px;
}
.mod-word .bd .culture .c-bd ul li .desc {
    color: #888;
}

/* ---------- 名人 ---------- */
.mod-word .bd .famous .c-bd ul {
    padding-left: 0;
}
.mod-word .bd .famous .c-bd ul li {
    display: flex;
    align-items: center;
    padding: 10px 0;
    border-bottom: 1px dashed #eee;
    list-style: none;
}
.mod-word .bd .famous .c-bd ul li:last-child {
    border-bottom: none;
}
.mod-word .bd .famous .c-bd ul li .avatar {
    margin-right: 16px;
    flex-shrink: 0;
}
.mod-word .bd .famous .c-bd ul li .avatar img {
    border-radius: 50%;
    width: 48px;
    height: 48px;
}
.mod-word .bd .famous .c-bd ul li .desc p {
    font-size: 14px;
    color: #666;
    line-height: 1.6;
}
.mod-word .bd .famous .c-bd ul li .desc p:first-child {
    font-weight: 700;
    color: #333;
}

/* ---------- 相似英文名 ---------- */
.mod-word .bd .similar .c-bd .table-light {
    width: 100%;
    border-collapse: collapse;
    font-size: 14px;
}
.mod-word .bd .similar .c-bd .table-light th {
    background: #f8f8f8;
    padding: 10px 12px;
    text-align: left;
}
.mod-word .bd .similar .c-bd .table-light td {
    padding: 8px 12px;
    border-bottom: 1px solid #f0f0f0;
}
.mod-word .bd .similar .c-bd .table-light a {
    color: #448EF6;
}
.mod-word .bd .similar .c-bd .table-light a:hover {
    text-decoration: underline;
}

/* ---------- 起名结果（卡片三列） ---------- */
.mod-panel .bd ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    padding: 0;
    margin: 0 -6px;
    list-style: none;
}
.mod-panel .bd .item {
    width: calc(33.333% - 12px);
    margin: 6px;
    padding: 14px 18px;
    background: #f8f8f8;
    border: 1px solid #e8e8e8;
    border-radius: 10px;
    transition: all 0.3s;
    box-sizing: border-box;
    list-style: none;
    position: relative;
}
.mod-panel .bd .item:hover {
    background: #f56954;
    border-color: #f56954;
}
.mod-panel .bd .item:hover .name a {
    color: #fff;
}
.mod-panel .bd .item:hover .desc {
    color: #fff;
}
.mod-panel .bd .item:hover .desc span {
    color: #fff;
}
/* 播放图标变白（新增） */
.mod-panel .bd .item:hover .audio-icon {
    filter: brightness(0) invert(1);
}
.mod-panel .bd .item .name {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 6px;
}
.mod-panel .bd .item .name a {
    color: #f56954;
    flex: 1;
}
.mod-panel .bd .item .name .audio-icon {
    cursor: pointer;
    margin-left: 10px;
    flex-shrink: 0;
    transition: transform 0.2s, filter 0.2s;
}
.mod-panel .bd .item .name .audio-icon:hover {
    transform: scale(1.15);
}
.mod-panel .bd .item .desc {
    font-size: 14px;
    color: #888;
    line-height: 1.6;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.mod-panel .bd .item .desc span {
    font-weight: 600;
    color: #666;
}

/* ---------- 通用介绍文本 ---------- */
.intro {
    line-height: 24px;
    margin-bottom: 16px;
    font-size: 14px;
}
.intro span {
    font-weight: bold;
}

/* ---------- 表格 ---------- */
.table-light {
    width: 100%;
    border-collapse: collapse;
    font-size: 14px;
}
.table-light th {
    background: #f8f8f8;
    padding: 10px 12px;
    text-align: left;
    font-weight: 600;
}
.table-light td {
    padding: 8px 12px;
    border-bottom: 1px solid #f0f0f0;
    vertical-align: middle;
}
.table-light tr:hover td {
    background: #fafafa;
}
.table-light a {
    color: #448EF6;
}
.table-light a:hover {
    text-decoration: underline;
}
.table-outer {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

/* ---------- 分页 ---------- */
.page {
    display: flex;
    justify-content: center;
    gap: 6px;
    flex-wrap: wrap;
    padding: 10px 0;
}
.page a, .page span {
    display: inline-block;
    padding: 6px 14px;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: 14px;
    color: #333;
    transition: all 0.3s;
}
.page a:hover {
    background: #f56954;
    color: #fff;
    border-color: #f56954;
}
.page span.cur {
    background: #f56954;
    color: #fff;
    border-color: #f56954;
}

/* ---------- 侧边栏 ---------- */
.mod-visited .bd ul li {
    padding: 6px 0;
    border-bottom: 1px dashed #f0f0f0;
    font-size: 14px;
    list-style: none;
}
.mod-visited .bd ul li:last-child {
    border-bottom: none;
}
.mod-visited .bd ul li a {
    color: #333;
}
.mod-visited .bd ul li a:hover {
    color: #f56954;
}
.mod-visited .bd ul li span {
    float: right;
    color: #999;
    font-size: 13px;
}

/* ---------- 移动端隐藏列 ---------- */
@media (max-width: 768px) {
    .hide-mobile {
        display: none !important;
    }
}

/* ---------- 响应式 ---------- */
@media screen and (max-width: 768px) {
    .module {
        padding: 14px 16px;
    }
    .mod-search {
        padding: 16px 18px 20px;
    }
    .mod-search .bd form {
        flex-direction: column;
        align-items: stretch;
    }
    .mod-search .bd .input-wrapper {
        justify-content: center;
    }
    .mod-search .bd .input-wrapper .input-text {
        width: 180px;
    }
    .mod-recommend .bd li {
        width: calc(50% - 6px);
    }
    .mod-nav .bd li {
        width: calc(33.333% - 6px);
    }
    .mod-panel .bd .item {
        width: calc(50% - 12px);
    }
    .mod-word {
        padding: 16px;
    }
    .mod-word .hd .center-title span {
        font-size: 26px;
    }
    .mod-word .bd .rank .c-bd .table-outer {
        overflow-x: auto;
    }
    .mod-word .bd .rank .c-bd table tbody td .data progress {
        width: 70px;
    }
    .mod-word .bd .culture .c-bd ul li {
        flex-direction: column;
        align-items: flex-start;
    }
    .mod-word .bd .culture .c-bd ul li .name {
        min-width: auto;
        margin-bottom: 4px;
    }
    .mod-word .bd .famous .c-bd ul li {
        flex-wrap: wrap;
    }
    .mod-word .bd .famous .c-bd ul li .avatar {
        margin-bottom: 6px;
    }
    .mod-word .bd .similar .c-bd .table-light {
        font-size: 13px;
    }
    .mod-word .bd .similar .c-bd .table-light th,
    .mod-word .bd .similar .c-bd .table-light td {
        padding: 6px 8px;
    }
    .table-light {
        font-size: 13px;
    }
    .table-light th,
    .table-light td {
        padding: 6px 8px;
    }
    .mod-list-item {
        padding: 12px 14px;
    }
    .mod-list-item .hd .name .en {
        font-size: 18px;
    }
    .mod-list-item .hd .name .trans {
        font-size: 13px;
    }
    .mod-list-item .hd .name .gender-icon {
        width: 20px;
        height: 20px;
        margin-right: 4px;
    }
    .mod-list-item .ft p {
        font-size: 13px;
    }
    .page a, .page span {
        padding: 4px 10px;
        font-size: 13px;
    }
}

@media screen and (max-width: 480px) {
    .mod-panel .bd .item {
        width: 100%;
    }
    .mod-nav .bd li {
        width: calc(50% - 6px);
    }
    .mod-search .bd .input-wrapper .input-text {
        width: 140px;
    }
    .mod-word .bd .rank .c-bd table tbody td .data {
        flex-wrap: wrap;
        gap: 4px;
    }
    .mod-word .bd .rank .c-bd table tbody td .data progress {
        width: 50px;
    }
    .mod-word .bd .info .c-bd p {
        font-size: 14px;
    }
    .page a, .page span {
        padding: 4px 10px;
        font-size: 13px;
    }
    .mod-list-item .hd .name .en {
        font-size: 16px;
    }
    .mod-list-item .hd .name .trans {
        font-size: 12px;
    }
    .mod-list-item .hd .name .gender-icon {
        width: 18px;
        height: 18px;
        margin-right: 3px;
    }
    .mod-list-item .ft p {
        font-size: 12px;
    }
}