/* ==========================================================================
   职业介绍页（templates/job.tpl.html 专用皮肤）
   --------------------------------------------------------------------------
   加载顺序：... redesign.css → official.css → job.css（本文件最后）
   作用域：body.page-job
   说明：页眉 / 菜单 / 下拉面板 / 页脚的金黑皮肤来自 official.css（.page-home 命名空间），
         本文件只负责「页头 + 职业版块 + 技能卡片」这三块。

   兼容性硬约束（同全站）：不用 var() / :has() / inset / gap / clamp() /
   aspect-ratio / mix-blend-mode；颜色一律字面值；动效只走 transform / opacity。
   ========================================================================== */

.job-page {
    background-color: #0c0806;
}

/* ==========================================================================
   1. 页头：职业资料标题 + 三个职业跳转牌
   ========================================================================== */
.job-page .job-hero {
    padding: 52px 20px 0;
    text-align: center;
    background-color: #0d0906;
    background-image: -webkit-linear-gradient(top, #171009 0%, #0c0806 100%);
    background-image: linear-gradient(180deg, #171009 0%, #0c0806 100%);
    border-bottom: 1px solid #5a431f;
}
.job-page .job-hero-kicker {
    margin: 0 0 14px;
    font-size: 12px;
    letter-spacing: 5px;
    /* 对比度：旧值 #8a7648 落在 #120c08 上只有 4.41，低于正文 4.5 阈值。
       改为 #9c8c6e → 5.91（同一色系亮一档，观感不变）。 */
    color: #9c8c6e;
}
.job-page .job-hero h1 {
    margin: 0 0 16px;
    font-size: 42px;
    font-weight: normal;
    letter-spacing: 10px;
    color: #f2d68f;
    text-shadow: 0 2px 6px rgba(0, 0, 0, .9), 0 0 34px rgba(226, 185, 92, .28);
}
.job-page .job-hero-sub {
    margin: 0 0 34px;
    font-size: 14px;
    letter-spacing: 3px;
    color: #a68d5f;
}

/* 三个职业跳转牌：吸顶，滚动时一直能换职业 */
.job-page .job-tabs {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 50;
    padding: 12px 0 13px;
    background-color: rgba(10, 6, 4, .96);
    border-top: 1px solid rgba(201, 162, 77, .22);
    border-bottom: 1px solid rgba(201, 162, 77, .3);
    box-shadow: 0 10px 26px rgba(0, 0, 0, .5);
    font-size: 0;
    text-align: center;
}
.job-page .job-tab {
    display: inline-block;
    vertical-align: middle;
    width: 168px;
    margin: 0 7px;
    padding: 11px 10px;
    text-align: center;
    text-decoration: none;
    background-color: #1b1008;
    background-image: -webkit-linear-gradient(top, rgba(62, 35, 14, .9) 0%, rgba(22, 13, 8, .96) 100%);
    background-image: linear-gradient(180deg, rgba(62, 35, 14, .9) 0%, rgba(22, 13, 8, .96) 100%);
    border: 1px solid #6d5226;
    border-radius: 4px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    box-shadow: inset 0 1px 0 rgba(255, 226, 158, .1), 0 6px 16px rgba(0, 0, 0, .45);
    -webkit-transition: -webkit-transform .2s ease, border-color .2s ease, box-shadow .2s ease;
    transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.job-page .job-tab img {
    display: block;
    width: 34px;
    height: 34px;
    margin: 0 auto 6px;
    -webkit-filter: drop-shadow(0 1px 3px rgba(0, 0, 0, .65));
    filter: drop-shadow(0 1px 3px rgba(0, 0, 0, .65));
}
.job-page .job-tab b {
    display: block;
    font-size: 16px;
    font-weight: normal;
    letter-spacing: 3px;
    color: #ecd7a4;
    line-height: 1.2;
}
.job-page .job-tab i {
    display: block;
    margin-top: 3px;
    font-style: normal;
    /* 9px → 10px：9px 中文/英文都太小；顺带 #8a7648 在 #27170b 上只有 3.93，
       改为 #9c8c6e → 5.27。 */
    font-size: 10px;
    letter-spacing: 2px;
    color: #9c8c6e;
}
.job-page .job-tab:hover,
.job-page .job-tab.is-active {
    -webkit-transform: translateY(-2px);
    transform: translateY(-2px);
    border-color: #d9ae4a;
    box-shadow: inset 0 1px 0 rgba(255, 226, 158, .2), 0 10px 22px rgba(0, 0, 0, .5), 0 0 22px rgba(226, 185, 92, .26);
}
.job-page .job-tab.is-active b { color: #fff1c8; }
.job-page .job-tab.is-active i { color: #bda372; }

/* ==========================================================================
   2. 职业版块
   ========================================================================== */
.job-page .job-main {
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 20px 70px;
}
.job-page .job-class {
    padding: 62px 0 0;
    /* 吸顶牌高度约 78px，锚点跳转时留出余量，标题不被盖住 */
    scroll-margin-top: 86px;
}

.job-page .job-class-head {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    padding-bottom: 40px;
    border-bottom: 1px solid rgba(201, 162, 77, .18);
}
.job-page .job-class-art {
    position: relative;
    width: 36%;
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
    border: 1px solid #6d5226;
    border-radius: 4px;
    overflow: hidden;
    background-color: #120c08;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, .7), 0 16px 36px rgba(0, 0, 0, .6), 0 0 30px rgba(226, 185, 92, .12);
}
/* 职业美术源图是 3:4 竖版（1773×2364），直接按宽度撑会到 700px 高，
   这里锁 520px 高 + object-fit 裁切，构图从顶部对齐保住人物头部 */
.job-page .job-class-video {
    display: block;
    width: 100%;
    height: 520px;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center top;
    object-position: center top;
}
/* 四角描金细线，压住视频边缘 */
.job-page .job-class-frame {
    position: absolute;
    left: 8px;
    right: 8px;
    top: 8px;
    bottom: 8px;
    border: 1px solid rgba(226, 185, 92, .22);
    pointer-events: none;
}
.job-page .job-class-text {
    width: 56%;
    padding-left: 44px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-align: left;
}
.job-page .job-class-name {
    margin: 0 0 12px;
    font-size: 34px;
    font-weight: normal;
    letter-spacing: 6px;
    color: #f2d68f;
    line-height: 1;
    text-shadow: 0 2px 6px rgba(0, 0, 0, .8);
}
.job-page .job-class-medal {
    display: inline-block;
    vertical-align: middle;
    width: 46px;
    height: 46px;
    margin-right: 14px;
    -webkit-filter: drop-shadow(0 2px 6px rgba(0, 0, 0, .7));
    filter: drop-shadow(0 2px 6px rgba(0, 0, 0, .7));
}
.job-page .job-class-name span { vertical-align: middle; }
.job-page .job-class-name i {
    vertical-align: middle;
    margin-left: 14px;
    font-style: normal;
    font-size: 12px;
    letter-spacing: 4px;
    /* 对比度：旧值 #7d6a43 在 #0c0805 上只有 3.81，改为 #9c8c6e → 6.07 */
    color: #9c8c6e;
}
.job-page .job-class-slogan {
    margin: 0 0 16px;
    font-size: 16px;
    letter-spacing: 4px;
    color: #c9a24d;
}
.job-page .job-class-tags {
    margin: 0 0 18px;
    padding: 0;
    list-style: none;
    font-size: 0;
}
.job-page .job-class-tags li {
    display: inline-block;
    margin: 0 8px 8px 0;
    padding: 5px 13px;
    font-size: 12px;
    letter-spacing: 1px;
    color: #a68d5f;
    border: 1px solid #5c4622;
    border-radius: 3px;
    background-color: rgba(50, 30, 13, .5);
}
.job-page .job-class-desc {
    margin: 0;
    font-size: 14px;
    line-height: 2.1;
    color: #9c8b6f;
}

/* 技能区小标题：两侧金线 */
.job-page .job-skill-title {
    position: relative;
    margin: 38px 0 26px;
    text-align: center;
}
.job-page .job-skill-title h3 {
    display: inline-block;
    position: relative;
    margin: 0;
    padding: 0 30px;
    font-size: 26px;
    font-weight: normal;
    letter-spacing: 8px;
    color: #efd28a;
    text-shadow: 0 2px 5px rgba(0, 0, 0, .85);
}
.job-page .job-skill-title span {
    display: block;
    margin-top: 8px;
    /* 10px → 11px；#7d6a43 在 #0c0805 上只有 3.81，改为 #a8905c → 6.47 */
    font-size: 11px;
    letter-spacing: 4px;
    color: #a8905c;
}
.job-page .job-skill-title h3::before,
.job-page .job-skill-title h3::after {
    content: '';
    position: absolute;
    top: 50%;
    width: 90px;
    height: 1px;
    margin-top: -1px;
}
.job-page .job-skill-title h3::before {
    right: 100%;
    background-image: -webkit-linear-gradient(left, rgba(226, 185, 92, 0) 0%, rgba(226, 185, 92, .8) 100%);
    background-image: linear-gradient(to right, rgba(226, 185, 92, 0) 0%, rgba(226, 185, 92, .8) 100%);
}
.job-page .job-skill-title h3::after {
    left: 100%;
    background-image: -webkit-linear-gradient(right, rgba(226, 185, 92, 0) 0%, rgba(226, 185, 92, .8) 100%);
    background-image: linear-gradient(to left, rgba(226, 185, 92, 0) 0%, rgba(226, 185, 92, .8) 100%);
}

/* 技能卡片：一行三个 */
.job-page .job-skill-grid {
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: 0;
    text-align: left;
}
.job-page .job-skill {
    display: inline-block;
    vertical-align: top;
    width: 32%;
    margin: 0 2% 16px 0;
    padding: 16px 18px 17px;
    text-align: left;
    background-color: rgba(27, 16, 8, .72);
    background-image: -webkit-linear-gradient(top, rgba(46, 27, 12, .6) 0%, rgba(20, 12, 8, .72) 100%);
    background-image: linear-gradient(180deg, rgba(46, 27, 12, .6) 0%, rgba(20, 12, 8, .72) 100%);
    border: 1px solid rgba(122, 92, 41, .5);
    border-radius: 4px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: border-color .2s ease, -webkit-transform .2s ease, box-shadow .2s ease;
    transition: border-color .2s ease, transform .2s ease, box-shadow .2s ease;
}
.job-page .job-skill:nth-child(3n) { margin-right: 0; }
.job-page .job-skill:hover {
    -webkit-transform: translateY(-3px);
    transform: translateY(-3px);
    border-color: rgba(217, 174, 74, .85);
    box-shadow: 0 12px 24px rgba(0, 0, 0, .5), 0 0 20px rgba(226, 185, 92, .18);
}
/* 技能标题行：官方 32×32 技能图标 + 技能名。
   ★ 图标取自《传奇世界》资料站（.workbuddy/tools/fetch_woool_icons.py 下载），
     是「技能」这一栏最直观的信息，所以让它取代原来那个纯 CSS 小菱形
     （原 ::before 菱形已随本次改动删除，不再需要 position:relative 兜着它）。 */
.job-page .job-skill h4 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    min-height: 29px;
    margin: 0 0 10px;
    font-size: 16px;
    font-weight: normal;
    letter-spacing: 2px;
    color: #f0d695;
    line-height: 1.3;
}
/* ★ 按官方原尺寸 29×29 **1:1** 显示，刻意不放大。
     技能图标实测是 29×29 / RGB（**不带 alpha**，图标自带那块棕底金边格子），
     装备图标才是 32×32 / RGBA（见 css/equip.css）——两者别记混。
     放大到 30~32px 会走 1.1 倍重采样：最近邻让像素大小不均，双线性整体发虚，
     两种都比原尺寸难看。要"更醒目"就靠外圈金线 + 投影，而不是拉伸位图。 */
.job-page .job-skill-ico {
    display: block;
    width: 29px;
    height: 29px;
    margin-right: 12px;
    border-radius: 3px;
    box-shadow: 0 0 0 1px rgba(201, 162, 77, .5), 0 2px 7px rgba(0, 0, 0, .6);
}
.job-page .job-skill h4 span {
    display: block;
}
.job-page .job-skill p {
    margin: 0;
    font-size: 13px;
    line-height: 1.95;
    color: #9a8870;
}

.job-page .job-note {
    margin: 40px 0 0;
    padding-top: 22px;
    border-top: 1px solid rgba(201, 162, 77, .15);
    text-align: center;
    font-size: 12px;
    letter-spacing: 1px;
    /* 对比度：旧值 #7a6a52 在 #0c0805 上只有 3.81，改为 #9c8c6e → 6.07 */
    color: #9c8c6e;
}

/* ==========================================================================
   3. 响应式
   ========================================================================== */
@media (max-width: 1100px) {
    .job-page .job-hero h1 { font-size: 34px; letter-spacing: 6px; }
    .job-page .job-tab { width: 146px; }
    .job-page .job-class-text { padding-left: 30px; }
    .job-page .job-class-name { font-size: 28px; letter-spacing: 4px; }
    .job-page .job-class-medal { width: 38px; height: 38px; margin-right: 10px; }
    .job-page .job-class-art { width: 34%; }
    .job-page .job-class-video { height: 440px; }
    /* 技能卡一行两个 */
    .job-page .job-skill { width: 49%; margin-right: 2%; }
    .job-page .job-skill:nth-child(3n) { margin-right: 2%; }
    .job-page .job-skill:nth-child(2n) { margin-right: 0; }
}
@media (max-width: 860px) {
    .job-page .job-hero { padding-top: 38px; }
    .job-page .job-hero h1 { font-size: 26px; letter-spacing: 4px; }
    .job-page .job-hero-sub { font-size: 12px; letter-spacing: 2px; margin-bottom: 24px; }
    .job-page .job-tabs { padding: 9px 0 10px; }
    .job-page .job-tab { width: 30%; margin: 0 1.5%; padding: 8px 4px; }
    .job-page .job-tab img { width: 26px; height: 26px; margin-bottom: 4px; }
    .job-page .job-tab b { font-size: 14px; letter-spacing: 1px; }
    .job-page .job-tab i { display: none; }
    .job-page .job-class { padding-top: 40px; }
    /* 职业头部改为上图下文 */
    .job-page .job-class-head {
        display: block;
        padding-bottom: 26px;
    }
    .job-page .job-class-art { width: 100%; margin-bottom: 22px; }
    .job-page .job-class-video { height: auto; }
    .job-page .job-class-text { width: 100%; padding-left: 0; }
    .job-page .job-class-name { font-size: 24px; letter-spacing: 3px; }
    .job-page .job-class-name i { display: none; }
    .job-page .job-skill-title { margin: 26px 0 18px; }
    .job-page .job-skill-title h3 { font-size: 20px; letter-spacing: 5px; padding: 0 18px; }
    .job-page .job-skill-title h3::before,
    .job-page .job-skill-title h3::after { width: 40px; }
    /* 技能卡一行一个 */
    .job-page .job-skill { width: 100%; margin-right: 0; }
    .job-page .job-skill:nth-child(3n),
    .job-page .job-skill:nth-child(2n) { margin-right: 0; }
}
