/* ========== 0. 字体引入（行书手写体 + 龙苍体 + 军用手写数字 + 古典衬线体） ========== */
@import url('https://fonts.googleapis.com/css2?family=Caveat:wght@600;700&family=Zhi+Mang+Xing&family=Long+Cang&family=Playfair+Display:ital,wght@0,400;0,700;0,900;1,400&family=EB+Garamond:ital,wght@0,400;0,500;1,400&family=UnifrakturCook:wght@700&family=Noto+Serif+SC:wght@400;600;900&display=swap');

/* ========== 思维链 · 军机参谋部 · 钢笔手写 + 二战黑金军官铭牌 ========== */
cot {
    display: block !important;
    margin: 10px 14px 8px 14px;
    padding: 16px 16px 12px 16px;
    
    /* ⚙️ 冷轧铁灰底色 + 金属微噪点与拉丝 */
    background-color: #cad0d8 !important;
    background-image: 
        radial-gradient(circle at 50% 50%, rgba(0, 0, 0, 0.05) 1px, transparent 1px),
        repeating-linear-gradient(0deg,
            rgba(255, 255, 255, 0.04) 0px,
            rgba(255, 255, 255, 0.00) 2px,
            rgba(0, 0, 0, 0.03) 4px),
        linear-gradient(160deg, #d5dae2 0%, #c4cbd4 50%, #b6bec9 100%) !important;
    background-size: 3px 3px, 100% 4px, 100% 100%;
    
    /* 锻铁装甲外框 + 实体硬阴影 */
    border: 2px solid #14171a !important;
    box-shadow: 
        inset 0 0 0 1px rgba(255, 255, 255, 0.4),
        inset 0 0 12px rgba(0, 0, 0, 0.1),
        3px 3px 0px rgba(20, 23, 26, 0.85) !important;
        
    position: relative;
    overflow: hidden;
}

/* 顶部：黑底反白军令电头 */
cot::before {
    content: "■ GENERAL STAFF · 参谋本部作战推演手令 [EYES ONLY] ■";
    display: block;
    font-family: "Playfair Display", "Noto Serif SC", monospace, serif !important;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 1.5px;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    background: #14171a !important;
    padding: 5px 8px;
    margin: -16px -16px 12px -16px;
    text-align: center;
    border-bottom: 2px solid #14171a;
    text-transform: uppercase;
}

/* ① 思维链文字全域纯黑碳素墨水（粉碎任何泛白） */
cot,
cot p,
cot span,
cot div {
    color: #08090c !important;
    -webkit-text-fill-color: #08090c !important;
    
    /* 刚劲挺拔的书法行楷/端正楷体字库 */
    font-family: "Kaiti SC", "STKaiti", "楷体", "Weibei SC", "Noto Serif SC", Georgia, serif !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    
    /* 🌟 核心：彻底回正！取消倾斜与斜体 */
    font-style: normal !important;
    transform: none !important;
    
    line-height: 1.85 !important;
    letter-spacing: 0.04em !important;
    text-align: justify;
    text-shadow: 0.2px 0.2px 0px rgba(0, 0, 0, 0.7) !important;
}

/* ② 钢笔手绘划线分割条目 */
cot p,
cot div {
    display: block !important;
    margin: 0 !important;
    padding: 10px 4px 10px 4px !important;
    text-indent: 0 !important;
    border-bottom: 1.5px solid transparent !important;
    border-image: linear-gradient(90deg, 
        rgba(8, 9, 12, 0.05) 0%, 
        #08090c 6%, 
        rgba(8, 9, 12, 0.85) 50%, 
        rgba(8, 9, 12, 0.35) 85%, 
        rgba(8, 9, 12, 0.05) 100%) 1 !important;
}

cot p:last-of-type,
cot div:last-of-type {
    border-bottom: none !important;
    padding-bottom: 4px !important;
}

/* ③ 🎖️ 二战军官黑金金属铭牌（纯黑底+极耀真金字） */
cot tag,
cot tag *,
cot b,
cot b *,
cot strong,
cot strong * {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    font-family: "Cinzel", "Playfair Display", "Noto Serif SC", Georgia, serif !important;
    font-size: 11.5px !important;
    font-weight: 900 !important;
    
    /* 🌟 核心：回正铭牌 */
    font-style: normal !important;
    transform: none !important;
    
    letter-spacing: 0.12em !important;
    line-height: 1.25 !important;
    background: linear-gradient(145deg, #181a1e 0%, #050608 100%) !important;
    color: #ffe699 !important;
    -webkit-text-fill-color: #ffe699 !important;
    border: 1px solid #b89047 !important;
    border-radius: 3px !important;
    padding: 2.5px 8px 2px 8px !important;
    margin-right: 8px !important;
    vertical-align: 1.5px !important;
    box-shadow: 
        0 2px 5px rgba(0, 0, 0, 0.75), 
        inset 0 1px 0 rgba(255, 235, 170, 0.4),
        inset 0 0 6px rgba(0, 0, 0, 0.9) !important;
    text-shadow: 
        0 0 6px rgba(255, 215, 0, 0.7), 
        0 1px 2px rgba(0, 0, 0, 0.95) !important;
}

/* 底部：发报归档落款 */
cot::after {
    content: "— STRATEGIC CIPHER VERIFIED · 参谋长联席会议存档 —";
    display: block;
    font-family: "Playfair Display", "Noto Serif SC", monospace, serif !important;
    font-size: 9px;
    letter-spacing: 2px;
    color: #4a5058 !important;
    -webkit-text-fill-color: #4a5058 !important;
    text-align: center;
    margin-top: 10px;
    padding-top: 6px;
    border-top: 1px dashed #3a4048;
}

/* ========== 1. 纸张纹理（纤维 + 墨渍）========== */
.paper-texture,
details,
text {
    background-color: #efe6d0;
    background-image:
        radial-gradient(ellipse at 8% 4%, rgba(120, 90, 50, 0.22) 0%, transparent 42%),
        radial-gradient(ellipse at 94% 12%, rgba(120, 90, 50, 0.18) 0%, transparent 38%),
        radial-gradient(ellipse at 50% 98%, rgba(105, 78, 42, 0.20) 0%, transparent 45%),
        radial-gradient(circle at 22% 63%, rgba(59, 44, 30, 0.10) 0%, transparent 9%),
        radial-gradient(circle at 71% 31%, rgba(59, 44, 30, 0.08) 0%, transparent 6%),
        radial-gradient(circle at 44% 82%, rgba(59, 44, 30, 0.07) 0%, transparent 5%),
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='f'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23f)' opacity='0.28'/%3E%3C/svg%3E"),
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='600' height='600'%3E%3Cfilter id='b'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.012' numOctaves='3' seed='11'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23b)' opacity='0.20'/%3E%3C/svg%3E");
    background-blend-mode: multiply, multiply, multiply, multiply, multiply, multiply, multiply, overlay;
}

/* ========== 2. 撕裂毛边遮罩 ========== */
.torn-edge,
details,
text {
    -webkit-mask-image:
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='500' height='500' preserveAspectRatio='none'%3E%3Cfilter id='t'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.018 0.05' numOctaves='5' seed='23' result='n'/%3E%3CfeDisplacementMap in='SourceGraphic' in2='n' scale='12' xChannelSelector='R' yChannelSelector='G'/%3E%3C/filter%3E%3Crect x='2' y='2' width='496' height='496' fill='%23fff' filter='url(%23t)'/%3E%3C/svg%3E");
    mask-image:
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='500' height='500' preserveAspectRatio='none'%3E%3Cfilter id='t'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.018 0.05' numOctaves='5' seed='23' result='n'/%3E%3CfeDisplacementMap in='SourceGraphic' in2='n' scale='12' xChannelSelector='R' yChannelSelector='G'/%3E%3C/filter%3E%3Crect x='2' y='2' width='496' height='496' fill='%23fff' filter='url(%23t)'/%3E%3C/svg%3E");
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    border: none !important;
    border-radius: 0 !important;
    filter: drop-shadow(1px 2px 3px rgba(50, 38, 24, 0.35));
    box-shadow: none !important;
}

text {
    -webkit-mask-image:
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='500' height='500' preserveAspectRatio='none'%3E%3Cfilter id='t2'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.02 0.055' numOctaves='5' seed='61' result='n'/%3E%3CfeDisplacementMap in='SourceGraphic' in2='n' scale='12' xChannelSelector='R' yChannelSelector='G'/%3E%3C/filter%3E%3Crect x='2' y='2' width='496' height='496' fill='%23fff' filter='url(%23t2)'/%3E%3C/svg%3E");
    mask-image:
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='500' height='500' preserveAspectRatio='none'%3E%3Cfilter id='t2'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.02 0.055' numOctaves='5' seed='61' result='n'/%3E%3CfeDisplacementMap in='SourceGraphic' in2='n' scale='12' xChannelSelector='R' yChannelSelector='G'/%3E%3C/filter%3E%3Crect x='2' y='2' width='496' height='496' fill='%23fff' filter='url(%23t2)'/%3E%3C/svg%3E");
}

/* ========== 3. 正文排版 ========== */
text {
    display: block;
    font-family: "EB Garamond", "Noto Serif SC", "Source Han Serif SC", Georgia, serif !important;
    font-size: 17.5px;
    line-height: 1.95;
    color: #2a1f14 !important;
    -webkit-text-fill-color: #2a1f14 !important;
    padding: 26px 30px 30px; 
    margin: 14px 0;
    text-align: justify;
    hyphens: auto;
    text-shadow: 0 0 0.6px rgba(43, 33, 24, 0.45);
}

text p {
    text-indent: 2em;
    margin: 10px 0;
    color: #2a1f14 !important;
    -webkit-text-fill-color: #2a1f14 !important;
}

text > p:first-of-type::first-letter {
    float: left;
    font-family: "UnifrakturCook", "Playfair Display", "Noto Serif SC", serif;
    font-size: 3.4em;
    line-height: 0.82;
    margin: 6px 8px 0 0;
    color: #2b2118 !important;
    -webkit-text-fill-color: #2b2118 !important;
    text-shadow: 1px 1px 0 rgba(139, 115, 85, 0.35);
}

/* ========== 4. details / summary 折叠面板 ========== */
details {
    background: #f5f0e1;
    border-radius: 0;
    margin: 10px 0;
    padding: 0 0 12px 0;
    font-family: "EB Garamond", "Noto Serif SC", "Source Han Serif SC", Georgia, serif;
    color: #2b2118 !important;
    position: relative;
    overflow: hidden;
}

details::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background:
        radial-gradient(ellipse at 20% 50%, rgba(139, 115, 85, 0.06) 0%, transparent 70%),
        radial-gradient(ellipse at 80% 50%, rgba(139, 115, 85, 0.04) 0%, transparent 70%);
    pointer-events: none;
    z-index: 0;
}

details > * {
    position: relative;
    z-index: 1;
}

/* 表头文字锁定深焦黑 */
details summary {
    background: transparent !important;
    color: #1a120b !important;
    -webkit-text-fill-color: #1a120b !important;
    font-family: "Playfair Display", "Noto Serif SC", "Source Han Serif SC", serif !important;
    font-size: 17px !important;
    font-weight: 900 !important;
    letter-spacing: 5px !important;
    text-transform: uppercase;
    padding: 16px 16px 10px !important;
    border-bottom: 3px double #2b2118 !important;
    border-top: 1px solid #2b2118 !important;
    text-shadow: 0.5px 0.5px 0 rgba(139, 115, 85, 0.4);
    cursor: pointer;
    list-style: none;
    text-align: center;
    position: relative;
}

details summary::-webkit-details-marker {
    display: none;
}

details summary:hover {
    background: rgba(139, 115, 85, 0.10) !important;
}

details summary::before {
    content: "❦ ";
    color: #6b5942;
}

details summary::after {
    content: " ❦";
    color: #6b5942;
}

details > div,
details > span,
details > br,
details > progress,
details > table,
details > ul {
    padding-left: 14px;
    padding-right: 14px;
}

/* ========== 5. 面板与基础信息样式 ========== */
.section-title {
    display: block;
    font-family: "Playfair Display", "Noto Serif SC", "Source Han Serif SC", serif !important;
    font-size: 13px;
    font-weight: bold;
    color: #2b2118 !important;
    -webkit-text-fill-color: #2b2118 !important;
    letter-spacing: 2px;
    text-align: center;
    margin: 12px 0 8px 0;
    padding: 4px 0;
    border-top: 1px solid #2b2118;
    border-bottom: 1px solid #2b2118;
    text-transform: uppercase;
}

.section-title::before {
    content: "❧ ";
    color: #6b5942;
    font-size: 12px;
}

.section-title::after {
    content: " ❧";
    color: #6b5942;
    font-size: 12px;
}

.info-label {
    font-weight: bold;
    color: #5a4738 !important;
    -webkit-text-fill-color: #5a4738 !important;
    font-size: 13px;
    margin-right: 2px;
}

.status-section,
.background-section,
.npc-panel,
.monster-panel,
.event-panel,
.choice-block,
.attribute-panel,
.war-panel {
    background: rgba(139, 115, 85, 0.07);
    border: none;
    border-left: 3px solid #2b2118;
    border-top: 1px solid rgba(43, 33, 24, 0.25);
    border-bottom: 1px solid rgba(43, 33, 24, 0.25);
    font-family: "EB Garamond", "Noto Serif SC", "Source Han Serif SC", Georgia, serif;
    color: #2b2118 !important;
    margin: 6px 14px;
    padding: 8px 10px;
}

.status-section ul,
.npc-panel ul,
.monster-panel ul {
    margin: 4px 0;
    padding-left: 18px;
}

.status-section ul li,
.npc-panel ul li,
.monster-panel ul li {
    font-size: 13px;
    line-height: 1.8;
    color: #3b2f1e !important;
    -webkit-text-fill-color: #3b2f1e !important;
    list-style-type: "– ";
}

.background-text {
    font-size: 12.5px;
    line-height: 1.9;
    color: #4a3f30 !important;
    -webkit-text-fill-color: #4a3f30 !important;
    text-indent: 2em;
    margin: 4px 0;
}

.relate-list,
.equip-list,
.list-title {
    font-size: 13px;
    font-weight: bold;
    color: #4a3728 !important;
    -webkit-text-fill-color: #4a3728 !important;
    margin: 8px 14px 4px 14px;
}

/* ========== 6. 物品信息卡 · 紧凑胶囊 + 下挂展开 (item-chip) ========== */

.relate-list,
.equip-list {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: flex-start !important;
    gap: 0 !important;
    overflow: visible !important;
}

.relate-list .list-title,
.equip-list .list-title {
    width: 100% !important;
    flex: none !important;
}

details.item-chip {
    display: inline-flex !important;
    flex-wrap: wrap !important;
    margin: 3px 4px !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    overflow: visible !important;
    position: static !important;
}

details.item-chip,
details.item-chip *,
details.item-chip::before,
details.item-chip::after {
    -webkit-mask-image: none !important;
    mask-image: none !important;
    filter: none !important;
    background-image: none !important;
}

details.item-chip > summary {
    display: inline-block !important;
    background: #e8dcc8 !important;
    background-image: none !important;
    border: 1px solid #b8a88a !important;
    border-top: 1px solid #b8a88a !important;
    border-bottom: 1px solid #b8a88a !important;
    padding: 2px 8px !important;
    margin: 0 !important;
    font-size: 12px !important;
    font-weight: normal !important;
    font-family: "EB Garamond", "Noto Serif SC", Georgia, serif !important;
    color: #3b2f1e !important;
    -webkit-text-fill-color: #3b2f1e !important;
    cursor: pointer !important;
    list-style: none !important;
    letter-spacing: 0.3px !important;
    text-align: left !important;
    text-transform: none !important;
    text-shadow: none !important;
    white-space: nowrap !important;
    transition: all 0.15s ease !important;
}

details.item-chip > summary::-webkit-details-marker {
    display: none !important;
}

details.item-chip > summary::before,
details.item-chip > summary::after {
    content: none !important;
    display: none !important;
}

details.item-chip > summary:hover {
    background: #d4c4a8 !important;
    border-color: #8b7355 !important;
    box-shadow: 1px 1px 3px rgba(59, 47, 30, 0.15) !important;
}

details.item-chip[open] > summary {
    background: #6b5942 !important;
    color: #f5f0e1 !important;
    -webkit-text-fill-color: #f5f0e1 !important;
    border-color: #8b7355 !important;
}

details.item-chip > .item-info {
    flex-basis: 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    background: #3b2c1e !important;
    background-image: none !important;
    color: #e8dcc8 !important;
    -webkit-text-fill-color: #e8dcc8 !important;
    padding: 5px 10px !important;
    margin: 2px 0 3px 0 !important;
    font-size: 11.5px !important;
    font-weight: normal !important;
    line-height: 1.6 !important;
    letter-spacing: 0 !important;
    border: 1px solid #c9a96e !important;
    border-radius: 2px !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.25) !important;
    word-break: break-word !important;
    box-sizing: border-box !important;
    text-align: left !important;
}

details.item-chip > .item-info span {
    color: #c9a96e !important;
    -webkit-text-fill-color: #c9a96e !important;
    font-weight: bold !important;
}

/* ========== 7. 帝国日报与战报 ========== */
.news-panel,
.quest-panel,
.faction-panel,
.rumor-panel,
.spectrum-panel {
    margin: 6px 14px;
    padding: 8px 10px;
    border-bottom: 1px dotted #b8a88a;
}

.news-panel:last-child,
.spectrum-panel:last-child {
    border-bottom: none;
}

.news-panel h2,
.quest-panel h2,
.faction-panel h2,
.rumor-panel h2,
.spectrum-panel h2,
.calendar-title {
    font-family: "Playfair Display", "Noto Serif SC", "Source Han Serif SC", serif !important;
    font-size: 14px;
    color: #2b2118 !important;
    -webkit-text-fill-color: #2b2118 !important;
    letter-spacing: 2px;
    margin: 4px 0 6px 0;
    padding-bottom: 4px;
    border-bottom: 2px solid #2b2118 !important;
    text-transform: uppercase;
}

.news-panel h2::before,
.quest-panel h2::before,
.faction-panel h2::before,
.rumor-panel h2::before {
    content: "▪ ";
    color: #6b5942;
}

.news-panel ul,
.rumor-panel ul {
    column-count: 2;
    column-gap: 22px;
    column-rule: 1px solid rgba(43, 33, 24, 0.3);
    margin: 4px 0;
    padding-left: 16px;
}

@media (max-width: 640px) {
    .news-panel ul,
    .rumor-panel ul {
        column-count: 1;
    }
}

.news-panel ul li,
.faction-panel ul li,
.rumor-panel ul li {
    font-size: 12.5px;
    line-height: 1.9;
    color: #4a3f30 !important;
    -webkit-text-fill-color: #4a3f30 !important;
    list-style-type: "◇ ";
    margin-bottom: 3px;
}

/* ========== 8. 表格 (记忆回廊) ========== */
details table {
    width: calc(100% - 28px);
    margin: 8px 14px;
    border-collapse: collapse;
    font-size: 12px;
    font-family: "EB Garamond", "Noto Serif SC", "Source Han Serif SC", Georgia, serif;
    border: 1px solid #2b2118;
}

details table caption {
    font-family: "Playfair Display", "Noto Serif SC", "Source Han Serif SC", serif;
    font-size: 13px;
    font-weight: bold;
    color: #2b2118 !important;
    -webkit-text-fill-color: #2b2118 !important;
    letter-spacing: 2px;
    padding: 6px 0;
    text-align: center;
    border-bottom: 3px double #2b2118;
}

details table th {
    background: #d4c4a8 !important;
    color: #2b2118 !important;
    -webkit-text-fill-color: #2b2118 !important;
    font-family: "Playfair Display", "Noto Serif SC", "Source Han Serif SC", serif;
    padding: 8px 10px;
    font-size: 12.5px;
    letter-spacing: 1.5px;
    border: 1px solid #8b7355 !important;
    text-align: center;
    text-transform: uppercase;
    font-weight: 700;
}

details table td {
    padding: 5px 8px;
    border: 1px solid rgba(43, 33, 24, 0.35) !important;
    font-size: 12px;
    line-height: 1.6;
    color: #2b2118 !important;
    -webkit-text-fill-color: #2b2118 !important;
    background: transparent !important;
}

details table tr:nth-child(even) td {
    background: rgba(139, 115, 85, 0.10) !important;
}

details table tr:hover td {
    background: rgba(139, 115, 85, 0.2) !important;
}

/* ========== 9. 下步行动 · 帝国参谋本部 · 原生直填战术卡 (SARO原生协议版) ========== */
.choice-block {
    background: rgba(139, 115, 85, 0.06) !important;
    border-left: 3px solid #2b2118 !important;
    border-top: 1px solid rgba(43, 33, 24, 0.25) !important;
    border-bottom: 1px solid rgba(43, 33, 24, 0.25) !important;
    margin: 8px 14px !important;
    padding: 10px 12px 14px 12px !important;
}

/* 💬 观察员吐槽气泡框 */
.choice-situation {
    background: rgba(220, 208, 185, 0.8) !important;
    border: 1px dashed #8a6d3b !important;
    border-radius: 4px !important;
    color: #1a120b !important;
    -webkit-text-fill-color: #1a120b !important;
    font-size: 13.5px !important;
    line-height: 1.7 !important;
    padding: 10px 12px !important;
    margin-bottom: 12px !important;
    text-shadow: none !important;
}

.choice-situation * {
    color: #1a120b !important;
    -webkit-text-fill-color: #1a120b !important;
}

.choice-situation .ooc-badge {
    background: #8a1f24 !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    padding: 2px 6px !important;
    border-radius: 3px !important;
    font-weight: bold !important;
    letter-spacing: 1px;
    margin-right: 6px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

/* 🔘 核心：原生直填可点击选项卡 (.tok) */
.choice-block .tok {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    margin: 7px 0 !important;
    padding: 9px 12px !important;
    background: rgba(220, 208, 185, 0.75) !important;
    border: 1px dashed #8a6d3b !important;
    border-radius: 5px !important;
    cursor: pointer !important;
    transition: all 0.2s cubic-bezier(0.2, 0.8, 0.2, 1) !important;
    box-shadow: 0 1px 3px rgba(50, 38, 24, 0.12) !important;
    user-select: none;
}

/* 悬浮反馈（亮金边框+微凸起） */
.choice-block .tok:hover {
    background: rgba(240, 232, 215, 0.95) !important;
    border-color: #6b5038 !important;
    border-style: solid !important;
    box-shadow: 0 3px 8px rgba(50, 38, 24, 0.25) !important;
    transform: translateY(-1.5px);
}

/* 点击下压反馈（真实机械按压感） */
.choice-block .tok:active {
    transform: translateY(1px) !important;
    box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.3) !important;
    background: #d8cbb0 !important;
}

/* 🎖️ 左侧勋位徽章（A/B/C/D/E） */
.choice-block .tok em {
    flex: none !important;
    width: 22px !important;
    height: 22px !important;
    line-height: 22px !important;
    text-align: center !important;
    border-radius: 4px !important;
    font-family: "Cinzel", "Playfair Display", Georgia, serif !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    font-style: normal !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4) !important;
}

/* 五色勋位体系 */
.choice-block .tok.main em { background: linear-gradient(135deg, #b8860b, #d4af37) !important; } /* A. 皇家金 */
.choice-block .tok.side em { background: linear-gradient(135deg, #8a1922, #c92a38) !important; } /* B. 铁血红 */
.choice-block .tok.soc em  { background: linear-gradient(135deg, #2b3a4a, #4a637d) !important; } /* C. 玄铁蓝 */
.choice-block .tok.run em  { background: linear-gradient(135deg, #6b3a5b, #9c528b) !important; } /* D. 蔷薇紫 */
.choice-block .tok.rare em { background: linear-gradient(135deg, #8a5a2b, #b87b3d) !important; } /* E. 古董珀 */

/* 核心文字：深焦黑墨水、纯正工整 */
.choice-block .tok p {
    margin: 0 !important;
    padding: 0 !important;
    font-family: "EB Garamond", "Noto Serif SC", Georgia, serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.55 !important;
    color: #1a120b !important;
    -webkit-text-fill-color: #1a120b !important;
    text-shadow: none !important;
    text-indent: 0 !important;
    text-align: left !important;
}

/* 底部提示 */
.choice-note {
    font-size: 11.5px !important;
    color: #6b553f !important;
    -webkit-text-fill-color: #6b553f !important;
    text-align: center !important;
    margin-top: 10px !important;
    font-style: italic !important;
}

/* ========== 10. 进度条 (神力/战线天平) ========== */
progress {
    -webkit-appearance: none;
    appearance: none;
    width: 120px;
    height: 12px;
    vertical-align: middle;
    margin: 0 6px;
    border: 1px solid #2b2118;
    background: #ded1b4;
    border-radius: 0;
}

progress::-webkit-progress-bar {
    background: #ded1b4;
}

progress::-webkit-progress-value {
    background: repeating-linear-gradient(45deg, #2b2118 0 3px, #4a3b2a 3px 6px);
}

progress::-moz-progress-bar {
    background: repeating-linear-gradient(45deg, #2b2118 0 3px, #4a3b2a 3px 6px);
}

/* ========== 11. 顶部导航栏 · 羊皮纸报头 ========== */
nav.sticky.top-0.w-full,
nav[class*="bg-sidebar"] {
    background: transparent !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    border: none !important;
    box-shadow: none !important;
}

header.flex.h-12.items-center.justify-between,
div:has(> #nav-left):has(> #nav-right) {
    position: relative;
    background-color: #efe6d0 !important;
    background-image:
        radial-gradient(ellipse at 10% 20%, rgba(120, 90, 50, 0.18) 0%, transparent 40%),
        radial-gradient(ellipse at 90% 80%, rgba(105, 78, 42, 0.15) 0%, transparent 42%),
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='f'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23f)' opacity='0.25'/%3E%3C/svg%3E") !important;
    background-blend-mode: multiply, multiply, overlay;
    border: none !important;
    border-top: 1px solid rgba(43, 33, 24, 0.5) !important;
    border-bottom: 3px double #2b2118 !important;
    box-shadow: 0 3px 8px rgba(50, 38, 24, 0.35) !important;
}

header.flex.h-12.items-center.justify-between::before,
div:has(> #nav-left):has(> #nav-right)::before {
    content: "❦ ✦ ❦";
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    font-size: 13px;
    letter-spacing: 10px;
    color: rgba(107, 89, 66, 0.55);
    pointer-events: none;
    z-index: 2;
}

header.flex.h-12.items-center.justify-between::after,
div:has(> #nav-left):has(> #nav-right)::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -8px;
    height: 8px;
    background: linear-gradient(180deg, rgba(50, 38, 24, 0.22) 0%, transparent 100%);
    pointer-events: none;
}

#nav-left, #nav-middle, #nav-right { position: relative; z-index: 3; }

#nav-left *, #nav-middle *, #nav-right * {
    color: #2b2118 !important;
}
#nav-left svg, #nav-middle svg, #nav-right svg {
    color: #4a3728 !important;
    stroke: currentColor !important;
    transition: all 0.2s ease;
}
#nav-left button, #nav-middle button, #nav-right button,
#nav-left a, #nav-right a {
    background: transparent !important;
    border-radius: 0 !important;
    transition: all 0.2s ease;
}
#nav-left button:hover, #nav-middle button:hover, #nav-right button:hover,
#nav-left a:hover, #nav-right a:hover {
    background: rgba(139, 115, 85, 0.18) !important;
    box-shadow: inset 0 0 0 1px #8b7355 !important;
}

/* ========== 12. 用户输入气泡 · 皇家海军作战指挥室 ========== */
.group.is-user > div[class*="group-["],
[class*="is-user"] [class*="rounded-lg"][class*="px-4"] {
    position: relative;
    color: #f0e2c4 !important;
    font-family: "EB Garamond", "Noto Serif SC", "Source Han Serif SC", Georgia, serif !important;
    line-height: 1.9 !important;
    letter-spacing: 0.03em;
    padding: 26px 28px 22px !important;
    background-color: #4a3420 !important;
    background-image:
        repeating-linear-gradient(93deg,
            rgba(212, 175, 100, 0.06) 0px,
            rgba(212, 175, 100, 0.00) 3px,
            rgba(120, 80, 40, 0.08) 6px,
            rgba(212, 175, 100, 0.05) 11px),
        repeating-linear-gradient(88deg,
            rgba(0, 0, 0, 0.12) 0px,
            rgba(0, 0, 0, 0.00) 14px,
            rgba(0, 0, 0, 0.10) 28px),
        linear-gradient(135deg, #4a3420 0%, #5c4226 35%, #3e2c1a 70%, #52391f 100%) !important;
    border-radius: 10px !important;
    border: 1px solid #8a6d3b !important;
    box-shadow:
        inset 0 0 0 3px rgba(26, 20, 12, 0.9),
        inset 0 0 0 4px #b08d4f,
        inset 0 0 40px rgba(0, 0, 0, 0.45),
        0 8px 24px rgba(0, 0, 0, 0.45),
        inset 0 1px 0 rgba(230, 190, 120, 0.25) !important;
}

.group.is-user > div[class*="group-["] *,
[class*="is-user"] [class*="rounded-lg"][class*="px-4"] * {
    color: #f0e2c4 !important;
}

.group.is-user > div[class*="group-["]::before,
[class*="is-user"] [class*="rounded-lg"][class*="px-4"]::before {
    content: "✠ ADMIRALTY · WAR ROOM";
    display: block;
    font-family: "Playfair Display", "Times New Roman", serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.35em;
    color: #d9b871;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.8);
    padding-bottom: 10px;
    margin-bottom: 14px;
    border-bottom: 1px solid rgba(176, 141, 79, 0.45);
}

.group.is-user > div[class*="group-["]::after,
[class*="is-user"] [class*="rounded-lg"][class*="px-4"]::after {
    content: "— BY ORDER OF THE ADMIRALTY —";
    display: block;
    font-family: "Playfair Display", "Times New Roman", serif;
    font-size: 10px;
    letter-spacing: 0.25em;
    color: rgba(217, 184, 113, 0.6);
    text-align: right;
    margin-top: 14px;
    padding-top: 8px;
    border-top: 1px solid rgba(176, 141, 79, 0.35);
}

/* ========== 13. 助手输出气泡 · 德意志第二帝国 · 铁血装甲 (已解除通配符误伤) ========== */
.group.is-assistant > div[class*="group-["],
[class*="is-assistant"] [class*="rounded-lg"][class*="px-4"] {
    position: relative;
    color: #d8dbe0;
    font-family: "EB Garamond", "Noto Serif SC", "Source Han Serif SC", Georgia, serif !important;
    line-height: 1.9 !important;
    letter-spacing: 0.03em;
    padding: 26px 28px 22px !important;
    background-color: #2e3238 !important;
    background-image:
        repeating-linear-gradient(0deg,
            rgba(255, 255, 255, 0.03) 0px,
            rgba(255, 255, 255, 0.00) 2px,
            rgba(0, 0, 0, 0.06) 4px,
            rgba(255, 255, 255, 0.02) 7px),
        repeating-linear-gradient(90deg,
            rgba(0, 0, 0, 0.00) 0px,
            rgba(0, 0, 0, 0.00) 118px,
            rgba(0, 0, 0, 0.28) 119px,
            rgba(120, 130, 140, 0.15) 120px),
        linear-gradient(150deg, #3a3f46 0%, #2b2f35 40%, #23262b 75%, #33383f 100%) !important;
    border-radius: 4px !important;
    border: 1px solid #14161a !important;
    box-shadow:
        inset 0 0 0 3px rgba(10, 11, 13, 0.9),
        inset 0 0 0 4px #6b7280,
        inset 0 0 0 5px rgba(10, 11, 13, 0.7),
        inset 0 0 45px rgba(0, 0, 0, 0.5),
        0 8px 24px rgba(0, 0, 0, 0.55),
        inset 0 1px 0 rgba(200, 210, 220, 0.15) !important;
}

.group.is-assistant > div[class*="group-["]::before,
[class*="is-assistant"] [class*="rounded-lg"][class*="px-4"]::before {
    content: "✠ DIVINE GRACE CONTINENT ✠";
    display: block;
    font-family: "Playfair Display", "Times New Roman", serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.35em;
    color: #aeb4bc;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.9), 0 0 6px rgba(180, 190, 200, 0.15);
    padding-bottom: 10px;
    margin-bottom: 14px;
    border-bottom: none;
    background:
        linear-gradient(90deg, #0d0e10 0 33.3%, #c8ccd2 33.3% 66.6%, #8a1f24 66.6% 100%)
        bottom / 100% 3px no-repeat;
}

.group.is-assistant > div[class*="group-["]::after,
[class*="is-assistant"] [class*="rounded-lg"][class*="px-4"]::after {
    content: "— MIT BLUT UND EISEN —";
    display: block;
    font-family: "Playfair Display", "Times New Roman", serif;
    font-size: 10px;
    letter-spacing: 0.3em;
    color: rgba(174, 180, 188, 0.55);
    text-align: right;
    margin-top: 14px;
    padding-top: 8px;
    border-top: 1px solid rgba(107, 114, 128, 0.4);
}

/* ========== 15. 皇家金箔装裱油画框 ========== */
.portrait-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin: 14px auto 8px auto;
    padding: 0;
    width: 100%;
}

.portrait-box {
    display: flex;
    flex-direction: column;
    align-items: center;
    outline: none !important;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
    user-select: none;
}

.portrait-gold-frame {
    position: relative;
    width: 135px;
    padding: 5px;
    background: linear-gradient(135deg, #d8b467 0%, #fff1b8 25%, #bf9546 60%, #8c672b 100%);
    box-shadow:
        0 6px 14px rgba(50, 38, 24, 0.35),
        inset 0 1px 1px rgba(255, 255, 255, 0.7),
        inset 0 -1px 2px rgba(60, 40, 15, 0.8);
    border-radius: 1px;
    transition: width 0.35s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.35s ease, padding 0.35s ease;
}

.portrait-gold-frame::before {
    content: "";
    position: absolute;
    inset: 2px;
    border: 1px solid rgba(80, 55, 20, 0.45);
    pointer-events: none;
}

.portrait-img-box {
    position: relative;
    width: 100%;
    aspect-ratio: 3 / 4;
    background: #2b2118;
    overflow: hidden;
    box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.65);
}

.portrait-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    filter: contrast(1.04) brightness(0.98);
}

.portrait-hint {
    font-family: "Playfair Display", "Noto Serif SC", serif;
    font-size: 11px;
    color: #8b7355;
    letter-spacing: 2px;
    margin-top: 6px;
    transition: color 0.2s ease;
}

.portrait-box:hover .portrait-hint {
    color: #3b2818;
}

.portrait-box:focus .portrait-gold-frame,
.portrait-box:focus-within .portrait-gold-frame {
    width: min(88vw, 320px);
    padding: 8px;
    box-shadow:
        0 16px 36px rgba(50, 38, 24, 0.55),
        inset 0 1px 2px rgba(255, 255, 255, 0.9),
        0 0 0 1px rgba(139, 115, 85, 0.5);
}

.portrait-box:focus .portrait-hint::after,
.portrait-box:focus-within .portrait-hint::after {
    content: " (点击空白收起)";
    color: #6b5942;
}

.portrait-name {
    font-family: "Playfair Display", "Noto Serif SC", "Source Han Serif SC", serif;
    font-size: 15px;
    font-weight: 900;
    letter-spacing: 4px;
    color: #2b2118 !important;
    margin-top: 6px;
    text-align: center;
    text-shadow: 0.5px 0.5px 0 rgba(139, 115, 85, 0.35);
}

/* ========== 16. 战地对白气泡与专属发色声纹 ========== */
.say {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin: 12px 0;
    padding: 0;
    width: 100%;
}

.say-avatar {
    position: relative;
    flex-shrink: 0;
    width: 38px;
    height: 38px;
    padding: 2px;
    background: linear-gradient(135deg, #d8b467 0%, #fff1b8 25%, #bf9546 60%, #8c672b 100%);
    box-shadow:
        0 3px 8px rgba(0, 0, 0, 0.45),
        inset 0 1px 1px rgba(255, 255, 255, 0.7);
    border-radius: 2px;
    margin-top: 2px;
}

.say-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    background: #1a1612;
}

.say-bubble {
    position: relative;
    flex-grow: 1;
    background: rgba(26, 29, 33, 0.85);
    border: 1px solid rgba(139, 115, 85, 0.45);
    border-left: 3px solid #d4af37;
    padding: 8px 14px 10px 14px;
    border-radius: 0 4px 4px 0;
    box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.5), 0 2px 6px rgba(0, 0, 0, 0.3);
}

.say-bubble::before {
    content: "";
    position: absolute;
    top: 12px;
    left: -7px;
    width: 0;
    height: 0;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-right: 7px solid #d4af37;
}

.say-speaker {
    display: block;
    font-family: "Playfair Display", "Noto Serif SC", serif;
    font-size: 11.5px;
    font-weight: 900;
    letter-spacing: 1.5px;
    color: #d4af37 !important;
    -webkit-text-fill-color: #d4af37 !important;
    margin-bottom: 3px;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.8);
}

.say-content {
    font-family: "EB Garamond", "Noto Serif SC", Georgia, serif !important;
    font-size: 16px !important;
    line-height: 1.65 !important;
    margin: 0 !important;
    text-indent: 0 !important;
    font-weight: 700 !important;
}

.say-content.say-gold { color: #f6c85f !important; -webkit-text-fill-color: #f6c85f !important; }
.say-content.say-blue { color: #60a5fa !important; -webkit-text-fill-color: #60a5fa !important; }
.say-content.say-silver { color: #f1f5f9 !important; -webkit-text-fill-color: #f1f5f9 !important; }
.say-content.say-red { color: #f87171 !important; -webkit-text-fill-color: #f87171 !important; }
.say-content.say-purple { color: #c084fc !important; -webkit-text-fill-color: #c084fc !important; }
.say-content.say-green { color: #4ade80 !important; -webkit-text-fill-color: #4ade80 !important; }
.say-content.say-pink { color: #f472b6 !important; -webkit-text-fill-color: #f472b6 !important; }

/* ========== 输入栏 · 欧洲皇家豪华风格 ========== */
#prompt-input {
    background: transparent !important;
    box-shadow: none !important;
    border: none !important;
}

#prompt-input [data-slot="input-group"] {
    background: linear-gradient(145deg, rgba(32, 9, 14, 0.92), rgba(14, 4, 7, 0.98)) !important;
    border: 1.5px solid transparent !important;
    border-image: linear-gradient(135deg, #fcedc5 0%, #d4af37 40%, #7a5813 70%, #fcedc5 100%) 1 !important;
    border-radius: 10px !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.75),
                0 0 14px rgba(212, 175, 55, 0.22),
                inset 0 0 18px rgba(0, 0, 0, 0.7) !important;
    backdrop-filter: blur(14px) !important;
    -webkit-backdrop-filter: blur(14px) !important;
    transition: all 0.35s cubic-bezier(0.25, 1, 0.5, 1) !important;
}

#prompt-input [data-slot="input-group"]:focus-within {
    border-image: linear-gradient(135deg, #ffffff 0%, #ffd700 35%, #b8860b 70%, #ffffff 100%) 1 !important;
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.9),
                0 0 24px rgba(255, 215, 0, 0.45),
                inset 0 0 12px rgba(212, 175, 55, 0.15) !important;
}

#prompt-input textarea {
    color: #f7eedb !important;
    -webkit-text-fill-color: #f7eedb !important;
    font-family: "Cinzel", "Georgia", "Noto Serif SC", serif !important;
    font-size: 15px !important;
    line-height: 1.6 !important;
    letter-spacing: 0.4px !important;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.9) !important;
}

#prompt-input textarea::placeholder {
    color: #9c8362 !important;
    -webkit-text-fill-color: #9c8362 !important;
    font-style: italic !important;
    font-family: "Georgia", "Noto Serif SC", serif !important;
    opacity: 0.75 !important;
}

#prompt-input button,
#prompt-input [role="button"],
#prompt-input a {
    background: linear-gradient(145deg, rgba(50, 14, 20, 0.85), rgba(22, 6, 10, 0.95)) !important;
    border: 1px solid rgba(212, 175, 55, 0.55) !important;
    border-radius: 6px !important;
    color: #e6c670 !important;
    -webkit-text-fill-color: #e6c670 !important;
    box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.6), 0 2px 5px rgba(0, 0, 0, 0.4) !important;
    font-family: "Cinzel", "Georgia", "Noto Serif SC", serif !important;
    transition: all 0.25s cubic-bezier(0.2, 0.8, 0.2, 1) !important;
}

#prompt-input button:hover,
#prompt-input [role="button"]:hover {
    background: linear-gradient(145deg, rgba(80, 22, 32, 0.95), rgba(35, 10, 16, 0.98)) !important;
    border-color: #ffd700 !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    box-shadow: 0 0 12px rgba(255, 215, 0, 0.5), inset 0 0 8px rgba(212, 175, 55, 0.3) !important;
    transform: translateY(-1px);
}

#prompt-input svg {
    stroke: #d4af37 !important;
    filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.8));
    transition: all 0.25s ease !important;
}

#prompt-input button:hover svg,
#prompt-input [role="button"]:hover svg {
    stroke: #ffffff !important;
    filter: drop-shadow(0 0 6px rgba(255, 215, 0, 0.9));
}

#prompt-input button[type="submit"],
#prompt-input button:last-child {
    background: linear-gradient(135deg, #8a1922 0%, #46090e 100%) !important;
    border: 1px solid #ffd700 !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.6), 0 0 10px rgba(212, 175, 55, 0.4) !important;
}

#prompt-input button[type="submit"]:hover,
#prompt-input button:last-child:hover {
    background: linear-gradient(135deg, #b3222e 0%, #630c14 100%) !important;
    border-color: #ffffff !important;
    box-shadow: 0 4px 18px rgba(0, 0, 0, 0.8), 0 0 20px rgba(255, 215, 0, 0.8) !important;
}

/* ========== 17. 终焉降世 · 讣告碑铭 ========== */
.requiem-overlay {
    position: relative;
    margin: 20px 0;
    padding: 36px 24px;
    background-color: #1a1510;
    background-image:
        radial-gradient(ellipse at 50% 60%, rgba(72, 120, 72, 0.15) 0%, transparent 55%),
        radial-gradient(ellipse at 5% 5%, rgba(0, 0, 0, 0.9) 0%, transparent 40%),
        radial-gradient(ellipse at 95% 95%, rgba(0, 0, 0, 0.9) 0%, transparent 40%),
        radial-gradient(ellipse at 95% 5%, rgba(0, 0, 0, 0.85) 0%, transparent 35%),
        radial-gradient(ellipse at 5% 95%, rgba(0, 0, 0, 0.85) 0%, transparent 35%),
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='f'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23f)' opacity='0.12'/%3E%3C/svg%3E");
    background-blend-mode: screen, multiply, multiply, multiply, multiply, overlay;
    text-align: center;
    -webkit-mask-image:
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='500' height='500' preserveAspectRatio='none'%3E%3Cfilter id='t'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.018 0.05' numOctaves='5' seed='77' result='n'/%3E%3CfeDisplacementMap in='SourceGraphic' in2='n' scale='26' xChannelSelector='R' yChannelSelector='G'/%3E%3C/filter%3E%3Crect x='7' y='7' width='486' height='486' fill='%23fff' filter='url(%23t)'/%3E%3C/svg%3E");
    mask-image:
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='500' height='500' preserveAspectRatio='none'%3E%3Cfilter id='t'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.018 0.05' numOctaves='5' seed='77' result='n'/%3E%3CfeDisplacementMap in='SourceGraphic' in2='n' scale='26' xChannelSelector='R' yChannelSelector='G'/%3E%3C/filter%3E%3Crect x='7' y='7' width='486' height='486' fill='%23fff' filter='url(%23t)'/%3E%3C/svg%3E");
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    filter: drop-shadow(0 4px 16px rgba(72, 120, 72, 0.2)) drop-shadow(0 2px 6px rgba(0, 0, 0, 0.6));
}

.requiem-box {
    max-width: 460px;
    margin: 0 auto;
    position: relative;
}

.requiem-title {
    font-family: "Playfair Display", "Noto Serif SC", "Source Han Serif SC", serif !important;
    font-size: 1.6em;
    font-weight: 900;
    color: #c9a959 !important;
    -webkit-text-fill-color: #c9a959 !important;
    letter-spacing: 0.3em;
    text-transform: uppercase;
    margin-bottom: 4px;
    text-shadow: 0 0 12px rgba(201, 169, 89, 0.4), 0 2px 4px rgba(0, 0, 0, 0.9);
}

.requiem-date {
    font-family: "EB Garamond", "Noto Serif SC", Georgia, serif;
    font-size: 0.85em;
    color: #6b5942 !important;
    -webkit-text-fill-color: #6b5942 !important;
    letter-spacing: 0.1em;
    margin-bottom: 14px;
}

.requiem-line {
    width: 65%;
    height: 0;
    border: none;
    border-top: 1px solid rgba(139, 115, 85, 0.5);
    border-bottom: 1px solid rgba(139, 115, 85, 0.25);
    margin: 16px auto;
}

.requiem-name {
    font-family: "Playfair Display", "Noto Serif SC", "Source Han Serif SC", serif !important;
    font-size: 1.35em;
    font-weight: 900;
    color: #e8d5b0 !important;
    -webkit-text-fill-color: #e8d5b0 !important;
    letter-spacing: 0.15em;
    margin-bottom: 4px;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.8);
}

.requiem-epitaph {
    font-family: "EB Garamond", "Noto Serif SC", Georgia, serif;
    font-size: 0.9em;
    color: #a89070 !important;
    -webkit-text-fill-color: #a89070 !important;
    letter-spacing: 0.08em;
    margin-bottom: 4px;
}

.requiem-born {
    font-family: "EB Garamond", "Noto Serif SC", Georgia, serif;
    font-size: 0.82em;
    color: #6b6050 !important;
    -webkit-text-fill-color: #6b6050 !important;
    margin-bottom: 2px;
}

.requiem-died {
    font-family: "EB Garamond", "Noto Serif SC", Georgia, serif;
    font-size: 0.82em;
    color: #8a1f24 !important;
    -webkit-text-fill-color: #8a1f24 !important;
    margin-bottom: 14px;
    text-shadow: 0 0 6px rgba(138, 31, 36, 0.3);
}

.requiem-summary {
    font-family: "EB Garamond", "Noto Serif SC", Georgia, serif !important;
    font-size: 0.88em;
    color: #b8aa94 !important;
    -webkit-text-fill-color: #b8aa94 !important;
    line-height: 1.9;
    text-align: left;
    padding: 0 12px;
    font-style: italic;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
}

.requiem-forest {
    font-family: "EB Garamond", "Noto Serif SC", Georgia, serif;
    font-size: 0.82em;
    color: #5a8a5a !important;
    -webkit-text-fill-color: #5a8a5a !important;
    line-height: 1.7;
    margin-top: 12px;
    text-shadow: 0 0 10px rgba(72, 120, 72, 0.35), 0 1px 2px rgba(0, 0, 0, 0.8);
}

.requiem-box::before {
    content: "❦ ✠ ❦";
    display: block;
    font-size: 14px;
    letter-spacing: 8px;
    color: rgba(139, 115, 85, 0.45);
    margin-bottom: 12px;
}

.requiem-box::after {
    content: "— REQUIESCAT IN PACE —";
    display: block;
    font-family: "Playfair Display", "Times New Roman", serif;
    font-size: 10px;
    letter-spacing: 0.3em;
    color: rgba(139, 115, 85, 0.35);
    margin-top: 16px;
}

/* ========== 18. 人物关系与镌刻台 ========== */
details .sub-panel {
    margin: 8px 14px;
    background: rgba(139, 115, 85, 0.05);
    border: none;
    border-left: 2px solid #8b7355;
}

details .sub-panel,
details .sub-panel * {
    -webkit-mask-image: none !important;
    mask-image: none !important;
    filter: none !important;
}

details .sub-summary {
    background: transparent !important;
    color: #2b2118 !important;
    -webkit-text-fill-color: #2b2118 !important;
    font-family: "Playfair Display", "Noto Serif SC", "Source Han Serif SC", serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    letter-spacing: 3px !important;
    padding: 10px 14px 8px !important;
    border-bottom: 1px solid rgba(43, 33, 24, 0.3) !important;
    border-top: none !important;
    cursor: pointer;
    list-style: none;
    text-align: left;
}

details .sub-summary::-webkit-details-marker {
    display: none;
}

details .sub-summary::before {
    content: "▸ ";
    color: #8b7355;
    font-size: 13px;
}

details[open] > .sub-summary::before {
    content: "▾ ";
}

details .sub-summary:hover {
    background: rgba(139, 115, 85, 0.12) !important;
}

.relation-grid {
    padding: 8px 14px;
}

.relation-card {
    background: rgba(139, 115, 85, 0.08);
    border-left: 3px solid #6b5942;
    margin: 6px 0;
    padding: 0;
    transition: all 0.2s ease;
}

.relation-card:hover {
    background: rgba(139, 115, 85, 0.15);
    border-left-color: #2b2118;
}

.relation-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 6px 10px;
    border-bottom: 1px dotted rgba(43, 33, 24, 0.2);
}

.relation-name {
    font-family: "Playfair Display", "Noto Serif SC", serif;
    font-size: 13.5px;
    font-weight: 700;
    color: #2b2118 !important;
    -webkit-text-fill-color: #2b2118 !important;
    letter-spacing: 1px;
}

.relation-tag {
    font-family: "EB Garamond", "Noto Serif SC", serif;
    font-size: 11px;
    color: #efe6d0 !important;
    -webkit-text-fill-color: #efe6d0 !important;
    background: #6b5942;
    padding: 1px 8px;
    letter-spacing: 1px;
}

.relation-body {
    padding: 6px 10px;
    font-size: 12.5px;
    line-height: 1.8;
    color: #3b2f1e !important;
    -webkit-text-fill-color: #3b2f1e !important;
}

.engrave-intro {
    padding: 8px 14px 4px;
}

.engrave-desc {
    font-family: "EB Garamond", "Noto Serif SC", serif;
    font-size: 13px;
    color: #4a3f30 !important;
    -webkit-text-fill-color: #4a3f30 !important;
    line-height: 1.8;
    text-indent: 2em;
    margin: 4px 0;
    font-style: italic;
}

.engrave-hint {
    font-size: 12px;
    color: #8b7355 !important;
    -webkit-text-fill-color: #8b7355 !important;
    line-height: 1.7;
    margin: 2px 0;
    padding-left: 0.5em;
}

.engrave-list {
    padding: 4px 14px 8px;
}

.engrave-slot {
    position: relative;
    background: rgba(139, 115, 85, 0.07);
    border: 1px solid rgba(107, 89, 66, 0.3);
    border-left: 3px solid #c9a96e;
    margin: 8px 0;
    padding: 0;
    transition: all 0.2s ease;
}

.engrave-slot:hover {
    border-left-color: #d4af37;
    box-shadow: 0 2px 8px rgba(201, 169, 110, 0.15);
}

.engrave-slot-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 8px 10px;
    border-bottom: 1px solid rgba(107, 89, 66, 0.25);
    background: rgba(201, 169, 110, 0.08);
}

.engrave-slot-name {
    font-family: "Playfair Display", "Noto Serif SC", serif;
    font-size: 14px;
    font-weight: 900;
    color: #2b2118 !important;
    -webkit-text-fill-color: #2b2118 !important;
    letter-spacing: 2px;
}

.engrave-slot-title {
    font-family: "EB Garamond", "Noto Serif SC", serif;
    font-size: 11px;
    color: #6b5942 !important;
    -webkit-text-fill-color: #6b5942 !important;
    letter-spacing: 0.5px;
}

.engrave-slot-body {
    padding: 8px 10px;
    font-size: 12.5px;
    line-height: 1.85;
    color: #3b2f1e !important;
    -webkit-text-fill-color: #3b2f1e !important;
}

.engrave-quip {
    display: inline;
    color: #8b7355 !important;
    -webkit-text-fill-color: #8b7355 !important;
    font-style: italic;
    font-size: 12px;
}

.engrave-empty {
    text-align: center;
    padding: 16px 10px;
    color: #8b7355 !important;
    -webkit-text-fill-color: #8b7355 !important;
    font-family: "EB Garamond", "Noto Serif SC", serif;
    font-size: 12.5px;
    font-style: italic;
    letter-spacing: 1px;
    border: 1px dashed rgba(139, 115, 85, 0.3);
    margin: 8px 0;
}
/* ========== 终极根治：代码块免疫撕裂毛边遮罩 ========== */
details pre,
details pre *,
details div:has(> pre),
details div[class*="code-block"] {
    -webkit-mask-image: none !important;
    mask-image: none !important;
    -webkit-mask: none !important;
    mask: none !important;
    filter: none !important;
}

/* ========== 帝国机要大档案 · 极简纯净深黑版 ========== */
details pre {
    background: #14171d !important;
    border: 1px solid #8a6d3b !important;
    border-radius: 8px !important;
    margin: 10px 14px !important;
    padding: 0 !important;
    overflow: hidden !important;
}

details pre > div:first-child {
    background: #1b1f26 !important;
    border-bottom: 1px solid rgba(138, 109, 59, 0.3) !important;
    padding: 6px 12px !important;
}

details pre > div:first-child span {
    color: #d4af37 !important;
    -webkit-text-fill-color: #d4af37 !important;
    font-size: 12px !important;
    letter-spacing: 1px !important;
}

details pre button {
    background: transparent !important;
    border: 1px solid rgba(138, 109, 59, 0.4) !important;
    border-radius: 5px !important;
    color: #d4af37 !important;
    padding: 3px 5px !important;
}

/* 强制剥除平台内部白底 */
details pre *,
details pre div,
details pre code {
    background: #14171d !important;
    background-color: #14171d !important;
}

details pre code {
    display: block !important;
    padding: 14px 16px !important;
    color: #f7eedb !important;
    -webkit-text-fill-color: #f7eedb !important;
    font-family: Consolas, "Courier New", monospace !important;
    font-size: 13px !important;
    line-height: 1.75 !important;
    white-space: pre-wrap !important;
    word-break: break-word !important;
}

details pre code strong {
    color: #f6c85f !important;
    -webkit-text-fill-color: #f6c85f !important;
}
/* ========== 22. 帝国神恩编队 · 实时战术遥测面板 (1876军武重工版) ========== */

/* 1. 总折叠面板：普鲁士玄铁底板 + 黄铜拉丝包角 */
.squad-panel {
    background: linear-gradient(180deg, #161a22 0%, #0e1015 100%) !important;
    border: 1.5px solid #8a6d3b !important;
    border-radius: 8px !important;
    margin: 10px 14px 14px 14px !important;
    padding: 12px 14px !important;
    box-shadow: 
        0 6px 20px rgba(0, 0, 0, 0.6),
        inset 0 0 20px rgba(0, 0, 0, 0.8),
        inset 0 1px 0 rgba(255, 235, 170, 0.15) !important;
    overflow: hidden !important;
}

/* 2. 编队总览状态条 (番号 / 阵型 / 战地电报) */
.squad-meta {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    background: linear-gradient(180deg, #241e17 0%, #171410 100%) !important;
    border: 1px solid rgba(138, 109, 59, 0.5) !important;
    border-radius: 4px !important;
    padding: 6px 12px !important;
    margin-bottom: 12px !important;
    box-shadow: inset 0 0 8px rgba(0, 0, 0, 0.8) !important;
}

.squad-meta span {
    font-family: "Cinzel", "Noto Serif SC", serif !important;
    font-size: 11.5px !important;
    font-weight: 700 !important;
    color: #e5c07b !important;
    -webkit-text-fill-color: #e5c07b !important;
    letter-spacing: 0.8px !important;
    display: inline-flex !important;
    align-items: center !important;
}

/* 3. 队员卡片列表容器 */
.squad-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
}

/* 单个队员卡片：微凸起重装仪表舱 */
.member-card {
    background: linear-gradient(145deg, #1b2029 0%, #12141a 100%) !important;
    border: 1px solid rgba(138, 109, 59, 0.4) !important;
    border-radius: 6px !important;
    padding: 12px 14px !important;
    box-shadow: 
        0 3px 10px rgba(0, 0, 0, 0.5),
        inset 0 0 14px rgba(0, 0, 0, 0.7) !important;
    transition: all 0.25s ease !important;
    position: relative !important;
}

.member-card:hover {
    border-color: #d4af37 !important;
    box-shadow: 
        0 5px 16px rgba(0, 0, 0, 0.65),
        0 0 10px rgba(212, 175, 55, 0.2) !important;
    transform: translateY(-1px);
}

/* 4. 队员卡片头部 (阶位徽章 + 姓名 + 战术职责 + 临战状态) */
.member-head {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
    padding-bottom: 8px !important;
    border-bottom: 1px solid rgba(138, 109, 59, 0.3) !important;
    margin-bottom: 10px !important;
}

/* 阶位徽章 */
.rank-badge {
    font-family: "Cinzel", "Playfair Display", serif !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    padding: 2px 7px !important;
    border-radius: 3px !important;
    letter-spacing: 1px !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.6) !important;
    display: inline-flex !important;
    align-items: center !important;
}

.rank-first {
    background: linear-gradient(135deg, #8a1922, #b82330) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    border: 1px solid #ff7b86 !important;
    text-shadow: 0 0 6px rgba(255, 123, 134, 0.6);
}

.rank-second {
    background: linear-gradient(135deg, #b8860b, #d4af37) !important;
    color: #120e08 !important;
    -webkit-text-fill-color: #120e08 !important;
    border: 1px solid #ffe699 !important;
}

.rank-commoner {
    background: linear-gradient(135deg, #2b3545, #475569) !important;
    color: #f7eedb !important;
    -webkit-text-fill-color: #f7eedb !important;
    border: 1px solid #8fa0bc !important;
}

/* 队员姓名 */
.member-name {
    font-family: "Playfair Display", "Noto Serif SC", serif !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    letter-spacing: 1.5px !important;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.9) !important;
}

/* 战术职责标签 */
.member-role {
    font-size: 11px !important;
    color: #d4af37 !important;
    -webkit-text-fill-color: #d4af37 !important;
    background: rgba(212, 175, 55, 0.12) !important;
    border: 1px solid rgba(212, 175, 55, 0.35) !important;
    border-radius: 3px !important;
    padding: 1.5px 8px !important;
    margin-left: auto !important;
    font-weight: 600 !important;
}

/* 临战状态胶囊 */
.member-status {
    font-size: 10.5px !important;
    padding: 1.5px 8px !important;
    border-radius: 99px !important;
    font-weight: bold !important;
    letter-spacing: 0.5px !important;
}
.status-ok { 
    background: rgba(63, 220, 140, 0.15) !important; 
    color: #3fdc8c !important; 
    -webkit-text-fill-color: #3fdc8c !important;
    border: 1px solid rgba(63, 220, 140, 0.4) !important; 
}
.status-warn { 
    background: rgba(255, 179, 71, 0.18) !important; 
    color: #ffb347 !important; 
    -webkit-text-fill-color: #ffb347 !important;
    border: 1px solid rgba(255, 179, 71, 0.5) !important; 
}
.status-danger { 
    background: rgba(255, 77, 94, 0.22) !important; 
    color: #ff4d5e !important; 
    -webkit-text-fill-color: #ff4d5e !important;
    border: 1px solid rgba(255, 77, 94, 0.6) !important; 
    animation: saro-alarm 1.2s infinite !important; 
}

/* 5. 遥测仪表槽组 (神力槽 + 护盾槽) */
.gauge-group {
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
    margin: 8px 0 10px 0 !important;
    background: rgba(0, 0, 0, 0.35) !important;
    border: 1px solid rgba(138, 109, 59, 0.25) !important;
    padding: 8px 10px !important;
    border-radius: 4px !important;
}

.gauge-row {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    font-size: 11.5px !important;
}

.gauge-label {
    flex: none !important;
    width: 72px !important;
    color: #9ca3af !important;
    -webkit-text-fill-color: #9ca3af !important;
    font-family: "Noto Serif SC", serif !important;
    font-weight: 600 !important;
}

.gauge-bar {
    flex: 1 !important;
    height: 9px !important;
    background: #0a0c10 !important;
    border-radius: 99px !important;
    border: 1px solid #2d333f !important;
    position: relative !important;
    overflow: hidden !important;
    box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.9) !important;
}

.gauge-fill {
    height: 100% !important;
    width: calc(var(--v) * 1%) !important;
    border-radius: 99px !important;
    transition: width 0.4s cubic-bezier(0.2, 0.8, 0.2, 1) !important;
}

/* 神力金色辉光槽 */
.fill-power { 
    background: linear-gradient(90deg, #b8860b 0%, #ffd700 100%) !important; 
    box-shadow: 0 0 8px rgba(255, 215, 0, 0.7) !important; 
}

/* 护盾天幕湛蓝辉光槽 */
.fill-shield { 
    background: linear-gradient(90deg, #2563eb 0%, #60a5fa 100%) !important; 
    box-shadow: 0 0 8px rgba(96, 165, 250, 0.7) !important; 
}

.gauge-val {
    flex: none !important;
    font-family: Consolas, "Courier New", monospace !important;
    font-size: 11.5px !important;
    color: #f7eedb !important;
    -webkit-text-fill-color: #f7eedb !important;
    min-width: 105px !important;
    text-align: right !important;
    font-weight: 700 !important;
}

/* 6. 战术装备与战位四列排版 */
.member-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 4px 14px !important;
    margin: 8px 0 !important;
}

@media (max-width: 640px) {
    .member-grid { grid-template-columns: 1fr !important; }
}

.m-row {
    font-size: 12px !important;
    line-height: 1.65 !important;
    color: #d1d5db !important;
    -webkit-text-fill-color: #d1d5db !important;
    margin: 0 !important;
    text-indent: 0 !important;
}

.m-row i {
    font-style: normal !important;
    color: #d4af37 !important;
    -webkit-text-fill-color: #d4af37 !important;
    font-weight: bold !important;
    margin-right: 4px !important;
}
.m-row i::after { content: "：" !important; color: #8a6d3b !important; }

/* 7. 羁绊四维动态胶囊 (默契 / 信任 / 服从 / 好感) */
.member-card .rel-row {
    display: flex !important;
    gap: 6px !important;
    margin: 10px 0 8px 0 !important;
    flex-wrap: wrap !important;
}

.member-card .rel-chip {
    flex: 1 !important;
    min-width: 60px !important;
    text-align: center !important;
    padding: 3px 6px !important;
    background: rgba(10, 13, 18, 0.85) !important;
    border: 1px solid rgba(138, 109, 59, 0.35) !important;
    border-radius: 4px !important;
    font-size: 11px !important;
    position: relative !important;
    overflow: hidden !important;
    box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.8) !important;
}

.member-card .rel-chip::before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    bottom: 0 !important;
    width: calc(var(--v) * 1%) !important;
    background: linear-gradient(90deg, rgba(212, 175, 55, 0.2), rgba(212, 175, 55, 0.45)) !important;
}

.member-card .rel-chip em {
    display: block !important;
    font-style: normal !important;
    color: #9ca3af !important;
    -webkit-text-fill-color: #9ca3af !important;
    font-size: 9.5px !important;
    position: relative !important;
    z-index: 1 !important;
    letter-spacing: 0.5px !important;
}

.member-card .rel-chip b {
    color: #ffd700 !important;
    -webkit-text-fill-color: #ffd700 !important;
    position: relative !important;
    z-index: 1 !important;
    font-family: Consolas, monospace !important;
    font-size: 11.5px !important;
}

/* 8. 战地无线电通话气泡 (发报机微光) */
.member-radio {
    margin: 8px 0 0 0 !important;
    padding: 7px 12px !important;
    background: rgba(15, 23, 42, 0.7) !important;
    border-left: 3px solid #3b82f6 !important;
    border-radius: 0 5px 5px 0 !important;
    font-size: 12px !important;
    line-height: 1.55 !important;
    color: #bfdbfe !important;
    -webkit-text-fill-color: #bfdbfe !important;
    font-style: italic !important;
    text-indent: 0 !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3) !important;
}

.radio-tag {
    font-style: normal !important;
    font-weight: bold !important;
    color: #60a5fa !important;
    -webkit-text-fill-color: #60a5fa !important;
    margin-right: 6px !important;
}

/* 9. 纯净兜底：空小队自动隐藏 */
details:has(.squad-panel:empty),
details:has(.squad-list:empty) {
    display: none !important;
}
/* ========== 23. 帝国参谋本部 · 总控机要折叠匣 (.war-cabinet) ========== */

.war-cabinet {
    background: linear-gradient(160deg, #1a1d24 0%, #0d0e11 100%) !important;
    border: 2px solid #8a6d3b !important;
    border-radius: 6px !important;
    margin: 16px 0 !important;
    padding: 0 !important;
    box-shadow: 
        0 6px 20px rgba(0, 0, 0, 0.7),
        inset 0 0 20px rgba(0, 0, 0, 0.6),
        inset 0 1px 0 rgba(255, 235, 170, 0.15) !important;
    overflow: visible !important;
}

.war-cabinet,
.war-cabinet * {
    -webkit-mask-image: none !important;
    mask-image: none !important;
}

.war-cabinet > .cabinet-bar {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: linear-gradient(180deg, #1e2128 0%, #14171a 100%) !important;
    color: #e5c07b !important;
    -webkit-text-fill-color: #e5c07b !important;
    font-family: "Cinzel", "Playfair Display", "Noto Serif SC", serif !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    letter-spacing: 2px !important;
    padding: 14px 16px !important;
    cursor: pointer !important;
    border-bottom: 2px solid #8a6d3b !important;
    text-shadow: 0 0 8px rgba(212, 175, 55, 0.5), 0 1px 3px rgba(0, 0, 0, 0.9) !important;
    list-style: none !important;
    transition: all 0.25s ease !important;
}

.war-cabinet > .cabinet-bar::-webkit-details-marker {
    display: none !important;
}

.war-cabinet > .cabinet-bar:hover {
    background: linear-gradient(180deg, #252930 0%, #1a1d22 100%) !important;
    border-bottom-color: #ffd700 !important;
    text-shadow: 0 0 14px rgba(255, 215, 0, 0.7), 0 1px 3px rgba(0, 0, 0, 0.9) !important;
}

.war-cabinet[open] > .cabinet-bar {
    border-bottom: 2px solid #ffd700 !important;
}

.war-cabinet > details {
    margin: 6px 10px !important;
}

/* ========== 23. 帝国通讯 · 信件与电报 (深色正文适配版) ========== */

/* ============ 一、信件 · 烛光下的羊皮纸手书 ============ */

.letter-block {
    position: relative;
    background: linear-gradient(175deg, #2a2318 0%, #1e1a12 100%);
    border: 1.5px solid #8a6d3b;
    border-radius: 4px;
    margin: 16px 4px;
    padding: 20px 20px 18px 20px;
    box-shadow:
        0 6px 20px rgba(0, 0, 0, 0.5),
        inset 0 0 30px rgba(0, 0, 0, 0.4),
        inset 0 1px 0 rgba(255, 235, 170, 0.12);
}

.letter-seal {
    display: inline-block;
    background: linear-gradient(135deg, #8a1f24, #b82833);
    color: #ffeedd !important;
    -webkit-text-fill-color: #ffeedd !important;
    font-family: "Cinzel", "Playfair Display", serif;
    font-size: 10.5px;
    font-weight: 900;
    letter-spacing: 1.5px;
    padding: 3px 12px;
    border-radius: 3px;
    box-shadow: 0 2px 6px rgba(138, 31, 36, 0.6);
    margin-bottom: 12px;
}

.letter-to {
    font-family: "Noto Serif SC", "EB Garamond", Georgia, serif;
    font-size: 14px;
    font-weight: 700;
    color: #e5c07b !important;
    -webkit-text-fill-color: #e5c07b !important;
    margin-bottom: 10px;
    padding-bottom: 8px;
    border-bottom: 1px dashed rgba(138, 109, 59, 0.4);
}

.letter-body {
    font-family: "Kaiti SC", "STKaiti", "楷体", "Noto Serif SC", Georgia, serif;
    font-size: 15px;
    font-style: normal;
    line-height: 2;
    color: #f7eedb !important;
    -webkit-text-fill-color: #f7eedb !important;
    text-align: justify;
    margin-bottom: 14px;
}

.letter-sign {
    font-family: "Noto Serif SC", "EB Garamond", serif;
    font-size: 13px;
    color: #d4af37 !important;
    -webkit-text-fill-color: #d4af37 !important;
    text-align: right;
    line-height: 1.8;
    padding-top: 10px;
    border-top: 1px solid rgba(138, 109, 59, 0.35);
    font-style: italic;
}

/* ============ 二、电报 · 帝国莫尔斯电报纸条 ============ */

.telegram-block {
    position: relative;
    background: linear-gradient(180deg, #1e1b16 0%, #161310 100%);
    border: 1.5px solid #8a6d3b;
    border-left: 4px solid #d4af37;
    border-radius: 3px;
    margin: 16px 4px;
    padding: 0;
    box-shadow:
        0 4px 14px rgba(0, 0, 0, 0.5),
        inset 0 0 20px rgba(0, 0, 0, 0.5);
    overflow: hidden;
}

.telegram-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 6px;
    background: linear-gradient(180deg, #2d2820 0%, #1e1a14 100%);
    padding: 6px 14px;
    border-bottom: 1px solid rgba(138, 109, 59, 0.5);
}

.tg-label {
    font-family: "Cinzel", "Playfair Display", serif;
    font-size: 12px;
    font-weight: 900;
    color: #ffd700 !important;
    -webkit-text-fill-color: #ffd700 !important;
    letter-spacing: 2px;
}

.tg-id {
    font-family: Consolas, "Courier New", monospace;
    font-size: 11px;
    color: #c4a56e !important;
    -webkit-text-fill-color: #c4a56e !important;
    letter-spacing: 1px;
}

.tg-class {
    font-size: 10px;
    font-weight: bold;
    padding: 1px 8px;
    border-radius: 2px;
    letter-spacing: 1px;
}

.tg-class[data-level="普通"] { background: rgba(63, 220, 140, 0.2); color: #3fdc8c !important; -webkit-text-fill-color: #3fdc8c !important; border: 1px solid rgba(63, 220, 140, 0.4); }
.tg-class[data-level="机密"] { background: rgba(255, 179, 71, 0.2); color: #ffb347 !important; -webkit-text-fill-color: #ffb347 !important; border: 1px solid rgba(255, 179, 71, 0.4); }
.tg-class[data-level="绝密"] { background: rgba(255, 77, 94, 0.25); color: #ff4d5e !important; -webkit-text-fill-color: #ff4d5e !important; border: 1px solid rgba(255, 77, 94, 0.5); }

.telegram-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 16px;
    padding: 6px 14px;
    border-bottom: 1px dashed rgba(138, 109, 59, 0.3);
    font-family: Consolas, "Courier New", monospace;
    font-size: 11px;
    color: #a09580 !important;
    -webkit-text-fill-color: #a09580 !important;
}

.telegram-body {
    font-family: Consolas, "Courier New", monospace;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.9;
    color: #f7eedb !important;
    -webkit-text-fill-color: #f7eedb !important;
    padding: 14px 18px;
    letter-spacing: 1.5px;
}

.telegram-end {
    font-family: Consolas, "Courier New", monospace;
    font-size: 12px;
    font-weight: 900;
    color: #8a6d3b !important;
    -webkit-text-fill-color: #8a6d3b !important;
    text-align: center;
    letter-spacing: 4px;
    padding: 8px 14px;
    border-top: 2px dashed rgba(138, 109, 59, 0.4);
}