
        /* ====== 柔和怀旧 · 设计变量 ====== */
        :root{
            --ivory:#FFF9F1;
            --peach:#FFF1E4;
            --lav:#F7F0F9;
            --ink:#4A3B3A;
            --ink-2:#6B5A54;
            --ink-3:#7F6E66;
            --amber:#E8964A;
            --amber-2:#A85A28;
            --rose:#D97B7B;
            --line:rgba(74,59,58,.12);
            --shadow-soft:0 24px 48px -28px rgba(146,96,66,.45);
            --shadow-card:0 14px 34px -20px rgba(146,96,66,.38);
            --r:22px;
            --t:.35s cubic-bezier(.22,.61,.36,1);
        }
        *,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
        html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%}
        body{
            font-family:"Noto Serif SC","Songti SC","STSong",serif;
            color:var(--ink);background:var(--ivory);
            line-height:1.9;-webkit-font-smoothing:antialiased;overflow-x:hidden;
        }
        .fz{font-family:"Ma Shan Zheng","Noto Serif SC",cursive;font-weight:400}
        img{max-width:100%;height:auto;display:block}

        /* ====== 导航 ====== */
        .nav{
            position:sticky;top:0;z-index:100;height:64px;
            display:flex;align-items:center;justify-content:space-between;
            padding:0 34px;
            background:rgba(255,249,241,.82);
            backdrop-filter:blur(16px) saturate(150%);
            -webkit-backdrop-filter:blur(16px) saturate(150%);
            border-bottom:1px solid var(--line);
        }
        .nav-brand{
            display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);
            font-size:21px;font-weight:900;letter-spacing:5px;
        }
        .nav-tag{ font-size:11px;letter-spacing:2px;color:#fff; background:#B85719; border-radius:999px; padding:3px 10px; }
        .nav-links{display:flex;gap:28px;list-style:none}
        .nav-links a{
            color:var(--ink-2);text-decoration:none;font-size:14px;letter-spacing:3px;
            position:relative;padding:4px 0;transition:color var(--t);
        }
        .nav-links a::after{
            content:"";position:absolute;left:50%;bottom:0;height:2px;width:0;border-radius:2px;
            background:linear-gradient(90deg,var(--amber),var(--amber-2));
            transform:translateX(-50%);transition:width var(--t);
        }
        .nav-links a:hover{color:var(--ink)}
        .nav-links a:hover::after{width:100%}

        /* 导航重点入口：任务 / 世界动态 */
        .nav-links a.nav-hot{
            color:#fff;padding:6px 14px;border-radius:999px;letter-spacing:2px;
            background:#B85719;                                   /* 旧内核/不支持渐变时的纯色兜底 */
            background:linear-gradient(135deg,#B85719,#8F3F16);
            box-shadow:0 8px 18px -10px rgba(143,63,22,.85);
            transition:transform var(--t),box-shadow var(--t),filter var(--t);
        }
        .nav-links a.nav-hot::after{display:none}
        .nav-links a.nav-hot:hover{
            color:#fff;transform:translateY(-1px);filter:brightness(.96);
            box-shadow:0 10px 22px -10px rgba(143,63,22,.95);
        }

        /* ====== Hero ====== */
        .hero{
            position:relative;text-align:center;overflow:hidden;
            padding:52px 22px 24px;
            background:linear-gradient(180deg,#DFDAF3 0%,#FFE2C6 34%,#FBD7C2 62%,#FDE6D6 82%,var(--ivory) 100%);
        }
        .hero::before{ /* 柔光 */
            content:"";position:absolute;left:50%;top:34%;transform:translate(-50%,-50%);
            width:min(760px,120vw);height:min(760px,120vw);border-radius:50%;
            background:radial-gradient(circle,rgba(255,238,200,.65) 0%,rgba(255,238,200,0) 66%);
            pointer-events:none;
        }
        .hero > *{position:relative}
        .hero-eyebrow{
            font-size:clamp(19px,2.6vw,26px);color:#8A4519;letter-spacing:2px;
        }
        .hero-title{
            font-size:clamp(44px,7.4vw,78px);font-weight:900;letter-spacing:10px;
            margin-top:10px;color:var(--ink);
            text-shadow:0 3px 24px rgba(255,236,205,.9);
        }
        .hero-sub{
            margin-top:12px;font-size:clamp(13px,1.7vw,16px);
            color:var(--ink-2);letter-spacing:6px;
        }
        /* ====== 首屏车票照片 ====== */
        .photo-hero{
            position:relative;width:min(440px,86vw);margin:14px auto 0;
            display:flex;align-items:center;justify-content:center;
        }
        .glow{
            position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);
            width:128%;aspect-ratio:1/1;border-radius:50%;pointer-events:none;
            background:radial-gradient(circle,rgba(255,242,209,.95) 0%,rgba(255,235,196,.55) 40%,rgba(255,235,196,0) 70%);
            animation:breathe 7s ease-in-out infinite;
        }
        .print{
            position:relative;z-index:1;width:100%;
            background:#fff;border-radius:26px;padding:13px 13px 4px;
            box-shadow:0 36px 64px -34px rgba(146,96,66,.55), 0 2px 0 rgba(255,255,255,.7) inset;
            animation:floaty 7.5s ease-in-out infinite;
        }
        .print-img{position:relative;overflow:hidden;border-radius:16px;aspect-ratio:1920/1616;background:#F3EDE6}
        .print-img img{width:100%;height:100%;object-fit:cover;object-position:50% 50%}
        .print-img::after{ /* 暖色薄雾，让照片与背景更协调 */
            content:"";position:absolute;inset:0;border-radius:16px;pointer-events:none;
            box-shadow:inset 0 0 56px rgba(255,236,206,.34);
            background:linear-gradient(180deg,rgba(255,226,190,.16),rgba(255,226,190,0) 44%);
        }
        .print figcaption{text-align:center;padding:14px 6px 12px}
        .print figcaption b{display:block;font-size:17px;font-weight:700;letter-spacing:2px}
        .print figcaption small{display:block;margin-top:7px;font-size:12.5px;color:var(--ink-2);line-height:1.95}
        /* 漂浮光点 */
        .dot{
            position:absolute;border-radius:50%;pointer-events:none;z-index:0;
            background:radial-gradient(circle,rgba(255,243,206,.95) 0%,rgba(255,243,206,0) 70%);
            animation:drift 8s ease-in-out infinite;
        }
        .dot.d1{width:22px;height:22px;left:1%;top:15%}
        .dot.d2{width:14px;height:14px;right:3%;top:28%;z-index:2;animation-delay:-2.4s}
        .dot.d3{width:28px;height:28px;left:5%;bottom:16%;animation-delay:-4.6s}
        .dot.d4{width:12px;height:12px;right:7%;bottom:24%;animation-delay:-6s}
        .dot.d5{width:16px;height:16px;left:46%;top:-3%;z-index:2;animation-delay:-3.2s}
        @keyframes floaty{0%,100%{transform:translateY(0) rotate(1.3deg)}50%{transform:translateY(-10px) rotate(1.3deg)}}
        @keyframes breathe{0%,100%{opacity:.85;transform:translate(-50%,-50%) scale(1)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.05)}}
        @keyframes drift{0%,100%{transform:translateY(0);opacity:.35}50%{transform:translateY(-18px);opacity:.9}}
        .hero-lead{
            max-width:36em;margin:8px auto 0;font-size:clamp(14px,1.8vw,16.5px);
            color:#6E5B54;line-height:2.1;
        }
        .hero-cta{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;margin-top:28px}
        .btn{
            display:inline-flex;align-items:center;gap:8px;white-space:nowrap;
            padding:14px 38px;border-radius:999px;text-decoration:none;
            font-size:15.5px;font-weight:700;letter-spacing:4px;
            color:#fff;background:linear-gradient(135deg,#B85719,#A94E16);
            box-shadow:0 16px 32px -14px rgba(150,80,40,.55);
            transition:transform var(--t),box-shadow var(--t);
        }
        .btn:hover{transform:translateY(-3px);box-shadow:0 22px 40px -16px rgba(150,80,40,.6)}
        .btn-ghost{
            background:rgba(255,255,255,.72);color:var(--amber-2);
            border:1.5px solid rgba(201,116,58,.45);box-shadow:none;
        }
        .btn-ghost:hover{background:#fff;box-shadow:0 14px 28px -18px rgba(146,96,66,.5)}
        .hero-note{
            margin-top:20px;font-size:12.5px;letter-spacing:3px;color:#5E4E49;
        }
        .hero-note b{color:#8A4519;font-weight:700}

        /* ====== 通用 ====== */
        .section{padding:78px 22px}
        .container{max-width:1040px;margin:0 auto}
        .sec-head{text-align:center;margin-bottom:50px}
        .sec-eyebrow{
            font-size:20px;color:var(--amber-2);letter-spacing:2px;margin-bottom:8px;
        }
        .sec-title{
            font-size:clamp(26px,4vw,38px);font-weight:900;letter-spacing:6px;line-height:1.4;
        }
        .sec-desc{
            margin:12px auto 0;max-width:34em;font-size:14.5px;color:var(--ink-2);
        }
        .sec-line{
            width:56px;height:3px;border-radius:3px;margin:20px auto 0;
            background:linear-gradient(90deg,var(--amber),var(--rose));opacity:.75;
        }
        /* 柔和圆角面板 */
        .panel{
            background:var(--peach);border-radius:44px;
            margin:0 18px;border:1px solid rgba(216,168,132,.28);
        }
        .panel-lav{background:var(--lav);border-color:rgba(160,140,190,.22)}

        /* ====== 时间线 ====== */
        .timeline{max-width:760px;margin:0 auto}
        .tl-item{
            display:grid;grid-template-columns:120px 1fr;gap:8px;
            position:relative;padding:6px 0;
        }
        .tl-year{
            text-align:right;padding-right:26px;position:relative;
        }
        .tl-year b{
            font-size:34px;font-weight:900;letter-spacing:1px;
            color:var(--amber-2);
            line-height:1.2;
        }
        .tl-year span{display:block;font-size:12px;letter-spacing:3px;color:var(--ink-3)}
        .tl-year::after{ /* 节点 */
            content:"";position:absolute;right:-9px;top:14px;
            width:18px;height:18px;border-radius:50%;
            background:#fff;border:3.5px solid var(--amber);
            box-shadow:0 0 0 7px rgba(232,150,74,.16);
        }
        .tl-body{
            border-left:2px dashed rgba(201,116,58,.4);
            padding:4px 0 34px 30px;
        }
        .tl-body h2{
            font-size:19px;font-weight:900;letter-spacing:3px;margin-bottom:8px;
            display:flex;align-items:center;gap:10px;
        }
        .tl-body h2 svg{flex:none;color:var(--amber-2)}
        .tl-body p{font-size:14.5px;color:#6E5B54;line-height:2.05}

        /* ====== 情怀宣言 ====== */
        .promise{text-align:center;padding:26px 22px 6px}
        .promise-big{
            font-size:clamp(21px,3.4vw,32px);font-weight:900;letter-spacing:3px;line-height:1.7;
        }
        .promise-big em{ font-style:normal; color:var(--amber-2); }
        .promise-sub{
            margin-top:12px;font-size:14px;letter-spacing:5px;color:var(--ink-2);
        }
        .promise-quote{
            margin-top:22px;font-size:clamp(24px,4vw,38px);color:var(--amber-2);
            letter-spacing:4px;line-height:1.8;
        }
        .promise-quote::before,.promise-quote::after{content:"「";opacity:.5}
        .promise-quote::after{content:"」"}

        /* ====== 复刻特性 ====== */
        .feat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(228px,1fr));gap:20px}
        .feat-card{
            background:#fff;border-radius:var(--r);padding:34px 24px 30px;
            border:1px solid var(--line);box-shadow:var(--shadow-card);
            text-align:center;transition:transform var(--t),box-shadow var(--t);
        }
        .feat-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-soft)}
        .feat-ico{
            width:62px;height:62px;margin:0 auto 16px;border-radius:50%;
            display:flex;align-items:center;justify-content:center;
            background:var(--fbg,#FDEEDC);color:var(--fic,#C9743A);
        }
        .feat-card h2{font-size:17px;font-weight:900;letter-spacing:3px;margin-bottom:8px}
        .feat-card p{font-size:13.5px;color:var(--ink-2);line-height:2}

        /* ====== 下载 ====== */
        .dl-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:22px;max-width:800px;margin:0 auto}
        .dl-card{
            background:#fff;border-radius:var(--r);padding:40px 30px 36px;text-align:center;
            border:1px solid var(--line);box-shadow:var(--shadow-card);
            display:flex;flex-direction:column;align-items:center;gap:12px;
            transition:transform var(--t),box-shadow var(--t);
        }
        .dl-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-soft)}
        .dl-ico{
            width:70px;height:70px;border-radius:50%;
            display:flex;align-items:center;justify-content:center;
            background:linear-gradient(135deg,#FFEBD4,#FFD9C2);color:#8A4519;
        }
        .dl-card h3{font-size:21px;font-weight:900;letter-spacing:4px}
        .dl-desc{font-size:13.5px;color:var(--ink-2);line-height:2}
        .dl-meta{
            font-size:12px;letter-spacing:1px;color:var(--ink-2);
            background:var(--peach);border-radius:999px;padding:5px 16px;
        }
        .steps{
            display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
            gap:16px;max-width:900px;margin:44px auto 0;
        }
        .step{
            background:rgba(255,255,255,.72);border:1px solid var(--line);
            border-radius:18px;padding:24px 18px;text-align:center;
        }
        .step-n{
            width:40px;height:40px;margin:0 auto 12px;border-radius:50%;
            border:2px solid rgba(201,116,58,.55);color:var(--amber-2);
            display:flex;align-items:center;justify-content:center;
            font-weight:900;font-size:17px;background:#FFFDF9;
        }
        .step p{font-size:13px;color:#6E5B54;line-height:1.95}
        .step p b{color:var(--ink)}
        .notice{
            max-width:820px;margin:34px auto 0;padding:22px 28px;
            background:#FFF4E2;border:1px solid rgba(201,116,58,.32);
            border-radius:14px;font-size:13.5px;color:#6E5B54;line-height:2.1;
        }
        .notice b{color:var(--amber-2)}
        .notice .em{display:block;margin-top:4px;font-weight:900;color:var(--ink)}

        /* ====== FAQ ====== */
        .faq-list{max-width:760px;margin:0 auto;display:grid;gap:14px}
        .faq{
            background:#fff;border:1px solid var(--line);border-radius:18px;
            box-shadow:var(--shadow-card);overflow:hidden;
        }
        .faq summary{
            list-style:none;cursor:pointer;user-select:none;
            display:flex;align-items:center;gap:14px;
            padding:19px 24px;font-weight:700;font-size:15px;letter-spacing:1.5px;
        }
        .faq summary::-webkit-details-marker{display:none}
        .faq .q{
            flex:none;width:28px;height:28px;border-radius:50%;
            background:linear-gradient(135deg,#FFEBD4,#FFD9C2);color:#8A4519;
            display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:900;
        }
        .faq .plus{
            margin-left:auto;flex:none;color:var(--amber-2);font-weight:900;
            transition:transform var(--t);font-size:18px;line-height:1;
        }
        .faq[open] .plus{transform:rotate(45deg)}
        .faq-body{padding:0 24px 20px 66px;font-size:13.5px;color:var(--ink-2);line-height:2.05}

        /* ====== 声明 ====== */
        .decl-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px;max-width:900px;margin:0 auto}
        .decl{
            background:#fff;border:1px solid var(--line);border-radius:var(--r);
            box-shadow:var(--shadow-card);padding:30px 22px;text-align:center;
        }
        .decl .dc{
            width:54px;height:54px;margin:0 auto 14px;border-radius:50%;
            background:var(--fbg,#FDEEDC);color:var(--fic,#C9743A);
            display:flex;align-items:center;justify-content:center;
        }
        .decl h3{font-size:16.5px;font-weight:900;letter-spacing:3px;margin-bottom:8px}
        .decl p{font-size:13px;color:var(--ink-2);line-height:2}

        /* ====== Footer ====== */
        .footer{
            margin-top:20px;border-radius:44px 44px 0 0;
            background:linear-gradient(180deg,#FBE3D2 0%,#F7E4EA 60%,#F3E7F2 100%);
            border-top:1px solid rgba(216,168,132,.3);
            text-align:center;padding:52px 22px 34px;
        }
        .footer-brand{font-size:28px;font-weight:900;letter-spacing:8px;margin-bottom:6px}
        .footer-tag{font-size:13px;letter-spacing:4px;color:var(--amber-2);margin-bottom:18px}
        .visit-stat{color:var(--ink-3);font-size:12px;letter-spacing:1px;margin-top:-4px}
        .visit-stat b{color:var(--amber-2);font-weight:800;font-variant-numeric:tabular-nums}
        .footer a{color:var(--ink-2);text-decoration:none;border-bottom:1px dashed rgba(138,122,116,.5);transition:color var(--t)}
        .footer a:hover{color:var(--amber-2)}
        .footer .dot{margin:0 9px;opacity:.45}
        .footer p{font-size:12.5px;color:var(--ink-2);line-height:2.4}
        .footer .links{margin-top:8px;font-size:11.5px;color:var(--ink-2)}

        /* ====== 进场 ====== */
        [data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .75s ease,transform .75s cubic-bezier(.22,.61,.36,1)}
        [data-reveal].in{opacity:1;transform:none}
        [data-reveal="d1"]{transition-delay:.1s}
        [data-reveal="d2"]{transition-delay:.2s}
        [data-reveal="d3"]{transition-delay:.3s}

        @media (prefers-reduced-motion: reduce){
            [data-reveal]{opacity:1;transform:none;transition:none}
            .print{animation:none;transform:rotate(1.3deg)}
            .glow,.dot{animation:none}
        }

        /* ====== 响应式 ====== */
        @media(min-width:980px){
            /* 桌面端：文字左、车票右，首屏即可看到按钮 */
            .hero-inner{
                display:grid;max-width:1180px;margin:0 auto;text-align:left;
                grid-template-columns:1.04fr 1fr;gap:26px 30px;align-items:center;
                grid-template-areas:
                    "eyebrow photo"
                    "title   photo"
                    "sub     photo"
                    "lead    photo"
                    "cta     photo"
                    "note    photo";
            }
            .hero-eyebrow{grid-area:eyebrow}
            .hero-title{grid-area:title;letter-spacing:8px}
            .hero-sub{grid-area:sub}
            .hero-lead{grid-area:lead;margin:10px 0 0;max-width:30em}
            .hero-cta{grid-area:cta;justify-content:flex-start;margin-top:24px}
            .hero-note{grid-area:note;margin-top:16px}
            .photo-hero{grid-area:photo;width:min(430px,100%);margin:0 auto}
        }
        @media(max-width:979px){
            .hero-eyebrow{font-size:clamp(18px,2.4vw,23px)}
        }
        @media(max-width:820px){
            .nav{padding:0 16px;height:58px}
            .nav-brand{font-size:17px;letter-spacing:3px}
            .nav-links{gap:14px}
            .nav-links a{font-size:12.5px;letter-spacing:1.5px}
            /* 手机端：品牌一行、链接一行（可横向滑动），避免挤变形 */
            .nav{height:auto;min-height:58px;padding:8px 14px;flex-wrap:wrap;gap:4px 10px}
            .nav-brand{font-size:16px;letter-spacing:2px}
            .nav-links{width:100%;gap:16px;overflow-x:auto;overflow-y:hidden;
                -webkit-overflow-scrolling:touch;padding:2px 0 3px;scrollbar-width:none}
            .nav-links::-webkit-scrollbar{display:none}
            .nav-links li{flex:0 0 auto}
            .nav-links a{white-space:nowrap;letter-spacing:1px}
            /* 手机端：hero 由两栏改单栏，避免正文被挤出视口后被裁切 */
            .hero-inner{
                grid-template-columns:1fr;
                grid-template-areas:"eyebrow" "title" "sub" "photo" "lead" "cta" "note";
                gap:14px;text-align:center;
            }
            .photo-hero{width:min(430px,100%)}
            .hero-title{letter-spacing:6px}
            .hero-eyebrow{font-size:clamp(17px,4.4vw,22px);letter-spacing:1px}
            .hero-sub{letter-spacing:3px}
            .hero-lead{max-width:none;margin-left:auto;margin-right:auto}
            .hero-cta{justify-content:center}
            .section{padding:58px 16px}
            .panel{margin:0 10px;border-radius:32px}
            .tl-item{grid-template-columns:88px 1fr}
            .tl-year b{font-size:26px}
            .tl-body{padding-left:22px}
            .hero-cta .btn{flex:1;justify-content:center}
            /* 手机端：下载区 minmax(300px) 会撑出横向滚动，改单列 */
            .dl-grid{grid-template-columns:1fr;gap:16px}
            .dl-card{padding:30px 20px 28px}
            /* 手机端：四步说明改 2×2，避免四张竖长卡片拉长页面 */
            .steps{grid-template-columns:1fr 1fr;gap:12px;margin-top:32px}
            .step{padding:18px 12px}
            .step p{font-size:12.5px}
        }
        @media(max-width:480px){
            .hero{padding-top:48px}
            .hero-title{letter-spacing:6px}
            .hero-sub{letter-spacing:3px}
            .tl-item{grid-template-columns:1fr;gap:0}
            .tl-year{text-align:left;padding-right:0;padding-left:6px;margin-bottom:6px}
            .tl-year::after{right:auto;left:-7px;top:12px;display:none}
            .tl-body{border-left:2px dashed rgba(201,116,58,.4);padding-left:18px}
            .notice{padding:18px 18px}
            .faq-body{padding-left:24px}
            .btn{padding:13px 28px;font-size:14.5px;letter-spacing:2px}
            .nav-tag{display:none}
            .nav{min-height:52px;padding:7px 12px}
            .nav-brand{font-size:15px;letter-spacing:1px}
            .nav-links{gap:14px}
            .nav-links a{font-size:12.5px}
        }
        /* ====== 留言墙 ====== */
        .sec-sub{ color:var(--ink-2); font-size:15.5px; line-height:1.9; margin-top:12px; letter-spacing:.5px; }
        .wall-form{ display:flex; gap:12px; flex-wrap:wrap; align-items:center; margin:32px 0 6px; }
        .wall-form input{ font:inherit; color:var(--ink); background:#fff; border:1px solid var(--line);
            border-radius:999px; padding:13px 20px; outline:none; box-shadow:var(--shadow-card); transition:var(--t); }
        .wall-form input:focus{ border-color:var(--amber); box-shadow:0 0 0 4px rgba(232,150,74,.14); }
        #wNick{ width:150px; }
        #wText{ flex:1 1 320px; min-width:220px; }
        .wall-form .btn{ border:0; cursor:pointer; padding:13px 30px; }
        .wall-tip{ color:var(--ink-3); font-size:13.5px; }
        .wall-tip.warn{ color:var(--rose); }
        .wall-list{ display:grid; grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); gap:14px; margin-top:24px; }
        .wall-item{ position:relative; background:linear-gradient(180deg,#fff 0%,var(--peach) 100%);
            border:1px solid var(--line); border-radius:18px; padding:16px 18px 15px; box-shadow:var(--shadow-card); }
        .wall-item p{ margin:0; color:var(--ink); font-size:15px; line-height:1.78; word-break:break-word; }
        .wall-meta{ display:flex; align-items:baseline; gap:8px; margin-bottom:8px; }
        .wall-meta b{ color:var(--amber-2); font-weight:700; font-size:14.5px; }
        .wall-meta span{ color:var(--ink-3); font-size:12.5px; }
        .wall-del{ position:absolute; top:8px; right:10px; border:0; background:none; color:var(--ink-3);
            cursor:pointer; font-size:17px; line-height:1; padding:4px 6px; border-radius:50%; }
        .wall-del:hover{ color:var(--rose); background:rgba(217,123,123,.12); }
        .wall-empty{ grid-column:1/-1; color:var(--ink-3); text-align:center; padding:28px 0; }
        @media (max-width:640px){ .wall-form .btn{ width:100%; } }

        /* ====== 世界动态（游戏内事件） ====== */
        .world-top{ display:flex; align-items:center; gap:14px; flex-wrap:wrap; margin:26px 0 16px;
            font-size:14px; color:var(--ink-2); }
        .w-live{ display:inline-flex; align-items:center; gap:8px; background:#fff; border:1px solid var(--line);
            border-radius:999px; padding:8px 16px; box-shadow:var(--shadow-card); font-weight:700; color:var(--ink); }
        .w-live i{ width:8px; height:8px; border-radius:50%; background:#2F8F55; box-shadow:0 0 0 4px rgba(47,143,85,.15);
            animation:wPulse 2s ease-in-out infinite; }
        @keyframes wPulse{ 50%{ box-shadow:0 0 0 8px rgba(47,143,85,0); } }
        .w-live b{ font-size:19px; color:#B3261E; font-variant-numeric:tabular-nums; }
        .w-when{ font-size:12.5px; color:var(--ink-3); }
        .world-list{ list-style:none; margin:0; padding:0; display:grid; gap:10px; }
        .world-list li{ display:grid; grid-template-columns:84px 58px 1fr; align-items:center; gap:12px;
            background:#fff; border:1px solid var(--line); border-radius:14px; padding:12px 16px;
            font-size:14.5px; color:var(--ink-2); box-shadow:var(--shadow-card); }
        .w-time{ font-size:12.5px; color:var(--ink-3); font-variant-numeric:tabular-nums; }
        /* 按天分隔：换天时插一条日期条，同一天的消息都在它下面 */
        .world-list li.w-day{ display:flex; align-items:center; gap:12px; background:none; border:0;
            box-shadow:none; padding:16px 6px 2px; font-size:12.5px; font-weight:800;
            letter-spacing:1px; color:#A85A28; }
        .world-list li.w-day::before,
        .world-list li.w-day::after{ content:""; flex:1; height:1px; }
        .world-list li.w-day::before{ background:linear-gradient(90deg,rgba(168,90,40,0),rgba(168,90,40,.34)); }
        .world-list li.w-day::after{ background:linear-gradient(90deg,rgba(168,90,40,.34),rgba(168,90,40,0)); }
        .world-list li.w-day span{ white-space:nowrap; }
        .w-tag{ font-size:11.5px; font-weight:900; letter-spacing:1px; text-align:center; border-radius:6px; padding:3px 0; }
        .w-tag.k{ color:#B3261E; background:#FDECEA; }
        .w-tag.d{ color:#7A4BC0; background:#F1ECFB; }
        .w-tag.p{ color:#6B1F1A; background:#F5E3DF; }
        .w-txt b{ color:var(--ink); font-weight:800; }
        /* BOSS 名字：红色药丸底，比纯换色更醒目 */
        .w-boss, .w-txt b.w-boss{
            display:inline-block; padding:1px 7px; margin:0 1px;
            color:#B3261E; background:#FDECEA;
            border:1px solid rgba(179,38,30,.38); border-radius:6px;
            font:inherit; font-weight:900; letter-spacing:.5px; line-height:1.5;
            cursor:pointer; vertical-align:baseline;
        }
        .w-boss:hover{ background:#FBD9D5; }
        .w-boss:focus-visible{ outline:2px solid var(--amber); outline-offset:2px; }
        .w-boss.on{ background:#B3261E; border-color:#B3261E; color:#fff; }
        /* 祖玛首饰：爆出物品高亮（与 BOSS 名字同款红药丸，不可点） */
        .w-zuma{ display:inline-block; padding:1px 7px; margin:0 1px;
            color:#B3261E; background:#FDECEA; border:1px solid rgba(179,38,30,.38);
            border-radius:6px; font-weight:900; letter-spacing:.5px; line-height:1.5; }
        .w-zuma-t{ color:#B3261E; font-weight:900; }
        .w-map.w-map-d .w-zuma-t{ color:#B3261E; font-weight:900; }   /* 盖过 .w-map.w-map-d b */
        .w-txt .w-m{ color:var(--ink-3); font-size:13px; }
        .world-list .world-empty{ display:block; text-align:center; color:var(--ink-3); font-size:14px; padding:24px 0; }
        @media (max-width:820px){
            .world-list li{ grid-template-columns:72px 42px 1fr; grid-template-areas:"t g ." "x x x";
                row-gap:6px; column-gap:10px; padding:12px 14px; font-size:13.5px; }
            .w-time{ grid-area:t; }
            .w-tag{ grid-area:g; width:42px; }
            .w-txt{ grid-area:x; line-height:1.75; }
            .w-txt .w-m{ display:inline; font-size:13px; }
        }

        /* 同怪同图折叠（尸王殿这类会连续杀同一只怪的场景） */
        .world-list li.w-fold{ align-items:start; }
        .w-fold .w-txt{ display:flex; flex-wrap:wrap; align-items:baseline; gap:2px 10px; line-height:1.85; }
        .w-fold-main{ flex:0 1 auto; min-width:0; }
        .w-fold-btn{ flex:0 0 auto; border:0; background:none; padding:2px 0;
            color:var(--amber-2); font:inherit; font-size:12.5px; font-weight:700; letter-spacing:.5px; cursor:pointer; }
        .w-fold-btn::after{ content:" ▾"; font-size:11px; }
        .w-fold.open .w-fold-btn::after{ content:" ▴"; }
        .w-fold-btn:hover{ color:#8F4515; }
        .w-fold-btn:focus-visible{ outline:2px solid var(--amber); outline-offset:3px; border-radius:4px; }
        .w-cnt{ display:inline-block; min-width:20px; padding:1px 7px; margin:0 2px; border-radius:7px;
            background:#F4ECE4; color:#8A4A18; font-size:12.5px; font-weight:800; text-align:center;
            font-variant-numeric:tabular-nums; }
        .w-fold-list{ display:none; flex:1 0 100%; list-style:none; margin:6px 0 0; padding:8px 0 0;
            border-top:1px dashed rgba(201,116,58,.22); }
        .w-fold.open .w-fold-list{ display:grid; gap:2px; }
        .w-fold-list li{ display:flex; align-items:baseline; gap:12px; background:none; border:0;
            box-shadow:none; padding:3px 0; border-radius:0; font-size:13.5px; }
        .w-fold-list .w-time{ font-size:12px; color:var(--ink-3); }
        .w-fold-list .w-who{ color:var(--ink); font-weight:700; font-size:13.5px; }

        /* 折叠标题：整句统一字号，避免 14.5/13.5/12.5 混排显得小 */
        .w-fold .w-txt{ font-size:15.5px; }
        .w-fold .w-txt .w-m{ font-size:14px; }
        .w-fold .w-cnt{ font-size:13px; }
        .w-fold .w-tag{ font-size:11px; }
        @media (max-width:640px){
            .w-fold .w-txt{ font-size:15px; }
            .w-fold .w-txt .w-m{ font-size:14px; }
            .w-fold .w-cnt{ font-size:13px; }
            .w-fold-main b{ font-size:15px; }
        }

        /* 热门地图：哪张图有人 */
        .w-maps{ display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin:-2px 0 16px;
            font-size:12.5px; color:var(--ink-3); }
        .w-map-k{ font-weight:800; letter-spacing:1px; color:var(--ink-2); }
        .w-map{ display:inline-flex; align-items:baseline; gap:4px; background:#fff; border:1px solid var(--line);
            border-radius:999px; padding:4px 12px; box-shadow:var(--shadow-card); color:var(--ink-2); }
        .w-map b{ color:var(--ink); font-weight:700; }
        .w-map.w-map-d{ background:#F7F2FC; border-color:rgba(122,75,192,.28); }
        .w-map.w-map-d b{ color:#6B4FA8; }
        /* 按天回看：日期切换条 */
        .w-days{ display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin:0 0 10px; }
        .w-day-btn{ border:1px solid var(--line); background:#fff; color:var(--ink-2); border-radius:999px;
            padding:6px 14px; font:inherit; font-size:12.5px; font-weight:700; letter-spacing:.5px;
            cursor:pointer; box-shadow:var(--shadow-card); }
        .w-day-btn:hover{ border-color:rgba(168,90,40,.45); color:#8F4515; }
        .w-day-btn:focus-visible{ outline:2px solid var(--amber); outline-offset:3px; }
        .w-day-btn.on{ background:#A85A28; border-color:#A85A28; color:#fff; }

        .w-spark{ display:inline-block; width:92px; height:24px; vertical-align:middle; }
        .w-spark svg{ width:100%; height:100%; display:block; }
        @media (max-width:640px){ .w-spark{ width:66px; height:20px; } }

        /* 窄屏：折叠行整体降一档字号，按钮不挤文字 */
        @media (max-width:640px){
            .world-list li.w-fold{ padding:12px 14px; }
            .w-fold .w-txt{ font-size:15px; line-height:1.65; gap:4px 8px; color:var(--ink); }
            .w-fold-main b{ font-size:15px; }
            .w-fold .w-txt .w-m{ font-size:14px; }
            .w-tag{ font-size:11px; letter-spacing:.5px; width:42px; padding:2px 0; }
            .w-cnt{ font-size:13px; min-width:20px; padding:1px 6px; }
            .w-fold-btn{ font-size:12.5px; }
            .w-fold-list li{ font-size:13px; gap:8px; }
            .w-fold-list .w-time{ font-size:11.5px; }
        }

        @media (max-width:640px){
            .w-maps{ font-size:12px; gap:6px; }
            .w-map{ padding:3px 10px; }
        }

    
/* ====== 子页顶部（故事/复刻/问答/留言墙/世界动态） ====== */
.page-head{ padding:64px 22px 6px; text-align:center;
    background:linear-gradient(180deg,#F4EEF9 0%,#FFEDD8 70%,#FFF9F1 100%); }
.crumbs{ font-size:13px; color:var(--ink-2); letter-spacing:1px; margin:0 0 14px; }
.crumbs a{ color:var(--ink-2); text-decoration:none; }
.crumbs a:hover{ color:var(--amber-2); }
.crumbs .dot{ margin:0 6px; color:var(--ink-3); }
.page-title{ font-size:clamp(28px,4.4vw,42px); font-weight:900; letter-spacing:8px; line-height:1.35; margin:0; color:var(--ink); }
.page-sub{ max-width:720px; margin:16px auto 0; color:var(--ink-2); font-size:15.5px; line-height:2; letter-spacing:.5px; }
        /* 详情页（世界动态）：标题与内容之间的空白收紧 */
        .page-head + #world.section{ padding-top:28px; }
        .page-head + #world .world-top{ margin-top:14px; }
@media (max-width:820px){
    .page-head{ padding:40px 16px 2px; }
    .page-title{ letter-spacing:4px; }
    .page-sub{ font-size:14.5px; margin-top:12px; }
}

/* ====== 首页精简：年表摘要 ====== */
.story-mini{ list-style:none; margin:34px auto 0; padding:0; display:grid; gap:12px; max-width:760px; }
.story-mini li{ display:grid; grid-template-columns:86px 1fr; gap:16px; align-items:center;
    background:#fff; border:1px solid var(--line); border-radius:16px; padding:16px 22px; box-shadow:var(--shadow-card); }
.story-mini b{ font-size:20px; letter-spacing:2px; color:var(--amber-2); }
.story-mini span{ color:var(--ink-2); font-size:14.5px; line-height:1.8; }

/* “查看更多”文字链 */
.more-link{ margin:26px 0 0; text-align:center; font-size:14.5px; letter-spacing:1px; }
.more-link a{ color:var(--amber-2); text-decoration:none; font-weight:700;
    border-bottom:1px dashed rgba(201,116,58,.5); padding-bottom:2px; }
.more-link a:hover{ color:#B3261E; }
.more-link .sep{ margin:0 14px; color:var(--ink-3); }

/* 安装四步：默认折叠 */
.steps-fold{ margin:36px auto 0; max-width:900px; }
.steps-fold > summary{ cursor:pointer; list-style:none; text-align:center; font-size:14px; letter-spacing:2px;
    color:var(--ink-2); background:#fff; border:1px dashed rgba(201,116,58,.45); border-radius:999px;
    padding:12px 0; box-shadow:var(--shadow-card); }
.steps-fold > summary::-webkit-details-marker{ display:none; }
.steps-fold > summary::after{ content:"  ＋"; color:var(--amber-2); font-weight:900; }
.steps-fold[open] > summary::after{ content:"  －"; }
.steps-fold .steps{ margin-top:18px; }

@media (max-width:820px){
    .story-mini li{ grid-template-columns:62px 1fr; gap:10px; padding:14px 14px; }
    .story-mini b{ font-size:17px; letter-spacing:1px; }
    .story-mini span{ font-size:13.5px; }
    .decl-grid{ grid-template-columns:1fr !important; gap:10px; }
    .decl{ padding:14px 16px !important; }
}

/* 手机端进一步压缩：信任卡横滑、车票缩小、下载卡收边 */
@media (max-width:820px){
    .decl-grid{ display:flex !important; overflow-x:auto; gap:10px; padding-bottom:6px; scrollbar-width:none; }
    .decl-grid::-webkit-scrollbar{ display:none; }
    .decl{ flex:0 0 236px; }
    .photo-hero{ width:min(300px,100%) !important; }
    .hero{ padding:40px 16px 18px !important; }
    .dl-card{ padding:24px 16px 22px !important; }
    .dl-card h3{ font-size:19px; letter-spacing:3px; }
}

/* 面包屑与页脚分隔符（原来的 .dot 是首页装饰圆点，不能复用） */
.crumbs .csep{ margin:0 7px; color:#B99C88; }
.footer .fsep{ margin:0 9px; opacity:.5; }

/* ====== 玩法说明页 ====== */
section[id]{ scroll-margin-top:84px; }
.guide-nav{ display:flex; gap:10px; flex-wrap:wrap; justify-content:center; margin:26px 0 0; }
.guide-nav a{ font-size:13.5px; letter-spacing:1px; color:var(--ink-2); background:#fff; border:1px solid var(--line);
    border-radius:999px; padding:8px 16px; text-decoration:none; box-shadow:var(--shadow-card); }
.guide-nav a:hover{ color:var(--amber-2); border-color:rgba(201,116,58,.45); }
.guide-card{ background:#fff; border:1px solid var(--line); border-radius:18px; padding:22px 24px;
    box-shadow:var(--shadow-card); margin-top:16px; }
.guide-card h3{ font-size:17px; font-weight:900; letter-spacing:2px; margin:0 0 8px; color:var(--ink); }
.guide-card p{ margin:8px 0; color:var(--ink-2); line-height:1.95; font-size:14.5px; }
.guide-card .tag-line{ color:var(--ink-3); font-size:13px; }
.rule-list{ list-style:none; padding:0; margin:18px 0 0; display:grid; gap:12px; }
.rule-list li{ background:#fff; border:1px solid var(--line); border-radius:16px; padding:16px 20px;
    box-shadow:var(--shadow-card); color:var(--ink-2); line-height:1.95; font-size:14.5px; }
.rule-list b{ color:var(--ink); font-weight:800; }
.guide-tip{ margin-top:18px; background:#FFF6E2; border:1px solid rgba(201,116,58,.35); border-radius:14px;
    padding:14px 18px; color:#7C5E30; font-size:13.5px; line-height:1.9; }

/* 首页“新手指南”入口卡 */
.guide-entry{ display:flex; align-items:center; gap:18px; max-width:820px; margin:0 auto;
    background:#fff; border:1px solid var(--line); border-radius:22px; padding:20px 26px;
    box-shadow:var(--shadow-card); text-decoration:none; transition:transform var(--t),box-shadow var(--t); }
.guide-entry:hover{ transform:translateY(-3px); box-shadow:var(--shadow-soft); }
.guide-entry .ge-ico{ flex:0 0 46px; width:46px; height:46px; border-radius:50%; background:#FBEAD6; color:#C9743A;
    display:flex; align-items:center; justify-content:center; font-size:22px; }
.guide-entry .ge-txt{ flex:1; min-width:0; }
.guide-entry .ge-txt b{ display:block; font-size:17px; font-weight:900; letter-spacing:3px; color:var(--ink); }
.guide-entry .ge-txt em{ display:block; font-style:normal; margin-top:6px; color:var(--ink-2); font-size:13.5px; }
.guide-entry .ge-btn{ flex:0 0 auto; font-size:13.5px; font-weight:800; letter-spacing:1px; color:var(--amber-2);
    border:1px solid rgba(201,116,58,.45); border-radius:999px; padding:9px 16px; white-space:nowrap; }
@media (max-width:820px){
    .guide-entry{ gap:12px; padding:16px 16px; border-radius:18px; }
    .guide-entry .ge-ico{ flex:0 0 38px; width:38px; height:38px; font-size:18px; }
    .guide-entry .ge-txt b{ font-size:15.5px; letter-spacing:2px; }
    .guide-entry .ge-txt em{ font-size:12.5px; }
    .guide-entry .ge-btn{ padding:8px 12px; font-size:12.5px; }
}

.section-tight{ padding:40px 22px; }

/* 首页双入口（新手指南 / 任务攻略） */
.guide-entries{ display:grid; grid-template-columns:1fr 1fr; gap:16px; max-width:980px; margin:0 auto; }
.guide-entry{ max-width:none; margin:0; }
.guide-entry.ge-quest .ge-ico{ background:#EDE6F8; color:#7A5BC0; }
@media (max-width:820px){
    .guide-entries{ grid-template-columns:1fr; gap:12px; }
}

.guide-entries .guide-entry .ge-txt em{ font-size:12.5px; letter-spacing:0; }
.guide-entries .guide-entry .ge-btn{ font-size:13px; padding:8px 14px; }

@media (max-width:600px){
    .guide-entries .guide-entry{ flex-wrap:wrap; }
    .guide-entries .ge-txt{ flex:1 1 auto; min-width:0; }
    .guide-entries .ge-txt em{ font-size:13px; line-height:1.8; }
    .guide-entries .ge-btn{ order:3; flex:1 0 100%; text-align:center; margin-top:12px; padding:10px 0; }
}

/* 一区到底声明 */
.promise-zone{ margin:14px auto 0; display:inline-flex; align-items:center; gap:12px; flex-wrap:wrap;
    justify-content:center; font-size:15px; letter-spacing:1px; }
.promise-zone b{ color:#B3261E; font-weight:900; font-size:17px; letter-spacing:2px; }
.promise-zone span{ color:#fff; background:#B3261E; border:1px solid #9C1E17;
    border-radius:999px; padding:4px 14px; font-size:14px; font-weight:800; letter-spacing:1px;
    box-shadow:0 2px 8px rgba(179,38,30,.22); animation:zonePulse 2.4s ease-in-out infinite; }
@keyframes zonePulse{ 0%,100%{ opacity:1 } 50%{ opacity:.72 } }
@media (prefers-reduced-motion: reduce){ .promise-zone span{ animation:none; } }
@media (max-width:600px){ .promise-zone{ font-size:14px; gap:8px; } .promise-zone b{ font-size:15.5px; } }

.hero-note b{ white-space:nowrap; }

/* ---- 浏览器表面：选区 / 焦点 / 滚动条 ---- */
::selection{ background:#F3C39A; color:#3A2C2B; }
a:focus-visible, button:focus-visible, summary:focus-visible{
    outline:2px solid var(--amber-2); outline-offset:3px; border-radius:8px; }
html{ scrollbar-color:#D9A87E #FBF0E4; scrollbar-width:thin; }
::-webkit-scrollbar{ width:11px; height:11px; }
::-webkit-scrollbar-track{ background:#FBF0E4; }
::-webkit-scrollbar-thumb{ background:#D9A87E; border-radius:8px; border:2px solid #FBF0E4; }
::-webkit-scrollbar-thumb:hover{ background:#C08A5E; }

/* 空状态：虚线框，别做成一张“空卡片” */
.world-list li.world-empty{ background:#FFFDF8; border:1px dashed rgba(201,116,58,.38);
    box-shadow:none; color:var(--ink-2); }

/* 标题折行：避免出现孤字（如手机上“2002”单独一行） */
h1, h2, h3, .sec-title, .page-title, .promise-big{ text-wrap:balance; }
p, .sec-sub, .hero-lead{ text-wrap:pretty; }

::placeholder{ color:var(--ink-3); opacity:1; }

/* 每周活动卡片 */
.events{ margin:0 0 20px; }
.events-title{ font-size:17px; margin:0 0 12px; color:var(--ink); }
.event-grid{ display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.event-card{ background:var(--eb,#FFF6E8); border:1px solid rgba(201,116,58,.28); border-radius:16px;
    padding:16px 18px; box-shadow:var(--shadow-card); }
.event-card header{ display:flex; align-items:baseline; gap:10px; flex-wrap:wrap; margin:0 0 8px; }
.event-day{ font-size:12px; font-weight:800; letter-spacing:1px; color:#fff; background:var(--ec,#C97A2A);
    border-radius:999px; padding:3px 10px; }
.event-card header b{ font-size:16.5px; color:var(--ink); }
.event-card header em{ font-style:normal; font-size:12.5px; color:var(--ink-3); font-variant-numeric:tabular-nums; }
.event-card p{ margin:0; font-size:13.5px; line-height:1.85; color:var(--ink-2); }
@media (max-width:820px){ .event-grid{ grid-template-columns:1fr; } }

/* 任务勋章高亮卡 */
.medal-card{ display:flex; gap:18px; align-items:flex-start; background:#FFF8EC;
    border:1px solid rgba(201,116,58,.35); border-radius:18px; padding:20px 22px; margin:0 0 18px;
    box-shadow:var(--shadow-card); }
.medal-badge{ flex:0 0 auto; width:62px; height:62px; border-radius:50%; background:#F6E3C8; color:#8A4A18;
    display:flex; align-items:center; justify-content:center; font-weight:900; font-size:15px; letter-spacing:2px;
    border:2px solid rgba(168,90,40,.35); }
.medal-body h3{ margin:0 0 6px; font-size:18px; color:var(--ink); }
.medal-body p{ margin:0; font-size:14.5px; line-height:1.9; color:var(--ink-2); }
.medal-rewards{ display:flex; flex-wrap:wrap; gap:8px; margin:10px 0 0; }
.medal-rewards span{ background:#fff; border:1px solid rgba(201,116,58,.3); border-radius:999px;
    padding:4px 12px; font-size:13px; font-weight:700; color:#8A4A18; }
.medal-note{ margin-top:8px !important; font-size:13px; color:var(--ink-3); }
@media (max-width:640px){
    .medal-card{ display:block; padding:16px; }
    .medal-badge{ display:inline-flex; width:auto; height:auto; border-radius:8px; padding:3px 10px;
        font-size:12px; letter-spacing:1px; margin:0 0 8px; }
    .medal-body h3{ font-size:16px; }
    .medal-body p{ font-size:13.5px; line-height:1.8; }
    .medal-rewards span{ font-size:12.5px; padding:3px 10px; }
}

/* 页脚里的视图切换链接（与其它页脚链接同一行） */
.footer .foot-switch{ margin:16px 0 0; }
.footer .foot-view{ display:inline-block; padding:9px 20px; border:1px solid rgba(201,116,58,.45);
    border-radius:999px; background:#FFF6EC; color:var(--amber-2); text-decoration:none;
    font-weight:800; letter-spacing:.5px; box-shadow:var(--shadow-card); }
.footer .foot-view:hover{ color:#B3261E; background:#FFEBD6; border-color:rgba(179,38,30,.35); }
@media (max-width:820px){
    .footer .foot-view{ padding:8px 18px; font-size:13px; }
}

/* 子页左上角：返回首页 */
.page-back{ margin:0 0 14px; text-align:left; }
.page-back a{ display:inline-flex; align-items:center; gap:6px; padding:8px 16px;
    background:#fff; border:1px solid var(--line); border-radius:999px;
    color:var(--ink-2); font-size:13px; font-weight:700; letter-spacing:1px;
    text-decoration:none; box-shadow:var(--shadow-card); transition:color var(--t), border-color var(--t); }
.page-back a:hover{ color:var(--amber-2); border-color:rgba(168,90,40,.45); }
@media (max-width:820px){ .page-back{ margin-bottom:10px; } .page-back a{ padding:7px 14px; font-size:12.5px; } }

/* 任务链条：编号步骤 + 竖线，表达“同一条线的先后顺序” */
.chain{ list-style:none; margin:18px 0 0; padding:0 0 0 30px; position:relative; }
.chain::before{ content:""; position:absolute; left:10px; top:8px; bottom:12px;
    border-left:1px dashed rgba(168,90,40,.35); }
.chain li{ position:relative; padding:0 0 20px 10px; color:var(--ink-2); line-height:1.95; font-size:14.5px; }
.chain li:last-child{ padding-bottom:2px; }
.chain li::before{ content:attr(data-n); position:absolute; left:-30px; top:2px;
    width:21px; height:21px; border-radius:50%; background:#FFFDF8;
    border:1px solid rgba(168,90,40,.55); color:var(--amber-2);
    font-size:11.5px; font-weight:900; line-height:19px; text-align:center; }
.chain li b{ color:var(--ink); }
.chain .c-note{ display:block; margin-top:6px; color:var(--ink-3); font-size:13px; line-height:1.9; }
@media (max-width:600px){ .chain{ padding-left:24px; } .chain li::before{ left:-24px; width:18px; height:18px; line-height:16px; font-size:10.5px; } }

.chain li{ max-width:880px; }

/* 任务线路图 */
.route-map{ display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-top:18px; }
.route{ background:#fff; border:1px solid var(--line); border-radius:18px; padding:16px 18px 14px;
    box-shadow:var(--shadow-card); }
.route header{ display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.route .r-tag{ font-size:11px; font-weight:900; letter-spacing:1px; color:var(--rc);
    background:var(--rbg); border-radius:999px; padding:3px 9px; }
.route header b{ font-size:15.5px; font-weight:900; letter-spacing:1px; color:var(--ink); }
.route header em{ margin-left:auto; font-style:normal; font-size:12px; color:var(--ink-3); }
.route .r-flow{ display:flex; flex-wrap:wrap; align-items:center; gap:5px; margin-top:12px; }
.route .r-flow span{ font-size:12.5px; color:var(--ink-2); background:#FFFBF5;
    border:1px solid rgba(74,59,58,.14); border-radius:8px; padding:3px 8px; white-space:nowrap; }
.route .r-flow span.r-end{ color:var(--rc); border-color:var(--rc); background:var(--rbg); font-weight:700; }
.route .r-flow span.r-key{ color:#A85A28; border-color:rgba(168,90,40,.55); background:#FFF1E0; font-weight:800; }
.route .r-flow i{ font-style:normal; color:var(--ink-3); font-size:12px; }
.route .r-note{ margin-top:10px; font-size:12.5px; color:var(--ink-3); line-height:1.8; }
@media (max-width:820px){
    .route-map{ grid-template-columns:1fr; }
    .route header em{ margin-left:0; }
}

/* 今日战报（世界动态里的一行） */
.w-today{ font-size:12.5px; color:var(--ink-2); letter-spacing:.5px; }
@media (max-width:820px){ .w-today{ flex:1 0 100%; margin-top:6px; } }

.w-tag.b{ color:#6B4FA8; background:#EEE9F8; }

/* 窄屏导航：7 项 + 两个胶囊，收窄间距/内边距，避免把「留言墙」挤出可视区 */
@media (max-width:480px){
    .nav-links{gap:10px}
    .nav-links a.nav-hot{padding:5px 9px;letter-spacing:1px}
}
