
    body {
      background-color: #08080a;
      color: #e5dec9;
      background-image:
        radial-gradient(circle at 18% 12%, rgba(185, 28, 28, 0.14) 0%, transparent 42%),
        radial-gradient(circle at 82% 78%, rgba(153, 27, 27, 0.11) 0%, transparent 48%),
        repeating-linear-gradient(0deg, rgba(255,255,255,0.012) 0px, rgba(255,255,255,0.012) 1px, transparent 1px, transparent 3px);
      overflow-x: hidden;
    }
    .ink-card {
      background: linear-gradient(145deg, rgba(22, 20, 24, 0.94), rgba(12, 11, 14, 0.97));
      border: 1px solid rgba(214, 203, 185, 0.14);
      box-shadow: 0 12px 32px -8px rgba(0, 0, 0, 0.78), inset 0 1px 0 rgba(255, 255, 255, 0.05);
    }
    .ink-card-crimson {
      background: linear-gradient(145deg, rgba(32, 14, 18, 0.92), rgba(14, 11, 14, 0.97));
      border: 1px solid rgba(220, 38, 38, 0.38);
      box-shadow: 0 14px 36px -8px rgba(185, 28, 28, 0.25);
    }
    .seal-stamp {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      border: 2px solid #dc2626;
      color: #ef4444;
      background: rgba(153, 27, 27, 0.18);
      font-family: 'Noto Serif SC', serif;
      font-weight: 900;
      letter-spacing: 0.08em;
      box-shadow: inset 0 0 8px rgba(220, 38, 38, 0.35);
      transform: rotate(-3deg);
    }
    .blade-slash-btn {
      position: relative;
      overflow: hidden;
      background: linear-gradient(135deg, #991b1b 0%, #dc2626 55%, #7f1d1d 100%);
      transition: all 0.25s ease;
    }
    .blade-slash-btn:hover {
      transform: translateY(-1px);
      box-shadow: 0 0 24px rgba(220, 38, 38, 0.55);
    }
    .scroll-parchment-border {
      border-top: 2px solid rgba(217, 119, 6, 0.45);
      border-bottom: 2px solid rgba(217, 119, 6, 0.45);
    }
    .cn-helper {
      display: none;
    }
    body.show-cn .cn-helper {
      display: block;
    }
    body.show-cn span.cn-helper-inline {
      display: inline;
    }
    span.cn-helper-inline {
      display: none;
    }
    /* Custom scrollbar */
    ::-webkit-scrollbar { width: 8px; height: 8px; }
    ::-webkit-scrollbar-track { background: #09090b; }
    ::-webkit-scrollbar-thumb { background: #3f3a36; border-radius: 4px; }
    ::-webkit-scrollbar-thumb:hover { background: #dc2626; }

    /* V3.0 UPGRADE: Dark Kungfupunk (70% PBZ) + Scroll of Taiwu Xuan Paper & Cinnabar Seal (30%) */
    .xuan-tome-spread {
      background: linear-gradient(135deg, #161412 0%, #1d1915 48%, #0f0d0c 50%, #1b1714 52%, #141210 100%);
      border: 2px solid rgba(217, 119, 6, 0.48);
      box-shadow: 0 24px 60px rgba(0, 0, 0, 0.92), inset 0 0 80px rgba(220, 38, 38, 0.08);
      position: relative;
    }
    .xuan-page-left {
      background:
        radial-gradient(circle at 20% 20%, rgba(229, 222, 201, 0.06) 0%, transparent 60%),
        linear-gradient(180deg, rgba(28, 24, 21, 0.96) 0%, rgba(19, 16, 15, 0.98) 100%);
      border-right: 1px solid rgba(217, 119, 6, 0.28);
    }
    .xuan-page-right {
      background:
        radial-gradient(circle at 80% 80%, rgba(220, 38, 38, 0.07) 0%, transparent 60%),
        linear-gradient(180deg, rgba(24, 21, 19, 0.96) 0%, rgba(16, 14, 13, 0.98) 100%);
    }
    .xuan-paper-vellum {
      background: linear-gradient(145deg, #e5dec9 0%, #d5cab0 55%, #c7b99b 100%);
      color: #1c1613;
      border: 1px solid #8c7355;
      box-shadow: inset 0 0 24px rgba(120, 53, 15, 0.18), 0 8px 24px rgba(0, 0, 0, 0.65);
    }
    .taiwu-cinnabar-seal {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      border: 2px solid #b91c1c;
      background: rgba(185, 28, 28, 0.88);
      color: #fef2f2;
      font-family: 'Cinzel', 'Noto Serif SC', serif;
      font-weight: 800;
      letter-spacing: 0.08em;
      padding: 2px 8px;
      box-shadow: 0 2px 8px rgba(185, 28, 28, 0.5), inset 0 0 4px rgba(255, 255, 255, 0.25);
      transform: rotate(-2deg);
    }
    .flying-white-divider {
      height: 2px;
      background: linear-gradient(90deg, transparent 0%, rgba(220, 38, 38, 0.75) 25%, rgba(229, 222, 201, 0.6) 50%, rgba(217, 119, 6, 0.75) 75%, transparent 100%);
    }
    @keyframes pageTurnPulse {
      0% { opacity: 0.35; transform: translateY(4px) scale(0.992); }
      100% { opacity: 1; transform: translateY(0) scale(1); }
    }
    .page-turn-anim {
      animation: pageTurnPulse 0.32s cubic-bezier(0.22, 1, 0.36, 1) forwards;
    }
    .acupoint-node {
      cursor: pointer;
      transition: all 0.25s ease;
    }
    .acupoint-node:hover {
      filter: drop-shadow(0 0 8px rgba(239, 68, 68, 0.95));
    }

    /* V4.0 REBIRTH EDITION: Obsidian & Molten Gold 5-Deck Workspace App Shell */
    .workspace-dock-bar {
      background: linear-gradient(90deg, rgba(10, 9, 12, 0.96) 0%, rgba(28, 17, 16, 0.96) 50%, rgba(10, 9, 12, 0.96) 100%);
      border-bottom: 1px solid rgba(217, 119, 6, 0.42);
      box-shadow: 0 10px 30px rgba(0, 0, 0, 0.85);
    }
    .deck-tab-btn {
      position: relative;
      transition: all 0.25s cubic-bezier(0.22, 1, 0.36, 1);
    }
    .deck-tab-btn.active-deck {
      background: linear-gradient(135deg, rgba(185, 28, 28, 0.88) 0%, rgba(120, 53, 15, 0.85) 100%);
      color: #fef3c7;
      border-color: #f59e0b;
      box-shadow: 0 0 18px rgba(220, 38, 38, 0.45), inset 0 0 10px rgba(251, 191, 36, 0.25);
    }
    .mbti-axis-bar {
      height: 8px;
      border-radius: 999px;
      background: rgba(28, 25, 23, 0.95);
      border: 1px solid rgba(120, 113, 108, 0.4);
      overflow: hidden;
    }
    .soul-quiz-card {
      background:
        radial-gradient(circle at 85% 15%, rgba(217, 119, 6, 0.14) 0%, transparent 55%),
        radial-gradient(circle at 15% 85%, rgba(220, 38, 38, 0.14) 0%, transparent 55%),
        linear-gradient(180deg, rgba(20, 17, 16, 0.97) 0%, rgba(11, 10, 12, 0.99) 100%);
      border: 1px solid rgba(217, 119, 6, 0.45);
      box-shadow: 0 16px 40px rgba(0, 0, 0, 0.8);
    }
    .guqin-string-btn {
      position: relative;
      overflow: hidden;
      transition: all 0.2s ease;
    }
    .guqin-string-btn:active {
      transform: scale(0.98);
    }
  