        body {
          background-color: #0a0b10;
          color: #e2e8f0;
          overflow-x: hidden;
          scroll-behavior: smooth;
        }

        /* ネオンテキストエフェクト */
        .neon-text-blue {
          text-shadow: 0 0 5px #00f0ff, 0 0 10px #00f0ff;
        }

        .neon-text-purple {
          text-shadow: 0 0 5px #b026ff, 0 0 10px #b026ff;
        }

        .neon-text-red {
          text-shadow: 0 0 5px #ff2a2a, 0 0 10px #ff2a2a;
        }

        /* ネオンボーダーエフェクト */
        .neon-border-blue {
          box-shadow: 0 0 10px rgba(0, 240, 255, 0.4), inset 0 0 10px rgba(0, 240, 255, 0.2);
        }

        .neon-border-blue-hover:hover {
          box-shadow: 0 0 15px rgba(0, 240, 255, 0.6), inset 0 0 15px rgba(0, 240, 255, 0.3);
          border-color: #00f0ff;
        }

        .neon-border-purple {
          box-shadow: 0 0 10px rgba(176, 38, 255, 0.4), inset 0 0 10px rgba(176, 38, 255, 0.2);
        }

        /* サイバー風の背景グリッド */
        .glitch-bg {
          background-image:
            linear-gradient(rgba(0, 240, 255, 0.05) 1px, transparent 1px),
            linear-gradient(90deg, rgba(0, 240, 255, 0.05) 1px, transparent 1px);
          background-size: 40px 40px;
          background-position: center center;
          background-attachment: fixed;
        }

        /* タイムループをイメージした回転リング */
        .loop-ring {
          position: fixed;
          border-radius: 50%;
          border: 1px dashed rgba(176, 38, 255, 0.2);
          pointer-events: none;
          z-index: -1;
          animation: spin 30s linear infinite;
        }

        @keyframes spin {
          100% {
            transform: rotate(360deg);
          }
        }

        /* セクション見出しの装飾 */
        .cyber-heading {
          position: relative;
          display: inline-block;
          padding-left: 1.5rem;
        }

        .cyber-heading::before {
          content: '>';
          position: absolute;
          left: 0;
          top: 0;
          color: #00f0ff;
          animation: blink 1s step-end infinite;
        }

        @keyframes blink {
          50% {
            opacity: 0;
          }
        }

        /* テーブルのサイバースタイル */
        .cyber-table th {
          background-color: rgba(0, 240, 255, 0.1);
          border-color: #00f0ff;
        }

        .cyber-table td {
          border-color: rgba(0, 240, 255, 0.3);
        }

        /* アコーディオンのスタイル */
        details>summary {
          list-style: none;
          cursor: pointer;
        }

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

        details[open] summary~* {
          animation: fadeIn 0.3s ease-in-out;
        }

        @keyframes fadeIn {
          0% {
            opacity: 0;
            transform: translateY(-10px);
          }

          100% {
            opacity: 1;
            transform: translateY(0);
          }
        }

        /* スクロールバーのカスタマイズ */
        ::-webkit-scrollbar {
          width: 8px;
        }

        ::-webkit-scrollbar-track {
          background: #0a0b10;
        }

        ::-webkit-scrollbar-thumb {
          background: #00f0ff;
          border-radius: 4px;
        }

        ::-webkit-scrollbar-thumb:hover {
          background: #b026ff;
        }